From 70d2a5d0f9c6951b2d4cac954041ed73582ff7eb Mon Sep 17 00:00:00 2001 From: liujie <1793218484@qq.com> Date: 星期一, 09 六月 2025 11:54:00 +0800 Subject: [PATCH] 6.9新增登录失败冻结逻辑 --- springcloud_k8s_panzhihuazhihuishequ/service_community/src/main/java/com/panzhihua/service_community/service/impl/ComSwDangerReportServiceImpl.java | 89 ++++++++++++++++++++++++++++++++++++++++---- 1 files changed, 80 insertions(+), 9 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 76d16e0..7be2c3b 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,10 +1,14 @@ package com.panzhihua.service_community.service.impl; +import java.text.SimpleDateFormat; import java.util.List; import java.util.Map; import javax.annotation.Resource; +import com.panzhihua.common.model.dtos.community.ComSwDangerReportEditDTO; +import com.panzhihua.service_community.dao.ComActDAO; +import com.panzhihua.service_community.model.dos.ComSwSafetyWorkRecordDO; import org.springframework.beans.BeanUtils; import org.springframework.stereotype.Service; @@ -53,6 +57,9 @@ @Resource private UserService userService; + + @Resource + private ComActDAO comActDAO; @Override public R pageDangerReport(ComSwPatrolRecordPageDTO comSwPatrolRecordPageDTO) { @@ -121,6 +128,54 @@ } @Override + public R editDangerReport(ComSwDangerReportEditDTO comSwDangerReportEditDTO) { + ComSwDangerReportDO comSwDangerReportDO = comSwDangerReportDAO.selectById(comSwDangerReportEditDTO.getId()); + if (null == comSwDangerReportDO) { + return R.fail("该隐患报告不存在"); + } + BeanUtils.copyProperties(comSwDangerReportEditDTO, comSwDangerReportDO); + comSwDangerReportDO.setDangerType(comSwDangerReportEditDTO.getPatrolType()); + ComSwPatrolRecordReportDO comSwPatrolRecordReportDO = comSwPatrolRecordReportDAO.selectOne(new QueryWrapper<ComSwPatrolRecordReportDO>() + .lambda().eq(ComSwPatrolRecordReportDO::getReportId, comSwDangerReportEditDTO.getId())); + ComSwPatrolRecordDO comSwPatrolRecordDO = new ComSwPatrolRecordDO(); + if (null != comSwPatrolRecordReportDO) { + comSwPatrolRecordDO = comSwPatrolRecordDAO.selectOne(new QueryWrapper<ComSwPatrolRecordDO>() + .lambda().eq(ComSwPatrolRecordDO::getId, comSwPatrolRecordReportDO.getPatrolRecordId())); + Long id = comSwPatrolRecordDO.getId(); + BeanUtils.copyProperties(comSwDangerReportEditDTO, comSwPatrolRecordDO); + comSwPatrolRecordDO.setId(id); + try { + comSwPatrolRecordDO.setPatrolTime(new SimpleDateFormat("yyyy-MM-dd").parse(comSwDangerReportEditDTO.getPatrolTime())); + comSwPatrolRecordDO.setSuccessionTime(new SimpleDateFormat("yyyy-MM-dd").parse(comSwDangerReportEditDTO.getSuccessionTime())); + } catch (Exception e) { + e.printStackTrace(); + } + // 根据传递的巡查人员id查询巡查人员的名字和电话 + StringBuilder nameString = new StringBuilder(); + StringBuilder phoneString = new StringBuilder(); + if (StringUtils.isNotEmpty(comSwDangerReportEditDTO.getPatrolPerson())) { + String[] personIds = comSwDangerReportEditDTO.getPatrolPerson().split(","); + 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(","); + } + nameString.append(person.get("name")); + phoneString.append(person.get("phone")); + } + } + comSwPatrolRecordDO.setPersonName(nameString.toString()); + comSwPatrolRecordDO.setPersonPhone(phoneString.toString()); + } + } + comSwPatrolRecordDAO.updateById(comSwPatrolRecordDO); + comSwDangerReportDAO.updateById(comSwDangerReportDO); + return R.ok(); + } + + @Override public R detailDangerReport(Long dangerReportId) { ComSwDangerReportDO comSwDangerReportDO = comSwDangerReportDAO.selectById(dangerReportId); if (null == comSwDangerReportDO) { @@ -134,6 +189,7 @@ ComSwPatrolRecordDO comSwPatrolRecordDO = comSwPatrolRecordDAO.selectById(comSwPatrolRecordReportDO.getPatrolRecordId()); BeanUtils.copyProperties(comSwPatrolRecordDO, comSwDangerReportVO); + comSwDangerReportVO.setPatrolTime(new SimpleDateFormat("yyyy-MM-dd").format(comSwPatrolRecordDO.getPatrolTime())); } BeanUtils.copyProperties(comSwDangerReportDO, comSwDangerReportVO); @@ -176,6 +232,9 @@ if (comSwDangerReportVO.getCreateBy() != null) { comSwDangerReportVO.setCreateName(comSwPatrolRecordDAO.getCreateName(comSwDangerReportVO.getCreateBy())); } + + // 所属社区名称 + comSwDangerReportVO.setCommunityName(comActDAO.selectById(comSwDangerReportVO.getCommunityId()).getName()); // 查询指派人名称 if (StringUtils.isNotEmpty(comSwDangerReportVO.getAssignPerson())) { @@ -341,15 +400,27 @@ @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,",")); - // }); + list.forEach(comSwDangerReportExcelVO -> { + // 整改人员id查询整改人员的名字和电话 + StringBuilder dangerNameString = new StringBuilder(); + StringBuilder dangerPhoneString = new StringBuilder(); + if (StringUtils.isNotEmpty(comSwDangerReportExcelVO.getDpersonName())) { + String[] dangerIds = comSwDangerReportExcelVO.getDpersonName().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")); + } + } + comSwDangerReportExcelVO.setDpersonName(dangerNameString.toString()); + comSwDangerReportExcelVO.setDpersonPhone(dangerPhoneString.toString()); + } + }); return R.ok(list); } } -- Gitblit v1.7.1