package com.mindskip.xzs.controller.student; import com.mindskip.xzs.base.BaseApiController; import com.mindskip.xzs.base.RestResponse; import com.mindskip.xzs.domain.Subject; import com.mindskip.xzs.domain.User; import com.mindskip.xzs.service.SubjectService; import com.mindskip.xzs.viewmodel.student.education.SubjectEditRequestVM; import com.mindskip.xzs.viewmodel.student.education.SubjectVM; import lombok.AllArgsConstructor; import org.springframework.web.bind.annotation.*; import java.util.List; import java.util.stream.Collectors; /** * @version 2.2.0 * @description: 学科 * Copyright (C), 2020-2021, 武汉思维跳跃科技有限公司 * @date 2021 /9/7 9:45 */ @RestController("StudentEducationController") @RequestMapping(value = "/api/student/education") @AllArgsConstructor public class EducationController extends BaseApiController { private final SubjectService subjectService; /** * 学科列表 * * @return the rest response */ @RequestMapping(value = "/subject/list", method = RequestMethod.POST) public RestResponse> list() { User user = getCurrentUser(); List subjects = subjectService.getSubjectByLevel(user.getUserLevel()); List subjectVMS = subjects.stream().map(d -> { SubjectVM subjectVM = modelMapper.map(d, SubjectVM.class); subjectVM.setId(String.valueOf(d.getId())); return subjectVM; }).collect(Collectors.toList()); return RestResponse.ok(subjectVMS); } /** * 查询学科 * * @param id the id * @return the rest response */ @RequestMapping(value = "/subject/select/{id}", method = RequestMethod.POST) public RestResponse select(@PathVariable Integer id) { Subject subject = subjectService.selectById(id); SubjectEditRequestVM vm = modelMapper.map(subject, SubjectEditRequestVM.class); return RestResponse.ok(vm); } }