Преглед на файлове

更新车辆模板时同时更新车辆

root преди 2 години
родител
ревизия
f8a3eab98c

+ 17 - 1
simulation-resource-scheduler/src/main/java/com/css/simulation/resource/scheduler/pojo/po/IndexTemplatePO.java

@@ -25,5 +25,21 @@ public class IndexTemplatePO {
     private Integer packageLevel; // 指标等级
     private String ruleId; // 指标等级
 
-
+    @Override
+    public String toString() {
+        return "IndexTemplatePO{" +
+                "indexId='" + indexId + '\'' +
+                ", sceneNaturalIds='" + sceneNaturalIds + '\'' +
+                ", sceneTrafficIds='" + sceneTrafficIds + '\'' +
+                ", sceneStatueIds='" + sceneStatueIds + '\'' +
+                ", sceneGeneralizationIds='" + sceneGeneralizationIds + '\'' +
+                ", weight='" + weight + '\'' +
+                ", parentId='" + parentId + '\'' +
+                ", rootId='" + rootId + '\'' +
+                ", ruleName='" + ruleName + '\'' +
+                ", tempScore=" + tempScore +
+                ", packageLevel=" + packageLevel +
+                ", ruleId='" + ruleId + '\'' +
+                '}';
+    }
 }

+ 1 - 0
simulation-resource-scheduler/src/main/java/com/css/simulation/resource/scheduler/scheduler/ClusterScheduler.java

@@ -64,6 +64,7 @@ public class ClusterScheduler {
         //2 如果没有正在运行的项目,则删除redis
         if (CollectionUtil.isEmpty(manual) && CollectionUtil.isEmpty(autoSub)) {
             RedisUtil.deleteByPrefix(stringRedisTemplate, "cluster:");
+            log.info("ClusterScheduler--removeCluster 清除 redis 中因错误残留的 cluster 数据。");
         }
     }
 }

+ 2 - 1
simulation-resource-scheduler/src/main/java/com/css/simulation/resource/scheduler/util/ProjectUtil.java

@@ -184,6 +184,7 @@ public class ProjectUtil {
             }
         }
         // 如果当前节点没有下一个yaml,则返回一个并行度。
+        log.info("ProjectUtil.createNextPod2() 节点 " + nodeName + " 已经执行完被分配的项目 " + projectId + " 的所有 pod。");
         addOneParallelismToNode(nodeName);
     }
 
@@ -562,6 +563,6 @@ public class ProjectUtil {
         }
         int parallelism = Integer.parseInt(parallelismString);
         stringRedisTemplate.opsForValue().set(key, (parallelism + 1) + "");
-        log.info("ProjectUtil--addOneParallelismToNode 归还并行度从 " + parallelism + " 加一。");
+        log.info("ProjectUtil--addOneParallelismToNode 归还节点 " + nodeName + " 并行度从 " + parallelism + " 加一。");
     }
 }

+ 9 - 19
simulation-resource-server/src/main/java/com/css/simulation/resource/model/ctrl/VehicleTempCtrl.java

@@ -4,7 +4,6 @@ import api.common.pojo.common.ResponseBodyVO;
 import api.common.pojo.param.model.VehiclePageParam;
 import api.common.pojo.po.model.VehicleTempPO;
 import api.common.pojo.vo.model.VehicleTempVO;
-import api.common.util.ObjectUtil;
 import com.css.simulation.resource.model.service.VehicleTempService;
 import com.github.pagehelper.PageInfo;
 import org.springframework.beans.factory.annotation.Autowired;
@@ -28,7 +27,7 @@ public class VehicleTempCtrl {
     @RequestMapping("/getVehicleTempTree")
     @ResponseBody
     @PreAuthorize("true")
-    public ResponseBodyVO getVehicleList(){
+    public ResponseBodyVO getVehicleList() {
         ResponseBodyVO response = new ResponseBodyVO(ResponseBodyVO.Response.SUCCESS);
         response.setInfo(vehicleTempService.getVehicleTempTree());
         return response;
@@ -39,7 +38,7 @@ public class VehicleTempCtrl {
      */
     @RequestMapping("/getVehicleTempPageList")
     @ResponseBody
-    public ResponseBodyVO<PageInfo<VehicleTempVO>> getVehicleTempPageList(@RequestBody VehiclePageParam pageParam){
+    public ResponseBodyVO<PageInfo<VehicleTempVO>> getVehicleTempPageList(@RequestBody VehiclePageParam pageParam) {
         ResponseBodyVO<PageInfo<VehicleTempVO>> response = new ResponseBodyVO<>(ResponseBodyVO.Response.SUCCESS);
         response.setInfo(vehicleTempService.getVehicleTempPageList(pageParam));
         return response;
@@ -50,7 +49,7 @@ public class VehicleTempCtrl {
      */
     @RequestMapping("/getVehicleTempInfo")
     @ResponseBody
-    public ResponseBodyVO<VehicleTempVO> getVehicleTempInfo(@RequestBody VehiclePageParam param){
+    public ResponseBodyVO<VehicleTempVO> getVehicleTempInfo(@RequestBody VehiclePageParam param) {
         ResponseBodyVO<VehicleTempVO> response = new ResponseBodyVO<>(ResponseBodyVO.Response.SUCCESS);
         response.setInfo(vehicleTempService.getVehicleTempInfo(param));
         return response;
@@ -61,17 +60,8 @@ public class VehicleTempCtrl {
      */
     @RequestMapping("/saveVehicleTemp")
     @ResponseBody
-    public ResponseBodyVO<VehicleTempPO> saveVehicleTemp(@RequestBody VehicleTempPO po){
-        if(ObjectUtil.isNull(po)){
-            return new ResponseBodyVO<>(false, 500, "参数必传!",null);
-        }
-        ResponseBodyVO<VehicleTempPO> response = new ResponseBodyVO<>(ResponseBodyVO.Response.SUCCESS);
-        po = vehicleTempService.saveVehicleTemp(po);
-        if(ObjectUtil.isNull(po.getId())){
-            return new ResponseBodyVO<>(false, 500, "车辆类型、型号、颜色重复!",null);
-        }
-        response.setInfo(po);
-        return response;
+    public ResponseBodyVO<VehicleTempPO> saveVehicleTemp(@RequestBody VehicleTempPO po) {
+        return  vehicleTempService.saveVehicleTemplate(po);
     }
 
     /**
@@ -79,12 +69,12 @@ public class VehicleTempCtrl {
      */
     @RequestMapping("/delVehicleTempById")
     @ResponseBody
-    public ResponseBodyVO delVehicleTempById(@RequestBody VehicleTempPO po){
+    public ResponseBodyVO delVehicleTempById(@RequestBody VehicleTempPO po) {
         int i = vehicleTempService.delVehicleTempById(po);
-        if(i>0){
+        if (i > 0) {
             return new ResponseBodyVO(ResponseBodyVO.Response.SUCCESS);
-        }else{
-            return new ResponseBodyVO(false, 500, "删除失败!",null);
+        } else {
+            return new ResponseBodyVO(false, 500, "删除失败!", null);
         }
     }
 }

+ 7 - 0
simulation-resource-server/src/main/java/com/css/simulation/resource/model/mapper/VehicleMapper.java

@@ -4,6 +4,8 @@ import api.common.pojo.param.model.VehicleParam;
 import api.common.pojo.po.model.VehiclePO;
 import api.common.pojo.vo.model.VehicleVO;
 import org.apache.ibatis.annotations.Mapper;
+import org.apache.ibatis.annotations.Param;
+import org.apache.ibatis.annotations.Update;
 import org.springframework.stereotype.Repository;
 
 import java.util.List;
@@ -23,4 +25,9 @@ public interface VehicleMapper {
     void update(VehiclePO vehiclePO);
 
     int delVehicleById(VehiclePO vehiclePO);
+
+    @Update("update model_vehicle \n" +
+            "set model_label = #{newModelLabel}\n" +
+            "where model_label = #{oldModelLabel}")
+    void updateModelLabel(@Param("oldModelLabel") String oldModelLabel, @Param("newModelLabel") String newModelLabel);
 }

+ 2 - 0
simulation-resource-server/src/main/java/com/css/simulation/resource/model/mapper/VehicleTempMapper.java

@@ -18,6 +18,8 @@ public interface VehicleTempMapper {
 
     VehicleTempVO getVehicleTempInfo(VehiclePageParam param);
 
+    List<VehicleTempVO> selectByModelLabel(VehicleTempPO po);
+
     List<VehicleTempVO> checkVehicleName(VehicleTempPO po);
 
 

+ 52 - 37
simulation-resource-server/src/main/java/com/css/simulation/resource/model/service/VehicleTempService.java

@@ -1,5 +1,6 @@
 package com.css.simulation.resource.model.service;
 
+import api.common.pojo.common.ResponseBodyVO;
 import api.common.pojo.constants.LogConstants;
 import api.common.pojo.param.model.VehiclePageParam;
 import api.common.pojo.po.model.VehicleTempPO;
@@ -10,53 +11,57 @@ import api.common.util.StringUtil;
 import com.css.simulation.resource.common.utils.PageUtil;
 import com.css.simulation.resource.common.utils.PoUtil;
 import com.css.simulation.resource.log.service.LogService;
+import com.css.simulation.resource.model.mapper.VehicleMapper;
 import com.css.simulation.resource.model.mapper.VehicleTempMapper;
 import com.github.pagehelper.PageInfo;
-import org.springframework.beans.factory.annotation.Autowired;
+import lombok.extern.slf4j.Slf4j;
 import org.springframework.stereotype.Service;
 
+import javax.annotation.Resource;
 import java.util.*;
 import java.util.stream.Collectors;
 
 @Service
+@Slf4j
 public class VehicleTempService {
 
 
-    @Autowired
+    @Resource
     VehicleTempMapper vehicleTempMapper;
-
-    @Autowired
+    @Resource
+    VehicleMapper vehicleMapper;
+    @Resource
     LogService logService;
 
     public List getVehicleTempTree() {
         List<VehicleTempVO> list = vehicleTempMapper.getVehicleTempTree();
         List<Map> treeList = new ArrayList<>();
-        Map<String, List<VehicleTempVO>> typeCollect = list.stream().collect(Collectors.groupingBy(VehicleTempVO::getVehicleType,LinkedHashMap::new, Collectors.toList()));
-        typeCollect.forEach((typeKey,typeValue)->{
+        Map<String, List<VehicleTempVO>> typeCollect = list.stream().collect(Collectors.groupingBy(VehicleTempVO::getVehicleType, LinkedHashMap::new, Collectors.toList()));
+        typeCollect.forEach((typeKey, typeValue) -> {
             Map typeMap = new HashMap();
-            typeMap.put("code",typeKey);
-            typeMap.put("name",typeKey);
+            typeMap.put("code", typeKey);
+            typeMap.put("name", typeKey);
             //typeMap.put("name",typeValue.get(0).getVehicleName());
             List<Map> modelList = new LinkedList();
-            Map<String, List<VehicleTempVO>> modelCollect = typeValue.stream().collect(Collectors.groupingBy(VehicleTempVO::getVehicleModel,LinkedHashMap::new, Collectors.toList()));
-            modelCollect.forEach((modelKey,modelValue)->{
+            Map<String, List<VehicleTempVO>> modelCollect = typeValue.stream().collect(Collectors.groupingBy(VehicleTempVO::getVehicleModel, LinkedHashMap::new, Collectors.toList()));
+            modelCollect.forEach((modelKey, modelValue) -> {
                 Map modelMap = new HashMap();
-                modelMap.put("code",modelKey);
-                modelMap.put("name",modelKey);
+                modelMap.put("code", modelKey);
+                modelMap.put("name", modelKey);
                 List<Map> colourList = new LinkedList();
-                modelValue.forEach(vo->{
+                modelValue.forEach(vo -> {
                     Map colourMap = new HashMap();
-                    colourMap.put("code",vo.getVehicleColour());
-                    colourMap.put("name",vo.getVehicleColour());
+                    colourMap.put("code", vo.getVehicleColour());
+                    colourMap.put("name", vo.getVehicleColour());
                     VehicleDefaultValueVO defaultValueVO = new VehicleDefaultValueVO();
-                    ObjectUtil.voToPo(vo,defaultValueVO);
-                    colourMap.put("vo",defaultValueVO);
+                    ObjectUtil.voToPo(vo, defaultValueVO);
+                    colourMap.put("vo", defaultValueVO);
                     colourList.add(colourMap);
                 });
-                modelMap.put("children",colourList);
+                modelMap.put("children", colourList);
                 modelList.add(modelMap);
             });
-            typeMap.put("children",modelList);
+            typeMap.put("children", modelList);
             treeList.add(typeMap);
         });
         return treeList;
@@ -72,32 +77,42 @@ public class VehicleTempService {
         return vehicleTempMapper.getVehicleTempInfo(param);
     }
 
-    public VehicleTempPO saveVehicleTemp(VehicleTempPO po) {
+    public ResponseBodyVO<VehicleTempPO> saveVehicleTemplate(VehicleTempPO newVehicle) {
         //名称校验
-        List<VehicleTempVO> list = vehicleTempMapper.checkVehicleName(po);
-        if(ObjectUtil.isNotNull(list)){
-            po.setId(null);
-            return po;
+        // 查询 id 不同但标识相同的其他车辆模板
+        //1 查询所有相同标识的车辆模板,包括本身
+        List<VehicleTempVO> vehicleTempVOS = vehicleTempMapper.selectByModelLabel(newVehicle);
+        VehicleTempVO oldVehicle = null;
+        for (VehicleTempVO vehicleTempVO : vehicleTempVOS) {
+            if (vehicleTempVO.getId().equals(newVehicle.getId())) {
+                oldVehicle = vehicleTempVO;
+            } else {
+                return new ResponseBodyVO<>(false, 500, "车辆标识重复。", null);
+            }
         }
-        String id = po.getId();
+        String id = newVehicle.getId();
         //常规字段赋值
-        PoUtil.initAddPo(po);
-        if(ObjectUtil.isNull(id)){//新增
-            po.setId(StringUtil.getRandomUUID());
-            po.setVehicleCode(StringUtil.getRandomCode());
-            po.setValid("1");
-            vehicleTempMapper.insert(po);
-            logService.logVehicle(LogConstants.SYS_LOG_VEHICLE_INSERT,po);
-        }else{//修改
-            vehicleTempMapper.update(po);
-            logService.logVehicle(LogConstants.SYS_LOG_VEHICLE_UPDATE,po);
+        PoUtil.initAddPo(newVehicle);
+        if (ObjectUtil.isNull(id)) {//新增
+            newVehicle.setId(StringUtil.getRandomUUID());
+            newVehicle.setVehicleCode(StringUtil.getRandomCode());
+            newVehicle.setValid("1");
+            vehicleTempMapper.insert(newVehicle);
+            logService.logVehicle(LogConstants.SYS_LOG_VEHICLE_INSERT, newVehicle);
+        } else { //修改
+            if (oldVehicle.getModelLabel().equals(newVehicle.getModelLabel())){
+                // 如果修改了 modelLabel,则需要同步所有的车辆
+                vehicleMapper.updateModelLabel(oldVehicle.getModelLabel(),newVehicle.getModelLabel());
+            }
+            vehicleTempMapper.update(newVehicle);
+            logService.logVehicle(LogConstants.SYS_LOG_VEHICLE_UPDATE, newVehicle);
         }
-        return po;
+        return new ResponseBodyVO<>(ResponseBodyVO.Response.SUCCESS, newVehicle);
     }
 
     public int delVehicleTempById(VehicleTempPO po) {
         PoUtil.initDelPo(po);
-        logService.logVehicle(LogConstants.SYS_LOG_VEHICLE_DEL,po);
+        logService.logVehicle(LogConstants.SYS_LOG_VEHICLE_DEL, po);
         return vehicleTempMapper.delVehicleTempById(po);
     }
 }

+ 196 - 188
simulation-resource-server/src/main/resources/mapper/model/VehicleTempMapper.xml

@@ -1,56 +1,57 @@
 <?xml version="1.0" encoding="UTF-8" ?>
 <!DOCTYPE mapper PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" "http://mybatis.org/dtd/mybatis-3-mapper.dtd" >
-<mapper namespace="com.css.simulation.resource.model.mapper.VehicleTempMapper" >
+<mapper namespace="com.css.simulation.resource.model.mapper.VehicleTempMapper">
 
     <select id="getVehicleTempTree" resultType="api.common.pojo.vo.model.VehicleTempVO">
-        SELECT
-            id,
-            vehicle_code,
-            vehicle_name,
-            description,
-            model_label,
-            vehicle_type,
-            vehicle_model,
-            vehicle_colour,
-            vehicle_front_view,
-            vehicle_top_view,
-            max_speed,
-            engine_power,
-            max_deceleration,
-            max_steering_angle,
-            mass,
-            front_surface_effective,
-            air_drag_coefficient,
-            rolling_resistance_coefficient,
-            wheel_diameter,
-            wheel_drive,
-            overall_efficiency,
-            front_distance,
-            rear_distance,
-            left_distance,
-            right_distance,
-            height_distance,
-            wheelbase,
-            valid,
-            sort
+        SELECT id,
+               vehicle_code,
+               vehicle_name,
+               description,
+               model_label,
+               vehicle_type,
+               vehicle_model,
+               vehicle_colour,
+               vehicle_front_view,
+               vehicle_top_view,
+               max_speed,
+               engine_power,
+               max_deceleration,
+               max_steering_angle,
+               mass,
+               front_surface_effective,
+               air_drag_coefficient,
+               rolling_resistance_coefficient,
+               wheel_diameter,
+               wheel_drive,
+               overall_efficiency,
+               front_distance,
+               rear_distance,
+               left_distance,
+               right_distance,
+               height_distance,
+               wheelbase,
+               valid,
+               sort
         FROM model_vehicle_template
-        WHERE valid = '1' AND is_deleted = '0'
+        WHERE valid = '1'
+          AND is_deleted = '0'
         ORDER BY sort
     </select>
 
-    <select id="getVehicleTempPageList" parameterType="api.common.pojo.param.model.VehiclePageParam" resultType="api.common.pojo.vo.model.VehicleTempVO">
+    <select id="getVehicleTempPageList" parameterType="api.common.pojo.param.model.VehiclePageParam"
+            resultType="api.common.pojo.vo.model.VehicleTempVO">
         SELECT
-          id,
-          vehicle_code,
-          vehicle_name,
-          description,
-          model_label,
-          vehicle_type,
-          vehicle_model,
-          vehicle_colour,
-          sort,
-          valid,
-          create_time
+        id,
+        vehicle_code,
+        vehicle_name,
+        description,
+        model_label,
+        vehicle_type,
+        vehicle_model,
+        vehicle_colour,
+        sort,
+        valid,
+        create_time
         FROM model_vehicle_template
         WHERE is_deleted = '0'
         <if test="vehicleType != null and vehicleType != ''">
@@ -68,168 +69,175 @@
         ORDER BY sort
     </select>
 
-    <select id="getVehicleTempInfo" parameterType="api.common.pojo.param.model.VehiclePageParam" resultType="api.common.pojo.vo.model.VehicleTempVO">
-        SELECT
-          id,
-          vehicle_code,
-          vehicle_name,
-          description,
-          model_label,
-          vehicle_type,
-          vehicle_model,
-          vehicle_colour,
-          vehicle_front_view,
-          vehicle_top_view,
-          max_speed,
-          engine_power,
-          max_deceleration,
-          max_steering_angle,
-          mass,
-          front_surface_effective,
-          air_drag_coefficient,
-          rolling_resistance_coefficient,
-          wheel_diameter,
-          wheel_drive,
-          overall_efficiency,
-          front_distance,
-          rear_distance,
-          left_distance,
-          right_distance,
-          height_distance,
-          wheelbase,
-          valid,
-          sort
+    <select id="getVehicleTempInfo" parameterType="api.common.pojo.param.model.VehiclePageParam"
+            resultType="api.common.pojo.vo.model.VehicleTempVO">
+        SELECT id,
+               vehicle_code,
+               vehicle_name,
+               description,
+               model_label,
+               vehicle_type,
+               vehicle_model,
+               vehicle_colour,
+               vehicle_front_view,
+               vehicle_top_view,
+               max_speed,
+               engine_power,
+               max_deceleration,
+               max_steering_angle,
+               mass,
+               front_surface_effective,
+               air_drag_coefficient,
+               rolling_resistance_coefficient,
+               wheel_diameter,
+               wheel_drive,
+               overall_efficiency,
+               front_distance,
+               rear_distance,
+               left_distance,
+               right_distance,
+               height_distance,
+               wheelbase,
+               valid,
+               sort
         FROM model_vehicle_template
         WHERE id = #{id,jdbcType=VARCHAR} limit 1
     </select>
 
-    <select id="checkVehicleName" parameterType="api.common.pojo.po.model.VehicleTempPO" resultType="api.common.pojo.vo.model.VehicleTempVO">
-         select
-            id
+    <select id="selectByModelLabel" parameterType="api.common.pojo.po.model.VehicleTempPO"
+            resultType="api.common.pojo.vo.model.VehicleTempVO">
+        select id
+        from model_vehicle_template
+        where is_deleted = '0'
+            and (vehicle_type = #{vehicleType,jdbcType=VARCHAR}
+                and vehicle_model = #{vehicleModel,jdbcType=VARCHAR}
+                and vehicle_colour = #{vehicleColour,jdbcType=VARCHAR})
+           or model_label = #{modelLabel,jdbcType=VARCHAR}
+    </select>
+
+    <select id="checkVehicleName" parameterType="api.common.pojo.po.model.VehicleTempPO"
+            resultType="api.common.pojo.vo.model.VehicleTempVO">
+        select id
         from model_vehicle_template
         where is_deleted = '0'
-          and id &lt;&gt; #{id,jdbcType=VARCHAR}
-          and (vehicle_type = #{vehicleType,jdbcType=VARCHAR}
-          and vehicle_model = #{vehicleModel,jdbcType=VARCHAR}
-          and vehicle_colour = #{vehicleColour,jdbcType=VARCHAR})
-          or model_label = #{modelLabel,jdbcType=VARCHAR}
+            and id &lt;&gt; #{id,jdbcType=VARCHAR}
+            and (vehicle_type = #{vehicleType,jdbcType=VARCHAR}
+                and vehicle_model = #{vehicleModel,jdbcType=VARCHAR}
+                and vehicle_colour = #{vehicleColour,jdbcType=VARCHAR})
+           or model_label = #{modelLabel,jdbcType=VARCHAR}
     </select>
 
 
     <insert id="insert" parameterType="api.common.pojo.po.model.VehicleTempPO">
-        insert into model_vehicle_template(
-            id,
-            vehicle_code,
-            vehicle_name,
-            description,
-            model_label,
-            vehicle_type,
-            vehicle_model,
-            vehicle_colour,
-            vehicle_front_view,
-            vehicle_top_view,
-            max_speed,
-            engine_power,
-            max_deceleration,
-            max_steering_angle,
-            mass,
-            front_surface_effective,
-            air_drag_coefficient,
-            rolling_resistance_coefficient,
-            wheel_diameter,
-            wheel_drive,
-            overall_efficiency,
-            front_distance,
-            rear_distance,
-            left_distance,
-            right_distance,
-            height_distance,
-            wheelbase,
-            valid,
-            sort,
-            create_time,
-            modify_time,
-            create_user_id,
-            modify_user_id,
-            is_deleted
-        )
-        values(
-            #{id,jdbcType=VARCHAR},
-            #{vehicleCode,jdbcType=VARCHAR},
-            #{vehicleName,jdbcType=VARCHAR},
-            #{description,jdbcType=VARCHAR},
-            #{modelLabel,jdbcType=VARCHAR},
-            #{vehicleType,jdbcType=VARCHAR},
-            #{vehicleModel,jdbcType=VARCHAR},
-            #{vehicleColour,jdbcType=VARCHAR},
-            #{vehicleFrontView,jdbcType=VARCHAR},
-            #{vehicleTopView,jdbcType=VARCHAR},
-            #{maxSpeed,jdbcType=DECIMAL},
-            #{enginePower,jdbcType=DECIMAL},
-            #{maxDeceleration,jdbcType=DECIMAL},
-            #{maxSteeringAngle,jdbcType=DECIMAL},
-            #{mass,jdbcType=DECIMAL},
-            #{frontSurfaceEffective,jdbcType=DECIMAL},
-            #{airDragCoefficient,jdbcType=DECIMAL},
-            #{rollingResistanceCoefficient,jdbcType=DECIMAL},
-            #{wheelDiameter,jdbcType=DECIMAL},
-            #{wheelDrive,jdbcType=VARCHAR},
-            #{overallEfficiency,jdbcType=DECIMAL},
-            #{frontDistance,jdbcType=DECIMAL},
-            #{rearDistance,jdbcType=DECIMAL},
-            #{leftDistance,jdbcType=DECIMAL},
-            #{rightDistance,jdbcType=DECIMAL},
-            #{heightDistance,jdbcType=DECIMAL},
-            #{wheelbase,jdbcType=DECIMAL},
-            #{valid,jdbcType=VARCHAR},
-            #{sort,jdbcType=INTEGER},
-            #{createTime,jdbcType=TIMESTAMP},
-            #{modifyTime,jdbcType=TIMESTAMP},
-            #{createUserId,jdbcType=VARCHAR},
-            #{modifyUserId,jdbcType=VARCHAR},
-            #{isDeleted,jdbcType=VARCHAR}
-        )
+        insert into model_vehicle_template(id,
+                                           vehicle_code,
+                                           vehicle_name,
+                                           description,
+                                           model_label,
+                                           vehicle_type,
+                                           vehicle_model,
+                                           vehicle_colour,
+                                           vehicle_front_view,
+                                           vehicle_top_view,
+                                           max_speed,
+                                           engine_power,
+                                           max_deceleration,
+                                           max_steering_angle,
+                                           mass,
+                                           front_surface_effective,
+                                           air_drag_coefficient,
+                                           rolling_resistance_coefficient,
+                                           wheel_diameter,
+                                           wheel_drive,
+                                           overall_efficiency,
+                                           front_distance,
+                                           rear_distance,
+                                           left_distance,
+                                           right_distance,
+                                           height_distance,
+                                           wheelbase,
+                                           valid,
+                                           sort,
+                                           create_time,
+                                           modify_time,
+                                           create_user_id,
+                                           modify_user_id,
+                                           is_deleted)
+        values (#{id,jdbcType=VARCHAR},
+                #{vehicleCode,jdbcType=VARCHAR},
+                #{vehicleName,jdbcType=VARCHAR},
+                #{description,jdbcType=VARCHAR},
+                #{modelLabel,jdbcType=VARCHAR},
+                #{vehicleType,jdbcType=VARCHAR},
+                #{vehicleModel,jdbcType=VARCHAR},
+                #{vehicleColour,jdbcType=VARCHAR},
+                #{vehicleFrontView,jdbcType=VARCHAR},
+                #{vehicleTopView,jdbcType=VARCHAR},
+                #{maxSpeed,jdbcType=DECIMAL},
+                #{enginePower,jdbcType=DECIMAL},
+                #{maxDeceleration,jdbcType=DECIMAL},
+                #{maxSteeringAngle,jdbcType=DECIMAL},
+                #{mass,jdbcType=DECIMAL},
+                #{frontSurfaceEffective,jdbcType=DECIMAL},
+                #{airDragCoefficient,jdbcType=DECIMAL},
+                #{rollingResistanceCoefficient,jdbcType=DECIMAL},
+                #{wheelDiameter,jdbcType=DECIMAL},
+                #{wheelDrive,jdbcType=VARCHAR},
+                #{overallEfficiency,jdbcType=DECIMAL},
+                #{frontDistance,jdbcType=DECIMAL},
+                #{rearDistance,jdbcType=DECIMAL},
+                #{leftDistance,jdbcType=DECIMAL},
+                #{rightDistance,jdbcType=DECIMAL},
+                #{heightDistance,jdbcType=DECIMAL},
+                #{wheelbase,jdbcType=DECIMAL},
+                #{valid,jdbcType=VARCHAR},
+                #{sort,jdbcType=INTEGER},
+                #{createTime,jdbcType=TIMESTAMP},
+                #{modifyTime,jdbcType=TIMESTAMP},
+                #{createUserId,jdbcType=VARCHAR},
+                #{modifyUserId,jdbcType=VARCHAR},
+                #{isDeleted,jdbcType=VARCHAR})
     </insert>
 
     <update id="update" parameterType="api.common.pojo.po.model.VehicleTempPO">
-        update model_vehicle_template set
-            vehicle_name = #{vehicleName,jdbcType=VARCHAR},
-            description = #{description,jdbcType=VARCHAR},
-            model_label = #{modelLabel,jdbcType=VARCHAR},
-            vehicle_type = #{vehicleType,jdbcType=VARCHAR},
-            vehicle_model = #{vehicleModel,jdbcType=VARCHAR},
-            vehicle_colour = #{vehicleColour,jdbcType=VARCHAR},
-            vehicle_front_view = #{vehicleFrontView,jdbcType=VARCHAR},
-            vehicle_top_view = #{vehicleTopView,jdbcType=VARCHAR},
-            max_speed = #{maxSpeed,jdbcType=DECIMAL},
-            engine_power = #{enginePower,jdbcType=DECIMAL},
-            max_deceleration = #{maxDeceleration,jdbcType=DECIMAL},
-            max_steering_angle = #{maxSteeringAngle,jdbcType=DECIMAL},
-            mass = #{mass,jdbcType=DECIMAL},
-            front_surface_effective = #{frontSurfaceEffective,jdbcType=DECIMAL},
-            air_drag_coefficient = #{airDragCoefficient,jdbcType=DECIMAL},
+        update model_vehicle_template
+        set vehicle_name                   = #{vehicleName,jdbcType=VARCHAR},
+            description                    = #{description,jdbcType=VARCHAR},
+            model_label                    = #{modelLabel,jdbcType=VARCHAR},
+            vehicle_type                   = #{vehicleType,jdbcType=VARCHAR},
+            vehicle_model                  = #{vehicleModel,jdbcType=VARCHAR},
+            vehicle_colour                 = #{vehicleColour,jdbcType=VARCHAR},
+            vehicle_front_view             = #{vehicleFrontView,jdbcType=VARCHAR},
+            vehicle_top_view               = #{vehicleTopView,jdbcType=VARCHAR},
+            max_speed                      = #{maxSpeed,jdbcType=DECIMAL},
+            engine_power                   = #{enginePower,jdbcType=DECIMAL},
+            max_deceleration               = #{maxDeceleration,jdbcType=DECIMAL},
+            max_steering_angle             = #{maxSteeringAngle,jdbcType=DECIMAL},
+            mass                           = #{mass,jdbcType=DECIMAL},
+            front_surface_effective        = #{frontSurfaceEffective,jdbcType=DECIMAL},
+            air_drag_coefficient           = #{airDragCoefficient,jdbcType=DECIMAL},
             rolling_resistance_coefficient = #{rollingResistanceCoefficient,jdbcType=DECIMAL},
-            wheel_diameter = #{wheelDiameter,jdbcType=DECIMAL},
-            wheel_drive = #{wheelDrive,jdbcType=VARCHAR},
-            overall_efficiency = #{overallEfficiency,jdbcType=DECIMAL},
-            front_distance = #{frontDistance,jdbcType=DECIMAL},
-            rear_distance = #{rearDistance,jdbcType=DECIMAL},
-            left_distance = #{leftDistance,jdbcType=DECIMAL},
-            right_distance = #{rightDistance,jdbcType=DECIMAL},
-            height_distance = #{heightDistance,jdbcType=DECIMAL},
-            wheelbase = #{wheelbase,jdbcType=DECIMAL},
-            valid = #{valid,jdbcType=VARCHAR},
-            sort = #{sort,jdbcType=INTEGER},
-            modify_time = #{modifyTime,jdbcType=TIMESTAMP},
-            modify_user_id = #{modifyUserId,jdbcType=VARCHAR}
+            wheel_diameter                 = #{wheelDiameter,jdbcType=DECIMAL},
+            wheel_drive                    = #{wheelDrive,jdbcType=VARCHAR},
+            overall_efficiency             = #{overallEfficiency,jdbcType=DECIMAL},
+            front_distance                 = #{frontDistance,jdbcType=DECIMAL},
+            rear_distance                  = #{rearDistance,jdbcType=DECIMAL},
+            left_distance                  = #{leftDistance,jdbcType=DECIMAL},
+            right_distance                 = #{rightDistance,jdbcType=DECIMAL},
+            height_distance                = #{heightDistance,jdbcType=DECIMAL},
+            wheelbase                      = #{wheelbase,jdbcType=DECIMAL},
+            valid                          = #{valid,jdbcType=VARCHAR},
+            sort                           = #{sort,jdbcType=INTEGER},
+            modify_time                    = #{modifyTime,jdbcType=TIMESTAMP},
+            modify_user_id                 = #{modifyUserId,jdbcType=VARCHAR}
         where id = #{id,jdbcType=VARCHAR}
     </update>
 
     <update id="delVehicleTempById" parameterType="api.common.pojo.po.model.VehicleTempPO">
-        update model_vehicle_template set
-          modify_time = #{modifyTime,jdbcType=TIMESTAMP},
-          modify_user_id = #{modifyUserId,jdbcType=VARCHAR},
-          is_deleted = #{isDeleted,jdbcType=VARCHAR}
+        update model_vehicle_template
+        set modify_time    = #{modifyTime,jdbcType=TIMESTAMP},
+            modify_user_id = #{modifyUserId,jdbcType=VARCHAR},
+            is_deleted     = #{isDeleted,jdbcType=VARCHAR}
         where id = #{id,jdbcType=VARCHAR}
     </update>
 </mapper>