Commit 16f6cb8bf7cb04137c446956fd5c0e57e29baf43
1 parent
ad680c7b
Exists in
master
考勤推送
Showing
6 changed files
with
83 additions
and
60 deletions
Show diff stats
cloud/quartz/src/main/java/com/sincere/quartz/job/QDService.java
@@ -52,7 +52,8 @@ public class QDService { | @@ -52,7 +52,8 @@ public class QDService { | ||
52 | List<String> keyList = new ArrayList<>(); | 52 | List<String> keyList = new ArrayList<>(); |
53 | for(Map.Entry<String, String> entity : map.entrySet()){ | 53 | for(Map.Entry<String, String> entity : map.entrySet()){ |
54 | String endTime = entity.getValue().split("_")[1]; | 54 | String endTime = entity.getValue().split("_")[1]; |
55 | - if(DateUtils.getDateDifference(new Date(),DateUtils.string2Date(now+" "+endTime+":00",DateUtils.format2),"m")>=2){ | 55 | + if(DateUtils.getDateDifference(new Date(),DateUtils.string2Date(now+" "+endTime+":00",DateUtils.format2),"m")>=2 |
56 | + && DateUtils.getDateDifference(new Date(),DateUtils.string2Date(now+" "+endTime+":00",DateUtils.format2),"m")<5){ | ||
56 | String key = entity.getKey(); | 57 | String key = entity.getKey(); |
57 | String[] messageArray = key.split("_"); | 58 | String[] messageArray = key.split("_"); |
58 | List<KqTeacherDto> list = scFeign.getTeacherList(Integer.valueOf(messageArray[1])); | 59 | List<KqTeacherDto> list = scFeign.getTeacherList(Integer.valueOf(messageArray[1])); |
@@ -75,6 +76,7 @@ public class QDService { | @@ -75,6 +76,7 @@ public class QDService { | ||
75 | private void initMap(){ | 76 | private void initMap(){ |
76 | map = new HashMap<>(); | 77 | map = new HashMap<>(); |
77 | List<TemplateDto> list = scFeign.getAllTemplate(); | 78 | List<TemplateDto> list = scFeign.getAllTemplate(); |
79 | + System.out.println("------需要推送的考勤模板------"); | ||
78 | for(TemplateDto templateDto : list){ | 80 | for(TemplateDto templateDto : list){ |
79 | String config = templateDto.getConfig(); | 81 | String config = templateDto.getConfig(); |
80 | String[] array = config.split("<Template"); | 82 | String[] array = config.split("<Template"); |
@@ -88,6 +90,7 @@ public class QDService { | @@ -88,6 +90,7 @@ public class QDService { | ||
88 | String type = msg.substring(msg.indexOf("Type")+6,msg.indexOf("Type")+7); | 90 | String type = msg.substring(msg.indexOf("Type")+6,msg.indexOf("Type")+7); |
89 | int nowWeek = DateUtils.getWeek() ; | 91 | int nowWeek = DateUtils.getWeek() ; |
90 | if(Week.contains(nowWeek+"")){ | 92 | if(Week.contains(nowWeek+"")){ |
93 | + System.out.println(templateId+"_"+templateDto.getSchoolId()+"------"+beginTime+"_"+endTime); | ||
91 | map.put(templateId+"_"+templateDto.getSchoolId()+"_"+templateDto.getType() , beginTime+"_"+endTime+"_"+type); | 94 | map.put(templateId+"_"+templateDto.getSchoolId()+"_"+templateDto.getType() , beginTime+"_"+endTime+"_"+type); |
92 | } | 95 | } |
93 | }catch (Exception e){ | 96 | }catch (Exception e){ |
@@ -102,32 +105,33 @@ public class QDService { | @@ -102,32 +105,33 @@ public class QDService { | ||
102 | String tableSuffix = DateUtils.date2String(new Date(), DateUtils.format); | 105 | String tableSuffix = DateUtils.date2String(new Date(), DateUtils.format); |
103 | AppDto appDto = scFeign.getApp(list.get(0).getSchoolId(),1); | 106 | AppDto appDto = scFeign.getApp(list.get(0).getSchoolId(),1); |
104 | for(KqTeacherDto teacher : list){ | 107 | for(KqTeacherDto teacher : list){ |
105 | - if(teacher.getName().equals("陈杰") || teacher.getName().equals("沈川")) { | ||
106 | - if(StringUtils.isNotBlank(teacher.getDingUserId())){ | ||
107 | - List<CensusKqDto> censusKqDtos = scFeign.getCensusKq(teacher.getUserId(),Integer.valueOf(times[2])); | ||
108 | - String message = ""; | ||
109 | - for(CensusKqDto censusKqDto : censusKqDtos){ | ||
110 | - int number = censusKqDto.getAllT() - censusKqDto.getKqT() ; | ||
111 | - message += "[" + censusKqDto.getClassName() + "]未考勤" + number + "人;"; | ||
112 | - } | ||
113 | - DingSms dingSms = new DingSms(); | ||
114 | - dingSms.setTableName("DingSmsNew"+tableSuffix); | ||
115 | - dingSms.setMsg("报告类型:"+KqTypeEnums.getName(Integer.valueOf(times[2])) + "出勤报告 \n - "+ | ||
116 | - "签到日期:"+DateUtils.date2String(new Date(),DateUtils.format1)+ "("+DateUtils.getWeekName()+") \n - "+ | ||
117 | - "签到时间:"+times[0]+"-"+ times[1] +" \n - "+ | ||
118 | - "整体数据:" + message.substring(0,message.length()-1)); | ||
119 | - dingSms.setSchoolId(teacher.getSchoolId()); | ||
120 | - dingSms.setDingUserId(teacher.getDingUserId()); | ||
121 | - dingSms.setAgentId(appDto.getAgentId()); | ||
122 | - String wapUrl = "http://campus.myjxt.com/studentRecord/znxwwebapp/index.html?" + | ||
123 | - "schoolid="+teacher.getSchoolId()+"&userId="+teacher.getUserId()+"&name="+teacher.getName()+ | ||
124 | - "&data="+teacher.getDingUserId()+"&type=1&stype=4&mobile="+teacher.getMobile()+"&pass="+teacher.getPass()+ | ||
125 | - "&face=&sourcetype=16&soutype=3×tamp="+ DateUtils.getDate() ; | ||
126 | - dingSms.setWapUrl(wapUrl); | ||
127 | - dingSms.setTdType(TypeEnums.kaoqing.getType()); | ||
128 | - smsMapper.insertDing(dingSms); | 108 | + if(StringUtils.isNotBlank(teacher.getDingUserId())){ |
109 | + List<CensusKqDto> censusKqDtos = scFeign.getCensusKq(teacher.getUserId(),Integer.valueOf(times[2])); | ||
110 | + String message = ""; | ||
111 | + for(CensusKqDto censusKqDto : censusKqDtos){ | ||
112 | + int number = censusKqDto.getAllT() - censusKqDto.getKqT() ; | ||
113 | + message += "[" + censusKqDto.getClassName() + "]未考勤" + number + "人;"; | ||
129 | } | 114 | } |
115 | + DingSms dingSms = new DingSms(); | ||
116 | + dingSms.setName(teacher.getName()); | ||
117 | + dingSms.setTableName("DingSmsNew"+tableSuffix); | ||
118 | + dingSms.setMsg("报告类型:"+KqTypeEnums.getName(Integer.valueOf(times[2])) + "出勤报告 \n - "+ | ||
119 | + "签到日期:"+DateUtils.date2String(new Date(),DateUtils.format1)+ "("+DateUtils.getWeekName()+") \n - "+ | ||
120 | + "签到时间:"+times[0]+"-"+ times[1] +" \n - "+ | ||
121 | + "整体数据:" + message.substring(0,message.length()-1)); | ||
122 | + dingSms.setSchoolId(teacher.getSchoolId()); | ||
123 | + dingSms.setDingUserId(teacher.getDingUserId()); | ||
124 | + dingSms.setAgentId(appDto.getAgentId()); | ||
125 | + String wapUrl = "http://campus.myjxt.com/studentRecord/znxwwebapp/index.html?" + | ||
126 | + "schoolid="+teacher.getSchoolId()+"&userId="+teacher.getUserId()+"&name="+teacher.getName()+ | ||
127 | + "&data="+teacher.getDingUserId()+"&type=1&stype=4&mobile="+teacher.getMobile()+"&pass="+teacher.getPass()+ | ||
128 | + "&face=&sourcetype=16&soutype=3×tamp="+ DateUtils.getDate() ; | ||
129 | + dingSms.setWapUrl(wapUrl); | ||
130 | + dingSms.setReceiveUserId(teacher.getUserId()); | ||
131 | + dingSms.setTdType(TypeEnums.kaoqing.getType()); | ||
132 | + smsMapper.insertDing(dingSms); | ||
130 | } | 133 | } |
134 | + | ||
131 | } | 135 | } |
132 | } | 136 | } |
133 | 137 | ||
@@ -136,34 +140,32 @@ public class QDService { | @@ -136,34 +140,32 @@ public class QDService { | ||
136 | String tableSuffix = DateUtils.date2String(new Date(), DateUtils.format); | 140 | String tableSuffix = DateUtils.date2String(new Date(), DateUtils.format); |
137 | AppDto appDto = scFeign.getApp(list.get(0).getSchoolId(),0); | 141 | AppDto appDto = scFeign.getApp(list.get(0).getSchoolId(),0); |
138 | for(KqTeacherDto teacher : list){ | 142 | for(KqTeacherDto teacher : list){ |
139 | - if(teacher.getName().equals("陶汉栋") || teacher.getName().equals("沈川")) { | ||
140 | - if (StringUtils.isNotBlank(teacher.getOpenId())) { | ||
141 | - List<CensusKqDto> censusKqDtos = scFeign.getCensusKq(teacher.getUserId(),Integer.valueOf(times[2])); | ||
142 | - String message = ""; | ||
143 | - for(CensusKqDto censusKqDto : censusKqDtos){ | ||
144 | - int number = censusKqDto.getAllT() - censusKqDto.getKqT() ; | ||
145 | - message += "[" + censusKqDto.getClassName() + "]未考勤" + number + "人;"; | ||
146 | - } | ||
147 | - WeChatSms weChatSms = new WeChatSms(); | ||
148 | - weChatSms.setTableName("qyhSmsNew" + tableSuffix); | ||
149 | - weChatSms.setMsg("报告类型:"+KqTypeEnums.getName(Integer.valueOf(times[2])) + "出勤报告 \n - "+ | ||
150 | - "签到日期:"+DateUtils.date2String(new Date(),DateUtils.format1)+ "("+DateUtils.getWeekName()+") \n - "+ | ||
151 | - "签到时间:"+times[0]+"-"+ times[1] +" \n - "+ | ||
152 | - "整体数据:" + message.substring(0,message.length()-1)); | ||
153 | - weChatSms.setSchoolId(teacher.getSchoolId()); | ||
154 | - weChatSms.setName(teacher.getName()); | ||
155 | - weChatSms.setQiYeHaoUserId(teacher.getWeChatUserId()); | ||
156 | - weChatSms.setReceiveUserId(teacher.getUserId()); | ||
157 | - weChatSms.setAppId(appDto.getAgentId()); | ||
158 | - weChatSms.setSecret(appDto.getAgentSecret()); | ||
159 | - String msgUrl = "http://campus.myjxt.com/studentRecord/znxwwebapp/index.html?" + | ||
160 | - "schoolid=" + teacher.getSchoolId() + "&userId=" + teacher.getUserId() + "&name=" + teacher.getName() + | ||
161 | - "&data=" + teacher.getWeChatUserId() + "&type=1&stype=3&mobile=" + teacher.getMobile() + "&pass=" + teacher.getPass() + | ||
162 | - "&face=" + teacher.getFace() + "&sourcetype=16&soutype=2×tamp=" + DateUtils.getDate(); | ||
163 | - weChatSms.setMsgUrl(msgUrl); | ||
164 | - weChatSms.setTdType(TypeEnums.kaoqing.getType()); | ||
165 | - smsMapper.insertWeChat(weChatSms); | 143 | + if (StringUtils.isNotBlank(teacher.getOpenId())) { |
144 | + List<CensusKqDto> censusKqDtos = scFeign.getCensusKq(teacher.getUserId(),Integer.valueOf(times[2])); | ||
145 | + String message = ""; | ||
146 | + for(CensusKqDto censusKqDto : censusKqDtos){ | ||
147 | + int number = censusKqDto.getAllT() - censusKqDto.getKqT() ; | ||
148 | + message += "[" + censusKqDto.getClassName() + "]未考勤" + number + "人;"; | ||
166 | } | 149 | } |
150 | + WeChatSms weChatSms = new WeChatSms(); | ||
151 | + weChatSms.setTableName("qyhSmsNew" + tableSuffix); | ||
152 | + weChatSms.setMsg("报告类型:"+KqTypeEnums.getName(Integer.valueOf(times[2])) + "出勤报告 \n - "+ | ||
153 | + "签到日期:"+DateUtils.date2String(new Date(),DateUtils.format1)+ "("+DateUtils.getWeekName()+") \n - "+ | ||
154 | + "签到时间:"+times[0]+"-"+ times[1] +" \n - "+ | ||
155 | + "整体数据:" + message.substring(0,message.length()-1)); | ||
156 | + weChatSms.setSchoolId(teacher.getSchoolId()); | ||
157 | + weChatSms.setName(teacher.getName()); | ||
158 | + weChatSms.setQiYeHaoUserId(teacher.getWeChatUserId()); | ||
159 | + weChatSms.setReceiveUserId(teacher.getUserId()); | ||
160 | + weChatSms.setAppId(appDto.getAgentId()); | ||
161 | + weChatSms.setSecret(appDto.getAgentSecret()); | ||
162 | + String msgUrl = "http://campus.myjxt.com/studentRecord/znxwwebapp/index.html?" + | ||
163 | + "schoolid=" + teacher.getSchoolId() + "&userId=" + teacher.getUserId() + "&name=" + teacher.getName() + | ||
164 | + "&data=" + teacher.getWeChatUserId() + "&type=1&stype=3&mobile=" + teacher.getMobile() + "&pass=" + teacher.getPass() + | ||
165 | + "&face=" + teacher.getFace() + "&sourcetype=16&soutype=2×tamp=" + DateUtils.getDate(); | ||
166 | + weChatSms.setMsgUrl(msgUrl); | ||
167 | + weChatSms.setTdType(TypeEnums.kaoqing.getType()); | ||
168 | + smsMapper.insertWeChat(weChatSms); | ||
167 | } | 169 | } |
168 | } | 170 | } |
169 | } | 171 | } |
cloud/quartz/src/main/java/com/sincere/quartz/model/DingSms.java
@@ -14,6 +14,8 @@ public class DingSms { | @@ -14,6 +14,8 @@ public class DingSms { | ||
14 | private String wapUrl ; | 14 | private String wapUrl ; |
15 | private String agentId ; | 15 | private String agentId ; |
16 | private int tdType ; | 16 | private int tdType ; |
17 | + private String receiveUserId ; | ||
18 | + private String name ; | ||
17 | 19 | ||
18 | public String getTableName() { | 20 | public String getTableName() { |
19 | return tableName; | 21 | return tableName; |
@@ -70,4 +72,20 @@ public class DingSms { | @@ -70,4 +72,20 @@ public class DingSms { | ||
70 | public void setTdType(int tdType) { | 72 | public void setTdType(int tdType) { |
71 | this.tdType = tdType; | 73 | this.tdType = tdType; |
72 | } | 74 | } |
75 | + | ||
76 | + public String getReceiveUserId() { | ||
77 | + return receiveUserId; | ||
78 | + } | ||
79 | + | ||
80 | + public void setReceiveUserId(String receiveUserId) { | ||
81 | + this.receiveUserId = receiveUserId; | ||
82 | + } | ||
83 | + | ||
84 | + public String getName() { | ||
85 | + return name; | ||
86 | + } | ||
87 | + | ||
88 | + public void setName(String name) { | ||
89 | + this.name = name; | ||
90 | + } | ||
73 | } | 91 | } |
cloud/quartz/src/main/resources/application.yaml
@@ -14,7 +14,9 @@ mybatis: | @@ -14,7 +14,9 @@ mybatis: | ||
14 | mapper-locations: classpath:mapper/*.xml | 14 | mapper-locations: classpath:mapper/*.xml |
15 | type-aliases-package: com.sincere.quartz.mapper | 15 | type-aliases-package: com.sincere.quartz.mapper |
16 | check-config-location: true | 16 | check-config-location: true |
17 | - | 17 | +ribbon: |
18 | + ReadTimeout: 50000 | ||
19 | + ConnectTimeout: 5000 | ||
18 | eureka: | 20 | eureka: |
19 | instance: | 21 | instance: |
20 | hostname: localhost | 22 | hostname: localhost |
cloud/quartz/src/main/resources/mapper/SmsMapper.xml
@@ -3,12 +3,12 @@ | @@ -3,12 +3,12 @@ | ||
3 | <mapper namespace="com.sincere.quartz.mapper.SmsMapper"> | 3 | <mapper namespace="com.sincere.quartz.mapper.SmsMapper"> |
4 | 4 | ||
5 | <insert id="insertDing" parameterType="com.sincere.quartz.model.DingSms"> | 5 | <insert id="insertDing" parameterType="com.sincere.quartz.model.DingSms"> |
6 | - insert into ${tableName} (Msg,MsgID,SchoolID,Type,Status,intime,sendtime,DingUserId,WapUrl,agentid,tdtype) | ||
7 | - values (#{msg},-1,#{schoolId},1,0,GETDATE(),GETDATE(),#{dingUserId},#{wapUrl},#{agentId},#{tdType}) | 6 | + insert into ${tableName} (Msg,MsgID,SchoolID,Type,Status,intime,sendtime,DingUserId,WapUrl,agentid,tdtype,ReceiveUserID,Remark) |
7 | + values (#{msg},-1,#{schoolId},1,0,GETDATE(),GETDATE(),#{dingUserId},#{wapUrl},#{agentId},#{tdType},#{receiveUserId},#{name}) | ||
8 | </insert> | 8 | </insert> |
9 | 9 | ||
10 | <insert id="insertWeChat" parameterType="com.sincere.quartz.model.WeChatSms"> | 10 | <insert id="insertWeChat" parameterType="com.sincere.quartz.model.WeChatSms"> |
11 | - insert into ${tableName} (SchoolID,MsgID,Guid,WapUrl,Status,intime,sendTime,SendUserName,ReceiveUserID,QiYeHaoUserId,AppID,Secret,tdtype) | ||
12 | - values (#{schoolId},-1,#{msg},#{msgUrl},0,GETDATE(),GETDATE(),'智能校卫',#{receiveUserId},#{qiYeHaoUserId},#{appId},#{secret},#{tdType}) | 11 | + insert into ${tableName} (SchoolID,MsgID,Guid,WapUrl,Status,intime,sendTime,SendUserName,ReceiveUserID,QiYeHaoUserId,AppID,Secret,tdtype,Remark) |
12 | + values (#{schoolId},-1,#{msg},#{msgUrl},0,GETDATE(),GETDATE(),'智能校卫',#{receiveUserId},#{qiYeHaoUserId},#{appId},#{secret},#{tdType},#{name}) | ||
13 | </insert> | 13 | </insert> |
14 | </mapper> | 14 | </mapper> |
cloud/search_smartCampus/src/main/resources/mapper/KqTemplateMapper.xml
@@ -13,6 +13,7 @@ | @@ -13,6 +13,7 @@ | ||
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.ScenceType = 0 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 | </select> | 17 | </select> |
17 | 18 | ||
18 | <resultMap id="TeacherMap" type="com.sincere.common.dto.smartCampus.KqTeacherDto"> | 19 | <resultMap id="TeacherMap" type="com.sincere.common.dto.smartCampus.KqTeacherDto"> |
cloud/search_xiaoan/src/main/resources/application.yml
@@ -4,9 +4,9 @@ spring: | @@ -4,9 +4,9 @@ spring: | ||
4 | application: | 4 | application: |
5 | name: xiaoanSearch | 5 | name: xiaoanSearch |
6 | datasource: | 6 | datasource: |
7 | - username: SZJXTUSER | ||
8 | - password: xst200919 | ||
9 | - url: jdbc:sqlserver://60.190.202.57:14333;database=xiaoanhxy | 7 | + username: szjxtuser |
8 | + password: RQminVCJota3H1u8bBYH | ||
9 | + url: jdbc:sqlserver://116.62.241.27:33419;database=xiaoanhxy | ||
10 | driver-class-name: com.microsoft.sqlserver.jdbc.SQLServerDriver | 10 | driver-class-name: com.microsoft.sqlserver.jdbc.SQLServerDriver |
11 | ##mybatis | 11 | ##mybatis |
12 | mybatis: | 12 | mybatis: |