package com.ruoyi.project.tr.hiddenDangerCheck.controller;
|
|
import com.github.pagehelper.util.StringUtil;
|
import com.ruoyi.common.utils.DateUtils;
|
import com.ruoyi.common.utils.StringUtils;
|
import com.ruoyi.common.utils.poi.ExcelUtil;
|
import com.ruoyi.common.utils.poi.ExcelUtilByDangerLedger;
|
import com.ruoyi.common.utils.security.ShiroUtils;
|
import com.ruoyi.doublePrevention.entity.PreventRiskDangerInfo;
|
import com.ruoyi.doublePrevention.service.RiskService;
|
import com.ruoyi.framework.aspectj.lang.annotation.Log;
|
import com.ruoyi.framework.aspectj.lang.enums.BusinessType;
|
import com.ruoyi.framework.web.controller.BaseController;
|
import com.ruoyi.framework.web.domain.AjaxResult;
|
import com.ruoyi.framework.web.page.TableDataInfo;
|
import com.ruoyi.project.mobile.domain.ApiResult;
|
import com.ruoyi.project.mobile.service.ApiHiddenDangerCheckService;
|
import com.ruoyi.project.system.company.service.ICompanyService;
|
import com.ruoyi.project.system.dept.domain.Dept;
|
import com.ruoyi.project.system.dept.service.IDeptService;
|
import com.ruoyi.project.system.role.service.IRoleService;
|
import com.ruoyi.project.system.user.domain.User;
|
import com.ruoyi.project.system.user.service.IUserService;
|
import com.ruoyi.project.tr.hiddenDangerCheck.domain.HiddenDangerCheck;
|
import com.ruoyi.project.tr.hiddenDangerCheck.service.IHiddenDangerCheckService;
|
import com.ruoyi.project.tr.hiddenDangerCheckPoint.domain.HiddenDangerCheckPoint;
|
import com.ruoyi.project.tr.hiddenDangerCheckPoint.domain.HiddenDangerCheckPointExport;
|
import com.ruoyi.project.tr.hiddenDangerCheckPoint.service.IHiddenDangerCheckPointService;
|
import lombok.Data;
|
import org.apache.commons.lang3.ObjectUtils;
|
import org.springframework.beans.factory.annotation.Autowired;
|
import org.springframework.stereotype.Controller;
|
import org.springframework.transaction.annotation.Transactional;
|
import org.springframework.ui.ModelMap;
|
import org.springframework.web.bind.annotation.*;
|
|
import java.math.BigDecimal;
|
import java.text.NumberFormat;
|
import java.text.ParseException;
|
import java.text.SimpleDateFormat;
|
import java.util.*;
|
|
/**
|
* 隐患台账Controller
|
*
|
* @date 2020-05-08
|
*/
|
@Controller
|
@RequestMapping("/tr/hiddenDangerCheck/dangerLedger")
|
public class DangerLedgerController extends BaseController {
|
private String prefix = "tr/hiddenDangerCheck/dangerLedger";
|
|
@Autowired
|
private IHiddenDangerCheckPointService hiddenDangerCheckPointService;
|
|
@Autowired
|
private IUserService userService;
|
|
@Autowired
|
private IDeptService deptService;
|
|
@Autowired
|
private IRoleService roleService;
|
|
@Autowired
|
private ICompanyService companyService;
|
@Autowired
|
private RiskService riskService;
|
|
|
@PostMapping("/export")
|
@ResponseBody
|
public AjaxResult export(String companyId, HiddenDangerCheckPoint hiddenDangerCheckPoint, String dateRangeLedger, String rectifyStatusLedger, String rectifyDeptIdLedger) {
|
// User userQuery = new User();
|
String companyName = "";//公司名称(显示在导出的文件名字中区分)
|
if (!StringUtils.isEmpty(companyId)) {
|
// userQuery.setCompanyId(Long.valueOf(companyId));
|
hiddenDangerCheckPoint.setCompanyId(Long.valueOf(companyId));
|
companyName = companyService.selectCompanyById(Long.valueOf(companyId)).getCompanyName();
|
} else {
|
// userQuery.setCompanyId(getSysUser().getCompanyId());
|
hiddenDangerCheckPoint.setCompanyId(Long.valueOf(getSysUser().getCompanyId()));
|
companyName = companyService.selectCompanyById(getSysUser().getCompanyId()).getCompanyName();
|
}
|
// List<User> userList = userService.selectUserList(userQuery);
|
// List<Long> userIdList = new ArrayList<>();
|
// for (User user : userList) {
|
// userIdList.add(user.getUserId());
|
// }
|
|
// if (userIdList.size() == 0) {
|
// List<HiddenDangerCheckPointExport> exportListEmpty = new ArrayList<>();
|
// ExcelUtil<HiddenDangerCheckPointExport> utilEmpty = new ExcelUtil<HiddenDangerCheckPointExport>(HiddenDangerCheckPointExport.class);
|
// return utilEmpty.exportExcel(exportListEmpty, companyName + "隐患排查台账");
|
// }
|
|
// hiddenDangerCheckPoint.setLedgerUserIdList(userIdList);//隐患整改人ID 为登陆账号companyId下的userId的
|
|
//日期区间
|
if (!StringUtils.isEmpty(dateRangeLedger)) {
|
if (("近一周").equals(dateRangeLedger)) {
|
hiddenDangerCheckPoint.setParams(ApiHiddenDangerCheckService.getDaySevenRange());
|
} else if (("近一月").equals(dateRangeLedger)) {
|
hiddenDangerCheckPoint.setParams(ApiHiddenDangerCheckService.getMonthRange());
|
} else if (("近一年").equals(dateRangeLedger)) {
|
hiddenDangerCheckPoint.setParams(ApiHiddenDangerCheckService.getYearRange());
|
}
|
}
|
//整改状态
|
if (!StringUtils.isEmpty(rectifyStatusLedger)) {
|
if (("未整改").equals(rectifyStatusLedger)) {
|
hiddenDangerCheckPoint.setStage("4");
|
hiddenDangerCheckPoint.setRectifyStatus("0");
|
} else if (("未验收").equals(rectifyStatusLedger)) {
|
hiddenDangerCheckPoint.setStage("5");
|
hiddenDangerCheckPoint.setAcceptStatus("0");
|
} else if (("已验收").equals(rectifyStatusLedger)) {
|
hiddenDangerCheckPoint.setStage("5");
|
hiddenDangerCheckPoint.setAcceptStatus("1");
|
} else if (("超期改").equals(rectifyStatusLedger)) {
|
hiddenDangerCheckPoint.setStage("5");
|
hiddenDangerCheckPoint.setOverdueRectify("1");
|
}
|
}
|
//整改部门
|
if (!StringUtils.isEmpty(rectifyDeptIdLedger)) {
|
hiddenDangerCheckPoint.setRectifyDeptId(Long.valueOf(rectifyDeptIdLedger));
|
}
|
List<HiddenDangerCheckPoint> list = hiddenDangerCheckPointService.selectHiddenDangerCheckPointListNew(hiddenDangerCheckPoint);
|
|
List<HiddenDangerCheckPointExport> exportList = new ArrayList<>();
|
|
for (int i = 0; i < list.size(); i++) {
|
HiddenDangerCheckPoint hcp = list.get(i);
|
HiddenDangerCheckPointExport export = new HiddenDangerCheckPointExport();
|
export.setIndex(String.valueOf(i + 1));
|
if (hcp != null) {
|
|
if (ObjectUtils.isNotEmpty(hcp.getDangerDescription())){
|
export.setDangerDescription(hcp.getDangerDescription());
|
}
|
|
if (ObjectUtils.isNotEmpty(hcp.getCheckPerson())){
|
export.setCheckPerson(hcp.getCheckPerson());
|
}
|
|
if (ObjectUtils.isNotEmpty(hcp.getFindTime())){
|
export.setFindTime(DateUtils.parseDateToStr("yyyy-MM-dd", hcp.getFindTime()));
|
}
|
|
if (ObjectUtils.isNotEmpty(hcp.getDangerLevel())){
|
if (hcp.getDangerLevel().equals("0")){
|
export.setDangerLevel("一般隐患");
|
}else if (hcp.getDangerLevel().equals("1")){
|
export.setDangerLevel("重大隐患");
|
}else if (hcp.getDangerLevel().equals("2")){
|
export.setDangerLevel("不是隐患");
|
}
|
}
|
|
if(ObjectUtils.isNotEmpty(hcp.getRectifyDeadlineTime())){
|
export.setRectifyDeadlineTime(DateUtils.parseDateToStr("yyyy-MM-dd", hcp.getRectifyDeadlineTime()));
|
}
|
|
if (ObjectUtils.isNotEmpty(hcp.getJudgeUserName())){
|
export.setJudgeUserName(hcp.getJudgeUserName());
|
}
|
|
if (ObjectUtils.isNotEmpty(hcp.getRectifyMeasure())){
|
export.setRectifyMeasure(hcp.getRectifyMeasure());
|
}
|
|
if (ObjectUtils.isNotEmpty(hcp.getRectifyCompleteTime())){
|
export.setRectifyCompleteTime(DateUtils.parseDateToStr("yyyy-MM-dd", hcp.getRectifyCompleteTime()));
|
}
|
|
if (ObjectUtils.isNotEmpty(hcp.getAcceptUserName())){
|
export.setAcceptUserName(hcp.getAcceptUserName());
|
}
|
|
if (ObjectUtils.isNotEmpty(hcp.getAcceptCreateTime())){
|
export.setAcceptCreateTime(DateUtils.parseDateToStr("yyyy-MM-dd", hcp.getAcceptCreateTime()));
|
}
|
|
if (ObjectUtils.isNotEmpty(hcp.getAcceptOpinion())){
|
export.setAcceptOpinion(hcp.getAcceptOpinion());
|
}
|
|
}
|
exportList.add(export);
|
}
|
|
// for (int i = 0; i < list.size(); i++) {
|
// HiddenDangerCheckPoint hcp = list.get(i);
|
// HiddenDangerCheckPointExport export = new HiddenDangerCheckPointExport();
|
// export.setIndex(String.valueOf(i + 1));
|
// if (hcp != null) {
|
// //排查方式
|
// if ("2".equals(hcp.getDangerSources())) {
|
// export.setCheckType("隐患上报");
|
// } else {
|
// if ("1".equals(hcp.getCheckType())) {
|
// export.setCheckType("基础清单排查");
|
// } else if ("2".equals(hcp.getCheckType())) {
|
// export.setCheckType("风险单元清单排查");
|
// } else {
|
// export.setCheckType("风险单元清单排查");
|
// }
|
// }
|
//
|
// //基础清单名称
|
// if ("1".equals(hcp.getCheckType()) && !StringUtils.isEmpty(hcp.getRiskName())) {
|
// export.setBaseRiskName(hcp.getRiskName());
|
// } else {
|
// export.setBaseRiskName("-");
|
// }
|
//
|
// //风险单元
|
// if ((!("1".equals(hcp.getCheckType()))) && !StringUtils.isEmpty(hcp.getRiskName())) {
|
// export.setRiskPointName(hcp.getRiskName());
|
// } else {
|
// export.setRiskPointName("-");
|
// }
|
//
|
// //风险单元类型
|
// if ("1".equals(hcp.getRiskType())) {
|
// export.setRiskPointType("设备设施清单");
|
// } else if ("2".equals(hcp.getRiskType())) {
|
// export.setRiskPointType("作业活动清单");
|
// } else if ("3".equals(hcp.getRiskType())) {
|
// export.setRiskPointType("工艺节点清单");
|
// }
|
// // 隐患责任部门
|
// export.setDangerDep(hcp.getRectifyDeptName());
|
//
|
// //隐患名称
|
// export.setDangerName(hcp.getDangerName());
|
//
|
// //隐患描述 todo
|
// export.setDangerDescription(hcp.getDangerDescription());
|
//
|
// //隐患级别
|
// if ("0".equals(hcp.getDangerLevel())) {
|
// export.setDangerLevel("一般隐患");
|
// } else if ("1".equals(hcp.getDangerLevel())) {
|
// export.setDangerLevel("重大隐患");
|
// } else if ("2".equals(hcp.getDangerLevel())) {
|
// export.setDangerLevel("不是隐患");
|
// } else {
|
// export.setDangerLevel("");
|
// }
|
//
|
// //隐患来源
|
// if ("1".equals(hcp.getDangerSources())) {
|
// export.setDangerSources("隐患排查计划");
|
// } else if ("2".equals(hcp.getDangerSources())) {
|
// export.setDangerSources("隐患上报");
|
// } else if ("3".equals(hcp.getDangerSources())) {
|
// export.setDangerSources("定时隐患排查");
|
// } else {
|
// export.setDangerSources("");
|
// }
|
//
|
// //整改完成期限
|
// if(ObjectUtils.isNotEmpty(hcp.getRectifyDeadlineTime())){
|
// export.setRectifyDeadlineTime(DateUtils.parseDateToStr("yyyy-MM-dd HH:mm:ss", hcp.getRectifyDeadlineTime()));
|
// }
|
//
|
// //整改完成时间
|
// if(ObjectUtils.isNotEmpty(hcp.getRectifyCompleteTime())){
|
// export.setRectifyCompleteTime(DateUtils.parseDateToStr("yyyy-MM-dd HH:mm:ss", hcp.getRectifyCompleteTime()));
|
// }
|
//
|
// //整改状态
|
// if (!StringUtils.isEmpty(hcp.getStage())) {
|
// if ("3".equals(hcp.getStage())) {
|
// if (!StringUtils.isEmpty(hcp.getExamineStatus())) {
|
// if ("0".equals(hcp.getExamineStatus())) {
|
// export.setRectifyStatus("待核查");
|
// } else if ("1".equals(hcp.getExamineStatus())) {
|
// export.setRectifyStatus("已核查");
|
// }
|
// }
|
// } else if ("4".equals(hcp.getStage())) {
|
// if (!StringUtils.isEmpty(hcp.getRectifyStatus())) {
|
// if ("0".equals(hcp.getRectifyStatus())) {
|
// export.setRectifyStatus("未整改");
|
// } else if ("1".equals(hcp.getRectifyStatus())) {
|
// export.setRectifyStatus("已整改");
|
// }
|
// }
|
// } else if ("5".equals(hcp.getStage())) {
|
// if (!StringUtils.isEmpty(hcp.getAcceptStatus())) {
|
// if ("0".equals(hcp.getAcceptStatus())) {
|
// export.setRectifyStatus("未验收");
|
// } else if ("1".equals(hcp.getAcceptStatus())) {
|
// export.setRectifyStatus("已验收");
|
// } else if ("2".equals(hcp.getAcceptStatus())) {
|
// export.setRectifyStatus("验收未通过");
|
// }
|
// }
|
// SimpleDateFormat f = new SimpleDateFormat("yyyy-MM-dd");
|
// try {
|
// if (f.parse(f.format(hcp.getRectifyDeadlineTime())).before(f.parse(f.format(hcp.getRectifyCompleteTime())))) {
|
// export.setRectifyStatus(export.getRectifyStatus() + "(超期改)");
|
// } else {
|
// export.setRectifyStatus(export.getRectifyStatus() + "(按期改)");
|
// }
|
// } catch (ParseException e) {
|
// }
|
// }
|
// }
|
// if (hcp.getRegisterCreateTime() != null) {
|
// export.setRegisterCreateTime(DateUtils.parseDateToStr("yyyy-MM-dd HH:mm:ss", hcp.getRegisterCreateTime()));
|
// }
|
// if (hcp.getExamineCreateTime() != null) {
|
// export.setExamineCreateTime(DateUtils.parseDateToStr("yyyy-MM-dd HH:mm:ss", hcp.getExamineCreateTime()));
|
// }
|
// if (hcp.getRectifyCreateTime() != null) {
|
// export.setRectifyCreateTime(DateUtils.parseDateToStr("yyyy-MM-dd HH:mm:ss", hcp.getRectifyCreateTime()));
|
// }
|
// if (hcp.getAcceptCreateTime() != null) {
|
// export.setAcceptCreateTime(DateUtils.parseDateToStr("yyyy-MM-dd HH:mm:ss", hcp.getAcceptCreateTime()));
|
// }
|
// export.setPreRectifyPhoto(hcp.getPreRectifyPhoto());
|
// export.setTroubleTypeName(hcp.getTroubleTypeName());
|
// export.setRegisterUserName(hcp.getRegisterUserName());
|
// export.setExamineUserName(hcp.getExamineUserName());
|
// export.setRectifyUserName(hcp.getRectifyUserName());
|
// export.setRectifyMeasure(hcp.getRectifyMeasure());
|
// export.setPostRectifyPhoto(hcp.getPostRectifyPhoto());
|
// export.setAcceptUserName(hcp.getAcceptUserName());
|
// exportList.add(export);
|
// }
|
// }
|
|
ExcelUtilByDangerLedger<HiddenDangerCheckPointExport> util = new ExcelUtilByDangerLedger<HiddenDangerCheckPointExport>(HiddenDangerCheckPointExport.class);
|
return util.exportExcel(exportList, companyName + "隐患排查台账");
|
}
|
|
|
@GetMapping()
|
public String dangerLedger(ModelMap mmap) {
|
List<Dept> deptList = deptService.selectDeptListByCompanyId(getSysUser().getCompanyId());
|
mmap.put("deptList", deptList);
|
getDangerDataStatistics(getSysUser().getCompanyId().toString(), mmap);
|
User user = getSysUser();
|
Set<String> stringSet = roleService.selectRoleKeys(user.getUserId());
|
if (stringSet.contains("common")) {
|
mmap.put("common", "common");
|
} else {
|
|
}
|
|
return prefix + "/dangerLedger";
|
}
|
|
|
/**
|
* 删除隐患台账
|
*/
|
@Log(title = "删除隐患台账", businessType = BusinessType.DELETE)
|
@PostMapping("/removeDangerLedger")
|
@ResponseBody
|
public AjaxResult removeDangerLedger(String ids) {
|
if (StringUtils.isEmpty(ids)) {
|
return AjaxResult.error("id不能为空");
|
}
|
HiddenDangerCheckPoint hdcp = hiddenDangerCheckPointService.selectHiddenDangerCheckPointById(Long.valueOf(ids));
|
if (hdcp.getCheckId() != null) {
|
hiddenDangerCheckPointService.deleteHiddenDangerCheckPointById(hdcp.getId());
|
hiddenDangerCheckPointService.getTaskCountTotal(getSysUser().getUserId());//查询未执行任务总数量并推送
|
return AjaxResult.success();
|
}
|
return AjaxResult.error("数据有误");
|
}
|
|
|
/**
|
* 查询隐患台账列表
|
*/
|
@PostMapping("/list")
|
@ResponseBody
|
public TableDataInfo list(HiddenDangerCheckPoint hiddenDangerCheckPoint, String dateRangeLedger, String rectifyStatusLedger, String rectifyDeptIdLedger) {
|
// User userQuery = new User();
|
// userQuery.setCompanyId(getSysUser().getCompanyId());
|
// List<User> userList = userService.selectUserList(userQuery);
|
// List<Long> userIdList = new ArrayList<>();
|
// for (User user : userList) {
|
// userIdList.add(user.getUserId());
|
// }
|
|
// if (userIdList.size() == 0) {
|
// return getDataTable(new ArrayList<HiddenDangerCheckPoint>());
|
// }
|
// hiddenDangerCheckPoint.setLedgerUserIdList(userIdList);//隐患整改人ID 为登陆账号companyId下的userId的
|
|
hiddenDangerCheckPoint.setRectifyUserIdIsNotNull("1");//隐患整改人ID 不为空
|
hiddenDangerCheckPoint.setCompanyId(Long.valueOf(getSysUser().getCompanyId()));
|
|
|
//日期区间
|
if (!StringUtils.isEmpty(dateRangeLedger)) {
|
if (("近一周").equals(dateRangeLedger)) {
|
hiddenDangerCheckPoint.setParams(ApiHiddenDangerCheckService.getDaySevenRange());
|
} else if (("近一月").equals(dateRangeLedger)) {
|
hiddenDangerCheckPoint.setParams(ApiHiddenDangerCheckService.getMonthRange());
|
} else if (("近一年").equals(dateRangeLedger)) {
|
hiddenDangerCheckPoint.setParams(ApiHiddenDangerCheckService.getYearRange());
|
}
|
|
|
}
|
//整改状态
|
if (!StringUtils.isEmpty(rectifyStatusLedger)) {
|
if (("未整改").equals(rectifyStatusLedger)) {
|
hiddenDangerCheckPoint.setStage("4");
|
hiddenDangerCheckPoint.setRectifyStatus("0");
|
} else if (("未验收").equals(rectifyStatusLedger)) {
|
hiddenDangerCheckPoint.setStage("5");
|
hiddenDangerCheckPoint.setAcceptStatus("0");
|
} else if (("已验收").equals(rectifyStatusLedger)) {
|
hiddenDangerCheckPoint.setStage("5");
|
hiddenDangerCheckPoint.setAcceptStatus("1");
|
} else if (("超期改").equals(rectifyStatusLedger)) {
|
hiddenDangerCheckPoint.setStage("5");
|
hiddenDangerCheckPoint.setOverdueRectify("1");
|
// hiddenDangerCheckPoint.setAcceptStatus("1");
|
}
|
}
|
//整改部门
|
if (!StringUtils.isEmpty(rectifyDeptIdLedger)) {
|
hiddenDangerCheckPoint.setRectifyDeptId(Long.valueOf(rectifyDeptIdLedger));
|
}
|
|
startPage();
|
List<HiddenDangerCheckPoint> list = hiddenDangerCheckPointService.selectHiddenDangerCheckPointList(hiddenDangerCheckPoint);
|
for (HiddenDangerCheckPoint dangerCheckPoint : list) {
|
PreventRiskDangerInfo dangerInfo = riskService.getDangerInfoByDangerCheckPointId(dangerCheckPoint.getId());
|
if (ObjectUtils.isNotEmpty(dangerInfo)){
|
if (ObjectUtils.isNotEmpty(dangerInfo.getReportTime())){
|
dangerCheckPoint.setReportTime(dangerInfo.getReportTime());
|
}
|
}
|
}
|
|
return getDataTable(list);
|
}
|
|
|
//companyId下总的数据统计
|
public void getDangerDataStatistics(String companyId, ModelMap mmap) {
|
HiddenDangerCheckPoint hdcpQuery = new HiddenDangerCheckPoint();
|
HiddenDangerCheckPoint hdcpQueryAll = new HiddenDangerCheckPoint();
|
HiddenDangerCheckPoint queryByTime = new HiddenDangerCheckPoint();
|
hdcpQuery.setRectifyUserIdIsNotNull("1");//隐患整改人ID 不为空
|
hdcpQueryAll.setRectifyUserIdIsNotNull("1");//隐患整改人ID 不为空
|
queryByTime.setRectifyUserIdIsNotNull("1");//隐患整改人ID 不为空
|
|
// User userQuery = new User();
|
// userQuery.setCompanyId(Long.valueOf(companyId));
|
// List<User> userList = userService.selectUserList(userQuery);
|
// List<Long> userIdList = new ArrayList<>();
|
// for (User user : userList) {
|
// userIdList.add(user.getUserId());
|
// }
|
|
int totalDangerNum = 0;//隐患数
|
int rectifyNum = 0;//已整改数目
|
int notRectifyNum = 0;//未整改数目
|
int totalRectifyNum = 0;//整改总条数(已整改数目+未整改数目)
|
String rectifyRate = "暂无";//整改率
|
|
int onTimeRectifyNum = 0;//按期整改数
|
String onTimeRectifyRate = "暂无";//按期率
|
int overdueRectifyNum = 0;//超期整改数
|
String overdueRectifyRate = "暂无";//超期率
|
|
String monthOnMonthRate = "";//环比-------(上个月 - 上上个月)/上上个月
|
String yearOnYearRate = "";//同比-------(上个月 - 去年上个月)/去年上个月
|
|
// if (userIdList.size() > 0) {
|
// hdcpQueryAll.setLedgerUserIdList(userIdList);//隐患整改人ID 为登陆账号companyId下的userId的
|
// queryByTime.setLedgerUserIdList(userIdList);//隐患整改人ID 为登陆账号companyId下的userId的
|
hdcpQuery.setCompanyId(Long.valueOf(companyId));
|
hdcpQueryAll.setCompanyId(Long.valueOf(companyId));
|
queryByTime.setCompanyId(Long.valueOf(companyId));
|
//companyId下总的数据统计
|
List<HiddenDangerCheckPoint> resultListAll = hiddenDangerCheckPointService.selectHiddenDangerCheckPointList(hdcpQueryAll);//根据companyId 查询出的列表
|
|
for (HiddenDangerCheckPoint hdcp : resultListAll) {
|
if (!StringUtils.isEmpty(hdcp.getStage())) {
|
if ("3".equals(hdcp.getStage())) {
|
if (!StringUtil.isEmpty(hdcp.getExamineStatus())) {
|
if ("0".equals(hdcp.getExamineStatus())) {
|
notRectifyNum++;
|
}
|
}
|
} else if ("4".equals(hdcp.getStage())) {
|
if (!StringUtil.isEmpty(hdcp.getRectifyStatus())) {
|
if ("0".equals(hdcp.getRectifyStatus())) {
|
notRectifyNum++;
|
}
|
}
|
} else if ("5".equals(hdcp.getStage())) {
|
if (!StringUtil.isEmpty(hdcp.getAcceptStatus())) {
|
rectifyNum++;
|
SimpleDateFormat f = new SimpleDateFormat("yyyy-MM-dd");
|
try {
|
if (f.parse(f.format(hdcp.getRectifyDeadlineTime())).before(f.parse(f.format(hdcp.getRectifyCompleteTime())))) {
|
overdueRectifyNum++;
|
} else {
|
onTimeRectifyNum++;
|
}
|
} catch (ParseException e) {
|
}
|
}
|
}
|
}
|
}
|
totalDangerNum = resultListAll.size();
|
totalRectifyNum = rectifyNum + notRectifyNum;
|
if (totalDangerNum > 0) {
|
//计算整改率
|
BigDecimal a = ApiHiddenDangerCheckService.divide(rectifyNum, totalDangerNum, 4);
|
//下面将结果转化成百分比
|
NumberFormat percent1 = NumberFormat.getPercentInstance();
|
percent1.setMaximumFractionDigits(2);
|
rectifyRate = percent1.format(a.doubleValue());
|
|
//计算按期率
|
BigDecimal b = ApiHiddenDangerCheckService.divide(onTimeRectifyNum, totalDangerNum, 4);
|
//下面将结果转化成百分比
|
NumberFormat percent2 = NumberFormat.getPercentInstance();
|
percent2.setMaximumFractionDigits(2);
|
onTimeRectifyRate = percent2.format(b.doubleValue());
|
|
|
//计算超期率
|
BigDecimal c = ApiHiddenDangerCheckService.divide(overdueRectifyNum, totalDangerNum, 4);
|
//下面将结果转化成百分比
|
NumberFormat percent3 = NumberFormat.getPercentInstance();
|
percent3.setMaximumFractionDigits(2);
|
overdueRectifyRate = percent3.format(c.doubleValue());
|
}
|
|
|
Map map1 = ApiHiddenDangerCheckService.getLastMonthTime(0, -1);//上个月
|
|
Map map2 = ApiHiddenDangerCheckService.getLastMonthTime(0, -2);//上上个月
|
|
Map map3 = ApiHiddenDangerCheckService.getLastMonthTime(-1, -1);//去年上个月
|
|
|
queryByTime.setParams(map1);
|
List<HiddenDangerCheckPoint> list1 = hiddenDangerCheckPointService.selectHiddenDangerCheckPointList(queryByTime);//上个月
|
queryByTime.setParams(map2);
|
List<HiddenDangerCheckPoint> list2 = hiddenDangerCheckPointService.selectHiddenDangerCheckPointList(queryByTime);//上上个月
|
queryByTime.setParams(map3);
|
List<HiddenDangerCheckPoint> list3 = hiddenDangerCheckPointService.selectHiddenDangerCheckPointList(queryByTime);//去年上个月
|
|
|
//计算环比
|
if (list2.size() > 0) {
|
BigDecimal d = ApiHiddenDangerCheckService.divide((list1.size() - list2.size()), list2.size(), 4);
|
//下面将结果转化成百分比
|
NumberFormat percent4 = NumberFormat.getPercentInstance();
|
percent4.setMaximumFractionDigits(2);
|
monthOnMonthRate = percent4.format(d.doubleValue());
|
} else {
|
monthOnMonthRate = "暂无";
|
}
|
|
|
//计算同比
|
if (list3.size() > 0) {
|
BigDecimal e = ApiHiddenDangerCheckService.divide((list1.size() - list3.size()), list3.size(), 4);
|
//下面将结果转化成百分比
|
NumberFormat percent5 = NumberFormat.getPercentInstance();
|
percent5.setMaximumFractionDigits(2);
|
yearOnYearRate = percent5.format(e.doubleValue());
|
} else {
|
yearOnYearRate = "暂无";
|
}
|
// }
|
|
|
mmap.put("totalDangerNum", totalDangerNum);
|
mmap.put("rectifyNum", rectifyNum);
|
mmap.put("notRectifyNum", notRectifyNum);
|
mmap.put("rectifyRate", rectifyRate);
|
mmap.put("onTimeRectifyNum", onTimeRectifyNum);
|
mmap.put("onTimeRectifyRate", onTimeRectifyRate);
|
mmap.put("overdueRectifyNum", overdueRectifyNum);
|
mmap.put("overdueRectifyRate", overdueRectifyRate);
|
|
mmap.put("monthOnMonthRate", monthOnMonthRate);
|
mmap.put("yearOnYearRate", yearOnYearRate);
|
}
|
|
/**
|
* 列表页面(根据companyId)
|
*/
|
@GetMapping("/listByCompanyId/{companyId}")
|
public String listByCompanyId(@PathVariable("companyId") Long companyId, ModelMap mmap) {
|
List<Dept> deptList = deptService.selectDeptListByCompanyId(companyId);
|
mmap.put("deptList", deptList);
|
mmap.put("companyId", companyId);
|
getDangerDataStatistics(companyId.toString(), mmap);
|
return prefix + "/listByCompanyId";
|
}
|
|
|
/**
|
* thisMonthHighDanger隐患台账 列表页面(根据companyId)
|
*/
|
@GetMapping("/listByCompanyId/{companyId}/thisMonthHighDanger")
|
public String listByCompanyIdByThisMonthHighDanger(@PathVariable("companyId") Long companyId, ModelMap mmap) {
|
List<Dept> deptList = deptService.selectDeptListByCompanyId(companyId);
|
mmap.put("deptList", deptList);
|
mmap.put("companyId", companyId);
|
return prefix + "/listByCompanyIdByThisMonthHighDanger";
|
}
|
|
/**
|
* thisMonthNormalDanger隐患台账 列表页面(根据companyId)
|
*/
|
@GetMapping("/listByCompanyId/{companyId}/thisMonthNormalDanger")
|
public String listByCompanyIdByThisMonthNormalDanger(@PathVariable("companyId") Long companyId, ModelMap mmap) {
|
List<Dept> deptList = deptService.selectDeptListByCompanyId(companyId);
|
mmap.put("deptList", deptList);
|
mmap.put("companyId", companyId);
|
return prefix + "/listByCompanyIdByThisMonthNormalDanger";
|
}
|
|
/**
|
* unRectifyDanger隐患台账 列表页面(根据companyId)
|
*/
|
@GetMapping("/listByCompanyId/{companyId}/unRectifyDanger")
|
public String listByCompanyIdByUnRectifyDanger(@PathVariable("companyId") Long companyId, ModelMap mmap) {
|
List<Dept> deptList = deptService.selectDeptListByCompanyId(companyId);
|
mmap.put("deptList", deptList);
|
mmap.put("companyId", companyId);
|
return prefix + "/listByCompanyIdByUnRectifyDanger";
|
}
|
|
|
/**
|
* 查询隐患台账列表(根据companyId)
|
*/
|
@PostMapping("/listByCompanyId")
|
@ResponseBody
|
public TableDataInfo list(String companyId, HiddenDangerCheckPoint hiddenDangerCheckPoint, String
|
dateRangeLedger, String rectifyStatusLedger, String rectifyDeptIdLedger) {
|
// User userQuery = new User();
|
// userQuery.setCompanyId(Long.valueOf(companyId));
|
// List<User> userList = userService.selectUserList(userQuery);
|
// List<Long> userIdList = new ArrayList<>();
|
// for (User user : userList) {
|
// userIdList.add(user.getUserId());
|
// }
|
|
// if (userIdList.size() == 0) {
|
// return getDataTable(new ArrayList<HiddenDangerCheckPoint>());
|
// }
|
|
// hiddenDangerCheckPoint.setLedgerUserIdList(userIdList);//隐患整改人ID 为登陆账号companyId下的userId的
|
|
hiddenDangerCheckPoint.setRectifyUserIdIsNotNull("1");//隐患整改人ID 不为空
|
hiddenDangerCheckPoint.setCompanyId(Long.valueOf(companyId));
|
|
//日期区间
|
if (!StringUtils.isEmpty(dateRangeLedger)) {
|
if (("近一周").equals(dateRangeLedger)) {
|
hiddenDangerCheckPoint.setParams(ApiHiddenDangerCheckService.getDaySevenRange());
|
} else if (("近一月").equals(dateRangeLedger)) {
|
hiddenDangerCheckPoint.setParams(ApiHiddenDangerCheckService.getMonthRange());
|
} else if (("近一年").equals(dateRangeLedger)) {
|
hiddenDangerCheckPoint.setParams(ApiHiddenDangerCheckService.getYearRange());
|
} else if (("当月").equals(dateRangeLedger)) {
|
hiddenDangerCheckPoint.setParams(ApiHiddenDangerCheckService.getLastMonthTime(0, 0));
|
}
|
}
|
//整改状态
|
if (!StringUtils.isEmpty(rectifyStatusLedger)) {
|
if (("未整改").equals(rectifyStatusLedger)) {
|
hiddenDangerCheckPoint.setStage("4");
|
hiddenDangerCheckPoint.setRectifyStatus("0");
|
} else if (("未验收").equals(rectifyStatusLedger)) {
|
hiddenDangerCheckPoint.setStage("5");
|
hiddenDangerCheckPoint.setAcceptStatus("0");
|
} else if (("已验收").equals(rectifyStatusLedger)) {
|
hiddenDangerCheckPoint.setStage("5");
|
hiddenDangerCheckPoint.setAcceptStatus("1");
|
} else if (("超期改").equals(rectifyStatusLedger)) {
|
hiddenDangerCheckPoint.setStage("5");
|
hiddenDangerCheckPoint.setOverdueRectify("1");
|
}
|
}
|
//整改部门
|
if (!StringUtils.isEmpty(rectifyDeptIdLedger)) {
|
hiddenDangerCheckPoint.setRectifyDeptId(Long.valueOf(rectifyDeptIdLedger));
|
}
|
|
startPage();
|
List<HiddenDangerCheckPoint> list = hiddenDangerCheckPointService.selectHiddenDangerCheckPointList(hiddenDangerCheckPoint);
|
return getDataTable(list);
|
}
|
|
/**
|
* 隐患核查--核查
|
*/
|
@Log(title = "隐患核查--核查")
|
@GetMapping("/editDangerLevel/{id}")
|
public String editNextConfirm(@PathVariable("id") Long id, ModelMap mmap) {
|
//隐患排查实体
|
HiddenDangerCheckPoint hiddenDangerCheckPoint = hiddenDangerCheckPointService.selectHiddenDangerCheckPointById(Long.valueOf(id));
|
mmap.put("hdcp", hiddenDangerCheckPoint);
|
|
return prefix + "/editDangerLevel";
|
}
|
|
/**
|
* 隐患类别修改
|
*/
|
@Log(title = "隐患上报", businessType = BusinessType.DELETE)
|
@PostMapping("/editDangerLevelSave")
|
@ResponseBody
|
@Transactional
|
public AjaxResult editDangerLevelSave(HiddenDangerCheckPoint hdcp) {
|
if(ObjectUtils.isEmpty(hdcp.getId())){
|
return AjaxResult.error("id不能为空");
|
}
|
if(ObjectUtils.isEmpty(hdcp.getTroubleTypeName())){
|
return AjaxResult.error("隐患类别不能为空");
|
}
|
//获取当前更新用户信息
|
User sysUser = getSysUser();
|
hdcp.setUpdateBy(ShiroUtils.getLoginName());
|
hdcp.setUpdateTime(DateUtils.getNowDate());
|
int i = hiddenDangerCheckPointService.editDangerLevel(hdcp);
|
if (i < 1){
|
return AjaxResult.error("操作失败");
|
}
|
return AjaxResult.success();
|
}
|
|
}
|