记得上下班打卡 | git大法好,push需谨慎

Commit acc85989 authored by 胡佳晨's avatar 胡佳晨

商品取消订单 退券

商铺拒绝退款 增加 退款次数和退款时间
用户订单详情增加 最后一次退款订单状态
parent 9216aa91
...@@ -31,6 +31,8 @@ public class GoblinAppOrderDetailsVo implements Serializable, Cloneable { ...@@ -31,6 +31,8 @@ public class GoblinAppOrderDetailsVo implements Serializable, Cloneable {
private int canRefund; private int canRefund;
@ApiModelProperty(value = "退款订单数量") @ApiModelProperty(value = "退款订单数量")
private int refundSize; private int refundSize;
@ApiModelProperty(value = "退款订单状态[退款/退货状态[0-商铺发起退款|1-退款申请(用户发送退款请求)|2-退款成功(商家同意退款)|3-退款拒绝(商家拒绝退款)|4-退货申请(用户发起退货请求)|5-退货拒绝(商家拒绝退货)|6-退货审核通过等待用户填写物流(商家审核通过,等待用户寄回商品)|7-待收货(用户已确认)|8-退货完成(商家收货并且同意退款给用户)|9-退货失败(商家不同意退款)]")
private int refundStatus;
private static final GoblinAppOrderDetailsVo obj = new GoblinAppOrderDetailsVo(); private static final GoblinAppOrderDetailsVo obj = new GoblinAppOrderDetailsVo();
public static GoblinAppOrderDetailsVo getNew() { public static GoblinAppOrderDetailsVo getNew() {
......
...@@ -72,6 +72,10 @@ public class GoblinBackOrderVo implements Serializable, Cloneable { ...@@ -72,6 +72,10 @@ public class GoblinBackOrderVo implements Serializable, Cloneable {
private String mailNo; private String mailNo;
@ApiModelProperty(value = "退款时间") @ApiModelProperty(value = "退款时间")
private String refundAt; private String refundAt;
@ApiModelProperty(value = "拒绝时间")
private String refuseAt;
@ApiModelProperty(value = "拒绝次数")
private Integer refundSize;
@ApiModelProperty(value = "审核时间") @ApiModelProperty(value = "审核时间")
private String auditAt; private String auditAt;
@ApiModelProperty(value = "创建时间") @ApiModelProperty(value = "创建时间")
......
...@@ -131,6 +131,10 @@ public class GoblinBackOrder implements Serializable, Cloneable { ...@@ -131,6 +131,10 @@ public class GoblinBackOrder implements Serializable, Cloneable {
private LocalDateTime refundAt; private LocalDateTime refundAt;
private LocalDateTime refuseAt;
private int refundSize;
private LocalDateTime createdAt; private LocalDateTime createdAt;
private LocalDateTime updatedAt; private LocalDateTime updatedAt;
......
...@@ -961,6 +961,12 @@ create table goblin_mail ...@@ -961,6 +961,12 @@ create table goblin_mail
KEY `goblin_mail_order_id_index` (`order_id`) KEY `goblin_mail_order_id_index` (`order_id`)
) engine = InnoDB comment '订单快递表'; ) engine = InnoDB comment '订单快递表';
alter table goblin_store_order add store_name varchar(255) default '' comment '商铺名称';
alter table goblin_store_order add market_type varchar(255) default '' comment '活动类型[ZZ-正在下单]';
alter table goblin_store_order add market_id varchar(255) default '' comment '活动id';
alter table goblin_store_order add zhengzai_status int default 0 comment '正在下单是否出货[0-未出货|1-已出货]';
alter table goblin_self_marketing add performance_img varchar(128) default '' comment '演出图片';
alter table goblin_order_sku add spu_name varchar(255) default '' comment 'spu名称'; alter table goblin_order_sku add spu_name varchar(255) default '' comment 'spu名称';
alter table goblin_order_sku add spu_pic varchar(255) default '' comment 'spu图片'; alter table goblin_order_sku add spu_pic varchar(255) default '' comment 'spu图片';
...@@ -972,6 +978,13 @@ alter table goblin_store_order add store_price_coupon decimal (8,2) default 0 co ...@@ -972,6 +978,13 @@ alter table goblin_store_order add store_price_coupon decimal (8,2) default 0 co
alter table goblin_back_order add back_price_express decimal (8,2) default 0 comment '退款快递费'; alter table goblin_back_order add back_price_express decimal (8,2) default 0 comment '退款快递费';
alter table goblin_back_order add refund_at datetime default null comment '退款时间';
alter table goblin_back_order add refuse_at datetime default null comment '拒绝时间';
alter table goblin_back_order add refund_size int default 0 comment '拒绝次数';
alter table goblin_back_order add audit_at datetime default null comment '审核时间';
alter table goblin_back_order add refuse_reason varchar(255) default '' comment '退款原因';
alter table goblin_back_order_log add operation_name varchar(255) default '' comment '操作人姓名'; alter table goblin_back_order_log add operation_name varchar(255) default '' comment '操作人姓名';
# -- >>------------------------------------------------------------------------------------ # -- >>------------------------------------------------------------------------------------
# -- >>------------------------------------------------------------------------------------ # -- >>------------------------------------------------------------------------------------
......
...@@ -126,8 +126,10 @@ public class GoblinOrderAppServiceImpl implements IGoblinOrderAppService { ...@@ -126,8 +126,10 @@ public class GoblinOrderAppServiceImpl implements IGoblinOrderAppService {
vo.setCanRefund(1); vo.setCanRefund(1);
} }
} }
int isRefund = redisUtils.getBackOrderByOrderId(orderId).size(); List<String> orderRefundIds = redisUtils.getBackOrderByOrderId(orderId);
vo.setRefundSize(isRefund); GoblinBackOrderVo backOrderVo = redisUtils.getBackOrderVo(orderRefundIds.get(orderRefundIds.size()-1));
vo.setRefundStatus(backOrderVo.getStatus());
vo.setRefundSize(orderRefundIds.size());
vo.setRestTime(getRestTime(orderVo)); vo.setRestTime(getRestTime(orderVo));
vo.setStoreOrderVo(orderVo); vo.setStoreOrderVo(orderVo);
vo.setOrderSkuVos(skuVos); vo.setOrderSkuVos(skuVos);
...@@ -250,7 +252,7 @@ public class GoblinOrderAppServiceImpl implements IGoblinOrderAppService { ...@@ -250,7 +252,7 @@ public class GoblinOrderAppServiceImpl implements IGoblinOrderAppService {
List<GoblinBackOrderSkuVo> orderSkuVoList = ObjectUtil.goblinBackOrderSkuVoArrayList(); List<GoblinBackOrderSkuVo> orderSkuVoList = ObjectUtil.goblinBackOrderSkuVoArrayList();
if (param.getOrderSkuId() == null) { if (param.getOrderSkuId() == null) {
//订单状态修改 //订单状态修改
orderVo.setStatus(GoblinStatusConst.Status.ORDER_STATUS_61.getValue()); // orderVo.setStatus(GoblinStatusConst.Status.ORDER_STATUS_61.getValue());
orderStatus.add(new Object[]{ orderStatus.add(new Object[]{
orderVo.getStatus(), now, orderVo.getStatus(), now,
orderVo.getOrderId(), now, now orderVo.getOrderId(), now, now
......
...@@ -198,7 +198,8 @@ public class GoblinStoreBackOrderServiceImpl implements IGoblinStoreBackOrderSer ...@@ -198,7 +198,8 @@ public class GoblinStoreBackOrderServiceImpl implements IGoblinStoreBackOrderSer
} }
GoblinBackOrderVo backOrderVo = redisUtils.getBackOrderVo(backOrderId); GoblinBackOrderVo backOrderVo = redisUtils.getBackOrderVo(backOrderId);
backOrderVo.setStatus(GoblinStatusConst.Status.ORDER_BACK_STATUS_3.getValue()); backOrderVo.setStatus(GoblinStatusConst.Status.ORDER_BACK_STATUS_3.getValue());
backOrderVo.setAuditAt(nowStr); backOrderVo.setRefuseAt(nowStr);
backOrderVo.setRefundSize(backOrderVo.getRefundSize() + 1);
//添加日志 //添加日志
GoblinBackOrderLog backOrderLog = initBackLog(backOrderId, uid, now); GoblinBackOrderLog backOrderLog = initBackLog(backOrderId, uid, now);
backOrderLog.setStatus(GoblinStatusConst.Status.ORDER_LOG_STATUS_22.getValue()); backOrderLog.setStatus(GoblinStatusConst.Status.ORDER_LOG_STATUS_22.getValue());
...@@ -212,7 +213,7 @@ public class GoblinStoreBackOrderServiceImpl implements IGoblinStoreBackOrderSer ...@@ -212,7 +213,7 @@ public class GoblinStoreBackOrderServiceImpl implements IGoblinStoreBackOrderSer
queueUtils.sendMsgByRedis( queueUtils.sendMsgByRedis(
MQConst.GoblinQueue.GOBLIN_STORE_ORDER_OPERA.getKey(), MQConst.GoblinQueue.GOBLIN_STORE_ORDER_OPERA.getKey(),
SqlMapping.get("goblin_order.store.backOrderStatus", SqlMapping.get("goblin_order.store.backOrderStatus",
backOrderVo.getStatus(),backOrderVo.getAuditAt(), now, backOrderVo.getStatus(), backOrderVo.getAuditAt(), backOrderVo.getRefundSize(), now,
backOrderId, now, now backOrderId, now, now
) )
); );
......
...@@ -11,13 +11,12 @@ import com.liquidnet.service.goblin.dto.vo.*; ...@@ -11,13 +11,12 @@ import com.liquidnet.service.goblin.dto.vo.*;
import com.liquidnet.service.goblin.entity.GoblinBackOrder; import com.liquidnet.service.goblin.entity.GoblinBackOrder;
import com.liquidnet.service.goblin.entity.GoblinBackOrderLog; import com.liquidnet.service.goblin.entity.GoblinBackOrderLog;
import com.liquidnet.service.goblin.entity.GoblinOrderOperationLog; import com.liquidnet.service.goblin.entity.GoblinOrderOperationLog;
import com.liquidnet.service.goblin.param.BackCouponParam;
import com.liquidnet.service.goblin.param.RefundCallbackParam; import com.liquidnet.service.goblin.param.RefundCallbackParam;
import com.liquidnet.service.goblin.service.GoblinCouponService;
import com.liquidnet.service.goblin.service.manage.IGoblinStoreMoneyService; import com.liquidnet.service.goblin.service.manage.IGoblinStoreMoneyService;
import com.liquidnet.service.goblin.service.manage.IGoblinStoreOrderService; import com.liquidnet.service.goblin.service.manage.IGoblinStoreOrderService;
import com.liquidnet.service.goblin.util.GoblinMongoUtils; import com.liquidnet.service.goblin.util.*;
import com.liquidnet.service.goblin.util.GoblinRedisUtils;
import com.liquidnet.service.goblin.util.ObjectUtil;
import com.liquidnet.service.goblin.util.QueueUtils;
import com.mongodb.BasicDBObject; import com.mongodb.BasicDBObject;
import com.mongodb.client.result.UpdateResult; import com.mongodb.client.result.UpdateResult;
import io.swagger.annotations.ApiModelProperty; import io.swagger.annotations.ApiModelProperty;
...@@ -47,7 +46,11 @@ public class GoblinStoreOrderServiceImpl implements IGoblinStoreOrderService { ...@@ -47,7 +46,11 @@ public class GoblinStoreOrderServiceImpl implements IGoblinStoreOrderService {
@Autowired @Autowired
GoblinMongoUtils mongoUtils; GoblinMongoUtils mongoUtils;
@Autowired @Autowired
GoblinOrderUtils orderUtils;
@Autowired
QueueUtils queueUtils; QueueUtils queueUtils;
@Autowired
GoblinCouponService goblinCouponService;
@Value("${liquidnet.service.order.url-pay.goblinRefundUrl}") @Value("${liquidnet.service.order.url-pay.goblinRefundUrl}")
private String synUrl; private String synUrl;
@Value("${liquidnet.service.dragon.urls.refundApply}") @Value("${liquidnet.service.dragon.urls.refundApply}")
...@@ -158,6 +161,9 @@ public class GoblinStoreOrderServiceImpl implements IGoblinStoreOrderService { ...@@ -158,6 +161,9 @@ public class GoblinStoreOrderServiceImpl implements IGoblinStoreOrderService {
if (orderVo == null || !orderVo.getStoreId().equals(storeInfoVo.getStoreId())) { if (orderVo == null || !orderVo.getStoreId().equals(storeInfoVo.getStoreId())) {
return ResponseDto.failure("无法查看"); return ResponseDto.failure("无法查看");
} }
if (!orderVo.getStatus().equals(GoblinStatusConst.Status.ORDER_STATUS_0.getValue())) {
return ResponseDto.failure("无法取消");
}
orderVo.setStatus(GoblinStatusConst.Status.ORDER_STATUS_5.getValue()); orderVo.setStatus(GoblinStatusConst.Status.ORDER_STATUS_5.getValue());
orderVo.setCancelReason("商铺取消"); orderVo.setCancelReason("商铺取消");
orderVo.setCancelTime(nowStr); orderVo.setCancelTime(nowStr);
...@@ -177,6 +183,21 @@ public class GoblinStoreOrderServiceImpl implements IGoblinStoreOrderService { ...@@ -177,6 +183,21 @@ public class GoblinStoreOrderServiceImpl implements IGoblinStoreOrderService {
GoblinOrderOperationLog log = initLog(orderId, uid, now); GoblinOrderOperationLog log = initLog(orderId, uid, now);
log.setType(GoblinStatusConst.Status.ORDER_LOG_STATUS_14.getValue()); log.setType(GoblinStatusConst.Status.ORDER_LOG_STATUS_14.getValue());
log.setRemark("商铺取消订单"); log.setRemark("商铺取消订单");
//回退平台券
if (!(orderVo.getUcouponId().equals("") || orderVo.getUcouponId() == null)) {
orderUtils.backCoupon(orderVo.getUcouponId(), uid);
}
//回退店铺券
if (!(orderVo.getStoreCouponId().equals("") || orderVo.getStoreCouponId() == null)) {
List<BackCouponParam> params = ObjectUtil.getBackCouponParam();
BackCouponParam backCouponParam = BackCouponParam.getNew();
backCouponParam.setuCouponIds(orderVo.getStoreCouponId());
backCouponParam.setUid(uid);
params.add(backCouponParam);
goblinCouponService.backCoupon(params);
}
//redis //redis
redisUtils.setGoblinOrder(orderId, orderVo); redisUtils.setGoblinOrder(orderId, orderVo);
//mongo //mongo
......
...@@ -100,7 +100,7 @@ goblin_order.store.refundSkuPrice=UPDATE goblin_order_sku SET price_refund = ? , ...@@ -100,7 +100,7 @@ goblin_order.store.refundSkuPrice=UPDATE goblin_order_sku SET price_refund = ? ,
goblin_order.store.refundBackOrder=UPDATE goblin_back_order SET status = ? ,refund_at=?, updated_at = ? WHERE back_order_id = ? and (updated_at <= ? or created_at = ? or updated_at is null) goblin_order.store.refundBackOrder=UPDATE goblin_back_order SET status = ? ,refund_at=?, updated_at = ? WHERE back_order_id = ? and (updated_at <= ? or created_at = ? or updated_at is null)
goblin_order.store.changeExpress=UPDATE goblin_back_order SET real_back_price = ? ,back_price_express = ? updated_at = ? WHERE back_order_id = ? and (updated_at <= ? or created_at = ? or updated_at is null) goblin_order.store.changeExpress=UPDATE goblin_back_order SET real_back_price = ? ,back_price_express = ? updated_at = ? WHERE back_order_id = ? and (updated_at <= ? or created_at = ? or updated_at is null)
goblin_order.store.changeSku=UPDATE goblin_back_order SET real_back_price = ? , updated_at = ? WHERE back_order_id = ? and (updated_at <= ? or created_at = ? or updated_at is null) goblin_order.store.changeSku=UPDATE goblin_back_order SET real_back_price = ? , updated_at = ? WHERE back_order_id = ? and (updated_at <= ? or created_at = ? or updated_at is null)
goblin_order.store.backOrderStatus=UPDATE goblin_back_order SET status = ? , audit_at=?,updated_at = ? WHERE back_order_id = ? and (updated_at <= ? or created_at = ? or updated_at is null) goblin_order.store.backOrderStatus=UPDATE goblin_back_order SET status = ? , refuse_at=?,refuse_size=?,updated_at = ? WHERE back_order_id = ? and (updated_at <= ? or created_at = ? or updated_at is null)
goblin_order.store.orderStatus=UPDATE goblin_store_order SET status = ? , updated_at = ? WHERE order_id = ? and (updated_at <= ? or created_at = ? or updated_at is null) goblin_order.store.orderStatus=UPDATE goblin_store_order SET status = ? , updated_at = ? WHERE order_id = ? and (updated_at <= ? or created_at = ? or updated_at is null)
goblin_order.store.applyRefund=UPDATE goblin_back_order SET status = ? ,reason=?,audit_at=?, updated_at = ? WHERE back_order_id = ? and (updated_at <= ? or created_at = ? or updated_at is null) goblin_order.store.applyRefund=UPDATE goblin_back_order SET status = ? ,reason=?,audit_at=?, updated_at = ? WHERE back_order_id = ? and (updated_at <= ? or created_at = ? or updated_at is null)
#---- 用户订单操作 #---- 用户订单操作
......
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