refactor: 移除手写CRUD dspy文件 - 改由build.sh自动生成
- 删除手写的add/update/delete_credit_limit.dspy - json/credit_limit.json移除editable配置(使用默认CRUD API) - 避免build.sh重新生成时覆盖手写代码
This commit is contained in:
parent
03bf5fcde0
commit
583babdd4a
@ -8,11 +8,6 @@
|
||||
"cwidth": {}
|
||||
},
|
||||
"editexclouded": ["id", "used_credit", "available_credit", "created_at", "updated_at"],
|
||||
"editable": {
|
||||
"new_data_url": "{{entire_url('add_credit_limit.dspy')}}",
|
||||
"update_data_url": "{{entire_url('update_credit_limit.dspy')}}",
|
||||
"delete_data_url": "{{entire_url('delete_credit_limit.dspy')}}"
|
||||
},
|
||||
"data_filter": {
|
||||
"AND": [
|
||||
{"field": "orgid", "op": "=", "var": "orgid"},
|
||||
|
||||
@ -1,42 +0,0 @@
|
||||
|
||||
ns = params_kw.copy()
|
||||
for k,v in ns.items():
|
||||
if v == 'NaN' or v == 'null':
|
||||
ns[k] = None
|
||||
id = params_kw.id
|
||||
if not id or len(id) > 32:
|
||||
id = uuid()
|
||||
ns['id'] = id
|
||||
|
||||
# Initialize credit fields
|
||||
ns['used_credit'] = 0
|
||||
ns['available_credit'] = float(ns.get('credit_limit', 0))
|
||||
ns['status'] = 'active'
|
||||
ns['created_at'] = datetime.datetime.now()
|
||||
ns['updated_at'] = datetime.datetime.now()
|
||||
|
||||
db = DBPools()
|
||||
dbname = get_module_dbname('accounting')
|
||||
async with db.sqlorContext(dbname) as sor:
|
||||
r = await sor.C('credit_limit', ns.copy())
|
||||
return {
|
||||
"widgettype":"Message",
|
||||
"options":{
|
||||
"cwidth":16,
|
||||
"cheight":9,
|
||||
"title":"信用额度设置成功",
|
||||
"timeout":3,
|
||||
"message":"ok"
|
||||
}
|
||||
}
|
||||
|
||||
return {
|
||||
"widgettype":"Error",
|
||||
"options":{
|
||||
"title":"设置失败",
|
||||
"cwidth":16,
|
||||
"cheight":9,
|
||||
"timeout":3,
|
||||
"message":"failed"
|
||||
}
|
||||
}
|
||||
@ -1,33 +0,0 @@
|
||||
|
||||
ns = {
|
||||
'id':params_kw['id'],
|
||||
}
|
||||
|
||||
|
||||
db = DBPools()
|
||||
dbname = get_module_dbname('accounting')
|
||||
async with db.sqlorContext(dbname) as sor:
|
||||
r = await sor.D('credit_limit', ns)
|
||||
debug('delete credit_limit success')
|
||||
return {
|
||||
"widgettype":"Message",
|
||||
"options":{
|
||||
"title":"删除成功",
|
||||
"timeout":3,
|
||||
"cwidth":16,
|
||||
"cheight":9,
|
||||
"message":"ok"
|
||||
}
|
||||
}
|
||||
|
||||
debug('Delete credit_limit failed')
|
||||
return {
|
||||
"widgettype":"Error",
|
||||
"options":{
|
||||
"title":"删除失败",
|
||||
"timeout":3,
|
||||
"cwidth":16,
|
||||
"cheight":9,
|
||||
"message":"failed"
|
||||
}
|
||||
}
|
||||
@ -1,46 +0,0 @@
|
||||
|
||||
ns = params_kw.copy()
|
||||
for k,v in ns.items():
|
||||
if v == 'NaN' or v == 'null':
|
||||
ns[k] = None
|
||||
|
||||
# Recalculate available_credit when credit_limit changes
|
||||
if 'credit_limit' in ns and ns['credit_limit'] is not None:
|
||||
credit_limit_val = float(ns['credit_limit'])
|
||||
# Get current used_credit from DB
|
||||
db = DBPools()
|
||||
dbname = get_module_dbname('accounting')
|
||||
async with db.sqlorContext(dbname) as sor:
|
||||
recs = await sor.R('credit_limit', {'id': ns['id']})
|
||||
if len(recs) > 0:
|
||||
used = float(recs[0].get('used_credit', 0))
|
||||
ns['available_credit'] = credit_limit_val - used
|
||||
|
||||
ns['updated_at'] = datetime.datetime.now()
|
||||
|
||||
db = DBPools()
|
||||
dbname = get_module_dbname('accounting')
|
||||
async with db.sqlorContext(dbname) as sor:
|
||||
r = await sor.U('credit_limit', ns)
|
||||
debug('update credit_limit success')
|
||||
return {
|
||||
"widgettype":"Message",
|
||||
"options":{
|
||||
"title":"信用额度更新成功",
|
||||
"cwidth":16,
|
||||
"cheight":9,
|
||||
"timeout":3,
|
||||
"message":"ok"
|
||||
}
|
||||
}
|
||||
|
||||
return {
|
||||
"widgettype":"Error",
|
||||
"options":{
|
||||
"title":"更新失败",
|
||||
"cwidth":16,
|
||||
"cheight":9,
|
||||
"timeout":3,
|
||||
"message":"failed"
|
||||
}
|
||||
}
|
||||
Loading…
x
Reference in New Issue
Block a user