Browse Source

1.同步托盘信息接口

single_db
zhenghaoyu 1 year ago
parent
commit
b2f4c680dd
  1. 296
      blade-service/logpm-factory/src/main/java/com/logpm/factory/receiver/OrderStatusHandler.java

296
blade-service/logpm-factory/src/main/java/com/logpm/factory/receiver/OrderStatusHandler.java

@ -1,7 +1,5 @@
package com.logpm.factory.receiver;
import com.logpm.basicdata.entity.BasicdataTrayEntity;
import com.logpm.basicdata.entity.BasicdataWarehouseEntity;
import com.logpm.basicdata.feign.IBasicdataTrayClient;
import com.logpm.basicdata.feign.IBasicdataWarehouseClient;
import com.logpm.factory.comfac.constant.FactoryConstant;
@ -11,15 +9,10 @@ import com.logpm.factory.oupai.service.IOuPaiFactoryService;
import com.logpm.factory.pan.service.IPanFactoryDataService;
import com.logpm.factory.zb.service.IZbFactoryDataService;
import com.logpm.oldproject.entity.AdvanceEntity;
import com.logpm.oldproject.entity.TrayEntity;
import com.logpm.oldproject.entity.TrayScanDesEntity;
import com.logpm.oldproject.entity.TrayScanEntity;
import com.logpm.oldproject.feign.IAdvanceClient;
import com.logpm.oldproject.feign.ITrayClient;
import com.logpm.oldproject.feign.ITrayScanClient;
import com.logpm.oldproject.feign.ITrayScanDesClient;
import com.logpm.warehouse.entity.WarehouseTrayGoodsEntity;
import com.logpm.warehouse.entity.WarehouseUpdownGoodsEntity;
import com.logpm.warehouse.feign.*;
import com.rabbitmq.client.Channel;
import lombok.extern.slf4j.Slf4j;
@ -34,7 +27,6 @@ import org.springframework.stereotype.Component;
import java.io.IOException;
import java.security.NoSuchAlgorithmException;
import java.util.HashMap;
import java.util.Map;
import java.util.Objects;
@ -147,150 +139,150 @@ public class OrderStatusHandler {
}
String status = orderStatusDTO.getStatus();
if("2".equals(status)){
String currentWarehouse = orderStatusDTO.getCurrentWarehouse();
BasicdataWarehouseEntity basicdataWarehouseEntity = basicdataWarehouseClient.getWarehouseByOldId(Integer.parseInt(currentWarehouse));
if(Objects.isNull(basicdataWarehouseEntity)){
log.warn("####################orderStatusHandler: 仓库信息为空 basicdataWarehouseEntity={}",basicdataWarehouseEntity);
return;
}
Long warehouseId = basicdataWarehouseEntity.getId();
Integer oldId = basicdataWarehouseEntity.getOldId();
Integer trayId = orderStatusDTO.getTrayId();
if(Objects.isNull(trayId)){
log.warn("####################orderStatusHandler: 托盘id为空 trayId={}",trayId);
return;
}
BasicdataTrayEntity basicdataTrayEntity = basicdataTrayClient.getTrayByTrayCode("T" + trayId);
if(Objects.isNull(basicdataTrayEntity)){
log.info("############syncTrayTypeData: 托盘信息不存在");
//如果托盘不存在就去同步该托盘
TrayEntity trayEntity = trayClient.getTrayById(trayId);
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(warehouseId);
basicdataTrayEntity.setTrayStatus(trayEntity.getStatus()+"");
basicdataTrayEntity.setType(1);
basicdataTrayEntity.setOldId(trayId);
// basicdataTrayEntity.setNowWarehouseId(nowNewWarehouseId);
Long aLong = basicdataTrayClient.addTray(basicdataTrayEntity);
basicdataTrayEntity.setId(aLong);
}
TrayScanDesEntity trayScanDesEntity = trayScanDesClient.findScanTypeId(trayId, unitNo, oldId);
if(Objects.isNull(trayScanDesEntity)){
log.warn("####################orderStatusHandler: 没有打托数据 trayId={}",trayId);
return;
}
Integer trayScanId = trayScanDesEntity.getTrayScanId();
TrayScanEntity trayScanEntity = trayScanClient.getEntityByTrayScanId(trayScanId);
if(Objects.isNull(trayScanEntity)){
log.warn("####################orderStatusHandler: 没有打托方式数据 trayScanId={}",trayScanId);
return;
}
Integer trayType = trayScanEntity.getType();
String newTrayType = "100";
if(1==trayType){
newTrayType = "60";
}else if(2==trayType){
newTrayType = "30";
}else if(3==trayType){
newTrayType = "50";
}else if(4==trayType){
newTrayType = "100";
}else if(5==trayType){
newTrayType = "10";
}else if(6==trayType){
newTrayType = "20";
}
//判断托盘是否有上架
Long allocationId = taryAllocationClient.findAllocationByTrayId(basicdataTrayEntity.getId());
if(Objects.isNull(allocationId)){
//没有上架就直接打托
Map<String,Object> m = new HashMap<>();
m.put("trayType",newTrayType);
m.put("trayCode","T"+trayId);
m.put("warehouseId",warehouseId);
m.put("orderPackageCode",unitNo);
R response = warehouseTrayTypeClient.orderScanOrderPackageCodeReturnR(m);
int code = response.getCode();
if(code == 4001){
log.info("####################orderStatusHandler: 包件已在当前托盘打托 unitNo={} trayCode={}",unitNo,"T"+trayId);
}else if(code == 4002){
log.info("####################orderStatusHandler: 包件已在其他托盘打托 unitNo={} ",unitNo);
WarehouseTrayGoodsEntity trayGoodsEntity = warehouseTrayGoodsClient.findTrayCodeByOrderPackageCode(unitNo);
if(Objects.isNull(trayGoodsEntity)){
log.warn("####################orderStatusHandler: 包件未打托 unitNo={}",unitNo);
}else{
String oldTrayCode = trayGoodsEntity.getTrayCode();
Long trayGoodsId = trayGoodsEntity.getId();
Long wid = trayGoodsEntity.getWarehouseId();
BasicdataTrayEntity oldTrayEntity = basicdataTrayClient.getTrayByTrayCode(oldTrayCode);
Long oldTrayId = oldTrayEntity.getId();
//判断托盘是否有上架
Long oldAllocationId = taryAllocationClient.findAllocationByTrayId(oldTrayId);
if (Objects.isNull(oldAllocationId)){
//没有上架
//直接解绑托盘
warehouseTrayGoodsClient.delTrayGoodsById(trayGoodsId,wid);
}else{
//有上架
//下架
updownTypeClient.downPackage(unitNo,wid);
}
}
boolean b1 = warehouseTrayTypeClient.orderScanOrderPackageCode(m);
if(!b1){
log.warn("####################orderStatusHandler: 二次打托失败 unitNo={} trayCode={}",unitNo,"T"+trayId);
}else{
log.info("####################orderStatusHandler: 二次打托成功 unitNo={} trayCode={}",unitNo,"T"+trayId);
}
}else if(code == 4003){
log.info("####################orderStatusHandler: 包件未打托已上架 unitNo={} ",unitNo);
WarehouseUpdownGoodsEntity updownGoodsEntity = warehouseUpdownGoodsClient.findEntityByOrderPackageCode(unitNo);
if(Objects.isNull(updownGoodsEntity)){
log.warn("####################orderStatusHandler: 包件未上架 unitNo={}",unitNo);
}else{
Long wid = updownGoodsEntity.getWarehouseId();
updownTypeClient.downPackage(unitNo,wid);
}
boolean b1 = warehouseTrayTypeClient.orderScanOrderPackageCode(m);
if(!b1){
log.warn("####################orderStatusHandler: 二次打托失败 unitNo={} trayCode={}",unitNo,"T"+trayId);
}else{
log.info("####################orderStatusHandler: 二次打托成功 unitNo={} trayCode={}",unitNo,"T"+trayId);
}
}else if(code == 4004){
log.info("####################orderStatusHandler: 包件打托方式不正确 unitNo={} ",unitNo);
//先去空置托盘再打托
warehouseTrayTypeClient.trayToNull("T"+trayId);
boolean b1 = warehouseTrayTypeClient.orderScanOrderPackageCode(m);
if(!b1){
log.warn("####################orderStatusHandler: 二次打托失败 unitNo={} trayCode={}",unitNo,"T"+trayId);
}
}else{
String msg1 = r.getMsg();
int code1 = r.getCode();
log.warn("######################orderStatusHandler: 打托失败 msg={} code={}",msg1,code1);
log.warn("######################orderStatusHandler: 打托失败 unitNo={} trayCode={}",unitNo,"T"+trayId);
}
}else{
//有上架就上架
updownTypeClient.upShelfPackage(unitNo,allocationId,warehouseId);
}
}
// String status = orderStatusDTO.getStatus();
// if("2".equals(status)){
// String currentWarehouse = orderStatusDTO.getCurrentWarehouse();
// BasicdataWarehouseEntity basicdataWarehouseEntity = basicdataWarehouseClient.getWarehouseByOldId(Integer.parseInt(currentWarehouse));
// if(Objects.isNull(basicdataWarehouseEntity)){
// log.warn("####################orderStatusHandler: 仓库信息为空 basicdataWarehouseEntity={}",basicdataWarehouseEntity);
// return;
// }
// Long warehouseId = basicdataWarehouseEntity.getId();
// Integer oldId = basicdataWarehouseEntity.getOldId();
//
// Integer trayId = orderStatusDTO.getTrayId();
// if(Objects.isNull(trayId)){
// log.warn("####################orderStatusHandler: 托盘id为空 trayId={}",trayId);
// return;
// }
// BasicdataTrayEntity basicdataTrayEntity = basicdataTrayClient.getTrayByTrayCode("T" + trayId);
// if(Objects.isNull(basicdataTrayEntity)){
// log.info("############syncTrayTypeData: 托盘信息不存在");
// //如果托盘不存在就去同步该托盘
// TrayEntity trayEntity = trayClient.getTrayById(trayId);
// 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(warehouseId);
// basicdataTrayEntity.setTrayStatus(trayEntity.getStatus()+"");
// basicdataTrayEntity.setType(1);
// basicdataTrayEntity.setOldId(trayId);
//// basicdataTrayEntity.setNowWarehouseId(nowNewWarehouseId);
// Long aLong = basicdataTrayClient.addTray(basicdataTrayEntity);
// basicdataTrayEntity.setId(aLong);
// }
//
// TrayScanDesEntity trayScanDesEntity = trayScanDesClient.findScanTypeId(trayId, unitNo, oldId);
// if(Objects.isNull(trayScanDesEntity)){
// log.warn("####################orderStatusHandler: 没有打托数据 trayId={}",trayId);
// return;
// }
// Integer trayScanId = trayScanDesEntity.getTrayScanId();
// TrayScanEntity trayScanEntity = trayScanClient.getEntityByTrayScanId(trayScanId);
// if(Objects.isNull(trayScanEntity)){
// log.warn("####################orderStatusHandler: 没有打托方式数据 trayScanId={}",trayScanId);
// return;
// }
// Integer trayType = trayScanEntity.getType();
//
// String newTrayType = "100";
// if(1==trayType){
// newTrayType = "60";
// }else if(2==trayType){
// newTrayType = "30";
// }else if(3==trayType){
// newTrayType = "50";
// }else if(4==trayType){
// newTrayType = "100";
// }else if(5==trayType){
// newTrayType = "10";
// }else if(6==trayType){
// newTrayType = "20";
// }
//
// //判断托盘是否有上架
// Long allocationId = taryAllocationClient.findAllocationByTrayId(basicdataTrayEntity.getId());
// if(Objects.isNull(allocationId)){
// //没有上架就直接打托
// Map<String,Object> m = new HashMap<>();
// m.put("trayType",newTrayType);
// m.put("trayCode","T"+trayId);
// m.put("warehouseId",warehouseId);
// m.put("orderPackageCode",unitNo);
//
// R response = warehouseTrayTypeClient.orderScanOrderPackageCodeReturnR(m);
// int code = response.getCode();
// if(code == 4001){
// log.info("####################orderStatusHandler: 包件已在当前托盘打托 unitNo={} trayCode={}",unitNo,"T"+trayId);
// }else if(code == 4002){
// log.info("####################orderStatusHandler: 包件已在其他托盘打托 unitNo={} ",unitNo);
// WarehouseTrayGoodsEntity trayGoodsEntity = warehouseTrayGoodsClient.findTrayCodeByOrderPackageCode(unitNo);
// if(Objects.isNull(trayGoodsEntity)){
// log.warn("####################orderStatusHandler: 包件未打托 unitNo={}",unitNo);
// }else{
// String oldTrayCode = trayGoodsEntity.getTrayCode();
// Long trayGoodsId = trayGoodsEntity.getId();
// Long wid = trayGoodsEntity.getWarehouseId();
// BasicdataTrayEntity oldTrayEntity = basicdataTrayClient.getTrayByTrayCode(oldTrayCode);
// Long oldTrayId = oldTrayEntity.getId();
// //判断托盘是否有上架
// Long oldAllocationId = taryAllocationClient.findAllocationByTrayId(oldTrayId);
// if (Objects.isNull(oldAllocationId)){
// //没有上架
// //直接解绑托盘
// warehouseTrayGoodsClient.delTrayGoodsById(trayGoodsId,wid);
// }else{
// //有上架
// //下架
// updownTypeClient.downPackage(unitNo,wid);
// }
// }
//
// boolean b1 = warehouseTrayTypeClient.orderScanOrderPackageCode(m);
// if(!b1){
// log.warn("####################orderStatusHandler: 二次打托失败 unitNo={} trayCode={}",unitNo,"T"+trayId);
// }else{
// log.info("####################orderStatusHandler: 二次打托成功 unitNo={} trayCode={}",unitNo,"T"+trayId);
// }
// }else if(code == 4003){
// log.info("####################orderStatusHandler: 包件未打托已上架 unitNo={} ",unitNo);
// WarehouseUpdownGoodsEntity updownGoodsEntity = warehouseUpdownGoodsClient.findEntityByOrderPackageCode(unitNo);
// if(Objects.isNull(updownGoodsEntity)){
// log.warn("####################orderStatusHandler: 包件未上架 unitNo={}",unitNo);
// }else{
// Long wid = updownGoodsEntity.getWarehouseId();
// updownTypeClient.downPackage(unitNo,wid);
// }
// boolean b1 = warehouseTrayTypeClient.orderScanOrderPackageCode(m);
// if(!b1){
// log.warn("####################orderStatusHandler: 二次打托失败 unitNo={} trayCode={}",unitNo,"T"+trayId);
// }else{
// log.info("####################orderStatusHandler: 二次打托成功 unitNo={} trayCode={}",unitNo,"T"+trayId);
// }
// }else if(code == 4004){
// log.info("####################orderStatusHandler: 包件打托方式不正确 unitNo={} ",unitNo);
// //先去空置托盘再打托
// warehouseTrayTypeClient.trayToNull("T"+trayId);
// boolean b1 = warehouseTrayTypeClient.orderScanOrderPackageCode(m);
// if(!b1){
// log.warn("####################orderStatusHandler: 二次打托失败 unitNo={} trayCode={}",unitNo,"T"+trayId);
// }
// }else{
// String msg1 = r.getMsg();
// int code1 = r.getCode();
// log.warn("######################orderStatusHandler: 打托失败 msg={} code={}",msg1,code1);
// log.warn("######################orderStatusHandler: 打托失败 unitNo={} trayCode={}",unitNo,"T"+trayId);
// }
//
// }else{
// //有上架就上架
// updownTypeClient.upShelfPackage(unitNo,allocationId,warehouseId);
// }
// }
}
}

Loading…
Cancel
Save