package com.yunyan.business.document.y23.finalData;

import com.yunyan.business.constant.TemplateEpType;
import com.yunyan.business.document.y22.pojo.finalExcelY22.*;
import com.yunyan.business.document.y23.finalData.pojo.ChangeValueItemVo;
import com.yunyan.common.utils.StringUtils;

import java.util.Objects;

/**
 * 更新 决算的数据 初始化
 */
public class CalculateDataF2023DataUtils {

    /**
     * 计算 核算 一些数据
     * @param dataVo
     */
    public static void calculateData(FinalExcelDataVo dataVo) {
        if(!"2023".equals(dataVo.getYear()) && !"2024".equals(dataVo.getYear()) && !"2025".equals(dataVo.getYear())) {
            return;
        }

        //更新 p3t7
        updateP3T7(dataVo.getP3T7Vo());

    }


    /**
     * 更新 p3t7的 其他车辆的状态
     * @param oldData
     */
    private static void updateP3T7(FinalP3T7Vo oldData) {
        if(Objects.isNull(oldData)) {
            return;
        }
        if(Objects.isNull(oldData.getDeptOperateVo())) {
            return;
        }


        //设置与年初预算的变化率
        FinalP3T7ItemDeptOperateVo deptOperateVo = oldData.getDeptOperateVo();
        if(StringUtils.isNotBlank(deptOperateVo.getTotal()) && StringUtils.isNotBlank(deptOperateVo.getBegin())) {
            ChangeValueItemVo changeItemVo = FinalY23Utils.getChangeItemVo( deptOperateVo.getTotal(), deptOperateVo.getBegin());
            deptOperateVo.setChangeItemVo(changeItemVo);
        }
        //设置 对比上一年的
        if(StringUtils.isNotBlank(oldData.getDeptOperateVo().getTotal()) && StringUtils.isNotBlank(oldData.getDeptOperateVo().getLastYear())  ) {
            oldData.getDeptOperateVo().setCompareLastYearStr(FinalY23Utils.getAddOrSubStringP3t7s1(oldData.getDeptOperateVo().getTotal(), oldData.getDeptOperateVo().getLastYear()));
        }
    }


}
