From 8d5f3db4e1e88b77cb3dc04565ad007f2421c74e Mon Sep 17 00:00:00 2001
From: guoshilong <123456>
Date: Wed, 20 Mar 2024 09:28:04 +0800
Subject: [PATCH] 普查填报逻辑修改
---
skjcmanager/skjcmanager-service/skjcmanager-sm/src/main/java/cn/gistack/sm/sjztmd/service/impl/TbResGeneralInvestigationServiceImpl.java | 103 +++++++++++++++++++++++++++++++++++++++++++++++++++
1 files changed, 103 insertions(+), 0 deletions(-)
diff --git a/skjcmanager/skjcmanager-service/skjcmanager-sm/src/main/java/cn/gistack/sm/sjztmd/service/impl/TbResGeneralInvestigationServiceImpl.java b/skjcmanager/skjcmanager-service/skjcmanager-sm/src/main/java/cn/gistack/sm/sjztmd/service/impl/TbResGeneralInvestigationServiceImpl.java
index ea8829e..bb8f766 100644
--- a/skjcmanager/skjcmanager-service/skjcmanager-sm/src/main/java/cn/gistack/sm/sjztmd/service/impl/TbResGeneralInvestigationServiceImpl.java
+++ b/skjcmanager/skjcmanager-service/skjcmanager-sm/src/main/java/cn/gistack/sm/sjztmd/service/impl/TbResGeneralInvestigationServiceImpl.java
@@ -1,12 +1,22 @@
package cn.gistack.sm.sjztmd.service.impl;
import cn.gistack.sm.sjztmd.entity.TbResGeneralInvestigation;
+import cn.gistack.sm.sjztmd.entity.TbResGeneralInvestigationState;
import cn.gistack.sm.sjztmd.mapper.TbResGeneralInvestigationMapper;
import cn.gistack.sm.sjztmd.service.ITbResGeneralInvestigationService;
+import cn.gistack.sm.sjztmd.service.ITbResGeneralInvestigationStateService;
+import cn.gistack.sm.sjztmd.vo.TbResGeneralInvestigationParam;
import com.baomidou.dynamic.datasource.annotation.DS;
+import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
+import org.springblade.core.secure.utils.AuthUtil;
+import org.springblade.core.tool.api.R;
+import org.springblade.core.tool.utils.DateUtil;
+import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Service;
import org.springframework.transaction.annotation.Transactional;
+
+import java.util.List;
/**
* @PROJECT_NAME: skjcmanager
@@ -19,4 +29,97 @@
@Transactional(rollbackFor = Exception.class)
public class TbResGeneralInvestigationServiceImpl extends ServiceImpl<TbResGeneralInvestigationMapper, TbResGeneralInvestigation> implements ITbResGeneralInvestigationService {
+ @Autowired
+ private ITbResGeneralInvestigationStateService tbResGeneralInvestigationStateService;
+
+ @Override
+ @Transactional
+ public R saveOrUpdateBy(TbResGeneralInvestigation entity) {
+
+ QueryWrapper queryWrapper = new QueryWrapper();
+ queryWrapper.eq("\"res_guid\"",entity.getResGuid());
+ queryWrapper.eq("\"tb_year\"",entity.getTbYear());
+// queryWrapper.eq("\"tb_quarter\"",entity.getTbQuarter());
+ TbResGeneralInvestigationState state = tbResGeneralInvestigationStateService.getOne(queryWrapper);
+ if (null == state) {
+ state = new TbResGeneralInvestigationState();
+ state.setResGuid(entity.getResGuid());
+ state.setTbQuarter(entity.getTbQuarter());
+ state.setTbYear(entity.getTbYear());
+ state.setCreateTime(entity.getCreateTime());
+ state.setCreateUser(entity.getCreateUser());
+ } else {
+ if (state.getCheckState() == 1 || state.getCheckState() == 2) {
+ return R.fail(entity.getResName() + "本年度已经普查完成,不能在提交了。");
+ }
+ }
+
+ // 是否普查完成 1是 0否
+ if (entity.getCheckState() != 0) {
+ state.setCheckState(entity.getIsInvCom());
+ }else{
+ state.setCheckState(0);
+ }
+
+ tbResGeneralInvestigationStateService.saveOrUpdate(state);
+
+ entity.setTbStateId(state.getGuid());
+ return R.status(this.saveOrUpdate(entity));
+ }
+
+ @Override
+ @Transactional(rollbackFor = Exception.class)
+ public R saveOrUpdateByBatch(TbResGeneralInvestigationParam tbResGeneralInvestigationParam) {
+ List<TbResGeneralInvestigation> list = tbResGeneralInvestigationParam.getList();
+ TbResGeneralInvestigation entity = list.get(0);
+
+ //查询该水库本年度是否有填报状态记录
+ QueryWrapper queryWrapper = new QueryWrapper();
+ queryWrapper.eq("\"res_guid\"",entity.getResGuid());
+ queryWrapper.eq("\"tb_year\"",entity.getTbYear());
+ TbResGeneralInvestigationState state = tbResGeneralInvestigationStateService.getOne(queryWrapper);
+ if (null == state) {
+ //无填报状态记录则新建
+ state = new TbResGeneralInvestigationState();
+ state.setResGuid(entity.getResGuid());
+ state.setTbQuarter(entity.getTbQuarter());
+ state.setTbYear(entity.getTbYear());
+ state.setCreateTime(entity.getCreateTime());
+ state.setCreateUser(entity.getCreateUser());
+ } else {
+ //查看填报状态,只有0填报中才可以一直填报
+ if (state.getCheckState() == 1 || state.getCheckState() == 2) {
+ return R.fail(entity.getResName() + "本年度已经普查完成,不能在提交了。");
+ }
+ }
+
+ state.setCheckState(tbResGeneralInvestigationParam.getCheckState());
+ tbResGeneralInvestigationStateService.saveOrUpdate(state);
+// //先把数据移除
+// QueryWrapper delete = new QueryWrapper();
+// delete.eq("\"tb_state_id\"",state.getGuid());
+// boolean remove = remove(delete);
+//
+// if (remove){
+//
+// }
+
+ for (int i = 0; i < list.size(); i++) {
+ TbResGeneralInvestigation tbResGeneralInvestigation = list.get(i);
+ //id清空方便批量新增
+// tbResGeneralInvestigation.setGuid("");
+
+ if (tbResGeneralInvestigation.getCreateTime() == null){
+ tbResGeneralInvestigation.setCreateTime(DateUtil.now());
+ }
+
+ if (tbResGeneralInvestigation.getCreateUser() == null){
+ tbResGeneralInvestigation.setCreateUser(AuthUtil.getUserId().toString());
+ }
+
+ //设置状态表id
+ tbResGeneralInvestigation.setTbStateId(state.getGuid());
+ }
+ return R.status(saveOrUpdateBatch(list));
+ }
}
--
Gitblit v1.9.3