From 068e93cfe7e05cdd0161ae40e16e1c4eae4a2058 Mon Sep 17 00:00:00 2001
From: guoshilong <123456>
Date: Thu, 18 Apr 2024 10:02:02 +0800
Subject: [PATCH] 机构关联水库,编辑水库行政区划时同步更改机构

---
 skjcmanager/skjcmanager-service/skjcmanager-sm/src/main/java/cn/gistack/sm/sjztmd/service/impl/AttResBaseServiceImpl.java |  119 +++++++++++++++++++++++++++++++++++++++++++++++++++++++----
 1 files changed, 111 insertions(+), 8 deletions(-)

diff --git a/skjcmanager/skjcmanager-service/skjcmanager-sm/src/main/java/cn/gistack/sm/sjztmd/service/impl/AttResBaseServiceImpl.java b/skjcmanager/skjcmanager-service/skjcmanager-sm/src/main/java/cn/gistack/sm/sjztmd/service/impl/AttResBaseServiceImpl.java
index 15d9b86..183a1dc 100644
--- a/skjcmanager/skjcmanager-service/skjcmanager-sm/src/main/java/cn/gistack/sm/sjztmd/service/impl/AttResBaseServiceImpl.java
+++ b/skjcmanager/skjcmanager-service/skjcmanager-sm/src/main/java/cn/gistack/sm/sjztmd/service/impl/AttResBaseServiceImpl.java
@@ -2,23 +2,27 @@
 
 import cn.gistack.sm.intelligentCall.mapper.CallTaskMapper;
 import cn.gistack.sm.sjztmd.dto.AttResBaseUserDTO;
+import cn.gistack.sm.sjztmd.entity.AttAdBase;
 import cn.gistack.sm.sjztmd.entity.AttResBase;
+import cn.gistack.sm.sjztmd.entity.RelResLabel;
+import cn.gistack.sm.sjztmd.excel.AttResBaseUserExcel;
 import cn.gistack.sm.sjztmd.mapper.AttResBaseMapper;
 import cn.gistack.sm.sjztmd.service.IAttResBaseService;
-import cn.gistack.sm.sjztmd.vo.AttResAdVO;
-import cn.gistack.sm.sjztmd.vo.AttResBaseVO;
-import cn.gistack.sm.sjztmd.vo.ManagePersonVO;
+import cn.gistack.sm.sjztmd.service.IRelResLabelService;
+import cn.gistack.sm.sjztmd.vo.*;
+import cn.gistack.system.feign.ISysClient;
 import com.baomidou.dynamic.datasource.annotation.DS;
 import com.baomidou.mybatisplus.core.metadata.IPage;
 import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
+import org.springblade.core.secure.BladeUser;
+import org.springblade.core.secure.utils.AuthUtil;
 import org.springblade.core.tool.utils.DateUtil;
+import org.springblade.core.tool.utils.StringUtil;
 import org.springframework.beans.factory.annotation.Autowired;
 import org.springframework.stereotype.Service;
+import org.springframework.transaction.annotation.Transactional;
 import org.springframework.web.bind.annotation.RequestParam;
-
-import java.util.ArrayList;
-import java.util.List;
-import java.util.Map;
+import java.util.*;
 
 /**
  * @ClassName AttResBaseServiceImpl
@@ -34,13 +38,30 @@
 	@Autowired
 	private CallTaskMapper callTaskMapper;
 
+	@Autowired
+	private IRelResLabelService relResLabelService;
+
+	@Autowired
+	private ISysClient sysClient;
+
+
 	@Override
 	public IPage<AttResBase> selectAttResBasePage(IPage<AttResBase> page, AttResBase attResBase) {
 		return page.setRecords(baseMapper.selectAttResBasePage(page,attResBase));
 	}
 
 	@Override
-	public IPage<AttResBase> getListByRegion(IPage<AttResBase> page,Map<String, Object> obj) {
+	public Object selectAttResBaseGeneralInvestigation(IPage<AttResBaseGeneralInvestigationVO> page, AttResBaseGeneralInvestigationVO attResBase) {
+
+		if (attResBase.getIsPage()){
+			return page.setRecords(baseMapper.selectAttResBaseGeneralInvestigation(page,attResBase));
+		}else {
+			return baseMapper.selectAttResBaseGeneralInvestigation(null,attResBase);
+		}
+	}
+
+	@Override
+	public IPage<AttResBaseVO> getListByRegion(IPage<AttResBaseVO> page,Map<String, Object> obj) {
 		return page.setRecords(baseMapper.getListByRegion(page,obj));
 	}
 
@@ -68,9 +89,59 @@
 		return page.setRecords(attResBaseUserDTOList);
 	}
 
+
 	@Override
+	public List<AttResBaseUserExcel> exportAttResBaseUser(Map<String, Object> params) {
+
+
+		List<AttResBaseUserExcel> attResBaseUserDTOList = baseMapper.getAttResBaseUserExcel(params);
+		return attResBaseUserDTOList;
+	}
+
+	@Override
+	@Transactional(rollbackFor = Exception.class)
 	public Boolean updateResBaseByGuid(AttResBase attResBase) {
 		attResBase.setUpdateTime(DateUtil.now());
+
+		String updateBy = baseMapper.getUpdateLog(attResBase.getGuid());
+		if (StringUtil.isBlank(updateBy)){
+			updateBy = "";
+		}
+		BladeUser user = AuthUtil.getUser();
+		//修改人基础信息
+		String account = user.getAccount();
+		String userName = user.getUserName();
+		String nowTime = DateUtil.format(DateUtil.now(),DateUtil.PATTERN_DATETIME);
+
+		String updateUser = StringUtil.format("[{}-{}-{}]",account,userName,nowTime);
+
+		//修改的东西
+		String interiorAdGuid = attResBase.getInteriorAdGuid();
+		String label = attResBase.getLabel();
+		String heightBaseStdTp = attResBase.getHeightBaseStdTp();
+		String isGate = attResBase.getIsGate();
+
+		String updateLog = "";
+		List<String> strList = new ArrayList<>();
+		if (StringUtil.isNotBlank(interiorAdGuid)){
+			strList.add("行政区划修改为"+ interiorAdGuid);
+		}
+		strList.add("标签修改为"+label);
+		strList.add("高程基准面修改为"+heightBaseStdTp);
+		strList.add("是否有闸修改为"+isGate);
+
+		String updateContent = String.join("、",strList);
+
+		updateLog = updateUser + updateContent + ";";
+		updateBy = updateBy + updateLog;
+		//向水库标签表中更新数据
+		relResLabelService.updateEntity(attResBase.getGuid(),attResBase.getLabel());
+
+		//更新机构表中的水库位置
+		sysClient.updateDeptByTb(interiorAdGuid,attResBase.getGuid());
+
+		//向操作记录表中增加记录
+		baseMapper.updateRelResUpdateLoc(attResBase.getGuid(),updateBy);
 		return baseMapper.updateResBaseByGuid(attResBase);
 	}
 
@@ -93,4 +164,36 @@
 	public AttResAdVO getWaterRegionInfoByResGuid(String guid) {
 		return baseMapper.getWaterRegionInfoByResGuid(guid);
 	}
+
+	@Override
+	public int getDimResInfoACount() {
+		return baseMapper.getDimResInfoACount();
+	}
+
+	@Override
+	public Boolean updateIsShowStatus(String ids, Integer status) {
+		return baseMapper.updateIsShowStatus(ids,status);
+	}
+
+	/**
+	 * 根据水库名称、所在区域查询改水库的数量
+	 * @param resName 水库名称
+	 * @param countyCode 区县
+	 * @return
+	 */
+	@Override
+	public Integer getWaterCountByResNameAndCountyName(String resName, String countyCode) {
+		return baseMapper.getWaterCountByResNameAndCountyName(resName,countyCode);
+	}
+
+	@Override
+	public AttResAdVO getResAd(String resId) {
+		return baseMapper.getResAd(resId);
+	}
+
+	@Override
+	public AttAdBase getYwxtResInfo(String cityName, String countyName) {
+		return baseMapper.getYwxtResInfo(cityName,countyName);
+	}
+
 }

--
Gitblit v1.9.3