浏览代码

客户端门禁消息提供学校ID

yingp 6 年之前
父节点
当前提交
94e0db8555

+ 4 - 0
applications/device/device-client/src/main/java/com/usoftchina/smartschool/device/client/service/AccessControlService.java

@@ -36,6 +36,9 @@ public class AccessControlService {
     @Autowired
     private DeviceApi deviceApi;
 
+    @Autowired
+    private SchoolService schoolService;
+
     public List<AccessControl> findAll() {
         return accessControlRepository.findAll();
     }
@@ -106,6 +109,7 @@ public class AccessControlService {
     public void saveRecord(AccessControlInfo info) {
         //去除cardNo末尾中的\u0000...\u0000
         info.setCardNo(info.getCardNo().trim());
+        info.setSchoolId(schoolService.find().getId());
         ResponseEntity<Result> response = restTemplate.postForEntity(
                 deviceServerProperties.getAccessControlEvent(), info, Result.class);
         if (response.getStatusCode() == HttpStatus.OK) {

+ 12 - 0
applications/device/device-sdk/src/main/java/com/usoftchina/smartschool/device/dto/AccessControlInfo.java

@@ -21,6 +21,10 @@ public class AccessControlInfo implements Serializable {
      * @see EventType
      */
     private int eventType;
+    /**
+     * 学校ID
+     */
+    private String schoolId;
     /**
      * 卡号
      */
@@ -52,6 +56,14 @@ public class AccessControlInfo implements Serializable {
         this.eventType = eventType;
     }
 
+    public String getSchoolId() {
+        return schoolId;
+    }
+
+    public void setSchoolId(String schoolId) {
+        this.schoolId = schoolId;
+    }
+
     public String getCardNo() {
         return cardNo;
     }

+ 2 - 2
applications/device/device-server/src/main/java/com/usoftchina/smartschool/device/mapper/StudentInfoMapper.java

@@ -12,9 +12,9 @@ import java.util.List;
  */
 @Mapper
 public interface StudentInfoMapper {
-    List<StudentInfo> selectInfoByCardNoWithOpenId(String cardNo);
+    List<StudentInfo> selectInfoByCardNoWithOpenId(Long schoolId, String cardNo);
 
-    List<StudentInfo> selectInfoByCardNoWithoutOpenId(String cardNo);
+    List<StudentInfo> selectInfoByCardNoWithoutOpenId(Long schoolId, String cardNo);
 
     void updatePhoto(@Param("photo") String photo, @Param("stuId") Long stuId);
 }

+ 3 - 2
applications/device/device-server/src/main/java/com/usoftchina/smartschool/device/service/impl/AccessControlServiceImpl.java

@@ -61,6 +61,7 @@ public class AccessControlServiceImpl implements AccessControlService{
     @Override
     public void onAccessControlEvent(AccessControlInfo info) {
         String filePath = null;
+        Long schoolId = Long.parseLong(info.getSchoolId());
         String cardNo = info.getCardNo();
         if (StringUtils.isEmpty(cardNo)) {
             return;
@@ -68,7 +69,7 @@ public class AccessControlServiceImpl implements AccessControlService{
         /**
          * 查询人员信息
          */
-        List<StudentInfo> information = studentInfoMapper.selectInfoByCardNoWithoutOpenId(cardNo);
+        List<StudentInfo> information = studentInfoMapper.selectInfoByCardNoWithoutOpenId(schoolId, cardNo);
         if (null == information || information.size() == 0) {
             logger.error("学生信息不存在");
             return;
@@ -121,7 +122,7 @@ public class AccessControlServiceImpl implements AccessControlService{
         }
         //支持发送多个人员
         List<MessageInfoDTO> msgs = new ArrayList<>();
-        information = studentInfoMapper.selectInfoByCardNoWithOpenId(cardNo);
+        information = studentInfoMapper.selectInfoByCardNoWithOpenId(schoolId, cardNo);
         information.forEach(data -> {
             MessageInfoDTO msg = new MessageInfoDTO();
             msg.setUrl(wechatBaseUrl + "/accessnoticedetail/" + record.getRecord_id());

+ 2 - 2
applications/device/device-server/src/main/resources/mapper/StudentInfoMapper.xml

@@ -5,14 +5,14 @@
         select school_appid,school_secret,sys_parents.openid,sys_student.stu_name,sys_student.stu_id,sys_school.school_id,
          stu_number,sys_student.clazz_id,stu_class,stu_grade,stu_classnickname,stu_sex,stu_photo from sys_student left join sys_school on sys_student.school_id=sys_school.school_id
         left join sys_parents_stu on sys_student.stu_id=sys_parents_stu.stu_id left join sys_parents on sys_parents.parent_id =
-        sys_parents_stu.parent_id where stu_cardNo = #{cardNo} and  ifnull(openid,'') != ''
+        sys_parents_stu.parent_id where stu_cardNo = #{cardNo} and school_id = #{schoolId} and  ifnull(openid,'') != ''
     </select>
 
     <select id="selectInfoByCardNoWithoutOpenId" parameterType="string" resultMap="studentInfo">
       select school_appid,school_secret,sys_parents.openid,sys_student.stu_name,sys_student.stu_id,sys_school.school_id,
       stu_number,sys_student.clazz_id,stu_class,stu_grade,stu_classnickname,stu_sex,stu_photo from sys_student left join sys_school on sys_student.school_id=sys_school.school_id
       left join sys_parents_stu on sys_student.stu_id=sys_parents_stu.stu_id left join sys_parents on sys_parents.parent_id =
-      sys_parents_stu.parent_id where stu_cardNo = #{cardNo}
+      sys_parents_stu.parent_id where stu_cardNo = #{cardNo} and school_id = #{schoolId}
     </select>
 
     <update id="updatePhoto">