|
@@ -8,14 +8,19 @@ import org.jeecg.modules.dataSourceSwitch.annotation.TargetDataSource;
|
|
|
import org.jeecg.modules.dataSourceSwitch.enums.DataSourceType;
|
|
|
import org.jeecg.modules.projectCost.convert.ProjectCostConvert;
|
|
|
import org.jeecg.modules.projectCost.entity.ProjectCost;
|
|
|
+import org.jeecg.modules.projectCost.entity.ProjectCostCompare;
|
|
|
import org.jeecg.modules.projectCost.mapper.ProjectCostMapper;
|
|
|
import org.jeecg.modules.projectCost.service.IProjectCostService;
|
|
|
import org.jeecg.modules.projectCost.vo.ProjectCostListVO;
|
|
|
import org.jeecg.modules.projectCost.vo.ProjectCostVO;
|
|
|
+import org.jeecg.modules.projectCostHuiji.entity.ProjectCostHuiji;
|
|
|
+import org.jeecg.modules.projectCostHuiji.entity.ProjectCostHuijiCompare;
|
|
|
import org.springframework.beans.factory.annotation.Autowired;
|
|
|
import org.springframework.stereotype.Service;
|
|
|
|
|
|
import java.math.BigDecimal;
|
|
|
+import java.math.RoundingMode;
|
|
|
+import java.util.ArrayList;
|
|
|
import java.util.List;
|
|
|
|
|
|
/**
|
|
@@ -66,8 +71,39 @@ public class ProjectCostServiceImpl extends ServiceImpl<ProjectCostMapper, Proje
|
|
|
/**
|
|
|
* 对比
|
|
|
*/
|
|
|
- public List<ProjectCost> compareListByIds(List<String> ids){
|
|
|
- return projectCostMapper.compareListByIds(ids);
|
|
|
+// public List<ProjectCost> compareListByIds(List<String> ids){
|
|
|
+// return projectCostMapper.compareListByIds(ids);
|
|
|
+// }
|
|
|
+ //sl修改添加每台的对比
|
|
|
+ public ProjectCostCompare compareListByIds(List<String> ids){
|
|
|
+ ProjectCostCompare projectCostCompare = new ProjectCostCompare();
|
|
|
+ List<ProjectCost> listAll = projectCostMapper.compareListByIds(ids);
|
|
|
+ List<ProjectCost> listOne = new ArrayList<>();
|
|
|
+ for(ProjectCost projectCost:listAll){
|
|
|
+ ProjectCost projectCost1 = (ProjectCost)projectCost.clone();
|
|
|
+ if(projectCost1.getYzsl() != null && projectCost1.getYzsl() != 0){
|
|
|
+ int yzsl = projectCost1.getYzsl();//获取研制数量
|
|
|
+ BigDecimal yzslBigDec = BigDecimal.valueOf(yzsl);
|
|
|
+ if(projectCost1.getGlf() != null) projectCost1.setGlf(projectCost1.getGlf().divide(yzslBigDec, 2, RoundingMode.HALF_UP));//管理费
|
|
|
+ if(projectCost1.getSwf() != null) projectCost1.setSwf(projectCost1.getSwf().divide(yzslBigDec, 2, RoundingMode.HALF_UP));//事务费
|
|
|
+ if(projectCost1.getWxf() != null) projectCost1.setWxf(projectCost1.getWxf().divide(yzslBigDec, 2, RoundingMode.HALF_UP));//外协费
|
|
|
+ if(projectCost1.getZyf() != null) projectCost1.setZyf(projectCost1.getZyf().divide(yzslBigDec, 2, RoundingMode.HALF_UP));//专用费
|
|
|
+ if(projectCost1.getGzjlwf() != null) projectCost1.setGzjlwf(projectCost1.getGzjlwf().divide(yzslBigDec, 2, RoundingMode.HALF_UP));//工资费
|
|
|
+ if(projectCost1.getGdzczj() != null) projectCost1.setGdzczj(projectCost1.getGdzczj().divide(yzslBigDec, 2, RoundingMode.HALF_UP));//固资费
|
|
|
+ if(projectCost1.getClf() != null) projectCost1.setClf(projectCost1.getClf().divide(yzslBigDec, 2, RoundingMode.HALF_UP));//材料费
|
|
|
+ if(projectCost1.getRldlf() != null) projectCost1.setRldlf(projectCost1.getRldlf().divide(yzslBigDec, 2, RoundingMode.HALF_UP));//燃动费
|
|
|
+
|
|
|
+ if(projectCost1.getZjcb() != null) projectCost1.setZjcb(projectCost1.getZjcb().divide(yzslBigDec, 2, RoundingMode.HALF_UP));//装机成本
|
|
|
+ if(projectCost1.getLbsy() != null) projectCost1.setLbsy(projectCost1.getLbsy().divide(yzslBigDec, 2, RoundingMode.HALF_UP));//内部试验
|
|
|
+ if(projectCost1.getWorkhour() != null) projectCost1.setWorkhour(projectCost1.getWorkhour().divide(yzslBigDec, 2, RoundingMode.HALF_UP));//工时
|
|
|
+ }
|
|
|
+ listOne.add(projectCost1);
|
|
|
+
|
|
|
+ }
|
|
|
+ projectCostCompare.setCompareAll(listAll);//总的数据对比
|
|
|
+ projectCostCompare.setCompareOne(listOne);//单个研制数量的数据对比
|
|
|
+
|
|
|
+ return projectCostCompare;
|
|
|
}
|
|
|
|
|
|
/**根据任务号查询项目成本中的相应数据*/
|