sun-biz 0.0.2-beta.4 → 0.0.2-beta.6

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.
@@ -25,7 +25,14 @@ export declare const COMPONENT_MAP: {
25
25
  * @param result
26
26
  * @returns
27
27
  */
28
- export declare function expansionGroup(data: FormDesignDetailInfo[], result?: FormDesignDetailInfo[]): FormDesignDetailInfo[];
28
+ export declare function expansionGroup(data: FormDesignDetailInfo[], result?: FormDesignDetailInfo[], hideData?: {
29
+ [key: string]: unknown;
30
+ }): {
31
+ result: FormDesignDetailInfo[];
32
+ hideData: {
33
+ [key: string]: unknown;
34
+ };
35
+ };
29
36
  /**
30
37
  * 获取组件类型
31
38
  * @param item
@@ -40,9 +47,12 @@ export declare function getExtraProps(item: FormDesignDetailInfo, dataValueNames
40
47
  }): {
41
48
  [key: string]: unknown;
42
49
  };
43
- export declare function useGetFromConfigData(result: FormDesignDetailInfo[], layoutTypeCode: number): {
50
+ export declare function useGetFromConfigData(result: FormDesignDetailInfo[], layoutTypeCode: number, afterValueChange: ((key: string, value: unknown, model: unknown) => void) | undefined): {
44
51
  label: string | undefined;
45
52
  name: string;
53
+ onModelChange: <T = {
54
+ [key: string]: unknown;
55
+ }>(value: unknown, model: T) => void;
46
56
  component: string;
47
57
  placeholder: string;
48
58
  defaultValue: {};
@@ -5,4 +5,4 @@ export { DictSelect, FlagSelect, HospitalSelect } from './biz-select/index.ts';
5
5
  export { CopyTextWithTooltip } from './copy-text-with-tooltip/index.ts';
6
6
  export { FormDesignRender } from './form-design-render/index.ts';
7
7
  export { ProDialog } from './pro-dialog/index.ts';
8
- export { ProForm } from './pro-form/index.ts';
8
+ export { ProForm, FormUnit } from './pro-form/index.ts';
@@ -261,7 +261,7 @@ function useTableConfigColumn(changeInputSort, length) {
261
261
  prop: 'displayFlag',
262
262
  minWidth: 170,
263
263
  editable: true,
264
- render: (row)=>(0, __WEBPACK_EXTERNAL_MODULE_vue__.h)('el-checkbox', {
264
+ render: (row)=>(0, __WEBPACK_EXTERNAL_MODULE_vue__.h)(__WEBPACK_EXTERNAL_MODULE_element_sun__.ElCheckbox, {
265
265
  class: 'w-full justify-center',
266
266
  'true-label': 1,
267
267
  'false-label': 0,
@@ -274,7 +274,7 @@ function useTableConfigColumn(changeInputSort, length) {
274
274
  label: '列宽 (最小值)',
275
275
  prop: 'minWidth',
276
276
  minWidth: 170,
277
- render: (row)=>(0, __WEBPACK_EXTERNAL_MODULE_vue__.h)('el-input-number', {
277
+ render: (row)=>(0, __WEBPACK_EXTERNAL_MODULE_vue__.h)(__WEBPACK_EXTERNAL_MODULE_element_sun__.ElInputNumber, {
278
278
  maxLength: 16,
279
279
  'controls-position': 'right',
280
280
  modelValue: row.minWidth,
@@ -287,7 +287,7 @@ function useTableConfigColumn(changeInputSort, length) {
287
287
  label: '排序',
288
288
  prop: 'sort',
289
289
  minWidth: 170,
290
- render: (row, index)=>(0, __WEBPACK_EXTERNAL_MODULE_vue__.h)('el-input-number', {
290
+ render: (row, index)=>(0, __WEBPACK_EXTERNAL_MODULE_vue__.h)(__WEBPACK_EXTERNAL_MODULE_element_sun__.ElInputNumber, {
291
291
  max: length,
292
292
  min: 0,
293
293
  'controls-position': 'right',
@@ -641,7 +641,7 @@ const _hoisted_3 = {
641
641
  sort: index + 1,
642
642
  columnClass: 'truncate',
643
643
  render: (row, index)=>{
644
- if (item.render) return (0, __WEBPACK_EXTERNAL_MODULE_vue__.h)('el-button', {
644
+ if (item.render) return (0, __WEBPACK_EXTERNAL_MODULE_vue__.h)(__WEBPACK_EXTERNAL_MODULE_element_sun__.ElButton, {
645
645
  type: 'text',
646
646
  class: 'pointer-events-none h-5',
647
647
  disabled: true
@@ -953,7 +953,7 @@ const _hoisted_3 = {
953
953
  const dbgrid_component_setting_exports_ = /*#__PURE__*/ (0, exportHelper["default"])(dbgrid_component_settingvue_type_script_setup_true_lang_tsx, [
954
954
  [
955
955
  '__scopeId',
956
- "data-v-6b73f6ca"
956
+ "data-v-5ff76b6b"
957
957
  ]
958
958
  ]);
959
959
  /* ESM default export */ const dbgrid_component_setting = dbgrid_component_setting_exports_;
@@ -1058,7 +1058,7 @@ const pro_tablevue_type_script_lang_ts_setup_true_name_ProTable_hoisted_1 = {
1058
1058
  default: void 0
1059
1059
  },
1060
1060
  componentNo: {
1061
- default: ''
1061
+ default: ""
1062
1062
  },
1063
1063
  fetchData: {
1064
1064
  type: Function,
@@ -1073,7 +1073,7 @@ const pro_tablevue_type_script_lang_ts_setup_true_name_ProTable_hoisted_1 = {
1073
1073
  default: false
1074
1074
  },
1075
1075
  rowKey: {
1076
- default: 'id'
1076
+ default: "id"
1077
1077
  },
1078
1078
  loading: {
1079
1079
  type: Boolean,
@@ -1114,11 +1114,11 @@ const pro_tablevue_type_script_lang_ts_setup_true_name_ProTable_hoisted_1 = {
1114
1114
  });
1115
1115
  const serveColumn = (0, __WEBPACK_EXTERNAL_MODULE_vue__.ref)([]);
1116
1116
  const columnTypes = [
1117
- 'selection',
1118
- 'radio',
1119
- 'index',
1120
- 'expand',
1121
- 'sort'
1117
+ "selection",
1118
+ "radio",
1119
+ "index",
1120
+ "expand",
1121
+ "sort"
1122
1122
  ];
1123
1123
  const dbgridComponentSettingRef = (0, __WEBPACK_EXTERNAL_MODULE_vue__.ref)();
1124
1124
  const formRef = (0, __WEBPACK_EXTERNAL_MODULE_vue__.ref)();
@@ -1126,23 +1126,75 @@ const pro_tablevue_type_script_lang_ts_setup_true_name_ProTable_hoisted_1 = {
1126
1126
  const uuid = (0, __WEBPACK_EXTERNAL_MODULE_vue__.ref)((0, __WEBPACK_EXTERNAL_MODULE_vue__.useId)());
1127
1127
  // 定义 emit 事件
1128
1128
  const emit = __emit;
1129
+ const attrs = (0, __WEBPACK_EXTERNAL_MODULE_vue__.useAttrs)();
1130
+ /**
1131
+ *获取参与排序的列表 索引 是否可以拖拽
1132
+ */ function getDragSortData(newIndex, data, startIndexObj, sortData) {
1133
+ data.forEach((item, index)=>{
1134
+ startIndexObj.startIndex += 1;
1135
+ if (startIndexObj.startIndex > newIndex) return;
1136
+ if (startIndexObj.startIndex === newIndex) {
1137
+ sortData.curIndex = index;
1138
+ sortData.curData = item;
1139
+ sortData.result = data;
1140
+ }
1141
+ if (item?.[attrs?.["tree-props"]?.children]) getDragSortData(newIndex, item?.[attrs?.["tree-props"]?.children], startIndexObj, sortData);
1142
+ });
1143
+ return sortData;
1144
+ }
1145
+ /**
1146
+ * 获取拖拽排序数据结果
1147
+ */ function getSortableResult(newIndex, oldIndex) {
1148
+ let data = [
1149
+ ...state.tableData
1150
+ ];
1151
+ if (attrs?.["tree-props"]) {
1152
+ let { result, curIndex: newCurIndex, curData: newCurData } = getDragSortData(newIndex, data, {
1153
+ startIndex: -1
1154
+ }, {
1155
+ result: [],
1156
+ curIndex: 0,
1157
+ curData: {}
1158
+ });
1159
+ let { curIndex: oldCurIndex, curData: oldCurData } = getDragSortData(oldIndex, data, {
1160
+ startIndex: -1
1161
+ }, {
1162
+ result: [],
1163
+ curIndex: 0,
1164
+ curData: {}
1165
+ });
1166
+ if (newCurData.belongGroupElementId !== oldCurData.belongGroupElementId) {
1167
+ __WEBPACK_EXTERNAL_MODULE_element_sun__.ElMessage.warning("暂不支持跨层级拖拽配置");
1168
+ return [];
1169
+ }
1170
+ const [removedItem] = result.splice(oldCurIndex, 1);
1171
+ result.splice(newCurIndex, 0, removedItem);
1172
+ data = result;
1173
+ } else {
1174
+ const [removedItem] = data.splice(oldIndex, 1);
1175
+ data.splice(newIndex, 0, removedItem);
1176
+ }
1177
+ return data;
1178
+ }
1129
1179
  /***
1130
1180
  * 表格拖拽排序
1131
1181
  **/ const initDragSort = ()=>{
1132
1182
  const tbody = document.querySelector(`#${uuid.value} tbody`);
1183
+ let initialHTML = ""; //暂不支持跨层级拖拽
1133
1184
  if (tbody) __WEBPACK_EXTERNAL_MODULE_sortablejs__["default"].create(tbody, {
1134
- handle: '.cursor-move',
1185
+ handle: ".cursor-move",
1135
1186
  animation: 300,
1136
1187
  onEnd (evt) {
1137
1188
  const { newIndex, oldIndex } = evt;
1138
1189
  if (newIndex === oldIndex || void 0 === newIndex || void 0 === oldIndex) return;
1139
1190
  //获取拖动后的排序
1140
- const data = [
1141
- ...state.tableData
1142
- ];
1143
- const [removedItem] = data.splice(oldIndex, 1);
1144
- data.splice(newIndex, 0, removedItem);
1145
- emit('drag-end', data);
1191
+ let data = getSortableResult(newIndex, oldIndex);
1192
+ if (data.length) emit("drag-end", data);
1193
+ else evt.from.innerHTML = initialHTML;
1194
+ },
1195
+ onStart (evt) {
1196
+ // 在拖拽开始时,记录当前容器的 HTML
1197
+ initialHTML = evt.from.innerHTML;
1146
1198
  }
1147
1199
  });
1148
1200
  };
@@ -1152,7 +1204,7 @@ const pro_tablevue_type_script_lang_ts_setup_true_name_ProTable_hoisted_1 = {
1152
1204
  });
1153
1205
  async function fetchDbgridComponent() {
1154
1206
  let [, result] = await queryDbgridComponentByExample({
1155
- componentNo: props.componentNo || ''
1207
+ componentNo: props.componentNo || ""
1156
1208
  });
1157
1209
  if (result?.success) try {
1158
1210
  let column = result.data.dbgridSettingValue && JSON.parse(result.data.dbgridSettingValue) || [];
@@ -1185,7 +1237,7 @@ const pro_tablevue_type_script_lang_ts_setup_true_name_ProTable_hoisted_1 = {
1185
1237
  state.pageInfo.pageNumber = 1;
1186
1238
  state.pageInfo.pageSize = val;
1187
1239
  fetchList();
1188
- } else emit('size-page-change', val);
1240
+ } else emit("size-page-change", val);
1189
1241
  };
1190
1242
  /**
1191
1243
  * 分页组件改变 当前页数 事件
@@ -1193,7 +1245,7 @@ const pro_tablevue_type_script_lang_ts_setup_true_name_ProTable_hoisted_1 = {
1193
1245
  if (props.fetchData) {
1194
1246
  state.pageInfo.pageNumber = val;
1195
1247
  fetchList();
1196
- } else emit('current-page-change', val);
1248
+ } else emit("current-page-change", val);
1197
1249
  }
1198
1250
  // 超级表格 ref
1199
1251
  const proTableRef = (0, __WEBPACK_EXTERNAL_MODULE_vue__.ref)();
@@ -1210,7 +1262,7 @@ const pro_tablevue_type_script_lang_ts_setup_true_name_ProTable_hoisted_1 = {
1210
1262
  if (Object.keys(props.filterObj).length) return [
1211
1263
  ...state.tableData
1212
1264
  ].filter((item)=>Object.keys(props.filterObj).every((cur)=>!props.filterObj[cur] && [
1213
- '',
1265
+ "",
1214
1266
  void 0,
1215
1267
  null
1216
1268
  ].includes(props.filterObj[cur]) || item[cur] === props.filterObj[cur]));
@@ -2175,13 +2227,18 @@ const PatientInfo_exports_ = PatientInfovue_type_script_setup_true_lang_ts;
2175
2227
  const emit = __emit;
2176
2228
  const loading = (0, __WEBPACK_EXTERNAL_MODULE_vue__.ref)(true);
2177
2229
  const props = __props;
2178
- const tableData = (0, __WEBPACK_EXTERNAL_MODULE_vue__.ref)([
2179
- {
2180
- value: props.defaultValue,
2181
- label: props.defaultValueName
2182
- }
2183
- ]);
2184
- let inputChange = debounce(fetchData, 800);
2230
+ const tableData = (0, __WEBPACK_EXTERNAL_MODULE_vue__.ref)([]);
2231
+ (0, __WEBPACK_EXTERNAL_MODULE_vue__.watch)(()=>props.defaultValue, ()=>{
2232
+ if (props.defaultValue && props.defaultValueName) tableData.value = [
2233
+ {
2234
+ value: props.defaultValue,
2235
+ label: props.defaultValueName
2236
+ }
2237
+ ];
2238
+ }, {
2239
+ immediate: true
2240
+ });
2241
+ let inputChange = debounce(fetchData, 500);
2185
2242
  async function fetchData(value) {
2186
2243
  loading.value = true;
2187
2244
  let [, result] = await queryDictDataListByExample({
@@ -2201,9 +2258,9 @@ const PatientInfo_exports_ = PatientInfovue_type_script_setup_true_lang_ts;
2201
2258
  }
2202
2259
  }
2203
2260
  /**
2204
- *
2205
- * @param value 下拉框选择
2206
- */ function change(value) {
2261
+ *
2262
+ * @param value 下拉框选择
2263
+ */ function change(value) {
2207
2264
  let name = (tableData.value.find((item)=>item.value === value) || {})['label'];
2208
2265
  emit('change', value, name);
2209
2266
  }
@@ -2215,10 +2272,12 @@ const PatientInfo_exports_ = PatientInfovue_type_script_setup_true_lang_ts;
2215
2272
  loading: loading.value && !tableData.value.length,
2216
2273
  disabled: props.disabled,
2217
2274
  remote: true,
2275
+ "remote-show-suffix": "",
2218
2276
  filterable: true,
2219
2277
  onChange: change,
2220
2278
  "remote-method": (value)=>{
2221
- (0, __WEBPACK_EXTERNAL_MODULE_vue__.unref)(inputChange)(value);
2279
+ if (value) (0, __WEBPACK_EXTERNAL_MODULE_vue__.unref)(inputChange)(value);
2280
+ else fetchData(value);
2222
2281
  }
2223
2282
  }, {
2224
2283
  default: (0, __WEBPACK_EXTERNAL_MODULE_vue__.withCtx)(()=>[
@@ -2244,7 +2303,7 @@ const PatientInfo_exports_ = PatientInfovue_type_script_setup_true_lang_ts;
2244
2303
  const dict_select_exports_ = /*#__PURE__*/ (0, exportHelper["default"])(dict_selectvue_type_script_setup_true_lang_ts, [
2245
2304
  [
2246
2305
  '__scopeId',
2247
- "data-v-54541b2c"
2306
+ "data-v-7d3f5f96"
2248
2307
  ]
2249
2308
  ]);
2250
2309
  /* ESM default export */ const dict_select = dict_select_exports_;
@@ -2935,20 +2994,25 @@ const COMMA = ',';
2935
2994
  * @param data
2936
2995
  * @param result
2937
2996
  * @returns
2938
- */ function expansionGroup(data, result = []) {
2939
- data = data.filter((item)=>item.displayFlag === __WEBPACK_EXTERNAL_MODULE__sun_toolkit_enums__.FLAG.YES);
2997
+ */ function expansionGroup(data, result = [], hideData = {} //部分数据页面不展示 但是接口还需要传递配置的默认值
2998
+ ) {
2940
2999
  data.forEach((item)=>{
2941
- const isGroup = item.controlTypeCode === __WEBPACK_EXTERNAL_MODULE__sun_toolkit_enums__.CONTROL_TYPE_CODE.GROUP;
2942
- const isSet = item.controlTypeCode === __WEBPACK_EXTERNAL_MODULE__sun_toolkit_enums__.CONTROL_TYPE_CODE.SET;
2943
- if (isGroup || isSet) {
2944
- item.subFormControlList = item.subFormControlList?.map((cur)=>({
2945
- ...cur,
2946
- bindingFieldNo: cur.bindingFieldNo.startsWith(GROUP) || cur.bindingFieldNo.startsWith(SET) ? cur.bindingFieldNo : `${isGroup ? GROUP : SET}${SEPARATOR}${item.bindingFieldNo}${SEPARATOR}${cur.bindingFieldNo}`
2947
- }));
2948
- expansionGroup(item.subFormControlList || [], result);
2949
- } else result.push(item);
3000
+ if (item.displayFlag === __WEBPACK_EXTERNAL_MODULE__sun_toolkit_enums__.FLAG.YES) {
3001
+ const isGroup = item.controlTypeCode === __WEBPACK_EXTERNAL_MODULE__sun_toolkit_enums__.CONTROL_TYPE_CODE.GROUP;
3002
+ const isSet = item.controlTypeCode === __WEBPACK_EXTERNAL_MODULE__sun_toolkit_enums__.CONTROL_TYPE_CODE.SET;
3003
+ if (isGroup || isSet) {
3004
+ item.subFormControlList = item.subFormControlList?.map((cur)=>({
3005
+ ...cur,
3006
+ bindingFieldNo: cur.bindingFieldNo.startsWith(GROUP) || cur.bindingFieldNo.startsWith(SET) ? cur.bindingFieldNo : `${isGroup ? GROUP : SET}${SEPARATOR}${item.bindingFieldNo}${SEPARATOR}${cur.bindingFieldNo}`
3007
+ }));
3008
+ expansionGroup(item.subFormControlList || [], result, hideData);
3009
+ } else result.push(item);
3010
+ } else if (item.defaultValue) hideData[item.bindingFieldNo] = item.defaultValue;
2950
3011
  });
2951
- return result;
3012
+ return {
3013
+ result,
3014
+ hideData
3015
+ };
2952
3016
  }
2953
3017
  /**
2954
3018
  * 获取组件类型
@@ -3014,10 +3078,13 @@ function getExtraProps(item, dataValueNames, modelValue) {
3014
3078
  };
3015
3079
  return resultObj;
3016
3080
  }
3017
- function useGetFromConfigData(result, layoutTypeCode) {
3081
+ function useGetFromConfigData(result, layoutTypeCode, afterValueChange) {
3018
3082
  return result.map((item)=>({
3019
3083
  label: item.labelNameDisplay || item.labelName,
3020
3084
  name: item.bindingFieldNo,
3085
+ onModelChange: (value, model)=>{
3086
+ if (afterValueChange) afterValueChange(item.bindingFieldNo, value, model); // 调用函数并传递参数
3087
+ },
3021
3088
  component: getComponentType(item),
3022
3089
  placeholder: getPlaceholder(item),
3023
3090
  defaultValue: item.defaultValue || '',
@@ -3106,14 +3173,16 @@ const Collapsevue_type_script_setup_true_lang_tsx_hoisted_1 = {
3106
3173
  function handleClick() {
3107
3174
  show.value = !show.value;
3108
3175
  } /**
3109
- * 获取初始化的数据
3110
- */
3111
- const initList = expansionGroup(props.designDetailInfo.subFormControlList || [], []); /**
3112
- * 初次渲染
3113
- */
3114
- const initData = useGetFromConfigData(initList, props.layoutTypeCode); /**
3115
- * 数据更新后获取对应的name
3116
- */
3176
+ * 获取初始化的数据
3177
+ */
3178
+ const { result: initList, hideData } = expansionGroup(props.designDetailInfo.subFormControlList || [], []);
3179
+ const afterValueChange = (0, __WEBPACK_EXTERNAL_MODULE_vue__.inject)('afterValueChange');
3180
+ const disabled = (0, __WEBPACK_EXTERNAL_MODULE_vue__.inject)('disabled'); /**
3181
+ * 初次渲染
3182
+ */
3183
+ const initData = useGetFromConfigData(initList, props.layoutTypeCode, afterValueChange); /**
3184
+ * 数据更新后获取对应的name
3185
+ */
3117
3186
  const formData = (0, __WEBPACK_EXTERNAL_MODULE_vue__.computed)(()=>initData.map((item, index)=>({
3118
3187
  ...item,
3119
3188
  extraProps: getExtraProps(initList[index] || {}, props.dataValueNames, modelValue.value)
@@ -3121,7 +3190,10 @@ const Collapsevue_type_script_setup_true_lang_tsx_hoisted_1 = {
3121
3190
  __expose({
3122
3191
  submit: async ()=>{
3123
3192
  let result = await formRef.value?.ref.validate();
3124
- if (result) return integrateData(modelValue.value);
3193
+ if (result) return integrateData({
3194
+ ...modelValue.value,
3195
+ ...hideData
3196
+ });
3125
3197
  },
3126
3198
  setModelValue: (val)=>{
3127
3199
  modelValue.value = val;
@@ -3177,12 +3249,14 @@ const Collapsevue_type_script_setup_true_lang_tsx_hoisted_1 = {
3177
3249
  key: 0,
3178
3250
  ref_key: "formRef",
3179
3251
  ref: formRef,
3252
+ disabled: (0, __WEBPACK_EXTERNAL_MODULE_vue__.unref)(disabled),
3180
3253
  modelValue: modelValue.value,
3181
3254
  "onUpdate:modelValue": _cache[0] || (_cache[0] = ($event)=>modelValue.value = $event),
3182
3255
  class: "ml-4 mr-4 mt-4",
3183
3256
  column: props.layoutTypeCode,
3184
3257
  data: formData.value
3185
3258
  }, null, 8, [
3259
+ "disabled",
3186
3260
  "modelValue",
3187
3261
  "column",
3188
3262
  "data"
@@ -3194,7 +3268,7 @@ const Collapsevue_type_script_setup_true_lang_tsx_hoisted_1 = {
3194
3268
  const Collapse_exports_ = /*#__PURE__*/ (0, exportHelper["default"])(Collapsevue_type_script_setup_true_lang_tsx, [
3195
3269
  [
3196
3270
  '__scopeId',
3197
- "data-v-46a48028"
3271
+ "data-v-89d161d4"
3198
3272
  ]
3199
3273
  ]);
3200
3274
  /* ESM default export */ const Collapse = Collapse_exports_;
@@ -3209,10 +3283,13 @@ const Tablevue_type_script_setup_true_lang_tsx_hoisted_1 = {
3209
3283
  },
3210
3284
  setup (__props, { expose: __expose }) {
3211
3285
  const props = __props;
3286
+ const hideData = (0, __WEBPACK_EXTERNAL_MODULE_vue__.ref)({}); //页面不展示 但是具有默认值 需传递给接口
3212
3287
  const tableRef = (0, __WEBPACK_EXTERNAL_MODULE_vue__.ref)();
3213
3288
  const settingList = (0, __WEBPACK_EXTERNAL_MODULE_vue__.ref)([]);
3289
+ const disabled = (0, __WEBPACK_EXTERNAL_MODULE_vue__.inject)('disabled');
3214
3290
  function useGetTableColumnData() {
3215
- let result = expansionGroup(props.designDetailInfo.subFormControlList || [], []);
3291
+ let { result, hideData: hideObj } = expansionGroup(props.designDetailInfo.subFormControlList || [], []);
3292
+ hideData.value = hideObj;
3216
3293
  return result.map((item)=>({
3217
3294
  label: item.labelNameDisplay || item.labelName,
3218
3295
  prop: item.bindingFieldNo,
@@ -3230,6 +3307,7 @@ const Tablevue_type_script_setup_true_lang_tsx_hoisted_1 = {
3230
3307
  }
3231
3308
  ],
3232
3309
  render: (row)=>(0, __WEBPACK_EXTERNAL_MODULE_vue__.h)(FormUnit, {
3310
+ disabled: disabled,
3233
3311
  component: getComponentType(item),
3234
3312
  label: item.labelNameDisplay || item.labelName,
3235
3313
  placeholder: getPlaceholder(item),
@@ -3255,7 +3333,10 @@ const Tablevue_type_script_setup_true_lang_tsx_hoisted_1 = {
3255
3333
  submit: async ()=>{
3256
3334
  let result = await tableRef?.value?.formRef?.validateField();
3257
3335
  if (result) return {
3258
- [props.designDetailInfo.bindingFieldNo]: settingList.value.map(({ editable, ...item })=>integrateData(item))
3336
+ [props.designDetailInfo.bindingFieldNo]: settingList.value.map(({ editable, ...item })=>integrateData({
3337
+ ...hideData.value,
3338
+ ...item
3339
+ }))
3259
3340
  };
3260
3341
  },
3261
3342
  setModelValue: (val)=>{
@@ -3287,7 +3368,8 @@ const Tablevue_type_script_setup_true_lang_tsx_hoisted_1 = {
3287
3368
  "columns",
3288
3369
  "data"
3289
3370
  ]),
3290
- (0, __WEBPACK_EXTERNAL_MODULE_vue__.createVNode)(_component_el_button, {
3371
+ (0, __WEBPACK_EXTERNAL_MODULE_vue__.unref)(disabled) ? (0, __WEBPACK_EXTERNAL_MODULE_vue__.createCommentVNode)("", true) : ((0, __WEBPACK_EXTERNAL_MODULE_vue__.openBlock)(), (0, __WEBPACK_EXTERNAL_MODULE_vue__.createBlock)(_component_el_button, {
3372
+ key: 0,
3291
3373
  class: "w-full border-t-0",
3292
3374
  onClick: onAddItem
3293
3375
  }, {
@@ -3300,7 +3382,7 @@ const Tablevue_type_script_setup_true_lang_tsx_hoisted_1 = {
3300
3382
  })
3301
3383
  ]),
3302
3384
  _: 1
3303
- })
3385
+ }))
3304
3386
  ]);
3305
3387
  };
3306
3388
  }
@@ -3308,7 +3390,7 @@ const Tablevue_type_script_setup_true_lang_tsx_hoisted_1 = {
3308
3390
  const Table_exports_ = /*#__PURE__*/ (0, exportHelper["default"])(Tablevue_type_script_setup_true_lang_tsx, [
3309
3391
  [
3310
3392
  '__scopeId',
3311
- "data-v-737d0299"
3393
+ "data-v-4437dec2"
3312
3394
  ]
3313
3395
  ]);
3314
3396
  /* ESM default export */ const Table = Table_exports_;
@@ -3338,10 +3420,12 @@ const Setvue_type_script_setup_true_lang_tsx_name_Set_hoisted_2 = {
3338
3420
  const modelValue = (0, __WEBPACK_EXTERNAL_MODULE_vue__.ref)({}); /**
3339
3421
  * 获取初始化的数据
3340
3422
  */
3341
- const initList = expansionGroup(props.designDetailInfo.subFormControlList || [], []); /**
3423
+ const { hideData, result: initList } = expansionGroup(props.designDetailInfo.subFormControlList || [], []);
3424
+ const afterValueChange = (0, __WEBPACK_EXTERNAL_MODULE_vue__.inject)('afterValueChange');
3425
+ const disabled = (0, __WEBPACK_EXTERNAL_MODULE_vue__.inject)('disabled'); /**
3342
3426
  * 初次渲染
3343
3427
  */
3344
- const initData = useGetFromConfigData(initList, props.layoutTypeCode); /**
3428
+ const initData = useGetFromConfigData(initList, props.layoutTypeCode, afterValueChange); /**
3345
3429
  * 数据更新后获取对应的name
3346
3430
  */
3347
3431
  const formData = (0, __WEBPACK_EXTERNAL_MODULE_vue__.computed)(()=>initData.map((item, index)=>({
@@ -3352,7 +3436,10 @@ const Setvue_type_script_setup_true_lang_tsx_name_Set_hoisted_2 = {
3352
3436
  submit: async ()=>{
3353
3437
  let result = await formRef.value?.ref.validate();
3354
3438
  if (result) return {
3355
- [props.designDetailInfo.bindingFieldNo]: integrateData(modelValue.value),
3439
+ [props.designDetailInfo.bindingFieldNo]: integrateData({
3440
+ ...hideData,
3441
+ ...modelValue.value
3442
+ }),
3356
3443
  bindingFieldNo: props.designDetailInfo.bindingFieldNo,
3357
3444
  isSet: true
3358
3445
  };
@@ -3369,12 +3456,14 @@ const Setvue_type_script_setup_true_lang_tsx_name_Set_hoisted_2 = {
3369
3456
  (0, __WEBPACK_EXTERNAL_MODULE_vue__.createVNode)((0, __WEBPACK_EXTERNAL_MODULE_vue__.unref)(pro_form), {
3370
3457
  ref_key: "formRef",
3371
3458
  ref: formRef,
3459
+ disabled: (0, __WEBPACK_EXTERNAL_MODULE_vue__.unref)(disabled),
3372
3460
  modelValue: modelValue.value,
3373
3461
  "onUpdate:modelValue": _cache[0] || (_cache[0] = ($event)=>modelValue.value = $event),
3374
3462
  class: "ml-4 mr-4",
3375
3463
  column: props.layoutTypeCode,
3376
3464
  data: formData.value
3377
3465
  }, null, 8, [
3466
+ "disabled",
3378
3467
  "modelValue",
3379
3468
  "column",
3380
3469
  "data"
@@ -3385,7 +3474,7 @@ const Setvue_type_script_setup_true_lang_tsx_name_Set_hoisted_2 = {
3385
3474
  const Set_exports_ = /*#__PURE__*/ (0, exportHelper["default"])(Setvue_type_script_setup_true_lang_tsx_name_Set, [
3386
3475
  [
3387
3476
  '__scopeId',
3388
- "data-v-3db350f4"
3477
+ "data-v-8c594a84"
3389
3478
  ]
3390
3479
  ]);
3391
3480
  /* ESM default export */ const Set = Set_exports_;
@@ -3399,14 +3488,16 @@ const Set_exports_ = /*#__PURE__*/ (0, exportHelper["default"])(Setvue_type_scri
3399
3488
  setup (__props, { expose: __expose }) {
3400
3489
  const props = __props;
3401
3490
  const formRef = (0, __WEBPACK_EXTERNAL_MODULE_vue__.ref)();
3402
- const modelValue = (0, __WEBPACK_EXTERNAL_MODULE_vue__.ref)({}); /**
3403
- * 初次渲染
3404
- */
3491
+ const modelValue = (0, __WEBPACK_EXTERNAL_MODULE_vue__.ref)({});
3492
+ const disabled = (0, __WEBPACK_EXTERNAL_MODULE_vue__.inject)('disabled');
3493
+ const afterValueChange = (0, __WEBPACK_EXTERNAL_MODULE_vue__.inject)('afterValueChange'); /**
3494
+ * 初次渲染
3495
+ */
3405
3496
  const initData = useGetFromConfigData([
3406
3497
  props.designDetailInfo
3407
- ], props.layoutTypeCode); /**
3408
- * 数据更新后获取对应的name
3409
- */
3498
+ ], props.layoutTypeCode, afterValueChange); /**
3499
+ * 数据更新后获取对应的name
3500
+ */
3410
3501
  const formData = (0, __WEBPACK_EXTERNAL_MODULE_vue__.computed)(()=>initData.map((item)=>({
3411
3502
  ...item,
3412
3503
  extraProps: getExtraProps(props.designDetailInfo, props.dataValueNames, modelValue.value)
@@ -3428,13 +3519,16 @@ const Set_exports_ = /*#__PURE__*/ (0, exportHelper["default"])(Setvue_type_scri
3428
3519
  return (_ctx, _cache)=>((0, __WEBPACK_EXTERNAL_MODULE_vue__.openBlock)(), (0, __WEBPACK_EXTERNAL_MODULE_vue__.createBlock)((0, __WEBPACK_EXTERNAL_MODULE_vue__.unref)(pro_form), {
3429
3520
  ref_key: "formRef",
3430
3521
  ref: formRef,
3522
+ disabled: (0, __WEBPACK_EXTERNAL_MODULE_vue__.unref)(disabled),
3431
3523
  modelValue: modelValue.value,
3432
3524
  "onUpdate:modelValue": _cache[0] || (_cache[0] = ($event)=>modelValue.value = $event),
3433
3525
  class: "ml-4 mr-4",
3434
- column: 1,
3526
+ column: props.layoutTypeCode,
3435
3527
  data: formData.value
3436
3528
  }, null, 8, [
3529
+ "disabled",
3437
3530
  "modelValue",
3531
+ "column",
3438
3532
  "data"
3439
3533
  ]));
3440
3534
  }
@@ -3442,7 +3536,7 @@ const Set_exports_ = /*#__PURE__*/ (0, exportHelper["default"])(Setvue_type_scri
3442
3536
  const Other_exports_ = /*#__PURE__*/ (0, exportHelper["default"])(Othervue_type_script_setup_true_lang_tsx, [
3443
3537
  [
3444
3538
  '__scopeId',
3445
- "data-v-065dcd30"
3539
+ "data-v-87036b8a"
3446
3540
  ]
3447
3541
  ]);
3448
3542
  /* ESM default export */ const Other = Other_exports_;
@@ -3524,9 +3618,17 @@ const FIELD_REF = 'fieldRef_'; // 存储动态 ref 的对象
3524
3618
  type: Boolean,
3525
3619
  default: true
3526
3620
  },
3621
+ disabled: {
3622
+ type: Boolean,
3623
+ default: false
3624
+ },
3527
3625
  afterChildSearch: {
3528
3626
  type: Function,
3529
3627
  default: ()=>{}
3628
+ },
3629
+ afterValueChange: {
3630
+ type: Function,
3631
+ default: ()=>{}
3530
3632
  }
3531
3633
  },
3532
3634
  emits: [
@@ -3540,6 +3642,7 @@ const FIELD_REF = 'fieldRef_'; // 存储动态 ref 的对象
3540
3642
  const submitLoading = (0, __WEBPACK_EXTERNAL_MODULE_vue__.ref)(false);
3541
3643
  const scrollbarRef = (0, __WEBPACK_EXTERNAL_MODULE_vue__.ref)();
3542
3644
  const layoutTypeCode = (0, __WEBPACK_EXTERNAL_MODULE_vue__.ref)(4);
3645
+ const hideData = (0, __WEBPACK_EXTERNAL_MODULE_vue__.ref)({}); //页面不展示 但是具有默认值 需传递给接口
3543
3646
  const emit = __emit;
3544
3647
  const configList = (0, __WEBPACK_EXTERNAL_MODULE_vue__.ref)([]); // 定义 dynamicRef 的类型
3545
3648
  const refs = (0, __WEBPACK_EXTERNAL_MODULE_vue__.ref)({});
@@ -3550,7 +3653,10 @@ const FIELD_REF = 'fieldRef_'; // 存储动态 ref 的对象
3550
3653
  });
3551
3654
  loading.value = false;
3552
3655
  if (result?.success) {
3553
- configList.value = result.data?.formDesignDetailList.filter((item)=>item.displayFlag === __WEBPACK_EXTERNAL_MODULE__sun_toolkit_enums__.FLAG.YES || item.controlTypeCode === __WEBPACK_EXTERNAL_MODULE__sun_toolkit_enums__.CONTROL_TYPE_CODE.COLLAPSE);
3656
+ configList.value = result.data?.formDesignDetailList.filter((item)=>{
3657
+ if (item.displayFlag === __WEBPACK_EXTERNAL_MODULE__sun_toolkit_enums__.FLAG.NO && item.defaultValue) hideData.value[item.bindingFieldNo] = item.defaultValue;
3658
+ return item.displayFlag === __WEBPACK_EXTERNAL_MODULE__sun_toolkit_enums__.FLAG.YES || item.controlTypeCode === __WEBPACK_EXTERNAL_MODULE__sun_toolkit_enums__.CONTROL_TYPE_CODE.COLLAPSE;
3659
+ });
3554
3660
  layoutTypeCode.value = Number(result.data?.layoutTypeCode);
3555
3661
  }
3556
3662
  } // 修复 ref 赋值问题
@@ -3567,11 +3673,15 @@ const FIELD_REF = 'fieldRef_'; // 存储动态 ref 的对象
3567
3673
  let [, result] = await queryDataValueNameByKeys(params);
3568
3674
  if (result?.success) dataValueNames.value = result.data || {};
3569
3675
  }
3676
+ (0, __WEBPACK_EXTERNAL_MODULE_vue__.provide)('disabled', props.disabled);
3677
+ (0, __WEBPACK_EXTERNAL_MODULE_vue__.provide)('afterValueChange', (name, value, model)=>{
3678
+ if (props.afterValueChange) props.afterValueChange(name, value, model);
3679
+ });
3570
3680
  function setValue(data, loading) {
3571
3681
  let queryList = [];
3572
3682
  configList.value.forEach((item)=>{
3573
3683
  if (loading) return;
3574
- const list = expansionGroup(item?.subFormControlList || [], []);
3684
+ const { result: list } = expansionGroup(item?.subFormControlList || [], []);
3575
3685
  let result = {};
3576
3686
  let otherDefaultValue = void 0 === getDefaultValue(data, item.bindingFieldNo) ? item.defaultValue : getDefaultValue(data, item.bindingFieldNo);
3577
3687
  switch(item.controlTypeCode){
@@ -3618,14 +3728,14 @@ const FIELD_REF = 'fieldRef_'; // 存储动态 ref 的对象
3618
3728
  if (!Object.keys(data).length) refs.value[`${FIELD_REF}${item.formCtlNo}`]?.dynamicRef?.resetFields();
3619
3729
  });
3620
3730
  }); /**
3621
- * 查询key value 对应的中文
3622
- */
3731
+ * 查询key value 对应的中文
3732
+ */
3623
3733
  if (queryList.length) fetchDataValueNameByKeys({
3624
3734
  queryDataValueNameByKeys: queryList
3625
3735
  });
3626
3736
  } /**
3627
- * props.data 监听变化,获取dataValueName
3628
- */
3737
+ * props.data 监听变化,获取dataValueName
3738
+ */
3629
3739
  (0, __WEBPACK_EXTERNAL_MODULE_vue__.watch)([
3630
3740
  ()=>props.data,
3631
3741
  loading
@@ -3654,7 +3764,9 @@ const FIELD_REF = 'fieldRef_'; // 存储动态 ref 的对象
3654
3764
  ...acc,
3655
3765
  ...other
3656
3766
  };
3657
- }, {});
3767
+ }, {
3768
+ ...hideData.value
3769
+ });
3658
3770
  return [
3659
3771
  null,
3660
3772
  params
@@ -3754,9 +3866,9 @@ const FIELD_REF = 'fieldRef_'; // 存储动态 ref 的对象
3754
3866
  const form_design_render_exports_ = /*#__PURE__*/ (0, exportHelper["default"])(form_design_rendervue_type_script_setup_true_lang_tsx_name_FormDesignRender, [
3755
3867
  [
3756
3868
  '__scopeId',
3757
- "data-v-0a99cc9e"
3869
+ "data-v-0281f06a"
3758
3870
  ]
3759
3871
  ]);
3760
3872
  /* ESM default export */ const form_design_render = form_design_render_exports_;
3761
3873
  var __webpack_exports__COMPONENT_CODE = __WEBPACK_EXTERNAL_MODULE__sun_toolkit_enums__.COMPONENT_CODE;
3762
- export { copy_text_with_tooltip as CopyTextWithTooltip, dbgrid_component_setting as DbgridComponentSetting, dict_select as DictSelect, flag_select as FlagSelect, form_design_render as FormDesignRender, hospital_select as HospitalSelect, patient_access as PatientAccess, PatientInfo, pro_dialog as ProDialog, pro_form as ProForm, pro_table as ProTable, Title, __webpack_exports__COMPONENT_CODE as COMPONENT_CODE };
3874
+ export { copy_text_with_tooltip as CopyTextWithTooltip, dbgrid_component_setting as DbgridComponentSetting, dict_select as DictSelect, flag_select as FlagSelect, form_design_render as FormDesignRender, FormUnit, hospital_select as HospitalSelect, patient_access as PatientAccess, PatientInfo, pro_dialog as ProDialog, pro_form as ProForm, pro_table as ProTable, Title, __webpack_exports__COMPONENT_CODE as COMPONENT_CODE };
package/dist/index.js CHANGED
@@ -1,6 +1,6 @@
1
1
  import * as __WEBPACK_EXTERNAL_MODULE_vue__ from "vue";
2
- import * as __WEBPACK_EXTERNAL_MODULE_sortablejs__ from "sortablejs";
3
2
  import * as __WEBPACK_EXTERNAL_MODULE_element_sun__ from "element-sun";
3
+ import * as __WEBPACK_EXTERNAL_MODULE_sortablejs__ from "sortablejs";
4
4
  import * as __WEBPACK_EXTERNAL_MODULE__element_sun_icons_vue__ from "@element-sun/icons-vue";
5
5
  import * as __WEBPACK_EXTERNAL_MODULE__sun_toolkit_enums__ from "@sun-toolkit/enums";
6
6
  import * as __WEBPACK_EXTERNAL_MODULE__sun_toolkit_request__ from "@sun-toolkit/request";
@@ -229,7 +229,7 @@ function useTableConfigColumn(changeInputSort, length) {
229
229
  prop: 'displayFlag',
230
230
  minWidth: 170,
231
231
  editable: true,
232
- render: (row)=>(0, __WEBPACK_EXTERNAL_MODULE_vue__.h)('el-checkbox', {
232
+ render: (row)=>(0, __WEBPACK_EXTERNAL_MODULE_vue__.h)(__WEBPACK_EXTERNAL_MODULE_element_sun__.ElCheckbox, {
233
233
  class: 'w-full justify-center',
234
234
  'true-label': 1,
235
235
  'false-label': 0,
@@ -242,7 +242,7 @@ function useTableConfigColumn(changeInputSort, length) {
242
242
  label: '列宽 (最小值)',
243
243
  prop: 'minWidth',
244
244
  minWidth: 170,
245
- render: (row)=>(0, __WEBPACK_EXTERNAL_MODULE_vue__.h)('el-input-number', {
245
+ render: (row)=>(0, __WEBPACK_EXTERNAL_MODULE_vue__.h)(__WEBPACK_EXTERNAL_MODULE_element_sun__.ElInputNumber, {
246
246
  maxLength: 16,
247
247
  'controls-position': 'right',
248
248
  modelValue: row.minWidth,
@@ -255,7 +255,7 @@ function useTableConfigColumn(changeInputSort, length) {
255
255
  label: '排序',
256
256
  prop: 'sort',
257
257
  minWidth: 170,
258
- render: (row, index)=>(0, __WEBPACK_EXTERNAL_MODULE_vue__.h)('el-input-number', {
258
+ render: (row, index)=>(0, __WEBPACK_EXTERNAL_MODULE_vue__.h)(__WEBPACK_EXTERNAL_MODULE_element_sun__.ElInputNumber, {
259
259
  max: length,
260
260
  min: 0,
261
261
  'controls-position': 'right',
@@ -610,7 +610,7 @@ const _hoisted_3 = {
610
610
  sort: index + 1,
611
611
  columnClass: 'truncate',
612
612
  render: (row, index)=>{
613
- if (item.render) return (0, __WEBPACK_EXTERNAL_MODULE_vue__.h)('el-button', {
613
+ if (item.render) return (0, __WEBPACK_EXTERNAL_MODULE_vue__.h)(__WEBPACK_EXTERNAL_MODULE_element_sun__.ElButton, {
614
614
  type: 'text',
615
615
  class: 'pointer-events-none h-5',
616
616
  disabled: true
@@ -922,7 +922,7 @@ const _hoisted_3 = {
922
922
  const dbgrid_component_setting_exports_ = /*#__PURE__*/ (0, exportHelper["default"])(dbgrid_component_settingvue_type_script_setup_true_lang_tsx, [
923
923
  [
924
924
  '__scopeId',
925
- "data-v-6b73f6ca"
925
+ "data-v-5ff76b6b"
926
926
  ]
927
927
  ]);
928
928
  /* ESM default export */ const dbgrid_component_setting = dbgrid_component_setting_exports_;
@@ -1027,7 +1027,7 @@ const pro_tablevue_type_script_lang_ts_setup_true_name_ProTable_hoisted_1 = {
1027
1027
  default: void 0
1028
1028
  },
1029
1029
  componentNo: {
1030
- default: ''
1030
+ default: ""
1031
1031
  },
1032
1032
  fetchData: {
1033
1033
  type: Function,
@@ -1042,7 +1042,7 @@ const pro_tablevue_type_script_lang_ts_setup_true_name_ProTable_hoisted_1 = {
1042
1042
  default: false
1043
1043
  },
1044
1044
  rowKey: {
1045
- default: 'id'
1045
+ default: "id"
1046
1046
  },
1047
1047
  loading: {
1048
1048
  type: Boolean,
@@ -1083,11 +1083,11 @@ const pro_tablevue_type_script_lang_ts_setup_true_name_ProTable_hoisted_1 = {
1083
1083
  });
1084
1084
  const serveColumn = (0, __WEBPACK_EXTERNAL_MODULE_vue__.ref)([]);
1085
1085
  const columnTypes = [
1086
- 'selection',
1087
- 'radio',
1088
- 'index',
1089
- 'expand',
1090
- 'sort'
1086
+ "selection",
1087
+ "radio",
1088
+ "index",
1089
+ "expand",
1090
+ "sort"
1091
1091
  ];
1092
1092
  const dbgridComponentSettingRef = (0, __WEBPACK_EXTERNAL_MODULE_vue__.ref)();
1093
1093
  const formRef = (0, __WEBPACK_EXTERNAL_MODULE_vue__.ref)();
@@ -1095,23 +1095,75 @@ const pro_tablevue_type_script_lang_ts_setup_true_name_ProTable_hoisted_1 = {
1095
1095
  const uuid = (0, __WEBPACK_EXTERNAL_MODULE_vue__.ref)((0, __WEBPACK_EXTERNAL_MODULE_vue__.useId)());
1096
1096
  // 定义 emit 事件
1097
1097
  const emit = __emit;
1098
+ const attrs = (0, __WEBPACK_EXTERNAL_MODULE_vue__.useAttrs)();
1099
+ /**
1100
+ *获取参与排序的列表 索引 是否可以拖拽
1101
+ */ function getDragSortData(newIndex, data, startIndexObj, sortData) {
1102
+ data.forEach((item, index)=>{
1103
+ startIndexObj.startIndex += 1;
1104
+ if (startIndexObj.startIndex > newIndex) return;
1105
+ if (startIndexObj.startIndex === newIndex) {
1106
+ sortData.curIndex = index;
1107
+ sortData.curData = item;
1108
+ sortData.result = data;
1109
+ }
1110
+ if (item?.[attrs?.["tree-props"]?.children]) getDragSortData(newIndex, item?.[attrs?.["tree-props"]?.children], startIndexObj, sortData);
1111
+ });
1112
+ return sortData;
1113
+ }
1114
+ /**
1115
+ * 获取拖拽排序数据结果
1116
+ */ function getSortableResult(newIndex, oldIndex) {
1117
+ let data = [
1118
+ ...state.tableData
1119
+ ];
1120
+ if (attrs?.["tree-props"]) {
1121
+ let { result, curIndex: newCurIndex, curData: newCurData } = getDragSortData(newIndex, data, {
1122
+ startIndex: -1
1123
+ }, {
1124
+ result: [],
1125
+ curIndex: 0,
1126
+ curData: {}
1127
+ });
1128
+ let { curIndex: oldCurIndex, curData: oldCurData } = getDragSortData(oldIndex, data, {
1129
+ startIndex: -1
1130
+ }, {
1131
+ result: [],
1132
+ curIndex: 0,
1133
+ curData: {}
1134
+ });
1135
+ if (newCurData.belongGroupElementId !== oldCurData.belongGroupElementId) {
1136
+ __WEBPACK_EXTERNAL_MODULE_element_sun__.ElMessage.warning("暂不支持跨层级拖拽配置");
1137
+ return [];
1138
+ }
1139
+ const [removedItem] = result.splice(oldCurIndex, 1);
1140
+ result.splice(newCurIndex, 0, removedItem);
1141
+ data = result;
1142
+ } else {
1143
+ const [removedItem] = data.splice(oldIndex, 1);
1144
+ data.splice(newIndex, 0, removedItem);
1145
+ }
1146
+ return data;
1147
+ }
1098
1148
  /***
1099
1149
  * 表格拖拽排序
1100
1150
  **/ const initDragSort = ()=>{
1101
1151
  const tbody = document.querySelector(`#${uuid.value} tbody`);
1152
+ let initialHTML = ""; //暂不支持跨层级拖拽
1102
1153
  if (tbody) __WEBPACK_EXTERNAL_MODULE_sortablejs__["default"].create(tbody, {
1103
- handle: '.cursor-move',
1154
+ handle: ".cursor-move",
1104
1155
  animation: 300,
1105
1156
  onEnd (evt) {
1106
1157
  const { newIndex, oldIndex } = evt;
1107
1158
  if (newIndex === oldIndex || void 0 === newIndex || void 0 === oldIndex) return;
1108
1159
  //获取拖动后的排序
1109
- const data = [
1110
- ...state.tableData
1111
- ];
1112
- const [removedItem] = data.splice(oldIndex, 1);
1113
- data.splice(newIndex, 0, removedItem);
1114
- emit('drag-end', data);
1160
+ let data = getSortableResult(newIndex, oldIndex);
1161
+ if (data.length) emit("drag-end", data);
1162
+ else evt.from.innerHTML = initialHTML;
1163
+ },
1164
+ onStart (evt) {
1165
+ // 在拖拽开始时,记录当前容器的 HTML
1166
+ initialHTML = evt.from.innerHTML;
1115
1167
  }
1116
1168
  });
1117
1169
  };
@@ -1121,7 +1173,7 @@ const pro_tablevue_type_script_lang_ts_setup_true_name_ProTable_hoisted_1 = {
1121
1173
  });
1122
1174
  async function fetchDbgridComponent() {
1123
1175
  let [, result] = await queryDbgridComponentByExample({
1124
- componentNo: props.componentNo || ''
1176
+ componentNo: props.componentNo || ""
1125
1177
  });
1126
1178
  if (result?.success) try {
1127
1179
  let column = result.data.dbgridSettingValue && JSON.parse(result.data.dbgridSettingValue) || [];
@@ -1154,7 +1206,7 @@ const pro_tablevue_type_script_lang_ts_setup_true_name_ProTable_hoisted_1 = {
1154
1206
  state.pageInfo.pageNumber = 1;
1155
1207
  state.pageInfo.pageSize = val;
1156
1208
  fetchList();
1157
- } else emit('size-page-change', val);
1209
+ } else emit("size-page-change", val);
1158
1210
  };
1159
1211
  /**
1160
1212
  * 分页组件改变 当前页数 事件
@@ -1162,7 +1214,7 @@ const pro_tablevue_type_script_lang_ts_setup_true_name_ProTable_hoisted_1 = {
1162
1214
  if (props.fetchData) {
1163
1215
  state.pageInfo.pageNumber = val;
1164
1216
  fetchList();
1165
- } else emit('current-page-change', val);
1217
+ } else emit("current-page-change", val);
1166
1218
  }
1167
1219
  // 超级表格 ref
1168
1220
  const proTableRef = (0, __WEBPACK_EXTERNAL_MODULE_vue__.ref)();
@@ -1179,7 +1231,7 @@ const pro_tablevue_type_script_lang_ts_setup_true_name_ProTable_hoisted_1 = {
1179
1231
  if (Object.keys(props.filterObj).length) return [
1180
1232
  ...state.tableData
1181
1233
  ].filter((item)=>Object.keys(props.filterObj).every((cur)=>!props.filterObj[cur] && [
1182
- '',
1234
+ "",
1183
1235
  void 0,
1184
1236
  null
1185
1237
  ].includes(props.filterObj[cur]) || item[cur] === props.filterObj[cur]));
@@ -2480,13 +2532,18 @@ const PatientInfo_exports_ = PatientInfovue_type_script_setup_true_lang_ts;
2480
2532
  const emit = __emit;
2481
2533
  const loading = (0, __WEBPACK_EXTERNAL_MODULE_vue__.ref)(true);
2482
2534
  const props = __props;
2483
- const tableData = (0, __WEBPACK_EXTERNAL_MODULE_vue__.ref)([
2484
- {
2485
- value: props.defaultValue,
2486
- label: props.defaultValueName
2487
- }
2488
- ]);
2489
- let inputChange = debounce(fetchData, 800);
2535
+ const tableData = (0, __WEBPACK_EXTERNAL_MODULE_vue__.ref)([]);
2536
+ (0, __WEBPACK_EXTERNAL_MODULE_vue__.watch)(()=>props.defaultValue, ()=>{
2537
+ if (props.defaultValue && props.defaultValueName) tableData.value = [
2538
+ {
2539
+ value: props.defaultValue,
2540
+ label: props.defaultValueName
2541
+ }
2542
+ ];
2543
+ }, {
2544
+ immediate: true
2545
+ });
2546
+ let inputChange = debounce(fetchData, 500);
2490
2547
  async function fetchData(value) {
2491
2548
  loading.value = true;
2492
2549
  let [, result] = await queryDictDataListByExample({
@@ -2506,9 +2563,9 @@ const PatientInfo_exports_ = PatientInfovue_type_script_setup_true_lang_ts;
2506
2563
  }
2507
2564
  }
2508
2565
  /**
2509
- *
2510
- * @param value 下拉框选择
2511
- */ function change(value) {
2566
+ *
2567
+ * @param value 下拉框选择
2568
+ */ function change(value) {
2512
2569
  let name = (tableData.value.find((item)=>item.value === value) || {})['label'];
2513
2570
  emit('change', value, name);
2514
2571
  }
@@ -2520,10 +2577,12 @@ const PatientInfo_exports_ = PatientInfovue_type_script_setup_true_lang_ts;
2520
2577
  loading: loading.value && !tableData.value.length,
2521
2578
  disabled: props.disabled,
2522
2579
  remote: true,
2580
+ "remote-show-suffix": "",
2523
2581
  filterable: true,
2524
2582
  onChange: change,
2525
2583
  "remote-method": (value)=>{
2526
- (0, __WEBPACK_EXTERNAL_MODULE_vue__.unref)(inputChange)(value);
2584
+ if (value) (0, __WEBPACK_EXTERNAL_MODULE_vue__.unref)(inputChange)(value);
2585
+ else fetchData(value);
2527
2586
  }
2528
2587
  }, {
2529
2588
  default: (0, __WEBPACK_EXTERNAL_MODULE_vue__.withCtx)(()=>[
@@ -2549,7 +2608,7 @@ const PatientInfo_exports_ = PatientInfovue_type_script_setup_true_lang_ts;
2549
2608
  const dict_select_exports_ = /*#__PURE__*/ (0, exportHelper["default"])(dict_selectvue_type_script_setup_true_lang_ts, [
2550
2609
  [
2551
2610
  '__scopeId',
2552
- "data-v-54541b2c"
2611
+ "data-v-7d3f5f96"
2553
2612
  ]
2554
2613
  ]);
2555
2614
  /* ESM default export */ const dict_select = dict_select_exports_;
@@ -3240,20 +3299,25 @@ const COMMA = ',';
3240
3299
  * @param data
3241
3300
  * @param result
3242
3301
  * @returns
3243
- */ function expansionGroup(data, result = []) {
3244
- data = data.filter((item)=>item.displayFlag === __WEBPACK_EXTERNAL_MODULE__sun_toolkit_enums__.FLAG.YES);
3302
+ */ function expansionGroup(data, result = [], hideData = {} //部分数据页面不展示 但是接口还需要传递配置的默认值
3303
+ ) {
3245
3304
  data.forEach((item)=>{
3246
- const isGroup = item.controlTypeCode === __WEBPACK_EXTERNAL_MODULE__sun_toolkit_enums__.CONTROL_TYPE_CODE.GROUP;
3247
- const isSet = item.controlTypeCode === __WEBPACK_EXTERNAL_MODULE__sun_toolkit_enums__.CONTROL_TYPE_CODE.SET;
3248
- if (isGroup || isSet) {
3249
- item.subFormControlList = item.subFormControlList?.map((cur)=>({
3250
- ...cur,
3251
- bindingFieldNo: cur.bindingFieldNo.startsWith(GROUP) || cur.bindingFieldNo.startsWith(SET) ? cur.bindingFieldNo : `${isGroup ? GROUP : SET}${SEPARATOR}${item.bindingFieldNo}${SEPARATOR}${cur.bindingFieldNo}`
3252
- }));
3253
- expansionGroup(item.subFormControlList || [], result);
3254
- } else result.push(item);
3305
+ if (item.displayFlag === __WEBPACK_EXTERNAL_MODULE__sun_toolkit_enums__.FLAG.YES) {
3306
+ const isGroup = item.controlTypeCode === __WEBPACK_EXTERNAL_MODULE__sun_toolkit_enums__.CONTROL_TYPE_CODE.GROUP;
3307
+ const isSet = item.controlTypeCode === __WEBPACK_EXTERNAL_MODULE__sun_toolkit_enums__.CONTROL_TYPE_CODE.SET;
3308
+ if (isGroup || isSet) {
3309
+ item.subFormControlList = item.subFormControlList?.map((cur)=>({
3310
+ ...cur,
3311
+ bindingFieldNo: cur.bindingFieldNo.startsWith(GROUP) || cur.bindingFieldNo.startsWith(SET) ? cur.bindingFieldNo : `${isGroup ? GROUP : SET}${SEPARATOR}${item.bindingFieldNo}${SEPARATOR}${cur.bindingFieldNo}`
3312
+ }));
3313
+ expansionGroup(item.subFormControlList || [], result, hideData);
3314
+ } else result.push(item);
3315
+ } else if (item.defaultValue) hideData[item.bindingFieldNo] = item.defaultValue;
3255
3316
  });
3256
- return result;
3317
+ return {
3318
+ result,
3319
+ hideData
3320
+ };
3257
3321
  }
3258
3322
  /**
3259
3323
  * 获取组件类型
@@ -3319,10 +3383,13 @@ function getExtraProps(item, dataValueNames, modelValue) {
3319
3383
  };
3320
3384
  return resultObj;
3321
3385
  }
3322
- function useGetFromConfigData(result, layoutTypeCode) {
3386
+ function useGetFromConfigData(result, layoutTypeCode, afterValueChange) {
3323
3387
  return result.map((item)=>({
3324
3388
  label: item.labelNameDisplay || item.labelName,
3325
3389
  name: item.bindingFieldNo,
3390
+ onModelChange: (value, model)=>{
3391
+ if (afterValueChange) afterValueChange(item.bindingFieldNo, value, model); // 调用函数并传递参数
3392
+ },
3326
3393
  component: getComponentType(item),
3327
3394
  placeholder: getPlaceholder(item),
3328
3395
  defaultValue: item.defaultValue || '',
@@ -3411,14 +3478,16 @@ const Collapsevue_type_script_setup_true_lang_tsx_hoisted_1 = {
3411
3478
  function handleClick() {
3412
3479
  show.value = !show.value;
3413
3480
  } /**
3414
- * 获取初始化的数据
3415
- */
3416
- const initList = expansionGroup(props.designDetailInfo.subFormControlList || [], []); /**
3417
- * 初次渲染
3418
- */
3419
- const initData = useGetFromConfigData(initList, props.layoutTypeCode); /**
3420
- * 数据更新后获取对应的name
3421
- */
3481
+ * 获取初始化的数据
3482
+ */
3483
+ const { result: initList, hideData } = expansionGroup(props.designDetailInfo.subFormControlList || [], []);
3484
+ const afterValueChange = (0, __WEBPACK_EXTERNAL_MODULE_vue__.inject)('afterValueChange');
3485
+ const disabled = (0, __WEBPACK_EXTERNAL_MODULE_vue__.inject)('disabled'); /**
3486
+ * 初次渲染
3487
+ */
3488
+ const initData = useGetFromConfigData(initList, props.layoutTypeCode, afterValueChange); /**
3489
+ * 数据更新后获取对应的name
3490
+ */
3422
3491
  const formData = (0, __WEBPACK_EXTERNAL_MODULE_vue__.computed)(()=>initData.map((item, index)=>({
3423
3492
  ...item,
3424
3493
  extraProps: getExtraProps(initList[index] || {}, props.dataValueNames, modelValue.value)
@@ -3426,7 +3495,10 @@ const Collapsevue_type_script_setup_true_lang_tsx_hoisted_1 = {
3426
3495
  __expose({
3427
3496
  submit: async ()=>{
3428
3497
  let result = await formRef.value?.ref.validate();
3429
- if (result) return integrateData(modelValue.value);
3498
+ if (result) return integrateData({
3499
+ ...modelValue.value,
3500
+ ...hideData
3501
+ });
3430
3502
  },
3431
3503
  setModelValue: (val)=>{
3432
3504
  modelValue.value = val;
@@ -3482,12 +3554,14 @@ const Collapsevue_type_script_setup_true_lang_tsx_hoisted_1 = {
3482
3554
  key: 0,
3483
3555
  ref_key: "formRef",
3484
3556
  ref: formRef,
3557
+ disabled: (0, __WEBPACK_EXTERNAL_MODULE_vue__.unref)(disabled),
3485
3558
  modelValue: modelValue.value,
3486
3559
  "onUpdate:modelValue": _cache[0] || (_cache[0] = ($event)=>modelValue.value = $event),
3487
3560
  class: "ml-4 mr-4 mt-4",
3488
3561
  column: props.layoutTypeCode,
3489
3562
  data: formData.value
3490
3563
  }, null, 8, [
3564
+ "disabled",
3491
3565
  "modelValue",
3492
3566
  "column",
3493
3567
  "data"
@@ -3499,7 +3573,7 @@ const Collapsevue_type_script_setup_true_lang_tsx_hoisted_1 = {
3499
3573
  const Collapse_exports_ = /*#__PURE__*/ (0, exportHelper["default"])(Collapsevue_type_script_setup_true_lang_tsx, [
3500
3574
  [
3501
3575
  '__scopeId',
3502
- "data-v-46a48028"
3576
+ "data-v-89d161d4"
3503
3577
  ]
3504
3578
  ]);
3505
3579
  /* ESM default export */ const Collapse = Collapse_exports_;
@@ -3514,10 +3588,13 @@ const Tablevue_type_script_setup_true_lang_tsx_hoisted_1 = {
3514
3588
  },
3515
3589
  setup (__props, { expose: __expose }) {
3516
3590
  const props = __props;
3591
+ const hideData = (0, __WEBPACK_EXTERNAL_MODULE_vue__.ref)({}); //页面不展示 但是具有默认值 需传递给接口
3517
3592
  const tableRef = (0, __WEBPACK_EXTERNAL_MODULE_vue__.ref)();
3518
3593
  const settingList = (0, __WEBPACK_EXTERNAL_MODULE_vue__.ref)([]);
3594
+ const disabled = (0, __WEBPACK_EXTERNAL_MODULE_vue__.inject)('disabled');
3519
3595
  function useGetTableColumnData() {
3520
- let result = expansionGroup(props.designDetailInfo.subFormControlList || [], []);
3596
+ let { result, hideData: hideObj } = expansionGroup(props.designDetailInfo.subFormControlList || [], []);
3597
+ hideData.value = hideObj;
3521
3598
  return result.map((item)=>({
3522
3599
  label: item.labelNameDisplay || item.labelName,
3523
3600
  prop: item.bindingFieldNo,
@@ -3535,6 +3612,7 @@ const Tablevue_type_script_setup_true_lang_tsx_hoisted_1 = {
3535
3612
  }
3536
3613
  ],
3537
3614
  render: (row)=>(0, __WEBPACK_EXTERNAL_MODULE_vue__.h)(FormUnit, {
3615
+ disabled: disabled,
3538
3616
  component: getComponentType(item),
3539
3617
  label: item.labelNameDisplay || item.labelName,
3540
3618
  placeholder: getPlaceholder(item),
@@ -3560,7 +3638,10 @@ const Tablevue_type_script_setup_true_lang_tsx_hoisted_1 = {
3560
3638
  submit: async ()=>{
3561
3639
  let result = await tableRef?.value?.formRef?.validateField();
3562
3640
  if (result) return {
3563
- [props.designDetailInfo.bindingFieldNo]: settingList.value.map(({ editable, ...item })=>integrateData(item))
3641
+ [props.designDetailInfo.bindingFieldNo]: settingList.value.map(({ editable, ...item })=>integrateData({
3642
+ ...hideData.value,
3643
+ ...item
3644
+ }))
3564
3645
  };
3565
3646
  },
3566
3647
  setModelValue: (val)=>{
@@ -3592,7 +3673,8 @@ const Tablevue_type_script_setup_true_lang_tsx_hoisted_1 = {
3592
3673
  "columns",
3593
3674
  "data"
3594
3675
  ]),
3595
- (0, __WEBPACK_EXTERNAL_MODULE_vue__.createVNode)(_component_el_button, {
3676
+ (0, __WEBPACK_EXTERNAL_MODULE_vue__.unref)(disabled) ? (0, __WEBPACK_EXTERNAL_MODULE_vue__.createCommentVNode)("", true) : ((0, __WEBPACK_EXTERNAL_MODULE_vue__.openBlock)(), (0, __WEBPACK_EXTERNAL_MODULE_vue__.createBlock)(_component_el_button, {
3677
+ key: 0,
3596
3678
  class: "w-full border-t-0",
3597
3679
  onClick: onAddItem
3598
3680
  }, {
@@ -3605,7 +3687,7 @@ const Tablevue_type_script_setup_true_lang_tsx_hoisted_1 = {
3605
3687
  })
3606
3688
  ]),
3607
3689
  _: 1
3608
- })
3690
+ }))
3609
3691
  ]);
3610
3692
  };
3611
3693
  }
@@ -3613,7 +3695,7 @@ const Tablevue_type_script_setup_true_lang_tsx_hoisted_1 = {
3613
3695
  const Table_exports_ = /*#__PURE__*/ (0, exportHelper["default"])(Tablevue_type_script_setup_true_lang_tsx, [
3614
3696
  [
3615
3697
  '__scopeId',
3616
- "data-v-737d0299"
3698
+ "data-v-4437dec2"
3617
3699
  ]
3618
3700
  ]);
3619
3701
  /* ESM default export */ const Table = Table_exports_;
@@ -3643,10 +3725,12 @@ const Setvue_type_script_setup_true_lang_tsx_name_Set_hoisted_2 = {
3643
3725
  const modelValue = (0, __WEBPACK_EXTERNAL_MODULE_vue__.ref)({}); /**
3644
3726
  * 获取初始化的数据
3645
3727
  */
3646
- const initList = expansionGroup(props.designDetailInfo.subFormControlList || [], []); /**
3728
+ const { hideData, result: initList } = expansionGroup(props.designDetailInfo.subFormControlList || [], []);
3729
+ const afterValueChange = (0, __WEBPACK_EXTERNAL_MODULE_vue__.inject)('afterValueChange');
3730
+ const disabled = (0, __WEBPACK_EXTERNAL_MODULE_vue__.inject)('disabled'); /**
3647
3731
  * 初次渲染
3648
3732
  */
3649
- const initData = useGetFromConfigData(initList, props.layoutTypeCode); /**
3733
+ const initData = useGetFromConfigData(initList, props.layoutTypeCode, afterValueChange); /**
3650
3734
  * 数据更新后获取对应的name
3651
3735
  */
3652
3736
  const formData = (0, __WEBPACK_EXTERNAL_MODULE_vue__.computed)(()=>initData.map((item, index)=>({
@@ -3657,7 +3741,10 @@ const Setvue_type_script_setup_true_lang_tsx_name_Set_hoisted_2 = {
3657
3741
  submit: async ()=>{
3658
3742
  let result = await formRef.value?.ref.validate();
3659
3743
  if (result) return {
3660
- [props.designDetailInfo.bindingFieldNo]: integrateData(modelValue.value),
3744
+ [props.designDetailInfo.bindingFieldNo]: integrateData({
3745
+ ...hideData,
3746
+ ...modelValue.value
3747
+ }),
3661
3748
  bindingFieldNo: props.designDetailInfo.bindingFieldNo,
3662
3749
  isSet: true
3663
3750
  };
@@ -3674,12 +3761,14 @@ const Setvue_type_script_setup_true_lang_tsx_name_Set_hoisted_2 = {
3674
3761
  (0, __WEBPACK_EXTERNAL_MODULE_vue__.createVNode)((0, __WEBPACK_EXTERNAL_MODULE_vue__.unref)(pro_form), {
3675
3762
  ref_key: "formRef",
3676
3763
  ref: formRef,
3764
+ disabled: (0, __WEBPACK_EXTERNAL_MODULE_vue__.unref)(disabled),
3677
3765
  modelValue: modelValue.value,
3678
3766
  "onUpdate:modelValue": _cache[0] || (_cache[0] = ($event)=>modelValue.value = $event),
3679
3767
  class: "ml-4 mr-4",
3680
3768
  column: props.layoutTypeCode,
3681
3769
  data: formData.value
3682
3770
  }, null, 8, [
3771
+ "disabled",
3683
3772
  "modelValue",
3684
3773
  "column",
3685
3774
  "data"
@@ -3690,7 +3779,7 @@ const Setvue_type_script_setup_true_lang_tsx_name_Set_hoisted_2 = {
3690
3779
  const Set_exports_ = /*#__PURE__*/ (0, exportHelper["default"])(Setvue_type_script_setup_true_lang_tsx_name_Set, [
3691
3780
  [
3692
3781
  '__scopeId',
3693
- "data-v-3db350f4"
3782
+ "data-v-8c594a84"
3694
3783
  ]
3695
3784
  ]);
3696
3785
  /* ESM default export */ const Set = Set_exports_;
@@ -3704,14 +3793,16 @@ const Set_exports_ = /*#__PURE__*/ (0, exportHelper["default"])(Setvue_type_scri
3704
3793
  setup (__props, { expose: __expose }) {
3705
3794
  const props = __props;
3706
3795
  const formRef = (0, __WEBPACK_EXTERNAL_MODULE_vue__.ref)();
3707
- const modelValue = (0, __WEBPACK_EXTERNAL_MODULE_vue__.ref)({}); /**
3708
- * 初次渲染
3709
- */
3796
+ const modelValue = (0, __WEBPACK_EXTERNAL_MODULE_vue__.ref)({});
3797
+ const disabled = (0, __WEBPACK_EXTERNAL_MODULE_vue__.inject)('disabled');
3798
+ const afterValueChange = (0, __WEBPACK_EXTERNAL_MODULE_vue__.inject)('afterValueChange'); /**
3799
+ * 初次渲染
3800
+ */
3710
3801
  const initData = useGetFromConfigData([
3711
3802
  props.designDetailInfo
3712
- ], props.layoutTypeCode); /**
3713
- * 数据更新后获取对应的name
3714
- */
3803
+ ], props.layoutTypeCode, afterValueChange); /**
3804
+ * 数据更新后获取对应的name
3805
+ */
3715
3806
  const formData = (0, __WEBPACK_EXTERNAL_MODULE_vue__.computed)(()=>initData.map((item)=>({
3716
3807
  ...item,
3717
3808
  extraProps: getExtraProps(props.designDetailInfo, props.dataValueNames, modelValue.value)
@@ -3733,13 +3824,16 @@ const Set_exports_ = /*#__PURE__*/ (0, exportHelper["default"])(Setvue_type_scri
3733
3824
  return (_ctx, _cache)=>((0, __WEBPACK_EXTERNAL_MODULE_vue__.openBlock)(), (0, __WEBPACK_EXTERNAL_MODULE_vue__.createBlock)((0, __WEBPACK_EXTERNAL_MODULE_vue__.unref)(pro_form), {
3734
3825
  ref_key: "formRef",
3735
3826
  ref: formRef,
3827
+ disabled: (0, __WEBPACK_EXTERNAL_MODULE_vue__.unref)(disabled),
3736
3828
  modelValue: modelValue.value,
3737
3829
  "onUpdate:modelValue": _cache[0] || (_cache[0] = ($event)=>modelValue.value = $event),
3738
3830
  class: "ml-4 mr-4",
3739
- column: 1,
3831
+ column: props.layoutTypeCode,
3740
3832
  data: formData.value
3741
3833
  }, null, 8, [
3834
+ "disabled",
3742
3835
  "modelValue",
3836
+ "column",
3743
3837
  "data"
3744
3838
  ]));
3745
3839
  }
@@ -3747,7 +3841,7 @@ const Set_exports_ = /*#__PURE__*/ (0, exportHelper["default"])(Setvue_type_scri
3747
3841
  const Other_exports_ = /*#__PURE__*/ (0, exportHelper["default"])(Othervue_type_script_setup_true_lang_tsx, [
3748
3842
  [
3749
3843
  '__scopeId',
3750
- "data-v-065dcd30"
3844
+ "data-v-87036b8a"
3751
3845
  ]
3752
3846
  ]);
3753
3847
  /* ESM default export */ const Other = Other_exports_;
@@ -3829,9 +3923,17 @@ const FIELD_REF = 'fieldRef_'; // 存储动态 ref 的对象
3829
3923
  type: Boolean,
3830
3924
  default: true
3831
3925
  },
3926
+ disabled: {
3927
+ type: Boolean,
3928
+ default: false
3929
+ },
3832
3930
  afterChildSearch: {
3833
3931
  type: Function,
3834
3932
  default: ()=>{}
3933
+ },
3934
+ afterValueChange: {
3935
+ type: Function,
3936
+ default: ()=>{}
3835
3937
  }
3836
3938
  },
3837
3939
  emits: [
@@ -3845,6 +3947,7 @@ const FIELD_REF = 'fieldRef_'; // 存储动态 ref 的对象
3845
3947
  const submitLoading = (0, __WEBPACK_EXTERNAL_MODULE_vue__.ref)(false);
3846
3948
  const scrollbarRef = (0, __WEBPACK_EXTERNAL_MODULE_vue__.ref)();
3847
3949
  const layoutTypeCode = (0, __WEBPACK_EXTERNAL_MODULE_vue__.ref)(4);
3950
+ const hideData = (0, __WEBPACK_EXTERNAL_MODULE_vue__.ref)({}); //页面不展示 但是具有默认值 需传递给接口
3848
3951
  const emit = __emit;
3849
3952
  const configList = (0, __WEBPACK_EXTERNAL_MODULE_vue__.ref)([]); // 定义 dynamicRef 的类型
3850
3953
  const refs = (0, __WEBPACK_EXTERNAL_MODULE_vue__.ref)({});
@@ -3855,7 +3958,10 @@ const FIELD_REF = 'fieldRef_'; // 存储动态 ref 的对象
3855
3958
  });
3856
3959
  loading.value = false;
3857
3960
  if (result?.success) {
3858
- configList.value = result.data?.formDesignDetailList.filter((item)=>item.displayFlag === __WEBPACK_EXTERNAL_MODULE__sun_toolkit_enums__.FLAG.YES || item.controlTypeCode === __WEBPACK_EXTERNAL_MODULE__sun_toolkit_enums__.CONTROL_TYPE_CODE.COLLAPSE);
3961
+ configList.value = result.data?.formDesignDetailList.filter((item)=>{
3962
+ if (item.displayFlag === __WEBPACK_EXTERNAL_MODULE__sun_toolkit_enums__.FLAG.NO && item.defaultValue) hideData.value[item.bindingFieldNo] = item.defaultValue;
3963
+ return item.displayFlag === __WEBPACK_EXTERNAL_MODULE__sun_toolkit_enums__.FLAG.YES || item.controlTypeCode === __WEBPACK_EXTERNAL_MODULE__sun_toolkit_enums__.CONTROL_TYPE_CODE.COLLAPSE;
3964
+ });
3859
3965
  layoutTypeCode.value = Number(result.data?.layoutTypeCode);
3860
3966
  }
3861
3967
  } // 修复 ref 赋值问题
@@ -3872,11 +3978,15 @@ const FIELD_REF = 'fieldRef_'; // 存储动态 ref 的对象
3872
3978
  let [, result] = await queryDataValueNameByKeys(params);
3873
3979
  if (result?.success) dataValueNames.value = result.data || {};
3874
3980
  }
3981
+ (0, __WEBPACK_EXTERNAL_MODULE_vue__.provide)('disabled', props.disabled);
3982
+ (0, __WEBPACK_EXTERNAL_MODULE_vue__.provide)('afterValueChange', (name, value, model)=>{
3983
+ if (props.afterValueChange) props.afterValueChange(name, value, model);
3984
+ });
3875
3985
  function setValue(data, loading) {
3876
3986
  let queryList = [];
3877
3987
  configList.value.forEach((item)=>{
3878
3988
  if (loading) return;
3879
- const list = expansionGroup(item?.subFormControlList || [], []);
3989
+ const { result: list } = expansionGroup(item?.subFormControlList || [], []);
3880
3990
  let result = {};
3881
3991
  let otherDefaultValue = void 0 === getDefaultValue(data, item.bindingFieldNo) ? item.defaultValue : getDefaultValue(data, item.bindingFieldNo);
3882
3992
  switch(item.controlTypeCode){
@@ -3923,14 +4033,14 @@ const FIELD_REF = 'fieldRef_'; // 存储动态 ref 的对象
3923
4033
  if (!Object.keys(data).length) refs.value[`${FIELD_REF}${item.formCtlNo}`]?.dynamicRef?.resetFields();
3924
4034
  });
3925
4035
  }); /**
3926
- * 查询key value 对应的中文
3927
- */
4036
+ * 查询key value 对应的中文
4037
+ */
3928
4038
  if (queryList.length) fetchDataValueNameByKeys({
3929
4039
  queryDataValueNameByKeys: queryList
3930
4040
  });
3931
4041
  } /**
3932
- * props.data 监听变化,获取dataValueName
3933
- */
4042
+ * props.data 监听变化,获取dataValueName
4043
+ */
3934
4044
  (0, __WEBPACK_EXTERNAL_MODULE_vue__.watch)([
3935
4045
  ()=>props.data,
3936
4046
  loading
@@ -3959,7 +4069,9 @@ const FIELD_REF = 'fieldRef_'; // 存储动态 ref 的对象
3959
4069
  ...acc,
3960
4070
  ...other
3961
4071
  };
3962
- }, {});
4072
+ }, {
4073
+ ...hideData.value
4074
+ });
3963
4075
  return [
3964
4076
  null,
3965
4077
  params
@@ -4059,7 +4171,7 @@ const FIELD_REF = 'fieldRef_'; // 存储动态 ref 的对象
4059
4171
  const form_design_render_exports_ = /*#__PURE__*/ (0, exportHelper["default"])(form_design_rendervue_type_script_setup_true_lang_tsx_name_FormDesignRender, [
4060
4172
  [
4061
4173
  '__scopeId',
4062
- "data-v-0a99cc9e"
4174
+ "data-v-0281f06a"
4063
4175
  ]
4064
4176
  ]);
4065
4177
  /* ESM default export */ const form_design_render = form_design_render_exports_;
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "sun-biz",
3
- "version": "0.0.2-beta.4",
3
+ "version": "0.0.2-beta.6",
4
4
  "type": "module",
5
5
  "exports": {
6
6
  ".": {