From 098386f316ecaa7122bc979809d8160db81304ed Mon Sep 17 00:00:00 2001
From: MrShi <1878285526@qq.com>
Date: 星期四, 06 二月 2025 18:17:26 +0800
Subject: [PATCH] Merge branch '2.0.1' of http://139.186.142.91:10010/r/productDev/funingyunwei into 2.0.1

---
 server/visits/dmvisit_service/src/main/java/com/doumee/service/business/impl/YwPatrolSchemeServiceImpl.java |   59 +++++++++++++++++++++++++++++++++++++++++++++++++++++++++--
 1 files changed, 57 insertions(+), 2 deletions(-)

diff --git a/server/visits/dmvisit_service/src/main/java/com/doumee/service/business/impl/YwPatrolSchemeServiceImpl.java b/server/visits/dmvisit_service/src/main/java/com/doumee/service/business/impl/YwPatrolSchemeServiceImpl.java
index 375b2f6..c8c5326 100644
--- a/server/visits/dmvisit_service/src/main/java/com/doumee/service/business/impl/YwPatrolSchemeServiceImpl.java
+++ b/server/visits/dmvisit_service/src/main/java/com/doumee/service/business/impl/YwPatrolSchemeServiceImpl.java
@@ -1,5 +1,6 @@
 package com.doumee.service.business.impl;
 
+import com.alibaba.fastjson.JSONObject;
 import com.doumee.core.constants.ResponseStatus;
 import com.doumee.core.exception.BusinessException;
 import com.doumee.core.model.LoginUserInfo;
@@ -15,6 +16,9 @@
 import com.doumee.dao.business.YwPatrolTaskMapper;
 import com.doumee.dao.business.YwPatrolTaskRecordMapper;
 import com.doumee.dao.business.model.*;
+import com.doumee.dao.system.SystemUserMapper;
+import com.doumee.dao.system.join.NoticesJoinMapper;
+import com.doumee.dao.system.model.Notices;
 import com.doumee.dao.system.model.SystemUser;
 import com.doumee.service.business.YwPatrolSchemeService;
 import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
@@ -49,7 +53,11 @@
     @Autowired
     private YwPatrolTaskRecordMapper ywPatrolTaskRecordMapper;
     @Autowired
+    private SystemUserMapper systemUserMapper;
+    @Autowired
     private RedisTemplate<String, Object> redisTemplate;
+    @Autowired
+    private NoticesJoinMapper noticesJoinMapper;
 
     @Override
     @Transactional(rollbackFor = {Exception.class,BusinessException.class})
@@ -203,6 +211,39 @@
             ywPatrolTaskRecordList.add(ywPatrolTaskRecord);
         }
         ywPatrolTaskRecordMapper.insert(ywPatrolTaskRecordList);
+
+        if(StringUtils.isNotBlank(ywPatrolScheme.getUserIds())){
+            String [] userIds = ywPatrolScheme.getUserIds().split(",");
+            List<SystemUser> systemUserList = systemUserMapper.selectList(new QueryWrapper<SystemUser>().lambda().in(SystemUser::getId,userIds));
+            if(com.github.xiaoymin.knife4j.core.util.CollectionUtils.isNotEmpty(systemUserList)){
+                List<String> names = systemUserList.stream().filter(i->StringUtils.isNotBlank(i.getRealname())).map(i->i.getRealname()).collect(Collectors.toList());
+                for (SystemUser systemUser:systemUserList) {
+                    //娣诲姞寰呭姙淇℃伅
+                    Notices notices = new Notices();
+                    notices.setCreateDate(new Date());
+                    notices.setCreator(ywPatrolScheme.getCreator());
+                    notices.setIsdeleted(Constants.ZERO);
+                    notices.setParam1(DateUtil.formatDate(ywPatrolTask.getStartDate(),"yyyy-MM-dd"));
+                    notices.setTitle("宸℃浠诲姟寰呭姙");
+                    notices.setContent("["+ywPatrolTask.getCode()+"]灏嗗湪["+notices.getParam1()+"]杩涜宸℃锛岃鎸夋椂鎵ц");
+                    notices.setObjId(ywPatrolTask.getId());
+                    notices.setObjType(Constants.ONE);
+                    notices.setType(notices.getObjType());
+                    notices.setUserId(Integer.valueOf(systemUser.getId()));
+                    notices.setStatus(Constants.ZERO);
+                    //鏁寸悊json鏁版嵁
+                    Map<String,Object> jsonMap = new HashMap<>();
+                    jsonMap.put("key1", ywPatrolScheme.getTitle());
+                    jsonMap.put("key2", DateUtil.getFomartDate(ywPatrolTask.getStartDate(),"yyyy-MM-dd"));
+                    jsonMap.put("key3", DateUtil.getFomartDate(ywPatrolTask.getStartDate(),"HH:mm") + "-" + DateUtil.getFomartDate(ywPatrolTask.getEndDate(),"HH:mm"));
+                    jsonMap.put("key4", StringUtils.join(names , "銆�"));
+                    notices.setParam2(JSONObject.toJSONString(jsonMap));
+                    notices.setParam3(Constants.ZERO+"");
+                    noticesJoinMapper.insert(notices);
+                }
+            }
+
+        }
     }
 
 
@@ -315,8 +356,8 @@
         YwPatrolScheme model = pageWrap.getModel();
         queryWrapper.selectAll(YwPatrolScheme.class)
                 .select(" t2.realName as createUserName ")
-                .select(" t1.realName as userName ")
-                .leftJoin(SystemUser.class,SystemUser::getId,YwPatrolScheme::getUserIds)
+//                .select(" t1.realName as userName ")
+//                .leftJoin(SystemUser.class,SystemUser::getId,YwPatrolScheme::getUserIds)
                 .leftJoin(" system_user t2 on t.creator =  t2.id  ")
                 .eq(YwPatrolScheme::getIsdeleted,Constants.ZERO)
                 .like(StringUtils.isNotBlank(model.getTitle()),YwPatrolScheme::getTitle,model.getTitle())
@@ -333,10 +374,24 @@
         IPage<YwPatrolScheme> iPage = ywPatrolSchemeMapper.selectJoinPage(page,YwPatrolScheme.class,queryWrapper);
         for (YwPatrolScheme ywPatrolScheme:iPage.getRecords()) {
             this.getSchemeStatus(ywPatrolScheme);
+            //宸℃浜哄憳
+            this.getUserNames(ywPatrolScheme);
         }
         return PageData.from(iPage);
     }
 
+
+    public void getUserNames(YwPatrolScheme ywPatrolScheme){
+        if(Objects.nonNull(ywPatrolScheme)&&StringUtils.isNotBlank(ywPatrolScheme.getUserIds())){
+            List<SystemUser>  systemUserList = systemUserMapper.selectList(new QueryWrapper<SystemUser>().lambda()
+                    .apply(" find_in_set(id,'"+ywPatrolScheme.getUserIds()+"') ")
+            );
+            String userName = String.join(",",systemUserList.stream().map(i->i.getRealname()).collect(Collectors.toList()));
+            ywPatrolScheme.setUserName(userName);
+        }
+    }
+
+
     //鑾峰彇鐘舵��
     public void getSchemeStatus(YwPatrolScheme ywPatrolScheme){
         List<YwPatrolTask> ywPatrolTaskList = ywPatrolTaskMapper.selectList(new QueryWrapper<YwPatrolTask>().lambda()

--
Gitblit v1.9.3