From 08cad817f057c4a10e1ea59e362fbb492f3381df Mon Sep 17 00:00:00 2001 From: Crunchy <3114200645@qq.com> Date: 星期三, 22 五月 2024 16:14:35 +0800 Subject: [PATCH] Merge remote-tracking branch 'origin/master' --- user-server/src/main/java/com/yuanchu/mom/service/impl/UserServiceImp.java | 77 ++++++++++++++++++++++++++++++++------ 1 files changed, 64 insertions(+), 13 deletions(-) diff --git a/user-server/src/main/java/com/yuanchu/mom/service/impl/UserServiceImp.java b/user-server/src/main/java/com/yuanchu/mom/service/impl/UserServiceImp.java index 351cd81..0952c4e 100644 --- a/user-server/src/main/java/com/yuanchu/mom/service/impl/UserServiceImp.java +++ b/user-server/src/main/java/com/yuanchu/mom/service/impl/UserServiceImp.java @@ -3,33 +3,28 @@ import cn.hutool.core.bean.BeanUtil; import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper; import com.baomidou.mybatisplus.core.metadata.IPage; -import com.baomidou.mybatisplus.core.toolkit.ObjectUtils; import com.baomidou.mybatisplus.core.toolkit.Wrappers; -import com.baomidou.mybatisplus.extension.plugins.pagination.Page; import com.yuanchu.mom.common.GetLook; import com.yuanchu.mom.common.PrintChina; +import com.yuanchu.mom.dto.PersonDto; import com.yuanchu.mom.dto.UserPageDto; import com.yuanchu.mom.exception.ErrorException; +import com.yuanchu.mom.mapper.DepartmentsMapper; import com.yuanchu.mom.mapper.UserMapper; +import com.yuanchu.mom.pojo.Departments; import com.yuanchu.mom.pojo.User; import com.yuanchu.mom.service.UserService; -import com.yuanchu.mom.utils.Jwt; +import com.yuanchu.mom.util.HeaderToken; import com.yuanchu.mom.utils.QueryWrappers; -import com.yuanchu.mom.vo.Result; -import lombok.AllArgsConstructor; -import org.springframework.beans.factory.annotation.Autowired; -import org.springframework.beans.factory.annotation.Value; import org.springframework.stereotype.Service; +import org.springframework.transaction.annotation.Transactional; import org.springframework.util.DigestUtils; -import org.springframework.web.multipart.MultipartFile; import javax.annotation.Resource; -import java.io.File; -import java.time.LocalDateTime; -import java.time.format.DateTimeFormatter; import java.util.HashMap; import java.util.List; import java.util.Map; +import java.util.concurrent.atomic.AtomicReference; @Service public class UserServiceImp implements UserService { @@ -37,11 +32,13 @@ @Resource UserMapper userMapper; @Resource - Jwt jwt; - @Resource private GetLook getLook; + @Resource + private DepartmentsMapper departmentsMapper; + @Resource + private HeaderToken headerToken; @Override public User selectUserByPwd(String account, String password) { @@ -114,4 +111,58 @@ return userMapper.updateById(user); } + @Override + @Transactional(rollbackFor = Exception.class) + public int addPersonUser(PersonDto personDto) { + AtomicReference<String> departId = new AtomicReference<>(""); + AtomicReference<String> companyName = new AtomicReference<>(); + personDto.getCompany().forEach(company->{ + Departments department = departmentsMapper.selectOne(Wrappers.<Departments>lambdaQuery().eq(Departments::getCompanyId, company.getCompanyId())); + if(BeanUtil.isEmpty(department)){ + department = new Departments(); + department.setName(company.getCompanyName()); + department.setCompanyId(company.getCompanyId()); + Departments department2 = departmentsMapper.selectOne(Wrappers.<Departments>lambdaQuery().eq(Departments::getCompanyId, company.getParentCompanyId())); + if(BeanUtil.isEmpty(department2)){ + department.setFatherId(1); + }else{ + department.setFatherId(department2.getId()); + } + departmentsMapper.insert(department); + } + departId.set(departId.get()+department.getId()+","); + companyName.set(department.getName()); + }); + personDto.getPerson().forEach(person -> { + User user = userMapper.selectOne(Wrappers.<User>lambdaQuery().eq(User::getAccount, person.getEmployeeID())); + if(BeanUtil.isEmpty(user)){ + user = new User(); + user.setName(person.getName()); + user.setNameEn("not write"); + user.setAccount(person.getEmployeeID()); + user.setPhone(person.getPhoneNumber()); + user.setEmail(person.getCompanyEmail()); + user.setIsCustom(person.getCompanyId().equals("SC2463")?0:1); + user.setDepartId(departId.get()); +// user.setPassword(DigestUtils.md5DigestAsHex(headerToken.getPassword(person.getEmployeeID()).getBytes())); + user.setPassword(DigestUtils.md5DigestAsHex("123456".getBytes())); + user.setCompany(companyName.get()); + user.setAddress("鏈~鍐�"); + userMapper.insert(user); + }else{ + user.setName(person.getName()); + user.setPhone(person.getPhoneNumber()); + user.setEmail(person.getCompanyEmail()); + user.setIsCustom(person.getCompanyId().equals("SC2463")?0:1); + user.setDepartId(departId.get()); + user.setCompany(companyName.get()); + user.setCreateUser(null); + user.setCreateTime(null); + user.setUpdateUser(null); + user.setUpdateTime(null); + userMapper.updateById(user); + } + }); + return 1; + } } -- Gitblit v1.9.3