zhangxin 19 saat önce
ebeveyn
işleme
d57afb25dd

+ 7 - 0
national-motion-module-system/national-motion-system-biz/src/main/java/org/jeecg/modules/app/controller/my/AppEvaluateController.java

@@ -11,6 +11,7 @@ import org.jeecg.common.api.vo.Result;
 import org.jeecg.common.system.vo.LoginUser;
 import org.jeecg.modules.app.dto.PageDTO;
 import org.jeecg.modules.app.dto.evaluate.AddEvaluateDTO;
+import org.jeecg.modules.app.dto.evaluate.FindEvaluateDTO;
 import org.jeecg.modules.system.app.dto.evaluate.FindEvaluateResponseDTO;
 import org.jeecg.modules.system.app.entity.Evaluate;
 import org.jeecg.modules.system.app.service.IEvaluateService;
@@ -63,4 +64,10 @@ public class AppEvaluateController {
         }
         return Result.ok("提交成功");
     }
+    @GetMapping("/findByOrderPage")
+    @Operation(summary = "app订单相关评价分页查询")
+    public Result<IPage<FindEvaluateResponseDTO>> findByOrderPage(FindEvaluateDTO findEvaluateDTO) {
+        return Result.ok(evaluateService.findByOrderPage(findEvaluateDTO));
+    }
+
 }

+ 9 - 0
national-motion-module-system/national-motion-system-biz/src/main/java/org/jeecg/modules/app/dto/AddFamilyMembersDTO.java

@@ -5,6 +5,8 @@ import lombok.Data;
 import lombok.EqualsAndHashCode;
 import lombok.experimental.Accessors;
 
+import javax.validation.constraints.NotNull;
+
 /**
  * 家庭成员
  */
@@ -18,27 +20,34 @@ public class AddFamilyMembersDTO {
     @Schema(description = "id")
     private String id;
     /**姓名*/
+    @NotNull(message = "姓名不允许为空")
     @Schema(description = "姓名")
     private String fullName;
     /**用户编号*/
+    @NotNull(message = "用户编号不允许为空")
     @Schema(description = "用户编号")
     private String userId;
     /**身份证号*/
+    @NotNull(message = "身份证号不允许为空")
     @Schema(description = "身份证号")
     private String identityCard;
     /**身份证正面照*/
+    @NotNull(message = "身份证正面照不允许为空")
     @Schema(description = "身份证正面照")
     private String idCardFrontImg;
     /**身份证反面照*/
+    @NotNull(message = "身份证反面照不允许为空")
     @Schema(description = "身份证反面照")
     private String idCardBackImg;
     /**手机号*/
+    @NotNull(message = "手机号不允许为空")
     @Schema(description = "手机号")
     private String phone;
     /**实名状态 0-未实名 ;1-已实名*/
     @Schema(description = "实名状态 0-未实名 ;1-已实名,默认未实名")
     private Integer realNameStatus;
     /**身份证反面照*/
+    @NotNull(message = "实名认证照片不允许为空")
     @Schema(description = "实名认证照片")
     private String realNameImg;
 

+ 28 - 0
national-motion-module-system/national-motion-system-biz/src/main/java/org/jeecg/modules/app/dto/evaluate/FindEvaluateDTO.java

@@ -0,0 +1,28 @@
+package org.jeecg.modules.app.dto.evaluate;
+
+import io.swagger.v3.oas.annotations.media.Schema;
+import lombok.Data;
+import lombok.EqualsAndHashCode;
+import lombok.experimental.Accessors;
+import org.jeecg.modules.app.dto.PageDTO;
+
+/**
+ * 评论
+ */
+@Data
+@Accessors(chain = true)
+@EqualsAndHashCode(callSuper = false)
+@Schema(description="APP商品评论请求入参")
+public class FindEvaluateDTO extends PageDTO  {
+
+    /**教练id*/
+    @Schema(description = "教练id")
+    private String instructorId;
+    /**教练id*/
+    @Schema(description = "场地id")
+    private String siteId;
+    /**教练id*/
+    @Schema(description = "课程id")
+    private String coursesId;
+
+}

+ 4 - 0
national-motion-module-system/national-motion-system-biz/src/main/java/org/jeecg/modules/system/app/mapper/AppCoursesMapper.java

@@ -14,6 +14,8 @@ import org.jeecg.modules.system.app.dto.AppCoursesInfoPageDTO;
 import org.jeecg.modules.system.app.dto.AppCoursesPageDTO;
 import org.jeecg.modules.system.app.entity.AppCourses;
 
+import java.util.List;
+
 /**
  * @Description: 课程/培训表
  * @Author: jeecg-boot
@@ -47,4 +49,6 @@ public interface AppCoursesMapper extends BaseMapper<AppCourses> {
     IPage<CourseResponseVo> findByList(@Param("page") Page<CourseResponseVo> page,@Param("courseRequestVo") CourseRequestVo courseRequestVo);
 
     IPage<AppCoursesInfoPageDTO> queryWitchPriceRulesPage(Page<AppCourses> page, @Param("dto") AppCoursesPageDTO dto);
+
+    List<String> findByInstructorId( @Param("instructorId") String instructorId);
 }

+ 6 - 0
national-motion-module-system/national-motion-system-biz/src/main/java/org/jeecg/modules/system/app/mapper/EvaluateMapper.java

@@ -8,6 +8,8 @@ import org.jeecg.modules.system.app.dto.evaluate.FindEvaluateRequestDTO;
 import org.jeecg.modules.system.app.dto.evaluate.FindEvaluateResponseDTO;
 import org.jeecg.modules.system.app.entity.Evaluate;
 
+import java.util.List;
+
 /**
  * @Description: 评价管理
  * @Author: jeecg-boot
@@ -17,4 +19,8 @@ import org.jeecg.modules.system.app.entity.Evaluate;
 public interface EvaluateMapper extends BaseMapper<Evaluate> {
 
     IPage<FindEvaluateResponseDTO> findPage(@Param("page") Page<FindEvaluateResponseDTO> page,@Param("findEvaluateRequestDTO") FindEvaluateRequestDTO findEvaluateRequestDTO);
+
+    IPage<FindEvaluateResponseDTO> findBySiteId(@Param("page")  Page<FindEvaluateResponseDTO> page,@Param("siteId")  String siteId);
+
+    IPage<FindEvaluateResponseDTO> findByCoursesId(@Param("page") Page<FindEvaluateResponseDTO> page,@Param("coursesIds") List<String> coursesIds);
 }

+ 5 - 0
national-motion-module-system/national-motion-system-biz/src/main/java/org/jeecg/modules/system/app/mapper/xml/AppCoursesMapper.xml

@@ -198,5 +198,10 @@
         </if>
         ORDER BY c.create_time DESC
     </select>
+    <select id="findByInstructorId" resultType="java.lang.String">
+        select  b.id  from nm_instructor a
+         left join  nm_courses  b   on a.user_id =b.user_id and a.del_flag =0
+         where a.id =#{instructorId}
+    </select>
 
 </mapper>

+ 24 - 0
national-motion-module-system/national-motion-system-biz/src/main/java/org/jeecg/modules/system/app/mapper/xml/EvaluateMapper.xml

@@ -35,4 +35,28 @@
         </if>
         order by ne.create_time desc
     </select>
+    <select id="findBySiteId" resultType="org.jeecg.modules.system.app.dto.evaluate.FindEvaluateResponseDTO">
+        select ne.id,
+               ne.score,ne.evaluate_content,su.avatar,ne.images,ne.check_status,ne.reply_status,ne.reply_content,ne.reply_time,ne.type,ne.create_time,sd.depart_name,ns.address,su.username,su.phone
+        from nm_evaluate ne
+        left join  sys_depart sd on  ne.dept_id = sd.id
+        LEFT JOIN nm_site ns on  ne.site_id =ns.id
+        LEFT JOIN sys_user su on  ne.user_id =su.id
+        where 1=1 and ne.site_id =#{siteId}
+
+
+    </select>
+    <select id="findByCoursesId"
+            resultType="org.jeecg.modules.system.app.dto.evaluate.FindEvaluateResponseDTO">
+        select ne.id,
+               ne.score,ne.evaluate_content,su.avatar,ne.images,ne.check_status,ne.reply_status,ne.reply_content,ne.reply_time,ne.type,ne.create_time,sd.depart_name,su.username,su.phone
+        from nm_evaluate ne
+        left join  sys_depart sd on  ne.dept_id = sd.id
+        LEFT JOIN sys_user su on  ne.user_id =su.id
+        left join  nm_order o on ne.order_id = o.id
+        where o.product_ids in
+        <foreach collection="coursesIds" item="coursesId" open="(" separator="," close=")">
+            #{coursesId}
+        </foreach>
+    </select>
 </mapper>

+ 3 - 0
national-motion-module-system/national-motion-system-biz/src/main/java/org/jeecg/modules/system/app/service/IEvaluateService.java

@@ -3,6 +3,7 @@ package org.jeecg.modules.system.app.service;
 
 import com.baomidou.mybatisplus.core.metadata.IPage;
 import com.baomidou.mybatisplus.extension.service.IService;
+import org.jeecg.modules.app.dto.evaluate.FindEvaluateDTO;
 import org.jeecg.modules.system.app.dto.evaluate.FindEvaluateRequestDTO;
 import org.jeecg.modules.system.app.dto.evaluate.FindEvaluateResponseDTO;
 import org.jeecg.modules.system.app.entity.Evaluate;
@@ -17,4 +18,6 @@ public interface IEvaluateService extends IService<Evaluate> {
 
 
     IPage<FindEvaluateResponseDTO> findPage(Integer pageNo, Integer pageSize, FindEvaluateRequestDTO findEvaluateRequestDTO);
+
+    IPage<FindEvaluateResponseDTO> findByOrderPage(FindEvaluateDTO findEvaluateDTO);
 }

+ 24 - 0
national-motion-module-system/national-motion-system-biz/src/main/java/org/jeecg/modules/system/app/service/impl/EvaluateServiceImpl.java

@@ -4,14 +4,17 @@ import com.baomidou.mybatisplus.core.metadata.IPage;
 import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
 import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
 import org.apache.commons.lang3.StringUtils;
+import org.jeecg.modules.app.dto.evaluate.FindEvaluateDTO;
 import org.jeecg.modules.system.app.dto.evaluate.FindEvaluateRequestDTO;
 import org.jeecg.modules.system.app.dto.evaluate.FindEvaluateResponseDTO;
 import org.jeecg.modules.system.app.entity.Evaluate;
+import org.jeecg.modules.system.app.mapper.AppCoursesMapper;
 import org.jeecg.modules.system.app.mapper.EvaluateMapper;
 import org.jeecg.modules.system.app.service.IEvaluateService;
 import org.springframework.beans.factory.annotation.Autowired;
 import org.springframework.stereotype.Service;
 
+import javax.annotation.Resource;
 import java.util.ArrayList;
 import java.util.Arrays;
 import java.util.List;
@@ -27,6 +30,9 @@ public class EvaluateServiceImpl extends ServiceImpl<EvaluateMapper, Evaluate> i
 
     @Autowired
     EvaluateMapper evaluateMapper;
+    @Autowired
+    private AppCoursesMapper appCoursesMapper;
+
 
     @Override
     public IPage<FindEvaluateResponseDTO> findPage(Integer pageNo, Integer pageSize, FindEvaluateRequestDTO findEvaluateRequestDTO) {
@@ -45,4 +51,22 @@ public class EvaluateServiceImpl extends ServiceImpl<EvaluateMapper, Evaluate> i
         }
         return findEvaluateResponseDTOIPage;
     }
+
+    @Override
+    public IPage<FindEvaluateResponseDTO> findByOrderPage(FindEvaluateDTO findEvaluateDTO) {
+        Page<FindEvaluateResponseDTO> page = new Page<FindEvaluateResponseDTO>(findEvaluateDTO.getPageNo(), findEvaluateDTO.getPageSize());
+        IPage<FindEvaluateResponseDTO> findEvaluateResponseDTOIPage=null;
+        List<String> coursesIds = new ArrayList<>();
+        if (StringUtils.isNotEmpty(findEvaluateDTO.getSiteId())){
+            findEvaluateResponseDTOIPage = evaluateMapper.findBySiteId(page,findEvaluateDTO.getSiteId());
+        } else if (StringUtils.isNotEmpty(findEvaluateDTO.getInstructorId())) {
+            coursesIds = appCoursesMapper.findByInstructorId(findEvaluateDTO.getInstructorId());
+        } else if (StringUtils.isNotEmpty(findEvaluateDTO.getCoursesId())) {
+            coursesIds.add(findEvaluateDTO.getCoursesId());
+        }
+        if (coursesIds!=null&&!coursesIds.isEmpty()){
+            findEvaluateResponseDTOIPage = evaluateMapper.findByCoursesId(page,coursesIds);
+        }
+        return findEvaluateResponseDTOIPage;
+    }
 }