Merge branch 'master' of http://47.99.164.66:3000/hzdyjs-xg/all-project
This commit is contained in:
commit
b0eba0a07b
8 files changed
+152
-64
No files matched your search
+3
-3
@@ -47,17 +47,17 @@ public class ZsjyEnrollmentInfoVo implements Serializable {
|
||||
private String idCard;
|
||||
|
||||
/**
|
||||
* 性别(0-男 1-女)
|
||||
* 性别(M/F 或 0/1)
|
||||
*/
|
||||
@ExcelProperty(value = "性别", converter = ExcelDictConvert.class)
|
||||
@ExcelDictFormat(dictType = "sys_gender")
|
||||
@ExcelDictFormat(readConverterExp = "M=男,F=女,0=男,1=女,2=女")
|
||||
private String gender;
|
||||
|
||||
/**
|
||||
* 是否住校(0-否 1-是)
|
||||
*/
|
||||
@ExcelProperty(value = "是否住校", converter = ExcelDictConvert.class)
|
||||
@ExcelDictFormat(dictType = "sys_yes_no")
|
||||
@ExcelDictFormat(readConverterExp = "0=否,1=是,Y=是,N=否")
|
||||
private Integer isBoarding;
|
||||
|
||||
/**
|
||||
|
||||
+15
@@ -229,11 +229,26 @@ public class ZsjyEnrollmentProcessVo implements Serializable {
|
||||
*/
|
||||
private String gender;
|
||||
|
||||
/**
|
||||
* 学院名称 - 从enrollment_info表获取
|
||||
*/
|
||||
private String collegeName;
|
||||
|
||||
/**
|
||||
* 专业名称 - 从enrollment_info表获取
|
||||
*/
|
||||
private String majorName;
|
||||
|
||||
/**
|
||||
* 报考专业 - 从enrollment_info表获取
|
||||
*/
|
||||
private String appliedMajor;
|
||||
|
||||
/**
|
||||
* 专业代码 - 从enrollment_info表获取
|
||||
*/
|
||||
private String majorCode;
|
||||
|
||||
/**
|
||||
* 是否住校(0-否 1-是)- 从enrollment_info表获取
|
||||
*/
|
||||
|
||||
+1
-1
@@ -35,6 +35,6 @@ public class ZsjyEnrollmentRegisterExportVo implements Serializable {
|
||||
@ExcelProperty(value = "预交学费")
|
||||
private String prepaidTuitionFlag;
|
||||
|
||||
@ExcelProperty(value = "备注(时间、经办人)")
|
||||
@ExcelProperty(value = "录取时间")
|
||||
private String remarkInfo;
|
||||
}
|
||||
+58
-17
@@ -16,7 +16,9 @@ import org.dromara.zsjy.domain.bo.ZsjyEnrollmentProcessBo;
|
||||
import org.dromara.zsjy.domain.vo.ZsjyEnrollmentProcessVo;
|
||||
import org.dromara.zsjy.domain.vo.ZsjyEnrollmentRegisterExportVo;
|
||||
import org.dromara.zsjy.domain.ZsjyEnrollmentProcess;
|
||||
import org.dromara.zsjy.domain.ZsjyEnrollmentInfo;
|
||||
import org.dromara.zsjy.mapper.ZsjyEnrollmentProcessMapper;
|
||||
import org.dromara.zsjy.mapper.ZsjyEnrollmentInfoMapper;
|
||||
import org.dromara.zsjy.service.IZsjyEnrollmentProcessService;
|
||||
|
||||
import java.util.List;
|
||||
@@ -24,6 +26,7 @@ import java.util.Collection;
|
||||
import java.util.Date;
|
||||
import java.util.Set;
|
||||
import java.util.ArrayList;
|
||||
import java.util.LinkedHashSet;
|
||||
import java.text.SimpleDateFormat;
|
||||
|
||||
/**
|
||||
@@ -37,7 +40,11 @@ import java.text.SimpleDateFormat;
|
||||
@Service
|
||||
public class ZsjyEnrollmentProcessServiceImpl implements IZsjyEnrollmentProcessService {
|
||||
|
||||
/** 报名状态:待审核 */
|
||||
private static final String ENROLLMENT_STATUS_PENDING = "0";
|
||||
|
||||
private final ZsjyEnrollmentProcessMapper baseMapper;
|
||||
private final ZsjyEnrollmentInfoMapper enrollmentInfoMapper;
|
||||
|
||||
/**
|
||||
* 查询招生录取流程状态
|
||||
@@ -167,10 +174,42 @@ public class ZsjyEnrollmentProcessServiceImpl implements IZsjyEnrollmentProcessS
|
||||
@Override
|
||||
@Transactional(rollbackFor = Exception.class)
|
||||
public Boolean deleteWithValidByIds(Collection<Long> ids, Boolean isValid) {
|
||||
if (ids == null || ids.isEmpty()) {
|
||||
return false;
|
||||
}
|
||||
if (isValid) {
|
||||
// 可以添加删除前的校验逻辑
|
||||
}
|
||||
return baseMapper.deleteBatchIds(ids) > 0;
|
||||
|
||||
Set<Long> enrollmentIds = new LinkedHashSet<>();
|
||||
for (Long id : ids) {
|
||||
ZsjyEnrollmentProcess process = baseMapper.selectById(id);
|
||||
if (process != null && process.getEnrollmentId() != null) {
|
||||
enrollmentIds.add(process.getEnrollmentId());
|
||||
}
|
||||
}
|
||||
|
||||
boolean deleted = baseMapper.deleteBatchIds(ids) > 0;
|
||||
if (deleted) {
|
||||
for (Long enrollmentId : enrollmentIds) {
|
||||
revertEnrollmentToPendingAudit(enrollmentId);
|
||||
}
|
||||
}
|
||||
return deleted;
|
||||
}
|
||||
|
||||
/**
|
||||
* 删除流程后,将对应报名信息回退为待审核状态(不触发流程同步,避免重新创建流程)
|
||||
*/
|
||||
private void revertEnrollmentToPendingAudit(Long enrollmentId) {
|
||||
ZsjyEnrollmentInfo enrollmentInfo = enrollmentInfoMapper.selectById(enrollmentId);
|
||||
if (enrollmentInfo == null) {
|
||||
log.warn("删除流程后回退报名状态失败,报名记录不存在,enrollmentId={}", enrollmentId);
|
||||
return;
|
||||
}
|
||||
enrollmentInfo.setEnrollmentStatus(ENROLLMENT_STATUS_PENDING);
|
||||
enrollmentInfoMapper.updateById(enrollmentInfo);
|
||||
log.info("删除流程后已将报名ID:{} 状态回退为待审核", enrollmentId);
|
||||
}
|
||||
|
||||
/**
|
||||
@@ -465,24 +504,26 @@ public class ZsjyEnrollmentProcessServiceImpl implements IZsjyEnrollmentProcessS
|
||||
}
|
||||
|
||||
private String buildRegisterRemark(ZsjyEnrollmentProcessVo item) {
|
||||
if (StringUtils.isNotBlank(item.getRemark())) {
|
||||
return item.getRemark();
|
||||
Date admissionTime = resolveAdmissionTime(item);
|
||||
if (admissionTime == null) {
|
||||
return "";
|
||||
}
|
||||
StringBuilder remark = new StringBuilder();
|
||||
Date remarkTime = item.getPaymentConfirmTime() != null ? item.getPaymentConfirmTime()
|
||||
: (item.getAdmissionTime() != null ? item.getAdmissionTime() : item.getFinalAuditTime());
|
||||
if (remarkTime != null) {
|
||||
remark.append(new SimpleDateFormat("M.d").format(remarkTime));
|
||||
return new SimpleDateFormat("yyyy-MM-dd HH:mm:ss").format(admissionTime);
|
||||
}
|
||||
|
||||
/**
|
||||
* 解析录取时间:优先录取完成时间,其次录取处理、最终确认、缴费确认时间
|
||||
*/
|
||||
private Date resolveAdmissionTime(ZsjyEnrollmentProcessVo item) {
|
||||
if (item.getCompletionTime() != null) {
|
||||
return item.getCompletionTime();
|
||||
}
|
||||
String handler = StringUtils.blankToDefault(item.getAdmissionUserName(),
|
||||
StringUtils.blankToDefault(item.getFinalAuditUserName(),
|
||||
StringUtils.blankToDefault(item.getInfoAuditUserName(), item.getCurrentHandlerName())));
|
||||
if (StringUtils.isNotBlank(handler)) {
|
||||
if (!remark.isEmpty()) {
|
||||
remark.append(" ");
|
||||
}
|
||||
remark.append(handler);
|
||||
if (item.getAdmissionTime() != null) {
|
||||
return item.getAdmissionTime();
|
||||
}
|
||||
return remark.toString();
|
||||
if (item.getFinalAuditTime() != null) {
|
||||
return item.getFinalAuditTime();
|
||||
}
|
||||
return item.getPaymentConfirmTime();
|
||||
}
|
||||
}
|
||||
+10
-1
@@ -77,7 +77,10 @@
|
||||
<result property="updateTime" column="update_time"/>
|
||||
<!-- 额外字段,用于合并enrollment_info表的数据 -->
|
||||
<result property="gender" column="gender"/>
|
||||
<result property="collegeName" column="collegeName"/>
|
||||
<result property="majorName" column="majorName"/>
|
||||
<result property="appliedMajor" column="appliedMajor"/>
|
||||
<result property="majorCode" column="majorCode"/>
|
||||
<result property="isBoarding" column="isBoarding"/>
|
||||
<result property="province" column="province"/>
|
||||
</resultMap>
|
||||
@@ -144,7 +147,13 @@
|
||||
COALESCE(p.create_time, ei.create_time) as create_time,
|
||||
COALESCE(p.update_by, ei.update_by) as update_by,
|
||||
COALESCE(p.update_time, ei.update_time) as update_time,
|
||||
ei.gender, ei.applied_major as majorName, ei.is_boarding as isBoarding, ei.exam_region as province
|
||||
ei.gender,
|
||||
ei.collage_name as collegeName,
|
||||
ei.applied_major as majorName,
|
||||
ei.applied_major as appliedMajor,
|
||||
ei.major_code as majorCode,
|
||||
ei.is_boarding as isBoarding,
|
||||
ei.exam_region as province
|
||||
FROM zsjy_enrollment_info ei
|
||||
LEFT JOIN zsjy_enrollment_process p ON ei.id = p.enrollment_id AND p.deleted = '0'
|
||||
WHERE ei.deleted = '0'
|
||||
|
||||
Reference in new issue
Block a user