商家主动退货 fix bug, 订单金额 fix bug
This commit is contained in:
parent
f8e923606a
commit
500c0c39e7
@ -198,6 +198,9 @@ public class ShopOrderInfo implements Serializable {
|
||||
@ApiModelProperty(value = "取单号,根据每个店铺每天已支付的订单累加+1")
|
||||
private Long order_pickup_num;
|
||||
|
||||
@ApiModelProperty(value = "拣货完成提交次数")
|
||||
private Integer order_picked_notice_count;
|
||||
|
||||
@ApiModelProperty(value = "拣货完成时间戳")
|
||||
private Long order_picked_time;
|
||||
|
||||
|
||||
@ -74,8 +74,11 @@ public class MchOrderInfoDTO implements Serializable {
|
||||
private BigDecimal order_shipping_fee;
|
||||
@ApiModelProperty(value = "平台费")
|
||||
private BigDecimal platform_fee;
|
||||
@ApiModelProperty(value = "优惠、折扣、活动费用")
|
||||
private BigDecimal order_discount_amount;
|
||||
//总计优惠金额 order_discount_amount + order_voucher_price + order_points_fee + order_adjust_fee
|
||||
@ApiModelProperty(value = "总计优惠金额,优惠、折扣、活动费用")
|
||||
private BigDecimal total_discount_amount;
|
||||
@ApiModelProperty(value = "预计收入金额")
|
||||
private BigDecimal order_income_amount;
|
||||
@ApiModelProperty(value = "两点距离,单位米")
|
||||
private Integer distance;
|
||||
|
||||
|
||||
@ -371,8 +371,10 @@ public class ShopOrderBaseController extends BaseControllerImpl {
|
||||
|
||||
// 4. 店铺权限校验
|
||||
Integer storeId = Convert.toInt(userDto.getStore_id());
|
||||
if (storeId != null && storeId > 0 && !storeId.equals(mchOrderInfoDTO.getOrder_state_id())) {
|
||||
log.warn("用户{}无权限访问订单{}", userDto.getId(), orderId);
|
||||
if (storeId != null && storeId > 0
|
||||
&& mchOrderInfoDTO.getStore_info() != null
|
||||
&& !storeId.equals(mchOrderInfoDTO.getStore_info().getStore_id())) {
|
||||
log.error("用户{}无权限访问订单{}", userDto.getId(), orderId);
|
||||
return CommonResult.failed(ResultCode.FORBIDDEN);
|
||||
}
|
||||
|
||||
|
||||
@ -373,7 +373,17 @@ public class ShopOrderInfoServiceImpl extends BaseServiceImpl<ShopOrderInfoMappe
|
||||
public CommonResult orderPickingCompleted(String storeId, String orderId) {
|
||||
// 参数校验
|
||||
if (StrUtil.isBlank(orderId)) {
|
||||
return CommonResult.failed("orderId 不能为空");
|
||||
return CommonResult.failed("order_id 不能为空");
|
||||
}
|
||||
|
||||
ShopOrderInfo orderInfo = get(orderId);
|
||||
if (orderInfo == null) {
|
||||
return CommonResult.failed("未找到对应的订单");
|
||||
}
|
||||
|
||||
Integer times = orderInfo.getOrder_picked_notice_count() == null ? 0 : orderInfo.getOrder_picked_notice_count();
|
||||
if (times > 3) {
|
||||
return CommonResult.success("已提交,请勿重复提交");
|
||||
}
|
||||
|
||||
// 更新订单拣货时间
|
||||
@ -381,11 +391,12 @@ public class ShopOrderInfoServiceImpl extends BaseServiceImpl<ShopOrderInfoMappe
|
||||
updateWrapper.eq("order_id", orderId);
|
||||
Long order_picek_time = System.currentTimeMillis();
|
||||
updateWrapper.set("order_picked_time", order_picek_time);
|
||||
updateWrapper.set("order_picked_notice_count", times + 1);
|
||||
|
||||
boolean isUpdated = update(updateWrapper);
|
||||
if (!isUpdated) {
|
||||
logger.warn("订单拣货时间更新失败,orderId: {}", orderId);
|
||||
return CommonResult.failed("订单更新失败");
|
||||
logger.error("订单拣货时间更新失败,orderId: {}", orderId);
|
||||
return CommonResult.failed("提交失败");
|
||||
}
|
||||
|
||||
// 获取顺丰订单号并调用 API 通知
|
||||
|
||||
@ -569,7 +569,9 @@
|
||||
<result property="order_product_amount" column="order_product_amount"/>
|
||||
<result property="order_payment_amount" column="order_payment_amount"/>
|
||||
<result property="order_shipping_fee" column="order_shipping_fee"/>
|
||||
<result property="order_discount_amount" column="order_discount_amount"/>
|
||||
<!--总计优惠金额 order_discount_amount + order_voucher_price + order_points_fee + order_adjust_fee-->
|
||||
<result property="total_discount_amount" column="total_discount_amount"/>
|
||||
<result property="order_income_amount" column="order_income_amount"/>
|
||||
<result property="platform_fee" column="platform_fee"/>
|
||||
<result property="order_pickup_num" column="order_pickup_num"/>
|
||||
<result property="order_picked_time" column="order_picked_time"/>
|
||||
@ -622,7 +624,7 @@
|
||||
<result property="h5_url" column="h5_url"/>
|
||||
<result property="feed" column="feed"/>
|
||||
</association>
|
||||
<!-- 订单商品集合映射-->
|
||||
<!-- 订单商品集合映射-->
|
||||
<collection property="order_items" ofType="com.suisung.mall.common.modules.order.dto.MchOrderItemDTO">
|
||||
<result property="product_id" column="product_id"/>
|
||||
<result property="item_id" column="item_id"/>
|
||||
@ -739,21 +741,17 @@
|
||||
</where>
|
||||
</sql>
|
||||
|
||||
<!--应付金额/应支付金额:order_goods_amount - order_discount_amount + order_shipping_fee - order_voucher_price - order_points_fee - order_adjust_fee-->
|
||||
<sql id="mchOrderColumns">
|
||||
SELECT
|
||||
ob.order_id,
|
||||
ob.order_time,
|
||||
<!-- 送达时间戳-->
|
||||
<!-- <if test="delivery!=null and delivery==1 and expireSeconds != null and expireSeconds > 0">-->
|
||||
<!-- oi.order_time + #{expireSeconds}*1000 as arrival_time,-->
|
||||
<!-- </if>-->
|
||||
|
||||
<!--送达时间戳-->
|
||||
CASE
|
||||
WHEN oi.delivery_type_id IS NOT NULL AND oi.delivery_type_id = 16 AND #{expireSeconds} IS NOT NULL AND
|
||||
#{expireSeconds} > 0
|
||||
THEN oi.order_time + #{expireSeconds}*1000
|
||||
ELSE oi.order_time + 604800000 <!-- 7天 = 7*24*60*60*1000 = 604800000毫秒 -->
|
||||
ELSE oi.order_time + 864000000 <!-- 10天 = 10*24*60*60*1000 = 864000000毫秒 -->
|
||||
END as arrival_time,
|
||||
|
||||
ob.order_product_amount,
|
||||
@ -775,7 +773,12 @@
|
||||
AS is_new_buyer,
|
||||
oi.payment_time,
|
||||
od.order_shipping_fee,
|
||||
od.order_discount_amount,
|
||||
<!--总计优惠金额 order_discount_amount + order_voucher_price + order_points_fee + order_adjust_fee-->
|
||||
(od.order_discount_amount + od.voucher_price + od.order_points_fee + od.order_adjust_fee) as
|
||||
total_discount_amount,
|
||||
<!--预计收入:订单原价金额-总计优惠金额-配送费-平台费-->
|
||||
(ob.order_product_amount-od.order_discount_amount-od.voucher_price-od.order_points_fee-od.order_adjust_fee-od.platform_fee-od.order_shipping_fee)
|
||||
as order_income_amount,
|
||||
od.platform_fee,
|
||||
od.order_message,
|
||||
sb.store_id,
|
||||
|
||||
@ -11,7 +11,7 @@
|
||||
order_is_received, chain_id, delivery_type_id, order_is_offline, cart_type_id, order_express_print, activity_id,
|
||||
activity_type_id, salesperson_id, order_is_sync, store_is_selfsupport, store_type, order_erp_id,
|
||||
distributor_user_id, order_is_cb, order_is_cb_sync, src_order_id, order_is_transfer, order_is_transfer_note,
|
||||
order_fx_is_settlemented, order_fx_settlement_time, order_pickup_num
|
||||
order_fx_is_settlemented, order_fx_settlement_time, order_pickup_num,order_picked_notice_count,order_picked_time
|
||||
</sql>
|
||||
|
||||
<!--// refundstatus 退款状态:0-是无退款;1-是部分退款;2-是全部退款
|
||||
|
||||
Loading…
Reference in New Issue
Block a user