From e34c41ec63560ff2963f5b170f5273df86afc44e Mon Sep 17 00:00:00 2001 From: dimengzhe <251008545@qq.com> Date: Tue, 7 Mar 2023 13:55:34 +0800 Subject: [PATCH] =?UTF-8?q?=E7=A7=BB=E5=8A=A8=E7=AB=AF=E5=88=86=E4=BA=AB?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../yxt/anrui/terminal/api/app/AppFeign.java | 13 ++++- .../terminal/api/app/ShareMessageQuery.java | 36 ++++++++++++ .../yxt/anrui/terminal/biz/app/AppRest.java | 16 ++++-- .../anrui/terminal/biz/app/AppService.java | 56 ++++++++++++------- 4 files changed, 92 insertions(+), 29 deletions(-) create mode 100644 anrui-terminal/anrui-terminal-api/src/main/java/com/yxt/anrui/terminal/api/app/ShareMessageQuery.java diff --git a/anrui-terminal/anrui-terminal-api/src/main/java/com/yxt/anrui/terminal/api/app/AppFeign.java b/anrui-terminal/anrui-terminal-api/src/main/java/com/yxt/anrui/terminal/api/app/AppFeign.java index bb9fdc93fa..09311a7bae 100644 --- a/anrui-terminal/anrui-terminal-api/src/main/java/com/yxt/anrui/terminal/api/app/AppFeign.java +++ b/anrui-terminal/anrui-terminal-api/src/main/java/com/yxt/anrui/terminal/api/app/AppFeign.java @@ -1,6 +1,9 @@ package com.yxt.anrui.terminal.api.app; -import com.yxt.anrui.terminal.api.app.flowable.*; +import com.yxt.anrui.terminal.api.app.flowable.AppFlowableRecordAndCommentVo; +import com.yxt.anrui.terminal.api.app.flowable.AppFlowableRecordQuery; +import com.yxt.anrui.terminal.api.app.flowable.AppFlowableRecordVo; +import com.yxt.anrui.terminal.api.app.flowable.ProcessComment; import com.yxt.common.core.result.ResultBean; import io.swagger.annotations.Api; import io.swagger.annotations.ApiOperation; @@ -12,7 +15,6 @@ import org.springframework.web.bind.annotation.ResponseBody; import javax.validation.Valid; import java.util.List; -import java.util.Map; /** * @Author dimengzhe @@ -40,5 +42,10 @@ public interface AppFeign { @ApiOperation("新增评论") @PostMapping("/addProgressComment") @ResponseBody - ResultBean addProgressComment(@RequestBody @Valid ProcessComment processComment); + ResultBean addProgressComment(@RequestBody @Valid ProcessComment processComment); + + @ApiOperation("分享") + @PostMapping("/addProgressComment") + @ResponseBody + ResultBean shareMessage(@Valid @RequestBody ShareMessageQuery shareMessageQuery); } diff --git a/anrui-terminal/anrui-terminal-api/src/main/java/com/yxt/anrui/terminal/api/app/ShareMessageQuery.java b/anrui-terminal/anrui-terminal-api/src/main/java/com/yxt/anrui/terminal/api/app/ShareMessageQuery.java new file mode 100644 index 0000000000..7801312455 --- /dev/null +++ b/anrui-terminal/anrui-terminal-api/src/main/java/com/yxt/anrui/terminal/api/app/ShareMessageQuery.java @@ -0,0 +1,36 @@ +package com.yxt.anrui.terminal.api.app; + +import com.yxt.common.core.query.Query; +import io.swagger.annotations.ApiModelProperty; +import lombok.Data; + +import javax.validation.constraints.NotBlank; +import java.util.ArrayList; +import java.util.List; + +/** + * @Author dimengzhe + * @Date 2023/3/7 13:49 + * @Description + */ +@Data +public class ShareMessageQuery implements Query { + private static final long serialVersionUID = 7606857713785882692L; + @NotBlank(message = "参数错误:taskId") + private String taskId; + @NotBlank(message = "taskDefKey") + private String taskDefKey; + @NotBlank(message = "procInsId") + private String procInsId; + @NotBlank(message = "procDefId") + private String procDefId; + + @ApiModelProperty("人员") + private List members = new ArrayList<>(); + @ApiModelProperty("部门") + private List groups = new ArrayList<>(); + @NotBlank(message = "参数错误:userSid") + private String userSid; + @NotBlank(message = "参数错误:businessSid") + private String businessSid; +} diff --git a/anrui-terminal/anrui-terminal-biz/src/main/java/com/yxt/anrui/terminal/biz/app/AppRest.java b/anrui-terminal/anrui-terminal-biz/src/main/java/com/yxt/anrui/terminal/biz/app/AppRest.java index 38b3d24cd2..eb1d513dc7 100644 --- a/anrui-terminal/anrui-terminal-biz/src/main/java/com/yxt/anrui/terminal/biz/app/AppRest.java +++ b/anrui-terminal/anrui-terminal-biz/src/main/java/com/yxt/anrui/terminal/biz/app/AppRest.java @@ -3,16 +3,17 @@ package com.yxt.anrui.terminal.biz.app; import com.yxt.anrui.portal.api.sysuser.SysUserFeign; import com.yxt.anrui.portal.api.sysuser.SysUserVo; import com.yxt.anrui.terminal.api.app.AppFeign; -import com.yxt.anrui.terminal.api.app.flowable.*; +import com.yxt.anrui.terminal.api.app.ShareMessageQuery; +import com.yxt.anrui.terminal.api.app.flowable.AppFlowableRecordAndCommentVo; +import com.yxt.anrui.terminal.api.app.flowable.AppFlowableRecordQuery; +import com.yxt.anrui.terminal.api.app.flowable.AppFlowableRecordVo; +import com.yxt.anrui.terminal.api.app.flowable.ProcessComment; import com.yxt.common.core.result.ResultBean; import org.springframework.beans.factory.annotation.Autowired; import org.springframework.stereotype.Controller; import org.springframework.web.bind.annotation.RequestMapping; -import java.text.ParseException; -import java.text.SimpleDateFormat; -import java.util.*; -import java.util.stream.Collectors; +import java.util.List; /** * @Author dimengzhe @@ -54,4 +55,9 @@ public class AppRest implements AppFeign { processComment.setReviewer(sysUserVoResultBean.getData().getName()); return appService.addProgressComment(processComment); } + + @Override + public ResultBean shareMessage(ShareMessageQuery shareMessageQuery) { + return appService.shareMessage(shareMessageQuery); + } } diff --git a/anrui-terminal/anrui-terminal-biz/src/main/java/com/yxt/anrui/terminal/biz/app/AppService.java b/anrui-terminal/anrui-terminal-biz/src/main/java/com/yxt/anrui/terminal/biz/app/AppService.java index c687838860..21ed76581e 100644 --- a/anrui-terminal/anrui-terminal-biz/src/main/java/com/yxt/anrui/terminal/biz/app/AppService.java +++ b/anrui-terminal/anrui-terminal-biz/src/main/java/com/yxt/anrui/terminal/biz/app/AppService.java @@ -2,11 +2,14 @@ package com.yxt.anrui.terminal.biz.app; import cn.hutool.core.bean.BeanUtil; import com.alibaba.fastjson.JSON; +import com.yxt.anrui.flowable.api.flow.FlowableFeign; +import com.yxt.anrui.flowable.api.flow.FlowableShareQuery; import com.yxt.anrui.flowable.api.flowcomment.FlowComment; import com.yxt.anrui.flowable.api.flowtask.FlowRecordVo; import com.yxt.anrui.flowable.api.flowtask.FlowTaskFeign; import com.yxt.anrui.flowable.api.processcomment.ProcessCommentDto; import com.yxt.anrui.flowable.api.processcomment.ProcessCommentFeign; +import com.yxt.anrui.terminal.api.app.ShareMessageQuery; import com.yxt.anrui.terminal.api.app.flowable.*; import com.yxt.common.base.utils.StringUtils; import com.yxt.common.core.result.ResultBean; @@ -29,6 +32,8 @@ public class AppService { private FlowTaskFeign flowTaskFeign; @Autowired private ProcessCommentFeign processCommentFeign; + @Autowired + private FlowableFeign flowableFeign; public ResultBean> getProgressList(AppFlowableRecordQuery appFlowableRecordQuery) { ResultBean> rb = ResultBean.fireFail(); @@ -38,8 +43,8 @@ public class AppService { ResultBean resultBean = flowTaskFeign.businessFlowRecord(procInsId); List voList = Optional.ofNullable(resultBean.getData().getFlowList()).orElse(new ArrayList<>()).stream().map(m -> JSON.parseObject(JSON.toJSONString(m), AppFlowableRecordVo.class)).collect(Collectors.toList()); voList.removeAll(Collections.singleton(null)); - for (int i=0;i> getProgressAndCommentList(AppFlowableRecordQuery appFlowableRecordQuery) { ResultBean> rb = ResultBean.fireFail(); ResultBean> progressdata = getProgressList(appFlowableRecordQuery); ResultBean> commentList = getCommentList(appFlowableRecordQuery); - List list=new ArrayList<>(); + List list = new ArrayList<>(); List progressList = progressdata.getData(); - progressList.forEach(f->{ - AppFlowableRecordAndCommentVo a=new AppFlowableRecordAndCommentVo(); - a.setTime(f.getFinishTime()==null?new Date():f.getFinishTime()); - // a.setTime(f.getCreateTime()); + progressList.forEach(f -> { + AppFlowableRecordAndCommentVo a = new AppFlowableRecordAndCommentVo(); + a.setTime(f.getFinishTime() == null ? new Date() : f.getFinishTime()); + // a.setTime(f.getCreateTime()); a.setFlowableRecordVo(f); - a.setState(0+""); + a.setState(0 + ""); list.add(a); }); - commentList.getData().forEach(f->{ - AppFlowableRecordAndCommentVo a=new AppFlowableRecordAndCommentVo(); + commentList.getData().forEach(f -> { + AppFlowableRecordAndCommentVo a = new AppFlowableRecordAndCommentVo(); Date time = f.getCreateTime(); a.setTime(time); - f.setTitle(f.getTaskUserInfo().getAssigneeName()+"添加了评论"); + f.setTitle(f.getTaskUserInfo().getAssigneeName() + "添加了评论"); a.setProcessCommentVo(f); - a.setState(1+""); + a.setState(1 + ""); list.add(a); }); list.sort((t1, t2) -> t2.getTime().compareTo(t1.getTime())); - return rb.success().setData(list); + return rb.success().setData(list); } public ResultBean> getCommentList(AppFlowableRecordQuery appFlowableRecordQuery) { ResultBean> rb = ResultBean.fireFail(); ResultBean> commentList = processCommentFeign.getCommentList(appFlowableRecordQuery.getProgressId()); - List list=new ArrayList<>(); - commentList.getData().forEach(f->{ + List list = new ArrayList<>(); + commentList.getData().forEach(f -> { ProcessCommentVo processCommentVo = new ProcessCommentVo(); - BeanUtil.copyProperties(f,processCommentVo); + BeanUtil.copyProperties(f, processCommentVo); processCommentVo.setCreateTime(f.getTime()); - SimpleDateFormat sdf=new SimpleDateFormat("yyyy-MM-dd HH:mm:ss"); + SimpleDateFormat sdf = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss"); String format = sdf.format(f.getTime()); processCommentVo.setTime(format); list.add(processCommentVo); @@ -115,10 +121,18 @@ public class AppService { } public ResultBean addProgressComment(ProcessComment processComment) { - ProcessCommentDto dto=new ProcessCommentDto(); - BeanUtil.copyProperties(processComment,dto); + ProcessCommentDto dto = new ProcessCommentDto(); + BeanUtil.copyProperties(processComment, dto); String procInsId = processComment.getProcInsId(); dto.setProcessId(procInsId); return processCommentFeign.save(dto); } + + public ResultBean shareMessage(ShareMessageQuery shareMessageQuery) { + ResultBean rb = ResultBean.fireFail(); + FlowableShareQuery flowableShareQuery = new FlowableShareQuery(); + BeanUtil.copyProperties(shareMessageQuery, flowableShareQuery); + ResultBean resultBean = flowableFeign.shareFlowable(flowableShareQuery); + return rb.success(); + } }