mitao
2025-02-12 4172a409d945fd61ac7579b3032f1c7aea64cfea
medicalWaste-admin/src/main/java/com/sinata/web/controller/applet/AppLoginController.java
@@ -2,7 +2,6 @@
import com.alibaba.fastjson2.JSON;
import com.alibaba.fastjson2.JSONObject;
import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper;
import com.baomidou.mybatisplus.core.toolkit.Wrappers;
import com.sinata.common.constant.Constants;
import com.sinata.common.core.domain.AjaxResult;
@@ -12,6 +11,7 @@
import com.sinata.common.core.domain.entity.SysUser;
import com.sinata.common.core.domain.model.LoginBody;
import com.sinata.common.core.domain.model.LoginUser;
import com.sinata.common.core.redis.RedisCache;
import com.sinata.common.utils.SecurityUtils;
import com.sinata.common.utils.StringUtils;
import com.sinata.framework.web.service.SysLoginService;
@@ -31,11 +31,13 @@
import io.swagger.annotations.Api;
import io.swagger.annotations.ApiOperation;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.util.CollectionUtils;
import org.springframework.web.bind.annotation.*;
import org.springframework.web.bind.annotation.GetMapping;
import org.springframework.web.bind.annotation.PostMapping;
import org.springframework.web.bind.annotation.RequestBody;
import org.springframework.web.bind.annotation.RequestMapping;
import org.springframework.web.bind.annotation.RestController;
import javax.annotation.Resource;
import java.time.LocalDateTime;
import java.util.List;
import java.util.Map;
import java.util.Random;
@@ -72,6 +74,8 @@
    private AliSmsService aliSmsService;
    @Resource
    private ISysUserService userService;
    @Autowired
    private RedisCache redisCache;
    @PostMapping("/getCode")
@@ -79,11 +83,29 @@
    public AjaxResult getCode(String phone)
    {
        Random random = new Random();
        List<SysUser> list = userService.lambdaQuery().eq(SysUser::getUserName, phone).list();
        if (list.isEmpty()){
            return AjaxResult.error("当前手机号没有对应用户,请联系管理员");
        }
        int i = 100000 + random.nextInt(900000);
        aliSmsService.sendLoginCode(phone, String.valueOf(i));
        redisCache.setCacheObject(String.valueOf(phone), String.valueOf(i));
        return AjaxResult.success();
    }
    @PostMapping("/set/getCode")
    @ApiOperation("获取验证码")
    public AjaxResult setgetCode(String phone)
    {
        Random random = new Random();
        int i = 100000 + random.nextInt(900000);
        aliSmsService.sendLoginCode(phone, String.valueOf(i));
        redisCache.setCacheObject(String.valueOf(phone), String.valueOf(i));
        return AjaxResult.success();
    }
    @Resource
    private WeChatUtil weChatUtil;
@@ -132,7 +154,13 @@
//        }
        List<SysMenu> menus = roleService.roleInfoFromUserId(loginUser.getUserId());
        String string = redisCache.getCacheObject(loginBody.getUsername()).toString();
        if (StringUtils.isBlank(string)) {
            return AjaxResult.error("验证码已失效");
        }
        if (!loginBody.getCode().equals(string)){
            return AjaxResult.error("验证码错误,请重试");
        }
//        ajax.put("menus", menus);
        ajax.put("userInfo", loginUser);
        return ajax;