Browse Source

细分数据权限

qzyReal 2 years ago
parent
commit
c2c358887b
53 changed files with 324 additions and 334 deletions
  1. 0 3
      business-system/alarm-system/src/main/java/com/pj/TbPersonAlarmController.java
  2. 2 2
      business-system/car-identify/src/main/java/com/pj/biz/TbCarVisitRecordController.java
  3. 1 3
      business-system/epidemic-prevention/src/main/java/com/pj/HealthStatusController.java
  4. 1 3
      business-system/epidemic-prevention/src/main/java/com/pj/TbManagerController.java
  5. 6 5
      business-system/face-identify/src/main/java/com/pj/biz/TbPersonVisitRecordController.java
  6. 1 14
      business-system/filing-system/src/main/java/com/pj/api/WxController.java
  7. 1 3
      business-system/filing-system/src/main/java/com/pj/biz/TbCarBlackController.java
  8. 1 3
      business-system/filing-system/src/main/java/com/pj/biz/TbCarFilingController.java
  9. 0 3
      business-system/filing-system/src/main/java/com/pj/biz/TbPersonBlackController.java
  10. 1 1
      business-system/filing-system/src/main/java/com/pj/biz/TbPersonFilingController.java
  11. 1 3
      business-system/monitor-system/src/main/java/com/pj/MonitorController.java
  12. 1 3
      business-system/venues-system/src/main/java/com/pj/biz/TbTerminalController.java
  13. 0 9
      business-system/venues-system/src/main/java/com/pj/biz/TbVenuesController.java
  14. 1 3
      sp-admin/src/main/java/com/pj/project4sp/admin/SpAdminController.java
  15. 7 1
      sp-admin/src/main/java/com/pj/project4sp/admin4acc/SpAccAdminService.java
  16. 22 13
      sp-core/src/main/java/com/pj/current/netty/command/handler/impl/HealthlogHandler.java
  17. 20 16
      sp-core/src/main/java/com/pj/current/satoken/StpUserUtil.java
  18. 1 2
      sp-core/src/main/java/com/pj/project/sp_admin/SpAdminService.java
  19. 2 1
      sp-core/src/main/java/com/pj/project/sys_dict/SysDict.java
  20. 1 0
      sp-core/src/main/java/com/pj/project/sys_dict/SysDictMapper.xml
  21. 4 0
      sp-core/src/main/java/com/pj/project/tb_car_black/TbCarBlack.java
  22. 0 13
      sp-core/src/main/java/com/pj/project/tb_car_black/TbCarBlackService.java
  23. 6 0
      sp-core/src/main/java/com/pj/project/tb_car_filing/TbCarFilingMapper.xml
  24. 38 31
      sp-core/src/main/java/com/pj/project/tb_car_filing/TbCarFilingService.java
  25. 2 1
      sp-core/src/main/java/com/pj/project/tb_car_visit_record/TbCarVisitRecordMapper.xml
  26. 17 3
      sp-core/src/main/java/com/pj/project/tb_car_visit_record/TbCarVisitRecordService.java
  27. 0 18
      sp-core/src/main/java/com/pj/project/tb_department/TbDepartment.java
  28. 2 1
      sp-core/src/main/java/com/pj/project/tb_department/TbDepartmentController.java
  29. 2 18
      sp-core/src/main/java/com/pj/project/tb_department/TbDepartmentMapper.xml
  30. 30 43
      sp-core/src/main/java/com/pj/project/tb_dept/TbDept.java
  31. 3 0
      sp-core/src/main/java/com/pj/project/tb_dept/TbDeptController.java
  32. 3 1
      sp-core/src/main/java/com/pj/project/tb_dept/TbDeptMapper.xml
  33. 16 14
      sp-core/src/main/java/com/pj/project/tb_dept/TbDeptService.java
  34. 3 0
      sp-core/src/main/java/com/pj/project/tb_gate_terminal/TbGateTerminal.java
  35. 2 1
      sp-core/src/main/java/com/pj/project/tb_gate_terminal/TbGateTerminalMapper.xml
  36. 38 25
      sp-core/src/main/java/com/pj/project/tb_gate_terminal/TbGateTerminalService.java
  37. 3 0
      sp-core/src/main/java/com/pj/project/tb_gate_terminal/bo/ResultDTO.java
  38. 0 2
      sp-core/src/main/java/com/pj/project/tb_mini_user/TbMiniUserService.java
  39. 4 0
      sp-core/src/main/java/com/pj/project/tb_person_black/TbPersonBlack.java
  40. 12 21
      sp-core/src/main/java/com/pj/project/tb_person_black/TbPersonBlackService.java
  41. 11 8
      sp-core/src/main/java/com/pj/project/tb_person_black/task/PersonBlackTask.java
  42. 1 3
      sp-core/src/main/java/com/pj/project/tb_person_filing/ImportPersonListener.java
  43. 7 3
      sp-core/src/main/java/com/pj/project/tb_person_filing/TbPersonFilingMapper.xml
  44. 21 17
      sp-core/src/main/java/com/pj/project/tb_person_filing/TbPersonFilingService.java
  45. 3 3
      sp-core/src/main/java/com/pj/project/tb_person_visit_record/TbPersonVisitRecord.java
  46. 1 0
      sp-core/src/main/java/com/pj/project/tb_person_visit_record/TbPersonVisitRecordMapper.xml
  47. 11 6
      sp-core/src/main/java/com/pj/project/tb_person_visit_record/TbPersonVisitRecordService.java
  48. 1 0
      sp-core/src/main/java/com/pj/project/tb_person_visit_record/VisitAddBO.java
  49. 0 2
      sp-core/src/main/java/com/pj/project/tb_terminal/TbTerminalMapper.xml
  50. 11 5
      sp-core/src/main/java/com/pj/project/tb_terminal/TbTerminalService.java
  51. 0 1
      sp-core/src/main/java/com/pj/project/tb_terminal/bo/MonitorDTO.java
  52. 0 1
      sp-core/src/main/java/com/pj/project/tb_venues/TbVenues.java
  53. 2 2
      sp-start/src/main/resources/application-dev.yml

+ 0 - 3
business-system/alarm-system/src/main/java/com/pj/TbPersonAlarmController.java

@@ -83,9 +83,6 @@ public class TbPersonAlarmController {
     public AjaxJson getList() {
         SoMap so = SoMap.getRequestSoMap();
         so.put("alarm",1);
-        if (!StpUserUtil.isAdmin()) {
-            so.put("departmentId",StpUserUtil.getDeptId());
-        }
         List<TbManager> list = tbManagerService.getList(so.startPage());
         return AjaxJson.getPageData(so.getDataCount(), list);
     }

+ 2 - 2
business-system/car-identify/src/main/java/com/pj/biz/TbCarVisitRecordController.java

@@ -80,7 +80,7 @@ public class TbCarVisitRecordController {
     public AjaxJson getList() {
         SoMap so = SoMap.getRequestSoMap();
         if (!StpUserUtil.isAdmin()) {
-            so.put("departmentId",StpUserUtil.getDeptId());
+            so.put("departmentId", StpUserUtil.getDepartmentId());
         }
         List<TbCarVisitRecord> list = tbCarVisitRecordService.getList(so.startPage());
         return AjaxJson.getPageData(so.getDataCount(), list);
@@ -91,7 +91,7 @@ public class TbCarVisitRecordController {
     public AjaxJson export() {
         SoMap soMap = SoMap.getRequestSoMap();
         if (!StpUserUtil.isAdmin()) {
-            soMap.put("departmentId",StpUserUtil.getDeptId());
+            soMap.put("departmentId", StpUserUtil.getDepartmentId());
         }
         return AjaxJson.getSuccessData(tbCarVisitRecordService.export(soMap));
     }

+ 1 - 3
business-system/epidemic-prevention/src/main/java/com/pj/HealthStatusController.java

@@ -30,9 +30,7 @@ public class HealthStatusController {
     @RequestMapping("getList")
     public AjaxJson getList() {
         SoMap so = SoMap.getRequestSoMap();
-        if (!StpUserUtil.isAdmin()) {
-            so.put("departmentId",StpUserUtil.getDeptId());
-        }
+
         List<TbPersonVisitRecord> list = tbPersonVisitRecordService.getList(so.startPage());
         return AjaxJson.getPageData(so.getDataCount(), list);
     }

+ 1 - 3
business-system/epidemic-prevention/src/main/java/com/pj/TbManagerController.java

@@ -90,9 +90,7 @@ public class TbManagerController {
     @RequestMapping("getList")
     public AjaxJson getList() {
         SoMap so = SoMap.getRequestSoMap();
-        if (!StpUserUtil.isAdmin()) {
-            so.put("departmentId", StpUserUtil.getDeptId());
-        }
+
         so.put("alarm", 0);
         List<TbManager> list = tbManagerService.getList(so.startPage());
         return AjaxJson.getPageData(so.getDataCount(), list);

+ 6 - 5
business-system/face-identify/src/main/java/com/pj/biz/TbPersonVisitRecordController.java

@@ -43,6 +43,7 @@ public class TbPersonVisitRecordController {
         tbPersonVisitRecordService.add(t);
         return AjaxJson.getSuccessData(t);
     }
+
     /**
      * 健康码记录-增
      */
@@ -62,6 +63,7 @@ public class TbPersonVisitRecordController {
         tbPersonVisitRecordService.delete(id);
         return AjaxJson.getSuccess();
     }
+
     /**
      * 健康码记录-删除
      */
@@ -73,7 +75,6 @@ public class TbPersonVisitRecordController {
     }
 
 
-
     /**
      * 改
      */
@@ -83,6 +84,7 @@ public class TbPersonVisitRecordController {
         tbPersonVisitRecordService.update(t);
         return AjaxJson.getSuccess();
     }
+
     /**
      * 健康码记录-改
      */
@@ -109,22 +111,21 @@ public class TbPersonVisitRecordController {
     public AjaxJson getList() {
         SoMap so = SoMap.getRequestSoMap();
         if (!StpUserUtil.isAdmin()) {
-            so.put("departmentId",StpUserUtil.getDeptId());
+            so.put("departmentId", StpUserUtil.getDepartmentId());
         }
         List<TbPersonVisitRecord> list = tbPersonVisitRecordService.getList(so.startPage());
         return AjaxJson.getPageData(so.getDataCount(), list);
     }
+
     @RequestMapping("export")
     @SaCheckPermission(TbPersonVisitRecord.PERMISSION_CODE_EXPORT)
     public AjaxJson export() {
         SoMap soMap = SoMap.getRequestSoMap();
         if (!StpUserUtil.isAdmin()) {
-            soMap.put("departmentId",StpUserUtil.getDeptId());
+            soMap.put("departmentId", StpUserUtil.getDepartmentId());
         }
         return AjaxJson.getSuccessData(tbPersonVisitRecordService.export(soMap));
     }
 
 
-
-
 }

+ 1 - 14
business-system/filing-system/src/main/java/com/pj/api/WxController.java

@@ -82,10 +82,6 @@ public class WxController {
         SoMap so = SoMap.getRequestSoMap();
         so.put("miniUserId", StpUserUtil.getMiniUserId());
         if (StpUserUtil.isInnerMiniUser()) {
-            //内部人员 自己备案的+部门的备案
-           if (!StpUserUtil.isAdmin()){
-               so.put("departmentId", StpUserUtil.getDepartmentId());
-           }
             List<TbPersonFiling> list = tbPersonFilingService.getForWx(so.startPage());
             return AjaxJson.getPageData(so.getDataCount(), list);
         } else {
@@ -97,9 +93,6 @@ public class WxController {
 
     @PostMapping("addPersonFiling")
     public AjaxJson addPersonFiling(TbPersonFiling tbPersonFiling) {
-        if (!StpUserUtil.isInnerMiniUser()) {
-            tbPersonFiling.setDeptId(StpUserUtil.getDeptId());
-        }
         TbPersonFiling db = tbPersonFilingService.findByIdCard(tbPersonFiling.getIdCard());
         if (db != null) {
             tbPersonFiling = db;
@@ -127,9 +120,7 @@ public class WxController {
 
     @PostMapping("addCarFiling")
     public AjaxJson addCarFiling(TbCarFiling tbCarFiling) {
-        if (!StpUserUtil.isInnerMiniUser()) {
-            tbCarFiling.setDeptId(StpUserUtil.getDeptId());
-        }
+
         tbCarFilingService.add(tbCarFiling);
         ReMiniUserCarFiling reMiniUserCarFiling = new ReMiniUserCarFiling();
         reMiniUserCarFiling.setFilingCarId(tbCarFiling.getId())
@@ -143,10 +134,6 @@ public class WxController {
         SoMap so = SoMap.getRequestSoMap();
         so.put("miniUserId", StpUserUtil.getMiniUserId());
         if (StpUserUtil.isAdmin()) {
-            //内部人员 自己备案的+部门的备案
-            if (!StpUserUtil.isAdmin()) {
-                so.put("departmentId", StpUserUtil.getDepartmentId());
-            }
             List<TbCarFiling> list = tbCarFilingService.getForWx(so.startPage());
             return AjaxJson.getPageData(so.getDataCount(), list);
         } else {

+ 1 - 3
business-system/filing-system/src/main/java/com/pj/biz/TbCarBlackController.java

@@ -89,9 +89,7 @@ public class TbCarBlackController {
     @RequestMapping("getList")
     public AjaxJson getList() {
         SoMap so = SoMap.getRequestSoMap();
-        if (!StpUserUtil.isAdmin()) {
-            so.put("departmentId",StpUserUtil.getDeptId());
-        }
+
         List<TbCarBlack> list = tbCarBlackService.getList(so.startPage());
         return AjaxJson.getPageData(so.getDataCount(), list);
     }

+ 1 - 3
business-system/filing-system/src/main/java/com/pj/biz/TbCarFilingController.java

@@ -88,9 +88,7 @@ public class TbCarFilingController {
     @RequestMapping("getList")
     public AjaxJson getList() {
         SoMap so = SoMap.getRequestSoMap();
-        if (!StpUserUtil.isAdmin()) {
-            so.put("departmentId",StpUserUtil.getDeptId());
-        }
+
         List<TbCarFiling> list = tbCarFilingService.getList(so.startPage());
         return AjaxJson.getPageData(so.getDataCount(), list);
     }

+ 0 - 3
business-system/filing-system/src/main/java/com/pj/biz/TbPersonBlackController.java

@@ -89,9 +89,6 @@ public class TbPersonBlackController {
     @RequestMapping("getList")
     public AjaxJson getList() {
         SoMap so = SoMap.getRequestSoMap();
-        if (!StpUserUtil.isAdmin()) {
-            so.put("departmentId",StpUserUtil.getDeptId());
-        }
         List<TbPersonBlack> list = tbPersonBlackService.getList(so.startPage());
         return AjaxJson.getPageData(so.getDataCount(), list);
     }

+ 1 - 1
business-system/filing-system/src/main/java/com/pj/biz/TbPersonFilingController.java

@@ -91,7 +91,7 @@ public class TbPersonFilingController {
     public AjaxJson getList() {
         SoMap so = SoMap.getRequestSoMap();
         if (!StpUserUtil.isAdmin()) {
-            so.put("departmentId",StpUserUtil.getDeptId());
+            so.put("deptIdList",StpUserUtil.getDeptIdList());
         }
         List<TbPersonFiling> list = tbPersonFilingService.getList(so.startPage());
         return AjaxJson.getPageData(so.getDataCount(), list);

+ 1 - 3
business-system/monitor-system/src/main/java/com/pj/MonitorController.java

@@ -31,9 +31,7 @@ public class MonitorController {
     @RequestMapping("terminal")
     public AjaxJson monitorTerminal() {
         List<MonitorDTO> list = tbTerminalService.getMonitor();
-        if (!StpUserUtil.isAdmin()) {
-            list = list.stream().filter(monitorDTO -> StrUtil.equals(monitorDTO.getDepartmentId(), StpUserUtil.getDeptId() + "")).collect(Collectors.toList());
-        }
+
         return AjaxJson.getSuccessData(list);
     }
 }

+ 1 - 3
business-system/venues-system/src/main/java/com/pj/biz/TbTerminalController.java

@@ -89,9 +89,7 @@ public class TbTerminalController {
     @RequestMapping("getList")
     public AjaxJson getList() {
         SoMap so = SoMap.getRequestSoMap();
-        if (!StpUserUtil.isAdmin()){
-            so.put("departmentId",StpUserUtil.getDeptId());
-        }
+
         List<TbTerminal> list = tbTerminalService.getList(so.startPage());
         return AjaxJson.getPageData(so.getDataCount(), list);
     }

+ 0 - 9
business-system/venues-system/src/main/java/com/pj/biz/TbVenuesController.java

@@ -81,9 +81,6 @@ public class TbVenuesController {
     @RequestMapping("getList")
     public AjaxJson getList() {
         SoMap so = SoMap.getRequestSoMap();
-        if (!StpUserUtil.isAdmin()) {
-            so.put("departmentId",StpUserUtil.getDeptId());
-        }
         List<TbVenues> list = tbVenuesService.getList(so.startPage());
         return AjaxJson.getPageData(so.getDataCount(), list);
     }
@@ -91,9 +88,6 @@ public class TbVenuesController {
     @RequestMapping("getParentList")
     public AjaxJson getParentList(){
         SoMap so = SoMap.getRequestSoMap();
-        if (!StpUserUtil.isAdmin()) {
-            so.put("departmentId",StpUserUtil.getDeptId());
-        }
         so.put("pId",-1);
         List<TbVenues> list = tbVenuesService.getList(so);
         return AjaxJson.getSuccessData(list);
@@ -114,9 +108,6 @@ public class TbVenuesController {
     public AjaxJson getTree() {
         // 获取记录
         SoMap so = SoMap.getRequestSoMap();
-        if (!StpUserUtil.isAdmin()) {
-            so.put("departmentId",StpUserUtil.getDeptId());
-        }
         List<TbVenues> list = tbVenuesService.getList(so);
         // 转为tree结构,并返回
         List<SoMap> listMap = SoMap.getSoMapByList(list);

+ 1 - 3
sp-admin/src/main/java/com/pj/project4sp/admin/SpAdminController.java

@@ -161,9 +161,7 @@ public class SpAdminController {
 	@SaCheckPermission(AuthConst.ADMIN_LIST)
 	AjaxJson getList(){
 		SoMap so = SoMap.getRequestSoMap();
-		if (!StpUserUtil.isAdmin()) {
-			so.put("departmentId",StpUserUtil.getDeptId());
-		}
+
 		List<SpAdmin> list = spAdminMapper.getList(so.startPage());
 		return AjaxJson.getPageData(so.getDataCount(), list);
 	}

+ 7 - 1
sp-admin/src/main/java/com/pj/project4sp/admin4acc/SpAccAdminService.java

@@ -3,6 +3,7 @@ package com.pj.project4sp.admin4acc;
 
 import java.util.Date;
 import java.util.List;
+import java.util.stream.Collectors;
 
 import javax.annotation.Resource;
 import javax.servlet.http.HttpServletRequest;
@@ -50,6 +51,8 @@ public class SpAccAdminService {
 
     @Autowired
     SpAdminLoginMapper sysLoginLogMapper;
+    @Resource
+    private TbDeptService tbDeptService;
 
 
     /**
@@ -105,8 +108,11 @@ public class SpAccAdminService {
         StpUtil.login(admin.getId());
         String tokenValue = StpUtil.getTokenValue();
         successLogin(admin, tokenValue);
-        StpUserUtil.setDeptId(admin.getDepartmentId());
+        String departmentId = admin.getDepartmentId();
+        StpUserUtil.setDepartmentId(departmentId);
         StpUserUtil.setAdmin(admin.getNickname(), admin.getPhone());
+        List<TbDept> deptList = tbDeptService.findByDepartmentId(departmentId);
+        StpUserUtil.setDeptIdList(deptList.stream().map(TbDept::getId).collect(Collectors.toList()));
         // 组织返回参数
         SoMap map = new SoMap();
         map.put("admin", admin);

+ 22 - 13
sp-core/src/main/java/com/pj/current/netty/command/handler/impl/HealthlogHandler.java

@@ -109,7 +109,12 @@ public class HealthlogHandler implements IHandler {
             return;
         }
         CACHE_MAP.put(idCard, 1);
+        //设备
         String sn = params.getStr("sn");
+        TbTerminal tbTerminal = tbTerminalService.findBySN(sn);
+        Long channelId = tbTerminal.getChannelId();
+        //绑定场所的通道
+        TbVenues channel = tbVenuesService.getById(channelId);
         TbPersonFiling tbPersonFiling = tbPersonFilingService.findByIdCard(idCard);
         if (tbPersonFiling == null) {
             if (!SpCfgUtil.termianlFilling()) {
@@ -121,7 +126,12 @@ public class HealthlogHandler implements IHandler {
             }
             //增加人员信息
             Date now = new Date();
-            TbDept dept = tbDeptService.findTheDept(TbDept.AdminTypeEnum.TEMP_TYPE.getType());
+            List<TbDept>deptList=tbDeptService.findByVenuesId(tbTerminal.getVenuesId());
+            if (deptList.isEmpty()){
+                log.error("设备上传备案,无备案组织====");
+                return;
+            }
+            TbDept dept = deptList.get(0);
             boolean needJudge = TbDept.NeedJudgeEnum.MAN_JUDGE.getType().equals(dept.getNeedJudge());
             tbPersonFiling = new TbPersonFiling();
             tbPersonFiling.setPin(idCard).setIdCard(dto.getIdentity_number())
@@ -136,22 +146,23 @@ public class HealthlogHandler implements IHandler {
                 taskService.addTask(new DelayIsuued(RandomUtil.randomNumbers(11), 4000, tbPersonFiling.getId(), sn));
             }
         }
+        //备案组织
         Long deptId = tbPersonFiling.getDeptId();
         TbDept tbDept = tbDeptService.getById(deptId);
-        TbTerminal tbTerminal = tbTerminalService.findBySN(sn);
-        Long channelId = tbTerminal.getChannelId();
-        TbVenues channel = tbVenuesService.getById(channelId);
-
+        Boolean allowPass=dto.isAllow_through();
         //车辆道闸判断
         if (channel != null && TbVenues.TypeEnum.CAR_CHANNEL.getType().equals(channel.getType())) {
             String key = "result:" + channelId;
             String resultStr = RedisUtil.get(key);
             ResultDTO resultDTO = JSONUtil.toBean(resultStr, ResultDTO.class);
+            //备案的组织满足其一就可放行
             if (TbDept.PassTypeEnum.ONE.getType().equals(tbDept.getPassType())) {
                 List<TbGateTerminal> gateTerminals = tbGateTerminalService.findByChannelId(channelId);
                 // 找到入口的设备,开闸
-                gateTerminals.stream().filter(tbGateTerminal -> tbGateTerminal.getDirection() == 1)
-                        .forEach(tbGateTerminal -> openGate(tbGateTerminal.getId(), channelId));
+                if (allowPass){//上传的记录是可开闸
+                    gateTerminals.stream().filter(tbGateTerminal -> tbGateTerminal.getDirection() == 1)
+                            .forEach(tbGateTerminal -> openGate(tbGateTerminal.getId(), channelId));
+                }
                 if (resultDTO.getResult() != null && resultDTO.getResult() == 0) {
                     Long recordId = resultDTO.getRecordId();
                     TbCarVisitRecord tbCarVisitRecord = tbCarVisitRecordService.getById(recordId);
@@ -159,28 +170,26 @@ public class HealthlogHandler implements IHandler {
                             .setDriverContact(tbPersonFiling.getPhone()).setAllowPass(1);
                     tbCarVisitRecordService.updateById(tbCarVisitRecord);
                 }
-            } else if (resultDTO.getResult() != null && resultDTO.getResult() == 1) {
+            } else if (resultDTO.getResult() != null && resultDTO.getResult() == 1&&allowPass) {
                 openGate(resultDTO.getGateTerminalId(), channelId);
             }
         }
         TbPersonVisitRecord record = new TbPersonVisitRecord();
         if (channel != null) {
-            record.setDepartmentId(channel.getDepartmentId()).setVenuesId(channel.getPId());
+            record.setVenuesId(channel.getPId());
         }
         record.setDeptId(deptId).setType(TbPersonVisitRecord.TypeEnum.UPLOAD.getType())
                 .setVenues(tbTerminal.getVenuesName()).setChannel(tbTerminal.getChannelName())
+                .setDepartmentId(tbPersonFiling.getDepartmentId())
                 .setTerminalName(tbTerminal.getName()).setVisitDate(dto.getDate()).setCreateTime(new Date())
-                .setSn(sn).setUpdateTime(new Date()).setAllowPass(dto.isAllow_through()).setHealthStatus(dto.getHealth_status())
+                .setSn(sn).setUpdateTime(new Date()).setAllowPass(allowPass).setHealthStatus(dto.getHealth_status())
                 .setDirection(dto.getDirection()).setTemperature(dto.getTemperature()).setDeptName(tbDept.getName())
                 .setName(tbPersonFiling.getName()).setPhone(tbPersonFiling.getPhone()).setIdCard(tbPersonFiling.getIdCard());
         tbPersonVisitRecordService.saveOrUpdate(record);
         tbTerminal.setLastOnLine(DateUtil.now());
         tbTerminalService.updateById(tbTerminal);
-        log.info("回复健康记录上传:{}", OKMsg.ok());
         ctx.write(OKMsg.ok());
         ctx.flush();
-
-
         taskService.addTask(new ConvertBase64ToImage(RandomUtil.randomNumbers(8), 2000, record.getId(), dto.getPicture()));
         String alarm = SpCfgUtil.getAlarmConfig();
         if (Integer.parseInt(alarm) == 0) {

+ 20 - 16
sp-core/src/main/java/com/pj/current/satoken/StpUserUtil.java

@@ -36,12 +36,6 @@ public class StpUserUtil {
         return Long.valueOf(RedisUtil.get(key));
     }
 
-    public static void setDeptId(String deptId) {
-        String key = "dept:" + StpUtil.getLoginIdAsString();
-        if (StrUtil.isNotEmpty(deptId)) {
-            RedisUtil.set(key, deptId);
-        }
-    }
 
     public static void setDepartmentId(String departmentId) {
         String key = "department:" + StpUtil.getLoginIdAsString();
@@ -55,17 +49,8 @@ public class StpUserUtil {
         return RedisUtil.get(key);
     }
 
-    public static Long getDeptId() {
-        String key = "dept:" + StpUtil.getLoginIdAsString();
-        String deptId = RedisUtil.get(key);
-        return Long.valueOf(deptId);
-    }
-
-
     public static boolean isAdmin() {
-        String key = "dept:" + StpUtil.getLoginIdAsString();
-        String deptId = RedisUtil.get(key);
-        return StrUtil.equals(deptId, AuthConst.SUPER_DEPARTMENT_ID);
+        return StrUtil.equals(getDepartmentId(), AuthConst.SUPER_DEPARTMENT_ID);
     }
 
     /**
@@ -108,6 +93,24 @@ public class StpUserUtil {
     }
 
     /**
+     * 缓存可审核得备案组织
+     * @param deptIdList
+     */
+    public static void setDeptIdList(List<Long> deptIdList) {
+        String key = "departIdList:" + StpUtil.getLoginIdAsString();
+        RedisUtil.set(key, JSONUtil.toJsonStr(deptIdList));
+    }
+
+    /**
+     * 获取可审核的备案组织ID
+     * @return
+     */
+    public static List<Long>  getDeptIdList() {
+        String key = "departIdList:" + StpUtil.getLoginIdAsString();
+        String cache=RedisUtil.get(key);
+        return JSONUtil.toList(cache,Long.class);
+    }
+    /**
      * 账号类型标识
      */
     public static final String TYPE = "login";
@@ -1013,4 +1016,5 @@ public class StpUserUtil {
         stpLogic.kickout(loginId, device);
     }
 
+
 }

+ 1 - 2
sp-core/src/main/java/com/pj/project/sp_admin/SpAdminService.java

@@ -139,10 +139,9 @@ public class SpAdminService {
 
 
     private TbMiniUser createMiniUser(String key, String openid, String name) {
-        TbDept dept = tbDeptService.findTheDept(TbDept.AdminTypeEnum.TEMP_TYPE.getType());
         TbMiniUser tbMiniUser = new TbMiniUser();
         tbMiniUser.setCreateTime(new Date()).setSpAdminId(RandomUtil.randomLong(100000, 999999))
-                .setOpenid(openid).setDeptId(dept.getId() + "").setSuperAdmin(0).setDepartmentId("-1")
+                .setOpenid(openid).setSuperAdmin(0).setDepartmentId("-1")
                 .setPhone(key).setType(TbMiniUser.TypeEnum.TEMPORARY_TYPE.getType())
                 .setName(name).setUsername(key);
         tbMiniUserService.save(tbMiniUser);

+ 2 - 1
sp-core/src/main/java/com/pj/project/sys_dict/SysDict.java

@@ -43,12 +43,13 @@ public class SysDict extends Model<SysDict> implements Serializable {
 	/**
 	 *  父ID  
 	 */
-	private Integer pid;	
+	private Integer pid=0;
 
 	/**
 	 *  数据编码  
 	 */
 	private String dataCode;	
+	private String sysCode;
 
 	/**
 	 *  数据名称/值  

+ 1 - 0
sp-core/src/main/java/com/pj/project/sys_dict/SysDictMapper.xml

@@ -10,6 +10,7 @@
 		<resultMap id="model" type="com.pj.project.sys_dict.SysDict">
 				<result property="id" column="id" />
 				<result property="pid" column="pid" />
+				<result property="sysCode" column="sys_code" />
 				<result property="dataCode" column="data_code" />
 				<result property="dataValue" column="data_value" />
 				<result property="dataDesc" column="data_desc" />

+ 4 - 0
sp-core/src/main/java/com/pj/project/tb_car_black/TbCarBlack.java

@@ -73,21 +73,25 @@ public class TbCarBlack extends Model<TbCarBlack> implements Serializable {
 	/**
 	 * 创建时间 
 	 */
+	@TableField(fill = FieldFill.INSERT)
 	private Date createTime;
 
 	/**
 	 * 创建人 
 	 */
+	@TableField(fill = FieldFill.INSERT)
 	private String createBy;	
 
 	/**
 	 * 更新时间 
 	 */
+	@TableField(fill = FieldFill.UPDATE)
 	private Date updateTime;
 
 	/**
 	 * 更新人 
 	 */
+	@TableField(fill = FieldFill.UPDATE)
 	private String updateBy;
 	@TableField(exist = false)
 	private String deptName;

+ 0 - 13
sp-core/src/main/java/com/pj/project/tb_car_black/TbCarBlackService.java

@@ -34,9 +34,6 @@ public class TbCarBlackService extends ServiceImpl<TbCarBlackMapper, TbCarBlack>
      * 增
      */
     public void add(TbCarBlack t) {
-        Date now = new Date();
-        String loginId = StpUtil.getLoginIdAsString();
-        t.setCreateTime(now).setCreateBy(loginId).setUpdateBy(loginId).setUpdateTime(now);
         this.save(t);
     }
 
@@ -51,9 +48,6 @@ public class TbCarBlackService extends ServiceImpl<TbCarBlackMapper, TbCarBlack>
      * 改
      */
     public void update(TbCarBlack t) {
-        Date now = new Date();
-        String loginId = StpUtil.getLoginIdAsString();
-        t.setUpdateBy(loginId).setUpdateTime(now);
         this.updateById(t);
     }
 
@@ -72,13 +66,6 @@ public class TbCarBlackService extends ServiceImpl<TbCarBlackMapper, TbCarBlack>
     }
 
 
-    public List<TbCarBlack> findByCarNo(String carNo) {
-        QueryWrapper<TbCarBlack> ew = new QueryWrapper<>();
-        ew.eq("car_no", carNo.toUpperCase());
-        return list(ew);
-    }
-
-
     public TbCarBlack findByCarNo(String carNo, String time) {
         QueryWrapper<TbCarBlack> ew = new QueryWrapper<>();
         ew.eq("car_no", carNo.toUpperCase());

+ 6 - 0
sp-core/src/main/java/com/pj/project/tb_car_filing/TbCarFilingMapper.xml

@@ -41,6 +41,12 @@
 		<where>
 			<if test=' this.has("id") '> and id = #{id} </if>
 			<if test=' this.has("deptId") '> and dept_id = #{deptId} </if>
+			<if test=' this.has("deptIdList") '>
+				and dept_id in
+				<foreach collection="deptIdList" open="(" close=")" separator="," item="deptId">
+					#{deptId}
+				</foreach>
+			</if>
 			<if test=' this.has("carNo") '> and car_no  like concat('%',#{carNo} ,'%')</if>
 			<if test=' this.has("type") '> and type = #{type} </if>
 			<if test=' this.has("judgeState") '> and judge_state = #{judgeState} </if>

+ 38 - 31
sp-core/src/main/java/com/pj/project/tb_car_filing/TbCarFilingService.java

@@ -32,6 +32,7 @@ import com.pj.project.tb_venues.TbVenues;
 import com.pj.project.tb_venues.TbVenuesService;
 import com.pj.project4sp.spcfg.SpCfgUtil;
 import com.pj.project4sp.uploadfile.UploadConfig;
+import com.pj.utils.sg.AjaxError;
 import lombok.extern.slf4j.Slf4j;
 import org.springframework.beans.factory.annotation.Autowired;
 import org.springframework.stereotype.Service;
@@ -69,18 +70,26 @@ public class TbCarFilingService extends ServiceImpl<TbCarFilingMapper, TbCarFili
      */
     public void add(TbCarFiling t) {
         String carNo = t.getCarNo().toUpperCase();
+        if (StrUtil.isEmpty(carNo)) {
+            throw new BusinessException("请输入车牌号");
+        }
         String idCarNo = t.getDriverIdCard();
         Long deptId = t.getDeptId();
         if (deptId == null) {
             throw new BusinessException("请选择备案组织");
         }
         TbDept tbDept = tbDeptService.getById(deptId);
-        if (tbDept.getPassType().equals(TbDept.PassTypeEnum.BLOW.getType())){
+        if (tbDept.getPassType().equals(TbDept.PassTypeEnum.BLOW.getType())) {
             if (!IdcardUtil.isValidCard(idCarNo)) {
                 throw new BusinessException("身份证不正确");
             }
         }
-        t.setDeptName(tbDept.getName());
+        TbCarFiling check = findByCarNoAndIdCard(carNo, idCarNo);
+        if (check != null) {
+            throw new AjaxError("该司机已备案该车辆");
+        }
+        t.setDeptName(tbDept.getName()).setCarNo(carNo)
+                .setVenuesId(tbDept.getVenuesId());
         //原来是否录入过
         List<TbCarFiling> carFilingList = this.findByDriverIdCar(idCarNo);
         carFilingList.forEach(tbCarFiling -> {
@@ -88,13 +97,6 @@ public class TbCarFilingService extends ServiceImpl<TbCarFilingMapper, TbCarFili
                 throw new BusinessException("司机已备案该车辆");
             }
         });
-        TbCarFiling carNoCheckFiling = this.findByCarNo(carNo);
-        if (carNoCheckFiling != null) {
-            throw new BusinessException("车辆已备案");
-        }
-        t.setCarNo(carNo);
-        TbVenues tbVenues = tbVenuesService.getById(t.getVenuesId());
-        t.setDepartmentId(tbVenues.getDepartmentId());
         handlerDriver(t);
         this.save(t);
     }
@@ -106,7 +108,7 @@ public class TbCarFilingService extends ServiceImpl<TbCarFilingMapper, TbCarFili
      */
     private void handlerDriver(TbCarFiling tbCarFiling) {
         String idCarNo = tbCarFiling.getDriverIdCard();
-        if (StrUtil.isEmpty(idCarNo)||!IdcardUtil.isValidCard(idCarNo)){
+        if (StrUtil.isEmpty(idCarNo) || !IdcardUtil.isValidCard(idCarNo)) {
             return;
         }
         //人员是否备案
@@ -169,33 +171,41 @@ public class TbCarFilingService extends ServiceImpl<TbCarFilingMapper, TbCarFili
     }
 
     /**
+     * 根据车牌号和身份证查找记录
+     *
+     * @param carNo
+     * @param idCard
+     * @return
+     */
+    public TbCarFiling findByCarNoAndIdCard(String carNo, String idCard) {
+        QueryWrapper<TbCarFiling> ew = new QueryWrapper<>();
+        ew.lambda().eq(TbCarFiling::getCarNo, carNo.toUpperCase())
+                .eq(TbCarFiling::getDriverIdCard, idCard);
+        return getOne(ew);
+    }
+
+    /**
      * 改
      */
     public void update(TbCarFiling t) {
         String carNo = t.getCarNo().toUpperCase();
-        TbCarFiling carNoCheck = this.findByCarNo(carNo);
-        if (carNoCheck != null && t.getId().longValue() != carNoCheck.getId().longValue()) {
-            throw new BusinessException("车辆已备案");
-        }
+        String idCarNo = t.getDriverIdCard();
         TbCarFiling db = this.getById(t.getId());
+        TbCarFiling check = findByCarNoAndIdCard(carNo, idCarNo);
+        if (check != null&& !db.getId().equals(check.getId())) {
+            throw new AjaxError("该司机已备案该车辆");
+        }
         if (!t.getDeptId().equals(db.getDeptId())) {
             TbDept tbDept = tbDeptService.getById(t.getDeptId());
             t.setDeptName(tbDept.getName());
         }
-        TbVenues tbVenues = tbVenuesService.getById(t.getVenuesId());
-        t.setDepartmentId(tbVenues.getDepartmentId());
-        String idCarNo = t.getDriverIdCard();
+
         String oldIdCardNo = db.getDriverIdCard();
         //改了身份证或者人脸或者姓名
         if (!StrUtil.equals(idCarNo, oldIdCardNo)
                 || !StrUtil.equals(t.getDriverPhoto(), db.getDriverPhoto())
                 || !StrUtil.equals(t.getDriverName(), db.getDriverName())
         ) {
-            //原来是否录入过
-//            TbCarFiling checkFiling = this.findByDriverIdCar(idCarNo);
-//            if (checkFiling != null) {
-//                throw new BusinessException("司机已备案其他车辆");
-//            }
             //更改备案人信息
             TbPersonFiling tbPersonFiling = tbPersonFilingService.findByIdCard(oldIdCardNo);
             if (tbPersonFiling != null) {
@@ -209,8 +219,7 @@ public class TbCarFilingService extends ServiceImpl<TbCarFilingMapper, TbCarFili
             tbPersonFilingService.deleteTerminalWhilte(db.getDriverIdCard(), false);
             tbPersonFilingService.issued(idCarNo);
         }
-        t.setCarNo(t.getCarNo().toUpperCase());
-
+        t.setCarNo(carNo);
         this.updateById(t);
     }
 
@@ -229,13 +238,6 @@ public class TbCarFilingService extends ServiceImpl<TbCarFilingMapper, TbCarFili
     }
 
 
-    public TbCarFiling findByCarNo(String carNo) {
-        QueryWrapper<TbCarFiling> ew = new QueryWrapper<>();
-        ew.eq("car_no", carNo);
-        List<TbCarFiling> list = list(ew);
-        return list.isEmpty() ? null : list.get(0);
-    }
-
     /**
      * 审核
      *
@@ -259,4 +261,9 @@ public class TbCarFilingService extends ServiceImpl<TbCarFilingMapper, TbCarFili
     }
 
 
+    public List<TbCarFiling> findByCarNo(String carNo) {
+        QueryWrapper<TbCarFiling>ew=new QueryWrapper<>();
+        ew.lambda().eq(TbCarFiling::getCarNo,carNo);
+        return list(ew);
+    }
 }

+ 2 - 1
sp-core/src/main/java/com/pj/project/tb_car_visit_record/TbCarVisitRecordMapper.xml

@@ -33,8 +33,9 @@
 	<select id="getList" resultMap="model">
 		<include refid="select_sql"></include>
 		<where>
-						<if test=' this.has("id") '> and id = #{id} </if>
+			<if test=' this.has("id") '> and id = #{id} </if>
 			<if test=' this.has("channel") '> and channel = #{channel} </if>
+			<if test=' this.has("departmentId") '>and department_id = #{departmentId}</if>
 			<if test=' this.has("carNo") '> and car_no like concat('%',#{carNo},'%') </if>
 			<if test=' this.has("visitTime") '> and visit_time = #{visitTime} </if>
 			<if test=' this.has("direction") '> and direction = #{direction} </if>

+ 17 - 3
sp-core/src/main/java/com/pj/project/tb_car_visit_record/TbCarVisitRecordService.java

@@ -11,10 +11,13 @@ import cn.hutool.poi.excel.ExcelWriter;
 import com.baomidou.mybatisplus.extension.service.IService;
 import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
 import com.pj.current.config.SystemObject;
+import com.pj.project.tb_dept.TbDept;
+import com.pj.project.tb_dept.TbDeptService;
 import com.pj.project.tb_person_visit_record.TbPersonVisitRecord;
 import com.pj.project.tb_venues.TbVenues;
 import com.pj.project.tb_venues.TbVenuesService;
 import com.pj.project4sp.uploadfile.UploadConfig;
+import com.pj.utils.sg.AjaxError;
 import org.springframework.beans.factory.annotation.Autowired;
 import org.springframework.stereotype.Service;
 import org.springframework.transaction.annotation.Transactional;
@@ -41,15 +44,26 @@ public class TbCarVisitRecordService extends ServiceImpl<TbCarVisitRecordMapper,
 
     @Resource
     private UploadConfig uploadConfig;
+    @Resource
+    private TbDeptService tbDeptService;
 
     /**
      * 增
      */
     public void add(TbCarVisitRecord t) {
-        TbVenues tbVenues = tbVenuesService.getById(t.getChannelId());
+       Long deptId= t.getDeptId();
+       if (deptId==null){
+           throw new AjaxError("请选择组织");
+       }
+        if (t.getChannelId()==null){
+            throw new AjaxError("请选择通道");
+        }
+        TbDept tbDept=tbDeptService.getById(deptId);
+        TbVenues channel = tbVenuesService.getById(t.getChannelId());
         t.setRecordType(1).setCarNo(t.getCarNo().toUpperCase())
-                .setDepartmentId(tbVenues.getDepartmentId())
-                .setChannel(tbVenues.getName());
+                .setChannel(channel.getName()).setDeptName(tbDept.getName())
+                .setDepartmentId(tbDept.getDepartmentId());
+
         this.save(t);
     }
 

+ 0 - 18
sp-core/src/main/java/com/pj/project/tb_department/TbDepartment.java

@@ -50,25 +50,7 @@ public class TbDepartment extends Model<TbDepartment> implements Serializable {
 	 */
 	private String name;	
 
-	/**
-	 * 联系号码 
-	 */
-	private String phone;	
-
-	/**
-	 * 负责人 
-	 */
-	private String dutyPeople;	
 
-	/**
-	 * 地址id 
-	 */
-	private String addressIds;	
-
-	/**
-	 * 地址 
-	 */
-	private String addressStr;	
 
 	/**
 	 * 状态(0=否,1=是) 

+ 2 - 1
sp-core/src/main/java/com/pj/project/tb_department/TbDepartmentController.java

@@ -78,7 +78,8 @@ public class TbDepartmentController {
     public AjaxJson getList() {
         SoMap so = SoMap.getRequestSoMap();
         if (!StpUserUtil.isAdmin()){
-            so.put("id",StpUserUtil.getDeptId());
+
+
         }
         List<TbDepartment> list = tbDepartmentService.getList(so.startPage());
         return AjaxJson.getPageData(so.getDataCount(), list);

+ 2 - 18
sp-core/src/main/java/com/pj/project/tb_department/TbDepartmentMapper.xml

@@ -10,10 +10,6 @@
 		<resultMap id="model" type="com.pj.project.tb_department.TbDepartment">
 				<result property="id" column="id" />
 				<result property="name" column="name" />
-				<result property="phone" column="phone" />
-				<result property="dutyPeople" column="duty_people" />
-				<result property="addressIds" column="address_ids" />
-				<result property="addressStr" column="address_str" />
 				<result property="status" column="status" />
 				<result property="createTime" column="create_time" />
 				<result property="updateTime" column="update_time" />
@@ -35,30 +31,18 @@
 		<where>
 			<if test=' this.has("id") '> and id = #{id} </if>
 			<if test=' this.has("name") '> and name like concat('%',#{name} ,'%')</if>
-			<if test=' this.has("phone") '> and phone like concat('%',#{phone} ,'%') </if>
-			<if test=' this.has("dutyPeople") '> and duty_people =like concat('%',#{dutyPeople} ,'%') </if>
-			<if test=' this.has("addressIds") '>and address_ids = #{addressIds}</if>
-			<if test=' this.has("addressStr") '>and address_str = #{addressStr}</if>
 			<if test=' this.has("status") '> and status = #{status} </if>
-			<if test=' this.has("createTime") '> and create_time = #{createTime} </if>
-			<if test=' this.has("updateTime") '> and update_time = #{updateTime} </if>
-			<if test=' this.has("createBy") '> and create_by = #{createBy} </if>
-			<if test=' this.has("updateBy") '> and update_by = #{updateBy} </if>
 		</where>
 		order by
 		<choose>
-						<when test='sortType == 1'> id desc </when>
+			<when test='sortType == 1'> id desc </when>
 			<when test='sortType == 2'> name desc </when>
-			<when test='sortType == 3'> phone desc </when>
-			<when test='sortType == 4'> duty_people desc </when>
-			<when test='sortType == 5'> address_ids desc </when>
-			<when test='sortType == 6'> address_str desc </when>
 			<when test='sortType == 7'> status desc </when>
 			<when test='sortType == 8'> create_time desc </when>
 			<when test='sortType == 9'> update_time desc </when>
 			<when test='sortType == 10'> create_by desc </when>
 			<when test='sortType == 11'> update_by desc </when>
-			<otherwise> id desc </otherwise>
+			<otherwise> id asc </otherwise>
 		</choose>
 	</select>
 

+ 30 - 43
sp-core/src/main/java/com/pj/project/tb_dept/TbDept.java

@@ -46,68 +46,64 @@ public class TbDept extends Model<TbDept> implements Serializable {
 	 */
 	@TableId(type = IdType.AUTO)
 	private Long id;
-
 	/**
-	 * 名称 
+	 * 归属场所
 	 */
-	private String name;	
-
+	private Long venuesId;
 	/**
-	 * 人数 
+	 * 审核部门
 	 */
-	private Integer peopleNum=0;
-
+	private String departmentId;
 	/**
-	 * 描述 
+	 * 人数限制
 	 */
-	private String deptDesc;
+	private Long limitNum=0L;
 
 	/**
-	 * 负责人 
+	 * 名称 
 	 */
-	private String chargePerson;	
+	private String name;
 
 	/**
-	 * 联系号码 
+	 * 备注 
 	 */
-	private String contact;	
+	private String remark;
+	private Integer passType=1;
 
 	/**
-	 * 创建时间 
+	 * 是否自动审核
 	 */
+	private Integer needJudge=1;
+	/**
+	 * 创建时间
+	 */
+	@TableField(fill = FieldFill.INSERT)
 	private Date createTime;
 
 	/**
-	 * 创建人 
+	 * 更新时间
 	 */
-	private String createBy;	
+	@TableField(fill = FieldFill.UPDATE)
+	private Date updateTime;
 
 	/**
-	 * 更新时间 
+	 *
 	 */
-	private Date updateTime;
+	@TableField(fill = FieldFill.INSERT)
+	private String createBy;
 
 	/**
-	 * 更新人 
+	 *
 	 */
+	@TableField(fill = FieldFill.UPDATE)
 	private String updateBy;
 
 
+	@TableField(exist = false)
+	private String venuesName;
 
-	/**
-	 * 备注 
-	 */
-	private String remark;
-	private Integer passType=1;
-	/**
-	 * (0=临时,1=普通,2=管理组织)
-	 */
-	private Integer adminType=0;
-	/**
-	 * 是否自动审核
-	 */
-	private Integer needJudge=1;
-
+	@TableField(exist = false)
+	private String departmentName;
 
 
 	@Getter
@@ -119,16 +115,7 @@ public class TbDept extends Model<TbDept> implements Serializable {
 		private Integer type;
 		private String desc;
 	}
-	@Getter
-	@AllArgsConstructor
-	public static enum AdminTypeEnum{
-		TEMP_TYPE(0,"临时"),
-		NORMAL_TYPE(1,"普通"),
-		ADMIN_TYPE(2,"管理"),
-		;
-		private Integer type;
-		private String desc;
-	}
+
 	@Getter
 	@AllArgsConstructor
 	public static enum NeedJudgeEnum{

+ 3 - 0
sp-core/src/main/java/com/pj/project/tb_dept/TbDeptController.java

@@ -89,6 +89,9 @@ public class TbDeptController {
     @RequestMapping("getList")
     public AjaxJson getList() {
         SoMap so = SoMap.getRequestSoMap();
+        if (!StpUserUtil.isAdmin()){
+            so.put("departmentId",StpUserUtil.getDepartmentId());
+        }
         List<TbDept> list = tbDeptService.getList(so.startPage());
         return AjaxJson.getPageData(so.getDataCount(), list);
     }

+ 3 - 1
sp-core/src/main/java/com/pj/project/tb_dept/TbDeptMapper.xml

@@ -23,7 +23,8 @@
 
 	<!-- 公共查询sql片段 -->
 	<sql id="select_sql">
-		select *
+		select *,(select name from tb_venues where id=tb_dept.venues_id ) as venuesName,
+		(select name from tb_department where id=tb_dept.department_id) as departmentName
 		from tb_dept
 	</sql>
 
@@ -35,6 +36,7 @@
 		where id !=-1
 			<if test=' this.has("id") '> and id = #{id} </if>
 			<if test=' this.has("name") '> and name like concat('%', #{name}, '%') </if>
+			<if test=' this.has("departmentId") '> and department_id = #{departmentId} </if>
 			<if test=' this.has("peopleNum") '> and people_num = #{peopleNum} </if>
 			<if test=' this.has("desc") '> and desc = #{desc} </if>
 			<if test=' this.has("chargePerson") '> and charge_person = #{chargePerson} </if>

+ 16 - 14
sp-core/src/main/java/com/pj/project/tb_dept/TbDeptService.java

@@ -41,10 +41,6 @@ public class TbDeptService extends ServiceImpl<TbDeptMapper, TbDept> implements
      * 增
      */
     void add(TbDept t) {
-        Date now = new Date();
-        t.setCreateTime(now).setUpdateTime(now)
-                .setCreateBy(StpUtil.getLoginIdAsString())
-                .setUpdateBy(StpUtil.getLoginIdAsString());
         this.save(t);
     }
 
@@ -52,10 +48,6 @@ public class TbDeptService extends ServiceImpl<TbDeptMapper, TbDept> implements
      * 删
      */
     void delete(Long id) {
-       List<TbPersonFiling>list= tbPersonFilingService.findByDeptId(id);
-       if (!list.isEmpty()){
-            throw new AjaxError("部门有备案,不能删除");
-       }
         this.removeById(id);
     }
 
@@ -80,14 +72,18 @@ public class TbDeptService extends ServiceImpl<TbDeptMapper, TbDept> implements
         return tbDeptMapper.getList(so);
     }
 
-
-    public TbDept findTheDept(Integer adminType) {
-        QueryWrapper<TbDept> ew = new QueryWrapper<>();
-        ew.lambda().eq(TbDept::getAdminType, adminType);
-        List<TbDept> list = list(ew);
-        return list.isEmpty() ? null : list.get(0);
+    /**
+     * 根据场所ID查找
+     * @param venuesId
+     * @return
+     */
+    public List<TbDept>findByVenuesId(Long venuesId){
+        QueryWrapper<TbDept>ew=new QueryWrapper<>();
+        ew.lambda().eq(TbDept::getVenuesId,venuesId);
+        return list(ew);
     }
 
+
     /**
      * 根据名称查找
      * @param deptName
@@ -99,4 +95,10 @@ public class TbDeptService extends ServiceImpl<TbDeptMapper, TbDept> implements
         List<TbDept> list = list(ew);
         return list.isEmpty() ? null : list.get(0);
     }
+
+    public List<TbDept> findByDepartmentId(String departmentId) {
+        QueryWrapper<TbDept> ew = new QueryWrapper<>();
+        ew.lambda().eq(TbDept::getDepartmentId, departmentId);
+        return list(ew);
+    }
 }

+ 3 - 0
sp-core/src/main/java/com/pj/project/tb_gate_terminal/TbGateTerminal.java

@@ -107,6 +107,9 @@ public class TbGateTerminal extends Model<TbGateTerminal> implements Serializabl
 	@TableField(exist = false)
 	private String departmentName;
 
+	@TableField(exist = false)
+	private String venuesName;
+
 
 
 	

+ 2 - 1
sp-core/src/main/java/com/pj/project/tb_gate_terminal/TbGateTerminalMapper.xml

@@ -19,7 +19,8 @@
 	<!-- 公共查询sql片段 -->
 	<sql id="select_sql">
 		select *,(select name from tb_department where  id=tb_gate_terminal.department_id) as departmentName,
-		(select name from tb_venues where id=tb_gate_terminal.channel_id) as channelName
+		(select name from tb_venues where id=tb_gate_terminal.channel_id) as channelName,
+		(select name from tb_venues where id=tb_gate_terminal.venues_id) as venuesName
 		from tb_gate_terminal
 	</sql>
 

+ 38 - 25
sp-core/src/main/java/com/pj/project/tb_gate_terminal/TbGateTerminalService.java

@@ -6,6 +6,8 @@ import java.net.Socket;
 import java.time.LocalDateTime;
 import java.util.Date;
 import java.util.List;
+import java.util.Optional;
+import java.util.stream.Collectors;
 
 import cn.dev33.satoken.stp.StpUtil;
 import cn.hutool.cache.CacheUtil;
@@ -105,8 +107,7 @@ public class TbGateTerminalService extends ServiceImpl<TbGateTerminalMapper, TbG
         String sn = getSn(ip);
         //通道
         TbVenues channel = tbVenuesService.getById(channelId);
-        t.setSn(sn)
-                .setDepartmentId(channel.getDepartmentId());
+        t.setSn(sn);
         //场地
         t.setVenuesId(channel.getPId());
         this.save(t);
@@ -154,7 +155,7 @@ public class TbGateTerminalService extends ServiceImpl<TbGateTerminalMapper, TbG
             t.setSn(sn);
         }
         TbVenues channel = tbVenuesService.getById(t.getChannelId());
-        t.setDepartmentId(channel.getDepartmentId()).setVenuesId(channel.getPId());
+        t.setVenuesId(channel.getPId());
         this.updateById(t);
     }
 
@@ -315,11 +316,12 @@ public class TbGateTerminalService extends ServiceImpl<TbGateTerminalMapper, TbG
         TbVenues pVenues = tbVenuesService.getById(channel.getPId());
         TbCarVisitRecord tbCarVisitRecord = new TbCarVisitRecord();
         tbCarVisitRecord.setCarNo(carNo).setAllowPass(allowPass)
-                .setChannelId(tbGateTerminal.getVenuesId()).setDepartmentId(pVenues.getDepartmentId())
+                .setChannelId(tbGateTerminal.getVenuesId())
                 .setChannel(channel.getName()).setDirection(direction).setVenuesId(pVenues.getId())
                 .setVisitTime(now).setUpdateTime(now).setCreateTime(now).setRecordType(2);
-        TbCarFiling carFiling = tbCarFilingService.findByCarNo(carNo);
-        if (carFiling != null) {
+        List<TbCarFiling> carFilingList = tbCarFilingService.findByCarNo(carNo);
+        if (carFilingList.size() == 1) {
+            TbCarFiling carFiling = carFilingList.get(0);
             TbDept tbDept = tbDeptService.getById(carFiling.getDeptId());
             tbCarVisitRecord.setDriverName(carFiling.getDriverName()).setDeptId(carFiling.getDeptId()).setDeptName(tbDept.getName())
                     .setDriverIdCard(carFiling.getDriverIdCard()).setType(carFiling.getType())
@@ -340,12 +342,16 @@ public class TbGateTerminalService extends ServiceImpl<TbGateTerminalMapper, TbG
      */
     private void cacheResult(String carNo, String now, TbGateTerminal tbGateTerminal, Long recordId) {
         Long channelId = tbGateTerminal.getChannelId();
+        Long venuesId = tbGateTerminal.getVenuesId();
         TbCarBlack tbCarBlack = tbCarBlackService.findByCarNo(carNo, now);
         String key = "result:" + channelId;
         //是否在黑名单上
         Long terminalId = tbGateTerminal.getId();
         ResultDTO dto = new ResultDTO(recordId, terminalId, 0);
-        if (tbCarBlack != null) {
+        long nowTime = new Date().getTime();
+        if (tbCarBlack != null
+                &&nowTime<=tbCarBlack.getEndTime().getTime()
+                &&nowTime>=tbCarBlack.getStartTime().getTime()) {
             RedisUtil.set(key, JSONUtil.toJsonStr(dto));
             log.error("黑名单车辆:{}", carNo);
             return;
@@ -356,34 +362,40 @@ public class TbGateTerminalService extends ServiceImpl<TbGateTerminalMapper, TbG
             log.error("防疫策略不开放:{}", carNo);
             return;
         }
-        //入口场所
-        TbVenues tbVenues = tbVenuesService.getById(channel.getPId());
-        TbCarFiling tbCarFiling = tbCarFilingService.findByCarNo(carNo);
+
+        List<TbCarFiling> carFilingList = tbCarFilingService.findByCarNo(carNo);
         //是否备案
-        if (tbCarFiling == null) {
+        if (carFilingList.isEmpty()) {
             RedisUtil.set(key, JSONUtil.toJsonStr(dto));
             log.error("车辆未备案:{}", carNo);
             return;
         }
+        //设备所在场所
+        TbVenues terminalVenues = tbVenuesService.getById(venuesId);
+        //找出备案等级比之高的场所
+        List<Long> venuesIdList = carFilingList.stream().map(TbCarFiling::getVenuesId).collect(Collectors.toList());
         //备案的场所
-        TbVenues filingTbVenues=tbVenuesService.getById(tbCarFiling.getVenuesId());
+        List<TbVenues> venuesList = tbVenuesService.listByIds(venuesIdList);
+        Optional<TbVenues> optionalTbVenues = venuesList.stream().filter(venues -> venues.getLevel() <= terminalVenues.getLevel()).findAny();
         //备案场所的等级低于入场的场所===>不给通行
-        if (filingTbVenues.getLevel()>tbVenues.getLevel()){
+        if (!optionalTbVenues.isPresent()) {
             RedisUtil.set(key, JSONUtil.toJsonStr(dto));
             log.error("备案场所等级不足,无法进入:{}", carNo);
             return;
         }
-
-        //备案车,如果属于的组织只需要满足一个条件的直接放行
-        Long deptId = tbCarFiling.getDeptId();
-        TbDept tbDept = tbDeptService.getById(deptId);
-        if (TbDept.PassTypeEnum.ONE.getType().equals(tbDept.getPassType())) {
-            log.error("组织满足条件二,直接放行:{}", carNo);
-            try {
-                open(terminalId);
-                tbCarVisitRecordService.updatePass(recordId);
-            } catch (Exception e) {
-                log.error("开闸失败:{}", e.getMessage());
+        for (TbCarFiling tbCarFiling : carFilingList) {//备案车,如果属于的组织只需要满足一个条件的直接放行
+            Long deptId = tbCarFiling.getDeptId();
+            TbDept tbDept = tbDeptService.getById(deptId);
+            if (TbDept.PassTypeEnum.ONE.getType().equals(tbDept.getPassType())) {
+                log.error("组织满足条件二,直接放行:{}", carNo);
+                try {
+                    open(terminalId);
+                    tbCarVisitRecordService.updatePass(recordId);
+                    //停止循环下发命令
+                    break;
+                } catch (Exception e) {
+                    log.error("开闸失败:{}", e.getMessage());
+                }
             }
         }
         dto = new ResultDTO(recordId, terminalId, 1);
@@ -392,12 +404,13 @@ public class TbGateTerminalService extends ServiceImpl<TbGateTerminalMapper, TbG
 
     /**
      * 通道的道闸
+     *
      * @param channelId
      * @return
      */
     public List<TbGateTerminal> findByChannelId(Long channelId) {
         QueryWrapper<TbGateTerminal> ew = new QueryWrapper<>();
-        ew.lambda().eq(TbGateTerminal::getChannelId,channelId);
+        ew.lambda().eq(TbGateTerminal::getChannelId, channelId);
         return list(ew);
     }
 }

+ 3 - 0
sp-core/src/main/java/com/pj/project/tb_gate_terminal/bo/ResultDTO.java

@@ -14,6 +14,9 @@ import java.io.Serializable;
 public class ResultDTO implements Serializable {
     private Long recordId;
     private Long gateTerminalId;
+    /**
+     * 1=放行 0=不放行
+     */
     private Integer result;
 
 }

+ 0 - 2
sp-core/src/main/java/com/pj/project/tb_mini_user/TbMiniUserService.java

@@ -103,8 +103,6 @@ public class TbMiniUserService extends ServiceImpl<TbMiniUserMapper, TbMiniUser>
         StpUserUtil.setAdmin(tbMiniUser.getName(), tbMiniUser.getPhone());
         StpUserUtil.setMiniUserId(tbMiniUser.getId());
         StpUserUtil.setMiniUserType(tbMiniUser.getType());
-        StpUserUtil.setDeptId(tbMiniUser.getDeptId());
-        StpUserUtil.setDepartmentId(tbMiniUser.getDepartmentId());
         return AjaxJson.getSuccessData(tbMiniUser);
     }
 

+ 4 - 0
sp-core/src/main/java/com/pj/project/tb_person_black/TbPersonBlack.java

@@ -84,21 +84,25 @@ public class TbPersonBlack extends Model<TbPersonBlack> implements Serializable
 	/**
 	 * 创建时间 
 	 */
+@TableField(fill = FieldFill.INSERT)
 	private Date createTime;
 
 	/**
 	 * 创建人 
 	 */
+	@TableField(fill = FieldFill.INSERT)
 	private String createBy;	
 
 	/**
 	 * 更新时间 
 	 */
+	@TableField(fill = FieldFill.INSERT)
 	private Date updateTime;
 
 	/**
 	 * 更新人 
 	 */
+	@TableField(fill = FieldFill.INSERT)
 	private String updateBy;
 	@TableField(exist = false)
 	private String deptName;

+ 12 - 21
sp-core/src/main/java/com/pj/project/tb_person_black/TbPersonBlackService.java

@@ -62,10 +62,6 @@ public class TbPersonBlackService extends ServiceImpl<TbPersonBlackMapper, TbPer
         if (db != null) {
             throw new BusinessException("人员已经存在");
         }
-
-        Date now = new Date();
-        String loginId = StpUtil.getLoginIdAsString();
-        t.setCreateTime(now).setCreateBy(loginId).setUpdateBy(loginId).setUpdateTime(now);
         this.save(t);
         handlerIssued(t);
     }
@@ -75,7 +71,6 @@ public class TbPersonBlackService extends ServiceImpl<TbPersonBlackMapper, TbPer
         LocalDateTime endTime = t.getEndTime().toInstant().atZone(ZoneId.systemDefault()).toLocalDateTime();
         LocalDateTime now = LocalDateTime.now();
         if (startTime.isBefore(now) && endTime.isAfter(now)) {
-
             issued(t);
         }
         if (now.isAfter(endTime)) {
@@ -103,14 +98,10 @@ public class TbPersonBlackService extends ServiceImpl<TbPersonBlackMapper, TbPer
         if (idCardDb != null && !idCardDb.getId().equals(t.getId())) {
             throw new BusinessException("人员已存在");
         }
-        Date now = new Date();
-        String loginId = StpUtil.getLoginIdAsString();
-        t.setUpdateBy(loginId).setUpdateTime(now);
         TbPersonBlack db = this.getById(t.getId());
         //改了身份证或者名字,部门,要把旧的人员信息清除,下发新的
         if (!StrUtil.equals(t.getIdCard(), db.getIdCard())
                 || !StrUtil.equals(t.getName(), db.getName())
-                || !t.getDeptId().equals(db.getDeptId())
         ) {
             deleteTerminalBlack(db);
             issued(t);
@@ -222,19 +213,7 @@ public class TbPersonBlackService extends ServiceImpl<TbPersonBlackMapper, TbPer
         return getOne(ew);
     }
 
-    public List<TbPersonBlack> finRecordStartTimeInTimes(String bTime, String eTime) {
-        QueryWrapper<TbPersonBlack> ew = new QueryWrapper<>();
-        ew.ge("date_format(start_time,'%Y-%m-%d %h:%s')", bTime)
-                .le("date_format(start_time,'%Y-%m-%d %h:%s')", eTime);
-        return list(ew);
-    }
 
-    public List<TbPersonBlack> finRecordEndTimeInTimes(String bTime, String eTime) {
-        QueryWrapper<TbPersonBlack> ew = new QueryWrapper<>();
-        ew.ge("date_format(end_time,'%Y-%m-%d %H:%i')", bTime)
-                .le("date_format(end_time,'%Y-%m-%d %H:%i')", eTime);
-        return list(ew);
-    }
 
     public TbPersonBlack findByIdCardAndTime(String idCard, String now) {
         QueryWrapper<TbPersonBlack> ew = new QueryWrapper<>();
@@ -243,4 +222,16 @@ public class TbPersonBlackService extends ServiceImpl<TbPersonBlackMapper, TbPer
                 .le("date_format(start_time,'%Y-%m-%d %H:%i:%s')", now);
         return getOne(ew);
     }
+
+    public List<TbPersonBlack> findStartTimeEqTime(String time) {
+        QueryWrapper<TbPersonBlack> ew = new QueryWrapper<>();
+        ew.eq("date_format(start_time,'%Y-%m-%d %H:%i')", time);
+        return list(ew);
+    }
+
+    public List<TbPersonBlack> findEndTimeEqTime(String time) {
+        QueryWrapper<TbPersonBlack> ew = new QueryWrapper<>();
+        ew.eq("date_format(end_time,'%Y-%m-%d %H:%i')", time);
+        return list(ew);
+    }
 }

+ 11 - 8
sp-core/src/main/java/com/pj/project/tb_person_black/task/PersonBlackTask.java

@@ -5,6 +5,7 @@ import com.pj.project.tb_person_black.TbPersonBlackService;
 import lombok.Data;
 import lombok.experimental.Accessors;
 import org.springframework.scheduling.annotation.Scheduled;
+import org.springframework.stereotype.Component;
 
 import javax.annotation.Resource;
 import java.io.Serializable;
@@ -14,23 +15,25 @@ import java.util.List;
 
 @Data
 @Accessors(chain = true)
+@Component
 public class PersonBlackTask implements Serializable {
 
     @Resource
     private TbPersonBlackService tbPersonBlackService;
 
-    @Scheduled(fixedRate = 45000)
+    @Scheduled(cron = "10 * * * * ?")
     public void task() {
-        //提前5分钟下发黑名单
-        DateTimeFormatter formatter = DateTimeFormatter.ofPattern("yyyy-MM-dd hh:mm");
-        LocalDateTime fiveMinutes = LocalDateTime.now().minusMinutes(1);
-        LocalDateTime sixMinutes = fiveMinutes.minusMinutes(1);
-        List<TbPersonBlack> personBlacks = tbPersonBlackService.finRecordStartTimeInTimes(sixMinutes.format(formatter), fiveMinutes.format(formatter));
+        //提前1分钟下发黑名单
+        DateTimeFormatter formatter = DateTimeFormatter.ofPattern("yyyy-MM-dd HH:mm");
+        LocalDateTime now=LocalDateTime.now();
+        LocalDateTime oneMinutesAfter =now.plusMinutes(1);
+        LocalDateTime oneMinutesBefore =now.minusMinutes(1);
+        List<TbPersonBlack> personBlacks = tbPersonBlackService.findStartTimeEqTime(oneMinutesAfter.format(formatter));
         personBlacks.forEach(tbPersonBlack -> {
             tbPersonBlackService.issued(tbPersonBlack);
         });
-        //5分钟之后删除
-        List<TbPersonBlack> deleteList = tbPersonBlackService.finRecordEndTimeInTimes(sixMinutes.format(formatter), fiveMinutes.format(formatter));
+        //1分钟之后删除
+        List<TbPersonBlack> deleteList = tbPersonBlackService.findEndTimeEqTime(oneMinutesBefore.format(formatter));
         deleteList.forEach(tbPersonBlack -> tbPersonBlackService.deleteTerminalBlack(tbPersonBlack));
     }
 }

+ 1 - 3
sp-core/src/main/java/com/pj/project/tb_person_filing/ImportPersonListener.java

@@ -44,8 +44,6 @@ public class ImportPersonListener extends AnalysisEventListener<ImportPersonBO>
 
     @Override
     public void doAfterAllAnalysed(AnalysisContext analysisContext) {
-        int index = 1;
-
         list.stream()
                 .collect(Collectors.groupingBy(ImportPersonBO::getDeptName))
                 .forEach((deptName, deptList) -> {
@@ -81,7 +79,7 @@ public class ImportPersonListener extends AnalysisEventListener<ImportPersonBO>
                                     }
                                     tbPersonFiling.setType(importPersonBO.getType().equals("内部") ? 2 : 1).setName(name)
                                             .setPhone(phone).setPin(idCard).setIdCard(idCard).setDeptId(tbDept.getId())
-                                            .setDeptName(tbDept.getName()).setDepartmentId(tbVenues.getDepartmentId()).setVenuesId(tbVenues.getId());
+                                            .setDeptName(tbDept.getName()).setVenuesId(tbVenues.getId());
                                     if (autoJudge) {
                                         tbPersonFiling.setJudgeState(1)
                                                 .setJudgeTime(new Date())

+ 7 - 3
sp-core/src/main/java/com/pj/project/tb_person_filing/TbPersonFilingMapper.xml

@@ -39,12 +39,16 @@
         <where>
             <if test=' this.has("id") '>and id = #{id}</if>
             <if test=' this.has("deptId") '>and dept_id = #{deptId}</if>
-            <if test=' this.has("departmentId")  '>and department_id = #{departmentId} </if>
+            <if test=' this.has("deptIdList") '>
+            and dept_id in
+            <foreach collection="deptIdList" open="(" close=")" separator="," item="deptId">
+                #{deptId}
+            </foreach>
+            </if>
             <if test=' this.has("judgeState") '>and judge_state = #{judgeState}</if>
-
             <if test=' this.has("name") '>and name like concat('%',#{name},'%')</if>
             <if test=' this.has("type") '>and type = #{type}</if>
-            <if test=' this.has("idCard") '>and id_card = #{idCard}</if>
+            <if test=' this.has("idCard") '>and id_card like concat('%',#{idCard},'%')</if>
             <if test=' this.has("visitReason") '>and visit_reason = #{visitReason}</if>
             <if test=' this.has("preComeTime") '>and pre_come_time = #{preComeTime}</if>
             <if test=' this.has("preLeaveTime") '>and pre_leave_time = #{preLeaveTime}</if>

+ 21 - 17
sp-core/src/main/java/com/pj/project/tb_person_filing/TbPersonFilingService.java

@@ -111,12 +111,16 @@ public class TbPersonFilingService extends ServiceImpl<TbPersonFilingMapper, TbP
             throw new BusinessException("人员已存在");
         }
         t.setPin(idCard);
+        Long deptId = t.getDeptId();
+        if (deptId == null) {
+            throw new BusinessException("请选择备案组织");
+        }
         TbDept tbDept = tbDeptService.getById(t.getDeptId());
-        if (tbDept != null && TbDept.NeedJudgeEnum.AUTO_JUDGE.getType().equals(tbDept.getNeedJudge())) {
+        if (TbDept.NeedJudgeEnum.AUTO_JUDGE.getType().equals(tbDept.getNeedJudge())) {
             t.setJudgeState(1).setJudgeTime(new Date()).setJudgeBy("系统自动审核");
         }
-        TbVenues tbVenues = tbVenuesService.getById(t.getVenuesId());
-        t.setDepartmentId(tbVenues.getDepartmentId());
+        t.setVenuesId(tbDept.getVenuesId())
+                .setDepartmentId(tbDept.getDepartmentId());
         this.save(t);
         issued(t);
     }
@@ -151,22 +155,28 @@ public class TbPersonFilingService extends ServiceImpl<TbPersonFilingMapper, TbP
         if (idCardDb != null && !idCardDb.getId().equals(t.getId())) {
             throw new BusinessException("人员已存在");
         }
+        Long deptId = t.getDeptId();
+        if (deptId == null) {
+            throw new BusinessException("请选择备案组织");
+        }
+        TbDept tbDept = tbDeptService.getById(t.getDeptId());
         TbPersonFiling db = this.getById(t.getId());
-        //改了身份证或者名字,部门,要把旧的人员信息清除,下发新的
+        // 改了备案组织、人脸、姓名、身份证都要重新下发
         if (!StrUtil.equals(t.getIdCard(), db.getIdCard())
-                || !StrUtil.equals(t.getName(), db.getName())) {
+                || !StrUtil.equals(t.getName(), db.getName())
+                || !db.getDeptId().equals(t.getDeptId())) {
             //删除旧的
             deleteTerminalWhilte(db.getIdCard(), false);
             //下发新的
             issued(t);
         }
+        t.setDepartmentId(tbDept.getDepartmentId()).setVenuesId(tbDept.getVenuesId());
         //重新上传了人脸
         if (!StrUtil.equals(t.getPhoto(), db.getPhoto())) {
             //下发新的
             issued(t);
         }
-        TbVenues tbVenues = tbVenuesService.getById(t.getVenuesId());
-        t.setDepartmentId(tbVenues.getDepartmentId());
+
         this.updateById(t);
     }
 
@@ -209,7 +219,7 @@ public class TbPersonFilingService extends ServiceImpl<TbPersonFilingMapper, TbP
         //备案场所
         Long venuesId = filing.getVenuesId();
         TbVenues tbVenues = tbVenuesService.getById(venuesId);
-        if (tbVenues==null){
+        if (tbVenues == null) {
             return;
         }
         //下发到等级比自己低或者同等级的场所设备
@@ -489,15 +499,9 @@ public class TbPersonFilingService extends ServiceImpl<TbPersonFilingMapper, TbP
      */
     public void isuuedList(List<TbPersonFiling> list) {
         list.stream().collect(Collectors.groupingBy(TbPersonFiling::getVenuesId))
-                .forEach((venuesId, venuesList) -> {
-                    List<TbTerminal> tbTerminalList = tbTerminalService.findByVenuesId(venuesId);
-                    tbTerminalList.stream().parallel().forEach(tbTerminal -> {
-                        list.forEach(tbPersonFiling -> {
-                            JSONObject params = builderParams(tbPersonFiling);
-                            tbTerminalService.setCommand(CommandType.ISSUED_USER_COMMAND.getFuncId(), params, tbTerminal);
-                        });
-                        tbTerminalService.startHeartCommand(tbTerminal.getSn());
-                    });
+                .forEach((venuesId, venuesFillingList) -> {
+                    TbVenues tbVenues = tbVenuesService.getById(venuesId);
+                    issued(tbVenues, venuesFillingList);
                 });
     }
 

+ 3 - 3
sp-core/src/main/java/com/pj/project/tb_person_visit_record/TbPersonVisitRecord.java

@@ -73,7 +73,6 @@ public class TbPersonVisitRecord extends Model<TbPersonVisitRecord> implements S
     private Long deptId;
 
 
-
     /**
      * 姓名
      */
@@ -155,6 +154,7 @@ public class TbPersonVisitRecord extends Model<TbPersonVisitRecord> implements S
 
     @TableField(exist = false)
     private String venuesName;
+
     @Getter
     @AllArgsConstructor
     public static enum TypeEnum {
@@ -188,8 +188,8 @@ public class TbPersonVisitRecord extends Model<TbPersonVisitRecord> implements S
 
 
     public String getIdCadStr() {
-        String str = IdcardUtil.getBirthByIdCard(idCard);
-        if (StrUtil.isNotEmpty(str)) {
+        if (StrUtil.isNotEmpty(idCard)) {
+            String str = IdcardUtil.getBirthByIdCard(idCard);
             return idCard.replace(str, "********");
         }
         return idCard;

+ 1 - 0
sp-core/src/main/java/com/pj/project/tb_person_visit_record/TbPersonVisitRecordMapper.xml

@@ -17,6 +17,7 @@
         <where>
             <if test=' this.has("id") '>and id = #{id}</if>
             <if test=' this.has("deptId") '>and dept_id = #{deptId}</if>
+            <if test=' this.has("departmentId") '>and department_id = #{departmentId}</if>
             <if test=' this.has("direction") '>and direction = #{direction}</if>
             <if test=' this.has("deptName") '>and dept_name = #{deptName}</if>
             <if test=' this.has("name") '>and name like concat('%',#{name},'%')</if>

+ 11 - 6
sp-core/src/main/java/com/pj/project/tb_person_visit_record/TbPersonVisitRecordService.java

@@ -25,6 +25,8 @@ import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
 import com.pj.current.config.SystemObject;
 import com.pj.current.global.BusinessException;
 import com.pj.current.satoken.StpUserUtil;
+import com.pj.project.tb_dept.TbDept;
+import com.pj.project.tb_dept.TbDeptService;
 import com.pj.project.tb_venues.TbVenues;
 import com.pj.project.tb_venues.TbVenuesService;
 import com.pj.project4sp.uploadfile.UploadConfig;
@@ -55,6 +57,8 @@ public class TbPersonVisitRecordService extends ServiceImpl<TbPersonVisitRecordM
     @Resource
     @Lazy
     private TbVenuesService tbVenuesService;
+    @Resource
+    private TbDeptService tbDeptService;
 
 
     /**
@@ -75,14 +79,15 @@ public class TbPersonVisitRecordService extends ServiceImpl<TbPersonVisitRecordM
     }
 
     private void handler(VisitAddBO t, Integer direction, String channelId) {
-        Date now = new Date();
         TbPersonVisitRecord record = new TbPersonVisitRecord();
-        record.setType(TbPersonVisitRecord.TypeEnum.ADD.getType())
-                .setCreateTime(now).setUpdateTime(now).setDirection(direction);
+        record.setType(TbPersonVisitRecord.TypeEnum.ADD.getType()).setDirection(direction);
         BeanUtil.copyProperties(t, record);
-        TbVenues tbVenues = tbVenuesService.getById(channelId);
-        record.setChannel(channelId).setVenues(tbVenues.getName())
-                .setVenuesId(tbVenues.getId()).setDepartmentId(tbVenues.getDepartmentId());
+        TbDept tbDept=tbDeptService.getById(t.getDeptId());
+        TbVenues channel = tbVenuesService.getById(channelId);
+        TbVenues tbVenues=tbVenuesService.getById(channel.getPId());
+        record.setChannel(channel.getName()).setVenues(tbVenues.getName())
+                .setVenuesId(tbVenues.getId()).setDeptId(tbDept.getId()).setDeptName(tbDept.getName())
+        .setDepartmentId(tbDept.getDepartmentId());
         if (direction.equals(TbPersonVisitRecord.DirectionEnum.IN.getDirection())) {
             record.setVisitDate(t.getInTime())
                     .setTemperature(t.getInTemperature());

+ 1 - 0
sp-core/src/main/java/com/pj/project/tb_person_visit_record/VisitAddBO.java

@@ -18,6 +18,7 @@ public class VisitAddBO {
     private String name;
     private String phone;
 
+    private Long deptId;
 
     /**
      * 身份证

+ 0 - 2
sp-core/src/main/java/com/pj/project/tb_terminal/TbTerminalMapper.xml

@@ -79,7 +79,6 @@
 		SELECT
 			NAME,
 			ip_address AS ip,
-			department_id,
 			direction,
 			state,
 			channel_name,
@@ -91,7 +90,6 @@
 			NAME,
 			ip,
 			direction,
-			department_id,
 			state,
 			( SELECT `name` FROM tb_venues WHERE id = tb_gate_terminal.venues_id ) AS channel_name,
 			last_online_time,

+ 11 - 5
sp-core/src/main/java/com/pj/project/tb_terminal/TbTerminalService.java

@@ -102,10 +102,10 @@ public class TbTerminalService extends ServiceImpl<TbTerminalMapper, TbTerminal>
      */
     public void update(TbTerminal t) {
         Long channelId = t.getChannelId();
-        TbVenues tbVenues = tbVenuesService.getById(channelId);
-        TbVenues parentVenues = tbVenuesService.getById(tbVenues.getPId());
-        t.setChannelName(tbVenues.getName()).setDepartmentId(tbVenues.getDepartmentId())
-                .setVenuesId(tbVenues.getPId()).setVenuesName(parentVenues.getName());
+        TbVenues channel = tbVenuesService.getById(channelId);
+        TbVenues parentVenues = tbVenuesService.getById(channel.getPId());
+        t.setChannelName(channel.getName())
+                .setVenuesId(channel.getPId()).setVenuesName(parentVenues.getName());
         this.updateById(t);
     }
 
@@ -360,7 +360,13 @@ public class TbTerminalService extends ServiceImpl<TbTerminalMapper, TbTerminal>
         TbPersonFiling tbPersonFiling = tbPersonFilingService.findByIdCard(idCard);
         if (tbPersonFiling == null) {
             if (SpCfgUtil.termianlFilling()) {
-                TbDept dept = tbDeptService.findTheDept(TbDept.AdminTypeEnum.TEMP_TYPE.getType());
+                TbTerminal tbTerminal = this.findBySN(checkBO.getSn());
+                List<TbDept>deptList=tbDeptService.findByVenuesId(tbTerminal.getVenuesId());
+                if (deptList.isEmpty()){
+                    log.info("返回信息:{},{}", "设备未绑定场所", JSONUtil.toJsonStr(checkDataDTO));
+                    return AjaxJson.getSuccess(checkBO.getName() + "设备未绑定场所", checkDataDTO);
+                }
+                TbDept dept = deptList.get(0);
                 boolean needJudge = TbDept.NeedJudgeEnum.MAN_JUDGE.getType().equals(dept.getNeedJudge());
                 if (needJudge) {
                     log.info("返回信息:{},{}", "备案未审核", JSONUtil.toJsonStr(checkDataDTO));

+ 0 - 1
sp-core/src/main/java/com/pj/project/tb_terminal/bo/MonitorDTO.java

@@ -8,7 +8,6 @@ import java.io.Serializable;
 @Accessors(chain = true)
 public class MonitorDTO implements Serializable {
     private String name;
-    private String departmentId;
     private String ip;
     private int direction;
     private String state;

+ 0 - 1
sp-core/src/main/java/com/pj/project/tb_venues/TbVenues.java

@@ -50,7 +50,6 @@ public class TbVenues extends Model<TbVenues> implements Serializable {
     private Long id;
 
 
-    private String departmentId;
     private Integer level;
 
 

+ 2 - 2
sp-start/src/main/resources/application-dev.yml

@@ -47,8 +47,8 @@ spring:
     myconfig:
         # 本项目部署到的服务器域名(文件上传等等模块  要用到)
         domain: http://127.0.0.1:8099/pro
-        ip: 192.168.3.27
-        net-ip: 192.168.3.27
+        ip: 192.168.88.119
+        net-ip: 192.168.88.119
         heart-port: 9999
         command-port: 8888
         command-prefix: "command:"