rk
2 天以前 3f5455c50697cb09477cc7c0cc571e911b12e25f
server/services/src/main/java/com/doumee/core/constants/Constants.java
@@ -18,11 +18,8 @@
 */
public class Constants {
    public static final String HWY_OBS ="HWY_OBS" ;
    public static final String HWY_OBS_ACCESSID ="HWY_OBS_ACCESSID" ;
    public static final String HWY_OBS_ACCESSKEY ="HWY_OBS_ACCESSKEY" ;
    public static final String HWY_OBS_ENDPOINT ="HWY_OBS_ENDPOINT" ;
    public static final String HWY_OBS_BUCKET ="HWY_OBS_BUCKET" ;
    public static final String OSS ="OSS" ;
    public static final String RESOURCE_PATH ="RESOURCE_PATH" ;
    public static final String QYWX_CORPID = "QYWX_CORPID";
    public static final String QYWX_SECRET = "QYWX_SECRET";
@@ -53,6 +50,11 @@
    public static final String USER_AGREEMENT ="USER_AGREEMENT" ;
    public static final String PRIVACY_AGREEMENT ="PRIVACY_AGREEMENT" ;
    public static final String ACCESS_ID="ACCESS_ID";
    public static final String BUCKETNAME = "BUCKETNAME";
    public static final String ACCESS_KEY = "ACCESS_KEY";
    public static final String ENDPOINT = "ENDPOINT";
    public static final String QYWX = "QYWX";
    public static final  Integer ONE = 1;
@@ -99,6 +101,7 @@
    public static final int ORDER_LOG_ASSIGN_DRIVER = 3;    // 指派司机
    public static final int ORDER_LOG_CANCEL = 4;           // 取消订单
    public static final int ORDER_LOG_CONFIRM_ARRIVE = 5;   // 确认顾客到店
    public static final int ORDER_LOG_DRIVER_PICKUP = 6;    // 司机完成取件
    public static final String SUCCESS = "SUCCESS";
    public static final String FAIL = "FAIL";
@@ -274,97 +277,6 @@
    public enum WorkOrderStatus{
        waitConfirm( 0, "待分配WTS","{title}上报","","待分配WTS" ),
        waitAllocation(1, "待分配任务","待分配任务","","待分配任务"),
        waitDeal(2, "待处理","待处理","","待工程师处理"),
        sheClose(3, "已解决","SHE已关闭","","SHE已关闭"),
        wtsClose(4, "已解决","WTS已关闭","","WTS已关闭"),
        close(5, "已解决","已解决","","工程师关闭"),
        urge (6, "催促","","","")
        ;
        private int status;
        private String statusInfo;
        private String statusName;
        private String logTitle;
        private String noticeContent;
        // 构造方法
        WorkOrderStatus(int status, String statusInfo,String logTitle,String noticeContent,String statusName ) {
            this.status = status;
            this.statusInfo = statusInfo;
            this.logTitle = logTitle;
            this.noticeContent = noticeContent;
            this.statusName = statusName;
        }
        public static String getName(int index) {
            for (WorkOrderStatus c : WorkOrderStatus.values()) {
                if (c.getKey() == index) {
                    return c.statusInfo;
                }
            }
            return null;
        }
        public static String getStatusName(int index) {
            for (WorkOrderStatus c : WorkOrderStatus.values()) {
                if (c.getKey() == index) {
                    return c.statusName;
                }
            }
            return null;
        }
        public int getKey() {
            return status;
        }
        public void setKey(int key) {
            this.status = status;
        }
        public int getStatus() {
            return status;
        }
        public void setStatus(int status) {
            this.status = status;
        }
        public String getStatusName() {
            return statusName;
        }
        public void setStatusName(String statusName) {
            this.statusName = statusName;
        }
        public String getStatusInfo() {
            return statusInfo;
        }
        public void setStatusInfo(String statusInfo) {
            this.statusInfo = statusInfo;
        }
        public String getLogTitle() {
            return logTitle;
        }
        public void setLogTitle(String logTitle) {
            this.logTitle = logTitle;
        }
        public String getNoticeContent() {
            return noticeContent;
        }
        public void setNoticeContent(String noticeContent) {
            this.noticeContent = noticeContent;
        }
    }
    /**
     * 附件类型(对应 multifile.objType)
     */
@@ -413,7 +325,7 @@
        STORAGE_ORDER("storageOrder", "寄存订单"),
        SHOP_DEPOSIT("shopDeposit", "店铺押金订单"),
        DRIVER_DEPOSIT("driverDeposit", "司机押金订单"),
        OVERDUE_FEE("overdueFee", "逾期费用订单")
        OVERDUE_FEE("overdueFee", "订单逾期费用")
        ;
        private final String key;
@@ -475,8 +387,8 @@
    public enum OrderCombinedStatus {
        waitPay(0, "待支付", new int[]{OrderStatus.waitPay.status}),
        waitDeposit(1, "待核验", new int[]{OrderStatus.waitDeposit.status}),
        waitDeliver(2, "待配送", new int[]{OrderStatus.deposited.status}),
        waitReceive(3, "待收货", new int[]{OrderStatus.accepted.status, OrderStatus.delivering.status, OrderStatus.arrived.status}),
        waitDeliver(2, "待配送", new int[]{OrderStatus.accepted.status}),
        waitReceive(3, "待收货", new int[]{ OrderStatus.delivering.status, OrderStatus.arrived.status}),
        finished(4, "已完成", new int[]{OrderStatus.finished.status}),
        refund(5, "退款", new int[]{OrderStatus.closed.status, OrderStatus.cancelling.status})
        ;
@@ -495,6 +407,82 @@
    }
    /**
     * 订单站内信通知枚举
     * title: 通知标题
     * content: 通知文案模板,占位符用 {xxx} 表示
     */
    @Getter
    @AllArgsConstructor
    public enum MemberOrderNotify {
        WAIT_PAY("waitPay", "订单待支付", "您的行李订单:{orderNo}已创建,请在{timeout}分钟内完成支付,超时将自动取消"),
        WAIT_VERIFY("waitVerify", "订单待核验", "您的行李订单:{orderNo}已提交,等待门店核验物品信息,存件码{storeCode}"),
        WAIT_GRAB("waitGrab", "订单待抢单", "您的行李订单:{orderNo}已核验,正在为您安排取件司机"),
        WAIT_PICKUP_REMIND("waitPickupRemind", "订单待取件", "订单{orderNo}行李已寄存,请记得在预约取件时间凭取件码前往指定门店取回"),
        WAIT_PICKUP_GRABBED("waitPickupGrabbed", "订单已抢单", "您的行李订单:已有司机{driverName}抢单,正前往取件地点"),
        DELIVERING("delivering", "订单配送中", "您的行李订单:{orderNo}已由司机{driverName}取件,正运往目的地"),
        ARRIVED_NO_SHOP("arrivedNoShop", "订单已送达", "您的行李订单:{orderNo}已送达{destination},请及时确认收货"),
        ARRIVED_HAS_SHOP("arrivedHasShop", "订单已送达", "您的行李订单:{orderNo}已送达{destination},请及时取件,取件码{pickupCode}"),
        FINISHED("finished", "订单已完成", "您的行李订单:{orderNo}已完成,感谢您的支持,请对本次服务做出评价"),
        EVALUATED("evaluated", "订单已评价", "您的行李订单:{orderNo}评价已提交,感谢您的用心评价,祝您出行顺利,旅途愉快!"),
        CANCELLED("cancelled", "订单已取消", "您的行李订单:{orderNo}已取消,感谢您的支持,欢迎下次再会!"),
        DRIVER_CHANGED("driverChanged", "司机变更提醒", "您的行李订单:{orderNo}原司机已取消,系统正在为您匹配新司机,请留意通知。"),
        REFUNDING("refunding", "订单退款中", "您的行李订单:{orderNo}退款申请已提交,平台会将尽快为您处理退款"),
        REFUNDED("refunded", "订单已退款", "您的行李订单:{orderNo}退款已完成,金额{amount}元将原路退回,请注意查收")
        ;
        private final String key;
        private final String title;
        private final String content;
        /**
         * 格式化通知内容
         * @param params 键值对,如 "orderNo","123" 交替传入
         */
        public String format(String... params) {
            String result = this.content;
            for (int i = 0; i < params.length - 1; i += 2) {
                result = result.replace("{" + params[i] + "}", params[i + 1]);
            }
            return result;
        }
    }
    /**
     * 门店订单站内信通知枚举
     * title: 通知标题
     * content: 通知文案模板,占位符用 {xxx} 表示
     */
    @Getter
    @AllArgsConstructor
    public enum ShopOrderNotify {
        WAIT_VERIFY("waitVerify", "订单待核验", "新行李订单:{orderNo}已支付,请尽快核验用户物品信息"),
        WAIT_PICKUP("waitPickup", "订单待取件", "行李订单:{orderNo}已抢单,等待{name}取件"),
        REFUNDING("refunding", "订单退款中", "行李订单:{orderNo}用户提交退款申请,请知悉"),
        DELIVERING("delivering", "订单配送中", "行李订单:{orderNo}已由司机{driverName}取件,正在配送中"),
        ARRIVED("arrived", "已送达", "行李订单:{orderNo}已送达{destination},请联系用户确认签收"),
        FINISHED("finished", "订单已完成", "行李订单:{orderNo}已完成,相关订单结算会在{settleDays}个工作日内完成"),
        EVALUATED("evaluated", "订单已评价", "行李订单:{orderNo}用户已完成评价,可查看评价内容"),
        SETTLED("settled", "订单结算", "行李订单:{orderNo}平台已完成结算,金额为{amount}元,请注意查收。")
        ;
        private final String key;
        private final String title;
        private final String content;
        /**
         * 格式化通知内容
         * @param params 键值对,如 "orderNo","123" 交替传入
         */
        public String format(String... params) {
            String result = this.content;
            for (int i = 0; i < params.length - 1; i += 2) {
                result = result.replace("{" + params[i] + "}", params[i + 1]);
            }
            return result;
        }
    }
    /**
     * 得到request对象
     *
     * @return