123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190 |
- package com.kmall.admin.fromcomm.controller;
- import com.kmall.admin.dto.SysUserDto;
- import com.kmall.admin.utils.ShiroUtils;
- import com.kmall.common.annotation.SysLog;
- import com.kmall.common.constant.Dict;
- import com.kmall.admin.fromcomm.entity.SysUserEntity;
- import com.kmall.admin.fromcomm.service.SysUserRoleService;
- import com.kmall.admin.fromcomm.service.SysUserService;
- import com.kmall.common.constant.JxlsXmlTemplateName;
- import com.kmall.common.utils.*;
- import com.kmall.common.utils.excel.ExcelUtil;
- import com.kmall.common.validator.Assert;
- import org.apache.commons.lang.ArrayUtils;
- import org.apache.shiro.authz.annotation.RequiresPermissions;
- import org.apache.shiro.crypto.hash.Sha256Hash;
- import org.springframework.beans.factory.annotation.Autowired;
- import org.springframework.web.bind.annotation.*;
- import org.springframework.web.multipart.MultipartFile;
- import java.util.ArrayList;
- import java.util.HashMap;
- import java.util.List;
- import java.util.Map;
- /**
- * 系统用户
- *
- * @author Scott
- * @email
- * @date 2016年10月31日 上午10:40:10
- */
- @RestController
- @RequestMapping("/sys/user")
- public class SysUserController extends AbstractController {
- @Autowired
- private SysUserService sysUserService;
- @Autowired
- private SysUserRoleService sysUserRoleService;
- @Autowired
- private ExcelUtil excelUtil;
- /**
- * 所有用户列表
- */
- @RequestMapping("/list")
- @RequiresPermissions("sys:user:list")
- public R list(@RequestParam Map<String, Object> params) {
- // //只有超级管理员,才能查看所有管理员列表
- // if (getUserId() != Constant.SUPER_ADMIN) {
- // params.put("createUserId", getUserId());
- // }
- if(!ShiroUtils.getUserEntity().getRoleType().equalsIgnoreCase(Dict.roleType.item_1.getItem())){
- params.put("createUserId", getUserId());
- }
- //查询列表数据
- Query query = new Query(params);
- List<SysUserEntity> userList = sysUserService.queryList(query);
- int total = sysUserService.queryTotal(query);
- PageUtils pageUtil = new PageUtils(userList, total, query.getLimit(), query.getPage());
- return R.ok().put("page", pageUtil);
- }
- /**
- * 获取登录的用户信息
- */
- @RequestMapping("/info")
- public R info() {
- SysUserEntity userEntity = getUser();
- userEntity = sysUserService.queryObject(userEntity.getUserId());
- return R.ok().put("user", userEntity);
- }
- /**
- * 修改登录用户密码
- */
- @SysLog("修改密码")
- @RequestMapping("/password")
- public R password(String password, String newPassword) {
- Assert.isBlank(password, "原密码不为能空");
- Assert.isBlank(newPassword, "新密码不为能空");
- //sha256加密
- password = new Sha256Hash(password).toHex();
- //sha256加密
- newPassword = new Sha256Hash(newPassword).toHex();
- //更新密码
- int count = sysUserService.updatePassword(getUserId(), password, newPassword);
- if (count == 0) {
- return R.error("原密码不正确");
- }
- //退出
- ShiroUtils.logout();
- return R.ok();
- }
- /**
- * 用户信息
- */
- @RequestMapping("/info/{userId}")
- @RequiresPermissions("sys:user:info")
- public R info(@PathVariable("userId") Long userId) {
- SysUserEntity user = sysUserService.queryObject(userId);
- //获取用户所属的角色列表
- List<Long> roleIdList = sysUserRoleService.queryRoleIdList(userId);
- user.setRoleIdList(roleIdList);
- return R.ok().put("user", user);
- }
- /**
- * 保存用户
- */
- @SysLog("保存用户")
- @RequestMapping("/save")
- @RequiresPermissions("sys:user:save")
- public R save(@RequestBody SysUserEntity user) {
- //ValidatorUtils.validateEntity(user);
- user.setCreateUserId(getUserId());
- sysUserService.save(user);
- return R.ok();
- }
- /**
- * 修改用户
- */
- @SysLog("修改用户")
- @RequestMapping("/update")
- @RequiresPermissions("sys:user:update")
- public R update(@RequestBody SysUserEntity user) {
- //ValidatorUtils.validateEntity(user);
- user.setCreateUserId(getUserId());
- sysUserService.update(user);
- return R.ok();
- }
- /**
- * 删除用户
- */
- @SysLog("删除用户")
- @RequestMapping("/delete")
- @RequiresPermissions("sys:user:delete")
- public R delete(@RequestBody Long[] userIds) {
- if (ArrayUtils.contains(userIds, 1L)) {
- return R.error("系统管理员不能删除");
- }
- if (ArrayUtils.contains(userIds, getUserId())) {
- return R.error("当前用户不能删除");
- }
- sysUserService.deleteBatch(userIds);
- return R.ok();
- }
- /**
- * 上传文件
- */
- @RequestMapping("/sysUserUpload")
- public R storeUpload(@RequestParam("file") MultipartFile file) {
- List<SysUserDto> sysUserDtoList = new ArrayList<>();//信息
- try {
- SysUserDto storeGoodsDto = new SysUserDto();
- Map<String, Object> beans = new HashMap<String, Object>();
- beans.put("SysUserDto", storeGoodsDto);
- beans.put("SysUserDtoList", sysUserDtoList);
- if (file.isEmpty()) {
- return R.error("文件不能为空!");
- }
- excelUtil.readExcel(JxlsXmlTemplateName.SYS_USER_DTO_LIST, beans, file.getInputStream());
- } catch (Exception e) {
- e.printStackTrace();
- return R.error("导入失败!");
- }
- sysUserService.uploadExcel(sysUserDtoList);
- //上传文件
- return R.ok("导入成功!");
- }
- }
|