ke
2024-07-19 08a962d2925baa255207fdf979e6fee794f1773b
skjcmanager/skjcmanager-service/skjcmanager-sm/src/main/java/cn/gistack/sm/sjztmd/service/impl/TbProjectServiceImpl.java
@@ -1,18 +1,24 @@
package cn.gistack.sm.sjztmd.service.impl;
import cn.gistack.sm.sjztmd.dto.TbProjectDTO;
import cn.gistack.sm.sjztmd.dto.TbProjectIsfillDTO;
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.IAttAdBaseService;
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.StatisticsPie;
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.StatisticsPrice;
import cn.gistack.sm.sjztmd.vo.StatisticsPriceVO;
import cn.gistack.sm.sjztmd.vo.TbProjectIsfillVO;
import cn.gistack.sm.sjztmd.vo.TbProjectVO;
import com.baomidou.dynamic.datasource.annotation.DS;
import com.baomidou.mybatisplus.core.metadata.IPage;
@@ -21,11 +27,14 @@
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 java.math.BigDecimal;
import java.text.ParseException;
import java.text.SimpleDateFormat;
import java.util.Arrays;
import java.util.Date;
import java.util.List;
@Service
@@ -36,6 +45,8 @@
   private final ITbProjectScheduleService tbProjectScheduleService;
   private final IAttResBaseService attResBaseService;
   @Autowired
   private  IAttAdBaseService iAttAdBaseService;
   @Override
   public Object getList(TbProjectVO tbProjectVO, IPage<TbProjectVO> page) {
@@ -53,6 +64,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);
@@ -128,7 +144,7 @@
            tbProject.setUpdateTime(DateUtil.now());
            updateById(tbProject);
         }else {
         } else {
            //无数据,新增
            TbProject save = new TbProject();
            save.setUpdateUser(AuthUtil.getUserId().toString());
@@ -151,4 +167,65 @@
         }
      });
   }
   @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);
   }
   @Override
   public StatisticsPrice statisticsPie(StatisticsParams statisticsParams) {
      AttAdBase ywxtAdDetail = iAttAdBaseService.getYwxtAdDetail(statisticsParams.getAdCode());
      if (ywxtAdDetail.getAdGrad().equals("1")) {
         StatisticsPrice    statisticsPie =baseMapper.getStatisticsPie(statisticsParams);
         return statisticsPie;
      }
      StatisticsPrice statisticsPie =baseMapper.getStatisticsPies(statisticsParams);
      return statisticsPie;
   }
   @Override
   public List<StatisticsPriceVO> statisticsBar(StatisticsParams statisticsParams) {
      AttAdBase ywxtAdDetail = iAttAdBaseService.getYwxtAdDetail(statisticsParams.getAdCode());
      if (ywxtAdDetail.getAdGrad().equals("1")) {
         List<StatisticsPriceVO>    statisticsPieBar =baseMapper.getStatisticsPieBar(statisticsParams);
         return statisticsPieBar;
      }
      List<StatisticsPriceVO>    statisticsPieBar =baseMapper.getStatisticsPieBars(statisticsParams);
      return statisticsPieBar;
   }
   @Override
   public void updateallcheck() throws Exception {
      Date now = new Date();
      SimpleDateFormat sdf = new SimpleDateFormat("yyyy-MM-dd");
      String today = sdf.format(now);
      // 转换为年月格式,用于检查是否为月初
      String yearMonth = sdf.format(sdf.parse(today).getTime()).substring(0, 7);
      // 检查当前日期是否为月初
      if (today.startsWith(yearMonth + "-01")) {
         baseMapper.updateallcheck();
      } else {
         System.out.println("不是月初,不予修改状态");
      }
   }
   @Override
   public void updateFill(TbProjectIsfillDTO fil) {
      baseMapper.updateFill(fil);
   }
   @Override
   public TbProjectIsfillVO getfill() {
      return baseMapper.getfill();
   }
}