From 2fb140604d02dcfafcbf109bbb93bcbb46cd5647 Mon Sep 17 00:00:00 2001
From: lidongdong <1459917685@qq.com>
Date: 星期五, 30 九月 2022 14:46:29 +0800
Subject: [PATCH] 修改合并花城e+  登录表逻辑

---
 flower_city/src/main/java/com/dg/core/service/impl/SysUserServiceImpl.java |   68 +++++++++++++++++++++++----------
 1 files changed, 47 insertions(+), 21 deletions(-)

diff --git a/flower_city/src/main/java/com/dg/core/service/impl/SysUserServiceImpl.java b/flower_city/src/main/java/com/dg/core/service/impl/SysUserServiceImpl.java
index 9afa544..504f6f0 100644
--- a/flower_city/src/main/java/com/dg/core/service/impl/SysUserServiceImpl.java
+++ b/flower_city/src/main/java/com/dg/core/service/impl/SysUserServiceImpl.java
@@ -4,19 +4,19 @@
 import com.baomidou.mybatisplus.core.metadata.IPage;
 import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
 import com.dg.core.ResultData;
+import com.dg.core.db.gen.entity.HuaChengSysUser;
 import com.dg.core.db.gen.entity.OrganizationChartEntity;
 import com.dg.core.db.gen.entity.SysUser;
 import com.dg.core.db.gen.mapper.OrganizationChartMapper;
 import com.dg.core.db.gen.mapper.SysUserMapper;
 import com.dg.core.manager.TokenManager;
+import com.dg.core.service.IHuaChengSysUserService;
 import com.dg.core.service.ISysUserService;
 import com.dg.core.util.SmsUtil;
+import com.dg.core.util.Snowflake;
 import org.springframework.beans.factory.annotation.Autowired;
 import org.springframework.data.redis.core.RedisTemplate;
-import org.springframework.data.repository.query.Param;
 import org.springframework.stereotype.Service;
-import org.springframework.web.bind.annotation.RequestBody;
-import org.springframework.web.bind.annotation.RequestParam;
 
 import javax.annotation.Resource;
 import java.time.LocalDateTime;
@@ -41,10 +41,11 @@
     @Resource
     private OrganizationChartMapper organizationChartMapper;
 
-    @Override
-    public SysUser getUserById(Long id) {
-        return baseMapper.selectById(id);
-    }
+    /**
+     * 花城e+用户接口
+     */
+    @Autowired
+    IHuaChengSysUserService iHuaChengSysUserService;
 
     @Override
     public SysUser getUserByAccount(String account) {
@@ -59,26 +60,48 @@
 
     @Override
     public ResultData smsSend(SysUser user){
-        SysUser sysUser = baseMapper.selectOne(new QueryWrapper<SysUser>().lambda().eq(SysUser::getPhonenumber, user.getPhonenumber()));
-        if (sysUser==null){
-            SysUser newUser = new SysUser();
-            newUser.setLoginName(user.getPhonenumber());
-            newUser.setUserName(user.getPhonenumber().substring(0,3)+"xxxx"+user.getPhonenumber().substring(7,11)+"用户");
-            newUser.setUserType("3");
-            newUser.setPhonenumber(user.getPhonenumber());
-            newUser.setSex("2");
-            newUser.setCreateTime(LocalDateTime.now());
-            newUser.setUpdateTime(LocalDateTime.now());
-            baseMapper.insert(newUser);
-        }
        return smsUtil.sendSms(user.getPhonenumber());
     }
 
     @Override
     public ResultData loginByAccount(String phonenumber, String code){
         String code1 = redisTemplate.opsForValue().get(phonenumber) + "";
+
+        SysUser sysUser = baseMapper.selectOne(new QueryWrapper<SysUser>().lambda().eq(SysUser::getPhonenumber, phonenumber));
+        if (sysUser==null){
+            //查询花城e+是否存在此用户
+            HuaChengSysUser huaChengSysUser=iHuaChengSysUserService.selectData("","",phonenumber);
+            if(huaChengSysUser==null)
+            {
+                SysUser newUser = new SysUser();
+                newUser.setUserId(Snowflake.getId());
+                newUser.setLoginName(phonenumber);
+                newUser.setUserName(phonenumber.substring(0,3)+"xxxx"+phonenumber.substring(7,11)+"用户");
+                newUser.setUserType("3");
+                newUser.setPhonenumber(phonenumber);
+                newUser.setSex("1");
+                newUser.setCreateTime(LocalDateTime.now());
+                newUser.setUpdateTime(LocalDateTime.now());
+                baseMapper.insert(newUser);
+            }
+            else
+            {
+                SysUser newUser = new SysUser();
+                newUser.setUserId(huaChengSysUser.getUserId());
+                newUser.setLoginName(huaChengSysUser.getPhone());
+                newUser.setUserName(huaChengSysUser.getNickName());
+                newUser.setUserType("3");
+                newUser.setPhonenumber(huaChengSysUser.getPhone());
+                newUser.setSex(huaChengSysUser.getSex());
+                newUser.setAvatar(huaChengSysUser.getImageUrl());
+                newUser.setCreateTime(LocalDateTime.now());
+                newUser.setUpdateTime(LocalDateTime.now());
+                baseMapper.insert(newUser);
+            }
+        }
+
         if (code.equals(code1)) {
-            SysUser sysUser = baseMapper.selectOne(new QueryWrapper<SysUser>().lambda().eq(SysUser::getPhonenumber, phonenumber));
+            sysUser = baseMapper.selectOne(new QueryWrapper<SysUser>().lambda().eq(SysUser::getPhonenumber, phonenumber));
             if (sysUser!=null){
                 String token = tokenManager.getTokenByUserId(sysUser.getUserId());
 //        String token = tokenManager.createToken(user.getUserId(), user.getRoleId());
@@ -143,7 +166,10 @@
         return baseMapper.selectConfigList(page, state,userType);
     }
 
-
+    @Override
+    public SysUser selectData(String userId) {
+        return baseMapper.selectData(userId);
+    }
 
 
     /**

--
Gitblit v1.7.1