42 lines
1.5 KiB
Plaintext
42 lines
1.5 KiB
Plaintext
from PDAPI import *
|
|
|
|
|
|
__metadata__ = {
|
|
"methods": ["POST"],
|
|
"blueprint": "GERP",
|
|
"permission": 4.0,
|
|
"attributes": [],
|
|
"limit": "1 per second",
|
|
"form": [
|
|
{"Name": "ItemName", "Type": "str", "MaxLen": 128},
|
|
{"Name": "ItemIcon", "Type": "str", "MaxLen": 512},
|
|
{"Name": "ItemIconColor", "Type": "str", "Length": 6},
|
|
{"Name": "ItemTags", "Type": "list"},
|
|
{"Name": "ItemDescription", "Type": "str", "MaxLen": 1024 * 1024},
|
|
{"Name": "ItemMetaData", "Type": "dict"}
|
|
]
|
|
}
|
|
def HandleRequest():
|
|
ELTUser: GERPUser = flask.g.ELTUser
|
|
ItemName = flask.request.form.get("ItemName")
|
|
ItemIcon = flask.request.form.get("ItemIcon")
|
|
ItemIconColor = flask.request.form.get("ItemIconColor")
|
|
ItemTags = json.loads(flask.request.form.get("ItemTags"))
|
|
ItemDescription = flask.request.form.get("ItemDescription")
|
|
ItemMetaData = json.loads(flask.request.form.get("ItemMetaData"))
|
|
Item = GERPItemReference()
|
|
Item.ItemUUID = NewBUUID()
|
|
Item.ItemPublisherUserUUID = ELTUser.UserUUID
|
|
Item.ItemName = ItemName
|
|
Item.ItemIcon = ItemIcon
|
|
Item.ItemIconColor = ItemIconColor
|
|
Item.ItemTags = ItemTags
|
|
Item.ItemDescription = ItemDescription
|
|
Item.ItemMetaData = ItemMetaData
|
|
try:
|
|
db.session.add(Item)
|
|
db.session.commit()
|
|
return {"code": 0, "msg": "成功"}
|
|
except:
|
|
db.session.rollback()
|
|
return {"code": 1, "msg": "SQL 提交失败"} |