订单新增字段,元素实体类修改
This commit is contained in:
@@ -1,6 +1,7 @@
|
||||
package com.zt.plat.module.base.dal.dataobject.base;
|
||||
|
||||
import com.baomidou.mybatisplus.annotation.*;
|
||||
import com.zt.plat.framework.mybatis.core.dataobject.BaseDO;
|
||||
import com.zt.plat.framework.mybatis.core.dataobject.BusinessBaseDO;
|
||||
import lombok.*;
|
||||
/**
|
||||
@@ -19,7 +20,7 @@ import lombok.*;
|
||||
/**
|
||||
* 支持业务基类继承:isBusiness=true 时继承 BusinessBaseDO,否则继承 BaseDO
|
||||
*/
|
||||
public class ElementDO extends BusinessBaseDO {
|
||||
public class ElementDO extends BaseDO {
|
||||
|
||||
|
||||
|
||||
|
||||
@@ -14,7 +14,11 @@ public enum OrderStatusEnum {
|
||||
IN_PROGRESS("IN_PROGRESS", "执行中"),
|
||||
// 关闭状态
|
||||
CLOSED("CLOSE", "关闭"),
|
||||
REJECTED("REJECT", "驳回");
|
||||
REJECTED("REJECT", "驳回"),
|
||||
FIND("FIND", "ERP提交成功"),
|
||||
RLBK("RLBK", "ERP提交失败"),
|
||||
RCVG("RCVG", "ERP执行中"),
|
||||
WAIT("WAIT", "ERP待上传");
|
||||
|
||||
/** 状态编码 */
|
||||
private final String code;
|
||||
|
||||
@@ -200,4 +200,6 @@ public class PurchaseOrderRespVO {
|
||||
@ExcelProperty("货权转移类型(字典:ASY_MTNG_TP)")
|
||||
private String meteringType;
|
||||
|
||||
@Schema(description = "erp失败原因")
|
||||
private String issueCause;
|
||||
}
|
||||
|
||||
@@ -224,4 +224,7 @@ public class SalesOrderRespVO {
|
||||
@ExcelProperty("货权转移类型(字典:ASY_MTNG_TP)")
|
||||
private String meteringType;
|
||||
|
||||
@Schema(description = "erp失败原因")
|
||||
private String issueCause;
|
||||
|
||||
}
|
||||
|
||||
@@ -289,4 +289,11 @@ public class PurchaseOrderDO extends BusinessBaseDO {
|
||||
*/
|
||||
@TableField("MTNG_TP")
|
||||
private String meteringType;
|
||||
/**
|
||||
* erp失败原因
|
||||
*/
|
||||
@TableField("ISS_CAUS")
|
||||
private String issueCause;
|
||||
|
||||
|
||||
}
|
||||
|
||||
@@ -308,4 +308,7 @@ public class SalesOrderDO extends BusinessBaseDO {
|
||||
*/
|
||||
@TableField("MTNG_TP")
|
||||
private String meteringType;
|
||||
|
||||
@TableField("ISS_CAUS")
|
||||
private String issueCause;
|
||||
}
|
||||
|
||||
@@ -18,6 +18,7 @@ import com.zt.plat.module.contractorder.controller.admin.purchaseorder.vo.*;
|
||||
import com.zt.plat.module.contractorder.dal.dataobject.contract.SystemRelativityDO;
|
||||
import com.zt.plat.module.contractorder.dal.dataobject.purchaseorder.PrchOrdDtlDO;
|
||||
import com.zt.plat.module.contractorder.dal.dataobject.purchaseorder.PurchaseOrderDO;
|
||||
import com.zt.plat.module.contractorder.dal.dataobject.salesorder.SalesOrderDO;
|
||||
import com.zt.plat.module.contractorder.dal.mysql.contract.SystemRelativityMapper;
|
||||
import com.zt.plat.module.contractorder.dal.mysql.purchaseorder.PrchOrdDtlMapper;
|
||||
import com.zt.plat.module.contractorder.dal.mysql.purchaseorder.PurchaseOrderMapper;
|
||||
@@ -90,11 +91,8 @@ public class PurchaseOrderServiceImpl implements PurchaseOrderService {
|
||||
public PurchaseOrderRespVO createPurchaseOrder(PurchaseOrderSaveReqVO createReqVO) {
|
||||
// 插入
|
||||
PurchaseOrderDO purchaseOrder = BeanUtils.toBean(createReqVO, PurchaseOrderDO.class);
|
||||
if (Objects.equals(createReqVO.getIsPush(), 1)) {
|
||||
purchaseOrder.setStatus(OrderStatusEnum.DRAFT.getCode()); //设置初始状态
|
||||
} else {
|
||||
purchaseOrder.setStatus(OrderStatusEnum.TO_SUBMIT_ERP.getCode());
|
||||
}
|
||||
purchaseOrder.setIsPush(0);
|
||||
purchaseOrder.setStatus(OrderStatusEnum.IN_PROGRESS.getCode());
|
||||
//生成订单号
|
||||
String orderNumber = generateOrderNumber(purchaseOrder.getMtrlTp());
|
||||
purchaseOrder.setSystemOrderNumber(orderNumber);
|
||||
@@ -348,28 +346,30 @@ public class PurchaseOrderServiceImpl implements PurchaseOrderService {
|
||||
}
|
||||
|
||||
//todo 4. 推送ERP并处理返回结果
|
||||
// String s = erpOrderService.submitOrderToErp061(erpOrderSaveReqVO);
|
||||
// String result = erpOrderService.submitOrderToErp061(erpOrderSaveReqVO);
|
||||
log.info("订单推送成功,订单id【{}】", order.getId());
|
||||
|
||||
String result="3333";
|
||||
// 解析ERP返回的ID
|
||||
JSONObject jsonObject = JSONObject.parseObject(JSONObject.toJSONString(Map.of("id",R())));
|
||||
String erpId = jsonObject.getString("id");
|
||||
if (erpId != null && !erpId.isEmpty()) {
|
||||
// 更新订单的ERP编号
|
||||
PurchaseOrderDO updateDO = new PurchaseOrderDO();
|
||||
updateDO.setId(order.getId());
|
||||
updateDO.setOrderSAPNumber(erpId);
|
||||
updateDO.setStatus(OrderStatusEnum.IN_PROGRESS.getCode());
|
||||
int updateCount = purchaseOrderMapper.updateById(updateDO);
|
||||
if (updateCount > 0) {
|
||||
log.info("更新订单ERPID成功,订单id【{}】", order.getId());
|
||||
} else {
|
||||
log.error("订单更新失败,订单id【{}】", order.getId());
|
||||
throw new RuntimeException("订单更新失败");
|
||||
if (result != null) { //todo 需要改为真实返回的数据
|
||||
JSONObject job = JSONObject.parseObject(JSONObject.toJSONString(Map.of("salesdocument",R())));
|
||||
String id = job.containsKey("id")?jsonObject.getString("id"):null;
|
||||
if (id != null) {
|
||||
PurchaseOrderDO upVo = new PurchaseOrderDO();
|
||||
upVo.setId(purchaseOrderWithDetailsVO.getPurchaseOrder().getId());
|
||||
upVo.setOrderSAPNumber(id);
|
||||
upVo.setErpStatus(OrderStatusEnum.FIND.getCode());
|
||||
purchaseOrderMapper.updateById(upVo);
|
||||
}else {
|
||||
PurchaseOrderDO upVo = new PurchaseOrderDO();
|
||||
upVo.setId(purchaseOrderWithDetailsVO.getPurchaseOrder().getId());
|
||||
upVo.setOrderSAPNumber(id);
|
||||
upVo.setErpStatus(OrderStatusEnum.RLBK.getCode());
|
||||
upVo.setCause("ERP返回结果为空");//TODO 这里先写死
|
||||
purchaseOrderMapper.updateById(upVo);
|
||||
}
|
||||
} else {
|
||||
log.error("ERP返回ID为空,订单id【{}】", order.getId());
|
||||
throw new RuntimeException("ERP返回ID为空");
|
||||
|
||||
}
|
||||
});
|
||||
return "ERP推送成功";
|
||||
|
||||
@@ -243,12 +243,19 @@ public class SalesOrderServiceImpl implements SalesOrderService {
|
||||
String result="3333";
|
||||
if (result != null) {
|
||||
JSONObject jsonObject = JSONObject.parseObject(JSONObject.toJSONString(Map.of("salesdocument",R())));
|
||||
String salesdocument = jsonObject.getString("salesdocument");
|
||||
String salesdocument = jsonObject.containsKey("salesdocument")?jsonObject.getString("salesdocument"):null;
|
||||
if (salesdocument != null) {
|
||||
SalesOrderDO upVo = new SalesOrderDO();
|
||||
upVo.setId(salesOrderDO.getId());
|
||||
upVo.setOrderSAPNumber(salesdocument);
|
||||
upVo.setStatus(OrderStatusEnum.IN_PROGRESS.getCode());
|
||||
upVo.setErpStatus(OrderStatusEnum.FIND.getCode());
|
||||
salesOrderMapper.updateById(upVo);
|
||||
}else {
|
||||
SalesOrderDO upVo = new SalesOrderDO();
|
||||
upVo.setId(salesOrderDO.getId());
|
||||
upVo.setOrderSAPNumber(salesdocument);
|
||||
upVo.setErpStatus(OrderStatusEnum.RLBK.getCode());
|
||||
upVo.setCause("ERP返回结果为空");//TODO 这里先写死
|
||||
salesOrderMapper.updateById(upVo);
|
||||
}
|
||||
|
||||
|
||||
Reference in New Issue
Block a user