rk
7 小时以前 c74a6f59490cfb9a0ee37f70427739b74e7fbd58
server/services/src/main/java/com/doumee/service/business/impl/DriverInfoServiceImpl.java
@@ -159,6 +159,10 @@
     * 发送司机站内信通知
     */
    private void sendDriverNotice(Integer driverId, Constants.DriverOrderNotify notify, Integer orderId, String... params) {
        sendDriverNotice(driverId, notify, orderId, 0, params);
    }
    private void sendDriverNotice(Integer driverId, Constants.DriverOrderNotify notify, Integer objId, Integer objType, String... params) {
        DriverInfo driver = driverInfoMapper.selectById(driverId);
        if (driver == null || driver.getMemberId() == null) {
            return;
@@ -168,8 +172,8 @@
        notice.setUserId(driver.getMemberId());
        notice.setTitle(notify.getTitle());
        notice.setContent(notify.format(params));
        notice.setObjId(orderId);
        notice.setObjType(0); // 0=订单
        notice.setObjId(objId);
        notice.setObjType(objType);
        notice.setStatus(0);  // 0=未读
        notice.setIsdeleted(Constants.ZERO);
        notice.setCreateDate(new Date());
@@ -555,6 +559,10 @@
            newChange.setJpushAlias(official.getJpushAlias());
            driverInfoMapper.insert(newChange);
            saveDriverAttachments(newChange.getId(), request, now);
            // 标记历史的变更版本为删除
        } else {
            // auditStatus=0/2:直接更新变更版本
            applyDriverFieldsFromUpdate(changeVersion.getId(), request, now);
@@ -823,6 +831,11 @@
            // 短信通知
            sendDriverAuditSms(changeVersion, newAuditStatus, auditDTO.getAuditRemark());
            // 首次审批通过:发送奖励解锁站内信
            if (Constants.equalsInteger(newAuditStatus, Constants.THREE)) {
                sendDriverNotice(changeVersion.getId(), Constants.DriverOrderNotify.REWARD_UNLOCKED, null, 2);
            }
        } else {
            // 场景2:正式版本已审批通过(变更审批)
            if (Constants.equalsInteger(newAuditStatus, Constants.THREE)) {
@@ -1797,7 +1810,7 @@
        // 4. 更新订单状态为派送中(4)
        ordersMapper.update(new UpdateWrapper<Orders>().lambda()
                .set(Orders::getStatus, Constants.OrderStatus.delivering.getStatus())
                .set(Orders::getTakeTime, now)
                .set(Orders::getDriverTakeTime, now)
                .set(Orders::getUpdateTime, now)
                .eq(Orders::getId, orderId));