From 08f1b1f1804a8bd833d42f257908d80e88387b55 Mon Sep 17 00:00:00 2001
From: mitao <2763622819@qq.com>
Date: 星期五, 14 三月 2025 11:27:47 +0800
Subject: [PATCH] 3.5增加登录验证、修改密码、人员列表调整
---
springcloud_k8s_panzhihuazhihuishequ/service_community/src/main/java/com/panzhihua/service_community/service/impl/ComSwDangerReportServiceImpl.java | 419 +++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
1 files changed, 413 insertions(+), 6 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..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,11 +1,40 @@
package com.panzhihua.service_community.service.impl;
-import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
-import com.panzhihua.service_community.dao.ComSwDangerReportDAO;
-import com.panzhihua.service_community.model.dos.ComSwDangerReportDO;
-import com.panzhihua.service_community.service.ComSwDangerReportService;
-import lombok.extern.slf4j.Slf4j;
+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;
+
+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.R;
+import com.panzhihua.common.model.vos.community.ComSwDangerReportExcelVO;
+import com.panzhihua.common.model.vos.community.ComSwDangerReportVO;
+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.service.ComSwDangerReportService;
+
+import lombok.extern.slf4j.Slf4j;
/**
* @auther txb
@@ -14,6 +43,384 @@
*/
@Slf4j
@Service
-public class ComSwDangerReportServiceImpl extends ServiceImpl<ComSwDangerReportDAO, ComSwDangerReportDO> implements ComSwDangerReportService {
+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;
+
+ @Resource
+ private ComActDAO comActDAO;
+
+ @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 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) {
+ 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);
+ comSwDangerReportVO.setPatrolTime(new SimpleDateFormat("yyyy-MM-dd").format(comSwPatrolRecordDO.getPatrolTime()));
+ }
+ 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()));
+ }
+
+ // 所属社区名称
+ comSwDangerReportVO.setCommunityName(comActDAO.selectById(comSwDangerReportVO.getCommunityId()).getName());
+
+ // 查询指派人名称
+ 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()));
+ ComSwDangerReportDO comSwDangerReportDO1 =
+ comSwDangerReportDAO.selectById(comSwDangerReportHandleDTO.getDangerReportId());
+ if (!comSwDangerReportDO1.getStatus().equals(String.valueOf(SafeWordStatusEnum.DCL.getCode()))) {
+ return R.fail("该隐患报告已处理,请勿重复操作");
+ }
+ 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());
+ ComSwDangerReportDO comSwDangerReportDO1 =
+ comSwDangerReportDAO.selectById(comSwDangerReportRectifyDTO.getDangerReportId());
+ if (comSwDangerReportDO1.getStatus().equals(String.valueOf(SafeWordStatusEnum.YZG.getCode()))) {
+ return R.fail("该隐患报告已整改,请勿重复操作");
+ }
+ 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 -> {
+ // 整改人员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