Переглянути джерело

Merge remote-tracking branch 'origin/master'

zhengqiang 4 роки тому
батько
коміт
e0cd9a5481

+ 36 - 17
web/src/main/java/com/jpsoft/shinestar/modules/business/controller/MeetingPersonRecodeController.java

@@ -314,28 +314,37 @@ public class MeetingPersonRecodeController {
                 searchParams.put("meetingId", meetingId);
             }
 
+            MeetingInfo meetingInfo = meetingInfoService.get(meetingId);
+
             Page<MeetingPersonRecodeDTO> pageDto = new Page<>();
 
-            //缺席
-            Page<MeetingPerson> page = meetingPersonService.absentSearch(searchParams, pageIndex, pageSize, true, sortList);
+            //如果会议已结束才统计确实
+            if("3".equals(meetingInfo.getStatus())){
+                //缺席
+                Page<MeetingPerson> page = meetingPersonService.absentSearch(searchParams, pageIndex, pageSize, true, sortList);
 
-            for (MeetingPerson meetingPerson : page) {
-                MeetingPersonRecodeDTO dto = new MeetingPersonRecodeDTO();
+                for (MeetingPerson meetingPerson : page) {
+                    MeetingPersonRecodeDTO dto = new MeetingPersonRecodeDTO();
 
-                Long personId = meetingPerson.getPersonId();
-                PersonInfo personInfo = personInfoService.get(personId);
-                if (personInfo != null) {
-                    dto.setName(personInfo.getName());
-                    dto.setJobNumber(personInfo.getJobNumber());
+                    Long personId = meetingPerson.getPersonId();
+                    PersonInfo personInfo = personInfoService.get(personId);
+                    if (personInfo != null) {
+                        dto.setName(personInfo.getName());
+                        dto.setJobNumber(personInfo.getJobNumber());
+                    }
+
+                    pageDto.add(dto);
                 }
 
-                pageDto.add(dto);
+                pageDto.setPageSize(page.getPageSize());
+                pageDto.setTotal(page.getTotal());
+                pageDto.setPageNum(page.getPageNum());
+            }else{
+                pageDto.setPageSize(0);
+                pageDto.setTotal(0);
+                pageDto.setPageNum(0);
             }
 
-            pageDto.setPageSize(page.getPageSize());
-            pageDto.setTotal(page.getTotal());
-            pageDto.setPageNum(page.getPageNum());
-
             msgResult.setResult(true);
             msgResult.setData(PojoUtils.pageWrapper(pageDto));
         }
@@ -409,7 +418,7 @@ public class MeetingPersonRecodeController {
             Map<String, Object> searchParams = new HashMap<>();
 
             List<Sort> sortList = new ArrayList<>();
-            sortList.add(new Sort("a.sign_time", "desc"));
+            sortList.add(new Sort("a.create_time", "desc"));
 
             if (StringUtils.isNotEmpty(meetingId)) {
                 searchParams.put("meetingId", meetingId);
@@ -455,8 +464,18 @@ public class MeetingPersonRecodeController {
 //                    searchParams.put("personIdList", personIdList);
 //                }
 
-                //缺席人数
-                Page<MeetingPerson> page0 = meetingPersonService.absentSearch(searchParams, pageIndex, 10000, true, sortList);
+                MeetingInfo meetingInfo = meetingInfoService.get(id);
+
+                Page<MeetingPerson> page0;
+
+                //会议已结束才统计缺席人数
+                if("3".equals(meetingInfo.getStatus())){
+                    //缺席人数
+                    page0 = meetingPersonService.absentSearch(searchParams, pageIndex, 10000, true, sortList);
+                }
+                else{
+                    page0 = new Page<>();
+                }
 
                 //实到
                 Page<Map>  page1 = meetingPersonService.realToSearch(searchParams, pageIndex, 10000, true, sortList);