czh 2 лет назад
Родитель
Сommit
ed2f9a3fea

+ 2 - 2
sckw-common/sckw-common-core/src/main/java/com/sckw/core/utils/AsyncThreadUtils.java

@@ -38,7 +38,7 @@ public class AsyncThreadUtils {
      * 直接提交任务,无返回值
      * @param task Runnable
      */
-    public static void submit(Runnable task){
+    public static void submit(Runnable task) {
         poolExecutor.submit(task);
     }
 
@@ -47,7 +47,7 @@ public class AsyncThreadUtils {
      * @param <T>
      * @return Future
      */
-    public static <T> Future<T> submit(Callable<T> task){
+    public static <T> Future<T> submit(Callable<T> task) {
         return poolExecutor.submit(task);
     }
 

+ 5 - 1
sckw-common/sckw-common-stream/src/main/java/com/sckw/stream/enums/MessageEnum.java

@@ -108,7 +108,11 @@ public enum MessageEnum {
     /**
      * 合作申请待审核
      */
-    COOPERATE_WAIT_APPROVAL("BUSINESS", "COOPERATE_WAIT_APPROVAL", "合作申请待审核", "【${entName}】对贵司发起了企业合作申请,请前往确认", "terminal,ios,android"),
+    COOPERATE_WAIT_APPROVAL("BUSINESS",
+                            "COOPERATE_WAIT_APPROVAL",
+                            "合作申请待审核",
+                         "【${entName}】对贵司发起了企业合作申请,请前往确认",
+                        "terminal,ios,android"),
 
 
 

+ 20 - 2
sckw-modules/sckw-manage/src/main/java/com/sckw/manage/service/CommonBusinessService.java

@@ -1,9 +1,11 @@
 package com.sckw.manage.service;
 
+import com.alibaba.fastjson2.JSON;
 import com.sckw.core.exception.SystemException;
 import com.sckw.core.model.constant.Global;
 import com.sckw.core.model.enums.CooperateStatusEnum;
 import com.sckw.core.model.enums.CooperateTypeEnum;
+import com.sckw.core.utils.AsyncThreadUtils;
 import com.sckw.core.utils.CollectionUtils;
 import com.sckw.core.utils.StringUtils;
 import com.sckw.core.utils.UUIDUtils;
@@ -351,8 +353,24 @@ public class CommonBusinessService {
                 .setMsgUrl(msgUrl)
                 .setUserInfos(userInfos)
                 .setCreateBy(LoginUserHolder.getUserId());
-        log.info("合作申请:{}", com.alibaba.fastjson2.JSON.toJSONString(msg));
-        streamBridge.send("sckw-message", com.alibaba.fastjson2.JSON.toJSONString(msg));
+        AsyncThreadUtils.submit(new AsyncProcess(msg, streamBridge));
     }
 
+
+    static class AsyncProcess implements Runnable {
+
+        private SckwMessage sckwMessage;
+
+        private StreamBridge streamBridge;
+
+        AsyncProcess(SckwMessage sckwMessage, StreamBridge streamBridge) {
+            this.sckwMessage = sckwMessage;
+            this.streamBridge = streamBridge;
+        }
+
+        @Override
+        public void run() {
+            streamBridge.send("sckw-message", JSON.toJSONString(sckwMessage));
+        }
+    }
 }

+ 20 - 9
sckw-modules/sckw-manage/src/main/java/com/sckw/manage/service/KwmCooperateApplyService.java

@@ -11,10 +11,7 @@ import com.sckw.core.model.constant.Global;
 import com.sckw.core.model.enums.CooperateStatusEnum;
 import com.sckw.core.model.page.PageHelperUtil;
 import com.sckw.core.model.page.PageResult;
-import com.sckw.core.utils.BeanUtils;
-import com.sckw.core.utils.CollectionUtils;
-import com.sckw.core.utils.IdWorker;
-import com.sckw.core.utils.StringUtils;
+import com.sckw.core.utils.*;
 import com.sckw.core.web.constant.HttpStatus;
 import com.sckw.core.web.context.LoginUserHolder;
 import com.sckw.excel.utils.EasyExcelUtil;
@@ -39,6 +36,7 @@ import com.sckw.system.api.model.dto.res.UserCacheResDto;
 import lombok.extern.slf4j.Slf4j;
 import org.apache.dubbo.config.annotation.DubboReference;
 import org.springframework.beans.factory.annotation.Autowired;
+import org.springframework.beans.factory.annotation.Value;
 import org.springframework.stereotype.Service;
 import org.springframework.transaction.annotation.Transactional;
 
@@ -66,6 +64,9 @@ public class KwmCooperateApplyService {
     @DubboReference(version = "1.0.0", group = "design", check = false)
     private RemoteSystemService remoteSystemService;
 
+    @Value(value = "${jumpUrl.cooperateApplyUrl}")
+    private String cooperateApplyUrl;
+
     /**
      * @param reqVo 分页入参
      * @return HttpResult
@@ -267,15 +268,24 @@ public class KwmCooperateApplyService {
         //保存发起申请
         saveInitiate(reqVo, currentEntId, chooseCooperateTypes);
 
-
-        EntCacheResDto entCacheResDto = remoteSystemService.queryEntCacheById(reqVo.getTargetEntId());
-        Map<String, Object> map = new HashMap<>();
-        map.put("entName", entCacheResDto.getFirmName());
+        //发起合作申请消息
+        EntCacheResDto targetEntCacheResDto = remoteSystemService.queryEntCacheById(reqVo.getTargetEntId());
+        Map<String, Object> map = new HashMap<>(Global.NUMERICAL_FOUR);
+        map.put("entName", targetEntCacheResDto.getFirmName());
         map.put("createByName", LoginUserHolder.getUserName());
         commonBusinessService.sendSystemMessage(Collections.singletonList(new UserInfo().setUserId(LoginUserHolder.getUserId()).setEntId(LoginUserHolder.getEntId())),
                 MessageEnum.SUBMIT_COOPERATE,
                 map,
-                "testUrl");
+                cooperateApplyUrl);
+
+        //合作申请待审核消息
+        EntCacheResDto entCacheResDto = remoteSystemService.queryEntCacheById(reqVo.getEntId());
+        EntCacheResDto entCacheResDto1 = remoteSystemService.queryEntTreeById(reqVo.getTargetEntId());
+        map.put("entName", entCacheResDto.getFirmName());
+        commonBusinessService.sendSystemMessage(Collections.singletonList(new UserInfo().setUserId(entCacheResDto1.getContactsId()).setEntId(entCacheResDto1.getId())),
+                MessageEnum.COOPERATE_WAIT_APPROVAL,
+                map,
+                cooperateApplyUrl);
     }
 
 
@@ -296,6 +306,7 @@ public class KwmCooperateApplyService {
             kwmCooperate.setInviteeEntId(reqVo.getTargetEntId());
 
             //我方联系人
+
             UserCacheResDto contactDto = remoteSystemService.queryUserCacheById(reqVo.getUserId());
             if (Objects.nonNull(contactDto)) {
                 kwmCooperate.setInviterContactsId(contactDto.getId());

+ 19 - 1
sckw-modules/sckw-system/src/main/java/com/sckw/system/service/CommonService.java

@@ -143,7 +143,25 @@ public class CommonService {
                 .setMsgUrl(msgUrl)
                 .setUserInfos(userInfos)
                 .setCreateBy(LoginUserHolder.getUserId());
-        streamBridge.send("sckw-message", com.alibaba.fastjson2.JSON.toJSONString(msg));
+        AsyncThreadUtils.submit(new AsyncProcess(msg, streamBridge));
+    }
+
+
+    static class AsyncProcess implements Runnable {
+
+        private SckwMessage sckwMessage;
+
+        private StreamBridge streamBridge;
+
+        AsyncProcess(SckwMessage sckwMessage, StreamBridge streamBridge) {
+            this.sckwMessage = sckwMessage;
+            this.streamBridge = streamBridge;
+        }
+
+        @Override
+        public void run() {
+            streamBridge.send("sckw-message", JSON.toJSONString(sckwMessage));
+        }
     }
 
 }

+ 41 - 3
sckw-modules/sckw-system/src/main/java/com/sckw/system/service/KwsEnterpriseService.java

@@ -1,7 +1,6 @@
 package com.sckw.system.service;
 
 import cn.hutool.core.date.DateUtil;
-import cn.hutool.core.net.URLEncoder;
 import com.github.pagehelper.PageHelper;
 import com.github.pagehelper.PageInfo;
 import com.sckw.core.exception.SystemException;
@@ -29,6 +28,7 @@ import com.sckw.system.model.vo.req.*;
 import com.sckw.system.model.vo.res.*;
 import com.sckw.system.model.vo.res.KwsUserResVo;
 import org.springframework.beans.factory.annotation.Autowired;
+import org.springframework.beans.factory.annotation.Value;
 import org.springframework.stereotype.Service;
 import org.springframework.transaction.annotation.Transactional;
 
@@ -74,6 +74,9 @@ public class KwsEnterpriseService {
     @Autowired
     private SysAreaDao sysAreaDao;
 
+    @Value(value = "${jumpUrl.entCertificate}")
+    private String entCertificateUrl;
+
     /**
      * @param params 入库
      * @desc: 单表入库
@@ -136,7 +139,12 @@ public class KwsEnterpriseService {
     public void update(UpdateEntInfoReqVo reqVo) {
         /*1、更新企业信息表*/
         KwsEnterprise kwsEnterprise = checkKwsEnterpriseById(LoginUserHolder.getEntId());
-        commonService.checkEntRepeat(reqVo.getFirmName(), "");
+        List<KwsEnterprise> list = kwsEnterpriseDao.checkEntRepeat(reqVo.getFirmName(), "");
+        if (CollectionUtils.isNotEmpty(list)) {
+            if (!list.get(0).getId().equals(kwsEnterprise.getId())) {
+                throw new SystemException(HttpStatus.PARAMETERS_MISSING_CODE, HttpStatus.ENT_EXISTS);
+            }
+        }
         SysArea sysArea = sysAreaDao.selectById(reqVo.getCityCode());
         if (Objects.nonNull(sysArea)) {
             kwsEnterprise.setCityName(sysArea.getMergerName());
@@ -370,7 +378,7 @@ public class KwsEnterpriseService {
         commonService.sendSystemMessage(Collections.singletonList(new UserInfo().setUserId(userId).setEntId(entId)),
                                         MessageEnum.ENT_CERTIFICATE,
                                         map,
-                                        "testUrl");
+                                        entCertificateUrl);
     }
 
     /**
@@ -447,6 +455,29 @@ public class KwsEnterpriseService {
             }
         }
         commonService.updateEntCertificate(entId, BeanUtils.copyToList(kwsEntCertificates, EntCertificateInfo.class));
+
+
+        Map<String, Object> map = new HashMap<>();
+        map.put("entName", kwsEnterprise.getFirmName());
+        map.put("createByName", LoginUserHolder.getUserName());
+        MessageEnum entCertificatePass;
+        if (Objects.isNull(kwsEntDept)) {
+            entCertificatePass = MessageEnum.ENT_CERTIFICATE_PASS;
+        } else {
+            entCertificatePass = MessageEnum.ENT_DEPT_CERTIFICATE_PASS;
+        }
+        if (reqVo.getStatus().equals(ApprovalEnum.OK.getCode())) {
+
+            commonService.sendSystemMessage(Collections.singletonList(new UserInfo().setUserId(kwsEnterprise.getCreateBy()).setEntId(entId)),
+                    MessageEnum.ENT_CERTIFICATE_PASS,
+                    map,
+                    entCertificateUrl);
+        } else {
+            commonService.sendSystemMessage(Collections.singletonList(new UserInfo().setUserId(kwsEnterprise.getCreateBy()).setEntId(entId)),
+                    MessageEnum.ENT_CERTIFICATE_REFUSED,
+                    map,
+                    entCertificateUrl);
+        }
     }
 
     /**
@@ -572,6 +603,13 @@ public class KwsEnterpriseService {
 
         //主体机构
         extracted(reqVo, new IdWorker(1L).nextId());
+        Map<String, Object> map = new HashMap<>();
+        map.put("entName", reqVo.getFirmName());
+        map.put("createByName", reqVo.getContacts());
+        commonService.sendSystemMessage(Collections.singletonList(new UserInfo().setUserId(LoginUserHolder.getUserId()).setEntId(LoginUserHolder.getEntId())),
+                MessageEnum.ENT_DEPT_CERTIFICATE,
+                map,
+                entCertificateUrl);
     }
 
 

+ 20 - 19
sckw-modules/sckw-system/src/main/java/com/sckw/system/service/KwsMenuService.java

@@ -262,26 +262,27 @@ public class KwsMenuService {
 
         List<KwsMenuResVo> menuList = kwsMenuDao.findList(findMenuTreePojo);
         List<KwsMenuResVo> finalList = new ArrayList<>();
+        finalList = menuList;
         //app菜单特殊处理
-        if (SystemTypeEnum.COMPANY.getCode().equals(LoginUserHolder.getSystemType()) && ClientTypeEnum.app.getValue().equals(LoginUserHolder.getClientType())) {
-            for (KwsMenuResVo kwsMenuResVo : menuList) {
-                List<KwsMenuMapping> kwsMenuMappings = kwsMenuMappingDao.selectByMenuId(kwsMenuResVo.getId());
-                if (CollectionUtils.isEmpty(kwsMenuMappings)) {
-                    continue;
-                }
-
-                List<Long> mapIds = kwsMenuMappings.stream().map(KwsMenuMapping::getMappingId).toList();
-                List<KwsMenu> kwsMenus = kwsMenuDao.selectByKeys(mapIds);
-                if (CollectionUtils.isEmpty(kwsMenus)) {
-                    continue;
-                }
-
-                List<KwsMenuResVo> kwsMenuResVos = BeanUtils.copyToList(kwsMenus, KwsMenuResVo.class);
-                finalList.addAll(kwsMenuResVos);
-            }
-        } else {
-            finalList = menuList;
-        }
+//        if (SystemTypeEnum.COMPANY.getCode().equals(LoginUserHolder.getSystemType()) && ClientTypeEnum.app.getValue().equals(LoginUserHolder.getClientType())) {
+//            for (KwsMenuResVo kwsMenuResVo : menuList) {
+//                List<KwsMenuMapping> kwsMenuMappings = kwsMenuMappingDao.selectByMenuId(kwsMenuResVo.getId());
+//                if (CollectionUtils.isEmpty(kwsMenuMappings)) {
+//                    continue;
+//                }
+//
+//                List<Long> mapIds = kwsMenuMappings.stream().map(KwsMenuMapping::getMappingId).toList();
+//                List<KwsMenu> kwsMenus = kwsMenuDao.selectByKeys(mapIds);
+//                if (CollectionUtils.isEmpty(kwsMenus)) {
+//                    continue;
+//                }
+//
+//                List<KwsMenuResVo> kwsMenuResVos = BeanUtils.copyToList(kwsMenus, KwsMenuResVo.class);
+//                finalList.addAll(kwsMenuResVos);
+//            }
+//        } else {
+//            finalList = menuList;
+//        }
 
         List<KwsMenuResVo> rootList = new ArrayList<>();