fix: use whitelist approach - only pass known table columns to sor.I
This commit is contained in:
parent
959d021537
commit
1d99375578
@ -3,11 +3,13 @@ user_id = await get_user()
|
||||
user_orgid = (await get_userorgid()) or '0'
|
||||
dbname = get_module_dbname('supplychain')
|
||||
|
||||
data = dict(params_kw)
|
||||
# Clean non-table params and _text suffix fields
|
||||
for key in list(data.keys()):
|
||||
if key.startswith('_') or key.endswith('_text') or key in ['page', 'rows', 'data_filter', 'pagerows', 'referer_widget']:
|
||||
data.pop(key, None)
|
||||
# Only keep known table columns
|
||||
known_cols = {'contract_name', 'sign_date', 'start_date', 'end_date', 'status', 'default_discount', 'remark', 'supplier_id', 'contract_code'}
|
||||
data = {}
|
||||
for k, v in params_kw.items():
|
||||
if k in known_cols and v is not None and v != '':
|
||||
data[k] = v
|
||||
|
||||
data['id'] = getID()
|
||||
data['resellerid'] = user_orgid
|
||||
data['created_by'] = user_id
|
||||
|
||||
Loading…
x
Reference in New Issue
Block a user