From ba8d5c752b1c07e012578be2a00a5b712fe4ca8a Mon Sep 17 00:00:00 2001 From: caoyizhong <1270296080@qq.com> Date: Mon, 6 Nov 2023 13:57:16 +0800 Subject: [PATCH 01/36] =?UTF-8?q?=E4=BF=AE=E6=94=B9=E5=A4=87=E8=B4=A7,?= =?UTF-8?q?=E7=9B=98=E7=82=B9=E6=B7=BB=E5=8A=A0=EF=BC=8C=E5=B9=B6=E6=9A=82?= =?UTF-8?q?=E5=81=9C=E7=9B=98=E7=82=B9?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../common/constant/DictBizConstant.java | 1 + .../entity/DistributionParcelListEntity.java | 55 ++ .../entity/DistributionStockListEntity.java | 10 +- .../entity/DistributionStockupEntity.java | 7 + .../feign/IDistributionParcelListClient.java | 6 + .../IDistributionStockArticleClient.java | 8 + .../feign/IDistributionStockListClient.java | 15 +- .../vo/DistributionParcelListVO.java | 13 + .../vo/DistributionParcelListZeroVO.java | 12 +- .../vo/DistributionStockListVO.java | 20 + .../vo/DistributionStockupOrderListVO.java | 2 + .../vo/DistributionStockupVO.java | 1 + .../warehouse/entity/QuestDetailEntity.java | 14 +- .../impl/BasicdataClientServiceImpl.java | 7 + .../DistributionStockupAppController.java | 2 + .../DistributionParcelListController.java | 4 +- .../feign/DistributionParcelListClient.java | 7 + .../feign/DistributionStockArticleClient.java | 20 + .../feign/DistributionStockListClient.java | 12 + .../mapper/DistributionParcelListMapper.java | 2 + .../mapper/DistributionParcelListMapper.xml | 74 +- .../mapper/DistributionStockListMapper.java | 7 + .../mapper/DistributionStockListMapper.xml | 22 + .../mapper/DistributionStockupMapper.xml | 15 +- .../mapper/DistrilbutionBillStockMapper.xml | 44 +- .../service/IDistributionAsyncService.java | 20 +- .../IDistributionParcelListService.java | 7 + .../IDistributionStockListService.java | 7 + .../impl/DistributionAsyncServiceImpl.java | 46 ++ .../DistributionParcelListServiceImpl.java | 59 +- .../DistributionStockArticleServiceImpl.java | 29 +- .../DistributionStockListServiceImpl.java | 10 + .../DistrilbutionBillLadingServiceImpl.java | 94 ++- .../DistributionStockArticleWrapper.java | 2 +- .../logpm/warehouse/dto/QuestDetailDTO.java | 2 +- .../logpm/warehouse/dto/TaskSearchDTO.java | 6 +- .../warehouse/mapper/TaskQuestMapper.java | 44 +- .../warehouse/mapper/TaskQuestMapper.xml | 187 ++++- .../warehouse/service/ITaskQuestService.java | 23 + .../service/impl/TaskQuestServiceImpl.java | 755 +++++++++++++++--- 40 files changed, 1443 insertions(+), 228 deletions(-) diff --git a/blade-biz-common/src/main/java/org/springblade/common/constant/DictBizConstant.java b/blade-biz-common/src/main/java/org/springblade/common/constant/DictBizConstant.java index 5c8e470de..8e5f94f3d 100644 --- a/blade-biz-common/src/main/java/org/springblade/common/constant/DictBizConstant.java +++ b/blade-biz-common/src/main/java/org/springblade/common/constant/DictBizConstant.java @@ -15,6 +15,7 @@ public class DictBizConstant { public static final String BASIC_GROUNDING = "basic_grounding";//上架状态 public static final String STOCKUP_STATUS = "stockup_status";//备货状态 + public static final String ORDER_STOCKUP_STATUS = "order_stockup_status";//订单备货状态 public static final String ORDER_RESERVATION_STATUS = "order_reservation_status";//订单预约状态 public static final String RESERVATION_STATUS = "reservation_status";//预约状态 diff --git a/blade-service-api/logpm-distribution-api/src/main/java/com/logpm/distribution/entity/DistributionParcelListEntity.java b/blade-service-api/logpm-distribution-api/src/main/java/com/logpm/distribution/entity/DistributionParcelListEntity.java index 50e716e84..a1c46e492 100644 --- a/blade-service-api/logpm-distribution-api/src/main/java/com/logpm/distribution/entity/DistributionParcelListEntity.java +++ b/blade-service-api/logpm-distribution-api/src/main/java/com/logpm/distribution/entity/DistributionParcelListEntity.java @@ -141,6 +141,61 @@ public class DistributionParcelListEntity extends TenantEntity { @ApiModelProperty(value = "客户id") @TableField(exist = false) private Long marketId; + + /** + * 商场名称 + */ + @ApiModelProperty(value = "商场名称") + @TableField(exist = false) + private String mallName; + /** + * 商场名称 + */ + @ApiModelProperty(value = "分类") + @TableField(exist = false) + private String genre; + /** + * 商场名称 + */ + @ApiModelProperty(value = "零担标识") + @TableField(exist = false) + private String isZero; + /** + * 商场名称 + */ + @ApiModelProperty(value = "商场iD") + @TableField(exist = false) + private Long mallId; + /** + * 托盘ID + */ + @ApiModelProperty(value = "托盘ID") + @TableField(exist = false) + private String trayId; + /** + * 托盘编码 + */ + @ApiModelProperty(value = "托盘编码") + @TableField(exist = false) + private String trayCode; + /** + * 货位ID + */ + @ApiModelProperty(value = "货位ID") + @TableField(exist = false) + private String allocationId; + /** + * 完整货位 + */ + @ApiModelProperty(value = "完整货位") + @TableField(exist = false) + private String positionCode; + /** + * 库存品ID + */ + @ApiModelProperty(value = "库存品ID") + @TableField(exist = false) + private Long stockId; /** * 物料Id */ diff --git a/blade-service-api/logpm-distribution-api/src/main/java/com/logpm/distribution/entity/DistributionStockListEntity.java b/blade-service-api/logpm-distribution-api/src/main/java/com/logpm/distribution/entity/DistributionStockListEntity.java index 2ff7f4ef8..a64c8eef3 100644 --- a/blade-service-api/logpm-distribution-api/src/main/java/com/logpm/distribution/entity/DistributionStockListEntity.java +++ b/blade-service-api/logpm-distribution-api/src/main/java/com/logpm/distribution/entity/DistributionStockListEntity.java @@ -275,11 +275,11 @@ public class DistributionStockListEntity extends TenantEntity { */ @ApiModelProperty(value = "拆包ID") private Long pid; - /** - * 托盘ID - */ - @ApiModelProperty(value = "托盘ID") - private Long trayId; +// /** +// * 托盘ID +// */ +// @ApiModelProperty(value = "托盘ID") +// private Long trayId; /** * 托盘名称 */ diff --git a/blade-service-api/logpm-distribution-api/src/main/java/com/logpm/distribution/entity/DistributionStockupEntity.java b/blade-service-api/logpm-distribution-api/src/main/java/com/logpm/distribution/entity/DistributionStockupEntity.java index 1a5e61d73..c21ea65c6 100644 --- a/blade-service-api/logpm-distribution-api/src/main/java/com/logpm/distribution/entity/DistributionStockupEntity.java +++ b/blade-service-api/logpm-distribution-api/src/main/java/com/logpm/distribution/entity/DistributionStockupEntity.java @@ -78,6 +78,13 @@ public class DistributionStockupEntity extends TenantEntity { */ @ApiModelProperty(value = "备货库位") private String stockipAllocation; + + /** + * 托盘位 + */ + @ApiModelProperty(value = "托盘位") + @TableField(exist = false) + private String pallet; /** * 备货区ID */ diff --git a/blade-service-api/logpm-distribution-api/src/main/java/com/logpm/distribution/feign/IDistributionParcelListClient.java b/blade-service-api/logpm-distribution-api/src/main/java/com/logpm/distribution/feign/IDistributionParcelListClient.java index ec567b9fe..6b56d4cd6 100644 --- a/blade-service-api/logpm-distribution-api/src/main/java/com/logpm/distribution/feign/IDistributionParcelListClient.java +++ b/blade-service-api/logpm-distribution-api/src/main/java/com/logpm/distribution/feign/IDistributionParcelListClient.java @@ -17,6 +17,8 @@ package com.logpm.distribution.feign; import com.logpm.distribution.entity.DistributionParcelListEntity; +import com.logpm.distribution.entity.DistributionStockArticleEntity; +import com.logpm.distribution.vo.DistributionParcelListVO; import org.springblade.common.constant.ModuleNameConstant; import org.springblade.core.mp.support.BladePage; import org.springframework.cloud.openfeign.FeignClient; @@ -41,6 +43,7 @@ public interface IDistributionParcelListClient { String API_PREFIX = "/client"; String TOP = API_PREFIX + "/top1"; String TOPPARCELLIST = API_PREFIX + "/getParcelList"; + String GETPARCELLISTINFO = API_PREFIX + "/getParcelListInfo"; @PostMapping(TOPPARCELLIST) List getParcelList(@RequestBody DistributionParcelListEntity parcelListEntity); @@ -102,4 +105,7 @@ public interface IDistributionParcelListClient { @GetMapping(API_PREFIX+"/updateStockArticleIdByOrderCode") void updateStockArticleIdByOrderCode(@RequestParam Long orderId, @RequestParam String orderCode); + + @PostMapping(GETPARCELLISTINFO) + List getParcelListInfo(@RequestBody DistributionParcelListVO parcelListVO); } diff --git a/blade-service-api/logpm-distribution-api/src/main/java/com/logpm/distribution/feign/IDistributionStockArticleClient.java b/blade-service-api/logpm-distribution-api/src/main/java/com/logpm/distribution/feign/IDistributionStockArticleClient.java index 0d293de12..ec0864d28 100644 --- a/blade-service-api/logpm-distribution-api/src/main/java/com/logpm/distribution/feign/IDistributionStockArticleClient.java +++ b/blade-service-api/logpm-distribution-api/src/main/java/com/logpm/distribution/feign/IDistributionStockArticleClient.java @@ -41,6 +41,7 @@ public interface IDistributionStockArticleClient { String API_PREFIX = "/client"; String TOP = API_PREFIX + "/top12"; + String GETSTOCKARTICLEINFO = API_PREFIX + "/getStockArticleInfo"; /** * 获取配送在库订单列表 @@ -104,4 +105,11 @@ public interface IDistributionStockArticleClient { @GetMapping(API_PREFIX + "/submitHandleNumByOrderId") void submitHandleNumByOrderId(@RequestParam Integer subNum, @RequestParam Long articleId); + + /** + * 查询订单信息数据 + * @return + */ + @PostMapping(GETSTOCKARTICLEINFO) + List getStockArticleInfo(@RequestBody DistributionStockArticleEntity distributionStockArticleEntity); } diff --git a/blade-service-api/logpm-distribution-api/src/main/java/com/logpm/distribution/feign/IDistributionStockListClient.java b/blade-service-api/logpm-distribution-api/src/main/java/com/logpm/distribution/feign/IDistributionStockListClient.java index c261acfd2..07efc59be 100644 --- a/blade-service-api/logpm-distribution-api/src/main/java/com/logpm/distribution/feign/IDistributionStockListClient.java +++ b/blade-service-api/logpm-distribution-api/src/main/java/com/logpm/distribution/feign/IDistributionStockListClient.java @@ -47,6 +47,7 @@ public interface IDistributionStockListClient { String ADDSTOCKLIST = API_PREFIX + "/addStockList"; String UPDATESTOCKLIST = API_PREFIX + "/updateStockList"; String PUTSTOCKLIST = API_PREFIX + "/putStockList"; + String GETSTOCKLISTINFO = API_PREFIX + "/getStockListInfo"; /** * 获取库存品管理列表 @@ -116,12 +117,12 @@ public interface IDistributionStockListClient { List getStockListByWarehouseIdAndMarketAndStockListInfo(@RequestParam("incomingBatch") String incomingBatch,@RequestParam("marketNames") List marketNames,@RequestParam("warehouseId") Long warehouseId); -// /** -// * 修改某个客户信息及物品信息 -// * -// * @return BladePage -// */ -// @PutMapping(PUTSTOCKLIST) -// Boolean putStockList(@RequestBody DistributionStockListEntity distributionStockListEntity); + /** + * 修改某个客户信息及物品信息 + * + * @return BladePage + */ + @PostMapping(GETSTOCKLISTINFO) + List getStockListInfo(@RequestBody DistributionStockListEntity distributionStockListEntity); } diff --git a/blade-service-api/logpm-distribution-api/src/main/java/com/logpm/distribution/vo/DistributionParcelListVO.java b/blade-service-api/logpm-distribution-api/src/main/java/com/logpm/distribution/vo/DistributionParcelListVO.java index 1523e5f82..961be6fd0 100644 --- a/blade-service-api/logpm-distribution-api/src/main/java/com/logpm/distribution/vo/DistributionParcelListVO.java +++ b/blade-service-api/logpm-distribution-api/src/main/java/com/logpm/distribution/vo/DistributionParcelListVO.java @@ -100,6 +100,19 @@ public class DistributionParcelListVO extends DistributionParcelListEntity { */ private List warehouseIdList; + /** + * 商场id + */ + private Long mallId; + /** + * 商场id + */ + private String genre; + /** + * 商场id + */ + private String isZero; + /** * 装车数量 */ diff --git a/blade-service-api/logpm-distribution-api/src/main/java/com/logpm/distribution/vo/DistributionParcelListZeroVO.java b/blade-service-api/logpm-distribution-api/src/main/java/com/logpm/distribution/vo/DistributionParcelListZeroVO.java index f379ca68a..dfd0e25a6 100644 --- a/blade-service-api/logpm-distribution-api/src/main/java/com/logpm/distribution/vo/DistributionParcelListZeroVO.java +++ b/blade-service-api/logpm-distribution-api/src/main/java/com/logpm/distribution/vo/DistributionParcelListZeroVO.java @@ -38,11 +38,21 @@ public class DistributionParcelListZeroVO implements Serializable { */ @ApiModelProperty(value = "填写数量") private Integer TiQuantity; + /** + * 冻结数量 + */ + @ApiModelProperty(value = "冻结数量") + private Integer deliveryQuantity; /** * 配送数量 */ @ApiModelProperty(value = "配送数量") - private Integer deliveryQuantity; + private Integer reservationQuantity; + /** + * 配送数量 + */ + @ApiModelProperty(value = "出库数量") + private Integer outboundQuantity; diff --git a/blade-service-api/logpm-distribution-api/src/main/java/com/logpm/distribution/vo/DistributionStockListVO.java b/blade-service-api/logpm-distribution-api/src/main/java/com/logpm/distribution/vo/DistributionStockListVO.java index 99c8f0977..b7e23522d 100644 --- a/blade-service-api/logpm-distribution-api/src/main/java/com/logpm/distribution/vo/DistributionStockListVO.java +++ b/blade-service-api/logpm-distribution-api/src/main/java/com/logpm/distribution/vo/DistributionStockListVO.java @@ -102,10 +102,30 @@ public class DistributionStockListVO extends DistributionStockListEntity { */ @ApiModelProperty(value = "托盘id") private String trayCode; + /** + * 托盘id + */ + @ApiModelProperty(value = "托盘id") + private String trayId; + /** + * 库位id + */ + @ApiModelProperty(value = "库位id") + private String allocationId; /** * 货位信息 */ @ApiModelProperty(value = "货位信息") private String positionCode; + /** + * 类型 + */ + @ApiModelProperty(value = "类型") + private Integer conditions; + /** + * 类型 + */ + @ApiModelProperty(value = "shan") + private String mallName; } diff --git a/blade-service-api/logpm-distribution-api/src/main/java/com/logpm/distribution/vo/DistributionStockupOrderListVO.java b/blade-service-api/logpm-distribution-api/src/main/java/com/logpm/distribution/vo/DistributionStockupOrderListVO.java index 80558e1aa..0f7f40d7b 100644 --- a/blade-service-api/logpm-distribution-api/src/main/java/com/logpm/distribution/vo/DistributionStockupOrderListVO.java +++ b/blade-service-api/logpm-distribution-api/src/main/java/com/logpm/distribution/vo/DistributionStockupOrderListVO.java @@ -33,6 +33,8 @@ public class DistributionStockupOrderListVO implements Serializable { private Long areaId; //货区id private String trayId; //托盘id + private String customerAddress; //客户地址 + private String firstsNumber; //品类数量 private Long shelfId; //货架id private Long parcelListId; //包件id private Long stockId; //备货id diff --git a/blade-service-api/logpm-distribution-api/src/main/java/com/logpm/distribution/vo/DistributionStockupVO.java b/blade-service-api/logpm-distribution-api/src/main/java/com/logpm/distribution/vo/DistributionStockupVO.java index b7f18520b..718cacf3b 100644 --- a/blade-service-api/logpm-distribution-api/src/main/java/com/logpm/distribution/vo/DistributionStockupVO.java +++ b/blade-service-api/logpm-distribution-api/src/main/java/com/logpm/distribution/vo/DistributionStockupVO.java @@ -72,6 +72,7 @@ public class DistributionStockupVO extends DistributionStockupEntity { private Integer number; private String goodsAllocation; //货位 private String stockipAllocation; //货位 + private String pallet; //托盘位 private Integer reservationStockListNum; //数量 private String reservationId; //预约ID private String stockListId; //库存品ID diff --git a/blade-service-api/logpm-warehouse-api/src/main/java/com/logpm/warehouse/entity/QuestDetailEntity.java b/blade-service-api/logpm-warehouse-api/src/main/java/com/logpm/warehouse/entity/QuestDetailEntity.java index 2669c6ad3..798fcaac4 100644 --- a/blade-service-api/logpm-warehouse-api/src/main/java/com/logpm/warehouse/entity/QuestDetailEntity.java +++ b/blade-service-api/logpm-warehouse-api/src/main/java/com/logpm/warehouse/entity/QuestDetailEntity.java @@ -16,6 +16,7 @@ */ package com.logpm.warehouse.entity; +import com.baomidou.mybatisplus.annotation.TableField; import com.baomidou.mybatisplus.annotation.TableName; import io.swagger.annotations.ApiModel; import io.swagger.annotations.ApiModelProperty; @@ -23,6 +24,8 @@ import lombok.Data; import lombok.EqualsAndHashCode; import org.springblade.core.tenant.mp.TenantEntity; +import java.util.List; + /** * 盘点明细 实体类 * @@ -120,6 +123,13 @@ public class QuestDetailEntity extends TenantEntity { */ @ApiModelProperty(value = "在库数量") private Integer stockNum; + + + /** + * 商场名称 + */ + @TableField(exist = false) + private List marketNames; /** * 仓库id */ @@ -146,12 +156,12 @@ public class QuestDetailEntity extends TenantEntity { * 托盘id */ @ApiModelProperty(value = "托盘id") - private Long trayId; + private String trayId; /** * 货位id */ @ApiModelProperty(value = "货位id") - private Long allocationId; + private String allocationId; /** * 是否是新增数据 diff --git a/blade-service/logpm-basicdata/src/main/java/com/logpm/basicdata/service/impl/BasicdataClientServiceImpl.java b/blade-service/logpm-basicdata/src/main/java/com/logpm/basicdata/service/impl/BasicdataClientServiceImpl.java index f2397a0df..c5bce739d 100644 --- a/blade-service/logpm-basicdata/src/main/java/com/logpm/basicdata/service/impl/BasicdataClientServiceImpl.java +++ b/blade-service/logpm-basicdata/src/main/java/com/logpm/basicdata/service/impl/BasicdataClientServiceImpl.java @@ -269,6 +269,7 @@ public class BasicdataClientServiceImpl extends BaseServiceImpl data, Boolean isCovered) { log.info("客户导入数据"); List storeContactEntities = new ArrayList<>(); // 联系人 @@ -418,6 +419,9 @@ public class BasicdataClientServiceImpl extends BaseServiceImpl map = new HashMap<>(); diff --git a/blade-service/logpm-distribution/src/main/java/com/logpm/distribution/controller/DistributionParcelListController.java b/blade-service/logpm-distribution/src/main/java/com/logpm/distribution/controller/DistributionParcelListController.java index 7ca33b4aa..184ff88d9 100644 --- a/blade-service/logpm-distribution/src/main/java/com/logpm/distribution/controller/DistributionParcelListController.java +++ b/blade-service/logpm-distribution/src/main/java/com/logpm/distribution/controller/DistributionParcelListController.java @@ -163,10 +163,10 @@ public class DistributionParcelListController extends BladeController { /** * 修改零担在库数量 */ - @GetMapping("/zeroUpdateMaterial") + @PutMapping("/zeroUpdateMaterial") @ApiOperationSupport(order = 2) @ApiOperation(value = "修改零担在库数量", notes = "传入distributionParcelList") - public R> getZeroUpdateMaterial(@ApiIgnore @RequestParam Map distributionParcelList, Query query) { + public R> getZeroUpdateMaterial(@RequestBody Map distributionParcelList, Query query) { int a = distributionParcelListService.getZeroUpdateMaterial(distributionParcelList); return a > 0 ? R.success("修改成功!") : R.fail("修改失败!"); } diff --git a/blade-service/logpm-distribution/src/main/java/com/logpm/distribution/feign/DistributionParcelListClient.java b/blade-service/logpm-distribution/src/main/java/com/logpm/distribution/feign/DistributionParcelListClient.java index 1d15ec402..e8a8bb27b 100644 --- a/blade-service/logpm-distribution/src/main/java/com/logpm/distribution/feign/DistributionParcelListClient.java +++ b/blade-service/logpm-distribution/src/main/java/com/logpm/distribution/feign/DistributionParcelListClient.java @@ -23,6 +23,7 @@ import com.baomidou.mybatisplus.core.toolkit.ObjectUtils; import com.baomidou.mybatisplus.core.toolkit.Wrappers; import com.logpm.distribution.entity.DistributionParcelListEntity; import com.logpm.distribution.service.IDistributionParcelListService; +import com.logpm.distribution.vo.DistributionParcelListVO; import lombok.AllArgsConstructor; import org.springblade.core.mp.support.BladePage; import org.springblade.core.mp.support.Condition; @@ -172,4 +173,10 @@ public class DistributionParcelListClient implements IDistributionParcelListClie .eq("order_code",orderCode); distributionParcelListService.update(updateWrapper); } + + @Override + @PostMapping(GETPARCELLISTINFO) + public List getParcelListInfo(DistributionParcelListVO parcelListVO) { + return distributionParcelListService.getParcelListInfo(parcelListVO); + } } diff --git a/blade-service/logpm-distribution/src/main/java/com/logpm/distribution/feign/DistributionStockArticleClient.java b/blade-service/logpm-distribution/src/main/java/com/logpm/distribution/feign/DistributionStockArticleClient.java index 049aaf615..934f29137 100644 --- a/blade-service/logpm-distribution/src/main/java/com/logpm/distribution/feign/DistributionStockArticleClient.java +++ b/blade-service/logpm-distribution/src/main/java/com/logpm/distribution/feign/DistributionStockArticleClient.java @@ -19,6 +19,8 @@ package com.logpm.distribution.feign; import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper; import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper; import com.baomidou.mybatisplus.core.metadata.IPage; +import com.baomidou.mybatisplus.core.toolkit.ObjectUtils; +import com.baomidou.mybatisplus.core.toolkit.Wrappers; import com.logpm.distribution.entity.DistributionParcelListEntity; import com.logpm.distribution.entity.DistributionStockArticleEntity; import com.logpm.distribution.service.IDistributionParcelListService; @@ -191,4 +193,22 @@ public class DistributionStockArticleClient implements IDistributionStockArticle distributionStockArticleService.submitHandleNumByOrderId(subNum,articleId); } + /** + * 查询订单数据 + * @param stockArticleEntity + * @return + */ + @Override + @PostMapping(GETSTOCKARTICLEINFO) + public List getStockArticleInfo(DistributionStockArticleEntity stockArticleEntity) { + return distributionStockArticleService.list(Wrappers.query().lambda() + .eq(DistributionStockArticleEntity::getWarehouseId,stockArticleEntity.getWarehouseId()) + .eq(ObjectUtils.isNotNull(stockArticleEntity.getMallId()),DistributionStockArticleEntity::getMallId,stockArticleEntity.getMallId()) + .eq(ObjectUtils.isNotNull(stockArticleEntity.getId()),DistributionStockArticleEntity::getId,stockArticleEntity.getId()) + .eq(ObjectUtils.isNotNull(stockArticleEntity.getGenre()),DistributionStockArticleEntity::getGenre,stockArticleEntity.getGenre()) + .eq(ObjectUtils.isNotNull(stockArticleEntity.getIsZero()),DistributionStockArticleEntity::getIsZero,stockArticleEntity.getIsZero()) + ); + + } + } diff --git a/blade-service/logpm-distribution/src/main/java/com/logpm/distribution/feign/DistributionStockListClient.java b/blade-service/logpm-distribution/src/main/java/com/logpm/distribution/feign/DistributionStockListClient.java index 01ce2518f..a6713755a 100644 --- a/blade-service/logpm-distribution/src/main/java/com/logpm/distribution/feign/DistributionStockListClient.java +++ b/blade-service/logpm-distribution/src/main/java/com/logpm/distribution/feign/DistributionStockListClient.java @@ -173,4 +173,16 @@ public class DistributionStockListClient implements IDistributionStockListClient return distributionStockListService.list(stockListEntityLambdaQueryWrapper); } + /** + * 查询商场库存平 + * + * @param distributionStockListEntity + * @return + */ + @Override + @PostMapping(GETSTOCKLISTINFO) + public List getStockListInfo(DistributionStockListEntity distributionStockListEntity) { + return distributionStockListService.getStockListInfo(distributionStockListEntity); + } + } diff --git a/blade-service/logpm-distribution/src/main/java/com/logpm/distribution/mapper/DistributionParcelListMapper.java b/blade-service/logpm-distribution/src/main/java/com/logpm/distribution/mapper/DistributionParcelListMapper.java index 729bc5307..dad2f097c 100644 --- a/blade-service/logpm-distribution/src/main/java/com/logpm/distribution/mapper/DistributionParcelListMapper.java +++ b/blade-service/logpm-distribution/src/main/java/com/logpm/distribution/mapper/DistributionParcelListMapper.java @@ -117,4 +117,6 @@ public interface DistributionParcelListMapper extends BaseMapper selectorderCodeByLike(@Param("condition") String condition,@Param("collect") List collect); List selectStockListByOderId(@Param("id")Long id,@Param("collect") List collect); + + List getParcelListInfo(@Param("param")DistributionParcelListVO parcelListVO); } diff --git a/blade-service/logpm-distribution/src/main/java/com/logpm/distribution/mapper/DistributionParcelListMapper.xml b/blade-service/logpm-distribution/src/main/java/com/logpm/distribution/mapper/DistributionParcelListMapper.xml index b478855fd..1392a7356 100644 --- a/blade-service/logpm-distribution/src/main/java/com/logpm/distribution/mapper/DistributionParcelListMapper.xml +++ b/blade-service/logpm-distribution/src/main/java/com/logpm/distribution/mapper/DistributionParcelListMapper.xml @@ -34,9 +34,79 @@ + + from logpm_distribution_stock_article ldsa + LEFT JOIN logpm_distribution_parcel_list ldpl on ldsa.id = ldpl.stock_article_id + + ldsa.warehouse_id = #{param.warehouseId} and ldpl.order_package_status != '70' + and ldsa.mall_id = #{param.mallId} + and ldsa.genre = #{param.genre} + and ldsa.is_zero = #{param.isZero} + + + + + 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 d7c346bac..87ede2189 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 @@ -180,14 +180,15 @@ 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 4057901cb..6d45ee5f1 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 @@ -114,24 +114,27 @@ SELECT * FROM logpm_distrilbution_bill_stock ${ew.customSqlSegment} + + + + CREATE TABLE ${questNum} ( + `id` bigint(20) NOT NULL COMMENT '主键', + `tenant_id` varchar(32) CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci NULL DEFAULT NULL COMMENT '租户号', + `create_user` bigint(20) NULL DEFAULT NULL COMMENT '创建人', + `create_time` datetime(0) NULL DEFAULT NULL COMMENT '创建时间', + `update_user` bigint(20) NULL DEFAULT NULL COMMENT '更新人', + `update_time` datetime(0) NULL DEFAULT NULL COMMENT '更新时间', + `create_dept` bigint(20) NULL DEFAULT NULL COMMENT '创建部门', + `is_deleted` int(11) NULL DEFAULT NULL COMMENT '是否删除', + `status` int(11) NULL DEFAULT NULL COMMENT '状态', + `reserve1` varchar(255) CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci NULL DEFAULT NULL COMMENT '预留1', + `reserve2` varchar(255) CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci NULL DEFAULT NULL COMMENT '预留2', + `reserve3` varchar(255) CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci NULL DEFAULT NULL COMMENT '预留3', + `reserve4` varchar(255) CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci NULL DEFAULT NULL COMMENT '预留4', + `reserve5` varchar(255) CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci NULL DEFAULT NULL COMMENT '预留5', + `quest_detail_id` bigint(20) NULL DEFAULT NULL COMMENT '盘点明细ID', + `cargo_name` varchar(10) CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci NULL DEFAULT NULL COMMENT '货物状态;10 在库 20 破损 30丢失 40不可修复 50配送 60未入库', + `quest_num` int(10) NOT NULL DEFAULT 1 COMMENT '盘点数量', + `warehouse_id` bigint(20) NULL DEFAULT NULL COMMENT '仓库id', + PRIMARY KEY (`id`) USING BTREE, + INDEX `quest_detail_id_index`(`quest_detail_id`) USING BTREE COMMENT '盘点明细' + ) ENGINE = InnoDB CHARACTER SET = utf8mb4 COLLATE = utf8mb4_general_ci COMMENT = '${questNum}盘点明细子表' ROW_FORMAT = Dynamic; + + + CREATE TABLE ${questNum} ( + `id` bigint(20) NOT NULL COMMENT '主键', + `tenant_id` varchar(32) CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci NULL DEFAULT NULL COMMENT '租户号', + `create_user` bigint(20) NULL DEFAULT NULL COMMENT '创建人', + `create_time` datetime(0) NULL DEFAULT NULL COMMENT '创建时间', + `update_user` bigint(20) NULL DEFAULT NULL COMMENT '更新人', + `update_time` datetime(0) NULL DEFAULT NULL COMMENT '更新时间', + `create_dept` bigint(20) NULL DEFAULT NULL COMMENT '创建部门', + `is_deleted` int(11) NULL DEFAULT NULL COMMENT '是否删除', + `status` int(11) NULL DEFAULT NULL COMMENT '状态', + `reserve1` varchar(255) CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci NULL DEFAULT NULL COMMENT '预留1', + `reserve2` varchar(255) CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci NULL DEFAULT NULL COMMENT '预留2', + `reserve3` varchar(255) CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci NULL DEFAULT NULL COMMENT '预留3', + `reserve4` varchar(255) CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci NULL DEFAULT NULL COMMENT '预留4', + `reserve5` varchar(255) CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci NULL DEFAULT NULL COMMENT '预留5', + `order_code` varchar(50) CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci NULL DEFAULT NULL COMMENT '订单号', + `quest_id` bigint(20) NULL DEFAULT NULL COMMENT '任务ID', + `order_id` bigint(20) NULL DEFAULT NULL COMMENT '订单ID', + `quest_type` int(11) NULL DEFAULT NULL COMMENT '盘点方式;1. 随机 2 库位3 订单 4 托盘', + `quest_target` int(11) NULL DEFAULT NULL COMMENT '盘点对象;1.定制品 2零担 3 库存品', + `orde_package_code` varchar(120) CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci NULL DEFAULT NULL COMMENT '包条码;对应定制品', + `order_package_id` bigint(20) NULL DEFAULT NULL COMMENT '包条ID;对应定制品', + `category_name` varchar(255) CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci NULL DEFAULT NULL COMMENT '品类名称;对应零担', + `stock_id` bigint(20) NULL DEFAULT NULL COMMENT '库存品ID;对应库存品', + `quest_status` int(10) NOT NULL DEFAULT 0 COMMENT '盘点状态;0 待盘点 1. 已盘 2未盘点 3已排除', + `stock_num` int(10) NOT NULL DEFAULT 1 COMMENT '在库数量', + `warehouse_id` bigint(20) NULL DEFAULT NULL COMMENT '仓库id', + `position_code` varchar(255) CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci NULL DEFAULT NULL COMMENT '完整货位(按库位)', + `tray_code` varchar(255) CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci NULL DEFAULT NULL COMMENT '托盘码(按托盘)', + `tray_id` varchar(255) CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci NULL DEFAULT NULL COMMENT '托盘id(按托盘)', + `allocation_id` varchar(255) CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci NULL DEFAULT NULL COMMENT '货位id(按库位)', + `grounding_allocation_id` bigint(20) NULL DEFAULT NULL COMMENT '上架后的库位ID', + `is_new` int(20) NULL DEFAULT NULL COMMENT '是否是新增数据', + `grounding_position_code` varchar(64) CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci NULL DEFAULT NULL COMMENT '上架后的完整库位', + `material_code` varchar(64) CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci NULL DEFAULT NULL COMMENT '物料编码(库存品)', + `market_name` varchar(64) CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci NULL DEFAULT NULL COMMENT '商场名称(库存品)', + `incoming_batch` varchar(64) CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci NULL DEFAULT NULL COMMENT '批次号(库存品)', + `material_name` varchar(64) CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci NULL DEFAULT NULL COMMENT '物料名称(库存品)', + `waybill_number` varchar(32) CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci NULL DEFAULT NULL COMMENT '运单号', + PRIMARY KEY (`id`) USING BTREE, + INDEX `quest_id_index`(`quest_id`) USING BTREE COMMENT '任务id', + INDEX `order_id_index`(`order_id`) USING BTREE COMMENT '订单id', + INDEX `tenant_id_index`(`tenant_id`) USING BTREE COMMENT '租户id' + ) ENGINE = InnoDB CHARACTER SET = utf8mb4 COLLATE = utf8mb4_general_ci COMMENT = '${questNum}盘点明细' ROW_FORMAT = Dynamic; + + + INSERT INTO ${questNum}(`id`, `tenant_id`, `create_user`, `create_time`, `update_user`, `update_time`, `create_dept`, + `is_deleted`, `status`, `reserve1`, `reserve2`, `reserve3`, `reserve4`, `reserve5`, `order_code`, `quest_id`, `order_id`, `quest_type`, `quest_target`, + `orde_package_code`, `order_package_id`, `category_name`, `stock_id`, `quest_status`, `stock_num`, `warehouse_id`, `position_code`, `tray_code`, `tray_id`, + `allocation_id`, `grounding_allocation_id`, `is_new`, `grounding_position_code`, `material_code`, `market_name`, `incoming_batch`, `material_name`, + `waybill_number`) VALUES + + (#{item.id}, #{item.tenantId}, #{item.createUser}, #{item.createTime}, #{item.updateUser}, #{item.updateTime}, #{item.createDept}, #{item.isDeleted} + , #{item.status}, #{item.reserve1}, #{item.reserve2}, #{item.reserve3}, #{item.reserve4}, #{item.reserve5}, #{item.orderCode}, #{item.questId}, #{item.orderId} + , #{item.questType}, #{item.questTarget}, #{item.ordePackageCode}, #{item.orderPackageId}, #{item.categoryName}, #{item.stockId}, #{item.questStatus}, + #{item.stockNum}, #{item.warehouseId} , #{item.positionCode}, #{item.trayCode}, #{item.trayId}, #{item.allocationId}, #{item.groundingAllocationId}, + #{item.isNew}, #{item.groundingPositionCode}, #{item.materialCode}, #{item.marketName} , #{item.incomingBatch}, #{item.materialName}, #{item.waybillNumber} + ) + + + + + + + + + update ${questNum} set quest_status = #{param.questStatus} + WHERE `id` = #{ param.id } + + + + update ${questNum} + + grounding_allocation_id = #{item. groundingAllocationId}, + grounding_position_code = #{item.groundingPositionCode }, + quest_status = #{item.questStatus }, + + + WHERE `id` = #{ param.id } + + + + + - SELECT * FROM logpm_distribution_delivery_list ${ew.customSqlSegment} - + SELECT * FROM logpm_distribution_reservation ${ew.customSqlSegment} + + + diff --git a/blade-service/logpm-distribution/src/main/java/com/logpm/distribution/mapper/DistributionDeliveryTripartiteMapper.java b/blade-service/logpm-distribution/src/main/java/com/logpm/distribution/mapper/DistributionDeliveryTripartiteMapper.java index 5d7876912..6128c9a4b 100644 --- a/blade-service/logpm-distribution/src/main/java/com/logpm/distribution/mapper/DistributionDeliveryTripartiteMapper.java +++ b/blade-service/logpm-distribution/src/main/java/com/logpm/distribution/mapper/DistributionDeliveryTripartiteMapper.java @@ -67,4 +67,11 @@ public interface DistributionDeliveryTripartiteMapper extends BaseMapper select id id,driver_name driverName,vehicle_num vehicleNub FROM logpm_distribution_delivery_tripartite where delivery_id = #{deliveryId} + diff --git a/blade-service/logpm-distribution/src/main/java/com/logpm/distribution/mapper/DistributionSignforMapper.xml b/blade-service/logpm-distribution/src/main/java/com/logpm/distribution/mapper/DistributionSignforMapper.xml index 896b546f1..5bd541f52 100644 --- a/blade-service/logpm-distribution/src/main/java/com/logpm/distribution/mapper/DistributionSignforMapper.xml +++ b/blade-service/logpm-distribution/src/main/java/com/logpm/distribution/mapper/DistributionSignforMapper.xml @@ -931,6 +931,6 @@ ldla.reservation_id = #{reservationId} and ldla.delivery_list_id = #{deliveryListId} diff --git a/blade-service/logpm-distribution/src/main/java/com/logpm/distribution/service/IDistributionDeliveryListService.java b/blade-service/logpm-distribution/src/main/java/com/logpm/distribution/service/IDistributionDeliveryListService.java index 06f39f4b2..25b838b5e 100644 --- a/blade-service/logpm-distribution/src/main/java/com/logpm/distribution/service/IDistributionDeliveryListService.java +++ b/blade-service/logpm-distribution/src/main/java/com/logpm/distribution/service/IDistributionDeliveryListService.java @@ -289,4 +289,31 @@ public interface IDistributionDeliveryListService extends BaseService getDriverInfo(Long deliveryId); } diff --git a/blade-service/logpm-distribution/src/main/java/com/logpm/distribution/service/IDistributionSignforService.java b/blade-service/logpm-distribution/src/main/java/com/logpm/distribution/service/IDistributionSignforService.java index daae21d13..e15210774 100644 --- a/blade-service/logpm-distribution/src/main/java/com/logpm/distribution/service/IDistributionSignforService.java +++ b/blade-service/logpm-distribution/src/main/java/com/logpm/distribution/service/IDistributionSignforService.java @@ -195,4 +195,6 @@ public interface IDistributionSignforService extends BaseService selectDistributionDeliveryorder(IPage page, DistributionDeliveryInfoDTO distributionDeliveryInfoDTO) { List distributionDeliveryInfoVOS = baseMapper.selectDistributionDeliveryOrderPage(page, distributionDeliveryInfoDTO); - for (DistributionStockArticleVO distributionDeliveryInfoVO : distributionDeliveryInfoVOS) { - //查询签收数量 - //查询装车数量 -// distributionDeliveryInfoVO.get -// distributionDeliveryInfoVO.setLoadingNumber(); -// distributionLoadscanService.list(Wrappers.query().lambda().eq()) -// DistributionStockArticleWrapper.build().buildVoInfor(distributionDeliveryInfoVO); - } +// for (DistributionStockArticleVO distributionDeliveryInfoVO : distributionDeliveryInfoVOS) { +// //查询签收数量 +// //查询装车数量 +//// distributionDeliveryInfoVO.get +//// distributionDeliveryInfoVO.setLoadingNumber(); +//// distributionLoadscanService.list(Wrappers.query().lambda().eq()) +//// DistributionStockArticleWrapper.build().buildVoInfor(distributionDeliveryInfoVO); +// } return page.setRecords(distributionDeliveryInfoVOS); } diff --git a/blade-service/logpm-distribution/src/main/java/com/logpm/distribution/service/impl/DistributionDeliveryListServiceImpl.java b/blade-service/logpm-distribution/src/main/java/com/logpm/distribution/service/impl/DistributionDeliveryListServiceImpl.java index d9e434d28..660fd7087 100644 --- a/blade-service/logpm-distribution/src/main/java/com/logpm/distribution/service/impl/DistributionDeliveryListServiceImpl.java +++ b/blade-service/logpm-distribution/src/main/java/com/logpm/distribution/service/impl/DistributionDeliveryListServiceImpl.java @@ -42,7 +42,9 @@ import com.logpm.distribution.vo.*; import com.logpm.distribution.vo.app.*; import com.logpm.distribution.vo.print.PrintPreviewVO; import com.logpm.distribution.wrapper.*; +import com.logpm.warehouse.entity.WarehouseRetentionScanEntity; import com.logpm.warehouse.entity.WarehouseTrayGoodsEntity; +import com.logpm.warehouse.feign.IWarehouseRetentionScanClient; import com.logpm.warehouse.feign.IWarehouseTrayGoodsClient; import com.logpm.warehouse.feign.IWarehouseTrayTypeClient; import com.logpm.warehouse.feign.IWarehouseUpdownTypeClient; @@ -151,6 +153,7 @@ public class DistributionDeliveryListServiceImpl extends BaseServiceImpl reservationStockarticleEntityList = distributionReservationStockarticleService.list(Wrappers.query().lambda() .eq(DistributionReservationStockarticleEntity::getReservationId, distrilbutionloadingscanDTO.getReservationId())); @@ -1314,7 +1319,6 @@ public class DistributionDeliveryListServiceImpl extends BaseServiceImpl { - List parcelListEntities = distributionReservationMapper.selectPackageByReservationAndStockArticle(distrilbutionloadingscanDTO.getReservationId(), ord.getStockArticleId()); for (DistributionParcelListEntity parcelListEntity : parcelListEntities) { DistributionLoadscanEntity loadscanEntity = new DistributionLoadscanEntity(); @@ -5153,6 +5157,142 @@ public class DistributionDeliveryListServiceImpl extends BaseServiceImpl retentionScanVos = new ArrayList<>(); + switch (retentionType){ + case 1: + //包件--库存品 和包件 + List parcelListEntities = baseMapper.selectPackageListByDeliveryListId(distrilbutionloadingscanDTO.getDeliveryId()); +// List detailEntities = baseMapper.selectInventoryListByDeliveryListId(distrilbutionloadingscanDTO.getDeliveryId()); + if (Func.isNotEmpty(parcelListEntities)){ + List packageInfo = parcelListEntities.stream().filter(p -> Func.isNotEmpty(p.getOrderPackageCode()) && p.getOrderPackageCode().equals(distrilbutionloadingscanDTO.getBarcode())).collect(Collectors.toList()); + if (packageInfo.size()>1){ + log.error("################包条码重复:{}",distrilbutionloadingscanDTO.getBarcode()); + return Resp.scanFail("操作失败","操作失败"); + } + if (packageInfo.size() == 1){ +// DistributionRetentionScanVo distributionRetentionScanVo = new DistributionRetentionScanVo(); + //此时才是满足条件的包件,能够进行滞留 + //通过配送任务和包件确定预约信息 + DistributionParcelListEntity parcelListEntity = packageInfo.get(0); + DistributionRetentionScanVo retentionPackage = baseMapper.selectRetentionPackage(parcelListEntity.getOrderPackageCode(), distrilbutionloadingscanDTO.getDeliveryId()); + +// distributionRetentionScanVo.setConditions(1); +// distributionRetentionScanVo.setOrderCode(parcelListEntity.getOrderPackageCode()); +// distributionRetentionScanVo.setOrderId(parcelListEntity.getStockArticleId()); +// distributionRetentionScanVo.setOrderPackageId(parcelListEntity.getId()); +// distributionRetentionScanVo.setOrderPackageCode(parcelListEntity.getOrderPackageCode()); +// distributionRetentionScanVo.setReservationCode(reservationEntity.getReservationCode()); +// distributionRetentionScanVo.setReservationId(reservationEntity.getId()); +// distributionRetentionScanVo.setRetentionQuantity(parcelListEntity.getQuantity()); +// retentionScanVos.add(distributionRetentionScanVo); + } + // + } else { + List detailEntities = baseMapper.selectInventoryListByDeliveryListId(distrilbutionloadingscanDTO.getDeliveryId()); + if (Func.isNotEmpty(detailEntities)){ + List stockListDetailEntities = detailEntities.stream().filter(i -> Func.isNotEmpty(i.getStockPackageCode()) && Func.equals(i.getStockPackageCode(), distrilbutionloadingscanDTO.getDeliveryId())).collect(Collectors.toList()); + if (stockListDetailEntities.size()> 1){ + log.error("################库存品条码重复:{}",distrilbutionloadingscanDTO.getBarcode()); + return Resp.scanFail("操作失败","操作失败"); + } + + if (stockListDetailEntities.size() == 1){ +// DistributionRetentionScanVo distributionRetentionScanVo = new DistributionRetentionScanVo(); + //此时才是满足条件的包件,能够进行滞留 + //通过配送任务和包件确定预约信息 + DisStockListDetailEntity disStockListDetailEntity = stockListDetailEntities.get(0); + DistributionRetentionScanVo inventoryPackage = baseMapper.selectRetentionInventoryPackage(disStockListDetailEntity.getStockPackageCode(), distrilbutionloadingscanDTO.getDeliveryId()); + retentionScanVos.add(inventoryPackage); + } + }else { + log.error("################查询包件和库存品为空:{}",distrilbutionloadingscanDTO.getDeliveryId()); + return Resp.scanFail("操作失败","不属于该配送任务!!!"); + } + + } + List distributionRetentionScanVos = baseMapper.selectRetentionZeroPackage(distrilbutionloadingscanDTO.getDeliveryId(),distrilbutionloadingscanDTO.getBarcode()); + if (Func.isNotEmpty(distributionRetentionScanVos)){ + retentionScanVos.addAll(distributionRetentionScanVos); + } + break; + case 2: + //托盘 + break; + default: + log.info("################无满足滞留扫描类型"); + break; + } +// warehouseRetentionScanClient.saveRetentionScan(); + if (Func.isEmpty(retentionScanVos)){ + return Resp.scanFail("操作失败","无该信息!!!"); + } + return R.data(retentionScanVos); + } + + @Override + public R getZeroPackageInfo(DistrilbutionloadingscanDTO distrilbutionloadingscanDTO) { + List reservationStockarticleEntityList = baseMapper.selectReservationStockByDeliveryId(distrilbutionloadingscanDTO.getDeliveryId()); + if (Func.isEmpty(reservationStockarticleEntityList)){ + log.error("#############配送任务查询订单错误,deliveryId:{}",distrilbutionloadingscanDTO.getDeliveryId()); + return null; + } + List orderIds = reservationStockarticleEntityList.stream().filter(rs -> Func.isNotEmpty(rs.getIsZero()) && rs.getIsZero().equals(IsOrNoConstant.yes.getValue())).map(DistributionReservationStockarticleEntity::getStockArticleId).collect(Collectors.toList()); + if (Func.isEmpty(orderIds)){ + log.error("####################配送任务下无零担信息:{}"); + return Resp.scanFail("查询错误","该任务无零担订单"); + } + List parcelNumberVOS = new ArrayList<>(); + orderIds.forEach(o->{ + List parcelNumberVOList = baseMapper.selectDeliveryZeroOrderDetail(o, distrilbutionloadingscanDTO.getDeliveryId()); + if (Func.isNotEmpty(parcelNumberVOList)){ + parcelNumberVOS.addAll(parcelNumberVOList); + } + }); + if (Func.isEmpty(parcelNumberVOS)){ + return Resp.scanFail("查询失败","该配送任务无该零担订单"); + } + return R.data(parcelNumberVOS); + } + + @Override + public R getInventoryInfo(DistrilbutionloadingscanDTO distrilbutionloadingscanDTO) { + List detailEntities = baseMapper.selectInventoryListByDeliveryListId(distrilbutionloadingscanDTO.getDeliveryId()); + if (Func.isEmpty(detailEntities)){ + log.error("######################查询配送任务零担信息错误,deliveryId:{},",distrilbutionloadingscanDTO.getDeliveryId()); + return null; + } + List stockListDetailEntities = detailEntities.stream().filter(d -> Func.isNotEmpty(d.getStockPackageCode())).filter(d -> d.getStockPackageCode().equals(distrilbutionloadingscanDTO.getBarcode())).collect(Collectors.toList()); + List disStockListDetailVOS = DistributionDisStockListWrapper.build().listVO(stockListDetailEntities); + List inventoryIds = disStockListDetailVOS.stream().map(DisStockListDetailVO::getStockListId).distinct().collect(Collectors.toList()); + DistributionStockListEntity distributionStockListEntity = distributionStockListService.listByIds(inventoryIds).get(0); + disStockListDetailVOS.stream().forEach(d->{d.setMarketName(distributionStockListEntity.getMarketName());d.setCargoNumber(distributionStockListEntity.getCargoNumber());}); + if (Func.isEmpty(stockListDetailEntities)){ + return Resp.scanFail("查询失败","不属于该配送任务"); + } + return R.data(stockListDetailEntities); + } + + @Override + public List getDriverInfo(Long deliveryId) { + DistributionDeliveryListEntity distributionDeliveryListEntity = distributionDeliveryListMapper.selectById(deliveryId); + if (Func.isEmpty(distributionDeliveryListEntity)) { + log.error("############################# 配送任务查询为空,deliveryId为:{}", distributionDeliveryListEntity); + } + //零担订单进行装车 + //这里需要进行判定是进行编辑还是进行的装车 + DistributionDeliverySelfEntity distributionDeliverySelfEntity = new DistributionDeliverySelfEntity(); + if (distributionDeliveryListEntity.getKind().equals("1")) { + distributionDeliverySelfEntity = distributionDeliverySelfMapper.selectById(deliveryId); + } else { + DistributionDeliveryTripartiteEntity distributionDeliveryTripartiteEntity = distributionDeliveryTripartiteMapper.selectTripartiteInfo(deliveryId); + BeanUtils.copyProperties(distributionDeliveryTripartiteEntity, distributionDeliverySelfEntity); + } + return null; + } + public Map getDriverCar(String kind, Long deliveryListEntityId) { Map map = new HashMap<>(); diff --git a/blade-service/logpm-distribution/src/main/java/com/logpm/distribution/service/impl/DistributionSignforServiceImpl.java b/blade-service/logpm-distribution/src/main/java/com/logpm/distribution/service/impl/DistributionSignforServiceImpl.java index 9e2c73021..b3f62f0ae 100644 --- a/blade-service/logpm-distribution/src/main/java/com/logpm/distribution/service/impl/DistributionSignforServiceImpl.java +++ b/blade-service/logpm-distribution/src/main/java/com/logpm/distribution/service/impl/DistributionSignforServiceImpl.java @@ -2216,7 +2216,6 @@ public class DistributionSignforServiceImpl extends BaseServiceImpl distributionSignPrintList = new ArrayList<>(); distributionSignfor.getMap().forEach((k, v) -> { - List list = iDistributionSignPrintService.list(Wrappers.query().lambda() .eq(DistributionSignPrintEntity::getReservationId, distributionSignfor.getReservationId()) .eq(DistributionSignPrintEntity::getType, k) @@ -2486,5 +2485,16 @@ public class DistributionSignforServiceImpl extends BaseServiceImpl> retentionPackageList(@RequestBody RetentionDTO retentionDTO) { + String method = "###########retentionPackageList: "; + log.info(method + "滞留包件列表 retentionDTO={}", retentionDTO); + Integer pageNum = retentionDTO.getPageNum(); + Integer pageSize = retentionDTO.getPageSize(); + + if (Objects.isNull(pageNum)) { + retentionDTO.setPageNum(1); + } + if (Objects.isNull(pageSize)) { + retentionDTO.setPageSize(10); + } + + try { + //查询订制品打托列表 + IPage pages = warehouseRetentionRecordService.retentionPackageList(retentionDTO); + return R.data(pages); + } catch (CustomerException e) { + log.warn(e.message); + return R.fail(e.code, e.message); + } catch (Exception e) { + log.error(method + "系统异常,联系管理员", e); + return R.fail(500, "系统异常,联系管理员"); + } + } + + + // @GetMapping + @GetMapping("/initRetentionList") + @ApiOperationSupport(order = 1) + @ApiOperation(value = "初始化滞留车次信息", notes = "传入trayTypeDTO") + public R initRetentionList(@RequestParam Long deliveryId) { + WarehouseRetentionRecordVO warehouseRetentionRecordVO = warehouseRetentionRecordService.initRetentionList(deliveryId); + return R.data(warehouseRetentionRecordVO); + } + + @PostMapping("/saveRetentionList") + @ApiOperationSupport(order = 1) + @ApiOperation(value = "保存滞留扫描列表", notes = "传入trayTypeDTO") + public R saveRetentionList(@RequestBody RetentionDTO retentionDTO) { + R r = warehouseRetentionRecordService.saveRetentionList(retentionDTO); + return r; + } + + + +// @GetMapping("/initRetentionList") // @ApiOperationSupport(order = 1) -// @ApiOperation(value = "滞留包件列表", notes = "传入trayTypeDTO") -// public R> retentionPackageList(@RequestBody RetentionDTO retentionDTO) { -// String method = "###########retentionPackageList: "; -// log.info(method+"滞留包件列表 retentionDTO={}",retentionDTO); -// Integer pageNum = retentionDTO.getPageNum(); -// Integer pageSize = retentionDTO.getPageSize(); -// -// if(Objects.isNull(pageNum)){ -// retentionDTO.setPageNum(1); -// } -// if(Objects.isNull(pageSize)){ -// retentionDTO.setPageSize(10); -// } -// -// try{ -// //查询订制品打托列表 -// IPage pages = warehouseRetentionRecordService.retentionPackageList(retentionDTO); -// return R.data(pages); -// }catch (CustomerException e){ -// log.warn(e.message); -// return R.fail(e.code,e.message); -// }catch (Exception e){ -// log.error(method+"系统异常,联系管理员",e); -// return R.fail(500,"系统异常,联系管理员"); -// } +// @ApiOperation(value = "初始化滞留车次信息", notes = "传入trayTypeDTO") +// public R initRetentionList(@RequestParam Long deliveryId) { +// WarehouseRetentionRecordVO warehouseRetentionRecordVO = warehouseRetentionRecordService.initRetentionList(deliveryId); +// return R.data(warehouseRetentionRecordVO); // } + + // // // @ResponseBody @@ -85,8 +116,6 @@ public class WarehouseRetentionApiController { // } - - // @ResponseBody // @PostMapping("/retentionScanPackage") // @ApiOperationSupport(order = 1) @@ -113,6 +142,4 @@ public class WarehouseRetentionApiController { // } - - } diff --git a/blade-service/logpm-warehouse/src/main/java/com/logpm/warehouse/dto/RetentionDTO.java b/blade-service/logpm-warehouse/src/main/java/com/logpm/warehouse/dto/RetentionDTO.java index d21f0962c..eeef525c9 100644 --- a/blade-service/logpm-warehouse/src/main/java/com/logpm/warehouse/dto/RetentionDTO.java +++ b/blade-service/logpm-warehouse/src/main/java/com/logpm/warehouse/dto/RetentionDTO.java @@ -1,8 +1,13 @@ package com.logpm.warehouse.dto; +import com.logpm.distribution.entity.DisStockListDetailEntity; +import com.logpm.distribution.entity.DistributionParcelListEntity; +import com.logpm.distribution.entity.DistributionParcelNumberEntity; +import com.logpm.distribution.vo.DistributionParcelListVO; import lombok.Data; import java.io.Serializable; +import java.util.List; @Data public class RetentionDTO implements Serializable { @@ -14,4 +19,22 @@ public class RetentionDTO implements Serializable { private String endDate; private String orderPackageCode; + + /** + * 配送任务ID + */ + private Long deliveryId; + + /** + * 配送任务ID + */ + private String remarks; + + + private List parcelListEntityList; + + private List parcelNumberEntityList; + + private List detailEntityList; + } diff --git a/blade-service/logpm-warehouse/src/main/java/com/logpm/warehouse/dto/RetentionDistributionListDetailDTO.java b/blade-service/logpm-warehouse/src/main/java/com/logpm/warehouse/dto/RetentionDistributionListDetailDTO.java new file mode 100644 index 000000000..3be7d0ec1 --- /dev/null +++ b/blade-service/logpm-warehouse/src/main/java/com/logpm/warehouse/dto/RetentionDistributionListDetailDTO.java @@ -0,0 +1,14 @@ +package com.logpm.warehouse.dto; + +import com.logpm.distribution.entity.DisStockListDetailEntity; +import lombok.Data; +import lombok.EqualsAndHashCode; + +@Data +@EqualsAndHashCode(callSuper = true) +public class RetentionDistributionListDetailDTO extends DisStockListDetailEntity { + + private String MaterialName; + + private String materialNumber; +} diff --git a/blade-service/logpm-warehouse/src/main/java/com/logpm/warehouse/dto/RetentionParcelListDTO.java b/blade-service/logpm-warehouse/src/main/java/com/logpm/warehouse/dto/RetentionParcelListDTO.java new file mode 100644 index 000000000..d6ddbdfae --- /dev/null +++ b/blade-service/logpm-warehouse/src/main/java/com/logpm/warehouse/dto/RetentionParcelListDTO.java @@ -0,0 +1,11 @@ +package com.logpm.warehouse.dto; + +import com.logpm.distribution.entity.DistributionParcelListEntity; +import lombok.Data; +import lombok.EqualsAndHashCode; + + +@Data +@EqualsAndHashCode(callSuper = true) +public class RetentionParcelListDTO extends DistributionParcelListEntity { +} diff --git a/blade-service/logpm-warehouse/src/main/java/com/logpm/warehouse/dto/RetentionZeroParcelDTO.java b/blade-service/logpm-warehouse/src/main/java/com/logpm/warehouse/dto/RetentionZeroParcelDTO.java new file mode 100644 index 000000000..3d13caac6 --- /dev/null +++ b/blade-service/logpm-warehouse/src/main/java/com/logpm/warehouse/dto/RetentionZeroParcelDTO.java @@ -0,0 +1,10 @@ +package com.logpm.warehouse.dto; + +import com.logpm.distribution.entity.DistributionParcelNumberEntity; +import lombok.Data; +import lombok.EqualsAndHashCode; + +@Data +@EqualsAndHashCode(callSuper = true) +public class RetentionZeroParcelDTO extends DistributionParcelNumberEntity { +} diff --git a/blade-service/logpm-warehouse/src/main/java/com/logpm/warehouse/feign/WarehouseRetentionScanClient.java b/blade-service/logpm-warehouse/src/main/java/com/logpm/warehouse/feign/WarehouseRetentionScanClient.java index d7972a750..730cd1f55 100644 --- a/blade-service/logpm-warehouse/src/main/java/com/logpm/warehouse/feign/WarehouseRetentionScanClient.java +++ b/blade-service/logpm-warehouse/src/main/java/com/logpm/warehouse/feign/WarehouseRetentionScanClient.java @@ -25,6 +25,7 @@ import org.springblade.core.mp.support.Condition; import org.springblade.core.mp.support.Query; import com.logpm.warehouse.entity.WarehouseRetentionRecordEntity; import com.logpm.warehouse.service.IWarehouseRetentionRecordService; +import org.springblade.core.tool.api.R; import org.springframework.web.bind.annotation.GetMapping; import org.springframework.web.bind.annotation.RestController; import springfox.documentation.annotations.ApiIgnore; @@ -52,4 +53,9 @@ public class WarehouseRetentionScanClient implements IWarehouseRetentionScanClie return BladePage.of(page); } + @Override + public R saveRetentionScan(WarehouseRetentionScanEntity warehouseRetentionScanEntity) { + return R.status(warehouseRetentionScanService.save(warehouseRetentionScanEntity)); + } + } diff --git a/blade-service/logpm-warehouse/src/main/java/com/logpm/warehouse/mapper/WarehouseRetentionRecordMapper.java b/blade-service/logpm-warehouse/src/main/java/com/logpm/warehouse/mapper/WarehouseRetentionRecordMapper.java index 4093e7224..27206b781 100644 --- a/blade-service/logpm-warehouse/src/main/java/com/logpm/warehouse/mapper/WarehouseRetentionRecordMapper.java +++ b/blade-service/logpm-warehouse/src/main/java/com/logpm/warehouse/mapper/WarehouseRetentionRecordMapper.java @@ -62,4 +62,5 @@ public interface WarehouseRetentionRecordMapper extends BaseMapper retentionPackageList(IPage page, @Param("param") RetentionDTO retentionDTO); + } diff --git a/blade-service/logpm-warehouse/src/main/java/com/logpm/warehouse/mapper/WarehouseRetentionRecordMapper.xml b/blade-service/logpm-warehouse/src/main/java/com/logpm/warehouse/mapper/WarehouseRetentionRecordMapper.xml index 079120755..de5790d85 100644 --- a/blade-service/logpm-warehouse/src/main/java/com/logpm/warehouse/mapper/WarehouseRetentionRecordMapper.xml +++ b/blade-service/logpm-warehouse/src/main/java/com/logpm/warehouse/mapper/WarehouseRetentionRecordMapper.xml @@ -61,4 +61,5 @@ order by update_time desc + diff --git a/blade-service/logpm-warehouse/src/main/java/com/logpm/warehouse/service/IWarehouseRetentionRecordService.java b/blade-service/logpm-warehouse/src/main/java/com/logpm/warehouse/service/IWarehouseRetentionRecordService.java index bcd26b8b6..7c1ff8c94 100644 --- a/blade-service/logpm-warehouse/src/main/java/com/logpm/warehouse/service/IWarehouseRetentionRecordService.java +++ b/blade-service/logpm-warehouse/src/main/java/com/logpm/warehouse/service/IWarehouseRetentionRecordService.java @@ -62,4 +62,18 @@ public interface IWarehouseRetentionRecordService extends BaseService retentionPackageList(RetentionDTO retentionDTO); R retentionScanPackage(String orderPackageCode); + + /** + * PDA查询初始化滞留扫描页 + * @param deliveryId + * @return + */ + WarehouseRetentionRecordVO initRetentionList(Long deliveryId); + + /** + * 保存扫描记录 + * @param retentionDTO + * @return + */ + R saveRetentionList(RetentionDTO retentionDTO); } diff --git a/blade-service/logpm-warehouse/src/main/java/com/logpm/warehouse/service/impl/WarehouseRetentionRecordServiceImpl.java b/blade-service/logpm-warehouse/src/main/java/com/logpm/warehouse/service/impl/WarehouseRetentionRecordServiceImpl.java index 1e353048a..5b81c9cdc 100644 --- a/blade-service/logpm-warehouse/src/main/java/com/logpm/warehouse/service/impl/WarehouseRetentionRecordServiceImpl.java +++ b/blade-service/logpm-warehouse/src/main/java/com/logpm/warehouse/service/impl/WarehouseRetentionRecordServiceImpl.java @@ -18,26 +18,48 @@ package com.logpm.warehouse.service.impl; import com.baomidou.mybatisplus.core.conditions.Wrapper; import com.baomidou.mybatisplus.core.metadata.IPage; +import com.baomidou.mybatisplus.core.toolkit.Wrappers; import com.baomidou.mybatisplus.extension.plugins.pagination.Page; +import com.logpm.basicdata.entity.BasicdataWarehouseEntity; +import com.logpm.basicdata.feign.IBasicdataWarehouseClient; +import com.logpm.distribution.entity.DisStockListDetailEntity; import com.logpm.distribution.entity.DistributionLoadscanEntity; import com.logpm.distribution.entity.DistributionParcelListEntity; +import com.logpm.distribution.entity.DistributionParcelNumberEntity; +import com.logpm.distribution.feign.IDistributionDeliveryListClient; import com.logpm.distribution.feign.IDistributionLoadscanClient; import com.logpm.distribution.feign.IDistributionParcelListClient; +import com.logpm.distribution.vo.DistributionDeliveryListVO; +import com.logpm.distribution.vo.DistributionDeliverySelfVO; +import com.logpm.oldproject.feign.IWarehouseClient; +import com.logpm.warehouse.bean.Resp; import com.logpm.warehouse.dto.RetentionDTO; +import com.logpm.warehouse.dto.RetentionDistributionListDetailDTO; +import com.logpm.warehouse.dto.RetentionParcelListDTO; +import com.logpm.warehouse.dto.RetentionZeroParcelDTO; import com.logpm.warehouse.entity.WarehouseRetentionRecordEntity; +import com.logpm.warehouse.entity.WarehouseRetentionScanEntity; import com.logpm.warehouse.excel.WarehouseRetentionRecordExcel; import com.logpm.warehouse.mapper.WarehouseRetentionRecordMapper; import com.logpm.warehouse.service.IWarehouseRetentionRecordService; +import com.logpm.warehouse.service.IWarehouseRetentionScanService; import com.logpm.warehouse.vo.WarehouseRetentionRecordVO; import com.logpm.warehouse.vo.WarehouseWaybillDetentionVO; import com.logpm.warehouse.wrapper.WarehouseRetentionRecordWrapper; +import com.logpm.warehouse.wrapper.WarehouseRetentionScanWrapper; import lombok.AllArgsConstructor; +import lombok.extern.slf4j.Slf4j; +import org.springblade.common.constant.retention.RetentionTypeConstant; +import org.springblade.common.exception.CustomerException; import org.springblade.core.mp.base.BaseServiceImpl; import org.springblade.core.tool.api.R; +import org.springblade.core.tool.utils.Func; import org.springframework.stereotype.Service; import java.util.List; import java.util.Objects; +import java.util.concurrent.atomic.AtomicInteger; +import java.util.stream.Collectors; /** * 滞留记录 服务实现类 @@ -47,10 +69,14 @@ import java.util.Objects; */ @AllArgsConstructor @Service +@Slf4j public class WarehouseRetentionRecordServiceImpl extends BaseServiceImpl implements IWarehouseRetentionRecordService { private final IDistributionLoadscanClient distributionLoadscanClient; private final IDistributionParcelListClient distributionParcelListClient; + private final IWarehouseRetentionScanService warehouseRetentionScanService; + private final IDistributionDeliveryListClient deliveryListClient; + private final IBasicdataWarehouseClient warehouseClient; @Override public IPage selectWarehouseRetentionRecordPage(IPage page, WarehouseRetentionRecordVO warehouseRetentionRecord) { @@ -117,4 +143,103 @@ public class WarehouseRetentionRecordServiceImpl extends BaseServiceImplquery().lambda() + .eq(WarehouseRetentionRecordEntity::getRetentionType, RetentionTypeConstant.peisongzhiliu.getValue()) + .eq(WarehouseRetentionRecordEntity::getTaskId, deliveryId)); + if (Func.isEmpty(retentionRecordEntity)){ + return null; + } + WarehouseRetentionRecordVO warehouseRetentionRecordVO = WarehouseRetentionRecordWrapper.build().entityVO(retentionRecordEntity); + //查询是否存在有对应的扫描列表 + List retentionScanEntityList = warehouseRetentionScanService.list(Wrappers.query().lambda() + .eq(WarehouseRetentionScanEntity::getDeliveryId, retentionRecordEntity.getTaskId()) + .eq(WarehouseRetentionScanEntity::getRefId, retentionRecordEntity.getId())); + if (Func.isNotEmpty(retentionScanEntityList)){ + warehouseRetentionRecordVO.setRetentionScanVOList(WarehouseRetentionScanWrapper.build().listVO(retentionScanEntityList)); + } + return warehouseRetentionRecordVO; + } + + @Override + public R saveRetentionList(RetentionDTO retentionDTO) { + DistributionDeliveryListVO deliveryDriverInfo = deliveryListClient.getDeliveryDriverInfo(retentionDTO.getDeliveryId()); + if (Func.isEmpty(deliveryDriverInfo)){ + //查询配送任务 + log.error("##############查询配送任务失败,deliveryId:{}",retentionDTO.getDeliveryId()); + } + BasicdataWarehouseEntity myCurrentWarehouse = warehouseClient.getMyCurrentWarehouse(); + if (Objects.isNull(myCurrentWarehouse)) { + throw new CustomerException(403, "仓库信息不能为空"); + } + if (Func.isEmpty(deliveryDriverInfo.getDeliverySelfVO())){ + log.error("##############查询配送任务司机失败"); + } + List deliverySelfVO = deliveryDriverInfo.getDeliverySelfVO(); + DistributionDeliverySelfVO distributionDeliverySelfVO = null; + if (deliveryDriverInfo.getKind().equals("1")){ + distributionDeliverySelfVO = deliverySelfVO.stream().filter(d -> d.getIsMaster() == 2).collect(Collectors.toList()).get(0); + }else if (deliveryDriverInfo.getKind().equals("2")){ + distributionDeliverySelfVO = deliverySelfVO.get(0); + + } + WarehouseRetentionRecordEntity warehouseRetentionRecordEntity = new WarehouseRetentionRecordEntity(); + warehouseRetentionRecordEntity.setRetentionType(RetentionTypeConstant.peisongzhiliu.getValue()); + warehouseRetentionRecordEntity.setRetentionWarehouseId(myCurrentWarehouse.getId()); + warehouseRetentionRecordEntity.setRetentionWarehouseName(myCurrentWarehouse.getName()); + warehouseRetentionRecordEntity.setRemark(retentionDTO.getRemarks()); + warehouseRetentionRecordEntity.setTaskId(retentionDTO.getDeliveryId()); + warehouseRetentionRecordEntity.setRetentionCarId(distributionDeliverySelfVO.getId()); + warehouseRetentionRecordEntity.setRetentionCarNo(deliveryDriverInfo.getTrainNumber()); + warehouseRetentionRecordEntity.setAssembleCarPersonId(distributionDeliverySelfVO.getDeliveryId()); + warehouseRetentionRecordEntity.setAssembleCarPersonName(distributionDeliverySelfVO.getDriverName()); + //统计数量 + AtomicInteger retentionQuantity = new AtomicInteger(); + List parcelListEntityList = retentionDTO.getParcelListEntityList(); + if (Func.isNotEmpty(parcelListEntityList)){ + parcelListEntityList.forEach(p->{ + WarehouseRetentionScanEntity warehouseRetentionScanEntity = new WarehouseRetentionScanEntity(); + warehouseRetentionScanEntity.setConditions(1); + warehouseRetentionScanEntity.setDeliveryId(deliveryDriverInfo.getId()); + warehouseRetentionScanEntity.setOrderCode(p.getOrderCode()); + warehouseRetentionScanEntity.setOrderPackageCode(p.getOrderPackageCode()); + warehouseRetentionScanEntity.setOrderId(p.getStockArticleId()); + warehouseRetentionScanEntity.setOrderPackageId(p.getId()); + warehouseRetentionScanService.save(warehouseRetentionScanEntity); + retentionQuantity.getAndAdd(p.getQuantity()); + //缺少一个进行解绑的远程 + }); + } + List parcelNumberEntityList = retentionDTO.getParcelNumberEntityList(); + if (Func.isNotEmpty(parcelNumberEntityList)){ + parcelNumberEntityList.forEach(pn->{ + WarehouseRetentionScanEntity warehouseRetentionScanEntity = new WarehouseRetentionScanEntity(); + warehouseRetentionScanEntity.setConditions(2); + warehouseRetentionScanEntity.setDeliveryId(deliveryDriverInfo.getId()); + warehouseRetentionScanEntity.setOrderId(pn.getStockArticleId()); + warehouseRetentionScanEntity.setOrderPackageId(pn.getParcelListId()); + warehouseRetentionScanService.save(warehouseRetentionScanEntity); + retentionQuantity.getAndAdd(pn.getQuantity()); + }); + } + List detailEntityList = retentionDTO.getDetailEntityList(); + if (Func.isNotEmpty(detailEntityList)){ + detailEntityList.forEach(d->{ + WarehouseRetentionScanEntity warehouseRetentionScanEntity = new WarehouseRetentionScanEntity(); + warehouseRetentionScanEntity.setConditions(3); + warehouseRetentionScanEntity.setDeliveryId(deliveryDriverInfo.getId()); + warehouseRetentionScanEntity.setInventoryId(d.getStockListId()); + warehouseRetentionScanEntity.setMaterialName(d.getMaterialName()); + warehouseRetentionScanEntity.setMaterialNumber(d.getMaterialNumber()); + warehouseRetentionScanEntity.setOrderPackageCode(d.getStockPackageCode()); + warehouseRetentionScanEntity.setOrderPackageId(d.getId()); + warehouseRetentionScanService.save(warehouseRetentionScanEntity); + retentionQuantity.getAndAdd(d.getNum()); + }); + } + + this.save(warehouseRetentionRecordEntity); + return Resp.scanSuccess("操作成功","操作成功"); + } } diff --git a/blade-service/logpm-warehouse/src/main/java/com/logpm/warehouse/wrapper/WarehouseRetentionRecordWrapper.java b/blade-service/logpm-warehouse/src/main/java/com/logpm/warehouse/wrapper/WarehouseRetentionRecordWrapper.java index 4f3dfcea2..dda16518b 100644 --- a/blade-service/logpm-warehouse/src/main/java/com/logpm/warehouse/wrapper/WarehouseRetentionRecordWrapper.java +++ b/blade-service/logpm-warehouse/src/main/java/com/logpm/warehouse/wrapper/WarehouseRetentionRecordWrapper.java @@ -18,8 +18,10 @@ package com.logpm.warehouse.wrapper; import com.logpm.warehouse.entity.WarehouseRetentionRecordEntity; import com.logpm.warehouse.vo.WarehouseRetentionRecordVO; +import org.springblade.common.constant.DictBizConstant; import org.springblade.core.mp.support.BaseEntityWrapper; import org.springblade.core.tool.utils.BeanUtil; +import org.springblade.system.cache.DictBizCache; import java.util.Objects; @@ -38,7 +40,7 @@ public class WarehouseRetentionRecordWrapper extends BaseEntityWrapper { + + public static WarehouseRetentionScanWrapper build() { + return new WarehouseRetentionScanWrapper(); + } + + @Override + public WarehouseRetentionScanVO entityVO(WarehouseRetentionScanEntity warehouseRetentionScanEntity) { + WarehouseRetentionScanVO warehouseRetentionScanVO = Objects.requireNonNull(BeanUtil.copy(warehouseRetentionScanEntity, WarehouseRetentionScanVO.class)); +// warehouseRetentionRecordVO.setRetentionTypeName(DictBizCache.getValue(DictBizConstant.WAREHOUSE_TRAY_BINDING_TYPE, warehouseRetentionRecord.getRetentionType())); + //User createUser = UserCache.getUser(warehouseRetentionRecord.getCreateUser()); + //User updateUser = UserCache.getUser(warehouseRetentionRecord.getUpdateUser()); + //warehouseRetentionRecordVO.setCreateUserName(createUser.getName()); + //warehouseRetentionRecordVO.setUpdateUserName(updateUser.getName()); + + return warehouseRetentionScanVO; + } + + +} From 02ed1d3f9ecc7a6db29b43d79c869ac9949433e5 Mon Sep 17 00:00:00 2001 From: zhenghaoyu Date: Mon, 6 Nov 2023 19:35:39 +0800 Subject: [PATCH 04/36] =?UTF-8?q?1.=E5=B9=B2=E7=BA=BF=E5=AE=9E=E4=BD=93?= =?UTF-8?q?=E6=8F=90=E4=BA=A4?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../entity/TrunklineBillladingEntity.java | 6 -- .../entity/TrunklineBillladingLineEntity.java | 56 +++++++++++++++++++ .../TrunklineBillladingPackageEntity.java | 3 + .../TrunklineBillladingWaybillEntity.java | 9 +-- .../vo/TrunklineBillladingLineVO.java | 11 ++++ .../mapper/TrunklineBillladingLineMapper.java | 9 +++ .../mapper/TrunklineBillladingLineMapper.xml | 6 ++ .../TrunklineBillladingPackageMapper.xml | 6 ++ .../mapper/TrunklineDetailProductMapper.xml | 6 ++ .../ITrunklineBillladingLineService.java | 7 +++ .../TrunklineBillladingLineServiceImpl.java | 15 +++++ 11 files changed, 121 insertions(+), 13 deletions(-) create mode 100644 blade-service-api/logpm-trunkline-api/src/main/java/com/logpm/trunkline/entity/TrunklineBillladingLineEntity.java create mode 100644 blade-service-api/logpm-trunkline-api/src/main/java/com/logpm/trunkline/vo/TrunklineBillladingLineVO.java create mode 100644 blade-service/logpm-trunkline/src/main/java/com/logpm/trunkline/mapper/TrunklineBillladingLineMapper.java create mode 100644 blade-service/logpm-trunkline/src/main/java/com/logpm/trunkline/mapper/TrunklineBillladingLineMapper.xml create mode 100644 blade-service/logpm-trunkline/src/main/java/com/logpm/trunkline/mapper/TrunklineBillladingPackageMapper.xml create mode 100644 blade-service/logpm-trunkline/src/main/java/com/logpm/trunkline/mapper/TrunklineDetailProductMapper.xml create mode 100644 blade-service/logpm-trunkline/src/main/java/com/logpm/trunkline/service/ITrunklineBillladingLineService.java create mode 100644 blade-service/logpm-trunkline/src/main/java/com/logpm/trunkline/service/impl/TrunklineBillladingLineServiceImpl.java diff --git a/blade-service-api/logpm-trunkline-api/src/main/java/com/logpm/trunkline/entity/TrunklineBillladingEntity.java b/blade-service-api/logpm-trunkline-api/src/main/java/com/logpm/trunkline/entity/TrunklineBillladingEntity.java index 59111d0c7..9f74fbb14 100644 --- a/blade-service-api/logpm-trunkline-api/src/main/java/com/logpm/trunkline/entity/TrunklineBillladingEntity.java +++ b/blade-service-api/logpm-trunkline-api/src/main/java/com/logpm/trunkline/entity/TrunklineBillladingEntity.java @@ -102,11 +102,5 @@ public class TrunklineBillladingEntity extends TenantEntity { /** 结算人名称 */ @ApiModelProperty(name = "结算人名称",notes = "") private String settlementName ; - /** 备注 */ - @ApiModelProperty(name = "备注",notes = "") - private String remark ; - /** 创建用户名称 */ - @ApiModelProperty(name = "创建用户名称",notes = "") - private String createUserName ; } diff --git a/blade-service-api/logpm-trunkline-api/src/main/java/com/logpm/trunkline/entity/TrunklineBillladingLineEntity.java b/blade-service-api/logpm-trunkline-api/src/main/java/com/logpm/trunkline/entity/TrunklineBillladingLineEntity.java new file mode 100644 index 000000000..c7b09f2e7 --- /dev/null +++ b/blade-service-api/logpm-trunkline-api/src/main/java/com/logpm/trunkline/entity/TrunklineBillladingLineEntity.java @@ -0,0 +1,56 @@ +package com.logpm.trunkline.entity; + +import com.baomidou.mybatisplus.annotation.TableName; +import io.swagger.annotations.ApiModel; +import io.swagger.annotations.ApiModelProperty; +import lombok.Data; +import lombok.EqualsAndHashCode; +import org.springblade.core.tenant.mp.TenantEntity; + +@Data +@TableName("logpm_trunkline_billlading_line") +@ApiModel(value = "TrunklineBillladingLine对象", description = "干线提货线路表") +@EqualsAndHashCode(callSuper = true) +public class TrunklineBillladingLineEntity extends TenantEntity { + + /** 预留1 */ + @ApiModelProperty(name = "预留1",notes = "") + private String reserve1 ; + /** 预留2 */ + @ApiModelProperty(name = "预留2",notes = "") + private String reserve2 ; + /** 预留3 */ + @ApiModelProperty(name = "预留3",notes = "") + private String reserve3 ; + /** 预留4 */ + @ApiModelProperty(name = "预留4",notes = "") + private String reserve4 ; + /** 预留5 */ + @ApiModelProperty(name = "预留5",notes = "") + private String reserve5 ; + /** 仓库id */ + @ApiModelProperty(name = "仓库id",notes = "") + private Long warehouseId ; + /** 仓库名称 */ + @ApiModelProperty(name = "仓库名称",notes = "") + private String warehouseName ; + /** 提货单id */ + @ApiModelProperty(name = "提货单id",notes = "") + private Long billladingId ; + /** 客户类型 1 工厂 2 商场 3装饰 4个人 */ + @ApiModelProperty(name = "客户类型 1 工厂 2 商场 3装饰 4个人",notes = "") + private String clientType ; + /** 联系人 */ + @ApiModelProperty(name = "联系人",notes = "") + private String linkMan ; + /** 联系电话 */ + @ApiModelProperty(name = "联系电话",notes = "") + private String linkPhone ; + /** 联系人地址 */ + @ApiModelProperty(name = "联系人地址",notes = "") + private String linkAddress ; + /** 排序 */ + @ApiModelProperty(name = "排序",notes = "") + private Integer sort ; + +} diff --git a/blade-service-api/logpm-trunkline-api/src/main/java/com/logpm/trunkline/entity/TrunklineBillladingPackageEntity.java b/blade-service-api/logpm-trunkline-api/src/main/java/com/logpm/trunkline/entity/TrunklineBillladingPackageEntity.java index 342ffba59..fdb0bfc92 100644 --- a/blade-service-api/logpm-trunkline-api/src/main/java/com/logpm/trunkline/entity/TrunklineBillladingPackageEntity.java +++ b/blade-service-api/logpm-trunkline-api/src/main/java/com/logpm/trunkline/entity/TrunklineBillladingPackageEntity.java @@ -37,5 +37,8 @@ public class TrunklineBillladingPackageEntity extends TenantEntity { /** 包件码 */ @ApiModelProperty(name = "包件码",notes = "") private String orderPackageCode ; + /** 提货单id */ + @ApiModelProperty(name = "提货单id",notes = "") + private Long billladingId ; } diff --git a/blade-service-api/logpm-trunkline-api/src/main/java/com/logpm/trunkline/entity/TrunklineBillladingWaybillEntity.java b/blade-service-api/logpm-trunkline-api/src/main/java/com/logpm/trunkline/entity/TrunklineBillladingWaybillEntity.java index 36b631c8e..a4b2603e2 100644 --- a/blade-service-api/logpm-trunkline-api/src/main/java/com/logpm/trunkline/entity/TrunklineBillladingWaybillEntity.java +++ b/blade-service-api/logpm-trunkline-api/src/main/java/com/logpm/trunkline/entity/TrunklineBillladingWaybillEntity.java @@ -7,17 +7,12 @@ import lombok.Data; import lombok.EqualsAndHashCode; import org.springblade.core.tenant.mp.TenantEntity; -import java.math.BigDecimal; - @Data @TableName("logpm_trunkline_billlading_waybill") @ApiModel(value = "TrunklineBillladingWaybill对象", description = "提货运单关联表") @EqualsAndHashCode(callSuper = true) public class TrunklineBillladingWaybillEntity extends TenantEntity { - /** 预留1 */ - @ApiModelProperty(name = "预留1",notes = "") - private String reserve1 ; /** 预留2 */ @ApiModelProperty(name = "预留2",notes = "") private String reserve2 ; @@ -47,10 +42,10 @@ public class TrunklineBillladingWaybillEntity extends TenantEntity { private Integer realNum ; /** 提货重量 */ @ApiModelProperty(name = "提货重量",notes = "") - private BigDecimal realWeight ; + private Double realWeight ; /** 提货体积 */ @ApiModelProperty(name = "提货体积",notes = "") - private BigDecimal realVolume ; + private Double realVolume ; } diff --git a/blade-service-api/logpm-trunkline-api/src/main/java/com/logpm/trunkline/vo/TrunklineBillladingLineVO.java b/blade-service-api/logpm-trunkline-api/src/main/java/com/logpm/trunkline/vo/TrunklineBillladingLineVO.java new file mode 100644 index 000000000..c838d6de1 --- /dev/null +++ b/blade-service-api/logpm-trunkline-api/src/main/java/com/logpm/trunkline/vo/TrunklineBillladingLineVO.java @@ -0,0 +1,11 @@ +package com.logpm.trunkline.vo; + +import com.logpm.trunkline.entity.TrunklineBillladingLineEntity; +import lombok.Data; + +@Data +public class TrunklineBillladingLineVO extends TrunklineBillladingLineEntity { + + + +} diff --git a/blade-service/logpm-trunkline/src/main/java/com/logpm/trunkline/mapper/TrunklineBillladingLineMapper.java b/blade-service/logpm-trunkline/src/main/java/com/logpm/trunkline/mapper/TrunklineBillladingLineMapper.java new file mode 100644 index 000000000..8e7b5fcab --- /dev/null +++ b/blade-service/logpm-trunkline/src/main/java/com/logpm/trunkline/mapper/TrunklineBillladingLineMapper.java @@ -0,0 +1,9 @@ +package com.logpm.trunkline.mapper; + +import com.baomidou.mybatisplus.core.mapper.BaseMapper; +import com.logpm.trunkline.entity.TrunklineBillladingLineEntity; +import org.apache.ibatis.annotations.Mapper; + +@Mapper +public interface TrunklineBillladingLineMapper extends BaseMapper { +} diff --git a/blade-service/logpm-trunkline/src/main/java/com/logpm/trunkline/mapper/TrunklineBillladingLineMapper.xml b/blade-service/logpm-trunkline/src/main/java/com/logpm/trunkline/mapper/TrunklineBillladingLineMapper.xml new file mode 100644 index 000000000..b9de6ea86 --- /dev/null +++ b/blade-service/logpm-trunkline/src/main/java/com/logpm/trunkline/mapper/TrunklineBillladingLineMapper.xml @@ -0,0 +1,6 @@ + + + + + + diff --git a/blade-service/logpm-trunkline/src/main/java/com/logpm/trunkline/mapper/TrunklineBillladingPackageMapper.xml b/blade-service/logpm-trunkline/src/main/java/com/logpm/trunkline/mapper/TrunklineBillladingPackageMapper.xml new file mode 100644 index 000000000..4d08ed327 --- /dev/null +++ b/blade-service/logpm-trunkline/src/main/java/com/logpm/trunkline/mapper/TrunklineBillladingPackageMapper.xml @@ -0,0 +1,6 @@ + + + + + + diff --git a/blade-service/logpm-trunkline/src/main/java/com/logpm/trunkline/mapper/TrunklineDetailProductMapper.xml b/blade-service/logpm-trunkline/src/main/java/com/logpm/trunkline/mapper/TrunklineDetailProductMapper.xml new file mode 100644 index 000000000..a82c370dc --- /dev/null +++ b/blade-service/logpm-trunkline/src/main/java/com/logpm/trunkline/mapper/TrunklineDetailProductMapper.xml @@ -0,0 +1,6 @@ + + + + + + diff --git a/blade-service/logpm-trunkline/src/main/java/com/logpm/trunkline/service/ITrunklineBillladingLineService.java b/blade-service/logpm-trunkline/src/main/java/com/logpm/trunkline/service/ITrunklineBillladingLineService.java new file mode 100644 index 000000000..a402f8ca1 --- /dev/null +++ b/blade-service/logpm-trunkline/src/main/java/com/logpm/trunkline/service/ITrunklineBillladingLineService.java @@ -0,0 +1,7 @@ +package com.logpm.trunkline.service; + +import com.logpm.trunkline.entity.TrunklineBillladingLineEntity; +import org.springblade.core.mp.base.BaseService; + +public interface ITrunklineBillladingLineService extends BaseService { +} diff --git a/blade-service/logpm-trunkline/src/main/java/com/logpm/trunkline/service/impl/TrunklineBillladingLineServiceImpl.java b/blade-service/logpm-trunkline/src/main/java/com/logpm/trunkline/service/impl/TrunklineBillladingLineServiceImpl.java new file mode 100644 index 000000000..f99f463c6 --- /dev/null +++ b/blade-service/logpm-trunkline/src/main/java/com/logpm/trunkline/service/impl/TrunklineBillladingLineServiceImpl.java @@ -0,0 +1,15 @@ +package com.logpm.trunkline.service.impl; + +import com.logpm.trunkline.entity.TrunklineBillladingLineEntity; +import com.logpm.trunkline.mapper.TrunklineBillladingLineMapper; +import com.logpm.trunkline.service.ITrunklineBillladingLineService; +import lombok.AllArgsConstructor; +import lombok.extern.slf4j.Slf4j; +import org.springblade.core.mp.base.BaseServiceImpl; +import org.springframework.stereotype.Service; + +@Slf4j +@AllArgsConstructor +@Service +public class TrunklineBillladingLineServiceImpl extends BaseServiceImpl implements ITrunklineBillladingLineService { +} From e83c1061e9758c7f9f7b4c1382f292d44a44ab20 Mon Sep 17 00:00:00 2001 From: "pref_mail@163.com" <123456> Date: Mon, 6 Nov 2023 19:36:41 +0800 Subject: [PATCH 05/36] =?UTF-8?q?1.=E5=A2=9E=E5=8A=A0=E7=9B=91=E6=8E=A7?= =?UTF-8?q?=E8=8A=82=E7=82=B9=20=20--=202.=E5=A2=9E=E5=8A=A0=E6=8E=A8?= =?UTF-8?q?=E9=80=81=E6=AC=A7=E6=B4=BE=E7=9A=84=E8=8A=82=E7=82=B9=20?= =?UTF-8?q?=E5=B0=86=E6=88=91=E4=BB=AC=E7=AD=BE=E6=94=B6=E4=BD=9C=E4=B8=9A?= =?UTF-8?q?=E6=8E=A8=E9=80=81=E7=BB=99=E6=AC=A7=E6=B4=BE?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../oupai/service/impl/OuPaiFactoryServiceImpl.java | 12 ++++++++++-- .../factory/snm/service/impl/OrderServiceImpl.java | 3 --- blade-service/pom.xml | 5 +++++ 3 files changed, 15 insertions(+), 5 deletions(-) diff --git a/blade-service/logpm-factory/src/main/java/com/logpm/factory/oupai/service/impl/OuPaiFactoryServiceImpl.java b/blade-service/logpm-factory/src/main/java/com/logpm/factory/oupai/service/impl/OuPaiFactoryServiceImpl.java index 3a9e553de..2cc2ec573 100644 --- a/blade-service/logpm-factory/src/main/java/com/logpm/factory/oupai/service/impl/OuPaiFactoryServiceImpl.java +++ b/blade-service/logpm-factory/src/main/java/com/logpm/factory/oupai/service/impl/OuPaiFactoryServiceImpl.java @@ -317,7 +317,8 @@ public class OuPaiFactoryServiceImpl implements IOuPaiFactoryService { String status = orderStatusDTO.getStatus(); String unitNo = orderStatusDTO.getUnitNo(); String operationTime = orderStatusDTO.getOperationTime(); - if ("1".equals(status) || "2".equals(status) || "3".equals(status) || "5".equals(status) || "6".equals(status) || "7".equals(status) || "8".equals(status) || "9".equals(status)) { + // || "7".equals(status) 增加签收状态推送 + if ("1".equals(status) || "2".equals(status) || "3".equals(status) || "5".equals(status) || "6".equals(status) || "8".equals(status) || "9".equals(status)) { log.warn("#############oupai-handleStatusData: 当前数据的状态不推送 status={}", status); return Resp.fail(400, "当前数据的状态不推送"); } @@ -377,7 +378,14 @@ public class OuPaiFactoryServiceImpl implements IOuPaiFactoryService { detailObject.put("WarehouseBelong", "oppein"); detailObject.put("Creator", orderStatusDTO.getUsername()); detailObject.put("PackageCode", unitNo); - detailObject.put("Operate", "收货"); + if("4".equals(status)){ + detailObject.put("Operate", "收货"); + }else if("7".equals(status)){ + detailObject.put("Operate", "发货"); + }else{ + log.info(" 该包件的状态不正确 status={} ", status); + return Resp.fail(400, "该包件的状态不正确"); + } // 查询系统的包件对象 LambdaQueryWrapper lambdaQueryWrapper = new LambdaQueryWrapper<>(); diff --git a/blade-service/logpm-factory/src/main/java/com/logpm/factory/snm/service/impl/OrderServiceImpl.java b/blade-service/logpm-factory/src/main/java/com/logpm/factory/snm/service/impl/OrderServiceImpl.java index 48cef8aa1..d6626b8c7 100644 --- a/blade-service/logpm-factory/src/main/java/com/logpm/factory/snm/service/impl/OrderServiceImpl.java +++ b/blade-service/logpm-factory/src/main/java/com/logpm/factory/snm/service/impl/OrderServiceImpl.java @@ -219,10 +219,8 @@ public class OrderServiceImpl implements IOrderService { declared.setAccessible(true); //抑制java语言访问检查,反射访问private访问权限的属性值 Object valueTemp = declared.get(responseStationOrderInfoVo); // 获取实体类中属性的值 Class t = f.getType(); - logger.info(">>>>>>>>>>>>>>>>> {}",t.getName()); // 基本数据类型 包含String if (t.getName().equals("java.lang.Integer") || t.getName().equals("java.lang.String") ) { - logger.info(">>> fieldName {} valueTemp {}",fieldName,valueTemp); if (!ObjectUtils.isEmpty(valueTemp)) { // 包含下划线 if (fieldName.indexOf("_") != -1) { @@ -239,7 +237,6 @@ public class OrderServiceImpl implements IOrderService { Field field = c.getDeclaredField(fieldName); field.setAccessible(true); //抑制java语言访问检查,反射访问private访问权限的属性值 field.set(stationOrderEntity, value); - logger.info(">>> fieldName {} valueTemp {}",fieldName,value); } } diff --git a/blade-service/pom.xml b/blade-service/pom.xml index 37f463927..274758e79 100644 --- a/blade-service/pom.xml +++ b/blade-service/pom.xml @@ -47,6 +47,11 @@ blade-biz-common ${bladex.project.version} + + + org.springblade + blade-starter-metrics + org.springblade blade-starter-tenant From 3d44c0a168268f5c02311286ad758ca000227d1a Mon Sep 17 00:00:00 2001 From: "pref_mail@163.com" <123456> Date: Mon, 6 Nov 2023 19:36:41 +0800 Subject: [PATCH 06/36] =?UTF-8?q?1.=E5=A2=9E=E5=8A=A0=E7=9B=91=E6=8E=A7?= =?UTF-8?q?=E8=8A=82=E7=82=B9=20=20--=202.=E5=A2=9E=E5=8A=A0=E6=8E=A8?= =?UTF-8?q?=E9=80=81=E6=AC=A7=E6=B4=BE=E7=9A=84=E8=8A=82=E7=82=B9=20?= =?UTF-8?q?=E5=B0=86=E6=88=91=E4=BB=AC=E7=AD=BE=E6=94=B6=E4=BD=9C=E4=B8=9A?= =?UTF-8?q?=E6=8E=A8=E9=80=81=E7=BB=99=E6=AC=A7=E6=B4=BE?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../oupai/service/impl/OuPaiFactoryServiceImpl.java | 12 ++++++++++-- .../factory/snm/service/impl/OrderServiceImpl.java | 3 --- blade-service/pom.xml | 5 +++++ 3 files changed, 15 insertions(+), 5 deletions(-) diff --git a/blade-service/logpm-factory/src/main/java/com/logpm/factory/oupai/service/impl/OuPaiFactoryServiceImpl.java b/blade-service/logpm-factory/src/main/java/com/logpm/factory/oupai/service/impl/OuPaiFactoryServiceImpl.java index 3a9e553de..2cc2ec573 100644 --- a/blade-service/logpm-factory/src/main/java/com/logpm/factory/oupai/service/impl/OuPaiFactoryServiceImpl.java +++ b/blade-service/logpm-factory/src/main/java/com/logpm/factory/oupai/service/impl/OuPaiFactoryServiceImpl.java @@ -317,7 +317,8 @@ public class OuPaiFactoryServiceImpl implements IOuPaiFactoryService { String status = orderStatusDTO.getStatus(); String unitNo = orderStatusDTO.getUnitNo(); String operationTime = orderStatusDTO.getOperationTime(); - if ("1".equals(status) || "2".equals(status) || "3".equals(status) || "5".equals(status) || "6".equals(status) || "7".equals(status) || "8".equals(status) || "9".equals(status)) { + // || "7".equals(status) 增加签收状态推送 + if ("1".equals(status) || "2".equals(status) || "3".equals(status) || "5".equals(status) || "6".equals(status) || "8".equals(status) || "9".equals(status)) { log.warn("#############oupai-handleStatusData: 当前数据的状态不推送 status={}", status); return Resp.fail(400, "当前数据的状态不推送"); } @@ -377,7 +378,14 @@ public class OuPaiFactoryServiceImpl implements IOuPaiFactoryService { detailObject.put("WarehouseBelong", "oppein"); detailObject.put("Creator", orderStatusDTO.getUsername()); detailObject.put("PackageCode", unitNo); - detailObject.put("Operate", "收货"); + if("4".equals(status)){ + detailObject.put("Operate", "收货"); + }else if("7".equals(status)){ + detailObject.put("Operate", "发货"); + }else{ + log.info(" 该包件的状态不正确 status={} ", status); + return Resp.fail(400, "该包件的状态不正确"); + } // 查询系统的包件对象 LambdaQueryWrapper lambdaQueryWrapper = new LambdaQueryWrapper<>(); diff --git a/blade-service/logpm-factory/src/main/java/com/logpm/factory/snm/service/impl/OrderServiceImpl.java b/blade-service/logpm-factory/src/main/java/com/logpm/factory/snm/service/impl/OrderServiceImpl.java index 48cef8aa1..d6626b8c7 100644 --- a/blade-service/logpm-factory/src/main/java/com/logpm/factory/snm/service/impl/OrderServiceImpl.java +++ b/blade-service/logpm-factory/src/main/java/com/logpm/factory/snm/service/impl/OrderServiceImpl.java @@ -219,10 +219,8 @@ public class OrderServiceImpl implements IOrderService { declared.setAccessible(true); //抑制java语言访问检查,反射访问private访问权限的属性值 Object valueTemp = declared.get(responseStationOrderInfoVo); // 获取实体类中属性的值 Class t = f.getType(); - logger.info(">>>>>>>>>>>>>>>>> {}",t.getName()); // 基本数据类型 包含String if (t.getName().equals("java.lang.Integer") || t.getName().equals("java.lang.String") ) { - logger.info(">>> fieldName {} valueTemp {}",fieldName,valueTemp); if (!ObjectUtils.isEmpty(valueTemp)) { // 包含下划线 if (fieldName.indexOf("_") != -1) { @@ -239,7 +237,6 @@ public class OrderServiceImpl implements IOrderService { Field field = c.getDeclaredField(fieldName); field.setAccessible(true); //抑制java语言访问检查,反射访问private访问权限的属性值 field.set(stationOrderEntity, value); - logger.info(">>> fieldName {} valueTemp {}",fieldName,value); } } diff --git a/blade-service/pom.xml b/blade-service/pom.xml index 37f463927..274758e79 100644 --- a/blade-service/pom.xml +++ b/blade-service/pom.xml @@ -47,6 +47,11 @@ blade-biz-common ${bladex.project.version} + + + org.springblade + blade-starter-metrics + org.springblade blade-starter-tenant From 84a2ccc9a307b03aa7b2cc083b4c72157fb833f1 Mon Sep 17 00:00:00 2001 From: kilo Date: Mon, 6 Nov 2023 20:13:25 +0800 Subject: [PATCH 07/36] =?UTF-8?q?=E6=BB=9E=E7=95=99=E5=88=97=E8=A1=A8?= =?UTF-8?q?=E4=BF=9D=E5=AD=98?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../mapper/DistributionDeliveryListMapper.xml | 5 +- .../DistributionDeliveryListServiceImpl.java | 21 +---- .../api/WarehouseRetentionApiController.java | 11 ++- .../dto/WarehouseRetentionRecordDTO.java | 15 ++++ .../IWarehouseRetentionRecordService.java | 7 +- .../IWarehouseRetentionScanService.java | 5 ++ .../WarehouseRetentionRecordServiceImpl.java | 85 +------------------ .../WarehouseRetentionScanServiceImpl.java | 34 ++++++++ 8 files changed, 71 insertions(+), 112 deletions(-) diff --git a/blade-service/logpm-distribution/src/main/java/com/logpm/distribution/mapper/DistributionDeliveryListMapper.xml b/blade-service/logpm-distribution/src/main/java/com/logpm/distribution/mapper/DistributionDeliveryListMapper.xml index e7d213a5a..b2a1e5d05 100644 --- a/blade-service/logpm-distribution/src/main/java/com/logpm/distribution/mapper/DistributionDeliveryListMapper.xml +++ b/blade-service/logpm-distribution/src/main/java/com/logpm/distribution/mapper/DistributionDeliveryListMapper.xml @@ -1634,7 +1634,7 @@ LEFT JOIN logpm_distribution_reservation_package AS ldrp ON ldrp.stock_article_id = ldrs.stock_article_id and ldrp.reservation_id = ldr.id LEFT JOIN logpm_distribution_parcel_list AS ldpl ON ldpl.id = ldrp.parce_list_id and ldpl.stock_article_id = ldsa.id WHERE - lddl.id=#{deliveryId} AND ldrp.packet_bar_status in ('1','3') AND ldrs.is_zero = 0 AND ldpl.order_package_code = #{barCode} + lddl.id=#{deliveryId} AND ldrp.packet_bar_status in ('1','3') AND ldrs.is_zero = 0 AND ldpl.order_package_code = #{orderPackageCode} - SELECT * FROM logpm_distribution_signfor ${ew.customSqlSegment} + SELECT * FROM logpm_distribution_signfor ${ew.customSqlSegment} + @@ -933,4 +972,102 @@ + diff --git a/blade-service/logpm-distribution/src/main/java/com/logpm/distribution/service/IDistributionSigndetailService.java b/blade-service/logpm-distribution/src/main/java/com/logpm/distribution/service/IDistributionSigndetailService.java index dc7fda432..7865b4453 100644 --- a/blade-service/logpm-distribution/src/main/java/com/logpm/distribution/service/IDistributionSigndetailService.java +++ b/blade-service/logpm-distribution/src/main/java/com/logpm/distribution/service/IDistributionSigndetailService.java @@ -27,6 +27,7 @@ import com.logpm.distribution.vo.DistributionSigndetailVO; import org.springblade.core.mp.base.BaseService; import java.util.List; +import java.util.Map; /** * 签收明细 服务类 @@ -48,10 +49,9 @@ public interface IDistributionSigndetailService extends BaseService exportDistributionSigndetail(Wrapper queryWrapper); + List exportDistributionSigndetail(Map distributionSigndetail); /** * 自定义查询详情 * diff --git a/blade-service/logpm-distribution/src/main/java/com/logpm/distribution/service/IDistributionSignforService.java b/blade-service/logpm-distribution/src/main/java/com/logpm/distribution/service/IDistributionSignforService.java index b1984739e..bd0b2f3b0 100644 --- a/blade-service/logpm-distribution/src/main/java/com/logpm/distribution/service/IDistributionSignforService.java +++ b/blade-service/logpm-distribution/src/main/java/com/logpm/distribution/service/IDistributionSignforService.java @@ -25,11 +25,13 @@ import com.logpm.distribution.dto.app.DistributionAppDeliveryListDTO; import com.logpm.distribution.entity.DistributionSignPrintEntity; import com.logpm.distribution.entity.DistributionSignforEntity; import com.logpm.distribution.excel.DistributionSignforExcel; +import com.logpm.distribution.excel.DistributionSignforOwnExcel; import com.logpm.distribution.vo.*; import com.logpm.distribution.vo.app.DistributionAppDeliveryListVO; import com.logpm.distribution.vo.app.DistributionAppParcelListVO; import com.logpm.distribution.vo.app.DistributionAppSignforVO; import com.logpm.distribution.vo.app.DistributionAppStockArticleVO; +import org.apache.poi.ss.formula.functions.T; import org.springblade.core.mp.base.BaseService; import org.springblade.core.tool.api.R; @@ -59,6 +61,12 @@ public interface IDistributionSignforService extends BaseService exportDistributionSignfor(Map distributionSignfor); + /** + * 导出数据 + * + * @param distributionSignfor@return + */ + List exportDistributionSignforOwn(Map distributionSignfor); /** * 签收订单统计 * diff --git a/blade-service/logpm-distribution/src/main/java/com/logpm/distribution/service/impl/DistributionSigndetailServiceImpl.java b/blade-service/logpm-distribution/src/main/java/com/logpm/distribution/service/impl/DistributionSigndetailServiceImpl.java index a231385b3..d003ce6fc 100644 --- a/blade-service/logpm-distribution/src/main/java/com/logpm/distribution/service/impl/DistributionSigndetailServiceImpl.java +++ b/blade-service/logpm-distribution/src/main/java/com/logpm/distribution/service/impl/DistributionSigndetailServiceImpl.java @@ -16,8 +16,10 @@ */ package com.logpm.distribution.service.impl; -import com.baomidou.mybatisplus.core.conditions.Wrapper; +import com.alibaba.fastjson.JSON; +import com.alibaba.fastjson.JSONObject; import com.baomidou.mybatisplus.core.metadata.IPage; +import com.baomidou.mybatisplus.core.toolkit.ObjectUtils; import com.logpm.distribution.dto.DistributionDeliveryInfoDTO; import com.logpm.distribution.dto.DistributionSigndetailDTO; import com.logpm.distribution.entity.DistributionSigndetailEntity; @@ -27,11 +29,17 @@ import com.logpm.distribution.service.IDistributionSigndetailService; import com.logpm.distribution.vo.DistributionDeliveryInfoVO; import com.logpm.distribution.vo.DistributionSigndetailVO; import lombok.extern.slf4j.Slf4j; +import org.springblade.common.constant.DictBizConstant; import org.springblade.core.mp.base.BaseServiceImpl; +import org.springblade.system.cache.DictBizCache; +import org.springframework.beans.BeanUtils; import org.springframework.stereotype.Service; import java.text.SimpleDateFormat; +import java.util.ArrayList; +import java.util.Arrays; import java.util.List; +import java.util.Map; /** * 签收明细 服务实现类 @@ -55,12 +63,35 @@ public class DistributionSigndetailServiceImpl extends BaseServiceImpl exportDistributionSigndetail(Wrapper queryWrapper) { - List distributionSigndetailList = baseMapper.exportDistributionSigndetail(queryWrapper); - //distributionSigndetailList.forEach(distributionSigndetail -> { - // distributionSigndetail.setTypeName(DictCache.getValue(DictEnum.YES_NO, DistributionSigndetail.getType())); - //}); - return distributionSigndetailList; + public List exportDistributionSigndetail(Map distributionSigndetail) { + + Object o = distributionSigndetail.get("ids"); + if(ObjectUtils.isNotNull(o)){ + distributionSigndetail.remove("ids"); + } + + DistributionSigndetailDTO distributionSigndetailDTO = JSONObject.parseObject(JSON.toJSONString(distributionSigndetail), DistributionSigndetailDTO.class); + + if(ObjectUtils.isNotNull(o)){ + String id= (String) o; + String[] split = id.split(","); + distributionSigndetailDTO.setIds(Arrays.asList(split)); + } + + List distributionSigndetailList = baseMapper.exportDistributionSigndetailOwn(distributionSigndetailDTO); + List list = new ArrayList<>(); + distributionSigndetailList.forEach(d -> { +// distributionSigndetail.setTypeName(DictCache.getValue(DictEnum.YES_NO, DistributionSigndetail.getType())); + DistributionSigndetailExcel signdetailExcel = new DistributionSigndetailExcel(); + BeanUtils.copyProperties(d,signdetailExcel); + + String value = DictBizCache.getValue(DictBizConstant.DISTRIBUTION_TYPE, d.getServeType()); + signdetailExcel.setDeliveryNumber(value); + + + list.add(signdetailExcel); + }); + return list; } @Override diff --git a/blade-service/logpm-distribution/src/main/java/com/logpm/distribution/service/impl/DistributionSignforServiceImpl.java b/blade-service/logpm-distribution/src/main/java/com/logpm/distribution/service/impl/DistributionSignforServiceImpl.java index 9dd9557c4..b5fb4b4db 100644 --- a/blade-service/logpm-distribution/src/main/java/com/logpm/distribution/service/impl/DistributionSignforServiceImpl.java +++ b/blade-service/logpm-distribution/src/main/java/com/logpm/distribution/service/impl/DistributionSignforServiceImpl.java @@ -16,6 +16,7 @@ */ package com.logpm.distribution.service.impl; +import com.alibaba.fastjson.JSON; import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper; import com.baomidou.mybatisplus.core.conditions.update.LambdaUpdateWrapper; import com.baomidou.mybatisplus.core.conditions.update.UpdateWrapper; @@ -31,6 +32,7 @@ import com.logpm.distribution.dto.*; import com.logpm.distribution.dto.app.DistributionAppDeliveryListDTO; import com.logpm.distribution.entity.*; import com.logpm.distribution.excel.DistributionSignforExcel; +import com.logpm.distribution.excel.DistributionSignforOwnExcel; import com.logpm.distribution.mapper.*; import com.logpm.distribution.service.*; import com.logpm.distribution.vo.*; @@ -42,6 +44,8 @@ import com.logpm.distribution.wrapper.DistributionStockArticleWrapper; import lombok.AllArgsConstructor; import lombok.extern.slf4j.Slf4j; import org.apache.commons.lang.StringUtils; +import org.apache.poi.ss.formula.functions.T; +import org.springblade.common.constant.DictBizConstant; import org.springblade.common.constant.DistributionTypeConstant; import org.springblade.common.constant.Inventory.InventoryLoadingStatusConstant; import org.springblade.common.constant.Inventory.InventorySigningStatusConstant; @@ -54,14 +58,12 @@ import org.springblade.common.constant.reservation.*; import org.springblade.common.constant.signing.SignforDriverSigningStatusConstant; import org.springblade.common.serviceConstant.ServiceConstant; import org.springblade.common.utils.GaoDeApiUtil; -import org.springblade.core.log.exception.ServiceException; import org.springblade.core.mp.base.BaseServiceImpl; -import org.springblade.core.mp.support.Condition; import org.springblade.core.secure.BladeUser; import org.springblade.core.secure.utils.AuthUtil; import org.springblade.core.tool.api.R; -import org.springblade.core.tool.constant.BladeConstant; import org.springblade.core.tool.utils.Func; +import org.springblade.system.cache.DictBizCache; import org.springblade.system.feign.IDictBizClient; import org.springframework.beans.BeanUtils; import org.springframework.stereotype.Service; @@ -154,32 +156,87 @@ public class DistributionSignforServiceImpl extends BaseServiceImpl exportDistributionSignfor(Map distributionSignfor) { - Object o = distributionSignfor.get("ids"); if(ObjectUtils.isNotNull(o)){ distributionSignfor.remove("ids"); } - BasicdataWarehouseEntity myCurrentWarehouse = basicdataWarehouseClient.getMyCurrentWarehouse(); - if(ObjectUtils.isNull()){ - throw new ServiceException("请选择仓库!"); - } - - QueryWrapper queryWrapper = Condition.getQueryWrapper(distributionSignfor, DistributionSignforEntity.class); - queryWrapper.lambda().eq(DistributionSignforEntity::getIsDeleted, BladeConstant.DB_NOT_DELETED); +// BasicdataWarehouseEntity myCurrentWarehouse = basicdataWarehouseClient.getMyCurrentWarehouse(); +// if(ObjectUtils.isNull()){ +// throw new ServiceException("请选择仓库!"); +// } +// QueryWrapper queryWrapper = Condition.getQueryWrapper(distributionSignfor, DistributionSignforEntity.class); +// queryWrapper.lambda().eq(DistributionSignforEntity::getIsDeleted, BladeConstant.DB_NOT_DELETED); +// if(ObjectUtils.isNotNull(o)){ +// queryWrapper.in("id",String.valueOf(o).split(",")); +// } +// queryWrapper.eq("warehouse_id",myCurrentWarehouse.getId()); + DistributionSignforVO distributionSignforVO = JSON.parseObject(JSON.toJSONString(distributionSignfor), DistributionSignforVO.class); if(ObjectUtils.isNotNull(o)){ - queryWrapper.in("id",String.valueOf(o).split(",")); + String id= (String) o; + String[] split = id.split(","); + distributionSignforVO.setIds(Arrays.asList(split)); } - queryWrapper.eq("warehouse_id",myCurrentWarehouse.getId()); - List distributionSignforList = baseMapper.exportDistributionSignfor(queryWrapper); + List distributionSignforList = baseMapper.exportDistributionSignforOwn(distributionSignforVO); List list = new ArrayList<>(); distributionSignforList.forEach(d -> { // distributionSignfor.setTypeName(DictCache.getValue(DictEnum.YES_NO, DistributionSignfor.getType())); - DistributionSignforExcel signforExcel = new DistributionSignforExcel(); - BeanUtils.copyProperties(d,signforExcel); + DistributionSignforExcel signforExcel = new DistributionSignforExcel(); + BeanUtils.copyProperties(d,signforExcel); // signforExcel.setConsignee(); - list.add(signforExcel); - }); - return list; + String value = DictBizCache.getValue(DictBizConstant.DISTRIBUTION_TYPE, d.getDeliveryType()); + signforExcel.setDeliveryTypeName(value); + String value1 = DictBizCache.getValue(DictBizConstant.DISTRIBUTION_SIGNFOR_STATUS, d.getSigningStatus()); + signforExcel.setSigningStatusName(value1); + String value2 = DictBizCache.getValue(DictBizConstant.DISTRIBUTION_SIGNFOR_STATUS, d.getDriverSigning()); + signforExcel.setDriverSigningName(value2); + String value3 = DictBizCache.getValue(DictBizConstant.ADD_VALUE_SERVE_TYPE, d.getServeType()); + signforExcel.setDeliveryWayName(value3); + list.add(signforExcel); + }); + return list; + } + @Override + public List exportDistributionSignforOwn(Map distributionSignfor) { + + Object o = distributionSignfor.get("ids"); + if(ObjectUtils.isNotNull(o)){ + distributionSignfor.remove("ids"); + } +// BasicdataWarehouseEntity myCurrentWarehouse = basicdataWarehouseClient.getMyCurrentWarehouse(); +// if(ObjectUtils.isNull()){ +// throw new ServiceException("请选择仓库!"); +// } +// QueryWrapper queryWrapper = Condition.getQueryWrapper(distributionSignfor, DistributionSignforEntity.class); +// queryWrapper.lambda().eq(DistributionSignforEntity::getIsDeleted, BladeConstant.DB_NOT_DELETED); +// if(ObjectUtils.isNotNull(o)){ +// queryWrapper.in("id",String.valueOf(o).split(",")); +// } +// queryWrapper.eq("warehouse_id",myCurrentWarehouse.getId()); + DistributionSignforVO distributionSignforVO = JSON.parseObject(JSON.toJSONString(distributionSignfor), DistributionSignforVO.class); + if(ObjectUtils.isNotNull(o)){ + String id= (String) o; + String[] split = id.split(","); + distributionSignforVO.setIds(Arrays.asList(split)); + } + + List distributionSignforList = baseMapper.exportDistributionSignforSigningOwn(distributionSignforVO); + + List list = new ArrayList<>(); + distributionSignforList.forEach(d ->{ + DistributionSignforOwnExcel signforExcel = new DistributionSignforOwnExcel(); + BeanUtils.copyProperties(d,signforExcel); + String value = DictBizCache.getValue(DictBizConstant.DISTRIBUTION_TYPE, d.getDeliveryType()); + signforExcel.setDeliveryTypeName(value); + String value1 = DictBizCache.getValue(DictBizConstant.DISTRIBUTION_SIGNFOR_STATUS, d.getSigningStatus()); + signforExcel.setSigningStatusName(value1); + String value2 = DictBizCache.getValue(DictBizConstant.DISTRIBUTION_SIGNFOR_STATUS, d.getDriverSigning()); + signforExcel.setDriverSigningName(value2); + String value3 = DictBizCache.getValue(DictBizConstant.ADD_VALUE_SERVE_TYPE, d.getServeType()); + signforExcel.setDeliveryWayName(value3); + + list.add(signforExcel); + }); + return list; } @Override From 589cd24a314f5d7fff0de0d609df04aaddefccb2 Mon Sep 17 00:00:00 2001 From: kilo Date: Tue, 7 Nov 2023 22:35:30 +0800 Subject: [PATCH 15/36] =?UTF-8?q?=E5=8F=B8=E6=9C=BA=E5=A2=9E=E5=8A=A0wareh?= =?UTF-8?q?ouse=5Fid=E5=AD=97=E6=AE=B5=E3=80=81=E5=A2=9E=E5=80=BC=E6=9C=8D?= =?UTF-8?q?=E5=8A=A1=E5=88=97=E8=A1=A8=E6=8E=A5=E5=8F=A3?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../entity/BasicdataDriverArteryEntity.java | 12 ++ .../IDistributionDeliveryListClient.java | 11 ++ .../feign/IDistributionReservationClient.java | 10 ++ .../vo/DistributionAddvaluePackageVO.java | 41 +++++ .../WarehouseRetentionRecordEntity.java | 20 +++ .../BasicdataDriverArteryController.java | 1 - .../BasicdataWarehouseController.java | 3 - .../BasicdataDriverArteryServiceImpl.java | 6 +- .../DistributionSignforAppController.java | 2 +- .../DistributionSignforController.java | 17 ++ .../dto/DistributionAddvalueDTO.java | 2 + .../dto/DistributionAddvaluePackageDTO.java | 2 + .../feign/DistributionDeliveryListClient.java | 6 + .../feign/DistributionReservationClient.java | 6 + .../mapper/DistributionAddvalueMapper.java | 42 +++++ .../mapper/DistributionAddvalueMapper.xml | 145 ++++++++++++++++++ .../mapper/DistributionDeliveryListMapper.xml | 3 +- .../IDistributionDeliveryListService.java | 6 + .../IDistributionReservationService.java | 7 + .../service/IDistributionSignforService.java | 2 + .../impl/DistributionAddvalueServiceImpl.java | 7 +- .../DistributionDeliveryListServiceImpl.java | 111 ++++++++------ .../DistributionReservationServiceImpl.java | 120 ++++++++++++++- .../impl/DistributionSignforServiceImpl.java | 127 ++++++++++++--- .../api/WarehouseRetentionApiController.java | 4 +- .../IWarehouseRetentionRecordService.java | 8 + .../IWarehouseRetentionScanService.java | 2 +- .../WarehouseRetentionRecordServiceImpl.java | 42 +++++ .../WarehouseRetentionScanServiceImpl.java | 67 +++++--- 29 files changed, 715 insertions(+), 117 deletions(-) diff --git a/blade-service-api/logpm-basicdata-api/src/main/java/com/logpm/basicdata/entity/BasicdataDriverArteryEntity.java b/blade-service-api/logpm-basicdata-api/src/main/java/com/logpm/basicdata/entity/BasicdataDriverArteryEntity.java index d1e414941..4bdea19eb 100644 --- a/blade-service-api/logpm-basicdata-api/src/main/java/com/logpm/basicdata/entity/BasicdataDriverArteryEntity.java +++ b/blade-service-api/logpm-basicdata-api/src/main/java/com/logpm/basicdata/entity/BasicdataDriverArteryEntity.java @@ -209,4 +209,16 @@ public class BasicdataDriverArteryEntity extends TenantEntity { @ApiModelProperty(value = "预留5") private String reserve5; + /** + * 预留5 + */ + @ApiModelProperty(value = "预留5") + private String warehouseId; + + /** + * 预留5 + */ + @ApiModelProperty(value = "预留5") + private String warehouseName; + } diff --git a/blade-service-api/logpm-distribution-api/src/main/java/com/logpm/distribution/feign/IDistributionDeliveryListClient.java b/blade-service-api/logpm-distribution-api/src/main/java/com/logpm/distribution/feign/IDistributionDeliveryListClient.java index 5ec37bca8..84d88d181 100644 --- a/blade-service-api/logpm-distribution-api/src/main/java/com/logpm/distribution/feign/IDistributionDeliveryListClient.java +++ b/blade-service-api/logpm-distribution-api/src/main/java/com/logpm/distribution/feign/IDistributionDeliveryListClient.java @@ -20,10 +20,12 @@ import com.logpm.distribution.entity.DistributionDeliveryDetailsEntity; import com.logpm.distribution.entity.DistributionDeliveryListEntity; import com.logpm.distribution.vo.DistributionDeliveryListVO; import com.logpm.distribution.vo.DistributionDeliverySelfVO; +import com.logpm.distribution.vo.DistributionRetentionScanVo; 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.RequestBody; import org.springframework.web.bind.annotation.RequestParam; import java.util.List; @@ -61,4 +63,13 @@ public interface IDistributionDeliveryListClient { @GetMapping(TOP+"/getDeliveryDriverInfo") DistributionDeliveryListVO getDeliveryDriverInfo(@RequestParam("current") Long deliveryId); + +// /** +// * 根据配送任务ID查询配送司机信息 +// * @param distributionRetentionScanVo +// * @return +// */ +// @GetMapping(TOP+"/retentionCancelDeliveryPack") +// void retentionCancelDeliveryPack(@RequestBody DistributionRetentionScanVo distributionRetentionScanVo); + } diff --git a/blade-service-api/logpm-distribution-api/src/main/java/com/logpm/distribution/feign/IDistributionReservationClient.java b/blade-service-api/logpm-distribution-api/src/main/java/com/logpm/distribution/feign/IDistributionReservationClient.java index 0f52814c7..0df84a729 100644 --- a/blade-service-api/logpm-distribution-api/src/main/java/com/logpm/distribution/feign/IDistributionReservationClient.java +++ b/blade-service-api/logpm-distribution-api/src/main/java/com/logpm/distribution/feign/IDistributionReservationClient.java @@ -17,10 +17,12 @@ package com.logpm.distribution.feign; import com.logpm.distribution.entity.DistributionReservationEntity; +import com.logpm.distribution.vo.DistributionRetentionScanVo; 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.RequestBody; import org.springframework.web.bind.annotation.RequestParam; /** @@ -47,4 +49,12 @@ public interface IDistributionReservationClient { @GetMapping(TOP) BladePage reservationTop(@RequestParam("current") Integer current, @RequestParam("size") Integer size); + /** + * 根据配送任务ID查询配送司机信息 + * @param distributionRetentionScanVo + * @return + */ + @GetMapping(TOP+"/retentionCancelReservationPack") + boolean retentionCancelReservationPack(@RequestBody DistributionRetentionScanVo distributionRetentionScanVo); + } diff --git a/blade-service-api/logpm-distribution-api/src/main/java/com/logpm/distribution/vo/DistributionAddvaluePackageVO.java b/blade-service-api/logpm-distribution-api/src/main/java/com/logpm/distribution/vo/DistributionAddvaluePackageVO.java index f05b5a9ee..ef7d239ff 100644 --- a/blade-service-api/logpm-distribution-api/src/main/java/com/logpm/distribution/vo/DistributionAddvaluePackageVO.java +++ b/blade-service-api/logpm-distribution-api/src/main/java/com/logpm/distribution/vo/DistributionAddvaluePackageVO.java @@ -42,4 +42,45 @@ public class DistributionAddvaluePackageVO extends DistributionAddvaluePackageEn */ private Integer planQuantity; + /** + * 总数量 + */ + private Integer totalQuantity; + + /** + * 总数量 + */ + private String firsts; + + /** + * 总数量 + */ + private String second; + + /** + * 总数量 + */ + private String thirdProduct; + + + /** + * 总数量 + */ + private Long reservationId; + + /** + * 总数量 + */ + private String packageType; + + /** + * 总数量 + */ + private String materialNumber; + + /** + * 总数量 + */ + private String sku; + } diff --git a/blade-service-api/logpm-warehouse-api/src/main/java/com/logpm/warehouse/entity/WarehouseRetentionRecordEntity.java b/blade-service-api/logpm-warehouse-api/src/main/java/com/logpm/warehouse/entity/WarehouseRetentionRecordEntity.java index 0dfae3096..a065a9403 100644 --- a/blade-service-api/logpm-warehouse-api/src/main/java/com/logpm/warehouse/entity/WarehouseRetentionRecordEntity.java +++ b/blade-service-api/logpm-warehouse-api/src/main/java/com/logpm/warehouse/entity/WarehouseRetentionRecordEntity.java @@ -150,4 +150,24 @@ public class WarehouseRetentionRecordEntity extends TenantEntity { @ApiModelProperty(value = "滞留数量") private Integer retentionQuantity; + /** + * 滞留任务创建人 + */ + @ApiModelProperty(value = "滞留任务创建人") + private Long retentionCreateUserId; + + /** + * 滞留任务创建人 + */ + @ApiModelProperty(value = "滞留任务创建人") + private String retentionCreateUserName; + + /** + * 滞留备注 + */ + @ApiModelProperty(value = "滞留备注") + private String retentionRemarks; + + + } diff --git a/blade-service/logpm-basicdata/src/main/java/com/logpm/basicdata/controller/BasicdataDriverArteryController.java b/blade-service/logpm-basicdata/src/main/java/com/logpm/basicdata/controller/BasicdataDriverArteryController.java index b4647e291..b8975fa25 100644 --- a/blade-service/logpm-basicdata/src/main/java/com/logpm/basicdata/controller/BasicdataDriverArteryController.java +++ b/blade-service/logpm-basicdata/src/main/java/com/logpm/basicdata/controller/BasicdataDriverArteryController.java @@ -144,7 +144,6 @@ public class BasicdataDriverArteryController extends BladeController { if(list.size() > 0){ return R.fail("绑定的用户已存在!不要重复绑定!!!"); } - String phone = basicdataDriverArtery.getPhone(); R userR = userClient .userInfoByPhone(AuthUtil.getUser().getTenantId(), phone); diff --git a/blade-service/logpm-basicdata/src/main/java/com/logpm/basicdata/controller/BasicdataWarehouseController.java b/blade-service/logpm-basicdata/src/main/java/com/logpm/basicdata/controller/BasicdataWarehouseController.java index dfa8f2ad6..c20d741df 100644 --- a/blade-service/logpm-basicdata/src/main/java/com/logpm/basicdata/controller/BasicdataWarehouseController.java +++ b/blade-service/logpm-basicdata/src/main/java/com/logpm/basicdata/controller/BasicdataWarehouseController.java @@ -289,15 +289,12 @@ public class BasicdataWarehouseController extends BladeController { @GetMapping("/getMyWarehouseList") @ApiOperationSupport(order = 3) public R> getMyWarehouseList() { - BladeUser user = AuthUtil.getUser(); List basicdataGoodsShelfVOList = CacheUtil.get(CacheObjNames.basic_data_warehourse_list.getCacheName(), CacheObjNames.basic_data_warehourse_list.getKeyPrefix(), user.getUserId(),List.class); - if(ObjectUtils.isNull(basicdataGoodsShelfVOList)){ basicdataGoodsShelfVOList = warehouseService.getMyWarehouseList(); CacheUtil.put(CacheObjNames.basic_data_warehourse_list.getCacheName(), CacheObjNames.basic_data_warehourse_list.getKeyPrefix(),user.getUserId(),basicdataGoodsShelfVOList); } - return R.data(basicdataGoodsShelfVOList); } diff --git a/blade-service/logpm-basicdata/src/main/java/com/logpm/basicdata/service/impl/BasicdataDriverArteryServiceImpl.java b/blade-service/logpm-basicdata/src/main/java/com/logpm/basicdata/service/impl/BasicdataDriverArteryServiceImpl.java index 4f6686d6f..275ca9a3c 100644 --- a/blade-service/logpm-basicdata/src/main/java/com/logpm/basicdata/service/impl/BasicdataDriverArteryServiceImpl.java +++ b/blade-service/logpm-basicdata/src/main/java/com/logpm/basicdata/service/impl/BasicdataDriverArteryServiceImpl.java @@ -46,6 +46,7 @@ import java.util.Arrays; import java.util.List; import java.util.function.Function; import java.util.stream.Collectors; +import java.util.stream.Stream; /** * 司机信息表 服务实现类 @@ -118,8 +119,9 @@ public class BasicdataDriverArteryServiceImpl extends BaseServiceImpl basicdataDriverArteryVOS = new ArrayList<>(); List list = this.list(); - if (Func.isNotEmpty(list)){ - list.forEach(l->{ + Stream basicdataDriverArteryEntityStream = list.stream().filter(l -> l.getWarehouseId().contains(myCurrentWarehouse.getId().toString())); + if (Func.isNotEmpty(basicdataDriverArteryEntityStream)){ + basicdataDriverArteryEntityStream.forEach(l->{ BasicdataDriverArteryVO driverArteryVO = Func.copy(l, BasicdataDriverArteryVO.class); List vehicleIds = basicdataDrivermiddleService.list(Wrappers.query().lambda() .eq(BasicdataDrivermiddleEntity::getDriverId, l.getId())).stream().filter(f -> Func.isNotEmpty(f.getBrandId())).map(BasicdataDrivermiddleEntity::getBrandId).collect(Collectors.toList()); diff --git a/blade-service/logpm-distribution/src/main/java/com/logpm/distribution/appcontroller/DistributionSignforAppController.java b/blade-service/logpm-distribution/src/main/java/com/logpm/distribution/appcontroller/DistributionSignforAppController.java index 78ac5f949..19982e1cf 100644 --- a/blade-service/logpm-distribution/src/main/java/com/logpm/distribution/appcontroller/DistributionSignforAppController.java +++ b/blade-service/logpm-distribution/src/main/java/com/logpm/distribution/appcontroller/DistributionSignforAppController.java @@ -162,7 +162,7 @@ public class DistributionSignforAppController { @PostMapping("/positioning") @ApiOperationSupport(order = 2) public Resp positioning(@Valid @RequestBody DistributionSignforEntity distributionSignfor) { - Resp msg = distributionSignforService.positioning(distributionSignfor); + Resp msg = distributionSignforService.positioning(distributionSignfor); return msg; } diff --git a/blade-service/logpm-distribution/src/main/java/com/logpm/distribution/controller/DistributionSignforController.java b/blade-service/logpm-distribution/src/main/java/com/logpm/distribution/controller/DistributionSignforController.java index 7c47ba584..66542245c 100644 --- a/blade-service/logpm-distribution/src/main/java/com/logpm/distribution/controller/DistributionSignforController.java +++ b/blade-service/logpm-distribution/src/main/java/com/logpm/distribution/controller/DistributionSignforController.java @@ -317,6 +317,23 @@ public class DistributionSignforController extends BladeController { } + + /** + * 签收管理进行增值服务操作 + */ + @GetMapping("/checkAddValuePackageList") + @ApiOperationSupport(order = 7) + @ApiOperation(value = "PC查看增值服务列表", notes = "传入ids") + public IPage checkAddValuePackageList(@RequestParam Map addValueDTO, Query query) { + return distributionSignforService.checkAddValuePackageList(Condition.getPage(query),addValueDTO); + } + + + + + + + // /** // * 签收管理 修改签收照片信息 // */ diff --git a/blade-service/logpm-distribution/src/main/java/com/logpm/distribution/dto/DistributionAddvalueDTO.java b/blade-service/logpm-distribution/src/main/java/com/logpm/distribution/dto/DistributionAddvalueDTO.java index bd7fb5f92..f2da040e6 100644 --- a/blade-service/logpm-distribution/src/main/java/com/logpm/distribution/dto/DistributionAddvalueDTO.java +++ b/blade-service/logpm-distribution/src/main/java/com/logpm/distribution/dto/DistributionAddvalueDTO.java @@ -36,4 +36,6 @@ public class DistributionAddvalueDTO extends DistributionAddvalueEntity { */ private Long signforId; + private Long reservationId; + } diff --git a/blade-service/logpm-distribution/src/main/java/com/logpm/distribution/dto/DistributionAddvaluePackageDTO.java b/blade-service/logpm-distribution/src/main/java/com/logpm/distribution/dto/DistributionAddvaluePackageDTO.java index f5cd58897..83065d154 100644 --- a/blade-service/logpm-distribution/src/main/java/com/logpm/distribution/dto/DistributionAddvaluePackageDTO.java +++ b/blade-service/logpm-distribution/src/main/java/com/logpm/distribution/dto/DistributionAddvaluePackageDTO.java @@ -33,4 +33,6 @@ public class DistributionAddvaluePackageDTO extends DistributionAddvaluePackageE private Integer zeroQuantity; + private Integer maxQuantity; + } diff --git a/blade-service/logpm-distribution/src/main/java/com/logpm/distribution/feign/DistributionDeliveryListClient.java b/blade-service/logpm-distribution/src/main/java/com/logpm/distribution/feign/DistributionDeliveryListClient.java index 7271c787b..179dad553 100644 --- a/blade-service/logpm-distribution/src/main/java/com/logpm/distribution/feign/DistributionDeliveryListClient.java +++ b/blade-service/logpm-distribution/src/main/java/com/logpm/distribution/feign/DistributionDeliveryListClient.java @@ -21,6 +21,7 @@ import com.logpm.distribution.entity.DistributionDeliveryListEntity; import com.logpm.distribution.service.IDistributionDeliveryListService; import com.logpm.distribution.vo.DistributionDeliveryListVO; import com.logpm.distribution.vo.DistributionDeliverySelfVO; +import com.logpm.distribution.vo.DistributionRetentionScanVo; import lombok.AllArgsConstructor; import org.springblade.core.mp.support.BladePage; import org.springblade.core.mp.support.Condition; @@ -59,4 +60,9 @@ public class DistributionDeliveryListClient implements IDistributionDeliveryList return distributionDeliveryListService.getDeliveryList(deliveryId); } +// @Override +// public void retentionCancelDeliveryPack(DistributionRetentionScanVo distributionRetentionScanVo) { +// distributionDeliveryListService.retentionCancelDeliveryPack(distributionRetentionScanVo); +// } + } diff --git a/blade-service/logpm-distribution/src/main/java/com/logpm/distribution/feign/DistributionReservationClient.java b/blade-service/logpm-distribution/src/main/java/com/logpm/distribution/feign/DistributionReservationClient.java index b238dac66..1cab1eac1 100644 --- a/blade-service/logpm-distribution/src/main/java/com/logpm/distribution/feign/DistributionReservationClient.java +++ b/blade-service/logpm-distribution/src/main/java/com/logpm/distribution/feign/DistributionReservationClient.java @@ -19,6 +19,7 @@ package com.logpm.distribution.feign; import com.baomidou.mybatisplus.core.metadata.IPage; import com.logpm.distribution.entity.DistributionReservationEntity; import com.logpm.distribution.service.IDistributionReservationService; +import com.logpm.distribution.vo.DistributionRetentionScanVo; import lombok.AllArgsConstructor; import org.springblade.core.mp.support.BladePage; import org.springblade.core.mp.support.Condition; @@ -50,4 +51,9 @@ public class DistributionReservationClient implements IDistributionReservationCl return BladePage.of(page); } + @Override + public boolean retentionCancelReservationPack(DistributionRetentionScanVo distributionRetentionScanVo) { + return reservationService.retentionCancelReservationPack(distributionRetentionScanVo); + } + } diff --git a/blade-service/logpm-distribution/src/main/java/com/logpm/distribution/mapper/DistributionAddvalueMapper.java b/blade-service/logpm-distribution/src/main/java/com/logpm/distribution/mapper/DistributionAddvalueMapper.java index 5aaaab958..e83506748 100644 --- a/blade-service/logpm-distribution/src/main/java/com/logpm/distribution/mapper/DistributionAddvalueMapper.java +++ b/blade-service/logpm-distribution/src/main/java/com/logpm/distribution/mapper/DistributionAddvalueMapper.java @@ -23,9 +23,11 @@ import com.logpm.distribution.dto.DistributionAddvalueDTO; import com.logpm.distribution.entity.DistributionAddvalueEntity; import com.logpm.distribution.entity.DistributionAddvaluePackageEntity; import com.logpm.distribution.excel.DistributionAddvalueExcel; +import com.logpm.distribution.vo.DistributionAddvaluePackageVO; import com.logpm.distribution.vo.DistributionAddvalueVO; import org.apache.ibatis.annotations.Param; import java.util.List; +import java.util.Map; /** * 配送增值服务表 Mapper 接口 @@ -81,6 +83,46 @@ public interface DistributionAddvalueMapper extends BaseMapper selectAddvaluePackageVO(@Param("reservationId") Long reservationId, @Param("stockArticleId") Long stockArticleId,@Param("obj") Map addValueDTO); + + + List selectAddvalueZeroPackageVO(@Param("reservationId")Long reservationId,@Param("stockArticleId")Long stockArticleId,@Param("obj")Map addValueDTO); + + List selectAddvalueInventoryPackageVO(@Param("reservationId")Long reservationId,@Param("stockListId")Long stockListId,@Param("obj")Map addValueDTO); + // /** // * 删除增值服务 // * @param reservationId diff --git a/blade-service/logpm-distribution/src/main/java/com/logpm/distribution/mapper/DistributionAddvalueMapper.xml b/blade-service/logpm-distribution/src/main/java/com/logpm/distribution/mapper/DistributionAddvalueMapper.xml index c651c45dc..564584c35 100644 --- a/blade-service/logpm-distribution/src/main/java/com/logpm/distribution/mapper/DistributionAddvalueMapper.xml +++ b/blade-service/logpm-distribution/src/main/java/com/logpm/distribution/mapper/DistributionAddvalueMapper.xml @@ -92,5 +92,150 @@ GROUP BY lda.id + + + + + + diff --git a/blade-service/logpm-distribution/src/main/java/com/logpm/distribution/mapper/DistributionDeliveryListMapper.xml b/blade-service/logpm-distribution/src/main/java/com/logpm/distribution/mapper/DistributionDeliveryListMapper.xml index b2a1e5d05..e9071803c 100644 --- a/blade-service/logpm-distribution/src/main/java/com/logpm/distribution/mapper/DistributionDeliveryListMapper.xml +++ b/blade-service/logpm-distribution/src/main/java/com/logpm/distribution/mapper/DistributionDeliveryListMapper.xml @@ -1603,6 +1603,7 @@ ldsld.num AS reservationQuantity, ldsl.cargo_number AS materialNumber, ldsl.description_goods AS materialName, + 2 AS conditions, ldsl.incoming_batch AS 入库批次 FROM logpm_distribution_delivery_list AS lddl @@ -1648,7 +1649,7 @@ ldrs.reservation_num AS maxRetention, ldrzp.parcel_list_id AS orderPackageId, ldpl.firsts AS materialName, - 2 AS conditions + 3 AS conditions FROM logpm_distribution_delivery_list AS lddl LEFT JOIN logpm_distribution_signfor AS lds ON lds.delivery_id = lddl.id diff --git a/blade-service/logpm-distribution/src/main/java/com/logpm/distribution/service/IDistributionDeliveryListService.java b/blade-service/logpm-distribution/src/main/java/com/logpm/distribution/service/IDistributionDeliveryListService.java index 25b838b5e..812a44f97 100644 --- a/blade-service/logpm-distribution/src/main/java/com/logpm/distribution/service/IDistributionDeliveryListService.java +++ b/blade-service/logpm-distribution/src/main/java/com/logpm/distribution/service/IDistributionDeliveryListService.java @@ -316,4 +316,10 @@ public interface IDistributionDeliveryListService extends BaseService getDriverInfo(Long deliveryId); + +// /** +// * 滞留取消配送 +// * @param distributionRetentionScanVo +// */ +// void retentionCancelDeliveryPack(DistributionRetentionScanVo distributionRetentionScanVo); } diff --git a/blade-service/logpm-distribution/src/main/java/com/logpm/distribution/service/IDistributionReservationService.java b/blade-service/logpm-distribution/src/main/java/com/logpm/distribution/service/IDistributionReservationService.java index 2f6fa8af9..646fd5975 100644 --- a/blade-service/logpm-distribution/src/main/java/com/logpm/distribution/service/IDistributionReservationService.java +++ b/blade-service/logpm-distribution/src/main/java/com/logpm/distribution/service/IDistributionReservationService.java @@ -225,4 +225,11 @@ public interface IDistributionReservationService extends BaseService page); + + /** + * 滞留扫描取消包件 + * @param distributionRetentionScanVo + * @return + */ + boolean retentionCancelReservationPack(DistributionRetentionScanVo distributionRetentionScanVo); } diff --git a/blade-service/logpm-distribution/src/main/java/com/logpm/distribution/service/IDistributionSignforService.java b/blade-service/logpm-distribution/src/main/java/com/logpm/distribution/service/IDistributionSignforService.java index bd0b2f3b0..78559b20d 100644 --- a/blade-service/logpm-distribution/src/main/java/com/logpm/distribution/service/IDistributionSignforService.java +++ b/blade-service/logpm-distribution/src/main/java/com/logpm/distribution/service/IDistributionSignforService.java @@ -203,4 +203,6 @@ public interface IDistributionSignforService extends BaseService checkAddValuePackageList(IPage page, Map addValueDTO); } diff --git a/blade-service/logpm-distribution/src/main/java/com/logpm/distribution/service/impl/DistributionAddvalueServiceImpl.java b/blade-service/logpm-distribution/src/main/java/com/logpm/distribution/service/impl/DistributionAddvalueServiceImpl.java index 515cd470b..e46fe2dee 100644 --- a/blade-service/logpm-distribution/src/main/java/com/logpm/distribution/service/impl/DistributionAddvalueServiceImpl.java +++ b/blade-service/logpm-distribution/src/main/java/com/logpm/distribution/service/impl/DistributionAddvalueServiceImpl.java @@ -242,7 +242,7 @@ public class DistributionAddvalueServiceImpl extends BaseServiceImpl addvaluePackageEntities = new ArrayList<>(); - packageEntityList.stream().forEach(p->{p.setAddvalueDetailId(distributionAddvalueDetailEntity.getId());p.setQuantity(p.getZeroQuantity());addvaluePackageEntities.add(Func.copy(p,DistributionAddvaluePackageEntity.class));}); + packageDTOList.stream().forEach(p->{ + p.setAddvalueDetailId(distributionAddvalueDetailEntity.getId()); + addvaluePackageEntities.add(Func.copy(p,DistributionAddvaluePackageEntity.class)); + }); distributionAddvaluePackageService.saveBatch(addvaluePackageEntities); return Resp.scanSuccess("添加成功","添加成功"); } diff --git a/blade-service/logpm-distribution/src/main/java/com/logpm/distribution/service/impl/DistributionDeliveryListServiceImpl.java b/blade-service/logpm-distribution/src/main/java/com/logpm/distribution/service/impl/DistributionDeliveryListServiceImpl.java index bb7fd3a13..21586b874 100644 --- a/blade-service/logpm-distribution/src/main/java/com/logpm/distribution/service/impl/DistributionDeliveryListServiceImpl.java +++ b/blade-service/logpm-distribution/src/main/java/com/logpm/distribution/service/impl/DistributionDeliveryListServiceImpl.java @@ -88,6 +88,8 @@ import org.springblade.core.tool.utils.ObjectUtil; import org.springblade.system.cache.DictBizCache; import org.springblade.system.feign.IDictBizClient; import org.springframework.beans.BeanUtils; +import org.springframework.beans.factory.annotation.Autowired; +import org.springframework.context.annotation.Lazy; import org.springframework.data.redis.connection.ReactiveListCommands; import org.springframework.stereotype.Service; import org.springframework.transaction.annotation.Isolation; @@ -153,8 +155,11 @@ public class DistributionDeliveryListServiceImpl extends BaseServiceImpl { List parcelListEntities = distributionReservationMapper.selectPackageByReservationAndStockArticle(distrilbutionloadingscanDTO.getReservationId(), ord.getStockArticleId()); for (DistributionParcelListEntity parcelListEntity : parcelListEntities) { - DistributionLoadscanEntity loadscanEntity = new DistributionLoadscanEntity(); - BladeUser user = AuthUtil.getUser(); - loadscanEntity.setScanUser(user.getUserName()); - loadscanEntity.setDriverName(finalDistributionDeliverySelfEntity.getDriverName()); - loadscanEntity.setVehicleName(finalDistributionDeliverySelfEntity.getVehicleNub()); - loadscanEntity.setScanStatus(LoadingStatusConstant.yijianzhuangche.getValue()); - loadscanEntity.setOneClick(2); - loadscanEntity.setScanUser(user.getUserName()); - loadscanEntity.setReservationId(distrilbutionloadingscanDTO.getReservationId()); - loadscanEntity.setTrainNumber(distributionDeliveryListEntity.getTrainNumber()); - loadscanEntity.setPackageNub(parcelListEntity.getQuantity()); - loadscanEntity.setLoadedNub(parcelListEntity.getQuantity()); - loadscanEntity.setScanTime(new Date()); - if (StringUtils.isNotBlank(finalDistributionDeliverySelfEntity.getDriverPhone())) { - loadscanEntity.setDriverPhone(finalDistributionDeliverySelfEntity.getDriverPhone()); - } - if (StringUtils.isNotBlank(finalDistributionDeliverySelfEntity.getVehicleId())) { - loadscanEntity.setVehicleId(finalDistributionDeliverySelfEntity.getVehicleId()); - } - if (StringUtils.isNotBlank(finalDistributionDeliverySelfEntity.getDriverId())) { - loadscanEntity.setDriverId(finalDistributionDeliverySelfEntity.getDriverId()); - } - if (Func.isNotEmpty(finalDistributionDeliverySelfEntity.getId())) { - loadscanEntity.setLoadingId(finalDistributionDeliverySelfEntity.getId().toString()); - } - if (StringUtils.isNotBlank(finalDistributionDeliverySelfEntity.getDriverId())) { - loadscanEntity.setDriverId(finalDistributionDeliverySelfEntity.getDriverId()); - } - if (Func.isNotEmpty(parcelListEntity.getOrderPackageCode())) { - loadscanEntity.setOrderPackageCode(parcelListEntity.getOrderPackageCode()); - } - if (Func.isNotEmpty(parcelListEntity.getId())) { - loadscanEntity.setPackageId(parcelListEntity.getId()); - } - if (Func.isNotEmpty(parcelListEntity.getId())) { - loadscanEntity.setPackageId(parcelListEntity.getId()); - } - if (Func.isNotEmpty(parcelListEntity.getStockArticleId())) { - loadscanEntity.setOrderId(parcelListEntity.getStockArticleId()); - } - if (Func.isNotEmpty(distrilbutionloadingscanDTO.getDeliveryId())) { - loadscanEntity.setDeliveryId(distrilbutionloadingscanDTO.getDeliveryId()); - } + DistributionLoadscanEntity packageLoadingScan = distributionLoadscanService.getOne(Wrappers.query().lambda() + .eq(DistributionLoadscanEntity::getReservationId, distrilbutionloadingscanDTO.getReservationId()) + .eq(DistributionLoadscanEntity::getOrderId, ord.getStockArticleId()) + .eq(DistributionLoadscanEntity::getPackageId, parcelListEntity.getId()) + .ne(DistributionLoadscanEntity::getScanStatus, LoadingStatusConstant.quxiao.getValue())); + if (Func.isEmpty(packageLoadingScan)){ + DistributionLoadscanEntity loadscanEntity = new DistributionLoadscanEntity(); + BladeUser user = AuthUtil.getUser(); + loadscanEntity.setScanUser(user.getUserName()); + loadscanEntity.setDriverName(finalDistributionDeliverySelfEntity.getDriverName()); + loadscanEntity.setVehicleName(finalDistributionDeliverySelfEntity.getVehicleNub()); + loadscanEntity.setScanStatus(LoadingStatusConstant.yijianzhuangche.getValue()); + loadscanEntity.setOneClick(2); + loadscanEntity.setScanUser(user.getUserName()); + loadscanEntity.setReservationId(distrilbutionloadingscanDTO.getReservationId()); + loadscanEntity.setTrainNumber(distributionDeliveryListEntity.getTrainNumber()); + loadscanEntity.setPackageNub(parcelListEntity.getQuantity()); + loadscanEntity.setLoadedNub(parcelListEntity.getQuantity()); + loadscanEntity.setScanTime(new Date()); + if (StringUtils.isNotBlank(finalDistributionDeliverySelfEntity.getDriverPhone())) { + loadscanEntity.setDriverPhone(finalDistributionDeliverySelfEntity.getDriverPhone()); + } + if (StringUtils.isNotBlank(finalDistributionDeliverySelfEntity.getVehicleId())) { + loadscanEntity.setVehicleId(finalDistributionDeliverySelfEntity.getVehicleId()); + } + if (StringUtils.isNotBlank(finalDistributionDeliverySelfEntity.getDriverId())) { + loadscanEntity.setDriverId(finalDistributionDeliverySelfEntity.getDriverId()); + } + if (Func.isNotEmpty(finalDistributionDeliverySelfEntity.getId())) { + loadscanEntity.setLoadingId(finalDistributionDeliverySelfEntity.getId().toString()); + } + if (StringUtils.isNotBlank(finalDistributionDeliverySelfEntity.getDriverId())) { + loadscanEntity.setDriverId(finalDistributionDeliverySelfEntity.getDriverId()); + } + if (Func.isNotEmpty(parcelListEntity.getOrderPackageCode())) { + loadscanEntity.setOrderPackageCode(parcelListEntity.getOrderPackageCode()); + } + if (Func.isNotEmpty(parcelListEntity.getId())) { + loadscanEntity.setPackageId(parcelListEntity.getId()); + } + if (Func.isNotEmpty(parcelListEntity.getId())) { + loadscanEntity.setPackageId(parcelListEntity.getId()); + } + if (Func.isNotEmpty(parcelListEntity.getStockArticleId())) { + loadscanEntity.setOrderId(parcelListEntity.getStockArticleId()); + } + if (Func.isNotEmpty(distrilbutionloadingscanDTO.getDeliveryId())) { + loadscanEntity.setDeliveryId(distrilbutionloadingscanDTO.getDeliveryId()); + } // parcelListEntity.setOrderPackageLoadingStatus(OrderPackageLoadingStatusConstant.yizhuangche.getValue()); // distributionParcelListService.updateById(parcelListEntity); - distributionLoadscanService.save(loadscanEntity); - Integer i = distributionDeliveryListMapper.updateloadingTimeById(distrilbutionloadingscanDTO.getDeliveryId()); + distributionLoadscanService.save(loadscanEntity); + Integer i = distributionDeliveryListMapper.updateloadingTimeById(distrilbutionloadingscanDTO.getDeliveryId()); - Integer j = distributionSignforMapper.updateloadByReservationId(loadscanEntity.getDeliveryId(), loadscanEntity.getReservationId(), loadscanEntity.getPackageNub()); - warehouseUpdownTypeClient.downPackage(parcelListEntity.getOrderPackageCode(), myCurrentWarehouse.getId()); + Integer j = distributionSignforMapper.updateloadByReservationId(loadscanEntity.getDeliveryId(), loadscanEntity.getReservationId(), loadscanEntity.getPackageNub()); + warehouseUpdownTypeClient.downPackage(parcelListEntity.getOrderPackageCode(), myCurrentWarehouse.getId()); + } //异步修改包件状态 // distributionAsyncService.changeMarketDeliveryListStatus(loadscanEntity.getOrderPackageCode(), loadscanEntity.getDeliveryId()); } @@ -5279,6 +5291,7 @@ public class DistributionDeliveryListServiceImpl extends BaseServiceImpl getDriverCar(String kind, Long deliveryListEntityId) { Map map = new HashMap<>(); String dirverName = null; diff --git a/blade-service/logpm-distribution/src/main/java/com/logpm/distribution/service/impl/DistributionReservationServiceImpl.java b/blade-service/logpm-distribution/src/main/java/com/logpm/distribution/service/impl/DistributionReservationServiceImpl.java index 15241fd34..24bfa4051 100644 --- a/blade-service/logpm-distribution/src/main/java/com/logpm/distribution/service/impl/DistributionReservationServiceImpl.java +++ b/blade-service/logpm-distribution/src/main/java/com/logpm/distribution/service/impl/DistributionReservationServiceImpl.java @@ -34,6 +34,7 @@ import com.logpm.distribution.vo.*; import com.logpm.distribution.wrapper.*; import com.logpm.oldproject.entity.WayBillEntity; import com.logpm.oldproject.feign.IWayBillClient; +import com.logpm.warehouse.entity.WarehouseWaybillEntity; import com.logpm.warehouse.feign.IWarehouseWaybillClient; import lombok.extern.slf4j.Slf4j; import org.springblade.common.constant.DictBizConstant; @@ -185,6 +186,9 @@ public class DistributionReservationServiceImpl extends BaseServiceImplquery().lambda() + .eq(DistributionReservationPackageEntity::getReservationId, distributionRetentionScanVo.getReservationId()) + .eq(DistributionReservationPackageEntity::getStockArticleId, distributionRetentionScanVo.getOrderId()) + .eq(DistributionReservationPackageEntity::getParceListId, distributionRetentionScanVo.getOrderPackageId()) + .ne(DistributionReservationPackageEntity::getPacketBarStatus, ReservationPackageStatusConstant.quxiao.getValue())); + reservationPackageEntity.setPacketBarStatus(ReservationPackageStatusConstant.quxiao.getValue()); + distributionReservationPackageMapper.updateById(reservationPackageEntity); + DistributionReservationStockarticleEntity reservationStockarticleEntity = distributionReservationStockarticleMapper.selectOne(Wrappers.query().lambda() + .eq(DistributionReservationStockarticleEntity::getReservationId, distributionRetentionScanVo.getReservationId()) + .eq(DistributionReservationStockarticleEntity::getStockArticleId, distributionRetentionScanVo.getOrderId()) + .eq(DistributionReservationStockarticleEntity::getIsZero, IsOrNoConstant.no.getValue()) + .ne(DistributionReservationStockarticleEntity::getStockArticleStatus, ReservationOrderStatusConstant.quxiao.getValue())); + Integer reservationNum = reservationStockarticleEntity.getReservationNum(); + Integer retentionQuantity = distributionRetentionScanVo.getRetentionQuantity(); + if ((reservationNum - retentionQuantity) == 0){ + reservationStockarticleEntity.setStockArticleStatus(ReservationOrderStatusConstant.quxiao.getValue()); + } + reservationStockarticleEntity.setReservationNum(reservationNum - retentionQuantity); + distributionReservationStockarticleMapper.updateById(reservationStockarticleEntity); + reservationEntity.setReservationNum(reservationEntity.getReservationNum() - retentionQuantity); + this.updateById(reservationEntity); + } + break; + case 2: + if (reservationEntity.getReservationStockListNum() == distributionRetentionScanVo.getRetentionQuantity() && reservationEntity.getReservationNum() == 0){ + this.cancelReservation(Func.copy(reservationEntity,DistributionReservationDTO.class)); + }else { + DisStockListDetailEntity disStockListDetailEntity = disStockListDetailMapper.selectOne(Wrappers.query().lambda() + .eq(DisStockListDetailEntity::getReservationId, distributionRetentionScanVo.getReservationId()) + .eq(DisStockListDetailEntity::getStockListId, distributionRetentionScanVo.getInventoryId()) + .eq(DisStockListDetailEntity::getId, distributionRetentionScanVo.getOrderPackageId()) + ); + disStockListDetailEntity.setStockPackageStatus(ReservationPackageStatusConstant.quxiao.getValue()); + disStockListDetailMapper.updateById(disStockListDetailEntity); + DistributionReservationStocklistEntity reservationStocklistEntity = distributionReservationStocklistMapper.selectOne(Wrappers.query().lambda() + .eq(DistributionReservationStocklistEntity::getReservationId, distributionRetentionScanVo.getReservationId()) + .eq(DistributionReservationStocklistEntity::getStocklistId, distributionRetentionScanVo.getInventoryId()) + .ne(DistributionReservationStocklistEntity::getStockListStatus, ReservationOrderStatusConstant.quxiao.getValue()) + ); + Integer reservationNum = reservationStocklistEntity.getReservationNum(); + + } + + + + break; + case 3: + if (reservationEntity.getReservationNum() == distributionRetentionScanVo.getRetentionQuantity() && reservationEntity.getReservationStockListNum() == 0){ + //该预约订单只存在该包件并且没有库存品 + this.cancelReservation(Func.copy(reservationEntity,DistributionReservationDTO.class)); + }else { + DistributionReservationZeroPackageEntity reservationZeroPackageEntity = distributionReservationZeroPackageMapper.selectOne(Wrappers.query().lambda() + .eq(DistributionReservationZeroPackageEntity::getReservationId, distributionRetentionScanVo.getReservationId()) + .eq(DistributionReservationZeroPackageEntity::getStockArticleId, distributionRetentionScanVo.getOrderId()) + .eq(DistributionReservationZeroPackageEntity::getParcelListId, distributionRetentionScanVo.getOrderPackageId()) + .ne(DistributionReservationZeroPackageEntity::getZeroPackageStatus, ReservationPackageStatusConstant.quxiao.getValue())); + if (reservationZeroPackageEntity.getQuantity() == distributionRetentionScanVo.getRetentionQuantity()){ + reservationZeroPackageEntity.setZeroPackageStatus(ReservationPackageStatusConstant.quxiao.getValue()); + } + reservationZeroPackageEntity.setQuantity(reservationZeroPackageEntity.getQuantity() -distributionRetentionScanVo.getRetentionQuantity()); + distributionReservationZeroPackageMapper.updateById(reservationZeroPackageEntity); + DistributionReservationStockarticleEntity reservationStockarticleEntity = distributionReservationStockarticleMapper.selectOne(Wrappers.query().lambda() + .eq(DistributionReservationStockarticleEntity::getReservationId, distributionRetentionScanVo.getReservationId()) + .eq(DistributionReservationStockarticleEntity::getStockArticleId, distributionRetentionScanVo.getOrderId()) + .eq(DistributionReservationStockarticleEntity::getIsZero, IsOrNoConstant.no.getValue()) + .ne(DistributionReservationStockarticleEntity::getStockArticleStatus, ReservationOrderStatusConstant.quxiao.getValue())); + Integer reservationNum = reservationStockarticleEntity.getReservationNum(); + Integer retentionQuantity = distributionRetentionScanVo.getRetentionQuantity(); + if ((reservationNum - retentionQuantity) == 0){ + reservationStockarticleEntity.setStockArticleStatus(ReservationOrderStatusConstant.quxiao.getValue()); + } + reservationStockarticleEntity.setReservationNum(reservationNum - retentionQuantity); + distributionReservationStockarticleMapper.updateById(reservationStockarticleEntity); + reservationEntity.setReservationNum(reservationEntity.getReservationNum() - retentionQuantity); + this.updateById(reservationEntity); + } + break; + + } + return false; + } } diff --git a/blade-service/logpm-distribution/src/main/java/com/logpm/distribution/service/impl/DistributionSignforServiceImpl.java b/blade-service/logpm-distribution/src/main/java/com/logpm/distribution/service/impl/DistributionSignforServiceImpl.java index b5fb4b4db..af29032b1 100644 --- a/blade-service/logpm-distribution/src/main/java/com/logpm/distribution/service/impl/DistributionSignforServiceImpl.java +++ b/blade-service/logpm-distribution/src/main/java/com/logpm/distribution/service/impl/DistributionSignforServiceImpl.java @@ -16,6 +16,7 @@ */ package com.logpm.distribution.service.impl; +import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper; import com.alibaba.fastjson.JSON; import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper; import com.baomidou.mybatisplus.core.conditions.update.LambdaUpdateWrapper; @@ -157,7 +158,7 @@ public class DistributionSignforServiceImpl extends BaseServiceImpl exportDistributionSignfor(Map distributionSignfor) { Object o = distributionSignfor.get("ids"); - if(ObjectUtils.isNotNull(o)){ + if (ObjectUtils.isNotNull(o)) { distributionSignfor.remove("ids"); } // BasicdataWarehouseEntity myCurrentWarehouse = basicdataWarehouseClient.getMyCurrentWarehouse(); @@ -468,21 +469,21 @@ public class DistributionSignforServiceImpl extends BaseServiceImpl reservationStockarticleEntityList = distributionReservationStockarticleService.list(Wrappers.query().lambda().eq(DistributionReservationStockarticleEntity::getReservationId, signforEntity.getReservationId()).ne( DistributionReservationStockarticleEntity::getStockArticleStatus, ReservationOrderStatusConstant.quxiao.getValue())); - if (Func.isEmpty(reservationStockarticleEntityList)){ - log.error("#####################预约查询无订单信息,reservationId:{}",signforEntity.getReservationId()); + if (Func.isEmpty(reservationStockarticleEntityList)) { + log.error("#####################预约查询无订单信息,reservationId:{}", signforEntity.getReservationId()); return null; } List orderIds = reservationStockarticleEntityList.stream().map(DistributionReservationStockarticleEntity::getStockArticleId).collect(Collectors.toList()); List stockArticleEntities = distributionStockArticleService.listByIds(orderIds); - List printEntities = baseMapper.selectSignImgsUrl(distributionSignforVO.getReservationId()); + List printEntities = baseMapper.selectSignImgsUrl(distributionSignforVO.getReservationId()); distributionSignforVO.setPrintVOList(printEntities); - if (Func.isNotEmpty(stockArticleEntities)){ + if (Func.isNotEmpty(stockArticleEntities)) { distributionSignforVO.setOrderInfo(DistributionStockArticleWrapper.build().listVO(stockArticleEntities)); } // List stockArticleEntityList = baseMapper.selectOrderList(id); @@ -564,7 +565,7 @@ public class DistributionSignforServiceImpl extends BaseServiceImpl inventoryScanList = distributionLoadscaninvnService.list(Wrappers.query().lambda() .eq(DistributionLoadscaninvnEntity::getReservationId, distributionAppReservationVO.getId()) .ne(DistributionLoadscaninvnEntity::getScanStatus, LoadingStatusConstant.quxiao.getValue())); - if (Func.isNotEmpty(packageScanList)){ + if (Func.isNotEmpty(packageScanList)) { loadingNum.getAndAdd(packageScanList.stream().mapToInt(DistributionLoadscanEntity::getLoadedNub).sum()); } - if (Func.isNotEmpty(inventoryScanList)){ + if (Func.isNotEmpty(inventoryScanList)) { loadingNum.getAndAdd(inventoryScanList.stream().mapToInt(DistributionLoadscaninvnEntity::getLoadedNub).sum()); } distributionAppReservationVO.setLoadedNumber(loadingNum.get()); @@ -1179,7 +1180,7 @@ public class DistributionSignforServiceImpl extends BaseServiceImpl parcelListVOS = new ArrayList<>(); - if (Func.isNotEmpty(reservationStockarticleEntityList)){ - reservationStockarticleEntityList.forEach(rs->{ - if (rs.getIsZero().equals(IsOrNoConstant.no.getValue())){ + if (Func.isNotEmpty(reservationStockarticleEntityList)) { + reservationStockarticleEntityList.forEach(rs -> { + if (rs.getIsZero().equals(IsOrNoConstant.no.getValue())) { List parcelListEntityList = distributionReservationMapper.selectPackageByReservationAndStockArticle(rs.getReservationId(), rs.getStockArticleId()); List parcelListVOList = DistributionParcelListWrapper.build().listVO(parcelListEntityList); parcelListVOList.forEach(p -> { @@ -1976,9 +1977,9 @@ public class DistributionSignforServiceImpl extends BaseServiceImpl distributionParcelNumberDTOS = distributionReservationMapper.selectZeroPackageListByReservationId(rs.getReservationId()); - distributionParcelNumberDTOS.forEach(zp->{ + distributionParcelNumberDTOS.forEach(zp -> { DistributionParcelListEntity parcelListEntity = distributionParcelListService.getById(zp.getParcelListId()); DistributionParcelListVO parcelListVO = DistributionParcelListWrapper.build().entityVO(parcelListEntity); // DistributionParcelListVO parcelListVO = Func.copy(parcelListEntity, DistributionParcelListVO.class); @@ -1988,7 +1989,7 @@ public class DistributionSignforServiceImpl extends BaseServiceImplquery().lambda() .eq(DistributionLoadscanEntity::getPackageId, zp.getParcelListId()) - .eq(DistributionLoadscanEntity::getReservationId,rs.getReservationId())); + .eq(DistributionLoadscanEntity::getReservationId, rs.getReservationId())); if (Func.isNotEmpty(distributionLoadscanEntity)) { //该包件存在扫描记录 String scanStatus = distributionLoadscanEntity.getScanStatus(); @@ -2078,7 +2079,34 @@ public class DistributionSignforServiceImpl extends BaseServiceImpl addvaluePackageVOS = new ArrayList<>(); - distributionAddvaluePackageEntities.forEach(p->{addvaluePackageVOS.add(Func.copy(p,DistributionAddvaluePackageVO.class));}); + distributionAddvaluePackageEntities.forEach(p -> { + Integer conditions = p.getConditions(); +// DistributionAddvaluePackageVO addvaluePackageVO = Func.copy(p, DistributionAddvaluePackageVO.class); + switch (conditions) { + case 1: + //订制品 + DistributionAddvaluePackageVO addvaluePackageVO = distributionAddvalueMapper.selectAddvaluePackageDetail(p.getPackageId(),distributionAddvalueDTO.getAddvalueId(),distributionAddvalueDTO.getReservationId()); + if (Func.isNotEmpty(addvaluePackageVO)){ + addvaluePackageVOS.add(addvaluePackageVO); + } + break; + case 2: + DistributionAddvaluePackageVO addvalueinventoryPackageVO = distributionAddvalueMapper.selectAddvalueInventoryPackageDetail(p.getPackageId(),distributionAddvalueDTO.getAddvalueId(),distributionAddvalueDTO.getReservationId()); + //库存品 + if (Func.isNotEmpty(addvalueinventoryPackageVO)){ + addvaluePackageVOS.add(addvalueinventoryPackageVO); + } + break; + case 3: + DistributionAddvaluePackageVO addvalueZeroPackageVO = distributionAddvalueMapper.selectAddvalueZeroPackageDetail(p.getPackageId(),distributionAddvalueDTO.getAddvalueId(),distributionAddvalueDTO.getReservationId()); + //库存品 + if (Func.isNotEmpty(addvalueZeroPackageVO)){ + addvaluePackageVOS.add(addvalueZeroPackageVO); + } + break; + } + + }); addvalueBySignfor.setPackageEntityList(addvaluePackageVOS); } } @@ -2367,7 +2395,7 @@ public class DistributionSignforServiceImpl extends BaseServiceImpl 0) { str.append("已签收" + signingTotalNum.get() + "件"); } - return Resp.scanSuccess("", str.toString()); + return Resp.scanSuccess(str.toString(), str.toString()); } @Override @@ -2576,4 +2604,57 @@ public class DistributionSignforServiceImpl extends BaseServiceImpl checkAddValuePackageList(IPage page,Map addValueDTO) { + String reservationId = (String) addValueDTO.get("reservationId"); + if (Func.isEmpty(reservationId)){ + log.error("##################无reservationId"); + return null; + } + List reservationStockarticleEntityList = distributionReservationMapper.selectStockArticleByReservationId(Long.parseLong(reservationId)); + List addvaluePackageVOS = new ArrayList<>(); + if (Func.isNotEmpty(reservationStockarticleEntityList)){ + List orderIds = reservationStockarticleEntityList.stream().map(DistributionReservationStockarticleEntity::getStockArticleId).collect(Collectors.toList()); + LambdaQueryWrapper orderQW = Wrappers.query().lambda().in(DistributionStockArticleEntity::getId, orderIds); + if (Func.isNotEmpty(addValueDTO.get("orderCode"))){ + orderQW.like(DistributionStockArticleEntity::getOrderCode, addValueDTO.get("orderCode")); + } + List orderList = distributionStockArticleService.list(orderQW); + orderList.forEach(rs->{ + if (rs.getIsZero().equals(IsOrNoConstant.no.getValue())){ + List addvaluepackageVO = distributionAddvalueMapper.selectAddvaluePackageVO(Long.parseLong(reservationId),rs.getId(),addValueDTO); + if (Func.isNotEmpty(addvaluepackageVO)){ + addvaluePackageVOS.addAll(addvaluepackageVO); + } + }else { + List addvalueZeroPackageVO = distributionAddvalueMapper.selectAddvalueZeroPackageVO(Long.parseLong(reservationId),rs.getId(),addValueDTO); + if (Func.isNotEmpty(addvalueZeroPackageVO)){ + addvaluePackageVOS.addAll(addvalueZeroPackageVO); + } + } + }); + } + List distributionReservationStocklistEntities = distributionReservationMapper.selectStockListByReservationId(Long.parseLong(reservationId)); + + if (Func.isNotEmpty(distributionReservationStocklistEntities)){ + List inventoryIds = distributionReservationStocklistEntities.stream().map(DistributionReservationStocklistEntity::getStocklistId).collect(Collectors.toList()); + LambdaQueryWrapper inventoryQW = Wrappers.query().lambda().in(DistributionStockListEntity::getId, inventoryIds); + if (Func.isNotEmpty(addValueDTO.get("materialName"))){ + inventoryQW.like(DistributionStockListEntity::getDescriptionGoods,(String)addValueDTO.get("materialName")); + } + if (Func.isNotEmpty(addValueDTO.get("materialCode"))){ + inventoryQW.like(DistributionStockListEntity::getCargoNumber,(String)addValueDTO.get("materialCode")); + } + List stockListEntityList = distributionStockListService.list(inventoryQW); + stockListEntityList.forEach(inven->{ + List addvalueinventoryPackageVO = distributionAddvalueMapper.selectAddvalueInventoryPackageVO(Long.parseLong(reservationId),inven.getId(),addValueDTO); + if (Func.isNotEmpty(addvalueinventoryPackageVO)){ + addvaluePackageVOS.addAll(addvalueinventoryPackageVO); + } + }); + } + + return page.setRecords(addvaluePackageVOS); + } } diff --git a/blade-service/logpm-warehouse/src/main/java/com/logpm/warehouse/api/WarehouseRetentionApiController.java b/blade-service/logpm-warehouse/src/main/java/com/logpm/warehouse/api/WarehouseRetentionApiController.java index e917464d8..b1bc1b387 100644 --- a/blade-service/logpm-warehouse/src/main/java/com/logpm/warehouse/api/WarehouseRetentionApiController.java +++ b/blade-service/logpm-warehouse/src/main/java/com/logpm/warehouse/api/WarehouseRetentionApiController.java @@ -79,8 +79,8 @@ public class WarehouseRetentionApiController { @ApiOperationSupport(order = 1) @ApiOperation(value = "保存滞留扫描列表", notes = "传入trayTypeDTO") public R saveRetentionList(@RequestBody WarehouseRetentionRecordDTO warehouseRetentionScanDTOS) { -// R r = warehouseRetentionRecordService.saveRetentionList(warehouseRetentionScanDTOS); - R r = warehouseRetentionScanService.saveRetentionList(warehouseRetentionScanDTOS); +// R r = warehouseRetentionScanService.saveRetentionList(warehouseRetentionScanDTOS); + R r = warehouseRetentionRecordService.saveRetentionList(warehouseRetentionScanDTOS); return r; } diff --git a/blade-service/logpm-warehouse/src/main/java/com/logpm/warehouse/service/IWarehouseRetentionRecordService.java b/blade-service/logpm-warehouse/src/main/java/com/logpm/warehouse/service/IWarehouseRetentionRecordService.java index 9e2b006ce..44b325dc6 100644 --- a/blade-service/logpm-warehouse/src/main/java/com/logpm/warehouse/service/IWarehouseRetentionRecordService.java +++ b/blade-service/logpm-warehouse/src/main/java/com/logpm/warehouse/service/IWarehouseRetentionRecordService.java @@ -19,6 +19,7 @@ package com.logpm.warehouse.service; import com.baomidou.mybatisplus.core.conditions.Wrapper; import com.baomidou.mybatisplus.core.metadata.IPage; import com.logpm.warehouse.dto.RetentionDTO; +import com.logpm.warehouse.dto.WarehouseRetentionRecordDTO; import com.logpm.warehouse.dto.WarehouseRetentionScanDTO; import com.logpm.warehouse.entity.WarehouseRetentionRecordEntity; import com.logpm.warehouse.excel.WarehouseRetentionRecordExcel; @@ -71,4 +72,11 @@ public interface IWarehouseRetentionRecordService extends BaseService exportWarehouseRetentionRecord(Wrapper queryWrapper); - R saveRetentionList(WarehouseRetentionRecordDTO warehouseRetentionRecordEntity); +// R saveRetentionList(WarehouseRetentionRecordDTO warehouseRetentionRecordEntity); } diff --git a/blade-service/logpm-warehouse/src/main/java/com/logpm/warehouse/service/impl/WarehouseRetentionRecordServiceImpl.java b/blade-service/logpm-warehouse/src/main/java/com/logpm/warehouse/service/impl/WarehouseRetentionRecordServiceImpl.java index 2fa38976e..8f854ec29 100644 --- a/blade-service/logpm-warehouse/src/main/java/com/logpm/warehouse/service/impl/WarehouseRetentionRecordServiceImpl.java +++ b/blade-service/logpm-warehouse/src/main/java/com/logpm/warehouse/service/impl/WarehouseRetentionRecordServiceImpl.java @@ -29,6 +29,7 @@ import com.logpm.distribution.entity.DistributionParcelNumberEntity; import com.logpm.distribution.feign.IDistributionDeliveryListClient; import com.logpm.distribution.feign.IDistributionLoadscanClient; import com.logpm.distribution.feign.IDistributionParcelListClient; +import com.logpm.distribution.feign.IDistributionReservationClient; import com.logpm.distribution.vo.DistributionDeliveryListVO; import com.logpm.distribution.vo.DistributionDeliverySelfVO; import com.logpm.oldproject.feign.IWarehouseClient; @@ -49,10 +50,13 @@ import lombok.extern.slf4j.Slf4j; import org.springblade.common.constant.retention.RetentionTypeConstant; import org.springblade.common.exception.CustomerException; import org.springblade.core.mp.base.BaseServiceImpl; +import org.springblade.core.secure.BladeUser; +import org.springblade.core.secure.utils.AuthUtil; import org.springblade.core.tool.api.R; import org.springblade.core.tool.utils.Func; import org.springframework.stereotype.Service; +import java.util.Date; import java.util.List; import java.util.Objects; import java.util.concurrent.atomic.AtomicInteger; @@ -74,6 +78,7 @@ public class WarehouseRetentionRecordServiceImpl extends BaseServiceImpl selectWarehouseRetentionRecordPage(IPage page, WarehouseRetentionRecordVO warehouseRetentionRecord) { @@ -159,4 +164,41 @@ public class WarehouseRetentionRecordServiceImpl extends BaseServiceImpl warehouseRetentionScanDTOS = warehouseRetentionRecordDTO.getWarehouseRetentionScanDTOS(); + if (Func.isEmpty(warehouseRetentionScanDTOS)){ + log.error("############用户提交空滞留列表"); + return Resp.scanFail("操作失败","无滞留包件信息"); + } + BladeUser user = AuthUtil.getUser(); + //TODO 保存车次数据还需要处理 + WarehouseRetentionRecordEntity warehouseRetentionRecordEntity = new WarehouseRetentionRecordEntity(); + warehouseRetentionRecordEntity.setTaskId(warehouseRetentionRecordDTO.getDeliveryId()); + warehouseRetentionRecordEntity.setRemark(warehouseRetentionRecordDTO.getRemark()); + warehouseRetentionRecordEntity.setRetentionCarNo(warehouseRetentionRecordDTO.getTrainNumber()); + warehouseRetentionRecordEntity.setRetentionCarId(warehouseRetentionRecordDTO.getLoadingId()); + warehouseRetentionRecordEntity.setRetentionWarehouseId(myCurrentWarehouse.getId()); + warehouseRetentionRecordEntity.setRetentionWarehouseName(myCurrentWarehouse.getName()); + warehouseRetentionRecordEntity.setRetentionWarehouseName(myCurrentWarehouse.getName()); + warehouseRetentionRecordEntity.setRetentionCreateUserId(user.getUserId()); + warehouseRetentionRecordEntity.setRetentionCreateUserName(user.getUserName()); + this.save(warehouseRetentionRecordEntity); + warehouseRetentionScanDTOS.forEach(r->{ + r.setRetentionScanTime(new Date()); + r.setRetentionScanUserId(user.getUserId()); + r.setRetentionScanUsername(user.getUserName()); + r.setDeliveryId(warehouseRetentionRecordDTO.getDeliveryId()); + r.setRefId(warehouseRetentionRecordEntity.getId()); + warehouseRetentionScanService.save(Func.copy(r,WarehouseRetentionScanEntity.class)); + //进行滞留操作的包件需要和原来订单 预约进行绑定解除 + //TODO 需要一个取消配送包件的方法 + }); + return Resp.scanSuccess("操作成功","操作成功"); + } + } diff --git a/blade-service/logpm-warehouse/src/main/java/com/logpm/warehouse/service/impl/WarehouseRetentionScanServiceImpl.java b/blade-service/logpm-warehouse/src/main/java/com/logpm/warehouse/service/impl/WarehouseRetentionScanServiceImpl.java index 25ca4f822..85be65a06 100644 --- a/blade-service/logpm-warehouse/src/main/java/com/logpm/warehouse/service/impl/WarehouseRetentionScanServiceImpl.java +++ b/blade-service/logpm-warehouse/src/main/java/com/logpm/warehouse/service/impl/WarehouseRetentionScanServiceImpl.java @@ -25,16 +25,22 @@ import com.logpm.warehouse.entity.WarehouseRetentionRecordEntity; import com.logpm.warehouse.entity.WarehouseRetentionScanEntity; import com.logpm.warehouse.excel.WarehouseRetentionScanExcel; import com.logpm.warehouse.mapper.WarehouseRetentionScanMapper; +import com.logpm.warehouse.service.IWarehouseRetentionRecordService; import com.logpm.warehouse.service.IWarehouseRetentionScanService; import com.logpm.warehouse.vo.WarehouseRetentionRecordVO; import com.logpm.warehouse.excel.WarehouseRetentionRecordExcel; import com.logpm.warehouse.vo.WarehouseRetentionScanVO; +import lombok.AllArgsConstructor; import org.springblade.core.mp.base.BaseServiceImpl; +import org.springblade.core.secure.BladeUser; +import org.springblade.core.secure.utils.AuthUtil; import org.springblade.core.tool.api.R; import org.springblade.core.tool.utils.Func; import org.springframework.stereotype.Service; import com.baomidou.mybatisplus.core.conditions.Wrapper; import com.baomidou.mybatisplus.core.metadata.IPage; + +import java.util.Date; import java.util.List; /** @@ -44,11 +50,14 @@ import java.util.List; * @since 2023-11-03 */ @Service +@AllArgsConstructor public class WarehouseRetentionScanServiceImpl extends BaseServiceImpl implements IWarehouseRetentionScanService { private IBasicdataWarehouseClient warehouseClient; +// private IWarehouseRetentionRecordService retentionRecordService; + @Override public IPage selectWarehouseRetentionRecordPage(IPage page, WarehouseRetentionScanVO warehouseRetentionScanVO) { return page.setRecords(baseMapper.selectWarehouseRetentionRecordPage(page, warehouseRetentionScanVO)); @@ -64,28 +73,38 @@ public class WarehouseRetentionScanServiceImpl extends BaseServiceImpl warehouseRetentionScanDTOS = warehouseRetentionRecordDTO.getWarehouseRetentionScanDTOS(); - if (Func.isEmpty(warehouseRetentionScanDTOS)){ - log.error("############用户提交空滞留列表"); - return Resp.scanFail("操作失败","无滞留包件信息"); - } - //TODO 保存车次数据还需要处理 - WarehouseRetentionRecordEntity warehouseRetentionRecordEntity = new WarehouseRetentionRecordEntity(); - warehouseRetentionRecordEntity.setTaskId(warehouseRetentionRecordDTO.getDeliveryId()); - warehouseRetentionRecordEntity.setRemark(warehouseRetentionRecordDTO.getRemark()); - warehouseRetentionRecordEntity.setRetentionCarNo(warehouseRetentionRecordDTO.getTrainNumber()); - warehouseRetentionRecordEntity.setRetentionCarId(warehouseRetentionRecordDTO.getLoadingId()); - warehouseRetentionRecordEntity.setRetentionWarehouseId(myCurrentWarehouse.getId()); - warehouseRetentionRecordEntity.setRetentionWarehouseName(myCurrentWarehouse.getName()); - warehouseRetentionScanDTOS.forEach(r->{ - this.save(Func.copy(r,WarehouseRetentionScanEntity.class)); - }); - return Resp.scanSuccess("操作成功","操作成功"); - } +// @Override +// public R saveRetentionList(WarehouseRetentionRecordDTO warehouseRetentionRecordDTO) { +// BasicdataWarehouseEntity myCurrentWarehouse = warehouseClient.getMyCurrentWarehouse(); +// if (Func.isEmpty(myCurrentWarehouse)){ +// return null; +// } +// List warehouseRetentionScanDTOS = warehouseRetentionRecordDTO.getWarehouseRetentionScanDTOS(); +// if (Func.isEmpty(warehouseRetentionScanDTOS)){ +// log.error("############用户提交空滞留列表"); +// return Resp.scanFail("操作失败","无滞留包件信息"); +// } +// BladeUser user = AuthUtil.getUser(); +// //TODO 保存车次数据还需要处理 +// WarehouseRetentionRecordEntity warehouseRetentionRecordEntity = new WarehouseRetentionRecordEntity(); +// warehouseRetentionRecordEntity.setTaskId(warehouseRetentionRecordDTO.getDeliveryId()); +// warehouseRetentionRecordEntity.setRemark(warehouseRetentionRecordDTO.getRemark()); +// warehouseRetentionRecordEntity.setRetentionCarNo(warehouseRetentionRecordDTO.getTrainNumber()); +// warehouseRetentionRecordEntity.setRetentionCarId(warehouseRetentionRecordDTO.getLoadingId()); +// warehouseRetentionRecordEntity.setRetentionWarehouseId(myCurrentWarehouse.getId()); +// warehouseRetentionRecordEntity.setRetentionWarehouseName(myCurrentWarehouse.getName()); +// warehouseRetentionRecordEntity.setRetentionWarehouseName(myCurrentWarehouse.getName()); +// warehouseRetentionRecordEntity.setRetentionCreatedUserId(user.getUserId()); +// warehouseRetentionRecordEntity.setRetentionCreatedUserName(user.getUserName()); +// retentionRecordService.save(warehouseRetentionRecordEntity); +// warehouseRetentionScanDTOS.forEach(r->{ +// r.setRetentionScanTime(new Date()); +// r.setRetentionScanUserId(user.getUserId()); +// r.setRetentionScanUsername(user.getUserName()); +// r.setDeliveryId(warehouseRetentionRecordDTO.getDeliveryId()); +// r.setRefId(warehouseRetentionRecordEntity.getId()); +// this.save(Func.copy(r,WarehouseRetentionScanEntity.class)); +// }); +// return Resp.scanSuccess("操作成功","操作成功"); +// } } From a0baa36b72a159b63b3c983664ad91c9fa1be787 Mon Sep 17 00:00:00 2001 From: zhenghaoyu Date: Tue, 7 Nov 2023 22:38:28 +0800 Subject: [PATCH 16/36] =?UTF-8?q?1.=E5=B9=B2=E7=BA=BF=E9=83=A8=E5=88=86?= =?UTF-8?q?=E6=8F=90=E4=BA=A4?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../common/constant/CodeNumConstant.java | 1 + .../common/constant/DictBizConstant.java | 5 + .../logpm/trunkline/dto/BillladingDTO.java | 9 ++ .../entity/TrunklineBillladingEntity.java | 16 ++- .../entity/TrunklineBillladingLineEntity.java | 6 + .../TrunklineBillladingWaybillEntity.java | 9 +- .../vo/TrunklineBillladingLineVO.java | 2 + .../impl/BasicdataCodeServiceImpl.java | 29 ++++ .../controller/BillladingController.java | 131 ++++++++++++++++++ .../service/ITrunklineBillladingService.java | 1 + .../impl/TrunklineBillladingServiceImpl.java | 78 ++++++++++- 11 files changed, 278 insertions(+), 9 deletions(-) diff --git a/blade-biz-common/src/main/java/org/springblade/common/constant/CodeNumConstant.java b/blade-biz-common/src/main/java/org/springblade/common/constant/CodeNumConstant.java index c494a2990..eef45456c 100644 --- a/blade-biz-common/src/main/java/org/springblade/common/constant/CodeNumConstant.java +++ b/blade-biz-common/src/main/java/org/springblade/common/constant/CodeNumConstant.java @@ -12,5 +12,6 @@ public class CodeNumConstant { public final static int SHELF = 8;//货架号 public final static int PSKH = 9;//配送客户号 public final static int ABNORMAL_ORDER = 10;//异常工单号 + public final static int TRUNKLINEBILLLADING = 11;//干线提货单号 } diff --git a/blade-biz-common/src/main/java/org/springblade/common/constant/DictBizConstant.java b/blade-biz-common/src/main/java/org/springblade/common/constant/DictBizConstant.java index 8617c95df..b9b7067c4 100644 --- a/blade-biz-common/src/main/java/org/springblade/common/constant/DictBizConstant.java +++ b/blade-biz-common/src/main/java/org/springblade/common/constant/DictBizConstant.java @@ -106,4 +106,9 @@ public class DictBizConstant { public static final String WAREHOUSE_QUEST_STATUS = "warehouse_quest_status"; //盘点任务 // --------------2023-11-04 --------------------- public static final String WAREHOUSE_RETENTION_TYPE = "warehouse_retention_type"; //滞留类型 + + + //---------------2023-11-07--------------------- + public static final String BILLLADING_CHARGE_TYPE = "billlading_charge_type"; //提货单计费方式 + } diff --git a/blade-service-api/logpm-trunkline-api/src/main/java/com/logpm/trunkline/dto/BillladingDTO.java b/blade-service-api/logpm-trunkline-api/src/main/java/com/logpm/trunkline/dto/BillladingDTO.java index affb80396..adfd24771 100644 --- a/blade-service-api/logpm-trunkline-api/src/main/java/com/logpm/trunkline/dto/BillladingDTO.java +++ b/blade-service-api/logpm-trunkline-api/src/main/java/com/logpm/trunkline/dto/BillladingDTO.java @@ -1,12 +1,21 @@ package com.logpm.trunkline.dto; import com.logpm.trunkline.entity.TrunklineBillladingEntity; +import com.logpm.trunkline.vo.TrunklineBillladingLineVO; +import com.logpm.trunkline.vo.TrunklineBillladingWaybillVO; import lombok.Data; +import java.util.ArrayList; +import java.util.List; + @Data public class BillladingDTO extends TrunklineBillladingEntity { private Integer pageNum; private Integer pageSize; + private List billladingLineList = new ArrayList<>(); + + private List billladingWaybillList = new ArrayList<>(); + } diff --git a/blade-service-api/logpm-trunkline-api/src/main/java/com/logpm/trunkline/entity/TrunklineBillladingEntity.java b/blade-service-api/logpm-trunkline-api/src/main/java/com/logpm/trunkline/entity/TrunklineBillladingEntity.java index 9f74fbb14..013b3087f 100644 --- a/blade-service-api/logpm-trunkline-api/src/main/java/com/logpm/trunkline/entity/TrunklineBillladingEntity.java +++ b/blade-service-api/logpm-trunkline-api/src/main/java/com/logpm/trunkline/entity/TrunklineBillladingEntity.java @@ -7,6 +7,7 @@ import lombok.Data; import lombok.EqualsAndHashCode; import org.springblade.core.tenant.mp.TenantEntity; +import java.math.BigDecimal; import java.util.Date; @Data @@ -62,28 +63,28 @@ public class TrunklineBillladingEntity extends TenantEntity { private String lineNameTitle ; /** 预计件数 */ @ApiModelProperty(name = "预计件数",notes = "") - private int planNum ; + private Integer planNum ; /** 预计重量 */ @ApiModelProperty(name = "预计重量",notes = "") - private Double planWeight ; + private BigDecimal planWeight ; /** 预计体积 */ @ApiModelProperty(name = "预计体积",notes = "") - private Double planVolume ; + private BigDecimal planVolume ; /** 实际件数 */ @ApiModelProperty(name = "实际件数",notes = "") private int realNum ; /** 实际重量 */ @ApiModelProperty(name = "实际重量",notes = "") - private Double realWeight ; + private BigDecimal realWeight ; /** 实际体积 */ @ApiModelProperty(name = "实际体积",notes = "") - private Double realVolume ; + private BigDecimal realVolume ; /** 计费模式 1按件 2按重量 3按体积 */ @ApiModelProperty(name = "计费模式 1按件 2按重量 3按体积",notes = "") private String chargeType ; /** 提货费用 */ @ApiModelProperty(name = "提货费用",notes = "") - private Double totalFee ; + private BigDecimal totalFee ; /** 提货单状态 1=未开始,2=提货中,3=已完成,4=已取消 */ @ApiModelProperty(name = "提货单状态 1=未开始,2=提货中,3=已完成,4=已取消",notes = "") private String billladingStatus ; @@ -102,5 +103,8 @@ public class TrunklineBillladingEntity extends TenantEntity { /** 结算人名称 */ @ApiModelProperty(name = "结算人名称",notes = "") private String settlementName ; + /** 创建人名称 */ + @ApiModelProperty(name = "创建人名称",notes = "") + private String createUserName ; } diff --git a/blade-service-api/logpm-trunkline-api/src/main/java/com/logpm/trunkline/entity/TrunklineBillladingLineEntity.java b/blade-service-api/logpm-trunkline-api/src/main/java/com/logpm/trunkline/entity/TrunklineBillladingLineEntity.java index c7b09f2e7..8c7490194 100644 --- a/blade-service-api/logpm-trunkline-api/src/main/java/com/logpm/trunkline/entity/TrunklineBillladingLineEntity.java +++ b/blade-service-api/logpm-trunkline-api/src/main/java/com/logpm/trunkline/entity/TrunklineBillladingLineEntity.java @@ -37,6 +37,12 @@ public class TrunklineBillladingLineEntity extends TenantEntity { /** 提货单id */ @ApiModelProperty(name = "提货单id",notes = "") private Long billladingId ; + /** 提货单id */ + @ApiModelProperty(name = "客户id",notes = "") + private Long clientId ; + /** 客户名称 */ + @ApiModelProperty(name = "客户名称",notes = "") + private String clientName ; /** 客户类型 1 工厂 2 商场 3装饰 4个人 */ @ApiModelProperty(name = "客户类型 1 工厂 2 商场 3装饰 4个人",notes = "") private String clientType ; diff --git a/blade-service-api/logpm-trunkline-api/src/main/java/com/logpm/trunkline/entity/TrunklineBillladingWaybillEntity.java b/blade-service-api/logpm-trunkline-api/src/main/java/com/logpm/trunkline/entity/TrunklineBillladingWaybillEntity.java index a4b2603e2..4e376567d 100644 --- a/blade-service-api/logpm-trunkline-api/src/main/java/com/logpm/trunkline/entity/TrunklineBillladingWaybillEntity.java +++ b/blade-service-api/logpm-trunkline-api/src/main/java/com/logpm/trunkline/entity/TrunklineBillladingWaybillEntity.java @@ -7,6 +7,8 @@ import lombok.Data; import lombok.EqualsAndHashCode; import org.springblade.core.tenant.mp.TenantEntity; +import java.math.BigDecimal; + @Data @TableName("logpm_trunkline_billlading_waybill") @ApiModel(value = "TrunklineBillladingWaybill对象", description = "提货运单关联表") @@ -28,6 +30,9 @@ public class TrunklineBillladingWaybillEntity extends TenantEntity { /** 仓库id */ @ApiModelProperty(name = "仓库id",notes = "") private Long warehouseId ; + /** 仓库名称 */ + @ApiModelProperty(name = "仓库名称",notes = "") + private Long warehouseName ; /** 提货单id */ @ApiModelProperty(name = "提货单id",notes = "") private Long billladingId ; @@ -42,10 +47,10 @@ public class TrunklineBillladingWaybillEntity extends TenantEntity { private Integer realNum ; /** 提货重量 */ @ApiModelProperty(name = "提货重量",notes = "") - private Double realWeight ; + private BigDecimal realWeight ; /** 提货体积 */ @ApiModelProperty(name = "提货体积",notes = "") - private Double realVolume ; + private BigDecimal realVolume ; } diff --git a/blade-service-api/logpm-trunkline-api/src/main/java/com/logpm/trunkline/vo/TrunklineBillladingLineVO.java b/blade-service-api/logpm-trunkline-api/src/main/java/com/logpm/trunkline/vo/TrunklineBillladingLineVO.java index c838d6de1..12037ef07 100644 --- a/blade-service-api/logpm-trunkline-api/src/main/java/com/logpm/trunkline/vo/TrunklineBillladingLineVO.java +++ b/blade-service-api/logpm-trunkline-api/src/main/java/com/logpm/trunkline/vo/TrunklineBillladingLineVO.java @@ -8,4 +8,6 @@ public class TrunklineBillladingLineVO extends TrunklineBillladingLineEntity { + + } diff --git a/blade-service/logpm-basicdata/src/main/java/com/logpm/basicdata/service/impl/BasicdataCodeServiceImpl.java b/blade-service/logpm-basicdata/src/main/java/com/logpm/basicdata/service/impl/BasicdataCodeServiceImpl.java index 1414f6784..b9f2788cd 100644 --- a/blade-service/logpm-basicdata/src/main/java/com/logpm/basicdata/service/impl/BasicdataCodeServiceImpl.java +++ b/blade-service/logpm-basicdata/src/main/java/com/logpm/basicdata/service/impl/BasicdataCodeServiceImpl.java @@ -72,12 +72,41 @@ public class BasicdataCodeServiceImpl implements IBasicdataCodeService { case CodeNumConstant.ABNORMAL_ORDER: code = generateExOrderCode(type,warehouseCode,orderCode); break; + case CodeNumConstant.TRUNKLINEBILLLADING: + code = generateTrunklineBillladingCode(type,warehouseCode,orderCode); + break; default: log.info("##################getCodeByType: 暂不支持的编码类型 type={}", CodeDesEnum.getMes(type)); } return code; } + private String generateTrunklineBillladingCode(Integer type, String warehouseCode, String orderCode) { + if(!StringUtil.hasLength(warehouseCode)){ + log.warn("############generateTrunklineBillladingCode: 仓库编码为空warehouseCode={}",warehouseCode); + return null; + } + //获得年月日短字符串 + String dateShort = CommonUtil.dateToStringShort(new Date()); + + String key = warehouseCode+"TH"+":"+dateShort; + + //获得序号 + Boolean exists = bladeRedis.exists(key); + Long incr = null; + if(exists){ + incr = bladeRedis.incr(key); + }else{ + String value = dateShort+"00001"; + incr = Long.parseLong(value); + bladeRedis.set(key,incr); + bladeRedis.expireAt(key,CommonUtil.getMonthDayEnd()); + + } + + return warehouseCode+"TH"+incr; + } + private String generateExOrderCode(Integer type, String warehouseCode, String orderCode) { if(!StringUtil.hasLength(warehouseCode)){ log.warn("############generateTraysCode: 仓库编码为空warehouseCode={}",warehouseCode); diff --git a/blade-service/logpm-trunkline/src/main/java/com/logpm/trunkline/controller/BillladingController.java b/blade-service/logpm-trunkline/src/main/java/com/logpm/trunkline/controller/BillladingController.java index 4b89ad954..e00c16869 100644 --- a/blade-service/logpm-trunkline/src/main/java/com/logpm/trunkline/controller/BillladingController.java +++ b/blade-service/logpm-trunkline/src/main/java/com/logpm/trunkline/controller/BillladingController.java @@ -11,10 +11,16 @@ import io.swagger.annotations.Api; import io.swagger.annotations.ApiOperation; import lombok.AllArgsConstructor; import lombok.extern.slf4j.Slf4j; +import org.springblade.common.constant.DictBizConstant; import org.springblade.common.exception.CustomerException; import org.springblade.core.tool.api.R; +import org.springblade.core.tool.utils.StringUtil; +import org.springblade.system.cache.DictBizCache; +import org.springblade.system.entity.DictBiz; import org.springframework.web.bind.annotation.*; +import java.math.BigDecimal; +import java.util.List; import java.util.Objects; @Slf4j @@ -57,5 +63,130 @@ public class BillladingController { } } + @ResponseBody + @PostMapping("/findChargeTypeList") + @ApiOperationSupport(order = 1) + @ApiOperation(value = "查询所有计费方式", notes = "传入waybillDTO") + public R findChargeTypeList(@RequestBody BillladingDTO billladingDTO) { + String method = "############findChargeTypeList: "; + log.info(method + "请求参数{}", billladingDTO); + try{ + List list = DictBizCache.getList(DictBizConstant.BILLLADING_CHARGE_TYPE); + return R.data(list); + }catch (CustomerException e){ + log.error(e.message,e); + return R.fail(e.code,e.message); + }catch (Exception e){ + log.error("############sendOrders: 系统异常",e); + return R.fail(500,"############sendOrders: 系统异常"); + } + } + + + @ResponseBody + @PostMapping("/saveNew") + @ApiOperationSupport(order = 1) + @ApiOperation(value = "新增提货单", notes = "传入waybillDTO") + public R saveNew(@RequestBody BillladingDTO billladingDTO) { + String method = "############saveNew: "; + log.info(method + "请求参数{}", billladingDTO); + Long driverId = billladingDTO.getDriverId(); + String driverName = billladingDTO.getDriverName(); + String driverPhone = billladingDTO.getDriverPhone(); + String carNumber = billladingDTO.getCarNumber(); + String carrierName = billladingDTO.getCarrierName(); + String chargeType = billladingDTO.getChargeType(); + Integer planNum = billladingDTO.getPlanNum(); + BigDecimal planWeight = billladingDTO.getPlanWeight(); + BigDecimal planVolume = billladingDTO.getPlanVolume(); + + try{ + + //当前登录人选择的仓库 + BasicdataWarehouseEntity myCurrentWarehouse = warehouseClient.getMyCurrentWarehouse(); + if(Objects.isNull(myCurrentWarehouse)){ + log.warn(method+"仓库信息为空 myCurrentWarehouse={}",myCurrentWarehouse); + return R.fail(403,"仓库信息为空"); + } + billladingDTO.setWarehouseId(myCurrentWarehouse.getId()); + billladingDTO.setWarehouseName(myCurrentWarehouse.getName()); + + if(Objects.isNull(driverId)){ + log.warn(method+"司机id不能为空 driverId={}",driverId); + return R.fail(405,"司机id不能为空"); + } + if(StringUtil.isBlank(driverName)){ + log.warn(method+"司机名称不能为空 driverName={}",driverName); + return R.fail(405,"司机名称不能为空"); + } + if(StringUtil.isBlank(driverPhone)){ + log.warn(method+"司机电话不能为空 driverPhone={}",driverPhone); + return R.fail(405,"司机电话不能为空"); + } + if(StringUtil.isBlank(carNumber)){ + log.warn(method+"车牌不能为空 carNumber={}",carNumber); + return R.fail(405,"车牌不能为空"); + } + if(StringUtil.isBlank(carrierName)){ + log.warn(method+"承运商不能为空 carrierName={}",carrierName); + return R.fail(405,"承运商不能为空"); + } + if(StringUtil.isBlank(chargeType)){ + log.warn(method+"计费模式不能为空 chargeType={}",chargeType); + return R.fail(405,"计费模式不能为空"); + } + if(Objects.isNull(planNum)){ + log.warn(method+"预计件数不能为空 planNum={}",planNum); + return R.fail(405,"预计件数不能为空"); + } + if(Objects.isNull(planWeight)){ + log.warn(method+"预计重量不能为空 planWeight={}",planWeight); + return R.fail(405,"预计重量不能为空"); + } + if(Objects.isNull(planVolume)){ + log.warn(method+"预计体积不能为空 planVolume={}",planVolume); + return R.fail(405,"预计体积不能为空"); + } + + trunklineBillladingService.saveNew(billladingDTO,myCurrentWarehouse.getCode()); + return R.success("新增成功"); + }catch (CustomerException e){ + log.error(e.message,e); + return R.fail(e.code,e.message); + }catch (Exception e){ + log.error("############sendOrders: 系统异常",e); + return R.fail(500,"############sendOrders: 系统异常"); + } + } + + @ResponseBody + @PostMapping("/pageWaybillList") + @ApiOperationSupport(order = 1) + @ApiOperation(value = "分页查询运单", notes = "传入waybillDTO") + public R pageWaybillList(@RequestBody BillladingDTO billladingDTO) { + String method = "############findChargeTypeList: "; + log.info(method + "请求参数{}", billladingDTO); + try{ + //当前登录人选择的仓库 + BasicdataWarehouseEntity myCurrentWarehouse = warehouseClient.getMyCurrentWarehouse(); + if(Objects.isNull(myCurrentWarehouse)){ + log.warn(method+"仓库信息为空 myCurrentWarehouse={}",myCurrentWarehouse); + return R.fail(403,"仓库信息为空"); + } + billladingDTO.setWarehouseId(myCurrentWarehouse.getId()); + + IPage pages = trunklineBillladingService.pageList(billladingDTO); + + return R.data(pages); + }catch (CustomerException e){ + log.error(e.message,e); + return R.fail(e.code,e.message); + }catch (Exception e){ + log.error("############sendOrders: 系统异常",e); + return R.fail(500,"############sendOrders: 系统异常"); + } + } + } + diff --git a/blade-service/logpm-trunkline/src/main/java/com/logpm/trunkline/service/ITrunklineBillladingService.java b/blade-service/logpm-trunkline/src/main/java/com/logpm/trunkline/service/ITrunklineBillladingService.java index 468e57250..cd5396d7e 100644 --- a/blade-service/logpm-trunkline/src/main/java/com/logpm/trunkline/service/ITrunklineBillladingService.java +++ b/blade-service/logpm-trunkline/src/main/java/com/logpm/trunkline/service/ITrunklineBillladingService.java @@ -10,4 +10,5 @@ public interface ITrunklineBillladingService extends BaseService pageList(BillladingDTO billladingDTO); + void saveNew(BillladingDTO billladingDTO,String warehouseCode); } diff --git a/blade-service/logpm-trunkline/src/main/java/com/logpm/trunkline/service/impl/TrunklineBillladingServiceImpl.java b/blade-service/logpm-trunkline/src/main/java/com/logpm/trunkline/service/impl/TrunklineBillladingServiceImpl.java index 95f0ac8db..ea4e903e8 100644 --- a/blade-service/logpm-trunkline/src/main/java/com/logpm/trunkline/service/impl/TrunklineBillladingServiceImpl.java +++ b/blade-service/logpm-trunkline/src/main/java/com/logpm/trunkline/service/impl/TrunklineBillladingServiceImpl.java @@ -2,21 +2,44 @@ package com.logpm.trunkline.service.impl; import com.baomidou.mybatisplus.core.metadata.IPage; import com.baomidou.mybatisplus.extension.plugins.pagination.Page; +import com.logpm.basicdata.feign.IBasicdataCodeClient; +import com.logpm.basicdata.feign.IBasicdataWarehouseClient; import com.logpm.trunkline.dto.BillladingDTO; import com.logpm.trunkline.entity.TrunklineBillladingEntity; +import com.logpm.trunkline.entity.TrunklineBillladingLineEntity; +import com.logpm.trunkline.entity.TrunklineBillladingWaybillEntity; import com.logpm.trunkline.mapper.TrunklineBillladingMapper; +import com.logpm.trunkline.service.ITrunklineBillladingLineService; import com.logpm.trunkline.service.ITrunklineBillladingService; +import com.logpm.trunkline.service.ITrunklineBillladingWaybillService; +import com.logpm.trunkline.vo.TrunklineBillladingLineVO; import com.logpm.trunkline.vo.TrunklineBillladingVO; +import com.logpm.trunkline.vo.TrunklineBillladingWaybillVO; import lombok.AllArgsConstructor; import lombok.extern.slf4j.Slf4j; import org.springblade.core.mp.base.BaseServiceImpl; +import org.springblade.core.secure.utils.AuthUtil; +import org.springblade.core.tool.utils.BeanUtil; +import org.springblade.core.tool.utils.StringUtil; import org.springframework.stereotype.Service; +import java.math.BigDecimal; +import java.util.Comparator; +import java.util.List; +import java.util.stream.Collectors; + @Slf4j @Service @AllArgsConstructor public class TrunklineBillladingServiceImpl extends BaseServiceImpl implements ITrunklineBillladingService { + private final ITrunklineBillladingLineService billladingLineService; + private final ITrunklineBillladingWaybillService billladingWaybillService; + + + private final IBasicdataWarehouseClient basicdataWarehouseClient; + private final IBasicdataCodeClient basicdataCodeClient; + @Override public IPage pageList(BillladingDTO billladingDTO) { IPage page = new Page<>(); @@ -25,6 +48,59 @@ public class TrunklineBillladingServiceImpl extends BaseServiceImpl pageList = baseMapper.pageList(page,billladingDTO); - return null; + return pageList; + } + + @Override + public void saveNew(BillladingDTO billladingDTO,String warehouseCode) { + log.info("###############saveNew: billladingDTO={}",billladingDTO); + + Long warehouseId = billladingDTO.getWarehouseId(); + String warehouseName = billladingDTO.getWarehouseName(); + String billladingCode = basicdataCodeClient.getCodeByType(11, warehouseCode, null); + + TrunklineBillladingEntity trunklineBillladingEntity = new TrunklineBillladingEntity(); + BeanUtil.copy(billladingDTO,trunklineBillladingEntity); + trunklineBillladingEntity.setBillladingStatus("1"); + trunklineBillladingEntity.setCreateUserName(AuthUtil.getUserName()); + trunklineBillladingEntity.setBillladingCode(billladingCode); + save(trunklineBillladingEntity); + Long billladingId = trunklineBillladingEntity.getId(); + //保存线路节点 + List billladingLineList = billladingDTO.getBillladingLineList(); + billladingLineList = billladingLineList.stream() + .sorted(Comparator.comparing(TrunklineBillladingLineVO::getSort)) + .collect(Collectors.toList()); + + String lineTitle = ""; + for (TrunklineBillladingLineVO billladingLineVO:billladingLineList){ + String clientName = billladingLineVO.getClientName(); + if(StringUtil.isBlank(lineTitle)){ + lineTitle = lineTitle + clientName; + }else{ + lineTitle = lineTitle + "-->" + clientName; + } + TrunklineBillladingLineEntity billladingLineEntity = new TrunklineBillladingLineEntity(); + BeanUtil.copy(billladingLineVO,billladingLineEntity); + billladingLineEntity.setBillladingId(billladingId); + billladingLineEntity.setWarehouseId(warehouseId); + billladingLineEntity.setWarehouseName(warehouseName); + billladingLineService.save(billladingLineEntity); + } + trunklineBillladingEntity.setLineNameTitle(lineTitle); + updateById(trunklineBillladingEntity); + + //保存提货运单 + List billladingWaybillList = billladingDTO.getBillladingWaybillList(); + for (TrunklineBillladingWaybillVO billladingWaybillVO:billladingWaybillList){ + TrunklineBillladingWaybillEntity billladingWaybillEntity = new TrunklineBillladingWaybillEntity(); + BeanUtil.copy(billladingWaybillVO,billladingWaybillEntity); + billladingWaybillEntity.setBillladingId(billladingId); + billladingWaybillEntity.setBilladingCode(trunklineBillladingEntity.getBillladingCode()); + billladingWaybillEntity.setRealNum(0); + billladingWaybillEntity.setRealWeight(BigDecimal.ZERO); + billladingWaybillEntity.setRealVolume(BigDecimal.ZERO); + billladingWaybillService.save(billladingWaybillEntity); + } } } From 9e7134fb52ff7e5379111bd82e5f541b384ffa38 Mon Sep 17 00:00:00 2001 From: kilo Date: Tue, 7 Nov 2023 23:22:07 +0800 Subject: [PATCH 17/36] =?UTF-8?q?=E5=8F=B8=E6=9C=BA=E5=88=97=E8=A1=A8?= =?UTF-8?q?=E6=9F=A5=E8=AF=A2=E5=A2=9E=E5=8A=A0=E5=88=A4=E7=A9=BA?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../service/impl/BasicdataDriverArteryServiceImpl.java | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/blade-service/logpm-basicdata/src/main/java/com/logpm/basicdata/service/impl/BasicdataDriverArteryServiceImpl.java b/blade-service/logpm-basicdata/src/main/java/com/logpm/basicdata/service/impl/BasicdataDriverArteryServiceImpl.java index 275ca9a3c..8744633b7 100644 --- a/blade-service/logpm-basicdata/src/main/java/com/logpm/basicdata/service/impl/BasicdataDriverArteryServiceImpl.java +++ b/blade-service/logpm-basicdata/src/main/java/com/logpm/basicdata/service/impl/BasicdataDriverArteryServiceImpl.java @@ -119,7 +119,7 @@ public class BasicdataDriverArteryServiceImpl extends BaseServiceImpl basicdataDriverArteryVOS = new ArrayList<>(); List list = this.list(); - Stream basicdataDriverArteryEntityStream = list.stream().filter(l -> l.getWarehouseId().contains(myCurrentWarehouse.getId().toString())); + Stream basicdataDriverArteryEntityStream = list.stream().filter(l -> Func.isNotEmpty(l.getWarehouseId()) && l.getWarehouseId().contains(myCurrentWarehouse.getId().toString())); if (Func.isNotEmpty(basicdataDriverArteryEntityStream)){ basicdataDriverArteryEntityStream.forEach(l->{ BasicdataDriverArteryVO driverArteryVO = Func.copy(l, BasicdataDriverArteryVO.class); From dd1992ab1a96ed50f080be37003f16a3fd151349 Mon Sep 17 00:00:00 2001 From: "pref_mail@163.com" <123456> Date: Tue, 7 Nov 2023 23:33:32 +0800 Subject: [PATCH 18/36] =?UTF-8?q?1.=E5=AF=BB=E6=89=BE=E9=97=AE=E9=A2=981?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../service/impl/BasicdataDriverArteryServiceImpl.java | 6 +++++- 1 file changed, 5 insertions(+), 1 deletion(-) diff --git a/blade-service/logpm-basicdata/src/main/java/com/logpm/basicdata/service/impl/BasicdataDriverArteryServiceImpl.java b/blade-service/logpm-basicdata/src/main/java/com/logpm/basicdata/service/impl/BasicdataDriverArteryServiceImpl.java index 8744633b7..61dbe85bf 100644 --- a/blade-service/logpm-basicdata/src/main/java/com/logpm/basicdata/service/impl/BasicdataDriverArteryServiceImpl.java +++ b/blade-service/logpm-basicdata/src/main/java/com/logpm/basicdata/service/impl/BasicdataDriverArteryServiceImpl.java @@ -20,6 +20,7 @@ import com.baomidou.mybatisplus.core.conditions.Wrapper; import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper; import com.baomidou.mybatisplus.core.metadata.IPage; import com.baomidou.mybatisplus.core.toolkit.Wrappers; +import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl; import com.logpm.basic.entity.BasicDelineMiddleEntity; import com.logpm.basicdata.dto.BasicdataDriverArteryDTO; import com.logpm.basicdata.entity.*; @@ -114,11 +115,14 @@ public class BasicdataDriverArteryServiceImpl extends BaseServiceImpl getDriverList() { BasicdataWarehouseEntity myCurrentWarehouse = warehouseClient.getMyCurrentWarehouse(); if (Func.isEmpty(myCurrentWarehouse)){ - log.error("################无当前登录人仓库信息:{}",myCurrentWarehouse); + log.error("################getDriverList 无当前登录人仓库信息:{}",myCurrentWarehouse); return null; } + log.info("################ getDriverList 仓库信息:{}",myCurrentWarehouse); ArrayList basicdataDriverArteryVOS = new ArrayList<>(); List list = this.list(); + log.info("################getDriverList list:{}",list); + //Stream basicdataDriverArteryEntityStream = list.stream().filter(l -> l.getWarehouseId().contains(myCurrentWarehouse.getId().toString())); Stream basicdataDriverArteryEntityStream = list.stream().filter(l -> Func.isNotEmpty(l.getWarehouseId()) && l.getWarehouseId().contains(myCurrentWarehouse.getId().toString())); if (Func.isNotEmpty(basicdataDriverArteryEntityStream)){ basicdataDriverArteryEntityStream.forEach(l->{ From fc50cb99a65b2793d4d49f4d8a6a2b42a409e4cd Mon Sep 17 00:00:00 2001 From: caoyizhong <1270296080@qq.com> Date: Tue, 7 Nov 2023 23:37:48 +0800 Subject: [PATCH 19/36] =?UTF-8?q?=E6=B7=BB=E5=8A=A0=E8=BF=90=E5=8D=95?= =?UTF-8?q?=E5=AF=BC=E5=85=A5?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../DistributionStockArticleServiceImpl.java | 2 +- .../api/WarehouseTaskApiController.java | 95 ++++---- .../WarehouseWaybillController.java | 19 ++ .../excel/WarehouseWaybillExcel.java | 204 ++++++++++++++++++ .../warehouse/mapper/TaskQuestMapper.java | 4 +- .../warehouse/mapper/TaskQuestMapper.xml | 2 +- .../mapper/WarehouseWaybillMapper.java | 3 + .../mapper/WarehouseWaybillMapper.xml | 4 + .../warehouse/service/ITaskQuestService.java | 28 ++- .../service/IWarehouseWaybillService.java | 8 + .../service/impl/TaskQuestServiceImpl.java | 103 ++++----- .../impl/WarehouseWaybillServiceImpl.java | 60 +++++- 12 files changed, 423 insertions(+), 109 deletions(-) create mode 100644 blade-service/logpm-warehouse/src/main/java/com/logpm/warehouse/excel/WarehouseWaybillExcel.java 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 e2ce28127..76945b1b1 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 @@ -1215,7 +1215,7 @@ public class DistributionStockArticleServiceImpl extends BaseServiceImpl lambda = Wrappers.query().lambda() - .eq(DistributionStockArticleEntity::getAcceptWarehouseId,warehouseId).notIn(DistributionStockArticleEntity::getOrderStatus,str); + .eq(DistributionStockArticleEntity::getWarehouseId,warehouseId).notIn(DistributionStockArticleEntity::getOrderStatus,str); if (Func.isNotEmpty(code)){ lambda.eq(DistributionStockArticleEntity::getOrderCode,code); } diff --git a/blade-service/logpm-warehouse/src/main/java/com/logpm/warehouse/api/WarehouseTaskApiController.java b/blade-service/logpm-warehouse/src/main/java/com/logpm/warehouse/api/WarehouseTaskApiController.java index 578ffddc5..4dac1f33a 100644 --- a/blade-service/logpm-warehouse/src/main/java/com/logpm/warehouse/api/WarehouseTaskApiController.java +++ b/blade-service/logpm-warehouse/src/main/java/com/logpm/warehouse/api/WarehouseTaskApiController.java @@ -26,6 +26,7 @@ import org.springblade.core.tool.utils.StringUtil; import org.springframework.web.bind.annotation.*; import java.util.*; +import java.util.concurrent.atomic.AtomicReference; @Log4j2 @@ -91,8 +92,8 @@ public class WarehouseTaskApiController { @GetMapping("/contractQuestDetail") @ApiOperationSupport(order = 1) @ApiOperation(value = "合同号列表", notes = "code,type") - public R contractQuestDetail(TaskSearchDTO taskSearchDTO) { - R r = taskQuestService.contractQuestDetail(taskSearchDTO); + public R contractQuestDetail(Query query,TaskSearchDTO taskSearchDTO) { + R r = taskQuestService.contractQuestDetail(Condition.getPage(query),taskSearchDTO); return r; } @@ -104,7 +105,7 @@ public class WarehouseTaskApiController { @PostMapping("/queryContract") @ApiOperationSupport(order = 1) @ApiOperation(value = "合同号列表", notes = "code,type") - public R queryContract(@RequestBody TaskSearchDTO taskSearchDTO) { + public R queryContract(@RequestBody TaskSearchDTO taskSearchDTO,Query query) { String method = "###########queryContract: "; BasicdataWarehouseEntity myCurrentWarehouse = warehouseClient.getMyCurrentWarehouse(); if (Func.isEmpty(myCurrentWarehouse)){ @@ -112,7 +113,7 @@ public class WarehouseTaskApiController { return R.fail(403,"仓库信息为空"); } taskSearchDTO.setWarehouseId(myCurrentWarehouse.getId()); - R r= taskQuestService.queryContract(taskSearchDTO); + R r= taskQuestService.queryContract(Condition.getPage(query), taskSearchDTO); return r; } @@ -206,7 +207,7 @@ public class WarehouseTaskApiController { @GetMapping("/allocationDetailByPackage") @ApiOperationSupport(order = 1) @ApiOperation(value = "库位明细(定制品)", notes = "code,type") - public R allocationDetailByPackage(TaskSearchDTO taskSearchDTO) { + public R allocationDetailByPackage(Query query,TaskSearchDTO taskSearchDTO) { String method = "###########allocationDetailByPackage: "; log.info(method+"库位明细(定制品) 参数:{}",taskSearchDTO); Long questId = taskSearchDTO.getQuestId();//任务id @@ -230,18 +231,20 @@ public class WarehouseTaskApiController { return R.fail(403,"库位id为空"); } - List list = taskQuestService.allocationDetailByPackage(taskSearchDTO); + IPage list = taskQuestService.allocationDetailByPackage(Condition.getPage(query),taskSearchDTO); String allocationCode = ""; Integer allNUm = 0; Integer finishNUm = 0; - for (QuestDetailEntity entity:list){ - Integer stockNum = entity.getStockNum(); - Integer questStatus = entity.getQuestStatus(); - String positionCode = entity.getPositionCode(); - allNUm = allNUm + stockNum; - allocationCode = positionCode; - if(questStatus == 1){ - finishNUm = finishNUm + stockNum; + if(ObjectUtils.isNotNull(list)){ + for (QuestDetailEntity entity: list.getRecords()){ + Integer stockNum = entity.getStockNum(); + Integer questStatus = entity.getQuestStatus(); + String positionCode = entity.getPositionCode(); + allNUm = allNUm + stockNum; + allocationCode = positionCode; + if(questStatus == 1){ + finishNUm = finishNUm + stockNum; + } } } @@ -249,7 +252,7 @@ public class WarehouseTaskApiController { map.put("allocationCode",allocationCode); map.put("allNum",allNUm); map.put("finishNum",finishNUm); - map.put("list",list); + map.put("list", ObjectUtils.isNotNull(list.getRecords()) ? list.getRecords() : null); return R.data(map); }catch (CustomerException e){ log.warn(e.message); @@ -267,7 +270,7 @@ public class WarehouseTaskApiController { @GetMapping("/allocationDetailByZero") @ApiOperationSupport(order = 1) @ApiOperation(value = "库位明细(零担)", notes = "code,type") - public R allocationDetailByZero(TaskSearchDTO taskSearchDTO) { + public R allocationDetailByZero(Query query,TaskSearchDTO taskSearchDTO) { String method = "###########allocationDetailByZero: "; log.info(method+"库位明细(零担) 参数:{}",taskSearchDTO); Long questId = taskSearchDTO.getQuestId();//任务id @@ -291,26 +294,28 @@ public class WarehouseTaskApiController { return R.fail(403,"库位id为空"); } - List list = taskQuestService.allocationDetailByZero(taskSearchDTO); - String allocationCode = ""; - Integer allNUm = 0; - Integer finishNUm = 0; - for (QuestDetailEntity entity:list){ - Integer stockNum = entity.getStockNum(); - Integer questStatus = entity.getQuestStatus(); - String positionCode = entity.getPositionCode(); - allNUm = allNUm + stockNum; - allocationCode = positionCode; - if(questStatus == 1){ - finishNUm = finishNUm + stockNum; - } + IPage list = taskQuestService.allocationDetailByZero(Condition.getPage(query),taskSearchDTO); + AtomicReference allocationCode = new AtomicReference<>(""); + AtomicReference allNUm = new AtomicReference<>(0); + AtomicReference finishNUm = new AtomicReference<>(0); + if(ObjectUtils.isNotNull(list)){ + list.getRecords().stream().forEach(entity ->{ + Integer stockNum = entity.getStockNum(); + Integer questStatus = entity.getQuestStatus(); + String positionCode = entity.getPositionCode(); + allNUm.set(allNUm.get() + stockNum); + allocationCode.set(positionCode); + if(questStatus == 1){ + finishNUm.set(finishNUm.get() + stockNum); + } + }); } Map map = new HashMap<>(); - map.put("allocationCode",allocationCode); - map.put("allNum",allNUm); - map.put("finishNum",finishNUm); - map.put("list",list); + map.put("allocationCode",allocationCode.get()); + map.put("allNum",allNUm.get()); + map.put("finishNum",finishNUm.get()); + map.put("list", ObjectUtils.isNotNull(list) ? list.getRecords() : null ); return R.data(map); }catch (CustomerException e){ log.warn(e.message); @@ -327,7 +332,7 @@ public class WarehouseTaskApiController { @GetMapping("/allocationDetailByStock") @ApiOperationSupport(order = 1) @ApiOperation(value = "库位明细(库存品)", notes = "code,type") - public R allocationDetailByStock(TaskSearchDTO taskSearchDTO) { + public R allocationDetailByStock(Query query,TaskSearchDTO taskSearchDTO) { String method = "###########allocationDetailByStock: "; log.info(method+"库位明细(库存品) 参数:{}",taskSearchDTO); Long questId = taskSearchDTO.getQuestId();//任务id @@ -351,18 +356,20 @@ public class WarehouseTaskApiController { return R.fail(403,"库位id为空"); } - List list = taskQuestService.allocationDetailByStock(taskSearchDTO); + IPage list = taskQuestService.allocationDetailByStock(Condition.getPage(query),taskSearchDTO); String allocationCode = ""; Integer allNUm = 0; Integer finishNUm = 0; - for (QuestDetailEntity entity:list){ - Integer stockNum = entity.getStockNum(); - Integer questStatus = entity.getQuestStatus(); - String positionCode = entity.getPositionCode(); - allNUm = allNUm + stockNum; - allocationCode = positionCode; - if(questStatus == 1){ - finishNUm = finishNUm + stockNum; + if(ObjectUtils.isNotNull(list)){ + for (QuestDetailEntity entity : list.getRecords()){ + Integer stockNum = entity.getStockNum(); + Integer questStatus = entity.getQuestStatus(); + String positionCode = entity.getPositionCode(); + allNUm = allNUm + stockNum; + allocationCode = positionCode; + if(questStatus == 1){ + finishNUm = finishNUm + stockNum; + } } } @@ -370,7 +377,7 @@ public class WarehouseTaskApiController { map.put("allocationCode",allocationCode); map.put("allNum",allNUm); map.put("finishNum",finishNUm); - map.put("list",list); + map.put("list", ObjectUtils.isNotNull(list) ? list.getRecords() : null); return R.data(map); }catch (CustomerException e){ log.warn(e.message); diff --git a/blade-service/logpm-warehouse/src/main/java/com/logpm/warehouse/controller/WarehouseWaybillController.java b/blade-service/logpm-warehouse/src/main/java/com/logpm/warehouse/controller/WarehouseWaybillController.java index d85767413..77c17b856 100644 --- a/blade-service/logpm-warehouse/src/main/java/com/logpm/warehouse/controller/WarehouseWaybillController.java +++ b/blade-service/logpm-warehouse/src/main/java/com/logpm/warehouse/controller/WarehouseWaybillController.java @@ -25,7 +25,10 @@ import com.logpm.distribution.entity.DistributionStockArticleEntity; import com.logpm.distribution.feign.IDistributionStockArticleClient; import com.logpm.warehouse.dto.ProductDTO; import com.logpm.warehouse.dto.SplitOrderDTO; +import com.logpm.warehouse.entity.WarehouseWarehousingDetailEntity; import com.logpm.warehouse.entity.WarehouseWaybillEntity; +import com.logpm.warehouse.excel.WarehouseWarehousingDetailExcel; +import com.logpm.warehouse.excel.WarehouseWaybillExcel; import com.logpm.warehouse.service.IWarehouseWaybillService; import com.logpm.warehouse.vo.WarehouseWaybillVO; import com.logpm.warehouse.wrapper.WarehouseWaybillWrapper; @@ -36,14 +39,19 @@ import lombok.AllArgsConstructor; import lombok.extern.log4j.Log4j2; import org.springblade.common.exception.CustomerException; import org.springblade.core.boot.ctrl.BladeController; +import org.springblade.core.excel.util.ExcelUtil; import org.springblade.core.mp.support.Condition; import org.springblade.core.mp.support.Query; +import org.springblade.core.secure.BladeUser; import org.springblade.core.tool.api.R; +import org.springblade.core.tool.constant.BladeConstant; +import org.springblade.core.tool.utils.DateUtil; import org.springblade.core.tool.utils.Func; import org.springblade.system.feign.IDictBizClient; import org.springframework.web.bind.annotation.*; import springfox.documentation.annotations.ApiIgnore; +import javax.servlet.http.HttpServletResponse; import javax.validation.Valid; import java.util.List; import java.util.Map; @@ -230,5 +238,16 @@ public class WarehouseWaybillController extends BladeController { } } + /** + * 导出数据 + */ + @GetMapping("/export-exportWarehouseWaybill") + @ApiOperationSupport(order = 9) + @ApiOperation(value = "导出数据", notes = "传入warehouseWarehousingDetail") + public void exportWarehouseWaybill(@ApiIgnore @RequestParam Map warehouseWaybillEntity, BladeUser bladeUser, HttpServletResponse response) { + + List list = warehouseWaybillService.exportWarehouseWarehousingDetail(warehouseWaybillEntity); + ExcelUtil.export(response, "在库运单" + DateUtil.time(), "在库运单数据表", list, WarehouseWaybillExcel.class); + } } diff --git a/blade-service/logpm-warehouse/src/main/java/com/logpm/warehouse/excel/WarehouseWaybillExcel.java b/blade-service/logpm-warehouse/src/main/java/com/logpm/warehouse/excel/WarehouseWaybillExcel.java new file mode 100644 index 000000000..3a92ad9fa --- /dev/null +++ b/blade-service/logpm-warehouse/src/main/java/com/logpm/warehouse/excel/WarehouseWaybillExcel.java @@ -0,0 +1,204 @@ +package com.logpm.warehouse.excel; + +import com.alibaba.excel.annotation.ExcelProperty; +import com.alibaba.excel.annotation.write.style.ColumnWidth; +import lombok.Data; + +import java.io.Serializable; +@Data +public class WarehouseWaybillExcel implements Serializable { + + private static final long serialVersionUID = 1L; + + /** + * 租户号 + */ + @ColumnWidth(20) + @ExcelProperty("运单号") + private String waybillNo; + /** + * 租户号 + */ + @ColumnWidth(20) + @ExcelProperty("订单号") + private String orderNo; + /** + * 租户号 + */ + @ColumnWidth(20) + @ExcelProperty("目的仓") + private String destinationWarehouseName; + /** + * 租户号 + */ + @ColumnWidth(20) + @ExcelProperty("发站仓") + private String departureWarehouseName; + /** + * 租户号 + */ + @ColumnWidth(20) + @ExcelProperty("客户车次") + private String customerTrain; + /** + * 租户号 + */ + @ColumnWidth(20) + @ExcelProperty("品牌") + private String brand; + /** + * 租户号 + */ + @ColumnWidth(20) + @ExcelProperty("发货单位") + private String shipper; + /** + * 租户号 + */ + @ColumnWidth(20) + @ExcelProperty("发货人") + private String shipperName; + /** + * 租户号 + */ + @ColumnWidth(20) + @ExcelProperty("发货方手机号") + private String shipperMobile; + + /** + * 租户号 + */ + @ColumnWidth(20) + @ExcelProperty("发货方地址") + private String shipperAddress; + /** + * 租户号 + */ + @ColumnWidth(20) + @ExcelProperty("收货单位") + private String consignee; + /** + * 租户号 + */ + @ColumnWidth(20) + @ExcelProperty("收货人") + private String consigneeName; + /** + * 租户号 + */ + @ColumnWidth(20) + @ExcelProperty("收货方手机号") + private String consigneeMobile; + /** + * 租户号 + */ + @ColumnWidth(20) + @ExcelProperty("收货方地址") + private String consigneeAddress; + /** + * 租户号 + */ + @ColumnWidth(20) + @ExcelProperty("到站") + private String destination; + /** + * 租户号 + */ + @ColumnWidth(20) + @ExcelProperty("货物名称") + private String goodsName; + /** + * 租户号 + */ + @ColumnWidth(20) + @ExcelProperty("总数") + private String totalCount; + /** + * 租户号 + */ + @ColumnWidth(20) + @ExcelProperty("在库数") + private String stockCount; + + /** + * 租户号 + */ + @ColumnWidth(20) + @ExcelProperty("总重量") + private String totalWeight; + /** + * 租户号 + */ + @ColumnWidth(20) + @ExcelProperty("总体积") + private String totalVolume; + /** + * 租户号 + */ + @ColumnWidth(20) + @ExcelProperty("送货方式") + private String deliveryMethod; + /** + * 租户号 + */ + @ColumnWidth(20) + @ExcelProperty("紧急度") + private String urgency; + /** + * 租户号 + */ + @ColumnWidth(20) + @ExcelProperty("回单数") + private String receiptCount; + /** + * 租户号 + */ + @ColumnWidth(20) + @ExcelProperty("回单要求") + private String receiptRequirement; + /** + * 租户号 + */ + @ColumnWidth(20) + @ExcelProperty("经办人") + private String agent; + /** + * 租户号 + */ + @ColumnWidth(20) + @ExcelProperty("制单时间") + private String documentMakingTime; + /** + * 租户号 + */ + @ColumnWidth(20) + @ExcelProperty("备注") + private String remark; + /** + * 租户号 + */ + @ColumnWidth(20) + @ExcelProperty("批次号") + private String batchNo; + /** + * 租户号 + */ + @ColumnWidth(20) + @ExcelProperty("服务类型") + private String serviceTypeName; + /** + * 租户号 + */ + @ColumnWidth(20) + @ExcelProperty("服务号") + private String serviceNo; + /** + * 租户号 + */ + @ColumnWidth(20) + @ExcelProperty("冻结状态") + private String freezeStatusName; + + + +} diff --git a/blade-service/logpm-warehouse/src/main/java/com/logpm/warehouse/mapper/TaskQuestMapper.java b/blade-service/logpm-warehouse/src/main/java/com/logpm/warehouse/mapper/TaskQuestMapper.java index d81d40c22..43953baac 100644 --- a/blade-service/logpm-warehouse/src/main/java/com/logpm/warehouse/mapper/TaskQuestMapper.java +++ b/blade-service/logpm-warehouse/src/main/java/com/logpm/warehouse/mapper/TaskQuestMapper.java @@ -102,7 +102,7 @@ public interface TaskQuestMapper extends BaseMapper { * @param questDetail * @return */ - List selectTaskInfo(@Param("questNum")String questNum,@Param("param") QuestDetailEntity questDetail); + IPage selectTaskInfo(IPage page,@Param("questNum")String questNum,@Param("param") QuestDetailEntity questDetail); /** *根据ID查询盘点数据 * @param questNum @@ -119,7 +119,7 @@ public interface TaskQuestMapper extends BaseMapper { */ List selectQuestDetailList(@Param("questNum")String questNum,@Param("param") QuestDetailEntity questDetail); - List selectTaskTrayInfo(@Param("questNum")String questNum,@Param("param") QuestDetailEntity questDetail); + List selectTaskTrayInfo(IPage page,@Param("questNum")String questNum,@Param("param") QuestDetailEntity questDetail); List getQuestDetailInfo(@Param("questNum")String questNum,@Param("param")QuestDetailChildEntity questDetailChildEntity); diff --git a/blade-service/logpm-warehouse/src/main/java/com/logpm/warehouse/mapper/TaskQuestMapper.xml b/blade-service/logpm-warehouse/src/main/java/com/logpm/warehouse/mapper/TaskQuestMapper.xml index 8d09b4a08..2d2037433 100644 --- a/blade-service/logpm-warehouse/src/main/java/com/logpm/warehouse/mapper/TaskQuestMapper.xml +++ b/blade-service/logpm-warehouse/src/main/java/com/logpm/warehouse/mapper/TaskQuestMapper.xml @@ -188,7 +188,7 @@ is_deleted = 0 and quest_id =#{param.questId } - and quest_type =#{param.questType } + and quest_type = #{param.questType } and quest_target =#{param.questTarget } and warehouse_id =#{param.warehouseId } and allocation_id =#{param.allocationId } diff --git a/blade-service/logpm-warehouse/src/main/java/com/logpm/warehouse/mapper/WarehouseWaybillMapper.java b/blade-service/logpm-warehouse/src/main/java/com/logpm/warehouse/mapper/WarehouseWaybillMapper.java index 0a9672326..ae900a958 100644 --- a/blade-service/logpm-warehouse/src/main/java/com/logpm/warehouse/mapper/WarehouseWaybillMapper.java +++ b/blade-service/logpm-warehouse/src/main/java/com/logpm/warehouse/mapper/WarehouseWaybillMapper.java @@ -16,6 +16,7 @@ */ package com.logpm.warehouse.mapper; +import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper; import com.baomidou.mybatisplus.core.mapper.BaseMapper; import com.baomidou.mybatisplus.core.metadata.IPage; import com.logpm.warehouse.entity.WarehouseWaybillEntity; @@ -42,4 +43,6 @@ public interface WarehouseWaybillMapper extends BaseMapper selectWarehouseWaybillPage(IPage page, WarehouseWaybillVO warehouseWaybill); void submitStockCount(@Param("orderSelfNumbering") String orderSelfNumbering, @Param("allNum") Integer allNum); + + List exportWarehouseWarehousingDetail(@Param("ew") QueryWrapper queryWrapper); } diff --git a/blade-service/logpm-warehouse/src/main/java/com/logpm/warehouse/mapper/WarehouseWaybillMapper.xml b/blade-service/logpm-warehouse/src/main/java/com/logpm/warehouse/mapper/WarehouseWaybillMapper.xml index 3b55b0840..5a4085f64 100644 --- a/blade-service/logpm-warehouse/src/main/java/com/logpm/warehouse/mapper/WarehouseWaybillMapper.xml +++ b/blade-service/logpm-warehouse/src/main/java/com/logpm/warehouse/mapper/WarehouseWaybillMapper.xml @@ -61,6 +61,10 @@ select * from logpm_warehouse_waybill where is_deleted = 0 + + update logpm_warehouse_waybill set stock_count = stock_count - #{allNum} diff --git a/blade-service/logpm-warehouse/src/main/java/com/logpm/warehouse/service/ITaskQuestService.java b/blade-service/logpm-warehouse/src/main/java/com/logpm/warehouse/service/ITaskQuestService.java index 446961598..4edbb36cc 100644 --- a/blade-service/logpm-warehouse/src/main/java/com/logpm/warehouse/service/ITaskQuestService.java +++ b/blade-service/logpm-warehouse/src/main/java/com/logpm/warehouse/service/ITaskQuestService.java @@ -66,7 +66,7 @@ public interface ITaskQuestService extends BaseService { List selectallocationList(TaskSearchDTO taskSearchDTO); - IPage selectcontractList(IPage page, TaskSearchDTO taskSearchDTO); + IPage selectcontractList(IPage page, TaskSearchDTO taskSearchDTO); /** * 托盘数据 @@ -74,35 +74,43 @@ public interface ITaskQuestService extends BaseService { * @param taskSearchDTO * @return */ - R selecttrayList(IPage page, TaskSearchDTO taskSearchDTO); + R selecttrayList(IPage page, TaskSearchDTO taskSearchDTO); /** * 合同号扫描 + * + * @param page * @param taskSearchDTO * @return */ - R queryContract(TaskSearchDTO taskSearchDTO); + R queryContract(IPage page,TaskSearchDTO taskSearchDTO); /** * 盘点定制平数据 + * + * @param page * @param taskSearchDTO * @return */ - List allocationDetailByPackage(TaskSearchDTO taskSearchDTO); + IPage allocationDetailByPackage(IPage page, TaskSearchDTO taskSearchDTO); /** * 盘点零担数据 + * + * @param page * @param taskSearchDTO * @return */ - List allocationDetailByZero(TaskSearchDTO taskSearchDTO); + IPage allocationDetailByZero(IPage page,TaskSearchDTO taskSearchDTO); /** * 盘点库存平数据 + * + * @param page * @param taskSearchDTO * @return */ - List allocationDetailByStock(TaskSearchDTO taskSearchDTO); + IPage allocationDetailByStock(IPage page,TaskSearchDTO taskSearchDTO); void updateQuestSetail(TaskSearchDTO taskSearchDTO); @@ -133,10 +141,12 @@ public interface ITaskQuestService extends BaseService { /** * 盘点合同查询详情 + * + * @param page * @param taskSearchDTO * @return */ - R contractQuestDetail(TaskSearchDTO taskSearchDTO); + R contractQuestDetail(IPage page,TaskSearchDTO taskSearchDTO); IPage selectStrip(IPage page,Long id); @@ -150,9 +160,11 @@ public interface ITaskQuestService extends BaseService { /** * 查询盘点任务数据任务 + * + * @param page * @param questNum * @param questDetail * @return */ - List selectTaskInfo(String questNum, QuestDetailEntity questDetail); + IPage selectTaskInfo(IPage page, String questNum, QuestDetailEntity questDetail); } diff --git a/blade-service/logpm-warehouse/src/main/java/com/logpm/warehouse/service/IWarehouseWaybillService.java b/blade-service/logpm-warehouse/src/main/java/com/logpm/warehouse/service/IWarehouseWaybillService.java index ac9da04b6..bdfa658d5 100644 --- a/blade-service/logpm-warehouse/src/main/java/com/logpm/warehouse/service/IWarehouseWaybillService.java +++ b/blade-service/logpm-warehouse/src/main/java/com/logpm/warehouse/service/IWarehouseWaybillService.java @@ -6,10 +6,12 @@ import com.logpm.distribution.entity.DistributionStockArticleEntity; import com.logpm.warehouse.dto.SplitOrderDTO; import com.logpm.warehouse.dto.WaybillDTO; import com.logpm.warehouse.entity.WarehouseWaybillEntity; +import com.logpm.warehouse.excel.WarehouseWaybillExcel; import com.logpm.warehouse.vo.WarehouseWaybillVO; import org.springblade.core.mp.base.BaseService; import java.util.List; +import java.util.Map; /** * 运单;(logpm_mainline_waybill)表服务接口 @@ -36,4 +38,10 @@ public interface IWarehouseWaybillService extends BaseService selectPage(IPage page, QueryWrapper queryWrapper); + /** + * 导出 + * @param warehouseWaybillEntity + * @return + */ + List exportWarehouseWarehousingDetail(Map warehouseWaybillEntity); } diff --git a/blade-service/logpm-warehouse/src/main/java/com/logpm/warehouse/service/impl/TaskQuestServiceImpl.java b/blade-service/logpm-warehouse/src/main/java/com/logpm/warehouse/service/impl/TaskQuestServiceImpl.java index 12e5015fe..04b958413 100644 --- a/blade-service/logpm-warehouse/src/main/java/com/logpm/warehouse/service/impl/TaskQuestServiceImpl.java +++ b/blade-service/logpm-warehouse/src/main/java/com/logpm/warehouse/service/impl/TaskQuestServiceImpl.java @@ -16,14 +16,12 @@ */ package com.logpm.warehouse.service.impl; -import com.alibaba.nacos.plugin.auth.constant.Constants; import com.baomidou.mybatisplus.core.conditions.Wrapper; -import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper; import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper; import com.baomidou.mybatisplus.core.metadata.IPage; -import com.baomidou.mybatisplus.core.toolkit.BeanUtils; import com.baomidou.mybatisplus.core.toolkit.ObjectUtils; import com.baomidou.mybatisplus.core.toolkit.Wrappers; +import com.baomidou.mybatisplus.extension.plugins.pagination.Page; import com.logpm.basicdata.entity.*; import com.logpm.basicdata.feign.*; import com.logpm.distribution.entity.DistributionParcelListEntity; @@ -47,7 +45,6 @@ import com.logpm.warehouse.service.*; import com.logpm.warehouse.vo.*; import lombok.AllArgsConstructor; import lombok.extern.log4j.Log4j2; -import org.apache.ibatis.annotations.Param; import org.springblade.common.constant.common.IsOrNoConstant; import org.springblade.common.constant.orderpackage.OrderPackageStatusConstant; import org.springblade.common.exception.CustomerException; @@ -57,7 +54,6 @@ import org.springblade.core.mp.base.BaseServiceImpl; import org.springblade.core.secure.BladeUser; import org.springblade.core.secure.utils.AuthUtil; import org.springblade.core.tool.api.R; -import org.springblade.core.tool.utils.AesUtil; import org.springblade.core.tool.utils.BeanUtil; import org.springblade.core.tool.utils.Func; import org.springframework.stereotype.Service; @@ -602,7 +598,7 @@ public class TaskQuestServiceImpl extends BaseServiceImpl selectcontractList(IPage page, TaskSearchDTO taskSearchDTO) { + public IPage selectcontractList(IPage page, TaskSearchDTO taskSearchDTO) { List collect = this.getmyWarehouseList(); baseMapper.setSqlMode(); String goodsType = taskSearchDTO.getGoodsType(); @@ -613,11 +609,13 @@ public class TaskQuestServiceImpl extends BaseServiceImpl questDetailEntityList = baseMapper.selectTaskInfo(taskQuestEntity.getQuestNum(),questDetail); + questDetail.setQuestType(3); + IPage taskPageList = new Page<>(); + IPage questDetailEntityList = baseMapper.selectTaskInfo(page,taskQuestEntity.getQuestNum(),questDetail); if (Func.isEmpty(questDetailEntityList)){ return null; } - Map> questDetailMap = questDetailEntityList.stream().collect(Collectors.groupingBy(QuestDetailEntity::getQuestTarget)); + Map> questDetailMap = questDetailEntityList.getRecords().stream().collect(Collectors.groupingBy(QuestDetailEntity::getQuestTarget)); //订制品 List questDetailEntities = questDetailMap.get(1); List zeroQuestDetailEntities = questDetailMap.get(2); @@ -677,12 +675,12 @@ public class TaskQuestServiceImpl extends BaseServiceImpl page, TaskSearchDTO taskSearchDTO) { + public R selecttrayList(IPage page, TaskSearchDTO taskSearchDTO) { //todo 验证盘点信息 //先判定盘点任务是否已结束 @@ -707,7 +705,7 @@ public class TaskQuestServiceImpl extends BaseServiceImpl list = getQuestDetailList(taskSearchDTO,myCurrentWarehouse.getId(),trayByTrayCode.getId()); + List list = getQuestDetailList( page,taskSearchDTO,myCurrentWarehouse.getId(),trayByTrayCode.getId()); // List list = getTaskTrayInfo(page,taskSearchDTO,collect);// 查询有没有当次盘点任务的托盘数据 if (!list.isEmpty()){ //有盘点数据 return R.data(getTaskTrayInfo(list)); @@ -721,7 +719,7 @@ public class TaskQuestServiceImpl extends BaseServiceImpl questDetailList = getQuestDetailList(taskSearchDTO,myCurrentWarehouse.getId(),trayByTrayCode.getId()); + List questDetailList = getQuestDetailList(page,taskSearchDTO,myCurrentWarehouse.getId(),trayByTrayCode.getId()); return R.data(getTaskTrayInfo(questDetailList)); case 2: //返回托盘信息 @@ -735,7 +733,7 @@ public class TaskQuestServiceImpl extends BaseServiceImpl list1 = getQuestDetailList(taskSearchDTO,myCurrentWarehouse.getId(),null); + List list1 = getQuestDetailList(page,taskSearchDTO,myCurrentWarehouse.getId(),null); if(!list1.isEmpty()){ // int sum = list1.stream().mapToInt(QuestDetailEntity::getStockNum).sum(); //总数 return R.data(getTaskTrayInfo(list1)); @@ -903,7 +901,7 @@ public class TaskQuestServiceImpl extends BaseServiceImpl getQuestDetailList(TaskSearchDTO taskSearchDTO,Long warehouseId,Long trayId){ + private List getQuestDetailList(IPage page,TaskSearchDTO taskSearchDTO,Long warehouseId,Long trayId){ TaskQuestEntity taskQuestEntity = baseMapper.selectById(taskSearchDTO.getTaskId()); // Wrappers.query().lambda() // .eq(QuestDetailEntity::getWarehouseId, warehouseId) @@ -913,10 +911,11 @@ public class TaskQuestServiceImpl extends BaseServiceImpl page, TaskSearchDTO taskSearchDTO) { BasicdataWarehouseEntity myCurrentWarehouse = warehouseClient.getMyCurrentWarehouse(); - List questDetailList = getQuestDetailList(taskSearchDTO, myCurrentWarehouse.getId(), taskSearchDTO.getTrayId()); + List questDetailList = getQuestDetailList(page,taskSearchDTO, myCurrentWarehouse.getId(), taskSearchDTO.getTrayId()); @@ -1128,7 +1127,7 @@ public class TaskQuestServiceImpl extends BaseServiceImpl allocationDetailByPackage(TaskSearchDTO taskSearchDTO) { + public IPage allocationDetailByPackage(IPage page, TaskSearchDTO taskSearchDTO) { Long allocationId = taskSearchDTO.getAllocationId(); Long warehouseId = taskSearchDTO.getWarehouseId(); @@ -1165,12 +1164,12 @@ public class TaskQuestServiceImpl extends BaseServiceImpl questDetailEntities = baseMapper.selectTaskInfo(byId.getQuestNum(),questDetail); + IPage questDetailEntities = baseMapper.selectTaskInfo(page,byId.getQuestNum(),questDetail); // List questDetailEntities = questDetailService.list(questDetailEntityQueryWrapper); - if (!questDetailEntities.isEmpty()) { + if (!questDetailEntities.getRecords().isEmpty()) { return questDetailEntities; } - return new ArrayList<>(); + return null; //如果还没有存入 //查询货位上的所有包条 //然后存入detail表 @@ -1186,7 +1185,7 @@ public class TaskQuestServiceImpl extends BaseServiceImpl allocationDetailByZero(TaskSearchDTO taskSearchDTO) { + public IPage allocationDetailByZero(IPage page, TaskSearchDTO taskSearchDTO) { Long questId = taskSearchDTO.getQuestId(); Long allocationId = taskSearchDTO.getAllocationId(); Long warehouseId = taskSearchDTO.getWarehouseId(); @@ -1223,12 +1222,12 @@ public class TaskQuestServiceImpl extends BaseServiceImpl questDetailEntities = baseMapper.selectTaskInfo(byId.getQuestNum(),questDetail); + IPage questDetailEntities = baseMapper.selectTaskInfo(page,byId.getQuestNum(),questDetail); // List questDetailEntities = questDetailService.list(questDetailEntityQueryWrapper); - if (!questDetailEntities.isEmpty()) { + if (!questDetailEntities.getRecords().isEmpty()) { return questDetailEntities; } - return new ArrayList<>(); + return null; //如果还没有存入 //查询货位上的所有包条 //然后存入detail表 @@ -1244,7 +1243,7 @@ public class TaskQuestServiceImpl extends BaseServiceImpl allocationDetailByStock(TaskSearchDTO taskSearchDTO) { + public IPage allocationDetailByStock(IPage page, TaskSearchDTO taskSearchDTO) { Long questId = taskSearchDTO.getQuestId(); Long allocationId = taskSearchDTO.getAllocationId(); Long warehouseId = taskSearchDTO.getWarehouseId(); @@ -1281,11 +1280,11 @@ public class TaskQuestServiceImpl extends BaseServiceImpl questDetailEntities = baseMapper.selectTaskInfo(byId.getQuestNum(),questDetail); - if (!questDetailEntities.isEmpty()) { + IPage questDetailEntities = baseMapper.selectTaskInfo(page,byId.getQuestNum(),questDetail); + if (!questDetailEntities.getRecords().isEmpty()) { return questDetailEntities; } - return new ArrayList<>(); + return null; //如果还没有存入 //查询货位上的所有包条 //然后存入detail表 @@ -1588,7 +1587,7 @@ public class TaskQuestServiceImpl extends BaseServiceImpl page, TaskSearchDTO taskSearchDTO) { if (Func.isEmpty(taskSearchDTO.getTaskId())){ log.error("#####################TaskId参数缺失:{}",taskSearchDTO.getTaskId()); return null; @@ -1616,8 +1615,8 @@ public class TaskQuestServiceImpl extends BaseServiceImpl questDetailEntities = baseMapper.selectTaskInfo(taskSearchDTO.getQuestNum(),detailEntity); - List type = questDetailEntities.stream().filter(f -> Func.isNotEmpty(f.getQuestTarget())).map(QuestDetailEntity::getQuestTarget).distinct().collect(Collectors.toList()); + IPage questDetailEntities = baseMapper.selectTaskInfo(page,taskSearchDTO.getQuestNum(),detailEntity); + List type = questDetailEntities.getRecords().stream().filter(f -> Func.isNotEmpty(f.getQuestTarget())).map(QuestDetailEntity::getQuestTarget).distinct().collect(Collectors.toList()); if (Func.isEmpty(type)){ return null; } @@ -1629,12 +1628,12 @@ public class TaskQuestServiceImpl extends BaseServiceImpl taskPackagelistVOS = new ArrayList<>(); - List orderCode = questDetailEntities.stream().map(QuestDetailEntity::getOrderCode).distinct().collect(Collectors.toList()); + List orderCode = questDetailEntities.getRecords().stream().map(QuestDetailEntity::getOrderCode).distinct().collect(Collectors.toList()); if (orderCode.size() != 1){ log.error("###################orderId查询类型异常:{}",taskSearchDTO.getOrderId()); return null; } - for (QuestDetailEntity questDetailEntity : questDetailEntities) { + for (QuestDetailEntity questDetailEntity : questDetailEntities.getRecords()) { TaskPackagelistVO packagelistVO = new TaskPackagelistVO(); total.getAndAdd(questDetailEntity.getStockNum()); if (questDetailEntity.getQuestStatus().equals(1)){ @@ -1663,20 +1662,20 @@ public class TaskQuestServiceImpl extends BaseServiceImpl orderId = questDetailEntities.stream().map(QuestDetailEntity::getOrderId).distinct().collect(Collectors.toList()); + List orderId = questDetailEntities.getRecords().stream().map(QuestDetailEntity::getOrderId).distinct().collect(Collectors.toList()); if (type.get(0).equals(1)){ contractVO.setOrderId(orderId.get(0)); contractVO.setOrderCode(orderCode.get(0)); contractVO.setIsZero(0); contractVO.setIsInventory(0); }else if (type.get(0).equals(2)){ - List zeroOrderCode = questDetailEntities.stream().map(QuestDetailEntity::getOrderCode).distinct().collect(Collectors.toList()); + List zeroOrderCode = questDetailEntities.getRecords().stream().map(QuestDetailEntity::getOrderCode).distinct().collect(Collectors.toList()); contractVO.setOrderId(orderId.get(0)); contractVO.setOrderCode(zeroOrderCode.get(0)); contractVO.setIsZero(1); contractVO.setIsInventory(0); }else if (type.get(0).equals(3)){ - List inventoryOrderId = questDetailEntities.stream().map(QuestDetailEntity::getStockId).distinct().collect(Collectors.toList()); + List inventoryOrderId = questDetailEntities.getRecords().stream().map(QuestDetailEntity::getStockId).distinct().collect(Collectors.toList()); contractVO.setOrderId(inventoryOrderId.get(0)); contractVO.setIsZero(0); contractVO.setIsInventory(1); @@ -1817,13 +1816,15 @@ public class TaskQuestServiceImpl extends BaseServiceImpl selectTaskInfo(String questNum, QuestDetailEntity questDetail) { - return baseMapper.selectTaskInfo(questNum,questDetail); + public IPage selectTaskInfo(IPage page, String questNum, QuestDetailEntity questDetail) { + return baseMapper.selectTaskInfo(page,questNum,questDetail); } @@ -1859,7 +1860,7 @@ public class TaskQuestServiceImpl extends BaseServiceImpl page, TaskSearchDTO taskSearchDTO) { // String goodsType = taskSearchDTO.getGoodsType(); Integer type = taskSearchDTO.getType(); if (Func.isEmpty(type)){ @@ -1890,6 +1891,8 @@ public class TaskQuestServiceImpl extends BaseServiceImpl taskQuestChildEntityList = taskQuestChildService.list(Wrappers.query().lambda() .eq(TaskQuestChildEntity::getQuestId, taskQuestId) .eq(TaskQuestChildEntity::getRefType, 1)); @@ -1908,7 +1911,7 @@ public class TaskQuestServiceImpl extends BaseServiceImpl taskContractVOS = new ArrayList<>(); + List taskContractVOS = new ArrayList<>(); String goodsType = taskSearchDTO.getGoodsType(); if (Func.isEmpty(goodsType)){ log.error("####################参数异常:{}",goodsType); @@ -1928,12 +1931,12 @@ public class TaskQuestServiceImpl extends BaseServiceImpl questDetailEntityList = baseMapper.selectTaskInfo(taskSearchDTO.getQuestNum(),questDetail); + IPage questDetailEntityList = baseMapper.selectTaskInfo(page,taskSearchDTO.getQuestNum(),questDetail); - if (Func.isNotEmpty(questDetailEntityList) && questDetailEntityList.size()>0){ + if (Func.isNotEmpty(questDetailEntityList) && questDetailEntityList.getRecords().size()>0){ TaskContractVO taskContractVO = new TaskContractVO(); - Map> orderMap = questDetailEntityList.stream().collect(Collectors.groupingBy(QuestDetailEntity::getOrderCode)); + Map> orderMap = questDetailEntityList.getRecords().stream().collect(Collectors.groupingBy(QuestDetailEntity::getOrderCode)); orderMap.forEach((k,v)->{ List questDetailEntities = orderMap.get(k); taskContractVO.setTotal(v.stream().mapToInt(QuestDetailEntity::getStockNum).sum()); @@ -1984,7 +1987,7 @@ public class TaskQuestServiceImpl extends BaseServiceImpl { + /*parcelList.forEach(p -> { QuestDetailEntity questDetailEntity = new QuestDetailEntity(); if (!p.getOrderPackageStatus().equals(OrderPackageStatusConstant.yichuku.getValue()) && !p.getOrderPackageStatus().equals(OrderPackageStatusConstant.yiqianshou.getValue())) { WarehouseTrayEntity warehouseTrayEntity = baseMapper.selectTratInfo(p.getId(), taskSearchDTO.getWarehouseId()); @@ -2013,7 +2016,7 @@ public class TaskQuestServiceImpl extends BaseServiceImpl stockListByWarehouseIdAndMarketAndStockListInfo = distributionStockListClient.getStockListByWarehouseIdAndMarketAndStockListInfo(incomingBatch, marketNames, taskSearchDTO.getWarehouseId()); if (Func.isEmpty(stockListByWarehouseIdAndMarketAndStockListInfo)){ return Resp.scanFail("操作失败","该库存品不存在此任务中"); @@ -2154,7 +2159,7 @@ public class TaskQuestServiceImpl extends BaseServiceImpl exportWarehouseWarehousingDetail(Map warehouseWaybillEntity) { + + Object o = warehouseWaybillEntity.get("ids"); + if(ObjectUtils.isNotNull(o)){ + warehouseWaybillEntity.remove("ids"); + } +// BasicdataWarehouseEntity myCurrentWarehouse = basicdataWarehouseClient.getMyCurrentWarehouse(); +// if(ObjectUtils.isNull()){ +// throw new ServiceException("请选择仓库!"); +// } + QueryWrapper queryWrapper = Condition.getQueryWrapper(warehouseWaybillEntity, WarehouseWaybillEntity.class); +// if(ObjectUtils.isNotNull(o)){ +// queryWrapper.in("id",String.valueOf(o).split(",")); +// } + + //获取当前登录人仓库 + List myWatchWarehouse = basicdataWarehouseClient.getMyWatchWarehouse(); + List collect = myWatchWarehouse.stream() + .map(BasicdataWarehouseEntity::getId) + .collect(Collectors.toList()); + queryWrapper.lambda() + .in(collect.size() > 0, WarehouseWaybillEntity::getDepartureWarehouseId, collect) + .in(ObjectUtils.isNotNull(o), WarehouseWaybillEntity::getId,String.valueOf(o).split(",")) + .or() + .in(collect.size() > 0, WarehouseWaybillEntity::getDestinationWarehouseId, collect) + .in(ObjectUtils.isNotNull(o), WarehouseWaybillEntity::getId,String.valueOf(o).split(",")); + queryWrapper.lambda().eq(WarehouseWaybillEntity::getIsDeleted, BladeConstant.DB_NOT_DELETED); + List list = new ArrayList<>(); + List warehouseWaybillVOS = baseMapper.exportWarehouseWarehousingDetail(queryWrapper); + warehouseWaybillVOS.forEach( w ->{ + WarehouseWaybillExcel waybillExcel = new WarehouseWaybillExcel(); + BeanUtil.copyProperties(w,waybillExcel); + String value = DictBizCache.getValue(DictBizConstant.DISTRIBUTION_TYPE, w.getServiceType()); + waybillExcel.setServiceTypeName(value); + String value1 = DictBizCache.getValue(DictBizConstant.FREEZE_STATUS, w.getFreezeStatus()); + waybillExcel.setFreezeStatusName(value1); + + list.add(waybillExcel); + }); + return list; + } } From a255a8f02e26be7c1c9a2084855013b5ababc8a9 Mon Sep 17 00:00:00 2001 From: kilo Date: Tue, 7 Nov 2023 23:44:35 +0800 Subject: [PATCH 20/36] =?UTF-8?q?=E7=AD=BE=E6=94=B6=E5=88=97=E8=A1=A8?= =?UTF-8?q?=E5=A2=9E=E5=8A=A0=E4=BB=93=E5=BA=93=E9=99=90=E5=88=B6?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../mapper/DistributionSigndetailMapper.xml | 3 +++ .../impl/DistributionSigndetailServiceImpl.java | 14 ++++++++++++++ 2 files changed, 17 insertions(+) diff --git a/blade-service/logpm-distribution/src/main/java/com/logpm/distribution/mapper/DistributionSigndetailMapper.xml b/blade-service/logpm-distribution/src/main/java/com/logpm/distribution/mapper/DistributionSigndetailMapper.xml index 3d3b4e861..96373c1e6 100644 --- a/blade-service/logpm-distribution/src/main/java/com/logpm/distribution/mapper/DistributionSigndetailMapper.xml +++ b/blade-service/logpm-distribution/src/main/java/com/logpm/distribution/mapper/DistributionSigndetailMapper.xml @@ -188,6 +188,9 @@ and date_format(lds.sjsigning_time,'%y%m%d%') = date_format(#{param.sjsigningTime},'%y%m%d%') + + and lddl.warehouse_id = #{param.warehouseId} and ldr.warehouse_id =#{param.warehouseId} + diff --git a/blade-service/logpm-distribution/src/main/java/com/logpm/distribution/service/impl/DistributionSigndetailServiceImpl.java b/blade-service/logpm-distribution/src/main/java/com/logpm/distribution/service/impl/DistributionSigndetailServiceImpl.java index d003ce6fc..405bda0cb 100644 --- a/blade-service/logpm-distribution/src/main/java/com/logpm/distribution/service/impl/DistributionSigndetailServiceImpl.java +++ b/blade-service/logpm-distribution/src/main/java/com/logpm/distribution/service/impl/DistributionSigndetailServiceImpl.java @@ -20,6 +20,8 @@ import com.alibaba.fastjson.JSON; import com.alibaba.fastjson.JSONObject; import com.baomidou.mybatisplus.core.metadata.IPage; import com.baomidou.mybatisplus.core.toolkit.ObjectUtils; +import com.logpm.basicdata.entity.BasicdataWarehouseEntity; +import com.logpm.basicdata.feign.IBasicdataWarehouseClient; import com.logpm.distribution.dto.DistributionDeliveryInfoDTO; import com.logpm.distribution.dto.DistributionSigndetailDTO; import com.logpm.distribution.entity.DistributionSigndetailEntity; @@ -28,9 +30,11 @@ import com.logpm.distribution.mapper.DistributionSigndetailMapper; import com.logpm.distribution.service.IDistributionSigndetailService; import com.logpm.distribution.vo.DistributionDeliveryInfoVO; import com.logpm.distribution.vo.DistributionSigndetailVO; +import lombok.AllArgsConstructor; import lombok.extern.slf4j.Slf4j; import org.springblade.common.constant.DictBizConstant; import org.springblade.core.mp.base.BaseServiceImpl; +import org.springblade.core.tool.utils.Func; import org.springblade.system.cache.DictBizCache; import org.springframework.beans.BeanUtils; import org.springframework.stereotype.Service; @@ -49,10 +53,20 @@ import java.util.Map; */ @Service @Slf4j + +@AllArgsConstructor public class DistributionSigndetailServiceImpl extends BaseServiceImpl implements IDistributionSigndetailService { + private IBasicdataWarehouseClient warehouseClient; + + + @Override public IPage selectDistributionSigndetailPage(IPage page, DistributionSigndetailDTO distributionSigndetail) { + BasicdataWarehouseEntity myCurrentWarehouse = warehouseClient.getMyCurrentWarehouse(); + if (Func.isNotEmpty(myCurrentWarehouse)){ + distributionSigndetail.setWarehouseId(myCurrentWarehouse.getId().toString()); + } //转换创建时间 if (null != distributionSigndetail.getCreateTime()){ SimpleDateFormat sdf = new SimpleDateFormat("yyyy-MM-dd"); From 9b343f637b20245b3aa2abd1250bef8883979f78 Mon Sep 17 00:00:00 2001 From: "pref_mail@163.com" <123456> Date: Wed, 8 Nov 2023 14:36:00 +0800 Subject: [PATCH 21/36] =?UTF-8?q?1.=E5=A2=9E=E5=8A=A0=E6=AC=A7=E6=B4=BE?= =?UTF-8?q?=E6=95=B0=E6=8D=AE=E6=8E=A8=E9=80=81=E6=97=A5=E5=BF=97?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../com/logpm/factory/oupai/entity/OpPackagePushLogEntity.java | 3 +++ .../factory/oupai/service/impl/OuPaiFactoryServiceImpl.java | 2 ++ 2 files changed, 5 insertions(+) diff --git a/blade-service-api/logpm-factory-api/src/main/java/com/logpm/factory/oupai/entity/OpPackagePushLogEntity.java b/blade-service-api/logpm-factory-api/src/main/java/com/logpm/factory/oupai/entity/OpPackagePushLogEntity.java index 320c47182..d78bf327f 100644 --- a/blade-service-api/logpm-factory-api/src/main/java/com/logpm/factory/oupai/entity/OpPackagePushLogEntity.java +++ b/blade-service-api/logpm-factory-api/src/main/java/com/logpm/factory/oupai/entity/OpPackagePushLogEntity.java @@ -37,4 +37,7 @@ public class OpPackagePushLogEntity extends BaseEntity { @ApiModelProperty(name = "关联ID 根据push_type来决定关联的表",notes = "") private Long refId ; + @ApiModelProperty(name="欧派节点 入库 出库 收货") + private String pushOupaiNode; + } diff --git a/blade-service/logpm-factory/src/main/java/com/logpm/factory/oupai/service/impl/OuPaiFactoryServiceImpl.java b/blade-service/logpm-factory/src/main/java/com/logpm/factory/oupai/service/impl/OuPaiFactoryServiceImpl.java index 2cc2ec573..7578d5f60 100644 --- a/blade-service/logpm-factory/src/main/java/com/logpm/factory/oupai/service/impl/OuPaiFactoryServiceImpl.java +++ b/blade-service/logpm-factory/src/main/java/com/logpm/factory/oupai/service/impl/OuPaiFactoryServiceImpl.java @@ -516,6 +516,8 @@ public class OuPaiFactoryServiceImpl implements IOuPaiFactoryService { opPackagePushLogEntity.setPushType(pushType); opPackagePushLogEntity.setUrl(url); opPackagePushLogEntity.setRefId(refId); + opPackagePushLogEntity.setPushOupaiNode(data.getString("Operate")); + String token = buildToken(); HttpResponse httpResponse = HttpRequest.post(url).header("Authorization", token).body(data.toJSONString()).execute(); From ab0d267677676e4e1de7c0af6af9abd0b2f23d61 Mon Sep 17 00:00:00 2001 From: shuishangtang <836181219@qq.com> Date: Wed, 8 Nov 2023 15:44:16 +0800 Subject: [PATCH 22/36] =?UTF-8?q?=E5=A4=87=E8=B4=A7=E7=AE=A1=E7=90=86?= =?UTF-8?q?=E3=80=81=E4=B8=8A=E6=9E=B6=E8=AE=B0=E5=BD=95=E3=80=81=E5=8C=85?= =?UTF-8?q?=E4=BB=B6=E6=98=8E=E7=BB=86=E3=80=81=E6=BB=9E=E7=95=99=E5=8C=85?= =?UTF-8?q?=E6=9D=A1=E3=80=81=E6=BB=9E=E7=95=99=E8=BF=90=E5=8D=95=E3=80=81?= =?UTF-8?q?=E6=89=AB=E6=8F=8F=E8=AE=B0=E5=BD=95=E3=80=81=E5=B7=B2=E7=AD=BE?= =?UTF-8?q?=E8=AE=B0=E5=BD=95=E3=80=81=E5=85=A5=E5=BA=93=E7=AE=A1=E7=90=86?= =?UTF-8?q?=E3=80=81=E6=8F=90=E8=B4=A7=E7=AE=A1=E7=90=86=E5=87=A0=E4=B8=AA?= =?UTF-8?q?=E6=A8=A1=E5=9D=97=E7=9A=84=E5=AF=BC=E5=87=BA=E5=8A=9F=E8=83=BD?= =?UTF-8?q?(=E5=A6=82=E6=9E=9C=E5=B7=B2=E6=9C=89=E5=AF=BC=E5=87=BA?= =?UTF-8?q?=E5=8A=9F=E8=83=BD=EF=BC=8C=E6=AD=A4=E6=AC=A1=E6=9C=AA=E5=81=9A?= =?UTF-8?q?=E4=BF=AE=E6=94=B9)?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../common/constant/ModuleNameConstant.java | 2 +- .../vo/DistrilbutionBillLadingVO.java | 4 + blade-service-api/logpm-warehouse-api/pom.xml | 4 + .../DistributionStockArticleController.java | 1 + .../DistrilbutionBillLadingController.java | 16 +- .../mapper/DistrilbutionBillLadingMapper.java | 4 +- .../mapper/DistrilbutionBillLadingMapper.xml | 374 ++++++++++++------ .../IDistrilbutionBillLadingService.java | 4 + .../DistrilbutionBillLadingServiceImpl.java | 48 +++ .../WarehouseWarehousingEntryController.java | 77 ++-- .../WarehouseWarehousingEntryMapper.java | 2 + .../WarehouseWarehousingEntryMapper.xml | 61 ++- .../IWarehouseWarehousingEntryService.java | 4 + .../WarehouseWarehousingEntryServiceImpl.java | 30 ++ 14 files changed, 473 insertions(+), 158 deletions(-) diff --git a/blade-biz-common/src/main/java/org/springblade/common/constant/ModuleNameConstant.java b/blade-biz-common/src/main/java/org/springblade/common/constant/ModuleNameConstant.java index 75e254ecf..84de347c0 100644 --- a/blade-biz-common/src/main/java/org/springblade/common/constant/ModuleNameConstant.java +++ b/blade-biz-common/src/main/java/org/springblade/common/constant/ModuleNameConstant.java @@ -8,7 +8,7 @@ public interface ModuleNameConstant { /** * 如果不需要 "" */ - public static final String DEVAUTH =""; + public static final String DEVAUTH ="-sst"; /** * 工厂对接服务名称 diff --git a/blade-service-api/logpm-distribution-api/src/main/java/com/logpm/distribution/vo/DistrilbutionBillLadingVO.java b/blade-service-api/logpm-distribution-api/src/main/java/com/logpm/distribution/vo/DistrilbutionBillLadingVO.java index 582d01be5..706a4ec39 100644 --- a/blade-service-api/logpm-distribution-api/src/main/java/com/logpm/distribution/vo/DistrilbutionBillLadingVO.java +++ b/blade-service-api/logpm-distribution-api/src/main/java/com/logpm/distribution/vo/DistrilbutionBillLadingVO.java @@ -19,8 +19,10 @@ package com.logpm.distribution.vo; import com.logpm.distribution.entity.DistributionDeliveryChargeEntity; import com.logpm.distribution.entity.DistrilbutionBillLadingEntity; import io.swagger.annotations.ApiModelProperty; +import lombok.AllArgsConstructor; import lombok.Data; import lombok.EqualsAndHashCode; +import lombok.NoArgsConstructor; import java.math.BigDecimal; import java.util.List; @@ -33,6 +35,8 @@ import java.util.List; */ @Data @EqualsAndHashCode(callSuper = true) +@NoArgsConstructor +@AllArgsConstructor public class DistrilbutionBillLadingVO extends DistrilbutionBillLadingEntity { private static final long serialVersionUID = 1L; diff --git a/blade-service-api/logpm-warehouse-api/pom.xml b/blade-service-api/logpm-warehouse-api/pom.xml index 9b94b0828..aef29d830 100644 --- a/blade-service-api/logpm-warehouse-api/pom.xml +++ b/blade-service-api/logpm-warehouse-api/pom.xml @@ -10,6 +10,10 @@ 3.2.0.RELEASE compile + + org.projectlombok + lombok + diff --git a/blade-service/logpm-distribution/src/main/java/com/logpm/distribution/controller/DistributionStockArticleController.java b/blade-service/logpm-distribution/src/main/java/com/logpm/distribution/controller/DistributionStockArticleController.java index 643eb04bf..e1c53af54 100644 --- a/blade-service/logpm-distribution/src/main/java/com/logpm/distribution/controller/DistributionStockArticleController.java +++ b/blade-service/logpm-distribution/src/main/java/com/logpm/distribution/controller/DistributionStockArticleController.java @@ -100,6 +100,7 @@ public class DistributionStockArticleController extends BladeController { IPage pages = distributionStockArticleService.pageListOwe(Condition.getPage(query), distributionStockArticle); return R.data(DistributionStockArticleWrapper.build().pageVO(pages)); } + /** * 配送在库订单 分页 */ diff --git a/blade-service/logpm-distribution/src/main/java/com/logpm/distribution/controller/DistrilbutionBillLadingController.java b/blade-service/logpm-distribution/src/main/java/com/logpm/distribution/controller/DistrilbutionBillLadingController.java index 085cc6262..af2b31c57 100644 --- a/blade-service/logpm-distribution/src/main/java/com/logpm/distribution/controller/DistrilbutionBillLadingController.java +++ b/blade-service/logpm-distribution/src/main/java/com/logpm/distribution/controller/DistrilbutionBillLadingController.java @@ -20,9 +20,9 @@ import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper; import com.baomidou.mybatisplus.core.metadata.IPage; import com.baomidou.mybatisplus.core.toolkit.StringUtils; import com.github.xiaoymin.knife4j.annotations.ApiOperationSupport; -import com.github.xiaoymin.knife4j.annotations.ApiSupport; import com.logpm.distribution.dto.DistrilbutionBillLadingDTO; import com.logpm.distribution.entity.DistrilbutionBillLadingEntity; +import com.logpm.distribution.excel.DistributionStockArticleExcel; import com.logpm.distribution.excel.DistrilbutionBillLadingExcel; import com.logpm.distribution.service.IDistrilbutionBillLadingService; import com.logpm.distribution.vo.DistrilbutionBillLadingDetailsVO; @@ -33,7 +33,7 @@ import com.logpm.distribution.wrapper.DistrilbutionBillLadingWrapper; import io.swagger.annotations.Api; import io.swagger.annotations.ApiOperation; import io.swagger.annotations.ApiParam; -import kotlin.Suppress; +//import kotlin.Suppress; import lombok.AllArgsConstructor; import lombok.extern.slf4j.Slf4j; import org.springblade.common.constant.DictBizConstant; @@ -152,6 +152,18 @@ public class DistrilbutionBillLadingController extends BladeController { return R.data(pages); } + /** + * 导出数据 + */ + @GetMapping("/export-distributionBillLadingVO") + @ApiOperationSupport(order = 9) + @ApiOperation(value = "导出提货数据", notes = "传入-distributionBillLading") + public void exportDistributionBillLading(@ApiIgnore @RequestParam Map distributionBillLading, HttpServletResponse response) { + + List list = distrilbutionBillLadingService.exportDistributionBillLading(distributionBillLading); + ExcelUtil.export(response, "提货数据" + DateUtil.time(), "提货数据表", list, DistrilbutionBillLadingExcel.class); + } + /** * 提货单 自定义分页 */ diff --git a/blade-service/logpm-distribution/src/main/java/com/logpm/distribution/mapper/DistrilbutionBillLadingMapper.java b/blade-service/logpm-distribution/src/main/java/com/logpm/distribution/mapper/DistrilbutionBillLadingMapper.java index 3cbc6e63e..017d870d2 100644 --- a/blade-service/logpm-distribution/src/main/java/com/logpm/distribution/mapper/DistrilbutionBillLadingMapper.java +++ b/blade-service/logpm-distribution/src/main/java/com/logpm/distribution/mapper/DistrilbutionBillLadingMapper.java @@ -26,7 +26,6 @@ import com.logpm.distribution.excel.DistrilbutionBillLadingExcel; import com.logpm.distribution.vo.*; import com.logpm.distribution.vo.app.DistrilbutionAppBillLadingDetailVO; import org.apache.ibatis.annotations.Param; -import org.springblade.core.tool.api.R; import java.util.List; import java.util.Map; @@ -89,4 +88,7 @@ public interface DistrilbutionBillLadingMapper extends BaseMapper getViewDetailOwn(@Param("id") String id); List selectBillStockList(IPage page, @Param("distrilbutionBillLading") Map distrilbutionBillLading); + + + List exportDistributionBillLading(@Param("param") Map param, @Param("idArr") List idArr); } diff --git a/blade-service/logpm-distribution/src/main/java/com/logpm/distribution/mapper/DistrilbutionBillLadingMapper.xml b/blade-service/logpm-distribution/src/main/java/com/logpm/distribution/mapper/DistrilbutionBillLadingMapper.xml index 43e82413c..073b5c10d 100644 --- a/blade-service/logpm-distribution/src/main/java/com/logpm/distribution/mapper/DistrilbutionBillLadingMapper.xml +++ b/blade-service/logpm-distribution/src/main/java/com/logpm/distribution/mapper/DistrilbutionBillLadingMapper.xml @@ -27,59 +27,184 @@ + + - diff --git a/blade-service/logpm-distribution/src/main/java/com/logpm/distribution/service/IDistrilbutionBillLadingService.java b/blade-service/logpm-distribution/src/main/java/com/logpm/distribution/service/IDistrilbutionBillLadingService.java index 8bc46422a..6738872a6 100644 --- a/blade-service/logpm-distribution/src/main/java/com/logpm/distribution/service/IDistrilbutionBillLadingService.java +++ b/blade-service/logpm-distribution/src/main/java/com/logpm/distribution/service/IDistrilbutionBillLadingService.java @@ -28,6 +28,7 @@ import com.logpm.distribution.vo.app.DistrilbutionAppBillLadingOrderMainVO; import org.springblade.core.mp.base.BaseService; import org.springblade.core.tool.api.R; +import javax.servlet.http.HttpServletResponse; import java.util.List; import java.util.Map; @@ -65,6 +66,8 @@ public interface IDistrilbutionBillLadingService extends BaseService pageList(IPage page, Map distrilbutionBillLading); + List exportDistributionBillLading(Map distributionBillLading); + /** * pda列表 * @param page @@ -195,4 +198,5 @@ public interface IDistrilbutionBillLadingService extends BaseService implements IDistrilbutionBillLadingService { private final IDistributionDeliveryChargeService distributionDeliveryChargeService; @@ -113,6 +129,7 @@ public class DistrilbutionBillLadingServiceImpl extends BaseServiceImpl exportDistributionBillLading(Map param) { + + // 获取当前登录的仓库信息 + BasicdataWarehouseEntity myCurrentWarehouse = warehouseClient.getMyCurrentWarehouse(); + if(ObjectUtils.isNull(myCurrentWarehouse)){ + throw new ServiceException("没有仓库信息!"); + } + // 用户勾选数据的ids + String ids = param.get("ids").toString(); + List idArr = new ArrayList<>(); + if (StringUtils.isNotBlank(ids)){ + idArr = Arrays.asList(ids.split(",")); + } + + param.put("warehouseId", myCurrentWarehouse.getId()); + List list = baseMapper.exportDistributionBillLading(param, idArr); + List listExcel = new ArrayList<>(); + list.forEach(s -> { + DistrilbutionBillLadingExcel excel = new DistrilbutionBillLadingExcel(); + BasicdataWarehouseEntity entityWarehouse = warehouseClient.getEntityWarehouseId(s.getWarehouseId()); + BeanUtil.copyProperties(s,excel); + + String value = DictBizCache.getValue(DictBizConstant.DISTRIBUTION_TYPE, s.getTypeService()); +// excel.setTypeService(value); + listExcel.add(excel); + }); + + return listExcel; + } /** * 添加提货图片 @@ -1934,6 +1981,7 @@ public class DistrilbutionBillLadingServiceImpl extends BaseServiceImpl paramMap, HttpServletResponse response) { + + List list = warehouseWarehousingEntryService.exportWarehouseWarehousing(paramMap); + ExcelUtil.export(response, "入库数据" + DateUtil.time(), "入库数据表", list, WarehouseWarehousingEntryExcel.class); + } + /** * 仓库入库单 自定义分页 */ @@ -177,37 +190,37 @@ public class WarehouseWarehousingEntryController extends BladeController { /** * 导出数据 */ - @GetMapping("/export-warehouseWarehousingEntry") - @ApiOperationSupport(order = 9) - @ApiOperation(value = "导出数据", notes = "传入warehouseWarehousingEntry") - public void exportWarehouseWarehousingEntry(@ApiIgnore @RequestParam Map warehouseWarehousingEntry, BladeUser bladeUser, HttpServletResponse response) { - - List list = new ArrayList<>(); - WarehousingEntryDetailExcel warehousingEntryDetailExcel = new WarehousingEntryDetailExcel(); - warehousingEntryDetailExcel.setReceiptBatch("2022031402350 选添"); - warehousingEntryDetailExcel.setReceiptDate(new Date()); - warehousingEntryDetailExcel.setCustomerCode("NCOP00011"); - warehousingEntryDetailExcel.setCustomerName("南充欧派衣橱"); - warehousingEntryDetailExcel.setStoreName("门店 选填"); - warehousingEntryDetailExcel.setOrderNumber("OPLYC南充市220200015YA5-5 选填"); - warehousingEntryDetailExcel.setBrandName("欧派"); - warehousingEntryDetailExcel.setWarehouse("南充仓"); - warehousingEntryDetailExcel.setWarehouseCode("NC"); - warehousingEntryDetailExcel.setTrainNumber("SF098876456 选添"); - warehousingEntryDetailExcel.setLicensePlate("川S5346347 选添"); - warehousingEntryDetailExcel.setServiceType("自提 商配 市配 选择其一"); - warehousingEntryDetailExcel.setSku("G21191547"); - warehousingEntryDetailExcel.setProductName("OP-CD309-1.8慕思如梦时光床垫/1800*2000*260"); - warehousingEntryDetailExcel.setProductCode("G21191547"); - warehousingEntryDetailExcel.setProductUnit("张"); - warehousingEntryDetailExcel.setLogisticsCompany("物流公司 选填"); - warehousingEntryDetailExcel.setPackagingNumber("1"); - warehousingEntryDetailExcel.setPackagingSpecifications("1"); - warehousingEntryDetailExcel.setCreateInventory(100); - warehousingEntryDetailExcel.setPositions("存放位置 选填"); - warehousingEntryDetailExcel.setRemark("备注 选填"); - list.add(warehousingEntryDetailExcel); - ExcelUtil.export(response, "仓库入库单数据" + DateUtil.time(), "仓库入库单数据表", list, WarehousingEntryDetailExcel.class); - } +// @GetMapping("/export-warehouseWarehousingEntry") +// @ApiOperationSupport(order = 9) +// @ApiOperation(value = "导出数据", notes = "传入warehouseWarehousingEntry") +// public void exportWarehouseWarehousingEntry(@ApiIgnore @RequestParam Map warehouseWarehousingEntry, BladeUser bladeUser, HttpServletResponse response) { +// +// List list = new ArrayList<>(); +// WarehousingEntryDetailExcel warehousingEntryDetailExcel = new WarehousingEntryDetailExcel(); +// warehousingEntryDetailExcel.setReceiptBatch("2022031402350 选添"); +// warehousingEntryDetailExcel.setReceiptDate(new Date()); +// warehousingEntryDetailExcel.setCustomerCode("NCOP00011"); +// warehousingEntryDetailExcel.setCustomerName("南充欧派衣橱"); +// warehousingEntryDetailExcel.setStoreName("门店 选填"); +// warehousingEntryDetailExcel.setOrderNumber("OPLYC南充市220200015YA5-5 选填"); +// warehousingEntryDetailExcel.setBrandName("欧派"); +// warehousingEntryDetailExcel.setWarehouse("南充仓"); +// warehousingEntryDetailExcel.setWarehouseCode("NC"); +// warehousingEntryDetailExcel.setTrainNumber("SF098876456 选添"); +// warehousingEntryDetailExcel.setLicensePlate("川S5346347 选添"); +// warehousingEntryDetailExcel.setServiceType("自提 商配 市配 选择其一"); +// warehousingEntryDetailExcel.setSku("G21191547"); +// warehousingEntryDetailExcel.setProductName("OP-CD309-1.8慕思如梦时光床垫/1800*2000*260"); +// warehousingEntryDetailExcel.setProductCode("G21191547"); +// warehousingEntryDetailExcel.setProductUnit("张"); +// warehousingEntryDetailExcel.setLogisticsCompany("物流公司 选填"); +// warehousingEntryDetailExcel.setPackagingNumber("1"); +// warehousingEntryDetailExcel.setPackagingSpecifications("1"); +// warehousingEntryDetailExcel.setCreateInventory(100); +// warehousingEntryDetailExcel.setPositions("存放位置 选填"); +// warehousingEntryDetailExcel.setRemark("备注 选填"); +// list.add(warehousingEntryDetailExcel); +// ExcelUtil.export(response, "仓库入库单数据" + DateUtil.time(), "仓库入库单数据表", list, WarehousingEntryDetailExcel.class); +// } } diff --git a/blade-service/logpm-warehouse/src/main/java/com/logpm/warehouse/mapper/WarehouseWarehousingEntryMapper.java b/blade-service/logpm-warehouse/src/main/java/com/logpm/warehouse/mapper/WarehouseWarehousingEntryMapper.java index 8563ddbf3..4d018d029 100644 --- a/blade-service/logpm-warehouse/src/main/java/com/logpm/warehouse/mapper/WarehouseWarehousingEntryMapper.java +++ b/blade-service/logpm-warehouse/src/main/java/com/logpm/warehouse/mapper/WarehouseWarehousingEntryMapper.java @@ -25,6 +25,7 @@ import com.logpm.warehouse.vo.WarehouseWarehousingEntryVO; import org.apache.ibatis.annotations.Param; import java.util.List; +import java.util.Map; /** * 仓库入库单 Mapper 接口 @@ -52,4 +53,5 @@ public interface WarehouseWarehousingEntryMapper extends BaseMapper exportWarehouseWarehousingEntry(@Param("ew") Wrapper queryWrapper); + List exportWarehouseWarehousing(@Param("paramMap") Map paramMap, @Param("idArr") List idArr); } diff --git a/blade-service/logpm-warehouse/src/main/java/com/logpm/warehouse/mapper/WarehouseWarehousingEntryMapper.xml b/blade-service/logpm-warehouse/src/main/java/com/logpm/warehouse/mapper/WarehouseWarehousingEntryMapper.xml index 2d8c0d6de..1c4218fe5 100644 --- a/blade-service/logpm-warehouse/src/main/java/com/logpm/warehouse/mapper/WarehouseWarehousingEntryMapper.xml +++ b/blade-service/logpm-warehouse/src/main/java/com/logpm/warehouse/mapper/WarehouseWarehousingEntryMapper.xml @@ -3,7 +3,8 @@ - + @@ -29,18 +30,70 @@ - + + diff --git a/blade-service/logpm-warehouse/src/main/java/com/logpm/warehouse/service/IWarehouseWarehousingEntryService.java b/blade-service/logpm-warehouse/src/main/java/com/logpm/warehouse/service/IWarehouseWarehousingEntryService.java index 93f71fe0d..c6ff201ba 100644 --- a/blade-service/logpm-warehouse/src/main/java/com/logpm/warehouse/service/IWarehouseWarehousingEntryService.java +++ b/blade-service/logpm-warehouse/src/main/java/com/logpm/warehouse/service/IWarehouseWarehousingEntryService.java @@ -22,11 +22,13 @@ import com.baomidou.mybatisplus.core.metadata.IPage; import com.logpm.warehouse.dto.WarehouseWarehousingEntryDTO; import com.logpm.warehouse.entity.WarehouseWarehouseEntity; import com.logpm.warehouse.entity.WarehouseWarehousingEntryEntity; +import com.logpm.warehouse.excel.WarehouseWarehousingEntryExcel; import com.logpm.warehouse.excel.WarehousingEntryDetailExcel; import com.logpm.warehouse.vo.WarehouseWarehousingEntryVO; import org.springblade.core.mp.base.BaseService; import java.util.List; +import java.util.Map; /** * 仓库入库单 服务类 @@ -68,4 +70,6 @@ public interface IWarehouseWarehousingEntryService extends BaseService data, Boolean isCovered); + + List exportWarehouseWarehousing(Map paramMap); } diff --git a/blade-service/logpm-warehouse/src/main/java/com/logpm/warehouse/service/impl/WarehouseWarehousingEntryServiceImpl.java b/blade-service/logpm-warehouse/src/main/java/com/logpm/warehouse/service/impl/WarehouseWarehousingEntryServiceImpl.java index b406d88b5..f58c9fb24 100644 --- a/blade-service/logpm-warehouse/src/main/java/com/logpm/warehouse/service/impl/WarehouseWarehousingEntryServiceImpl.java +++ b/blade-service/logpm-warehouse/src/main/java/com/logpm/warehouse/service/impl/WarehouseWarehousingEntryServiceImpl.java @@ -41,6 +41,7 @@ import com.logpm.warehouse.dto.WarehouseWarehousingEntryDTO; import com.logpm.warehouse.entity.WarehouseWarehouseEntity; import com.logpm.warehouse.entity.WarehouseWarehousingDetailEntity; import com.logpm.warehouse.entity.WarehouseWarehousingEntryEntity; +import com.logpm.warehouse.excel.WarehouseWarehousingEntryExcel; import com.logpm.warehouse.excel.WarehousingEntryDetailExcel; import com.logpm.warehouse.mapper.WarehouseWarehousingEntryMapper; import com.logpm.warehouse.service.IWarehouseWarehousingDetailService; @@ -83,6 +84,8 @@ public class WarehouseWarehousingEntryServiceImpl extends BaseServiceImpl exportWarehouseWarehousing(Map paramMap) { + // 获取当前登录的仓库信息 + BasicdataWarehouseEntity myCurrentWarehouse = warehouseClient.getMyCurrentWarehouse(); + if(ObjectUtils.isNull(myCurrentWarehouse)){ + throw new ServiceException("没有仓库信息!"); + } + // 用户勾选数据的ids + String ids = paramMap.get("ids").toString(); + List idArr = new ArrayList<>(); + if (StringUtils.isNotBlank(ids)){ + idArr = Arrays.asList(ids.split(",")); + } + + paramMap.put("warehouseId", myCurrentWarehouse.getId()); + + List list = baseMapper.exportWarehouseWarehousing(paramMap, idArr); + List listExcel = new ArrayList<>(); + list.forEach(s->{ + WarehouseWarehousingEntryExcel excel = new WarehouseWarehousingEntryExcel(); + BeanUtil.copyProperties(s,excel); + listExcel.add(excel); + }); + + return listExcel; + } + } From 7047fdbadb48b11642006f35f66bc5702baffd0d Mon Sep 17 00:00:00 2001 From: caoyizhong <1270296080@qq.com> Date: Wed, 8 Nov 2023 16:36:48 +0800 Subject: [PATCH 23/36] =?UTF-8?q?=E4=BF=AE=E6=94=B9=E8=B4=A7=E4=BD=8D?= =?UTF-8?q?=E9=87=8D=E5=A4=8D?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- ...tributionReservationPackageController.java | 8 +- ...tionReservationStockarticleController.java | 8 +- ...ibutionReservationStocklistController.java | 8 +- .../DistributionReservationPackageDTO.java | 2 +- .../DistributionReservationPackageExcel.java | 139 ++++++++++++++---- ...tributionReservationStockarticleExcel.java | 90 ++++++++---- .../mapper/DistributionReservationMapper.xml | 2 +- .../DistributionReservationPackageMapper.java | 2 +- .../DistributionReservationPackageMapper.xml | 29 +++- ...tributionReservationStockarticleMapper.xml | 27 +++- ...istributionReservationStocklistMapper.java | 3 +- ...DistributionReservationStocklistMapper.xml | 9 +- .../mapper/DistributionSigndetailMapper.xml | 3 + ...DistributionReservationPackageService.java | 5 +- ...ibutionReservationStockarticleService.java | 5 +- ...stributionReservationStocklistService.java | 5 +- .../DistributionDeliveryListServiceImpl.java | 1 + ...ributionReservationPackageServiceImpl.java | 31 +++- ...ionReservationStockarticleServiceImpl.java | 19 ++- ...butionReservationStocklistServiceImpl.java | 22 ++- .../DistributionSigndetailServiceImpl.java | 8 +- .../impl/DistributionStockupServiceImpl.java | 15 +- 22 files changed, 330 insertions(+), 111 deletions(-) diff --git a/blade-service/logpm-distribution/src/main/java/com/logpm/distribution/controller/DistributionReservationPackageController.java b/blade-service/logpm-distribution/src/main/java/com/logpm/distribution/controller/DistributionReservationPackageController.java index f8fa8f3d5..6203ea4b1 100644 --- a/blade-service/logpm-distribution/src/main/java/com/logpm/distribution/controller/DistributionReservationPackageController.java +++ b/blade-service/logpm-distribution/src/main/java/com/logpm/distribution/controller/DistributionReservationPackageController.java @@ -138,12 +138,8 @@ public class DistributionReservationPackageController extends BladeController { @ApiOperationSupport(order = 9) @ApiOperation(value = "导出数据", notes = "传入distributionReservationPackage") public void exportDistributionReservationPackage(@ApiIgnore @RequestParam Map distributionReservationPackage, BladeUser bladeUser, HttpServletResponse response) { - QueryWrapper queryWrapper = Condition.getQueryWrapper(distributionReservationPackage, DistributionReservationPackageEntity.class); - //if (!AuthUtil.isAdministrator()) { - // queryWrapper.lambda().eq(DistributionReservationPackage::getTenantId, bladeUser.getTenantId()); - //} - queryWrapper.lambda().eq(DistributionReservationPackageEntity::getIsDeleted, BladeConstant.DB_NOT_DELETED); - List list = distributionReservationPackageService.exportDistributionReservationPackage(queryWrapper); + + List list = distributionReservationPackageService.exportDistributionReservationPackage(distributionReservationPackage); ExcelUtil.export(response, "预约包件中间表数据" + DateUtil.time(), "预约包件中间表数据表", list, DistributionReservationPackageExcel.class); } diff --git a/blade-service/logpm-distribution/src/main/java/com/logpm/distribution/controller/DistributionReservationStockarticleController.java b/blade-service/logpm-distribution/src/main/java/com/logpm/distribution/controller/DistributionReservationStockarticleController.java index 7bf8de2d1..33a267d71 100644 --- a/blade-service/logpm-distribution/src/main/java/com/logpm/distribution/controller/DistributionReservationStockarticleController.java +++ b/blade-service/logpm-distribution/src/main/java/com/logpm/distribution/controller/DistributionReservationStockarticleController.java @@ -149,12 +149,8 @@ public class DistributionReservationStockarticleController extends BladeControll @ApiOperationSupport(order = 9) @ApiOperation(value = "导出数据", notes = "传入distributionReservationStockarticle") public void exportDistributionReservationStockarticle(@ApiIgnore @RequestParam Map distributionReservationStockarticle, BladeUser bladeUser, HttpServletResponse response) { - QueryWrapper queryWrapper = Condition.getQueryWrapper(distributionReservationStockarticle, DistributionReservationStockarticleEntity.class); - //if (!AuthUtil.isAdministrator()) { - // queryWrapper.lambda().eq(DistributionReservationStockarticle::getTenantId, bladeUser.getTenantId()); - //} - queryWrapper.lambda().eq(DistributionReservationStockarticleEntity::getIsDeleted, BladeConstant.DB_NOT_DELETED); - List list = distributionReservationStockarticleService.exportDistributionReservationStockarticle(queryWrapper); + + List list = distributionReservationStockarticleService.exportDistributionReservationStockarticle(distributionReservationStockarticle); ExcelUtil.export(response, "预约订单中间表数据" + DateUtil.time(), "预约订单中间表数据表", list, DistributionReservationStockarticleExcel.class); } diff --git a/blade-service/logpm-distribution/src/main/java/com/logpm/distribution/controller/DistributionReservationStocklistController.java b/blade-service/logpm-distribution/src/main/java/com/logpm/distribution/controller/DistributionReservationStocklistController.java index d5ad4f371..da738f005 100644 --- a/blade-service/logpm-distribution/src/main/java/com/logpm/distribution/controller/DistributionReservationStocklistController.java +++ b/blade-service/logpm-distribution/src/main/java/com/logpm/distribution/controller/DistributionReservationStocklistController.java @@ -138,12 +138,8 @@ public class DistributionReservationStocklistController extends BladeController @ApiOperationSupport(order = 9) @ApiOperation(value = "导出数据", notes = "传入distributionReservationStocklist") public void exportDistributionReservationStocklist(@ApiIgnore @RequestParam Map distributionReservationStocklist, BladeUser bladeUser, HttpServletResponse response) { - QueryWrapper queryWrapper = Condition.getQueryWrapper(distributionReservationStocklist, DistributionReservationStocklistEntity.class); - //if (!AuthUtil.isAdministrator()) { - // queryWrapper.lambda().eq(DistributionReservationStocklist::getTenantId, bladeUser.getTenantId()); - //} - queryWrapper.lambda().eq(DistributionReservationStocklistEntity::getIsDeleted, BladeConstant.DB_NOT_DELETED); - List list = distributionReservationStocklistService.exportDistributionReservationStocklist(queryWrapper); + + List list = distributionReservationStocklistService.exportDistributionReservationStocklist(distributionReservationStocklist); ExcelUtil.export(response, "预约库存中间表数据" + DateUtil.time(), "预约库存中间表数据表", list, DistributionReservationStocklistExcel.class); } diff --git a/blade-service/logpm-distribution/src/main/java/com/logpm/distribution/dto/DistributionReservationPackageDTO.java b/blade-service/logpm-distribution/src/main/java/com/logpm/distribution/dto/DistributionReservationPackageDTO.java index 5e5dd0359..0d4e39bcb 100644 --- a/blade-service/logpm-distribution/src/main/java/com/logpm/distribution/dto/DistributionReservationPackageDTO.java +++ b/blade-service/logpm-distribution/src/main/java/com/logpm/distribution/dto/DistributionReservationPackageDTO.java @@ -30,5 +30,5 @@ import lombok.EqualsAndHashCode; @EqualsAndHashCode(callSuper = true) public class DistributionReservationPackageDTO extends DistributionReservationPackageEntity { private static final long serialVersionUID = 1L; - + private Long warehouseId; } diff --git a/blade-service/logpm-distribution/src/main/java/com/logpm/distribution/excel/DistributionReservationPackageExcel.java b/blade-service/logpm-distribution/src/main/java/com/logpm/distribution/excel/DistributionReservationPackageExcel.java index 0c7fbfecd..9173bcf28 100644 --- a/blade-service/logpm-distribution/src/main/java/com/logpm/distribution/excel/DistributionReservationPackageExcel.java +++ b/blade-service/logpm-distribution/src/main/java/com/logpm/distribution/excel/DistributionReservationPackageExcel.java @@ -24,6 +24,7 @@ import com.alibaba.excel.annotation.write.style.HeadRowHeight; import lombok.Data; import java.io.Serializable; +import java.util.Date; /** @@ -40,65 +41,145 @@ public class DistributionReservationPackageExcel implements Serializable { private static final long serialVersionUID = 1L; + /** - * 租户号 + * 预约编号 */ @ColumnWidth(20) - @ExcelProperty("租户号") - private String tenantId; + @ExcelProperty("预约编号") + private String reservationCode; /** - * 是否已删除 + * 包件编号 */ @ColumnWidth(20) - @ExcelProperty("是否已删除") - private Integer isDeleted; + @ExcelProperty("预约时间") + private Date reservation_date; + /** - * 预约编号 + * 订单编号 */ @ColumnWidth(20) - @ExcelProperty("预约编号") - private String reservationId; + @ExcelProperty("服务类型") + private String deliveryType; /** - * 包件编号 + * 订单编号 + */ + @ColumnWidth(20) + @ExcelProperty("收货人") + private String consignee; + /** + * 订单编号 + */ + @ColumnWidth(20) + @ExcelProperty("手机号码") + private String deliveryPhone; + /** + * 订单编号 + */ + @ColumnWidth(20) + @ExcelProperty("收货地址") + private String deliveryAddress; + /** + * 订单编号 + */ + @ColumnWidth(20) + @ExcelProperty("运单号") + private String waybillNumber; + /** + * 订单编号 */ @ColumnWidth(20) - @ExcelProperty("包件编号") - private String parceListId; + @ExcelProperty("服务号") + private String serviceNumber; /** - * 预留1 + * 订单编号 */ @ColumnWidth(20) - @ExcelProperty("预留1") - private String reserve1; + @ExcelProperty("订单自编号") + private String orderCode; /** - * 预留2 + * 订单编号 */ @ColumnWidth(20) - @ExcelProperty("预留2") - private String reserve2; + @ExcelProperty("仓库") + private String warehouseName; /** - * 预留3 + * 订单编号 */ @ColumnWidth(20) - @ExcelProperty("预留3") - private String reserve3; + @ExcelProperty("包条码") + private String orderPackageCode; /** - * 预留4 + * 订单编号 */ @ColumnWidth(20) - @ExcelProperty("预留4") - private String reserve4; + @ExcelProperty("发站仓") + private String sendWarehouseName; /** - * 预留5 + * 订单编号 + */ + @ColumnWidth(20) + @ExcelProperty("目的仓") + private String acceptWarehouseName; + /** + * 订单编号 + */ + @ColumnWidth(20) + @ExcelProperty("入库时间") + private String warehouseEntryTimeEnd; + /** + * 订单编号 + */ + @ColumnWidth(20) + @ExcelProperty("车次号") + private String trainNumber; + /** + * 订单编号 + */ + @ColumnWidth(20) + @ExcelProperty("一级品") + private Long firsts; + /** + * 订单编号 + */ + @ColumnWidth(20) + @ExcelProperty("二级品") + private Long second; + /** + * 订单编号 + */ + @ColumnWidth(20) + @ExcelProperty("三级品") + private Long thirdProduct; + /** + * 订单编号 + */ + @ColumnWidth(20) + @ExcelProperty("物料名称") + private Long materialName; + /** + * 订单编号 + */ + @ColumnWidth(20) + @ExcelProperty("数量") + private Long quantity; +// /** +// * 订单编号 +// */ +// @ColumnWidth(20) +// @ExcelProperty("计划数量") +// private Long stockArticle; + /** + * 订单编号 */ @ColumnWidth(20) - @ExcelProperty("预留5") - private String reserve5; + @ExcelProperty("货位数量") + private Long positionCode; /** * 订单编号 */ @ColumnWidth(20) - @ExcelProperty("订单编号") - private Long stockArticle; + @ExcelProperty("所在托盘") + private Long trayCode; } diff --git a/blade-service/logpm-distribution/src/main/java/com/logpm/distribution/excel/DistributionReservationStockarticleExcel.java b/blade-service/logpm-distribution/src/main/java/com/logpm/distribution/excel/DistributionReservationStockarticleExcel.java index c9a245fc3..c7b74d1b5 100644 --- a/blade-service/logpm-distribution/src/main/java/com/logpm/distribution/excel/DistributionReservationStockarticleExcel.java +++ b/blade-service/logpm-distribution/src/main/java/com/logpm/distribution/excel/DistributionReservationStockarticleExcel.java @@ -24,6 +24,7 @@ import com.alibaba.excel.annotation.write.style.HeadRowHeight; import lombok.Data; import java.io.Serializable; +import java.util.Date; /** @@ -40,65 +41,100 @@ public class DistributionReservationStockarticleExcel implements Serializable { private static final long serialVersionUID = 1L; + + /** + * 预约编号 + */ + @ColumnWidth(20) + @ExcelProperty("预约单号") + private String reservationCode; + /** + * 预约编号 + */ + @ColumnWidth(20) + @ExcelProperty("运单号") + private String waybillNumber; + /** + * 预约编号 + */ + @ColumnWidth(20) + @ExcelProperty("订单自编号") + private String orderCode; + /** + * 预约编号 + */ + @ColumnWidth(20) + @ExcelProperty("商场名称") + private String mallName; + /** - * 租户号 + * 预约编号 */ @ColumnWidth(20) - @ExcelProperty("租户号") - private String tenantId; + @ExcelProperty("门店名称") + private String storeName; /** - * 是否已删除 + * 预约编号 */ @ColumnWidth(20) - @ExcelProperty("是否已删除") - private Integer isDeleted; + @ExcelProperty("货物名称") + private String descriptionGoods; /** * 预约编号 */ @ColumnWidth(20) - @ExcelProperty("预约编号") - private String reservationId; + @ExcelProperty("品牌") + private String brand; + /** + * 预约编号 + */ + @ColumnWidth(20) + @ExcelProperty("收货单位") + private String consigneeUnit; /** * 订单编号 */ @ColumnWidth(20) - @ExcelProperty("订单编号") - private String stockarticleId; + @ExcelProperty("订单来源") + private String resource; + /** * 预约数量 */ @ColumnWidth(20) - @ExcelProperty("预约数量") - private String reservationNum; + @ExcelProperty("服务类型") + private String deliveryType; /** - * 预留1 + * 预约数量 */ @ColumnWidth(20) - @ExcelProperty("预留1") - private String reserve1; + @ExcelProperty("预约时间 ") + private Date reservationDate; /** - * 预留2 + * 预约数量 */ @ColumnWidth(20) - @ExcelProperty("预留2") - private String reserve2; + @ExcelProperty("收货人") + private String consignee; /** - * 预留3 + * 预约数量 */ @ColumnWidth(20) - @ExcelProperty("预留3") - private String reserve3; + @ExcelProperty("手机号") + private String deliveryPhone; /** - * 预留4 + * 预约数量 */ @ColumnWidth(20) - @ExcelProperty("预留4") - private String reserve4; + @ExcelProperty("收货地址") + private String deliveryAddress; /** - * 预留5 + * 预约数量 */ @ColumnWidth(20) - @ExcelProperty("预留5") - private String reserve5; + @ExcelProperty("包件数量") + private String reservationNum; + + } diff --git a/blade-service/logpm-distribution/src/main/java/com/logpm/distribution/mapper/DistributionReservationMapper.xml b/blade-service/logpm-distribution/src/main/java/com/logpm/distribution/mapper/DistributionReservationMapper.xml index 6a0eeac94..5c2c9cc31 100644 --- a/blade-service/logpm-distribution/src/main/java/com/logpm/distribution/mapper/DistributionReservationMapper.xml +++ b/blade-service/logpm-distribution/src/main/java/com/logpm/distribution/mapper/DistributionReservationMapper.xml @@ -927,7 +927,7 @@ - + + select DISTINCT ldr.reservation_code reservationCode,ldr.reservation_date reservationDate,ldr.delivery_type deliveryType,ldr.consignee,ldr.delivery_address deliveryAddress + ,ldr.delivery_phone deliveryPhone,ldr.reservation_num reservationNum,ldr.warehouse_name warehouseName, + ldpl.waybill_number waybillNumber,ldpl.service_number serviceNumber,ldpl.order_code orderCode,ldpl.order_package_code orderPackageCode,ldpl.send_warehouse_name sendWarehouseName + ,ldpl.accept_warehouse_name acceptWarehouseName,ldpl.warehouse_entry_time_end warehouseEntryTimeEnd, + ldpl.train_number trainNumber,ldpl.firsts,ldpl.second,ldpl.third_product thirdProduct,ldpl.material_name materialName,ldpl.quantity, lwtg.tray_code trayCode, + lwug.position_code positionCode + + from logpm_distribution_reservation_package ldrp + LEFT JOIN logpm_distribution_reservation ldr on ldr.id = ldrp.reservation_id + LEFT JOIN logpm_distribution_parcel_list ldpl on ldpl.id = ldrp.parce_list_id + LEFT JOIN logpm_warehouse_tray_goods lwtg on lwtg.association_id = ldpl.id and lwtg.warehouse_id = #{param.warehouseId} + LEFT JOIN logpm_warehouse_updown_goods lwug on lwug.association_id = ldpl.id and lwug.warehouse_id = #{param.warehouseId} + + ldrp.packet_bar_status in (1,3) + and ldrs.reservation_id = #{param.reservationId } + and = #{param. } + and = #{param. } + and = #{param. } + and = #{param. } + and = #{param. } + and = #{param. } + and = #{param. } + + - + + + select ldr.reservation_code reservationCode,ldr.reservation_date reservationDate,ldr.delivery_type deliveryType,ldr.consignee,ldr.delivery_address deliveryAddress + ,ldr.delivery_phone deliveryPhone,ldr.reservation_num reservationNum, + ldsa.waybill_number waybillNumber,ldsa.order_code orderCode,ldsa.mall_name mallName,ldsa.store_name storeName,ldsa.description_goods descriptionGoods,ldsa.brand, + ldsa.consignee_unit consigneeUnit ,ldsa.resource + from logpm_distribution_reservation ldr + LEFT JOIN logpm_distribution_reservation_stockarticle ldrs on ldr.id = ldrs.reservation_id + LEFT JOIN logpm_distribution_stock_article ldsa on ldsa.id = ldrs.stock_article_id + + ldrs.stock_article_status in (1,3) + and ldrs.reservation_id = #{param.reservationId } + and = #{param. } + and = #{param. } + and = #{param. } + and = #{param. } + and = #{param. } + and = #{param. } + and = #{param. } + and = #{param. } + + + - SELECT * FROM logpm_distribution_reservation_stocklist ${ew.customSqlSegment} + + + + + + + + + diff --git a/blade-service/logpm-distribution/src/main/java/com/logpm/distribution/mapper/DistributionSignforMapper.xml b/blade-service/logpm-distribution/src/main/java/com/logpm/distribution/mapper/DistributionSignforMapper.xml index 61667f046..1567df861 100644 --- a/blade-service/logpm-distribution/src/main/java/com/logpm/distribution/mapper/DistributionSignforMapper.xml +++ b/blade-service/logpm-distribution/src/main/java/com/logpm/distribution/mapper/DistributionSignforMapper.xml @@ -530,15 +530,15 @@ order by create_time desc limit 1 + + + + + + + diff --git a/blade-service/logpm-distribution/src/main/java/com/logpm/distribution/mapper/DistributionReservationStockarticleMapper.java b/blade-service/logpm-distribution/src/main/java/com/logpm/distribution/mapper/DistributionReservationStockarticleMapper.java index e9a649931..2d725a81f 100644 --- a/blade-service/logpm-distribution/src/main/java/com/logpm/distribution/mapper/DistributionReservationStockarticleMapper.java +++ b/blade-service/logpm-distribution/src/main/java/com/logpm/distribution/mapper/DistributionReservationStockarticleMapper.java @@ -19,6 +19,7 @@ package com.logpm.distribution.mapper; import com.baomidou.mybatisplus.core.conditions.Wrapper; import com.baomidou.mybatisplus.core.mapper.BaseMapper; import com.baomidou.mybatisplus.core.metadata.IPage; +import com.logpm.distribution.dto.DistributionReservationStockarticleDTO; import com.logpm.distribution.entity.DistributionReservationStockarticleEntity; import com.logpm.distribution.excel.DistributionReservationStockarticleExcel; import com.logpm.distribution.vo.DistributionReservationStockarticleVO; @@ -52,7 +53,7 @@ public interface DistributionReservationStockarticleMapper extends BaseMapper exportDistributionReservationStockarticle(@Param("ew") Wrapper queryWrapper); + List exportDistributionReservationStockarticle(@Param("param") DistributionReservationStockarticleDTO queryWrapper); /** * 物理删除预约订单中间表 diff --git a/blade-service/logpm-distribution/src/main/java/com/logpm/distribution/mapper/DistributionReservationStockarticleMapper.xml b/blade-service/logpm-distribution/src/main/java/com/logpm/distribution/mapper/DistributionReservationStockarticleMapper.xml index 439b49c95..6b52e664a 100644 --- a/blade-service/logpm-distribution/src/main/java/com/logpm/distribution/mapper/DistributionReservationStockarticleMapper.xml +++ b/blade-service/logpm-distribution/src/main/java/com/logpm/distribution/mapper/DistributionReservationStockarticleMapper.xml @@ -58,14 +58,15 @@ ldrs.stock_article_status in (1,3) and ldrs.reservation_id = #{param.reservationId } - and = #{param. } - and = #{param. } - and = #{param. } - and = #{param. } - and = #{param. } - and = #{param. } - and = #{param. } - and = #{param. } + and ldsa.waybill_number like concat('%',#{param.waybillNumber },'%') + and ldsa.order_code like concat('%', #{param.orderCode },'%') + and ldsa.mall_name like concat('%', #{param.mallName },'%') + and ldsa.store_name like concat('%', #{param.storeName },'%') + and ldsa.description_goods like concat('%', #{param.descriptionGoods },'%') + and ldsa.brand like concat('%', #{param.brand },'%') + and ldsa.consignee_unit like concat('%', #{param.consigneeUnit },'%') + and ldsa.resource like concat('%',#{param.resource },'%') + and ldr.delivery_type = #{param.deliveryType} diff --git a/blade-service/logpm-distribution/src/main/java/com/logpm/distribution/mapper/DistributionReservationStocklistMapper.xml b/blade-service/logpm-distribution/src/main/java/com/logpm/distribution/mapper/DistributionReservationStocklistMapper.xml index c949da644..1c1c9fb5f 100644 --- a/blade-service/logpm-distribution/src/main/java/com/logpm/distribution/mapper/DistributionReservationStocklistMapper.xml +++ b/blade-service/logpm-distribution/src/main/java/com/logpm/distribution/mapper/DistributionReservationStocklistMapper.xml @@ -35,7 +35,32 @@ + select GROUP_CONCAT(t.title) + from (select CONCAT(ldpl.third_product,'(',count(ldpl.id),')') title + from logpm_distribution_reservation_package ldrp + left join logpm_distribution_parcel_list ldpl on ldrp.stock_article_id = ldpl.stock_article_id + where ldrp.reservation_id = #{reservationId} + and ldrp.stock_article_id = #{stockArticleId} + and ldrp.packet_bar_status != 2 + group by ldpl.third_product) t + + diff --git a/blade-service/logpm-distribution/src/main/java/com/logpm/distribution/service/IDistributionReservationPackageService.java b/blade-service/logpm-distribution/src/main/java/com/logpm/distribution/service/IDistributionReservationPackageService.java index 3921983d3..a04bca40f 100644 --- a/blade-service/logpm-distribution/src/main/java/com/logpm/distribution/service/IDistributionReservationPackageService.java +++ b/blade-service/logpm-distribution/src/main/java/com/logpm/distribution/service/IDistributionReservationPackageService.java @@ -16,7 +16,6 @@ */ package com.logpm.distribution.service; -import com.baomidou.mybatisplus.core.conditions.Wrapper; import com.baomidou.mybatisplus.core.metadata.IPage; import com.logpm.distribution.dto.DistributionReservationPackageDTO; import com.logpm.distribution.dto.DistributionStockArticleDTO; @@ -91,4 +90,6 @@ public interface IDistributionReservationPackageService extends BaseService getStockArticlePackageList(List reservationPackageEntity); List selectClientStockupPackTray(Long reservationId); + + String getConcatThirdProductByOrderId(Long reservationId, Long stockArticleId); } diff --git a/blade-service/logpm-distribution/src/main/java/com/logpm/distribution/service/impl/DistributionDeliveryListServiceImpl.java b/blade-service/logpm-distribution/src/main/java/com/logpm/distribution/service/impl/DistributionDeliveryListServiceImpl.java index 7339cccb8..9ead95988 100644 --- a/blade-service/logpm-distribution/src/main/java/com/logpm/distribution/service/impl/DistributionDeliveryListServiceImpl.java +++ b/blade-service/logpm-distribution/src/main/java/com/logpm/distribution/service/impl/DistributionDeliveryListServiceImpl.java @@ -17,7 +17,6 @@ package com.logpm.distribution.service.impl; import cn.hutool.core.date.DateUtil; -import com.baomidou.mybatisplus.core.conditions.Wrapper; import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper; import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper; import com.baomidou.mybatisplus.core.conditions.update.UpdateWrapper; @@ -39,12 +38,13 @@ import com.logpm.distribution.excel.DistributionDeliveryListExcel; import com.logpm.distribution.mapper.*; import com.logpm.distribution.service.*; import com.logpm.distribution.vo.*; -import com.logpm.distribution.vo.app.*; +import com.logpm.distribution.vo.app.DistributionAppDeliveryListVO; +import com.logpm.distribution.vo.app.DistributionAppDeliverySelfVO; +import com.logpm.distribution.vo.app.DistributionAppParcelListVO; +import com.logpm.distribution.vo.app.DistributionAppReservationVO; import com.logpm.distribution.vo.print.PrintPreviewVO; import com.logpm.distribution.wrapper.*; -import com.logpm.warehouse.entity.WarehouseRetentionScanEntity; import com.logpm.warehouse.entity.WarehouseTrayGoodsEntity; -import com.logpm.warehouse.feign.IWarehouseRetentionScanClient; import com.logpm.warehouse.feign.IWarehouseTrayGoodsClient; import com.logpm.warehouse.feign.IWarehouseTrayTypeClient; import com.logpm.warehouse.feign.IWarehouseUpdownTypeClient; @@ -52,7 +52,6 @@ import com.logpm.warehouse.vo.TrayTypeDataVO; import lombok.AllArgsConstructor; import lombok.extern.log4j.Log4j2; import org.apache.commons.lang.StringUtils; -import org.apache.ibatis.scripting.xmltags.ForEachSqlNode; import org.jetbrains.annotations.NotNull; import org.springblade.common.constant.DictBizConstant; import org.springblade.common.constant.DistributionTypeConstant; @@ -65,7 +64,10 @@ import org.springblade.common.constant.loading.LoadingIsInsertConstant; import org.springblade.common.constant.loading.LoadingStatusConstant; import org.springblade.common.constant.order.OrderReservationStatusConstant; import org.springblade.common.constant.order.OrderStatusConstant; -import org.springblade.common.constant.orderpackage.*; +import org.springblade.common.constant.orderpackage.OrderPackageFreezeStatusConstant; +import org.springblade.common.constant.orderpackage.OrderPackageLoadingStatusConstant; +import org.springblade.common.constant.orderpackage.OrderPackageReservationStatusConstant; +import org.springblade.common.constant.orderpackage.OrderPackageStatusConstant; import org.springblade.common.constant.printTemplate.PrintTemplateStatusConstant; import org.springblade.common.constant.reservation.*; import org.springblade.common.constant.stockup.StockAssignStatusConstant; @@ -88,19 +90,14 @@ import org.springblade.core.tool.utils.ObjectUtil; import org.springblade.system.cache.DictBizCache; import org.springblade.system.feign.IDictBizClient; import org.springframework.beans.BeanUtils; -import org.springframework.beans.factory.annotation.Autowired; -import org.springframework.context.annotation.Lazy; -import org.springframework.data.redis.connection.ReactiveListCommands; import org.springframework.stereotype.Service; import org.springframework.transaction.annotation.Isolation; import org.springframework.transaction.annotation.Transactional; -import org.springframework.transaction.interceptor.TransactionAspectSupport; import java.math.BigDecimal; import java.text.SimpleDateFormat; import java.util.*; import java.util.concurrent.atomic.AtomicInteger; -import java.util.concurrent.atomic.AtomicReference; import java.util.function.Function; import java.util.stream.Collectors; @@ -155,6 +152,7 @@ public class DistributionDeliveryListServiceImpl extends BaseServiceImpl temp = new HashMap<>(); - DistributionStockArticleEntity distributionStockArticleEntity = distributionStockArticleMapper.selectById(distributionReservationStockarticleEntity.getStockArticleId()); - temp.put("合同号", distributionStockArticleEntity.getOrderCode()); - temp.put("产品名称", distributionStockArticleEntity.getDescriptionGoods()); + Long stockArticleId = distributionReservationStockarticleEntity.getStockArticleId(); + Long reservationId = distributionReservationStockarticleEntity.getReservationId(); + DistributionStockArticleEntity distributionStockArticleEntity = distributionStockArticleMapper.selectById(stockArticleId); + String orderCode = distributionStockArticleEntity.getOrderCode(); + + + temp.put("合同号", orderCode); + + //查询产品名称拼接 + String productName = distributionReservationPackageService.getConcatThirdProductByOrderId(reservationId,stockArticleId); + + temp.put("产品名称", productName); //todo 单位是否需要查询物料表 temp.put("单位", getUnit(distributionStockArticleEntity.getId())); temp.put("数量", distributionReservationStockarticleEntity.getReservationNum()); diff --git a/blade-service/logpm-distribution/src/main/java/com/logpm/distribution/service/impl/DistributionReservationPackageServiceImpl.java b/blade-service/logpm-distribution/src/main/java/com/logpm/distribution/service/impl/DistributionReservationPackageServiceImpl.java index 7b286c8c7..a817078fd 100644 --- a/blade-service/logpm-distribution/src/main/java/com/logpm/distribution/service/impl/DistributionReservationPackageServiceImpl.java +++ b/blade-service/logpm-distribution/src/main/java/com/logpm/distribution/service/impl/DistributionReservationPackageServiceImpl.java @@ -148,5 +148,10 @@ public class DistributionReservationPackageServiceImpl extends BaseServiceImpl Date: Thu, 9 Nov 2023 17:25:11 +0800 Subject: [PATCH 31/36] =?UTF-8?q?=E4=BF=AE=E6=94=B9=E5=9C=A8=E5=BA=93?= =?UTF-8?q?=E8=BF=90=E5=8D=95=E6=9F=A5=E8=AF=A2?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../distribution/vo/DistributionStockVO.java | 7 ++ .../DistributionStockupAppController.java | 1 + .../DistributionStockController.java | 5 +- .../wrapper/DistributionStockWrapper.java | 61 +++++++++++++ .../WarehouseWaybillController.java | 23 ++--- .../warehouse/dto/WarehouseWaybillDTO.java | 6 ++ .../warehouse/mapper/TaskQuestMapper.java | 31 +++++-- .../warehouse/mapper/TaskQuestMapper.xml | 53 +++++++++-- .../mapper/WarehouseWaybillMapper.java | 3 + .../mapper/WarehouseWaybillMapper.xml | 68 ++++++++++++++ .../service/IWarehouseWaybillService.java | 2 + .../service/impl/TaskQuestServiceImpl.java | 91 ++++++++++++------- .../WarehouseWarehousingEntryServiceImpl.java | 8 +- .../impl/WarehouseWaybillServiceImpl.java | 23 +++++ 14 files changed, 321 insertions(+), 61 deletions(-) create mode 100644 blade-service/logpm-distribution/src/main/java/com/logpm/distribution/wrapper/DistributionStockWrapper.java diff --git a/blade-service-api/logpm-distribution-api/src/main/java/com/logpm/distribution/vo/DistributionStockVO.java b/blade-service-api/logpm-distribution-api/src/main/java/com/logpm/distribution/vo/DistributionStockVO.java index cf43d9d0e..b9e870e7d 100644 --- a/blade-service-api/logpm-distribution-api/src/main/java/com/logpm/distribution/vo/DistributionStockVO.java +++ b/blade-service-api/logpm-distribution-api/src/main/java/com/logpm/distribution/vo/DistributionStockVO.java @@ -17,6 +17,7 @@ package com.logpm.distribution.vo; import com.logpm.distribution.entity.DistributionStockEntity; +import io.swagger.annotations.ApiModelProperty; import lombok.Data; import lombok.EqualsAndHashCode; @@ -43,4 +44,10 @@ public class DistributionStockVO extends DistributionStockEntity { private Integer whole;//全部 + /** + * 出库类型 + */ + @ApiModelProperty(value = "出库类型") + private String outboundTypeName; + } diff --git a/blade-service/logpm-distribution/src/main/java/com/logpm/distribution/appcontroller/DistributionStockupAppController.java b/blade-service/logpm-distribution/src/main/java/com/logpm/distribution/appcontroller/DistributionStockupAppController.java index c9f5a1d62..ee943a5ee 100644 --- a/blade-service/logpm-distribution/src/main/java/com/logpm/distribution/appcontroller/DistributionStockupAppController.java +++ b/blade-service/logpm-distribution/src/main/java/com/logpm/distribution/appcontroller/DistributionStockupAppController.java @@ -609,6 +609,7 @@ public class DistributionStockupAppController extends BladeController { } entity.setConditions("0"); entity.setType(2); + entity.setOutboundType(distributionStockupEntity.getTypeService()); distributionStockService.save(entity); //修改订单备货状态 distributionAsyncService.updateStockArticleStock(one.getStockArticleId()); diff --git a/blade-service/logpm-distribution/src/main/java/com/logpm/distribution/controller/DistributionStockController.java b/blade-service/logpm-distribution/src/main/java/com/logpm/distribution/controller/DistributionStockController.java index 3cfa123b5..b802748ca 100644 --- a/blade-service/logpm-distribution/src/main/java/com/logpm/distribution/controller/DistributionStockController.java +++ b/blade-service/logpm-distribution/src/main/java/com/logpm/distribution/controller/DistributionStockController.java @@ -25,6 +25,7 @@ import com.logpm.distribution.entity.DistributionStockEntity; import com.logpm.distribution.excel.DistributionStockExcel; import com.logpm.distribution.service.IDistributionStockService; import com.logpm.distribution.vo.DistributionStockVO; +import com.logpm.distribution.wrapper.DistributionStockWrapper; import io.swagger.annotations.Api; import io.swagger.annotations.ApiOperation; import io.swagger.annotations.ApiParam; @@ -76,9 +77,9 @@ public class DistributionStockController extends BladeController { @GetMapping("/list") @ApiOperationSupport(order = 2) @ApiOperation(value = "分页", notes = "传入distributionStock") - public R> list(@ApiIgnore @RequestParam Map distributionStock, Query query) { + public R> list(@ApiIgnore @RequestParam Map distributionStock, Query query) { IPage pages = distributionStockService.page(Condition.getPage(query), Condition.getQueryWrapper(distributionStock, DistributionStockEntity.class)); - return R.data(pages); + return R.data(DistributionStockWrapper.build().pageVO(pages)); } /** diff --git a/blade-service/logpm-distribution/src/main/java/com/logpm/distribution/wrapper/DistributionStockWrapper.java b/blade-service/logpm-distribution/src/main/java/com/logpm/distribution/wrapper/DistributionStockWrapper.java new file mode 100644 index 000000000..dac415648 --- /dev/null +++ b/blade-service/logpm-distribution/src/main/java/com/logpm/distribution/wrapper/DistributionStockWrapper.java @@ -0,0 +1,61 @@ +package com.logpm.distribution.wrapper; + +import com.baomidou.mybatisplus.core.toolkit.ObjectUtils; +import com.logpm.distribution.entity.DistributionDeliveryListEntity; +import com.logpm.distribution.entity.DistributionStockEntity; +import com.logpm.distribution.entity.DistributionStockListEntity; +import com.logpm.distribution.entity.DistrilbutionBillLadingEntity; +import com.logpm.distribution.service.IDistributionDeliveryListService; +import com.logpm.distribution.service.IDistributionStockListService; +import com.logpm.distribution.service.IDistrilbutionBillLadingService; +import com.logpm.distribution.vo.DistributionStockVO; +import lombok.RequiredArgsConstructor; +import lombok.extern.log4j.Log4j2; +import org.springblade.common.constant.DictBizConstant; +import org.springblade.common.constant.DistributionTypeConstant; +import org.springblade.core.mp.support.BaseEntityWrapper; +import org.springblade.core.tool.utils.BeanUtil; +import org.springblade.core.tool.utils.SpringUtil; +import org.springblade.system.cache.DictBizCache; + +import java.util.Objects; +@Log4j2 +public class DistributionStockWrapper extends BaseEntityWrapper { + + private IDistributionStockListService stockListService = SpringUtil.getBean(IDistributionStockListService.class); + private IDistributionDeliveryListService deliveryListService = SpringUtil.getBean(IDistributionDeliveryListService.class); + private IDistrilbutionBillLadingService billLadingService = SpringUtil.getBean(IDistrilbutionBillLadingService.class); + + public static DistributionStockWrapper build(){ + return new DistributionStockWrapper(); + } + + + @Override + public DistributionStockVO entityVO(DistributionStockEntity entity) { + + DistributionStockVO distributionStockVO = new DistributionStockVO(); + if(ObjectUtils.isNotNull(distributionStockVO)){ + //查询订单自编号 + if (ObjectUtils.isNotNull(entity.getStockListId())) { + DistributionStockListEntity byId = stockListService.getById(entity.getStockListId()); + if(byId.getSourceType().equals("1")){ + entity.setOrderSelfNumbering(byId.getIncomingBatch()); + } + } + + if(DistributionTypeConstant.ziti.getValue().equals(entity.getOutboundType())){ + DistrilbutionBillLadingEntity byId1 = billLadingService.getById(entity.getBillLadingId()); + entity.setDeliveryListCode(byId1.getPickupBatch()); + }else{ + DistributionDeliveryListEntity byId1 = deliveryListService.getById(entity.getReservationId()); + entity.setDeliveryListCode(byId1.getNoteNumber()); + } + distributionStockVO = Objects.requireNonNull(BeanUtil.copy(entity,DistributionStockVO.class)); + distributionStockVO.setOutboundTypeName(DictBizCache.getValue(DictBizConstant.DISTRIBUTION_TYPE, entity.getOutboundType())); + } + + + return distributionStockVO; + } +} diff --git a/blade-service/logpm-warehouse/src/main/java/com/logpm/warehouse/controller/WarehouseWaybillController.java b/blade-service/logpm-warehouse/src/main/java/com/logpm/warehouse/controller/WarehouseWaybillController.java index 77c17b856..252cb387c 100644 --- a/blade-service/logpm-warehouse/src/main/java/com/logpm/warehouse/controller/WarehouseWaybillController.java +++ b/blade-service/logpm-warehouse/src/main/java/com/logpm/warehouse/controller/WarehouseWaybillController.java @@ -97,17 +97,18 @@ public class WarehouseWaybillController extends BladeController { @ApiOperationSupport(order = 2) @ApiOperation(value = "分页", notes = "传入warehouseWaybill") public R> list(@ApiIgnore @RequestParam Map warehouseWaybill, Query query) { - QueryWrapper queryWrapper = Condition.getQueryWrapper(warehouseWaybill, WarehouseWaybillEntity.class); - //获取当前登录人仓库 - List myWatchWarehouse = basicdataWarehouseClient.getMyWatchWarehouse(); - List collect = myWatchWarehouse.stream() - .map(BasicdataWarehouseEntity::getId) - .collect(Collectors.toList()); - queryWrapper.lambda() - .in(collect.size() > 0, WarehouseWaybillEntity::getDepartureWarehouseId, collect) - .or() - .in(collect.size() > 0, WarehouseWaybillEntity::getDestinationWarehouseId, collect); - IPage pages = warehouseWaybillService.page(Condition.getPage(query), queryWrapper); +// QueryWrapper queryWrapper = Condition.getQueryWrapper(warehouseWaybill, WarehouseWaybillEntity.class); +// //获取当前登录人仓库 +// List myWatchWarehouse = basicdataWarehouseClient.getMyWatchWarehouse(); +// List collect = myWatchWarehouse.stream() +// .map(BasicdataWarehouseEntity::getId) +// .collect(Collectors.toList()); +// queryWrapper.lambda() +// .in(collect.size() > 0, WarehouseWaybillEntity::getDepartureWarehouseId, collect) +// .or() +// .in(collect.size() > 0, WarehouseWaybillEntity::getDestinationWarehouseId, collect); + + IPage pages = warehouseWaybillService.pageInfo(Condition.getPage(query), warehouseWaybill); return R.data(WarehouseWaybillWrapper.build().pageVO(pages)); } diff --git a/blade-service/logpm-warehouse/src/main/java/com/logpm/warehouse/dto/WarehouseWaybillDTO.java b/blade-service/logpm-warehouse/src/main/java/com/logpm/warehouse/dto/WarehouseWaybillDTO.java index 53cb427e2..2eedc6e46 100644 --- a/blade-service/logpm-warehouse/src/main/java/com/logpm/warehouse/dto/WarehouseWaybillDTO.java +++ b/blade-service/logpm-warehouse/src/main/java/com/logpm/warehouse/dto/WarehouseWaybillDTO.java @@ -20,6 +20,8 @@ import com.logpm.warehouse.entity.WarehouseWaybillEntity; import lombok.Data; import lombok.EqualsAndHashCode; +import java.util.List; + /** * 运单表 数据传输对象实体类 * @@ -31,4 +33,8 @@ import lombok.EqualsAndHashCode; public class WarehouseWaybillDTO extends WarehouseWaybillEntity { private static final long serialVersionUID = 1L; + private List departureWarehouseIds; + + private List destinationWarehouseIds; + } diff --git a/blade-service/logpm-warehouse/src/main/java/com/logpm/warehouse/mapper/TaskQuestMapper.java b/blade-service/logpm-warehouse/src/main/java/com/logpm/warehouse/mapper/TaskQuestMapper.java index 43953baac..d88161936 100644 --- a/blade-service/logpm-warehouse/src/main/java/com/logpm/warehouse/mapper/TaskQuestMapper.java +++ b/blade-service/logpm-warehouse/src/main/java/com/logpm/warehouse/mapper/TaskQuestMapper.java @@ -59,11 +59,11 @@ public interface TaskQuestMapper extends BaseMapper { List selectallocationList(@Param("questNum")String questNum, @Param("param") TaskSearchDTO taskSearchDTO); - List selectcontractList(IPage page, @Param("param") TaskSearchDTO taskSearchDTO,@Param("collect") List collect); + List selectcontractList(IPage page, @Param("param") TaskSearchDTO taskSearchDTO,@Param("collect") List collect,@Param("questNum") String questNum ); void setSqlMode(); - List selecttrayList(IPage page,@Param("param") TaskSearchDTO taskSearchDTO,@Param("collect") List collect); + List selecttrayList(IPage page,@Param("param") TaskSearchDTO taskSearchDTO,@Param("collect") List collect,@Param("questNum") String questNum); /** * 查询包件托盘码 @@ -81,11 +81,12 @@ public interface TaskQuestMapper extends BaseMapper { List findMaterialList(@Param("param") TaskSearchDTO taskSearchDTO); - List selectStripListByQuestId(IPage page,@Param("questId") Long id); + List selectStripListByQuestId(IPage page,@Param("questId") Long id,@Param("questNum") String questNum); - List selectInventoryListByQuestId(IPage page,@Param("questId") Long id); - List selectZeroListByQuestId(IPage page,@Param("questId") Long id); + List selectInventoryListByQuestId(IPage page,@Param("questId") Long id,@Param("questNum") String questNum); + + List selectZeroListByQuestId(IPage page,@Param("questId") Long id,@Param("questNum") String questNum); String selectExitsInfo(@Param("questNum")String questNum); @@ -121,9 +122,27 @@ public interface TaskQuestMapper extends BaseMapper { List selectTaskTrayInfo(IPage page,@Param("questNum")String questNum,@Param("param") QuestDetailEntity questDetail); - List getQuestDetailInfo(@Param("questNum")String questNum,@Param("param")QuestDetailChildEntity questDetailChildEntity); + /** + * + * @param questNum + * @param questDetailChildEntity + * @return + */ + List selectQuestDetailChildInfo(@Param("questNum")String questNum, @Param("param")QuestDetailChildEntity questDetailChildEntity); + QuestDetailChildEntity selectQuestDetailChildInfoOne(@Param("questNum")String questNum, @Param("param")QuestDetailChildEntity questDetailChildEntity); Integer updateQuestDetailQuestStatus(@Param("questNum")String questNum,@Param("param") QuestDetailEntity q); Integer updatePositionCodeList(@Param("questNum") String questNum, @Param("list") List ls); + + Integer insertQuestDetailChildList(@Param("questNum")String questNum,@Param("list") List q); + + /** + * + * @param questNum + * @param q + * @return + */ + Integer updetaQuestDetailChildList(@Param("questNum")String questNum,@Param("list") List q); + } diff --git a/blade-service/logpm-warehouse/src/main/java/com/logpm/warehouse/mapper/TaskQuestMapper.xml b/blade-service/logpm-warehouse/src/main/java/com/logpm/warehouse/mapper/TaskQuestMapper.xml index 2d2037433..385ed0e7d 100644 --- a/blade-service/logpm-warehouse/src/main/java/com/logpm/warehouse/mapper/TaskQuestMapper.xml +++ b/blade-service/logpm-warehouse/src/main/java/com/logpm/warehouse/mapper/TaskQuestMapper.xml @@ -215,12 +215,50 @@ = #{item. } = #{item. }--> - WHERE `id` = #{ param.id } + WHERE `id` = #{ item.id } + + + update ${questNum} + + cargo_name = #{item.cargoName }, + quest_num = #{item.questNum }, + + + + + + + + + WHERE `id` = #{ item.id } + + + + INSERT INTO ${questNum} (`id`, `tenant_id`, `create_user`, `create_time`, `update_user`, `update_time`, + `create_dept`, `is_deleted`, `status`, `reserve1`, `reserve2`, `reserve3`, `reserve4`, `reserve5`, `quest_detail_id`, `cargo_name`, + `quest_num`, `warehouse_id`) + VALUES + + (#{item.id}, #{item.tenantId}, #{item.createUser}, #{item.createTime}, #{item.updateUser}, #{item.updateTime}, #{item.createDept}, #{item.isDeleted} + , #{item.status}, #{item.reserve1}, #{item.reserve2}, #{item.reserve3}, #{item.reserve4}, #{item.reserve5}, + #{item.questDetailId}, #{item.cargoName}, #{item.questNum} , #{item.warehouseId} ) + + + - + select * + from ${questNum} + + is_deleted = 0 + and quest_detail_id = #{param.questDetailId } + and warehouse_id = #{param.warehouseId } + + + SELECT lqd.id id, + lqd.id id, lqd.order_code orderCode, lqd.quest_id questId, lqd.order_id orderId, @@ -352,7 +391,7 @@ ldpl.send_warehouse_name sendWarehouseName, ldsa.consignee_unit consigneeUnit FROM - logpm_quest_detail lqd + ${questNum} lqd JOIN logpm_distribution_parcel_list ldpl ON lqd.order_package_id = ldpl.id left join logpm_distribution_stock_article ldsa on ldsa.id = ldpl.stock_article_id AND lqd.quest_target =1 @@ -375,7 +414,7 @@ ldsl.service_number serviceNumber, ldsl.description_goods descriptionGoods FROM - logpm_quest_detail lqd + ${questNum} lqd JOIN logpm_distribution_stock_list ldsl ON lqd.stock_id = ldsl.id AND lqd.quest_target =3 @@ -398,7 +437,7 @@ ldsa.consignee_address consigneeAddress, ldsa.consignee_mobile consigneeMobile FROM - logpm_quest_detail lqd + ${questNum} lqd JOIN logpm_distribution_stock_article ldsa ON lqd.order_id = ldsa.id AND lqd.quest_target =2 diff --git a/blade-service/logpm-warehouse/src/main/java/com/logpm/warehouse/mapper/WarehouseWaybillMapper.java b/blade-service/logpm-warehouse/src/main/java/com/logpm/warehouse/mapper/WarehouseWaybillMapper.java index ae900a958..2ef4e9034 100644 --- a/blade-service/logpm-warehouse/src/main/java/com/logpm/warehouse/mapper/WarehouseWaybillMapper.java +++ b/blade-service/logpm-warehouse/src/main/java/com/logpm/warehouse/mapper/WarehouseWaybillMapper.java @@ -19,6 +19,7 @@ package com.logpm.warehouse.mapper; import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper; import com.baomidou.mybatisplus.core.mapper.BaseMapper; import com.baomidou.mybatisplus.core.metadata.IPage; +import com.logpm.warehouse.dto.WarehouseWaybillDTO; import com.logpm.warehouse.entity.WarehouseWaybillEntity; import com.logpm.warehouse.vo.WarehouseWaybillVO; import org.apache.ibatis.annotations.Param; @@ -45,4 +46,6 @@ public interface WarehouseWaybillMapper extends BaseMapper exportWarehouseWarehousingDetail(@Param("ew") QueryWrapper queryWrapper); + + IPage pageInfo(IPage page,@Param("param") WarehouseWaybillDTO warehouseWaybillDTO); } diff --git a/blade-service/logpm-warehouse/src/main/java/com/logpm/warehouse/mapper/WarehouseWaybillMapper.xml b/blade-service/logpm-warehouse/src/main/java/com/logpm/warehouse/mapper/WarehouseWaybillMapper.xml index 5a4085f64..92295b9eb 100644 --- a/blade-service/logpm-warehouse/src/main/java/com/logpm/warehouse/mapper/WarehouseWaybillMapper.xml +++ b/blade-service/logpm-warehouse/src/main/java/com/logpm/warehouse/mapper/WarehouseWaybillMapper.xml @@ -60,6 +60,74 @@ + - - update logpm_distribution_parcel_list set quantity = quantity - #{num} @@ -778,5 +773,58 @@ lwtg.tray_code, lwug.position_code; + diff --git a/blade-service/logpm-distribution/src/main/java/com/logpm/distribution/mapper/DistributionStockArticleMapper.java b/blade-service/logpm-distribution/src/main/java/com/logpm/distribution/mapper/DistributionStockArticleMapper.java index f377861bf..47899bf53 100644 --- a/blade-service/logpm-distribution/src/main/java/com/logpm/distribution/mapper/DistributionStockArticleMapper.java +++ b/blade-service/logpm-distribution/src/main/java/com/logpm/distribution/mapper/DistributionStockArticleMapper.java @@ -52,10 +52,10 @@ public interface DistributionStockArticleMapper extends BaseMapper exportDistributionStockArticle(@Param("ew") Wrapper queryWrapper); + List exportDistributionStockArticle(@Param("paramMap") Map paramMap, @Param("idArr") List idArr); void addHandQuantity(@Param("id") Long id,@Param("num") int num); diff --git a/blade-service/logpm-distribution/src/main/java/com/logpm/distribution/mapper/DistributionStockArticleMapper.xml b/blade-service/logpm-distribution/src/main/java/com/logpm/distribution/mapper/DistributionStockArticleMapper.xml index e7b096db3..625a61e5b 100644 --- a/blade-service/logpm-distribution/src/main/java/com/logpm/distribution/mapper/DistributionStockArticleMapper.xml +++ b/blade-service/logpm-distribution/src/main/java/com/logpm/distribution/mapper/DistributionStockArticleMapper.xml @@ -55,11 +55,6 @@ select * from logpm_distribution_stock_article where is_deleted = 0 - - - update logpm_distribution_stock_article set hand_quantity = hand_quantity + #{num} where id = #{id} @@ -646,6 +641,112 @@ WHERE ldsa.id = #{stockArticleId} + diff --git a/blade-service/logpm-distribution/src/main/java/com/logpm/distribution/mapper/DistributionStockupMapper.java b/blade-service/logpm-distribution/src/main/java/com/logpm/distribution/mapper/DistributionStockupMapper.java index 61329e821..3f55506a9 100644 --- a/blade-service/logpm-distribution/src/main/java/com/logpm/distribution/mapper/DistributionStockupMapper.java +++ b/blade-service/logpm-distribution/src/main/java/com/logpm/distribution/mapper/DistributionStockupMapper.java @@ -16,19 +16,21 @@ */ package com.logpm.distribution.mapper; -import com.baomidou.mybatisplus.core.conditions.Wrapper; import com.baomidou.mybatisplus.core.mapper.BaseMapper; import com.baomidou.mybatisplus.core.metadata.IPage; import com.logpm.distribution.dto.app.StockupDTO; import com.logpm.distribution.dto.app.StockupZeroDTO; import com.logpm.distribution.entity.DistributionStockupEntity; -import com.logpm.distribution.excel.DistributionStockupExcel; +import com.logpm.distribution.excel.DistributionCityExcel; +import com.logpm.distribution.excel.DistributionMarketExcel; +import com.logpm.distribution.excel.DistributionSelfExcel; import com.logpm.distribution.vo.*; import com.logpm.distribution.vo.app.StockupZeroVO; import org.apache.ibatis.annotations.Mapper; import org.apache.ibatis.annotations.Param; import java.util.List; +import java.util.Map; /** * 备货信息表 Mapper 接口 @@ -48,15 +50,6 @@ public interface DistributionStockupMapper extends BaseMapper selectDistributionStockupPage(IPage page, DistributionStockupVO distributionStockup); - - /** - * 获取导出数据 - * - * @param queryWrapper - * @return - */ - List exportDistributionStockup(@Param("ew") Wrapper queryWrapper); - IPage pageList(IPage page,@Param("param") DistributionStockupEntity distributionStockupEntity); IPage selectStockupPage(IPage page, @Param("param") StockupDTO stockupDTO); @@ -227,4 +220,10 @@ public interface DistributionStockupMapper extends BaseMapper exportMarket(@Param("paramMap") Map paramMap, @Param("idArr") List idArr); + + List exportCity(@Param("paramMap") Map paramMap, @Param("idArr") List idArr); + + List exportSelf(@Param("paramMap") Map paramMap, @Param("idArr") List idArr); } 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 87ede2189..2f57e5b15 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 @@ -34,14 +34,16 @@ - DELETE FROM logpm_distribution_stockup WHERE id = #{id} + DELETE + FROM logpm_distribution_stockup + WHERE id = #{id} - + select DISTINCT lds.id,lds.stockup_date stockupDate, lds.stockup_user stockupUser, lds.stockup_status + stockupStatus, lds.stockup_area stockupArea, lds.assign_status assignStatus, lds.goods_area_id goodsAreaId, lds.forklift_name forkliftName, - lds.loader_name loaderName, lds.forklift_id forkliftId,lds.loader_id loaderId,lds.fix_time fixTime,lds.assign_time assignTime, + lds.loader_name loaderName, lds.forklift_id forkliftId,lds.loader_id loaderId,lds.fix_time + fixTime,lds.assign_time assignTime, lds.type_service typeService,lds.outbound_date outboundDate,lds.stockup_code stockupCode, - COALESCE(GROUP_CONCAT(DISTINCT lwug.position_code SEPARATOR ','), '') stockipAllocation,COALESCE(GROUP_CONCAT(DISTINCT lwtg.tray_code SEPARATOR ','), '') pallet + COALESCE(GROUP_CONCAT(DISTINCT lwug.position_code SEPARATOR ','), '') + stockipAllocation,COALESCE(GROUP_CONCAT(DISTINCT lwtg.tray_code SEPARATOR ','), '') pallet from logpm_distribution_stockup lds LEFT JOIN logpm_distribution_stockup_info ldsi on ldsi.stockup_id = lds.id LEFT JOIN logpm_distrilbution_bill_stock ldbs on ldbs.bill_lading_id = ldsi.reservation_id @@ -258,37 +309,57 @@ lds.is_deleted = 0 - and lds.type_service = #{param.typeService} - and TO_DAYS(lds.stockup_date)=TO_DAYS( #{param.stockupDate}) - and TO_DAYS(lds.outbound_date)=TO_DAYS( #{param.outboundDate}) - and lds.stockup_date between #{param.startDate} and #{param.entDate} - and lds.stockup_user like concat('%',#{param.stockupUser},'%') - and lds.stockip_allocation like concat('%',#{param.stockipAllocation},'%') - and lds.stockup_code like concat('%',#{param.stockupCode},'%') - and lds.stockup_status = #{param.stockupStatus} - and lds.stockup_area = #{param.stockupArea} - and lds.assign_status = #{param.assignStatus} - and lds.forklift_name like concat('%', #{param.forkliftName},'%') - and lds.loader_name like concat('%', #{param.loaderName},'%') - and lds.type_service = #{param.typeService} - and lds.warehouse_id = #{param.warehouseId} + and lds.type_service = + #{param.typeService} + + and TO_DAYS(lds.stockup_date)=TO_DAYS( #{param.stockupDate}) + and TO_DAYS(lds.outbound_date)=TO_DAYS( #{param.outboundDate}) + and lds.stockup_date between #{param.startDate} and #{param.entDate} + + and lds.stockup_user like + concat('%',#{param.stockupUser},'%') + + and lds.stockip_allocation + like concat('%',#{param.stockipAllocation},'%') + + and lds.stockup_code like + concat('%',#{param.stockupCode},'%') + + and lds.stockup_status = + #{param.stockupStatus} + + and lds.stockup_area = + #{param.stockupArea} + + and lds.assign_status = + #{param.assignStatus} + + and lds.forklift_name like concat('%', + #{param.forkliftName},'%') + + and lds.loader_name like concat('%', + #{param.loaderName},'%') + + and lds.type_service = + #{param.typeService} + + and lds.warehouse_id = + #{param.warehouseId} + and lds.warehouse_id in - + #{a} - GROUP BY lds.id + GROUP BY lds.id - - - + select lds.stockup_area goodsAreaName, + ( + select GROUP_CONCAT(DISTINCT ldsa.mall_name SEPARATOR ',') + from logpm_distrilbution_bill_stock ldbs + LEFT JOIN logpm_distribution_stock_article ldsa on ldsa.id = ldbs.stock_article_id + where ldbs.bill_lading_id = ldsi.reservation_id + ) consignee, + ( + select SUM(lddd.quantity) + from logpm_distribution_delivery_details lddd + where lddd.bill_lading_id = ldsi.reservation_id + ) planNum, + ( + select COUNT(id) + from logpm_distribution_stock + where stock_list_id in ( + select lddd.stock_list_id + from logpm_distribution_delivery_details lddd + where lddd.bill_lading_id = ldsi.reservation_id + ) + and bill_lading_id = ldsi.reservation_id + and ldsi.stockup_id = stockup_id + ) scanNum from logpm_distribution_stockup_info ldsi - LEFT JOIN logpm_distribution_stockup lds on ldsi.stockup_id = lds.id + LEFT JOIN logpm_distribution_stockup lds on ldsi.stockup_id = lds.id where ldsi.reservation_id = #{reservationId} @@ -721,37 +827,41 @@ LEFT JOIN logpm_distribution_reservation_stockarticle ldrs ON ldrs.reservation_id = ldsi.reservation_id LEFT JOIN logpm_distribution_stock_article ldsa ON ldsa.id = ldrs.stock_article_id LEFT JOIN logpm_distribution_stockup lds ON lds.id = ldsi.stockup_id - - ldsi.stockup_id = #{ id } - AND ldsi.is_deleted = 0 - + + ldsi.stockup_id = #{ id } + AND ldsi.is_deleted = 0 + select ldr.reservation_stock_list_num,ldrs.reservation_id reservationId from logpm_distribution_stockup_info ldsi - LEFT JOIN logpm_distribution_reservation ldr on ldsi.reservation_id = ldr.id - LEFT JOIN logpm_distribution_reservation_stockarticle ldrs on ldsi.reservation_id = ldrs.reservation_id + LEFT JOIN logpm_distribution_reservation ldr on ldsi.reservation_id = ldr.id + LEFT JOIN logpm_distribution_reservation_stockarticle ldrs on ldsi.reservation_id = ldrs.reservation_id ldsi.stockup_id =#{id} @@ -773,22 +883,22 @@ + + + diff --git a/blade-service/logpm-distribution/src/main/java/com/logpm/distribution/mapper/DistrilbutionBillLadingMapper.xml b/blade-service/logpm-distribution/src/main/java/com/logpm/distribution/mapper/DistrilbutionBillLadingMapper.xml index 95f5790ab..aca69294e 100644 --- a/blade-service/logpm-distribution/src/main/java/com/logpm/distribution/mapper/DistrilbutionBillLadingMapper.xml +++ b/blade-service/logpm-distribution/src/main/java/com/logpm/distribution/mapper/DistrilbutionBillLadingMapper.xml @@ -109,26 +109,40 @@ - - @@ -60,6 +56,40 @@ order by update_time desc + diff --git a/blade-service/logpm-warehouse/src/main/java/com/logpm/warehouse/mapper/WarehouseStockMapper.java b/blade-service/logpm-warehouse/src/main/java/com/logpm/warehouse/mapper/WarehouseStockMapper.java index 6e2270a20..420ac45a3 100644 --- a/blade-service/logpm-warehouse/src/main/java/com/logpm/warehouse/mapper/WarehouseStockMapper.java +++ b/blade-service/logpm-warehouse/src/main/java/com/logpm/warehouse/mapper/WarehouseStockMapper.java @@ -26,6 +26,7 @@ import com.logpm.warehouse.vo.WarehouseScanRecordVO; import org.apache.ibatis.annotations.Param; import java.util.List; +import java.util.Map; /** * 备货扫描记录 Mapper 接口 @@ -44,14 +45,6 @@ public interface WarehouseStockMapper extends BaseMapper { */ List selectWarehouseStockPage(IPage page,@Param("param") WarehouseScanRecordVO warehouseScanRecordVO); - - /** - * 获取导出数据 - * - * @param queryWrapper - * @return - */ - List exportWarehouseStock(@Param("ew") Wrapper queryWrapper); /** * 库存品自定义分页 * @@ -60,4 +53,6 @@ public interface WarehouseStockMapper extends BaseMapper { * @return */ List selectWarehouseStockInventoryPage(IPage page,@Param("param") WarehouseScanInventoryRecordVO warehouseScanRecordVO); + + List exportWarehouseStock(@Param("paramMap") Map paramMap, @Param("idArr") List idArr); } diff --git a/blade-service/logpm-warehouse/src/main/java/com/logpm/warehouse/mapper/WarehouseStockMapper.xml b/blade-service/logpm-warehouse/src/main/java/com/logpm/warehouse/mapper/WarehouseStockMapper.xml index 82e4eb390..fb75a9e4a 100644 --- a/blade-service/logpm-warehouse/src/main/java/com/logpm/warehouse/mapper/WarehouseStockMapper.xml +++ b/blade-service/logpm-warehouse/src/main/java/com/logpm/warehouse/mapper/WarehouseStockMapper.xml @@ -44,13 +44,6 @@ - - - - - + + diff --git a/blade-service/logpm-warehouse/src/main/java/com/logpm/warehouse/mapper/WarehouseUpdownGoodsLogMapper.java b/blade-service/logpm-warehouse/src/main/java/com/logpm/warehouse/mapper/WarehouseUpdownGoodsLogMapper.java index d69ca6dbb..c99e23694 100644 --- a/blade-service/logpm-warehouse/src/main/java/com/logpm/warehouse/mapper/WarehouseUpdownGoodsLogMapper.java +++ b/blade-service/logpm-warehouse/src/main/java/com/logpm/warehouse/mapper/WarehouseUpdownGoodsLogMapper.java @@ -20,11 +20,15 @@ import com.baomidou.mybatisplus.core.conditions.Wrapper; import com.baomidou.mybatisplus.core.mapper.BaseMapper; import com.baomidou.mybatisplus.core.metadata.IPage; import com.logpm.warehouse.entity.WarehouseUpdownGoodsLogEntity; +import com.logpm.warehouse.excel.WarehouseCustomizedExcel; +import com.logpm.warehouse.excel.WarehouseStockedExcel; +import com.logpm.warehouse.excel.WarehouseTemporaryExcel; import com.logpm.warehouse.excel.WarehouseUpdownGoodsLogExcel; import com.logpm.warehouse.vo.WarehouseUpdownGoodsLogVO; import org.apache.ibatis.annotations.Param; import java.util.List; +import java.util.Map; /** * 上下架记录表 Mapper 接口 @@ -43,14 +47,6 @@ public interface WarehouseUpdownGoodsLogMapper extends BaseMapper selectWarehouseUpdownGoodsLogPage(IPage page,@Param("param") WarehouseUpdownGoodsLogVO warehouseUpdownGoodsLog); - - /** - * 获取导出数据 - * - * @param queryWrapper - * @return - */ - List exportWarehouseUpdownGoodsLog(@Param("ew") Wrapper queryWrapper); /** * 自定义分页库存品 * @@ -67,4 +63,10 @@ public interface WarehouseUpdownGoodsLogMapper extends BaseMapper selectWarehouseUpdownGoodsLogtruckloadpage(IPage page,@Param("param") WarehouseUpdownGoodsLogVO warehouseUpdownGoodsLog); + + List exportCustomized(Map paramMap, List idArr); + + List exportStock(@Param("paramMap") Map paramMap, @Param("idArr") List idArr); + + List exportTemporary(@Param("paramMap") Map paramMap, @Param("idArr") List idArr); } diff --git a/blade-service/logpm-warehouse/src/main/java/com/logpm/warehouse/mapper/WarehouseUpdownGoodsLogMapper.xml b/blade-service/logpm-warehouse/src/main/java/com/logpm/warehouse/mapper/WarehouseUpdownGoodsLogMapper.xml index fe9137fd2..0d85b4cf5 100644 --- a/blade-service/logpm-warehouse/src/main/java/com/logpm/warehouse/mapper/WarehouseUpdownGoodsLogMapper.xml +++ b/blade-service/logpm-warehouse/src/main/java/com/logpm/warehouse/mapper/WarehouseUpdownGoodsLogMapper.xml @@ -18,34 +18,27 @@ - - - - + + + + - - - + + + - + - - - - - - SELECT lbm.product_code materialCode, lbm.name materialName, lbm.sku sku, lwup.binding_type bindingType, lwtg.tray_code palletCode, - lwup.area_title areaTitle, + lwup.area_title areaTitle, lwup.allocation_title allocationTitle, lwup.shelf_title shelfTitle, lwup.create_user createUser, @@ -132,7 +126,8 @@ - SELECT ldsa.*, lwup.binding_type bindingType, @@ -166,5 +161,117 @@ + + + diff --git a/blade-service/logpm-warehouse/src/main/java/com/logpm/warehouse/mapper/WarehouseWarehousingEntryMapper.xml b/blade-service/logpm-warehouse/src/main/java/com/logpm/warehouse/mapper/WarehouseWarehousingEntryMapper.xml index 1c4218fe5..acfc17c22 100644 --- a/blade-service/logpm-warehouse/src/main/java/com/logpm/warehouse/mapper/WarehouseWarehousingEntryMapper.xml +++ b/blade-service/logpm-warehouse/src/main/java/com/logpm/warehouse/mapper/WarehouseWarehousingEntryMapper.xml @@ -51,7 +51,7 @@ resultType="com.logpm.warehouse.entity.WarehouseWarehousingEntryEntity"> select id, receipt_batch, - receipt_date, + receipt_date as receiptDate, customer_name, store_name, warehouse, @@ -59,7 +59,7 @@ train_number, license_plate, service_type, - status + conditions from logpm_platform.logpm_warehouse_warehousing_entry lwwe @@ -86,7 +86,7 @@ and lwwe.customer_name = #{paramMap.customerName} - + and lwwe.id in #{item} diff --git a/blade-service/logpm-warehouse/src/main/java/com/logpm/warehouse/service/IWarehouseRetentionRecordService.java b/blade-service/logpm-warehouse/src/main/java/com/logpm/warehouse/service/IWarehouseRetentionRecordService.java index 44b325dc6..11d5111e9 100644 --- a/blade-service/logpm-warehouse/src/main/java/com/logpm/warehouse/service/IWarehouseRetentionRecordService.java +++ b/blade-service/logpm-warehouse/src/main/java/com/logpm/warehouse/service/IWarehouseRetentionRecordService.java @@ -29,6 +29,7 @@ import org.springblade.core.mp.base.BaseService; import org.springblade.core.tool.api.R; import java.util.List; +import java.util.Map; /** * 滞留记录 服务类 @@ -46,14 +47,6 @@ public interface IWarehouseRetentionRecordService extends BaseService selectWarehouseRetentionRecordPage(IPage page, WarehouseRetentionRecordVO warehouseRetentionRecord); - - /** - * 导出数据 - * - * @param queryWrapper - * @return - */ - List exportWarehouseRetentionRecord(Wrapper queryWrapper); /** * 滞留运单 * warehouseWaybillDetentionVO @@ -79,4 +72,5 @@ public interface IWarehouseRetentionRecordService extends BaseService exportWarehouseRetentionRecord(Map paramMap); } diff --git a/blade-service/logpm-warehouse/src/main/java/com/logpm/warehouse/service/IWarehouseStockService.java b/blade-service/logpm-warehouse/src/main/java/com/logpm/warehouse/service/IWarehouseStockService.java index 58f6d5356..0aa8bb087 100644 --- a/blade-service/logpm-warehouse/src/main/java/com/logpm/warehouse/service/IWarehouseStockService.java +++ b/blade-service/logpm-warehouse/src/main/java/com/logpm/warehouse/service/IWarehouseStockService.java @@ -25,6 +25,7 @@ import com.logpm.warehouse.vo.WarehouseScanRecordVO; import org.springblade.core.mp.base.BaseService; import java.util.List; +import java.util.Map; /** * 备货扫描记录 服务类 @@ -42,17 +43,10 @@ public interface IWarehouseStockService extends BaseService selectWarehouseStockPage(IPage page, WarehouseScanRecordVO warehouseScanRecordVO); - - /** - * 导出数据 - * - * @param queryWrapper - * @return - */ - List exportWarehouseStock(Wrapper queryWrapper); - /** * 库存品扫描记录 自定义分页 */ IPage selectWarehouseStockInventoryPage(IPage page, WarehouseScanInventoryRecordVO warehouseScanRecordVO); + + List exportWarehouseStock(Map paramMap); } diff --git a/blade-service/logpm-warehouse/src/main/java/com/logpm/warehouse/service/IWarehouseUpdownGoodsLogService.java b/blade-service/logpm-warehouse/src/main/java/com/logpm/warehouse/service/IWarehouseUpdownGoodsLogService.java index 247a9688d..7f8a2a286 100644 --- a/blade-service/logpm-warehouse/src/main/java/com/logpm/warehouse/service/IWarehouseUpdownGoodsLogService.java +++ b/blade-service/logpm-warehouse/src/main/java/com/logpm/warehouse/service/IWarehouseUpdownGoodsLogService.java @@ -16,16 +16,18 @@ */ package com.logpm.warehouse.service; -import com.baomidou.mybatisplus.core.conditions.Wrapper; import com.baomidou.mybatisplus.core.metadata.IPage; import com.logpm.distribution.entity.DistributionParcelListEntity; import com.logpm.warehouse.entity.WarehouseUpdownGoodsLogEntity; import com.logpm.warehouse.entity.WarehouseUpdownTypeEntity; -import com.logpm.warehouse.excel.WarehouseUpdownGoodsLogExcel; +import com.logpm.warehouse.excel.WarehouseCustomizedExcel; +import com.logpm.warehouse.excel.WarehouseStockedExcel; +import com.logpm.warehouse.excel.WarehouseTemporaryExcel; import com.logpm.warehouse.vo.WarehouseUpdownGoodsLogVO; import org.springblade.core.mp.base.BaseService; import java.util.List; +import java.util.Map; /** * 上下架记录表 服务类 @@ -43,15 +45,6 @@ public interface IWarehouseUpdownGoodsLogService extends BaseService selectWarehouseUpdownGoodsLogPage(IPage page, WarehouseUpdownGoodsLogVO warehouseUpdownGoodsLog); - - /** - * 导出数据 - * - * @param queryWrapper - * @return - */ - List exportWarehouseUpdownGoodsLog(Wrapper queryWrapper); - void saveAllocationAndPackage(WarehouseUpdownTypeEntity updownTypeEntity, DistributionParcelListEntity parcelListEntity, String bindingType,Integer isAlltrays,String remark); /** * 自定义库存品 @@ -69,4 +62,10 @@ public interface IWarehouseUpdownGoodsLogService extends BaseService selectWarehouseUpdownGoodsLogtruckloadpage(IPage page, WarehouseUpdownGoodsLogVO warehouseUpdownGoodsLog); + + List exportCustomized(Map paramMap); + + List exportStock(Map paramMap); + + List exportTemporary(Map paramMap); } diff --git a/blade-service/logpm-warehouse/src/main/java/com/logpm/warehouse/service/impl/WarehouseRetentionRecordServiceImpl.java b/blade-service/logpm-warehouse/src/main/java/com/logpm/warehouse/service/impl/WarehouseRetentionRecordServiceImpl.java index 8f854ec29..124bb08e2 100644 --- a/blade-service/logpm-warehouse/src/main/java/com/logpm/warehouse/service/impl/WarehouseRetentionRecordServiceImpl.java +++ b/blade-service/logpm-warehouse/src/main/java/com/logpm/warehouse/service/impl/WarehouseRetentionRecordServiceImpl.java @@ -18,6 +18,7 @@ package com.logpm.warehouse.service.impl; import com.baomidou.mybatisplus.core.conditions.Wrapper; import com.baomidou.mybatisplus.core.metadata.IPage; +import com.baomidou.mybatisplus.core.toolkit.ObjectUtils; import com.baomidou.mybatisplus.core.toolkit.Wrappers; import com.baomidou.mybatisplus.extension.plugins.pagination.Page; import com.logpm.basicdata.entity.BasicdataWarehouseEntity; @@ -47,18 +48,19 @@ import com.logpm.warehouse.wrapper.WarehouseRetentionRecordWrapper; import com.logpm.warehouse.wrapper.WarehouseRetentionScanWrapper; import lombok.AllArgsConstructor; import lombok.extern.slf4j.Slf4j; +import org.springblade.common.constant.DictBizConstant; import org.springblade.common.constant.retention.RetentionTypeConstant; import org.springblade.common.exception.CustomerException; +import org.springblade.core.log.exception.ServiceException; import org.springblade.core.mp.base.BaseServiceImpl; import org.springblade.core.secure.BladeUser; import org.springblade.core.secure.utils.AuthUtil; import org.springblade.core.tool.api.R; import org.springblade.core.tool.utils.Func; +import org.springblade.system.cache.DictBizCache; import org.springframework.stereotype.Service; -import java.util.Date; -import java.util.List; -import java.util.Objects; +import java.util.*; import java.util.concurrent.atomic.AtomicInteger; import java.util.stream.Collectors; @@ -85,16 +87,6 @@ public class WarehouseRetentionRecordServiceImpl extends BaseServiceImpl exportWarehouseRetentionRecord(Wrapper queryWrapper) { - List warehouseRetentionRecordList = baseMapper.exportWarehouseRetentionRecord(queryWrapper); - //warehouseRetentionRecordList.forEach(warehouseRetentionRecord -> { - // warehouseRetentionRecord.setTypeName(DictCache.getValue(DictEnum.YES_NO, WarehouseRetentionRecord.getType())); - //}); - return warehouseRetentionRecordList; - } - @Override public IPage selectWarehouseRetentionWaybillPage(IPage page, WarehouseWaybillDetentionVO warehouseWaybillDetentionVO) { List warehouseRetentionRecordVOS = baseMapper.selectWarehouseWaybillRecordPage(page,warehouseWaybillDetentionVO); @@ -201,4 +193,29 @@ public class WarehouseRetentionRecordServiceImpl extends BaseServiceImpl exportWarehouseRetentionRecord(Map paramMap) { + + // 获取当前登录的仓库信息 + BasicdataWarehouseEntity myCurrentWarehouse = warehouseClient.getMyCurrentWarehouse(); + if(ObjectUtils.isNull(myCurrentWarehouse)){ + throw new ServiceException("没有仓库信息!"); + } + // 用户勾选数据的ids + Object ids = paramMap.get("ids"); + List idArr = null; + if (null != ids && !ids.toString().equals("")){ + idArr = Arrays.asList(paramMap.get("ids").toString().split(",")); + } + + String tenantId = AuthUtil.getTenantId(); + paramMap.put("warehouseId", myCurrentWarehouse.getId()); + paramMap.put("tenantId", tenantId); + List list = baseMapper.exportWarehouseRetentionRecord(paramMap, idArr); + list.forEach(li -> { + li.setRetentionType(DictBizCache.getValue(DictBizConstant.WAREHOUSE_RETENTION_TYPE, li.getRetentionType())); + }); + return list; + } + } diff --git a/blade-service/logpm-warehouse/src/main/java/com/logpm/warehouse/service/impl/WarehouseStockServiceImpl.java b/blade-service/logpm-warehouse/src/main/java/com/logpm/warehouse/service/impl/WarehouseStockServiceImpl.java index 5e3e05c91..bbc1da23d 100644 --- a/blade-service/logpm-warehouse/src/main/java/com/logpm/warehouse/service/impl/WarehouseStockServiceImpl.java +++ b/blade-service/logpm-warehouse/src/main/java/com/logpm/warehouse/service/impl/WarehouseStockServiceImpl.java @@ -18,6 +18,7 @@ package com.logpm.warehouse.service.impl; import com.baomidou.mybatisplus.core.conditions.Wrapper; import com.baomidou.mybatisplus.core.metadata.IPage; +import com.baomidou.mybatisplus.core.toolkit.ObjectUtils; import com.logpm.basicdata.entity.BasicdataWarehouseEntity; import com.logpm.basicdata.feign.IBasicdataWarehouseClient; import com.logpm.warehouse.entity.WarehouseStockEntity; @@ -28,12 +29,20 @@ import com.logpm.warehouse.vo.WarehouseScanInventoryRecordVO; import com.logpm.warehouse.vo.WarehouseScanRecordVO; import lombok.AllArgsConstructor; import lombok.extern.log4j.Log4j2; +import org.springblade.common.constant.DictBizConstant; +import org.springblade.core.log.exception.ServiceException; import org.springblade.core.mp.base.BaseServiceImpl; +import org.springblade.core.secure.utils.AuthUtil; +import org.springblade.core.tool.utils.BeanUtil; import org.springblade.core.tool.utils.SpringUtil; +import org.springblade.system.cache.DictBizCache; import org.springblade.system.feign.IUserClient; import org.springframework.stereotype.Service; +import java.util.ArrayList; +import java.util.Arrays; import java.util.List; +import java.util.Map; import java.util.stream.Collectors; /** @@ -48,6 +57,9 @@ import java.util.stream.Collectors; public class WarehouseStockServiceImpl extends BaseServiceImpl implements IWarehouseStockService { private final IBasicdataWarehouseClient basicdataWarehouseClient; + + private IBasicdataWarehouseClient warehouseClient; + @Override public IPage selectWarehouseStockPage(IPage page, WarehouseScanRecordVO warehouseScanRecordVO) { warehouseScanRecordVO.setWarehouseIdList(this.loginPerson()); @@ -59,22 +71,47 @@ public class WarehouseStockServiceImpl extends BaseServiceImpl exportWarehouseStock(Wrapper queryWrapper) { - List WarehouseStockList = baseMapper.exportWarehouseStock(queryWrapper); - //WarehouseStockList.forEach(WarehouseStock -> { - // WarehouseStock.setTypeName(DictCache.getValue(DictEnum.YES_NO, WarehouseStock.getType())); - //}); - return WarehouseStockList; - } - @Override public IPage selectWarehouseStockInventoryPage(IPage page, WarehouseScanInventoryRecordVO warehouseScanRecordVO) { warehouseScanRecordVO.setWarehouseIdList(this.loginPerson()); List warehouseScanInventoryRecordVOList = baseMapper.selectWarehouseStockInventoryPage(page,warehouseScanRecordVO); return page.setRecords(warehouseScanInventoryRecordVOList); } + + @Override + public List exportWarehouseStock(Map paramMap) { + + // 获取当前登录的仓库信息 + BasicdataWarehouseEntity myCurrentWarehouse = warehouseClient.getMyCurrentWarehouse(); + if(ObjectUtils.isNull(myCurrentWarehouse)){ + throw new ServiceException("没有仓库信息!"); + } + // 用户勾选数据的ids + Object ids = paramMap.get("ids"); + List idArr = null; + if (null != ids && !ids.toString().equals("")){ + idArr = Arrays.asList(paramMap.get("ids").toString().split(",")); + } + + String tenantId = AuthUtil.getTenantId(); + paramMap.put("warehouseId", myCurrentWarehouse.getId()); + paramMap.put("tenantId", tenantId); + + List list = baseMapper.exportWarehouseStock(paramMap, idArr); + List excelList = new ArrayList<>(); + list.forEach(li -> { + WarehouseStockExcel excel = new WarehouseStockExcel(); + BeanUtil.copy(li, excel); + excel.setOrderPackageStatusName(DictBizCache.getValue(DictBizConstant.ORDER_PACKAGE_STATUS,li.getOrderPackageStatusName())); + excel.setOrderPackageFreezeStatusName(DictBizCache.getValue(DictBizConstant.ORDER_PACKAGE_FREEZE_STATUS, li.getOrderPackageFreezeStatusName())); + excel.setOrderPackageStockupStatusName(DictBizCache.getValue(DictBizConstant.ORDER_PACKAGE_STOCKUP_STATUS, li.getOrderPackageStockupStatusName())); + excel.setOrderPackageGroundingStatusName(DictBizCache.getValue(DictBizConstant.ORDER_PACKAGE_GROUNDING_STATUS, li.getOrderPackageGroundingStatusName())); + excel.setOrderPackageLoadingStatusName(DictBizCache.getValue(DictBizConstant.ORDER_PACKAGE_LOADING_STATUS, li.getOrderPackageLoadingStatusName())); + excelList.add(excel); + }); + return excelList; + } + public List loginPerson(){ //获取当前登录人仓库 List myWatchWarehouse = basicdataWarehouseClient.getMyWatchWarehouse(); diff --git a/blade-service/logpm-warehouse/src/main/java/com/logpm/warehouse/service/impl/WarehouseUpdownGoodsLogServiceImpl.java b/blade-service/logpm-warehouse/src/main/java/com/logpm/warehouse/service/impl/WarehouseUpdownGoodsLogServiceImpl.java index bdb3d8e55..ce9f2a015 100644 --- a/blade-service/logpm-warehouse/src/main/java/com/logpm/warehouse/service/impl/WarehouseUpdownGoodsLogServiceImpl.java +++ b/blade-service/logpm-warehouse/src/main/java/com/logpm/warehouse/service/impl/WarehouseUpdownGoodsLogServiceImpl.java @@ -18,22 +18,30 @@ package com.logpm.warehouse.service.impl; import com.baomidou.mybatisplus.core.conditions.Wrapper; import com.baomidou.mybatisplus.core.metadata.IPage; +import com.baomidou.mybatisplus.core.toolkit.ObjectUtils; import com.logpm.basicdata.entity.BasicdataWarehouseEntity; import com.logpm.basicdata.feign.IBasicdataWarehouseClient; import com.logpm.distribution.entity.DistributionParcelListEntity; import com.logpm.warehouse.entity.WarehouseUpdownGoodsLogEntity; import com.logpm.warehouse.entity.WarehouseUpdownTypeEntity; +import com.logpm.warehouse.excel.WarehouseCustomizedExcel; +import com.logpm.warehouse.excel.WarehouseStockedExcel; +import com.logpm.warehouse.excel.WarehouseTemporaryExcel; import com.logpm.warehouse.excel.WarehouseUpdownGoodsLogExcel; import com.logpm.warehouse.mapper.WarehouseUpdownGoodsLogMapper; import com.logpm.warehouse.service.IWarehouseUpdownGoodsLogService; import com.logpm.warehouse.vo.WarehouseUpdownGoodsLogVO; import lombok.AllArgsConstructor; import lombok.extern.log4j.Log4j2; +import org.springblade.core.log.exception.ServiceException; import org.springblade.core.mp.base.BaseServiceImpl; +import org.springblade.core.secure.utils.AuthUtil; import org.springblade.system.feign.IUserSearchClient; import org.springframework.stereotype.Service; +import java.util.Arrays; import java.util.List; +import java.util.Map; import java.util.stream.Collectors; /** @@ -51,6 +59,8 @@ public class WarehouseUpdownGoodsLogServiceImpl extends BaseServiceImpl selectWarehouseUpdownGoodsLogPage(IPage page, WarehouseUpdownGoodsLogVO warehouseUpdownGoodsLog) { //获取当前登录人仓库 @@ -68,16 +78,6 @@ public class WarehouseUpdownGoodsLogServiceImpl extends BaseServiceImpl exportWarehouseUpdownGoodsLog(Wrapper queryWrapper) { - List warehouseUpdownGoodsLogList = baseMapper.exportWarehouseUpdownGoodsLog(queryWrapper); - //warehouseUpdownGoodsLogList.forEach(warehouseUpdownGoodsLog -> { - // warehouseUpdownGoodsLog.setTypeName(DictCache.getValue(DictEnum.YES_NO, WarehouseUpdownGoodsLog.getType())); - //}); - return warehouseUpdownGoodsLogList; - } - @Override public void saveAllocationAndPackage(WarehouseUpdownTypeEntity updownTypeEntity, DistributionParcelListEntity parcelListEntity, String bindingType,Integer isAlltrays,String remark) { WarehouseUpdownGoodsLogEntity warehouseUpdownGoodsLogEntity = new WarehouseUpdownGoodsLogEntity(); @@ -124,4 +124,82 @@ public class WarehouseUpdownGoodsLogServiceImpl extends BaseServiceImpl exportCustomized(Map paramMap) { + + // 获取当前登录的仓库信息 + BasicdataWarehouseEntity myCurrentWarehouse = warehouseClient.getMyCurrentWarehouse(); + if(ObjectUtils.isNull(myCurrentWarehouse)){ + throw new ServiceException("没有仓库信息!"); + } + // 用户勾选数据的ids + Object ids = paramMap.get("ids"); + List idArr = null; + if (null != ids && !ids.toString().equals("")){ + idArr = Arrays.asList(paramMap.get("ids").toString().split(",")); + } + + String tenantId = AuthUtil.getTenantId(); + paramMap.put("warehouseId", myCurrentWarehouse.getId()); + paramMap.put("tenantId", tenantId); + List list = baseMapper.exportCustomized(paramMap, idArr); + list.forEach( li -> { + li.setBindingType(li.getBindingType().equals("1") ? "上架" : "下架"); + }); + return list; + } + + @Override + public List exportStock(Map paramMap) { + + // 获取当前登录的仓库信息 + BasicdataWarehouseEntity myCurrentWarehouse = warehouseClient.getMyCurrentWarehouse(); + if(ObjectUtils.isNull(myCurrentWarehouse)){ + throw new ServiceException("没有仓库信息!"); + } + // 用户勾选数据的ids + Object ids = paramMap.get("ids"); + List idArr = null; + if (null != ids && !ids.toString().equals("")){ + idArr = Arrays.asList(paramMap.get("ids").toString().split(",")); + } + + String tenantId = AuthUtil.getTenantId(); + paramMap.put("warehouseId", myCurrentWarehouse.getId()); + paramMap.put("tenantId", tenantId); + + List list = baseMapper.exportStock(paramMap, idArr); + list.forEach(li -> { + li.setBindingType(li.getBindingType().equals("1") ? "上架" : "下架"); + }); + + return list; + } + + @Override + public List exportTemporary(Map paramMap) { + + // 获取当前登录的仓库信息 + BasicdataWarehouseEntity myCurrentWarehouse = warehouseClient.getMyCurrentWarehouse(); + if(ObjectUtils.isNull(myCurrentWarehouse)){ + throw new ServiceException("没有仓库信息!"); + } + // 用户勾选数据的ids + Object ids = paramMap.get("ids"); + List idArr = null; + if (null != ids && !ids.toString().equals("")){ + idArr = Arrays.asList(paramMap.get("ids").toString().split(",")); + } + + String tenantId = AuthUtil.getTenantId(); + paramMap.put("warehouseId", myCurrentWarehouse.getId()); + paramMap.put("tenantId", tenantId); + + List list = baseMapper.exportTemporary(paramMap, idArr); + list.forEach(li -> { + li.setBindingType("1".equals(li.getBindingType()) ? "上架" : "下架"); + }); + return list; + } + } diff --git a/blade-service/logpm-warehouse/src/main/java/com/logpm/warehouse/service/impl/WarehouseWarehousingEntryServiceImpl.java b/blade-service/logpm-warehouse/src/main/java/com/logpm/warehouse/service/impl/WarehouseWarehousingEntryServiceImpl.java index 015aff106..1d8f79240 100644 --- a/blade-service/logpm-warehouse/src/main/java/com/logpm/warehouse/service/impl/WarehouseWarehousingEntryServiceImpl.java +++ b/blade-service/logpm-warehouse/src/main/java/com/logpm/warehouse/service/impl/WarehouseWarehousingEntryServiceImpl.java @@ -522,10 +522,10 @@ public class WarehouseWarehousingEntryServiceImpl extends BaseServiceImpl idArr = new ArrayList<>(); - if (StringUtils.isNotBlank(ids)){ - idArr = Arrays.asList(ids.split(",")); + Object ids = paramMap.get("ids"); + List idArr = null; + if (null != ids && !ids.toString().equals("")){ + idArr = Arrays.asList(paramMap.get("ids").toString().split(",")); } paramMap.put("warehouseId", myCurrentWarehouse.getId()); @@ -534,6 +534,17 @@ public class WarehouseWarehousingEntryServiceImpl extends BaseServiceImpl listExcel = new ArrayList<>(); list.forEach(s->{ WarehouseWarehousingEntryExcel excel = new WarehouseWarehousingEntryExcel(); + switch (s.getConditions()){ + case "1": + s.setConditions("待确定"); + break; + case "2": + s.setConditions("部分确定"); + break; + case "3": + s.setConditions("已确定"); + break; + } BeanUtil.copyProperties(s,excel); listExcel.add(excel); }); From 42419766323a0008c59b56a26f228f72b13cabd9 Mon Sep 17 00:00:00 2001 From: caoyizhong <1270296080@qq.com> Date: Thu, 9 Nov 2023 21:53:09 +0800 Subject: [PATCH 34/36] =?UTF-8?q?=E4=BF=AE=E6=94=B9=E9=83=A8=E5=88=86?= =?UTF-8?q?=E6=95=B0=E6=8D=AE?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../DistributionDeliveryListServiceImpl.java | 1 + .../DistributionParcelListServiceImpl.java | 26 +++++++++++++------ 2 files changed, 19 insertions(+), 8 deletions(-) diff --git a/blade-service/logpm-distribution/src/main/java/com/logpm/distribution/service/impl/DistributionDeliveryListServiceImpl.java b/blade-service/logpm-distribution/src/main/java/com/logpm/distribution/service/impl/DistributionDeliveryListServiceImpl.java index 9ead95988..4cd1e0f35 100644 --- a/blade-service/logpm-distribution/src/main/java/com/logpm/distribution/service/impl/DistributionDeliveryListServiceImpl.java +++ b/blade-service/logpm-distribution/src/main/java/com/logpm/distribution/service/impl/DistributionDeliveryListServiceImpl.java @@ -4223,6 +4223,7 @@ public class DistributionDeliveryListServiceImpl extends BaseServiceImpl distributionParcelList) { Object o = distributionParcelList.get("ids"); if(ObjectUtils.isNull(o)){ @@ -432,6 +433,10 @@ public class DistributionParcelListServiceImpl extends BaseServiceImpl list1 = baseMapper.selectList(queryWrapper); + boolean b = list1.stream().anyMatch(i -> ObjectUtils.isNull(i.getMaterialId())); + if(b){ + throw new ServiceException("有包件未维护物料信息,请维护后在进行操作!!"); + } if (!list1.isEmpty()) { Set listString = new HashSet<>(); list1.stream().collect(Collectors.groupingBy(DistributionParcelListEntity::getMaterialId)) @@ -455,7 +460,12 @@ public class DistributionParcelListServiceImpl extends BaseServiceImpl { DistributionStockArticleEntity stockArticleEntity1 = distributionStockArticleMapper.selectById(oo); @@ -566,13 +580,9 @@ public class DistributionParcelListServiceImpl extends BaseServiceImpl Date: Fri, 10 Nov 2023 00:36:42 +0800 Subject: [PATCH 35/36] =?UTF-8?q?=E4=BF=AE=E6=94=B9=E6=95=B4=E4=BD=93?= =?UTF-8?q?=E5=A4=87=E8=B4=A7=EF=BC=8C=E5=8C=85=E4=BB=B6=E8=BD=AC=E5=BA=93?= =?UTF-8?q?=E5=AD=98=E5=93=81?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../service/IDistributionAsyncService.java | 4 +- .../impl/DistributionAsyncServiceImpl.java | 8 ++-- .../impl/DistributionStockupServiceImpl.java | 48 ++++++++++++++----- 3 files changed, 43 insertions(+), 17 deletions(-) diff --git a/blade-service/logpm-distribution/src/main/java/com/logpm/distribution/service/IDistributionAsyncService.java b/blade-service/logpm-distribution/src/main/java/com/logpm/distribution/service/IDistributionAsyncService.java index a6d58ebf7..7346e1077 100644 --- a/blade-service/logpm-distribution/src/main/java/com/logpm/distribution/service/IDistributionAsyncService.java +++ b/blade-service/logpm-distribution/src/main/java/com/logpm/distribution/service/IDistributionAsyncService.java @@ -133,13 +133,13 @@ public interface IDistributionAsyncService { * 商 市的扫描修改 部分状态 * @param stockupDTO */ - void stockupUpdateState(StockupDTO stockupDTO); + void stockupUpdateState(StockupDTO stockupDTO,int num); /** * 自提的扫描修改 部分状态 * @param stockupDTO */ - void stockupSelfUpdateState(StockupDTO stockupDTO); + void stockupSelfUpdateState(StockupDTO stockupDTO,int num); /** diff --git a/blade-service/logpm-distribution/src/main/java/com/logpm/distribution/service/impl/DistributionAsyncServiceImpl.java b/blade-service/logpm-distribution/src/main/java/com/logpm/distribution/service/impl/DistributionAsyncServiceImpl.java index ddd591c61..6f4c6b695 100644 --- a/blade-service/logpm-distribution/src/main/java/com/logpm/distribution/service/impl/DistributionAsyncServiceImpl.java +++ b/blade-service/logpm-distribution/src/main/java/com/logpm/distribution/service/impl/DistributionAsyncServiceImpl.java @@ -1418,7 +1418,7 @@ public class DistributionAsyncServiceImpl implements IDistributionAsyncService { */ @Override @Transactional(rollbackFor = Exception.class) - public void stockupUpdateState(StockupDTO stockupDTO) { + public void stockupUpdateState(StockupDTO stockupDTO,int num) { BasicdataWarehouseEntity myCurrentWarehouse = warehouseClient.getMyCurrentWarehouse(); if(stockupDTO.getScanType().equals(1)){ @@ -1492,7 +1492,7 @@ public class DistributionAsyncServiceImpl implements IDistributionAsyncService { }); //判断数量 - int i = (nu.get() + ku.get()) - (nuy.get() + 1); + int i = (nu.get() + ku.get()) - (nuy.get() + num); //查询备货状态 DistributionStockupEntity distributionStockupEntity = distributionStockupService.selectById(stockupDTO.getStockupId()); DistributionStockupEntity distributionStockup = new DistributionStockupEntity(); @@ -1544,7 +1544,7 @@ public class DistributionAsyncServiceImpl implements IDistributionAsyncService { * @param stockupDTO */ @Override - public void stockupSelfUpdateState(StockupDTO stockupDTO) { + public void stockupSelfUpdateState(StockupDTO stockupDTO,int num) { //查询全部订单数据 List distrilbutionBillStockEntities = distrilbutionBillStockMapper.selectList(Wrappers.query().lambda() @@ -1612,7 +1612,7 @@ public class DistributionAsyncServiceImpl implements IDistributionAsyncService { .apply("inventory_status in (1,2)") ); int sum = detailsEntities.stream().mapToInt(DistributionDeliveryDetailsEntity::getQuantity).sum(); //库存品数据 - int i = (sum + nu.get()) - (sum1 + 1); + int i = (sum + nu.get()) - (sum1 + num); /* detailsEntities.forEach( r -> { if(r.getConditions().equals("1") && Objects.equals(r.getQuantity(), r.getRealityQuantity())){ //修改当前备货状态已完成 diff --git a/blade-service/logpm-distribution/src/main/java/com/logpm/distribution/service/impl/DistributionStockupServiceImpl.java b/blade-service/logpm-distribution/src/main/java/com/logpm/distribution/service/impl/DistributionStockupServiceImpl.java index 09911c2c4..803eaf2b4 100644 --- a/blade-service/logpm-distribution/src/main/java/com/logpm/distribution/service/impl/DistributionStockupServiceImpl.java +++ b/blade-service/logpm-distribution/src/main/java/com/logpm/distribution/service/impl/DistributionStockupServiceImpl.java @@ -37,6 +37,7 @@ import com.logpm.distribution.excel.DistributionCityExcel; import com.logpm.distribution.excel.DistributionMarketExcel; import com.logpm.distribution.excel.DistributionSelfExcel; import com.logpm.distribution.mapper.DistributionStockupMapper; +import com.logpm.distribution.mapper.DistrilbutionBillLadingMapper; import com.logpm.distribution.service.*; import com.logpm.distribution.vo.*; import com.logpm.distribution.vo.app.StockupZeroVO; @@ -109,6 +110,7 @@ public class DistributionStockupServiceImpl extends BaseServiceImpl list1 = new ArrayList<>(); + String collect = voList.stream().map(DistributionStockPackageVO::getPacketBarCode).collect(Collectors.joining(",")); + Long warehouseId ; + if(one.getStockUpType().equals("3")){ + DistrilbutionBillLadingEntity distrilbutionBillLadingEntity = distrilbutionBillLadingMapper.selectById(stockupDTO.getReservationId()); + warehouseId = distrilbutionBillLadingEntity.getWarehouseId(); + }else{ + DistributionReservationEntity byId1 = distributionReservationService.getById(stockupDTO.getReservationId()); + warehouseId = byId1.getWarehouseId(); + } + if(ObjectUtils.isNull(warehouseId)){ + throw new ServiceException("预约信息不存在,无法备货!"); + } + //货位下架 + R r = warehouseUpdownTypeClient.downPackage(collect,warehouseId ); + if(r.getCode() != 200){ + throw new ServiceException("下架失败!!"); + } voList.forEach(i -> { //查询是否已备货 DistributionParcelListEntity byId = distributionParcelListService.getById(i.getParcelListId()); @@ -1763,18 +1785,14 @@ public class DistributionStockupServiceImpl extends BaseServiceImpl Date: Fri, 10 Nov 2023 01:25:43 +0800 Subject: [PATCH 36/36] =?UTF-8?q?=E6=95=B4=E6=89=98=E8=A3=85=E8=BD=A6?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../DistributionSignforController.java | 10 + .../service/IDistributionAddvalueService.java | 7 + .../impl/DistributionAddvalueServiceImpl.java | 343 ++++++++++----- .../DistributionDeliveryListServiceImpl.java | 413 +++++++++++------- .../impl/DistributionSignforServiceImpl.java | 311 ++++++++----- 5 files changed, 721 insertions(+), 363 deletions(-) diff --git a/blade-service/logpm-distribution/src/main/java/com/logpm/distribution/controller/DistributionSignforController.java b/blade-service/logpm-distribution/src/main/java/com/logpm/distribution/controller/DistributionSignforController.java index 6d8afbc42..d2e30dae8 100644 --- a/blade-service/logpm-distribution/src/main/java/com/logpm/distribution/controller/DistributionSignforController.java +++ b/blade-service/logpm-distribution/src/main/java/com/logpm/distribution/controller/DistributionSignforController.java @@ -344,6 +344,16 @@ public class DistributionSignforController extends BladeController { return distributionAddvalueService.saveAddvalueInfo(distributionAppAddvalueDTO); } + /** + * 签收管理进行增值服务操作 + */ + @PostMapping("/updateSignAddValuePackage") + @ApiOperationSupport(order = 7) + @ApiOperation(value = "PC查看增值服务列表", notes = "传入ids") + public R updateSignAddValuePackage(@RequestBody DistributionAppAddvalueDTO distributionAppAddvalueDTO) { + return distributionAddvalueService.updatePCAddvalueInfo(distributionAppAddvalueDTO); + } + /** * 签收管理进行增值服务操作 */ diff --git a/blade-service/logpm-distribution/src/main/java/com/logpm/distribution/service/IDistributionAddvalueService.java b/blade-service/logpm-distribution/src/main/java/com/logpm/distribution/service/IDistributionAddvalueService.java index a3d10d872..7dafcac22 100644 --- a/blade-service/logpm-distribution/src/main/java/com/logpm/distribution/service/IDistributionAddvalueService.java +++ b/blade-service/logpm-distribution/src/main/java/com/logpm/distribution/service/IDistributionAddvalueService.java @@ -113,6 +113,13 @@ public interface IDistributionAddvalueService extends IService packageListIds = distributionAppAddvalueDTO.getPackageListIds(); Integer isManual = distributionAppAddvalueDTO.getIsManual(); List collect1 = parcelListEntityList.stream().filter(p -> packageListIds.contains(p.getId())).collect(Collectors.toList()); - if (collect1.size() == 1 ){ + if (collect1.size() == 1) { return Resp.scanFail("重复扫描", "重复扫描"); } List collect2 = detailEntities.stream().filter(i -> packageListIds.contains(i.getId())).collect(Collectors.toList()); - if (collect2.size() == 1 ){ + if (collect2.size() == 1) { return Resp.scanFail("重复扫描", "重复扫描"); } List packageInfo = parcelListEntityList.stream().filter(p -> p.getOrderPackageCode().equals(distributionAppAddvalueDTO.getBarcode())).collect(Collectors.toList()); @@ -132,7 +133,7 @@ public class DistributionAddvalueServiceImpl extends BaseServiceImpl packageEntityList = distributionAppAddvalueDTO.getPackageEntityList(); List packageDTOList = packageEntityList.stream().filter(p -> Func.isNotEmpty(p.getQuantity()) && p.getQuantity() > 0).collect(Collectors.toList()); - if (Func.isEmpty(packageDTOList)){ - return Resp.scanFail("操作失败","无可用包件信息"); + if (Func.isEmpty(packageDTOList)) { + return Resp.scanFail("操作失败", "无可用包件信息"); } //查询是否重复添加 DistributionAddvalueEntity addvalueEntity = distributionAddvalueMapper.selectOne(Wrappers.query().lambda() @@ -202,17 +203,17 @@ public class DistributionAddvalueServiceImpl extends BaseServiceImpl parcelListEntities = distributionReservationMapper.selectPackageListByReservationId(distributionAppAddvalueDTO.getReservationId()); - if (parcelListEntities.size() == packageEntityList.size()){ +// List parcelListEntities = distributionReservationMapper.selectPackageListByReservationId(distributionAppAddvalueDTO.getReservationId()); + if (reservationEntity.getReservationNum()+reservationEntity.getReservationStockListNum() == packageEntityList.size()) { distributionAddvalueDetailEntity.setRecordType(1); } distributionAddvalueDetailService.save(distributionAddvalueDetailEntity); List addvaluePackageEntities = new ArrayList<>(); - List packageEntities = distributionAddvalueMapper.selectAddvaluePackageListByAddvalueType(distributionAppAddvalueDTO.getReservationId(),distributionAppAddvalueDTO.getAddvalueType()); + List packageEntities = distributionAddvalueMapper.selectAddvaluePackageListByAddvalueType(distributionAppAddvalueDTO.getReservationId(), distributionAppAddvalueDTO.getAddvalueType()); Map addvaluePackageEntityMap = packageEntities.stream().collect(Collectors.toMap(DistributionAddvaluePackageEntity::getPackageId, Function.identity(), (k1, k2) -> k2)); - packageDTOList.stream().forEach(p->{ - if (Func.isEmpty(addvaluePackageEntityMap.get(p.getPackageId()))){ + packageDTOList.stream().forEach(p -> { + if (Func.isEmpty(addvaluePackageEntityMap.get(p.getPackageId()))) { + Integer conditions = p.getConditions(); + switch (conditions) { + case 1: + //判定该包件是否属于该客户 + List parcelListEntities = distributionReservationMapper.selectPackageListByReservationId(distributionAppAddvalueDTO.getReservationId()); + boolean packageFlag = parcelListEntities.stream().allMatch(pack -> !Func.equals(pack.getId(), p.getPackageId())); + if (packageFlag){ + throw new RuntimeException("不属于该客户包件"); + } + break; + case 2: + List distributionParcelNumberDTOS = distributionReservationMapper.selectZeroPackageListByReservationId(distributionAppAddvalueDTO.getReservationId()); + boolean zeroPackageFlag = distributionParcelNumberDTOS.stream().allMatch(pack -> !Func.equals(pack.getId(), p.getPackageId())); + if (zeroPackageFlag){ + throw new RuntimeException("不属于该客户包件"); + } + break; + case 3: + List detailEntities = distributionReservationMapper.selectInventoryListByReservation(distributionAppAddvalueDTO.getReservationId()); + boolean inventoryPackageFlag = detailEntities.stream().allMatch(pack -> !Func.equals(pack.getId(), p.getPackageId())); + if (inventoryPackageFlag){ + throw new RuntimeException("不属于该客户包件"); + } + break; + } p.setAddvalueDetailId(distributionAddvalueDetailEntity.getId()); - addvaluePackageEntities.add(Func.copy(p,DistributionAddvaluePackageEntity.class)); + addvaluePackageEntities.add(Func.copy(p, DistributionAddvaluePackageEntity.class)); } }); distributionAddvaluePackageService.saveBatch(addvaluePackageEntities); - return Resp.scanSuccess("添加成功","添加成功"); + return Resp.scanSuccess("添加成功", "添加成功"); } @Override @@ -293,12 +319,12 @@ public class DistributionAddvalueServiceImpl extends BaseServiceImpl parcelListEntities = distributionReservationMapper.selectAppPackageListByReservationId(reservationId); List zeroPackageList = distributionReservationMapper.selectAppZeroPackageListByReservationId(reservationId); List detailEntities = distributionReservationMapper.selectAppInventoryListByReservation(reservationId); - if (Func.isNotEmpty(zeroPackageList)){ - zeroPackageList.forEach(zp->{ + if (Func.isNotEmpty(zeroPackageList)) { + zeroPackageList.forEach(zp -> { //查询最大输入数量 DistributionLoadscanEntity loadscanEntities = distributionLoadscanService.getOne(Wrappers.query().lambda().eq(DistributionLoadscanEntity::getReservationId, distributionAppAddvalueDTO.getReservationId()).eq(DistributionLoadscanEntity::getPackageId, zp.getPackageId()).ne(DistributionLoadscanEntity::getScanStatus, LoadingStatusConstant.quxiao.getValue())); zp.setMaxQuantity(0); - if (Func.isNotEmpty(loadscanEntities)){ + if (Func.isNotEmpty(loadscanEntities)) { zp.setMaxQuantity(loadscanEntities.getReceivedQuantity()); } }); @@ -310,11 +336,15 @@ public class DistributionAddvalueServiceImpl extends BaseServiceImpl{p.setRecordType("1");}); + if (Func.isNotEmpty(parcelListEntities)) { + parcelListEntities.stream().forEach(p -> { + p.setRecordType("1"); + }); } - if (Func.isNotEmpty(zeroPackageList)){ - zeroPackageList.stream().forEach(p->{p.setRecordType("1");}); + if (Func.isNotEmpty(zeroPackageList)) { + zeroPackageList.stream().forEach(p -> { + p.setRecordType("1"); + }); } // List entityList = null; // if (Func.isNotEmpty(packageEntityList)) { @@ -328,7 +358,6 @@ public class DistributionAddvalueServiceImpl extends BaseServiceImpl packageEntityList = distributionAppAddvalueDTO.getPackageEntityList(); //这里需要查询出原来的增值服务项详情 - DistributionAddvalueDetailEntity distributionAddvalueDetailEntity = new DistributionAddvalueDetailEntity(); +// DistributionAddvalueDetailEntity distributionAddvalueDetailEntity = new DistributionAddvalueDetailEntity(); // DistributionAddvalueVO addvalueVO = distributionAddvalueMapper.selectReservationAddvalue(distributionAppAddvalueDTO.getReservationId(), distributionAppAddvalueDTO.getAddvalueType()); DistributionAddvalueDetailEntity detailEntity = distributionAddvalueDetailMapper.selectById(distributionAppAddvalueDTO.getAddvalueDetailId()); @@ -357,7 +386,7 @@ public class DistributionAddvalueServiceImpl extends BaseServiceImpl distributionAddvaluePackageEntities = distributionAddvaluePackageService.list(Wrappers.query().lambda() - .in(DistributionAddvaluePackageEntity::getPackageId,Func.toLongList(packageListIds)) - .eq(DistributionAddvaluePackageEntity::getAddvalueDetailId,distributionAppAddvalueDTO.getAddvalueDetailId())); - Map> oldPackageList = distributionAddvaluePackageEntities.stream().collect(Collectors.groupingBy(DistributionAddvaluePackageEntity::getPackageId)); - Map> newPackageList = packageEntityList.stream().collect(Collectors.groupingBy(DistributionAddvaluePackageEntity::getPackageId)); - newPackageList.forEach((k, v) -> { - DistributionAddvaluePackageDTO distributionAddvaluePackageEntity = v.get(0); - if (Func.isEmpty(oldPackageList.get(k))) { - //从老的包件中无法进行获取,这里进行包件的新增 - DistributionAddvaluePackageEntity addvaluePackageEntity = new DistributionAddvaluePackageEntity(); - addvaluePackageEntity.setQuantity(distributionAddvaluePackageEntity.getZeroQuantity()); - addvaluePackageEntity.setAddvalueDetailId(distributionAddvaluePackageEntity.getAddvalueDetailId()); - addvaluePackageEntity.setStockArticleId(distributionAddvaluePackageEntity.getStockArticleId()); - addvaluePackageEntity.setMaterialName(distributionAddvaluePackageEntity.getMaterialName()); - addvaluePackageEntity.setPackageId(distributionAddvaluePackageEntity.getPackageId()); - addvaluePackageEntity.setReservationId(distributionAddvaluePackageEntity.getReservationId()); - if (distributionAddvaluePackageEntity.getConditions() == 3){ - addvaluePackageEntity.setConditions(3); - addvaluePackageEntity.setRecordType("3"); - distributionAddvaluePackageService.save(addvaluePackageEntity); - }else if (distributionAddvaluePackageEntity.getConditions() == 1){ - //新增订制品 - addvaluePackageEntity.setOrderPackageCode(distributionAddvaluePackageEntity.getOrderPackageCode()); - addvaluePackageEntity.setRecordType("1"); - addvaluePackageEntity.setConditions(1); - }else { - //新增库存品 - addvaluePackageEntity.setOrderPackageCode(distributionAddvaluePackageEntity.getOrderPackageCode()); - addvaluePackageEntity.setRecordType("2"); - addvaluePackageEntity.setConditions(2); - } -// distributionAddvaluePackageEntity.setAddvalueDetailId(distributionAddvaluePackageEntities.get(0).getAddvalueDetailId()); + //查询出原来的包件信息 + DistributionAddvalueVO addvalueVO = distributionAddvalueMapper.selectReservationAddvalue(distributionAppAddvalueDTO.getReservationId(), distributionAppAddvalueDTO.getAddvalueType()); + String packageListIds = addvalueVO.getPackageListIds(); + if (Func.isNotEmpty(packageListIds)) { + List distributionAddvaluePackageEntities = distributionAddvaluePackageService.list(Wrappers.query().lambda() + .in(DistributionAddvaluePackageEntity::getPackageId, Func.toLongList(packageListIds)) + .eq(DistributionAddvaluePackageEntity::getAddvalueDetailId, distributionAppAddvalueDTO.getAddvalueDetailId())); + Map> oldPackageList = distributionAddvaluePackageEntities.stream().collect(Collectors.groupingBy(DistributionAddvaluePackageEntity::getPackageId)); + Map> newPackageList = packageEntityList.stream().collect(Collectors.groupingBy(DistributionAddvaluePackageEntity::getPackageId)); + newPackageList.forEach((k, v) -> { + DistributionAddvaluePackageDTO distributionAddvaluePackageEntity = v.get(0); + if (Func.isEmpty(oldPackageList.get(k))) { + //从老的包件中无法进行获取,这里进行包件的新增 + DistributionAddvaluePackageEntity addvaluePackageEntity = new DistributionAddvaluePackageEntity(); + addvaluePackageEntity.setQuantity(distributionAddvaluePackageEntity.getZeroQuantity()); + addvaluePackageEntity.setAddvalueDetailId(distributionAddvaluePackageEntity.getAddvalueDetailId()); + addvaluePackageEntity.setStockArticleId(distributionAddvaluePackageEntity.getStockArticleId()); + addvaluePackageEntity.setMaterialName(distributionAddvaluePackageEntity.getMaterialName()); + addvaluePackageEntity.setPackageId(distributionAddvaluePackageEntity.getPackageId()); + addvaluePackageEntity.setReservationId(distributionAddvaluePackageEntity.getReservationId()); + if (distributionAddvaluePackageEntity.getConditions() == 3) { + addvaluePackageEntity.setConditions(3); + addvaluePackageEntity.setRecordType("3"); distributionAddvaluePackageService.save(addvaluePackageEntity); + } else if (distributionAddvaluePackageEntity.getConditions() == 1) { + //新增订制品 + addvaluePackageEntity.setOrderPackageCode(distributionAddvaluePackageEntity.getOrderPackageCode()); + addvaluePackageEntity.setRecordType("1"); + addvaluePackageEntity.setConditions(1); } else { - if (distributionAddvaluePackageEntity.getConditions() == 3){ - if (distributionAddvaluePackageEntity.getZeroQuantity() != 0){ - if (distributionAddvaluePackageEntity.getZeroQuantity() > 0){ - distributionAddvaluePackageEntity.setQuantity(distributionAddvaluePackageEntity.getZeroQuantity()); - distributionAddvaluePackageService.updateById(distributionAddvaluePackageEntity); - }else { - log.error("###############零担品类录入数量有误:{}",distributionAddvaluePackageEntity.getZeroQuantity()); - } - }else { - //删除对应的包件信息 - distributionAddvaluePackageMapper.deleteAddvaluePackage(distributionAddvaluePackageEntity.getReservationId(),distributionAddvaluePackageEntity.getPackageId()); + //新增库存品 + addvaluePackageEntity.setOrderPackageCode(distributionAddvaluePackageEntity.getOrderPackageCode()); + addvaluePackageEntity.setRecordType("2"); + addvaluePackageEntity.setConditions(2); + } +// distributionAddvaluePackageEntity.setAddvalueDetailId(distributionAddvaluePackageEntities.get(0).getAddvalueDetailId()); + distributionAddvaluePackageService.save(addvaluePackageEntity); + } else { + if (distributionAddvaluePackageEntity.getConditions() == 3) { + if (distributionAddvaluePackageEntity.getZeroQuantity() != 0) { + if (distributionAddvaluePackageEntity.getZeroQuantity() > 0) { + distributionAddvaluePackageEntity.setQuantity(distributionAddvaluePackageEntity.getZeroQuantity()); + distributionAddvaluePackageService.updateById(distributionAddvaluePackageEntity); + } else { + log.error("###############零担品类录入数量有误:{}", distributionAddvaluePackageEntity.getZeroQuantity()); } + } else { + //删除对应的包件信息 + distributionAddvaluePackageMapper.deleteAddvaluePackage(distributionAddvaluePackageEntity.getReservationId(), distributionAddvaluePackageEntity.getPackageId()); } - //存在零担需要进行比对是否发生变化 - //存在不进行维护 - oldPackageList.remove(k); } - }); - if (Func.isNotEmpty(oldPackageList)) { - //进行删除,这里删除的时候需要考虑是否删除增值服务项,是否删除整个关于该客户的增值服务信息 - oldPackageList.forEach((m, n) -> { - //进行删除 - DistributionAddvaluePackageEntity distributionAddvaluePackageEntity = n.get(0); - distributionAddvaluePackageMapper.deleteAddvaluePackage(distributionAddvaluePackageEntity.getReservationId(), distributionAddvaluePackageEntity.getPackageId()); - }); + //存在零担需要进行比对是否发生变化 + //存在不进行维护 + oldPackageList.remove(k); } + }); + if (Func.isNotEmpty(oldPackageList)) { + //进行删除,这里删除的时候需要考虑是否删除增值服务项,是否删除整个关于该客户的增值服务信息 + oldPackageList.forEach((m, n) -> { + //进行删除 + DistributionAddvaluePackageEntity distributionAddvaluePackageEntity = n.get(0); + distributionAddvaluePackageMapper.deleteAddvaluePackage(distributionAddvaluePackageEntity.getReservationId(), distributionAddvaluePackageEntity.getPackageId()); + }); } + } return Resp.scanSuccess("保存成功", "保存成功"); } @@ -473,20 +502,20 @@ public class DistributionAddvalueServiceImpl extends BaseServiceImpl longs = Func.toLongList(packageListIds); List distributionAddvaluePackageEntities = distributionAddvaluePackageService.list(Wrappers.query().lambda() - .in(DistributionAddvaluePackageEntity::getPackageId,longs) - .eq(DistributionAddvaluePackageEntity::getAddvalueDetailId,addvalueVO.getAddvalueDetailId())); + .in(DistributionAddvaluePackageEntity::getPackageId, longs) + .eq(DistributionAddvaluePackageEntity::getAddvalueDetailId, addvalueVO.getAddvalueDetailId())); List addvaluePackageVOS = new ArrayList<>(); - distributionAddvaluePackageEntities.stream().forEach(p->{ + distributionAddvaluePackageEntities.stream().forEach(p -> { DistributionAddvaluePackageVO addvaluePackageVO = Func.copy(p, DistributionAddvaluePackageVO.class); //查询当前最多增值服务数 DistributionLoadscanEntity loadscanEntity = distributionLoadscanService.getOne(Wrappers.query().lambda().eq(DistributionLoadscanEntity::getReservationId, distributionAppAddvalueDTO.getReservationId()).eq(DistributionLoadscanEntity::getPackageId, p.getPackageId()).ne(DistributionLoadscanEntity::getScanStatus, LoadingStatusConstant.quxiao.getValue())); addvaluePackageVO.setMaxQuantity(0); - if (Func.isNotEmpty(loadscanEntity)){ + if (Func.isNotEmpty(loadscanEntity)) { addvaluePackageVO.setMaxQuantity(loadscanEntity.getReceivedQuantity()); } addvaluePackageVOS.add(addvaluePackageVO); @@ -499,12 +528,12 @@ public class DistributionAddvalueServiceImpl extends BaseServiceImpl addvalueInfo= distributionAddvalueMapper.addvalueInfo(distributionAppAddvalueDTO.getReservationId()); - addvalueInfo.stream().filter(a->Func.isNotEmpty(a.getPackageListIds())).forEach(a-> { + List addvalueInfo = distributionAddvalueMapper.addvalueInfo(distributionAppAddvalueDTO.getReservationId()); + addvalueInfo.stream().filter(a -> Func.isNotEmpty(a.getPackageListIds())).forEach(a -> { List addvaluePackageEntities = distributionAddvaluePackageService.listByIds(Func.toLongList(a.getPackageListIds())); List addvaluePackageVOS = new ArrayList<>(); - addvaluePackageEntities.stream().forEach(p->{ - addvaluePackageVOS.add(Func.copy(p,DistributionAddvaluePackageVO.class)); + addvaluePackageEntities.stream().forEach(p -> { + addvaluePackageVOS.add(Func.copy(p, DistributionAddvaluePackageVO.class)); }); a.setPackageEntityList(addvaluePackageVOS); }); @@ -514,7 +543,7 @@ public class DistributionAddvalueServiceImpl extends BaseServiceImpl packageEntityList = distributionAppAddvalueDTO.getPackageEntityList(); - if (Func.isEmpty(packageEntityList)){ + if (Func.isEmpty(packageEntityList)) { log.error("################在干什么?参数都不会传"); return R.fail("在干什么?参数都不会传"); } @@ -523,17 +552,131 @@ public class DistributionAddvalueServiceImpl extends BaseServiceImpl{ - distributionAddvaluePackageMapper.deleteAddvaluePackage(distributionAppAddvalueDTO.getReservationId(),id); + packageIds.forEach(id -> { + distributionAddvaluePackageMapper.deleteAddvaluePackage(distributionAppAddvalueDTO.getReservationId(), id); }); - if (packageIds.size() == addvaluePackageEntities.size()){ + if (packageIds.size() == addvaluePackageEntities.size()) { //这里就需要对整个增值服务项进行删除 distributionAddvalueDetailMapper.deleteAddvalueDetail(distributionAppAddvalueDTO.getAddvalueDetailId()); - distributionAddvalueMapper.deleteAddvalue(distributionAppAddvalueDTO.getReservationId(),distributionAppAddvalueDTO.getAddvalueType()); + distributionAddvalueMapper.deleteAddvalue(distributionAppAddvalueDTO.getReservationId(), distributionAppAddvalueDTO.getAddvalueType()); } return R.success("操作成功"); } + @Override + public R updatePCAddvalueInfo(DistributionAppAddvalueDTO distributionAppAddvalueDTO) { + List packageEntityList = distributionAppAddvalueDTO.getPackageEntityList(); + if (Func.isEmpty(packageEntityList)){ + return R.fail("无包件信息"); + } + //这里需要查询出原来的增值服务项详情 + DistributionAddvalueDetailEntity detailEntity = distributionAddvalueDetailMapper.selectById(distributionAppAddvalueDTO.getAddvalueDetailId()); + if (Func.isEmpty(detailEntity)){ + log.error("###########查询增值服务详情错误:{}",detailEntity); + log.error("###########AddvalueDetailId>>>>>>>>>>>>>>>>>>>>>>>>>>>:{}",detailEntity); + return R.fail("服务器正忙............"); + } + String addvalueType = distributionAppAddvalueDTO.getAddvalueType(); + switch (addvalueType) { + case "1": + if (Func.isEmpty(distributionAppAddvalueDTO.getFloolNum())) { + return Resp.scanFail("添加失败", "请输入楼层数"); + } else { + detailEntity.setFloolNum(distributionAppAddvalueDTO.getFloolNum()); + } + break; + case "2": + if (Func.isEmpty(distributionAppAddvalueDTO.getDistance())) { + return Resp.scanFail("添加失败", "请输入超区公里数"); + } else { + detailEntity.setDistance(distributionAppAddvalueDTO.getDistance()); + } + break; + case "3": + if (Func.isEmpty(distributionAppAddvalueDTO.getDistance())) { + return Resp.scanFail("添加失败", "请输入平移距离"); + } else { + detailEntity.setDistance(distributionAppAddvalueDTO.getDistance()); + } + break; + case "4": + case "5": + if (Func.isEmpty(distributionAppAddvalueDTO.getNum())) { + return Resp.scanFail("添加失败", "请输入件数"); + } else { + detailEntity.setNum(distributionAppAddvalueDTO.getNum()); + } + break; + case "6": + if (Func.isEmpty(distributionAppAddvalueDTO.getFee())) { + return Resp.scanFail("添加失败", "错误的包件数量"); + } else { + detailEntity.setFee(distributionAppAddvalueDTO.getFee()); + } + break; + default: + return Resp.scanFail("添加失败", "服务器正忙"); + } + distributionAddvalueDetailMapper.updateById(detailEntity); + //查询出原来的包件信息 + DistributionAddvalueVO addvalueVO = distributionAddvalueMapper.selectReservationAddvalue(distributionAppAddvalueDTO.getReservationId(), addvalueType); + String packageListIds = addvalueVO.getPackageListIds(); + if (Func.isEmpty(packageListIds)){ + log.error("##############查询增值服务包件列表DI错误:{}",packageListIds); + } + List distributionAddvaluePackageEntities = distributionAddvaluePackageService.list(Wrappers.query().lambda() + .in(DistributionAddvaluePackageEntity::getPackageId, Func.toLongList(packageListIds)) + .eq(DistributionAddvaluePackageEntity::getAddvalueDetailId, distributionAppAddvalueDTO.getAddvalueDetailId())); + Map> oldPackageList = distributionAddvaluePackageEntities.stream().collect(Collectors.groupingBy(DistributionAddvaluePackageEntity::getPackageId)); + Map> newPackageList = packageEntityList.stream().collect(Collectors.groupingBy(DistributionAddvaluePackageEntity::getPackageId)); + newPackageList.forEach((k, v) -> { + DistributionAddvaluePackageDTO distributionAddvaluePackageEntity = v.get(0); + //只要不存在与就是新增,这里PC操作是一个包件累加操作,如果已经存在列表之中那么不进行添加 + if (Func.isEmpty(oldPackageList.get(k))) { + //从老的包件中无法进行获取,这里进行包件的新增 + DistributionAddvaluePackageEntity addvaluePackageEntity = new DistributionAddvaluePackageEntity(); + addvaluePackageEntity.setQuantity(distributionAddvaluePackageEntity.getZeroQuantity()); + addvaluePackageEntity.setAddvalueDetailId(distributionAddvaluePackageEntity.getAddvalueDetailId()); + addvaluePackageEntity.setStockArticleId(distributionAddvaluePackageEntity.getStockArticleId()); + addvaluePackageEntity.setMaterialName(distributionAddvaluePackageEntity.getMaterialName()); + addvaluePackageEntity.setPackageId(distributionAddvaluePackageEntity.getPackageId()); + addvaluePackageEntity.setReservationId(distributionAddvaluePackageEntity.getReservationId()); + if (distributionAddvaluePackageEntity.getConditions() == 3) { + addvaluePackageEntity.setConditions(3); + addvaluePackageEntity.setRecordType("3"); + distributionAddvaluePackageService.save(addvaluePackageEntity); + } else if (distributionAddvaluePackageEntity.getConditions() == 1) { + //新增订制品 + addvaluePackageEntity.setOrderPackageCode(distributionAddvaluePackageEntity.getOrderPackageCode()); + addvaluePackageEntity.setRecordType("1"); + addvaluePackageEntity.setConditions(1); + } else { + //新增库存品 + addvaluePackageEntity.setOrderPackageCode(distributionAddvaluePackageEntity.getOrderPackageCode()); + addvaluePackageEntity.setRecordType("2"); + addvaluePackageEntity.setConditions(2); + } +// distributionAddvaluePackageEntity.setAddvalueDetailId(distributionAddvaluePackageEntities.get(0).getAddvalueDetailId()); + distributionAddvaluePackageService.save(addvaluePackageEntity); + } else { + if (distributionAddvaluePackageEntity.getConditions() == 3) { + if (distributionAddvaluePackageEntity.getZeroQuantity() != 0) { + if (distributionAddvaluePackageEntity.getZeroQuantity() > 0) { + distributionAddvaluePackageEntity.setQuantity(distributionAddvaluePackageEntity.getZeroQuantity()); + distributionAddvaluePackageService.updateById(distributionAddvaluePackageEntity); + } else { + log.error("###############零担品类录入数量有误:{}", distributionAddvaluePackageEntity.getZeroQuantity()); + } + } else { + //删除对应的包件信息 + distributionAddvaluePackageMapper.deleteAddvaluePackage(distributionAddvaluePackageEntity.getReservationId(), distributionAddvaluePackageEntity.getPackageId()); + } + } + } + }); + return R.status(true); + } + // @Override // public List getAddvalueBySignfor(DistributionAddvalueDTO distributionAddvalueDTO) { // DistributionAddvalueVO addvalueVO = distributionAddvalueMapper.getAddvalueBySignfor(distributionAddvalueDTO); diff --git a/blade-service/logpm-distribution/src/main/java/com/logpm/distribution/service/impl/DistributionDeliveryListServiceImpl.java b/blade-service/logpm-distribution/src/main/java/com/logpm/distribution/service/impl/DistributionDeliveryListServiceImpl.java index 4cd1e0f35..890d86773 100644 --- a/blade-service/logpm-distribution/src/main/java/com/logpm/distribution/service/impl/DistributionDeliveryListServiceImpl.java +++ b/blade-service/logpm-distribution/src/main/java/com/logpm/distribution/service/impl/DistributionDeliveryListServiceImpl.java @@ -23,6 +23,7 @@ import com.baomidou.mybatisplus.core.conditions.update.UpdateWrapper; import com.baomidou.mybatisplus.core.metadata.IPage; import com.baomidou.mybatisplus.core.toolkit.ObjectUtils; import com.baomidou.mybatisplus.core.toolkit.Wrappers; +import com.google.gson.JsonObject; import com.logpm.basic.entity.BasicPrintTemplateEntity; import com.logpm.basic.feign.IBasicPrintTemplateClient; import com.logpm.basicdata.entity.BasicdataDriverArteryEntity; @@ -59,6 +60,7 @@ import org.springblade.common.constant.Inventory.InventoryLoadingStatusConstant; import org.springblade.common.constant.common.IsOrNoConstant; import org.springblade.common.constant.delivery.DeliveryLoadingStatusConstant; import org.springblade.common.constant.delivery.DeliveryStatusConstant; +import org.springblade.common.constant.loading.LoadScanSigningStatusConstant; import org.springblade.common.constant.loading.LoadingAbnormalAuditingStatusConstant; import org.springblade.common.constant.loading.LoadingIsInsertConstant; import org.springblade.common.constant.loading.LoadingStatusConstant; @@ -503,7 +505,7 @@ public class DistributionDeliveryListServiceImpl extends BaseServiceImpl distributionParcelListEntities = distributionDeliveryListMapper.selectPackageListByDeliveryListId(distrilbutionloadingscanDTO.getDeliveryId()); - if (Func.isNotEmpty(distrilbutionloadingscanDTO.getReservationId())){ + if (Func.isNotEmpty(distrilbutionloadingscanDTO.getReservationId())) { //在客户列表进行装车 distributionParcelListEntities = distributionReservationMapper.selectPackageListByReservationId(distrilbutionloadingscanDTO.getReservationId()); } @@ -554,7 +556,8 @@ public class DistributionDeliveryListServiceImpl extends BaseServiceImpl voGoodsLsit = trayTypeDataVO.getGoodsLsit(); - List trayGoodIds = voGoodsLsit.stream().filter(v -> v.getAssociationType().equals("3")).map(WarehouseTrayGoodsEntity::getAssociationId).collect(Collectors.toList()); - //此时经过过滤后的包件ID和托盘上的所有包件ID数量一致,视为该托盘上的均为包件 - if (voGoodsLsit.size() == trayGoodIds.size()) { + boolean isAllProducts = voGoodsLsit.stream().allMatch(t -> t.getAssociationType().equals("3")); + if (isAllProducts) { + //该托盘商全部都是订制品 + List trayGoodIds = voGoodsLsit.stream().filter(v -> v.getAssociationType().equals("3")).map(WarehouseTrayGoodsEntity::getAssociationId).collect(Collectors.toList()); List parcelListEntities = distributionParcelListService.listByIds(trayGoodIds); - boolean trayLoadingStatus = parcelListEntities.stream().allMatch(p -> p.getOrderPackageLoadingStatus().equals(OrderPackageLoadingStatusConstant.yizhuangche.getValue())); -// if (trayLoadingStatus){ -// return Resp.scanFail("托盘装车完毕","托盘货物已装车完毕"); -// } - List loadscanEntityList = distributionLoadscanService.list(Wrappers.query().lambda() - .eq(DistributionLoadscanEntity::getDeliveryId, distrilbutionloadingscanDTO.getDeliveryId()) - .ne(DistributionLoadscanEntity::getScanStatus, 1) - .eq(DistributionLoadscanEntity::getTrayNo, distrilbutionloadingscanDTO.getBarcode())); - - if (Func.isNotEmpty(loadscanEntityList) && loadscanEntityList.size() > 0 && trayLoadingStatus) { - return Resp.scanFail("重复扫描", "重复扫描"); + if (trayGoodIds.size() != parcelListEntities.size()){ + return Resp.scanFail("托盘存在其他货物", "托盘存在其他货物"); } - if (Func.isEmpty(parcelListEntities) || parcelListEntities.size() <= 0) { - return Resp.scanFail("操作失败", "该托盘上无货物信息"); - } - if (Func.isNotEmpty(distrilbutionloadingscanDTO.getReservationId())) { - //存在客户 这里就是针对客户进行的整托装车 - List parcelListEntityList = distributionReservationMapper.selectPackageListByReservationId(distrilbutionloadingscanDTO.getReservationId()); - Map parcelListEntityMap = parcelListEntityList.stream().collect(Collectors.toMap(DistributionParcelListEntity::getId, Function.identity(), (k1, k2) -> k2)); - boolean reservationFlag = parcelListEntities.stream().allMatch(p -> Func.isNotEmpty(parcelListEntityMap.get(p.getId()))); - if (reservationFlag) { - List reservationLoadscanEntities = new ArrayList<>(); - for (DistributionParcelListEntity parcelListEntity : parcelListEntities) { - if (parcelListEntity.getOrderPackageLoadingStatus().equals(OrderPackageLoadingStatusConstant.weizhuancghe.getValue())) { - parcelListEntity.setOrderPackageLoadingStatus(OrderPackageLoadingStatusConstant.yizhuangche.getValue()); - parcelListEntity.setOrderPackageStatus(OrderPackageStatusConstant.yichuku.getValue()); - distributionParcelListService.updateById(parcelListEntity); - DistributionLoadscanEntity loadscanEntity = new DistributionLoadscanEntity(); - if (Func.isNotEmpty(distributionDeliverySelfEntity.getDeliveryId())) { - loadscanEntity.setDriverId(distributionDeliverySelfEntity.getDriverId()); - } - if (Func.isNotEmpty(distributionDeliverySelfEntity.getDriverName())) { - loadscanEntity.setDriverName(distributionDeliverySelfEntity.getDriverName()); - } - if (Func.isNotEmpty(distributionDeliverySelfEntity.getVehicleNub())) { - loadscanEntity.setVehicleName(distributionDeliverySelfEntity.getVehicleNub()); - } - if (Func.isNotEmpty(distributionDeliverySelfEntity.getVehicleId())) { - loadscanEntity.setVehicleId(distributionDeliverySelfEntity.getVehicleId()); - } - if (Func.isNotEmpty(distributionDeliverySelfEntity.getDriverPhone())) { - loadscanEntity.setDriverPhone(distributionDeliverySelfEntity.getDriverPhone()); - } - loadscanEntity.setOrderId(parcelListEntity.getStockArticleId()); - loadscanEntity.setOrderPackageCode(parcelListEntity.getOrderPackageCode()); - loadscanEntity.setReservationId(distrilbutionloadingscanDTO.getReservationId()); - loadscanEntity.setDeliveryId(distrilbutionloadingscanDTO.getDeliveryId()); - loadscanEntity.setTrainNumber(distributionDeliveryListEntity.getTrainNumber()); - loadscanEntity.setPackageNub(parcelListEntity.getQuantity()); - loadscanEntity.setPackageId(parcelListEntity.getId()); - loadscanEntity.setScanTime(new Date()); - BladeUser user = AuthUtil.getUser(); - loadscanEntity.setScanUser(user.getUserName()); - loadscanEntity.setLoadingId(distrilbutionloadingscanDTO.getLoadingId()); - loadscanEntity.setOneClick(1); - loadscanEntity.setScanType("2"); - loadscanEntity.setScanStatus("1"); - loadscanEntity.setIsInsert(1); - loadscanEntity.setMsg("司机按照预约整托装车"); - loadscanEntity.setTrayNo(trayTypeDataVO.getTrayCode()); - reservationLoadscanEntities.add(loadscanEntity); - Integer i = distributionDeliveryListMapper.updateloadingTimeById(distrilbutionloadingscanDTO.getDeliveryId()); - //更新签收表的装车数量 - Integer j = distributionSignforMapper.updateloadByReservationId(loadscanEntity.getDeliveryId(), loadscanEntity.getReservationId(), loadscanEntity.getPackageNub()); -// loadingNum.getAndAdd(loadscanEntity.getPackageNub()); - } - } -// str.append("预约客户整托装车"); - distributionLoadscanService.saveBatch(reservationLoadscanEntities); - //这里则进行整托装车的数据构建 - } else { - return Resp.scanFail("整托装车失败", "存在其他客户货物"); + //判断该货物都属于同一客户才能进行装车 + List parcelListEntityList = distributionReservationMapper.selectPackageListByReservationId(distrilbutionloadingscanDTO.getReservationId()); + boolean isBelongToReservation = parcelListEntityList.stream().allMatch(tp -> parcelListEntityList.stream().map(DistributionParcelListEntity::getId).collect(Collectors.toList()).contains(tp.getId())); + if (isBelongToReservation) { + List loadscanEntityList = distributionLoadscanService.list(Wrappers.query().lambda() + .eq(DistributionLoadscanEntity::getDeliveryId, distrilbutionloadingscanDTO.getDeliveryId()) + .ne(DistributionLoadscanEntity::getScanStatus, 1) + .eq(DistributionLoadscanEntity::getTrayNo, distrilbutionloadingscanDTO.getBarcode())); + boolean trayLoadingStatus = parcelListEntities.stream().allMatch(p -> p.getOrderPackageLoadingStatus().equals(OrderPackageLoadingStatusConstant.yizhuangche.getValue())); + if (Func.isNotEmpty(loadscanEntityList) && loadscanEntityList.size() > 0 && trayLoadingStatus) { + return Resp.scanFail("重复扫描", "重复扫描"); } - } else { - //不存在客户 这里就是针对配送任务进行的整托装车 - List deliveryPackageList = distributionDeliveryListMapper.selectPackageListByDeliveryListId(distrilbutionloadingscanDTO.getDeliveryId()); - Map deliveryPackageMap = deliveryPackageList.stream().collect(Collectors.toMap(DistributionParcelListEntity::getId, Function.identity(), (k1, k2) -> k2)); - boolean delivaryFlag = parcelListEntities.stream().allMatch(p -> Func.isNotEmpty(deliveryPackageMap.get(p.getId()))); - if (delivaryFlag) { - List deliveryLoadscanEntities = new ArrayList<>(); - for (DistributionParcelListEntity parcelListEntity : parcelListEntities) { - if (parcelListEntity.getOrderPackageLoadingStatus().equals(OrderPackageLoadingStatusConstant.weizhuancghe.getValue())) { - //查询出这个包件属于哪个客户 - DistributionReservationEntity reservationEntity = distributionDeliveryListMapper.selectReservationByPackageAndDeliveryId(parcelListEntity.getOrderPackageCode(), distrilbutionloadingscanDTO.getDeliveryId()); - parcelListEntity.setOrderPackageLoadingStatus(OrderPackageLoadingStatusConstant.yizhuangche.getValue()); - parcelListEntity.setOrderPackageStatus(OrderPackageStatusConstant.yichuku.getValue()); - distributionParcelListService.updateById(parcelListEntity); - DistributionLoadscanEntity loadscanEntity = new DistributionLoadscanEntity(); - if (Func.isNotEmpty(distributionDeliverySelfEntity.getDeliveryId())) { - loadscanEntity.setDriverId(distributionDeliverySelfEntity.getDriverId()); - } - if (Func.isNotEmpty(distributionDeliverySelfEntity.getDriverName())) { - loadscanEntity.setDriverName(distributionDeliverySelfEntity.getDriverName()); - } - if (Func.isNotEmpty(distributionDeliverySelfEntity.getVehicleNub())) { - loadscanEntity.setVehicleName(distributionDeliverySelfEntity.getVehicleNub()); - } - if (Func.isNotEmpty(distributionDeliverySelfEntity.getVehicleId())) { - loadscanEntity.setVehicleId(distributionDeliverySelfEntity.getVehicleId()); - } - if (Func.isNotEmpty(distributionDeliverySelfEntity.getDriverPhone())) { - loadscanEntity.setDriverPhone(distributionDeliverySelfEntity.getDriverPhone()); - } - loadscanEntity.setOrderId(parcelListEntity.getStockArticleId()); - loadscanEntity.setOrderPackageCode(parcelListEntity.getOrderPackageCode()); - //查询出这个包件属于哪个客户 - - loadscanEntity.setReservationId(distrilbutionloadingscanDTO.getReservationId()); - loadscanEntity.setDeliveryId(distrilbutionloadingscanDTO.getDeliveryId()); - loadscanEntity.setTrainNumber(distributionDeliveryListEntity.getTrainNumber()); - loadscanEntity.setPackageNub(parcelListEntity.getQuantity()); - loadscanEntity.setPackageId(parcelListEntity.getId()); - loadscanEntity.setReservationId(reservationEntity.getId()); - loadscanEntity.setScanTime(new Date()); - BladeUser user = AuthUtil.getUser(); - loadscanEntity.setScanUser(user.getUserName()); - loadscanEntity.setLoadingId(distrilbutionloadingscanDTO.getLoadingId()); - loadscanEntity.setOneClick(1); - loadscanEntity.setScanType("2"); - loadscanEntity.setScanStatus("1"); - loadscanEntity.setIsInsert(1); - loadscanEntity.setMsg("司机按照计划整托装车"); - loadscanEntity.setTrayNo(trayTypeDataVO.getTrayCode()); - deliveryLoadscanEntities.add(loadscanEntity); - //更新装车时间 - Integer i = distributionDeliveryListMapper.updateloadingTimeById(distrilbutionloadingscanDTO.getDeliveryId()); - //更新签收表的装车数量 - Integer j = distributionSignforMapper.updateloadByReservationId(loadscanEntity.getDeliveryId(), loadscanEntity.getReservationId(), loadscanEntity.getPackageNub()); + if (Func.isEmpty(parcelListEntities) || parcelListEntities.size() <= 0) { + return Resp.scanFail("操作失败", "该托盘上无货物信息"); + } + if (Func.isNotEmpty(distrilbutionloadingscanDTO.getReservationId())) { + //存在客户 这里就是针对客户进行的整托装车 +// List parcelListEntityList = distributionReservationMapper.selectPackageListByReservationId(distrilbutionloadingscanDTO.getReservationId()); + Map parcelListEntityMap = parcelListEntityList.stream().collect(Collectors.toMap(DistributionParcelListEntity::getId, Function.identity(), (k1, k2) -> k2)); + boolean reservationFlag = parcelListEntities.stream().allMatch(p -> Func.isNotEmpty(parcelListEntityMap.get(p.getId()))); + if (reservationFlag) { + List reservationLoadscanEntities = new ArrayList<>(); + for (DistributionParcelListEntity parcelListEntity : parcelListEntities) { + warehouseUpdownTypeClient.downPackageOrDelTray(parcelListEntity.getOrderPackageCode(),myCurrentWarehouse.getId()); + if (parcelListEntity.getOrderPackageLoadingStatus().equals(OrderPackageLoadingStatusConstant.weizhuancghe.getValue())) { + parcelListEntity.setOrderPackageLoadingStatus(OrderPackageLoadingStatusConstant.yizhuangche.getValue()); + parcelListEntity.setOrderPackageStatus(OrderPackageStatusConstant.yichuku.getValue()); + distributionParcelListService.updateById(parcelListEntity); + DistributionLoadscanEntity loadscanEntity = new DistributionLoadscanEntity(); + if (Func.isNotEmpty(distributionDeliverySelfEntity.getDeliveryId())) { + loadscanEntity.setDriverId(distributionDeliverySelfEntity.getDriverId()); + } + if (Func.isNotEmpty(distributionDeliverySelfEntity.getDriverName())) { + loadscanEntity.setDriverName(distributionDeliverySelfEntity.getDriverName()); + } + if (Func.isNotEmpty(distributionDeliverySelfEntity.getVehicleNub())) { + loadscanEntity.setVehicleName(distributionDeliverySelfEntity.getVehicleNub()); + } + if (Func.isNotEmpty(distributionDeliverySelfEntity.getVehicleId())) { + loadscanEntity.setVehicleId(distributionDeliverySelfEntity.getVehicleId()); + } + if (Func.isNotEmpty(distributionDeliverySelfEntity.getDriverPhone())) { + loadscanEntity.setDriverPhone(distributionDeliverySelfEntity.getDriverPhone()); + } + loadscanEntity.setOrderId(parcelListEntity.getStockArticleId()); + loadscanEntity.setOrderPackageCode(parcelListEntity.getOrderPackageCode()); + loadscanEntity.setReservationId(distrilbutionloadingscanDTO.getReservationId()); + loadscanEntity.setDeliveryId(distrilbutionloadingscanDTO.getDeliveryId()); + loadscanEntity.setTrainNumber(distributionDeliveryListEntity.getTrainNumber()); + loadscanEntity.setPackageNub(parcelListEntity.getQuantity()); + loadscanEntity.setPackageId(parcelListEntity.getId()); + loadscanEntity.setScanTime(new Date()); + BladeUser user = AuthUtil.getUser(); + loadscanEntity.setScanUser(user.getUserName()); + loadscanEntity.setLoadingId(distrilbutionloadingscanDTO.getLoadingId()); + loadscanEntity.setOneClick(1); + loadscanEntity.setScanType("2"); + loadscanEntity.setScanStatus("1"); + loadscanEntity.setIsInsert(1); + loadscanEntity.setMsg("司机按照预约整托装车"); + loadscanEntity.setTrayNo(trayTypeDataVO.getTrayCode()); + reservationLoadscanEntities.add(loadscanEntity); + Integer i = distributionDeliveryListMapper.updateloadingTimeById(distrilbutionloadingscanDTO.getDeliveryId()); + //更新签收表的装车数量 + Integer j = distributionSignforMapper.updateloadByReservationId(loadscanEntity.getDeliveryId(), loadscanEntity.getReservationId(), loadscanEntity.getPackageNub()); // loadingNum.getAndAdd(loadscanEntity.getPackageNub()); + } } +// str.append("预约客户整托装车"); + distributionLoadscanService.saveBatch(reservationLoadscanEntities); + //这里则进行整托装车的数据构建 + } else { + return Resp.scanFail("整托装车失败", "存在其他客户货物"); } -// str.append("配送计划整托装车"); - distributionLoadscanService.saveBatch(deliveryLoadscanEntities); - //这里则进行整托装车的数据构建 - } else { - return Resp.scanFail("整托装车失败", "存在其他客户货物"); } } - //进行装车状态维护 - //TODO 需要一个维护状态的异步方法 - distributionAsyncService.checkLoadingByDelivery(distrilbutionloadingscanDTO.getDeliveryId()); - } else { - log.error("托盘存放货物类型不单一:{}", trayTypeDataVO); } } } @@ -769,6 +709,157 @@ public class DistributionDeliveryListServiceImpl extends BaseServiceImpl trayGoodIds = voGoodsLsit.stream().filter(v -> v.getAssociationType().equals("3")).map(WarehouseTrayGoodsEntity::getAssociationId).collect(Collectors.toList()); + //此时经过过滤后的包件ID和托盘上的所有包件ID数量一致,视为该托盘上的均为包件 +// if (voGoodsLsit.size() == trayGoodIds.size()) { +// List parcelListEntities = distributionParcelListService.listByIds(trayGoodIds); +//// if (trayLoadingStatus){ +//// return Resp.scanFail("托盘装车完毕","托盘货物已装车完毕"); +//// } +// +// if (Func.isNotEmpty(loadscanEntityList) && loadscanEntityList.size() > 0 && trayLoadingStatus) { +// return Resp.scanFail("重复扫描", "重复扫描"); +// } +// if (Func.isEmpty(parcelListEntities) || parcelListEntities.size() <= 0) { +// return Resp.scanFail("操作失败", "该托盘上无货物信息"); +// } +//// if (Func.isNotEmpty(distrilbutionloadingscanDTO.getReservationId())) { +//// //存在客户 这里就是针对客户进行的整托装车 +//// List parcelListEntityList = distributionReservationMapper.selectPackageListByReservationId(distrilbutionloadingscanDTO.getReservationId()); +//// Map parcelListEntityMap = parcelListEntityList.stream().collect(Collectors.toMap(DistributionParcelListEntity::getId, Function.identity(), (k1, k2) -> k2)); +//// boolean reservationFlag = parcelListEntities.stream().allMatch(p -> Func.isNotEmpty(parcelListEntityMap.get(p.getId()))); +//// if (reservationFlag) { +//// List reservationLoadscanEntities = new ArrayList<>(); +//// for (DistributionParcelListEntity parcelListEntity : parcelListEntities) { +//// if (parcelListEntity.getOrderPackageLoadingStatus().equals(OrderPackageLoadingStatusConstant.weizhuancghe.getValue())) { +//// parcelListEntity.setOrderPackageLoadingStatus(OrderPackageLoadingStatusConstant.yizhuangche.getValue()); +//// parcelListEntity.setOrderPackageStatus(OrderPackageStatusConstant.yichuku.getValue()); +//// distributionParcelListService.updateById(parcelListEntity); +//// DistributionLoadscanEntity loadscanEntity = new DistributionLoadscanEntity(); +//// if (Func.isNotEmpty(distributionDeliverySelfEntity.getDeliveryId())) { +//// loadscanEntity.setDriverId(distributionDeliverySelfEntity.getDriverId()); +//// } +//// if (Func.isNotEmpty(distributionDeliverySelfEntity.getDriverName())) { +//// loadscanEntity.setDriverName(distributionDeliverySelfEntity.getDriverName()); +//// } +//// if (Func.isNotEmpty(distributionDeliverySelfEntity.getVehicleNub())) { +//// loadscanEntity.setVehicleName(distributionDeliverySelfEntity.getVehicleNub()); +//// } +//// if (Func.isNotEmpty(distributionDeliverySelfEntity.getVehicleId())) { +//// loadscanEntity.setVehicleId(distributionDeliverySelfEntity.getVehicleId()); +//// } +//// if (Func.isNotEmpty(distributionDeliverySelfEntity.getDriverPhone())) { +//// loadscanEntity.setDriverPhone(distributionDeliverySelfEntity.getDriverPhone()); +//// } +//// loadscanEntity.setOrderId(parcelListEntity.getStockArticleId()); +//// loadscanEntity.setOrderPackageCode(parcelListEntity.getOrderPackageCode()); +//// loadscanEntity.setReservationId(distrilbutionloadingscanDTO.getReservationId()); +//// loadscanEntity.setDeliveryId(distrilbutionloadingscanDTO.getDeliveryId()); +//// loadscanEntity.setTrainNumber(distributionDeliveryListEntity.getTrainNumber()); +//// loadscanEntity.setPackageNub(parcelListEntity.getQuantity()); +//// loadscanEntity.setPackageId(parcelListEntity.getId()); +//// loadscanEntity.setScanTime(new Date()); +//// BladeUser user = AuthUtil.getUser(); +//// loadscanEntity.setScanUser(user.getUserName()); +//// loadscanEntity.setLoadingId(distrilbutionloadingscanDTO.getLoadingId()); +//// loadscanEntity.setOneClick(1); +//// loadscanEntity.setScanType("2"); +//// loadscanEntity.setScanStatus("1"); +//// loadscanEntity.setIsInsert(1); +//// loadscanEntity.setMsg("司机按照预约整托装车"); +//// loadscanEntity.setTrayNo(trayTypeDataVO.getTrayCode()); +//// reservationLoadscanEntities.add(loadscanEntity); +//// Integer i = distributionDeliveryListMapper.updateloadingTimeById(distrilbutionloadingscanDTO.getDeliveryId()); +//// //更新签收表的装车数量 +//// Integer j = distributionSignforMapper.updateloadByReservationId(loadscanEntity.getDeliveryId(), loadscanEntity.getReservationId(), loadscanEntity.getPackageNub()); +////// loadingNum.getAndAdd(loadscanEntity.getPackageNub()); +//// } +//// } +////// str.append("预约客户整托装车"); +//// distributionLoadscanService.saveBatch(reservationLoadscanEntities); +//// //这里则进行整托装车的数据构建 +//// } else { +//// return Resp.scanFail("整托装车失败", "存在其他客户货物"); +//// } +//// } else { +//// //不存在客户 这里就是针对配送任务进行的整托装车 +//// List deliveryPackageList = distributionDeliveryListMapper.selectPackageListByDeliveryListId(distrilbutionloadingscanDTO.getDeliveryId()); +//// Map deliveryPackageMap = deliveryPackageList.stream().collect(Collectors.toMap(DistributionParcelListEntity::getId, Function.identity(), (k1, k2) -> k2)); +//// boolean delivaryFlag = parcelListEntities.stream().allMatch(p -> Func.isNotEmpty(deliveryPackageMap.get(p.getId()))); +//// if (delivaryFlag) { +//// List deliveryLoadscanEntities = new ArrayList<>(); +//// for (DistributionParcelListEntity parcelListEntity : parcelListEntities) { +//// if (parcelListEntity.getOrderPackageLoadingStatus().equals(OrderPackageLoadingStatusConstant.weizhuancghe.getValue())) { +//// //查询出这个包件属于哪个客户 +//// DistributionReservationEntity reservationEntity = distributionDeliveryListMapper.selectReservationByPackageAndDeliveryId(parcelListEntity.getOrderPackageCode(), distrilbutionloadingscanDTO.getDeliveryId()); +//// parcelListEntity.setOrderPackageLoadingStatus(OrderPackageLoadingStatusConstant.yizhuangche.getValue()); +//// parcelListEntity.setOrderPackageStatus(OrderPackageStatusConstant.yichuku.getValue()); +//// distributionParcelListService.updateById(parcelListEntity); +//// DistributionLoadscanEntity loadscanEntity = new DistributionLoadscanEntity(); +//// if (Func.isNotEmpty(distributionDeliverySelfEntity.getDeliveryId())) { +//// loadscanEntity.setDriverId(distributionDeliverySelfEntity.getDriverId()); +//// } +//// if (Func.isNotEmpty(distributionDeliverySelfEntity.getDriverName())) { +//// loadscanEntity.setDriverName(distributionDeliverySelfEntity.getDriverName()); +//// } +//// if (Func.isNotEmpty(distributionDeliverySelfEntity.getVehicleNub())) { +//// loadscanEntity.setVehicleName(distributionDeliverySelfEntity.getVehicleNub()); +//// } +//// if (Func.isNotEmpty(distributionDeliverySelfEntity.getVehicleId())) { +//// loadscanEntity.setVehicleId(distributionDeliverySelfEntity.getVehicleId()); +//// } +//// if (Func.isNotEmpty(distributionDeliverySelfEntity.getDriverPhone())) { +//// loadscanEntity.setDriverPhone(distributionDeliverySelfEntity.getDriverPhone()); +//// } +//// loadscanEntity.setOrderId(parcelListEntity.getStockArticleId()); +//// loadscanEntity.setOrderPackageCode(parcelListEntity.getOrderPackageCode()); +//// //查询出这个包件属于哪个客户 +//// +//// loadscanEntity.setReservationId(distrilbutionloadingscanDTO.getReservationId()); +//// loadscanEntity.setDeliveryId(distrilbutionloadingscanDTO.getDeliveryId()); +//// loadscanEntity.setTrainNumber(distributionDeliveryListEntity.getTrainNumber()); +//// loadscanEntity.setPackageNub(parcelListEntity.getQuantity()); +//// loadscanEntity.setPackageId(parcelListEntity.getId()); +//// loadscanEntity.setReservationId(reservationEntity.getId()); +//// loadscanEntity.setScanTime(new Date()); +//// BladeUser user = AuthUtil.getUser(); +//// loadscanEntity.setScanUser(user.getUserName()); +//// loadscanEntity.setLoadingId(distrilbutionloadingscanDTO.getLoadingId()); +//// loadscanEntity.setOneClick(1); +//// loadscanEntity.setScanType("2"); +//// loadscanEntity.setScanStatus("1"); +//// loadscanEntity.setIsInsert(1); +//// loadscanEntity.setMsg("司机按照计划整托装车"); +//// loadscanEntity.setTrayNo(trayTypeDataVO.getTrayCode()); +//// deliveryLoadscanEntities.add(loadscanEntity); +//// //更新装车时间 +//// Integer i = distributionDeliveryListMapper.updateloadingTimeById(distrilbutionloadingscanDTO.getDeliveryId()); +//// //更新签收表的装车数量 +//// Integer j = distributionSignforMapper.updateloadByReservationId(loadscanEntity.getDeliveryId(), loadscanEntity.getReservationId(), loadscanEntity.getPackageNub()); +////// loadingNum.getAndAdd(loadscanEntity.getPackageNub()); +//// } +//// } +////// str.append("配送计划整托装车"); +//// distributionLoadscanService.saveBatch(deliveryLoadscanEntities); +//// //这里则进行整托装车的数据构建 +//// } else { +//// return Resp.scanFail("整托装车失败", "存在其他客户货物"); +//// } +//// } +// //进行装车状态维护 +// //TODO 需要一个维护状态的异步方法 +// distributionAsyncService.checkLoadingByDelivery(distrilbutionloadingscanDTO.getDeliveryId()); +// } else { +// log.error("托盘存放货物类型不单一:{}", trayTypeDataVO); +// } +// } +// } +// //查询已装车件数 +// String str = getLoadingMsg(distrilbutionloadingscanDTO); +// return Resp.scanSuccess("装车成功", str); +// } + + @NotNull private String getLoadingMsg(DistrilbutionloadingscanDTO distrilbutionloadingscanDTO) { List distributionLoadscanEntitiesflag = distributionLoadscanMapper.selectList(new QueryWrapper().lambda() @@ -1317,16 +1408,16 @@ public class DistributionDeliveryListServiceImpl extends BaseServiceImpl> allStockArticle = reservationStockarticleEntityList.stream().filter(f -> Func.isNotEmpty(f.getIsZero())).collect(Collectors.groupingBy(DistributionReservationStockarticleEntity::getIsZero)); DistributionDeliverySelfEntity finalDistributionDeliverySelfEntity = distributionDeliverySelfEntity; - allStockArticle.forEach((k, v) -> { - switch (k) { + for (DistributionReservationStockarticleEntity reservationStockarticleEntity : reservationStockarticleEntityList) { + switch (reservationStockarticleEntity.getIsZero()) { case "0": //订制品 - v.forEach(ord -> { - List parcelListEntities = distributionReservationMapper.selectPackageByReservationAndStockArticle(distrilbutionloadingscanDTO.getReservationId(), ord.getStockArticleId()); +// v.forEach(ord -> { + List parcelListEntities = distributionReservationMapper.selectPackageByReservationAndStockArticle(distrilbutionloadingscanDTO.getReservationId(), reservationStockarticleEntity.getStockArticleId()); for (DistributionParcelListEntity parcelListEntity : parcelListEntities) { DistributionLoadscanEntity packageLoadingScan = distributionLoadscanService.getOne(Wrappers.query().lambda() .eq(DistributionLoadscanEntity::getReservationId, distrilbutionloadingscanDTO.getReservationId()) - .eq(DistributionLoadscanEntity::getOrderId, ord.getStockArticleId()) + .eq(DistributionLoadscanEntity::getOrderId, reservationStockarticleEntity.getStockArticleId()) .eq(DistributionLoadscanEntity::getPackageId, parcelListEntity.getId()) .ne(DistributionLoadscanEntity::getScanStatus, LoadingStatusConstant.quxiao.getValue())); if (Func.isEmpty(packageLoadingScan)){ @@ -1379,22 +1470,22 @@ public class DistributionDeliveryListServiceImpl extends BaseServiceImpl { - List parcelNumberVOS = distributionReservationMapper.selectReservationZeroOrderDetail(zord.getStockArticleId(), distrilbutionloadingscanDTO.getReservationId()); +// v.forEach(zord -> { + List parcelNumberVOS = distributionReservationMapper.selectReservationZeroOrderDetail(reservationStockarticleEntity.getStockArticleId(), distrilbutionloadingscanDTO.getReservationId()); for (DistributionParcelNumberVO parcelNumberVO : parcelNumberVOS) { //这里需要查询是否已经存在有装车数据,如果有那么这里应该进行修改 DistributionLoadscanEntity loadscanServiceOne = distributionLoadscanService.getOne(Wrappers.query().lambda() .eq(DistributionLoadscanEntity::getReservationId, distrilbutionloadingscanDTO.getReservationId()) - .eq(DistributionLoadscanEntity::getOrderId, zord.getStockArticleId()) + .eq(DistributionLoadscanEntity::getOrderId, reservationStockarticleEntity.getStockArticleId()) .eq(DistributionLoadscanEntity::getPackageId, parcelNumberVO.getParcelListId()) .ne(DistributionLoadscanEntity::getScanStatus, LoadingStatusConstant.quxiao.getValue())); DistributionLoadscanEntity loadscanEntity = new DistributionLoadscanEntity(); @@ -1504,18 +1595,24 @@ public class DistributionDeliveryListServiceImpl extends BaseServiceImpl { +// +// }); // List stockListDetailEntityList = disStockListDetailService.list(Wrappers.query().lambda() // .eq(DisStockListDetailEntity::getReservationId, distrilbutionloadingscanDTO.getReservationId()) // .ne(DisStockListDetailEntity::getStockPackageStatus, ReservationInventoryStatusConstant.quxiao.getValue())); @@ -4144,6 +4241,9 @@ public class DistributionDeliveryListServiceImpl extends BaseServiceImpl selectDistributionSignforPage(IPage page, DistributionSignforVO distributionSignfor) { @@ -265,8 +269,10 @@ public class DistributionSignforServiceImpl extends BaseServiceImpl parcelListEntityList = distributionReservationMapper.selectPackageListByReservationId(distrilbutionloadingscanDTO.getReservationId()); //查询该客户是否存在该包件信息 List collect = parcelListEntityList.stream().filter(p -> p.getOrderPackageCode().equals(distrilbutionloadingscanDTO.getBarcode())).collect(Collectors.toList()); @@ -353,6 +359,7 @@ public class DistributionSignforServiceImpl extends BaseServiceImpl reservationStockarticleEntityList = distributionReservationStockarticleService.list(Wrappers.query().lambda().eq(DistributionReservationStockarticleEntity::getReservationId, signforEntity.getReservationId()).ne( DistributionReservationStockarticleEntity::getStockArticleStatus, ReservationOrderStatusConstant.quxiao.getValue())); - if (Func.isEmpty(reservationStockarticleEntityList)) { - log.error("#####################预约查询无订单信息,reservationId:{}", signforEntity.getReservationId()); - return null; - } +// if (Func.isEmpty(reservationStockarticleEntityList)) { +// log.error("#####################预约查询无订单信息,reservationId:{}", signforEntity.getReservationId()); +// return null; +// } List orderIds = reservationStockarticleEntityList.stream().map(DistributionReservationStockarticleEntity::getStockArticleId).collect(Collectors.toList()); List stockArticleEntities = distributionStockArticleService.listByIds(orderIds); List printEntities = baseMapper.selectSignImgsUrl(distributionSignforVO.getReservationId()); @@ -729,7 +736,7 @@ public class DistributionSignforServiceImpl extends BaseServiceImpl 0) { builder.append("异常").append(abnormalSignTotal.get() + "件"); } @@ -976,7 +983,7 @@ public class DistributionSignforServiceImpl extends BaseServiceImpl listDetailEntities = distributionDeliveryListMapper.selectInventoryListByDeliveryListId(distrilbutionloadingscanDTO.getDeliveryId()); + List listDetailEntities = distributionDeliveryListMapper.selectInventoryListByDeliveryListId(distrilbutionloadingscanDTO.getReservationId()); List deliveryInventory = listDetailEntities.stream().filter(inv -> inv.getStockPackageCode().equals(distrilbutionloadingscanDTO.getBarcode())).collect(Collectors.toList()); if (Func.isNotEmpty(deliveryInventory) && deliveryInventory.size() == 1) { return Resp.scanFail("窜货", "窜货"); @@ -1349,7 +1356,10 @@ public class DistributionSignforServiceImpl extends BaseServiceImpl 这里一件签收针对的就是制定的任务下的包件和库存品 @@ -1361,11 +1371,11 @@ public class DistributionSignforServiceImpl extends BaseServiceImpl> map = distributionSignfor.getMap(); - if (Func.isEmpty(map)){ - log.error("#############无图片信息:{}", map); - return R.fail("想用还偷懒~~"); - } +// Map> map = distributionSignfor.getMap(); +// if (Func.isEmpty(map)){ +// log.error("#############无图片信息:{}", map); +// return R.fail("无图片信息"); +// } this.updatePicture(distributionSignfor); //2、维护状态 DistributionReservationEntity reservationEntity = distributionReservationMapper.selectById(distributionSignfor.getReservationId()); @@ -1480,8 +1490,6 @@ public class DistributionSignforServiceImpl extends BaseServiceImpl parcelListEntityList = distributionReservationMapper.selectPackageListByReservationId(distributionSignforEntity.getReservationId()); //包件不需要考虑备货、装车直接可进行签收 过滤已装车的包件 - List noLoadingPackage = parcelListEntityList.stream().filter(p -> p.getOrderPackageLoadingStatus().equals(OrderPackageLoadingStatusConstant.weizhuancghe.getValue())).collect(Collectors.toList()); +// List noLoadingPackage = parcelListEntityList.stream().filter(p -> p.getOrderPackageLoadingStatus().equals(OrderPackageLoadingStatusConstant.weizhuancghe.getValue())).collect(Collectors.toList()); //查询该客户下的所有零担信息 List parcelNumberEntityList = distributionReservationMapper.selectZeroPackageListByReservationId(distributionSignforEntity.getReservationId()); if (Func.isNotEmpty(parcelNumberEntityList)) { @@ -1591,6 +1599,7 @@ public class DistributionSignforServiceImpl extends BaseServiceImplquery().lambda().eq(DistributionSignforEntity::getDeliveryId, distributionLoadscanEntity.getDeliveryId()).eq(DistributionSignforEntity::getReservationId, distributionLoadscanEntity.getReservationId())); BigDecimal loadedNumber = new BigDecimal(signforEntity.getLoadedNumber()); @@ -1664,107 +1673,193 @@ public class DistributionSignforServiceImpl extends BaseServiceImpl list = distributionLoadscanService.list(Wrappers.query().lambda() - .eq(DistributionLoadscanEntity::getPackageId, parcelListEntity.getId()) - .eq(DistributionLoadscanEntity::getDeliveryId, distributionSignforEntity.getDeliveryId()) - .eq(DistributionLoadscanEntity::getReservationId, distributionSignforEntity.getReservationId()) - .ne(DistributionLoadscanEntity::getScanStatus, LoadingStatusConstant.quxiao.getValue())); - if (list.size() == 1) { - DistributionLoadscanEntity loadscanEntity = list.get(0); - if (distributionSignfor.getIsClerk()) { - loadscanEntity.setMsg("文员一键签收数据补录"); - } else { - loadscanEntity.setMsg("司机一键签收数据补录"); - } - loadscanEntity.setSignforState(LoadScanSigningStatusConstant.yiqianshou.getValue()); - loadscanEntity.setReceivedQuantity(parcelListEntity.getQuantity()); - loadscanEntity.setOneClick(1); - loadscanEntity.setOneQclick(2); - loadscanEntity.setSigningUser(user.getUserName()); - loadscanEntity.setSigningUserId(user.getUserId()); - loadscanEntity.setReceivedQuantity(parcelListEntity.getQuantity()); - loadscanEntity.setSigningTime(simpleDateFormat.format(new Date())); - distributionLoadscanService.updateById(loadscanEntity); - Integer i = distributionDeliveryListMapper.updateloadingTimeById(distributionDeliveryListEntity.getId()); - Integer j = distributionSignforMapper.updateSignforNum(loadscanEntity.getDeliveryId(), loadscanEntity.getReservationId(), loadscanEntity.getPackageNub()); + //查询是否进行装车 + DistributionLoadscanEntity loadscanEntities = distributionLoadscanService.getOne(Wrappers.query().lambda() + .eq(DistributionLoadscanEntity::getPackageId, parcelListEntity.getId()) + .eq(DistributionLoadscanEntity::getDeliveryId, distributionSignforEntity.getDeliveryId()) + .eq(DistributionLoadscanEntity::getReservationId, distributionSignforEntity.getReservationId()) + .ne(DistributionLoadscanEntity::getScanStatus, LoadingStatusConstant.quxiao.getValue())); + parcelListEntity.setOrderPackageLoadingStatus(OrderPackageLoadingStatusConstant.yizhuangche.getValue()); + parcelListEntity.setOrderPackageStatus(OrderPackageStatusConstant.yiqianshou.getValue()); + if (Func.isEmpty(loadscanEntities)) { + //没有进行过装车操作 + + DistributionLoadscanEntity loadscanEntity = new DistributionLoadscanEntity(); + loadscanEntity.setPackageId(parcelListEntity.getId()); + loadscanEntity.setOrderPackageCode(parcelListEntity.getOrderPackageCode()); + loadscanEntity.setOrderId(parcelListEntity.getStockArticleId()); + loadscanEntity.setDeliveryId(distributionSignforEntity.getDeliveryId()); + loadscanEntity.setReservationId(distributionSignforEntity.getReservationId()); + loadscanEntity.setScanUser(user.getUserName()); + loadscanEntity.setScanTime(new Date()); + loadscanEntity.setPackageNub(parcelListEntity.getQuantity()); + loadscanEntity.setSigningUser(user.getUserName()); + loadscanEntity.setSigningUserId(user.getUserId()); + if (Func.isNotEmpty(distributionDeliverySelfEntity.getDriverId())) { + loadscanEntity.setDriverId(distributionDeliverySelfEntity.getDriverId()); + } + if (Func.isNotEmpty(distributionDeliverySelfEntity.getDriverName())) { + loadscanEntity.setDriverName(distributionDeliverySelfEntity.getDriverName()); + } + if (Func.isNotEmpty(distributionDeliverySelfEntity.getVehicleId())) { + loadscanEntity.setVehicleId(distributionDeliverySelfEntity.getVehicleId()); + } + if (Func.isNotEmpty(distributionDeliverySelfEntity.getVehicleNub())) { + loadscanEntity.setVehicleName(distributionDeliverySelfEntity.getVehicleNub()); + } + if (Func.isNotEmpty(distributionDeliverySelfEntity.getDriverPhone())) { + loadscanEntity.setDriverPhone(distributionDeliverySelfEntity.getDriverPhone()); + } + loadscanEntity.setLoadingId(distributionDeliverySelfEntity.getId().toString()); + loadscanEntity.setScanStatus(LoadingStatusConstant.yijianzhuangche.getValue()); + loadscanEntity.setIsInsert(LoadingIsInsertConstant.bulu.getValue()); + loadscanEntity.setScanType("1"); + loadscanEntity.setType(2); + loadscanEntity.setSignforState(LoadScanSigningStatusConstant.yiqianshou.getValue()); + loadscanEntity.setIsSignfor(1); + loadscanEntity.setReceivedQuantity(parcelListEntity.getQuantity()); + loadscanEntity.setOneClick(2); + loadscanEntity.setOneQclick(2); + loadscanEntity.setSigningTime(simpleDateFormat.format(new Date())); + if (distributionSignfor.getIsClerk()) { + loadscanEntity.setMsg("文员一键签收数据补录"); } else { - //一个配送任务下,同一个客户出现了相同的包件信息 - log.error("#########相同的包件信息={}" + parcelListEntity.getId()); + loadscanEntity.setMsg("司机一键签收数据补录"); } + distributionLoadscanService.save(loadscanEntity); + Integer i = distributionDeliveryListMapper.updateloadingTimeById(distributionDeliveryListEntity.getId()); + //更新签收表的签收数量和装车数量 + Integer j = distributionSignforMapper.updateSignforByReservationId(loadscanEntity.getDeliveryId(), loadscanEntity.getReservationId(), loadscanEntity.getPackageNub()); + distributionAsyncService.checkStockArticleSignStatus(parcelListEntity); + warehouseUpdownTypeClient.downPackageOrDelTray(parcelListEntity.getOrderPackageCode(), myCurrentWarehouse.getId()); } else { - log.error("#########包件异常{}" + parcelListEntity.getId()); + //存在装车数据 + if (distributionSignfor.getIsClerk()) { + loadscanEntities.setMsg("文员一键签收数据补录"); + } else { + loadscanEntities.setMsg("司机一键签收数据补录"); + } + if (!loadscanEntities.getSignforState().equals(LoadScanSigningStatusConstant.yiqianshou.getValue())) { + loadscanEntities.setSignforState(LoadScanSigningStatusConstant.yiqianshou.getValue()); + loadscanEntities.setReceivedQuantity(parcelListEntity.getQuantity()); + loadscanEntities.setOneClick(1); + loadscanEntities.setOneQclick(2); + loadscanEntities.setSigningUser(user.getUserName()); + loadscanEntities.setSigningUserId(user.getUserId()); + loadscanEntities.setReceivedQuantity(parcelListEntity.getQuantity()); + loadscanEntities.setSigningTime(simpleDateFormat.format(new Date())); + distributionLoadscanService.updateById(loadscanEntities); + Integer i = distributionDeliveryListMapper.updateloadingTimeById(distributionDeliveryListEntity.getId()); + //更新签收数量 + Integer j = distributionSignforMapper.updateSignforNum(loadscanEntities.getDeliveryId(), loadscanEntities.getReservationId(), loadscanEntities.getPackageNub()); + } } - distributionAsyncService.checkStockArticleSignStatus(parcelListEntity); + distributionParcelListService.updateById(parcelListEntity); } } +// if (Func.equals(parcelListEntity.getOrderPackageStatus(), OrderPackageStatusConstant.yiqianshou.getValue())) { +// continue; +// } else if (Func.equals(parcelListEntity.getOrderPackageLoadingStatus(), OrderPackageLoadingStatusConstant.yizhuangche.getValue())) { +// //修改包件的状态为出库状态 +// parcelListEntity.setOrderPackageStatus(OrderPackageStatusConstant.yiqianshou.getValue()); +// distributionParcelListService.updateById(parcelListEntity); +// //查询出对应的装车扫描信息进行修改 +// List list = distributionLoadscanService.list(Wrappers.query().lambda() +// .eq(DistributionLoadscanEntity::getPackageId, parcelListEntity.getId()) +// .eq(DistributionLoadscanEntity::getDeliveryId, distributionSignforEntity.getDeliveryId()) +// .eq(DistributionLoadscanEntity::getReservationId, distributionSignforEntity.getReservationId()) +// .ne(DistributionLoadscanEntity::getScanStatus, LoadingStatusConstant.quxiao.getValue())); +// if (list.size() == 1) { +// DistributionLoadscanEntity loadscanEntity = list.get(0); +// if (distributionSignfor.getIsClerk()) { +// loadscanEntity.setMsg("文员一键签收数据补录"); +// } else { +// loadscanEntity.setMsg("司机一键签收数据补录"); +// } +// loadscanEntity.setSignforState(LoadScanSigningStatusConstant.yiqianshou.getValue()); +// loadscanEntity.setReceivedQuantity(parcelListEntity.getQuantity()); +// loadscanEntity.setOneClick(1); +// loadscanEntity.setOneQclick(2); +// loadscanEntity.setSigningUser(user.getUserName()); +// loadscanEntity.setSigningUserId(user.getUserId()); +// loadscanEntity.setReceivedQuantity(parcelListEntity.getQuantity()); +// loadscanEntity.setSigningTime(simpleDateFormat.format(new Date())); +// distributionLoadscanService.updateById(loadscanEntity); +// Integer i = distributionDeliveryListMapper.updateloadingTimeById(distributionDeliveryListEntity.getId()); +// Integer j = distributionSignforMapper.updateSignforNum(loadscanEntity.getDeliveryId(), loadscanEntity.getReservationId(), loadscanEntity.getPackageNub()); +// } else { +// //一个配送任务下,同一个客户出现了相同的包件信息 +// log.error("#########相同的包件信息={}" + parcelListEntity.getId()); +// } +// } else { +// log.error("#########包件异常{}" + parcelListEntity.getId()); +// } +// distributionAsyncService.checkStockArticleSignStatus(parcelListEntity); +// } +// } - if (Func.isNotEmpty(noLoadingPackage) && noLoadingPackage.size() > 0) { - //存在有未装车的包件信息 - //统计新装车的包件数 - for (DistributionParcelListEntity parcelListEntity : noLoadingPackage) { - parcelListEntity.setOrderPackageLoadingStatus(OrderPackageLoadingStatusConstant.yizhuangche.getValue()); - parcelListEntity.setOrderPackageStatus(OrderPackageStatusConstant.yiqianshou.getValue()); - distributionParcelListService.updateById(parcelListEntity); - DistributionLoadscanEntity loadscanEntity = new DistributionLoadscanEntity(); - loadscanEntity.setPackageId(parcelListEntity.getId()); - loadscanEntity.setOrderPackageCode(parcelListEntity.getOrderPackageCode()); - loadscanEntity.setOrderId(parcelListEntity.getStockArticleId()); - loadscanEntity.setDeliveryId(distributionSignforEntity.getDeliveryId()); - loadscanEntity.setReservationId(distributionSignforEntity.getReservationId()); - loadscanEntity.setScanUser(user.getUserName()); - loadscanEntity.setScanTime(new Date()); - loadscanEntity.setPackageNub(parcelListEntity.getQuantity()); - loadscanEntity.setSigningUser(user.getUserName()); - loadscanEntity.setSigningUserId(user.getUserId()); - if (Func.isNotEmpty(distributionDeliverySelfEntity.getDriverId())) { - loadscanEntity.setDriverId(distributionDeliverySelfEntity.getDriverId()); - } - if (Func.isNotEmpty(distributionDeliverySelfEntity.getDriverName())) { - loadscanEntity.setDriverName(distributionDeliverySelfEntity.getDriverName()); - } - if (Func.isNotEmpty(distributionDeliverySelfEntity.getVehicleId())) { - loadscanEntity.setVehicleId(distributionDeliverySelfEntity.getVehicleId()); - } - if (Func.isNotEmpty(distributionDeliverySelfEntity.getVehicleNub())) { - loadscanEntity.setVehicleName(distributionDeliverySelfEntity.getVehicleNub()); - } - if (Func.isNotEmpty(distributionDeliverySelfEntity.getDriverPhone())) { - loadscanEntity.setDriverPhone(distributionDeliverySelfEntity.getDriverPhone()); - } - loadscanEntity.setLoadingId(distributionDeliverySelfEntity.getId().toString()); - loadscanEntity.setScanStatus(LoadingStatusConstant.yijianzhuangche.getValue()); - loadscanEntity.setIsInsert(LoadingIsInsertConstant.bulu.getValue()); - loadscanEntity.setScanType("1"); - loadscanEntity.setType(2); - loadscanEntity.setSignforState(LoadScanSigningStatusConstant.yiqianshou.getValue()); - loadscanEntity.setIsSignfor(1); - loadscanEntity.setReceivedQuantity(parcelListEntity.getQuantity()); - loadscanEntity.setOneClick(2); - loadscanEntity.setOneQclick(2); - loadscanEntity.setSigningTime(simpleDateFormat.format(new Date())); - if (distributionSignfor.getIsClerk()) { - loadscanEntity.setMsg("文员一键签收数据补录"); - } else { - loadscanEntity.setMsg("司机一键签收数据补录"); - } - distributionLoadscanService.save(loadscanEntity); - Integer i = distributionDeliveryListMapper.updateloadingTimeById(distributionDeliveryListEntity.getId()); - //更新签收表的签收数量和装车数量 - Integer j = distributionSignforMapper.updateSignforByReservationId(loadscanEntity.getDeliveryId(), loadscanEntity.getReservationId(), loadscanEntity.getPackageNub()); - distributionAsyncService.checkStockArticleSignStatus(parcelListEntity); +// if (Func.isNotEmpty(noLoadingPackage) && noLoadingPackage.size() > 0) { +// //存在有未装车的包件信息 +// //统计新装车的包件数 +// for (DistributionParcelListEntity parcelListEntity : noLoadingPackage) { +// parcelListEntity.setOrderPackageLoadingStatus(OrderPackageLoadingStatusConstant.yizhuangche.getValue()); +// parcelListEntity.setOrderPackageStatus(OrderPackageStatusConstant.yiqianshou.getValue()); +// distributionParcelListService.updateById(parcelListEntity); +// DistributionLoadscanEntity loadscanEntity = new DistributionLoadscanEntity(); +// loadscanEntity.setPackageId(parcelListEntity.getId()); +// loadscanEntity.setOrderPackageCode(parcelListEntity.getOrderPackageCode()); +// loadscanEntity.setOrderId(parcelListEntity.getStockArticleId()); +// loadscanEntity.setDeliveryId(distributionSignforEntity.getDeliveryId()); +// loadscanEntity.setReservationId(distributionSignforEntity.getReservationId()); +// loadscanEntity.setScanUser(user.getUserName()); +// loadscanEntity.setScanTime(new Date()); +// loadscanEntity.setPackageNub(parcelListEntity.getQuantity()); +// loadscanEntity.setSigningUser(user.getUserName()); +// loadscanEntity.setSigningUserId(user.getUserId()); +// if (Func.isNotEmpty(distributionDeliverySelfEntity.getDriverId())) { +// loadscanEntity.setDriverId(distributionDeliverySelfEntity.getDriverId()); +// } +// if (Func.isNotEmpty(distributionDeliverySelfEntity.getDriverName())) { +// loadscanEntity.setDriverName(distributionDeliverySelfEntity.getDriverName()); +// } +// if (Func.isNotEmpty(distributionDeliverySelfEntity.getVehicleId())) { +// loadscanEntity.setVehicleId(distributionDeliverySelfEntity.getVehicleId()); +// } +// if (Func.isNotEmpty(distributionDeliverySelfEntity.getVehicleNub())) { +// loadscanEntity.setVehicleName(distributionDeliverySelfEntity.getVehicleNub()); +// } +// if (Func.isNotEmpty(distributionDeliverySelfEntity.getDriverPhone())) { +// loadscanEntity.setDriverPhone(distributionDeliverySelfEntity.getDriverPhone()); +// } +// loadscanEntity.setLoadingId(distributionDeliverySelfEntity.getId().toString()); +// loadscanEntity.setScanStatus(LoadingStatusConstant.yijianzhuangche.getValue()); +// loadscanEntity.setIsInsert(LoadingIsInsertConstant.bulu.getValue()); +// loadscanEntity.setScanType("1"); +// loadscanEntity.setType(2); +// loadscanEntity.setSignforState(LoadScanSigningStatusConstant.yiqianshou.getValue()); +// loadscanEntity.setIsSignfor(1); +// loadscanEntity.setReceivedQuantity(parcelListEntity.getQuantity()); +// loadscanEntity.setOneClick(2); +// loadscanEntity.setOneQclick(2); +// loadscanEntity.setSigningTime(simpleDateFormat.format(new Date())); +// if (distributionSignfor.getIsClerk()) { +// loadscanEntity.setMsg("文员一键签收数据补录"); +// } else { +// loadscanEntity.setMsg("司机一键签收数据补录"); +// } +// distributionLoadscanService.save(loadscanEntity); +// Integer i = distributionDeliveryListMapper.updateloadingTimeById(distributionDeliveryListEntity.getId()); +// //更新签收表的签收数量和装车数量 +// Integer j = distributionSignforMapper.updateSignforByReservationId(loadscanEntity.getDeliveryId(), loadscanEntity.getReservationId(), loadscanEntity.getPackageNub()); // distributionAsyncService.checkStockArticleSignStatus(parcelListEntity); - //保存完成签收包件装车数量累加 - } - } +// warehouseUpdownTypeClient.downPackageOrDelTray(parcelListEntity.getOrderPackageCode(), myCurrentWarehouse.getId()); +// +//// distributionAsyncService.checkStockArticleSignStatus(parcelListEntity); +// //保存完成签收包件装车数量累加 +// } +// } //维护客户信息状态 reservationEntity.setLoadingStatus(ReservationLoadingStatusConstant.yizhuangche.getValue()); reservationEntity.setSigningStatus(ReservationSigningStatusConstant.yiqianshou.getValue());