Pu Zhibing
2025-04-22 fd7b8fb7c89832c28a838b0449bbb8a392433ee2
ruoyi-auth/src/main/java/com/ruoyi/auth/controller/TokenController.java
@@ -3,12 +3,9 @@
import javax.annotation.Resource;
import javax.servlet.http.HttpServletRequest;
import com.ruoyi.chargingPile.api.feignClient.PartnerClient;
import com.ruoyi.chargingPile.api.model.Partner;
import com.ruoyi.system.api.domain.SysRole;
import com.ruoyi.system.api.domain.SysUser;
import com.ruoyi.system.api.feignClient.SysUserClient;
import io.seata.spring.annotation.GlobalTransactional;
import lombok.extern.slf4j.Slf4j;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.util.CollectionUtils;
@@ -42,15 +39,11 @@
   @Resource
   private SysUserClient userClient;
   
   @Resource
   private PartnerClient partnerClient;
   
   
   
   
   @PostMapping("login")
   @GlobalTransactional(rollbackFor = Exception.class)//分布式事务
   public R<?> login(@RequestBody LoginBody form, HttpServletRequest request) {
      // 用户登录
      LoginUser userInfo = sysLoginService.login(form.getUsername(), form.getPassword(), request);
@@ -63,10 +56,27 @@
        map.put("roleName",roles.get(0).getRoleName());
      map.put("info", userInfo);
      if(userInfo.getSysUser().getRoleType() == 2){
         Partner partner = partnerClient.getPartnerById(userInfo.getSysUser().getObjectId()).getData();
         map.put("partnerName", partner.getName());
      }
      // 修改用户最后登录时间
      SysUser sysUser = new SysUser();
      sysUser.setUserId(userInfo.getSysUser().getUserId());
      sysUser.setLoginDate(new Date());
      System.out.println("修改用户登录时间" + sysUser);
      userClient.updateSysUser(sysUser);
      return R.ok(map);
   }
   @PostMapping("loginShop")
   public R<?> loginShop(@RequestBody LoginBody form, HttpServletRequest request) {
      // 用户登录
      LoginUser userInfo = sysLoginService.loginShop(form.getUsername(), form.getPassword(), request);
      HashMap<String, Object> map = new HashMap<>();
      map.put("token", tokenService.createToken(userInfo));
      List<SysRole> roles = userInfo.getSysUser().getRoles();
        if(CollectionUtils.isEmpty(roles)){
            return R.fail("请关联角色!");
        }
        map.put("roleName",roles.get(0).getRoleName());
      map.put("info", userInfo);
      // 修改用户最后登录时间
      SysUser sysUser = new SysUser();
      sysUser.setUserId(userInfo.getSysUser().getUserId());