From eff94aa9bbbbd80ab8eed94ded152367de3a481e Mon Sep 17 00:00:00 2001 From: baishou_zjx <2710684311@qq.com> Date: Mon, 19 Aug 2019 15:23:57 +0800 Subject: [PATCH] 获取学生信息修改,微信模板推送 --- springboot/morning-check/src/main/java/com/sincere/morningcheck/common/AESDeEncoder.java | 134 ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ springboot/morning-check/src/main/java/com/sincere/morningcheck/controller/MorningCheckController.java | 78 ++++++++++++++++++++++++++++++++++++++++++++++++++---------------------------- springboot/morning-check/src/main/java/com/sincere/morningcheck/dao/StudentDao.java | 13 +++++++++++++ springboot/morning-check/src/main/java/com/sincere/morningcheck/model/WXCheckTemplate.java | 37 +++++++++++++++++++++++++++++++++++++ springboot/morning-check/src/main/java/com/sincere/morningcheck/service/StudentService.java | 4 ++++ springboot/morning-check/src/main/java/com/sincere/morningcheck/service/impl/StudentCheckReportServiceImpl.java | 6 +++--- springboot/morning-check/src/main/java/com/sincere/morningcheck/service/impl/StudentServiceImpl.java | 10 ++++++++++ springboot/morning-check/src/main/java/com/sincere/morningcheck/utils/ApiHelper.java | 14 +++++++++----- springboot/morning-check/src/main/resources/application-dev.properties | 15 +++++++++++++++ springboot/morning-check/src/main/resources/application-prod.properties | 2 +- springboot/morning-check/src/main/resources/application.properties | 10 +++++----- springboot/morning-check/src/main/resources/mapper/studentmapper.xml | 20 ++++++++++++++++++++ 12 files changed, 301 insertions(+), 42 deletions(-) create mode 100644 springboot/morning-check/src/main/java/com/sincere/morningcheck/common/AESDeEncoder.java create mode 100644 springboot/morning-check/src/main/java/com/sincere/morningcheck/model/WXCheckTemplate.java create mode 100644 springboot/morning-check/src/main/resources/application-dev.properties diff --git a/springboot/morning-check/src/main/java/com/sincere/morningcheck/common/AESDeEncoder.java b/springboot/morning-check/src/main/java/com/sincere/morningcheck/common/AESDeEncoder.java new file mode 100644 index 0000000..aee0dcf --- /dev/null +++ b/springboot/morning-check/src/main/java/com/sincere/morningcheck/common/AESDeEncoder.java @@ -0,0 +1,134 @@ +package com.sincere.morningcheck.common; + +import sun.misc.BASE64Decoder; +import sun.misc.BASE64Encoder; + +import javax.crypto.Cipher; +import javax.crypto.KeyGenerator; +import javax.crypto.SecretKey; +import javax.crypto.spec.SecretKeySpec; +import java.security.SecureRandom; + +public class AESDeEncoder { + /* + * 加密 + * 1.构造密钥生成器KeyGenerator + * 2.根据ecnodeRules规则初始化密钥生成器 + * 3.产生密钥 + * 4.创建和初始化密码器 + * 5.内容加密 + * 6.返回字符串 + */ + public static String AESEncode(String encodeRules, String content) { + try { + //1.构造密钥生成器,指定为AES算法,不区分大小写 + /*javax.crypto + 类 KeyGenerator + * 此类提供(对称)密钥生成器的功能。 + */ + KeyGenerator keygen = KeyGenerator.getInstance("AES"); + //2.根据ecnodeRules规则初始化密钥生成器 + //生成一个128位的随机源,根据传入的字节数组 + keygen.init(128, new SecureRandom(encodeRules.getBytes())); + //3.产生原始对称密钥 + /*javax.crypto + 接口 SecretKey + 所有超级接口: + Key, Serializable + * SecretKey + * public interface SecretKey extends Key + * 秘密(对称)密钥。 + * 此接口不包含方法或常量。其唯一目的是分组秘密密钥(并为其提供类型安全)。 +此接口的提供者实现必须改写继承自 java.lang.Object 的 equals 和 hashCode 方法, +***以便根据底层密钥材料而不是根据引用进行秘密密钥比较***。 +实现此接口的密钥以其编码格式(请参阅 getFormat)返回字符串 RAW,并返回作为 getEncoded 方法调用结果的原始密钥字节。 +(getFormat 和 getEncoded 方法继承自 java.security.Key 父接口。) + 常用方法: + * byte[] getEncoded() + 返回基本编码格式的密钥,如果此密钥不支持编码,则返回 null。 + * + */ + SecretKey original_key = keygen.generateKey(); + //4.获得原始 对称密钥 的字节数组 + byte[] raw = original_key.getEncoded(); + //5.根据字节数组生成AES密钥 + /* + * SecretKeySpec + * public class SecretKeySpec extends Object implements KeySpec, SecretKey + * 此类以与 provider 无关的方式指定一个密钥。 +此类仅对能表示为 一个字节数组 并且没有任何与之相关联的钥参数的 原始密钥 有用,如,DES 或者 Triple DES 密钥。 + */ + SecretKey key = new SecretKeySpec(raw, "AES"); + //6.根据指定算法AES自成密码器 + /* + * Cipher + * public class Cipher extends Object + * 此类为加密和解密提供密码功能。它构成了 Java Cryptographic Extension (JCE) 框架的核心。 + * 为创建 Cipher 对象,应用程序调用 Cipher 的 getInstance 方法并将所请求转换 的名称传递给它。 + 还可以指定提供者的名称(可选)。 + 常用方法 + byte[] doFinal() + 结束多部分加密或解密操作(具体取决于此 Cipher 的初始化方式)。 + + */ + Cipher cipher = Cipher.getInstance("AES"); + //7.初始化密码器,第一个参数为加密(Encrypt_mode)或者解密解密(Decrypt_mode)操作,第二个参数为使用的KEY + cipher.init(Cipher.ENCRYPT_MODE, key); + //8.获取加密内容的字节数组(这里要设置为utf-8)不然内容中如果有中文和英文混合中文就会解密为乱码 + byte[] byte_encode = content.getBytes("utf-8"); + //9.根据密码器的初始化方式--加密:将数据加密 + byte[] byte_AES = cipher.doFinal(byte_encode); + //10.将加密后的数据转换为字符串 + //这里用Base64Encoder中会找不到包 + //解决办法: + //在项目的Build path中先移除JRE System Library,再添加库JRE System Library,重新编译后就一切正常了。 + String AES_encode = new String(new BASE64Encoder().encode(byte_AES)); + //11.将字符串返回 + return AES_encode; + } catch (Exception e) { + e.printStackTrace(); + } + //如果有错就返加nulll + return null; + } + + /* + * 解密 + * 解密过程: + * 1.同加密1-4步 + * 2.将加密后的字符串反纺成byte[]数组 + * 3.将加密内容解密 + */ + public static String AESDncode(String encodeRules, String content) { + try { + //1.构造密钥生成器,指定为AES算法,不区分大小写 + KeyGenerator keygen = KeyGenerator.getInstance("AES"); + //2.根据ecnodeRules规则初始化密钥生成器 + //生成一个128位的随机源,根据传入的字节数组 + keygen.init(128, new SecureRandom(encodeRules.getBytes())); + //3.产生原始对称密钥 + SecretKey original_key = keygen.generateKey(); + //4.获得原始对称密钥的字节数组 + byte[] raw = original_key.getEncoded(); + //5.根据字节数组生成AES密钥 + SecretKey key = new SecretKeySpec(raw, "AES"); + //6.根据指定算法AES自成密码器 + Cipher cipher = Cipher.getInstance("AES"); + //7.初始化密码器,第一个参数为加密(Encrypt_mode)或者解密(Decrypt_mode)操作,第二个参数为使用的KEY + cipher.init(Cipher.DECRYPT_MODE, key); + //8.将加密并编码后的内容解码成字节数组 + byte[] byte_content = new BASE64Decoder().decodeBuffer(content); + /* + * 解密 + */ + byte[] byte_decode = cipher.doFinal(byte_content); + String AES_decode = new String(byte_decode, "utf-8"); + return AES_decode; + } catch (Exception e) { + e.printStackTrace(); + } + + //如果有错就返加nulll + return null; + } +} diff --git a/springboot/morning-check/src/main/java/com/sincere/morningcheck/controller/MorningCheckController.java b/springboot/morning-check/src/main/java/com/sincere/morningcheck/controller/MorningCheckController.java index 1029d46..77942c7 100644 --- a/springboot/morning-check/src/main/java/com/sincere/morningcheck/controller/MorningCheckController.java +++ b/springboot/morning-check/src/main/java/com/sincere/morningcheck/controller/MorningCheckController.java @@ -1,6 +1,7 @@ package com.sincere.morningcheck.controller; -import com.sincere.morningcheck.common.EhcacheUtil; +import com.alibaba.fastjson.JSON; +import com.sincere.morningcheck.common.AESDeEncoder; import com.sincere.morningcheck.common.MD5; import com.sincere.morningcheck.common.ServerResponse; import com.sincere.morningcheck.model.*; @@ -8,7 +9,7 @@ import com.sincere.morningcheck.service.FileUpAndDownService; import com.sincere.morningcheck.service.StudentCheckReportService; import com.sincere.morningcheck.service.StudentService; import com.sincere.morningcheck.service.UserServer; -import com.sincere.morningcheck.service.impl.FileUpAndDownServiceImpl; +import com.sincere.morningcheck.utils.ApiHelper; import com.sincere.morningcheck.utils.DataConvertHelper; import com.sincere.morningcheck.utils.LogUtil; import io.swagger.annotations.Api; @@ -21,22 +22,15 @@ import org.springframework.beans.factory.annotation.Value; import org.springframework.web.bind.annotation.*; import org.springframework.web.multipart.MultipartFile; -import javax.servlet.http.HttpServletRequest; -import javax.servlet.http.HttpServletResponse; -import javax.servlet.http.HttpSession; import java.text.ParseException; import java.text.SimpleDateFormat; -import java.util.Calendar; -import java.util.Date; -import java.util.HashMap; -import java.util.Map; +import java.util.*; @RestController @RequestMapping("user") @Api(value = "MorningCheckController", tags = "晨检机晨检接口说明") public class MorningCheckController { - private String token = "CESHI651BB2B8AEBBF0DB2FFC9B4EAD5F04E2"; @Value("${salt}") private String salt; @@ -60,10 +54,10 @@ public class MorningCheckController { @ApiImplicitParam(name = "authSign", value = "签名", dataType = "String",required = true,paramType = "query"), }) @PostMapping("login") - public ServerResponse login(HttpServletRequest request,@RequestParam String deviceNo, @RequestParam String password,@RequestParam String authSign){ + public ServerResponse login(@RequestParam String deviceNo, @RequestParam String password,@RequestParam String authSign){ ServerResponse serverResponse = null; - + LogUtil.printInfoLog("进入登陆接口"); Map map = new HashMap(); map.put("password", password); map.put("deviceNo", deviceNo); @@ -72,18 +66,16 @@ public class MorningCheckController { System.out.println(queryUrl); try { String signUrl = queryUrl.replace("&",""); - System.out.println(signUrl); // String md5 = MD5.md5(signUrl, salt); boolean verify = MD5.verify(signUrl,salt,authSign); - + System.out.println("校验是否成功:"+verify); if(verify) { User user = userServer.getDeviceUser(deviceNo); user.setParameter("0"); + String token = user.getDeviceId()+","+user.getSchoolId();//AESDeEncoder.AESEncode("token",user.getDeviceId()+","+user.getSchoolId()); user.setToken(token); - HttpSession session = request.getSession(); - session.setAttribute("deviceId",user.getDeviceId()); - session.setMaxInactiveInterval(-1);//从不过期 + LogUtil.printInfoLog("生成的Token信息包括设备标识和学校标识"+token); serverResponse = ServerResponse.createBySuccess("success",user); }else{ @@ -152,7 +144,7 @@ public class MorningCheckController { "时间格式为 : yyyy-MM-dd-HH-mm-ss", dataType = "String",paramType = "query") }) @PostMapping("signByCard") - public ServerResponse swipeCard(HttpServletRequest request,@RequestParam String token,@RequestParam String cardNo,@RequestParam Integer imageId,@RequestParam String authSign,@RequestParam(required = false) String date){ + public ServerResponse swipeCard(@RequestParam String token,@RequestParam String cardNo,@RequestParam Integer imageId,@RequestParam String authSign,@RequestParam(required = false) String date){ LogUtil.printInfoLog("刷卡签到传入的参数:卡号"+cardNo+",图片ID:"+imageId+",签名"+authSign); ServerResponse serverResponse = null; @@ -167,8 +159,6 @@ public class MorningCheckController { Date dateIn = null; if(StringUtils.isBlank(date)){ Calendar calendar= Calendar.getInstance(); -// SimpleDateFormat dateFormat= new SimpleDateFormat("yyyy-MM-dd-HH-mm-ss"); -// date = dateFormat.format(calendar.getTime()); dateIn= calendar.getTime(); }else{ @@ -188,8 +178,9 @@ public class MorningCheckController { boolean verify = MD5.verify(signUrl,salt,authSign); System.out.println("签名是否正确"+verify); if(verify) { - HttpSession session = request.getSession(); - String deviceId = session.getAttribute("deviceId").toString(); + + LogUtil.printInfoLog(token);; + String deviceId = token.split(",")[0]; Map hashMap = new HashMap<>(); //设备编号 hashMap.put("att_id",deviceId); @@ -197,7 +188,7 @@ public class MorningCheckController { hashMap.put("func_no","08"); hashMap.put("flag",0); hashMap.put("intime",dateIn); - System.out.println(deviceId); + System.out.println("设备标识"+deviceId); studentService.swipeCard(hashMap); System.out.println("集合数量:"+hashMap.size()); @@ -230,7 +221,7 @@ public class MorningCheckController { @ApiImplicitParam(name = "authSign", value = "签名", dataType = "String",required = true,paramType = "query") }) @PostMapping("signOutByCard") - public ServerResponse signOutByCard(HttpServletRequest request,@RequestParam String token,@RequestParam String cardNo,@RequestParam Integer imageId,@RequestParam String authSign){ + public ServerResponse signOutByCard(@RequestParam String token,@RequestParam String cardNo,@RequestParam Integer imageId,@RequestParam String authSign){ ServerResponse serverResponse = null; LogUtil.printInfoLog("离园签到传入的参数:卡号"+cardNo+",图片ID:"+imageId+",签名"+authSign); @@ -248,8 +239,7 @@ public class MorningCheckController { boolean verify = MD5.verify(signUrl,salt,authSign); System.out.println("签名是否正确"+verify); if(verify) { - HttpSession session = request.getSession(); - String deviceId = session.getAttribute("deviceId").toString(); + String deviceId = token.split(",")[0]; Map hashMap = new HashMap<>(); hashMap.put("att_id",deviceId); hashMap.put("card_num",card); @@ -352,18 +342,50 @@ public class MorningCheckController { map.put("handImgId",handImgId); map.put("mouthImgId",mouthImgId); map.put("eyeImgId",eyeImgId); - + Date checkDate = new Date(); String queryUrl = DataConvertHelper.mapAscSortToUrl(map); try { String signUrl = queryUrl.replace("&",""); boolean verify = MD5.verify(signUrl,salt,authSign); if(verify) { + //微信模板消息推送 + Thread thread = new Thread(()->{ + + try { + + String schoolId = token.split(",")[1];//AESDeEncoder.AESDncode("token",token).split(",")[1]; + String stuUserId = studentService.getStuUserId(card, schoolId); + List openIds = studentService.getOpenId(stuUserId, schoolId); + if (openIds != null) { + + SimpleDateFormat simpleDateFormat = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss"); + + for (String openId : openIds) { + WXCheckTemplate wxCheckTemplate = new WXCheckTemplate(); + wxCheckTemplate.setFirstData("家长您好,有一份晨检报告待查看"); + wxCheckTemplate.setKeyword1("晨检"); + wxCheckTemplate.setKeyword2(simpleDateFormat.format(checkDate)); + wxCheckTemplate.setOpenID(openId); + wxCheckTemplate.setSchoolID(schoolId); + wxCheckTemplate.setUrl("http://campus.myjxt.com/Web/Skin/EasyNotice/Modules/EMGzh/XSTVerification3.html?type=5"); + String jsonResult = JSON.toJSONString(wxCheckTemplate); + LogUtil.printInfoLog("微信模板接口调用:"+jsonResult); + String returnResult = ApiHelper.doPost("http://campus.myjxt.com/api/SendGzhTemplate/SengMorningCheck", null, jsonResult); + } + } + }catch (Exception ex){ + LogUtil.printInfoLog("异常信息"+ex.getMessage()); + } + + }); + thread.start(); + StudentCheckReport studentCheckReport = new StudentCheckReport(); studentCheckReport.setAccess(access); studentCheckReport.setCardNo(card); studentCheckReport.setCheckResult(result); studentCheckReport.setRobotResult(robotResult); - Date checkDate = new Date(); + studentCheckReport.setCheckTime(checkDate); studentCheckReport.setInTime(checkDate); studentCheckReport.setTemperature(temperature); diff --git a/springboot/morning-check/src/main/java/com/sincere/morningcheck/dao/StudentDao.java b/springboot/morning-check/src/main/java/com/sincere/morningcheck/dao/StudentDao.java index 3b1fd34..b523a8a 100644 --- a/springboot/morning-check/src/main/java/com/sincere/morningcheck/dao/StudentDao.java +++ b/springboot/morning-check/src/main/java/com/sincere/morningcheck/dao/StudentDao.java @@ -18,14 +18,27 @@ public interface StudentDao { Student getStudentByCardNo(@Param("cardNo") String cardNo); + Student getStudentByStudentId(@Param("schoolId")Integer schoolId,@Param("studentId")Integer studentId); + Student getStudentByStuUserId(@Param("sUserId") String sUserId); int getStuCountBySchoolId(@Param("schoolId") Integer schoolId); List getGradeBySchoolId(@Param("schoolId") Integer schoolId); + + /** + * 获取学生用户标识 + * @param num + * @return + */ + String getStuUserId(@Param("num") String num,@Param("schoolId")String schoolId); + + List getOpenId(@Param("stuUserId")String stuUserId,@Param("schoolId")String schoolId); /** * 传入的参数和返回的结果都在map集合参数params中 * @param params */ void swipeCard(Map params); + + } diff --git a/springboot/morning-check/src/main/java/com/sincere/morningcheck/model/WXCheckTemplate.java b/springboot/morning-check/src/main/java/com/sincere/morningcheck/model/WXCheckTemplate.java new file mode 100644 index 0000000..532aecd --- /dev/null +++ b/springboot/morning-check/src/main/java/com/sincere/morningcheck/model/WXCheckTemplate.java @@ -0,0 +1,37 @@ +package com.sincere.morningcheck.model; + +import lombok.Data; + +import java.util.Date; + +@Data +public class WXCheckTemplate { + + /** + * 详情页面url + */ + private String Url ; + /** + * 通知提示 + */ + private String FirstData; + /** + * 报告类型 + */ + private String Keyword1 ; + /** + * 生成时间 + */ + private String Keyword2; + + /** + * open数组 + */ + public String OpenID; + + /** + * 学校id + */ + private String SchoolID; + +} diff --git a/springboot/morning-check/src/main/java/com/sincere/morningcheck/service/StudentService.java b/springboot/morning-check/src/main/java/com/sincere/morningcheck/service/StudentService.java index d71f508..9b63836 100644 --- a/springboot/morning-check/src/main/java/com/sincere/morningcheck/service/StudentService.java +++ b/springboot/morning-check/src/main/java/com/sincere/morningcheck/service/StudentService.java @@ -12,4 +12,8 @@ public interface StudentService { Student getStudentByCardNo(String cardNo); void swipeCard(Map params); + + String getStuUserId(String num,String schoolId); + + List getOpenId(String stuUserId,String schoolId); } diff --git a/springboot/morning-check/src/main/java/com/sincere/morningcheck/service/impl/StudentCheckReportServiceImpl.java b/springboot/morning-check/src/main/java/com/sincere/morningcheck/service/impl/StudentCheckReportServiceImpl.java index 341fa40..44e4a68 100644 --- a/springboot/morning-check/src/main/java/com/sincere/morningcheck/service/impl/StudentCheckReportServiceImpl.java +++ b/springboot/morning-check/src/main/java/com/sincere/morningcheck/service/impl/StudentCheckReportServiceImpl.java @@ -206,7 +206,7 @@ public class StudentCheckReportServiceImpl implements StudentCheckReportService for(StudentCheckReport item : studentCheckReports){ ApiStudent apiStudent = new ApiStudent(); apiStudent.setCardNo(item.getCardNo()); - SimpleDateFormat simpleDateFormat = new SimpleDateFormat("hh:mm"); + SimpleDateFormat simpleDateFormat = new SimpleDateFormat("HH:mm"); apiStudent.setCheckTime(simpleDateFormat.format(item.getCheckTime())); apiStudent.setTemperature(item.getTemperature()); if(StringUtils.isNotBlank(item.getCheckResult())){ @@ -214,7 +214,7 @@ public class StudentCheckReportServiceImpl implements StudentCheckReportService apiStudent.setCheckResultObj(getCheckResult(chs)); } if(StringUtils.isNotBlank(item.getCardNo())){ - Student student = studentDao.getStudentByCardNo(item.getCardNo()); + Student student = studentDao.getStudentByStudentId(schoolId,item.getStudent_id()); apiStudent.setClassName(student.getClassName()); apiStudent.setStudent_id(student.getStuId()); apiStudent.setStuName(student.getStuName()); @@ -236,7 +236,7 @@ public class StudentCheckReportServiceImpl implements StudentCheckReportService ApiStudentCheckReport apiStudentCheckReport = new ApiStudentCheckReport(); if(isMorningCheck) { apiStudentCheckReport.setCardNo(studentCheckReport.getCardNo()); - SimpleDateFormat simpleDateFormat = new SimpleDateFormat("yyyy-MM-dd hh:mm"); + SimpleDateFormat simpleDateFormat = new SimpleDateFormat("yyyy-MM-dd HH:mm"); System.out.println(studentCheckReport.getCheckTime()); apiStudentCheckReport.setCheckTime(simpleDateFormat.format(studentCheckReport.getCheckTime())); apiStudentCheckReport.setStudent_id(studentCheckReport.getStudent_id()); diff --git a/springboot/morning-check/src/main/java/com/sincere/morningcheck/service/impl/StudentServiceImpl.java b/springboot/morning-check/src/main/java/com/sincere/morningcheck/service/impl/StudentServiceImpl.java index ad93c35..6e81107 100644 --- a/springboot/morning-check/src/main/java/com/sincere/morningcheck/service/impl/StudentServiceImpl.java +++ b/springboot/morning-check/src/main/java/com/sincere/morningcheck/service/impl/StudentServiceImpl.java @@ -31,4 +31,14 @@ public class StudentServiceImpl implements StudentService { studentDao.swipeCard(params); } + + @Override + public String getStuUserId(String num,String schoolId) { + return studentDao.getStuUserId(num,schoolId); + } + + @Override + public List getOpenId(String stuUserId, String schoolId) { + return studentDao.getOpenId(stuUserId,schoolId); + } } diff --git a/springboot/morning-check/src/main/java/com/sincere/morningcheck/utils/ApiHelper.java b/springboot/morning-check/src/main/java/com/sincere/morningcheck/utils/ApiHelper.java index a3f312a..4aecf0a 100644 --- a/springboot/morning-check/src/main/java/com/sincere/morningcheck/utils/ApiHelper.java +++ b/springboot/morning-check/src/main/java/com/sincere/morningcheck/utils/ApiHelper.java @@ -88,9 +88,11 @@ public class ApiHelper { httpClient = HttpClients.createDefault(); // 创建HttpDelete远程连接实例 HttpDelete httpDelete = new HttpDelete(url); - // 设置请求头信息, - for (Map.Entry entry : headerParamMap.entrySet()) { - httpDelete.setHeader(entry.getKey(),entry.getValue()); + if(headerParamMap!=null) { + // 设置请求头信息, + for (Map.Entry entry : headerParamMap.entrySet()) { + httpDelete.setHeader(entry.getKey(), entry.getValue()); + } } // 设置配置请求参数 @@ -198,8 +200,10 @@ public class ApiHelper { HttpPost httpPost = new HttpPost(url); // 设置请求头 httpPost.addHeader("Content-Type", "application/json"); - for (Map.Entry entry : headerParamMap.entrySet()) { - httpPost.setHeader(entry.getKey(),entry.getValue()); + if(headerParamMap!=null) { + for (Map.Entry entry : headerParamMap.entrySet()) { + httpPost.setHeader(entry.getKey(), entry.getValue()); + } } // 配置请求参数实例 RequestConfig requestConfig = RequestConfig.custom().setConnectTimeout(35000)// 设置连接主机服务超时时间 diff --git a/springboot/morning-check/src/main/resources/application-dev.properties b/springboot/morning-check/src/main/resources/application-dev.properties new file mode 100644 index 0000000..4ddd63f --- /dev/null +++ b/springboot/morning-check/src/main/resources/application-dev.properties @@ -0,0 +1,15 @@ +salt = sincere + +server.port=8999 + +#վݿ +spring.datasource.username=SZJXTUSER +spring.datasource.password=xst200919 +spring.datasource.url=jdbc:sqlserver://60.190.202.57:14333;Database=SmartCampusSZ +spring.datasource.driver-class-name=com.microsoft.sqlserver.jdbc.SQLServerDriver + +mybatis.mapper-locations=classpath:/mapper/*.xml +mybatis.type-aliases-package=com.sincere.morningcheck.model + +# springboot 𻷾ѡȡ +spring.profiles.active=dev diff --git a/springboot/morning-check/src/main/resources/application-prod.properties b/springboot/morning-check/src/main/resources/application-prod.properties index c3c2523..78e8a1f 100644 --- a/springboot/morning-check/src/main/resources/application-prod.properties +++ b/springboot/morning-check/src/main/resources/application-prod.properties @@ -12,4 +12,4 @@ mybatis.mapper-locations=classpath:/mapper/*.xml mybatis.type-aliases-package=com.sincere.morningcheck.model # springboot 𻷾ѡȡ -spring.profiles.active=dev +spring.profiles.active=prod diff --git a/springboot/morning-check/src/main/resources/application.properties b/springboot/morning-check/src/main/resources/application.properties index cc3ba11..5e03f67 100644 --- a/springboot/morning-check/src/main/resources/application.properties +++ b/springboot/morning-check/src/main/resources/application.properties @@ -2,14 +2,14 @@ salt = sincere server.port=8999 -#վݿ -spring.datasource.username=SZJXTUSER -spring.datasource.password=xst200919 -spring.datasource.url=jdbc:sqlserver://60.190.202.57:14333;Database=SmartCampusSZ +#ʽվݿ +spring.datasource.username=szjxtuser +spring.datasource.password=RQminVCJota3H1u8bBYH +spring.datasource.url=jdbc:sqlserver://116.62.155.137:33419;database=smartcampus spring.datasource.driver-class-name=com.microsoft.sqlserver.jdbc.SQLServerDriver mybatis.mapper-locations=classpath:/mapper/*.xml mybatis.type-aliases-package=com.sincere.morningcheck.model # springboot 𻷾ѡȡ -spring.profiles.active=dev +spring.profiles.active=prod diff --git a/springboot/morning-check/src/main/resources/mapper/studentmapper.xml b/springboot/morning-check/src/main/resources/mapper/studentmapper.xml index 9716dd2..3dc16e6 100644 --- a/springboot/morning-check/src/main/resources/mapper/studentmapper.xml +++ b/springboot/morning-check/src/main/resources/mapper/studentmapper.xml @@ -33,6 +33,10 @@ where vs.role_state=1 + select id,grade,ShortName from SZ_Grade where Status=1 and SchoolId = #{schoolId} + + + +