Selaa lähdekoodia

Merge branch 'han' of uskycloud/usky-cloud into system-165

hanzhengyi 10 kuukautta sitten
vanhempi
commit
e75f85d95f

+ 4 - 0
base-modules/service-system/service-system-biz/src/main/java/com/usky/system/domain/MceReceive.java

@@ -91,5 +91,9 @@ public class MceReceive implements Serializable {
     @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss")
     private LocalDateTime updateTime;
 
+    /**
+     * 发布人ID
+     */
+    private Integer issuerId;
 
 }

+ 49 - 27
base-modules/service-system/service-system-biz/src/main/java/com/usky/system/service/impl/MceReceiveServiceImpl.java

@@ -212,6 +212,16 @@ public class MceReceiveServiceImpl extends AbstractCrudService<MceReceiveMapper,
         this.update(updateWrapper);
     }
 
+    public static List<Integer> convertObjectToList(Object object) {
+        if (object instanceof List<?>) {
+            @SuppressWarnings("unchecked")
+            List<Integer> tempList = (List<Integer>) object;
+            return tempList;
+        } else {
+            throw new IllegalArgumentException("The object is not a List");
+        }
+    }
+
     @Override
     public void add(String mceReceive){
         JSONObject mceReceiveVO = JSONObject.parseObject(mceReceive);
@@ -232,38 +242,50 @@ public class MceReceiveServiceImpl extends AbstractCrudService<MceReceiveMapper,
             for (int g = 0; g < list.size(); g++) {
                 userIds.add(list.get(g).getUserId().intValue());
             }
+            List<Integer> userIds1;
+            if (mceReceiveVO.containsKey("userIds")) {
+                userIds1 = convertObjectToList(mceReceiveVO.get("userIds"));
+                userIds.retainAll(userIds1);
+            }
             LambdaQueryWrapper<MceMbuser> lambdaQuery3 = Wrappers.lambdaQuery();
             lambdaQuery3.in(MceMbuser::getUserId,userIds);
             List<MceMbuser> list3 = mceMbuserService.list(lambdaQuery3);
             for (int i = 0; i < list.size(); i++) {
-                MceReceive mceReceive1 = new MceReceive();
-                mceReceive1.setReceiverId(list.get(i).getUserId().intValue());
-                mceReceive1.setContentId(contentId);
-                mceReceive1.setReadFlag(0);
-                mceReceive1.setInfoType(mceReceiveVO.get("infoType").toString());
-                mceReceive1.setModuleId((int)mceReceiveVO.get("id"));
-                mceReceive1.setReceiverName(list.get(i).getUserName());
-                mceReceive1.setCreateBy(SecurityUtils.getUsername());
-                mceReceive1.setCreateTime(LocalDateTime.now());
-                mceReceive1.setTenantId(list.get(i).getTenantId());
-//                mceReceive1.setDeptId(list.get(i).getDeptId().intValue());
-                this.save(mceReceive1);
-                Integer mceReceiveId = mceReceive1.getId();
-                LambdaQueryWrapper<MceSetting> lambdaQuery = Wrappers.lambdaQuery();
-                lambdaQuery.eq(MceSetting::getCreateBy,list.get(i).getUserName());
-                List<MceSetting> list1 = mceSettingService.list(lambdaQuery);
-                if (CollectionUtils.isNotEmpty(list1)){
-                    JSONObject appMode = JSONObject.parseObject(list1.get(0).getAppMode());
-                    JSONObject wcMode = JSONObject.parseObject(list1.get(0).getWcMode());
-                    for (int j = 0; j < list3.size(); j++){
-                        if (appMode.get(mceReceiveVO.get("infoType").toString()).equals(true)){
-                            if (list.get(i).getUserId().equals(list3.get(j).getUserId()) && StringUtils.isNotBlank(list3.get(j).getCids())){
-                                mceContentService.sendApp(mceReceiveVO,list3.get(j).getCids(),0,0);
+                if (CollectionUtils.isNotEmpty(list3)){
+                    for (int j = 0; j < list3.size(); j++) {
+                        if (list.get(i).getUserId().equals(list3.get(j).getUserId())){
+                            MceReceive mceReceive1 = new MceReceive();
+                            mceReceive1.setReceiverId(list.get(i).getUserId().intValue());
+                            mceReceive1.setContentId(contentId);
+                            mceReceive1.setReadFlag(0);
+                            mceReceive1.setInfoType(mceReceiveVO.get("infoType").toString());
+                            mceReceive1.setModuleId((int)mceReceiveVO.get("id"));
+                            if (mceReceiveVO.containsKey("userId")) {
+                                mceReceive1.setIssuerId((int)mceReceiveVO.get("userId"));
                             }
-                        }
-                        if (wcMode.get(mceReceiveVO.get("infoType").toString()).equals(true)){
-                            if (list.get(i).getUserId().equals(list3.get(j).getUserId()) && StringUtils.isNotBlank(list3.get(j).getOpenid())){
-                                mceContentService.sendApp(mceReceiveVO,list3.get(j).getOpenid(),mceReceiveId,1);
+                            mceReceive1.setReceiverName(list.get(i).getUserName());
+                            mceReceive1.setCreateBy(SecurityUtils.getUsername());
+                            mceReceive1.setCreateTime(LocalDateTime.now());
+                            mceReceive1.setTenantId(list.get(i).getTenantId());
+//                mceReceive1.setDeptId(list.get(i).getDeptId().intValue());
+                            this.save(mceReceive1);
+                            Integer mceReceiveId = mceReceive1.getId();
+                            LambdaQueryWrapper<MceSetting> lambdaQuery = Wrappers.lambdaQuery();
+                            lambdaQuery.eq(MceSetting::getCreateBy,list.get(i).getUserName());
+                            List<MceSetting> list1 = mceSettingService.list(lambdaQuery);
+                            if (CollectionUtils.isNotEmpty(list1)){
+                                JSONObject appMode = JSONObject.parseObject(list1.get(0).getAppMode());
+                                JSONObject wcMode = JSONObject.parseObject(list1.get(0).getWcMode());
+                                if (appMode.get(mceReceiveVO.get("infoType").toString()).equals(true)){
+                                    if (list.get(i).getUserId().equals(list3.get(j).getUserId()) && StringUtils.isNotBlank(list3.get(j).getCids())){
+                                        mceContentService.sendApp(mceReceiveVO,list3.get(j).getCids(),0,0);
+                                    }
+                                }
+                                if (wcMode.get(mceReceiveVO.get("infoType").toString()).equals(true)){
+                                    if (list.get(i).getUserId().equals(list3.get(j).getUserId()) && StringUtils.isNotBlank(list3.get(j).getOpenid())){
+                                        mceContentService.sendApp(mceReceiveVO,list3.get(j).getOpenid(),mceReceiveId,1);
+                                    }
+                                }
                             }
                         }
                     }

+ 1 - 0
base-modules/service-system/service-system-biz/src/main/resources/mapper/system/MceReceiveMapper.xml

@@ -17,6 +17,7 @@
         <result column="create_time" property="createTime" />
         <result column="update_by" property="updateBy" />
         <result column="update_time" property="updateTime" />
+        <result column="issuer_id" property="issuerId" />
     </resultMap>
 
 </mapper>