Explorar o código

添加场景删除日志

lyhzzz %!s(int64=2) %!d(string=hai) anos
pai
achega
b08b971a70

+ 18 - 0
src/main/java/com/fdkankan/ucenter/common/BaseController.java

@@ -1,7 +1,10 @@
 package com.fdkankan.ucenter.common;
 
 import com.fdkankan.common.util.DateEditor;
+import com.fdkankan.common.util.JwtUtil;
 import com.fdkankan.ucenter.common.constants.NacosProperty;
+import com.fdkankan.ucenter.entity.User;
+import com.fdkankan.ucenter.service.IUserService;
 import com.fdkankan.ucenter.util.DateUserUtil;
 import lombok.extern.slf4j.Slf4j;
 import org.springframework.beans.factory.annotation.Autowired;
@@ -27,6 +30,9 @@ public class BaseController {
     @Autowired
     protected HttpServletResponse response;
 
+    @Autowired
+    IUserService userService;
+
     @InitBinder
     protected void initBinder(WebDataBinder webDataBinder) {
         webDataBinder.registerCustomEditor(String.class, new StringTrimmerEditor(true));
@@ -87,6 +93,18 @@ public class BaseController {
     protected String getToken(){
         return request.getHeader("token");
     }
+    protected Long getUserId(){
+        String token = request.getHeader("token");
+        if(StringUtils.isEmpty(token)){
+            return null;
+        }
+        String username = JwtUtil.getUsername(token);
+        User user = userService.getByUserName(username);
+        if(user == null){
+            return null;
+        }
+        return user.getId();
+    }
     protected String getLang(){
         return StringUtils.isEmpty(request.getHeader("lang")) ? "en":request.getHeader("lang");
     }

+ 1 - 1
src/main/java/com/fdkankan/ucenter/controller/DeviceSceneController.java

@@ -55,7 +55,7 @@ public class DeviceSceneController extends BaseController {
     @RequestMapping(value = "/delete", method = RequestMethod.POST)
     public Result deleteScene(@RequestBody AppSceneParam param) throws Exception {
         param.setCameraType(null);
-        sceneProService.delete(param.getSceneNum());
+        sceneProService.delete(param.getSceneNum(),getUserId());
         return Result.success();
     }
 

+ 1 - 1
src/main/java/com/fdkankan/ucenter/controller/SceneController.java

@@ -103,7 +103,7 @@ public class SceneController extends BaseController {
     }
     @PostMapping("/delete")
     public Result delete(@RequestBody SceneParam param) throws Exception {
-        sceneProService.delete(param.getSceneNum());
+        sceneProService.delete(param.getSceneNum(),getUserId());
         return Result.success();
     }
 

+ 21 - 0
src/main/java/com/fdkankan/ucenter/controller/SceneDelLogController.java

@@ -0,0 +1,21 @@
+package com.fdkankan.ucenter.controller;
+
+
+import org.springframework.web.bind.annotation.RequestMapping;
+
+import org.springframework.web.bind.annotation.RestController;
+
+/**
+ * <p>
+ *  前端控制器
+ * </p>
+ *
+ * @author 
+ * @since 2023-03-15
+ */
+@RestController
+@RequestMapping("/ucenter/sceneDelLog")
+public class SceneDelLogController {
+
+}
+

+ 3 - 2
src/main/java/com/fdkankan/ucenter/controller/app/AppSceneController.java

@@ -1,6 +1,7 @@
 package com.fdkankan.ucenter.controller.app;
 
 import com.alibaba.fastjson.JSONObject;
+import com.fdkankan.ucenter.common.BaseController;
 import com.fdkankan.ucenter.common.Result;
 import com.fdkankan.ucenter.service.ISceneProService;
 import com.fdkankan.ucenter.service.impl.AppSceneService;
@@ -14,7 +15,7 @@ import org.springframework.web.bind.annotation.RestController;
 
 @RestController
 @RequestMapping("/ucenter/app/scene")
-public class AppSceneController {
+public class AppSceneController extends BaseController {
 
     @Autowired
     AppSceneService appSceneService;
@@ -60,7 +61,7 @@ public class AppSceneController {
     public Result deleteForCameraName(@RequestBody JSONObject param){
         Long cameraId = param.get("cameraId") == null ? null : param.getLong("cameraId");
         String sceneNum = param.get("sceneNum") == null ? null : param.getString("sceneNum");
-        appSceneService.deleteForCameraName(cameraId,sceneNum);
+        appSceneService.deleteForCameraName(cameraId,sceneNum,getUserId());
         return Result.success();
     }
 }

+ 64 - 0
src/main/java/com/fdkankan/ucenter/entity/SceneDelLog.java

@@ -0,0 +1,64 @@
+package com.fdkankan.ucenter.entity;
+
+import com.baomidou.mybatisplus.annotation.IdType;
+import com.baomidou.mybatisplus.annotation.TableField;
+import com.baomidou.mybatisplus.annotation.TableId;
+import com.baomidou.mybatisplus.annotation.TableName;
+import java.io.Serializable;
+import java.util.Date;
+import lombok.Getter;
+import lombok.Setter;
+
+/**
+ * <p>
+ * 
+ * </p>
+ *
+ * @author 
+ * @since 2023-03-15
+ */
+@Getter
+@Setter
+@TableName("t_scene_del_log")
+public class SceneDelLog implements Serializable {
+
+    private static final long serialVersionUID = 1L;
+
+    /**
+     * 场景删除日志
+     */
+    @TableId(value = "id", type = IdType.AUTO)
+    private Integer id;
+
+    /**
+     * 文件夹Id
+     */
+    @TableField("folder_id")
+    private Integer folderId;
+
+    /**
+     * 场景码
+     */
+    @TableField("num")
+    private String num;
+
+    /**
+     * 操作人Id
+     */
+    @TableField("user_id")
+    private Long userId;
+
+    /**
+     * 操作人Id
+     */
+    @TableField("sys_user_id")
+    private Long sysUserId;
+
+    @TableField("create_time")
+    private Date createTime;
+
+    @TableField("update_time")
+    private Date updateTime;
+
+
+}

+ 1 - 1
src/main/java/com/fdkankan/ucenter/generate/AutoGenerate.java

@@ -18,7 +18,7 @@ public class AutoGenerate {
         String path =System.getProperty("user.dir") ;
 
         generate(path,"ucenter", getTables(new String[]{
-                "t_camera_increment_log",
+                "t_scene_del_log",
         }));
 
 //        generate(path,"goods", getTables(new String[]{

+ 18 - 0
src/main/java/com/fdkankan/ucenter/mapper/ISceneDelLogMapper.java

@@ -0,0 +1,18 @@
+package com.fdkankan.ucenter.mapper;
+
+import com.fdkankan.ucenter.entity.SceneDelLog;
+import com.baomidou.mybatisplus.core.mapper.BaseMapper;
+import org.apache.ibatis.annotations.Mapper;
+
+/**
+ * <p>
+ *  Mapper 接口
+ * </p>
+ *
+ * @author 
+ * @since 2023-03-15
+ */
+@Mapper
+public interface ISceneDelLogMapper extends BaseMapper<SceneDelLog> {
+
+}

+ 1 - 1
src/main/java/com/fdkankan/ucenter/service/IFolderSceneService.java

@@ -17,7 +17,7 @@ import java.util.List;
  */
 public interface IFolderSceneService extends IService<FolderScene> {
 
-    void deleteByFolderIds(List<Long> delIds);
+    void deleteByFolderIds(List<Long> delIds,Long userId);
 
     FolderScene getByType(Long sceneId, Integer type);
 

+ 17 - 0
src/main/java/com/fdkankan/ucenter/service/ISceneDelLogService.java

@@ -0,0 +1,17 @@
+package com.fdkankan.ucenter.service;
+
+import com.fdkankan.ucenter.entity.SceneDelLog;
+import com.baomidou.mybatisplus.extension.service.IService;
+
+/**
+ * <p>
+ *  服务类
+ * </p>
+ *
+ * @author 
+ * @since 2023-03-15
+ */
+public interface ISceneDelLogService extends IService<SceneDelLog> {
+
+    void saveLog(String num, Long userId);
+}

+ 3 - 3
src/main/java/com/fdkankan/ucenter/service/ISceneProService.java

@@ -47,7 +47,7 @@ public interface ISceneProService extends IService<ScenePro> {
 
     Long getCountByUserId(Long id, Integer cameraType);
 
-    void deleteByIds(List<Long> sceneIds);
+    void deleteByIds(List<Long> sceneIds,Long userId);
 
     JSONObject newList(SceneParam param, String username);
 
@@ -58,11 +58,11 @@ public interface ISceneProService extends IService<ScenePro> {
     Long copyV3Scene(ScenePro scenePro, String newNum, CameraDetail cameraDetail, String time) throws Exception;
 
 
-    void delete(String sceneNum);
+    void delete(String sceneNum,Long userId);
 
     ScenePro getByUnicode(String unicode);
 
-    void deleteByList(List<ScenePro> proList, List<ScenePlus> plusList);
+    void deleteByList(List<ScenePro> proList, List<ScenePlus> plusList,Long userId);
 
     SceneInfoVo getInfo(String num);
 

+ 2 - 5
src/main/java/com/fdkankan/ucenter/service/impl/AppSceneService.java

@@ -241,7 +241,7 @@ public class AppSceneService {
 
     }
 
-    public void deleteForCameraName(Long cameraId, String sceneNum) {
+    public void deleteForCameraName(Long cameraId, String sceneNum,Long userId) {
         if( StringUtils.isEmpty(sceneNum)){
             throw new BusinessException(LoginConstant.FAILURE_CODE_3001,LoginConstant.FAILURE_MSG_3001);
         }
@@ -273,14 +273,11 @@ public class AppSceneService {
             plusList.add(scenePlus);
             sceneSource = scenePlus.getSceneSource();
         }
-        sceneProService.deleteByList(proList,plusList);
+        sceneProService.deleteByList(proList,plusList,userId);
 
         if(sceneSource != null && sceneSource == 4){
             laserService.delete(sceneNum);
         }
     }
 
-    public void deleteScene(String sceneNum) {
-        sceneProService.delete(sceneNum);
-    }
 }

+ 2 - 2
src/main/java/com/fdkankan/ucenter/service/impl/FolderSceneServiceImpl.java

@@ -35,13 +35,13 @@ public class FolderSceneServiceImpl extends ServiceImpl<IFolderSceneMapper, Fold
     private IFolderService folderService;
 
     @Override
-    public void deleteByFolderIds(List<Long> delIds) {
+    public void deleteByFolderIds(List<Long> delIds,Long userId) {
         LambdaQueryWrapper<FolderScene> wrapper = new LambdaQueryWrapper<>();
         wrapper.in(FolderScene::getFolderId,delIds);
         List<FolderScene> list = this.list(wrapper);
         List<Long> sceneIds = list.parallelStream().map(FolderScene::getSceneId).collect(Collectors.toList());
         if(sceneIds.size() >0){
-            sceneProService.deleteByIds(sceneIds);
+            sceneProService.deleteByIds(sceneIds,userId);
         }
         List<Long> ids = list.parallelStream().map(FolderScene::getId).collect(Collectors.toList());
         this.removeByIds(ids);

+ 1 - 1
src/main/java/com/fdkankan/ucenter/service/impl/FolderServiceImpl.java

@@ -90,7 +90,7 @@ public class FolderServiceImpl extends ServiceImpl<IFolderMapper, Folder> implem
         getAllFolder(id,list);
         list.add(folder);
         List<Long> delIds = list.parallelStream().map(Folder::getId).collect(Collectors.toList());
-        folderSceneService.deleteByFolderIds(delIds);
+        folderSceneService.deleteByFolderIds(delIds,user.getId());
         this.removeByIds(delIds);
     }
 

+ 31 - 0
src/main/java/com/fdkankan/ucenter/service/impl/SceneDelLogServiceImpl.java

@@ -0,0 +1,31 @@
+package com.fdkankan.ucenter.service.impl;
+
+import com.fdkankan.ucenter.entity.SceneDelLog;
+import com.fdkankan.ucenter.mapper.ISceneDelLogMapper;
+import com.fdkankan.ucenter.service.ISceneDelLogService;
+import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
+import org.springframework.stereotype.Service;
+
+/**
+ * <p>
+ *  服务实现类
+ * </p>
+ *
+ * @author 
+ * @since 2023-03-15
+ */
+@Service
+public class SceneDelLogServiceImpl extends ServiceImpl<ISceneDelLogMapper, SceneDelLog> implements ISceneDelLogService {
+
+    @Override
+    public void saveLog(String num, Long userId) {
+        try {
+            SceneDelLog sceneDelLog = new SceneDelLog();
+            sceneDelLog.setNum(num);
+            sceneDelLog.setUserId(userId);
+            this.save(sceneDelLog);
+        }catch (Exception e){
+
+        }
+    }
+}

+ 9 - 5
src/main/java/com/fdkankan/ucenter/service/impl/SceneProServiceImpl.java

@@ -117,6 +117,8 @@ public class SceneProServiceImpl extends ServiceImpl<ISceneProMapper, ScenePro>
     private IInnerService innerService;
     @Autowired
     LaserService laserService;
+    @Autowired
+    ISceneDelLogService sceneDelLogService;
 
     @Value("${scene.pro.url}")
     private String sceneProUrl;
@@ -450,7 +452,7 @@ public class SceneProServiceImpl extends ServiceImpl<ISceneProMapper, ScenePro>
     }
 
     @Override
-    public void deleteByIds(List<Long> sceneIds) {
+    public void deleteByIds(List<Long> sceneIds,Long userId) {
         if(sceneIds.size() >0){
             LambdaQueryWrapper<ScenePro> wrapper = new LambdaQueryWrapper<>();
             wrapper.in(ScenePro::getId,sceneIds)
@@ -461,7 +463,7 @@ public class SceneProServiceImpl extends ServiceImpl<ISceneProMapper, ScenePro>
             plusWr.in(ScenePlus::getId,sceneIds);
             List<ScenePlus> plusList = scenePlusService.list(plusWr);
 
-            this.deleteByList(proList,plusList);
+            this.deleteByList(proList,plusList,userId);
         }
 
     }
@@ -941,7 +943,7 @@ public class SceneProServiceImpl extends ServiceImpl<ISceneProMapper, ScenePro>
     }
 
     @Override
-    public void delete(String sceneNum) {
+    public void delete(String sceneNum,Long userId) {
         if(StringUtils.isEmpty(sceneNum)){
             throw  new BusinessException(LoginConstant.FAILURE_CODE_3001,LoginConstant.FAILURE_MSG_3001);
         }
@@ -949,15 +951,16 @@ public class SceneProServiceImpl extends ServiceImpl<ISceneProMapper, ScenePro>
         List<String> numList = Arrays.asList(nums);
         List<ScenePro> proList = this.getListByNums(numList);
         List<ScenePlus> plusList = scenePlusService.getListByNums(numList);
-        this.deleteByList(proList,plusList);
+        this.deleteByList(proList,plusList,userId);
     }
 
     @Override
-    public void deleteByList(List<ScenePro> proList,List<ScenePlus> plusList) {
+    public void deleteByList(List<ScenePro> proList,List<ScenePlus> plusList,Long userId) {
         HashMap<Long ,Long >cameraMap = new HashMap<>();
         if(proList.size() >0){
             for (ScenePro scenePro : proList) {
                 cameraMap.merge(scenePro.getCameraId(), scenePro.getSpace(), Long::sum);
+                sceneDelLogService.saveLog(scenePro.getNum(),userId);
             }
             List<Long> proIds = proList.parallelStream().map(ScenePro::getId).collect(Collectors.toList());
             this.removeByIds(proIds);
@@ -971,6 +974,7 @@ public class SceneProServiceImpl extends ServiceImpl<ISceneProMapper, ScenePro>
                 if(scenePlus.getCameraId()!= null && plusMap.get(scenePlus.getId())!=null){
                     cameraMap.merge(scenePlus.getCameraId(), plusMap.get(scenePlus.getId()).getSpace(), Long::sum);
                 }
+                sceneDelLogService.saveLog(scenePlus.getNum(),userId);
             }
             scenePlusService.removeByIds(plusIds);
             scenePlusExtService.removeByPlusIds(plusIds);

+ 5 - 0
src/main/resources/mapper/ucenter/SceneDelLogMapper.xml

@@ -0,0 +1,5 @@
+<?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.fdkankan.ucenter.mapper.ISceneDelLogMapper">
+
+</mapper>