|
@@ -1,6 +1,9 @@
|
|
|
package com.yonge.cooleshow.teacher.controller;
|
|
|
|
|
|
+import com.alibaba.fastjson.JSONObject;
|
|
|
+import com.yonge.cooleshow.biz.dal.entity.Subject;
|
|
|
import com.yonge.cooleshow.biz.dal.entity.TeacherSubjectPrice;
|
|
|
+import com.yonge.cooleshow.biz.dal.service.SubjectService;
|
|
|
import com.yonge.cooleshow.biz.dal.service.SysUserService;
|
|
|
import com.yonge.cooleshow.biz.dal.service.TeacherSubjectPriceService;
|
|
|
import com.yonge.cooleshow.biz.dal.wrapper.TeacherSubjectPriceWrapper;
|
|
@@ -17,6 +20,7 @@ import org.springframework.web.bind.annotation.RestController;
|
|
|
|
|
|
import javax.annotation.Resource;
|
|
|
import java.util.List;
|
|
|
+import java.util.Map;
|
|
|
import java.util.stream.Collectors;
|
|
|
|
|
|
|
|
@@ -28,6 +32,8 @@ public class TeacherSubjectPriceController extends BaseController {
|
|
|
private TeacherSubjectPriceService teacherSubjectPriceService;
|
|
|
@Resource
|
|
|
private SysUserService sysUserService;
|
|
|
+ @Resource
|
|
|
+ private SubjectService subjectService;
|
|
|
|
|
|
@ApiOperation(value = "新增、修改老师课程价格配置")
|
|
|
@PostMapping("/saveOrUpdate")
|
|
@@ -58,7 +64,7 @@ public class TeacherSubjectPriceController extends BaseController {
|
|
|
TeacherSubjectPriceWrapper.TeacherSubjectPriceDto dto = new TeacherSubjectPriceWrapper.TeacherSubjectPriceDto();
|
|
|
String subjectIds = list.stream().map(e->e.getSubjectId().toString()).distinct().collect(Collectors.joining(","));
|
|
|
String subjectNames = list.stream().map(TeacherSubjectPrice::getSubjectName).distinct().collect(Collectors.joining(","));
|
|
|
- dto.setSubjectId(subjectIds);
|
|
|
+ dto.setSubjectIds(subjectIds);
|
|
|
dto.setSubjectName(subjectNames);
|
|
|
dto.setTeacherId(list.get(0).getTeacherId());
|
|
|
dto.setCourseType(list.get(0).getCourseType());
|
|
@@ -72,13 +78,21 @@ public class TeacherSubjectPriceController extends BaseController {
|
|
|
|
|
|
@ApiOperation(value = "获取老师课程价格配置")
|
|
|
@PostMapping("/list")
|
|
|
- public HttpResponseResult<List<TeacherSubjectPrice>> list(@RequestBody TeacherSubjectPriceWrapper.PriceSearch query){
|
|
|
+ public HttpResponseResult<List<TeacherSubjectPriceWrapper.TeacherSubjectPriceDto>> list(@RequestBody TeacherSubjectPriceWrapper.PriceSearch query){
|
|
|
List<TeacherSubjectPrice> list = teacherSubjectPriceService.lambdaQuery()
|
|
|
.eq(TeacherSubjectPrice::getTeacherId, sysUserService.getUserId())
|
|
|
.eq(query.getSubjectId() != null, TeacherSubjectPrice::getSubjectId, query.getSubjectId())
|
|
|
.eq(StringUtils.isNotEmpty(query.getCourseType()), TeacherSubjectPrice::getCourseType, query.getCourseType())
|
|
|
.list();
|
|
|
- return succeed(list);
|
|
|
+ if(CollectionUtils.isNotEmpty(list)){
|
|
|
+ List<TeacherSubjectPriceWrapper.TeacherSubjectPriceDto> results = JSONObject.parseArray(JSONObject.toJSONString(list), TeacherSubjectPriceWrapper.TeacherSubjectPriceDto.class);
|
|
|
+ List<Long> subjectIds = list.stream().map(TeacherSubjectPrice::getSubjectId).distinct().collect(Collectors.toList());
|
|
|
+ List<Subject> subjectList = subjectService.findBySubjectByIdList(subjectIds);
|
|
|
+ Map<Long, String> subjectMap = subjectList.stream().collect(Collectors.toMap(Subject::getId, Subject::getImg));
|
|
|
+ results.forEach(e->e.setSubjectPic(subjectMap.get(e.getSubjectId())));
|
|
|
+ return succeed(results);
|
|
|
+ }
|
|
|
+ return succeed();
|
|
|
}
|
|
|
}
|
|
|
|