Browse Source

1.异常列表-逻辑修改

2.仓库-新增包件解托逻辑
pull/4/head
zhenghaoyu 11 months ago
parent
commit
04a6bc7820
  1. 8
      blade-service-api/logpm-aftersales-api/src/main/java/com/logpm/aftersales/entity/AftersalesAbnormalRecordEntity.java
  2. 19
      blade-service-api/logpm-aftersales-api/src/main/java/com/logpm/aftersales/feign/IAftersalesAbnormalRecordClient.java
  3. 27
      blade-service-api/logpm-trunkline-api/src/main/java/com/logpm/trunkline/feign/ITrunklineCarsLoadScanClient.java
  4. 6
      blade-service/logpm-aftersales/pom.xml
  5. 46
      blade-service/logpm-aftersales/src/main/java/com/logpm/aftersales/controller/AftersalesAbnormalRecordController.java
  6. 17
      blade-service/logpm-aftersales/src/main/java/com/logpm/aftersales/dto/AbnormalRecordDTO.java
  7. 31
      blade-service/logpm-aftersales/src/main/java/com/logpm/aftersales/feign/AftersalesAbnormalRecordClient.java
  8. 16
      blade-service/logpm-aftersales/src/main/java/com/logpm/aftersales/mapper/AftersalesAbnormalRecordMapper.java
  9. 7
      blade-service/logpm-aftersales/src/main/java/com/logpm/aftersales/mapper/AftersalesAbnormalRecordMapper.xml
  10. 13
      blade-service/logpm-aftersales/src/main/java/com/logpm/aftersales/service/IAftersalesAbnormalRecordService.java
  11. 77
      blade-service/logpm-aftersales/src/main/java/com/logpm/aftersales/service/impl/AftersalesAbnormalRecordServiceImpl.java
  12. 13
      blade-service/logpm-trunkline/src/main/java/com/logpm/trunkline/controller/CarsLoadController.java
  13. 28
      blade-service/logpm-trunkline/src/main/java/com/logpm/trunkline/feign/TrunklineCarsLoadScanClient.java
  14. 7
      blade-service/logpm-trunkline/src/main/java/com/logpm/trunkline/mapper/TrunklineCarsLoadScanMapper.java
  15. 16
      blade-service/logpm-trunkline/src/main/java/com/logpm/trunkline/mapper/TrunklineCarsLoadScanMapper.xml
  16. 7
      blade-service/logpm-trunkline/src/main/java/com/logpm/trunkline/service/ITrunklineCarsLoadScanService.java
  17. 6
      blade-service/logpm-trunkline/src/main/java/com/logpm/trunkline/service/ITrunklineCarsLoadService.java
  18. 78
      blade-service/logpm-trunkline/src/main/java/com/logpm/trunkline/service/impl/CarsLoadAsyncServiceImpl.java
  19. 18
      blade-service/logpm-trunkline/src/main/java/com/logpm/trunkline/service/impl/TrunklineCarsLoadScanServiceImpl.java
  20. 106
      blade-service/logpm-trunkline/src/main/java/com/logpm/trunkline/service/impl/TrunklineCarsLoadServiceImpl.java
  21. 57
      blade-service/logpm-warehouse/src/main/java/com/logpm/warehouse/controller/OldSystemPushController.java
  22. 14
      blade-service/logpm-warehouse/src/main/java/com/logpm/warehouse/dto/AbnormalRecordDTO.java
  23. 21
      blade-service/logpm-warehouse/src/main/java/com/logpm/warehouse/feign/WarehouseAbnormalRecordClient.java
  24. 16
      blade-service/logpm-warehouse/src/main/java/com/logpm/warehouse/mapper/WarehouseAbnormalRecordMapper.java
  25. 3
      blade-service/logpm-warehouse/src/main/java/com/logpm/warehouse/service/IAsyncDataService.java
  26. 12
      blade-service/logpm-warehouse/src/main/java/com/logpm/warehouse/service/IWarehouseAbnormalRecordService.java
  27. 47
      blade-service/logpm-warehouse/src/main/java/com/logpm/warehouse/service/impl/AsyncDataServiceImpl.java
  28. 31
      blade-service/logpm-warehouse/src/main/java/com/logpm/warehouse/service/impl/WarehouseAbnormalRecordServiceImpl.java

8
blade-service-api/logpm-warehouse-api/src/main/java/com/logpm/warehouse/entity/WarehouseAbnormalRecordEntity.java → blade-service-api/logpm-aftersales-api/src/main/java/com/logpm/aftersales/entity/AftersalesAbnormalRecordEntity.java

@ -1,4 +1,4 @@
package com.logpm.warehouse.entity;
package com.logpm.aftersales.entity;
import com.baomidou.mybatisplus.annotation.TableName;
import io.swagger.annotations.ApiModel;
@ -10,10 +10,10 @@ import org.springblade.core.tenant.mp.TenantEntity;
import java.util.Date;
@Data
@TableName("logpm_warehouse_abnormal_record")
@ApiModel(value = "WarehouseAbnormalRecord对象", description = "异常记录表")
@TableName("logpm_aftersales_abnormal_record")
@ApiModel(value = "AftersalesAbnormalRecord对象", description = "异常记录表")
@EqualsAndHashCode(callSuper = true)
public class WarehouseAbnormalRecordEntity extends TenantEntity {
public class AftersalesAbnormalRecordEntity extends TenantEntity {
/** 预留1 */
@ApiModelProperty(name = "预留1",notes = "")

19
blade-service-api/logpm-warehouse-api/src/main/java/com/logpm/warehouse/feign/IWarehouseAbnormalRecordClient.java → blade-service-api/logpm-aftersales-api/src/main/java/com/logpm/aftersales/feign/IAftersalesAbnormalRecordClient.java

@ -14,29 +14,36 @@
* this software without specific prior written permission.
* Author: Chill 庄骞 (smallchill@163.com)
*/
package com.logpm.warehouse.feign;
package com.logpm.aftersales.feign;
import com.logpm.warehouse.entity.WarehouseAbnormalRecordEntity;
import com.logpm.aftersales.entity.AftersalesAbnormalRecordEntity;
import org.springblade.common.constant.ModuleNameConstant;
import org.springframework.cloud.openfeign.FeignClient;
import org.springframework.web.bind.annotation.GetMapping;
import org.springframework.web.bind.annotation.PostMapping;
import org.springframework.web.bind.annotation.RequestBody;
import java.util.List;
/**
* 货位 Feign接口类
*
* @author lmy
* @author zhy
* @since 2023-08-14
*/
@FeignClient(
value = ModuleNameConstant.APPLICATION_WAREHOUSE_NAME
value = ModuleNameConstant.APPLICATION_AFTERSALES_NAME
)
public interface IWarehouseAbnormalRecordClient {
public interface IAftersalesAbnormalRecordClient {
String API_PREFIX = "abormal/client";
String TOP = API_PREFIX + "/top";
@PostMapping(API_PREFIX+"/addAbnormalRecord")
void addAbnormalRecord(@RequestBody WarehouseAbnormalRecordEntity warehouseAbnormalRecordEntity);
void addAbnormalRecord(@RequestBody AftersalesAbnormalRecordEntity warehouseAbnormalRecordEntity);
@GetMapping(API_PREFIX+"/findAbnormalList")
List<AftersalesAbnormalRecordEntity> findAbnormalList(String carsNo);
}

27
blade-service-api/logpm-trunkline-api/src/main/java/com/logpm/trunkline/feign/ITrunklineCarsLoadScanClient.java

@ -0,0 +1,27 @@
package com.logpm.trunkline.feign;
import org.springblade.common.constant.ModuleNameConstant;
import org.springblade.core.tool.api.R;
import org.springframework.cloud.openfeign.FeignClient;
import org.springframework.web.bind.annotation.GetMapping;
import org.springframework.web.bind.annotation.RequestParam;
@FeignClient(
value = ModuleNameConstant.APPLICATION_TRUNKLINE_NAME
)
public interface ITrunklineCarsLoadScanClient {
String API_PREFIX = "trunklineCarsLoadScan/client";
@GetMapping(API_PREFIX+"/removeLoadScanById")
void removeLoadScanById(@RequestParam Long carsLoadScanId);
@GetMapping(API_PREFIX+"/incomingPackage")
R incomingPackage(@RequestParam Long carsLoadScanId);
// @PostMapping(API_PREFIX+"/addAdvanceReturnId")
// Long addAdvanceReturnId(@RequestBody TrunklineAdvanceEntity trunklineAdvanceEntity);
}

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

@ -77,6 +77,12 @@
<groupId>com.xuxueli</groupId>
<artifactId>xxl-job-core</artifactId>
</dependency>
<dependency>
<groupId>org.springblade</groupId>
<artifactId>logpm-trunkline-api</artifactId>
<version>3.2.0.RELEASE</version>
<scope>compile</scope>
</dependency>
</dependencies>
<build>
<plugins>

46
blade-service/logpm-warehouse/src/main/java/com/logpm/warehouse/controller/WarehouseAbnormalRecordController.java → blade-service/logpm-aftersales/src/main/java/com/logpm/aftersales/controller/AftersalesAbnormalRecordController.java

@ -14,13 +14,13 @@
* this software without specific prior written permission.
* Author: Chill 庄骞 (smallchill@163.com)
*/
package com.logpm.warehouse.controller;
package com.logpm.aftersales.controller;
import com.github.xiaoymin.knife4j.annotations.ApiOperationSupport;
import com.logpm.aftersales.dto.AbnormalRecordDTO;
import com.logpm.aftersales.service.IAftersalesAbnormalRecordService;
import com.logpm.basicdata.entity.BasicdataWarehouseEntity;
import com.logpm.basicdata.feign.IBasicdataWarehouseClient;
import com.logpm.warehouse.dto.AbnormalRecordDTO;
import com.logpm.warehouse.service.IWarehouseAbnormalRecordService;
import io.swagger.annotations.Api;
import io.swagger.annotations.ApiOperation;
import lombok.AllArgsConstructor;
@ -30,6 +30,8 @@ import org.springblade.core.boot.ctrl.BladeController;
import org.springblade.core.tool.api.R;
import org.springframework.web.bind.annotation.*;
import java.util.Objects;
/**
* 运单表 控制器
*
@ -41,10 +43,10 @@ import org.springframework.web.bind.annotation.*;
@AllArgsConstructor
@RequestMapping("/abnormal")
@Api(value = "异常列表", tags = "异常列表接口")
public class WarehouseAbnormalRecordController extends BladeController {
public class AftersalesAbnormalRecordController extends BladeController {
private final IBasicdataWarehouseClient basicdataWarehouseClient;
private final IWarehouseAbnormalRecordService warehouseAbnormalRecordService;
private final IAftersalesAbnormalRecordService aftersalesAbnormalRecordService;
@ResponseBody
@PostMapping("/findPageList")
@ -58,9 +60,10 @@ public class WarehouseAbnormalRecordController extends BladeController {
//当前登录人选择的仓库
BasicdataWarehouseEntity myCurrentWarehouse = basicdataWarehouseClient.getMyCurrentWarehouse();
abnormalRecordDTO.setWarehouseId(myCurrentWarehouse.getId());
return warehouseAbnormalRecordService.findPageList(abnormalRecordDTO);
if(!Objects.isNull(myCurrentWarehouse)){
abnormalRecordDTO.setWarehouseId(myCurrentWarehouse.getId());
}
return aftersalesAbnormalRecordService.findPageList(abnormalRecordDTO);
}catch (CustomerException e){
log.error(e.message,e);
return R.fail(e.code,e.message);
@ -70,8 +73,35 @@ public class WarehouseAbnormalRecordController extends BladeController {
}
}
@ResponseBody
@PostMapping("/dealAbnormal")
@ApiOperationSupport(order = 1)
@ApiOperation(value = "处理异常", notes = "传入loadCarsDTO")
public R dealAbnormal(@RequestBody AbnormalRecordDTO abnormalRecordDTO) {
String method = "############dealAbnormal: ";
log.info(method + "请求参数{}", abnormalRecordDTO);
Long abnormalRecordId = abnormalRecordDTO.getAbnormalRecordId();
try{
if(Objects.isNull(abnormalRecordId)){
log.warn(method+"异常id为空 abnormalRecordId={}",abnormalRecordId);
return R.fail(405,"异常id为空");
}
//当前登录人选择的仓库
BasicdataWarehouseEntity myCurrentWarehouse = basicdataWarehouseClient.getMyCurrentWarehouse();
if(!Objects.isNull(myCurrentWarehouse)){
abnormalRecordDTO.setWarehouseId(myCurrentWarehouse.getId());
}
return aftersalesAbnormalRecordService.dealAbnormal(abnormalRecordDTO);
}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,"系统异常");
}
}
}

17
blade-service/logpm-aftersales/src/main/java/com/logpm/aftersales/dto/AbnormalRecordDTO.java

@ -0,0 +1,17 @@
package com.logpm.aftersales.dto;
import com.logpm.aftersales.entity.AftersalesAbnormalRecordEntity;
import lombok.Data;
@Data
public class AbnormalRecordDTO extends AftersalesAbnormalRecordEntity {
private Long abnormalRecordId;
private Long warehouseId;
private Integer pageNum;
private Integer pageSize;
private Integer dealType;
}

31
blade-service/logpm-aftersales/src/main/java/com/logpm/aftersales/feign/AftersalesAbnormalRecordClient.java

@ -0,0 +1,31 @@
package com.logpm.aftersales.feign;
import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
import com.logpm.aftersales.entity.AftersalesAbnormalRecordEntity;
import com.logpm.aftersales.service.IAftersalesAbnormalRecordService;
import lombok.AllArgsConstructor;
import org.springframework.web.bind.annotation.RestController;
import springfox.documentation.annotations.ApiIgnore;
import java.util.List;
@ApiIgnore()
@RestController
@AllArgsConstructor
public class AftersalesAbnormalRecordClient implements IAftersalesAbnormalRecordClient {
private final IAftersalesAbnormalRecordService aftersalesAbnormalRecordService;
@Override
public void addAbnormalRecord(AftersalesAbnormalRecordEntity abnormalRecordEntity) {
aftersalesAbnormalRecordService.save(abnormalRecordEntity);
}
@Override
public List<AftersalesAbnormalRecordEntity> findAbnormalList(String carsNo) {
QueryWrapper<AftersalesAbnormalRecordEntity> queryWrapper = new QueryWrapper<>();
queryWrapper.eq("cars_no",carsNo)
.eq("abnormal_status",0);
return aftersalesAbnormalRecordService.list(queryWrapper);
}
}

16
blade-service/logpm-aftersales/src/main/java/com/logpm/aftersales/mapper/AftersalesAbnormalRecordMapper.java

@ -0,0 +1,16 @@
package com.logpm.aftersales.mapper;
import com.baomidou.mybatisplus.core.mapper.BaseMapper;
import com.baomidou.mybatisplus.core.metadata.IPage;
import com.logpm.aftersales.dto.AbnormalRecordDTO;
import com.logpm.aftersales.entity.AftersalesAbnormalRecordEntity;
import org.apache.ibatis.annotations.Mapper;
import org.apache.ibatis.annotations.Param;
@Mapper
public interface AftersalesAbnormalRecordMapper extends BaseMapper<AftersalesAbnormalRecordEntity> {
IPage<AftersalesAbnormalRecordEntity> findPageList(IPage<Object> page, @Param("param") AbnormalRecordDTO abnormalRecordDTO);
}

7
blade-service/logpm-warehouse/src/main/java/com/logpm/warehouse/mapper/WarehouseAbnormalRecordMapper.xml → blade-service/logpm-aftersales/src/main/java/com/logpm/aftersales/mapper/AftersalesAbnormalRecordMapper.xml

@ -1,11 +1,14 @@
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE mapper PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" "http://mybatis.org/dtd/mybatis-3-mapper.dtd">
<mapper namespace="com.logpm.warehouse.mapper.WarehouseAbnormalRecordMapper">
<mapper namespace="com.logpm.aftersales.mapper.AftersalesAbnormalRecordMapper">
<select id="findPageList" resultType="com.logpm.warehouse.entity.WarehouseAbnormalRecordEntity">
<select id="findPageList" resultType="com.logpm.aftersales.entity.AftersalesAbnormalRecordEntity">
select *
from logpm_warehouse_abnormal_record
where 1=1
<if test="">
</if>
</select>
</mapper>

13
blade-service/logpm-aftersales/src/main/java/com/logpm/aftersales/service/IAftersalesAbnormalRecordService.java

@ -0,0 +1,13 @@
package com.logpm.aftersales.service;
import com.logpm.aftersales.dto.AbnormalRecordDTO;
import com.logpm.aftersales.entity.AftersalesAbnormalRecordEntity;
import org.springblade.core.mp.base.BaseService;
import org.springblade.core.tool.api.R;
public interface IAftersalesAbnormalRecordService extends BaseService<AftersalesAbnormalRecordEntity> {
R findPageList(AbnormalRecordDTO abnormalRecordDTO);
R dealAbnormal(AbnormalRecordDTO abnormalRecordDTO);
}

77
blade-service/logpm-aftersales/src/main/java/com/logpm/aftersales/service/impl/AftersalesAbnormalRecordServiceImpl.java

@ -0,0 +1,77 @@
package com.logpm.aftersales.service.impl;
import com.baomidou.mybatisplus.core.metadata.IPage;
import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
import com.logpm.aftersales.dto.AbnormalRecordDTO;
import com.logpm.aftersales.entity.AftersalesAbnormalRecordEntity;
import com.logpm.aftersales.mapper.AftersalesAbnormalRecordMapper;
import com.logpm.aftersales.service.IAftersalesAbnormalRecordService;
import com.logpm.trunkline.feign.ITrunklineCarsLoadScanClient;
import lombok.AllArgsConstructor;
import lombok.extern.slf4j.Slf4j;
import org.springblade.core.mp.base.BaseServiceImpl;
import org.springblade.core.secure.utils.AuthUtil;
import org.springblade.core.tool.api.R;
import org.springframework.stereotype.Service;
import java.util.Date;
import java.util.Objects;
@Slf4j
@Service
@AllArgsConstructor
public class AftersalesAbnormalRecordServiceImpl extends BaseServiceImpl<AftersalesAbnormalRecordMapper, AftersalesAbnormalRecordEntity> implements IAftersalesAbnormalRecordService {
private final ITrunklineCarsLoadScanClient trunklineCarsLoadScanClient;
@Override
public R findPageList(AbnormalRecordDTO abnormalRecordDTO) {
IPage<Object> page = new Page<>();
page.setCurrent(abnormalRecordDTO.getPageNum());
page.setSize(abnormalRecordDTO.getPageSize());
IPage<AftersalesAbnormalRecordEntity> pageList = baseMapper.findPageList(page,abnormalRecordDTO);
return R.data(pageList);
}
@Override
public R dealAbnormal(AbnormalRecordDTO abnormalRecordDTO) {
Long abnormalRecordId = abnormalRecordDTO.getAbnormalRecordId();
AftersalesAbnormalRecordEntity abnormalRecordEntity = baseMapper.selectById(abnormalRecordId);
if(!Objects.isNull(abnormalRecordEntity)){
Integer abnormalStatus = abnormalRecordEntity.getAbnormalStatus();
if(abnormalStatus.equals(1)){
log.warn("################dealAbnormal: 异常已完结");
return R.fail(405,"异常已完结");
}
String abnormalType = abnormalRecordEntity.getAbnormalType();
String upWarehouseName = abnormalRecordEntity.getUpWarehouseName();
if("1".equals(abnormalType)){
Integer dealType = abnormalRecordDTO.getDealType();
Long carsLoadScanId = abnormalRecordEntity.getAssociationId();
if(dealType.equals(1)){
//无效包条码
abnormalRecordEntity.setRemark("已确认为无效包条码("+upWarehouseName+" "+AuthUtil.getNickName()+")");
//删除装车异常数据
trunklineCarsLoadScanClient.removeLoadScanById(carsLoadScanId);
}else if(dealType.equals(2)){
//暂存单入库
R r = trunklineCarsLoadScanClient.incomingPackage(carsLoadScanId);
int code = r.getCode();
if(code != 200){
return r;
}
}
}
abnormalRecordEntity.setAbnormalStatus(1);
abnormalRecordEntity.setDealTime(new Date());
abnormalRecordEntity.setDealUserId(AuthUtil.getUserId());
abnormalRecordEntity.setDealUserName(AuthUtil.getNickName());
}
return R.success("处理成功");
}
}

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

@ -2177,11 +2177,11 @@ public class CarsLoadController {
@ResponseBody
@PostMapping("/abnormalList")
@PostMapping("/transitOrderPageList")
@ApiOperationSupport(order = 1)
@ApiOperation(value = "成本分摊", notes = "传入loadCarsDTO")
public R abnormalList(@RequestBody LoadCarsDTO loadCarsDTO) {
String method = "############abnormalList: ";
@ApiOperation(value = "在途订单列表", notes = "传入loadCarsDTO")
public R transitOrderPageList(@RequestBody LoadCarsDTO loadCarsDTO) {
String method = "############transitOrderPageList: ";
log.info(method + "请求参数{}", loadCarsDTO);
try{
@ -2193,7 +2193,7 @@ public class CarsLoadController {
}
loadCarsDTO.setWarehouseId(myCurrentWarehouse.getId());
return carsLoadService.abnormalList(loadCarsDTO);
return carsLoadService.transitOrderPageList(loadCarsDTO);
}catch (CustomerException e){
log.error(e.message,e);
return R.fail(e.code,e.message);
@ -2203,7 +2203,4 @@ public class CarsLoadController {
}
}
}

28
blade-service/logpm-trunkline/src/main/java/com/logpm/trunkline/feign/TrunklineCarsLoadScanClient.java

@ -0,0 +1,28 @@
package com.logpm.trunkline.feign;
import com.logpm.trunkline.service.ITrunklineCarsLoadService;
import lombok.AllArgsConstructor;
import lombok.extern.slf4j.Slf4j;
import org.springblade.core.tool.api.R;
import org.springframework.web.bind.annotation.RestController;
import springfox.documentation.annotations.ApiIgnore;
@Slf4j
@ApiIgnore()
@RestController
@AllArgsConstructor
public class TrunklineCarsLoadScanClient implements ITrunklineCarsLoadScanClient{
private final ITrunklineCarsLoadService trunklineCarsLoadService;
@Override
public void removeLoadScanById(Long carsLoadScanId) {
trunklineCarsLoadService.abnormalRemove(carsLoadScanId);
}
@Override
public R incomingPackage(Long carsLoadScanId) {
return trunklineCarsLoadService.syncIncomingPackage(carsLoadScanId);
}
}

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

@ -102,4 +102,11 @@ public interface TrunklineCarsLoadScanMapper extends BaseMapper<TrunklineCarsLoa
IPage<TrunklineCarsLoadScanVO> abnormalList(IPage<Object> page, @Param("loadCarsDTO") LoadCarsDTO loadCarsDTO);
List<TrunklineCarsLoadScanEntity> abnormalListStartCarByLoadIdAndWarehouseId(@Param("loadId") Long loadId, @Param("warehouseId") Long warehouseId);
List<TrunklineCarsLoadScanEntity> findUnloadCheckAbnormalNoUnloadList(@Param("loadId") Long loadId, @Param("warehouseId") Long warehouseId);
List<TrunklineCarsLoadScanEntity> findUnloadCheckAbnormalNoDataList(@Param("loadId") Long loadId, @Param("warehouseId") Long warehouseId);
IPage<TrunklineCarsLoadScanVO> transitOrderPageList(IPage<Object> page, @Param("param") LoadCarsDTO loadCarsDTO);
}

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

@ -478,4 +478,20 @@
and scan_status = '1'
</select>
<select id="findUnloadCheckAbnormalNoUnloadList" resultType="com.logpm.trunkline.entity.TrunklineCarsLoadScanEntity">
select *
from logpm_trunkline_cars_load_scan
where load_id = #{loadId}
and final_node_id = #{warehouseId}
and scan_status = '1'
</select>
<select id="findUnloadCheckAbnormalNoDataList" resultType="com.logpm.trunkline.entity.TrunklineCarsLoadScanEntity">
select *
from logpm_trunkline_cars_load_scan
where load_id = #{loadId}
and unload_node_id = #{warehouseId}
and is_data = 0
</select>
</mapper>

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

@ -97,4 +97,11 @@ public interface ITrunklineCarsLoadScanService extends BaseService<TrunklineCars
IPage<TrunklineCarsLoadScanVO> abnormalList(IPage<Object> page, LoadCarsDTO loadCarsDTO);
List<TrunklineCarsLoadScanEntity> abnormalListStartCarByLoadIdAndWarehouseId(Long loadId, Long warehouseId);
List<TrunklineCarsLoadScanEntity> findUnloadCheckAbnormalNoUnloadList(Long loadId, Long warehouseId);
List<TrunklineCarsLoadScanEntity> findUnloadCheckAbnormalNoDataList(Long loadId, Long warehouseId);
IPage<TrunklineCarsLoadScanVO> transitOrderPageList(IPage<Object> page, LoadCarsDTO loadCarsDTO);
}

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

@ -188,4 +188,10 @@ public interface ITrunklineCarsLoadService extends BaseService<TrunklineCarsLoad
R costShareByLoadId(Long loadId);
R abnormalList(LoadCarsDTO loadCarsDTO);
void abnormalRemove(Long carsLoadScanId);
R syncIncomingPackage(Long carsLoadScanId);
R transitOrderPageList(LoadCarsDTO loadCarsDTO);
}

78
blade-service/logpm-trunkline/src/main/java/com/logpm/trunkline/service/impl/CarsLoadAsyncServiceImpl.java

@ -1,14 +1,14 @@
package com.logpm.trunkline.service.impl;
import com.logpm.aftersales.entity.AftersalesAbnormalRecordEntity;
import com.logpm.aftersales.feign.IAftersalesAbnormalRecordClient;
import com.logpm.basicdata.entity.BasicdataWarehouseEntity;
import com.logpm.basicdata.feign.IBasicdataWarehouseClient;
import com.logpm.distribution.entity.DistributionStockArticleEntity;
import com.logpm.distribution.feign.IDistributionStockArticleClient;
import com.logpm.trunkline.entity.*;
import com.logpm.trunkline.service.*;
import com.logpm.warehouse.entity.WarehouseAbnormalRecordEntity;
import com.logpm.warehouse.entity.WarehouseWaybillEntity;
import com.logpm.warehouse.feign.IWarehouseAbnormalRecordClient;
import com.logpm.warehouse.feign.IWarehouseWaybillClient;
import lombok.extern.slf4j.Slf4j;
import org.springblade.common.constant.DictBizConstant;
@ -18,6 +18,7 @@ import org.springblade.common.exception.CustomerException;
import org.springblade.common.utils.CommonUtil;
import org.springblade.system.cache.DictBizCache;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.context.annotation.Lazy;
import org.springframework.scheduling.annotation.Async;
import org.springframework.stereotype.Service;
@ -43,8 +44,9 @@ public class CarsLoadAsyncServiceImpl implements ICarsLoadAsyncService {
private IDistributionStockArticleClient distributionStockArticleClient;
@Autowired
private IBasicdataWarehouseClient warehouseClient;
@Lazy
@Autowired
private IWarehouseAbnormalRecordClient abnormalRecordClient;
private IAftersalesAbnormalRecordClient abnormalRecordClient;
@Async
@Override
@ -337,7 +339,7 @@ public class CarsLoadAsyncServiceImpl implements ICarsLoadAsyncService {
String scanCode = trunklineCarsLoadScanEntity.getScanCode();
Long scanId = trunklineCarsLoadScanEntity.getId();
//无装车计划
WarehouseAbnormalRecordEntity abnormalRecordEntity = new WarehouseAbnormalRecordEntity();
AftersalesAbnormalRecordEntity abnormalRecordEntity = new AftersalesAbnormalRecordEntity();
abnormalRecordEntity.setTenantId(tenantId);
abnormalRecordEntity.setCreateUser(userId);
abnormalRecordEntity.setUpdateUser(userId);
@ -357,7 +359,7 @@ public class CarsLoadAsyncServiceImpl implements ICarsLoadAsyncService {
abnormalRecordEntity.setUpTime(new Date());
abnormalRecordEntity.setAssociationId(scanId);
abnormalRecordEntity.setAssociationType(1);
abnormalRecordEntity.setRemark("无计划装车");
abnormalRecordEntity.setRemark("无计划装车---装车记录补录");
abnormalRecordClient.addAbnormalRecord(abnormalRecordEntity);
}
}
@ -373,7 +375,7 @@ public class CarsLoadAsyncServiceImpl implements ICarsLoadAsyncService {
String orderCode = carsLoadScanEntity.getOrderCode();
String scanCode = carsLoadScanEntity.getScanCode();
//无装车记录
WarehouseAbnormalRecordEntity abnormalRecordEntity = new WarehouseAbnormalRecordEntity();
AftersalesAbnormalRecordEntity abnormalRecordEntity = new AftersalesAbnormalRecordEntity();
abnormalRecordEntity.setTenantId(tenantId);
abnormalRecordEntity.setCreateUser(userId);
abnormalRecordEntity.setUpdateUser(userId);
@ -400,8 +402,70 @@ public class CarsLoadAsyncServiceImpl implements ICarsLoadAsyncService {
@Async
@Override
public void abnormalListUnloadCheckByLoadIdAndWarehouseId(Long loadId, Long warehouseId, String nodeName, String tenantId, Long userId, String nickName, Long firstLong) {
public void abnormalListUnloadCheckByLoadIdAndWarehouseId(Long loadId, Long warehouseId, String warehouseName, String tenantId, Long userId, String nickName, Long deptId) {
List<TrunklineCarsLoadScanEntity> noUnloadList = trunklineCarsLoadScanService.findUnloadCheckAbnormalNoUnloadList(loadId,warehouseId);
for (TrunklineCarsLoadScanEntity trunklineCarsLoadScanEntity : noUnloadList) {
String loadCode = trunklineCarsLoadScanEntity.getLoadCode();
String waybillNo = trunklineCarsLoadScanEntity.getWaybillNo();
String orderCode = trunklineCarsLoadScanEntity.getOrderCode();
String scanCode = trunklineCarsLoadScanEntity.getScanCode();
Long scanId = trunklineCarsLoadScanEntity.getId();
//无装车计划
AftersalesAbnormalRecordEntity abnormalRecordEntity = new AftersalesAbnormalRecordEntity();
abnormalRecordEntity.setTenantId(tenantId);
abnormalRecordEntity.setCreateUser(userId);
abnormalRecordEntity.setUpdateUser(userId);
abnormalRecordEntity.setCreateDept(deptId);
abnormalRecordEntity.setType("2");
abnormalRecordEntity.setAbnormalType("4");
abnormalRecordEntity.setCarType("1");
abnormalRecordEntity.setUpWarehouseId(warehouseId);
abnormalRecordEntity.setUpWarehouseName(warehouseName);
abnormalRecordEntity.setCarsNo(loadCode);
abnormalRecordEntity.setWaybillNo(waybillNo);
abnormalRecordEntity.setOrderCode(orderCode);
abnormalRecordEntity.setOrderPackageCode(scanCode);
abnormalRecordEntity.setUpUserId(userId);
abnormalRecordEntity.setUpUserName(nickName);
abnormalRecordEntity.setAbnormalStatus(0);
abnormalRecordEntity.setUpTime(new Date());
abnormalRecordEntity.setAssociationId(scanId);
abnormalRecordEntity.setAssociationType(1);
abnormalRecordEntity.setRemark("无卸车记录");
abnormalRecordClient.addAbnormalRecord(abnormalRecordEntity);
}
List<TrunklineCarsLoadScanEntity> noDataList = trunklineCarsLoadScanService.findUnloadCheckAbnormalNoDataList(loadId,warehouseId);
for (TrunklineCarsLoadScanEntity carsLoadScanEntity : noDataList) {
String loadCode = carsLoadScanEntity.getLoadCode();
String waybillNo = carsLoadScanEntity.getWaybillNo();
String orderCode = carsLoadScanEntity.getOrderCode();
String scanCode = carsLoadScanEntity.getScanCode();
Long scanId = carsLoadScanEntity.getId();
//无装车计划
AftersalesAbnormalRecordEntity abnormalRecordEntity = new AftersalesAbnormalRecordEntity();
abnormalRecordEntity.setTenantId(tenantId);
abnormalRecordEntity.setCreateUser(userId);
abnormalRecordEntity.setUpdateUser(userId);
abnormalRecordEntity.setCreateDept(deptId);
abnormalRecordEntity.setType("2");
abnormalRecordEntity.setAbnormalType("1");
abnormalRecordEntity.setCarType("1");
abnormalRecordEntity.setUpWarehouseId(warehouseId);
abnormalRecordEntity.setUpWarehouseName(warehouseName);
abnormalRecordEntity.setCarsNo(loadCode);
abnormalRecordEntity.setWaybillNo(waybillNo);
abnormalRecordEntity.setOrderCode(orderCode);
abnormalRecordEntity.setOrderPackageCode(scanCode);
abnormalRecordEntity.setUpUserId(userId);
abnormalRecordEntity.setUpUserName(nickName);
abnormalRecordEntity.setAbnormalStatus(0);
abnormalRecordEntity.setUpTime(new Date());
abnormalRecordEntity.setAssociationId(scanId);
abnormalRecordEntity.setAssociationType(1);
abnormalRecordEntity.setRemark("无系统编码");
abnormalRecordClient.addAbnormalRecord(abnormalRecordEntity);
}
}
}

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

@ -7,7 +7,6 @@ import com.logpm.trunkline.entity.TrunklineCarsLoadScanEntity;
import com.logpm.trunkline.mapper.TrunklineCarsLoadScanMapper;
import com.logpm.trunkline.service.ITrunklineCarsLoadScanService;
import com.logpm.trunkline.vo.*;
import com.logpm.warehouse.feign.IWarehouseAbnormalRecordClient;
import lombok.AllArgsConstructor;
import lombok.extern.slf4j.Slf4j;
import org.springblade.core.mp.base.BaseServiceImpl;
@ -21,8 +20,6 @@ import java.util.Map;
@AllArgsConstructor
public class TrunklineCarsLoadScanServiceImpl extends BaseServiceImpl<TrunklineCarsLoadScanMapper, TrunklineCarsLoadScanEntity> implements ITrunklineCarsLoadScanService {
private final IWarehouseAbnormalRecordClient warehouseAbnormalRecordClient;
@Override
public Integer findNumByLoadId(Long loadId) {
return baseMapper.findNumByLoadId(loadId);
@ -241,4 +238,19 @@ public class TrunklineCarsLoadScanServiceImpl extends BaseServiceImpl<TrunklineC
return baseMapper.abnormalListStartCarByLoadIdAndWarehouseId(loadId,warehouseId);
}
@Override
public List<TrunklineCarsLoadScanEntity> findUnloadCheckAbnormalNoUnloadList(Long loadId, Long warehouseId) {
return baseMapper.findUnloadCheckAbnormalNoUnloadList(loadId,warehouseId);
}
@Override
public List<TrunklineCarsLoadScanEntity> findUnloadCheckAbnormalNoDataList(Long loadId, Long warehouseId) {
return baseMapper.findUnloadCheckAbnormalNoDataList(loadId,warehouseId);
}
@Override
public IPage<TrunklineCarsLoadScanVO> transitOrderPageList(IPage<Object> page, LoadCarsDTO loadCarsDTO) {
return baseMapper.transitOrderPageList(page,loadCarsDTO);
}
}

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

@ -4,6 +4,8 @@ import com.alibaba.fastjson.JSONObject;
import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
import com.baomidou.mybatisplus.core.metadata.IPage;
import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
import com.logpm.aftersales.entity.AftersalesAbnormalRecordEntity;
import com.logpm.aftersales.feign.IAftersalesAbnormalRecordClient;
import com.logpm.basicdata.entity.BasicdataTrayEntity;
import com.logpm.basicdata.entity.BasicdataWarehouseEntity;
import com.logpm.basicdata.feign.IBasicdataCodeClient;
@ -24,7 +26,10 @@ import com.logpm.trunkline.service.*;
import com.logpm.trunkline.vo.*;
import com.logpm.warehouse.entity.WarehouseWayBillDetail;
import com.logpm.warehouse.entity.WarehouseWaybillEntity;
import com.logpm.warehouse.feign.*;
import com.logpm.warehouse.feign.IWarehouseTrayTypeClient;
import com.logpm.warehouse.feign.IWarehouseUpdownTypeClient;
import com.logpm.warehouse.feign.IWarehouseWaybillClient;
import com.logpm.warehouse.feign.IWarehouseWaybillDetailClient;
import lombok.AllArgsConstructor;
import lombok.extern.slf4j.Slf4j;
import org.apache.commons.lang.StringEscapeUtils;
@ -84,7 +89,7 @@ public class TrunklineCarsLoadServiceImpl extends BaseServiceImpl<TrunklineCarsL
private final IOpenOrderAsyncService openOrderAsyncService;
private final IDistributionParcelNumberClient distributionParcelNumberClient;
private final ITrunklineCostShareRecordService trunklineCostShareRecordService;
private final ITrunklineAdvanceService advanceService;
private final IAftersalesAbnormalRecordClient abnormalRecordClient;
@Override
public IPage<TrunklineCarsLoadVO> loadCarsPageList(LoadCarsDTO loadCarsDTO) {
@ -813,8 +818,6 @@ public class TrunklineCarsLoadServiceImpl extends BaseServiceImpl<TrunklineCarsL
map.put("flagType", "TrunklineUnloadConfirm");
rabbitTemplate.convertAndSend(RabbitConstant.TRUNKLINE_UNLOAD_CONFIRM_EXCHANGE, RabbitConstant.TRUNKLINE_UNLOAD_CONFIRM_ROUTING, map);
}
@Transactional(rollbackFor = Exception.class)
@ -3768,11 +3771,11 @@ public class TrunklineCarsLoadServiceImpl extends BaseServiceImpl<TrunklineCarsL
log.warn("################findCostShareBefore: 配载计划不存在 loadId={}",loadId);
return R.fail(405,"配载计划不存在");
}
List<TrunklineCarsLoadScanEntity> ls = trunklineCarsLoadScanService.findListNoDataByLoadId(loadId);
String carsNo = carsLoadEntity.getCarsNo();
List<AftersalesAbnormalRecordEntity> ls = abnormalRecordClient.findAbnormalList(carsNo);
Map<String,Object> map = new HashMap<>();
map.put("noDataLoadScanList",ls);
map.put("abnormalList",ls);
return R.data(map);
}
@ -3830,6 +3833,95 @@ public class TrunklineCarsLoadServiceImpl extends BaseServiceImpl<TrunklineCarsL
return R.data(ls);
}
@Override
public void abnormalRemove(Long carsLoadScanId) {
TrunklineCarsLoadScanEntity carsLoadScanEntity = trunklineCarsLoadScanService.getById(carsLoadScanId);
if(!Objects.isNull(carsLoadScanEntity)){
Long loadId = carsLoadScanEntity.getLoadId();
boolean b = trunklineCarsLoadScanService.deleteEntityByCarsLoadScanId(carsLoadScanId);
if(b){
updateNumByLoadId(loadId);
}
}
}
@Override
public R syncIncomingPackage(Long carsLoadScanId) {
TrunklineCarsLoadScanEntity carsLoadScanEntity = trunklineCarsLoadScanService.getById(carsLoadScanId);
if(Objects.isNull(carsLoadScanEntity)){
log.warn("#################syncIncomingPackage: 数据不存在 carsLoadScanId={}",carsLoadScanId);
return R.fail(405,"数据不存在");
}
String scanCode = carsLoadScanEntity.getScanCode();
Long unloadNodeId = carsLoadScanEntity.getUnloadNodeId();
String loadCode = carsLoadScanEntity.getLoadCode();
//判断是否入库
TrunklineAdvanceDetailEntity advanceDetailEntity = trunklineAdvanceDetailService.findEntityByOrderPackageCode(scanCode);
if(Objects.isNull(advanceDetailEntity)){
log.warn("#################syncIncomingPackage: 数据不存在 同步失败 carsLoadScanId={}",carsLoadScanId);
return R.fail(405,"数据不存在 同步失败");
}
String packageStatus = advanceDetailEntity.getPackageStatus();
String orderCode = advanceDetailEntity.getOrderCode();
String waybillNo = advanceDetailEntity.getWaybillNo();
if("0".equals(packageStatus)){
InComingDTO inComingDTO = new InComingDTO();
inComingDTO.setOrderPackageCode(scanCode);
inComingDTO.setWarehouseId(unloadNodeId);
R r = inComingService.incomingPackage(inComingDTO);
int code = r.getCode();
if(code != 200){
log.warn("#################syncIncomingPackage: 同步数据失败 carsLoadScanId={}",carsLoadScanId);
return R.fail(405,"同步数据失败");
}else{
carsLoadScanEntity.setWaybillNo(waybillNo);
carsLoadScanEntity.setOrderCode(orderCode);
carsLoadScanEntity.setIsData(1);
return R.success("同步成功");
}
}else{
DistributionParcelListEntity parcelListEntity = distributionParcelListClient.findByOrderPackageCodeAndStatus(scanCode);
if(!Objects.isNull(parcelListEntity)){
Long warehouseId = parcelListEntity.getWarehouseId();
DistributionStockArticleEntity stockArticleEntity = distributionStockArticleClient.findStockArticleByOrderCodeAndWarehouseId(orderCode, warehouseId);
DistributionStockArticleEntity newStockArticle = new DistributionStockArticleEntity();
BeanUtil.copy(stockArticleEntity,newStockArticle);
newStockArticle.setId(null);
newStockArticle.setHandQuantity(0);
Long orderId = distributionStockArticleClient.addData(newStockArticle);
DistributionParcelListEntity newParcelList = new DistributionParcelListEntity();
BeanUtil.copy(parcelListEntity,newParcelList);
newParcelList.setId(null);
newParcelList.setTrainNumber(loadCode);
newParcelList.setStockArticleId(orderId);
distributionParcelListClient.add(newParcelList);
stockArticleEntity.setHandQuantity(stockArticleEntity.getHandQuantity()-1);
distributionStockArticleClient.saveOrUpdate(stockArticleEntity);
parcelListEntity.setOrderPackageStatus("60");
distributionParcelListClient.update(parcelListEntity);
return R.success("同步成功");
}else{
log.warn("###############syncIncomingPackage: 同步失败");
return R.fail(405,"同步数据失败");
}
}
}
@Override
public R transitOrderPageList(LoadCarsDTO loadCarsDTO) {
IPage<Object> page = new Page<>();
page.setCurrent(loadCarsDTO.getPageNum());
page.setSize(loadCarsDTO.getPageSize());
IPage<TrunklineCarsLoadScanVO> ls = trunklineCarsLoadScanService.transitOrderPageList(page,loadCarsDTO);
return R.data(ls);
}
@Override
public R loadingTrayInfo(LoadCarsDTO loadCarsDTO) {
log.info("##############loadingTrayInfo: 查询托盘的货物信息");

57
blade-service/logpm-warehouse/src/main/java/com/logpm/warehouse/controller/OldSystemPushController.java

@ -12,6 +12,7 @@ import io.swagger.annotations.Api;
import io.swagger.annotations.ApiOperation;
import lombok.AllArgsConstructor;
import lombok.extern.slf4j.Slf4j;
import org.springblade.common.constant.OldSystemDataPushConfig;
import org.springblade.common.constant.RabbitConstant;
import org.springblade.common.exception.CustomerException;
import org.springblade.common.utils.CommonUtil;
@ -173,18 +174,23 @@ public class OldSystemPushController {
return R.fail(405,"打托方式不存在");
}
if (OldSystemDataPushConfig.getWarehourseIdList().contains(oldWarehouseId+"")) {
//先保存原始请求数据
WarehouseLog warehouseLog = new WarehouseLog();
warehouseLog.setArgs(JSONObject.toJSONString(trayInfoDTO));
warehouseLog.setStatus(0);
warehouseLog.setType(3);
warehouseLogService.save(warehouseLog);
//先保存原始请求数据
WarehouseLog warehouseLog = new WarehouseLog();
warehouseLog.setArgs(JSONObject.toJSONString(trayInfoDTO));
warehouseLog.setStatus(0);
warehouseLog.setType(3);
warehouseLogService.save(warehouseLog);
asyncDataService.sendTrayInfoByOrderPackageCode(trayInfoDTO);
asyncDataService.sendTrayInfoByOrderPackageCode(trayInfoDTO);
warehouseLog.setStatus(1);
warehouseLogService.updateById(warehouseLog);
}else{
log.warn("##############sendTrayInfoByOrderPackageCode: 已开放仓库 openWarehouseIds={}",OldSystemDataPushConfig.getWarehourseIdList());
log.warn("##############sendTrayInfoByOrderPackageCode: 当前仓不属于已开放的仓库 oldWarehouseId={}",oldWarehouseId);
}
warehouseLog.setStatus(1);
warehouseLogService.updateById(warehouseLog);
return R.success("操作成功");
}catch (CustomerException e){
log.error(e.message,e);
@ -197,22 +203,27 @@ public class OldSystemPushController {
@ResponseBody
@PostMapping("/addCreateTrayData")
@PostMapping("/unbindTrayData")
@ApiOperationSupport(order = 1)
@ApiOperation(value = "老系统创建托盘数据", notes = "传入waybillDTO")
public R addCreateTrayData(@RequestBody TrayInfoDTO trayInfoDTO) {
log.info("############addCreateTrayData: 请求参数{}",trayInfoDTO);
@ApiOperation(value = "解绑托盘包件", notes = "传入waybillDTO")
public R unbindTrayData(@RequestBody TrayInfoDTO trayInfoDTO) {
log.info("############unbindTrayData: 请求参数{}",trayInfoDTO);
try{
List<String> trayNos = trayInfoDTO.getTrayNos();
Integer warehouseId = trayInfoDTO.getWarehouseId();
Integer trayId = trayInfoDTO.getTrayId();
String orderPackageCode = trayInfoDTO.getOrderPackageCode();
Integer oldWarehouseId = trayInfoDTO.getWarehouseId();
if(trayNos.size() == 0){
log.warn("##############addCreateTrayData: 托盘id不存在 trayNos={}",trayNos);
if(Objects.isNull(trayId)){
log.warn("##############addCreateTrayData: 托盘id不存在 trayId={}",trayId);
return R.fail(405,"托盘id不存在");
}
if(Objects.isNull(warehouseId)){
log.warn("##############addCreateTrayData: 仓库id不存在 warehouseId={}",warehouseId);
if(StringUtil.isBlank(orderPackageCode)){
log.warn("##############addCreateTrayData: 包件不能为空 orderPackageCode={}",orderPackageCode);
return R.fail(405,"包件不能为空");
}
if(Objects.isNull(oldWarehouseId)){
log.warn("##############addCreateTrayData: 仓库id不存在 oldWarehouseId={}",oldWarehouseId);
return R.fail(405,"仓库id不存在");
}
@ -220,10 +231,10 @@ public class OldSystemPushController {
WarehouseLog warehouseLog = new WarehouseLog();
warehouseLog.setArgs(JSONObject.toJSONString(trayInfoDTO));
warehouseLog.setStatus(0);
warehouseLog.setType(3);
warehouseLog.setType(4);
warehouseLogService.save(warehouseLog);
asyncDataService.addCreateTrayData(trayInfoDTO);
asyncDataService.unbindTrayData(trayInfoDTO);
warehouseLog.setStatus(1);
warehouseLogService.updateById(warehouseLog);
@ -232,8 +243,8 @@ public class OldSystemPushController {
log.error(e.message,e);
return R.fail(e.code,e.message);
}catch (Exception e){
log.error("############sendOrders: 系统异常",e);
return R.fail(500,"############sendOrders: 系统异常");
log.error("############unbindTrayData: 系统异常",e);
return R.fail(500,"############unbindTrayData: 系统异常");
}
}

14
blade-service/logpm-warehouse/src/main/java/com/logpm/warehouse/dto/AbnormalRecordDTO.java

@ -1,14 +0,0 @@
package com.logpm.warehouse.dto;
import com.logpm.warehouse.entity.WarehouseAbnormalRecordEntity;
import lombok.Data;
@Data
public class AbnormalRecordDTO extends WarehouseAbnormalRecordEntity {
private Long warehouseId;
private Integer pageNum;
private Integer pageSize;
}

21
blade-service/logpm-warehouse/src/main/java/com/logpm/warehouse/feign/WarehouseAbnormalRecordClient.java

@ -1,21 +0,0 @@
package com.logpm.warehouse.feign;
import com.logpm.warehouse.entity.WarehouseAbnormalRecordEntity;
import com.logpm.warehouse.service.IWarehouseAbnormalRecordService;
import lombok.AllArgsConstructor;
import org.springframework.web.bind.annotation.RestController;
import springfox.documentation.annotations.ApiIgnore;
@ApiIgnore()
@RestController
@AllArgsConstructor
public class WarehouseAbnormalRecordClient implements IWarehouseAbnormalRecordClient {
private final IWarehouseAbnormalRecordService warehouseAbnormalRecordService;
@Override
public void addAbnormalRecord(WarehouseAbnormalRecordEntity warehouseAbnormalRecordEntity) {
warehouseAbnormalRecordEntity.setAbnormalStatus(0);
warehouseAbnormalRecordService.save(warehouseAbnormalRecordEntity);
}
}

16
blade-service/logpm-warehouse/src/main/java/com/logpm/warehouse/mapper/WarehouseAbnormalRecordMapper.java

@ -1,16 +0,0 @@
package com.logpm.warehouse.mapper;
import com.baomidou.mybatisplus.core.mapper.BaseMapper;
import com.baomidou.mybatisplus.core.metadata.IPage;
import com.logpm.warehouse.dto.AbnormalRecordDTO;
import com.logpm.warehouse.entity.WarehouseAbnormalRecordEntity;
import org.apache.ibatis.annotations.Mapper;
import org.apache.ibatis.annotations.Param;
@Mapper
public interface WarehouseAbnormalRecordMapper extends BaseMapper<WarehouseAbnormalRecordEntity> {
IPage<WarehouseAbnormalRecordEntity> findPageList(IPage<Object> page, @Param("param") AbnormalRecordDTO abnormalRecordDTO);
}

3
blade-service/logpm-warehouse/src/main/java/com/logpm/warehouse/service/IAsyncDataService.java

@ -10,4 +10,7 @@ public interface IAsyncDataService {
void sendTrayInfoByOrderPackageCode(TrayInfoDTO trayInfoDTO);
void addCreateTrayData(TrayInfoDTO trayInfoDTO);
void unbindTrayData(TrayInfoDTO trayInfoDTO);
}

12
blade-service/logpm-warehouse/src/main/java/com/logpm/warehouse/service/IWarehouseAbnormalRecordService.java

@ -1,12 +0,0 @@
package com.logpm.warehouse.service;
import com.logpm.warehouse.dto.AbnormalRecordDTO;
import com.logpm.warehouse.entity.WarehouseAbnormalRecordEntity;
import org.springblade.core.mp.base.BaseService;
import org.springblade.core.tool.api.R;
public interface IWarehouseAbnormalRecordService extends BaseService<WarehouseAbnormalRecordEntity> {
R findPageList(AbnormalRecordDTO abnormalRecordDTO);
}

47
blade-service/logpm-warehouse/src/main/java/com/logpm/warehouse/service/impl/AsyncDataServiceImpl.java

@ -559,6 +559,53 @@ public class AsyncDataServiceImpl implements IAsyncDataService {
}
@Override
public void unbindTrayData(TrayInfoDTO trayInfoDTO) {
Integer oldTrayId = trayInfoDTO.getTrayId();
String orderPackageCode = trayInfoDTO.getOrderPackageCode();
Integer oldWarehouseId = trayInfoDTO.getWarehouseId();
BasicdataWarehouseEntity warehouseEntity = basicdataWarehouseClient.getWarehouseByOldId(oldWarehouseId);
if(Objects.isNull(warehouseEntity)){
log.warn("##############unbindTrayData: 仓库信息不存在 oldWarehouseId={}",oldWarehouseId);
throw new CustomerException(405,"仓库信息不存在");
}
BasicdataTrayEntity basicdataTrayEntity = basicdataTrayClient.getTrayByTrayCode("T" + oldTrayId);
Long trayId = null;
if(Objects.isNull(basicdataTrayEntity)){
log.info("############unbindTrayData: 托盘信息不存在 同步");
//如果托盘不存在就去同步该托盘
TrayEntity trayEntity = trayClient.getTrayById(oldTrayId);
basicdataTrayEntity = new BasicdataTrayEntity();
basicdataTrayEntity.setTenantId("627683");
basicdataTrayEntity.setCreateUser(1714696768639311873L);
basicdataTrayEntity.setUpdateUser(1714696768639311873L);
basicdataTrayEntity.setCreateDept(1649331096241836033L);
basicdataTrayEntity.setPalletName(trayEntity.getTrayNo());
basicdataTrayEntity.setPalletCode("T"+trayEntity.getId());
basicdataTrayEntity.setWarehouseId(warehouseEntity.getId());
basicdataTrayEntity.setTrayStatus(trayEntity.getStatus()+"");
basicdataTrayEntity.setType(1);
basicdataTrayEntity.setOldId(trayEntity.getId());
// basicdataTrayEntity.setNowWarehouseId(nowNewWarehouseId);
trayId = basicdataTrayClient.addTray(basicdataTrayEntity);
basicdataTrayEntity.setId(trayId);
}else{
trayId = basicdataTrayEntity.getId();
}
Long allocationId = taryAllocationService.getAllocationIdByTrayId(trayId);
if(Objects.isNull(allocationId)){
List<String> orderPackageCodes = new ArrayList<>();
orderPackageCodes.add(orderPackageCode);
trayTypeService.deleteScanOrderPackageCode("T"+trayId,orderPackageCodes, warehouseEntity.getId());
}else{
log.warn("#############unbindTrayData: 托盘已上架 trayId={}",trayId);
throw new CustomerException(405,"托盘已上架");
}
}
private void dealWithStockTray(String materialCode, String marketName, String incomingBatch, Integer stockNum, String trayCode, String trayType, Long warehouseId) {
log.info("#############dealWithStockTray: 处理库存品的打托");

31
blade-service/logpm-warehouse/src/main/java/com/logpm/warehouse/service/impl/WarehouseAbnormalRecordServiceImpl.java

@ -1,31 +0,0 @@
package com.logpm.warehouse.service.impl;
import com.baomidou.mybatisplus.core.metadata.IPage;
import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
import com.logpm.warehouse.dto.AbnormalRecordDTO;
import com.logpm.warehouse.entity.WarehouseAbnormalRecordEntity;
import com.logpm.warehouse.mapper.WarehouseAbnormalRecordMapper;
import com.logpm.warehouse.service.IWarehouseAbnormalRecordService;
import lombok.AllArgsConstructor;
import lombok.extern.slf4j.Slf4j;
import org.springblade.core.mp.base.BaseServiceImpl;
import org.springblade.core.tool.api.R;
import org.springframework.stereotype.Service;
@Slf4j
@Service
@AllArgsConstructor
public class WarehouseAbnormalRecordServiceImpl extends BaseServiceImpl<WarehouseAbnormalRecordMapper,WarehouseAbnormalRecordEntity> implements IWarehouseAbnormalRecordService {
@Override
public R findPageList(AbnormalRecordDTO abnormalRecordDTO) {
IPage<Object> page = new Page<>();
page.setCurrent(abnormalRecordDTO.getPageNum());
page.setSize(abnormalRecordDTO.getPageSize());
IPage<WarehouseAbnormalRecordEntity> pageList = baseMapper.findPageList(page,abnormalRecordDTO);
return R.data(pageList);
}
}
Loading…
Cancel
Save