|
@@ -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()];
|