订单管理相关

This commit is contained in:
潘荣晟
2025-10-14 17:40:18 +08:00
parent db04862660
commit a1747fba8b
13 changed files with 381 additions and 194 deletions

View File

@@ -2,8 +2,11 @@ package com.zt.plat.module.erp.service.erp;
import com.zt.plat.module.erp.controller.admin.erp.vo.ErpBillMainSaveReqVO;
import com.zt.plat.module.erp.controller.admin.erp.vo.ErpOrderSaveReqVO;
import com.zt.plat.module.erp.controller.admin.erp.vo.ErpOrderUpdateReqVO;
public interface ErpOrderService {
String submitOrderToErp(ErpOrderSaveReqVO createVo);
String submitOrderToErp061(ErpOrderSaveReqVO createVo);
String submitOrderToErp062(ErpOrderUpdateReqVO createVo);
}

View File

@@ -6,6 +6,7 @@ import com.zt.plat.module.erp.api.ErpExternalApi;
import com.zt.plat.module.erp.api.dto.ErpSubmitReqDTO;
import com.zt.plat.module.erp.controller.admin.erp.vo.ErpBillMainSaveReqVO;
import com.zt.plat.module.erp.controller.admin.erp.vo.ErpOrderSaveReqVO;
import com.zt.plat.module.erp.controller.admin.erp.vo.ErpOrderUpdateReqVO;
import jakarta.annotation.Resource;
import org.springframework.stereotype.Service;
@@ -13,12 +14,14 @@ import java.util.ArrayList;
import java.util.HashMap;
import java.util.List;
import java.util.Map;
@Service
public class ErpOrderServiceImpl implements ErpOrderService {
@Resource
public ErpExternalApi erpExternalApi;
@Override
public String submitOrderToErp(ErpOrderSaveReqVO createVo) {
public String submitOrderToErp061(ErpOrderSaveReqVO createVo) {
ErpSubmitReqDTO reqDTO = buildBaseReqDTO(createVo, "061");
@@ -61,6 +64,7 @@ public class ErpOrderServiceImpl implements ErpOrderService {
HashMap<String, String> response = erpExternalApi.submitDataToErp(reqDTO);
return response.get("resStr");
}
private void getMaps(ErpOrderSaveReqVO vo, Map<String, Object> req) {
List<Map<String, Object>> items = new ArrayList<>();
Map<String, Object> item = new HashMap<>();
@@ -87,9 +91,44 @@ public class ErpOrderServiceImpl implements ErpOrderService {
item.put("note_wl", vo.getNoteWl());
item.put("vend_mat", vo.getVendMat());
items.add(item);
if ("K".equals(vo.getAcctassCat())||"P".equals(vo.getAcctassCat())){
if ("K".equals(vo.getAcctassCat()) || "P".equals(vo.getAcctassCat())) {
req.put("acct", vo.getActsCtgrDtl());
}
req.put("item", items);
}
@Override
public String submitOrderToErp062(ErpOrderUpdateReqVO updateVo) {
ErpSubmitReqDTO reqDTO = buildBaseReqDTO062(updateVo, "062");
Map<String, Object> req = new HashMap<>();
Map<String, Object> head = new HashMap<>();
Map<String, Object> exte= new HashMap<>();
head.put("po_number", updateVo.getPoNumber());
head.put("delete_ind", updateVo.getDeleteInd());
head.put("currency", updateVo.getCurrency());
head.put("exch_rate", updateVo.getExchRate());
req.put("head", head);
exte.put("zzhth", updateVo.getZzhth());
exte.put("zzxyh", updateVo.getZzhth());
exte.put("zznote", updateVo.getZnote());
exte.put("zzlifnr", updateVo.getZlifnr());
req.put("exte", exte);
req.put("itex", updateVo.getItexs());
req.put("item", updateVo.getItems());
req.put("acct", updateVo.getAccts());
req.put("comp", updateVo.getComps());
reqDTO.setReq(req);
return submitToErp(reqDTO);
}
private ErpSubmitReqDTO buildBaseReqDTO062(ErpOrderUpdateReqVO vo, String funcnr) {
ErpSubmitReqDTO reqDTO = new ErpSubmitReqDTO();
reqDTO.setFuncnr(funcnr);
reqDTO.setBskey(vo.getPoNumber());
reqDTO.setUsrid(String.valueOf(SecurityFrameworkUtils.getLoginUserId()));
reqDTO.setUsrnm((SecurityFrameworkUtils.getLoginUserNickname()));
return reqDTO;
}
}