Commit 27ab940e by 梅存智

检查报名人数是否满了

parent 9182c7c1
...@@ -34,4 +34,5 @@ public interface EnrollRecordMapper extends BaseMapper<EnrollRecord> { ...@@ -34,4 +34,5 @@ public interface EnrollRecordMapper extends BaseMapper<EnrollRecord> {
GetEnrollVO getEnrollByProjectId(@Param("projectId")Long projectId); GetEnrollVO getEnrollByProjectId(@Param("projectId")Long projectId);
Integer selectEnrollCountByProjectId(@Param("projectId")Long projectId);
} }
...@@ -10,10 +10,12 @@ import com.yizhi.application.orm.id.IdGenerator; ...@@ -10,10 +10,12 @@ import com.yizhi.application.orm.id.IdGenerator;
import com.yizhi.core.application.context.ContextHolder; import com.yizhi.core.application.context.ContextHolder;
import com.yizhi.core.application.context.RequestContext; import com.yizhi.core.application.context.RequestContext;
import com.yizhi.core.application.event.EventWrapper; import com.yizhi.core.application.event.EventWrapper;
import com.yizhi.core.application.exception.BizException;
import com.yizhi.core.application.publish.CloudEventPublisher; import com.yizhi.core.application.publish.CloudEventPublisher;
import com.yizhi.core.application.task.AbstractTaskHandler; import com.yizhi.core.application.task.AbstractTaskHandler;
import com.yizhi.core.application.task.TaskExecutor; import com.yizhi.core.application.task.TaskExecutor;
import com.yizhi.enroll.application.enums.EvenType; import com.yizhi.enroll.application.enums.EvenType;
import com.yizhi.application.mapper.EnrollMapper;
import com.yizhi.application.mapper.EnrollRecordMapper; import com.yizhi.application.mapper.EnrollRecordMapper;
import com.yizhi.application.service.EnrollRecordService; import com.yizhi.application.service.EnrollRecordService;
import com.yizhi.application.service.EnrollService; import com.yizhi.application.service.EnrollService;
...@@ -24,6 +26,7 @@ import com.yizhi.enroll.application.vo.TrainningEnrollVO; ...@@ -24,6 +26,7 @@ import com.yizhi.enroll.application.vo.TrainningEnrollVO;
import com.yizhi.training.application.feign.TrainingProjectClient; import com.yizhi.training.application.feign.TrainingProjectClient;
import com.yizhi.training.application.vo.domain.TrainingProjectVo; import com.yizhi.training.application.vo.domain.TrainingProjectVo;
import com.yizhi.util.application.constant.QueueConstant; import com.yizhi.util.application.constant.QueueConstant;
import com.yizhi.util.application.constant.ReturnCode;
import com.yizhi.util.application.event.TrainingProjectEvent; import com.yizhi.util.application.event.TrainingProjectEvent;
import org.slf4j.Logger; import org.slf4j.Logger;
import org.slf4j.LoggerFactory; import org.slf4j.LoggerFactory;
...@@ -64,6 +67,9 @@ public class EnrollRecordServiceImpl extends ServiceImpl<EnrollRecordMapper, Enr ...@@ -64,6 +67,9 @@ public class EnrollRecordServiceImpl extends ServiceImpl<EnrollRecordMapper, Enr
@Autowired @Autowired
private TrainingProjectClient trainingProjectClient; private TrainingProjectClient trainingProjectClient;
@Autowired
EnrollMapper enrollMapper;
@Override @Override
public List<EnrollerVo> exportRegisteredList(Map<String, Object> map) { public List<EnrollerVo> exportRegisteredList(Map<String, Object> map) {
return enrollRecordMapper.exportRegisteredList(map); return enrollRecordMapper.exportRegisteredList(map);
...@@ -97,6 +103,15 @@ public class EnrollRecordServiceImpl extends ServiceImpl<EnrollRecordMapper, Enr ...@@ -97,6 +103,15 @@ public class EnrollRecordServiceImpl extends ServiceImpl<EnrollRecordMapper, Enr
} }
} }
//检查报名人数是否满了
Enroll enrollConfig = enrollService.selectByProjectId(trainingProjectId);
if(enrollConfig.getPersonLimitNum() > 0){
Integer count = enrollRecordMapper.selectEnrollCountByProjectId(trainingProjectId);
if(count != null && count >= enrollConfig.getPersonLimitNum()){
return null;
}
}
EnrollRecord enrollRecord = new EnrollRecord(); EnrollRecord enrollRecord = new EnrollRecord();
enrollRecord.setId(idGenerator.generate()); enrollRecord.setId(idGenerator.generate());
enrollRecord.setTrainingProjectId(trainingProjectId); enrollRecord.setTrainingProjectId(trainingProjectId);
...@@ -106,7 +121,7 @@ public class EnrollRecordServiceImpl extends ServiceImpl<EnrollRecordMapper, Enr ...@@ -106,7 +121,7 @@ public class EnrollRecordServiceImpl extends ServiceImpl<EnrollRecordMapper, Enr
//通过项目ID获取项目下学员是否需要审核 ,0:不需要审核,1:待审核 //通过项目ID获取项目下学员是否需要审核 ,0:不需要审核,1:待审核
Integer auditStatus = enrollService.queryNeedAuditByTrainingProjectId(trainingProjectId); Integer auditStatus = enrollService.queryNeedAuditByTrainingProjectId(trainingProjectId);
enrollRecord.setAuditStatus(auditStatus); enrollRecord.setAuditStatus(auditStatus);
Enroll enrollConfig = enrollService.selectByProjectId(trainingProjectId);
if (enrollConfig != null && enrollConfig.getEnablePay() != null && enrollConfig.getEnablePay() == 1) { if (enrollConfig != null && enrollConfig.getEnablePay() != null && enrollConfig.getEnablePay() == 1) {
enrollRecord.setExpenditure(enrollConfig.getActualPrice()); enrollRecord.setExpenditure(enrollConfig.getActualPrice());
} }
......
...@@ -127,4 +127,11 @@ ...@@ -127,4 +127,11 @@
a.audit_status=#{auditStatus} where a.id=#{id} a.audit_status=#{auditStatus} where a.id=#{id}
</update> </update>
<select id="selectEnrollCountByProjectId" resultType="java.lang.Integer">
SELECT COUNT(DISTINCT p.account_id)
FROM training_project a
LEFT JOIN tp_student_enroll_passed p ON a.id=p.training_project_id
WHERE a.id=#{projectId} AND a.enable_enroll=1 AND a.deleted=0
</select>
</mapper> </mapper>
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment