|
@@ -368,8 +368,9 @@ export function tryEnable(data, enableSetting) {
|
|
|
* @param config 目标对象的配置(在构造函数之前也可以)
|
|
|
* @param getDictFn 获取字典的方法
|
|
|
* @param bizKey 传入字典的参数
|
|
|
+ * @param multiValueSeparator 多个字典值的分割符号
|
|
|
*/
|
|
|
-export function setComboStore(sender, config, getDictFn, bizKey) {
|
|
|
+export function setComboStore(sender, config, getDictFn, bizKey, multiValueSeparator = "") {
|
|
|
if (sender.xtype === 'combotree') {
|
|
|
getDictFn(bizKey, (r) => {
|
|
|
if (sender.store) {
|
|
@@ -428,6 +429,31 @@ export function setComboStore(sender, config, getDictFn, bizKey) {
|
|
|
const renderer = (value, metaData) => {
|
|
|
const valueField = r.field[0]
|
|
|
const displayField = r.field[1]
|
|
|
+ const separator = multiValueSeparator
|
|
|
+ if (separator) {
|
|
|
+ const arr = value.split(separator)
|
|
|
+ let displayValue = ""
|
|
|
+ for (let i = 0; i < arr.length; i++) {
|
|
|
+ const itv = arr[i]
|
|
|
+ if (i > 0) {
|
|
|
+ displayValue += separator
|
|
|
+ }
|
|
|
+ let j = 0
|
|
|
+ _.each(r.data, row => {
|
|
|
+ // 从 valueField 找到要显示的 displayField
|
|
|
+ if (row[valueField] == itv) {
|
|
|
+ displayValue += row[displayField]
|
|
|
+ return false
|
|
|
+ } else {
|
|
|
+ if (i >= r.data.length -1) {
|
|
|
+ displayValue += itv
|
|
|
+ }
|
|
|
+ }
|
|
|
+ j++
|
|
|
+ })
|
|
|
+ }
|
|
|
+ return displayValue
|
|
|
+ }
|
|
|
_.each(r.data, row => {
|
|
|
// 从 valueField 找到要显示的 displayField
|
|
|
if (row[valueField] == value) {
|