Explorar el Código

传感器-摄像头

WXF hace 3 años
padre
commit
0e0553b313

+ 48 - 0
simulation-resource-server/src/main/java/com/css/simulation/resource/model/ctrl/CameraCtrl.java

@@ -2,7 +2,9 @@ package com.css.simulation.resource.model.ctrl;
 
 import api.common.pojo.common.ResponseBodyVO;
 import api.common.pojo.param.model.CameraParam;
+import api.common.pojo.po.model.CameraPO;
 import api.common.pojo.vo.model.CameraVO;
+import api.common.util.ObjectUtil;
 import com.css.simulation.resource.model.service.CameraService;
 import org.springframework.beans.factory.annotation.Autowired;
 import org.springframework.stereotype.Controller;
@@ -52,4 +54,50 @@ public class CameraCtrl {
         response.setInfo(cameraService.getCameraInfo(cameraParam));
         return response;
     }
+
+    /**
+     * 新增、修改、另存为
+     */
+    @RequestMapping("/saveCamera")
+    @ResponseBody
+    public ResponseBodyVO<CameraPO> saveCamera(@RequestBody CameraPO cameraPO){
+        if(ObjectUtil.isNull(cameraPO)){
+            return new ResponseBodyVO(false, 500, "参数必传!",null);
+        }
+        ResponseBodyVO<CameraPO> response = new ResponseBodyVO<CameraPO>(ResponseBodyVO.Response.SUCCESS);
+        CameraPO po = cameraService.saveCamera(cameraPO);
+        if(ObjectUtil.isNull(po.getId())){
+            return new ResponseBodyVO(false, 500, "传感器名称重复!",null);
+        }
+        response.setInfo(po);
+        return response;
+    }
+
+    /**
+     * 分享
+     */
+    @RequestMapping("/shareCamera")
+    @ResponseBody
+    public ResponseBodyVO<CameraPO> shareCamera(@RequestBody CameraPO cameraPO){
+        if(ObjectUtil.isNull(cameraPO)){
+            return new ResponseBodyVO(false, 500, "参数必传!",null);
+        }
+        ResponseBodyVO<CameraPO> response = new ResponseBodyVO<CameraPO>(ResponseBodyVO.Response.SUCCESS);
+        response.setInfo(cameraService.shareCamera(cameraPO));
+        return response;
+    }
+
+    /**
+     * 删除
+     */
+    @RequestMapping("/delCameraById")
+    @ResponseBody
+    public ResponseBodyVO delCameraById(@RequestBody CameraPO cameraPO){
+        int i = cameraService.delCameraById(cameraPO);
+        if(i>0){
+            return new ResponseBodyVO(ResponseBodyVO.Response.SUCCESS);
+        }else{
+            return new ResponseBodyVO(false, 500, "删除失败!",null);
+        }
+    }
 }

+ 3 - 0
simulation-resource-server/src/main/java/com/css/simulation/resource/model/ctrl/VehicleCtrl.java

@@ -55,6 +55,9 @@ public class VehicleCtrl {
         return response;
     }
 
+    /**
+     * 新增、修改、另存为
+     */
     @RequestMapping("/saveVehicle")
     @ResponseBody
     public ResponseBodyVO<VehiclePO> saveVehicle(@RequestBody VehiclePO vehiclePO){

+ 9 - 0
simulation-resource-server/src/main/java/com/css/simulation/resource/model/mapper/CameraMapper.java

@@ -1,6 +1,7 @@
 package com.css.simulation.resource.model.mapper;
 
 import api.common.pojo.param.model.CameraParam;
+import api.common.pojo.po.model.CameraPO;
 import api.common.pojo.vo.model.CameraVO;
 import org.apache.ibatis.annotations.Mapper;
 import org.springframework.stereotype.Repository;
@@ -14,4 +15,12 @@ public interface CameraMapper {
     List<CameraVO> getCameraList(CameraParam cameraParam);
 
     CameraVO getCameraInfo(CameraParam cameraParam);
+
+    List<CameraVO> checkCameraName(CameraPO cameraPO);
+
+    void insert(CameraPO cameraPO);
+
+    void update(CameraPO cameraPO);
+
+    int delCameraById(CameraPO cameraPO);
 }

+ 54 - 0
simulation-resource-server/src/main/java/com/css/simulation/resource/model/service/CameraService.java

@@ -2,12 +2,17 @@ package com.css.simulation.resource.model.service;
 
 import api.common.pojo.constants.DictConstants;
 import api.common.pojo.param.model.CameraParam;
+import api.common.pojo.po.model.CameraPO;
 import api.common.pojo.vo.model.CameraVO;
+import api.common.util.ObjectUtil;
+import api.common.util.StringUtil;
+import api.common.util.TimeUtil;
 import com.css.simulation.resource.common.utils.AuthUtil;
 import com.css.simulation.resource.model.mapper.CameraMapper;
 import org.springframework.beans.factory.annotation.Autowired;
 import org.springframework.stereotype.Service;
 
+import java.sql.Timestamp;
 import java.util.List;
 
 @Service
@@ -35,4 +40,53 @@ public class CameraService {
     }
 
 
+    public CameraPO saveCamera(CameraPO cameraPO) {
+        //常规字段赋值
+        String currentUserId = AuthUtil.getCurrentUserId();
+        Timestamp currentTime = TimeUtil.getNowForMysql();
+        cameraPO.setCreateUserId(currentUserId);
+        cameraPO.setCreateTime(currentTime);
+        cameraPO.setModifyUserId(currentUserId);
+        cameraPO.setModifyTime(currentTime);
+        cameraPO.setIsDeleted(DictConstants.NO);
+        //名称校验
+        List<CameraVO> list = cameraMapper.checkCameraName(cameraPO);
+        if(ObjectUtil.isNotNull(list)){
+            cameraPO.setId(null);
+            return cameraPO;
+        }
+        String id = cameraPO.getId();
+        if(ObjectUtil.isNull(id)){//新增
+            cameraPO.setId(StringUtil.getRandomUUID());
+            cameraPO.setShare(DictConstants.NO);//私有
+            cameraMapper.insert(cameraPO);
+        }else{//修改
+            cameraMapper.update(cameraPO);
+        }
+        return cameraPO;
+    }
+
+    public CameraPO shareCamera(CameraPO cameraPO) {
+        //常规字段赋值
+        String currentUserId = AuthUtil.getCurrentUserId();
+        Timestamp currentTime = TimeUtil.getNowForMysql();
+        cameraPO.setCreateUserId(currentUserId);
+        cameraPO.setCreateTime(currentTime);
+        cameraPO.setModifyUserId(currentUserId);
+        cameraPO.setModifyTime(currentTime);
+        cameraPO.setIsDeleted(DictConstants.NO);
+
+        cameraPO.setShare(DictConstants.YES);//转公有
+        cameraPO.setId(StringUtil.getRandomUUID());
+        cameraMapper.insert(cameraPO);
+        return cameraPO;
+    }
+
+    public int delCameraById(CameraPO cameraPO) {
+        cameraPO.setIsDeleted(DictConstants.YES);
+        cameraPO.setModifyUserId(AuthUtil.getCurrentUserId());
+        cameraPO.setModifyTime(TimeUtil.getNowForMysql());
+        int i = cameraMapper.delCameraById(cameraPO);
+        return i;
+    }
 }

+ 77 - 0
simulation-resource-server/src/main/resources/mapper/model/CameraMapper.xml

@@ -56,4 +56,81 @@
         from model_sensor_camera c
         where c.id = #{id,jdbcType=VARCHAR} limit 1
     </select>
+
+    <select id="checkCameraName" parameterType="api.common.pojo.po.model.CameraPO" resultMap="CameraVOMap">
+        select
+            id
+        from model_sensor_camera
+        where is_deleted = '0' and share = '0'
+          and sensor_name = #{sensorName,jdbcType=VARCHAR}
+          and create_user_id = #{createUserId,jdbcType=VARCHAR}
+          and id &lt;&gt; #{id,jdbcType=VARCHAR}
+    </select>
+
+    <insert id="insert" parameterType="api.common.pojo.po.model.CameraPO">
+        insert into model_sensor_camera(
+            id,
+            sensor_id,
+            sensor_name,
+            description,
+            near_distance,
+            far_distance,
+            fov_h,
+            fov_v,
+            resolution,
+            frame_rate,
+            self_display,
+            share,
+            create_time,
+            modify_time,
+            create_user_id,
+            modify_user_id,
+            is_deleted
+        )
+        values(
+            #{id,jdbcType=VARCHAR},
+            #{sensorId,jdbcType=VARCHAR},
+            #{sensorName,jdbcType=VARCHAR},
+            #{description,jdbcType=VARCHAR},
+            #{nearDistance,jdbcType=DECIMAL},
+            #{farDistance,jdbcType=DECIMAL},
+            #{fovH,jdbcType=DECIMAL},
+            #{fovV,jdbcType=DECIMAL},
+            #{resolution,jdbcType=VARCHAR},
+            #{frameRate,jdbcType=DECIMAL},
+            #{selfDisplay,jdbcType=VARCHAR},
+            #{share,jdbcType=VARCHAR},
+            #{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.CameraPO">
+        update model_sensor_camera set
+            sensor_id = #{sensorId,jdbcType=VARCHAR},
+            sensor_name = #{sensorName,jdbcType=VARCHAR},
+            description = #{description,jdbcType=VARCHAR},
+            near_distance = #{nearDistance,jdbcType=DECIMAL},
+            far_distance = #{farDistance,jdbcType=DECIMAL},
+            fov_h = #{fovH,jdbcType=DECIMAL},
+            fov_v = #{fovV,jdbcType=DECIMAL},
+            resolution = #{resolution,jdbcType=VARCHAR},
+            frame_rate = #{frameRate,jdbcType=DECIMAL},
+            self_display = #{selfDisplay,jdbcType=VARCHAR},
+
+            modify_time = #{modifyTime,jdbcType=TIMESTAMP},
+            modify_user_id = #{modifyUserId,jdbcType=VARCHAR}
+        where id = #{id,jdbcType=VARCHAR}
+    </update>
+
+    <update id="delCameraById" parameterType="api.common.pojo.po.model.CameraPO">
+        update model_sensor_camera set
+          modify_time = #{modifyTime,jdbcType=TIMESTAMP},
+          modify_user_id = #{modifyUserId,jdbcType=VARCHAR},
+          is_deleted = #{isDeleted,jdbcType=VARCHAR}
+        where id = #{id,jdbcType=VARCHAR}
+    </update>
 </mapper>

+ 25 - 26
simulation-resource-server/src/main/resources/mapper/model/VehicleMapper.xml

@@ -160,33 +160,32 @@
 
     <update id="update" parameterType="api.common.pojo.po.model.VehiclePO">
         update model_vehicle set
-        vehicle_id = #{vehicleId,jdbcType=VARCHAR},
-        vehicle_name = #{vehicleName,jdbcType=VARCHAR},
-        description = #{description,jdbcType=VARCHAR},
-        vehicle_type = #{vehicleType,jdbcType=VARCHAR},
-        vehicle_model = #{vehicleModel,jdbcType=VARCHAR},
-        vehicle_colour = #{vehicleColour,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=DECIMAL},
-        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},
+            vehicle_id = #{vehicleId,jdbcType=VARCHAR},
+            vehicle_name = #{vehicleName,jdbcType=VARCHAR},
+            description = #{description,jdbcType=VARCHAR},
+            vehicle_type = #{vehicleType,jdbcType=VARCHAR},
+            vehicle_model = #{vehicleModel,jdbcType=VARCHAR},
+            vehicle_colour = #{vehicleColour,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=DECIMAL},
+            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},
 
-        modify_time = #{modifyTime,jdbcType=TIMESTAMP},
-        modify_user_id = #{modifyUserId,jdbcType=VARCHAR},
-        is_deleted = #{isDeleted,jdbcType=VARCHAR}
+            modify_time = #{modifyTime,jdbcType=TIMESTAMP},
+            modify_user_id = #{modifyUserId,jdbcType=VARCHAR}
         where id = #{id,jdbcType=VARCHAR}
     </update>