From 9020f41cb1c145d69931d103c61e22c7a2e2cfae Mon Sep 17 00:00:00 2001 From: xiaqihang <xiaqihang@seaskysh.com> Date: Thu, 27 Jan 2022 17:29:11 +0800 Subject: [PATCH] =?UTF-8?q?=E5=88=86=E9=A1=B5=E6=9F=A5=E8=AF=A2=E9=9C=80?= =?UTF-8?q?=E8=A6=81=E7=99=BB=E5=BD=95=E4=BA=BA=E5=AE=A1=E6=A0=B8=E7=9A=84?= =?UTF-8?q?=E7=BC=96=E5=88=B6=E4=B9=A6=E6=8E=A5=E5=8F=A3=EF=BC=8C=E6=A0=B9?= =?UTF-8?q?=E6=8D=AE=E6=B5=81=E7=A8=8B=E7=8A=B6=E6=80=81=E8=B0=83=E7=94=A8?= =?UTF-8?q?flow=20=E7=9A=84feign=E6=8E=A5=E5=8F=A3=EF=BC=8Csql=E6=9F=A5?= =?UTF-8?q?=E8=AF=A2=E6=B7=BB=E5=8A=A0=E6=9D=A1=E4=BB=B6=EF=BC=8CprocessId?= =?UTF-8?q?=E8=A6=81=E6=A0=B9=E6=8D=AEfeign=E6=8E=A5=E5=8F=A3=E8=BF=94?= =?UTF-8?q?=E5=9B=9E=E7=9A=84list=E7=9A=84id=E9=9B=86=E5=90=88=E5=88=A4?= =?UTF-8?q?=E6=96=AD=E6=98=AF=E5=90=A6=E5=8C=85=E5=90=AB?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../dto/qry/ProjectPlanByAuditorQry.java | 6 +++++ .../db/mapper/xml/ProjectPlanMapper.xml | 6 +++++ .../projectPlan/ProjectPlanQuerySvrImpl.java | 23 +++++++++++++++++++ 3 files changed, 35 insertions(+) diff --git a/ServiceSite/facade/src/main/java/com/seasky/dbprojectplanmanage/dto/qry/ProjectPlanByAuditorQry.java b/ServiceSite/facade/src/main/java/com/seasky/dbprojectplanmanage/dto/qry/ProjectPlanByAuditorQry.java index 81a3023..72c1f5c 100644 --- a/ServiceSite/facade/src/main/java/com/seasky/dbprojectplanmanage/dto/qry/ProjectPlanByAuditorQry.java +++ b/ServiceSite/facade/src/main/java/com/seasky/dbprojectplanmanage/dto/qry/ProjectPlanByAuditorQry.java @@ -7,6 +7,7 @@ import lombok.Data; import lombok.NoArgsConstructor; import javax.validation.constraints.NotNull; +import java.util.List; /** * @Author wangxingjun @@ -49,4 +50,9 @@ public class ProjectPlanByAuditorQry extends BaseDto { example = "10" ) private Integer pageSize; + + /** + * processId 闆嗗悎 + */ + List<String> processIdsList; } diff --git a/ServiceSite/src/main/java/com/seasky/dbprojectplanmanage/infrastructure/db/mapper/xml/ProjectPlanMapper.xml b/ServiceSite/src/main/java/com/seasky/dbprojectplanmanage/infrastructure/db/mapper/xml/ProjectPlanMapper.xml index 17b7af7..b6623e1 100644 --- a/ServiceSite/src/main/java/com/seasky/dbprojectplanmanage/infrastructure/db/mapper/xml/ProjectPlanMapper.xml +++ b/ServiceSite/src/main/java/com/seasky/dbprojectplanmanage/infrastructure/db/mapper/xml/ProjectPlanMapper.xml @@ -62,6 +62,12 @@ <if test="pm.flowState != null and pm.flowState != ''"> and flowState = #{pm.flowState} </if> + <if test="pm.processIdsList == null"> + and processId in + <foreach collection="pm.processIdsList" item="item" index="index" open="(" close=")" separator=","> + #{item} + </foreach> + </if> </where> </select> </mapper> \ No newline at end of file diff --git a/ServiceSite/src/main/java/com/seasky/dbprojectplanmanage/infrastructure/reader/projectPlan/ProjectPlanQuerySvrImpl.java b/ServiceSite/src/main/java/com/seasky/dbprojectplanmanage/infrastructure/reader/projectPlan/ProjectPlanQuerySvrImpl.java index 371d576..718379f 100644 --- a/ServiceSite/src/main/java/com/seasky/dbprojectplanmanage/infrastructure/reader/projectPlan/ProjectPlanQuerySvrImpl.java +++ b/ServiceSite/src/main/java/com/seasky/dbprojectplanmanage/infrastructure/reader/projectPlan/ProjectPlanQuerySvrImpl.java @@ -4,6 +4,7 @@ import com.baomidou.mybatisplus.extension.plugins.pagination.Page; import com.seasky.core.common.Error; import com.seasky.core.common.Pagination; import com.seasky.core.common.ResponseCode; +import com.seasky.core.common.Result; import com.seasky.core.ddd.utils.MapperUtils; import com.seasky.core.exception.DataAccessException; import com.seasky.dbprojectplanmanage.application.query.projectPlan.ProjectPlanQuerySvr; @@ -16,11 +17,16 @@ import com.seasky.dbprojectplanmanage.dto.qry.ProjectPlanQry; import com.seasky.dbprojectplanmanage.infrastructure.dataobject.po.ProjectPlanPo; import com.seasky.dbprojectplanmanage.infrastructure.db.mapper.table.ProjectPlanMapper; import com.seasky.dbprojectplanmanage.infrastructure.rpc.FlowRpc; +import com.seasky.microflowapi.api.IFlow; import com.seasky.microflowapi.dto.FlowCanShowOut; +import com.seasky.microflowapi.dto.ProcessInfoOut; import org.springframework.beans.factory.annotation.Autowired; import org.springframework.stereotype.Service; +import javax.annotation.Resource; +import java.util.ArrayList; import java.util.List; +import java.util.stream.Collectors; /** * @Author wangxingjun @@ -33,6 +39,8 @@ public class ProjectPlanQuerySvrImpl implements ProjectPlanQuerySvr { ProjectPlanMapper projectPlanMapper; @Autowired FlowRpc flowRpc; + @Resource + IFlow flow; /** @@ -92,6 +100,21 @@ public class ProjectPlanQuerySvrImpl implements ProjectPlanQuerySvr { */ @Override public Pagination<ProjectPlanOut> queryProjectPlanByAuditorPage(ProjectPlanByAuditorQry projectPlanByAuditorQry) { + List<ProcessInfoOut> data = new ArrayList<>(); + if ("0".equals(projectPlanByAuditorQry.getFlowType())){ + //浠e姙 + data = flow.getProcessAllByUserId().getData(); + }else if ("1".equals(projectPlanByAuditorQry.getFlowType())){ + //宸插姙 + data = flow.getDoneAllByUserId().getData(); + }else{ + throw new DataAccessException(new Error(ResponseCode.DATA_ACCESS_NOT_FOUND, null, "娴佺▼绫诲瀷鍙傛暟鍑洪敊", "")); + } + if (data.size() == 0){ + throw new DataAccessException(new Error(ResponseCode.DATA_ACCESS_NOT_FOUND, null, "鏌ヨ涓嶅埌鐩稿叧娴佺▼", "")); + } + List<String> ids = data.stream().map(ProcessInfoOut::getId).collect(Collectors.toList()); + projectPlanByAuditorQry.setProcessIdsList(ids); Page<ProjectPlanOut> page = new Page<>(projectPlanByAuditorQry.getPageIndex(), projectPlanByAuditorQry.getPageSize()); List<ProjectPlanOut> records = ProjectPlanQueryConvert.poToOut(projectPlanMapper.queryProjectPlanByAuditorPage(page,projectPlanByAuditorQry).getRecords()); page.setRecords(records); -- GitLab