diff --git a/.obsidian/plugins/remember-cursor-position/cursor-positions.json b/.obsidian/plugins/remember-cursor-position/cursor-positions.json index 7b88428..c634bb4 100644 --- a/.obsidian/plugins/remember-cursor-position/cursor-positions.json +++ b/.obsidian/plugins/remember-cursor-position/cursor-positions.json @@ -1 +1 @@ -{"月度/8月/8月.md":{"scroll":385.7604,"cursor":{"from":{"ch":5,"line":392},"to":{"ch":14,"line":392}}},"材料/服务器.md":{"scroll":30.1953,"cursor":{"from":{"ch":58,"line":43},"to":{"ch":58,"line":43}}},"月度/9月/9月.md":{"scroll":193.938,"cursor":{"from":{"ch":0,"line":222},"to":{"ch":0,"line":222}}},"月度/7月/7月.md":{"scroll":138.3906,"cursor":{"from":{"ch":29,"line":147},"to":{"ch":29,"line":147}}},"月度/6月/6月.md":{"scroll":58.2917,"cursor":{"from":{"ch":72,"line":63},"to":{"ch":72,"line":63}}},"月度/5月/5月.md":{"scroll":93.1957,"cursor":{"from":{"ch":20,"line":105},"to":{"ch":20,"line":105}}},"月度/4月/4月.md":{"scroll":120.1806,"cursor":{"from":{"ch":20,"line":139},"to":{"ch":20,"line":139}}},"月度/3月/3月.md":{"scroll":32.7083,"cursor":{"from":{"ch":6,"line":39},"to":{"ch":6,"line":39}}},"月度/7月/7月工作总结及8月工作计划.md":{"scroll":0,"cursor":{"from":{"ch":0,"line":0},"to":{"ch":0,"line":0}}},"月度/6月/6月份晨午检bug修复.md":{"scroll":307.9981,"cursor":{"from":{"ch":0,"line":0},"to":{"ch":0,"line":0}}},"月度/7月/设备管理中心研发记录.md":{"scroll":110.1015,"cursor":{"from":{"ch":0,"line":0},"to":{"ch":0,"line":0}}},"月度/8月/CA身份认证app/CA身份认证app流程图.md":{"scroll":5.8654,"cursor":{"from":{"ch":0,"line":0},"to":{"ch":0,"line":0}}},"月度/9月/常见病/20250903常见病优化沟通.md":{"scroll":0.7205,"cursor":{"from":{"ch":0,"line":0},"to":{"ch":0,"line":0}}},"月度/9月/汇海/对接主机/2.0/不登录模式接口文档.md":{"scroll":0,"cursor":{"from":{"ch":61,"line":2},"to":{"ch":61,"line":2}}},"月度/9月/汇海/对接主机/2.0/登录算法和密钥.md":{"scroll":0.1746,"cursor":{"from":{"ch":0,"line":9},"to":{"ch":0,"line":9}}}} \ No newline at end of file +{"月度/8月/8月.md":{"scroll":307.9525,"cursor":{"from":{"ch":0,"line":352},"to":{"ch":0,"line":352}}},"材料/服务器.md":{"scroll":10.7717,"cursor":{"from":{"ch":11,"line":27},"to":{"ch":11,"line":27}}},"月度/9月/9月.md":{"scroll":240.3896,"cursor":{"from":{"ch":6,"line":253},"to":{"ch":6,"line":253}}},"月度/7月/7月.md":{"scroll":138.3906,"cursor":{"from":{"ch":29,"line":147},"to":{"ch":29,"line":147}}},"月度/6月/6月.md":{"scroll":58.2917,"cursor":{"from":{"ch":72,"line":63},"to":{"ch":72,"line":63}}},"月度/5月/5月.md":{"scroll":93.1957,"cursor":{"from":{"ch":20,"line":105},"to":{"ch":20,"line":105}}},"月度/4月/4月.md":{"scroll":120.1806,"cursor":{"from":{"ch":20,"line":139},"to":{"ch":20,"line":139}}},"月度/3月/3月.md":{"scroll":32.7083,"cursor":{"from":{"ch":6,"line":39},"to":{"ch":6,"line":39}}},"月度/7月/7月工作总结及8月工作计划.md":{"scroll":0,"cursor":{"from":{"ch":0,"line":0},"to":{"ch":0,"line":0}}},"月度/6月/6月份晨午检bug修复.md":{"scroll":307.9981,"cursor":{"from":{"ch":0,"line":0},"to":{"ch":0,"line":0}}},"月度/7月/设备管理中心研发记录.md":{"scroll":110.1015,"cursor":{"from":{"ch":0,"line":0},"to":{"ch":0,"line":0}}},"月度/8月/CA身份认证app/CA身份认证app流程图.md":{"scroll":5.8654,"cursor":{"from":{"ch":0,"line":0},"to":{"ch":0,"line":0}}},"月度/9月/常见病/20250903常见病优化沟通.md":{"scroll":0.7205,"cursor":{"from":{"ch":0,"line":0},"to":{"ch":0,"line":0}}},"月度/9月/汇海/对接主机/2.0/不登录模式接口文档.md":{"scroll":0,"cursor":{"from":{"ch":2,"line":7},"to":{"ch":2,"line":7}}},"月度/9月/汇海/对接主机/2.0/登录算法和密钥.md":{"scroll":0,"cursor":{"from":{"ch":0,"line":9},"to":{"ch":0,"line":9}}},"月度/9月/汇海/对接主机/2.0/华夏汇海接口文档.md":{"scroll":1742.015,"cursor":{"from":{"ch":1,"line":1772},"to":{"ch":1,"line":1772}}}} \ No newline at end of file diff --git a/.obsidian/workspace.json b/.obsidian/workspace.json index 7baad3b..54c7f4b 100644 --- a/.obsidian/workspace.json +++ b/.obsidian/workspace.json @@ -8,7 +8,49 @@ "type": "tabs", "children": [ { - "id": "c7bc73ee9f913d5a", + "id": "0f8cb971129369ed", + "type": "leaf", + "state": { + "type": "markdown", + "state": { + "file": "月度/9月/汇海/对接主机/2.0/华夏汇海接口文档.md", + "mode": "source", + "source": false + }, + "icon": "lucide-file", + "title": "华夏汇海接口文档" + } + }, + { + "id": "39126e2e94e3ddbf", + "type": "leaf", + "state": { + "type": "markdown", + "state": { + "file": "月度/9月/汇海/对接主机/2.0/不登录模式接口文档.md", + "mode": "source", + "source": false + }, + "icon": "lucide-file", + "title": "不登录模式接口文档" + } + }, + { + "id": "fc808564fbb55487", + "type": "leaf", + "state": { + "type": "markdown", + "state": { + "file": "材料/服务器.md", + "mode": "source", + "source": false + }, + "icon": "lucide-file", + "title": "服务器" + } + }, + { + "id": "6dd52b0f9a46216e", "type": "leaf", "state": { "type": "markdown", @@ -21,7 +63,8 @@ "title": "9月" } } - ] + ], + "currentTab": 3 } ], "direction": "vertical" @@ -78,7 +121,7 @@ } ], "direction": "horizontal", - "width": 275.5 + "width": 247.5 }, "right": { "id": "05ec8585e34884ac", @@ -165,8 +208,7 @@ } ], "direction": "horizontal", - "width": 330.5, - "collapsed": true + "width": 324.5 }, "left-ribbon": { "hiddenItems": { @@ -184,28 +226,32 @@ "obsidian-importer:Open Importer": false } }, - "active": "c7bc73ee9f913d5a", + "active": "6dd52b0f9a46216e", "lastOpenFiles": [ - "材料/配置/新建 文本文档.html", - "材料/配置/新建 文本文档.txt", - "材料/配置/自定义短横线.md", - "材料/配置/自定义短横线.html", + "材料/服务器.md", "月度/9月/9月.md", + "月度/9月/汇海/对接主机/2.0/不登录模式接口文档.md", + "月度/9月/汇海/对接主机/2.0/华夏汇海接口文档.md", + "月度/9月/Alibaba druid index,html 未授权访问漏洞修复记录.docx", + "月度/Alibaba druid index,html 未授权访问漏洞修复记录.docx", + "月度/9月/汇海/对接主机/2.0/主机登录模式API接口文档2.0 ~E0DB2.tmp", + "月度/9月/汇海/对接主机/2.0/人脸特征值下载.md", + "月度/9月/汇海/对接主机/2.0/登录算法和密钥.md", + "月度/9月/汇海/对接主机/2.0/~$登录模式API接口文档2.0 .docx", + "月度/9月/汇海/对接主机/2.0/主机登录模式API接口文档2.0 ~4FCCA.tmp", + "月度/9月/漏扫/~$6天衡QWSY渗透测试报告.docx", + "月度/9月/漏扫/9.6天衡QWSY渗透测试报告.docx", + "月度/8月/8月.md", + "月度/9月/常见病/~$2025年全国学生常见病和影响因素监测与干预项目工作手册0903.docx", + "月度/9月/常见病/4.2025年全国学生常见病和影响因素监测与干预项目工作手册0903.docx", + "月度/9月/汇海/对接主机/1.0/主机登录模式API接口文档 .docx", + "材料/配置/自定义短横线.md", "月度/9月/调查问卷.md", - "未命名.base", - "月度/9月/汇海/对接主机/2.0/主机登录模式API接口文档2.0 ~F552E.tmp", "月度/9月/石榴籽-家校通/家校通需求.md", "月度/3月/3月.md", "月度/9月/常见病/20250903常见病优化沟通.md", "月度/7月/ca会议纪要.md", - "月度/9月/常见病/4.2025年全国学生常见病和影响因素监测与干预项目工作手册0903.docx", - "月度/封面.base", "月度/9月/关于北体大-乌市体育调研工作会议.md", - "月度/9月/汇海/对接主机/2.0/主机登录模式API接口文档2.0 .docx", - "月度/9月/汇海/对接主机/2.0/不登录模式接口文档.md", - "月度/9月/汇海/对接主机/2.0/主机登录模式API接口文档2.0 ~9BCC8.tmp", - "月度/9月/汇海/对接主机/2.0/登录算法和密钥.md", - "月度/9月/汇海/对接主机/2.0/主机登录模式API接口文档2.0 ~CFAF6.tmp", "月度/9月/汇海/解析汇海设备请求.md", "月度/9月/汇海/体质测试数据上传接口文档.md", "月度/9月/汇海/华夏汇海技术对接交流会议纪要.md", @@ -214,13 +260,9 @@ "月度/9月/解析汇海设备请求.md", "月度/9月/体质测试数据上传接口文档.md", "月度/9月/9.12与华夏汇海对接线上技术会.md", - "月度/8月/8月.md", - "材料/服务器.md", "月度/9月/华夏汇海技术对接交流会议纪要.md", "月度/9月/20250903常见病优化沟通.md", "月度/8月/CA身份认证app/CA身份认证app流程图.md", - "月度/7月/设备管理中心研发记录.md", - "月度/7月/华为服务器测试报告.md", "图片/9月.png", "月度/未命名.canvas", "图片/8月.png", diff --git a/月度/9月/9月.md b/月度/9月/9月.md index c0af540..5d3a07d 100644 --- a/月度/9月/9月.md +++ b/月度/9月/9月.md @@ -220,3 +220,35 @@ MaterialApp( [[家校通需求]] [家校通-功能需求说明书(手写版-v1.0)](https://doc.weixin.qq.com/doc/w3_AZcAuwb0ADQCNJJlyCrRBQB2dJudw?scode=ACcAjgdrAA03e12Xn4AZcAuwb0ADQ&version=5.0.0.8002&platform=win) + + +# 9.15 +对接华夏汇海主机 +dailyPhysique【新体测】refactor(physique-daily): 重构华夏汇海设备数据上传接口 +- 将 ProtocolController 中的 parseData 方法改为 uploadDataL,以匹配 HuihaiController 的接口 +- 删除了冗余的 HuihaiController 类 +- 优化了 ISysStudentBusinessService 接口,添加了 updateStudentResultsByDevice 方法 +- 重构了 ISysStudentBusinessServiceImpl 中的 updateStudentResultsByDevice 方法,支持解析汇海设备数据格式 +- 修复了成绩数据处理逻辑,将 score 除以 100 +- 优化了错误处理和日志记录 +oldDailyPhysique【老体测】refactor(ehimsys): 重构汇海登录相关接口并优化学校信息获取逻辑 +- 重构 HuihaiLoginController 类,优化 token 解析和验证逻辑 +- 改进 schools 接口,根据用户类型返回不同学校信息列表 +- 重构 login 接口,使用真实用户和学校信息构建响应数据 +- 修改 SysDailyPlanSchoolMapper 接口,增加 year 参数 +- 更新 ISysDailyPlanSchoolService 接口,添加年份筛选功能 +- 调整 SysDailyPlanSchoolServiceImpl 实现类,支持按年份查询 +- 更新 SysDailyPlanSchoolMapper.xml,修改 SQL 查询条件 + + +# 9.16 +1.对接汇海设备 + +http://47.109.23.162:8088/hhcrm/api/hhdevices/getbysn?sn=00%3A60%3A6e%3Ad4%3Ac6%3A3f +获取人脸 SDK码 +2.修复canal duird 访问漏洞[[Alibaba druid index,html 未授权访问漏洞修复记录.docx]] + + + + +# 9.17 \ No newline at end of file diff --git a/月度/9月/Alibaba druid index,html 未授权访问漏洞修复记录.docx b/月度/9月/Alibaba druid index,html 未授权访问漏洞修复记录.docx new file mode 100644 index 0000000..ec0462c Binary files /dev/null and b/月度/9月/Alibaba druid index,html 未授权访问漏洞修复记录.docx differ diff --git a/月度/9月/汇海/对接主机/2.0/~$登录模式API接口文档2.0 .docx b/月度/9月/汇海/对接主机/2.0/~$登录模式API接口文档2.0 .docx new file mode 100644 index 0000000..fcd42e3 Binary files /dev/null and b/月度/9月/汇海/对接主机/2.0/~$登录模式API接口文档2.0 .docx differ diff --git a/月度/9月/汇海/对接主机/2.0/主机登录模式API接口文档2.0 .docx b/月度/9月/汇海/对接主机/2.0/主机登录模式API接口文档2.0 .docx index e6bcd57..55a17fc 100644 Binary files a/月度/9月/汇海/对接主机/2.0/主机登录模式API接口文档2.0 .docx and b/月度/9月/汇海/对接主机/2.0/主机登录模式API接口文档2.0 .docx differ diff --git a/月度/9月/汇海/对接主机/2.0/华夏汇海接口文档.md b/月度/9月/汇海/对接主机/2.0/华夏汇海接口文档.md new file mode 100644 index 0000000..b6ea099 --- /dev/null +++ b/月度/9月/汇海/对接主机/2.0/华夏汇海接口文档.md @@ -0,0 +1,1803 @@ +# 业务流程梳理 +1. 用户输入账号密码进行客户端登录,系统校验用户是否存在系统和密码是否正确,输入信息正确后判断用户类型; +2. 当用户类型登录的为教育用户时(区县一级),返回的schools接口(其实获取的是区域的检测计划,映射到日常体测中即为获取区县教育用户设置的日常检测计划,对应的表为sys_daily_plan) + * 在此用户登录的基础上,projectId即为sys_daily_plan中的id + * 在后续的接口中的schoolID字段设置为sys_daily_plan中的companyId进行传参; + * 后续返回的school数据结构中按照sys_company中的信息进行返回; + * 再往后的接口中`PhysicalProjects`中返回sys_daily_plan_school中对应daily_id中的所有学校信息,可以理解为选择对应的检测学校; + * 基于上一步,后续的projectId全部传递sys_daily_plan_school中的id作为对应的项目ID +3. 当用户登录的类型为学校用户时,查询对应的sys_daily_plan_school表中的schoolId + * 后续的操作中参照教育用户登录选择的内容返回sys_daily_plan中的名称,第二部直接就选择该学校即可; + + + +## 同步服务器时间 + +```json +https://ty.hxhh.tech/hhcrm/api/HHDevices/getcurrenttime + +{"value":"2025-09-16 10:13:56","result":0,"message":""} +``` + + + +## 登录接口 + +```json +url: "https://ty.hxhh.tech/hhcrm/api/tokens" +type: 'post' +requestbody: +{ + "clientid": "6D587F96", + "mac": "Mac地址:db:b2:5d:a7:a4:5e", + "password": "ou7eMPFsoMrbfMA05cnIiQ\u003d\u003d\n", + "systemflag": 2, + "userId": "18167973603" +} +``` + +```json +responseBody: +{ + "value": { + "token": "eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9.eyJodHRwOi8vc2NoZW1hcy54bWxzb2FwLm9yZy93cy8yMDA1LzA1L2lkZW50aXR5L2NsYWltcy9uYW1lIjoiMWM0YjFkNDYtYzhhNy00ZGMzLWI5YWMtMGY3ODQxZTFjM2VmIiwiU3lzdGVtRmxhZyI6IjIiLCJDbGllbnRJRCI6IjZENTg3Rjk2IiwibmJmIjoxNzU3OTEyNjE5LCJleHAiOjE3NTc5MzA2MTksImlzcyI6Imh0dHBzOi8vd3d3Lmh1YXhpYWh1aWhhaS5jb20iLCJhdWQiOiJodHRwOi8vd3d3Lmd6aHhoaHR5LmNvbSJ9.ZwNqcje-fuiOGrVqJadiU6-0lxEdUJ08OfFE7wsswQ0", + "expireTime": 18000, + "sign": "" + }, + "result": 0, + "message": "" +} +``` + + + +## 获取学校接口 + +```json +url: "https://ty.hxhh.tech/hhcrm/api/schools" +type: "get" +header: { + Authorization: "Bearer eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9.eyJodHRwOi8vc2NoZW1hcy54bWxzb2FwLm9yZy93cy8yMDA1LzA1L2lkZW50aXR5L2NsYWltcy9uYW1lIjoiMWM0YjFkNDYtYzhhNy00ZGMzLWI5YWMtMGY3ODQxZTFjM2VmIiwiU3lzdGVtRmxhZyI6IjIiLCJDbGllbnRJRCI6IjZENTg3Rjk2IiwibmJmIjoxNzU3OTEyNjE5LCJleHAiOjE3NTc5MzA2MTksImlzcyI6Imh0dHBzOi8vd3d3Lmh1YXhpYWh1aWhhaS5jb20iLCJhdWQiOiJodHRwOi8vd3d3Lmd6aHhoaHR5LmNvbSJ9.ZwNqcje-fuiOGrVqJadiU6-0lxEdUJ08OfFE7wsswQ0" +} +``` + +```json +{ + "result": 0, + "message": "", + "queryObjects": [ + { + "id": "1000000607", + "name": "乌鲁木齐学生体测服务平台", + "projectClass": 2,// + "minGrade": 11, + "maxGrade": 44, + "createTime": "2025-09-03T14:32:24.087", + "operater": "姚康", + "maxStudentCount": 420000, + "city": null, + "divisionID": "650100", + "divisionPath": "新疆维吾尔自治区/乌鲁木齐市", + "templateID": null, + "url": "https://ty.hxhh.tech/hhtc/api", + "thirdSyncPlateForm": null, + "modules": 14,// + "projectID": null, + "currentYear": 0, + "isEnableWX": false, + "isUpdateHistroryData": true, + "isStop": 0 + } + ], + "pageSize": 0, + "pageIndex": 1, + "totalCount": 1 +} +``` + +## 获取登录 + +```json +url: "https://ty.hxhh.tech/hhcrm/api/login", +type: "post", +header: { + Authorization: "Bearer eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9.eyJodHRwOi8vc2NoZW1hcy54bWxzb2FwLm9yZy93cy8yMDA1LzA1L2lkZW50aXR5L2NsYWltcy9uYW1lIjoiMWM0YjFkNDYtYzhhNy00ZGMzLWI5YWMtMGY3ODQxZTFjM2VmIiwiU3lzdGVtRmxhZyI6IjIiLCJDbGllbnRJRCI6IjZENTg3Rjk2IiwibmJmIjoxNzU3OTEyNjE5LCJleHAiOjE3NTc5MzA2MTksImlzcyI6Imh0dHBzOi8vd3d3Lmh1YXhpYWh1aWhhaS5jb20iLCJhdWQiOiJodHRwOi8vd3d3Lmd6aHhoaHR5LmNvbSJ9.ZwNqcje-fuiOGrVqJadiU6-0lxEdUJ08OfFE7wsswQ0" +} +body: { + "Client": "8寸屏平板体测[V1.0.0_xj01]", + "LocalIP": "192.168.2.56", + "MAC": "7C943ABA6131", + "SchoolID": "1000000607", + "Veryfied": true +} +``` + +```json +{ + "value": { + "id": "1c4b1d46-c8a7-4dc3-b9ac-0f7841e1c3ef_1000000607", + "userID": "1c4b1d46-c8a7-4dc3-b9ac-0f7841e1c3ef", + "user": { + "id": "1c4b1d46-c8a7-4dc3-b9ac-0f7841e1c3ef", + "userType": 0, + "mobile": "18167973603", + "name": "姜", + "password": null, + "states": 0, + "createTime": "2025-09-03T14:32:54.703", + "email": "", + "operater": null, + "note": "{\"2\":\"\",\"1\":\"\",\"4\":\"\",\"3\":\"新疆阳光学生体质健康管理有限公司\"}", + "hasMobile": true + }, + "schoolID": "1000000607", + "school": { + "id": "1000000607", + "name": "乌鲁木齐学生体测服务平台", + "projectClass": 2, + "minGrade": 11, + "maxGrade": 44, + "createTime": "2025-09-03T14:32:24.087", + "operater": "姚康", + "maxStudentCount": 420000, + "city": null, + "divisionID": "650100", + "divisionPath": null, + "templateID": null, + "url": "https://ty.hxhh.tech/hhtc/api", + "thirdSyncPlateForm": null, + "modules": 14,// + "projectID": "TC001097",// + "currentYear": 2025, + "isEnableWX": false, + "isUpdateHistroryData": true, + "isStop": 0 + }, + "role": "系统管理员", + "expireDate": "2025-12-31T00:00:00", + "permissions": "all", + "selectionType": null, + "selectionItems": null, + "projects": null, + "ukey": false, + "needConfirm": false, + "isAdministrator": true + }, + "result": 0, + "message": "" +} +``` + +## 获取检测计划 + +```json +url: "https://ty.hxhh.tech/hhcrm/api/PhysicalProjects?q=eyJzY2hvb2xJRCI6IjEwMDAwMDA2MDciLCJzb3J0TW9kZSI6Mn0%3D%0A", +type: "get", +header: { + Authorization: "Bearer eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9.eyJodHRwOi8vc2NoZW1hcy54bWxzb2FwLm9yZy93cy8yMDA1LzA1L2lkZW50aXR5L2NsYWltcy9uYW1lIjoiMWM0YjFkNDYtYzhhNy00ZGMzLWI5YWMtMGY3ODQxZTFjM2VmIiwiU3lzdGVtRmxhZyI6IjIiLCJDbGllbnRJRCI6IjZENTg3Rjk2IiwibmJmIjoxNzU3OTEyNjE5LCJleHAiOjE3NTc5MzA2MTksImlzcyI6Imh0dHBzOi8vd3d3Lmh1YXhpYWh1aWhhaS5jb20iLCJhdWQiOiJodHRwOi8vd3d3Lmd6aHhoaHR5LmNvbSJ9.ZwNqcje-fuiOGrVqJadiU6-0lxEdUJ08OfFE7wsswQ0" +} +``` + +```json +{ + "result": 0, + "message": "", + "queryObjects": [ + { + "id": "SL001600", + "projectClass": 8, + "name": "2025-2026年度上学期学生视力", + "year": 2025, + "createDate": "2025-09-03T16:57:08.35", + "startDate": "2025-09-01T00:00:00", + "endDate": "2026-02-01T23:59:59", + "templateProjectID": "gbsl2021", + "isTemplate": false, + "schoolID": "1000000607", + "school": null, + "state": 0, + "selectionType": null, + "selectionItems": null, + "testItems": null, + "gradeTestItems": null, + "eyeSightTetstItems": null, + "copyingProjectID": null + }, + { + "id": "TC001097", + "projectClass": 2, + "name": "2025-2026年度学生体测", + "year": 2025, + "createDate": "2025-09-03T16:57:08.327", + "startDate": "2025-09-01T00:00:00", + "endDate": "2026-09-01T00:00:00", + "templateProjectID": "gbtc2014", + "isTemplate": false, + "schoolID": "1000000607", + "school": null, + "state": 0, + "selectionType": null, + "selectionItems": null, + "testItems": null, + "gradeTestItems": null, + "eyeSightTetstItems": null, + "copyingProjectID": null + } + ], + "pageSize": 0, + "pageIndex": 0, + "totalCount": 2 +} +``` + +## 获取检测项目 + +```json +url: "https://ty.hxhh.tech/hhcrm/api/PhysicalProjects/TC001097", +type: "get", +header: { + Authorization: "Bearer eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9.eyJodHRwOi8vc2NoZW1hcy54bWxzb2FwLm9yZy93cy8yMDA1LzA1L2lkZW50aXR5L2NsYWltcy9uYW1lIjoiMWM0YjFkNDYtYzhhNy00ZGMzLWI5YWMtMGY3ODQxZTFjM2VmIiwiU3lzdGVtRmxhZyI6IjIiLCJDbGllbnRJRCI6IjZENTg3Rjk2IiwibmJmIjoxNzU3OTEyNjE5LCJleHAiOjE3NTc5MzA2MTksImlzcyI6Imh0dHBzOi8vd3d3Lmh1YXhpYWh1aWhhaS5jb20iLCJhdWQiOiJodHRwOi8vd3d3Lmd6aHhoaHR5LmNvbSJ9.ZwNqcje-fuiOGrVqJadiU6-0lxEdUJ08OfFE7wsswQ0" +} + +``` + +```json +{ + "result": 0, + "message": "", + "queryObject": { + "id": "TC001097", + "projectClass": 2, + "name": "2025-2026年度学生体测", + "year": 2025, + "createDate": "2025-09-03T16:57:08.327", + "startDate": "2025-09-01T00:00:00", + "endDate": "2026-09-01T00:00:00", + "templateProjectID": "gbtc2014", + "isTemplate": false, + "schoolID": "1000000607", + "school": { + "id": "1000000607", + "name": "乌鲁木齐学生体测服务平台", + "projectClass": 2, + "minGrade": 11, + "maxGrade": 44, + "createTime": "2025-09-03T14:32:24.087", + "operater": "姚康", + "maxStudentCount": 420000, + "city": null, + "divisionID": "650100", + "divisionPath": null, + "templateID": null, + "url": "https://ty.hxhh.tech/hhtc/api", + "thirdSyncPlateForm": null, + "modules": 14, + "projectID": "TC001097", + "currentYear": 2025, + "isEnableWX": false, + "isUpdateHistroryData": true, + "isStop": 0 + }, + "state": 0, + "selectionType": null, + "selectionItems": null, + "testItems": [ + { + "id": 1, + "name": "身高", + "unit": "厘米", + "pointCount": 1, + "hasMachine": true, + "max": 250.0, + "min": 80.1, + "sortMode": 0, + "formula": null, + "memo": null, + "shortName": null, + "testCount": null, + "precisionMode": 0, + "isMust": false, + "sex": 0 + }, + { + "id": 2, + "name": "体重", + "unit": "公斤", + "pointCount": 1, + "hasMachine": true, + "max": 200.0, + "min": 10.1, + "sortMode": 0, + "formula": null, + "memo": null, + "shortName": null, + "testCount": null, + "precisionMode": 0, + "isMust": false, + "sex": 0 + }, + { + "id": 24, + "name": "BMI指数", + "unit": "", + "pointCount": 1, + "hasMachine": true, + "max": null, + "min": null, + "sortMode": 0, + "formula": "([体重] * 10000)/([身高] * [身高])", + "memo": null, + "shortName": null, + "testCount": null, + "precisionMode": 1, + "isMust": false, + "sex": 0 + }, + { + "id": 4, + "name": "肺活量", + "unit": "毫升", + "pointCount": 0, + "hasMachine": true, + "max": 9999.0, + "min": 500.0, + "sortMode": 2, + "formula": null, + "memo": null, + "shortName": null, + "testCount": null, + "precisionMode": 0, + "isMust": false, + "sex": 0 + }, + { + "id": 7, + "name": "坐位体前屈", + "unit": "厘米", + "pointCount": 1, + "hasMachine": true, + "max": 40.0000, + "min": -30.0000, + "sortMode": 2, + "formula": null, + "memo": null, + "shortName": null, + "testCount": null, + "precisionMode": 0, + "isMust": false, + "sex": 0 + }, + { + "id": 5, + "name": "50米跑", + "unit": "秒", + "pointCount": 1, + "hasMachine": true, + "max": 19.9, + "min": 5.1, + "sortMode": 1, + "formula": null, + "memo": null, + "shortName": null, + "testCount": null, + "precisionMode": 2, + "isMust": false, + "sex": 0 + }, + { + "id": 6, + "name": "立定跳远", + "unit": "厘米", + "pointCount": 0, + "hasMachine": true, + "max": 400.0, + "min": 51.0, + "sortMode": 2, + "formula": null, + "memo": null, + "shortName": null, + "testCount": null, + "precisionMode": 0, + "isMust": false, + "sex": 0 + }, + { + "id": 12, + "name": "一分钟仰卧起坐", + "unit": "次", + "pointCount": 0, + "hasMachine": true, + "max": 99.0, + "min": 0.0, + "sortMode": 2, + "formula": null, + "memo": null, + "shortName": null, + "testCount": null, + "precisionMode": 0, + "isMust": false, + "sex": 0 + }, + { + "id": 18, + "name": "一分钟跳绳", + "unit": "次", + "pointCount": 0, + "hasMachine": true, + "max": 300.0, + "min": 0.0, + "sortMode": 2, + "formula": null, + "memo": null, + "shortName": null, + "testCount": null, + "precisionMode": 0, + "isMust": false, + "sex": 0 + }, + { + "id": 14, + "name": "引体向上", + "unit": "次", + "pointCount": 0, + "hasMachine": true, + "max": 99.0000, + "min": 0.0000, + "sortMode": 2, + "formula": null, + "memo": null, + "shortName": null, + "testCount": null, + "precisionMode": 0, + "isMust": false, + "sex": 0 + }, + { + "id": 9, + "name": "50米×8往返跑", + "unit": "分\u0027秒\"", + "pointCount": 0, + "hasMachine": true, + "max": 540.0, + "min": 45.0, + "sortMode": 1, + "formula": null, + "memo": null, + "shortName": null, + "testCount": null, + "precisionMode": 2, + "isMust": false, + "sex": 0 + }, + { + "id": 10, + "name": "800米跑", + "unit": "分\u0027秒\"", + "pointCount": 0, + "hasMachine": true, + "max": 540.0, + "min": 120.0, + "sortMode": 1, + "formula": null, + "memo": null, + "shortName": null, + "testCount": null, + "precisionMode": 2, + "isMust": false, + "sex": 0 + }, + { + "id": 11, + "name": "1000米跑", + "unit": "分\u0027秒\"", + "pointCount": 0, + "hasMachine": true, + "max": 540.0, + "min": 120.0, + "sortMode": 1, + "formula": null, + "memo": null, + "shortName": null, + "testCount": null, + "precisionMode": 2, + "isMust": false, + "sex": 0 + } + ], + "gradeTestItems": { + "11_Male": [ + 1, + 2, + 4, + 5, + 7, + 18, + 24 + ], + "12_Male": [ + 1, + 2, + 4, + 5, + 7, + 18, + 24 + ], + "13_Male": [ + 1, + 2, + 4, + 5, + 7, + 12, + 18, + 24 + ], + "14_Male": [ + 1, + 2, + 4, + 5, + 7, + 12, + 18, + 24 + ], + "15_Male": [ + 1, + 2, + 4, + 5, + 7, + 9, + 12, + 18, + 24 + ], + "16_Male": [ + 1, + 2, + 4, + 5, + 7, + 9, + 12, + 18, + 24 + ], + "21_Male": [ + 1, + 2, + 4, + 5, + 6, + 7, + 11, + 14, + 24 + ], + "22_Male": [ + 1, + 2, + 4, + 5, + 6, + 7, + 11, + 14, + 24 + ], + "23_Male": [ + 1, + 2, + 4, + 5, + 6, + 7, + 11, + 14, + 24 + ], + "31_Male": [ + 1, + 2, + 4, + 5, + 6, + 7, + 11, + 14, + 24 + ], + "32_Male": [ + 1, + 2, + 4, + 5, + 6, + 7, + 11, + 14, + 24 + ], + "33_Male": [ + 1, + 2, + 4, + 5, + 6, + 7, + 11, + 14, + 24 + ], + "41_Male": [ + 1, + 2, + 4, + 5, + 6, + 7, + 11, + 14, + 24 + ], + "42_Male": [ + 1, + 2, + 4, + 5, + 6, + 7, + 11, + 14, + 24 + ], + "43_Male": [ + 1, + 2, + 4, + 5, + 6, + 7, + 11, + 14, + 24 + ], + "44_Male": [ + 1, + 2, + 4, + 5, + 6, + 7, + 11, + 14, + 24 + ], + "11_Female": [ + 1, + 2, + 4, + 5, + 7, + 18, + 24 + ], + "12_Female": [ + 1, + 2, + 4, + 5, + 7, + 18, + 24 + ], + "13_Female": [ + 1, + 2, + 4, + 5, + 7, + 12, + 18, + 24 + ], + "14_Female": [ + 1, + 2, + 4, + 5, + 7, + 12, + 18, + 24 + ], + "15_Female": [ + 1, + 2, + 4, + 5, + 7, + 9, + 12, + 18, + 24 + ], + "16_Female": [ + 1, + 2, + 4, + 5, + 7, + 9, + 12, + 18, + 24 + ], + "21_Female": [ + 1, + 2, + 4, + 5, + 6, + 7, + 10, + 12, + 24 + ], + "22_Female": [ + 1, + 2, + 4, + 5, + 6, + 7, + 10, + 12, + 24 + ], + "23_Female": [ + 1, + 2, + 4, + 5, + 6, + 7, + 10, + 12, + 24 + ], + "31_Female": [ + 1, + 2, + 4, + 5, + 6, + 7, + 10, + 12, + 24 + ], + "32_Female": [ + 1, + 2, + 4, + 5, + 6, + 7, + 10, + 12, + 24 + ], + "33_Female": [ + 1, + 2, + 4, + 5, + 6, + 7, + 10, + 12, + 24 + ], + "41_Female": [ + 1, + 2, + 4, + 5, + 6, + 7, + 10, + 12, + 24 + ], + "42_Female": [ + 1, + 2, + 4, + 5, + 6, + 7, + 10, + 12, + 24 + ], + "43_Female": [ + 1, + 2, + 4, + 5, + 6, + 7, + 10, + 12, + 24 + ], + "44_Female": [ + 1, + 2, + 4, + 5, + 6, + 7, + 10, + 12, + 24 + ] + }, + "eyeSightTetstItems": null, + "copyingProjectID": null + } +} +``` + +## 权限校验 + +```json +url: "https://ty.hxhh.tech/hhtc/api/UserPermissions?q=eyJtb2R1bGUiOjIsInByb2plY3RJRCI6IlRDMDAxMDk3Iiwic2Nob29sSUQiOiIxMDAwMDAwNjA3%0AIiwidXNlcklEIjoiMWM0YjFkNDYtYzhhNy00ZGMzLWI5YWMtMGY3ODQxZTFjM2VmIn0%3D%0A", +type: "get" +``` + +```json +{ + "result": 0, + "message": null, + "queryObjects": [ + { + "id": "3cc3c23f-3369-43a4-a937-7e69397f2aec", + "userID": "1c4b1d46-c8a7-4dc3-b9ac-0f7841e1c3ef", + "user": null, + "schoolID": "1000000607", + "modules": 2, + "projectID": null, + "role": null, + "permissions": "all" + } + ], + "pageSize": 0, + "pageIndex": 0, + "totalCount": 0 +} +``` + +```json +https://ty.hxhh.tech/hhtc/api/TC001097/Divisions +``` + +```json + +{ + "result": 0, + "message": "", + "queryObjects": [ + { + "id": "650100", + "name": "乌鲁木齐市", + "number": "650100", + "bePublic": true, + "parent": "650000", + "fullPath": "新疆维吾尔自治区/乌鲁木齐市", + "memo": null + } + ], + "pageSize": 0, + "pageIndex": 1, + "totalCount": 1 +} + +``` + +https://ty.hxhh.tech/hhtc/api/TC001097/Facilitys + +```json +{ + "result": 0, + "message": "", + "queryObjects": [ + { + "id": "0559dc4a-9117-41be-b2b3-852d27e7779d", + "name": "吐鲁番市高昌区艾丁湖镇也木什小学", + "number": "126", + "minGrade": 11, + "maxGrade": 16, + "divisionID": null, + "parentPath": null, + "tags": 1, + "natoure": 1, + "year": null, + "memo": null, + "location": null, + "schoolId": null, + "appKey": null, + "appSecret": null + }, + { + "id": "33ee4ddf-8333-4f97-8bf3-1e417b81f2cf", + "name": "乌鲁木齐市147中学", + "number": "1920699779923480578", + "minGrade": 11, + "maxGrade": 16, + "divisionID": null, + "parentPath": null, + "tags": 1, + "natoure": 1, + "year": null, + "memo": null, + "location": null, + "schoolId": null, + "appKey": null, + "appSecret": null + } + ], + "pageSize": 0, + "pageIndex": 1, + "totalCount": 2 +} +``` + +https://ty.hxhh.tech/hhtc/api/TC001097/StudentClasss + +```json +{ + "result": 0, + "message": "", + "queryObjects": [ + { + "id": "26c5510c-867f-4fea-bb14-7c31efe10437", + "name": "1班", + "beginYear": 2025, + "beginGrade": 11, + "years": 6, + "grade": 11, + "facilityID": "0559dc4a-9117-41be-b2b3-852d27e7779d", + "facilityName": "吐鲁番市高昌区艾丁湖镇也木什小学", + "number": "101", + "professional": "", + "professionalCode": "" + }, + { + "id": "3ed0c80d-5372-4d72-967b-d1e88176098c", + "name": "1班", + "beginYear": 2024, + "beginGrade": 11, + "years": 6, + "grade": 12, + "facilityID": "0559dc4a-9117-41be-b2b3-852d27e7779d", + "facilityName": "吐鲁番市高昌区艾丁湖镇也木什小学", + "number": "101", + "professional": "", + "professionalCode": "" + }, + { + "id": "7a42526b-161d-4753-98cd-905fd2783084", + "name": "2班", + "beginYear": 2024, + "beginGrade": 11, + "years": 6, + "grade": 12, + "facilityID": "0559dc4a-9117-41be-b2b3-852d27e7779d", + "facilityName": "吐鲁番市高昌区艾丁湖镇也木什小学", + "number": "102", + "professional": "", + "professionalCode": "" + }, + { + "id": "234e9460-c5c0-4e4a-8992-4abb2a85b0fd", + "name": "1班", + "beginYear": 2023, + "beginGrade": 11, + "years": 6, + "grade": 13, + "facilityID": "0559dc4a-9117-41be-b2b3-852d27e7779d", + "facilityName": "吐鲁番市高昌区艾丁湖镇也木什小学", + "number": "101", + "professional": "", + "professionalCode": "" + }, + { + "id": "c8f0f213-7cde-49a8-ae60-c853748f5b44", + "name": "2班", + "beginYear": 2023, + "beginGrade": 11, + "years": 6, + "grade": 13, + "facilityID": "0559dc4a-9117-41be-b2b3-852d27e7779d", + "facilityName": "吐鲁番市高昌区艾丁湖镇也木什小学", + "number": "102", + "professional": "", + "professionalCode": "" + }, + { + "id": "b5dbfe51-6738-4713-9af6-824b6ca044aa", + "name": "1班", + "beginYear": 2022, + "beginGrade": 11, + "years": 6, + "grade": 14, + "facilityID": "0559dc4a-9117-41be-b2b3-852d27e7779d", + "facilityName": "吐鲁番市高昌区艾丁湖镇也木什小学", + "number": "101", + "professional": "", + "professionalCode": "" + }, + { + "id": "e1ead7c5-fb92-4eac-b734-38ca72631747", + "name": "2班", + "beginYear": 2022, + "beginGrade": 11, + "years": 6, + "grade": 14, + "facilityID": "0559dc4a-9117-41be-b2b3-852d27e7779d", + "facilityName": "吐鲁番市高昌区艾丁湖镇也木什小学", + "number": "102", + "professional": "", + "professionalCode": "" + }, + { + "id": "0984b052-ab2f-4ac9-adbb-efc9c6b612b5", + "name": "1班", + "beginYear": 2021, + "beginGrade": 11, + "years": 6, + "grade": 15, + "facilityID": "0559dc4a-9117-41be-b2b3-852d27e7779d", + "facilityName": "吐鲁番市高昌区艾丁湖镇也木什小学", + "number": "101", + "professional": "", + "professionalCode": "" + }, + { + "id": "90047577-9224-45aa-8b19-85936df77428", + "name": "2班", + "beginYear": 2021, + "beginGrade": 11, + "years": 6, + "grade": 15, + "facilityID": "0559dc4a-9117-41be-b2b3-852d27e7779d", + "facilityName": "吐鲁番市高昌区艾丁湖镇也木什小学", + "number": "102", + "professional": "", + "professionalCode": "" + }, + { + "id": "2634d818-a464-458e-88f8-d8e89b48ef38", + "name": "1班", + "beginYear": 2020, + "beginGrade": 11, + "years": 6, + "grade": 16, + "facilityID": "0559dc4a-9117-41be-b2b3-852d27e7779d", + "facilityName": "吐鲁番市高昌区艾丁湖镇也木什小学", + "number": "101", + "professional": "", + "professionalCode": "" + }, + { + "id": "8a18d249-cebc-4ef6-966a-127bc80a2c6b", + "name": "2班", + "beginYear": 2020, + "beginGrade": 11, + "years": 6, + "grade": 16, + "facilityID": "0559dc4a-9117-41be-b2b3-852d27e7779d", + "facilityName": "吐鲁番市高昌区艾丁湖镇也木什小学", + "number": "102", + "professional": "", + "professionalCode": "" + }, + { + "id": "e5abd2f7-2a17-4c9f-917f-a69ceb3e7afb", + "name": "小学一年级1班", + "beginYear": 2025, + "beginGrade": 11, + "years": 6, + "grade": 11, + "facilityID": "33ee4ddf-8333-4f97-8bf3-1e417b81f2cf", + "facilityName": "乌鲁木齐市147中学", + "number": "101", + "professional": "", + "professionalCode": "" + }, + { + "id": "0c7ab17c-3103-4526-b932-09b986333719", + "name": "小学一年级2班", + "beginYear": 2025, + "beginGrade": 11, + "years": 6, + "grade": 11, + "facilityID": "33ee4ddf-8333-4f97-8bf3-1e417b81f2cf", + "facilityName": "乌鲁木齐市147中学", + "number": "102", + "professional": "", + "professionalCode": "" + }, + { + "id": "c09d9f9b-c65b-45f1-a816-41d8a0b99386", + "name": "小学一年级3班", + "beginYear": 2025, + "beginGrade": 11, + "years": 6, + "grade": 11, + "facilityID": "33ee4ddf-8333-4f97-8bf3-1e417b81f2cf", + "facilityName": "乌鲁木齐市147中学", + "number": "103", + "professional": "", + "professionalCode": "" + }, + { + "id": "cc1ef56a-ec4b-4634-9dbb-5d74494a11b9", + "name": "小学一年级4班", + "beginYear": 2025, + "beginGrade": 11, + "years": 6, + "grade": 11, + "facilityID": "33ee4ddf-8333-4f97-8bf3-1e417b81f2cf", + "facilityName": "乌鲁木齐市147中学", + "number": "104", + "professional": "", + "professionalCode": "" + }, + { + "id": "a2a189aa-13ac-4588-8be9-8bcd290c29e0", + "name": "小学一年级5班", + "beginYear": 2025, + "beginGrade": 11, + "years": 6, + "grade": 11, + "facilityID": "33ee4ddf-8333-4f97-8bf3-1e417b81f2cf", + "facilityName": "乌鲁木齐市147中学", + "number": "105", + "professional": "", + "professionalCode": "" + }, + { + "id": "d79bcd44-c9e8-403d-a649-0a477b8811bd", + "name": "小学一年级6班", + "beginYear": 2025, + "beginGrade": 11, + "years": 6, + "grade": 11, + "facilityID": "33ee4ddf-8333-4f97-8bf3-1e417b81f2cf", + "facilityName": "乌鲁木齐市147中学", + "number": "106", + "professional": "", + "professionalCode": "" + }, + { + "id": "72575710-c55f-42d6-abd6-9b9c2f34d842", + "name": "小学二年级1班", + "beginYear": 2024, + "beginGrade": 11, + "years": 6, + "grade": 12, + "facilityID": "33ee4ddf-8333-4f97-8bf3-1e417b81f2cf", + "facilityName": "乌鲁木齐市147中学", + "number": "101", + "professional": "", + "professionalCode": "" + } + ], + "pageSize": 0, + "pageIndex": 1, + "totalCount": 18 +} +``` + +https://ty.hxhh.tech/hhtc/api/TC001097/students/?q=eyJwYWdlSW5kZXgiOjEsInBhZ2VTaXplIjozMDAwfQ%3D%3D%0A + +```json +"queryObjects": [ + { + "id": "81100010000000003", + "name": "麦尔哈巴·艾尼娃尔", + "sex": 2, + "grade": 11, + "state": 0, + "birthDay": "2016-12-29T00:00:00", + "idNumber": "", + "cardID": null, + "nation": null, + "district": null, + "classID": "26c5510c-867f-4fea-bb14-7c31efe10437", + "classNumber": "101", + "className": "1班", + "professional": "", + "professionalCode": "", + "facilityID": "0559dc4a-9117-41be-b2b3-852d27e7779d", + "facilityName": "吐鲁番市高昌区艾丁湖镇也木什小学", + "schoolNum": "126", + "facilityTags": 1, + "facilityNatoure": 1, + "divisionID": null, + "divisionName": null, + "address": null, + "highSchool": null, + "ropeNumber": null, + "ropeCode": null, + "hasPhoto": true, + "checkTime": null, + "channel": null, + "age": 9 + }, +``` + +## 上传学生结果 + +```json +https://ty.hxhh.tech/hhtc/api/TC001097/studentscores/batchadd?option=2 +type: post + +``` + + + +```json +[ + { + "CreateTime": "Sep 16, 2025 10:43:01", + "EndTime": "Sep 16, 2025 10:42:53", + "For": false, + "HostID": 20, + "HostSn": "6D587F96", + "ID": "6adcc622b2ca48ba9f1dc4eee286d786", + "PeripheralCode": "1", + "Score": 27700, + "ScoreFrom": 1, + "ScoreSer": 1, + "Sex": "", + "StartTime": "Sep 16, 2025 10:42:46", + "StudentID": "123456123456", + "StudentName": "", + "TestID": 4, + "scorePosFlag": 0 + }, + { + "CreateTime": "Sep 16, 2025 10:43:01", + "EndTime": "Sep 16, 2025 10:42:57", + "For": false, + "HostID": 20, + "HostSn": "6D587F96", + "ID": "d5e3ac70846942e8a4592ac98850a8ec", + "PeripheralCode": "1", + "Score": 59100, + "ScoreFrom": 1, + "ScoreSer": 2, + "Sex": "", + "StartTime": "Sep 16, 2025 10:42:54", + "StudentID": "123456123456", + "StudentName": "", + "TestID": 4, + "scorePosFlag": 0 + } +] +``` + +## 云端结果查询 + +```json +url: https://ty.hxhh.tech/hhtc/api/TC001097/StudentWithTotals/?q=eyJTdHVkZW50SURMaWtlIjoiMDAzMiIsInBhZ2VJbmRleCI6MX0%3D%0A +type: "get", + +https://ty.hxhh.tech/hhtc/api/TC001097/StudentWithTotals/?q=eyJOb3RUZXN0SXRlbSI6MSwiVGVzdFN0YXRlcyI6WzFdLCJUb3RhbEVxdWFsQW5kVGhhbiI6NTAs%0AIlRvdGFsTGVzc1RoYW4iOjUwLCJUb3RhbFJhbmtzIjpbMSwyLDMsNF0sIkNsYXNzSUQiOiIzZWQw%0AYzgwZC01MzcyLTRkNzItOTY3Yi1kMWU4ODE3NjA5OGMiLCJGYWNpbGl0eUlEIjoiMDU1OWRjNGEt%0AOTExNy00MWJlLWIyYjMtODUyZDI3ZTc3NzlkIiwiR3JhZGUiOjEyLCJOYW1lIjoi6JGj5aOr5p2w%0AIiwiU2V4IjoxLCJTdHVkZW50SURMaWtlIjoiMDAwOSIsInBhZ2VJbmRleCI6MSwicGFnZVNpemUi%0AOjMwLCJzb3J0TW9kZSI6MH0%3D%0A +https://ty.hxhh.tech/hhtc/api/TC001097/StudentWithTotals/?q=eyJUZXN0U3RhdGVzIjpbMl0sInBhZ2VJbmRleCI6MSwicGFnZVNpemUiOjMwLCJzb3J0TW9kZSI6%0AMH0%3D%0A + +https://ty.hxhh.tech/hhtc/api/TC001097/StudentWithTotals/?q=eyJUZXN0U3RhdGVzIjpbMF0sInBhZ2VJbmRleCI6MSwicGFnZVNpemUiOjMwLCJzb3J0TW9kZSI6%0AMH0%3D%0A + +{ + "NotTestItem" : 1, //汇海项目编号 + "TestStates" : [ 1 ], //0:未测试,1:未完成测试,2:测试完成。 + "TotalEqualAndThan" : 50, + "TotalLessThan" : 50, + "TotalRanks" : [ 1, 2, 3, 4 ],//优秀、良好、及格、不及格 + "ClassID" : "3ed0c80d-5372-4d72-967b-d1e88176098c", + "FacilityID" : "0559dc4a-9117-41be-b2b3-852d27e7779d", + "Grade" : 12, //年级编号 + "Name" : "董士杰", + "Sex" : 1, + "StudentIDLike" : "0009", + "pageIndex" : 1, + "pageSize" : 30, + "sortMode" : 0 +} +``` + +```json +{ + "result": 0, + "message": "", + "queryObjects": [ + { + "total": 37.2, + "jiafen": 0.0, + "rank": 4, + "testState": 1, + "scores": [ + { + "testID": 4, + "testTime": "2025-09-08T10:06:49", + "formatScore": "798", + "rawScore": 798.0000, + "result": 68.0000, + "jiafen": 0.0000, + "rank": "及格" + }, + { + "testID": 7, + "testTime": "2025-09-11T12:01:30", + "formatScore": "16.9", + "rawScore": 16.9000, + "result": 90.0000, + "jiafen": 0.0000, + "rank": "优秀" + } + ], + "appraise": null, + "sportSuggestion": null, + "id": "81100320000000003", + "name": "热依拉·沙迪克", + "sex": 2, + "grade": 11, + "state": 0, + "birthDay": "2016-10-19T00:00:00", + "idNumber": "", + "cardID": null, + "nation": null, + "district": null, + "classID": "26c5510c-867f-4fea-bb14-7c31efe10437", + "classNumber": "101", + "className": "1班", + "professional": "", + "professionalCode": "", + "facilityID": "0559dc4a-9117-41be-b2b3-852d27e7779d", + "facilityName": "吐鲁番市高昌区艾丁湖镇也木什小学", + "schoolNum": "126", + "facilityTags": 1, + "facilityNatoure": 1, + "divisionID": null, + "divisionName": null, + "address": null, + "highSchool": null, + "ropeNumber": null, + "ropeCode": null, + "hasPhoto": true, + "checkTime": null, + "channel": null, + "age": 9 + }, + { + "total": 0.0, + "jiafen": 0.0, + "rank": 4, + "testState": 0, + "scores": [], + "appraise": null, + "sportSuggestion": null, + "id": "81200320000000003", + "name": "董士杰", + "sex": 2, + "grade": 12, + "state": 0, + "birthDay": "1998-10-29T00:00:00", + "idNumber": "", + "cardID": null, + "nation": null, + "district": null, + "classID": "3ed0c80d-5372-4d72-967b-d1e88176098c", + "classNumber": "101", + "className": "1班", + "professional": "", + "professionalCode": "", + "facilityID": "0559dc4a-9117-41be-b2b3-852d27e7779d", + "facilityName": "吐鲁番市高昌区艾丁湖镇也木什小学", + "schoolNum": "126", + "facilityTags": 1, + "facilityNatoure": 1, + "divisionID": null, + "divisionName": null, + "address": null, + "highSchool": null, + "ropeNumber": null, + "ropeCode": null, + "hasPhoto": false, + "checkTime": null, + "channel": null, + "age": 27 + }, + { + "total": 0.0, + "jiafen": 0.0, + "rank": 4, + "testState": 0, + "scores": [], + "appraise": null, + "sportSuggestion": null, + "id": "81300320000000003", + "name": "艾力凯木江·艾热提", + "sex": 1, + "grade": 13, + "state": 0, + "birthDay": "2014-10-15T00:00:00", + "idNumber": "", + "cardID": null, + "nation": null, + "district": null, + "classID": "c8f0f213-7cde-49a8-ae60-c853748f5b44", + "classNumber": "102", + "className": "2班", + "professional": "", + "professionalCode": "", + "facilityID": "0559dc4a-9117-41be-b2b3-852d27e7779d", + "facilityName": "吐鲁番市高昌区艾丁湖镇也木什小学", + "schoolNum": "126", + "facilityTags": 1, + "facilityNatoure": 1, + "divisionID": null, + "divisionName": null, + "address": null, + "highSchool": null, + "ropeNumber": null, + "ropeCode": null, + "hasPhoto": false, + "checkTime": null, + "channel": null, + "age": 11 + }, + { + "total": 0.0, + "jiafen": 0.0, + "rank": 4, + "testState": 0, + "scores": [], + "appraise": null, + "sportSuggestion": null, + "id": "81400320000000003", + "name": "阿比达·阿布都力", + "sex": 2, + "grade": 14, + "state": 0, + "birthDay": "2014-01-13T00:00:00", + "idNumber": "", + "cardID": null, + "nation": null, + "district": null, + "classID": "e1ead7c5-fb92-4eac-b734-38ca72631747", + "classNumber": "102", + "className": "2班", + "professional": "", + "professionalCode": "", + "facilityID": "0559dc4a-9117-41be-b2b3-852d27e7779d", + "facilityName": "吐鲁番市高昌区艾丁湖镇也木什小学", + "schoolNum": "126", + "facilityTags": 1, + "facilityNatoure": 1, + "divisionID": null, + "divisionName": null, + "address": null, + "highSchool": null, + "ropeNumber": null, + "ropeCode": null, + "hasPhoto": false, + "checkTime": null, + "channel": null, + "age": 11 + }, + { + "total": 0.0, + "jiafen": 0.0, + "rank": 4, + "testState": 0, + "scores": [], + "appraise": null, + "sportSuggestion": null, + "id": "81500320000000003", + "name": "玉山·帕它尔", + "sex": 1, + "grade": 15, + "state": 0, + "birthDay": "2013-08-12T00:00:00", + "idNumber": "", + "cardID": null, + "nation": null, + "district": null, + "classID": "0984b052-ab2f-4ac9-adbb-efc9c6b612b5", + "classNumber": "101", + "className": "1班", + "professional": "", + "professionalCode": "", + "facilityID": "0559dc4a-9117-41be-b2b3-852d27e7779d", + "facilityName": "吐鲁番市高昌区艾丁湖镇也木什小学", + "schoolNum": "126", + "facilityTags": 1, + "facilityNatoure": 1, + "divisionID": null, + "divisionName": null, + "address": null, + "highSchool": null, + "ropeNumber": null, + "ropeCode": null, + "hasPhoto": false, + "checkTime": null, + "channel": null, + "age": 12 + }, + { + "total": 0.0, + "jiafen": 0.0, + "rank": 4, + "testState": 0, + "scores": [], + "appraise": null, + "sportSuggestion": null, + "id": "81600320000000003", + "name": "沙力·沙拉木", + "sex": 1, + "grade": 16, + "state": 0, + "birthDay": "2011-10-28T00:00:00", + "idNumber": "", + "cardID": null, + "nation": null, + "district": null, + "classID": "8a18d249-cebc-4ef6-966a-127bc80a2c6b", + "classNumber": "102", + "className": "2班", + "professional": "", + "professionalCode": "", + "facilityID": "0559dc4a-9117-41be-b2b3-852d27e7779d", + "facilityName": "吐鲁番市高昌区艾丁湖镇也木什小学", + "schoolNum": "126", + "facilityTags": 1, + "facilityNatoure": 1, + "divisionID": null, + "divisionName": null, + "address": null, + "highSchool": null, + "ropeNumber": null, + "ropeCode": null, + "hasPhoto": false, + "checkTime": null, + "channel": null, + "age": 14 + }, + { + "total": 0.0, + "jiafen": 0.0, + "rank": 4, + "testState": 0, + "scores": [], + "appraise": null, + "sportSuggestion": null, + "id": "81100320000072043", + "name": "刘笑蕊", + "sex": 2, + "grade": 11, + "state": 0, + "birthDay": "2017-08-13T00:00:00", + "idNumber": "", + "cardID": null, + "nation": null, + "district": null, + "classID": "e5abd2f7-2a17-4c9f-917f-a69ceb3e7afb", + "classNumber": "101", + "className": "小学一年级1班", + "professional": "", + "professionalCode": "", + "facilityID": "33ee4ddf-8333-4f97-8bf3-1e417b81f2cf", + "facilityName": "乌鲁木齐市147中学", + "schoolNum": "1920699779923480578", + "facilityTags": 1, + "facilityNatoure": 1, + "divisionID": null, + "divisionName": null, + "address": null, + "highSchool": null, + "ropeNumber": null, + "ropeCode": null, + "hasPhoto": false, + "checkTime": null, + "channel": null, + "age": 8 + }, + { + "total": 0.0, + "jiafen": 0.0, + "rank": 4, + "testState": 0, + "scores": [], + "appraise": null, + "sportSuggestion": null, + "id": "81200320000072043", + "name": "王馨玉", + "sex": 2, + "grade": 12, + "state": 0, + "birthDay": "2016-05-05T00:00:00", + "idNumber": "", + "cardID": null, + "nation": null, + "district": null, + "classID": "72575710-c55f-42d6-abd6-9b9c2f34d842", + "classNumber": "101", + "className": "小学二年级1班", + "professional": "", + "professionalCode": "", + "facilityID": "33ee4ddf-8333-4f97-8bf3-1e417b81f2cf", + "facilityName": "乌鲁木齐市147中学", + "schoolNum": "1920699779923480578", + "facilityTags": 1, + "facilityNatoure": 1, + "divisionID": null, + "divisionName": null, + "address": null, + "highSchool": null, + "ropeNumber": null, + "ropeCode": null, + "hasPhoto": false, + "checkTime": null, + "channel": null, + "age": 9 + } + ], + "pageSize": 0, + "pageIndex": 1, + "totalCount": 8 +} +``` + +## 人脸特征值下载 + +```json +url: "https://ty.hxhh.tech/hhtc/api/TC001097/StudentWithFaceFeatures/?q=eyJoYXNGYWNlRmVhdHVyZSI6dHJ1ZSwiSGFzUGhvdG8iOnRydWUsInBhZ2VJbmRleCI6MSwicGFn%0AZVNpemUiOjEwMH0%3D%0A" +type: "get" +``` + +```json +{ + "result": 0, + "message": "", + "queryObjects":[ + { + "faceFeature": "XXX", + "faceFeatureRec":"XXX", + "id": "81100010000000003", + "name": "麦尔哈巴·艾尼娃尔", + "sex": 2, + "grade": 11, + "state": 0, + "birthDay": "2016-12-29T00:00:00", + "idNumber": "", + "cardID": null, + "nation": null, + "district": null, + "classID": "26c5510c-867f-4fea-bb14-7c31efe10437", + "classNumber": "101", + "className": "1班", + "professional": "", + "professionalCode": "", + "facilityID": "0559dc4a-9117-41be-b2b3-852d27e7779d", + "facilityName": "吐鲁番市高昌区艾丁湖镇也木什小学", + "schoolNum": "126", + "facilityTags": 1, + "facilityNatoure": 1, + "divisionID": null, + "divisionName": null, + "address": null, + "highSchool": null, + "ropeNumber": null, + "ropeCode": null, + "hasPhoto": true, + "checkTime": null, + "channel": null, + "age": 9 + }, + +], + "pageSize": 100, + "pageIndex": 1, + "totalCount": 3 +``` + +## 获取学生照片 + +```json +url: "https://ty.hxhh.tech/hhtc/api/TC001097/StudentPhotos/81100010000000003", +type: "get" +``` + +```json +{ + result: "0", + message: "", + queryObject: { + id: 81100010000000003, + name: null, + photo: "base64", + faceFeature: "XXX", + faceFeatureRec: "CCC" + } +} +``` + +## 获取设备SN +```json +url: "https://ty.hxhh.tech/hhcrm/api/hhdevices/getbysn?sn=db%3Ab2%3A5d%3Aa7%3Aa4%3A5e", +type: "get" +``` +```json +{ + "result": 0, + "message": null, + "queryObject": { + "id": "DB:B2:5D:A7:A4:5E", + "deviceType": 5, + "createTime": "2022-11-14T17:32:03.617", + "serialNumber": "HXHH65CA220600153", + "version": "", + "hardwareVersion": null, + "imei": "863320047685506", + "mac": "db:b2:5d:a7:a4:5e", + "faceCode": "0857-11FA-M2DF-EFDX", + "speechCode": null, + "batchNo": "", + "manufactureDate": null, + "city": "鄂尔多斯市源启教育培训有限公司", + "expireDate": null, + "userID": null, + "deviceName": "", + "activeTime": "2025-09-16T16:19:57", + "lastConnectTime": null, + "lastLocation": null, + "physicalItems": null + } +} +``` + + + +{ +  "result": 0, +  "message": null, +  "queryObject": { +    "id": "00:60:6E:D4:C6:3F", +    "deviceType": 5, +    "createTime": "2025-04-09T10:19:11.523", +    "serialNumber": "HXHH65CA24050912", +    "version": null, +    "hardwareVersion": null, +    "imei": "863320053081210", +    "mac": "00:60:6e:d4:c6:3f", +    "faceCode": "0857-11WB-1XPU-VBQZ", +    "speechCode": null, +    "batchNo": null, +    "manufactureDate": null, +    "city": null, +    "expireDate": null, +    "userID": null, +    "deviceName": null, +    "activeTime": "2025-05-06T14:05:29", +    "lastConnectTime": null, +    "lastLocation": null, +    "physicalItems": null +  } +} \ No newline at end of file diff --git a/材料/服务器.md b/材料/服务器.md index 1696f6c..7dd08c6 100644 --- a/材料/服务器.md +++ b/材料/服务器.md @@ -6,6 +6,7 @@ LTAI5tQbMgHJsKpjY6gS2Ckm y7m1ALcTij7dME7Wno4EgVnsHNPjOb ## lpane - 外部地址:http://47.109.23.162:22825/a70aef6b25 +- 域名外部地址:http://lpane.binghuai.xyz/a70aef6b25 - 面板用户:40fb27c170 - 面板密码:32dde9a038 - 官方网站:https://lpanel.cn @@ -20,6 +21,20 @@ gitea数据库 gitea_binghuai -Darms.licenseKey=c4cuf11g94@8c2d20f88cc0d59 -Darms.appName=my-service +## Frp +http://47.109.23.162:8088/hhcrm/api/ + +CSjyj00 +Tzcs!!!2024 + +| | | +| ------------ | ------------ | +| 服务端口 | 7000 | +| Dashboard 端口 | 7500 | +| 用户名 | admin | +| 密码 | admin_8DnWeQ | +| 密钥 | token123456 | + # **UCloud** HK ubuntu yz15036050887