|
|
@@ -458,7 +458,9 @@ public class LifeUserOrderService extends ServiceImpl<LifeUserOrderMapper, LifeU
|
|
|
// 更新数据(中间表数据+订单表数据:当已退款个数+当前退款个数=已使用的券数时,订单状态改为已退款)
|
|
|
if (refundCouponCount + refundOrder.getRefundCouponAmount() == orderCouponMiddles.size()) {
|
|
|
lifeUserOrderMapper.update(null,new UpdateWrapper<LifeUserOrder>().eq("id",order.getId())
|
|
|
- .set("status",OrderStatusEnum.REFUND.getStatus()));
|
|
|
+ .set("status",OrderStatusEnum.REFUND.getStatus())
|
|
|
+ .set("refund_time",now)
|
|
|
+ .set("finish_time",now));
|
|
|
if (null != order.getQuanId()) {
|
|
|
lifeDiscountCouponUserMapper.update(null,new UpdateWrapper<LifeDiscountCouponUser>().eq("id",order.getQuanId())
|
|
|
.set("status",DiscountCouponEnum.WAITING_USED.getValue()).set("use_time",null));
|
|
|
@@ -504,6 +506,11 @@ public class LifeUserOrderService extends ServiceImpl<LifeUserOrderMapper, LifeU
|
|
|
public Map<String, Object> refundCheck(Map<String,String> refundOrder) {
|
|
|
Map<String, Object> returnMap = new HashMap<>();
|
|
|
LifeUserOrder order = lifeUserOrderMapper.selectById(refundOrder.get("orderId"));
|
|
|
+ if( null == order){
|
|
|
+ returnMap.put("success", "不可退款");
|
|
|
+ returnMap.put("reason", "未查询到订单");
|
|
|
+ return returnMap;
|
|
|
+ }
|
|
|
if (order.getStatus() != 1) {
|
|
|
returnMap.put("success", "不可退款");
|
|
|
returnMap.put("reason", "当前订单状态不是待消费");
|
|
|
@@ -724,16 +731,18 @@ public class LifeUserOrderService extends ServiceImpl<LifeUserOrderMapper, LifeU
|
|
|
// 根据状态判断怎么更新数据 目前只进行已支付,已取消,已过期判断
|
|
|
// TODO 后续再进行已核销和已退款判断 ()
|
|
|
switch (lifeUserOrderDto.getStatus()){
|
|
|
- case 1:
|
|
|
- lifeUserOrder.setPayTime(date);
|
|
|
- lifeUserOrder.setPayMethod(lifeUserOrderDto.getPayMethod());
|
|
|
- case 3:
|
|
|
case 4:
|
|
|
lifeUserOrder.setStatus(lifeUserOrderDto.getStatus());
|
|
|
+ lifeUserOrder.setCancelTime(date);
|
|
|
+ lifeUserOrder.setFinishTime(date);
|
|
|
orderCouponMiddleUpdateWrapper.set("status",lifeUserOrderDto.getStatus());
|
|
|
+ case 3:
|
|
|
+ lifeUserOrder.setFinishTime(date);
|
|
|
+ case 1:
|
|
|
+ lifeUserOrder.setPayTime(date);
|
|
|
+ lifeUserOrder.setPayMethod(lifeUserOrderDto.getPayMethod());
|
|
|
break;
|
|
|
}
|
|
|
-
|
|
|
return this.saveOrUpdate(lifeUserOrder) && orderCouponMiddleService.update(orderCouponMiddleUpdateWrapper);
|
|
|
}
|
|
|
|
|
|
@@ -749,9 +758,9 @@ public class LifeUserOrderService extends ServiceImpl<LifeUserOrderMapper, LifeU
|
|
|
return false;
|
|
|
}
|
|
|
// 判断订单状态
|
|
|
- // 已核销才可以删除
|
|
|
- if (lifeUserOrder.getStatus() != 2) {
|
|
|
- log.error("deleteUserOrder订单状态错误,订单已核销才可以删除");
|
|
|
+ // 已核销才可以删除和已退款可以核销
|
|
|
+ if (lifeUserOrder.getStatus() == OrderStatusEnum.WAIT_USE.getStatus() || lifeUserOrder.getStatus() == OrderStatusEnum.WAIT_PAY.getStatus()) {
|
|
|
+ log.error("deleteUserOrder订单状态错误,订单完成才可以删除");
|
|
|
return false;
|
|
|
}
|
|
|
// 删除中间关系
|
|
|
@@ -786,13 +795,17 @@ public class LifeUserOrderService extends ServiceImpl<LifeUserOrderMapper, LifeU
|
|
|
// -1状态且storeId不为空时添加条件
|
|
|
if (org.apache.commons.lang3.StringUtils.isNotBlank(storeId)) {
|
|
|
// 注意:原代码中的concat不会修改原字符串,需要重新赋值
|
|
|
- String sql = baseSql + " and ocm1.status != 0";
|
|
|
+ String sql = baseSql + " and ocm1.status not in ("+OrderStatusEnum.WAIT_PAY.getStatus()
|
|
|
+ +","+OrderStatusEnum.EXPIRE.getStatus()
|
|
|
+ +","+OrderStatusEnum.CANCEL.getStatus()
|
|
|
+ +")";
|
|
|
lifeUserOrderQueryWrapper.inSql("luo.id", sql);
|
|
|
}
|
|
|
}
|
|
|
lifeUserOrderQueryWrapper.like(org.apache.commons.lang3.StringUtils.isNotBlank(name),"tc.coupon_name",name);
|
|
|
lifeUserOrderQueryWrapper.gt(org.apache.commons.lang3.StringUtils.isNotBlank(startTime),"luo.created_time",startTime + " 00:00:00");
|
|
|
lifeUserOrderQueryWrapper.lt(org.apache.commons.lang3.StringUtils.isNotBlank(endTime),"luo.created_time",endTime + " 23:59:59");
|
|
|
+ lifeUserOrderQueryWrapper.eq("luo.delete_flag",0);
|
|
|
lifeUserOrderQueryWrapper.orderByDesc("luo.created_time");
|
|
|
lifeUserOrderQueryWrapper.groupBy("luo.coupon_type","luo.id");
|
|
|
IPage<LifeUserOrderVo> lifeUserOrderVoIPage = lifeUserOrderMapper.queryUserOrderList(brandedPage, lifeUserOrderQueryWrapper);
|