|  |  |  | 
|---|
|  |  |  |  | 
|---|
|  |  |  | import com.alibaba.fastjson.JSONObject; | 
|---|
|  |  |  | import com.baomidou.mybatisplus.mapper.EntityWrapper; | 
|---|
|  |  |  | import com.baomidou.mybatisplus.mapper.Wrapper; | 
|---|
|  |  |  | import com.baomidou.mybatisplus.plugins.Page; | 
|---|
|  |  |  | import com.core.annotations.ManagerAuth; | 
|---|
|  |  |  | import com.core.common.Cools; | 
|---|
|  |  |  | import com.core.common.DateUtils; | 
|---|
|  |  |  | import com.core.common.R; | 
|---|
|  |  |  | import com.core.domain.KeyValueVo; | 
|---|
|  |  |  | import com.core.exception.CoolException; | 
|---|
|  |  |  | import org.springframework.beans.factory.annotation.Autowired; | 
|---|
|  |  |  | import org.springframework.transaction.annotation.Transactional; | 
|---|
|  |  |  | import org.springframework.web.bind.annotation.*; | 
|---|
|  |  |  | import com.zy.crm.common.web.BaseController; | 
|---|
|  |  |  | import com.zy.crm.manager.service.CstmrService; | 
|---|
|  |  |  | import com.zy.crm.system.entity.Role; | 
|---|
|  |  |  | import com.zy.crm.system.entity.User; | 
|---|
|  |  |  | import com.zy.crm.system.service.RoleService; | 
|---|
|  |  |  | import com.zy.crm.system.service.UserService; | 
|---|
|  |  |  | import org.springframework.beans.factory.annotation.Autowired; | 
|---|
|  |  |  | import org.springframework.transaction.annotation.Transactional; | 
|---|
|  |  |  | import org.springframework.web.bind.annotation.*; | 
|---|
|  |  |  |  | 
|---|
|  |  |  | import java.util.*; | 
|---|
|  |  |  |  | 
|---|
|  |  |  | 
|---|
|  |  |  | private UserService userService; | 
|---|
|  |  |  | @Autowired | 
|---|
|  |  |  | private RoleService roleService; | 
|---|
|  |  |  | @Autowired | 
|---|
|  |  |  | private CstmrService cstmrService; | 
|---|
|  |  |  |  | 
|---|
|  |  |  | @RequestMapping(value = "/user/{id}/auth") | 
|---|
|  |  |  | @ManagerAuth | 
|---|
|  |  |  | 
|---|
|  |  |  | return R.ok(userService.selectPage(new Page<>(curr, limit), wrapper)); | 
|---|
|  |  |  | } | 
|---|
|  |  |  |  | 
|---|
|  |  |  | @RequestMapping(value = "/user/page/auth") | 
|---|
|  |  |  | @ManagerAuth | 
|---|
|  |  |  | public R page(@RequestParam(defaultValue = "1")Integer curr, | 
|---|
|  |  |  | @RequestParam(defaultValue = "10")Integer limit, | 
|---|
|  |  |  | @RequestParam(required = false)String orderByField, | 
|---|
|  |  |  | @RequestParam(required = false)String orderByType, | 
|---|
|  |  |  | @RequestParam Map<String, Object> param){ | 
|---|
|  |  |  | Object deptId = param.get("dept_id"); | 
|---|
|  |  |  | if (Cools.isEmpty(deptId)) { | 
|---|
|  |  |  | deptId = getOriginDept().getId(); | 
|---|
|  |  |  | } | 
|---|
|  |  |  | return R.ok(userService.getPage(new Page<>(curr, limit) | 
|---|
|  |  |  | , getHostId() | 
|---|
|  |  |  | , String.valueOf(deptId) | 
|---|
|  |  |  | , param.get("username") | 
|---|
|  |  |  | , param.get("mobile")) | 
|---|
|  |  |  | ); | 
|---|
|  |  |  | } | 
|---|
|  |  |  |  | 
|---|
|  |  |  | private <T> void convert(Map<String, Object> map, EntityWrapper<T> wrapper){ | 
|---|
|  |  |  | for (Map.Entry<String, Object> entry : map.entrySet()){ | 
|---|
|  |  |  | String val = String.valueOf(entry.getValue()); | 
|---|
|  |  |  | 
|---|
|  |  |  | if (userService.selectCount(new EntityWrapper<User>().eq("mobile", user.getMobile()))>0) { | 
|---|
|  |  |  | return R.error("手机号已存在"); | 
|---|
|  |  |  | } | 
|---|
|  |  |  | user.setHostId(getHostId()); | 
|---|
|  |  |  | user.setStatus(1); | 
|---|
|  |  |  | user.setCreateTime(new Date()); | 
|---|
|  |  |  | user.setPassword("827ccb0eea8a706c4c34a16891f84e7b");  //添加用户时,默认密码 12345 | 
|---|
|  |  |  | userService.insert(user); | 
|---|
|  |  |  | return R.ok(); | 
|---|
|  |  |  | } | 
|---|
|  |  |  |  | 
|---|
|  |  |  | @RequestMapping(value = "/user/update/auth") | 
|---|
|  |  |  | @ManagerAuth(memo = "系统用户修改") | 
|---|
|  |  |  | @Transactional | 
|---|
|  |  |  | public R update(User user){ | 
|---|
|  |  |  | if (Cools.isEmpty(user) || null==user.getId()){ | 
|---|
|  |  |  | return R.error(); | 
|---|
|  |  |  | } | 
|---|
|  |  |  | int count = userService.selectCount(new EntityWrapper<User>().ne("id", user.getId()).eq("username", user.getUsername())); | 
|---|
|  |  |  | if (count > 0) { | 
|---|
|  |  |  | if (userService.selectCount(new EntityWrapper<User>().ne("id", user.getId()).eq("username", user.getUsername())) > 0) { | 
|---|
|  |  |  | return R.error("账号已存在"); | 
|---|
|  |  |  | } | 
|---|
|  |  |  | userService.updateById(user); | 
|---|
|  |  |  | User one = userService.selectById(user.getId()); | 
|---|
|  |  |  | if (!one.getDeptId().equals(user.getDeptId())) { | 
|---|
|  |  |  | // todo: 修改关联数据的deptId字段 | 
|---|
|  |  |  | cstmrService.updateDeptIdByUserId(user.getId(), user.getDeptId()); | 
|---|
|  |  |  | } | 
|---|
|  |  |  | user.setNickname(user.getUsername()); | 
|---|
|  |  |  | if (!userService.updateById(user)) { | 
|---|
|  |  |  | throw new CoolException("修改用户失败"); | 
|---|
|  |  |  | } | 
|---|
|  |  |  | return R.ok(); | 
|---|
|  |  |  | } | 
|---|
|  |  |  |  | 
|---|
|  |  |  | 
|---|
|  |  |  | return R.ok(result); | 
|---|
|  |  |  | } | 
|---|
|  |  |  |  | 
|---|
|  |  |  |  | 
|---|
|  |  |  | /*************************************** xm-select ***********************************************/ | 
|---|
|  |  |  |  | 
|---|
|  |  |  | // xm-select 搜索商品列表 | 
|---|
|  |  |  | @RequestMapping("/user/all/get/kv") | 
|---|
|  |  |  | @ManagerAuth | 
|---|
|  |  |  | public R getUserDataKV(@RequestParam(required = false) String condition) { | 
|---|
|  |  |  | Wrapper<User> wrapper = new EntityWrapper<User>() | 
|---|
|  |  |  | .andNew().like("username", condition).or().like("nickname", condition) | 
|---|
|  |  |  | .orderBy("create_time", false); | 
|---|
|  |  |  | List<User> users = userService.selectPage(new Page<>(1, 30), wrapper).getRecords(); | 
|---|
|  |  |  | List<KeyValueVo> valueVos = new ArrayList<>(); | 
|---|
|  |  |  | for (User user : users) { | 
|---|
|  |  |  | KeyValueVo vo = new KeyValueVo(); | 
|---|
|  |  |  | vo.setName(user.getNickname()); | 
|---|
|  |  |  | vo.setValue(user.getId()); | 
|---|
|  |  |  | valueVos.add(vo); | 
|---|
|  |  |  | } | 
|---|
|  |  |  | return R.ok().add(valueVos); | 
|---|
|  |  |  | } | 
|---|
|  |  |  |  | 
|---|
|  |  |  |  | 
|---|
|  |  |  | } | 
|---|