From e986d4f68bea04a82dfcbfa1d65f62720c928864 Mon Sep 17 00:00:00 2001
From: yxm <zhp1521624>
Date: Fri, 28 Jun 2024 11:49:08 +0800
Subject: [PATCH] 项目管理校验状态优化v20240628
---
skjcmanager/skjcmanager-service/skjcmanager-sm/src/main/java/cn/gistack/sm/sjztmd/service/impl/TbProjectServiceImpl.java | 93 +++++++++++++++++++++++++++++++++++++++++++---
1 files changed, 87 insertions(+), 6 deletions(-)
diff --git a/skjcmanager/skjcmanager-service/skjcmanager-sm/src/main/java/cn/gistack/sm/sjztmd/service/impl/TbProjectServiceImpl.java b/skjcmanager/skjcmanager-service/skjcmanager-sm/src/main/java/cn/gistack/sm/sjztmd/service/impl/TbProjectServiceImpl.java
index 6c92c61..eb66de5 100644
--- a/skjcmanager/skjcmanager-service/skjcmanager-sm/src/main/java/cn/gistack/sm/sjztmd/service/impl/TbProjectServiceImpl.java
+++ b/skjcmanager/skjcmanager-service/skjcmanager-sm/src/main/java/cn/gistack/sm/sjztmd/service/impl/TbProjectServiceImpl.java
@@ -1,13 +1,18 @@
package cn.gistack.sm.sjztmd.service.impl;
import cn.gistack.sm.sjztmd.dto.TbProjectDTO;
+import cn.gistack.sm.sjztmd.entity.AttAdBase;
import cn.gistack.sm.sjztmd.entity.TbProject;
import cn.gistack.sm.sjztmd.entity.TbProjectSchedule;
+import cn.gistack.sm.sjztmd.excel.TbProjectExcel;
import cn.gistack.sm.sjztmd.mapper.TbProjectMapper;
+import cn.gistack.sm.sjztmd.service.IAttResBaseService;
import cn.gistack.sm.sjztmd.service.ITbProjectScheduleService;
import cn.gistack.sm.sjztmd.service.ITbProjectService;
import cn.gistack.sm.sjztmd.statisticsVO.StatisticsParams;
+import cn.gistack.sm.sjztmd.statisticsVO.StatisticsTable;
import cn.gistack.sm.sjztmd.statisticsVO.StatisticsTableProject;
+import cn.gistack.sm.sjztmd.util.CalculateUtils;
import cn.gistack.sm.sjztmd.vo.TbProjectVO;
import com.baomidou.dynamic.datasource.annotation.DS;
import com.baomidou.mybatisplus.core.metadata.IPage;
@@ -18,7 +23,7 @@
import org.springblade.core.tool.utils.StringUtil;
import org.springframework.stereotype.Service;
import org.springframework.transaction.annotation.Transactional;
-
+import java.math.BigDecimal;
import java.util.Arrays;
import java.util.List;
@@ -29,6 +34,7 @@
public class TbProjectServiceImpl extends ServiceImpl<TbProjectMapper, TbProject> implements ITbProjectService {
private final ITbProjectScheduleService tbProjectScheduleService;
+ private final IAttResBaseService attResBaseService;
@Override
public Object getList(TbProjectVO tbProjectVO, IPage<TbProjectVO> page) {
@@ -46,6 +52,11 @@
tbProjectDTO.setUpdateUser(AuthUtil.getUserId().toString());
tbProjectDTO.setUpdateTime(DateUtil.now());
+ if(tbProjectDTO.getIsFill().equals("0")){
+ tbProjectDTO.setCheckState("0");
+ }else if(tbProjectDTO.getIsFill().equals("1")){
+ tbProjectDTO.setCheckState("1");
+ }
//更新项目表
boolean update = updateById(tbProjectDTO);
@@ -55,12 +66,12 @@
if (tbProjectScheduleList != null && tbProjectScheduleList.size()>0){
tbProjectScheduleList.forEach(tbProjectSchedule -> {
tbProjectSchedule.setTbProjectId(tbProjectDTO.getGuid());
- tbProjectDTO.setUpdateUser(AuthUtil.getUserId().toString());
- tbProjectDTO.setUpdateTime(DateUtil.now());
+ tbProjectSchedule.setUpdateUser(AuthUtil.getUserId().toString());
+ tbProjectSchedule.setUpdateTime(DateUtil.now());
- if (StringUtil.isBlank(tbProjectDTO.getGuid())){
- tbProjectDTO.setCreateUser(AuthUtil.getUserId().toString());
- tbProjectDTO.setCreateTime(DateUtil.now());
+ if (StringUtil.isBlank(tbProjectSchedule.getGuid())){
+ tbProjectSchedule.setCreateUser(AuthUtil.getUserId().toString());
+ tbProjectSchedule.setCreateTime(DateUtil.now());
}
tbProjectScheduleService.saveOrUpdate(tbProjectSchedule);
});
@@ -84,4 +95,74 @@
public List<StatisticsTableProject> getStatisticsTable(StatisticsParams statisticsParams) {
return baseMapper.getStatisticsTable(statisticsParams);
}
+
+ @Override
+ public void importUser(List<TbProjectExcel> data, Boolean isCovered) {
+ data.forEach(tbProjectExcel -> {
+
+ String cityName = tbProjectExcel.getCityName();
+ String countyName = tbProjectExcel.getCountyName();
+
+ AttAdBase attAdBase = attResBaseService.getYwxtResInfo(cityName,countyName);
+
+ TbProject params = new TbProject();
+
+ params.setCityCode(attAdBase.getPAdCode());
+ params.setCountyCode(attAdBase.getAdCode());
+ params.setTbYear(tbProjectExcel.getTbYear());
+
+
+ TbProject tbProject = baseMapper.getTbProjectInfo(params);
+
+ if (tbProject != null){
+ //有这条数据,更新
+
+ //更新中央资金
+ BigDecimal oldCenterFund = new BigDecimal(tbProject.getCenterFund());
+ BigDecimal newCenterFund = new BigDecimal(tbProjectExcel.getCenterFund());
+ tbProject.setCenterFund(CalculateUtils.add(oldCenterFund,newCenterFund));
+
+ //更新地方资金
+ BigDecimal oldLocalFund = new BigDecimal(tbProject.getCenterFund());
+ BigDecimal newLocalFund = new BigDecimal(tbProjectExcel.getCenterFund());
+ tbProject.setLocalFund(CalculateUtils.add(oldLocalFund,newLocalFund));
+
+ //更新修改人,修改时间
+ tbProject.setUpdateUser(AuthUtil.getUserId().toString());
+ tbProject.setUpdateTime(DateUtil.now());
+
+ updateById(tbProject);
+ } else {
+ //无数据,新增
+ TbProject save = new TbProject();
+ save.setUpdateUser(AuthUtil.getUserId().toString());
+ save.setCreateUser(AuthUtil.getUserId().toString());
+ save.setCreateTime(DateUtil.now());
+ save.setUpdateTime(DateUtil.now());
+
+ save.setCityName(attAdBase.getPAdName());
+ save.setCityCode(attAdBase.getPAdCode());
+
+ save.setCountyName(attAdBase.getAdName());
+ save.setCountyCode(attAdBase.getAdCode());
+
+ save.setCenterFund(tbProjectExcel.getCenterFund());
+ save.setLocalFund(tbProjectExcel.getLocalFund());
+
+ save.setTbYear(tbProjectExcel.getTbYear());
+
+ save(save);
+ }
+ });
+ }
+
+ @Override
+ public boolean updatecheckState(String id,String checkState) {
+ TbProject tbProject = getById(id);
+ if(checkState.equals("0")){
+ tbProject.setIsFill(checkState);
+ }
+ tbProject.setCheckState(checkState);
+ return saveOrUpdate(tbProject);
+ }
}
--
Gitblit v1.9.3