diff --git a/blade-service-api/logpm-distribution-api/src/main/java/com/logpm/distribution/vo/DistributionStockArticleVO.java b/blade-service-api/logpm-distribution-api/src/main/java/com/logpm/distribution/vo/DistributionStockArticleVO.java index aebfc01c2..2c80a7c28 100644 --- a/blade-service-api/logpm-distribution-api/src/main/java/com/logpm/distribution/vo/DistributionStockArticleVO.java +++ b/blade-service-api/logpm-distribution-api/src/main/java/com/logpm/distribution/vo/DistributionStockArticleVO.java @@ -22,6 +22,8 @@ import lombok.Data; import lombok.EqualsAndHashCode; import java.lang.reflect.Field; +import java.math.BigDecimal; +import java.util.Date; import java.util.HashMap; import java.util.List; import java.util.Map; @@ -170,6 +172,11 @@ public class DistributionStockArticleVO extends DistributionStockArticleEntity { */ private String isZeroString; + private Date openTime;//开单时间 + + private BigDecimal weight; + private BigDecimal volume; + /** * 是否零担显示 */ 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 2c24e5456..ec32310bb 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 @@ -16,7 +16,6 @@ */ package com.logpm.distribution.controller; -import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper; import com.baomidou.mybatisplus.core.metadata.IPage; import com.baomidou.mybatisplus.core.toolkit.ObjectUtils; import com.github.xiaoymin.knife4j.annotations.ApiOperationSupport; @@ -36,17 +35,14 @@ import io.swagger.annotations.Api; import io.swagger.annotations.ApiOperation; import io.swagger.annotations.ApiParam; import lombok.AllArgsConstructor; -import org.springblade.common.constant.DictBizConstant; 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.cache.DictBizCache; import org.springframework.web.bind.annotation.*; import springfox.documentation.annotations.ApiIgnore; @@ -91,6 +87,14 @@ public class DistributionParcelListController extends BladeController { return R.data(DistributionParcelListWrapper.build().pageVO(pages)); } + @GetMapping("/listTransfer") + @ApiOperationSupport(order = 2) + @ApiOperation(value = "分页", notes = "传入distributionParcelList") + public R> listTransfer(@ApiIgnore @RequestParam Map distributionParcelList, Query query) { + IPage pages = distributionParcelListService.pageOweListTransfer(Condition.getPage(query),distributionParcelList ); + return R.data(DistributionParcelListWrapper.build().pageVO(pages)); + } + @GetMapping("/zeroList") @ApiOperationSupport(order = 2) @@ -100,6 +104,14 @@ public class DistributionParcelListController extends BladeController { return R.data(pages); } + @GetMapping("/zeroListTransfer") + @ApiOperationSupport(order = 2) + @ApiOperation(value = "分页", notes = "传入distributionParcelList") + public R zeroListTransfer(@ApiIgnore @RequestParam String orderCode,String waybillNumber) { + List pages = distributionParcelListService.pageOweZeroListTransfer(orderCode,waybillNumber); + return R.data(pages); + } + /** * 在库订单包件清单 分页 */ 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 a6ad325c8..991a940a8 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 @@ -113,12 +113,18 @@ public class DistributionStockArticleController extends BladeController { return R.data(DistributionStockArticleWrapper.build().pageVO(pages)); } - @GetMapping("/listTransfer") + @ResponseBody + @PostMapping("/listTransfer") @ApiOperationSupport(order = 2) @ApiOperation(value = "分页", notes = "传入distributionStockArticle") - public R> listTransfer(@ApiIgnore @RequestParam Map distributionStockArticle, Query query) { - IPage pages = distributionStockArticleService.pageListOweTransfer(Condition.getPage(query), distributionStockArticle); - return R.data(DistributionStockArticleWrapper.build().pageVO(pages)); + public R> listTransfer(@RequestBody Map distributionStockArticle) { + Query query = new Query(); + Integer current = (Integer) distributionStockArticle.get("current"); + Integer size = (Integer) distributionStockArticle.get("size"); + query.setCurrent(current); + query.setSize(size); + IPage pages = distributionStockArticleService.pageListOweTransfer(Condition.getPage(query), distributionStockArticle); + return R.data(pages); } diff --git a/blade-service/logpm-distribution/src/main/java/com/logpm/distribution/dto/DistributionStockArticleOweDTO.java b/blade-service/logpm-distribution/src/main/java/com/logpm/distribution/dto/DistributionStockArticleOweDTO.java index c0ac906ae..9db7d959c 100644 --- a/blade-service/logpm-distribution/src/main/java/com/logpm/distribution/dto/DistributionStockArticleOweDTO.java +++ b/blade-service/logpm-distribution/src/main/java/com/logpm/distribution/dto/DistributionStockArticleOweDTO.java @@ -37,6 +37,13 @@ public class DistributionStockArticleOweDTO extends DistributionStockArticleEnti private String startDate; private String entDate; private String signinTime; + private List acceptWarehouseIdList; + private String openTimeStartStr; + private String openTimeEndStr; + + private Date openTimeStart; + private Date openTimeEnd; + /** * 入库时间起始 */ 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 a72cd7c08..9022edacc 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 @@ -326,4 +326,7 @@ public interface DistributionParcelListMapper extends BaseMapper pageOweZeroList(Long orderId); + IPage pageOweListTransfer(IPage page, @Param("param") DistributionParcelListDTO distributionParcelListDTO); + + List pageOweZeroListTransfer(@Param("orderCode") String orderCode, @Param("waybillNumber") String waybillNumber); } 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 601e41553..924c6d43e 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 @@ -2043,4 +2043,172 @@ + + + + + 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 8d8e385e6..d3dccd6c0 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 @@ -234,5 +234,5 @@ public interface DistributionStockArticleMapper extends BaseMapper pageListOweTransfer(IPage page,@Param("param")DistributionStockArticleOweDTO stockArticleEntity,@Param("warehouseIds")List warehouseIds); + IPage pageListOweTransfer(IPage page,@Param("param")DistributionStockArticleOweDTO stockArticleEntity,@Param("warehouseIds")List warehouseIds); } 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 8ca685356..4aac1d39e 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 @@ -2057,7 +2057,7 @@ and waybill_number = #{waybillNo} - select ldsa.id, ldsa.tenant_id, ldsa.create_user, ldsa.create_time, @@ -2066,16 +2066,16 @@ ldsa.incoming_num AS incomingNum, ldsa.status, ldsa.is_deleted, ldsa.create_dept, ldsa.reserve1, ldsa.reserve2, ldsa.reserve3, ldsa.reserve4, ldsa.reserve5, - ldsa.service_number, ldsa.order_code, + ldsa.service_number, ldpl.order_code, ldsa.mall_id, ldsa.mall_code, ldsa.mall_name, ldsa.store_name, ldsa.store_code, ldsa.store_id, ldsa.description_goods, ldsa.warehouse_id, - ldsa.warehouse, ldsa.warehouse_entry_time, ldsa.store_time, ldsa.total_number, ldsa.hand_quantity, + ldsa.warehouse, ldsa.warehouse_entry_time, ldsa.store_time, ldsa.total_number, sum(ldpl.quantity) handQuantity, ldsa.complete_set, ldsa.brand, ldsa.type_service, ldsa.customer_name, ldsa.customer_telephone, ldsa.customer_address, ldsa.genre, ldsa.stockup_status, ldsa.reservation_status, ldsa.order_status, ldsa.grounding_status, ldsa.order_receive_status, ldsa.freeze_status, ldsa.notification, ldsa.fee, ldsa.rate, ldsa.advance_id, ldsa.waybill_id, - ldsa.waybill_number waybillNumber, + ldpl.waybill_number waybillNumber, ldsa.consignee_unit, ldsa.collect_fee, ldsa.storage_fee, ldsa.consignee_person, ldsa.consignee_address, ldsa.consignee_mobile, ldsa.warehouse_entry_time_end, ldsa.sorting_quantity, ldsa.delivery_quantity, ldsa.transfer_quantity, @@ -2083,14 +2083,20 @@ ldsa.inventory_date, ldsa.inventory_person, ldsa.inventory_person_id, ldsa.available_quantity, ldsa.is_have_data, ldsa.stock_article_code, GROUP_CONCAT( DISTINCT ldpl.dealer_name ) dealerName, ldsa.dealer_code, - ldsa.train_number, ldsa.factory_train, ldsa.sending, ldsa.send_warehouse_id, ldsa.send_warehouse_name, - ldsa.is_zero, ldsa.accept_warehouse_id, ldsa.accept_warehouse_name, ldsa.order_delivery_status, - ldsa.trays trays, - ldsa.allocation allocation + ldpl.train_number, ldsa.factory_train, ldsa.sending, lww.departure_warehouse_id sendWarehouseId, lww.departure_warehouse_name sendWarehouseName, + ldsa.is_zero, lww.destination_warehouse_id acceptWarehouseId, lww.destination_warehouse_name acceptWarehouseName, ldsa.order_delivery_status, + GROUP_CONCAT( DISTINCT ldpl.pallet) ldpl, + GROUP_CONCAT( DISTINCT ldpl.goods_allocation) allocation, + GROUP_CONCAT( DISTINCT ldpl.dealer_name ), + lww.create_time openTime, + IFNULL(sum(ldpl.weight),0) weight, + IFNULL(sum(ldpl.volume),0) volume from logpm_distribution_stock_article ldsa LEFT JOIN logpm_distribution_parcel_list ldpl on ldsa.id = ldpl.stock_article_id + left join logpm_warehouse_waybill lww on lww.waybill_no = ldpl.waybill_number ldsa.is_deleted = 0 and ldsa.order_status in ('10','20','30','40','50','60','70') + and ldpl.is_transfer = 1 and ldsa.hand_quantity > 0 and ldsa.order_code in @@ -2215,8 +2221,21 @@ and ldsa.allocation like concat('%',#{param.allocation},'%') + + and lww.destination_warehouse_id in + + #{acceptWarehouseId} + + + + and lww.create_time > = #{param.openTimeStart} + + + and lww.create_time < = #{param.openTimeEnd} + - group by ldsa.id + group by ldpl.order_code,ldpl.waybill_number HAVING sum(ldpl.is_transfer) > 0 order by ldsa.warehouse_entry_time desc diff --git a/blade-service/logpm-distribution/src/main/java/com/logpm/distribution/service/IDistributionParcelListService.java b/blade-service/logpm-distribution/src/main/java/com/logpm/distribution/service/IDistributionParcelListService.java index 2a6c04280..c13637ef4 100644 --- a/blade-service/logpm-distribution/src/main/java/com/logpm/distribution/service/IDistributionParcelListService.java +++ b/blade-service/logpm-distribution/src/main/java/com/logpm/distribution/service/IDistributionParcelListService.java @@ -298,4 +298,8 @@ public interface IDistributionParcelListService extends BaseService pageOweZeroList(Long orderId); + IPage pageOweListTransfer(IPage page, Map distributionParcelList); + + List pageOweZeroListTransfer(String orderCode, String waybillNumber); + } diff --git a/blade-service/logpm-distribution/src/main/java/com/logpm/distribution/service/IDistributionStockArticleService.java b/blade-service/logpm-distribution/src/main/java/com/logpm/distribution/service/IDistributionStockArticleService.java index bca041035..fdbe023ed 100644 --- a/blade-service/logpm-distribution/src/main/java/com/logpm/distribution/service/IDistributionStockArticleService.java +++ b/blade-service/logpm-distribution/src/main/java/com/logpm/distribution/service/IDistributionStockArticleService.java @@ -320,7 +320,7 @@ public interface IDistributionStockArticleService extends BaseService pageListOweTransfer(IPage page, Map distributionStockArticle); + IPage pageListOweTransfer(IPage page, Map distributionStockArticle); R findZeroOrderInfo(Long orderId); } diff --git a/blade-service/logpm-distribution/src/main/java/com/logpm/distribution/service/impl/DistributionParcelListServiceImpl.java b/blade-service/logpm-distribution/src/main/java/com/logpm/distribution/service/impl/DistributionParcelListServiceImpl.java index 4ca1aae1a..94ca60b08 100644 --- a/blade-service/logpm-distribution/src/main/java/com/logpm/distribution/service/impl/DistributionParcelListServiceImpl.java +++ b/blade-service/logpm-distribution/src/main/java/com/logpm/distribution/service/impl/DistributionParcelListServiceImpl.java @@ -1519,4 +1519,39 @@ public class DistributionParcelListServiceImpl extends BaseServiceImpl pageOweListTransfer(IPage page, Map distributionParcelList) { + Object o = distributionParcelList.get("parcelType"); + if (ObjectUtils.isNotNull(o)) { + distributionParcelList.remove("parcelType"); + } + DistributionParcelListDTO distributionParcelListDTO = JSONObject.parseObject(JSONObject.toJSONString(distributionParcelList), DistributionParcelListDTO.class); + String orderCode = distributionParcelListDTO.getOrderCode(); + if(StringUtils.isBlank(orderCode)){ + log.warn("##############pageOweListTransfer: 订单号不存在 orderCode={}",orderCode); + throw new CustomerException(405,"订单号不存在"); + } + String waybillNumber = distributionParcelListDTO.getWaybillNumber(); + if(StringUtils.isBlank(waybillNumber)){ + log.warn("##############pageOweListTransfer: 运单号不存在 waybillNumber={}",waybillNumber); + throw new CustomerException(405,"运单号不存在"); + } + + if (Func.isNotEmpty(distributionParcelListDTO.getStockArticleIds())) { + String trim = distributionParcelListDTO.getStockArticleIds().trim(); + List list = CommonUtil.stringNum(trim); + if (!list.isEmpty()) { + distributionParcelListDTO.setStockArticleIdsList(list); + } else { + distributionParcelListDTO.setStockArticleIdsLike(trim); + } + } + return baseMapper.pageOweListTransfer(page, distributionParcelListDTO); + } + + @Override + public List pageOweZeroListTransfer(String orderCode, String waybillNumber) { + return baseMapper.pageOweZeroListTransfer(orderCode,waybillNumber); + } } 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 3ba0b0a71..11a342cc6 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 @@ -2679,11 +2679,11 @@ public class DistributionStockArticleServiceImpl extends BaseServiceImpl pageListOweTransfer(IPage page, Map distributionStockArticle) { + public IPage pageListOweTransfer(IPage page, Map distributionStockArticle) { DistributionStockArticleOweDTO stockArticleEntity = JSONObject.parseObject(JSONObject.toJSONString(distributionStockArticle), DistributionStockArticleOweDTO.class); - if (Func.isNotEmpty(distributionStockArticle.get("typeServer"))) { - stockArticleEntity.setTypeService((String) distributionStockArticle.get("typeServer")); - } +// if (Func.isNotEmpty(distributionStockArticle.get("typeServer"))) { +// stockArticleEntity.setTypeService((String) distributionStockArticle.get("typeServer")); +// } if (Func.isNotEmpty(stockArticleEntity.getOrderCodeNum())) { String anumbering = stockArticleEntity.getOrderCodeNum().trim(); List list = CommonUtil.stringNum(anumbering); @@ -2727,11 +2727,78 @@ public class DistributionStockArticleServiceImpl extends BaseServiceImpl distributionStockArticleEntityIPage = baseMapper.pageListOweTransfer(page, stockArticleEntity, warehouseIdList); + stockArticleEntity.setOpenTimeStart(CommonUtil.getStartByDateStr(stockArticleEntity.getOpenTimeStartStr())); + stockArticleEntity.setOpenTimeEnd(CommonUtil.getEndByDateStr(stockArticleEntity.getOpenTimeEndStr())); + + IPage distributionStockArticleEntityIPage = baseMapper.pageListOweTransfer(page, stockArticleEntity, warehouseIdList); + + List records = distributionStockArticleEntityIPage.getRecords(); + + records.forEach(distributionStockArticleVO -> { + // 查询包条码 + if (ObjectUtils.isNotNull(distributionStockArticleVO.getId())) { +// String orderPackageCode = distributionParcelListService.getOrderPackageCode(distributionStockupVO.getId()); +// distributionStockupVO.setOrderPackageCode(orderPackageCode); + } + + if ("80".equals(distributionStockArticleVO.getOrderStatus())) { + //查询配送完毕的所有司机 + String driverName = distributionLoadscanService.selectDriverNameByOrderId(distributionStockArticleVO.getId()); + distributionStockArticleVO.setDriverName(driverName); + } + //计算在库天数 + if (ObjectUtils.isNotNull(distributionStockArticleVO.getWarehouseEntryTime())) { + + long time1 = distributionStockArticleVO.getWarehouseEntryTime().getTime(); //入库 + long time2 = System.currentTimeMillis(); // 现在 + int days = (int) ((time2 - time1) / (1000 * 60 * 60 * 24)); + if (days == 0) { + days = 1; + } + distributionStockArticleVO.setStoreTime(days + "天"); + } + + if(ObjectUtils.isNotNull(distributionStockArticleVO.getCompleteSet())){ + switch (distributionStockArticleVO.getCompleteSet()) { + case 1: + distributionStockArticleVO.setCompleteSetName("否"); + break; + case 2: + distributionStockArticleVO.setCompleteSetName("是"); + break; + } + } +// distributionStockupVO.setIsZeroString("1".equals(distributionStockupVO.getIsZero())?"是":"否"); + distributionStockArticleVO.setReservationNum(distributionStockArticleVO.getHandQuantity()); + buildVoInfor(distributionStockArticleVO); + }); + return distributionStockArticleEntityIPage; } + public DistributionStockArticleVO buildVoInfor(DistributionStockArticleVO distributionStockupVO) { + distributionStockupVO.setTypeServerName(DictBizCache.getValue(DictBizConstant.DISTRIBUTION_TYPE, distributionStockupVO.getTypeService())); + distributionStockupVO.setOrderStatusName(DictBizCache.getValue(DictBizConstant.DELIVERY_ORDER_STATUS, distributionStockupVO.getOrderStatus())); + distributionStockupVO.setGroundingStatusName(DictBizCache.getValue(DictBizConstant.BASIC_GROUNDING, distributionStockupVO.getGroundingStatus())); + distributionStockupVO.setFreezeStatusName(DictBizCache.getValue(DictBizConstant.FREEZE_STATUS, distributionStockupVO.getFreezeStatus())); + distributionStockupVO.setReservationStatusName(DictBizCache.getValue(DictBizConstant.ORDER_RESERVATION_STATUS, distributionStockupVO.getReservationStatus())); + distributionStockupVO.setStockupStatusName(DictBizCache.getValue(DictBizConstant.ORDER_STOCKUP_STATUS, distributionStockupVO.getStockupStatus())); + if (ObjectUtils.isNotNull(distributionStockupVO.getCreateUser())) { + + R userR = userClient.userInfoById(distributionStockupVO.getCreateUser()); + if(userR.isSuccess() && userR.getData()!=null){ + + distributionStockupVO.setCreateUserName(userR.getData().getName()); + } + } + + distributionStockupVO.setOrderReceiveStatusName(DictBizCache.getValue(DictBizConstant.ORDER_RECEIVE_STATUS, distributionStockupVO.getOrderReceiveStatus())); + return distributionStockupVO; + } + + + @Override public R findZeroOrderInfo(Long orderId) { DistributionStockArticleEntity stockArticle = baseMapper.selectById(orderId);