Browse Source

1.同步盘点任务中的打托数据

training
zhenghaoyu 1 year ago
parent
commit
c78d34ea2d
  1. 6
      blade-service-api/logpm-old-project-api/src/main/java/com/logpm/oldproject/feign/IInventoryDetailClient.java
  2. 3
      blade-service-api/logpm-old-project-api/src/main/java/com/logpm/oldproject/feign/ITrayScanDesClient.java
  3. 7
      blade-service/logpm-old-project/src/main/java/com/logpm/oldproject/feign/InventoryDetailClient.java
  4. 5
      blade-service/logpm-old-project/src/main/java/com/logpm/oldproject/feign/TrayScanDesClient.java
  5. 3
      blade-service/logpm-old-project/src/main/java/com/logpm/oldproject/mapper/InventoryDetailMapper.java
  6. 13
      blade-service/logpm-old-project/src/main/java/com/logpm/oldproject/mapper/InventoryDetailMapper.xml
  7. 4
      blade-service/logpm-old-project/src/main/java/com/logpm/oldproject/service/IInventoryDetailService.java
  8. 2
      blade-service/logpm-old-project/src/main/java/com/logpm/oldproject/service/ITrayScanDesService.java
  9. 7
      blade-service/logpm-old-project/src/main/java/com/logpm/oldproject/service/impl/InventoryDetailServiceImpl.java
  10. 10
      blade-service/logpm-old-project/src/main/java/com/logpm/oldproject/service/impl/TrayScanDesServiceImpl.java
  11. 27
      blade-service/logpm-patch/src/main/java/com/logpm/patch/jobhandle/SyncOrderInfoToPlatform.java
  12. 3
      blade-service/logpm-patch/src/main/java/com/logpm/patch/service/ISyncOrderInfoService.java
  13. 63
      blade-service/logpm-patch/src/main/java/com/logpm/patch/service/impl/SyncOrderInfoServiceImpl.java

6
blade-service-api/logpm-old-project-api/src/main/java/com/logpm/oldproject/feign/IInventoryDetailClient.java

@ -6,6 +6,8 @@ import org.springframework.cloud.openfeign.FeignClient;
import org.springframework.web.bind.annotation.GetMapping; import org.springframework.web.bind.annotation.GetMapping;
import org.springframework.web.bind.annotation.RequestParam; import org.springframework.web.bind.annotation.RequestParam;
import java.util.List;
@FeignClient( @FeignClient(
value = ModuleNameConstant.APPLICATION_OLDPROJECT_NAME value = ModuleNameConstant.APPLICATION_OLDPROJECT_NAME
) )
@ -19,6 +21,10 @@ public interface IInventoryDetailClient {
@GetMapping(API_PREFIX + "/findUnitNoIsExist") @GetMapping(API_PREFIX + "/findUnitNoIsExist")
InventoryDetailEntity findUnitNoIsExist(@RequestParam String unitNo); InventoryDetailEntity findUnitNoIsExist(@RequestParam String unitNo);
@GetMapping(API_PREFIX + "/findAllTrayType")
List<InventoryDetailEntity> findAllTrayType();
// @GetMapping(API_PREFIX + "/getEntityByOrderCode") // @GetMapping(API_PREFIX + "/getEntityByOrderCode")
// OrderCountEntity getEntityByOrderCode(@RequestParam String orderCode, @RequestParam Integer oldWarehouseId); // OrderCountEntity getEntityByOrderCode(@RequestParam String orderCode, @RequestParam Integer oldWarehouseId);
} }

3
blade-service-api/logpm-old-project-api/src/main/java/com/logpm/oldproject/feign/ITrayScanDesClient.java

@ -21,6 +21,9 @@ public interface ITrayScanDesClient {
@GetMapping(API_PREFIX + "/findZeroListByOrderCodeAndWarehouseId") @GetMapping(API_PREFIX + "/findZeroListByOrderCodeAndWarehouseId")
List<TrayScanDesEntity> findZeroListByOrderCodeAndWarehouseId(@RequestParam String orderCode, @RequestParam Integer oldWarehouseId); List<TrayScanDesEntity> findZeroListByOrderCodeAndWarehouseId(@RequestParam String orderCode, @RequestParam Integer oldWarehouseId);
@GetMapping(API_PREFIX + "/findScanTypeId")
TrayScanDesEntity findScanTypeId(@RequestParam Integer trayId, @RequestParam String unitNo, @RequestParam Integer oldWarehouseId);
// @GetMapping(API_PREFIX + "/getEntityByOrderCode") // @GetMapping(API_PREFIX + "/getEntityByOrderCode")
// OrderCountEntity getEntityByOrderCode(@RequestParam String orderCode, @RequestParam Integer oldWarehouseId); // OrderCountEntity getEntityByOrderCode(@RequestParam String orderCode, @RequestParam Integer oldWarehouseId);
} }

7
blade-service/logpm-old-project/src/main/java/com/logpm/oldproject/feign/InventoryDetailClient.java

@ -6,6 +6,8 @@ import lombok.AllArgsConstructor;
import org.springframework.web.bind.annotation.RestController; import org.springframework.web.bind.annotation.RestController;
import springfox.documentation.annotations.ApiIgnore; import springfox.documentation.annotations.ApiIgnore;
import java.util.List;
@ApiIgnore() @ApiIgnore()
@RestController @RestController
@AllArgsConstructor @AllArgsConstructor
@ -22,4 +24,9 @@ public class InventoryDetailClient implements IInventoryDetailClient{
public InventoryDetailEntity findUnitNoIsExist(String unitNo) { public InventoryDetailEntity findUnitNoIsExist(String unitNo) {
return inventoryDetailService.findUnitNoIsExist(unitNo); return inventoryDetailService.findUnitNoIsExist(unitNo);
} }
@Override
public List<InventoryDetailEntity> findAllTrayType() {
return inventoryDetailService.findAllTrayType();
}
} }

5
blade-service/logpm-old-project/src/main/java/com/logpm/oldproject/feign/TrayScanDesClient.java

@ -24,4 +24,9 @@ public class TrayScanDesClient implements ITrayScanDesClient {
public List<TrayScanDesEntity> findZeroListByOrderCodeAndWarehouseId(String orderCode, Integer oldWarehouseId) { public List<TrayScanDesEntity> findZeroListByOrderCodeAndWarehouseId(String orderCode, Integer oldWarehouseId) {
return trayScanDesService.findZeroListByOrderCodeAndWarehouseId(orderCode, oldWarehouseId); return trayScanDesService.findZeroListByOrderCodeAndWarehouseId(orderCode, oldWarehouseId);
} }
@Override
public TrayScanDesEntity findScanTypeId(Integer trayId, String unitNo, Integer oldWarehouseId) {
return trayScanDesService.findScanTypeId(trayId,unitNo,oldWarehouseId);
}
} }

3
blade-service/logpm-old-project/src/main/java/com/logpm/oldproject/mapper/InventoryDetailMapper.java

@ -5,10 +5,13 @@ import com.logpm.oldproject.entity.InventoryDetailEntity;
import org.apache.ibatis.annotations.Mapper; import org.apache.ibatis.annotations.Mapper;
import org.apache.ibatis.annotations.Param; import org.apache.ibatis.annotations.Param;
import java.util.List;
@Mapper @Mapper
public interface InventoryDetailMapper extends BaseMapper<InventoryDetailEntity> { public interface InventoryDetailMapper extends BaseMapper<InventoryDetailEntity> {
InventoryDetailEntity findOrderIsExist(@Param("orderCode") String orderCode); InventoryDetailEntity findOrderIsExist(@Param("orderCode") String orderCode);
InventoryDetailEntity findUnitNoIsExist(@Param("unitNo") String unitNo); InventoryDetailEntity findUnitNoIsExist(@Param("unitNo") String unitNo);
List<InventoryDetailEntity> findAllTrayType();
} }

13
blade-service/logpm-old-project/src/main/java/com/logpm/oldproject/mapper/InventoryDetailMapper.xml

@ -22,4 +22,17 @@
limit 1 limit 1
</select> </select>
<select id="findAllTrayType" resultType="com.logpm.oldproject.entity.InventoryDetailEntity">
select unitNo unitNo,
tray_id trayId
from ht_inventory_detail
where inventory_id in (185,187,188,189)
and tray_id != 0
and unitNo != '10215486=027916'
group by unitNo,
tray_id
</select>
</mapper> </mapper>

4
blade-service/logpm-old-project/src/main/java/com/logpm/oldproject/service/IInventoryDetailService.java

@ -2,10 +2,14 @@ package com.logpm.oldproject.service;
import com.logpm.oldproject.entity.InventoryDetailEntity; import com.logpm.oldproject.entity.InventoryDetailEntity;
import java.util.List;
public interface IInventoryDetailService { public interface IInventoryDetailService {
InventoryDetailEntity findOrderIsExist(String orderCode); InventoryDetailEntity findOrderIsExist(String orderCode);
InventoryDetailEntity findUnitNoIsExist(String unitNo); InventoryDetailEntity findUnitNoIsExist(String unitNo);
List<InventoryDetailEntity> findAllTrayType();
} }

2
blade-service/logpm-old-project/src/main/java/com/logpm/oldproject/service/ITrayScanDesService.java

@ -8,4 +8,6 @@ public interface ITrayScanDesService {
List<TrayScanDesEntity> findListByOrderCodeAndWarehouseId(String orderCode, Integer oldWarehouseId); List<TrayScanDesEntity> findListByOrderCodeAndWarehouseId(String orderCode, Integer oldWarehouseId);
List<TrayScanDesEntity> findZeroListByOrderCodeAndWarehouseId(String orderCode, Integer oldWarehouseId); List<TrayScanDesEntity> findZeroListByOrderCodeAndWarehouseId(String orderCode, Integer oldWarehouseId);
TrayScanDesEntity findScanTypeId(Integer trayId, String unitNo, Integer oldWarehouseId);
} }

7
blade-service/logpm-old-project/src/main/java/com/logpm/oldproject/service/impl/InventoryDetailServiceImpl.java

@ -6,6 +6,8 @@ import com.logpm.oldproject.service.IInventoryDetailService;
import lombok.AllArgsConstructor; import lombok.AllArgsConstructor;
import org.springframework.stereotype.Service; import org.springframework.stereotype.Service;
import java.util.List;
@Service @Service
@AllArgsConstructor @AllArgsConstructor
public class InventoryDetailServiceImpl implements IInventoryDetailService { public class InventoryDetailServiceImpl implements IInventoryDetailService {
@ -21,4 +23,9 @@ public class InventoryDetailServiceImpl implements IInventoryDetailService {
public InventoryDetailEntity findUnitNoIsExist(String unitNo) { public InventoryDetailEntity findUnitNoIsExist(String unitNo) {
return inventoryDetailMapper.findUnitNoIsExist(unitNo); return inventoryDetailMapper.findUnitNoIsExist(unitNo);
} }
@Override
public List<InventoryDetailEntity> findAllTrayType() {
return inventoryDetailMapper.findAllTrayType();
}
} }

10
blade-service/logpm-old-project/src/main/java/com/logpm/oldproject/service/impl/TrayScanDesServiceImpl.java

@ -28,4 +28,14 @@ public class TrayScanDesServiceImpl implements ITrayScanDesService {
public List<TrayScanDesEntity> findZeroListByOrderCodeAndWarehouseId(String orderCode, Integer oldWarehouseId) { public List<TrayScanDesEntity> findZeroListByOrderCodeAndWarehouseId(String orderCode, Integer oldWarehouseId) {
return trayScanDesMapper.findZeroListByOrderCodeAndWarehouseId(orderCode,oldWarehouseId); return trayScanDesMapper.findZeroListByOrderCodeAndWarehouseId(orderCode,oldWarehouseId);
} }
@Override
public TrayScanDesEntity findScanTypeId(Integer trayId, String unitNo, Integer oldWarehouseId) {
QueryWrapper<TrayScanDesEntity> queryWrapper = new QueryWrapper<>();
queryWrapper.eq("now_warehouse_id",oldWarehouseId)
.eq("type",1)
.eq("tray_id",trayId)
.eq("unitNo",unitNo);
return trayScanDesMapper.selectOne(queryWrapper);
}
} }

27
blade-service/logpm-patch/src/main/java/com/logpm/patch/jobhandle/SyncOrderInfoToPlatform.java

@ -34,6 +34,7 @@ public class SyncOrderInfoToPlatform {
private final IOrderSyncRecordService orderSyncRecordService; private final IOrderSyncRecordService orderSyncRecordService;
private final ISyncOrderInfoService syncOrderInfoService; private final ISyncOrderInfoService syncOrderInfoService;
@XxlJob("syncOrderInfo") @XxlJob("syncOrderInfo")
public ReturnT<String> syncOrderInfo(String param) { public ReturnT<String> syncOrderInfo(String param) {
@ -223,4 +224,30 @@ public class SyncOrderInfoToPlatform {
} }
@XxlJob("syncTrayType")
public ReturnT<String> syncTrayType(String param) {
log.info("############syncTrayType: 同步打托数据开始");
//查询需要同步的仓库
List<WarehouseMappingDataEntity> warehouseMappingDataEntityList = warehouseMappingDataService.getWarehouseMapping();
if(warehouseMappingDataEntityList.isEmpty()){
log.warn("###############syncZeroOrderInfo: 当前没有配置需要同步的仓库信息");
return ReturnT.FAIL;
}
for (WarehouseMappingDataEntity entity:warehouseMappingDataEntityList){
Integer oldWarehouseId = entity.getOldWarehouseId();
Long newWarehouseId = entity.getNewWarehouseId();
syncOrderInfoService.syncTrayType(oldWarehouseId,newWarehouseId);
}
return ReturnT.SUCCESS;
}
// @XxlJob("syncEntryTime")
// public ReturnT<String> syncTrayType(String param) {
//
// }
} }

3
blade-service/logpm-patch/src/main/java/com/logpm/patch/service/ISyncOrderInfoService.java

@ -6,4 +6,7 @@ public interface ISyncOrderInfoService {
void handleData(List<String> orderCodeList,Integer oldWarehouseId,Long newWarehouseId); void handleData(List<String> orderCodeList,Integer oldWarehouseId,Long newWarehouseId);
void handleDataZero(List<String> orderCodeList, Integer oldWarehouseId, Long newWarehouseId); void handleDataZero(List<String> orderCodeList, Integer oldWarehouseId, Long newWarehouseId);
void syncTrayType(Integer oldWarehouseId,Long newWarehouseId);
} }

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

@ -122,6 +122,13 @@ public class SyncOrderInfoServiceImpl implements ISyncOrderInfoService {
} }
} }
@Override
public void syncTrayType(Integer oldWarehouseId,Long newWarehouseId) {
saveTrayTypeInfoPackageNew(oldWarehouseId,newWarehouseId);
}
private void saveTrayTypeInfoPackage(String orderCode,Integer oldWarehouseId,Long newWarehouseId) { private void saveTrayTypeInfoPackage(String orderCode,Integer oldWarehouseId,Long newWarehouseId) {
//如果是订制品就先查询该订单有哪些包件打了托 //如果是订制品就先查询该订单有哪些包件打了托
@ -995,4 +1002,60 @@ public class SyncOrderInfoServiceImpl implements ISyncOrderInfoService {
return wayBillEntity; return wayBillEntity;
} }
private void saveTrayTypeInfoPackageNew(Integer oldWarehouseId, Long newWarehouseId) {
List<InventoryDetailEntity> ls = inventoryDetailClient.findAllTrayType();
for (InventoryDetailEntity entity:ls){
Integer trayId = entity.getTrayId();
String unitNo = entity.getUnitNo();//包条码
TrayScanDesEntity trayScanDesEntity = trayScanDesClient.findScanTypeId(trayId,unitNo,oldWarehouseId);
Integer trayScanId = trayScanDesEntity.getTrayScanId();
InventoryDetailEntity inventoryDetailEntity = inventoryDetailClient.findUnitNoIsExist(unitNo);
if(Objects.isNull(inventoryDetailEntity)){
log.info("###########saveTrayTypeInfoPackage: 包条不在盘点任务中存在,不同步 unitNo={}",unitNo);
continue;
}
//查询打托方式信息
TrayScanEntity trayScanEntity = trayScanClient.getEntityByTrayScanId(trayScanId);
Integer type = trayScanEntity.getType();
//方式:1=仓,2=商场,3=客户,4=其他,5=服务号,6=合同号
//方式:60=仓,30=商场,50=客户,100=其他,10=服务号,20=合同号
String newTrayType = "100";
if(1==type){
newTrayType = "60";
}else if(2==type){
newTrayType = "30";
}else if(3==type){
newTrayType = "50";
}else if(4==type){
newTrayType = "100";
}else if(5==type){
newTrayType = "10";
}else if(6==type){
newTrayType = "20";
}
Map<String,Object> map = new HashMap<>();
map.put("trayType",newTrayType);
map.put("trayCode","T"+trayId);
map.put("warehouseId",newWarehouseId);
map.put("orderPackageCode",unitNo);
//新系统保存打托方式
boolean b = warehouseTrayTypeClient.orderScanOrderPackageCode(map);
if(!b){
log.error("################saveTrayTypeInfo: 包件打托失败 unitNo={} trayCode={}",unitNo,"T"+trayId);
throw new CustomerException(403,"包件打托失败");
}
}
}
} }

Loading…
Cancel
Save