售后关闭功能同步
This commit is contained in:
parent
f0a80338da
commit
a53eb3cfde
@ -183,7 +183,6 @@ public class OrderEveryDayTaskExecute implements EveryDayExecute {
|
||||
}
|
||||
//订单关闭售后申请时间 = 当前时间 - 自动关闭售后申请天数
|
||||
DateTime receiveTime = DateUtil.offsetDay(DateUtil.date(), -orderSetting.getCloseAfterSale());
|
||||
|
||||
//关闭售后订单=未售后订单+小于订单关闭售后申请时间
|
||||
OrderItemOperationDTO build = OrderItemOperationDTO.builder().receiveTime(receiveTime).afterSaleStatus(OrderItemAfterSaleStatusEnum.NOT_APPLIED.name()).build();
|
||||
List<OrderItem> orderItems = orderItemService.waitOperationOrderItem(build);
|
||||
@ -199,6 +198,7 @@ public class OrderEveryDayTaskExecute implements EveryDayExecute {
|
||||
.set(OrderItem::getAfterSaleStatus, OrderItemAfterSaleStatusEnum.EXPIRED.name())
|
||||
.in(OrderItem::getId, orderItemIdList);
|
||||
orderItemService.update(lambdaUpdateWrapper);
|
||||
orderItemService.expiredAfterSaleStatusExecuteByAfterSale(receiveTime);
|
||||
//修改订售后状态
|
||||
List<OrderItem> orderItemsList = orderItems.stream()
|
||||
.map((orderItem) -> {
|
||||
|
@ -1,5 +1,6 @@
|
||||
package cn.lili.modules.order.order.mapper;
|
||||
|
||||
import cn.hutool.core.date.DateTime;
|
||||
import cn.lili.modules.order.order.entity.dos.OrderItem;
|
||||
import cn.lili.modules.order.order.entity.vo.OrderSimpleVO;
|
||||
import com.baomidou.mybatisplus.core.conditions.Wrapper;
|
||||
@ -7,6 +8,7 @@ import com.baomidou.mybatisplus.core.mapper.BaseMapper;
|
||||
import com.baomidou.mybatisplus.core.toolkit.Constants;
|
||||
import org.apache.ibatis.annotations.Param;
|
||||
import org.apache.ibatis.annotations.Select;
|
||||
import org.apache.ibatis.annotations.Update;
|
||||
|
||||
import java.util.List;
|
||||
|
||||
@ -26,4 +28,19 @@ public interface OrderItemMapper extends BaseMapper<OrderItem> {
|
||||
*/
|
||||
@Select("SELECT * FROM li_order_item AS oi INNER JOIN li_order AS o ON oi.order_sn=o.sn ${ew.customSqlSegment}")
|
||||
List<OrderItem> waitOperationOrderItem(@Param(Constants.WRAPPER) Wrapper<OrderSimpleVO> queryWrapper);
|
||||
|
||||
/**
|
||||
* 检查售后表,根据售后表中的业务判定是否需要更新售后状态
|
||||
*
|
||||
* @param expiredTime 过期时间
|
||||
*/
|
||||
@Update(" UPDATE li_order_item AS oi " +
|
||||
"INNER JOIN li_order AS o ON oi.order_sn = o.sn " +
|
||||
"INNER JOIN li_after_sale AS af ON af.order_item_sn = oi.sn " +
|
||||
"SET oi.after_sale_status = 'EXPIRED' " +
|
||||
"WHERE " +
|
||||
"oi.after_sale_status in ('ALREADY_APPLIED','PART_AFTER_SALE') " +
|
||||
"AND af.service_status in ('COMPLETE','REFUSE','SELLER_TERMINATION','BUYER_CANCEL') " +
|
||||
"AND o.complete_time < #{expiredTime} ")
|
||||
void expiredAfterSaleStatusExecuteByAfterSale(DateTime expiredTime);
|
||||
}
|
@ -1,5 +1,6 @@
|
||||
package cn.lili.modules.order.order.service;
|
||||
|
||||
import cn.hutool.core.date.DateTime;
|
||||
import cn.lili.modules.order.order.entity.dos.OrderItem;
|
||||
import cn.lili.modules.order.order.entity.dto.OrderItemOperationDTO;
|
||||
import cn.lili.modules.order.order.entity.enums.CommentStatusEnum;
|
||||
@ -75,4 +76,6 @@ public interface OrderItemService extends IService<OrderItem> {
|
||||
OrderItem getByOrderSnAndSkuId(String orderSn, String skuId);
|
||||
|
||||
List<OrderItem> waitOperationOrderItem(OrderItemOperationDTO orderItemOperationDTO);
|
||||
|
||||
void expiredAfterSaleStatusExecuteByAfterSale(DateTime receiveTime);
|
||||
}
|
@ -1,5 +1,6 @@
|
||||
package cn.lili.modules.order.order.serviceimpl;
|
||||
|
||||
import cn.hutool.core.date.DateTime;
|
||||
import cn.hutool.core.text.CharSequenceUtil;
|
||||
import cn.lili.common.enums.ResultCode;
|
||||
import cn.lili.common.exception.ServiceException;
|
||||
@ -104,4 +105,9 @@ public class OrderItemServiceImpl extends ServiceImpl<OrderItemMapper, OrderItem
|
||||
queryWrapper.eq(CharSequenceUtil.isNotEmpty(dto.getComplainStatus()), "oi.complain_status", dto.getComplainStatus());
|
||||
return this.baseMapper.waitOperationOrderItem(queryWrapper);
|
||||
}
|
||||
|
||||
@Override
|
||||
public void expiredAfterSaleStatusExecuteByAfterSale(DateTime receiveTime) {
|
||||
this.baseMapper.expiredAfterSaleStatusExecuteByAfterSale(receiveTime);
|
||||
}
|
||||
}
|
Loading…
x
Reference in New Issue
Block a user