Browse Source

部门和人员的发送在同一批次

yq 3 năm trước cách đây
mục cha
commit
071ebe9ae0

+ 10 - 6
src/main/java/com/usky/dxtop/service/impl/DeptServiceImpl.java

@@ -63,12 +63,16 @@ public class DeptServiceImpl extends ServiceImpl<DeptMapper, Dept> implements De
         List<Dept> returnList = new ArrayList<>();
         List<String> tempList = depts.stream().map(Dept::getId).collect(Collectors.toList());
         for (Dept dept:depts) {
-            // 如果是顶级节点, 遍历该父节点的所有子节点
-            if (!tempList.contains(dept.getPid()))
-            {
-                deptSendMessage(dept,depts);
-                recursionFn(depts, dept);
-                returnList.add(dept);
+            try {
+                // 如果是顶级节点, 遍历该父节点的所有子节点
+                if (!tempList.contains(dept.getPid()))
+                {
+                    deptSendMessage(dept,depts);
+                    recursionFn(depts, dept);
+                    returnList.add(dept);
+                }
+            }catch (Exception e){
+                log.error("同步部门异常:"+e.getMessage());
             }
         }
         if (returnList.isEmpty())

+ 38 - 30
src/main/java/com/usky/dxtop/service/job/SmJob.java

@@ -65,31 +65,35 @@ public class SmJob {
         common(SmApi.PERSON_URL,treeMap,staffList -> {
             List<Staff> list = staffList.toJavaList(Staff.class);
             list.forEach(date -> {
-                LambdaQueryWrapper<Staff> queryWrapper = Wrappers.lambdaQuery();
-                queryWrapper.eq(Staff::getId,date.getId());
-                Staff staff = staffService.getOne(queryWrapper);
-                //获取部门信息
-                Map deptMap = JSON.parseObject(date.getDept(), Map.class);
-                LambdaQueryWrapper<Dept> deptLambdaQueryWrapper = Wrappers.lambdaQuery();
-                deptLambdaQueryWrapper.eq(Dept::getId,deptMap.get("id").toString());
-                Dept dept = deptService.getOne(deptLambdaQueryWrapper);
-                int type;
-                if (null == staff){
-                    type = 1;
-                    staffService.save(date);
-                }else {
-                    type = 2;
-                    date.setSId(staff.getSId());
-                    staffService.updateById(date);
-                }
-                //发送人员信息
-                if (StringUtils.isNotBlank(date.getCardId()) && null != dept && Double.parseDouble(date.getCardId()) > 60000){
-                    date.setDeptId(dept.getDId());
-                    staffService.personSendMessage(date,type);
-                    //发送人脸信息
-                    if (StringUtils.isNotBlank(date.getFaceId())){
-                        staffService.faceSendMessage(date);
+                try {
+                    LambdaQueryWrapper<Staff> queryWrapper = Wrappers.lambdaQuery();
+                    queryWrapper.eq(Staff::getId,date.getId());
+                    Staff staff = staffService.getOne(queryWrapper);
+                    //获取部门信息
+                    Map deptMap = JSON.parseObject(date.getDept(), Map.class);
+                    LambdaQueryWrapper<Dept> deptLambdaQueryWrapper = Wrappers.lambdaQuery();
+                    deptLambdaQueryWrapper.eq(Dept::getId,deptMap.get("id").toString());
+                    Dept dept = deptService.getOne(deptLambdaQueryWrapper);
+                    int type;
+                    if (null == staff){
+                        type = 1;
+                        staffService.save(date);
+                    }else {
+                        type = 2;
+                        date.setSId(staff.getSId());
+                        staffService.updateById(date);
+                    }
+                    //发送人员信息
+                    if (StringUtils.isNotBlank(date.getCardId()) && null != dept && Double.parseDouble(date.getCardId()) > 60000){
+                        date.setDeptId(dept.getDId());
+                        staffService.personSendMessage(date,type);
+                        //发送人脸信息
+                        if (StringUtils.isNotBlank(date.getFaceId())){
+                            staffService.faceSendMessage(date);
+                        }
                     }
+                }catch (Exception e){
+                    log.error("smJob-person:"+e.getMessage());
                 }
             });
             return list.isEmpty();
@@ -108,13 +112,17 @@ public class SmJob {
         common(SmApi.DEPT_URL,treeMap,deptList -> {
             List<Dept> list = deptList.toJavaList(Dept.class);
             list.forEach(date -> {
-                //只负责同步
-                LambdaQueryWrapper<Dept> queryWrapper = Wrappers.lambdaQuery();
-                queryWrapper.eq(Dept::getId,date.getId());
-                if (StringUtils.isBlank(date.getPid())){
-                    date.setPid("0");
+                try {
+                    //只负责同步
+                    LambdaQueryWrapper<Dept> queryWrapper = Wrappers.lambdaQuery();
+                    queryWrapper.eq(Dept::getId,date.getId());
+                    if (StringUtils.isBlank(date.getPid())){
+                        date.setPid("0");
+                    }
+                    deptService.saveOrUpdate(date,queryWrapper);
+                }catch (Exception e){
+                    log.error("smJob-group:"+e.getMessage());
                 }
-                deptService.saveOrUpdate(date,queryWrapper);
             });
             return list.isEmpty();
         });