fix 字段起名错误,商家订单根据从order_id desc 改成 下单时间倒序排

This commit is contained in:
Jack 2025-10-24 15:57:01 +08:00
parent fa9034f7b3
commit 3ed0363ef1
6 changed files with 59 additions and 114 deletions

View File

@ -95,4 +95,16 @@ public class MchOrderInfoDTO implements Serializable {
private Integer is_deny_return;
@ApiModelProperty(value = "异常订单操作流程,0-可操作自行发货1-可操作订单完成2-订单完成不可操作")
private String operate_flag;
@ApiModelProperty(value = "订单配送预约状态1-立即配送2-预约配送")
private Integer booking_state;
@ApiModelProperty(value = "预约送达起始时间格式如yyyy-MM-dd HH:mm:ss")
private Date booking_begin_time;
@ApiModelProperty(value = "预约送达截止时间格式如yyyy-MM-dd HH:mm:ss")
private Date booking_end_time;
@ApiModelProperty(value = "预订单到达时间戳(秒)")
private Long booking_at;
}

View File

@ -342,6 +342,7 @@ public class ShopOrderBaseController extends BaseControllerImpl {
params.getInt("delivery"),
status,
params.getInt("logistics_status"),
params.getInt("booking_state"),
mchOrderExpireSeconds,
params.getLong("begin_time"),
params.getLong("end_time"),

View File

@ -71,13 +71,14 @@ public interface ShopOrderBaseMapper extends BaseMapper<ShopOrderBase> {
* @param delivery 配送方式1-同城配送2-物流配送
* @param status 同城配送订单状态delivery=1时才生效无值 or 0-全部订单1-进行中订单2-异常超时订单3-退款订单9-已完成订单
* @param logisticsStatus 普通快递订单状态delivery=2时才生效无值 or 0-全部订单1-待支付订单2-待发货订单3-待接收订单9-已完成订单
* @param bookingState 订单配送预约状态1-立即配送2-预约配送
* @param expireSeconds 配送超时的秒数单位秒
* @param beginTime 开始时间戳13位毫秒级别
* @param endTime 截止时间戳13位毫秒级别
* @param page 分页参数
* @return
*/
IPage<MchOrderInfoDTO> selectMchOrderPageList(@Param("storeId") Integer storeId, @Param("keyword") String keyword, @Param("delivery") Integer delivery, @Param("status") Integer status, @Param("logisticsStatus") Integer logisticsStatus, @Param("expireSeconds") Long expireSeconds, @Param("beginTime") Long beginTime, @Param("endTime") Long endTime, IPage<MchOrderInfoDTO> page);
IPage<MchOrderInfoDTO> selectMchOrderPageList(@Param("storeId") Integer storeId, @Param("keyword") String keyword, @Param("delivery") Integer delivery, @Param("status") Integer status, @Param("logisticsStatus") Integer logisticsStatus, @Param("bookingState") Integer bookingState, @Param("expireSeconds") Long expireSeconds, @Param("beginTime") Long beginTime, @Param("endTime") Long endTime, IPage<MchOrderInfoDTO> page);
/**
@ -97,12 +98,13 @@ public interface ShopOrderBaseMapper extends BaseMapper<ShopOrderBase> {
* @param delivery 配送方式1-同城配送2-物流配送
* @param status 同城配送订单状态delivery=1时才生效无值 or 0-全部订单1-进行中订单2-异常超时订单3-退款订单9-已完成订单
* @param logisticsStatus 普通快递订单状态delivery=2时才生效无值 or 0-全部订单1-待支付订单2-待发货订单3-待接收订单9-已完成订单
* @param bookingState 订单配送预约状态1-立即配送2-预约配送
* @param expireSeconds 配送超时的秒数单位秒
* @param beginTime 开始时间戳13位毫秒级别
* @param endTime 截止时间戳13位毫秒级别
* @return
*/
Long countMchOrderByCondition(@Param("storeId") Integer storeId, @Param("keyword") String keyword, @Param("delivery") Integer delivery, @Param("status") Integer status, @Param("logisticsStatus") Integer logisticsStatus, @Param("expireSeconds") Long expireSeconds, @Param("beginTime") Long beginTime, @Param("endTime") Long endTime);
Long countMchOrderByCondition(@Param("storeId") Integer storeId, @Param("keyword") String keyword, @Param("delivery") Integer delivery, @Param("status") Integer status, @Param("logisticsStatus") Integer logisticsStatus, @Param("bookingState") Integer bookingState, @Param("expireSeconds") Long expireSeconds, @Param("beginTime") Long beginTime, @Param("endTime") Long endTime);
/**

View File

@ -544,6 +544,7 @@ public interface ShopOrderBaseService extends IBaseService<ShopOrderBase> {
* @param delivery 配送方式1-同城配送2-物流配送
* @param status 同城配送订单状态delivery=1时才生效无值 or 0-全部订单1-进行中订单2-异常超时订单3-退款订单9-已完成订单
* @param logisticsStatus 普通快递订单状态delivery=2时才生效无值 or 0-全部订单1-待支付订单2-待发货订单3-待接收订单9-已完成订单
* @param bookingState 订单配送预约状态1-立即配送2-预约配送
* @param expireSeconds 配送超时的秒数单位秒
* @param beginTime 开始时间戳13位毫秒级别
* @param endTime 截止时间戳13位毫秒级别
@ -551,7 +552,7 @@ public interface ShopOrderBaseService extends IBaseService<ShopOrderBase> {
* @param pageSize 页大小
* @return
*/
IPage<MchOrderInfoDTO> selectMchOrderPageList(Integer storeId, String keyword, Integer delivery, Integer status, Integer logisticsStatus, Long expireSeconds, Long beginTime, Long endTime, Integer pageNum, Integer pageSize);
IPage<MchOrderInfoDTO> selectMchOrderPageList(Integer storeId, String keyword, Integer delivery, Integer status, Integer logisticsStatus, Integer bookingState, Long expireSeconds, Long beginTime, Long endTime, Integer pageNum, Integer pageSize);
/**
* 商家版根据条件查询订单条数
@ -561,12 +562,13 @@ public interface ShopOrderBaseService extends IBaseService<ShopOrderBase> {
* @param delivery 配送方式1-同城配送2-物流配送
* @param status 同城配送订单状态delivery=1时才生效无值 or 0-全部订单1-进行中订单2-异常超时订单3-退款订单9-已完成订单
* @param logisticsStatus 普通快递订单状态delivery=2时才生效无值 or 0-全部订单1-待支付订单2-待发货订单3-待接收订单9-已完成订单
* @param bookingState 订单配送预约状态1-立即配送2-预约配送
* @param expireSeconds 配送超时的秒数单位秒
* @param beginTime 开始时间戳13位毫秒级别
* @param endTime 截止时间戳13位毫秒级别
* @return
*/
Long countMchOrderByCondition(Integer storeId, String keyword, Integer delivery, Integer status, Integer logisticsStatus, Long expireSeconds, Long beginTime, Long endTime);
Long countMchOrderByCondition(Integer storeId, String keyword, Integer delivery, Integer status, Integer logisticsStatus, Integer bookingState, Long expireSeconds, Long beginTime, Long endTime);
/**
* 获取商家订单详情

View File

@ -573,10 +573,16 @@ public class ShopOrderBaseServiceImpl extends BaseServiceImpl<ShopOrderBaseMappe
Integer order_state_id = ordeListVo.getState_type();
Integer kind_id = ordeListVo.getKind_id();
Integer card_kind_id = ordeListVo.getCard_kind_id();
Integer booking_state = getParameter("booking_state", 0);
Map params = new HashMap();
params.put("order_time:desc", "");
/*订单配送预约状态:无值 or 0-立即和预约订单1-立即配送2-预约配送*/
if (CheckUtil.isNotEmpty(booking_state)) {
params.put("booking_state:eq", booking_state);
}
if (CheckUtil.isNotEmpty(order_state_id)) {
params.put("order_state_id:eq", order_state_id);
}
@ -8945,6 +8951,7 @@ public class ShopOrderBaseServiceImpl extends BaseServiceImpl<ShopOrderBaseMappe
* @param delivery 配送方式1-同城配送2-物流配送
* @param status 同城配送订单状态delivery=1时才生效无值 or 0-全部订单1-进行中订单2-异常超时订单3-退款订单9-已完成订单
* @param logisticsStatus 普通快递订单状态delivery=2时才生效无值 or 0-全部订单1-待支付订单2-待发货订单3-待接收订单9-已完成订单
* @param bookingState 订单配送预约状态1-立即配送2-预约配送
* @param expireSeconds 配送超时的秒数单位秒
* @param beginTime 开始时间戳13位毫秒级别
* @param endTime 截止时间戳13位毫秒级别
@ -8953,14 +8960,14 @@ public class ShopOrderBaseServiceImpl extends BaseServiceImpl<ShopOrderBaseMappe
* @return
*/
@Override
public IPage<MchOrderInfoDTO> selectMchOrderPageList(Integer storeId, String keyword, Integer delivery, Integer status, Integer logisticsStatus, Long expireSeconds, Long beginTime, Long endTime, Integer pageNum, Integer pageSize) {
public IPage<MchOrderInfoDTO> selectMchOrderPageList(Integer storeId, String keyword, Integer delivery, Integer status, Integer logisticsStatus, Integer bookingState, Long expireSeconds, Long beginTime, Long endTime, Integer pageNum, Integer pageSize) {
try {
// 初始化分页对象
Page<MchOrderInfoDTO> page = new Page<>(pageNum, pageSize);
// 查询订单基础数据
IPage<MchOrderInfoDTO> pageList = shopOrderBaseMapper.selectMchOrderPageList(
storeId, keyword, delivery, status, logisticsStatus, expireSeconds, beginTime, endTime, page);
storeId, keyword, delivery, status, logisticsStatus, bookingState, expireSeconds, beginTime, endTime, page);
if (CollUtil.isEmpty(pageList.getRecords())) {
return pageList;
@ -9036,14 +9043,15 @@ public class ShopOrderBaseServiceImpl extends BaseServiceImpl<ShopOrderBaseMappe
* @param delivery 配送方式1-同城配送2-物流配送
* @param status 同城配送订单状态delivery=1时才生效无值 or 0-全部订单1-进行中订单2-异常超时订单3-退款订单9-已完成订单
* @param logisticsStatus 普通快递订单状态delivery=2时才生效无值 or 0-全部订单1-待支付订单2-待发货订单3-待接收订单9-已完成订单
* @param bookingState 订单配送预约状态1-立即配送2-预约配送
* @param expireSeconds 配送超时的秒数单位秒
* @param beginTime 开始时间戳13位毫秒级别
* @param endTime 截止时间戳13位毫秒级别
* @return
*/
@Override
public Long countMchOrderByCondition(Integer storeId, String keyword, Integer delivery, Integer status, Integer logisticsStatus, Long expireSeconds, Long beginTime, Long endTime) {
return shopOrderBaseMapper.countMchOrderByCondition(storeId, keyword, delivery, status, logisticsStatus, expireSeconds, beginTime, endTime);
public Long countMchOrderByCondition(Integer storeId, String keyword, Integer delivery, Integer status, Integer logisticsStatus, Integer bookingState, Long expireSeconds, Long beginTime, Long endTime) {
return shopOrderBaseMapper.countMchOrderByCondition(storeId, keyword, delivery, status, logisticsStatus, bookingState, expireSeconds, beginTime, endTime);
}
/**
@ -9174,121 +9182,30 @@ public class ShopOrderBaseServiceImpl extends BaseServiceImpl<ShopOrderBaseMappe
// 2080-ORDER_STATE_SELF_PICKUP自提
// 全部订单总数量
jsonObject.put("all_order_count", countMchOrderByCondition(storeId, "", 0, 0, 0, 0L, beginTime, endTime));
jsonObject.put("all_order_count", countMchOrderByCondition(storeId, "", 0, 0, 0, 0, 0L, beginTime, endTime));
// 同城配送订单总数量
jsonObject.put("same_city_order_count", countMchOrderByCondition(storeId, "", 1, 0, 0, expireSeconds, beginTime, endTime));
jsonObject.put("same_city_order_count", countMchOrderByCondition(storeId, "", 1, 0, 0, 0, expireSeconds, beginTime, endTime));
// 同城配送进行中订单数量
jsonObject.putByPath("same_city_order.progress_count", countMchOrderByCondition(storeId, "", 1, 1, 0, expireSeconds, beginTime, endTime));
jsonObject.putByPath("same_city_order.progress_count", countMchOrderByCondition(storeId, "", 1, 1, 0, 0, expireSeconds, beginTime, endTime));
// 同城配送超时订单数量
jsonObject.putByPath("same_city_order.overtime_count", countMchOrderByCondition(storeId, "", 1, 2, 0, expireSeconds, beginTime, endTime));
jsonObject.putByPath("same_city_order.overtime_count", countMchOrderByCondition(storeId, "", 1, 2, 0, 0, expireSeconds, beginTime, endTime));
// 同城配送退款订单数量
jsonObject.putByPath("same_city_order.refund_count", countMchOrderByCondition(storeId, "", 1, 3, 0, 0L, beginTime, endTime));
jsonObject.putByPath("same_city_order.refund_count", countMchOrderByCondition(storeId, "", 1, 3, 0, 0, 0L, beginTime, endTime));
// 同城配送退款订单数量
jsonObject.putByPath("same_city_order.finish_count", countMchOrderByCondition(storeId, "", 1, 9, 0, 0L, beginTime, endTime));
jsonObject.putByPath("same_city_order.finish_count", countMchOrderByCondition(storeId, "", 1, 9, 0, 0, 0L, beginTime, endTime));
// 普通物流订单总数量
jsonObject.put("logistics_order_count", countMchOrderByCondition(storeId, "", 2, 0, 0, 0L, beginTime, endTime));
jsonObject.put("logistics_order_count", countMchOrderByCondition(storeId, "", 2, 0, 0, 0, 0L, beginTime, endTime));
// 普通物流待支付订单数量
jsonObject.putByPath("logistics_order.wait_pay_count", countMchOrderByCondition(storeId, "", 2, 0, 1, 0L, beginTime, endTime));
jsonObject.putByPath("logistics_order.wait_pay_count", countMchOrderByCondition(storeId, "", 2, 0, 1, 0, 0L, beginTime, endTime));
// 普通物流待发货订单数量
jsonObject.putByPath("logistics_order.wait_shipping_count", countMchOrderByCondition(storeId, "", 2, 0, 2, 0L, beginTime, endTime));
jsonObject.putByPath("logistics_order.wait_shipping_count", countMchOrderByCondition(storeId, "", 2, 0, 2, 0, 0L, beginTime, endTime));
// 普通物流待收货订单数量
jsonObject.putByPath("logistics_order.receiving_count", countMchOrderByCondition(storeId, "", 2, 0, 3, 0L, beginTime, endTime));
jsonObject.putByPath("logistics_order.receiving_count", countMchOrderByCondition(storeId, "", 2, 0, 3, 0, 0L, beginTime, endTime));
// 普通物流已完成订单数量
jsonObject.putByPath("logistics_order.finished_count", countMchOrderByCondition(storeId, "", 2, 0, 9, 0L, beginTime, endTime));
// 全部订单总数量
// jsonObject.put("all_order_count", shopOrderInfoService.getOrderCountByStoreId(storeId, null, null, null, null));
//
// // 同城配送订单总数量
// jsonObject.put("same_city_order_count", shopOrderInfoService.getOrderCountByStoreId(storeId, null, null,
// Collections.singletonList(StateCode.DELIVERY_TYPE_SAME_CITY),
// null
// ));
//
// // 同城配送进行中订单数量
// jsonObject.putByPath("same_city_order.progress_count", shopOrderInfoService.getOrderCountByStoreId(storeId,
// Arrays.asList(StateCode.ORDER_STATE_WAIT_REVIEW, StateCode.ORDER_STATE_WAIT_FINANCE_REVIEW,
// StateCode.ORDER_STATE_WAIT_PAID, StateCode.ORDER_STATE_PICKING,
// StateCode.ORDER_STATE_WAIT_SHIPPING, StateCode.ORDER_STATE_SHIPPED),
// Collections.singletonList(0),
// Collections.singletonList(StateCode.DELIVERY_TYPE_SAME_CITY),
// null
// ));
//
// // 同城配送超时订单数量
// jsonObject.putByPath("same_city_order.overtime_count", shopOrderInfoService.getOrderCountByStoreId(storeId,
// Arrays.asList(StateCode.ORDER_STATE_WAIT_REVIEW,
// StateCode.ORDER_STATE_WAIT_FINANCE_REVIEW,
// StateCode.ORDER_STATE_WAIT_PAID,
// StateCode.ORDER_STATE_PICKING,
// StateCode.ORDER_STATE_WAIT_SHIPPING,
// StateCode.ORDER_STATE_SHIPPED),
//
// Collections.singletonList(0),
// Collections.singletonList(StateCode.DELIVERY_TYPE_SAME_CITY),
// 120L
// ));
//
// // 同城配送退款订单数量
// jsonObject.putByPath("same_city_order.refund_count", shopOrderInfoService.getOrderCountByStoreId(storeId,
// null,
// Arrays.asList(1, 2),
// Collections.singletonList(StateCode.DELIVERY_TYPE_SAME_CITY),
// null
// ));
//
//
// // 普通物流订单总数量
// jsonObject.put("logistics_order_count", shopOrderInfoService.getOrderCountByStoreId(storeId, null, null,
// Arrays.asList(StateCode.DELIVERY_TYPE_EXPRESS, StateCode.DELIVERY_TYPE_EXP),
// null
// ));
//
// // 普通物流待支付订单数量
// jsonObject.putByPath("logistics_order.wait_pay_count", shopOrderInfoService.getOrderCountByStoreId(storeId,
// Collections.singletonList(StateCode.ORDER_STATE_WAIT_PAY),
//
// Collections.singletonList(0),
//
// Arrays.asList(StateCode.DELIVERY_TYPE_EXPRESS, StateCode.DELIVERY_TYPE_EXP),
// null
// ));
//
// // 普通物流待发货订单数量
// jsonObject.putByPath("logistics_order.wait_shipping_count", shopOrderInfoService.getOrderCountByStoreId(storeId,
// Arrays.asList(StateCode.ORDER_STATE_WAIT_REVIEW,
// StateCode.ORDER_STATE_WAIT_FINANCE_REVIEW,
// StateCode.ORDER_STATE_WAIT_PAID,
// StateCode.ORDER_STATE_PICKING,
// StateCode.ORDER_STATE_WAIT_SHIPPING),
//
// Collections.singletonList(0),
//
// Arrays.asList(StateCode.DELIVERY_TYPE_EXPRESS, StateCode.DELIVERY_TYPE_EXP),
// null
// ));
//
// // 普通物流待收货订单数量
// jsonObject.putByPath("logistics_order.receiving_count", shopOrderInfoService.getOrderCountByStoreId(storeId,
// Collections.singletonList(StateCode.ORDER_STATE_SHIPPED),
//
// Collections.singletonList(0),
//
// Arrays.asList(StateCode.DELIVERY_TYPE_EXPRESS, StateCode.DELIVERY_TYPE_EXP),
// null
// ));
//
// // 普通物流已完成订单数量
// jsonObject.putByPath("logistics_order.finished_count", shopOrderInfoService.getOrderCountByStoreId(storeId,
// Arrays.asList(StateCode.ORDER_STATE_RECEIVED, StateCode.ORDER_STATE_FINISH),
//
// Collections.singletonList(0),
// Arrays.asList(StateCode.DELIVERY_TYPE_EXPRESS, StateCode.DELIVERY_TYPE_EXP),
// null
// ));
jsonObject.putByPath("logistics_order.finished_count", countMchOrderByCondition(storeId, "", 2, 0, 9, 0, 0L, beginTime, endTime));
// todo 预订单数量相关数

View File

@ -592,6 +592,11 @@
<result property="kind_id" column="kind_id"/>
<result property="delivery_type_id" column="delivery_type_id"/>
<result property="distance" column="distance"/>
<!--预约订单相关字段-->
<result property="booking_state" column="booking_state"/>
<result property="booking_begin_time" column="booking_begin_time"/>
<result property="booking_end_time" column="booking_end_time"/>
<result property="booking_at" column="booking_at"/>
<!-- 店铺嵌套对象映射 -->
<association property="store_info" javaType="com.suisung.mall.common.modules.order.dto.MchOrderStoreDTO">
@ -752,6 +757,11 @@
<if test="endTime != null and endTime > 0">
AND oi.order_time <![CDATA[<=]]> #{end_time}
</if>
<!--订单配送预约状态1-立即配送2-预约配送-->
<if test="bookingState != null and bookingState > 0">
AND oi.booking_state = #{bookingState}
</if>
</where>
</sql>
@ -788,6 +798,10 @@
2013, 2014, 2020, 2030, 2040))>1,2,1)
AS is_new_buyer,
oi.payment_time,
oi.booking_state,
oi.booking_begin_time,
oi.booking_end_time,
oi.booking_at,
od.order_shipping_fee,
IFNULL(od.order_shipping_fee_inner, 0) as order_shipping_fee_inner,
IFNULL(od.lkl_fee, 0) as lkl_fee,
@ -843,7 +857,6 @@
osf.feed
</sql>
<select id="selectMchOrderPageList" resultMap="MchOrderResult">
<include refid="mchOrderColumns"/>
@ -859,7 +872,7 @@
<include refid="mchOrderWhereCondition"/>
ORDER BY ob.order_id DESC
ORDER BY ob.order_time DESC
</select>
<select id="countMchOrderByCondition" resultType="java.lang.Long">
@ -869,13 +882,11 @@
JOIN shop_order_data od ON ob.order_id = od.order_id
JOIN shop_store_base sb ON ob.store_id = sb.store_id
JOIN shop_order_delivery_address oda ON ob.order_id = oda.order_id
<include refid="mchOrderWhereCondition"/>
</select>
<select id="getMchOrderDetail" resultMap="MchOrderResult">
<include refid="mchOrderColumns"/>
from shop_order_base ob
join shop_order_info oi on ob.order_id=oi.order_id
join shop_order_data od on ob.order_id=od.order_id