From 7b51c9e1abc198a501f7858599da9c116130fd6f Mon Sep 17 00:00:00 2001
From: jiangping <jp@doumee.com>
Date: 星期四, 27 三月 2025 16:47:51 +0800
Subject: [PATCH] Merge remote-tracking branch 'origin/master'

---
 server/visits/dmvisit_service/src/main/java/com/doumee/service/business/impl/PlatformJobServiceImpl.java |  114 +++++++++++++++++++++++++++++++++++++++++++++++++++++++--
 1 files changed, 110 insertions(+), 4 deletions(-)

diff --git a/server/visits/dmvisit_service/src/main/java/com/doumee/service/business/impl/PlatformJobServiceImpl.java b/server/visits/dmvisit_service/src/main/java/com/doumee/service/business/impl/PlatformJobServiceImpl.java
index 92537af..62f6a40 100644
--- a/server/visits/dmvisit_service/src/main/java/com/doumee/service/business/impl/PlatformJobServiceImpl.java
+++ b/server/visits/dmvisit_service/src/main/java/com/doumee/service/business/impl/PlatformJobServiceImpl.java
@@ -223,6 +223,7 @@
 
     @Override
     public List<PlatformJob> findList(PlatformJob platformJob) {
+        platformJob.setIsdeleted(Constants.ZERO);
         QueryWrapper<PlatformJob> wrapper = new QueryWrapper<>(platformJob);
         return platformJobMapper.selectList(wrapper);
     }
@@ -247,6 +248,7 @@
                 .leftJoin(PlatformWmsJob.class,PlatformWmsJob::getCarryBillCode,PlatformJob::getBillCode)
                 .leftJoin(SystemUser.class,SystemUser::getId,PlatformJob::getOutUserId)
                 .leftJoin(PlatformBooks.class,PlatformBooks::getJobId,PlatformJob::getId)
+                .eq(PlatformJob::getIsdeleted,Constants.ZERO)
                 .eq(pageWrap.getModel().getId() != null, PlatformJob::getId, pageWrap.getModel().getId())
                 .eq(pageWrap.getModel().getCreator() != null, PlatformJob::getCreator, pageWrap.getModel().getCreator())
                 .ge(pageWrap.getModel().getCreateDate() != null, PlatformJob::getCreateDate, Utils.Date.getStart(pageWrap.getModel().getCreateDate()))
@@ -336,14 +338,14 @@
                 .isNull(pageWrap.getModel().getJobType() != null && Constants.equalsInteger(Constants.ZERO,pageWrap.getModel().getJobType()), PlatformJob::getContractNum)
                 .exists(StringUtils.isNotBlank(pageWrap.getModel().getWmsContractNum()),
                         "select tt.id from platform_wms_detail tt where tt.isdeleted=0 and tt.contract_num='"+pageWrap.getModel().getWmsContractNum()+"' and  tt.job_id=t.id");
-
-        for(PageWrap.SortData sortData: pageWrap.getSorts()) {
+        queryWrapper.orderByDesc(PlatformJob::getCreateDate);
+        /*for(PageWrap.SortData sortData: pageWrap.getSorts()) {
             if (sortData.getDirection().equalsIgnoreCase(PageWrap.DESC)) {
                 queryWrapper.orderByDesc(sortData.getProperty());
             } else {
                 queryWrapper.orderByAsc(sortData.getProperty());
             }
-        }
+        }*/
        IPage<PlatformJob> platformJobIPage = platformJobJoinMapper.selectJoinPage(page,PlatformJob.class,queryWrapper);
         platformJobIPage.getRecords().forEach(i->{
             i.dealTime();
@@ -685,7 +687,80 @@
         //瀛樺偍鎿嶄綔鏃ュ織
         savePlatformLog(Constants.PlatformJobLogType.SIGN.getKey(),oldPlatformJob,platformJob,
                 Constants.PlatformJobLogType.SIGN.getInfo());
+        //绛惧埌寰俊閫氱煡 2025骞�3鏈�26鏃�14:25:00
+        logger.info("绛惧埌寰俊閫氱煡=========================>寮�濮�====绛惧埌绫诲瀷=>"+signInDTO.getSignType()+"===>浜哄憳涓婚敭=>"+platformGroup.getSignInNoticeUsers());
+        if(!Constants.equalsInteger(signInDTO.getSignType(),Constants.TWO)&&
+                StringUtils.isNotBlank(platformGroup.getSignInNoticeUsers())){
+            logger.info("绛惧埌寰俊閫氱煡=========================>杩涘叆");
+            List<SystemUser> systemUserList = systemUserMapper.selectList(new QueryWrapper<SystemUser>().lambda()
+                    .eq(SystemUser::getDeleted,Constants.ZERO).eq(SystemUser::getStatus,Constants.ZERO).isNotNull(SystemUser::getOpenid)
+                    .in(SystemUser::getMemberId,Arrays.asList(platformGroup.getSignInNoticeUsers().split(",")))
+            );
+            if (com.github.xiaoymin.knife4j.core.util.CollectionUtils.isNotEmpty(systemUserList)) {
+                WxPlatNotice wxPlatNotice = new WxPlatNotice();
+                wxPlatNotice.sendPlatformJobSignNotice(wxNoticeConfigMapper, platformJob,
+                        WxPlatConstants.platformJobContent.platformGroupSignIn,
+                        systemDictDataBiz.queryByCode(Constants.WX_PLATFORM, Constants.WX_PLATFORM_ACCESS_TOKEN).getCode(),
+                        systemUserList.stream().map(i->i.getOpenid()).collect(Collectors.toList())
+                );
+            }
+        }
+        logger.info("绛惧埌寰俊閫氱煡=========================>缁撴潫");
     }
+
+
+    @Override
+    public void sendUnFinishNotice(){
+        //鐘舵�� 0寰呯‘璁� 1寰呯鍒� 2绛夊緟鍙彿 3鍏ュ洯绛夊緟 4宸插彨鍙� 5浣滀笟涓� 6浣滀笟瀹屾垚 7杞Щ涓� 8寮傚父鎸傝捣 9宸叉巿鏉冪鍥� 10宸茬鍥� 11 宸茶繃鍙�  12鍙栨秷锛圵MS锛�
+        List<PlatformJob> platformJobList = platformJobJoinMapper.selectJoinList(PlatformJob.class,
+                new MPJLambdaWrapper<PlatformJob>()
+                        .selectAll(PlatformJob.class)
+                        .eq(PlatformJob::getIsdeleted,Constants.ZERO)
+                        .isNotNull(PlatformJob::getPlatformGroupId)
+                        .apply(" CREATE_DATE < now() ")
+                        .in(PlatformJob::getStatus,Constants.PlatformJobStatus.WAIT_CONFIRM.getKey()
+                                ,Constants.PlatformJobStatus.WART_SIGN_IN.getKey()
+                                ,Constants.PlatformJobStatus.WAIT_CALL.getKey()
+                                ,Constants.PlatformJobStatus.IN_WAIT.getKey()
+                                ,Constants.PlatformJobStatus.CALLED.getKey()
+                                ,Constants.PlatformJobStatus.WORKING.getKey()
+                                ,Constants.PlatformJobStatus.TRANSFERING.getKey()
+                                ,Constants.PlatformJobStatus.EXCEPTION.getKey()
+                                ,Constants.PlatformJobStatus.OVER_NUMBER.getKey()
+                        )
+        );
+        if(com.github.xiaoymin.knife4j.core.util.CollectionUtils.isNotEmpty(platformJobList)){
+            List<Integer> platformGroupId = platformJobList.stream().map(i->i.getPlatformGroupId()).collect(Collectors.toList());
+            if(com.github.xiaoymin.knife4j.core.util.CollectionUtils.isNotEmpty(platformGroupId)){
+                Set<Integer> setList = new HashSet<>(platformGroupId);
+                for (Integer groupId:setList) {
+                    PlatformGroup platformGroup = platformGroupMapper.selectById(groupId);
+                    if(Objects.nonNull(platformGroup)){
+                        List<SystemUser> systemUserList = systemUserMapper.selectList(new QueryWrapper<SystemUser>().lambda()
+                                .eq(SystemUser::getDeleted,Constants.ZERO).eq(SystemUser::getStatus,Constants.ZERO).isNotNull(SystemUser::getOpenid)
+                                .in(SystemUser::getMemberId,Arrays.asList(platformGroup.getUnFinishNoticeUsers().split(",")))
+                        );
+                        if (com.github.xiaoymin.knife4j.core.util.CollectionUtils.isNotEmpty(systemUserList)) {
+                            WxPlatNotice wxPlatNotice = new WxPlatNotice();
+                            wxPlatNotice.sendUnFinishNotice(
+                                    wxNoticeConfigMapper,
+                                    platformJobList.stream().filter(i->Constants.equalsInteger(i.getPlatformGroupId(),groupId)).collect(Collectors.toList()).size(),
+                                    WxPlatConstants.platformJobContent.unFinishNotice,
+                                    systemDictDataBiz.queryByCode(Constants.WX_PLATFORM, Constants.WX_PLATFORM_ACCESS_TOKEN).getCode(),
+                                    systemUserList.stream().map(i->i.getOpenid()).collect(Collectors.toList())
+                            );
+                        }
+                    }
+                }
+            }
+        }
+
+
+
+    }
+
+
+
 
     public void distanceSignIn(SignInDTO signInDTO , PlatformJob platformJob){
         if(Objects.isNull(signInDTO.getLat())
@@ -955,6 +1030,7 @@
             );
         }
     }
+
 
 
 
@@ -1578,7 +1654,9 @@
 
         //骞挎挱 led閫氱煡
         platformJob.setPlatformName(platform.getName());
-        this.broadcastAndLEed(platformJob,Constants.PlatformLedContent.DONE.getInfo(),
+        this.broadcastAndLEed(platformJob,
+                //Constants.PlatformLedContent.DONE.getInfo(),
+                StringUtils.isBlank(platform.getLedContent())?Constants.PlatformLedContent.IDEL_CONTNET.getInfo():platform.getLedContent(),
                 Constants.PlatformBroadcastContent.DONE.getInfo());
         return platformJob;
     }
@@ -2352,5 +2430,33 @@
     }
 
 
+    /**
+     * 鎵嬪姩瀹屾垚浣滀笟
+     * @param jobIdList
+     */
+    @Override
+    public void dealJobFinish(List<Integer> jobIdList){
+        if(com.github.xiaoymin.knife4j.core.util.CollectionUtils.isNotEmpty(jobIdList)){
+            List<PlatformJob> platformJobList = platformJobMapper.selectList(new QueryWrapper<PlatformJob>().lambda()
+                    .eq(PlatformJob::getIsdeleted,Constants.ZERO)
+                    .in(PlatformJob::getStatus,Constants.PlatformJobStatus.WAIT_CONFIRM,Constants.PlatformJobStatus.WART_SIGN_IN)
+                    .in(PlatformJob::getId,jobIdList)
+            );
+            if(com.github.xiaoymin.knife4j.core.util.CollectionUtils.isNotEmpty(platformJobList)){
+
+                platformJobMapper.update(null,new UpdateWrapper<PlatformJob>().lambda()
+                        .set(PlatformJob::getStatus,Constants.PlatformJobStatus.DONE.getKey())
+                        .set(PlatformJob::getDoneDate,new Date())
+                        .in(PlatformJob::getStatus,Constants.PlatformJobStatus.WAIT_CONFIRM,Constants.PlatformJobStatus.WART_SIGN_IN)
+                        .eq(PlatformJob::getIsdeleted,Constants.ZERO)
+                        .in(PlatformJob::getId,platformJobList.stream().map(i->i.getId()).collect(Collectors.toList())));
+
+            }
+
+        }
+
+
+    }
+
 
 }

--
Gitblit v1.9.3