campus-records-api Code
Brought to you by:
lonsty
File | Date | Author | Commit |
---|---|---|---|
campus_api | 2019-09-28 |
![]() |
[78e68a] Update deployment |
requirements | 2019-09-24 |
![]() |
[f9294d] Code encryption |
.dockerignore | 2019-09-28 |
![]() |
[78e68a] Update deployment |
.env | 2019-09-24 |
![]() |
[c0e44f] Use encrypted codes build docker image |
.gitignore | 2019-09-28 |
![]() |
[78e68a] Update deployment |
APIs.md | 2019-10-14 |
![]() |
[2fee8a] Update APIs.md |
Dockerfile | 2019-09-28 |
![]() |
[78e68a] Update deployment |
Pipfile | 2019-09-23 |
![]() |
[929bd6] Parameters validate, query last 7 days, new tab... |
Pipfile.lock | 2019-09-23 |
![]() |
[929bd6] Parameters validate, query last 7 days, new tab... |
README.md | 2019-10-14 |
![]() |
[976c4a] Update README.md |
autoapp.py | 2019-09-23 |
![]() |
[a4213c] Update documents |
requirements.txt | 2019-09-24 |
![]() |
[2dba40] Code encryption |
A flask api app based on flask-restful-api to geting campus records by employee IDs.
git clone http://10.161.32.69/F1054460/campus-today-record-api.git
cd campus-today-record-api/
virtualenv --no-site-packages --python=python3.6 venv
source venv/bin/activate
pip install -r requirements.txt
gunicorn -b 0.0.0.0:5813 -w 2 autoapp:app
cd restful-api-minimal/
pipenv install
pipenv run gunicorn -b 0.0.0.0:5813 -w 2 autoapp:app
a. Install pyarmor
pip install pyarmor
b. Encrypt project to dist\
pyarmor init --entry=autoapp.py
pyarmor config --manifest "global-include *.py, prune dist, prune test, prune venv"
pyarmor build
docker build -t campus-api:latest -f Dockerfile .
docker run -d -p 5813:5813 --env FLASK_CONFIG=production --name campus-api campus-api:latest
接口地址
http://<ip>:<port>/getLHCampusTodayRecordByID
请求方式
POST
输入参数
Content-Type: application/json
属性名称 | 属性描述 | 类型 | 必须 | 备注 |
---|---|---|---|---|
token | 权限验证 | string | 是 | 用户登录后的token,通过header传入 |
employCode | 员工工号 | string | 是 | |
date | 查询日期 | string | 否 | 日期格式:YYYY-mm-dd。默认为今天,且仅支持查询过去7天(含今天) 的记录 |
serialize | 将返回结果data 序列化 |
boolean | 否 | 默认为true |
入参举例
Headers
Token: "token123456"
body:
{
"employCode": "F1054460",
"date": "2019-09-17",
"serialize": false
}
返回参数
属性名称 | 属性描述 | 类型 | 必须 | 备注 |
---|---|---|---|---|
status | 请求状态 | string | 是 | 请求成功为“OK”,否则为错误信息 |
data | 返回数据 | list | 是 | 请求成功时,data为包含查询人员的所有刷脸记录的列表,否则为null |
返回举例
{
"data": [
{
"campus_entry_name": "D-LH-PDDS-D1",
"device_latitude": "81787813",
"device_longitude": "410903948",
"device_type": "2",
"e_ID": "F1054460",
"gate_device_name": "D-LH-PDDS-D1",
"in_or_out": "2",
"tigger_time": "2019-09-17 07:55:58.0"
}
],
"status": "OK"
}
接口地址
http://<ip>:<port>/getLHCampusTodayRecordByIDs
请求方式
POST
输入参数
Content-Type: application/json
属性名称 | 属性描述 | 类型 | 必须 | 备注 |
---|---|---|---|---|
token | 权限验证 | string | 是 | 用户登录后的token,通过header传入 |
employCodes | 员工工号的列表 | list | 是 | |
date | 查询日期 | string | 否 | 日期格式:YYYY-mm-dd。默认为今天,且仅支持查询过去7天(含今天) 的记录 |
serialize | 将返回结果data 序列化 |
boolean | 否 | 默认为true |
入参举例
Headers
Token: "token123456"
body:
{
"employCodes": ["F1054460", "F1054735"],
"date": "2019-09-17",
"serialize": false
}
返回参数
属性名称 | 属性描述 | 类型 | 必须 | 备注 |
---|---|---|---|---|
status | 请求状态 | string | 是 | 请求成功为“OK”,否则为错误信息 |
data | 返回数据 | list | 是 | 请求成功时,data为包含所有查询人员的所有刷脸记录的列表,否则为null |
返回举例
{
"data": [
{
"campus_entry_name": "D-LH-PDDS-D1",
"device_latitude": "81787813",
"device_longitude": "410903948",
"device_type": "2",
"e_ID": "F1054460",
"gate_device_name": "D-LH-PDDS-D1",
"in_or_out": "2",
"tigger_time": "2019-09-17 07:55:58.0"
},
{
"campus_entry_name": "D-LH-PDDS-D1",
"device_latitude": "81787813",
"device_longitude": "410903948",
"device_type": "2",
"e_ID": "F1054735",
"gate_device_name": "D-LH-PDDS-D1",
"in_or_out": "2",
"tigger_time": "2019-09-17 08:24:00.0"
}
],
"status": "OK"
}
date
,可查询过去七天内的记录cerberus
验证传入参数,传参需严格按照要求填写type
生成每日ac_event表~~pyarmor
加密项目部署