zouxuan 7 mesi fa
parent
commit
0e21ca6587

+ 18 - 3
cooleshow-app/src/main/java/com/yonge/cooleshow/teacher/controller/TeacherSubjectPriceController.java

@@ -8,6 +8,7 @@ import com.yonge.cooleshow.common.controller.BaseController;
 import com.yonge.cooleshow.common.entity.HttpResponseResult;
 import io.swagger.annotations.Api;
 import io.swagger.annotations.ApiOperation;
+import org.apache.commons.collections.CollectionUtils;
 import org.apache.commons.lang3.StringUtils;
 import org.springframework.web.bind.annotation.PostMapping;
 import org.springframework.web.bind.annotation.RequestBody;
@@ -16,6 +17,7 @@ import org.springframework.web.bind.annotation.RestController;
 
 import javax.annotation.Resource;
 import java.util.List;
+import java.util.stream.Collectors;
 
 
 @Api(tags = "老师课程价格配置")
@@ -44,14 +46,27 @@ public class TeacherSubjectPriceController extends BaseController {
     }
 
     @ApiOperation(value = "获取老师课程价格配置")
-    @PostMapping("/list")
-    public HttpResponseResult<List<TeacherSubjectPrice>> list(@RequestBody TeacherSubjectPriceWrapper.PriceSearch query){
+    @PostMapping("/detail")
+    public HttpResponseResult<TeacherSubjectPriceWrapper.TeacherSubjectPriceDto> detail(@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);
+        TeacherSubjectPriceWrapper.TeacherSubjectPriceDto dto = new TeacherSubjectPriceWrapper.TeacherSubjectPriceDto();
+        if(CollectionUtils.isNotEmpty(list)){
+            //获取所有的声部、声部名称
+            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.setSubjectName(subjectNames);
+            dto.setTeacherId(list.get(0).getTeacherId());
+            dto.setCourseType(list.get(0).getCourseType());
+            dto.setFreeMinutes(list.get(0).getFreeMinutes());
+            dto.setCourseMinutes(list.get(0).getCourseMinutes());
+            dto.setSubjectPrice(list.get(0).getSubjectPrice());
+        }
+        return succeed(dto);
     }
 }
 

+ 27 - 0
cooleshow-user/user-biz/src/main/java/com/yonge/cooleshow/biz/dal/wrapper/TeacherSubjectPriceWrapper.java

@@ -4,6 +4,8 @@ import com.yonge.toolset.base.page.QueryInfo;
 import io.swagger.annotations.ApiModelProperty;
 import lombok.Data;
 
+import java.math.BigDecimal;
+
 public class TeacherSubjectPriceWrapper {
 
     @Data
@@ -16,4 +18,29 @@ public class TeacherSubjectPriceWrapper {
         private String courseType;
     }
 
+    @Data
+    public static class TeacherSubjectPriceDto{
+
+        @ApiModelProperty(value = "老师id")
+        private Long teacherId;
+
+        @ApiModelProperty(value = "课程类型")
+        private String courseType;
+
+        @ApiModelProperty(value = "课间休息时长(分钟)")
+        private Integer freeMinutes;
+
+        @ApiModelProperty(value = "单课时长(分钟)")
+        private Integer courseMinutes;
+
+        @ApiModelProperty(value = "声部id")
+        private String subjectId;
+
+        @ApiModelProperty(value = "声部名称")
+        private String subjectName;
+
+        @ApiModelProperty(value = "声部价格")
+        private BigDecimal subjectPrice;
+    }
+
 }