fix: use DataViewer instead of UrlWidget (UrlWidget ignores w/h; DataViewer works)

This commit is contained in:
yumoqing 2026-07-10 11:30:05 +08:00
parent e0dc9963b7
commit 749047814f
2 changed files with 6 additions and 18 deletions

View File

@ -49,10 +49,8 @@ async with DBPools().sqlorContext(dbname) as sor:
# Return CRUD page embedded in popup
return {
'widgettype': 'UrlWidget',
'widgettype': 'DataViewer',
'options': {
'url': f'../distribution_agreements_list?sub_reseller_id={sub_reseller_id}',
'width': '100%',
'height': '100%'
'url': f'../distribution_agreements_list?sub_reseller_id={sub_reseller_id}&_webbricks_=1'
}
}

View File

@ -9,35 +9,28 @@ if not userorgid:
dbname = get_module_dbname('supplychain')
async with DBPools().sqlorContext(dbname) as sor:
# Check existing
recs = await sor.sqlExe(
'SELECT id FROM supply_contracts WHERE supplier_id = ${sid}$ AND resellerid = ${rid}$ AND status = ${st}$',
{'sid': supplier_id, 'rid': userorgid, 'st': '1'}
)
if not recs:
# Get supplier name
sub = await sor.sqlExe(
'SELECT supplier_name FROM suppliers WHERE id = ${sid}$',
{'sid': supplier_id}
)
sup_name = sub[0].supplier_name if sub else supplier_id
# Generate contract_code
prefix = f"SC-{datetime.datetime.now().strftime('%Y%m%d')}"
cnt_recs = await sor.sqlExe(
'SELECT COUNT(*) as cnt FROM supply_contracts WHERE resellerid = ${rid}$ AND contract_code LIKE ${p}$',
{'rid': userorgid, 'p': prefix + '%'}
)
seq = (cnt_recs[0].cnt if cnt_recs else 0) + 1
contract_code = f"{prefix}-{seq:04d}"
now = timestampstr()
contract_id = getID()
await sor.C('supply_contracts', {
'id': contract_id,
'id': getID(),
'resellerid': userorgid,
'supplier_id': supplier_id,
'contract_code': contract_code,
'contract_code': f"{prefix}-{seq:04d}",
'contract_name': f'{sup_name}供销协议',
'start_date': curDateString(),
'status': '1',
@ -47,12 +40,9 @@ async with DBPools().sqlorContext(dbname) as sor:
'updated_at': now,
})
# Return CRUD page embedded in popup
return {
'widgettype': 'UrlWidget',
'widgettype': 'DataViewer',
'options': {
'url': f'../supply_contracts_list?supplier_id={supplier_id}',
'width': '100%',
'height': '100%'
'url': f'../supply_contracts_list?supplier_id={supplier_id}&_webbricks_=1'
}
}