38 lines
1.0 KiB
Plaintext
38 lines
1.0 KiB
Plaintext
from PDAPI import *
|
|
|
|
__metadata__ = {
|
|
"methods": ["DELETE"],
|
|
"blueprint": "GERP",
|
|
"permission": 1.0,
|
|
"attributes": ["admin:workorder_delete"],
|
|
"limit": "10 per minute",
|
|
"route": "{DEFAULT_ROUTE}/<order_uuid>",
|
|
}
|
|
|
|
def HandleRequest(_CleanedData):
|
|
current_user = UGM.GetELTUser()
|
|
if not current_user:
|
|
return {"code": 401, "msg": "未登录"}, 401
|
|
|
|
order_uuid_str = _CleanedData["params"].get("order_uuid", "").strip()
|
|
if not order_uuid_str:
|
|
return {"code": 1, "msg": "缺少工单ID"}, 400
|
|
|
|
try:
|
|
order_uuid = UUIDObj(order_uuid_str)
|
|
except:
|
|
return {"code": 1, "msg": "无效的工单ID"}, 400
|
|
|
|
order = GERPWorkOrder.query.filter(GERPWorkOrder.OrderUUID == order_uuid).first()
|
|
if not order:
|
|
return {"code": 1, "msg": "工单不存在"}, 404
|
|
|
|
try:
|
|
db.session.delete(order)
|
|
db.session.commit()
|
|
except:
|
|
db.session.rollback()
|
|
return {"code": 1, "msg": "删除失败"}, 200
|
|
|
|
return {"code": 0, "msg": "删除成功"}, 200
|