diff --git a/wwwroot/api/ensure_distribution_agreement.dspy b/wwwroot/api/ensure_distribution_agreement.dspy index 393e388..c7be35c 100644 --- a/wwwroot/api/ensure_distribution_agreement.dspy +++ b/wwwroot/api/ensure_distribution_agreement.dspy @@ -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' } } diff --git a/wwwroot/api/ensure_supply_contract.dspy b/wwwroot/api/ensure_supply_contract.dspy index b69513d..9869e09 100644 --- a/wwwroot/api/ensure_supply_contract.dspy +++ b/wwwroot/api/ensure_supply_contract.dspy @@ -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' } }