只有提交保存的时候才正常提交明细数据
parent
d44c8428c7
commit
58994ba1e6
|
@ -36,6 +36,8 @@ import java.util.concurrent.ConcurrentHashMap;
|
|||
@RequestMapping("/project")
|
||||
public class ProjectController extends BaseController {
|
||||
private static final Logger logger = LoggerFactory.getLogger(ProjectController.class);
|
||||
private static final String PROJECT_ID = "projectId";
|
||||
private static final String DETAILS = "details";
|
||||
|
||||
@Autowired
|
||||
private DeptService deptService;
|
||||
|
@ -230,16 +232,16 @@ public class ProjectController extends BaseController {
|
|||
@ResponseBody
|
||||
public ResponseMsg budgetEditSaveIncomeDetail(@RequestBody String body) {
|
||||
JSONObject jsonObject = JSON.parseObject(body);
|
||||
JSONArray details = jsonObject.getJSONArray("details");
|
||||
List<ProjectBudgetIncomeDetail> detailList = new ArrayList<>(details.size());
|
||||
JSONArray details = jsonObject.getJSONArray(DETAILS);
|
||||
List<ProjectBudgetIncomeDetailTemp> detailList = new ArrayList<>(details.size());
|
||||
for (int i = 0; i < details.size(); i++) {
|
||||
ProjectBudgetIncomeDetail detail = details.getObject(i, ProjectBudgetIncomeDetail.class);
|
||||
ProjectBudgetIncomeDetailTemp detail = details.getObject(i, ProjectBudgetIncomeDetailTemp.class);
|
||||
detailList.add(detail);
|
||||
}
|
||||
|
||||
Project project = projectService.getProject(jsonObject.getInteger("projectId"));
|
||||
Project project = projectService.getProject(jsonObject.getInteger(PROJECT_ID));
|
||||
|
||||
projectBudgetService.saveBudgetIncomeDetail(project, detailList);
|
||||
projectBudgetService.saveBudgetIncomeDetailTemp(project, detailList);
|
||||
|
||||
return ResponseMsg.buildSuccessMsg("成功");
|
||||
}
|
||||
|
@ -251,16 +253,16 @@ public class ProjectController extends BaseController {
|
|||
@ResponseBody
|
||||
public ResponseMsg budgetEditSaveCostDetail(@RequestBody String body) {
|
||||
JSONObject jsonObject = JSON.parseObject(body);
|
||||
JSONArray details = jsonObject.getJSONArray("details");
|
||||
List<ProjectBudgetCostDetail> detailList = new ArrayList<>(details.size());
|
||||
JSONArray details = jsonObject.getJSONArray(DETAILS);
|
||||
List<ProjectBudgetCostDetailTemp> detailList = new ArrayList<>(details.size());
|
||||
for (int i = 0; i < details.size(); i++) {
|
||||
ProjectBudgetCostDetail detail = details.getObject(i, ProjectBudgetCostDetail.class);
|
||||
ProjectBudgetCostDetailTemp detail = details.getObject(i, ProjectBudgetCostDetailTemp.class);
|
||||
detailList.add(detail);
|
||||
}
|
||||
|
||||
Project project = projectService.getProject(jsonObject.getInteger("projectId"));
|
||||
Project project = projectService.getProject(jsonObject.getInteger(PROJECT_ID));
|
||||
|
||||
projectBudgetService.saveBudgetCostDetail(project, detailList);
|
||||
projectBudgetService.saveBudgetCostDetailTemp(project, detailList);
|
||||
|
||||
return ResponseMsg.buildSuccessMsg("成功");
|
||||
}
|
||||
|
@ -272,16 +274,16 @@ public class ProjectController extends BaseController {
|
|||
@ResponseBody
|
||||
public ResponseMsg budgetEditSaveCostProjectManageDetail(@RequestBody String body) {
|
||||
JSONObject jsonObject = JSON.parseObject(body);
|
||||
JSONArray details = jsonObject.getJSONArray("details");
|
||||
List<ProjectBudgetCostProjectManageDetail> detailList = new ArrayList<>(details.size());
|
||||
JSONArray details = jsonObject.getJSONArray(DETAILS);
|
||||
List<ProjectBudgetCostProjectManageDetailTemp> detailList = new ArrayList<>(details.size());
|
||||
for (int i = 0; i < details.size(); i++) {
|
||||
ProjectBudgetCostProjectManageDetail detail = details.getObject(i, ProjectBudgetCostProjectManageDetail.class);
|
||||
ProjectBudgetCostProjectManageDetailTemp detail = details.getObject(i, ProjectBudgetCostProjectManageDetailTemp.class);
|
||||
detailList.add(detail);
|
||||
}
|
||||
|
||||
Project project = projectService.getProject(jsonObject.getInteger("projectId"));
|
||||
Project project = projectService.getProject(jsonObject.getInteger(PROJECT_ID));
|
||||
|
||||
projectBudgetService.saveBudgetCostProjectManageDetail(project, detailList);
|
||||
projectBudgetService.saveBudgetCostProjectManageDetailTemp(project, detailList);
|
||||
|
||||
return ResponseMsg.buildSuccessMsg("成功");
|
||||
}
|
||||
|
@ -293,16 +295,16 @@ public class ProjectController extends BaseController {
|
|||
@ResponseBody
|
||||
public ResponseMsg budgetEditSaveBudgetPlanDetail(@RequestBody String body) {
|
||||
JSONObject jsonObject = JSON.parseObject(body);
|
||||
JSONArray details = jsonObject.getJSONArray("details");
|
||||
List<ProjectBudgetPlanDetail> detailList = new ArrayList<>(details.size());
|
||||
JSONArray details = jsonObject.getJSONArray(DETAILS);
|
||||
List<ProjectBudgetPlanDetailTemp> detailList = new ArrayList<>(details.size());
|
||||
for (int i = 0; i < details.size(); i++) {
|
||||
ProjectBudgetPlanDetail detail = details.getObject(i, ProjectBudgetPlanDetail.class);
|
||||
ProjectBudgetPlanDetailTemp detail = details.getObject(i, ProjectBudgetPlanDetailTemp.class);
|
||||
detailList.add(detail);
|
||||
}
|
||||
|
||||
Project project = projectService.getProject(jsonObject.getInteger("projectId"));
|
||||
Project project = projectService.getProject(jsonObject.getInteger(PROJECT_ID));
|
||||
|
||||
projectBudgetService.saveBudgetPlanDetail(project, detailList);
|
||||
projectBudgetService.saveBudgetPlanDetailTemp(project, detailList);
|
||||
|
||||
return ResponseMsg.buildSuccessMsg("成功");
|
||||
}
|
||||
|
@ -426,7 +428,7 @@ public class ProjectController extends BaseController {
|
|||
*/
|
||||
@RequestMapping("/taskRecords/{projectId}")
|
||||
public String taskRecords(@PathVariable int projectId, Map<String, Object> model) {
|
||||
model.put("projectId", projectId);
|
||||
model.put(PROJECT_ID, projectId);
|
||||
List<ProjectTaskRecord> list = projectTaskRecordService.list(projectId);
|
||||
if (list != null && !list.isEmpty()) {
|
||||
model.put("list", list);
|
||||
|
@ -452,7 +454,7 @@ public class ProjectController extends BaseController {
|
|||
* 流程实列图片
|
||||
*/
|
||||
@RequestMapping("/procInsPng/{projectId}")
|
||||
public void png(HttpServletResponse response, @PathVariable("projectId") int projectId) throws Exception {
|
||||
public void png(HttpServletResponse response, @PathVariable(PROJECT_ID) int projectId) throws Exception {
|
||||
List<ProjectInstanceRelation> relationList = projectInstanceRelationRepository.findByProjectIdOrderByCreateTimeDesc(projectId);
|
||||
if (relationList == null || relationList.isEmpty()) {
|
||||
return;
|
||||
|
@ -499,7 +501,7 @@ public class ProjectController extends BaseController {
|
|||
{ id:22, pId:2, name:"随意勾选 2-2", open:true},
|
||||
{ id:23, pId:2, name:"随意勾选 2-3"}*/
|
||||
JSONObject jsonObject = JSON.parseObject(body);
|
||||
Integer projectId = jsonObject.getInteger("projectId");
|
||||
Integer projectId = jsonObject.getInteger(PROJECT_ID);
|
||||
JSONArray array = jsonObject.getJSONArray("ids");
|
||||
String[] ids = new String[array.size()];
|
||||
for (int i = 0; i < array.size(); i++) {
|
||||
|
|
|
@ -0,0 +1,25 @@
|
|||
package cn.palmte.work.model;
|
||||
|
||||
|
||||
import javax.persistence.Entity;
|
||||
import javax.persistence.Table;
|
||||
|
||||
/**
|
||||
* 项目预算成本明细临时表
|
||||
*/
|
||||
@Entity
|
||||
@Table(name = "project_budget_cost_detail_temp")
|
||||
public class ProjectBudgetCostDetailTemp extends ProjectBudgetCostDetail{
|
||||
public ProjectBudgetCostDetail toProjectBudgetCostDetail(){
|
||||
ProjectBudgetCostDetail detail = new ProjectBudgetCostDetail();
|
||||
detail.setProjectId(getProjectId());
|
||||
detail.setType(getType());
|
||||
detail.setCategory(getCategory());
|
||||
detail.setName(getName());
|
||||
detail.setUnit(getUnit());
|
||||
detail.setAmount(getAmount());
|
||||
detail.setPrice(getPrice());
|
||||
detail.setTaxRate(getTaxRate());
|
||||
return detail;
|
||||
}
|
||||
}
|
|
@ -0,0 +1,9 @@
|
|||
package cn.palmte.work.model;
|
||||
|
||||
import org.springframework.data.jpa.repository.JpaRepository;
|
||||
|
||||
import java.util.List;
|
||||
|
||||
public interface ProjectBudgetCostDetailTempRepository extends JpaRepository<ProjectBudgetCostDetailTemp,Integer> {
|
||||
List<ProjectBudgetCostDetailTemp> findAllByProjectIdEquals(int id);
|
||||
}
|
|
@ -0,0 +1,27 @@
|
|||
package cn.palmte.work.model;
|
||||
|
||||
|
||||
import javax.persistence.*;
|
||||
|
||||
/**
|
||||
* 项目预算项目管理成本明细临时表
|
||||
*/
|
||||
@Entity
|
||||
@Table(name = "project_budget_cost_project_manage_detail_temp")
|
||||
public class ProjectBudgetCostProjectManageDetailTemp extends ProjectBudgetCostProjectManageDetail{
|
||||
public ProjectBudgetCostProjectManageDetail toProjectBudgetCostProjectManageDetail(){
|
||||
ProjectBudgetCostProjectManageDetail detail = new ProjectBudgetCostProjectManageDetail();
|
||||
detail.setProjectId(getProjectId());
|
||||
detail.setType(getType());
|
||||
detail.setName(getName());
|
||||
detail.setDetail(getDetail());
|
||||
detail.setUnit(getUnit());
|
||||
detail.setAmount(getAmount());
|
||||
detail.setPrice(getPrice());
|
||||
detail.setPredictMethod(getPredictMethod());
|
||||
detail.setPredictWhy(getPredictWhy());
|
||||
detail.setRemark(getRemark());
|
||||
detail.setDeletable(getDeletable());
|
||||
return detail;
|
||||
}
|
||||
}
|
|
@ -0,0 +1,9 @@
|
|||
package cn.palmte.work.model;
|
||||
|
||||
import org.springframework.data.jpa.repository.JpaRepository;
|
||||
|
||||
import java.util.List;
|
||||
|
||||
public interface ProjectBudgetCostProjectManageDetailTempRepository extends JpaRepository<ProjectBudgetCostProjectManageDetailTemp,Integer> {
|
||||
List<ProjectBudgetCostProjectManageDetailTemp> findAllByProjectIdEquals(int id);
|
||||
}
|
|
@ -0,0 +1,23 @@
|
|||
package cn.palmte.work.model;
|
||||
|
||||
import javax.persistence.Entity;
|
||||
import javax.persistence.Table;
|
||||
|
||||
/**
|
||||
* 项目预算收入明细临时表
|
||||
*/
|
||||
@Entity
|
||||
@Table(name = "project_budget_income_detail_temp")
|
||||
public class ProjectBudgetIncomeDetailTemp extends ProjectBudgetIncomeDetail{
|
||||
public ProjectBudgetIncomeDetail toProjectBudgetIncomeDetail(){
|
||||
ProjectBudgetIncomeDetail projectBudgetIncomeDetail = new ProjectBudgetIncomeDetail();
|
||||
projectBudgetIncomeDetail.setProjectId(getProjectId());
|
||||
projectBudgetIncomeDetail.setName(getName());
|
||||
projectBudgetIncomeDetail.setType(getType());
|
||||
projectBudgetIncomeDetail.setUnit(getUnit());
|
||||
projectBudgetIncomeDetail.setAmount(getAmount());
|
||||
projectBudgetIncomeDetail.setPrice(getPrice());
|
||||
projectBudgetIncomeDetail.setTaxRate(getTaxRate());
|
||||
return projectBudgetIncomeDetail;
|
||||
}
|
||||
}
|
|
@ -0,0 +1,9 @@
|
|||
package cn.palmte.work.model;
|
||||
|
||||
import org.springframework.data.jpa.repository.JpaRepository;
|
||||
|
||||
import java.util.List;
|
||||
|
||||
public interface ProjectBudgetIncomeDetailTempRepository extends JpaRepository<ProjectBudgetIncomeDetailTemp,Integer> {
|
||||
List<ProjectBudgetIncomeDetailTemp> findAllByProjectIdEquals(int id);
|
||||
}
|
|
@ -0,0 +1,30 @@
|
|||
package cn.palmte.work.model;
|
||||
|
||||
import javax.persistence.*;
|
||||
|
||||
/**
|
||||
* 资金计划明细临时表
|
||||
*/
|
||||
@Entity
|
||||
@Table(name = "project_budget_plan_detail_temp")
|
||||
public class ProjectBudgetPlanDetailTemp extends ProjectBudgetPlanDetail{
|
||||
public ProjectBudgetPlanDetail toProjectBudgetPlanDetail(){
|
||||
ProjectBudgetPlanDetail projectBudgetPlanDetail = new ProjectBudgetPlanDetail();
|
||||
projectBudgetPlanDetail.setProjectId(getProjectId());
|
||||
projectBudgetPlanDetail.setMonth(getMonth());
|
||||
projectBudgetPlanDetail.setDeviceCost(getDeviceCost());
|
||||
projectBudgetPlanDetail.setEngineerCost(getEngineerCost());
|
||||
projectBudgetPlanDetail.setProjectManageCost(getProjectManageCost());
|
||||
projectBudgetPlanDetail.setEarnestMoneyCost(getEarnestMoneyCost());
|
||||
projectBudgetPlanDetail.setTotalCost(getTotalCost());
|
||||
projectBudgetPlanDetail.setSaleIncome(getSaleIncome());
|
||||
projectBudgetPlanDetail.setEarnestMoneyIncome(getEarnestMoneyIncome());
|
||||
projectBudgetPlanDetail.setTotalIncome(getTotalIncome());
|
||||
projectBudgetPlanDetail.setFundBalance(getFundBalance());
|
||||
projectBudgetPlanDetail.setUnderwrittenTaxRate(getUnderwrittenTaxRate());
|
||||
projectBudgetPlanDetail.setCapitalInterest(getCapitalInterest());
|
||||
projectBudgetPlanDetail.setUnderwrittenPlan(getUnderwrittenPlan());
|
||||
projectBudgetPlanDetail.setRepaymentPlan(getRepaymentPlan());
|
||||
return projectBudgetPlanDetail;
|
||||
}
|
||||
}
|
|
@ -0,0 +1,13 @@
|
|||
package cn.palmte.work.model;
|
||||
|
||||
import org.springframework.data.jpa.repository.JpaRepository;
|
||||
import org.springframework.data.jpa.repository.Query;
|
||||
|
||||
import java.util.List;
|
||||
|
||||
public interface ProjectBudgetPlanDetailTempRepository extends JpaRepository<ProjectBudgetPlanDetailTemp,Integer> {
|
||||
List<ProjectBudgetPlanDetailTemp> findAllByProjectIdEquals(int id);
|
||||
|
||||
@Query(value = "select * from project_budget_plan_detail_temp where project_id in ?1", nativeQuery = true)
|
||||
List<ProjectBudgetPlanDetailTemp> findAllByProjectIds(List<Integer> projectInt);
|
||||
}
|
|
@ -28,12 +28,20 @@ public class ProjectBudgetService {
|
|||
@Autowired
|
||||
private ProjectBudgetIncomeDetailRepository projectBudgetIncomeDetailRepository;
|
||||
@Autowired
|
||||
private ProjectBudgetIncomeDetailTempRepository projectBudgetIncomeDetailTempRepository;
|
||||
@Autowired
|
||||
private ProjectBudgetCostDetailRepository projectBudgetCostDetailRepository;
|
||||
@Autowired
|
||||
private ProjectBudgetCostDetailTempRepository projectBudgetCostDetailTempRepository;
|
||||
@Autowired
|
||||
private ProjectBudgetCostProjectManageDetailRepository projectBudgetCostProjectManageDetailRepository;
|
||||
@Autowired
|
||||
private ProjectBudgetCostProjectManageDetailTempRepository projectBudgetCostProjectManageDetailTempRepository;
|
||||
@Autowired
|
||||
private ProjectBudgetPlanDetailRepository projectBudgetPlanDetailRepository;
|
||||
@Autowired
|
||||
private ProjectBudgetPlanDetailTempRepository projectBudgetPlanDetailTempRepository;
|
||||
@Autowired
|
||||
private ProjectInstanceService projectInstanceService;
|
||||
@Autowired
|
||||
private ActTaskDefService actTaskDefService;
|
||||
|
@ -321,6 +329,12 @@ public class ProjectBudgetService {
|
|||
projectBudgetIncomeDetailRepository.deleteInBatch(incomeDetails);
|
||||
}
|
||||
}
|
||||
public void clearBudgetIncomeDetailTemp(Project project){
|
||||
List<ProjectBudgetIncomeDetailTemp> incomeDetails = projectBudgetIncomeDetailTempRepository.findAllByProjectIdEquals(project.getId());
|
||||
if(CollectionUtil.isNotEmpty(incomeDetails)){
|
||||
projectBudgetIncomeDetailTempRepository.deleteInBatch(incomeDetails);
|
||||
}
|
||||
}
|
||||
|
||||
/**
|
||||
* 保存项目的收入明细
|
||||
|
@ -335,6 +349,17 @@ public class ProjectBudgetService {
|
|||
projectBudgetIncomeDetailRepository.save(detailList);
|
||||
}
|
||||
}
|
||||
@Transactional(rollbackFor = RuntimeException.class)
|
||||
public void saveBudgetIncomeDetailTemp(Project project, List<ProjectBudgetIncomeDetailTemp> detailList){
|
||||
clearBudgetIncomeDetailTemp(project);
|
||||
if(CollectionUtil.isNotEmpty(detailList)){
|
||||
for (ProjectBudgetIncomeDetailTemp projectBudgetIncomeDetail : detailList) {
|
||||
projectBudgetIncomeDetail.setProjectId(project.getId());
|
||||
}
|
||||
projectBudgetIncomeDetailTempRepository.save(detailList);
|
||||
}
|
||||
|
||||
}
|
||||
|
||||
/**
|
||||
* 获取项目的收入明细
|
||||
|
@ -351,6 +376,12 @@ public class ProjectBudgetService {
|
|||
projectBudgetCostDetailRepository.deleteInBatch(costDetails);
|
||||
}
|
||||
}
|
||||
public void clearBudgetCostDetailTemp(Project project){
|
||||
List<ProjectBudgetCostDetailTemp> costDetails = projectBudgetCostDetailTempRepository.findAllByProjectIdEquals(project.getId());
|
||||
if(CollectionUtil.isNotEmpty(costDetails)){
|
||||
projectBudgetCostDetailTempRepository.deleteInBatch(costDetails);
|
||||
}
|
||||
}
|
||||
|
||||
/**
|
||||
* 保存项目的成本明细
|
||||
|
@ -366,6 +397,17 @@ public class ProjectBudgetService {
|
|||
projectBudgetCostDetailRepository.save(detailList);
|
||||
}
|
||||
}
|
||||
@Transactional(rollbackFor = RuntimeException.class)
|
||||
public void saveBudgetCostDetailTemp(Project project, List<ProjectBudgetCostDetailTemp> detailList){
|
||||
clearBudgetCostDetailTemp(project);
|
||||
|
||||
if(CollectionUtil.isNotEmpty(detailList)){
|
||||
for (ProjectBudgetCostDetailTemp projectBudgetCostDetail : detailList) {
|
||||
projectBudgetCostDetail.setProjectId(project.getId());
|
||||
}
|
||||
projectBudgetCostDetailTempRepository.save(detailList);
|
||||
}
|
||||
}
|
||||
|
||||
/**
|
||||
* 获取项目的成本明细
|
||||
|
@ -382,6 +424,12 @@ public class ProjectBudgetService {
|
|||
projectBudgetCostProjectManageDetailRepository.deleteInBatch(costDetails);
|
||||
}
|
||||
}
|
||||
public void clearBudgetCostProjectManageDetailTemp(Project project){
|
||||
List<ProjectBudgetCostProjectManageDetailTemp> costDetails = projectBudgetCostProjectManageDetailTempRepository.findAllByProjectIdEquals(project.getId());
|
||||
if(CollectionUtil.isNotEmpty(costDetails)){
|
||||
projectBudgetCostProjectManageDetailTempRepository.deleteInBatch(costDetails);
|
||||
}
|
||||
}
|
||||
|
||||
/**
|
||||
* 保存项目的项目管理成本明细
|
||||
|
@ -396,6 +444,16 @@ public class ProjectBudgetService {
|
|||
projectBudgetCostProjectManageDetailRepository.save(detailList);
|
||||
}
|
||||
}
|
||||
@Transactional(rollbackFor = RuntimeException.class)
|
||||
public void saveBudgetCostProjectManageDetailTemp(Project project, List<ProjectBudgetCostProjectManageDetailTemp> detailList){
|
||||
clearBudgetCostProjectManageDetailTemp(project);
|
||||
if(CollectionUtil.isNotEmpty(detailList)){
|
||||
for (ProjectBudgetCostProjectManageDetailTemp projectBudgetCostProjectManageDetail : detailList) {
|
||||
projectBudgetCostProjectManageDetail.setProjectId(project.getId());
|
||||
}
|
||||
projectBudgetCostProjectManageDetailTempRepository.save(detailList);
|
||||
}
|
||||
}
|
||||
|
||||
/**
|
||||
* 获取项目管理明细
|
||||
|
@ -435,6 +493,12 @@ public class ProjectBudgetService {
|
|||
projectBudgetPlanDetailRepository.deleteInBatch(costDetails);
|
||||
}
|
||||
}
|
||||
public void clearBudgetPlanDetailTemp(Project project){
|
||||
List<ProjectBudgetPlanDetailTemp> costDetails = projectBudgetPlanDetailTempRepository.findAllByProjectIdEquals(project.getId());
|
||||
if(CollectionUtil.isNotEmpty(costDetails)){
|
||||
projectBudgetPlanDetailTempRepository.deleteInBatch(costDetails);
|
||||
}
|
||||
}
|
||||
|
||||
/**
|
||||
* 保存项目的资金计划明细
|
||||
|
@ -450,6 +514,17 @@ public class ProjectBudgetService {
|
|||
projectBudgetPlanDetailRepository.save(detailList);
|
||||
}
|
||||
}
|
||||
@Transactional(rollbackFor = RuntimeException.class)
|
||||
public void saveBudgetPlanDetailTemp(Project project, List<ProjectBudgetPlanDetailTemp> detailList){
|
||||
clearBudgetPlanDetailTemp(project);
|
||||
if(CollectionUtil.isNotEmpty(detailList)){
|
||||
for (ProjectBudgetPlanDetailTemp projectBudgetPlanDetail : detailList) {
|
||||
projectBudgetPlanDetail.setProjectId(project.getId());
|
||||
projectBudgetPlanDetail.setUnderwrittenTaxRate(project.getUnderwrittenTaxRate());
|
||||
}
|
||||
projectBudgetPlanDetailTempRepository.save(detailList);
|
||||
}
|
||||
}
|
||||
|
||||
/**
|
||||
* 获取资金计划数据
|
||||
|
@ -553,7 +628,7 @@ public class ProjectBudgetService {
|
|||
|
||||
|
||||
ProjectBudgetPlanDetail projectBudgetPlanDetail = new ProjectBudgetPlanDetail();
|
||||
projectBudgetPlanDetail.setMonth("合计");
|
||||
projectBudgetPlanDetail.setMonth("数据代入");
|
||||
projectBudgetPlanDetail.setDeviceCost(deviceCost);
|
||||
projectBudgetPlanDetail.setEngineerCost(engineerCost);
|
||||
projectBudgetPlanDetail.setProjectManageCost(projectManageCost);
|
||||
|
@ -707,6 +782,56 @@ public class ProjectBudgetService {
|
|||
//清空重新保存概算信息
|
||||
clearBudget(p);
|
||||
saveBudget(p, budgetBean);
|
||||
|
||||
clearBudgetDetail(p);
|
||||
saveBudgetDetail(p);
|
||||
return p;
|
||||
}
|
||||
|
||||
private void saveBudgetDetail(Project p) {
|
||||
//临时表中始终是最新的详情,不管是本次修改还是以前保持的
|
||||
//收入明细
|
||||
List<ProjectBudgetIncomeDetailTemp> projectBudgetIncomeDetailTemps = projectBudgetIncomeDetailTempRepository.findAllByProjectIdEquals(p.getId());
|
||||
if(CollectionUtil.isNotEmpty(projectBudgetIncomeDetailTemps)){
|
||||
List<ProjectBudgetIncomeDetail> incomeDetails = projectBudgetIncomeDetailTemps.stream()
|
||||
.map(ProjectBudgetIncomeDetailTemp::toProjectBudgetIncomeDetail)
|
||||
.collect(Collectors.toList());
|
||||
projectBudgetIncomeDetailRepository.save(incomeDetails);
|
||||
}
|
||||
//成本明细
|
||||
List<ProjectBudgetCostDetailTemp> projectBudgetCostDetailTemps = projectBudgetCostDetailTempRepository.findAllByProjectIdEquals(p.getId());
|
||||
if(CollectionUtil.isNotEmpty(projectBudgetCostDetailTemps)){
|
||||
List<ProjectBudgetCostDetail> costDetails = projectBudgetCostDetailTemps.stream()
|
||||
.map(ProjectBudgetCostDetailTemp::toProjectBudgetCostDetail)
|
||||
.collect(Collectors.toList());
|
||||
projectBudgetCostDetailRepository.save(costDetails);
|
||||
}
|
||||
//项目管理明细
|
||||
List<ProjectBudgetCostProjectManageDetailTemp> projectBudgetCostProjectManageDetailTemps = projectBudgetCostProjectManageDetailTempRepository.findAllByProjectIdEquals(p.getId());
|
||||
if(CollectionUtil.isNotEmpty(projectBudgetCostProjectManageDetailTemps)){
|
||||
List<ProjectBudgetCostProjectManageDetail> costProjectManageDetails = projectBudgetCostProjectManageDetailTemps.stream()
|
||||
.map(ProjectBudgetCostProjectManageDetailTemp::toProjectBudgetCostProjectManageDetail)
|
||||
.collect(Collectors.toList());
|
||||
projectBudgetCostProjectManageDetailRepository.save(costProjectManageDetails);
|
||||
}
|
||||
//资金计划明细
|
||||
List<ProjectBudgetPlanDetailTemp> projectBudgetPlanDetailTemps = projectBudgetPlanDetailTempRepository.findAllByProjectIdEquals(p.getId());
|
||||
if(CollectionUtil.isNotEmpty(projectBudgetPlanDetailTemps)){
|
||||
List<ProjectBudgetPlanDetail> budgetPlanDetails = projectBudgetPlanDetailTemps.stream()
|
||||
.map(ProjectBudgetPlanDetailTemp::toProjectBudgetPlanDetail)
|
||||
.collect(Collectors.toList());
|
||||
projectBudgetPlanDetailRepository.save(budgetPlanDetails);
|
||||
}
|
||||
}
|
||||
|
||||
private void clearBudgetDetail(Project p) {
|
||||
//收入明细
|
||||
clearBudgetIncomeDetail(p);
|
||||
//成本明细
|
||||
clearBudgetCostDetail(p);
|
||||
//项目管理明细
|
||||
clearBudgetCostProjectManageDetail(p);
|
||||
//资金计划明细
|
||||
clearBudgetPlanDetail(p);
|
||||
}
|
||||
}
|
||||
|
|
Loading…
Reference in New Issue