Commit 3898e462fe746de823c118cda9a42ea47ffd6968
1 parent
a8a87475
Exists in
master
考勤推送
Showing
7 changed files
with
81 additions
and
38 deletions
Show diff stats
cloud/common/src/main/java/com/sincere/common/dto/smartCampus/CensusKqDto.java
@@ -10,6 +10,7 @@ public class CensusKqDto { | @@ -10,6 +10,7 @@ public class CensusKqDto { | ||
10 | private String className ; | 10 | private String className ; |
11 | private int allT ; | 11 | private int allT ; |
12 | private int kqT ; | 12 | private int kqT ; |
13 | + private int qjT ; | ||
13 | 14 | ||
14 | public int getClassId() { | 15 | public int getClassId() { |
15 | return classId; | 16 | return classId; |
@@ -42,4 +43,12 @@ public class CensusKqDto { | @@ -42,4 +43,12 @@ public class CensusKqDto { | ||
42 | public void setKqT(int kqT) { | 43 | public void setKqT(int kqT) { |
43 | this.kqT = kqT; | 44 | this.kqT = kqT; |
44 | } | 45 | } |
46 | + | ||
47 | + public int getQjT() { | ||
48 | + return qjT; | ||
49 | + } | ||
50 | + | ||
51 | + public void setQjT(int qjT) { | ||
52 | + this.qjT = qjT; | ||
53 | + } | ||
45 | } | 54 | } |
cloud/quartz/src/main/java/com/sincere/quartz/job/KQJob.java
@@ -53,8 +53,7 @@ public class KQJob { | @@ -53,8 +53,7 @@ public class KQJob { | ||
53 | List<String> keyList = new ArrayList<>(); | 53 | List<String> keyList = new ArrayList<>(); |
54 | for(Map.Entry<String, String> entity : map.entrySet()){ | 54 | for(Map.Entry<String, String> entity : map.entrySet()){ |
55 | String endTime = entity.getValue().split("_")[1]; | 55 | String endTime = entity.getValue().split("_")[1]; |
56 | - if(DateUtils.getDateDifference(new Date(),DateUtils.string2Date(now+" "+endTime+":00",DateUtils.format2),"m")>=2 | ||
57 | - && DateUtils.getDateDifference(new Date(),DateUtils.string2Date(now+" "+endTime+":00",DateUtils.format2),"m") < 5 ){ | 56 | + if(DateUtils.getDateDifference(new Date(),DateUtils.string2Date(now+" "+endTime+":00",DateUtils.format2),"m")>=2){ |
58 | String key = entity.getKey(); | 57 | String key = entity.getKey(); |
59 | String[] messageArray = key.split("_"); | 58 | String[] messageArray = key.split("_"); |
60 | if(messageArray[2].contains("5")){ | 59 | if(messageArray[2].contains("5")){ |
@@ -91,7 +90,7 @@ public class KQJob { | @@ -91,7 +90,7 @@ public class KQJob { | ||
91 | type = type.replace("\"",""); | 90 | type = type.replace("\"",""); |
92 | int nowWeek = DateUtils.getWeek() ; | 91 | int nowWeek = DateUtils.getWeek() ; |
93 | if(Week.contains(nowWeek+"")){ | 92 | if(Week.contains(nowWeek+"")){ |
94 | - logger.info((templateId+"_"+templateDto.getSchoolId()+templateDto.getType()+"------"+beginTime+"_"+endTime)); | 93 | + logger.info((templateId+"_"+templateDto.getSchoolId()+"_"+templateDto.getType()+"------"+beginTime+"_"+endTime)); |
95 | map.put(templateId+"_"+templateDto.getSchoolId()+"_"+templateDto.getType() , beginTime+"_"+endTime+"_"+type); | 94 | map.put(templateId+"_"+templateDto.getSchoolId()+"_"+templateDto.getType() , beginTime+"_"+endTime+"_"+type); |
96 | } | 95 | } |
97 | }catch (Exception e){ | 96 | }catch (Exception e){ |
@@ -108,24 +107,20 @@ public class KQJob { | @@ -108,24 +107,20 @@ public class KQJob { | ||
108 | //出入校 推班主任 | 107 | //出入校 推班主任 |
109 | List<KqTeacherDto> list = scFeign.getTeacherList(schoolId); | 108 | List<KqTeacherDto> list = scFeign.getTeacherList(schoolId); |
110 | for(KqTeacherDto teacher : list){ | 109 | for(KqTeacherDto teacher : list){ |
111 | - if(teacher.getName().equals("倪任佳")){ | ||
112 | - dingSchoolPush(templateId,teacher,key,appDto); | ||
113 | - } | 110 | + dingSchoolPush(templateId,teacher,key,appDto); |
114 | } | 111 | } |
115 | }else { | 112 | }else { |
116 | //出入寝 推班主任 | 113 | //出入寝 推班主任 |
117 | List<KqTeacherDto> list = scFeign.getTeacherList(schoolId); | 114 | List<KqTeacherDto> list = scFeign.getTeacherList(schoolId); |
118 | for(KqTeacherDto teacher : list){ | 115 | for(KqTeacherDto teacher : list){ |
119 | - if(teacher.getName().equals("倪任佳")) { | ||
120 | - dingSchoolPush(templateId,teacher, key, appDto); | ||
121 | - } | 116 | + logger.info("盯盯推送—————" + templateId + "--------" + teacher.getName()); |
117 | + dingSchoolPush(templateId,teacher, key, appDto); | ||
122 | } | 118 | } |
123 | //推宿管 | 119 | //推宿管 |
124 | List<KqTeacherDto> chamberList = scFeign.selectChamberTeacher(schoolId); | 120 | List<KqTeacherDto> chamberList = scFeign.selectChamberTeacher(schoolId); |
125 | for(KqTeacherDto teacher : chamberList){ | 121 | for(KqTeacherDto teacher : chamberList){ |
126 | - if(teacher.getName().equals("倪任佳")) { | ||
127 | - dingChamberPush(templateId,teacher, key, appDto); | ||
128 | - } | 122 | + logger.info("企业号推送—————" + templateId + "--------" + teacher.getName()); |
123 | + dingChamberPush(templateId,teacher, key, appDto); | ||
129 | } | 124 | } |
130 | } | 125 | } |
131 | } | 126 | } |
@@ -137,7 +132,7 @@ public class KQJob { | @@ -137,7 +132,7 @@ public class KQJob { | ||
137 | //出入校 推班主任 | 132 | //出入校 推班主任 |
138 | List<KqTeacherDto> list = scFeign.getTeacherList(schoolId); | 133 | List<KqTeacherDto> list = scFeign.getTeacherList(schoolId); |
139 | for (KqTeacherDto teacher : list) { | 134 | for (KqTeacherDto teacher : list) { |
140 | - weChatSchoolPush(templateId,teacher, key, appDto); | 135 | + weChatSchoolPush(templateId,teacher, key, appDto); |
141 | } | 136 | } |
142 | }else { | 137 | }else { |
143 | //出入寝 推班主任 | 138 | //出入寝 推班主任 |
@@ -167,7 +162,7 @@ public class KQJob { | @@ -167,7 +162,7 @@ public class KQJob { | ||
167 | String message = ""; | 162 | String message = ""; |
168 | for(CensusKqDto censusKqDto : censusKqDtos){ | 163 | for(CensusKqDto censusKqDto : censusKqDtos){ |
169 | int number = censusKqDto.getAllT() - censusKqDto.getKqT() ; | 164 | int number = censusKqDto.getAllT() - censusKqDto.getKqT() ; |
170 | - message += "[" + censusKqDto.getClassName() + "]未考勤" + number + "人;"; | 165 | + message += "[" + censusKqDto.getClassName() + "]未考勤" + number + "人;请假"+censusKqDto.getQjT()+"人"; |
171 | } | 166 | } |
172 | DingSms dingSms = new DingSms(); | 167 | DingSms dingSms = new DingSms(); |
173 | dingSms.setName(teacher.getName()); | 168 | dingSms.setName(teacher.getName()); |
@@ -206,7 +201,7 @@ public class KQJob { | @@ -206,7 +201,7 @@ public class KQJob { | ||
206 | String message = ""; | 201 | String message = ""; |
207 | for(CensusKqDto censusKqDto : censusKqDtos){ | 202 | for(CensusKqDto censusKqDto : censusKqDtos){ |
208 | int number = censusKqDto.getAllT() - censusKqDto.getKqT() ; | 203 | int number = censusKqDto.getAllT() - censusKqDto.getKqT() ; |
209 | - message += "[" + censusKqDto.getClassName() + "]未考勤" + number + "人;"; | 204 | + message += "[" + censusKqDto.getClassName() + "]未考勤" + number + "人;请假"+censusKqDto.getQjT()+"人"; |
210 | } | 205 | } |
211 | DingSms dingSms = new DingSms(); | 206 | DingSms dingSms = new DingSms(); |
212 | dingSms.setName(teacher.getName()); | 207 | dingSms.setName(teacher.getName()); |
@@ -243,7 +238,7 @@ public class KQJob { | @@ -243,7 +238,7 @@ public class KQJob { | ||
243 | String message = ""; | 238 | String message = ""; |
244 | for (CensusKqDto censusKqDto : censusKqDtos) { | 239 | for (CensusKqDto censusKqDto : censusKqDtos) { |
245 | int number = censusKqDto.getAllT() - censusKqDto.getKqT(); | 240 | int number = censusKqDto.getAllT() - censusKqDto.getKqT(); |
246 | - message += "[" + censusKqDto.getClassName() + "]未考勤" + number + "人;"; | 241 | + message += "[" + censusKqDto.getClassName() + "]未考勤" + number + "人;请假"+censusKqDto.getQjT()+"人"; |
247 | } | 242 | } |
248 | WeChatSms weChatSms = new WeChatSms(); | 243 | WeChatSms weChatSms = new WeChatSms(); |
249 | weChatSms.setTableName("qyhSmsNew" + tableSuffix); | 244 | weChatSms.setTableName("qyhSmsNew" + tableSuffix); |
@@ -260,7 +255,7 @@ public class KQJob { | @@ -260,7 +255,7 @@ public class KQJob { | ||
260 | String msgUrl = "http://campus.myjxt.com/studentRecord/znxwwebapp/index.html?" + | 255 | String msgUrl = "http://campus.myjxt.com/studentRecord/znxwwebapp/index.html?" + |
261 | "schoolid=" + teacher.getSchoolId() + "&userId=" + teacher.getUserId() + "&name=" + teacher.getName() + | 256 | "schoolid=" + teacher.getSchoolId() + "&userId=" + teacher.getUserId() + "&name=" + teacher.getName() + |
262 | "&data=" + teacher.getWeChatUserId() + "&type=1&stype=3&mobile=" + teacher.getMobile() + "&pass=" + teacher.getPass() + | 257 | "&data=" + teacher.getWeChatUserId() + "&type=1&stype=3&mobile=" + teacher.getMobile() + "&pass=" + teacher.getPass() + |
263 | - "&face=" + teacher.getFace() + "&sourcetype=16&soutype=2×tamp=" + DateUtils.getDate()+"&time="+DateUtils.date2String(new Date(),DateUtils.format1); | 258 | + "&face=" + teacher.getFace() + "&sourcetype=16&soutype=2×tamp=" + DateUtils.getDate()+"&time="+DateUtils.date2String(new Date(),DateUtils.format1)+"&"; |
264 | weChatSms.setMsgUrl(msgUrl); | 259 | weChatSms.setMsgUrl(msgUrl); |
265 | weChatSms.setTdType(TypeEnums.kaoqing.getType()); | 260 | weChatSms.setTdType(TypeEnums.kaoqing.getType()); |
266 | smsMapper.insertWeChat(weChatSms); | 261 | smsMapper.insertWeChat(weChatSms); |
@@ -283,7 +278,7 @@ public class KQJob { | @@ -283,7 +278,7 @@ public class KQJob { | ||
283 | String message = ""; | 278 | String message = ""; |
284 | for (CensusKqDto censusKqDto : censusKqDtos) { | 279 | for (CensusKqDto censusKqDto : censusKqDtos) { |
285 | int number = censusKqDto.getAllT() - censusKqDto.getKqT(); | 280 | int number = censusKqDto.getAllT() - censusKqDto.getKqT(); |
286 | - message += "[" + censusKqDto.getClassName() + "]未考勤" + number + "人;"; | 281 | + message += "[" + censusKqDto.getClassName() + "]未考勤" + number + "人;请假"+censusKqDto.getQjT()+"人"; |
287 | } | 282 | } |
288 | WeChatSms weChatSms = new WeChatSms(); | 283 | WeChatSms weChatSms = new WeChatSms(); |
289 | weChatSms.setTableName("qyhSmsNew" + tableSuffix); | 284 | weChatSms.setTableName("qyhSmsNew" + tableSuffix); |
@@ -299,7 +294,7 @@ public class KQJob { | @@ -299,7 +294,7 @@ public class KQJob { | ||
299 | weChatSms.setSecret(appDto.getAgentSecret()); | 294 | weChatSms.setSecret(appDto.getAgentSecret()); |
300 | String msgUrl = "http://campus.myjxt.com/studentRecord/znxwwebapp/index.html?" + | 295 | String msgUrl = "http://campus.myjxt.com/studentRecord/znxwwebapp/index.html?" + |
301 | "schoolid=" + teacher.getSchoolId() + "&userId=" + teacher.getUserId() + "&name=" + teacher.getName() + | 296 | "schoolid=" + teacher.getSchoolId() + "&userId=" + teacher.getUserId() + "&name=" + teacher.getName() + |
302 | - "&pass=" + teacher.getPass() + "&type=4&soutype=2&time="+DateUtils.date2String(new Date(),DateUtils.format1); | 297 | + "&pass=" + teacher.getPass() + "&type=4&soutype=2&time="+DateUtils.date2String(new Date(),DateUtils.format1)+"&"; |
303 | weChatSms.setMsgUrl(msgUrl); | 298 | weChatSms.setMsgUrl(msgUrl); |
304 | weChatSms.setTdType(TypeEnums.kaoqing.getType()); | 299 | weChatSms.setTdType(TypeEnums.kaoqing.getType()); |
305 | smsMapper.insertWeChat(weChatSms); | 300 | smsMapper.insertWeChat(weChatSms); |
cloud/quartz/src/main/resources/logback.xml
@@ -21,7 +21,7 @@ | @@ -21,7 +21,7 @@ | ||
21 | <!-- 过滤器,只打印ERROR级别的日志 --> | 21 | <!-- 过滤器,只打印ERROR级别的日志 --> |
22 | <rollingPolicy class="ch.qos.logback.core.rolling.SizeAndTimeBasedRollingPolicy"> | 22 | <rollingPolicy class="ch.qos.logback.core.rolling.SizeAndTimeBasedRollingPolicy"> |
23 | <!--日志文件输出的文件名--> | 23 | <!--日志文件输出的文件名--> |
24 | - <FileNamePattern>${LOG_HOME}/${PROJECT_NAME}/%d{yyyy-MM-dd HH}.%i.log</FileNamePattern> | 24 | + <FileNamePattern>${LOG_HOME}/${PROJECT_NAME}/%d{yyyy-MM-dd}.%i.log</FileNamePattern> |
25 | <!--日志文件保留天数--> | 25 | <!--日志文件保留天数--> |
26 | <MaxHistory>30</MaxHistory> | 26 | <MaxHistory>30</MaxHistory> |
27 | <!--日志文件最大的大小--> | 27 | <!--日志文件最大的大小--> |
cloud/search_smartCampus/src/main/java/com/sincere/smartSearch/mapper/KqTemplateMapper.java
@@ -32,11 +32,17 @@ public interface KqTemplateMapper { | @@ -32,11 +32,17 @@ public interface KqTemplateMapper { | ||
32 | 32 | ||
33 | int selectChamberTrueKq(Map<String,String> map); | 33 | int selectChamberTrueKq(Map<String,String> map); |
34 | 34 | ||
35 | - int selectClassDealDate(Map<String,String> map); | 35 | + int selectClassDealDateCHUQIN(Map<String,String> map); |
36 | + | ||
37 | + int selectClassDealDateQINGJIA(Map<String,String> map); | ||
36 | 38 | ||
37 | int selectClassLeave(Map<String,String> map); | 39 | int selectClassLeave(Map<String,String> map); |
38 | 40 | ||
39 | - int selectChamberDealDate(Map<String,String> map); | 41 | + int selectChamberDealDateCHUQIN(Map<String,String> map); |
42 | + | ||
43 | + int selectChamberDealDateQINGJIA(Map<String,String> map); | ||
40 | 44 | ||
41 | int selectChamberLeave(Map<String,String> map); | 45 | int selectChamberLeave(Map<String,String> map); |
46 | + | ||
47 | + int selectClassChamberNumber(int classId); | ||
42 | } | 48 | } |
cloud/search_smartCampus/src/main/java/com/sincere/smartSearch/service/impl/KqServiceImpl.java
@@ -54,14 +54,21 @@ public class KqServiceImpl implements KqService { | @@ -54,14 +54,21 @@ public class KqServiceImpl implements KqService { | ||
54 | map.put("type",kqDto.getType()); | 54 | map.put("type",kqDto.getType()); |
55 | List<CensusKqDto> list = kqTemplateMapper.selectCensusKq(map); | 55 | List<CensusKqDto> list = kqTemplateMapper.selectCensusKq(map); |
56 | for(CensusKqDto censusKqDto : list){ | 56 | for(CensusKqDto censusKqDto : list){ |
57 | + if(Integer.valueOf(kqDto.getType()) >= 7){ | ||
58 | + //出入寝 | ||
59 | + int classNumber = kqTemplateMapper.selectClassChamberNumber(censusKqDto.getClassId()); | ||
60 | + censusKqDto.setAllT(classNumber); | ||
61 | + } | ||
57 | Map<String,String> sqlMap = new HashMap<>(); | 62 | Map<String,String> sqlMap = new HashMap<>(); |
58 | sqlMap.put("templateId",kqDto.getTemplateId()); | 63 | sqlMap.put("templateId",kqDto.getTemplateId()); |
59 | sqlMap.put("classId",censusKqDto.getClassId()+""); | 64 | sqlMap.put("classId",censusKqDto.getClassId()+""); |
60 | - int i = kqTemplateMapper.selectClassDealDate(sqlMap); | 65 | + int chuqin = kqTemplateMapper.selectClassDealDateCHUQIN(sqlMap); |
66 | + int qingjia = kqTemplateMapper.selectClassDealDateQINGJIA(sqlMap); | ||
61 | String date = DateUtils.date2String(new Date(),DateUtils.format1); | 67 | String date = DateUtils.date2String(new Date(),DateUtils.format1); |
62 | sqlMap.put("endTime",date+" " + kqDto.getEndTime() +":00"); | 68 | sqlMap.put("endTime",date+" " + kqDto.getEndTime() +":00"); |
63 | - i = i + kqTemplateMapper.selectClassLeave(sqlMap); | ||
64 | - censusKqDto.setKqT(censusKqDto.getKqT()+i); | 69 | + qingjia = qingjia + kqTemplateMapper.selectClassLeave(sqlMap); |
70 | + censusKqDto.setKqT(censusKqDto.getKqT()+chuqin); | ||
71 | + censusKqDto.setQjT(qingjia); | ||
65 | } | 72 | } |
66 | return list ; | 73 | return list ; |
67 | } | 74 | } |
@@ -86,11 +93,13 @@ public class KqServiceImpl implements KqService { | @@ -86,11 +93,13 @@ public class KqServiceImpl implements KqService { | ||
86 | sqlMap.put("templateId",kqDto.getTemplateId()); | 93 | sqlMap.put("templateId",kqDto.getTemplateId()); |
87 | sqlMap.put("userId",kqDto.getUserId()); | 94 | sqlMap.put("userId",kqDto.getUserId()); |
88 | sqlMap.put("id",chamber.getId()+""); | 95 | sqlMap.put("id",chamber.getId()+""); |
89 | - int i = kqTemplateMapper.selectClassDealDate(sqlMap); | 96 | + int chuqin = kqTemplateMapper.selectChamberDealDateCHUQIN(sqlMap); |
97 | + int qingjia = kqTemplateMapper.selectChamberDealDateQINGJIA(sqlMap); | ||
90 | String date = DateUtils.date2String(new Date(),DateUtils.format1); | 98 | String date = DateUtils.date2String(new Date(),DateUtils.format1); |
91 | sqlMap.put("endTime",date+" " + kqDto.getEndTime() +":00"); | 99 | sqlMap.put("endTime",date+" " + kqDto.getEndTime() +":00"); |
92 | - i = i + kqTemplateMapper.selectChamberLeave(sqlMap); | ||
93 | - censusKqDto.setKqT(trueKq+i); | 100 | + qingjia = qingjia + kqTemplateMapper.selectChamberLeave(sqlMap); |
101 | + censusKqDto.setKqT(trueKq+chuqin); | ||
102 | + censusKqDto.setKqT(qingjia); | ||
94 | list.add(censusKqDto); | 103 | list.add(censusKqDto); |
95 | } | 104 | } |
96 | return list; | 105 | return list; |
cloud/search_smartCampus/src/main/resources/application.yml
@@ -22,6 +22,6 @@ eureka: | @@ -22,6 +22,6 @@ eureka: | ||
22 | client: | 22 | client: |
23 | service-url: | 23 | service-url: |
24 | # defaultZone: http://localhost:8761/eureka/,http://localhost:8762/eureka/ | 24 | # defaultZone: http://localhost:8761/eureka/,http://localhost:8762/eureka/ |
25 | - defaultZone: http://121.40.109.21:8761/eureka/,http://121.40.109.21:8762/eureka/ | 25 | + defaultZone: http://localhost:8761/eureka/,http://localhost:8762/eureka/ |
26 | 26 | ||
27 | 27 |
cloud/search_smartCampus/src/main/resources/mapper/KqTemplateMapper.xml
@@ -11,7 +11,7 @@ | @@ -11,7 +11,7 @@ | ||
11 | <select id="selectKqTemplate" resultMap="TemplateMap"> | 11 | <select id="selectKqTemplate" resultMap="TemplateMap"> |
12 | select XA_KqTemplate.config , XA_KqTemplate.SchoolId ,SZ_School.MsgTypes as type from XA_KqTemplate | 12 | select XA_KqTemplate.config , XA_KqTemplate.SchoolId ,SZ_School.MsgTypes as type from XA_KqTemplate |
13 | join SZ_School on XA_KqTemplate.SchoolId = SZ_School.school_id | 13 | join SZ_School on XA_KqTemplate.SchoolId = SZ_School.school_id |
14 | - where XA_KqTemplate.State = 1 and XA_KqTemplate.ScenceType = 0 and XA_KqTemplate.TType = 1 | 14 | + where XA_KqTemplate.State = 1 and XA_KqTemplate.TType = 1 |
15 | and (SZ_School.MsgTypes like '%4%' or SZ_School.MsgTypes like '%5%') | 15 | and (SZ_School.MsgTypes like '%4%' or SZ_School.MsgTypes like '%5%') |
16 | and SZ_School.IsPush =1 | 16 | and SZ_School.IsPush =1 |
17 | </select> | 17 | </select> |
@@ -52,6 +52,10 @@ | @@ -52,6 +52,10 @@ | ||
52 | and ApplyName = '智能校卫' | 52 | and ApplyName = '智能校卫' |
53 | </select> | 53 | </select> |
54 | 54 | ||
55 | + <select id="selectClassChamberNumber" parameterType="java.lang.Integer" resultType="java.lang.Integer"> | ||
56 | + select count(0) from SZ_V_School_Student where class_id=#{classId} and student_type=2 | ||
57 | + </select> | ||
58 | + | ||
55 | <resultMap id="KqMap" type="com.sincere.common.dto.smartCampus.CensusKqDto"> | 59 | <resultMap id="KqMap" type="com.sincere.common.dto.smartCampus.CensusKqDto"> |
56 | <result column="class_id" property="classId"/> | 60 | <result column="class_id" property="classId"/> |
57 | <result column="class_name" property="className"/> | 61 | <result column="class_name" property="className"/> |
@@ -69,16 +73,23 @@ | @@ -69,16 +73,23 @@ | ||
69 | where a.role_state=1 and a.user_id=#{userId} | 73 | where a.role_state=1 and a.user_id=#{userId} |
70 | </select> | 74 | </select> |
71 | 75 | ||
72 | - <select id="selectClassDealDate" parameterType="java.util.Map" resultType="java.lang.Integer"> | 76 | + <select id="selectClassDealDateCHUQIN" parameterType="java.util.Map" resultType="java.lang.Integer"> |
73 | select count(0) from EQ_DealData join SZ_V_School_Student on EQ_DealData.UserId = SZ_V_School_Student.user_id | 77 | select count(0) from EQ_DealData join SZ_V_School_Student on EQ_DealData.UserId = SZ_V_School_Student.user_id |
74 | - where EQ_DealData.DealState in ('出勤','请假') | 78 | + where EQ_DealData.DealState ='出勤' |
79 | + and EQ_DealData.TemplateId = #{templateId} and DealDate = CONVERT ( VARCHAR ( 10 ), getdate(), 120 ) | ||
80 | + and SZ_V_School_Student.class_id = #{classId} | ||
81 | + </select> | ||
82 | + | ||
83 | + <select id="selectClassDealDateQINGJIA" parameterType="java.util.Map" resultType="java.lang.Integer"> | ||
84 | + select count(0) from EQ_DealData join SZ_V_School_Student on EQ_DealData.UserId = SZ_V_School_Student.user_id | ||
85 | + where EQ_DealData.DealState = '请假' | ||
75 | and EQ_DealData.TemplateId = #{templateId} and DealDate = CONVERT ( VARCHAR ( 10 ), getdate(), 120 ) | 86 | and EQ_DealData.TemplateId = #{templateId} and DealDate = CONVERT ( VARCHAR ( 10 ), getdate(), 120 ) |
76 | and SZ_V_School_Student.class_id = #{classId} | 87 | and SZ_V_School_Student.class_id = #{classId} |
77 | </select> | 88 | </select> |
78 | 89 | ||
79 | <select id="selectClassLeave" parameterType="java.util.Map" resultType="java.lang.Integer"> | 90 | <select id="selectClassLeave" parameterType="java.util.Map" resultType="java.lang.Integer"> |
80 | - select count(0) from HS_LeaveExamine join SZ_V_School_Student on HS_LeaveExamine.StudentId = SZ_V_School_Student.student_id | ||
81 | - where HS_LeaveExamine.State in (2,7,8,9,10,11) and HS_LeaveExamine.ReturnTime > #{endTime} | 91 | + select COUNT ( DISTINCT HS_LeaveExamine.StudentId ) from HS_LeaveExamine join SZ_V_School_Student on HS_LeaveExamine.StudentId = SZ_V_School_Student.student_id |
92 | + where HS_LeaveExamine.State in (2,7,8,9,10,11) and HS_LeaveExamine.ReturnTime > #{endTime} and HS_LeaveExamine.LeaveTime < #{endTime} | ||
82 | and SZ_V_School_Student.class_id = #{classId} | 93 | and SZ_V_School_Student.class_id = #{classId} |
83 | </select> | 94 | </select> |
84 | 95 | ||
@@ -114,9 +125,22 @@ | @@ -114,9 +125,22 @@ | ||
114 | ) | 125 | ) |
115 | </select> | 126 | </select> |
116 | 127 | ||
117 | - <select id="selectChamberDealDate" parameterType="java.util.Map" resultType="java.lang.Integer"> | 128 | + <select id="selectChamberDealDateCHUQIN" parameterType="java.util.Map" resultType="java.lang.Integer"> |
129 | + select count(0) from EQ_DealData join SZ_V_School_Student on EQ_DealData.UserId = SZ_V_School_Student.user_id | ||
130 | + where EQ_DealData.DealState ='出勤' | ||
131 | + and EQ_DealData.TemplateId = #{templateId} and DealDate = CONVERT ( VARCHAR ( 10 ), getdate(), 120 ) | ||
132 | + and SZ_V_School_Student.student_id in ( | ||
133 | + select SS_RoomNumber.StudentId from SS_Room join SS_RoomNumber on SS_Room.Id = SS_RoomNumber.Pid | ||
134 | + where SS_Room.Pid in ( | ||
135 | + select SS_Room.ID from SS_RoomManager join SS_Room on SS_Room.Id = SS_RoomManager.RoomId | ||
136 | + where SS_RoomManager.ManagerId = #{userId} and SS_Room.Id = ${id} | ||
137 | + ) and SS_RoomNumber.StudentId != 0 | ||
138 | + ) | ||
139 | + </select> | ||
140 | + | ||
141 | + <select id="selectChamberDealDateQINGJIA" parameterType="java.util.Map" resultType="java.lang.Integer"> | ||
118 | select count(0) from EQ_DealData join SZ_V_School_Student on EQ_DealData.UserId = SZ_V_School_Student.user_id | 142 | select count(0) from EQ_DealData join SZ_V_School_Student on EQ_DealData.UserId = SZ_V_School_Student.user_id |
119 | - where EQ_DealData.DealState in ('出勤','请假') | 143 | + where EQ_DealData.DealState ='请假' |
120 | and EQ_DealData.TemplateId = #{templateId} and DealDate = CONVERT ( VARCHAR ( 10 ), getdate(), 120 ) | 144 | and EQ_DealData.TemplateId = #{templateId} and DealDate = CONVERT ( VARCHAR ( 10 ), getdate(), 120 ) |
121 | and SZ_V_School_Student.student_id in ( | 145 | and SZ_V_School_Student.student_id in ( |
122 | select SS_RoomNumber.StudentId from SS_Room join SS_RoomNumber on SS_Room.Id = SS_RoomNumber.Pid | 146 | select SS_RoomNumber.StudentId from SS_Room join SS_RoomNumber on SS_Room.Id = SS_RoomNumber.Pid |
@@ -128,8 +152,8 @@ | @@ -128,8 +152,8 @@ | ||
128 | </select> | 152 | </select> |
129 | 153 | ||
130 | <select id="selectChamberLeave" parameterType="java.util.Map" resultType="java.lang.Integer"> | 154 | <select id="selectChamberLeave" parameterType="java.util.Map" resultType="java.lang.Integer"> |
131 | - select count(0) from HS_LeaveExamine join SZ_V_School_Student on HS_LeaveExamine.StudentId = SZ_V_School_Student.student_id | ||
132 | - where HS_LeaveExamine.State in (2,7,8,9,10,11) and HS_LeaveExamine.ReturnTime > #{endTime} | 155 | + select COUNT ( DISTINCT HS_LeaveExamine.StudentId ) from HS_LeaveExamine join SZ_V_School_Student on HS_LeaveExamine.StudentId = SZ_V_School_Student.student_id |
156 | + where HS_LeaveExamine.State in (2,7,8,9,10,11) and HS_LeaveExamine.ReturnTime > #{endTime} and HS_LeaveExamine.LeaveTime < #{endTime} | ||
133 | and SZ_V_School_Student.student_id in ( | 157 | and SZ_V_School_Student.student_id in ( |
134 | select SS_RoomNumber.StudentId from SS_Room join SS_RoomNumber on SS_Room.Id = SS_RoomNumber.Pid | 158 | select SS_RoomNumber.StudentId from SS_Room join SS_RoomNumber on SS_Room.Id = SS_RoomNumber.Pid |
135 | where SS_Room.Pid in ( | 159 | where SS_Room.Pid in ( |