修改sysuserInfocontroller batch-delete 为软删除

yun-zuoyi
nies 4 years ago
parent bb9f3a487e
commit 90bd2efec1

@ -29,16 +29,14 @@ import org.apache.commons.io.FileUtils;
import org.slf4j.Logger; import org.slf4j.Logger;
import org.slf4j.LoggerFactory; import org.slf4j.LoggerFactory;
import org.springframework.beans.factory.annotation.Autowired; import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.util.ObjectUtils;
import org.springframework.web.bind.annotation.*; import org.springframework.web.bind.annotation.*;
import javax.annotation.Resource; import javax.annotation.Resource;
import javax.persistence.EntityManager; import javax.persistence.EntityManager;
import javax.servlet.http.HttpServletResponse; import javax.servlet.http.HttpServletResponse;
import java.io.*; import java.io.*;
import java.util.ArrayList; import java.util.*;
import java.util.LinkedHashMap;
import java.util.List;
import java.util.Map;
import java.util.function.Function; import java.util.function.Function;
import java.util.stream.Collectors; import java.util.stream.Collectors;
@ -52,7 +50,7 @@ import java.util.stream.Collectors;
@RestController @RestController
@Api(tags = "系统用户服务") @Api(tags = "系统用户服务")
@RequestMapping(PlatformConstWords.BASE_URL + "/sys-user-info") @RequestMapping(PlatformConstWords.BASE_URL + "/sys-user-info")
public class SysUserInfoController extends CoreBaseController{ public class SysUserInfoController extends CoreBaseController {
public static final Logger LOGGER = LoggerFactory.getLogger(SysUserInfoController.class); public static final Logger LOGGER = LoggerFactory.getLogger(SysUserInfoController.class);
@ -80,16 +78,18 @@ public class SysUserInfoController extends CoreBaseController{
@Autowired @Autowired
private ISysUserService sysUserService; private ISysUserService sysUserService;
@Resource(name= CommonConstWords.IMPP_REDIS_RES) @Resource(name = CommonConstWords.IMPP_REDIS_RES)
private ImppRedis redisRes; private ImppRedis redisRes;
/** /**
* *
*
* @param userInfo * @param userInfo
* @return * @return
*/ */
@PostMapping(value="/insert") @PostMapping(value = "/insert")
@ApiOperation(value="添加用户信息",notes="返回内容添加用户信息") @ApiOperation(value = "添加用户信息", notes = "返回内容添加用户信息")
public ResultBean insertSysUserInfo(SysUserInfo userInfo){ public ResultBean insertSysUserInfo(SysUserInfo userInfo) {
try { try {
startMultiService(); startMultiService();
licenseClickService.checkLicenseNumberUser(); licenseClickService.checkLicenseNumberUser();
@ -97,15 +97,15 @@ public class SysUserInfoController extends CoreBaseController{
//登陆用户 //登陆用户
SessionUser user = AuthUtil.getSessionUser(); SessionUser user = AuthUtil.getSessionUser();
checkSysUserInfo(userInfo,false); checkSysUserInfo(userInfo, false);
ConvertBean.modelInitialize(userInfo,user); ConvertBean.modelInitialize(userInfo, user);
userInfo.setUserInfoStatus(CommonEnumUtil.USER_STATUS.ENABLE.getValue()); userInfo.setUserInfoStatus(CommonEnumUtil.USER_STATUS.ENABLE.getValue());
userInfo.setUserLoginNum(0); userInfo.setUserLoginNum(0);
sysUserInfoService.checkSysUserInfoOnly(userInfo); sysUserInfoService.checkSysUserInfoOnly(userInfo);
SysUserInfo info = sysUserInfoService.insertSysUserInfo(userInfo); SysUserInfo info = sysUserInfoService.insertSysUserInfo(userInfo);
sysUserInfoService.refreshRefUserOrganize(info.getId(), userInfo.getDepartment().getOrganizeId(),user.getUserName()); sysUserInfoService.refreshRefUserOrganize(info.getId(), userInfo.getDepartment().getOrganizeId(), user.getUserName());
return ResultBean.success("操作成功").setCode(ResourceEnumUtil.MESSAGE.SUCCESS.getCode()).setResultObject(info); return ResultBean.success("操作成功").setCode(ResourceEnumUtil.MESSAGE.SUCCESS.getCode()).setResultObject(info);
} catch (ImppBusiException busExcep) { } catch (ImppBusiException busExcep) {
return ResultBean.fail(busExcep); return ResultBean.fail(busExcep);
@ -116,27 +116,28 @@ public class SysUserInfoController extends CoreBaseController{
/** /**
* id * id
*
* @param userInfo * @param userInfo
* @return * @return
*/ */
@PutMapping(value="/update") @PutMapping(value = "/update")
@ApiOperation(value="修改用户信息",notes="根据用户信息id修改信息") @ApiOperation(value = "修改用户信息", notes = "根据用户信息id修改信息")
public ResultBean updateSysUserInfoById(SysUserInfo userInfo){ public ResultBean updateSysUserInfoById(SysUserInfo userInfo) {
try { try {
startMultiService(); startMultiService();
//登陆用户 //登陆用户
SessionUser user = AuthUtil.getSessionUser(); SessionUser user = AuthUtil.getSessionUser();
checkSysUserInfo(userInfo,true); checkSysUserInfo(userInfo, true);
//修改初始化 //修改初始化
ConvertBean.modelUpdate(userInfo,user); ConvertBean.modelUpdate(userInfo, user);
sysUserInfoService.checkSysUserInfoOnly(userInfo); sysUserInfoService.checkSysUserInfoOnly(userInfo);
sysUserInfoService.updateSysUserInfo(userInfo); sysUserInfoService.updateSysUserInfo(userInfo);
sysUserInfoService.refreshRefUserOrganize(userInfo.getId(), userInfo.getDepartment().getOrganizeId(),user.getUserName()); sysUserInfoService.refreshRefUserOrganize(userInfo.getId(), userInfo.getDepartment().getOrganizeId(), user.getUserName());
return ResultBean.success("操作成功").setCode(ResourceEnumUtil.MESSAGE.SUCCESS.getCode()); return ResultBean.success("操作成功").setCode(ResourceEnumUtil.MESSAGE.SUCCESS.getCode());
} catch (ImppBusiException busExcep) { } catch (ImppBusiException busExcep) {
@ -148,15 +149,16 @@ public class SysUserInfoController extends CoreBaseController{
/** /**
* *
*
* @param id id * @param id id
* @return * @return
*/ */
@DeleteMapping(value="/delete/{id}") @DeleteMapping(value = "/delete/{id}")
@ApiOperation(value="删除用户信息",notes="根据用户信息id删除信息") @ApiOperation(value = "删除用户信息", notes = "根据用户信息id删除信息")
public ResultBean deleteSysUserInfo(@PathVariable("id") String id){ public ResultBean deleteSysUserInfo(@PathVariable("id") String id) {
try { try {
//条件验证 //条件验证
ValidatorBean.checkNotNull(id,"id为空"); ValidatorBean.checkNotNull(id, "id为空");
sysUserInfoService.deleteSysUserInfoById(Long.parseLong(id)); sysUserInfoService.deleteSysUserInfoById(Long.parseLong(id));
return ResultBean.success("操作成功").setCode(ResourceEnumUtil.MESSAGE.SUCCESS.getCode()); return ResultBean.success("操作成功").setCode(ResourceEnumUtil.MESSAGE.SUCCESS.getCode());
@ -169,92 +171,108 @@ public class SysUserInfoController extends CoreBaseController{
/** /**
* *
*
* @return * @return
*/ */
@GetMapping(value="/list") @GetMapping(value = "/list")
@ApiOperation(value="查询所有用户信息",notes="查询所有用户信息") @ApiOperation(value = "查询所有用户信息", notes = "查询所有用户信息")
public ResultBean findSysUserInfoAll(){ public ResultBean findSysUserInfoAll() {
try{ try {
List<SysUserInfo> SysUserInfoList = sysUserInfoService.listSysUserInfo(); List<SysUserInfo> SysUserInfoList = sysUserInfoService.listSysUserInfo();
return ResultBean.success("操作成功").setResultList(SysUserInfoList) return ResultBean.success("操作成功").setResultList(SysUserInfoList)
.setCode(ResourceEnumUtil.MESSAGE.SUCCESS.getCode()); .setCode(ResourceEnumUtil.MESSAGE.SUCCESS.getCode());
}catch(ImppBusiException busExcep){ } catch (ImppBusiException busExcep) {
return ResultBean.fail(busExcep); return ResultBean.fail(busExcep);
}catch(Exception e){ } catch (Exception e) {
return ImppExceptionBuilder.newInstance().buildExceptionResult(e); return ImppExceptionBuilder.newInstance().buildExceptionResult(e);
} }
} }
/** /**
* *
*
* @param userInfo * @param userInfo
* @param pager * @param pager
* @return * @return
*/ */
@GetMapping(value="/query") @GetMapping(value = "/query")
@ApiOperation(value="查询用户信息",notes="复杂查询用户信息带分页") @ApiOperation(value = "查询用户信息", notes = "复杂查询用户信息带分页")
public ResultBean querySysUserInfo(SysUserInfo userInfo, Pager pager){ public ResultBean querySysUserInfo(SysUserInfo userInfo, Pager pager) {
try{ try {
ListPager<SysUserInfo> result = sysUserInfoService.querySysUserInfo(userInfo, packUserInfo(userInfo), pager); ListPager<SysUserInfo> result = sysUserInfoService.querySysUserInfo(userInfo, packUserInfo(userInfo), pager);
return ResultBean.success("操作成功").setListPager(result).setCode(ResourceEnumUtil.MESSAGE.SUCCESS.getCode()); return ResultBean.success("操作成功").setListPager(result).setCode(ResourceEnumUtil.MESSAGE.SUCCESS.getCode());
}catch(ImppBusiException busExcep){ } catch (ImppBusiException busExcep) {
return ResultBean.fail(busExcep); return ResultBean.fail(busExcep);
}catch(Exception e){ } catch (Exception e) {
return ImppExceptionBuilder.newInstance().buildExceptionResult(e); return ImppExceptionBuilder.newInstance().buildExceptionResult(e);
} }
} }
/** /**
* id * id
*
* @param id id * @param id id
* @return * @return
*/ */
@GetMapping(value="/get/{id}") @GetMapping(value = "/get/{id}")
@ApiOperation(value="根据id查询用户信息",notes="根据id用户信息") @ApiOperation(value = "根据id查询用户信息", notes = "根据id用户信息")
public ResultBean getSysUserInfoById(@PathVariable("id") String id){ public ResultBean getSysUserInfoById(@PathVariable("id") String id) {
try{ try {
ValidatorBean.checkIsNumber(id, "id 不能为空"); ValidatorBean.checkIsNumber(id, "id 不能为空");
SysUserInfo userInfo = sysUserInfoService.getSysUserInfoById(Long.parseLong(id)); SysUserInfo userInfo = sysUserInfoService.getSysUserInfoById(Long.parseLong(id));
ValidatorBean.beginValid(userInfo).notNull("id",userInfo.getId()); ValidatorBean.beginValid(userInfo).notNull("id", userInfo.getId());
return ResultBean.success("操作成功").setResultObject(userInfo).setCode(ResourceEnumUtil.MESSAGE.SUCCESS.getCode()); return ResultBean.success("操作成功").setResultObject(userInfo).setCode(ResourceEnumUtil.MESSAGE.SUCCESS.getCode());
}catch(ImppBusiException busExcep){ } catch (ImppBusiException busExcep) {
return ResultBean.fail(busExcep); return ResultBean.fail(busExcep);
}catch(Exception e){ } catch (Exception e) {
return ImppExceptionBuilder.newInstance().buildExceptionResult(e); return ImppExceptionBuilder.newInstance().buildExceptionResult(e);
} }
} }
/** /**
* id * id
*
* @param ids id * @param ids id
* @return * @return
*/ */
@DeleteMapping(value = "/batch-delete") @DeleteMapping(value = "/batch-delete")
@ApiOperation(value = "根据id批量删除", notes = "根据id批量删除") @ApiOperation(value = "根据id批量删除", notes = "根据id批量删除")
public ResultBean deleteSysUserInfoByIds(String[] ids){ public ResultBean deleteSysUserInfoByIds(String[] ids) {
try{ try {
ids = ConvertBean.modelSafeArrayNumber(ids,true); ids = ConvertBean.modelSafeArrayNumber(ids, true);
if(ids.length == 0){ if (ids.length == 0) {
throw ImppExceptionBuilder.newInstance() throw ImppExceptionBuilder.newInstance()
.setSystemID(CommonEnumUtil.SOFT_TYPE.CORE.getCode()) .setSystemID(CommonEnumUtil.SOFT_TYPE.CORE.getCode())
.setErrorCode(ImppExceptionEnum.VARIFY_EXCEPTION.getCode()) .setErrorCode(ImppExceptionEnum.VARIFY_EXCEPTION.getCode())
.setErrorDetail("请选择需要删除的用户信息。") .setErrorDetail("请选择需要删除的用户信息。")
.build(); .build();
} }
sysUserInfoService.deleteSysUserInfoByIds(StringTool.getArrayLong(ids)); List<SysUserInfo> userInfoList = personnelService.findSysUserInfoByIds(StringTool.getArrayLong(ids));
if (ObjectUtils.isEmpty(userInfoList)) {
return ResultBean.fail("数据不存在").setCode(ResourceEnumUtil.MESSAGE.EMPTY.getCode());
}
Long[] userinfoIds = new Long[userInfoList.size()],
userIds = new Long[userInfoList.size()];
for (int i = 0; i < userInfoList.size(); i++) {
userinfoIds[i] = userInfoList.get(i).getId();
userIds[i] = userInfoList.get(i).getUserId();
}
personnelService.deleteSysUserInfo(userinfoIds, getSessionUser().getUserName());
personnelService.deleteSysUser(userIds, getSessionUser().getUserName());
return ResultBean.success("操作成功") return ResultBean.success("操作成功")
.setCode(ResourceEnumUtil.MESSAGE.SUCCESS.getCode()); .setCode(ResourceEnumUtil.MESSAGE.SUCCESS.getCode());
}catch(ImppBusiException busExcep){ } catch (ImppBusiException busExcep) {
return ResultBean.fail(busExcep); return ResultBean.fail(busExcep);
}catch(Exception e){ } catch (Exception e) {
return ImppExceptionBuilder.newInstance().buildExceptionResult(e); return ImppExceptionBuilder.newInstance().buildExceptionResult(e);
} }
} }
/** /**
* *
*
* @param userId id * @param userId id
* @return * @return
*/ */
@ -276,6 +294,7 @@ public class SysUserInfoController extends CoreBaseController{
/** /**
* *
*
* @param model * @param model
* @return * @return
*/ */
@ -286,7 +305,7 @@ public class SysUserInfoController extends CoreBaseController{
List<Long> idList = new ArrayList<>(); List<Long> idList = new ArrayList<>();
List<SysRefUserDepartment> refs = sysUserInfoService.querySysRefUserDepartment(model); List<SysRefUserDepartment> refs = sysUserInfoService.querySysRefUserDepartment(model);
if(refs != null && refs.size() > 0){ if (refs != null && refs.size() > 0) {
for (SysRefUserDepartment ref : refs) { for (SysRefUserDepartment ref : refs) {
idList.add(ref.getUserId()); idList.add(ref.getUserId());
} }
@ -304,6 +323,7 @@ public class SysUserInfoController extends CoreBaseController{
/** /**
* *
*
* @param userId id * @param userId id
* @return * @return
*/ */
@ -325,26 +345,27 @@ public class SysUserInfoController extends CoreBaseController{
/** /**
* *
*
* @param userInfo * @param userInfo
* @param isId ID * @param isId ID
*/ */
private void checkSysUserInfo(SysUserInfo userInfo,boolean isId){ private void checkSysUserInfo(SysUserInfo userInfo, boolean isId) {
try{ try {
//条件验证 //条件验证
ValidatorBean.beginValid(userInfo) ValidatorBean.beginValid(userInfo)
.notNull("name",userInfo.getName()) .notNull("name", userInfo.getName())
.notNull("userEmpNo",userInfo.getUserEmpNo()) .notNull("userEmpNo", userInfo.getUserEmpNo())
.checkNotZero("departmentId",userInfo.getDepartmentId()) .checkNotZero("departmentId", userInfo.getDepartmentId())
// .checkNotZero("departmentIdList",userInfo.getDepartmentIdList()) // .checkNotZero("departmentIdList",userInfo.getDepartmentIdList())
.checkNotZero("positionId",userInfo.getPositionId()); .checkNotZero("positionId", userInfo.getPositionId());
if(isId){ if (isId) {
ValidatorBean.beginValid(userInfo) ValidatorBean.beginValid(userInfo)
.notNull("id",userInfo.getId()); .notNull("id", userInfo.getId());
} }
SysDepartment department = departmentService.get(userInfo.getDepartmentId()); SysDepartment department = departmentService.get(userInfo.getDepartmentId());
if(department == null){ if (department == null) {
throw ImppExceptionBuilder.newInstance() throw ImppExceptionBuilder.newInstance()
.setSystemID(CommonEnumUtil.SOFT_TYPE.CORE.getCode()) .setSystemID(CommonEnumUtil.SOFT_TYPE.CORE.getCode())
.setErrorCode(ImppExceptionEnum.VARIFY_EXCEPTION.getCode()) .setErrorCode(ImppExceptionEnum.VARIFY_EXCEPTION.getCode())
@ -353,7 +374,7 @@ public class SysUserInfoController extends CoreBaseController{
} }
SysPosition position = positionService.get(userInfo.getPositionId()); SysPosition position = positionService.get(userInfo.getPositionId());
if(position == null){ if (position == null) {
throw ImppExceptionBuilder.newInstance() throw ImppExceptionBuilder.newInstance()
.setSystemID(CommonEnumUtil.SOFT_TYPE.CORE.getCode()) .setSystemID(CommonEnumUtil.SOFT_TYPE.CORE.getCode())
.setErrorCode(ImppExceptionEnum.VARIFY_EXCEPTION.getCode()) .setErrorCode(ImppExceptionEnum.VARIFY_EXCEPTION.getCode())
@ -367,18 +388,21 @@ public class SysUserInfoController extends CoreBaseController{
userInfo.setPositionNameRdd(position.getName()); userInfo.setPositionNameRdd(position.getName());
userInfo.setDepartment(department); userInfo.setDepartment(department);
userInfo.setPosition(position); userInfo.setPosition(position);
}catch(ImppBusiException busExcep){ } catch (ImppBusiException busExcep) {
LOGGER.error(busExcep.getErrorMsg() + "{}",busExcep.getErrorDetail(),busExcep); LOGGER.error(busExcep.getErrorMsg() + "{}", busExcep.getErrorDetail(), busExcep);
}catch(Exception e){ } catch (Exception e) {
LOGGER.error(LocaleUtils.getEnumLocaleResDesc(ImppExceptionEnum.SYSTEM_EXCEPTION, LOGGER.error(LocaleUtils.getEnumLocaleResDesc(ImppExceptionEnum.SYSTEM_EXCEPTION,
ImppExceptionEnum.SYSTEM_EXCEPTION.getDescription()) + "{}", e.getMessage(), e); ImppExceptionEnum.SYSTEM_EXCEPTION.getDescription()) + "{}", e.getMessage(), e);
} }
} }
@GetMapping("/export") @GetMapping("/export")
@ApiOperation(value = "导出用户信息",notes = "导出用户信息") @ApiOperation(value = "导出用户信息", notes = "导出用户信息")
public void exportSysUserInfo(SysUserInfo userInfo, HttpServletResponse response) throws Exception { public void exportSysUserInfo(SysUserInfo userInfo, HttpServletResponse response) throws Exception {
File file = null; File file = null;
if(userInfo ==null ){
userInfo = new SysUserInfo();
}
try { try {
List<SysUserInfo> list = sysUserInfoService.querySysUserInfoList(userInfo, packUserInfo(userInfo)); List<SysUserInfo> list = sysUserInfoService.querySysUserInfoList(userInfo, packUserInfo(userInfo));
Map<Long, SysUser> sysUserMap = sysUserService.list().stream() Map<Long, SysUser> sysUserMap = sysUserService.list().stream()
@ -416,7 +440,7 @@ public class SysUserInfoController extends CoreBaseController{
response.setContentType("application/force-download"); // 设置强制下载不打开 response.setContentType("application/force-download"); // 设置强制下载不打开
response.addHeader("Content-Disposition", "attachment;fileName=" + fileName); // 设置文件名 response.addHeader("Content-Disposition", "attachment;fileName=" + fileName); // 设置文件名
response.addHeader("Content-type", FileContentTypeTool.getContentType(StringTool.getStringFileSuffix(fileName,true))); response.addHeader("Content-type", FileContentTypeTool.getContentType(StringTool.getStringFileSuffix(fileName, true)));
// 设置文件名 // 设置文件名
try (BufferedInputStream bis = new BufferedInputStream(new DataInputStream(new FileInputStream(excle)))) { try (BufferedInputStream bis = new BufferedInputStream(new DataInputStream(new FileInputStream(excle)))) {
@ -435,7 +459,7 @@ public class SysUserInfoController extends CoreBaseController{
} }
} }
private ArrayList<Long> packUserInfo(SysUserInfo userInfo){ private ArrayList<Long> packUserInfo(SysUserInfo userInfo) {
ArrayList<Long> idList = new ArrayList<>(); ArrayList<Long> idList = new ArrayList<>();
if (userInfo.getOrganizeId() == null || userInfo.getOrganizeId() <= 0) { if (userInfo.getOrganizeId() == null || userInfo.getOrganizeId() <= 0) {
if (AuthUtil.getUserType().equals(CommonEnumUtil.USER_TYPE.ADMIN)) { if (AuthUtil.getUserType().equals(CommonEnumUtil.USER_TYPE.ADMIN)) {

Loading…
Cancel
Save