Use rv_template_uid for recordview POST (server renamed field)

This commit is contained in:
Bhanu Prakash Sai Potteri 2026-05-22 23:04:18 +05:30
parent 0fd08c4015
commit 8205cdbef2
2 changed files with 9 additions and 8 deletions

View File

@ -103,7 +103,7 @@ export interface RVScreen {
id: number; id: number;
source_screen_id: number; source_screen_id: number;
screen_name: string; screen_name: string;
rv_template_id: number; rv_template_uid: string;
layout?: any; layout?: any;
} }
@ -148,12 +148,12 @@ export interface RecordViewResponse {
} }
export function getRecordView( export function getRecordView(
rvTemplateId: number, rvTemplateUid: string,
rvScreenId: string | number, rvScreenId: string | number,
query: SearchQuery = {}, query: SearchQuery = {},
): Promise<RecordViewResponse> { ): Promise<RecordViewResponse> {
return request("POST", `/app/${APP_ID}/view/recordview`, { return request("POST", `/app/${APP_ID}/view/recordview`, {
rv_template_id: rvTemplateId, rv_template_uid: rvTemplateUid,
rv_screen_id: String(rvScreenId), rv_screen_id: String(rvScreenId),
search_query: { search_query: {
page: query.page || 1, page: query.page || 1,

View File

@ -87,7 +87,7 @@ interface Props {
export default function RecordViewTable({ viewId, onRowClick, toolbarAction }: Props) { export default function RecordViewTable({ viewId, onRowClick, toolbarAction }: Props) {
const navigate = useNavigate(); const navigate = useNavigate();
const [rvTemplateId, setRvTemplateId] = useState<number | null>(null); const [rvTemplateUid, setRvTemplateUid] = useState<string | null>(null);
const [fields, setFields] = useState<RecordViewField[]>([]); const [fields, setFields] = useState<RecordViewField[]>([]);
const [rows, setRows] = useState<Record<string, unknown>[]>([]); const [rows, setRows] = useState<Record<string, unknown>[]>([]);
const [pagination, setPagination] = useState({ page: 1, limit: 10, total_count: 0, total_pages: 0 }); const [pagination, setPagination] = useState({ page: 1, limit: 10, total_count: 0, total_pages: 0 });
@ -101,17 +101,18 @@ export default function RecordViewTable({ viewId, onRowClick, toolbarAction }: P
useEffect(() => { useEffect(() => {
setLoading(true); setLoading(true);
setRvTemplateUid(null);
getRVScreen(viewId) getRVScreen(viewId)
.then((rv) => setRvTemplateId(rv.rv_template_id)) .then((rv) => setRvTemplateUid(rv.rv_template_uid))
.catch((err) => { setError(err.message); setLoading(false); }); .catch((err) => { setError(err.message); setLoading(false); });
}, [viewId]); }, [viewId]);
const fetchData = useCallback(async () => { const fetchData = useCallback(async () => {
if (!rvTemplateId) return; if (!rvTemplateUid) return;
if (!loading) setDataLoading(true); if (!loading) setDataLoading(true);
setError(null); setError(null);
try { try {
const res = await getRecordView(rvTemplateId, viewId, query); const res = await getRecordView(rvTemplateUid, viewId, query);
setFields(res.config.fields.filter((f) => f.field_key !== "")); setFields(res.config.fields.filter((f) => f.field_key !== ""));
const dataRows = Array.isArray(res.data) ? res.data : []; const dataRows = Array.isArray(res.data) ? res.data : [];
setRows(dataRows); setRows(dataRows);
@ -122,7 +123,7 @@ export default function RecordViewTable({ viewId, onRowClick, toolbarAction }: P
} }
} catch (err: any) { setError(err.message); } } catch (err: any) { setError(err.message); }
finally { setLoading(false); setDataLoading(false); } finally { setLoading(false); setDataLoading(false); }
}, [rvTemplateId, viewId, query]); }, [rvTemplateUid, viewId, query]);
useEffect(() => { fetchData(); }, [fetchData]); useEffect(() => { fetchData(); }, [fetchData]);