| | |
| | | package com.yuanchu.mom.service.impl; |
| | | |
| | | import cn.hutool.core.bean.BeanUtil; |
| | | import com.alibaba.fastjson.JSON; |
| | | import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper; |
| | | import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper; |
| | | import com.baomidou.mybatisplus.core.metadata.IPage; |
| | | import com.baomidou.mybatisplus.core.toolkit.Wrappers; |
| | |
| | | import com.yuanchu.mom.dto.PersonDto; |
| | | import com.yuanchu.mom.dto.UserPageDto; |
| | | import com.yuanchu.mom.exception.ErrorException; |
| | | import com.yuanchu.mom.mapper.RoleMapper; |
| | | import com.yuanchu.mom.mapper.UserMapper; |
| | | import com.yuanchu.mom.pojo.Custom; |
| | | import com.yuanchu.mom.pojo.Role; |
| | | import com.yuanchu.mom.pojo.User; |
| | | import com.yuanchu.mom.service.CustomService; |
| | | import com.yuanchu.mom.service.UserService; |
| | | import com.yuanchu.mom.utils.Jwt; |
| | | import com.yuanchu.mom.utils.QueryWrappers; |
| | | import org.springframework.stereotype.Service; |
| | | import org.springframework.transaction.annotation.Transactional; |
| | | import org.springframework.util.DigestUtils; |
| | | |
| | | import javax.annotation.Resource; |
| | | import java.time.LocalDateTime; |
| | | import java.util.HashMap; |
| | | import java.util.List; |
| | | import java.util.Map; |
| | | import java.util.function.Consumer; |
| | | import java.util.stream.Collectors; |
| | | |
| | | @Service |
| | | public class UserServiceImp implements UserService { |
| | |
| | | @Resource |
| | | UserMapper userMapper; |
| | | @Resource |
| | | Jwt jwt; |
| | | @Resource |
| | | private GetLook getLook; |
| | | |
| | | @Resource |
| | | private RoleMapper roleMapper; |
| | | |
| | | @Resource |
| | | private CustomService customService; |
| | | |
| | | @Override |
| | | public User selectUserByPwd(String account, String password) { |
| | |
| | | map.put("head", PrintChina.printChina(UserPageDto.class)); |
| | | Map<String, Integer> map1 = getLook.selectPowerByMethodAndUserId("selectUserList"); |
| | | if (map1.get("look") == 1) user.setCreateUser(map1.get("userId")); |
| | | map.put("body", userMapper.selectUserDtoPageList(page, QueryWrappers.queryWrappers(user))); |
| | | try { |
| | | if (user.getRoleId() > 10000) { |
| | | if (user.getRoleId() != 10001) { |
| | | List<Integer> ids = roleMapper.getRoleByDepart(user.getRoleId()); |
| | | user.setRoleId(null); |
| | | map.put("body", userMapper.selectUserDtoPageList(page, QueryWrappers.queryWrappers(user).in("role_id", ids))); |
| | | return map; |
| | | } else { |
| | | user.setRoleId(null); |
| | | map.put("body", userMapper.selectUserDtoPageList(page, QueryWrappers.queryWrappers(user))); |
| | | return map; |
| | | } |
| | | } |
| | | map.put("body", userMapper.selectUserDtoPageList(page, QueryWrappers.queryWrappers(user).eq("role_id", user.getRoleId()))); |
| | | return map; |
| | | } catch (NullPointerException e) { |
| | | map.put("body", userMapper.selectUserDtoPageList(page, QueryWrappers.queryWrappers(user))); |
| | | return map; |
| | | } |
| | | } |
| | | |
| | | @Override |
| | | public Map<String, Object> selectPersonnelOverview(IPage<UserPageDto> page, UserPageDto user) { |
| | | Map<String, Object> map = new HashMap<>(); |
| | | map.put("head", PrintChina.printChina(UserPageDto.class)); |
| | | Map<String, Integer> map1 = getLook.selectPowerByMethodAndUserId("selectUserList"); |
| | | if (map1.get("look") == 1) user.setCreateUser(map1.get("userId")); |
| | | map.put("body", userMapper.selectPersonnelOverview(page, QueryWrappers.queryWrappers(user))); |
| | | return map; |
| | | } |
| | | |
| | | @Override |
| | | public int updateUser(User user) { |
| | | user.setDepartId("1,"+user.getDepartId()); |
| | | user.setDepartId("1," + user.getDepartId()); |
| | | return userMapper.updateById(user); |
| | | } |
| | | |
| | | @Override |
| | | public int addUser(User user) { |
| | | user.setDepartId("1,"+user.getDepartId()); |
| | | user.setDepartId("1"); |
| | | return userMapper.insert(user); |
| | | } |
| | | |
| | | @Override |
| | | public List<User> getUserMenu() { |
| | | return userMapper.selectList(Wrappers.<User>lambdaQuery().eq(User::getState, 1).select(User::getName, User::getId)); |
| | | return userMapper.selectList(Wrappers.<User>lambdaQuery() |
| | | .eq(User::getState, 1).select(User::getName, User::getId)); |
| | | } |
| | | |
| | | //获取设备负责人 |
| | |
| | | @Override |
| | | public User getUserNow() { |
| | | Map<String, Integer> map1 = getLook.selectPowerByMethodAndUserId(null); |
| | | return userMapper.selectOne(Wrappers.<User>lambdaQuery().eq(User::getId, map1.get("userId")).eq(User::getIsCustom, 1).select(User::getId, User::getCompany, User::getName, User::getCode, User::getPhone)); |
| | | return userMapper.getCustom(map1.get("userId")); |
| | | } |
| | | |
| | | @Override |
| | |
| | | @Override |
| | | @Transactional(rollbackFor = Exception.class) |
| | | public int addPersonUser(PersonDto personDto) { |
| | | System.out.println(personDto); |
| | | personDto.getPerson().forEach(person -> { |
| | | User user = userMapper.selectOne(Wrappers.<User>lambdaQuery().eq(User::getAccount, person.getEmployeeID())); |
| | | String companyName = personDto.getCompany().stream().filter(a -> a.getCompanyId().equals(person.getCompanyId())).findFirst().get().getCompanyName(); |
| | | Custom custom = customService.getCustomId(companyName); |
| | | 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()); |
| | | //todo 根据客户公司的编号而改变 |
| | | user.setIsCustom(person.getCompanyId().equals("SC2301") ? 0 : 1); |
| | | user.setPassword(DigestUtils.md5DigestAsHex("zttZTT123!".getBytes())); |
| | | user.setCompany(BeanUtil.isNotEmpty(custom) ? (custom.getId() + "") : companyName); |
| | | user.setAddress("未填写"); |
| | | user.setRoleId(personDto.getRoleId() > 10000 ? 0 : personDto.getRoleId()); |
| | | user.setCompanyId(person.getCompanyId()); |
| | | userMapper.insert(user); |
| | | } else { |
| | | user.setName(person.getName()); |
| | | user.setPhone(person.getPhoneNumber()); |
| | | user.setEmail(person.getCompanyEmail()); |
| | | user.setIsCustom(0); |
| | | user.setCompany(BeanUtil.isNotEmpty(custom) ? (custom.getId() + "") : companyName); |
| | | user.setCreateUser(null); |
| | | user.setCreateTime(null); |
| | | user.setUpdateUser(null); |
| | | user.setUpdateTime(null); |
| | | user.setCompanyId(person.getCompanyId()); |
| | | userMapper.updateById(user); |
| | | } |
| | | }); |
| | | return 1; |
| | | } |
| | | |
| | | @Override |
| | | public int upUserDepardLimsId(String ids, String id) { |
| | | List<Integer> userIds = JSON.parseArray(ids, Integer.class); |
| | | return userMapper.update(null, Wrappers.<User>lambdaUpdate().in(User::getId, userIds).set(User::getDepartLimsId, id).set(User::getUpdateTime, LocalDateTime.now()).set(User::getUpdateUser, getLook.selectPowerByMethodAndUserId(null).get("userId"))); |
| | | } |
| | | |
| | | @Override |
| | | public int delUserDepardLimsId(Integer id) { |
| | | return userMapper.update(null, Wrappers.<User>lambdaUpdate().eq(User::getId, id).set(User::getDepartLimsId, null).set(User::getUpdateTime, LocalDateTime.now()).set(User::getUpdateUser, getLook.selectPowerByMethodAndUserId(null).get("userId"))); |
| | | } |
| | | |
| | | @Override |
| | | public List<User> getUser() { |
| | | return userMapper.getUser(); |
| | | } |
| | | } |