```refactor(workflow): 更改沈总审批为总经理审批并新增商品粮轮换申报
- 在多个工作流服务实现中,将“沈总审批”步骤更改为“总经理审批”。 - 新增“商品粮轮换申报”工作流服务实现。 - 更新工作流类型枚举,将“轮换申报”描述更新为“储备粮轮换申报”,并新增“商品粮轮换申报”类型。BREAKING CHANGE: “沈总审批”更名为“总经理审批”,可能影响依赖特定审批流程的工作流。新增的商品粮轮换申报工作流服务实现需要在相关工作流中进行配置。 ```
This commit is contained in:
parent
abe07eef3d
commit
6b1231415a
|
@ -92,18 +92,18 @@ public class BudgetWorkFlowService implements IWorkFlowType {
|
|||
.like(User::getRoles, role.getId())
|
||||
);
|
||||
if (CollUtil.isNotEmpty(nextUserList) && "1".equals(type)) {
|
||||
//找到沈总账号
|
||||
//找到总经理账号
|
||||
Config admin = configService.getOne(new QueryWrapper<Config>().lambda()
|
||||
.eq(Config::getParamKey, "sys.admin")
|
||||
.last("limit 1")
|
||||
);
|
||||
if (ObjUtil.isNull(admin)) throw new ResultException("系统未配置沈总账号");
|
||||
if (ObjUtil.isNull(admin)) throw new ResultException("系统未配置总经理账号");
|
||||
|
||||
User adminUser = userService.getOne(new QueryWrapper<User>().lambda()
|
||||
.eq(User::getLoginName, admin.getParamValue())
|
||||
.last("limit 1")
|
||||
);
|
||||
if (ObjUtil.isNull(adminUser)) throw new ResultException("系统未配置沈总账号");
|
||||
if (ObjUtil.isNull(adminUser)) throw new ResultException("系统未配置总经理账号");
|
||||
nextUserList = new ArrayList<User>();
|
||||
nextUserList.add(adminUser);
|
||||
}
|
||||
|
@ -177,7 +177,7 @@ public class BudgetWorkFlowService implements IWorkFlowType {
|
|||
// 2.2 预算申请第三步 购销仓储部负责人审批
|
||||
return third(vo, workFlow, workFlowStep);
|
||||
case 4:
|
||||
// 2.3 预算申请第四步 沈总审批
|
||||
// 2.3 预算申请第四步 总经理审批
|
||||
return fourth(vo, workFlow, workFlowStep);
|
||||
default:
|
||||
throw new ResultException("流程环节错误");
|
||||
|
@ -311,25 +311,25 @@ public class BudgetWorkFlowService implements IWorkFlowType {
|
|||
workFlow.setStatus(WorkFlowStatusEnum.ACTIVE.getStatus());
|
||||
flag = workFlowService.updateById(workFlow);
|
||||
|
||||
// 4.找到沈总审批
|
||||
// 4.找到总经理审批
|
||||
Config admin = configService.getOne(new QueryWrapper<Config>().lambda()
|
||||
.eq(Config::getParamKey, "sys.admin")
|
||||
.last("limit 1")
|
||||
);
|
||||
if (ObjUtil.isNull(admin)) throw new ResultException("系统未配置沈总账号");
|
||||
if (ObjUtil.isNull(admin)) throw new ResultException("系统未配置总经理账号");
|
||||
|
||||
User adminUser = userService.getOne(new QueryWrapper<User>().lambda()
|
||||
.eq(User::getLoginName, admin.getParamValue())
|
||||
.last("limit 1")
|
||||
);
|
||||
if (ObjUtil.isNull(adminUser)) throw new ResultException("系统未配置沈总账号");
|
||||
if (ObjUtil.isNull(adminUser)) throw new ResultException("系统未配置总经理账号");
|
||||
|
||||
// 5.添加下一步流程环节
|
||||
WorkFlowStep nextWorkFlowStep = new WorkFlowStep(workFlow, WorkFlowStepTypeEnum.APPROVAL.getType(),
|
||||
adminUser.getId(), WorkFlowStepStatusEnum.NOT_START.getStatus(), "");
|
||||
flag = workFlowStepService.save(nextWorkFlowStep);
|
||||
|
||||
// 6.通知沈总账号
|
||||
// 6.通知总经理账号
|
||||
String title =
|
||||
user.getUserName() + "的" + WorkFlowTypeEnum.valueOf(workFlow.getType().toUpperCase()).getName() +
|
||||
"待您审批";
|
||||
|
|
|
@ -147,7 +147,7 @@ public class FumigationWorkFlowService implements IWorkFlowType {
|
|||
// 2.3 熏蒸申报第四步 购销仓储部负责人审批
|
||||
return fourth(vo, workFlow, workFlowStep);
|
||||
case 5:
|
||||
// 2.4 熏蒸申报第五步 沈总审批
|
||||
// 2.4 熏蒸申报第五步 总经理审批
|
||||
return fifth(vo, workFlow, workFlowStep);
|
||||
case 6:
|
||||
// 2.5 熏蒸申报第六步 粮食与物资管理科(角色)审批
|
||||
|
@ -300,25 +300,25 @@ public class FumigationWorkFlowService implements IWorkFlowType {
|
|||
workFlow.setStatus(WorkFlowStatusEnum.ACTIVE.getStatus());
|
||||
flag = workFlowService.updateById(workFlow);
|
||||
|
||||
// 4.找到沈总账号
|
||||
// 4.找到总经理账号
|
||||
Config admin = configService.getOne(new QueryWrapper<Config>().lambda()
|
||||
.eq(Config::getParamKey, "sys.admin")
|
||||
.last("limit 1")
|
||||
);
|
||||
if (ObjUtil.isNull(admin)) throw new ResultException("系统未配置沈总账号");
|
||||
if (ObjUtil.isNull(admin)) throw new ResultException("系统未配置总经理账号");
|
||||
|
||||
User adminUser = userService.getOne(new QueryWrapper<User>().lambda()
|
||||
.eq(User::getLoginName, admin.getParamValue())
|
||||
.last("limit 1")
|
||||
);
|
||||
if (ObjUtil.isNull(adminUser)) throw new ResultException("系统未配置沈总账号");
|
||||
if (ObjUtil.isNull(adminUser)) throw new ResultException("系统未配置总经理账号");
|
||||
|
||||
// 5.添加下一步流程环节
|
||||
WorkFlowStep nextWorkFlowStep = new WorkFlowStep(workFlow, WorkFlowStepTypeEnum.APPROVAL.getType(),
|
||||
adminUser.getId(), WorkFlowStepStatusEnum.NOT_START.getStatus(), "");
|
||||
flag = workFlowStepService.save(nextWorkFlowStep);
|
||||
|
||||
// 6.通知沈总账号
|
||||
// 6.通知总经理账号
|
||||
User user = userService.getById(workFlow.getUserId());
|
||||
String title =
|
||||
user.getUserName() + "的" + WorkFlowTypeEnum.valueOf(workFlow.getType().toUpperCase()).getName() +
|
||||
|
|
|
@ -0,0 +1,244 @@
|
|||
package com.ydool.oa.workFlow.engine.service.impl;
|
||||
|
||||
import cn.dev33.satoken.stp.StpUtil;
|
||||
import cn.hutool.core.collection.CollUtil;
|
||||
import cn.hutool.core.util.ObjUtil;
|
||||
import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
|
||||
import com.ydool.common.data.dto.AjaxResult;
|
||||
import com.ydool.common.exception.ResultException;
|
||||
import com.ydool.oa.workFlow.data.entity.WorkFlow;
|
||||
import com.ydool.oa.workFlow.data.entity.WorkFlowNotice;
|
||||
import com.ydool.oa.workFlow.data.entity.WorkFlowStep;
|
||||
import com.ydool.oa.workFlow.data.entity.WorkFlowStepLog;
|
||||
import com.ydool.oa.workFlow.data.vo.WorkFlowStepVo;
|
||||
import com.ydool.oa.workFlow.engine.service.IWorkFlowType;
|
||||
import com.ydool.oa.workFlow.enums.WorkFlowStatusEnum;
|
||||
import com.ydool.oa.workFlow.enums.WorkFlowStepStatusEnum;
|
||||
import com.ydool.oa.workFlow.enums.WorkFlowStepTypeEnum;
|
||||
import com.ydool.oa.workFlow.enums.WorkFlowTypeEnum;
|
||||
import com.ydool.oa.workFlow.service.WorkFlowNoticeService;
|
||||
import com.ydool.oa.workFlow.service.WorkFlowService;
|
||||
import com.ydool.oa.workFlow.service.WorkFlowStepLogService;
|
||||
import com.ydool.oa.workFlow.service.WorkFlowStepService;
|
||||
import com.ydool.system.entity.Config;
|
||||
import com.ydool.system.entity.Dept;
|
||||
import com.ydool.system.entity.Role;
|
||||
import com.ydool.system.entity.User;
|
||||
import com.ydool.system.service.impl.*;
|
||||
import org.springframework.beans.factory.annotation.Autowired;
|
||||
import org.springframework.stereotype.Service;
|
||||
import org.springframework.transaction.annotation.Transactional;
|
||||
|
||||
import java.util.ArrayList;
|
||||
import java.util.Arrays;
|
||||
import java.util.List;
|
||||
import java.util.stream.Collectors;
|
||||
|
||||
@Service
|
||||
public class GoodsWorkFlowService implements IWorkFlowType {
|
||||
@Autowired
|
||||
private WorkFlowService workFlowService;
|
||||
|
||||
@Autowired
|
||||
private WorkFlowStepService workFlowStepService;
|
||||
|
||||
@Autowired
|
||||
private WorkFlowStepLogService workFlowStepLogService;
|
||||
|
||||
@Autowired
|
||||
private WorkFlowNoticeService workFlowNoticeService;
|
||||
|
||||
@Autowired
|
||||
private UserServiceImpl userService;
|
||||
|
||||
@Autowired
|
||||
private JobServiceImpl jobService;
|
||||
|
||||
@Autowired
|
||||
private ConfigServiceImpl configService;
|
||||
|
||||
@Autowired
|
||||
private RoleServiceImpl roleService;
|
||||
|
||||
@Autowired
|
||||
private DeptServiceImpl deptService;
|
||||
|
||||
@Override
|
||||
@Transactional(rollbackFor = Exception.class)
|
||||
public AjaxResult first(WorkFlow workFlow) {
|
||||
User user = userService.getById(workFlow.getUserId());
|
||||
//是否购销仓储部负责人
|
||||
Dept dept = deptService.getById(user.getDept());
|
||||
List<Role> roles = roleService.listByIds(Arrays.asList(user.getRoles().split(",")));
|
||||
List<String> roleNames = roles.stream().map(Role::getName).collect(Collectors.toList());
|
||||
if (!("购销仓储部".equals(dept.getName()) && roleNames.contains("部门负责人")))
|
||||
throw new ResultException("您不是购销仓储部负责人,无法发起流程");
|
||||
|
||||
|
||||
// 1.流程step+1
|
||||
workFlow.setStep(workFlow.getStep() + 1);
|
||||
workFlow.setStepType(WorkFlowStepTypeEnum.APPROVAL.getType());
|
||||
workFlow.setStatus(WorkFlowStatusEnum.ACTIVE.getStatus());
|
||||
boolean flag = workFlowService.updateById(workFlow);
|
||||
|
||||
// 2.找到总经理账号
|
||||
Config admin = configService.getOne(new QueryWrapper<Config>().lambda()
|
||||
.eq(Config::getParamKey, "sys.admin")
|
||||
.last("limit 1")
|
||||
);
|
||||
if (ObjUtil.isNull(admin)) throw new ResultException("系统未配置总经理账号");
|
||||
|
||||
User adminUser = userService.getOne(new QueryWrapper<User>().lambda()
|
||||
.eq(User::getLoginName, admin.getParamValue())
|
||||
.last("limit 1")
|
||||
);
|
||||
if (ObjUtil.isNull(adminUser)) throw new ResultException("系统未配置总经理账号");
|
||||
|
||||
// 3.添加下一步流程环节
|
||||
WorkFlowStep nextWorkFlowStep = new WorkFlowStep(workFlow, WorkFlowStepTypeEnum.APPROVAL.getType(),
|
||||
adminUser.getId(), WorkFlowStepStatusEnum.NOT_START.getStatus(), "");
|
||||
flag = workFlowStepService.save(nextWorkFlowStep);
|
||||
|
||||
// 4.通知总经理账号
|
||||
String title =
|
||||
user.getUserName() + "的" + WorkFlowTypeEnum.valueOf(workFlow.getType().toUpperCase()).getName() +
|
||||
"待您审批";
|
||||
WorkFlowNotice workFlowNotice = new WorkFlowNotice(title, workFlow, adminUser.getId());
|
||||
flag = workFlowNoticeService.save(workFlowNotice);
|
||||
if (flag){
|
||||
return AjaxResult.ok().msg("发起成功");
|
||||
}else {
|
||||
throw new ResultException("发起失败");
|
||||
}
|
||||
}
|
||||
|
||||
@Override
|
||||
@Transactional(rollbackFor = Exception.class)
|
||||
public AjaxResult execute(WorkFlowStepVo vo, WorkFlow workFlow) {
|
||||
// 1.查询当前流程环节 并且执行人是当前登录人
|
||||
WorkFlowStep workFlowStep = workFlowStepService.getOne(new QueryWrapper<WorkFlowStep>().lambda()
|
||||
.eq(WorkFlowStep::getFlowId, workFlow.getId())
|
||||
.eq(WorkFlowStep::getStep, workFlow.getStep())
|
||||
.eq(WorkFlowStep::getUserId, StpUtil.getLoginIdAsString())
|
||||
.last("limit 1")
|
||||
);
|
||||
if (ObjUtil.isNull(workFlowStep)) throw new ResultException("您不是当前流程环节执行人");
|
||||
|
||||
// 2.判断执行哪个方法
|
||||
switch (workFlow.getStep()) {
|
||||
case 2:
|
||||
// 2.1 商品粮轮换申报第二步 总经理审批
|
||||
return second(vo, workFlow, workFlowStep);
|
||||
case 3:
|
||||
// 2.2 商品粮轮换申报第三步 粮食与物资管理科(角色)审批
|
||||
return third(vo, workFlow, workFlowStep);
|
||||
default:
|
||||
throw new ResultException("流程环节错误");
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
@Transactional(rollbackFor = Exception.class)
|
||||
public AjaxResult second(WorkFlowStepVo vo, WorkFlow workFlow, WorkFlowStep workFlowStep) {
|
||||
User user = userService.getById(workFlow.getUserId());
|
||||
// 1.流程环节进行变更
|
||||
workFlowStep.setStatus(WorkFlowStepStatusEnum.PASS.getStatus());
|
||||
workFlowStep.setRemarks(vo.getRemarks());
|
||||
boolean flag = workFlowStepService.updateById(workFlowStep);
|
||||
|
||||
// 2.记录流程环节日志
|
||||
WorkFlowStepLog workFlowStepLog = new WorkFlowStepLog(workFlowStep, workFlow.getData());
|
||||
flag = workFlowStepLogService.save(workFlowStepLog);
|
||||
|
||||
// 3.流程step+1 进入下一步
|
||||
workFlow.setStep(workFlow.getStep() + 1);
|
||||
workFlow.setStepType(WorkFlowStepTypeEnum.APPROVAL.getType());
|
||||
workFlow.setStatus(WorkFlowStatusEnum.ACTIVE.getStatus());
|
||||
flag = workFlowService.updateById(workFlow);
|
||||
|
||||
// 4.找到粮食与物资管理科(角色)
|
||||
Role nextRole = roleService.getOne(new QueryWrapper<Role>().lambda()
|
||||
.eq(Role::getName, "粮食与物资管理科")
|
||||
.last("limit 1")
|
||||
);
|
||||
if (ObjUtil.isNull(nextRole)) throw new ResultException("系统未配置粮食与物资管理科角色");
|
||||
|
||||
List<User> nextUserList = userService.list(new QueryWrapper<User>().lambda()
|
||||
.like(User::getRoles, nextRole.getId())
|
||||
);
|
||||
|
||||
// 5.添加下一步流程环节
|
||||
if (CollUtil.isEmpty(nextUserList)) throw new ResultException("系统未配置粮食与物资管理科账号");
|
||||
List<WorkFlowStep> nextWorkFlowStepList = new ArrayList<WorkFlowStep>();
|
||||
for (User nextUser : nextUserList) {
|
||||
WorkFlowStep nextWorkFlowStep = new WorkFlowStep(workFlow, WorkFlowStepTypeEnum.APPROVAL.getType(),
|
||||
nextUser.getId(), WorkFlowStepStatusEnum.NOT_START.getStatus(), "");
|
||||
nextWorkFlowStepList.add(nextWorkFlowStep);
|
||||
}
|
||||
flag = workFlowStepService.saveBatch(nextWorkFlowStepList);
|
||||
|
||||
List<WorkFlowNotice> nextWorkFlowNoticeList = new ArrayList<WorkFlowNotice>();
|
||||
// 6.通知粮食与物资管理科(角色)
|
||||
for (User nextUser : nextUserList) {
|
||||
String title =
|
||||
user.getUserName() + "的" + WorkFlowTypeEnum.valueOf(workFlow.getType().toUpperCase()).getName() +
|
||||
"待您审批";
|
||||
WorkFlowNotice workFlowNotice = new WorkFlowNotice(title, workFlow, nextUser.getId());
|
||||
nextWorkFlowNoticeList.add(workFlowNotice);
|
||||
}
|
||||
flag = workFlowNoticeService.saveBatch(nextWorkFlowNoticeList);
|
||||
|
||||
if (flag){
|
||||
return AjaxResult.ok().msg("审批成功");
|
||||
}else {
|
||||
throw new ResultException("审批失败");
|
||||
}
|
||||
}
|
||||
|
||||
@Transactional(rollbackFor = Exception.class)
|
||||
public AjaxResult third(WorkFlowStepVo vo, WorkFlow workFlow, WorkFlowStep workFlowStep) {
|
||||
|
||||
// 1.流程环节进行变更
|
||||
workFlowStep.setStatus(WorkFlowStepStatusEnum.PASS.getStatus());
|
||||
workFlowStep.setRemarks(vo.getRemarks());
|
||||
boolean flag = workFlowStepService.updateById(workFlowStep);
|
||||
|
||||
// 2.记录流程环节日志
|
||||
WorkFlowStepLog workFlowStepLog = new WorkFlowStepLog(workFlowStep, workFlow.getData());
|
||||
flag = workFlowStepLogService.save(workFlowStepLog);
|
||||
|
||||
// 3.流程完结
|
||||
workFlow.setStep(workFlow.getStep() + 1);
|
||||
workFlow.setStepType(WorkFlowStepTypeEnum.END.getType());
|
||||
workFlow.setStatus(WorkFlowStatusEnum.PASS.getStatus());
|
||||
flag = workFlowService.updateById(workFlow);
|
||||
|
||||
// 4.添加完结流程环节
|
||||
WorkFlowStep doneWorkFlowStep = new WorkFlowStep(workFlow, WorkFlowStepTypeEnum.END.getType(),
|
||||
StpUtil.getLoginIdAsString(), WorkFlowStepStatusEnum.DONE.getStatus(), "");
|
||||
flag = workFlowStepService.save(doneWorkFlowStep);
|
||||
|
||||
// 5.记录完结流程环节日志
|
||||
WorkFlowStepLog doneWorkFlowStepLog = new WorkFlowStepLog(doneWorkFlowStep, workFlow.getData());
|
||||
flag = workFlowStepLogService.save(doneWorkFlowStepLog);
|
||||
|
||||
|
||||
// 6.通知发起人
|
||||
String title =
|
||||
"您的" + WorkFlowTypeEnum.valueOf(workFlow.getType().toUpperCase()).getName() +
|
||||
"已通过审批";
|
||||
WorkFlowNotice workFlowNotice = new WorkFlowNotice(title, workFlow, workFlow.getUserId());
|
||||
flag = workFlowNoticeService.save(workFlowNotice);
|
||||
|
||||
if (flag){
|
||||
return AjaxResult.ok().msg("审批成功");
|
||||
}else {
|
||||
throw new ResultException("审批失败");
|
||||
}
|
||||
}
|
||||
|
||||
@Override
|
||||
public String getName() {
|
||||
return "goods";
|
||||
}
|
||||
}
|
|
@ -157,7 +157,7 @@ public class LeaveWorkFlowService implements IWorkFlowType {
|
|||
// 2.1 请假流程第二步 上级领导账号审批或直接结束
|
||||
return second(vo, workFlow, workFlowStep);
|
||||
case 3:
|
||||
// 2.2 请假流程第三步 沈总账号审批
|
||||
// 2.2 请假流程第三步 总经理账号审批
|
||||
return third(vo, workFlow, workFlowStep);
|
||||
default:
|
||||
throw new ResultException("流程环节错误");
|
||||
|
@ -266,25 +266,25 @@ public class LeaveWorkFlowService implements IWorkFlowType {
|
|||
workFlow.setStatus(WorkFlowStatusEnum.ACTIVE.getStatus());
|
||||
flag = workFlowService.updateById(workFlow);
|
||||
|
||||
// 4.找到沈总账号
|
||||
// 4.找到总经理账号
|
||||
Config admin = configService.getOne(new QueryWrapper<Config>().lambda()
|
||||
.eq(Config::getParamKey, "sys.admin")
|
||||
.last("limit 1")
|
||||
);
|
||||
if (ObjUtil.isNull(admin)) throw new ResultException("系统未配置沈总账号");
|
||||
if (ObjUtil.isNull(admin)) throw new ResultException("系统未配置总经理账号");
|
||||
|
||||
User adminUser = userService.getOne(new QueryWrapper<User>().lambda()
|
||||
.eq(User::getLoginName, admin.getParamValue())
|
||||
.last("limit 1")
|
||||
);
|
||||
if (ObjUtil.isNull(adminUser)) throw new ResultException("系统未配置沈总账号");
|
||||
if (ObjUtil.isNull(adminUser)) throw new ResultException("系统未配置总经理账号");
|
||||
|
||||
// 5.添加下一步流程环节
|
||||
WorkFlowStep nextWorkFlowStep = new WorkFlowStep(workFlow, WorkFlowStepTypeEnum.APPROVAL.getType(),
|
||||
adminUser.getId(), WorkFlowStepStatusEnum.NOT_START.getStatus(), "");
|
||||
flag = workFlowStepService.save(nextWorkFlowStep);
|
||||
|
||||
// 6.通知沈总账号
|
||||
// 6.通知总经理账号
|
||||
User user = userService.getById(workFlow.getUserId());
|
||||
String title =
|
||||
user.getUserName() + "的" + WorkFlowTypeEnum.valueOf(workFlow.getType().toUpperCase()).getName() +
|
||||
|
|
|
@ -161,7 +161,7 @@ public class RepairWorkFlowService implements IWorkFlowType {
|
|||
// 2.1维修决算申报第二步 部门或库点负责人审批审批
|
||||
return second(vo, workFlow, workFlowStep);
|
||||
case 3:
|
||||
// 2.2 维修决算申报第三步 沈总审批审批
|
||||
// 2.2 维修决算申报第三步 总经理审批审批
|
||||
return third(vo, workFlow, workFlowStep);
|
||||
default:
|
||||
throw new ResultException("流程环节错误");
|
||||
|
@ -186,25 +186,25 @@ public class RepairWorkFlowService implements IWorkFlowType {
|
|||
workFlow.setStatus(WorkFlowStatusEnum.ACTIVE.getStatus());
|
||||
flag = workFlowService.updateById(workFlow);
|
||||
|
||||
// 4.找到沈总账号
|
||||
// 4.找到总经理账号
|
||||
Config admin = configService.getOne(new QueryWrapper<Config>().lambda()
|
||||
.eq(Config::getParamKey, "sys.admin")
|
||||
.last("limit 1")
|
||||
);
|
||||
if (ObjUtil.isNull(admin)) throw new ResultException("系统未配置沈总账号");
|
||||
if (ObjUtil.isNull(admin)) throw new ResultException("系统未配置总经理账号");
|
||||
|
||||
User adminUser = userService.getOne(new QueryWrapper<User>().lambda()
|
||||
.eq(User::getLoginName, admin.getParamValue())
|
||||
.last("limit 1")
|
||||
);
|
||||
if (ObjUtil.isNull(adminUser)) throw new ResultException("系统未配置沈总账号");
|
||||
if (ObjUtil.isNull(adminUser)) throw new ResultException("系统未配置总经理账号");
|
||||
|
||||
// 5.添加下一步流程环节
|
||||
WorkFlowStep nextWorkFlowStep = new WorkFlowStep(workFlow, WorkFlowStepTypeEnum.APPROVAL.getType(),
|
||||
adminUser.getId(), WorkFlowStepStatusEnum.NOT_START.getStatus(), "");
|
||||
flag = workFlowStepService.save(nextWorkFlowStep);
|
||||
|
||||
// 6.通知沈总账号
|
||||
// 6.通知总经理账号
|
||||
String title =
|
||||
user.getUserName() + "的" + WorkFlowTypeEnum.valueOf(workFlow.getType().toUpperCase()).getName() +
|
||||
"待您审批";
|
||||
|
|
|
@ -81,25 +81,25 @@ public class RotationWorkFlowService implements IWorkFlowType {
|
|||
workFlow.setStatus(WorkFlowStatusEnum.ACTIVE.getStatus());
|
||||
boolean flag = workFlowService.updateById(workFlow);
|
||||
|
||||
// 2.找到沈总账号
|
||||
// 2.找到总经理账号
|
||||
Config admin = configService.getOne(new QueryWrapper<Config>().lambda()
|
||||
.eq(Config::getParamKey, "sys.admin")
|
||||
.last("limit 1")
|
||||
);
|
||||
if (ObjUtil.isNull(admin)) throw new ResultException("系统未配置沈总账号");
|
||||
if (ObjUtil.isNull(admin)) throw new ResultException("系统未配置总经理账号");
|
||||
|
||||
User adminUser = userService.getOne(new QueryWrapper<User>().lambda()
|
||||
.eq(User::getLoginName, admin.getParamValue())
|
||||
.last("limit 1")
|
||||
);
|
||||
if (ObjUtil.isNull(adminUser)) throw new ResultException("系统未配置沈总账号");
|
||||
if (ObjUtil.isNull(adminUser)) throw new ResultException("系统未配置总经理账号");
|
||||
|
||||
// 3.添加下一步流程环节
|
||||
WorkFlowStep nextWorkFlowStep = new WorkFlowStep(workFlow, WorkFlowStepTypeEnum.APPROVAL.getType(),
|
||||
adminUser.getId(), WorkFlowStepStatusEnum.NOT_START.getStatus(), "");
|
||||
flag = workFlowStepService.save(nextWorkFlowStep);
|
||||
|
||||
// 4.通知沈总账号
|
||||
// 4.通知总经理账号
|
||||
String title =
|
||||
user.getUserName() + "的" + WorkFlowTypeEnum.valueOf(workFlow.getType().toUpperCase()).getName() +
|
||||
"待您审批";
|
||||
|
@ -127,10 +127,10 @@ public class RotationWorkFlowService implements IWorkFlowType {
|
|||
// 2.判断执行哪个方法
|
||||
switch (workFlow.getStep()) {
|
||||
case 2:
|
||||
// 2.1 轮换申报第二步 沈总审批
|
||||
// 2.1 储备粮轮换申报第二步 总经理审批
|
||||
return second(vo, workFlow, workFlowStep);
|
||||
case 3:
|
||||
// 2.2 轮换申报第三步 粮食与物资管理科(角色)审批
|
||||
// 2.2 储备粮轮换申报第三步 粮食与物资管理科(角色)审批
|
||||
return third(vo, workFlow, workFlowStep);
|
||||
default:
|
||||
throw new ResultException("流程环节错误");
|
||||
|
|
|
@ -8,9 +8,9 @@ public enum WorkFlowTypeEnum {
|
|||
FUMIGATION("fumigation", "熏蒸申报"),
|
||||
|
||||
/**
|
||||
* 轮换申报
|
||||
* 储备粮轮换申报
|
||||
*/
|
||||
ROTATION("rotation", "轮换申报"),
|
||||
ROTATION("rotation", "储备粮轮换申报"),
|
||||
|
||||
/**
|
||||
* 药剂领用
|
||||
|
@ -31,6 +31,11 @@ public enum WorkFlowTypeEnum {
|
|||
* 请假申请
|
||||
*/
|
||||
LEAVE("leave", "请假申请"),
|
||||
|
||||
/**
|
||||
* 商品粮轮换申报
|
||||
*/
|
||||
GOODS("goods", "商品粮轮换申报"),
|
||||
;
|
||||
|
||||
|
||||
|
|
Loading…
Reference in New Issue