From 81e92184cbc15e0c8475411d255275573c2db049 Mon Sep 17 00:00:00 2001 From: guoshengxiong <1923636941@qq.com> Date: Mon, 9 Sep 2024 19:38:19 +0800 Subject: [PATCH] =?UTF-8?q?=E7=A7=91=E7=9B=AE=E4=BF=AE=E6=94=B9?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../cost/controller/CostBudgetController.java | 22 +-- .../CostContractPlanController.java | 14 +- .../controller/CostSubjectController.java | 184 ++++++++++++------ .../xmgl/modules/cost/entity/CostSubject.java | 13 +- .../cost/service/ICostBudgetService.java | 2 +- .../service/impl/CostBudgetServiceImpl.java | 8 +- 6 files changed, 150 insertions(+), 93 deletions(-) diff --git a/src/main/java/com/zhgd/xmgl/modules/cost/controller/CostBudgetController.java b/src/main/java/com/zhgd/xmgl/modules/cost/controller/CostBudgetController.java index 549c6aa18..2177b3625 100644 --- a/src/main/java/com/zhgd/xmgl/modules/cost/controller/CostBudgetController.java +++ b/src/main/java/com/zhgd/xmgl/modules/cost/controller/CostBudgetController.java @@ -14,12 +14,10 @@ import com.zhgd.xmgl.modules.cost.dto.CostBulletinDto; import com.zhgd.xmgl.modules.cost.dto.CostDynamicDto; import com.zhgd.xmgl.modules.cost.entity.CostSubject; import com.zhgd.xmgl.modules.cost.service.ICostSubjectService; -import com.zhgd.xmgl.modules.exam.entity.ExamQuestionBank; import com.zhgd.xmgl.modules.project.entity.vo.ProjectInfoExtVo; import com.zhgd.xmgl.modules.project.service.IProjectService; import com.zhgd.xmgl.security.entity.UserInfo; import com.zhgd.xmgl.security.util.SecurityUtils; -import com.zhgd.xmgl.util.ExcelUtils; import com.zhgd.xmgl.util.PageUtil; import io.swagger.annotations.Api; import io.swagger.annotations.ApiImplicitParam; @@ -29,14 +27,12 @@ import io.swagger.annotations.ApiOperation; import java.io.*; import java.math.BigDecimal; import java.util.*; -import java.net.URLDecoder; import java.util.stream.Collectors; import javax.servlet.http.HttpServletRequest; import javax.servlet.http.HttpServletResponse; import com.zhgd.jeecg.common.api.vo.Result; import com.zhgd.jeecg.common.system.query.QueryGenerator; -import com.zhgd.jeecg.common.util.oConvertUtils; import com.zhgd.xmgl.modules.cost.entity.CostBudget; import com.zhgd.xmgl.modules.cost.service.ICostBudgetService; @@ -57,7 +53,6 @@ import org.springframework.web.bind.annotation.*; import org.springframework.web.multipart.MultipartFile; import org.springframework.web.multipart.MultipartHttpServletRequest; import org.springframework.web.servlet.ModelAndView; -import com.alibaba.fastjson.JSON; import springfox.documentation.annotations.ApiIgnore; @@ -84,7 +79,7 @@ public class CostBudgetController { @Autowired private ICompanyService companyService; - + @Autowired private FileStorageProperties fileStorageProperties; @@ -100,12 +95,13 @@ public class CostBudgetController { @PostMapping(value = "/tree") public Result> tree(@ApiIgnore @RequestBody Map map) { String projectSn = MapUtils.getString(map, "projectSn"); - ProjectInfoExtVo projectInfoBySn = projectService.getProjectInfoBySn(projectSn); - Company company = companyService.getOne(Wrappers.lambdaQuery().eq(Company::getCompanySn, projectInfoBySn.getCompanySn())); - map.put("companySn", company.getHeadquartersSn()); + map.put("sn", projectSn); +// ProjectInfoExtVo projectInfoBySn = projectService.getProjectInfoBySn(projectSn); +// Company company = companyService.getOne(Wrappers.lambdaQuery().eq(Company::getCompanySn, projectInfoBySn.getCompanySn())); +// map.put("companySn", company.getHeadquartersSn()); QueryWrapper queryWrapper = QueryGenerator.initPageQueryWrapper(CostSubject.class, map); - queryWrapper.lambda().eq(CostSubject::getType, projectInfoBySn.getProjectLx()); - List list = costBudgetService.tree(queryWrapper, projectInfoBySn); +// queryWrapper.lambda().eq(CostSubject::getType, projectInfoBySn.getProjectLx()); + List list = costBudgetService.tree(queryWrapper, projectSn); return Result.success(list); } @@ -317,7 +313,7 @@ public class CostBudgetController { Company company = companyService.getOne(Wrappers.lambdaQuery().eq(Company::getCompanySn, projectInfoBySn.getCompanySn())); Map fileMap = multipartRequest.getFileMap(); LambdaQueryWrapper wrapper = Wrappers.lambdaQuery() - .eq(CostSubject::getCompanySn, company.getHeadquartersSn()) + .eq(CostSubject::getSn, company.getHeadquartersSn()) .eq(CostSubject::getType, projectInfoBySn.getProjectLx()); List subjectList = costSubjectService.list(wrapper); for (Map.Entry entity : fileMap.entrySet()) { @@ -416,7 +412,7 @@ public class CostBudgetController { ProjectInfoExtVo projectInfoBySn = projectService.getProjectInfoBySn(projectSn); Company company = companyService.getOne(Wrappers.lambdaQuery().eq(Company::getCompanySn, projectInfoBySn.getCompanySn())); LambdaQueryWrapper wrapper = Wrappers.lambdaQuery() - .eq(CostSubject::getCompanySn, company.getHeadquartersSn()) + .eq(CostSubject::getSn, company.getHeadquartersSn()) .eq(CostSubject::getType, projectInfoBySn.getProjectLx()); List subjectList = costSubjectService.list(wrapper); ImportParams params = new ImportParams(); diff --git a/src/main/java/com/zhgd/xmgl/modules/cost/controller/CostContractPlanController.java b/src/main/java/com/zhgd/xmgl/modules/cost/controller/CostContractPlanController.java index f50425fe0..b73dd3388 100644 --- a/src/main/java/com/zhgd/xmgl/modules/cost/controller/CostContractPlanController.java +++ b/src/main/java/com/zhgd/xmgl/modules/cost/controller/CostContractPlanController.java @@ -128,11 +128,12 @@ public class CostContractPlanController { Project id = projectService.getById(projectId); projectSn = id.getProjectSn(); } + map.put("sn", projectSn); ProjectInfoExtVo projectInfoBySn = projectService.getProjectInfoBySn(projectSn); - Company company = companyService.getOne(Wrappers.lambdaQuery().eq(Company::getCompanySn, projectInfoBySn.getCompanySn())); - map.put("companySn", company.getHeadquartersSn()); +// Company company = companyService.getOne(Wrappers.lambdaQuery().eq(Company::getCompanySn, projectInfoBySn.getCompanySn())); +// map.put("companySn", company.getHeadquartersSn()); QueryWrapper queryWrapper = QueryGenerator.initPageQueryWrapper(CostSubject.class, map); - queryWrapper.lambda().eq(CostSubject::getType, projectInfoBySn.getProjectLx()); +// queryWrapper.lambda().eq(CostSubject::getType, projectInfoBySn.getProjectLx()); List list = costContractPlanService.tree(queryWrapper, projectInfoBySn); return Result.success(list); } @@ -328,11 +329,12 @@ public class CostContractPlanController { @PostMapping(value = "/dynamicTree") public Result> dynamicTree(@ApiIgnore @RequestBody Map map) { String projectSn = MapUtils.getString(map, "projectSn"); + map.put("sn", projectSn); ProjectInfoExtVo projectInfoBySn = projectService.getProjectInfoBySn(projectSn); - Company company = companyService.getOne(Wrappers.lambdaQuery().eq(Company::getCompanySn, projectInfoBySn.getCompanySn())); - map.put("companySn", company.getHeadquartersSn()); +// Company company = companyService.getOne(Wrappers.lambdaQuery().eq(Company::getCompanySn, projectInfoBySn.getCompanySn())); +// map.put("companySn", company.getHeadquartersSn()); QueryWrapper queryWrapper = QueryGenerator.initPageQueryWrapper(CostSubject.class, map); - queryWrapper.lambda().eq(CostSubject::getType, projectInfoBySn.getProjectLx()); +// queryWrapper.lambda().eq(CostSubject::getType, projectInfoBySn.getProjectLx()); List list = costContractPlanService.dynamicTree(queryWrapper, projectInfoBySn); return Result.success(list); } diff --git a/src/main/java/com/zhgd/xmgl/modules/cost/controller/CostSubjectController.java b/src/main/java/com/zhgd/xmgl/modules/cost/controller/CostSubjectController.java index 89bc504e4..5d12fa8e2 100644 --- a/src/main/java/com/zhgd/xmgl/modules/cost/controller/CostSubjectController.java +++ b/src/main/java/com/zhgd/xmgl/modules/cost/controller/CostSubjectController.java @@ -1,55 +1,45 @@ package com.zhgd.xmgl.modules.cost.controller; +import cn.hutool.core.collection.CollUtil; +import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper; +import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper; +import com.baomidou.mybatisplus.core.conditions.update.LambdaUpdateWrapper; +import com.baomidou.mybatisplus.core.metadata.IPage; import com.baomidou.mybatisplus.core.toolkit.StringUtils; import com.baomidou.mybatisplus.core.toolkit.Wrappers; +import com.baomidou.mybatisplus.extension.plugins.pagination.Page; +import com.gexin.fastjson.JSON; import com.zhgd.annotation.OperLog; +import com.zhgd.jeecg.common.api.vo.Result; +import com.zhgd.jeecg.common.system.query.QueryGenerator; import com.zhgd.xmgl.modules.basicdata.entity.Company; import com.zhgd.xmgl.modules.basicdata.service.ICompanyService; -import com.zhgd.xmgl.modules.cost.vo.CostSubjectVo; +import com.zhgd.xmgl.modules.cost.entity.CostBudget; +import com.zhgd.xmgl.modules.cost.entity.CostSubject; +import com.zhgd.xmgl.modules.cost.service.ICostBudgetService; +import com.zhgd.xmgl.modules.cost.service.ICostSubjectService; import com.zhgd.xmgl.modules.project.entity.vo.ProjectInfoExtVo; import com.zhgd.xmgl.modules.project.service.IProjectService; +import com.zhgd.xmgl.security.entity.UserInfo; +import com.zhgd.xmgl.security.util.SecurityUtils; import com.zhgd.xmgl.util.PageUtil; import io.swagger.annotations.Api; import io.swagger.annotations.ApiImplicitParam; import io.swagger.annotations.ApiImplicitParams; import io.swagger.annotations.ApiOperation; - -import java.util.ArrayList; -import java.util.Arrays; -import java.util.List; -import java.util.Map; -import java.io.IOException; -import java.io.UnsupportedEncodingException; -import java.net.URLDecoder; -import javax.servlet.http.HttpServletRequest; -import javax.servlet.http.HttpServletResponse; - -import com.zhgd.jeecg.common.api.vo.Result; -import com.zhgd.jeecg.common.system.query.QueryGenerator; -import com.zhgd.jeecg.common.util.oConvertUtils; -import com.zhgd.xmgl.modules.cost.entity.CostSubject; -import com.zhgd.xmgl.modules.cost.service.ICostSubjectService; - -import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper; -import com.baomidou.mybatisplus.core.metadata.IPage; -import com.baomidou.mybatisplus.extension.plugins.pagination.Page; import lombok.extern.slf4j.Slf4j; - import org.apache.commons.collections.MapUtils; -import org.jeecgframework.poi.excel.ExcelImportUtil; -import org.jeecgframework.poi.excel.def.NormalExcelConstants; -import org.jeecgframework.poi.excel.entity.ExportParams; -import org.jeecgframework.poi.excel.entity.ImportParams; -import org.jeecgframework.poi.excel.view.JeecgEntityExcelView; - import org.springframework.beans.factory.annotation.Autowired; -import org.springframework.web.bind.annotation.*; -import org.springframework.web.multipart.MultipartFile; -import org.springframework.web.multipart.MultipartHttpServletRequest; -import org.springframework.web.servlet.ModelAndView; -import com.alibaba.fastjson.JSON; +import org.springframework.context.annotation.Lazy; +import org.springframework.web.bind.annotation.PostMapping; +import org.springframework.web.bind.annotation.RequestBody; +import org.springframework.web.bind.annotation.RequestMapping; +import org.springframework.web.bind.annotation.RestController; import springfox.documentation.annotations.ApiIgnore; +import java.util.*; +import java.util.stream.Collectors; + /** * @Title: Controller @@ -71,6 +61,9 @@ public class CostSubjectController { @Autowired private ICompanyService companyService; + @Lazy + @Autowired + private ICostBudgetService costBudgetService; /** * 分页列表查询 @@ -124,7 +117,7 @@ public class CostSubjectController { ProjectInfoExtVo projectInfoBySn = projectService.getProjectInfoBySn(projectSn); Company company = companyService.getOne(Wrappers.lambdaQuery().eq(Company::getCompanySn, projectInfoBySn.getCompanySn())); List list = costSubjectService.list(Wrappers.lambdaQuery() - .eq(CostSubject::getCompanySn, company.getHeadquartersSn()) + .eq(CostSubject::getSn, company.getHeadquartersSn()) .eq(CostSubject::getType, projectInfoBySn.getProjectLx())); for (CostSubject subject : list) { long count = list.stream().filter(l -> l.getParentId().toString().equals(subject.getId().toString())).count(); @@ -135,35 +128,6 @@ public class CostSubjectController { return Result.success(lastNodeList); } - /** - * 列表查询 - * - * @param map - * @return - */ - @OperLog(operModul = "成本科目管理", operType = "列表查询", operDesc = "列表查询成本科目信息") - @ApiOperation(value = " 列表查询成本科目信息", notes = "列表查询成本科目信息", httpMethod = "POST") - @ApiImplicitParams({ - @ApiImplicitParam(name = "pageNo", value = "页数", paramType = "body", required = true, defaultValue = "1", dataType = "Integer"), - @ApiImplicitParam(name = "pageSize", value = "每页条数", paramType = "body", required = true, defaultValue = "10", dataType = "Integer"), - @ApiImplicitParam(name = "projectSn", value = "项目SN", paramType = "body", dataType = "String"), - @ApiImplicitParam(name = "companySn", value = "企业SN", paramType = "body", dataType = "String") - }) - @PostMapping(value = "/tree") - public Result> tree(@ApiIgnore @RequestBody Map map) { - String projectSn = MapUtils.getString(map, "projectSn"); - if (StringUtils.isNotBlank(projectSn)) { - ProjectInfoExtVo projectInfoBySn = projectService.getProjectInfoBySn(projectSn); - Company company = companyService.getOne(Wrappers.lambdaQuery().eq(Company::getCompanySn, projectInfoBySn.getCompanySn())); - map.put("companySn", company.getHeadquartersSn()); - map.put("type", projectInfoBySn.getProjectLx()); - } - Page page = PageUtil.getPage(map); - QueryWrapper queryWrapper = QueryGenerator.initPageQueryWrapper(CostSubject.class, map); - Page list = costSubjectService.tree(page, queryWrapper); - return Result.success(list); - } - // /** // * 列表查询 // * @@ -192,6 +156,34 @@ public class CostSubjectController { // return Result.success(list); // } + /** + * 列表查询 + * + * @param map + * @return + */ + @OperLog(operModul = "成本科目管理", operType = "列表查询", operDesc = "列表查询成本科目信息") + @ApiOperation(value = " 列表查询成本科目信息", notes = "列表查询成本科目信息", httpMethod = "POST") + @ApiImplicitParams({ + @ApiImplicitParam(name = "pageNo", value = "页数", paramType = "body", required = true, defaultValue = "1", dataType = "Integer"), + @ApiImplicitParam(name = "pageSize", value = "每页条数", paramType = "body", required = true, defaultValue = "10", dataType = "Integer"), + @ApiImplicitParam(name = "projectSn", value = "项目SN", paramType = "body", dataType = "String"), + @ApiImplicitParam(name = "companySn", value = "企业SN", paramType = "body", dataType = "String") + }) + @PostMapping(value = "/tree") + public Result> tree(@ApiIgnore @RequestBody Map map) { + String projectSn = MapUtils.getString(map, "projectSn"); + if (StringUtils.isNotBlank(projectSn)) { + ProjectInfoExtVo projectInfoBySn = projectService.getProjectInfoBySn(projectSn); + Company company = companyService.getOne(Wrappers.lambdaQuery().eq(Company::getCompanySn, projectInfoBySn.getCompanySn())); + map.put("companySn", company.getHeadquartersSn()); +// map.put("type", projectInfoBySn.getProjectLx()); + } + Page page = PageUtil.getPage(map); + QueryWrapper queryWrapper = QueryGenerator.initPageQueryWrapper(CostSubject.class, map); + Page list = costSubjectService.tree(page, queryWrapper); + return Result.success(list); + } /** * 添加 @@ -278,4 +270,70 @@ public class CostSubjectController { } return result; } + + @OperLog(operModul = "成本科目管理", operType = "", operDesc = "引入成本科目信息") + @ApiOperation(value = "引入成本科目信息", notes = "引入成本科目信息", httpMethod = "POST") + @ApiImplicitParams({ + @ApiImplicitParam(name = "sn", value = "企业SN或项目SN", paramType = "body", required = true, dataType = "String"), + @ApiImplicitParam(name = "toLevelType", value = "引入到级别类型:2:公司控制科目;3:项目控制科目;", paramType = "body", required = true, dataType = "Integer"), + }) + @PostMapping(value = "/introduceCostSubject") + public Result introduceCostSubject(@RequestBody Map param) { + Integer toLevelType = MapUtils.getInteger(param, "toLevelType"); + String sn = MapUtils.getString(param, "sn"); + List exists = costSubjectService.list(new LambdaQueryWrapper().eq(CostSubject::getSn, sn)); + Set existCodes = exists.stream().map(CostSubject::getCode).collect(Collectors.toSet()); + List subjectIds = exists.stream().map(CostSubject::getId).collect(Collectors.toList()); + Set useCodes = new HashSet<>(); + if (CollUtil.isNotEmpty(subjectIds)) { + List useIds = costBudgetService.list(new LambdaQueryWrapper().in(CostBudget::getSubjectId, subjectIds)).stream().map(CostBudget::getSubjectId).collect(Collectors.toList()); + useCodes = exists.stream().filter(costSubject -> useIds.contains(costSubject.getId())).map(CostSubject::getCode).collect(Collectors.toSet()); + } + List list; + if (Objects.equals(toLevelType, 2)) { + list = costSubjectService.list(new LambdaQueryWrapper().eq(CostSubject::getLevelType, 1)); + } else { + ProjectInfoExtVo project = projectService.getProjectInfoBySn(sn); + list = costSubjectService.list(new LambdaQueryWrapper().eq(CostSubject::getLevelType, 2).eq(CostSubject::getSn, project.getCompanySn())); + } + List topList = list.stream().filter(costSubject -> Objects.equals(costSubject.getParentId(), 0L)).collect(Collectors.toList()); + for (CostSubject costSubject : topList) { + addCostSubject(costSubject, list, sn, 0L, toLevelType, existCodes, useCodes); + } + return Result.ok(); + } + + private void addCostSubject(CostSubject costSubject, List list, String sn, Long parentId, Integer toLevelType, Set existCodes, Set useCodes) { + List childList = list.stream().filter(subject -> Objects.equals(subject.getParentId(), costSubject.getId())).collect(Collectors.toList()); + CostSubject costSubject1 = JSON.parseObject(JSON.toJSONString(costSubject), CostSubject.class); + costSubject1.setId(null); +// costSubject1.setType(0); + costSubject1.setSn(sn); +// costSubject1.setLevel(0); +// costSubject1.setName(""); +// costSubject1.setCode(""); + costSubject1.setParentId(parentId); +// costSubject1.setAncestors(""); +// costSubject1.setCreateBy(SecurityUtils.getUser().getUserId().toString()); +// costSubject1.setCreateTime(new Date()); +// costSubject1.setUpdateBy(""); +// costSubject1.setUpdateTime(new Date()); + costSubject1.setLevelType(toLevelType); +// costSubject1.setChildren(Lists.newArrayList()); + if (!useCodes.contains(costSubject1.getCode())) { + if (existCodes.contains(costSubject1.getCode())) { + UserInfo user = SecurityUtils.getUser(); + costSubjectService.update(new LambdaUpdateWrapper().set(CostSubject::getCreateBy, user.getUserId().toString()) + .set(CostSubject::getUpdateTime, new Date()).eq(CostSubject::getSn, sn).eq(CostSubject::getCode, costSubject1.getCode())); + } else { + costSubjectService.saveInfo(costSubject1); + } + } + if (CollUtil.isNotEmpty(childList)) { + for (CostSubject subject : childList) { + addCostSubject(subject, list, sn, costSubject1.getId(), toLevelType, existCodes, useCodes); + } + } + } + } diff --git a/src/main/java/com/zhgd/xmgl/modules/cost/entity/CostSubject.java b/src/main/java/com/zhgd/xmgl/modules/cost/entity/CostSubject.java index aaaa9f36b..30a10d42c 100644 --- a/src/main/java/com/zhgd/xmgl/modules/cost/entity/CostSubject.java +++ b/src/main/java/com/zhgd/xmgl/modules/cost/entity/CostSubject.java @@ -9,8 +9,6 @@ import com.baomidou.mybatisplus.annotation.TableField; import com.baomidou.mybatisplus.annotation.TableId; import com.baomidou.mybatisplus.annotation.TableName; import lombok.Data; -import com.fasterxml.jackson.annotation.JsonFormat; -import org.springframework.format.annotation.DateTimeFormat; import org.jeecgframework.poi.excel.annotation.Excel; import io.swagger.annotations.ApiModel; import io.swagger.annotations.ApiModelProperty; @@ -39,10 +37,10 @@ public class CostSubject implements Serializable { @ApiModelProperty(value = "科目类型(字典数据)") private Integer type; /** - * 企业SN + * 企业SN或项目SN */ - @ApiModelProperty(value = "企业SN") - private String companySn; + @ApiModelProperty(value = "企业SN或项目SN") + private String sn; /** * 级别层次 */ @@ -90,6 +88,11 @@ public class CostSubject implements Serializable { */ @ApiModelProperty(value = "最后操作时间") private Date updateTime; + /** + * 级别类型:1:集团标准控制科目;2:公司控制科目;3:项目控制科目; + */ + @ApiModelProperty(value = "级别类型:1:集团标准控制科目;2:公司控制科目;3:项目控制科目;") + private Integer levelType; @TableField(exist = false) @ApiModelProperty(value = "子级科目信息") diff --git a/src/main/java/com/zhgd/xmgl/modules/cost/service/ICostBudgetService.java b/src/main/java/com/zhgd/xmgl/modules/cost/service/ICostBudgetService.java index d56b6dcbe..bfc29cf85 100644 --- a/src/main/java/com/zhgd/xmgl/modules/cost/service/ICostBudgetService.java +++ b/src/main/java/com/zhgd/xmgl/modules/cost/service/ICostBudgetService.java @@ -18,7 +18,7 @@ import java.util.List; */ public interface ICostBudgetService extends IService { - List tree(QueryWrapper wrapper, ProjectInfoExtVo projectInfoBySn); + List tree(QueryWrapper wrapper, String projectSn); List exportList(QueryWrapper wrapper, ProjectInfoExtVo projectInfoBySn, boolean flag); diff --git a/src/main/java/com/zhgd/xmgl/modules/cost/service/impl/CostBudgetServiceImpl.java b/src/main/java/com/zhgd/xmgl/modules/cost/service/impl/CostBudgetServiceImpl.java index 5d2157470..b01467299 100644 --- a/src/main/java/com/zhgd/xmgl/modules/cost/service/impl/CostBudgetServiceImpl.java +++ b/src/main/java/com/zhgd/xmgl/modules/cost/service/impl/CostBudgetServiceImpl.java @@ -4,7 +4,6 @@ import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper; import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper; import com.baomidou.mybatisplus.core.toolkit.StringUtils; import com.baomidou.mybatisplus.core.toolkit.Wrappers; -import com.baomidou.mybatisplus.extension.plugins.pagination.Page; import com.zhgd.xmgl.modules.cost.dto.CostBudgetDto; import com.zhgd.xmgl.modules.cost.entity.CostBudget; import com.zhgd.xmgl.modules.cost.entity.CostContract; @@ -16,7 +15,6 @@ import com.zhgd.xmgl.modules.cost.service.ICostContractPayService; import com.zhgd.xmgl.modules.cost.service.ICostContractService; import com.zhgd.xmgl.modules.cost.service.ICostSubjectService; import com.zhgd.xmgl.modules.project.entity.vo.ProjectInfoExtVo; -import org.springframework.beans.BeanUtils; import org.springframework.beans.factory.annotation.Autowired; import org.springframework.stereotype.Service; @@ -47,7 +45,7 @@ public class CostBudgetServiceImpl extends ServiceImpl tree(QueryWrapper wrapper, ProjectInfoExtVo projectInfoBySn) { + public List tree(QueryWrapper wrapper, String projectSn) { wrapper.lambda().eq(CostSubject::getParentId, 0); List list = costSubjectService.list(wrapper); List filter = list.stream().filter(l -> StringUtils.isNotBlank(l.getName())).collect(Collectors.toList()); @@ -58,9 +56,9 @@ public class CostBudgetServiceImpl extends ServiceImpl allList = costSubjectService.list(); List allDtoList = convert(allList); List budgetList = this.list(Wrappers.lambdaQuery() - .eq(CostBudget::getProjectSn, projectInfoBySn.getProjectSn())); + .eq(CostBudget::getProjectSn, projectSn)); List contractList = costContractService.list(Wrappers.lambdaQuery() - .eq(CostContract::getProjectSn, projectInfoBySn.getProjectSn())); + .eq(CostContract::getProjectSn, projectSn)); List costContractPayList = new ArrayList<>(); if (contractList.size() > 0) { costContractPayList = costContractPayService.list(Wrappers.lambdaQuery()