package com.rzyc.controller; import com.alibaba.fastjson.JSON; import com.alibaba.fastjson.JSONArray; import com.common.utils.*; import com.common.utils.encryption.PasswdFactory; import com.common.utils.jwt.JwtUtil; import com.common.utils.model.*; import com.github.pagehelper.Page; import com.github.pagehelper.PageHelper; import com.rzyc.advice.LoginAuth; import com.rzyc.bean.UserDepart; import com.rzyc.bean.check.CheckList; import com.rzyc.bean.check.CheckPerform; import com.rzyc.bean.ent.CompaniesDto; import com.rzyc.bean.index.AreaDangerNum; import com.rzyc.bean.index.IndexDangerNum; import com.rzyc.bean.index.IndexOrgInfo; import com.rzyc.bean.index.StayFactor; import com.rzyc.bean.index.dto.IndexEntPageDto; import com.rzyc.bean.user.*; import com.rzyc.bean.user.dutyTree.DutyTrees; import com.rzyc.bean.user.task.TaskDetailDto; import com.rzyc.bean.user.task.TaskPageDto; import com.rzyc.bean.user.dto.*; import com.rzyc.config.MethodAnnotation; import com.rzyc.enums.*; import com.rzyc.model.*; import com.rzyc.model.ent.SysEnterprise; import com.rzyc.model.log.SysLogs; import com.rzyc.model.oth.OtheWareHouse; import com.rzyc.model.personal.SysResource; import com.rzyc.model.user.*; import io.swagger.annotations.*; import org.apache.commons.beanutils.BeanUtils; import org.apache.commons.beanutils.ConvertUtils; import org.apache.commons.beanutils.converters.DateConverter; import org.springframework.security.access.prepost.PreAuthorize; import org.springframework.stereotype.Controller; import org.springframework.transaction.annotation.Transactional; import org.springframework.validation.annotation.Validated; import org.springframework.web.bind.annotation.*; import javax.servlet.http.HttpServletRequest; import javax.validation.Valid; import java.util.*; /** * PC个人中心 */ @Api(tags = "PC个人中心") @CrossOrigin("*") @RequestMapping("pcPersonal") @Controller @Validated public class PcPersonalController extends com.rzyc.controller.BaseController { /** * PC登录 * @param loginDto * @return * @throws Exception */ @ApiOperation(value = "PC政府用户登录", notes = "PC政府用户登录") @PostMapping(value = "/pclogin") /*@PreAuthorize("hasAnyAuthority('pclogin','pclogin:update')") @MethodAnnotation(authorizations = {"pclogin","pclogin:update"},name = "PC政府用户登录")*/ @ResponseBody public SingleResult pclogin(@Valid LoginDto loginDto)throws Exception{ SingleResult result = new SingleResult<>(); System.out.println("loginDto -> "+JSONArray.toJSONString(loginDto)); String sysusername = loginDto.getSysusername(); String syspassword = loginDto.getSyspassword(); //获取验证码 String generateCode = request.getSession().getAttribute(constantsConfigure.getGenerateCodeKey())+""; //验证码只能使用一次 request.getSession().removeAttribute(constantsConfigure.getGenerateCodeKey()); if(loginDto.getGenerateCode().equals(generateCode)){ SysUser sysUser = sysUserMapper.findBySysUserName(sysusername); //登录的是政府用户 if(null != sysUser && StringUtils.isNotBlank(sysUser.getUsertype()) && sysUser.getUsertype().equals("政府用户")){ String ps = PasswdFactory.encryptPasswd(sysUser.getSysuserid(), sysusername, syspassword); System.out.println("========" + ps); if(sysUser.getSyspassword().equals(ps)){ sysUser.setSyspassword(""); //获取职务 sysUser = getUserDuty(sysUser); //通过角色判断是否为安办 或者 部门管理员 if(StringUtils.isNotBlank(sysUser.getUserroles())){ Integer userRole = this.getUserRole(sysUser.getUserroles()); sysUser.setUserRole(userRole); } //获取用户令牌 String userToken = JwtUtil.createToken(sysUser.getSysuserid()); sysUser.setUserToken(userToken); this.addLogAuth(sysUser.getSysuserid(),"登录","成功",""); result.setData(sysUser); }else{ this.addLogAuth(sysUser.getSysuserid(),"登录","失败",""); result.setCode(Code.PASSWORD_ERROR.getCode()); result.setMessage(Message.PASSWORD_ERROR); } }else{ result.setCode(Code.PASSWORD_ERROR.getCode()); result.setMessage(Message.PASSWORD_ERROR); } }else{ result.setCode(Code.CODE_ERROT.getCode()); result.setMessage(Message.CODE_ERROT); } return result; } /** * @Description: PC管理员登录 * @Author ZQW * @CreateTime 2022/10/12 14:08 */ @ApiOperation(value = "PC管理员登录", notes = "PC管理员登录") @PostMapping(value = "/pcManageLogin") /*@PreAuthorize("hasAnyAuthority('pcManageLogin','pcManageLogin:update')") @MethodAnnotation(authorizations = {"pcManageLogin","pcManageLogin:update"},name = "PC管理员登录")*/ @ResponseBody public SingleResult pcManageLogin(@Valid LoginDto loginDto)throws Exception{ SingleResult result = new SingleResult<>(); System.out.println("loginDto -> "+JSONArray.toJSONString(loginDto)); String sysusername = loginDto.getSysusername(); String syspassword = loginDto.getSyspassword(); //获取验证码 String generateCode = request.getSession().getAttribute(constantsConfigure.getGenerateCodeKey())+""; //验证码只能使用一次 request.getSession().removeAttribute(constantsConfigure.getGenerateCodeKey()); if(loginDto.getGenerateCode().equals(generateCode)){ SysUser sysUser = sysUserMapper.findBySysUserName(sysusername); //登录的是管理员 if(null != sysUser && StringUtils.isNotBlank(sysUser.getUsertype()) && sysUser.getUsertype().equals("政府用户") & sysUser.getManageState() == IsManage.MANAGE.getState()){ String ps = PasswdFactory.encryptPasswd(sysUser.getSysuserid(), sysusername, syspassword); System.out.println("========" + ps); if(sysUser.getSyspassword().equals(ps)){ sysUser.setSyspassword(""); //获取职务 sysUser = getUserDuty(sysUser); //通过角色判断是否为安办 或者 部门管理员 if(StringUtils.isNotBlank(sysUser.getUserroles())){ Integer userRole = this.getUserRole(sysUser.getUserroles()); sysUser.setUserRole(userRole); } //获取用户令牌 String userToken = JwtUtil.createToken(sysUser.getSysuserid()); sysUser.setUserToken(userToken); this.addLogAuth(sysUser.getSysuserid(),"登录","成功",""); result.setData(sysUser); }else{ this.addLogAuth(sysUser.getSysuserid(),"登录","失败",""); result.setCode(Code.PASSWORD_ERROR.getCode()); result.setMessage(Message.PASSWORD_ERROR); } }else{ result.setCode(Code.PASSWORD_ERROR.getCode()); result.setMessage(Message.PASSWORD_ERROR); } }else{ result.setCode(Code.CODE_ERROT.getCode()); result.setMessage(Message.CODE_ERROT); } return result; } /** * 用户功能项 * @param userId * @return * @throws Exception */ @LoginAuth @ApiOperation(value = "用户功能项", notes = "用户功能项") @PostMapping(value = "/userResource/{userId}") @ResponseBody public MultiResult userResource(@Valid @PathVariable String userId)throws Exception{ MultiResult result = new MultiResult<>(); System.out.println("userId -> "+userId); SysUser sysUser = sysUserMapper.findById(userId); if(null != sysUser){ System.out.println(sysUser.getUserroles()); List resources = sysResourceMapper.findByRoleId(sysUser.getUserroles()); if(resources.size() > 0){ //获取树形结构 JSONArray resourcesTree = handleResouceTree(resources); List sysResources = JSONArray.parseArray(JSONArray.toJSONString(resourcesTree),SysResource.class); result.setData(sysResources); }else{ result.setCode(Code.NO_DATA.getCode()); result.setMessage(Message.NO_DATA); } }else{ result.setCode(Code.NO_DATA.getCode()); result.setMessage(Message.NO_DATA); } return result; } /** * 功能项树形结构 * @param resources * @return * @throws Exception */ private JSONArray handleResouceTree(List resources)throws Exception{ List> data = new ArrayList<>(); for(SysResource resource : resources){ Map metaMap = JSONArray.parseObject(resource.getMeta(),HashMap.class); if(StringUtils.isBlank(resource.getParentId())){ resource.setParentId(""); } Map entUserMap = new HashMap(); entUserMap.put("resourceId",resource.getResourceId()); entUserMap.put("name",resource.getName()); entUserMap.put("path",resource.getPath()); entUserMap.put("component",resource.getComponent()); entUserMap.put("metas",metaMap); entUserMap.put("parentId",resource.getParentId()); entUserMap.put("redirect",resource.getRedirect()); entUserMap.put("hidden",resource.getHidden()); entUserMap.put("check",resource.getCheck()); data.add(entUserMap); } JSONArray result = TypeConversion.listToTree(JSONArray.parseArray(JSON.toJSONString(data)),"resourceId","parentId","children"); return result; } /** * 用户信息 * @param userId * @return * @throws Exception */ @LoginAuth @ApiOperation(value = "用户信息", notes = "用户信息") @PostMapping(value = "/userInfo/{userId}") @ResponseBody public SingleResult userInfo(@Valid @PathVariable String userId)throws Exception{ SingleResult result = new SingleResult<>(); SysUser sysUser = sysUserMapper.findById(userId); if(null != sysUser){ //获取职务 sysUser = getUserDuty(sysUser); //用户权限 userAuth(sysUser); //数量信息 IndexNum indexNum = indexNum(sysUser.getSystitle(),sysUser.getSysuserid()); sysUser.setIndexNum(indexNum); result.setData(sysUser); }else{ result.setCode(Code.NO_DATA.getCode()); result.setMessage(Message.NO_DATA); } return result; } /** * 代办事项 履职异常 消息通知 数量 */ private IndexNum indexNum(String listPerformId, String sysUserId)throws Exception{ IndexNum indexNum = new IndexNum(); Integer stayNum = 0; Integer warnNum = 0; Integer messageNum = 0; //代办任务数量 Integer year = Calendar.getInstance().get(Calendar.YEAR); Integer month = Calendar.getInstance().get(Calendar.MONTH) + 1; Integer day = DateUtils.getMonthLastDay(year,month); String startTime = year + "-" + month + "-" + day + " 23:59:59"; List oaTasks = new ArrayList<>(); List tasks = oaTaskMapper.findByListPerformId(listPerformId,year+"",startTime, TaskCompleteState.STAYCOMPLETE.getCompleteState()); if(tasks.size() > 0){ oaTasks = stayTask(tasks); } stayNum = oaTasks.size(); System.out.println("stayNum -> "+stayNum); //履职异常数 String time = DateUtils.getNowDateTimeStr("yyyy"); List listFactors = listFactorMapper.userListFactor(listPerformId,time); handleFactorAlert(listFactors); for (ListFactor listFactor : listFactors){ System.out.println("getFactorAlert -> "+listFactor.getFactorAlert()); if(2 == listFactor.getFactorAlert() || 3 == listFactor.getFactorAlert()){ warnNum++; } } System.out.println("warnNum -> "+warnNum); indexNum.setStayNum(stayNum); indexNum.setWarnNum(warnNum); indexNum.setMessageNum(messageNum); return indexNum; } /** * 待办事项 * @param stayMatterDto * @return * @throws Exception */ @LoginAuth @ApiOperation(value = "待办事项", notes = "待办事项") @PostMapping(value = "/stayMatter") @ResponseBody public MultiResult stayMatter(@Valid StayMatterDto stayMatterDto)throws Exception{ MultiResult result = new MultiResult<>(); System.out.println("stayMatterDto -> "+JSONArray.toJSONString(stayMatterDto)); SysUser sysUser = sysUserMapper.findById(stayMatterDto.getUserId()); if(null != sysUser){ Integer year = Calendar.getInstance().get(Calendar.YEAR); Integer month = Calendar.getInstance().get(Calendar.MONTH) + 1; Integer day = DateUtils.getMonthLastDay(year,month); String startTime = year + "-" + month + "-" + day + " 23:59:59"; //任务完成状态 String completeState = ""; if(null != stayMatterDto.getCompleteState()){ completeState = taskCompleteStateMap.get(stayMatterDto.getCompleteState()); }else{ stayMatterDto.setCompleteState(TaskCompleteState.STAYCOMPLETE.getState()); completeState = TaskCompleteState.STAYCOMPLETE.getCompleteState(); } //查询任务 List tasks = oaTaskMapper.findByListPerformId(sysUser.getSystitle(),year+"",startTime,completeState); if(tasks.size() > 0){ //如果选择未完成任务 处理一下 if(TaskCompleteState.STAYCOMPLETE.getState() == stayMatterDto.getCompleteState()){ // tasks = stayTask(tasks); } //处理结束时间 for (OATask oaTask : tasks){ handleEndDate(oaTask); } result.setData(tasks); }else{ result.setData(tasks); } }else{ result.setCode(Code.NO_DATA.getCode()); result.setMessage(Message.NO_DATA); } return result; } /** * 安全生产职责 * @param userId * @return * @throws Exception */ @LoginAuth @ApiOperation(value = "安全生产职责", notes = "安全生产职责") @PostMapping(value = "/dutyList/{userId}") @ResponseBody public MultiResult dutyList(@Valid @PathVariable String userId)throws Exception{ MultiResult result = new MultiResult<>(); SysUser sysUser = sysUserMapper.selectByPrimaryKey(userId); if(null != sysUser && StringUtils.isNotBlank(sysUser.getSystitle())){ List listSafes = listSafeMapper.userListSafe(sysUser.getSystitle()); if(null != listSafes && listSafes.size() > 0){ result.setData(listSafes); }else{ result.setCode(Code.NO_DATA.getCode()); result.setMessage(Message.NO_DATA); } }else{ result.setCode(Code.NO_DATA.getCode()); result.setMessage(Message.NO_DATA); } return result; } /** * 履职清单 * @param factorListDto * @return * @throws Exception */ @LoginAuth @ApiOperation(value = "履职清单", notes = "履职清单") @PostMapping(value = "/factorList") @ResponseBody public MultiResult factorList(@Valid FactorListDto factorListDto)throws Exception{ MultiResult result = new MultiResult<>(); SysUser sysUser = sysUserMapper.selectByPrimaryKey(factorListDto.getUserId()); if(null != sysUser && StringUtils.isNotBlank(sysUser.getSystitle())){ String time = factorListDto.getYear(); if(StringUtils.isBlank(time)){ time = DateUtils.getNowDateTimeStr("yyyy"); } List listFactors = listFactorMapper.userListFactor(sysUser.getSystitle(),time); if(null != listFactors && listFactors.size() > 0){ //处理履职清单 handleFactorAlert(listFactors); result.setData(listFactors); }else{ result.setData(listFactors); } }else{ result.setCode(Code.NO_DATA.getCode()); result.setMessage(Message.NO_DATA); } return result; } /** * 履职进度 * @return * @throws Exception */ @ApiOperation(value = "履职进度", notes = "履职进度") @PostMapping(value = "/factorProgress") @ResponseBody public SingleResult factorProgress(@Valid FactorProgressDto factorProgressDto)throws Exception{ SingleResult result = new SingleResult<>(); SysUser sysUser = sysUserMapper.findById(factorProgressDto.getUserId()); if(null != sysUser){ //更新履职进度 // getFactor(sysUser.getSystitle()); UserDepart userDepart = listPerformMapper.userPerform(sysUser.getSysuserid()); if(null != userDepart){ //当前年份 String nowYear = DateUtils.getNowDateTimeStr("yyyy"); String year = factorProgressDto.getYear(); if(StringUtils.isBlank(year)){ year = DateUtils.getNowDateTimeStr("yyyy"); } //如果是当前年的进度 直接查询 if(nowYear.equals(year)){ if(StringUtils.isNotBlank(userDepart.getCompletion())){ userDepart.setCompletion(TypeConversion.StringToDouble(userDepart.getCompletion()).intValue()+""); }else{ userDepart.setCompletion("0.0"); } }else{ List performIds = new ArrayList<>(); performIds.add(sysUser.getSystitle()); //岗位进度 Map progressMap = getPerformProgress(performIds,year); PerformProgress performProgress = progressMap.get(userDepart.getListPerformId()); if(null != performProgress){ //获取岗位进度 Integer completion = performProgress.getAllprogress(); if(null == completion){ completion = 0; } userDepart.setCompletion(completion+""); //需完成总数 userDepart.setTotal(performProgress.getTotal()); //已完成总数 userDepart.setFinishTotal(performProgress.getFinishTotal()); }else{ userDepart.setCompletion(0+""); //需完成总数 userDepart.setTotal(0); //已完成总数 userDepart.setFinishTotal(0); } } }else{ userDepart.setCompletion("0.0"); } System.out.println("userDepart -> "+userDepart); result.setData(userDepart); }else{ result.setCode(Code.NO_DATA.getCode()); result.setMessage(Message.NO_DATA); } return result; } /** * 下属履职情况 * @return * @throws Exception */ @LoginAuth @ApiOperation(value = "下属履职情况", notes = "下属履职情况") @PostMapping(value = "/subordinatePerform") @ResponseBody public SingleResult> subordinatePerform (@Valid SubordinatePerformDto subordinatePerformDto)throws Exception{ SingleResult> result = new SingleResult<>(); String condition = TypeConversion.getCondition(subordinatePerformDto.getCondition()); //处理年份 String year = subordinatePerformDto.getYear(); if(StringUtils.isBlank(year)){ year = DateUtils.getNowDateTimeStr("yyyy"); } SysUser sysUser = sysUserMapper.selectByPrimaryKey(subordinatePerformDto.getUserId()); if(null != sysUser){ String listPerformId = sysUser.getSystitle(); listPerformId = TypeConversion.getCondition(listPerformId); ListPerform listPerform = listPerformMapper.selectByPrimaryKey(sysUser.getSystitle()); if(null != listPerform && StringUtils.isNotBlank(listPerform.getViewJurisdiction())){ String[] strs = listPerform.getViewJurisdiction().split(","); //可查看的下级职务 List performIds = new ArrayList<>(); for (String str : strs){ if(!str.equals(listPerformId)){ performIds.add(str); } } //分页 PageHelper.startPage(subordinatePerformDto.getPage(), subordinatePerformDto.getPageSize()); Page page = (Page)listPerformMapper.subordinatePerforms(performIds,condition); Pager pager = new Pager<>(); getDatePage(pager,page); List userDeparts = userDeparts = pager.getRows(); if(userDeparts.size() > 0){ handerPerform(userDeparts,year,performIds); pager.setRows(userDeparts); result.setData(pager); }else{ result.setCode(Code.NO_DATA.getCode()); result.setMessage(Message.NO_DATA); } }else{ result.setCode(Code.NO_DATA.getCode()); result.setMessage(Message.NO_DATA); } }else{ result.setCode(Code.NO_DATA.getCode()); result.setMessage(Message.NO_DATA); } return result; } /** * 待办事项详情 * @param taskId * @return * @throws Exception */ @LoginAuth @ApiOperation(value = "待办事项详情", notes = "待办事项详情") @PostMapping(value = "matterDetail/{taskId}") @ResponseBody public SingleResult matterDetail(@Valid @PathVariable String taskId)throws Exception{ SingleResult result = new SingleResult<>(); System.out.println("taskId -> "+taskId); OATask oaTask = oaTaskMapper.findById(taskId); if(null != oaTask){ //结束时间 handleEndDate(oaTask); result.setData(oaTask); }else{ result.setCode(Code.NO_DATA.getCode()); result.setMessage(Message.NO_DATA); } return result; } /** * 清单履职记录 * @return * @throws Exception */ @LoginAuth @ApiOperation(value = "清单履职记录", notes = "清单履职记录") @PostMapping(value = "performRecord/{listFactorId}") @ResponseBody public MultiResult performRecord(@Valid @PathVariable String listFactorId)throws Exception{ MultiResult result = new MultiResult<>(); List listDetails = listDetailMapper.factorDetail(listFactorId,""); if(listDetails.size() > 0){ result.setData(listDetails); }else{ result.setCode(Code.NO_DATA.getCode()); result.setMessage(Message.NO_DATA); } return result; } /** * 履职记录详情 * @param listDetailId * @return * @throws Exception */ @LoginAuth @ApiOperation(value = "履职记录详情", notes = "履职记录详情") @PostMapping(value = "listDetail/{listDetailId}") @ResponseBody public SingleResult listDetail(@Valid @PathVariable String listDetailId)throws Exception{ SingleResult result = new SingleResult<>(); ListDetail listDetail = listDetailMapper.findById(listDetailId); if(null != listDetail){ //清单内容 ListFactor listFactor = listFactorMapper.selectByPrimaryKey(listDetail.getListfactorid()); if(null != listFactor){ listDetail.setFactorCnt(listFactor.getFactorcnt()); } result.setData(listDetail); }else{ result.setCode(Code.NO_DATA.getCode()); result.setMessage(Message.NO_DATA); } return result; } /** * 岗位列表 * @param listperformid * @return * @throws Exception */ @LoginAuth @ApiOperation(value = "岗位列表", notes = "岗位列表") @ApiImplicitParam(name = "listperformid",value = "岗位id,传返回二级岗位 不传返回一级岗位") @PostMapping(value = "performList") @ResponseBody public MultiResult performList(String listperformid)throws Exception{ MultiResult result = new MultiResult<>(); System.out.println("listperformid -> "+listperformid); List listPerforms = listPerformMapper.findBySupClassId(listperformid); if(listPerforms.size() > 0){ result.setData(listPerforms); }else{ result.setCode(Code.NO_DATA.getCode()); result.setMessage(Message.NO_DATA); } return result; } /** * 部门列表 * @param unitId * @return * @throws Exception */ @ApiOperation(value = "部门列表", notes = "部门列表") @ApiImplicitParam(name = "unitId",value = "部门id,传返回二级部门 不传返回一级部门") @PostMapping(value = "unitList") @ResponseBody public MultiResult unitList(String unitId)throws Exception{ MultiResult result = new MultiResult<>(); List units = sysUnitMapper.findByParentId(unitId); if(units.size() > 0){ result.setData(units); }else{ result.setCode(Code.NO_DATA.getCode()); result.setMessage(Message.NO_DATA); } return result; } /** * 政府用户分页 * @param userPageDto * @return * @throws Exception */ @LoginAuth @ApiOperation(value = "政府用户分页", notes = "政府用户分页") @PostMapping(value = "userPage") @ResponseBody public SingleResult> userPage(@Valid UserPageDto userPageDto)throws Exception{ SingleResult> result = new SingleResult<>(); String condition = TypeConversion.getCondition(userPageDto.getCondition()); String userId = getUserId(); //判断查看用户类别 String unitType = UnitType.AREA.getType()+""; SysUser sysUser = sysUserMapper.findById(userId); if(null != sysUser){ SysUnit sysUnit = sysUnitMapper.selectByPrimaryKey(sysUser.getSysunitorentid()); if(null != sysUnit){ unitType = sysUnit.getUnittype(); } } //部门id String unitId = sysUser.getSysunitorentid(); String areaCode = getUserArea(userId); //分页 PageHelper.startPage(userPageDto.getPage(), userPageDto.getPageSize()); Page page = null; //属地类型 String unitEnumType = UnitType.AREA.getType()+""; //判断是属地还是部门 if(unitEnumType.equals(unitType)){ page = (Page)sysUserMapper.govUserList(condition,userPageDto.getUnitId(),userPageDto.getPerformId(),areaCode,userPageDto.getState()); }else{ page = (Page)sysUserMapper.unitUserList(condition,unitId,userPageDto.getState()); } Pager pager = new Pager<>(); getDatePage(pager,page); result.setData(pager); handleUser(pager.getRows()); return result; } /** * 部门树形结构 * @return * @throws Exception */ @ApiOperation(value = "部门树形结构", notes = "部门树形结构") @PostMapping(value = "unitTree") @ResponseBody public MultiResult unitTree()throws Exception{ MultiResult result = new MultiResult<>(); List units = sysUnitMapper.findUnit(); if(units.size() > 0){ JSONArray unitJson = handleUnitTree(units); List sysUnits = JSONArray.parseArray(JSONArray.toJSONString(unitJson),SysUnit.class); result.setData(sysUnits); }else{ result.setCode(Code.NO_DATA.getCode()); result.setMessage(Message.NO_DATA); } return result; } /** * 部门树形结构 * @param sysUnits * @return * @throws Exception */ private JSONArray handleUnitTree(List sysUnits)throws Exception{ List> data = new ArrayList<>(); for(SysUnit unit : sysUnits){ if(StringUtils.isBlank(unit.getSuperiorunitid())){ unit.setSuperiorunitid(""); } Map entUserMap = new HashMap(); entUserMap.put("sysunitid",unit.getSysunitid()); entUserMap.put("unitname",unit.getUnitname()); entUserMap.put("superiorunitid",unit.getSuperiorunitid()); data.add(entUserMap); } JSONArray result = TypeConversion.listToTree(JSONArray.parseArray(JSON.toJSONString(data)),"sysunitid","superiorunitid","children"); return result; } /** * 岗位树形列表 * @return * @throws Exception */ @ApiOperation(value = "岗位树形列表", notes = "岗位树形列表") @PostMapping(value = "performTree") @ResponseBody public MultiResult performTree()throws Exception{ MultiResult result = new MultiResult<>(); List listPerforms = listPerformMapper.findUnit(); if(listPerforms.size() > 0){ for(ListPerform listPerform : listPerforms){ if(StringUtils.isNotBlank(listPerform.getPerformName())){ listPerform.setPerformclassname(listPerform.getPerformclassname()+"("+listPerform.getPerformName()+")"); } } JSONArray performJson = handlePerformTree(listPerforms); List performs = JSONArray.parseArray(JSONArray.toJSONString(performJson),ListPerform.class); result.setData(performs); }else{ result.setCode(Code.NO_DATA.getCode()); result.setMessage(Message.NO_DATA); } return result; } @ApiOperation(value = "新增用户岗位树形列表", notes = "新增用户岗位树形列表") @PostMapping(value = "performTreeUser") @ResponseBody public MultiResult performTreeUser()throws Exception{ MultiResult result = new MultiResult<>(); List listPerforms = listPerformMapper.findAll(); if(listPerforms.size() > 0){ for(ListPerform listPerform : listPerforms){ if(StringUtils.isNotBlank(listPerform.getPerformName())){ listPerform.setPerformclassname(listPerform.getPerformclassname()+"("+listPerform.getPerformName()+")"); } } JSONArray performJson = handlePerformTree(listPerforms); List performs = JSONArray.parseArray(JSONArray.toJSONString(performJson),ListPerform.class); result.setData(performs); }else{ result.setCode(Code.NO_DATA.getCode()); result.setMessage(Message.NO_DATA); } return result; } /** * 岗位树形结构 * @param listPerforms * @return * @throws Exception */ private JSONArray handlePerformTree(List listPerforms)throws Exception{ List> data = new ArrayList<>(); for(ListPerform perform : listPerforms){ if(StringUtils.isBlank(perform.getSupclassid())){ perform.setSupclassid(""); } Map entUserMap = new HashMap(); entUserMap.put("listperformid",perform.getListperformid()); entUserMap.put("performclassname",perform.getPerformclassname()); entUserMap.put("performName",perform.getPerformName()); entUserMap.put("supclassid",perform.getSupclassid()); data.add(entUserMap); } JSONArray result = TypeConversion.listToTree(JSONArray.parseArray(JSON.toJSONString(data)),"listperformid","supclassid","children"); return result; } /** * 新增、修改用户信息 * @return * @throws Exception */ @LoginAuth @ApiOperation(value = "新增、修改用户信息", notes = "新增、修改用户信息") @PostMapping(value = "changeUser") @ResponseBody public SingleResult changeUser(@Valid ChangeUserDto changeUserDto)throws Exception{ SingleResult result = new SingleResult<>(); SysUser sysUser = new SysUser(); BeanUtils.copyProperties(sysUser,changeUserDto); System.out.println("sysUser -> "+JSONArray.toJSONString(sysUser)); System.out.println("userId -> " + sysUser.getSysuserid()); //操作人 SysUser operator = getUser(changeUserDto.getUserId()); sysUser.setModifiedby(operator.getChinaname()); sysUser.setCreatedby(operator.getChinaname()); sysUser.setModifiedon(new Date()); sysUser.setCreatedon(new Date()); sysUser.setUsertype(UserType.GOV.getType()); //监管地区 sysUser.setSuperviseArea(changeUserDto.getSuperviseAreaId()); SysUser user = sysUserMapper.findById(sysUser.getSysuserid()); if(null != user){ //修改 if(!sysUser.getSyspassword().equals(user.getSyspassword())){ String passwd = PasswdFactory.encryptPasswd(sysUser.getSysuserid(), sysUser.getSysusername(), sysUser.getSyspassword()); sysUser.setSyspassword(passwd); }else{ String passwd = user.getSyspassword(); sysUser.setSyspassword(passwd); } //判断用户名是否存在 user = sysUserMapper.findOtherUesr(sysUser.getSysusername(),sysUser.getSysuserid()); if(null == user){ sysUserMapper.changeUser(sysUser); //处理监管地区 changeSuperviseArea(sysUser.getSysuserid(),changeUserDto.getSuperviseAreaId(),operator.getChinaname()); }else{ result.setCode(Code.ERROR.getCode()); result.setMessage(Message.HAS_USERNAME); } }else{ //判断用户名是否存在 user = sysUserMapper.findBySysUserName(sysUser.getSysusername()); if(null == user){ //密码 String passwd = PasswdFactory.encryptPasswd(sysUser.getSysuserid(), sysUser.getSysusername(), sysUser.getSyspassword()); sysUser.setSyspassword(passwd); sysUserMapper.insert(sysUser); //处理监管地区 changeSuperviseArea(sysUser.getSysuserid(),changeUserDto.getSuperviseAreaId(),operator.getChinaname()); }else{ result.setCode(Code.ERROR.getCode()); result.setMessage(Message.HAS_USERNAME); } } return result; } /** * 处理监管地区 * @param userId * @param superviseAreaId * @throws Exception */ private void changeSuperviseArea(String userId,String superviseAreaId,String chinaname)throws Exception{ /*//删除用户监管地区 sysUserAreaMapper.delByUserId(userId); if(StringUtils.isNotBlank(superviseAreaId)){ String[] strs = superviseAreaId.split(","); for (String str : strs){ SysUserArea userArea = new SysUserArea(); userArea.setUserAreaId(RandomNumber.getUUid()); userArea.setUserId(userId); userArea.setOrgcode(str); userArea.setModified(chinaname); userArea.setCreated(chinaname); userArea.setModifyTime(new Date()); userArea.setCreateTime(new Date()); sysUserAreaMapper.insert(userArea); } }*/ } /** * 地区列表 * @return * @throws Exception */ @LoginAuth @ApiOperation(value = "地区列表", notes = "地区列表") @PostMapping(value = "orgList") @ResponseBody public MultiResult orgList()throws Exception{ MultiResult result = new MultiResult<>(); List sysOrgs = getSysOrg(constantsConfigure.getSuperiorOrgCode()); if(sysOrgs.size() > 0){ result.setData(sysOrgs); }else{ result.setCode(Code.NO_DATA.getCode()); result.setMessage(Message.NO_DATA); } return result; } /** * 地区列表,查询包括新都区 * @return * @throws Exception */ @LoginAuth @ApiOperation(value = "地区列表包括一级", notes = "地区列表包括一级") @PostMapping(value = "orgListHighLevel") @ResponseBody public MultiResult orgListHighLevel()throws Exception{ MultiResult result = new MultiResult<>(); List sysOrgs = getSysOrgHighLevel(); if(sysOrgs.size() > 0){ result.setData(sysOrgs); }else{ result.setCode(Code.NO_DATA.getCode()); result.setMessage(Message.NO_DATA); } return result; } /** * 履职记录 * @return * @throws Exception */ @LoginAuth @ApiOperation(value = "履职记录", notes = "履职记录") @PostMapping(value = "performRecord") @ResponseBody public SingleResult> performRecord(@Valid PerformRecordDto performRecordDto)throws Exception{ SingleResult> result = new SingleResult<>(); SysUser sysUser = sysUserMapper.findById(performRecordDto.getUserId()); if(null != sysUser){ //未选择年份 则默认当前年份 String year = performRecordDto.getYear(); if(StringUtils.isBlank(year)){ year = DateUtils.getNowDateTimeStr("yyyy"); } String performId = sysUser.getSystitle(); String condition = TypeConversion.getCondition(performRecordDto.getCondition()); PageHelper.startPage(performRecordDto.getPage(), performRecordDto.getPageSize()); Page page = (Page)listDetailMapper.performRecord(performId,condition,year); Pager pager = new Pager<>(); getDatePage(pager,page); result.setData(pager); }else{ result.setCode(Code.NO_DATA.getCode()); result.setMessage(Message.NO_DATA); } return result; } /** * 新增履职记录 * @return * @throws Exception */ @LoginAuth @ApiOperation(value = "新增履职记录", notes = "新增履职记录") @PostMapping(value = "addPerformRecord") @ResponseBody public SingleResult addPerformRecord(@Valid @RequestBody AddPerformRecordDto addPerformRecordDto)throws Exception{ SingleResult result = new SingleResult<>(); ListDetailWithBLOBs listDetail = new ListDetailWithBLOBs(); DateConverter converter = new DateConverter(); converter.setPattern(new String("yyyy-MM-dd")); ConvertUtils.register(converter, Date.class); BeanUtils.copyProperties(listDetail,addPerformRecordDto); //处理时间 listDetail.setStarttime(DateUtils.parseString2Date(addPerformRecordDto.getStarttime(),"yyyy-MM-dd")); listDetail.setEndtime(DateUtils.parseString2Date(addPerformRecordDto.getEndtime(),"yyyy-MM-dd")); listDetail.setFinishtime(listDetail.getEndtime()); String chinaName = getChinaName(); System.out.println("chinaName -> "+chinaName); listDetail.setCreatedby(chinaName); listDetail.setModifiedby(chinaName); listDetail.setIsfinish(IsFinish.YES.getFinish()); listDetail.setDelState(DelState.NOT_DEL.getState()); listDetailMapper.insert(listDetail); //清单id String listfactorid = listDetail.getListfactorid(); //修改履职档案完成情况 factorProgres(listfactorid); //如果是通过任务添加的履职信息 修改任务状态 String taskId = addPerformRecordDto.getTaskId(); if(StringUtils.isNotBlank(taskId)){ String[] strs = taskId.split(","); List taskIds = Arrays.asList(strs); for (String str : taskIds){ OATask oaTask = oaTaskMapper.findById(str); if(null != oaTask){ //修改任务状态 changeTaskState(oaTask,listfactorid); } } } System.out.println("listDetail -> "+JSONArray.toJSONString(listDetail)); return result; } /** * 角色列表 * @return * @throws Exception */ @LoginAuth @ApiOperation(value = "角色列表", notes = "角色列表") @PostMapping(value = "roleList") @ResponseBody public MultiResult roleList()throws Exception{ MultiResult result = new MultiResult<>(); List sysRoles = sysRoleMapper.findAll(); if(sysRoles.size() > 0){ result.setData(sysRoles); }else{ result.setCode(Code.NO_DATA.getCode()); result.setMessage(Message.NO_DATA); } return result; } /** * 修改履职记录 * @param addPerformRecordDto * @return * @throws Exception */ @LoginAuth @ApiOperation(value = "修改履职记录", notes = "修改履职记录") @PostMapping(value = "changePerformRecord") @ResponseBody public SingleResult changePerformRecord(@Valid @RequestBody AddPerformRecordDto addPerformRecordDto)throws Exception{ SingleResult result = new SingleResult<>(); ListDetailWithBLOBs listDetail = new ListDetailWithBLOBs(); BeanUtils.copyProperties(listDetail,addPerformRecordDto); //处理时间 listDetail.setStarttime(DateUtils.parseString2Date(addPerformRecordDto.getStarttime(),"yyyy-MM-dd")); listDetail.setEndtime(DateUtils.parseString2Date(addPerformRecordDto.getEndtime(),"yyyy-MM-dd")); listDetail.setFinishtime(listDetail.getEndtime()); String chinaName = getChinaName(); System.out.println("chinaName -> "+chinaName); listDetail.setCreatedby(chinaName); listDetail.setModifiedby(chinaName); listDetail.setIsfinish(IsFinish.YES.getFinish()); listDetail.setDelState(DelState.NOT_DEL.getState()); listDetailMapper.changeListDetail(listDetail); //清单id String listfactorid = listDetail.getListfactorid(); //修改履职档案完成情况 factorProgres(listfactorid); //如果是通过任务添加的履职信息 String taskId = addPerformRecordDto.getTaskId(); if(StringUtils.isNotBlank(taskId)){ String[] strs = taskId.split(","); List taskIds = Arrays.asList(strs); for (String str : taskIds){ OATask oaTask = oaTaskMapper.findById(str); if(null != oaTask){ //修改任务状态 changeTaskState(oaTask,listfactorid); } } } System.out.println("listDetail -> "+JSONArray.toJSONString(listDetail)); return result; } /** * 删除履职记录 * @param listdetailid * @return * @throws Exception */ @LoginAuth @ApiOperation(value = "删除履职记录", notes = "删除履职记录") @ApiImplicitParam(name = "listdetailid",value = "履职记录id 多个逗号隔开") @PostMapping(value = "delPerformRecord/{listdetailid}") @ResponseBody public SingleResult delPerformRecord(@PathVariable String listdetailid)throws Exception{ SingleResult result = new SingleResult<>(); String[] strs = listdetailid.split(","); List listdetailids = Arrays.asList(strs); for (String listIds : listdetailids){ ListDetailWithBLOBs listDetail = listDetailMapper.findById(listIds); if(null != listDetail){ String chinaName = getChinaName(); listDetailMapper.changeSelState(listIds, DelState.DELETE.getState(),chinaName); //修改履职档案完成情况 factorProgres(listDetail.getListfactorid()); } } return result; } /** * 未完成的履职任务 * @param factorId * @return * @throws Exception */ @LoginAuth @ApiOperation(value = "未完成的履职任务", notes = "未完成的履职任务") @ApiImplicitParam(name = "factorId",value = "清单id") @PostMapping(value = "factorTask/{factorId}") @ResponseBody public MultiResult factorTask(@PathVariable String factorId)throws Exception{ MultiResult result = new MultiResult<>(); List tasks = oaTaskMapper.notFinishTask(factorId); if(tasks.size() > 0 ){ result.setData(tasks); }else{ result.setCode(Code.NO_DATA.getCode()); result.setMessage(Message.NO_DATA); } return result; } /** * 部门分页 * @return * @throws Exception */ @LoginAuth @ApiOperation(value = "部门分页", notes = "部门分页") @PostMapping(value = "unitPage") @ResponseBody public SingleResult> unitPage(@Valid UnitPageDto unitPageDto)throws Exception{ SingleResult> result = new SingleResult<>(); String condition = TypeConversion.getCondition(unitPageDto.getCondition()); PageHelper.startPage(unitPageDto.getPage(), unitPageDto.getPageSize()); Page page = (Page)sysUnitMapper.findByName(condition,unitPageDto.getUnitId()); Pager pager = new Pager<>(); getDatePage(pager,page); result.setData(pager); return result; } /** * 修改新增部门 * @return * @throws Exception */ @LoginAuth @ApiOperation(value = "修改新增部门", notes = "修改新增部门") @PostMapping(value = "changeUnit") @ResponseBody public SingleResult changeUnit(@Valid ChangeUnitDto changeUnitDto)throws Exception{ SingleResult result = new SingleResult<>(); SysUnit sysUnit = new SysUnit(); BeanUtils.copyProperties(sysUnit,changeUnitDto); //操作人 String chinaName = getChinaName(); sysUnit.setCreatedby(chinaName); sysUnit.setModifiedby(chinaName); sysUnit.setCreatedon(new Date()); sysUnit.setModifiedon(new Date()); //查重 SysUnit unit = sysUnitMapper.selectByPrimaryKey(sysUnit.getSysunitid()); if(null != unit){ sysUnitMapper.changeUnit(sysUnit); }else{ //新增 sysUnitMapper.insert(sysUnit); } return result; } /** * 角色分页 * @return * @throws Exception */ @LoginAuth @ApiOperation(value = "角色分页", notes = "角色分页") @PostMapping(value = "rolePage") @ResponseBody public SingleResult> rolePage(@Valid RolePageDto rolePageDto)throws Exception{ SingleResult> result = new SingleResult<>(); String condition = TypeConversion.getCondition(rolePageDto.getCondition()); PageHelper.startPage(rolePageDto.getPage(), rolePageDto.getPageSize()); Page page = (Page)sysRoleMapper.rolePage(condition); Pager pager = new Pager<>(); getDatePage(pager,page); result.setData(pager); return result; } /** * 修改新增角色 * @return * @throws Exception */ @LoginAuth @ApiOperation(value = "修改新增角色", notes = "修改新增角色") @PostMapping(value = "changeRole") @ResponseBody public SingleResult changeRole(@Valid ChangeRoleDto changeRoleDto)throws Exception{ SingleResult result = new SingleResult<>(); SysRole sysRole = new SysRole(); BeanUtils.copyProperties(sysRole,changeRoleDto); //操作人 String chinaName = getChinaName(); sysRole.setCreatedby(chinaName); sysRole.setModifiedby(chinaName); sysRole.setCreatedon(new Date()); sysRole.setModifiedon(new Date()); SysRole role = sysRoleMapper.selectByPrimaryKey(sysRole.getSysroleid()); if(null != role){ sysRoleMapper.changeRole(sysRole); }else{ sysRoleMapper.insert(sysRole); } return result; } /** * 角色功能 * @param roleId * @return * @throws Exception */ @LoginAuth @ApiOperation(value = "角色功能", notes = "角色功能") @PostMapping(value = "roleResource/{roleId}") @ResponseBody public MultiResult roleResource(@PathVariable String roleId)throws Exception{ MultiResult result = new MultiResult<>(); List resources = sysResourceMapper.roleResource(roleId); if(resources.size() > 0){ for (SysResource resource : resources){ if(StringUtils.isBlank(resource.getRoleResourceId())){ resource.setCheck(2); } } //获取树形结构 JSONArray resourcesTree = handleResouceTree(resources); List sysResources = JSONArray.parseArray(JSONArray.toJSONString(resourcesTree),SysResource.class); result.setData(sysResources); }else{ result.setCode(Code.NO_DATA.getCode()); result.setMessage(Message.NO_DATA); } return result; } /** * 修改角色功能 * @return * @throws Exception */ @LoginAuth @ApiOperation(value = "修改角色功能", notes = "修改角色功能") @PostMapping(value = "changeRoleResource") @ResponseBody public SingleResult changeRoleResource(@Valid @RequestBody RoleResourceDto roleResourceDto)throws Exception{ SingleResult result = new SingleResult<>(); SysRole sysRole = sysRoleMapper.selectByPrimaryKey(roleResourceDto.getRoleId()); if(null != sysRole){ //先删除角色资源 sysRoleResourceMapper.delRoleId(roleResourceDto.getRoleId()); String[] strs = roleResourceDto.getResourceIds().split(","); List resourceIds = Arrays.asList(strs); String chinaName = getChinaName(); if(null != resourceIds && resourceIds.size() > 0){ List roleResources = new ArrayList<>(); for (String resourceId : resourceIds){ SysRoleResource roleResource = new SysRoleResource(); roleResource.setRoleResourceId(RandomNumber.getUUid()); roleResource.setRoleId(roleResourceDto.getRoleId()); roleResource.setResourceId(resourceId); roleResource.setModified(chinaName); roleResource.setCreated(chinaName); roleResource.setModifyTime(new Date()); roleResource.setCreateTime(new Date()); roleResources.add(roleResource); } sysRoleResourceMapper.insertList(roleResources); } } return result; } /** * 岗位列表分页 * @return * @throws Exception */ @LoginAuth @ApiOperation(value = "岗位列表分页", notes = "岗位列表分页") @PostMapping(value = "performPage") @ResponseBody public SingleResult> performPage(@Valid PerformPageDto performPageDto, HttpServletRequest servletRequest)throws Exception{ SingleResult> result = new SingleResult<>(); String condition = TypeConversion.getCondition(performPageDto.getCondition()); String userId = performPageDto.getUserId(); String performId = ""; if(StringUtils.isNotBlank(performPageDto.getUserId())){ SysUser sysUser = sysUserMapper.findById(userId); if(null != sysUser){ performId = sysUser.getSystitle(); } } PageHelper.startPage(performPageDto.getPage(), performPageDto.getPageSize()); Page page = (Page)listPerformMapper.performPage(performPageDto.getListperformid(),performId,condition); Pager pager = new Pager<>(); getDatePage(pager,page); result.setData(pager); return result; } /** * 修改新增岗位 * @param changePerformDto * @return * @throws Exception */ @LoginAuth @ApiOperation(value = "修改新增岗位", notes = "修改新增岗位") @PostMapping(value = "changePerform") @ResponseBody public SingleResult changePerform(@Valid ChangePerformDto changePerformDto)throws Exception{ SingleResult result = new SingleResult<>(); ListPerform listPerform = new ListPerform(); BeanUtils.copyProperties(listPerform,changePerformDto); //操作人 String chinaName = getChinaName(); listPerform.setCreatedby(chinaName); listPerform.setModifiedby(chinaName); listPerform.setCreatedon(new Date()); listPerform.setModifiedon(new Date()); ListPerform perform = listPerformMapper.selectByPrimaryKey(listPerform.getListperformid()); if(null != perform){ //修改 listPerformMapper.changeListPerform(listPerform); }else{ listPerform.setCompletion("0"); String performClassCode = "001"; if(StringUtils.isNotBlank(listPerform.getSupclassid())){ perform = listPerformMapper.selectByPrimaryKey(listPerform.getSupclassid()); performClassCode = GetSysOrganCode(perform);//生成 } listPerform.setPerformclasscode(performClassCode); //新增 listPerformMapper.insert(listPerform); } return result; } /** * 岗位安全生产职责清单 * @param listperformId * @return * @throws Exception */ @LoginAuth @ApiOperation(value = "岗位安全生产职责清单", notes = "岗位安全生产职责清单") @PostMapping(value = "performSafe") @ResponseBody public MultiResult performSafe(String listperformId)throws Exception{ MultiResult result = new MultiResult<>(); List listSafes = listSafeMapper.userListSafe(listperformId); if(listSafes.size() > 0){ Integer sortId = 1; for (ListSafeWithBLOBs listSafe : listSafes){ if(null == listSafe.getSortid()){ listSafe.setSortid(sortId); } sortId++; } result.setData(listSafes); }else{ result.setCode(Code.NO_DATA.getCode()); result.setMessage(Message.NO_DATA); } return result; } /** * 修改新增安全生产职责清单 * @return * @throws Exception */ @LoginAuth @ApiOperation(value = "修改新增安全生产职责清单", notes = "修改新增安全生产职责清单") @PostMapping(value = "changeListSafe") @ResponseBody public SingleResult changeListSafe(@Valid ChangeSafeDto changeSafeDto)throws Exception{ SingleResult result = new SingleResult<>(); ListSafeWithBLOBs listSafe = new ListSafeWithBLOBs(); BeanUtils.copyProperties(listSafe,changeSafeDto); //操作人 String chinaName = getChinaName(); listSafe.setCreatedby(chinaName); listSafe.setModifiedby(chinaName); listSafe.setCreatedon(new Date()); listSafe.setModifiedon(new Date()); listSafe.setChkbilldate(new Date()); ListSafe safe = listSafeMapper.selectByPrimaryKey(listSafe.getListsafeid()); if(null != safe){ listSafeMapper.changeSafe(listSafe); }else{ listSafeMapper.insert(listSafe); } return result; } /** * 删除安全生产职责清单 * @param listSafeId * @return * @throws Exception */ @LoginAuth @ApiOperation(value = "删除安全生产职责清单", notes = "删除安全生产职责清单") @ApiImplicitParam(name = "listSafeId",value = "安全生产职责清单id 多个逗号隔开",required = true) @PostMapping(value = "delListSafe") @ResponseBody public SingleResult delListSafe(String listSafeId)throws Exception{ SingleResult result = new SingleResult<>(); String[] strs = listSafeId.split(","); List listSafeIds = Arrays.asList(strs); if(null != listSafeIds && listSafeIds.size() > 0){ listSafeMapper.delInId(listSafeIds); } return result; } /** * 岗位履职清单分页 * @return * @throws Exception */ @LoginAuth @ApiOperation(value = "岗位履职清单分页", notes = "岗位履职清单分页") @PostMapping(value = "factorPage") @ResponseBody public SingleResult> factorPage(@Valid FactorPageDto factorPageDto)throws Exception{ SingleResult> result = new SingleResult<>(); String condition = TypeConversion.getCondition(factorPageDto.getCondition()); PageHelper.startPage(factorPageDto.getPage(), factorPageDto.getPageSize()); Page page = (Page)listFactorMapper.factorPage(factorPageDto.getListPerformId(),factorPageDto.getYear(),condition,factorPageDto.getType()); Pager pager = new Pager<>(); getDatePage(pager,page); Integer start = (factorPageDto.getPage() - 1) * factorPageDto.getPageSize(); start += 1; for (ListFactor listFactor : pager.getRows()){ listFactor.setListnum(start+""); start++; } result.setData(pager); return result; } /** * 修改新增履职清单 * @return * @throws Exception */ @LoginAuth @ApiOperation(value = "修改新增履职清单", notes = "修改新增履职清单") @PostMapping(value = "changeFactor") @ResponseBody public SingleResult changeFactor(@Valid ChangeFactorDto changeFactorDto)throws Exception{ SingleResult result = new SingleResult<>(); ListFactor listFactor = new ListFactor(); BeanUtils.copyProperties(listFactor,changeFactorDto); //操作人 String chinaName = getChinaName(); listFactor.setCreatedby(chinaName); listFactor.setModifiedby(chinaName); listFactor.setCreatedon(new Date()); listFactor.setModifiedon(new Date()); //数据初始 Integer sortId = listFactorMapper.findSortId(listFactor.getListperformid(),listFactor.getSysyear()); if(null == sortId){ sortId = 1; } sortId++; listFactor.setIsfinish(IsFinish.NOT.getFinish()); listFactor.setFinishProgres(0+""); listFactor.setListnum("1"); listFactor.setFactorIsFinish(IsFinish.NOT.getFinish()); listFactor.setSortid(sortId); listFactor.setDelState(DelState.NOT_DEL.getState()); ListFactor factor = listFactorMapper.selectByPrimaryKey(listFactor.getListfactorid()); if(null != factor){ //先修改原清单为删除状态 listFactorMapper.delFactor(listFactor.getListfactorid()); //修改成功后 在重新新增一条履职清单 listFactor.setDelState(DelState.NOT_DEL.getState()); listFactor.setListfactorid(RandomNumber.getUUid()); listFactorMapper.insert(listFactor); //修改 // listFactorMapper.changeFactor(listFactor); }else{ listFactorMapper.insert(listFactor); } //添加任务 String userId = getUserId(); addFactorTask(listFactor,userId); //修改总体履职进度 changeListPerForm(listFactor.getListperformid()); return result; } /** * 删除履职清单 * @param delFactorDto * @return * @throws Exception */ @LoginAuth @ApiOperation(value = "删除履职清单", notes = "删除履职清单") @PostMapping(value = "delFactor") @ResponseBody public SingleResult delFactor(@Valid DelFactorDto delFactorDto)throws Exception{ SingleResult result = new SingleResult<>(); String[] strs = delFactorDto.getListFactorId().split(","); List listFactorIds = Arrays.asList(strs); if(null != listFactorIds && listFactorIds.size() > 0){ for (String factorId : listFactorIds){ listFactorMapper.delFactor(factorId); } } //修改总体履职进度 changeListPerForm(delFactorDto.getListperformid()); return result; } /** * 修改密码 * @return * @throws Exception */ @ApiOperation(value = "修改密码", notes = "修改密码") @PostMapping(value = "changePasswd") @ResponseBody public SingleResult changePasswd(@Valid ChangePasswdDto changePasswdDto)throws Exception{ SingleResult result = new SingleResult<>(); SysUser sysUser = sysUserMapper.findById(changePasswdDto.getUserId()); if(null != sysUser){ if (changePasswdDto.getNowPasswd().matches(Constants.PASSWORD_REGULAR)){ String oldPasswd = PasswdFactory.encryptPasswd(sysUser.getSysuserid(), sysUser.getSysusername(),changePasswdDto.getOldPasswd()); if(sysUser.getSyspassword().equals(oldPasswd)){ String nowPasswd = PasswdFactory.encryptPasswd(sysUser.getSysuserid(), sysUser.getSysusername(),changePasswdDto.getNowPasswd()); sysUserMapper.changePassword(changePasswdDto.getUserId(),nowPasswd); }else{ result.setCode(Code.PASSWORD_ERROR.getCode()); result.setMessage(Message.PASSWORD_ERROR); } }else{ result.setCode(Code.ERROR.getCode()); result.setMessage(Message.PASSWORD); } }else{ result.setCode(Code.NO_DATA.getCode()); result.setMessage(Message.NO_DATA); } return result; } /** * 履职类别详细 * * */ @LoginAuth @ApiOperation(value = "履职类别详细", notes = "履职类别详细") @ApiImplicitParam(name = "listPerformId",value = "清单id") @PostMapping(value = "listPerformDetail") @ResponseBody public SingleResult listPerformDetail(String listPerformId)throws Exception{ SingleResult singleResult = new SingleResult(); ListPerform listPerform = listPerformMapper.selectListPerformDetail(listPerformId); if (listPerform != null){ singleResult.setMessage(Message.SUCCESS); singleResult.setCode(Code.SUCCESS.getCode()); singleResult.setData(listPerform); }else { singleResult.setMessage(Message.ERROR); singleResult.setCode(Code.ERROR.getCode()); } return singleResult; } /** * 接收任务管理 * @return * @throws Exception */ @LoginAuth @ApiOperation(value = "接收任务管理", notes = "接收任务管理") @PostMapping(value = "taskPage") @ResponseBody public SingleResult> taskPage(@Valid TaskPageDto taskPageDto)throws Exception{ SingleResult> result = new SingleResult<>(); List sysUserIds = getReceiveTaskUserId(taskPageDto.getUserId()); if(sysUserIds.size() > 0){ String condition = TypeConversion.getCondition(taskPageDto.getCondition()); PageHelper.startPage(taskPageDto.getPage(), taskPageDto.getPageSize()); Page page = (Page)oaTaskMapper.receiveTaskPages(sysUserIds,condition,taskPageDto.getTasktype()); if(page.getTotal() > 0){ Pager pager = new Pager<>(); getDatePage(pager,page); result.setData(pager); }else{ result.setCode(Code.NO_DATA.getCode()); result.setMessage(Message.NO_DATA); } }else{ result.setCode(Code.NO_DATA.getCode()); result.setMessage(Message.NO_DATA); } return result; } /** * 任务类型列表 * @return * @throws Exception */ @LoginAuth @ApiOperation(value = "任务类型列表", notes = "任务类型列表") @PostMapping(value = "taskType") @ResponseBody public MultiResult taskType()throws Exception{ MultiResult result = new MultiResult<>(); List taskTypes = oaTaskTypeMapper.findBySortId(); if(taskTypes.size() > 0){ result.setData(taskTypes); }else{ result.setCode(Code.NO_DATA.getCode()); result.setMessage(Message.NO_DATA); } return result; } /** * 任务详情 * @param taskDetailDto * @return * @throws Exception */ /*@LoginAuth @ApiOperation(value = "任务详情", notes = "任务详情") @PostMapping(value = "taskDetail") @ResponseBody public SingleResult taskDetail(@Valid TaskDetailDto taskDetailDto)throws Exception{ SingleResult result = new SingleResult<>(); OATask oaTask = oaTaskMapper.taskDetail(taskDetailDto.getTaskId(),taskDetailDto.getUserId()); if(null != oaTask){ //任务详情处理 getTaskDetail(oaTask,taskDetailDto.getUserId()); handleTaskDetail(oaTask); result.setData(oaTask); }else{ result.setCode(Code.NO_DATA.getCode()); result.setMessage(Message.NO_DATA); } return result; }*/ // /** // * 任务详情 // * @param taskDetailDto // * @return // * @throws Exception // */ // @LoginAuth // @ApiOperation(value = "任务详情", notes = "任务详情") // @PostMapping(value = "taskDetail") // @ResponseBody // public SingleResult taskDetail(@Valid TaskDetailDto taskDetailDto)throws Exception{ // SingleResult result = new SingleResult<>(); // OATask oaTask = oaTaskMapper.taskDetail(taskDetailDto.getTaskId(),taskDetailDto.getUserId()); // if(null != oaTask){ // //任务详情处理 // getTaskDetail(oaTask,taskDetailDto.getUserId()); // handleTaskDetail(oaTask); // result.setData(oaTask); // }else{ // result.setCode(Code.NO_DATA.getCode()); // result.setMessage(Message.NO_DATA); // } // return result; // } /** * 认证日志分页 * @return * @throws Exception */ @LoginAuth @ApiOperation(value = "认证日志分页", notes = "认证日志分页") @PostMapping("/authLog") @ResponseBody public SingleResult> authLog(@Valid AuthLogDto authLogDto)throws Exception{ SingleResult> result = new SingleResult<>(); String condition = TypeConversion.getCondition(authLogDto.getCondition()); PageHelper.startPage(authLogDto.getPage(), authLogDto.getPageSize()); Page page = (Page)sysLogAuthMapper.findAll(condition); if(page.getTotal() > 0){ Pager pager = new Pager<>(); getDatePage(pager,page); result.setData(pager); }else{ result.setCode(Code.NO_DATA.getCode()); result.setMessage(Message.NO_DATA); } return result; } /** * 操作日志 * @param authLogDto * @return * @throws Exception */ @LoginAuth @ApiOperation(value = "操作日志", notes = "操作日志") @PostMapping("/logsPage") @ResponseBody public SingleResult> logsPage(@Valid AuthLogDto authLogDto)throws Exception{ SingleResult> result = new SingleResult<>(); String condition = TypeConversion.getCondition(authLogDto.getCondition()); PageHelper.startPage(authLogDto.getPage(), authLogDto.getPageSize()); Page page = (Page)sysLogsMapper.findAll(condition); if(page.getTotal() > 0){ Pager pager = new Pager<>(); getDatePage(pager,page); result.setData(pager); }else{ result.setCode(Code.NO_DATA.getCode()); result.setMessage(Message.NO_DATA); } return result; } /** * 街道用户树形 * @return * @throws Exception */ @ApiOperation(value = "街道用户树形", notes = "街道用户树形") @PostMapping("/streetUser/{userId}") @ResponseBody public MultiResult streetUser(@PathVariable String userId)throws Exception{ MultiResult result = new MultiResult<>(); String areaCode = getUserArea(userId); if(StringUtils.isNotBlank(areaCode)){ List users = sysUserMapper.findByArea(areaCode); List streetUsers = new ArrayList<>(); if(users.size() > 0){ //格式化 Map> userMap = new LinkedHashMap<>(); for (SysUser sysUser : users){ List sysUsers = new ArrayList<>(); String deptName = sysUser.getSuperName(); String postName = sysUser.getPerformClassName(); postName = postName.replaceAll(deptName,""); postName = deptName + postName; String key = sysUser.getSystitle()+","+postName; if(userMap.containsKey(key)){ sysUsers = userMap.get(key); } sysUsers.add(sysUser); userMap.put(key,sysUsers); } for (Map.Entry> entry : userMap.entrySet()){ StreetUser streetUser = new StreetUser(); String[] strs = entry.getKey().split(","); streetUser.setListperformid(strs[0]); streetUser.setPerformclassname(strs[1]); streetUser.setUsers(entry.getValue()); streetUsers.add(streetUser); } } result.setData(streetUsers); }else{ result.setCode(Code.NO_DATA.getCode()); result.setMessage(Message.NO_DATA); } return result; } /** * 街道用户列表 * @return * @throws Exception */ @ApiOperation(value = "街道用户列表", notes = "街道用户列表") @PostMapping("/streetUserList") @ResponseBody @LoginAuth public MultiResult streetUserList(@Valid StreetUserListDto streetUserListDto)throws Exception{ MultiResult result = new MultiResult<>(); String areaCode = getUserArea(streetUserListDto.getUserId()); if(StringUtils.isNotBlank(areaCode)){ String condition = TypeConversion.getCondition(streetUserListDto.getCondition()); List users = sysUserMapper.areaUser(areaCode,condition,streetUserListDto.getUserId()); if(users.size() > 0){ for (SysUser sysUser : users){ if(StringUtils.isNotBlank(sysUser.getPerformClassName())){ String deptName = sysUser.getPerformClassName(); sysUser.setChinaname(deptName+"-"+sysUser.getChinaname()); } } result.setData(users); }else{ result.setCode(Code.NO_DATA.getCode()); result.setMessage(Message.NO_DATA); } }else{ result.setCode(Code.NO_DATA.getCode()); result.setMessage(Message.NO_DATA); } return result; } /** * 修改责任树 * @return * @throws Exception */ @ApiOperation(value = "修改责任树", notes = "修改责任树") @PostMapping("/changeDutyTree") @ResponseBody @LoginAuth @Transactional public synchronized SingleResult changeDutyTree(@Valid ChangeDutyTreeDto changeDutyTreeDto)throws Exception{ SingleResult result = new SingleResult<>(); List targetIds = new ArrayList<>(); //修改前企业id if(2 == changeDutyTreeDto.getTargetType()){ List trees = dutyTreeMapper.findByUserId(changeDutyTreeDto.getUserId()); if(null != trees && trees.size() > 0){ for (DutyTree dutyTree : trees){ targetIds.add(dutyTree.getTargetId()); } } } //删除原来的信息 dutyTreeMapper.delByUserId(changeDutyTreeDto.getUserId(),changeDutyTreeDto.getTargetType()); if(StringUtils.isNotBlank(changeDutyTreeDto.getTargetId())){ String[] strs = changeDutyTreeDto.getTargetId().split(","); String chinaName = getChinaName(); List dutyTrees = new ArrayList<>(); for (String str : strs){ //记录被选择的企业id if(2 == changeDutyTreeDto.getTargetType()){ targetIds.add(str); } DutyTree dutyTree = new DutyTree(); dutyTree.setDutyTreeId(RandomNumber.getUUid()); dutyTree.setTargetId(str); dutyTree.setUserId(changeDutyTreeDto.getUserId()); dutyTree.setTargetType(changeDutyTreeDto.getTargetType()); dutyTree.setCreated(chinaName); dutyTree.setModified(chinaName); dutyTree.setCreateTime(new Date()); dutyTree.setModifyTime(new Date()); dutyTrees.add(dutyTree); } //批量插入 dutyTreeMapper.insertList(dutyTrees); } //选择企业不为空 if(targetIds.size() > 0){ sysEnterpriseMapper.changeChoiceNum(targetIds); } return result; } /** * 在执行一次 * @param changeDutyTreeDto */ private void dutyTreeChange(ChangeDutyTreeDto changeDutyTreeDto){ try { //删除原来的信息 dutyTreeMapper.delByUserId(changeDutyTreeDto.getUserId(),changeDutyTreeDto.getTargetType()); if(StringUtils.isNotBlank(changeDutyTreeDto.getTargetId())){ String[] strs = changeDutyTreeDto.getTargetId().split(","); String chinaName = getChinaName(); List dutyTrees = new ArrayList<>(); for (String str : strs){ DutyTree dutyTree = new DutyTree(); dutyTree.setDutyTreeId(RandomNumber.getUUid()); dutyTree.setTargetId(str); dutyTree.setUserId(changeDutyTreeDto.getUserId()); dutyTree.setTargetType(changeDutyTreeDto.getTargetType()); dutyTree.setCreated(chinaName); dutyTree.setModified(chinaName); dutyTree.setCreateTime(new Date()); dutyTree.setModifyTime(new Date()); dutyTrees.add(dutyTree); } //批量插入 dutyTreeMapper.insertList(dutyTrees); } }catch (Exception e){ e.printStackTrace(); } } /** * 责任树用户列表 * @return * @throws Exception */ @ApiOperation(value = "责任树用户列表", notes = "责任树用户列表") @GetMapping("/dutyTreeUser/{userId}") @ApiImplicitParam(name = "userId",value = "用户id",required = true) @ResponseBody @LoginAuth public MultiResult dutyTreeUser(@PathVariable String userId)throws Exception{ MultiResult result = new MultiResult<>(); List users = userTree(userId); if(users.size() > 0){ result.setData(users); }else{ result.setCode(Code.NO_DATA.getCode()); result.setMessage(Message.NO_DATA); } return result; } /** * 责任树企业列表 * @return * @throws Exception */ @ApiOperation(value = "责任树企业列表", notes = "责任树企业列表") @GetMapping("/dutyTreeEnt/{userId}") @ApiImplicitParam(name = "userId",value = "用户id",required = true) @ResponseBody @LoginAuth public MultiResult dutyTreeEnt(@PathVariable String userId)throws Exception{ MultiResult result = new MultiResult<>(); List enterprises = entTree(userId); if(enterprises.size() > 0){ result.setData(enterprises); }else{ result.setCode(Code.NO_DATA.getCode()); result.setMessage(Message.NO_DATA); } return result; } /** * 用户责任树 * @return * @throws Exception */ @ApiOperation(value = "用户责任树", notes = "用户责任树") @GetMapping("/userDutyTree/{userId}") @ApiImplicitParam(name = "userId",value = "用户id",required = true) @ResponseBody public MultiResult userDutyTree(@PathVariable String userId)throws Exception{ MultiResult result = new MultiResult<>(); SysUser sysUser = sysUserMapper.findById(userId); if(null != sysUser){ List dutyTrees = new ArrayList<>(); DutyTrees dutyTree = new DutyTrees(); dutyTree.setId(sysUser.getSysuserid()); dutyTree.setText(sysUser.getChinaname()); Integer userNum = dutyTreeMapper.countUser(userId); Integer entNum = dutyTreeMapper.countEnt(userId); dutyTree.setUserNum(userNum); dutyTree.setEntNum(entNum); List childrens = getChindTree(userId); dutyTree.setAreas(childrens); dutyTrees.add(dutyTree); result.setData(dutyTrees); }else{ result.setCode(Code.NO_DATA.getCode()); result.setMessage(Message.NO_DATA); } return result; } /** * 获取子级用户 * @return * @throws Exception */ public List getChindTree(String userId)throws Exception{ List childrens = new LinkedList<>(); //子级用户 List users = userTree(userId); if(null != users && users.size() > 0){ for (SysUser user : users){ DutyTrees userDuty = new DutyTrees(); userDuty.setId(user.getSysuserid()); Integer completeNum = 0; Integer totalNum = 0; CheckPerform checkPerform = getCheckPerform(user); if(null != checkPerform && checkPerform.getCheckList().size() > 0){ for(CheckList checkList : checkPerform.getCheckList()){ completeNum += checkList.getCompleteNum(); totalNum += checkList.getTotalNum(); } } String text = user.getChinaname(); text = text + "("+completeNum+"/"+totalNum+")"; userDuty.setText(text); Integer userNum = dutyTreeMapper.countUser(user.getSysuserid()); Integer entNum = dutyTreeMapper.countEnt(user.getSysuserid()); userDuty.setUserNum(userNum); userDuty.setEntNum(entNum); childrens.add(userDuty); } } List enterprises = entTree(userId); if(null != enterprises && enterprises.size() > 0){ for(SysEnterprise enterprise : enterprises){ DutyTrees entDuty = new DutyTrees(); entDuty.setId(enterprise.getSysenterpriseid()); entDuty.setText(enterprise.getEntname()); entDuty.setType(2); if(null != enterprise.getCheckNum() && enterprise.getCheckNum() > 0){ entDuty.setCheckState(1); } childrens.add(entDuty); } } return childrens; } /** * 包片的人 * @param userId * @return * @throws Exception */ public List userTree(String userId)throws Exception{ List users = sysUserMapper.dutyTreeUser(userId); if(users.size() > 0){ for (SysUser sysUser : users){ if(StringUtils.isNotBlank(sysUser.getPerformClassName())){ String performClassName = sysUser.getPerformClassName(); /*//显示总长度 Integer total = 14; Integer performLenght = sysUser.getPerformClassName().length(); Integer chinaNameLenght = sysUser.getChinaname().length(); //减去用户名剩下的长度 total = total - chinaNameLenght; System.out.println("total ------------> "+total); System.out.println("performLenght ------------> "+performLenght); //如果岗位长度超过总长度 则截取后面部门 if(performLenght > total){ //需要截取的长度 Integer needTotal = performLenght - total; System.out.println("needTotal -----------------> "+needTotal); // performClassName = performClassName.substring(needTotal,performLenght); performClassName = "..." + performClassName; }*/ sysUser.setChinaname(performClassName+"-"+sysUser.getChinaname()); } } } return users; } /** * 包片的企业 * @param userId * @return * @throws Exception */ public List entTree(String userId)throws Exception{ List enterprises = sysEnterpriseMapper.dutyTreeEnt(userId); return enterprises; } /** * 用户责任树子级 * @return * @throws Exception */ @ApiOperation(value = "用户责任树子级", notes = "用户责任树子级") @GetMapping("/userDutyTreeChild/{id}") @ApiImplicitParam(name = "id",value = "id",required = true) @ResponseBody public MultiResult userDutyTreeChild(@PathVariable String id)throws Exception{ MultiResult result = new MultiResult<>(); List childrens = getChindTree(id); if(null != childrens && childrens.size() > 0){ result.setData(childrens); }else{ result.setCode(Code.NO_DATA.getCode()); result.setMessage(Message.NO_DATA); } return result; } @ApiOperation(value = "首页本年隐患数据", notes = "首页本年隐患数据") @GetMapping("/indexDangerNum/{userId}") @ApiImplicitParam(name = "userId",required = true,value = "用户id") @ResponseBody public SingleResult indexDangerNum(@PathVariable String userId)throws Exception{ SingleResult result = new SingleResult<>(); IndexDangerNum indexDangerNum = new IndexDangerNum(); String areaCode = getUserArea(userId); String year = Calendar.getInstance().get(Calendar.YEAR)+""; year = TypeConversion.getCondition(year+""); Integer total = 0; Integer rectifyedNum = bookEntHTMapper.countByUserArea("已整改",year,areaCode); Integer rectifyingNum = bookEntHTMapper.countByUserArea("整改中",year,areaCode); Integer notRectifyNum = bookEntHTMapper.countByUserArea("未整改",year,areaCode); total = rectifyedNum + rectifyingNum + notRectifyNum; indexDangerNum.setTotal(total); indexDangerNum.setRectifyedNum(rectifyedNum); indexDangerNum.setRectifyingNum(rectifyingNum); indexDangerNum.setNotRectifyNum(notRectifyNum); result.setData(indexDangerNum); return result; } @ApiOperation(value = "首页隐患统计", notes = "首页隐患统计") @GetMapping("/indexAreaDangerNum/{userId}/{type}") @ApiImplicitParams({ @ApiImplicitParam(name = "userId",required = true,value = "用户id"), @ApiImplicitParam(name = "type",required = true,value = "类型 1、月 2、年") }) @ResponseBody public MultiResult indexAreaDangerNum(@PathVariable String userId,@PathVariable Integer type)throws Exception{ MultiResult result = new MultiResult<>(); String areaCode = getUserArea(userId); String year = Calendar.getInstance().get(Calendar.YEAR)+""; if(1 == type){ Integer month = Calendar.getInstance().get(Calendar.MONTH)+1; if(month < 10){ year = year + "-0" + month; }else{ year = year + "-" + month; } } year = TypeConversion.getCondition(year+""); List dangerNums = bookEntHTMapper.userAreaDangerNum(areaCode,year); result.setData(dangerNums); return result; } @ApiOperation(value = "首页机构检查信息", notes = "首页机构检查信息") @GetMapping("/indexOrgInfo/{userId}") @ApiImplicitParam(name = "userId",required = true,value = "用户id") @ResponseBody public SingleResult indexOrgInfo(@PathVariable String userId)throws Exception{ SingleResult result = new SingleResult<>(); String areaCode = getUserArea(userId); String year = Calendar.getInstance().get(Calendar.YEAR)+""; year = TypeConversion.getCondition(year+""); Integer totalEnt = orgEnterpriseMapper.countOrgEntNum(areaCode); Integer checkEntNum = orgBatchMapper.countCheckEntNum(areaCode,year); Integer notCheckEntNum = totalEnt - checkEntNum; Integer commonlyNum = orgDangerMapper.countByLevel(areaCode,year,2); Integer majorNum = orgDangerMapper.countByLevel(areaCode,year,1); IndexOrgInfo indexOrgInfo = new IndexOrgInfo(); indexOrgInfo.setTotalEnt(totalEnt); indexOrgInfo.setCheckEntNum(checkEntNum); indexOrgInfo.setNotCheckEntNum(notCheckEntNum); indexOrgInfo.setCommonlyNum(commonlyNum); indexOrgInfo.setMajorNum(majorNum); result.setData(indexOrgInfo); return result; } /** * PC企业列表 * @return */ @ApiOperation(value = "PC企业列表", notes = "PC企业列表") @GetMapping("/indexEntPage") @ResponseBody public SingleResult> indexEntPage(@Valid IndexEntPageDto indexEntPageDto)throws Exception { SingleResult singleResult = new SingleResult(); Pager pager = new Pager<>(); String areaCode = getUserArea(indexEntPageDto.getUserId()); String condition = TypeConversion.getCondition(indexEntPageDto.getCondition()); PageHelper.startPage(indexEntPageDto.getPage(), indexEntPageDto.getPageSize()); Page object = (Page)sysEnterpriseMapper.userEntList(condition,areaCode); getDatePage(pager,object); if (object != null){ for(SysEnterprise enterprise : pager.getRows()){ String orgName = enterprise.getStreetName(); if(StringUtils.isNotBlank(enterprise.getCommunityName())){ orgName = orgName + "-" + enterprise.getCommunityName(); } enterprise.setOrgName(orgName); //隐患整改数量 Integer notRectificationCount = enterprise.getDangerCount() - enterprise.getRectifiedCount() - enterprise.getRectificationCount(); enterprise.setNotRectificationCount(notRectificationCount); } singleResult.setData(pager); }else { singleResult.setMessage(Message.NO_DATA); singleResult.setCode(Code.NO_DATA.getCode()); } return singleResult; } @ApiOperation(value = "首页代办事项", notes = "首页代办事项") @GetMapping("/indexStayFactor/{userId}") @ApiImplicitParam(name = "userId",required = true,value = "用户id") @ResponseBody public SingleResult indexStayFactor(@PathVariable String userId)throws Exception{ SingleResult result = new SingleResult<>(); StayFactor stayFactor = new StayFactor(); //岗位id String listPerformId = ""; SysUser sysUser = sysUserMapper.selectByPrimaryKey(userId); if(null != sysUser){ listPerformId = sysUser.getSystitle(); } Integer completeNum = oaTaskMapper.countComplete(listPerformId); Integer overtimeNum = oaTaskMapper.countOvertime(listPerformId); Integer conductNum = oaTaskMapper.countConduct(listPerformId); stayFactor.setCompleteNum(completeNum); stayFactor.setOvertimeNum(overtimeNum); stayFactor.setConductNum(conductNum); result.setData(stayFactor); return result; } }