Browse Source

会议管理会议统计管理取消早退统计

yanliming 4 năm trước cách đây
mục cha
commit
d00785e457

+ 3 - 0
common/src/main/java/com/jpsoft/shinestar/modules/base/dao/MeetingPersonDAO.java

@@ -1,6 +1,8 @@
 package com.jpsoft.shinestar.modules.base.dao;
 
 import java.util.List;
+
+import org.apache.ibatis.annotations.Param;
 import org.springframework.stereotype.Repository;
 import com.jpsoft.shinestar.modules.base.entity.MeetingPerson;
 import java.util.Map;
@@ -15,5 +17,6 @@ public interface MeetingPersonDAO {
 	int delete(String id);
 	List<MeetingPerson> list();
 	List<MeetingPerson> findByMeetingId(String meetingId);
+	MeetingPerson findByMeetingIdAndPersonId(@Param("meetingId") String meetingId, @Param("personId")Long personId);
 	List<MeetingPerson> search(Map<String, Object> searchParams, List<Sort> sortList);
 }

+ 26 - 13
common/src/main/java/com/jpsoft/shinestar/modules/business/service/impl/MeetingPersonRecodeServiceImpl.java

@@ -113,16 +113,20 @@ public class MeetingPersonRecodeServiceImpl implements MeetingPersonRecodeServic
 						Boolean flag = isInSignInTime(meetingTime.getMeetingId(),personId,"0",startTimeStr,meetingDateStr,recordTime);
 						//如果在签到时间范围内
 						if(flag){
-							List<MeetingPerson> meetingPersonList = meetingPersonDAO.findByMeetingId(meetingTime.getMeetingId());
+							MeetingPerson meetingPerson = meetingPersonDAO.findByMeetingIdAndPersonId(meetingTime.getMeetingId(),personId);
 
 							boolean isSignPerson = false;
 
-							for (MeetingPerson meetingPerson:meetingPersonList) {
-                                if(meetingPerson.getPersonId().equals(personId)){
-                                    isSignPerson = true;
-                                    break;
-                                }
-                            }
+							if(meetingPerson !=null){
+								isSignPerson = true;
+							}
+
+//							for (MeetingPerson meetingPerson:meetingPersonList) {
+//								if(meetingPerson.getPersonId() == personId){
+//									isSignPerson = true;
+//									break;
+//								}
+//							}
 
 							if(isSignPerson) {
 								MeetingPersonRecode meetingPersonRecode = new MeetingPersonRecode();
@@ -145,17 +149,26 @@ public class MeetingPersonRecodeServiceImpl implements MeetingPersonRecodeServic
 						Boolean flag = isInSignInTime(meetingTime.getMeetingId(),personId,"1",endTimeStr,meetingDateStr,recordTime);
 						//如果在签到时间范围内
 						if(flag){
-							List<MeetingPerson> meetingPersonList = meetingPersonDAO.findByMeetingId(meetingTime.getMeetingId());
+							MeetingPerson meetingPerson = meetingPersonDAO.findByMeetingIdAndPersonId(meetingTime.getMeetingId(),personId);
 
 							boolean isSignPerson = false;
 
-							for (MeetingPerson meetingPerson:meetingPersonList) {
-								if(meetingPerson.getPersonId().equals(personId)){
-									isSignPerson = true;
-									break;
-								}
+							if(meetingPerson !=null){
+								isSignPerson = true;
 							}
 
+
+//							List<MeetingPerson> meetingPersonList = meetingPersonDAO.findByMeetingId(meetingTime.getMeetingId());
+//
+//							boolean isSignPerson = false;
+//
+//							for (MeetingPerson meetingPerson:meetingPersonList) {
+//								if(meetingPerson.getPersonId() == personId){
+//									isSignPerson = true;
+//									break;
+//								}
+//							}
+
 							if(isSignPerson) {
 								MeetingPersonRecode meetingPersonRecode = new MeetingPersonRecode();
 								meetingPersonRecode.setId(UUID.randomUUID().toString());

+ 3 - 0
common/src/main/resources/mapper/base/MeetingPerson.xml

@@ -78,6 +78,9 @@ id_,person_id,meetingInfo_id,create_by,create_time,update_by,update_time,del_fla
 	<select id="findByMeetingId" resultMap="MeetingPersonMap">
 		select * from base_meeting_person where del_flag=false and meetingInfo_id=#{0}
 	</select>
+	<select id="findByMeetingIdAndPersonId" resultMap="MeetingPersonMap">
+		select * from base_meeting_person where del_flag=false and meetingInfo_id = #{meetingInfoId} and person_id = #{personId} limit 1
+	</select>
 	<select id="search" parameterType="hashmap" resultMap="MeetingPersonMap">
 		<![CDATA[
 			select * from base_meeting_person

+ 1 - 1
common/src/main/resources/mapper/business/MeetingPersonRecode.xml

@@ -139,7 +139,7 @@
 			</if>
 			<![CDATA[
 			and (SELECT b.sign_time FROM business_meeting_person_recode b  WHERE b.person_id = a.person_id and b.sign_type='0') is not null
-			and (SELECT b.sign_time FROM business_meeting_person_recode b  WHERE b.person_id = a.person_id and b.sign_type='1') is not null
+			--and (SELECT b.sign_time FROM business_meeting_person_recode b  WHERE b.person_id = a.person_id and b.sign_type='1') is not null
 			]]>
 		</where>
 		GROUP BY a.person_id

+ 3 - 3
web/src/main/java/com/jpsoft/shinestar/modules/base/controller/MeetingInfoController.java

@@ -158,13 +158,13 @@ public class MeetingInfoController {
 
                     String[] startSignInTimeArray = {start1,end1};
                     meetingTime.setStartSignInTimeArray(startSignInTimeArray);
-
-                    net.sf.json.JSONObject jsonObject2 = net.sf.json.JSONObject.fromObject(meetingTime.getMeetingTime());
+                    net.sf.json.JSONObject jsonObject2 = net.sf.json.JSONObject.fromObject(meetingTime.getEndSignInTime());
                     String start2 = (String)jsonObject2.get("start");
                     String end2 = (String)jsonObject2.get("end");
                     meetingTime.setEndSignInTimeRange(start2 + "," + end2);
 
-                    String[] endSignInTimeArray = {start1,end2};
+
+                    String[] endSignInTimeArray = {start2,end2};
                     meetingTime.setEndSignInTimeArray(endSignInTimeArray);
                 }
 

+ 8 - 9
web/src/main/java/com/jpsoft/shinestar/modules/business/controller/MeetingPersonRecodeController.java

@@ -561,8 +561,7 @@ public class MeetingPersonRecodeController {
         //表头
         Row rowTitle = sheet.createRow(0);
 
-        String[] titles = new String[]{"序号","会议名称","应到人数","实到人数","缺席人数","迟到人数",
-                "早退人数","会议状态","会议日期"};
+        String[] titles = new String[]{"序号","会议名称","应到人数","实到人数","缺席人数","迟到人数", "会议状态","会议日期"};
 
         for (int i=0;i<titles.length;i++) {
             Cell cell = rowTitle.createCell(i);
@@ -581,7 +580,7 @@ public class MeetingPersonRecodeController {
             row.createCell(colIndex++).setCellValue(com.jpsoft.shinestar.modules.common.utils.StringUtils.strValue(map.get("realNum"),""));
             row.createCell(colIndex++).setCellValue(com.jpsoft.shinestar.modules.common.utils.StringUtils.strValue(map.get("absentNum"),""));
             row.createCell(colIndex++).setCellValue(com.jpsoft.shinestar.modules.common.utils.StringUtils.strValue(map.get("lateNum"),""));
-            row.createCell(colIndex++).setCellValue(com.jpsoft.shinestar.modules.common.utils.StringUtils.strValue(map.get("leaveEarlyNum"),""));
+//            row.createCell(colIndex++).setCellValue(com.jpsoft.shinestar.modules.common.utils.StringUtils.strValue(map.get("leaveEarlyNum"),""));
             row.createCell(colIndex++).setCellValue(com.jpsoft.shinestar.modules.common.utils.StringUtils.strValue(map.get("statusN"),""));
             row.createCell(colIndex++).setCellValue(com.jpsoft.shinestar.modules.common.utils.StringUtils.strValue(map.get("meetingDateStrArr"),""));
         }
@@ -623,13 +622,13 @@ public class MeetingPersonRecodeController {
         List<Map> mapList2 = getRealToMap(meetingId,"2", pageIndex, pageSize);
         List<Map> mapList3 = getAbsentMap(meetingId, pageIndex, pageSize);
         List<Map> mapList4 = getRealToMap(meetingId,"5", pageIndex, pageSize);
-        List<Map> mapList5 = getRealToMap(meetingId,"6", pageIndex, pageSize);
+        //List<Map> mapList5 = getRealToMap(meetingId,"6", pageIndex, pageSize);
 
         totalMapList.add(mapList);
         totalMapList.add(mapList2);
         totalMapList.add(mapList3);
         totalMapList.add(mapList4);
-        totalMapList.add(mapList5);
+        //totalMapList.add(mapList5);
 
         String downloadUrl = "";
 
@@ -647,12 +646,12 @@ public class MeetingPersonRecodeController {
             else if(j==2){
                 sheet = workbook.createSheet("缺席"+ String.valueOf(mapList3.size()));
             }
-            else if(j==3){
-                sheet = workbook.createSheet("迟到"+ String.valueOf(mapList4.size()));
-            }
             else{
-                sheet = workbook.createSheet("早退"+ String.valueOf(mapList5.size()));
+                sheet = workbook.createSheet("迟到"+ String.valueOf(mapList4.size()));
             }
+//            else{
+//                sheet = workbook.createSheet("早退"+ String.valueOf(mapList5.size()));
+//            }
 
             //表头
             Row rowTitle = sheet.createRow(0);