| | |
| | | package com.panzhihua.service_community.service.impl; |
| | | |
| | | import java.text.SimpleDateFormat; |
| | | import java.util.Date; |
| | | import java.util.Map; |
| | | |
| | | import javax.annotation.Resource; |
| | | |
| | | import org.springframework.beans.BeanUtils; |
| | | import org.springframework.stereotype.Service; |
| | | |
| | | 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.panzhihua.common.model.dtos.community.ComSwPatrolRecordAddDTO; |
| | | import com.panzhihua.common.model.dtos.community.ComSwPatrolRecordPageDTO; |
| | | import com.panzhihua.common.model.vos.R; |
| | | import com.panzhihua.common.model.vos.community.ComMngRealAssetsVO; |
| | | import com.panzhihua.common.model.vos.community.ComSwPatrolRecordVO; |
| | | import com.panzhihua.common.utlis.DateUtils; |
| | | import com.panzhihua.common.utlis.Snowflake; |
| | |
| | | import com.panzhihua.service_community.dao.ComSwPatrolRecordDAO; |
| | | import com.panzhihua.service_community.dao.ComSwPatrolRecordReportDAO; |
| | | import com.panzhihua.service_community.dao.ComSwSafetyWorkRecordDAO; |
| | | import com.panzhihua.service_community.model.dos.*; |
| | | 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.ComSwPatrolRecordService; |
| | | 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.Date; |
| | | import java.util.Map; |
| | | import lombok.extern.slf4j.Slf4j; |
| | | |
| | | /** |
| | | * @auther txb |
| | |
| | | */ |
| | | @Slf4j |
| | | @Service |
| | | public class ComSwPatrolRecordServiceImpl extends ServiceImpl<ComSwPatrolRecordDAO, ComSwPatrolRecordDO> implements ComSwPatrolRecordService { |
| | | public class ComSwPatrolRecordServiceImpl extends ServiceImpl<ComSwPatrolRecordDAO, ComSwPatrolRecordDO> |
| | | implements ComSwPatrolRecordService { |
| | | |
| | | @Resource |
| | | private ComSwPatrolRecordDAO comSwPatrolRecordDAO; |
| | |
| | | |
| | | @Override |
| | | public R pagePatrolRecord(ComSwPatrolRecordPageDTO comSwPatrolRecordPageDTO) { |
| | | //是否是查询自己的巡查记录 |
| | | if(StringUtils.isNotEmpty(comSwPatrolRecordPageDTO.getPatrolPerson())){ |
| | | Map<String,Object> map = comSwPatrolRecordDAO.getPbServiceTeamCardNo(comSwPatrolRecordPageDTO.getPatrolPerson()); |
| | | if(map != null){ |
| | | // 是否是查询自己的巡查记录 |
| | | if (StringUtils.isNotEmpty(comSwPatrolRecordPageDTO.getPatrolPerson())) { |
| | | Map<String, Object> map = |
| | | comSwPatrolRecordDAO.getPbServiceTeamCardNo(comSwPatrolRecordPageDTO.getPatrolPerson()); |
| | | if (map != null) { |
| | | comSwPatrolRecordPageDTO.setPatrolPerson(map.get("id").toString()); |
| | | } |
| | | } |
| | | IPage<ComSwPatrolRecordVO> iPage = comSwPatrolRecordDAO.pagePatrolRecord(new Page(comSwPatrolRecordPageDTO.getPageNum(),comSwPatrolRecordPageDTO.getPageSize()), comSwPatrolRecordPageDTO); |
| | | if(!iPage.getRecords().isEmpty()){ |
| | | IPage<ComSwPatrolRecordVO> iPage = comSwPatrolRecordDAO.pagePatrolRecord( |
| | | new Page(comSwPatrolRecordPageDTO.getPageNum(), comSwPatrolRecordPageDTO.getPageSize()), |
| | | comSwPatrolRecordPageDTO); |
| | | if (!iPage.getRecords().isEmpty()) { |
| | | iPage.getRecords().forEach(patrol -> { |
| | | ComSwPatrolRecordReportDO recordReportDO = comSwPatrolRecordReportDAO.selectOne(new QueryWrapper<ComSwPatrolRecordReportDO>() |
| | | .lambda().eq(ComSwPatrolRecordReportDO::getPatrolRecordId,patrol.getId())); |
| | | if(recordReportDO != null){ |
| | | ComSwPatrolRecordReportDO recordReportDO = |
| | | comSwPatrolRecordReportDAO.selectOne(new QueryWrapper<ComSwPatrolRecordReportDO>().lambda() |
| | | .eq(ComSwPatrolRecordReportDO::getPatrolRecordId, patrol.getId())); |
| | | if (recordReportDO != null) { |
| | | patrol.setServiceId(recordReportDO.getReportId()); |
| | | if (null != comSwDangerReportDAO.selectById(recordReportDO.getReportId())) { |
| | | patrol.setDangerOrRecord(1); |
| | | }else{ |
| | | } else { |
| | | patrol.setDangerOrRecord(2); |
| | | } |
| | | } |
| | |
| | | |
| | | @Override |
| | | public R addPatrolRecord(ComSwPatrolRecordAddDTO comSwPatrolRecordAddDTO) { |
| | | //巡查记录 |
| | | // 巡查记录 |
| | | ComSwPatrolRecordDO comSwPatrolRecordDO = new ComSwPatrolRecordDO(); |
| | | BeanUtils.copyProperties(comSwPatrolRecordAddDTO, comSwPatrolRecordDO); |
| | | Long patrolRecordId = Snowflake.getId(); |
| | | comSwPatrolRecordDO.setId(patrolRecordId); |
| | | comSwPatrolRecordDO.setPatrolTime(new Date()); |
| | | comSwPatrolRecordDO.setSuccessionTime(DateUtils.stringToDate(comSwPatrolRecordAddDTO.getSuccessionTime(),DateUtils.yyyyMMdd_format)); |
| | | if(StringUtils.isEmpty(comSwPatrolRecordAddDTO.getPatrolTime())){ |
| | | comSwPatrolRecordDO.setPatrolTime(new Date()); |
| | | }else { |
| | | comSwPatrolRecordDO.setPatrolTime( |
| | | DateUtils.stringToDate(comSwPatrolRecordAddDTO.getPatrolTime(), DateUtils.yyyyMMdd_format)); |
| | | } |
| | | // comSwPatrolRecordDO.setPatrolTime(new Date()); |
| | | comSwPatrolRecordDO.setSuccessionTime( |
| | | DateUtils.stringToDate(comSwPatrolRecordAddDTO.getSuccessionTime(), DateUtils.yyyyMMdd_format)); |
| | | StringBuilder nameString = new StringBuilder(); |
| | | StringBuilder phoneString = new StringBuilder(); |
| | | //根据传递的巡查人员id查询巡查人员的名字和电话 |
| | | if(StringUtils.isNotEmpty(comSwPatrolRecordAddDTO.getPatrolPerson())){ |
| | | // 根据传递的巡查人员id查询巡查人员的名字和电话 |
| | | if (StringUtils.isNotEmpty(comSwPatrolRecordAddDTO.getPatrolPerson())) { |
| | | String[] personIds = comSwPatrolRecordAddDTO.getPatrolPerson().split(","); |
| | | for (int i = 0; i < personIds.length ; i++) { |
| | | Map<String,String> person = comSwPatrolRecordDAO.getPbServiceTeamById(personIds[i]); |
| | | if(person != null){ |
| | | if(i != 0){ |
| | | for (int i = 0; i < personIds.length; i++) { |
| | | Map<String, String> person = comSwPatrolRecordDAO.getPbServiceTeamById(personIds[i]); |
| | | if (person != null) { |
| | | if (i != 0) { |
| | | nameString.append(","); |
| | | phoneString.append(","); |
| | | } |
| | |
| | | comSwPatrolRecordDO.setPersonName(nameString.toString()); |
| | | comSwPatrolRecordDO.setPersonPhone(phoneString.toString()); |
| | | comSwPatrolRecordDAO.insert(comSwPatrolRecordDO); |
| | | //巡查记录和关联报告信息 |
| | | // 巡查记录和关联报告信息 |
| | | ComSwPatrolRecordReportDO comSwPatrolRecordReportDO = new ComSwPatrolRecordReportDO(); |
| | | Long patrolRecordReport = Snowflake.getId(); |
| | | comSwPatrolRecordReportDO.setId(patrolRecordReport); |
| | | comSwPatrolRecordReportDO.setPatrolRecordId(patrolRecordId); |
| | | if(StringUtils.isNotEmpty(comSwPatrolRecordAddDTO.getDangerDescription())){ |
| | | if (StringUtils.isNotEmpty(comSwPatrolRecordAddDTO.getDangerDescription())) { |
| | | comSwPatrolRecordAddDTO.setDagerDescription(comSwPatrolRecordAddDTO.getDangerDescription()); |
| | | } |
| | | if(StringUtils.isNotEmpty(comSwPatrolRecordAddDTO.getDagerName())){ |
| | | if (StringUtils.isNotEmpty(comSwPatrolRecordAddDTO.getDagerName())) { |
| | | comSwPatrolRecordAddDTO.setDangerName(comSwPatrolRecordAddDTO.getDagerName()); |
| | | } |
| | | if (comSwPatrolRecordAddDTO.getIsHiddenDanger().intValue() == ComSwPatrolRecordAddDTO.isOk.yes) { |
| | | //如果存在安全隐患,自动生成安全隐患报告 |
| | | // 如果存在安全隐患,自动生成安全隐患报告 |
| | | ComSwDangerReportDO comSwDangerReportDO = new ComSwDangerReportDO(); |
| | | Long dangerReportId = Snowflake.getId(); |
| | | comSwDangerReportDO.setId(dangerReportId); |
| | | comSwPatrolRecordReportDO.setReportId(dangerReportId); |
| | | comSwDangerReportDO.setDangerType(comSwPatrolRecordAddDTO.getPatrolType()); |
| | | if (comSwPatrolRecordAddDTO.getIsRectifyImmediately().intValue() == ComSwPatrolRecordAddDTO.isOk.yes && StringUtils.isNotEmpty(comSwPatrolRecordAddDTO.getTakeSteps())) { |
| | | if (comSwPatrolRecordAddDTO.getIsRectifyImmediately().intValue() == ComSwPatrolRecordAddDTO.isOk.yes |
| | | && StringUtils.isNotEmpty(comSwPatrolRecordAddDTO.getTakeSteps())) { |
| | | comSwDangerReportDO.setStatus(String.valueOf(SafeWordStatusEnum.YZG.getCode())); |
| | | comSwDangerReportDO.setRectifyTime(new SimpleDateFormat("yyyy-MM-dd").format(new Date())); |
| | | }else { |
| | | } else { |
| | | comSwDangerReportDO.setStatus(String.valueOf(SafeWordStatusEnum.DCL.getCode())); |
| | | } |
| | | BeanUtils.copyProperties(comSwPatrolRecordAddDTO, comSwDangerReportDO); |
| | | comSwDangerReportDO.setPersonName(comSwPatrolRecordAddDTO.getDPersonName()); |
| | | comSwDangerReportDO.setPersonPhone(comSwPatrolRecordAddDTO.getDPersonPhone()); |
| | | comSwDangerReportDAO.insert(comSwDangerReportDO); |
| | | }else { |
| | | //不存在安全隐患,生成安全工作记录 |
| | | } else { |
| | | // 不存在安全隐患,生成安全工作记录 |
| | | ComSwSafetyWorkRecordDO comSwSafetyWorkRecordDO = new ComSwSafetyWorkRecordDO(); |
| | | BeanUtils.copyProperties(comSwPatrolRecordAddDTO, comSwSafetyWorkRecordDO); |
| | | Long safetyWorkRecord = Snowflake.getId(); |
| | |
| | | } |
| | | ComSwPatrolRecordVO comSwPatrolRecordVO = new ComSwPatrolRecordVO(); |
| | | BeanUtils.copyProperties(comSwPatrolRecordDO, comSwPatrolRecordVO); |
| | | ComSwPatrolRecordReportDO comSwPatrolRecordReportDO = comSwPatrolRecordReportDAO.selectOne(new QueryWrapper<ComSwPatrolRecordReportDO>().lambda().eq(ComSwPatrolRecordReportDO::getPatrolRecordId, patrolRecordId)); |
| | | ComSwPatrolRecordReportDO comSwPatrolRecordReportDO = |
| | | comSwPatrolRecordReportDAO.selectOne(new QueryWrapper<ComSwPatrolRecordReportDO>().lambda() |
| | | .eq(ComSwPatrolRecordReportDO::getPatrolRecordId, patrolRecordId)); |
| | | if (null != comSwPatrolRecordReportDO) { |
| | | if (comSwPatrolRecordVO.getIsHiddenDanger().equals(ComSwPatrolRecordVO.isOk.yes)) { |
| | | if (null != comSwDangerReportDAO.selectById(comSwPatrolRecordReportDO.getReportId())) { |
| | | comSwPatrolRecordVO.setDisplayButton(3); |
| | | }else { |
| | | } else { |
| | | comSwPatrolRecordVO.setDisplayButton(2); |
| | | } |
| | | }else{ |
| | | } else { |
| | | if (null != comSwSafetyWorkRecordDAO.selectById(comSwPatrolRecordReportDO.getReportId())) { |
| | | comSwPatrolRecordVO.setDisplayButton(1); |
| | | } |
| | | } |
| | | } |
| | | |
| | | //组装巡查类型 |
| | | if(StringUtils.isNotEmpty(comSwPatrolRecordVO.getPatrolType())){ |
| | | // 组装巡查类型 |
| | | if (StringUtils.isNotEmpty(comSwPatrolRecordVO.getPatrolType())) { |
| | | StringBuilder sb = new StringBuilder(); |
| | | String patrolTypes[] = comSwPatrolRecordVO.getPatrolType().split(","); |
| | | String[] patrolTypes = comSwPatrolRecordVO.getPatrolType().split(","); |
| | | for (int i = 0; i < patrolTypes.length; i++) { |
| | | if(i != 0){ |
| | | if (i != 0) { |
| | | sb.append(","); |
| | | } |
| | | if(patrolTypes[i].equals("1")){ |
| | | if (patrolTypes[i].equals("1")) { |
| | | sb.append("防火巡查"); |
| | | }else if(patrolTypes[i].equals("2")){ |
| | | } else if (patrolTypes[i].equals("2")) { |
| | | sb.append("防汛巡查"); |
| | | }else if(patrolTypes[i].equals("3")){ |
| | | } else if (patrolTypes[i].equals("3")) { |
| | | sb.append("防疫巡查"); |
| | | } |
| | | } |
| | | comSwPatrolRecordVO.setPatrolType(sb.toString()); |
| | | } |
| | | //查询接班人员信息 |
| | | if(StringUtils.isNotEmpty(comSwPatrolRecordVO.getSuccessionPerson())){ |
| | | // 查询接班人员信息 |
| | | if (StringUtils.isNotEmpty(comSwPatrolRecordVO.getSuccessionPerson())) { |
| | | StringBuilder sb = new StringBuilder(); |
| | | String personIds[] = comSwPatrolRecordVO.getSuccessionPerson().split(","); |
| | | String[] personIds = comSwPatrolRecordVO.getSuccessionPerson().split(","); |
| | | for (int i = 0; i < personIds.length; i++) { |
| | | if(i != 0){ |
| | | if (i != 0) { |
| | | sb.append(","); |
| | | } |
| | | Map<String,String> personMap = comSwPatrolRecordDAO.getPbServiceTeamById(personIds[i]); |
| | | if(personMap != null){ |
| | | Map<String, String> personMap = comSwPatrolRecordDAO.getPbServiceTeamById(personIds[i]); |
| | | if (personMap != null) { |
| | | sb.append(personMap.get("name")); |
| | | } |
| | | } |
| | | comSwPatrolRecordVO.setSuccessionPerson(sb.toString()); |
| | | } |
| | | |
| | | //查询填报人名称 |
| | | if(comSwPatrolRecordVO.getCreateBy() != null){ |
| | | // 查询填报人名称 |
| | | if (comSwPatrolRecordVO.getCreateBy() != null) { |
| | | comSwPatrolRecordVO.setCreateName(comSwPatrolRecordDAO.getCreateName(comSwPatrolRecordVO.getCreateBy())); |
| | | } |
| | | |
| | | ComSwPatrolRecordReportDO recordReportDO = comSwPatrolRecordReportDAO.selectOne(new QueryWrapper<ComSwPatrolRecordReportDO>() |
| | | .lambda().eq(ComSwPatrolRecordReportDO::getPatrolRecordId,comSwPatrolRecordVO.getId())); |
| | | if(recordReportDO != null){ |
| | | ComSwPatrolRecordReportDO recordReportDO = |
| | | comSwPatrolRecordReportDAO.selectOne(new QueryWrapper<ComSwPatrolRecordReportDO>().lambda() |
| | | .eq(ComSwPatrolRecordReportDO::getPatrolRecordId, comSwPatrolRecordVO.getId())); |
| | | if (recordReportDO != null) { |
| | | comSwPatrolRecordVO.setServiceId(recordReportDO.getReportId()); |
| | | } |
| | | return R.ok(comSwPatrolRecordVO); |