这是一个button,功能是1、取主表单xmid的值,然后
调用预算余额表接口,过滤出xmid 相等的记录到子表单中,帮我看下啥问题:
xmbtn() {
debugger;
console.log(formData.value.xmid)
// ========== 1. 保留原有正常代码 ==========
useFun.setPropConfig('cgdh', { display: true });
watch(() => tableForm.value.cwzcmxb, (list) => {
let num = 0;
if (list) {
list.forEach(item => num += (Number(item.cgsl) || 0));
}
tableForm.value.cgje = num;
}, { deep: true });
// ========== 2. 核心逻辑(修复消息提示API) ==========
// ① 获取当前选中的xmid
// const subTable = subTableRef.value.cwzcmxb
const currentXmid = FormData.value.xmid
//tableForm.value.xmid;
//const currTable = componentRef.value.tableView_26746.controlRef.tableSelect
// 修复:替换useFun.message为平台兼容的消息提示API
if (!currentXmid) {
// 方案1:JeeLowCode通用消息提示(优先试这个)
window.$message?.warning('请先选择项目ID!');
// 方案2:如果方案1无效,试这个(平台低版本)
// useFun.showMessage('请先选择项目ID!', 'warning');
return;
}
// ② 调用预算余额表接口
useFun.requestApi('post', '/jeelowcode/dbform-data/list/2018569791187410946', {
data: {
xmid: currentXmid
}
}).then(res => {
// ③ 设置表格参数+打开弹窗
const controlData = tableView_26746.value?.params; // 加?.防止controlData undefined
if (controlData?.enhanceData) { // 加判断,避免报错
controlData.enhanceData.selectId = tableForm.value.cwzcmxb?.map(item => item.wlbm) || [];
}
if (tableView_26746.value) {
tableView_26746.value.show = true;
}
if (res.records && res.records.length) {
useFun.openModal('预算余额表弹窗的实际编码', {
tableData: res.records,
extraParams: { xmid: currentXmid }
});
} else {
// 修复:消息提示API
window.$message?.info('暂无该项目的预算余额数据!');
// useFun.showMessage('暂无该项目的预算余额数据!', 'info'); // 备选方案
useFun.openModal('预算余额表弹窗的实际编码', { tableData: [] });
}
}).catch(err => {
console.error('获取预算余额数据失败:', err);
// 修复:消息提示API
window.$message?.error('加载预算余额数据失败,请重试!');
// useFun.showMessage('加载预算余额数据失败,请重试!', 'error'); // 备选方案
});
// const controlData = tableView_26746.value.params //TableView的d置
//设置当前选中的产品id给产品表
// controlData.enhanceData.selectId = tableForm.value.cwzcmxb.map(item => item.wlbm)
// tableView_26746.value.show = true
},
项目:JeeLowCode

首先是没有取到主表单xmid的值: const currentXmid = FormData.value.xmid