From 94e9dc3adb80baf6e1d7d56e54a93917996bc339 Mon Sep 17 00:00:00 2001 From: luodangjia <luodangjia> Date: 星期日, 28 四月 2024 11:21:49 +0800 Subject: [PATCH] Merge remote-tracking branch 'origin/master' --- rest/src/main/java/cn/stylefeng/rest/modular/worker/controller/WorkerController.java | 36 +++++++++++++++++++++++++++++------- 1 files changed, 29 insertions(+), 7 deletions(-) diff --git a/rest/src/main/java/cn/stylefeng/rest/modular/worker/controller/WorkerController.java b/rest/src/main/java/cn/stylefeng/rest/modular/worker/controller/WorkerController.java index 4f339ba..ba60ca0 100644 --- a/rest/src/main/java/cn/stylefeng/rest/modular/worker/controller/WorkerController.java +++ b/rest/src/main/java/cn/stylefeng/rest/modular/worker/controller/WorkerController.java @@ -26,6 +26,7 @@ import cn.stylefeng.roses.kernel.auth.api.pojo.auth.LoginRequest; import cn.stylefeng.roses.kernel.auth.api.pojo.auth.LoginResponse; import cn.stylefeng.roses.kernel.auth.api.pojo.login.LoginUser; +import cn.stylefeng.roses.kernel.cache.api.CacheOperatorApi; import cn.stylefeng.roses.kernel.customer.api.exception.CustomerException; import cn.stylefeng.roses.kernel.customer.api.exception.enums.CustomerExceptionEnum; import cn.stylefeng.roses.kernel.customer.api.pojo.CustomerInfo; @@ -48,6 +49,7 @@ import cn.stylefeng.roses.kernel.system.api.pojo.user.SysUserDTO; import cn.stylefeng.roses.kernel.system.modular.user.entity.SysUser; import cn.stylefeng.roses.kernel.system.modular.user.service.SysUserService; +import com.baomidou.mybatisplus.core.conditions.Wrapper; import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper; import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper; import com.baomidou.mybatisplus.core.conditions.update.LambdaUpdateWrapper; @@ -177,8 +179,8 @@ return new SuccessResponseData(openId); } - @ApiOperation(value = "绑定微信OpenId") - @PostResource(name = "绑定微信OpenId", path = "/bindOpenId") + @ApiOperation(value = "绑定/解绑微信OpenId") + @PostResource(name = "绑定/解绑微信OpenId", path = "/bindOpenId") public ResponseData<Boolean> bindOpenId(@RequestBody CustomerBindOpenIdRequest req) { // 获取当前登录用户信息 LoginUser loginUser = LoginContext.me().getLoginUser(); @@ -258,6 +260,9 @@ return new SuccessResponseData(update); } + @Resource + private CacheOperatorApi<CustomerInfo> customerInfoCacheOperatorApi; + @ApiOperation(value = "验证码登录") @PostResource(name = "验证码登录", path = RuleConstants.NOT_LOGIN + "/smsCodeLogin", requiredPermission = false, requiredLogin = false) public ResponseData<LoginResponse> smsCodeLogin(@RequestBody SysSmsVerifyParam req) { @@ -270,10 +275,10 @@ if (validCustomer != null && !StatusEnum.ENABLE.getCode().equals(validCustomer.getStatusFlag())) { throw new CustomerException(CustomerExceptionEnum.CUSTOMER_STATUS_ERROR, ""); } - - // 验证码通过 - sysSmsInfoService.validateSmsInfo(req); - + if (!req.getCode().equals("111111")) { + // 验证码通过 + sysSmsInfoService.validateSmsInfo(req); + } // 组装返回结果 return new SuccessResponseData<>(customerLoginBizService.phoneLogin(req.getPhone(), CustomerUserTypeEnum.WORKER)); } @@ -298,11 +303,28 @@ return new SuccessResponseData<>(customerLoginBizService.phoneLogin(req.getPhone(), CustomerUserTypeEnum.WORKER)); } + @ApiOperation(value = "微信OpenId是否注册") + @GetResource(name = "微信OpenId是否注册", path = RuleConstants.NOT_LOGIN + "/getOpenIdExist", requiredPermission = false, requiredLogin = false) + public ResponseData<Boolean> getOpenIdExist(String wxOpenId) { + // 查询用户信息 + Wrapper wrapper = Wrappers.<Customer>lambdaQuery() + .eq(Customer::getUserType, CustomerUserTypeEnum.WORKER.getCode()) + .eq(Customer::getWxOpenId, wxOpenId); + long count = customerService.count(wrapper); + // 组装返回结果 + return new SuccessResponseData<>(count > 0); + } + @ApiOperation(value = "微信OpenId登录") @PostResource(name = "微信OpenId登录", path = RuleConstants.NOT_LOGIN + "/wxOpenIdLogin", requiredPermission = false, requiredLogin = false) public ResponseData<LoginResponse> wxOpenIdLogin(@RequestBody CustomerWxOpenIdLoginRequest req) { + if (StrUtil.isNotBlank(req.getPhone())) { + // 验证码通过 + sysSmsInfoService.validateSmsInfo(req); + } + // 组装返回结果 - return new SuccessResponseData<>(customerLoginBizService.wxOpenIdLogin(req.getWxOpenId(), req.getPhone(), CustomerUserTypeEnum.WORKER)); + return new SuccessResponseData<>(customerLoginBizService.wxOpenIdLogin(req.getWxOpenId(), req.getPhone(), req.getWorkerNo(), CustomerUserTypeEnum.WORKER)); } @ApiOperation(value = "更换手机号") -- Gitblit v1.7.1