From cc1098fc00a50cb1591d182f04bc37066ff0a9e2 Mon Sep 17 00:00:00 2001 From: 罗元桥 <2376770955@qq.com> Date: 星期四, 05 八月 2021 15:12:39 +0800 Subject: [PATCH] Merge branch 'test' into 'master' --- springcloud_k8s_panzhihuazhihuishequ/service_community/src/main/java/com/panzhihua/service_community/service/impl/ComSwDangerReportServiceImpl.java | 317 ++++++++++++++++++++++++++++++++++++++++++++++++++++ 1 files changed, 317 insertions(+), 0 deletions(-) diff --git a/springcloud_k8s_panzhihuazhihuishequ/service_community/src/main/java/com/panzhihua/service_community/service/impl/ComSwDangerReportServiceImpl.java b/springcloud_k8s_panzhihuazhihuishequ/service_community/src/main/java/com/panzhihua/service_community/service/impl/ComSwDangerReportServiceImpl.java index c3d443b..a28111e 100644 --- a/springcloud_k8s_panzhihuazhihuishequ/service_community/src/main/java/com/panzhihua/service_community/service/impl/ComSwDangerReportServiceImpl.java +++ b/springcloud_k8s_panzhihuazhihuishequ/service_community/src/main/java/com/panzhihua/service_community/service/impl/ComSwDangerReportServiceImpl.java @@ -1,11 +1,37 @@ package com.panzhihua.service_community.service.impl; +import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper; +import com.baomidou.mybatisplus.core.metadata.IPage; +import com.baomidou.mybatisplus.extension.plugins.pagination.Page; import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl; +import com.panzhihua.common.enums.SafeWordStatusEnum; +import com.panzhihua.common.model.dtos.community.ComSwDangerReportHandleDTO; +import com.panzhihua.common.model.dtos.community.ComSwDangerReportRectifyDTO; +import com.panzhihua.common.model.dtos.community.ComSwPatrolRecordPageDTO; +import com.panzhihua.common.model.vos.LoginUserInfoVO; +import com.panzhihua.common.model.vos.R; +import com.panzhihua.common.model.vos.community.ComMngCarExcelVO; +import com.panzhihua.common.model.vos.community.ComSwDangerReportExcelVO; +import com.panzhihua.common.model.vos.community.ComSwDangerReportVO; +import com.panzhihua.common.model.vos.community.ComSwSafetyWorkRecordVO; +import com.panzhihua.common.service.user.UserService; +import com.panzhihua.common.utlis.DateUtils; +import com.panzhihua.common.utlis.StringUtils; import com.panzhihua.service_community.dao.ComSwDangerReportDAO; +import com.panzhihua.service_community.dao.ComSwPatrolRecordDAO; +import com.panzhihua.service_community.dao.ComSwPatrolRecordReportDAO; import com.panzhihua.service_community.model.dos.ComSwDangerReportDO; +import com.panzhihua.service_community.model.dos.ComSwPatrolRecordDO; +import com.panzhihua.service_community.model.dos.ComSwPatrolRecordReportDO; +import com.panzhihua.service_community.model.dos.ComSwSafetyWorkRecordDO; import com.panzhihua.service_community.service.ComSwDangerReportService; import lombok.extern.slf4j.Slf4j; +import org.springframework.beans.BeanUtils; import org.springframework.stereotype.Service; + +import javax.annotation.Resource; +import java.text.SimpleDateFormat; +import java.util.*; /** * @auther txb @@ -16,4 +42,295 @@ @Service public class ComSwDangerReportServiceImpl extends ServiceImpl<ComSwDangerReportDAO, ComSwDangerReportDO> implements ComSwDangerReportService { + @Resource + private ComSwDangerReportDAO comSwDangerReportDAO; + + @Resource + private ComSwPatrolRecordDAO comSwPatrolRecordDAO; + + @Resource + private ComSwPatrolRecordReportDAO comSwPatrolRecordReportDAO; + + @Resource + private UserService userService; + + @Override + public R pageDangerReport(ComSwPatrolRecordPageDTO comSwPatrolRecordPageDTO) { + Page page = new Page<>(); + Long pageNum = comSwPatrolRecordPageDTO.getPageNum(); + Long pageSize = comSwPatrolRecordPageDTO.getPageSize(); + if (null == pageNum || 0 == pageNum) { + pageNum = 1L; + } + if (null == pageSize || 0 == pageSize) { + pageSize = 10L; + } + page.setSize(pageSize); + page.setCurrent(pageNum); + + IPage<ComSwDangerReportVO> iPage = comSwDangerReportDAO.pageDangerReport(page, comSwPatrolRecordPageDTO); + if (!iPage.getRecords().isEmpty()) { + iPage.getRecords().forEach(comSwDangerReportVO -> { + if (StringUtils.isNotEmpty(comSwDangerReportVO.getStatus()) && "2".equals(comSwDangerReportVO.getStatus())) { + comSwDangerReportVO.setIsAssign(ComSwDangerReportVO.isOk.yes); + }else { + comSwDangerReportVO.setIsAssign(ComSwDangerReportVO.isOk.no); + } + StringBuilder patrolNameString = new StringBuilder(); + StringBuilder patrolPhoneString = new StringBuilder(); + //巡查人员id查询巡查人员的名字和电话 + if(StringUtils.isNotEmpty(comSwDangerReportVO.getPatrolPerson())){ + String[] patrolIds = comSwDangerReportVO.getPatrolPerson().split(","); + for (int i = 0; i < patrolIds.length ; i++) { + Map<String,String> leader = comSwPatrolRecordDAO.getPbServiceTeamById(patrolIds[i]); + if(leader != null){ + if(i != 0){ + patrolNameString.append(","); + patrolPhoneString.append(","); + } + patrolNameString.append(leader.get("name")); + patrolPhoneString.append(leader.get("phone")); + } + } + comSwDangerReportVO.setPPersonName(patrolNameString.toString()); + comSwDangerReportVO.setPPersonPhone(patrolPhoneString.toString()); + } + //整改人员id查询整改人员的名字和电话 + StringBuilder dangerNameString = new StringBuilder(); + StringBuilder dangerPhoneString = new StringBuilder(); + if(StringUtils.isNotEmpty(comSwDangerReportVO.getRectifyPerson())){ + String[] dangerIds = comSwDangerReportVO.getRectifyPerson().split(","); + for (int i = 0; i < dangerIds.length ; i++) { + Map<String,String> person = comSwPatrolRecordDAO.getPbServiceTeamById(dangerIds[i]); + if(person != null){ + if(i != 0){ + dangerNameString.append(","); + dangerPhoneString.append(","); + } + dangerNameString.append(person.get("name")); + dangerPhoneString.append(person.get("phone")); + } + } + comSwDangerReportVO.setDPersonName(dangerNameString.toString()); + comSwDangerReportVO.setDPersonPhone(dangerPhoneString.toString()); + } + }); + } + return R.ok(iPage); + } + + @Override + public R detailDangerReport(Long dangerReportId) { + ComSwDangerReportDO comSwDangerReportDO = comSwDangerReportDAO.selectById(dangerReportId); + if (null == comSwDangerReportDO) { + return R.fail("该隐患报告不存在"); + } + ComSwDangerReportVO comSwDangerReportVO = new ComSwDangerReportVO(); + ComSwPatrolRecordReportDO comSwPatrolRecordReportDO = comSwPatrolRecordReportDAO.selectOne(new QueryWrapper<ComSwPatrolRecordReportDO>().lambda().eq(ComSwPatrolRecordReportDO::getReportId, dangerReportId)); + if (null != comSwPatrolRecordReportDO) { + ComSwPatrolRecordDO comSwPatrolRecordDO = comSwPatrolRecordDAO.selectById(comSwPatrolRecordReportDO.getPatrolRecordId()); + BeanUtils.copyProperties(comSwPatrolRecordDO, comSwDangerReportVO); + } + BeanUtils.copyProperties(comSwDangerReportDO, comSwDangerReportVO); + + //组装巡查类型 + if(StringUtils.isNotEmpty(comSwDangerReportVO.getPatrolType())){ + StringBuilder sb = new StringBuilder(); + String patrolTypes[] = comSwDangerReportVO.getPatrolType().split(","); + for (int i = 0; i < patrolTypes.length; i++) { + if(i != 0){ + sb.append(","); + } + if(patrolTypes[i].equals("1")){ + sb.append("防火巡查"); + }else if(patrolTypes[i].equals("2")){ + sb.append("防汛巡查"); + }else if(patrolTypes[i].equals("3")){ + sb.append("防疫巡查"); + } + } + comSwDangerReportVO.setPatrolType(sb.toString()); + } + + //查询整改人员信息 + if(StringUtils.isNotEmpty(comSwDangerReportVO.getRectifyPerson())){ + StringBuilder sb = new StringBuilder(); + String personIds[] = comSwDangerReportVO.getRectifyPerson().split(","); + for (int i = 0; i < personIds.length; i++) { + if(i != 0){ + sb.append(","); + } + Map<String,String> personMap = comSwPatrolRecordDAO.getPbServiceTeamById(personIds[i]); + if(personMap != null){ + sb.append(personMap.get("name")); + } + } + comSwDangerReportVO.setPersonName(sb.toString()); + } + + //查询填报人名称 + if(comSwDangerReportVO.getCreateBy() != null){ + comSwDangerReportVO.setCreateName(comSwPatrolRecordDAO.getCreateName(comSwDangerReportVO.getCreateBy())); + } + + //查询指派人名称 + if(StringUtils.isNotEmpty(comSwDangerReportVO.getAssignPerson())){ + StringBuilder sb = new StringBuilder(); + String personIds[] = comSwDangerReportVO.getAssignPerson().split(","); + for (int i = 0; i < personIds.length; i++) { + if(i != 0){ + sb.append(","); + } + Map<String,String> personMap = comSwPatrolRecordDAO.getPbServiceTeamById(personIds[i]); + if(personMap != null){ + sb.append(personMap.get("name")); + } + } + comSwDangerReportVO.setAssignPersonName(sb.toString()); + } + + StringBuilder patrolNameString = new StringBuilder(); + StringBuilder patrolPhoneString = new StringBuilder(); + //巡查人员id查询巡查人员的名字和电话 + if(StringUtils.isNotEmpty(comSwDangerReportVO.getPatrolPerson())){ + String[] patrolIds = comSwDangerReportVO.getPatrolPerson().split(","); + for (int i = 0; i < patrolIds.length ; i++) { + Map<String,String> leader = comSwPatrolRecordDAO.getPbServiceTeamById(patrolIds[i]); + if(leader != null){ + if(i != 0){ + patrolNameString.append(","); + patrolPhoneString.append(","); + } + patrolNameString.append(leader.get("name")); + patrolPhoneString.append(leader.get("phone")); + } + } + comSwDangerReportVO.setPPersonName(patrolNameString.toString()); + comSwDangerReportVO.setPPersonPhone(patrolPhoneString.toString()); + } + //整改人员id查询整改人员的名字和电话 + StringBuilder dangerNameString = new StringBuilder(); + StringBuilder dangerPhoneString = new StringBuilder(); + if(StringUtils.isNotEmpty(comSwDangerReportVO.getRectifyPerson())){ + String[] dangerIds = comSwDangerReportVO.getRectifyPerson().split(","); + for (int i = 0; i < dangerIds.length ; i++) { + Map<String,String> person = comSwPatrolRecordDAO.getPbServiceTeamById(dangerIds[i]); + if(person != null){ + if(i != 0){ + dangerNameString.append(","); + dangerPhoneString.append(","); + } + dangerNameString.append(person.get("name")); + dangerPhoneString.append(person.get("phone")); + } + } + comSwDangerReportVO.setDPersonName(dangerNameString.toString()); + comSwDangerReportVO.setDPersonPhone(dangerPhoneString.toString()); + } + + return R.ok(comSwDangerReportVO); + } + + @Override + public R detailDangerReportByPrId(Long patrolRecordId) { + ComSwPatrolRecordDO comSwPatrolRecordDO = comSwPatrolRecordDAO.selectById(patrolRecordId); + if(comSwPatrolRecordDO == null){ + return R.fail("该隐患报告不存在"); + } + ComSwDangerReportVO comSwDangerReportVO = new ComSwDangerReportVO(); + ComSwPatrolRecordReportDO comSwPatrolRecordReportDO = comSwPatrolRecordReportDAO.selectOne(new QueryWrapper<ComSwPatrolRecordReportDO>().lambda().eq(ComSwPatrolRecordReportDO::getPatrolRecordId, patrolRecordId)); + if (null != comSwPatrolRecordReportDO) { + ComSwDangerReportDO comSwDangerReportDO = comSwDangerReportDAO.selectById(comSwPatrolRecordReportDO.getReportId()); + if (null == comSwDangerReportDO) { + return R.fail("该隐患报告不存在"); + } + BeanUtils.copyProperties(comSwDangerReportDO, comSwDangerReportVO); + } + BeanUtils.copyProperties(comSwPatrolRecordDO, comSwDangerReportVO); + StringBuilder patrolNameString = new StringBuilder(); + StringBuilder patrolPhoneString = new StringBuilder(); + //巡查人员id查询巡查人员的名字和电话 + if(StringUtils.isNotEmpty(comSwDangerReportVO.getPatrolPerson())){ + String[] patrolIds = comSwDangerReportVO.getPatrolPerson().split(","); + for (int i = 0; i < patrolIds.length ; i++) { + Map<String,String> leader = comSwPatrolRecordDAO.getPbServiceTeamById(patrolIds[i]); + if(leader != null){ + if(i != 0){ + patrolNameString.append(","); + patrolPhoneString.append(","); + } + patrolNameString.append(leader.get("name")); + patrolPhoneString.append(leader.get("phone")); + } + } + comSwDangerReportVO.setPPersonName(patrolNameString.toString()); + comSwDangerReportVO.setPPersonPhone(patrolPhoneString.toString()); + } + //整改人员id查询整改人员的名字和电话 + StringBuilder dangerNameString = new StringBuilder(); + StringBuilder dangerPhoneString = new StringBuilder(); + if(StringUtils.isNotEmpty(comSwDangerReportVO.getRectifyPerson())){ + String[] dangerIds = comSwDangerReportVO.getRectifyPerson().split(","); + for (int i = 0; i < dangerIds.length ; i++) { + Map<String,String> person = comSwPatrolRecordDAO.getPbServiceTeamById(dangerIds[i]); + if(person != null){ + if(i != 0){ + dangerNameString.append(","); + dangerPhoneString.append(","); + } + dangerNameString.append(person.get("name")); + dangerPhoneString.append(person.get("phone")); + } + } + comSwDangerReportVO.setDPersonName(dangerNameString.toString()); + comSwDangerReportVO.setDPersonPhone(dangerPhoneString.toString()); + } + return R.ok(comSwDangerReportVO); + } + + @Override + public R handleDangerReport(ComSwDangerReportHandleDTO comSwDangerReportHandleDTO) { + ComSwDangerReportDO comSwDangerReportDO = comSwDangerReportDAO.selectById(comSwDangerReportHandleDTO.getDangerReportId()); + if (null == comSwDangerReportDO) { + return R.fail("该隐患报告不存在"); + } + BeanUtils.copyProperties(comSwDangerReportHandleDTO, comSwDangerReportDO); + comSwDangerReportDO.setStatus(String.valueOf(SafeWordStatusEnum.YCL.getCode())); + int update = comSwDangerReportDAO.updateById(comSwDangerReportDO); + if (update > 0) { + return R.ok(); + } + return R.fail("处理失败"); + } + + @Override + public R rectifyDangerReport(ComSwDangerReportRectifyDTO comSwDangerReportRectifyDTO) { + ComSwDangerReportDO comSwDangerReportDO = comSwDangerReportDAO.selectById(comSwDangerReportRectifyDTO.getDangerReportId()); + if (null == comSwDangerReportDO) { + return R.fail("该隐患报告不存在"); + } + BeanUtils.copyProperties(comSwDangerReportRectifyDTO, comSwDangerReportDO); + comSwDangerReportDO.setStatus(String.valueOf(SafeWordStatusEnum.YZG.getCode())); + comSwDangerReportDO.setRectifyTime(DateUtils.getCurrentDateStr()); + int update = comSwDangerReportDAO.updateById(comSwDangerReportDO); + if (update > 0) { + return R.ok(); + } + return R.fail("整改失败"); + } + + @Override + public R exportDangerReport(List<Long> dangerReportIds) { + List<ComSwDangerReportExcelVO> list = comSwDangerReportDAO.exportDangerReport(dangerReportIds); +// list.forEach(comSwDangerReportExcelVO -> { +// List<String> patrolUserIds = Arrays.asList(comSwDangerReportExcelVO.getPatrolPerson().split(",")); +// List<String> patrolPhones = new ArrayList<>(); +// for (String userId : patrolUserIds) { +// LoginUserInfoVO loginUserInfoVO = userService.getUserInfoByUserId(userId).getData(); +// patrolPhones.add(loginUserInfoVO.getPhone()); +// } +// comSwDangerReportExcelVO.setPatrolPersonPhone(StringUtils.join(patrolPhones,",")); +// }); + return R.ok(list); + } } -- Gitblit v1.7.1