Commit 08aeb701 by shuhu.hou@freemud.cn

更改目录结构

parent cb8afa57
......@@ -10,7 +10,7 @@
<modelVersion>4.0.0</modelVersion>
<artifactId>assortment-ordercenter-sdk</artifactId>
<version>2.0.6-RELEASE</version>
<version>2.0.10-SNAPSHOT</version>
<dependencies>
<dependency>
<groupId>org.springframework.boot</groupId>
......@@ -38,7 +38,7 @@
<dependency>
<groupId>cn.freemud</groupId>
<artifactId>ordercenter-sdk</artifactId>
<version>1.3.11.RELEASE</version>
<version>1.4.34-SNAPSHOT</version>
</dependency>
<dependency>
<groupId>com.freemud.application.service.sdk</groupId>
......
......@@ -40,7 +40,7 @@
<dependency>
<groupId>cn.freemud</groupId>
<artifactId>assortment-ordercenter-sdk</artifactId>
<version>2.0.6-RELEASE</version>
<version>2.0.10-SNAPSHOT</version>
</dependency>
<dependency>
<groupId>com.freemud.application.service.sdk</groupId>
......
......@@ -23,3 +23,5 @@ management.metrics.tags.application=${spring.application.name}
management.endpoint.shutdown.enabled=true
management.security.enabled=false
management.health.rabbit.enabled=false
mcCafe.partnerId=1206
\ No newline at end of file
......@@ -58,7 +58,7 @@
<dependency>
<groupId>cn.freemud</groupId>
<artifactId>assortment-ordercenter-sdk</artifactId>
<version>1.5.11-RELEASE</version>
<version>2.0.10-SNAPSHOT</version>
<scope>provided</scope>
</dependency>
<dependency>
......
package cn.freemud.management.controller;
import cn.freemud.base.entity.BaseResponse;
import cn.freemud.management.entities.dto.request.order.McCafeOrderManagerRequest;
import cn.freemud.management.entities.dto.request.order.OrderManagerRequest;
import cn.freemud.management.enums.McCafeOperateType;
import cn.freemud.management.enums.OperateType;
......@@ -69,16 +68,16 @@ public class OrderManagerController {
@ApiAnnotation(logMessage = "麦咖啡订单入机")
@ApiOperation(value = "麦咖啡订单入机", notes = "麦咖啡订单入机", produces = "application/json")
@PostMapping("/mcCafe/statusOperate")
public BaseResponse mcCafeDeliveryCreate(@Validated @LogParams @RequestBody McCafeOrderManagerRequest request) {
public BaseResponse mcCafeDeliveryCreate(@Validated @LogParams @RequestBody OrderManagerRequest request) {
McCafeOperateType byOpType = McCafeOperateType.getByOpType(request.getOperateType());
if (byOpType==null){
return ResponseUtil.error(ResponseResult.ORDER_OPERATE_TYPE_NOT_VALIDATE);
}
switch (byOpType) {
case ORDER_SUCCESS:
return orderManagerAdapter.mcCafeOrderSuccess(request);
return orderManagerAdapter.orderConfirmTake(request);
case ORDER_REFUND:
return orderManagerAdapter.mcCafeOrderRefund(request);
return orderManagerAdapter.orderReject(request);
default:
return ResponseUtil.error(ResponseResult.ORDER_OPERATE_TYPE_NOT_VALIDATE);
}
......
/*
package cn.freemud.management.entities.dto.request.order;
import cn.freemud.management.enums.OperateType;
......@@ -9,42 +10,55 @@ import javax.validation.constraints.Size;
@Data
public class McCafeOrderManagerRequest {
/**
* 商户号
*/
/**
* 商户号
*//*
@NotEmpty(message = "商户号不允许为null")
private String partnerId;
/**
* 门店号
*/
/**
* 门店号
*//*
private String storeId;
/**
* 取餐码
*/
/**
* 取餐码
*//*
private String pickUpGoodsNo;
/**
* 订单号
*/
/**
* 订单号
*//*
@NotEmpty(message = "订单号不允许为nul")
private String orderId;
/**
*/
/**
* 订单操作类型
* @see OperateType
*/
*//*
@NotEmpty(message = "操作类型不能为空")
private String operateType;
/**
*/
/**
* 操作人
* pos
* 开放平台
* 小助手
* 系统自动履单
*/
*//*
@NotEmpty(message = "操作人不能为空")
private String operator;
}
*/
......@@ -53,4 +53,10 @@ public class OrderManagerRequest {
*/
@NotEmpty(message = "操作人不能为空")
private String operator;
/**
* 取餐码
* 麦咖啡专用
*/
private String pickUpGoodsNo;
}
package cn.freemud.management.service;
import cn.freemud.base.entity.BaseResponse;
import cn.freemud.management.entities.dto.request.order.McCafeOrderManagerRequest;
import cn.freemud.management.entities.dto.request.order.OrderManagerRequest;
import cn.freemud.management.entities.dto.response.order.OrderManagerResponse;
import cn.freemud.management.util.ResponseUtil;
import com.freemud.sdk.api.assortment.order.response.order.QueryOrdersResponse;
/**
......@@ -17,15 +17,9 @@ public interface OrderManagerService {
* @param orderBean 订单实体
* @return
*/
BaseResponse<OrderManagerResponse> orderConfirm(OrderManagerRequest request, QueryOrdersResponse.DataBean.OrderBean orderBean);
/**
* 麦咖啡接单
* @param request 请求参数
* @param orderBean 订单实体
* @return
*/
BaseResponse mcCafeOrderConfirm(McCafeOrderManagerRequest request, QueryOrdersResponse.DataBean.OrderBean orderBean);
default BaseResponse<OrderManagerResponse> orderConfirm(OrderManagerRequest request, QueryOrdersResponse.DataBean.OrderBean orderBean){
return ResponseUtil.success();
}
/**
* 制作完成
......@@ -33,7 +27,9 @@ public interface OrderManagerService {
* @param orderBean
* @return
*/
BaseResponse<OrderManagerResponse> orderDone(OrderManagerRequest request, QueryOrdersResponse.DataBean.OrderBean orderBean);
default BaseResponse<OrderManagerResponse> orderDone(OrderManagerRequest request, QueryOrdersResponse.DataBean.OrderBean orderBean){
return ResponseUtil.success();
}
/**
* 订单配送
......@@ -41,7 +37,9 @@ public interface OrderManagerService {
* @param orderBean
* @return
*/
BaseResponse<OrderManagerResponse> orderDelivery(OrderManagerRequest request, QueryOrdersResponse.DataBean.OrderBean orderBean);
default BaseResponse<OrderManagerResponse> orderDelivery(OrderManagerRequest request, QueryOrdersResponse.DataBean.OrderBean orderBean){
return ResponseUtil.success();
}
/**
* 订单完成
......@@ -49,7 +47,9 @@ public interface OrderManagerService {
* @param orderBean
* @return
*/
BaseResponse<OrderManagerResponse> orderAffirm(OrderManagerRequest request, QueryOrdersResponse.DataBean.OrderBean orderBean);
default BaseResponse<OrderManagerResponse> orderAffirm(OrderManagerRequest request, QueryOrdersResponse.DataBean.OrderBean orderBean){
return ResponseUtil.success();
}
/**
* 拒单
......@@ -57,15 +57,9 @@ public interface OrderManagerService {
* @param orderBean
* @return
*/
BaseResponse<OrderManagerResponse> orderReject(OrderManagerRequest request, QueryOrdersResponse.DataBean.OrderBean orderBean);
/**
* 麦咖啡拒单
* @param request
* @param orderBean
* @return
*/
BaseResponse mcCafeOrderReject(McCafeOrderManagerRequest request, QueryOrdersResponse.DataBean.OrderBean orderBean);
default BaseResponse<OrderManagerResponse> orderReject(OrderManagerRequest request, QueryOrdersResponse.DataBean.OrderBean orderBean){
return ResponseUtil.success();
}
/**
* 同意退款
......@@ -73,7 +67,9 @@ public interface OrderManagerService {
* @param orderBean
* @return
*/
BaseResponse<OrderManagerResponse> orderAgreeRefund(OrderManagerRequest request, QueryOrdersResponse.DataBean.OrderBean orderBean);
default BaseResponse<OrderManagerResponse> orderAgreeRefund(OrderManagerRequest request, QueryOrdersResponse.DataBean.OrderBean orderBean){
return ResponseUtil.success();
}
/**
* 拒绝退款
......@@ -81,7 +77,9 @@ public interface OrderManagerService {
* @param orderBean
* @return
*/
BaseResponse<OrderManagerResponse> orderRejectRefund(OrderManagerRequest request, QueryOrdersResponse.DataBean.OrderBean orderBean);
default BaseResponse<OrderManagerResponse> orderRejectRefund(OrderManagerRequest request, QueryOrdersResponse.DataBean.OrderBean orderBean){
return ResponseUtil.success();
}
}
......@@ -2,10 +2,12 @@ package cn.freemud.management.service.adapter;
import cn.freemud.management.enums.OrderSource;
import cn.freemud.management.service.OrderManagerService;
import cn.freemud.management.service.impl.McCafeMangerServiceImpl;
import cn.freemud.management.service.impl.SaasOrderMangerServiceImpl;
import cn.freemud.management.service.impl.WaimaiOrderMangerServiceImpl;
import com.freemud.sdk.api.assortment.order.response.order.QueryOrdersResponse;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.beans.factory.annotation.Value;
import org.springframework.context.ApplicationContext;
import org.springframework.stereotype.Service;
......@@ -15,11 +17,18 @@ import org.springframework.stereotype.Service;
@Service
public class OrderBeanFactory {
@Value("${mcCafe.partnerId}")
private String macCafePartnerId;
@Autowired
private ApplicationContext applicationContext;
public OrderManagerService getOrderManagerService(QueryOrdersResponse.DataBean.OrderBean orderBean){
String source = orderBean.getSource();
String companyId = orderBean.getCompanyId();
if (macCafePartnerId.equals(companyId)){
return applicationContext.getBean(McCafeMangerServiceImpl.class);
}
if (OrderSource.BDWM.getSource().equals(source) || OrderSource.JDWM.getSource().equals(source)
|| OrderSource.MTWM.getSource().equals(source) || OrderSource.ELEME.getSource().equals(source) || OrderSource.FMWD.getSource().equals(source)){
return applicationContext.getBean(WaimaiOrderMangerServiceImpl.class);
......
package cn.freemud.management.service.adapter;
import cn.freemud.base.entity.BaseResponse;
import cn.freemud.management.entities.dto.request.order.McCafeOrderManagerRequest;
import cn.freemud.management.entities.dto.request.order.OrderManagerRequest;
import cn.freemud.management.entities.dto.response.order.OrderManagerResponse;
import cn.freemud.management.enums.OperateType;
......@@ -196,39 +195,4 @@ public class OrderManagerAdapter {
result.setResult(new OrderManagerResponse(orderStatus,refundStatus));
return result;
}
/**
* 麦咖啡入机成功操作
* @param request
* @return
*/
public BaseResponse mcCafeOrderSuccess(McCafeOrderManagerRequest request) {
//查询订单
QueryOrdersResponse.DataBean.OrderBean orderBean = orderBaseService.getByOrderCode(request.getOrderId());
//订单接单参数校验
BaseResponse verifyResponse = orderVerifyHandle.orderConfirmTakeVerify(orderBean, null);
if (ObjectUtils.notEqual(verifyResponse.getCode(), ResponseResult.SUCCESS.getCode())) {
return verifyResponse;
}
return orderBeanFactory.getOrderManagerService(orderBean).mcCafeOrderConfirm(request, orderBean);
}
/**
* 麦咖啡入机失败操作
* @param request
* @return
*/
public BaseResponse mcCafeOrderRefund(McCafeOrderManagerRequest request) {
//查询订单
QueryOrdersResponse.DataBean.OrderBean orderBean = orderBaseService.getByOrderCode(request.getOrderId());
//订单接单参数校验
BaseResponse verifyResponse = orderVerifyHandle.orderConfirmTakeVerify(orderBean, null);
if (ObjectUtils.notEqual(verifyResponse.getCode(), ResponseResult.SUCCESS.getCode())) {
return verifyResponse;
}
return orderBeanFactory.getOrderManagerService(orderBean).mcCafeOrderReject(request, orderBean);
}
}
package cn.freemud.management.service.handle;
import cn.freemud.base.entity.BaseResponse;
import cn.freemud.management.entities.dto.request.order.McCafeOrderManagerRequest;
import cn.freemud.management.entities.dto.request.order.OrderManagerRequest;
import cn.freemud.management.entities.dto.response.pay.PayRefundResponse;
import cn.freemud.management.enums.ResponseResult;
......@@ -68,7 +67,7 @@ public class SaasOrderHandle {
* @param orderBean
* @return
*/
public BaseResponse updatePickUpGoodNo(McCafeOrderManagerRequest request, QueryOrdersResponse.DataBean.OrderBean orderBean) {
public BaseResponse updatePickUpGoodNo(OrderManagerRequest request, QueryOrdersResponse.DataBean.OrderBean orderBean) {
// 更新取餐码
OrderModifyRelatingCodeReq relatingCodeReq =new OrderModifyRelatingCodeReq();
relatingCodeReq.setOrderCode(orderBean.getOid());
......
package cn.freemud.management.service.impl;
import cn.freemud.base.entity.BaseResponse;
import cn.freemud.management.entities.dto.request.order.OrderManagerRequest;
import cn.freemud.management.entities.dto.response.order.OrderManagerResponse;
import cn.freemud.management.entities.dto.response.pay.PayRefundResponse;
import cn.freemud.management.enums.ResponseResult;
import cn.freemud.management.service.OrderManagerService;
import cn.freemud.management.service.handle.*;
import cn.freemud.management.util.ResponseUtil;
import com.freemud.sdk.api.assortment.message.enums.OrderType;
import com.freemud.sdk.api.assortment.order.response.order.QueryOrdersResponse;
import org.apache.commons.lang.StringUtils;
import org.springframework.beans.BeanUtils;
import org.springframework.stereotype.Service;
import javax.annotation.Resource;
import java.util.Objects;
/**
* All rights Reserved, Designed By www.freemud.cn
*
* @version V1.0
* @Title: McoffeMangerServiceImpl
* @Package cn.freemud.management.service.impl
* @Description:
* @author: shuhu.hou
* @date: 2020/8/9 15:26
* @Copyright: 2020 www.freemud.cn Inc. All rights reserved.
* 注意:本内容仅限于上海非码科技内部传阅,禁止外泄以及用于其他的商业目
*/
@Service
public class McCafeMangerServiceImpl implements OrderManagerService {
@Resource
private SaasOrderHandle saasOrderHandle;
@Resource
private CouponHandle couponHandle;
@Resource
private DeliveryHandle deliveryHandle;
@Resource
private PaymentHandle paymentHandle;
@Resource
private StockHandle stockHandle;
@Override
public BaseResponse<OrderManagerResponse> orderConfirm(OrderManagerRequest request, QueryOrdersResponse.DataBean.OrderBean orderBean) {
OrderManagerRequest orderManagerRequest =new OrderManagerRequest();
BeanUtils.copyProperties(request,orderManagerRequest);
// 订单接单
saasOrderHandle.orderConfirm(orderManagerRequest, orderBean);
//支付成功已经 创建配送单
if (!Objects.equals(orderBean.getOrderType(), OrderType.TAKE_OUT.getCode())) {
if (StringUtils.isNotEmpty(request.getPickUpGoodsNo())){
//更新取餐码
saasOrderHandle.updatePickUpGoodNo(request,orderBean);
}
// 异步核销券码
couponHandle.asyncVerificationCoupon(orderBean);
}
return ResponseUtil.success();
}
@Override
public BaseResponse<OrderManagerResponse> orderReject(OrderManagerRequest request, QueryOrdersResponse.DataBean.OrderBean orderBean) {
OrderManagerRequest orderManagerRequest =new OrderManagerRequest();
BeanUtils.copyProperties(request,orderManagerRequest);
//根据是否是外卖单来判断
if (Objects.equals(orderBean.getOrderType(), OrderType.TAKE_OUT.getCode())) {
// 订单接单
BaseResponse<OrderManagerResponse> orderManagerResponseBaseResponse = orderConfirm(request, orderBean);
if (ResponseResult.SUCCESS.equals(orderManagerResponseBaseResponse.getCode())){
//通知配送服务停单
deliveryHandle.haltedDelivery(orderBean);
}
}else {
//支付退款
PayRefundResponse refundResponse = paymentHandle.refund(orderManagerRequest, orderBean);
//订单拒单
saasOrderHandle.orderReject(orderManagerRequest, refundResponse, orderBean);
//冲正库存
stockHandle.revert(orderManagerRequest, orderBean);
// 券码解冻
couponHandle.unlock(orderBean);
}
return ResponseUtil.success();
}
/**
* 订单配送
*
* @param request
* @param orderBean
* @return
*/
@Override
public BaseResponse<OrderManagerResponse> orderDelivery(OrderManagerRequest request, QueryOrdersResponse.DataBean.OrderBean orderBean) {
return ResponseUtil.success();
}
/**
* 订单完成
*
* @param request
* @param orderBean
* @return
*/
@Override
public BaseResponse<OrderManagerResponse> orderAffirm(OrderManagerRequest request, QueryOrdersResponse.DataBean.OrderBean orderBean) {
return ResponseUtil.success();
}
/**
* 同意退款
*
* @param request
* @param orderBean
* @return
*/
@Override
public BaseResponse<OrderManagerResponse> orderAgreeRefund(OrderManagerRequest request, QueryOrdersResponse.DataBean.OrderBean orderBean) {
return null;
}
/**
* 拒绝退款
*
* @param request
* @param orderBean
* @return
*/
@Override
public BaseResponse<OrderManagerResponse> orderRejectRefund(OrderManagerRequest request, QueryOrdersResponse.DataBean.OrderBean orderBean) {
return null;
}
}
......@@ -2,14 +2,11 @@ package cn.freemud.management.service.impl;
import cn.freemud.base.entity.BaseResponse;
import cn.freemud.management.adapter.McCafeCouponAdapter;
import cn.freemud.management.entities.dto.request.coupon.MCCafeCouponLockRequest;
import cn.freemud.management.entities.dto.request.order.McCafeOrderManagerRequest;
import cn.freemud.management.entities.dto.request.order.OrderManagerRequest;
import cn.freemud.management.entities.dto.response.order.OrderManagerResponse;
import cn.freemud.management.entities.dto.response.pay.PayRefundResponse;
import cn.freemud.management.enums.OperateType;
import cn.freemud.management.enums.RefundStatus;
import cn.freemud.management.enums.ResponseResult;
import cn.freemud.management.intercept.OrderServiceException;
import cn.freemud.management.service.OrderBaseService;
import cn.freemud.management.service.OrderManagerService;
......@@ -19,16 +16,11 @@ import cn.freemud.management.util.ResponseUtil;
import com.freemud.application.sdk.api.storecenter.request.StoreInfoRequest;
import com.freemud.application.sdk.api.storecenter.response.StoreResponse;
import com.freemud.application.sdk.api.storecenter.service.StoreCenterService;
import com.freemud.sdk.api.assortment.message.enums.OrderType;
import com.freemud.sdk.api.assortment.order.response.order.QueryOrdersResponse;
import org.apache.commons.collections4.CollectionUtils;
import org.apache.commons.lang.StringUtils;
import org.springframework.beans.BeanUtils;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Service;
import java.util.Objects;
/**
* All rights Reserved, Designed By www.freemud.cn
*
......@@ -56,12 +48,6 @@ public class SaasOrderMangerServiceImpl implements OrderManagerService {
private StockHandle stockHandle;
@Autowired
private DeliveryHandle deliveryHandle;
@Autowired
private CouponOfflineMCCafeClient couponOfflineMCCafeClient;
@Autowired
private McCafeCouponAdapter mcCafeCouponAdapter;
@Autowired
private CouponHandle couponHandle;
/**
......@@ -86,36 +72,6 @@ public class SaasOrderMangerServiceImpl implements OrderManagerService {
}
/**
* 麦咖啡接单
*
* @param request 请求参数
* @param orderBean 订单实体
* @return
*/
@Override
public BaseResponse mcCafeOrderConfirm(McCafeOrderManagerRequest request, QueryOrdersResponse.DataBean.OrderBean orderBean) {
OrderManagerRequest orderManagerRequest =new OrderManagerRequest();
BeanUtils.copyProperties(request,orderManagerRequest);
// 订单接单
saasOrderHandle.orderConfirm(orderManagerRequest, orderBean);
//支付成功已经 创建配送单
if (!Objects.equals(orderBean.getOrderType(), OrderType.TAKE_OUT.getCode())) {
if (StringUtils.isNotEmpty(request.getPickUpGoodsNo())){
//更新取餐码
saasOrderHandle.updatePickUpGoodNo(request,orderBean);
}
// 异步核销券码
couponHandle.asyncVerificationCoupon(orderBean);
}
return ResponseUtil.success();
}
/**
* 制作完成
*
* @param request
......@@ -189,38 +145,7 @@ public class SaasOrderMangerServiceImpl implements OrderManagerService {
return ResponseUtil.success();
}
/**
* 麦咖啡拒单
*
* @param request
* @param orderBean
* @return
*/
@Override
public BaseResponse mcCafeOrderReject(McCafeOrderManagerRequest request, QueryOrdersResponse.DataBean.OrderBean orderBean) {
OrderManagerRequest orderManagerRequest =new OrderManagerRequest();
BeanUtils.copyProperties(request,orderManagerRequest);
//根据是否是外卖单来判断
if (Objects.equals(orderBean.getOrderType(), OrderType.TAKE_OUT.getCode())) {
// 订单接单
BaseResponse<OrderManagerResponse> orderManagerResponseBaseResponse = mcCafeOrderConfirm(request, orderBean);
if (ResponseResult.SUCCESS.equals(orderManagerResponseBaseResponse.getCode())){
//通知配送服务停单
deliveryHandle.haltedDelivery(orderBean);
}
}else {
//支付退款
PayRefundResponse refundResponse = paymentHandle.refund(orderManagerRequest, orderBean);
//订单拒单
saasOrderHandle.orderReject(orderManagerRequest, refundResponse, orderBean);
//冲正库存
stockHandle.revert(orderManagerRequest, orderBean);
// 券码解冻
couponHandle.unlock(orderBean);
}
return ResponseUtil.success();
}
/**
* 同意退款
......
......@@ -3,7 +3,6 @@ package cn.freemud.management.service.impl;
import cn.freemud.base.entity.BaseResponse;
import cn.freemud.base.log.LogTreadLocal;
import cn.freemud.management.adapter.WaimaiSdkAdapter;
import cn.freemud.management.entities.dto.request.order.McCafeOrderManagerRequest;
import cn.freemud.management.entities.dto.request.order.OrderManagerRequest;
import cn.freemud.management.entities.dto.response.order.OrderManagerResponse;
import cn.freemud.management.enums.ResponseResult;
......@@ -56,23 +55,6 @@ public class WaimaiOrderMangerServiceImpl implements OrderManagerService {
return ResponseUtil.success();
}
@Override
public BaseResponse mcCafeOrderConfirm(McCafeOrderManagerRequest request, QueryOrdersResponse.DataBean.OrderBean orderBean) {
return null;
}
/**
* 制作完成
*
* @param request
* @param orderBean
* @return
*/
@Override
public BaseResponse<OrderManagerResponse> orderDone(OrderManagerRequest request, QueryOrdersResponse.DataBean.OrderBean orderBean) {
return ResponseUtil.success();
}
/**
* 订单配送
*
......@@ -124,11 +106,6 @@ public class WaimaiOrderMangerServiceImpl implements OrderManagerService {
return ResponseUtil.success();
}
@Override
public BaseResponse mcCafeOrderReject(McCafeOrderManagerRequest request, QueryOrdersResponse.DataBean.OrderBean orderBean) {
return null;
}
/**
* 同意退款
*
......
......@@ -8,7 +8,7 @@
<version>1.0.0</version>
</parent>
<modelVersion>4.0.0</modelVersion>
<version>1.3.11.RELEASE</version>
<version>1.4.34-SNAPSHOT</version>
<artifactId>ordercenter-sdk</artifactId>
<dependencies>
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment