diff --git a/src/main/java/com/qs/serve/common/framework/manager/AsyncFactory.java b/src/main/java/com/qs/serve/common/framework/manager/AsyncFactory.java index c6522d17..5dba1ed8 100644 --- a/src/main/java/com/qs/serve/common/framework/manager/AsyncFactory.java +++ b/src/main/java/com/qs/serve/common/framework/manager/AsyncFactory.java @@ -297,13 +297,13 @@ public class AsyncFactory { * @return */ public static TimerTask saveVtbSubmit(Long verificationId, BigDecimal totalAmount,Integer state,boolean realaseFlag) { + log.warn("费用释放---verificationId:{} totalAmount:{} state:{} realaseFlag:{}",verificationId,totalAmount,state,realaseFlag); return new TimerTask() { @Override public void run() { try { AuthContextUtils.setTenant("001"); Thread.sleep(20*1000); - log.debug("saveVtbSubmit---verificationId:{} totalAmount:{} state:{} realaseFlag:{}",verificationId,totalAmount,state,realaseFlag); VtbVerificationService vtbVerificationService = SpringUtils.getBean(VtbVerificationService.class); VtbVerification verification = vtbVerificationService.getById(verificationId); if(!verification.getVerificationState().equals(VtbVerificationState.Commiting.getCode())){ diff --git a/src/main/java/com/qs/serve/modules/oms/controller/api/OmsOrderApi.java b/src/main/java/com/qs/serve/modules/oms/controller/api/OmsOrderApi.java index a24c0f77..ba1f0ad1 100644 --- a/src/main/java/com/qs/serve/modules/oms/controller/api/OmsOrderApi.java +++ b/src/main/java/com/qs/serve/modules/oms/controller/api/OmsOrderApi.java @@ -25,6 +25,7 @@ import com.qs.serve.modules.oms.entity.bo.OmsOrderSkuBo; import com.qs.serve.modules.oms.entity.vo.OmsConfirmOrderResult; import com.qs.serve.modules.oms.service.OmsOrderItemService; import com.qs.serve.modules.oms.service.OmsOrderService; +import com.qs.serve.modules.seeyon.service.impl.SeeYonRequestBaseService; import com.qs.serve.modules.sys.entity.SysUser; import com.qs.serve.modules.sys.service.SysUserService; import lombok.AllArgsConstructor; @@ -34,6 +35,8 @@ import org.springframework.web.bind.annotation.*; import javax.validation.Valid; import java.util.List; +import static com.qs.serve.modules.tbs.common.TbsSeeYonConst.ERP_ORDER_STATUS; + /** * API订单模块 订单 * @author YenHex @@ -52,6 +55,7 @@ public class OmsOrderApi { private GoodsCategoryRuleService goodsCategoryRuleService; private GoodsSpuService goodsSpuService; private GoodsCategoryService goodsCategoryService; + private SeeYonRequestBaseService seeYonRequestBaseService; /** * 确认订单 @@ -103,11 +107,19 @@ public class OmsOrderApi { @PostMapping("/cancelOrder") public R cancelOrder(@RequestBody @Valid OmsCancelOrder omsOrderBo){ OmsOrder omsOrder = omsOrderService.getById(omsOrderBo.getOrderId()); - if(omsOrder.getStatus().equals(0)&&omsOrder.getCheckState().equals(0)){ - omsOrder.setStatus(2); - return R.ok(); + if(omsOrder.getStatus().equals(1)){ + //检索是否能取消 + String status = seeYonRequestBaseService.postBase(ERP_ORDER_STATUS+"/"+omsOrder.getOrderSn() + ,null + ,"获取订单状态" + ).getData(); + if(!status.equals("0")){ + omsOrder.setStatus(6); + omsOrderService.updateById(omsOrder); + return R.ok(); + } } - return R.ok(omsOrderBo); + return R.error("取消失败"); } /** diff --git a/src/main/java/com/qs/serve/modules/oms/entity/OmsOrder.java b/src/main/java/com/qs/serve/modules/oms/entity/OmsOrder.java index fd540ea0..148c1c12 100644 --- a/src/main/java/com/qs/serve/modules/oms/entity/OmsOrder.java +++ b/src/main/java/com/qs/serve/modules/oms/entity/OmsOrder.java @@ -101,7 +101,12 @@ public class OmsOrder implements Serializable { /** 是否加急 */ private Integer urgentFlag; - /** 订单状态 0->草稿;1->下单;2->已确认 */ + /** 订单状态 + * 0->草稿; + * 1->下单(同步到调度系统); + * 2->已确认(已生成报价单); + * 6->已取消 + **/ private Integer status; /** 备注 */ diff --git a/src/main/java/com/qs/serve/modules/oms/entity/OmsXltOrder.java b/src/main/java/com/qs/serve/modules/oms/entity/OmsXltOrder.java index 94992c77..28f45108 100644 --- a/src/main/java/com/qs/serve/modules/oms/entity/OmsXltOrder.java +++ b/src/main/java/com/qs/serve/modules/oms/entity/OmsXltOrder.java @@ -22,7 +22,6 @@ import javax.validation.constraints.NotBlank; * @since 2023-10-09 */ @Data -@TableName("oms_xlt_order") public class OmsXltOrder implements Serializable { private static final long serialVersionUID = 1L; diff --git a/src/main/java/com/qs/serve/modules/oms/entity/dto/XltOrderDTO.java b/src/main/java/com/qs/serve/modules/oms/entity/dto/XltOrderDTO.java new file mode 100644 index 00000000..4e9ad7e5 --- /dev/null +++ b/src/main/java/com/qs/serve/modules/oms/entity/dto/XltOrderDTO.java @@ -0,0 +1,23 @@ +package com.qs.serve.modules.oms.entity.dto; + +import com.qs.serve.modules.oms.entity.OmsOrderItem; +import com.qs.serve.modules.oms.entity.OmsXltOrder; +import com.qs.serve.modules.oms.entity.OmsXltOrderItem; +import lombok.AllArgsConstructor; +import lombok.Data; + +import java.util.List; + +/** + * @author YenHex + * @since 2023/10/17 + */ +@Data +@AllArgsConstructor +public class XltOrderDTO { + + OmsXltOrder xltOrder; + + List xltOrderItemList; + +} diff --git a/src/main/java/com/qs/serve/modules/oms/mapper/OmsXltOrderItemMapper.java b/src/main/java/com/qs/serve/modules/oms/mapper/OmsXltOrderItemMapper.java deleted file mode 100644 index c2c3ad9d..00000000 --- a/src/main/java/com/qs/serve/modules/oms/mapper/OmsXltOrderItemMapper.java +++ /dev/null @@ -1,14 +0,0 @@ -package com.qs.serve.modules.oms.mapper; - -import com.baomidou.mybatisplus.core.mapper.BaseMapper; -import com.qs.serve.modules.oms.entity.OmsXltOrderItem; - -/** - * 销路通订单明细 Mapper - * @author YenHex - * @date 2023-10-09 - */ -public interface OmsXltOrderItemMapper extends BaseMapper { - -} - diff --git a/src/main/java/com/qs/serve/modules/oms/mapper/OmsXltOrderMapper.java b/src/main/java/com/qs/serve/modules/oms/mapper/OmsXltOrderMapper.java deleted file mode 100644 index 01847059..00000000 --- a/src/main/java/com/qs/serve/modules/oms/mapper/OmsXltOrderMapper.java +++ /dev/null @@ -1,14 +0,0 @@ -package com.qs.serve.modules.oms.mapper; - -import com.baomidou.mybatisplus.core.mapper.BaseMapper; -import com.qs.serve.modules.oms.entity.OmsXltOrder; - -/** - * 销路通订单 Mapper - * @author YenHex - * @date 2023-10-09 - */ -public interface OmsXltOrderMapper extends BaseMapper { - -} - diff --git a/src/main/java/com/qs/serve/modules/oms/service/impl/OmsOrderServiceImpl.java b/src/main/java/com/qs/serve/modules/oms/service/impl/OmsOrderServiceImpl.java index 644e8bf2..e2fb5072 100644 --- a/src/main/java/com/qs/serve/modules/oms/service/impl/OmsOrderServiceImpl.java +++ b/src/main/java/com/qs/serve/modules/oms/service/impl/OmsOrderServiceImpl.java @@ -20,20 +20,16 @@ import com.qs.serve.modules.goods.service.GoodsSkuService; import com.qs.serve.modules.goods.service.GoodsSpuService; import com.qs.serve.modules.oms.entity.*; import com.qs.serve.modules.oms.entity.bo.*; -import com.qs.serve.modules.oms.entity.dto.ErpOfferOrderParam; -import com.qs.serve.modules.oms.entity.dto.OmsCalcAmount; -import com.qs.serve.modules.oms.entity.dto.OmsSpuToSkuKey; -import com.qs.serve.modules.oms.entity.dto.ShoppingCartsCheckResult; +import com.qs.serve.modules.oms.entity.dto.*; import com.qs.serve.modules.oms.entity.vo.OmsConfirmOrderResult; import com.qs.serve.modules.oms.entity.vo.OmsSpuAssesInfo; -import com.qs.serve.modules.oms.mapper.OmsXltOrderItemMapper; -import com.qs.serve.modules.oms.mapper.OmsXltOrderMapper; import com.qs.serve.modules.oms.service.OmsOrderItemService; import com.qs.serve.modules.oms.service.OmsShoppingCartService; import com.qs.serve.modules.sale.entity.SalePlan; import com.qs.serve.modules.sale.entity.SalePlanGoods; import com.qs.serve.modules.sale.mapper.SalePlanGoodsMapper; import com.qs.serve.modules.sale.mapper.SalePlanMapper; +import com.qs.serve.modules.seeyon.service.impl.SeeYonRequestBaseService; import com.qs.serve.modules.sys.entity.SysDept; import com.qs.serve.modules.sys.entity.SysUser; import com.qs.serve.modules.sys.service.SysDeptService; @@ -51,6 +47,8 @@ import java.time.LocalDateTime; import java.util.*; import java.util.stream.Collectors; +import static com.qs.serve.modules.tbs.common.TbsSeeYonConst.ERP_ORDER_CREATE; + /** * 订单 服务实现类 * @author YenHex @@ -75,9 +73,8 @@ public class OmsOrderServiceImpl extends ServiceImpl im private SalePlanGoodsMapper salePlanGoodsMapper; private OmsOrderItemService omsOrderItemService; - private OmsXltOrderMapper omsXltOrderMapper; - private OmsXltOrderItemMapper omsXltOrderItemMapper; private OmsShoppingCartService omsShoppingCartService; + private SeeYonRequestBaseService seeYonRequestBaseService; @Override @@ -485,10 +482,12 @@ public class OmsOrderServiceImpl extends ServiceImpl im } xltOrder.setDealerArea(bmsRegion.getPathNames()); - omsXltOrderMapper.insert(xltOrder); //保存到临时表-明细表 - for (OmsOrderItem orderItem : orderItemList) { + List xltOrderItemList = new ArrayList<>(); + for (int i = 0; i < orderItemList.size(); i++) { + OmsOrderItem orderItem = orderItemList.get(i); OmsXltOrderItem xltOrderItem = new OmsXltOrderItem(); + xltOrderItem.setId(xltOrder.getId()+"_"+(i+1)); xltOrderItem.setDingDanID(xltOrder.getId()); xltOrderItem.setSpuCode(orderItem.getSpuCode()); xltOrderItem.setChanPinBianHao(orderItem.getSkuCode()); @@ -502,9 +501,11 @@ public class OmsOrderServiceImpl extends ServiceImpl im xltOrderItem.setRowCreateDate(nowTime); xltOrderItem.setBeiZhu(null); xltOrderItem.setZhuangTai(0); - omsXltOrderItemMapper.insert(xltOrderItem); + xltOrderItemList.add(xltOrderItem); } - + XltOrderDTO xltOrderDTO = new XltOrderDTO(xltOrder,xltOrderItemList); + //请求到中间服务保存 + seeYonRequestBaseService.postBase(ERP_ORDER_CREATE,xltOrderDTO,"创建订单:"+xltOrder.getDingDanHao()); //更新订单 omsOrder.setStatus(1); this.updateById(omsOrder); diff --git a/src/main/java/com/qs/serve/modules/tbs/common/TbsSeeYonConst.java b/src/main/java/com/qs/serve/modules/tbs/common/TbsSeeYonConst.java index 9384a6fc..e25c67a8 100644 --- a/src/main/java/com/qs/serve/modules/tbs/common/TbsSeeYonConst.java +++ b/src/main/java/com/qs/serve/modules/tbs/common/TbsSeeYonConst.java @@ -83,6 +83,8 @@ public interface TbsSeeYonConst { /** 客户账单余额 */ String ERP_CUS_AMOUNT = "/erp/customer/amount"; String ERP_CUS_INV_PRICE = "/erp/inventory/invPrices"; + String ERP_ORDER_CREATE = "/erp/order/create"; + String ERP_ORDER_STATUS = "/erp/order/getStatus"; String XLT_SAVE_CHECK = "/xlt/saveCheck"; String XLT_SAVE_PAYMENT = "/xlt/savePayment"; diff --git a/src/main/java/com/qs/serve/modules/tbs/entity/TbsCostApply.java b/src/main/java/com/qs/serve/modules/tbs/entity/TbsCostApply.java index 84ca43ef..c93b03ed 100644 --- a/src/main/java/com/qs/serve/modules/tbs/entity/TbsCostApply.java +++ b/src/main/java/com/qs/serve/modules/tbs/entity/TbsCostApply.java @@ -75,7 +75,7 @@ public class TbsCostApply implements Serializable { private Integer chargeState; /** - * 核销状态: + * 不参与业务流程,核销状态: * 有这四个状态: * 0-未核销:代表这案子里面的所有活动都还未开始核销; * 1-已通过:代表这个案子的所有活动都已经核销完成; diff --git a/src/main/java/com/qs/serve/modules/vtb/service/impl/VtbVerificationServiceImpl.java b/src/main/java/com/qs/serve/modules/vtb/service/impl/VtbVerificationServiceImpl.java index dc7a6e48..31669cfd 100644 --- a/src/main/java/com/qs/serve/modules/vtb/service/impl/VtbVerificationServiceImpl.java +++ b/src/main/java/com/qs/serve/modules/vtb/service/impl/VtbVerificationServiceImpl.java @@ -57,6 +57,7 @@ import org.springframework.scheduling.annotation.EnableAsync; import org.springframework.stereotype.Service; import org.springframework.transaction.annotation.Transactional; +import javax.servlet.http.HttpServletRequest; import java.math.BigDecimal; import java.math.RoundingMode; import java.time.LocalDate; @@ -446,6 +447,14 @@ public class VtbVerificationServiceImpl extends ServiceImpl