谷神前端选窗方案

约定
// 已选内容主键逗号拼接字符串
let CHECKED_STR
增量选择 => 增量添加
选窗打开按钮
// 打开选窗前前端收集已选数据
let CHECKED_STR = detailTable.getData().reduce((ids, item, index) => {
	if (!index) {
		return item.id
	} else {
		return ids + ',' + item.id 
	}
}, '')

// 选窗参数
let data = {
	CHECKED_STR
}

// 打开选窗
$vm.openDialog('pageId', data, 'select', true, (rows) => {
	// 增量添加
	detailTable.addNewRow(rows)
}, null)
选窗查询条件框
// 添加隐藏域
NULL AS CHECKED_STR,
选窗可选列表服务事件beforeSqlSelect
// 打开选窗后可选列表后端排除已选数据
$vs.sqlTools.strNotIn($sqlBean, 'PRIMARY_KEY', $form.CHECKED_STR)
全量选择 => 全量添加
选窗打开按钮
// 打开选窗前前端收集已选数据
let CHECKED_STR = detailTable.getData().reduce((ids, item, index) => {
	if (!index) {
		return item.id
	} else {
		return ids + ',' + item.id 
	}
}, '')

// 选窗参数
let data = {
	CHECKED_STR
}

// 打开选窗
$vm.openDialog('pageId', data, 'select', true, (rows) => {
	// 全量添加
	detailTable.clearData()
	detailTable.addNewRow(rows)
}, null)
选窗页面事件onOpen
// 手动加载已选列表
detailTable.load({isLoadAll:true, CHECKED_STR: args.CHECKED_STR})
选窗已选列表服务事件beforeSqlSelect
// 打开选窗后已选列表数据初始化
$vs.sqlTools.strIn($sqlBean, 'PRIMARY_KEY', $form.CHECKED_STR)
#if ($vs.util.isNull($form.CHECKED_STR))
	$vs.sqlTools.add($sqlBean, ' AND 0 != 0 ')
#end
  • 1
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值