Browse Source

1、增加移动端详情接口

dzx142631 1 year ago
parent
commit
2575bdae06

+ 46 - 1
src/main/java/com/xjrsoft/module/student/controller/BaseStudentAssessmentInspectionController.java

@@ -111,13 +111,58 @@ public class BaseStudentAssessmentInspectionController {
         return RT.ok(pageOutput);
     }
 
+    @GetMapping(value = "/moblieInfo")
+    @ApiOperation(value="根据id查询学生班级巡查考核信息")
+    @SaCheckPermission("basestudentassessmentinspection:detail")
+    public RT<List<BaseStudentAssessmentInspectionPageVo>> moblieInfo(@RequestParam Long id){
+        BaseStudentAssessmentInspection baseStudentAssessmentInspection = baseStudentAssessmentInspectionService.getById(id);
+        if (baseStudentAssessmentInspection == null) {
+           return RT.error("找不到此数据!");
+        }
+        List<BaseStudentAssessmentInspectionPageVo> list = baseStudentAssessmentInspectionService.selectJoinList(BaseStudentAssessmentInspectionPageVo.class,
+                MPJWrappers.<BaseStudentAssessmentInspection>lambdaJoin()
+                .eq(ObjectUtil.isNotNull(id), BaseStudentAssessmentInspection::getId, id)
+                .eq(BaseStudentAssessmentInspection::getStatus, 1)
+                .selectAs(BaseClass::getName, BaseStudentAssessmentInspectionPageVo::getClassName)
+                .select("u.name as class_teacher")
+                .select("d.name as dept_name")
+                .select("(SELECT COUNT(*) FROM base_student_assessment_student_relation WHERE base_student_assessment_inspection_id = t.id) as student_count")
+                .select("(SELECT name FROM xjr_user WHERE id = t.assessment_user_id) as assessment_user_name")
+                .select(BaseStudentAssessmentInspection::getScore)
+                .select(BaseStudentAssessmentInspection::getSortCode)
+                .select(BaseStudentAssessmentInspection::getReason)
+                .select(BaseStudentAssessmentInspection::getId)
+                .select(BaseStudentAssessmentInspection::getFileId)
+                .selectAs(BaseStudentAssessmentCategory::getName, BaseStudentAssessmentInspectionPageVo::getAssessmentCategoryName)
+                .selectAs(BaseStudentAssessmentProject::getName, BaseStudentAssessmentInspectionPageVo::getAssessmentProjectName)
+                .innerJoin(BaseStudentAssessmentCategory.class, BaseStudentAssessmentCategory::getId, BaseStudentAssessmentInspection::getBaseStudentAssessmentCategoryId)
+                .innerJoin(BaseStudentAssessmentProject.class, BaseStudentAssessmentProject::getId, BaseStudentAssessmentInspection::getBaseStudentAssessmentProjectId)
+                .leftJoin(XjrUser.class, XjrUser::getId, BaseStudentAssessmentInspection::getAssessmentUserId)
+                .innerJoin(BaseStudentAssessmentClassRelation.class, BaseStudentAssessmentClassRelation::getBaseStudentAssessmentInspectionId, BaseStudentAssessmentInspection::getId)
+                .innerJoin(BaseClass.class, BaseClass::getId, BaseStudentAssessmentClassRelation::getClassId)
+                .innerJoin("xjr_user u on t5.teacher_id = u.id")
+                .innerJoin("xjr_department d on t5.org_id = d.id")
+        );
+        for (BaseStudentAssessmentInspectionPageVo inspectionPageVo : list) {
+            //查询学生
+            LambdaQueryWrapper<BaseStudentAssessmentStudentRelation> studentQueryWrapper = new LambdaQueryWrapper<>();
+            studentQueryWrapper
+                    .eq(BaseStudentAssessmentStudentRelation::getBaseStudentAssessmentInspectionId, inspectionPageVo.getId())
+                    .select(BaseStudentAssessmentStudentRelation.class, x -> VoToColumnUtil.fieldsToColumns(BaseStudentAssessmentStudentRelationVo.class).contains(x.getProperty()));
+            List<BaseStudentAssessmentStudentRelation> studentList = baseStudentAssessmentStudentRelationService.list(studentQueryWrapper);
+            inspectionPageVo.setStudentList(BeanUtil.copyToList(studentList, BaseStudentAssessmentStudentRelationVo.class));
+            inspectionPageVo.setStudentCount(studentList.size());
+        }
+        return RT.ok(list);
+    }
+
     @GetMapping(value = "/info")
     @ApiOperation(value="根据id查询学生班级巡查考核信息")
     @SaCheckPermission("basestudentassessmentinspection:detail")
     public RT<BaseStudentAssessmentInspectionVo> info(@RequestParam Long id){
         BaseStudentAssessmentInspection baseStudentAssessmentInspection = baseStudentAssessmentInspectionService.getById(id);
         if (baseStudentAssessmentInspection == null) {
-           return RT.error("找不到此数据!");
+            return RT.error("找不到此数据!");
         }
         BaseStudentAssessmentInspectionVo baseStudentAssessmentInspectionVo = BeanUtil.toBean(baseStudentAssessmentInspection, BaseStudentAssessmentInspectionVo.class);
         //查询班级

+ 10 - 7
src/main/java/com/xjrsoft/module/student/vo/BaseStudentAssessmentInspectionPageVo.java

@@ -1,15 +1,11 @@
 package com.xjrsoft.module.student.vo;
 
-import com.fasterxml.jackson.annotation.JsonFormat;
+import com.github.yulichang.annotation.EntityMapping;
 import io.swagger.annotations.ApiModelProperty;
 import lombok.Data;
 
-import com.xjrsoft.common.annotation.Trans;
-import com.xjrsoft.common.enums.TransType;
-import java.time.LocalTime;
-import java.time.LocalDateTime;
-import java.math.BigDecimal;
 import java.util.Date;
+import java.util.List;
 
 /**
 * @title: 学生班级巡查考核分页列表出参
@@ -140,6 +136,13 @@ public class BaseStudentAssessmentInspectionPageVo {
     private String createUserName;
 
     @ApiModelProperty("影响班级考核的学生人数")
-    private String studentCount;
+    private Integer studentCount;
+
+    /**
+     * 影响班级考核的学生
+     */
+    @ApiModelProperty("影响班级考核的学生")
+    @EntityMapping(thisField = "id", joinField = "baseStudentAssessmentInspectionId")
+    private List<BaseStudentAssessmentStudentRelationVo> studentList;
 
 }

+ 50 - 56
src/main/java/com/xjrsoft/module/student/vo/BaseStudentAssessmentProjectPageVo.java

@@ -1,14 +1,8 @@
 package com.xjrsoft.module.student.vo;
 
-import com.fasterxml.jackson.annotation.JsonFormat;
 import io.swagger.annotations.ApiModelProperty;
 import lombok.Data;
 
-import com.xjrsoft.common.annotation.Trans;
-import com.xjrsoft.common.enums.TransType;
-import java.time.LocalTime;
-import java.time.LocalDateTime;
-import java.math.BigDecimal;
 import java.util.Date;
 
 /**
@@ -21,48 +15,48 @@ import java.util.Date;
 public class BaseStudentAssessmentProjectPageVo {
 
     /**
-    * 主键编号
-    */
+     * 主键编号
+     */
     @ApiModelProperty("主键编号")
     private String id;
     /**
-    * 创建人
-    */
+     * 创建人
+     */
     @ApiModelProperty("创建人")
     private Long createUserId;
     /**
-    * 创建时间
-    */
+     * 创建时间
+     */
     @ApiModelProperty("创建时间")
     private Date createDate;
     /**
-    * 修改人
-    */
+     * 修改人
+     */
     @ApiModelProperty("修改人")
     private Long modifyUserId;
     /**
-    * 修改时间
-    */
+     * 修改时间
+     */
     @ApiModelProperty("修改时间")
     private Date modifyDate;
     /**
-    * 删除标记
-    */
+     * 删除标记
+     */
     @ApiModelProperty("删除标记")
     private Integer deleteMark;
     /**
-    * 有效标志
-    */
+     * 有效标志
+     */
     @ApiModelProperty("有效标志")
     private Integer enabledMark;
     /**
-    * 序号
-    */
+     * 序号
+     */
     @ApiModelProperty("序号")
     private Integer sortCode;
     /**
-    * 学生考核类别(base_student_assessment_category)
-    */
+     * 学生考核类别(base_student_assessment_category)
+     */
     @ApiModelProperty("学生考核类别(base_student_assessment_category)")
     private Long baseStudentAssessmentCategoryId;
     /**
@@ -71,83 +65,83 @@ public class BaseStudentAssessmentProjectPageVo {
     @ApiModelProperty("学生考核类别名称(base_student_assessment_category)")
     private String baseStudentAssessmentCategoryName;
     /**
-    * 名称
-    */
+     * 名称
+     */
     @ApiModelProperty("名称")
     private String name;
     /**
-    * 编码
-    */
+     * 编码
+     */
     @ApiModelProperty("编码")
     private String code;
     /**
-    * 基础分
-    */
+     * 基础分
+     */
     @ApiModelProperty("基础分")
     private Double basicPoints;
     /**
-    * 扣分范围(最小)
-    */
+     * 扣分范围(最小)
+     */
     @ApiModelProperty("扣分范围(最小)")
     private Double pointsDeductedMin;
     /**
-    * 扣分范围(最大)
-    */
+     * 扣分范围(最大)
+     */
     @ApiModelProperty("扣分范围(最大)")
     private Double pointsDeductedMax;
     /**
-    * 加分范围(最小)
-    */
+     * 加分范围(最小)
+     */
     @ApiModelProperty("加分范围(最小)")
     private Double addPointsMin;
     /**
-    * 加分范围(最大)
-    */
+     * 加分范围(最大)
+     */
     @ApiModelProperty("加分范围(最大)")
     private Double addPointsMax;
     /**
-    * 所属机构(xjr_department)
-    */
+     * 所属机构(xjr_department)
+     */
     @ApiModelProperty("所属机构(xjr_department)")
     private Long departmentId;
     /**
-    * 是否启用(1:是 0:否)
-    */
+     * 是否启用(1:是 0:否)
+     */
     @ApiModelProperty("是否启用(1:是 0:否)")
     private Integer status;
     /**
-    * 是否影响(1:是 0:否)
-    */
+     * 是否影响(1:是 0:否)
+     */
     @ApiModelProperty("是否影响(1:是 0:否)")
     private Integer isAffect;
     /**
-    * 学生操行分处理方式(xjr_dictionary_item[ap_method])
-    */
+     * 学生操行分处理方式(xjr_dictionary_item[ap_method])
+     */
     @ApiModelProperty("学生操行分处理方式(xjr_dictionary_item[ap_method])")
     private String processingMethod;
     /**
-    * 折算操行分要求
-    */
+     * 折算操行分要求
+     */
     @ApiModelProperty("折算操行分要求")
     private Double behaviorScore;
     /**
-    * 操行项目编号
-    */
+     * 操行项目编号
+     */
     @ApiModelProperty("操行项目编号")
     private Long baseStudentBehaviorProjectId;
     /**
-    * 是否允许班主任修改项目(1:是 0:否)
-    */
+     * 是否允许班主任修改项目(1:是 0:否)
+     */
     @ApiModelProperty("是否允许班主任修改项目(1:是 0:否)")
     private Integer isTeacherEdit;
     /**
-    * 手动处理学生操行分说明
-    */
+     * 手动处理学生操行分说明
+     */
     @ApiModelProperty("手动处理学生操行分说明")
     private String behaviorScoreRemark;
     /**
-    * 备注
-    */
+     * 备注
+     */
     @ApiModelProperty("备注")
     private String remark;