From 870a04f893936e1e25c6fef4d21e561bdf38a980 Mon Sep 17 00:00:00 2001
From: songhuangfeng123 <shf18767906695@163.com>
Date: Mon, 22 Aug 2022 16:34:15 +0800
Subject: [PATCH] 目标fix
---
incident-manage/incident-manage-service/src/main/java/com/gkhy/safePlatform/incidentManage/service/impl/AccidentCaseServiceImpl.java | 143 +++++++++++++++++++++++++++++++++++++++++++++++
1 files changed, 143 insertions(+), 0 deletions(-)
diff --git a/incident-manage/incident-manage-service/src/main/java/com/gkhy/safePlatform/incidentManage/service/impl/AccidentCaseServiceImpl.java b/incident-manage/incident-manage-service/src/main/java/com/gkhy/safePlatform/incidentManage/service/impl/AccidentCaseServiceImpl.java
new file mode 100644
index 0000000..7f87919
--- /dev/null
+++ b/incident-manage/incident-manage-service/src/main/java/com/gkhy/safePlatform/incidentManage/service/impl/AccidentCaseServiceImpl.java
@@ -0,0 +1,143 @@
+package com.gkhy.safePlatform.incidentManage.service.impl;
+
+import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
+import com.gkhy.safePlatform.commons.enums.ResultCodes;
+import com.gkhy.safePlatform.commons.query.PageQuery;
+import com.gkhy.safePlatform.commons.utils.BeanCopyUtils;
+import com.gkhy.safePlatform.commons.utils.StringUtils;
+import com.gkhy.safePlatform.commons.vo.ResultVO;
+import com.gkhy.safePlatform.commons.vo.SearchResultVO;
+import com.gkhy.safePlatform.incidentManage.entity.*;
+import com.gkhy.safePlatform.incidentManage.enums.AccidentResultCodes;
+import com.gkhy.safePlatform.incidentManage.exception.AccidentException;
+import com.gkhy.safePlatform.incidentManage.model.dto.req.AccidentCaseReqDTO;
+import com.gkhy.safePlatform.incidentManage.model.dto.resp.AccidentCaseDetailRespDTO;
+import com.gkhy.safePlatform.incidentManage.model.dto.resp.AccidentCasePageRespDTO;
+import com.gkhy.safePlatform.incidentManage.query.AccidentCaseQuery;
+import com.gkhy.safePlatform.incidentManage.query.db.AccidentCaseDBQuery;
+import com.gkhy.safePlatform.incidentManage.service.AccidentCaseService;
+import com.gkhy.safePlatform.incidentManage.service.baseService.AccidentCaseInfoService;
+import org.springframework.beans.BeanUtils;
+import org.springframework.beans.factory.annotation.Autowired;
+import org.springframework.stereotype.Service;
+
+import java.util.*;
+
+@Service("accidentCaseService")
+public class AccidentCaseServiceImpl implements AccidentCaseService {
+
+ @Autowired
+ private AccidentCaseInfoService accidentCaseInfoService;
+
+
+ @Override
+ public SearchResultVO<List<AccidentCasePageRespDTO>> selectAccidentCaseList(PageQuery<AccidentCaseQuery> query) {
+ Long pageIndex = query.getPageIndex();
+ Long pageSize = query.getPageSize();
+ Page<AccidentCaseInfoPageDO> page = new Page<>(pageIndex, pageSize);
+
+ AccidentCaseDBQuery accidentCaseDBQuery = new AccidentCaseDBQuery();
+ if (query.getSearchParams() != null) {
+ BeanUtils.copyProperties(query.getSearchParams(), accidentCaseDBQuery);
+ }
+
+ List<AccidentCaseInfoPageDO> accidentCaseInfoPageDOList = accidentCaseInfoService.selectAccidentCaseList(page, accidentCaseDBQuery);
+ List<AccidentCasePageRespDTO> respList = BeanCopyUtils.copyBeanList(accidentCaseInfoPageDOList, AccidentCasePageRespDTO.class);
+
+ return new SearchResultVO<>(
+ true,
+ pageIndex,
+ pageSize, page.getPages(),
+ page.getTotal(),
+ respList,
+ ResultCodes.OK
+ );
+ }
+
+ @Override
+ public ResultVO addAccidentCase(Long uid, AccidentCaseReqDTO accidentCaseReqDTO) {
+ //必填项验证
+ checkRequired(accidentCaseReqDTO);
+
+ Date nowDate = new Date();
+ //1.新增事故案例
+ AccidentCaseInfo accidentCaseInfo = new AccidentCaseInfo();
+ BeanUtils.copyProperties(accidentCaseReqDTO, accidentCaseInfo);
+ accidentCaseInfo.setDelFlag(false);
+ accidentCaseInfo.setCreateUid(uid);
+ accidentCaseInfo.setGmtCreate(nowDate);
+ accidentCaseInfoService.addAccidentCase(accidentCaseInfo);
+ return new ResultVO(ResultCodes.OK);
+ }
+
+ @Override
+ public ResultVO<AccidentCaseDetailRespDTO> getAccidentCaseById(Long id) {
+ AccidentCaseDetailRespDTO AccidentCaseDetailRespDTO = new AccidentCaseDetailRespDTO();
+ //查询是否存在
+ AccidentCaseInfoDetailDO AccidentCaseInfoDetailDO = accidentCaseInfoService.selectAccidentCaseById(id);
+ if (AccidentCaseInfoDetailDO == null) {
+ throw new AccidentException(AccidentResultCodes.CASE_NOT_EXIST);
+ } else {
+ BeanUtils.copyProperties(AccidentCaseInfoDetailDO, AccidentCaseDetailRespDTO);
+
+ return new ResultVO<>(ResultCodes.OK, AccidentCaseDetailRespDTO);
+ }
+ }
+
+ @Override
+ public ResultVO updateAccidentCase(Long uid, AccidentCaseReqDTO accidentCaseReqDTO) {
+ Date nowDate = new Date();
+ //查询是否存在
+ AccidentCaseInfoDetailDO AccidentCaseInfoDetailDO = accidentCaseInfoService.selectAccidentCaseById(accidentCaseReqDTO.getId());
+ if (AccidentCaseInfoDetailDO == null) {
+ throw new AccidentException(AccidentResultCodes.CASE_NOT_EXIST);
+ } else {
+ AccidentCaseInfo accidentCaseInfo = new AccidentCaseInfo();
+ BeanUtils.copyProperties(accidentCaseReqDTO, accidentCaseInfo);
+ accidentCaseInfo.setUpdateUid(uid);
+ accidentCaseInfo.setGmtModitify(nowDate);
+ accidentCaseInfoService.updateAccidentCase(accidentCaseInfo);
+
+ return new ResultVO(ResultCodes.OK);
+ }
+ }
+
+ @Override
+ public ResultVO batchDeleteAccidentCase(Long[] ids) {
+ if (ids == null || ids.length==0){
+ throw new AccidentException(AccidentResultCodes.CASE_NULL);
+ } else {
+ for (Long id : ids){
+ deleteAccidentCase(id);
+ }
+ return new ResultVO(ResultCodes.OK);
+ }
+ }
+
+ private void deleteAccidentCase(Long id) {
+ //查询是否存在
+ AccidentCaseInfoDetailDO AccidentCaseInfoDetailDO = accidentCaseInfoService.selectAccidentCaseById(id);
+ if (AccidentCaseInfoDetailDO == null) {
+ throw new AccidentException(AccidentResultCodes.CASE_NOT_EXIST);
+ } else {
+ accidentCaseInfoService.deleteAccidentCaseById(id);
+ }
+ }
+
+ /**
+ * 验证必填项
+ *
+ * @return
+ */
+ private void checkRequired(AccidentCaseReqDTO AccidentCaseReqDTO) {
+ // 事故案例标题
+ if (AccidentCaseReqDTO.getCaseTitle() == null) {
+ throw new AccidentException(AccidentResultCodes.CASE_TITLE_NULL);
+ }
+ // 事故案例内容
+ if (StringUtils.isBlank(AccidentCaseReqDTO.getCaseContent())) {
+ throw new AccidentException(AccidentResultCodes.CASE_CONTENT_NULL);
+ }
+ }
+
+}
--
Gitblit v1.9.2