介绍

调整主表单关联选择字段,将选中数据的子功能集合数据,赋值给当前表单子功能集合

详细步骤

1.双击字段编码,点击事件编辑,弹出脚本编辑器;

2.脚本编辑器中,点击【+】按钮,弹出框中填写事件名称、事件编码select,点击【确定】按钮;

3. 编写JS,实现业务逻辑;

4.页面效果;

点击关联选择字段,选择一个数据;

点击【确定】按钮,将选中数据的子功能集合的数据插入到当前表单中;

相关代码

//获得功能对象
const {$func} = EventOptions;
//获取ajax
const {ajax,isNotEmpty} = JE.useUtils();
const {Modal} = JE.useUi();
// 获取表单数据
const formData = $func.getFuncForm().getModel();
// 获取主键值
const pkValue = formData.JE_DEMO_JDAL_ID;
//获取查询选择选中的值
const rows=EventOptions.rows;
//获取外键(适用于单选模式,多选模式请使用each循环)
const fkeyValue = rows[0].JE_DEMO_JDAL_ID;
//获取子功能集合
const childFunc= $func.getChildFuncFields('JE_DEMO_XMRW');
const childGrid=childFunc.getFuncGrid();
//删除子功能集合已有数据(数据库数据)
var delIds=new Array();
var datas=childGrid.store.data || [];
debugger;
if(pkValue != null && pkValue != '' && pkValue != undefined){
    datas.forEach((dataObj)=>{
        if(isNotEmpty(dataObj.JE_DEMO_XMRW_ID) && dataObj["__action__"]!='doInsert'){
            delIds.push(dataObj.JE_DEMO_XMRW_ID);
        }
    })
}

if(delIds.length>0){
    ajax({
        url:"/je/common/doRemove",
        params:{
            tableCode:"JE_DEMO_XMRW",
            funcCode:"JE_DEMO_XMRW",
            ids:delIds.join(",")
        },
         headers:{pd:"demo"}
    }).then((resObj)=>{
        //childGrid.store.remove(delIds);
    })
}

//删除子功能集合grid数据
if(datas.length>0 || (childGrid.getInsertRecords() && childGrid.getInsertRecords().length>0)){
    childGrid.store.remove(datas);
}
//查询新的数据插入到子功能集合中
if(rows && rows.length>0){
    ajax({
        url:"/je/common/load",
        params:{
            tableCode:"JE_DEMO_XMRW",
            funcCode:"JE_DEMO_XMRW",
            j_query:'[{"type":"=","code":"JE_DEMO_JDAL_ID","value":"'+fkeyValue+'","cn":"and"}]'
        }, headers:{pd:"demo"}
    }).then((resObj)=>{
        if(resObj.success){
            debugger;
            var cpfws=resObj.data.rows;
            var index=cpfws.length;
            var records=new Array();
            for(var i=cpfws.length-1;i>=0;i--){
                var cpfw=cpfws[i];
                var vals=childFunc.getDefaultValues();
                var fields="XMRW_RWMC,XMRW_RWGS".split(",");
                fields.forEach((fieldCode)=>{
                    vals[fieldCode]=cpfw[fieldCode];
                })
                vals.SY_ORDERINDEX=index;
                vals.JE_DEMO_JDAL_ID=pkValue;
                childGrid.store.insert(vals);
                index--;
                records.push(vals);
            }
        }
    });
}

最后编辑: 呼丽华  文档更新时间: 2024-11-08 17:00   作者:肖海杰