Add SCADA API
This commit is contained in:
95
main.py
95
main.py
@@ -1372,6 +1372,101 @@ async def fastapi_set_backdrop_properties(network: str, req: Request) -> ChangeS
|
||||
props = await req.json()
|
||||
return set_backdrop(network, ChangeSet(props))
|
||||
|
||||
############################################################
|
||||
# scada_device 29
|
||||
############################################################
|
||||
@app.get('/getscadadeviceschema/')
|
||||
async def fastapi_get_scada_device_schema(network: str) -> dict[str, dict[str, Any]]:
|
||||
return get_scada_device_schema(network)
|
||||
|
||||
@app.get('/getscadadevice/')
|
||||
async def fastapi_get_scada_device(network: str, id: str) -> dict[str, Any]:
|
||||
return get_scada_device(network, id)
|
||||
|
||||
@app.post('/setscadadevice/')
|
||||
async def fastapi_set_scada_device(network: str, req: Request) -> ChangeSet:
|
||||
props = await req.json()
|
||||
return set_scada_device(network, ChangeSet(props))
|
||||
|
||||
@app.post('/addscadadevice/')
|
||||
async def fastapi_add_scada_device(network: str, req: Request) -> ChangeSet:
|
||||
props = await req.json()
|
||||
return add_scada_device(network, ChangeSet(props))
|
||||
|
||||
@app.post('/deletescadadevice/')
|
||||
async def fastapi_delete_scada_device(network: str, req: Request) -> ChangeSet:
|
||||
props = await req.json()
|
||||
return delete_scada_device(network, ChangeSet(props))
|
||||
|
||||
@app.post('/cleanscadadevice/')
|
||||
async def fastapi_clean_scada_device(network: str) -> ChangeSet:
|
||||
return clean_scada_device(network)
|
||||
|
||||
|
||||
############################################################
|
||||
# scada_device_data 30
|
||||
############################################################
|
||||
@app.get('/getscadadevicedataschema/')
|
||||
async def fastapi_get_scada_device_data_schema(network: str) -> dict[str, dict[str, Any]]:
|
||||
return get_scada_device_data_schema(network)
|
||||
|
||||
@app.get('/getscadadevicedata/')
|
||||
async def fastapi_get_scada_device_data(network: str, device_id: str) -> dict[str, Any]:
|
||||
return get_scada_device_data(network, device_id)
|
||||
|
||||
# example: set_scada_device_data(p, ChangeSet({'device_id': 'sm_device', 'data': [{ 'time': '2023-02-10 00:02:22', 'value': 100.0 }, { 'time': '2023-02-10 00:03:22', 'value': 200.0 }]}))
|
||||
# time format must be 'YYYY-MM-DD HH:MM:SS'
|
||||
@app.post('/setscadadevicedata/')
|
||||
async def fastapi_set_scada_device_data(network: str, req: Request) -> ChangeSet:
|
||||
props = await req.json()
|
||||
return set_scada_device_data(network, ChangeSet(props))
|
||||
|
||||
# example: add_scada_device_data(p, ChangeSet({'device_id': 'sm_device', 'time': '2023-02-10 00:02:22', 'value': 100.0}))
|
||||
@app.post('/addscadadevicedata/')
|
||||
async def fastapi_add_scada_device_data(network: str, req: Request) -> ChangeSet:
|
||||
props = await req.json()
|
||||
return add_scada_device_data(network, ChangeSet(props))
|
||||
|
||||
# example: delete_scada_device_data(p, ChangeSet({'device_id': 'sm_device', 'time': '2023-02-12 00:02:22'}))
|
||||
@app.post('/deletescadadevicedata/')
|
||||
async def fastapi_delete_scada_device_data(network: str, req: Request) -> ChangeSet:
|
||||
props = await req.json()
|
||||
return delete_scada_device_data(network, ChangeSet(props))
|
||||
|
||||
@app.post('/cleanscadadevicedata/')
|
||||
async def fastapi_clean_scada_device_data(network: str) -> ChangeSet:
|
||||
return clean_scada_device_data(network)
|
||||
|
||||
|
||||
############################################################
|
||||
# scada_element 31
|
||||
############################################################
|
||||
@app.get('/getscadadevicedataschema/')
|
||||
async def fastapi_get_scada_element_schema(network: str) -> dict[str, dict[str, Any]]:
|
||||
return get_scada_element_schema(network)
|
||||
|
||||
@app.get('/getscadaelement/')
|
||||
async def fastapi_get_scada_element(network: str, id: str) -> dict[str, Any]:
|
||||
return get_scada_element(network, id)
|
||||
|
||||
@app.post('/setscadaelement/')
|
||||
async def fastapi_set_scada_element(network: str, req: Request) -> ChangeSet:
|
||||
props = await req.json()
|
||||
return set_scada_element(network, ChangeSet(props))
|
||||
|
||||
@app.post('/addscadaelement/')
|
||||
async def fastapi_add_scada_element(network: str, req: Request) -> ChangeSet:
|
||||
props = await req.json()
|
||||
return add_scada_element(network, ChangeSet(props))
|
||||
|
||||
@app.post('/deletescadaelement/')
|
||||
async def fastapi_delete_scada_element(network: str, req: Request) -> ChangeSet:
|
||||
props = await req.json()
|
||||
return delete_scada_element(network, ChangeSet(props))
|
||||
|
||||
@app.post('/cleanscadaelement/')
|
||||
async def fastapi_clean_scada_element(network: str) -> ChangeSet:
|
||||
return clean_scada_element(network)
|
||||
|
||||
# inp file
|
||||
@app.post("/uploadinp/", status_code=status.HTTP_200_OK)
|
||||
|
||||
Reference in New Issue
Block a user