Browse Source

Merge branch 'pre-production'

master
pref_mail@163.com 1 year ago
parent
commit
8dd01ce5f8
  1. 5
      blade-service-api/logpm-distribution-api/src/main/java/com/logpm/distribution/vo/DistributionSignforStockArticleVO.java
  2. 22
      blade-service-api/logpm-distribution-api/src/main/java/com/logpm/distribution/vo/DistributionStockupInventoryDetailVO.java
  3. 3
      blade-service-api/logpm-distribution-api/src/main/java/com/logpm/distribution/vo/app/DistrilbutionAppBillLadingOrderMainVO.java
  4. 1
      blade-service-api/logpm-trunkline-api/src/main/java/com/logpm/trunkline/dto/AdvanceDTO.java
  5. 7
      blade-service-api/logpm-trunkline-api/src/main/java/com/logpm/trunkline/dto/InComingDTO.java
  6. 2
      blade-service-api/logpm-trunkline-api/src/main/java/com/logpm/trunkline/vo/TrunklineAdvanceVO.java
  7. 12
      blade-service/logpm-basicdata/src/main/java/com/logpm/basicdata/controller/BasicdataClientController.java
  8. 5
      blade-service/logpm-basicdata/src/main/java/com/logpm/basicdata/controller/BasicdataDriverArteryController.java
  9. 1
      blade-service/logpm-basicdata/src/main/java/com/logpm/basicdata/mapper/BasicdataDrivermiddleMapper.java
  10. 7
      blade-service/logpm-basicdata/src/main/java/com/logpm/basicdata/mapper/BasicdataDrivermiddleMapper.xml
  11. 2
      blade-service/logpm-basicdata/src/main/java/com/logpm/basicdata/service/IBasicdataDrivermiddleService.java
  12. 11
      blade-service/logpm-basicdata/src/main/java/com/logpm/basicdata/service/impl/BasicdataDrivermiddleServiceImpl.java
  13. 4
      blade-service/logpm-distribution/src/main/java/com/logpm/distribution/appcontroller/DistributionBillLadingAppController.java
  14. 3
      blade-service/logpm-distribution/src/main/java/com/logpm/distribution/controller/DistributionSignforController.java
  15. 10
      blade-service/logpm-distribution/src/main/java/com/logpm/distribution/controller/DistributionStockupController.java
  16. 7
      blade-service/logpm-distribution/src/main/java/com/logpm/distribution/dto/DistributionStockArticleOweDTO.java
  17. 2
      blade-service/logpm-distribution/src/main/java/com/logpm/distribution/mapper/DistributionDeliveryDetailsMapper.java
  18. 14
      blade-service/logpm-distribution/src/main/java/com/logpm/distribution/mapper/DistributionDeliveryDetailsMapper.xml
  19. 2
      blade-service/logpm-distribution/src/main/java/com/logpm/distribution/mapper/DistributionParcelListMapper.xml
  20. 28
      blade-service/logpm-distribution/src/main/java/com/logpm/distribution/mapper/DistributionReservationMapper.xml
  21. 34
      blade-service/logpm-distribution/src/main/java/com/logpm/distribution/mapper/DistributionStockArticleMapper.xml
  22. 11
      blade-service/logpm-distribution/src/main/java/com/logpm/distribution/mapper/DistributionStockupMapper.java
  23. 92
      blade-service/logpm-distribution/src/main/java/com/logpm/distribution/mapper/DistributionStockupMapper.xml
  24. 14
      blade-service/logpm-distribution/src/main/java/com/logpm/distribution/mapper/DistrilbutionBillLadingMapper.java
  25. 39
      blade-service/logpm-distribution/src/main/java/com/logpm/distribution/mapper/DistrilbutionBillLadingMapper.xml
  26. 2
      blade-service/logpm-distribution/src/main/java/com/logpm/distribution/service/IDistributionDeliveryDetailsService.java
  27. 15
      blade-service/logpm-distribution/src/main/java/com/logpm/distribution/service/IDistributionStockupService.java
  28. 2
      blade-service/logpm-distribution/src/main/java/com/logpm/distribution/service/IDistrilbutionBillLadingService.java
  29. 2
      blade-service/logpm-distribution/src/main/java/com/logpm/distribution/service/impl/DistributionAsyncServiceImpl.java
  30. 4
      blade-service/logpm-distribution/src/main/java/com/logpm/distribution/service/impl/DistributionDeliveryDetailsServiceImpl.java
  31. 38
      blade-service/logpm-distribution/src/main/java/com/logpm/distribution/service/impl/DistributionDeliveryListServiceImpl.java
  32. 18
      blade-service/logpm-distribution/src/main/java/com/logpm/distribution/service/impl/DistributionReservationServiceImpl.java
  33. 10
      blade-service/logpm-distribution/src/main/java/com/logpm/distribution/service/impl/DistributionSignforServiceImpl.java
  34. 60
      blade-service/logpm-distribution/src/main/java/com/logpm/distribution/service/impl/DistributionStockupServiceImpl.java
  35. 316
      blade-service/logpm-distribution/src/main/java/com/logpm/distribution/service/impl/DistrilbutionBillLadingServiceImpl.java
  36. 2
      blade-service/logpm-distribution/src/test/java/com/logpm/distribution/TestService.java
  37. 3
      blade-service/logpm-factory/src/main/java/com/logpm/factory/comfac/service/impl/OrderPackageStatusPushFailLogServiceImpl.java
  38. 4
      blade-service/logpm-report/pom.xml
  39. 2
      blade-service/logpm-report/src/main/java/com/logpm/report/controller/IndexCountController.java
  40. 20
      blade-service/logpm-report/src/main/java/com/logpm/report/mapper/BillDataMapper.java
  41. 35
      blade-service/logpm-report/src/main/java/com/logpm/report/mapper/BillDataMapper.xml
  42. 1
      blade-service/logpm-report/src/main/java/com/logpm/report/mapper/IndexCountMapper.xml
  43. 41
      blade-service/logpm-report/src/main/java/com/logpm/report/service/BillingService.java
  44. 3
      blade-service/logpm-report/src/main/java/com/logpm/report/service/InLibraryDeliverService.java
  45. 61
      blade-service/logpm-report/src/main/java/com/logpm/report/service/impl/BillingServiceImpl.java
  46. 4
      blade-service/logpm-report/src/main/java/com/logpm/report/service/impl/InLibraryDeliverServiceImpl.java
  47. 9
      blade-service/logpm-report/src/main/java/com/logpm/report/service/impl/IndexCountServiceImpl.java
  48. 42
      blade-service/logpm-report/src/main/java/com/logpm/report/typepage/TimeType.java
  49. 31
      blade-service/logpm-report/src/main/java/com/logpm/report/vo/indexCount/BillingDataVo.java
  50. 20
      blade-service/logpm-report/src/main/java/com/logpm/report/vo/indexCount/DetailMoneyVo.java
  51. 106
      blade-service/logpm-trunkline/src/main/java/com/logpm/trunkline/controller/IncomingController.java
  52. 27
      blade-service/logpm-trunkline/src/main/java/com/logpm/trunkline/controller/OpenOrderController.java
  53. 2
      blade-service/logpm-trunkline/src/main/java/com/logpm/trunkline/mapper/TrunklineAdvanceDetailMapper.java
  54. 7
      blade-service/logpm-trunkline/src/main/java/com/logpm/trunkline/mapper/TrunklineAdvanceDetailMapper.xml
  55. 4
      blade-service/logpm-trunkline/src/main/java/com/logpm/trunkline/mapper/TrunklineAdvanceMapper.java
  56. 15
      blade-service/logpm-trunkline/src/main/java/com/logpm/trunkline/mapper/TrunklineAdvanceMapper.xml
  57. 4
      blade-service/logpm-trunkline/src/main/java/com/logpm/trunkline/service/IInComingService.java
  58. 1
      blade-service/logpm-trunkline/src/main/java/com/logpm/trunkline/service/ITrunklineAdvanceDetailService.java
  59. 2
      blade-service/logpm-trunkline/src/main/java/com/logpm/trunkline/service/ITrunklineAdvanceService.java
  60. 20
      blade-service/logpm-trunkline/src/main/java/com/logpm/trunkline/service/impl/InComingServiceImpl.java
  61. 5
      blade-service/logpm-trunkline/src/main/java/com/logpm/trunkline/service/impl/TrunklineAdvanceDetailServiceImpl.java
  62. 34
      blade-service/logpm-trunkline/src/main/java/com/logpm/trunkline/service/impl/TrunklineAdvanceServiceImpl.java
  63. 2
      blade-service/logpm-warehouse/src/main/java/com/logpm/warehouse/controller/TaskQuestController.java

5
blade-service-api/logpm-distribution-api/src/main/java/com/logpm/distribution/vo/DistributionSignforStockArticleVO.java

@ -40,6 +40,11 @@ import java.util.Map;
public class DistributionSignforStockArticleVO implements Serializable {
private static final long serialVersionUID = 1L;
/**
* Id
*/
@ApiModelProperty(value = "Id")
private Long id;
/**
* 运单号
*/

22
blade-service-api/logpm-distribution-api/src/main/java/com/logpm/distribution/vo/DistributionStockupInventoryDetailVO.java

@ -0,0 +1,22 @@
package com.logpm.distribution.vo;
import lombok.Data;
import java.util.Date;
/**
*
*/
@Data
public class DistributionStockupInventoryDetailVO {
private Long id; //id
private String pickupBatch; //自提批次号
private Date reservationTime; //明细创建时间
private Date codeCreatedTime; //订单自编号
private Date stockScanTime; //备货扫描时间
private String descriptionGoods; //物料名称
private String stockPackageCode; //包条码
private String qrCode; //下架库位
}

3
blade-service-api/logpm-distribution-api/src/main/java/com/logpm/distribution/vo/app/DistrilbutionAppBillLadingOrderMainVO.java

@ -16,6 +16,7 @@
*/
package com.logpm.distribution.vo.app;
import com.logpm.distribution.vo.DistrilbutionBillLadingAppVO;
import lombok.Data;
import java.io.Serializable;
@ -39,5 +40,7 @@ public class DistrilbutionAppBillLadingOrderMainVO implements Serializable {
private Integer signedNum;//签收总数
private List<DistrilbutionAppBillLadingOrderVO> list = new ArrayList<>();
private List<DistrilbutionBillLadingAppVO> inventoryList = new ArrayList<>();
private List<DistrilbutionAppBillLadingZeroOrderVO> billLadingZeroOrderVOS = new ArrayList<>();
}

1
blade-service-api/logpm-trunkline-api/src/main/java/com/logpm/trunkline/dto/AdvanceDTO.java

@ -26,6 +26,7 @@ public class AdvanceDTO implements Serializable {
private String freezeStatus;
//列表查询参数
private String htMallName;
private String orderCode;
private String dealerName;
private String dealerCode;

7
blade-service-api/logpm-trunkline-api/src/main/java/com/logpm/trunkline/dto/InComingDTO.java

@ -3,6 +3,7 @@ package com.logpm.trunkline.dto;
import lombok.Data;
import java.io.Serializable;
import java.util.List;
@Data
public class InComingDTO implements Serializable {
@ -13,10 +14,14 @@ public class InComingDTO implements Serializable {
private Long warehouseId;//仓库id
private String warehouseName;//仓库
private Integer incomingType;//入库类型
private Integer incomingType;//入库类型 1提货扫描入库 2直接入库 3批量入库 4 按车次号入库 5按订单入库
private String trayCode;//托盘码
private String trayType;//打托方式
private String incomingCode;//入库码
private List<Long> advanceIds;//暂存单ids
}

2
blade-service-api/logpm-trunkline-api/src/main/java/com/logpm/trunkline/vo/TrunklineAdvanceVO.java

@ -14,4 +14,6 @@ public class TrunklineAdvanceVO extends TrunklineAdvanceEntity {
private List<TrunklineAdvanceDetailEntity> detailList = new ArrayList<>();
private Integer isIncoming;
}

12
blade-service/logpm-basicdata/src/main/java/com/logpm/basicdata/controller/BasicdataClientController.java

@ -129,13 +129,21 @@ public class BasicdataClientController extends BladeController {
queryWrapper.orderByDesc("create_time");
IPage<BasicdataClientEntity> pages = basicdataClientService.page(Condition.getPage(query), queryWrapper);
pages.getRecords().forEach(i -> {
List<BasicdataStoreBusinessEntity> list = basicdataStoreBusinessService.list(Wrappers.<BasicdataStoreBusinessEntity>query().lambda().eq(BasicdataStoreBusinessEntity::getClientId, i.getId()));
List<BasicdataStoreBusinessEntity> list = basicdataStoreBusinessService.list(Wrappers.<BasicdataStoreBusinessEntity>query().lambda()
.eq(BasicdataStoreBusinessEntity::getClientId, i.getId()));
i.setTypeServiceBusiness(list);
//查询客户绑定第一位联系人
List<BasicdataStoreContactEntity> listed = basicdataStoreContactService.list(Wrappers.<BasicdataStoreContactEntity>query().lambda().eq(BasicdataStoreContactEntity::getShopId, i.getId()));
List<BasicdataStoreContactEntity> listed = basicdataStoreContactService.list(Wrappers.<BasicdataStoreContactEntity>query().lambda()
.eq(BasicdataStoreContactEntity::getShopId, i.getId()));
if (Func.isNotEmpty(listed)) {
List<BasicdataStoreContactEntity> collect = listed.stream().filter(f -> Func.isEmpty(f.getCreateTime())).collect(Collectors.toList());
if (Func.isNotEmpty(collect)){
System.out.println("客户无创建时间"+collect);
}
String string = listed.stream().sorted(Comparator.comparing(BasicdataStoreContactEntity::getCreateTime)).findFirst().map(BasicdataStoreContactEntity::getLinkman).get();
String phone = listed.stream().sorted(Comparator.comparing(BasicdataStoreContactEntity::getCreateTime)).findFirst().map(BasicdataStoreContactEntity::getPhone).get();
i.setLinkman(string);
i.setPhone(phone);
}
List<String> collect = list.stream().filter(f -> Func.isNotEmpty(f.getMold())).map(BasicdataStoreBusinessEntity::getMold).collect(Collectors.toList());
if (collect.size() > 0) {

5
blade-service/logpm-basicdata/src/main/java/com/logpm/basicdata/controller/BasicdataDriverArteryController.java

@ -27,6 +27,7 @@ import com.logpm.basicdata.excel.BasicdataDriverArteryImporter;
import com.logpm.basicdata.excel.BasicdataDriverArteryImproterExcel;
import com.logpm.basicdata.service.IBasicdataDriverArteryService;
import com.logpm.basicdata.service.IBasicdataDriverWarehouseService;
import com.logpm.basicdata.service.IBasicdataDrivermiddleService;
import com.logpm.basicdata.service.IBasicdataVehicleService;
import com.logpm.basicdata.vo.BasicdataDriverArteryVO;
import com.logpm.basicdata.vo.BasicdataDriverWarehouseVO;
@ -79,6 +80,8 @@ public class BasicdataDriverArteryController extends BladeController {
private final IBasicdataDriverWarehouseService basicdataDriverWarehouseService;
private final IBasicdataDrivermiddleService basicdataDrivermiddleService;
/**
* 司机信息表 详情
*/
@ -88,10 +91,12 @@ public class BasicdataDriverArteryController extends BladeController {
public R<BasicdataDriverArteryEntity> detail(BasicdataDriverArteryEntity basicdataDriverArtery) {
BasicdataDriverArteryEntity detail = basicdataDriverArteryService.getOne(Condition.getQueryWrapper(basicdataDriverArtery));
Long driverId = detail.getId();
List<String> vehicleIds = basicdataDrivermiddleService.findVehicleIdsByDriverId(driverId);
List<BasicdataDriverWarehouseVO> warehouseIds = basicdataDriverWarehouseService.findByDriverId(driverId);
BasicdataDriverArteryVO basicdataDriverArteryVO = new BasicdataDriverArteryVO();
BeanUtil.copy(detail,basicdataDriverArteryVO);
basicdataDriverArteryVO.setWarehouses(warehouseIds);
basicdataDriverArteryVO.setBindVehicles(String.join(",",vehicleIds));
return R.data(basicdataDriverArteryVO);
}
/**

1
blade-service/logpm-basicdata/src/main/java/com/logpm/basicdata/mapper/BasicdataDrivermiddleMapper.java

@ -52,4 +52,5 @@ public interface BasicdataDrivermiddleMapper extends BaseMapper<BasicdataDriverm
*/
List<BasicdataDrivermiddleExcel> exportBasicdataDrivermiddle(@Param("ew") Wrapper<BasicdataDrivermiddleEntity> queryWrapper);
List<Long> findVehicleIdsByDriverId(@Param("driverId") Long driverId);
}

7
blade-service/logpm-basicdata/src/main/java/com/logpm/basicdata/mapper/BasicdataDrivermiddleMapper.xml

@ -33,4 +33,11 @@
SELECT * FROM logpm_basicdata_drivermiddle ${ew.customSqlSegment}
</select>
<select id="findVehicleIdsByDriverId" resultType="Long">
select brand_id
from logpm_basicdata_drivermiddle
where driver_id = #{driverId}
and is_deleted = 0
</select>
</mapper>

2
blade-service/logpm-basicdata/src/main/java/com/logpm/basicdata/service/IBasicdataDrivermiddleService.java

@ -50,4 +50,6 @@ public interface IBasicdataDrivermiddleService extends BaseService<BasicdataDriv
*/
List<BasicdataDrivermiddleExcel> exportBasicdataDrivermiddle(Wrapper<BasicdataDrivermiddleEntity> queryWrapper);
List<String> findVehicleIdsByDriverId(Long driverId);
}

11
blade-service/logpm-basicdata/src/main/java/com/logpm/basicdata/service/impl/BasicdataDrivermiddleServiceImpl.java

@ -26,6 +26,7 @@ import com.logpm.basicdata.vo.BasicdataDrivermiddleVO;
import org.springblade.core.mp.base.BaseServiceImpl;
import org.springframework.stereotype.Service;
import java.util.ArrayList;
import java.util.List;
/**
@ -52,4 +53,14 @@ public class BasicdataDrivermiddleServiceImpl extends BaseServiceImpl<BasicdataD
return basicdataDrivermiddleList;
}
@Override
public List<String> findVehicleIdsByDriverId(Long driverId) {
List<Long> vehicleIdsByDriverId = baseMapper.findVehicleIdsByDriverId(driverId);
List<String> vehicleIds = new ArrayList<>();
for (Long aLong : vehicleIdsByDriverId) {
vehicleIds.add(aLong.toString());
}
return vehicleIds;
}
}

4
blade-service/logpm-distribution/src/main/java/com/logpm/distribution/appcontroller/DistributionBillLadingAppController.java

@ -105,8 +105,8 @@ public class DistributionBillLadingAppController extends BladeController {
@GetMapping("/getInventory")
@ApiOperationSupport(order = 1)
@ApiImplicitParam(name = "id",value ="自提单ID")
public R<IPage<DistrilbutionBillLadingAppVO>> getInventory(@ApiIgnore @RequestParam Map<String, Object> distrilbutionBillLading, Query query){
IPage<DistrilbutionBillLadingAppVO> ladingAppVOIPage = distrilbutionBillLadingService.getInventory(Condition.getPage(query),distrilbutionBillLading);
public R<DistrilbutionAppBillLadingOrderMainVO> getInventory(@ApiIgnore @RequestParam Map<String, Object> distrilbutionBillLading){
DistrilbutionAppBillLadingOrderMainVO ladingAppVOIPage = distrilbutionBillLadingService.getInventory(distrilbutionBillLading);
return R.data(ladingAppVOIPage);
}

3
blade-service/logpm-distribution/src/main/java/com/logpm/distribution/controller/DistributionSignforController.java

@ -317,6 +317,9 @@ public class DistributionSignforController extends BladeController {
if (r.isSuccess()){
//维护配送状态
distributionDeliveryListService.maintenanceDeliveryInfo(distributionSignfor.getDeliveryId());
DistributionSignforDTO distributionSignforDTO = new DistributionSignforDTO();
distributionSignforDTO.setId(distributionSignfor.getId());
distributionSignforService.updateSign(distributionSignforDTO);
}
// return R.status(distributionSignforService.updateById(distributionSignfor));
return r;

10
blade-service/logpm-distribution/src/main/java/com/logpm/distribution/controller/DistributionStockupController.java

@ -100,6 +100,16 @@ public class DistributionStockupController extends BladeController {
return R.data(detail);
}
/**
* 备货信息表 提货 详情
*/
@GetMapping("/detailOwnSelfInventoryDetail")
@ApiOperation(value = "自提库存品备货详情", notes = "传入distributionStockup")
public R detailOwnSelfInventoryDetail(@RequestParam Long billLadingId,@RequestParam Long stockListId ) {
R r = distributionStockupService.detailOwnSelfInventoryDetail(billLadingId,stockListId);
return r;
}

7
blade-service/logpm-distribution/src/main/java/com/logpm/distribution/dto/DistributionStockArticleOweDTO.java

@ -22,11 +22,18 @@ public class DistributionStockArticleOweDTO extends DistributionStockArticleEnti
private String waybillNum; //订单号
private List<String> waybillNumList;
private String waybillNumLike;
private String warehouseName;
private String deliveryListInfo;
private String driverName;
private String examineUserNames;
private String reservationInfo;
private String earliestWarehouseEntryTime;
private String ids;
private List<String> idsList;
private String idsLike;
private String reservation;
private String startDate;
private String entDate;
private String signinTime;
private List<Long> warehouseIdList;
}

2
blade-service/logpm-distribution/src/main/java/com/logpm/distribution/mapper/DistributionDeliveryDetailsMapper.java

@ -67,7 +67,7 @@ public interface DistributionDeliveryDetailsMapper extends BaseMapper<Distributi
* @param coding
* @return
*/
DistrilbutionBillLadingInventoryAppVO listCode(@Param("billLadingId") String billLadingId,@Param("coding") String coding);
List<DistrilbutionBillLadingInventoryAppVO> listCode(@Param("billLadingId") String billLadingId);
IPage<DistributionBillInventoryVO> getBillOrderInventory(IPage<Object> page, @Param("param") DistributionDeliveryDetailsEntity deliveryDetails);

14
blade-service/logpm-distribution/src/main/java/com/logpm/distribution/mapper/DistributionDeliveryDetailsMapper.xml

@ -75,9 +75,17 @@
where lddd.bill_lading_id = #{id} and lddd.is_deleted = 0
</select>
<select id="listCode" resultType="com.logpm.distribution.vo.app.DistrilbutionBillLadingInventoryAppVO">
select lddd.quantity,lddd.stock_list_id stockListId,lddd.id ldddId
from logpm_distribution_delivery_details lddd LEFT JOIN logpm_distribution_stock lds on lddd.stock_list_id = lds.stock_list_id
where lddd.is_deleted = 0 and lds.bill_lading_id = #{billLadingId} and lds.coding = #{coding}
select
lddd.quantity,
lddd.stock_list_id stockListId,
lddd.id ldddId
from logpm_distribution_delivery_details lddd
where
lddd.is_deleted = 0
and lddd.bill_lading_id = #{billLadingId}
<!-- LEFT-->
<!-- JOIN logpm_distribution_stock lds on lddd.stock_list_id = lds.stock_list_id-->
<!-- and lds.coding = #{coding}-->
<!-- select lddd.quantity,lddd.stock_list_id stockListId,lddd.id ldddId-->
<!-- from logpm_distribution_delivery_details lddd-->
<!-- where lddd.is_deleted = 0 and lddd.bill_lading_id = #{billLadingId} and lds.coding = #{coding}-->

2
blade-service/logpm-distribution/src/main/java/com/logpm/distribution/mapper/DistributionParcelListMapper.xml

@ -519,7 +519,7 @@
LEFT JOIN logpm_warehouse_tray_goods lwtg on lwtg.association_id = ldpl.id and lwtg.association_type = '3'
LEFT JOIN logpm_warehouse_tray lwt on lwtg.tray_id = lwt.id
<where>
ldsi.stockup_id =#{id} and ldpl.order_package_code is not null
ldsi.stockup_id =#{id} and ldpl.order_package_code is not null and ldsi.stock_status != 4
</where>
</select>
<select id="getPageVOList" resultType="com.logpm.distribution.entity.DistributionParcelListEntity">

28
blade-service/logpm-distribution/src/main/java/com/logpm/distribution/mapper/DistributionReservationMapper.xml

@ -349,11 +349,9 @@
ldslNew.tray_name AS trayName,
ldslNew.unpack AS unpack,
(SELECT SUM(aldrs.reality_num) FROM logpm_distribution_reservation_stocklist AS aldrs WHERE aldrs.reservation_id = #{reservationId} AND aldrs.stock_list_status != 2 AND FIND_IN_SET(aldrs.stocklist_id,t.aaa)) AS realNum,
(SELECT SUM(newldrs.reservation_num) FROM logpm_distribution_reservation_stocklist AS newldrs WHERE newldrs.reservation_id = #{reservationId} ANd newldrs.stock_list_status != 2 AND FIND_IN_SET(newldrs.stocklist_id,t.aaa)) AS planNum,
(
select GROUP_CONCAT( DISTINCT (allocation_id)) from logpm_warehouse_updown_goods where association_value =ldslNew.cargo_number and warehouse_id=#{warehouseId} or association_value in (
SELECT order_package_code from logpm_distribution_parcel_list where conditions=2 and material_code=ldslNew.cargo_number and warehouse_id=#{warehouseId} )
) as allocations
(SELECT SUM(newldrs.reservation_num) FROM logpm_distribution_reservation_stocklist AS newldrs WHERE newldrs.reservation_id = #{reservationId} ANd newldrs.stock_list_status != 2 AND FIND_IN_SET(newldrs.stocklist_id,t.aaa))
AS planNum,
concat(ifnull(t1.allocation_ids,''),if(t1.allocation_ids is not null,',',''), ifnull(t2.allocation_ids,'')) allocations
FROM
(
SELECT
@ -374,7 +372,23 @@
group by ldsl.cargo_number
) t
LEFT JOIN logpm_distribution_stock_list ldslNew ON t.cargo_number = ldslNew.cargo_number
LEFT JOIN logpm_distribution_stock ldss ON ldss.stock_list_id = t.id
LEFT JOIN logpm_distribution_stock ldss ON FIND_IN_SET(ldss.stock_list_id,t.aaa)
LEFT JOIN (
SELECT
ldpl.material_code,
GROUP_CONCAT( DISTINCT ( lwug.allocation_id ) ) AS allocation_ids
FROM
logpm_warehouse_updown_goods lwug
LEFT JOIN logpm_distribution_parcel_list ldpl ON ldpl.id = lwug.association_id
WHERE
lwug.association_type != 4
AND ldpl.conditions = 2
AND ldpl.warehouse_id = #{warehouseId}
GROUP BY
ldpl.material_code
) AS t1 ON t.cargo_number = t1.material_code
LEFT JOIN ( SELECT association_value, GROUP_CONCAT( DISTINCT ( allocation_id )) AS allocation_ids FROM logpm_warehouse_updown_goods WHERE warehouse_id = #{warehouseId} AND association_type = 4 GROUP BY association_value ) AS t2 ON t.cargo_number = t2.association_value
where ldslNew.is_deleted = 0
AND ldslNew.warehouse_id=#{warehouseId}
@ -383,7 +397,7 @@
<!-- SELECT-->
<!-- SELECT-->
<!-- ldsl.sku AS sku,-->
<!-- ldsl.cargo_number AS cargoNumber,-->
<!-- ldsl.description_goods AS materialName,-->

34
blade-service/logpm-distribution/src/main/java/com/logpm/distribution/mapper/DistributionStockArticleMapper.xml

@ -544,7 +544,7 @@
concat('%',#{param.allocation},'%')
</if>
</where>
group by ldsa.id
group by ldsa.id order by ldsa.warehouse_entry_time desc
</select>
<select id="selectOneByWrap" resultType="com.logpm.distribution.vo.app.queryOrderVO">
SELECT ldsa.* FROM logpm_distribution_parcel_list ldpl join logpm_distribution_stock_article ldsa on
@ -1107,11 +1107,11 @@
</select>
<select id="pageSignforListOwe" resultType="com.logpm.distribution.vo.DistributionSignforStockArticleVO">
SELECT
ldsa.id AS id,
ldsa.waybill_number AS waybillNumber,
ldsa.service_number AS serviceNumber,
ldsa.order_code orderCode,
ldsa.mall_name mallName,
ldsa.warehouse warehouseName,
ldsa.warehouse_entry_time warehouseEntryTime,
ldsa.consignee_unit consigneeUnit,
@ -1158,7 +1158,7 @@
GROUP_CONCAT(DISTINCT IFNULL( m.driverName,'')) AS driverName,
GROUP_CONCAT(DISTINCT IFNULL( m.vehicleName,'')) AS vehicleName,
GROUP_CONCAT(DISTINCT IFNULL( m.examine_user_name,'')) AS examineUserNames,
(SELECT MIN(create_time) FROM logpm_distribution_parcel_list WHERE stock_article_id = ldsa.id) AS earliestWarehouseEntryTime
k.earliestWarehouseEntryTime AS earliestWarehouseEntryTime
FROM
logpm_distribution_stock_article AS ldsa
LEFT JOIN (
@ -1198,44 +1198,45 @@
logpm_distribution_signfor As lds ON lds.reservation_id = ldr.id
LEFT JOIN logpm_distribution_delivery_list AS lddl ON lds.delivery_id = lddl.id
) AS m ON ldsa.id = m.stock_article_id AND t.reservation_id = m.reservation_id
LEFT JOIN ( SELECT stock_article_id, min( create_time ) AS earliestWarehouseEntryTime FROM logpm_distribution_parcel_list) AS k ON k.stock_article_id = ldsa.id
<where>
ldsa.order_status in ('70','80')
<if test="param.waybillNumber != null and param.waybillNumber != ''">
AND ldsa.waybill_number like concat("%",#{param.waybillNumber},"%"})
AND ldsa.waybill_number like concat("%",#{param.waybillNumber},"%")
</if>
<if test="param.serviceNumber != null and param.serviceNumber != ''">
AND ldsa.service_umber like concat("%",#{param.serviceNumber},"%"})
AND ldsa.service_number like concat("%",#{param.serviceNumber},"%")
</if>
<if test="param.orderCode != null and param.orderCode != ''">
AND ldsa.order_code like concat("%",#{param.orderCode},"%"})
AND ldsa.order_code like concat("%",#{param.orderCode},"%")
</if>
<if test="param.warehouseName != null and param.warehouseName != ''">
AND ldsa.warehouse like concat("%",#{param.warehouseName},"%"})
AND ldsa.warehouse like concat("%",#{param.warehouseName},"%")
</if>
<if test="param.mallName != null and param.mallName != ''">
AND ldsa.mall_mame like concat("%",#{param.mallName},"%"})
AND ldsa.mall_name like concat("%",#{param.mallName},"%")
</if>
<if test="param.brand != null and param.brand != ''">
AND ldsa.brand like concat("%",#{param.brand},"%"})
AND ldsa.brand like concat("%",#{param.brand},"%")
</if>
<if test="param.consigneePerson != null and param.consigneePerson != ''">
AND ldsa.consignee_person like concat("%",#{param.consigneePerson},"%"})
AND ldsa.consignee_person like concat("%",#{param.consigneePerson},"%")
</if>
<if test="param.consigneeUnit != null and param.consigneeUnit != ''">
AND ldsa.consignee_unit like concat("%",#{param.consigneeUnit},"%"})
AND ldsa.consignee_unit like concat("%",#{param.consigneeUnit},"%")
</if>
<if test="param.deliveryListInfo != null and param.deliveryListInfo != ''">
AND m.mssg like concat("%",#{param.deliveryListInfo},"%"})
AND m.mssg like concat("%",#{param.deliveryListInfo},"%")
</if>
<if test="param.driverName != null and param.driverName != ''">
AND m.driverName like concat("%",#{param.driverName},"%"})
AND m.driverName like concat("%",#{param.driverName},"%")
</if>
<if test="param.examineUserNames != null and param.examineUserNames != ''">
AND m.examine_user_name like concat("%",#{param.examineUserNames},"%"})
AND m.examine_user_name like concat("%",#{param.examineUserNames},"%")
</if>
<if test="param.reservationInfo != null and param.reservationInfo != ''">
AND t.msg like concat("%",#{param.reservationInfo},"%"})
AND t.msg like concat("%",#{param.reservationInfo},"%")
</if>
<if test="param.warehouseId != null and param.warehouseId != ''">
AND ldsa.warehouse_id = #{param.warehouseId}
@ -1270,6 +1271,9 @@
<if test=" param.signinTime != null ">and DATE(m.signing_time) =
#{param.signinTime}
</if>
<if test=" param.earliestWarehouseEntryTime != null ">and DATE(k.earliestWarehouseEntryTime) =
#{param.earliestWarehouseEntryTime}
</if>
<!-- <if test=" param.warehouseEntryTimeEnd != null ">and DATE(ldsa.warehouse_entry_time) =-->
<!-- #{param.warehouseEntryTimeEnd}-->
<!-- </if>-->

11
blade-service/logpm-distribution/src/main/java/com/logpm/distribution/mapper/DistributionStockupMapper.java

@ -270,4 +270,15 @@ public interface DistributionStockupMapper extends BaseMapper<DistributionStocku
* @return
*/
Integer selectStockUpPlanNum(@Param("stockUpId") Long stockUpId);
/**
* 备货列表库存品备货详情
* @param billLadingId
* @param stockListId
* @return
*/
List<DistributionStockupInventoryDetailVO> selectInventoryDetailByBillLadingIdAndStockListId(@Param("billLadingId") Long billLadingId,@Param("stockListId") Long stockListId);
Integer cancelStockUpTasks(@Param("reservationIds")List<Long> reservationIds,@Param("stockUpId") Long stockUpId);
}

92
blade-service/logpm-distribution/src/main/java/com/logpm/distribution/mapper/DistributionStockupMapper.xml

@ -39,6 +39,19 @@
FROM logpm_distribution_stockup
WHERE id = #{id}
</delete>
<update id="cancelStockUpTasks">
UPDATE logpm_distribution_stockup_info SET stock_status = 4
<where>
stockup_id = #{stockUpId}
<if test="reservationIds != null">
AND reservation_id in
<foreach collection="reservationIds" item="item" close=")" separator="," open="(">
#{item}
</foreach>
</if>
</where>
</update>
<select id="selectPackageExist" resultType="Integer">
select COUNT(ldpl.id)
@ -245,8 +258,18 @@
LEFT JOIN logpm_warehouse_updown_goods lwug on lwug.association_id = ldrp.parce_list_id
LEFT JOIN logpm_warehouse_tray_goods lwtg on lwtg.association_id = ldrp.parce_list_id
LEFT JOIN logpm_warehouse_tray lwt on lwtg.tray_id = lwt.id
LEFT JOIN (
SELECT
IFNULL(COUNT( b.reservation_id ),0 )AS aaa,
b.stockup_id AS stockup_id
FROM
logpm_distribution_stockup AS a
LEFT JOIN logpm_distribution_stockup_info AS b ON a.id = b.stockup_id
WHERE b.stock_status != 4
GROUP BY b.stockup_id
) AS aa ON aa.stockup_id = lds.id
<where>
lds.is_deleted = 0
lds.is_deleted = 0 AND aa.aaa > 0 AND ldsi.stock_status != 4
<!-- lds.tenant_id = #{param.tenantId} -->
<if test="param.typeService != null and param.typeService != '' ">and lds.type_service = #{param.typeService}
</if>
@ -408,7 +431,7 @@
from logpm_distribution_stockup ds
LEFT JOIN logpm_distribution_stockup_info ldsi on ds.id = ldsi.stockup_id
LEFT JOIN logpm_distribution_reservation ldr on ldr.id = ldsi.reservation_id
where ds.id = lds.id
where ds.id = lds.id AND ldsi.stock_status != 4
) customer,
(
select GROUP_CONCAT(DISTINCT lwug.position_code )
@ -418,7 +441,7 @@
ldrp.packet_bar_status in (1,3)
LEFT JOIN logpm_distribution_parcel_list ldpl on ldpl.id = ldrp.parce_list_id
LEFT JOIN logpm_warehouse_updown_goods lwug on ldpl.id = lwug.association_id
where ds.id = lds.id
where ds.id = lds.id AND ldsi.stock_status != 4
) warehouseArea ,
(
select GROUP_CONCAT(DISTINCT lwtg.tray_code)
@ -428,7 +451,7 @@
ldrp.packet_bar_status in (1,3)
LEFT JOIN logpm_distribution_parcel_list ldpl on ldpl.id = ldrp.parce_list_id
LEFT JOIN logpm_warehouse_tray_goods lwtg on ldpl.id = lwtg.association_id
where ds.id = lds.id
where ds.id = lds.id AND ldsi.stock_status != 4
) trays,
(
select COUNT(ldrs.id)
@ -436,7 +459,7 @@
LEFT JOIN logpm_distribution_stockup_info ldsi on ds.id = ldsi.stockup_id
LEFT JOIN logpm_distribution_reservation_stockarticle ldrs on ldrs.reservation_id = ldsi.reservation_id and
ldrs.stock_article_status in (1,3)
where ds.id = lds.id
where ds.id = lds.id AND ldsi.stock_status != 4
) orderNum ,
(
select COUNT(DISTINCT ldrp.id)
@ -444,7 +467,7 @@
LEFT JOIN logpm_distribution_stockup_info ldsi on ds.id = ldsi.stockup_id
LEFT JOIN logpm_distribution_reservation_package ldrp on ldrp.reservation_id = ldsi.reservation_id and
ldrp.packet_bar_status in (1,3)
where ds.id = lds.id
where ds.id = lds.id AND ldsi.stock_status != 4
)planNum,
(
select IFNULL(SUM(ldrs.reservation_num),0)
@ -452,14 +475,14 @@
LEFT JOIN logpm_distribution_stockup_info ldsi on ds.id = ldsi.stockup_id
LEFT JOIN logpm_distribution_reservation_stocklist ldrs on ldrs.reservation_id = ldsi.reservation_id and
ldrs.stock_list_status in (1,3)
where ds.id = lds.id
where ds.id = lds.id AND ldsi.stock_status != 4
) inventoryNub
from logpm_distribution_stockup lds
LEFT JOIN logpm_distribution_stockup_info ldsi on lds.id = ldsi.stockup_id
LEFT JOIN logpm_distribution_reservation_stockarticle ldrs on ldrs.reservation_id = ldsi.reservation_id
LEFT JOIN logpm_distribution_parcel_list ldpl on ldpl.stock_article_id = ldrs.stock_article_id
<where>
lds.is_deleted = 0 and lds.type_service in (1,2)
lds.is_deleted = 0 and lds.type_service in (1,2) AND ldsi.stock_status != 4
<if test="param.stockupDateStart != null and param.stockupDateStart">and lds.stockup_date between
#{param.stockupDateStart} and #{param.stockupDateEnd}
</if>
@ -511,7 +534,7 @@
LEFT JOIN logpm_distrilbution_bill_stock ldbs on ldbs.bill_lading_id = ldsi.reservation_id and ldbs.order_status
in (1,2)
<where>
lds.is_deleted = 0 and lds.type_service = 3
lds.is_deleted = 0 and lds.type_service = 3 AND ldsi.stock_status != 4
<if test="param.stockupDateStart != null and param.stockupDateStart">and lds.stockup_date between
#{param.stockupDateStart} and #{param.stockupDateEnd}
</if>
@ -574,9 +597,8 @@
</select>
<select id="selectStockupSelf" resultType="com.logpm.distribution.vo.DistributionStockupStockListVO">
select lddd.stock_list_id stockListId,
GROUP_CONCAT(DISTINCT lwug.position_code) allocation,
GROUP_CONCAT(DISTINCT lwug.allocation_id) allocations,
select lddd.stock_list_id stockListId,
concat(ifnull(t1.allocation_ids,''),if(t1.allocation_ids is not null,',',''), ifnull(t2.allocation_ids,'')) as allocations,
ldsl.description_goods materialName,
ldsl.sku sku,
ldsl.cargo_norms cargoNorms,
@ -594,10 +616,20 @@
lddd.id deliveryDetailsId
from logpm_distribution_delivery_details lddd
LEFT JOIN logpm_distribution_stock_list ldsl on lddd.stock_list_id = ldsl.id
LEFT JOIN logpm_warehouse_updown_goods lwug
on lwug.association_id = ldsl.material_id and lwug.association_type = '4'
and ldsl.market_id = lwug.market_id and ldsl.incoming_batch = lwug.incoming_batch and
ldsl.warehouse_id = lwug.warehouse_id
LEFT JOIN ( SELECT association_value,warehouse_id, GROUP_CONCAT( DISTINCT ( allocation_id )) AS allocation_ids FROM logpm_warehouse_updown_goods WHERE association_type = 4 GROUP BY association_value,warehouse_id ) AS t2 ON ldsl.cargo_number = t2.association_value and ldsl.warehouse_id=t2.warehouse_id
LEFT JOIN ( SELECT
ldpl.material_code,
ldpl.warehouse_id,
GROUP_CONCAT( DISTINCT ( lwug.allocation_id ) ) AS allocation_ids
FROM
logpm_warehouse_updown_goods lwug
LEFT JOIN logpm_distribution_parcel_list ldpl ON ldpl.id = lwug.association_id
WHERE
lwug.association_type != 4
AND ldpl.conditions = 2
GROUP BY ldpl.material_code,ldpl.warehouse_id ) AS t1 ON ldsl.cargo_number = t1.material_code and ldsl.warehouse_id=t1.warehouse_id
where lddd.bill_lading_id = #{reservationId}
GROUP BY lddd.stock_list_id, ldsl.description_goods, ldsl.sku, ldsl.cargo_norms, lddd.quantity, ldsl.cargo_unit,
ldsl.tray_name, ldsl.source_type,ldsl.unpack,lddd.id
@ -726,7 +758,7 @@
from logpm_distribution_stockup lds
LEFT JOIN logpm_distribution_stockup_info ldsi on ldsi.stockup_id = lds.id
<where>
lds.id = #{param.stockupId}
lds.id = #{param.stockupId} AND ldsi.stock_status != 4
</where>
</select>
@ -877,6 +909,7 @@
from logpm_distribution_stockup_info )
and ldsi.stockup_id = #{param.id}
and ldr.is_deleted = 0
and ldsi.stock_status != 4
<if test="param.stockupStatus != null and param.stockupStatus !=''"> and ldr.stockup_status = #{param.stockupStatus} </if>
<if test="param.mallName != null and param.mallName !=''"> and ldr.mall_name = #{param.mallName} </if>
<if test="param.goodsAllocation != null and param.goodsAllocation !=''"> and lwug.position_code like concat('%', #{param.goodsAllocation},'%' )</if>
@ -906,6 +939,7 @@
<where>
ldsi.stockup_id = #{ id }
AND ldsi.is_deleted = 0
AND ldsi.stock_status != 4
</where>
</select>
@ -948,7 +982,7 @@
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
<where>
ldsi.stockup_id =#{id}
ldsi.stockup_id =#{id} AND ldsi.stock_status != 4
</where>
</select>
@ -1253,5 +1287,27 @@
END num
FROM logpm_distribution_stockup WHERE id = #{stockUpId}
</select>
<select id="selectInventoryDetailByBillLadingIdAndStockListId"
resultType="com.logpm.distribution.vo.DistributionStockupInventoryDetailVO">
SELECT
ldbl.pickup_batch,
ldsld.create_time reservationTime,
ldsor.create_time codeCreatedTime,
lds.create_time stockScanTime,
ldsl.description_goods descriptionGoods,
ldsld.stock_package_code stockPackageCode,
lwga.qr_code AS qrCode
FROM
logpm_dis_stock_list_detail AS ldsld
LEFT JOIN logpm_dis_stock_ordercode_reco AS ldsor ON ldsld.stock_package_code = ldsor.`code`
LEFT JOIN logpm_distribution_stock_list AS ldsl ON ldsld.stock_list_id = ldsl.id
LEFT JOIN logpm_distrilbution_bill_lading AS ldbl ON ldsld.reservation_id = ldbl.`id`
LEFT JOIN logpm_distribution_stock AS lds ON ldsld.reservation_id = lds.reservation_id AND ldsld.stock_list_id = lds.stock_list_id
LEFT JOIN logpm_warehouse_goods_allocation AS lwga ON lwga.id = lds.allocation_id
WHERE
ldsld.reservation_id = #{billLadingId} AND ldsld.stock_list_id = #{stockListId} AND lds.outbound_type = 3
GROUP BY
ldsld.id
</select>
</mapper>

14
blade-service/logpm-distribution/src/main/java/com/logpm/distribution/mapper/DistrilbutionBillLadingMapper.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.baomidou.mybatisplus.extension.plugins.pagination.Page;
import com.logpm.distribution.dto.DistributionDeliveryDetailsDTO;
import com.logpm.distribution.dto.DistrilbutionBillLadingDTO;
import com.logpm.distribution.dto.app.BillLadingAppDTO;
@ -29,6 +30,7 @@ import com.logpm.distribution.entity.DistrilbutionBillLadingEntity;
import com.logpm.distribution.excel.DistrilbutionBillLadingExcel;
import com.logpm.distribution.vo.*;
import com.logpm.distribution.vo.app.DistrilbutionAppBillLadingDetailVO;
import com.logpm.distribution.vo.app.DistrilbutionAppBillLadingOrderMainVO;
import org.apache.ibatis.annotations.Param;
import java.util.List;
@ -85,7 +87,7 @@ public interface DistrilbutionBillLadingMapper extends BaseMapper<DistrilbutionB
* @param distrilbutionBillLadingEntity
* @return
*/
IPage<DistrilbutionBillLadingAppVO> getInventory(IPage<Object> page,@Param("param") DistrilbutionBillLadingEntity distrilbutionBillLadingEntity);
List<DistrilbutionBillLadingAppVO> getInventory(@Param("param") DistrilbutionBillLadingEntity distrilbutionBillLadingEntity);
DistrilbutionBillLadingVO getBillLadingNum(@Param("param") DistrilbutionBillLadingDTO billLadingEntity);
@ -141,4 +143,14 @@ public interface DistrilbutionBillLadingMapper extends BaseMapper<DistrilbutionB
* @return
*/
Integer selectBillLadingLoading(@Param("billLadingId") Long billLadingId);
DistrilbutionAppBillLadingOrderMainVO getBillLadingOrderMainVO(@Param("billLadingId")Long billLadingId);
List<Boolean> getCompleteNum(@Param("billLadingId")Long billLadingId);
Page<DistrilbutionBillLadingAppVO> getInventoryPage(IPage<Object> page,@Param("param") DistrilbutionBillLadingEntity distrilbutionBillLadingEntity);
// Page<DistrilbutionBillLadingAppVO> getInventoryPage(IPage<Object> page, DistrilbutionBillLadingEntity distrilbutionBillLadingEntity);
}

39
blade-service/logpm-distribution/src/main/java/com/logpm/distribution/mapper/DistrilbutionBillLadingMapper.xml

@ -458,7 +458,7 @@
dsa.warehouse,
dsa.warehouse_entry_time warehouseEntryTime,
dsa.storage_fee storageFee,
COUNT(ldbp.id) totalNumber,
(COUNT(ldbp.id) + IFNULL((SELECT sum(quantity) FROM logpm_distribution_delivery_details WHERE bill_lading_id = dbl.id),0)) totalNumber,
COUNT(lds.id) handQuantity,
GROUP_CONCAT(DISTINCT lds.goods_name) productInformation,
dbl.certificate_type certificateType,
@ -511,6 +511,43 @@
SELECT
IF((SELECT sum(packet_number) FROM logpm_distrilbution_bill_package WHERE bill_lading_id = #{billLadingId} AND packet_bar_status != 2) IS NULL,0,(SELECT sum(packet_number) FROM logpm_distrilbution_bill_package WHERE bill_lading_id = #{billLadingId} AND packet_bar_status != 2))
</select>
<select id="getBillLadingOrderMainVO"
resultType="com.logpm.distribution.vo.app.DistrilbutionAppBillLadingOrderMainVO">
SELECT
( SELECT count( 1 ) FROM logpm_distrilbution_bill_stock WHERE bill_lading_id = ldbl.id AND order_status != 2 AND is_deleted = 0) AS orderNum ,
(IFNULL((SELECT SUM(quantity) FROM logpm_distribution_reservation_zero_package WHERE reservation_id = ldbl.id AND is_deleted = 0),0)) + (IFNULL((SELECT sum(packet_number) FROM logpm_distrilbution_bill_package WHERE bill_lading_id = ldbl.id AND is_deleted = 0),0))+(IFNULL((SELECT SUM(quantity) FROM logpm_distribution_delivery_details WHERE bill_lading_id = ldbl.id AND is_deleted = 0),0)) AS planNum,
IFNULL((SELECT SUM(quantity) FROM logpm_distribution_delivery_details WHERE bill_lading_id = ldbl.id AND is_deleted = 0),0) AS inventoryNub,
IFNULL((SELECT SUM(quantity) FROM logpm_distribution_bill_lading_scan WHERE bill_lading_id = ldbl.id AND is_deleted = 0) ,0) AS signedNum
FROM
logpm_distrilbution_bill_lading AS ldbl
WHERE
ldbl.id = #{billLadingId}
</select>
<select id="getCompleteNum" resultType="java.lang.Boolean">
SELECT
IF(IFNULL(SUM(ldbls.quantity),0) = sum( ldbp.packet_number ),1,0) c
FROM
logpm_distrilbution_bill_stock AS ldbs
LEFT JOIN logpm_distrilbution_bill_package AS ldbp ON ldbs.stock_article_id = ldbp.stock_article_id
AND ldbs.bill_lading_id = ldbp.bill_lading_id
LEFT JOIN logpm_distribution_bill_lading_scan AS ldbls ON ldbls.stock_article_id = ldbp.stock_article_id AND ldbls.bill_lading_id = ldbs.bill_lading_id
WHERE ldbs.bill_lading_id = #{billLadingId} GROUP BY ldbp.id
</select>
<select id="getInventoryPage" resultType="com.logpm.distribution.vo.DistrilbutionBillLadingAppVO">
select ldbl.id ,lddd.stock_list_id stockListId,lddd.quantity,ldsl.description_goods
descriptionGoods,ldsl.cargo_unit cargoUnit,ldsl.sku,(
select count(1)
from logpm_distribution_stock lds
where lds.bill_lading_id = #{param.id} and lds.is_deleted = 0
) deliveryNum ,lbm.packing_specification packingSpecification
from logpm_distrilbution_bill_lading ldbl
LEFT JOIN logpm_distribution_delivery_details lddd on ldbl.id = lddd.bill_lading_id
LEFT JOIN logpm_distribution_stock_list ldsl on ldsl.id = lddd.stock_list_id
LEFT JOIN logpm_basicdata_material lbm on lbm.id = ldsl.material_id
<where>
ldbl.id = #{param.id} and lddd.is_deleted = '0'
</where>
</select>
</mapper>

2
blade-service/logpm-distribution/src/main/java/com/logpm/distribution/service/IDistributionDeliveryDetailsService.java

@ -61,7 +61,7 @@ public interface IDistributionDeliveryDetailsService extends BaseService<Distrib
*/
DistributionDeliveryDetailsVO oneListNum(Long billLadingId);
DistrilbutionBillLadingInventoryAppVO listCode(String billLadingId, String coding);
List<DistrilbutionBillLadingInventoryAppVO> listCode(String billLadingId);
/**
* 自提库存品查询

15
blade-service/logpm-distribution/src/main/java/com/logpm/distribution/service/IDistributionStockupService.java

@ -292,4 +292,19 @@ public interface IDistributionStockupService extends BaseService<DistributionSto
* @return
*/
DistributionStockupEntity selectStockUpByStockUpCode(String searchCode);
/**
* 自提查询库存品备货详情
* @param billLadingId
* @param stockListId
* @return
*/
R detailOwnSelfInventoryDetail(Long billLadingId, Long stockListId);
/**
* 维护备货任务
* @param reservationId
*/
void maintenanceStockUp(Long reservationId,Integer type);
}

2
blade-service/logpm-distribution/src/main/java/com/logpm/distribution/service/IDistrilbutionBillLadingService.java

@ -124,7 +124,7 @@ public interface IDistrilbutionBillLadingService extends BaseService<Distrilbuti
* @param distrilbutionBillLading
* @return
*/
IPage<DistrilbutionBillLadingAppVO> getInventory(IPage<Object> page, Map<String, Object> distrilbutionBillLading);
DistrilbutionAppBillLadingOrderMainVO getInventory( Map<String, Object> distrilbutionBillLading);
/**
* pda扫描操作

2
blade-service/logpm-distribution/src/main/java/com/logpm/distribution/service/impl/DistributionAsyncServiceImpl.java

@ -1607,8 +1607,6 @@ public class DistributionAsyncServiceImpl implements IDistributionAsyncService {
for (DistributionParcelListEntity distributionParcelListEntity : distributionParcelListEntities) {
log.info(">>>>>>>>>>>>>>>>>>>>>>>>>distributionParcelListEntities: {}", distributionParcelListEntities);
log.info(">>>>>>>>>>>>>>>>>>>>>>>>>distributionParcelListEntity: {}", distributionParcelListEntity);
// todo 查询签收信息
DistributionSignforEntity distributionSignfor = distributionSignforService.getByReservationId(distributionReservationStockarticleEntity.getReservationId());
OrderStatusDTO orderStatusDTO = new OrderStatusDTO();

4
blade-service/logpm-distribution/src/main/java/com/logpm/distribution/service/impl/DistributionDeliveryDetailsServiceImpl.java

@ -77,8 +77,8 @@ public class DistributionDeliveryDetailsServiceImpl extends BaseServiceImpl<Dist
}
@Override
public DistrilbutionBillLadingInventoryAppVO listCode(String billLadingId, String coding) {
return baseMapper.listCode(billLadingId,coding) ;
public List<DistrilbutionBillLadingInventoryAppVO> listCode(String billLadingId) {
return baseMapper.listCode(billLadingId) ;
}
@Override

38
blade-service/logpm-distribution/src/main/java/com/logpm/distribution/service/impl/DistributionDeliveryListServiceImpl.java

@ -4572,6 +4572,9 @@ public class DistributionDeliveryListServiceImpl extends BaseServiceImpl<Distrib
public R loadingStart(DistrilbutionloadingscanDTO distrilbutionloadingscanDTO) {
//获取当前用户司机
DistributionDeliveryListEntity distributionDeliveryListEntity = distributionDeliveryListMapper.selectById(distrilbutionloadingscanDTO.getDeliveryId());
if (distributionDeliveryListEntity.getDeliveryStatus().equals("3")){
return Resp.scanFail("该任务已完结!","该任务已完结!");
}
String format = new SimpleDateFormat("yyyy-MM-dd hh:mm:ss").format(new Date());
String loadingId = distrilbutionloadingscanDTO.getLoadingId();
Boolean b = false;
@ -7057,7 +7060,7 @@ public class DistributionDeliveryListServiceImpl extends BaseServiceImpl<Distrib
}
//查询指定配送计划装车件数
DistributionLoadingNumDTO deliveryLoadingNum = distributionDeliveryListMapper.selectDeliveryLoadingNum(deliveryId);
log.info(">>>>>>>>>>>>>>> 车次状态维护2 代码执行 deliveryLoadingNum={}",deliveryLoadingNum);
log.info(">>>>>>>>>>>>>>> 车次状态维护2 代码执行 deliveryLoadingNum{}",deliveryLoadingNum);
int loadingNum = 0;
int deliveryQuantity = deliveryListEntity.getDeliveryNumber() + (Objects.isNull(deliveryListEntity.getInventoryNub()) ? 0 : deliveryListEntity.getInventoryNub());
@ -7079,41 +7082,12 @@ public class DistributionDeliveryListServiceImpl extends BaseServiceImpl<Distrib
} else {
log.error(method + "查询配送无计划数量,deliveryId:{}", deliveryId);
}
//维护状态
// List<DistributionSignforEntity> list = distributionSignforService.list(Wrappers.<DistributionSignforEntity>query().lambda()
// .eq(DistributionSignforEntity::getDeliveryId, deliveryId)
// );
// List<DistributionReservationEntity> distributionReservationEntities = baseMapper.selectReservationByDeliveryListId(deliveryId);
//查询客户列表
// if (Func.isNotEmpty(distributionReservationEntities)){
// log.info(">>>>>>>>>>>>>>> 维护配送车次客户数量:{}",distributionReservationEntities.size());
// boolean flag = distributionReservationEntities.stream().allMatch(a -> ReservationSigningStatusConstant.yiqianshou.getValue().equals(a.getSigningStatus()));
// log.info(">>>>>>>>>>>>>>> 客户是否完全签收 代码执行 list:{}",flag);
// if (flag) {
// deliveryListEntity.setDeliveryStatus(DeliveryStatusConstant.yiwancheng.getValue());
// }
// }else {
// //查询不出此配送任务存在预约信息,进行配送车次取消
// this.cancelDelivery(deliveryListEntity.getId());
// log.info(deliveryListEntity.getTrainNumber()+">>>>>>>>>>>>>>> 取消全部配送信息:{}",deliveryId);
// log.info(">>>>>>>>>>>>>>> 进行配送车次任务取消",deliveryId);
// }
// if (list.size()>0) {
// //查看所有的签收信息是否均已完成
// boolean anyMatch = list.stream().allMatch(s -> s.getSigningStatus().equals(SignforStatusConstant.yiqianshou.getValue()));
// log.info(">>>>>>>>>>>>>>> 车次状态维护4 代码执行 anyMatch={}",anyMatch);
// log.info(">>>>>>>>>>>>>>> 当前车次复核数量:{}", list.stream().filter(s -> s.getSigningStatus().equals(SignforStatusConstant.yiqianshou.getValue())).count());
// if (anyMatch) {
// deliveryListEntity.setDeliveryStatus(DeliveryStatusConstant.yiwancheng.getValue());
// }
// }else {
// log.error(method + "查询配送单签收信息错误,deliveryId:{}", deliveryId);
// }
//查询配送内有效的客户信息
List<DistributionSignforEntity> signforEntities = baseMapper.selectSignforByDeliveryId(deliveryId);
boolean flag = signforEntities.stream().allMatch(s -> SignforStatusConstant.yiqianshou.getValue().equals(s.getSigningStatus()));
log.info(method+"维护配送状态>>>>>>>>>>>>deliveryId:{}",deliveryId);
log.info(method+"维护配送状态>>>>>>>>>>>>状态是否满足完成:{}",flag);
if (flag){
deliveryListEntity.setDeliveryStatus(DeliveryStatusConstant.yiwancheng.getValue());
}

18
blade-service/logpm-distribution/src/main/java/com/logpm/distribution/service/impl/DistributionReservationServiceImpl.java

@ -2727,6 +2727,12 @@ public class DistributionReservationServiceImpl extends BaseServiceImpl<Distribu
}
//这里直接进行物理删除即可,但是在删除前需要将数据状态进行维护
//处理预约的包件信息
}else {
//取消备货任务
List<Long> reservationIds = new ArrayList<>();
reservationIds.add(reservationEntity.getId());
Integer row = distributionStockupMapper.cancelStockUpTasks(reservationIds,stockupEntity.getId());
log.info("#################取消预约,取消备货任务:{}",reservationEntity.getReservationCode());
}
reservationEntity.setReservationStatus(ReservationStatusConstant.yiquexiao.getValue());
this.updateById(reservationEntity);
@ -2736,6 +2742,7 @@ public class DistributionReservationServiceImpl extends BaseServiceImpl<Distribu
}
return true;
}
@ -3746,7 +3753,16 @@ public class DistributionReservationServiceImpl extends BaseServiceImpl<Distribu
}else {
reservationEntity.setReservationStockListNum(0);
}
this.updateById(reservationEntity);
if (reservationEntity.getReservationNum() + reservationEntity.getReservationStockListNum() == 0){
DistributionReservationDTO distributionReservationDTO = new DistributionReservationDTO();
distributionReservationDTO.setId(reservationId);
log.info("#################系统判定取消预约任务:{}",reservationEntity.getReservationCode());
distributionReservationDTO.setCancelReason("无效配送任务,系统取消");
this.cancelReservation(distributionReservationDTO);
}else {
this.updateById(reservationEntity);
}
}

10
blade-service/logpm-distribution/src/main/java/com/logpm/distribution/service/impl/DistributionSignforServiceImpl.java

@ -569,6 +569,7 @@ public class DistributionSignforServiceImpl extends BaseServiceImpl<Distribution
boolean flag = this.judgmentSignIsHavePackage(distributionSignfor.getReservationId());
if (!flag) {
distributionAsyncService.releaseSource(distributionSignfor.getReservationId(), myCurrentWarehouse.getId());
distributionStockupService.maintenanceStockUp(distributionSignfor.getReservationId(),1);
}
return R.success("操作成功");
}
@ -2040,7 +2041,7 @@ public class DistributionSignforServiceImpl extends BaseServiceImpl<Distribution
}
return Resp.scanFail("此码不是订制品", "此码不是订制品");
}
List<String> orderPackageCodes = new ArrayList<>();
List<DistributionParcelListEntity> parcelListEntityList = distributionReservationMapper.selectPackageListByReservationId(distrilbutionloadingscanDTO.getReservationId());
//查询该客户是否存在该包件信息
List<DistributionParcelListEntity> collect = parcelListEntityList.stream().filter(p -> p.getOrderPackageCode().equals(distrilbutionloadingscanDTO.getBarcode())).collect(Collectors.toList());
@ -2153,6 +2154,8 @@ public class DistributionSignforServiceImpl extends BaseServiceImpl<Distribution
distributionStockArticleService.maintenanceOrderInfo(collect.get(0).getOrderCode(), myCurrentWarehouse.getId());
//推送信息至工厂
distributionAsyncService.sendFactory(collect.get(0), simpleDateFormat.format(new Date()), distributionReservationEntity.getId(), distributionReservationEntity.getReservationCode(), myCurrentWarehouse.getName(), nickName);
orderPackageCodes.add(updatePackage.getOrderPackageCode());
} else if (Func.isEmpty(collect)) {
//这里就需要对该包件信息是否属于该配送计划进行判定。如果属于该配送计划则是串货。不是那么则需要提示是否异常签收或者返回的操作
@ -2193,12 +2196,15 @@ public class DistributionSignforServiceImpl extends BaseServiceImpl<Distribution
//一个客户下出现重复包条码
log.error("############出现重复包条码:{}", collect);
}
String str = checkSignNum(distrilbutionloadingscanDTO);
//维护客户
distributionReservationService.maintenanceReservationInfo(distrilbutionloadingscanDTO.getReservationId());
//维护配送任务
distributionDeliveryListService.maintenanceDeliveryInfo(distrilbutionloadingscanDTO.getDeliveryId());
return Resp.scanSuccess("签收成功", str);
return Resp.scanSuccessWithData("签收成功", str,orderPackageCodes);
} catch (Exception e) {
log.error(">>>>> 签收异常报错", e);
throw new CustomerException("当前登录信息不已失效,请重新登录");

60
blade-service/logpm-distribution/src/main/java/com/logpm/distribution/service/impl/DistributionStockupServiceImpl.java

@ -16,6 +16,7 @@
*/
package com.logpm.distribution.service.impl;
import cn.hutool.core.collection.CollUtil;
import com.alibaba.fastjson.JSON;
import com.alibaba.fastjson.JSONArray;
import com.alibaba.fastjson.JSONObject;
@ -73,6 +74,7 @@ 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.CollectionUtil;
import org.springblade.core.tool.utils.Func;
import org.springblade.core.tool.utils.StringUtil;
import org.springblade.system.cache.DictBizCache;
@ -207,6 +209,8 @@ public class DistributionStockupServiceImpl extends BaseServiceImpl<Distribution
private IBasicdataClientClient basicdataClientClient;
@Override
public IPage<DistributionStockupVO> selectDistributionStockupPage(IPage<DistributionStockupVO> page, DistributionStockupVO distributionStockup) {
return page.setRecords(baseMapper.selectDistributionStockupPage(page, distributionStockup));
@ -1202,7 +1206,12 @@ public class DistributionStockupServiceImpl extends BaseServiceImpl<Distribution
if (Func.isNotEmpty(distributionStockupStockListVO.getAllocations())) {
String[] ids = distributionStockupStockListVO.getAllocations().split(",");
List<WarehouseGoodsAllocationEntity> allocationInforByIds = warehouseGoodsAllocationClient.getAllocationInforByIds(ids);
HashSet<String> strings = new HashSet<String>(CollUtil.newArrayList(ids));
String res = strings.stream().map(Object::toString).collect(Collectors.joining(","));
String[] newIds = res.split(",");
List<WarehouseGoodsAllocationEntity> allocationInforByIds = warehouseGoodsAllocationClient.getAllocationInforByIds(newIds);
for (WarehouseGoodsAllocationEntity allocationInforById : allocationInforByIds) {
if (distributionStockupStockListVO.getAllocationList() == null) {
@ -3341,4 +3350,53 @@ public class DistributionStockupServiceImpl extends BaseServiceImpl<Distribution
}
return baseMapper.selectStockUpByStockUpCode(myCurrentWarehouse.getId(),searchCode);
}
/**
* @param billLadingId
* @param stockListId
* @return
*/
@Override
public R detailOwnSelfInventoryDetail(Long billLadingId, Long stockListId) {
String method = "####################DistributionStockupServiceImpl.detailOwnSelfInventoryDetail";
if (Func.isEmpty(billLadingId) || Func.isEmpty(stockListId)){
log.info(method+ "参数缺失");
return null;
}
//查询指定库存品备货扫描详情
List<DistributionStockupInventoryDetailVO> detailVOS = baseMapper.selectInventoryDetailByBillLadingIdAndStockListId(billLadingId,stockListId);
return R.data(detailVOS);
}
/**
* @param reservationId
* @param type
*/
@Override
public void maintenanceStockUp(Long reservationId, Integer type) {
String method = "###############DistributionStockServiceImpl.maintenanceStockUp";
switch (type){
case 1:
//维护商配、市配问题
List<DistributionStockupInfoEntity> entityList = distributionStockupInfoService.list(Wrappers.<DistributionStockupInfoEntity>query().lambda()
.eq(DistributionStockupInfoEntity::getReservationId, reservationId)
.ne(DistributionStockupInfoEntity::getStockUpType, "3")
);
if (Func.isNotEmpty(entityList)){
if (entityList.size() == 1){
//进行备货任务
} else {
//一个预约任务对应了多个备货任务
}
}else {
//查询预约任务错误
}
break;
case 2:
//自提备货
break;
}
}
}

316
blade-service/logpm-distribution/src/main/java/com/logpm/distribution/service/impl/DistrilbutionBillLadingServiceImpl.java

@ -36,6 +36,7 @@ import com.logpm.distribution.dto.DistrilbutionBillLadingDTO;
import com.logpm.distribution.dto.app.BillLadingAppDTO;
import com.logpm.distribution.entity.*;
import com.logpm.distribution.excel.DistrilbutionBillLadingExcel;
import com.logpm.distribution.mapper.DistributionStockListMapper;
import com.logpm.distribution.mapper.DistrilbutionBillLadingMapper;
import com.logpm.distribution.service.*;
import com.logpm.distribution.vo.*;
@ -110,6 +111,7 @@ public class DistrilbutionBillLadingServiceImpl extends BaseServiceImpl<Distrilb
private final IDistributionStockupScanService distributionStockupScanService;
private final IDistributionStockListService distributionStockListService;
private final DistributionStockListMapper distributionStockListMapper;
private final IDistributionAsyncService distributionAsyncService;
private final IDistributionStockService distributionStockService;
private final IDistributionStockupService distributionStockupService;
@ -1278,7 +1280,14 @@ public class DistrilbutionBillLadingServiceImpl extends BaseServiceImpl<Distrilb
if (!list1.isEmpty()) {
//有零担
int sum = list1.stream().mapToInt(DistributionReservationZeroPackageEntity::getQuantity).sum();
planNum = planNum + sum;
// planNum = planNum + sum;
}
QueryWrapper<DistributionBillLadingScanEntity> qw = new QueryWrapper<>();
qw.eq("bill_lading_id", vo.getBillLadingId());
List<DistributionBillLadingScanEntity> ls = distributionBillLadingScanService.list(qw);
if (!ls.isEmpty()) {
int sum = ls.stream().mapToInt(DistributionBillLadingScanEntity::getQuantity).sum();
signedNum = signedNum + sum;
}
@ -1297,17 +1306,21 @@ public class DistrilbutionBillLadingServiceImpl extends BaseServiceImpl<Distrilb
.eq(DistrilbutionBillPackageEntity::getStockArticleId, s)
.apply("packet_bar_status in (1,3)")
);
int pn = list.size(); //包件数量
planNum = planNum + pn;
// int pn = list.size(); //包件数量
// planNum = planNum + pn;
//通过订单id查询扫描表中有多少数据
QueryWrapper<DistributionBillLadingScanEntity> qw = new QueryWrapper<>();
qw.eq("stock_article_id", Long.parseLong(s))
.eq("is_deleted", 0);
List<DistributionBillLadingScanEntity> ls = distributionBillLadingScanService.list(qw);
if (!ls.isEmpty()) {
int sum = ls.stream().mapToInt(DistributionBillLadingScanEntity::getQuantity).sum();
signedNum = signedNum + sum;
}
// QueryWrapper<DistributionBillLadingScanEntity> qw = new QueryWrapper<>();
// qw.eq("stock_article_id", Long.parseLong(s))
// .eq("is_deleted", 0);
// List<DistributionBillLadingScanEntity> ls = distributionBillLadingScanService.list(qw);
// QueryWrapper<DistributionBillLadingScanEntity> qw = new QueryWrapper<>();
// qw.eq("bill_lading_id", Long.parseLong(s))
// .eq("is_deleted", 0);
// List<DistributionBillLadingScanEntity> ls = distributionBillLadingScanService.list(qw);
// if (!ls.isEmpty()) {
// int sum = ls.stream().mapToInt(DistributionBillLadingScanEntity::getQuantity).sum();
// signedNum = signedNum + sum;
// }
}
//查询库存品的件数量
@ -1320,10 +1333,11 @@ public class DistrilbutionBillLadingServiceImpl extends BaseServiceImpl<Distrilb
} else {
vo.setInventoryNum(0);
}
vo.setOrderNum(orderNum); //订单总数
vo.setPlanNum(planNum); //自提件数
vo.setSignedNum(signedNum); //签收总数
vo.setInventoryNub(inventoryNub); //库存品数
DistrilbutionAppBillLadingOrderMainVO billLadingOrderMainVO = baseMapper.getBillLadingOrderMainVO(vo.getBillLadingId());
vo.setOrderNum(billLadingOrderMainVO.getOrderNum()); //订单总数
vo.setPlanNum(billLadingOrderMainVO.getPlanNum()); //自提件数
vo.setSignedNum(billLadingOrderMainVO.getSignedNum()); //签收总数
vo.setInventoryNub(billLadingOrderMainVO.getInventoryNub()); //库存品数
}
pageList.setRecords(records);
@ -1337,6 +1351,18 @@ public class DistrilbutionBillLadingServiceImpl extends BaseServiceImpl<Distrilb
@Override
public DistrilbutionAppBillLadingOrderMainVO selectOrderList(Long billLadingId, Integer orderStatus, String orderSelfNumbering) {
DistrilbutionAppBillLadingOrderMainVO mainVO =baseMapper.getBillLadingOrderMainVO(billLadingId);
//查询订单数量,
//查询齐套数
//查询字体件数
//查询签收件数
//查询库存品数
// 查询签收完成订单数
List<Boolean> num = baseMapper.getCompleteNum(billLadingId);
if (Func.isNotEmpty(num)){
int size = num.stream().filter(f -> f.equals(true)).collect(Collectors.toList()).size();
mainVO.setCompleteNum(size);
}
DistrilbutionBillLadingAppVO main = baseMapper.selectDataByBillLadingId(billLadingId);
if (Objects.isNull(main)) {
return null;
@ -1345,22 +1371,22 @@ public class DistrilbutionBillLadingServiceImpl extends BaseServiceImpl<Distrilb
//有可能存在多个订单所以需要拆分
String stockArticleId = main.getStockArticleId();
Integer orderNum = 0;
Integer planNum = 0;
Integer conpleteNum = 0;
Integer signedNum = 0;
// Integer orderNum = 0;
// Integer planNum = 0;
// Integer conpleteNum = 0;
// Integer signedNum = 0;
//查询零担数据
List<DistributionReservationZeroPackageEntity> listZero = distributionZeroPackageService.list(Wrappers.<DistributionReservationZeroPackageEntity>query().lambda()
.eq(DistributionReservationZeroPackageEntity::getReservationId, main.getBillLadingId())
.eq(DistributionReservationZeroPackageEntity::getIsDeleted, 0)
.in(DistributionReservationZeroPackageEntity::getZeroPackageStatus, "1", "3")
);
if (!listZero.isEmpty()) {
int sum = listZero.stream().mapToInt(DistributionReservationZeroPackageEntity::getQuantity).sum();
planNum += sum;
}
// //查询零担数据
// List<DistributionReservationZeroPackageEntity> listZero = distributionZeroPackageService.list(Wrappers.<DistributionReservationZeroPackageEntity>query().lambda()
// .eq(DistributionReservationZeroPackageEntity::getReservationId, main.getBillLadingId())
// .eq(DistributionReservationZeroPackageEntity::getIsDeleted, 0)
// .in(DistributionReservationZeroPackageEntity::getZeroPackageStatus, "1", "3")
// );
// if (!listZero.isEmpty()) {
// int sum = listZero.stream().mapToInt(DistributionReservationZeroPackageEntity::getQuantity).sum();
// planNum += sum;
// }
String[] split = stockArticleId.split(",");
List<DistrilbutionAppBillLadingOrderVO> l = new ArrayList<>();
@ -1372,7 +1398,7 @@ public class DistrilbutionBillLadingServiceImpl extends BaseServiceImpl<Distrilb
vo.setStockArticleId(Long.parseLong(s));
orderNum++;
// orderNum++;
QueryWrapper<DistributionParcelListEntity> queryWrapper = new QueryWrapper<>();
queryWrapper.eq("stock_article_id", Long.parseLong(s))
.eq("is_deleted", 0)
@ -1386,7 +1412,7 @@ public class DistrilbutionBillLadingServiceImpl extends BaseServiceImpl<Distrilb
vo.setOrderSelfNumbering(list.get(0).getOrderCode());
pn = list.size();
vo.setPlanNum(pn);
planNum = planNum + pn;
// planNum = planNum + pn;
}
//通过订单id查询扫描表中有多少数据
QueryWrapper<DistributionBillLadingScanEntity> qw = new QueryWrapper<>();
@ -1396,11 +1422,11 @@ public class DistrilbutionBillLadingServiceImpl extends BaseServiceImpl<Distrilb
List<DistributionBillLadingScanEntity> ls = distributionBillLadingScanService.list(qw);
int sn = ls.stream().mapToInt(DistributionBillLadingScanEntity::getQuantity).sum();
vo.setSignedNum(sn);
signedNum = signedNum + sn;
// signedNum = signedNum + sn;
if (pn == sn) {
conpleteNum++;
}
// if (pn == sn) {
// conpleteNum++;
// }
if (pn == sn) {
vo.setOrderStatusStr("齐套");
} else if (sn < pn && sn > 0) {
@ -1429,38 +1455,38 @@ public class DistrilbutionBillLadingServiceImpl extends BaseServiceImpl<Distrilb
}
}
}
//查询库存品
List<DistributionDeliveryDetailsEntity> list = distributionDeliveryDetailsService.list(Wrappers.<DistributionDeliveryDetailsEntity>query().lambda()
.eq(DistributionDeliveryDetailsEntity::getBillLadingId, billLadingId)
);
//查询是否签收完成
List<DistributionDeliveryDetailsEntity> list1 = distributionDeliveryDetailsService.list(Wrappers.<DistributionDeliveryDetailsEntity>query().lambda()
.eq(DistributionDeliveryDetailsEntity::getBillLadingId, billLadingId)
);
if (!list1.isEmpty()) {
long count = list1.stream().filter(i -> i.getConditions().equals("2")).count();
signedNum += (int) count;
}
//查询签收件数
List<DistributionBillLadingScanEntity> list2 = distributionBillLadingScanService.list(Wrappers.<DistributionBillLadingScanEntity>query().lambda()
.eq(DistributionBillLadingScanEntity::getBillLadingId, billLadingId)
.eq(DistributionBillLadingScanEntity::getMaterialType, "1")
);
if (!list2.isEmpty()) {
signedNum += list2.size();
}
// 查询库存品
// List<DistributionDeliveryDetailsEntity> list = distributionDeliveryDetailsService.list(Wrappers.<DistributionDeliveryDetailsEntity>query().lambda()
// .eq(DistributionDeliveryDetailsEntity::getBillLadingId, billLadingId)
// );
// 查询是否签收完成
// List<DistributionDeliveryDetailsEntity> list1 = distributionDeliveryDetailsService.list(Wrappers.<DistributionDeliveryDetailsEntity>query().lambda()
// .eq(DistributionDeliveryDetailsEntity::getBillLadingId, billLadingId)
// );
// if (!list1.isEmpty()) {
// long count = list1.stream().filter(i -> i.getConditions().equals("2")).count();
// signedNum += (int) count;
// }
// 查询签收件数
// List<DistributionBillLadingScanEntity> list2 = distributionBillLadingScanService.list(Wrappers.<DistributionBillLadingScanEntity>query().lambda()
// .eq(DistributionBillLadingScanEntity::getBillLadingId, billLadingId)
// .eq(DistributionBillLadingScanEntity::getMaterialType, "1")
// );
// if (!list2.isEmpty()) {
// signedNum += list2.size();
// }
// planNum += list.stream().mapToInt(DistributionDeliveryDetailsEntity::getQuantity).sum();
DistrilbutionAppBillLadingOrderMainVO mainVO = new DistrilbutionAppBillLadingOrderMainVO();
mainVO.setOrderNum(orderNum);
if (!list.isEmpty()) {
mainVO.setInventoryNub(list.stream().mapToInt(DistributionDeliveryDetailsEntity::getQuantity).sum());
} else {
mainVO.setInventoryNub(0);
}
mainVO.setPlanNum(planNum);//自提件数
mainVO.setSignedNum(signedNum);//签收总数
mainVO.setCompleteNum(conpleteNum);//订单总数
// DistrilbutionAppBillLadingOrderMainVO mainVO = new DistrilbutionAppBillLadingOrderMainVO();
// mainVO.setOrderNum(orderNum);
// if (!list.isEmpty()) {
// mainVO.setInventoryNub(list.stream().mapToInt(DistributionDeliveryDetailsEntity::getQuantity).sum());
// } else {
// mainVO.setInventoryNub(0);
// }
// mainVO.setPlanNum(planNum);//自提件数
// mainVO.setSignedNum(signedNum);//签收总数
// mainVO.setCompleteNum(conpleteNum);//订单总数
// mainVO.setAssembleNum(list.stream().mapToInt( DistributionDeliveryDetailsEntity::getQuantity ).sum());
mainVO.setList(l);
return mainVO;
@ -1722,17 +1748,35 @@ public class DistrilbutionBillLadingServiceImpl extends BaseServiceImpl<Distrilb
/**
* 查询自提任务库存品
*
* @param page
* @param distrilbutionBillLading
* @return
*/
@Override
public IPage<DistrilbutionBillLadingAppVO> getInventory(IPage<Object> page, Map<String, Object> distrilbutionBillLading) {
public DistrilbutionAppBillLadingOrderMainVO getInventory( Map<String, Object> distrilbutionBillLading) {
String method = "##################DistributionBillLadingServiceImpl.getInventory";
if (Func.isEmpty(distrilbutionBillLading.get("id"))){
log.error(method+"自提Id缺失");
return null;
}
String id = (String) distrilbutionBillLading.get("id");
DistrilbutionAppBillLadingOrderMainVO mainVO =baseMapper.getBillLadingOrderMainVO(Long.parseLong(id));
//查询订单数量,
//查询齐套数
//查询字体件数
//查询签收件数
//查询库存品数
// 查询签收完成订单数
List<Boolean> num = baseMapper.getCompleteNum(Long.parseLong(id));
if (Func.isNotEmpty(num)){
int size = num.stream().filter(f -> f.equals(true)).collect(Collectors.toList()).size();
mainVO.setCompleteNum(size);
}
DistrilbutionBillLadingEntity distrilbutionBillLadingEntity = JSONObject.parseObject(JSONObject.toJSONString(distrilbutionBillLading), DistrilbutionBillLadingEntity.class);
IPage<DistrilbutionBillLadingAppVO> inventory = baseMapper.getInventory(page, distrilbutionBillLadingEntity);
inventory.getRecords().forEach(i -> {
List<DistrilbutionBillLadingAppVO> inventory = baseMapper.getInventory(distrilbutionBillLadingEntity);
inventory.forEach(i -> {
List<DisStockListDetailEntity> listed = disStockListDetailService.list(Wrappers.<DisStockListDetailEntity>query().lambda()
.eq(DisStockListDetailEntity::getReservationId, i.getId())
.eq(DisStockListDetailEntity::getStockListId, i.getStockListId())
.ne(DisStockListDetailEntity::getStockPackageStatus, ReservationPackageStatusConstant.quxiao.getValue())
);
if (Func.isNotEmpty(listed)){
@ -1762,7 +1806,8 @@ public class DistrilbutionBillLadingServiceImpl extends BaseServiceImpl<Distrilb
// i.setEsauInventoryNum(-1);
// }
});
return inventory;
mainVO.setInventoryList(inventory);
return mainVO;
}
@ -1782,7 +1827,13 @@ public class DistrilbutionBillLadingServiceImpl extends BaseServiceImpl<Distrilb
return Resp.scanFail("3000", "参数不完整!!");
} else {
DistrilbutionBillLadingEntity billLadingEntity1 = baseMapper.selectById((Serializable) billLadingId);
if (ObjectUtils.isNotNull(billLadingEntity1) && "20".equals(billLadingEntity1.getConditions())) {
DistrilbutionAppBillLadingOrderMainVO billLadingOrderMainVO = baseMapper.getBillLadingOrderMainVO(Long.parseLong((String) billLadingId));
Integer planNum = billLadingOrderMainVO.getPlanNum();
Integer signedNum = billLadingOrderMainVO.getSignedNum();
if ((planNum+billLadingOrderMainVO.getInventoryNub()) == signedNum){
return Resp.scanFail("提货任务扫描已完成!", "提货任务扫描已完成!");
}
if (ObjectUtils.isNotNull(billLadingEntity1) && "30".equals(billLadingEntity1.getConditions())) {
return Resp.scanFail("提货任务已完成!", "提货任务已完成!");
}
BasicdataWarehouseEntity myCurrentWarehouse = basicdataWarehouseClient.getMyCurrentWarehouse();
@ -1806,28 +1857,99 @@ public class DistrilbutionBillLadingServiceImpl extends BaseServiceImpl<Distrilb
distributionBillLadingScan.setScanType(1);
//扫描
if ("1".equals(type)) {
//库存品
DistrilbutionBillLadingInventoryAppVO inventoryAppVO = distributionDeliveryDetailsService.listCode(String.valueOf(billLadingId), String.valueOf(coding));
//查询该自提单存在几种品类的库存品
List<DistrilbutionBillLadingInventoryAppVO> inventoryAppVO = distributionDeliveryDetailsService.listCode(String.valueOf(billLadingId));
if (ObjectUtils.isNotNull(inventoryAppVO)) {
//查询签收数量
List<DistributionBillLadingScanEntity> list = distributionBillLadingScanService.list(Wrappers.<DistributionBillLadingScanEntity>query().lambda()
.eq(DistributionBillLadingScanEntity::getBillLadingId, billLadingId)
.eq(DistributionBillLadingScanEntity::getMaterialType, "1")
.eq(DistributionBillLadingScanEntity::getStockListId, inventoryAppVO.getStockListId())
List<Long> stocklistIds = inventoryAppVO.stream().map(DistrilbutionBillLadingInventoryAppVO::getStockListId).collect(Collectors.toList());
//查询该自提单所有的库存品包件信息
List<DisStockListDetailEntity> inventoryPackage = disStockListDetailService.list(Wrappers.<DisStockListDetailEntity>query().lambda()
.eq(DisStockListDetailEntity::getReservationId, billLadingId)
.in(DisStockListDetailEntity::getStockListId, stocklistIds)
.ne(DisStockListDetailEntity::getStockPackageStatus, ReservationPackageStatusConstant.quxiao.getValue())
);
if (list.size() == inventoryAppVO.getQuantity() + 1) {
//修改完成状态
distributionAsyncService.getInventoryOrderSelfPickup(inventoryAppVO.getLdddId());
}
if (list.size() > inventoryAppVO.getQuantity()) {
return Resp.scanFail("已完成!", "已完成!!");
Long stockListId = 0L;
if (Func.isNotEmpty(inventoryPackage)){
//检测库存品包件是否都已经完成备货
boolean flag = inventoryPackage.stream().anyMatch(f -> Func.isEmpty(f.getStockPackageCode()));
if (flag){
return Resp.scanFail("库存品备货未完成,请联系库管人员!", "库存品备货未完成,请联系库管人员");
}
//校验包件李彪是否存在满足码值的包件
List<DisStockListDetailEntity> collect = inventoryPackage.stream().filter(f -> coding.equals(f.getStockPackageCode())).collect(Collectors.toList());
if (collect.size() == 1){
//满足签收
distributionBillLadingScan.setPacketBarCode((String) coding);
distributionBillLadingScan.setStockListId(collect.get(0).getStockListId());
distributionBillLadingScan.setQuantity(1);
distributionBillLadingScanService.save(distributionBillLadingScan);
stockListId = collect.get(0).getStockListId();
//扣减库存
distributionStockListMapper.deductionQuantityStock(collect.get(0).getStockListId(),collect.get(0).getNum());
}else {
//不满足签收,记录为什么不满足
if (collect.size() > 1){
//已备货库存品包件存在多条一样的
log.info("########################PDA签收库存品包件存在多条一样的备货码值:{}",coding);
return Resp.scanFail("系统无此编码!", "系统无此编码");
}else {
//备货库存品不存在
return Resp.scanFail("系统无此编码!", "系统无此编码");
}
}
Map<Long, List<DistrilbutionBillLadingInventoryAppVO>> stockListMap = inventoryAppVO.stream().collect(Collectors.groupingBy(DistrilbutionBillLadingInventoryAppVO::getStockListId));
//查询签收数量
List<DistributionBillLadingScanEntity> list = distributionBillLadingScanService.list(Wrappers.<DistributionBillLadingScanEntity>query().lambda()
.eq(DistributionBillLadingScanEntity::getBillLadingId, billLadingId)
.eq(DistributionBillLadingScanEntity::getMaterialType, "1")
.eq(DistributionBillLadingScanEntity::getStockListId, stockListId)
);
List<DistrilbutionBillLadingInventoryAppVO> billLadingInventoryAppVOS = stockListMap.get(stockListId);
if (Func.isNotEmpty(billLadingInventoryAppVOS)){
DistrilbutionBillLadingInventoryAppVO distrilbutionBillLadingInventoryAppVO = billLadingInventoryAppVOS.get(0);
if (list.size() == distrilbutionBillLadingInventoryAppVO.getQuantity()) {
//修改完成状态
distributionAsyncService.getInventoryOrderSelfPickup(distrilbutionBillLadingInventoryAppVO.getLdddId());
}
if (list.size() > distrilbutionBillLadingInventoryAppVO.getQuantity()) {
return Resp.scanFail("已完成!", "已完成!!");
}
//修改库存品签收
distributionAsyncService.getInventorySelfPickup(distrilbutionBillLadingInventoryAppVO.getStockArticleId());
}
}else {
return Resp.scanFail("库存品暂未备货请联系库管人员!", "库存品暂未备货请联系库管人员");
}
//修改库存品签收
distributionAsyncService.getInventorySelfPickup(inventoryAppVO.getStockArticleId());
distributionBillLadingScan.setPacketBarCode((String) coding);
distributionBillLadingScan.setStockListId(inventoryAppVO.getStockListId());
distributionBillLadingScan.setQuantity(1);
distributionBillLadingScanService.save(distributionBillLadingScan);
// //查询签收数量
// List<DistributionBillLadingScanEntity> list = distributionBillLadingScanService.list(Wrappers.<DistributionBillLadingScanEntity>query().lambda()
// .eq(DistributionBillLadingScanEntity::getBillLadingId, billLadingId)
// .eq(DistributionBillLadingScanEntity::getMaterialType, "1")
// .eq(DistributionBillLadingScanEntity::getStockListId, inventoryAppVO.getStockListId())
// );
// if (list.size() == inventoryAppVO.getQuantity() + 1) {
// //修改完成状态
// distributionAsyncService.getInventoryOrderSelfPickup(inventoryAppVO.getLdddId());
// }
// if (list.size() > inventoryAppVO.getQuantity()) {
// return Resp.scanFail("已完成!", "已完成!!");
// }
// //修改库存品签收
// distributionAsyncService.getInventorySelfPickup(inventoryAppVO.getStockArticleId());
//
// distributionBillLadingScan.setPacketBarCode((String) coding);
// distributionBillLadingScan.setStockListId(inventoryAppVO.getStockListId());
// distributionBillLadingScan.setQuantity(1);
// distributionBillLadingScanService.save(distributionBillLadingScan);
} else {
@ -1950,7 +2072,8 @@ public class DistrilbutionBillLadingServiceImpl extends BaseServiceImpl<Distrilb
@Override
public IPage<DistrilbutionBillLadingAppVO> getInventoryNum(IPage<Object> page, Map<String, Object> distrilbutionBillLading) {
DistrilbutionBillLadingEntity distrilbutionBillLadingEntity = JSONObject.parseObject(JSONObject.toJSONString(distrilbutionBillLading), DistrilbutionBillLadingEntity.class);
IPage<DistrilbutionBillLadingAppVO> inventory = baseMapper.getInventory(page, distrilbutionBillLadingEntity);
// List<DistrilbutionBillLadingAppVO> inventory = baseMapper.getInventory(distrilbutionBillLadingEntity);
Page<DistrilbutionBillLadingAppVO> inventory = baseMapper.getInventoryPage(page,distrilbutionBillLadingEntity);
inventory.getRecords().forEach(i -> {
if (i.getQuantity().equals(i.getDeliveryNum())) {
//已备货
@ -2460,6 +2583,14 @@ public class DistrilbutionBillLadingServiceImpl extends BaseServiceImpl<Distrilb
@Override
public R zeroBillOrderData(BillLadingAppDTO billLadingAppDTO) {
DistrilbutionAppBillLadingOrderMainVO billLadingOrderMainVO = baseMapper.getBillLadingOrderMainVO(billLadingAppDTO.getBillLadingId());
List<Boolean> completeNum = baseMapper.getCompleteNum(billLadingAppDTO.getBillLadingId());
if (Func.isNotEmpty(completeNum)){
int size = completeNum.stream().filter(f -> f.equals(true)).collect(Collectors.toList()).size();
billLadingOrderMainVO.setCompleteNum(size);
}else {
billLadingOrderMainVO.setCompleteNum(0);
}
//查询订单
List<DistributionReservationZeroPackageEntity> list = distributionZeroPackageService.list(Wrappers.<DistributionReservationZeroPackageEntity>query().lambda()
.eq(DistributionReservationZeroPackageEntity::getReservationId, billLadingAppDTO.getBillLadingId())
@ -2489,8 +2620,9 @@ public class DistrilbutionBillLadingServiceImpl extends BaseServiceImpl<Distrilb
billLadingZeroOrderVOS.add(zeroOrderVO);
});
billLadingOrderMainVO.setBillLadingZeroOrderVOS(billLadingZeroOrderVOS);
}
return R.data(billLadingZeroOrderVOS);
return R.data(billLadingOrderMainVO);
}
/**

2
blade-service/logpm-distribution/src/test/java/com/logpm/distribution/TestService.java

@ -73,7 +73,7 @@ public class TestService {
@Test
public void test5(){
DistributionSignforDTO dto = new DistributionSignforDTO();
dto.setId(1728618333252620289L);
dto.setId(1774620241420193793L);
iDistributionSignforService.buildArgsToPushMq(dto);
}

3
blade-service/logpm-factory/src/main/java/com/logpm/factory/comfac/service/impl/OrderPackageStatusPushFailLogServiceImpl.java

@ -30,7 +30,8 @@ public class OrderPackageStatusPushFailLogServiceImpl extends BaseServiceImpl<Or
OrderPackageStatusPushFailLogEntity orderPackageStatusPushFailLogEntity = new OrderPackageStatusPushFailLogEntity();
orderPackageStatusPushFailLogEntity.setOrderPackageStatus(status);
orderPackageStatusPushFailLogEntity.setUnitNo(unitNo);
orderPackageStatusPushFailLogEntity.setWarehouseId(currentWarehouseId);
orderPackageStatusPushFailLogEntity.setWarehouseId
(currentWarehouseId);
orderPackageStatusPushFailLogEntity.setOperationTime(operationTime);
orderPackageStatusPushFailLogEntity.setTrayId(trayId);
orderPackageStatusPushFailLogEntity.setDataStatus(0);

4
blade-service/logpm-report/pom.xml

@ -30,9 +30,11 @@
</dependency>
<dependency>
<groupId>org.springblade</groupId>
<artifactId>logpm-report-api</artifactId>
<artifactId>logpm-basicdata-api</artifactId>
<version>3.2.0.RELEASE</version>
</dependency>
</dependencies>
<build>

2
blade-service/logpm-report/src/main/java/com/logpm/report/controller/IndexCountController.java

@ -40,7 +40,7 @@ public class IndexCountController {
return R.data(theNumberOfShelvesInTheLibrary);
}
@GetMapping("/index_number_No_the_library")
@GetMapping("/index_number_in_the_library")
@ApiOperation(value = "定制品在库订单未上架总数",tags = "定制品在库订单未上架总数")
public R<Integer> getTheNumberOfShelvesNoTheLibrary(@RequestParam("id") Long id){
Integer theNumberOfShelvesInTheLibrary= inLibraryDeliverService.theNumberOfShelvesInTheLibrary(id,1);

20
blade-service/logpm-report/src/main/java/com/logpm/report/mapper/BillDataMapper.java

@ -0,0 +1,20 @@
package com.logpm.report.mapper;
import org.apache.ibatis.annotations.Mapper;
import org.apache.ibatis.annotations.Param;
import java.math.BigDecimal;
import java.util.List;
@Mapper
public interface BillDataMapper {
Integer billCount(@Param("warehouseId") Long warehouseId, @Param("timeType") Integer timeType, @Param("date")List<Object> date);
BigDecimal billMoney(@Param("warehouseId") Long warehouseId,@Param("timeType") Integer timeType, @Param("date")List<Object> date);
BigDecimal detailMoney(@Param("warehouseId") Long warehouseId,@Param("detailMoney") Integer timeType, @Param("date")List<Object> date);
}

35
blade-service/logpm-report/src/main/java/com/logpm/report/mapper/BillDataMapper.xml

@ -0,0 +1,35 @@
<?xml version="1.0" encoding="UTF-8" ?>
<!DOCTYPE mapper PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" "http://mybatis.org/dtd/mybatis-3-mapper.dtd" >
<mapper namespace="com.logpm.report.mapper.BillDataMapper">
<select id="billCount" resultType="java.lang.Integer">
select count(*) billCount
from
logpm_platform.logpm_warehouse_waybill
where freeze_status = 1
<where>
<if test="warehouseId!=null">
and
where destination_warehouse_id = #{warehouseId}
</if>
<if test="timeType !=null ">
<choose>
<when test="timeType == 2">
<if test="param.startDate != null and date.startDate != '' ">
and create_time &gt; #{param.startDate}
</if>
<if test="param.endDate != null and date.endDate != '' ">
and create_time &lt; #{param.endDate}
</if>
</when>
</choose>
</if>
</where>
</select>
<select id="billMoney" resultType="java.math.BigDecimal"></select>
<select id="detailMoney" resultType="java.math.BigDecimal"></select>
</mapper>

1
blade-service/logpm-report/src/main/java/com/logpm/report/mapper/IndexCountMapper.xml

@ -49,5 +49,6 @@
and a.order_package_status <![CDATA[ <= ]]> #{orderPackageStatus}
GROUP BY b.type_service
</select>
<select id="numberOfAbnormalWorkOrdersInTheMonth" resultType="java.lang.Integer"></select>
</mapper>

41
blade-service/logpm-report/src/main/java/com/logpm/report/service/BillingService.java

@ -0,0 +1,41 @@
package com.logpm.report.service;
import com.logpm.report.vo.indexCount.BillingDataVo;
import com.logpm.report.vo.indexCount.DetailMoneyVo;
import java.math.BigDecimal;
import java.util.List;
public interface BillingService {
/**
* 获取开单数
* @param TType
* @return Integer
*/
Integer BillCount(Integer TType);
/**
* 获取开单收入
* @param TType
* @return BigDecimal
*/
BigDecimal BillMoney(Integer TType);
/**
* 获取开单收入明细
* @param TType
* @return List
*/
List<DetailMoneyVo> DetailType(Integer TType);
/**
* 获取全部开单数据
* @return
*/
BillingDataVo BillData();
}

3
blade-service/logpm-report/src/main/java/com/logpm/report/service/InLibraryDeliverService.java

@ -1,8 +1,6 @@
package com.logpm.report.service;
import com.baomidou.mybatisplus.core.metadata.IPage;
import io.swagger.models.auth.In;
/**
* @author wzy
@ -10,7 +8,6 @@ import io.swagger.models.auth.In;
*/
public interface InLibraryDeliverService {
IPage<InLibraryDeliverService> DistributionParcelListPage( ) ;
Integer indexCount(Long id);

61
blade-service/logpm-report/src/main/java/com/logpm/report/service/impl/BillingServiceImpl.java

@ -0,0 +1,61 @@
package com.logpm.report.service.impl;
import com.logpm.basicdata.entity.BasicdataWarehouseEntity;
import com.logpm.basicdata.feign.IBasicdataWarehouseClient;
import com.logpm.report.service.BillingService;
import com.logpm.report.vo.indexCount.BillingDataVo;
import com.logpm.report.vo.indexCount.DetailMoneyVo;
import lombok.AllArgsConstructor;
import org.springframework.stereotype.Service;
import java.math.BigDecimal;
import java.util.ArrayList;
import java.util.List;
@Service
@AllArgsConstructor
public class BillingServiceImpl implements BillingService {
private IBasicdataWarehouseClient warehouseClient;
@Override
public Integer BillCount(Integer TType) {
return null;
}
@Override
public BigDecimal BillMoney(Integer TType) {
return null;
}
@Override
public List<DetailMoneyVo> DetailType(Integer TType) {
return null;
}
@Override
public BillingDataVo BillData() {
return null;
}
/**
* 获取用户仓库id
* @return
*/
private List<Long> getWarehouse(){
BasicdataWarehouseEntity myCurrentWarehouse = warehouseClient.getMyCurrentWarehouse();
List<Long> ls = new ArrayList<>();
if (myCurrentWarehouse !=null){
ls.add(myCurrentWarehouse.getId());
}else {
List<BasicdataWarehouseEntity> myWarehouseList = warehouseClient.getMyWarehouseList();
for (BasicdataWarehouseEntity warehouse : myWarehouseList) {
ls.add( warehouse.getId());
}
}
return ls;
}
}

4
blade-service/logpm-report/src/main/java/com/logpm/report/service/impl/InLibraryDeliverServiceImpl.java

@ -13,10 +13,6 @@ public class InLibraryDeliverServiceImpl implements InLibraryDeliverService {
private InLibraryDeliverMapper inLibraryDeliverMapper;
@Override
public IPage<InLibraryDeliverService> DistributionParcelListPage() {
return null;
}
/***
* 总在库数

9
blade-service/logpm-report/src/main/java/com/logpm/report/service/impl/IndexCountServiceImpl.java

@ -1,5 +1,6 @@
package com.logpm.report.service.impl;
import com.logpm.basicdata.feign.IBasicdataWarehouseClient;
import com.logpm.report.mapper.IndexCountMapper;
import com.logpm.report.service.IndexCountService;
import com.logpm.report.vo.IndexCountVO;
@ -10,6 +11,7 @@ import lombok.AllArgsConstructor;
import org.springblade.common.constant.aftersales.WorkOrderStatusConstant;
import org.springblade.common.constant.orderpackage.OrderPackageStatusConstant;
import org.springblade.common.constant.stockup.StockupTypeConstant;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.cache.annotation.Cacheable;
import org.springframework.stereotype.Service;
@ -18,6 +20,7 @@ import java.util.List;
import java.util.Map;
import java.util.function.Consumer;
import static org.springblade.common.constant.stockup.StockupTypeConstant.*;
/**
@ -31,6 +34,10 @@ public class IndexCountServiceImpl implements IndexCountService {
private InLibraryDeliverServiceImpl inLibraryDeliverService;
@Autowired
private IBasicdataWarehouseClient warehouseClient;
/**
* 首页统计数据
*/
@ -43,6 +50,8 @@ public class IndexCountServiceImpl implements IndexCountService {
indexCountVo.setInboundAndOutboundQuantity(inboundAndOutboundQuantityTheMonth(warehouseId));
indexCountVo.setInStoreData(inStoreData(warehouseId));
return indexCountVo;
}

42
blade-service/logpm-report/src/main/java/com/logpm/report/typepage/TimeType.java

@ -0,0 +1,42 @@
package com.logpm.report.typepage;
/**
* 首页数据时间分类
*/
public enum TimeType {
all("总的","1"),
moon("当月","2"),
day("当日","3");
/**
* 状态
*/
private String name;
/**
*
*/
private String value;
TimeType(String name, String value) {
this.name = name;
this.value = value;
}
public String getName() {
return name;
}
public void setName(String name) {
this.name = name;
}
public String getValue() {
return value;
}
public void setValue(String value) {
this.value = value;
}
}

31
blade-service/logpm-report/src/main/java/com/logpm/report/vo/indexCount/BillingDataVo.java

@ -0,0 +1,31 @@
package com.logpm.report.vo.indexCount;
import io.swagger.annotations.ApiModelProperty;
import java.math.BigDecimal;
import java.util.List;
public class BillingDataVo {
@ApiModelProperty("开单总数")
private Integer allCount;
@ApiModelProperty("当月开单")
private Integer moonCount;
@ApiModelProperty("当日开单")
private Integer dayCount;
@ApiModelProperty("开单总收入")
private BigDecimal allMoney;
@ApiModelProperty("开单月收入")
private BigDecimal moonMoney;
@ApiModelProperty("开单日收入")
private BigDecimal dayMoney;
@ApiModelProperty("明细收入:当月/当日")
private List<DetailMoneyVo> detailList;
}

20
blade-service/logpm-report/src/main/java/com/logpm/report/vo/indexCount/DetailMoneyVo.java

@ -0,0 +1,20 @@
package com.logpm.report.vo.indexCount;
import io.swagger.annotations.ApiModelProperty;
import java.math.BigDecimal;
public class DetailMoneyVo {
@ApiModelProperty("干线")
private BigDecimal gan;
@ApiModelProperty("仓储")
private BigDecimal ware;
@ApiModelProperty("配送")
private BigDecimal sent;
@ApiModelProperty("提货")
private BigDecimal delivery;
@ApiModelProperty("安装")
private BigDecimal installation;
}

106
blade-service/logpm-trunkline/src/main/java/com/logpm/trunkline/controller/IncomingController.java

@ -0,0 +1,106 @@
package com.logpm.trunkline.controller;
import com.github.xiaoymin.knife4j.annotations.ApiOperationSupport;
import com.logpm.basicdata.entity.BasicdataWarehouseEntity;
import com.logpm.basicdata.feign.IBasicdataWarehouseClient;
import com.logpm.trunkline.dto.InComingDTO;
import com.logpm.trunkline.service.IInComingService;
import io.swagger.annotations.Api;
import io.swagger.annotations.ApiOperation;
import lombok.AllArgsConstructor;
import lombok.extern.slf4j.Slf4j;
import org.springblade.common.exception.CustomerException;
import org.springblade.core.tool.api.R;
import org.springframework.web.bind.annotation.*;
import java.util.Objects;
@Slf4j
@RestController
@AllArgsConstructor
@RequestMapping("/incoming")
@Api(value = "包件入库控制类", tags = "PC入库接口")
public class IncomingController {
private final IBasicdataWarehouseClient warehouseClient;
private final IInComingService inComingService;
@ResponseBody
@PostMapping("/findIncomingOrderList")
@ApiOperationSupport(order = 1)
@ApiOperation(value = "查询入库订单明细", notes = "传入inComingDTO")
public R findIncomingOrderList(@RequestBody InComingDTO inComingDTO) {
String method = "############findIncomingOrderList: ";
log.info(method+"请求参数{}",inComingDTO);
Integer incomingType = inComingDTO.getIncomingType();
try{
BasicdataWarehouseEntity myCurrentWarehouse = warehouseClient.getMyCurrentWarehouse();
if(Objects.isNull(myCurrentWarehouse)){
log.warn(method+"当前仓库信息为空");
return R.fail(405,"请先选择仓库");
}
inComingDTO.setWarehouseId(myCurrentWarehouse.getId());
inComingDTO.setWarehouseName(myCurrentWarehouse.getName());
if(Objects.isNull(incomingType)){
log.warn(method+"入库方式不能为空 incomingType={}",incomingType);
return R.fail(405,"入库方式不能为空");
}
if(incomingType < 4){
log.warn(method+"入库方式不正确 incomingType={}",incomingType);
return R.fail(405,"入库方式不正确");
}
return inComingService.findIncomingOrderList(inComingDTO);
}catch (CustomerException e){
log.error(e.message,e);
return R.fail(e.code,e.message);
}catch (Exception e){
log.error(method+"系统异常",e);
return R.fail(500,"系统异常");
}
}
@ResponseBody
@PostMapping("/incomingBatchOrder")
@ApiOperationSupport(order = 1)
@ApiOperation(value = "查询入库订单明细", notes = "传入inComingDTO")
public R incomingBatchOrder(@RequestBody InComingDTO inComingDTO) {
String method = "############incomingBatchOrder: ";
log.info(method+"请求参数{}",inComingDTO);
Integer incomingType = inComingDTO.getIncomingType();
try{
BasicdataWarehouseEntity myCurrentWarehouse = warehouseClient.getMyCurrentWarehouse();
if(Objects.isNull(myCurrentWarehouse)){
log.warn(method+"当前仓库信息为空");
return R.fail(405,"请先选择仓库");
}
inComingDTO.setWarehouseId(myCurrentWarehouse.getId());
inComingDTO.setWarehouseName(myCurrentWarehouse.getName());
if(Objects.isNull(incomingType)){
log.warn(method+"入库方式不能为空 incomingType={}",incomingType);
return R.fail(405,"入库方式不能为空");
}
if(incomingType < 4){
log.warn(method+"入库方式不正确 incomingType={}",incomingType);
return R.fail(405,"入库方式不正确");
}
return inComingService.incomingBatchOrder(inComingDTO);
}catch (CustomerException e){
log.error(e.message,e);
return R.fail(e.code,e.message);
}catch (Exception e){
log.error(method+"系统异常",e);
return R.fail(500,"系统异常");
}
}
}

27
blade-service/logpm-trunkline/src/main/java/com/logpm/trunkline/controller/OpenOrderController.java

@ -1539,4 +1539,31 @@ public class OpenOrderController {
}
@ResponseBody
@PostMapping("/findUpdateWaybillList")
@ApiOperationSupport(order = 1)
@ApiOperation(value = "查询改单列表", notes = "传入openOrderDTO")
public R findUpdateWaybillList(@RequestBody OpenOrderDTO openOrderDTO) {
String method = "############findUpdateWaybillList: ";
log.info(method + "请求参数{}", openOrderDTO);
Long waybillId = openOrderDTO.getWaybillId();
try{
if(Objects.isNull(waybillId)){
log.warn(method+"运单id为空 waybillId={}",waybillId);
return R.fail(405,"运单id为空");
}
return openOrderService.findWaybillReturnList(waybillId);
}catch (CustomerException e){
log.error(e.message,e);
return R.fail(e.code,e.message);
}catch (Exception e){
log.error(method+"系统异常",e);
return R.fail(500,"系统异常");
}
}
}

2
blade-service/logpm-trunkline/src/main/java/com/logpm/trunkline/mapper/TrunklineAdvanceDetailMapper.java

@ -43,4 +43,6 @@ public interface TrunklineAdvanceDetailMapper extends BaseMapper<TrunklineAdvanc
void updateWaybillNoByAdvanceId(@Param("advanceId") Long advanceId, @Param("waybillNo") String waybillNo, @Param("waybillId") Long waybillId);
List<String> findIncomingWarehouseName(@Param("advanceId") Long advanceId);
List<String> findNoIncomingPackageCode(@Param("advanceId") Long advanceId);
}

7
blade-service/logpm-trunkline/src/main/java/com/logpm/trunkline/mapper/TrunklineAdvanceDetailMapper.xml

@ -180,4 +180,11 @@
group by incoming_warehouse_name
</select>
<select id="findNoIncomingPackageCode" resultType="String">
select order_package_code
from logpm_trunkline_advance_detail
where advance_id = #{advanceId}
and package_status = '0'
</select>
</mapper>

4
blade-service/logpm-trunkline/src/main/java/com/logpm/trunkline/mapper/TrunklineAdvanceMapper.java

@ -3,6 +3,7 @@ package com.logpm.trunkline.mapper;
import com.baomidou.mybatisplus.core.mapper.BaseMapper;
import com.baomidou.mybatisplus.core.metadata.IPage;
import com.logpm.trunkline.dto.AdvanceDTO;
import com.logpm.trunkline.dto.InComingDTO;
import com.logpm.trunkline.entity.TrunklineAdvanceEntity;
import com.logpm.trunkline.vo.CustomerInfoVO;
import com.logpm.trunkline.vo.OpenOrderVO;
@ -32,4 +33,7 @@ public interface TrunklineAdvanceMapper extends BaseMapper<TrunklineAdvanceEntit
void subTotalNumByAdvanceId(@Param("advanceId") Long advanceId);
void updateIncomingWarehouseName(@Param("incomingWarehouseName") String incomingWarehouseName, @Param("advanceId") Long advanceId);
List<TrunklineAdvanceVO> findIncomingOrderList(@Param("param") InComingDTO inComingDTO);
}

15
blade-service/logpm-trunkline/src/main/java/com/logpm/trunkline/mapper/TrunklineAdvanceMapper.xml

@ -137,4 +137,19 @@
and id = #{advanceId}
</update>
<select id="findIncomingOrderList" resultType="com.logpm.trunkline.vo.TrunklineAdvanceVO">
select lta.*,
IF(count(ltad.id)>0,1,0) isIncoming
from logpm_trunkline_advance lta
left join logpm_trunkline_advance_detail ltad on ltad.advance_id = lta.id and ltad.package_status = '0'
WHERE 1=1
and lta.warehouse_id = #{param.warehouseId}
<if test="param.incomingType == '4'" >
and lta.train_number = #{param.incomingCode}
</if>
<if test="param.incomingType == '5'" >
and lta.order_code = #{param.incomingCode}
</if>
</select>
</mapper>

4
blade-service/logpm-trunkline/src/main/java/com/logpm/trunkline/service/IInComingService.java

@ -7,4 +7,8 @@ public interface IInComingService {
R incomingPackage(InComingDTO inComingDTO);
R findIncomingOrderList(InComingDTO inComingDTO);
R incomingBatchOrder(InComingDTO inComingDTO);
}

1
blade-service/logpm-trunkline/src/main/java/com/logpm/trunkline/service/ITrunklineAdvanceDetailService.java

@ -54,4 +54,5 @@ public interface ITrunklineAdvanceDetailService extends BaseService<TrunklineAdv
List<String> findIncomingWarehouseName(Long advanceId);
List<String> findNoIncomingPackageCode(Long advanceId);
}

2
blade-service/logpm-trunkline/src/main/java/com/logpm/trunkline/service/ITrunklineAdvanceService.java

@ -2,6 +2,7 @@ package com.logpm.trunkline.service;
import com.baomidou.mybatisplus.core.metadata.IPage;
import com.logpm.trunkline.dto.AdvanceDTO;
import com.logpm.trunkline.dto.InComingDTO;
import com.logpm.trunkline.entity.TrunklineAdvanceDetailEntity;
import com.logpm.trunkline.entity.TrunklineAdvanceEntity;
import com.logpm.trunkline.vo.CustomerInfoVO;
@ -33,4 +34,5 @@ public interface ITrunklineAdvanceService extends BaseService<TrunklineAdvanceEn
void updateIncomingWarehouseName(String incomingWarehouseName, Long advanceId);
List<TrunklineAdvanceVO> findIncomingOrderList(InComingDTO inComingDTO);
}

20
blade-service/logpm-trunkline/src/main/java/com/logpm/trunkline/service/impl/InComingServiceImpl.java

@ -11,6 +11,7 @@ import com.logpm.trunkline.service.IInComingService;
import com.logpm.trunkline.service.ITrunklineAdvanceDetailService;
import com.logpm.trunkline.service.ITrunklineAdvanceService;
import com.logpm.trunkline.service.ITrunklineBillladingPackageServicie;
import com.logpm.trunkline.vo.TrunklineAdvanceVO;
import com.logpm.warehouse.feign.IWarehouseTrayTypeClient;
import lombok.AllArgsConstructor;
import lombok.extern.slf4j.Slf4j;
@ -103,4 +104,23 @@ public class InComingServiceImpl implements IInComingService {
}
return R.success("入库成功");
}
@Override
public R findIncomingOrderList(InComingDTO inComingDTO) {
List<TrunklineAdvanceVO> ls = advanceService.findIncomingOrderList(inComingDTO);
return R.data(ls);
}
@Override
public R incomingBatchOrder(InComingDTO inComingDTO) {
List<Long> advanceIds = inComingDTO.getAdvanceIds();
for (Long advanceId : advanceIds) {
List<String> list = advanceDetailService.findNoIncomingPackageCode(advanceId);
inComingDTO.setOrderPackageCode(String.join(",",list));
incomingPackage(inComingDTO);
}
return R.success("入库成功");
}
}

5
blade-service/logpm-trunkline/src/main/java/com/logpm/trunkline/service/impl/TrunklineAdvanceDetailServiceImpl.java

@ -240,4 +240,9 @@ public class TrunklineAdvanceDetailServiceImpl extends BaseServiceImpl<Trunkline
public List<String> findIncomingWarehouseName(Long advanceId) {
return baseMapper.findIncomingWarehouseName(advanceId);
}
@Override
public List<String> findNoIncomingPackageCode(Long advanceId) {
return baseMapper.findNoIncomingPackageCode(advanceId);
}
}

34
blade-service/logpm-trunkline/src/main/java/com/logpm/trunkline/service/impl/TrunklineAdvanceServiceImpl.java

@ -16,6 +16,7 @@ import com.logpm.distribution.entity.DistributionStockArticleEntity;
import com.logpm.distribution.feign.IDistributionParcelListClient;
import com.logpm.distribution.feign.IDistributionStockArticleClient;
import com.logpm.trunkline.dto.AdvanceDTO;
import com.logpm.trunkline.dto.InComingDTO;
import com.logpm.trunkline.entity.TrunklineAdvanceDetailEntity;
import com.logpm.trunkline.entity.TrunklineAdvanceEntity;
import com.logpm.trunkline.mapper.TrunklineAdvanceMapper;
@ -315,20 +316,20 @@ public class TrunklineAdvanceServiceImpl extends BaseServiceImpl<TrunklineAdvanc
advanceDTO.setEndCreateTime(CommonUtil.getEndByDateStr(advanceDTO.getEndCreateTimeStr()));
IPage<TrunklineAdvanceVO> trunklineAdvanceVOIPage = baseMapper.advancePageList(page, advanceDTO);
List<TrunklineAdvanceVO> records = trunklineAdvanceVOIPage.getRecords();
for (TrunklineAdvanceVO trunklineAdvanceVO:records){
String dealerName = trunklineAdvanceVO.getDealerName();
String brand = trunklineAdvanceVO.getBrand();
Long clientId = tripartiteMallClient.getClientIdByNameAndBrand(dealerName, brand);
BasicdataClientEntity basicdataClientEntity = basicdataClientClient.findEntityById(clientId);
if(!Objects.isNull(basicdataClientEntity)){
trunklineAdvanceVO.setHtMallName(basicdataClientEntity.getClientName());
}
}
trunklineAdvanceVOIPage.setRecords(records);
// List<TrunklineAdvanceVO> records = trunklineAdvanceVOIPage.getRecords();
// for (TrunklineAdvanceVO trunklineAdvanceVO:records){
//
//
//
// String dealerName = trunklineAdvanceVO.getDealerName();
// String brand = trunklineAdvanceVO.getBrand();
// Long clientId = tripartiteMallClient.getClientIdByNameAndBrand(dealerName, brand);
// BasicdataClientEntity basicdataClientEntity = basicdataClientClient.findEntityById(clientId);
// if(!Objects.isNull(basicdataClientEntity)){
// trunklineAdvanceVO.setHtMallName(basicdataClientEntity.getClientName());
// }
// }
// trunklineAdvanceVOIPage.setRecords(records);
return trunklineAdvanceVOIPage;
}
@ -379,4 +380,9 @@ public class TrunklineAdvanceServiceImpl extends BaseServiceImpl<TrunklineAdvanc
baseMapper.updateIncomingWarehouseName(incomingWarehouseName,advanceId);
}
@Override
public List<TrunklineAdvanceVO> findIncomingOrderList(InComingDTO inComingDTO) {
return baseMapper.findIncomingOrderList(inComingDTO);
}
}

2
blade-service/logpm-warehouse/src/main/java/com/logpm/warehouse/controller/TaskQuestController.java

@ -373,6 +373,4 @@ public class TaskQuestController extends BladeController {
return R.fail(500,"############syncTaskData: 系统异常");
}
}
}

Loading…
Cancel
Save