adtec-hnyzfc-core-package 1.1.2 → 1.1.4

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.
Files changed (190) hide show
  1. package/dist/chunks/DictDisplay.vue_vue_type_script_setup_true_lang-BpBbsl20.js +1 -0
  2. package/dist/chunks/ElDescForm.vue_vue_type_style_index_0_lang-BFA5653m.js +1 -0
  3. package/dist/chunks/ElTagDisplay.vue_vue_type_script_setup_true_lang-Cbb3x-dA.js +1 -0
  4. package/dist/src/components/ElDescForm/ElDescForm.vue.d.ts +17 -5
  5. package/dist/src/components/ElDescForm/ElDescForm.vue.js +1 -1
  6. package/dist/src/components/SelectInDicators/SelectInDicators.vue.js +1 -1
  7. package/dist/src/components/Tag/ElTagDisplay.vue.d.ts +15 -0
  8. package/dist/src/components/Tag/ElTagDisplay.vue.js +1 -0
  9. package/dist/src/components/Tag/ElTagDisplayProps.d.ts +7 -0
  10. package/dist/src/components/VxeExportDialog/VxeExportDialog.vue.js +1 -1
  11. package/dist/src/components/VxeExportDialog/index.js +1 -1
  12. package/dist/src/components/business/comp.selectUser.vue.d.ts +1 -1
  13. package/dist/src/components/business/comp.selectUser.vue.js +1 -1
  14. package/dist/src/components/business/comp.userForm.vue.d.ts +1 -1
  15. package/dist/src/components/business/comp.userForm.vue.js +1 -1
  16. package/dist/src/components/dict/DictDisplay.vue.js +1 -1
  17. package/dist/src/components/upload/ExcelJsViewer.vue.d.ts +4 -4
  18. package/dist/src/components/upload/OfficePreviewHeaderBar.vue.d.ts +1 -1
  19. package/dist/src/config/VxeTableConfig.js +1 -1
  20. package/dist/src/interface/IVxeTable.d.ts +240 -6
  21. package/dist/src/mixin/globalMixin.js +1 -1
  22. package/dist/src/packages/index.d.ts +46 -5
  23. package/dist/src/packages/index.js +1 -1
  24. package/dist/src/plugins/plugins.js +1 -1
  25. package/dist/src/plugins/renderDialog.js +1 -1
  26. package/dist/src/types/vxe-table-shim.d.ts +25 -0
  27. package/dist/src/utils/modules.js +2 -2
  28. package/dist/styles/element-ui.css +1 -1
  29. package/package.json +2 -3
  30. package/dist/chunks/AddOrMinusMultiDialog.vue_vue_type_script_setup_true_lang-B2JJR5Im.js +0 -1
  31. package/dist/chunks/ApprovalNode.vue_vue_type_script_setup_true_lang-UOTgC-LR.js +0 -1
  32. package/dist/chunks/AssigneePanel.vue_vue_type_script_setup_true_lang-BBv9DWIF.js +0 -1
  33. package/dist/chunks/CcNode.vue_vue_type_script_setup_true_lang-DC4Lfz0O.js +0 -1
  34. package/dist/chunks/ConditionPanel.vue_vue_type_script_setup_true_lang-Bk2Pwa9X.js +0 -1
  35. package/dist/chunks/DictDisplay.vue_vue_type_script_setup_true_lang-S-4CNHJS.js +0 -1
  36. package/dist/chunks/ElDescForm.vue_vue_type_style_index_0_lang-DQTEQx6t.js +0 -1
  37. package/dist/chunks/EndPanel.vue_vue_type_script_setup_true_lang-DOiyPurA.js +0 -1
  38. package/dist/chunks/JumpNode.vue_vue_type_script_setup_true_lang-CAfaLHA3.js +0 -1
  39. package/dist/chunks/JumpPanel.vue_vue_type_script_setup_true_lang-3nX0rZdj.js +0 -1
  40. package/dist/chunks/NotifyNode.vue_vue_type_script_setup_true_lang-DaNOnZvd.js +0 -1
  41. package/dist/chunks/NotifyPanel.vue_vue_type_script_setup_true_lang-zgYngYte.js +0 -1
  42. package/dist/chunks/ProcessDetailDialog.vue_vue_type_style_index_0_lang-DPS1tams.js +0 -1
  43. package/dist/chunks/ProcessInstance.vue_vue_type_script_setup_true_lang-DuqA8amj.js +0 -1
  44. package/dist/chunks/TimerNode.vue_vue_type_script_setup_true_lang-xL5Q53ju.js +0 -1
  45. package/dist/chunks/TimerPanel.vue_vue_type_script_setup_true_lang-C1sow1Ol.js +0 -1
  46. package/dist/chunks/TreeNode.vue_vue_type_script_setup_true_name_TreeNode_lang-DRb0aQ9n.js +0 -1
  47. package/dist/chunks/Trigger.vue_vue_type_script_setup_true_lang-DH_ba4a_.js +0 -1
  48. package/dist/chunks/render.vue_vue_type_script_setup_true_lang-sGvQddve.js +0 -1
  49. package/dist/src/api/workflow/workflow.d.ts +0 -13
  50. package/dist/src/api/workflow/workflow.js +0 -1
  51. package/dist/src/api/workflow/workflowCommentApi.d.ts +0 -14
  52. package/dist/src/api/workflow/workflowCommentApi.js +0 -1
  53. package/dist/src/api/workflow/workflowInstApi.d.ts +0 -26
  54. package/dist/src/api/workflow/workflowInstApi.js +0 -1
  55. package/dist/src/components/bpmntree/api/modules/role.d.ts +0 -17
  56. package/dist/src/components/bpmntree/api/modules/role.js +0 -1
  57. package/dist/src/components/bpmntree/api/modules/user.d.ts +0 -12
  58. package/dist/src/components/bpmntree/api/modules/user.js +0 -1
  59. package/dist/src/components/bpmntree/components/AdvancedFilter/Operator.vue.d.ts +0 -10
  60. package/dist/src/components/bpmntree/components/AdvancedFilter/Operator.vue.js +0 -1
  61. package/dist/src/components/bpmntree/components/AdvancedFilter/Trigger.vue.d.ts +0 -13
  62. package/dist/src/components/bpmntree/components/AdvancedFilter/Trigger.vue.js +0 -1
  63. package/dist/src/components/bpmntree/components/AdvancedFilter/index.vue.d.ts +0 -28
  64. package/dist/src/components/bpmntree/components/AdvancedFilter/index.vue.js +0 -1
  65. package/dist/src/components/bpmntree/components/AdvancedFilter/type.d.ts +0 -16
  66. package/dist/src/components/bpmntree/components/FlowIcon/index.d.ts +0 -47
  67. package/dist/src/components/bpmntree/components/FlowIcon/index.js +0 -1
  68. package/dist/src/components/bpmntree/components/Render/render.vue.d.ts +0 -10
  69. package/dist/src/components/bpmntree/components/Render/render.vue.js +0 -1
  70. package/dist/src/components/bpmntree/components/Render/type.d.ts +0 -12
  71. package/dist/src/components/bpmntree/components/Render/type.js +0 -1
  72. package/dist/src/components/bpmntree/components/RoleSelector/RolePicker.vue.d.ts +0 -19
  73. package/dist/src/components/bpmntree/components/RoleSelector/RolePicker.vue.js +0 -1
  74. package/dist/src/components/bpmntree/components/RoleSelector/RoleTag.vue.d.ts +0 -15
  75. package/dist/src/components/bpmntree/components/RoleSelector/RoleTag.vue.js +0 -1
  76. package/dist/src/components/bpmntree/components/RoleSelector/index.vue.d.ts +0 -19
  77. package/dist/src/components/bpmntree/components/RoleSelector/index.vue.js +0 -1
  78. package/dist/src/components/bpmntree/components/UserSelector/UserTag.vue.d.ts +0 -15
  79. package/dist/src/components/bpmntree/components/UserSelector/UserTag.vue.js +0 -1
  80. package/dist/src/components/bpmntree/components/UserSelector/index.vue.d.ts +0 -19
  81. package/dist/src/components/bpmntree/components/UserSelector/index.vue.js +0 -1
  82. package/dist/src/components/bpmntree/hooks/useDraggableScroll.d.ts +0 -4
  83. package/dist/src/components/bpmntree/hooks/useDraggableScroll.js +0 -1
  84. package/dist/src/components/bpmntree/views/flowDesign/index.vue.d.ts +0 -33
  85. package/dist/src/components/bpmntree/views/flowDesign/index.vue.js +0 -1
  86. package/dist/src/components/bpmntree/views/flowDesign/nodes/Add.vue.d.ts +0 -7
  87. package/dist/src/components/bpmntree/views/flowDesign/nodes/Add.vue.js +0 -1
  88. package/dist/src/components/bpmntree/views/flowDesign/nodes/ApprovalNode.vue.d.ts +0 -6
  89. package/dist/src/components/bpmntree/views/flowDesign/nodes/ApprovalNode.vue.js +0 -1
  90. package/dist/src/components/bpmntree/views/flowDesign/nodes/CcNode.vue.d.ts +0 -6
  91. package/dist/src/components/bpmntree/views/flowDesign/nodes/CcNode.vue.js +0 -1
  92. package/dist/src/components/bpmntree/views/flowDesign/nodes/ConcurrentNode.vue.d.ts +0 -9
  93. package/dist/src/components/bpmntree/views/flowDesign/nodes/ConcurrentNode.vue.js +0 -1
  94. package/dist/src/components/bpmntree/views/flowDesign/nodes/ConditionNode.vue.d.ts +0 -16
  95. package/dist/src/components/bpmntree/views/flowDesign/nodes/ConditionNode.vue.js +0 -1
  96. package/dist/src/components/bpmntree/views/flowDesign/nodes/EndNode.vue.d.ts +0 -13
  97. package/dist/src/components/bpmntree/views/flowDesign/nodes/EndNode.vue.js +0 -1
  98. package/dist/src/components/bpmntree/views/flowDesign/nodes/ExclusiveNode.vue.d.ts +0 -6
  99. package/dist/src/components/bpmntree/views/flowDesign/nodes/ExclusiveNode.vue.js +0 -1
  100. package/dist/src/components/bpmntree/views/flowDesign/nodes/GatewayNode.vue.d.ts +0 -23
  101. package/dist/src/components/bpmntree/views/flowDesign/nodes/GatewayNode.vue.js +0 -1
  102. package/dist/src/components/bpmntree/views/flowDesign/nodes/InclusiveNode.vue.d.ts +0 -6
  103. package/dist/src/components/bpmntree/views/flowDesign/nodes/InclusiveNode.vue.js +0 -1
  104. package/dist/src/components/bpmntree/views/flowDesign/nodes/JumpNode.vue.d.ts +0 -6
  105. package/dist/src/components/bpmntree/views/flowDesign/nodes/JumpNode.vue.js +0 -1
  106. package/dist/src/components/bpmntree/views/flowDesign/nodes/Node.vue.d.ts +0 -35
  107. package/dist/src/components/bpmntree/views/flowDesign/nodes/Node.vue.js +0 -1
  108. package/dist/src/components/bpmntree/views/flowDesign/nodes/NotifyNode.vue.d.ts +0 -6
  109. package/dist/src/components/bpmntree/views/flowDesign/nodes/NotifyNode.vue.js +0 -1
  110. package/dist/src/components/bpmntree/views/flowDesign/nodes/ParallelNode.vue.d.ts +0 -6
  111. package/dist/src/components/bpmntree/views/flowDesign/nodes/ParallelNode.vue.js +0 -1
  112. package/dist/src/components/bpmntree/views/flowDesign/nodes/PopoverView.vue.d.ts +0 -8
  113. package/dist/src/components/bpmntree/views/flowDesign/nodes/PopoverView.vue.js +0 -1
  114. package/dist/src/components/bpmntree/views/flowDesign/nodes/StartNode.vue.d.ts +0 -12
  115. package/dist/src/components/bpmntree/views/flowDesign/nodes/StartNode.vue.js +0 -1
  116. package/dist/src/components/bpmntree/views/flowDesign/nodes/TimerNode.vue.d.ts +0 -6
  117. package/dist/src/components/bpmntree/views/flowDesign/nodes/TimerNode.vue.js +0 -1
  118. package/dist/src/components/bpmntree/views/flowDesign/nodes/TreeNode.vue.d.ts +0 -18
  119. package/dist/src/components/bpmntree/views/flowDesign/nodes/TreeNode.vue.js +0 -1
  120. package/dist/src/components/bpmntree/views/flowDesign/nodes/type.d.ts +0 -119
  121. package/dist/src/components/bpmntree/views/flowDesign/nodes/type.js +0 -1
  122. package/dist/src/components/bpmntree/views/flowDesign/panels/ApprovalPanel.vue.d.ts +0 -6
  123. package/dist/src/components/bpmntree/views/flowDesign/panels/ApprovalPanel.vue.js +0 -1
  124. package/dist/src/components/bpmntree/views/flowDesign/panels/AssigneePanel.vue.d.ts +0 -19
  125. package/dist/src/components/bpmntree/views/flowDesign/panels/AssigneePanel.vue.js +0 -1
  126. package/dist/src/components/bpmntree/views/flowDesign/panels/CcPanel.vue.d.ts +0 -6
  127. package/dist/src/components/bpmntree/views/flowDesign/panels/CcPanel.vue.js +0 -1
  128. package/dist/src/components/bpmntree/views/flowDesign/panels/ConditionPanel.vue.d.ts +0 -6
  129. package/dist/src/components/bpmntree/views/flowDesign/panels/ConditionPanel.vue.js +0 -1
  130. package/dist/src/components/bpmntree/views/flowDesign/panels/EndPanel.vue.d.ts +0 -6
  131. package/dist/src/components/bpmntree/views/flowDesign/panels/EndPanel.vue.js +0 -1
  132. package/dist/src/components/bpmntree/views/flowDesign/panels/ExecutionListeners.vue.d.ts +0 -16
  133. package/dist/src/components/bpmntree/views/flowDesign/panels/ExecutionListeners.vue.js +0 -1
  134. package/dist/src/components/bpmntree/views/flowDesign/panels/JumpPanel.vue.d.ts +0 -6
  135. package/dist/src/components/bpmntree/views/flowDesign/panels/JumpPanel.vue.js +0 -1
  136. package/dist/src/components/bpmntree/views/flowDesign/panels/NotifyPanel.vue.d.ts +0 -6
  137. package/dist/src/components/bpmntree/views/flowDesign/panels/NotifyPanel.vue.js +0 -1
  138. package/dist/src/components/bpmntree/views/flowDesign/panels/ParaPanel.vue.d.ts +0 -12
  139. package/dist/src/components/bpmntree/views/flowDesign/panels/ParaPanel.vue.js +0 -1
  140. package/dist/src/components/bpmntree/views/flowDesign/panels/StartPanel.vue.d.ts +0 -6
  141. package/dist/src/components/bpmntree/views/flowDesign/panels/StartPanel.vue.js +0 -1
  142. package/dist/src/components/bpmntree/views/flowDesign/panels/TaskListeners.vue.d.ts +0 -16
  143. package/dist/src/components/bpmntree/views/flowDesign/panels/TaskListeners.vue.js +0 -1
  144. package/dist/src/components/bpmntree/views/flowDesign/panels/TimerPanel.vue.d.ts +0 -6
  145. package/dist/src/components/bpmntree/views/flowDesign/panels/TimerPanel.vue.js +0 -1
  146. package/dist/src/components/bpmntree/views/flowDesign/panels/index.vue.d.ts +0 -13
  147. package/dist/src/components/bpmntree/views/flowDesign/panels/index.vue.js +0 -1
  148. package/dist/src/components/bpmntree/views/view.index.vue.d.ts +0 -11
  149. package/dist/src/components/bpmntree/views/view.index.vue.js +0 -1
  150. package/dist/src/components/workflow/TaskOperation.vue.d.ts +0 -91
  151. package/dist/src/components/workflow/TaskOperation.vue.js +0 -1
  152. package/dist/src/components/workflow/WorkflowTodoDialog.vue.d.ts +0 -2
  153. package/dist/src/components/workflow/WorkflowTodoDialog.vue.js +0 -1
  154. package/dist/src/components/workflow/components/AddOrMinusMultiDialog.vue.d.ts +0 -8
  155. package/dist/src/components/workflow/components/AddOrMinusMultiDialog.vue.js +0 -1
  156. package/dist/src/components/workflow/components/CheckDialog.vue.d.ts +0 -12
  157. package/dist/src/components/workflow/components/CheckDialog.vue.js +0 -1
  158. package/dist/src/components/workflow/components/ProcessDetailComp.vue.d.ts +0 -22
  159. package/dist/src/components/workflow/components/ProcessDetailComp.vue.js +0 -1
  160. package/dist/src/components/workflow/components/ProcessDetailDialog.vue.d.ts +0 -15
  161. package/dist/src/components/workflow/components/ProcessDetailDialog.vue.js +0 -1
  162. package/dist/src/components/workflow/components/ProcessInstance.vue.d.ts +0 -13
  163. package/dist/src/components/workflow/components/ProcessInstance.vue.js +0 -1
  164. package/dist/src/components/workflow/components/ProcessInstanceStep.vue.d.ts +0 -17
  165. package/dist/src/components/workflow/components/ProcessInstanceStep.vue.js +0 -2
  166. package/dist/src/components/workflow/components/SelectAssigneeDialog.vue.d.ts +0 -8
  167. package/dist/src/components/workflow/components/SelectAssigneeDialog.vue.js +0 -1
  168. package/dist/src/components/workflow/components/SelectReturnActivityDialog.vue.d.ts +0 -8
  169. package/dist/src/components/workflow/components/SelectReturnActivityDialog.vue.js +0 -1
  170. package/dist/src/hooks/userWorkflowHooks.d.ts +0 -109
  171. package/dist/src/hooks/userWorkflowHooks.js +0 -1
  172. package/dist/src/hooks/workflowTodo.d.ts +0 -12
  173. package/dist/src/hooks/workflowTodo.js +0 -1
  174. package/dist/src/interface/workflow/IWfNodeLastApprovalVo.d.ts +0 -22
  175. package/dist/src/interface/workflow/IWfNodeLastApprovalVo.js +0 -1
  176. package/dist/src/interface/workflow/IWfProcessDefVo.d.ts +0 -16
  177. package/dist/src/interface/workflow/IWfProcessDefVo.js +0 -1
  178. package/dist/src/interface/workflow/IWfReturnNodeVo.d.ts +0 -15
  179. package/dist/src/interface/workflow/IWfReturnNodeVo.js +0 -1
  180. package/dist/src/interface/workflow/IWfTaskAskVo.d.ts +0 -64
  181. package/dist/src/interface/workflow/IWfTaskAskVo.js +0 -1
  182. package/dist/src/interface/workflow/IWfTaskQueryVo.d.ts +0 -32
  183. package/dist/src/interface/workflow/IWfTaskQueryVo.js +0 -1
  184. package/dist/src/interface/workflow/IWfTaskUsersVo.d.ts +0 -20
  185. package/dist/src/interface/workflow/IWfTaskUsersVo.js +0 -1
  186. package/dist/src/interface/workflow/IWfTaskVo.d.ts +0 -163
  187. package/dist/src/interface/workflow/IWfTaskVo.js +0 -1
  188. package/dist/src/interface/workflow/workflow.d.ts +0 -20
  189. package/dist/src/interface/workflow/workflow.js +0 -1
  190. /package/dist/src/components/{bpmntree/components/AdvancedFilter/type.js → Tag/ElTagDisplayProps.js} +0 -0
@@ -0,0 +1 @@
1
+ import{defineComponent as x,computed as t,openBlock as v,createBlock as C,withCtx as D,createTextVNode as b,toDisplayString as f,createElementBlock as w,normalizeStyle as A}from"vue";import S from"../src/hooks/useDictHooks.js";import{_ as h}from"./ElTagDisplay.vue_vue_type_script_setup_true_lang-Cbb3x-dA.js";const P=x({__name:"DictDisplay",props:{dictType:{},value:{default:void 0},mode:{default:"tag"},aliasKey:{default:void 0},item:{default:void 0}},setup(i){const o=i,{getDict:p,getDictData:m}=S(),s={primary:"#0070d2",success:"#0d9e31",warning:"#e6710b",danger:"#cf2613",error:"#cf2613",info:"#909399"},c={primary:"primary",success:"success",info:"info",warning:"warning",danger:"danger",error:"danger"},l=t(()=>{if(o.item)return o.item;const e=m(String(o.value??""),o.dictType);return e&&e.value!==void 0?e:void 0}),y=()=>{const e=l.value?.remark;if(e)try{const r=JSON.parse(e);if(r&&typeof r=="object")return r}catch{}},a=t(()=>y()),u=t(()=>o.mode==="tag"?a.value?.tag:a.value?.text),g=t(()=>u.value?.aliases??a.value?.aliases),n=t(()=>{const e=u.value?.color;return typeof e=="string"?e.trim().toLowerCase():void 0}),d=t(()=>{const e=o.aliasKey?g.value?.[o.aliasKey]:void 0;return e??l.value?.label??""}),_=t(()=>{const e=n.value;return e?c[e]:"primary"}),k=t(()=>{const e=n.value;return e&&!c[e]?e:void 0}),T=t(()=>{const e=n.value;if(e){if(s[e])return{color:s[e]};if(/^#([0-9a-fA-F]{3}|[0-9a-fA-F]{6})$/.test(e))return{color:e}}});return p([o.dictType]),(e,r)=>i.mode==="tag"?(v(),C(h,{key:0,type:_.value,color:k.value,"disable-transitions":""},{default:D(()=>[b(f(d.value),1)]),_:1},8,["type","color"])):(v(),w("span",{key:1,style:A(T.value)},f(d.value||"/"),5))}});export{P as _};
@@ -0,0 +1 @@
1
+ import{defineComponent as ue,ref as pe,reactive as de,onMounted as me,onUpdated as ie,onBeforeUnmount as ye,computed as N,resolveComponent as u,openBlock as s,createElementBlock as V,Fragment as U,createCommentVNode as A,createVNode as M,withKeys as he,withCtx as i,renderList as B,createBlock as d,normalizeClass as j,createElementVNode as P,toDisplayString as F,mergeProps as h,createTextVNode as q,renderSlot as $,nextTick as I}from"vue";const ve=["onMouseenter"],_e={key:11,class:"el-desc-form__readonly-slot"},W="/",fe=ue({__name:"ElDescForm",props:{model:{},fields:{},rules:{default:()=>({})},column:{default:3},border:{type:Boolean,default:!0},readonly:{type:Boolean,default:!1}},setup(a,{expose:G}){const v=a,x=pe(),g=new Map,k=new Map,S=de({}),w=o=>{const t=g.get(o),l=!!t&&t.scrollWidth>t.clientWidth;S[o]!==l&&(S[o]=l)},z=()=>{I(()=>{g.forEach((o,t)=>w(t))})},H=(o,t)=>{const l=t;if(g.get(o)===l){l&&w(o);return}if(k.get(o)?.disconnect(),k.delete(o),delete S[o],!l){g.delete(o);return}if(g.set(o,l),typeof ResizeObserver<"u"){const c=new ResizeObserver(()=>w(o));c.observe(l),k.set(o,c)}I(()=>w(o))};me(z),ie(z),ye(()=>{k.forEach(o=>o.disconnect()),k.clear(),g.clear()});const y=N(()=>Math.min(3,Math.max(1,v.column||3))),J=o=>{const t=x.value?.$el;if(!t)return;const l=Array.from(t.querySelectorAll("input, textarea")).filter(m=>!m.disabled&&m.type!=="checkbox"&&m.type!=="radio"&&m.type!=="hidden"&&(m.offsetParent!==null||m.getClientRects().length>0));if(!l.length)return;const r=document.activeElement;if(!r||!l.includes(r))return;const c=l.indexOf(r),p=o.shiftKey?-1:1,b=(c+p+l.length)%l.length;o.preventDefault();const f=l[b];f.focus();try{const m=f.value.length;f.setSelectionRange(m,m)}catch{}},D=N(()=>{const o={...v.rules};for(const t of v.fields)t.rules?.length&&(o[t.prop]=[...o[t.prop]||[],...t.rules]);return o}),Q=N(()=>{const o=[];let t=y.value,l=-1;for(const r of v.fields){if(!(typeof r.show=="function"?r.show(v.model):r.show!==!1))continue;if(r.type==="textarea"){if(t<y.value&&l>=0){const m=o[l],E=Math.min(Math.max(1,m.span??1),y.value);m.span=Math.min(E+t,y.value)}const f=K(r);o.push(f),l=o.length-1,t=y.value;continue}const p=K(r);o.push(p),l=o.length-1;const b=Math.min(Math.max(1,p.span??1),y.value);t=b<t?t-b:y.value}return o}),T=o=>{const t=o.props||{};return v.readonly===!0||o.readonly===!0||t.readonly===!0},C=(o,t)=>o===t||String(o)===String(t),R=(o,t)=>{if(!o?.length)return;const l=o.find(r=>C(r.value,t));return l===void 0?void 0:String(l.label)},O=(o,t)=>{if(o?.length)for(const l of o){if(C(l.value,t))return String(l.label??l.name??"");if(l.children?.length){const r=O(l.children,t);if(r)return r}}},X=(o,t)=>{let l=o||[];const r=[];for(const c of t){const p=l.find(b=>C(b.value,c));if(!p)break;r.push(String(p.label??p.name??"")),l=p.children||[]}return r.join(" / ")},_=o=>o.trim()||W,L=o=>{const t=v.model?.[o.prop];if(t==null||typeof t=="string"&&t.trim()===""||Array.isArray(t)&&t.length===0)return W;const l=o.props||{},r=o.options;if(o.type==="select")return Array.isArray(t)?_(t.map(c=>R(r,c)??String(c)).filter(Boolean).join("、")):_(R(r,t)??String(t));if(o.type==="radio")return _(R(r,t)??String(t));if(o.type==="checkbox"){const c=Array.isArray(t)?t:[t];return _(c.map(p=>R(r,p)??String(p)).filter(Boolean).join("、"))}if(o.type==="tree-select"){const c=r||l.data;return Array.isArray(t)?_(t.map(p=>O(c,p)??String(p)).filter(Boolean).join("、")):_(O(c,t)??String(t))}if(o.type==="cascader"){const c=X(r,Array.isArray(t)?t:[t]);return _(c||(Array.isArray(t)?t.join(" / "):String(t)))}return o.type==="switch"?t===!0||t===1||t==="1"?l["active-text"]||"是":l["inactive-text"]||"否":_(String(t))},Y=o=>!!D.value[o.prop]?.some(l=>l.required),K=o=>{const t=l=>typeof l=="function"?l(v.model):l;return{...o,span:o.type==="textarea"?y.value:Math.min(Math.max(1,o.span??1),y.value),label:t(o.label),tip:o.tip?t(o.tip):void 0,options:o.options?t(o.options):void 0,placeholder:o.placeholder?t(o.placeholder):void 0,props:o.props?t(o.props):void 0}};return G({validate:()=>x.value?.validate(),resetFields:()=>x.value?.resetFields(),clearValidate:()=>x.value?.clearValidate()}),(o,t)=>{const l=u("el-icons"),r=u("el-tooltip"),c=u("el-input"),p=u("el-input-number"),b=u("el-option"),f=u("el-select"),m=u("el-date-picker"),E=u("el-switch"),Z=u("el-radio"),ee=u("el-radio-group"),oe=u("el-checkbox"),te=u("el-checkbox-group"),le=u("el-tree-select"),ne=u("el-cascader"),re=u("el-form-item"),ae=u("el-descriptions-item"),se=u("el-descriptions"),ce=u("el-form");return s(),V(U,null,[A(" 关闭 validate-on-rule-change:避免规则/字段异步变化时自动整表校验,导致打开弹窗瞬间闪现必填提示 "),M(ce,{ref_key:"formRef",ref:x,class:"el-desc-form",model:a.model,rules:D.value,"validate-on-rule-change":!1,onKeydown:he(J,["tab"])},{default:i(()=>[M(se,{direction:"vertical",column:y.value,border:a.border},{default:i(()=>[(s(!0),V(U,null,B(Q.value,e=>(s(),d(ae,{key:e.prop,label:e.label||void 0,span:e.span},{label:i(()=>[e.label?(s(),V("span",{key:0,class:j(["el-desc-form__label",{"el-desc-form__label--required":Y(e)}])},[q(F(e.label)+" ",1),e.tip?(s(),d(r,{key:0,content:e.tip,placement:"top","popper-class":"el-desc-form-tip-popper"},{default:i(()=>[M(l,{"model-value":"adtec-info",class:"el-desc-form__label-tip"})]),_:1},8,["content"])):A("v-if",!0)],2)):A("v-if",!0)]),default:i(()=>[M(re,{prop:T(e)?void 0:e.prop,class:j({"el-desc-form__form-item--multiline":e.type==="textarea"}),style:{"margin-bottom":"0"},"hide-required-asterisk":""},{default:i(()=>[A(" 只读模式:统一处理文本溢出,只有内容超出单元格宽度时才打开 tooltip "),T(e)&&e.type&&e.type!=="slot"?(s(),d(r,{key:0,content:L(e),disabled:!S[e.prop],effect:"light",placement:"top","popper-class":"el-desc-form-readonly-tip-popper"},{default:i(()=>[P("span",{class:j(["el-desc-form__readonly-text",{"el-desc-form__readonly-text--multiline":e.type==="textarea"}]),onMouseenter:n=>w(e.prop)},[P("span",{ref_for:!0,ref:n=>H(e.prop,n),class:"el-desc-form__readonly-text-content"},F(L(e)),513)],42,ve)]),_:2},1032,["content","disabled"])):e.type==="input"?(s(),d(c,h({key:1,modelValue:a.model[e.prop],"onUpdate:modelValue":n=>a.model[e.prop]=n},{ref_for:!0},e.props,{placeholder:e.placeholder}),null,16,["modelValue","onUpdate:modelValue","placeholder"])):e.type==="textarea"?(s(),d(c,h({key:2,modelValue:a.model[e.prop],"onUpdate:modelValue":n=>a.model[e.prop]=n,type:"textarea",autosize:{minRows:2,maxRows:4}},{ref_for:!0},e.props,{placeholder:e.placeholder}),null,16,["modelValue","onUpdate:modelValue","placeholder"])):e.type==="number"?(s(),d(p,h({key:3,modelValue:a.model[e.prop],"onUpdate:modelValue":n=>a.model[e.prop]=n},{ref_for:!0},e.props),null,16,["modelValue","onUpdate:modelValue"])):e.type==="select"?(s(),d(f,h({key:4,modelValue:a.model[e.prop],"onUpdate:modelValue":n=>a.model[e.prop]=n},{ref_for:!0},e.props,{placeholder:e.placeholder,clearable:""}),{default:i(()=>[(s(!0),V(U,null,B(e.options,n=>(s(),d(b,{key:n.value,label:n.label,value:n.value,disabled:n.disabled},null,8,["label","value","disabled"]))),128))]),_:2},1040,["modelValue","onUpdate:modelValue","placeholder"])):e.type==="date"?(s(),d(m,h({key:5,modelValue:a.model[e.prop],"onUpdate:modelValue":n=>a.model[e.prop]=n},{ref_for:!0},e.props,{type:e.props?.type||"date",placeholder:e.placeholder,style:{width:"100%"}}),null,16,["modelValue","onUpdate:modelValue","type","placeholder"])):e.type==="switch"?(s(),d(E,h({key:6,modelValue:a.model[e.prop],"onUpdate:modelValue":n=>a.model[e.prop]=n},{ref_for:!0},e.props),null,16,["modelValue","onUpdate:modelValue"])):e.type==="radio"?(s(),d(ee,h({key:7,modelValue:a.model[e.prop],"onUpdate:modelValue":n=>a.model[e.prop]=n},{ref_for:!0},e.props),{default:i(()=>[(s(!0),V(U,null,B(e.options,n=>(s(),d(Z,{key:n.value,value:n.value},{default:i(()=>[q(F(n.label),1)]),_:2},1032,["value"]))),128))]),_:2},1040,["modelValue","onUpdate:modelValue"])):e.type==="checkbox"?(s(),d(te,h({key:8,modelValue:a.model[e.prop],"onUpdate:modelValue":n=>a.model[e.prop]=n},{ref_for:!0},e.props),{default:i(()=>[(s(!0),V(U,null,B(e.options,n=>(s(),d(oe,{key:n.value,value:n.value},{default:i(()=>[q(F(n.label),1)]),_:2},1032,["value"]))),128))]),_:2},1040,["modelValue","onUpdate:modelValue"])):e.type==="tree-select"?(s(),d(le,h({key:9,modelValue:a.model[e.prop],"onUpdate:modelValue":n=>a.model[e.prop]=n},{ref_for:!0},e.props,{placeholder:e.placeholder,style:{width:"100%"}}),null,16,["modelValue","onUpdate:modelValue","placeholder"])):e.type==="cascader"?(s(),d(ne,h({key:10,modelValue:a.model[e.prop],"onUpdate:modelValue":n=>a.model[e.prop]=n,options:e.options},{ref_for:!0},e.props,{style:{width:"100%"}}),null,16,["modelValue","onUpdate:modelValue","options"])):T(e)?(s(),V("div",_e,[$(o.$slots,e.slot||e.prop,{field:e,model:a.model})])):$(o.$slots,e.slot||e.prop,{field:e,model:a.model},void 0,void 0,12)]),_:2},1032,["prop","class"])]),_:2},1032,["label","span"]))),128))]),_:3},8,["column","border"])]),_:3},8,["model","rules"])],2112)}}});export{fe as _};
@@ -0,0 +1 @@
1
+ import{defineComponent as d,useSlots as u,computed as y,openBlock as o,createBlock as m,unref as g,normalizeProps as h,mergeProps as s,withCtx as B,renderSlot as _,createTextVNode as C,toDisplayString as T,createElementBlock as k,isVNode as A,Comment as S,Text as b,Fragment as P}from"vue";import{ElTag as E}from"element-plus";const j=d({inheritAttrs:!1,__name:"ElTagDisplay",props:{value:{},content:{},type:{},closable:{type:Boolean},disableTransitions:{type:Boolean,default:!0},hit:{type:Boolean},color:{},size:{},effect:{},round:{type:Boolean}},setup(i){const e=i,l=u(),a=y(()=>{const t={...e};return delete t.value,delete t.content,t}),r=t=>{if(Array.isArray(t))return t.some(n=>r(n));if(A(t)){if(t.type===S)return!1;if(t.type===b||t.type===P||typeof t.type=="string")return r(t.children);if(t.children&&typeof t.children=="object"){const n=t.children.default;if(n)return r(n())}return!0}return t==null?!1:typeof t=="string"?t.trim().length>0:!0},c=()=>e.content!==void 0?e.content:e.value!==void 0?e.value:l.default?.()||[],f=()=>r(c()),p=()=>{const t=e.content!==void 0?e.content:e.value;return Array.isArray(t)?t.join("、"):t==null?"":String(t)};return(t,n)=>f()?(o(),m(g(E),h(s({key:0},{...t.$attrs,...a.value})),{default:B(()=>[_(t.$slots,"default",{},()=>[C(T(p()),1)])]),_:3},16)):(o(),k("span",s({key:1},t.$attrs,{class:"el-tag-display__empty"}),"/",16))}});export{j as _};
@@ -1,5 +1,12 @@
1
1
  import type { FormItemRule } from 'element-plus';
2
- import type { IDescFormField } from './IDescFormField';
2
+ import type { IDescFormField, IDescFormOption } from './IDescFormField';
3
+ type ResolvedDescFormField = Omit<IDescFormField, 'label' | 'tip' | 'options' | 'placeholder' | 'props'> & {
4
+ label: string;
5
+ tip?: string;
6
+ options?: IDescFormOption[];
7
+ placeholder?: string;
8
+ props?: Record<string, any>;
9
+ };
3
10
  type __VLS_Props = {
4
11
  model: Record<string, any>;
5
12
  fields: IDescFormField[];
@@ -11,12 +18,17 @@ type __VLS_Props = {
11
18
  /** 只读模式:所有字段不渲染编辑框,改为文本展示 */
12
19
  readonly?: boolean;
13
20
  };
14
- declare var __VLS_84: string, __VLS_85: {
15
- field: IDescFormField;
21
+ declare var __VLS_88: string, __VLS_89: {
22
+ field: ResolvedDescFormField;
23
+ model: Record<string, any>;
24
+ }, __VLS_92: string, __VLS_93: {
25
+ field: ResolvedDescFormField;
16
26
  model: Record<string, any>;
17
27
  };
18
28
  type __VLS_Slots = {} & {
19
- [K in NonNullable<typeof __VLS_84>]?: (props: typeof __VLS_85) => any;
29
+ [K in NonNullable<typeof __VLS_88>]?: (props: typeof __VLS_89) => any;
30
+ } & {
31
+ [K in NonNullable<typeof __VLS_92>]?: (props: typeof __VLS_93) => any;
20
32
  };
21
33
  declare const __VLS_component: import("vue").DefineComponent<__VLS_Props, {
22
34
  validate: () => any;
@@ -24,9 +36,9 @@ declare const __VLS_component: import("vue").DefineComponent<__VLS_Props, {
24
36
  clearValidate: () => any;
25
37
  }, {}, {}, {}, import("vue").ComponentOptionsMixin, import("vue").ComponentOptionsMixin, {}, string, import("vue").PublicProps, Readonly<__VLS_Props> & Readonly<{}>, {
26
38
  rules: Record<string, FormItemRule[]>;
39
+ readonly: boolean;
27
40
  column: number;
28
41
  border: boolean;
29
- readonly: boolean;
30
42
  }, {}, {}, {}, string, import("vue").ComponentProvideOptions, false, {}, any>;
31
43
  declare const _default: __VLS_WithSlots<typeof __VLS_component, __VLS_Slots>;
32
44
  export default _default;
@@ -1 +1 @@
1
- import{_ as m}from"../../../chunks/ElDescForm.vue_vue_type_style_index_0_lang-DQTEQx6t.js";import"vue";export{m as default};
1
+ import{_ as m}from"../../../chunks/ElDescForm.vue_vue_type_style_index_0_lang-BFA5653m.js";import"vue";export{m as default};
@@ -1 +1 @@
1
- import{defineComponent as G,useModel as J,ref as c,watch as K,reactive as W,nextTick as X,resolveComponent as n,resolveDirective as Y,openBlock as y,createBlock as k,withCtx as a,withDirectives as Z,createVNode as t,unref as ee,mergeProps as te,createElementBlock as le,Fragment as oe,renderList as ae,createTextVNode as x,toDisplayString as ne,createElementVNode as re,mergeModels as P}from"vue";import ie from"../../hooks/useDictHooks.js";import{ElMessage as se}from"element-plus";import de from"./api/DataIndicatorsApi.js";import v from"../../utils/FrameworkUtils.js";import{checkboxColumn as ue}from"../../config/vxeSelectColumn.js";import"../../api/SysDictCacheApi.js";import"../../utils/request.js";import"../../utils/AxiosConfig.js";import"axios";import"uuid";import"../../utils/encrypt.js";import"jsencrypt";import"../../utils/buildUploadHeaders.js";import"ts-md5";import"../../utils/behaviorTrack.js";import"crypto-js/enc-base64";import"crypto-js/enc-utf8";import"../../utils/frontendBus.js";import"../../stores/dictStore.js";import"pinia";import"../../stores/userInfoStore.js";import"../../utils/userSessionStorage.js";import"xlsx-js-style";const me={class:"dialog-footer"},Be=G({__name:"SelectInDicators",props:P({confirmCallback:{type:Function}},{modelValue:{type:Boolean},modelModifiers:{}}),emits:P(["success","confirmCallback"],["update:modelValue"]),setup(w,{emit:U}){const p=J(w,"modelValue"),I=w,u=c(!1),f=c(!1),b=()=>{p.value=!1,i.value=[],l.value={type:"",code:"",name:"",isValid:"",isDetails:1,size:v.getPageSize(),current:1}};K(p,()=>{p.value&&g()});const{getDictTypeData:L}=ie(["ComIndexType"]),S=U,V=c(),m=c(),i=c([]),R=W({border:!0,height:"100%",columnConfig:{resizable:!1},checkboxConfig:{highlight:!0,range:!1},columns:[ue,{type:"seq",title:"序号",width:45,align:"center"},{align:"left",field:"name",title:"指标名称",width:180},{align:"left",field:"code",title:"指标编码",width:180},{align:"left",field:"attriList",title:"指标特性",slots:{default:"attriList"}}]}),l=c({type:"",code:"",name:"",isValid:"",isDetails:1,size:v.getPageSize(),current:1}),g=async()=>{try{u.value=!0,m.value=await de.getPageComIndex(l.value),await X(()=>{i.value.forEach(s=>{const e=m.value?.records.find(d=>d.id===s.id);e&&V.value?.setCheckboxRow(e,!0)})})}catch(s){v.messageError(s)}finally{u.value=!1}},T=()=>{l.value.current=1,g()},z=()=>{l.value={type:"",code:"",name:"",isValid:"",isDetails:1,size:v.getPageSize(),current:1},g()},D=async s=>{if(i.value.length===0){se.warning("请选择指标");return}try{u.value=!0,f.value=!0,await I.confirmCallback(i.value)?(s===0?(i.value=[],z()):b(),S("success")):(u.value=!1,f.value=!1)}catch(e){v.messageError(e)}finally{u.value=!1,f.value=!1}},E=()=>{const s=V.value?.getCheckboxRecords()??[];m.value?.records.forEach(e=>{const d=i.value.filter(r=>r.id===e.id);d.length>0&&d.forEach(r=>{s.find(_=>_.id===r.id)||i.value.splice(i.value.indexOf(r),1)})}),s.forEach(e=>{i.value.filter(r=>r.id===e.id).length===0&&i.value.push(e)})};return(s,e)=>{const d=n("el-tree-select"),r=n("el-form-item"),C=n("el-input"),_=n("el-option"),B=n("el-select"),M=n("el-form"),N=n("el-search"),F=n("el-title"),q=n("el-tag"),A=n("vxe-grid"),O=n("el-pagination"),$=n("el-flex"),h=n("el-button"),H=n("el-drawer"),Q=Y("loading");return y(),k(H,{title:"选择指标",modelValue:p.value,"onUpdate:modelValue":e[8]||(e[8]=o=>p.value=o),size:"800px","align-center":!0,"destroy-on-close":!0,onClose:b},{footer:a(()=>[re("div",me,[t(h,{onClick:b},{default:a(()=>[...e[9]||(e[9]=[x("取消",-1)])]),_:1}),t(h,{type:"primary",onClick:e[6]||(e[6]=o=>D(0)),loading:f.value},{default:a(()=>[...e[10]||(e[10]=[x("确定并继续",-1)])]),_:1},8,["loading"]),t(h,{type:"primary",onClick:e[7]||(e[7]=o=>D(1)),loading:f.value},{default:a(()=>[...e[11]||(e[11]=[x("确定",-1)])]),_:1},8,["loading"])])]),default:a(()=>[Z((y(),k($,{vertical:!0},{default:a(()=>[t(N,{style:{"padding-left":"0"},onSearch:T,onReset:z},{default:a(()=>[t(M,{inline:!0,labelPosition:"top",size:"default",modelValue:l.value,"onUpdate:modelValue":e[4]||(e[4]=o=>l.value=o),style:{width:"100%"}},{default:a(()=>[t(r,{label:"指标类型",style:{width:"220px"}},{default:a(()=>[t(d,{modelValue:l.value.type,"onUpdate:modelValue":e[0]||(e[0]=o=>l.value.type=o),data:ee(L)("ComIndexType"),"default-expand-all":!0,props:{label:"label",children:"children"},"render-after-expand":!1,"node-key":"value",placeholder:"请选择指标类型"},null,8,["modelValue","data"])]),_:1}),t(r,{label:"指标名称",style:{width:"220px"}},{default:a(()=>[t(C,{name:"roleCode",placeholder:"请输入指标名称",modelValue:l.value.name,"onUpdate:modelValue":e[1]||(e[1]=o=>l.value.name=o)},null,8,["modelValue"])]),_:1}),t(r,{label:"指标编码",style:{width:"220px"}},{default:a(()=>[t(C,{name:"roleCode",placeholder:"请输入指标编码",modelValue:l.value.code,"onUpdate:modelValue":e[2]||(e[2]=o=>l.value.code=o)},null,8,["modelValue"])]),_:1}),t(r,{label:"是否启用",style:{width:"220px"}},{default:a(()=>[t(B,{clearable:"",placeholder:"请选择是否启用",modelValue:l.value.isValid,"onUpdate:modelValue":e[3]||(e[3]=o=>l.value.isValid=o)},{default:a(()=>[t(_,{value:1,label:"是"}),t(_,{value:0,label:"否"})]),_:1},8,["modelValue"])]),_:1})]),_:1},8,["modelValue"])]),_:1}),t(F,{title:"指标列表",level:"1",style:{"border-bottom":"var(--border)"}}),t(A,te({ref_key:"gridRef",ref:V},R,{style:{width:"100%","margin-bottom":"8px","margin-top":"8px"},data:m.value?.records,onCheckboxAll:E,onCheckboxChange:E}),{attriList:a(({row:o})=>[(y(!0),le(oe,null,ae(o.attriList,j=>(y(),k(q,{style:{"margin-right":"5px"}},{default:a(()=>[x(ne(j.attriName),1)]),_:2},1024))),256))]),_:1},16,["data"]),t(O,{style:{"margin-bottom":"8px"},total:m.value?.total?m.value?.total:0,background:!0,"page-size":l.value.size,"current-page":l.value.current,"onUpdate:currentPage":e[5]||(e[5]=o=>l.value.current=o),layout:"prev, pager, next,total",onCurrentChange:g},null,8,["total","page-size","current-page"])]),_:1})),[[Q,u.value]])]),_:1},8,["modelValue"])}}});export{Be as default};
1
+ import{defineComponent as j,useModel as G,ref as c,watch as J,reactive as K,nextTick as W,resolveComponent as n,resolveDirective as X,openBlock as y,createBlock as k,withCtx as a,withDirectives as Y,createVNode as t,unref as Z,mergeProps as ee,createElementBlock as te,Fragment as le,renderList as oe,createTextVNode as x,toDisplayString as ae,createElementVNode as ne,mergeModels as P}from"vue";import re from"../../hooks/useDictHooks.js";import{ElMessage as ie}from"element-plus";import se from"./api/DataIndicatorsApi.js";import v from"../../utils/FrameworkUtils.js";import{checkboxColumn as de}from"../../config/vxeSelectColumn.js";import{_ as ue}from"../../../chunks/ElTagDisplay.vue_vue_type_script_setup_true_lang-Cbb3x-dA.js";import"../../api/SysDictCacheApi.js";import"../../utils/request.js";import"../../utils/AxiosConfig.js";import"axios";import"uuid";import"../../utils/encrypt.js";import"jsencrypt";import"../../utils/buildUploadHeaders.js";import"ts-md5";import"../../utils/behaviorTrack.js";import"crypto-js/enc-base64";import"crypto-js/enc-utf8";import"../../utils/frontendBus.js";import"../../stores/dictStore.js";import"pinia";import"../../stores/userInfoStore.js";import"../../utils/userSessionStorage.js";import"xlsx-js-style";const me={class:"dialog-footer"},Me=j({__name:"SelectInDicators",props:P({confirmCallback:{type:Function}},{modelValue:{type:Boolean},modelModifiers:{}}),emits:P(["success","confirmCallback"],["update:modelValue"]),setup(w,{emit:U}){const p=G(w,"modelValue"),I=w,u=c(!1),f=c(!1),b=()=>{p.value=!1,i.value=[],l.value={type:"",code:"",name:"",isValid:"",isDetails:1,size:v.getPageSize(),current:1}};J(p,()=>{p.value&&g()});const{getDictTypeData:L}=re(["ComIndexType"]),S=U,V=c(),m=c(),i=c([]),R=K({border:!0,height:"100%",columnConfig:{resizable:!1},checkboxConfig:{highlight:!0,range:!1},columns:[de,{type:"seq",title:"序号",width:45,align:"center"},{align:"left",field:"name",title:"指标名称",width:180},{align:"left",field:"code",title:"指标编码",width:180},{align:"left",field:"attriList",title:"指标特性",slots:{default:"attriList"}}]}),l=c({type:"",code:"",name:"",isValid:"",isDetails:1,size:v.getPageSize(),current:1}),g=async()=>{try{u.value=!0,m.value=await se.getPageComIndex(l.value),await W(()=>{i.value.forEach(s=>{const e=m.value?.records.find(d=>d.id===s.id);e&&V.value?.setCheckboxRow(e,!0)})})}catch(s){v.messageError(s)}finally{u.value=!1}},T=()=>{l.value.current=1,g()},z=()=>{l.value={type:"",code:"",name:"",isValid:"",isDetails:1,size:v.getPageSize(),current:1},g()},D=async s=>{if(i.value.length===0){ie.warning("请选择指标");return}try{u.value=!0,f.value=!0,await I.confirmCallback(i.value)?(s===0?(i.value=[],z()):b(),S("success")):(u.value=!1,f.value=!1)}catch(e){v.messageError(e)}finally{u.value=!1,f.value=!1}},E=()=>{const s=V.value?.getCheckboxRecords()??[];m.value?.records.forEach(e=>{const d=i.value.filter(r=>r.id===e.id);d.length>0&&d.forEach(r=>{s.find(_=>_.id===r.id)||i.value.splice(i.value.indexOf(r),1)})}),s.forEach(e=>{i.value.filter(r=>r.id===e.id).length===0&&i.value.push(e)})};return(s,e)=>{const d=n("el-tree-select"),r=n("el-form-item"),C=n("el-input"),_=n("el-option"),B=n("el-select"),M=n("el-form"),N=n("el-search"),F=n("el-title"),$=n("vxe-grid"),q=n("el-pagination"),A=n("el-flex"),h=n("el-button"),O=n("el-drawer"),H=X("loading");return y(),k(O,{title:"选择指标",modelValue:p.value,"onUpdate:modelValue":e[8]||(e[8]=o=>p.value=o),size:"800px","align-center":!0,"destroy-on-close":!0,onClose:b},{footer:a(()=>[ne("div",me,[t(h,{onClick:b},{default:a(()=>[...e[9]||(e[9]=[x("取消",-1)])]),_:1}),t(h,{type:"primary",onClick:e[6]||(e[6]=o=>D(0)),loading:f.value},{default:a(()=>[...e[10]||(e[10]=[x("确定并继续",-1)])]),_:1},8,["loading"]),t(h,{type:"primary",onClick:e[7]||(e[7]=o=>D(1)),loading:f.value},{default:a(()=>[...e[11]||(e[11]=[x("确定",-1)])]),_:1},8,["loading"])])]),default:a(()=>[Y((y(),k(A,{vertical:!0},{default:a(()=>[t(N,{style:{"padding-left":"0"},onSearch:T,onReset:z},{default:a(()=>[t(M,{inline:!0,labelPosition:"top",size:"default",modelValue:l.value,"onUpdate:modelValue":e[4]||(e[4]=o=>l.value=o),style:{width:"100%"}},{default:a(()=>[t(r,{label:"指标类型",style:{width:"220px"}},{default:a(()=>[t(d,{modelValue:l.value.type,"onUpdate:modelValue":e[0]||(e[0]=o=>l.value.type=o),data:Z(L)("ComIndexType"),"default-expand-all":!0,props:{label:"label",children:"children"},"render-after-expand":!1,"node-key":"value",placeholder:"请选择指标类型"},null,8,["modelValue","data"])]),_:1}),t(r,{label:"指标名称",style:{width:"220px"}},{default:a(()=>[t(C,{name:"roleCode",placeholder:"请输入指标名称",modelValue:l.value.name,"onUpdate:modelValue":e[1]||(e[1]=o=>l.value.name=o)},null,8,["modelValue"])]),_:1}),t(r,{label:"指标编码",style:{width:"220px"}},{default:a(()=>[t(C,{name:"roleCode",placeholder:"请输入指标编码",modelValue:l.value.code,"onUpdate:modelValue":e[2]||(e[2]=o=>l.value.code=o)},null,8,["modelValue"])]),_:1}),t(r,{label:"是否启用",style:{width:"220px"}},{default:a(()=>[t(B,{clearable:"",placeholder:"请选择是否启用",modelValue:l.value.isValid,"onUpdate:modelValue":e[3]||(e[3]=o=>l.value.isValid=o)},{default:a(()=>[t(_,{value:1,label:"是"}),t(_,{value:0,label:"否"})]),_:1},8,["modelValue"])]),_:1})]),_:1},8,["modelValue"])]),_:1}),t(F,{title:"指标列表",level:"1",style:{"border-bottom":"var(--border)"}}),t($,ee({ref_key:"gridRef",ref:V},R,{style:{width:"100%","margin-bottom":"8px","margin-top":"8px"},data:m.value?.records,onCheckboxAll:E,onCheckboxChange:E}),{attriList:a(({row:o})=>[(y(!0),te(le,null,oe(o.attriList,Q=>(y(),k(ue,{style:{"margin-right":"5px"}},{default:a(()=>[x(ae(Q.attriName),1)]),_:2},1024))),256))]),_:1},16,["data"]),t(q,{style:{"margin-bottom":"8px"},total:m.value?.total?m.value?.total:0,background:!0,"page-size":l.value.size,"current-page":l.value.current,"onUpdate:currentPage":e[5]||(e[5]=o=>l.value.current=o),layout:"prev, pager, next,total",onCurrentChange:g},null,8,["total","page-size","current-page"])]),_:1})),[[H,u.value]])]),_:1},8,["modelValue"])}}});export{Me as default};
@@ -0,0 +1,15 @@
1
+ import type { ElTagDisplayProps } from './ElTagDisplayProps';
2
+ declare var __VLS_6: {};
3
+ type __VLS_Slots = {} & {
4
+ default?: (props: typeof __VLS_6) => any;
5
+ };
6
+ declare const __VLS_component: import("vue").DefineComponent<ElTagDisplayProps, {}, {}, {}, {}, import("vue").ComponentOptionsMixin, import("vue").ComponentOptionsMixin, {}, string, import("vue").PublicProps, Readonly<ElTagDisplayProps> & Readonly<{}>, {
7
+ disableTransitions: boolean;
8
+ }, {}, {}, {}, string, import("vue").ComponentProvideOptions, false, {}, any>;
9
+ declare const _default: __VLS_WithSlots<typeof __VLS_component, __VLS_Slots>;
10
+ export default _default;
11
+ type __VLS_WithSlots<T, S> = T & {
12
+ new (): {
13
+ $slots: S;
14
+ };
15
+ };
@@ -0,0 +1 @@
1
+ import{_ as o}from"../../../chunks/ElTagDisplay.vue_vue_type_script_setup_true_lang-Cbb3x-dA.js";import"vue";import"element-plus";export{o as default};
@@ -0,0 +1,7 @@
1
+ import type { TagProps } from 'element-plus';
2
+ export interface ElTagDisplayProps extends TagProps {
3
+ /** 无插槽时直接展示的值;null/undefined/空字符串统一显示“/” */
4
+ value?: unknown;
5
+ /** value 的语义别名,便于按展示内容调用 */
6
+ content?: unknown;
7
+ }
@@ -1 +1 @@
1
- import{defineComponent as W,ref as x,computed as I,watch as X,nextTick as b,resolveComponent as u,openBlock as k,createBlock as T,isRef as Y,unref as Z,withCtx as d,createVNode as f,createElementBlock as A,Fragment as ee,renderList as te,createTextVNode as C,toDisplayString as M,createElementVNode as V,createCommentVNode as B}from"vue";import{useVModel as le}from"@vueuse/core";import oe from"../../utils/FrameworkUtils.js";import{_ as se}from"../../../chunks/_plugin-vue_export-helper-DlAUqK2U.js";import"element-plus";import"xlsx-js-style";import"crypto-js/enc-base64";import"crypto-js/enc-utf8";const ae={style:{width:"100%"}},ne={style:{display:"flex","align-items":"center","justify-content":"space-between","margin-bottom":"4px"}},re={class:"vxe-export-column-item"},de={key:0,class:"vxe-export-column-field"},ie=W({__name:"VxeExportDialog",props:{modelValue:{type:Boolean,default:!1},gridRef:{default:void 0},title:{default:""},filename:{default:""},sheetName:{default:""},exportTypes:{default:()=>[]},loadAllData:{type:Function,default:void 0},columns:{default:void 0},excludeColumns:{default:()=>[]},sheetMethod:{type:Function,default:void 0}},emits:["update:modelValue","success"],setup(F,{emit:K}){const a=F,D=K,g=le(a,"modelValue",D),N=x("current"),R=x(!1),w=x(),m=x([]),v=x([]);let _=!1;const z={current:{label:"当前页数据"},all:{label:"全部数据"},selected:{label:"选中行数据"}},L=I(()=>(a.exportTypes||[]).map(l=>({value:l,label:z[l]?.label||l}))),U=I(()=>a.title||(a.sheetName?`导出${a.sheetName}`:"导出数据")),$=I(()=>{const l=E(m.value).filter(e=>!e.disabled);return l.length>0&&l.every(e=>v.value.includes(e.key))}),S=l=>{if(!a.excludeColumns?.length)return!1;const e=l.field||l.property,o=l.title||l.label;return a.excludeColumns.some(n=>n&&(n===e||n===o))},j=l=>{const e=(o,n)=>(o||[]).map((t,s)=>{const i=t.children||t.childNodes||[],c=Array.isArray(i)&&i.length>0,p=t.field||t.property||"",y=t.type||"",h=p||y||t.colId||t.id||"col",r=n?`${n}::${h}::${s}`:`${h}::${s}`,J=!c&&S(t),Q=c||!["checkbox","radio"].includes(y);return{key:r,label:t.title||(c?"分组":p)||"未命名列",field:p,type:y,disabled:J,exportable:Q,resolved:t,children:e(i,r)}});return e(l)},E=l=>{const e=[],o=n=>{n.forEach(t=>{t.children?.length?o(t.children):e.push(t)})};return o(l),e},G=()=>{const l=a.gridRef,e=l?.getColumns?.()||[];if(!e.length)return[];const o=new Map;e.forEach(t=>{o.set(t.id,{column:t,children:[]})}),e.forEach(t=>{if(t.parentId){const s=l?.getColumnById?.(t.parentId);if(s){const i=o.get(t.parentId);i?i.column=s:o.set(t.parentId,{column:s,children:[]}),s.childNodes=s.childNodes||[],s.childNodes.includes(t)||s.childNodes.push(t)}}});const n=[];if(o.forEach(t=>{const s=t.column.parentId?o.get(t.column.parentId):null;s?s.children.push(t.column):n.push(t.column)}),a.columns?.length){const t=s=>{const i=s.children||s.childNodes||[];if(i.length)return{...s,children:i.map(t)};const c=s.field||s.property,p=s.type;return c&&l?.getColumnByField?.(c)||p&&e.find(h=>h.type===p&&(!c||h.field===c))||s};return a.columns.map(t)}return n},O=()=>{const l=new Map;if(E(m.value).forEach(o=>{v.value.includes(o.key)&&l.set(o.key,o)}),!l.size)return;const e=o=>{const n=[];return o.forEach(t=>{if(t.children?.length){const s=e(t.children);s.length&&n.push({...t.resolved||t.source||{},children:s})}else l.has(t.key)&&t.exportable&&t.resolved&&n.push(t.resolved)}),n};return e(m.value)},P=()=>{if(_)return;const l=w.value?.getCheckedLeaves?.()||[];v.value=l.map(e=>e.key)},q=()=>{const l=E(m.value).filter(o=>!o.disabled).map(o=>o.key),e=$.value?[]:l;v.value=e,_=!0,b(()=>{w.value?.setCheckedKeys?.(e),b(()=>{_=!1})})},H=async()=>{if(a.gridRef){R.value=!0;try{let l;N.value==="all"&&a.loadAllData?l=await a.loadAllData():N.value==="selected"&&(l=a.gridRef.getCheckboxRecords?.()??[]);const e=a.filename||a.sheetName||"导出数据",o={filename:e,sheetName:e,type:"xlsx",useStyle:!0};a.sheetMethod&&(o.sheetMethod=a.sheetMethod);const n=O();n&&(o.columns=n),a.excludeColumns?.length&&(o.excludeFields=a.excludeColumns),l&&(o.data=l),await a.gridRef.exportData(o),g.value=!1,D("success")}catch(l){oe.messageError(l)}finally{R.value=!1}}};return X(()=>a.modelValue,l=>{l&&b(()=>{m.value=j(G()),v.value=E(m.value).filter(e=>!e.disabled).map(e=>e.key),b(()=>{_=!0,w.value?.setCheckedKeys?.(v.value),b(()=>{_=!1})})})},{immediate:!0}),(l,e)=>{const o=u("el-radio"),n=u("el-radio-group"),t=u("el-form-item"),s=u("el-button"),i=u("el-tag"),c=u("el-tree"),p=u("el-scrollbar"),y=u("el-form"),h=u("el-dialog");return k(),T(h,{modelValue:Z(g),"onUpdate:modelValue":e[2]||(e[2]=r=>Y(g)?g.value=r:null),title:U.value,width:"520px","append-to-body":""},{footer:d(()=>[f(s,{onClick:e[1]||(e[1]=r=>g.value=!1)},{default:d(()=>[...e[5]||(e[5]=[C("取消",-1)])]),_:1}),f(s,{type:"primary",loading:R.value,onClick:H},{default:d(()=>[...e[6]||(e[6]=[C("导出",-1)])]),_:1},8,["loading"])]),default:d(()=>[f(y,{"label-width":"80px"},{default:d(()=>[f(t,{label:"导出范围"},{default:d(()=>[f(n,{modelValue:N.value,"onUpdate:modelValue":e[0]||(e[0]=r=>N.value=r)},{default:d(()=>[(k(!0),A(ee,null,te(L.value,r=>(k(),T(o,{key:r.value,value:r.value},{default:d(()=>[C(M(r.label),1)]),_:2},1032,["value"]))),128))]),_:1},8,["modelValue"])]),_:1}),f(t,{label:"导出列"},{default:d(()=>[V("div",ae,[V("div",ne,[e[3]||(e[3]=V("span",{style:{"font-size":"12px",color:"#909399"}},"勾选需要导出的列,父级列可一键全选/取消",-1)),f(s,{link:"",type:"primary",size:"small",onClick:q},{default:d(()=>[C(M($.value?"取消全选":"全选"),1)]),_:1})]),f(p,{"max-height":"220px"},{default:d(()=>[f(c,{ref_key:"treeRef",ref:w,data:m.value,props:{label:"label",children:"children"},"node-key":"key","show-checkbox":"","default-expand-all":"","expand-on-click-node":!1,onCheck:P},{default:d(({data:r})=>[V("span",re,[V("span",null,M(r.label),1),r.field?(k(),A("span",de,M(r.field),1)):B("v-if",!0),r.disabled?(k(),T(i,{key:1,size:"small",type:"info",style:{"margin-left":"4px"}},{default:d(()=>[...e[4]||(e[4]=[C("已屏蔽",-1)])]),_:1})):B("v-if",!0)])]),_:1},8,["data"])]),_:1})])]),_:1})]),_:1})]),_:1},8,["modelValue","title"])}}}),ge=se(ie,[["__scopeId","data-v-d67f1b10"]]);export{ge as default};
1
+ import{defineComponent as W,ref as x,computed as R,watch as X,nextTick as g,resolveComponent as p,openBlock as b,createBlock as I,isRef as Y,unref as Z,withCtx as i,createVNode as u,createElementBlock as A,Fragment as ee,renderList as te,createTextVNode as k,toDisplayString as E,createElementVNode as C,createCommentVNode as B}from"vue";import{useVModel as le}from"@vueuse/core";import oe from"../../utils/FrameworkUtils.js";import{_ as se}from"../../../chunks/ElTagDisplay.vue_vue_type_script_setup_true_lang-Cbb3x-dA.js";import{_ as ae}from"../../../chunks/_plugin-vue_export-helper-DlAUqK2U.js";import"element-plus";import"xlsx-js-style";import"crypto-js/enc-base64";import"crypto-js/enc-utf8";const ne={style:{width:"100%"}},re={style:{display:"flex","align-items":"center","justify-content":"space-between","margin-bottom":"4px"}},ie={class:"vxe-export-column-item"},de={key:0,class:"vxe-export-column-field"},ce=W({__name:"VxeExportDialog",props:{modelValue:{type:Boolean,default:!1},gridRef:{default:void 0},title:{default:""},filename:{default:""},sheetName:{default:""},exportTypes:{default:()=>[]},loadAllData:{type:Function,default:void 0},columns:{default:void 0},excludeColumns:{default:()=>[]},sheetMethod:{type:Function,default:void 0}},emits:["update:modelValue","success"],setup(F,{emit:K}){const a=F,T=K,y=le(a,"modelValue",T),V=x("current"),M=x(!1),N=x(),m=x([]),h=x([]);let _=!1;const z={current:{label:"当前页数据"},all:{label:"全部数据"},selected:{label:"选中行数据"}},L=R(()=>(a.exportTypes||[]).map(l=>({value:l,label:z[l]?.label||l}))),U=R(()=>a.title||(a.sheetName?`导出${a.sheetName}`:"导出数据")),$=R(()=>{const l=w(m.value).filter(e=>!e.disabled);return l.length>0&&l.every(e=>h.value.includes(e.key))}),S=l=>{if(!a.excludeColumns?.length)return!1;const e=l.field||l.property,o=l.title||l.label;return a.excludeColumns.some(n=>n&&(n===e||n===o))},j=l=>{const e=(o,n)=>(o||[]).map((t,s)=>{const d=t.children||t.childNodes||[],c=Array.isArray(d)&&d.length>0,f=t.field||t.property||"",v=t.type||"",r=f||v||t.colId||t.id||"col",D=n?`${n}::${r}::${s}`:`${r}::${s}`,J=!c&&S(t),Q=c||!["checkbox","radio"].includes(v);return{key:D,label:t.title||(c?"分组":f)||"未命名列",field:f,type:v,disabled:J,exportable:Q,resolved:t,children:e(d,D)}});return e(l)},w=l=>{const e=[],o=n=>{n.forEach(t=>{t.children?.length?o(t.children):e.push(t)})};return o(l),e},G=()=>{const l=a.gridRef,e=l?.getColumns?.()||[];if(!e.length)return[];const o=new Map;e.forEach(t=>{o.set(t.id,{column:t,children:[]})}),e.forEach(t=>{if(t.parentId){const s=l?.getColumnById?.(t.parentId);if(s){const d=o.get(t.parentId);d?d.column=s:o.set(t.parentId,{column:s,children:[]}),s.childNodes=s.childNodes||[],s.childNodes.includes(t)||s.childNodes.push(t)}}});const n=[];if(o.forEach(t=>{const s=t.column.parentId?o.get(t.column.parentId):null;s?s.children.push(t.column):n.push(t.column)}),a.columns?.length){const t=s=>{const d=s.children||s.childNodes||[];if(d.length)return{...s,children:d.map(t)};const c=s.field||s.property,f=s.type;return c&&l?.getColumnByField?.(c)||f&&e.find(r=>r.type===f&&(!c||r.field===c))||s};return a.columns.map(t)}return n},O=()=>{const l=new Map;if(w(m.value).forEach(o=>{h.value.includes(o.key)&&l.set(o.key,o)}),!l.size)return;const e=o=>{const n=[];return o.forEach(t=>{if(t.children?.length){const s=e(t.children);s.length&&n.push({...t.resolved||{},children:s})}else l.has(t.key)&&t.exportable&&t.resolved&&n.push(t.resolved)}),n};return e(m.value)},P=()=>{if(_)return;const l=N.value?.getCheckedLeaves?.()||[];h.value=l.map(e=>e.key)},q=()=>{const l=w(m.value).filter(o=>!o.disabled).map(o=>o.key),e=$.value?[]:l;h.value=e,_=!0,g(()=>{N.value?.setCheckedKeys?.(e),g(()=>{_=!1})})},H=async()=>{if(a.gridRef){M.value=!0;try{let l;V.value==="all"&&a.loadAllData?l=await a.loadAllData():V.value==="selected"&&(l=a.gridRef.getCheckboxRecords?.()??[]);const e=a.filename||a.sheetName||"导出数据",o={filename:e,sheetName:e,type:"xlsx",useStyle:!0};a.sheetMethod&&(o.sheetMethod=a.sheetMethod);const n=O();n&&(o.columns=n),a.excludeColumns?.length&&(o.excludeFields=a.excludeColumns),l&&(o.data=l),await a.gridRef.exportData(o),y.value=!1,T("success")}catch(l){oe.messageError(l)}finally{M.value=!1}}};return X(()=>a.modelValue,l=>{l&&g(()=>{m.value=j(G()),h.value=w(m.value).filter(e=>!e.disabled).map(e=>e.key),g(()=>{_=!0,N.value?.setCheckedKeys?.(h.value),g(()=>{_=!1})})})},{immediate:!0}),(l,e)=>{const o=p("el-radio"),n=p("el-radio-group"),t=p("el-form-item"),s=p("el-button"),d=p("el-tree"),c=p("el-scrollbar"),f=p("el-form"),v=p("el-dialog");return b(),I(v,{modelValue:Z(y),"onUpdate:modelValue":e[2]||(e[2]=r=>Y(y)?y.value=r:null),title:U.value,width:"520px","append-to-body":""},{footer:i(()=>[u(s,{onClick:e[1]||(e[1]=r=>y.value=!1)},{default:i(()=>[...e[5]||(e[5]=[k("取消",-1)])]),_:1}),u(s,{type:"primary",loading:M.value,onClick:H},{default:i(()=>[...e[6]||(e[6]=[k("导出",-1)])]),_:1},8,["loading"])]),default:i(()=>[u(f,{"label-width":"80px"},{default:i(()=>[u(t,{label:"导出范围"},{default:i(()=>[u(n,{modelValue:V.value,"onUpdate:modelValue":e[0]||(e[0]=r=>V.value=r)},{default:i(()=>[(b(!0),A(ee,null,te(L.value,r=>(b(),I(o,{key:r.value,value:r.value},{default:i(()=>[k(E(r.label),1)]),_:2},1032,["value"]))),128))]),_:1},8,["modelValue"])]),_:1}),u(t,{label:"导出列"},{default:i(()=>[C("div",ne,[C("div",re,[e[3]||(e[3]=C("span",{style:{"font-size":"12px",color:"#909399"}},"勾选需要导出的列,父级列可一键全选/取消",-1)),u(s,{link:"",type:"primary",size:"small",onClick:q},{default:i(()=>[k(E($.value?"取消全选":"全选"),1)]),_:1})]),u(c,{"max-height":"220px"},{default:i(()=>[u(d,{ref_key:"treeRef",ref:N,data:m.value,props:{label:"label",children:"children"},"node-key":"key","show-checkbox":"","default-expand-all":"","expand-on-click-node":!1,onCheck:P},{default:i(({data:r})=>[C("span",ie,[C("span",null,E(r.label),1),r.field?(b(),A("span",de,E(r.field),1)):B("v-if",!0),r.disabled?(b(),I(se,{key:1,size:"small",type:"info",style:{"margin-left":"4px"}},{default:i(()=>[...e[4]||(e[4]=[k("已屏蔽",-1)])]),_:1})):B("v-if",!0)])]),_:1},8,["data"])]),_:1})])]),_:1})]),_:1})]),_:1},8,["modelValue","title"])}}}),ge=ae(ce,[["__scopeId","data-v-c902e2e9"]]);export{ge as default};
@@ -1 +1 @@
1
- import{createApp as o,h as i}from"vue";import h from"element-plus";import c from"./VxeExportDialog.vue.js";import"@vueuse/core";import"../../utils/FrameworkUtils.js";import"xlsx-js-style";import"crypto-js/enc-base64";import"crypto-js/enc-utf8";import"../../../chunks/_plugin-vue_export-helper-DlAUqK2U.js";let t=null,l=null;function d(){t&&(t.unmount(),t=null),l&&(l.remove(),l=null)}async function M(e){const{grid:m,exportTypes:a=[]}=e;if(!m)return;const r=e.filename||e.sheetName||e.title||"导出数据",u={filename:r,sheetName:r,type:"xlsx",useStyle:!0};if(e.sheetMethod&&(u.sheetMethod=e.sheetMethod),e.excludeColumns?.length&&(u.excludeFields=e.excludeColumns),!a.length){await m.exportData(u);return}d(),l=document.createElement("div"),document.body.appendChild(l),t=o({render:()=>i(c,{modelValue:!0,gridRef:m,title:e.title,filename:e.filename,sheetName:e.sheetName,exportTypes:a,loadAllData:e.loadAllData,columns:e.columns,excludeColumns:e.excludeColumns,sheetMethod:e.sheetMethod,"onUpdate:modelValue":n=>{n||d()}})}),t.use(h),t.mount(l)}export{M as exportGridData};
1
+ import{createApp as o,h as i}from"vue";import h from"element-plus";import c from"./VxeExportDialog.vue.js";import"@vueuse/core";import"../../utils/FrameworkUtils.js";import"xlsx-js-style";import"crypto-js/enc-base64";import"crypto-js/enc-utf8";import"../../../chunks/ElTagDisplay.vue_vue_type_script_setup_true_lang-Cbb3x-dA.js";import"../../../chunks/_plugin-vue_export-helper-DlAUqK2U.js";let t=null,l=null;function d(){t&&(t.unmount(),t=null),l&&(l.remove(),l=null)}async function N(e){const{grid:m,exportTypes:u=[]}=e;if(!m)return;const a=e.filename||e.sheetName||e.title||"导出数据",r={filename:a,sheetName:a,type:"xlsx",useStyle:!0};if(e.sheetMethod&&(r.sheetMethod=e.sheetMethod),e.excludeColumns?.length&&(r.excludeFields=e.excludeColumns),!u.length){await m.exportData(r);return}d(),l=document.createElement("div"),document.body.appendChild(l),t=o({render:()=>i(c,{modelValue:!0,gridRef:m,title:e.title,filename:e.filename,sheetName:e.sheetName,exportTypes:u,loadAllData:e.loadAllData,columns:e.columns,excludeColumns:e.excludeColumns,sheetMethod:e.sheetMethod,"onUpdate:modelValue":n=>{n||d()}})}),t.use(h),t.mount(l)}export{N as exportGridData};
@@ -20,9 +20,9 @@ declare const _default: import("vue").DefineComponent<__VLS_Props, {}, {}, {}, {
20
20
  "onUpdate:diagLogLoading"?: ((...args: any[]) => any) | undefined;
21
21
  }>, {
22
22
  title: string;
23
- multiple: boolean;
24
23
  fetchData: (data: IMdmEmployeeQuery) => Promise<PageData<IMdmEmployee>>;
25
24
  defalutQueryParam: any;
25
+ multiple: boolean;
26
26
  diagLogLoading: boolean;
27
27
  }, {}, {}, {}, string, import("vue").ComponentProvideOptions, false, {}, any>;
28
28
  export default _default;
@@ -1 +1 @@
1
- import{_ as o}from"../../../chunks/comp.selectUser.vue_vue_type_script_setup_true_lang-BQDO393q.js";import"vue";import"@vueuse/core";import"../../api/EmployeeInfoApi.js";import"../../utils/request.js";import"../../utils/AxiosConfig.js";import"axios";import"uuid";import"../../utils/encrypt.js";import"jsencrypt";import"../../utils/buildUploadHeaders.js";import"ts-md5";import"../../utils/behaviorTrack.js";import"crypto-js/enc-base64";import"crypto-js/enc-utf8";import"element-plus";import"../../utils/frontendBus.js";import"./comp.userForm.vue.js";import"../../api/DeptInfoApi.js";import"../../hooks/useResetRefHooks.js";import"../../utils/FrameworkUtils.js";import"xlsx-js-style";import"../../config/vxeSelectColumn.js";import"../../../chunks/_plugin-vue_export-helper-DlAUqK2U.js";export{o as default};
1
+ import{_ as o}from"../../../chunks/comp.selectUser.vue_vue_type_script_setup_true_lang-BQDO393q.js";import"vue";import"@vueuse/core";import"../../api/EmployeeInfoApi.js";import"../../utils/request.js";import"../../utils/AxiosConfig.js";import"axios";import"uuid";import"../../utils/encrypt.js";import"jsencrypt";import"../../utils/buildUploadHeaders.js";import"ts-md5";import"../../utils/behaviorTrack.js";import"crypto-js/enc-base64";import"crypto-js/enc-utf8";import"element-plus";import"../../utils/frontendBus.js";import"./comp.userForm.vue.js";import"../../api/DeptInfoApi.js";import"../../hooks/useResetRefHooks.js";import"../../utils/FrameworkUtils.js";import"xlsx-js-style";import"../../config/vxeSelectColumn.js";import"../../../chunks/ElTagDisplay.vue_vue_type_script_setup_true_lang-Cbb3x-dA.js";import"../../../chunks/_plugin-vue_export-helper-DlAUqK2U.js";export{o as default};
@@ -16,9 +16,9 @@ declare const _default: import("vue").DefineComponent<__VLS_Props, {
16
16
  }, string, import("vue").PublicProps, Readonly<__VLS_Props> & Readonly<{
17
17
  onSuccess?: ((...args: any[]) => any) | undefined;
18
18
  }>, {
19
- multiple: boolean;
20
19
  fetchData: (data: IMdmEmployeeQuery) => Promise<PageData<IMdmEmployee>>;
21
20
  defalutQueryParam: any;
21
+ multiple: boolean;
22
22
  showOrgInfo: boolean;
23
23
  }, {}, {}, {}, string, import("vue").ComponentProvideOptions, false, {}, any>;
24
24
  export default _default;
@@ -1 +1 @@
1
- import{defineComponent as Z,ref as f,reactive as ee,resolveComponent as c,resolveDirective as te,withDirectives as le,openBlock as C,createBlock as E,withCtx as v,createVNode as u,unref as a,createElementVNode as oe,createElementBlock as ae,Fragment as re,renderList as se,createTextVNode as ne,toDisplayString as ie,mergeProps as de,nextTick as N}from"vue";import"@vueuse/core";import{ElTooltip as ce,ElMessage as ue}from"element-plus";import pe from"../../api/DeptInfoApi.js";import me from"../../api/EmployeeInfoApi.js";import{useResetRefHooks as k}from"../../hooks/useResetRefHooks.js";import I from"../../utils/FrameworkUtils.js";import{checkboxColumn as fe,radioColumn as ve}from"../../config/vxeSelectColumn.js";import{_ as ge}from"../../../chunks/_plugin-vue_export-helper-DlAUqK2U.js";import"../../utils/request.js";import"../../utils/AxiosConfig.js";import"axios";import"uuid";import"../../utils/encrypt.js";import"jsencrypt";import"../../utils/buildUploadHeaders.js";import"ts-md5";import"../../utils/behaviorTrack.js";import"crypto-js/enc-base64";import"crypto-js/enc-utf8";import"../../utils/frontendBus.js";import"xlsx-js-style";const he={style:{"padding-top":"4px"}},_e=Z({__name:"comp.userForm",props:{fetchData:{type:Function,default:me.getMdmEmployeeListByIds},defalutQueryParam:{default:{disabled:!1,deptIds:[]}},multiple:{type:Boolean,default:!0},showOrgInfo:{type:Boolean,default:!0}},emits:["success"],setup(O,{expose:P,emit:D}){const d=O,[l,z]=k({current:1,size:I.getPageSize(),...d.defalutQueryParam}),T=D,h=f([]),y=f(!1),R=f(),m=f(),g=f(""),_=f(),b=f(),[r,U]=k([]),[p,B]=k({records:[],total:0,pages:0,current:1}),L=[d.multiple?{...fe,checkboxConfig:{checkMethod:({row:e})=>e.isValid==="1"}}:ve,{align:"left",field:"name",title:"用户姓名",width:120,showOverflow:!0},{align:"left",field:"postName",title:"岗位名称",width:120,showOverflow:!0},{align:"left",field:"deptName",title:"所属部门",showOverflow:!0},...d.showOrgInfo?[{align:"left",field:"orgName",title:"所属组织",width:220,showOverflow:!0}]:[]],Q=ee({border:!0,height:"100%",columnConfig:{resizable:!1},radioConfig:{highlight:!0,trigger:"row"},checkboxConfig:{highlight:!0,range:!1},columns:L}),S=({row:e,rowIndex:t})=>{if(e.isValid!=="1")return"table-row-disabled"},F=async()=>{try{h.value=await pe.getMdmOrgDeptTree({})}catch(e){I.messageError(e)}},M=e=>{e.id===g.value?(_.value=void 0,g.value="",m.value?.clearRadioRow()):(g.value=e.id,_.value=e,m.value?.setRadioRow(e))},q=({row:e,checked:t})=>{e&&(t?r.value.some(o=>o.code===e.code)||r.value.push(e):r.value=r.value.filter(o=>o.code!==e.code))},A=({checked:e})=>{const t=p.value?.records??[];if(e){const o=r.value.map(s=>s.code);t.forEach(s=>{o.includes(s.code)||r.value.push(s)})}else{const o=t.map(s=>s.code);r.value=r.value.filter(s=>!o.includes(s.code))}},J=({row:e})=>{d.multiple||M(e)},V=async()=>{y.value=!0,h.value&&h.value.length||await F(),U(),B(),R.value?.resetFields(),b.value?.setCheckedKeys([]),z(),l.value={...l.value,...d.defalutQueryParam},N(()=>{b.value?.setCheckedKeys(l.value.deptIds??[]),w()})},w=async()=>{try{y.value=!0;let e=[],t;l.value.deptIds&&l.value.deptIds.length&&l.value.deptIds.forEach(n=>{h.value.findIndex(x=>x.id===n)>=0?t=n:e.push(n)});let o=JSON.parse(JSON.stringify(l.value));o.deptIds=e,o.orgId=t,p.value=await d.fetchData(o);const s=r.value.map(n=>n.code);N(()=>{p.value.records.forEach(n=>{s.includes(n.code)&&(d.multiple?m.value?.setCheckboxRow(n,!0):n.id===g.value&&m.value?.setRadioRow(n))})}),l.value.current=p.value.current}catch(e){I.messageError(e)}finally{y.value=!1}},K=e=>{r.value=r.value.filter(o=>o.code!==e.code);const t=p.value.records.find(o=>o.code===e.code);t&&(d.multiple?m.value?.setCheckboxRow(t,!1):t.id===g.value&&(_.value=void 0,g.value="",m.value?.clearRadioRow()))};return P({confirm:async()=>{!r.value.length&&d.multiple||!_.value&&!d.multiple?ue.warning("未选择需要新增的人员!"):T("success",d.multiple?r.value:_.value)},resetQuery:V}),(e,t)=>{const o=c("el-tree-select"),s=c("el-form-item"),n=c("el-input"),x=c("el-form"),H=c("el-search"),$=c("el-title"),j=c("el-tag"),G=c("vxe-grid"),W=c("el-pagination"),X=c("el-flex"),Y=te("loading");return le((C(),E(X,{vertical:!0},{default:v(()=>[u(H,{class:"border",style:{"border-bottom":"var(--border)"},onReset:V,onSearch:w},{default:v(()=>[u(x,{ref_key:"queryRef",ref:R,inline:!0,model:a(l),style:{width:"100%",height:"100%"},labelPosition:"top",size:"default"},{default:v(()=>[u(s,{style:{width:"220px"},label:"所属部门",prop:"deptIds"},{default:v(()=>[u(o,{ref_key:"ref_tree",ref:b,"check-strictly":"",disabled:a(l).disabled,modelValue:a(l).deptIds,"onUpdate:modelValue":t[0]||(t[0]=i=>a(l).deptIds=i),data:h.value,filterable:"",multiple:"","default-expand-all":!0,props:{label:"name",children:"children",disabled:i=>i.isValid!=="1"||a(l).disabled},"render-after-expand":!1,clearable:"","collapse-tags":"","collapse-tags-tooltip":"","node-key":"id",placeholder:"请选择所属部门"},null,8,["disabled","modelValue","data","props"])]),_:1}),u(s,{style:{width:"220px"},label:"人员编码或名称",prop:"codeorname"},{default:v(()=>[u(n,{modelValue:a(l).codeorname,"onUpdate:modelValue":t[1]||(t[1]=i=>a(l).codeorname=i),clearable:"",placeholder:"请输入人员编码或名称"},null,8,["modelValue"])]),_:1})]),_:1},8,["model"])]),_:1}),u($,{class:"border",style:{"border-bottom":"var(--border)"},title:"人员列表"}),oe("div",he,[(C(!0),ae(re,null,se(a(r),i=>(C(),E(j,{key:i.code,closable:"",style:{margin:"2px"},onClose:be=>K(i)},{default:v(()=>[u(a(ce),{placement:"top",content:i.deptName},{default:v(()=>[ne(ie(i.name),1)]),_:2},1032,["content"])]),_:2},1032,["onClose"]))),128))]),u(G,de({ref_key:"gridRef",ref:m},Q,{data:a(p)?.records,"row-class-name":S,style:{width:"100%","margin-top":"8px"},onCheckboxChange:q,onCheckboxAll:A,onCellClick:J}),null,16,["data"]),u(W,{"current-page":a(l).current,"onUpdate:currentPage":t[2]||(t[2]=i=>a(l).current=i),background:!0,"page-size":a(l).size,total:a(p)?.total?a(p)?.total:0,style:{"margin-top":"5px","margin-bottom":"5px"},onCurrentChange:w},null,8,["current-page","page-size","total"])]),_:1})),[[Y,y.value]])}}}),Ae=ge(_e,[["__scopeId","data-v-21141519"]]);export{Ae as default};
1
+ import{defineComponent as Y,ref as f,reactive as Z,resolveComponent as u,resolveDirective as ee,withDirectives as te,openBlock as C,createBlock as E,withCtx as v,createVNode as c,unref as a,createElementVNode as le,createElementBlock as oe,Fragment as ae,renderList as re,createTextVNode as se,toDisplayString as ie,mergeProps as ne,nextTick as N}from"vue";import"@vueuse/core";import{ElTooltip as de,ElMessage as ce}from"element-plus";import ue from"../../api/DeptInfoApi.js";import pe from"../../api/EmployeeInfoApi.js";import{useResetRefHooks as k}from"../../hooks/useResetRefHooks.js";import I from"../../utils/FrameworkUtils.js";import{checkboxColumn as me,radioColumn as fe}from"../../config/vxeSelectColumn.js";import{_ as ve}from"../../../chunks/ElTagDisplay.vue_vue_type_script_setup_true_lang-Cbb3x-dA.js";import{_ as ge}from"../../../chunks/_plugin-vue_export-helper-DlAUqK2U.js";import"../../utils/request.js";import"../../utils/AxiosConfig.js";import"axios";import"uuid";import"../../utils/encrypt.js";import"jsencrypt";import"../../utils/buildUploadHeaders.js";import"ts-md5";import"../../utils/behaviorTrack.js";import"crypto-js/enc-base64";import"crypto-js/enc-utf8";import"../../utils/frontendBus.js";import"xlsx-js-style";const he={style:{"padding-top":"4px"}},_e=Y({__name:"comp.userForm",props:{fetchData:{type:Function,default:pe.getMdmEmployeeListByIds},defalutQueryParam:{default:{disabled:!1,deptIds:[]}},multiple:{type:Boolean,default:!0},showOrgInfo:{type:Boolean,default:!0}},emits:["success"],setup(O,{expose:P,emit:D}){const d=O,[l,z]=k({current:1,size:I.getPageSize(),...d.defalutQueryParam}),T=D,h=f([]),y=f(!1),R=f(),m=f(),g=f(""),_=f(),b=f(),[r,U]=k([]),[p,B]=k({records:[],total:0,pages:0,current:1}),L=[d.multiple?{...me,checkboxConfig:{checkMethod:({row:e})=>e.isValid==="1"}}:fe,{align:"left",field:"name",title:"用户姓名",width:120,showOverflow:!0},{align:"left",field:"postName",title:"岗位名称",width:120,showOverflow:!0},{align:"left",field:"deptName",title:"所属部门",showOverflow:!0},...d.showOrgInfo?[{align:"left",field:"orgName",title:"所属组织",width:220,showOverflow:!0}]:[]],Q=Z({border:!0,height:"100%",columnConfig:{resizable:!1},radioConfig:{highlight:!0,trigger:"row"},checkboxConfig:{highlight:!0,range:!1},columns:L}),S=({row:e,rowIndex:t})=>{if(e.isValid!=="1")return"table-row-disabled"},F=async()=>{try{h.value=await ue.getMdmOrgDeptTree({})}catch(e){I.messageError(e)}},M=e=>{e.id===g.value?(_.value=void 0,g.value="",m.value?.clearRadioRow()):(g.value=e.id,_.value=e,m.value?.setRadioRow(e))},q=({row:e,checked:t})=>{e&&(t?r.value.some(o=>o.code===e.code)||r.value.push(e):r.value=r.value.filter(o=>o.code!==e.code))},A=({checked:e})=>{const t=p.value?.records??[];if(e){const o=r.value.map(s=>s.code);t.forEach(s=>{o.includes(s.code)||r.value.push(s)})}else{const o=t.map(s=>s.code);r.value=r.value.filter(s=>!o.includes(s.code))}},J=({row:e})=>{d.multiple||M(e)},V=async()=>{y.value=!0,h.value&&h.value.length||await F(),U(),B(),R.value?.resetFields(),b.value?.setCheckedKeys([]),z(),l.value={...l.value,...d.defalutQueryParam},N(()=>{b.value?.setCheckedKeys(l.value.deptIds??[]),w()})},w=async()=>{try{y.value=!0;let e=[],t;l.value.deptIds&&l.value.deptIds.length&&l.value.deptIds.forEach(i=>{h.value.findIndex(x=>x.id===i)>=0?t=i:e.push(i)});let o=JSON.parse(JSON.stringify(l.value));o.deptIds=e,o.orgId=t,p.value=await d.fetchData(o);const s=r.value.map(i=>i.code);N(()=>{p.value.records.forEach(i=>{s.includes(i.code)&&(d.multiple?m.value?.setCheckboxRow(i,!0):i.id===g.value&&m.value?.setRadioRow(i))})}),l.value.current=p.value.current}catch(e){I.messageError(e)}finally{y.value=!1}},K=e=>{r.value=r.value.filter(o=>o.code!==e.code);const t=p.value.records.find(o=>o.code===e.code);t&&(d.multiple?m.value?.setCheckboxRow(t,!1):t.id===g.value&&(_.value=void 0,g.value="",m.value?.clearRadioRow()))};return P({confirm:async()=>{!r.value.length&&d.multiple||!_.value&&!d.multiple?ce.warning("未选择需要新增的人员!"):T("success",d.multiple?r.value:_.value)},resetQuery:V}),(e,t)=>{const o=u("el-tree-select"),s=u("el-form-item"),i=u("el-input"),x=u("el-form"),$=u("el-search"),H=u("el-title"),j=u("vxe-grid"),G=u("el-pagination"),W=u("el-flex"),X=ee("loading");return te((C(),E(W,{vertical:!0},{default:v(()=>[c($,{class:"border",style:{"border-bottom":"var(--border)"},onReset:V,onSearch:w},{default:v(()=>[c(x,{ref_key:"queryRef",ref:R,inline:!0,model:a(l),style:{width:"100%",height:"100%"},labelPosition:"top",size:"default"},{default:v(()=>[c(s,{style:{width:"220px"},label:"所属部门",prop:"deptIds"},{default:v(()=>[c(o,{ref_key:"ref_tree",ref:b,"check-strictly":"",disabled:a(l).disabled,modelValue:a(l).deptIds,"onUpdate:modelValue":t[0]||(t[0]=n=>a(l).deptIds=n),data:h.value,filterable:"",multiple:"","default-expand-all":!0,props:{label:"name",children:"children",disabled:n=>n.isValid!=="1"||a(l).disabled},"render-after-expand":!1,clearable:"","collapse-tags":"","collapse-tags-tooltip":"","node-key":"id",placeholder:"请选择所属部门"},null,8,["disabled","modelValue","data","props"])]),_:1}),c(s,{style:{width:"220px"},label:"人员编码或名称",prop:"codeorname"},{default:v(()=>[c(i,{modelValue:a(l).codeorname,"onUpdate:modelValue":t[1]||(t[1]=n=>a(l).codeorname=n),clearable:"",placeholder:"请输入人员编码或名称"},null,8,["modelValue"])]),_:1})]),_:1},8,["model"])]),_:1}),c(H,{class:"border",style:{"border-bottom":"var(--border)"},title:"人员列表"}),le("div",he,[(C(!0),oe(ae,null,re(a(r),n=>(C(),E(ve,{key:n.code,closable:"",style:{margin:"2px"},onClose:be=>K(n)},{default:v(()=>[c(a(de),{placement:"top",content:n.deptName},{default:v(()=>[se(ie(n.name),1)]),_:2},1032,["content"])]),_:2},1032,["onClose"]))),128))]),c(j,ne({ref_key:"gridRef",ref:m},Q,{data:a(p)?.records,"row-class-name":S,style:{width:"100%","margin-top":"8px"},onCheckboxChange:q,onCheckboxAll:A,onCellClick:J}),null,16,["data"]),c(G,{"current-page":a(l).current,"onUpdate:currentPage":t[2]||(t[2]=n=>a(l).current=n),background:!0,"page-size":a(l).size,total:a(p)?.total?a(p)?.total:0,style:{"margin-top":"5px","margin-bottom":"5px"},onCurrentChange:w},null,8,["current-page","page-size","total"])]),_:1})),[[X,y.value]])}}}),Je=ge(_e,[["__scopeId","data-v-289d3154"]]);export{Je as default};
@@ -1 +1 @@
1
- import{_ as o}from"../../../chunks/DictDisplay.vue_vue_type_script_setup_true_lang-S-4CNHJS.js";import"vue";import"../../hooks/useDictHooks.js";import"element-plus";import"../../api/SysDictCacheApi.js";import"../../utils/request.js";import"../../utils/AxiosConfig.js";import"axios";import"uuid";import"../../utils/encrypt.js";import"jsencrypt";import"../../utils/buildUploadHeaders.js";import"ts-md5";import"../../utils/behaviorTrack.js";import"crypto-js/enc-base64";import"crypto-js/enc-utf8";import"../../utils/frontendBus.js";import"../../stores/dictStore.js";import"pinia";import"../../stores/userInfoStore.js";import"../../utils/userSessionStorage.js";import"../../utils/FrameworkUtils.js";import"xlsx-js-style";export{o as default};
1
+ import{_ as o}from"../../../chunks/DictDisplay.vue_vue_type_script_setup_true_lang-BpBbsl20.js";import"vue";import"../../hooks/useDictHooks.js";import"element-plus";import"../../api/SysDictCacheApi.js";import"../../utils/request.js";import"../../utils/AxiosConfig.js";import"axios";import"uuid";import"../../utils/encrypt.js";import"jsencrypt";import"../../utils/buildUploadHeaders.js";import"ts-md5";import"../../utils/behaviorTrack.js";import"crypto-js/enc-base64";import"crypto-js/enc-utf8";import"../../utils/frontendBus.js";import"../../stores/dictStore.js";import"pinia";import"../../stores/userInfoStore.js";import"../../utils/userSessionStorage.js";import"../../utils/FrameworkUtils.js";import"xlsx-js-style";import"../../../chunks/ElTagDisplay.vue_vue_type_script_setup_true_lang-Cbb3x-dA.js";export{o as default};
@@ -17,16 +17,16 @@ declare const _default: import("vue").DefineComponent<__VLS_Props, {
17
17
  refitLayout: () => void;
18
18
  }, {}, {}, {}, import("vue").ComponentOptionsMixin, import("vue").ComponentOptionsMixin, {
19
19
  error: (err?: unknown) => any;
20
- "zoom-in": () => any;
21
- "zoom-out": () => any;
22
20
  loaded: () => any;
23
21
  "page-change": (page: number) => any;
22
+ "zoom-in": () => any;
23
+ "zoom-out": () => any;
24
24
  }, string, import("vue").PublicProps, Readonly<__VLS_Props> & Readonly<{
25
25
  onError?: ((err?: unknown) => any) | undefined;
26
- "onZoom-in"?: (() => any) | undefined;
27
- "onZoom-out"?: (() => any) | undefined;
28
26
  onLoaded?: (() => any) | undefined;
29
27
  "onPage-change"?: ((page: number) => any) | undefined;
28
+ "onZoom-in"?: (() => any) | undefined;
29
+ "onZoom-out"?: (() => any) | undefined;
30
30
  }>, {
31
31
  scale: number;
32
32
  }, {}, {}, {}, string, import("vue").ComponentProvideOptions, false, {}, any>;
@@ -53,9 +53,9 @@ declare const _default: import("vue").DefineComponent<__VLS_Props, {}, {}, {}, {
53
53
  title: string;
54
54
  currentPage: number;
55
55
  fullscreen: boolean;
56
- zoom: number;
57
56
  totalPages: number;
58
57
  titleOnly: boolean;
58
+ zoom: number;
59
59
  searchQuery: string;
60
60
  searchIndex: number;
61
61
  searchTotal: number;
@@ -1 +1 @@
1
- import{VxeGrid as b}from"vxe-table";import{VxeUI as p}from"@vxe-ui/core";import{VxeUIPluginExportXLSX as M}from"@vxe-ui/plugin-export-xlsx";import k from"exceljs";import"vxe-table/es/style.css";import N from"vxe-table/es/locale/lang/zh-CN";import{patchWujiePopperCoordinates as V}from"../utils/patchWujiePopperCoordinates.js";import{registerVxeReplaceComponents as R}from"../components/vxeReplace/index.js";import{defineComponent as L,ref as O,onMounted as D,h as F}from"vue";import"../components/tooltip/index.js";import"../components/tooltip/src/tooltip.js";import"../../chunks/VxeButton.vue_vue_type_script_setup_true_lang-s_mYx9TA.js";import"../../chunks/VxeInput.vue_vue_type_script_setup_true_lang-v9AqGSoL.js";import"../../chunks/VxeSelect.vue_vue_type_script_setup_true_lang-BfVzFeBc.js";import"../../chunks/VxeCheckbox.vue_vue_type_script_setup_true_lang-Ccr5YD1x.js";import"../../chunks/VxeModal.vue_vue_type_script_setup_true_lang-B4gh7jFR.js";import"../../chunks/VxeLoading.vue_vue_type_script_setup_true_lang-B253kD5t.js";import"../../chunks/VxePager.vue_vue_type_script_setup_true_lang-DpOa3T96.js";import"../../chunks/VxeForm.vue_vue_type_script_setup_true_lang-DXNZ8Qzg.js";let h=!1;function w(){h||(h=!0,p.use(M,{ExcelJS:k}))}w();R();const v={isTab:!0,isEsc:!0,tabMethod({row:t,column:e,$table:o}){const r=o.getColumns().filter(n=>n.editRender);if(!r.length)return;const a=r.findIndex(n=>n.id===e.id);if(a<0)return;const{fullData:i}=o.getTableData();let u=a+1,f=t;if(u>=r.length){u=0;const n=i.findIndex(c=>c===t);n<i.length-1?f=i[n+1]:f=i[0]}const l=r[u];f&&l&&o.setEditCell(f,l)}};let y=!1;function se(t){y=!!t}const S=({column:t})=>{const e=t.editRender;if(!e)return"";const o=[],r=String(e.name||"").toLowerCase();return r.includes("select")?o.push("vxe-edit--select"):r.includes("date")||r.includes("time")?o.push("vxe-edit--date"):o.push("vxe-edit--input"),e.required&&o.push("vxe-edit--required"),o};let z=3;function ae(t){z=Math.max(0,Math.floor(Number(t)||0))}const A=({column:t})=>{if(!t)return"";if(t.cellClampable||t.params?.cellClampable)return"vxe-cell--clampable";if(t.showOverflow||t.editRender||t.cellRender||t.slots&&(t.slots.default||t.slots.edit))return"";const e=t.type;return e&&["seq","checkbox","radio","expand","select"].includes(e)?"":"vxe-cell--clampable"},_=({row:t,column:e,$table:o})=>{if(!t||!e||!o)return"";const r=o.getCell(t,e),a=r?r.querySelector(".vxe-cell--wrapper"):null,i=r?r.querySelector(".vxe-tree-cell")||a:null;return i&&(i.scrollWidth>i.clientWidth+1||i.scrollHeight>i.clientHeight+1)?o.getCellLabel(t,e):""},T="pageSize",E=[10,20,50,100,200],P=()=>{try{const t=localStorage.getItem("systemConfig"),e=t?JSON.parse(t)?.[T]:void 0,o=Number(e);return Number.isFinite(o)&&o>0?Math.floor(o):void 0}catch{return}},G=()=>{const t=P();return t?{pageSize:t,pageSizes:[...new Set([...E,t])].sort((e,o)=>e-o)}:{}},ue=t=>{const e=t??P();e&&p.setConfig({grid:{pagerConfig:{pageSize:e,pageSizes:[...new Set([...E,e])].sort((o,r)=>o-r)}}})};p.setConfig({table:{showHeader:!0,keepSource:!0,autoResize:!0,height:"100%",showOverflow:!1,showHeaderOverflow:!0,showFooterOverflow:!0,cellClassName:S,cellConfig:{},headerCellConfig:{height:41},resizeConfig:{refreshDelay:20},resizableConfig:{dragMode:"auto",showDragTip:!1,isSyncAutoHeight:!0,isSyncAutoWidth:!0,minHeight:18},columnDragConfig:{showIcon:!0,showGuidesStatus:!1,showDragTip:!1},checkboxConfig:{showHeader:!0,strict:!0,highlight:!1,range:!1},validConfig:{showMessage:!0,autoClear:!0,autoPos:!0,message:"inline",msgMode:"single",theme:"beautify"},columnConfig:{maxFixedSize:4,resizable:!0},tooltipConfig:{enterable:!0,theme:"light",showAll:!0,contentMethod:_,teleportTo:"body",popupClassName:"vxe-cell-tooltip-limit"},rowConfig:{isCurrent:!0},footerCellConfig:{height:"unset"},customConfig:{allowVisible:!0,allowResizable:!0,allowFixed:!0,allowSort:!0,showFooter:!0,placement:"top-right",modalOptions:{showMaximize:!0,mask:!0,lockView:!0,resize:!0,escClosable:!0},drawerOptions:{mask:!0,lockView:!0,escClosable:!0,resize:!0}},sortConfig:{showIcon:!0,allowClear:!0,allowBtn:!0,iconLayout:"vertical"},filterConfig:{showIcon:!0},treeConfig:{rowField:"id",childrenField:"children",indent:10,showIcon:!0},expandConfig:{showIcon:!0,mode:"fixed"},editConfig:{showIcon:!0,showAsterisk:!0,autoFocus:!0},keyboardConfig:v,importConfig:{_typeMaps:{csv:1,html:1,xml:1,txt:1}},exportConfig:{_typeMaps:{csv:1,html:1,xml:1,txt:1}},printConfig:{},mouseConfig:{extension:!0},areaConfig:{autoClear:!0,selectCellByHeader:!0,selectCellByBody:!0,extendDirection:{top:!0,left:!0,bottom:!0,right:!0}},clipConfig:{isCopy:!0,isCut:!0,isPaste:!0},fnrConfig:{isFind:!0,isReplace:!0},virtualXConfig:{enabled:!0,gt:60,preSize:0,oSize:1},virtualYConfig:{enabled:!1,gt:100,preSize:1,oSize:2},scrollbarConfig:{}},grid:{formConfig:{enabled:!0},pagerConfig:{enabled:!0,...G()},toolbarConfig:{enabled:!0},columnConfig:{maxFixedSize:4,resizable:!0},proxyConfig:{enabled:!0,autoLoad:!0,showResponseMsg:!0,showActiveMsg:!0,props:{list:null,result:"result",total:"page.total",message:"message"}}},toolbar:{}});function ce(t=!1,e=!1,o=!0){V(!0),p.setI18n("zh-CN",N),p.setLanguage("zh-CN"),w()}const fe={VxeGrid:b},x=L({name:"VxeGrid",inheritAttrs:!1,setup(t,{attrs:e,slots:o,expose:r}){const a=O(null),i={};let u=!1;return D(()=>{const l=a.value;if(!l||u)return;u=!0;const n=l.$?.setupState||l||{},c=new Set([...Object.keys(l),...Object.getOwnPropertyNames(l),...Object.keys(n),...Object.getOwnPropertyNames(n)]);for(const s of c){if(s==="__v_skip"||s.startsWith("$")||i[s]!==void 0)continue;const d=l[s]??n[s];typeof d=="function"&&(i[s]=d.bind(l))}}),r(i),()=>{const l=e.editPseudoStyle===void 0?y:!!e.editPseudoStyle,n=e.cellClampLines!==void 0?e.cellClampLines:e["cell-clamp-lines"],c=n===void 0?z:Math.max(0,Math.floor(Number(n)||0));return F(b,{...e,ref:a,class:[e.class,l?"is--edit-pseudo":""],style:[e.style,{"--vxe-cell-clamp-lines":String(c)}],keyboardConfig:{...v,...e.keyboardConfig||{}},border:e.border===void 0||e.border===!0?"inner":e.border,stripe:e.stripe===void 0?!0:e.stripe,columnConfig:{...e.columnConfig||{},resizable:!0},cellClassName:s=>{const d=l?S(s):"",m=A(s)?c>0?"vxe-cell--clamp":"vxe-cell--wrap":"",C=e.cellClassName;if(typeof C=="function"){const g=C(s),I=Array.isArray(g)?g:g?[g]:[];return[d,m,...I].flat().filter(Boolean)}return[d,m].flat().filter(Boolean)}},o)}}});function de(t){t.component("VxeGrid",x),t.component("vxe-grid",x)}export{x as VxeGridWithEditDefaults,ue as applyVxeSystemPageSize,fe as components,ce as initVxeTableInPage,de as installVxeGrid,se as setEditPseudoStyleDefault,ae as setVxeCellClampLines,_ as vxeCellClampContentMethod,S as vxeEditCellClassName,v as vxeEditTabNavigate};
1
+ import*as M from"vxe-table";import{VxeUI as p}from"@vxe-ui/core";import{VxeUIPluginExportXLSX as V}from"@vxe-ui/plugin-export-xlsx";import N from"exceljs";import"vxe-table/es/style.css";import k from"vxe-table/es/locale/lang/zh-CN";import{patchWujiePopperCoordinates as R}from"../utils/patchWujiePopperCoordinates.js";import{registerVxeReplaceComponents as D}from"../components/vxeReplace/index.js";import{defineComponent as L,ref as O,onMounted as F,h as A}from"vue";import"../components/tooltip/index.js";import"../components/tooltip/src/tooltip.js";import"../../chunks/VxeButton.vue_vue_type_script_setup_true_lang-s_mYx9TA.js";import"../../chunks/VxeInput.vue_vue_type_script_setup_true_lang-v9AqGSoL.js";import"../../chunks/VxeSelect.vue_vue_type_script_setup_true_lang-BfVzFeBc.js";import"../../chunks/VxeCheckbox.vue_vue_type_script_setup_true_lang-Ccr5YD1x.js";import"../../chunks/VxeModal.vue_vue_type_script_setup_true_lang-B4gh7jFR.js";import"../../chunks/VxeLoading.vue_vue_type_script_setup_true_lang-B253kD5t.js";import"../../chunks/VxePager.vue_vue_type_script_setup_true_lang-DpOa3T96.js";import"../../chunks/VxeForm.vue_vue_type_script_setup_true_lang-DXNZ8Qzg.js";const b=M.VxeGrid;let h=!1;function w(){h||(h=!0,p.use(V,{ExcelJS:N}))}w();D();const v={isTab:!0,isEsc:!0,tabMethod({row:t,column:e,$table:o}){const r=o.getColumns().filter(n=>n.editRender);if(!r.length)return;const a=r.findIndex(n=>n.id===e.id);if(a<0)return;const{fullData:i}=o.getTableData();let u=a+1,f=t;if(u>=r.length){u=0;const n=i.findIndex(c=>c===t);n<i.length-1?f=i[n+1]:f=i[0]}const l=r[u];f&&l&&o.setEditCell(f,l)}};let y=!1;function se(t){y=!!t}const S=({column:t})=>{const e=t.editRender;if(!e)return"";const o=[],r=String(e.name||"").toLowerCase();return r.includes("select")?o.push("vxe-edit--select"):r.includes("date")||r.includes("time")?o.push("vxe-edit--date"):o.push("vxe-edit--input"),e.required&&o.push("vxe-edit--required"),o};let z=3;function ae(t){z=Math.max(0,Math.floor(Number(t)||0))}const _=({column:t})=>{if(!t)return"";if(t.cellClampable||t.params?.cellClampable)return"vxe-cell--clampable";if(t.showOverflow||t.editRender||t.cellRender||t.slots&&(t.slots.default||t.slots.edit))return"";const e=t.type;return e&&["seq","checkbox","radio","expand","select"].includes(e)?"":"vxe-cell--clampable"},T=({row:t,column:e,$table:o})=>{if(!t||!e||!o)return"";const r=o.getCell(t,e),a=r?r.querySelector(".vxe-cell--wrapper"):null,i=r?r.querySelector(".vxe-tree-cell")||a:null;return i&&(i.scrollWidth>i.clientWidth+1||i.scrollHeight>i.clientHeight+1)?o.getCellLabel(t,e):""},G="pageSize",E=[10,20,50,100,200],P=()=>{try{const t=localStorage.getItem("systemConfig"),e=t?JSON.parse(t)?.[G]:void 0,o=Number(e);return Number.isFinite(o)&&o>0?Math.floor(o):void 0}catch{return}},H=()=>{const t=P();return t?{pageSize:t,pageSizes:[...new Set([...E,t])].sort((e,o)=>e-o)}:{}},ue=t=>{const e=t??P();e&&p.setConfig({grid:{pagerConfig:{pageSize:e,pageSizes:[...new Set([...E,e])].sort((o,r)=>o-r)}}})};p.setConfig({table:{showHeader:!0,keepSource:!0,autoResize:!0,height:"100%",showOverflow:!1,showHeaderOverflow:!0,showFooterOverflow:!0,cellClassName:S,cellConfig:{},headerCellConfig:{height:41},resizeConfig:{refreshDelay:20},rowDragConfig:{showIcon:!1},resizableConfig:{dragMode:"auto",showDragTip:!1,isSyncAutoHeight:!0,isSyncAutoWidth:!0,minHeight:18},columnDragConfig:{showIcon:!0,showGuidesStatus:!1,showDragTip:!1},checkboxConfig:{showHeader:!0,strict:!0,highlight:!1,range:!1},validConfig:{showMessage:!0,autoClear:!0,autoPos:!0,message:"inline",msgMode:"single",theme:"beautify"},columnConfig:{maxFixedSize:4,resizable:!0},tooltipConfig:{enterable:!0,theme:"light",showAll:!0,contentMethod:T,teleportTo:"body",popupClassName:"vxe-cell-tooltip-limit"},rowConfig:{isCurrent:!0},footerCellConfig:{height:"unset"},customConfig:{allowVisible:!0,allowResizable:!0,allowFixed:!0,allowSort:!0,showFooter:!0,placement:"top-right",modalOptions:{showMaximize:!0,mask:!0,lockView:!0,resize:!0,escClosable:!0},drawerOptions:{mask:!0,lockView:!0,escClosable:!0,resize:!0}},sortConfig:{showIcon:!0,allowClear:!0,allowBtn:!0,iconLayout:"vertical"},filterConfig:{showIcon:!0},treeConfig:{rowField:"id",childrenField:"children",indent:10,showIcon:!0},expandConfig:{showIcon:!0,mode:"fixed"},editConfig:{showIcon:!0,showAsterisk:!0,autoFocus:!0},keyboardConfig:v,importConfig:{_typeMaps:{csv:1,html:1,xml:1,txt:1}},exportConfig:{_typeMaps:{csv:1,html:1,xml:1,txt:1}},printConfig:{},mouseConfig:{extension:!0},areaConfig:{autoClear:!0,selectCellByHeader:!0,selectCellByBody:!0,extendDirection:{top:!0,left:!0,bottom:!0,right:!0}},clipConfig:{isCopy:!0,isCut:!0,isPaste:!0},fnrConfig:{isFind:!0,isReplace:!0},virtualXConfig:{enabled:!0,gt:60,preSize:0,oSize:1},virtualYConfig:{enabled:!1,gt:100,preSize:1,oSize:2},scrollbarConfig:{}},grid:{formConfig:{enabled:!0},pagerConfig:{enabled:!0,...H()},toolbarConfig:{enabled:!0},columnConfig:{maxFixedSize:4,resizable:!0},proxyConfig:{enabled:!0,autoLoad:!0,showResponseMsg:!0,showActiveMsg:!0,props:{list:null,result:"result",total:"page.total",message:"message"}}},toolbar:{}});function ce(t=!1,e=!1,o=!0){R(!0),p.setI18n("zh-CN",k),p.setLanguage("zh-CN"),w()}const fe={VxeGrid:b},x=L({name:"VxeGrid",inheritAttrs:!1,setup(t,{attrs:e,slots:o,expose:r}){const a=O(null),i={};let u=!1;return F(()=>{const l=a.value;if(!l||u)return;u=!0;const n=l.$?.setupState||l||{},c=new Set([...Object.keys(l),...Object.getOwnPropertyNames(l),...Object.keys(n),...Object.getOwnPropertyNames(n)]);for(const s of c){if(s==="__v_skip"||s.startsWith("$")||i[s]!==void 0)continue;const d=l[s]??n[s];typeof d=="function"&&(i[s]=d.bind(l))}}),r(i),()=>{const l=e.editPseudoStyle===void 0?y:!!e.editPseudoStyle,n=e.cellClampLines!==void 0?e.cellClampLines:e["cell-clamp-lines"],c=n===void 0?z:Math.max(0,Math.floor(Number(n)||0));return A(b,{...e,ref:a,class:[e.class,l?"is--edit-pseudo":""],style:[e.style,{"--vxe-cell-clamp-lines":String(c)}],keyboardConfig:{...v,...e.keyboardConfig||{}},border:e.border===void 0||e.border===!0?"inner":e.border,stripe:e.stripe===void 0?!0:e.stripe,columnConfig:{...e.columnConfig||{},resizable:!0},cellClassName:s=>{const d=l?S(s):"",m=_(s)?c>0?"vxe-cell--clamp":"vxe-cell--wrap":"",C=e.cellClassName;if(typeof C=="function"){const g=C(s),I=Array.isArray(g)?g:g?[g]:[];return[d,m,...I].flat().filter(Boolean)}return[d,m].flat().filter(Boolean)}},o)}}});function de(t){t.component("VxeGrid",x),t.component("vxe-grid",x)}export{x as VxeGridWithEditDefaults,ue as applyVxeSystemPageSize,fe as components,ce as initVxeTableInPage,de as installVxeGrid,se as setEditPseudoStyleDefault,ae as setVxeCellClampLines,T as vxeCellClampContentMethod,S as vxeEditCellClassName,v as vxeEditTabNavigate};
@@ -1,6 +1,240 @@
1
- export type * from '../types/vxe-pc-ui/ui/index';
2
- export type * from '../types/vxe-pc-ui/components/column';
3
- export type * from '../types/vxe-pc-ui/components/colgroup';
4
- export type * from '../types/vxe-pc-ui/components/table';
5
- export type * from '../types/vxe-pc-ui/components/grid';
6
- export type * from '../types/vxe-pc-ui/components/toolbar';
1
+ /**
2
+ * vxe-grid 项目级精简类型。
3
+ *
4
+ * 背景:vxe-table 4.x 官方类型(types/all.d.ts)依赖 vxe-pc-ui/types,而 vxe-pc-ui
5
+ * 已移除(未安装、运行时也不引用)。原方案是本地 vendored 类型(src/types/vxe-pc-ui)
6
+ * 顶替,但该类型库有 137 个 d.ts(约 1.4MB)且依赖闭包无法裁剪。
7
+ *
8
+ * 本项目实际只用 VxeGridInstance / VxeGridProps 两个类型,且全部用作「配置对象 /
9
+ * 实例句柄」的宽类型标注(50+ 文件,无精确类型依赖),因此这里改为自持精简定义:
10
+ * 常用字段给出签名,其余字段由索引签名兜底。彻底移除 vxe-pc-ui 类型依赖。
11
+ *
12
+ * 注意:这是宽松类型,字段拼写错误不会在编译期报错,请以 vxe-grid 官方文档为准。
13
+ */
14
+ /**
15
+ * vxe-grid 实例句柄(宽松):常用方法给出签名,其余成员由索引签名兜底。
16
+ * 方法声明为必选(实例真实存在这些方法),避免调用处报 possibly undefined。
17
+ */
18
+ export type VxeGridInstance<D = any> = {
19
+ [key: string]: any;
20
+ /** 全选/勾选相关 */
21
+ getCheckboxRecords: (onlyReserve?: boolean) => D[];
22
+ getCheckboxReserveRecords: () => D[];
23
+ getRadioRecord: () => D;
24
+ setCheckboxRow: (rows: D | D[], checked: boolean) => void;
25
+ setAllCheckboxRow: (checked: boolean) => void;
26
+ clearCheckboxRow: () => void;
27
+ clearCheckboxReserve: () => void;
28
+ /** 数据加载 */
29
+ loadData: (data: D[]) => Promise<any>;
30
+ loadPage: (page: Record<string, any>) => Promise<any>;
31
+ reloadData: () => Promise<any>;
32
+ reloadRow: (row: D) => Promise<any>;
33
+ reload: (type?: string) => Promise<any>;
34
+ /** 行操作(参数宽松:支持单行/多行) */
35
+ insert: (records: any) => Promise<any>;
36
+ remove: (rows: any) => Promise<any>;
37
+ removeCheckboxRow: () => Promise<any>;
38
+ getRecordset: () => Record<string, any>;
39
+ /** 编辑 */
40
+ commitEdit: (row?: D, field?: string) => Promise<any>;
41
+ cancelEdit: () => void;
42
+ getEditRecord: () => {
43
+ editRow: D;
44
+ editField: string;
45
+ } | null;
46
+ /** 校验 */
47
+ validate: (type?: string) => Promise<any>;
48
+ clearValidate: () => void;
49
+ /** 排序/筛选/列 */
50
+ sort: (field: string, order: string) => Promise<any>;
51
+ clearSort: () => void;
52
+ toggleAllFilter: () => Promise<any>;
53
+ /** 展开/树 */
54
+ toggleRowExpand: (row: D) => Promise<any>;
55
+ toggleTreeExpand: (row: D) => Promise<any>;
56
+ /** 数据全集(含排序/筛选后的数据) */
57
+ getTableData: () => {
58
+ fullData: D[];
59
+ tableData: D[];
60
+ [key: string]: any;
61
+ };
62
+ /** 滚动/位置 */
63
+ scrollTo: (row: D) => Promise<any>;
64
+ scrollToRow: (row: D) => Promise<any>;
65
+ scrollToColumn: (column: Record<string, any>) => Promise<any>;
66
+ /** 刷新/更新 */
67
+ updateData: (row: D, field: string, value: any) => void;
68
+ updateStatus: (row: D, status: string) => void;
69
+ };
70
+ /**
71
+ * 宽松配置对象:普通字段与函数字段混用。
72
+ * 已知函数字段给出显式签名(参数 any,避免对象字面量解构参数触发 noImplicitAny),
73
+ * 其余字段由索引签名兜底。
74
+ */
75
+ type LooseConfig<F extends string = never> = Record<string, any> & {
76
+ [K in F]?: (...args: any[]) => any;
77
+ };
78
+ /** 列配置(宽松):formatter/slots 等函数字段显式签名,其余字段索引签名兜底 */
79
+ export interface VxeGridColumn<D = any> {
80
+ [key: string]: any;
81
+ type?: string;
82
+ field?: string;
83
+ title?: string;
84
+ width?: number | string;
85
+ minWidth?: number | string;
86
+ fixed?: string;
87
+ align?: string;
88
+ visible?: boolean;
89
+ className?: string;
90
+ treeNode?: boolean;
91
+ children?: VxeGridColumn<D>[];
92
+ formatter?: (...args: any[]) => any;
93
+ /** 具名插槽(字符串)或函数插槽 */
94
+ slots?: {
95
+ [key: string]: ((...args: any[]) => any) | string;
96
+ };
97
+ cellRender?: {
98
+ [key: string]: any;
99
+ slots?: {
100
+ [key: string]: ((...args: any[]) => any) | string;
101
+ };
102
+ };
103
+ editRender?: {
104
+ [key: string]: any;
105
+ slots?: {
106
+ [key: string]: ((...args: any[]) => any) | string;
107
+ };
108
+ };
109
+ }
110
+ /** vxe-grid 配置对象(宽松):常用 props 给出签名,其余由索引签名兜底 */
111
+ export interface VxeGridProps<D = any> extends Record<string, any> {
112
+ /** 列配置 */
113
+ columns?: VxeGridColumn<D>[];
114
+ /** 表格数据 */
115
+ data?: D[];
116
+ /** 尺寸 */
117
+ size?: 'large' | 'medium' | 'small' | 'mini' | string;
118
+ /** 高度(固定/百分比) */
119
+ height?: number | string;
120
+ maxHeight?: number | string;
121
+ minHeight?: number | string;
122
+ /** 边框/斑马纹 */
123
+ border?: boolean;
124
+ stripe?: boolean;
125
+ round?: boolean;
126
+ /** 加载态 */
127
+ loading?: boolean;
128
+ /** 自动尺寸/宽度 */
129
+ autoResize?: boolean;
130
+ resizable?: boolean;
131
+ /** 溢出省略 */
132
+ showOverflow?: boolean | any;
133
+ showHeaderOverflow?: boolean | any;
134
+ showFooterOverflow?: boolean | any;
135
+ /** 行配置 */
136
+ rowConfig?: LooseConfig;
137
+ rowDragConfig?: LooseConfig<'dragStartMethod' | 'dragEndMethod' | 'dragChangeMethod' | 'visibleMethod'>;
138
+ rowNumConfig?: LooseConfig;
139
+ /** 列配置 */
140
+ columnConfig?: LooseConfig;
141
+ seqConfig?: LooseConfig<'seqMethod'>;
142
+ /** 勾选/单选 */
143
+ checkboxConfig?: LooseConfig<'checkMethod'>;
144
+ radioConfig?: LooseConfig<'checkMethod'>;
145
+ /** 分页 */
146
+ pagerConfig?: LooseConfig & {
147
+ slots?: {
148
+ [key: string]: (...args: any[]) => any;
149
+ };
150
+ };
151
+ /** 工具栏 */
152
+ toolbarConfig?: LooseConfig & {
153
+ slots?: {
154
+ [key: string]: (...args: any[]) => any;
155
+ };
156
+ buttons?: Array<Record<string, any> & {
157
+ onClick?: (...args: any[]) => any;
158
+ }>;
159
+ };
160
+ /** 表单(高级搜索) */
161
+ formConfig?: LooseConfig;
162
+ /** 编辑/校验 */
163
+ editConfig?: LooseConfig<'beforeEditMethod' | 'editActivedMethod' | 'editClosedMethod' | 'beforeClearMethod' | 'activeMethod'>;
164
+ validConfig?: LooseConfig;
165
+ keyboardConfig?: LooseConfig;
166
+ /** 排序/筛选 */
167
+ sortConfig?: LooseConfig<'sortMethod'>;
168
+ filterConfig?: LooseConfig<'filterMethod' | 'filterResetMethod' | 'filterRecoverMethod'>;
169
+ /** 树/展开(页面常用 null 禁用) */
170
+ treeConfig?: LooseConfig<'treeMethod' | 'hasChildMethod' | 'lazyMethod'> | null;
171
+ expandConfig?: LooseConfig<'expandMethod' | 'toggleMethod'> | null;
172
+ /** 自定义/菜单/导出等 */
173
+ customConfig?: LooseConfig<'checkMethod'>;
174
+ menuConfig?: LooseConfig;
175
+ exportConfig?: LooseConfig;
176
+ printConfig?: LooseConfig;
177
+ importConfig?: LooseConfig;
178
+ /** 空数据/加载渲染 */
179
+ emptyRender?: LooseConfig | {
180
+ name: string;
181
+ props?: Record<string, any>;
182
+ };
183
+ loadingRender?: LooseConfig | {
184
+ name: string;
185
+ props?: Record<string, any>;
186
+ };
187
+ /** 其他 */
188
+ tooltipConfig?: LooseConfig;
189
+ scrollX?: LooseConfig;
190
+ scrollY?: LooseConfig;
191
+ mousewheel?: LooseConfig;
192
+ keepSource?: boolean;
193
+ sync?: boolean;
194
+ optimization?: LooseConfig;
195
+ zIndex?: number;
196
+ title?: string;
197
+ /**
198
+ * 函数类配置:参数显式 any 标注,避免对象字面量中解构参数
199
+ * (如 cellClassName({ row, column }))触发 noImplicitAny。
200
+ */
201
+ cellClassName?: (params: any) => string;
202
+ cellStyle?: (params: any) => any;
203
+ rowClassName?: (params: any) => string;
204
+ rowStyle?: (params: any) => any;
205
+ headerCellClassName?: (params: any) => string;
206
+ headerCellStyle?: (params: any) => any;
207
+ footerCellClassName?: (params: any) => string;
208
+ footerCellStyle?: (params: any) => any;
209
+ beforeEditMethod?: (params: any) => boolean | Promise<boolean>;
210
+ editActivedMethod?: (params: any) => boolean | Promise<boolean>;
211
+ editClosedMethod?: (params: any) => boolean | Promise<boolean>;
212
+ beforeDeleteMethod?: (params: any) => boolean | Promise<boolean>;
213
+ beforeSaveMethod?: (params: any) => boolean | Promise<boolean>;
214
+ beforeClearMethod?: (params: any) => boolean | Promise<boolean>;
215
+ checkboxMethod?: (params: any) => boolean;
216
+ radioMethod?: (params: any) => boolean;
217
+ formSearchMethod?: (params: any) => boolean | Promise<boolean>;
218
+ formResetMethod?: (params: any) => boolean | Promise<boolean>;
219
+ /** 代理配置:ajax/form 等内含函数,用 rest-any 签名避免隐式 any */
220
+ proxyConfig?: {
221
+ [key: string]: any;
222
+ ajax?: {
223
+ [key: string]: (...args: any[]) => any;
224
+ };
225
+ form?: {
226
+ [key: string]: (...args: any[]) => any;
227
+ };
228
+ };
229
+ }
230
+ /** 列 prop 类型(宽松,兼容历史 import;无精确类型依赖) */
231
+ export type VxeColumnPropTypes = Record<string, any>;
232
+ /**
233
+ * grid 事件监听器集合(宽松):键为事件名,值为处理器(如 rowDragend、cell-click 等)。
234
+ * 处理器参数用 rest-any 签名,保证对象字面量中的解构参数({ newRow, oldRow } 等)
235
+ * 能从上下文推断出类型,避免 noImplicitAny 报错。
236
+ */
237
+ export type VxeGridListeners<D = any> = {
238
+ [key: string]: (...args: any[]) => any;
239
+ };
240
+ export {};