Browse Source

迁移销路通订单数据源

v1.0
Yen 2 years ago
parent
commit
1b8719a33a
  1. 2
      src/main/java/com/qs/serve/common/framework/manager/AsyncFactory.java
  2. 20
      src/main/java/com/qs/serve/modules/oms/controller/api/OmsOrderApi.java
  3. 7
      src/main/java/com/qs/serve/modules/oms/entity/OmsOrder.java
  4. 1
      src/main/java/com/qs/serve/modules/oms/entity/OmsXltOrder.java
  5. 23
      src/main/java/com/qs/serve/modules/oms/entity/dto/XltOrderDTO.java
  6. 14
      src/main/java/com/qs/serve/modules/oms/mapper/OmsXltOrderItemMapper.java
  7. 14
      src/main/java/com/qs/serve/modules/oms/mapper/OmsXltOrderMapper.java
  8. 25
      src/main/java/com/qs/serve/modules/oms/service/impl/OmsOrderServiceImpl.java
  9. 2
      src/main/java/com/qs/serve/modules/tbs/common/TbsSeeYonConst.java
  10. 2
      src/main/java/com/qs/serve/modules/tbs/entity/TbsCostApply.java
  11. 16
      src/main/java/com/qs/serve/modules/vtb/service/impl/VtbVerificationServiceImpl.java

2
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())){

20
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("取消失败");
}
/**

7
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;
/** 备注 */

1
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;

23
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<OmsXltOrderItem> xltOrderItemList;
}

14
src/main/java/com/qs/serve/modules/oms/mapper/OmsXltOrderItemMapper.java

@ -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<OmsXltOrderItem> {
}

14
src/main/java/com/qs/serve/modules/oms/mapper/OmsXltOrderMapper.java

@ -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<OmsXltOrder> {
}

25
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<OmsOrderMapper,OmsOrder> 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<OmsOrderMapper,OmsOrder> im
}
xltOrder.setDealerArea(bmsRegion.getPathNames());
omsXltOrderMapper.insert(xltOrder);
//保存到临时表-明细表
for (OmsOrderItem orderItem : orderItemList) {
List<OmsXltOrderItem> 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<OmsOrderMapper,OmsOrder> 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);

2
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";

2
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-已通过代表这个案子的所有活动都已经核销完成

16
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<VtbVerificationMappe
@Override
@Transactional(rollbackFor = Exception.class)
public void release(Long activityId,Boolean throwEx) {
String url = "unknown";
try {
HttpServletRequest request = ServletUtils.getRequest();
url = request.getRequestURI();
} catch (Exception e) {
e.printStackTrace();
}
log.warn("费用释放 activityId:{} url:{}",activityId,url);
SysUser sysUser = sysUserService.getById(AuthContextUtils.getSysUserId());
TbsActivity activity = activityService.getById(activityId);
if(!activity.getActivityState().equals(TbsActivityState.STATE_0_Todo)){
@ -634,6 +643,13 @@ public class VtbVerificationServiceImpl extends ServiceImpl<VtbVerificationMappe
payCondition.setFinishedFlag(2);
activityPayConditionService.updateById(payCondition);
}
//更变费用申请的活动状态
TbsCostApply costApplyParam = new TbsCostApply();
costApplyParam.setId(costApply.getId());
costApplyParam.setCheckState(1);
costApplyService.updateById(costApplyParam);
//退回的审批跳过校验
boolean isCurrentCommit = verificationBo.getId()!=null;
validActivity(cotractFlag,activity,true,isCurrentCommit);

Loading…
Cancel
Save