sun-biz 0.0.4-beta.34 → 0.0.4-beta.36

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.
@@ -361,7 +361,7 @@ function _isSlot(s) {
361
361
  return 'function' == typeof s || '[object Object]' === Object.prototype.toString.call(s) && !(0, __WEBPACK_EXTERNAL_MODULE_vue__.isVNode)(s);
362
362
  }
363
363
  const TableColumn = (0, __WEBPACK_EXTERNAL_MODULE_vue__.defineComponent)({
364
- name: "TableColumn",
364
+ name: 'TableColumn',
365
365
  props: {
366
366
  column: {
367
367
  required: true,
@@ -369,13 +369,13 @@ const TableColumn = (0, __WEBPACK_EXTERNAL_MODULE_vue__.defineComponent)({
369
369
  }
370
370
  },
371
371
  setup (props, { slots }) {
372
- const enumMap = (0, __WEBPACK_EXTERNAL_MODULE_vue__.inject)("enumMap", (0, __WEBPACK_EXTERNAL_MODULE_vue__.ref)(new Map())); // 注入数据(带默认值)
373
- const hiddenDefaultText = (0, __WEBPACK_EXTERNAL_MODULE_vue__.inject)("hiddenDefaultText"); // 渲染表格数据
372
+ const enumMap = (0, __WEBPACK_EXTERNAL_MODULE_vue__.inject)('enumMap', (0, __WEBPACK_EXTERNAL_MODULE_vue__.ref)(new Map())); // 注入数据(带默认值)
373
+ const hiddenDefaultText = (0, __WEBPACK_EXTERNAL_MODULE_vue__.inject)('hiddenDefaultText'); // 渲染表格数据
374
374
  const renderCellData = (item, scope)=>{
375
375
  const rawValue = handleRowAccordingToProp(scope.row, item.prop);
376
376
  let result = enumMap.value.get(item.prop) && item.isFilterEnum ? filterEnum(rawValue, enumMap.value.get(item.prop), item.fieldNames) : formatValue(rawValue);
377
- if (item?.autoFormatterNumber) result = formatDecimalNumber(result) ?? "--";
378
- if (hiddenDefaultText && "--" === result) result = " ";
377
+ if (item?.autoFormatterNumber) result = formatDecimalNumber(result) ?? '--';
378
+ if (hiddenDefaultText && '--' === result) result = ' ';
379
379
  return item?.supportCopyAndTips ? (0, __WEBPACK_EXTERNAL_MODULE_vue__.createVNode)(copy_text_with_tooltip, {
380
380
  supportTextCopy: item?.supportTextCopy,
381
381
  align: "text-center",
@@ -387,12 +387,12 @@ const TableColumn = (0, __WEBPACK_EXTERNAL_MODULE_vue__.defineComponent)({
387
387
  result
388
388
  ]);
389
389
  }; // 获取 tag 类型
390
- const getTagType = (item, scope)=>filterEnum(handleRowAccordingToProp(scope.row, item.prop), enumMap.value.get(item.prop), item.fieldNames, "tag") || "primary";
390
+ const getTagType = (item, scope)=>filterEnum(handleRowAccordingToProp(scope.row, item.prop), enumMap.value.get(item.prop), item.fieldNames, 'tag') || 'primary';
391
391
  const renderColumn = (column)=>{
392
392
  const { label, ...restColumn } = column;
393
393
  const columnProps = {
394
394
  ...restColumn,
395
- align: column.align ?? "center",
395
+ align: column.align ?? 'center',
396
396
  fixed: column.fixed ?? false,
397
397
  showOverflowTooltip: column.showOverflowTooltip ?? column.prop !== OPERATION
398
398
  };
@@ -412,34 +412,34 @@ const TableColumn = (0, __WEBPACK_EXTERNAL_MODULE_vue__.defineComponent)({
412
412
  }, [
413
413
  (0, __WEBPACK_EXTERNAL_MODULE_vue__.createTextVNode)("*")
414
414
  ]),
415
- "function" == typeof column.label ? column.label() : column.label
415
+ 'function' == typeof column.label ? column.label() : column.label
416
416
  ], 2)
417
417
  ];
418
418
  };
419
419
  const renderDefault = (scope)=>{
420
420
  if (Array.isArray(column._children) && column._children.length > 0) return column._children.map((child)=>renderColumn(child));
421
421
  // Handle custom render function
422
- if ("function" == typeof column.render) {
422
+ if ('function' == typeof column.render) {
423
423
  if (column.editable && scope.row.editable) {
424
424
  let _slot; // 计算 propPath
425
- const getPropPath = ()=>{
425
+ const getPropPath = (index)=>{
426
426
  const indexPath = scope.row.indexPath;
427
- if (!indexPath) return "";
428
- const parts = indexPath.split("-");
427
+ if (!indexPath) return `tableData.${index}.${column.prop}`;
428
+ const parts = indexPath.split('-');
429
429
  if (parts.length > 1) return `tableData.${parts[0]}.${scope._self.props.treeProps.children}.${scope.$index}.${column.prop}`;
430
430
  // normal table
431
431
  return `tableData.${parts[1]}.${column.prop}`;
432
432
  }; // 获取校验规则
433
433
  const getRules = ()=>{
434
434
  if (!column.rules) return [];
435
- return "function" == typeof column.rules ? column.rules(scope.row) : column.rules;
435
+ return 'function' == typeof column.rules ? column.rules(scope.row) : column.rules;
436
436
  };
437
437
  return [
438
438
  (0, __WEBPACK_EXTERNAL_MODULE_vue__.createVNode)((0, __WEBPACK_EXTERNAL_MODULE_vue__.resolveComponent)("el-form-item"), {
439
439
  style: {
440
- marginBottom: "0"
440
+ marginBottom: '0'
441
441
  },
442
- prop: getPropPath(),
442
+ prop: getPropPath(scope.$index),
443
443
  rules: getRules()
444
444
  }, _isSlot(_slot = column.render(scope.row, scope.$index)) ? _slot : {
445
445
  default: ()=>[
@@ -596,11 +596,11 @@ function useTableConfigColumn(changeInputSort, length, disabledDraggable) {
596
596
  const changeSort = debounce(changeInputSort, 1200);
597
597
  return [
598
598
  {
599
- label: "列名称",
600
- prop: "label",
599
+ label: '列名称',
600
+ prop: 'label',
601
601
  minWidth: 170,
602
602
  render: (row)=>(0, __WEBPACK_EXTERNAL_MODULE_vue__.createVNode)("div", {
603
- class: "cursor-pointer",
603
+ class: 'cursor-pointer',
604
604
  onClick: (event)=>{
605
605
  event.stopPropagation();
606
606
  switch(row.ascendFlag){
@@ -620,10 +620,10 @@ function useTableConfigColumn(changeInputSort, length, disabledDraggable) {
620
620
  class: "caret-wrapper"
621
621
  }, [
622
622
  (0, __WEBPACK_EXTERNAL_MODULE_vue__.createVNode)("i", {
623
- class: `sort-caret ascending ${row.ascendFlag === __WEBPACK_EXTERNAL_MODULE__sun_toolkit_enums__.FLAG.YES ? "!border-b-blue-500" : ""}`
623
+ class: `sort-caret ascending ${row.ascendFlag === __WEBPACK_EXTERNAL_MODULE__sun_toolkit_enums__.FLAG.YES ? '!border-b-blue-500' : ''}`
624
624
  }, null),
625
625
  (0, __WEBPACK_EXTERNAL_MODULE_vue__.createVNode)("i", {
626
- class: `sort-caret descending ${row.ascendFlag === __WEBPACK_EXTERNAL_MODULE__sun_toolkit_enums__.FLAG.NO ? "!border-t-blue-500" : ""}`
626
+ class: `sort-caret descending ${row.ascendFlag === __WEBPACK_EXTERNAL_MODULE__sun_toolkit_enums__.FLAG.NO ? '!border-t-blue-500' : ''}`
627
627
  }, null)
628
628
  ])
629
629
  ], 8, [
@@ -631,54 +631,56 @@ function useTableConfigColumn(changeInputSort, length, disabledDraggable) {
631
631
  ])
632
632
  },
633
633
  {
634
- label: "属性",
635
- prop: "prop",
634
+ label: '属性',
635
+ prop: 'prop',
636
636
  supportCopyAndTips: true,
637
637
  minWidth: 170
638
638
  },
639
639
  {
640
- label: "显示标志",
641
- prop: "displayFlag",
640
+ label: '显示标志',
641
+ prop: 'displayFlag',
642
642
  minWidth: 170,
643
643
  editable: true,
644
644
  render: (row)=>(0, __WEBPACK_EXTERNAL_MODULE_vue__.h)(__WEBPACK_EXTERNAL_MODULE_element_sun__.ElCheckbox, {
645
- class: "w-full justify-center",
646
- "true-value": 1,
647
- "false-value": 0,
648
- size: "small",
645
+ class: 'w-full justify-center',
646
+ 'true-value': 1,
647
+ 'false-value': 0,
648
+ size: 'small',
649
649
  modelValue: row.displayFlag,
650
- "onUpdate:modelValue": (value)=>row.displayFlag = value
650
+ 'onUpdate:modelValue': (value)=>row.displayFlag = value
651
651
  })
652
652
  },
653
653
  {
654
- label: "列宽 (最小值)",
655
- prop: "minWidth",
654
+ label: '列宽 (最小值)',
655
+ prop: 'minWidth',
656
656
  minWidth: 170,
657
+ isDraggable: false,
657
658
  render: (row)=>(0, __WEBPACK_EXTERNAL_MODULE_vue__.h)(__WEBPACK_EXTERNAL_MODULE_element_sun__.ElInputNumber, {
658
659
  maxLength: 16,
659
660
  min: 0,
660
661
  precision: 0,
661
662
  modelValue: row.minWidth,
662
- "onUpdate:modelValue": (value)=>row.minWidth = value,
663
- size: "small",
664
- placeholder: "请输入列宽 (最小值)"
663
+ 'onUpdate:modelValue': (value)=>row.minWidth = value,
664
+ size: 'small',
665
+ placeholder: '请输入列宽 (最小值)'
665
666
  })
666
667
  },
667
668
  {
668
- label: "列排序",
669
- prop: "sort",
669
+ label: '列排序',
670
+ prop: 'sort',
671
+ isDraggable: false,
670
672
  minWidth: 170,
671
673
  render: (row, index)=>(0, __WEBPACK_EXTERNAL_MODULE_vue__.h)(__WEBPACK_EXTERNAL_MODULE_element_sun__.ElInputNumber, {
672
674
  max: length,
673
675
  min: 0,
674
676
  modelValue: row.sort,
675
677
  disabled: disabledDraggable.value,
676
- "onUpdate:modelValue": (value)=>row.sort = value,
678
+ 'onUpdate:modelValue': (value)=>row.sort = value,
677
679
  onInput: (sort)=>{
678
680
  changeSort(index, sort);
679
681
  },
680
- size: "small",
681
- placeholder: "请输入排序"
682
+ size: 'small',
683
+ placeholder: '请输入排序'
682
684
  })
683
685
  }
684
686
  ];
@@ -3869,7 +3871,7 @@ const icon_combine_exports_ = /*#__PURE__*/ (0, exportHelper["default"])(script,
3869
3871
  minWidth: 110,
3870
3872
  prop: item.dataIndex,
3871
3873
  ...__props.isPatientAccess && 'patientName' === item.dataIndex && {
3872
- render: (row)=>row?.patMainRecordId ? (0, __WEBPACK_EXTERNAL_MODULE_vue__.createVNode)("div", {
3874
+ render: (row)=>row?.patMainRecordId && row?.patientId !== row?.patMainRecordId ? (0, __WEBPACK_EXTERNAL_MODULE_vue__.createVNode)("div", {
3873
3875
  class: 'flex items-center justify-center gap-1'
3874
3876
  }, [
3875
3877
  (0, __WEBPACK_EXTERNAL_MODULE_vue__.createVNode)("span", {
package/dist/index.js CHANGED
@@ -361,7 +361,7 @@ function _isSlot(s) {
361
361
  return 'function' == typeof s || '[object Object]' === Object.prototype.toString.call(s) && !(0, __WEBPACK_EXTERNAL_MODULE_vue__.isVNode)(s);
362
362
  }
363
363
  const TableColumn = (0, __WEBPACK_EXTERNAL_MODULE_vue__.defineComponent)({
364
- name: "TableColumn",
364
+ name: 'TableColumn',
365
365
  props: {
366
366
  column: {
367
367
  required: true,
@@ -369,13 +369,13 @@ const TableColumn = (0, __WEBPACK_EXTERNAL_MODULE_vue__.defineComponent)({
369
369
  }
370
370
  },
371
371
  setup (props, { slots }) {
372
- const enumMap = (0, __WEBPACK_EXTERNAL_MODULE_vue__.inject)("enumMap", (0, __WEBPACK_EXTERNAL_MODULE_vue__.ref)(new Map())); // 注入数据(带默认值)
373
- const hiddenDefaultText = (0, __WEBPACK_EXTERNAL_MODULE_vue__.inject)("hiddenDefaultText"); // 渲染表格数据
372
+ const enumMap = (0, __WEBPACK_EXTERNAL_MODULE_vue__.inject)('enumMap', (0, __WEBPACK_EXTERNAL_MODULE_vue__.ref)(new Map())); // 注入数据(带默认值)
373
+ const hiddenDefaultText = (0, __WEBPACK_EXTERNAL_MODULE_vue__.inject)('hiddenDefaultText'); // 渲染表格数据
374
374
  const renderCellData = (item, scope)=>{
375
375
  const rawValue = handleRowAccordingToProp(scope.row, item.prop);
376
376
  let result = enumMap.value.get(item.prop) && item.isFilterEnum ? filterEnum(rawValue, enumMap.value.get(item.prop), item.fieldNames) : formatValue(rawValue);
377
- if (item?.autoFormatterNumber) result = formatDecimalNumber(result) ?? "--";
378
- if (hiddenDefaultText && "--" === result) result = " ";
377
+ if (item?.autoFormatterNumber) result = formatDecimalNumber(result) ?? '--';
378
+ if (hiddenDefaultText && '--' === result) result = ' ';
379
379
  return item?.supportCopyAndTips ? (0, __WEBPACK_EXTERNAL_MODULE_vue__.createVNode)(copy_text_with_tooltip, {
380
380
  supportTextCopy: item?.supportTextCopy,
381
381
  align: "text-center",
@@ -387,12 +387,12 @@ const TableColumn = (0, __WEBPACK_EXTERNAL_MODULE_vue__.defineComponent)({
387
387
  result
388
388
  ]);
389
389
  }; // 获取 tag 类型
390
- const getTagType = (item, scope)=>filterEnum(handleRowAccordingToProp(scope.row, item.prop), enumMap.value.get(item.prop), item.fieldNames, "tag") || "primary";
390
+ const getTagType = (item, scope)=>filterEnum(handleRowAccordingToProp(scope.row, item.prop), enumMap.value.get(item.prop), item.fieldNames, 'tag') || 'primary';
391
391
  const renderColumn = (column)=>{
392
392
  const { label, ...restColumn } = column;
393
393
  const columnProps = {
394
394
  ...restColumn,
395
- align: column.align ?? "center",
395
+ align: column.align ?? 'center',
396
396
  fixed: column.fixed ?? false,
397
397
  showOverflowTooltip: column.showOverflowTooltip ?? column.prop !== OPERATION
398
398
  };
@@ -412,34 +412,34 @@ const TableColumn = (0, __WEBPACK_EXTERNAL_MODULE_vue__.defineComponent)({
412
412
  }, [
413
413
  (0, __WEBPACK_EXTERNAL_MODULE_vue__.createTextVNode)("*")
414
414
  ]),
415
- "function" == typeof column.label ? column.label() : column.label
415
+ 'function' == typeof column.label ? column.label() : column.label
416
416
  ], 2)
417
417
  ];
418
418
  };
419
419
  const renderDefault = (scope)=>{
420
420
  if (Array.isArray(column._children) && column._children.length > 0) return column._children.map((child)=>renderColumn(child));
421
421
  // Handle custom render function
422
- if ("function" == typeof column.render) {
422
+ if ('function' == typeof column.render) {
423
423
  if (column.editable && scope.row.editable) {
424
424
  let _slot; // 计算 propPath
425
- const getPropPath = ()=>{
425
+ const getPropPath = (index)=>{
426
426
  const indexPath = scope.row.indexPath;
427
- if (!indexPath) return "";
428
- const parts = indexPath.split("-");
427
+ if (!indexPath) return `tableData.${index}.${column.prop}`;
428
+ const parts = indexPath.split('-');
429
429
  if (parts.length > 1) return `tableData.${parts[0]}.${scope._self.props.treeProps.children}.${scope.$index}.${column.prop}`;
430
430
  // normal table
431
431
  return `tableData.${parts[1]}.${column.prop}`;
432
432
  }; // 获取校验规则
433
433
  const getRules = ()=>{
434
434
  if (!column.rules) return [];
435
- return "function" == typeof column.rules ? column.rules(scope.row) : column.rules;
435
+ return 'function' == typeof column.rules ? column.rules(scope.row) : column.rules;
436
436
  };
437
437
  return [
438
438
  (0, __WEBPACK_EXTERNAL_MODULE_vue__.createVNode)((0, __WEBPACK_EXTERNAL_MODULE_vue__.resolveComponent)("el-form-item"), {
439
439
  style: {
440
- marginBottom: "0"
440
+ marginBottom: '0'
441
441
  },
442
- prop: getPropPath(),
442
+ prop: getPropPath(scope.$index),
443
443
  rules: getRules()
444
444
  }, _isSlot(_slot = column.render(scope.row, scope.$index)) ? _slot : {
445
445
  default: ()=>[
@@ -632,11 +632,11 @@ function useTableConfigColumn(changeInputSort, length, disabledDraggable) {
632
632
  const changeSort = debounce(changeInputSort, 1200);
633
633
  return [
634
634
  {
635
- label: "列名称",
636
- prop: "label",
635
+ label: '列名称',
636
+ prop: 'label',
637
637
  minWidth: 170,
638
638
  render: (row)=>(0, __WEBPACK_EXTERNAL_MODULE_vue__.createVNode)("div", {
639
- class: "cursor-pointer",
639
+ class: 'cursor-pointer',
640
640
  onClick: (event)=>{
641
641
  event.stopPropagation();
642
642
  switch(row.ascendFlag){
@@ -656,10 +656,10 @@ function useTableConfigColumn(changeInputSort, length, disabledDraggable) {
656
656
  class: "caret-wrapper"
657
657
  }, [
658
658
  (0, __WEBPACK_EXTERNAL_MODULE_vue__.createVNode)("i", {
659
- class: `sort-caret ascending ${row.ascendFlag === __WEBPACK_EXTERNAL_MODULE__sun_toolkit_enums__.FLAG.YES ? "!border-b-blue-500" : ""}`
659
+ class: `sort-caret ascending ${row.ascendFlag === __WEBPACK_EXTERNAL_MODULE__sun_toolkit_enums__.FLAG.YES ? '!border-b-blue-500' : ''}`
660
660
  }, null),
661
661
  (0, __WEBPACK_EXTERNAL_MODULE_vue__.createVNode)("i", {
662
- class: `sort-caret descending ${row.ascendFlag === __WEBPACK_EXTERNAL_MODULE__sun_toolkit_enums__.FLAG.NO ? "!border-t-blue-500" : ""}`
662
+ class: `sort-caret descending ${row.ascendFlag === __WEBPACK_EXTERNAL_MODULE__sun_toolkit_enums__.FLAG.NO ? '!border-t-blue-500' : ''}`
663
663
  }, null)
664
664
  ])
665
665
  ], 8, [
@@ -667,54 +667,56 @@ function useTableConfigColumn(changeInputSort, length, disabledDraggable) {
667
667
  ])
668
668
  },
669
669
  {
670
- label: "属性",
671
- prop: "prop",
670
+ label: '属性',
671
+ prop: 'prop',
672
672
  supportCopyAndTips: true,
673
673
  minWidth: 170
674
674
  },
675
675
  {
676
- label: "显示标志",
677
- prop: "displayFlag",
676
+ label: '显示标志',
677
+ prop: 'displayFlag',
678
678
  minWidth: 170,
679
679
  editable: true,
680
680
  render: (row)=>(0, __WEBPACK_EXTERNAL_MODULE_vue__.h)(__WEBPACK_EXTERNAL_MODULE_element_sun__.ElCheckbox, {
681
- class: "w-full justify-center",
682
- "true-value": 1,
683
- "false-value": 0,
684
- size: "small",
681
+ class: 'w-full justify-center',
682
+ 'true-value': 1,
683
+ 'false-value': 0,
684
+ size: 'small',
685
685
  modelValue: row.displayFlag,
686
- "onUpdate:modelValue": (value)=>row.displayFlag = value
686
+ 'onUpdate:modelValue': (value)=>row.displayFlag = value
687
687
  })
688
688
  },
689
689
  {
690
- label: "列宽 (最小值)",
691
- prop: "minWidth",
690
+ label: '列宽 (最小值)',
691
+ prop: 'minWidth',
692
692
  minWidth: 170,
693
+ isDraggable: false,
693
694
  render: (row)=>(0, __WEBPACK_EXTERNAL_MODULE_vue__.h)(__WEBPACK_EXTERNAL_MODULE_element_sun__.ElInputNumber, {
694
695
  maxLength: 16,
695
696
  min: 0,
696
697
  precision: 0,
697
698
  modelValue: row.minWidth,
698
- "onUpdate:modelValue": (value)=>row.minWidth = value,
699
- size: "small",
700
- placeholder: "请输入列宽 (最小值)"
699
+ 'onUpdate:modelValue': (value)=>row.minWidth = value,
700
+ size: 'small',
701
+ placeholder: '请输入列宽 (最小值)'
701
702
  })
702
703
  },
703
704
  {
704
- label: "列排序",
705
- prop: "sort",
705
+ label: '列排序',
706
+ prop: 'sort',
707
+ isDraggable: false,
706
708
  minWidth: 170,
707
709
  render: (row, index)=>(0, __WEBPACK_EXTERNAL_MODULE_vue__.h)(__WEBPACK_EXTERNAL_MODULE_element_sun__.ElInputNumber, {
708
710
  max: length,
709
711
  min: 0,
710
712
  modelValue: row.sort,
711
713
  disabled: disabledDraggable.value,
712
- "onUpdate:modelValue": (value)=>row.sort = value,
714
+ 'onUpdate:modelValue': (value)=>row.sort = value,
713
715
  onInput: (sort)=>{
714
716
  changeSort(index, sort);
715
717
  },
716
- size: "small",
717
- placeholder: "请输入排序"
718
+ size: 'small',
719
+ placeholder: '请输入排序'
718
720
  })
719
721
  }
720
722
  ];
@@ -4361,7 +4363,7 @@ const icon_combine_exports_ = /*#__PURE__*/ (0, exportHelper["default"])(script,
4361
4363
  minWidth: 110,
4362
4364
  prop: item.dataIndex,
4363
4365
  ...__props.isPatientAccess && 'patientName' === item.dataIndex && {
4364
- render: (row)=>row?.patMainRecordId ? (0, __WEBPACK_EXTERNAL_MODULE_vue__.createVNode)("div", {
4366
+ render: (row)=>row?.patMainRecordId && row?.patientId !== row?.patMainRecordId ? (0, __WEBPACK_EXTERNAL_MODULE_vue__.createVNode)("div", {
4365
4367
  class: 'flex items-center justify-center gap-1'
4366
4368
  }, [
4367
4369
  (0, __WEBPACK_EXTERNAL_MODULE_vue__.createVNode)("span", {
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "sun-biz",
3
- "version": "0.0.4-beta.34",
3
+ "version": "0.0.4-beta.36",
4
4
  "type": "module",
5
5
  "workspaces": [
6
6
  "src/*",