From 99c990b862429e4d3ce97c271a911831d06f815e Mon Sep 17 00:00:00 2001
From: fengjin <1435304038@qq.com>
Date: 星期日, 09 十月 2022 15:35:53 +0800
Subject: [PATCH] 修改Bug
---
flower_city/src/main/java/com/dg/core/service/impl/SysUserServiceImpl.java | 104 +++++++++++++++++++++++++++++++++++++++++----------
1 files changed, 83 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 e9d5229..4cb204d 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,20 +4,23 @@
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;
+import java.util.ArrayList;
import java.util.HashMap;
import java.util.List;
import java.util.Map;
@@ -35,10 +38,14 @@
@Autowired
TokenManager tokenManager;
- @Override
- public SysUser getUserById(Long id) {
- return baseMapper.selectById(id);
- }
+ @Resource
+ private OrganizationChartMapper organizationChartMapper;
+
+ /**
+ * 花城e+用户接口
+ */
+ @Autowired
+ IHuaChengSysUserService iHuaChengSysUserService;
@Override
public SysUser getUserByAccount(String account) {
@@ -53,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.insertConfig(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.insertConfig(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());
@@ -103,11 +132,44 @@
}
@Override
+ public List<SysUser> selectListByDepartmentId(String departmentId, String classifyId) {
+ List<String> departmentIds=new ArrayList<>();
+ departmentIds.add(departmentId);
+ List<OrganizationChartEntity> organizationChartEntities = organizationChartMapper.selectList(new QueryWrapper<OrganizationChartEntity>().lambda()
+ .eq(OrganizationChartEntity::getParentId, departmentId));
+ if (organizationChartEntities!=null){
+ for (OrganizationChartEntity organizationChart:organizationChartEntities) {
+ departmentIds.add(organizationChart.getId().toString());
+ List<OrganizationChartEntity> organizationChartEntitiesUser = organizationChartMapper.selectList(new QueryWrapper<OrganizationChartEntity>().lambda()
+ .eq(OrganizationChartEntity::getParentId, organizationChart.getId().toString()));
+ if (organizationChartEntitiesUser!=null)
+ departmentIds=this.getDepartmentIds(organizationChartEntitiesUser,departmentIds);
+ }
+ }
+ return baseMapper.selectListByDepartmentId(departmentIds,","+classifyId,classifyId+",");
+ }
+
+ public List<String> getDepartmentIds( List<OrganizationChartEntity> organizationChartEntities,List<String> departmentIds){
+ for (OrganizationChartEntity organizationChart:organizationChartEntities) {
+ departmentIds.add(organizationChart.getId().toString());
+ List<OrganizationChartEntity> organizationChartEntitiesUser = organizationChartMapper.selectList(new QueryWrapper<OrganizationChartEntity>().lambda()
+ .eq(OrganizationChartEntity::getParentId, organizationChart.getId().toString()));
+ if (organizationChartEntitiesUser!=null)
+ departmentIds=this.getDepartmentIds(organizationChartEntitiesUser,departmentIds);
+
+ }
+ return departmentIds;
+ }
+
+ @Override
public List<SysUser> selectConfigList(IPage<SysUser> page, Integer state,String userType) {
return baseMapper.selectConfigList(page, state,userType);
}
-
+ @Override
+ public SysUser selectData(String userId) {
+ return baseMapper.selectData(userId);
+ }
/**
--
Gitblit v1.7.1