sun-biz 0.0.3-beta.27 → 0.0.3-beta.28

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.
@@ -84,3 +84,10 @@ export declare function integrateData(initData: {
84
84
  export declare function getDefaultValue(data: {
85
85
  [key: string]: unknown;
86
86
  }, key: string): string;
87
+ /**
88
+ * 患者建档新增时表格不可重复的配置
89
+ */
90
+ export declare const TABLE_DUPLICATE_CHECK: {
91
+ perCertificateList: string;
92
+ perAddressList: string;
93
+ };
@@ -164,7 +164,7 @@ const __exports__ = /*#__PURE__*/ (0, exportHelper["default"])(Containervue_type
164
164
  (0, __WEBPACK_EXTERNAL_MODULE_vue__.createElementVNode)("div", {
165
165
  ref_key: "copyRef",
166
166
  ref: copyRef,
167
- class: "flex-1 overflow-hidden text-ellipsis whitespace-nowrap"
167
+ class: "flex-1 overflow-hidden text-ellipsis whitespace-nowrap text-black"
168
168
  }, [
169
169
  (0, __WEBPACK_EXTERNAL_MODULE_vue__.createTextVNode)((0, __WEBPACK_EXTERNAL_MODULE_vue__.toDisplayString)((0, __WEBPACK_EXTERNAL_MODULE_vue__.unref)(props).text || '--') + " ", 1),
170
170
  (0, __WEBPACK_EXTERNAL_MODULE_vue__.withDirectives)((0, __WEBPACK_EXTERNAL_MODULE_vue__.createVNode)((0, __WEBPACK_EXTERNAL_MODULE_vue__.unref)(__WEBPACK_EXTERNAL_MODULE_element_sun__.ElIcon), {
@@ -213,7 +213,7 @@ const __exports__ = /*#__PURE__*/ (0, exportHelper["default"])(Containervue_type
213
213
  const copy_text_with_tooltip_exports_ = /*#__PURE__*/ (0, exportHelper["default"])(copy_text_with_tooltipvue_type_script_setup_true_lang_tsx_name_CopyTextWithTooltip, [
214
214
  [
215
215
  '__scopeId',
216
- "data-v-98402ec8"
216
+ "data-v-3bf61ccb"
217
217
  ]
218
218
  ]);
219
219
  /* ESM default export */ const copy_text_with_tooltip = copy_text_with_tooltip_exports_;
@@ -642,7 +642,7 @@ function useTableConfigColumn(changeInputSort, length, disabledDraggable) {
642
642
  })
643
643
  },
644
644
  {
645
- label: '排序',
645
+ label: '列排序',
646
646
  prop: 'sort',
647
647
  minWidth: 170,
648
648
  render: (row, index)=>(0, __WEBPACK_EXTERNAL_MODULE_vue__.h)(__WEBPACK_EXTERNAL_MODULE_element_sun__.ElInputNumber, {
@@ -2566,7 +2566,8 @@ const SELECTION = 'selection';
2566
2566
  if (exportFileFlag.value && !result.find((cur)=>cur.type === SELECTION)) result = [
2567
2567
  {
2568
2568
  type: SELECTION,
2569
- prop: SELECTION
2569
+ prop: SELECTION,
2570
+ minWidth: 80
2570
2571
  },
2571
2572
  ...result
2572
2573
  ];
@@ -3361,6 +3362,12 @@ function unrefElement(elRef) {
3361
3362
  const plain = (0, __WEBPACK_EXTERNAL_MODULE_vue__.unref)(elRef);
3362
3363
  return plain?.$el ?? plain;
3363
3364
  }
3365
+ const directionKeyCodes = [
3366
+ "ArrowUp",
3367
+ "ArrowDown",
3368
+ "ArrowLeft",
3369
+ "ArrowRight"
3370
+ ];
3364
3371
  function findActiveIndexByDirection(options) {
3365
3372
  const { data, direction, column, activeItem, rowKey: rowKeyValue, scrollTo } = options;
3366
3373
  const rowKey = (0, __WEBPACK_EXTERNAL_MODULE_vue__.unref)(rowKeyValue);
@@ -3380,10 +3387,11 @@ function useSelectByDirectionEvent(options) {
3380
3387
  const { triggerRef, scrollTo, data, activeItem, rowKey, column, rowHeight = 36, setCurrentItem, enter } = options;
3381
3388
  const handleKeydown = (event)=>{
3382
3389
  const { code } = event;
3383
- if (enter && "Enter" === code) {
3390
+ if (enter && -1 !== code.indexOf("Enter")) {
3384
3391
  enter(event);
3385
3392
  return;
3386
3393
  }
3394
+ if (!directionKeyCodes.includes(code)) return;
3387
3395
  const directionData = (0, __WEBPACK_EXTERNAL_MODULE_vue__.unref)(data);
3388
3396
  const currentIndex = findActiveIndexByDirection({
3389
3397
  data: directionData || [],
@@ -3480,7 +3488,7 @@ function useColumnConfig(options) {
3480
3488
  enter: (e)=>{
3481
3489
  const { code } = e;
3482
3490
  /** 当没有检索结果数据或者正在检索中时 触发 enter 检索事件 */ if (__props.inputChange || !visible.value || __props.searchLoading || !__props.accessResult.data || !__props.accessResult.data.length) {
3483
- if (code === __WEBPACK_EXTERNAL_MODULE__sun_toolkit_enums__.KEY_CODE.ENTER) emits('enter', e);
3491
+ if (-1 !== code.indexOf(__WEBPACK_EXTERNAL_MODULE__sun_toolkit_enums__.KEY_CODE.ENTER)) emits('enter', e);
3484
3492
  return;
3485
3493
  }
3486
3494
  const primaryKey = __props.accessResult.primaryKey;
@@ -3692,6 +3700,7 @@ const AccessButton_exports_ = AccessButtonvue_type_script_setup_true_lang_ts;
3692
3700
  const emits = __emit;
3693
3701
  const wrapperRef = (0, __WEBPACK_EXTERNAL_MODULE_vue__.ref)();
3694
3702
  const realMaxNum = (0, __WEBPACK_EXTERNAL_MODULE_vue__.ref)(0);
3703
+ const moreButtonText = (0, __WEBPACK_EXTERNAL_MODULE_vue__.ref)('更多');
3695
3704
  const setRealMaxNum = (val)=>{
3696
3705
  realMaxNum.value = val;
3697
3706
  };
@@ -3704,9 +3713,12 @@ const AccessButton_exports_ = AccessButtonvue_type_script_setup_true_lang_ts;
3704
3713
  const nodeWidth = Number(node.offsetWidth) + 10;
3705
3714
  itemWidth += nodeWidth;
3706
3715
  if (itemWidth > wrapWidth) setRealMaxNum(index);
3707
- // console.log(itemWidth, wrapWidth);
3708
3716
  });
3709
3717
  };
3718
+ const handleButtonClick = (item, isMore)=>{
3719
+ moreButtonText.value = isMore ? item.bizSearchTypeNameDisplay : '更多';
3720
+ emits('way-change', item);
3721
+ };
3710
3722
  (0, __WEBPACK_EXTERNAL_MODULE_vue__.watchEffect)(()=>{
3711
3723
  if (__props.wayList?.length && wrapperRef?.value) (0, __WEBPACK_EXTERNAL_MODULE_vue__.nextTick)(()=>{
3712
3724
  if (wrapperRef?.value) calcMaxNum(wrapperRef.value);
@@ -3726,7 +3738,7 @@ const AccessButton_exports_ = AccessButtonvue_type_script_setup_true_lang_ts;
3726
3738
  "active-id": _ctx.activeAccessWay.searchTypeId,
3727
3739
  way: item,
3728
3740
  disabled: _ctx.searchLoading,
3729
- onClick: ()=>emits('way-change', item),
3741
+ onClick: ()=>handleButtonClick(item, false),
3730
3742
  style: {
3731
3743
  "margin-left": "10px"
3732
3744
  }
@@ -3746,9 +3758,9 @@ const AccessButton_exports_ = AccessButtonvue_type_script_setup_true_lang_ts;
3746
3758
  "margin-left": "10px"
3747
3759
  }
3748
3760
  }, {
3749
- default: (0, __WEBPACK_EXTERNAL_MODULE_vue__.withCtx)(()=>_cache[0] || (_cache[0] = [
3750
- (0, __WEBPACK_EXTERNAL_MODULE_vue__.createTextVNode)("更多 ⋮ ")
3751
- ])),
3761
+ default: (0, __WEBPACK_EXTERNAL_MODULE_vue__.withCtx)(()=>[
3762
+ (0, __WEBPACK_EXTERNAL_MODULE_vue__.createTextVNode)((0, __WEBPACK_EXTERNAL_MODULE_vue__.toDisplayString)(moreButtonText.value) + " ⋮ ", 1)
3763
+ ]),
3752
3764
  _: 1
3753
3765
  })
3754
3766
  ]),
@@ -3761,7 +3773,7 @@ const AccessButton_exports_ = AccessButtonvue_type_script_setup_true_lang_ts;
3761
3773
  "margin-left": "0"
3762
3774
  },
3763
3775
  disabled: _ctx.searchLoading,
3764
- onClick: ()=>emits('way-change', item),
3776
+ onClick: ()=>handleButtonClick(item, true),
3765
3777
  class: "my-2 block w-full"
3766
3778
  }, null, 8, [
3767
3779
  "active-id",
@@ -5502,10 +5514,11 @@ const Title_exports_ = Titlevue_type_script_setup_true_lang_ts_name_sunTitle;
5502
5514
  String,
5503
5515
  Function
5504
5516
  ]
5505
- }
5517
+ },
5518
+ filterValues: {}
5506
5519
  },
5507
5520
  emits: [
5508
- "change"
5521
+ 'change'
5509
5522
  ],
5510
5523
  setup (__props, { emit: __emit }) {
5511
5524
  const { menuId, currentOrg } = use_app_config([
@@ -5513,6 +5526,7 @@ const Title_exports_ = Titlevue_type_script_setup_true_lang_ts_name_sunTitle;
5513
5526
  use_app_config_MAIN_APP_CONFIG.CURRENT_ORG
5514
5527
  ]);
5515
5528
  const emit = __emit;
5529
+ const attrs = (0, __WEBPACK_EXTERNAL_MODULE_vue__.useAttrs)();
5516
5530
  const loading = (0, __WEBPACK_EXTERNAL_MODULE_vue__.ref)(true);
5517
5531
  const props = __props;
5518
5532
  const tableData = (0, __WEBPACK_EXTERNAL_MODULE_vue__.ref)([]);
@@ -5533,12 +5547,12 @@ const Title_exports_ = Titlevue_type_script_setup_true_lang_ts_name_sunTitle;
5533
5547
  if (props.codeSystemNo) params.codeSystemNo = props.codeSystemNo;
5534
5548
  if (props.dataDictionaryId) params.dataDictionaryId = props.dataDictionaryId;
5535
5549
  let [, result] = await queryDictDataListByExample({
5536
- dataSearchBizIdTypeCode: props.dataSearchBizIdTypeCode || "",
5550
+ dataSearchBizIdTypeCode: props.dataSearchBizIdTypeCode || '',
5537
5551
  keyWord: value,
5538
- menuId: menuId || "",
5552
+ menuId: menuId || '',
5539
5553
  pageNumber: 1,
5540
5554
  pageSize: 100,
5541
- hospitalId: currentOrg?.orgId || "",
5555
+ hospitalId: currentOrg?.orgId || '',
5542
5556
  ...params
5543
5557
  });
5544
5558
  loading.value = false;
@@ -5551,12 +5565,13 @@ const Title_exports_ = Titlevue_type_script_setup_true_lang_ts_name_sunTitle;
5551
5565
  }
5552
5566
  }
5553
5567
  /**
5554
- *
5555
- * @param value 下拉框选择
5556
- */ function change(value) {
5557
- let name = (tableData.value.find((item)=>item.value === value) || {})["label"];
5558
- emit("change", value, name);
5568
+ *
5569
+ * @param value 下拉框选择
5570
+ */ function change(value) {
5571
+ let name = (tableData.value.find((item)=>item.value === value) || {})['label'];
5572
+ emit('change', value, name);
5559
5573
  }
5574
+ const data = (0, __WEBPACK_EXTERNAL_MODULE_vue__.computed)(()=>(tableData.value || []).filter((item)=>!(props.filterValues || []).includes(item.value) || item.value === attrs.modelValue));
5560
5575
  return (_ctx, _cache)=>{
5561
5576
  const _component_el_option = (0, __WEBPACK_EXTERNAL_MODULE_vue__.resolveComponent)("el-option");
5562
5577
  const _component_el_select = (0, __WEBPACK_EXTERNAL_MODULE_vue__.resolveComponent)("el-select");
@@ -5575,7 +5590,7 @@ const Title_exports_ = Titlevue_type_script_setup_true_lang_ts_name_sunTitle;
5575
5590
  }
5576
5591
  }, {
5577
5592
  default: (0, __WEBPACK_EXTERNAL_MODULE_vue__.withCtx)(()=>[
5578
- ((0, __WEBPACK_EXTERNAL_MODULE_vue__.openBlock)(true), (0, __WEBPACK_EXTERNAL_MODULE_vue__.createElementBlock)(__WEBPACK_EXTERNAL_MODULE_vue__.Fragment, null, (0, __WEBPACK_EXTERNAL_MODULE_vue__.renderList)(tableData.value, (item)=>((0, __WEBPACK_EXTERNAL_MODULE_vue__.openBlock)(), (0, __WEBPACK_EXTERNAL_MODULE_vue__.createBlock)(_component_el_option, {
5593
+ ((0, __WEBPACK_EXTERNAL_MODULE_vue__.openBlock)(true), (0, __WEBPACK_EXTERNAL_MODULE_vue__.createElementBlock)(__WEBPACK_EXTERNAL_MODULE_vue__.Fragment, null, (0, __WEBPACK_EXTERNAL_MODULE_vue__.renderList)(data.value, (item)=>((0, __WEBPACK_EXTERNAL_MODULE_vue__.openBlock)(), (0, __WEBPACK_EXTERNAL_MODULE_vue__.createBlock)(_component_el_option, {
5579
5594
  key: item.value,
5580
5595
  label: item.label,
5581
5596
  value: item.value
@@ -5597,7 +5612,7 @@ const Title_exports_ = Titlevue_type_script_setup_true_lang_ts_name_sunTitle;
5597
5612
  const dict_select_exports_ = /*#__PURE__*/ (0, exportHelper["default"])(dict_selectvue_type_script_setup_true_lang_ts, [
5598
5613
  [
5599
5614
  '__scopeId',
5600
- "data-v-10687e3e"
5615
+ "data-v-54094f57"
5601
5616
  ]
5602
5617
  ]);
5603
5618
  /* ESM default export */ const dict_select = dict_select_exports_;
@@ -6339,6 +6354,12 @@ function useGetFromConfigData(result, layoutTypeCode) {
6339
6354
  }
6340
6355
  return data[key];
6341
6356
  }
6357
+ /**
6358
+ * 患者建档新增时表格不可重复的配置
6359
+ */ const TABLE_DUPLICATE_CHECK = {
6360
+ perCertificateList: 'certificateTypeCode',
6361
+ perAddressList: 'addressTypeCode'
6362
+ };
6342
6363
  /* ESM default export */ const Collapsevue_type_script_setup_true_lang_tsx = /*@__PURE__*/ (0, __WEBPACK_EXTERNAL_MODULE_vue__.defineComponent)({
6343
6364
  __name: 'Collapse',
6344
6365
  props: {
@@ -6431,6 +6452,11 @@ const Tablevue_type_script_setup_true_lang_tsx_hoisted_1 = {
6431
6452
  const settingList = (0, __WEBPACK_EXTERNAL_MODULE_vue__.ref)([]);
6432
6453
  const disabled = (0, __WEBPACK_EXTERNAL_MODULE_vue__.inject)('disabled');
6433
6454
  const afterValueChange = (0, __WEBPACK_EXTERNAL_MODULE_vue__.inject)('afterValueChange');
6455
+ let filterKey = TABLE_DUPLICATE_CHECK[props.designDetailInfo.bindingFieldNo];
6456
+ const filterValues = (0, __WEBPACK_EXTERNAL_MODULE_vue__.computed)(()=>{
6457
+ if (!filterKey) return [];
6458
+ return settingList.value.map((item)=>item[filterKey]);
6459
+ });
6434
6460
  function useGetTableColumnData() {
6435
6461
  let { result, hideData: hideObj } = expansionGroup(props.designDetailInfo.subFormControlList || [], []);
6436
6462
  hideData.value = hideObj;
@@ -6456,6 +6482,7 @@ const Tablevue_type_script_setup_true_lang_tsx_hoisted_1 = {
6456
6482
  component: getComponentType(item),
6457
6483
  label: item.labelNameDisplay || item.labelName,
6458
6484
  placeholder: getPlaceholder(item),
6485
+ filterValues: filterKey === item.bindingFieldNo ? filterValues.value : [],
6459
6486
  ...extraProps,
6460
6487
  modelValue: row[item.bindingFieldNo],
6461
6488
  'onUpdate:modelValue': (value)=>{
@@ -6481,6 +6508,7 @@ const Tablevue_type_script_setup_true_lang_tsx_hoisted_1 = {
6481
6508
  render: (row, index)=>(0, __WEBPACK_EXTERNAL_MODULE_vue__.createVNode)((0, __WEBPACK_EXTERNAL_MODULE_vue__.resolveComponent)("el-button"), {
6482
6509
  type: "primary",
6483
6510
  link: true,
6511
+ disabled: disabled,
6484
6512
  onClick: ()=>{
6485
6513
  onDeleteItem(index);
6486
6514
  }
@@ -6493,6 +6521,7 @@ const Tablevue_type_script_setup_true_lang_tsx_hoisted_1 = {
6493
6521
  })
6494
6522
  ]
6495
6523
  }, 8, [
6524
+ "disabled",
6496
6525
  "onClick"
6497
6526
  ])
6498
6527
  }
@@ -6510,7 +6539,7 @@ const Tablevue_type_script_setup_true_lang_tsx_hoisted_1 = {
6510
6539
  editable: true
6511
6540
  };
6512
6541
  tableColumn.map((item)=>{
6513
- if (item.defaultValue) newObj[item.prop] = item.defaultValue;
6542
+ if (item.defaultValue && item.prop !== filterKey) newObj[item.prop] = item.defaultValue;
6514
6543
  });
6515
6544
  settingList.value.push(newObj);
6516
6545
  props.changeCurData({
@@ -6577,7 +6606,7 @@ const Tablevue_type_script_setup_true_lang_tsx_hoisted_1 = {
6577
6606
  const form_design_render_composables_Table_exports_ = /*#__PURE__*/ (0, exportHelper["default"])(Tablevue_type_script_setup_true_lang_tsx, [
6578
6607
  [
6579
6608
  '__scopeId',
6580
- "data-v-116d99e2"
6609
+ "data-v-c30a01ba"
6581
6610
  ]
6582
6611
  ]);
6583
6612
  /* ESM default export */ const form_design_render_composables_Table = form_design_render_composables_Table_exports_;
@@ -6902,7 +6931,7 @@ const FIELD_REF = 'fieldRef_'; // 存储动态 ref 的对象
6902
6931
  editable: true
6903
6932
  };
6904
6933
  list.forEach((cur)=>{
6905
- let defaultValue = void 0 === getDefaultValue(group, cur.bindingFieldNo) ? cur.defaultValue : getDefaultValue(group, cur.bindingFieldNo);
6934
+ let defaultValue = void 0 === getDefaultValue(group, cur.bindingFieldNo) ? '' : getDefaultValue(group, cur.bindingFieldNo);
6906
6935
  obj[cur.bindingFieldNo] = defaultValue;
6907
6936
  if (cur.dataSearchBizIdTypeCode) queryList.push({
6908
6937
  dataSearchBizIdTypeCode: cur.dataSearchBizIdTypeCode,
@@ -7098,7 +7127,7 @@ const FIELD_REF = 'fieldRef_'; // 存储动态 ref 的对象
7098
7127
  const form_design_render_exports_ = /*#__PURE__*/ (0, exportHelper["default"])(form_design_rendervue_type_script_setup_true_lang_tsx_name_FormDesignRender, [
7099
7128
  [
7100
7129
  '__scopeId',
7101
- "data-v-35271fd4"
7130
+ "data-v-fe971658"
7102
7131
  ]
7103
7132
  ]);
7104
7133
  /* ESM default export */ const form_design_render = form_design_render_exports_;
@@ -31,7 +31,7 @@
31
31
 
32
32
 
33
33
 
34
- [data-v-35271fd4] .el-form-item {
34
+ [data-v-fe971658] .el-form-item {
35
35
  margin-bottom: 12px !important;
36
36
  }
37
37
 
@@ -374,6 +374,12 @@ function unrefElement(elRef) {
374
374
  const plain = (0, __WEBPACK_EXTERNAL_MODULE_vue__.unref)(elRef);
375
375
  return plain?.$el ?? plain;
376
376
  }
377
+ const directionKeyCodes = [
378
+ "ArrowUp",
379
+ "ArrowDown",
380
+ "ArrowLeft",
381
+ "ArrowRight"
382
+ ];
377
383
  function findActiveIndexByDirection(options) {
378
384
  const { data, direction, column, activeItem, rowKey: rowKeyValue, scrollTo } = options;
379
385
  const rowKey = (0, __WEBPACK_EXTERNAL_MODULE_vue__.unref)(rowKeyValue);
@@ -393,10 +399,11 @@ function useSelectByDirectionEvent(options) {
393
399
  const { triggerRef, scrollTo, data, activeItem, rowKey, column, rowHeight = 36, setCurrentItem, enter } = options;
394
400
  const handleKeydown = (event)=>{
395
401
  const { code } = event;
396
- if (enter && "Enter" === code) {
402
+ if (enter && -1 !== code.indexOf("Enter")) {
397
403
  enter(event);
398
404
  return;
399
405
  }
406
+ if (!directionKeyCodes.includes(code)) return;
400
407
  const directionData = (0, __WEBPACK_EXTERNAL_MODULE_vue__.unref)(data);
401
408
  const currentIndex = findActiveIndexByDirection({
402
409
  data: directionData || [],
package/dist/index.js CHANGED
@@ -164,7 +164,7 @@ const __exports__ = /*#__PURE__*/ (0, exportHelper["default"])(Containervue_type
164
164
  (0, __WEBPACK_EXTERNAL_MODULE_vue__.createElementVNode)("div", {
165
165
  ref_key: "copyRef",
166
166
  ref: copyRef,
167
- class: "flex-1 overflow-hidden text-ellipsis whitespace-nowrap"
167
+ class: "flex-1 overflow-hidden text-ellipsis whitespace-nowrap text-black"
168
168
  }, [
169
169
  (0, __WEBPACK_EXTERNAL_MODULE_vue__.createTextVNode)((0, __WEBPACK_EXTERNAL_MODULE_vue__.toDisplayString)((0, __WEBPACK_EXTERNAL_MODULE_vue__.unref)(props).text || '--') + " ", 1),
170
170
  (0, __WEBPACK_EXTERNAL_MODULE_vue__.withDirectives)((0, __WEBPACK_EXTERNAL_MODULE_vue__.createVNode)((0, __WEBPACK_EXTERNAL_MODULE_vue__.unref)(__WEBPACK_EXTERNAL_MODULE_element_sun__.ElIcon), {
@@ -213,7 +213,7 @@ const __exports__ = /*#__PURE__*/ (0, exportHelper["default"])(Containervue_type
213
213
  const copy_text_with_tooltip_exports_ = /*#__PURE__*/ (0, exportHelper["default"])(copy_text_with_tooltipvue_type_script_setup_true_lang_tsx_name_CopyTextWithTooltip, [
214
214
  [
215
215
  '__scopeId',
216
- "data-v-98402ec8"
216
+ "data-v-3bf61ccb"
217
217
  ]
218
218
  ]);
219
219
  /* ESM default export */ const copy_text_with_tooltip = copy_text_with_tooltip_exports_;
@@ -643,7 +643,7 @@ function useTableConfigColumn(changeInputSort, length, disabledDraggable) {
643
643
  })
644
644
  },
645
645
  {
646
- label: '排序',
646
+ label: '列排序',
647
647
  prop: 'sort',
648
648
  minWidth: 170,
649
649
  render: (row, index)=>(0, __WEBPACK_EXTERNAL_MODULE_vue__.h)(__WEBPACK_EXTERNAL_MODULE_element_sun__.ElInputNumber, {
@@ -2567,7 +2567,8 @@ const SELECTION = 'selection';
2567
2567
  if (exportFileFlag.value && !result.find((cur)=>cur.type === SELECTION)) result = [
2568
2568
  {
2569
2569
  type: SELECTION,
2570
- prop: SELECTION
2570
+ prop: SELECTION,
2571
+ minWidth: 80
2571
2572
  },
2572
2573
  ...result
2573
2574
  ];
@@ -3658,6 +3659,12 @@ function unrefElement(elRef) {
3658
3659
  const plain = (0, __WEBPACK_EXTERNAL_MODULE_vue__.unref)(elRef);
3659
3660
  return plain?.$el ?? plain;
3660
3661
  }
3662
+ const directionKeyCodes = [
3663
+ "ArrowUp",
3664
+ "ArrowDown",
3665
+ "ArrowLeft",
3666
+ "ArrowRight"
3667
+ ];
3661
3668
  function findActiveIndexByDirection(options) {
3662
3669
  const { data, direction, column, activeItem, rowKey: rowKeyValue, scrollTo } = options;
3663
3670
  const rowKey = (0, __WEBPACK_EXTERNAL_MODULE_vue__.unref)(rowKeyValue);
@@ -3677,10 +3684,11 @@ function useSelectByDirectionEvent(options) {
3677
3684
  const { triggerRef, scrollTo, data, activeItem, rowKey, column, rowHeight = 36, setCurrentItem, enter } = options;
3678
3685
  const handleKeydown = (event)=>{
3679
3686
  const { code } = event;
3680
- if (enter && "Enter" === code) {
3687
+ if (enter && -1 !== code.indexOf("Enter")) {
3681
3688
  enter(event);
3682
3689
  return;
3683
3690
  }
3691
+ if (!directionKeyCodes.includes(code)) return;
3684
3692
  const directionData = (0, __WEBPACK_EXTERNAL_MODULE_vue__.unref)(data);
3685
3693
  const currentIndex = findActiveIndexByDirection({
3686
3694
  data: directionData || [],
@@ -3890,7 +3898,7 @@ function useColumnConfig(options) {
3890
3898
  enter: (e)=>{
3891
3899
  const { code } = e;
3892
3900
  /** 当没有检索结果数据或者正在检索中时 触发 enter 检索事件 */ if (__props.inputChange || !visible.value || __props.searchLoading || !__props.accessResult.data || !__props.accessResult.data.length) {
3893
- if (code === __WEBPACK_EXTERNAL_MODULE__sun_toolkit_enums__.KEY_CODE.ENTER) emits('enter', e);
3901
+ if (-1 !== code.indexOf(__WEBPACK_EXTERNAL_MODULE__sun_toolkit_enums__.KEY_CODE.ENTER)) emits('enter', e);
3894
3902
  return;
3895
3903
  }
3896
3904
  const primaryKey = __props.accessResult.primaryKey;
@@ -4102,6 +4110,7 @@ const AccessButton_exports_ = AccessButtonvue_type_script_setup_true_lang_ts;
4102
4110
  const emits = __emit;
4103
4111
  const wrapperRef = (0, __WEBPACK_EXTERNAL_MODULE_vue__.ref)();
4104
4112
  const realMaxNum = (0, __WEBPACK_EXTERNAL_MODULE_vue__.ref)(0);
4113
+ const moreButtonText = (0, __WEBPACK_EXTERNAL_MODULE_vue__.ref)('更多');
4105
4114
  const setRealMaxNum = (val)=>{
4106
4115
  realMaxNum.value = val;
4107
4116
  };
@@ -4114,9 +4123,12 @@ const AccessButton_exports_ = AccessButtonvue_type_script_setup_true_lang_ts;
4114
4123
  const nodeWidth = Number(node.offsetWidth) + 10;
4115
4124
  itemWidth += nodeWidth;
4116
4125
  if (itemWidth > wrapWidth) setRealMaxNum(index);
4117
- // console.log(itemWidth, wrapWidth);
4118
4126
  });
4119
4127
  };
4128
+ const handleButtonClick = (item, isMore)=>{
4129
+ moreButtonText.value = isMore ? item.bizSearchTypeNameDisplay : '更多';
4130
+ emits('way-change', item);
4131
+ };
4120
4132
  (0, __WEBPACK_EXTERNAL_MODULE_vue__.watchEffect)(()=>{
4121
4133
  if (__props.wayList?.length && wrapperRef?.value) (0, __WEBPACK_EXTERNAL_MODULE_vue__.nextTick)(()=>{
4122
4134
  if (wrapperRef?.value) calcMaxNum(wrapperRef.value);
@@ -4136,7 +4148,7 @@ const AccessButton_exports_ = AccessButtonvue_type_script_setup_true_lang_ts;
4136
4148
  "active-id": _ctx.activeAccessWay.searchTypeId,
4137
4149
  way: item,
4138
4150
  disabled: _ctx.searchLoading,
4139
- onClick: ()=>emits('way-change', item),
4151
+ onClick: ()=>handleButtonClick(item, false),
4140
4152
  style: {
4141
4153
  "margin-left": "10px"
4142
4154
  }
@@ -4156,9 +4168,9 @@ const AccessButton_exports_ = AccessButtonvue_type_script_setup_true_lang_ts;
4156
4168
  "margin-left": "10px"
4157
4169
  }
4158
4170
  }, {
4159
- default: (0, __WEBPACK_EXTERNAL_MODULE_vue__.withCtx)(()=>_cache[0] || (_cache[0] = [
4160
- (0, __WEBPACK_EXTERNAL_MODULE_vue__.createTextVNode)("更多 ⋮ ")
4161
- ])),
4171
+ default: (0, __WEBPACK_EXTERNAL_MODULE_vue__.withCtx)(()=>[
4172
+ (0, __WEBPACK_EXTERNAL_MODULE_vue__.createTextVNode)((0, __WEBPACK_EXTERNAL_MODULE_vue__.toDisplayString)(moreButtonText.value) + " ⋮ ", 1)
4173
+ ]),
4162
4174
  _: 1
4163
4175
  })
4164
4176
  ]),
@@ -4171,7 +4183,7 @@ const AccessButton_exports_ = AccessButtonvue_type_script_setup_true_lang_ts;
4171
4183
  "margin-left": "0"
4172
4184
  },
4173
4185
  disabled: _ctx.searchLoading,
4174
- onClick: ()=>emits('way-change', item),
4186
+ onClick: ()=>handleButtonClick(item, true),
4175
4187
  class: "my-2 block w-full"
4176
4188
  }, null, 8, [
4177
4189
  "active-id",
@@ -6128,10 +6140,11 @@ const Title_exports_ = Titlevue_type_script_setup_true_lang_ts_name_sunTitle;
6128
6140
  String,
6129
6141
  Function
6130
6142
  ]
6131
- }
6143
+ },
6144
+ filterValues: {}
6132
6145
  },
6133
6146
  emits: [
6134
- "change"
6147
+ 'change'
6135
6148
  ],
6136
6149
  setup (__props, { emit: __emit }) {
6137
6150
  const { menuId, currentOrg } = use_app_config([
@@ -6139,6 +6152,7 @@ const Title_exports_ = Titlevue_type_script_setup_true_lang_ts_name_sunTitle;
6139
6152
  use_app_config_MAIN_APP_CONFIG.CURRENT_ORG
6140
6153
  ]);
6141
6154
  const emit = __emit;
6155
+ const attrs = (0, __WEBPACK_EXTERNAL_MODULE_vue__.useAttrs)();
6142
6156
  const loading = (0, __WEBPACK_EXTERNAL_MODULE_vue__.ref)(true);
6143
6157
  const props = __props;
6144
6158
  const tableData = (0, __WEBPACK_EXTERNAL_MODULE_vue__.ref)([]);
@@ -6159,12 +6173,12 @@ const Title_exports_ = Titlevue_type_script_setup_true_lang_ts_name_sunTitle;
6159
6173
  if (props.codeSystemNo) params.codeSystemNo = props.codeSystemNo;
6160
6174
  if (props.dataDictionaryId) params.dataDictionaryId = props.dataDictionaryId;
6161
6175
  let [, result] = await queryDictDataListByExample({
6162
- dataSearchBizIdTypeCode: props.dataSearchBizIdTypeCode || "",
6176
+ dataSearchBizIdTypeCode: props.dataSearchBizIdTypeCode || '',
6163
6177
  keyWord: value,
6164
- menuId: menuId || "",
6178
+ menuId: menuId || '',
6165
6179
  pageNumber: 1,
6166
6180
  pageSize: 100,
6167
- hospitalId: currentOrg?.orgId || "",
6181
+ hospitalId: currentOrg?.orgId || '',
6168
6182
  ...params
6169
6183
  });
6170
6184
  loading.value = false;
@@ -6177,12 +6191,13 @@ const Title_exports_ = Titlevue_type_script_setup_true_lang_ts_name_sunTitle;
6177
6191
  }
6178
6192
  }
6179
6193
  /**
6180
- *
6181
- * @param value 下拉框选择
6182
- */ function change(value) {
6183
- let name = (tableData.value.find((item)=>item.value === value) || {})["label"];
6184
- emit("change", value, name);
6194
+ *
6195
+ * @param value 下拉框选择
6196
+ */ function change(value) {
6197
+ let name = (tableData.value.find((item)=>item.value === value) || {})['label'];
6198
+ emit('change', value, name);
6185
6199
  }
6200
+ const data = (0, __WEBPACK_EXTERNAL_MODULE_vue__.computed)(()=>(tableData.value || []).filter((item)=>!(props.filterValues || []).includes(item.value) || item.value === attrs.modelValue));
6186
6201
  return (_ctx, _cache)=>{
6187
6202
  const _component_el_option = (0, __WEBPACK_EXTERNAL_MODULE_vue__.resolveComponent)("el-option");
6188
6203
  const _component_el_select = (0, __WEBPACK_EXTERNAL_MODULE_vue__.resolveComponent)("el-select");
@@ -6201,7 +6216,7 @@ const Title_exports_ = Titlevue_type_script_setup_true_lang_ts_name_sunTitle;
6201
6216
  }
6202
6217
  }, {
6203
6218
  default: (0, __WEBPACK_EXTERNAL_MODULE_vue__.withCtx)(()=>[
6204
- ((0, __WEBPACK_EXTERNAL_MODULE_vue__.openBlock)(true), (0, __WEBPACK_EXTERNAL_MODULE_vue__.createElementBlock)(__WEBPACK_EXTERNAL_MODULE_vue__.Fragment, null, (0, __WEBPACK_EXTERNAL_MODULE_vue__.renderList)(tableData.value, (item)=>((0, __WEBPACK_EXTERNAL_MODULE_vue__.openBlock)(), (0, __WEBPACK_EXTERNAL_MODULE_vue__.createBlock)(_component_el_option, {
6219
+ ((0, __WEBPACK_EXTERNAL_MODULE_vue__.openBlock)(true), (0, __WEBPACK_EXTERNAL_MODULE_vue__.createElementBlock)(__WEBPACK_EXTERNAL_MODULE_vue__.Fragment, null, (0, __WEBPACK_EXTERNAL_MODULE_vue__.renderList)(data.value, (item)=>((0, __WEBPACK_EXTERNAL_MODULE_vue__.openBlock)(), (0, __WEBPACK_EXTERNAL_MODULE_vue__.createBlock)(_component_el_option, {
6205
6220
  key: item.value,
6206
6221
  label: item.label,
6207
6222
  value: item.value
@@ -6223,7 +6238,7 @@ const Title_exports_ = Titlevue_type_script_setup_true_lang_ts_name_sunTitle;
6223
6238
  const dict_select_exports_ = /*#__PURE__*/ (0, exportHelper["default"])(dict_selectvue_type_script_setup_true_lang_ts, [
6224
6239
  [
6225
6240
  '__scopeId',
6226
- "data-v-10687e3e"
6241
+ "data-v-54094f57"
6227
6242
  ]
6228
6243
  ]);
6229
6244
  /* ESM default export */ const dict_select = dict_select_exports_;
@@ -6965,6 +6980,12 @@ function useGetFromConfigData(result, layoutTypeCode) {
6965
6980
  }
6966
6981
  return data[key];
6967
6982
  }
6983
+ /**
6984
+ * 患者建档新增时表格不可重复的配置
6985
+ */ const TABLE_DUPLICATE_CHECK = {
6986
+ perCertificateList: 'certificateTypeCode',
6987
+ perAddressList: 'addressTypeCode'
6988
+ };
6968
6989
  /* ESM default export */ const Collapsevue_type_script_setup_true_lang_tsx = /*@__PURE__*/ (0, __WEBPACK_EXTERNAL_MODULE_vue__.defineComponent)({
6969
6990
  __name: 'Collapse',
6970
6991
  props: {
@@ -7311,6 +7332,11 @@ const Tablevue_type_script_setup_true_lang_tsx_hoisted_1 = {
7311
7332
  const settingList = (0, __WEBPACK_EXTERNAL_MODULE_vue__.ref)([]);
7312
7333
  const disabled = (0, __WEBPACK_EXTERNAL_MODULE_vue__.inject)('disabled');
7313
7334
  const afterValueChange = (0, __WEBPACK_EXTERNAL_MODULE_vue__.inject)('afterValueChange');
7335
+ let filterKey = TABLE_DUPLICATE_CHECK[props.designDetailInfo.bindingFieldNo];
7336
+ const filterValues = (0, __WEBPACK_EXTERNAL_MODULE_vue__.computed)(()=>{
7337
+ if (!filterKey) return [];
7338
+ return settingList.value.map((item)=>item[filterKey]);
7339
+ });
7314
7340
  function useGetTableColumnData() {
7315
7341
  let { result, hideData: hideObj } = expansionGroup(props.designDetailInfo.subFormControlList || [], []);
7316
7342
  hideData.value = hideObj;
@@ -7336,6 +7362,7 @@ const Tablevue_type_script_setup_true_lang_tsx_hoisted_1 = {
7336
7362
  component: getComponentType(item),
7337
7363
  label: item.labelNameDisplay || item.labelName,
7338
7364
  placeholder: getPlaceholder(item),
7365
+ filterValues: filterKey === item.bindingFieldNo ? filterValues.value : [],
7339
7366
  ...extraProps,
7340
7367
  modelValue: row[item.bindingFieldNo],
7341
7368
  'onUpdate:modelValue': (value)=>{
@@ -7361,6 +7388,7 @@ const Tablevue_type_script_setup_true_lang_tsx_hoisted_1 = {
7361
7388
  render: (row, index)=>(0, __WEBPACK_EXTERNAL_MODULE_vue__.createVNode)((0, __WEBPACK_EXTERNAL_MODULE_vue__.resolveComponent)("el-button"), {
7362
7389
  type: "primary",
7363
7390
  link: true,
7391
+ disabled: disabled,
7364
7392
  onClick: ()=>{
7365
7393
  onDeleteItem(index);
7366
7394
  }
@@ -7373,6 +7401,7 @@ const Tablevue_type_script_setup_true_lang_tsx_hoisted_1 = {
7373
7401
  })
7374
7402
  ]
7375
7403
  }, 8, [
7404
+ "disabled",
7376
7405
  "onClick"
7377
7406
  ])
7378
7407
  }
@@ -7390,7 +7419,7 @@ const Tablevue_type_script_setup_true_lang_tsx_hoisted_1 = {
7390
7419
  editable: true
7391
7420
  };
7392
7421
  tableColumn.map((item)=>{
7393
- if (item.defaultValue) newObj[item.prop] = item.defaultValue;
7422
+ if (item.defaultValue && item.prop !== filterKey) newObj[item.prop] = item.defaultValue;
7394
7423
  });
7395
7424
  settingList.value.push(newObj);
7396
7425
  props.changeCurData({
@@ -7457,7 +7486,7 @@ const Tablevue_type_script_setup_true_lang_tsx_hoisted_1 = {
7457
7486
  const form_design_render_composables_Table_exports_ = /*#__PURE__*/ (0, exportHelper["default"])(Tablevue_type_script_setup_true_lang_tsx, [
7458
7487
  [
7459
7488
  '__scopeId',
7460
- "data-v-116d99e2"
7489
+ "data-v-c30a01ba"
7461
7490
  ]
7462
7491
  ]);
7463
7492
  /* ESM default export */ const form_design_render_composables_Table = form_design_render_composables_Table_exports_;
@@ -7782,7 +7811,7 @@ const FIELD_REF = 'fieldRef_'; // 存储动态 ref 的对象
7782
7811
  editable: true
7783
7812
  };
7784
7813
  list.forEach((cur)=>{
7785
- let defaultValue = void 0 === getDefaultValue(group, cur.bindingFieldNo) ? cur.defaultValue : getDefaultValue(group, cur.bindingFieldNo);
7814
+ let defaultValue = void 0 === getDefaultValue(group, cur.bindingFieldNo) ? '' : getDefaultValue(group, cur.bindingFieldNo);
7786
7815
  obj[cur.bindingFieldNo] = defaultValue;
7787
7816
  if (cur.dataSearchBizIdTypeCode) queryList.push({
7788
7817
  dataSearchBizIdTypeCode: cur.dataSearchBizIdTypeCode,
@@ -7978,7 +8007,7 @@ const FIELD_REF = 'fieldRef_'; // 存储动态 ref 的对象
7978
8007
  const form_design_render_exports_ = /*#__PURE__*/ (0, exportHelper["default"])(form_design_rendervue_type_script_setup_true_lang_tsx_name_FormDesignRender, [
7979
8008
  [
7980
8009
  '__scopeId',
7981
- "data-v-35271fd4"
8010
+ "data-v-fe971658"
7982
8011
  ]
7983
8012
  ]);
7984
8013
  /* ESM default export */ const form_design_render = form_design_render_exports_;
@@ -31,7 +31,7 @@
31
31
 
32
32
 
33
33
 
34
- [data-v-35271fd4] .el-form-item {
34
+ [data-v-fe971658] .el-form-item {
35
35
  margin-bottom: 12px !important;
36
36
  }
37
37
 
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "sun-biz",
3
- "version": "0.0.3-beta.27",
3
+ "version": "0.0.3-beta.28",
4
4
  "type": "module",
5
5
  "workspaces": [
6
6
  "src/*",