Browse Source

Merge remote-tracking branch 'origin/dev' into dev

newStockUp
pref_mail@163.com 1 year ago
parent
commit
f1ee88f86d
  1. 31
      blade-biz-common/src/main/java/org/springblade/common/constant/aftersales/ProcessorConditionsStatusConstant.java
  2. 32
      blade-biz-common/src/main/java/org/springblade/common/constant/aftersales/ProcessorProcessingStatusStatusConstant.java
  3. 42
      blade-biz-common/src/main/java/org/springblade/common/constant/aftersales/ProcessorTypesOfStatusConstant.java
  4. 30
      blade-biz-common/src/main/java/org/springblade/common/constant/aftersales/ReturnRecordTypesOfStatusConstant.java
  5. 6
      blade-biz-common/src/main/java/org/springblade/common/constant/aftersales/WorkOrderStatusConstant.java
  6. 30
      blade-biz-common/src/main/java/org/springblade/common/constant/aftersales/WorkOrderTypesOfStatusConstant.java
  7. 7
      blade-service-api/logpm-aftersales-api/src/main/java/com/logpm/aftersales/entity/AftersalesArbitrationOrderEntity.java
  8. 63
      blade-service-api/logpm-aftersales-api/src/main/java/com/logpm/aftersales/entity/AftersalesCompletionRecipientEntity.java
  9. 7
      blade-service-api/logpm-aftersales-api/src/main/java/com/logpm/aftersales/entity/AftersalesReturnRecordEntity.java
  10. 7
      blade-service-api/logpm-aftersales-api/src/main/java/com/logpm/aftersales/entity/AftersalesWorkOrderEntity.java
  11. 6
      blade-service/logpm-aftersales/pom.xml
  12. 31
      blade-service/logpm-aftersales/src/main/java/com/logpm/aftersales/controller/AftersalesReturnRecordController.java
  13. 63
      blade-service/logpm-aftersales/src/main/java/com/logpm/aftersales/controller/AftersalesWorkOrderController.java
  14. 16
      blade-service/logpm-aftersales/src/main/java/com/logpm/aftersales/dto/AftersalesReturnRecordDTO.java
  15. 6
      blade-service/logpm-aftersales/src/main/java/com/logpm/aftersales/dto/AftersalesWorkOrderDTO.java
  16. 41
      blade-service/logpm-aftersales/src/main/java/com/logpm/aftersales/mapper/AftersalesWorkOrderMapper.xml
  17. 10
      blade-service/logpm-aftersales/src/main/java/com/logpm/aftersales/service/IAftersalesReturnRecordService.java
  18. 27
      blade-service/logpm-aftersales/src/main/java/com/logpm/aftersales/service/IAftersalesWorkOrderService.java
  19. 103
      blade-service/logpm-aftersales/src/main/java/com/logpm/aftersales/service/impl/AftersalesReturnRecordServiceImpl.java
  20. 180
      blade-service/logpm-aftersales/src/main/java/com/logpm/aftersales/service/impl/AftersalesWorkOrderServiceImpl.java
  21. 2
      blade-service/logpm-basicdata/src/main/java/com/logpm/basicdata/mapper/BasicdataCarrierMapper.xml
  22. 25
      blade-service/logpm-trunkline/src/main/java/com/logpm/trunkline/api/CarsLoadApiController.java
  23. 5
      blade-service/logpm-trunkline/src/main/java/com/logpm/trunkline/controller/TripartiteTransferController.java
  24. 4
      blade-service/logpm-trunkline/src/main/java/com/logpm/trunkline/mapper/TrunklineCarsLoadScanMapper.java
  25. 6
      blade-service/logpm-trunkline/src/main/java/com/logpm/trunkline/mapper/TrunklineCarsLoadScanMapper.xml
  26. 3
      blade-service/logpm-trunkline/src/main/java/com/logpm/trunkline/service/ITrunklineCarsLoadScanService.java
  27. 2
      blade-service/logpm-trunkline/src/main/java/com/logpm/trunkline/service/ITrunklineCarsLoadService.java
  28. 7
      blade-service/logpm-trunkline/src/main/java/com/logpm/trunkline/service/impl/TrunklineCarsLoadScanServiceImpl.java
  29. 14
      blade-service/logpm-trunkline/src/main/java/com/logpm/trunkline/service/impl/TrunklineCarsLoadServiceImpl.java

31
blade-biz-common/src/main/java/org/springblade/common/constant/aftersales/ProcessorConditionsStatusConstant.java

@ -0,0 +1,31 @@
package org.springblade.common.constant.aftersales;
public enum ProcessorConditionsStatusConstant {
zhengchang("正常","1"),
quciao("取消","3"),
xinzeng("新增","2");
private String name;
private String value;
ProcessorConditionsStatusConstant(String name, String value) {
this.name = name;
this.value = value;
}
public String getName() {
return name;
}
public void setName(String name) {
this.name = name;
}
public String getValue() {
return value;
}
public void setValue(String value) {
this.value = value;
}
}

32
blade-biz-common/src/main/java/org/springblade/common/constant/aftersales/ProcessorProcessingStatusStatusConstant.java

@ -0,0 +1,32 @@
package org.springblade.common.constant.aftersales;
public enum ProcessorProcessingStatusStatusConstant {
daichuli("待处理","1"),
yichuli("已处理","2"),
yichaoshi("已超时","3");
ProcessorProcessingStatusStatusConstant(String name, String value) {
this.name = name;
this.value = value;
}
private String name;
private String value;
public String getName() {
return name;
}
public void setName(String name) {
this.name = name;
}
public String getValue() {
return value;
}
public void setValue(String value) {
this.value = value;
}
}

42
blade-biz-common/src/main/java/org/springblade/common/constant/aftersales/ProcessorTypesOfStatusConstant.java

@ -0,0 +1,42 @@
package org.springblade.common.constant.aftersales;
public enum ProcessorTypesOfStatusConstant {
zerenfang("责任方","1"),
chulifang("处理方","2");
/**
* 状态
*/
private String name;
/**
*
*/
private String value;
private ProcessorTypesOfStatusConstant(String name, String value) {
this.name = name;
this.value = value;
}
public String getName() {
return name;
}
public void setName(String name) {
this.name = name;
}
public String getValue() {
return value;
}
public void setValue(String value) {
this.value = value;
}
}

30
blade-biz-common/src/main/java/org/springblade/common/constant/aftersales/ReturnRecordTypesOfStatusConstant.java

@ -0,0 +1,30 @@
package org.springblade.common.constant.aftersales;
public enum ReturnRecordTypesOfStatusConstant {
yibandahui("一般打回","1"),
wanjeidahui("已完结打回","2")
;
private String name;
private String value;
ReturnRecordTypesOfStatusConstant(String name, String value) {
this.name = name;
this.value = value;
}
public String getName() {
return name;
}
public void setName(String name) {
this.name = name;
}
public String getValue() {
return value;
}
public void setValue(String value) {
this.value = value;
}
}

6
blade-biz-common/src/main/java/org/springblade/common/constant/aftersales/WorkOrderStatusConstant.java

@ -7,7 +7,11 @@ public enum WorkOrderStatusConstant {
chulizhong("处理中","20"),
daishenhe("待审核","40"),
yishenhe("已审核","50"),
chaoshiweichuli("超时未处理","60");
chaoshiweichuli("超时未处理","60"),
zhongchaizhong("仲裁中","70"),
yiwanjei("完结","80"),
lipeijineweichu("理赔金额未出","90")
;
/**

30
blade-biz-common/src/main/java/org/springblade/common/constant/aftersales/WorkOrderTypesOfStatusConstant.java

@ -0,0 +1,30 @@
package org.springblade.common.constant.aftersales;
public enum WorkOrderTypesOfStatusConstant {
kaiqi("开启","1"),
jeishu("结束","2")
;
private String name;
private String value;
WorkOrderTypesOfStatusConstant(String name, String value) {
this.name = name;
this.value = value;
}
public String getName() {
return name;
}
public void setName(String name) {
this.name = name;
}
public String getValue() {
return value;
}
public void setValue(String value) {
this.value = value;
}
}

7
blade-service-api/logpm-aftersales-api/src/main/java/com/logpm/aftersales/entity/AftersalesArbitrationOrderEntity.java

@ -65,11 +65,16 @@ public class AftersalesArbitrationOrderEntity extends TenantEntity {
* 异常工单Id
*/
@ApiModelProperty(value = "异常工单Id")
private String workOrderId;
private Long workOrderId;
/**
* 类型
*/
@ApiModelProperty(value = "类型")
private String typesOf;
/**
* 操作 正常完结 客服完结
*/
@ApiModelProperty(value = "操作 正常完结 客服完结 ")
private String operateType;
}

63
blade-service-api/logpm-aftersales-api/src/main/java/com/logpm/aftersales/entity/AftersalesCompletionRecipientEntity.java

@ -23,6 +23,8 @@ import io.swagger.annotations.ApiModelProperty;
import lombok.EqualsAndHashCode;
import org.springblade.core.tenant.mp.TenantEntity;
import java.math.BigDecimal;
/**
* 异常工单完结处理结果受款方 实体类
*
@ -34,6 +36,65 @@ import org.springblade.core.tenant.mp.TenantEntity;
@ApiModel(value = "AftersalesCompletionRecipient对象", description = "异常工单完结处理结果受款方")
@EqualsAndHashCode(callSuper = true)
public class AftersalesCompletionRecipientEntity extends TenantEntity {
/**
* 预留1
*/
@ApiModelProperty(value = "预留1")
private String reserve1;
/**
* 预留2
*/
@ApiModelProperty(value = "预留2")
private String reserve2;
/**
* 预留3
*/
@ApiModelProperty(value = "预留3")
private String reserve3;
/**
* 预留4
*/
@ApiModelProperty(value = "预留4")
private String reserve4;
/**
* 预留5
*/
@ApiModelProperty(value = "预留5")
private String reserve5;
/**
* 赔款方
*/
@ApiModelProperty(value = "受款方")
private String recipient;
/**
* 原因
*/
@ApiModelProperty(value = "受款原因")
private String reasonReceivingPayment;
/**
* 金额
*/
@ApiModelProperty(value = "金额")
private BigDecimal money;
/**
* 金额
*/
@ApiModelProperty(value = "责任方")
private String responsibleParty;
/**
* 工单号
*/
@ApiModelProperty(value = "工单号")
private String workOrderNumber;
/**
* 异常工单ID
*/
@ApiModelProperty(value = "异常工单ID")
private String workOrderId;
/**
* 仓库ID
*/
@ApiModelProperty(value = "仓库ID")
private String warehouseId;
}

7
blade-service-api/logpm-aftersales-api/src/main/java/com/logpm/aftersales/entity/AftersalesReturnRecordEntity.java

@ -70,7 +70,7 @@ public class AftersalesReturnRecordEntity extends TenantEntity {
* 待处理营业部ID
*/
@ApiModelProperty(value = "待处理营业部ID")
private Long businessId;
private String businessId;
/**
* 待处理营业部名称
*/
@ -81,6 +81,11 @@ public class AftersalesReturnRecordEntity extends TenantEntity {
*/
@ApiModelProperty(value = "打回原因")
private String reasonReturn;
/**
* 打回类型
*/
@ApiModelProperty(value = "打回类型")
private String typesOf;
/**
* 仓库Id
*/

7
blade-service-api/logpm-aftersales-api/src/main/java/com/logpm/aftersales/entity/AftersalesWorkOrderEntity.java

@ -175,7 +175,7 @@ public class AftersalesWorkOrderEntity extends TenantEntity {
* 归属客服ID
*/
@ApiModelProperty(value = "归属客服ID")
private String customerServiceId;
private Long customerServiceId;
/**
* 归属客服名称
*/
@ -234,5 +234,10 @@ public class AftersalesWorkOrderEntity extends TenantEntity {
*/
@ApiModelProperty(value = "操作人")
private String operator;
/**
* 关联工单ID
*/
@ApiModelProperty(value = "关联工单ID")
private Long relatedWorkOrdersId;
}

6
blade-service/logpm-aftersales/pom.xml

@ -56,6 +56,12 @@
<version>3.2.0.RELEASE</version>
<scope>compile</scope>
</dependency>
<dependency>
<groupId>org.springblade</groupId>
<artifactId>blade-system-api</artifactId>
<version>3.2.0.RELEASE</version>
<scope>compile</scope>
</dependency>
</dependencies>
<build>
<plugins>

31
blade-service/logpm-aftersales/src/main/java/com/logpm/aftersales/controller/AftersalesReturnRecordController.java

@ -16,6 +16,8 @@
*/
package com.logpm.aftersales.controller;
import com.logpm.aftersales.dto.AftersalesReturnRecordDTO;
import com.logpm.aftersales.dto.AftersalesWorkOrderDTO;
import io.swagger.annotations.Api;
import io.swagger.annotations.ApiOperation;
import io.swagger.annotations.ApiParam;
@ -23,6 +25,7 @@ import com.github.xiaoymin.knife4j.annotations.ApiOperationSupport;
import lombok.AllArgsConstructor;
import javax.validation.Valid;
import org.springblade.common.constant.aftersales.ReturnRecordTypesOfStatusConstant;
import org.springblade.core.secure.BladeUser;
import org.springblade.core.mp.support.Condition;
import org.springblade.core.mp.support.Query;
@ -127,10 +130,36 @@ public class AftersalesReturnRecordController extends BladeController {
@PostMapping("/batchRepulse")
@ApiOperationSupport(order = 6)
@ApiOperation(value = "新增或修改", notes = "传入aftersalesReturnRecord")
public R batchRepulse(@Valid @RequestBody List<AftersalesReturnRecordEntity> aftersalesReturnRecord) {
public R batchRepulse(@Valid @RequestBody AftersalesReturnRecordDTO aftersalesReturnRecord) {
if(aftersalesReturnRecord.getWorkOrderIds().isEmpty()){
return R.fail("请选择工单!");
}
if(aftersalesReturnRecord.getProcessorList().isEmpty()){
return R.fail("请选择打回的营业部!");
}
aftersalesReturnRecord.setTypesOf(ReturnRecordTypesOfStatusConstant.yibandahui.getValue());
return R.status(aftersalesReturnRecordService.batchRepulse(aftersalesReturnRecord));
}
/**
* 客服异常工单 已完结数据打回操作
*/
@PostMapping("/getCompletedReturned")
@ApiOperationSupport(order = 4)
@ApiOperation(value = "异常工单 已完结数据打回操作", notes = "传入aftersalesWorkOrder")
public R getCompletedReturned(@Valid @RequestBody AftersalesReturnRecordDTO aftersalesReturnRecord) {
if(aftersalesReturnRecord.getWorkOrderIds().isEmpty()){
return R.fail("请选择工单!");
}
if(aftersalesReturnRecord.getProcessorList().isEmpty()){
return R.fail("请选择打回的营业部!");
}
aftersalesReturnRecord.setTypesOf(ReturnRecordTypesOfStatusConstant.wanjeidahui.getValue());
return R.status(aftersalesReturnRecordService.getCompletedReturned(aftersalesReturnRecord));
}
/**
* 异常 工单打回记录 删除
*/

63
blade-service/logpm-aftersales/src/main/java/com/logpm/aftersales/controller/AftersalesWorkOrderController.java

@ -29,11 +29,14 @@ import lombok.AllArgsConstructor;
import javax.validation.Valid;
import lombok.extern.slf4j.Slf4j;
import org.springblade.core.log.exception.ServiceException;
import org.springblade.core.secure.BladeUser;
import org.springblade.core.mp.support.Condition;
import org.springblade.core.mp.support.Query;
import org.springblade.core.secure.utils.AuthUtil;
import org.springblade.core.tool.api.R;
import org.springblade.core.tool.utils.Func;
import org.springblade.system.entity.User;
import org.springframework.web.bind.annotation.*;
import com.baomidou.mybatisplus.core.metadata.IPage;
import com.logpm.aftersales.entity.AftersalesWorkOrderEntity;
@ -99,10 +102,7 @@ public class AftersalesWorkOrderController extends BladeController {
@ApiOperationSupport(order = 2)
@ApiOperation(value = "查询异常完整数据集合", notes = "传入aftersalesWorkOrder")
public R<IPage<AftersalesWorkOrderVO>> getListOwn(@ApiIgnore @RequestParam Map<String, Object> aftersalesWorkOrder, Query query) {
BasicdataWarehouseEntity myCurrentWarehouse = warehouseClient.getMyCurrentWarehouse();
if(ObjectUtils.isNotNull(myCurrentWarehouse)){
aftersalesWorkOrder.put("warehouseId", myCurrentWarehouse.getId());
}
IPage<AftersalesWorkOrderEntity> pages = aftersalesWorkOrderService.pageListOwn(aftersalesWorkOrder, Condition.getPage(query));
return R.data(AftersalesWorkOrderWrapper.build().pageVO(pages));
}
@ -117,12 +117,35 @@ public class AftersalesWorkOrderController extends BladeController {
aftersalesWorkOrderService.getIsItTimeout();
}
/**
* 客服异常工单 查询客服人员信息
*/
@GetMapping("/getCustomerServicePersonnel")
@ApiOperationSupport(order = 2)
@ApiOperation(value = "查询客服人员信息", notes = "传入aftersalesWorkOrder")
public R<List<User>> listUser() {
List<User> list = aftersalesWorkOrderService.getCustomerServicePersonnel();
return R.data(list);
}
/**
* 客服异常工单 查询营业部责任人人员信息
*/
@GetMapping("/getBusinessDepartmentUser")
@ApiOperationSupport(order = 2)
@ApiOperation(value = "查询营业部责任人人员信息", notes = "传入aftersalesWorkOrder")
public R<List<User>> getBusinessDepartmentUser(Long warehouseId) {
List<User> list = aftersalesWorkOrderService.getBusinessDepartmentUser(warehouseId);
return R.data(list);
}
/**
* 客服异常工单 分配处理客服信息
* 客服异常工单 异常工单分配处理客服信息
*/
@PostMapping("/assignCustomerService")
@ApiOperationSupport(order = 2)
@ApiOperation(value = "客服异常工单 分配处理客服信息", notes = "传入aftersalesWorkOrder")
@ApiOperation(value = "客服异常工单 异常工单分配处理客服信息", notes = "传入aftersalesWorkOrder")
public R updateAssignCustomerService(@RequestBody AftersalesWorkOrderDTO aftersalesWorkOrderDTO) {
if(ObjectUtils.isNull( aftersalesWorkOrderDTO.getAssignList() )){
return R.fail("请选择指派的工单 !");
@ -185,6 +208,34 @@ public class AftersalesWorkOrderController extends BladeController {
return R.data(workOrderVO);
}
/**
* 客服异常工单 申请仲裁
*/
@PostMapping("/arbitrate")
@ApiOperationSupport(order = 5)
@ApiOperation(value = "申请仲裁", notes = "传入aftersalesWorkOrder")
public R updateArbitrate (@Valid @RequestBody AftersalesWorkOrderDTO aftersalesWorkOrder) {
log.info("申请仲裁>>>>{}",aftersalesWorkOrder);
if(ObjectUtils.isNull(aftersalesWorkOrder) || aftersalesWorkOrder.getAssignList().isEmpty()){
throw new ServiceException("数据不能为空!!");
}
return R.status(aftersalesWorkOrderService.updateArbitrate(aftersalesWorkOrder));
}
/**
* 客服异常工单 客服仲裁完结操作
*/
@PostMapping("/arbitrateEnd")
@ApiOperationSupport(order = 5)
@ApiOperation(value = "客服异常工单 客服仲裁完结操作", notes = "传入aftersalesWorkOrder")
public R addArbitrateEnd(@Valid @RequestBody AftersalesWorkOrderDTO aftersalesWorkOrder) {
log.info("客服仲裁完结操作》》》{}",aftersalesWorkOrder);
if(ObjectUtils.isNull(aftersalesWorkOrder) || aftersalesWorkOrder.getAssignList().isEmpty()){
throw new ServiceException("数据不能为空!!");
}
return R.status(aftersalesWorkOrderService.addArbitrateEnd(aftersalesWorkOrder));
}
/**
* 客服异常工单 修改
*/

16
blade-service/logpm-aftersales/src/main/java/com/logpm/aftersales/dto/AftersalesReturnRecordDTO.java

@ -20,6 +20,8 @@ import com.logpm.aftersales.entity.AftersalesReturnRecordEntity;
import lombok.Data;
import lombok.EqualsAndHashCode;
import java.util.List;
/**
* 异常 工单打回记录 数据传输对象实体类
*
@ -30,5 +32,19 @@ import lombok.EqualsAndHashCode;
@EqualsAndHashCode(callSuper = true)
public class AftersalesReturnRecordDTO extends AftersalesReturnRecordEntity {
private static final long serialVersionUID = 1L;
/**
* 工单ID
*/
private List<Long> workOrderIds;
/**
* 打回营业部集合
*/
private List<Processor> processorList;
@Data
public static class Processor{
private Long id;
private String name;
}
}

6
blade-service/logpm-aftersales/src/main/java/com/logpm/aftersales/dto/AftersalesWorkOrderDTO.java

@ -72,6 +72,12 @@ public class AftersalesWorkOrderDTO extends AftersalesWorkOrderEntity {
*/
private List<Long> assignList;
/**
* 处理结果
*/
private AftersalesProcessingResultsDTO aftersalesProcessingResultsDTO;
}

41
blade-service/logpm-aftersales/src/main/java/com/logpm/aftersales/mapper/AftersalesWorkOrderMapper.xml

@ -55,6 +55,47 @@
lawo.secondary,lawo.vehicle_route,lawo.deliver_goods_time,lawo.discovery_time,lawo.warehousing_time,lawo.waybill_mall,lawo.remarks,lawo.delivery_time,
lawo.delivery_driver,lawo.work_order_status,lawo.problem_description,lawo.responsible_person,lawo.processed_by
from logpm_aftersales_work_order lawo
<where>
<if test="param.id != null and param.id != '' ">and lawo.id = #{param.id } </if>
<if test="param.workOrderType != null and param.workOrderType != '' ">and lawo.work_order_type = #{param.workOrderType } </if>
<if test="param.initiationIdentification != null and paraminitiationIdentification != '' ">and lawo.initiation_identification = #{param.initiationIdentification } </if>
<if test="param.discoveryNode != null and param.discoveryNode != '' ">and lawo.discovery_node = #{param.discoveryNode } </if>
<if test="param.workOrderNumber != null and param.workOrderNumber != '' ">and lawo.work_order_number = #{param.workOrderNumber } </if>
<if test="param.waybillNumber != null and param.waybillNumber != '' ">and lawo.waybill_number = #{param.waybillNumber } </if>
<if test="param.orderCode != null and param.orderCode != '' ">and lawo.order_code = #{param.orderCode } </if>
<if test="param.trainNumber != null and param.trainNumber != '' ">and lawo.train_number = #{param.trainNumber } </if>
<if test="param.first != null and param.first != '' ">and lawo.first = #{param.first } </if>
<if test="param.secondary != null and param.secondary != '' ">and lawo.secondary = #{param.secondary } </if>
<if test="param.vehicleRoute != null and param.vehicleRoute != '' ">and lawo.vehicle_route = #{param.vehicleRoute } </if>
<!-- create_time >= unix_timestamp('2013-10-24 00:00:00') and create_time <= unix_timestamp('2013-10-24 23:59:59')
date_format(from_unixtime(create_time),'%Y-%m-%d') = date_format(now(),'%Y-%m-%d')
-->
<if test="param.deliverGoodsTime != null and param.deliverGoodsTime != '' ">and date_format(from_unixtime( lawo.deliver_goods_time),'%Y-%m-%d') = date_format(#{param.deliverGoodsTime },'%Y-%m-%d') </if>
<if test="param.discoveryTime != null and param.discoveryTime != '' ">and date_format(from_unixtime(lawo.discovery_time),'%Y-%m-%d') = date_format( #{param.discoveryTime},'%Y-%m-%d') </if>
<if test="param.warehousingTime != null and param.warehousingTime != '' "> and date_format(from_unixtime(lawo.warehousing_time),'%Y-%m-%d') = date_format( #{param.warehousingTime},'%Y-%m-%d') </if>
<if test="param.deliveryTime != null and param.deliveryTime != '' ">and date_format(from_unixtime( lawo.delivery_time),'%Y-%m-%d') = date_format(#{param.deliveryTime} param.deliveryTime,'%Y-%m-%d') </if>
<if test="param.auditTime != null and param.auditTime != '' ">and date_format(from_unixtime(lawo.audit_time),'%Y-%m-%d') = date_format(#{param.auditTime},'%Y-%m-%d') </if>
<if test="param.entryTime != null and param.entryTime != '' ">and date_format(from_unixtime(lawo.entry_time),'%Y-%m-%d') = date_format(#{param.entryTime},'%Y-%m-%d') </if>
<if test="param.overTime != null and param.overTime != '' ">and date_format(from_unixtime(lawo.over_time),'%Y-%m-%d') = date_format(#{param.overTime}),'%Y-%m-%d') </if>
<if test="param.waybillMall != null and param.waybillMall != '' ">and lawo.waybill_mall = #{param.waybillMall } </if>
<if test="param.deliveryDriver != null and param.deliveryDriver != '' ">and lawo.delivery_driver = #{param.deliveryDriver } </if>
<if test="param.workOrderStatus != null and param.workOrderStatus != '' ">and lawo.work_order_status = #{param.workOrderStatus } </if>
<if test="param.customerServiceId != null and param.customerServiceId != '' ">and lawo.customer_service_id = #{param.customerServiceId } </if>
<if test="param.customerServiceName != null and param.customerServiceName != '' ">and lawo.customer_service_name = #{param.customerServiceName } </if>
<if test="param.waybillMallId != null and param.waybillMallId != '' ">and lawo.waybill_mall_id = #{param.waybillMallId } </if>
<if test="param.problemDescription != null and param.problemDescription != '' ">and lawo.problem_description = #{param.problemDescription } </if>
<if test="param.warehouseId != null and param.warehouseId != '' ">and lawo.warehouse_id = #{param.warehouseId } </if>
<if test="param.personResponsible != null and param.personResponsible != '' ">and lawo.person_responsible = #{param.personResponsible } </if>
<if test="param.processNumber != null and param.processNumber != '' ">and lawo.process_number = #{param.processNumber } </if>
<if test="param.reviewedBy != null and param.reviewedBy != '' ">and lawo.reviewed_by = #{param.reviewedBy } </if>
<if test="param.operator != null and param.operator != '' ">and lawo.operator = #{param.operator } </if>
<if test="param.responsiblePerson != null and param.responsiblePerson != '' ">and lawo.responsible_person = #{param.responsiblePerson } </if>
<if test="param.processedBy != null and param.processedBy != '' ">and lawo.processed_by = #{param.processedBy} </if>
<if test="param.investigationProcess != null and param.investigationProcess != '' ">and lawo.investigation_process = #{param.investigationProcess } </if>
<if test="param.relatedWorkOrdersId != null and param.relatedWorkOrdersId != '' ">and lawo.related_work_orders_id = #{param.relatedWorkOrdersId } </if>
</where>
</select>
<update id="updateList">

10
blade-service/logpm-aftersales/src/main/java/com/logpm/aftersales/service/IAftersalesReturnRecordService.java

@ -17,6 +17,7 @@
package com.logpm.aftersales.service;
import com.baomidou.mybatisplus.core.conditions.Wrapper;
import com.logpm.aftersales.dto.AftersalesReturnRecordDTO;
import com.logpm.aftersales.entity.AftersalesReturnRecordEntity;
import com.logpm.aftersales.vo.AftersalesReturnRecordVO;
import com.logpm.aftersales.excel.AftersalesReturnRecordExcel;
@ -61,5 +62,12 @@ public interface IAftersalesReturnRecordService extends BaseService<AftersalesRe
* @param aftersalesReturnRecord
* @return
*/
boolean batchRepulse(List<AftersalesReturnRecordEntity> aftersalesReturnRecord);
boolean batchRepulse(AftersalesReturnRecordDTO aftersalesReturnRecord);
/**
* 异常工单 已完结数据打回操作
* @param aftersalesWorkOrder
* @return
*/
boolean getCompletedReturned(AftersalesReturnRecordDTO aftersalesWorkOrder);
}

27
blade-service/logpm-aftersales/src/main/java/com/logpm/aftersales/service/IAftersalesWorkOrderService.java

@ -23,6 +23,7 @@ import com.logpm.aftersales.excel.AftersalesWorkOrderExcel;
import com.baomidou.mybatisplus.core.metadata.IPage;
import org.springblade.core.mp.base.BaseService;
import org.springblade.core.tool.api.R;
import org.springblade.system.entity.User;
import java.util.List;
import java.util.Map;
@ -129,4 +130,30 @@ public interface IAftersalesWorkOrderService extends BaseService<AftersalesWorkO
* @param isCovered
*/
void importUser(List<AftersalesWorkOrderExcel> data, Boolean isCovered);
/**
* 查询客服信息
* @return
*/
List<User> getCustomerServicePersonnel();
/**
* 申请仲裁
* @param aftersalesWorkOrder
* @return
*/
boolean updateArbitrate(AftersalesWorkOrderDTO aftersalesWorkOrder);
/**
* 异常工单 客服仲裁完结
* @param aftersalesWorkOrder
* @return
*/
boolean addArbitrateEnd(AftersalesWorkOrderDTO aftersalesWorkOrder);
/**
* 查询营业部责任人
* @return
*/
List<User> getBusinessDepartmentUser(Long warehouseId);
}

103
blade-service/logpm-aftersales/src/main/java/com/logpm/aftersales/service/impl/AftersalesReturnRecordServiceImpl.java

@ -17,22 +17,30 @@
package com.logpm.aftersales.service.impl;
import cn.hutool.core.util.ObjectUtil;
import com.logpm.aftersales.entity.AftersalesReturnRecordEntity;
import com.logpm.aftersales.entity.AftersalesWorkOrderEntity;
import com.logpm.aftersales.service.IAftersalesWorkOrderService;
import com.baomidou.mybatisplus.core.toolkit.Wrappers;
import com.logpm.aftersales.dto.AftersalesReturnRecordDTO;
import com.logpm.aftersales.dto.AftersalesWorkOrderDTO;
import com.logpm.aftersales.entity.*;
import com.logpm.aftersales.service.*;
import com.logpm.aftersales.vo.AftersalesReturnRecordVO;
import com.logpm.aftersales.excel.AftersalesReturnRecordExcel;
import com.logpm.aftersales.mapper.AftersalesReturnRecordMapper;
import com.logpm.aftersales.service.IAftersalesReturnRecordService;
import com.logpm.aftersales.vo.AftersalesWorkOrderVO;
import lombok.AllArgsConstructor;
import org.springblade.common.constant.aftersales.ProcessorConditionsStatusConstant;
import org.springblade.common.constant.aftersales.ProcessorProcessingStatusStatusConstant;
import org.springblade.common.constant.aftersales.ProcessorTypesOfStatusConstant;
import org.springblade.common.constant.aftersales.WorkOrderStatusConstant;
import org.springframework.beans.factory.annotation.Autowired;
import org.springblade.core.log.exception.ServiceException;
import org.springblade.core.tool.utils.BeanUtil;
import org.springframework.stereotype.Service;
import com.baomidou.mybatisplus.core.conditions.Wrapper;
import com.baomidou.mybatisplus.core.metadata.IPage;
import org.springblade.core.mp.base.BaseServiceImpl;
import java.util.ArrayList;
import java.util.List;
import java.util.stream.Collectors;
/**
* 异常 工单打回记录 服务实现类
@ -46,6 +54,9 @@ public class AftersalesReturnRecordServiceImpl extends BaseServiceImpl<Aftersale
private final IAftersalesWorkOrderService aftersalesWorkOrderService;
private final IAftersalesProcessorService aftersalesProcessorService;
private final IAftersalesAbnormalPackageService aftersalesAbnormalPackageService;
private final IAftersalesDecreaseImageService aftersalesDecreaseImageService;
@Override
public IPage<AftersalesReturnRecordVO> selectAftersalesReturnRecordPage(IPage<AftersalesReturnRecordVO> page, AftersalesReturnRecordVO aftersalesReturnRecord) {
@ -93,20 +104,90 @@ public class AftersalesReturnRecordServiceImpl extends BaseServiceImpl<Aftersale
* @return
*/
@Override
public boolean batchRepulse(List<AftersalesReturnRecordEntity> aftersalesReturnRecord) {
if(ObjectUtil.isNull(aftersalesReturnRecord)){
aftersalesReturnRecord.forEach( i ->{
public boolean batchRepulse(AftersalesReturnRecordDTO aftersalesReturnRecord) {
if(ObjectUtil.isNotNull(aftersalesReturnRecord)){
List<AftersalesProcessorEntity> processorEntityList = new ArrayList<>();
//打回的异常工单
aftersalesReturnRecord.getWorkOrderIds().forEach( i ->{
//查询处理方
List<AftersalesProcessorEntity> list = aftersalesProcessorService.list(Wrappers.<AftersalesProcessorEntity>query().lambda()
.eq(AftersalesProcessorEntity::getWorkOrderId, i)
.eq(AftersalesProcessorEntity::getTypesOf, ProcessorTypesOfStatusConstant.chulifang.getValue())
);
if(!list.isEmpty()){
//删除
List<Long> collect = list.stream().map(AftersalesProcessorEntity::getId).collect(Collectors.toList());
aftersalesProcessorService.deleteLogic(collect);
}
//直接添加
aftersalesReturnRecord.getProcessorList().forEach(q ->{
AftersalesProcessorEntity processor = new AftersalesProcessorEntity();
processor.setBusinessId(q.getId());
processor.setBusinessName(q.getName());
processor.setProcessingStatus(ProcessorProcessingStatusStatusConstant.daichuli.getValue());
processor.setConditions(ProcessorConditionsStatusConstant.xinzeng.getValue());
processor.setTypesOf(ProcessorTypesOfStatusConstant.chulifang.getValue());
processor.setWorkOrderId(i);
processorEntityList.add(processor);
});
//修改异常工单的状态
AftersalesWorkOrderEntity workOrderEntity = new AftersalesWorkOrderVO();
workOrderEntity.setId(i.getWorkOrderId());
workOrderEntity.setId(i);
workOrderEntity.setWorkOrderStatus(WorkOrderStatusConstant.daichuli.getValue());
aftersalesWorkOrderService.updateById(workOrderEntity);
//添加
baseMapper.insert(i);
AftersalesReturnRecordEntity returnRecordEntity = new AftersalesReturnRecordEntity();
BeanUtil.copyProperties(aftersalesReturnRecord,returnRecordEntity);
returnRecordEntity.setWorkOrderId(i);
baseMapper.insert(returnRecordEntity);
});
return true;
}
return false;
}
/**
* 异常工单 已完结数据打回操作
* @param aftersalesReturnRecordDTO
* @return
*/
@Override
public boolean getCompletedReturned(AftersalesReturnRecordDTO aftersalesReturnRecordDTO) {
if(ObjectUtil.isNotNull(aftersalesReturnRecordDTO)){
for (Long workOrderId : aftersalesReturnRecordDTO.getWorkOrderIds()) {
//查询是不是已完结的工单
AftersalesWorkOrderEntity byId = aftersalesWorkOrderService.getById(workOrderId);
if(!byId.getWorkOrderStatus().equals(WorkOrderStatusConstant.yiwanjei.getValue())){
throw new ServiceException("包含不属于已完结的异常工单!!");
}
//添加异常打回记录
AftersalesReturnRecordEntity returnRecordEntity = new AftersalesReturnRecordEntity();
BeanUtil.copyProperties(aftersalesReturnRecordDTO,returnRecordEntity);
baseMapper.insert(returnRecordEntity);
//查询包件信息
List<AftersalesAbnormalPackageEntity> list1 = aftersalesAbnormalPackageService.list(Wrappers.<AftersalesAbnormalPackageEntity>query().lambda()
.eq(AftersalesAbnormalPackageEntity::getWorkOrderId, workOrderId)
);
//查询处理方和责任方
List<AftersalesProcessorEntity> list = aftersalesProcessorService.list(Wrappers.<AftersalesProcessorEntity>query().lambda()
.eq(AftersalesProcessorEntity::getWorkOrderId, workOrderId)
.apply("conditions in (1,2)")
);
//查询图片信息
List<AftersalesDecreaseImageEntity> list2 = aftersalesDecreaseImageService.list(Wrappers.<AftersalesDecreaseImageEntity>query().lambda()
.eq(AftersalesDecreaseImageEntity::getWorkOrderId, workOrderId)
);
//添加异常工单
AftersalesWorkOrderDTO aftersalesWorkOrderDTO = new AftersalesWorkOrderDTO();
BeanUtil.copyProperties(byId,aftersalesWorkOrderDTO);
aftersalesWorkOrderDTO.setDecreaseImageEntityList(list2);
aftersalesWorkOrderDTO.setPackageEntityList(list1);
aftersalesWorkOrderDTO.setProcessorEntityList(list);
aftersalesWorkOrderDTO.setRelatedWorkOrdersId(workOrderId);
aftersalesWorkOrderService.saveOrUpdateOwn(aftersalesWorkOrderDTO);
}
return true;
}
return false;
}
}

180
blade-service/logpm-aftersales/src/main/java/com/logpm/aftersales/service/impl/AftersalesWorkOrderServiceImpl.java

@ -35,6 +35,7 @@ import lombok.AllArgsConstructor;
import lombok.extern.slf4j.Slf4j;
import org.springblade.common.constant.DictBizConstant;
import org.springblade.common.constant.aftersales.WorkOrderStatusConstant;
import org.springblade.common.constant.aftersales.WorkOrderTypesOfStatusConstant;
import org.springblade.core.log.exception.ServiceException;
import org.springblade.core.mp.support.Condition;
import org.springblade.core.secure.BladeUser;
@ -43,6 +44,10 @@ import org.springblade.core.tool.api.R;
import org.springblade.core.tool.constant.BladeConstant;
import org.springblade.core.tool.utils.BeanUtil;
import org.springblade.system.cache.DictBizCache;
import org.springblade.system.entity.DictBiz;
import org.springblade.system.entity.User;
import org.springblade.system.feign.ISysClient;
import org.springblade.system.feign.IUserSearchClient;
import org.springframework.stereotype.Service;
import com.baomidou.mybatisplus.core.metadata.IPage;
import org.springblade.core.mp.base.BaseServiceImpl;
@ -54,10 +59,7 @@ import java.time.Duration;
import java.time.Instant;
import java.time.LocalDateTime;
import java.time.ZoneOffset;
import java.util.ArrayList;
import java.util.Date;
import java.util.List;
import java.util.Map;
import java.util.*;
import java.util.stream.Collectors;
/**
@ -78,10 +80,17 @@ public class AftersalesWorkOrderServiceImpl extends BaseServiceImpl<AftersalesWo
private final IAftersalesCompletionRecipientService completionRecipientService;
private final IAftersalesProcessingResultsService aftersalesProcessingResultsService;
private final IAftersalesOvertimeFineService aftersalesOvertimeFineService;
private final IAftersalesArbitrationOrderService aftersalesArbitrationOrderService;
private final IBasicdataWarehouseClient warehouseClient;
private final ISysClient sysClient;
private final IUserSearchClient userSearchClient;
@Override
public IPage<AftersalesWorkOrderVO> selectAftersalesWorkOrderPage(IPage<AftersalesWorkOrderVO> page, AftersalesWorkOrderVO aftersalesWorkOrder) {
return page.setRecords(baseMapper.selectAftersalesWorkOrderPage(page, aftersalesWorkOrder));
@ -298,9 +307,8 @@ public class AftersalesWorkOrderServiceImpl extends BaseServiceImpl<AftersalesWo
}
//添加赔付方信息
completionRecordService.saveBatch(v.getCompletionRecordEntities());
//添加受款方信息,可以为空
if(ObjectUtils.isNull(v.getCompletionRecipientEntities())){
if(ObjectUtils.isNotNull(v.getCompletionRecipientEntities())){
completionRecipientService.saveBatch(v.getCompletionRecipientEntities());
}
});
@ -316,6 +324,55 @@ public class AftersalesWorkOrderServiceImpl extends BaseServiceImpl<AftersalesWo
*/
@Override
public IPage<AftersalesWorkOrderEntity> pageListOwn(Map<String, Object> aftersalesWorkOrder, IPage<Object> page) {
//查询用户角色信息
BladeUser user = AuthUtil.getUser();
String roleName = user.getRoleName();
String tenantId = user.getTenantId();
//查询客服岗位
List<DictBiz> warehouseType = DictBizCache.getList("after_sales_visits");
if (warehouseType.isEmpty()) {
throw new ServiceException("注意,注意!售后访问字典未配置!请配置!");
} else {
Optional<DictBiz> first = warehouseType.stream().filter(i -> {
if (i.getDictKey().equals(roleName)) {
return true;
}
return false;
}).findFirst();
if(first.isPresent()){
//存在
DictBiz dictBiz = first.get();
String dictValue = dictBiz.getDictValue();
switch (dictValue){
case "1": //客服经理 查询全部待处理工单
break;
case "2": // 营业部客服
BasicdataWarehouseEntity myCurrentWarehouse = warehouseClient.getMyCurrentWarehouse();
if(ObjectUtils.isNotNull(myCurrentWarehouse)){
aftersalesWorkOrder.put("warehouseId", myCurrentWarehouse.getId());
}else{
throw new ServiceException("请选择仓库!");
}
break;
case "3": //职能客服 查询自己的待处理工单
aftersalesWorkOrder.put("customer_service_id",user.getUserId());
break;
}
}else{
//不存在
BasicdataWarehouseEntity myCurrentWarehouse = warehouseClient.getMyCurrentWarehouse();
if(ObjectUtils.isNotNull(myCurrentWarehouse)){
aftersalesWorkOrder.put("warehouseId", myCurrentWarehouse.getId());
}else{
throw new ServiceException("请选择仓库!");
}
}
}
AftersalesWorkOrderEntity workOrderEntity = JSONObject.parseObject(JSONObject.toJSONString(aftersalesWorkOrder), AftersalesWorkOrderEntity.class);
return baseMapper.pageListOwn(page,workOrderEntity);
@ -591,4 +648,115 @@ public class AftersalesWorkOrderServiceImpl extends BaseServiceImpl<AftersalesWo
}
}
/**
* 查询客服信息
* @return
*/
@Override
public List<User> getCustomerServicePersonnel() {
BladeUser user = AuthUtil.getUser();
String tenantId = user.getTenantId();
//查询客服岗位
List<DictBiz> warehouseType = DictBizCache.getList("customer_service");
if (warehouseType.isEmpty()) {
throw new ServiceException("注意,注意!客服人员字典未配置!请配置!");
} else {
List<String> stringList = new ArrayList<>();
warehouseType.stream().forEach(i -> {
//查询这个角色ID
R<String> roleId = sysClient.getRoleIds(tenantId, i.getDictValue());
if (ObjectUtils.isNotNull(roleId.getData())) {
stringList.add(roleId.getData());
}
});
String roleIds = stringList.stream().collect(Collectors.joining(","));
R<List<User>> listR = userSearchClient.listByRole(roleIds); //查询角色下的所有人员数据
return listR.getData();
}
}
/**
* 申请仲裁
* @param aftersalesWorkOrder
* @return
*/
@Override
public boolean updateArbitrate(AftersalesWorkOrderDTO aftersalesWorkOrder) {
List<AftersalesArbitrationOrderEntity> arbitrationOrderList = new ArrayList<>();
aftersalesWorkOrder.getAssignList().forEach(i ->{
AftersalesWorkOrderEntity aftersalesWorkOrderEntity = new AftersalesWorkOrderEntity();
aftersalesWorkOrderEntity.setId(i);
aftersalesWorkOrderEntity.setWorkOrderStatus(WorkOrderStatusConstant.zhongchaizhong.getValue());
baseMapper.updateById(aftersalesWorkOrderEntity);
//添加仲裁记录
AftersalesArbitrationOrderEntity aftersalesArbitrationOrderEntity = new AftersalesArbitrationOrderEntity();
aftersalesArbitrationOrderEntity.setWorkOrderId(i);
aftersalesArbitrationOrderEntity.setOperateType("正常");
aftersalesArbitrationOrderEntity.setTypesOf(WorkOrderTypesOfStatusConstant.kaiqi.getValue());
arbitrationOrderList.add(aftersalesArbitrationOrderEntity);
});
if(!arbitrationOrderList.isEmpty()){
//添加仲裁记录
aftersalesArbitrationOrderService.saveBatch(arbitrationOrderList);
return true;
}
return false;
}
/**
* 异常工单 客服仲裁完结
*/
@Override
public boolean addArbitrateEnd(AftersalesWorkOrderDTO aftersalesWorkOrder) {
for (Long l : aftersalesWorkOrder.getAssignList()) {
//查询工单的状态
AftersalesWorkOrderEntity workOrderEntity = baseMapper.selectById(l);
if(!workOrderEntity.getWorkOrderStatus().equals(WorkOrderStatusConstant.zhongchaizhong.getValue())){
throw new ServiceException("包含不是仲裁的订单数据!无法强制完结!");
}
//添加处理结果
AftersalesProcessingResultsDTO aftersalesProcessingResultsDTO = aftersalesWorkOrder.getAftersalesProcessingResultsDTO();
aftersalesProcessingResultsService.ownSaveOrUpdate(aftersalesProcessingResultsDTO);
//添加完结数据
List<AftersalesWorkOrderDTO> orderDTOList = new ArrayList<>();
orderDTOList.add(aftersalesWorkOrder);
addCompletionEnd(orderDTOList);
//修改工单状态
AftersalesWorkOrderEntity aftersalesWorkOrderEntity = new AftersalesWorkOrderEntity();
aftersalesWorkOrderEntity.setId(l);
aftersalesWorkOrderEntity.setWorkOrderStatus(WorkOrderStatusConstant.yiwanjei.getValue());
baseMapper.updateById(aftersalesWorkOrderEntity);
//修改
LambdaUpdateWrapper<AftersalesArbitrationOrderEntity> lambdaUpdateWrapper = new LambdaUpdateWrapper<>();
lambdaUpdateWrapper.eq(AftersalesArbitrationOrderEntity::getWorkOrderId,l);
lambdaUpdateWrapper.set(AftersalesArbitrationOrderEntity::getOperateType,"客服完结");
lambdaUpdateWrapper.set(AftersalesArbitrationOrderEntity::getTypesOf,WorkOrderTypesOfStatusConstant.jeishu.getValue());
aftersalesArbitrationOrderService.update(lambdaUpdateWrapper);
}
return true;
}
/**
* 查询 营业部责任人人员信息
* @return
*/
@Override
public List<User> getBusinessDepartmentUser(Long warehouseId) {
BasicdataWarehouseEntity entityWarehouseId = warehouseClient.getEntityWarehouseId(warehouseId);
if(ObjectUtils.isNotNull(warehouseId)){
//查询单独的责任人
R<List<User>> listR = userSearchClient.listByName(entityWarehouseId.getLinkman());
return listR.getData();
}else{
//查询全部数据
R<List<User>> listR = userSearchClient.listByDept(String.valueOf(entityWarehouseId.getDepartment()));
return listR.getData();
}
}
}

2
blade-service/logpm-basicdata/src/main/java/com/logpm/basicdata/mapper/BasicdataCarrierMapper.xml

@ -63,7 +63,7 @@
<select id="findCarrierByName" resultType="com.logpm.basicdata.entity.BasicdataCarrierEntity">
select *
from logpm_basicdata_carrier
where is_deleted = 0,
where is_deleted = 0
and carrier_name like concat('%',#{carrierName},'%')
limit 10
</select>

25
blade-service/logpm-trunkline/src/main/java/com/logpm/trunkline/api/CarsLoadApiController.java

@ -411,7 +411,32 @@ public class CarsLoadApiController {
}
@ResponseBody
@PostMapping("/arriveUnloadPageList")
@ApiOperationSupport(order = 1)
@ApiOperation(value = "到车列表", notes = "传入loadCarsDTO")
public R arriveUnloadPageList(@RequestBody LoadCarsDTO loadCarsDTO) {
String method = "############arriveUnloadPageList: ";
log.info(method + "请求参数{}", loadCarsDTO);
try{
//当前登录人选择的仓库
BasicdataWarehouseEntity myCurrentWarehouse = warehouseClient.getMyCurrentWarehouse();
if(!Objects.isNull(myCurrentWarehouse)){
log.warn(method+"仓库信息为空 myCurrentWarehouse={}",myCurrentWarehouse);
return R.fail(405,"仓库信息为空");
}
loadCarsDTO.setWarehouseId(myCurrentWarehouse.getId());
return carsLoadService.arriveUnloadPageList(loadCarsDTO);
}catch (CustomerException e){
log.error(e.message,e);
return R.fail(e.code,e.message);
}catch (Exception e){
log.error(method+"系统异常",e);
return R.fail(500,"系统异常");
}
}
@ResponseBody

5
blade-service/logpm-trunkline/src/main/java/com/logpm/trunkline/controller/TripartiteTransferController.java

@ -358,13 +358,14 @@ public class TripartiteTransferController {
log.warn(method+"仓库信息为空 myCurrentWarehouse={}",myCurrentWarehouse);
return R.fail(400,"仓库信息为空");
}
loadCarsDTO.setWarehouseId(myCurrentWarehouse.getId());
if(Objects.isNull(loadId)){
log.warn(method+"三方中转id为空 loadId={}",loadId);
return R.fail(400,"三方中转id为空");
}
//TODO 需要修改
return carsLoadService.loadingDetail(loadId,myCurrentWarehouse.getId());
return carsLoadService.loadingDetail(loadCarsDTO);
}catch (CustomerException e){
log.error(e.message,e);
return R.fail(e.code,e.message);

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

@ -1,6 +1,8 @@
package com.logpm.trunkline.mapper;
import com.baomidou.mybatisplus.core.mapper.BaseMapper;
import com.baomidou.mybatisplus.core.metadata.IPage;
import com.logpm.trunkline.dto.LoadCarsDTO;
import com.logpm.trunkline.dto.ProductInfoDTO;
import com.logpm.trunkline.entity.TrunklineCarsLoadScanEntity;
import com.logpm.trunkline.vo.ProductUnloadInfoVO;
@ -30,4 +32,6 @@ public interface TrunklineCarsLoadScanMapper extends BaseMapper<TrunklineCarsLoa
List<TrunklineCarsLoadScanEntity> findUnloadTrayGoodsList(@Param("loadId") Long loadId, @Param("warehouseId") Long warehouseId, @Param("trayCode") String trayCode);
List<ProductInfoDTO> findProductInfoList(@Param("loadId") Long loadId, @Param("trayCode") String trayCode, @Param("waybillNo") String waybillNo);
IPage<TrunklineCarsLoadScanEntity> loadingDetail(IPage<Object> page, @Param("param") LoadCarsDTO loadCarsDTO);
}

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

@ -77,4 +77,10 @@
and waybill_no = #{waybillNo}
</select>
<select id="loadingDetail" resultType="com.logpm.trunkline.entity.TrunklineCarsLoadScanEntity">
select *
from logpm_trunkline_cars_load_scan
where load_id = #{param.loadId}
</select>
</mapper>

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

@ -1,5 +1,7 @@
package com.logpm.trunkline.service;
import com.baomidou.mybatisplus.core.metadata.IPage;
import com.logpm.trunkline.dto.LoadCarsDTO;
import com.logpm.trunkline.dto.ProductInfoDTO;
import com.logpm.trunkline.entity.TrunklineCarsLoadScanEntity;
import com.logpm.trunkline.vo.ProductUnloadInfoVO;
@ -27,4 +29,5 @@ public interface ITrunklineCarsLoadScanService extends BaseService<TrunklineCars
List<ProductInfoDTO> findProductInfoList(Long loadId, String trayCode, String waybillNo);
IPage<TrunklineCarsLoadScanEntity> loadingDetail(IPage<Object> page, LoadCarsDTO loadCarsDTO);
}

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

@ -72,7 +72,7 @@ public interface ITrunklineCarsLoadService extends BaseService<TrunklineCarsLoad
R settlementCars(Long loadId, Long warehouseId, BigDecimal settlementValue);
R loadingDetail(Long loadId, Long warehouseId);
R loadingDetail(LoadCarsDTO loadCarsDTO);
R loadingScan(Long loadId,Long warehouseId,String orderPackageCode,String trayCode);

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

@ -1,5 +1,7 @@
package com.logpm.trunkline.service.impl;
import com.baomidou.mybatisplus.core.metadata.IPage;
import com.logpm.trunkline.dto.LoadCarsDTO;
import com.logpm.trunkline.dto.ProductInfoDTO;
import com.logpm.trunkline.entity.TrunklineCarsLoadScanEntity;
import com.logpm.trunkline.mapper.TrunklineCarsLoadScanMapper;
@ -60,4 +62,9 @@ public class TrunklineCarsLoadScanServiceImpl extends BaseServiceImpl<TrunklineC
public List<ProductInfoDTO> findProductInfoList(Long loadId, String trayCode, String waybillNo) {
return baseMapper.findProductInfoList(loadId,trayCode,waybillNo);
}
@Override
public IPage<TrunklineCarsLoadScanEntity> loadingDetail(IPage<Object> page, LoadCarsDTO loadCarsDTO) {
return baseMapper.loadingDetail(page,loadCarsDTO);
}
}

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

@ -842,13 +842,13 @@ public class TrunklineCarsLoadServiceImpl extends BaseServiceImpl<TrunklineCarsL
Integer sort = carsLoadLineEntity.getSort();
//查询当前节点及以后的节点信息
List<TrunklineCarsLoadLineEntity> moreCarsLineList = trunklineCarsLoadLineService.findListMoreSortByLoadId(loadId,sort);
// List<TrunklineCarsLoadLineEntity> moreCarsLineList = trunklineCarsLoadLineService.findListMoreSortByLoadId(loadId,sort);
List<TrunklineCarsLoadLineEntity> allCarsLineList = trunklineCarsLoadLineService.findListByLoadId(loadId);
Map<String,Object> map = new HashMap<>();
map.put("carsLoadEntity",loadEntity);
map.put("allCarsLineList",allCarsLineList);
map.put("moreCarsLineList",moreCarsLineList);
// map.put("moreCarsLineList",moreCarsLineList);
return R.data(map);
}
@ -1329,9 +1329,15 @@ public class TrunklineCarsLoadServiceImpl extends BaseServiceImpl<TrunklineCarsL
}
@Override
public R loadingDetail(Long loadId, Long warehouseId) {
public R loadingDetail(LoadCarsDTO loadCarsDTO) {
return null;
IPage<Object> page = new Page<>();
page.setCurrent(loadCarsDTO.getPageNum());
page.setSize(loadCarsDTO.getPageSize());
IPage<TrunklineCarsLoadScanEntity> pageList = trunklineCarsLoadScanService.loadingDetail(page,loadCarsDTO);
return R.data(pageList);
}
@Override

Loading…
Cancel
Save