From 52d0860319a097002146523085fc3745d72f5d29 Mon Sep 17 00:00:00 2001 From: dimengzhe Date: Tue, 21 Jan 2025 09:20:09 +0800 Subject: [PATCH 1/4] =?UTF-8?q?=E4=BF=AE=E6=94=B9?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../yxt/anrui/oa/biz/hrhireapply/HrHireApplyDto.java | 2 +- .../anrui/oa/biz/hrhireapply/HrHireApplyService.java | 12 ++++++------ .../yxt/anrui/oa/biz/hrhireapply/HrHireApplyVo.java | 6 ++++-- .../java/com/yxt/anrui/oa/biz/oaform/OaFormDto.java | 3 ++- .../com/yxt/anrui/oa/biz/oaform/OaFormService.java | 2 +- 5 files changed, 14 insertions(+), 11 deletions(-) diff --git a/yxt-oa/src/main/java/com/yxt/anrui/oa/biz/hrhireapply/HrHireApplyDto.java b/yxt-oa/src/main/java/com/yxt/anrui/oa/biz/hrhireapply/HrHireApplyDto.java index aefff0c668..ebec3cb4bd 100644 --- a/yxt-oa/src/main/java/com/yxt/anrui/oa/biz/hrhireapply/HrHireApplyDto.java +++ b/yxt-oa/src/main/java/com/yxt/anrui/oa/biz/hrhireapply/HrHireApplyDto.java @@ -16,7 +16,7 @@ import java.util.List; @Data public class HrHireApplyDto extends OaFormDto { private static final long serialVersionUID = 4255707952292859284L; - private String userSid; +// private String userSid; @ApiModelProperty("是否是财务") private String isFinanceKey; private String isFinanceValue; diff --git a/yxt-oa/src/main/java/com/yxt/anrui/oa/biz/hrhireapply/HrHireApplyService.java b/yxt-oa/src/main/java/com/yxt/anrui/oa/biz/hrhireapply/HrHireApplyService.java index 9b3a3e4df4..6dde456139 100644 --- a/yxt-oa/src/main/java/com/yxt/anrui/oa/biz/hrhireapply/HrHireApplyService.java +++ b/yxt-oa/src/main/java/com/yxt/anrui/oa/biz/hrhireapply/HrHireApplyService.java @@ -44,8 +44,8 @@ public class HrHireApplyService extends MybatisBaseService getSaveInit(String userSid, String orgPath) { ResultBean rb = ResultBean.fireFail(); HrHireApplyVo hrHireApplyVo = new HrHireApplyVo(); - hrHireApplyVo.setUserSid(userSid); - hrHireApplyVo.setOrgPath(orgPath); + hrHireApplyVo.setCreateBySid(userSid); + hrHireApplyVo.setOrgSidPath(orgPath); return rb.success().setData(hrHireApplyVo); } @@ -62,8 +62,8 @@ public class HrHireApplyService extends MybatisBaseService resultBean = oaFormService.saveOaForm(dto); if (!resultBean.getSuccess()) { return rb; } entity.setFormSid(resultBean.getData()); - entity.setCreateBySid(dto.getUserSid()); + entity.setCreateBySid(dto.getCreateBySid()); baseMapper.insert(entity); sid = entity.getSid(); } else { diff --git a/yxt-oa/src/main/java/com/yxt/anrui/oa/biz/hrhireapply/HrHireApplyVo.java b/yxt-oa/src/main/java/com/yxt/anrui/oa/biz/hrhireapply/HrHireApplyVo.java index 1f89adff04..544455d385 100644 --- a/yxt-oa/src/main/java/com/yxt/anrui/oa/biz/hrhireapply/HrHireApplyVo.java +++ b/yxt-oa/src/main/java/com/yxt/anrui/oa/biz/hrhireapply/HrHireApplyVo.java @@ -17,8 +17,10 @@ import java.util.List; public class HrHireApplyVo { private String sid; - private String userSid; - private String orgPath; + /* private String userSid; + private String orgPath;*/ + private String orgSidPath; + private String createBySid; @ApiModelProperty("是否是财务") private FormCommon isFinanceObj; private String isFinanceKey; diff --git a/yxt-oa/src/main/java/com/yxt/anrui/oa/biz/oaform/OaFormDto.java b/yxt-oa/src/main/java/com/yxt/anrui/oa/biz/oaform/OaFormDto.java index a77203795b..304e7ef56a 100644 --- a/yxt-oa/src/main/java/com/yxt/anrui/oa/biz/oaform/OaFormDto.java +++ b/yxt-oa/src/main/java/com/yxt/anrui/oa/biz/oaform/OaFormDto.java @@ -20,7 +20,8 @@ public class OaFormDto implements Dto { @ApiModelProperty("创建人sid") private String createBySid; @ApiModelProperty("组织机构全路径") - private String orgPath; +// private String orgPath; + private String orgSidPath; @ApiModelProperty("申请单编号的字母") private String billNo; @ApiModelProperty("sid") diff --git a/yxt-oa/src/main/java/com/yxt/anrui/oa/biz/oaform/OaFormService.java b/yxt-oa/src/main/java/com/yxt/anrui/oa/biz/oaform/OaFormService.java index 55b5fa55d8..52cd6906e6 100644 --- a/yxt-oa/src/main/java/com/yxt/anrui/oa/biz/oaform/OaFormService.java +++ b/yxt-oa/src/main/java/com/yxt/anrui/oa/biz/oaform/OaFormService.java @@ -77,7 +77,7 @@ public class OaFormService extends MybatisBaseService { // 将DTO中部分属性复制到oaForm中,忽略不需要的字段(如billNo, orgSidPath) BeanUtil.copyProperties(dto, oaForm, "billNo", "orgPath"); try { - String orgSidPath = dto.getOrgPath(); + String orgSidPath = dto.getOrgSidPath(); // 获取组织信息,根据orgSidPath字段调用外部服务 OrgVo orgVo = sysOrganizationFeign.getOrgByPath(orgSidPath).getData(); // 如果组织信息为空,返回失败信息 From f4cdcdd7b4ffba6b5c023b4b8dae6be24ae5f586 Mon Sep 17 00:00:00 2001 From: dimengzhe Date: Tue, 21 Jan 2025 09:50:01 +0800 Subject: [PATCH 2/4] =?UTF-8?q?=E4=BF=AE=E6=94=B9?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../anrui/oa/biz/oaform/OaFormService.java | 58 ++++++++++--------- 1 file changed, 32 insertions(+), 26 deletions(-) diff --git a/yxt-oa/src/main/java/com/yxt/anrui/oa/biz/oaform/OaFormService.java b/yxt-oa/src/main/java/com/yxt/anrui/oa/biz/oaform/OaFormService.java index 52cd6906e6..ced5bc4a11 100644 --- a/yxt-oa/src/main/java/com/yxt/anrui/oa/biz/oaform/OaFormService.java +++ b/yxt-oa/src/main/java/com/yxt/anrui/oa/biz/oaform/OaFormService.java @@ -503,33 +503,39 @@ public class OaFormService extends MybatisBaseService { if (r == 1) { //启动流程 ResultBean voResultBean = flowFeign.startProcess(bv); - UpdateFlowFieldVo ufVo = voResultBean.getData(); - OaFormFlowDto oaFormFlowDto = new OaFormFlowDto(); - BeanUtil.copyProperties(ufVo, oaFormFlowDto); - updateFlow(oaFormFlowDto); - try { - ThreadFactory namedThreadFactory = new ThreadFactoryBuilder() - .setNameFormat("demo-pool-%d").build(); - ExecutorService pool = new ThreadPoolExecutor(2, 100, - 0L, TimeUnit.MILLISECONDS, - new LinkedBlockingQueue(1024), namedThreadFactory, new ThreadPoolExecutor.AbortPolicy()); - Future future1 = pool.submit(() -> { - //极光推送 - MessageFlowableQuery messageFlowableQuery = new MessageFlowableQuery(); - MessageFlowVo messageFlowVo = new MessageFlowVo(); - BeanUtil.copyProperties(ufVo, messageFlowVo); - messageFlowableQuery.setUfVo(messageFlowVo); - messageFlowableQuery.setAppMap((Map) bv.getFormVariables().get("app")); - messageFlowableQuery.setBusinessSid(dto.getBusinessSid()); - messageFlowableQuery.setModuleName(oaForm.getFormType()); - messageFlowableQuery.setMsgContent(oaForm.getCreateByName() + "提交的" + messageFlowableQuery.getModuleName() + ",请审批"); - messageFlowableQuery.setMsgTitle(oaForm.getFormType()); - messageFeign.pushMessage(messageFlowableQuery); - }); - } catch (Exception e) { - e.printStackTrace(); + if(voResultBean.getSuccess()){ + UpdateFlowFieldVo ufVo = voResultBean.getData(); + OaFormFlowDto oaFormFlowDto = new OaFormFlowDto(); + BeanUtil.copyProperties(ufVo, oaFormFlowDto); + updateFlow(oaFormFlowDto); + try { + ThreadFactory namedThreadFactory = new ThreadFactoryBuilder() + .setNameFormat("demo-pool-%d").build(); + ExecutorService pool = new ThreadPoolExecutor(2, 100, + 0L, TimeUnit.MILLISECONDS, + new LinkedBlockingQueue(1024), namedThreadFactory, new ThreadPoolExecutor.AbortPolicy()); + Future future1 = pool.submit(() -> { + //极光推送 + MessageFlowableQuery messageFlowableQuery = new MessageFlowableQuery(); + MessageFlowVo messageFlowVo = new MessageFlowVo(); + BeanUtil.copyProperties(ufVo, messageFlowVo); + messageFlowableQuery.setUfVo(messageFlowVo); + messageFlowableQuery.setAppMap((Map) bv.getFormVariables().get("app")); + messageFlowableQuery.setBusinessSid(dto.getBusinessSid()); + messageFlowableQuery.setModuleName(oaForm.getFormType()); + messageFlowableQuery.setMsgContent(oaForm.getCreateByName() + "提交的" + messageFlowableQuery.getModuleName() + ",请审批"); + messageFlowableQuery.setMsgTitle(oaForm.getFormType()); + messageFeign.pushMessage(messageFlowableQuery); + }); + } catch (Exception e) { + e.printStackTrace(); + } + return voResultBean; + }else{ + return rb.setMsg(voResultBean.getMsg()); } - return voResultBean; + + } else if (r == 2) { BusinessVariablesDto businessVariablesDto = new BusinessVariablesDto(); BeanUtil.copyProperties(bv, businessVariablesDto); From 8075fb6f84e8abc55c2a9626164a074cb64cc11c Mon Sep 17 00:00:00 2001 From: dimengzhe Date: Tue, 21 Jan 2025 10:37:11 +0800 Subject: [PATCH 3/4] =?UTF-8?q?=E6=9B=B4=E6=96=B0=E5=8A=9E=E7=BB=93?= =?UTF-8?q?=E6=97=A5=E6=9C=9F?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../com/yxt/anrui/oa/biz/oaform/OaFormService.java | 13 ++++++++++--- 1 file changed, 10 insertions(+), 3 deletions(-) diff --git a/yxt-oa/src/main/java/com/yxt/anrui/oa/biz/oaform/OaFormService.java b/yxt-oa/src/main/java/com/yxt/anrui/oa/biz/oaform/OaFormService.java index ced5bc4a11..a731aae30c 100644 --- a/yxt-oa/src/main/java/com/yxt/anrui/oa/biz/oaform/OaFormService.java +++ b/yxt-oa/src/main/java/com/yxt/anrui/oa/biz/oaform/OaFormService.java @@ -211,7 +211,8 @@ public class OaFormService extends MybatisBaseService { BeanUtil.copyProperties(ufVo, oaFormFlowDto); updateFlow(oaFormFlowDto); if ("Event_end".equals(resultBean.getData().getTaskDefKey())) { - + // 更新办结日期 + updateClosingDate(businessSid); } else { //极光推送 oaForm = fetchBySid(businessSid); @@ -249,6 +250,12 @@ public class OaFormService extends MybatisBaseService { } } + private void updateClosingDate(String businessSid) { + OaForm oaForm = fetchBySid(businessSid); + oaForm.setFinishTime(new Date()); + baseMapper.updateById(oaForm); + } + /** * 获取上一环节 * @@ -503,7 +510,7 @@ public class OaFormService extends MybatisBaseService { if (r == 1) { //启动流程 ResultBean voResultBean = flowFeign.startProcess(bv); - if(voResultBean.getSuccess()){ + if (voResultBean.getSuccess()) { UpdateFlowFieldVo ufVo = voResultBean.getData(); OaFormFlowDto oaFormFlowDto = new OaFormFlowDto(); BeanUtil.copyProperties(ufVo, oaFormFlowDto); @@ -531,7 +538,7 @@ public class OaFormService extends MybatisBaseService { e.printStackTrace(); } return voResultBean; - }else{ + } else { return rb.setMsg(voResultBean.getMsg()); } From 6a4eb2fc792f354425f424425deb93ffa7495ef3 Mon Sep 17 00:00:00 2001 From: dimengzhe Date: Tue, 21 Jan 2025 11:33:14 +0800 Subject: [PATCH 4/4] =?UTF-8?q?=E4=BF=AE=E6=94=B9?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../src/main/java/com/yxt/anrui/oa/biz/oaform/OaFormService.java | 1 + 1 file changed, 1 insertion(+) diff --git a/yxt-oa/src/main/java/com/yxt/anrui/oa/biz/oaform/OaFormService.java b/yxt-oa/src/main/java/com/yxt/anrui/oa/biz/oaform/OaFormService.java index a731aae30c..82947cf5d8 100644 --- a/yxt-oa/src/main/java/com/yxt/anrui/oa/biz/oaform/OaFormService.java +++ b/yxt-oa/src/main/java/com/yxt/anrui/oa/biz/oaform/OaFormService.java @@ -438,6 +438,7 @@ public class OaFormService extends MybatisBaseService { if (businessTaskId.equals(dto.getTaskId())) { FlowTaskVo flowTaskVo = new FlowTaskVo(); BeanUtil.copyProperties(dto, flowTaskVo); + flowTaskVo.setInstanceId(dto.getProcInsId()); ResultBean resultBean = flowableFeign.breakProcess(flowTaskVo); if (!resultBean.getSuccess()) { return rb.setMsg(resultBean.getMsg());