From a42144739a38721b99b6f5c55f927d45bfdd6962 Mon Sep 17 00:00:00 2001 From: furongxin <419481438@qq.com> Date: Fri, 22 Mar 2024 11:04:30 +0800 Subject: [PATCH] =?UTF-8?q?OA=E6=B5=81=E7=A8=8B=20=20=20=E5=A4=87=E7=94=A8?= =?UTF-8?q?=E9=87=91=E6=8A=A5=E9=94=80=E9=80=BB=E8=BE=91=E4=BF=AE=E6=94=B9?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../bpm/dal/mysql/oa/BpmOAImprestMapper.java | 2 +- .../service/oa/BpmOAImprestServiceImpl.java | 1 + .../oa/BpmOAReimbursementServiceImpl.java | 19 +++++++++++++++++++ 3 files changed, 21 insertions(+), 1 deletion(-) diff --git a/yudao-module-bpm/yudao-module-bpm-biz/src/main/java/cn/iocoder/yudao/module/bpm/dal/mysql/oa/BpmOAImprestMapper.java b/yudao-module-bpm/yudao-module-bpm-biz/src/main/java/cn/iocoder/yudao/module/bpm/dal/mysql/oa/BpmOAImprestMapper.java index b2f7e549..6fe536d2 100644 --- a/yudao-module-bpm/yudao-module-bpm-biz/src/main/java/cn/iocoder/yudao/module/bpm/dal/mysql/oa/BpmOAImprestMapper.java +++ b/yudao-module-bpm/yudao-module-bpm-biz/src/main/java/cn/iocoder/yudao/module/bpm/dal/mysql/oa/BpmOAImprestMapper.java @@ -18,7 +18,7 @@ public interface BpmOAImprestMapper extends BaseMapperX { default BpmOAImprestDO selectByUserId(Long userId, Integer status){ return selectOne(new LambdaQueryWrapperX().eq(BpmOAImprestDO::getUserId, userId) - .eq(BpmOAImprestDO::getResult, BpmProcessInstanceResultEnum.APPROVE.getResult()) + .eq(BpmOAImprestDO::getResult, BpmProcessInstanceResultEnum.PROCESS.getResult()) .eq(BpmOAImprestDO::getStatus, status)); } } diff --git a/yudao-module-bpm/yudao-module-bpm-biz/src/main/java/cn/iocoder/yudao/module/bpm/service/oa/BpmOAImprestServiceImpl.java b/yudao-module-bpm/yudao-module-bpm-biz/src/main/java/cn/iocoder/yudao/module/bpm/service/oa/BpmOAImprestServiceImpl.java index c03d2500..80cdb942 100644 --- a/yudao-module-bpm/yudao-module-bpm-biz/src/main/java/cn/iocoder/yudao/module/bpm/service/oa/BpmOAImprestServiceImpl.java +++ b/yudao-module-bpm/yudao-module-bpm-biz/src/main/java/cn/iocoder/yudao/module/bpm/service/oa/BpmOAImprestServiceImpl.java @@ -45,6 +45,7 @@ public class BpmOAImprestServiceImpl extends BpmOABaseService implements BpmOAIm //插入OA 备用金申请 BpmOAImprestDO imprest = BpmOAImprestConvert.INSTANCE.convert(createReqVO).setUserId(userId) + .setStatus(BpmOAImprestDO.FLAG_FALSE) .setResult(BpmProcessInstanceResultEnum.PROCESS.getResult()); imprestMapper.insert(imprest) ; diff --git a/yudao-module-bpm/yudao-module-bpm-biz/src/main/java/cn/iocoder/yudao/module/bpm/service/oa/BpmOAReimbursementServiceImpl.java b/yudao-module-bpm/yudao-module-bpm-biz/src/main/java/cn/iocoder/yudao/module/bpm/service/oa/BpmOAReimbursementServiceImpl.java index 0c66c501..f128cd0e 100644 --- a/yudao-module-bpm/yudao-module-bpm-biz/src/main/java/cn/iocoder/yudao/module/bpm/service/oa/BpmOAReimbursementServiceImpl.java +++ b/yudao-module-bpm/yudao-module-bpm-biz/src/main/java/cn/iocoder/yudao/module/bpm/service/oa/BpmOAReimbursementServiceImpl.java @@ -98,10 +98,29 @@ public class BpmOAReimbursementServiceImpl extends BpmOABaseService implements B BpmOAImprestDO bpmOAImprestDO = bpmOAImprestMapper.selectByUserId(Long.valueOf(instance.getStartUserId()), BpmOAImprestDO.IN_PROGRESS); if (instance.isEnded() && bpmOAImprestDO != null) { + + //将相应备用金申请状态改为 已报销 bpmOAImprestMapper.updateById(new BpmOAImprestDO().setId(bpmOAImprestDO.getId()).setStatus(BpmOAImprestDO.FLAG_TRUE)); } } + // -- 自己取消 + // -- 审核拒绝 + //所有关联的采购申请改为 未支付状态 + if (BpmProcessInstanceResultEnum.REJECT.getResult().equals(result) + || BpmProcessInstanceResultEnum.CANCEL.getResult().equals(result) + || BpmProcessInstanceResultEnum.BACK.getResult().equals(result)) { + + ProcessInstance instance = bpmProcessInstanceService.getProcessInstance(processInstanceId); + BpmOAImprestDO bpmOAImprestDO = bpmOAImprestMapper.selectByUserId(Long.valueOf(instance.getStartUserId()), BpmOAImprestDO.IN_PROGRESS); + + if (bpmOAImprestDO != null) { + + //将相应备用金申请状态改为 未报销 + bpmOAImprestMapper.updateById(new BpmOAImprestDO().setId(bpmOAImprestDO.getId()).setStatus(BpmOAImprestDO.FLAG_FALSE)); + } + } + reimbursementMapper.updateById(new BpmOAReimbursementDO().setId(id).setResult(result)); }