Просмотр исходного кода

fix(登录自动同步登录数据)

gengyang 5 лет назад
Родитель
Сommit
4675b8715e

+ 3 - 5
src/main/java/com/mokamrp/privates/controller/UserController.java

@@ -10,12 +10,9 @@ import com.mokamrp.privates.mapper.pojo.User;
 import com.mokamrp.privates.service.UserCorpService;
 import org.springframework.beans.factory.annotation.Autowired;
 import org.springframework.validation.BindingResult;
-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.*;
 
 import org.springframework.stereotype.Controller;
-import org.springframework.web.bind.annotation.ResponseBody;
 
 import javax.validation.Valid;
 import java.util.List;
@@ -29,7 +26,7 @@ import java.util.Map;
  * @author leon
  * @since 2021-04-17
  */
-@Controller
+@RestController
 @RequestMapping("/user")
 public class UserController extends BaseController<User>{
 
@@ -38,5 +35,6 @@ public class UserController extends BaseController<User>{
     public Object info(@AuthUser User authUser) {
         return AjaxResult.success(authUser);
     }
+
 }
 

+ 6 - 1
src/main/java/com/mokamrp/privates/interceptor/AuthIntercepotor.java

@@ -7,6 +7,7 @@ import com.mokamrp.privates.cache.RedisCache;
 import com.mokamrp.privates.constant.RedisKey;
 import com.mokamrp.privates.help.AjaxResult;
 import com.mokamrp.privates.mapper.pojo.User;
+import com.mokamrp.privates.service.UserService;
 import com.mokamrp.privates.utils.ServletUtils;
 import com.xxl.sso.core.conf.Conf;
 import com.xxl.sso.core.user.XxlSsoUser;
@@ -27,6 +28,9 @@ public class AuthIntercepotor extends HandlerInterceptorAdapter {
     public RedisCache redisCache;
 
     @Autowired
+    public UserService userService;
+
+    @Autowired
     private ObjectMapper objectMapper;
 
     @Override
@@ -61,8 +65,9 @@ public class AuthIntercepotor extends HandlerInterceptorAdapter {
         user.setIsSuperAdmin(1);
         request.setAttribute("auth-user", user);
 
+        userService.Insert(xxlSsoUser.getPlugininfo(),xxlSsoUser.getUsername());
+
         return true;
     }
 
-
 }

+ 2 - 0
src/main/java/com/mokamrp/privates/mapper/UserMapper.java

@@ -2,6 +2,7 @@ package com.mokamrp.privates.mapper;
 
 import com.mokamrp.privates.mapper.pojo.User;
 import com.baomidou.mybatisplus.core.mapper.BaseMapper;
+import org.springframework.stereotype.Component;
 
 /**
  * <p>
@@ -11,6 +12,7 @@ import com.baomidou.mybatisplus.core.mapper.BaseMapper;
  * @author leon
  * @since 2021-04-17
  */
+@Component
 public interface UserMapper extends BaseMapper<User> {
 
 }

+ 2 - 1
src/main/java/com/mokamrp/privates/mapper/UserMapper.xml

@@ -21,12 +21,13 @@
         <result column="updated_at" property="updatedAt"/>
         <result column="deleted_at" property="deletedAt"/>
         <result column="is_super_admin" property="isSuperAdmin"/>
+        <result column="pic" property="pic"/>
     </resultMap>
 
     <!-- 通用查询结果列 -->
     <sql id="Base_Column_List">
         id
-        , phone, password, name, gender, department, position, login_time, status, tenant_id, created_at, updated_at, deleted_at, is_super_admin
+        , phone, password, name, gender, department, position, login_time, status, tenant_id, created_at, updated_at, deleted_at, is_super_admin,pic
     </sql>
 
 </mapper>

+ 9 - 1
src/main/java/com/mokamrp/privates/mapper/pojo/User.java

@@ -24,7 +24,6 @@ public class User extends Model<User> {
 
     private static final long serialVersionUID = 1L;
 
-    @TableId(value = "id", type = IdType.AUTO)
     private Integer id;
     /**
      * 手机号
@@ -65,6 +64,7 @@ public class User extends Model<User> {
     private Date createdAt;
     private Date updatedAt;
     private Date deletedAt;
+    private String Pic;
     /**
      * 是否为超级管理员 - 0否1是
      */
@@ -78,6 +78,14 @@ public class User extends Model<User> {
         this.id = id;
     }
 
+    public String getPic() {
+        return Pic;
+    }
+
+    public void setPic(String pic) {
+        Pic = pic;
+    }
+
     public String getPhone() {
         return phone;
     }

+ 1 - 1
src/main/java/com/mokamrp/privates/service/UserService.java

@@ -15,6 +15,6 @@ import java.util.Map;
  * @since 2021-04-17
  */
 public interface UserService extends IService<User> {
-
     public Map<String, Object> doLogin(String phone, String password);
+    public void Insert(Map<String,String> info,String name);
 }

+ 31 - 0
src/main/java/com/mokamrp/privates/service/impl/UserServiceImpl.java

@@ -6,6 +6,7 @@ import com.mokamrp.privates.constant.Constants;
 import com.mokamrp.privates.constant.RedisKey;
 import com.mokamrp.privates.mapper.pojo.User;
 import com.mokamrp.privates.mapper.UserMapper;
+import com.mokamrp.privates.mapper.vo.WorkRoomVo;
 import com.mokamrp.privates.service.UserService;
 import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
 import com.mokamrp.privates.utils.StringUtils;
@@ -14,6 +15,8 @@ import org.springframework.beans.factory.annotation.Autowired;
 import org.springframework.data.redis.core.StringRedisTemplate;
 import org.springframework.stereotype.Service;
 
+import java.text.SimpleDateFormat;
+import java.util.Date;
 import java.util.Map;
 import java.util.concurrent.TimeUnit;
 
@@ -30,6 +33,9 @@ public class UserServiceImpl extends ServiceImpl<UserMapper, User> implements Us
     @Autowired
     public StringRedisTemplate redis;
 
+    @Autowired
+    public UserMapper userMapper;
+
     public Map<String, Object> doLogin(String phone, String password) {
         Map<String, Object> res =this.getMap(new QueryWrapper<User>().eq("phone", phone));
         //.验证账户名和密码
@@ -53,4 +59,29 @@ public class UserServiceImpl extends ServiceImpl<UserMapper, User> implements Us
         res.put("loginStatus", "loginSuccess");
         return res;
     }
+
+    public void Insert(Map<String,String> info,String name) {
+
+        User user = new User();
+
+        if(info.get("employeeNo").isEmpty()){
+            return;
+        }
+
+
+        if(userMapper.selectById(info.get("employeeNo")) != null){
+            return;
+        }
+
+        user.setId(Integer.parseInt(info.get("employeeNo").toString()));
+        user.setGender(Integer.parseInt(info.get("gender").toString()));
+        user.setPhone(info.get("tel").toString().replaceAll("/+86",""));
+        user.setPic(info.get("pic").toString());
+        user.setLoginTime(new Date());
+
+        user.setName(name);
+        this.saveOrUpdate(user);
+
+        return;
+    }
 }