| 123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280 |
- package com.ydtech.modules.admin.controller;
- import com.ydtech.constants.SysConstants;
- import com.ydtech.core.page.BaseController;
- import com.ydtech.core.page.HttpResult;
- import com.ydtech.core.page.PageRequest;
- import com.ydtech.core.page.PageResult;
- import com.ydtech.exception.SystemException;
- import com.ydtech.modules.admin.model.SysUser;
- import com.ydtech.modules.admin.model.SysUserRole;
- import com.ydtech.modules.admin.service.SysUserRoleService;
- import com.ydtech.modules.admin.service.SysUserService;
- import com.ydtech.modules.admin.vo.SysUserVO;
- import com.ydtech.security.utils.PasswordUtils;
- import org.apache.commons.codec.language.bm.Lang;
- import org.springframework.beans.factory.annotation.Autowired;
- import org.springframework.security.access.prepost.PreAuthorize;
- import org.springframework.util.StringUtils;
- import org.springframework.web.bind.annotation.*;
- import java.util.ArrayList;
- import java.util.Date;
- import java.util.List;
- /**
- * 用户控制器
- *
- * @author Yasepix
- * @date Oct 29, 2018
- */
- @RestController
- @RequestMapping("user")
- public class SysUserController extends BaseController {
- @Autowired
- private SysUserService sysUserService;
- @Autowired
- private SysUserRoleService sysUserRoleService;
- // @PreAuthorize("hasAuthority('sys:user:add') AND hasAuthority('sys:user:edit')")
- // @PostMapping(value="/save")
- // public HttpResult save(@RequestBody Map<String, Object> models) {
- // SysUser user = null;
- // try {
- // user = JsonXMLUtils.map2obj(models,SysUser.class);
- // EsmUserInternal esmUserInternal = JsonXMLUtils.map2obj(models,EsmUserInternal.class);
- // if(esmUserInternal.getId() != null){
- // esmUserInternalDaoxx.updateSelective(esmUserInternal);
- // }else {
- // esmUserInternalDaoxx.insertSelective(esmUserInternal);
- // }
- // } catch (Exception e) {
- // e.printStackTrace();
- // }
- //// Address address=JsonXMLUtils.map2obj((Map<String, Object>)models.get("address"),Address.class);
- // return HttpResult.ok(sysUserService.save(user));
- //}
- // @PreAuthorize("hasAuthority('sys:user:add') AND hasAuthority('sys:user:edit')")
- // @PostMapping(value="/save")
- // public HttpResult save(@RequestBody SysUser record) {
- // SysUser user = sysUserService.findById(record.getId());
- // if(user != null) {
- // if(SysConstants.ADMIN.equalsIgnoreCase(user.getName())) {
- // return HttpResult.error("超级管理员不允许修改!");
- // }
- // }
- // if(record.getPassword() != null) {
- // String salt = PasswordUtils.getSalt();
- // if(user == null) {
- // // 新增用户
- // if(sysUserService.findByName(record.getName()) != null) {
- // return HttpResult.error("用户名已存在!");
- // }
- // String password = PasswordUtils.encode(record.getPassword(), salt);
- // record.setSalt(salt);
- // record.setPassword(password);
- // } else {
- // // 修改用户, 且修改了密码
- // if(!record.getPassword().equals(user.getPassword())) {
- // String password = PasswordUtils.encode(record.getPassword(), salt);
- // record.setSalt(salt);
- // record.setPassword(password);
- // }
- // }
- // }
- // return HttpResult.ok(sysUserService.save(record));
- // }
- @PreAuthorize("hasAuthority('sys:user:delete')")
- @PostMapping(value = "/deleteFlag")
- public HttpResult deleteFlag(@RequestBody List<SysUser> records) {
- for (SysUser record : records) {
- SysUser sysUser = sysUserService.selectByPk(record.getId());
- if (sysUser != null && SysConstants.ADMIN.equalsIgnoreCase(sysUser.getName())) {
- return HttpResult.error("超级管理员不允许删除!");
- }
- }
- return HttpResult.ok(sysUserService.deleteFlag(records));
- }
- // @PreAuthorize("hasAuthority('sys:user:view')")
- @GetMapping(value = "/findByName")
- public HttpResult findByUserName(@RequestParam String name) {
- return HttpResult.ok(sysUserService.selectById(name));
- }
- // @PreAuthorize("hasAuthority('sys:user:view')")
- @GetMapping(value = "/findPermissions")
- public HttpResult findPermissions(@RequestParam String name) {
- SysUser sysUser = new SysUser();
- sysUser.setId(name);
- return HttpResult.ok(sysUserService.findPermissions(sysUser));
- }
- @PreAuthorize("hasAuthority('sys:user:view')")
- @GetMapping(value = "/findUserRoles")
- public HttpResult findUserRoles(@RequestParam Long userId) {
- return HttpResult.ok(sysUserService.findUserRoles(userId));
- }
- /**
- * 用户角色分页查询
- *
- * @param pageRequest
- * @return
- */
- @PostMapping(value = "/queryPage")
- public HttpResult queryPage(@RequestBody PageRequest pageRequest) {
- int pageNum = pageRequest.getPageNum();
- int pageSize = pageRequest.getPageSize();
- String deptid = pageRequest.getColumnFilterValue(pageRequest, "deptid");
- String name = pageRequest.getColumnFilterValue(pageRequest, "name");
- String containsSubDept = pageRequest.getColumnFilterValue(pageRequest, "containsSubDept");
- String mobile = pageRequest.getColumnFilterValue(pageRequest, "mobile");
- StringBuffer whereStr = new StringBuffer(" where 1=1");
- ArrayList array = new ArrayList();
- if (!StringUtils.isEmpty(deptid) && !StringUtils.isEmpty(containsSubDept) && "1".equals(containsSubDept)) {
- whereStr.append(" and dept_id like ?");
- array.add(deptid + "%");
- } else if (!StringUtils.isEmpty(deptid)) {
- whereStr.append(" and dept_id = ?");
- array.add(deptid);
- }
- if (!StringUtils.isEmpty(name)) {
- whereStr.append(" and name = ?");
- array.add(name);
- }
- if (!StringUtils.isEmpty(mobile)) {
- whereStr.append(" and mobile = ?");
- array.add(mobile);
- }
- PageResult pageResult = sysUserRoleService.queryPaging(pageNum, pageSize, whereStr.toString(), array.toArray());
- return HttpResult.ok(pageResult);
- }
- /**
- * 配置用户角色
- *
- * @param userId
- * @param roleId
- * @return
- */
- @PostMapping(value = "/saveUserRole")
- public HttpResult saveUserRole(@RequestParam String userId, @RequestParam String roleId) {
- SysUserRole userRole = new SysUserRole();
- List<SysUserRole> list = sysUserRoleService.selectList(" where user_id=?", new Object[]{userId});
- if (list.size() > 0) {
- userRole = list.get(0);
- userRole.setRoleId(Long.parseLong(roleId));
- userRole.setLastUpdateBy(getUserName());
- userRole.setLastUpdateTime(new Date());
- sysUserRoleService.updateSelective(userRole);
- } else {
- userRole.setUserId(userId);
- userRole.setRoleId(Long.parseLong(roleId));
- userRole.setCreateBy(getUserName());
- userRole.setCreateTime(new Date());
- sysUserRoleService.insertSelective(userRole);
- }
- return HttpResult.ok();
- }
- @PreAuthorize("hasAuthority('sys:user:view')")
- @PostMapping(value = "/findPage")
- public HttpResult findPage(@RequestBody PageRequest pageRequest) {
- //return HttpResult.ok(sysUserService.findPage(pageRequest));
- int pageNum = pageRequest.getPageNum();
- int pageSize = pageRequest.getPageSize();
- String name = pageRequest.getColumnFilterValue(pageRequest, "name");
- // String email = pageRequest.getColumnFilterValue(pageRequest, "email");
- //需要处理传入的部门
- PageResult pageResult = sysUserService.selectPagingCustom(pageNum, pageSize, name, "");
- sysUserService.findSysUseresmUserInternalVORoles(pageResult);
- return HttpResult.ok(pageResult);
- }
- /**
- * 密码修改
- *
- * @param id
- * @param password
- * @return
- */
- @PostMapping(value = "/updatePwd")
- public HttpResult updatePwd(@RequestParam String id, @RequestParam String password) {
- if (StringUtils.isEmpty(id) || StringUtils.isEmpty(password)) {
- return HttpResult.error("ID和密码不能为空");
- }
- SysUser sysUser = sysUserService.selectByPk(id);
- if (sysUser == null) {
- return HttpResult.error("ID不存在");
- }
- //密码加密
- String salt = PasswordUtils.getSalt();
- String pwd = PasswordUtils.encode(password, sysUser.getSalt());
- sysUser.setPassword(pwd);
- sysUserService.updateSelective(sysUser);
- return HttpResult.ok("修改成功");
- }
- /**
- * 手机号更新
- *
- * @param id
- * @param mobile
- * @return
- */
- @PostMapping(value = "/updateMobile")
- public HttpResult updateMobile(@RequestParam String id, @RequestParam String mobile) {
- if (StringUtils.isEmpty(id) || StringUtils.isEmpty(mobile)) {
- return HttpResult.error("ID和手机号不能为空");
- }
- SysUser sysUser = sysUserService.selectByPk(id);
- if (sysUser == null) {
- return HttpResult.error("ID不存在");
- }
- List<SysUser> users = sysUserService.selectList(" where id != ? and mobile=?", new Object[]{id, mobile});
- if (users != null && users.size() > 0) {
- return HttpResult.error("手机号已存在");
- }
- sysUser.setMobile(mobile);
- sysUserService.updateSelective(sysUser);
- return HttpResult.ok("修改成功");
- }
- /**
- * 根据工号查询推荐人信息
- *
- * @param id
- * @return
- */
- @GetMapping(value = "/findById")
- public HttpResult findByUserId(@RequestParam String id) {
- SysUserVO sysUserVO = sysUserService.selectById(id);
- if (sysUserVO != null) {
- return HttpResult.ok(sysUserVO);
- }
- throw new SystemException("没有推荐人");
- }
- /**
- * 根据部门ID查询该部门的团队长信息
- *
- * @param deptId
- * @return
- */
- @GetMapping(value = "/selectByDeptId")
- public HttpResult selectByDeptId(String deptId) {
- return HttpResult.ok(sysUserService.selectByDeptId(deptId));
- }
- }
|