feat: 添加多个功能模块和工具脚本
- 新增websocket客户端和服务端实现 - 添加图片压缩工具和快速压缩脚本 - 实现学生信息处理相关API - 添加MQTT客户端和消息处理功能 - 更新.gitignore忽略更多文件类型 - 添加数据库操作工具和示例 - 实现多个测试脚本和工具类
This commit is contained in:
@@ -0,0 +1,74 @@
|
||||
# %%
|
||||
from requests import get,post
|
||||
import time
|
||||
import json
|
||||
ip = "http://band.hxzhxy.cn"
|
||||
param = {
|
||||
"username": "tangchao",
|
||||
"password": "123456a",
|
||||
"client_id": "client",
|
||||
"grant_type": "password",
|
||||
"client_secret": "123456",
|
||||
}
|
||||
data = get(url=f"http://band.hxzhxy.cn/oauth/token?username=zhongwei&password=123456a&client_id=client&grant_type=password&client_secret=123456").json()
|
||||
token = data["access_token"]
|
||||
header = {
|
||||
"content-type": "application/json",
|
||||
"authorization": f"Bearer {token}",
|
||||
}
|
||||
# http://139.159.182.121:8092/card/findUser?bandNo=0269414644&controllerSN=233159158
|
||||
data = get(f"https://band.hxzhxy.cn/card/listStuWithRule?gradeId=&classId=&screen=0¶m=&board=&type=1¤tPage=1&pageNumber=0&pageSize=1000&pageTotal=593&teamId=110",headers=header).json()
|
||||
stus2 = data["data"]["listData"]
|
||||
# %%
|
||||
incorrect_students = []
|
||||
|
||||
for stu in stus2:
|
||||
night_study = stu['晚自习']
|
||||
band_no = stu['手环号']
|
||||
|
||||
url = f"http://139.159.182.121:8092/card/findUser?bandNo={band_no}&controllerSN=233159164"
|
||||
|
||||
try:
|
||||
response = get(url)
|
||||
result = response.json()
|
||||
|
||||
if result.get('success') and result.get('msg'):
|
||||
try:
|
||||
msg_data = json.loads(result['msg'])
|
||||
permissions = msg_data.get('result', {}).get('权限', [])
|
||||
|
||||
if permissions:
|
||||
permission = permissions[0]
|
||||
door1_time = permission.get('1号门控制时段', -1)
|
||||
|
||||
expected_time = 9 if night_study == 2 else 16
|
||||
|
||||
if door1_time != expected_time:
|
||||
incorrect_students.append({
|
||||
'姓名': stu.get('姓名', '未知'),
|
||||
'手环号': band_no,
|
||||
'晚自习': night_study,
|
||||
'实际1号门控制时段': door1_time,
|
||||
'应该的1号门控制时段': expected_time
|
||||
})
|
||||
except json.JSONDecodeError:
|
||||
print(f"解析JSON失败: {result.get('msg')}")
|
||||
else:
|
||||
print(f"请求失败: {result}")
|
||||
except Exception as e:
|
||||
print(f"请求异常 {band_no}: {e}")
|
||||
|
||||
print("\n" + "="*80)
|
||||
print("检测结果:")
|
||||
print("="*80)
|
||||
|
||||
if incorrect_students:
|
||||
print(f"\n发现 {len(incorrect_students)} 个学生权限配置不正确:\n")
|
||||
for i, student in enumerate(incorrect_students, 1):
|
||||
print(f"{i}. 姓名: {student['姓名']}, 手环号: {student['手环号']}")
|
||||
print(f" 晚自习配置: {student['晚自习']} (2=上, 1=不上)")
|
||||
print(f" 实际1号门控制时段: {student['实际1号门控制时段']}")
|
||||
print(f" 应该的1号门控制时段: {student['应该的1号门控制时段']}")
|
||||
print()
|
||||
else:
|
||||
print("\n所有学生权限配置正确!")
|
||||
Reference in New Issue
Block a user