From 32d0e82e741bfee3a0a83a712bc0992dedad7b9b Mon Sep 17 00:00:00 2001
From: jiangping <jp@doumee.com>
Date: 星期一, 27 五月 2024 16:24:57 +0800
Subject: [PATCH] 最新版本
---
server/visits/dmvisit_service/src/main/java/com/doumee/service/business/impl/HiddenDangerServiceImpl.java | 218 ++++++++++++++++++++++++++++++++++++++++++++++++------
1 files changed, 192 insertions(+), 26 deletions(-)
diff --git a/server/visits/dmvisit_service/src/main/java/com/doumee/service/business/impl/HiddenDangerServiceImpl.java b/server/visits/dmvisit_service/src/main/java/com/doumee/service/business/impl/HiddenDangerServiceImpl.java
index c5113c3..56714bf 100644
--- a/server/visits/dmvisit_service/src/main/java/com/doumee/service/business/impl/HiddenDangerServiceImpl.java
+++ b/server/visits/dmvisit_service/src/main/java/com/doumee/service/business/impl/HiddenDangerServiceImpl.java
@@ -1,28 +1,30 @@
package com.doumee.service.business.impl;
-import com.doumee.biz.system.SystemDictDataBiz;
-import com.doumee.core.constants.ResponseStatus;
-import com.doumee.core.exception.BusinessException;
-import com.doumee.core.model.LoginUserInfo;
-import com.doumee.core.model.PageData;
-import com.doumee.core.model.PageWrap;
-import com.doumee.core.utils.Constants;
-import com.doumee.core.utils.Utils;
-import com.doumee.dao.business.HiddenDangerMapper;
-import com.doumee.dao.business.MemberMapper;
-import com.doumee.dao.business.model.*;
-import com.doumee.dao.system.MultifileMapper;
-import com.doumee.dao.system.model.Multifile;
-import com.doumee.service.business.HiddenDangerService;
import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
import com.baomidou.mybatisplus.core.conditions.update.UpdateWrapper;
import com.baomidou.mybatisplus.core.metadata.IPage;
import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
+import com.doumee.biz.system.SystemDictDataBiz;
+import com.doumee.core.constants.ResponseStatus;
+import com.doumee.core.exception.BusinessException;
+import com.doumee.core.model.PageData;
+import com.doumee.core.model.PageWrap;
+import com.doumee.core.utils.Constants;
+import com.doumee.core.utils.Utils;
+import com.doumee.dao.business.HiddenDangerLogMapper;
+import com.doumee.dao.business.HiddenDangerMapper;
+import com.doumee.dao.business.HiddenDangerParamMapper;
+import com.doumee.dao.business.MemberMapper;
+import com.doumee.dao.business.model.*;
+import com.doumee.dao.system.MultifileMapper;
+import com.doumee.dao.system.model.Multifile;
+import com.doumee.service.business.HiddenDangerLogService;
+import com.doumee.service.business.HiddenDangerService;
import com.github.yulichang.wrapper.MPJLambdaWrapper;
import org.apache.commons.lang3.StringUtils;
-import org.apache.shiro.SecurityUtils;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Service;
+import org.springframework.transaction.annotation.Transactional;
import org.springframework.util.CollectionUtils;
import java.util.*;
@@ -44,11 +46,64 @@
@Autowired
private MemberMapper memberMapper;
- @Override
- public Integer create(HiddenDanger model) {
+ @Autowired
+ private HiddenDangerParamMapper hiddenDangerParamMapper;
- hiddenDangerMapper.insert(model);
- return model.getId();
+ @Autowired
+ private HiddenDangerLogMapper hiddenDangerLogMapper;
+
+
+ @Override
+ public Integer create(HiddenDanger hiddenDanger) {
+ if(Objects.isNull(hiddenDanger)
+ || Objects.isNull(hiddenDanger.getLoginUserInfo())
+ || Objects.isNull(hiddenDanger.getAreaId())
+ || Objects.isNull(hiddenDanger.getCateId())
+ || Objects.isNull(hiddenDanger.getApplyCheckUserId())
+ || Objects.isNull(hiddenDanger.getSubmitTime())
+ || StringUtils.isBlank(hiddenDanger.getContent())
+ ){
+ throw new BusinessException(ResponseStatus.BAD_REQUEST);
+ }
+ hiddenDanger.setIsdeleted(Constants.ZERO);
+ hiddenDanger.setCreateDate(new Date());
+ HiddenDangerParam hiddenDangerParam = hiddenDangerParamMapper.selectById(hiddenDanger.getAreaId());
+ if(Objects.isNull(hiddenDangerParam)){
+ throw new BusinessException(ResponseStatus.DATA_EMPTY.getCode(),"鏈煡璇㈠埌闅愭偅鍖哄煙");
+ }
+ hiddenDanger.setCreator(hiddenDanger.getLoginUserInfo().getId());
+ hiddenDanger.setAreaName(hiddenDangerParam.getName());
+ hiddenDanger.setStatus(Constants.ZERO);
+ if(StringUtils.isBlank(hiddenDangerParam.getMemberIds())
+ || hiddenDangerParam.getMemberIds().indexOf(hiddenDanger.getApplyCheckUserId().toString())<0){
+ throw new BusinessException(ResponseStatus.DATA_EMPTY.getCode(),"闅愭偅鍖哄煙涓庡鐞嗕汉涓嶅尮閰�");
+ }
+ hiddenDangerMapper.insert(hiddenDanger);
+ //瀛樺偍 鎿嶄綔鏃ュ織
+ HiddenDangerLog hiddenDangerLog = new HiddenDangerLog();
+ hiddenDangerLog.setIsdeleted(Constants.ZERO);
+ hiddenDangerLog.setCreateDate(new Date());
+ hiddenDangerLog.setCreator(hiddenDanger.getCreator());
+ hiddenDangerLog.setHiddenDangerId(hiddenDanger.getId());
+ hiddenDangerLog.setObjType(Constants.ZERO);
+ hiddenDangerLogMapper.insert(hiddenDangerLog);
+
+ List<Multifile> multifiles = hiddenDanger.getMultifileList();
+ if(com.github.xiaoymin.knife4j.core.util.CollectionUtils.isNotEmpty(multifiles)){
+ for (int i = 0; i < multifiles.size(); i++) {
+ Multifile multifile = multifiles.get(i);
+ multifile.setCreateDate(hiddenDanger.getCreateDate());
+ multifile.setCreator(hiddenDanger.getCreator());
+ multifile.setIsdeleted(Constants.ZERO);
+ multifile.setObjId(hiddenDanger.getId());
+ multifile.setObjType(Constants.multifileObjType.zero);
+ multifile.setSortnum(i+1);
+ multifileMapper.insert(multifile);
+ }
+ }
+
+
+ return hiddenDanger.getId();
}
@Override
@@ -93,17 +148,17 @@
.select("t1.name", HiddenDanger::getMemberName)
.select("t1.phone",HiddenDanger::getMemberPhone)
.select("t2.name",HiddenDanger::getCheckorName)
- .select("t3.phone",HiddenDanger::getCheckorPhone)
+ .select("t2.phone",HiddenDanger::getCheckorPhone)
.select("t4.company_name_path",HiddenDanger::getCompanyName);
queryWrapper.leftJoin(Member.class,Member::getId,HiddenDanger::getMemberId)
- .leftJoin("company t4 on t1.company_id=t4.id")
.leftJoin(Member.class,Member::getId,HiddenDanger::getCheckUserId)
- .leftJoin(HiddenDangerParam.class,HiddenDangerParam::getId,HiddenDanger::getCateId);
+ .leftJoin(HiddenDangerParam.class,HiddenDangerParam::getId,HiddenDanger::getCateId)
+ .leftJoin("company t4 on t1.company_id=t4.id");
queryWrapper
.eq(HiddenDanger::getId, id).last("limit 1");
HiddenDanger model = hiddenDangerMapper.selectJoinOne(HiddenDanger.class,queryWrapper);
- if(model ==null || Constants.equalsObject(model.getIsdeleted(),Constants.ONE)){
+ if(model ==null || Constants.equalsInteger(model.getIsdeleted(),Constants.ONE)){
throw new BusinessException(ResponseStatus.DATA_EMPTY);
}
initFiles(model);
@@ -170,12 +225,12 @@
.select("t1.name", HiddenDanger::getMemberName)
.select("t1.phone",HiddenDanger::getMemberPhone)
.select("t2.name",HiddenDanger::getCheckorName)
- .select("t3.phone",HiddenDanger::getCheckorPhone)
+ .select("t2.phone",HiddenDanger::getCheckorPhone)
.select("t4.company_name_path",HiddenDanger::getCompanyName);
queryWrapper.leftJoin(Member.class,Member::getId,HiddenDanger::getMemberId)
- .leftJoin("company t4 on t1.company_id=t4.id")
.leftJoin(Member.class,Member::getId,HiddenDanger::getCheckUserId)
- .leftJoin(HiddenDangerParam.class,HiddenDangerParam::getId,HiddenDanger::getCateId);
+ .leftJoin(HiddenDangerParam.class,HiddenDangerParam::getId,HiddenDanger::getCateId)
+ .leftJoin("company t4 on t1.company_id=t4.id");
queryWrapper
.eq(pageWrap.getModel().getId() != null, HiddenDanger::getId, pageWrap.getModel().getId())
.eq(pageWrap.getModel().getCreator() != null, HiddenDanger::getCreator, pageWrap.getModel().getCreator())
@@ -219,4 +274,115 @@
QueryWrapper<HiddenDanger> wrapper = new QueryWrapper<>(hiddenDanger);
return hiddenDangerMapper.selectCount(wrapper);
}
+
+
+
+ @Override
+ @Transactional(rollbackFor = {Exception.class,BusinessException.class})
+ public void dealHiddenDanger(HiddenDanger hiddenDanger){
+ if(Objects.isNull(hiddenDanger)
+ || Objects.isNull(hiddenDanger.getId())
+ || Objects.isNull(hiddenDanger.getDealTime())
+ || Objects.isNull(hiddenDanger.getLoginUserInfo())
+ || Objects.isNull(hiddenDanger.getStatus())
+ ){
+ throw new BusinessException(ResponseStatus.BAD_REQUEST);
+ }
+ HiddenDanger model = hiddenDangerMapper.selectById(hiddenDanger.getId());
+ if(Objects.isNull(model)){
+ throw new BusinessException(ResponseStatus.DATA_EMPTY.getCode(),"鏈煡璇㈠埌闅愭偅鏁版嵁");
+ }
+ if (!model.getStatus().equals(Constants.ZERO)) {
+ throw new BusinessException(ResponseStatus.NOT_ALLOWED.getCode(),"鏁版嵁鐘舵�佸凡娴佽浆!");
+ }
+ if (!model.getCheckUserId().equals(hiddenDanger.getEditor())) {
+ throw new BusinessException(ResponseStatus.NOT_ALLOWED.getCode(),"澶勭悊浜洪潪褰撳墠浜哄憳锛�");
+ }
+ if(!(hiddenDanger.getStatus().equals(Constants.ONE)||hiddenDanger.getStatus().equals(Constants.TWO))){
+ throw new BusinessException(ResponseStatus.NOT_ALLOWED.getCode(),"涓氬姟绫诲瀷閿欒锛�");
+ }
+ //鏁存敼鍓嶆枃浠�
+ if(hiddenDanger.getStatus().equals(Constants.ONE)){
+ List<Multifile> beforList = hiddenDanger.getDealBeforeFileList();
+ if(com.github.xiaoymin.knife4j.core.util.CollectionUtils.isNotEmpty(beforList)){
+ for (int i = 0; i < beforList.size(); i++) {
+ Multifile multifile = beforList.get(i);
+ multifile.setCreateDate(new Date());
+ multifile.setCreator(hiddenDanger.getEditor());
+ multifile.setIsdeleted(Constants.ZERO);
+ multifile.setObjId(hiddenDanger.getId());
+ multifile.setObjType(Constants.multifileObjType.one);
+ multifile.setSortnum(i+1);
+ multifileMapper.insert(multifile);
+ }
+ }
+ }
+ List<Multifile> afterList = hiddenDanger.getDealAfterFileList();
+ if(com.github.xiaoymin.knife4j.core.util.CollectionUtils.isNotEmpty(afterList)){
+ for (int i = 0; i < afterList.size(); i++) {
+ Multifile multifile = afterList.get(i);
+ multifile.setCreateDate(new Date());
+ multifile.setCreator(hiddenDanger.getEditor());
+ multifile.setIsdeleted(Constants.ZERO);
+ multifile.setObjId(hiddenDanger.getId());
+ multifile.setObjType(Constants.multifileObjType.two);
+ multifile.setSortnum(i+1);
+ multifileMapper.insert(multifile);
+ }
+ }
+ hiddenDanger.setEditor(hiddenDanger.getLoginUserInfo().getId());
+ hiddenDanger.setEditDate(new Date());
+ hiddenDangerMapper.updateById(hiddenDanger);
+ //瀛樺偍 鎿嶄綔鏃ュ織
+ HiddenDangerLog hiddenDangerLog = new HiddenDangerLog();
+ hiddenDangerLog.setIsdeleted(Constants.ZERO);
+ hiddenDangerLog.setCreateDate(new Date());
+ hiddenDangerLog.setCreator(hiddenDanger.getCreator());
+ hiddenDangerLog.setHiddenDangerId(hiddenDanger.getId());
+ hiddenDangerLog.setObjType(hiddenDanger.getStatus().equals(Constants.ONE)?Constants.FOUR:Constants.TWO);
+ hiddenDangerLogMapper.insert(hiddenDangerLog);
+ }
+
+
+ @Override
+ @Transactional(rollbackFor = {Exception.class,BusinessException.class})
+ public void transferHiddenDanger(HiddenDanger hiddenDanger){
+ if(Objects.isNull(hiddenDanger)
+ || Objects.isNull(hiddenDanger.getId())
+ || Objects.isNull(hiddenDanger.getDealTime())
+ || Objects.isNull(hiddenDanger.getLoginUserInfo())
+ || Objects.isNull(hiddenDanger.getCheckUserId())
+ ){
+ throw new BusinessException(ResponseStatus.BAD_REQUEST);
+ }
+ HiddenDanger model = hiddenDangerMapper.selectById(hiddenDanger.getId());
+ if(Objects.isNull(model)){
+ throw new BusinessException(ResponseStatus.DATA_EMPTY.getCode(),"鏈煡璇㈠埌闅愭偅鏁版嵁");
+ }
+ if (!model.getStatus().equals(Constants.ZERO)) {
+ throw new BusinessException(ResponseStatus.NOT_ALLOWED.getCode(),"鏁版嵁鐘舵�佸凡娴佽浆!");
+ }
+ if (!model.getCheckUserId().equals(hiddenDanger.getEditor())) {
+ throw new BusinessException(ResponseStatus.NOT_ALLOWED.getCode(),"澶勭悊浜洪潪褰撳墠浜哄憳锛�");
+ }
+ if(!(hiddenDanger.getStatus().equals(Constants.ONE)||hiddenDanger.getStatus().equals(Constants.TWO))){
+ throw new BusinessException(ResponseStatus.NOT_ALLOWED.getCode(),"涓氬姟绫诲瀷閿欒锛�");
+ }
+ if(model.getCheckUserId().equals(hiddenDanger.getCheckUserId())){
+ throw new BusinessException(ResponseStatus.NOT_ALLOWED.getCode(),"鏃犳硶杞氦缁欒嚜宸�");
+ }
+ hiddenDanger.setEditor(hiddenDanger.getLoginUserInfo().getId());
+ hiddenDanger.setEditDate(new Date());
+ hiddenDangerMapper.updateById(hiddenDanger);
+ //瀛樺偍 鎿嶄綔鏃ュ織
+ HiddenDangerLog hiddenDangerLog = new HiddenDangerLog();
+ hiddenDangerLog.setIsdeleted(Constants.ZERO);
+ hiddenDangerLog.setCreateDate(new Date());
+ hiddenDangerLog.setCreator(hiddenDanger.getCreator());
+ hiddenDangerLog.setHiddenDangerId(hiddenDanger.getId());
+ hiddenDangerLog.setObjType(Constants.ONE);
+ hiddenDangerLogMapper.insert(hiddenDangerLog);
+ }
+
+
}
--
Gitblit v1.9.3