退伍复学修改
This commit is contained in:
@@ -5,6 +5,7 @@ import java.util.List;
|
||||
import com.srs.common.doman.vo.TeacherVo;
|
||||
import com.srs.routine.domain.SysDisBasic;
|
||||
import com.baomidou.mybatisplus.core.mapper.BaseMapper;
|
||||
import org.apache.ibatis.annotations.Options;
|
||||
import org.apache.ibatis.annotations.Param;
|
||||
|
||||
/**
|
||||
@@ -32,7 +33,7 @@ public interface SysDisBasicMapper extends BaseMapper<SysDisBasic> {
|
||||
List<SysDisBasic> selectSysDisBasicList(SysDisBasic sysDisBasic);
|
||||
|
||||
// 学号查询
|
||||
|
||||
List<TeacherVo> getShenDataInfo(String roleName);
|
||||
|
||||
/**
|
||||
* 新增退伍复学申请
|
||||
@@ -40,6 +41,7 @@ public interface SysDisBasicMapper extends BaseMapper<SysDisBasic> {
|
||||
* @param sysDisBasic 退伍复学申请
|
||||
* @return 结果
|
||||
*/
|
||||
@Options(useGeneratedKeys = true, keyProperty = "id", keyColumn = "id")
|
||||
int insertSysDisBasic(SysDisBasic sysDisBasic);
|
||||
|
||||
/**
|
||||
@@ -71,6 +73,6 @@ public interface SysDisBasicMapper extends BaseMapper<SysDisBasic> {
|
||||
* @param
|
||||
* @return
|
||||
*/
|
||||
TeacherVo getCounselorInfo(String stId);
|
||||
TeacherVo getCounselorInfo(@Param("stId") String stId);
|
||||
|
||||
}
|
||||
|
||||
@@ -3,6 +3,7 @@ package com.srs.routine.service.impl;
|
||||
import java.util.HashMap;
|
||||
import java.util.List;
|
||||
import java.util.Map;
|
||||
import java.io.InputStream;
|
||||
|
||||
import com.srs.common.core.domain.AjaxResult;
|
||||
import com.srs.common.doman.dto.ProcessResultDto;
|
||||
@@ -10,6 +11,9 @@ import com.srs.common.doman.vo.TeacherVo;
|
||||
import com.srs.common.exception.ServiceException;
|
||||
import com.srs.common.utils.SecurityUtils;
|
||||
import com.srs.flowable.service.IFlowDefinitionService;
|
||||
import com.srs.routine.mapper.RtEnlistmentReserveMapper;
|
||||
import com.srs.routine.mapper.RtStuLeaveApplicationMapper;
|
||||
import com.srs.routine.mapper.RtStuQuitSchoolMapper;
|
||||
import lombok.extern.slf4j.Slf4j;
|
||||
import org.flowable.engine.IdentityService;
|
||||
import org.flowable.engine.TaskService;
|
||||
@@ -67,13 +71,28 @@ public class SysDisBasicServiceImpl extends ServiceImpl<SysDisBasicMapper,SysDis
|
||||
if (inserData != null){
|
||||
throw new ServiceException("申请已提交,请勿重复提交", 500);
|
||||
}
|
||||
// sysDisBasic.setStId(String.valueOf(SecurityUtils.getUserId()));
|
||||
// ProcessResultDto processResultDto = startBasicProcess(sysDisBasic);
|
||||
// if (processResultDto != null){
|
||||
// sysDisBasic.setProcessId(processResultDto.getProcessInstanceId());
|
||||
// sysDisBasic.setDeployId(processResultDto.getDeploymentId());
|
||||
// }
|
||||
return sysDisBasicMapper.insertSysDisBasic(sysDisBasic);
|
||||
if (sysDisBasic.getFxId() == null || sysDisBasic.getFxId().trim().isEmpty()) {
|
||||
String genFxId = (sysDisBasic.getStId() == null ? SecurityUtils.getUserId().toString() : sysDisBasic.getStId()) + "-" + System.currentTimeMillis();
|
||||
sysDisBasic.setFxId(genFxId);
|
||||
}
|
||||
if ((sysDisBasic.getFxTime() == null || sysDisBasic.getFxTime().trim().isEmpty()) && sysDisBasic.getTimes() != null) {
|
||||
sysDisBasic.setFxTime(sysDisBasic.getTimes());
|
||||
}
|
||||
int insertData = sysDisBasicMapper.insertSysDisBasic(sysDisBasic);
|
||||
if (insertData <= 0) {
|
||||
throw new ServiceException("申请表插入失败", 500);
|
||||
}
|
||||
|
||||
Long applyId = sysDisBasic.getId();
|
||||
if (applyId == null) {
|
||||
throw new ServiceException("申请表 ID 生成失败,无法继续操作", 500);
|
||||
}
|
||||
ProcessResultDto processResultDto = startBasicProcess(sysDisBasic);
|
||||
if (processResultDto != null){
|
||||
sysDisBasic.setProcessId(processResultDto.getProcessInstanceId());
|
||||
sysDisBasic.setDeployId(processResultDto.getDeploymentId());
|
||||
}
|
||||
return insertData;
|
||||
}
|
||||
|
||||
/**
|
||||
@@ -116,12 +135,18 @@ public class SysDisBasicServiceImpl extends ServiceImpl<SysDisBasicMapper,SysDis
|
||||
|
||||
@Autowired
|
||||
IFlowDefinitionService flowDefinitionService;
|
||||
|
||||
@Autowired
|
||||
TaskService taskService;
|
||||
|
||||
@Autowired
|
||||
IdentityService identityService;
|
||||
|
||||
@Autowired
|
||||
private RtStuLeaveApplicationMapper rtStuLeaveApplicationMapper;
|
||||
|
||||
@Autowired
|
||||
private RtEnlistmentReserveMapper rtEnlistmentReserveMapper;
|
||||
/**
|
||||
* 开启请假工作流
|
||||
*
|
||||
@@ -130,16 +155,32 @@ public class SysDisBasicServiceImpl extends ServiceImpl<SysDisBasicMapper,SysDis
|
||||
private ProcessResultDto startBasicProcess(SysDisBasic sysDisBasic) {
|
||||
|
||||
Map<String, Object> variables = new HashMap<>();
|
||||
variables.put("fxId", sysDisBasic.getFxId());
|
||||
variables.put("fxTime", sysDisBasic.getFxTime());
|
||||
variables.put("stId", sysDisBasic.getStId());
|
||||
TeacherVo counselorInfo = sysDisBasicMapper.getCounselorInfo(sysDisBasic.getStId());
|
||||
// 把辅导员的userId放到approval中
|
||||
variables.put("basicId", sysDisBasic.getId().toString());
|
||||
variables.put("conversion", sysDisBasic.getConversion());
|
||||
variables.put("stuId", sysDisBasic.getStId());
|
||||
|
||||
if ("N".equals(sysDisBasic.getConversion())) { // 修复字符串比较方式
|
||||
TeacherVo counselorInfo = rtEnlistmentReserveMapper.getCounselorInfo(sysDisBasic.getStId());
|
||||
if (counselorInfo == null) {
|
||||
log.error("未查询到辅导员信息,stuId: {}", sysDisBasic.getStId());
|
||||
return null; // 避免空指针
|
||||
}
|
||||
variables.put("approval", counselorInfo.getUserId());
|
||||
variables.put("deptId", counselorInfo.getDeptId());
|
||||
// 无需重复设置 conversion = "N",因为已经通过上面的代码设置过了
|
||||
}else {
|
||||
List<TeacherVo> zjcData = sysDisBasicMapper.getShenDataInfo("招就处");
|
||||
if (zjcData == null) {
|
||||
log.error("未查询到辅导员信息,stuId: {}", sysDisBasic.getStId());
|
||||
return null; // 避免空指针
|
||||
}
|
||||
variables.put("approval", zjcData.get(0).getUserId());
|
||||
variables.put("deptId", zjcData.get(0).getDeptId());
|
||||
}
|
||||
//
|
||||
|
||||
//flow_nrblbjev:6:1020016
|
||||
AjaxResult ajaxResult = flowDefinitionService.startProcessInstanceById("flow_nrblbjev:6:1020016", variables);
|
||||
//flow_m4npextk:28:257686 flow_m4npextk:31:755004
|
||||
AjaxResult ajaxResult = flowDefinitionService.startProcessInstanceById("flow_nrblbjev:10:1120028", variables);
|
||||
String code = ajaxResult.get("code").toString();
|
||||
if (code.equals("200")) {
|
||||
|
||||
@@ -162,8 +203,8 @@ public class SysDisBasicServiceImpl extends ServiceImpl<SysDisBasicMapper,SysDis
|
||||
// 完成待办任务列表
|
||||
for (Task task : tasks) {
|
||||
String taskId = task.getId();
|
||||
String leaveId = taskService.getVariable(taskId, "fxId").toString();
|
||||
if (leaveId.equals(sysDisBasic.getFxId())) {
|
||||
String leaveId = taskService.getVariable(taskId, "basicId").toString();
|
||||
if (leaveId.equals(sysDisBasic.getId().toString())) {
|
||||
taskService.complete(task.getId(), variables);
|
||||
}
|
||||
}
|
||||
|
||||
@@ -92,7 +92,7 @@ PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN"
|
||||
LEFT JOIN srs_class b ON a.class_id = b.class_id
|
||||
LEFT JOIN cph_teacher c ON b.teacher_id = c.teacher_id
|
||||
LEFT JOIN sys_user d ON c.employee_id = d.user_name
|
||||
WHERE a.stu_id = #{stuId}
|
||||
WHERE a.stu_id = #{stId}
|
||||
</select>
|
||||
|
||||
|
||||
@@ -161,6 +161,16 @@ PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN"
|
||||
</select>
|
||||
|
||||
|
||||
<!-- 获取审批用户信息 -->
|
||||
<select id="getShenDataInfo" resultType="com.srs.common.doman.vo.TeacherVo">
|
||||
SELECT a.user_id userId, a.dept_id deptId, a.nick_name userNick, a.user_name userName
|
||||
FROM sys_user a
|
||||
LEFT JOIN sys_user_role b ON a.user_id = b.user_id
|
||||
LEFT JOIN sys_role c ON b.role_id = c.role_id
|
||||
WHERE c.role_name = #{roleName}
|
||||
</select>
|
||||
|
||||
|
||||
<insert id="insertSysDisBasic" parameterType="SysDisBasic" useGeneratedKeys="true" keyProperty="id">
|
||||
insert into sys_dis_basic
|
||||
<trim prefix="(" suffix=")" suffixOverrides=",">
|
||||
|
||||
Reference in New Issue
Block a user