Browse Source

Merge remote-tracking branch 'origin/master'

buzhanyi 1 year ago
parent
commit
71206c049d
17 changed files with 165 additions and 49 deletions
  1. 12 12
      .idea/jarRepositories.xml
  2. 5 0
      business-service/src/main/java/com/ozs/service/entity/vo/MsgAlarmVo.java
  3. 1 1
      business-service/src/main/java/com/ozs/service/mapper/BaseDeviceDynamicManagementMapper.java
  4. 1 1
      business-service/src/main/java/com/ozs/service/service/BaseDeviceDynamicManagementService.java
  5. 4 2
      business-service/src/main/java/com/ozs/service/service/impl/BaseDeviceDynamicManagementServiceImpl.java
  6. 8 5
      business-service/src/main/resources/mapper/service/BaseDeviceDynamicManagementMapper.xml
  7. 5 2
      business-service/src/main/resources/mapper/service/MsgWebPushMapper.xml
  8. 52 12
      hazard-admin/src/main/java/com/ozs/web/controller/accountmanagment/BaseCameraManagementController.java
  9. 11 0
      hazard-admin/src/main/java/com/ozs/web/controller/accountmanagment/BaseRailwayManagementController.java
  10. 32 1
      hazard-admin/src/main/java/com/ozs/web/controller/accountmanagment/MsgAlarmController.java
  11. 1 2
      hazard-admin/src/main/java/com/ozs/web/controller/common/CaptchaController.java
  12. 1 0
      hazard-admin/src/main/java/com/ozs/web/controller/monitor/SysLoginInfoController.java
  13. 1 0
      hazard-admin/src/main/java/com/ozs/web/controller/system/SysDictDataController.java
  14. 11 6
      hazard-admin/src/main/java/com/ozs/web/controller/system/SysDictTypeController.java
  15. 1 1
      hazard-admin/src/main/java/com/ozs/web/controller/system/SysLoginController.java
  16. 9 2
      hazard-admin/src/main/java/com/ozs/web/controller/system/SysRoleController.java
  17. 10 2
      hazard-admin/src/main/java/com/ozs/web/controller/system/SysUserController.java

+ 12 - 12
.idea/jarRepositories.xml

@@ -2,8 +2,8 @@
 <project version="4">
   <component name="RemoteRepositoriesConfiguration">
     <remote-repository>
-      <option name="id" value="public" />
-      <option name="name" value="aliyun nexus" />
+      <option name="id" value="central" />
+      <option name="name" value="Central Repository" />
       <option name="url" value="https://maven.aliyun.com/repository/public" />
     </remote-repository>
     <remote-repository>
@@ -11,6 +11,16 @@
       <option name="name" value="Central Repository" />
       <option name="url" value="https://repo.maven.apache.org/maven2" />
     </remote-repository>
+    <remote-repository>
+      <option name="id" value="public" />
+      <option name="name" value="aliyun nexus" />
+      <option name="url" value="https://maven.aliyun.com/repository/public" />
+    </remote-repository>
+    <remote-repository>
+      <option name="id" value="central" />
+      <option name="name" value="Maven Central repository" />
+      <option name="url" value="https://repo1.maven.org/maven2" />
+    </remote-repository>
     <remote-repository>
       <option name="id" value="central" />
       <option name="name" value="Central Repository" />
@@ -26,11 +36,6 @@
       <option name="name" value="Central Repository" />
       <option name="url" value="http://maven.aliyun.com/nexus/content/repositories/central/" />
     </remote-repository>
-    <remote-repository>
-      <option name="id" value="central" />
-      <option name="name" value="Maven Central repository" />
-      <option name="url" value="https://repo1.maven.org/maven2" />
-    </remote-repository>
     <remote-repository>
       <option name="id" value="custom_group" />
       <option name="name" value="Nexus Repository" />
@@ -41,10 +46,5 @@
       <option name="name" value="JBoss Community repository" />
       <option name="url" value="https://repository.jboss.org/nexus/content/repositories/public/" />
     </remote-repository>
-    <remote-repository>
-      <option name="id" value="central" />
-      <option name="name" value="Central Repository" />
-      <option name="url" value="https://maven.aliyun.com/repository/public" />
-    </remote-repository>
   </component>
 </project>

+ 5 - 0
business-service/src/main/java/com/ozs/service/entity/vo/MsgAlarmVo.java

@@ -74,4 +74,9 @@ public class MsgAlarmVo extends PageVo implements Serializable {
      * 状态:1未读;2已读
      */
     private Integer status;
+
+    /**
+     * 报警里程位置
+     */
+    private String alarmMiles;
 }

+ 1 - 1
business-service/src/main/java/com/ozs/service/mapper/BaseDeviceDynamicManagementMapper.java

@@ -19,5 +19,5 @@ import java.util.List;
 @Mapper
 public interface BaseDeviceDynamicManagementMapper extends BaseMapper<BaseDeviceDynamicManagement> {
 
-    List<BaseCameraManagementDto> list(@Param("name") String name);
+    List<BaseCameraManagementDto> list(@Param("name") String name, @Param("lineDir") Integer lineDir, @Param("beginMile") Integer beginMile);
 }

+ 1 - 1
business-service/src/main/java/com/ozs/service/service/BaseDeviceDynamicManagementService.java

@@ -14,5 +14,5 @@ import com.ozs.service.entity.CameraTree;
  */
 public interface BaseDeviceDynamicManagementService extends IService<BaseDeviceDynamicManagement> {
 
-    CameraTree cameraTree(String name);
+    CameraTree cameraTree(String name, Integer lineDir, Integer mils);
 }

+ 4 - 2
business-service/src/main/java/com/ozs/service/service/impl/BaseDeviceDynamicManagementServiceImpl.java

@@ -31,7 +31,9 @@ public class BaseDeviceDynamicManagementServiceImpl extends ServiceImpl<BaseDevi
     BaseDeviceDynamicManagementMapper baseDeviceDynamicManagementMapper;
 
     @Override
-    public CameraTree cameraTree(String name) {
+    public CameraTree cameraTree(String name, Integer lineDir, Integer beginMile) {
+
+
         //1 父
         CameraTree cameraTree = CameraTree.builder()
                 .name("相机树")
@@ -40,7 +42,7 @@ public class BaseDeviceDynamicManagementServiceImpl extends ServiceImpl<BaseDevi
                 .children(new ArrayList<>())
                 .build();
         Map<String, CameraTree> map = new HashMap<>();
-        List<BaseCameraManagementDto> list = baseDeviceDynamicManagementMapper.list(name);
+        List<BaseCameraManagementDto> list = baseDeviceDynamicManagementMapper.list(name, lineDir, beginMile);
         if (list.size() > 0) {
             for (BaseCameraManagementDto o : list) {
                 // 线路

+ 8 - 5
business-service/src/main/resources/mapper/service/BaseDeviceDynamicManagementMapper.xml

@@ -14,13 +14,16 @@
 		    base_camera_management AS a inner join
 		    base_railway_management AS l  on  a.railway_code=l.railway_code
 		<where>
-
-			<if test="name != null and name !=''">
+			<if test="arg0 != null and arg0 !=''">
 				concat(l.railway_name,a.camera_code)
-				like concat("%",#{name},"%")
+				like concat("%",#{arg0},"%")
+			</if>
+			<if test="arg1 != null and arg1 != ''">
+				line_dir = #{arg1}
+			</if>
+			<if test="arg2 != null and arg2 != ''">
+				concat(a.install_mile, a.begin_mile, a.end_mile) = #{arg2}
 			</if>
-			
 		</where>
-			
     </select>
 </mapper>

+ 5 - 2
business-service/src/main/resources/mapper/service/MsgWebPushMapper.xml

@@ -8,7 +8,7 @@
         join msg_alarm AS b on a.alarm_id = b.alarm_id
         join base_camera_management AS c on b.camera_code = c.camera_code
         <where>
-            status = 1
+            a.status = 1
             <if test="!dsFlay">
                 and
                 <trim prefix="(" prefixOverrides="or" suffix=")">
@@ -35,7 +35,7 @@
         join msg_alarm AS b on a.alarm_id = b.alarm_id
         join base_camera_management AS c on b.camera_code = c.camera_code
         <where>
-            status = 1
+            a.status = 1
             <if test="!dsFlay">
                 and
                 <trim prefix="(" prefixOverrides="or" suffix=")">
@@ -80,6 +80,9 @@
                     </if>
                 </trim>
             </if>
+            <if test="status != null and status != ''">
+                and a.status = #{status}
+            </if>
             <if test="alarmType != null and alarmType != ''">
                 and b.alarm_type = #{alarmType}
             </if>

+ 52 - 12
hazard-admin/src/main/java/com/ozs/web/controller/accountmanagment/BaseCameraManagementController.java

@@ -4,12 +4,14 @@ package com.ozs.web.controller.accountmanagment;
 import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper;
 import com.baomidou.mybatisplus.core.metadata.IPage;
 import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
+import com.ozs.common.annotation.Log;
 import com.ozs.common.config.BaseConfig;
 import com.ozs.common.core.controller.BaseController;
 import com.ozs.common.core.domain.AjaxResult;
 import com.ozs.common.core.domain.entity.SysDept;
 import com.ozs.common.core.domain.entity.SysUser;
 import com.ozs.common.core.domain.model.LoginUser;
+import com.ozs.common.enums.BusinessType;
 import com.ozs.common.exception.base.BaseException;
 import com.ozs.common.utils.ApiTokenUtils;
 import com.ozs.common.utils.AppendUtils;
@@ -78,7 +80,7 @@ import java.util.stream.Collectors;
 @RequestMapping("/service/baseCameraManagement")
 @Slf4j
 public class BaseCameraManagementController extends BaseController {
-    public static final String PATTERN = "^K([0-9]+)\\+([0-9]+)$";
+    public static final String PATTERN = "^K([0-9]+)\\+([0-9]{1,3})$";
     @Resource
     BaseCameraManagementService baseCameraManagementService;
     @Resource
@@ -103,6 +105,7 @@ public class BaseCameraManagementController extends BaseController {
      */
     @ApiOperation(value = "相机台账管理")
     @GetMapping("/selectCameraAll")
+    @Log(title = "相机台账管理", businessType = BusinessType.SELECT)
     public AjaxResult selectCameraAll() {
         BaseCameraManagementVo baseCameraManagementVo = (BaseCameraManagementVo) dataScoreUtil.setDataScore(getUserId(), new BaseCameraManagementVo());
         List<BaseCameraManagementHomeVo> baseCameraManagements = baseCameraManagementService.selectCameraAll(baseCameraManagementVo);
@@ -111,6 +114,7 @@ public class BaseCameraManagementController extends BaseController {
 
     @PostMapping(value = "/homeGetInfo")
     @ApiOperation("根据相机ID、是否解除 获取相机信息、未解除信息")
+    @Log(title = "相机台账管理", businessType = BusinessType.SELECT)
     public AjaxResult homeGetInfo(@RequestBody BaseCameraManagementHomeVo baseCameraManagementHomeVo) {
         Integer isLock = baseCameraManagementHomeVo.getIsLock();
         Long id = baseCameraManagementHomeVo.getId();
@@ -172,6 +176,7 @@ public class BaseCameraManagementController extends BaseController {
      */
     @ApiOperation(value = "相机台账管理分页")
     @PostMapping("/list")
+    @Log(title = "相机台账管理", businessType = BusinessType.SELECT)
     public AjaxResult selectBaseAccountManagement(@RequestBody BaseCameraManagementVo baseCameraManagementVo) {
         baseCameraManagementVo = (BaseCameraManagementVo) dataScoreUtil.setDataScore(getUserId(), baseCameraManagementVo);
         IPage<BaseCameraManagement> page = baseCameraManagementService.queryPage(baseCameraManagementVo);
@@ -209,6 +214,7 @@ public class BaseCameraManagementController extends BaseController {
      */
     @DeleteMapping("/{accountManagementIds}")
     @ApiOperation("删除相机台账管理信息")
+    @Log(title = "相机台账管理", businessType = BusinessType.DELETE)
     @Transactional
     public AjaxResult removeAccountManagement(@PathVariable List<Long> accountManagementIds) {
         LambdaQueryWrapper<BaseDeviceDynamicManagement> queryWrapper = new LambdaQueryWrapper<BaseDeviceDynamicManagement>();
@@ -232,6 +238,7 @@ public class BaseCameraManagementController extends BaseController {
     @PostMapping("/saveAccountManagement")
     @ApiOperation("新增相机台账管理信息")
     @Transactional
+    @Log(title = "相机台账管理", businessType = BusinessType.INSERT)
     public AjaxResult saveAccountManagement(@RequestBody BaseCameraManagement baseCameraManagement) {
         String idempotence = idempotenceUtils.getIdempotence(baseCameraManagement.getCameraCode());
         if (StringUtils.isNotEmpty(idempotence)) {
@@ -252,19 +259,19 @@ public class BaseCameraManagementController extends BaseController {
             queryWrapper.eq(BaseDeviceDynamicManagement::getCameraCode, baseCameraManagement.getCameraCode());
         }
         BaseDeviceDynamicManagement one = baseDeviceDynamicManagementService.getOne(queryWrapper);
-        if (!ObjectUtils.isEmpty(one)){
+        if (!ObjectUtils.isEmpty(one)) {
             idempotenceUtils.deleteIdempotence(baseCameraManagement.getCameraCode());
             return error("设备动态管理表该相机编码已存在,不能重复添加");
         }
-        if (!baseCameraManagement.getBeginMiles().matches(PATTERN)){
+        if (!baseCameraManagement.getBeginMiles().matches(PATTERN)) {
             idempotenceUtils.deleteIdempotence(baseCameraManagement.getCameraCode());
-           return error("监控范围开始里程位置填写格式不正确");
+            return error("监控范围开始里程位置填写格式不正确");
         }
-        if (!baseCameraManagement.getInstallMiles().matches(PATTERN)){
+        if (!baseCameraManagement.getInstallMiles().matches(PATTERN)) {
             idempotenceUtils.deleteIdempotence(baseCameraManagement.getCameraCode());
             return error("监控相机安装里程位置填写格式不正确");
         }
-        if (!baseCameraManagement.getEndMiles().matches(PATTERN)){
+        if (!baseCameraManagement.getEndMiles().matches(PATTERN)) {
             idempotenceUtils.deleteIdempotence(baseCameraManagement.getCameraCode());
             return error("监控范围结束里程位置填写格式不正确");
         }
@@ -303,6 +310,7 @@ public class BaseCameraManagementController extends BaseController {
      */
     @PutMapping("/editAccountManagement")
     @ApiOperation("修改相机台账管理信息")
+    @Log(title = "相机台账管理", businessType = BusinessType.UPDATE)
     public AjaxResult editAccountManagement(@RequestBody BaseCameraManagement baseCameraManagement) {
         LambdaQueryWrapper<BaseCameraManagement> lw = new LambdaQueryWrapper<BaseCameraManagement>();
         if (!ObjectUtils.isEmpty(baseCameraManagement.getCameraCode())) {
@@ -312,13 +320,13 @@ public class BaseCameraManagementController extends BaseController {
         if (!ObjectUtils.isEmpty(cameraManagement) && !cameraManagement.getId().equals(baseCameraManagement.getId())) {
             return error("相机编码已存在,不能进行修改操作");
         }
-        if (!baseCameraManagement.getBeginMiles().matches(PATTERN)){
+        if (!baseCameraManagement.getBeginMiles().matches(PATTERN)) {
             return error("监控范围开始里程位置填写格式不正确");
         }
-        if (!baseCameraManagement.getInstallMiles().matches(PATTERN)){
+        if (!baseCameraManagement.getInstallMiles().matches(PATTERN)) {
             return error("监控相机安装里程位置填写格式不正确");
         }
-        if (!baseCameraManagement.getEndMiles().matches(PATTERN)){
+        if (!baseCameraManagement.getEndMiles().matches(PATTERN)) {
             return error("监控范围结束里程位置填写格式不正确");
         }
         int miles = AppendUtils.stringSplit(baseCameraManagement.getBeginMiles());
@@ -333,7 +341,7 @@ public class BaseCameraManagementController extends BaseController {
             queryWrapper.eq(BaseDeviceDynamicManagement::getCameraCode, baseCameraManagement.getCameraCode());
         }
         BaseDeviceDynamicManagement one = baseDeviceDynamicManagementService.getOne(queryWrapper);
-        if (ObjectUtils.isEmpty(one)){
+        if (ObjectUtils.isEmpty(one)) {
             return error("设备动态管理表没有该相机编码");
         }
         one.setCameraCode(baseCameraManagement.getCameraCode());
@@ -345,6 +353,7 @@ public class BaseCameraManagementController extends BaseController {
 
     @GetMapping(value = "/{id}")
     @ApiOperation("根据相机ID获取相机台账管理信息")
+    @Log(title = "相机台账管理", businessType = BusinessType.MESSAGE)
     public AjaxResult getInfo(@PathVariable Long id) {
         BaseCameraManagement baseCameraManagement = baseCameraManagementService.getById(id);
         LambdaQueryWrapper<BaseRailwayManagement> queryWrapper = new LambdaQueryWrapper<BaseRailwayManagement>();
@@ -366,6 +375,7 @@ public class BaseCameraManagementController extends BaseController {
 
     @GetMapping("/getDate/{cameraCode}")
     @ApiOperation("视频上方显示的数据")
+    @Log(title = "相机台账管理", businessType = BusinessType.OTHER)
     public AjaxResult getDate(@PathVariable String cameraCode) {
         LambdaQueryWrapper<BaseCameraManagement> lw = new LambdaQueryWrapper<BaseCameraManagement>();
         if (!ObjectUtils.isEmpty(cameraCode)) {
@@ -406,6 +416,7 @@ public class BaseCameraManagementController extends BaseController {
         SimpleDateFormat dateFormat1 = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss");
         String format1 = dateFormat1.format(new Date());
         list.add(format1);
+        list.add(msgAlarm.getLineDir());
         return AjaxResult.success(list);
     }
 
@@ -419,6 +430,7 @@ public class BaseCameraManagementController extends BaseController {
      */
     @ApiOperation("相机台账管理信息导入")
     @PostMapping("/importBaseAccountManagement")
+    @Log(title = "相机台账管理", businessType = BusinessType.IMPORT)
     public AjaxResult importBaseAccountManagement(MultipartFile file, boolean updateSupport) throws Exception {
         ExcelUtil<BaseCameraManagementVos> util = new ExcelUtil<BaseCameraManagementVos>(BaseCameraManagementVos.class);
         List<BaseCameraManagementVos> accountManageList = util.importExcel(file.getInputStream());
@@ -433,6 +445,7 @@ public class BaseCameraManagementController extends BaseController {
      */
     @ApiOperation("导出相机台账管理信息")
     @PostMapping("/exportBaseAccountManagement")
+    @Log(title = "相机台账管理", businessType = BusinessType.EXPORT)
     public void exportBaseAccountManagement(HttpServletResponse response, @RequestBody BaseCameraManagementVo baseAccountManagementVo) {
         LambdaQueryWrapper<BaseCameraManagement> lw = new LambdaQueryWrapper<BaseCameraManagement>();
         if (!ObjectUtils.isEmpty(baseAccountManagementVo.getLineDir())) {
@@ -474,6 +487,7 @@ public class BaseCameraManagementController extends BaseController {
 
     @ApiOperation("相机台账管理信息模板下载")
     @GetMapping("/downloaExcel")
+    @Log(title = "相机台账管理", businessType = BusinessType.OTHER)
     public void downloadZip(HttpServletResponse response) {
         try {
             InputStream resourceAsStream = this.getClass().getResourceAsStream("/template/baseCameraManagement.xlsx");
@@ -487,6 +501,7 @@ public class BaseCameraManagementController extends BaseController {
 
     @ApiOperation("查询录像")
     @GetMapping("/api/records/{cameraCode}")
+    @Log(title = "相机台账管理", businessType = BusinessType.OTHER)
     public AjaxResult apiRecords(@PathVariable @NotNull(message = "相机编码不能为空") String cameraCode) {
         LambdaQueryWrapper<BaseCameraManagement> lw = new LambdaQueryWrapper<BaseCameraManagement>();
         lw.eq(BaseCameraManagement::getCameraCode, cameraCode);
@@ -499,6 +514,7 @@ public class BaseCameraManagementController extends BaseController {
 
     @ApiOperation("查询录像")
     @GetMapping("/api/records/{cameraCode}/{flay}")
+    @Log(title = "相机台账管理", businessType = BusinessType.OTHER)
     public AjaxResult apiRecords(@PathVariable @NotNull(message = "相机编码不能为空") String cameraCode,
                                  @PathVariable @NotNull(message = "条件不能为空") boolean flay) {
         LambdaQueryWrapper<BaseCameraManagement> lw = new LambdaQueryWrapper<BaseCameraManagement>();
@@ -512,6 +528,7 @@ public class BaseCameraManagementController extends BaseController {
 
     @ApiOperation("批量查询录像")
     @GetMapping("/api/recordsList")
+    @Log(title = "相机台账管理", businessType = BusinessType.OTHER)
     public AjaxResult apiRecordsList(@RequestBody
                                      @NotNull(message = "相机编码不能为空")
                                              List<String> cameraCodes) {
@@ -551,6 +568,7 @@ public class BaseCameraManagementController extends BaseController {
 
     @ApiOperation("播放回放")
     @PostMapping("/api/play")
+    @Log(title = "相机台账管理", businessType = BusinessType.OTHER)
     public AjaxResult play(@Validated @RequestBody BaseCameraResVo vo) {
         LambdaQueryWrapper<BaseCameraManagement> lw = new LambdaQueryWrapper<BaseCameraManagement>();
         lw.eq(BaseCameraManagement::getCameraCode, vo.getCameraCode());
@@ -568,15 +586,34 @@ public class BaseCameraManagementController extends BaseController {
 
     @ApiOperation("视频服务设备数量")
     @GetMapping("/totalNumberOfDevices")
+    @Log(title = "相机台账管理", businessType = BusinessType.OTHER)
     public AjaxResult totalNumberOfDevices() {
         long count = baseCameraManagementService.count();
         return success(count);
     }
 
+    /**
+     * 视频服务树形结构
+     *
+     * @param railwayCode      线路
+     * @param lineDir   行别
+     * @param mils 里程位置
+     * @return
+     */
     @ApiOperation("视频服务树形结构")
     @GetMapping("/cameraTree")
-    public AjaxResult cameraTree(@RequestParam(value = "name", required = false) String name) {
-        CameraTree cameraTree = baseDeviceDynamicManagementService.cameraTree(name);
+    @Log(title = "相机台账管理", businessType = BusinessType.OTHER)
+    public AjaxResult cameraTree(@RequestParam(value = "railwayCode", required = false) String railwayCode,
+                                 @RequestParam(value = "lineDir", required = false) Integer lineDir,
+                                 @RequestParam(value = "mils", required = false) String mils) {
+        Integer milsInt = null;
+        if (!StringUtils.isEmpty(mils)) {
+            if (!mils.matches(PATTERN)) {
+                return error("里程位置填写格式不正确!");
+            }
+            milsInt = AppendUtils.stringSplit(mils);
+        }
+        CameraTree cameraTree = baseDeviceDynamicManagementService.cameraTree(railwayCode, lineDir, milsInt);
         List<CameraTree> children = cameraTree.getChildren();
         children.sort(new Comparator<CameraTree>() {
             @Override
@@ -618,6 +655,7 @@ public class BaseCameraManagementController extends BaseController {
 
     @ApiOperation("关闭视频录制")
     @GetMapping("/endRecording/{id}")
+    @Log(title = "相机台账管理", businessType = BusinessType.OTHER)
     public AjaxResult endRecording(@PathVariable Long id) {
         BaseCameraManagement baseCameraManagement = baseCameraManagementService.getById(id);
         log.info("endRecording------------" + baseCameraManagement.getTaskId());
@@ -637,6 +675,7 @@ public class BaseCameraManagementController extends BaseController {
 
     @ApiOperation("开启视频录制")
     @GetMapping("/startRecording/{id}")
+    @Log(title = "相机台账管理", businessType = BusinessType.OTHER)
     public AjaxResult startRecording(@PathVariable Long id) {
         BaseCameraManagement baseCameraManagement = baseCameraManagementService.getById(id);
         log.info("startRecording------CameraCode------" + baseCameraManagement.getCameraCode());
@@ -660,6 +699,7 @@ public class BaseCameraManagementController extends BaseController {
 
     @GetMapping(value = "/getAlarm/{cameraCode}")
     @ApiOperation("根据视频ID获取详细信息")
+    @Log(title = "相机台账管理", businessType = BusinessType.MESSAGE)
     public AjaxResult getAlarm(@PathVariable String cameraCode) {
         LambdaQueryWrapper<MsgAlarm> queryWrapper = new LambdaQueryWrapper<MsgAlarm>();
         if (!ObjectUtils.isEmpty(cameraCode)) {

+ 11 - 0
hazard-admin/src/main/java/com/ozs/web/controller/accountmanagment/BaseRailwayManagementController.java

@@ -4,10 +4,12 @@ package com.ozs.web.controller.accountmanagment;
 import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper;
 import com.baomidou.mybatisplus.core.metadata.IPage;
 import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
+import com.ozs.common.annotation.Log;
 import com.ozs.common.core.controller.BaseController;
 import com.ozs.common.core.domain.AjaxResult;
 import com.ozs.common.core.domain.entity.SysDept;
 import com.ozs.common.core.domain.entity.SysDictData;
+import com.ozs.common.enums.BusinessType;
 import com.ozs.common.utils.AppendUtils;
 import com.ozs.common.utils.IdempotenceUtils;
 import com.ozs.common.utils.StringUtils;
@@ -70,6 +72,7 @@ public class BaseRailwayManagementController extends BaseController {
      */
     @ApiOperation(value = "线路管理表分页")
     @PostMapping("/list")
+    @Log(title = "线路台账管理", businessType = BusinessType.SELECT)
     public AjaxResult selectBaseLineManagement(@RequestBody BaseRailwayManagementVo baseRailwayManagementVo) {
         LambdaQueryWrapper<BaseRailwayManagement> lw = new LambdaQueryWrapper<BaseRailwayManagement>();
         if (!StringUtils.isBlank(baseRailwayManagementVo.getRailwayCode())) {
@@ -102,6 +105,7 @@ public class BaseRailwayManagementController extends BaseController {
      */
     @DeleteMapping("/{lineIds}")
     @ApiOperation("删除线路管理表信息")
+    @Log(title = "线路台账管理", businessType = BusinessType.DELETE)
     public AjaxResult removeLineManagement(@PathVariable List<Long> lineIds) {
         for (Long lineId : lineIds) {
             BaseRailwayManagement baseRailwayManagement1 = baseRailwayManagementService.getById(lineId);
@@ -129,6 +133,7 @@ public class BaseRailwayManagementController extends BaseController {
      */
     @PostMapping("/saveRailwayManagement")
     @ApiOperation("新增线路管理表信息")
+    @Log(title = "线路台账管理", businessType = BusinessType.INSERT)
     public AjaxResult saveLineManagement(@RequestBody BaseRailwayManagement baseRailwayManagement) {
         String idempotence = idempotenceUtils.getIdempotence(baseRailwayManagement.getRailwayCode());
         if (StringUtils.isNotEmpty(idempotence)) {
@@ -172,6 +177,7 @@ public class BaseRailwayManagementController extends BaseController {
      */
     @PutMapping("/editRailwayManagement")
     @ApiOperation("修改线路管理表信息")
+    @Log(title = "线路台账管理", businessType = BusinessType.UPDATE)
     public AjaxResult editLineManagement(@RequestBody BaseRailwayManagement baseRailwayManagement) {
         BaseRailwayManagement baseRailwayManagement1 = baseRailwayManagementService.getById(baseRailwayManagement.getId());
         if (ObjectUtils.isEmpty(baseRailwayManagement1)) {
@@ -209,6 +215,7 @@ public class BaseRailwayManagementController extends BaseController {
 
     @GetMapping(value = "/{id}")
     @ApiOperation("根据台账ID获取线路管理表详细信息")
+    @Log(title = "线路台账管理", businessType = BusinessType.MESSAGE)
     public AjaxResult getInfo(@PathVariable Long id) {
         BaseRailwayManagement baseRailwayManagement = baseRailwayManagementService.getById(id);
         List<SysDictData> data = dictTypeService.selectDictDataByType("railway_type");
@@ -230,6 +237,7 @@ public class BaseRailwayManagementController extends BaseController {
      */
     @ApiOperation("线路管理表信息导入")
     @PostMapping("/importBaseLineManagement")
+    @Log(title = "线路台账管理", businessType = BusinessType.IMPORT)
     public AjaxResult importBaseLineManagement(MultipartFile file, boolean updateSupport) throws Exception {
         String message = null;
         ExcelUtil<BaseRailwayManagement> util = new ExcelUtil<BaseRailwayManagement>(BaseRailwayManagement.class);
@@ -247,6 +255,7 @@ public class BaseRailwayManagementController extends BaseController {
      */
     @ApiOperation("导出线路管理表信息")
     @PostMapping("/exportBaseLineManagement")
+    @Log(title = "线路台账管理", businessType = BusinessType.EXPORT)
     public void exportBaseLineManagement(HttpServletResponse response, @RequestBody BaseRailwayManagementVo baseRailwayManagementVo) {
         LambdaQueryWrapper<BaseRailwayManagement> lw = new LambdaQueryWrapper<BaseRailwayManagement>();
         if (!StringUtils.isBlank(baseRailwayManagementVo.getRailwayCode())) {
@@ -262,6 +271,7 @@ public class BaseRailwayManagementController extends BaseController {
 
     @ApiOperation("线路管理表信息模板下载")
     @GetMapping("/downloaExcel")
+    @Log(title = "线路台账管理", businessType = BusinessType.OTHER)
     public void downloadZip(HttpServletResponse response) {
         try {
             InputStream resourceAsStream = this.getClass().getResourceAsStream("/template/baseRailwayManagement.xlsx");
@@ -278,6 +288,7 @@ public class BaseRailwayManagementController extends BaseController {
      */
     @ApiOperation(value = "线路下拉")
     @GetMapping("/query")
+    @Log(title = "线路台账管理", businessType = BusinessType.SELECT)
     public AjaxResult query() {
         return AjaxResult.success(baseRailwayManagementService.list());
     }

+ 32 - 1
hazard-admin/src/main/java/com/ozs/web/controller/accountmanagment/MsgAlarmController.java

@@ -4,11 +4,13 @@ import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper;
 import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
 import com.baomidou.mybatisplus.core.metadata.IPage;
 import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
+import com.ozs.common.annotation.Log;
 import com.ozs.common.core.controller.BaseController;
 import com.ozs.common.core.domain.AjaxResult;
 import com.ozs.common.core.domain.entity.SysDept;
 import com.ozs.common.core.domain.entity.SysUser;
 import com.ozs.common.core.domain.model.LoginUser;
+import com.ozs.common.enums.BusinessType;
 import com.ozs.common.utils.AppendUtils;
 import com.ozs.common.utils.StringUtils;
 import com.ozs.common.utils.poi.ExcelUtil;
@@ -64,6 +66,7 @@ import java.util.stream.Collectors;
 @RequestMapping("/service/msgAlarm")
 public class MsgAlarmController extends BaseController {
     private static final Logger log = LoggerFactory.getLogger(MsgAlarmController.class);
+    public static final String PATTERN = "^K([0-9]+)\\+([0-9]{1,3})$";
     @Resource
     MsgAlarmService msgAlarmService;
     @Resource
@@ -88,6 +91,7 @@ public class MsgAlarmController extends BaseController {
      */
     @PostMapping("/messageMoreNum")
     @ApiOperation("更多消息--总数,已读数")
+    @Log(title = "报警信息管理", businessType = BusinessType.SELECT)
     public AjaxResult messageMoreNum(@RequestBody MsgAlarmVo msgAlarmVo) {
         MsgAlarmVo msgAlarmVo1 = (MsgAlarmVo) dataScoreUtil.setDataScore(getUserId(), msgAlarmVo);
         Map<String, Integer> messageMore = msgWebPushService.messageMoreNum(msgAlarmVo1);
@@ -99,6 +103,7 @@ public class MsgAlarmController extends BaseController {
      */
     @PostMapping("/messageMore")
     @ApiOperation("更多消息")
+    @Log(title = "报警信息管理", businessType = BusinessType.SELECT)
     public AjaxResult messageMore(@RequestBody MsgAlarmVo msgAlarmVo) {
         MsgAlarmVo msgAlarmVo1 = (MsgAlarmVo) dataScoreUtil.setDataScore(getUserId(), msgAlarmVo);
         IPage<MsgAlarm> messageMore = msgWebPushService.messageMore(msgAlarmVo1);
@@ -110,6 +115,7 @@ public class MsgAlarmController extends BaseController {
      */
     @GetMapping("/webAlarm")
     @ApiOperation("app报警推送次数")
+    @Log(title = "报警信息管理", businessType = BusinessType.SELECT)
     public AjaxResult webAlarmNum() {
         MsgAlarmVo msgAlarm = (MsgAlarmVo) dataScoreUtil.setDataScore(getUserId(), new MsgAlarmVo());
         Map webAlarm = msgWebPushService.webAlarm(msgAlarm);
@@ -120,7 +126,8 @@ public class MsgAlarmController extends BaseController {
      * web消息已读
      */
     @PostMapping("/read")
-    @ApiOperation(value = "web消息已读")
+    @ApiOperation(value = "web消息已读")  
+    @Log(title = "报警信息管理", businessType = BusinessType.SELECT)
     public AjaxResult read(@RequestBody MsgWebPush msgWebPush) {
         if (StringUtils.isEmpty(msgWebPush) || StringUtils.isEmpty(msgWebPush.getId())) {
             return AjaxResult.error("主键ID不能为空!");
@@ -136,8 +143,17 @@ public class MsgAlarmController extends BaseController {
      */
     @ApiOperation(value = "报警信息分页")
     @PostMapping("/list")
+    @Log(title = "报警信息管理", businessType = BusinessType.SELECT)
     public AjaxResult selectMsgAlarm(@RequestBody MsgAlarmVo msgAlarmVo) {
         msgAlarmVo = (MsgAlarmVo) dataScoreUtil.setDataScore(getUserId(), msgAlarmVo);
+        if (!ObjectUtils.isEmpty(msgAlarmVo.getAlarmMiles())){
+            if (!msgAlarmVo.getAlarmMiles().matches(PATTERN)) {
+                return error("里程位置填写格式不正确!");
+            }else {
+                int miles = AppendUtils.stringSplit(msgAlarmVo.getAlarmMiles());
+                msgAlarmVo.setAlarmMile(miles);
+            }
+        }
         IPage<MsgAlarm> page = msgAlarmService.queryPage(msgAlarmVo);
         page.setTotal(page.getTotal());
         page.setCurrent(page.getCurrent());
@@ -179,6 +195,7 @@ public class MsgAlarmController extends BaseController {
 
     @GetMapping(value = "/getByAlarmId/{alarmId}")
     @ApiOperation("根据报警信息ID获取详细信息-app")
+    @Log(title = "报警信息管理", businessType = BusinessType.MESSAGE)
     public AjaxResult getByAlarmId(@PathVariable String alarmId) {
         MsgAlarm msgAlarm = msgAlarmService.getByAlarmId(alarmId);
         if (!ObjectUtils.isEmpty(msgAlarm)) {
@@ -193,6 +210,9 @@ public class MsgAlarmController extends BaseController {
             }
             BaseRailwayManagement baseRailwayManagement = baseRailwayManagementService.getOne(wrapper);
             MsgAlarmResp msgAlarmResp = new MsgAlarmResp();
+            String[] split = msgAlarm.getImageUrl().split(";");
+            ArrayList<String> objects = new ArrayList<>(Arrays.asList(split));
+            msgAlarm.setImageUrls(objects);
             BeanUtils.copyProperties(msgAlarm, msgAlarmResp);
             msgAlarmResp.setRailwayName(baseRailwayManagement.getRailwayName());
             msgAlarmResp.setDeptId(baseCameraManagement.getDeptId());
@@ -211,6 +231,7 @@ public class MsgAlarmController extends BaseController {
 
     @GetMapping(value = "/{id}")
     @ApiOperation("根据报警信息ID获取详细信息")
+    @Log(title = "报警信息管理", businessType = BusinessType.MESSAGE)
     public AjaxResult getInfo(@PathVariable Long id) {
         MsgAlarm msgAlarm = msgAlarmService.getById(id);
         if (!ObjectUtils.isEmpty(msgAlarm)) {
@@ -225,6 +246,9 @@ public class MsgAlarmController extends BaseController {
             }
             BaseRailwayManagement baseRailwayManagement = baseRailwayManagementService.getOne(wrapper);
             MsgAlarmResp msgAlarmResp = new MsgAlarmResp();
+            String[] split = msgAlarm.getImageUrl().split(";");
+            ArrayList<String> objects = new ArrayList<>(Arrays.asList(split));
+            msgAlarm.setImageUrls(objects);
             BeanUtils.copyProperties(msgAlarm, msgAlarmResp);
             msgAlarmResp.setRailwayName(baseRailwayManagement.getRailwayName());
             msgAlarmResp.setDeptId(baseCameraManagement.getDeptId());
@@ -243,6 +267,7 @@ public class MsgAlarmController extends BaseController {
 
     @PutMapping(value = "/{id}")
     @ApiOperation("根据报警信息ID解除报警")
+    @Log(title = "报警信息管理", businessType = BusinessType.UPDATE)
     public AjaxResult updateIsLock(@PathVariable Long id) {
         MsgAlarm msgAlarm = msgAlarmService.getById(id);
         msgAlarm.setIsLock(1);
@@ -254,6 +279,7 @@ public class MsgAlarmController extends BaseController {
 
     @GetMapping(value = "/alarmHistoricalAlarm/{alarmId}")
     @ApiOperation("报警消息详情历史报警次数信息")
+    @Log(title = "报警信息管理", businessType = BusinessType.SELECT)
     public AjaxResult alarmHistoricalAlarm(@PathVariable Long alarmId) {
         QueryWrapper<MsgAlarmFrequency> wrapper = new QueryWrapper<>();
         wrapper.eq("alarm_id", alarmId);
@@ -264,6 +290,7 @@ public class MsgAlarmController extends BaseController {
 
     @GetMapping(value = "/videoHistoricalAlarm/{cameraCode}")
     @ApiOperation("视频服务历史报警信息")
+    @Log(title = "报警信息管理", businessType = BusinessType.SELECT)
     public AjaxResult videoHistoricalAlarm(@PathVariable String cameraCode) {
         QueryWrapper<MsgAlarm> wrapper = new QueryWrapper<>();
         wrapper.eq("camera_code", cameraCode);
@@ -278,6 +305,7 @@ public class MsgAlarmController extends BaseController {
      * @param alarmStatisticResVo
      * @return
      */
+    @Log(title = "报警信息管理", businessType = BusinessType.OTHER)
     @PostMapping("/dataStatistic")
     @ApiOperation(value = "web数据统计 报警数据详情")
     @ApiImplicitParams(value = {
@@ -305,6 +333,7 @@ public class MsgAlarmController extends BaseController {
      * @param
      * @return
      */
+    @Log(title = "报警信息管理", businessType = BusinessType.OTHER)
     @PostMapping("/alarmMonthStatistic")
     @ApiOperation(value = "web数据统计 报警月统计数据")
     @ApiImplicitParams(value = {
@@ -357,6 +386,7 @@ public class MsgAlarmController extends BaseController {
      * @param
      * @return
      */
+    @Log(title = "报警信息管理", businessType = BusinessType.EXPORT)
     @PostMapping("/exportDataStatistic")
     @ApiOperation(value = "web数据统计-数据导出")
     @ApiImplicitParams(value = {
@@ -400,6 +430,7 @@ public class MsgAlarmController extends BaseController {
      * @param
      * @return
      */
+    @Log(title = "报警信息管理", businessType = BusinessType.EXPORT)
     @PostMapping("/exportDataStatisticMonth")
     @ApiOperation(value = "报警月统计数据导出")
     @ApiImplicitParams(value = {

+ 1 - 2
hazard-admin/src/main/java/com/ozs/web/controller/common/CaptchaController.java

@@ -46,8 +46,7 @@ public class CaptchaController
     public AjaxResult getCode(HttpServletResponse response) throws IOException
     {
         AjaxResult ajax = AjaxResult.success();
-        //boolean captchaEnabled = configService.selectCaptchaEnabled();
-        boolean captchaEnabled = true;
+        boolean captchaEnabled = configService.selectCaptchaEnabled();
         ajax.put("captchaEnabled", captchaEnabled);
         if (!captchaEnabled) {
             return ajax;

+ 1 - 0
hazard-admin/src/main/java/com/ozs/web/controller/monitor/SysLoginInfoController.java

@@ -52,6 +52,7 @@ public class SysLoginInfoController extends BaseController {
      */
     @ApiOperation(value = "获取登录日志分页列表")
     @PostMapping("/list")
+    @PreAuthorize("@ss.hasPermi('monitor:logininfor:list')")
     public AjaxResult list(@RequestBody SysLoginInfoVo sysLoginInfoVo) {
         LambdaQueryWrapper<SysLoginInfo> wrapper = new LambdaQueryWrapper<SysLoginInfo>();
         if (!ObjectUtils.isEmpty(sysLoginInfoVo.getIpaddr())) {

+ 1 - 0
hazard-admin/src/main/java/com/ozs/web/controller/system/SysDictDataController.java

@@ -63,6 +63,7 @@ public class SysDictDataController extends BaseController {
      */
     @ApiOperation(value = "获取字典类型列表")
     @PostMapping("/list")
+    @PreAuthorize("@ss.hasPermi('system:dict:list')")
     public AjaxResult list(@RequestBody SysDictDataVo sysDictDataVo) {
         LambdaQueryWrapper<SysDictData> wrapper = new LambdaQueryWrapper<SysDictData>();
         if (!ObjectUtils.isEmpty(sysDictDataVo.getDictCode())) {

+ 11 - 6
hazard-admin/src/main/java/com/ozs/web/controller/system/SysDictTypeController.java

@@ -63,6 +63,7 @@ public class SysDictTypeController extends BaseController {
      */
     @ApiOperation(value = "获取字典类型列表")
     @PostMapping("/list")
+    @PreAuthorize("@ss.hasPermi('system:dict:list')")
     public AjaxResult list(@RequestBody SysDictTypeVo sysDictTypeVo) {
         LambdaQueryWrapper<SysDictType> wrapper = new LambdaQueryWrapper<SysDictType>();
         if (!ObjectUtils.isEmpty(sysDictTypeVo.getDictId())) {
@@ -111,9 +112,11 @@ public class SysDictTypeController extends BaseController {
     @PostMapping
     public AjaxResult add(@Validated @RequestBody SysDictType dict)
     {
-        if (UserConstants.NOT_UNIQUE.equals(dictTypeService.checkDictTypeUnique(dict)))
-        {
-            return error("新增字典'" + dict.getDictName() + "'失败,字典类型已存在");
+        if (UserConstants.NOT_UNIQUE.equals(dictTypeService.checkDictTypeUnique(dict))) {
+            return error("新增字典'" + dict.getDictType() + "'失败,字典类型已存在");
+        }
+        if (UserConstants.NOT_UNIQUE.equals(dictTypeService.checkDictNameUnique(dict))) {
+            return error("新增字典'" + dict.getDictName() + "'失败,字典名称已存在");
         }
         dict.setCreateBy(getUsername());
         return toAjax(dictTypeService.insertDictType(dict));
@@ -127,9 +130,11 @@ public class SysDictTypeController extends BaseController {
     @PutMapping
     public AjaxResult edit(@Validated @RequestBody SysDictType dict)
     {
-        if (UserConstants.NOT_UNIQUE.equals(dictTypeService.checkDictTypeUnique(dict)))
-        {
-            return error("修改字典'" + dict.getDictName() + "'失败,字典类型已存在");
+        if (UserConstants.NOT_UNIQUE.equals(dictTypeService.checkDictTypeUnique(dict))) {
+            return error("修改字典'" + dict.getDictType() + "'失败,字典类型已存在");
+        }
+        if (UserConstants.NOT_UNIQUE.equals(dictTypeService.checkDictNameUnique(dict))) {
+            return error("修改字典'" + dict.getDictName() + "'失败,字典名称已存在");
         }
         dict.setUpdateBy(getUsername());
         return toAjax(dictTypeService.updateDictType(dict));

+ 1 - 1
hazard-admin/src/main/java/com/ozs/web/controller/system/SysLoginController.java

@@ -73,7 +73,7 @@ public class SysLoginController {
         String token = loginService.loginApp(loginBody.getUsername(), loginBody.getPassword(), loginBody.getCode(),
                 loginBody.getUuid());
         ajax.put(Constants.TOKEN, token);
-        LoginUser loginedUser = tokenService.getLoginedUserByToken(token);
+        LoginUser loginedUser = tokenService.getLoginedUserByTokenApp(token);
         if (loginedUser != null) {
             ajax.put("userId", loginedUser.getUserId());
             ajax.put("username", loginedUser.getUsername());

+ 9 - 2
hazard-admin/src/main/java/com/ozs/web/controller/system/SysRoleController.java

@@ -86,6 +86,7 @@ public class SysRoleController extends BaseController
     @PreAuthorize("@ss.hasPermi('system:role:list')")
     @PostMapping("/list")
     @ApiOperation("根据条件分页查询角色数据")
+    @Log(title = "角色管理", businessType = BusinessType.SELECT)
     public AjaxResult page(@NotEmpty(message = "数据为空")
                            @RequestBody SysRoleRequestVo vo) {
         vo= (SysRoleRequestVo) dataScoreUtil.setDataScore(getUserId(),vo);
@@ -112,6 +113,7 @@ public class SysRoleController extends BaseController
      */
     @PreAuthorize("@ss.hasPermi('system:role:query')")
     @GetMapping(value = "/{roleId}")
+    @Log(title = "角色管理", businessType = BusinessType.MESSAGE)
     public AjaxResult getInfo(@PathVariable Long roleId)
     {
 //        roleService.checkRoleDataScope(roleId);
@@ -138,7 +140,8 @@ public class SysRoleController extends BaseController
         {
             return error("新增角色'" + role.getRoleName() + "'失败,角色权限已存在");
         }
-        role.setCreateBy(getUsername());
+        role.setCreateBy(getUserId());
+        role.setUpdateBy(getUserId());
         return toAjax(roleService.insertRole(role));
 
     }
@@ -161,7 +164,7 @@ public class SysRoleController extends BaseController
         {
             return error("修改角色'" + role.getRoleName() + "'失败,角色权限已存在");
         }
-        role.setUpdateBy(getUsername());
+        role.setUpdateBy(getUserId());
 
         if (roleService.updateRole(role) > 0)
         {
@@ -221,6 +224,7 @@ public class SysRoleController extends BaseController
      */
     @PreAuthorize("@ss.hasPermi('system:role:query')")
     @GetMapping("/optionselect")
+    @Log(title = "角色管理", businessType = BusinessType.OTHER)
     public AjaxResult optionselect()
     {
         return success(roleService.selectRoleAll());
@@ -231,6 +235,7 @@ public class SysRoleController extends BaseController
      */
     @PreAuthorize("@ss.hasPermi('system:role:list')")
     @GetMapping("/authUser/allocatedList")
+    @Log(title = "角色管理", businessType = BusinessType.SELECT)
     public TableDataInfo allocatedList(SysUser user)
     {
         startPage();
@@ -243,6 +248,7 @@ public class SysRoleController extends BaseController
      */
     @PreAuthorize("@ss.hasPermi('system:role:list')")
     @GetMapping("/authUser/unallocatedList")
+    @Log(title = "角色管理", businessType = BusinessType.SELECT)
     public TableDataInfo unallocatedList(SysUser user)
     {
         startPage();
@@ -289,6 +295,7 @@ public class SysRoleController extends BaseController
      */
     @PreAuthorize("@ss.hasPermi('system:role:query')")
     @GetMapping(value = "/deptTree/{roleId}")
+    @Log(title = "角色管理", businessType = BusinessType.OTHER)
     public AjaxResult deptTree(@PathVariable("roleId") Long roleId)
     {
         AjaxResult ajax = AjaxResult.success();

+ 10 - 2
hazard-admin/src/main/java/com/ozs/web/controller/system/SysUserController.java

@@ -102,6 +102,7 @@ public class SysUserController extends BaseController {
     @ApiOperation(value = "获取用户列表")
     @PostMapping("/list")
     @PreAuthorize("@ss.hasPermi('system:user:list')")
+    @Log(title = "用户管理", businessType = BusinessType.SELECT)
     public AjaxResult list(@RequestBody SysUserVo sysUserVo) {
         sysUserVo = (SysUserVo) dataScoreUtil.setDataScore(getUserId(), sysUserVo);
         IPage<SysUser> page = userService.queryPage(sysUserVo);
@@ -173,6 +174,7 @@ public class SysUserController extends BaseController {
     }
 
     @PostMapping("/importTemplate")
+    @Log(title = "用户管理", businessType = BusinessType.SELECT)
     public void importTemplate(HttpServletResponse response) {
         ExcelUtil<SysUser> util = new ExcelUtil<SysUser>(SysUser.class);
         util.importTemplateExcel(response, "用户数据");
@@ -180,6 +182,7 @@ public class SysUserController extends BaseController {
 
     @ApiOperation("用户管理信息模板下载")
     @GetMapping("/downloaExcel")
+    @Log(title = "用户管理", businessType = BusinessType.OTHER)
     public void downloadZip(HttpServletResponse response) {
         try {
             InputStream resourceAsStream = this.getClass().getResourceAsStream("/template/SysUser.xlsx");
@@ -196,6 +199,7 @@ public class SysUserController extends BaseController {
      */
     @PreAuthorize("@ss.hasPermi('system:user:query')")
     @GetMapping(value = {"/", "/{id}"})
+    @Log(title = "用户管理", businessType = BusinessType.MESSAGE)
     public AjaxResult getInfo(@PathVariable(value = "id", required = false) Long id) {
 //        userService.checkUserDataScope(id);
         AjaxResult ajax = AjaxResult.success();
@@ -229,7 +233,8 @@ public class SysUserController extends BaseController {
                 && UserConstants.NOT_UNIQUE.equals(userService.checkEmailUnique(user))) {
             return error("新增用户'" + user.getUserName() + "'失败,邮箱账号已存在");
         }
-        user.setCreateBy(getUsername());
+        user.setCreateBy(getUserId());
+        user.setUpdateBy(getUserId());
         return toAjax(userService.saveUser(user));
     }
 
@@ -251,7 +256,7 @@ public class SysUserController extends BaseController {
                 && UserConstants.NOT_UNIQUE.equals(userService.checkEmailUnique(user))) {
             return error("修改用户'" + user.getUserName() + "'失败,邮箱账号已存在");
         }
-        user.setUpdateBy(getUsername());
+        user.setUpdateBy(getUserId());
         return toAjax(userService.updateUsers(user));
     }
 
@@ -384,6 +389,7 @@ public class SysUserController extends BaseController {
      */
     @PreAuthorize("@ss.hasPermi('system:user:query')")
     @GetMapping("/authRole/{userId}")
+    @Log(title = "用户管理", businessType = BusinessType.MESSAGE)
     public AjaxResult authRole(@PathVariable("userId") Long id) {
         AjaxResult ajax = AjaxResult.success();
         SysUser user = userService.selectUserById(id);
@@ -410,6 +416,7 @@ public class SysUserController extends BaseController {
      */
     @PreAuthorize("@ss.hasPermi('system:user:list')")
     @GetMapping("/deptTree")
+    @Log(title = "用户管理", businessType = BusinessType.OTHER)
     public AjaxResult deptTree(SysDept dept) {
         return success(deptService.selectDeptTreeList(dept));
     }
@@ -419,6 +426,7 @@ public class SysUserController extends BaseController {
      */
     @GetMapping("/dataPermission/{id}/{dataPermission}")
     @ApiOperation("数据权限分配")
+    @Log(title = "用户管理", businessType = BusinessType.GRANT)
     public AjaxResult dataPermission(@PathVariable("id") Long id, @PathVariable("dataPermission") Integer dataPermission) {
         if (userService.dataPermission(id, dataPermission)) {
             return success();