From d83ab39c898053b707cfc8601e2e0bc7a08a9712 Mon Sep 17 00:00:00 2001 From: zhouquanseaskyshcom <zhouquan@seaskysh.com> Date: Fri, 5 Aug 2022 16:02:16 +0800 Subject: [PATCH] =?UTF-8?q?=E6=B7=BB=E5=8A=A0=E6=8E=A5=E5=8F=A3=20?= =?UTF-8?q?=E4=BF=AE=E6=94=B9=E6=8E=A5=E5=8F=A3?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../seasky/projectplan/api/IProjectPlan.java | 9 ++++++ .../projectplan/ProjectPlanBookGuiKouOut.java | 28 +++++++++++++++++++ .../projectplan/ProjectPlanQueryService.java | 8 ++++++ .../db/mapper/xml/ProjectPlanBookMapper.xml | 3 ++ .../ProjectPlanQueryServiceImpl.java | 19 +++++++++++++ .../controller/ProjectPlanController.java | 7 +++++ 6 files changed, 74 insertions(+) create mode 100644 ServiceSite/facade/src/main/java/com/seasky/projectplan/dto/projectplan/ProjectPlanBookGuiKouOut.java diff --git a/ServiceSite/facade/src/main/java/com/seasky/projectplan/api/IProjectPlan.java b/ServiceSite/facade/src/main/java/com/seasky/projectplan/api/IProjectPlan.java index da45b14dc..39888073f 100644 --- a/ServiceSite/facade/src/main/java/com/seasky/projectplan/api/IProjectPlan.java +++ b/ServiceSite/facade/src/main/java/com/seasky/projectplan/api/IProjectPlan.java @@ -27,6 +27,15 @@ import java.util.List; @RequestMapping("projectPlan") public interface IProjectPlan { + /** + * 鏌ヨ褰掑彛閮ㄩ棬锛堝姩鎬侊級 + * + * @param projectInfoPlanQry 椤圭洰淇℃伅璁″垝qry + * @return {@link Result}<{@link ProjectPlanBookOut}> + */ + @PostMapping(path = "/queryGuiKouDepartment") + Result<ProjectPlanBookGuiKouOut> queryGuiKouDepartment(ProjectInfoPlanQry projectInfoPlanQry); + /** * 璇ュ鏍$敵鎶ヤ功鏄惁鏈夊鍏ュ姛鑳� diff --git a/ServiceSite/facade/src/main/java/com/seasky/projectplan/dto/projectplan/ProjectPlanBookGuiKouOut.java b/ServiceSite/facade/src/main/java/com/seasky/projectplan/dto/projectplan/ProjectPlanBookGuiKouOut.java new file mode 100644 index 000000000..9a56490f2 --- /dev/null +++ b/ServiceSite/facade/src/main/java/com/seasky/projectplan/dto/projectplan/ProjectPlanBookGuiKouOut.java @@ -0,0 +1,28 @@ +package com.seasky.projectplan.dto.projectplan; + +import com.fasterxml.jackson.annotation.JsonInclude; +import io.swagger.annotations.ApiModelProperty; +import lombok.AllArgsConstructor; +import lombok.Data; +import lombok.NoArgsConstructor; + +import java.io.Serializable; + +/** + * @author 灏忓懆(喔� 鈥� 虁 _ 鈥� 虂)喔� + * @Data 2022/8/5 14:49 + */ + +@Data +@NoArgsConstructor +@AllArgsConstructor +@JsonInclude(JsonInclude.Include.ALWAYS) +public class ProjectPlanBookGuiKouOut implements Serializable { + + @ApiModelProperty(value = "椤圭洰绫诲瀷id",example = "") + private Long projectTypeId; + + @ApiModelProperty(value = "椤圭洰绫诲瀷") + private String projectType; + +} diff --git a/ServiceSite/src/main/java/com/seasky/projectplan/application/query/projectplan/ProjectPlanQueryService.java b/ServiceSite/src/main/java/com/seasky/projectplan/application/query/projectplan/ProjectPlanQueryService.java index 38139a9b6..6b39bca22 100644 --- a/ServiceSite/src/main/java/com/seasky/projectplan/application/query/projectplan/ProjectPlanQueryService.java +++ b/ServiceSite/src/main/java/com/seasky/projectplan/application/query/projectplan/ProjectPlanQueryService.java @@ -351,4 +351,12 @@ public interface ProjectPlanQueryService extends BaseService<ProjectPlanBookPo> * @return {@link PersonInfoOut} */ PersonInfoOut getPersonInfo(); + + /** + * 鏌ヨ褰掑彛閮ㄩ棬锛堝姩鎬侊級 + * + * @param projectInfoPlanQry 椤圭洰淇℃伅璁″垝qry + * @return {@link Result}<{@link ProjectPlanBookOut}> + */ + List<ProjectPlanBookGuiKouOut> queryGuiKouDepartment(ProjectInfoPlanQry projectInfoPlanQry); } diff --git a/ServiceSite/src/main/java/com/seasky/projectplan/infrastructure/db/mapper/xml/ProjectPlanBookMapper.xml b/ServiceSite/src/main/java/com/seasky/projectplan/infrastructure/db/mapper/xml/ProjectPlanBookMapper.xml index e79fd7783..048868465 100644 --- a/ServiceSite/src/main/java/com/seasky/projectplan/infrastructure/db/mapper/xml/ProjectPlanBookMapper.xml +++ b/ServiceSite/src/main/java/com/seasky/projectplan/infrastructure/db/mapper/xml/ProjectPlanBookMapper.xml @@ -944,6 +944,9 @@ <if test="pm.projectType != null and pm.projectType != '' "> and a.project_type = #{pm.projectType} </if> + <if test="pm.projectType != null "> + and a.project_type_id = #{pm.projectTypeId} + </if> <if test="pm.projectTypeList != null and pm.projectTypeList.size() > 0"> and a.project_type in <foreach collection="pm.projectTypeList" item="projectType" separator="," open="(" close=")"> diff --git a/ServiceSite/src/main/java/com/seasky/projectplan/infrastructure/reader/projectplan/ProjectPlanQueryServiceImpl.java b/ServiceSite/src/main/java/com/seasky/projectplan/infrastructure/reader/projectplan/ProjectPlanQueryServiceImpl.java index 3c4529c28..f1fe61e12 100644 --- a/ServiceSite/src/main/java/com/seasky/projectplan/infrastructure/reader/projectplan/ProjectPlanQueryServiceImpl.java +++ b/ServiceSite/src/main/java/com/seasky/projectplan/infrastructure/reader/projectplan/ProjectPlanQueryServiceImpl.java @@ -46,6 +46,8 @@ import com.seasky.projectplan.infrastructure.db.mapper.table.*; import com.seasky.projectplan.infrastructure.reader.attachment.AttachmentQueryConvert; import com.seasky.projectplan.infrastructure.reader.budgetinfo.BudgetInfoConvert; import com.seasky.projectplan.infrastructure.rpc.FlowRpc; +import com.seasky.projectplan.infrastructure.util.BaseDataUtil; +import com.seasky.projectplan.infrastructure.util.StreamUtils; import dm.jdbc.util.StringUtil; import org.apache.commons.io.IOUtils; import org.apache.ibatis.jdbc.Null; @@ -2099,6 +2101,23 @@ public class ProjectPlanQueryServiceImpl extends AbstractService<ProjectPlanBook } } + @Override + public List<ProjectPlanBookGuiKouOut> queryGuiKouDepartment(ProjectInfoPlanQry projectInfoPlanQry) { + //鑾峰彇褰撳墠鐧诲綍浜虹殑閮ㄩ棬淇℃伅 + List<String> codeList = BaseDataUtil.makeCurrentUserDeptCodeList(); + QueryWrapper<ProjectPlanBookPo> bookPoQueryWrapper = new QueryWrapper<>(); + bookPoQueryWrapper.in("department_code",codeList) + .eq("year",projectInfoPlanQry.getYear()) + .eq("plan_type",projectInfoPlanQry.getPlanType()) + .eq("available","YES"); + List<ProjectPlanBookPo> projectPlanBookPos = projectPlanBookMapper.selectList(bookPoQueryWrapper); + if (ObjectUtils.isEmpty(projectPlanBookPos)){ + throw ExceptionUtil.getException(null,"褰撳墠鐧诲綍浜烘病鏈夊搴旂殑褰掑彛閮ㄩ棬"); + } + List<ProjectPlanBookGuiKouOut> projectPlanBookGuiKouOuts = MapperUtils.INSTANCE.mapAsList(ProjectPlanBookGuiKouOut.class, projectPlanBookPos); + return projectPlanBookGuiKouOuts.stream().distinct().collect(Collectors.toList()); + } + /** * 寰楀埌浠g爜鍒楄〃 * diff --git a/ServiceSite/src/main/java/com/seasky/projectplan/interfaces/controller/ProjectPlanController.java b/ServiceSite/src/main/java/com/seasky/projectplan/interfaces/controller/ProjectPlanController.java index d6c7d0196..8e809d7c1 100644 --- a/ServiceSite/src/main/java/com/seasky/projectplan/interfaces/controller/ProjectPlanController.java +++ b/ServiceSite/src/main/java/com/seasky/projectplan/interfaces/controller/ProjectPlanController.java @@ -10,6 +10,7 @@ import com.seasky.projectplan.dto.projectlibrary.ProjectLibraryOut; import com.seasky.projectplan.dto.projectlibrary.ProjectLibraryQry; import com.seasky.projectplan.dto.projectplan.*; import io.swagger.annotations.Api; +import io.swagger.annotations.ApiModelProperty; import io.swagger.annotations.ApiOperation; import org.springframework.beans.factory.annotation.Value; import org.springframework.web.bind.annotation.RequestBody; @@ -43,6 +44,12 @@ public class ProjectPlanController extends BaseController implements IProjectPla @Value("${import.enable}") private Boolean enableImport; + @ApiOperation("鏌ヨ褰掑彛閮ㄩ棬锛堝姩鎬侊級") + @Override + public Result<ProjectPlanBookGuiKouOut> queryGuiKouDepartment(@RequestBody ProjectInfoPlanQry projectInfoPlanQry) { + return ok(ResponseCode.SUCCESS,queryService.queryGuiKouDepartment(projectInfoPlanQry)); + } + @ApiOperation("璇ュ鏍$敵鎶ヤ功鏄惁鏈夊鍏ュ姛鑳�") @Override public Result<Boolean> enableImport() { -- GitLab