订单同步

liweidong
liweidong-hj 6 hours ago
parent da536efb5f
commit 1222ecb330
  1. 2
      blade-ops/blade-job/src/main/java/org/springblade/job/processor/erp/SynPurchaseProcessor.java
  2. 2
      blade-service-api/blade-erpdata-api/src/main/java/org/springblade/erpdata/feign/IErpMesRbWoClient.java
  3. 2
      blade-service-api/blade-erpdata-api/src/main/java/org/springblade/erpdata/feign/IErpMesRbWoClientFallback.java
  4. 10
      blade-service/blade-desk/src/main/java/org/springblade/desk/order/controller/YieldOrderController.java
  5. 7
      blade-service/blade-desk/src/main/java/org/springblade/desk/order/service/IYieldOrderService.java
  6. 11
      blade-service/blade-desk/src/main/java/org/springblade/desk/order/service/impl/YieldOrderServiceImpl.java
  7. 4
      blade-service/blade-erpdata/src/main/java/org/springblade/erpdata/feign/ErpMesRbWoClient.java
  8. 3
      blade-service/blade-erpdata/src/main/java/org/springblade/erpdata/mapper/ErpMesRbPurtosoMapper.java
  9. 3
      blade-service/blade-erpdata/src/main/java/org/springblade/erpdata/mapper/ErpMesRbPurtosoMapper.xml
  10. 2
      blade-service/blade-erpdata/src/main/java/org/springblade/erpdata/service/IErpMesRbPurtosoService.java
  11. 2
      blade-service/blade-erpdata/src/main/java/org/springblade/erpdata/service/IErpMesRbWoService.java
  12. 4
      blade-service/blade-erpdata/src/main/java/org/springblade/erpdata/service/impl/ErpMesRbPurtosoServiceImpl.java
  13. 20
      blade-service/blade-erpdata/src/main/java/org/springblade/erpdata/service/impl/ErpMesRbWoServiceImpl.java

@ -24,7 +24,7 @@ public class SynPurchaseProcessor implements BasicProcessor {
@Override
public ProcessResult process(TaskContext taskContext) throws Exception {
log.info("同步物资转车间协作加工订单定时任务开始");
CompletableFuture<Void> runFuture = CompletableFuture.runAsync(()-> mesRbWoClient.synPurchase());
CompletableFuture<Void> runFuture = CompletableFuture.runAsync(()-> mesRbWoClient.synPurchase(null));
runFuture.whenComplete((result, exception) -> {
if (exception != null) {
log.error("同步物资转车间协作加工订单定时任务失败", exception);

@ -62,7 +62,7 @@ public interface IErpMesRbWoClient {
@GetMapping(GET_WO)
R<Wo> getWoOne(String ypCode);
@GetMapping(SYN_PURCHASE)
R<Void> synPurchase();
R<Void> synPurchase(@RequestParam("yoCode") String yoCode);
@GetMapping(SYN_TEMPORARY)
R<Void> synTemporary();
@GetMapping(SYN_SINTER)

@ -42,7 +42,7 @@ public class IErpMesRbWoClientFallback implements IErpMesRbWoClient {
}
@Override
public R<Void> synPurchase() {
public R<Void> synPurchase(String ypCode) {
return R.fail("获取数据失败");
}

@ -391,4 +391,14 @@ public class YieldOrderController extends BladeController {
Boolean result = yieldOrderService.saveYieldOrder(entity);
return R.status(result);
}
/**
* 同步订单
*/
@PostMapping("/syncYieldOrder")
@Operation(summary = "同步订单", description = "")
public R syncYieldOrder(@RequestParam String yoCode) {
Boolean result = yieldOrderService.syncYieldOrder(yoCode);
return R.status(result);
}
}

@ -323,4 +323,11 @@ public interface IYieldOrderService extends BaseService<YieldOrder> {
* @return
*/
Boolean saveYieldOrder(YieldOrder entity);
/**
* 同步订单
* @param yoCode
* @return
*/
Boolean syncYieldOrder(String yoCode);
}

@ -57,6 +57,7 @@ import org.springblade.desk.order.service.IYieldOrderCraftService;
import org.springblade.desk.order.service.IYieldOrderService;
import org.springblade.desk.produce.mapper.WorkOrderMapper;
import org.springblade.desk.produce.pojo.entity.WorkOrder;
import org.springblade.erpdata.feign.IErpMesRbWoClient;
import org.springblade.erpdata.feign.IErpYieldOrderClient;
import org.springblade.scheduling.pojo.entity.PartRelationEntity;
import org.springblade.scheduling.pojo.entity.QualityGradeEntity;
@ -169,6 +170,9 @@ public class YieldOrderServiceImpl extends BaseServiceImpl<YieldOrderMapper, Yie
@Autowired
IUserClient userClient;
@Autowired
private IErpMesRbWoClient mesRbWoClient;
@Override
public IPage<YieldOrder> selectPage(IPage<YieldOrder> page, YieldOrderDto entity) {
//烧结 热表订单
@ -2026,6 +2030,13 @@ public class YieldOrderServiceImpl extends BaseServiceImpl<YieldOrderMapper, Yie
return this.save(entity);
}
@Override
public Boolean syncYieldOrder(String yoCode) {
R<Void> voidR = mesRbWoClient.synPurchase(yoCode);
return null;
}
/**
* @param codeType 0:订单号1流程卡号2批次号
* @return String

@ -57,8 +57,8 @@ public class ErpMesRbWoClient implements IErpMesRbWoClient {
}
@Override
public R<Void> synPurchase() {
erpMesRbWoService.synPurchase();
public R<Void> synPurchase(String yoCode) {
erpMesRbWoService.synPurchase(yoCode);
return R.success();
}

@ -1,6 +1,7 @@
package org.springblade.erpdata.mapper;
import com.baomidou.mybatisplus.core.mapper.Mapper;
import org.apache.ibatis.annotations.Param;
import org.springblade.erpdata.pojo.dto.view.MesRbPurtoso;
import java.util.List;
@ -31,7 +32,7 @@ public interface ErpMesRbPurtosoMapper extends Mapper {
* @param newlevdateMax
* @return
*/
List<MesRbPurtoso> getMesRbPurtosoList(String newlevdateMax);
List<MesRbPurtoso> getMesRbPurtosoList(@Param("newlevdateMax") String newlevdateMax,@Param("yoCode") String yoCode);
/**
* 获取ERP推进计划转工单的vcount
*

@ -28,6 +28,9 @@
<if test="newlevdateMax != null">
AND a.newlevdate <![CDATA[ > ]]> TO_DATE(#{newlevdateMax}, 'YYYY-MM-DD HH24:MI:SS')
</if>
<if test="yoCode != null and yoCode !=''">
AND a.sono = #{yoCode}
</if>
</where>
order by a.newlevdate desc
</select>

@ -26,7 +26,7 @@ public interface IErpMesRbPurtosoService {
* @param newlevdateMax
* @return
*/
List<MesRbPurtoso> getMesRbPurtosoList(String newlevdateMax);
List<MesRbPurtoso> getMesRbPurtosoList(String newlevdateMax,String yoCode);
/**
* 获取vcount
* @param prtno

@ -31,7 +31,7 @@ public interface IErpMesRbWoService {
R<Wo> getWoOne(String ypCode);
void synPurchase();
void synPurchase(String yoCode);
/**
* 同步临时数据
*/

@ -35,8 +35,8 @@ public class ErpMesRbPurtosoServiceImpl implements IErpMesRbPurtosoService {
}
@Override
public List<MesRbPurtoso> getMesRbPurtosoList(String newlevdateMax) {
return mesRbPurtosoMapper.getMesRbPurtosoList(newlevdateMax);
public List<MesRbPurtoso> getMesRbPurtosoList(String newlevdateMax,String yoCode) {
return mesRbPurtosoMapper.getMesRbPurtosoList(newlevdateMax,yoCode);
}
@Override

@ -268,16 +268,20 @@ public class ErpMesRbWoServiceImpl implements IErpMesRbWoService {
*/
@Override
@Transactional(rollbackFor = Exception.class)
public void synPurchase() {
public void synPurchase(String yoCode) {
List<MesRbPurtoso> purtosoList = null;
if(StringUtils.isNotEmpty(yoCode)){
purtosoList=mesRbPurtosoService.getMesRbPurtosoList(null,yoCode);
}else {
//用字典的code查更新日期
String selectTime=apsOrderClient.getSelectTime("SYCN_TRANSFERCG_TIME1");
//从ERP视图查询最大日期
// String newlevdateMax=mesRbPurtosoService.getNewlevdateMax(selectTime);
// apsOrderClient.upByDateMax(newlevdateMax, "SYCN_TRANSFERCG_TIME1");
List<MesRbPurtoso> purtosoList=mesRbPurtosoService.getMesRbPurtosoList(selectTime);
purtosoList=mesRbPurtosoService.getMesRbPurtosoList(selectTime,null);
if(!CollectionUtils.isEmpty(purtosoList)){
apsOrderClient.upByDateMax(DateFormatUtils.format(purtosoList.get(0).getNewlevdate(),"yyyy-MM-dd HH:mm:ss"), "SYCN_TRANSFERCG_TIME1");
}
}
Gson gson = new Gson();
String jsonString = gson.toJson(purtosoList);
log.info("qyl:同步物资转车间协作加工 data: {}", jsonString);
@ -292,14 +296,6 @@ public class ErpMesRbWoServiceImpl implements IErpMesRbWoService {
yieldOrder.setYoCode(mesRbPurtoso.getSono());//生产单号
yieldOrder.setBatchNo(mesRbPurtoso.getSplcode());//批次号
yieldOrder.setPartCode(mesRbPurtoso.getPrtno());//零件号
// DsPartEntity part = apsOrderClient.getDsCraftListByCode(mesRbPurtoso.getPrtno());
// if(part != null){
// yieldOrder.setYpArea(part.getArea());
// yieldOrder.setProductType(part.getProductType());
// yieldOrder.setPartName(part.getPartName());
// yieldOrder.setPrimaryCraft(part.getCraftWay());
// yieldOrder.setPlate(part.getPlate());
// }
yieldOrder.setProductIdent(mesRbPurtoso.getPrtlotno());
yieldOrder.setUseDept(mesRbPurtoso.getPrtudept());
yieldOrder.setDemandDate(mesRbPurtoso.getSoreqdat());//需求日期

Loading…
Cancel
Save