xiahan пре 11 месеци
родитељ
комит
e9d40e017e

+ 2 - 1
js-common/src/main/java/com/rongwei/safecommon/utils/JSCommonUtils.java

@@ -8,6 +8,7 @@ import com.google.common.collect.Lists;
 import com.rongwei.commonservice.serial.service.SysSerialNumberService;
 import com.rongwei.commonservice.service.RedisService;
 import com.rongwei.rwadmincommon.system.domain.SysOrganizationDo;
+import com.rongwei.rwadmincommon.system.domain.SysUserDo;
 import com.rongwei.rwadmincommon.system.vo.SysOrganizationVo;
 import com.rongwei.rwadmincommon.system.vo.SysUserVo;
 import com.rongwei.rwcommon.base.BaseDo;
@@ -358,7 +359,7 @@ public class JSCommonUtils {
         }
     }
 
-    public static <T extends BaseDo> void setBaseDetail(T t, SysUserVo userVo) {
+    public static <T extends BaseDo> void setBaseDetail(T t, SysUserDo userVo) {
         t.setCreatedate(new Date());
         t.setModifydate(new Date());
         if (userVo != null) {

+ 64 - 40
js-security/security-common/src/main/java/com/rongwei/sfcommon/sys/service/impl/ThemeCheckServiceImpl.java

@@ -14,7 +14,9 @@ import com.rongwei.rwcommon.utils.SecurityUtil;
 import com.rongwei.rwcommon.utils.StringUtils;
 import com.rongwei.rwcommon.vo.MailDo;
 import com.rongwei.rwcommon.vo.generalsql.GeneralApiParameter;
+import com.rongwei.rwcommon.vo.generalsql.GeneralInsertVo;
 import com.rongwei.rwcommon.vo.generalsql.SlaveDMLVo;
+import com.rongwei.safecommon.utils.JSCommonUtils;
 import com.rongwei.sfcommon.sys.dao.SafetyObservationDao;
 import com.rongwei.sfcommon.sys.dao.ThemeCheckDao;
 import com.rongwei.sfcommon.sys.service.*;
@@ -26,9 +28,7 @@ import org.springframework.stereotype.Service;
 import org.springframework.transaction.annotation.Transactional;
 
 import java.util.*;
-import java.util.stream.Collectors;
 
-import static com.rongwei.safecommon.utils.SaveConstans.NotifyContent.INSPECTION_TASKS_CONTENT;
 import static com.rongwei.sfcommon.utils.MlConstants.THEME_CHECK_STATUS_WAIT;
 
 @Service("themeCheckService")
@@ -81,10 +81,10 @@ public class ThemeCheckServiceImpl extends ServiceImpl<ThemeCheckDao, ThemeCheck
             for (SlaveDMLVo slaveDMLVo : slaveDMLVos) {
                 //字段明细表处理
                 if ("asp_theme_check_workpark".equalsIgnoreCase(slaveDMLVo.getTableName())) {
-                    slaveDMLVo.getSlaveInsert().forEach(item -> {
+                    for (GeneralInsertVo item : slaveDMLVo.getSlaveInsert()) {
                         ThemeCheckWorkparkDo themeCheckWorkpark = BeanUtil.mapToBeanIgnoreCase(item.getInsertcolumns(), ThemeCheckWorkparkDo.class, true);
                         themeCheckWorkparks.add(themeCheckWorkpark);
-                    });
+                    }
                 }
             }
         }
@@ -117,8 +117,7 @@ public class ThemeCheckServiceImpl extends ServiceImpl<ThemeCheckDao, ThemeCheck
         parmap.put("DELETED", "0");
         List<CheckTemplateItemsDo> checkTemplateItemss = (List<CheckTemplateItemsDo>) checkTemplateItemsService.listByMap(parmap);
         if (themeCheckWorkparks != null && themeCheckWorkparks.size() > 0) {
-            themeCheckWorkparks.forEach(v -> {
-                // 检查任务表保存
+            for (ThemeCheckWorkparkDo v : themeCheckWorkparks) {// 检查任务表保存
                 ThemeCheckItemDo themeCheckItemDo = new ThemeCheckItemDo();
                 themeCheckItemDo.setId(SecurityUtil.getUUID());
                 themeCheckItemDo.setThemecheckid(themeCheckDo.getId());
@@ -140,8 +139,7 @@ public class ThemeCheckServiceImpl extends ServiceImpl<ThemeCheckDao, ThemeCheck
 
                 if (checkTemplateItemss != null && checkTemplateItemss.size() > 0) {
                     List<ThemeCheckContentDo> checkContentDos = new ArrayList<>();
-                    checkTemplateItemss.forEach(m -> {
-                        // 检查任务明细表保存
+                    for (CheckTemplateItemsDo m : checkTemplateItemss) {// 检查任务明细表保存
                         ThemeCheckContentDo themeCheckContent = new ThemeCheckContentDo();
                         themeCheckContent.setId(SecurityUtil.getUUID());
                         themeCheckContent.setThemecheckitemid(themeCheckItemDo.getId());
@@ -149,12 +147,12 @@ public class ThemeCheckServiceImpl extends ServiceImpl<ThemeCheckDao, ThemeCheck
                         themeCheckContent.setCheckcontent(m.getCheckcontent());
                         themeCheckContent.setItemsort(m.getItemsort());
                         checkContentDos.add(themeCheckContent);
-                    });
+                    }
                     themeCheckContentService.saveBatch(checkContentDos);
                     // 邮件发送
                     this.sendMail(themeCheckDo, themeCheckWorkparks, checkTemplateItemss);
                 }
-            });
+            }
         }
     }
 
@@ -187,23 +185,41 @@ public class ThemeCheckServiceImpl extends ServiceImpl<ThemeCheckDao, ThemeCheck
             return;
         }
         // 获取所有检查小组的人员信息
-        List<String> userIds = themeCheckWorkparks.stream().map(info -> {
+        List<String> userIds = new ArrayList<>();
+        Set<String> uniqueValuesOuter = new HashSet<>();
+        for (ThemeCheckWorkparkDo themeCheckWorkparkDo : themeCheckWorkparks) {
             String groupLeader = "";
-            if (StringUtils.isNotBlank(info.getGroupleader())) {
-                groupLeader = info.getGroupleader();
+            if (StringUtils.isNotBlank(themeCheckWorkparkDo.getGroupleader())) {
+                groupLeader = themeCheckWorkparkDo.getGroupleader();
             }
-            if (StringUtils.isNotBlank(info.getGroupusers())) {
-                groupLeader = String.format(INSPECTION_TEAM, groupLeader, info.getGroupusers());
+            if (StringUtils.isNotBlank(themeCheckWorkparkDo.getGroupusers())) {
+                groupLeader = String.format(INSPECTION_TEAM, groupLeader, themeCheckWorkparkDo.getGroupusers());
             }
-            return groupLeader.split(",");
-        }).flatMap(Arrays::stream).filter(StringUtils::isNotBlank).distinct().collect(Collectors.toList());
+            String[] apply = groupLeader.split(",");
+            for (String s : apply) {
+                if (StringUtils.isNotBlank(s)) {
+                    if (uniqueValuesOuter.add(s)) {
+                        userIds.add(s);
+                    }
+                }
+            }
+        }
         List<SysUserDo> userList = sysUserService.list(new LambdaQueryWrapper<SysUserDo>().in(SysUserDo::getId, userIds));
         // 当前检查小组的人员信息
         HashSet<String> currentCheckUserIds = new HashSet<>();
         List<ThemeCheckItemDo> saveCheckItemList = new ArrayList<ThemeCheckItemDo>();
         List<ThemeCheckContentDo> saveCheckContentList = new ArrayList<ThemeCheckContentDo>();
         // 获取检查小组中的所有检查主题
-        List<String> checkTemplateIds = themeCheckWorkparks.stream().map(ThemeCheckWorkparkDo::getChecktemplateid).distinct().filter(StringUtils::isNotBlank).collect(Collectors.toList());
+        List<String> checkTemplateIds = new ArrayList<>();
+        Set<String> uniqueValues = new HashSet<>();
+        for (ThemeCheckWorkparkDo themeCheckWorkpark : themeCheckWorkparks) {
+            String checktemplateid = themeCheckWorkpark.getChecktemplateid();
+            if (uniqueValues.add(checktemplateid)) {
+                if (StringUtils.isNotBlank(checktemplateid)) {
+                    checkTemplateIds.add(checktemplateid);
+                }
+            }
+        }
         // 检查主题明细
         List<CheckTemplateItemsDo> checkTemplateItemsDos = checkTemplateItemsService.list(new LambdaQueryWrapper<CheckTemplateItemsDo>()
                 .eq(BaseDo::getDeleted, "0")
@@ -213,7 +229,7 @@ public class ThemeCheckServiceImpl extends ServiceImpl<ThemeCheckDao, ThemeCheck
         // 发送提醒的map
         Map<String, String> sendNotifyMap = new HashMap<>();
         // 生成检查任务
-        themeCheckWorkparks.forEach(info -> {
+        for (ThemeCheckWorkparkDo info : themeCheckWorkparks) {
             String groupleader = info.getGroupleader();
             String groupusers = info.getGroupusers();
             currentCheckUserIds.clear();
@@ -223,17 +239,25 @@ public class ThemeCheckServiceImpl extends ServiceImpl<ThemeCheckDao, ThemeCheck
             if (StringUtils.isNotBlank(groupusers)) {
                 currentCheckUserIds.addAll(new HashSet<>(Arrays.asList(groupusers.split(","))));
             }
-            currentCheckUserIds.forEach(userId -> {
-                SysUserDo userDo = userList.stream().filter(userInfo -> userId.equals(userInfo.getId())).findFirst().orElse(null);
+            for (String userId : currentCheckUserIds) {
+                SysUserDo userDo = null;
+                for (SysUserDo userInfo : userList) {
+                    if (userId.equals(userInfo.getId())) {
+                        userDo = userInfo;
+                        break;
+                    }
+                }
                 ThemeCheckItemDo themeCheckItemDo = generateThemeCheckItem(userDo, info, themeCheckDo);
                 saveCheckItemList.add(themeCheckItemDo);
-                checkTemplateItemsDos.forEach(checkTemplate -> {
-                    saveCheckContentList.add(generateThemeCheckContent(userDo, themeCheckItemDo, checkTemplate));
-                });
+                int index = 1;
+                for (CheckTemplateItemsDo checkTemplate : checkTemplateItemsDos) {
+                    saveCheckContentList.add(generateThemeCheckContent(userDo, themeCheckItemDo, checkTemplate, index));
+                    index++;
+                }
                 // 任务名称  计划检查时间 区域
-                sendNotifyMap.put(String.format(INSPECTION_TASKS_CONTENT, themeCheckDo.getCheckname(), themeCheckDo.getPlanstarttime(),
-                        themeCheckDo.getPlanstarttime(), info.getChargeorgname(), themeCheckItemDo.getId()), userId);
-            });
+//                sendNotifyMap.put(String.format(INSPECTION_TASKS_CONTENT, themeCheckDo.getCheckname(), themeCheckDo.getPlanstarttime(),
+//                        themeCheckDo.getPlanstarttime(), info.getChargeorgname(), themeCheckItemDo.getId()), userId);
+            }
 
          /* 注释邮件相关功能
             MailDo mail = new MailDo();
@@ -241,23 +265,23 @@ public class ThemeCheckServiceImpl extends ServiceImpl<ThemeCheckDao, ThemeCheck
             String groupleadername = info.getGroupleadername();
             String groupusernames = info.getGroupusernames();
             DISCOVERY_ITEM_MAIL_CONTENT*/
-        });
-        this.update(new LambdaUpdateWrapper<ThemeCheckDo>().set(ThemeCheckDo::getCreatetask, 1).eq(ThemeCheckDo::getId, themeCheckId));
+        }
+        this.update(new LambdaUpdateWrapper<ThemeCheckDo>()
+                .set(ThemeCheckDo::getCreatetask, 1)
+                .eq(ThemeCheckDo::getId, themeCheckId));
         themeCheckItemService.saveBatch(saveCheckItemList);
         themeCheckContentService.saveBatch(saveCheckContentList);
         sendNotifyService.sendInspectionTasksNotify(sendNotifyMap);
     }
 
 
-    private ThemeCheckContentDo generateThemeCheckContent(SysUserDo sysUser, ThemeCheckItemDo themeCheckItemDo, CheckTemplateItemsDo checkTemplateItemsDo) {
+    private ThemeCheckContentDo generateThemeCheckContent(SysUserDo sysUser, ThemeCheckItemDo themeCheckItemDo,
+                                                          CheckTemplateItemsDo checkTemplateItemsDo,
+                                                          int index) {
         ThemeCheckContentDo themeCheckContentDo = new ThemeCheckContentDo();
         themeCheckContentDo.setId(SecurityUtil.getUUID());
-        themeCheckContentDo.setCreateusername(sysUser.getName());
-        themeCheckContentDo.setCreateuserid(sysUser.getId());
-        themeCheckContentDo.setModifydate(new Date());
-        themeCheckContentDo.setModifyuserid(sysUser.getId());
-        themeCheckContentDo.setModifyusername(sysUser.getName());
-        themeCheckContentDo.setCreatedate(new Date());
+        JSCommonUtils.setBaseDetail(themeCheckContentDo, sysUser);
+        themeCheckContentDo.setItemsort(index);
         themeCheckContentDo.setThemecheckitemid(themeCheckItemDo.getId());
         themeCheckContentDo.setCheckposition(checkTemplateItemsDo.getCheckposition());
         themeCheckContentDo.setCheckcontent(checkTemplateItemsDo.getCheckcontent());
@@ -336,11 +360,11 @@ public class ThemeCheckServiceImpl extends ServiceImpl<ThemeCheckDao, ThemeCheck
                 if (ids.size() > 0) {
                     List<SysUserDo> users = (List<SysUserDo>) sysUserService.listByIds(ids);
                     if (users != null && users.size() > 0) {
-                        users.forEach(m -> {
+                        for (SysUserDo m : users) {
                             if (StringUtils.isNotEmpty(m.getEmail())) {
                                 mialUsers.add(m.getEmail());
                             }
-                        });
+                        }
                     }
                 }
                 if (mialUsers != null && mialUsers.size() > 0) {
@@ -423,11 +447,11 @@ public class ThemeCheckServiceImpl extends ServiceImpl<ThemeCheckDao, ThemeCheck
         //  int count=5;
         List<SysUserDo> users = safetyObservationDao.listSafe(count);
         if (users != null && users.size() > 0) {
-            users.forEach(m -> {
+            for (SysUserDo m : users) {
                 if (StringUtils.isNotEmpty(m.getEmail())) {
                     mialUsers.add(m.getEmail());
                 }
-            });
+            }
         }
         if (mialUsers != null && mialUsers.size() > 0) {
             String[] userArray = new String[mialUsers.size()];