Browse Source

Merge branch 'pre-production'

master
pref_mail@163.com 12 months ago
parent
commit
4721e2af5e
  1. 2
      blade-biz-common/src/main/java/org/springblade/common/constant/DictBizConstant.java
  2. 4
      blade-biz-common/src/main/java/org/springblade/common/constant/OldSystemDataPushConfig.java
  3. 35
      blade-service-api/logpm-basicdata-api/src/main/java/com/logpm/basicdata/vo/BasicdatPriceApiVO.java
  4. 3
      blade-service-api/logpm-basicdata-api/src/main/java/com/logpm/basicdata/vo/BasicdataTrayVO.java
  5. 2
      blade-service-api/logpm-distribution-api/src/main/java/com/logpm/distribution/entity/DistributionParcelListEntity.java
  6. 4
      blade-service-api/logpm-trunkline-api/src/main/java/com/logpm/trunkline/dto/OpenOrderDTO.java
  7. 3
      blade-service-api/logpm-trunkline-api/src/main/java/com/logpm/trunkline/entity/TrunklineAdvanceDetailEntity.java
  8. 14
      blade-service-api/logpm-trunkline-api/src/main/java/com/logpm/trunkline/vo/EditOrderMsgVO.java
  9. 65
      blade-service-api/logpm-trunkline-api/src/main/java/com/logpm/trunkline/vo/LoadingDetailExportVO.java
  10. 7
      blade-service-api/logpm-trunkline-api/src/main/java/com/logpm/trunkline/vo/OpenOrderVO.java
  11. 14
      blade-service-api/logpm-warehouse-api/src/main/java/com/logpm/warehouse/entity/WarehouseWaybillEntity.java
  12. 2
      blade-service-api/logpm-warehouse-api/src/main/java/com/logpm/warehouse/vo/WarehouseWaybillVO.java
  13. 21
      blade-service/logpm-basicdata/src/main/java/com/logpm/basicdata/controller/BasicdataPriceController.java
  14. 62
      blade-service/logpm-basicdata/src/main/java/com/logpm/basicdata/excel/price/BasicdataPriceCategoryBasicExcel.java
  15. 66
      blade-service/logpm-basicdata/src/main/java/com/logpm/basicdata/excel/price/BasicdataPriceCategoryDispatchExcel.java
  16. 67
      blade-service/logpm-basicdata/src/main/java/com/logpm/basicdata/excel/price/BasicdataPriceCategoryWarehouseExcel.java
  17. 86
      blade-service/logpm-basicdata/src/main/java/com/logpm/basicdata/excel/price/BasicdataPriceExcel.java
  18. 60
      blade-service/logpm-basicdata/src/main/java/com/logpm/basicdata/excel/price/BasicdataPriceFullVehicleExcel.java
  19. 84
      blade-service/logpm-basicdata/src/main/java/com/logpm/basicdata/excel/price/BasicdataPriceGeneralExcel.java
  20. 3
      blade-service/logpm-basicdata/src/main/java/com/logpm/basicdata/mapper/BasicdataTrayMapper.xml
  21. 11
      blade-service/logpm-basicdata/src/main/java/com/logpm/basicdata/service/IBasicdataPriceService.java
  22. 47
      blade-service/logpm-basicdata/src/main/java/com/logpm/basicdata/service/impl/BasicdataPriceServiceImpl.java
  23. 18
      blade-service/logpm-distribution/src/main/java/com/logpm/distribution/appcontroller/DistributionStockupAppController.java
  24. 4
      blade-service/logpm-distribution/src/main/java/com/logpm/distribution/mapper/DistributionParcelListMapper.xml
  25. 2
      blade-service/logpm-distribution/src/main/java/com/logpm/distribution/mapper/DistributionSignforMapper.xml
  26. 2
      blade-service/logpm-distribution/src/main/java/com/logpm/distribution/service/impl/DistributionDeliveryInfoServiceImpl.java
  27. 28
      blade-service/logpm-distribution/src/main/java/com/logpm/distribution/service/impl/DistributionDeliveryListServiceImpl.java
  28. 2
      blade-service/logpm-distribution/src/main/java/com/logpm/distribution/service/impl/DistributionParcelListServiceImpl.java
  29. 23
      blade-service/logpm-distribution/src/main/java/com/logpm/distribution/service/impl/DistributionSignforServiceImpl.java
  30. 699
      blade-service/logpm-distribution/src/main/java/com/logpm/distribution/service/impl/DistributionStockupServiceImpl.java
  31. 2
      blade-service/logpm-factory-data/logpm-factory-data-base/src/main/resources/application.yml
  32. 2
      blade-service/logpm-patch/src/main/java/com/logpm/patch/service/impl/SyncOrderInfoServiceImpl.java
  33. 18
      blade-service/logpm-trunkline/src/main/java/com/logpm/trunkline/controller/CarsLoadController.java
  34. 3
      blade-service/logpm-trunkline/src/main/java/com/logpm/trunkline/mapper/TrunklineAdvanceDetailMapper.xml
  35. 17
      blade-service/logpm-trunkline/src/main/java/com/logpm/trunkline/mapper/TrunklineAdvanceMapper.xml
  36. 5
      blade-service/logpm-trunkline/src/main/java/com/logpm/trunkline/mapper/TrunklineBillladingMapper.xml
  37. 1
      blade-service/logpm-trunkline/src/main/java/com/logpm/trunkline/mapper/TrunklineBillladingWaybillMapper.xml
  38. 5
      blade-service/logpm-trunkline/src/main/java/com/logpm/trunkline/mapper/TrunklineCarsLoadMapper.java
  39. 2
      blade-service/logpm-trunkline/src/main/java/com/logpm/trunkline/mapper/TrunklineCarsLoadMapper.xml
  40. 2
      blade-service/logpm-trunkline/src/main/java/com/logpm/trunkline/mapper/TrunklineCarsLoadScanMapper.java
  41. 34
      blade-service/logpm-trunkline/src/main/java/com/logpm/trunkline/mapper/TrunklineCarsLoadScanMapper.xml
  42. 1
      blade-service/logpm-trunkline/src/main/java/com/logpm/trunkline/service/ITrunklineCarsLoadScanService.java
  43. 2
      blade-service/logpm-trunkline/src/main/java/com/logpm/trunkline/service/ITrunklineCarsLoadService.java
  44. 18
      blade-service/logpm-trunkline/src/main/java/com/logpm/trunkline/service/impl/InComingServiceImpl.java
  45. 26
      blade-service/logpm-trunkline/src/main/java/com/logpm/trunkline/service/impl/OpenOrderServiceImpl.java
  46. 4
      blade-service/logpm-trunkline/src/main/java/com/logpm/trunkline/service/impl/TrunklineAdvanceServiceImpl.java
  47. 209
      blade-service/logpm-trunkline/src/main/java/com/logpm/trunkline/service/impl/TrunklineBillladingServiceImpl.java
  48. 3
      blade-service/logpm-trunkline/src/main/java/com/logpm/trunkline/service/impl/TrunklineCarsLoadLineServiceImpl.java
  49. 5
      blade-service/logpm-trunkline/src/main/java/com/logpm/trunkline/service/impl/TrunklineCarsLoadScanServiceImpl.java
  50. 146
      blade-service/logpm-trunkline/src/main/java/com/logpm/trunkline/service/impl/TrunklineCarsLoadServiceImpl.java
  51. 72
      blade-service/logpm-warehouse/src/main/java/com/logpm/warehouse/api/WarehouseTrayTypeApiController.java

2
blade-biz-common/src/main/java/org/springblade/common/constant/DictBizConstant.java

@ -113,6 +113,8 @@ public class DictBizConstant {
public static final String OPEN_ORDER_URGENCY = "open_order_urgency"; public static final String OPEN_ORDER_URGENCY = "open_order_urgency";
public static final String OPEN_ORDER_RECEIPT = "open_order_receipt"; public static final String OPEN_ORDER_RECEIPT = "open_order_receipt";
public static final String OPEN_ORDER_TRANSPORT_TYPE = "open_order_transport_type"; public static final String OPEN_ORDER_TRANSPORT_TYPE = "open_order_transport_type";
public static final String OPEN_ORDER_CHARGE_TYPE = "open_order_charge_type";
public static final String EDIT_WAYBILL_REASON_TYPE = "edit_waybill_reason_type";
/* 异常工单状态 */ /* 异常工单状态 */
public static final String PC_WORK_ORDER = "pc_work_order"; //PC工单异常类型 public static final String PC_WORK_ORDER = "pc_work_order"; //PC工单异常类型

4
blade-biz-common/src/main/java/org/springblade/common/constant/OldSystemDataPushConfig.java

@ -76,9 +76,13 @@ public class OldSystemDataPushConfig {
// 宜宾仓 // 宜宾仓
warehourseIds.add("146"); warehourseIds.add("146");
// 攀枝花
warehourseIds.add("32");
} }
public static List<String> getWarehourseIdList(){ public static List<String> getWarehourseIdList(){
return warehourseIds; return warehourseIds;

35
blade-service-api/logpm-basicdata-api/src/main/java/com/logpm/basicdata/vo/BasicdatPriceApiVO.java

@ -16,11 +16,10 @@
*/ */
package com.logpm.basicdata.vo; package com.logpm.basicdata.vo;
import com.logpm.basicdata.enums.PriceBizTypeApiEnums; import io.swagger.annotations.ApiModelProperty;
import lombok.Data; import lombok.Data;
import javax.validation.constraints.NotEmpty; import javax.validation.constraints.NotEmpty;
import javax.validation.constraints.NotNull;
import java.io.Serializable; import java.io.Serializable;
/** /**
@ -33,27 +32,25 @@ import java.io.Serializable;
public class BasicdatPriceApiVO implements Serializable { public class BasicdatPriceApiVO implements Serializable {
private static final long serialVersionUID = 1L; private static final long serialVersionUID = 1L;
/**
* 客户id
*/
@NotEmpty(message = "客户id不能为空") @NotEmpty(message = "客户id不能为空")
@ApiModelProperty(value = "客户id")
private String clientId; private String clientId;
/**
* 品牌id
*/
@NotEmpty(message = "品牌id不能为空") @NotEmpty(message = "品牌id不能为空")
@ApiModelProperty(value = "品牌id")
private String brandId; private String brandId;
/** @ApiModelProperty(value = "发货单位id")
* 发货单位id
*/
private String sendOrgId; private String sendOrgId;
/** @ApiModelProperty(value = "始发地省份id")
* 始发地 private Long startProvinceId;
*/ @ApiModelProperty(value = "始发地城市id")
private String startAreaId; private Long startCityId;
/** @ApiModelProperty(value = "始发地区县id")
* 目的地 private Long startCountyId;
*/ @ApiModelProperty(value = "目的地省份id")
private String endAreaId; private Long endProvinceId;
@ApiModelProperty(value = "目的地城市id")
private Long endCityId;
@ApiModelProperty(value = "目的地区县id")
private Long endCountyId;
} }

3
blade-service-api/logpm-basicdata-api/src/main/java/com/logpm/basicdata/vo/BasicdataTrayVO.java

@ -49,4 +49,7 @@ public class BasicdataTrayVO extends BasicdataTrayEntity {
@ApiModelProperty(value = "打托方式显示") @ApiModelProperty(value = "打托方式显示")
private String trayTypeString; private String trayTypeString;
@ApiModelProperty(value = "串货条件")
private String filterValue;
} }

2
blade-service-api/logpm-distribution-api/src/main/java/com/logpm/distribution/entity/DistributionParcelListEntity.java

@ -197,7 +197,7 @@ public class DistributionParcelListEntity extends TenantEntity {
* 运单ID * 运单ID
*/ */
@ApiModelProperty(value = "运单ID") @ApiModelProperty(value = "运单ID")
private String waybillId; private Long waybillId;
/** /**
* 客户id * 客户id
*/ */

4
blade-service-api/logpm-trunkline-api/src/main/java/com/logpm/trunkline/dto/OpenOrderDTO.java

@ -16,6 +16,8 @@ public class OpenOrderDTO implements Serializable {
private String brand;//品牌 private String brand;//品牌
private String trainNumber;//客户车次号 private String trainNumber;//客户车次号
private String waybillNo;//运单号 private String waybillNo;//运单号
private String departure;//发站
private String departureCode;
private Long departureWarehouseId;//发站仓id private Long departureWarehouseId;//发站仓id
private String departureWarehouseName;//发站仓名称 private String departureWarehouseName;//发站仓名称
private String destination;//到站 private String destination;//到站
@ -26,6 +28,8 @@ public class OpenOrderDTO implements Serializable {
private List<Long> advanceIds;//暂存单ids private List<Long> advanceIds;//暂存单ids
private String orderCode;//订单号 private String orderCode;//订单号
private String openOrderDate;//开单时间 private String openOrderDate;//开单时间
private String dearCode;//商场编码
private String dearName;//商场名称
private Long shipperId;//发货单位id private Long shipperId;//发货单位id
private String shipper;//发货单位 private String shipper;//发货单位

3
blade-service-api/logpm-trunkline-api/src/main/java/com/logpm/trunkline/entity/TrunklineAdvanceDetailEntity.java

@ -90,6 +90,9 @@ public class TrunklineAdvanceDetailEntity extends TenantEntity {
/** 服务号 */ /** 服务号 */
@ApiModelProperty(name = "服务号",notes = "") @ApiModelProperty(name = "服务号",notes = "")
private String serviceNum ; private String serviceNum ;
/** 运单id */
@ApiModelProperty(name = "运单id",notes = "")
private Long waybillId ;
/** 运单号 */ /** 运单号 */
@ApiModelProperty(name = "运单号",notes = "") @ApiModelProperty(name = "运单号",notes = "")
private String waybillNo ; private String waybillNo ;

14
blade-service-api/logpm-trunkline-api/src/main/java/com/logpm/trunkline/vo/EditOrderMsgVO.java

@ -0,0 +1,14 @@
package com.logpm.trunkline.vo;
import lombok.Data;
import java.io.Serializable;
@Data
public class EditOrderMsgVO implements Serializable {
private String itemName;
private String oldValue;
private String newValue;
}

65
blade-service-api/logpm-trunkline-api/src/main/java/com/logpm/trunkline/vo/LoadingDetailExportVO.java

@ -0,0 +1,65 @@
package com.logpm.trunkline.vo;
import com.alibaba.excel.annotation.ExcelProperty;
import lombok.Data;
import java.io.Serializable;
@Data
public class LoadingDetailExportVO implements Serializable {
@ExcelProperty(value = "运单号")
private String waybillNo;
@ExcelProperty(value = "配载批次")
private String carsNo;
@ExcelProperty(value = "合同号")
private String orderCode;
@ExcelProperty(value = "包条码-产品名称")
private String scanCode;
@ExcelProperty(value = "装车人")
private String loadingUserName;
@ExcelProperty(value = "装车仓库")
private String warehouseNname;
@ExcelProperty(value = "计划目的仓库")
private String finalNodeName;
@ExcelProperty(value = "装卸状态")
private String scanStatus;
@ExcelProperty(value = "托盘名称")
private String trayName;
@ExcelProperty(value = "托盘码")
private String trayCode;
@ExcelProperty(value = "卸车仓库")
private String unloadNodeName;
@ExcelProperty(value = "卸车人")
private String unloadUserName;
@ExcelProperty(value = "类型")
private String type;
@ExcelProperty(value = "数量")
private String num;
@ExcelProperty(value = "有无数据")
private String isData;
@ExcelProperty(value = "是否装车异常")
private String loadingAbnormal;
@ExcelProperty(value = "是否卸车异常")
private String unloadAbnormal;
@ExcelProperty(value = "是否补录")
private String isSupple;
}

7
blade-service-api/logpm-trunkline-api/src/main/java/com/logpm/trunkline/vo/OpenOrderVO.java

@ -10,9 +10,12 @@ import java.util.List;
@Data @Data
public class OpenOrderVO implements Serializable { public class OpenOrderVO implements Serializable {
private Long brandId;
private String brand; private String brand;
private String trainNumber; private String trainNumber;
private String orderCode; private String orderCode;
private String dealerCode;
private String dealerName;
private List<Long> advanceIds = new ArrayList<>(); private List<Long> advanceIds = new ArrayList<>();
@ -22,6 +25,10 @@ public class OpenOrderVO implements Serializable {
private String destinationWarehouseName;//目的仓名称 private String destinationWarehouseName;//目的仓名称
private Long destinationWarehouseId;//目的仓Id private Long destinationWarehouseId;//目的仓Id
private String departure;//发站
private String departureCode;//发站编码
private List<String> departureArray;//发站
private String destination;//到站 private String destination;//到站
private String destinationCode;//到站编码 private String destinationCode;//到站编码
private List<String> destinationArray;//到站 private List<String> destinationArray;//到站

14
blade-service-api/logpm-warehouse-api/src/main/java/com/logpm/warehouse/entity/WarehouseWaybillEntity.java

@ -445,4 +445,18 @@ public class WarehouseWaybillEntity extends TenantEntity {
@ApiModelProperty(value = "成本件数") @ApiModelProperty(value = "成本件数")
private Integer costNum; private Integer costNum;
@ApiModelProperty(value = "发站")
private String departure;
@ApiModelProperty(value = "发站编码")
private String departureCode;
@ApiModelProperty(value = "商场编码")
private String dearCode;
@ApiModelProperty(value = "商场名称")
private String dearName;
} }

2
blade-service-api/logpm-warehouse-api/src/main/java/com/logpm/warehouse/vo/WarehouseWaybillVO.java

@ -39,4 +39,6 @@ public class WarehouseWaybillVO extends WarehouseWaybillEntity {
private Integer handleNum; private Integer handleNum;
private Long waybillId;
} }

21
blade-service/logpm-basicdata/src/main/java/com/logpm/basicdata/controller/BasicdataPriceController.java

@ -19,8 +19,10 @@ package com.logpm.basicdata.controller;
import com.baomidou.mybatisplus.core.metadata.IPage; import com.baomidou.mybatisplus.core.metadata.IPage;
import com.github.xiaoymin.knife4j.annotations.ApiOperationSupport; import com.github.xiaoymin.knife4j.annotations.ApiOperationSupport;
import com.logpm.basicdata.service.IBasicdataPriceService; import com.logpm.basicdata.service.IBasicdataPriceService;
import com.logpm.basicdata.vo.BasicdatPriceApiVO;
import com.logpm.basicdata.vo.BasicdataPriceBasicUpdateVO; import com.logpm.basicdata.vo.BasicdataPriceBasicUpdateVO;
import com.logpm.basicdata.vo.BasicdataPricePageVO; import com.logpm.basicdata.vo.BasicdataPricePageVO;
import com.logpm.basicdata.vo.PriceClientVO;
import com.logpm.basicdata.vo.PriceVO; import com.logpm.basicdata.vo.PriceVO;
import io.swagger.annotations.Api; import io.swagger.annotations.Api;
import io.swagger.annotations.ApiImplicitParam; import io.swagger.annotations.ApiImplicitParam;
@ -113,13 +115,18 @@ public class BasicdataPriceController extends BladeController {
@ApiImplicitParam(name = "file", value = "文件", dataType = "MultipartFile") @ApiImplicitParam(name = "file", value = "文件", dataType = "MultipartFile")
}) })
public R<String> upload(@RequestPart("file") MultipartFile file) { public R<String> upload(@RequestPart("file") MultipartFile file) {
try (InputStream inputStream = file.getInputStream()) { return R.data(basicdataPriceService.upload(file));
String res = basicdataPriceService.upload(inputStream); }
return R.data(res);
} catch (Exception e) { /**
e.printStackTrace(); * 基础价格表 指定查询
} */
return R.data("上传失败"); @GetMapping("/custom")
@ApiOperationSupport(order = 7)
@ApiOperation(value = "指定条件查询", notes = "传入basicdataPrice")
public R<PriceClientVO> custom(BasicdatPriceApiVO param) {
PriceClientVO detail = basicdataPriceService.price(param);
return R.data(detail);
} }
} }

62
blade-service/logpm-basicdata/src/main/java/com/logpm/basicdata/excel/price/BasicdataPriceCategoryBasicExcel.java

@ -0,0 +1,62 @@
/*
* Copyright (c) 2018-2028, Chill Zhuang All rights reserved.
*
* Redistribution and use in source and binary forms, with or without
* modification, are permitted provided that the following conditions are met:
*
* Redistributions of source code must retain the above copyright notice,
* this list of conditions and the following disclaimer.
* Redistributions in binary form must reproduce the above copyright
* notice, this list of conditions and the following disclaimer in the
* documentation and/or other materials provided with the distribution.
* Neither the name of the dreamlu.net developer nor the names of its
* contributors may be used to endorse or promote products derived from
* this software without specific prior written permission.
* Author: Chill 庄骞 (smallchill@163.com)
*/
package com.logpm.basicdata.excel.price;
import com.alibaba.excel.annotation.ExcelProperty;
import com.alibaba.excel.annotation.write.style.ColumnWidth;
import com.alibaba.excel.annotation.write.style.ContentRowHeight;
import com.alibaba.excel.annotation.write.style.HeadRowHeight;
import lombok.Data;
import java.io.Serializable;
/**
* 价格 Excel实体类
*
* @author chao
* @since 2024-04-19
*/
@Data
@ColumnWidth(25)
@HeadRowHeight(20)
@ContentRowHeight(18)
public class BasicdataPriceCategoryBasicExcel implements Serializable {
private static final long serialVersionUID = 1L;
@ExcelProperty(value = "客户名称", index = 0)
private String client;
@ExcelProperty(value = "品牌", index = 1)
private String brand;
@ExcelProperty(value = "发站", index = 2)
private String startName;
@ExcelProperty(value = "到站", index = 3)
private String endName;
@ExcelProperty(value = "发货单位", index = 4)
private String sendOrg;
@ExcelProperty(value = "服务类型", index = 5)
private String type;
@ExcelProperty(value = "计费类型", index = 6)
private String costType;
@ExcelProperty(value = "品类", index = 7)
private String category;
@ExcelProperty(value = "单价", index = 8)
private String price;
}

66
blade-service/logpm-basicdata/src/main/java/com/logpm/basicdata/excel/price/BasicdataPriceCategoryDispatchExcel.java

@ -0,0 +1,66 @@
/*
* Copyright (c) 2018-2028, Chill Zhuang All rights reserved.
*
* Redistribution and use in source and binary forms, with or without
* modification, are permitted provided that the following conditions are met:
*
* Redistributions of source code must retain the above copyright notice,
* this list of conditions and the following disclaimer.
* Redistributions in binary form must reproduce the above copyright
* notice, this list of conditions and the following disclaimer in the
* documentation and/or other materials provided with the distribution.
* Neither the name of the dreamlu.net developer nor the names of its
* contributors may be used to endorse or promote products derived from
* this software without specific prior written permission.
* Author: Chill 庄骞 (smallchill@163.com)
*/
package com.logpm.basicdata.excel.price;
import com.alibaba.excel.annotation.ExcelProperty;
import com.alibaba.excel.annotation.write.style.ColumnWidth;
import com.alibaba.excel.annotation.write.style.ContentRowHeight;
import com.alibaba.excel.annotation.write.style.HeadRowHeight;
import lombok.Data;
import java.io.Serializable;
/**
* 价格 Excel实体类
*
* @author chao
* @since 2024-04-19
*/
@Data
@ColumnWidth(25)
@HeadRowHeight(20)
@ContentRowHeight(18)
public class BasicdataPriceCategoryDispatchExcel implements Serializable {
private static final long serialVersionUID = 1L;
@ExcelProperty(value = "客户名称", index = 0)
private String client;
@ExcelProperty(value = "品牌", index = 1)
private String brand;
@ExcelProperty(value = "费用类型", index = 2)
private String type;
@ExcelProperty(value = "计价方式", index = 3)
private String costType;
@ExcelProperty(value = "品类", index = 4)
private String category;
@ExcelProperty(value = "单价", index = 5)
private Double price;
@ExcelProperty(value = "遗留单价", index = 6)
private Double leaveBehindPrice;
@ExcelProperty(value = "分货费", index = 7)
private Double sortPrice;
@ExcelProperty(value = "操作/装卸费", index = 8)
private Double handlingPrice;
@ExcelProperty(value = "平移费", index = 9)
private Double relocationPrice;
@ExcelProperty(value = "上楼费", index = 10)
private Double upstairsDeliveryPrice;
}

67
blade-service/logpm-basicdata/src/main/java/com/logpm/basicdata/excel/price/BasicdataPriceCategoryWarehouseExcel.java

@ -0,0 +1,67 @@
/*
* Copyright (c) 2018-2028, Chill Zhuang All rights reserved.
*
* Redistribution and use in source and binary forms, with or without
* modification, are permitted provided that the following conditions are met:
*
* Redistributions of source code must retain the above copyright notice,
* this list of conditions and the following disclaimer.
* Redistributions in binary form must reproduce the above copyright
* notice, this list of conditions and the following disclaimer in the
* documentation and/or other materials provided with the distribution.
* Neither the name of the dreamlu.net developer nor the names of its
* contributors may be used to endorse or promote products derived from
* this software without specific prior written permission.
* Author: Chill 庄骞 (smallchill@163.com)
*/
package com.logpm.basicdata.excel.price;
import com.alibaba.excel.annotation.ExcelProperty;
import com.alibaba.excel.annotation.write.style.ColumnWidth;
import com.alibaba.excel.annotation.write.style.ContentRowHeight;
import com.alibaba.excel.annotation.write.style.HeadRowHeight;
import io.swagger.annotations.ApiModelProperty;
import lombok.Data;
import java.io.Serializable;
/**
* 价格 Excel实体类
*
* @author chao
* @since 2024-04-19
*/
@Data
@ColumnWidth(25)
@HeadRowHeight(20)
@ContentRowHeight(18)
public class BasicdataPriceCategoryWarehouseExcel implements Serializable {
private static final long serialVersionUID = 1L;
@ExcelProperty(value = "客户名称", index = 0)
private String client;
@ExcelProperty(value = "品牌", index = 1)
private String brand;
@ExcelProperty(value = "计价方式", index = 2)
private String costType;
@ExcelProperty(value = "品类", index = 3)
private String category;
@ExcelProperty(value = "30天内", index = 4)
private String withinThirtyPrice;
@ExcelProperty(value = "30-60天", index = 5)
private String betweenThirtySixtyPrice;
@ExcelProperty(value = "60天外", index = 6)
private String beyondSixtyPrice;
@ExcelProperty(value = "上限价格", index = 7)
private String maximumPrice;
@ExcelProperty(value = "操作/装卸费", index = 8)
private String operatePrice;
@ExcelProperty(value = "仓储管理费", index = 9)
private String warehouseManagementPrice;
@ExcelProperty(value = "仓储分货费", index = 10)
private String warehouseSortPrice;
}

86
blade-service/logpm-basicdata/src/main/java/com/logpm/basicdata/excel/price/BasicdataPriceExcel.java

@ -0,0 +1,86 @@
/*
* Copyright (c) 2018-2028, Chill Zhuang All rights reserved.
*
* Redistribution and use in source and binary forms, with or without
* modification, are permitted provided that the following conditions are met:
*
* Redistributions of source code must retain the above copyright notice,
* this list of conditions and the following disclaimer.
* Redistributions in binary form must reproduce the above copyright
* notice, this list of conditions and the following disclaimer in the
* documentation and/or other materials provided with the distribution.
* Neither the name of the dreamlu.net developer nor the names of its
* contributors may be used to endorse or promote products derived from
* this software without specific prior written permission.
* Author: Chill 庄骞 (smallchill@163.com)
*/
package com.logpm.basicdata.excel.price;
import com.alibaba.excel.annotation.ExcelProperty;
import com.alibaba.excel.annotation.write.style.ColumnWidth;
import com.alibaba.excel.annotation.write.style.ContentRowHeight;
import com.alibaba.excel.annotation.write.style.HeadRowHeight;
import lombok.Data;
import java.io.Serializable;
/**
* 价格 Excel实体类
*
* @author chao
* @since 2024-04-19
*/
@Data
@ColumnWidth(25)
@HeadRowHeight(20)
@ContentRowHeight(18)
public class BasicdataPriceExcel implements Serializable {
private static final long serialVersionUID = 1L;
/**
* 客户名称
*/
@ExcelProperty(value = "客户名称", index = 0)
private String client;
/**
* 品牌
*/
@ExcelProperty(value = "品牌", index = 1)
private String brand;
/**
* 生效时间
*/
@ExcelProperty(value = "生效时间", index = 2)
private String effectiveTime;
/**
* 到期时间
*/
@ExcelProperty(value = "到期时间", index = 3)
private String expiryTime;
/**
* 模版名称
*/
@ExcelProperty(value = "模版名称", index = 4)
private String templateName;
/**
* 向上判断件数
*/
@ExcelProperty(value = "向上判断件数", index = 5)
private String dispatchUpwardJudgment;
/**
* 向上判断件数
*/
@ExcelProperty(value = "向上判断件数", index = 6)
private String dispatchUpwardJudgmentCost;
/**
* 上楼费免费楼层
*/
@ExcelProperty(value = "上楼费免费楼层", index = 7)
private String dispatchStairsCarryingCharge;
}

60
blade-service/logpm-basicdata/src/main/java/com/logpm/basicdata/excel/price/BasicdataPriceFullVehicleExcel.java

@ -0,0 +1,60 @@
/*
* Copyright (c) 2018-2028, Chill Zhuang All rights reserved.
*
* Redistribution and use in source and binary forms, with or without
* modification, are permitted provided that the following conditions are met:
*
* Redistributions of source code must retain the above copyright notice,
* this list of conditions and the following disclaimer.
* Redistributions in binary form must reproduce the above copyright
* notice, this list of conditions and the following disclaimer in the
* documentation and/or other materials provided with the distribution.
* Neither the name of the dreamlu.net developer nor the names of its
* contributors may be used to endorse or promote products derived from
* this software without specific prior written permission.
* Author: Chill 庄骞 (smallchill@163.com)
*/
package com.logpm.basicdata.excel.price;
import com.alibaba.excel.annotation.ExcelProperty;
import com.alibaba.excel.annotation.write.style.ColumnWidth;
import com.alibaba.excel.annotation.write.style.ContentRowHeight;
import com.alibaba.excel.annotation.write.style.HeadRowHeight;
import lombok.Data;
import java.io.Serializable;
/**
* 价格 Excel实体类
*
* @author chao
* @since 2024-04-19
*/
@Data
@ColumnWidth(25)
@HeadRowHeight(20)
@ContentRowHeight(18)
public class BasicdataPriceFullVehicleExcel implements Serializable {
private static final long serialVersionUID = 1L;
@ExcelProperty(value = "客户名称", index = 0)
private String client;
@ExcelProperty(value = "品牌", index = 1)
private String brand;
@ExcelProperty(value = "发站", index = 2)
private String startName;
@ExcelProperty(value = "到站", index = 3)
private String endName;
@ExcelProperty(value = "发货单位", index = 4)
private String sendOrg;
@ExcelProperty(value = "类型", index = 5)
private String type;
@ExcelProperty(value = "车型", index = 6)
private String vehicleType;
@ExcelProperty(value = "整车计费(元/车)", index = 7)
private String price;
}

84
blade-service/logpm-basicdata/src/main/java/com/logpm/basicdata/excel/price/BasicdataPriceGeneralExcel.java

@ -0,0 +1,84 @@
/*
* Copyright (c) 2018-2028, Chill Zhuang All rights reserved.
*
* Redistribution and use in source and binary forms, with or without
* modification, are permitted provided that the following conditions are met:
*
* Redistributions of source code must retain the above copyright notice,
* this list of conditions and the following disclaimer.
* Redistributions in binary form must reproduce the above copyright
* notice, this list of conditions and the following disclaimer in the
* documentation and/or other materials provided with the distribution.
* Neither the name of the dreamlu.net developer nor the names of its
* contributors may be used to endorse or promote products derived from
* this software without specific prior written permission.
* Author: Chill 庄骞 (smallchill@163.com)
*/
package com.logpm.basicdata.excel.price;
import com.alibaba.excel.annotation.ExcelProperty;
import com.alibaba.excel.annotation.write.style.ColumnWidth;
import com.alibaba.excel.annotation.write.style.ContentRowHeight;
import com.alibaba.excel.annotation.write.style.HeadRowHeight;
import lombok.Data;
import java.io.Serializable;
/**
* 价格 Excel实体类
*
* @author chao
* @since 2024-04-19
*/
@Data
@ColumnWidth(25)
@HeadRowHeight(20)
@ContentRowHeight(18)
public class BasicdataPriceGeneralExcel implements Serializable {
private static final long serialVersionUID = 1L;
/**
* 客户名称
*/
@ExcelProperty(value = "客户名称", index = 0)
private String client;
/**
* 品牌
*/
@ExcelProperty(value = "品牌", index = 1)
private String brand;
/**
* 发站
*/
@ExcelProperty(value = "发站", index = 2)
private String startName;
/**
* 到站
*/
@ExcelProperty(value = "到站", index = 3)
private String endName;
/**
* 发货单位
*/
@ExcelProperty(value = "发货单位", index = 4)
private String sendOrg;
/**
* 类型
*/
@ExcelProperty(value = "类型", index = 5)
private String type;
/**
* 最低计费值
*/
@ExcelProperty(value = "最低计费值", index = 6)
private String minCost;
/**
* 加算价格
*/
@ExcelProperty(value = "加算价格", index = 7)
private String addCost;
}

3
blade-service/logpm-basicdata/src/main/java/com/logpm/basicdata/mapper/BasicdataTrayMapper.xml

@ -61,7 +61,8 @@
tray.tray_status, tray.tray_status,
warehouse.name AS warehouseName, warehouse.name AS warehouseName,
tray.`type`, tray.`type`,
lwtt.tray_type lwtt.tray_type,
lwtt.filter_value
FROM FROM
logpm_warehouse_tray AS tray logpm_warehouse_tray AS tray
left join logpm_warehouse_tray_type lwtt on tray.id = lwtt.tray_id and lwtt.is_deleted=0 left join logpm_warehouse_tray_type lwtt on tray.id = lwtt.tray_id and lwtt.is_deleted=0

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

@ -47,15 +47,6 @@ public interface IBasicdataPriceService extends BaseService<BasicdataPriceEntity
*/ */
IPage<BasicdataPricePageVO > selectBasicdataPricePage(IPage<BasicdataPricePageVO > page, BasicdataPricePageVO basicdataPrice); IPage<BasicdataPricePageVO > selectBasicdataPricePage(IPage<BasicdataPricePageVO > page, BasicdataPricePageVO basicdataPrice);
/**
* 导出数据
*
* @param queryWrapper
* @return
*/
List<BasicdataPriceExcel> exportBasicdataPrice(Wrapper<BasicdataPriceEntity> queryWrapper);
Boolean basicUpdate(BasicdataPriceBasicUpdateVO vo); Boolean basicUpdate(BasicdataPriceBasicUpdateVO vo);
Boolean updatePrice(PriceVO vo); Boolean updatePrice(PriceVO vo);
@ -77,5 +68,5 @@ public interface IBasicdataPriceService extends BaseService<BasicdataPriceEntity
* @param file 需要上传的文件类型为MultipartFile * @param file 需要上传的文件类型为MultipartFile
* @return 返回上传结果一般为上传成功或失败的信息 * @return 返回上传结果一般为上传成功或失败的信息
*/ */
String upload(InputStream file); String upload(MultipartFile file);
} }

47
blade-service/logpm-basicdata/src/main/java/com/logpm/basicdata/service/impl/BasicdataPriceServiceImpl.java

@ -23,9 +23,6 @@ import cn.hutool.core.date.DateTime;
import cn.hutool.core.date.DateUtil; import cn.hutool.core.date.DateUtil;
import cn.hutool.core.util.ObjectUtil; import cn.hutool.core.util.ObjectUtil;
import cn.hutool.core.util.StrUtil; import cn.hutool.core.util.StrUtil;
import com.alibaba.excel.EasyExcel;
import com.alibaba.excel.ExcelReader;
import com.baomidou.mybatisplus.core.conditions.Wrapper;
import com.baomidou.mybatisplus.core.metadata.IPage; import com.baomidou.mybatisplus.core.metadata.IPage;
import com.baomidou.mybatisplus.core.toolkit.Wrappers; import com.baomidou.mybatisplus.core.toolkit.Wrappers;
import com.logpm.basicdata.entity.BasicdataPriceCategoryBasicEntity; import com.logpm.basicdata.entity.BasicdataPriceCategoryBasicEntity;
@ -44,7 +41,12 @@ import com.logpm.basicdata.enums.PickupPricingTypeEnums;
import com.logpm.basicdata.enums.ServiceTypeEnums; import com.logpm.basicdata.enums.ServiceTypeEnums;
import com.logpm.basicdata.enums.TrunkLinePricingTypeEnums; import com.logpm.basicdata.enums.TrunkLinePricingTypeEnums;
import com.logpm.basicdata.enums.WarehousePricingTypeEnums; import com.logpm.basicdata.enums.WarehousePricingTypeEnums;
import com.logpm.basicdata.excel.BasicdataPriceExcel; import com.logpm.basicdata.excel.price.BasicdataPriceCategoryBasicExcel;
import com.logpm.basicdata.excel.price.BasicdataPriceCategoryDispatchExcel;
import com.logpm.basicdata.excel.price.BasicdataPriceCategoryWarehouseExcel;
import com.logpm.basicdata.excel.price.BasicdataPriceExcel;
import com.logpm.basicdata.excel.price.BasicdataPriceFullVehicleExcel;
import com.logpm.basicdata.excel.price.BasicdataPriceGeneralExcel;
import com.logpm.basicdata.mapper.BasicdataPriceMapper; import com.logpm.basicdata.mapper.BasicdataPriceMapper;
import com.logpm.basicdata.service.IBasicdataPriceCategoryBasicService; import com.logpm.basicdata.service.IBasicdataPriceCategoryBasicService;
import com.logpm.basicdata.service.IBasicdataPriceCategoryDispatchService; import com.logpm.basicdata.service.IBasicdataPriceCategoryDispatchService;
@ -74,13 +76,14 @@ import lombok.RequiredArgsConstructor;
import lombok.extern.slf4j.Slf4j; import lombok.extern.slf4j.Slf4j;
import org.springblade.common.enums.BooleanZeroOneEnums; import org.springblade.common.enums.BooleanZeroOneEnums;
import org.springblade.common.model.IDict; import org.springblade.common.model.IDict;
//import org.springblade.core.excel.util.ExcelUtil;
import org.springblade.core.excel.util.ExcelUtil;
import org.springblade.core.log.exception.ServiceException; import org.springblade.core.log.exception.ServiceException;
import org.springblade.core.mp.base.BaseServiceImpl; import org.springblade.core.mp.base.BaseServiceImpl;
import org.springframework.stereotype.Service; import org.springframework.stereotype.Service;
import org.springframework.transaction.annotation.Transactional; import org.springframework.transaction.annotation.Transactional;
import org.springframework.web.multipart.MultipartFile; import org.springframework.web.multipart.MultipartFile;
import java.io.InputStream;
import java.util.ArrayList; import java.util.ArrayList;
import java.util.Date; import java.util.Date;
import java.util.HashMap; import java.util.HashMap;
@ -137,13 +140,6 @@ public class BasicdataPriceServiceImpl extends BaseServiceImpl<BasicdataPriceMap
return page.setRecords(basicdataPriceVOS); return page.setRecords(basicdataPriceVOS);
} }
@Override
public List<BasicdataPriceExcel> exportBasicdataPrice(Wrapper<BasicdataPriceEntity> queryWrapper) {
List<BasicdataPriceExcel> basicdataPriceList = baseMapper.exportBasicdataPrice(queryWrapper);
return basicdataPriceList;
}
@Override @Override
public Boolean basicUpdate(BasicdataPriceBasicUpdateVO vo) { public Boolean basicUpdate(BasicdataPriceBasicUpdateVO vo) {
if (DateUtil.compare(vo.getEffectiveTime(), vo.getExpiryTime()) > 0) { if (DateUtil.compare(vo.getEffectiveTime(), vo.getExpiryTime()) > 0) {
@ -318,8 +314,8 @@ public class BasicdataPriceServiceImpl extends BaseServiceImpl<BasicdataPriceMap
List<BasicdataPriceRouteEntity> routeEntities = basicdataPriceRouteService.list(Wrappers.<BasicdataPriceRouteEntity>lambdaQuery() List<BasicdataPriceRouteEntity> routeEntities = basicdataPriceRouteService.list(Wrappers.<BasicdataPriceRouteEntity>lambdaQuery()
.eq(BasicdataPriceRouteEntity::getPriceId, priceEntity.getId()) .eq(BasicdataPriceRouteEntity::getPriceId, priceEntity.getId())
.eq(BasicdataPriceRouteEntity::getSendOrgId, param.getSendOrgId()) .eq(BasicdataPriceRouteEntity::getSendOrgId, param.getSendOrgId())
.eq(BasicdataPriceRouteEntity::getStartCountyId, param.getStartAreaId()) .eq(BasicdataPriceRouteEntity::getStartCountyId, param.getStartCountyId())
.eq(BasicdataPriceRouteEntity::getEndCountyId, param.getEndAreaId()) .eq(BasicdataPriceRouteEntity::getEndCountyId, param.getEndCountyId())
.eq(BasicdataPriceRouteEntity::getServiceType, ServiceTypeEnums.PICK_UP.getCode()) .eq(BasicdataPriceRouteEntity::getServiceType, ServiceTypeEnums.PICK_UP.getCode())
); );
if (CollUtil.isNotEmpty(routeEntities)) { if (CollUtil.isNotEmpty(routeEntities)) {
@ -347,8 +343,8 @@ public class BasicdataPriceServiceImpl extends BaseServiceImpl<BasicdataPriceMap
List<BasicdataPriceRouteEntity> routeEntities = basicdataPriceRouteService.list(Wrappers.<BasicdataPriceRouteEntity>lambdaQuery() List<BasicdataPriceRouteEntity> routeEntities = basicdataPriceRouteService.list(Wrappers.<BasicdataPriceRouteEntity>lambdaQuery()
.eq(BasicdataPriceRouteEntity::getPriceId, priceEntity.getId()) .eq(BasicdataPriceRouteEntity::getPriceId, priceEntity.getId())
.eq(BasicdataPriceRouteEntity::getSendOrgId, param.getSendOrgId()) .eq(BasicdataPriceRouteEntity::getSendOrgId, param.getSendOrgId())
.eq(BasicdataPriceRouteEntity::getStartCountyId, param.getStartAreaId()) .eq(BasicdataPriceRouteEntity::getStartCountyId, param.getStartCountyId())
.eq(BasicdataPriceRouteEntity::getEndCountyId, param.getEndAreaId()) .eq(BasicdataPriceRouteEntity::getEndCountyId, param.getEndCountyId())
.eq(BasicdataPriceRouteEntity::getServiceType, ServiceTypeEnums.TRUNK_LINE.getCode()) .eq(BasicdataPriceRouteEntity::getServiceType, ServiceTypeEnums.TRUNK_LINE.getCode())
); );
if (CollUtil.isNotEmpty(routeEntities)) { if (CollUtil.isNotEmpty(routeEntities)) {
@ -378,14 +374,23 @@ public class BasicdataPriceServiceImpl extends BaseServiceImpl<BasicdataPriceMap
} }
@Override @Override
public String upload(InputStream file) { public String upload(MultipartFile file) {
StringBuilder message = new StringBuilder(); StringBuilder message = new StringBuilder();
ExcelReader build = null;
try { try {
build = EasyExcel.read(file).build();
// 从build中获取5个sheet的数据 // 从build中获取5个sheet的数据
List<BasicdataPriceExcel> priceExcels = ExcelUtil.read(file, 0, BasicdataPriceExcel.class);
List<BasicdataPriceCategoryBasicExcel> basicExcels = ExcelUtil.read(file, 1, BasicdataPriceCategoryBasicExcel.class);
List<BasicdataPriceCategoryDispatchExcel> dispatchExcels = ExcelUtil.read(file, 2, BasicdataPriceCategoryDispatchExcel.class);
List<BasicdataPriceCategoryWarehouseExcel> warehouseExcels = ExcelUtil.read(file, 3, BasicdataPriceCategoryWarehouseExcel.class);
List<BasicdataPriceGeneralExcel> generalExcels = ExcelUtil.read(file, 4, BasicdataPriceGeneralExcel.class);
List<BasicdataPriceFullVehicleExcel> fullVehicleExcels = ExcelUtil.read(file, 5, BasicdataPriceFullVehicleExcel.class);
// 校验数据
if (CollUtil.isNotEmpty(priceExcels)) {
}catch (Exception e){ }
// 保存数据
} catch (Exception e) {
} }
return null; return null;
@ -479,7 +484,7 @@ public class BasicdataPriceServiceImpl extends BaseServiceImpl<BasicdataPriceMap
if (CollUtil.isNotEmpty(dispatchEntities)) { if (CollUtil.isNotEmpty(dispatchEntities)) {
// 将数据放到categoryBasicMap中 // 将数据放到categoryBasicMap中
dispatchEntities.forEach(item -> { dispatchEntities.forEach(item -> {
Integer type = item.getServiceType(); Integer type = item.getType();
List<BasicdataPriceCategoryDispatchEntity> collect = categoryBasicMap.get(type); List<BasicdataPriceCategoryDispatchEntity> collect = categoryBasicMap.get(type);
if (ObjectUtil.isEmpty(collect)) { if (ObjectUtil.isEmpty(collect)) {
collect = new ArrayList<>(); collect = new ArrayList<>();

18
blade-service/logpm-distribution/src/main/java/com/logpm/distribution/appcontroller/DistributionStockupAppController.java

@ -503,24 +503,6 @@ public class DistributionStockupAppController extends BladeController {
@ApiOperation(value = "零担备货") @ApiOperation(value = "零担备货")
public R zeroStockUp(@RequestBody StockupZeroDTO stockupDTO) { public R zeroStockUp(@RequestBody StockupZeroDTO stockupDTO) {
log.debug("=====零担备货:{}", stockupDTO); log.debug("=====零担备货:{}", stockupDTO);
if (ObjectUtils.isNull(stockupDTO.getStockupId())) {
return R.fail(3002, "备货id不能为空 !");
}
if (ObjectUtils.isNull(stockupDTO.getStockArticleId())) {
return R.fail(3002, "订单ID不能为空 !");
}
if (ObjectUtils.isNull(stockupDTO.getOrderCode())) {
return R.fail(3002, "订单自编号不能为空 !");
}
if (ObjectUtils.isNull(stockupDTO.getReservationId())) {
return R.fail(3002, "预约单号不能为空 !");
}
if (ObjectUtils.isNull(stockupDTO.getTypeService())) {
return R.fail(3002, "备货业务类型不能为空 !");
}
/* if (ObjectUtils.isNull(stockupDTO.getAllocationId())) {
return R.fail(3002, "库位信息不能为空 !");
}*/
R b = distributionStockupService.zeroStockUp(stockupDTO); R b = distributionStockupService.zeroStockUp(stockupDTO);
return b; return b;
} }

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

@ -98,7 +98,7 @@
ldl.signing_time signingTimes, ldl.signing_time signingTimes,
ldl.signing_user signingUser, ldl.signing_user signingUser,
ldl.scan_user scanUser, ldl.scan_user scanUser,
ldl.vehicle_name vehicleName, lddl.vehicle_name vehicleName,
ldsa.type_service typeService, ldsa.type_service typeService,
ldbl.pickup_batch pickupBatch ldbl.pickup_batch pickupBatch
FROM FROM
@ -109,7 +109,7 @@
LEFT JOIN logpm_distribution_reservation_package ldrp on ldrp.parce_list_id = ldpl.id and ldrp.packet_bar_status in (1,3) LEFT JOIN logpm_distribution_reservation_package ldrp on ldrp.parce_list_id = ldpl.id and ldrp.packet_bar_status in (1,3)
LEFT JOIN logpm_distribution_reservation ldr on ldr.id = ldrp.reservation_id LEFT JOIN logpm_distribution_reservation ldr on ldr.id = ldrp.reservation_id
LEFT JOIN logpm_distribution_signfor AS lds ON lds.reservation_id = ldr.id LEFT JOIN logpm_distribution_signfor AS lds ON lds.reservation_id = ldr.id
LEFT JOIN logpm_distribution_loadscan ldl on ldl.package_id = ldpl.id and ldl.scan_status !=1 LEFT JOIN logpm_distribution_loadscan ldl on ldl.package_id = ldpl.id and ldl.scan_status !=1 AND ldl.is_deleted = 0
LEFT JOIN logpm_distribution_delivery_list lddl on lddl.id = lds.delivery_id LEFT JOIN logpm_distribution_delivery_list lddl on lddl.id = lds.delivery_id
left join logpm_distribution_stock_article ldsa on ldsa.id = ldpl.stock_article_id left join logpm_distribution_stock_article ldsa on ldsa.id = ldpl.stock_article_id
LEFT JOIN logpm_distrilbution_bill_package AS ldbp ON ldbp.parce_list_id = ldpl.id and ldbp.packet_bar_status != 2 LEFT JOIN logpm_distrilbution_bill_package AS ldbp ON ldbp.parce_list_id = ldpl.id and ldbp.packet_bar_status != 2

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

@ -1038,7 +1038,7 @@
LEFT JOIN logpm_distribution_loadscan AS ldl ON ldla.package_id = ldl.package_id LEFT JOIN logpm_distribution_loadscan AS ldl ON ldla.package_id = ldl.package_id
LEFT JOIN logpm_distribution_parcel_list AS ldpl ON ldla.package_id = ldpl.id LEFT JOIN logpm_distribution_parcel_list AS ldpl ON ldla.package_id = ldpl.id
WHERE WHERE
ldla.reservation_id = #{reservationId} and ldl.reservation_id = #{reservationId} and ldla.delivery_list_id = #{deliveryListId} AND ldl.scan_status != 1 ldla.reservation_id = #{reservationId} and ldl.reservation_id = #{reservationId} and ldla.delivery_list_id = #{deliveryListId} AND ldl.scan_status != 1 AND ldl.is_deleted = 0
</select> </select>
<select id="selectSignImgsUrl" resultType="com.logpm.distribution.vo.DistributionSignPrintVO"> <select id="selectSignImgsUrl" resultType="com.logpm.distribution.vo.DistributionSignPrintVO">
SELECT * FROM logpm_distribution_sign_print WHERE reservation_id = #{reservationId} and is_deleted = 0 SELECT * FROM logpm_distribution_sign_print WHERE reservation_id = #{reservationId} and is_deleted = 0

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

@ -188,6 +188,7 @@ public class DistributionDeliveryInfoServiceImpl extends BaseServiceImpl<Distrib
List<DistributionStockArticleVO> distributionDeliveryInfoVOS = baseMapper.selectDistributionDeliveryOrderPage(page, distributionStockArticle); List<DistributionStockArticleVO> distributionDeliveryInfoVOS = baseMapper.selectDistributionDeliveryOrderPage(page, distributionStockArticle);
List<DistributionLoadscanEntity> loadList = distributionLoadscanService.list(Wrappers.<DistributionLoadscanEntity>query().lambda() List<DistributionLoadscanEntity> loadList = distributionLoadscanService.list(Wrappers.<DistributionLoadscanEntity>query().lambda()
.eq(DistributionLoadscanEntity::getDeliveryId, distributionStockArticle.get("deliveryId")) .eq(DistributionLoadscanEntity::getDeliveryId, distributionStockArticle.get("deliveryId"))
.ne(DistributionLoadscanEntity::getScanStatus, LoadingStatusConstant.quxiao.getValue())
); );
Map<Long, List<DistributionLoadscanEntity>> orderLoadMap; Map<Long, List<DistributionLoadscanEntity>> orderLoadMap;
if (!Objects.isNull(loadList)) { if (!Objects.isNull(loadList)) {
@ -249,6 +250,7 @@ public class DistributionDeliveryInfoServiceImpl extends BaseServiceImpl<Distrib
List<DistributionStockArticleVO> distributionDeliveryInfoVOS = baseMapper.selectDistributionDeliveryOrderPageByDeliveryId(Long.parseLong(deliveryId)); List<DistributionStockArticleVO> distributionDeliveryInfoVOS = baseMapper.selectDistributionDeliveryOrderPageByDeliveryId(Long.parseLong(deliveryId));
List<DistributionLoadscanEntity> loadList = distributionLoadscanService.list(Wrappers.<DistributionLoadscanEntity>query().lambda() List<DistributionLoadscanEntity> loadList = distributionLoadscanService.list(Wrappers.<DistributionLoadscanEntity>query().lambda()
.eq(DistributionLoadscanEntity::getDeliveryId, distributionStockArticle.get("deliveryId")) .eq(DistributionLoadscanEntity::getDeliveryId, distributionStockArticle.get("deliveryId"))
.ne(DistributionLoadscanEntity::getScanStatus, LoadingStatusConstant.quxiao.getValue())
); );
Map<Long, List<DistributionLoadscanEntity>> orderLoadMap; Map<Long, List<DistributionLoadscanEntity>> orderLoadMap;
if (!Objects.isNull(loadList)) { if (!Objects.isNull(loadList)) {

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

@ -2805,7 +2805,7 @@ public class DistributionDeliveryListServiceImpl extends BaseServiceImpl<Distrib
reservationEntity.setCreateUser(user.getUserId()); reservationEntity.setCreateUser(user.getUserId());
reservationEntity.setDeliveryWay(reservation.getDeliveryWay()); reservationEntity.setDeliveryWay(reservation.getDeliveryWay());
reservationEntity.setCreateTime(new Date()); reservationEntity.setCreateTime(new Date());
reservationEntity.setCreateDept(Long.parseLong(user.getDeptId())); reservationEntity.setCreateDept(myCurrentWarehouse.getDepartment());
reservationEntity.setUpdateTime(new Date()); reservationEntity.setUpdateTime(new Date());
reservationEntity.setUpdateUser(user.getUserId()); reservationEntity.setUpdateUser(user.getUserId());
reservationEntity.setIsDeleted(0); reservationEntity.setIsDeleted(0);
@ -7130,12 +7130,28 @@ public class DistributionDeliveryListServiceImpl extends BaseServiceImpl<Distrib
log.info(method + "存在装车数据:{}", reservationCodes); log.info(method + "存在装车数据:{}", reservationCodes);
return R.fail(deliveryListEntity.getTrainNumber() + "存在装车包件!!!"); return R.fail(deliveryListEntity.getTrainNumber() + "存在装车包件!!!");
} }
//该配送是否存在异常装车或者异常签收数据 List<Long> ids = reservationEntities.stream().map(DistributionReservationEntity::getId).collect(Collectors.toList());
List<DistributionLoadscanEntity> loadscanEntityList = distributionDeliveryListService.selectAbnormalLoadingBydeliveryId(deliveryId);
if (Func.isNotEmpty(loadscanEntityList)) { List<DistributionLoadscanEntity> packageList = distributionLoadscanService.list(Wrappers.<DistributionLoadscanEntity>query().lambda()
log.info(method + "存在异常装车数据:{}", deliveryId); .eq(DistributionLoadscanEntity::getReservationId, ids)
return R.fail(reservationCodes + "存在异常装车、签收包条!!!"); .ne(DistributionLoadscanEntity::getScanStatus, LoadingStatusConstant.quxiao.getValue())
);
List<DistributionLoadscaninvnEntity> inventoryList = distributionLoadscaninvnService.list(Wrappers.<DistributionLoadscaninvnEntity>query().lambda()
.eq(DistributionLoadscaninvnEntity::getReservationId, ids)
.ne(DistributionLoadscaninvnEntity::getScanStatus, LoadingStatusConstant.quxiao.getValue())
);
if (!packageList.isEmpty() || !inventoryList.isEmpty()){
log.info(method + "取消配送存在装车数据:{}", deliveryId);
return R.fail(reservationCodes + "存在装车、签收数据!!!");
} }
// //该配送是否存在异常装车或者异常签收数据
// List<DistributionLoadscanEntity> loadscanEntityList = distributionDeliveryListService.selectAbnormalLoadingBydeliveryId(deliveryId);
// if (Func.isNotEmpty(loadscanEntityList)) {
// log.info(method + "存在异常装车数据:{}", deliveryId);
// return R.fail(reservationCodes + "存在异常装车、签收包条!!!");
// }
boolean flag = false; boolean flag = false;
for (DistributionReservationEntity reservationEntity : reservationEntities) { for (DistributionReservationEntity reservationEntity : reservationEntities) {
DistributionReservationDTO reservationDTO = Func.copy(reservationEntity, DistributionReservationDTO.class); DistributionReservationDTO reservationDTO = Func.copy(reservationEntity, DistributionReservationDTO.class);

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

@ -737,7 +737,7 @@ public class DistributionParcelListServiceImpl extends BaseServiceImpl<Distribut
Set<String> orderCodes = new TreeSet<>(); Set<String> orderCodes = new TreeSet<>();
for (DistributionParcelListEntity parcelListEntity : listEntityList) { for (DistributionParcelListEntity parcelListEntity : listEntityList) {
Long packageWarehouseId = parcelListEntity.getWarehouseId(); Long packageWarehouseId = parcelListEntity.getWarehouseId();
parcelListEntity.setWaybillId(waybillId + ""); parcelListEntity.setWaybillId(waybillId);
parcelListEntity.setWaybillNumber(waybillNo); parcelListEntity.setWaybillNumber(waybillNo);
parcelListEntity.setSendWarehouseId(departureWarehouseId); parcelListEntity.setSendWarehouseId(departureWarehouseId);
parcelListEntity.setSendWarehouseName(departureWarehouseName); parcelListEntity.setSendWarehouseName(departureWarehouseName);

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

@ -601,6 +601,12 @@ public class DistributionSignforServiceImpl extends BaseServiceImpl<Distribution
} }
SimpleDateFormat sdf = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss.SSS"); SimpleDateFormat sdf = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss.SSS");
DistributionSignforEntity distributionSignfor = this.getById(distributionSignforDTO.getId()); DistributionSignforEntity distributionSignfor = this.getById(distributionSignforDTO.getId());
Integer loadingNum = distributionSignfor.getLoadedNumber() + distributionSignfor.getLoadedinNumber();
Integer signNum = distributionSignfor.getReceivedQuantity() + distributionSignfor.getReceivedinQuantity();
if (Func.equals(loadingNum,signNum)){
log.error("复核签收装车数和签收数不一致,装车数:{},签收数:{}", loadingNum,signNum);
return R.fail("请维护计划后进行复核!!!");
}
BladeUser user = AuthUtil.getUser(); BladeUser user = AuthUtil.getUser();
distributionSignfor.setExamineUserId(user.getUserId()); distributionSignfor.setExamineUserId(user.getUserId());
distributionSignfor.setSigningStatus(SignforStatusConstant.yiqianshou.getValue()); distributionSignfor.setSigningStatus(SignforStatusConstant.yiqianshou.getValue());
@ -2848,14 +2854,22 @@ public class DistributionSignforServiceImpl extends BaseServiceImpl<Distribution
.ne(DistributionLoadscanEntity::getScanStatus, LoadingStatusConstant.quxiao.getValue())); .ne(DistributionLoadscanEntity::getScanStatus, LoadingStatusConstant.quxiao.getValue()));
DistributionLoadscanEntity loadscanEntity = null; DistributionLoadscanEntity loadscanEntity = null;
if (loadscanEntityList.isEmpty()){ if (!loadscanEntityList.isEmpty()){
if (loadscanEntityList.size() == 1){
if (loadscanEntityList.get(0).getReservationId().equals(distrilbutionloadingscanDTO.getReservationId())) {
loadscanEntity = loadscanEntityList.get(0);
}else {
log.error("##############异常签收包件在其他车次进行装车reservationId:{}", loadscanEntityList.stream().map(DistributionLoadscanEntity::getReservationId).map(String::valueOf).collect(Collectors.joining(",")));
return Resp.scanFail("操作失败", "包件已出库");
}
}
if (loadscanEntityList.size() > 1){ if (loadscanEntityList.size() > 1){
log.error("##############异常签收包件在其他车次进行装车reservationId:{}", loadscanEntityList.stream().map(DistributionLoadscanEntity::getReservationId).map(String::valueOf).collect(Collectors.joining(","))); log.error("##############异常签收包件在其他车次进行装车reservationId:{}", loadscanEntityList.stream().map(DistributionLoadscanEntity::getReservationId).map(String::valueOf).collect(Collectors.joining(",")));
return Resp.scanFail("操作失败", "包件已出库"); return Resp.scanFail("操作失败", "包件已出库");
} }
if (loadscanEntityList.size() == 1){
loadscanEntity = loadscanEntityList.get(0);
}
} }
if (Func.isNotEmpty(loadscanEntity)) { if (Func.isNotEmpty(loadscanEntity)) {
@ -2897,6 +2911,7 @@ public class DistributionSignforServiceImpl extends BaseServiceImpl<Distribution
distributionLoadscanEntity.setReceivedQuantity(parcelListEntity.getQuantity()); distributionLoadscanEntity.setReceivedQuantity(parcelListEntity.getQuantity());
distributionLoadscanEntity.setReservationId(distrilbutionloadingscanDTO.getReservationId()); distributionLoadscanEntity.setReservationId(distrilbutionloadingscanDTO.getReservationId());
distributionLoadscanEntity.setIsSignfor(2); distributionLoadscanEntity.setIsSignfor(2);
distributionLoadscanEntity.setTrainNumber(distributionDeliveryListEntity.getTrainNumber());
distributionLoadscanEntity.setIsInsert(2); distributionLoadscanEntity.setIsInsert(2);
distributionLoadscanEntity.setSignforState(2); distributionLoadscanEntity.setSignforState(2);
distributionLoadscanEntity.setPackageNub(parcelListEntity.getQuantity()); distributionLoadscanEntity.setPackageNub(parcelListEntity.getQuantity());

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

File diff suppressed because it is too large Load Diff

2
blade-service/logpm-factory-data/logpm-factory-data-base/src/main/resources/application.yml

@ -39,4 +39,4 @@ xxl:
ip: 127.0.0.1 ip: 127.0.0.1
logpath: ../data/applogs/logpm-factory-data-xxljob/jobhandler logpath: ../data/applogs/logpm-factory-data-xxljob/jobhandler
logretentiondays: -1 logretentiondays: -1
port: 17019 port: 17018

2
blade-service/logpm-patch/src/main/java/com/logpm/patch/service/impl/SyncOrderInfoServiceImpl.java

@ -235,7 +235,7 @@ public class SyncOrderInfoServiceImpl implements ISyncOrderInfoService {
List<DistributionParcelListEntity> parcelListEntityList = distributionParcelListClient.getListByOrderPackageCode(orderPackageCode); List<DistributionParcelListEntity> parcelListEntityList = distributionParcelListClient.getListByOrderPackageCode(orderPackageCode);
for (DistributionParcelListEntity parcelListEntity : parcelListEntityList) { for (DistributionParcelListEntity parcelListEntity : parcelListEntityList) {
Long warehouseId = parcelListEntity.getWarehouseId(); Long warehouseId = parcelListEntity.getWarehouseId();
parcelListEntity.setWaybillId(waybillId+""); parcelListEntity.setWaybillId(waybillId);
parcelListEntity.setWaybillNumber(waybillNo); parcelListEntity.setWaybillNumber(waybillNo);
parcelListEntity.setSendWarehouseId(departureWarehouseId); parcelListEntity.setSendWarehouseId(departureWarehouseId);
parcelListEntity.setSendWarehouseName(departureWarehouseName); parcelListEntity.setSendWarehouseName(departureWarehouseName);

18
blade-service/logpm-trunkline/src/main/java/com/logpm/trunkline/controller/CarsLoadController.java

@ -7,6 +7,7 @@ import com.logpm.basicdata.entity.BasicdataWarehouseEntity;
import com.logpm.basicdata.feign.IBasicdataWarehouseClient; import com.logpm.basicdata.feign.IBasicdataWarehouseClient;
import com.logpm.trunkline.dto.*; import com.logpm.trunkline.dto.*;
import com.logpm.trunkline.service.ITrunklineCarsLoadService; import com.logpm.trunkline.service.ITrunklineCarsLoadService;
import com.logpm.trunkline.vo.LoadingDetailExportVO;
import com.logpm.trunkline.vo.TrunklineCarsLoadVO; import com.logpm.trunkline.vo.TrunklineCarsLoadVO;
import com.logpm.trunkline.vo.ZeroSuppleVO; import com.logpm.trunkline.vo.ZeroSuppleVO;
import io.swagger.annotations.Api; import io.swagger.annotations.Api;
@ -14,11 +15,14 @@ import io.swagger.annotations.ApiOperation;
import lombok.AllArgsConstructor; import lombok.AllArgsConstructor;
import lombok.extern.slf4j.Slf4j; import lombok.extern.slf4j.Slf4j;
import org.springblade.common.exception.CustomerException; import org.springblade.common.exception.CustomerException;
import org.springblade.core.excel.util.ExcelUtil;
import org.springblade.core.tool.api.R; import org.springblade.core.tool.api.R;
import org.springblade.core.tool.utils.DateUtil;
import org.springblade.core.tool.utils.StringUtil; import org.springblade.core.tool.utils.StringUtil;
import org.springframework.web.bind.annotation.*; import org.springframework.web.bind.annotation.*;
import javax.servlet.http.HttpServletRequest; import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse;
import java.math.BigDecimal; import java.math.BigDecimal;
import java.util.Enumeration; import java.util.Enumeration;
import java.util.List; import java.util.List;
@ -1189,6 +1193,20 @@ public class CarsLoadController {
} }
} }
@ResponseBody
@PostMapping("/loadingDetailExport")
@ApiOperationSupport(order = 1)
@ApiOperation(value = "装车明细导出", notes = "传入loadCarsDTO")
public void loadingDetailExport(@RequestBody LoadCarsDTO loadCarsDTO, HttpServletResponse response) {
String method = "############loadingDetailExport: ";
log.info(method+"请求参数{}",loadCarsDTO);
List<LoadingDetailExportVO> ls = carsLoadService.loadingDetailExport(loadCarsDTO);
//导出ls
ExcelUtil.export(response, "未盘点任务数据" + DateUtil.time(), "未盘点任务数据数据表", ls, LoadingDetailExportVO.class);
}
@ResponseBody @ResponseBody
@PostMapping("/carsLoadDetailInfo") @PostMapping("/carsLoadDetailInfo")
@ApiOperationSupport(order = 1) @ApiOperationSupport(order = 1)

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

@ -170,7 +170,8 @@
<update id="updateWaybillNoByAdvanceId" > <update id="updateWaybillNoByAdvanceId" >
update logpm_trunkline_advance_detail update logpm_trunkline_advance_detail
set waybill_no = #{waybillNo} set waybill_no = #{waybillNo},
waybill_id = #{waybillId}
where advance_id = #{advanceId} where advance_id = #{advanceId}
</update> </update>

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

@ -84,7 +84,9 @@
<select id="selectInfoByIds" resultType="com.logpm.trunkline.vo.OpenOrderVO"> <select id="selectInfoByIds" resultType="com.logpm.trunkline.vo.OpenOrderVO">
select GROUP_CONCAT(DISTINCT brand) brand, select GROUP_CONCAT(DISTINCT brand) brand,
GROUP_CONCAT(DISTINCT train_number) trainNumber, GROUP_CONCAT(DISTINCT train_number) trainNumber,
GROUP_CONCAT(DISTINCT order_code) orderCode GROUP_CONCAT(DISTINCT order_code) orderCode,
GROUP_CONCAT(DISTINCT dealer_code) dealerCode,
GROUP_CONCAT(DISTINCT dealer_name) dealerName
from logpm_trunkline_advance from logpm_trunkline_advance
where is_deleted = 0 where is_deleted = 0
and id in and id in
@ -138,19 +140,22 @@
</update> </update>
<select id="findIncomingOrderList" resultType="com.logpm.trunkline.vo.TrunklineAdvanceVO"> <select id="findIncomingOrderList" resultType="com.logpm.trunkline.vo.TrunklineAdvanceVO">
select lta.* select lta.*,
from logpm_trunkline_advance lta max(IF(ltad.package_status = '0',1,0)) isIncoming
from logpm_trunkline_advance_detail ltad
left join logpm_trunkline_advance lta on lta.id = ltad.advance_id
WHERE 1=1 WHERE 1=1
and lta.warehouse_id = #{param.warehouseId} and ltad.warehouse_id = #{param.warehouseId}
<if test="param.incomingType == 4" > <if test="param.incomingType == 4" >
and lta.train_number = #{param.incomingCode} and ltad.train_number = #{param.incomingCode}
</if> </if>
<if test="param.incomingType == 5" > <if test="param.incomingType == 5" >
and lta.order_code in and ltad.order_code in
<foreach collection="param.orderCodes" item="item" open="(" separator="," close=")"> <foreach collection="param.orderCodes" item="item" open="(" separator="," close=")">
#{item} #{item}
</foreach> </foreach>
</if> </if>
group by lta.id
</select> </select>
<select id="findAllNumByOrderCode" resultType="int"> <select id="findAllNumByOrderCode" resultType="int">

5
blade-service/logpm-trunkline/src/main/java/com/logpm/trunkline/mapper/TrunklineBillladingMapper.xml

@ -30,7 +30,7 @@
count(DISTINCT ltbl.id) nodeNub, count(DISTINCT ltbl.id) nodeNub,
count(DISTINCT ltbw.id) waybillCount count(DISTINCT ltbw.id) waybillCount
from logpm_trunkline_billlading ltb from logpm_trunkline_billlading ltb
left join logpm_trunkline_billlading_line ltbl on ltbl.billlading_id = ltb.id left join logpm_trunkline_billlading_line ltbl on ltbl.billlading_id = ltb.id and ltbl.is_deleted = 0
left join logpm_trunkline_billlading_waybill ltbw on ltbw.billlading_id = ltb.id and ltbw.waybill_no != '————' left join logpm_trunkline_billlading_waybill ltbw on ltbw.billlading_id = ltb.id and ltbw.waybill_no != '————'
where ltb.is_deleted = 0 where ltb.is_deleted = 0
<if test="param.warehouseId != null "> <if test="param.warehouseId != null ">
@ -85,7 +85,8 @@
<select id="findWaybillListNotBillladingId" resultType="com.logpm.warehouse.vo.WarehouseWaybillVO"> <select id="findWaybillListNotBillladingId" resultType="com.logpm.warehouse.vo.WarehouseWaybillVO">
select lww.waybill_no waybillNo, select lww.id waybillId,
lww.waybill_no waybillNo,
lww.create_time createTime, lww.create_time createTime,
lww.goods_name goodsName, lww.goods_name goodsName,
lww.destination destination, lww.destination destination,

1
blade-service/logpm-trunkline/src/main/java/com/logpm/trunkline/mapper/TrunklineBillladingWaybillMapper.xml

@ -48,6 +48,7 @@
left join logpm_trunkline_billlading ltb on ltb.id = ltbw.billlading_id left join logpm_trunkline_billlading ltb on ltb.id = ltbw.billlading_id
left join logpm_warehouse_waybill lww on lww.waybill_no = ltbw.waybill_no left join logpm_warehouse_waybill lww on lww.waybill_no = ltbw.waybill_no
where ltbw.billlading_id = #{billladingId} where ltbw.billlading_id = #{billladingId}
and ltbw.is_deleted = 0
</select> </select>
<update id="updateDataByBillladingWaybillId" > <update id="updateDataByBillladingWaybillId" >

5
blade-service/logpm-trunkline/src/main/java/com/logpm/trunkline/mapper/TrunklineCarsLoadMapper.java

@ -17,6 +17,11 @@ import java.util.List;
@Mapper @Mapper
public interface TrunklineCarsLoadMapper extends BaseMapper<TrunklineCarsLoadEntity> { public interface TrunklineCarsLoadMapper extends BaseMapper<TrunklineCarsLoadEntity> {
/**
* @param page
* @param loadCarsDTO
* @return
*/
IPage<TrunklineCarsLoadVO> loadCarsPageList(IPage<Object> page, @Param("param") LoadCarsDTO loadCarsDTO); IPage<TrunklineCarsLoadVO> loadCarsPageList(IPage<Object> page, @Param("param") LoadCarsDTO loadCarsDTO);
IPage<TrunklineCarsLoadVO> arriveCarsPageList(IPage<Object> page, @Param("param") LoadCarsDTO loadCarsDTO); IPage<TrunklineCarsLoadVO> arriveCarsPageList(IPage<Object> page, @Param("param") LoadCarsDTO loadCarsDTO);

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

@ -41,6 +41,7 @@
left join logpm_trunkline_cars_load_line ltcll on ltcll.load_id = ltcl.id left join logpm_trunkline_cars_load_line ltcll on ltcll.load_id = ltcl.id
where ltcl.is_deleted = 0 where ltcl.is_deleted = 0
and ltcl.load_type != '4' and ltcl.load_type != '4'
and ltcl.load_status != '100'
<if test="param.warehouseId != null" > <if test="param.warehouseId != null" >
and ltcl.start_warehouse_id = #{param.warehouseId} and ltcl.start_warehouse_id = #{param.warehouseId}
</if> </if>
@ -375,6 +376,7 @@
</if> </if>
<if test="param.type != null and param.type == 1"> <if test="param.type != null and param.type == 1">
and ltcl.load_status = '0' and ltcl.load_status = '0'
and ltcl.load_status != '100'
</if> </if>
<if test="param.type != null and param.type == 2"> <if test="param.type != null and param.type == 2">
and ltcl.load_status != '0' and ltcl.load_status != '0'

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

@ -126,4 +126,6 @@ public interface TrunklineCarsLoadScanMapper extends BaseMapper<TrunklineCarsLoa
List<WaybillCarsLoadVO> findWaybillCarsLoadInfo(@Param("waybillId") Long waybillId); List<WaybillCarsLoadVO> findWaybillCarsLoadInfo(@Param("waybillId") Long waybillId);
List<WaybillCarsLoadVO> findWaybillTransferInfo(@Param("waybillId") Long waybillId); List<WaybillCarsLoadVO> findWaybillTransferInfo(@Param("waybillId") Long waybillId);
List<LoadingDetailExportVO> loadingDetailExport(@Param("param") LoadCarsDTO loadCarsDTO);
} }

34
blade-service/logpm-trunkline/src/main/java/com/logpm/trunkline/mapper/TrunklineCarsLoadScanMapper.xml

@ -583,10 +583,42 @@
ltcl.remark remark ltcl.remark remark
from logpm_trunkline_cars_load_scan ltcls from logpm_trunkline_cars_load_scan ltcls
left join logpm_trunkline_cars_load ltcl on ltcl.id = ltcls.load_id left join logpm_trunkline_cars_load ltcl on ltcl.id = ltcls.load_id
where ltcls.waybill_no = #{waybillNo} where ltcls.waybill_id = #{waybillId}
and ltcl.load_type = 4 and ltcl.load_type = 4
group by ltcl.cars_no group by ltcl.cars_no
order By ltcl.start_time asc order By ltcl.start_time asc
</select> </select>
<select id="loadingDetailExport" resultType="com.logpm.trunkline.vo.LoadingDetailExportVO">
select ltcls.tray_code trayCode,
ltcls.unload_node_name unloadNodeName,
ltcls.order_code orderCode,
ltcls.warehouse_name warehouseNname,
ltcls.unload_user_name unloadUserName,
IF(ltcls.unload_abnormal = 1,'是','否') unloadAbnormal,
IF(ltcls.is_supple = 1,'是','否') isSupple,
ltcls.cars_no carsNo,
ltcls.scan_code scanCode,
ltcls.final_node_name finalNodeName,
case ltcls.scan_status
when '1' then '装车'
when '2' then '卸车'
when '3' then '签收'
end scanStatus,
ltcls.tray_name trayName,
ltcls.num num,
IF(ltcls.is_data = 1,'有','无') isData,
ltcls.waybill_no waybillNo,
ltcls.loading_user_name loadingUserName,
case ltcls.type
when 1 then '订制品'
when 2 then '零担'
end type,
IF(ltcls.loading_abnormal = 1,'是','否') loadingAbnormal
from logpm_trunkline_cars_load_scan ltcls
where ltcls.load_id = #{param.loadId}
order by ltcls.create_time asc
</select>
</mapper> </mapper>

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

@ -122,4 +122,5 @@ public interface ITrunklineCarsLoadScanService extends BaseService<TrunklineCars
List<WaybillCarsLoadVO> findWaybillTransferInfo(Long waybillId); List<WaybillCarsLoadVO> findWaybillTransferInfo(Long waybillId);
List<LoadingDetailExportVO> loadingDetailExport(LoadCarsDTO loadCarsDTO);
} }

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

@ -5,6 +5,7 @@ import com.logpm.trunkline.dto.BatchUnloadDTO;
import com.logpm.trunkline.dto.LoadCarsDTO; import com.logpm.trunkline.dto.LoadCarsDTO;
import com.logpm.trunkline.dto.TrunklineCarsLoadDTO; import com.logpm.trunkline.dto.TrunklineCarsLoadDTO;
import com.logpm.trunkline.entity.TrunklineCarsLoadEntity; import com.logpm.trunkline.entity.TrunklineCarsLoadEntity;
import com.logpm.trunkline.vo.LoadingDetailExportVO;
import com.logpm.trunkline.vo.TripartiteTransferVO; import com.logpm.trunkline.vo.TripartiteTransferVO;
import com.logpm.trunkline.vo.TrunklineCarsLoadVO; import com.logpm.trunkline.vo.TrunklineCarsLoadVO;
import org.springblade.core.mp.base.BaseService; import org.springblade.core.mp.base.BaseService;
@ -205,4 +206,5 @@ public interface ITrunklineCarsLoadService extends BaseService<TrunklineCarsLoad
R findWaybillTransferInfo(Long waybillId); R findWaybillTransferInfo(Long waybillId);
List<LoadingDetailExportVO> loadingDetailExport(LoadCarsDTO loadCarsDTO);
} }

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

@ -146,15 +146,15 @@ public class InComingServiceImpl implements IInComingService {
} }
List<TrunklineAdvanceVO> ls = advanceService.findIncomingOrderList(inComingDTO); List<TrunklineAdvanceVO> ls = advanceService.findIncomingOrderList(inComingDTO);
for (TrunklineAdvanceVO advanceVO : ls) { // for (TrunklineAdvanceVO advanceVO : ls) {
Long advanceId = advanceVO.getId(); // Long advanceId = advanceVO.getId();
Integer num = advanceDetailService.findListByAdvanceIdAndPackageStatus(advanceId,"0"); // Integer num = advanceDetailService.findListByAdvanceIdAndPackageStatus(advanceId,"0");
if(num > 0){ // if(num > 0){
advanceVO.setIsIncoming(1); // advanceVO.setIsIncoming(1);
}else{ // }else{
advanceVO.setIsIncoming(0); // advanceVO.setIsIncoming(0);
} // }
} // }
return R.data(ls); return R.data(ls);
} }

26
blade-service/logpm-trunkline/src/main/java/com/logpm/trunkline/service/impl/OpenOrderServiceImpl.java

@ -94,9 +94,7 @@ public class OpenOrderServiceImpl implements IOpenOrderService {
page.setCurrent(advanceDTO.getPageNum()); page.setCurrent(advanceDTO.getPageNum());
page.setSize(advanceDTO.getPageSize()); page.setSize(advanceDTO.getPageSize());
IPage<TrunklineAdvanceVO> pageList = advanceService.advancePageList(page, advanceDTO); return advanceService.advancePageList(page, advanceDTO);
return pageList;
} }
@Override @Override
@ -139,6 +137,10 @@ public class OpenOrderServiceImpl implements IOpenOrderService {
OpenOrderVO infoByIds = advanceService.selectInfoByIds(advanceIds); OpenOrderVO infoByIds = advanceService.selectInfoByIds(advanceIds);
BeanUtil.copy(infoByIds, openOrderVO); BeanUtil.copy(infoByIds, openOrderVO);
openOrderVO.setAdvanceIds(advanceIds); openOrderVO.setAdvanceIds(advanceIds);
BasicdataBrandEntity basicdataBrandEntity = basicdataBrandClient.findEntityByName(brand);
if(!Objects.isNull(basicdataBrandEntity)){
openOrderVO.setBrandId(basicdataBrandEntity.getId());
}
//发站仓-----目前登录人的仓库 //发站仓-----目前登录人的仓库
openOrderVO.setDepartureWarehouseName(basicdataWarehouseEntity.getName()); openOrderVO.setDepartureWarehouseName(basicdataWarehouseEntity.getName());
openOrderVO.setDepartureWarehouseId(warehouseId); openOrderVO.setDepartureWarehouseId(warehouseId);
@ -303,13 +305,19 @@ public class OpenOrderServiceImpl implements IOpenOrderService {
Long destinationWarehouseId = openOrderDTO.getDestinationWarehouseId(); Long destinationWarehouseId = openOrderDTO.getDestinationWarehouseId();
String brand = openOrderDTO.getBrand(); String brand = openOrderDTO.getBrand();
BasicdataBrandEntity basicdataBrandEntity = basicdataBrandClient.findEntityByName(brand); Long brandId = openOrderDTO.getBrandId();
WarehouseWaybillEntity waybillEntity = new WarehouseWaybillEntity(); WarehouseWaybillEntity waybillEntity = new WarehouseWaybillEntity();
waybillEntity.setWaybillNo(waybillNo); waybillEntity.setWaybillNo(waybillNo);
if (!Objects.isNull(basicdataBrandEntity)) { if(Objects.isNull(brandId)){
waybillEntity.setBrandId(basicdataBrandEntity.getId()); BasicdataBrandEntity basicdataBrandEntity = basicdataBrandClient.findEntityByName(brand);
if (!Objects.isNull(basicdataBrandEntity)) {
brandId = basicdataBrandEntity.getId();
}
} }
waybillEntity.setBrandId(brandId);
waybillEntity.setBrand(brand); waybillEntity.setBrand(brand);
waybillEntity.setOrderNo(openOrderDTO.getOrderCode()); waybillEntity.setOrderNo(openOrderDTO.getOrderCode());
waybillEntity.setDepartureWarehouseId(departureWarehouseId); waybillEntity.setDepartureWarehouseId(departureWarehouseId);
@ -526,8 +534,8 @@ public class OpenOrderServiceImpl implements IOpenOrderService {
} }
//判断是否是开单及入库的配置 //判断是否是开单及入库的配置
Boolean aBoolean = basicdataOpenIncomingClient.checkOpenIncoming(warehouseId, basicdataBrandEntity.getId()); Boolean aBoolean = basicdataOpenIncomingClient.checkOpenIncoming(warehouseId, brandId);
if (aBoolean) { if (Boolean.TRUE.equals(aBoolean)) {
openOrderAsyncService.incomingPackageBatch(advanceIds, AuthUtil.getUserId(), Func.firstLong(AuthUtil.getDeptId()), AuthUtil.getTenantId(), AuthUtil.getNickName(), IncomingTypeEnum.OPEN_TO_IN.getCode()); openOrderAsyncService.incomingPackageBatch(advanceIds, AuthUtil.getUserId(), Func.firstLong(AuthUtil.getDeptId()), AuthUtil.getTenantId(), AuthUtil.getNickName(), IncomingTypeEnum.OPEN_TO_IN.getCode());
} }
@ -2823,7 +2831,7 @@ public class OpenOrderServiceImpl implements IOpenOrderService {
entity.setOrderPackageStockupStatus("10"); entity.setOrderPackageStockupStatus("10");
entity.setOrderPackageReservationStatus("10"); entity.setOrderPackageReservationStatus("10");
entity.setOrderPackageLoadingStatus("10"); entity.setOrderPackageLoadingStatus("10");
entity.setWaybillId(warehouseWaybill.getId() + ""); entity.setWaybillId(warehouseWaybill.getId());
entity.setWaybillNumber(warehouseWaybill.getWaybillNo()); entity.setWaybillNumber(warehouseWaybill.getWaybillNo());
entity.setIsZero("1"); entity.setIsZero("1");
entity.setWarehouseEntryTimeEnd(date); entity.setWarehouseEntryTimeEnd(date);

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

@ -227,7 +227,7 @@ public class TrunklineAdvanceServiceImpl extends BaseServiceImpl<TrunklineAdvanc
if(StringUtil.isNotBlank(waybillNo)){ if(StringUtil.isNotBlank(waybillNo)){
WarehouseWaybillEntity waybillEntity = warehouseWaybillClient.findByWaybillNo(waybillNo); WarehouseWaybillEntity waybillEntity = warehouseWaybillClient.findByWaybillNo(waybillNo);
if(!Objects.isNull(waybillEntity)){ if(!Objects.isNull(waybillEntity)){
parcelList.setWaybillId(waybillEntity.getId()+""); parcelList.setWaybillId(waybillEntity.getId());
parcelList.setWaybillNumber(waybillEntity.getWaybillNo()); parcelList.setWaybillNumber(waybillEntity.getWaybillNo());
parcelList.setSendWarehouseId(waybillEntity.getDepartureWarehouseId()); parcelList.setSendWarehouseId(waybillEntity.getDepartureWarehouseId());
parcelList.setSendWarehouseName(waybillEntity.getDepartureWarehouseName()); parcelList.setSendWarehouseName(waybillEntity.getDepartureWarehouseName());
@ -551,7 +551,7 @@ public class TrunklineAdvanceServiceImpl extends BaseServiceImpl<TrunklineAdvanc
if(StringUtil.isNotBlank(waybillNo)){ if(StringUtil.isNotBlank(waybillNo)){
WarehouseWaybillEntity waybillEntity = warehouseWaybillClient.findByWaybillNo(waybillNo); WarehouseWaybillEntity waybillEntity = warehouseWaybillClient.findByWaybillNo(waybillNo);
if(!Objects.isNull(waybillEntity)){ if(!Objects.isNull(waybillEntity)){
parcelList.setWaybillId(waybillEntity.getId()+""); parcelList.setWaybillId(waybillEntity.getId());
parcelList.setWaybillNumber(waybillEntity.getWaybillNo()); parcelList.setWaybillNumber(waybillEntity.getWaybillNo());
parcelList.setSendWarehouseId(waybillEntity.getDepartureWarehouseId()); parcelList.setSendWarehouseId(waybillEntity.getDepartureWarehouseId());
parcelList.setSendWarehouseName(waybillEntity.getDepartureWarehouseName()); parcelList.setSendWarehouseName(waybillEntity.getDepartureWarehouseName());

209
blade-service/logpm-trunkline/src/main/java/com/logpm/trunkline/service/impl/TrunklineBillladingServiceImpl.java

@ -1,5 +1,6 @@
package com.logpm.trunkline.service.impl; package com.logpm.trunkline.service.impl;
import com.alibaba.fastjson.JSON;
import com.alibaba.fastjson.JSONObject; import com.alibaba.fastjson.JSONObject;
import com.baomidou.mybatisplus.core.metadata.IPage; import com.baomidou.mybatisplus.core.metadata.IPage;
import com.baomidou.mybatisplus.extension.plugins.pagination.Page; import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
@ -56,9 +57,7 @@ public class TrunklineBillladingServiceImpl extends BaseServiceImpl<TrunklineBil
page.setCurrent(billladingDTO.getPageNum()); page.setCurrent(billladingDTO.getPageNum());
page.setSize(billladingDTO.getPageSize()); page.setSize(billladingDTO.getPageSize());
IPage<TrunklineBillladingVO> pageList = baseMapper.pageList(page,billladingDTO); return baseMapper.pageList(page,billladingDTO);
return pageList;
} }
@Override @Override
@ -124,7 +123,7 @@ public class TrunklineBillladingServiceImpl extends BaseServiceImpl<TrunklineBil
logEntity.setCreateUserName(AuthUtil.getUserName()); logEntity.setCreateUserName(AuthUtil.getUserName());
logEntity.setContent("创建提货单 billladingCode="+billladingCode); logEntity.setContent("创建提货单 billladingCode="+billladingCode);
logEntity.setBillladingId(billladingId); logEntity.setBillladingId(billladingId);
logEntity.setAfterOpreation(JSONObject.toJSONString(trunklineBillladingEntity)); logEntity.setAfterOpreation(JSON.toJSONString(trunklineBillladingEntity));
trunklineBillladingLogService.save(logEntity); trunklineBillladingLogService.save(logEntity);
} }
@ -138,9 +137,7 @@ public class TrunklineBillladingServiceImpl extends BaseServiceImpl<TrunklineBil
billladingDTO.setBillladingStatus("2"); billladingDTO.setBillladingStatus("2");
IPage<TrunklineBillladingVO> pageList = baseMapper.pageInfoList(page,billladingDTO); return baseMapper.pageInfoList(page,billladingDTO);
return pageList;
} }
@Override @Override
@ -168,7 +165,7 @@ public class TrunklineBillladingServiceImpl extends BaseServiceImpl<TrunklineBil
logEntity.setCreateUserName(AuthUtil.getUserName()); logEntity.setCreateUserName(AuthUtil.getUserName());
logEntity.setContent("修改提货单 billladingCode="+billladingCode); logEntity.setContent("修改提货单 billladingCode="+billladingCode);
logEntity.setBillladingId(billladingId); logEntity.setBillladingId(billladingId);
logEntity.setBeforeOpreation(JSONObject.toJSONString(billladingEntity)); logEntity.setBeforeOpreation(JSON.toJSONString(billladingEntity));
BeanUtil.copy(billladingDTO,billladingEntity); BeanUtil.copy(billladingDTO,billladingEntity);
updateById(billladingEntity); updateById(billladingEntity);
@ -189,10 +186,11 @@ public class TrunklineBillladingServiceImpl extends BaseServiceImpl<TrunklineBil
} }
TrunklineBillladingLineEntity billladingLineEntity = new TrunklineBillladingLineEntity(); TrunklineBillladingLineEntity billladingLineEntity = new TrunklineBillladingLineEntity();
BeanUtil.copy(billladingLineVO,billladingLineEntity); BeanUtil.copy(billladingLineVO,billladingLineEntity);
billladingLineEntity.setId(null);
billladingLineEntity.setBillladingId(billladingId); billladingLineEntity.setBillladingId(billladingId);
billladingLineEntity.setWarehouseId(warehouseId); billladingLineEntity.setWarehouseId(warehouseId);
billladingLineEntity.setWarehouseName(warehouseName); billladingLineEntity.setWarehouseName(warehouseName);
billladingLineService.saveOrUpdate(billladingLineEntity); billladingLineService.save(billladingLineEntity);
} }
billladingEntity.setLineNameTitle(lineTitle); billladingEntity.setLineNameTitle(lineTitle);
updateById(billladingEntity); updateById(billladingEntity);
@ -221,7 +219,7 @@ public class TrunklineBillladingServiceImpl extends BaseServiceImpl<TrunklineBil
} }
} }
logEntity.setAfterOpreation(JSONObject.toJSONString(billladingEntity)); logEntity.setAfterOpreation(JSON.toJSONString(billladingEntity));
trunklineBillladingLogService.save(logEntity); trunklineBillladingLogService.save(logEntity);
} }
@ -231,94 +229,101 @@ public class TrunklineBillladingServiceImpl extends BaseServiceImpl<TrunklineBil
log.info("#############updateBillladingStatus: 更新提货单状态 type={}",type); log.info("#############updateBillladingStatus: 更新提货单状态 type={}",type);
TrunklineBillladingEntity billladingEntity = baseMapper.selectById(billladingId); TrunklineBillladingEntity billladingEntity = baseMapper.selectById(billladingId);
if(Objects.isNull(billladingEntity)){ if (!Objects.isNull(billladingEntity)) {
log.warn("##################updateBillladingStatus: 提货单不存在 billladingId={}",billladingId); String billladingCode = billladingEntity.getBillladingCode();
throw new CustomerException(405,"提货单不存在");
} StringBuilder stringBuffer = new StringBuilder();
String billladingCode = billladingEntity.getBillladingCode(); TrunklineBillladingLogEntity logEntity = new TrunklineBillladingLogEntity();
logEntity.setWarehouseId(warehouseId);
StringBuilder stringBuffer = new StringBuilder(); logEntity.setWarehouseName(warehouseName);
TrunklineBillladingLogEntity logEntity = new TrunklineBillladingLogEntity(); logEntity.setCreateUserName(AuthUtil.getUserName());
logEntity.setWarehouseId(warehouseId); logEntity.setBillladingId(billladingId);
logEntity.setWarehouseName(warehouseName); logEntity.setBeforeOpreation(JSON.toJSONString(billladingEntity));
logEntity.setCreateUserName(AuthUtil.getUserName());
logEntity.setBillladingId(billladingId); stringBuffer.append("变更提货单状态 billladingCode=").append(billladingCode);
logEntity.setBeforeOpreation(JSONObject.toJSONString(billladingEntity));
stringBuffer.append("变更提货单状态 billladingCode=").append(billladingCode); String billladingStatus = billladingEntity.getBillladingStatus();
//提货单状态 1=未开始,2=提货中,3=已完成,4=已结算 5=已取消
switch (type) {
String billladingStatus = billladingEntity.getBillladingStatus(); case 1:
//提货单状态 1=未开始,2=提货中,3=已完成,4=已结算 5=已取消 //开始提货
switch (type){ if ("1".equals(billladingStatus)) {
case 1://开始提货 billladingEntity.setBillladingStatus("2");
if("1".equals(billladingStatus)){ billladingEntity.setStartTime(new Date());
billladingEntity.setBillladingStatus("2"); stringBuffer.append(",未开始变更为提货中");
billladingEntity.setStartTime(new Date()); } else {
stringBuffer.append(",未开始变更为提货中"); log.warn("##################updateBillladingStatus: 提货单不能更新为提货中 billladingStatus={}", billladingStatus);
}else{ throw new CustomerException(405, "提货单不能更新为提货中");
log.warn("##################updateBillladingStatus: 提货单不能更新为提货中 billladingStatus={}",billladingStatus); }
throw new CustomerException(405,"提货单不能更新为提货中"); break;
} case 2:
break; //提货完成
case 2://提货完成 if ("2".equals(billladingStatus)) {
if("2".equals(billladingStatus)){ billladingEntity.setBillladingStatus("3");
billladingEntity.setBillladingStatus("3"); billladingEntity.setEndTime(new Date());
billladingEntity.setEndTime(new Date()); stringBuffer.append(",提货中变更为提货完成");
stringBuffer.append(",提货中变更为提货完成"); } else {
}else{ log.warn("##################updateBillladingStatus: 提货单不能更新为已完成 billladingStatus={}", billladingStatus);
log.warn("##################updateBillladingStatus: 提货单不能更新为已完成 billladingStatus={}",billladingStatus); throw new CustomerException(405, "提货单不能更新为已完成");
throw new CustomerException(405,"提货单不能更新为已完成"); }
} break;
break; case 3:
case 3://取消完成 //取消完成
if("3".equals(billladingStatus)){ if ("3".equals(billladingStatus)) {
billladingEntity.setBillladingStatus("2"); billladingEntity.setBillladingStatus("2");
billladingEntity.setEndTime(null); billladingEntity.setEndTime(null);
stringBuffer.append(",提货完成变更为提货中"); stringBuffer.append(",提货完成变更为提货中");
}else{ } else {
log.warn("##################updateBillladingStatus: 提货单不能更新为提货中 billladingStatus={}",billladingStatus); log.warn("##################updateBillladingStatus: 提货单不能更新为提货中 billladingStatus={}", billladingStatus);
throw new CustomerException(405,"提货单不能更新为提货中"); throw new CustomerException(405, "提货单不能更新为提货中");
} }
break; break;
case 4://结算 case 4:
if("3".equals(billladingStatus)){ //结算
Date date = new Date(); if ("3".equals(billladingStatus)) {
billladingEntity.setBillladingStatus("4"); Date date = new Date();
billladingEntity.setSettlementTime(date); billladingEntity.setBillladingStatus("4");
billladingEntity.setSettlementId(AuthUtil.getUserId()); billladingEntity.setSettlementTime(date);
billladingEntity.setSettlementName(AuthUtil.getUserName()); billladingEntity.setSettlementId(AuthUtil.getUserId());
stringBuffer.append(",提货完成变更为已结算,时间"+ CommonUtil.dateToString(date)+",变更人"+AuthUtil.getUserName()); billladingEntity.setSettlementName(AuthUtil.getUserName());
}else{ stringBuffer.append(",提货完成变更为已结算,时间").append(CommonUtil.dateToString(date)).append(",变更人").append(AuthUtil.getUserName());
log.warn("##################updateBillladingStatus: 提货单不能更新为已结算 billladingStatus={}",billladingStatus); } else {
throw new CustomerException(405,"提货单不能更新为提货中"); log.warn("##################updateBillladingStatus: 提货单不能更新为已结算 billladingStatus={}", billladingStatus);
} throw new CustomerException(405, "提货单不能更新为提货中");
break; }
case 5://取消结算 break;
if("4".equals(billladingStatus)){ case 5:
billladingEntity.setBillladingStatus("3"); //取消结算
billladingEntity.setSettlementTime(null); if ("4".equals(billladingStatus)) {
billladingEntity.setSettlementId(null); billladingEntity.setBillladingStatus("3");
billladingEntity.setSettlementName(null); billladingEntity.setSettlementTime(null);
stringBuffer.append(",已结算变更为提货完成,时间"+ CommonUtil.dateToString(new Date())+",变更人"+AuthUtil.getUserName()); billladingEntity.setSettlementId(null);
}else{ billladingEntity.setSettlementName(null);
log.warn("##################updateBillladingStatus: 提货单不能更新为提货完成 billladingStatus={}",billladingStatus); stringBuffer.append(",已结算变更为提货完成,时间").append(CommonUtil.dateToString(new Date())).append(",变更人").append(AuthUtil.getUserName());
throw new CustomerException(405,"提货单不能更新为提货完成"); } else {
} log.warn("##################updateBillladingStatus: 提货单不能更新为提货完成 billladingStatus={}", billladingStatus);
break; throw new CustomerException(405, "提货单不能更新为提货完成");
case 6://取消提货 }
billladingEntity.setBillladingStatus("5"); break;
stringBuffer.append(",变更为取消提货,时间"+ CommonUtil.dateToString(new Date())+",变更人"+AuthUtil.getUserName()); case 6:
break; //取消提货
default: billladingEntity.setBillladingStatus("5");
log.warn("#############updateBillladingStatus: 未知的更新操作"); stringBuffer.append(",变更为取消提货,时间").append(CommonUtil.dateToString(new Date())).append(",变更人").append(AuthUtil.getUserName());
throw new CustomerException(405,"未知的更新操作"); break;
default:
log.warn("#############updateBillladingStatus: 未知的更新操作");
throw new CustomerException(405, "未知的更新操作");
}
//更新状态
updateById(billladingEntity);
logEntity.setContent(stringBuffer.toString());
logEntity.setAfterOpreation(JSON.toJSONString(billladingEntity));
trunklineBillladingLogService.save(logEntity);
} else {
log.warn("##################updateBillladingStatus: 提货单不存在 billladingId={}", billladingId);
throw new CustomerException(405, "提货单不存在");
} }
//更新状态
updateById(billladingEntity);
logEntity.setContent(stringBuffer.toString());
logEntity.setAfterOpreation(JSONObject.toJSONString(billladingEntity));
trunklineBillladingLogService.save(logEntity);
} }
@Override @Override
@ -548,15 +553,9 @@ public class TrunklineBillladingServiceImpl extends BaseServiceImpl<TrunklineBil
@Override @Override
public List<TrunklineBillladingDetailListVO> findAdvanceDetailList(BillladingDTO billladingDTO) { public List<TrunklineBillladingDetailListVO> findAdvanceDetailList(BillladingDTO billladingDTO) {
// Integer pageNum = billladingDTO.getPageNum();
// Integer pageSize = billladingDTO.getPageSize();
String orderCode = billladingDTO.getOrderCode();
// IPage<Object> page = new Page<>();
// page.setCurrent(pageNum);
// page.setSize(pageSize);
List<TrunklineBillladingDetailListVO> ls = baseMapper.findAdvanceDetailList(orderCode); String orderCode = billladingDTO.getOrderCode();
return ls; return baseMapper.findAdvanceDetailList(orderCode);
} }
} }

3
blade-service/logpm-trunkline/src/main/java/com/logpm/trunkline/service/impl/TrunklineCarsLoadLineServiceImpl.java

@ -31,7 +31,8 @@ public class TrunklineCarsLoadLineServiceImpl extends BaseServiceImpl<TrunklineC
public TrunklineCarsLoadLineEntity findEntityByLoadIdAndNodeId(Long loadId, Long nodeId) { public TrunklineCarsLoadLineEntity findEntityByLoadIdAndNodeId(Long loadId, Long nodeId) {
QueryWrapper<TrunklineCarsLoadLineEntity> queryWrapper = new QueryWrapper<>(); QueryWrapper<TrunklineCarsLoadLineEntity> queryWrapper = new QueryWrapper<>();
queryWrapper.eq("load_id",loadId) queryWrapper.eq("load_id",loadId)
.eq("node_id",nodeId); .eq("node_id",nodeId)
.eq("is_deleted",0);
return baseMapper.selectOne(queryWrapper); return baseMapper.selectOne(queryWrapper);
} }

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

@ -298,4 +298,9 @@ public class TrunklineCarsLoadScanServiceImpl extends BaseServiceImpl<TrunklineC
return baseMapper.findWaybillTransferInfo(waybillId); return baseMapper.findWaybillTransferInfo(waybillId);
} }
@Override
public List<LoadingDetailExportVO> loadingDetailExport(LoadCarsDTO loadCarsDTO) {
return baseMapper.loadingDetailExport(loadCarsDTO);
}
} }

146
blade-service/logpm-trunkline/src/main/java/com/logpm/trunkline/service/impl/TrunklineCarsLoadServiceImpl.java

@ -29,73 +29,11 @@ import com.logpm.factorydata.enums.BrandEnums;
import com.logpm.factorydata.util.FactoryDataMessageSender; import com.logpm.factorydata.util.FactoryDataMessageSender;
import com.logpm.factorydata.vo.NodePushMsg; import com.logpm.factorydata.vo.NodePushMsg;
import com.logpm.trunkline.bean.Resp; import com.logpm.trunkline.bean.Resp;
import com.logpm.trunkline.dto.BatchUnloadDTO; import com.logpm.trunkline.dto.*;
import com.logpm.trunkline.dto.InComingDTO; import com.logpm.trunkline.entity.*;
import com.logpm.trunkline.dto.LoadCarsDTO;
import com.logpm.trunkline.dto.LoadScanBrandDTO;
import com.logpm.trunkline.dto.LoadingPackageDTO;
import com.logpm.trunkline.dto.LoadingZeroDTO;
import com.logpm.trunkline.dto.ProductInfoDTO;
import com.logpm.trunkline.dto.TrunklineCarsLoadDTO;
import com.logpm.trunkline.dto.TrunklineCarsLoadLineDTO;
import com.logpm.trunkline.dto.TrunklineCarsOrderDTO;
import com.logpm.trunkline.dto.UnloadPackageDTO;
import com.logpm.trunkline.dto.UnloadZeroDTO;
import com.logpm.trunkline.entity.TrunklineAdvanceDetailEntity;
import com.logpm.trunkline.entity.TrunklineCarsLoadContractEntity;
import com.logpm.trunkline.entity.TrunklineCarsLoadEntity;
import com.logpm.trunkline.entity.TrunklineCarsLoadFinanceEntity;
import com.logpm.trunkline.entity.TrunklineCarsLoadLineEntity;
import com.logpm.trunkline.entity.TrunklineCarsLoadLogEntity;
import com.logpm.trunkline.entity.TrunklineCarsLoadScanEntity;
import com.logpm.trunkline.entity.TrunklineCarsOrderEntity;
import com.logpm.trunkline.entity.TrunklineCostShareRecordEntity;
import com.logpm.trunkline.entity.TrunklineLoadSignOrderEntity;
import com.logpm.trunkline.entity.TrunklineLoadSignPhotoEntity;
import com.logpm.trunkline.mapper.TrunklineCarsLoadMapper; import com.logpm.trunkline.mapper.TrunklineCarsLoadMapper;
import com.logpm.trunkline.service.ICarsLoadAsyncService; import com.logpm.trunkline.service.*;
import com.logpm.trunkline.service.IInComingService; import com.logpm.trunkline.vo.*;
import com.logpm.trunkline.service.IOpenOrderAsyncService;
import com.logpm.trunkline.service.IPackageTrackLogAsyncService;
import com.logpm.trunkline.service.ITrunklineAdvanceDetailService;
import com.logpm.trunkline.service.ITrunklineCarsLoadContractService;
import com.logpm.trunkline.service.ITrunklineCarsLoadFinanceService;
import com.logpm.trunkline.service.ITrunklineCarsLoadLineService;
import com.logpm.trunkline.service.ITrunklineCarsLoadLogService;
import com.logpm.trunkline.service.ITrunklineCarsLoadScanService;
import com.logpm.trunkline.service.ITrunklineCarsLoadService;
import com.logpm.trunkline.service.ITrunklineCarsLoadingLogService;
import com.logpm.trunkline.service.ITrunklineCarsOrderService;
import com.logpm.trunkline.service.ITrunklineCarsSignLogService;
import com.logpm.trunkline.service.ITrunklineCarsUnloadLogService;
import com.logpm.trunkline.service.ITrunklineCostShareRecordService;
import com.logpm.trunkline.service.ITrunklineLoadSignOrderService;
import com.logpm.trunkline.service.ITrunklineLoadSignPhotoService;
import com.logpm.trunkline.service.ITrunklineWaybillOrderService;
import com.logpm.trunkline.vo.CarsLoadAllOrderVO;
import com.logpm.trunkline.vo.CarsLoadOrderInfoVO;
import com.logpm.trunkline.vo.CarsLoadWaybillInfoVO;
import com.logpm.trunkline.vo.HasNotFinalNodeIdDataVO;
import com.logpm.trunkline.vo.LoadScanFinalNodeIdVO;
import com.logpm.trunkline.vo.LoadScanOrderVO;
import com.logpm.trunkline.vo.LoadZeroListVO;
import com.logpm.trunkline.vo.LoadingListGoodsVO;
import com.logpm.trunkline.vo.LoadingListMainVO;
import com.logpm.trunkline.vo.NodeNumDataVO;
import com.logpm.trunkline.vo.OrderScanDetailVO;
import com.logpm.trunkline.vo.SignOrderDetailVO;
import com.logpm.trunkline.vo.SignPackageVO;
import com.logpm.trunkline.vo.SignScanOrderVO;
import com.logpm.trunkline.vo.TripartiteTransferVO;
import com.logpm.trunkline.vo.TrunklineCarsLoadLoadingListVO;
import com.logpm.trunkline.vo.TrunklineCarsLoadScanVO;
import com.logpm.trunkline.vo.TrunklineCarsLoadVO;
import com.logpm.trunkline.vo.TrunklineLoadSignOrderVO;
import com.logpm.trunkline.vo.UnloadPackageVO;
import com.logpm.trunkline.vo.UnloadScanOrderVO;
import com.logpm.trunkline.vo.UnloadZeroVO;
import com.logpm.trunkline.vo.WaybillCarsLoadVO;
import com.logpm.trunkline.vo.ZeroSuppleVO;
import com.logpm.warehouse.entity.WarehouseWayBillDetail; import com.logpm.warehouse.entity.WarehouseWayBillDetail;
import com.logpm.warehouse.entity.WarehouseWaybillEntity; import com.logpm.warehouse.entity.WarehouseWaybillEntity;
import com.logpm.warehouse.feign.IWarehouseTrayTypeClient; import com.logpm.warehouse.feign.IWarehouseTrayTypeClient;
@ -105,11 +43,7 @@ import com.logpm.warehouse.feign.IWarehouseWaybillDetailClient;
import lombok.AllArgsConstructor; import lombok.AllArgsConstructor;
import lombok.extern.slf4j.Slf4j; import lombok.extern.slf4j.Slf4j;
import org.apache.commons.lang.StringEscapeUtils; import org.apache.commons.lang.StringEscapeUtils;
import org.springblade.common.constant.CodeNumConstant; import org.springblade.common.constant.*;
import org.springblade.common.constant.DictBizConstant;
import org.springblade.common.constant.IncomingTypeEnum;
import org.springblade.common.constant.RabbitConstant;
import org.springblade.common.constant.WorkNodeEnums;
import org.springblade.common.constant.carsload.CarsLoadLogTypeConstant; import org.springblade.common.constant.carsload.CarsLoadLogTypeConstant;
import org.springblade.common.exception.CustomerException; import org.springblade.common.exception.CustomerException;
import org.springblade.common.utils.CommonUtil; import org.springblade.common.utils.CommonUtil;
@ -128,14 +62,8 @@ import org.springframework.stereotype.Service;
import org.springframework.transaction.annotation.Transactional; import org.springframework.transaction.annotation.Transactional;
import java.math.BigDecimal; import java.math.BigDecimal;
import java.util.ArrayList; import java.util.*;
import java.util.Date; import java.util.stream.Collectors;
import java.util.HashMap;
import java.util.List;
import java.util.Map;
import java.util.Objects;
import java.util.Set;
import java.util.TreeSet;
@Slf4j @Slf4j
@Service @Service
@ -186,15 +114,24 @@ public class TrunklineCarsLoadServiceImpl extends BaseServiceImpl<TrunklineCarsL
IPage<TrunklineCarsLoadVO> pageList = baseMapper.loadCarsPageList(page, loadCarsDTO); IPage<TrunklineCarsLoadVO> pageList = baseMapper.loadCarsPageList(page, loadCarsDTO);
List<TrunklineCarsLoadVO> records = pageList.getRecords(); List<TrunklineCarsLoadVO> records = pageList.getRecords();
for (TrunklineCarsLoadVO trunklineCarsLoadVO : records) { //把records中的id封装成一个set
Set<Long> idsSet = records.stream()
.map(TrunklineCarsLoadVO::getId) // Assuming getId() method returns the id as an Integer
.collect(Collectors.toSet());
//判空idsSet
if (idsSet.isEmpty()) {
return pageList;
}
//使用trunklineCarsLoadLineService通过idsSet关联loadId批量查询TrunklineCarsLoadLineEntity集合
List<TrunklineCarsLoadLineEntity> loadLineList = trunklineCarsLoadLineService.list(new QueryWrapper<TrunklineCarsLoadLineEntity>().in("load_id", idsSet));
//把loadLineList中对象通过loadId分组
Map<Long, List<TrunklineCarsLoadLineEntity>> loadLineMap = loadLineList.stream()
.collect(Collectors.groupingBy(TrunklineCarsLoadLineEntity::getLoadId));
records.forEach(trunklineCarsLoadVO -> {
Long loadId = trunklineCarsLoadVO.getId(); Long loadId = trunklineCarsLoadVO.getId();
QueryWrapper<TrunklineCarsLoadLineEntity> queryWrapper = new QueryWrapper<>(); List<TrunklineCarsLoadLineEntity> list = loadLineMap.get(loadId);
queryWrapper.eq("is_deleted", 0)
.eq("load_id", loadId)
.orderByAsc("sort");
List<TrunklineCarsLoadLineEntity> list = trunklineCarsLoadLineService.list(queryWrapper);
trunklineCarsLoadVO.setCarsLoadLineList(list); trunklineCarsLoadVO.setCarsLoadLineList(list);
} });
pageList.setRecords(records); pageList.setRecords(records);
return pageList; return pageList;
} }
@ -207,15 +144,24 @@ public class TrunklineCarsLoadServiceImpl extends BaseServiceImpl<TrunklineCarsL
IPage<TrunklineCarsLoadVO> pageList = baseMapper.arriveCarsPageList(page, loadCarsDTO); IPage<TrunklineCarsLoadVO> pageList = baseMapper.arriveCarsPageList(page, loadCarsDTO);
List<TrunklineCarsLoadVO> records = pageList.getRecords(); List<TrunklineCarsLoadVO> records = pageList.getRecords();
for (TrunklineCarsLoadVO trunklineCarsLoadVO : records) { //把records中的id封装成一个set
Set<Long> idsSet = records.stream()
.map(TrunklineCarsLoadVO::getId) // Assuming getId() method returns the id as an Integer
.collect(Collectors.toSet());
//判空idsSet
if (idsSet.isEmpty()) {
return pageList;
}
//使用trunklineCarsLoadLineService通过idsSet关联loadId批量查询TrunklineCarsLoadLineEntity集合
List<TrunklineCarsLoadLineEntity> loadLineList = trunklineCarsLoadLineService.list(new QueryWrapper<TrunklineCarsLoadLineEntity>().in("load_id", idsSet));
//把loadLineList中对象通过loadId分组
Map<Long, List<TrunklineCarsLoadLineEntity>> loadLineMap = loadLineList.stream()
.collect(Collectors.groupingBy(TrunklineCarsLoadLineEntity::getLoadId));
records.forEach(trunklineCarsLoadVO -> {
Long loadId = trunklineCarsLoadVO.getId(); Long loadId = trunklineCarsLoadVO.getId();
QueryWrapper<TrunklineCarsLoadLineEntity> queryWrapper = new QueryWrapper<>(); List<TrunklineCarsLoadLineEntity> list = loadLineMap.get(loadId);
queryWrapper.eq("is_deleted", 0)
.eq("load_id", loadId)
.orderByAsc("sort");
List<TrunklineCarsLoadLineEntity> list = trunklineCarsLoadLineService.list(queryWrapper);
trunklineCarsLoadVO.setCarsLoadLineList(list); trunklineCarsLoadVO.setCarsLoadLineList(list);
} });
pageList.setRecords(records); pageList.setRecords(records);
return pageList; return pageList;
} }
@ -786,7 +732,12 @@ public class TrunklineCarsLoadServiceImpl extends BaseServiceImpl<TrunklineCarsL
//逻辑删除装车扫描表的数据 //逻辑删除装车扫描表的数据
List<Long> carsLoadScanIdList = trunklineCarsLoadScanService.findAllIdListByLoadId(loadId); List<Long> carsLoadScanIdList = trunklineCarsLoadScanService.findAllIdListByLoadId(loadId);
removeCarsLoadScan(StringUtil.join(carsLoadScanIdList, ","), warehouseId); //通过loadId更新carsOrder关联表中的所有订单startNum为0
trunklineCarsOrderService.updateStartNumByLoadIdAndWarehouseId(loadId, warehouseId);
if(CollUtil.isNotEmpty(carsLoadScanIdList)){
removeCarsLoadScan(StringUtil.join(carsLoadScanIdList, ","), warehouseId);
}
try { try {
trunklineCarsLoadLogService.saveLog(carsLoadEntity, currentCarsLoadLineEntity, CarsLoadLogTypeConstant.CANCEL_CARS_LOAD.getValue()); trunklineCarsLoadLogService.saveLog(carsLoadEntity, currentCarsLoadLineEntity, CarsLoadLogTypeConstant.CANCEL_CARS_LOAD.getValue());
@ -2154,6 +2105,7 @@ public class TrunklineCarsLoadServiceImpl extends BaseServiceImpl<TrunklineCarsL
} else { } else {
carsLoadScanEntity.setOrderCode(trunklineAdvanceDetailEntity.getOrderCode()); carsLoadScanEntity.setOrderCode(trunklineAdvanceDetailEntity.getOrderCode());
carsLoadScanEntity.setWaybillNo(trunklineAdvanceDetailEntity.getWaybillNo()); carsLoadScanEntity.setWaybillNo(trunklineAdvanceDetailEntity.getWaybillNo());
carsLoadScanEntity.setWaybillId(trunklineAdvanceDetailEntity.getWaybillId());
carsLoadScanEntity.setIsData(1); carsLoadScanEntity.setIsData(1);
String packageStatus = trunklineAdvanceDetailEntity.getPackageStatus(); String packageStatus = trunklineAdvanceDetailEntity.getPackageStatus();
if ("0".equals(packageStatus)) { if ("0".equals(packageStatus)) {
@ -2512,6 +2464,7 @@ public class TrunklineCarsLoadServiceImpl extends BaseServiceImpl<TrunklineCarsL
IPage<TrunklineCarsLoadVO> pageList = baseMapper.carsLoadPageList(page, loadCarsDTO); IPage<TrunklineCarsLoadVO> pageList = baseMapper.carsLoadPageList(page, loadCarsDTO);
List<TrunklineCarsLoadVO> records = pageList.getRecords(); List<TrunklineCarsLoadVO> records = pageList.getRecords();
//循环records,获取字典值
for (TrunklineCarsLoadVO trunklineCarsLoadVO : records) { for (TrunklineCarsLoadVO trunklineCarsLoadVO : records) {
String loadStatus = trunklineCarsLoadVO.getLoadStatus(); String loadStatus = trunklineCarsLoadVO.getLoadStatus();
String value = DictBizCache.getValue(DictBizConstant.CARS_LOAD_STATUS, loadStatus); String value = DictBizCache.getValue(DictBizConstant.CARS_LOAD_STATUS, loadStatus);
@ -4478,6 +4431,11 @@ public class TrunklineCarsLoadServiceImpl extends BaseServiceImpl<TrunklineCarsL
return R.data(list); return R.data(list);
} }
@Override
public List<LoadingDetailExportVO> loadingDetailExport(LoadCarsDTO loadCarsDTO) {
return trunklineCarsLoadScanService.loadingDetailExport(loadCarsDTO);
}
@Override @Override
public R loadingTrayInfo(LoadCarsDTO loadCarsDTO) { public R loadingTrayInfo(LoadCarsDTO loadCarsDTO) {
log.info("##############loadingTrayInfo: 查询托盘的货物信息"); log.info("##############loadingTrayInfo: 查询托盘的货物信息");

72
blade-service/logpm-warehouse/src/main/java/com/logpm/warehouse/api/WarehouseTrayTypeApiController.java

@ -99,7 +99,7 @@ public class WarehouseTrayTypeApiController {
return R.fail(403,"仓库信息为空"); return R.fail(403,"仓库信息为空");
} }
if(!StringUtil.hasLength(trayCode)){ if(StringUtil.isBlank(trayCode)){
log.warn(method+"托盘码不能为空 trayCode={}",trayCode); log.warn(method+"托盘码不能为空 trayCode={}",trayCode);
return R.fail(403,"托盘码不能为空"); return R.fail(403,"托盘码不能为空");
} }
@ -146,11 +146,11 @@ public class WarehouseTrayTypeApiController {
return R.fail(403,"仓库信息为空"); return R.fail(403,"仓库信息为空");
} }
if(!StringUtil.hasLength(orderCode)){ if(StringUtil.isBlank(orderCode)){
log.warn(method+"订单编号不能为空 orderCode={}",orderCode); log.warn(method+"订单编号不能为空 orderCode={}",orderCode);
return R.fail(403,"订单编号不能为空"); return R.fail(403,"订单编号不能为空");
} }
if(!StringUtil.hasLength(trayCode)){ if(StringUtil.isBlank(trayCode)){
log.warn(method+"订单编号不能为空 trayCode={}",trayCode); log.warn(method+"订单编号不能为空 trayCode={}",trayCode);
return R.fail(403,"订单编号不能为空"); return R.fail(403,"订单编号不能为空");
} }
@ -181,15 +181,15 @@ public class WarehouseTrayTypeApiController {
String trayCode = trayTypeDTO.getTrayCode(); String trayCode = trayTypeDTO.getTrayCode();
String orderPackageCode = trayTypeDTO.getOrderPackageCode();//包条码 String orderPackageCode = trayTypeDTO.getOrderPackageCode();//包条码
if(!StringUtil.hasLength(trayType)){ if(StringUtil.isBlank(trayType)){
log.warn(method+"打托方式不能为空 trayType={}",trayType); log.warn(method+"打托方式不能为空 trayType={}",trayType);
return R.fail(403,"打托方式不能为空"); return R.fail(403,"打托方式不能为空");
} }
if(!StringUtil.hasLength(trayCode)){ if(StringUtil.isBlank(trayCode)){
log.warn(method+"托盘码不能为空 trayCode={}",trayCode); log.warn(method+"托盘码不能为空 trayCode={}",trayCode);
return R.fail(403,"托盘码不能为空"); return R.fail(403,"托盘码不能为空");
} }
if(!StringUtil.hasLength(orderPackageCode)){ if(StringUtil.isBlank(orderPackageCode)){
log.warn(method+"包条码不能为空 orderPackageCode={}",orderPackageCode); log.warn(method+"包条码不能为空 orderPackageCode={}",orderPackageCode);
return R.fail(403,"包条码不能为空"); return R.fail(403,"包条码不能为空");
} }
@ -223,11 +223,11 @@ public class WarehouseTrayTypeApiController {
List<String> orderPackageCodes = trayTypeDTO.getOrderPackageCodes(); List<String> orderPackageCodes = trayTypeDTO.getOrderPackageCodes();
String trayCode = trayTypeDTO.getTrayCode();//托盘码 String trayCode = trayTypeDTO.getTrayCode();//托盘码
if(!StringUtil.hasLength(trayCode)){ if(StringUtil.isBlank(trayCode)){
log.warn(method+"托盘码不能为空 trayCode={}",trayCode); log.warn(method+"托盘码不能为空 trayCode={}",trayCode);
return R.fail(403,"托盘码不能为空"); return R.fail(403,"托盘码不能为空");
} }
if(Objects.isNull(orderPackageCodes)||orderPackageCodes.size() == 0){ if(Objects.isNull(orderPackageCodes)||orderPackageCodes.isEmpty()){
log.warn(method+"包条码不能为空 orderPackageCodes={}",orderPackageCodes); log.warn(method+"包条码不能为空 orderPackageCodes={}",orderPackageCodes);
return R.fail(403,"包条码不能为空"); return R.fail(403,"包条码不能为空");
} }
@ -262,11 +262,11 @@ public class WarehouseTrayTypeApiController {
String orderCode = trayTypeDTO.getOrderCode(); String orderCode = trayTypeDTO.getOrderCode();
String trayCode = trayTypeDTO.getTrayCode();//托盘码 String trayCode = trayTypeDTO.getTrayCode();//托盘码
if(!StringUtil.hasLength(trayCode)){ if(StringUtil.isBlank(trayCode)){
log.warn(method+"托盘码不能为空 trayCode={}",trayCode); log.warn(method+"托盘码不能为空 trayCode={}",trayCode);
return R.fail(403,"托盘码不能为空"); return R.fail(403,"托盘码不能为空");
} }
if(!StringUtil.hasLength(orderCode)){ if(StringUtil.isBlank(orderCode)){
log.warn(method+"订单号不能为空 orderCode={}",orderCode); log.warn(method+"订单号不能为空 orderCode={}",orderCode);
return R.fail(403,"订单号不能为空"); return R.fail(403,"订单号不能为空");
} }
@ -345,7 +345,7 @@ public class WarehouseTrayTypeApiController {
return R.fail(403,"仓库信息为空"); return R.fail(403,"仓库信息为空");
} }
if(!StringUtil.hasLength(trayCode)){ if(StringUtil.isBlank(trayCode)){
log.warn(method+"托盘码不能为空 trayCode={}",trayCode); log.warn(method+"托盘码不能为空 trayCode={}",trayCode);
return R.fail(403,"托盘码不能为空"); return R.fail(403,"托盘码不能为空");
} }
@ -388,7 +388,7 @@ public class WarehouseTrayTypeApiController {
log.warn(method+"仓库信息不能为空"); log.warn(method+"仓库信息不能为空");
return R.fail(403,"仓库信息不能为空"); return R.fail(403,"仓库信息不能为空");
} }
if(!StringUtil.hasLength(waybillCode)){ if(StringUtil.isBlank(waybillCode)){
log.warn(method+"运单号不能为空 waybillCode={}",waybillCode); log.warn(method+"运单号不能为空 waybillCode={}",waybillCode);
return R.fail(403,"运单号不能为空"); return R.fail(403,"运单号不能为空");
} }
@ -420,11 +420,11 @@ public class WarehouseTrayTypeApiController {
log.warn(method+"仓库信息为空 myCurrentWarehouse={}",myCurrentWarehouse); log.warn(method+"仓库信息为空 myCurrentWarehouse={}",myCurrentWarehouse);
return R.fail(403,"仓库信息为空"); return R.fail(403,"仓库信息为空");
} }
if(!StringUtil.hasLength(trayCode)){ if(StringUtil.isBlank(trayCode)){
log.warn(method+"托盘号不能为空 trayCode={}",trayCode); log.warn(method+"托盘号不能为空 trayCode={}",trayCode);
return R.fail(403,"托盘号不能为空"); return R.fail(403,"托盘号不能为空");
} }
if(!StringUtil.hasLength(trayType)){ if(StringUtil.isBlank(trayType)){
log.warn(method+"打托方式不能为空 trayCode={}",trayCode); log.warn(method+"打托方式不能为空 trayCode={}",trayCode);
return R.fail(403,"打托方式不能为空"); return R.fail(403,"打托方式不能为空");
} }
@ -455,11 +455,11 @@ public class WarehouseTrayTypeApiController {
log.warn(method+"仓库信息为空 myCurrentWarehouse={}",myCurrentWarehouse); log.warn(method+"仓库信息为空 myCurrentWarehouse={}",myCurrentWarehouse);
return R.fail(403,"仓库信息为空"); return R.fail(403,"仓库信息为空");
} }
if(!StringUtil.hasLength(trayCode)){ if(StringUtil.isBlank(trayCode)){
log.warn(method+"托盘号不能为空 trayCode={}",trayCode); log.warn(method+"托盘号不能为空 trayCode={}",trayCode);
return R.fail(403,"托盘号不能为空"); return R.fail(403,"托盘号不能为空");
} }
if(!StringUtil.hasLength(orderCode)){ if(StringUtil.isBlank(orderCode)){
log.warn(method+"订单不能为空 trayCode={}",trayCode); log.warn(method+"订单不能为空 trayCode={}",trayCode);
return R.fail(403,"打托方式不能为空"); return R.fail(403,"打托方式不能为空");
} }
@ -480,9 +480,12 @@ public class WarehouseTrayTypeApiController {
public R updateZeroOrderNumByTrayCode(@RequestBody TrayTypeDTO trayTypeDTO) { public R updateZeroOrderNumByTrayCode(@RequestBody TrayTypeDTO trayTypeDTO) {
String method = "###########updateZeroOrderNumByTrayCode: "; String method = "###########updateZeroOrderNumByTrayCode: ";
log.info(method + "更新零担订单数量 trayTypeDTO={}", trayTypeDTO); log.info(method + "更新零担订单数量 trayTypeDTO={}", trayTypeDTO);
String orderCode = trayTypeDTO.getOrderCode();//订单自编码 //订单自编码
String trayCode = trayTypeDTO.getTrayCode();//托盘码 String orderCode = trayTypeDTO.getOrderCode();
Integer num = trayTypeDTO.getNum();//数量 //托盘码
String trayCode = trayTypeDTO.getTrayCode();
//数量
Integer num = trayTypeDTO.getNum();
try{ try{
BasicdataWarehouseEntity myCurrentWarehouse = warehouseClient.getMyCurrentWarehouse(); BasicdataWarehouseEntity myCurrentWarehouse = warehouseClient.getMyCurrentWarehouse();
@ -490,11 +493,11 @@ public class WarehouseTrayTypeApiController {
log.warn(method+"仓库信息为空 myCurrentWarehouse={}",myCurrentWarehouse); log.warn(method+"仓库信息为空 myCurrentWarehouse={}",myCurrentWarehouse);
return R.fail(403,"仓库信息为空"); return R.fail(403,"仓库信息为空");
} }
if(!StringUtil.hasLength(trayCode)){ if(StringUtil.isBlank(trayCode)){
log.warn(method+"托盘号不能为空 trayCode={}",trayCode); log.warn(method+"托盘号不能为空 trayCode={}",trayCode);
return R.fail(403,"托盘号不能为空"); return R.fail(403,"托盘号不能为空");
} }
if(!StringUtil.hasLength(orderCode)){ if(StringUtil.isBlank(orderCode)){
log.warn(method+"订单不能为空 orderCode={}",orderCode); log.warn(method+"订单不能为空 orderCode={}",orderCode);
return R.fail(403,"订单不能为空"); return R.fail(403,"订单不能为空");
} }
@ -524,10 +527,11 @@ public class WarehouseTrayTypeApiController {
public R zeroOrderUpdateRemark(@RequestBody TrayTypeDTO trayTypeDTO) { public R zeroOrderUpdateRemark(@RequestBody TrayTypeDTO trayTypeDTO) {
String method = "###########updateZeroOrderNumByTrayCode: "; String method = "###########updateZeroOrderNumByTrayCode: ";
log.info(method + "更新零担订单数量 trayTypeDTO={}", trayTypeDTO); log.info(method + "更新零担订单数量 trayTypeDTO={}", trayTypeDTO);
String trayCode = trayTypeDTO.getTrayCode();//托盘码 //托盘码
String trayCode = trayTypeDTO.getTrayCode();
String remark = trayTypeDTO.getRemark(); String remark = trayTypeDTO.getRemark();
try{ try{
if(!StringUtil.hasLength(trayCode)){ if(StringUtil.isBlank(trayCode)){
log.warn(method+"托盘号不能为空 trayCode={}",trayCode); log.warn(method+"托盘号不能为空 trayCode={}",trayCode);
return R.fail(403,"托盘号不能为空"); return R.fail(403,"托盘号不能为空");
} }
@ -597,7 +601,7 @@ public class WarehouseTrayTypeApiController {
return R.fail(403,"仓库信息为空"); return R.fail(403,"仓库信息为空");
} }
if(!StringUtil.hasLength(trayCode)){ if(StringUtil.isBlank(trayCode)){
log.warn(method+"托盘码不能为空 trayCode={}",trayCode); log.warn(method+"托盘码不能为空 trayCode={}",trayCode);
return R.fail(403,"托盘码不能为空"); return R.fail(403,"托盘码不能为空");
} }
@ -644,15 +648,15 @@ public class WarehouseTrayTypeApiController {
return R.fail(403,"仓库信息为空"); return R.fail(403,"仓库信息为空");
} }
if(!StringUtil.hasLength(trayCode)){ if(StringUtil.isBlank(trayCode)){
log.warn(method+"托盘码不能为空 trayCode={}",trayCode); log.warn(method+"托盘码不能为空 trayCode={}",trayCode);
return R.fail(403,"托盘码不能为空"); return R.fail(403,"托盘码不能为空");
} }
if(!StringUtil.hasLength(trayType)){ if(StringUtil.isBlank(trayType)){
log.warn(method+"打托方式不能为空 trayType={}",trayType); log.warn(method+"打托方式不能为空 trayType={}",trayType);
return R.fail(403,"打托方式不能为空"); return R.fail(403,"打托方式不能为空");
} }
if(!StringUtil.hasLength(orderPackageCode)){ if(StringUtil.isBlank(orderPackageCode)){
log.warn(method+"包条码不能为空 orderPackageCode={}",orderPackageCode); log.warn(method+"包条码不能为空 orderPackageCode={}",orderPackageCode);
return R.fail(403,"包条码不能为空"); return R.fail(403,"包条码不能为空");
} }
@ -777,7 +781,7 @@ public class WarehouseTrayTypeApiController {
return R.fail(403,"仓库信息为空"); return R.fail(403,"仓库信息为空");
} }
if(!StringUtil.hasLength(trayCode)){ if(StringUtil.isBlank(trayCode)){
log.warn(method+"托盘码不能为空 trayCode={}",trayCode); log.warn(method+"托盘码不能为空 trayCode={}",trayCode);
return R.fail(403,"托盘码不能为空"); return R.fail(403,"托盘码不能为空");
} }
@ -827,7 +831,7 @@ public class WarehouseTrayTypeApiController {
log.warn(method+"商场id不能为空 marketId={}",marketId); log.warn(method+"商场id不能为空 marketId={}",marketId);
return R.fail(403,"商场id不能为空"); return R.fail(403,"商场id不能为空");
} }
if(!StringUtil.hasLength(materialCode)){ if(StringUtil.isBlank(materialCode)){
log.warn(method+"物料编码不能为空 materialCode={}",materialCode); log.warn(method+"物料编码不能为空 materialCode={}",materialCode);
return R.fail(403,"物料编码不能为空"); return R.fail(403,"物料编码不能为空");
} }
@ -863,7 +867,7 @@ public class WarehouseTrayTypeApiController {
log.warn(method+"商场id不能为空 marketId={}",marketId); log.warn(method+"商场id不能为空 marketId={}",marketId);
return R.fail(403,"商场id不能为空"); return R.fail(403,"商场id不能为空");
} }
if(!StringUtil.hasLength(materialName)){ if(StringUtil.isBlank(materialName)){
log.warn(method+"物料名称不能为空 materialCode={}",materialName); log.warn(method+"物料名称不能为空 materialCode={}",materialName);
return R.fail(403,"物料名称不能为空"); return R.fail(403,"物料名称不能为空");
} }
@ -898,19 +902,19 @@ public class WarehouseTrayTypeApiController {
return R.fail(403,"仓库信息不能为空"); return R.fail(403,"仓库信息不能为空");
} }
if(!StringUtil.hasLength(trayCode)){ if(StringUtil.isBlank(trayCode)){
log.warn(method+"托盘码不能为空 trayCode={}",trayCode); log.warn(method+"托盘码不能为空 trayCode={}",trayCode);
return R.fail(403,"托盘码不能为空"); return R.fail(403,"托盘码不能为空");
} }
if(!StringUtil.hasLength(trayType)){ if(StringUtil.isBlank(trayType)){
log.warn(method+"打托方式不能为空 trayType={}",trayType); log.warn(method+"打托方式不能为空 trayType={}",trayType);
return R.fail(403,"打托方式不能为空"); return R.fail(403,"打托方式不能为空");
} }
if(!StringUtil.hasLength(materialCode)){ if(StringUtil.isBlank(materialCode)){
log.warn(method+"物料编码不能为空 materialCode={}",materialCode); log.warn(method+"物料编码不能为空 materialCode={}",materialCode);
return R.fail(403,"物料编码不能为空"); return R.fail(403,"物料编码不能为空");
} }
if(!StringUtil.hasLength(incomingBatch)){ if(StringUtil.isBlank(incomingBatch)){
log.warn(method+"批次号不能为空 incomingBatch={}",incomingBatch); log.warn(method+"批次号不能为空 incomingBatch={}",incomingBatch);
return R.fail(403,"批次号不能为空"); return R.fail(403,"批次号不能为空");
} }

Loading…
Cancel
Save