@weitutech/by-components 1.1.116 → 1.1.118

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
@@ -62441,8 +62441,8 @@ var table_component = normalizeComponent(
62441
62441
  )
62442
62442
 
62443
62443
  /* harmony default export */ var table = (table_component.exports);
62444
- ;// ./node_modules/cache-loader/dist/cjs.js?{"cacheDirectory":"node_modules/.cache/vue-loader","cacheIdentifier":"ffbc40de-vue-loader-template"}!./node_modules/babel-loader/lib/index.js??clonedRuleSet-40.use[1]!./node_modules/@vue/cli-service/node_modules/@vue/vue-loader-v15/lib/loaders/templateLoader.js??ruleSet[1].rules[3]!./node_modules/cache-loader/dist/cjs.js??ruleSet[0].use[0]!./node_modules/@vue/cli-service/node_modules/@vue/vue-loader-v15/lib/index.js??vue-loader-options!./src/components/form/form.vue?vue&type=template&id=1b7e7655&scoped=true
62445
- var formvue_type_template_id_1b7e7655_scoped_true_render = function render() {
62444
+ ;// ./node_modules/cache-loader/dist/cjs.js?{"cacheDirectory":"node_modules/.cache/vue-loader","cacheIdentifier":"ffbc40de-vue-loader-template"}!./node_modules/babel-loader/lib/index.js??clonedRuleSet-40.use[1]!./node_modules/@vue/cli-service/node_modules/@vue/vue-loader-v15/lib/loaders/templateLoader.js??ruleSet[1].rules[3]!./node_modules/cache-loader/dist/cjs.js??ruleSet[0].use[0]!./node_modules/@vue/cli-service/node_modules/@vue/vue-loader-v15/lib/index.js??vue-loader-options!./src/components/form/form.vue?vue&type=template&id=b701bedc&scoped=true
62445
+ var formvue_type_template_id_b701bedc_scoped_true_render = function render() {
62446
62446
  var _vm = this,
62447
62447
  _c = _vm._self._c;
62448
62448
  return _c('div', {
@@ -62579,7 +62579,10 @@ var formvue_type_template_id_1b7e7655_scoped_true_render = function render() {
62579
62579
  "enhancedDescriptionKey": item.enhancedDescriptionKey || 'mobile',
62580
62580
  "enhancedDisabledKey": item.enhancedDisabledKey || 'status',
62581
62581
  "enhancedDisabledCanSelect": item.enhancedDisabledCanSelect || false,
62582
- "enhancedCollapseTags": item.enhancedCollapseTags || false
62582
+ "enhancedCollapseTags": item.enhancedCollapseTags || false,
62583
+ "showBatchSearch": item.showBatchSearch || true,
62584
+ "batchSearchPopoverTitle": item.batchSearchPopoverTitle || '批量输入',
62585
+ "batchSearchPopoverWidth": item.batchSearchPopoverWidth || '300'
62583
62586
  },
62584
62587
  on: {
62585
62588
  "update:suffixInputValue": function ($event) {
@@ -62805,7 +62808,7 @@ var formvue_type_template_id_1b7e7655_scoped_true_render = function render() {
62805
62808
  staticClass: "footer"
62806
62809
  }, [_vm._t("footer")], 2)], 1);
62807
62810
  };
62808
- var formvue_type_template_id_1b7e7655_scoped_true_staticRenderFns = [];
62811
+ var formvue_type_template_id_b701bedc_scoped_true_staticRenderFns = [];
62809
62812
 
62810
62813
  ;// ./node_modules/cache-loader/dist/cjs.js?{"cacheDirectory":"node_modules/.cache/vue-loader","cacheIdentifier":"ffbc40de-vue-loader-template"}!./node_modules/babel-loader/lib/index.js??clonedRuleSet-40.use[1]!./node_modules/@vue/cli-service/node_modules/@vue/vue-loader-v15/lib/loaders/templateLoader.js??ruleSet[1].rules[3]!./node_modules/cache-loader/dist/cjs.js??ruleSet[0].use[0]!./node_modules/@vue/cli-service/node_modules/@vue/vue-loader-v15/lib/index.js??vue-loader-options!./src/components/form/comps/pair-number-input.vue?vue&type=template&id=604235f6
62811
62814
  var pair_number_inputvue_type_template_id_604235f6_render = function render() {
@@ -63105,8 +63108,8 @@ var custom_date_picker_component = normalizeComponent(
63105
63108
  )
63106
63109
 
63107
63110
  /* harmony default export */ var custom_date_picker = (custom_date_picker_component.exports);
63108
- ;// ./node_modules/cache-loader/dist/cjs.js?{"cacheDirectory":"node_modules/.cache/vue-loader","cacheIdentifier":"ffbc40de-vue-loader-template"}!./node_modules/babel-loader/lib/index.js??clonedRuleSet-40.use[1]!./node_modules/@vue/cli-service/node_modules/@vue/vue-loader-v15/lib/loaders/templateLoader.js??ruleSet[1].rules[3]!./node_modules/cache-loader/dist/cjs.js??ruleSet[0].use[0]!./node_modules/@vue/cli-service/node_modules/@vue/vue-loader-v15/lib/index.js??vue-loader-options!./src/components/common-selector/ByCommonSelector.vue?vue&type=template&id=338446ad
63109
- var ByCommonSelectorvue_type_template_id_338446ad_render = function render() {
63111
+ ;// ./node_modules/cache-loader/dist/cjs.js?{"cacheDirectory":"node_modules/.cache/vue-loader","cacheIdentifier":"ffbc40de-vue-loader-template"}!./node_modules/babel-loader/lib/index.js??clonedRuleSet-40.use[1]!./node_modules/@vue/cli-service/node_modules/@vue/vue-loader-v15/lib/loaders/templateLoader.js??ruleSet[1].rules[3]!./node_modules/cache-loader/dist/cjs.js??ruleSet[0].use[0]!./node_modules/@vue/cli-service/node_modules/@vue/vue-loader-v15/lib/index.js??vue-loader-options!./src/components/common-selector/ByCommonSelector.vue?vue&type=template&id=83b56258
63112
+ var ByCommonSelectorvue_type_template_id_83b56258_render = function render() {
63110
63113
  var _vm = this,
63111
63114
  _c = _vm._self._c;
63112
63115
  return _c('div', {
@@ -63245,6 +63248,8 @@ var ByCommonSelectorvue_type_template_id_338446ad_render = function render() {
63245
63248
  staticStyle: {
63246
63249
  "padding-left": "20px"
63247
63250
  }
63251
+ }, [_c('div', {
63252
+ staticClass: "search-container"
63248
63253
  }, [_c('el-input', {
63249
63254
  staticStyle: {
63250
63255
  "width": "150px"
@@ -63265,7 +63270,72 @@ var ByCommonSelectorvue_type_template_id_338446ad_render = function render() {
63265
63270
  },
63266
63271
  expression: "keyword"
63267
63272
  }
63268
- })], 1)]) : _vm._e(), _c('div', {
63273
+ }), _vm.showBatchSearch && _vm.multiple && _vm.type === 'border' ? _c('el-popover', {
63274
+ attrs: {
63275
+ "placement": "bottom-start",
63276
+ "width": _vm.batchSearchPopoverWidth,
63277
+ "trigger": "click",
63278
+ "popper-class": "batch-search-popover"
63279
+ },
63280
+ on: {
63281
+ "show": _vm.handleBatchSearchShow
63282
+ },
63283
+ model: {
63284
+ value: _vm.batchSearchVisible,
63285
+ callback: function ($$v) {
63286
+ _vm.batchSearchVisible = $$v;
63287
+ },
63288
+ expression: "batchSearchVisible"
63289
+ }
63290
+ }, [_c('div', {
63291
+ staticClass: "batch-search-container"
63292
+ }, [_c('div', {
63293
+ staticClass: "popover-title"
63294
+ }, [_vm._v(_vm._s(_vm.batchSearchPopoverTitle))]), _c('el-input', {
63295
+ staticClass: "batch-search-textarea",
63296
+ attrs: {
63297
+ "type": "textarea",
63298
+ "rows": 12,
63299
+ "placeholder": "请输入名称,多个名称用换行、逗号、分号、空格分隔"
63300
+ },
63301
+ model: {
63302
+ value: _vm.batchSearchContent,
63303
+ callback: function ($$v) {
63304
+ _vm.batchSearchContent = $$v;
63305
+ },
63306
+ expression: "batchSearchContent"
63307
+ }
63308
+ }), _c('div', {
63309
+ staticClass: "popover-footer"
63310
+ }, [_c('el-button', {
63311
+ attrs: {
63312
+ "size": "mini"
63313
+ },
63314
+ on: {
63315
+ "click": function ($event) {
63316
+ _vm.batchSearchVisible = false;
63317
+ }
63318
+ }
63319
+ }, [_vm._v("取消")]), _c('el-button', {
63320
+ attrs: {
63321
+ "size": "mini",
63322
+ "type": "primary"
63323
+ },
63324
+ on: {
63325
+ "click": _vm.handleBatchSearch
63326
+ }
63327
+ }, [_vm._v("确定")])], 1)], 1), _c('el-button', {
63328
+ staticClass: "batch-search-btn",
63329
+ attrs: {
63330
+ "slot": "reference",
63331
+ "size": "mini",
63332
+ "type": "text",
63333
+ "disabled": _vm.loading
63334
+ },
63335
+ slot: "reference"
63336
+ }, [_c('i', {
63337
+ staticClass: "el-icon-edit-outline"
63338
+ })])], 1) : _vm._e()], 1)])]) : _vm._e(), _c('div', {
63269
63339
  staticClass: "by_scroll-container",
63270
63340
  class: {
63271
63341
  'by_single-line': !_vm.open,
@@ -63550,7 +63620,7 @@ var ByCommonSelectorvue_type_template_id_338446ad_render = function render() {
63550
63620
  }
63551
63621
  }, [_vm._v(" 加载中... ")]) : _vm._e()], 2);
63552
63622
  };
63553
- var ByCommonSelectorvue_type_template_id_338446ad_staticRenderFns = [];
63623
+ var ByCommonSelectorvue_type_template_id_83b56258_staticRenderFns = [];
63554
63624
 
63555
63625
  ;// ./node_modules/pinyin-pro/dist/index.mjs
63556
63626
 
@@ -74066,6 +74136,28 @@ const allOptionsNames = ['全部', '全选', '所有', '全部选项', 'All', 'a
74066
74136
  enhancedDisabledCanSelect: {
74067
74137
  type: Boolean,
74068
74138
  default: false
74139
+ },
74140
+ // ********************************** 批量搜索相关 **********************************
74141
+ /**
74142
+ * 是否显示批量搜索按钮(仅多选模式且border模式下有效)
74143
+ */
74144
+ showBatchSearch: {
74145
+ type: Boolean,
74146
+ default: true
74147
+ },
74148
+ /**
74149
+ * 批量搜索弹窗的标题
74150
+ */
74151
+ batchSearchPopoverTitle: {
74152
+ type: String,
74153
+ default: '批量输入'
74154
+ },
74155
+ /**
74156
+ * 批量搜索弹窗宽度
74157
+ */
74158
+ batchSearchPopoverWidth: {
74159
+ type: [String, Number],
74160
+ default: '300'
74069
74161
  }
74070
74162
  },
74071
74163
  data() {
@@ -74101,6 +74193,12 @@ const allOptionsNames = ['全部', '全选', '所有', '全部选项', 'All', 'a
74101
74193
  batchInputContent: '',
74102
74194
  // 批量输入的内容
74103
74195
 
74196
+ // 批量搜索相关数据
74197
+ batchSearchVisible: false,
74198
+ // 批量搜索弹窗是否显示
74199
+ batchSearchContent: '',
74200
+ // 批量搜索输入的内容
74201
+
74104
74202
  // enhancedSelect 相关数据
74105
74203
  allData: new Map(),
74106
74204
  // 缓存所有数据
@@ -74773,6 +74871,81 @@ const allOptionsNames = ['全部', '全选', '所有', '全部选项', 'All', 'a
74773
74871
  this.$emit('search', ''); // 触发清空搜索
74774
74872
  }
74775
74873
  }
74874
+ },
74875
+ // ******************** 批量搜索相关方法 ********************
74876
+
74877
+ // 处理批量搜索弹窗显示
74878
+ handleBatchSearchShow() {
74879
+ // 如果搜索框有输入内容,则清空
74880
+ if (this.keyword) {
74881
+ this.keyword = '';
74882
+ this.keywordChange();
74883
+ }
74884
+ },
74885
+ // 处理批量搜索
74886
+ handleBatchSearch() {
74887
+ if (!this.batchSearchContent.trim()) {
74888
+ this.batchSearchVisible = false;
74889
+ return;
74890
+ }
74891
+
74892
+ // 分割输入内容(支持换行、逗号、分号等分隔符)
74893
+ const inputNames = this.batchSearchContent.split(/[\n,;,;\s]+/).filter(item => item.trim()).map(item => item.trim());
74894
+ if (inputNames.length === 0) {
74895
+ this.batchSearchVisible = false;
74896
+ return;
74897
+ }
74898
+
74899
+ // 在选项数据中搜索匹配的名称
74900
+ const matchedItems = this.searchNamesInOptions(inputNames);
74901
+ if (matchedItems.length > 0) {
74902
+ // 将匹配的项添加到选中值中
74903
+ const newSelectedValues = [...this.selectedValue];
74904
+ matchedItems.forEach(item => {
74905
+ // 检查是否已经存在,避免重复添加
74906
+ if (!newSelectedValues.includes(item.id)) {
74907
+ newSelectedValues.push(item.id);
74908
+ }
74909
+ });
74910
+ this.selectedValue = newSelectedValues;
74911
+ this.checkAll = false;
74912
+
74913
+ // 更新显示列表为匹配的项
74914
+ this.dataList = matchedItems;
74915
+ this.currentPage = 1;
74916
+ this.handlePageChange(1);
74917
+
74918
+ // 发出事件
74919
+ this.emitChange(this.selectedValue);
74920
+ }
74921
+
74922
+ // 关闭弹窗并清空内容
74923
+ this.batchSearchVisible = false;
74924
+ this.batchSearchContent = '';
74925
+ },
74926
+ // 在选项数据中搜索匹配的名称(全匹配,忽略空格,排除禁用项)
74927
+ searchNamesInOptions(names) {
74928
+ const matchedItems = [];
74929
+
74930
+ // 搜索所有选项(包括本地选项和异步加载的选项)
74931
+ const allOptions = this.loadOptions ? this.localOptions : this.options;
74932
+ for (const option of allOptions) {
74933
+ const optionName = String(option.name || '').replace(/\s+/g, ''); // 去掉所有空格
74934
+
74935
+ // 检查是否全匹配任何输入的名称(去掉空格后比较)
74936
+ const isMatched = names.some(name => {
74937
+ const cleanName = name.replace(/\s+/g, ''); // 去掉输入名称中的空格
74938
+ return optionName.toLowerCase() === cleanName.toLowerCase();
74939
+ });
74940
+
74941
+ // 检查是否未禁用 (这里置灰项也要让其可选中,如果后期要限制可以修改此逻辑)
74942
+ const isNotDisabled = true; //option.status !== 0
74943
+
74944
+ if (isMatched && isNotDisabled) {
74945
+ matchedItems.push(option);
74946
+ }
74947
+ }
74948
+ return matchedItems;
74776
74949
  }
74777
74950
  }
74778
74951
  });
@@ -74788,8 +74961,8 @@ const allOptionsNames = ['全部', '全选', '所有', '全部选项', 'All', 'a
74788
74961
  ;
74789
74962
  var ByCommonSelector_component = normalizeComponent(
74790
74963
  common_selector_ByCommonSelectorvue_type_script_lang_js,
74791
- ByCommonSelectorvue_type_template_id_338446ad_render,
74792
- ByCommonSelectorvue_type_template_id_338446ad_staticRenderFns,
74964
+ ByCommonSelectorvue_type_template_id_83b56258_render,
74965
+ ByCommonSelectorvue_type_template_id_83b56258_staticRenderFns,
74793
74966
  false,
74794
74967
  null,
74795
74968
  null,
@@ -75749,10 +75922,10 @@ var BatchQuerySelector_component = normalizeComponent(
75749
75922
  });
75750
75923
  ;// ./src/components/form/form.vue?vue&type=script&lang=js
75751
75924
  /* harmony default export */ var form_formvue_type_script_lang_js = (formvue_type_script_lang_js);
75752
- ;// ./node_modules/@vue/cli-service/node_modules/mini-css-extract-plugin/dist/loader.js??clonedRuleSet-22.use[0]!./node_modules/@vue/cli-service/node_modules/css-loader/dist/cjs.js??clonedRuleSet-22.use[1]!./node_modules/@vue/cli-service/node_modules/@vue/vue-loader-v15/lib/loaders/stylePostLoader.js!./node_modules/@vue/cli-service/node_modules/postcss-loader/dist/cjs.js??clonedRuleSet-22.use[2]!./node_modules/sass-loader/dist/cjs.js??clonedRuleSet-22.use[3]!./node_modules/cache-loader/dist/cjs.js??ruleSet[0].use[0]!./node_modules/@vue/cli-service/node_modules/@vue/vue-loader-v15/lib/index.js??vue-loader-options!./src/components/form/form.vue?vue&type=style&index=0&id=1b7e7655&prod&lang=scss&scoped=true
75925
+ ;// ./node_modules/@vue/cli-service/node_modules/mini-css-extract-plugin/dist/loader.js??clonedRuleSet-22.use[0]!./node_modules/@vue/cli-service/node_modules/css-loader/dist/cjs.js??clonedRuleSet-22.use[1]!./node_modules/@vue/cli-service/node_modules/@vue/vue-loader-v15/lib/loaders/stylePostLoader.js!./node_modules/@vue/cli-service/node_modules/postcss-loader/dist/cjs.js??clonedRuleSet-22.use[2]!./node_modules/sass-loader/dist/cjs.js??clonedRuleSet-22.use[3]!./node_modules/cache-loader/dist/cjs.js??ruleSet[0].use[0]!./node_modules/@vue/cli-service/node_modules/@vue/vue-loader-v15/lib/index.js??vue-loader-options!./src/components/form/form.vue?vue&type=style&index=0&id=b701bedc&prod&lang=scss&scoped=true
75753
75926
  // extracted by mini-css-extract-plugin
75754
75927
 
75755
- ;// ./src/components/form/form.vue?vue&type=style&index=0&id=1b7e7655&prod&lang=scss&scoped=true
75928
+ ;// ./src/components/form/form.vue?vue&type=style&index=0&id=b701bedc&prod&lang=scss&scoped=true
75756
75929
 
75757
75930
  ;// ./src/components/form/form.vue
75758
75931
 
@@ -75765,11 +75938,11 @@ var BatchQuerySelector_component = normalizeComponent(
75765
75938
 
75766
75939
  var form_component = normalizeComponent(
75767
75940
  form_formvue_type_script_lang_js,
75768
- formvue_type_template_id_1b7e7655_scoped_true_render,
75769
- formvue_type_template_id_1b7e7655_scoped_true_staticRenderFns,
75941
+ formvue_type_template_id_b701bedc_scoped_true_render,
75942
+ formvue_type_template_id_b701bedc_scoped_true_staticRenderFns,
75770
75943
  false,
75771
75944
  null,
75772
- "1b7e7655",
75945
+ "b701bedc",
75773
75946
  null
75774
75947
 
75775
75948
  )
@@ -1 +1 @@
1
- .b-form .header[data-v-1b7e7655]{margin-bottom:20px}.b-form .footer[data-v-1b7e7655]{margin-top:20px}
1
+ .b-form .header[data-v-b701bedc]{margin-bottom:20px}.b-form .footer[data-v-b701bedc]{margin-top:20px}
@@ -62451,8 +62451,8 @@ var table_component = normalizeComponent(
62451
62451
  )
62452
62452
 
62453
62453
  /* harmony default export */ var table = (table_component.exports);
62454
- ;// ./node_modules/cache-loader/dist/cjs.js?{"cacheDirectory":"node_modules/.cache/vue-loader","cacheIdentifier":"ffbc40de-vue-loader-template"}!./node_modules/babel-loader/lib/index.js??clonedRuleSet-82.use[1]!./node_modules/@vue/cli-service/node_modules/@vue/vue-loader-v15/lib/loaders/templateLoader.js??ruleSet[1].rules[3]!./node_modules/cache-loader/dist/cjs.js??ruleSet[0].use[0]!./node_modules/@vue/cli-service/node_modules/@vue/vue-loader-v15/lib/index.js??vue-loader-options!./src/components/form/form.vue?vue&type=template&id=1b7e7655&scoped=true
62455
- var formvue_type_template_id_1b7e7655_scoped_true_render = function render() {
62454
+ ;// ./node_modules/cache-loader/dist/cjs.js?{"cacheDirectory":"node_modules/.cache/vue-loader","cacheIdentifier":"ffbc40de-vue-loader-template"}!./node_modules/babel-loader/lib/index.js??clonedRuleSet-82.use[1]!./node_modules/@vue/cli-service/node_modules/@vue/vue-loader-v15/lib/loaders/templateLoader.js??ruleSet[1].rules[3]!./node_modules/cache-loader/dist/cjs.js??ruleSet[0].use[0]!./node_modules/@vue/cli-service/node_modules/@vue/vue-loader-v15/lib/index.js??vue-loader-options!./src/components/form/form.vue?vue&type=template&id=b701bedc&scoped=true
62455
+ var formvue_type_template_id_b701bedc_scoped_true_render = function render() {
62456
62456
  var _vm = this,
62457
62457
  _c = _vm._self._c;
62458
62458
  return _c('div', {
@@ -62589,7 +62589,10 @@ var formvue_type_template_id_1b7e7655_scoped_true_render = function render() {
62589
62589
  "enhancedDescriptionKey": item.enhancedDescriptionKey || 'mobile',
62590
62590
  "enhancedDisabledKey": item.enhancedDisabledKey || 'status',
62591
62591
  "enhancedDisabledCanSelect": item.enhancedDisabledCanSelect || false,
62592
- "enhancedCollapseTags": item.enhancedCollapseTags || false
62592
+ "enhancedCollapseTags": item.enhancedCollapseTags || false,
62593
+ "showBatchSearch": item.showBatchSearch || true,
62594
+ "batchSearchPopoverTitle": item.batchSearchPopoverTitle || '批量输入',
62595
+ "batchSearchPopoverWidth": item.batchSearchPopoverWidth || '300'
62593
62596
  },
62594
62597
  on: {
62595
62598
  "update:suffixInputValue": function ($event) {
@@ -62815,7 +62818,7 @@ var formvue_type_template_id_1b7e7655_scoped_true_render = function render() {
62815
62818
  staticClass: "footer"
62816
62819
  }, [_vm._t("footer")], 2)], 1);
62817
62820
  };
62818
- var formvue_type_template_id_1b7e7655_scoped_true_staticRenderFns = [];
62821
+ var formvue_type_template_id_b701bedc_scoped_true_staticRenderFns = [];
62819
62822
 
62820
62823
  ;// ./node_modules/cache-loader/dist/cjs.js?{"cacheDirectory":"node_modules/.cache/vue-loader","cacheIdentifier":"ffbc40de-vue-loader-template"}!./node_modules/babel-loader/lib/index.js??clonedRuleSet-82.use[1]!./node_modules/@vue/cli-service/node_modules/@vue/vue-loader-v15/lib/loaders/templateLoader.js??ruleSet[1].rules[3]!./node_modules/cache-loader/dist/cjs.js??ruleSet[0].use[0]!./node_modules/@vue/cli-service/node_modules/@vue/vue-loader-v15/lib/index.js??vue-loader-options!./src/components/form/comps/pair-number-input.vue?vue&type=template&id=604235f6
62821
62824
  var pair_number_inputvue_type_template_id_604235f6_render = function render() {
@@ -63115,8 +63118,8 @@ var custom_date_picker_component = normalizeComponent(
63115
63118
  )
63116
63119
 
63117
63120
  /* harmony default export */ var custom_date_picker = (custom_date_picker_component.exports);
63118
- ;// ./node_modules/cache-loader/dist/cjs.js?{"cacheDirectory":"node_modules/.cache/vue-loader","cacheIdentifier":"ffbc40de-vue-loader-template"}!./node_modules/babel-loader/lib/index.js??clonedRuleSet-82.use[1]!./node_modules/@vue/cli-service/node_modules/@vue/vue-loader-v15/lib/loaders/templateLoader.js??ruleSet[1].rules[3]!./node_modules/cache-loader/dist/cjs.js??ruleSet[0].use[0]!./node_modules/@vue/cli-service/node_modules/@vue/vue-loader-v15/lib/index.js??vue-loader-options!./src/components/common-selector/ByCommonSelector.vue?vue&type=template&id=338446ad
63119
- var ByCommonSelectorvue_type_template_id_338446ad_render = function render() {
63121
+ ;// ./node_modules/cache-loader/dist/cjs.js?{"cacheDirectory":"node_modules/.cache/vue-loader","cacheIdentifier":"ffbc40de-vue-loader-template"}!./node_modules/babel-loader/lib/index.js??clonedRuleSet-82.use[1]!./node_modules/@vue/cli-service/node_modules/@vue/vue-loader-v15/lib/loaders/templateLoader.js??ruleSet[1].rules[3]!./node_modules/cache-loader/dist/cjs.js??ruleSet[0].use[0]!./node_modules/@vue/cli-service/node_modules/@vue/vue-loader-v15/lib/index.js??vue-loader-options!./src/components/common-selector/ByCommonSelector.vue?vue&type=template&id=83b56258
63122
+ var ByCommonSelectorvue_type_template_id_83b56258_render = function render() {
63120
63123
  var _vm = this,
63121
63124
  _c = _vm._self._c;
63122
63125
  return _c('div', {
@@ -63255,6 +63258,8 @@ var ByCommonSelectorvue_type_template_id_338446ad_render = function render() {
63255
63258
  staticStyle: {
63256
63259
  "padding-left": "20px"
63257
63260
  }
63261
+ }, [_c('div', {
63262
+ staticClass: "search-container"
63258
63263
  }, [_c('el-input', {
63259
63264
  staticStyle: {
63260
63265
  "width": "150px"
@@ -63275,7 +63280,72 @@ var ByCommonSelectorvue_type_template_id_338446ad_render = function render() {
63275
63280
  },
63276
63281
  expression: "keyword"
63277
63282
  }
63278
- })], 1)]) : _vm._e(), _c('div', {
63283
+ }), _vm.showBatchSearch && _vm.multiple && _vm.type === 'border' ? _c('el-popover', {
63284
+ attrs: {
63285
+ "placement": "bottom-start",
63286
+ "width": _vm.batchSearchPopoverWidth,
63287
+ "trigger": "click",
63288
+ "popper-class": "batch-search-popover"
63289
+ },
63290
+ on: {
63291
+ "show": _vm.handleBatchSearchShow
63292
+ },
63293
+ model: {
63294
+ value: _vm.batchSearchVisible,
63295
+ callback: function ($$v) {
63296
+ _vm.batchSearchVisible = $$v;
63297
+ },
63298
+ expression: "batchSearchVisible"
63299
+ }
63300
+ }, [_c('div', {
63301
+ staticClass: "batch-search-container"
63302
+ }, [_c('div', {
63303
+ staticClass: "popover-title"
63304
+ }, [_vm._v(_vm._s(_vm.batchSearchPopoverTitle))]), _c('el-input', {
63305
+ staticClass: "batch-search-textarea",
63306
+ attrs: {
63307
+ "type": "textarea",
63308
+ "rows": 12,
63309
+ "placeholder": "请输入名称,多个名称用换行、逗号、分号、空格分隔"
63310
+ },
63311
+ model: {
63312
+ value: _vm.batchSearchContent,
63313
+ callback: function ($$v) {
63314
+ _vm.batchSearchContent = $$v;
63315
+ },
63316
+ expression: "batchSearchContent"
63317
+ }
63318
+ }), _c('div', {
63319
+ staticClass: "popover-footer"
63320
+ }, [_c('el-button', {
63321
+ attrs: {
63322
+ "size": "mini"
63323
+ },
63324
+ on: {
63325
+ "click": function ($event) {
63326
+ _vm.batchSearchVisible = false;
63327
+ }
63328
+ }
63329
+ }, [_vm._v("取消")]), _c('el-button', {
63330
+ attrs: {
63331
+ "size": "mini",
63332
+ "type": "primary"
63333
+ },
63334
+ on: {
63335
+ "click": _vm.handleBatchSearch
63336
+ }
63337
+ }, [_vm._v("确定")])], 1)], 1), _c('el-button', {
63338
+ staticClass: "batch-search-btn",
63339
+ attrs: {
63340
+ "slot": "reference",
63341
+ "size": "mini",
63342
+ "type": "text",
63343
+ "disabled": _vm.loading
63344
+ },
63345
+ slot: "reference"
63346
+ }, [_c('i', {
63347
+ staticClass: "el-icon-edit-outline"
63348
+ })])], 1) : _vm._e()], 1)])]) : _vm._e(), _c('div', {
63279
63349
  staticClass: "by_scroll-container",
63280
63350
  class: {
63281
63351
  'by_single-line': !_vm.open,
@@ -63560,7 +63630,7 @@ var ByCommonSelectorvue_type_template_id_338446ad_render = function render() {
63560
63630
  }
63561
63631
  }, [_vm._v(" 加载中... ")]) : _vm._e()], 2);
63562
63632
  };
63563
- var ByCommonSelectorvue_type_template_id_338446ad_staticRenderFns = [];
63633
+ var ByCommonSelectorvue_type_template_id_83b56258_staticRenderFns = [];
63564
63634
 
63565
63635
  ;// ./node_modules/pinyin-pro/dist/index.mjs
63566
63636
 
@@ -74076,6 +74146,28 @@ const allOptionsNames = ['全部', '全选', '所有', '全部选项', 'All', 'a
74076
74146
  enhancedDisabledCanSelect: {
74077
74147
  type: Boolean,
74078
74148
  default: false
74149
+ },
74150
+ // ********************************** 批量搜索相关 **********************************
74151
+ /**
74152
+ * 是否显示批量搜索按钮(仅多选模式且border模式下有效)
74153
+ */
74154
+ showBatchSearch: {
74155
+ type: Boolean,
74156
+ default: true
74157
+ },
74158
+ /**
74159
+ * 批量搜索弹窗的标题
74160
+ */
74161
+ batchSearchPopoverTitle: {
74162
+ type: String,
74163
+ default: '批量输入'
74164
+ },
74165
+ /**
74166
+ * 批量搜索弹窗宽度
74167
+ */
74168
+ batchSearchPopoverWidth: {
74169
+ type: [String, Number],
74170
+ default: '300'
74079
74171
  }
74080
74172
  },
74081
74173
  data() {
@@ -74111,6 +74203,12 @@ const allOptionsNames = ['全部', '全选', '所有', '全部选项', 'All', 'a
74111
74203
  batchInputContent: '',
74112
74204
  // 批量输入的内容
74113
74205
 
74206
+ // 批量搜索相关数据
74207
+ batchSearchVisible: false,
74208
+ // 批量搜索弹窗是否显示
74209
+ batchSearchContent: '',
74210
+ // 批量搜索输入的内容
74211
+
74114
74212
  // enhancedSelect 相关数据
74115
74213
  allData: new Map(),
74116
74214
  // 缓存所有数据
@@ -74783,6 +74881,81 @@ const allOptionsNames = ['全部', '全选', '所有', '全部选项', 'All', 'a
74783
74881
  this.$emit('search', ''); // 触发清空搜索
74784
74882
  }
74785
74883
  }
74884
+ },
74885
+ // ******************** 批量搜索相关方法 ********************
74886
+
74887
+ // 处理批量搜索弹窗显示
74888
+ handleBatchSearchShow() {
74889
+ // 如果搜索框有输入内容,则清空
74890
+ if (this.keyword) {
74891
+ this.keyword = '';
74892
+ this.keywordChange();
74893
+ }
74894
+ },
74895
+ // 处理批量搜索
74896
+ handleBatchSearch() {
74897
+ if (!this.batchSearchContent.trim()) {
74898
+ this.batchSearchVisible = false;
74899
+ return;
74900
+ }
74901
+
74902
+ // 分割输入内容(支持换行、逗号、分号等分隔符)
74903
+ const inputNames = this.batchSearchContent.split(/[\n,;,;\s]+/).filter(item => item.trim()).map(item => item.trim());
74904
+ if (inputNames.length === 0) {
74905
+ this.batchSearchVisible = false;
74906
+ return;
74907
+ }
74908
+
74909
+ // 在选项数据中搜索匹配的名称
74910
+ const matchedItems = this.searchNamesInOptions(inputNames);
74911
+ if (matchedItems.length > 0) {
74912
+ // 将匹配的项添加到选中值中
74913
+ const newSelectedValues = [...this.selectedValue];
74914
+ matchedItems.forEach(item => {
74915
+ // 检查是否已经存在,避免重复添加
74916
+ if (!newSelectedValues.includes(item.id)) {
74917
+ newSelectedValues.push(item.id);
74918
+ }
74919
+ });
74920
+ this.selectedValue = newSelectedValues;
74921
+ this.checkAll = false;
74922
+
74923
+ // 更新显示列表为匹配的项
74924
+ this.dataList = matchedItems;
74925
+ this.currentPage = 1;
74926
+ this.handlePageChange(1);
74927
+
74928
+ // 发出事件
74929
+ this.emitChange(this.selectedValue);
74930
+ }
74931
+
74932
+ // 关闭弹窗并清空内容
74933
+ this.batchSearchVisible = false;
74934
+ this.batchSearchContent = '';
74935
+ },
74936
+ // 在选项数据中搜索匹配的名称(全匹配,忽略空格,排除禁用项)
74937
+ searchNamesInOptions(names) {
74938
+ const matchedItems = [];
74939
+
74940
+ // 搜索所有选项(包括本地选项和异步加载的选项)
74941
+ const allOptions = this.loadOptions ? this.localOptions : this.options;
74942
+ for (const option of allOptions) {
74943
+ const optionName = String(option.name || '').replace(/\s+/g, ''); // 去掉所有空格
74944
+
74945
+ // 检查是否全匹配任何输入的名称(去掉空格后比较)
74946
+ const isMatched = names.some(name => {
74947
+ const cleanName = name.replace(/\s+/g, ''); // 去掉输入名称中的空格
74948
+ return optionName.toLowerCase() === cleanName.toLowerCase();
74949
+ });
74950
+
74951
+ // 检查是否未禁用 (这里置灰项也要让其可选中,如果后期要限制可以修改此逻辑)
74952
+ const isNotDisabled = true; //option.status !== 0
74953
+
74954
+ if (isMatched && isNotDisabled) {
74955
+ matchedItems.push(option);
74956
+ }
74957
+ }
74958
+ return matchedItems;
74786
74959
  }
74787
74960
  }
74788
74961
  });
@@ -74798,8 +74971,8 @@ const allOptionsNames = ['全部', '全选', '所有', '全部选项', 'All', 'a
74798
74971
  ;
74799
74972
  var ByCommonSelector_component = normalizeComponent(
74800
74973
  common_selector_ByCommonSelectorvue_type_script_lang_js,
74801
- ByCommonSelectorvue_type_template_id_338446ad_render,
74802
- ByCommonSelectorvue_type_template_id_338446ad_staticRenderFns,
74974
+ ByCommonSelectorvue_type_template_id_83b56258_render,
74975
+ ByCommonSelectorvue_type_template_id_83b56258_staticRenderFns,
74803
74976
  false,
74804
74977
  null,
74805
74978
  null,
@@ -75759,10 +75932,10 @@ var BatchQuerySelector_component = normalizeComponent(
75759
75932
  });
75760
75933
  ;// ./src/components/form/form.vue?vue&type=script&lang=js
75761
75934
  /* harmony default export */ var form_formvue_type_script_lang_js = (formvue_type_script_lang_js);
75762
- ;// ./node_modules/@vue/cli-service/node_modules/mini-css-extract-plugin/dist/loader.js??clonedRuleSet-64.use[0]!./node_modules/@vue/cli-service/node_modules/css-loader/dist/cjs.js??clonedRuleSet-64.use[1]!./node_modules/@vue/cli-service/node_modules/@vue/vue-loader-v15/lib/loaders/stylePostLoader.js!./node_modules/@vue/cli-service/node_modules/postcss-loader/dist/cjs.js??clonedRuleSet-64.use[2]!./node_modules/sass-loader/dist/cjs.js??clonedRuleSet-64.use[3]!./node_modules/cache-loader/dist/cjs.js??ruleSet[0].use[0]!./node_modules/@vue/cli-service/node_modules/@vue/vue-loader-v15/lib/index.js??vue-loader-options!./src/components/form/form.vue?vue&type=style&index=0&id=1b7e7655&prod&lang=scss&scoped=true
75935
+ ;// ./node_modules/@vue/cli-service/node_modules/mini-css-extract-plugin/dist/loader.js??clonedRuleSet-64.use[0]!./node_modules/@vue/cli-service/node_modules/css-loader/dist/cjs.js??clonedRuleSet-64.use[1]!./node_modules/@vue/cli-service/node_modules/@vue/vue-loader-v15/lib/loaders/stylePostLoader.js!./node_modules/@vue/cli-service/node_modules/postcss-loader/dist/cjs.js??clonedRuleSet-64.use[2]!./node_modules/sass-loader/dist/cjs.js??clonedRuleSet-64.use[3]!./node_modules/cache-loader/dist/cjs.js??ruleSet[0].use[0]!./node_modules/@vue/cli-service/node_modules/@vue/vue-loader-v15/lib/index.js??vue-loader-options!./src/components/form/form.vue?vue&type=style&index=0&id=b701bedc&prod&lang=scss&scoped=true
75763
75936
  // extracted by mini-css-extract-plugin
75764
75937
 
75765
- ;// ./src/components/form/form.vue?vue&type=style&index=0&id=1b7e7655&prod&lang=scss&scoped=true
75938
+ ;// ./src/components/form/form.vue?vue&type=style&index=0&id=b701bedc&prod&lang=scss&scoped=true
75766
75939
 
75767
75940
  ;// ./src/components/form/form.vue
75768
75941
 
@@ -75775,11 +75948,11 @@ var BatchQuerySelector_component = normalizeComponent(
75775
75948
 
75776
75949
  var form_component = normalizeComponent(
75777
75950
  form_formvue_type_script_lang_js,
75778
- formvue_type_template_id_1b7e7655_scoped_true_render,
75779
- formvue_type_template_id_1b7e7655_scoped_true_staticRenderFns,
75951
+ formvue_type_template_id_b701bedc_scoped_true_render,
75952
+ formvue_type_template_id_b701bedc_scoped_true_staticRenderFns,
75780
75953
  false,
75781
75954
  null,
75782
- "1b7e7655",
75955
+ "b701bedc",
75783
75956
  null
75784
75957
 
75785
75958
  )