|
@@ -1048,6 +1048,130 @@ public class SysUserController {
|
|
|
|
|
|
|
|
|
|
|
|
+ /**
|
|
|
+ * 导出excel 员工年假调休
|
|
|
+ *
|
|
|
+ * @param
|
|
|
+ * @param
|
|
|
+ */
|
|
|
+ @RequestMapping(value = "/exportXlsts")
|
|
|
+ public ModelAndView exportXlsts(SysUser sysUser,HttpServletRequest request,@RequestParam(name="pageNo", defaultValue="1") Integer pageNo,
|
|
|
+ @RequestParam(name="pageSize", defaultValue="10") Integer pageSize) {
|
|
|
+ // Step.1 组装查询条件
|
|
|
+ QueryWrapper<SysUser> queryWrapper = QueryGenerator.initQueryWrapper(sysUser, request.getParameterMap());
|
|
|
+ List<OrderItem>orderItems=new ArrayList<>();
|
|
|
+ if (queryWrapper.getExpression().getOrderBy()!=null&&queryWrapper.getExpression().getOrderBy().size()>0){
|
|
|
+ String[] s = queryWrapper.getExpression().getOrderBy().get(0).getSqlSegment().split(" ");
|
|
|
+ OrderItem orderItem=new OrderItem();
|
|
|
+ orderItem.setColumn(s[0]);
|
|
|
+ orderItem.setAsc(true);
|
|
|
+ if (s[1].equals("DESC")){
|
|
|
+ orderItem.setAsc(false);
|
|
|
+ }if (s[0].equals("create_time")){
|
|
|
+ orderItem.setColumn("work_no");
|
|
|
+ }
|
|
|
+ orderItems.add(orderItem);
|
|
|
+ }
|
|
|
+ //Step.2 AutoPoi 导出Excel
|
|
|
+ ModelAndView mv = new ModelAndView(new JeecgEntityExcelView());
|
|
|
+ Page<SysUser> page = new Page<SysUser>(1, 10000);
|
|
|
+ page.setOrders(orderItems);
|
|
|
+ //update-begin--Author:kangxiaolin Date:20180825 for:[03]用户导出,如果选择数据则只导出相关数据--------------------
|
|
|
+ String selections = request.getParameter("selections");
|
|
|
+ if(!oConvertUtils.isEmpty(selections)){
|
|
|
+ queryWrapper.in("id",selections.split(","));
|
|
|
+ }
|
|
|
+ String rzStartDate="";
|
|
|
+ String rzEndDate="";
|
|
|
+ String syStartDate="";
|
|
|
+ String syEndDate="";
|
|
|
+ if (oConvertUtils.isNotEmpty(sysUser.getRzDate())){
|
|
|
+ String[] split = sysUser.getRzDate().split(",");
|
|
|
+ rzStartDate=split[0];
|
|
|
+ rzEndDate=split[1];
|
|
|
+ }if (oConvertUtils.isNotEmpty(sysUser.getSyDate())){
|
|
|
+ String[] split = sysUser.getSyDate().split(",");
|
|
|
+ syStartDate=split[0];
|
|
|
+ syEndDate=split[1];
|
|
|
+ }
|
|
|
+ List<String> mySubDepIdsByDepId=null;
|
|
|
+ LoginUser sysUsers = (LoginUser) SecurityUtils.getSubject().getPrincipal();
|
|
|
+ List<SysUserRole> userRole = sysUserRoleService.list(new QueryWrapper<SysUserRole>().lambda().eq(SysUserRole::getUserId, sysUsers.getId()));
|
|
|
+ if (userRole!=null&&userRole.size()>0){
|
|
|
+ for (SysUserRole role:userRole){
|
|
|
+ if (role.getRoleId().equals("1462659329857978370")){
|
|
|
+ SysDepart one = sysDepartService.getOne(new QueryWrapper<SysDepart>().lambda().eq(SysDepart::getOrgCode, sysUsers.getOrgCode()));
|
|
|
+ if (one!=null&&!one.getOrgType().equals("0")){
|
|
|
+ mySubDepIdsByDepId = sysDepartService.getMySubDepIdsByDepId(one.getId());
|
|
|
+ }
|
|
|
+ }
|
|
|
+ }
|
|
|
+ }
|
|
|
+ //update-end--Author:kangxiaolin Date:20180825 for:[03]用户导出,如果选择数据则只导出相关数据----------------------
|
|
|
+ List<String> subDepIdsByDepId=null;
|
|
|
+ List<String> status=null;
|
|
|
+ List<String> category=null;
|
|
|
+ if (sysUser.getOrgCodeTxt()!=null){
|
|
|
+ subDepIdsByDepId= sysDepartService.getSubDepIdsByDepId(sysUser.getOrgCodeTxt());
|
|
|
+ }if (sysUser.getEmpStatus()!=null&&!"".equals(sysUser.getEmpStatus())){
|
|
|
+ status=Arrays.asList(sysUser.getEmpStatus().split(","));
|
|
|
+ }if (sysUser.getCategorys()!=null&&!"".equals(sysUser.getCategorys())){
|
|
|
+ category=Arrays.asList(sysUser.getCategorys().toString().split(","));
|
|
|
+ }
|
|
|
+ List<SysUser> pageList = sysUserMapper.kQueryUser(page, sysUser,subDepIdsByDepId,mySubDepIdsByDepId,status,category,rzStartDate,rzEndDate,syStartDate,syEndDate);
|
|
|
+ List<UserVacation>us=new ArrayList<>();
|
|
|
+ List<String>userids=new ArrayList<>();
|
|
|
+ if (pageList.size()>0){
|
|
|
+ for (SysUser ls:pageList){
|
|
|
+ userids.add(ls.getId());
|
|
|
+ }
|
|
|
+ if(userids.size()>0){
|
|
|
+ pageList.forEach(item->{
|
|
|
+ UserVacation uv=new UserVacation();
|
|
|
+ uv.setWorkNo(item.getWorkNo());
|
|
|
+ uv.setRealname(item.getRealname());
|
|
|
+ List<SysUserDepVo> depNamesByUserIds = sysUserMapper.getDepNamesByUserIds(Arrays.asList(item.getId().split(",")));
|
|
|
+ if (depNamesByUserIds!=null&&depNamesByUserIds.size()>0&&!depNamesByUserIds.get(0).getOrgType().equals("0")){
|
|
|
+ String code=depNamesByUserIds.get(0).getOrgCode();
|
|
|
+ List<String>codes=new ArrayList<>();
|
|
|
+ for (int i=0;i<code.length();i=i+2){
|
|
|
+ codes.add(code.substring(0,i+2));
|
|
|
+ }
|
|
|
+ List<SysDepart> sysDeparts = sysDepartService.listDeptTop(codes);
|
|
|
+ if (sysDeparts!=null&&sysDeparts.size()>0){
|
|
|
+ sysDeparts.forEach(str->{
|
|
|
+ if (str.getOrgType().equals("1")){
|
|
|
+ uv.setDeptName(str.getDepartName());
|
|
|
+ }else if (str.getOrgType().equals("2")){
|
|
|
+ uv.setDeptName2(str.getDepartName());
|
|
|
+ }
|
|
|
+ });
|
|
|
+ }
|
|
|
+ }
|
|
|
+ Map<String, Object> map = weixinUserService.U8Vacation(item.getId());
|
|
|
+ if (map!=null&&map.size()>0){
|
|
|
+ uv.setSyYear(map.get("syYearCount").toString());
|
|
|
+ uv.setSyTx(map.get("txCount").toString());
|
|
|
+ }
|
|
|
+ us.add(uv);
|
|
|
+ });
|
|
|
+ }
|
|
|
+
|
|
|
+ }
|
|
|
+
|
|
|
+
|
|
|
+ //导出文件名称
|
|
|
+ mv.addObject(NormalExcelConstants.FILE_NAME, "员工假期列表");
|
|
|
+ mv.addObject(NormalExcelConstants.CLASS, UserVacation.class);
|
|
|
+ LoginUser user = (LoginUser) SecurityUtils.getSubject().getPrincipal();
|
|
|
+ String sName="员工假期列表";
|
|
|
+ ExportParams exportParams = new ExportParams("员工假期列表", "导出人:"+user.getRealname(), sName);
|
|
|
+ exportParams.setImageBasePath(upLoadPath);
|
|
|
+ mv.addObject(NormalExcelConstants.PARAMS, exportParams);
|
|
|
+ mv.addObject(NormalExcelConstants.DATA_LIST, us);
|
|
|
+ return mv;
|
|
|
+ }
|
|
|
+
|
|
|
|
|
|
/**
|
|
|
* 导出excel
|
|
@@ -2801,7 +2925,8 @@ public class SysUserController {
|
|
|
@ApiOperation(value="人事变动-编辑", notes="人事变动-编辑")
|
|
|
@PutMapping(value = "/userChageEdit")
|
|
|
public Result<?> userChageEdit(@RequestBody UserChage userChage) throws IOException, ParseException {
|
|
|
- userChageService.updateById(userChage);
|
|
|
+ // userChageService.updateById(userChage);
|
|
|
+ userChageService.updateId(userChage.getId(),userChage.getState().toString());
|
|
|
weixinUserService.editUserChange();
|
|
|
return Result.OK("编辑成功!");
|
|
|
}
|
|
@@ -2818,7 +2943,7 @@ public class SysUserController {
|
|
|
@ApiOperation(value="入职,离职信息-编辑", notes="入职,离职信息-编辑")
|
|
|
@PutMapping(value = "/userQuitEdit")
|
|
|
public Result<?> userQuitEdit(@RequestBody UserQuit userQuit) throws IOException, ParseException {
|
|
|
- boolean b = userQuitService.updateById(userQuit);
|
|
|
+ boolean b = userQuitService.updateId(userQuit.getId(),userQuit.getState().toString());
|
|
|
weixinUserService.UserQuits();
|
|
|
return Result.OK("编辑成功!");
|
|
|
}
|