|
|
|
@ -20,7 +20,6 @@ import java.util.Set;
|
|
|
|
public class CompetitiveEnvironmentAnalysisStepFourServiceImpl implements CompetitiveEnvironmentAnalysisStepFourService {
|
|
|
|
public class CompetitiveEnvironmentAnalysisStepFourServiceImpl implements CompetitiveEnvironmentAnalysisStepFourService {
|
|
|
|
private static final String TASK_KEY = "competitive-environment-analysis";
|
|
|
|
private static final String TASK_KEY = "competitive-environment-analysis";
|
|
|
|
private static final Set<String> STRATEGY_TYPES = new HashSet<>(Arrays.asList("so", "wo", "st", "wt"));
|
|
|
|
private static final Set<String> STRATEGY_TYPES = new HashSet<>(Arrays.asList("so", "wo", "st", "wt"));
|
|
|
|
private static final Set<String> EVALUATION_OPTIONS = new HashSet<>(Arrays.asList("优势明显,建议快速进入", "机会大于挑战,建议积极布局", "挑战与机会并存,需谨慎推进", "劣势突出,建议暂缓进入"));
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
@Autowired private StudentTrainingAnswerService studentTrainingAnswerService;
|
|
|
|
@Autowired private StudentTrainingAnswerService studentTrainingAnswerService;
|
|
|
|
|
|
|
|
|
|
|
|
@ -30,8 +29,8 @@ public class CompetitiveEnvironmentAnalysisStepFourServiceImpl implements Compet
|
|
|
|
if (user.getRoleId() != 4) throw new ServiceException(HttpStatus.FORBIDDEN, "仅学生可进行实训校验");
|
|
|
|
if (user.getRoleId() != 4) throw new ServiceException(HttpStatus.FORBIDDEN, "仅学生可进行实训校验");
|
|
|
|
StudentTrainingAnswer savedAnswer = studentTrainingAnswerService.get(TASK_KEY, null, user);
|
|
|
|
StudentTrainingAnswer savedAnswer = studentTrainingAnswerService.get(TASK_KEY, null, user);
|
|
|
|
if (savedAnswer == null || StringUtils.isBlank(savedAnswer.getStep3Answer())) throw new ServiceException(HttpStatus.BAD_REQUEST, "请先完成并保存第 3 步的 SWOT 策略");
|
|
|
|
if (savedAnswer == null || StringUtils.isBlank(savedAnswer.getStep3Answer())) throw new ServiceException(HttpStatus.BAD_REQUEST, "请先完成并保存第 3 步的 SWOT 策略");
|
|
|
|
if (request == null || !EVALUATION_OPTIONS.contains(StringUtils.trimToEmpty(request.getOverallEvaluation())) || StringUtils.isBlank(request.getCoreRiskOne()) || StringUtils.isBlank(request.getCoreRiskTwo()) || StringUtils.isBlank(request.getConclusion())) {
|
|
|
|
if (request == null || StringUtils.isBlank(request.getCoreRiskOne()) || StringUtils.isBlank(request.getCoreRiskTwo()) || StringUtils.isBlank(request.getConclusion())) {
|
|
|
|
throw new ServiceException(HttpStatus.BAD_REQUEST, "请完整填写总体判断、至少 2 个风险点和总结结论");
|
|
|
|
throw new ServiceException(HttpStatus.BAD_REQUEST, "请至少填写 2 个核心风险点和总结 SWOT 竞争环境评估结论");
|
|
|
|
}
|
|
|
|
}
|
|
|
|
if (request.getPriorities() == null || request.getPriorities().size() != STRATEGY_TYPES.size()) throw new ServiceException(HttpStatus.BAD_REQUEST, "请完成 SO、WO、ST、WT 四类策略的优先级排序");
|
|
|
|
if (request.getPriorities() == null || request.getPriorities().size() != STRATEGY_TYPES.size()) throw new ServiceException(HttpStatus.BAD_REQUEST, "请完成 SO、WO、ST、WT 四类策略的优先级排序");
|
|
|
|
Set<String> submittedTypes = new HashSet<>();
|
|
|
|
Set<String> submittedTypes = new HashSet<>();
|
|
|
|
|