diff --git a/api-mapper/src/main/java/com/heyu/api/data/entity/vv/VvTradeOrderLineStatusLogEntity.java b/api-mapper/src/main/java/com/heyu/api/data/entity/vv/VvTradeOrderLineStatusLogEntity.java index 421af52..9501c08 100644 --- a/api-mapper/src/main/java/com/heyu/api/data/entity/vv/VvTradeOrderLineStatusLogEntity.java +++ b/api-mapper/src/main/java/com/heyu/api/data/entity/vv/VvTradeOrderLineStatusLogEntity.java @@ -32,6 +32,7 @@ private static final long serialVersionUID = 1L; public final static String features_ = CLASS_NAME + "features"; // 附加信息 public final static String change_status_user = CLASS_NAME + "change_status_user"; // 改变这个状态的用户 public final static String trace_id = CLASS_NAME + "trace_id"; // 日志编号 + public final static String status_desc = CLASS_NAME + "status_desc"; // 状态描述 // @TableId(value = "id", type = IdType.AUTO) private Long id; @@ -55,6 +56,8 @@ private static final long serialVersionUID = 1L; private String changeStatusUser; //日志编号 private String traceId; + //状态描述 + private String statusDesc; /** * * @return @@ -220,6 +223,21 @@ private static final long serialVersionUID = 1L; this.traceId = traceId; } + /** + * 状态描述 + * @return + */ + public String getStatusDesc() { + return statusDesc; + } + /** + * 状态描述 + * @param statusDesc + */ + public void setStatusDesc(String statusDesc) { + this.statusDesc = statusDesc; + } + @Override public String toString() { return "VvTradeOrderLineStatusLogEntity{" + @@ -234,6 +252,7 @@ private static final long serialVersionUID = 1L; ",features=" + features + ",changeStatusUser=" + changeStatusUser + ",traceId=" + traceId + + ",statusDesc=" + statusDesc + "}"; } } \ No newline at end of file diff --git a/api-mapper/src/main/java/com/heyu/api/data/enums/ReverseStatusEnums.java b/api-mapper/src/main/java/com/heyu/api/data/enums/ReverseStatusEnums.java index 612ab88..65a3fc1 100644 --- a/api-mapper/src/main/java/com/heyu/api/data/enums/ReverseStatusEnums.java +++ b/api-mapper/src/main/java/com/heyu/api/data/enums/ReverseStatusEnums.java @@ -14,7 +14,11 @@ public enum ReverseStatusEnums { create("create", "订单创建"), - cancel("cancel", "订单取消"), + buyer_apply_cancel("buyer_apply_cancel", "买家申请订单取消"), + + cancel("cancel", "卖家同意订单取消"), + + seller_reject_cancel("seller_reject_cancel", "买家拒绝取消"), buyer_apply_refund_wait_seller_agree("buyer_apply_refund_wait_seller_agree", "买家申请仅退款,等待卖家同意,"), diff --git a/api-third/src/main/java/com/heyu/api/alibaba/request/mm/order/AppCloseDTO.java b/api-third/src/main/java/com/heyu/api/alibaba/request/mm/order/AppCloseDTO.java index c3b592e..223711d 100644 --- a/api-third/src/main/java/com/heyu/api/alibaba/request/mm/order/AppCloseDTO.java +++ b/api-third/src/main/java/com/heyu/api/alibaba/request/mm/order/AppCloseDTO.java @@ -13,6 +13,11 @@ public class AppCloseDTO extends AppBaseRequest { */ private Long tradeOrderId; + /*** + * 关闭原因 + */ + private String reason; + } diff --git a/api-third/src/main/java/com/heyu/api/alibaba/request/mm/order/VvCancelDTO.java b/api-third/src/main/java/com/heyu/api/alibaba/request/mm/order/VvCancelDTO.java index 2183c25..5b02d0f 100644 --- a/api-third/src/main/java/com/heyu/api/alibaba/request/mm/order/VvCancelDTO.java +++ b/api-third/src/main/java/com/heyu/api/alibaba/request/mm/order/VvCancelDTO.java @@ -16,7 +16,7 @@ public class VvCancelDTO extends AdminBaseDTO { /*** * 订单取消原因 */ - private String cancelReason; + private String reason; } diff --git a/api-third/src/main/java/com/heyu/api/alibaba/request/mm/order/resp/VvTradeOrderCancelDTO.java b/api-third/src/main/java/com/heyu/api/alibaba/request/mm/order/resp/VvTradeOrderCancelDTO.java new file mode 100644 index 0000000..ef21754 --- /dev/null +++ b/api-third/src/main/java/com/heyu/api/alibaba/request/mm/order/resp/VvTradeOrderCancelDTO.java @@ -0,0 +1,23 @@ +package com.heyu.api.alibaba.request.mm.order.resp; + + +import com.heyu.api.alibaba.request.vv.AppBaseRequest; +import lombok.Data; + +@Data +public class VvTradeOrderCancelDTO extends AppBaseRequest { + + + + /*** + * 如果订单还没有发货,就传订单编号 ,如果订单已经发货了,就传 物流单号 + */ + private Long tradeOrderId; + + /*** + * 取消原因 + */ + private String reason; + + +} diff --git a/api-third/src/main/java/com/heyu/api/alibaba/request/mm/order/resp/VvTradeOrderShippedDTO.java b/api-third/src/main/java/com/heyu/api/alibaba/request/mm/order/resp/VvTradeOrderShippedDTO.java new file mode 100644 index 0000000..5ac609f --- /dev/null +++ b/api-third/src/main/java/com/heyu/api/alibaba/request/mm/order/resp/VvTradeOrderShippedDTO.java @@ -0,0 +1,23 @@ +package com.heyu.api.alibaba.request.mm.order.resp; + + +import com.heyu.api.alibaba.request.vv.AppBaseRequest; +import lombok.Data; + +@Data +public class VvTradeOrderShippedDTO extends AppBaseRequest { + + + /*** + * 物流单号 + */ + private String trackNumber; + + + /*** + * 如果订单还没有发货,就传订单编号 ,如果订单已经发货了,就传 物流单号 + */ + private Long tradeOrderId; + + +} diff --git a/api-third/src/main/java/com/heyu/api/service/VvTradeOrderConvertService.java b/api-third/src/main/java/com/heyu/api/service/VvTradeOrderConvertService.java index b034a9d..83718c5 100644 --- a/api-third/src/main/java/com/heyu/api/service/VvTradeOrderConvertService.java +++ b/api-third/src/main/java/com/heyu/api/service/VvTradeOrderConvertService.java @@ -11,11 +11,11 @@ public interface VvTradeOrderConvertService { List list, boolean isApp); - public int addOrderLineStatusLogList(List tradeOrderLineId, String status, String changeStatusUser, String... reason); + public int addOrderLineStatusLogList(List tradeOrderLineId, Object status, String changeStatusUser, String... reason); int addOrderLineStatusLog(Long tradeOrderLineId, - String status, + Object status, String changeStatusUser, String... reason diff --git a/api-third/src/main/java/com/heyu/api/service/impl/ReverseOrderServiceImpl.java b/api-third/src/main/java/com/heyu/api/service/impl/ReverseOrderServiceImpl.java index 6d039ac..9cbf32c 100644 --- a/api-third/src/main/java/com/heyu/api/service/impl/ReverseOrderServiceImpl.java +++ b/api-third/src/main/java/com/heyu/api/service/impl/ReverseOrderServiceImpl.java @@ -120,6 +120,8 @@ public class ReverseOrderServiceImpl implements ReverseOrderService { vvReverseOrderProveDao.insertOrUpdateVvReverseOrderProve(vvReverseOrderProveEntity); } } + + return R.ok().setData(vvReverseOrderEntity); } diff --git a/api-third/src/main/java/com/heyu/api/service/impl/VvTradeOrderConvertServiceImpl.java b/api-third/src/main/java/com/heyu/api/service/impl/VvTradeOrderConvertServiceImpl.java index 1da7b7d..c859f5d 100644 --- a/api-third/src/main/java/com/heyu/api/service/impl/VvTradeOrderConvertServiceImpl.java +++ b/api-third/src/main/java/com/heyu/api/service/impl/VvTradeOrderConvertServiceImpl.java @@ -11,6 +11,8 @@ import com.heyu.api.data.entity.vv.VvPackageEntity; import com.heyu.api.data.entity.vv.VvTradeOrderEntity; import com.heyu.api.data.entity.vv.VvTradeOrderLineEntity; import com.heyu.api.data.entity.vv.VvTradeOrderLineStatusLogEntity; +import com.heyu.api.data.enums.OrderStatusEnums; +import com.heyu.api.data.enums.ReverseStatusEnums; import com.heyu.api.data.utils.SanUtils; import com.heyu.api.service.VvTradeOrderConvertService; import org.springframework.beans.BeanUtils; @@ -83,7 +85,7 @@ public class VvTradeOrderConvertServiceImpl implements VvTradeOrderConvertServic } @Override - public int addOrderLineStatusLogList(List tradeOrderLineIdList, String status, String changeStatusUser, String... reason) { + public int addOrderLineStatusLogList(List tradeOrderLineIdList, Object status, String changeStatusUser, String... reason) { for (Long tradeOrderLineId : tradeOrderLineIdList) { addOrderLineStatusLog(tradeOrderLineId, status, changeStatusUser, reason); } @@ -91,10 +93,19 @@ public class VvTradeOrderConvertServiceImpl implements VvTradeOrderConvertServic } @Override - public int addOrderLineStatusLog(Long tradeOrderLineId, String status, String changeStatusUser, String... reason) { + public int addOrderLineStatusLog(Long tradeOrderLineId, Object status, String changeStatusUser, String ... reason) { VvTradeOrderLineStatusLogEntity entity = new VvTradeOrderLineStatusLogEntity(); entity.setTradeOrderLineId(tradeOrderLineId); - entity.setStatus(status); + + + if(status instanceof OrderStatusEnums){ + entity.setStatus(((OrderStatusEnums) status).getStatus()); + entity.setStatusDesc(((OrderStatusEnums) status).getDesc()); + }else if (status instanceof ReverseStatusEnums){ + entity.setStatus(((ReverseStatusEnums) status).getStatus()); + entity.setStatusDesc(((ReverseStatusEnums) status).getDesc()); + } + entity.setChangeStatusUser(changeStatusUser); if (reason != null && reason.length > 0) { entity.setReason(reason[0]); diff --git a/api-web/api-interface/src/main/java/com/heyu/api/controller/mm/AdminOrderController.java b/api-web/api-interface/src/main/java/com/heyu/api/controller/mm/AdminOrderController.java index a318033..5f29dc8 100644 --- a/api-web/api-interface/src/main/java/com/heyu/api/controller/mm/AdminOrderController.java +++ b/api-web/api-interface/src/main/java/com/heyu/api/controller/mm/AdminOrderController.java @@ -245,7 +245,7 @@ public class AdminOrderController { vvTradeOrderLineDao.updateVvTradeOrderLineById(tradeOrderLineEntity); vvTradeOrderConvertService.addOrderLineStatusLog(tradeOrderLineEntity.getId(), - OrderStatusEnums.shipping.getStatus(), + OrderStatusEnums.shipping, vvOrderRequest.getUserName()); } @@ -268,7 +268,7 @@ public class AdminOrderController { vvTradeOrderLineDao.updateCoverVvTradeOrderLineById(tradeOrderLineEntity); vvTradeOrderConvertService.addOrderLineStatusLog(tradeOrderLineEntity.getId(), - OrderStatusEnums.wait_shipping.getStatus(), + OrderStatusEnums.wait_shipping, vvOrderRequest.getUserName(), vvOrderRequest.getReason() ); @@ -296,7 +296,7 @@ public class AdminOrderController { vvTradeOrderLineDao.updateVvTradeOrderLineById(tradeOrderLineEntity); vvTradeOrderConvertService.addOrderLineStatusLog(tradeOrderLineEntity.getId(), - OrderStatusEnums.shipped.getStatus(), + OrderStatusEnums.shipped, vvDeliveredDTO.getUserName() ); } @@ -315,7 +315,6 @@ public class AdminOrderController { dto.setType(DelayTypeEnums.delivered.getType()); int second = DateUtils.betweenSecond(time, timeAfter15); - log.info("AdminOrderController delay send :{}", JSON.toJSONString(dto)); // 通过广播模式发布延时消息 延时30分钟 持久化消息 消费后销毁 这里无需指定路由,会广播至每个绑定此交换机的队列 @@ -347,7 +346,7 @@ public class AdminOrderController { vvTradeOrderLineDao.updateVvTradeOrderLineById(tradeOrderLineEntity); vvTradeOrderConvertService.addOrderLineStatusLog(tradeOrderLineEntity.getId(), - OrderStatusEnums.delivered.getStatus(), + OrderStatusEnums.delivered, vvDeliveredDTO.getUserName() ); } @@ -367,10 +366,9 @@ public class AdminOrderController { return R.error("订单状态不是wait_shipping,不能取消订单"); } } - AppliyReverseRequest appliyReverseRequest = new AppliyReverseRequest(); appliyReverseRequest.setRefundType(RefundTypeEnums.only_refund.getCode()); - appliyReverseRequest.setRefundReason("订单取消:" + vvCancelDTO.getCancelReason()); + appliyReverseRequest.setRefundReason("订单取消:" + vvCancelDTO.getReason()); appliyReverseRequest.setStatus(ReverseStatusEnums.cancel.getStatus()); R r = reverseOrderService.createReverseOrder(vvTradeOrderLineEntityList, appliyReverseRequest); @@ -390,14 +388,13 @@ public class AdminOrderController { for (VvTradeOrderLineEntity vvTradeOrderLineEntity : vvTradeOrderLineEntityList) { vvTradeOrderLineEntity.setGmtCancel(new Date()); vvTradeOrderLineEntity.setCancelUser(vvCancelDTO.getUserName()); - vvTradeOrderLineEntity.setCancelReason(vvCancelDTO.getCancelReason()); + vvTradeOrderLineEntity.setCancelReason(vvCancelDTO.getReason()); vvTradeOrderLineDao.updateVvTradeOrderLineById(vvTradeOrderLineEntity); - vvTradeOrderConvertService.addOrderLineStatusLog( vvTradeOrderLineEntity.getId(), - OrderStatusEnums.cancel.getStatus(), + OrderStatusEnums.cancel, vvCancelDTO.getUserName(), - vvCancelDTO.getCancelReason() + vvCancelDTO.getReason() ); } vvReverseOrderDao.updateVvReverseOrderById(reverseOrderEntity); diff --git a/api-web/api-interface/src/main/java/com/heyu/api/controller/mm/AdminReverseController.java b/api-web/api-interface/src/main/java/com/heyu/api/controller/mm/AdminReverseController.java index 9cb39ea..a09ebcc 100644 --- a/api-web/api-interface/src/main/java/com/heyu/api/controller/mm/AdminReverseController.java +++ b/api-web/api-interface/src/main/java/com/heyu/api/controller/mm/AdminReverseController.java @@ -137,6 +137,7 @@ public class AdminReverseController { VvReverseOrderEntity vvReverseOrderEntity = vvReverseOrderDao.selectVvReverseOrderById(vvApproveRequest.getReverseOrderId()); vvReverseOrderEntity.setStatus(vvApproveRequest.getStatus()); vvReverseOrderDao.updateVvReverseOrderById(vvReverseOrderEntity); + if (ReverseStatusEnums.seller_agree_return_wait_buyer_post.getStatus().equals(vvApproveRequest.getStatus())) { if (!ReverseStatusEnums.buyer_apply_return_wait_seller_agree.getStatus().equals(vvReverseOrderEntity.getStatus())) { return R.error("逆向订单状态不是 seller_agree_return_wait_buyer_post"); @@ -144,6 +145,7 @@ public class AdminReverseController { vvReverseOrderEntity.setGmtSellerAgreeReturn(new Date()); vvReverseOrderEntity.setSellerAgreeReturnUser(vvApproveRequest.getUserName()); } + if (ReverseStatusEnums.reject_return.getStatus().equals(vvApproveRequest.getStatus())) { if (!ReverseStatusEnums.buyer_apply_return_wait_seller_agree.getStatus().equals(vvReverseOrderEntity.getStatus())) { return R.error("逆向订单状态不是 buyer_apply_reverse_wait_seller_agree"); @@ -182,7 +184,6 @@ public class AdminReverseController { if (!ReverseStatusEnums.qa_check_finished.getStatus().equals(vvReverseOrderEntity.getStatus()) && !ReverseStatusEnums.cancel.getDesc().equals(vvApproveRequest.getStatus()) && !ReverseStatusEnums.buyer_apply_refund_wait_seller_agree.getDesc().equals(vvApproveRequest.getStatus()) - ) { return R.error("逆向订单状态不是 qa_check_finished 或 cancel "); } @@ -230,6 +231,11 @@ public class AdminReverseController { vvReverseOrderEntity.setStatus(ReverseStatusEnums.weixin_refunding.getStatus()); vvReverseOrderDao.updateVvReverseOrderById(vvReverseOrderEntity); } + + + + + return R.ok(); } diff --git a/api-web/api-interface/src/main/java/com/heyu/api/controller/vv/AppOrderController.java b/api-web/api-interface/src/main/java/com/heyu/api/controller/vv/AppOrderController.java index 1381f17..e90949f 100644 --- a/api-web/api-interface/src/main/java/com/heyu/api/controller/vv/AppOrderController.java +++ b/api-web/api-interface/src/main/java/com/heyu/api/controller/vv/AppOrderController.java @@ -6,19 +6,18 @@ import com.baomidou.mybatisplus.core.metadata.IPage; import com.heyu.api.alibaba.request.mm.order.AppCloseDTO; import com.heyu.api.alibaba.request.mm.order.AppDeliveredDTO; import com.heyu.api.alibaba.request.mm.order.resp.*; +import com.heyu.api.alibaba.request.mm.reverse.AppliyReverseRequest; import com.heyu.api.alibaba.request.vv.AppOrderRequest; import com.heyu.api.common.annotation.Describe; import com.heyu.api.data.dao.vv.*; import com.heyu.api.data.dto.WeiXinPayDelayDTO; import com.heyu.api.data.entity.vv.*; -import com.heyu.api.data.enums.DelayTypeEnums; -import com.heyu.api.data.enums.OrderStatusEnums; -import com.heyu.api.data.enums.PayTypeEnums; -import com.heyu.api.data.enums.RoleEnums; +import com.heyu.api.data.enums.*; import com.heyu.api.data.utils.*; import com.heyu.api.jsapi.JsapiPrepay; import com.heyu.api.jsapi.dto.pay.DirectAPIv3JsapiPrepayResponse; import com.heyu.api.jsapi.dto.pay.WxPayVO; +import com.heyu.api.service.ReverseOrderService; import com.heyu.api.service.VvTradeOrderConvertService; import com.heyu.api.utils.ISelect; import com.heyu.api.utils.PPageUtils; @@ -99,7 +98,8 @@ public class AppOrderController { @Autowired private VvTradeOrderConvertService vvTradeOrderConvertService; - + @Autowired + private ReverseOrderService reverseOrderService; /*** * https://api.1024api.com/api-interface/app/order/list @@ -144,7 +144,6 @@ public class AppOrderController { for (VVOrderListResp vvOrderListResp : vvOrderListResps) { VvTradeOrderEntity vvTradeOrderEntity = new VvTradeOrderEntity(); BeanUtils.copyProperties(vvOrderListResp, vvTradeOrderEntity); - if (CollectionUtils.isNotEmpty(vvOrderListResp.getPackageList())) { for (AdminPackageDTO adminPackageDTO : vvOrderListResp.getPackageList()) { AppPackageDTO appPackageDTO = new AppPackageDTO(); @@ -391,6 +390,11 @@ public class AppOrderController { } for (VvTradeOrderLineEntity vvTradeOrderLineEntity : vvTradeOrderLineEntityList) { vvTradeOrderLineDao.updateByBuerIdAndIds(OrderStatusEnums.delete.getStatus(), vvOrderRequest.getBuyerId(), vvTradeOrderLineEntity.getId()); + vvTradeOrderConvertService.addOrderLineStatusLog( + vvTradeOrderLineEntity.getId(), + OrderStatusEnums.delete, + vvOrderRequest.getBuyerId() + "" + ); } } return R.ok(); @@ -400,18 +404,52 @@ public class AppOrderController { // /app/order/applyCancel @Describe("申请取消") @RequestMapping("/applyCancel") - public R applyCancel(@RequestBody VvTradeOrderDeleteDTO vvOrderRequest) { - + public R applyCancel(@RequestBody VvTradeOrderCancelDTO request) { + List vvTradeOrderLineEntityList = vvTradeOrderLineDao.selectVvTradeOrderLineByTradeOrderId(request.getTradeOrderId()); + for (VvTradeOrderLineEntity vvTradeOrderLineEntity : vvTradeOrderLineEntityList) { + if (!OrderStatusEnums.wait_shipping.getStatus().equals(vvTradeOrderLineEntity.getStatus())) { + return R.error("订单状态不是wait_shipping,不能取消订单"); + } + } + AppliyReverseRequest appliyReverseRequest = new AppliyReverseRequest(); + appliyReverseRequest.setRefundType(RefundTypeEnums.only_refund.getCode()); + appliyReverseRequest.setRefundReason("买家申请订单取消:" + request.getReason()); + appliyReverseRequest.setStatus(ReverseStatusEnums.buyer_apply_cancel.getStatus()); + reverseOrderService.createReverseOrder(vvTradeOrderLineEntityList, appliyReverseRequest); + for (VvTradeOrderLineEntity vvTradeOrderLineEntity : vvTradeOrderLineEntityList) { + vvTradeOrderConvertService.addOrderLineStatusLog(vvTradeOrderLineEntity.getId(), + ReverseStatusEnums.buyer_apply_cancel, + request.getBuyerId() + "" + ,request.getReason() + ); + } return R.ok(); } // /app/order/shipped - @Describe("申请取消") + @Describe("买家签收") @RequestMapping("/shipped") - public R shipped(@RequestBody VvTradeOrderDeleteDTO vvOrderRequest) { + public R shipped(@RequestBody VvTradeOrderShippedDTO request) { + List vvTradeOrderLineEntityList = vvTradeOrderLineDao.selectVvTradeOrderLineByTrackNumber(request.getTrackNumber()); + for (VvTradeOrderLineEntity tradeOrderLineEntity : vvTradeOrderLineEntityList) { + if (!OrderStatusEnums.shipped.getStatus().equals(tradeOrderLineEntity.getStatus())) { + return R.error("订单状态不对"); + } + } + for (VvTradeOrderLineEntity tradeOrderLineEntity : vvTradeOrderLineEntityList) { + tradeOrderLineEntity.setStatus(OrderStatusEnums.shipped.getStatus()); + tradeOrderLineEntity.setGmtDelivered(new Date()); + tradeOrderLineEntity.setDeliveredUser(request.getBuyerId() + ""); + vvTradeOrderLineDao.updateVvTradeOrderLineById(tradeOrderLineEntity); + + vvTradeOrderConvertService.addOrderLineStatusLog(tradeOrderLineEntity.getId(), + OrderStatusEnums.shipped, + request.getBuyerId() + "" + ); + } return R.ok(); } @@ -438,7 +476,14 @@ public class AppOrderController { for (VvTradeOrderLineEntity tradeOrderLineEntity : vvTradeOrderLineEntityList) { tradeOrderLineEntity.setStatus(OrderStatusEnums.delivered.getStatus()); tradeOrderLineEntity.setGmtDelivered(new Date()); + tradeOrderLineEntity.setDeliveredUser(vvDeliveredDTO.getBuyerId() + ""); vvTradeOrderLineDao.updateVvTradeOrderLineById(tradeOrderLineEntity); + + vvTradeOrderConvertService.addOrderLineStatusLog( + tradeOrderLineEntity.getId(), + OrderStatusEnums.delivered, + vvDeliveredDTO.getBuyerId() + "" + ); } return R.ok(); } @@ -461,7 +506,16 @@ public class AppOrderController { for (VvTradeOrderLineEntity tradeOrderLineEntity : vvTradeOrderLineEntityList) { tradeOrderLineEntity.setStatus(OrderStatusEnums.close.getStatus()); tradeOrderLineEntity.setGmtClose(new Date()); + tradeOrderLineEntity.setCloseUser(appCloseDTO.getTradeOrderId() + ""); + tradeOrderLineEntity.setCloseReason(appCloseDTO.getReason()); vvTradeOrderLineDao.updateVvTradeOrderLineById(tradeOrderLineEntity); + + vvTradeOrderConvertService.addOrderLineStatusLog( + tradeOrderLineEntity.getId(), + OrderStatusEnums.close, + appCloseDTO.getBuyerId() + "", + appCloseDTO.getReason() + ); } jsApiPrepay.close(appCloseDTO.getTradeOrderId()); return R.ok(); diff --git a/api-web/api-interface/src/main/java/com/heyu/api/controller/vv/AppReverseController.java b/api-web/api-interface/src/main/java/com/heyu/api/controller/vv/AppReverseController.java index 456d025..3c18219 100644 --- a/api-web/api-interface/src/main/java/com/heyu/api/controller/vv/AppReverseController.java +++ b/api-web/api-interface/src/main/java/com/heyu/api/controller/vv/AppReverseController.java @@ -16,6 +16,7 @@ import com.heyu.api.data.utils.NumberUtil; import com.heyu.api.data.utils.R; import com.heyu.api.data.utils.SanUtils; import com.heyu.api.service.ReverseOrderService; +import com.heyu.api.service.VvTradeOrderConvertService; import lombok.extern.slf4j.Slf4j; import org.apache.commons.collections.CollectionUtils; import org.springframework.beans.factory.annotation.Autowired; @@ -51,8 +52,8 @@ public class AppReverseController { @Autowired private ReverseOrderService reverseOrderService; - - + @Autowired + private VvTradeOrderConvertService vvTradeOrderConvertService; /*** * * https://api.1024api.com/api-interface/app/reverse/add @@ -71,16 +72,15 @@ public class AppReverseController { } appliyReverseRequest.setRefundReason("买家申请退款:" + appliyReverseRequest.getRefundReason()); List vvTradeOrderLineEntityList = vvTradeOrderLineDao.selectVvTradeOrderLineByIds(appliyReverseRequest.getTradeOrderLineIds()); - ; R r = reverseOrderService.createReverseOrder(vvTradeOrderLineEntityList, appliyReverseRequest); if (r.ifSuccessful()) { VvReverseOrderEntity vvReverseOrderEntity = (VvReverseOrderEntity) r.getData(); vvReverseOrderEntity.setGmtBuyerApplyRefund(new Date()); + vvReverseOrderDao.updateVvReverseOrderById(vvReverseOrderEntity); } return R.ok(); } - /** * 退货退款 : /app/reverse/tracknumber * @@ -125,24 +125,30 @@ public class AppReverseController { */ @Describe("逆向订单关闭") @RequestMapping("/close") - public R close(@RequestBody AppliyReverseCloseRequest appliyReverseRequest) { - VvReverseOrderEntity vvReverseOrderEntity = vvReverseOrderDao.selectVvReverseOrderById(appliyReverseRequest.getReverseOrderId()); + public R close(@RequestBody AppliyReverseCloseRequest request) { + VvReverseOrderEntity vvReverseOrderEntity = vvReverseOrderDao.selectVvReverseOrderById(request.getReverseOrderId()); if ( !ReverseStatusEnums.buyer_apply_refund_wait_seller_agree.getStatus().equals(vvReverseOrderEntity.getStatus()) && !ReverseStatusEnums.buyer_apply_return_wait_seller_agree.getStatus().equals(vvReverseOrderEntity.getStatus()) && !ReverseStatusEnums.seller_agree_return_wait_buyer_post.getStatus().equals(vvReverseOrderEntity.getStatus())) { return R.error("逆向订单状态非buyer_apply_reverse_wait_seller_agree 和 seller_agree_return_wait_buyer_post,订单不允许关闭 "); } + vvReverseOrderEntity.setStatus(ReverseStatusEnums.close.getStatus()); vvReverseOrderEntity.setGmtClose(new Date()); - vvReverseOrderEntity.setCloseReason(appliyReverseRequest.getCloseReason()); + vvReverseOrderEntity.setCloseReason(request.getCloseReason()); vvReverseOrderDao.updateVvReverseOrderById(vvReverseOrderEntity); - List vvReverseOrderLineEntities = vvReverseOrderLineDao.selectVvReverseOrderLineByReverseOrderId(appliyReverseRequest.getReverseOrderId()); + + List vvReverseOrderLineEntities = vvReverseOrderLineDao.selectVvReverseOrderLineByReverseOrderId(request.getReverseOrderId()); List tradeOrderLineIds = SanUtils.list2list(vvReverseOrderLineEntities, VvReverseOrderLineEntity::getTradeOrderLineId); List tradeOrderLineEntities = vvTradeOrderLineDao.selectVvTradeOrderLineByIds(tradeOrderLineIds); for (VvTradeOrderLineEntity tradeOrderLineEntity : tradeOrderLineEntities) { tradeOrderLineEntity.setReverseStatus(ReverseStatusEnums.close.getStatus()); vvTradeOrderLineDao.updateVvTradeOrderLineById(tradeOrderLineEntity); + vvTradeOrderConvertService.addOrderLineStatusLog(tradeOrderLineEntity.getId(), + ReverseStatusEnums.close.getStatus(), + request.getBuyerId() + "" + ); } return R.ok("逆向订单关闭成功"); } diff --git a/api-web/api-interface/src/main/java/com/heyu/api/controller/vv/AppUploadOssController.java b/api-web/api-interface/src/main/java/com/heyu/api/controller/vv/AppUploadOssController.java index 9884d51..9a9e361 100644 --- a/api-web/api-interface/src/main/java/com/heyu/api/controller/vv/AppUploadOssController.java +++ b/api-web/api-interface/src/main/java/com/heyu/api/controller/vv/AppUploadOssController.java @@ -25,7 +25,6 @@ public class AppUploadOssController { @Autowired private OssFileUploadService ossFileUploadService; - /** * post man 配置 * https://blog.csdn.net/maowendi/article/details/80537304