From 568e38a95cb6fb20fe16b53d17f610aefc6f744f Mon Sep 17 00:00:00 2001
From: rk <94314517@qq.com>
Date: 星期四, 09 十月 2025 18:29:29 +0800
Subject: [PATCH] 钉钉通知 与钥匙柜开发

---
 server/visits/dmvisit_service/src/main/java/com/doumee/service/business/impl/PlatformJobServiceImpl.java |   73 +++++++++++++++++++++++++++++++++++-
 1 files changed, 71 insertions(+), 2 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 4b0620a..6debdc9 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
@@ -245,11 +245,13 @@
                 .selectAs(PlatformWmsJob::getIoCreatedate,PlatformJob::getIoCreatedate)
                 .selectAs(SystemUser::getRealname,PlatformJob::getOutUserName)
                 .selectAs(PlatformBooks::getId,PlatformJob::getBookId)
+                .select("s.REALNAME",PlatformJob::getEditUserName)
                 .leftJoin(Platform.class,Platform::getId,PlatformJob::getPlatformId)
-                .leftJoin(PlatformGroup.class,PlatformGroup::getId,Platform::getGroupId)
+                .leftJoin(PlatformGroup.class,PlatformGroup::getId,PlatformJob::getPlatformGroupId)
                 .leftJoin(PlatformWmsJob.class,PlatformWmsJob::getCarryBillCode,PlatformJob::getBillCode)
                 .leftJoin(SystemUser.class,SystemUser::getId,PlatformJob::getOutUserId)
                 .leftJoin(PlatformBooks.class,PlatformBooks::getJobId,PlatformJob::getId)
+                .leftJoin(" system_user s on t.EDITOR = s.id   ")
                 .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())
@@ -442,7 +444,7 @@
 
             if(com.github.xiaoymin.knife4j.core.util.CollectionUtils.isNotEmpty(platformWmsDetailList)){
                 platformJob.setTotalNum(
-                        platformWmsDetailList.stream().map(m->m.getIoQty()).reduce(BigDecimal.ZERO,BigDecimal::add)
+                        platformWmsDetailList.stream().filter(i->Objects.nonNull(i.getIoQty())).map(m->m.getIoQty()).reduce(BigDecimal.ZERO,BigDecimal::add)
                 );
                 platformWmsJob.setPlatformWmsDetailList(platformWmsDetailList);
                 platformJob.setPlatformWmsJob(platformWmsJob);
@@ -2445,6 +2447,73 @@
 
 
     /**
+     * 鏇存崲鏈堝彴鍒嗛挓
+     * @param param
+     */
+    @Override
+    public void changPlatformGroup(PlatformJob param, LoginUserInfo loginUser){
+        if(param.getId() ==null || param.getPlatformGroupId()==null) {
+            throw  new BusinessException(ResponseStatus.BAD_REQUEST);
+        }
+        PlatformJob model  = platformJobMapper.selectById(param.getId());
+        if(model ==null || Constants.equalsInteger(model.getIsdeleted(),Constants.ONE)){
+            throw  new BusinessException(ResponseStatus.DATA_EMPTY);
+        }
+        if(Constants.equalsInteger(model.getType(),Constants.platformJobType.sgscxh)){
+            throw new BusinessException(ResponseStatus.DATA_EMPTY.getCode(),"銆愬競鍏徃澶栧崗杞﹀嵏璐с�戜綔涓氱被鍨嬩笉鏀寔鏈堝彴缁勫垏鎹�");
+        }
+        //   WAIT_CONFIRM(0, "寰呯‘璁�","寰呯‘璁�" ),
+        //        WART_SIGN_IN(1, "寰呯鍒�","寰呯鍒�" ),
+        //        WAIT_CALL(2, "宸茬鍒�","宸茬鍒�"),
+        if(!Constants.equalsInteger(model.getStatus(),Constants.PlatformJobStatus.WAIT_CONFIRM.getKey())
+                &&!Constants.equalsInteger(model.getStatus(),Constants.PlatformJobStatus.WART_SIGN_IN.getKey())
+                &&!Constants.equalsInteger(model.getStatus(),Constants.PlatformJobStatus.WAIT_CALL.getKey())){
+            throw new BusinessException(ResponseStatus.NOT_ALLOWED.getCode(),"瀵逛笉璧�,涓氬姟鐘舵�佸凡娴佽浆锛屼笉鏀寔鏈堝彴缁勫垏鎹紒");
+        }
+        PlatformGroup group = platformGroupMapper.selectById(param.getPlatformGroupId());
+        if(Objects.isNull(group)|| Constants.equalsInteger(group.getIsdeleted(),Constants.ONE)){
+            throw new BusinessException(ResponseStatus.DATA_EMPTY.getCode(),"鏈煡璇㈠埌鏈堝彴缁勪俊鎭�");
+        }
+        if(Constants.equalsInteger(model.getType(),Constants.platformJobType.zycxh)
+                ||Constants.equalsInteger(model.getType(),Constants.platformJobType.wxcxh)){
+            if( ! Constants.equalsInteger(group.getType(),Constants.ZERO)){
+                throw new BusinessException(ResponseStatus.NOT_ALLOWED.getCode(),"璇ヤ綔涓氬彧鑳藉湪銆愬畨娉扮墿娴佸嵏璐с�戠被鍨嬬殑鏈堝彴缁勪笅浣滀笟");
+            }
+        }
+        if(Constants.equalsInteger(model.getType(),Constants.platformJobType.zyczh)
+                ||Constants.equalsInteger(model.getType(),Constants.platformJobType.wxczh)){
+            if( ! Constants.equalsInteger(group.getType(),Constants.ONE)){
+                throw new BusinessException(ResponseStatus.NOT_ALLOWED.getCode(),"璇ヤ綔涓氬彧鑳藉湪銆愬畨娉扮墿娴佽璐с�戠被鍨嬬殑鏈堝彴缁勪笅浣滀笟");
+            }
+        }
+        if(Constants.equalsInteger(model.getType(),Constants.platformJobType.sgscxh)
+                && !Constants.equalsInteger(group.getType(),Constants.TWO)){
+                throw new BusinessException(ResponseStatus.NOT_ALLOWED.getCode(),"璇ヤ綔涓氬彧鑳藉湪銆愬競鍏徃鍗歌揣銆戠被鍨嬬殑鏈堝彴缁勪笅浣滀笟");
+        }
+        PlatformJob platformJob = new PlatformJob();
+        BeanUtils.copyProperties(model,platformJob);
+        platformJob.setPlatformGroupId(param.getPlatformGroupId());
+        platformJob.setEditDate(new Date());
+        platformJob.setTagVirtual(Constants.ONE);
+        platformJob.setTagVirtualUser(platformJob.getEditor());
+        platformJob.setTagVirtualTime(platformJob.getEditDate());
+        platformJob.setEditor(loginUser.getId());
+       int flag =  platformJobMapper.update(null,new UpdateWrapper<PlatformJob>().lambda()
+                .set(PlatformJob::getEditDate,platformJob.getEditDate())
+                .set(PlatformJob::getTagVirtualTime,platformJob.getTagVirtualTime())
+                .set(PlatformJob::getEditor,platformJob.getEditor())
+                .set(PlatformJob::getPlatformGroupId,param.getPlatformGroupId())
+                .set(PlatformJob::getTagVirtualUser,platformJob.getEditor())
+                .set(PlatformJob::getPlatformId,null)//缃┖鍒嗛厤鐨勬湀鍙颁俊鎭�
+                .in(PlatformJob::getStatus,Constants.PlatformJobStatus.WAIT_CONFIRM.getKey(),
+                        Constants.PlatformJobStatus.WART_SIGN_IN.getKey(),
+                        Constants.PlatformJobStatus.WAIT_CALL.getKey())
+                .eq(PlatformJob::getId,param.getId()));
+        //瀛樺偍鎿嶄綔鏃ュ織
+        savePlatformLog(Constants.PlatformJobLogType.CHANGE_GROUP.getKey(),model,platformJob,
+                Constants.PlatformJobLogType.CHANGE_GROUP.getInfo().replace("{data}",param.getPlatformGroupName()).replace("{data1}",group.getName()));
+    }
+    /**
      * 鎵嬪姩瀹屾垚浣滀笟
      * @param jobIdList
      */

--
Gitblit v1.9.3