无关风月
刚刚 b5ead35c1d955f2a0e2e10da79254860d0ba95e9
ruoyi-service/ruoyi-admin/src/main/java/com/ruoyi/admin/controller/SendSmsController.java
@@ -1,7 +1,13 @@
package com.ruoyi.admin.controller;
import com.ruoyi.admin.entity.MasterWorker;
import com.ruoyi.admin.entity.WorkerProcess;
import com.ruoyi.admin.service.MasterWorkerService;
import com.ruoyi.admin.service.SendSmsService;
import com.ruoyi.admin.service.WorkerProcessService;
import com.ruoyi.common.core.constant.Constants;
import com.ruoyi.common.core.domain.R;
import com.ruoyi.order.api.feignClient.OrderClient;
import io.swagger.annotations.Api;
import io.swagger.annotations.ApiImplicitParam;
import io.swagger.annotations.ApiImplicitParams;
@@ -25,6 +31,12 @@
    @Resource
    private SendSmsService sendSmsService;
    @Resource
    private OrderClient orderClient;
    @Resource
    private MasterWorkerService masterWorkerService;
    @Resource
    private WorkerProcessService workerProcessService;
    /**
     * 发送派单短信给用户
@@ -34,10 +46,15 @@
    @ApiOperation(value = "后台-发送派单短信", tags = {"发送短信"})
    @GetMapping(value = "/dispatchSms")
    @ApiImplicitParams({
            @ApiImplicitParam(value = "订单记录id", name = "orderId", dataType = "String", required = true)
            @ApiImplicitParam(value = "订单记录id", name = "orderId", dataType = "Integer", required = true)
    })
    public R<Object> userDataCount(@RequestParam String orderId) {
        return R.ok();
    public R<Object> dispatchSms(@RequestParam String orderId) {
        com.ruoyi.order.api.entity.Order order = orderClient.detail(orderId).getData();
        orderClient.msgCount(orderId);
        if (null == order) {
            return R.fail("订单不存在或已删除!");
        }
        return R.ok(sendSmsService.dispatchOrder(order));
    }
    /**
@@ -65,7 +82,53 @@
            @ApiImplicitParam(value = "手机号", name = "phone", dataType = "String", required = true)
    })
    public R<String> workerLoginSms(@RequestParam String phone) {
        MasterWorker masterWorker = masterWorkerService.lambdaQuery()
                .eq(MasterWorker::getPhone, phone)
                .eq(MasterWorker::getIsDelete, 0).one();
        if (null == masterWorker) {
            return R.fail("当前手机号未注册!");
        }
        return R.ok(sendSmsService.workerLoginSms(phone));
    }
    /**
     * 师傅端-修改手机号时校验新手机号是否已注册
     *
     * @param phone 订单记录id
     */
    @ApiOperation(value = "师傅端-修改手机号时校验新手机号是否已注册", tags = {"发送短信"})
    @GetMapping(value = "/checkPhone")
    @ApiImplicitParams({
            @ApiImplicitParam(value = "手机号", name = "phone", dataType = "String", required = true)
    })
    public R<String> checkPhone(@RequestParam String phone) {
        MasterWorker masterWorker = masterWorkerService.lambdaQuery()
                .eq(MasterWorker::getPhone, phone)
                .eq(MasterWorker::getIsDelete, 0).one();
        if (null != masterWorker) {
            return R.fail("新手机号已注册!");
        }
        return R.ok(sendSmsService.workerLoginSms(phone));
    }
    /**
     * 师傅端-忘记密码
     *
     * @param phone 订单记录id
     */
    @ApiOperation(value = "师傅端-忘记密码", tags = {"发送短信"})
    @GetMapping(value = "/passwordCheckPhone")
    @ApiImplicitParams({
            @ApiImplicitParam(value = "手机号", name = "phone", dataType = "String", required = true)
    })
    public R<String> passwordCheckPhone(@RequestParam String phone) {
        MasterWorker masterWorker = masterWorkerService.lambdaQuery()
                .eq(MasterWorker::getPhone, phone)
                .eq(MasterWorker::getIsDelete, 0).one();
        if (null == masterWorker) {
            return R.fail("手机号未注册!");
        }
        return R.ok();
    }
    /**
@@ -79,6 +142,25 @@
            @ApiImplicitParam(value = "手机号", name = "phone", dataType = "String", required = true)
    })
    public R<String> workerSettleSms(@RequestParam String phone) {
        // 校验该手机号是否已经生成账号
        MasterWorker masterWorker = masterWorkerService.lambdaQuery()
                .eq(MasterWorker::getPhone, phone)
                .eq(MasterWorker::getIsDelete, 0).one();
        WorkerProcess workerProcess = workerProcessService.lambdaQuery()
                .eq(WorkerProcess::getPhone, phone)
                .eq(WorkerProcess::getIsDelete, 0)
                .orderByDesc(WorkerProcess::getCreateTime).last("limit 1").one();
        if (masterWorker != null){
            return R.fail("该手机号入驻申请已通过,请前往登录!");
        }
        if (null != workerProcess) {
            Integer state = workerProcess.getState();
            if (Constants.ZERO.equals(state)) {
                return R.fail("该手机号已提交入驻申请,请等待审核!");
            } else if (Constants.ONE.equals(state) && null != masterWorker) {
                return R.fail("该手机号入驻申请已通过,请前往登录!");
            }
        }
        return R.ok(sendSmsService.workerSettleSms(phone));
    }