From 3491555981d7b7dd02c677fef3682771bee6e4d7 Mon Sep 17 00:00:00 2001 From: zhaoqiaobo <583671871@qq.com> Date: Mon, 5 Aug 2024 11:16:59 +0800 Subject: [PATCH 01/13] =?UTF-8?q?feat(all):=20=E4=BF=AE=E6=94=B9=E8=87=AA?= =?UTF-8?q?=E6=8F=90=E6=98=8E=E7=BB=86=E6=8A=A5=E8=A1=A8=E5=AF=BC=E5=87=BA?= =?UTF-8?q?=E6=95=B0=E6=8D=AE=E9=94=99=E8=AF=AF=E9=97=AE=E9=A2=98?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit 1 提货扫码人和文员复核人显示id的问题 --- .../reader/BillLoadingDetailsReader.java | 47 +++++++++++++++++-- 1 file changed, 44 insertions(+), 3 deletions(-) diff --git a/blade-service/logpm-report/src/main/java/com/logpm/report/reader/BillLoadingDetailsReader.java b/blade-service/logpm-report/src/main/java/com/logpm/report/reader/BillLoadingDetailsReader.java index 1b1a6cf9c..f2af6da81 100644 --- a/blade-service/logpm-report/src/main/java/com/logpm/report/reader/BillLoadingDetailsReader.java +++ b/blade-service/logpm-report/src/main/java/com/logpm/report/reader/BillLoadingDetailsReader.java @@ -1,14 +1,27 @@ package com.logpm.report.reader; +import cn.hutool.core.collection.CollUtil; +import cn.hutool.core.convert.Convert; +import cn.hutool.core.util.ObjectUtil; +import cn.hutool.core.util.StrUtil; import com.baomidou.mybatisplus.core.conditions.Wrapper; import com.baomidou.mybatisplus.extension.plugins.pagination.Page; +import com.logpm.report.constant.ReportConstants; import com.logpm.report.mapper.ReportBillLoadingMapper; import com.logpm.report.service.ExportReader; -import org.apache.poi.ss.formula.functions.T; +import com.logpm.report.vo.BillLoadingDetailsVO; +import org.springblade.core.secure.utils.AuthUtil; +import org.springblade.core.tool.api.R; +import org.springblade.system.entity.User; +import org.springblade.system.feign.IUserClient; import org.springframework.stereotype.Component; import javax.annotation.Resource; +import java.util.HashSet; import java.util.List; +import java.util.Map; +import java.util.Set; +import java.util.stream.Collectors; /** * @author zhaoqiaobo @@ -19,6 +32,8 @@ public class BillLoadingDetailsReader implements ExportReader { @Resource private ReportBillLoadingMapper billLoadingMapper; + @Resource + private IUserClient userClient; @Override public Long getCount(Wrapper query) { @@ -28,8 +43,34 @@ public class BillLoadingDetailsReader implements ExportReader { } @Override - public List findList(Page page, Wrapper query) { - return billLoadingMapper.getDetailsPage(page, query); + public List findList(Page page, Wrapper query) { + List detailsPage = billLoadingMapper.getDetailsPage(page, query); + if (CollUtil.isNotEmpty(detailsPage)) { + // 组装数据批量去查询用户名称 + Set userIds = new HashSet<>(); + for (BillLoadingDetailsVO detailsVO : detailsPage) { + if (StrUtil.isNotBlank(detailsVO.getScanUser())) { + userIds.add(detailsVO.getScanUser()); + } + if (StrUtil.isNotBlank(detailsVO.getExamineUser())) { + userIds.add(detailsVO.getExamineUser()); + } + } + R> listR = userClient.userInfoByIds(AuthUtil.getTenantId(), CollUtil.join(userIds, ",")); + if (ObjectUtil.equal(ReportConstants.HTTP_SUCCESS_CODE, listR.getCode())) { + List data = listR.getData(); + Map collect = data.stream().collect(Collectors.toMap(User::getId, User::getName)); + for (BillLoadingDetailsVO detailsVO : detailsPage) { + if (StrUtil.isNotEmpty(detailsVO.getScanUser())) { + detailsVO.setScanUser(collect.get(Convert.toLong(detailsVO.getScanUser()))); + } + if (StrUtil.isNotEmpty(detailsVO.getExamineUser())) { + detailsVO.setExamineUser(collect.get(Convert.toLong(detailsVO.getExamineUser()))); + } + } + } + } + return detailsPage; } } From c5c486b4465c37f348589b5794ddedd49c832adc Mon Sep 17 00:00:00 2001 From: "pref_mail@163.com" Date: Mon, 5 Aug 2024 11:35:38 +0800 Subject: [PATCH 02/13] =?UTF-8?q?fix:=E4=BF=AE=E5=A4=8D=E5=90=8C=E6=AD=A5?= =?UTF-8?q?=E8=B4=A6=E5=8F=B7=E9=94=81=20key=20=E4=B8=8D=E4=B8=80=E8=87=B4?= =?UTF-8?q?=E7=9A=84=E9=97=AE=E9=A2=98?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../aspect/JobAnnotationAspect.java | 15 ++++++++------ .../basicdata/aspect/JobAnnotationAspect.java | 15 ++++++++------ .../aspect/ChangeAsyncAnnotationAspect.java | 20 ++++++++++--------- .../aspect/ChangeAsyncAnnotationAspect.java | 20 ++++++++++--------- .../jinpai/aspect/JobAnnotationAspect.java | 15 ++++++++------ .../LocalServerLoginAccountsInterceptor.java | 15 ++++++++------ .../LocalServerLoginAccountsInterceptor.java | 15 ++++++++------ .../LocalServerLoginAccountsInterceptor.java | 15 ++++++++------ .../LocalServerLoginAccountsInterceptor.java | 15 ++++++++------ .../olo/aspect/JobAnnotationAspect.java | 15 ++++++++------ .../LocalServerLoginAccountsInterceptor.java | 15 ++++++++------ .../LocalServerLoginAccountsInterceptor.java | 15 ++++++++------ .../LocalServerLoginAccountsInterceptor.java | 15 ++++++++------ .../factory/aspect/JobAnnotationAspect.java | 16 ++++++++------- .../LocalServerLoginAccountsInterceptor.java | 15 ++++++++------ .../jobhandler/OpFailPackageRetryJob.java | 2 +- .../java/com/logpm/factory/TestService.java | 11 ++++++---- .../patch/aspect/JobAnnotationAspect.java | 15 ++++++++------ .../LocalServerLoginAccountsInterceptor.java | 17 +++++++++------- .../aspect/ChangeAsyncAnnotationAspect.java | 20 ++++++++++--------- .../LocalServerLoginAccountsInterceptor.java | 15 ++++++++------ 21 files changed, 186 insertions(+), 130 deletions(-) diff --git a/blade-service/logpm-aftersales/src/main/java/com/logpm/aftersales/aspect/JobAnnotationAspect.java b/blade-service/logpm-aftersales/src/main/java/com/logpm/aftersales/aspect/JobAnnotationAspect.java index 9d2d5e5e1..bd8f9adae 100644 --- a/blade-service/logpm-aftersales/src/main/java/com/logpm/aftersales/aspect/JobAnnotationAspect.java +++ b/blade-service/logpm-aftersales/src/main/java/com/logpm/aftersales/aspect/JobAnnotationAspect.java @@ -65,15 +65,18 @@ public class JobAnnotationAspect { private JSONObject mockLogin() throws InterruptedException { String account ="shujutongbu"; - JSONObject data =bladeRedis.get(CacheNames.LOCAL_SERVER_USER+account); + String tenantId ="627683"; + String key =CacheNames.LOCAL_SERVER_USER+tenantId+":"+account; + String lockKey =key+":lock"; + JSONObject data =bladeRedis.get(key); if(Objects.isNull(data)){ - boolean flag = redisLockClient.tryLock("local_server_user", LockType.FAIR, 5000, 10000, TimeUnit.MILLISECONDS); + boolean flag = redisLockClient.tryLock(lockKey, LockType.FAIR, 5000, 10000, TimeUnit.MILLISECONDS); if(flag){ - data =bladeRedis.get(CacheNames.LOCAL_SERVER_USER+account); + data =bladeRedis.get(key); if(Objects.isNull(data)){ - data = mockLoginService.mockToken("627683",account); - bladeRedis.setEx(CacheNames.LOCAL_SERVER_USER+account,data,2591990L); - redisLockClient.unLock("local_server_user", LockType.FAIR); + data = mockLoginService.mockToken(tenantId,account); + bladeRedis.setEx(key,data,2591990L); + redisLockClient.unLock(lockKey, LockType.FAIR); } } } diff --git a/blade-service/logpm-basicdata/src/main/java/com/logpm/basicdata/aspect/JobAnnotationAspect.java b/blade-service/logpm-basicdata/src/main/java/com/logpm/basicdata/aspect/JobAnnotationAspect.java index 8efaac5fe..223dbf174 100644 --- a/blade-service/logpm-basicdata/src/main/java/com/logpm/basicdata/aspect/JobAnnotationAspect.java +++ b/blade-service/logpm-basicdata/src/main/java/com/logpm/basicdata/aspect/JobAnnotationAspect.java @@ -64,15 +64,18 @@ public class JobAnnotationAspect { private JSONObject mockLogin() throws InterruptedException { String account ="shujutongbu"; - JSONObject data =bladeRedis.get(CacheNames.LOCAL_SERVER_USER+account); + String tenantId ="627683"; + String key =CacheNames.LOCAL_SERVER_USER+tenantId+":"+account; + String lockKey =key+":lock"; + JSONObject data =bladeRedis.get(key); if(Objects.isNull(data)){ - boolean flag = redisLockClient.tryLock("local_server_user", LockType.FAIR, 5000, 10000, TimeUnit.MILLISECONDS); + boolean flag = redisLockClient.tryLock(lockKey, LockType.FAIR, 5000, 10000, TimeUnit.MILLISECONDS); if(flag){ - data =bladeRedis.get(CacheNames.LOCAL_SERVER_USER+account); + data =bladeRedis.get(key); if(Objects.isNull(data)){ - data = mockLoginService.mockToken("627683",account); - bladeRedis.setEx(CacheNames.LOCAL_SERVER_USER+account,data,2591990L); - redisLockClient.unLock("local_server_user", LockType.FAIR); + data = mockLoginService.mockToken(tenantId,account); + bladeRedis.setEx(key,data,2591990L); + redisLockClient.unLock(lockKey, LockType.FAIR); } } } diff --git a/blade-service/logpm-business/src/main/java/com/logpm/business/aspect/ChangeAsyncAnnotationAspect.java b/blade-service/logpm-business/src/main/java/com/logpm/business/aspect/ChangeAsyncAnnotationAspect.java index 68adae5a1..cfe9aa07b 100644 --- a/blade-service/logpm-business/src/main/java/com/logpm/business/aspect/ChangeAsyncAnnotationAspect.java +++ b/blade-service/logpm-business/src/main/java/com/logpm/business/aspect/ChangeAsyncAnnotationAspect.java @@ -71,15 +71,17 @@ public class ChangeAsyncAnnotationAspect { } // 执行模拟登录 if (StringUtil.isNotBlank(tenantId)) { - JSONObject data = bladeRedis.get(CacheNames.LOCAL_SERVER_USER + tenantId + ":" + account); - if (Objects.isNull(data)) { - boolean flag = redisLockClient.tryLock("local_server_user" + tenantId, LockType.FAIR, 5000, 10000, TimeUnit.MILLISECONDS); - if (flag) { - data = bladeRedis.get(CacheNames.LOCAL_SERVER_USER + tenantId + ":" + account); - if (Objects.isNull(data)) { - data = mockLoginService.mockToken(tenantId, account); - bladeRedis.setEx(CacheNames.LOCAL_SERVER_USER + tenantId + ":" + account, data, 2591990L); - redisLockClient.unLock("local_server_user" + tenantId, LockType.FAIR); + String key =CacheNames.LOCAL_SERVER_USER+tenantId+":"+account; + String lockKey =key+":lock"; + JSONObject data =bladeRedis.get(key); + if(Objects.isNull(data)){ + boolean flag = redisLockClient.tryLock(lockKey, LockType.FAIR, 5000, 10000, TimeUnit.MILLISECONDS); + if(flag){ + data =bladeRedis.get(key); + if(Objects.isNull(data)){ + data = mockLoginService.mockToken(tenantId,account); + bladeRedis.setEx(key,data,2591990L); + redisLockClient.unLock(lockKey, LockType.FAIR); } } } diff --git a/blade-service/logpm-distribution/src/main/java/com/logpm/distribution/aspect/ChangeAsyncAnnotationAspect.java b/blade-service/logpm-distribution/src/main/java/com/logpm/distribution/aspect/ChangeAsyncAnnotationAspect.java index 0c71ce197..c14214b2e 100644 --- a/blade-service/logpm-distribution/src/main/java/com/logpm/distribution/aspect/ChangeAsyncAnnotationAspect.java +++ b/blade-service/logpm-distribution/src/main/java/com/logpm/distribution/aspect/ChangeAsyncAnnotationAspect.java @@ -73,15 +73,17 @@ public class ChangeAsyncAnnotationAspect { } // 执行模拟登录 if (StringUtil.isNotBlank(tenantId)) { - JSONObject data = bladeRedis.get(CacheNames.LOCAL_SERVER_USER + tenantId + ":" + account); - if (Objects.isNull(data)) { - boolean flag = redisLockClient.tryLock("local_server_user" + tenantId, LockType.FAIR, 5000, 10000, TimeUnit.MILLISECONDS); - if (flag) { - data = bladeRedis.get(CacheNames.LOCAL_SERVER_USER + tenantId + ":" + account); - if (Objects.isNull(data)) { - data = mockLoginService.mockToken(tenantId, account); - bladeRedis.setEx(CacheNames.LOCAL_SERVER_USER + tenantId + ":" + account, data, 2591990L); - redisLockClient.unLock("local_server_user" + tenantId, LockType.FAIR); + String key =CacheNames.LOCAL_SERVER_USER+tenantId+":"+account; + String lockKey =key+":lock"; + JSONObject data =bladeRedis.get(key); + if(Objects.isNull(data)){ + boolean flag = redisLockClient.tryLock(lockKey, LockType.FAIR, 5000, 10000, TimeUnit.MILLISECONDS); + if(flag){ + data =bladeRedis.get(key); + if(Objects.isNull(data)){ + data = mockLoginService.mockToken(tenantId,account); + bladeRedis.setEx(key,data,2591990L); + redisLockClient.unLock(lockKey, LockType.FAIR); } } } diff --git a/blade-service/logpm-factory-data/logpm-factory-data-jinpai/src/main/java/com/logpm/factorydata/jinpai/aspect/JobAnnotationAspect.java b/blade-service/logpm-factory-data/logpm-factory-data-jinpai/src/main/java/com/logpm/factorydata/jinpai/aspect/JobAnnotationAspect.java index f20d87566..3489986ce 100644 --- a/blade-service/logpm-factory-data/logpm-factory-data-jinpai/src/main/java/com/logpm/factorydata/jinpai/aspect/JobAnnotationAspect.java +++ b/blade-service/logpm-factory-data/logpm-factory-data-jinpai/src/main/java/com/logpm/factorydata/jinpai/aspect/JobAnnotationAspect.java @@ -64,15 +64,18 @@ public class JobAnnotationAspect { private JSONObject mockLogin() throws InterruptedException { String account ="shujutongbu"; - JSONObject data =bladeRedis.get(CacheNames.LOCAL_SERVER_USER+account); + String tenantId ="627683"; + String key =CacheNames.LOCAL_SERVER_USER+tenantId+":"+account; + String lockKey =key+":lock"; + JSONObject data =bladeRedis.get(key); if(Objects.isNull(data)){ - boolean flag = redisLockClient.tryLock("local_server_user", LockType.FAIR, 5000, 10000, TimeUnit.MILLISECONDS); + boolean flag = redisLockClient.tryLock(lockKey, LockType.FAIR, 5000, 10000, TimeUnit.MILLISECONDS); if(flag){ - data =bladeRedis.get(CacheNames.LOCAL_SERVER_USER+account); + data =bladeRedis.get(key); if(Objects.isNull(data)){ - data = mockLoginService.mockToken("627683",account); - bladeRedis.setEx(CacheNames.LOCAL_SERVER_USER+account,data,2591990L); - redisLockClient.unLock("local_server_user", LockType.FAIR); + data = mockLoginService.mockToken(tenantId,account); + bladeRedis.setEx(key,data,2591990L); + redisLockClient.unLock(lockKey, LockType.FAIR); } } } diff --git a/blade-service/logpm-factory-data/logpm-factory-data-jinpai/src/main/java/com/logpm/factorydata/jinpai/interceptor/LocalServerLoginAccountsInterceptor.java b/blade-service/logpm-factory-data/logpm-factory-data-jinpai/src/main/java/com/logpm/factorydata/jinpai/interceptor/LocalServerLoginAccountsInterceptor.java index 229b2582c..1fb696878 100644 --- a/blade-service/logpm-factory-data/logpm-factory-data-jinpai/src/main/java/com/logpm/factorydata/jinpai/interceptor/LocalServerLoginAccountsInterceptor.java +++ b/blade-service/logpm-factory-data/logpm-factory-data-jinpai/src/main/java/com/logpm/factorydata/jinpai/interceptor/LocalServerLoginAccountsInterceptor.java @@ -45,15 +45,18 @@ public class LocalServerLoginAccountsInterceptor extends HandlerInterceptorAdapt try { org.springblade.common.wrapper.CustomHttpServletRequestWrapper wrappedRequest = new CustomHttpServletRequestWrapper(request); String account ="shujutongbu"; - JSONObject data =bladeRedis.get(CacheNames.LOCAL_SERVER_USER+account); + String tenantId ="627683"; + String key =CacheNames.LOCAL_SERVER_USER+tenantId+":"+account; + String lockKey =key+":lock"; + JSONObject data =bladeRedis.get(key); if(Objects.isNull(data)){ - boolean flag = redisLockClient.tryLock("local_server_user", LockType.FAIR, 5000, 10000, TimeUnit.MILLISECONDS); + boolean flag = redisLockClient.tryLock(lockKey, LockType.FAIR, 5000, 10000, TimeUnit.MILLISECONDS); if(flag){ - data =bladeRedis.get(CacheNames.LOCAL_SERVER_USER+account); + data =bladeRedis.get(key); if(Objects.isNull(data)){ - data = mockLoginService.mockToken("627683",account); - bladeRedis.setEx(CacheNames.LOCAL_SERVER_USER+account,data,2591990L); - redisLockClient.unLock("local_server_user", LockType.FAIR); + data = mockLoginService.mockToken(tenantId,account); + bladeRedis.setEx(key,data,2591990L); + redisLockClient.unLock(lockKey, LockType.FAIR); } } } diff --git a/blade-service/logpm-factory-data/logpm-factory-data-linsy/src/main/java/com/logpm/factorydata/linsy/interceptor/LocalServerLoginAccountsInterceptor.java b/blade-service/logpm-factory-data/logpm-factory-data-linsy/src/main/java/com/logpm/factorydata/linsy/interceptor/LocalServerLoginAccountsInterceptor.java index ddd3c3d8f..6f7eb3152 100644 --- a/blade-service/logpm-factory-data/logpm-factory-data-linsy/src/main/java/com/logpm/factorydata/linsy/interceptor/LocalServerLoginAccountsInterceptor.java +++ b/blade-service/logpm-factory-data/logpm-factory-data-linsy/src/main/java/com/logpm/factorydata/linsy/interceptor/LocalServerLoginAccountsInterceptor.java @@ -45,15 +45,18 @@ public class LocalServerLoginAccountsInterceptor extends HandlerInterceptorAdapt try { org.springblade.common.wrapper.CustomHttpServletRequestWrapper wrappedRequest = new CustomHttpServletRequestWrapper(request); String account ="shujutongbu"; - JSONObject data =bladeRedis.get(CacheNames.LOCAL_SERVER_USER+account); + String tenantId ="627683"; + String key =CacheNames.LOCAL_SERVER_USER+tenantId+":"+account; + String lockKey =key+":lock"; + JSONObject data =bladeRedis.get(key); if(Objects.isNull(data)){ - boolean flag = redisLockClient.tryLock("local_server_user", LockType.FAIR, 5000, 10000, TimeUnit.MILLISECONDS); + boolean flag = redisLockClient.tryLock(lockKey, LockType.FAIR, 5000, 10000, TimeUnit.MILLISECONDS); if(flag){ - data =bladeRedis.get(CacheNames.LOCAL_SERVER_USER+account); + data =bladeRedis.get(key); if(Objects.isNull(data)){ - data = mockLoginService.mockToken("627683",account); - bladeRedis.setEx(CacheNames.LOCAL_SERVER_USER+account,data,2591990L); - redisLockClient.unLock("local_server_user", LockType.FAIR); + data = mockLoginService.mockToken(tenantId,account); + bladeRedis.setEx(key,data,2591990L); + redisLockClient.unLock(lockKey, LockType.FAIR); } } } diff --git a/blade-service/logpm-factory-data/logpm-factory-data-mengtian/src/main/java/com/logpm/factorydata/mengtian/interceptor/LocalServerLoginAccountsInterceptor.java b/blade-service/logpm-factory-data/logpm-factory-data-mengtian/src/main/java/com/logpm/factorydata/mengtian/interceptor/LocalServerLoginAccountsInterceptor.java index e6af2dcf0..a4a353f76 100644 --- a/blade-service/logpm-factory-data/logpm-factory-data-mengtian/src/main/java/com/logpm/factorydata/mengtian/interceptor/LocalServerLoginAccountsInterceptor.java +++ b/blade-service/logpm-factory-data/logpm-factory-data-mengtian/src/main/java/com/logpm/factorydata/mengtian/interceptor/LocalServerLoginAccountsInterceptor.java @@ -40,15 +40,18 @@ public class LocalServerLoginAccountsInterceptor extends HandlerInterceptorAdapt try { CustomHttpServletRequestWrapper wrappedRequest = new CustomHttpServletRequestWrapper(request); String account ="shujutongbu"; - JSONObject data =bladeRedis.get(CacheNames.LOCAL_SERVER_USER+account); + String tenantId ="627683"; + String key =CacheNames.LOCAL_SERVER_USER+tenantId+":"+account; + String lockKey =key+":lock"; + JSONObject data =bladeRedis.get(key); if(Objects.isNull(data)){ - boolean flag = redisLockClient.tryLock("local_server_user", LockType.FAIR, 5000, 10000, TimeUnit.MILLISECONDS); + boolean flag = redisLockClient.tryLock(lockKey, LockType.FAIR, 5000, 10000, TimeUnit.MILLISECONDS); if(flag){ - data =bladeRedis.get(CacheNames.LOCAL_SERVER_USER+account); + data =bladeRedis.get(key); if(Objects.isNull(data)){ - data = mockLoginService.mockToken("627683",account); - bladeRedis.setEx(CacheNames.LOCAL_SERVER_USER+account,data,2591990L); - redisLockClient.unLock("local_server_user", LockType.FAIR); + data = mockLoginService.mockToken(tenantId,account); + bladeRedis.setEx(key,data,2591990L); + redisLockClient.unLock(lockKey, LockType.FAIR); } } } diff --git a/blade-service/logpm-factory-data/logpm-factory-data-mwh/src/main/java/com/logpm/factorydata/mwh/interceptor/LocalServerLoginAccountsInterceptor.java b/blade-service/logpm-factory-data/logpm-factory-data-mwh/src/main/java/com/logpm/factorydata/mwh/interceptor/LocalServerLoginAccountsInterceptor.java index f1c0d7eb1..924d06775 100644 --- a/blade-service/logpm-factory-data/logpm-factory-data-mwh/src/main/java/com/logpm/factorydata/mwh/interceptor/LocalServerLoginAccountsInterceptor.java +++ b/blade-service/logpm-factory-data/logpm-factory-data-mwh/src/main/java/com/logpm/factorydata/mwh/interceptor/LocalServerLoginAccountsInterceptor.java @@ -45,15 +45,18 @@ public class LocalServerLoginAccountsInterceptor extends HandlerInterceptorAdapt try { org.springblade.common.wrapper.CustomHttpServletRequestWrapper wrappedRequest = new CustomHttpServletRequestWrapper(request); String account ="shujutongbu"; - JSONObject data =bladeRedis.get(CacheNames.LOCAL_SERVER_USER+account); + String tenantId ="627683"; + String key =CacheNames.LOCAL_SERVER_USER+tenantId+":"+account; + String lockKey =key+":lock"; + JSONObject data =bladeRedis.get(key); if(Objects.isNull(data)){ - boolean flag = redisLockClient.tryLock("local_server_user", LockType.FAIR, 5000, 10000, TimeUnit.MILLISECONDS); + boolean flag = redisLockClient.tryLock(lockKey, LockType.FAIR, 5000, 10000, TimeUnit.MILLISECONDS); if(flag){ - data =bladeRedis.get(CacheNames.LOCAL_SERVER_USER+account); + data =bladeRedis.get(key); if(Objects.isNull(data)){ - data = mockLoginService.mockToken("627683",account); - bladeRedis.setEx(CacheNames.LOCAL_SERVER_USER+account,data,2591990L); - redisLockClient.unLock("local_server_user", LockType.FAIR); + data = mockLoginService.mockToken(tenantId,account); + bladeRedis.setEx(key,data,2591990L); + redisLockClient.unLock(lockKey, LockType.FAIR); } } } diff --git a/blade-service/logpm-factory-data/logpm-factory-data-olo/src/main/java/com/logpm/factorydata/olo/aspect/JobAnnotationAspect.java b/blade-service/logpm-factory-data/logpm-factory-data-olo/src/main/java/com/logpm/factorydata/olo/aspect/JobAnnotationAspect.java index f51b4515b..981288d42 100644 --- a/blade-service/logpm-factory-data/logpm-factory-data-olo/src/main/java/com/logpm/factorydata/olo/aspect/JobAnnotationAspect.java +++ b/blade-service/logpm-factory-data/logpm-factory-data-olo/src/main/java/com/logpm/factorydata/olo/aspect/JobAnnotationAspect.java @@ -64,15 +64,18 @@ public class JobAnnotationAspect { private JSONObject mockLogin() throws InterruptedException { String account ="shujutongbu"; - JSONObject data =bladeRedis.get(CacheNames.LOCAL_SERVER_USER+account); + String tenantId ="627683"; + String key =CacheNames.LOCAL_SERVER_USER+tenantId+":"+account; + String lockKey =key+":lock"; + JSONObject data =bladeRedis.get(key); if(Objects.isNull(data)){ - boolean flag = redisLockClient.tryLock("local_server_user", LockType.FAIR, 5000, 10000, TimeUnit.MILLISECONDS); + boolean flag = redisLockClient.tryLock(lockKey, LockType.FAIR, 5000, 10000, TimeUnit.MILLISECONDS); if(flag){ - data =bladeRedis.get(CacheNames.LOCAL_SERVER_USER+account); + data =bladeRedis.get(key); if(Objects.isNull(data)){ - data = mockLoginService.mockToken("627683",account); - bladeRedis.setEx(CacheNames.LOCAL_SERVER_USER+account,data,2591990L); - redisLockClient.unLock("local_server_user", LockType.FAIR); + data = mockLoginService.mockToken(tenantId,account); + bladeRedis.setEx(key,data,2591990L); + redisLockClient.unLock(lockKey, LockType.FAIR); } } } diff --git a/blade-service/logpm-factory-data/logpm-factory-data-olo/src/main/java/com/logpm/factorydata/olo/interceptor/LocalServerLoginAccountsInterceptor.java b/blade-service/logpm-factory-data/logpm-factory-data-olo/src/main/java/com/logpm/factorydata/olo/interceptor/LocalServerLoginAccountsInterceptor.java index b54dfe272..f63b4f636 100644 --- a/blade-service/logpm-factory-data/logpm-factory-data-olo/src/main/java/com/logpm/factorydata/olo/interceptor/LocalServerLoginAccountsInterceptor.java +++ b/blade-service/logpm-factory-data/logpm-factory-data-olo/src/main/java/com/logpm/factorydata/olo/interceptor/LocalServerLoginAccountsInterceptor.java @@ -45,15 +45,18 @@ public class LocalServerLoginAccountsInterceptor extends HandlerInterceptorAdapt try { CustomHttpServletRequestWrapper wrappedRequest = new CustomHttpServletRequestWrapper(request); String account ="shujutongbu"; - JSONObject data =bladeRedis.get(CacheNames.LOCAL_SERVER_USER+account); + String tenantId ="627683"; + String key =CacheNames.LOCAL_SERVER_USER+tenantId+":"+account; + String lockKey =key+":lock"; + JSONObject data =bladeRedis.get(key); if(Objects.isNull(data)){ - boolean flag = redisLockClient.tryLock("local_server_user", LockType.FAIR, 5000, 10000, TimeUnit.MILLISECONDS); + boolean flag = redisLockClient.tryLock(lockKey, LockType.FAIR, 5000, 10000, TimeUnit.MILLISECONDS); if(flag){ - data =bladeRedis.get(CacheNames.LOCAL_SERVER_USER+account); + data =bladeRedis.get(key); if(Objects.isNull(data)){ - data = mockLoginService.mockToken("627683",account); - bladeRedis.setEx(CacheNames.LOCAL_SERVER_USER+account,data,2591990L); - redisLockClient.unLock("local_server_user", LockType.FAIR); + data = mockLoginService.mockToken(tenantId,account); + bladeRedis.setEx(key,data,2591990L); + redisLockClient.unLock(lockKey, LockType.FAIR); } } } diff --git a/blade-service/logpm-factory-data/logpm-factory-data-suofeiya/src/main/java/com/logpm/factorydata/suofeiya/interceptor/LocalServerLoginAccountsInterceptor.java b/blade-service/logpm-factory-data/logpm-factory-data-suofeiya/src/main/java/com/logpm/factorydata/suofeiya/interceptor/LocalServerLoginAccountsInterceptor.java index 8f64503e3..d9385aff8 100644 --- a/blade-service/logpm-factory-data/logpm-factory-data-suofeiya/src/main/java/com/logpm/factorydata/suofeiya/interceptor/LocalServerLoginAccountsInterceptor.java +++ b/blade-service/logpm-factory-data/logpm-factory-data-suofeiya/src/main/java/com/logpm/factorydata/suofeiya/interceptor/LocalServerLoginAccountsInterceptor.java @@ -45,15 +45,18 @@ public class LocalServerLoginAccountsInterceptor extends HandlerInterceptorAdapt try { org.springblade.common.wrapper.CustomHttpServletRequestWrapper wrappedRequest = new CustomHttpServletRequestWrapper(request); String account ="shujutongbu"; - JSONObject data =bladeRedis.get(CacheNames.LOCAL_SERVER_USER+account); + String tenantId ="627683"; + String key =CacheNames.LOCAL_SERVER_USER+tenantId+":"+account; + String lockKey =key+":lock"; + JSONObject data =bladeRedis.get(key); if(Objects.isNull(data)){ - boolean flag = redisLockClient.tryLock("local_server_user", LockType.FAIR, 5000, 10000, TimeUnit.MILLISECONDS); + boolean flag = redisLockClient.tryLock(lockKey, LockType.FAIR, 5000, 10000, TimeUnit.MILLISECONDS); if(flag){ - data =bladeRedis.get(CacheNames.LOCAL_SERVER_USER+account); + data =bladeRedis.get(key); if(Objects.isNull(data)){ - data = mockLoginService.mockToken("627683",account); - bladeRedis.setEx(CacheNames.LOCAL_SERVER_USER+account,data,2591990L); - redisLockClient.unLock("local_server_user", LockType.FAIR); + data = mockLoginService.mockToken(tenantId,account); + bladeRedis.setEx(key,data,2591990L); + redisLockClient.unLock(lockKey, LockType.FAIR); } } } diff --git a/blade-service/logpm-factory-data/logpm-factory-data-zbom/src/main/java/com/logpm/factorydata/zbom/interceptor/LocalServerLoginAccountsInterceptor.java b/blade-service/logpm-factory-data/logpm-factory-data-zbom/src/main/java/com/logpm/factorydata/zbom/interceptor/LocalServerLoginAccountsInterceptor.java index 454a094d4..74e209f02 100644 --- a/blade-service/logpm-factory-data/logpm-factory-data-zbom/src/main/java/com/logpm/factorydata/zbom/interceptor/LocalServerLoginAccountsInterceptor.java +++ b/blade-service/logpm-factory-data/logpm-factory-data-zbom/src/main/java/com/logpm/factorydata/zbom/interceptor/LocalServerLoginAccountsInterceptor.java @@ -45,15 +45,18 @@ public class LocalServerLoginAccountsInterceptor extends HandlerInterceptorAdapt try { org.springblade.common.wrapper.CustomHttpServletRequestWrapper wrappedRequest = new CustomHttpServletRequestWrapper(request); String account ="shujutongbu"; - JSONObject data =bladeRedis.get(CacheNames.LOCAL_SERVER_USER+account); + String tenantId ="627683"; + String key =CacheNames.LOCAL_SERVER_USER+tenantId+":"+account; + String lockKey =key+":lock"; + JSONObject data =bladeRedis.get(key); if(Objects.isNull(data)){ - boolean flag = redisLockClient.tryLock("local_server_user", LockType.FAIR, 5000, 10000, TimeUnit.MILLISECONDS); + boolean flag = redisLockClient.tryLock(lockKey, LockType.FAIR, 5000, 10000, TimeUnit.MILLISECONDS); if(flag){ - data =bladeRedis.get(CacheNames.LOCAL_SERVER_USER+account); + data =bladeRedis.get(key); if(Objects.isNull(data)){ - data = mockLoginService.mockToken("627683",account); - bladeRedis.setEx(CacheNames.LOCAL_SERVER_USER+account,data,2591990L); - redisLockClient.unLock("local_server_user", LockType.FAIR); + data = mockLoginService.mockToken(tenantId,account); + bladeRedis.setEx(key,data,2591990L); + redisLockClient.unLock(lockKey, LockType.FAIR); } } } diff --git a/blade-service/logpm-factory/src/main/java/com/logpm/factory/aspect/JobAnnotationAspect.java b/blade-service/logpm-factory/src/main/java/com/logpm/factory/aspect/JobAnnotationAspect.java index 896698111..a038cc1a0 100644 --- a/blade-service/logpm-factory/src/main/java/com/logpm/factory/aspect/JobAnnotationAspect.java +++ b/blade-service/logpm-factory/src/main/java/com/logpm/factory/aspect/JobAnnotationAspect.java @@ -56,17 +56,19 @@ public class JobAnnotationAspect { } private JSONObject mockLogin() throws InterruptedException { - String account ="shujutongbu"; - JSONObject data =bladeRedis.get(CacheNames.LOCAL_SERVER_USER+account); + String tenantId ="627683"; + String key =CacheNames.LOCAL_SERVER_USER+tenantId+":"+account; + String lockKey =key+":lock"; + JSONObject data =bladeRedis.get(key); if(Objects.isNull(data)){ - boolean flag = redisLockClient.tryLock("local_server_user", LockType.FAIR, 5000, 10000, TimeUnit.MILLISECONDS); + boolean flag = redisLockClient.tryLock(lockKey, LockType.FAIR, 5000, 10000, TimeUnit.MILLISECONDS); if(flag){ - data =bladeRedis.get(CacheNames.LOCAL_SERVER_USER+account); + data =bladeRedis.get(key); if(Objects.isNull(data)){ - data = mockLoginService.mockToken("627683",account); - bladeRedis.setEx(CacheNames.LOCAL_SERVER_USER+account,data,2591990L); - redisLockClient.unLock("local_server_user", LockType.FAIR); + data = mockLoginService.mockToken(tenantId,account); + bladeRedis.setEx(key,data,2591990L); + redisLockClient.unLock(lockKey, LockType.FAIR); } } } diff --git a/blade-service/logpm-factory/src/main/java/com/logpm/factory/interceptor/LocalServerLoginAccountsInterceptor.java b/blade-service/logpm-factory/src/main/java/com/logpm/factory/interceptor/LocalServerLoginAccountsInterceptor.java index 67af8ebfd..58f9dc95c 100644 --- a/blade-service/logpm-factory/src/main/java/com/logpm/factory/interceptor/LocalServerLoginAccountsInterceptor.java +++ b/blade-service/logpm-factory/src/main/java/com/logpm/factory/interceptor/LocalServerLoginAccountsInterceptor.java @@ -45,15 +45,18 @@ public class LocalServerLoginAccountsInterceptor extends HandlerInterceptorAdapt try { CustomHttpServletRequestWrapper wrappedRequest = new CustomHttpServletRequestWrapper(request); String account ="shujutongbu"; - JSONObject data =bladeRedis.get(CacheNames.LOCAL_SERVER_USER+account); + String tenantId ="627683"; + String key =CacheNames.LOCAL_SERVER_USER+tenantId+":"+account; + String lockKey =key+":lock"; + JSONObject data =bladeRedis.get(key); if(Objects.isNull(data)){ - boolean flag = redisLockClient.tryLock("local_server_user", LockType.FAIR, 5000, 10000, TimeUnit.MILLISECONDS); + boolean flag = redisLockClient.tryLock(lockKey, LockType.FAIR, 5000, 10000, TimeUnit.MILLISECONDS); if(flag){ - data =bladeRedis.get(CacheNames.LOCAL_SERVER_USER+account); + data =bladeRedis.get(key); if(Objects.isNull(data)){ - data = mockLoginService.mockToken("627683",account); - bladeRedis.setEx(CacheNames.LOCAL_SERVER_USER+account,data,2591990L); - redisLockClient.unLock("local_server_user", LockType.FAIR); + data = mockLoginService.mockToken(tenantId,account); + bladeRedis.setEx(key,data,2591990L); + redisLockClient.unLock(lockKey, LockType.FAIR); } } } diff --git a/blade-service/logpm-factory/src/main/java/com/logpm/factory/jobhandler/OpFailPackageRetryJob.java b/blade-service/logpm-factory/src/main/java/com/logpm/factory/jobhandler/OpFailPackageRetryJob.java index edc18a098..a6ce75355 100644 --- a/blade-service/logpm-factory/src/main/java/com/logpm/factory/jobhandler/OpFailPackageRetryJob.java +++ b/blade-service/logpm-factory/src/main/java/com/logpm/factory/jobhandler/OpFailPackageRetryJob.java @@ -53,7 +53,7 @@ public class OpFailPackageRetryJob { opFailRetryPushPackageService.retry(batchData); - if (batchData.size() == quantity) { + if (batchData.size()== quantity) { batchHandleData(batchData.get(quantity - 1).getId(), quantity); } } diff --git a/blade-service/logpm-factory/src/test/java/com/logpm/factory/TestService.java b/blade-service/logpm-factory/src/test/java/com/logpm/factory/TestService.java index d1a15041a..aaeba9c9c 100644 --- a/blade-service/logpm-factory/src/test/java/com/logpm/factory/TestService.java +++ b/blade-service/logpm-factory/src/test/java/com/logpm/factory/TestService.java @@ -1101,12 +1101,15 @@ public class TestService { } public static void main(String[] args) throws IOException, InterruptedException { + Integer a = new Integer("22222"); - Date data1 = DateUtil.parse("2024-07-23 17:07:23.123","yyyy-MM-dd hh:mm:ss.SSS"); - Date data2 = DateUtil.parse("2024-07-24 17:07:23.123","yyyy-MM-dd hh:mm:ss.SSS"); + System.out.println(22222==a); - System.out.println(data1.getTime()); - System.out.println(data2.getTime()); +// Date data1 = DateUtil.parse("2024-07-23 17:07:23.123","yyyy-MM-dd hh:mm:ss.SSS"); +// Date data2 = DateUtil.parse("2024-07-24 17:07:23.123","yyyy-MM-dd hh:mm:ss.SSS"); +// +// System.out.println(data1.getTime()); +// System.out.println(data2.getTime()); diff --git a/blade-service/logpm-patch/src/main/java/com/logpm/patch/aspect/JobAnnotationAspect.java b/blade-service/logpm-patch/src/main/java/com/logpm/patch/aspect/JobAnnotationAspect.java index e64602118..12df4b310 100644 --- a/blade-service/logpm-patch/src/main/java/com/logpm/patch/aspect/JobAnnotationAspect.java +++ b/blade-service/logpm-patch/src/main/java/com/logpm/patch/aspect/JobAnnotationAspect.java @@ -64,15 +64,18 @@ public class JobAnnotationAspect { private JSONObject mockLogin() throws InterruptedException { String account ="shujutongbu"; - JSONObject data =bladeRedis.get(CacheNames.LOCAL_SERVER_USER+account); + String tenantId ="627683"; + String key =CacheNames.LOCAL_SERVER_USER+tenantId+":"+account; + String lockKey =key+":lock"; + JSONObject data =bladeRedis.get(key); if(Objects.isNull(data)){ - boolean flag = redisLockClient.tryLock("local_server_user", LockType.FAIR, 5000, 10000, TimeUnit.MILLISECONDS); + boolean flag = redisLockClient.tryLock(lockKey, LockType.FAIR, 5000, 10000, TimeUnit.MILLISECONDS); if(flag){ - data =bladeRedis.get(CacheNames.LOCAL_SERVER_USER+account); + data =bladeRedis.get(key); if(Objects.isNull(data)){ - data = mockLoginService.mockToken("627683",account); - bladeRedis.setEx(CacheNames.LOCAL_SERVER_USER+account,data,2591990L); - redisLockClient.unLock("local_server_user", LockType.FAIR); + data = mockLoginService.mockToken(tenantId,account); + bladeRedis.setEx(key,data,2591990L); + redisLockClient.unLock(lockKey, LockType.FAIR); } } } diff --git a/blade-service/logpm-patch/src/main/java/com/logpm/patch/interceptor/LocalServerLoginAccountsInterceptor.java b/blade-service/logpm-patch/src/main/java/com/logpm/patch/interceptor/LocalServerLoginAccountsInterceptor.java index e1c23bab7..2bc52908f 100644 --- a/blade-service/logpm-patch/src/main/java/com/logpm/patch/interceptor/LocalServerLoginAccountsInterceptor.java +++ b/blade-service/logpm-patch/src/main/java/com/logpm/patch/interceptor/LocalServerLoginAccountsInterceptor.java @@ -47,15 +47,18 @@ public class LocalServerLoginAccountsInterceptor extends HandlerInterceptorAdapt try { CustomHttpServletRequestWrapper wrappedRequest = new CustomHttpServletRequestWrapper(request); String account ="shujutongbu"; - JSONObject data =bladeRedis.get(CacheNames.LOCAL_SERVER_USER+account); + String tenantId ="627683"; + String key =CacheNames.LOCAL_SERVER_USER+tenantId+":"+account; + String lockKey =key+":lock"; + JSONObject data =bladeRedis.get(key); if(Objects.isNull(data)){ - boolean flag = redisLockClient.tryLock("local_server_user", LockType.FAIR, 5000, 10000, TimeUnit.MILLISECONDS); + boolean flag = redisLockClient.tryLock(lockKey, LockType.FAIR, 5000, 10000, TimeUnit.MILLISECONDS); if(flag){ - data =bladeRedis.get(CacheNames.LOCAL_SERVER_USER+account); + data =bladeRedis.get(key); if(Objects.isNull(data)){ - data = mockLoginService.mockToken("627683",account); - bladeRedis.setEx(CacheNames.LOCAL_SERVER_USER+account,data,2591990L); - redisLockClient.unLock("local_server_user", LockType.FAIR); + data = mockLoginService.mockToken(tenantId,account); + bladeRedis.setEx(key,data,2591990L); + redisLockClient.unLock(lockKey, LockType.FAIR); } } } @@ -68,7 +71,7 @@ public class LocalServerLoginAccountsInterceptor extends HandlerInterceptorAdapt wrappedRequest.addHeader("Blade-Auth", "bearer "+data.getString("access_token")); HttpHeaders httpHeaders = new HttpHeaders(); httpHeaders.add("Blade-Auth","bearer "+data.get("access_token") ); - httpHeaders.add( "Authorization", "Basic c2FiZXI6c2FiZXJfc2VjcmV0"); + httpHeaders.add( "Authorization", "Basic bG9jYWw6bG9jYWxfc2VjcmV0"); ThreadLocalUtil.put("bladeContext", httpHeaders); diff --git a/blade-service/logpm-trunkline/src/main/java/com/logpm/trunkline/aspect/ChangeAsyncAnnotationAspect.java b/blade-service/logpm-trunkline/src/main/java/com/logpm/trunkline/aspect/ChangeAsyncAnnotationAspect.java index bc17b4c73..be3e04955 100644 --- a/blade-service/logpm-trunkline/src/main/java/com/logpm/trunkline/aspect/ChangeAsyncAnnotationAspect.java +++ b/blade-service/logpm-trunkline/src/main/java/com/logpm/trunkline/aspect/ChangeAsyncAnnotationAspect.java @@ -71,15 +71,17 @@ public class ChangeAsyncAnnotationAspect { } // 执行模拟登录 if (StringUtil.isNotBlank(tenantId)) { - JSONObject data = bladeRedis.get(CacheNames.LOCAL_SERVER_USER + tenantId + ":" + account); - if (Objects.isNull(data)) { - boolean flag = redisLockClient.tryLock("local_server_user" + tenantId, LockType.FAIR, 5000, 10000, TimeUnit.MILLISECONDS); - if (flag) { - data = bladeRedis.get(CacheNames.LOCAL_SERVER_USER + tenantId + ":" + account); - if (Objects.isNull(data)) { - data = mockLoginService.mockToken(tenantId, account); - bladeRedis.setEx(CacheNames.LOCAL_SERVER_USER + tenantId + ":" + account, data, 2591990L); - redisLockClient.unLock("local_server_user" + tenantId, LockType.FAIR); + String key =CacheNames.LOCAL_SERVER_USER+tenantId+":"+account; + String lockKey =key+":lock"; + JSONObject data =bladeRedis.get(key); + if(Objects.isNull(data)){ + boolean flag = redisLockClient.tryLock(lockKey, LockType.FAIR, 5000, 10000, TimeUnit.MILLISECONDS); + if(flag){ + data =bladeRedis.get(key); + if(Objects.isNull(data)){ + data = mockLoginService.mockToken(tenantId,account); + bladeRedis.setEx(key,data,2591990L); + redisLockClient.unLock(lockKey, LockType.FAIR); } } } diff --git a/blade-service/logpm-warehouse/src/main/java/com/logpm/warehouse/config/interceptor/LocalServerLoginAccountsInterceptor.java b/blade-service/logpm-warehouse/src/main/java/com/logpm/warehouse/config/interceptor/LocalServerLoginAccountsInterceptor.java index 515c3e11d..1e1e46913 100644 --- a/blade-service/logpm-warehouse/src/main/java/com/logpm/warehouse/config/interceptor/LocalServerLoginAccountsInterceptor.java +++ b/blade-service/logpm-warehouse/src/main/java/com/logpm/warehouse/config/interceptor/LocalServerLoginAccountsInterceptor.java @@ -44,15 +44,18 @@ public class LocalServerLoginAccountsInterceptor extends HandlerInterceptorAdapt try { CustomHttpServletRequestWrapper wrappedRequest = new CustomHttpServletRequestWrapper(request); String account ="shujutongbu"; - JSONObject data =bladeRedis.get(CacheNames.LOCAL_SERVER_USER+account); + String tenantId ="627683"; + String key =CacheNames.LOCAL_SERVER_USER+tenantId+":"+account; + String lockKey =key+":lock"; + JSONObject data =bladeRedis.get(key); if(Objects.isNull(data)){ - boolean flag = redisLockClient.tryLock("local_server_user", LockType.FAIR, 5000, 10000, TimeUnit.MILLISECONDS); + boolean flag = redisLockClient.tryLock(lockKey, LockType.FAIR, 5000, 10000, TimeUnit.MILLISECONDS); if(flag){ - data =bladeRedis.get(CacheNames.LOCAL_SERVER_USER+account); + data =bladeRedis.get(key); if(Objects.isNull(data)){ - data = mockLoginService.mockToken("627683",account); - bladeRedis.setEx(CacheNames.LOCAL_SERVER_USER+account,data,2591990L); - redisLockClient.unLock("local_server_user", LockType.FAIR); + data = mockLoginService.mockToken(tenantId,account); + bladeRedis.setEx(key,data,2591990L); + redisLockClient.unLock(lockKey, LockType.FAIR); } } } From e6bc229252e42c7b919317d1c032764efea82a41 Mon Sep 17 00:00:00 2001 From: "pref_mail@163.com" Date: Mon, 5 Aug 2024 12:05:27 +0800 Subject: [PATCH 03/13] =?UTF-8?q?fix:=E4=BF=AE=E5=A4=8D=E6=AC=A7=E6=B4=BE?= =?UTF-8?q?=E6=95=B0=E6=8D=AE=E9=87=8D=E6=8E=A8=E6=9F=A5=E8=AF=A2=E5=A4=B1?= =?UTF-8?q?=E8=B4=A5?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../com/logpm/factory/jobhandler/OpFailPackageRetryJob.java | 5 ++++- .../factory/oupai/mapper/OpFailRetryPushPackageMapper.xml | 2 +- 2 files changed, 5 insertions(+), 2 deletions(-) diff --git a/blade-service/logpm-factory/src/main/java/com/logpm/factory/jobhandler/OpFailPackageRetryJob.java b/blade-service/logpm-factory/src/main/java/com/logpm/factory/jobhandler/OpFailPackageRetryJob.java index a6ce75355..b40f1c260 100644 --- a/blade-service/logpm-factory/src/main/java/com/logpm/factory/jobhandler/OpFailPackageRetryJob.java +++ b/blade-service/logpm-factory/src/main/java/com/logpm/factory/jobhandler/OpFailPackageRetryJob.java @@ -51,8 +51,11 @@ public class OpFailPackageRetryJob { private void batchHandleData(Long startId, Integer quantity) { List batchData = opFailRetryPushPackageMapper.selectWaitData(quantity, startId); - opFailRetryPushPackageService.retry(batchData); + log.info("OpFailPackageRetryJob batchHandleData startId:{},quantity:{}",startId,quantity); +// opFailRetryPushPackageService.retry(batchData); + log.info("OpFailPackageRetryJob batchHandleData end"); + log.info("batchData.size {}",batchData.size()); if (batchData.size()== quantity) { batchHandleData(batchData.get(quantity - 1).getId(), quantity); } diff --git a/blade-service/logpm-factory/src/main/java/com/logpm/factory/oupai/mapper/OpFailRetryPushPackageMapper.xml b/blade-service/logpm-factory/src/main/java/com/logpm/factory/oupai/mapper/OpFailRetryPushPackageMapper.xml index 825e5078b..6edbdc657 100644 --- a/blade-service/logpm-factory/src/main/java/com/logpm/factory/oupai/mapper/OpFailRetryPushPackageMapper.xml +++ b/blade-service/logpm-factory/src/main/java/com/logpm/factory/oupai/mapper/OpFailRetryPushPackageMapper.xml @@ -24,7 +24,7 @@ SELECT * FROM logpm_factory.op_fail_retry_push_package WHERE push_status = 1 - id > #{startId} + and id > #{startId} ORDER BY id LIMIT #{limit} From 244f97815634d931f51e823117d024dcf34da777 Mon Sep 17 00:00:00 2001 From: zhaoqiaobo <583671871@qq.com> Date: Mon, 5 Aug 2024 14:25:33 +0800 Subject: [PATCH 04/13] =?UTF-8?q?feat(all):=20=E8=87=AA=E6=8F=90=E6=98=8E?= =?UTF-8?q?=E7=BB=86=E5=92=8C=E9=85=8D=E9=80=81=E6=98=8E=E7=BB=86=E6=8A=A5?= =?UTF-8?q?=E8=A1=A8=E5=A2=9E=E5=8A=A0=E7=AD=BE=E6=94=B6=E6=95=B0=E9=87=8F?= =?UTF-8?q?=E5=AD=97=E6=AE=B5?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../com/logpm/report/mapper/ReportBillLoadingMapper.xml | 6 ++++++ .../java/com/logpm/report/mapper/ReportDeliverMapper.xml | 5 +++++ .../main/java/com/logpm/report/vo/BillLoadingDetailsVO.java | 4 ++++ .../src/main/java/com/logpm/report/vo/ReportDetailVO.java | 4 ++++ 4 files changed, 19 insertions(+) diff --git a/blade-service/logpm-report/src/main/java/com/logpm/report/mapper/ReportBillLoadingMapper.xml b/blade-service/logpm-report/src/main/java/com/logpm/report/mapper/ReportBillLoadingMapper.xml index a6d28ac2f..13a0a41b5 100644 --- a/blade-service/logpm-report/src/main/java/com/logpm/report/mapper/ReportBillLoadingMapper.xml +++ b/blade-service/logpm-report/src/main/java/com/logpm/report/mapper/ReportBillLoadingMapper.xml @@ -11,6 +11,7 @@ order_code, packet_bar_code, train_number, + sign_num, firsts, second, third_product, @@ -31,6 +32,7 @@ dsa.order_code, t.packet_bar_code, dsa.train_number, + 1 sign_num, dpl.firsts, dpl.second, dpl.third_product, @@ -59,6 +61,7 @@ order_code, packet_bar_code, train_number, + sign_num, firsts, second, third_product, @@ -79,6 +82,7 @@ dsa.order_code, '' packet_bar_code, dsa.train_number, + 1 sign_num, '' firsts, '' second, '' third_product, @@ -108,6 +112,7 @@ order_code, packet_bar_code, train_number, + sign_num, firsts, second, third_product, @@ -128,6 +133,7 @@ dsa.order_code, dpl.order_package_code packet_bar_code, dsa.train_number, + dbls.quantity sign_num, dpl.firsts, dpl.second, dpl.third_product, diff --git a/blade-service/logpm-report/src/main/java/com/logpm/report/mapper/ReportDeliverMapper.xml b/blade-service/logpm-report/src/main/java/com/logpm/report/mapper/ReportDeliverMapper.xml index 63144e956..93cdc687b 100644 --- a/blade-service/logpm-report/src/main/java/com/logpm/report/mapper/ReportDeliverMapper.xml +++ b/blade-service/logpm-report/src/main/java/com/logpm/report/mapper/ReportDeliverMapper.xml @@ -342,6 +342,7 @@ lds_signee_name, signing_status, signing_time, + sign_num, examine_user_name, abnormal_signing, abnormal_loading, @@ -374,6 +375,7 @@ ldsa.customer_telephone delivery_phone, ldsa.customer_address delivery_address, wi.consignee consignee, + 1 sign_num, wi.consignee_name consignee_name, wi.consignee_mobile consignee_mobile, dpl.waybill_number waybill_no, @@ -495,6 +497,7 @@ conditions, firsts, decond, + third_product, material_code, material_name, @@ -509,6 +512,7 @@ lds_signee_name, signing_status, signing_time, + sign_num, examine_user_name, abnormal_signing, abnormal_loading, @@ -573,6 +577,7 @@ WHEN ldl.signfor_state = 2 THEN '已签收' END driver_signing, + ldl.received_quantity sign_num, ldl.scan_time unload_time, ldl.scan_user un_administrators_name, diff --git a/blade-service/logpm-report/src/main/java/com/logpm/report/vo/BillLoadingDetailsVO.java b/blade-service/logpm-report/src/main/java/com/logpm/report/vo/BillLoadingDetailsVO.java index 50250913a..65d2fa2fa 100644 --- a/blade-service/logpm-report/src/main/java/com/logpm/report/vo/BillLoadingDetailsVO.java +++ b/blade-service/logpm-report/src/main/java/com/logpm/report/vo/BillLoadingDetailsVO.java @@ -101,4 +101,8 @@ public class BillLoadingDetailsVO implements Serializable { @ExcelProperty("文员复核人") private String examineUser; + @ApiModelProperty(value = "签收数量") + @ExcelProperty("签收数量") + private String signNum; + } diff --git a/blade-service/logpm-report/src/main/java/com/logpm/report/vo/ReportDetailVO.java b/blade-service/logpm-report/src/main/java/com/logpm/report/vo/ReportDetailVO.java index 6c8014dcc..67c955615 100644 --- a/blade-service/logpm-report/src/main/java/com/logpm/report/vo/ReportDetailVO.java +++ b/blade-service/logpm-report/src/main/java/com/logpm/report/vo/ReportDetailVO.java @@ -161,6 +161,10 @@ public class ReportDetailVO implements Serializable { @ExcelProperty("签收人") private String ldsSigneeName; + @ApiModelProperty(value = "签收数量") + @ExcelProperty("签收数量") + private String signNum; + @ApiModelProperty(value = "文员审核状态") @ExcelProperty("文员审核状态") private String signingStatus; From 929e4e0e04b6967414a954770605be55235f481b Mon Sep 17 00:00:00 2001 From: PigBaoBei <2739175034@qq.com> Date: Mon, 5 Aug 2024 15:22:49 +0800 Subject: [PATCH 05/13] =?UTF-8?q?=E8=87=AA=E6=8F=90=E5=A2=9E=E5=8A=A0?= =?UTF-8?q?=E6=97=A5=E5=BF=97=E8=BE=93=E5=87=BA?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../common/constant/WorkNodeEnums.java | 2 +- .../DistributionParcelListServiceImpl.java | 62 ++++++++++++------- .../DistrilbutionBillLadingServiceImpl.java | 44 +++++++++++-- 3 files changed, 80 insertions(+), 28 deletions(-) diff --git a/blade-biz-common/src/main/java/org/springblade/common/constant/WorkNodeEnums.java b/blade-biz-common/src/main/java/org/springblade/common/constant/WorkNodeEnums.java index f5d7a9c77..5f49f1a6c 100644 --- a/blade-biz-common/src/main/java/org/springblade/common/constant/WorkNodeEnums.java +++ b/blade-biz-common/src/main/java/org/springblade/common/constant/WorkNodeEnums.java @@ -62,7 +62,7 @@ public enum WorkNodeEnums implements Serializable { CANCEL_DELIVERY(301030, "计划取消"), PLAN_BILLOFLADING(301040, "计划自提"), CANCEL_BILLOFLADING(301050, "取消自提"), - SIGN_BILLOFLADING(301050, "自提签收"), + SIGN_BILLOFLADING(301080, "自提签收"), PLAN_DISTRIBUTION(301060, "计划配车"), CANCEL_DISTRIBUTION(301070, "取消配车"), diff --git a/blade-service/logpm-distribution/src/main/java/com/logpm/distribution/service/impl/DistributionParcelListServiceImpl.java b/blade-service/logpm-distribution/src/main/java/com/logpm/distribution/service/impl/DistributionParcelListServiceImpl.java index 888c38026..f84dc6f4d 100644 --- a/blade-service/logpm-distribution/src/main/java/com/logpm/distribution/service/impl/DistributionParcelListServiceImpl.java +++ b/blade-service/logpm-distribution/src/main/java/com/logpm/distribution/service/impl/DistributionParcelListServiceImpl.java @@ -519,30 +519,46 @@ public class DistributionParcelListServiceImpl extends BaseServiceImpl { //查询有没有打托数据 - //查询包件有没有物料 - List list = distributionParcelDetailsService.list(Wrappers.query().lambda() - .eq(DistributionParcelDetailsEntity::getParcelListId, i.getId()) - ); - if (!list.isEmpty()) { - //有 - list.stream().collect(Collectors.groupingBy(DistributionParcelDetailsEntity::getEncoded)) - .forEach((kk, vv) -> { - DistributionParcelListEntity parcelListEntity = new DistributionParcelListEntity(); - BeanUtil.copyProperties(vv.get(0), parcelListEntity); - parcelListEntity.setQuantity(sum); - parcelListEntity.setMaterialName(vv.get(0).getName()); - parcelListEntity.setMaterialCode(vv.get(0).getEncoded()); - parcelListEntity.setMaterialUnit(vv.get(0).getUnit()); - // 添加库存品信息 - //查询在库订单信息 - DistributionStockArticleEntity distributionStockArticleEntity = distributionStockArticleMapper.selectById(parcelListEntity.getStockArticleId()); - if (ObjectUtil.isEmpty(distributionStockArticleEntity.getMallId())) { - throw new ServiceException("订单的客户数据异常,无法转换!!"); - } - addStockList(distributionStockArticleEntity, parcelListEntity, 1); - }); +// //查询包件有没有物料 +// List list = distributionParcelDetailsService.list(Wrappers.query().lambda() +// .eq(DistributionParcelDetailsEntity::getParcelListId, i.getId()) +// ); +// if (!list.isEmpty()) { +// //有 +// list.stream().collect(Collectors.groupingBy(DistributionParcelDetailsEntity::getEncoded)) +// .forEach((kk, vv) -> { +// DistributionParcelListEntity parcelListEntity = new DistributionParcelListEntity(); +// BeanUtil.copyProperties(vv.get(0), parcelListEntity); +// parcelListEntity.setQuantity(sum); +// parcelListEntity.setMaterialName(vv.get(0).getName()); +// parcelListEntity.setMaterialCode(vv.get(0).getEncoded()); +// parcelListEntity.setMaterialUnit(vv.get(0).getUnit()); +// // 添加库存品信息 +// //查询在库订单信息 +// DistributionStockArticleEntity distributionStockArticleEntity = distributionStockArticleMapper.selectById(parcelListEntity.getStockArticleId()); +// if (ObjectUtil.isEmpty(distributionStockArticleEntity.getMallId())) { +// throw new ServiceException("订单的客户数据异常,无法转换!!"); +// } +// addStockList(distributionStockArticleEntity, parcelListEntity, 1); +// }); +// } + + + + DistributionParcelListEntity parcelListEntity = new DistributionParcelListEntity(); + BeanUtil.copyProperties(v, parcelListEntity); + parcelListEntity.setQuantity(sum); + parcelListEntity.setMaterialName(i.getMaterialName()); + parcelListEntity.setMaterialCode(i.getMaterialCode()); + parcelListEntity.setMaterialUnit(i.getMaterialUnit()); + // 添加库存品信息 + //查询在库订单信息 + DistributionStockArticleEntity distributionStockArticleEntity = distributionStockArticleMapper.selectById(parcelListEntity.getStockArticleId()); + if (ObjectUtil.isEmpty(distributionStockArticleEntity.getMallId())) { + throw new ServiceException("订单的客户数据异常,无法转换!!"); } - //修改状态 + addStockList(distributionStockArticleEntity, parcelListEntity, 1); +// //修改状态 DistributionParcelListEntity parcelList = new DistributionParcelListEntity(); parcelList.setId(i.getId()); parcelList.setConditions(2); diff --git a/blade-service/logpm-distribution/src/main/java/com/logpm/distribution/service/impl/DistrilbutionBillLadingServiceImpl.java b/blade-service/logpm-distribution/src/main/java/com/logpm/distribution/service/impl/DistrilbutionBillLadingServiceImpl.java index 7dcf5b917..721fe03ae 100644 --- a/blade-service/logpm-distribution/src/main/java/com/logpm/distribution/service/impl/DistrilbutionBillLadingServiceImpl.java +++ b/blade-service/logpm-distribution/src/main/java/com/logpm/distribution/service/impl/DistrilbutionBillLadingServiceImpl.java @@ -1136,11 +1136,16 @@ public class DistrilbutionBillLadingServiceImpl extends BaseServiceImpl> packageMap = distributionParcelListEntities.stream().collect(Collectors.groupingBy(DistributionParcelListEntity::getConditions)); List ladingScanEntities = new ArrayList<>(); + StringBuilder builder = new StringBuilder(); + List logList = new ArrayList<>(); if (!packageMap.isEmpty()) { ladingScanEntities = handleSignPackage(packageMap, distrilbutionBillLading.getId(), myCurrentWarehouse); if (!ladingScanEntities.isEmpty()) { +// String orderPackageCodes = ladingScanEntities.stream().map(DistributionBillLadingScanEntity::getPacketBarCode).collect(Collectors.joining(",")); + List orderPackageCodeList = ladingScanEntities.stream().map(DistributionBillLadingScanEntity::getPacketBarCode).collect(Collectors.toList()); + for (String orderPackageCode : orderPackageCodeList) { + builder.append(orderPackageCode).append(","); + String content = "包件在" + myCurrentWarehouse.getName() + "由" + AuthUtil.getNickName() + "后台签收,自提任务号:" + billLadingEntity.getPickupBatch() ; + JSONObject aaa = handleLogJSONObject(myCurrentWarehouse, AuthUtil.getUser(), orderPackageCode, content, WorkNodeEnums.SIGN_BILLOFLADING.getCode()); + logList.add(aaa); +// orderPackageCodes.add(orderPackageCode); + } // 进行签收扫描数据补录 distributionBillLadingScanService.saveBatch(ladingScanEntities); - String collect = ladingScanEntities.stream().map(DistributionBillLadingScanEntity::getPacketBarCode).collect(Collectors.joining(",")); - warehouseUpdownTypeClient.downPackageAndDelTrayAndIsUpdate(collect, myCurrentWarehouse.getId(), "后台PC自提签收下架", false); +// String collect = ladingScanEntities.stream().map(DistributionBillLadingScanEntity::getPacketBarCode).collect(Collectors.joining(",")); + +// 进行日志记录 + +// warehouseUpdownTypeClient.downPackageAndDelTrayAndIsUpdate(collect, myCurrentWarehouse.getId(), "后台PC自提签收下架", false); } + if (Func.isNotEmpty(builder)){ + String string = builder.deleteCharAt(builder.length() - 1).toString(); + warehouseUpdownTypeClient.downPackageOrDelTray(string, myCurrentWarehouse.getId(), "签收下架解托"); + + } + if (!logList.isEmpty()) { + trunklinePackageTrackLogClient.addPackageTrackLog(logList); + } } + //维护自提单状态 distrilbutionBillLading.setConditions(BillLadingStatusConstant.yitihuo.getValue()); distributionBillLadingScanService.list(Wrappers.query().lambda() @@ -3389,6 +3417,14 @@ public class DistrilbutionBillLadingServiceImpl extends BaseServiceImpl logList = new ArrayList<>(); + JSONObject aaa = handleLogJSONObject(myCurrentWarehouse, AuthUtil.getUser(), distributionBillLadingScan.getPacketBarCode(), content, WorkNodeEnums.SIGN_BILLOFLADING.getCode()); + logList.add(aaa); + trunklinePackageTrackLogClient.addPackageTrackLog(logList); } else { return Resp.scanFail("当前订单,包件不存在!!", "当前订单,包件不存在!!"); } From f737b6abf52b05d2928b1361f2b96adaa53158a0 Mon Sep 17 00:00:00 2001 From: PigBaoBei <2739175034@qq.com> Date: Mon, 5 Aug 2024 15:31:38 +0800 Subject: [PATCH 06/13] =?UTF-8?q?=E8=87=AA=E6=8F=90=E8=AF=A6=E6=83=85?= =?UTF-8?q?=E5=8C=85=E4=BB=B6=E5=BA=93=E4=BD=8D=E6=89=98=E7=9B=98=E8=B0=83?= =?UTF-8?q?=E6=95=B4?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../distribution/mapper/DistrilbutionBillStockMapper.xml | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/blade-service/logpm-distribution/src/main/java/com/logpm/distribution/mapper/DistrilbutionBillStockMapper.xml b/blade-service/logpm-distribution/src/main/java/com/logpm/distribution/mapper/DistrilbutionBillStockMapper.xml index afe056c7f..87966d3d5 100644 --- a/blade-service/logpm-distribution/src/main/java/com/logpm/distribution/mapper/DistrilbutionBillStockMapper.xml +++ b/blade-service/logpm-distribution/src/main/java/com/logpm/distribution/mapper/DistrilbutionBillStockMapper.xml @@ -177,8 +177,8 @@ ldpl.send_warehouse_name sendWarehouseName, ldpl.order_code orderCode, ldpl.service_number serviceNumber, - lwtg.tray_code pallet, - lwug.allocation_title goodsAllocation, + ldpl.pallet pallet, + ldpl.goods_allocation goodsAllocation, ldpl.order_package_status orderPackageStatus, case when lds.id is null then '未备货' From 1e0c4226bbf29b2882285d388d2c087f4e31aef4 Mon Sep 17 00:00:00 2001 From: PigBaoBei <2739175034@qq.com> Date: Mon, 5 Aug 2024 15:36:59 +0800 Subject: [PATCH 07/13] =?UTF-8?q?=E8=87=AA=E6=8F=90=E6=89=98=E7=9B=98?= =?UTF-8?q?=E5=BA=93=E4=BD=8D=E6=9F=A5=E8=AF=A2=E8=B0=83=E6=95=B4?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../mapper/DistrilbutionBillStockMapper.xml | 10 ++-------- 1 file changed, 2 insertions(+), 8 deletions(-) diff --git a/blade-service/logpm-distribution/src/main/java/com/logpm/distribution/mapper/DistrilbutionBillStockMapper.xml b/blade-service/logpm-distribution/src/main/java/com/logpm/distribution/mapper/DistrilbutionBillStockMapper.xml index 87966d3d5..ae459a3af 100644 --- a/blade-service/logpm-distribution/src/main/java/com/logpm/distribution/mapper/DistrilbutionBillStockMapper.xml +++ b/blade-service/logpm-distribution/src/main/java/com/logpm/distribution/mapper/DistrilbutionBillStockMapper.xml @@ -142,14 +142,8 @@ (select IFNULL(sum(lds.stock_quantity),0) from logpm_distribution_stock lds where lds.stock_article = ldbs.stock_article_id AND lds.bill_lading_id = ldbl.id ) preparedQuantity , - (select COALESCE(GROUP_CONCAT(DISTINCT lwtg.tray_code SEPARATOR ','), '') - from logpm_distribution_parcel_list ldpl - LEFT JOIN logpm_warehouse_tray_goods lwtg on lwtg.association_id = ldpl.id and lwtg.association_type = '3' - where ldpl.stock_article_id = ldbs.stock_article_id) pallet , - (select COALESCE(GROUP_CONCAT(DISTINCT lwug.allocation_title SEPARATOR ','), '') - from logpm_distribution_parcel_list ldpl - LEFT JOIN logpm_warehouse_updown_goods lwug on lwug.association_id = ldpl.id and lwug.association_type = '3' - where ldpl.stock_article_id = ldbs.stock_article_id) goodsAllocation, + ldsa.trays pallet , + ldsa.allocation goodsAllocation, ldsa.service_number serviceNumber,ldsa.waybill_number waybillNumber,ldsa.train_number trainNumber,ldsa.send_warehouse_name sendWarehouseName, GROUP_CONCAT(DISTINCT ldbls.scan_user) AS scanUser ,MAX(ldbls.create_time) AS signingTime from From d3b6dee9309cc63c8af5888d04a7200778ebe951 Mon Sep 17 00:00:00 2001 From: zhenghaoyu Date: Mon, 5 Aug 2024 16:24:16 +0800 Subject: [PATCH 08/13] =?UTF-8?q?1.=E5=B9=B2=E7=BA=BFbug=E4=BF=AE=E5=A4=8D?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../common/constant/WorkNodeEnums.java | 3 +- .../feign/IBasicdataBrandClient.java | 6 ++ .../oldproject/feign/IOrderDetailClient.java | 4 ++ .../com/logpm/trunkline/dto/LoadCarsDTO.java | 1 + .../trunkline/vo/TrunklineCarsLoadVO.java | 1 + .../basicdata/feign/BasicdataBrandClient.java | 11 ++++ .../DistributionStockArticleServiceImpl.java | 23 +++++--- .../oldproject/feign/OrderDetailClient.java | 6 ++ .../oldproject/mapper/OrderDetailMapper.java | 5 +- .../oldproject/mapper/OrderDetailMapper.xml | 9 +++ .../service/IOrderDetailService.java | 3 + .../service/impl/OrderDetailServiceImpl.java | 6 ++ .../impl/SyncOrderInfoServiceImpl.java | 2 +- .../controller/CarsLoadController.java | 9 ++- .../mapper/TrunklineCarsLoadMapper.xml | 6 +- .../mapper/TrunklineLoadSignOrderMapper.xml | 10 +++- .../service/impl/OpenOrderServiceImpl.java | 57 ++++++++++++++++++- .../impl/TrunklineCarsLoadServiceImpl.java | 19 ++++--- .../TrunklineWaybillPackageServiceImpl.java | 25 ++++---- 19 files changed, 167 insertions(+), 39 deletions(-) diff --git a/blade-biz-common/src/main/java/org/springblade/common/constant/WorkNodeEnums.java b/blade-biz-common/src/main/java/org/springblade/common/constant/WorkNodeEnums.java index 5f49f1a6c..fdb7aa2fa 100644 --- a/blade-biz-common/src/main/java/org/springblade/common/constant/WorkNodeEnums.java +++ b/blade-biz-common/src/main/java/org/springblade/common/constant/WorkNodeEnums.java @@ -16,7 +16,7 @@ public enum WorkNodeEnums implements Serializable { INITIAL_DATA_ENTRY(101010, "数据入库"), INITIAL_WAREHOUSE_ENTRY(101020, "始发仓入库"), - BILLING(102010, "开单"), + OPEN_ORDER(102010, "开单"), CHANGE_ORDER(102020, "改单"), REVIEW_ORDER(102030, "审单"), @@ -37,6 +37,7 @@ public enum WorkNodeEnums implements Serializable { CANCEL_TRIPARTITE_TRANSFER_DEPART(104020, "三方中转取消发车"), ARRICE_TRIPARTITE_TRANSFER_DEPART(104030, "三方中转到达"), SIGN_TRIPARTITE_TRANSFER_DEPART(104040, "三方中转签收"), + UNLOAD_TRIPARTITE_TRANSFER_DEPART(104050, "三方中转卸车"), UNLOAD_INCOMING_WAREHOUSE(105010,"卸车入库"), TRANSFER_WAREHOUSE_UNLOADING(105020, "卸车确认"), diff --git a/blade-service-api/logpm-basicdata-api/src/main/java/com/logpm/basicdata/feign/IBasicdataBrandClient.java b/blade-service-api/logpm-basicdata-api/src/main/java/com/logpm/basicdata/feign/IBasicdataBrandClient.java index fa19bf326..5ed98cadf 100644 --- a/blade-service-api/logpm-basicdata-api/src/main/java/com/logpm/basicdata/feign/IBasicdataBrandClient.java +++ b/blade-service-api/logpm-basicdata-api/src/main/java/com/logpm/basicdata/feign/IBasicdataBrandClient.java @@ -22,9 +22,12 @@ import org.springblade.common.constant.ModuleNameConstant; import org.springblade.core.mp.support.BladePage; import org.springframework.cloud.openfeign.FeignClient; import org.springframework.web.bind.annotation.GetMapping; +import org.springframework.web.bind.annotation.PostMapping; +import org.springframework.web.bind.annotation.RequestBody; import org.springframework.web.bind.annotation.RequestParam; import java.util.List; +import java.util.Set; /** * 基础品牌表 Feign接口类 @@ -55,4 +58,7 @@ public interface IBasicdataBrandClient { @GetMapping(API_PREFIX+"/findEntityByName") BasicdataBrandEntity findEntityByName(@RequestParam("brand") String brand); + + @PostMapping(API_PREFIX+"/findListByNames") + List findListByNames(@RequestBody Set brandSet); } diff --git a/blade-service-api/logpm-old-project-api/src/main/java/com/logpm/oldproject/feign/IOrderDetailClient.java b/blade-service-api/logpm-old-project-api/src/main/java/com/logpm/oldproject/feign/IOrderDetailClient.java index 52846cc43..dfbe015ea 100644 --- a/blade-service-api/logpm-old-project-api/src/main/java/com/logpm/oldproject/feign/IOrderDetailClient.java +++ b/blade-service-api/logpm-old-project-api/src/main/java/com/logpm/oldproject/feign/IOrderDetailClient.java @@ -22,6 +22,7 @@ import org.springframework.cloud.openfeign.FeignClient; import org.springframework.web.bind.annotation.GetMapping; import org.springframework.web.bind.annotation.RequestParam; +import java.util.Date; import java.util.List; /** @@ -45,4 +46,7 @@ public interface IOrderDetailClient { @GetMapping(API_PREFIX + "/findEntityByUnitNoAndOldWarehosueId") OrderDetailEntity findEntityByUnitNoAndOldWarehosueId(@RequestParam String unitNo, @RequestParam Integer oldWarehouseId); + + @GetMapping(API_PREFIX + "/findRukuTime") + Date findRukuTime(@RequestParam String unitNo, @RequestParam Integer oldWarehouseId); } diff --git a/blade-service-api/logpm-trunkline-api/src/main/java/com/logpm/trunkline/dto/LoadCarsDTO.java b/blade-service-api/logpm-trunkline-api/src/main/java/com/logpm/trunkline/dto/LoadCarsDTO.java index 584ac8f4c..974f8f4b9 100644 --- a/blade-service-api/logpm-trunkline-api/src/main/java/com/logpm/trunkline/dto/LoadCarsDTO.java +++ b/blade-service-api/logpm-trunkline-api/src/main/java/com/logpm/trunkline/dto/LoadCarsDTO.java @@ -39,6 +39,7 @@ public class LoadCarsDTO implements Serializable { private String settlementPerson; private Long warehouseId; + private List warehouseIds; private Integer startCarType; private Integer loadingType; diff --git a/blade-service-api/logpm-trunkline-api/src/main/java/com/logpm/trunkline/vo/TrunklineCarsLoadVO.java b/blade-service-api/logpm-trunkline-api/src/main/java/com/logpm/trunkline/vo/TrunklineCarsLoadVO.java index 61878dbde..082215244 100644 --- a/blade-service-api/logpm-trunkline-api/src/main/java/com/logpm/trunkline/vo/TrunklineCarsLoadVO.java +++ b/blade-service-api/logpm-trunkline-api/src/main/java/com/logpm/trunkline/vo/TrunklineCarsLoadVO.java @@ -50,6 +50,7 @@ public class TrunklineCarsLoadVO extends TrunklineCarsLoadEntity { private Integer lastStartCarStatus; private Integer planUnloadNum; private Integer totalLoadingNum; + private Integer stockCarsNum; private String loadCarsNo; private String unloadStatus; diff --git a/blade-service/logpm-basicdata/src/main/java/com/logpm/basicdata/feign/BasicdataBrandClient.java b/blade-service/logpm-basicdata/src/main/java/com/logpm/basicdata/feign/BasicdataBrandClient.java index 618b33e8f..e16ee2598 100644 --- a/blade-service/logpm-basicdata/src/main/java/com/logpm/basicdata/feign/BasicdataBrandClient.java +++ b/blade-service/logpm-basicdata/src/main/java/com/logpm/basicdata/feign/BasicdataBrandClient.java @@ -30,6 +30,7 @@ import org.springframework.web.bind.annotation.RestController; import springfox.documentation.annotations.ApiIgnore; import java.util.List; +import java.util.Set; /** * 基础品牌表 Feign实现类 @@ -68,4 +69,14 @@ public class BasicdataBrandClient implements IBasicdataBrandClient { return basicdataBrandService.getOne(queryWrapper); } + @Override + public List findListByNames(Set brandSet) { + QueryWrapper queryWrapper = new QueryWrapper<>(); + queryWrapper.in("brand_name",brandSet) + .eq("is_deleted",0); + List list = basicdataBrandService.list(queryWrapper); + + return list; + } + } diff --git a/blade-service/logpm-distribution/src/main/java/com/logpm/distribution/service/impl/DistributionStockArticleServiceImpl.java b/blade-service/logpm-distribution/src/main/java/com/logpm/distribution/service/impl/DistributionStockArticleServiceImpl.java index 3c867c190..0dd6a4b49 100644 --- a/blade-service/logpm-distribution/src/main/java/com/logpm/distribution/service/impl/DistributionStockArticleServiceImpl.java +++ b/blade-service/logpm-distribution/src/main/java/com/logpm/distribution/service/impl/DistributionStockArticleServiceImpl.java @@ -77,6 +77,7 @@ import org.springblade.core.tool.api.R; import org.springblade.core.tool.utils.BeanUtil; import org.springblade.core.tool.utils.Func; import org.springblade.core.tool.utils.ObjectUtil; +import org.springblade.core.tool.utils.StringUtil; import org.springblade.system.cache.DictBizCache; import org.springblade.system.entity.DictBiz; import org.springblade.system.entity.User; @@ -2596,16 +2597,24 @@ public class DistributionStockArticleServiceImpl extends BaseServiceImpl { - + Date findRukuTime(@Param("unitNo") String unitNo, @Param("oldWarehouseId") Integer oldWarehouseId); } diff --git a/blade-service/logpm-old-project/src/main/java/com/logpm/oldproject/mapper/OrderDetailMapper.xml b/blade-service/logpm-old-project/src/main/java/com/logpm/oldproject/mapper/OrderDetailMapper.xml index d07b619fd..849aa143e 100644 --- a/blade-service/logpm-old-project/src/main/java/com/logpm/oldproject/mapper/OrderDetailMapper.xml +++ b/blade-service/logpm-old-project/src/main/java/com/logpm/oldproject/mapper/OrderDetailMapper.xml @@ -3,5 +3,14 @@ + + diff --git a/blade-service/logpm-old-project/src/main/java/com/logpm/oldproject/service/IOrderDetailService.java b/blade-service/logpm-old-project/src/main/java/com/logpm/oldproject/service/IOrderDetailService.java index f92b11ddc..4f48c2db4 100644 --- a/blade-service/logpm-old-project/src/main/java/com/logpm/oldproject/service/IOrderDetailService.java +++ b/blade-service/logpm-old-project/src/main/java/com/logpm/oldproject/service/IOrderDetailService.java @@ -2,6 +2,7 @@ package com.logpm.oldproject.service; import com.logpm.oldproject.entity.OrderDetailEntity; +import java.util.Date; import java.util.List; public interface IOrderDetailService { @@ -11,4 +12,6 @@ public interface IOrderDetailService { List findByOrderCode(String orderCode,Integer oldWarehouseId); OrderDetailEntity findEntityByUnitNoAndOldWarehosueId(String unitNo, Integer oldWarehouseId); + + Date findRukuTime(String unitNo, Integer oldWarehouseId); } diff --git a/blade-service/logpm-old-project/src/main/java/com/logpm/oldproject/service/impl/OrderDetailServiceImpl.java b/blade-service/logpm-old-project/src/main/java/com/logpm/oldproject/service/impl/OrderDetailServiceImpl.java index e84ea14c8..b8af93483 100644 --- a/blade-service/logpm-old-project/src/main/java/com/logpm/oldproject/service/impl/OrderDetailServiceImpl.java +++ b/blade-service/logpm-old-project/src/main/java/com/logpm/oldproject/service/impl/OrderDetailServiceImpl.java @@ -7,6 +7,7 @@ import com.logpm.oldproject.service.IOrderDetailService; import lombok.AllArgsConstructor; import org.springframework.stereotype.Service; +import java.util.Date; import java.util.List; @Service @@ -40,4 +41,9 @@ public class OrderDetailServiceImpl implements IOrderDetailService { return orderDetailMapper.selectOne(queryWrapper); } + + @Override + public Date findRukuTime(String unitNo, Integer oldWarehouseId) { + return orderDetailMapper.findRukuTime(unitNo,oldWarehouseId); + } } diff --git a/blade-service/logpm-patch/src/main/java/com/logpm/patch/service/impl/SyncOrderInfoServiceImpl.java b/blade-service/logpm-patch/src/main/java/com/logpm/patch/service/impl/SyncOrderInfoServiceImpl.java index 7e97d03b0..eb888343b 100644 --- a/blade-service/logpm-patch/src/main/java/com/logpm/patch/service/impl/SyncOrderInfoServiceImpl.java +++ b/blade-service/logpm-patch/src/main/java/com/logpm/patch/service/impl/SyncOrderInfoServiceImpl.java @@ -1626,7 +1626,7 @@ public class SyncOrderInfoServiceImpl implements ISyncOrderInfoService { Integer carsType = orderDetailEntity.getCarsType(); Integer signState = orderDetailEntity.getSignState(); waybillNo = orderDetailEntity.getWaybillNo(); - Date rukuTime = orderDetailEntity.getUpdateTime(); + Date rukuTime = orderDetailClient.findRukuTime(unitNo,oldWarehouseId); if(StringUtil.isBlank(waybillNo)){ Integer advanceId = orderDetailEntity.getAdvanceId(); AdvanceEntity advanceEntity = advanceClient.fingById(advanceId); diff --git a/blade-service/logpm-trunkline/src/main/java/com/logpm/trunkline/controller/CarsLoadController.java b/blade-service/logpm-trunkline/src/main/java/com/logpm/trunkline/controller/CarsLoadController.java index a7bf6b131..c363140f2 100644 --- a/blade-service/logpm-trunkline/src/main/java/com/logpm/trunkline/controller/CarsLoadController.java +++ b/blade-service/logpm-trunkline/src/main/java/com/logpm/trunkline/controller/CarsLoadController.java @@ -24,6 +24,7 @@ import org.springframework.web.bind.annotation.*; import javax.servlet.http.HttpServletRequest; import javax.servlet.http.HttpServletResponse; import java.math.BigDecimal; +import java.util.ArrayList; import java.util.Enumeration; import java.util.List; import java.util.Objects; @@ -2396,12 +2397,14 @@ public class CarsLoadController { log.info(method + "请求参数{}", loadCarsDTO); try{ //当前登录人选择的仓库 + List warehouseIds = new ArrayList<>(); BasicdataWarehouseEntity myCurrentWarehouse = warehouseClient.getMyCurrentWarehouse(); if(Objects.isNull(myCurrentWarehouse)){ - log.warn(method+"仓库信息为空 myCurrentWarehouse={}",myCurrentWarehouse); - return R.fail(405,"多仓权限无法操作,请选择仓库"); + List myWatchWarehouse = warehouseClient.getMyWatchWarehouse(); + myWatchWarehouse.forEach(warehouse -> warehouseIds.add(warehouse.getId())); + }else{ + warehouseIds.add(myCurrentWarehouse.getId()); } - loadCarsDTO.setWarehouseId(myCurrentWarehouse.getId()); return carsLoadService.findSignOrderPageList(loadCarsDTO); }catch (CustomerException e){ diff --git a/blade-service/logpm-trunkline/src/main/java/com/logpm/trunkline/mapper/TrunklineCarsLoadMapper.xml b/blade-service/logpm-trunkline/src/main/java/com/logpm/trunkline/mapper/TrunklineCarsLoadMapper.xml index 473071363..5c97a077f 100644 --- a/blade-service/logpm-trunkline/src/main/java/com/logpm/trunkline/mapper/TrunklineCarsLoadMapper.xml +++ b/blade-service/logpm-trunkline/src/main/java/com/logpm/trunkline/mapper/TrunklineCarsLoadMapper.xml @@ -507,7 +507,7 @@ where ltcl.is_deleted = 0 and ltcl.load_type != '4' and ltcl.load_status != '100' - and ltcl.start_warehouse_id = #{param.warehouseId} + and (ltcl.start_warehouse_id = #{param.warehouseId} or Locate(#{param.warehouseId},ltcl.end_warehouse_ids) > 0 ) and Locate(#{param.carsNo},ltcl.cars_no) > 0 @@ -518,10 +518,10 @@ and ltcl.create_time <= #{param.endTime} - and ltcl.load_status = '0' + and ltcl.load_status in ('0','20') - and ltcl.load_status != '0' + and ltcl.load_status not in ('0','20') order by ltcl.create_time desc diff --git a/blade-service/logpm-trunkline/src/main/java/com/logpm/trunkline/mapper/TrunklineLoadSignOrderMapper.xml b/blade-service/logpm-trunkline/src/main/java/com/logpm/trunkline/mapper/TrunklineLoadSignOrderMapper.xml index fcda70922..cb58060fa 100644 --- a/blade-service/logpm-trunkline/src/main/java/com/logpm/trunkline/mapper/TrunklineLoadSignOrderMapper.xml +++ b/blade-service/logpm-trunkline/src/main/java/com/logpm/trunkline/mapper/TrunklineLoadSignOrderMapper.xml @@ -131,7 +131,15 @@ left join logpm_trunkline_cars_load ltcl on ltcl.id = ltlso.load_id LEFT JOIN logpm_trunkline_cars_order ltco on ltco.sign_order_id = ltlso.id - and (ltlso.warehouse_id = #{param.warehouseId} or ltlso.final_node_id = #{param.warehouseId}) + + and (ltlso.warehouse_id in + + #{item} + + or ltlso.final_node_id in + + #{item} + ) and ltlso.load_id = #{param.loadId} diff --git a/blade-service/logpm-trunkline/src/main/java/com/logpm/trunkline/service/impl/OpenOrderServiceImpl.java b/blade-service/logpm-trunkline/src/main/java/com/logpm/trunkline/service/impl/OpenOrderServiceImpl.java index 55a138644..487221bea 100644 --- a/blade-service/logpm-trunkline/src/main/java/com/logpm/trunkline/service/impl/OpenOrderServiceImpl.java +++ b/blade-service/logpm-trunkline/src/main/java/com/logpm/trunkline/service/impl/OpenOrderServiceImpl.java @@ -56,6 +56,7 @@ import java.io.InputStream; import java.math.BigDecimal; import java.util.*; import java.util.concurrent.CompletableFuture; +import java.util.function.Function; import java.util.stream.Collectors; @Slf4j @@ -1186,6 +1187,15 @@ public class OpenOrderServiceImpl implements IOpenOrderService { return R.data(advanceEntityList); } + //把pacakgeDetailExcelDTOS中所有brand放入一个Set集合 + Set brandSet = pacakgeDetailExcelDTOS.stream().map(PacakgeDetailExcelDTO::getBrand).collect(Collectors.toSet()); + brandSet.add("其他"); + + List basicdataBrandEntities = basicdataBrandClient.findListByNames(brandSet); + + //把basicdataBrandEntities转化成brandName为key的Map + Map brandMap = basicdataBrandEntities.stream().collect(Collectors.toMap(BasicdataBrandEntity::getBrandName, a -> a, (k1, k2) -> k1)); + Map> listMap = pacakgeDetailExcelDTOS.parallelStream().collect(Collectors.groupingBy(a -> a.getOrderCode() + "&" + a.getTrainNumber())); listMap.remove("null&null"); @@ -1243,6 +1253,10 @@ public class OpenOrderServiceImpl implements IOpenOrderService { advanceEntity.setArea(pacakgeDetailExcelDTO.getArea()); String brand = pacakgeDetailExcelDTO.getBrand(); advanceEntity.setBrand(brand); + BasicdataBrandEntity basicdataBrandEntity = brandMap.get(brand); + if(Objects.isNull(basicdataBrandEntity)){ + advanceEntity.setBrand("其他"); + } advanceEntity.setTotalNum(excelDTOS.size()); String firsts = pacakgeDetailExcelDTO.getFirsts(); advanceEntity.setPackName(firsts); @@ -1352,7 +1366,12 @@ public class OpenOrderServiceImpl implements IOpenOrderService { advanceDetailModel.setAdvanceId(advanceId); advanceDetailModel.setOrderCode(orderCode); advanceDetailModel.setOrderPackageCode(orderPackageCode); - advanceDetailModel.setBrand(pacakgeDetailExcelDTO.getBrand()); + String brand = advanceEntity.getBrand(); + BasicdataBrandEntity brandEntity = brandMap.get(brand); + if(Objects.isNull(brandEntity)){ + brandEntity = brandMap.get("其他"); + advanceDetailModel.setBrand(brandEntity.getBrandName()); + } advanceDetailModel.setSystemType("线上"); advanceDetailModel.setTrainNumber(advanceEntity.getTrainNumber()); String firsts = pacakgeDetailExcelDTO.getFirsts(); @@ -2263,6 +2282,15 @@ public class OpenOrderServiceImpl implements IOpenOrderService { List importOrderNoPackageExcelDTOS = EasyExcel.read(inputStream).head(ImportOrderNoPackageExcelDTO.class).sheet(0).headRowNumber(2).doReadSync(); + //把importOrderNoPackageExcelDTOS中所有brand放入一个Set + Set brands = importOrderNoPackageExcelDTOS.parallelStream().map(ImportOrderNoPackageExcelDTO::getBrand).collect(Collectors.toSet()); + + List brandEntities = basicdataBrandClient.findListByNames(brands); + + //把brandEntities转化成以brandName为key的Map + Map brandMap = brandEntities.stream().collect(Collectors.toMap(BasicdataBrandEntity::getBrandName, Function.identity())); + + Map orderCodeCounts = importOrderNoPackageExcelDTOS.stream() .collect(Collectors.groupingBy(a->(a.getOrderCode()+"&"+a.getFirsts()), Collectors.counting())); @@ -2322,7 +2350,12 @@ public class OpenOrderServiceImpl implements IOpenOrderService { advanceEntity.setServiceNum(importOrderNoPackageExcelDTO.getServiceNum()); advanceEntity.setOrderCode(orderCode); advanceEntity.setArea(importOrderNoPackageExcelDTO.getArea()); - advanceEntity.setBrand(importOrderNoPackageExcelDTO.getBrand()); + String brand = importOrderNoPackageExcelDTO.getBrand(); + advanceEntity.setBrand(brand); + BasicdataBrandEntity basicdataBrandEntity = brandMap.get(brand); + if(Objects.isNull(basicdataBrandEntity)){ + advanceEntity.setBrand("其他"); + } advanceEntity.setTotalNum(Integer.parseInt(importOrderNoPackageExcelDTO.getCount())); advanceEntity.setPackName(importOrderNoPackageExcelDTO.getFirsts()); advanceEntity.setDealerCode(importOrderNoPackageExcelDTO.getDealerCode()); @@ -2464,6 +2497,13 @@ public class OpenOrderServiceImpl implements IOpenOrderService { List importOrderNoPackageExcelDTOS = EasyExcel.read(inputStream).head(ImportOrderNoPackageExcelDTO.class).sheet(0).headRowNumber(2).doReadSync(); + //把importOrderNoPackageExcelDTOS中所有brand放入一个Set + Set brands = importOrderNoPackageExcelDTOS.parallelStream().map(ImportOrderNoPackageExcelDTO::getBrand).collect(Collectors.toSet()); + List brandEntities = basicdataBrandClient.findListByNames(brands); + //把brandEntities转化成brandName为Key的Map + Map brandEntityMap = brandEntities.stream().collect(Collectors.toMap(BasicdataBrandEntity::getBrandName, Function.identity())); + + //把importOrderNoPackageExcelDTOS中的orderCode存入一个set集合 // Set orderCodes = importOrderNoPackageExcelDTOS.parallelStream().map(ImportOrderNoPackageExcelDTO::getOrderCode).collect(Collectors.toSet()); // @@ -2562,7 +2602,18 @@ public class OpenOrderServiceImpl implements IOpenOrderService { advanceEntity.setServiceNum(importOrderNoPackageExcelDTO.getServiceNum()); advanceEntity.setOrderCode(orderCode); advanceEntity.setArea(importOrderNoPackageExcelDTO.getArea()); - advanceEntity.setBrand(importOrderNoPackageExcelDTO.getBrand()); + String brand = importOrderNoPackageExcelDTO.getBrand(); + advanceEntity.setBrand(brand); + + if(StringUtil.isNotBlank(brand)){ + BasicdataBrandEntity basicdataBrandEntity = brandEntityMap.get(brand); + if(Objects.isNull(basicdataBrandEntity)){ + advanceEntity.setBrand("其他"); + } + } + + + advanceEntity.setTotalNum(Integer.parseInt(importOrderNoPackageExcelDTO.getCount())); advanceEntity.setPackName(importOrderNoPackageExcelDTO.getFirsts()); advanceEntity.setDealerCode(importOrderNoPackageExcelDTO.getDealerCode()); diff --git a/blade-service/logpm-trunkline/src/main/java/com/logpm/trunkline/service/impl/TrunklineCarsLoadServiceImpl.java b/blade-service/logpm-trunkline/src/main/java/com/logpm/trunkline/service/impl/TrunklineCarsLoadServiceImpl.java index 814caa3ae..880c40ae5 100644 --- a/blade-service/logpm-trunkline/src/main/java/com/logpm/trunkline/service/impl/TrunklineCarsLoadServiceImpl.java +++ b/blade-service/logpm-trunkline/src/main/java/com/logpm/trunkline/service/impl/TrunklineCarsLoadServiceImpl.java @@ -3731,6 +3731,7 @@ public class TrunklineCarsLoadServiceImpl extends BaseServiceImpl orderPackageCodeList = new ArrayList<>(); + orderPackageCodeList.add(orderPackageCode); + packageTrackLogAsyncService.addPackageTrackLog(AuthUtil.getTenantId(), AuthUtil.getUserId(), Func.firstLong(AuthUtil.getDeptId()), AuthUtil.getNickName(), orderPackageCodeList, warehouseId, warehouseName, WorkNodeEnums.UNLOAD_TRIPARTITE_TRANSFER_DEPART.getCode(), content); + JSONObject jsonObject = trunklineCarsLoadScanService.findUnloadNumAudio(loadId, warehouseId); Integer totalUnloadNum = jsonObject.getInteger("totalUnloadNum"); Integer abnormalUnloadNum = jsonObject.getInteger("abnormalUnloadNum"); @@ -4691,9 +4696,9 @@ public class TrunklineCarsLoadServiceImpl extends BaseServiceImpl StringUtil.isNotBlank(carsOrderVO.getMallPerson())).map(TrunklineCarsOrderVO::getMallPerson).distinct().collect(Collectors.joining(","))); + trunklineLoadSignOrderEntity.setMallMobile(trunklineCarsOrderVOS.stream().filter(carsOrderVO-> StringUtil.isNotBlank(carsOrderVO.getMallMobile())).map(TrunklineCarsOrderVO::getMallMobile).distinct().collect(Collectors.joining(","))); + trunklineLoadSignOrderEntity.setMallAddress(trunklineCarsOrderVOS.stream().filter(carsOrderVO-> StringUtil.isNotBlank(carsOrderVO.getMallAddress())).map(TrunklineCarsOrderVO::getMallAddress).distinct().collect(Collectors.joining(","))); trunklineLoadSignOrderEntity.setBelongToWarehouseId(warehouseId); trunklineLoadSignOrderEntity.setBelongToWarehouseName(warehouseName); //把trunklineCarsOrderVOS中所有元素的planNum求和 @@ -5610,6 +5615,9 @@ public class TrunklineCarsLoadServiceImpl extends BaseServiceImpl { trunklineCarsLoadingLogService.savaLoadingLog(warehouseId, warehouseName, loadId, e.getLoadCode(), e.getWaybillId(), e.getWaybillNo(), e.getOrderCode(), e.getScanCode(), 1, 1, 1, 0, null, null, null, e.getFromWarehouseId(), e.getId(), remark); + + updownTypeClient.downPackageOrDelTray(e.getScanCode(),e.getFromWarehouseId(),"手动批量装车下架解托"); + }); packageTrackLogAsyncService.addBatchPackageTrackLog(addPackageTrackLogList, orderPackageCodes, WorkNodeEnums.INITIAL_WAREHOUSE_LOADING.getCode(), null); @@ -6450,9 +6458,6 @@ public class TrunklineCarsLoadServiceImpl extends BaseServiceImpl loadScanOrderList = trunklineCarsOrderService.findLoadScanPackageWithOrder(loadId, warehouseId); @@ -6472,7 +6477,7 @@ public class TrunklineCarsLoadServiceImpl extends BaseServiceImpl orderPackageCodes, Integer workNode, Long warehouseId, Map map) { - BasicdataWarehouseEntity warehouseEntity = warehouseClient.getEntityWarehouseId(warehouseId); - if(!Objects.isNull(warehouseEntity)){ - //更新所有包件的当前所在仓 - if(CollUtil.isNotEmpty(orderPackageCodes)){ - List advanceDetailEntities = advanceDetailService.findListByOrderPackageCodeList(orderPackageCodes); - advanceDetailEntities.forEach(advanceDetailEntity -> { - advanceDetailEntity.setNowWarehouseId(warehouseId); - advanceDetailEntity.setNowWarehouseName(warehouseEntity.getName()); - }); - advanceDetailService.updateBatchById(advanceDetailEntities); + if(!workNode.equals(WorkNodeEnums.OPEN_ORDER.getCode())){ + BasicdataWarehouseEntity warehouseEntity = warehouseClient.getEntityWarehouseId(warehouseId); + if(!Objects.isNull(warehouseEntity)){ + //更新所有包件的当前所在仓 + if(CollUtil.isNotEmpty(orderPackageCodes)){ + List advanceDetailEntities = advanceDetailService.findListByOrderPackageCodeList(orderPackageCodes); + advanceDetailEntities.forEach(advanceDetailEntity -> { + advanceDetailEntity.setNowWarehouseId(warehouseId); + advanceDetailEntity.setNowWarehouseName(warehouseEntity.getName()); + }); + advanceDetailService.updateBatchById(advanceDetailEntities); + } } } - Integer packageStatus = null; if(WorkNodeEnums.INITIAL_WAREHOUSE_DEPART.getCode().equals(workNode)){ //始发仓发车 From 6bd9eac9553d6302420491113933c182d80d998d Mon Sep 17 00:00:00 2001 From: zhaoqiaobo <583671871@qq.com> Date: Mon, 5 Aug 2024 16:24:59 +0800 Subject: [PATCH 09/13] =?UTF-8?q?feat(all):=20=E8=87=AA=E6=8F=90=E6=98=8E?= =?UTF-8?q?=E7=BB=86=E5=92=8C=E9=85=8D=E9=80=81=E6=98=8E=E7=BB=86=E6=8A=A5?= =?UTF-8?q?=E8=A1=A8=E5=A2=9E=E5=8A=A0=E7=AD=BE=E6=94=B6=E6=96=B9=E5=BC=8F?= =?UTF-8?q?=E5=92=8C=E8=A3=85=E8=BD=A6=E6=96=B9=E5=BC=8F?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../report/mapper/ReportBillLoadingMapper.xml | 6 +++ .../report/mapper/ReportDeliverMapper.xml | 54 ++++++++++++++++++- .../logpm/report/vo/BillLoadingDetailsVO.java | 4 ++ .../com/logpm/report/vo/ReportDetailVO.java | 12 +++++ 4 files changed, 74 insertions(+), 2 deletions(-) diff --git a/blade-service/logpm-report/src/main/java/com/logpm/report/mapper/ReportBillLoadingMapper.xml b/blade-service/logpm-report/src/main/java/com/logpm/report/mapper/ReportBillLoadingMapper.xml index 13a0a41b5..14f752c76 100644 --- a/blade-service/logpm-report/src/main/java/com/logpm/report/mapper/ReportBillLoadingMapper.xml +++ b/blade-service/logpm-report/src/main/java/com/logpm/report/mapper/ReportBillLoadingMapper.xml @@ -12,6 +12,7 @@ packet_bar_code, train_number, sign_num, + brand, firsts, second, third_product, @@ -33,6 +34,7 @@ t.packet_bar_code, dsa.train_number, 1 sign_num, + dpl.brand_name brand, dpl.firsts, dpl.second, dpl.third_product, @@ -62,6 +64,7 @@ packet_bar_code, train_number, sign_num, + brand, firsts, second, third_product, @@ -83,6 +86,7 @@ '' packet_bar_code, dsa.train_number, 1 sign_num, + dpl.brand_name brand, '' firsts, '' second, '' third_product, @@ -113,6 +117,7 @@ packet_bar_code, train_number, sign_num, + brand, firsts, second, third_product, @@ -134,6 +139,7 @@ dpl.order_package_code packet_bar_code, dsa.train_number, dbls.quantity sign_num, + dpl.brand_name brand, dpl.firsts, dpl.second, dpl.third_product, diff --git a/blade-service/logpm-report/src/main/java/com/logpm/report/mapper/ReportDeliverMapper.xml b/blade-service/logpm-report/src/main/java/com/logpm/report/mapper/ReportDeliverMapper.xml index 93cdc687b..115015632 100644 --- a/blade-service/logpm-report/src/main/java/com/logpm/report/mapper/ReportDeliverMapper.xml +++ b/blade-service/logpm-report/src/main/java/com/logpm/report/mapper/ReportDeliverMapper.xml @@ -343,6 +343,9 @@ signing_status, signing_time, sign_num, + sign_type, + loading_mode, + brand, examine_user_name, abnormal_signing, abnormal_loading, @@ -376,6 +379,7 @@ ldsa.customer_address delivery_address, wi.consignee consignee, 1 sign_num, + dpl.brand_name brand, wi.consignee_name consignee_name, wi.consignee_mobile consignee_mobile, dpl.waybill_number waybill_no, @@ -411,6 +415,26 @@ ldl.scan_user un_administrators_name, ldl.signing_time sjsigning_time, ldl.signing_user lds_signee_name, + case when ldl.signfor_type = 1 THEN + '扫描签收' + when ldl.signfor_type = 2 then + '文员签收' + when ldl.signfor_type = 3 then + '一键签收' + else + '' + end sign_type, + case when ldl.scan_status = 2 THEN + '扫描装车' + when ldl.scan_status = 3 THEN + '订单装车' + when ldl.scan_status = 4 THEN + '一键装车' + when ldl.scan_status = 5 THEN + '补录装车' + else + '' + END loading_mode, CASE WHEN lds.signing_status = 1 THEN @@ -457,7 +481,9 @@ where drp.packet_bar_status != 2 and obj.reservation_status != 4 and obj.id is not null - and dpl.id is not null) t + and dpl.id is not null + and ldl.scan_status > 1 + ) t ${ew.customSqlSegment} and @@ -513,6 +539,9 @@ signing_status, signing_time, sign_num, + sign_type, + loading_mode, + brand, examine_user_name, abnormal_signing, abnormal_loading, @@ -526,6 +555,7 @@ obj.reservation_date task_time, dpl.warehouse warehouse_name, dpl.warehouse_id warehouse_id, + dpl.brand_name brand, CASE WHEN obj.delivery_type = 1 THEN '商配' @@ -580,7 +610,26 @@ ldl.received_quantity sign_num, ldl.scan_time unload_time, ldl.scan_user un_administrators_name, - + case when ldl.signfor_type = 1 THEN + '扫描签收' + when ldl.signfor_type = 2 then + '文员签收' + when ldl.signfor_type = 3 then + '一键签收' + else + '' + end sign_type, + case when ldl.scan_status = 2 THEN + '扫描装车' + when ldl.scan_status = 3 THEN + '订单装车' + when ldl.scan_status = 4 THEN + '一键装车' + when ldl.scan_status = 5 THEN + '补录装车' + else + '' + END loading_mode, lds.sjsigning_time sjsigning_time, lds.signee_name lds_signee_name, CASE @@ -631,6 +680,7 @@ and obj.reservation_status != 4 and obj.id is not null and dpl.id is not null + and ldl.scan_status > 1 ) t ${ew.customSqlSegment} diff --git a/blade-service/logpm-report/src/main/java/com/logpm/report/vo/BillLoadingDetailsVO.java b/blade-service/logpm-report/src/main/java/com/logpm/report/vo/BillLoadingDetailsVO.java index 65d2fa2fa..5b1d08217 100644 --- a/blade-service/logpm-report/src/main/java/com/logpm/report/vo/BillLoadingDetailsVO.java +++ b/blade-service/logpm-report/src/main/java/com/logpm/report/vo/BillLoadingDetailsVO.java @@ -25,6 +25,10 @@ public class BillLoadingDetailsVO implements Serializable { private static final long serialVersionUID = 1L; + @ApiModelProperty(value = "品牌") + @ExcelProperty("品牌") + private String brand; + @ApiModelProperty(value = "自提批次号") @ExcelProperty("自提批次号") private String pickupBatch; diff --git a/blade-service/logpm-report/src/main/java/com/logpm/report/vo/ReportDetailVO.java b/blade-service/logpm-report/src/main/java/com/logpm/report/vo/ReportDetailVO.java index 67c955615..b3a693518 100644 --- a/blade-service/logpm-report/src/main/java/com/logpm/report/vo/ReportDetailVO.java +++ b/blade-service/logpm-report/src/main/java/com/logpm/report/vo/ReportDetailVO.java @@ -29,6 +29,10 @@ public class ReportDetailVO implements Serializable { @ExcelProperty("车次") private String trainNumber; + @ApiModelProperty(value = "品牌") + @ExcelProperty("品牌") + private String brand; + @ApiModelProperty(value = "预约单号") @ExcelProperty("预约单号") private String reservationCode; @@ -197,4 +201,12 @@ public class ReportDetailVO implements Serializable { @ExcelProperty("审核时间") private String auditingTime; + @ApiModelProperty(value = "装车方式") + @ExcelProperty("装车方式") + private String loadingMode; + + @ApiModelProperty(value = "签收方式") + @ExcelProperty("签收方式") + private String signType; + } From 38534294157640e807052f80e8c6c5fe2ad6d9a3 Mon Sep 17 00:00:00 2001 From: PigBaoBei <2739175034@qq.com> Date: Mon, 5 Aug 2024 17:58:53 +0800 Subject: [PATCH 10/13] =?UTF-8?q?=E5=95=86=E5=B8=82=E9=85=8D=E5=A4=87?= =?UTF-8?q?=E8=B4=A7=E5=88=97=E8=A1=A8SQL=E4=BC=98=E5=8C=96?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../mapper/DistributionStockupMapper.xml | 49 ++++++++++++++----- .../DistributionDeliveryListServiceImpl.java | 6 +++ .../DistrilbutionBillLadingServiceImpl.java | 4 +- 3 files changed, 45 insertions(+), 14 deletions(-) diff --git a/blade-service/logpm-distribution/src/main/java/com/logpm/distribution/mapper/DistributionStockupMapper.xml b/blade-service/logpm-distribution/src/main/java/com/logpm/distribution/mapper/DistributionStockupMapper.xml index 9a6cbb2ee..c2ab45616 100644 --- a/blade-service/logpm-distribution/src/main/java/com/logpm/distribution/mapper/DistributionStockupMapper.xml +++ b/blade-service/logpm-distribution/src/main/java/com/logpm/distribution/mapper/DistributionStockupMapper.xml @@ -242,21 +242,44 @@ where is_deleted = 0 select create_time from ht_scan_log - where unit_no = #{unitNo} and old_warehouse_id = #{oldWarehouseId} + where unit_no = #{unitNo} and warehouse_id = #{oldWarehouseId} and type in (1,4) order by create_time desc limit 1 diff --git a/blade-service/logpm-trunkline/src/main/java/com/logpm/trunkline/controller/OpenOrderController.java b/blade-service/logpm-trunkline/src/main/java/com/logpm/trunkline/controller/OpenOrderController.java index 8200d51d7..d2592dd20 100644 --- a/blade-service/logpm-trunkline/src/main/java/com/logpm/trunkline/controller/OpenOrderController.java +++ b/blade-service/logpm-trunkline/src/main/java/com/logpm/trunkline/controller/OpenOrderController.java @@ -1740,4 +1740,40 @@ public class OpenOrderController { } + @ResponseBody + @PostMapping("/createOrderPackage") + @ApiOperationSupport(order = 1) + @ApiOperation(value = "创建订单包件", notes = "传入openOrderDTO") + public R createOrderPackage(@RequestBody AdvanceDTO advanceDTO) { + String method = "############createOrderPackage: "; + log.info(method + "请求参数{}", advanceDTO); + Long advanceId = advanceDTO.getAdvanceId(); + + + try{ + + BasicdataWarehouseEntity myCurrentWarehouse = warehouseClient.getMyCurrentWarehouse(); + if(Objects.isNull(myCurrentWarehouse)){ + log.warn(method+"没有选择仓库 myCurrentWarehouse={}",myCurrentWarehouse); + return R.fail(405,"多仓权限无法操作,请选择仓库"); + } + advanceDTO.setWarehouseId(myCurrentWarehouse.getId()); + + + if(Objects.isNull(advanceId)){ + log.warn(method+"暂存单id不能为空 advanceId={}",advanceId); + return R.fail(405,"暂存单id不能为空"); + } + + return openOrderService.createOrderPackage(advanceDTO); + }catch (CustomerException e){ + log.error(e.message,e); + return R.fail(e.code,e.message); + }catch (Exception e){ + log.error(method+"系统异常",e); + return R.fail(500,"系统异常"); + } + } + + } diff --git a/blade-service/logpm-trunkline/src/main/java/com/logpm/trunkline/service/IOpenOrderService.java b/blade-service/logpm-trunkline/src/main/java/com/logpm/trunkline/service/IOpenOrderService.java index d6dcb0b8a..6b9e355bb 100644 --- a/blade-service/logpm-trunkline/src/main/java/com/logpm/trunkline/service/IOpenOrderService.java +++ b/blade-service/logpm-trunkline/src/main/java/com/logpm/trunkline/service/IOpenOrderService.java @@ -89,6 +89,8 @@ public interface IOpenOrderService { R findWaybillDes(Long departureWarehouseId, Long consigneeId); + R createOrderPackage(AdvanceDTO advanceDTO); + // R findWaybillInfo(String waybillNo); } diff --git a/blade-service/logpm-trunkline/src/main/java/com/logpm/trunkline/service/impl/OpenOrderServiceImpl.java b/blade-service/logpm-trunkline/src/main/java/com/logpm/trunkline/service/impl/OpenOrderServiceImpl.java index 487221bea..1a5cf4aad 100644 --- a/blade-service/logpm-trunkline/src/main/java/com/logpm/trunkline/service/impl/OpenOrderServiceImpl.java +++ b/blade-service/logpm-trunkline/src/main/java/com/logpm/trunkline/service/impl/OpenOrderServiceImpl.java @@ -3313,6 +3313,15 @@ public class OpenOrderServiceImpl implements IOpenOrderService { return R.data(map); } + @Override + public R createOrderPackage(AdvanceDTO advanceDTO) { + Long advanceId = advanceDTO.getAdvanceId(); + Long warehouseId = advanceDTO.getWarehouseId(); + + + return null; + } + private List verifyData(OpenOrderDTO openOrderDTO, WarehouseWaybillEntity waybillEntity) { log.info("###################verifyData: 验证改单数据"); // StringBuilder stringBuilder = new StringBuilder();