refactor(project-budget): 优化项目预算成本明细临时表和采购类别处理

- 移除了 ProjectBudgetCostDetailTemp 类中的 categoryStr 字段
- 简化了 ProjectBudgetService 中的采购类别处理逻辑
- 使用 categoryStr 作为采购类别名称直接赋值给 category 字段
dev_2.0.2
chenhao 2024-12-20 11:47:55 +08:00
parent b7790d36fb
commit c40ec93373
2 changed files with 1 additions and 19 deletions

View File

@ -14,8 +14,6 @@ import javax.persistence.Transient;
@Table(name = "project_budget_cost_detail_temp")
@Data
public class ProjectBudgetCostDetailTemp extends ProjectBudgetCostDetailBase{
@Transient
private String categoryStr;
public ProjectBudgetCostDetail toProjectBudgetCostDetail(){
ProjectBudgetCostDetail detail = new ProjectBudgetCostDetail();
detail.setProjectId(getProjectId());

View File

@ -1283,7 +1283,6 @@ public class ProjectBudgetService {
// }
// projectBudgetCostDetailRepository.save(CostDetailList);
final ResponseMsg msg = ResponseMsg.buildSuccessMsg(String.format("成功:%d, 失败:%d", successCount, errorCount));
costDetailTempList.forEach(item->item.setCategory(item.getCategoryStr()));
msg.setData(new HashMap<String,List>(){{put("errorList",errorList);put("successList",costDetailTempList);}});
return msg;
}
@ -1310,22 +1309,7 @@ public class ProjectBudgetService {
key = "产品大类";
o1 = m.get(key);
String category = (String) o1;
ProcurementType procurementType = procurementTypeRepository.findByName(category);
if (procurementType==null){
procurementType=new ProcurementType();
procurementType.setName(category);
procurementType.setType(temp.getType());
procurementType.setEnabled(1);
procurementType.setCreatedBy(InterfaceUtil.getAdmin().getRealName());
procurementType.setCreatedTime(new Date());
procurementTypeRepository.saveAndFlush(procurementType);
}
if (procurementType != null && procurementType.getType() == temp.getType()) {
temp.setCategory(procurementType.getId().toString());
temp.setCategoryStr(category);
} else {
throw new Exception("该采购类别不存在或者与采购成本项目不匹配");
}
temp.setCategory(category);
key = "供应商";
o1 = m.get(key);