Browse Source

Merge remote-tracking branch 'origin/dev' into dev

大数据与最优化研究所 1 year ago
parent
commit
22fa204e9a

+ 11 - 2
src/main/java/com/xjrsoft/module/room/service/impl/RoomBedServiceImpl.java

@@ -306,6 +306,7 @@ public class RoomBedServiceImpl extends MPJBaseServiceImpl<RoomBedMapper, RoomBe
                     .eq(BaseClass::getId, classId)
                     .eq(XjrUser::getGender, genderNumber)
                     .eq(BaseStudentSchoolRoll::getStduyStatus, "FB3002")
+                    .eq(BaseStudentSchoolRoll::getArchivesStatus, "FB2901")//只查询在读学生
                     .eq(BaseStudent::getDeleteMark, DeleteMark.NODELETE.getCode())
                     .eq(XjrUser::getDeleteMark, DeleteMark.NODELETE.getCode())
                     .innerJoin(XjrUser.class, XjrUser::getId, BaseStudent::getUserId)
@@ -422,7 +423,11 @@ public class RoomBedServiceImpl extends MPJBaseServiceImpl<RoomBedMapper, RoomBe
         List<StudentPayStatusVo> studentPayStatusVoList = roomBedMapper.getStudentPayStatus(distributeRoomBedDto);
         Map<Long, Integer> payStatusMap = new HashMap<>();
         for (StudentPayStatusVo statusVo : studentPayStatusVoList) {
-            payStatusMap.put(statusVo.getId(), statusVo.getPayStatus());
+            Integer payStatus = 0;
+            if(statusVo.getPayStatus() != null){
+                payStatus = statusVo.getPayStatus();
+            }
+            payStatusMap.put(statusVo.getId(), payStatus);
         }
         for (BaseClass classOne : classList) {
             List<AdjustBedClassStudentPageVo> studentList = new ArrayList<>();
@@ -430,7 +435,11 @@ public class RoomBedServiceImpl extends MPJBaseServiceImpl<RoomBedMapper, RoomBe
                 if(!classOne.getId().toString().equals(adjustBedClassStudentPageVo.getClassId())){
                     continue;
                 }
-                adjustBedClassStudentPageVo.setPayStatus(payStatusMap.get(Long.valueOf(adjustBedClassStudentPageVo.getUserId())));
+                Integer payStatus = payStatusMap.get(Long.valueOf(adjustBedClassStudentPageVo.getUserId()));
+                if(payStatus == null){
+                    payStatus = 0;
+                }
+                adjustBedClassStudentPageVo.setPayStatus(payStatus);
                 studentList.add(adjustBedClassStudentPageVo);
             }
             if(studentList.isEmpty()){

+ 7 - 0
src/main/resources/mapper/room/RoomBedMapper.xml

@@ -99,6 +99,7 @@
         left join xjr_user c4 on c1.user_id = c4.id
         WHERE c1.delete_mark = 0 AND c2.delete_mark = 0
         AND c3.code = 'FB3002' AND c2.class_id = t1.id
+        AND c2.archives_status = 'FB2901'
         <if test="dto.gender != null">
             and c4.gender = #{dto.gender}
         </if>
@@ -123,6 +124,7 @@
         left join xjr_user c4 on c4.id = c1.user_id
         WHERE c1.delete_mark = 0 AND c2.delete_mark = 0
         AND c3.code = 'FB3002' AND c2.class_id = t1.id
+        AND c2.archives_status = 'FB2901'
         <if test="dto.gender != null">
             and c4.gender = #{dto.gender}
         </if>
@@ -154,6 +156,7 @@
         LEFT JOIN xjr_user t3 ON t2.user_id = t3.id
         WHERE t1.delete_mark = 0
         AND t2.delete_mark = 0 AND t3.delete_mark = 0
+        AND t2.archives_status = 'FB2901'
         AND t2.stduy_status = 'FB3002' GROUP BY t1.id
     </select>
 
@@ -165,6 +168,7 @@
         WHERE t1.delete_mark = 0
         AND t2.delete_mark = 0 AND t3.delete_mark = 0
         AND t3.gender = 'SB10001'
+        AND t2.archives_status = 'FB2901'
         AND t2.stduy_status = 'FB3002' GROUP BY t1.id
     </select>
     <!-- 需要安排的女生总人数 -->
@@ -175,6 +179,7 @@
         WHERE t1.delete_mark = 0
         AND t2.delete_mark = 0 AND t3.delete_mark = 0
         AND t3.gender = 'SB10002'
+        AND t2.archives_status = 'FB2901'
         AND t2.stduy_status = 'FB3002' GROUP BY t1.id
     </select>
     <!-- 已分配的总人数 -->
@@ -289,6 +294,7 @@
         LEFT JOIN base_office_build t7 ON t6.office_build_id = t7.id
         WHERE t1.delete_mark = 0 AND t2.delete_mark = 0
         and t3.stduy_status = 'FB3002'
+        AND t3.archives_status = 'FB2901'
         <if test="dto.gradeId != null">
             and t4.grade_id = #{dto.gradeId}
         </if>
@@ -362,6 +368,7 @@
         LEFT JOIN base_class t4 ON t3.class_id = t4.id
         WHERE t1.delete_mark = 0 AND t2.delete_mark = 0
         AND t3.stduy_status = 'FB3001'
+        AND t2.archives_status = 'FB2901'
         AND t1.user_id NOT IN (
             SELECT student_user_id FROM room_bed WHERE delete_mark = 0 AND student_user_id IS NOT NULL
         )