rk
7 小时以前 7eebfc8a64d2cbbd73453a2b653d5a5bfd66a32f
server/services/src/main/java/com/doumee/service/business/OrdersService.java
@@ -7,6 +7,7 @@
import com.doumee.dao.dto.CalculateRemotePriceDTO;
import com.doumee.dao.dto.CreateOrderDTO;
import com.doumee.dao.dto.DispatchDTO;
import com.doumee.dao.dto.CommentOrderDTO;
import com.doumee.dao.dto.MyOrderDTO;
import com.doumee.dao.vo.MyOrderDetailVO;
import com.doumee.dao.vo.MyOrderVO;
@@ -189,6 +190,7 @@
    /**
     * 计算保价费用
     *
     * @param declaredValue 报价金额
     * @return 保价费用
     */
@@ -196,6 +198,7 @@
    /**
     * 计算就地存取预估费用
     *
     * @param dto 就地存取计价请求参数
     * @return 价格计算结果
     */
@@ -203,6 +206,7 @@
    /**
     * 计算异地存取预估费用
     *
     * @param dto 异地存取计价请求参数
     * @return 价格计算结果
     */
@@ -210,6 +214,7 @@
    /**
     * 创建订单并唤起微信支付
     *
     * @param dto 创建订单请求参数
     * @param memberId 当前登录会员ID
     * @return 支付响应
@@ -218,6 +223,7 @@
    /**
     * 继续支付(待支付订单重新唤起微信支付)
     *
     * @param orderId 订单主键
     * @param memberId 当前登录会员ID
     * @return 支付响应
@@ -226,6 +232,7 @@
    /**
     * 小程序端-查询我的订单分页
     *
     * @param pageWrap 分页查询参数(model含status)
     * @param memberId 会员主键
     * @return 分页结果
@@ -234,6 +241,7 @@
    /**
     * 查询订单超时费用
     *
     * @param orderId 订单主键
     * @return 超时费用计算结果
     */
@@ -260,4 +268,91 @@
     */
    void confirmCustomerArrived(Integer orderId, Integer shopId);
    /**
     * 逾期费用支付(唤起微信支付)
     *
     * @param orderId  寄存订单主键
     * @param memberId 当前登录会员ID
     * @return 支付响应
     */
    PayResponse payOverdueFee(Integer orderId, Integer memberId);
    /**
     * 逾期费用支付回调处理
     *
     * @param outTradeNo 商户订单号
     * @param wxTradeNo  微信订单号
     */
    void handleOverdueFeePayNotify(String outTradeNo, String wxTradeNo);
    /**
     * 取件门店确认出库
     * 就地寄存/异地寄存,存在取件门店,status=5,overdueStatus=0/2,confirmArriveTime不为空
     * 出库后订单完成
     *
     * @param orderId 订单主键
     * @param shopId  当前操作门店主键
     * @param images  出库图片(最多3张)
     * @param remark  出库备注
     */
    void confirmStoreOut(Integer orderId, Integer shopId, List<String> images, String remark);
    /**
     * 计算并更新订单三方收益(存件门店/取件门店/司机)
     * 就地寄存:仅存件门店收益
     * 异地寄存:存件门店 + 司机收益;有取件门店时加上取件门店收益
     *
     * @param orderId 订单主键
     */
    void calculateAndSaveOrderFees(Integer orderId);
    /**
     * 会员删除订单(逻辑删除,仅已完成/已取消/已退款订单可删除)
     *
     * @param orderId  订单主键
     * @param memberId 会员主键
     */
    void deleteMyOrder(Integer orderId, Integer memberId);
    /**
     * 门店支付押金(唤起微信支付)
     *
     * @param shopId 门店主键
     * @return 支付响应
     */
    PayResponse payShopDeposit(Integer shopId);
    /**
     * 门店押金支付回调处理
     *
     * @param outTradeNo 商户订单号
     * @param wxTradeNo  微信订单号
     */
    void handleShopDepositPayNotify(String outTradeNo, String wxTradeNo);
    /**
     * 订单结算:根据 SETTLEMENT_DATE 配置,将已完成的待结算订单进行结算
     * 更新订单结算状态、Revenue 入账状态、门店/司机余额
     */
    void settleOrders();
    /**
     * 订单评价
     * status=7且commentStatus=0时可评价,按对象(存件门店/取件门店/司机)分别记录评分
     *
     * @param dto      评价请求
     * @param memberId 当前登录会员ID
     */
    void commentOrder(CommentOrderDTO dto, Integer memberId);
    /**
     * 门店端订单分页列表
     * 查询存件门店或取件门店等于当前登录门店的订单
     *
     * @param pageWrap 分页查询参数(model含status/combinedStatus)
     * @param shopId   当前登录门店主键
     * @return 分页结果
     */
    PageData<MyOrderVO> findShopOrderPage(PageWrap<MyOrderDTO> pageWrap, Integer shopId);
}