|
@@ -8,9 +8,12 @@ import java.text.DecimalFormat;
|
|
|
import java.text.SimpleDateFormat;
|
|
|
import java.util.*;
|
|
|
|
|
|
+/**
|
|
|
+ * 导出数据计算类
|
|
|
+ */
|
|
|
public class ExportUtil1 {
|
|
|
public static String POWER_DEPARTMENT="配电检修工区";
|
|
|
- public static String POWER_BDZ="变电站";
|
|
|
+ public static String POWER_BDZ="变压器";
|
|
|
public static String POWER_BOXBDZ="箱式变电站";
|
|
|
public static String POWER_HGW="环网柜";
|
|
|
public static String POWER_KGG="高压开关柜";
|
|
@@ -21,7 +24,28 @@ public class ExportUtil1 {
|
|
|
public static String POWER_KGGCOUNT="160200010";
|
|
|
public static String POWER_HJ="合计";
|
|
|
|
|
|
+ /**
|
|
|
+ * 一览表汇总
|
|
|
+ * @param erpCreditList
|
|
|
+ * @param maintainDataList
|
|
|
+ * @return
|
|
|
+ */
|
|
|
public static List<Schedule> getScheduleList(List<ErpCredit> erpCreditList,List<MaintainData> maintainDataList){
|
|
|
+ DecimalFormat decimalFormat = new DecimalFormat("#0.00");
|
|
|
+ String itemNameAll="合计";//工程名称
|
|
|
+ Double budgetBuildProjectAll=0.0;//预算建筑工程
|
|
|
+ Double budgetInstallProjectAll=0.0;//预算安装工程
|
|
|
+ Double budgetEquipmentValueAll=0.0;//预算设备价值
|
|
|
+ Double budgetOtherFeeAll=0.0;//预算其他费用
|
|
|
+ Double budgetTotalFeeAll=0.0;//预算合计金额
|
|
|
+ Double actualBuildProjectAll=0.0;//实际金额建筑工程
|
|
|
+ Double actualIntallProjectAll=0.0;//实际安装工程
|
|
|
+ Double actualEquipmentValueAll=0.0;//实际设备价值
|
|
|
+ Double actualOtherFeeAll=0.0;//实际其他费用
|
|
|
+ Double actualTotalFeeAll=0.0;//实际合计
|
|
|
+ Double addSubtractionLinesAll=0.0;//增加额
|
|
|
+ Double addSubtractionRateAll=0.0;//增加率
|
|
|
+ Schedule scheduletotal = new Schedule();
|
|
|
List<Schedule> schedules = new ArrayList<Schedule>();
|
|
|
Schedule schedule = null;
|
|
|
if (null!=erpCreditList&&erpCreditList.size()>0){
|
|
@@ -31,49 +55,113 @@ public class ExportUtil1 {
|
|
|
schedules.add(schedule);
|
|
|
}
|
|
|
}
|
|
|
+ for (Schedule s:schedules){
|
|
|
+ if (null!=s.getBudgetBuildProject()){
|
|
|
+ budgetBuildProjectAll+=Double.parseDouble(s.getBudgetBuildProject());
|
|
|
+ scheduletotal.setBudgetBuildProject(decimalFormat.format(budgetBuildProjectAll));
|
|
|
+ }
|
|
|
+ if (null!=s.getBudgetTotalFee()){
|
|
|
+ budgetInstallProjectAll+=Double.parseDouble(s.getBudgetTotalFee());
|
|
|
+ scheduletotal.setBudgetInstallProject(decimalFormat.format(budgetInstallProjectAll));
|
|
|
+ }
|
|
|
+ if (null!=s.getBudgetEquipmentValue()){
|
|
|
+ budgetEquipmentValueAll+=Double.parseDouble(s.getBudgetEquipmentValue());
|
|
|
+ scheduletotal.setBudgetEquipmentValue(decimalFormat.format(budgetEquipmentValueAll));
|
|
|
+ }
|
|
|
+ if (null!=s.getBudgetOtherFee()){
|
|
|
+ budgetOtherFeeAll+=Double.parseDouble(s.getBudgetOtherFee());
|
|
|
+ scheduletotal.setBudgetOtherFee(decimalFormat.format(budgetOtherFeeAll));
|
|
|
+ }
|
|
|
+ if (null!=s.getBudgetTotalFee()){
|
|
|
+ budgetTotalFeeAll+=Double.parseDouble(s.getBudgetTotalFee());
|
|
|
+ scheduletotal.setBudgetTotalFee(decimalFormat.format(budgetTotalFeeAll));
|
|
|
+ }
|
|
|
+ if (null!=s.getActualBuildProject()){
|
|
|
+ actualBuildProjectAll+=Double.parseDouble(s.getActualBuildProject());
|
|
|
+ scheduletotal.setActualBuildProject(decimalFormat.format(actualBuildProjectAll));
|
|
|
+ }
|
|
|
+ if (null!=s.getActualIntallProject()){
|
|
|
+ actualIntallProjectAll+=Double.parseDouble(s.getActualIntallProject());
|
|
|
+ scheduletotal.setActualIntallProject(decimalFormat.format(actualIntallProjectAll));
|
|
|
+ }
|
|
|
+ if (null!=s.getActualEquipmentValue()){
|
|
|
+ actualEquipmentValueAll+=Double.parseDouble(s.getActualEquipmentValue());
|
|
|
+ scheduletotal.setActualEquipmentValue(decimalFormat.format(actualEquipmentValueAll));
|
|
|
+ }
|
|
|
+ if (null!=s.getActualOtherFee()){
|
|
|
+ actualOtherFeeAll+=Double.parseDouble(s.getActualOtherFee());
|
|
|
+ scheduletotal.setActualOtherFee(decimalFormat.format(actualOtherFeeAll));
|
|
|
+ }
|
|
|
+ if (null!=s.getActualTotalFee()){
|
|
|
+ actualTotalFeeAll+=Double.parseDouble(s.getActualTotalFee());
|
|
|
+ scheduletotal.setActualTotalFee(decimalFormat.format(actualTotalFeeAll));
|
|
|
+ }
|
|
|
+ if (null!=s.getAddSubtractionLines()){
|
|
|
+ addSubtractionLinesAll+=Double.parseDouble(s.getAddSubtractionLines());
|
|
|
+ scheduletotal.setAddSubtractionLines(decimalFormat.format(addSubtractionLinesAll));
|
|
|
+ }
|
|
|
+ if (null!=s.getAddSubtractionRate()){
|
|
|
+ addSubtractionRateAll+=Double.parseDouble(s.getAddSubtractionRate());
|
|
|
+ scheduletotal.setAddSubtractionRate(decimalFormat.format(addSubtractionRateAll));
|
|
|
+ }
|
|
|
+ }
|
|
|
+ scheduletotal.setItemName(itemNameAll);
|
|
|
+ schedules.add(scheduletotal);
|
|
|
return schedules;
|
|
|
}
|
|
|
//一览表 实际较预算增减
|
|
|
public static Schedule getActualRelative(Schedule schedule,ErpCredit erpCredit,List<MaintainData> maintainDataList){
|
|
|
DecimalFormat decimalFormat = new DecimalFormat("#0.00");
|
|
|
- schedule = getScheduleBudget(schedule,erpCredit,maintainDataList);
|
|
|
- schedule = getScheduleActual(schedule,erpCredit);
|
|
|
- double addSubtractionLines = 0.0;
|
|
|
- double addSubtractionRate1=0.0;
|
|
|
- String addSubtractionRate2="";
|
|
|
+ Schedule scheduleBudget = getScheduleBudget(schedule,erpCredit,maintainDataList);//得到预算合计费用
|
|
|
+ Schedule scheduleActual = getScheduleActual(scheduleBudget,erpCredit);//得到实际费用
|
|
|
+ double addSubtractionLines = 0.0;//增加额
|
|
|
+ double addSubtractionRate1=0.0;//增减去率
|
|
|
+ //判断为空的条件
|
|
|
+ //如果实际合计金额为空 赋予初始值为0
|
|
|
if (null==schedule.getActualTotalFee()) {
|
|
|
schedule.setActualTotalFee("0");
|
|
|
}
|
|
|
+ //如果预算合计金额为空,赋予初始值0
|
|
|
if (null==schedule.getBudgetTotalFee()){
|
|
|
schedule.setBudgetTotalFee("0");
|
|
|
}
|
|
|
+ //增加率
|
|
|
addSubtractionLines=Double.parseDouble(schedule.getActualTotalFee())-Double.parseDouble(schedule.getBudgetTotalFee());
|
|
|
- schedule.setAddSubtractionLines(String.valueOf(addSubtractionLines));
|
|
|
- if (null==schedule.getBudgetTotalFee()) {
|
|
|
+ schedule.setAddSubtractionLines(decimalFormat.format(addSubtractionLines));//添加入郑家率
|
|
|
+ if (null==schedule.getBudgetTotalFee()) {//如果预算价值为空,赋初始值为1;
|
|
|
schedule.setAddSubtractionLines("1");
|
|
|
}
|
|
|
- addSubtractionRate1 = addSubtractionLines/Double.parseDouble(schedule.getBudgetTotalFee());
|
|
|
- addSubtractionRate2 = decimalFormat.format(addSubtractionRate1);
|
|
|
- schedule.setAddSubtractionRate(addSubtractionRate2);
|
|
|
- return schedule;
|
|
|
+ //计算增减率
|
|
|
+ addSubtractionRate1 = addSubtractionLines/Double.parseDouble(schedule.getBudgetTotalFee())*100;
|
|
|
+ schedule.setAddSubtractionRate(decimalFormat.format(addSubtractionRate1));
|
|
|
+ return scheduleActual;
|
|
|
}
|
|
|
//获取:一览表 预算价值
|
|
|
public static Schedule getScheduleBudget(Schedule schedule,ErpCredit erpCredit,List<MaintainData> maintainDataList){
|
|
|
+ DecimalFormat decimalFormat = new DecimalFormat("#0.00");
|
|
|
if (null!=maintainDataList&&maintainDataList.size()>0){
|
|
|
for (MaintainData maintainData:maintainDataList){
|
|
|
//判断id是否一样
|
|
|
if (maintainData.getProjectId().equals(erpCredit.getItemId())){
|
|
|
- schedule.setBudgetBuildProject(String.valueOf(maintainData.getBuildingFee()));//建筑费
|
|
|
- schedule.setBudgetInstallProject(String.valueOf(maintainData.getInstallFee()+maintainData.getMaterialFee()));
|
|
|
- schedule.setBudgetEquipmentValue(String.valueOf(maintainData.getEquipmentFee()));//设备购置费
|
|
|
- schedule.setBudgetTotalFee(String.valueOf(maintainData.getEquipmentFee()+maintainData.getInstallFee()+maintainData.getMaterialFee()+maintainData.getEquipmentFee()));
|
|
|
+ schedule.setBudgetBuildProject(decimalFormat.format(maintainData.getBuildingFee()));//建筑费
|
|
|
+ //安装供材 = 安装费+主材费
|
|
|
+ schedule.setBudgetInstallProject(decimalFormat.format(maintainData.getInstallFee()+maintainData.getMaterialFee()));
|
|
|
+ schedule.setBudgetEquipmentValue(decimalFormat.format(maintainData.getEquipmentFee()));//设备购置费
|
|
|
+ //其他费用合计
|
|
|
+ schedule.setBudgetOtherFee(decimalFormat.format(maintainData.getTotalFee()));
|
|
|
+ //预算合计费用
|
|
|
+ schedule.setBudgetTotalFee(decimalFormat.format(maintainData.getBuildingFee()+maintainData.getInstallFee()
|
|
|
+ +maintainData.getMaterialFee()+maintainData.getEquipmentFee()+maintainData.getTotalFee()));
|
|
|
}
|
|
|
}
|
|
|
}
|
|
|
return schedule;
|
|
|
}
|
|
|
+ //计算一览表合计
|
|
|
+
|
|
|
//获取:一览表 实际价值
|
|
|
public static Schedule getScheduleActual(Schedule schedule,ErpCredit erpCredit){
|
|
|
+ DecimalFormat decimalFormat = new DecimalFormat("#0.00");
|
|
|
boolean flag = false;
|
|
|
List<ErpCreditMaterial> erpCreditChild2s = null;//得到材料费金额
|
|
|
List<ErpCreditEquipment> erpCreditChild1s = null;//得到设备费金额
|
|
@@ -83,98 +171,100 @@ public class ExportUtil1 {
|
|
|
schedule.setItemId(erpCredit.getItemId());//得到项目定义编号
|
|
|
schedule.setItemName(erpCredit.getItemName());//得到项目名称
|
|
|
if (null!=erpCredit.getConsBuildingFee()){//如果建筑费不为空
|
|
|
- //得到建筑费
|
|
|
- schedule.setActualBuildProject(String.valueOf(erpCredit.getConsBuildingFee()));
|
|
|
- actualTotalFee+=erpCredit.getConsBuildingFee();
|
|
|
+ //得到实际建筑工程
|
|
|
+ schedule.setActualBuildProject(decimalFormat.format(erpCredit.getConsBuildingFee()));
|
|
|
+ actualTotalFee+=erpCredit.getConsBuildingFee();//合计金额加上
|
|
|
}
|
|
|
erpCreditChild2s = erpCredit.getErpCreditChild2s();//得到材料费
|
|
|
//判断材料费
|
|
|
- if (erpCreditChild2s!=null&&erpCreditChild2s.size()>0){
|
|
|
- for (ErpCreditMaterial erpCreditChild2:erpCreditChild2s){
|
|
|
- if (null!=erpCreditChild2.getMtlBookedFee2()){
|
|
|
+ if (erpCreditChild2s!=null&&erpCreditChild2s.size()>0){//如果材料费不为空
|
|
|
+ for (ErpCreditMaterial erpCreditChild2:erpCreditChild2s){//循环材料费集合
|
|
|
+ if (null!=erpCreditChild2.getMtlBookedFee2()){//如果材料费不为空
|
|
|
netAmount+=erpCreditChild2.getMtlBookedFee2();//得到材料费入账金额
|
|
|
flag = true;
|
|
|
}
|
|
|
}
|
|
|
- if (flag){
|
|
|
- schedule.setActualIntallProject(String.valueOf(netAmount));
|
|
|
- actualTotalFee+=netAmount;
|
|
|
+ if (flag){//如果有材料费
|
|
|
+ if (null!=erpCredit.getConsInstallFee()){
|
|
|
+ schedule.setActualIntallProject(decimalFormat.format(netAmount+erpCredit.getConsInstallFee()));
|
|
|
+ actualTotalFee+=netAmount+erpCredit.getConsInstallFee();//合计金额累加
|
|
|
+ }else {
|
|
|
+ schedule.setActualIntallProject(decimalFormat.format(netAmount));
|
|
|
+ actualTotalFee+=netAmount;//合计金额累加
|
|
|
+ }
|
|
|
+
|
|
|
}
|
|
|
- flag = false;
|
|
|
+ flag = false;//数据请0
|
|
|
netAmount = 0.0;
|
|
|
+ }else {
|
|
|
+ if (null!=erpCredit.getConsInstallFee()){
|
|
|
+ schedule.setActualIntallProject(decimalFormat.format(erpCredit.getConsInstallFee()));
|
|
|
+ actualTotalFee+=erpCredit.getConsInstallFee();//合计金额累加
|
|
|
+ }
|
|
|
}
|
|
|
erpCreditChild1s = erpCredit.getErpCreditChild1s();//得到设备费
|
|
|
//判断设备费
|
|
|
if (null!=erpCreditChild1s&&erpCreditChild1s.size()>0){
|
|
|
for (ErpCreditEquipment erpCreditChild1:erpCreditChild1s){
|
|
|
if (null!=erpCreditChild1.getEqmBookedFee1()){
|
|
|
- netAmount+=erpCreditChild1.getEqmBookedFee1();//得到
|
|
|
+ netAmount+=erpCreditChild1.getEqmBookedFee1();//得到设备费累加(设备价值)
|
|
|
flag=true;
|
|
|
}
|
|
|
}
|
|
|
if (flag){
|
|
|
- schedule.setActualEquipmentValue(String.valueOf(netAmount));
|
|
|
- actualTotalFee+=netAmount;
|
|
|
+ schedule.setActualEquipmentValue(decimalFormat.format(netAmount));//实际设备价值
|
|
|
+ actualTotalFee+=netAmount;//实际费用累加
|
|
|
}
|
|
|
- flag=false;
|
|
|
+ flag=false;//数据清0
|
|
|
netAmount=0.0;
|
|
|
}
|
|
|
//得到其他费用合计
|
|
|
- if (null!=erpCredit.getOtherTotalFee()){
|
|
|
- schedule.setActualOtherFee(String.valueOf(erpCredit.getOtherTotalFee()));
|
|
|
- actualTotalFee+=erpCredit.getOtherTotalFee();
|
|
|
+ if (null!=erpCredit.getOtherTotalFee()){//得到其他费用
|
|
|
+ schedule.setActualOtherFee(decimalFormat.format(erpCredit.getOtherTotalFee()));
|
|
|
+ actualTotalFee+=erpCredit.getOtherTotalFee();//合计金额累加
|
|
|
}
|
|
|
//添加合计金额
|
|
|
- schedule.setActualTotalFee(String.valueOf(actualTotalFee));
|
|
|
+ schedule.setActualTotalFee(decimalFormat.format(actualTotalFee));//写入合计金额
|
|
|
return schedule;
|
|
|
}
|
|
|
|
|
|
/**
|
|
|
- * 其他费用明细表
|
|
|
+ * 其他费用明细表 实际费用
|
|
|
* @param erpCreditList
|
|
|
* @return
|
|
|
*/
|
|
|
- public static ScheduleOther getScheduleOfOtherExpenses(List<ErpCredit> erpCreditList,List<MaintainData> maintainDataList){
|
|
|
+ public static ScheduleOther getScheduleOfOtherExpenses(List<ErpCredit> erpCreditList){
|
|
|
DecimalFormat decimalFormat = new DecimalFormat("#0.00");
|
|
|
ScheduleOther scheduleOther = new ScheduleOther();
|
|
|
Double requisitionSite=0.0;//建设场地征用及清理费
|
|
|
Double compensationAcquisition=0.0;//土地征用补偿费
|
|
|
- Double cleaningFees=0.0;//余物清理费
|
|
|
- Double storageFee=0.0;//集中配送物资保管费
|
|
|
Double compensateFee=0.0;//土地征用补偿费(赔青费)
|
|
|
Double managementFee=0.0;//项目建设管理费
|
|
|
Double preWorkingFee=0.0;//项目前期工作费
|
|
|
Double itemManageFee=0.0;//项目管理经费
|
|
|
- Double theTenderFee=0.0;//招标费
|
|
|
Double supervisionFee=0.0;//工程监理费
|
|
|
Double technicalFee=0.0;//项目建设技术服务费
|
|
|
Double surveyFee=0.0;//工程勘察费
|
|
|
Double designFee=0.0;//工程设计费
|
|
|
- Double drawingBudgetFee=0.0;//施工图预算编制费
|
|
|
- Double evaluationFee=0.0;//项目后评价费
|
|
|
Double economicFee=0.0;//技术经济标准变值管理费
|
|
|
Double inspectionFee=0.0;//工程建设监督检测费
|
|
|
Double preparationFee=0.0;//生产准备费
|
|
|
Double basicFee=0.0;//基本预备费
|
|
|
Double reserveFee=0.0;//资本化利息
|
|
|
Double totalFee=0.0;//合计
|
|
|
- if (null!=maintainDataList&&maintainDataList.size()>0){
|
|
|
- for (MaintainData maintainData:maintainDataList){
|
|
|
- cleaningFees+=maintainData.getDamages();//清理费
|
|
|
- preWorkingFee+=maintainData.getPreliminaryWorkFee();//项目前期工作费
|
|
|
- }
|
|
|
- scheduleOther.setCleaningFees(decimalFormat.format(cleaningFees));
|
|
|
- scheduleOther.setPreWorkingFee(decimalFormat.format(preparationFee));
|
|
|
- }
|
|
|
if (null!=erpCreditList&&erpCreditList.size()>0){
|
|
|
for (ErpCredit erpCredit:erpCreditList){
|
|
|
//如果线路施工赔偿费不等于空,土地征用补偿费累加
|
|
|
if (null!=erpCredit.getOtherLineDamages()){
|
|
|
- compensateFee+=erpCredit.getOtherLineDamages();
|
|
|
+ compensateFee+=erpCredit.getOtherLineDamages();//赔青费
|
|
|
+ }
|
|
|
+ //前期工作费合计
|
|
|
+ if (null!=erpCredit.getOtherBeWorkFee()){
|
|
|
+ preWorkingFee+=erpCredit.getOtherBeWorkFee();
|
|
|
}
|
|
|
//如果法人管理费不为空,则赋值项目管理经费
|
|
|
if (null!=erpCredit.getOtherLegalManage()){
|
|
|
- itemManageFee=+erpCredit.getOtherLegalManage();
|
|
|
+ itemManageFee+=erpCredit.getOtherLegalManage();//项目管理经费
|
|
|
}
|
|
|
//如果监理费不为空,则赋值为工程监理费
|
|
|
if (null!=erpCredit.getOtherSupervisorFee()){
|
|
@@ -193,11 +283,11 @@ public class ExportUtil1 {
|
|
|
//项目建设技术服务费(暂无)
|
|
|
technicalFee=surveyFee+economicFee;
|
|
|
//项目建设管理费
|
|
|
- managementFee=itemManageFee+supervisionFee;
|
|
|
+ managementFee=itemManageFee+supervisionFee+preWorkingFee;
|
|
|
//建设场地征用费
|
|
|
requisitionSite=compensationAcquisition+compensateFee;
|
|
|
//合计
|
|
|
- totalFee=requisitionSite+managementFee+technicalFee+inspectionFee+preparationFee+basicFee+reserveFee;
|
|
|
+ totalFee=requisitionSite+managementFee+technicalFee+inspectionFee+preparationFee+basicFee+reserveFee+preWorkingFee;
|
|
|
scheduleOther.setCompensateFee(decimalFormat.format(compensateFee));//土地征用补偿费
|
|
|
scheduleOther.setItemManageFee(decimalFormat.format(itemManageFee));//项目管理经费
|
|
|
scheduleOther.setSupervisionFee(decimalFormat.format(supervisionFee));//工程监理费
|
|
@@ -209,6 +299,54 @@ public class ExportUtil1 {
|
|
|
scheduleOther.setTotalFee(decimalFormat.format(totalFee));//合计
|
|
|
return scheduleOther;
|
|
|
}
|
|
|
+ /**
|
|
|
+ * 其他费用明细表 预算费用
|
|
|
+ * @param
|
|
|
+ * @return
|
|
|
+ */
|
|
|
+ public static ScheduleOther getScheduleOfOtherExpensesReg(List<MaintainData> maintainDataList){
|
|
|
+ DecimalFormat decimalFormat = new DecimalFormat("#0.00");
|
|
|
+ Double requisitionSite=0.0;//建设场地征用及清理费
|
|
|
+ ScheduleOther scheduleOther = new ScheduleOther();
|
|
|
+ Double cleaningFees=0.0;//余物清理费
|
|
|
+ Double managementFee=0.0;//项目建设管理费
|
|
|
+ Double preWorkingFee=0.0;//项目前期工作费
|
|
|
+ Double itemManageFee=0.0;//项目管理经费
|
|
|
+ Double supervisionFee=0.0;//工程监理费
|
|
|
+ Double designFee=0.0;//工程设计费
|
|
|
+ Double preparationFee=0.0;//生产准备费
|
|
|
+ Double compensateFee=0.0;//土地征用补偿费(赔青费)
|
|
|
+ Double totalFee=0.0;//合计
|
|
|
+ if (null!=maintainDataList&&maintainDataList.size()>0){
|
|
|
+ for (MaintainData maintainData:maintainDataList){
|
|
|
+ compensateFee+=maintainData.getDamages();
|
|
|
+ cleaningFees+=maintainData.getDamages();//清理费
|
|
|
+ preWorkingFee+=maintainData.getPreliminaryWorkFee();//项目前期工作费
|
|
|
+ itemManageFee+=maintainData.getMaterialFee();//法人管理经费
|
|
|
+ supervisionFee+=maintainData.getSupervisionFee();//监理费
|
|
|
+ designFee+=maintainData.getDesignFee();//工程设计费
|
|
|
+ }
|
|
|
+ //项目建设管理费
|
|
|
+ managementFee = preWorkingFee+itemManageFee+supervisionFee;
|
|
|
+ //合计金额
|
|
|
+ totalFee=preWorkingFee+itemManageFee+supervisionFee+designFee;
|
|
|
+ scheduleOther.setPreWorkingFee(decimalFormat.format(preparationFee));//项目前期工作费合计
|
|
|
+ scheduleOther.setItemManageFee(decimalFormat.format(itemManageFee));//法人管理经费
|
|
|
+// scheduleOther.setCleaningFees(decimalFormat.format(cleaningFees));//余物清理费
|
|
|
+ scheduleOther.setSupervisionFee(decimalFormat.format(supervisionFee));//工程监理费
|
|
|
+ scheduleOther.setDesignFee(decimalFormat.format(designFee));//工程设计费合计
|
|
|
+ scheduleOther.setPreWorkingFee(decimalFormat.format(preparationFee));
|
|
|
+ //合计金额
|
|
|
+ scheduleOther.setTotalFee(decimalFormat.format(totalFee));//合计金额
|
|
|
+ scheduleOther.setCompensateFee(decimalFormat.format(compensateFee));//赔青
|
|
|
+ //项目建设管理费
|
|
|
+ scheduleOther.setManagementFee(decimalFormat.format(managementFee));
|
|
|
+ //工程建设服务费
|
|
|
+ scheduleOther.setTechnicalFee(decimalFormat.format(designFee));
|
|
|
+ scheduleOther.setRequisitionSite(decimalFormat.format(compensateFee));//建设场地征用及清理费
|
|
|
+ }
|
|
|
+ return scheduleOther;
|
|
|
+ }
|
|
|
|
|
|
/**
|
|
|
* 设备材料清册
|
|
@@ -224,14 +362,14 @@ public class ExportUtil1 {
|
|
|
List<ErpCreditEquipment> erpCreditChild1s = null;
|
|
|
List<ErpCreditMaterial> erpCreditChild2s = null;
|
|
|
for (ErpCredit erpCredit:erpCredits){
|
|
|
- erpCreditChild1s=erpCredit.getErpCreditChild1s();
|
|
|
- erpCreditChild2s=erpCredit.getErpCreditChild2s();
|
|
|
+ erpCreditChild1s=erpCredit.getErpCreditChild1s();//获取设备费描述
|
|
|
+ erpCreditChild2s=erpCredit.getErpCreditChild2s();//获取材料表描述
|
|
|
//设备详情
|
|
|
if (null!=erpCreditChild1s&&erpCreditChild1s.size()>0){
|
|
|
for (ErpCreditEquipment erpCreditChild1:erpCreditChild1s){
|
|
|
count=0.0;
|
|
|
materialEquipment=new MaterialEquipment();
|
|
|
- materialEquipment.setId(erpCredit.getItemId());
|
|
|
+ materialEquipment.setId(erpCredit.getItemId());//得到项目id
|
|
|
//物料描述赋值给名称
|
|
|
materialEquipment.setMeName(erpCreditChild1.getEqmMaterialDetails1());
|
|
|
//如果供应商不为空,赋值供应商
|
|
@@ -244,7 +382,7 @@ public class ExportUtil1 {
|
|
|
}
|
|
|
//得到数量
|
|
|
if (null!=erpCreditChild1.getEqmNumbers()){
|
|
|
- materialEquipment.setMeNumber(decimalFormat1.format(erpCreditChild1.getEqmNumbers()));
|
|
|
+ materialEquipment.setMeNumber(String.valueOf(erpCreditChild1.getEqmNumbers()));
|
|
|
}
|
|
|
//得到合计金额
|
|
|
if (null!=erpCreditChild1.getEqmBookedFee1()){
|
|
@@ -280,7 +418,7 @@ public class ExportUtil1 {
|
|
|
}
|
|
|
//得到数量
|
|
|
if (null!=erpCreditChild2.getMtlNumbers()){
|
|
|
- materialEquipment.setMeNumber(decimalFormat1.format(erpCreditChild2.getMtlNumbers()));
|
|
|
+ materialEquipment.setMeNumber(String.valueOf(erpCreditChild2.getMtlNumbers()));
|
|
|
}
|
|
|
//得到合计金额
|
|
|
if (null!=erpCreditChild2.getMtlBookedFee2()){
|
|
@@ -307,10 +445,16 @@ public class ExportUtil1 {
|
|
|
*/
|
|
|
public static List<TransferOfPower1> getTransFerPower1(List<ErpCredit> erpCredits){
|
|
|
DecimalFormat decimalFormat = new DecimalFormat("#0.00");
|
|
|
- List<TransferOfPower1> transferOfPower1s = new ArrayList<TransferOfPower1>();
|
|
|
- TransferOfPower1 transferOfPower1 = null;
|
|
|
- List<ErpCreditEquipment> erpCreditChild1s = null;
|
|
|
- Double eqmNumbers = 0.0;//获取总数量
|
|
|
+ List<TransferOfPower1> transferOfPower1s = new ArrayList<TransferOfPower1>();//创建一个线路集合
|
|
|
+ TransferOfPower1 transferOfPower1 = null;//定义线路对象
|
|
|
+ List<ErpCreditEquipment> erpCreditChild1s = null;//定义设备对象
|
|
|
+
|
|
|
+ List<ErpCreditMaterial> erpCreditMaterials = null;//材料费对象
|
|
|
+ Double materialTotal = 0.0;//材料费总计
|
|
|
+
|
|
|
+
|
|
|
+ Double eqmNumbers = 0.0;//总容量 //分摊后安装费
|
|
|
+ Double eqmBookedFee=0.0;//设备入账金额
|
|
|
Double eqmValue = 0.0;//相同项目定义号合计
|
|
|
Double standInFee=0.0;//摊入费用
|
|
|
Double powerDeliveredAssets=0.0;//交付知产使用价值
|
|
@@ -320,57 +464,74 @@ public class ExportUtil1 {
|
|
|
Double installFeeAll=0.0;//安装费用合计
|
|
|
Double standInFeeAll=0.0;//摊入费用合计
|
|
|
Double powerDeliveredAssetsAll=0.0;//交付知产使用价值合计
|
|
|
- for (ErpCredit erpCredit:erpCredits){
|
|
|
- erpCreditChild1s = erpCredit.getErpCreditChild1s();//获取集合
|
|
|
+ for (ErpCredit erpCredit:erpCredits){//循环erp账户项目
|
|
|
+ materialTotal = 0.0;
|
|
|
+ erpCreditChild1s = erpCredit.getErpCreditChild1s();//获取设备集合
|
|
|
+
|
|
|
+ erpCreditMaterials = erpCredit.getErpCreditChild2s();//材料费
|
|
|
+// if (null!=erpCreditMaterials&& erpCreditMaterials.size()>0){
|
|
|
+// for (ErpCreditMaterial erpCreditMaterial:erpCreditMaterials){
|
|
|
+// materialTotal+=erpCreditMaterial.getMtlBookedFee2();
|
|
|
+// }
|
|
|
+// }
|
|
|
if (null!=erpCreditChild1s&&erpCreditChild1s.size()>=0){
|
|
|
- eqmNumbers = 0.0;
|
|
|
- for (ErpCreditEquipment erpCreditChild11:erpCreditChild1s){
|
|
|
+ eqmNumbers = 0.0;//赋予初始值
|
|
|
+ for (ErpCreditEquipment erpCreditChild11:erpCreditChild1s){//循环设备费
|
|
|
if (null!=erpCreditChild11.getEqmNumbers()){//当前项目定义号所有的台数合计
|
|
|
eqmNumbers+=erpCreditChild11.getEqmNumbers();
|
|
|
}
|
|
|
+ if (null!=erpCreditChild11.getEqmBookedFee1()){
|
|
|
+ eqmBookedFee+=erpCreditChild11.getEqmBookedFee1();//设备入账金额
|
|
|
+ }
|
|
|
}
|
|
|
if (null!=erpCredit.getConsInstallFee()){//得到分摊后安装费
|
|
|
eqmNumbers=erpCredit.getConsTotalFee()/eqmNumbers;
|
|
|
}
|
|
|
- for (ErpCreditEquipment erpCreditChild1:erpCreditChild1s){
|
|
|
- if (null!=erpCredit.getTenKvModel()){//若10KV电缆、架空导线型号为空:得到设备价值
|
|
|
- eqmValue = erpCreditChild1.getEqmBookedFee1()+eqmNumbers+eqmValue;//设备H6的和
|
|
|
- }
|
|
|
+ if (null==erpCredit.getTenKvModel()||erpCredit.getTenKvModel()==""){//若10KV电缆、架空导线型号为空:得到设备价值
|
|
|
+ eqmValue = eqmBookedFee + eqmNumbers + eqmValue;//设备H6的和
|
|
|
+ }else {
|
|
|
+ eqmValue = eqmBookedFee;
|
|
|
}
|
|
|
}
|
|
|
//添加固定数据:线路
|
|
|
- transferOfPower1 = new TransferOfPower1();
|
|
|
+ transferOfPower1 = new TransferOfPower1();//得到线路集合
|
|
|
transferOfPower1.setPowerId(erpCredit.getItemId());//添加项目定义号
|
|
|
transferOfPower1.setPowerName(erpCredit.getItemName());//添加项目名称
|
|
|
+ transferOfPower1.setPowerArea("-");//添加其实地点和所在第
|
|
|
+ transferOfPower1.setPowerNumberBars("1");
|
|
|
+ transferOfPower1.setPowerAssetClass(POWER_ZYXL);//中亚线路
|
|
|
transferOfPower1.setPowerDepartment(ExportUtil1.POWER_DEPARTMENT);//添加保管
|
|
|
if (null!=erpCredit.getTenKvItsLine()) {//其中 10kv线路 10kv线路长度
|
|
|
- transferOfPower1.setPowerTenKvLineLength(String.valueOf(erpCredit.getTenKvItsLine()));
|
|
|
- powerTenKvLineLengthAll+=erpCredit.getTenKvItsLine();
|
|
|
+ transferOfPower1.setPowerTenKvLineLength(decimalFormat.format(erpCredit.getTenKvItsLine()));//添加10kv线路
|
|
|
+ powerTenKvLineLengthAll+=erpCredit.getTenKvItsLine();//交付使用资产价值
|
|
|
}
|
|
|
if (null!=erpCredit.getTenKvModel()){//10kv电缆架空导线型号
|
|
|
transferOfPower1.setPowerTenKvCableType(erpCredit.getTenKvModel());
|
|
|
- transferOfPower1.setPowerNumberBars("1");
|
|
|
- transferOfPower1.setPowerAssetClass(POWER_ZYXL);
|
|
|
}
|
|
|
if (null!=erpCredit.getConsBuildingFee()){//建筑费
|
|
|
- transferOfPower1.setPowerBuildFee(String.valueOf(erpCredit.getConsBuildingFee()));
|
|
|
- powerDeliveredAssets+=erpCredit.getConsBuildingFee();
|
|
|
- buildFeeAll+=erpCredit.getConsBuildingFee();//建筑费用合计
|
|
|
- }
|
|
|
- if (null!=erpCredit.getConsInstallFee()){//安装费
|
|
|
- transferOfPower1.setPowerInstallFee(String.valueOf(erpCredit.getConsInstallFee()));
|
|
|
- powerDeliveredAssets+=erpCredit.getConsInstallFee();
|
|
|
- installFeeAll+=erpCredit.getConsInstallFee();//建筑费用合计
|
|
|
+ transferOfPower1.setPowerBuildFee(decimalFormat.format(erpCredit.getConsBuildingFee()+materialTotal));
|
|
|
+ powerDeliveredAssets+=erpCredit.getConsBuildingFee()+materialTotal;//交付使用资产价值
|
|
|
+ buildFeeAll+=erpCredit.getConsBuildingFee()+materialTotal;//建筑费用合计
|
|
|
+ }
|
|
|
+ if (null!=erpCredit.getConsInstallFee()&&erpCredit.getTenKvModel()!=null){//安装费
|
|
|
+ transferOfPower1.setPowerInstallFee(decimalFormat.format(erpCredit.getConsInstallFee()+materialTotal));//添加安装费
|
|
|
+ powerDeliveredAssets+=erpCredit.getConsInstallFee()+materialTotal;//交付使用资产价值
|
|
|
+ installFeeAll+=erpCredit.getConsInstallFee()+materialTotal;//建筑费用合计
|
|
|
}else {
|
|
|
- transferOfPower1.setPowerInstallFee("0");
|
|
|
+ transferOfPower1.setPowerInstallFee("-");
|
|
|
}
|
|
|
- if (transferOfPower1.getPowerInstallFee().equals("0")){//摊入费用
|
|
|
- transferOfPower1.setPowerInstallFee("0");
|
|
|
+ if (transferOfPower1.getPowerInstallFee().equals("-")){//摊入费用
|
|
|
+ transferOfPower1.setPowerStandInFee("-");
|
|
|
}else {
|
|
|
- standInFee = Double.valueOf(transferOfPower1.getPowerInstallFee())/(Double.valueOf(transferOfPower1.getPowerInstallFee())+eqmNumbers);
|
|
|
- transferOfPower1.setPowerStandInFee(decimalFormat.format(standInFee));
|
|
|
- powerDeliveredAssets+=standInFee;
|
|
|
- standInFeeAll+=standInFee;
|
|
|
+ //摊入费用
|
|
|
+ standInFee = Double.valueOf(transferOfPower1.getPowerInstallFee())+eqmValue;
|
|
|
+ standInFee = Double.valueOf(transferOfPower1.getPowerInstallFee())/standInFee;
|
|
|
+ if (erpCredit.getOtherTotalFee()!=null){
|
|
|
+ standInFee = standInFee*erpCredit.getOtherTotalFee();//乘其他费用合计
|
|
|
+ }
|
|
|
+ transferOfPower1.setPowerStandInFee(decimalFormat.format(standInFee));//添加摊入费用
|
|
|
+ powerDeliveredAssets+=standInFee;//交付使用资产价值
|
|
|
+ standInFeeAll+=standInFee;//摊入费用合计
|
|
|
}
|
|
|
//添加交付使用资产价值
|
|
|
transferOfPower1.setPowerDeliveredAssets(decimalFormat.format(powerDeliveredAssets));
|
|
@@ -378,6 +539,7 @@ public class ExportUtil1 {
|
|
|
transferOfPower1s.add(transferOfPower1);//添加到集合中
|
|
|
}
|
|
|
transferOfPower1 = new TransferOfPower1();
|
|
|
+ //添加 合计金额
|
|
|
transferOfPower1.setPowerName(POWER_HJ);
|
|
|
transferOfPower1.setPowerTenKvLineLength(decimalFormat.format(powerTenKvLineLengthAll));
|
|
|
transferOfPower1.setPowerBuildFee(decimalFormat.format(buildFeeAll));
|
|
@@ -396,9 +558,9 @@ public class ExportUtil1 {
|
|
|
public static List<TransferOfPower2> getTransferOfPower2(List<ErpCredit> erpCredits){
|
|
|
DecimalFormat decimalFormat = new DecimalFormat("#0.00");
|
|
|
DecimalFormat decimalFormat1 = new DecimalFormat("#0");
|
|
|
- List<TransferOfPower2> transferOfPower2s = new ArrayList<TransferOfPower2>();
|
|
|
- List<ErpCreditEquipment> erpCreditChild1s = null;
|
|
|
- TransferOfPower2 transferOfPower2 = null;
|
|
|
+ List<TransferOfPower2> transferOfPower2s = new ArrayList<TransferOfPower2>();//得到设备表集合
|
|
|
+ List<ErpCreditEquipment> erpCreditChild1s = null;//定义设备 费对象
|
|
|
+ TransferOfPower2 transferOfPower2 = null;//定义设备表对象
|
|
|
Double powerValue = 0.0;
|
|
|
Double eqmNumbers = 0.0;//获取总数量
|
|
|
Double powerInstallFee = 0.0;//安装费用(线路)
|
|
@@ -410,14 +572,14 @@ public class ExportUtil1 {
|
|
|
Double powerStandInFeeAll=0.0;//摊入费用
|
|
|
Double powerDeliveredAssetsAll=0.0;//交付使用资产价值
|
|
|
for (ErpCredit erpCredit:erpCredits){
|
|
|
- erpCreditChild1s = erpCredit.getErpCreditChild1s();//得到集合
|
|
|
+ erpCreditChild1s = erpCredit.getErpCreditChild1s();//得到设备费集合
|
|
|
//得到安装费用
|
|
|
- if (null!=erpCredit.getConsInstallFee()){//安装费
|
|
|
+ if (null!=erpCredit.getConsInstallFee()){ //安装费(x线路表)
|
|
|
powerInstallFee = erpCredit.getConsInstallFee();
|
|
|
}
|
|
|
- if (null!=erpCreditChild1s && erpCreditChild1s.size()>=0){
|
|
|
- eqmNumbers = 0.0;
|
|
|
- for (ErpCreditEquipment erpCreditChild11:erpCreditChild1s){
|
|
|
+ if (null!=erpCreditChild1s && erpCreditChild1s.size()>=0){//
|
|
|
+ eqmNumbers = 0.0;//定义台数初始值
|
|
|
+ for (ErpCreditEquipment erpCreditChild11:erpCreditChild1s){//循环集合
|
|
|
if (null!=erpCreditChild11.getEqmNumbers()){//当前项目定义号所有的台数合计
|
|
|
eqmNumbers+=erpCreditChild11.getEqmNumbers();
|
|
|
}
|
|
@@ -426,14 +588,15 @@ public class ExportUtil1 {
|
|
|
eqmNumbers=eqmNumbers/erpCredit.getConsTotalFee();
|
|
|
}
|
|
|
for (ErpCreditEquipment erpCreditChild1:erpCreditChild1s){
|
|
|
- powerDeliveredAssets=0.0;
|
|
|
- transferOfPower2 = new TransferOfPower2();
|
|
|
- transferOfPower2.setPowerId(erpCredit.getItemId());
|
|
|
- transferOfPower2.setPowerName(erpCredit.getItemName());//添加名称
|
|
|
+ powerDeliveredAssets=0.0;//交付使用价值初始值
|
|
|
+ transferOfPower2 = new TransferOfPower2();//定义设备表对象
|
|
|
+ transferOfPower2.setPowerId(erpCredit.getItemId());//赋值项目定义编号
|
|
|
+ transferOfPower2.setPowerName(erpCredit.getItemName());//添加项目名称
|
|
|
+ transferOfPower2.setPowerArea("-");//线路起始地带你
|
|
|
transferOfPower2.setPowerDepartment(ExportUtil1.POWER_DEPARTMENT);//添加保管
|
|
|
- if (null!=erpCreditChild1.getEqmNumbers()){//得到配变数量
|
|
|
+ if (null!=erpCreditChild1.getEqmNumbers()){//得到配变数量(erp账户中设备台数)
|
|
|
transferOfPower2.setPowerNumber(decimalFormat1.format(erpCreditChild1.getEqmNumbers()));
|
|
|
- eqmNumbersAll+=erpCreditChild1.getEqmNumbers();
|
|
|
+ eqmNumbersAll+=erpCreditChild1.getEqmNumbers();//配电数量合计金额累加
|
|
|
}
|
|
|
if (null!=erpCreditChild1.getEqmUnit()){//计量单位
|
|
|
transferOfPower2.setPowerUnit(erpCreditChild1.getEqmUnit());
|
|
@@ -441,11 +604,18 @@ public class ExportUtil1 {
|
|
|
//配电容量
|
|
|
transferOfPower2.setPowerCapacity(erpCreditChild1.getEqmMaterialDetails1());
|
|
|
//设备价值
|
|
|
- if (null!=erpCreditChild1.getEqmBookedFee1()){
|
|
|
- powerValue=erpCreditChild1.getEqmBookedFee1()+eqmNumbers;
|
|
|
- transferOfPower2.setPowerValue(decimalFormat.format(powerValue));
|
|
|
- powerDeliveredAssets +=powerValue;
|
|
|
- powerValueAll+=powerValue;//合计
|
|
|
+ if (null!=erpCreditChild1.getEqmBookedFee1()){//如果入账金额不为空
|
|
|
+ if (transferOfPower2.getPowerNumber()!=null&&erpCredit.getTenKvModel()==null){
|
|
|
+ powerValue=erpCreditChild1.getEqmBookedFee1()+eqmNumbers;//价值合计 设备入账金额+安装费
|
|
|
+ transferOfPower2.setPowerValue(decimalFormat.format(powerValue));//赋值设备价值
|
|
|
+ powerDeliveredAssets +=powerValue;//交付使用价值合计
|
|
|
+ powerValueAll+=powerValue;//合计//设备价值合计
|
|
|
+ }else {
|
|
|
+ powerValue=erpCreditChild1.getEqmBookedFee1();//价值合计 设备入账金额+安装费
|
|
|
+ transferOfPower2.setPowerValue(decimalFormat.format(powerValue));//赋值设备价值
|
|
|
+ powerDeliveredAssets +=powerValue;//交付使用价值合计
|
|
|
+ powerValueAll+=powerValue;//合计//设备价值合计
|
|
|
+ }
|
|
|
}else {
|
|
|
powerValue=erpCreditChild1.getEqmBookedFee1();
|
|
|
transferOfPower2.setPowerValue(decimalFormat.format(powerValue));
|
|
@@ -453,25 +623,26 @@ public class ExportUtil1 {
|
|
|
powerValueAll+=powerValue;//合计
|
|
|
}
|
|
|
//计算摊入费用
|
|
|
- if (erpCredit.getConsBuildingFee()!=null&&erpCredit.getConsBuildingFee()!=0){
|
|
|
- powerStandInFee=Double.parseDouble(transferOfPower2.getPowerValue())/(Double.parseDouble(transferOfPower2.getPowerValue())+powerInstallFee)*erpCredit.getConsBuildingFee();
|
|
|
- transferOfPower2.setPowerStandInFee(decimalFormat.format(powerStandInFee));
|
|
|
- powerDeliveredAssets+=powerStandInFee;
|
|
|
- powerStandInFeeAll+=powerStandInFee;
|
|
|
- }else {
|
|
|
- transferOfPower2.setPowerStandInFee("0");
|
|
|
+ powerStandInFee = Double.parseDouble(transferOfPower2.getPowerValue())+powerInstallFee;//设备价值加上安装费设备价值
|
|
|
+ if (erpCredit.getConsBuildingFee()!=null&&!erpCredit.getConsBuildingFee().equals("0")){//如果建筑费不为空
|
|
|
+ powerStandInFee=Double.parseDouble(transferOfPower2.getPowerValue())/powerStandInFee *erpCredit.getConsBuildingFee();
|
|
|
}
|
|
|
+ //建筑费为空情况下
|
|
|
+ powerStandInFee=Double.parseDouble(transferOfPower2.getPowerValue())/powerStandInFee;
|
|
|
+ transferOfPower2.setPowerStandInFee(decimalFormat.format(powerStandInFee));//赋值设备分摊费用
|
|
|
+ powerDeliveredAssets+=powerStandInFee;//交付使用费用累加
|
|
|
+ powerStandInFeeAll+=powerStandInFee;//分摊费用累加
|
|
|
//添加资产类别
|
|
|
- if (erpCreditChild1.getEqmMaterialDetails1().contains(POWER_BDZ)){
|
|
|
+ if (transferOfPower2.getPowerCapacity().contains(POWER_BDZ)){
|
|
|
transferOfPower2.setPowerAssetClass(POWER_BDZCOUNT);
|
|
|
}
|
|
|
- if (erpCreditChild1.getEqmMaterialDetails1().contains(POWER_BOXBDZ)){
|
|
|
+ if (transferOfPower2.getPowerCapacity().contains(POWER_BOXBDZ)){
|
|
|
transferOfPower2.setPowerAssetClass(POWER_BOXCOUNT);
|
|
|
}
|
|
|
- if (erpCreditChild1.getEqmMaterialDetails1().contains(POWER_HGW)){
|
|
|
+ if (transferOfPower2.getPowerCapacity().contains(POWER_HGW)){
|
|
|
transferOfPower2.setPowerAssetClass(POWER_HGWCOUNT);
|
|
|
}
|
|
|
- if (erpCreditChild1.getEqmMaterialDetails1().contains(POWER_KGG)){
|
|
|
+ if (transferOfPower2.getPowerCapacity().contains(POWER_KGG)){
|
|
|
transferOfPower2.setPowerAssetClass(POWER_KGGCOUNT);
|
|
|
}
|
|
|
transferOfPower2.setPowerDeliveredAssets(decimalFormat.format(powerDeliveredAssets));//交付使用资产价值
|
|
@@ -482,16 +653,17 @@ public class ExportUtil1 {
|
|
|
}
|
|
|
transferOfPower2 = new TransferOfPower2();
|
|
|
transferOfPower2.setPowerName(POWER_HJ);
|
|
|
- transferOfPower2.setPowerNumber(decimalFormat1.format(eqmNumbersAll));//配电数量
|
|
|
- transferOfPower2.setPowerValue(decimalFormat.format(powerValueAll));//计量价值
|
|
|
- transferOfPower2.setPowerStandInFee(decimalFormat.format(powerStandInFeeAll));//摊入费用
|
|
|
- transferOfPower2.setPowerDeliveredAssets(decimalFormat.format(powerDeliveredAssetsAll));//交付使用资产价值
|
|
|
+ transferOfPower2.setPowerNumber(decimalFormat1.format(eqmNumbersAll));//配电数量合计
|
|
|
+ transferOfPower2.setPowerValue(decimalFormat.format(powerValueAll));//计量价值合计
|
|
|
+ transferOfPower2.setPowerStandInFee(decimalFormat.format(powerStandInFeeAll));//摊入费用合计
|
|
|
+ transferOfPower2.setPowerDeliveredAssets(decimalFormat.format(powerDeliveredAssetsAll));//交付使用资产价值合计
|
|
|
transferOfPower2s.add(transferOfPower2);
|
|
|
return transferOfPower2s;
|
|
|
}
|
|
|
//概况表
|
|
|
public static GeneralSituation getFeneraSituation(List<ErpCredit> erpCredits, List<MaintainData> maintainDataList){
|
|
|
- SimpleDateFormat sdf = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss");
|
|
|
+ DecimalFormat decimalFormat = new DecimalFormat("#0.00");
|
|
|
+ SimpleDateFormat sdf = new SimpleDateFormat("yyyy/MM/dd");
|
|
|
GeneralSituation generalSituation = new GeneralSituation();
|
|
|
Double lineLength=0.0;//线路长度
|
|
|
Double tenKvLength=0.0;//其中:10kv线路
|
|
@@ -523,19 +695,19 @@ public class ExportUtil1 {
|
|
|
actualInvestment+=erpCredit.getActualInvestment();
|
|
|
}
|
|
|
}
|
|
|
- generalSituation.setLineLength(String.valueOf(lineLength));
|
|
|
- generalSituation.setTenKvLength(String.valueOf(tenKvLength));
|
|
|
- generalSituation.setFourKvLength(String.valueOf(fourKvLength));
|
|
|
- generalSituation.setActualInvestment(String.valueOf(actualInvestment));
|
|
|
- generalSituation.setTransferAssets(String.valueOf(actualInvestment));
|
|
|
- generalSituation.setHasItsOwn(String.valueOf(actualInvestment));
|
|
|
+ generalSituation.setLineLength(decimalFormat.format(lineLength));
|
|
|
+ generalSituation.setTenKvLength(decimalFormat.format(tenKvLength));
|
|
|
+ generalSituation.setFourKvLength(decimalFormat.format(fourKvLength));
|
|
|
+ generalSituation.setActualInvestment(decimalFormat.format(actualInvestment));
|
|
|
+ generalSituation.setTransferAssets(decimalFormat.format(actualInvestment));
|
|
|
+ generalSituation.setHasItsOwn(decimalFormat.format(actualInvestment));
|
|
|
}
|
|
|
if (null!=maintainDataList&&maintainDataList.size()>0){
|
|
|
for (MaintainData maintainData:maintainDataList){
|
|
|
if (null!=maintainData.getApprovalNumber()){//如果审批文号不为空
|
|
|
organDataList.add(maintainData.getApprovalNumber());
|
|
|
}
|
|
|
- if (null!=maintainData.getStartDate()&&maintainData.getEndDate().toString().length()>0){
|
|
|
+ if (null!=maintainData.getStartDate()&&maintainData.getStartDate().toString().length()>0){
|
|
|
commencementDateList.add(maintainData.getStartDate());
|
|
|
}
|
|
|
if (null!=maintainData.getEndDate()&&maintainData.getEndDate().toString().length()>0){
|
|
@@ -545,23 +717,23 @@ public class ExportUtil1 {
|
|
|
}
|
|
|
if (null!=organDataList&&organDataList.size()>0){
|
|
|
//去重
|
|
|
- for (int i = 0; i < organDataList.size(); i++) {
|
|
|
- for (int j = 0; j < organDataList.size(); j++) {
|
|
|
- if(i!=j&&organDataList.get(i)==organDataList.get(j)) {
|
|
|
- organDataList.remove(organDataList.get(j));
|
|
|
- }
|
|
|
- }
|
|
|
- }
|
|
|
- for(String str:organDataList){
|
|
|
- organData+=str+",";
|
|
|
- }
|
|
|
- generalSituation.setOrganDataNumber(organData);
|
|
|
+// for (int i = 0; i < organDataList.size(); i++) {
|
|
|
+// for (int j = 0; j < organDataList.size(); j++) {
|
|
|
+// if(i!=j&&organDataList.get(i)==organDataList.get(j)) {
|
|
|
+// organDataList.remove(organDataList.get(j));
|
|
|
+// }
|
|
|
+// }
|
|
|
+// }
|
|
|
+// for(String str:organDataList){
|
|
|
+// organData+=str+",";
|
|
|
+// }
|
|
|
+ generalSituation.setOrganDataNumber(organDataList.get(1));
|
|
|
}
|
|
|
if (null!=commencementDateList&&commencementDateList.size()>0){
|
|
|
for (Date date:commencementDateList){
|
|
|
beforeDate = date;
|
|
|
if (beforeDate!=null){
|
|
|
- if (date.before(beforeDate)){
|
|
|
+ if (beforeDate.before(date)){
|
|
|
beforeDate=date;
|
|
|
}
|
|
|
}
|
|
@@ -570,10 +742,10 @@ public class ExportUtil1 {
|
|
|
// generalSituation.setCommencementDate(sdf.format(Collections.min(commencementDateList)));
|
|
|
}
|
|
|
if (null!=completionDateList&&completionDateList.size()>0){
|
|
|
- for (Date date:commencementDateList){
|
|
|
+ for (Date date:completionDateList){
|
|
|
endDate = date;
|
|
|
if (endDate!=null){
|
|
|
- if (date.after(endDate)){
|
|
|
+ if (date.before(endDate)){
|
|
|
endDate=date;
|
|
|
}
|
|
|
}
|
|
@@ -581,7 +753,7 @@ public class ExportUtil1 {
|
|
|
generalSituation.setCompletionDate(sdf.format(endDate));
|
|
|
// generalSituation.setCompletionDate(sdf.format(Collections.max(completionDateList)));
|
|
|
}
|
|
|
- generalSituation.setInvestmentBudget(String.valueOf(investmentBudget));
|
|
|
+ generalSituation.setInvestmentBudget(String.valueOf(decimalFormat.format(investmentBudget)));
|
|
|
}
|
|
|
return generalSituation;
|
|
|
}
|
|
@@ -600,36 +772,45 @@ public class ExportUtil1 {
|
|
|
Double equipmentValue1=0.0;//设备价值
|
|
|
Double costSharing1=0.0;//分摊费用
|
|
|
Double deliveryCostValue1=0.0;//交付使用资产价值
|
|
|
- List<TransferOfPower1> transferOfPower1s = getTransFerPower1(erpCredits);
|
|
|
- List<TransferOfPower2> transferOfPower2s = getTransferOfPower2(erpCredits);
|
|
|
- for (TransferOfPower1 transferOfPower1:transferOfPower1s){
|
|
|
- if (null!=transferOfPower1.getPowerBuildFee()){//建筑
|
|
|
- buildProject+=Double.parseDouble(transferOfPower1.getPowerBuildFee());
|
|
|
- }
|
|
|
- if (null!=transferOfPower1.getPowerInstallFee()){
|
|
|
- intallProject+=Double.parseDouble(transferOfPower1.getPowerInstallFee());
|
|
|
- }
|
|
|
- if (null!=transferOfPower1.getPowerStandInFee()){//分摊费用
|
|
|
- costSharing+=Double.parseDouble(transferOfPower1.getPowerStandInFee());
|
|
|
+ List<TransferOfPower1> transferOfPower1s = getTransFerPower1(erpCredits);//得到线路表
|
|
|
+ List<TransferOfPower2> transferOfPower2s = getTransferOfPower2(erpCredits);//得到设备表
|
|
|
+ for (int i = 0; i < transferOfPower1s.size(); i++) {
|
|
|
+ if (i!=transferOfPower1s.size()-1){
|
|
|
+ if (null!= transferOfPower1s.get(i).getPowerBuildFee()){//建筑
|
|
|
+ buildProject+=Double.parseDouble(transferOfPower1s.get(i).getPowerBuildFee());
|
|
|
+ }
|
|
|
+ if (null!=transferOfPower1s.get(i).getPowerInstallFee()&&!transferOfPower1s.get(i).getPowerStandInFee().equals("-")){
|
|
|
+ intallProject+=Double.parseDouble(transferOfPower1s.get(i).getPowerInstallFee());
|
|
|
+ }
|
|
|
+ if (null!=transferOfPower1s.get(i).getPowerStandInFee()&&!transferOfPower1s.get(i).getPowerStandInFee().equals("-")){//分摊费用
|
|
|
+ costSharing+=Double.parseDouble(transferOfPower1s.get(i).getPowerStandInFee());
|
|
|
+ }
|
|
|
+ if (null!=transferOfPower1s.get(i).getPowerDeliveredAssets()){
|
|
|
+ deliveryCostValue+=Double.parseDouble(transferOfPower1s.get(i).getPowerDeliveredAssets());
|
|
|
+ }
|
|
|
}
|
|
|
- deliveryCostValue=buildProject+intallProject+costSharing;
|
|
|
}
|
|
|
- theAssetsTotal1.setBuildProject(decimalFormat.format(buildProject));
|
|
|
- theAssetsTotal1.setIntallProject(decimalFormat.format(intallProject));
|
|
|
+ theAssetsTotal1.setBuildProject(decimalFormat.format(buildProject));//添加建筑费
|
|
|
+ theAssetsTotal1.setIntallProject(decimalFormat.format(intallProject));//添加设备费
|
|
|
theAssetsTotal1.setCostSharing(decimalFormat.format(costSharing));
|
|
|
theAssetsTotal1.setDeliveryCostValue(decimalFormat.format(deliveryCostValue));
|
|
|
- for (TransferOfPower2 transferOfPower2:transferOfPower2s){
|
|
|
- if (null!=transferOfPower2.getPowerValue()){//设备价值
|
|
|
- equipmentValue1+=Double.parseDouble(transferOfPower2.getPowerValue());
|
|
|
- }
|
|
|
- if (null!=transferOfPower2.getPowerStandInFee()){
|
|
|
- costSharing1+=Double.parseDouble(transferOfPower2.getPowerStandInFee());
|
|
|
+ for (int i = 0; i < transferOfPower2s.size(); i++) {
|
|
|
+ if (i!=transferOfPower2s.size()-1){
|
|
|
+ if (null!=transferOfPower2s.get(i).getPowerValue()){//设备价值
|
|
|
+ equipmentValue1+=Double.parseDouble(transferOfPower2s.get(i).getPowerValue());
|
|
|
+ }
|
|
|
+ if (null!=transferOfPower2s.get(i).getPowerStandInFee()){
|
|
|
+ costSharing1+=Double.parseDouble(transferOfPower2s.get(i).getPowerStandInFee());
|
|
|
+ }
|
|
|
+ if (null!=transferOfPower2s.get(i).getPowerDeliveredAssets()){
|
|
|
+ deliveryCostValue1 = Double.parseDouble(transferOfPower2s.get(i).getPowerDeliveredAssets());
|
|
|
+ }
|
|
|
}
|
|
|
- deliveryCostValue1=equipmentValue1+costSharing1;
|
|
|
- theAssetsTotal2.setEquipmentValue(decimalFormat.format(equipmentValue1));
|
|
|
- theAssetsTotal2.setCostSharing(decimalFormat.format(costSharing1));
|
|
|
- theAssetsTotal2.setDeliveryCostValue(decimalFormat.format(deliveryCostValue1));
|
|
|
}
|
|
|
+ theAssetsTotal2.setEquipmentValue(decimalFormat.format(equipmentValue1));
|
|
|
+ theAssetsTotal2.setCostSharing(decimalFormat.format(costSharing1));
|
|
|
+ theAssetsTotal2.setDeliveryCostValue(decimalFormat.format(deliveryCostValue1));
|
|
|
+ //添加三
|
|
|
theAssetsTotal3.setBuildProject(decimalFormat.format(buildProject));
|
|
|
theAssetsTotal3.setIntallProject(decimalFormat.format(intallProject));
|
|
|
theAssetsTotal3.setEquipmentValue(decimalFormat.format(equipmentValue1));
|
|
@@ -647,21 +828,26 @@ public class ExportUtil1 {
|
|
|
Double appropriatedFunds=0.0;//上级拨入资金
|
|
|
Double vatDeduction=0.0;//、抵扣增值税
|
|
|
Double fixedAssets=0.0;//交付使用固定资产
|
|
|
+ Double transferAssets=0.0;//移交资产合计
|
|
|
+ Double completed=0.0;//含税投资完成
|
|
|
for (ErpCredit erpCredit:erpCredits){
|
|
|
if (null!=erpCredit.getActualInvestment()){
|
|
|
- appropriatedFunds+=erpCredit.getActualInvestment();
|
|
|
+ fixedAssets+=erpCredit.getActualInvestment();
|
|
|
+ transferAssets+=erpCredit.getActualInvestment();
|
|
|
}
|
|
|
if (null!=erpCredit.getTheInputTax()){
|
|
|
vatDeduction+=erpCredit.getTheInputTax();
|
|
|
}
|
|
|
}
|
|
|
- for (MaintainData maintainData:maintainDataList){
|
|
|
- fixedAssets+=maintainData.getDesignFee()+maintainData.getSupervisionFee()+maintainData.getPreliminaryWorkFee()
|
|
|
- +maintainData.getDamages()+maintainData.getManagementFee();
|
|
|
- }
|
|
|
+ completed=transferAssets+vatDeduction;
|
|
|
+// for (MaintainData maintainData:maintainDataList){
|
|
|
+// appropriatedFunds+=maintainData.getDesignFee()+maintainData.getSupervisionFee()+maintainData.getPreliminaryWorkFee()
|
|
|
+// +maintainData.getDamages()+maintainData.getManagementFee();
|
|
|
+// }
|
|
|
mCompletionProject.setAppropriatedFunds(decimalFormat.format(appropriatedFunds));
|
|
|
mCompletionProject.setFixedAssets(decimalFormat.format(fixedAssets));
|
|
|
mCompletionProject.setVatDeduction(decimalFormat.format(vatDeduction));
|
|
|
+ mCompletionProject.setCompleted(decimalFormat.format(completed));
|
|
|
return mCompletionProject;
|
|
|
}
|
|
|
}
|