You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
 
 

123 lines
4.6 KiB

import dash
import time
import uuid
from dash import dcc
from dash.dependencies import Input, Output, State, ALL
from dash.exceptions import PreventUpdate
import feffery_utils_components as fuc
from server import app
from utils.common import validate_data_not_empty
#from api.ndstand import get_nfddict_data_list_api
from api.fddict import get_fddict_list_api
# 添加一个回调函数来监听按钮点击事件
@app.callback(
Output('nfddict_data-list-table', 'data'), # 替换为你的输出组件
Input('ndstand-list-table','nClicksButton'),
State('ndstand-list-table', 'clickedContent'), # 替换为你的表格组件ID
prevent_initial_call=True
)
def nfddict_data_renter_info(nClicksButton, clickedContent):
# print(555,clickedContent,nClicksButton,7777)
table_data=[]
if nClicksButton:
query_params = dict(
fddict_col_no=clickedContent,
page_num=1,
page_size=10
)
table_info = get_fddict_list_api(query_params)
table_data = table_info['data']['rows']
return table_data
raise PreventUpdate
# @app.callback(
# output=dict(
# nfddict_data_table_data=Output('nfddict_data-list-table', 'data', allow_duplicate=True),
# nfddict_data_table_pagination=Output('nfddict_data-list-table', 'pagination', allow_duplicate=True),
# nfddict_data_table_key=Output('nfddict_data-list-table', 'key'),
# nfddict_data_table_selectedrowkeys=Output('nfddict_data-list-table', 'selectedRowKeys'),
# api_check_token_trigger=Output('api-check-token', 'data', allow_duplicate=True)
# ),
# inputs=dict(
# search_click=Input('nfddict_data-search', 'nClicks'),
# pagination=Input('nfddict_data-list-table', 'pagination')
# ),
# state=dict(
# fddict_col_no=State('nfddict_data-fddict_col_no-input', 'value'),
# fddict_col_cn=State('nfddict_data-fddict_col_cn-input', 'value'),
# button_perms=State('nfddict_data-button-perms-container', 'data')
# ),
# prevent_initial_call=True
# )
# def get_nfddict_data_table_data(search_click, pagination, fddict_col_no, fddict_col_cn, button_perms):
# """
# 获取字典数据表格数据回调(进行表格相关增删查改操作后均会触发此回调)
# """
# query_params = dict(
# fddict_col_no=fddict_col_no,
# fddict_col_cn=fddict_col_cn,
# page_num=1,
# page_size=10
# )
# triggered_id = dash.ctx.triggered_id
# if triggered_id == 'nfddict_data-list-table':
# query_params = dict(
# fddict_col_no=fddict_col_no,
# fddict_col_cn=fddict_col_cn,
# page_num=pagination['current'],
# page_size=pagination['pageSize']
# )
# if search_click or pagination :
# table_info = get_nfddict_data_list_api(query_params)
# if table_info['code'] == 200:
# table_data = table_info['data']['rows']
# table_pagination = dict(
# pageSize=table_info['data']['page_size'],
# current=table_info['data']['page_num'],
# showSizeChanger=True,
# pageSizeOptions=[10, 30, 50, 100],
# showQuickJumper=True,
# total=table_info['data']['total']
# )
# for item in table_data:
# item['key'] = str(item['fddict_col_no'])
# return dict(
# nfddict_data_table_data=table_data,
# nfddict_data_table_pagination=table_pagination,
# nfddict_data_table_key=str(uuid.uuid4()),
# nfddict_data_table_selectedrowkeys=None,
# api_check_token_trigger={'timestamp': time.time()}
# )
# return dict(
# nfddict_data_table_data=dash.no_update,
# nfddict_data_table_pagination=dash.no_update,
# nfddict_data_table_key=dash.no_update,
# nfddict_data_table_selectedrowkeys=dash.no_update,
# api_check_token_trigger={'timestamp': time.time()}
# )
# raise PreventUpdate
# # 重置代码表数据搜索表单数据回调
# app.clientside_callback(
# '''
# (reset_click) => {
# if (reset_click) {
# return [null, null, {'type': 'reset'}]
# }
# return window.dash_clientside.no_update;
# }
# ''',
# [Output('nfddict_data-fddict_col_cn-input', 'value'),
# Output('nfddict_data-fddict_col_no-input', 'value')],
# Input('nfddict_data-reset', 'nClicks'),
# prevent_initial_call=True
# )