成本预算调整
This commit is contained in:
parent
fb77cc25db
commit
f3a4ddbeeb
@ -313,12 +313,13 @@ public class CostBudgetController {
|
|||||||
public Result<?> importExcel(HttpServletRequest request, HttpServletResponse response) {
|
public Result<?> importExcel(HttpServletRequest request, HttpServletResponse response) {
|
||||||
MultipartHttpServletRequest multipartRequest = (MultipartHttpServletRequest) request;
|
MultipartHttpServletRequest multipartRequest = (MultipartHttpServletRequest) request;
|
||||||
String projectSn = request.getParameter("projectSn");
|
String projectSn = request.getParameter("projectSn");
|
||||||
ProjectInfoExtVo projectInfoBySn = projectService.getProjectInfoBySn(projectSn);
|
Integer version = Integer.valueOf(request.getParameter("version"));
|
||||||
Company company = companyService.getOne(Wrappers.<Company>lambdaQuery().eq(Company::getCompanySn, projectInfoBySn.getCompanySn()));
|
// ProjectInfoExtVo projectInfoBySn = projectService.getProjectInfoBySn(projectSn);
|
||||||
|
// Company company = companyService.getOne(Wrappers.<Company>lambdaQuery().eq(Company::getCompanySn, projectInfoBySn.getCompanySn()));
|
||||||
Map<String, MultipartFile> fileMap = multipartRequest.getFileMap();
|
Map<String, MultipartFile> fileMap = multipartRequest.getFileMap();
|
||||||
LambdaQueryWrapper<CostSubject> wrapper = Wrappers.<CostSubject>lambdaQuery()
|
LambdaQueryWrapper<CostSubject> wrapper = Wrappers.<CostSubject>lambdaQuery()
|
||||||
.eq(CostSubject::getSn, company.getHeadquartersSn())
|
.eq(CostSubject::getSn, projectSn);
|
||||||
.eq(CostSubject::getType, projectInfoBySn.getProjectLx());
|
// .eq(CostSubject::getType, projectInfoBySn.getProjectLx());
|
||||||
List<CostSubject> subjectList = costSubjectService.list(wrapper);
|
List<CostSubject> subjectList = costSubjectService.list(wrapper);
|
||||||
for (Map.Entry<String, MultipartFile> entity : fileMap.entrySet()) {
|
for (Map.Entry<String, MultipartFile> entity : fileMap.entrySet()) {
|
||||||
MultipartFile file = entity.getValue();// 获取上传文件对象
|
MultipartFile file = entity.getValue();// 获取上传文件对象
|
||||||
@ -348,6 +349,7 @@ public class CostBudgetController {
|
|||||||
costBudget.setCreateTime(new Date());
|
costBudget.setCreateTime(new Date());
|
||||||
costBudget.setIsCount(StringUtils.isBlank(codeList.get(0).getName()));
|
costBudget.setIsCount(StringUtils.isBlank(codeList.get(0).getName()));
|
||||||
costBudget.setLevel(codeList.get(0).getLevel());
|
costBudget.setLevel(codeList.get(0).getLevel());
|
||||||
|
costBudget.setVersion(version);
|
||||||
costBudgetList.add(costBudget);
|
costBudgetList.add(costBudget);
|
||||||
}
|
}
|
||||||
int num = 0;
|
int num = 0;
|
||||||
|
|||||||
@ -278,6 +278,7 @@ public class CostSubjectController {
|
|||||||
public Result introduceCostSubject(@RequestBody Map<String, Object> param) {
|
public Result introduceCostSubject(@RequestBody Map<String, Object> param) {
|
||||||
Integer toLevelType = MapUtils.getInteger(param, "toLevelType");
|
Integer toLevelType = MapUtils.getInteger(param, "toLevelType");
|
||||||
String sn = MapUtils.getString(param, "sn");
|
String sn = MapUtils.getString(param, "sn");
|
||||||
|
String type = MapUtils.getString(param, "type");
|
||||||
List<CostSubject> exists = costSubjectService.list(new LambdaQueryWrapper<CostSubject>().eq(CostSubject::getSn, sn));
|
List<CostSubject> exists = costSubjectService.list(new LambdaQueryWrapper<CostSubject>().eq(CostSubject::getSn, sn));
|
||||||
Map<String, CostSubject> existCodes = exists.stream().collect(Collectors.toMap(CostSubject::getCode, Function.identity(), (k1, k2) -> k1));
|
Map<String, CostSubject> existCodes = exists.stream().collect(Collectors.toMap(CostSubject::getCode, Function.identity(), (k1, k2) -> k1));
|
||||||
List<Long> subjectIds = exists.stream().map(CostSubject::getId).collect(Collectors.toList());
|
List<Long> subjectIds = exists.stream().map(CostSubject::getId).collect(Collectors.toList());
|
||||||
@ -297,12 +298,12 @@ public class CostSubjectController {
|
|||||||
}
|
}
|
||||||
List<CostSubject> topList = list.stream().filter(costSubject -> Objects.equals(costSubject.getParentId(), 0L)).collect(Collectors.toList());
|
List<CostSubject> topList = list.stream().filter(costSubject -> Objects.equals(costSubject.getParentId(), 0L)).collect(Collectors.toList());
|
||||||
for (CostSubject costSubject : topList) {
|
for (CostSubject costSubject : topList) {
|
||||||
addCostSubject(costSubject, list, sn, 0L, toLevelType, existCodes, useCodes);
|
addCostSubject(costSubject, list, sn, 0L, toLevelType, existCodes, useCodes, type);
|
||||||
}
|
}
|
||||||
return Result.ok();
|
return Result.ok();
|
||||||
}
|
}
|
||||||
|
|
||||||
private void addCostSubject(CostSubject costSubject, List<CostSubject> list, String sn, Long parentId, Integer toLevelType, Map<String, CostSubject> existCodes, Set<String> useCodes) {
|
private void addCostSubject(CostSubject costSubject, List<CostSubject> list, String sn, Long parentId, Integer toLevelType, Map<String, CostSubject> existCodes, Set<String> useCodes, String type) {
|
||||||
List<CostSubject> childList = list.stream().filter(subject -> Objects.equals(subject.getParentId(), costSubject.getId())).collect(Collectors.toList());
|
List<CostSubject> childList = list.stream().filter(subject -> Objects.equals(subject.getParentId(), costSubject.getId())).collect(Collectors.toList());
|
||||||
CostSubject costSubject1 = JSON.parseObject(JSON.toJSONString(costSubject), CostSubject.class);
|
CostSubject costSubject1 = JSON.parseObject(JSON.toJSONString(costSubject), CostSubject.class);
|
||||||
costSubject1.setId(null);
|
costSubject1.setId(null);
|
||||||
@ -319,22 +320,26 @@ public class CostSubjectController {
|
|||||||
// costSubject1.setUpdateTime(new Date());
|
// costSubject1.setUpdateTime(new Date());
|
||||||
costSubject1.setLevelType(toLevelType);
|
costSubject1.setLevelType(toLevelType);
|
||||||
// costSubject1.setChildren(Lists.newArrayList());
|
// costSubject1.setChildren(Lists.newArrayList());
|
||||||
if (!useCodes.contains(costSubject1.getCode())) {
|
// if (!useCodes.contains(costSubject1.getCode())) {
|
||||||
if (existCodes.containsKey(costSubject1.getCode())) {
|
CostSubject costSubjectExist = existCodes.get(costSubject1.getCode());
|
||||||
|
if (costSubjectExist != null && costSubjectExist.getType().equals(costSubject1.getType())) {
|
||||||
UserInfo user = SecurityUtils.getUser();
|
UserInfo user = SecurityUtils.getUser();
|
||||||
costSubjectService.update(new LambdaUpdateWrapper<CostSubject>().set(CostSubject::getCreateBy, user.getUserId().toString())
|
costSubjectService.update(new LambdaUpdateWrapper<CostSubject>().set(CostSubject::getCreateBy, user.getUserId().toString())
|
||||||
.set(CostSubject::getUpdateTime, new Date()).eq(CostSubject::getSn, sn).eq(CostSubject::getCode, costSubject1.getCode()));
|
.set(CostSubject::getUpdateTime, new Date()).eq(CostSubject::getSn, sn).eq(CostSubject::getCode, costSubject1.getCode()));
|
||||||
} else {
|
} else {
|
||||||
|
if (StringUtils.isNotBlank(type)) {
|
||||||
|
costSubject1.setType(Integer.parseInt(type));
|
||||||
|
}
|
||||||
costSubjectService.saveInfo(costSubject1);
|
costSubjectService.saveInfo(costSubject1);
|
||||||
parentId = costSubject1.getId();
|
parentId = costSubject1.getId();
|
||||||
}
|
}
|
||||||
}
|
// }
|
||||||
if (existCodes.containsKey(costSubject.getCode())) {
|
if (costSubjectExist != null && costSubjectExist.getType().equals(costSubject1.getType())) {
|
||||||
parentId = existCodes.get(costSubject.getCode()).getId();
|
parentId = existCodes.get(costSubject.getCode()).getId();
|
||||||
}
|
}
|
||||||
if (CollUtil.isNotEmpty(childList)) {
|
if (CollUtil.isNotEmpty(childList)) {
|
||||||
for (CostSubject subject : childList) {
|
for (CostSubject subject : childList) {
|
||||||
addCostSubject(subject, list, sn, parentId, toLevelType, existCodes, useCodes);
|
addCostSubject(subject, list, sn, parentId, toLevelType, existCodes, useCodes, type);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|||||||
@ -97,7 +97,10 @@ public class CostBudgetServiceImpl extends ServiceImpl<CostBudgetMapper, CostBud
|
|||||||
public List<CostBudgetDto> exportList(QueryWrapper<CostSubject> wrapper, ProjectInfoExtVo projectInfoBySn, boolean flag, String level) {
|
public List<CostBudgetDto> exportList(QueryWrapper<CostSubject> wrapper, ProjectInfoExtVo projectInfoBySn, boolean flag, String level) {
|
||||||
wrapper.lambda().eq(CostSubject::getParentId, 0);
|
wrapper.lambda().eq(CostSubject::getParentId, 0);
|
||||||
List<CostSubject> list = costSubjectService.list(wrapper);
|
List<CostSubject> list = costSubjectService.list(wrapper);
|
||||||
List<CostBudgetDto> dtoList = convert(list);
|
List<CostSubject> filter = list.stream().filter(l -> StringUtils.isNotBlank(l.getName())).collect(Collectors.toList());
|
||||||
|
List<CostBudgetDto> dtoList = convert(filter);
|
||||||
|
List<CostSubject> total = list.stream().filter(l -> StringUtils.isBlank(l.getName())).collect(Collectors.toList());
|
||||||
|
dtoList.addAll(convert(total));
|
||||||
if (dtoList.size() > 0) {
|
if (dtoList.size() > 0) {
|
||||||
List<CostSubject> allList = costSubjectService.list(Wrappers.<CostSubject>lambdaQuery()
|
List<CostSubject> allList = costSubjectService.list(Wrappers.<CostSubject>lambdaQuery()
|
||||||
.eq(CostSubject::getSn, projectInfoBySn.getProjectSn())
|
.eq(CostSubject::getSn, projectInfoBySn.getProjectSn())
|
||||||
|
|||||||
@ -50,11 +50,13 @@ public class JzProjectBudgetServiceImpl extends ServiceImpl<JzProjectBudgetMappe
|
|||||||
List<JzCustomer> jzCustomers = jzCustomerList.stream().filter(j -> j.getId().toString().equals(jzProjects.get(0).getCustomerId().toString())).collect(Collectors.toList());
|
List<JzCustomer> jzCustomers = jzCustomerList.stream().filter(j -> j.getId().toString().equals(jzProjects.get(0).getCustomerId().toString())).collect(Collectors.toList());
|
||||||
record.setCustomerName(jzCustomers.size() > 0 ? jzCustomers.get(0).getName() : "");
|
record.setCustomerName(jzCustomers.size() > 0 ? jzCustomers.get(0).getName() : "");
|
||||||
}
|
}
|
||||||
|
if (jzProjectDemandList.size() > 0) {
|
||||||
List<JzProjectDemand> jzProjectDemand = jzProjectDemandList.stream().filter(j -> j.getId().toString().equals(record.getDemandId().toString())).collect(Collectors.toList());
|
List<JzProjectDemand> jzProjectDemand = jzProjectDemandList.stream().filter(j -> j.getId().toString().equals(record.getDemandId().toString())).collect(Collectors.toList());
|
||||||
if (jzProjectDemand.size() > 0) {
|
if (jzProjectDemand.size() > 0) {
|
||||||
record.setDemandName(jzProjectDemand.get(0).getTitle());
|
record.setDemandName(jzProjectDemand.get(0).getTitle());
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
}
|
||||||
return pageList;
|
return pageList;
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|||||||
Loading…
x
Reference in New Issue
Block a user