sun-biz 0.0.4-beta.50 → 0.0.4-beta.52

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.
@@ -8,8 +8,8 @@ import * as __WEBPACK_EXTERNAL_MODULE__sun_toolkit_enums__ from "@sun-toolkit/en
8
8
  import * as __WEBPACK_EXTERNAL_MODULE__sun_toolkit_shared__ from "@sun-toolkit/shared";
9
9
  import * as __WEBPACK_EXTERNAL_MODULE__sun_toolkit_micro_app__ from "@sun-toolkit/micro-app";
10
10
  import "vue-router";
11
- import * as __WEBPACK_EXTERNAL_MODULE_lodash__ from "lodash";
12
11
  import * as __WEBPACK_EXTERNAL_MODULE_i18next_vue__ from "i18next-vue";
12
+ import * as __WEBPACK_EXTERNAL_MODULE_lodash__ from "lodash";
13
13
  import * as __WEBPACK_EXTERNAL_MODULE_js_pinyin__ from "js-pinyin";
14
14
  var __webpack_modules__ = {
15
15
  "./node_modules/.pnpm/vue-loader@17.4.2_vue@3.5.18_typescript@5.9.2__webpack@5.101.0_esbuild@0.24.2_/node_modules/vue-loader/dist/exportHelper.js": function(__unused_webpack_module, exports) {
@@ -1361,8 +1361,11 @@ function dbgrid_component_settingvue_type_script_setup_true_lang_tsx_isSlot(s) {
1361
1361
  columns: {
1362
1362
  default: ()=>[]
1363
1363
  },
1364
+ defaultColumns: {
1365
+ default: ()=>[]
1366
+ },
1364
1367
  componentNo: {
1365
- default: ""
1368
+ default: ''
1366
1369
  },
1367
1370
  columnsSetting: {
1368
1371
  default: ()=>({
@@ -1381,7 +1384,7 @@ function dbgrid_component_settingvue_type_script_setup_true_lang_tsx_isSlot(s) {
1381
1384
  use_app_config_MAIN_APP_CONFIG.USER_INFO
1382
1385
  ]);
1383
1386
  const isAdmin = userInfo?.adminFlag === __WEBPACK_EXTERNAL_MODULE__sun_toolkit_enums__.FLAG.YES || userInfo?.userJobCode === __WEBPACK_EXTERNAL_MODULE__sun_toolkit_enums__.FLAG_STR.NO;
1384
- const componentId = (0, __WEBPACK_EXTERNAL_MODULE_vue__.ref)("");
1387
+ const componentId = (0, __WEBPACK_EXTERNAL_MODULE_vue__.ref)('');
1385
1388
  const fullscreen = (0, __WEBPACK_EXTERNAL_MODULE_vue__.ref)(true);
1386
1389
  const confirmLoading = (0, __WEBPACK_EXTERNAL_MODULE_vue__.ref)(false);
1387
1390
  const applicationLoading = (0, __WEBPACK_EXTERNAL_MODULE_vue__.ref)(false);
@@ -1389,14 +1392,14 @@ function dbgrid_component_settingvue_type_script_setup_true_lang_tsx_isSlot(s) {
1389
1392
  (0, __WEBPACK_EXTERNAL_MODULE_vue__.onMounted)(()=>{
1390
1393
  dialogRef.value.open();
1391
1394
  });
1392
- const scrollKeyWord = (0, __WEBPACK_EXTERNAL_MODULE_vue__.ref)("");
1395
+ const scrollKeyWord = (0, __WEBPACK_EXTERNAL_MODULE_vue__.ref)('');
1393
1396
  const dataSetList = use_fetch_dataset([
1394
1397
  __WEBPACK_EXTERNAL_MODULE__sun_toolkit_enums__.INFLUENCE_SCOPE_CODE_NAME
1395
1398
  ]);
1396
1399
  const renderDialog = (0, __WEBPACK_EXTERNAL_MODULE_vue__.ref)(true); //控制prodialog 是否销毁
1397
1400
  const dbgridTableConfigRef = (0, __WEBPACK_EXTERNAL_MODULE_vue__.ref)();
1398
1401
  const influenceScopeList = (0, __WEBPACK_EXTERNAL_MODULE_vue__.computed)(()=>dataSetList?.value?.[__WEBPACK_EXTERNAL_MODULE__sun_toolkit_enums__.INFLUENCE_SCOPE_CODE_NAME] || []);
1399
- const bizId = (0, __WEBPACK_EXTERNAL_MODULE_vue__.ref)("");
1402
+ const bizId = (0, __WEBPACK_EXTERNAL_MODULE_vue__.ref)('');
1400
1403
  const tableRef = (0, __WEBPACK_EXTERNAL_MODULE_vue__.ref)();
1401
1404
  const serveDbgridComponentSettingList = (0, __WEBPACK_EXTERNAL_MODULE_vue__.ref)();
1402
1405
  const loading = (0, __WEBPACK_EXTERNAL_MODULE_vue__.ref)(true);
@@ -1405,14 +1408,14 @@ function dbgrid_component_settingvue_type_script_setup_true_lang_tsx_isSlot(s) {
1405
1408
  const userList = (0, __WEBPACK_EXTERNAL_MODULE_vue__.ref)([]);
1406
1409
  const sourceData = (0, __WEBPACK_EXTERNAL_MODULE_vue__.ref)([]);
1407
1410
  const disabledDraggable = (0, __WEBPACK_EXTERNAL_MODULE_vue__.computed)(()=>!props.columnsSetting?.draggable);
1408
- function initColumns() {
1409
- sourceData.value = props.columns.map((item, index)=>({
1411
+ function setColumns(isDefault = false) {
1412
+ sourceData.value = (isDefault ? props.defaultColumns : props.columns).map((item, index)=>({
1410
1413
  ...item,
1411
1414
  minWidth: item.minWidth || item.width,
1412
1415
  sort: index + 1,
1413
- columnClass: "truncate",
1416
+ columnClass: 'truncate',
1414
1417
  render: (row, index)=>{
1415
- if (!item.render) return "我是示例的文案";
1418
+ if (!item.render) return '我是示例的文案';
1416
1419
  {
1417
1420
  let _slot;
1418
1421
  return (0, __WEBPACK_EXTERNAL_MODULE_vue__.createVNode)(__WEBPACK_EXTERNAL_MODULE_element_sun__.ElButton, {
@@ -1433,7 +1436,7 @@ function dbgrid_component_settingvue_type_script_setup_true_lang_tsx_isSlot(s) {
1433
1436
  }));
1434
1437
  }
1435
1438
  (0, __WEBPACK_EXTERNAL_MODULE_vue__.watch)(()=>props.columns, ()=>{
1436
- initColumns();
1439
+ setColumns();
1437
1440
  }, {
1438
1441
  immediate: true
1439
1442
  });
@@ -1447,16 +1450,16 @@ function dbgrid_component_settingvue_type_script_setup_true_lang_tsx_isSlot(s) {
1447
1450
  });
1448
1451
  if (result?.success) {
1449
1452
  if (result?.data?.length) {
1450
- componentId.value = result.data[0].componentId || "";
1453
+ componentId.value = result.data[0].componentId || '';
1451
1454
  serveDbgridComponentSettingList.value = result.data[0].dbgridComponentSettingList || [];
1452
1455
  if (isAdmin && userInfo?.userJobCode !== __WEBPACK_EXTERNAL_MODULE__sun_toolkit_enums__.FLAG_STR.NO) influenceScopeCode.value = __WEBPACK_EXTERNAL_MODULE__sun_toolkit_enums__.INFLUENCE_SCOPE_CODE.PUBLIC;
1453
1456
  else {
1454
1457
  influenceScopeCode.value = __WEBPACK_EXTERNAL_MODULE__sun_toolkit_enums__.INFLUENCE_SCOPE_CODE.PRiVATE;
1455
- bizId.value = userInfo?.userId || "";
1458
+ bizId.value = userInfo?.userId || '';
1456
1459
  userList.value = [
1457
1460
  {
1458
- userId: userInfo?.userId || "",
1459
- userName: userInfo?.userName || ""
1461
+ userId: userInfo?.userId || '',
1462
+ userName: userInfo?.userName || ''
1460
1463
  }
1461
1464
  ];
1462
1465
  }
@@ -1467,7 +1470,7 @@ function dbgrid_component_settingvue_type_script_setup_true_lang_tsx_isSlot(s) {
1467
1470
  async function fetchUserList(value) {
1468
1471
  const [, res] = await queryUserList({
1469
1472
  enabledFlag: 1,
1470
- hospitalId: currentOrg?.orgId || "",
1473
+ hospitalId: currentOrg?.orgId || '',
1471
1474
  keyWord: value
1472
1475
  });
1473
1476
  if (res?.success) userList.value = res.data || [];
@@ -1484,10 +1487,21 @@ function dbgrid_component_settingvue_type_script_setup_true_lang_tsx_isSlot(s) {
1484
1487
  let serverColum = [];
1485
1488
  if (serveDbgridComponentSettingList.value?.length) {
1486
1489
  let findObj = serveDbgridComponentSettingList.value.find((item)=>item.influenceScopeCode === newValues[0] && (item.bizId === newValues[1] || !item.bizId && !newValues[1]));
1487
- serverColum = findObj ? findObj.dbgridSettingValue : serveDbgridComponentSettingList.value.find((item)=>item.influenceScopeCode === __WEBPACK_EXTERNAL_MODULE__sun_toolkit_enums__.INFLUENCE_SCOPE_CODE.PUBLIC)?.dbgridSettingValue || serveDbgridComponentSettingList.value[0].dbgridSettingValue;
1490
+ if (findObj) serverColum = findObj.dbgridSettingValue;
1491
+ else {
1492
+ let publicValue = serveDbgridComponentSettingList.value.find((item)=>item.influenceScopeCode === __WEBPACK_EXTERNAL_MODULE__sun_toolkit_enums__.INFLUENCE_SCOPE_CODE.PUBLIC && !item.bizId);
1493
+ if (publicValue) serverColum = publicValue.dbgridSettingValue;
1494
+ else {
1495
+ setColumns(true);
1496
+ return;
1497
+ }
1498
+ }
1499
+ } else {
1500
+ setColumns(true); //执行默认值配置
1501
+ return;
1488
1502
  }
1489
1503
  try {
1490
- serverColum = JSON.parse(serverColum);
1504
+ serverColum = JSON.parse(serverColum) || [];
1491
1505
  } catch (err) {
1492
1506
  serverColum = [];
1493
1507
  console.log(err);
@@ -1523,13 +1537,13 @@ function dbgrid_component_settingvue_type_script_setup_true_lang_tsx_isSlot(s) {
1523
1537
  return item;
1524
1538
  });
1525
1539
  }
1526
- function submit(isSave) {
1540
+ function submit(isSave, resetDefault = false) {
1527
1541
  return new Promise((resolve, reject)=>{
1528
1542
  if (influenceScopeCode.value === __WEBPACK_EXTERNAL_MODULE__sun_toolkit_enums__.INFLUENCE_SCOPE_CODE.PRiVATE && !bizId.value) {
1529
- __WEBPACK_EXTERNAL_MODULE_element_sun__.ElMessage.warning("请选择操作员");
1543
+ __WEBPACK_EXTERNAL_MODULE_element_sun__.ElMessage.warning('请选择操作员');
1530
1544
  return reject([
1531
- "",
1532
- new Error("参数错误")
1545
+ '',
1546
+ new Error('参数错误')
1533
1547
  ]);
1534
1548
  }
1535
1549
  let dbgridComponentSettingList = [];
@@ -1569,22 +1583,26 @@ function dbgrid_component_settingvue_type_script_setup_true_lang_tsx_isSlot(s) {
1569
1583
  bizId: influenceScopeCode.value === __WEBPACK_EXTERNAL_MODULE__sun_toolkit_enums__.INFLUENCE_SCOPE_CODE.PRiVATE ? bizId.value : void 0
1570
1584
  }
1571
1585
  ];
1586
+ if (resetDefault) dbgridComponentSettingList = dbgridComponentSettingList.filter((item)=>{
1587
+ if (bizId.value) return !(item.bizId === bizId.value && item.influenceScopeCode === influenceScopeCode.value);
1588
+ return item.influenceScopeCode !== influenceScopeCode.value;
1589
+ });
1572
1590
  saveDbgridComponentSetting({
1573
1591
  componentId: componentId.value,
1574
1592
  dbgridComponentSettingList
1575
1593
  }).then((result)=>{
1576
1594
  let [, data] = result;
1577
1595
  if (data?.success) {
1578
- __WEBPACK_EXTERNAL_MODULE_element_sun__.ElMessage.success(isSave ? "保存成功" : "应用成功");
1596
+ __WEBPACK_EXTERNAL_MODULE_element_sun__.ElMessage.success(isSave ? '保存成功' : '应用成功');
1579
1597
  resolve([]);
1580
1598
  } else reject([
1581
- "",
1582
- new Error("接口错误")
1599
+ '',
1600
+ new Error('接口错误')
1583
1601
  ]);
1584
1602
  }, ()=>{
1585
1603
  reject([
1586
- "",
1587
- new Error("未知错误")
1604
+ '',
1605
+ new Error('未知错误')
1588
1606
  ]);
1589
1607
  });
1590
1608
  });
@@ -1599,11 +1617,11 @@ function dbgrid_component_settingvue_type_script_setup_true_lang_tsx_isSlot(s) {
1599
1617
  let columnIndex = tableColumn.value.findIndex((item)=>item.prop === columnName);
1600
1618
  if (-1 !== columnIndex) {
1601
1619
  const tableEl = tableRef?.value?.proTableRef?.$el;
1602
- const columns = Array.from(tableEl.querySelectorAll(".el-table__body-wrapper colgroup col"));
1603
- const targetColumnStart = columns.slice(0, columnIndex).reduce((acc, col)=>acc + parseInt(col?.getAttribute("width") || "0"), 0); // 计算将目标列滚动到中间的位置
1620
+ const columns = Array.from(tableEl.querySelectorAll('.el-table__body-wrapper colgroup col'));
1621
+ const targetColumnStart = columns.slice(0, columnIndex).reduce((acc, col)=>acc + parseInt(col?.getAttribute('width') || '0'), 0); // 计算将目标列滚动到中间的位置
1604
1622
  const wrapperWidth = tableRef?.value?.proTableRef?.$el.clientWidth; // eslint-disable-next-line @typescript-eslint/ban-ts-comment
1605
1623
  //@ts-expect-error
1606
- const columnWidth = parseInt(columns[columnIndex]?.getAttribute("width"));
1624
+ const columnWidth = parseInt(columns[columnIndex]?.getAttribute('width'));
1607
1625
  const scrollPosition = targetColumnStart - wrapperWidth / 2 + columnWidth / 2;
1608
1626
  tableRef?.value?.proTableRef.setScrollLeft(scrollPosition);
1609
1627
  }
@@ -1612,8 +1630,8 @@ function dbgrid_component_settingvue_type_script_setup_true_lang_tsx_isSlot(s) {
1612
1630
  let findIndex = sourceData.value.findIndex((item)=>item.prop === columnName);
1613
1631
  const row = dbgridTableConfigRef?.value?.tableRef?.proTableRef?.$el?.querySelector(`.el-table__body-wrapper tbody tr:nth-child(${findIndex + 1})`);
1614
1632
  row?.scrollIntoView({
1615
- behavior: "smooth",
1616
- block: "center"
1633
+ behavior: 'smooth',
1634
+ block: 'center'
1617
1635
  });
1618
1636
  dbgridTableConfigRef?.value?.tableRef?.setCurrentRow(sourceData.value[findIndex]);
1619
1637
  };
@@ -1628,11 +1646,11 @@ function dbgrid_component_settingvue_type_script_setup_true_lang_tsx_isSlot(s) {
1628
1646
  function handleCancel() {
1629
1647
  dialogRef.value.close();
1630
1648
  }
1631
- async function handleConfirm(isSave = true) {
1649
+ async function handleConfirm(isSave = true, resetDefault = false) {
1632
1650
  const loadingRef = isSave ? confirmLoading : applicationLoading;
1633
1651
  loadingRef.value = true;
1634
1652
  try {
1635
- const [err] = await submit(isSave);
1653
+ const [err] = await submit(isSave, resetDefault);
1636
1654
  loadingRef.value = false;
1637
1655
  if (!err) {
1638
1656
  if (isSave) handleCancel();
@@ -1658,12 +1676,27 @@ function dbgrid_component_settingvue_type_script_setup_true_lang_tsx_isSlot(s) {
1658
1676
  (0, __WEBPACK_EXTERNAL_MODULE_vue__.createVNode)((0, __WEBPACK_EXTERNAL_MODULE_vue__.unref)(__WEBPACK_EXTERNAL_MODULE_element_sun__.ElButton), {
1659
1677
  onClick: handleCancel
1660
1678
  }, {
1661
- default: (0, __WEBPACK_EXTERNAL_MODULE_vue__.withCtx)(()=>_cache[7] || (_cache[7] = [
1679
+ default: (0, __WEBPACK_EXTERNAL_MODULE_vue__.withCtx)(()=>_cache[8] || (_cache[8] = [
1662
1680
  (0, __WEBPACK_EXTERNAL_MODULE_vue__.createTextVNode)("取消", -1)
1663
1681
  ])),
1664
1682
  _: 1,
1665
1683
  __: [
1666
- 7
1684
+ 8
1685
+ ]
1686
+ }),
1687
+ (0, __WEBPACK_EXTERNAL_MODULE_vue__.createVNode)((0, __WEBPACK_EXTERNAL_MODULE_vue__.unref)(__WEBPACK_EXTERNAL_MODULE_element_sun__.ElButton), {
1688
+ type: "primary",
1689
+ plain: "",
1690
+ onClick: _cache[4] || (_cache[4] = ()=>{
1691
+ handleConfirm(true, true);
1692
+ })
1693
+ }, {
1694
+ default: (0, __WEBPACK_EXTERNAL_MODULE_vue__.withCtx)(()=>_cache[9] || (_cache[9] = [
1695
+ (0, __WEBPACK_EXTERNAL_MODULE_vue__.createTextVNode)("恢复默认", -1)
1696
+ ])),
1697
+ _: 1,
1698
+ __: [
1699
+ 9
1667
1700
  ]
1668
1701
  }),
1669
1702
  (0, __WEBPACK_EXTERNAL_MODULE_vue__.createVNode)((0, __WEBPACK_EXTERNAL_MODULE_vue__.unref)(__WEBPACK_EXTERNAL_MODULE_element_sun__.ElButton), {
@@ -1671,16 +1704,16 @@ function dbgrid_component_settingvue_type_script_setup_true_lang_tsx_isSlot(s) {
1671
1704
  loading: applicationLoading.value,
1672
1705
  disabled: applicationLoading.value,
1673
1706
  plain: "",
1674
- onClick: _cache[4] || (_cache[4] = ()=>{
1707
+ onClick: _cache[5] || (_cache[5] = ()=>{
1675
1708
  handleConfirm(false);
1676
1709
  })
1677
1710
  }, {
1678
- default: (0, __WEBPACK_EXTERNAL_MODULE_vue__.withCtx)(()=>_cache[8] || (_cache[8] = [
1711
+ default: (0, __WEBPACK_EXTERNAL_MODULE_vue__.withCtx)(()=>_cache[10] || (_cache[10] = [
1679
1712
  (0, __WEBPACK_EXTERNAL_MODULE_vue__.createTextVNode)("应用", -1)
1680
1713
  ])),
1681
1714
  _: 1,
1682
1715
  __: [
1683
- 8
1716
+ 10
1684
1717
  ]
1685
1718
  }, 8, [
1686
1719
  "loading",
@@ -1690,16 +1723,16 @@ function dbgrid_component_settingvue_type_script_setup_true_lang_tsx_isSlot(s) {
1690
1723
  loading: confirmLoading.value,
1691
1724
  type: "primary",
1692
1725
  disabled: confirmLoading.value,
1693
- onClick: _cache[5] || (_cache[5] = ()=>{
1726
+ onClick: _cache[6] || (_cache[6] = ()=>{
1694
1727
  handleConfirm(true);
1695
1728
  })
1696
1729
  }, {
1697
- default: (0, __WEBPACK_EXTERNAL_MODULE_vue__.withCtx)(()=>_cache[9] || (_cache[9] = [
1730
+ default: (0, __WEBPACK_EXTERNAL_MODULE_vue__.withCtx)(()=>_cache[11] || (_cache[11] = [
1698
1731
  (0, __WEBPACK_EXTERNAL_MODULE_vue__.createTextVNode)(" 确认 ", -1)
1699
1732
  ])),
1700
1733
  _: 1,
1701
1734
  __: [
1702
- 9
1735
+ 11
1703
1736
  ]
1704
1737
  }, 8, [
1705
1738
  "loading",
@@ -1741,7 +1774,7 @@ function dbgrid_component_settingvue_type_script_setup_true_lang_tsx_isSlot(s) {
1741
1774
  ]),
1742
1775
  (0, __WEBPACK_EXTERNAL_MODULE_vue__.createElementVNode)("div", dbgrid_component_settingvue_type_script_setup_true_lang_tsx_hoisted_2, [
1743
1776
  (0, __WEBPACK_EXTERNAL_MODULE_vue__.createElementVNode)("div", null, [
1744
- _cache[6] || (_cache[6] = (0, __WEBPACK_EXTERNAL_MODULE_vue__.createElementVNode)("span", null, "影响范围", -1)),
1777
+ _cache[7] || (_cache[7] = (0, __WEBPACK_EXTERNAL_MODULE_vue__.createElementVNode)("span", null, "影响范围", -1)),
1745
1778
  (0, __WEBPACK_EXTERNAL_MODULE_vue__.createVNode)((0, __WEBPACK_EXTERNAL_MODULE_vue__.unref)(__WEBPACK_EXTERNAL_MODULE_element_sun__.ElSelect), {
1746
1779
  disabled: !(0, __WEBPACK_EXTERNAL_MODULE_vue__.unref)(isAdmin),
1747
1780
  class: "ml-6 mr-4 w-52",
@@ -1861,7 +1894,7 @@ function dbgrid_component_settingvue_type_script_setup_true_lang_tsx_isSlot(s) {
1861
1894
  const dbgrid_component_setting_exports_ = /*#__PURE__*/ (0, exportHelper["default"])(dbgrid_component_settingvue_type_script_setup_true_lang_tsx, [
1862
1895
  [
1863
1896
  '__scopeId',
1864
- "data-v-a780c5b2"
1897
+ "data-v-c6055652"
1865
1898
  ]
1866
1899
  ]);
1867
1900
  /* ESM default export */ const dbgrid_component_setting = dbgrid_component_setting_exports_;
@@ -1896,21 +1929,22 @@ const tableColumnSetting = (options)=>{
1896
1929
  const TableSettingButtonvue_type_script_setup_true_lang_tsx_hoisted_1 = {
1897
1930
  class: "el-dropdown-link absolute left-1 top-2 z-50 cursor-pointer text-primary"
1898
1931
  };
1899
- const FILE_TYPE_CODE = "FILE_TYPE_CODE";
1900
- const COLUMN_SETTING = "column-setting";
1901
- const EXPORT_FILE = "export-file";
1932
+ const FILE_TYPE_CODE = 'FILE_TYPE_CODE';
1933
+ const COLUMN_SETTING = 'column-setting';
1934
+ const EXPORT_FILE = 'export-file';
1902
1935
  /* ESM default export */ const TableSettingButtonvue_type_script_setup_true_lang_tsx = /*@__PURE__*/ (0, __WEBPACK_EXTERNAL_MODULE_vue__.defineComponent)({
1903
1936
  __name: 'TableSettingButton',
1904
1937
  props: {
1905
1938
  tableData: {},
1906
1939
  columns: {},
1940
+ defaultColumns: {},
1907
1941
  componentNo: {},
1908
1942
  columnsSetting: {},
1909
1943
  exportFileFlag: {},
1910
1944
  componentDesc: {}
1911
1945
  },
1912
1946
  emits: [
1913
- "success"
1947
+ 'success'
1914
1948
  ],
1915
1949
  setup (__props, { emit: __emit }) {
1916
1950
  const dataSetList = use_fetch_dataset([
@@ -1923,7 +1957,7 @@ const EXPORT_FILE = "export-file";
1923
1957
  let result = [
1924
1958
  {
1925
1959
  value: COLUMN_SETTING,
1926
- label: "表格设置",
1960
+ label: '表格设置',
1927
1961
  children: []
1928
1962
  }
1929
1963
  ];
@@ -1931,13 +1965,13 @@ const EXPORT_FILE = "export-file";
1931
1965
  let list = dataSetList.value?.[FILE_TYPE_CODE] || [];
1932
1966
  if (1 === list.length) result.push({
1933
1967
  value: list[0]?.dataValueNo,
1934
- label: "导出文件",
1968
+ label: '导出文件',
1935
1969
  disabled: !props.tableData.length,
1936
1970
  children: []
1937
1971
  });
1938
1972
  if (list.length > 1) result.push({
1939
1973
  value: EXPORT_FILE,
1940
- label: "导出文件",
1974
+ label: '导出文件',
1941
1975
  disabled: !props.tableData.length,
1942
1976
  children: list.map((item)=>({
1943
1977
  value: item?.dataValueNo,
@@ -1948,15 +1982,15 @@ const EXPORT_FILE = "export-file";
1948
1982
  return result;
1949
1983
  });
1950
1984
  const getRenderedContent = (render, row, index)=>{
1951
- const tempDiv = document.createElement("div");
1985
+ const tempDiv = document.createElement('div');
1952
1986
  const app = (0, __WEBPACK_EXTERNAL_MODULE_vue__.createApp)({
1953
1987
  render () {
1954
- return (0, __WEBPACK_EXTERNAL_MODULE_vue__.h)("div", {}, render(row, index));
1988
+ return (0, __WEBPACK_EXTERNAL_MODULE_vue__.h)('div', {}, render(row, index));
1955
1989
  }
1956
1990
  });
1957
1991
  app.use(__WEBPACK_EXTERNAL_MODULE_element_sun__["default"]);
1958
1992
  app.mount(tempDiv);
1959
- const content = tempDiv.textContent || "";
1993
+ const content = tempDiv.textContent || '';
1960
1994
  app.unmount();
1961
1995
  return content;
1962
1996
  };
@@ -1972,7 +2006,7 @@ const EXPORT_FILE = "export-file";
1972
2006
  rowSequenceNo: index,
1973
2007
  rowRecordList: props.columns.filter((col)=>col.prop && col.displayFlag === __WEBPACK_EXTERNAL_MODULE__sun_toolkit_enums__.ENABLED_FLAG.YES && col.prop !== OPERATION).map((col)=>{
1974
2008
  let value = item[col.prop];
1975
- if ("function" == typeof col.render) try {
2009
+ if ('function' == typeof col.render) try {
1976
2010
  value = getRenderedContent(col.render, item, index) || value;
1977
2011
  } catch (error) {
1978
2012
  console.warn(`Render function error for column ${col.prop}:`, error);
@@ -1990,7 +2024,7 @@ const EXPORT_FILE = "export-file";
1990
2024
  fileName: `${props.componentDesc}.xlsx`,
1991
2025
  data: res?.data?.fileString
1992
2026
  });
1993
- __WEBPACK_EXTERNAL_MODULE_element_sun__.ElMessage.success("导出成功");
2027
+ __WEBPACK_EXTERNAL_MODULE_element_sun__.ElMessage.success('导出成功');
1994
2028
  }
1995
2029
  }
1996
2030
  function hide() {
@@ -2000,10 +2034,11 @@ const EXPORT_FILE = "export-file";
2000
2034
  if (props.columnsSetting?.disabled) return;
2001
2035
  tableColumnSetting({
2002
2036
  columns: props.columns,
2037
+ defaultColumns: props.defaultColumns,
2003
2038
  componentNo: props.componentNo,
2004
2039
  columnsSetting: props.columnsSetting,
2005
2040
  success: ()=>{
2006
- emit("success");
2041
+ emit('success');
2007
2042
  }
2008
2043
  });
2009
2044
  }
@@ -2103,7 +2138,7 @@ const EXPORT_FILE = "export-file";
2103
2138
  const TableSettingButton_exports_ = /*#__PURE__*/ (0, exportHelper["default"])(TableSettingButtonvue_type_script_setup_true_lang_tsx, [
2104
2139
  [
2105
2140
  '__scopeId',
2106
- "data-v-0aa25cee"
2141
+ "data-v-a526e56a"
2107
2142
  ]
2108
2143
  ]);
2109
2144
  /* ESM default export */ const TableSettingButton = TableSettingButton_exports_;
@@ -2131,6 +2166,7 @@ const Tablevue_type_script_setup_true_lang_tsx_name_Table_hoisted_1 = {
2131
2166
  rowKey: {},
2132
2167
  tableColumns: {},
2133
2168
  commonColumns: {},
2169
+ defaultColumns: {},
2134
2170
  columnsSetting: {},
2135
2171
  rowClassName: {
2136
2172
  type: [
@@ -2175,6 +2211,7 @@ const Tablevue_type_script_setup_true_lang_tsx_name_Table_hoisted_1 = {
2175
2211
  "component-no": props.componentNo,
2176
2212
  "columns-setting": props.columnsSetting,
2177
2213
  columns: _ctx.commonColumns,
2214
+ defaultColumns: _ctx.defaultColumns,
2178
2215
  ref: "tableSettingButtonRef",
2179
2216
  onSuccess: _cache[0] || (_cache[0] = ($event)=>emits('success'))
2180
2217
  }, null, 8, [
@@ -2183,7 +2220,8 @@ const Tablevue_type_script_setup_true_lang_tsx_name_Table_hoisted_1 = {
2183
2220
  "export-file-flag",
2184
2221
  "component-no",
2185
2222
  "columns-setting",
2186
- "columns"
2223
+ "columns",
2224
+ "defaultColumns"
2187
2225
  ])) : (0, __WEBPACK_EXTERNAL_MODULE_vue__.createCommentVNode)("", true),
2188
2226
  (0, __WEBPACK_EXTERNAL_MODULE_vue__.withDirectives)(((0, __WEBPACK_EXTERNAL_MODULE_vue__.openBlock)(), (0, __WEBPACK_EXTERNAL_MODULE_vue__.createBlock)((0, __WEBPACK_EXTERNAL_MODULE_vue__.unref)(__WEBPACK_EXTERNAL_MODULE_element_sun__.ElTable), (0, __WEBPACK_EXTERNAL_MODULE_vue__.mergeProps)({
2189
2227
  id: props.id,
@@ -2335,7 +2373,7 @@ const pro_tablevue_type_script_lang_ts_setup_true_name_ProTable_hoisted_2 = {
2335
2373
  key: 1,
2336
2374
  class: "mt-5 flex items-center justify-between"
2337
2375
  };
2338
- const SELECTION = "selection";
2376
+ const SELECTION = 'selection';
2339
2377
  /**
2340
2378
  *获取参与排序的列表 索引 是否可以拖拽
2341
2379
  */ /* ESM default export */ const pro_tablevue_type_script_lang_ts_setup_true_name_ProTable = /*@__PURE__*/ (0, __WEBPACK_EXTERNAL_MODULE_vue__.defineComponent)({
@@ -2361,7 +2399,7 @@ const SELECTION = "selection";
2361
2399
  default: 80
2362
2400
  },
2363
2401
  componentNo: {
2364
- default: ""
2402
+ default: ''
2365
2403
  },
2366
2404
  hiddenDefaultText: {
2367
2405
  type: Boolean,
@@ -2393,7 +2431,7 @@ const SELECTION = "selection";
2393
2431
  default: true
2394
2432
  },
2395
2433
  rowKey: {
2396
- default: "id"
2434
+ default: 'id'
2397
2435
  },
2398
2436
  stripe: {
2399
2437
  type: Boolean,
@@ -2415,13 +2453,13 @@ const SELECTION = "selection";
2415
2453
  default: ()=>({})
2416
2454
  },
2417
2455
  layout: {
2418
- default: "total, sizes, prev, pager, next"
2456
+ default: 'total, sizes, prev, pager, next'
2419
2457
  },
2420
2458
  formDisabled: {
2421
2459
  type: Boolean
2422
2460
  },
2423
2461
  dragTips: {
2424
- default: "温馨提示:您可通过拖动进行排序"
2462
+ default: '温馨提示:您可通过拖动进行排序'
2425
2463
  },
2426
2464
  isShowDragTips: {
2427
2465
  type: Boolean,
@@ -2431,7 +2469,7 @@ const SELECTION = "selection";
2431
2469
  default: {}
2432
2470
  },
2433
2471
  dragTipsClassName: {
2434
- default: ""
2472
+ default: ''
2435
2473
  },
2436
2474
  settingIconWidth: {
2437
2475
  default: 36
@@ -2457,7 +2495,7 @@ const SELECTION = "selection";
2457
2495
  const sortFieldList = (0, __WEBPACK_EXTERNAL_MODULE_vue__.ref)(void 0);
2458
2496
  const exportFileFlag = (0, __WEBPACK_EXTERNAL_MODULE_vue__.ref)(__WEBPACK_EXTERNAL_MODULE__sun_toolkit_enums__.ENABLED_FLAG.NO);
2459
2497
  const showSetting = (0, __WEBPACK_EXTERNAL_MODULE_vue__.ref)(false);
2460
- const componentDesc = (0, __WEBPACK_EXTERNAL_MODULE_vue__.ref)("文件");
2498
+ const componentDesc = (0, __WEBPACK_EXTERNAL_MODULE_vue__.ref)('文件');
2461
2499
  let state = (0, __WEBPACK_EXTERNAL_MODULE_vue__.reactive)({
2462
2500
  // 表格数据
2463
2501
  tableData: props.data,
@@ -2484,7 +2522,7 @@ const SELECTION = "selection";
2484
2522
  const emit = __emit;
2485
2523
  const attrs = (0, __WEBPACK_EXTERNAL_MODULE_vue__.useAttrs)();
2486
2524
  // 提供静态数据
2487
- (0, __WEBPACK_EXTERNAL_MODULE_vue__.provide)("hiddenDefaultText", props.hiddenDefaultText);
2525
+ (0, __WEBPACK_EXTERNAL_MODULE_vue__.provide)('hiddenDefaultText', props.hiddenDefaultText);
2488
2526
  const tableRef = (0, __WEBPACK_EXTERNAL_MODULE_vue__.ref)();
2489
2527
  const proTableRef = (0, __WEBPACK_EXTERNAL_MODULE_vue__.computed)(()=>tableRef.value?.proTableRef);
2490
2528
  function getDragSortData(newIndex, data, startIndexObj, sortData, childrenKey) {
@@ -2533,7 +2571,7 @@ const SELECTION = "selection";
2533
2571
  return data;
2534
2572
  }
2535
2573
  // 生成每一行的唯一 path
2536
- function getRowPath(row, data, rowKey, parentPath = "", childrenKey) {
2574
+ function getRowPath(row, data, rowKey, parentPath = '', childrenKey) {
2537
2575
  for(let i = 0; i < data.length; i++){
2538
2576
  if (data[i][rowKey] === row[rowKey]) {
2539
2577
  const currentPath = parentPath ? `${parentPath}-${i}` : `${i}`;
@@ -2541,49 +2579,49 @@ const SELECTION = "selection";
2541
2579
  }
2542
2580
  if (childrenKey && Array.isArray(data[i][childrenKey])) {
2543
2581
  const childPath = getRowPath(row, data[i][childrenKey], rowKey, parentPath ? `${parentPath}-${i}` : `${i}`, childrenKey);
2544
- if ("" !== childPath) return childPath;
2582
+ if ('' !== childPath) return childPath;
2545
2583
  }
2546
2584
  }
2547
- return "";
2585
+ return '';
2548
2586
  }
2549
2587
  // 获取childrenKey的安全写法
2550
2588
  function getSafeChildrenKeyFromAttrs(attrs) {
2551
- const treePropsRaw = attrs["tree-props"];
2552
- const treeProps = "object" == typeof treePropsRaw && null !== treePropsRaw ? treePropsRaw : void 0;
2553
- if (treeProps && "children" in treeProps) return treeProps.children;
2589
+ const treePropsRaw = attrs['tree-props'];
2590
+ const treeProps = 'object' == typeof treePropsRaw && null !== treePropsRaw ? treePropsRaw : void 0;
2591
+ if (treeProps && 'children' in treeProps) return treeProps.children;
2554
2592
  }
2555
2593
  // 兼容外部 row-class-name,自动适配参数类型
2556
2594
  function rowClassNameWrapper(rowOrParams, rowIndexArg) {
2557
2595
  let row, rowIndex;
2558
- if (rowOrParams && "object" == typeof rowOrParams && "row" in rowOrParams && "rowIndex" in rowOrParams) {
2596
+ if (rowOrParams && 'object' == typeof rowOrParams && 'row' in rowOrParams && 'rowIndex' in rowOrParams) {
2559
2597
  row = rowOrParams.row;
2560
2598
  rowIndex = rowOrParams.rowIndex;
2561
2599
  } else {
2562
2600
  row = rowOrParams;
2563
2601
  rowIndex = rowIndexArg;
2564
2602
  }
2565
- let externalClass = "";
2566
- const external = attrs["row-class-name"];
2567
- if ("function" == typeof external) externalClass = external({
2603
+ let externalClass = '';
2604
+ const external = attrs['row-class-name'];
2605
+ if ('function' == typeof external) externalClass = external({
2568
2606
  row,
2569
2607
  rowIndex
2570
2608
  });
2571
- else if ("string" == typeof external) externalClass = external;
2572
- let pathClass = "";
2609
+ else if ('string' == typeof external) externalClass = external;
2610
+ let pathClass = '';
2573
2611
  let childrenKey = getSafeChildrenKeyFromAttrs(attrs);
2574
- let path = getRowPath(row, state.tableData, props.rowKey, "", childrenKey);
2612
+ let path = getRowPath(row, state.tableData, props.rowKey, '', childrenKey);
2575
2613
  pathClass = `row-path-${path}`;
2576
2614
  return [
2577
2615
  externalClass,
2578
2616
  pathClass
2579
- ].filter(Boolean).join(" ");
2617
+ ].filter(Boolean).join(' ');
2580
2618
  }
2581
2619
  /***
2582
2620
  * 表格拖拽排序
2583
2621
  **/ const initDragSort = ()=>{
2584
2622
  const tbodyList = document.querySelectorAll(`#${uuid.value} tbody`);
2585
2623
  const tbody = tbodyList[tbodyList.length - 1];
2586
- let initialHTML = "";
2624
+ let initialHTML = '';
2587
2625
  let crossLevelWarned = false;
2588
2626
  // 新增:销毁旧的Sortable实例
2589
2627
  // 新增:销毁旧的Sortable实例
@@ -2592,19 +2630,19 @@ const SELECTION = "selection";
2592
2630
  sortableInstance = null;
2593
2631
  }
2594
2632
  if (tbody) sortableInstance = __WEBPACK_EXTERNAL_MODULE_sortablejs__["default"].create(tbody, {
2595
- handle: ".cursor-move",
2633
+ handle: '.cursor-move',
2596
2634
  group: props.dragGroupName,
2597
2635
  animation: 300,
2598
2636
  scroll: true,
2599
2637
  scrollSensitivity: 80,
2600
2638
  scrollSpeed: 10,
2601
2639
  onMove (evt) {
2602
- const draggedPath = evt.dragged?.className.match(/row-path-([\d-]+)/)?.[1] || "";
2603
- const relatedPath = evt.related?.className.match(/row-path-([\d-]+)/)?.[1] || "";
2604
- const getParent = (p)=>p.split("-").slice(0, -1).join("-");
2640
+ const draggedPath = evt.dragged?.className.match(/row-path-([\d-]+)/)?.[1] || '';
2641
+ const relatedPath = evt.related?.className.match(/row-path-([\d-]+)/)?.[1] || '';
2642
+ const getParent = (p)=>p.split('-').slice(0, -1).join('-');
2605
2643
  if (draggedPath && relatedPath && getParent(draggedPath) !== getParent(relatedPath)) {
2606
2644
  if (!crossLevelWarned) {
2607
- __WEBPACK_EXTERNAL_MODULE_element_sun__.ElMessage.warning("暂不支持跨层级拖拽配置");
2645
+ __WEBPACK_EXTERNAL_MODULE_element_sun__.ElMessage.warning('暂不支持跨层级拖拽配置');
2608
2646
  crossLevelWarned = true;
2609
2647
  }
2610
2648
  return false;
@@ -2614,7 +2652,7 @@ const SELECTION = "selection";
2614
2652
  onEnd (evt) {
2615
2653
  const { newIndex, oldIndex } = evt;
2616
2654
  if (props.dragGroupName) {
2617
- emit("drag-end", {
2655
+ emit('drag-end', {
2618
2656
  crossGroup: evt.from !== evt.to,
2619
2657
  oldIndex,
2620
2658
  newIndex
@@ -2622,11 +2660,11 @@ const SELECTION = "selection";
2622
2660
  return;
2623
2661
  }
2624
2662
  const dragTr = evt.item;
2625
- const match = dragTr.className.split(" ").find((cls)=>cls.startsWith("row-path-"));
2626
- const fromPath = match ? match.replace("row-path-", "") : "";
2663
+ const match = dragTr.className.split(' ').find((cls)=>cls.startsWith('row-path-'));
2664
+ const fromPath = match ? match.replace('row-path-', '') : '';
2627
2665
  let childrenKey = getSafeChildrenKeyFromAttrs(attrs);
2628
2666
  const getPathByIndex = (targetIndex)=>{
2629
- let path = "";
2667
+ let path = '';
2630
2668
  let count = -1;
2631
2669
  function dfs(arr, parent) {
2632
2670
  for(let i = 0; i < arr.length; i++){
@@ -2642,13 +2680,13 @@ const SELECTION = "selection";
2642
2680
  }
2643
2681
  return false;
2644
2682
  }
2645
- dfs(state.tableData, "");
2683
+ dfs(state.tableData, '');
2646
2684
  return path;
2647
2685
  };
2648
- if ("number" != typeof newIndex || "number" != typeof oldIndex || newIndex === oldIndex) return;
2686
+ if ('number' != typeof newIndex || 'number' != typeof oldIndex || newIndex === oldIndex) return;
2649
2687
  const newPath = getPathByIndex(newIndex);
2650
2688
  const oldPath = getPathByIndex(oldIndex);
2651
- const getParent = (p)=>p.split("-").slice(0, -1).join("-");
2689
+ const getParent = (p)=>p.split('-').slice(0, -1).join('-');
2652
2690
  if (getParent(newPath) !== getParent(oldPath)) // 这里不再需要回退DOM,onMove已阻止
2653
2691
  return;
2654
2692
  let data = getSortableResult(newIndex, oldIndex);
@@ -2661,7 +2699,7 @@ const SELECTION = "selection";
2661
2699
  initDragSort();
2662
2700
  });
2663
2701
  }
2664
- emit("drag-end", data, {
2702
+ emit('drag-end', data, {
2665
2703
  fromPath,
2666
2704
  oldIndex,
2667
2705
  newIndex
@@ -2680,7 +2718,7 @@ const SELECTION = "selection";
2680
2718
  });
2681
2719
  async function fetchDbgridComponent() {
2682
2720
  let [, result] = await queryDbgridComponentByExample({
2683
- componentNo: props.componentNo || ""
2721
+ componentNo: props.componentNo || ''
2684
2722
  });
2685
2723
  if (result?.success) {
2686
2724
  exportFileFlag.value = result.data.exportFileFlag;
@@ -2695,7 +2733,7 @@ const SELECTION = "selection";
2695
2733
  }));
2696
2734
  proTableRef.value?.clearSort();
2697
2735
  serveColumns.value = column;
2698
- emit("columns-config-change", column);
2736
+ emit('columns-config-change', column);
2699
2737
  } catch (error) {
2700
2738
  console.log(error);
2701
2739
  }
@@ -2729,7 +2767,7 @@ const SELECTION = "selection";
2729
2767
  state.pageInfo.pageNumber = 1;
2730
2768
  state.pageInfo.pageSize = val;
2731
2769
  fetchList();
2732
- } else emit("size-page-change", val);
2770
+ } else emit('size-page-change', val);
2733
2771
  };
2734
2772
  /**
2735
2773
  * 分页组件改变 当前页数 事件
@@ -2737,7 +2775,7 @@ const SELECTION = "selection";
2737
2775
  if (props.fetchData) {
2738
2776
  state.pageInfo.pageNumber = val;
2739
2777
  fetchList();
2740
- } else emit("current-page-change", val);
2778
+ } else emit('current-page-change', val);
2741
2779
  }
2742
2780
  const selections = (0, __WEBPACK_EXTERNAL_MODULE_vue__.ref)();
2743
2781
  // 设置当前行激活态
@@ -2760,7 +2798,7 @@ const SELECTION = "selection";
2760
2798
  result = multiFieldSort(result, sortFieldList.value);
2761
2799
  }
2762
2800
  if (Object.keys(props.filterObj).length) return result.filter((item)=>Object.keys(props.filterObj).every((cur)=>!props.filterObj[cur] && [
2763
- "",
2801
+ '',
2764
2802
  void 0,
2765
2803
  null
2766
2804
  ].includes(props.filterObj[cur]) || item[cur] === props.filterObj[cur]));
@@ -2768,7 +2806,7 @@ const SELECTION = "selection";
2768
2806
  });
2769
2807
  // 严格按用户要求递归赋值方法
2770
2808
  function setDataByPath(path, data, childrenKey) {
2771
- const indices = path.split("-").map((i)=>Number(i));
2809
+ const indices = path.split('-').map((i)=>Number(i));
2772
2810
  if (1 === indices.length) {
2773
2811
  state.tableData = data;
2774
2812
  return;
@@ -2815,6 +2853,15 @@ const SELECTION = "selection";
2815
2853
  },
2816
2854
  rowClassName: rowClassNameWrapper
2817
2855
  });
2856
+ const defaultColumns = (0, __WEBPACK_EXTERNAL_MODULE_vue__.computed)(()=>{
2857
+ let result = [
2858
+ ...props.columns
2859
+ ].map((cur)=>({
2860
+ displayFlag: cur.isHidden || cur.defaultDisplayFlag === __WEBPACK_EXTERNAL_MODULE__sun_toolkit_enums__.ENABLED_FLAG.NO ? __WEBPACK_EXTERNAL_MODULE__sun_toolkit_enums__.ENABLED_FLAG.NO : __WEBPACK_EXTERNAL_MODULE__sun_toolkit_enums__.ENABLED_FLAG.YES,
2861
+ ...cur
2862
+ }));
2863
+ return result;
2864
+ });
2818
2865
  /**
2819
2866
  * 处理接口和本地的columns
2820
2867
  */ const commonColumns = (0, __WEBPACK_EXTERNAL_MODULE_vue__.computed)(()=>{
@@ -2824,16 +2871,15 @@ const SELECTION = "selection";
2824
2871
  if (props.couldSortFieldList && props.couldSortFieldList?.length) propsColumns = propsColumns.map((item)=>{
2825
2872
  let supportSort = !!(props.couldSortFieldList || []).find((cur)=>cur.fieldName === item.prop);
2826
2873
  return {
2827
- sortable: !!supportSort && (props.pagination ? "custom" : supportSort),
2874
+ sortable: !!supportSort && (props.pagination ? 'custom' : supportSort),
2828
2875
  ...item
2829
2876
  };
2830
2877
  });
2831
2878
  if (!(props.componentNo || serveColumns.value?.length)) return propsColumns;
2832
2879
  {
2833
- let result = propsColumns.map((cur)=>({
2834
- displayFlag: cur.isHidden || cur.defaultDisplayFlag === __WEBPACK_EXTERNAL_MODULE__sun_toolkit_enums__.ENABLED_FLAG.NO ? __WEBPACK_EXTERNAL_MODULE__sun_toolkit_enums__.ENABLED_FLAG.NO : __WEBPACK_EXTERNAL_MODULE__sun_toolkit_enums__.ENABLED_FLAG.YES,
2835
- ...cur
2836
- }));
2880
+ let result = [
2881
+ ...defaultColumns.value
2882
+ ];
2837
2883
  if (serveColumns.value?.length) {
2838
2884
  result = result.map((item, index)=>{
2839
2885
  let findObj = serveColumns.value.find((cur)=>cur.prop === item.prop) || {
@@ -2865,7 +2911,7 @@ const SELECTION = "selection";
2865
2911
  const bottomOffset = scrollHeight - event.scrollTop - clientHeight;
2866
2912
  if (event.scrollTop < oldScrollTop && 0 === bottomOffset) proTableRef.value.setScrollTop(0);
2867
2913
  if (bottomOffset < threshold && event.scrollTop > oldScrollTop) {
2868
- console.log("触发加载更多数据");
2914
+ console.log('触发加载更多数据');
2869
2915
  props.scrollLoad();
2870
2916
  }
2871
2917
  oldScrollTop = event.scrollTop;
@@ -2887,7 +2933,7 @@ const SELECTION = "selection";
2887
2933
  type: SELECTION,
2888
2934
  prop: SELECTION,
2889
2935
  minWidth: 80,
2890
- label: ""
2936
+ label: ''
2891
2937
  },
2892
2938
  ...result
2893
2939
  ];
@@ -2908,7 +2954,7 @@ const SELECTION = "selection";
2908
2954
  return isTips;
2909
2955
  });
2910
2956
  function sortChange({ column, order, prop }) {
2911
- if (!props.couldSortFieldList?.length) return emit("sort-change", {
2957
+ if (!props.couldSortFieldList?.length) return emit('sort-change', {
2912
2958
  column,
2913
2959
  order,
2914
2960
  prop
@@ -2977,7 +3023,8 @@ const SELECTION = "selection";
2977
3023
  ref: tableRef,
2978
3024
  data: tableData.value,
2979
3025
  "row-key": props.rowKey,
2980
- "table-columns": tableColumns.value
3026
+ "table-columns": tableColumns.value,
3027
+ defaultColumns: defaultColumns.value
2981
3028
  }, _ctx.$attrs, {
2982
3029
  draggable: props.draggable,
2983
3030
  "row-class-name": rowClassNameWrapper
@@ -3004,6 +3051,7 @@ const SELECTION = "selection";
3004
3051
  "data",
3005
3052
  "row-key",
3006
3053
  "table-columns",
3054
+ "defaultColumns",
3007
3055
  "draggable"
3008
3056
  ]))
3009
3057
  ]),
@@ -4805,7 +4853,7 @@ const _hoisted_16 = {
4805
4853
  // import ManPatient from "../patient-access/images/man_patient.vue";
4806
4854
  // import WomanPatient from "../patient-access/images/women_patient.vue";
4807
4855
  // import TagSelect from "../biz-select/tag-select/index.vue";
4808
- const PERSON = "PERSON"; //应该放到BIZ_ID_TYPE_CODE这个里面
4856
+ const PERSON = 'PERSON'; //应该放到BIZ_ID_TYPE_CODE这个里面
4809
4857
  /* ESM default export */ const BannerInfovue_type_script_setup_true_lang_ts_name_bannerComponent = /*@__PURE__*/ (0, __WEBPACK_EXTERNAL_MODULE_vue__.defineComponent)({
4810
4858
  __name: 'BannerInfo',
4811
4859
  props: {
@@ -4818,7 +4866,8 @@ const PERSON = "PERSON"; //应该放到BIZ_ID_TYPE_CODE这个里面
4818
4866
  menuId: {}
4819
4867
  },
4820
4868
  emits: [
4821
- "avatarClick"
4869
+ 'avatarClick',
4870
+ 'bannerInfoChange'
4822
4871
  ],
4823
4872
  setup (__props, { expose: __expose, emit: __emit }) {
4824
4873
  const emits = __emit;
@@ -4834,7 +4883,7 @@ const PERSON = "PERSON"; //应该放到BIZ_ID_TYPE_CODE这个里面
4834
4883
  const initBannerInfo = (0, __WEBPACK_EXTERNAL_MODULE_vue__.ref)();
4835
4884
  const isTextOverflowing = (0, __WEBPACK_EXTERNAL_MODULE_vue__.ref)(false);
4836
4885
  const firstDisplayWidthRatio = (0, __WEBPACK_EXTERNAL_MODULE_vue__.ref)(1);
4837
- const tagBizId = (0, __WEBPACK_EXTERNAL_MODULE_vue__.ref)("");
4886
+ const tagBizId = (0, __WEBPACK_EXTERNAL_MODULE_vue__.ref)('');
4838
4887
  const tagIds = (0, __WEBPACK_EXTERNAL_MODULE_vue__.ref)([]);
4839
4888
  const inEncounterBizTagList = (0, __WEBPACK_EXTERNAL_MODULE_vue__.ref)([]);
4840
4889
  const personBizTagList = (0, __WEBPACK_EXTERNAL_MODULE_vue__.ref)([]);
@@ -4850,43 +4899,43 @@ const PERSON = "PERSON"; //应该放到BIZ_ID_TYPE_CODE这个里面
4850
4899
  const layoutColumns = (0, __WEBPACK_EXTERNAL_MODULE_vue__.computed)(()=>parseLayoutColumns(bannerInfo.value?.layoutTypeCode));
4851
4900
  // 创建CSS类映射的计算属性
4852
4901
  const getDynamicCssClasses = (comptControlCssList)=>{
4853
- if (!comptControlCssList?.length) return "";
4902
+ if (!comptControlCssList?.length) return '';
4854
4903
  const classes = [];
4855
4904
  comptControlCssList.forEach(({ cssTypeCode, cssValue })=>{
4856
- if ("true" === cssValue) switch(cssTypeCode){
4857
- case "FONT_BOLD":
4858
- classes.push("font-bold");
4905
+ if ('true' === cssValue) switch(cssTypeCode){
4906
+ case 'FONT_BOLD':
4907
+ classes.push('font-bold');
4859
4908
  break;
4860
- case "FONT_ITALIC":
4861
- classes.push("italic");
4909
+ case 'FONT_ITALIC':
4910
+ classes.push('italic');
4862
4911
  break;
4863
- case "FONT_UNDERLINE":
4864
- classes.push("underline");
4912
+ case 'FONT_UNDERLINE':
4913
+ classes.push('underline');
4865
4914
  break;
4866
- case "FONT_LINE_THROUGH":
4867
- classes.push("line-through");
4915
+ case 'FONT_LINE_THROUGH':
4916
+ classes.push('line-through');
4868
4917
  break;
4869
4918
  }
4870
4919
  });
4871
- return classes.join(" ");
4920
+ return classes.join(' ');
4872
4921
  };
4873
4922
  // 获取颜色样式
4874
4923
  const getColorStyle = (comptControlCssList)=>{
4875
- const colorItem = comptControlCssList?.find((item)=>"FONT_COLOR" === item.cssTypeCode);
4924
+ const colorItem = comptControlCssList?.find((item)=>'FONT_COLOR' === item.cssTypeCode);
4876
4925
  return colorItem?.cssValue ? {
4877
4926
  color: colorItem.cssValue
4878
4927
  } : {};
4879
4928
  };
4880
4929
  /**
4881
- * 格式化数据值,如果listFlag为1,则将数组用逗号分隔
4882
- */ const formatDataValue = (item)=>{
4930
+ * 格式化数据值,如果listFlag为1,则将数组用逗号分隔
4931
+ */ const formatDataValue = (item)=>{
4883
4932
  if (item.listFlag === __WEBPACK_EXTERNAL_MODULE__sun_toolkit_enums__.FLAG.YES && item.dataValue) try {
4884
4933
  const parsedData = JSON.parse(item.dataValue);
4885
- if (Array.isArray(parsedData)) return parsedData.join("");
4934
+ if (Array.isArray(parsedData)) return parsedData.join('');
4886
4935
  } catch (error) {
4887
- console.error("格式化失败", error);
4936
+ console.error('格式化失败', error);
4888
4937
  }
4889
- return item.dataValue || "--";
4938
+ return item.dataValue || '--';
4890
4939
  };
4891
4940
  function setBizId(data) {
4892
4941
  switch(tagBizIdTypeCode){
@@ -4901,8 +4950,8 @@ const PERSON = "PERSON"; //应该放到BIZ_ID_TYPE_CODE这个里面
4901
4950
  }
4902
4951
  }
4903
4952
  /**
4904
- * 从banner数据中提取业务标签数据
4905
- */ function extractBizTagIds(bannerItemList) {
4953
+ * 从banner数据中提取业务标签数据
4954
+ */ function extractBizTagIds(bannerItemList) {
4906
4955
  // 筛选出 bizTagFlag === 1 的项
4907
4956
  const bizTagItems = bannerItemList.filter((item)=>item?.bizTagFlag === __WEBPACK_EXTERNAL_MODULE__sun_toolkit_enums__.FLAG.YES);
4908
4957
  // 重置数组
@@ -4915,23 +4964,24 @@ const PERSON = "PERSON"; //应该放到BIZ_ID_TYPE_CODE这个里面
4915
4964
  const parsedData = JSON.parse(item.dataValue);
4916
4965
  if (Array.isArray(parsedData) && parsedData.length > 0) {
4917
4966
  // 根据 bindingFieldNo 分类存储完整的数据
4918
- if ("inEncounterBizTagList" === item.bindingFieldNo) inEncounterBizTagList.value = parsedData;
4919
- else if ("personBizTagList" === item.bindingFieldNo) personBizTagList.value = parsedData;
4967
+ if ('inEncounterBizTagList' === item.bindingFieldNo) inEncounterBizTagList.value = parsedData;
4968
+ else if ('personBizTagList' === item.bindingFieldNo) personBizTagList.value = parsedData;
4920
4969
  }
4921
4970
  } catch (error) {
4922
4971
  console.error(`Failed to parse ${item.bindingFieldNo}:`, error);
4923
4972
  }
4924
4973
  });
4925
- console.log("inEncounterBizTagList:", inEncounterBizTagList.value);
4926
- console.log("personBizTagList:", personBizTagList.value);
4974
+ console.log('inEncounterBizTagList:', inEncounterBizTagList.value);
4975
+ console.log('personBizTagList:', personBizTagList.value);
4927
4976
  }
4928
4977
  /** 获取banner配置 */ const queryBannerConfig = async ()=>{
4929
4978
  loading.value = true;
4930
4979
  if (!__props.bizId && initBannerInfo.value) {
4931
4980
  bannerInfo.value = initBannerInfo.value;
4932
4981
  tagIds.value = [];
4933
- tagBizId.value = "";
4982
+ tagBizId.value = '';
4934
4983
  loading.value = false;
4984
+ emits('bannerInfoChange', bannerInfo.value);
4935
4985
  return;
4936
4986
  }
4937
4987
  const [, res] = await getBannerDataByBizId({
@@ -4949,13 +4999,14 @@ const PERSON = "PERSON"; //应该放到BIZ_ID_TYPE_CODE这个里面
4949
4999
  // 在渲染时,如果某项同时 bizTagFlag === 1,则按照标签形式显示
4950
5000
  res.data.bannerItemList = (res?.data?.bannerItemList ?? [])?.filter((item)=>item?.displayFlag === __WEBPACK_EXTERNAL_MODULE__sun_toolkit_enums__.FLAG.YES);
4951
5001
  setBizId({
4952
- personId: res.data?.personId || "",
4953
- inEncounterId: res.data?.inEncounterId || ""
5002
+ personId: res.data?.personId || '',
5003
+ inEncounterId: res.data?.inEncounterId || ''
4954
5004
  });
4955
5005
  fetchBizTagListByExample();
4956
5006
  firstDisplayWidthRatio.value = res.data.bannerItemList[0]?.displayWidthRatio || 1;
4957
5007
  if (!__props.bizId) initBannerInfo.value = res?.data;
4958
5008
  bannerInfo.value = res?.data;
5009
+ emits('bannerInfoChange', bannerInfo.value);
4959
5010
  }
4960
5011
  };
4961
5012
  // 修改检查文字溢出的逻辑
@@ -4972,8 +5023,8 @@ const PERSON = "PERSON"; //应该放到BIZ_ID_TYPE_CODE这个里面
4972
5023
  await queryBannerConfig();
4973
5024
  });
4974
5025
  /**
4975
- * 获取当前的标签
4976
- */ async function fetchBizTagListByExample() {
5026
+ * 获取当前的标签
5027
+ */ async function fetchBizTagListByExample() {
4977
5028
  if (!tagBizId.value || !tagBizIdTypeCode) {
4978
5029
  tagIds.value = [];
4979
5030
  return;
@@ -5025,7 +5076,7 @@ const PERSON = "PERSON"; //应该放到BIZ_ID_TYPE_CODE这个里面
5025
5076
  content: bannerInfo.value?.personName
5026
5077
  }, {
5027
5078
  default: (0, __WEBPACK_EXTERNAL_MODULE_vue__.withCtx)(()=>[
5028
- (0, __WEBPACK_EXTERNAL_MODULE_vue__.createTextVNode)((0, __WEBPACK_EXTERNAL_MODULE_vue__.toDisplayString)(bannerInfo.value?.personName ?? "--"), 1)
5079
+ (0, __WEBPACK_EXTERNAL_MODULE_vue__.createTextVNode)((0, __WEBPACK_EXTERNAL_MODULE_vue__.toDisplayString)(bannerInfo.value?.personName ?? '--'), 1)
5029
5080
  ]),
5030
5081
  _: 1
5031
5082
  }, 8, [
@@ -5034,16 +5085,16 @@ const PERSON = "PERSON"; //应该放到BIZ_ID_TYPE_CODE这个里面
5034
5085
  ])
5035
5086
  ], 32),
5036
5087
  (0, __WEBPACK_EXTERNAL_MODULE_vue__.createElementVNode)("div", BannerInfovue_type_script_setup_true_lang_ts_name_bannerComponent_hoisted_5, [
5037
- (0, __WEBPACK_EXTERNAL_MODULE_vue__.createElementVNode)("span", _hoisted_6, (0, __WEBPACK_EXTERNAL_MODULE_vue__.toDisplayString)(bannerInfo.value?.age ?? "--"), 1),
5038
- (0, __WEBPACK_EXTERNAL_MODULE_vue__.createElementVNode)("span", _hoisted_7, (0, __WEBPACK_EXTERNAL_MODULE_vue__.toDisplayString)(bannerInfo.value?.genderDesc ?? "--"), 1)
5088
+ (0, __WEBPACK_EXTERNAL_MODULE_vue__.createElementVNode)("span", _hoisted_6, (0, __WEBPACK_EXTERNAL_MODULE_vue__.toDisplayString)(bannerInfo.value?.age ?? '--'), 1),
5089
+ (0, __WEBPACK_EXTERNAL_MODULE_vue__.createElementVNode)("span", _hoisted_7, (0, __WEBPACK_EXTERNAL_MODULE_vue__.toDisplayString)(bannerInfo.value?.genderDesc ?? '--'), 1)
5039
5090
  ])
5040
5091
  ])
5041
5092
  ])
5042
5093
  ]),
5043
5094
  (0, __WEBPACK_EXTERNAL_MODULE_vue__.createElementVNode)("div", _hoisted_8, [
5044
5095
  (0, __WEBPACK_EXTERNAL_MODULE_vue__.unref)(BANNER_COMPONENT_CONFIG)[_ctx.code].bizIdTypeCode === (0, __WEBPACK_EXTERNAL_MODULE_vue__.unref)(__WEBPACK_EXTERNAL_MODULE__sun_toolkit_enums__.BIZ_ID_TYPE_CODE).IENC_ENCOUNTER ? ((0, __WEBPACK_EXTERNAL_MODULE_vue__.openBlock)(), (0, __WEBPACK_EXTERNAL_MODULE_vue__.createElementBlock)("div", _hoisted_9, [
5045
- (0, __WEBPACK_EXTERNAL_MODULE_vue__.createElementVNode)("span", _hoisted_10, (0, __WEBPACK_EXTERNAL_MODULE_vue__.toDisplayString)(bannerInfo.value?.inpatientStatusDesc ?? "--"), 1),
5046
- (0, __WEBPACK_EXTERNAL_MODULE_vue__.createElementVNode)("span", null, (0, __WEBPACK_EXTERNAL_MODULE_vue__.toDisplayString)(bannerInfo.value?.inpatientDays ?? "--"), 1)
5096
+ (0, __WEBPACK_EXTERNAL_MODULE_vue__.createElementVNode)("span", _hoisted_10, (0, __WEBPACK_EXTERNAL_MODULE_vue__.toDisplayString)(bannerInfo.value?.inpatientStatusDesc ?? '--'), 1),
5097
+ (0, __WEBPACK_EXTERNAL_MODULE_vue__.createElementVNode)("span", null, (0, __WEBPACK_EXTERNAL_MODULE_vue__.toDisplayString)(bannerInfo.value?.inpatientDays ?? '--'), 1)
5047
5098
  ])) : (0, __WEBPACK_EXTERNAL_MODULE_vue__.createCommentVNode)("", true)
5048
5099
  ])
5049
5100
  ]),
@@ -6179,7 +6230,7 @@ const print = async (params)=>{
6179
6230
  const receiptList = (0, __WEBPACK_EXTERNAL_MODULE_vue__.computed)(()=>__props.receiptList);
6180
6231
  const showReceipt = (0, __WEBPACK_EXTERNAL_MODULE_vue__.computed)(()=>receiptList && __props.receiptList.length > 0);
6181
6232
  /** 选择单据 */ const handleCommand = async (item)=>{
6182
- emits("selectItem", item);
6233
+ emits('selectItem', item);
6183
6234
  if (__props.isPrint) await handlePrint(item);
6184
6235
  };
6185
6236
  /** 打印单据 */ const handlePrint = async (item)=>{
@@ -6187,7 +6238,7 @@ const print = async (params)=>{
6187
6238
  ...__props.printParams,
6188
6239
  receiptId: item.receiptId
6189
6240
  });
6190
- res ? emits("success", res) : emits("fail");
6241
+ res ? emits('success', res) : emits('fail');
6191
6242
  };
6192
6243
  __expose({
6193
6244
  print: (item)=>handlePrint(item)
@@ -6296,6 +6347,9 @@ const table_selectvue_type_script_lang_ts_setup_true_generic_T_20extends_20Recor
6296
6347
  default: ()=>[]
6297
6348
  },
6298
6349
  placeholder: {},
6350
+ disabled: {
6351
+ type: Boolean
6352
+ },
6299
6353
  loading: {
6300
6354
  type: Boolean,
6301
6355
  default: false
@@ -7182,200 +7236,43 @@ const TAG_MARGIN = 1; // 1rem
7182
7236
  const tag_select_exports_ = tag_selectvue_type_script_lang_ts_setup_true;
7183
7237
  /* ESM default export */ const tag_select = tag_select_exports_;
7184
7238
  /**
7185
- * [1-10013-1]根据条件查询用户列表
7239
+ * [1-10661-1] 根据条件查询用户列表
7186
7240
  * @param params
7187
7241
  * @returns
7188
7242
  */ const api_queryUserList = (params)=>(0, __WEBPACK_EXTERNAL_MODULE__sun_toolkit_request__.dictRequest)('/user/queryUserSelectListByExample', params, {
7189
7243
  cancel: false
7190
7244
  });
7191
- /* ESM default export */ const user_selectvue_type_script_setup_true_lang_ts_name_UserSelect = /*@__PURE__*/ (0, __WEBPACK_EXTERNAL_MODULE_vue__.defineComponent)({
7192
- __name: 'index',
7193
- props: {
7194
- keyWord: {},
7195
- hospitalId: {},
7196
- userJobCodes: {},
7197
- bizUnitId: {},
7198
- userTypeCode: {},
7199
- multiSelectFlag: {
7200
- type: Boolean
7201
- },
7202
- defaultValue: {},
7203
- selectProps: {}
7204
- },
7205
- emits: [
7206
- 'change'
7207
- ],
7208
- setup (__props, { expose: __expose, emit: __emit }) {
7209
- const props = __props;
7210
- const attrs = (0, __WEBPACK_EXTERNAL_MODULE_vue__.useAttrs)();
7211
- const emit = __emit;
7212
- const selectRef = (0, __WEBPACK_EXTERNAL_MODULE_vue__.ref)();
7213
- const loading = (0, __WEBPACK_EXTERNAL_MODULE_vue__.ref)(false);
7214
- const filterKeyWord = (0, __WEBPACK_EXTERNAL_MODULE_vue__.ref)(''); // 检索值
7215
- const userList = (0, __WEBPACK_EXTERNAL_MODULE_vue__.ref)([]);
7216
- const defaultValueInserted = (0, __WEBPACK_EXTERNAL_MODULE_vue__.ref)(false);
7217
- const selectProps = (0, __WEBPACK_EXTERNAL_MODULE_vue__.ref)(props.selectProps || {});
7218
- const getUserList = async (data)=>{
7219
- loading.value = true;
7220
- const [, res] = await api_queryUserList({
7221
- ...data,
7222
- enabledFlag: __WEBPACK_EXTERNAL_MODULE__sun_toolkit_enums__.FLAG.YES,
7223
- userJobCodes: props.userJobCodes,
7224
- bizUnitId: props.bizUnitId,
7225
- userTypeCode: props.userTypeCode,
7226
- hospitalId: 'all' === props.hospitalId ? void 0 : props.hospitalId,
7227
- pageNumber: 1,
7228
- pageSize: __WEBPACK_EXTERNAL_MODULE__sun_toolkit_enums__.ONE_PAGE_SIZE
7229
- });
7230
- loading.value = false;
7231
- if (res?.success) {
7232
- let defaultList = [];
7233
- if (attrs.modelValue && Array.isArray(props.defaultValue) && props.defaultValue.length) // 兼容表单回显时的默认值缺失
7234
- defaultList = props.defaultValue.map((item)=>({
7235
- ...item,
7236
- userId: item.value || item.userId,
7237
- userName: item.label || item.userName
7238
- }));
7239
- let list = (res.data ?? []).map((item)=>({
7240
- ...item,
7241
- label: item.userName,
7242
- value: item.userId
7243
- }));
7244
- if (defaultList.length) list = (0, __WEBPACK_EXTERNAL_MODULE_lodash__.uniqBy)([
7245
- ...list,
7246
- ...defaultList
7247
- ], 'userId');
7248
- defaultValueInserted.value = true;
7249
- userList.value = list.map((item)=>({
7250
- ...item,
7251
- label: item.userNo ? `${item.label || item.userName}|${item.userNo}` : item.label || item.userName
7252
- }));
7253
- }
7254
- };
7255
- (0, __WEBPACK_EXTERNAL_MODULE_vue__.watch)(()=>props.defaultValue, ()=>{
7256
- if (attrs.modelValue && Array.isArray(props.defaultValue) && props.defaultValue.length && !defaultValueInserted.value) userList.value = [
7257
- ...props.defaultValue
7258
- ];
7259
- }, {
7260
- deep: true,
7261
- immediate: true
7262
- });
7263
- (0, __WEBPACK_EXTERNAL_MODULE_vue__.watch)(()=>props.selectProps, ()=>{
7264
- selectProps.value = props.selectProps || {};
7265
- }, {
7266
- deep: true,
7267
- immediate: true
7268
- });
7269
- const onChange = (value)=>{
7270
- if (attrs['onUpdate:modelValue']) attrs['onUpdate:modelValue'](value);
7271
- if (props.multiSelectFlag) emit('change', value);
7272
- else {
7273
- const user = userList.value.find((item)=>item.value === value || item.userId === value);
7274
- emit('change', value, user);
7275
- }
7276
- };
7277
- const handelRemoteMethod = async (value)=>{
7278
- if (filterKeyWord.value !== value) filterKeyWord.value = value || '';
7279
- else if (!value && userList.value.length) return;
7280
- try {
7281
- loading.value = true;
7282
- await getUserList({
7283
- keyWord: value
7284
- });
7285
- } finally{
7286
- loading.value = false;
7287
- }
7288
- };
7289
- const fetchData = async (data)=>{
7290
- await getUserList(data);
7291
- };
7292
- (0, __WEBPACK_EXTERNAL_MODULE_vue__.onMounted)(()=>{
7293
- (0, __WEBPACK_EXTERNAL_MODULE_vue__.nextTick)(async ()=>{
7294
- if (props.keyWord && selectRef.value) {
7295
- const inputEl = selectRef.value?.$el.querySelector('input');
7296
- if (inputEl) {
7297
- inputEl.value = props.keyWord;
7298
- // 创建 input 事件模拟用户输入
7299
- const event = new Event('input', {
7300
- bubbles: true
7301
- });
7302
- inputEl.dispatchEvent(event);
7303
- }
7304
- }
7305
- await fetchData();
7306
- });
7307
- });
7308
- __expose({
7309
- selectRef,
7310
- defaultValueInserted,
7311
- userList,
7312
- fetchData
7313
- });
7314
- return (_ctx, _cache)=>{
7315
- const _component_el_option = (0, __WEBPACK_EXTERNAL_MODULE_vue__.resolveComponent)("el-option");
7316
- const _component_el_select = (0, __WEBPACK_EXTERNAL_MODULE_vue__.resolveComponent)("el-select");
7317
- return (0, __WEBPACK_EXTERNAL_MODULE_vue__.openBlock)(), (0, __WEBPACK_EXTERNAL_MODULE_vue__.createBlock)(_component_el_select, (0, __WEBPACK_EXTERNAL_MODULE_vue__.mergeProps)({
7318
- ref_key: "selectRef",
7319
- ref: selectRef,
7320
- remote: "",
7321
- clearable: "",
7322
- filterable: "",
7323
- loading: loading.value,
7324
- multiple: !!props.multiSelectFlag,
7325
- "remote-method": handelRemoteMethod,
7326
- onClear: _cache[0] || (_cache[0] = ($event)=>userList.value = []),
7327
- onChange: onChange
7328
- }, selectProps.value), {
7329
- label: (0, __WEBPACK_EXTERNAL_MODULE_vue__.withCtx)(({ label })=>[
7330
- (0, __WEBPACK_EXTERNAL_MODULE_vue__.createElementVNode)("span", null, (0, __WEBPACK_EXTERNAL_MODULE_vue__.toDisplayString)(label?.split('|')?.[0]), 1)
7331
- ]),
7332
- default: (0, __WEBPACK_EXTERNAL_MODULE_vue__.withCtx)(()=>[
7333
- ((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)(userList.value, (item)=>((0, __WEBPACK_EXTERNAL_MODULE_vue__.openBlock)(), (0, __WEBPACK_EXTERNAL_MODULE_vue__.createBlock)(_component_el_option, {
7334
- key: item.value || item.userId,
7335
- label: item.label || item.userName,
7336
- value: item.value || item.userId
7337
- }, null, 8, [
7338
- "label",
7339
- "value"
7340
- ]))), 128))
7341
- ]),
7342
- _: 1
7343
- }, 16, [
7344
- "loading",
7345
- "multiple"
7346
- ]);
7347
- };
7245
+ const user_selectvue_type_script_lang_tsx_name_UserSelect_setup_true_hoisted_1 = {
7246
+ class: "flex flex-col",
7247
+ style: {
7248
+ "min-width": "500px"
7348
7249
  }
7349
- });
7350
- const user_select_exports_ = user_selectvue_type_script_setup_true_lang_ts_name_UserSelect;
7351
- /* ESM default export */ const user_select = user_select_exports_;
7352
- /**
7353
- * [1-10155-1] 根据条件查询业务单元列表
7354
- * 是否分页 Y
7355
- * @param params
7356
- * @returns
7357
- */ const queryBizUnitList = (params)=>(0, __WEBPACK_EXTERNAL_MODULE__sun_toolkit_request__.dictRequest)('/organization/queryBizUnitListByExample', params);
7250
+ };
7251
+ const user_selectvue_type_script_lang_tsx_name_UserSelect_setup_true_hoisted_2 = {
7252
+ class: "border-t pt-2 px-2"
7253
+ };
7358
7254
  // 全局事件:用于关闭其他实例的 popover
7359
- const CLOSE_OTHER_POPOVERS_EVENT = 'biz-unit-select:close-others'; /*
7360
- 96-10014-1 业务单元选择组件
7361
- 1、调用“1-10516-1 根据条件查询业务单元列表”传入“启用标志=1、关键字、医院标识=入参:医院标识、科室类型代码集合、就诊类型代码”查询业务单元列表
7362
- 2、展示列包括“组织类型、编码、名称”
7255
+ const CLOSE_OTHER_POPOVERS_EVENT = 'user-select:close-others'; /*
7256
+ 调用"1-10013-1 根据条件查询用户列表"传入"启用标志=1、关键字、医院标识
7257
+ 入参:医院标识、用户岗位代码集合、服务业务单元标识、用户类别代码"查询用户列表
7363
7258
  */
7364
- /* ESM default export */ const biz_unit_selectvue_type_script_lang_tsx_name_BizUnitSelect_setup_true = /*@__PURE__*/ (0, __WEBPACK_EXTERNAL_MODULE_vue__.defineComponent)({
7259
+ /* ESM default export */ const user_selectvue_type_script_lang_tsx_name_UserSelect_setup_true = /*@__PURE__*/ (0, __WEBPACK_EXTERNAL_MODULE_vue__.defineComponent)({
7365
7260
  __name: 'index',
7366
7261
  props: {
7367
7262
  keyWord: {},
7368
7263
  hospitalId: {},
7369
- orgTypeCodes: {},
7264
+ userJobCodes: {},
7265
+ bizUnitId: {},
7266
+ userTypeCode: {},
7370
7267
  multiSelectFlag: {
7371
7268
  type: Boolean
7372
7269
  },
7373
7270
  defaultValue: {},
7374
- encounterTypeCode: {},
7375
7271
  disabledValueIds: {},
7376
- deptId: {},
7377
7272
  tableProps: {},
7378
- selectProps: {}
7273
+ selectProps: {},
7274
+ onlyEnabledFlag: {},
7275
+ allowSelectDisabledFlag: {}
7379
7276
  },
7380
7277
  emits: [
7381
7278
  'change'
@@ -7397,14 +7294,20 @@ const CLOSE_OTHER_POPOVERS_EVENT = 'biz-unit-select:close-others'; /*
7397
7294
  const loading = (0, __WEBPACK_EXTERNAL_MODULE_vue__.ref)(false);
7398
7295
  const popoverVisible = (0, __WEBPACK_EXTERNAL_MODULE_vue__.ref)(false);
7399
7296
  const currentRowIndex = (0, __WEBPACK_EXTERNAL_MODULE_vue__.ref)(0);
7400
- const clearing = (0, __WEBPACK_EXTERNAL_MODULE_vue__.ref)(false);
7401
- const bizUnitList = (0, __WEBPACK_EXTERNAL_MODULE_vue__.ref)([]); // 业务单元列表
7297
+ const clearing = (0, __WEBPACK_EXTERNAL_MODULE_vue__.ref)(false); // 仅查启用:默认为 true
7298
+ const onlyEnabled = (0, __WEBPACK_EXTERNAL_MODULE_vue__.ref)(true); // 根据 onlyEnabledFlag 初始化,只有明确传 FLAG.NO(0) 时才不勾选
7299
+ (0, __WEBPACK_EXTERNAL_MODULE_vue__.watch)(()=>props.onlyEnabledFlag, (val)=>{
7300
+ onlyEnabled.value = val !== __WEBPACK_EXTERNAL_MODULE__sun_toolkit_enums__.FLAG.NO;
7301
+ }, {
7302
+ immediate: true
7303
+ });
7304
+ const userList = (0, __WEBPACK_EXTERNAL_MODULE_vue__.ref)([]); // 用户列表
7402
7305
  const selectedValue = (0, __WEBPACK_EXTERNAL_MODULE_vue__.ref)(); // select组件绑定的选中的值
7403
7306
  const selectedRows = (0, __WEBPACK_EXTERNAL_MODULE_vue__.ref)([]); // table表格选中的值
7404
7307
  const defaultSetTableSelected = (0, __WEBPACK_EXTERNAL_MODULE_vue__.ref)(false); // 传入的默认数据已经绑定到表格中
7405
7308
  const initComponentData = ()=>{
7406
7309
  popoverVisible.value = false;
7407
- bizUnitList.value = [];
7310
+ userList.value = [];
7408
7311
  selectedValue.value = void 0;
7409
7312
  selectedRows.value = [];
7410
7313
  handleChange();
@@ -7412,7 +7315,7 @@ const CLOSE_OTHER_POPOVERS_EVENT = 'biz-unit-select:close-others'; /*
7412
7315
  (0, __WEBPACK_EXTERNAL_MODULE_vue__.watch)(()=>attrs?.modelValue, (newVal)=>{
7413
7316
  if (newVal) {
7414
7317
  if (!props.multiSelectFlag) {
7415
- const item = bizUnitList.value.find((item)=>item.value === newVal);
7318
+ const item = userList.value.find((item)=>item.value === newVal);
7416
7319
  if (item?.label && selectedValue.value !== item.label) {
7417
7320
  selectedValue.value = item.label;
7418
7321
  selectedRows.value = [
@@ -7441,12 +7344,12 @@ const CLOSE_OTHER_POPOVERS_EVENT = 'biz-unit-select:close-others'; /*
7441
7344
  if (attrs.modelValue && Array.isArray(props.defaultValue) && props.defaultValue.length && !defaultSetTableSelected.value) {
7442
7345
  const list = props.defaultValue.map((item)=>({
7443
7346
  ...item,
7444
- orgId: item.value || item.orgId,
7445
- orgNameDisplay: item.label || item.orgNameDisplay,
7446
- value: item.value || item.orgId,
7447
- label: item.label || item.orgNameDisplay
7347
+ userId: item.value || item.userId,
7348
+ userName: item.label || item.userName,
7349
+ value: item.value || item.userId,
7350
+ label: item.label || item.userName
7448
7351
  }));
7449
- bizUnitList.value = [
7352
+ userList.value = [
7450
7353
  ...list
7451
7354
  ];
7452
7355
  }
@@ -7454,7 +7357,7 @@ const CLOSE_OTHER_POPOVERS_EVENT = 'biz-unit-select:close-others'; /*
7454
7357
  deep: true,
7455
7358
  immediate: true
7456
7359
  });
7457
- (0, __WEBPACK_EXTERNAL_MODULE_vue__.watch)(()=>props.orgTypeCodes, (newVal, oldVal)=>{
7360
+ (0, __WEBPACK_EXTERNAL_MODULE_vue__.watch)(()=>props.userJobCodes, (newVal, oldVal)=>{
7458
7361
  if (newVal && !(0, __WEBPACK_EXTERNAL_MODULE__sun_toolkit_shared__.isEqual)(oldVal, newVal)) initComponentData();
7459
7362
  });
7460
7363
  const tableConfig = useColumnConfig({
@@ -7464,43 +7367,651 @@ const CLOSE_OTHER_POPOVERS_EVENT = 'biz-unit-select:close-others'; /*
7464
7367
  prop: 'indexNo',
7465
7368
  type: 'selection',
7466
7369
  isHidden: !props.multiSelectFlag,
7467
- selectable: (row)=>!(props.disabledValueIds?.length && row.orgId && props.disabledValueIds.includes(row.orgId)) && true
7370
+ selectable: (row)=>{
7371
+ if (props.disabledValueIds?.length && row.userId && props.disabledValueIds.includes(row.userId)) return false;
7372
+ // 检查是否允许选择停用数据(默认不允许)
7373
+ if (props.allowSelectDisabledFlag !== __WEBPACK_EXTERNAL_MODULE__sun_toolkit_enums__.FLAG.YES && row.enabledFlag !== __WEBPACK_EXTERNAL_MODULE__sun_toolkit_enums__.FLAG.YES) return false;
7374
+ return true;
7375
+ }
7468
7376
  },
7469
7377
  {
7470
- label: t('bizUnitSelect.table.orgNo', '编码'),
7471
- prop: 'orgNo',
7472
- minWidth: 100
7378
+ label: t('userSelect.table.userNo', '用户编码'),
7379
+ prop: 'userNo',
7380
+ minWidth: 120
7473
7381
  },
7474
7382
  {
7475
- label: t('bizUnitSelect.table.orgNameDisplay', '名称'),
7476
- prop: 'orgNameDisplay',
7477
- minWidth: 200
7383
+ label: t('userSelect.table.userName', '用户名称'),
7384
+ prop: 'userName',
7385
+ minWidth: 120
7478
7386
  },
7479
7387
  {
7480
- label: t('bizUnitSelect.table.orgTypeDescDisplay', '组织类型'),
7481
- prop: 'orgTypeDescDisplay',
7482
- minWidth: 100
7388
+ label: t('userSelect.table.userJobDesc', '用户岗位'),
7389
+ prop: 'userJobDesc',
7390
+ minWidth: 120
7391
+ },
7392
+ {
7393
+ label: t('userSelect.table.enabledFlag', '状态'),
7394
+ prop: 'enabledFlag',
7395
+ minWidth: 80,
7396
+ render: (row)=>{
7397
+ const isDisabled = row.enabledFlag !== __WEBPACK_EXTERNAL_MODULE__sun_toolkit_enums__.FLAG.YES;
7398
+ const statusText = isDisabled ? t('userSelect.status.disabled', '停用') : t('userSelect.status.enabled', '启用'); // 如果不允许选择停用数据且当前记录为停用,显示红色 tooltip(默认不允许)
7399
+ if (props.allowSelectDisabledFlag !== __WEBPACK_EXTERNAL_MODULE__sun_toolkit_enums__.FLAG.YES && isDisabled) return (0, __WEBPACK_EXTERNAL_MODULE_vue__.createVNode)((0, __WEBPACK_EXTERNAL_MODULE_vue__.resolveComponent)("el-tooltip"), {
7400
+ content: t('userSelect.errorTip.disabledUserSelectedTip', '已停用不可选!'),
7401
+ placement: "top",
7402
+ effect: "light",
7403
+ "popper-class": "disabled-user-tooltip"
7404
+ }, {
7405
+ default: ()=>[
7406
+ (0, __WEBPACK_EXTERNAL_MODULE_vue__.createVNode)("span", {
7407
+ style: "color: #f56c6c"
7408
+ }, [
7409
+ statusText
7410
+ ])
7411
+ ]
7412
+ }, 8, [
7413
+ "content"
7414
+ ]);
7415
+ return statusText;
7416
+ }
7483
7417
  }
7484
7418
  ]
7485
7419
  });
7486
7420
  const getRowClassName = (data)=>{
7487
- if (props.disabledValueIds?.length && data.row.orgId && props.disabledValueIds.includes(data.row.orgId)) return 'cursor-not-allowed !bg-gray-100 text-gray-300';
7421
+ if (props.disabledValueIds?.length && data.row.userId && props.disabledValueIds.includes(data.row.userId)) return 'cursor-not-allowed !bg-gray-100 text-gray-300';
7422
+ // 检查是否允许选择停用数据(默认不允许)
7423
+ if (props.allowSelectDisabledFlag !== __WEBPACK_EXTERNAL_MODULE__sun_toolkit_enums__.FLAG.YES && data.row.enabledFlag !== __WEBPACK_EXTERNAL_MODULE__sun_toolkit_enums__.FLAG.YES) return 'cursor-not-allowed !bg-gray-100 text-gray-300 disabled-row';
7488
7424
  return 'cursor-pointer';
7489
7425
  };
7490
- const getBizUnitList = async (data)=>{
7426
+ const getUserList = async (data)=>{
7491
7427
  loading.value = true;
7492
- const [, res] = await queryBizUnitList({
7428
+ const [, res] = await api_queryUserList({
7493
7429
  ...data,
7494
- hospitalId: props.hospitalId,
7495
- orgTypeCodes: props.orgTypeCodes,
7496
- enabledFlag: __WEBPACK_EXTERNAL_MODULE__sun_toolkit_enums__.FLAG.YES,
7497
- encounterTypeCode: props.encounterTypeCode,
7498
- deptId: props.deptId
7499
- });
7500
- loading.value = false;
7501
- if (res?.success) {
7502
- let defaultList = [];
7503
- if (attrs.modelValue && Array.isArray(props.defaultValue) && props.defaultValue.length && !data?.keyWord) defaultList = props.defaultValue.map((item)=>({
7430
+ hospitalId: 'all' === props.hospitalId ? void 0 : props.hospitalId,
7431
+ userJobCodes: props.userJobCodes,
7432
+ bizUnitId: props.bizUnitId,
7433
+ userTypeCode: props.userTypeCode,
7434
+ enabledFlag: onlyEnabled.value ? __WEBPACK_EXTERNAL_MODULE__sun_toolkit_enums__.FLAG.YES : void 0,
7435
+ pageNumber: 1,
7436
+ pageSize: __WEBPACK_EXTERNAL_MODULE__sun_toolkit_enums__.ONE_PAGE_SIZE
7437
+ });
7438
+ loading.value = false;
7439
+ if (res?.success) {
7440
+ let list = (res.data ?? []).map((item)=>({
7441
+ ...item,
7442
+ label: item.userName,
7443
+ value: item.userId
7444
+ })); // 保留已选中的项,确保选中状态能正确回显
7445
+ if (selectedRows.value?.length) {
7446
+ const selectedList = selectedRows.value.map((item)=>({
7447
+ ...item,
7448
+ userId: item.value || item.userId,
7449
+ userName: item.label || item.userName,
7450
+ value: item.value || item.userId,
7451
+ label: item.label || item.userName
7452
+ }));
7453
+ list = (0, __WEBPACK_EXTERNAL_MODULE_lodash__.uniqBy)([
7454
+ ...list,
7455
+ ...selectedList
7456
+ ], 'userId');
7457
+ } else if (attrs.modelValue && Array.isArray(props.defaultValue) && props.defaultValue.length) {
7458
+ const defaultList = props.defaultValue.map((item)=>({
7459
+ ...item,
7460
+ userId: item.value || item.userId,
7461
+ userName: item.label || item.userName,
7462
+ value: item.value || item.userId,
7463
+ label: item.label || item.userName
7464
+ }));
7465
+ list = (0, __WEBPACK_EXTERNAL_MODULE_lodash__.uniqBy)([
7466
+ ...list,
7467
+ ...defaultList
7468
+ ], 'userId');
7469
+ }
7470
+ userList.value = list;
7471
+ currentRowIndex.value = -1;
7472
+ tableRef.value?.eleTable?.setCurrentRow?.(void 0);
7473
+ if (userList.value.length && props.multiSelectFlag && selectedRows.value?.length && !defaultSetTableSelected.value) {
7474
+ const list = (0, __WEBPACK_EXTERNAL_MODULE__sun_toolkit_shared__.cloneDeep)(selectedRows.value);
7475
+ tableRef.value?.eleTable?.clearSelection();
7476
+ userList.value.forEach((item)=>{
7477
+ if (list.some((row)=>row.userId === item.value || row.value === item.value)) tableRef.value?.eleTable?.toggleRowSelection(item, true);
7478
+ });
7479
+ }
7480
+ defaultSetTableSelected.value = true;
7481
+ }
7482
+ const tableSelectedRows = tableRef.value?.eleTable?.getSelectionRows();
7483
+ if (props.multiSelectFlag && !selectedRows.value?.length && tableSelectedRows?.length) tableRef.value?.eleTable?.clearSelection();
7484
+ };
7485
+ const handleChange = ()=>{
7486
+ let value = selectedRows.value.map((item)=>item.value || item.userId);
7487
+ if (attrs['onUpdate:modelValue']) attrs['onUpdate:modelValue'](props.multiSelectFlag ? value : value[0]);
7488
+ if (props.multiSelectFlag) emit('change', value, selectedRows.value);
7489
+ else {
7490
+ const data = value[0] ? userList.value.find((item)=>item.value === value[0] || item.userId === value[0]) : void 0;
7491
+ emit('change', value[0], data);
7492
+ }
7493
+ };
7494
+ const handelRemoteMethod = (0, __WEBPACK_EXTERNAL_MODULE__sun_toolkit_shared__.debounce)(async function(value) {
7495
+ await getUserList({
7496
+ keyWord: value
7497
+ });
7498
+ }, 500); // 滚动到当前选中行
7499
+ const scrollToCurrentRow = ()=>{
7500
+ setTimeout(()=>{
7501
+ if (currentRowIndex.value < 0) return;
7502
+ try {
7503
+ const tableElement = tableRef.value?.eleTable?.$el;
7504
+ if (!tableElement) return; // 查找当前高亮的行
7505
+ const currentRowElement = tableElement.querySelector('.el-table__body tr.current-row');
7506
+ if (!currentRowElement) return; // 使用 scrollIntoView 方法滚动到当前行
7507
+ currentRowElement.scrollIntoView({
7508
+ block: 'nearest',
7509
+ behavior: 'smooth'
7510
+ });
7511
+ } catch (error) {
7512
+ console.error('Error scrolling to current row:', error);
7513
+ }
7514
+ }, 100);
7515
+ }; // 键盘事件
7516
+ const handleKeydown = (e)=>{
7517
+ if (!userList.value.length || !popoverVisible.value) return;
7518
+ if ('ArrowDown' === e.key) {
7519
+ e.preventDefault();
7520
+ if (currentRowIndex.value < userList.value.length - 1) {
7521
+ currentRowIndex.value++;
7522
+ const row = userList.value[currentRowIndex.value];
7523
+ tableRef.value.eleTable?.setCurrentRow(row);
7524
+ scrollToCurrentRow();
7525
+ }
7526
+ } else if ('ArrowUp' === e.key) {
7527
+ e.preventDefault();
7528
+ if (currentRowIndex.value > 0) {
7529
+ currentRowIndex.value--;
7530
+ const row = userList.value[currentRowIndex.value];
7531
+ tableRef.value.eleTable?.setCurrentRow(row);
7532
+ scrollToCurrentRow();
7533
+ }
7534
+ } else if ('Enter' === e.key && currentRowIndex.value >= 0) {
7535
+ const row = userList.value[currentRowIndex.value];
7536
+ if (props.multiSelectFlag) tableRef.value.eleTable?.toggleRowSelection(row);
7537
+ else {
7538
+ setTimeout(()=>{
7539
+ selectRef.value?.blur();
7540
+ }, 30);
7541
+ handleTableRowSelect(row);
7542
+ }
7543
+ }
7544
+ };
7545
+ const handleTagRemove = (tag)=>{
7546
+ (0, __WEBPACK_EXTERNAL_MODULE_vue__.nextTick)(()=>{
7547
+ if (!selectedRows.value.length) return;
7548
+ const index = selectedRows.value?.findIndex((item)=>item.label === tag);
7549
+ if (-1 !== index) {
7550
+ selectedRows.value.splice(index, 1);
7551
+ const list = (0, __WEBPACK_EXTERNAL_MODULE__sun_toolkit_shared__.cloneDeep)(selectedRows.value);
7552
+ tableRef.value?.eleTable?.clearSelection();
7553
+ list.forEach((row)=>tableRef.value?.eleTable?.toggleRowSelection(row, true)); // 修复:显式调用 handleChange 确保更新事件被触发
7554
+ // 特别是在删除最后一个选项时,table 的 selection-change 可能不会触发
7555
+ handleChange();
7556
+ }
7557
+ });
7558
+ };
7559
+ const handleClear = ()=>{
7560
+ (0, __WEBPACK_EXTERNAL_MODULE_vue__.nextTick)(()=>{
7561
+ if (!popoverVisible.value) {
7562
+ clearing.value = true;
7563
+ const inputEl = selectRef.value?.$el?.querySelector('input');
7564
+ if (inputEl) inputEl.blur();
7565
+ }
7566
+ handleBlur();
7567
+ selectedRows.value = [];
7568
+ selectedValue.value = props.multiSelectFlag ? [] : '';
7569
+ tableRef.value?.eleTable?.clearSelection?.();
7570
+ tableRef.value?.eleTable?.setCurrentRow?.(void 0);
7571
+ getUserList();
7572
+ handleChange();
7573
+ });
7574
+ };
7575
+ const handleFocus = ()=>{
7576
+ setTimeout(()=>{
7577
+ if (clearing.value) return;
7578
+ // 通知其他实例关闭 popover
7579
+ window.dispatchEvent(new CustomEvent(CLOSE_OTHER_POPOVERS_EVENT, {
7580
+ detail: {
7581
+ componentId
7582
+ }
7583
+ }));
7584
+ popoverVisible.value = true;
7585
+ }, 100);
7586
+ };
7587
+ const handleBlur = ()=>{
7588
+ if (clearing.value) {
7589
+ setTimeout(()=>{
7590
+ clearing.value = false;
7591
+ }, 150);
7592
+ return;
7593
+ }
7594
+ if (!props.multiSelectFlag) popoverVisible.value = false;
7595
+ };
7596
+ const handleClickOutside = (e)=>{
7597
+ const target = e.target;
7598
+ const selectEl = selectRef.value?.$el;
7599
+ const popoverEl = popoverRef.value?.popperRef?.contentRef; // 检查是否点击了当前组件的元素
7600
+ if (selectEl?.contains(target) || popoverEl?.contains(target)) return;
7601
+ // 检查是否点击了其他 el-select 或其下拉框
7602
+ let element = target;
7603
+ while(element){
7604
+ if (element.classList?.contains('el-select') || element.classList?.contains('el-select-dropdown') || element.classList?.contains('el-popper') || element.classList?.contains('el-picker-panel') || element.classList?.contains('el-date-picker') || element.classList?.contains('el-time-picker')) {
7605
+ popoverVisible.value = false;
7606
+ return;
7607
+ }
7608
+ element = element.parentElement;
7609
+ } // 点击了其他地方,关闭 popover
7610
+ popoverVisible.value = false;
7611
+ }; // 监听 el-select 的 focus 事件来关闭当前 popover
7612
+ const handleGlobalFocusin = (e)=>{
7613
+ if (!popoverVisible.value) return;
7614
+ const target = e.target;
7615
+ const selectEl = selectRef.value?.$el;
7616
+ const popoverEl = popoverRef.value?.popperRef?.contentRef; // 如果焦点移到了其他元素(如其他 el-select),则关闭当前 popover
7617
+ if (!selectEl?.contains(target) && !popoverEl?.contains(target)) {
7618
+ let element = target;
7619
+ while(element){
7620
+ if (element.classList?.contains('el-select') || element.classList?.contains('el-input')) {
7621
+ popoverVisible.value = false;
7622
+ return;
7623
+ }
7624
+ element = element.parentElement;
7625
+ }
7626
+ }
7627
+ };
7628
+ (0, __WEBPACK_EXTERNAL_MODULE_vue__.watch)(()=>popoverVisible.value, (val)=>{
7629
+ if (val) {
7630
+ document.addEventListener('keydown', handleKeydown, true);
7631
+ document.addEventListener('click', handleClickOutside);
7632
+ document.addEventListener('focusin', handleGlobalFocusin, true);
7633
+ } else {
7634
+ document.removeEventListener('keydown', handleKeydown, true);
7635
+ document.removeEventListener('click', handleClickOutside);
7636
+ document.removeEventListener('focusin', handleGlobalFocusin, true);
7637
+ }
7638
+ });
7639
+ const handleTableRowSelect = (data)=>{
7640
+ if (data) {
7641
+ if (props.disabledValueIds?.length && data.userId && props.disabledValueIds.includes(data.userId)) {
7642
+ __WEBPACK_EXTERNAL_MODULE_element_sun__.ElMessage.warning(t('userSelect.errorTip.disabledRowSelectedTip', '当前数据不可选择!'));
7643
+ return;
7644
+ } // 检查是否允许选择停用数据(默认不允许)
7645
+ if (props.allowSelectDisabledFlag !== __WEBPACK_EXTERNAL_MODULE__sun_toolkit_enums__.FLAG.YES && data.enabledFlag !== __WEBPACK_EXTERNAL_MODULE__sun_toolkit_enums__.FLAG.YES) {
7646
+ __WEBPACK_EXTERNAL_MODULE_element_sun__.ElMessage.warning(t('userSelect.errorTip.disabledUserSelectedTip', '已停用不可选!'));
7647
+ return;
7648
+ }
7649
+ }
7650
+ if (props.multiSelectFlag) {
7651
+ tableRef.value?.eleTable?.toggleRowSelection(data);
7652
+ return;
7653
+ }
7654
+ selectedValue.value = data?.label || data?.userName;
7655
+ selectedRows.value = data ? [
7656
+ data
7657
+ ] : [];
7658
+ if (data) popoverVisible.value = false;
7659
+ handleChange();
7660
+ };
7661
+ const handleSelectionChange = (items)=>{
7662
+ selectedRows.value = items;
7663
+ selectedValue.value = items.map((row)=>row.label || row.userName);
7664
+ handleChange();
7665
+ };
7666
+ const handlePopoverShow = ()=>{
7667
+ window.dispatchEvent(new CustomEvent(CLOSE_OTHER_POPOVERS_EVENT, {
7668
+ detail: {
7669
+ componentId
7670
+ }
7671
+ }));
7672
+ }; // 监听其他实例的关闭事件
7673
+ const handleCloseOtherPopovers = (event)=>{
7674
+ const customEvent = event;
7675
+ if (customEvent.detail?.componentId !== componentId) popoverVisible.value = false;
7676
+ }; // 处理仅查启用复选框变化
7677
+ const handleOnlyEnabledChange = async ()=>{
7678
+ await getUserList();
7679
+ };
7680
+ (0, __WEBPACK_EXTERNAL_MODULE_vue__.onBeforeUnmount)(()=>{
7681
+ document.removeEventListener('keydown', handleKeydown, true);
7682
+ document.removeEventListener('click', handleClickOutside);
7683
+ document.removeEventListener('focusin', handleGlobalFocusin, true);
7684
+ window.removeEventListener(CLOSE_OTHER_POPOVERS_EVENT, handleCloseOtherPopovers);
7685
+ });
7686
+ const fetchData = async (data)=>{
7687
+ await getUserList(data);
7688
+ };
7689
+ (0, __WEBPACK_EXTERNAL_MODULE_vue__.onMounted)(()=>{
7690
+ window.addEventListener(CLOSE_OTHER_POPOVERS_EVENT, handleCloseOtherPopovers);
7691
+ (0, __WEBPACK_EXTERNAL_MODULE_vue__.nextTick)(async ()=>{
7692
+ if (attrs.modelValue && Array.isArray(props.defaultValue) && props.defaultValue?.length) {
7693
+ if (props.multiSelectFlag) selectedValue.value = props.defaultValue.map((item)=>item.label || item.userName);
7694
+ else {
7695
+ const data = props.defaultValue.find((item)=>item.userId === attrs.modelValue || item.value === attrs.modelValue);
7696
+ selectedValue.value = data?.label || data?.userName;
7697
+ }
7698
+ selectedRows.value = props.defaultValue;
7699
+ defaultSetTableSelected.value = false;
7700
+ } else {
7701
+ selectedValue.value = props.multiSelectFlag ? [] : void 0;
7702
+ selectedRows.value = [];
7703
+ }
7704
+ if (props.keyWord && selectRef.value) {
7705
+ const inputEl = selectRef.value?.$el.querySelector('input');
7706
+ if (inputEl) {
7707
+ inputEl.value = props.keyWord; // 创建 input 事件模拟用户输入
7708
+ const event = new Event('input', {
7709
+ bubbles: true
7710
+ });
7711
+ inputEl.dispatchEvent(event);
7712
+ }
7713
+ }
7714
+ await fetchData();
7715
+ if (attrs?.modelValue && (!props.defaultValue || Array.isArray(props.defaultValue) && !props.defaultValue.length)) {
7716
+ if (props.multiSelectFlag) {
7717
+ const items = userList.value.filter((item)=>attrs.modelValue?.includes(item.value));
7718
+ selectedValue.value = items.map((item)=>item.label || item.userName);
7719
+ selectedRows.value = items;
7720
+ } else {
7721
+ const item = userList.value.find((item)=>item.value === attrs?.modelValue);
7722
+ if (item?.label && selectedValue.value !== item.label) {
7723
+ selectedValue.value = item.label;
7724
+ selectedRows.value = [
7725
+ item
7726
+ ];
7727
+ }
7728
+ }
7729
+ defaultSetTableSelected.value = false;
7730
+ }
7731
+ });
7732
+ });
7733
+ const onClickOutside = ()=>{
7734
+ handleBlur();
7735
+ };
7736
+ const visibleChange = (val)=>{
7737
+ if (val) handleFocus();
7738
+ };
7739
+ __expose({
7740
+ popoverRef,
7741
+ tableRef,
7742
+ selectRef,
7743
+ popoverVisible,
7744
+ defaultSetTableSelected,
7745
+ userList,
7746
+ fetchData
7747
+ });
7748
+ return (_ctx, _cache)=>{
7749
+ const _component_el_checkbox = (0, __WEBPACK_EXTERNAL_MODULE_vue__.resolveComponent)("el-checkbox");
7750
+ const _component_el_select = (0, __WEBPACK_EXTERNAL_MODULE_vue__.resolveComponent)("el-select");
7751
+ const _component_el_popover = (0, __WEBPACK_EXTERNAL_MODULE_vue__.resolveComponent)("el-popover");
7752
+ return (0, __WEBPACK_EXTERNAL_MODULE_vue__.openBlock)(), (0, __WEBPACK_EXTERNAL_MODULE_vue__.createElementBlock)("div", {
7753
+ onKeydown: handleKeydown
7754
+ }, [
7755
+ (0, __WEBPACK_EXTERNAL_MODULE_vue__.createVNode)(_component_el_popover, {
7756
+ ref_key: "popoverRef",
7757
+ ref: popoverRef,
7758
+ visible: popoverVisible.value,
7759
+ placement: "bottom",
7760
+ trigger: "click",
7761
+ width: 600,
7762
+ onShow: handlePopoverShow
7763
+ }, {
7764
+ reference: (0, __WEBPACK_EXTERNAL_MODULE_vue__.withCtx)(()=>[
7765
+ (0, __WEBPACK_EXTERNAL_MODULE_vue__.createVNode)(_component_el_select, (0, __WEBPACK_EXTERNAL_MODULE_vue__.mergeProps)({
7766
+ ref_key: "selectRef",
7767
+ ref: selectRef,
7768
+ modelValue: selectedValue.value,
7769
+ "onUpdate:modelValue": _cache[1] || (_cache[1] = ($event)=>selectedValue.value = $event),
7770
+ "collapse-tags": !!props.multiSelectFlag,
7771
+ multiple: !!props.multiSelectFlag,
7772
+ options: [],
7773
+ placeholder: "请选择用户",
7774
+ "popper-class": popoverVisible.value ? 'hidden' : '',
7775
+ "remote-method": (0, __WEBPACK_EXTERNAL_MODULE_vue__.unref)(handelRemoteMethod),
7776
+ teleported: !popoverVisible.value,
7777
+ clearable: "",
7778
+ "collapse-tags-tooltip": "",
7779
+ filterable: "",
7780
+ remote: "",
7781
+ "remote-show-suffix": "",
7782
+ loading: loading.value
7783
+ }, selectProps.value, {
7784
+ onVisibleChange: visibleChange,
7785
+ onClear: handleClear,
7786
+ onRemoveTag: handleTagRemove
7787
+ }), null, 16, [
7788
+ "modelValue",
7789
+ "collapse-tags",
7790
+ "multiple",
7791
+ "popper-class",
7792
+ "remote-method",
7793
+ "teleported",
7794
+ "loading"
7795
+ ])
7796
+ ]),
7797
+ default: (0, __WEBPACK_EXTERNAL_MODULE_vue__.withCtx)(()=>[
7798
+ (0, __WEBPACK_EXTERNAL_MODULE_vue__.withDirectives)(((0, __WEBPACK_EXTERNAL_MODULE_vue__.openBlock)(), (0, __WEBPACK_EXTERNAL_MODULE_vue__.createElementBlock)("div", user_selectvue_type_script_lang_tsx_name_UserSelect_setup_true_hoisted_1, [
7799
+ (0, __WEBPACK_EXTERNAL_MODULE_vue__.createElementVNode)("div", {
7800
+ style: (0, __WEBPACK_EXTERNAL_MODULE_vue__.normalizeStyle)({
7801
+ height: `${tableProps.value.maxHeight || 260}px`
7802
+ }),
7803
+ class: "w-full overflow-hidden"
7804
+ }, [
7805
+ (0, __WEBPACK_EXTERNAL_MODULE_vue__.createVNode)((0, __WEBPACK_EXTERNAL_MODULE_vue__.unref)(pro_table), (0, __WEBPACK_EXTERNAL_MODULE_vue__.mergeProps)({
7806
+ ref_key: "tableRef",
7807
+ ref: tableRef,
7808
+ columns: (0, __WEBPACK_EXTERNAL_MODULE_vue__.unref)(tableConfig),
7809
+ data: userList.value,
7810
+ loading: loading.value,
7811
+ pagination: false,
7812
+ "row-class-name": getRowClassName,
7813
+ "highlight-current-row": "",
7814
+ "row-key": "userId",
7815
+ style: {
7816
+ height: "100%"
7817
+ }
7818
+ }, tableProps.value, {
7819
+ onRowClick: handleTableRowSelect,
7820
+ onSelectionChange: handleSelectionChange
7821
+ }), null, 16, [
7822
+ "columns",
7823
+ "data",
7824
+ "loading"
7825
+ ])
7826
+ ], 4),
7827
+ (0, __WEBPACK_EXTERNAL_MODULE_vue__.createElementVNode)("div", user_selectvue_type_script_lang_tsx_name_UserSelect_setup_true_hoisted_2, [
7828
+ (0, __WEBPACK_EXTERNAL_MODULE_vue__.createVNode)(_component_el_checkbox, {
7829
+ modelValue: onlyEnabled.value,
7830
+ "onUpdate:modelValue": _cache[0] || (_cache[0] = ($event)=>onlyEnabled.value = $event),
7831
+ disabled: props.onlyEnabledFlag !== (0, __WEBPACK_EXTERNAL_MODULE_vue__.unref)(__WEBPACK_EXTERNAL_MODULE__sun_toolkit_enums__.FLAG).NO,
7832
+ onChange: handleOnlyEnabledChange
7833
+ }, {
7834
+ default: (0, __WEBPACK_EXTERNAL_MODULE_vue__.withCtx)(()=>_cache[2] || (_cache[2] = [
7835
+ (0, __WEBPACK_EXTERNAL_MODULE_vue__.createTextVNode)((0, __WEBPACK_EXTERNAL_MODULE_vue__.toDisplayString)('仅查启用'), -1)
7836
+ ])),
7837
+ _: 1,
7838
+ __: [
7839
+ 2
7840
+ ]
7841
+ }, 8, [
7842
+ "modelValue",
7843
+ "disabled"
7844
+ ])
7845
+ ])
7846
+ ])), [
7847
+ [
7848
+ (0, __WEBPACK_EXTERNAL_MODULE_vue__.unref)(__WEBPACK_EXTERNAL_MODULE_element_sun__.ClickOutside),
7849
+ onClickOutside
7850
+ ]
7851
+ ])
7852
+ ]),
7853
+ _: 1
7854
+ }, 8, [
7855
+ "visible"
7856
+ ])
7857
+ ], 32);
7858
+ };
7859
+ }
7860
+ });
7861
+ const user_select_exports_ = user_selectvue_type_script_lang_tsx_name_UserSelect_setup_true;
7862
+ /* ESM default export */ const user_select = user_select_exports_;
7863
+ /**
7864
+ * [1-10155-1] 根据条件查询业务单元列表
7865
+ * 是否分页 Y
7866
+ * @param params
7867
+ * @returns
7868
+ */ const queryBizUnitList = (params)=>(0, __WEBPACK_EXTERNAL_MODULE__sun_toolkit_request__.dictRequest)('/organization/queryBizUnitListByExample', params);
7869
+ // 全局事件:用于关闭其他实例的 popover
7870
+ const biz_unit_selectvue_type_script_lang_tsx_name_BizUnitSelect_setup_true_CLOSE_OTHER_POPOVERS_EVENT = 'biz-unit-select:close-others'; /*
7871
+ 96-10014-1 业务单元选择组件
7872
+ 1、调用“1-10516-1 根据条件查询业务单元列表”传入“启用标志=1、关键字、医院标识=入参:医院标识、科室类型代码集合、就诊类型代码”查询业务单元列表
7873
+ 2、展示列包括“组织类型、编码、名称”
7874
+ */
7875
+ /* ESM default export */ const biz_unit_selectvue_type_script_lang_tsx_name_BizUnitSelect_setup_true = /*@__PURE__*/ (0, __WEBPACK_EXTERNAL_MODULE_vue__.defineComponent)({
7876
+ __name: 'index',
7877
+ props: {
7878
+ keyWord: {},
7879
+ hospitalId: {},
7880
+ orgTypeCodes: {},
7881
+ multiSelectFlag: {
7882
+ type: Boolean
7883
+ },
7884
+ defaultValue: {},
7885
+ encounterTypeCode: {},
7886
+ disabledValueIds: {},
7887
+ deptId: {},
7888
+ tableProps: {},
7889
+ selectProps: {}
7890
+ },
7891
+ emits: [
7892
+ 'change'
7893
+ ],
7894
+ setup (__props, { expose: __expose, emit: __emit }) {
7895
+ const props = __props;
7896
+ const attrs = (0, __WEBPACK_EXTERNAL_MODULE_vue__.useAttrs)();
7897
+ const emit = __emit;
7898
+ const tableProps = (0, __WEBPACK_EXTERNAL_MODULE_vue__.ref)(props.tableProps || {
7899
+ maxHeight: 260
7900
+ });
7901
+ const selectProps = (0, __WEBPACK_EXTERNAL_MODULE_vue__.ref)(props.selectProps || {});
7902
+ const { t } = (0, __WEBPACK_EXTERNAL_MODULE_i18next_vue__.useTranslation)();
7903
+ const instance = (0, __WEBPACK_EXTERNAL_MODULE_vue__.getCurrentInstance)();
7904
+ const componentId = instance?.uid || Math.random(); // 唯一标识当前组件实例
7905
+ const tableRef = (0, __WEBPACK_EXTERNAL_MODULE_vue__.ref)();
7906
+ const selectRef = (0, __WEBPACK_EXTERNAL_MODULE_vue__.ref)();
7907
+ const popoverRef = (0, __WEBPACK_EXTERNAL_MODULE_vue__.ref)();
7908
+ const loading = (0, __WEBPACK_EXTERNAL_MODULE_vue__.ref)(false);
7909
+ const popoverVisible = (0, __WEBPACK_EXTERNAL_MODULE_vue__.ref)(false);
7910
+ const currentRowIndex = (0, __WEBPACK_EXTERNAL_MODULE_vue__.ref)(0);
7911
+ const clearing = (0, __WEBPACK_EXTERNAL_MODULE_vue__.ref)(false);
7912
+ const bizUnitList = (0, __WEBPACK_EXTERNAL_MODULE_vue__.ref)([]); // 业务单元列表
7913
+ const selectedValue = (0, __WEBPACK_EXTERNAL_MODULE_vue__.ref)(); // select组件绑定的选中的值
7914
+ const selectedRows = (0, __WEBPACK_EXTERNAL_MODULE_vue__.ref)([]); // table表格选中的值
7915
+ const defaultSetTableSelected = (0, __WEBPACK_EXTERNAL_MODULE_vue__.ref)(false); // 传入的默认数据已经绑定到表格中
7916
+ const initComponentData = ()=>{
7917
+ popoverVisible.value = false;
7918
+ bizUnitList.value = [];
7919
+ selectedValue.value = void 0;
7920
+ selectedRows.value = [];
7921
+ handleChange();
7922
+ };
7923
+ (0, __WEBPACK_EXTERNAL_MODULE_vue__.watch)(()=>attrs?.modelValue, (newVal)=>{
7924
+ if (newVal) {
7925
+ if (!props.multiSelectFlag) {
7926
+ const item = bizUnitList.value.find((item)=>item.value === newVal);
7927
+ if (item?.label && selectedValue.value !== item.label) {
7928
+ selectedValue.value = item.label;
7929
+ selectedRows.value = [
7930
+ item
7931
+ ];
7932
+ }
7933
+ }
7934
+ } else {
7935
+ selectedValue.value = props.multiSelectFlag ? [] : void 0;
7936
+ selectedRows.value = [];
7937
+ }
7938
+ });
7939
+ (0, __WEBPACK_EXTERNAL_MODULE_vue__.watch)(()=>[
7940
+ props.tableProps,
7941
+ props.selectProps
7942
+ ], ()=>{
7943
+ tableProps.value = props.tableProps || {
7944
+ maxHeight: 260
7945
+ };
7946
+ selectProps.value = props.selectProps || {};
7947
+ }, {
7948
+ deep: true,
7949
+ immediate: true
7950
+ });
7951
+ (0, __WEBPACK_EXTERNAL_MODULE_vue__.watch)(()=>props.defaultValue, ()=>{
7952
+ if (attrs.modelValue && Array.isArray(props.defaultValue) && props.defaultValue.length && !defaultSetTableSelected.value) {
7953
+ const list = props.defaultValue.map((item)=>({
7954
+ ...item,
7955
+ orgId: item.value || item.orgId,
7956
+ orgNameDisplay: item.label || item.orgNameDisplay,
7957
+ value: item.value || item.orgId,
7958
+ label: item.label || item.orgNameDisplay
7959
+ }));
7960
+ bizUnitList.value = [
7961
+ ...list
7962
+ ];
7963
+ }
7964
+ }, {
7965
+ deep: true,
7966
+ immediate: true
7967
+ });
7968
+ (0, __WEBPACK_EXTERNAL_MODULE_vue__.watch)(()=>props.orgTypeCodes, (newVal, oldVal)=>{
7969
+ if (newVal && !(0, __WEBPACK_EXTERNAL_MODULE__sun_toolkit_shared__.isEqual)(oldVal, newVal)) initComponentData();
7970
+ });
7971
+ const tableConfig = useColumnConfig({
7972
+ getData: (t)=>[
7973
+ {
7974
+ label: t('global:select'),
7975
+ prop: 'indexNo',
7976
+ type: 'selection',
7977
+ isHidden: !props.multiSelectFlag,
7978
+ selectable: (row)=>!(props.disabledValueIds?.length && row.orgId && props.disabledValueIds.includes(row.orgId)) && true
7979
+ },
7980
+ {
7981
+ label: t('bizUnitSelect.table.orgNo', '编码'),
7982
+ prop: 'orgNo',
7983
+ minWidth: 100
7984
+ },
7985
+ {
7986
+ label: t('bizUnitSelect.table.orgNameDisplay', '名称'),
7987
+ prop: 'orgNameDisplay',
7988
+ minWidth: 200
7989
+ },
7990
+ {
7991
+ label: t('bizUnitSelect.table.orgTypeDescDisplay', '组织类型'),
7992
+ prop: 'orgTypeDescDisplay',
7993
+ minWidth: 100
7994
+ }
7995
+ ]
7996
+ });
7997
+ const getRowClassName = (data)=>{
7998
+ if (props.disabledValueIds?.length && data.row.orgId && props.disabledValueIds.includes(data.row.orgId)) return 'cursor-not-allowed !bg-gray-100 text-gray-300';
7999
+ return 'cursor-pointer';
8000
+ };
8001
+ const getBizUnitList = async (data)=>{
8002
+ loading.value = true;
8003
+ const [, res] = await queryBizUnitList({
8004
+ ...data,
8005
+ hospitalId: props.hospitalId,
8006
+ orgTypeCodes: props.orgTypeCodes,
8007
+ enabledFlag: __WEBPACK_EXTERNAL_MODULE__sun_toolkit_enums__.FLAG.YES,
8008
+ encounterTypeCode: props.encounterTypeCode,
8009
+ deptId: props.deptId
8010
+ });
8011
+ loading.value = false;
8012
+ if (res?.success) {
8013
+ let defaultList = [];
8014
+ if (attrs.modelValue && Array.isArray(props.defaultValue) && props.defaultValue.length && !data?.keyWord) defaultList = props.defaultValue.map((item)=>({
7504
8015
  ...item,
7505
8016
  orgId: item.value || item.orgId,
7506
8017
  orgNameDisplay: item.label || item.orgNameDisplay,
@@ -7625,7 +8136,7 @@ const CLOSE_OTHER_POPOVERS_EVENT = 'biz-unit-select:close-others'; /*
7625
8136
  setTimeout(()=>{
7626
8137
  if (clearing.value) return;
7627
8138
  // 通知其他实例关闭 popover
7628
- window.dispatchEvent(new CustomEvent(CLOSE_OTHER_POPOVERS_EVENT, {
8139
+ window.dispatchEvent(new CustomEvent(biz_unit_selectvue_type_script_lang_tsx_name_BizUnitSelect_setup_true_CLOSE_OTHER_POPOVERS_EVENT, {
7629
8140
  detail: {
7630
8141
  componentId
7631
8142
  }
@@ -7709,7 +8220,7 @@ const CLOSE_OTHER_POPOVERS_EVENT = 'biz-unit-select:close-others'; /*
7709
8220
  handleChange();
7710
8221
  };
7711
8222
  const handlePopoverShow = ()=>{
7712
- window.dispatchEvent(new CustomEvent(CLOSE_OTHER_POPOVERS_EVENT, {
8223
+ window.dispatchEvent(new CustomEvent(biz_unit_selectvue_type_script_lang_tsx_name_BizUnitSelect_setup_true_CLOSE_OTHER_POPOVERS_EVENT, {
7713
8224
  detail: {
7714
8225
  componentId
7715
8226
  }
@@ -7723,13 +8234,13 @@ const CLOSE_OTHER_POPOVERS_EVENT = 'biz-unit-select:close-others'; /*
7723
8234
  document.removeEventListener('keydown', handleKeydown, true);
7724
8235
  document.removeEventListener('click', handleClickOutside);
7725
8236
  document.removeEventListener('focusin', handleGlobalFocusin, true);
7726
- window.removeEventListener(CLOSE_OTHER_POPOVERS_EVENT, handleCloseOtherPopovers);
8237
+ window.removeEventListener(biz_unit_selectvue_type_script_lang_tsx_name_BizUnitSelect_setup_true_CLOSE_OTHER_POPOVERS_EVENT, handleCloseOtherPopovers);
7727
8238
  });
7728
8239
  const fetchData = async (data)=>{
7729
8240
  await getBizUnitList(data);
7730
8241
  };
7731
8242
  (0, __WEBPACK_EXTERNAL_MODULE_vue__.onMounted)(()=>{
7732
- window.addEventListener(CLOSE_OTHER_POPOVERS_EVENT, handleCloseOtherPopovers);
8243
+ window.addEventListener(biz_unit_selectvue_type_script_lang_tsx_name_BizUnitSelect_setup_true_CLOSE_OTHER_POPOVERS_EVENT, handleCloseOtherPopovers);
7733
8244
  (0, __WEBPACK_EXTERNAL_MODULE_vue__.nextTick)(async ()=>{
7734
8245
  if (attrs.modelValue && Array.isArray(props.defaultValue) && props.defaultValue?.length) {
7735
8246
  if (props.multiSelectFlag) selectedValue.value = props.defaultValue.map((item)=>item.label || item.orgNameDisplay);
@@ -7814,7 +8325,7 @@ const CLOSE_OTHER_POPOVERS_EVENT = 'biz-unit-select:close-others'; /*
7814
8325
  "collapse-tags": !!props.multiSelectFlag,
7815
8326
  multiple: !!props.multiSelectFlag,
7816
8327
  options: [],
7817
- placeholder: _ctx.$t('bizUnitSelect.placeholder', '请选择组织'),
8328
+ placeholder: "请选择组织",
7818
8329
  "popper-class": popoverVisible.value ? 'hidden' : '',
7819
8330
  "remote-method": (0, __WEBPACK_EXTERNAL_MODULE_vue__.unref)(handelRemoteMethod),
7820
8331
  teleported: !popoverVisible.value,
@@ -7832,7 +8343,6 @@ const CLOSE_OTHER_POPOVERS_EVENT = 'biz-unit-select:close-others'; /*
7832
8343
  "modelValue",
7833
8344
  "collapse-tags",
7834
8345
  "multiple",
7835
- "placeholder",
7836
8346
  "popper-class",
7837
8347
  "remote-method",
7838
8348
  "teleported",
@@ -8280,7 +8790,7 @@ const biz_unit_select_exports_ = biz_unit_selectvue_type_script_lang_tsx_name_Bi
8280
8790
  ref: selectRef,
8281
8791
  modelValue: selectedValue.value,
8282
8792
  "onUpdate:modelValue": _cache[0] || (_cache[0] = ($event)=>selectedValue.value = $event),
8283
- placeholder: _ctx.$t('departmentSelect.placeholder', '请选择科室'),
8793
+ placeholder: "请选择科室",
8284
8794
  "collapse-tags": !!props.multiSelectFlag,
8285
8795
  remote: "",
8286
8796
  clearable: "",
@@ -8298,7 +8808,6 @@ const biz_unit_select_exports_ = biz_unit_selectvue_type_script_lang_tsx_name_Bi
8298
8808
  onClear: handleClear
8299
8809
  }, selectProps.value), null, 16, [
8300
8810
  "modelValue",
8301
- "placeholder",
8302
8811
  "collapse-tags",
8303
8812
  "teleported",
8304
8813
  "remote-method",
@@ -8731,7 +9240,7 @@ const department_select_exports_ = department_selectvue_type_script_setup_true_l
8731
9240
  modelValue: selectedValue.value,
8732
9241
  "onUpdate:modelValue": _cache[0] || (_cache[0] = ($event)=>selectedValue.value = $event),
8733
9242
  "collapse-tags": !!props.multiSelectFlag,
8734
- placeholder: _ctx.$t('wardSelect.placeholder', '请选择病区'),
9243
+ placeholder: "请选择病区",
8735
9244
  remote: "",
8736
9245
  clearable: "",
8737
9246
  filterable: "",
@@ -8749,7 +9258,6 @@ const department_select_exports_ = department_selectvue_type_script_setup_true_l
8749
9258
  }, selectProps.value), null, 16, [
8750
9259
  "modelValue",
8751
9260
  "collapse-tags",
8752
- "placeholder",
8753
9261
  "teleported",
8754
9262
  "remote-method",
8755
9263
  "multiple",
@@ -11001,7 +11509,8 @@ const access_infovue_type_script_setup_true_lang_ts_name_accessInfo_hoisted_3 =
11001
11509
  'searchChange',
11002
11510
  'invoiceChange',
11003
11511
  'clear',
11004
- 'avatarClick'
11512
+ 'avatarClick',
11513
+ 'bannerInfoChange'
11005
11514
  ],
11006
11515
  setup (__props, { expose: __expose, emit: __emit }) {
11007
11516
  const emit = __emit;
@@ -11094,7 +11603,8 @@ const access_infovue_type_script_setup_true_lang_ts_name_accessInfo_hoisted_3 =
11094
11603
  ref: bannerRef,
11095
11604
  code: bannerCode.value,
11096
11605
  "biz-id": _ctx.bannerConfig?.bizId,
11097
- onAvatarClick: _cache[0] || (_cache[0] = ($event)=>emit('avatarClick'))
11606
+ onAvatarClick: _cache[0] || (_cache[0] = ($event)=>emit('avatarClick')),
11607
+ onBannerInfoChange: _cache[1] || (_cache[1] = ($event)=>emit('bannerInfoChange'))
11098
11608
  }, null, 8, [
11099
11609
  "code",
11100
11610
  "biz-id"