From 0b2c9e16ef06439d20231383e3edb613f45ef0dd Mon Sep 17 00:00:00 2001 From: PigBaoBei <2739175034@qq.com> Date: Fri, 5 Jan 2024 17:50:50 +0800 Subject: [PATCH] =?UTF-8?q?=E9=85=8D=E9=80=81=E8=AF=A6=E6=83=85=E5=A2=9E?= =?UTF-8?q?=E5=8A=A0=E5=BA=93=E5=AD=98=E5=93=81=E7=AD=BE=E6=94=B6?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- ...ributionReservationInventoryPackageVO.java | 189 ++++++++++++++++++ .../DistributionDeliveryListController.java | 19 ++ .../mapper/DistributionReservationMapper.java | 8 + .../mapper/DistributionReservationMapper.xml | 91 +++++++++ .../IDistributionDeliveryInfoService.java | 7 + .../service/IDistributionSignforService.java | 7 + .../impl/DistributionAsyncServiceImpl.java | 1 + .../DistributionDeliveryInfoServiceImpl.java | 15 ++ .../DistributionDeliveryListServiceImpl.java | 2 +- .../impl/DistributionSignforServiceImpl.java | 126 +++++++++++- 10 files changed, 462 insertions(+), 3 deletions(-) create mode 100644 blade-service-api/logpm-distribution-api/src/main/java/com/logpm/distribution/vo/DistributionReservationInventoryPackageVO.java diff --git a/blade-service-api/logpm-distribution-api/src/main/java/com/logpm/distribution/vo/DistributionReservationInventoryPackageVO.java b/blade-service-api/logpm-distribution-api/src/main/java/com/logpm/distribution/vo/DistributionReservationInventoryPackageVO.java new file mode 100644 index 000000000..f1b1943f2 --- /dev/null +++ b/blade-service-api/logpm-distribution-api/src/main/java/com/logpm/distribution/vo/DistributionReservationInventoryPackageVO.java @@ -0,0 +1,189 @@ +/* + * Copyright (c) 2018-2028, Chill Zhuang All rights reserved. + * + * Redistribution and use in source and binary forms, with or without + * modification, are permitted provided that the following conditions are met: + * + * Redistributions of source code must retain the above copyright notice, + * this list of conditions and the following disclaimer. + * Redistributions in binary form must reproduce the above copyright + * notice, this list of conditions and the following disclaimer in the + * documentation and/or other materials provided with the distribution. + * Neither the name of the dreamlu.net developer nor the names of its + * contributors may be used to endorse or promote products derived from + * this software without specific prior written permission. + * Author: Chill 庄骞 (smallchill@163.com) + */ +package com.logpm.distribution.vo; + +import com.logpm.distribution.entity.DistributionReservationStocklistEntity; +import io.swagger.annotations.ApiModelProperty; +import lombok.Data; +import lombok.EqualsAndHashCode; + +import java.util.List; + +/** + * 预约库存中间表 视图实体类 + * + * @author TJJ + * @since 2023-06-28 + */ +@Data +public class DistributionReservationInventoryPackageVO{ + private static final long serialVersionUID = 1L; + + + + + /** + * 库存品包条码 + */ + @ApiModelProperty(value = "库存品包条码") + private String stockPackageCode; + + /** + * 库存品包件Id + */ + @ApiModelProperty(value = "库存品包件Id") + private Long id; + + /** + * 库存品包件装车状态 + */ + @ApiModelProperty(value = "库存品包件装车状态") + private String stockLockingStatus; + + /** + * 库存品包件装车状态 + */ + @ApiModelProperty(value = "库存品包件装车状态") + private String stockLockingStatusName; + + /** + * 库存品包件装车状态 + */ + @ApiModelProperty(value = "库存品包件装车状态") + private String stockStatus; + + /** + * 库存品包件备货状态 + */ + @ApiModelProperty(value = "库存品包件备货状态") + private String stockStatusName; + + + /** + * 库存品包件签收状态 + */ + @ApiModelProperty(value = "库存品包件签收状态") + private String stockSignfoStatus; + + /** + * 库存品包件签收状态 + */ + @ApiModelProperty(value = "库存品包件签收状态") + private String stockSignfoStatusName; + + /** + * 库存品计划出库数量 + */ + @ApiModelProperty(value = "库存品计划出库数量") + private Integer num; + + /** + * 库存品包件物料编码 + */ + @ApiModelProperty(value = "库存品包件物料编码") + private String cargoNumber; + + /** + * 库存品包件订单自编码 + */ + @ApiModelProperty(value = "库存品包件订单自编码") + private String orderCode; + + /** + * 库存品包件入库批次号 + */ + @ApiModelProperty(value = "库存品包件入库批次号") + private String incomingBatch; + + /** + * 库存品包件物料名称 + */ + @ApiModelProperty(value = "库存品包件物料名称") + private String descriptionGoods; + + /** + * 库存品包件物料单位 + */ + @ApiModelProperty(value = "库存品包件物料单位") + private String cargoUnit; + + + /** + * 库存品包件商场名称 + */ + @ApiModelProperty(value = "库存品包件商场名称") + private String marketName; + + + /** + * 库存品包件品牌信息 + */ + @ApiModelProperty(value = "库存品包件品牌信息") + private String brandName; + + /** + * 库存品包件计划装车人 + */ + @ApiModelProperty(value = "库存品包件计划装车人") + private String driverName; + + /** + * 库存品包件计划装车车牌 + */ + @ApiModelProperty(value = "库存品包件计划装车车牌") + private String vehicleName; + + /** + * 库存品包件装车方式 + */ + @ApiModelProperty(value = "库存品包件装车方式") + private String scanStatus; + + /** + * 库存品包件装车时间 + */ + @ApiModelProperty(value = "库存品包件装车时间") + private String scanTime; + + + /** + * 库存品包件装车数量 + */ + @ApiModelProperty(value = "库存品包件装车数量") + private Integer loadedNub; + + /** + * 库存品包件装车人 + */ + @ApiModelProperty(value = "库存品包件装车人") + private String scanUser; + + /** + * 库存品包件签收人 + */ + @ApiModelProperty(value = "库存品包件签收人") + private String signingUser; + + /** + * 库存品包件签收时间 + */ + @ApiModelProperty(value = "库存品包件签收时间") + private String signingTime; + + + +} diff --git a/blade-service/logpm-distribution/src/main/java/com/logpm/distribution/controller/DistributionDeliveryListController.java b/blade-service/logpm-distribution/src/main/java/com/logpm/distribution/controller/DistributionDeliveryListController.java index 9b8b707b0..fa4319395 100644 --- a/blade-service/logpm-distribution/src/main/java/com/logpm/distribution/controller/DistributionDeliveryListController.java +++ b/blade-service/logpm-distribution/src/main/java/com/logpm/distribution/controller/DistributionDeliveryListController.java @@ -104,6 +104,17 @@ public class DistributionDeliveryListController extends BladeController { return R.data(pages); } + /** + * 查看库存品包件 详情 + */ + @GetMapping("/getReservationPackageList") + @ApiOperationSupport(order = 1) + @ApiOperation(value = "查看包件详情", notes = "传入distributionDeliveryList") + public R<IPage<DistributionReservationInventoryPackageVO>> getReservationPackageList(@RequestParam Map<String,Object> reservationPackageDTO, Query query) { + IPage<DistributionReservationInventoryPackageVO> pages = distributionDeliveryInfoService.getReservationPackageList(reservationPackageDTO,Condition.getPage(query)); + return R.data(pages); + } + /** * 查看订单 */ @@ -463,4 +474,12 @@ public class DistributionDeliveryListController extends BladeController { } return r; } + + @PostMapping("/deliveryInventorySign") + @ApiOperationSupport(order = 2) + @ApiOperation(value = "PC签收包件") + public R deliveryInventorySign(@Valid @RequestBody DistrilbutionAppsignforDTO distrilbutionloadingscanDTO) { + R r = distributionSignforService.signforInPC(distrilbutionloadingscanDTO); + return r; + } } diff --git a/blade-service/logpm-distribution/src/main/java/com/logpm/distribution/mapper/DistributionReservationMapper.java b/blade-service/logpm-distribution/src/main/java/com/logpm/distribution/mapper/DistributionReservationMapper.java index cf79fd9d4..cb4ffd81a 100644 --- a/blade-service/logpm-distribution/src/main/java/com/logpm/distribution/mapper/DistributionReservationMapper.java +++ b/blade-service/logpm-distribution/src/main/java/com/logpm/distribution/mapper/DistributionReservationMapper.java @@ -348,4 +348,12 @@ public interface DistributionReservationMapper extends BaseMapper<DistributionRe * @return */ int updatePackageDeliveryStatus(@Param("reservationId") Long reservationId,@Param("packageIds") List<Long> packageIds); + + /** + * 查询客户库存品包件信息 + * @param reservationPackageDTO + * @param page + * @return + */ + IPage<DistributionReservationInventoryPackageVO> selectInvenToryPackageByReservationInfo(@Param("param") Map<String, Object> reservationPackageDTO,IPage<DistributionReservationInventoryPackageVO> page); } 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 5034afa41..c97f4faec 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 @@ -1550,5 +1550,96 @@ and ldpl.third_product like concat('%',#{param.thirdProduct},'%') </if> </select> + <select id="selectInvenToryPackageByReservationInfo" + resultType="com.logpm.distribution.vo.DistributionReservationInventoryPackageVO"> + SELECT + ldsld.stock_package_code, + ldsld.id, + CASE + WHEN ldsld.stock_locking_status = '20' THEN '已装车' + WHEN ldsld.stock_locking_status = '10' THEN '未装车' + END stockLockingStatusName, + CASE + WHEN ldsld.stock_status = '10' THEN '未备货' + WHEN ldsld.stock_status = '20' THEN '已备货' + END stockStatusName, + CASE + WHEN ldsld.stock_signfo_status = '10' THEN '未签收' + WHEN ldsld.stock_signfo_status = '20' THEN '已签收' + END stockSignfoStatusName, + ldsld.stock_locking_status, + ldsld.stock_status, + ldsld.stock_signfo_status, + ldsld.num, + ldsl.cargo_number, + ldsl.order_code, + ldsl.incoming_batch, + ldsl.description_goods, + ldsl.cargo_unit, + ldsl.market_name, + ldsl.brand_name, + ldl.driver_name, + ldl.vehicle_name, + ldl.scan_status, + ldl.scan_time, + ldl.loaded_nub, + ldl.scan_user, + ldl.signing_user, + ldl.signing_time + FROM + logpm_dis_stock_list_detail AS ldsld + LEFT JOIN logpm_distribution_stock_list AS ldsl ON ldsld.stock_list_id = ldsl.id + LEFT JOIN logpm_distribution_loadscaninvn AS ldl ON ldsld.id = ldl.inventory_package_id + WHERE + ldsld.reservation_id = #{param.reservationId} AND ldsld.stock_package_status in ('1','3') + <if test="param.stockPackageCode != null and param.stockPackageCode != ''"> + and ldsld.stock_package_code like concat('%',#{param.stockPackageCode},'%') + </if> + <if test="param.cargoNumber != null and param.cargoNumber != ''"> + and ldsl.cargo_number like concat('%',#{param.cargoNumber},'%') + </if> + <if test="param.orderCode != null and param.orderCode != ''"> + and ldsl.order_code like concat('%',#{param.orderCode},'%') + </if> + <if test="param.incomingBatch != null and param.incomingBatch != ''"> + and ldsl.incoming_batch like concat('%',#{param.incomingBatch},'%') + </if> + <if test="param.descriptionGoods != null and param.descriptionGoods != ''"> + and ldsl.description_goods like concat('%',#{param.descriptionGoods},'%') + </if> + <if test="param.marketName != null and param.marketName != ''"> + and ldsl.market_name like concat('%',#{param.marketName},'%') + </if> + <if test="param.brandName != null and param.brandName != ''"> + and ldsl.brand_name like concat('%',#{param.brandName},'%') + </if> + <if test="param.driverName != null and param.driverName != ''"> + and ldl.driver_name like concat('%',#{param.driverName},'%') + </if> + <if test="param.vehicleName != null and param.vehicleName != ''"> + and ldl.vehicle_name like concat('%',#{param.vehicleName},'%') + </if> + <if test="param.scanTime != null and param.scanTime != ''"> + and ldl.scan_time like concat('%',#{param.scanTime},'%') + </if> + <if test="param.scanUser != null and param.scanUser != ''"> + and ldl.scan_user like concat('%',#{param.scanUser},'%') + </if> + <if test="param.signingUser != null and param.signingUser != ''"> + and ldl.signing_user like concat('%',#{param.signingUser},'%') + </if> + <if test="param.signingTime != null and param.signingTime != ''"> + and ldl.signing_time like concat('%',#{param.signingTime},'%') + </if> + <if test="param.stockStatus != null and param.stockStatus != ''"> + and ldsld.stock_status = #{param.stockStatus} + </if> + <if test="param.stockLockingStatus != null and param.stockLockingStatus != ''"> + and ldsld.stock_locking_status = #{param.stockLockingStatus} + </if> + <if test="param.stockSignfoStatus != null and param.stockSignfoStatus != ''"> + and ldsld.stock_signfo_status = #{param.stockSignfoStatus} + </if> + </select> </mapper> diff --git a/blade-service/logpm-distribution/src/main/java/com/logpm/distribution/service/IDistributionDeliveryInfoService.java b/blade-service/logpm-distribution/src/main/java/com/logpm/distribution/service/IDistributionDeliveryInfoService.java index 763ed3594..7dbda9231 100644 --- a/blade-service/logpm-distribution/src/main/java/com/logpm/distribution/service/IDistributionDeliveryInfoService.java +++ b/blade-service/logpm-distribution/src/main/java/com/logpm/distribution/service/IDistributionDeliveryInfoService.java @@ -102,4 +102,11 @@ public interface IDistributionDeliveryInfoService extends BaseService<Distributi List<DisStockListDetailVO> selectDistributionAppDeliveryInventory( DistributionAppDeliveryListDTO distributionAppDeliveryListDTO); + /** + * 配送详情查看库存品包件 + * @param reservationPackageDTO + * @param page + * @return + */ + IPage<DistributionReservationInventoryPackageVO> getReservationPackageList(Map<String, Object> reservationPackageDTO, IPage<DistributionReservationInventoryPackageVO> page); } 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 98594e606..be72b82c6 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 @@ -247,4 +247,11 @@ public interface IDistributionSignforService extends BaseService<DistributionSig * @return */ R isSign(Long signingId); + + /** + * PC批量签收库存品 + * @param distrilbutionloadingscanDTO + * @return + */ + R signforInPC(DistrilbutionAppsignforDTO distrilbutionloadingscanDTO); } 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 ab8a6133e..9f26e5367 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 @@ -1409,6 +1409,7 @@ public class DistributionAsyncServiceImpl implements IDistributionAsyncService { } @Override + @Transactional public void handlPakcage(List<Long> packageIds, Long id) { List<DistributionParcelListEntity> distributionParcelListEntities = distributionParcelListService.listByIds(packageIds); if (Func.isNotEmpty(distributionParcelListEntities)) { diff --git a/blade-service/logpm-distribution/src/main/java/com/logpm/distribution/service/impl/DistributionDeliveryInfoServiceImpl.java b/blade-service/logpm-distribution/src/main/java/com/logpm/distribution/service/impl/DistributionDeliveryInfoServiceImpl.java index 4b6ba134f..3238e191a 100644 --- a/blade-service/logpm-distribution/src/main/java/com/logpm/distribution/service/impl/DistributionDeliveryInfoServiceImpl.java +++ b/blade-service/logpm-distribution/src/main/java/com/logpm/distribution/service/impl/DistributionDeliveryInfoServiceImpl.java @@ -509,5 +509,20 @@ public class DistributionDeliveryInfoServiceImpl extends BaseServiceImpl<Distrib return disStockListDetailVOS; } + @Override + public IPage<DistributionReservationInventoryPackageVO> getReservationPackageList(Map<String, Object> reservationPackageDTO, IPage<DistributionReservationInventoryPackageVO> page) { + String method = "DistributionDeliveryInfoServiceImpl类,getReservationPackageList方法"; + if (Func.isEmpty(reservationPackageDTO.get("reservationId"))){ + //参数缺失 + log.error(method+"reservationId参数缺失"); + return null; + } + IPage<DistributionReservationInventoryPackageVO> reservationInventoryPackageVOIPage = distributionReservationMapper.selectInvenToryPackageByReservationInfo(reservationPackageDTO,page); + + + + return reservationInventoryPackageVOIPage; + } + } 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 86c7484ec..405603ee8 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 @@ -1731,7 +1731,7 @@ public class DistributionDeliveryListServiceImpl extends BaseServiceImpl<Distrib loadscaninvnEntity.setVehicleName(distributionDeliverySelfEntity.getVehicleNub()); loadscaninvnEntity.setScanStatus(LoadingStatusConstant.yijianzhuangche.getValue()); loadscaninvnEntity.setOneClick(2); - loadscaninvnEntity.setScanUser(user.getUserName()); +// loadscaninvnEntity.setScanUser(user.getUserName()); loadscaninvnEntity.setScanTime(now); loadscaninvnEntity.setScanType("1"); if (StringUtils.isNotBlank(distributionDeliverySelfEntity.getDriverPhone())) { 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 8b4dd6517..471679cc0 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 @@ -95,6 +95,8 @@ import java.util.concurrent.atomic.AtomicInteger; import java.util.function.Function; import java.util.stream.Collectors; +import static net.sf.jsqlparser.util.validation.metadata.NamedObject.user; + /** * 签收管理 服务实现类 * @@ -487,6 +489,127 @@ public class DistributionSignforServiceImpl extends BaseServiceImpl<Distribution } + @Override + @Transactional + public R signforInPC(DistrilbutionAppsignforDTO distrilbutionloadingscanDTO) { + String method = "DistributionSignforServiceImpl类,signforInPC方法"; + SimpleDateFormat simpleDateFormat = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss"); + if (Func.isEmpty(distrilbutionloadingscanDTO.getReservationId())){ + log.error(method+"reservationId参数缺失"); + return R.fail("请联系管理员!!!"); + } + if (Func.isEmpty(distrilbutionloadingscanDTO.getDeliveryId())){ + log.error(method+"deliveryId参数缺失"); + return R.fail("请联系管理员!!!"); + } + if (Func.isEmpty(distrilbutionloadingscanDTO.getBarcodes())){ + log.error(method+"barCode参数缺失"); + return R.fail("请联系管理员!!!"); + } + String[] split = distrilbutionloadingscanDTO.getBarcodes().split(","); + List<DisStockListDetailEntity> detailEntities = distributionReservationMapper.selectInventoryListByReservation(distrilbutionloadingscanDTO.getReservationId()); + + if (Func.isNotEmpty(split)){ + for (String s : split) { + List<DisStockListDetailEntity> inventoryPackage = detailEntities.stream().filter(f -> Func.isNotEmpty(f.getStockPackageCode()) && f.getStockPackageCode().equals(s)).collect(Collectors.toList()); + if (Func.isNotEmpty(inventoryPackage) && inventoryPackage.size() == 1){ + //查看这个库存品是否进行装车, + DistributionLoadscaninvnEntity loadscaninvnEntity = distributionLoadscaninvnService.getOne(Wrappers.<DistributionLoadscaninvnEntity>query().lambda() + .eq(DistributionLoadscaninvnEntity::getReservationId, distrilbutionloadingscanDTO.getReservationId()) + .eq(DistributionLoadscaninvnEntity::getDeliveryId, distrilbutionloadingscanDTO.getDeliveryId()) + .eq(DistributionLoadscaninvnEntity::getOrderPackageCode, s) + .ne(DistributionLoadscaninvnEntity::getScanStatus, 1)); + BladeUser user = AuthUtil.getUser(); + if (Func.isNotEmpty(loadscaninvnEntity)){ + //存在装车数据,进行状态变更即可 + loadscaninvnEntity.setSigningUserId(user.getUserId()); + loadscaninvnEntity.setSigningUser(user.getNickName()); + loadscaninvnEntity.setReceivedQuantity(inventoryPackage.get(0).getNum()); + loadscaninvnEntity.setSignforState(LoadScanSigningStatusConstant.yiqianshou.getValue()); + loadscaninvnEntity.setSigningTime(simpleDateFormat.format(new Date())); + loadscaninvnEntity.setOneQclick(1); + distributionLoadscaninvnService.updateById(loadscaninvnEntity); + //维护签收数量 + Integer j = distributionSignforMapper.updateSignforNum(loadscaninvnEntity.getDeliveryId(), loadscaninvnEntity.getReservationId(), loadscaninvnEntity.getPackageNub()); + //更新签收人 + Integer i = distributionSignforMapper.updateSignUser(loadscaninvnEntity.getDeliveryId(), loadscaninvnEntity.getReservationId(), user); + }else { + //不存在装车数据,需要进行装车数据的补录 + //库存品未进行装车 + //这里装车的数据需要进行补录 + DistributionDeliveryListEntity deliveryListEntity = distributionDeliveryListMapper.selectById(distrilbutionloadingscanDTO.getDeliveryId()); + DistributionDeliverySelfEntity distributionDeliverySelfEntity = new DistributionDeliverySelfDTO(); + if (deliveryListEntity.getKind().equals(ServiceConstant.DELIVERLIST_KIND_SELF)) { + distributionDeliverySelfEntity = distributionDeliverySelfMapper.selectOne(new QueryWrapper<DistributionDeliverySelfEntity>().lambda() + .eq(DistributionDeliverySelfEntity::getIsMaster, ServiceConstant.IS_MASTER_YES) + .eq(DistributionDeliverySelfEntity::getDeliveryId, distrilbutionloadingscanDTO.getDeliveryId()) + ); + } else { + DistributionDeliveryTripartiteEntity distributionDeliveryTripartiteEntity = distributionDeliveryTripartiteMapper.selectOne(new QueryWrapper<DistributionDeliveryTripartiteEntity>().lambda() + .eq(DistributionDeliveryTripartiteEntity::getDeliveryId, distrilbutionloadingscanDTO.getDeliveryId())); + BeanUtils.copyProperties(distributionDeliveryTripartiteEntity, distributionDeliverySelfEntity); + } + DistributionLoadscaninvnEntity distributionLoadscaninvnEntity = new DistributionLoadscaninvnEntity(); + + if (Func.isNotEmpty(distributionDeliverySelfEntity.getDriverId())) { + distributionLoadscaninvnEntity.setDriverId(distributionDeliverySelfEntity.getDriverId()); + } + if (Func.isNotEmpty(distributionDeliverySelfEntity.getDriverName())) { + distributionLoadscaninvnEntity.setDriverName(distributionDeliverySelfEntity.getDriverName()); + } + if (Func.isNotEmpty(distributionDeliverySelfEntity.getVehicleId())) { + distributionLoadscaninvnEntity.setVehicleId(distributionDeliverySelfEntity.getVehicleId()); + } + if (Func.isNotEmpty(distributionDeliverySelfEntity.getVehicleNub())) { + distributionLoadscaninvnEntity.setVehicleName(distributionDeliverySelfEntity.getVehicleNub()); + } + if (Func.isNotEmpty(distributionDeliverySelfEntity.getDriverPhone())) { + distributionLoadscaninvnEntity.setDriverPhone(distributionDeliverySelfEntity.getDriverPhone()); + } + distributionLoadscaninvnEntity.setLoadingId(distributionDeliverySelfEntity.getId().toString()); + distributionLoadscaninvnEntity.setOrderPackageCode(inventoryPackage.get(0).getStockPackageCode()); + distributionLoadscaninvnEntity.setInventoryId(inventoryPackage.get(0).getStockListId()); + distributionLoadscaninvnEntity.setDeliveryId(distrilbutionloadingscanDTO.getDeliveryId()); + distributionLoadscaninvnEntity.setReservationId(distrilbutionloadingscanDTO.getReservationId()); + distributionLoadscaninvnEntity.setScanUser(user.getNickName()); + distributionLoadscaninvnEntity.setScanTime(simpleDateFormat.format(new Date())); + distributionLoadscaninvnEntity.setPackageNub(inventoryPackage.get(0).getNum()); + distributionLoadscaninvnEntity.setScanStatus(LoadingStatusConstant.yijianzhuangche.getValue()); + distributionLoadscaninvnEntity.setIsInsert(LoadingIsInsertConstant.bulu.getValue()); + distributionLoadscaninvnEntity.setScanType("1"); + distributionLoadscaninvnEntity.setType(2); + distributionLoadscaninvnEntity.setSignforState(LoadScanSigningStatusConstant.yiqianshou.getValue()); + distributionLoadscaninvnEntity.setIsSignfor(1); + distributionLoadscaninvnEntity.setReceivedQuantity(inventoryPackage.get(0).getNum()); + distributionLoadscaninvnEntity.setOneClick(1); + distributionLoadscaninvnEntity.setOneQclick(1); + distributionLoadscaninvnEntity.setLoadedNub(1); + distributionLoadscaninvnEntity.setSigningUser(user.getNickName()); + distributionLoadscaninvnEntity.setSigningUserId(user.getUserId()); + distributionLoadscaninvnEntity.setSigningTime(simpleDateFormat.format(new Date(System.currentTimeMillis()+(6*1000)))); + distributionLoadscaninvnService.save(distributionLoadscaninvnEntity); + //更新装车数量 + Integer j = distributionSignforMapper.updateSignforNum(distributionLoadscaninvnEntity.getDeliveryId(), distributionLoadscaninvnEntity.getReservationId(), distributionLoadscaninvnEntity.getPackageNub()); + //更新签收人 + Integer i = distributionSignforMapper.updateSignUser(distributionLoadscaninvnEntity.getDeliveryId(), distributionLoadscaninvnEntity.getReservationId(), AuthUtil.getUser()); + //扣减库存 + distributionStockListMapper.deductionQuantityStock(distributionLoadscaninvnEntity.getInventoryId(), distributionLoadscaninvnEntity.getLoadedNub()); + } + //修改对应库存品包件的签收数量 + DisStockListDetailEntity disStockListDetailEntity = inventoryPackage.get(0); + disStockListDetailEntity.setStockSignfoStatus(InventorySigningStatusConstant.yiqianshou.getValue()); + disStockListDetailService.updateById(disStockListDetailEntity); + }else { + //出现不属于当前客户的库存品包件信息 + log.error(method+"库存品包件信息异常,请检查!!!:{}",s); + throw new RuntimeException("数据异常,请联系管理员!!!"); + + } + } + } + return R.status(true); + } + private boolean judgmentSignIsHavePackage(Long reservationId) { boolean flag = false; List<DistributionParcelListEntity> distributionParcelListEntities = distributionReservationMapper.selectPackageListByReservationId(reservationId); @@ -1853,7 +1976,7 @@ public class DistributionSignforServiceImpl extends BaseServiceImpl<Distribution } // 库存品进行装车,这里需要对库存品扫描数据进行签收的状态标记 loadscaninvnEntity.setSigningUserId(user.getUserId()); - loadscaninvnEntity.setSigningUser(user.getUserName()); + loadscaninvnEntity.setSigningUser(user.getNickName()); loadscaninvnEntity.setReceivedQuantity(inventory.get(0).getNum()); loadscaninvnEntity.setSignforState(LoadScanSigningStatusConstant.yiqianshou.getValue()); loadscaninvnEntity.setSigningTime(simpleDateFormat.format(new Date())); @@ -2835,7 +2958,6 @@ public class DistributionSignforServiceImpl extends BaseServiceImpl<Distribution distributionAsyncService.sendFactory(parcelListEntity, reservationEntity.getId(), reservationEntity.getReservationCode(), myCurrentWarehouse.getName()); packageIds.add(parcelListEntity.getId()); orderCodes.add(parcelListEntity.getOrderCode()); - } //批量维护订单信息 if (Func.isNotEmpty(orderCodes)){