adtec-hnyzfc-core-package 1.3.9 → 1.4.1

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 (69) hide show
  1. package/dist/chunks/{AddOrMinusMultiDialog.vue_vue_type_script_setup_true_lang-CcIlAFpF.js → AddOrMinusMultiDialog.vue_vue_type_script_setup_true_lang-Buyy5IIG.js} +1 -1
  2. package/dist/chunks/DragHandleIcon.vue_vue_type_script_setup_true_lang-DnMWn5jY.js +1 -0
  3. package/dist/chunks/ElDescForm.vue_vue_type_style_index_0_lang-Da8Mg9xX.js +1 -0
  4. package/dist/chunks/ElNumericInput.vue_vue_type_script_setup_true_lang-C6KlCE6f.js +1 -0
  5. package/dist/src/api/BasicApi.js +1 -1
  6. package/dist/src/api/DeptInfoApi.js +1 -1
  7. package/dist/src/api/DocumentApi.js +1 -1
  8. package/dist/src/api/EmployeeInfoApi.js +1 -1
  9. package/dist/src/api/SysDictCacheApi.js +1 -1
  10. package/dist/src/api/SysUserApi.js +1 -1
  11. package/dist/src/api/framework.js +1 -1
  12. package/dist/src/api/workflow/workflowInstApi.js +1 -1
  13. package/dist/src/components/ElDescForm/ElDescForm.vue.js +1 -1
  14. package/dist/src/components/ElGrid/ElGrid.vue.js +1 -1
  15. package/dist/src/components/ElGrid/ElGridColumnSetting.vue.js +1 -1
  16. package/dist/src/components/ElNumericInput/ElNumericInput.vue.d.ts +38 -0
  17. package/dist/src/components/ElNumericInput/ElNumericInput.vue.js +1 -0
  18. package/dist/src/components/OperationAuth/operationAuth.vue.js +1 -1
  19. package/dist/src/components/RichTextEditor/RichTextEditor.vue.js +1 -1
  20. package/dist/src/components/RichTextEditor/richTextImageUpload.js +1 -1
  21. package/dist/src/components/SelectInDicators/SelectInDicators.vue.js +1 -1
  22. package/dist/src/components/SelectInDicators/api/DataIndicatorsApi.js +1 -1
  23. package/dist/src/components/business/comp.selectUser.vue.js +1 -1
  24. package/dist/src/components/business/comp.userForm.vue.js +1 -1
  25. package/dist/src/components/business/userSelect.vue.js +1 -1
  26. package/dist/src/components/business/userSelectContent.vue.js +1 -1
  27. package/dist/src/components/dict/DictDisplay.vue.js +1 -1
  28. package/dist/src/components/drag/DragHandleIcon.vue.js +1 -1
  29. package/dist/src/components/kFrame/KFrame.vue.js +1 -1
  30. package/dist/src/components/upload/CustomElUpload.vue.js +1 -1
  31. package/dist/src/components/upload/FileView.vue.js +1 -1
  32. package/dist/src/components/upload/FileViewComponents.vue.js +1 -1
  33. package/dist/src/components/upload/OfficePreview.vue.js +2 -2
  34. package/dist/src/components/workflow/TaskOperation.vue.js +1 -1
  35. package/dist/src/components/workflow/WorkflowTodoShell.vue.js +2 -2
  36. package/dist/src/components/workflow/components/AddOrMinusMultiDialog.vue.js +1 -1
  37. package/dist/src/components/workflow/components/CheckDialog.vue.js +1 -1
  38. package/dist/src/components/workflow/components/SelectAssigneeDialog.vue.js +1 -1
  39. package/dist/src/config/GlobalLoadingConfig.d.ts +8 -0
  40. package/dist/src/config/GlobalLoadingConfig.js +1 -0
  41. package/dist/src/config/VxeTableConfig.js +1 -1
  42. package/dist/src/config/vxeDragRule.d.ts +1 -0
  43. package/dist/src/config/vxeDragRule.js +1 -1
  44. package/dist/src/hooks/createDialogHooks.js +2 -2
  45. package/dist/src/hooks/useBehaviorAction.js +1 -1
  46. package/dist/src/hooks/useDeleteConfirmHooks.js +1 -1
  47. package/dist/src/hooks/useDictHooks.js +1 -1
  48. package/dist/src/hooks/useListenerHooks.js +1 -1
  49. package/dist/src/hooks/useOpenNewMenu.js +1 -1
  50. package/dist/src/hooks/usePermissionHooks.js +1 -1
  51. package/dist/src/hooks/workflowTodo.js +1 -1
  52. package/dist/src/mixin/globalMixin.js +1 -1
  53. package/dist/src/packages/index.d.ts +48 -1
  54. package/dist/src/packages/index.js +1 -1
  55. package/dist/src/plugins/plugins.js +1 -1
  56. package/dist/src/plugins/renderDialog.js +1 -1
  57. package/dist/src/utils/AxiosConfig.js +1 -1
  58. package/dist/src/utils/behaviorContext.js +1 -1
  59. package/dist/src/utils/behaviorTrack.js +1 -1
  60. package/dist/src/utils/buildUploadHeaders.js +1 -1
  61. package/dist/src/utils/commonUtils.js +1 -1
  62. package/dist/src/utils/modules.js +2 -2
  63. package/dist/src/utils/request.js +1 -1
  64. package/dist/src/utils/uuid.d.ts +2 -0
  65. package/dist/src/utils/uuid.js +1 -0
  66. package/dist/styles/element-ui.css +1 -1
  67. package/package.json +1 -1
  68. package/dist/chunks/DragHandleIcon.vue_vue_type_script_setup_true_lang-Cu9FA2nn.js +0 -1
  69. package/dist/chunks/ElDescForm.vue_vue_type_style_index_0_lang-CziuoUbh.js +0 -1
@@ -1 +1 @@
1
- import{defineComponent as P,ref as p,useModel as Q,computed as R,resolveComponent as n,resolveDirective as $,openBlock as u,createElementBlock as h,Fragment as k,createVNode as g,withCtx as r,withDirectives as j,createBlock as v,createElementVNode as G,toDisplayString as w,renderList as H,createCommentVNode as b,mergeModels as M}from"vue";import x from"../src/api/workflow/workflowInstApi.js";import{ElMessage as o}from"element-plus";import{userInfoStore as J}from"../src/stores/userInfoStore.js";import _ from"../src/utils/FrameworkUtils.js";const le=P({__name:"AddOrMinusMultiDialog",props:M({taskId:{},dialogType:{}},{loading:{type:Boolean,default:!1},loadingModifiers:{}}),emits:M(["success"],["update:loading"]),setup(y,{expose:N,emit:V}){const d=y,C=V,I=J(),e=p({assignee:[]}),c=Q(y,"loading"),i=R(()=>d.dialogType??""),s=p([]),m=p(!1),E=async()=>{if(!(!d.taskId||!d.dialogType))try{if(e.value={assignee:[]},c.value=!0,e.value={...await x.getTaskCandidate(d.taskId),assignee:[]},s.value=e.value.candidate?.map(l=>l.loginName)||[],d.dialogType==="minusMulti"&&s.value.length<=1){o.warning("至少需保留一名审核人,当前仅剩一名审核人,无法减签");return}e.value.assignee=[...s.value]}catch(l){_.messageError(l)}finally{c.value=!1}},T=async l=>{if(l&&l.length>0)try{for(const a of l)e.value.candidate?.some(f=>f.loginName===a.loginName)||(e.value.candidate?.push(a),e.value.assignee?.push(a.loginName))}catch(a){_.messageError(a)}else o.warning("请选择审批人员");m.value=!1},U=()=>{m.value=!0},A=l=>i.value==="addMulti"?s.value.includes(l):i.value==="minusMulti"?I.getUserInfo.userCode===l:!1;return N({resetQuery:E,confirm:async()=>{if(e.value.candidate?.length==0){o.warning("请指定执行人!");return}if(i.value==="addMulti"){if(e.value.assignee.length==0){o.warning("请指定执行人!");return}if(e.value.assignee.length<=s.value.length){o.warning("加签必须选择非原审批人!");return}}else if(i.value==="minusMulti"){if(e.value.assignee.length<1){o.warning("至少需保留一名审核人");return}if(e.value.assignee.length>=s.value.length){o.warning("减签必须取消选中原审批人!");return}}try{c.value=!0,e.value.type=i.value,await x.addOrMinusAssignee(e.value),o.success("操作成功"),C("success")}catch(l){_.messageError(l)}finally{c.value=!1}}}),(l,a)=>{const f=n("el-form-item"),S=n("el-checkbox"),B=n("el-icon-btn"),D=n("operation-auth"),F=n("el-checkbox-group"),O=n("el-form"),q=n("el-flex"),z=n("user-select"),L=$("loading");return u(),h(k,null,[g(q,{vertical:!0,height:"100%"},{default:r(()=>[j((u(),v(O,{labelPosition:"top",size:"default",style:{width:"100%"}},{default:r(()=>[g(f,{label:"任务名"},{default:r(()=>[G("span",null,w(e.value?.taskName)+"("+w(e.value?.procName)+")",1)]),_:1}),g(f,{label:"审批人",required:!0},{default:r(()=>[e.value?.candidate&&e.value?.candidate.length>0?(u(),v(F,{key:0,modelValue:e.value.assignee,"onUpdate:modelValue":a[0]||(a[0]=t=>e.value.assignee=t)},{default:r(()=>[(u(!0),h(k,null,H(e.value?.candidate,t=>(u(),v(S,{disabled:A(t.loginName),key:t.loginName,label:t.userName,value:t.loginName},null,8,["disabled","label","value"]))),128)),i.value==="addMulti"?(u(),v(D,{key:0,"oper-code":"system:processinstance:edit"},{default:r(()=>[g(B,{style:{"margin-left":"15px"},"model-value":"adtec-plus",tip:"新增审批人",onClick:U})]),_:1})):b("v-if",!0)]),_:1},8,["modelValue"])):b("v-if",!0)]),_:1})]),_:1})),[[L,c.value]])]),_:1}),g(z,{"view-type":"dialog",modelValue:m.value,"onUpdate:modelValue":a[1]||(a[1]=t=>m.value=t),title:"选择审批人员",multiple:!0,"include-external":i.value==="addMulti",onSuccess:T,onCancel:a[2]||(a[2]=t=>m.value=!1)},null,8,["modelValue","include-external"])],64)}}});export{le as _};
1
+ import{defineComponent as P,ref as p,useModel as Q,computed as R,resolveComponent as t,resolveDirective as $,openBlock as u,createElementBlock as h,Fragment as k,createVNode as g,withCtx as r,withDirectives as j,createBlock as v,createElementVNode as G,toDisplayString as w,renderList as H,createCommentVNode as b,mergeModels as M}from"vue";import x from"../src/api/workflow/workflowInstApi.js";import{ElMessage as o}from"element-plus";import{userInfoStore as J}from"../src/stores/userInfoStore.js";import _ from"../src/utils/FrameworkUtils.js";const le=P({__name:"AddOrMinusMultiDialog",props:M({taskId:{},dialogType:{}},{loading:{type:Boolean,default:!1},loadingModifiers:{}}),emits:M(["success"],["update:loading"]),setup(y,{expose:N,emit:V}){const d=y,C=V,I=J(),e=p({assignee:[]}),c=Q(y,"loading"),i=R(()=>d.dialogType??""),s=p([]),m=p(!1),A=async()=>{if(!(!d.taskId||!d.dialogType))try{if(e.value={assignee:[]},c.value=!0,e.value={...await x.getTaskCandidate(d.taskId),assignee:[]},s.value=e.value.candidate?.map(l=>l.loginName)||[],d.dialogType==="minusMulti"&&s.value.length<=1){o.warning("至少需保留一名审核人,当前仅剩一名审核人,无法减签");return}e.value.assignee=[...s.value]}catch(l){_.messageError(l)}finally{c.value=!1}},E=async l=>{if(l&&l.length>0)try{for(const a of l)e.value.candidate?.some(f=>f.loginName===a.loginName)||(e.value.candidate?.push(a),e.value.assignee?.push(a.loginName))}catch(a){_.messageError(a)}else o.warning("请选择审批人员");m.value=!1},T=()=>{m.value=!0},U=l=>i.value==="addMulti"?s.value.includes(l):i.value==="minusMulti"?I.getUserInfo.userCode===l:!1;return N({resetQuery:A,confirm:async()=>{if(e.value.candidate?.length==0){o.warning("请指定执行人!");return}if(i.value==="addMulti"){if(e.value.assignee.length==0){o.warning("请指定执行人!");return}if(e.value.assignee.length<=s.value.length){o.warning("加签必须选择非原审批人!");return}}else if(i.value==="minusMulti"){if(e.value.assignee.length<1){o.warning("至少需保留一名审核人");return}if(e.value.assignee.length>=s.value.length){o.warning("减签必须取消选中原审批人!");return}}try{c.value=!0,e.value.type=i.value,await x.addOrMinusAssignee(e.value),o.success("操作成功"),C("success")}catch(l){_.messageError(l)}finally{c.value=!1}}}),(l,a)=>{const f=t("el-form-item"),S=t("el-checkbox"),B=t("el-icon-btn"),D=t("operation-auth"),F=t("el-checkbox-group"),O=t("el-form"),q=t("el-flex"),z=t("user-select"),L=$("loading");return u(),h(k,null,[g(q,{vertical:!0,height:"100%"},{default:r(()=>[j((u(),v(O,{labelPosition:"top",size:"default",style:{width:"100%"}},{default:r(()=>[g(f,{label:"任务名"},{default:r(()=>[G("span",null,w(e.value?.taskName)+"("+w(e.value?.procName)+")",1)]),_:1}),g(f,{label:"审批人",required:!0},{default:r(()=>[e.value?.candidate&&e.value?.candidate.length>0?(u(),v(F,{key:0,modelValue:e.value.assignee,"onUpdate:modelValue":a[0]||(a[0]=n=>e.value.assignee=n)},{default:r(()=>[(u(!0),h(k,null,H(e.value?.candidate,n=>(u(),v(S,{disabled:U(n.loginName),key:n.loginName,label:n.userName,value:n.loginName},null,8,["disabled","label","value"]))),128)),i.value==="addMulti"?(u(),v(D,{key:0,"oper-code":"system:processinstance:addAssignee"},{default:r(()=>[g(B,{style:{"margin-left":"15px"},"model-value":"adtec-plus",tip:"新增审批人",onClick:T})]),_:1})):b("v-if",!0)]),_:1},8,["modelValue"])):b("v-if",!0)]),_:1})]),_:1})),[[L,c.value]])]),_:1}),g(z,{"view-type":"dialog",modelValue:m.value,"onUpdate:modelValue":a[1]||(a[1]=n=>m.value=n),title:"选择审批人员",multiple:!0,"include-external":i.value==="addMulti",onSuccess:E,onCancel:a[2]||(a[2]=n=>m.value=!1)},null,8,["modelValue","include-external"])],64)}}});export{le as _};
@@ -0,0 +1 @@
1
+ import{defineComponent as o,resolveComponent as n,openBlock as t,createBlock as c}from"vue";const _=o({__name:"DragHandleIcon",setup(r){return(a,l)=>{const e=n("el-icons");return t(),c(e,{"model-value":"adtec-tdpx",class:"row-drag-handle",style:{display:"flex",width:"100%",height:"100%","align-items":"center","justify-content":"center",cursor:"grab",color:"var(--el-text-color-secondary)"}})}}});export{_};
@@ -0,0 +1 @@
1
+ import{defineComponent as pe,ref as de,reactive as me,onMounted as ie,onUpdated as ye,onBeforeUnmount as he,computed as E,resolveComponent as u,openBlock as s,createBlock as d,withKeys as ve,withCtx as i,createCommentVNode as U,createVNode as N,createElementBlock as g,Fragment as A,renderList as M,normalizeClass as j,createElementVNode as P,toDisplayString as B,mergeProps as h,createTextVNode as q,renderSlot as $,nextTick as I}from"vue";const _e=["onMouseenter"],be={key:11,class:"el-desc-form__readonly-slot"},W="—",Ve=pe({__name:"ElDescForm",props:{model:{},fields:{},rules:{default:()=>({})},column:{default:4},border:{type:Boolean,default:!0},readonly:{type:Boolean,default:!1},title:{}},setup(a,{expose:G}){const v=a,x=de(),V=new Map,k=new Map,S=me({}),w=e=>{const o=V.get(e),l=!!o&&o.scrollWidth>o.clientWidth;S[e]!==l&&(S[e]=l)},z=()=>{I(()=>{V.forEach((e,o)=>w(o))})},H=(e,o)=>{const l=o;if(V.get(e)===l){l&&w(e);return}if(k.get(e)?.disconnect(),k.delete(e),delete S[e],!l){V.delete(e);return}if(V.set(e,l),typeof ResizeObserver<"u"){const c=new ResizeObserver(()=>w(e));c.observe(l),k.set(e,c)}I(()=>w(e))};ie(z),ye(z),he(()=>{k.forEach(e=>e.disconnect()),k.clear(),V.clear()});const y=E(()=>Math.min(4,Math.max(1,v.column||4))),J=e=>{const o=x.value?.$el;if(!o)return;const l=Array.from(o.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=e.shiftKey?-1:1,b=(c+p+l.length)%l.length;e.preventDefault();const f=l[b];f.focus();try{const m=f.value.length;f.setSelectionRange(m,m)}catch{}},D=E(()=>{const e={...v.rules};for(const o of v.fields)o.rules?.length&&(e[o.prop]=[...e[o.prop]||[],...o.rules]);return e}),Q=E(()=>{const e=[];let o=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(o<y.value&&l>=0){const m=e[l],O=Math.min(Math.max(1,m.span??1),y.value);m.span=Math.min(O+o,y.value)}const f=K(r);e.push(f),l=e.length-1,o=y.value;continue}const p=K(r);e.push(p),l=e.length-1;const b=Math.min(Math.max(1,p.span??1),y.value);o=b<o?o-b:y.value}return e}),F=e=>{const o=e.props||{};return v.readonly===!0||e.readonly===!0||o.readonly===!0},T=(e,o)=>e===o||String(e)===String(o),R=(e,o)=>{if(!e?.length)return;const l=e.find(r=>T(r.value,o));return l===void 0?void 0:String(l.label)},C=(e,o)=>{if(e?.length)for(const l of e){if(T(l.value,o))return String(l.label??l.name??"");if(l.children?.length){const r=C(l.children,o);if(r)return r}}},X=(e,o)=>{let l=e||[];const r=[];for(const c of o){const p=l.find(b=>T(b.value,c));if(!p)break;r.push(String(p.label??p.name??"")),l=p.children||[]}return r.join(" / ")},_=e=>e.trim()||W,L=e=>{const o=v.model?.[e.prop];if(o==null||typeof o=="string"&&o.trim()===""||Array.isArray(o)&&o.length===0)return W;const l=e.props||{},r=e.options;if(e.type==="select")return Array.isArray(o)?_(o.map(c=>R(r,c)??String(c)).filter(Boolean).join("、")):_(R(r,o)??String(o));if(e.type==="radio")return _(R(r,o)??String(o));if(e.type==="checkbox"){const c=Array.isArray(o)?o:[o];return _(c.map(p=>R(r,p)??String(p)).filter(Boolean).join("、"))}if(e.type==="tree-select"){const c=r||l.data;return Array.isArray(o)?_(o.map(p=>C(c,p)??String(p)).filter(Boolean).join("、")):_(C(c,o)??String(o))}if(e.type==="cascader"){const c=X(r,Array.isArray(o)?o:[o]);return _(c||(Array.isArray(o)?o.join(" / "):String(o)))}return e.type==="switch"?o===!0||o===1||o==="1"?l["active-text"]||"是":l["inactive-text"]||"否":_(String(o))},Y=e=>!!D.value[e.prop]?.some(l=>l.required),K=e=>{const o=l=>typeof l=="function"?l(v.model):l;return{...e,span:e.type==="textarea"?y.value:Math.min(Math.max(1,e.span??1),y.value),label:o(e.label),tip:e.tip?o(e.tip):void 0,options:e.options?o(e.options):void 0,placeholder:e.placeholder?o(e.placeholder):void 0,props:e.props?o(e.props):void 0}};return G({validate:e=>x.value?.validate(e),resetFields:()=>x.value?.resetFields(),clearValidate:()=>x.value?.clearValidate()}),(e,o)=>{const l=u("el-title"),r=u("el-icons"),c=u("el-tooltip"),p=u("el-input"),b=u("el-numeric-input"),f=u("el-option"),m=u("el-select"),O=u("el-date-picker"),Z=u("el-switch"),ee=u("el-radio"),te=u("el-radio-group"),oe=u("el-checkbox"),le=u("el-checkbox-group"),ne=u("el-tree-select"),re=u("el-cascader"),ae=u("el-form-item"),se=u("el-descriptions-item"),ce=u("el-descriptions"),ue=u("el-form");return s(),d(ue,{ref_key:"formRef",ref:x,class:"el-desc-form",model:a.model,rules:D.value,"validate-on-rule-change":!1,onKeydown:ve(J,["tab"])},{default:i(()=>[U(" 内容块二级标题:弹窗/抽屉内表单区块统一用 el-desc-form title 声明式渲染,避免各页面手写 "),a.title?(s(),d(l,{key:0,level:"1",title:a.title,style:{"border-bottom":"var(--border)","margin-bottom":"8px"}},null,8,["title"])):U("v-if",!0),N(ce,{direction:"vertical",column:y.value,border:a.border},{default:i(()=>[(s(!0),g(A,null,M(Q.value,t=>(s(),d(se,{key:t.prop,label:t.label||void 0,span:t.span},{label:i(()=>[t.label?(s(),g("span",{key:0,class:j(["el-desc-form__label",{"el-desc-form__label--required":Y(t)}])},[q(B(t.label)+" ",1),t.tip?(s(),d(c,{key:0,content:t.tip,placement:"top","popper-class":"el-desc-form-tip-popper"},{default:i(()=>[N(r,{"model-value":"adtec-info",class:"el-desc-form__label-tip"})]),_:1},8,["content"])):U("v-if",!0)],2)):U("v-if",!0)]),default:i(()=>[N(ae,{prop:F(t)?void 0:t.prop,class:j({"el-desc-form__form-item--multiline":t.type==="textarea"}),style:{"margin-bottom":"0"},"hide-required-asterisk":""},{default:i(()=>[U(" 只读模式:统一处理文本溢出,只有内容超出单元格宽度时才打开 tooltip "),F(t)&&t.type&&t.type!=="slot"?(s(),d(c,{key:0,content:L(t),disabled:!S[t.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":t.type==="textarea"}]),onMouseenter:n=>w(t.prop)},[P("span",{ref_for:!0,ref:n=>H(t.prop,n),class:"el-desc-form__readonly-text-content"},B(L(t)),513)],42,_e)]),_:2},1032,["content","disabled"])):t.type==="input"?(s(),d(p,h({key:1,modelValue:a.model[t.prop],"onUpdate:modelValue":n=>a.model[t.prop]=n},{ref_for:!0},t.props,{placeholder:t.placeholder}),null,16,["modelValue","onUpdate:modelValue","placeholder"])):t.type==="textarea"?(s(),d(p,h({key:2,modelValue:a.model[t.prop],"onUpdate:modelValue":n=>a.model[t.prop]=n,type:"textarea",autosize:{minRows:2,maxRows:4}},{ref_for:!0},t.props,{placeholder:t.placeholder}),null,16,["modelValue","onUpdate:modelValue","placeholder"])):t.type==="number"?(s(),d(b,h({key:3,modelValue:a.model[t.prop],"onUpdate:modelValue":n=>a.model[t.prop]=n},{ref_for:!0},t.props),null,16,["modelValue","onUpdate:modelValue"])):t.type==="select"?(s(),d(m,h({key:4,modelValue:a.model[t.prop],"onUpdate:modelValue":n=>a.model[t.prop]=n},{ref_for:!0},t.props,{placeholder:t.placeholder,clearable:""}),{default:i(()=>[(s(!0),g(A,null,M(t.options,n=>(s(),d(f,{key:n.value,label:n.label,value:n.value,disabled:n.disabled},null,8,["label","value","disabled"]))),128))]),_:2},1040,["modelValue","onUpdate:modelValue","placeholder"])):t.type==="date"?(s(),d(O,h({key:5,modelValue:a.model[t.prop],"onUpdate:modelValue":n=>a.model[t.prop]=n},{ref_for:!0},t.props,{type:t.props?.type||"date",placeholder:t.placeholder,style:{width:"100%"}}),null,16,["modelValue","onUpdate:modelValue","type","placeholder"])):t.type==="switch"?(s(),d(Z,h({key:6,modelValue:a.model[t.prop],"onUpdate:modelValue":n=>a.model[t.prop]=n},{ref_for:!0},t.props),null,16,["modelValue","onUpdate:modelValue"])):t.type==="radio"?(s(),d(te,h({key:7,modelValue:a.model[t.prop],"onUpdate:modelValue":n=>a.model[t.prop]=n},{ref_for:!0},t.props),{default:i(()=>[(s(!0),g(A,null,M(t.options,n=>(s(),d(ee,{key:n.value,value:n.value},{default:i(()=>[q(B(n.label),1)]),_:2},1032,["value"]))),128))]),_:2},1040,["modelValue","onUpdate:modelValue"])):t.type==="checkbox"?(s(),d(le,h({key:8,modelValue:a.model[t.prop],"onUpdate:modelValue":n=>a.model[t.prop]=n},{ref_for:!0},t.props),{default:i(()=>[(s(!0),g(A,null,M(t.options,n=>(s(),d(oe,{key:n.value,value:n.value},{default:i(()=>[q(B(n.label),1)]),_:2},1032,["value"]))),128))]),_:2},1040,["modelValue","onUpdate:modelValue"])):t.type==="tree-select"?(s(),d(ne,h({key:9,modelValue:a.model[t.prop],"onUpdate:modelValue":n=>a.model[t.prop]=n},{ref_for:!0},t.props,{placeholder:t.placeholder,style:{width:"100%"}}),null,16,["modelValue","onUpdate:modelValue","placeholder"])):t.type==="cascader"?(s(),d(re,h({key:10,modelValue:a.model[t.prop],"onUpdate:modelValue":n=>a.model[t.prop]=n,options:t.options},{ref_for:!0},t.props,{style:{width:"100%"}}),null,16,["modelValue","onUpdate:modelValue","options"])):F(t)?(s(),g("div",be,[$(e.$slots,t.slot||t.prop,{field:t,model:a.model})])):$(e.$slots,t.slot||t.prop,{field:t,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"])}}});export{Ve as _};
@@ -0,0 +1 @@
1
+ import{defineComponent as $,useAttrs as _,ref as p,computed as E,watch as k,resolveComponent as A,openBlock as P,createBlock as w,mergeProps as z,unref as D}from"vue";const U=$({inheritAttrs:!1,__name:"ElNumericInput",props:{modelValue:{default:void 0},min:{default:void 0},max:{default:void 0},precision:{default:void 0},step:{default:void 0},stepStrictly:{type:Boolean,default:!1},valueOnClear:{default:null},clearable:{type:Boolean,default:!0},disabled:{type:Boolean,default:!1},readonly:{type:Boolean,default:!1}},emits:["update:modelValue","input","change","focus","blur"],setup(i,{emit:x}){const n=i,u=x,h=_(),l=p(""),c=p(!1),d=p(),f=E(()=>{if(Number.isInteger(n.precision)&&n.precision>=0)return n.precision;if(n.step!=null&&Number.isFinite(n.step)){const e=String(n.step),t=e.match(/e-(\d+)$/i);return t?Number(t[1]):e.split(".")[1]?.length||0}}),r=e=>{if(!e||e==="-"||e==="."||e==="-.")return;const t=Number(e);return Number.isFinite(t)?t:void 0},y=e=>e==null?"":String(e),V=e=>{const t=e.replace(/[^\d.-]/g,"");if(!t||t==="-")return t;const a=t.startsWith("-"),o=t.replace(/-/g,""),s=o.indexOf("."),I=(s>=0?o.slice(0,s):o)||"0",b=s>=0;let m=b?o.slice(s+1).replace(/\./g,""):"";const g=f.value;return g!=null&&(m=m.slice(0,g)),`${a?"-":""}${I}${b?`.${m}`:""}`},S=e=>{let t=e;n.stepStrictly&&n.step!=null&&n.step>0&&(t=Math.round(t/n.step)*n.step);const a=f.value;return a!=null&&(t=Number(t.toFixed(a))),n.min!=null&&t<n.min&&(t=n.min),n.max!=null&&t>n.max&&(t=n.max),t},C=e=>{const t=typeof e=="number"?e:r(String(e??""));d.value=t,l.value=y(e)};k(()=>n.modelValue,e=>{c.value||C(e)},{immediate:!0});const B=e=>{l.value=V(String(e??""));const t=r(l.value);u("input",t),u("update:modelValue",t)},v=()=>{const e=r(l.value),t=e==null?void 0:S(e),a=d.value;t==null?n.valueOnClear==="min"?l.value=n.min==null?"":String(n.min):n.valueOnClear==="max"?l.value=n.max==null?"":String(n.max):typeof n.valueOnClear=="number"?l.value=String(n.valueOnClear):l.value="":l.value=String(t);const o=r(l.value);d.value=o,u("update:modelValue",o),a!==o&&u("change",o,a)},N=()=>v(),F=e=>{c.value=!0,u("focus",e)},O=e=>{v(),c.value=!1,u("blur",e)};return(e,t)=>{const a=A("el-input");return P(),w(a,z(D(h),{"model-value":l.value,clearable:i.clearable,disabled:i.disabled,readonly:i.readonly,type:"text",inputmode:"decimal","onUpdate:modelValue":B,onChange:N,onFocus:F,onBlur:O}),null,16,["model-value","clearable","disabled","readonly"])}}});export{U as _};
@@ -1 +1 @@
1
- import t from"../utils/request.js";import"../utils/AxiosConfig.js";import"axios";import"uuid";import"../utils/encrypt.js";import"jsencrypt";import"../utils/behaviorTrack.js";import"crypto-js/enc-base64";import"crypto-js/enc-utf8";import"../utils/behaviorContext.js";import"../utils/dateTime.js";import"element-plus";import"../utils/frontendBus.js";import"../utils/globalLoading.js";import"vue";import"../utils/workflowTaskContext.js";const f={getMdmOrgDeptTree(){return t.post("/api/base/mdmDept/getMdmOrgDeptTree",{})},getMdmOrgList(r){return t.post("/api/base/mdmOrg/getMdmOrgList",r)}};export{f as default};
1
+ import t from"../utils/request.js";import"../utils/AxiosConfig.js";import"axios";import"../utils/uuid.js";import"uuid";import"../utils/encrypt.js";import"jsencrypt";import"../utils/behaviorTrack.js";import"crypto-js/enc-base64";import"crypto-js/enc-utf8";import"../utils/behaviorContext.js";import"../utils/dateTime.js";import"element-plus";import"../utils/frontendBus.js";import"../utils/globalLoading.js";import"vue";import"../utils/workflowTaskContext.js";import"../config/GlobalLoadingConfig.js";const T={getMdmOrgDeptTree(){return t.post("/api/base/mdmDept/getMdmOrgDeptTree",{})},getMdmOrgList(r){return t.post("/api/base/mdmOrg/getMdmOrgList",r)}};export{T as default};
@@ -1 +1 @@
1
- import r from"../utils/request.js";import"../utils/AxiosConfig.js";import"axios";import"uuid";import"../utils/encrypt.js";import"jsencrypt";import"../utils/behaviorTrack.js";import"crypto-js/enc-base64";import"crypto-js/enc-utf8";import"../utils/behaviorContext.js";import"../utils/dateTime.js";import"element-plus";import"../utils/frontendBus.js";import"../utils/globalLoading.js";import"vue";import"../utils/workflowTaskContext.js";const p="/api/base/mdmDept/",T={getMdmOrgDeptTree(t){return r.post(p+"getMdmOrgDeptTree",t)}};export{T as default};
1
+ import r from"../utils/request.js";import"../utils/AxiosConfig.js";import"axios";import"../utils/uuid.js";import"uuid";import"../utils/encrypt.js";import"jsencrypt";import"../utils/behaviorTrack.js";import"crypto-js/enc-base64";import"crypto-js/enc-utf8";import"../utils/behaviorContext.js";import"../utils/dateTime.js";import"element-plus";import"../utils/frontendBus.js";import"../utils/globalLoading.js";import"vue";import"../utils/workflowTaskContext.js";import"../config/GlobalLoadingConfig.js";const p="/api/base/mdmDept/",l={getMdmOrgDeptTree(t){return r.post(p+"getMdmOrgDeptTree",t)}};export{l as default};
@@ -1 +1 @@
1
- import r from"../utils/request.js";import i from"../utils/AxiosConfig.js";import"axios";import"uuid";import"../utils/encrypt.js";import"jsencrypt";import"../utils/behaviorTrack.js";import"crypto-js/enc-base64";import"crypto-js/enc-utf8";import"../utils/behaviorContext.js";import"../utils/dateTime.js";import"element-plus";import"../utils/frontendBus.js";import"../utils/globalLoading.js";import"vue";import"../utils/workflowTaskContext.js";const t="/api/doc/",h={getUpLoadFilesVoById(e){return r.get(t+"getUpLoadFilesVoById/"+e)},getFileAccessAddress(e){return r.get(t+"getFileAccessAddress",{id:e})},async createRichTextImageUrl(e){const{url:s}=await this.createPreviewSession(e),o=/\/preview\/fileView\/([^/]+)\//.exec(s||"");if(!o?.[1])throw new Error("预览会话创建失败");return`${t}preview/fileView/${encodeURIComponent(o[1])}/image`},getUpLoadFilesByBussinessIds(e,s){const o=s===void 0?t+"getUpLoadFilesByBussinessIds":t+"getUpLoadFilesByBussinessIds/"+s;return r.post(o,e)},delSysUploadFile(e){return r.get(t+"delSysUploadFile/"+e)},getBusinessDocuments(e,s){return r.get(t+"getBusinessDocuments/"+e+"/"+s)},fileStatusConfirmation(e){return r.post(t+"fileStatusConfirmation",e)},delSysUploadFiles(e){return r.post(t+"delSysUploadFiles",e)},updateFilesCreateBy(e,s){return r.post(t+"updateFilesCreateBy",{ids:e,createBy:s})},createPreviewSession(e){return r.post(t+"preview/session/"+e)},downloadFile(e){return i({url:t+"preview/download/"+e,method:"get",responseType:"blob"}).then(s=>s.data)}};export{h as default};
1
+ import r from"../utils/request.js";import i from"../utils/AxiosConfig.js";import"axios";import"../utils/uuid.js";import"uuid";import"../utils/encrypt.js";import"jsencrypt";import"../utils/behaviorTrack.js";import"crypto-js/enc-base64";import"crypto-js/enc-utf8";import"../utils/behaviorContext.js";import"../utils/dateTime.js";import"element-plus";import"../utils/frontendBus.js";import"../utils/globalLoading.js";import"vue";import"../utils/workflowTaskContext.js";import"../config/GlobalLoadingConfig.js";const t="/api/doc/",I={getUpLoadFilesVoById(e){return r.get(t+"getUpLoadFilesVoById/"+e)},getFileAccessAddress(e){return r.get(t+"getFileAccessAddress",{id:e})},async createRichTextImageUrl(e){const{url:s}=await this.createPreviewSession(e),o=/\/preview\/fileView\/([^/]+)\//.exec(s||"");if(!o?.[1])throw new Error("预览会话创建失败");return`${t}preview/fileView/${encodeURIComponent(o[1])}/image`},getUpLoadFilesByBussinessIds(e,s){const o=s===void 0?t+"getUpLoadFilesByBussinessIds":t+"getUpLoadFilesByBussinessIds/"+s;return r.post(o,e)},delSysUploadFile(e){return r.get(t+"delSysUploadFile/"+e)},getBusinessDocuments(e,s){return r.get(t+"getBusinessDocuments/"+e+"/"+s)},fileStatusConfirmation(e){return r.post(t+"fileStatusConfirmation",e)},delSysUploadFiles(e){return r.post(t+"delSysUploadFiles",e)},updateFilesCreateBy(e,s){return r.post(t+"updateFilesCreateBy",{ids:e,createBy:s})},createPreviewSession(e){return r.post(t+"preview/session/"+e)},downloadFile(e){return i({url:t+"preview/download/"+e,method:"get",responseType:"blob"}).then(s=>s.data)}};export{I as default};
@@ -1 +1 @@
1
- import o from"../utils/request.js";import"../utils/AxiosConfig.js";import"axios";import"uuid";import"../utils/encrypt.js";import"jsencrypt";import"../utils/behaviorTrack.js";import"crypto-js/enc-base64";import"crypto-js/enc-utf8";import"../utils/behaviorContext.js";import"../utils/dateTime.js";import"element-plus";import"../utils/frontendBus.js";import"../utils/globalLoading.js";import"vue";import"../utils/workflowTaskContext.js";const m="/api/base/mdmEmployee/",g={getMdmEmployeeListByIds(t){return o.post(m+"getMdmEmployeeListByIds",t)}};export{g as default};
1
+ import o from"../utils/request.js";import"../utils/AxiosConfig.js";import"axios";import"../utils/uuid.js";import"uuid";import"../utils/encrypt.js";import"jsencrypt";import"../utils/behaviorTrack.js";import"crypto-js/enc-base64";import"crypto-js/enc-utf8";import"../utils/behaviorContext.js";import"../utils/dateTime.js";import"element-plus";import"../utils/frontendBus.js";import"../utils/globalLoading.js";import"vue";import"../utils/workflowTaskContext.js";import"../config/GlobalLoadingConfig.js";const m="/api/base/mdmEmployee/",L={getMdmEmployeeListByIds(t){return o.post(m+"getMdmEmployeeListByIds",t)}};export{L as default};
@@ -1 +1 @@
1
- import i from"../utils/request.js";import"../utils/AxiosConfig.js";import"axios";import"uuid";import"../utils/encrypt.js";import"jsencrypt";import"../utils/behaviorTrack.js";import"crypto-js/enc-base64";import"crypto-js/enc-utf8";import"../utils/behaviorContext.js";import"../utils/dateTime.js";import"element-plus";import"../utils/frontendBus.js";import"../utils/globalLoading.js";import"vue";import"../utils/workflowTaskContext.js";const r="/api/system/dict/data/",g={getSysDictDataCacheVo(t){return i.get(r+"getSysDictDataCacheVo/"+t)},batchGetSysDictDataCacheVo(t,o){return i.post(r+"batchGetSysDictDataCacheVo?orgId="+(o||""),t)}};export{g as default};
1
+ import i from"../utils/request.js";import"../utils/AxiosConfig.js";import"axios";import"../utils/uuid.js";import"uuid";import"../utils/encrypt.js";import"jsencrypt";import"../utils/behaviorTrack.js";import"crypto-js/enc-base64";import"crypto-js/enc-utf8";import"../utils/behaviorContext.js";import"../utils/dateTime.js";import"element-plus";import"../utils/frontendBus.js";import"../utils/globalLoading.js";import"vue";import"../utils/workflowTaskContext.js";import"../config/GlobalLoadingConfig.js";const r="/api/system/dict/data/",G={getSysDictDataCacheVo(t){return i.get(r+"getSysDictDataCacheVo/"+t)},batchGetSysDictDataCacheVo(t,o){return i.post(r+"batchGetSysDictDataCacheVo?orgId="+(o||""),t)}};export{G as default};
@@ -1 +1 @@
1
- import r from"../utils/request.js";import"../utils/AxiosConfig.js";import"axios";import"uuid";import"../utils/encrypt.js";import"jsencrypt";import"../utils/behaviorTrack.js";import"crypto-js/enc-base64";import"crypto-js/enc-utf8";import"../utils/behaviorContext.js";import"../utils/dateTime.js";import"element-plus";import"../utils/frontendBus.js";import"../utils/globalLoading.js";import"vue";import"../utils/workflowTaskContext.js";const t="/api/system/sysUserInfo/",c={add(e){return r.post(t+"add",e)},getInitUserListComp(e){return r.post(t+"getInitUserListComp",e)},getSysRoleUserByRoleId(e){return r.get(`/api/system/roleInfo/getSysRoleUserByRoleId/${e}`)},getSysUserInfoUserSelectComp(){return r.post(t+"getSysUserInfoUserSelectComp")},getSysUserInfoUserSelectForTransfer(){return r.post(t+"getSysUserInfoUserSelectForTransfer")}};export{c as default};
1
+ import t from"../utils/request.js";import"../utils/AxiosConfig.js";import"axios";import"../utils/uuid.js";import"uuid";import"../utils/encrypt.js";import"jsencrypt";import"../utils/behaviorTrack.js";import"crypto-js/enc-base64";import"crypto-js/enc-utf8";import"../utils/behaviorContext.js";import"../utils/dateTime.js";import"element-plus";import"../utils/frontendBus.js";import"../utils/globalLoading.js";import"vue";import"../utils/workflowTaskContext.js";import"../config/GlobalLoadingConfig.js";const e="/api/system/sysUserInfo/",R={add(r){return t.post(e+"add",r)},getInitUserListComp(r){return t.post(e+"getInitUserListComp",r)},getSysRoleUserByRoleId(r){return t.get(`/api/system/roleInfo/getSysRoleUserByRoleId/${r}`)},getSysUserInfoUserSelectComp(){return t.post(e+"getSysUserInfoUserSelectComp")},getSysUserInfoUserSelectForTransfer(){return t.post(e+"getSysUserInfoUserSelectForTransfer")}};export{R as default};
@@ -1 +1 @@
1
- import t from"../utils/request.js";import"../utils/AxiosConfig.js";import"axios";import"uuid";import"../utils/encrypt.js";import"jsencrypt";import"../utils/behaviorTrack.js";import"crypto-js/enc-base64";import"crypto-js/enc-utf8";import"../utils/behaviorContext.js";import"../utils/dateTime.js";import"element-plus";import"../utils/frontendBus.js";import"../utils/globalLoading.js";import"vue";import"../utils/workflowTaskContext.js";const k={getFileAccessAddress(r){return t.get("/api/doc/getFileAccessAddress",{id:r})}};export{k as default};
1
+ import t from"../utils/request.js";import"../utils/AxiosConfig.js";import"axios";import"../utils/uuid.js";import"uuid";import"../utils/encrypt.js";import"jsencrypt";import"../utils/behaviorTrack.js";import"crypto-js/enc-base64";import"crypto-js/enc-utf8";import"../utils/behaviorContext.js";import"../utils/dateTime.js";import"element-plus";import"../utils/frontendBus.js";import"../utils/globalLoading.js";import"vue";import"../utils/workflowTaskContext.js";import"../config/GlobalLoadingConfig.js";const w={getFileAccessAddress(r){return t.get("/api/doc/getFileAccessAddress",{id:r})}};export{w as default};
@@ -1 +1 @@
1
- import s from"../../utils/request.js";import"../../utils/AxiosConfig.js";import"axios";import"uuid";import"../../utils/encrypt.js";import"jsencrypt";import"../../utils/behaviorTrack.js";import"crypto-js/enc-base64";import"crypto-js/enc-utf8";import"../../utils/behaviorContext.js";import"../../utils/dateTime.js";import"element-plus";import"../../utils/frontendBus.js";import"../../utils/globalLoading.js";import"vue";import"../../utils/workflowTaskContext.js";const e="/api/workflow/task",B={addProcessInst(t){return s.post("/api/workflow/procinstance/start",t)},taskComplete(t){return s.post(e+"/taskComplete",t)},taskTransfer(t){return s.post(e+"/taskTransfer",t)},taskReject(t){return s.post(e+"/taskReject",t)},findReturnTaskList(t,r=!1){return s.post(e+"/findReturnTaskList",{taskId:t,ignoreBackNodes:r})},taskReturn(t){return s.post(e+"/taskReturn",t)},getTaskCandidate(t){return s.post(e+"/getTaskCandidate",{taskId:t})},getTaskCandidateList(t){return s.post(e+"/getTaskCandidateList",{taskId:t})},setAssignee(t){return s.post(e+"/setAssignee",t)},setAssigneeList(t){return s.post(e+"/setAssigneeList",t)},addOrMinusAssignee(t){return s.post(e+"/addOrMinusAssignee",t)},getTaskInst(t){return s.post(e+"/getTaskInst",{taskId:t})},getWfTaskByBusinessId(t){return s.post(e+"/getWfTaskByBusinessId",{businessId:t})},getProcessTaskList(t){return s.get("/api/workflow/workbench/process/"+t)},getWfProcessInstByBusinessId(t){return s.get(e+"/getUserTaskInfo",{businessId:t})},getReviewDetail(t){return s.get(e+"/reviewDetail",{taskId:t})},getLastNodeApprovalByBusinessId(t,r){const o={businessId:t,nodeCodes:Array.isArray(r)?r:[r]};return s.post(e+"/lastNodeApproval",o)}};export{B as default};
1
+ import s from"../../utils/request.js";import"../../utils/AxiosConfig.js";import"axios";import"../../utils/uuid.js";import"uuid";import"../../utils/encrypt.js";import"jsencrypt";import"../../utils/behaviorTrack.js";import"crypto-js/enc-base64";import"crypto-js/enc-utf8";import"../../utils/behaviorContext.js";import"../../utils/dateTime.js";import"element-plus";import"../../utils/frontendBus.js";import"../../utils/globalLoading.js";import"vue";import"../../utils/workflowTaskContext.js";import"../../config/GlobalLoadingConfig.js";const e="/api/workflow/task",y={addProcessInst(t){return s.post("/api/workflow/procinstance/start",t)},taskComplete(t){return s.post(e+"/taskComplete",t)},taskTransfer(t){return s.post(e+"/taskTransfer",t)},taskReject(t){return s.post(e+"/taskReject",t)},findReturnTaskList(t,r=!1){return s.post(e+"/findReturnTaskList",{taskId:t,ignoreBackNodes:r})},taskReturn(t){return s.post(e+"/taskReturn",t)},getTaskCandidate(t){return s.post(e+"/getTaskCandidate",{taskId:t})},getTaskCandidateList(t){return s.post(e+"/getTaskCandidateList",{taskId:t})},setAssignee(t){return s.post(e+"/setAssignee",t)},setAssigneeList(t){return s.post(e+"/setAssigneeList",t)},addOrMinusAssignee(t){return s.post(e+"/addOrMinusAssignee",t)},getTaskInst(t){return s.post(e+"/getTaskInst",{taskId:t})},getWfTaskByBusinessId(t){return s.post(e+"/getWfTaskByBusinessId",{businessId:t})},getProcessTaskList(t){return s.get("/api/workflow/workbench/process/"+t)},getWfProcessInstByBusinessId(t){return s.get(e+"/getUserTaskInfo",{businessId:t})},getReviewDetail(t){return s.get(e+"/reviewDetail",{taskId:t})},getLastNodeApprovalByBusinessId(t,r){const o={businessId:t,nodeCodes:Array.isArray(r)?r:[r]};return s.post(e+"/lastNodeApproval",o)}};export{y as default};
@@ -1 +1 @@
1
- import{_ as m}from"../../../chunks/ElDescForm.vue_vue_type_style_index_0_lang-CziuoUbh.js";import"vue";export{m as default};
1
+ import{_ as m}from"../../../chunks/ElDescForm.vue_vue_type_style_index_0_lang-Da8Mg9xX.js";import"vue";export{m as default};
@@ -1,3 +1,3 @@
1
- import{defineComponent as V,useModel as y,useAttrs as $,useSlots as A,ref as z,computed as m,resolveComponent as K,openBlock as i,createElementBlock as _,Fragment as L,createCommentVNode as s,createElementVNode as k,createVNode as U,mergeProps as x,createSlots as F,renderList as H,unref as I,withCtx as j,renderSlot as q,normalizeProps as D,guardReactiveProps as J,normalizeClass as O,createBlock as f,toHandlers as Q,mergeModels as P}from"vue";import W from"./ElGridColumnSetting.vue.js";import{_ as X}from"../../../chunks/ElTotalTools.vue_vue_type_script_setup_true_lang-BqRnIFkw.js";import{_ as Y}from"../../../chunks/ElPagePagination.vue_vue_type_style_index_0_lang-CGjSyYgn.js";import{_ as Z}from"../../../chunks/_plugin-vue_export-helper-DlAUqK2U.js";import"../../../chunks/DragHandleIcon.vue_vue_type_script_setup_true_lang-Cu9FA2nn.js";import"../../utils/columnSettingStorage.js";import"../../utils/userSessionStorage.js";import"crypto-js/enc-base64";import"crypto-js/enc-utf8";import"../../utils/FrameworkUtils.js";import"element-plus";import"xlsx-js-style";import"@vueuse/core";const ee={class:"el-grid__body"},te={class:"el-grid__footer-right"},ne=V({__name:"ElGrid",props:P({data:{default:()=>[]},total:{default:0},pagination:{type:Boolean,default:!1},totalTools:{type:Boolean,default:!1},columnSetting:{type:Boolean,default:!1},columnSettingKey:{default:void 0}},{currentPage:{default:1},currentPageModifiers:{},pageSize:{default:10},pageSizeModifiers:{}}),emits:P(["current-change","size-change"],["update:currentPage","update:pageSize"]),setup(e,{expose:B,emit:E}){const p=e,v=y(e,"currentPage"),h=y(e,"pageSize"),S=E,c=$(),w=A(),u=z(),d=z(),C=m(()=>c.columns??[]),M=m(()=>{const{onCurrentChange:t,onSizeChange:n,class:a,style:o,columns:r,...l}=c,g={...l,stripe:l.stripe===void 0?!0:l.stripe};return p.columnSetting&&d.value?{...g,columns:d.value}:r!==void 0?{...g,columns:r}:g}),R=t=>S("current-change",t),b=t=>S("size-change",t),G=m(()=>c.onSizeChange?{"size-change":b}:{}),N=t=>{d.value=t},T=new Proxy({},{get:(t,n)=>{const a=u.value;if(a==null)return;const o=a[n];return typeof o=="function"?o.bind(a):o},has:(t,n)=>u.value!=null&&n in u.value});return B(T),(t,n)=>{const a=K("vxe-grid");return i(),_(L,null,[s(` 网格必须包在独立撑满容器里:vxe-grid 按父容器高度计算表格高度时只会扣除父容器
1
+ import{defineComponent as V,useModel as y,useAttrs as $,useSlots as A,ref as z,computed as m,resolveComponent as K,openBlock as i,createElementBlock as _,Fragment as L,createCommentVNode as s,createElementVNode as k,createVNode as U,mergeProps as x,createSlots as F,renderList as H,unref as I,withCtx as j,renderSlot as q,normalizeProps as D,guardReactiveProps as J,normalizeClass as O,createBlock as f,toHandlers as Q,mergeModels as P}from"vue";import W from"./ElGridColumnSetting.vue.js";import{_ as X}from"../../../chunks/ElTotalTools.vue_vue_type_script_setup_true_lang-BqRnIFkw.js";import{_ as Y}from"../../../chunks/ElPagePagination.vue_vue_type_style_index_0_lang-CGjSyYgn.js";import{_ as Z}from"../../../chunks/_plugin-vue_export-helper-DlAUqK2U.js";import"../../../chunks/DragHandleIcon.vue_vue_type_script_setup_true_lang-DnMWn5jY.js";import"../../utils/columnSettingStorage.js";import"../../utils/userSessionStorage.js";import"crypto-js/enc-base64";import"crypto-js/enc-utf8";import"../../utils/FrameworkUtils.js";import"element-plus";import"xlsx-js-style";import"@vueuse/core";const ee={class:"el-grid__body"},te={class:"el-grid__footer-right"},ne=V({__name:"ElGrid",props:P({data:{default:()=>[]},total:{default:0},pagination:{type:Boolean,default:!1},totalTools:{type:Boolean,default:!1},columnSetting:{type:Boolean,default:!1},columnSettingKey:{default:void 0}},{currentPage:{default:1},currentPageModifiers:{},pageSize:{default:10},pageSizeModifiers:{}}),emits:P(["current-change","size-change"],["update:currentPage","update:pageSize"]),setup(e,{expose:B,emit:E}){const p=e,v=y(e,"currentPage"),h=y(e,"pageSize"),S=E,c=$(),w=A(),u=z(),d=z(),C=m(()=>c.columns??[]),M=m(()=>{const{onCurrentChange:t,onSizeChange:n,class:a,style:o,columns:r,...l}=c,g={...l,stripe:l.stripe===void 0?!0:l.stripe};return p.columnSetting&&d.value?{...g,columns:d.value}:r!==void 0?{...g,columns:r}:g}),R=t=>S("current-change",t),b=t=>S("size-change",t),G=m(()=>c.onSizeChange?{"size-change":b}:{}),N=t=>{d.value=t},T=new Proxy({},{get:(t,n)=>{const a=u.value;if(a==null)return;const o=a[n];return typeof o=="function"?o.bind(a):o},has:(t,n)=>u.value!=null&&n in u.value});return B(T),(t,n)=>{const a=K("vxe-grid");return i(),_(L,null,[s(` 网格必须包在独立撑满容器里:vxe-grid 按父容器高度计算表格高度时只会扣除父容器
2
2
  padding,不会扣除同级的标题/页脚;若不隔离,表格会被算高(多出标题+分页高度),
3
3
  底部行被 overflow:hidden 裁掉且无法滚动。分页页脚放在容器外,不参与网格高度计算。 `),k("div",ee,[U(a,x({ref_key:"gridRef",ref:u},M.value,{data:p.data,style:{width:"100%",flex:"1","min-height":"0"}}),F({_:2},[H(I(w),(o,r)=>({name:r,fn:j(l=>[q(t.$slots,r,D(J(l)),void 0,!0)])}))]),1040,["data"])]),e.pagination||e.totalTools?(i(),_("div",{key:0,class:O(["el-grid__footer",{"is-column-setting":e.columnSetting}])},[e.columnSetting&&C.value.length?(i(),f(W,{key:0,class:"el-grid__column-setting",columns:C.value,"storage-key":e.columnSettingKey,onChange:N},null,8,["columns","storage-key"])):s("v-if",!0),k("div",te,[e.totalTools?(i(),f(X,{key:0,"model-value":e.total},null,8,["model-value"])):s("v-if",!0),e.pagination?(i(),f(Y,x({key:1,"current-page":v.value,"onUpdate:currentPage":n[0]||(n[0]=o=>v.value=o),"page-size":h.value,"onUpdate:pageSize":n[1]||(n[1]=o=>h.value=o),total:e.total,onCurrentChange:R},Q(G.value)),null,16,["current-page","page-size","total"])):s("v-if",!0)])],2)):s("v-if",!0)],64)}}}),he=Z(ne,[["__scopeId","data-v-b060a24a"]]);export{he as default};
@@ -1 +1 @@
1
- import{defineComponent as X,ref as f,watch as L,computed as N,resolveComponent as K,openBlock as p,createBlock as Y,withCtx as x,createElementBlock as _,Fragment as Z,renderList as ee,normalizeStyle as le,normalizeClass as z,createElementVNode as G,createVNode as S,toDisplayString as ne}from"vue";import{_ as te}from"../../../chunks/DragHandleIcon.vue_vue_type_script_setup_true_lang-Cu9FA2nn.js";import{loadColumnSetting as se,saveColumnSetting as re}from"../../utils/columnSettingStorage.js";import{_ as ie}from"../../../chunks/_plugin-vue_export-helper-DlAUqK2U.js";import"../../utils/userSessionStorage.js";import"crypto-js/enc-base64";import"crypto-js/enc-utf8";const ae={key:0,class:"el-grid-column-setting__list"},ce=["onDragover","onDrop","onDragleave"],oe=["onDragstart"],de={class:"el-grid-column-setting__title"},ue={key:1,class:"el-grid-column-setting__empty"},ve=X({__name:"ElGridColumnSetting",props:{columns:{},storageKey:{}},emits:["change"],setup(M,{emit:A}){const g=M,F=A,c=f([]),b=f([]),u=f(),h=f(),v=f(),P=(l,e,n,t)=>{const i=l.field||l.type||l.title||`column-${n}`,s=e?`${e}__${i}`:i;let r=s,o=2;for(;t.has(r);)r=`${s}_${o}`,o++;return t.add(r),r},E=(l,e=null,n=0)=>{const t=new Set;return l.map((i,s)=>{const r=P(i,e,s,t);return{key:r,parentKey:e,level:n,column:i,title:i.title||i.type||"列",visible:i.visible!==!1,children:i.children?.length?E(i.children,r,n+1):[]}})},w=(l,e)=>{for(const n of l){if(n.key===e)return n;const t=n.children?.length?w(n.children,e):null;if(t)return t}return null},y=l=>l.map(e=>({key:e.key,visible:e.visible,children:e.children?.length?y(e.children):void 0})),$=l=>{if(l.children?.length){const e=l.children.map($);return{...l.column,children:e,visible:l.visible===!1?!1:e.some(n=>n.visible!==!1)}}return{...l.column,visible:l.visible}},k=()=>{F("change",c.value.map($))},B=l=>l.flatMap(e=>e.children?.length?B(e.children):e.visible),C=l=>{l.forEach(e=>{e.children?.length&&(C(e.children),e.visible!==!1&&(e.visible=e.children.some(n=>n.visible)))})},D=(l,e)=>{l.forEach(n=>{n.visible=e,n.children?.length&&D(n.children,e)})},j=(l,e)=>{if(!e?.columns?.length)return;const n=(t,i)=>{const s=new Map(i.map(a=>[a.key,a])),r=i.map(a=>t.find(d=>d.key===a.key)).filter(Boolean),o=t.filter(a=>!r.includes(a));t.splice(0,t.length,...r,...o),t.forEach(a=>{const d=s.get(a.key);d?.visible!==void 0&&(a.visible=d.visible,a.visible===!1&&a.children?.length&&D(a.children,!1)),a.children?.length&&n(a.children,d?.children||[])})};n(l,e.columns)},I=()=>{re(g.storageKey,{version:1,columns:y(c.value)})},O=(l=[])=>{const e=E(l);c.value=e,b.value=y(e),j(c.value,se(g.storageKey)),C(c.value),k()};L(()=>g.columns,l=>O(l),{immediate:!0,deep:!0}),L(()=>g.storageKey,()=>O(g.columns));const T=N(()=>{const l=[],e=n=>{n.forEach(t=>{l.push({key:t.key,parentKey:t.parentKey,level:t.level,option:t}),t.children?.length&&e(t.children)})};return e(c.value),l}),V=(l,e)=>{if(l.key!==e.key||l.visible!==e.visible)return!1;const n=l.children||[],t=e.children||[];return n.length===t.length&&n.every((i,s)=>V(i,t[s]))},q=N(()=>{const l=y(c.value);return l.length!==b.value.length||l.some((e,n)=>!V(e,b.value[n]))}),H=l=>{if(!l.children?.length)return!1;const e=B(l.children);return e.some(Boolean)&&!e.every(Boolean)},J=(l,e)=>{const n=!!e;l.visible=n,l.children?.length&&D(l.children,n),C(c.value),k(),I()},Q=(l,e)=>{if(!e.target.closest(".el-grid-column-setting__drag")){e.preventDefault();return}u.value=l.key,h.value=l.parentKey,v.value=void 0,e.dataTransfer&&(e.dataTransfer.effectAllowed="move",e.dataTransfer.setData("text/plain",l.key))},R=(l,e)=>{u.value===void 0||l.parentKey!==h.value||u.value!==l.key&&(e.preventDefault(),e.dataTransfer&&(e.dataTransfer.dropEffect="move"),v.value=l.key)},U=l=>{const e=u.value;if(e===void 0||l.parentKey!==h.value||e===l.key){m();return}const n=h.value,t=n?w(c.value,n):null,i=t?.children||c.value,s=i.findIndex(d=>d.key===e),r=i.findIndex(d=>d.key===l.key);if(s<0||r<0||s===r){m();return}const o=i.slice(),[a]=o.splice(s,1);o.splice(r,0,a),t?t.children=o:c.value=o,m(),k(),I()},W=l=>{v.value===l.key&&(v.value=void 0)},m=()=>{u.value=void 0,h.value=void 0,v.value=void 0};return(l,e)=>{const n=K("el-button"),t=K("el-checkbox"),i=K("el-popover");return p(),Y(i,{trigger:"click",width:280,placement:"top-start","popper-class":"el-grid-column-setting-popper"},{reference:x(()=>[S(n,{circle:"",icon:"Setting",class:z(["el-grid-column-setting__trigger",{"is-modified":q.value}]),"aria-label":"列设置"},null,8,["class"])]),default:x(()=>[T.value.length?(p(),_("ul",ae,[(p(!0),_(Z,null,ee(T.value,s=>(p(),_("li",{key:s.key,class:z(["el-grid-column-setting__item",{"is--group":s.option.children.length>0,"is--dragging":s.key===u.value,"is--drag-over":s.key===v.value}]),style:le({paddingLeft:`${8+s.level*16}px`}),onDragover:r=>R(s,r),onDrop:r=>U(s),onDragleave:r=>W(s)},[G("span",{class:"el-grid-column-setting__drag",draggable:"true",onDragstart:r=>Q(s,r),onDragend:m},[S(te)],40,oe),S(t,{"model-value":s.option.visible,indeterminate:H(s.option),onChange:r=>J(s.option,r)},{default:x(()=>[G("span",de,ne(s.option.title),1)]),_:2},1032,["model-value","indeterminate","onChange"])],46,ce))),128))])):(p(),_("div",ue,"暂无列"))]),_:1})}}}),be=ie(ve,[["__scopeId","data-v-08be49fd"]]);export{be as default};
1
+ import{defineComponent as X,ref as f,watch as L,computed as N,resolveComponent as K,openBlock as p,createBlock as Y,withCtx as x,createElementBlock as _,Fragment as Z,renderList as ee,normalizeStyle as le,normalizeClass as z,createElementVNode as G,createVNode as S,toDisplayString as ne}from"vue";import{_ as te}from"../../../chunks/DragHandleIcon.vue_vue_type_script_setup_true_lang-DnMWn5jY.js";import{loadColumnSetting as se,saveColumnSetting as re}from"../../utils/columnSettingStorage.js";import{_ as ie}from"../../../chunks/_plugin-vue_export-helper-DlAUqK2U.js";import"../../utils/userSessionStorage.js";import"crypto-js/enc-base64";import"crypto-js/enc-utf8";const ae={key:0,class:"el-grid-column-setting__list"},ce=["onDragover","onDrop","onDragleave"],oe=["onDragstart"],de={class:"el-grid-column-setting__title"},ue={key:1,class:"el-grid-column-setting__empty"},ve=X({__name:"ElGridColumnSetting",props:{columns:{},storageKey:{}},emits:["change"],setup(M,{emit:A}){const g=M,F=A,c=f([]),b=f([]),u=f(),h=f(),v=f(),P=(l,e,n,t)=>{const i=l.field||l.type||l.title||`column-${n}`,s=e?`${e}__${i}`:i;let r=s,o=2;for(;t.has(r);)r=`${s}_${o}`,o++;return t.add(r),r},E=(l,e=null,n=0)=>{const t=new Set;return l.map((i,s)=>{const r=P(i,e,s,t);return{key:r,parentKey:e,level:n,column:i,title:i.title||i.type||"列",visible:i.visible!==!1,children:i.children?.length?E(i.children,r,n+1):[]}})},w=(l,e)=>{for(const n of l){if(n.key===e)return n;const t=n.children?.length?w(n.children,e):null;if(t)return t}return null},y=l=>l.map(e=>({key:e.key,visible:e.visible,children:e.children?.length?y(e.children):void 0})),$=l=>{if(l.children?.length){const e=l.children.map($);return{...l.column,children:e,visible:l.visible===!1?!1:e.some(n=>n.visible!==!1)}}return{...l.column,visible:l.visible}},k=()=>{F("change",c.value.map($))},B=l=>l.flatMap(e=>e.children?.length?B(e.children):e.visible),C=l=>{l.forEach(e=>{e.children?.length&&(C(e.children),e.visible!==!1&&(e.visible=e.children.some(n=>n.visible)))})},D=(l,e)=>{l.forEach(n=>{n.visible=e,n.children?.length&&D(n.children,e)})},j=(l,e)=>{if(!e?.columns?.length)return;const n=(t,i)=>{const s=new Map(i.map(a=>[a.key,a])),r=i.map(a=>t.find(d=>d.key===a.key)).filter(Boolean),o=t.filter(a=>!r.includes(a));t.splice(0,t.length,...r,...o),t.forEach(a=>{const d=s.get(a.key);d?.visible!==void 0&&(a.visible=d.visible,a.visible===!1&&a.children?.length&&D(a.children,!1)),a.children?.length&&n(a.children,d?.children||[])})};n(l,e.columns)},I=()=>{re(g.storageKey,{version:1,columns:y(c.value)})},O=(l=[])=>{const e=E(l);c.value=e,b.value=y(e),j(c.value,se(g.storageKey)),C(c.value),k()};L(()=>g.columns,l=>O(l),{immediate:!0,deep:!0}),L(()=>g.storageKey,()=>O(g.columns));const T=N(()=>{const l=[],e=n=>{n.forEach(t=>{l.push({key:t.key,parentKey:t.parentKey,level:t.level,option:t}),t.children?.length&&e(t.children)})};return e(c.value),l}),V=(l,e)=>{if(l.key!==e.key||l.visible!==e.visible)return!1;const n=l.children||[],t=e.children||[];return n.length===t.length&&n.every((i,s)=>V(i,t[s]))},q=N(()=>{const l=y(c.value);return l.length!==b.value.length||l.some((e,n)=>!V(e,b.value[n]))}),H=l=>{if(!l.children?.length)return!1;const e=B(l.children);return e.some(Boolean)&&!e.every(Boolean)},J=(l,e)=>{const n=!!e;l.visible=n,l.children?.length&&D(l.children,n),C(c.value),k(),I()},Q=(l,e)=>{if(!e.target.closest(".el-grid-column-setting__drag")){e.preventDefault();return}u.value=l.key,h.value=l.parentKey,v.value=void 0,e.dataTransfer&&(e.dataTransfer.effectAllowed="move",e.dataTransfer.setData("text/plain",l.key))},R=(l,e)=>{u.value===void 0||l.parentKey!==h.value||u.value!==l.key&&(e.preventDefault(),e.dataTransfer&&(e.dataTransfer.dropEffect="move"),v.value=l.key)},U=l=>{const e=u.value;if(e===void 0||l.parentKey!==h.value||e===l.key){m();return}const n=h.value,t=n?w(c.value,n):null,i=t?.children||c.value,s=i.findIndex(d=>d.key===e),r=i.findIndex(d=>d.key===l.key);if(s<0||r<0||s===r){m();return}const o=i.slice(),[a]=o.splice(s,1);o.splice(r,0,a),t?t.children=o:c.value=o,m(),k(),I()},W=l=>{v.value===l.key&&(v.value=void 0)},m=()=>{u.value=void 0,h.value=void 0,v.value=void 0};return(l,e)=>{const n=K("el-button"),t=K("el-checkbox"),i=K("el-popover");return p(),Y(i,{trigger:"click",width:280,placement:"top-start","popper-class":"el-grid-column-setting-popper"},{reference:x(()=>[S(n,{circle:"",icon:"Setting",class:z(["el-grid-column-setting__trigger",{"is-modified":q.value}]),"aria-label":"列设置"},null,8,["class"])]),default:x(()=>[T.value.length?(p(),_("ul",ae,[(p(!0),_(Z,null,ee(T.value,s=>(p(),_("li",{key:s.key,class:z(["el-grid-column-setting__item",{"is--group":s.option.children.length>0,"is--dragging":s.key===u.value,"is--drag-over":s.key===v.value}]),style:le({paddingLeft:`${8+s.level*16}px`}),onDragover:r=>R(s,r),onDrop:r=>U(s),onDragleave:r=>W(s)},[G("span",{class:"el-grid-column-setting__drag",draggable:"true",onDragstart:r=>Q(s,r),onDragend:m},[S(te)],40,oe),S(t,{"model-value":s.option.visible,indeterminate:H(s.option),onChange:r=>J(s.option,r)},{default:x(()=>[G("span",de,ne(s.option.title),1)]),_:2},1032,["model-value","indeterminate","onChange"])],46,ce))),128))])):(p(),_("div",ue,"暂无列"))]),_:1})}}}),be=ie(ve,[["__scopeId","data-v-08be49fd"]]);export{be as default};
@@ -0,0 +1,38 @@
1
+ type NumericValue = number | string | null | undefined;
2
+ type __VLS_Props = {
3
+ modelValue?: NumericValue;
4
+ min?: number;
5
+ max?: number;
6
+ precision?: number;
7
+ step?: number;
8
+ stepStrictly?: boolean;
9
+ valueOnClear?: 'min' | 'max' | number | null;
10
+ clearable?: boolean;
11
+ disabled?: boolean;
12
+ readonly?: boolean;
13
+ };
14
+ declare const _default: import("vue").DefineComponent<__VLS_Props, {}, {}, {}, {}, import("vue").ComponentOptionsMixin, import("vue").ComponentOptionsMixin, {} & {
15
+ blur: (payload: FocusEvent) => any;
16
+ change: (value: number | undefined, oldValue?: number | undefined) => any;
17
+ focus: (payload: FocusEvent) => any;
18
+ input: (value: number | undefined) => any;
19
+ "update:modelValue": (value: number | undefined) => any;
20
+ }, string, import("vue").PublicProps, Readonly<__VLS_Props> & Readonly<{
21
+ onBlur?: ((payload: FocusEvent) => any) | undefined;
22
+ onChange?: ((value: number | undefined, oldValue?: number | undefined) => any) | undefined;
23
+ onFocus?: ((payload: FocusEvent) => any) | undefined;
24
+ onInput?: ((value: number | undefined) => any) | undefined;
25
+ "onUpdate:modelValue"?: ((value: number | undefined) => any) | undefined;
26
+ }>, {
27
+ disabled: boolean;
28
+ modelValue: string | number | null;
29
+ readonly: boolean;
30
+ clearable: boolean;
31
+ valueOnClear: "min" | "max" | number | null;
32
+ min: number;
33
+ max: number;
34
+ precision: number;
35
+ step: number;
36
+ stepStrictly: boolean;
37
+ }, {}, {}, {}, string, import("vue").ComponentProvideOptions, false, {}, any>;
38
+ export default _default;
@@ -0,0 +1 @@
1
+ import{_ as m}from"../../../chunks/ElNumericInput.vue_vue_type_script_setup_true_lang-C6KlCE6f.js";import"vue";export{m as default};
@@ -1 +1 @@
1
- import{_ as o}from"../../../chunks/operationAuth.vue_vue_type_script_lang-Bpq3nXip.js";import"vue";import"vue-router";import"../../stores/userInfoStore.js";import"pinia";import"../../utils/userSessionStorage.js";import"crypto-js/enc-base64";import"crypto-js/enc-utf8";import"../../stores/permissionStore.js";import"../../utils/frontendBus.js";import"../../hooks/useBehaviorAction.js";import"../../utils/behaviorTrack.js";import"axios";import"uuid";import"../../utils/behaviorContext.js";import"../../utils/encrypt.js";import"jsencrypt";import"../../utils/dateTime.js";export{o as default};
1
+ import{_ as o}from"../../../chunks/operationAuth.vue_vue_type_script_lang-Bpq3nXip.js";import"vue";import"vue-router";import"../../stores/userInfoStore.js";import"pinia";import"../../utils/userSessionStorage.js";import"crypto-js/enc-base64";import"crypto-js/enc-utf8";import"../../stores/permissionStore.js";import"../../utils/frontendBus.js";import"../../hooks/useBehaviorAction.js";import"../../utils/behaviorTrack.js";import"axios";import"../../utils/uuid.js";import"uuid";import"../../utils/behaviorContext.js";import"../../utils/encrypt.js";import"jsencrypt";import"../../utils/dateTime.js";export{o as default};
@@ -1 +1 @@
1
- import{_ as V}from"../../../chunks/preload-helper-BlTxHScW.js";import{defineComponent as Se,useModel as le,ref as m,getCurrentInstance as Me,shallowRef as se,computed as ue,watch as k,onMounted as Ue,onBeforeUnmount as He,onUnmounted as Pe,resolveDirective as Fe,openBlock as N,createElementBlock as de,normalizeClass as Be,createBlock as Le,resolveDynamicComponent as De,mergeProps as ze,createCommentVNode as q,withDirectives as Ae,mergeModels as ce,nextTick as v}from"vue";import{ElMessage as Ve}from"element-plus";import{v4 as Ne}from"uuid";import{purgeUmoDocumentLocalStorage as qe,initHtml as $,finalizeHtml as $e}from"./richTextHtmlUtils.js";import"./installUmoEditorApp.js";import{refreshRichTextImageUrls as fe,extractFileIdFromImageUrl as We,uploadRichTextImage as Ke}from"./richTextImageUpload.js";import je from"../../api/DocumentApi.js";import{_ as Ge}from"../../../chunks/_plugin-vue_export-helper-DlAUqK2U.js";import"tdesign-vue-next";import"../../utils/buildUploadHeaders.js";import"../../utils/encrypt.js";import"jsencrypt";import"../../utils/request.js";import"../../utils/AxiosConfig.js";import"axios";import"../../utils/behaviorTrack.js";import"crypto-js/enc-base64";import"crypto-js/enc-utf8";import"../../utils/behaviorContext.js";import"../../utils/dateTime.js";import"../../utils/frontendBus.js";import"../../utils/globalLoading.js";import"../../utils/workflowTaskContext.js";const Je={key:1,class:"umo-rich-text-editor-loading","element-loading-text":"编辑器加载中..."},Xe=Se({__name:"RichTextEditor",props:ce({showToolbar:{type:Boolean,default:!0},borderWidth:{default:"1px"},editorConfig:{default:()=>({})},isEdit:{type:Boolean,default:!0}},{modelValue:{required:!1,default:null},modelModifiers:{},text:{required:!1},textModifiers:{}}),emits:ce(["onBlur","onChange"],["update:modelValue","update:text"]),setup(S,{expose:me,emit:ve}){const pe=["locale","theme","mermaid","diagrams","qrcode","barcode","signature","math","echarts","print","link","video","audio","file","text-box","details","code-block","symbol","chinese-date","emoji","tag","columns","callout","mention","option-box","hard-break","hr","bookmark","footnote","toc","template","web-page"],he=["base","insert","table","page","view"],W=ve,r=S,l=le(S,"modelValue"),K=le(S,"text"),M=m(null),a=m(null),ye=Me()?.appContext?.app,d=se(null);let E=null;const j=`umo-${Ne()}`,p=m(j),U=m(null),o=m(!1),be=ue(()=>!d.value||!n.value||!o.value),H=m(!1),n=se(null);let P=!1,x=0,h=null,G=null,y=null,b=null,g=0,F=!1,c=!1,w="",_=!1;qe();const s=ue(()=>r.isEdit&&r.editorConfig?.editable!==!1);function J(){const e=a.value;if(!e||typeof document>"u")return!1;let t=e;for(;t&&t!==document.documentElement;){if(getComputedStyle(t).display==="none")return!1;t=t.parentElement}return!0}function ge(){if(!J()){_=!0;return}const e=_;if(_=!1,!d.value){te();return}if(!n.value){B();return}if(e&&!o.value){_e();return}e&&(C(),s.value&&O())}function we(){const e=a.value;e&&typeof ResizeObserver<"u"&&!h&&(h=new ResizeObserver(()=>{ge()}),h.observe(e))}function X(){h?.disconnect(),h=null,G?.disconnect(),G=null}function Z(){const e=a.value;if(!e)return;const t=e.querySelector(":scope > .umo-rich-text-editor");t?(F=!0,c&&(e.style.flex=w,e.style.height="",c=!1,w=""),g=Math.max(Number(t.offsetHeight)||0,0)):F&&g>0&&!c&&(w=e.style.flex||getComputedStyle(e).flex||"",e.style.flex=`0 0 ${g}px`,e.style.height=`${g}px`,c=!0)}function Ee(){const e=a.value;e&&(typeof MutationObserver<"u"&&!y&&(y=new MutationObserver(()=>Z()),y.observe(e,{childList:!0})),typeof ResizeObserver<"u"&&!b&&(b=new ResizeObserver(()=>Z()),b.observe(e)))}function Q(){y?.disconnect(),y=null,b?.disconnect(),b=null;const e=a.value;e&&c&&(e.style.flex=w,e.style.height=""),c=!1,w="",g=0,F=!1}function Y(){if(typeof localStorage>"u")return;const e=r.showToolbar&&s.value;try{localStorage.setItem(`umo-editor:${p.value}:layout`,"web"),localStorage.setItem(`umo-editor:${p.value}:toolbar`,JSON.stringify({mode:"classic",show:e}))}catch{}}function ee(){return d.value?Promise.resolve(!0):(E||(E=Promise.all([V(()=>import("../../../prebuilt/umo-editor/umo-editor.js"),[]),V(()=>import("../../../prebuilt/umo-editor/umo-editor.css"),[]),V(()=>import("./installUmoEditorApp.js"),[])]).then(([e,t,i])=>(i.installUmoEditorApp(ye),d.value=e.UmoEditor,!0)).catch(()=>(E=null,Ve.error("编辑器加载失败,请重试"),!1))),E)}async function te(){if(!J()){_=!0;return}await ee()&&(n.value||await B())}function xe(e){const t=typeof r.editorConfig?.placeholder=="string"&&r.editorConfig.placeholder.trim()?r.editorConfig.placeholder.trim():"请输入内容...",i=s.value,A=r.editorConfig?.autofocus??!1,ke=r.editorConfig?.businessId;return{editorKey:p.value,locale:"zh-CN",theme:"light",height:"100%",fullscreenZIndex:2500,toolbar:{showSaveLabel:!1,defaultMode:"classic",menus:r.showToolbar&&i?[...he]:["base"]},page:{layouts:["page","web"]},document:{title:"",content:e,placeholder:{zh_CN:t},readOnly:!i,autofocus:A,enableMarkdown:!1,enableSpellcheck:!1,autoSave:{enabled:!1}},shareUrl:typeof location<"u"?location.href:"",disableExtensions:[...pe],extensions:[],async onFileUpload(ne){const I=await Ke(ne,ke);return{id:I.id,url:I.url}},onFileDelete(ne,I,Ze){const ae=We(I);ae&&je.delSysUploadFiles([ae]).catch(()=>{})}}}async function B(e){Y();const t=e??l.value??"",i=await fe(t);n.value=xe($(i)),U.value=s.value}async function L(){if(!(P||!n.value)){P=!0;try{const e=o.value?f():l.value??"";if(o.value=!1,M.value=null,n.value=null,p.value=`${j}-${Date.now()}`,await v(),!await ee())return;await B(e)}finally{P=!1}}}async function _e(){!o.value||!n.value||(await C(),s.value&&await O())}function u(){return M.value}function oe(e){const t=u()?.getEditor?.()?.value;return t?.commands?.setContent?t.commands.setContent($(e),{emitUpdate:!1,parseOptions:{preserveWhitespace:"full"}}):!1}function Ce(e){const t=u()?.getEditor?.()?.value;t&&typeof t.setEditable=="function"&&t.setEditable(e)}async function D(){const e=u();if(!e)return!1;const t=s.value;e.setDocument?.({readOnly:!t}),e.setReadOnly?.(!t),Ce(t),e.setToolbar?.({mode:"classic",show:r.showToolbar&&t});const i=e.getEditor?.()?.value;return i?(t&&!i.isEditable&&i.setEditable(!0),t?i.isEditable:!i.isEditable):!1}async function C(e=6){for(let t=0;t<e;t+=1){if(await D())return!0;await v(),await T()}return!1}function T(){return new Promise(e=>{requestAnimationFrame(()=>requestAnimationFrame(()=>e()))})}function ie(e){const t=e?.querySelector(".ProseMirror");return t?t.querySelector(':scope > img, :scope > figure[data-type="image"]:not(.umo-node-view)')!==null:!1}async function O(){if(n.value){if(await v(),await T(),await v(),await T(),!ie(a.value)){x=0;return}if(!(x>=3)){if(x+=1,o.value){const e=f()||(l.value??"");if(!oe(e))return;if(await v(),await T(),!ie(a.value)){x=0;return}}o.value&&R(),await L(),await v(),await C()}}}function Te(){const e=u();e&&(e.setLayout?.("web"),D())}function f(){return u()?.getHTML?.()??""}function z(){return u()?.getText?.()??""}async function re(e,t=!1){if(!o.value)return;const i=await fe(e);if(!o.value||(l.value??"")!==e)return;const A=u();oe(i)&&(t&&A?.focus?.("end",{scrollIntoView:!0}),O())}function R(){if(!o.value)return;const e=f(),t=z();e!==l.value&&(l.value=e),K.value=t,W("onChange",{html:e,text:t})}function Oe(){o.value=!0,U.value=s.value,C(),O(),Te()}function Re(){R()}function Ie(){o.value&&W("onBlur",{html:f(),text:z()})}return k(()=>l.value,e=>{if(!o.value||H.value)return;const t=$(e??""),i=f();t===i||(e??"")===i||re(e??"",!1)}),k(s,async(e,t)=>{t!==void 0&&U.value!==e&&n.value&&(o.value&&R(),await L())}),k(()=>r.isEdit,async(e,t)=>{t!==void 0&&e!==t&&n.value&&(o.value&&R(),await L())}),k(()=>r.showToolbar,()=>{Y(),D()}),Ue(()=>{we(),Ee(),te()}),He(()=>{X(),Q()}),Pe(()=>{o.value=!1,a.value=null,X(),Q()}),me({getHtml:e=>{if(!o.value)return l.value??"";const t=f();return e?.finalize?$e(t,a.value):t},getText:()=>o.value?z():K.value??"",setContent:(e,t=!1)=>{H.value=!0,l.value=e,H.value=!1,o.value&&re(e,t)},isReady:()=>o.value}),(e,t)=>{const i=Fe("loading");return N(),de("div",{ref_key:"rootRef",ref:a,class:Be(["umo-rich-text-editor-root",{"umo-rich-text-editor-root--readonly":!s.value}])},[d.value&&n.value?(N(),Le(De(d.value),ze({key:p.value,ref_key:"editorRef",ref:M,class:"umo-rich-text-editor"},n.value,{onCreated:Oe,onChanged:Re,onBlur:Ie}),null,16)):q("v-if",!0),q(" 受控 loading 覆盖全程:运行时 import → UmoEditor 挂载 → TipTap created,杜绝 UMO 内置 loading 闪现/泄漏 "),be.value?Ae((N(),de("div",Je,null,512)),[[i,!0]]):q("v-if",!0)],2)}}}),xt=Ge(Xe,[["__scopeId","data-v-d01de1e9"]]);export{xt as default};
1
+ import{_ as V}from"../../../chunks/preload-helper-BlTxHScW.js";import{defineComponent as Se,useModel as le,ref as m,getCurrentInstance as Me,shallowRef as se,computed as ue,watch as k,onMounted as Ue,onBeforeUnmount as He,onUnmounted as Pe,resolveDirective as Fe,openBlock as N,createElementBlock as de,normalizeClass as Be,createBlock as Le,resolveDynamicComponent as De,mergeProps as ze,createCommentVNode as q,withDirectives as Ae,mergeModels as ce,nextTick as v}from"vue";import{ElMessage as Ve}from"element-plus";import{createUuid as Ne}from"../../utils/uuid.js";import{purgeUmoDocumentLocalStorage as qe,initHtml as $,finalizeHtml as $e}from"./richTextHtmlUtils.js";import"./installUmoEditorApp.js";import{refreshRichTextImageUrls as fe,extractFileIdFromImageUrl as We,uploadRichTextImage as Ke}from"./richTextImageUpload.js";import je from"../../api/DocumentApi.js";import{_ as Ge}from"../../../chunks/_plugin-vue_export-helper-DlAUqK2U.js";import"uuid";import"tdesign-vue-next";import"../../utils/buildUploadHeaders.js";import"../../utils/encrypt.js";import"jsencrypt";import"../../utils/request.js";import"../../utils/AxiosConfig.js";import"axios";import"../../utils/behaviorTrack.js";import"crypto-js/enc-base64";import"crypto-js/enc-utf8";import"../../utils/behaviorContext.js";import"../../utils/dateTime.js";import"../../utils/frontendBus.js";import"../../utils/globalLoading.js";import"../../utils/workflowTaskContext.js";import"../../config/GlobalLoadingConfig.js";const Je={key:1,class:"umo-rich-text-editor-loading","element-loading-text":"编辑器加载中..."},Xe=Se({__name:"RichTextEditor",props:ce({showToolbar:{type:Boolean,default:!0},borderWidth:{default:"1px"},editorConfig:{default:()=>({})},isEdit:{type:Boolean,default:!0}},{modelValue:{required:!1,default:null},modelModifiers:{},text:{required:!1},textModifiers:{}}),emits:ce(["onBlur","onChange"],["update:modelValue","update:text"]),setup(S,{expose:me,emit:ve}){const pe=["locale","theme","mermaid","diagrams","qrcode","barcode","signature","math","echarts","print","link","video","audio","file","text-box","details","code-block","symbol","chinese-date","emoji","tag","columns","callout","mention","option-box","hard-break","hr","bookmark","footnote","toc","template","web-page"],he=["base","insert","table","page","view"],W=ve,r=S,l=le(S,"modelValue"),K=le(S,"text"),M=m(null),a=m(null),be=Me()?.appContext?.app,d=se(null);let E=null;const j=`umo-${Ne()}`,p=m(j),U=m(null),o=m(!1),ye=ue(()=>!d.value||!n.value||!o.value),H=m(!1),n=se(null);let P=!1,x=0,h=null,G=null,b=null,y=null,g=0,F=!1,c=!1,w="",_=!1;qe();const s=ue(()=>r.isEdit&&r.editorConfig?.editable!==!1);function J(){const e=a.value;if(!e||typeof document>"u")return!1;let t=e;for(;t&&t!==document.documentElement;){if(getComputedStyle(t).display==="none")return!1;t=t.parentElement}return!0}function ge(){if(!J()){_=!0;return}const e=_;if(_=!1,!d.value){te();return}if(!n.value){B();return}if(e&&!o.value){_e();return}e&&(C(),s.value&&O())}function we(){const e=a.value;e&&typeof ResizeObserver<"u"&&!h&&(h=new ResizeObserver(()=>{ge()}),h.observe(e))}function X(){h?.disconnect(),h=null,G?.disconnect(),G=null}function Z(){const e=a.value;if(!e)return;const t=e.querySelector(":scope > .umo-rich-text-editor");t?(F=!0,c&&(e.style.flex=w,e.style.height="",c=!1,w=""),g=Math.max(Number(t.offsetHeight)||0,0)):F&&g>0&&!c&&(w=e.style.flex||getComputedStyle(e).flex||"",e.style.flex=`0 0 ${g}px`,e.style.height=`${g}px`,c=!0)}function Ee(){const e=a.value;e&&(typeof MutationObserver<"u"&&!b&&(b=new MutationObserver(()=>Z()),b.observe(e,{childList:!0})),typeof ResizeObserver<"u"&&!y&&(y=new ResizeObserver(()=>Z()),y.observe(e)))}function Q(){b?.disconnect(),b=null,y?.disconnect(),y=null;const e=a.value;e&&c&&(e.style.flex=w,e.style.height=""),c=!1,w="",g=0,F=!1}function Y(){if(typeof localStorage>"u")return;const e=r.showToolbar&&s.value;try{localStorage.setItem(`umo-editor:${p.value}:layout`,"web"),localStorage.setItem(`umo-editor:${p.value}:toolbar`,JSON.stringify({mode:"classic",show:e}))}catch{}}function ee(){return d.value?Promise.resolve(!0):(E||(E=Promise.all([V(()=>import("../../../prebuilt/umo-editor/umo-editor.js"),[]),V(()=>import("../../../prebuilt/umo-editor/umo-editor.css"),[]),V(()=>import("./installUmoEditorApp.js"),[])]).then(([e,t,i])=>(i.installUmoEditorApp(be),d.value=e.UmoEditor,!0)).catch(()=>(E=null,Ve.error("编辑器加载失败,请重试"),!1))),E)}async function te(){if(!J()){_=!0;return}await ee()&&(n.value||await B())}function xe(e){const t=typeof r.editorConfig?.placeholder=="string"&&r.editorConfig.placeholder.trim()?r.editorConfig.placeholder.trim():"请输入内容...",i=s.value,A=r.editorConfig?.autofocus??!1,ke=r.editorConfig?.businessId;return{editorKey:p.value,locale:"zh-CN",theme:"light",height:"100%",fullscreenZIndex:2500,toolbar:{showSaveLabel:!1,defaultMode:"classic",menus:r.showToolbar&&i?[...he]:["base"]},page:{layouts:["page","web"]},document:{title:"",content:e,placeholder:{zh_CN:t},readOnly:!i,autofocus:A,enableMarkdown:!1,enableSpellcheck:!1,autoSave:{enabled:!1}},shareUrl:typeof location<"u"?location.href:"",disableExtensions:[...pe],extensions:[],async onFileUpload(ne){const I=await Ke(ne,ke);return{id:I.id,url:I.url}},onFileDelete(ne,I,Ze){const ae=We(I);ae&&je.delSysUploadFiles([ae]).catch(()=>{})}}}async function B(e){Y();const t=e??l.value??"",i=await fe(t);n.value=xe($(i)),U.value=s.value}async function L(){if(!(P||!n.value)){P=!0;try{const e=o.value?f():l.value??"";if(o.value=!1,M.value=null,n.value=null,p.value=`${j}-${Date.now()}`,await v(),!await ee())return;await B(e)}finally{P=!1}}}async function _e(){!o.value||!n.value||(await C(),s.value&&await O())}function u(){return M.value}function oe(e){const t=u()?.getEditor?.()?.value;return t?.commands?.setContent?t.commands.setContent($(e),{emitUpdate:!1,parseOptions:{preserveWhitespace:"full"}}):!1}function Ce(e){const t=u()?.getEditor?.()?.value;t&&typeof t.setEditable=="function"&&t.setEditable(e)}async function D(){const e=u();if(!e)return!1;const t=s.value;e.setDocument?.({readOnly:!t}),e.setReadOnly?.(!t),Ce(t),e.setToolbar?.({mode:"classic",show:r.showToolbar&&t});const i=e.getEditor?.()?.value;return i?(t&&!i.isEditable&&i.setEditable(!0),t?i.isEditable:!i.isEditable):!1}async function C(e=6){for(let t=0;t<e;t+=1){if(await D())return!0;await v(),await T()}return!1}function T(){return new Promise(e=>{requestAnimationFrame(()=>requestAnimationFrame(()=>e()))})}function ie(e){const t=e?.querySelector(".ProseMirror");return t?t.querySelector(':scope > img, :scope > figure[data-type="image"]:not(.umo-node-view)')!==null:!1}async function O(){if(n.value){if(await v(),await T(),await v(),await T(),!ie(a.value)){x=0;return}if(!(x>=3)){if(x+=1,o.value){const e=f()||(l.value??"");if(!oe(e))return;if(await v(),await T(),!ie(a.value)){x=0;return}}o.value&&R(),await L(),await v(),await C()}}}function Te(){const e=u();e&&(e.setLayout?.("web"),D())}function f(){return u()?.getHTML?.()??""}function z(){return u()?.getText?.()??""}async function re(e,t=!1){if(!o.value)return;const i=await fe(e);if(!o.value||(l.value??"")!==e)return;const A=u();oe(i)&&(t&&A?.focus?.("end",{scrollIntoView:!0}),O())}function R(){if(!o.value)return;const e=f(),t=z();e!==l.value&&(l.value=e),K.value=t,W("onChange",{html:e,text:t})}function Oe(){o.value=!0,U.value=s.value,C(),O(),Te()}function Re(){R()}function Ie(){o.value&&W("onBlur",{html:f(),text:z()})}return k(()=>l.value,e=>{if(!o.value||H.value)return;const t=$(e??""),i=f();t===i||(e??"")===i||re(e??"",!1)}),k(s,async(e,t)=>{t!==void 0&&U.value!==e&&n.value&&(o.value&&R(),await L())}),k(()=>r.isEdit,async(e,t)=>{t!==void 0&&e!==t&&n.value&&(o.value&&R(),await L())}),k(()=>r.showToolbar,()=>{Y(),D()}),Ue(()=>{we(),Ee(),te()}),He(()=>{X(),Q()}),Pe(()=>{o.value=!1,a.value=null,X(),Q()}),me({getHtml:e=>{if(!o.value)return l.value??"";const t=f();return e?.finalize?$e(t,a.value):t},getText:()=>o.value?z():K.value??"",setContent:(e,t=!1)=>{H.value=!0,l.value=e,H.value=!1,o.value&&re(e,t)},isReady:()=>o.value}),(e,t)=>{const i=Fe("loading");return N(),de("div",{ref_key:"rootRef",ref:a,class:Be(["umo-rich-text-editor-root",{"umo-rich-text-editor-root--readonly":!s.value}])},[d.value&&n.value?(N(),Le(De(d.value),ze({key:p.value,ref_key:"editorRef",ref:M,class:"umo-rich-text-editor"},n.value,{onCreated:Oe,onChanged:Re,onBlur:Ie}),null,16)):q("v-if",!0),q(" 受控 loading 覆盖全程:运行时 import → UmoEditor 挂载 → TipTap created,杜绝 UMO 内置 loading 闪现/泄漏 "),ye.value?Ae((N(),de("div",Je,null,512)),[[i,!0]]):q("v-if",!0)],2)}}}),Ct=Ge(Xe,[["__scopeId","data-v-d3b7ddeb"]]);export{Ct as default};
@@ -1 +1 @@
1
- import h from"../../api/DocumentApi.js";import{buildUploadHeaders as x}from"../../utils/buildUploadHeaders.js";import"../../utils/request.js";import"../../utils/AxiosConfig.js";import"axios";import"uuid";import"../../utils/encrypt.js";import"jsencrypt";import"../../utils/behaviorTrack.js";import"crypto-js/enc-base64";import"crypto-js/enc-utf8";import"../../utils/behaviorContext.js";import"../../utils/dateTime.js";import"element-plus";import"../../utils/frontendBus.js";import"../../utils/globalLoading.js";import"vue";import"../../utils/workflowTaskContext.js";const w="richtext",D=10*1024*1024;function U(t){const i=typeof t=="string"&&t.trim()?t.trim():"default";return`/api/doc/uploadFile/${w}/${i}/false`}function I(t,i){return`${t}?fileId=${encodeURIComponent(i)}`}function G(t,i="default"){return new Promise((d,s)=>{const m=U(i),o=new XMLHttpRequest;o.open("POST",m);const l=x(m);Object.entries(l).forEach(([e,c])=>o.setRequestHeader(e,String(c))),o.responseType="json",o.onload=()=>{try{const e=o.response;if(o.status>=200&&o.status<300&&e?.code==="0"&&e.data?.id){h.createRichTextImageUrl(e.data.id).then(c=>{c?d({url:I(c,e.data.id),id:e.data.id}):s(new Error("图片访问地址获取失败"))}).catch(s);return}s(new Error(e?.msg||"图片上传失败"))}catch(e){s(e)}},o.onerror=()=>s(new Error("图片上传失败"));const n=new FormData;n.append("file",t),o.send(n)})}function g(t){const i=/[?&]fileId=([^&]+)/.exec(t||"");return i?.[1]?decodeURIComponent(i[1]):null}async function X(t){if(!t)return t;const i=new Set,d=/<(?:img|inline-img)\b[^>]*>/gi;let s;for(;s=d.exec(t);){const r=s[0].match(/\ssrc=(["'])(.*?)\1/i)??s[0].match(/\ssrc=([^\s>]+)/i),a=r?.[2]??r?.[1]??"",p=g(a);p&&i.add(p)}if(i.size===0)return t;const m=new Map;if(await Promise.all([...i].map(async r=>{try{const a=await h.createRichTextImageUrl(r);a&&m.set(r,I(a,r))}catch{}})),m.size===0)return t;const o=[],l=/<(?:img|inline-img)\b[^>]*>/gi;let n;for(;n=l.exec(t);)o.push({start:n.index,end:n.index+n[0].length,tag:n[0]});const e=[];let c=0;for(const r of o){const a=r.tag.match(/\ssrc=(["'])(.*?)\1/i)??r.tag.match(/\ssrc=([^\s>]+)/i),p=a?.[2]??a?.[1]??"",u=g(p),f=u?m.get(u):void 0;e.push(t.slice(c,r.start)),u&&f?e.push(r.tag.replace(/\ssrc=(["'])(.*?)\1/i,` src="${f}"`)):e.push(r.tag),c=r.end}return e.push(t.slice(c)),e.join("")}export{D as MAX_IMAGE_SIZE,w as UMO_IMAGE_BUSINESS,g as extractFileIdFromImageUrl,X as refreshRichTextImageUrls,G as uploadRichTextImage};
1
+ import h from"../../api/DocumentApi.js";import{buildUploadHeaders as x}from"../../utils/buildUploadHeaders.js";import"../../utils/request.js";import"../../utils/AxiosConfig.js";import"axios";import"../../utils/uuid.js";import"uuid";import"../../utils/encrypt.js";import"jsencrypt";import"../../utils/behaviorTrack.js";import"crypto-js/enc-base64";import"crypto-js/enc-utf8";import"../../utils/behaviorContext.js";import"../../utils/dateTime.js";import"element-plus";import"../../utils/frontendBus.js";import"../../utils/globalLoading.js";import"vue";import"../../utils/workflowTaskContext.js";import"../../config/GlobalLoadingConfig.js";const w="richtext",X=10*1024*1024;function U(t){const i=typeof t=="string"&&t.trim()?t.trim():"default";return`/api/doc/uploadFile/${w}/${i}/false`}function I(t,i){return`${t}?fileId=${encodeURIComponent(i)}`}function v(t,i="default"){return new Promise((d,s)=>{const m=U(i),o=new XMLHttpRequest;o.open("POST",m);const l=x(m);Object.entries(l).forEach(([e,c])=>o.setRequestHeader(e,String(c))),o.responseType="json",o.onload=()=>{try{const e=o.response;if(o.status>=200&&o.status<300&&e?.code==="0"&&e.data?.id){h.createRichTextImageUrl(e.data.id).then(c=>{c?d({url:I(c,e.data.id),id:e.data.id}):s(new Error("图片访问地址获取失败"))}).catch(s);return}s(new Error(e?.msg||"图片上传失败"))}catch(e){s(e)}},o.onerror=()=>s(new Error("图片上传失败"));const n=new FormData;n.append("file",t),o.send(n)})}function g(t){const i=/[?&]fileId=([^&]+)/.exec(t||"");return i?.[1]?decodeURIComponent(i[1]):null}async function L(t){if(!t)return t;const i=new Set,d=/<(?:img|inline-img)\b[^>]*>/gi;let s;for(;s=d.exec(t);){const r=s[0].match(/\ssrc=(["'])(.*?)\1/i)??s[0].match(/\ssrc=([^\s>]+)/i),a=r?.[2]??r?.[1]??"",p=g(a);p&&i.add(p)}if(i.size===0)return t;const m=new Map;if(await Promise.all([...i].map(async r=>{try{const a=await h.createRichTextImageUrl(r);a&&m.set(r,I(a,r))}catch{}})),m.size===0)return t;const o=[],l=/<(?:img|inline-img)\b[^>]*>/gi;let n;for(;n=l.exec(t);)o.push({start:n.index,end:n.index+n[0].length,tag:n[0]});const e=[];let c=0;for(const r of o){const a=r.tag.match(/\ssrc=(["'])(.*?)\1/i)??r.tag.match(/\ssrc=([^\s>]+)/i),p=a?.[2]??a?.[1]??"",u=g(p),f=u?m.get(u):void 0;e.push(t.slice(c,r.start)),u&&f?e.push(r.tag.replace(/\ssrc=(["'])(.*?)\1/i,` src="${f}"`)):e.push(r.tag),c=r.end}return e.push(t.slice(c)),e.join("")}export{X as MAX_IMAGE_SIZE,w as UMO_IMAGE_BUSINESS,g as extractFileIdFromImageUrl,L as refreshRichTextImageUrls,v as uploadRichTextImage};
@@ -1 +1 @@
1
- import{defineComponent as J,useModel as K,ref as _,reactive as X,resolveComponent as i,resolveDirective as Y,withDirectives as Z,openBlock as u,createBlock as w,withCtx as a,createVNode as s,unref as D,createTextVNode as p,toDisplayString as g,createElementBlock as x,createElementVNode as ee,Fragment as I,renderList as S,createCommentVNode as te,mergeProps as oe,mergeModels as R,nextTick as le}from"vue";import{ElMessage as ae}from"element-plus";import re from"../../hooks/useDictHooks.js";import ne from"./api/DataIndicatorsApi.js";import h from"../../utils/FrameworkUtils.js";import{checkboxColumn as ie}from"../../config/vxeSelectColumn.js";import{_ as se}from"../../../chunks/_plugin-vue_export-helper-DlAUqK2U.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/behaviorTrack.js";import"crypto-js/enc-base64";import"crypto-js/enc-utf8";import"../../utils/behaviorContext.js";import"../../utils/dateTime.js";import"../../utils/frontendBus.js";import"../../utils/globalLoading.js";import"../../utils/workflowTaskContext.js";import"../../stores/dictStore.js";import"pinia";import"../../stores/userInfoStore.js";import"../../utils/userSessionStorage.js";import"xlsx-js-style";const ce={key:0,class:"selection-preview"},de={class:"selection-preview__content"},ue=J({__name:"SelectInDicators",props:R({confirmCallback:{type:Function}},{loading:{type:Boolean,default:!1},loadingModifiers:{}}),emits:R(["success"],["update:loading"]),setup(C,{expose:E,emit:L}){const m=K(C,"loading"),P=C,T=L,{getDictTypeData:N,getDictName:O}=re(["ComIndexType"]),f=_(),d=_(),o=_([]),n=_({types:[],name:"",isValid:1,isDetails:1,size:h.getPageSize(),current:1}),U=X({border:!0,height:"100%",columnConfig:{resizable:!1},checkboxConfig:{highlight:!1,range:!1},columns:[ie,{field:"code",title:"指标编码",width:140,showOverflow:!0},{field:"name",title:"指标名称",minWidth:160,showOverflow:!0},{field:"attriList",title:"指标名称(特性)",minWidth:220,showOverflow:!0,slots:{default:"attriList"}},{field:"type",title:"类型标签",width:120,showOverflow:!0,slots:{default:"type"}}]}),y=async()=>{m.value=!0;try{d.value=await ne.getPageComIndex(n.value),await le(),o.value.forEach(r=>{const e=d.value?.records.find(l=>l.id===r.id);e&&f.value?.setCheckboxRow(e,!0)})}catch(r){h.messageError(r)}finally{m.value=!1}},B=async()=>{n.value.current=1,await y()},b=async()=>{n.value={types:[],name:"",isValid:1,isDetails:1,size:h.getPageSize(),current:1},await y()},k=()=>{const r=f.value?.getCheckboxRecords()??[],e=new Set(d.value?.records.map(l=>l.id)??[]);o.value=o.value.filter(l=>!e.has(l.id)||r.some(c=>c.id===l.id)),r.forEach(l=>{o.value.some(c=>c.id===l.id)||o.value.push(l)})},M=r=>{const e=c=>r.id?c.id===r.id:c.code===r.code;o.value=o.value.filter(c=>!e(c));const l=d.value?.records.find(e);l&&f.value?.setCheckboxRow(l,!1)};return E({confirm:async(r=!0)=>{if(!o.value.length)return ae.warning("请选择指标"),!1;m.value=!0;try{return await P.confirmCallback(o.value)?(T("success"),r||(o.value=[],f.value?.clearCheckboxRow()),!0):!1}catch(e){return h.messageError(e),!1}finally{m.value=!1}},resetQuery:async()=>{o.value=[],await b()}}),(r,e)=>{const l=i("el-tree-select"),c=i("el-form-item"),Q=i("el-input"),$=i("el-form"),A=i("el-search"),V=i("el-text"),F=i("el-title"),W=i("el-tooltip"),z=i("el-tag-display"),q=i("el-scrollbar"),H=i("el-grid"),j=i("el-content-panel"),G=Y("loading");return Z((u(),w(j,{padding:!1,class:"dialog-content-fill"},{default:a(()=>[s(A,{onSearch:B,onReset:b},{default:a(()=>[s($,{inline:!0,model:n.value,style:{width:"100%"},"label-position":"top",size:"default"},{default:a(()=>[s(c,{style:{width:"220px"},label:"指标类型"},{default:a(()=>[s(l,{modelValue:n.value.types,"onUpdate:modelValue":e[0]||(e[0]=t=>n.value.types=t),data:D(N)("ComIndexType"),"default-expand-all":!0,props:{label:"label",children:"children"},"render-after-expand":!1,"check-strictly":"",clearable:"","collapse-tags":"","collapse-tags-tooltip":"",multiple:"","node-key":"value",placeholder:"请选择指标类型"},null,8,["modelValue","data"])]),_:1}),s(c,{style:{width:"220px"},label:"关键字"},{default:a(()=>[s(Q,{modelValue:n.value.name,"onUpdate:modelValue":e[1]||(e[1]=t=>n.value.name=t),clearable:"",placeholder:"请输入指标编码或名称"},null,8,["modelValue"])]),_:1})]),_:1},8,["model"])]),_:1}),s(F,{title:"指标列表",level:"1",style:{"border-bottom":"var(--border)"}},{default:a(()=>[s(V,{class:"selection-count"},{default:a(()=>[e[4]||(e[4]=p(" 已选 ",-1)),s(V,{type:"primary"},{default:a(()=>[p(g(o.value.length),1)]),_:1}),e[5]||(e[5]=p(" 项 ",-1))]),_:1})]),_:1}),o.value.length?(u(),x("div",ce,[s(q,{"max-height":"60px"},{default:a(()=>[ee("div",de,[(u(!0),x(I,null,S(o.value,t=>(u(),w(z,{key:t.id||t.code,closable:"",onClose:v=>M(t)},{default:a(()=>[s(W,{content:`${t.code} ${t.name}`,placement:"top"},{default:a(()=>[p(g(t.name),1)]),_:2},1032,["content"])]),_:2},1032,["onClose"]))),128))])]),_:1})])):te("v-if",!0),s(H,oe({ref_key:"gridRef",ref:f},U,{data:d.value?.records??[],total:d.value?.total??0,pagination:"","current-page":n.value.current,"onUpdate:currentPage":e[2]||(e[2]=t=>n.value.current=t),"page-size":n.value.size,"onUpdate:pageSize":e[3]||(e[3]=t=>n.value.size=t),onCheckboxAll:k,onCheckboxChange:k,onCurrentChange:y}),{attriList:a(({row:t})=>[(u(!0),x(I,null,S(t.attriList,v=>(u(),w(z,{key:v.id||v.attriCd},{default:a(()=>[p(g(v.attriName),1)]),_:2},1024))),128))]),type:a(({row:t})=>[p(g(D(O)(t.type,"ComIndexType")||"—"),1)]),_:1},16,["data","total","current-page","page-size"])]),_:1})),[[G,m.value]])}}}),$e=se(ue,[["__scopeId","data-v-b3c18182"]]);export{$e as default};
1
+ import{defineComponent as J,useModel as K,ref as _,reactive as X,resolveComponent as i,resolveDirective as Y,withDirectives as Z,openBlock as u,createBlock as w,withCtx as a,createVNode as s,unref as D,createTextVNode as p,toDisplayString as g,createElementBlock as x,createElementVNode as ee,Fragment as I,renderList as S,createCommentVNode as te,mergeProps as oe,mergeModels as R,nextTick as le}from"vue";import{ElMessage as ae}from"element-plus";import re from"../../hooks/useDictHooks.js";import ne from"./api/DataIndicatorsApi.js";import h from"../../utils/FrameworkUtils.js";import{checkboxColumn as ie}from"../../config/vxeSelectColumn.js";import{_ as se}from"../../../chunks/_plugin-vue_export-helper-DlAUqK2U.js";import"../../api/SysDictCacheApi.js";import"../../utils/request.js";import"../../utils/AxiosConfig.js";import"axios";import"../../utils/uuid.js";import"uuid";import"../../utils/encrypt.js";import"jsencrypt";import"../../utils/behaviorTrack.js";import"crypto-js/enc-base64";import"crypto-js/enc-utf8";import"../../utils/behaviorContext.js";import"../../utils/dateTime.js";import"../../utils/frontendBus.js";import"../../utils/globalLoading.js";import"../../utils/workflowTaskContext.js";import"../../config/GlobalLoadingConfig.js";import"../../stores/dictStore.js";import"pinia";import"../../stores/userInfoStore.js";import"../../utils/userSessionStorage.js";import"xlsx-js-style";const ce={key:0,class:"selection-preview"},de={class:"selection-preview__content"},ue=J({__name:"SelectInDicators",props:R({confirmCallback:{type:Function}},{loading:{type:Boolean,default:!1},loadingModifiers:{}}),emits:R(["success"],["update:loading"]),setup(C,{expose:E,emit:L}){const m=K(C,"loading"),P=C,T=L,{getDictTypeData:N,getDictName:O}=re(["ComIndexType"]),f=_(),d=_(),o=_([]),n=_({types:[],name:"",isValid:1,isDetails:1,size:h.getPageSize(),current:1}),U=X({border:!0,height:"100%",columnConfig:{resizable:!1},checkboxConfig:{highlight:!1,range:!1},columns:[ie,{field:"code",title:"指标编码",width:140,showOverflow:!0},{field:"name",title:"指标名称",minWidth:160,showOverflow:!0},{field:"attriList",title:"指标名称(特性)",minWidth:220,showOverflow:!0,slots:{default:"attriList"}},{field:"type",title:"类型标签",width:120,showOverflow:!0,slots:{default:"type"}}]}),y=async()=>{m.value=!0;try{d.value=await ne.getPageComIndex(n.value),await le(),o.value.forEach(r=>{const e=d.value?.records.find(l=>l.id===r.id);e&&f.value?.setCheckboxRow(e,!0)})}catch(r){h.messageError(r)}finally{m.value=!1}},B=async()=>{n.value.current=1,await y()},b=async()=>{n.value={types:[],name:"",isValid:1,isDetails:1,size:h.getPageSize(),current:1},await y()},k=()=>{const r=f.value?.getCheckboxRecords()??[],e=new Set(d.value?.records.map(l=>l.id)??[]);o.value=o.value.filter(l=>!e.has(l.id)||r.some(c=>c.id===l.id)),r.forEach(l=>{o.value.some(c=>c.id===l.id)||o.value.push(l)})},M=r=>{const e=c=>r.id?c.id===r.id:c.code===r.code;o.value=o.value.filter(c=>!e(c));const l=d.value?.records.find(e);l&&f.value?.setCheckboxRow(l,!1)};return E({confirm:async(r=!0)=>{if(!o.value.length)return ae.warning("请选择指标"),!1;m.value=!0;try{return await P.confirmCallback(o.value)?(T("success"),r||(o.value=[],f.value?.clearCheckboxRow()),!0):!1}catch(e){return h.messageError(e),!1}finally{m.value=!1}},resetQuery:async()=>{o.value=[],await b()}}),(r,e)=>{const l=i("el-tree-select"),c=i("el-form-item"),Q=i("el-input"),$=i("el-form"),A=i("el-search"),V=i("el-text"),F=i("el-title"),W=i("el-tooltip"),z=i("el-tag-display"),q=i("el-scrollbar"),H=i("el-grid"),j=i("el-content-panel"),G=Y("loading");return Z((u(),w(j,{padding:!1,class:"dialog-content-fill"},{default:a(()=>[s(A,{onSearch:B,onReset:b},{default:a(()=>[s($,{inline:!0,model:n.value,style:{width:"100%"},"label-position":"top",size:"default"},{default:a(()=>[s(c,{style:{width:"220px"},label:"指标类型"},{default:a(()=>[s(l,{modelValue:n.value.types,"onUpdate:modelValue":e[0]||(e[0]=t=>n.value.types=t),data:D(N)("ComIndexType"),"default-expand-all":!0,props:{label:"label",children:"children"},"render-after-expand":!1,"check-strictly":"",clearable:"","collapse-tags":"","collapse-tags-tooltip":"",multiple:"","node-key":"value",placeholder:"请选择指标类型"},null,8,["modelValue","data"])]),_:1}),s(c,{style:{width:"220px"},label:"关键字"},{default:a(()=>[s(Q,{modelValue:n.value.name,"onUpdate:modelValue":e[1]||(e[1]=t=>n.value.name=t),clearable:"",placeholder:"请输入指标编码或名称"},null,8,["modelValue"])]),_:1})]),_:1},8,["model"])]),_:1}),s(F,{title:"指标列表",level:"1",style:{"border-bottom":"var(--border)"}},{default:a(()=>[s(V,{class:"selection-count"},{default:a(()=>[e[4]||(e[4]=p(" 已选 ",-1)),s(V,{type:"primary"},{default:a(()=>[p(g(o.value.length),1)]),_:1}),e[5]||(e[5]=p(" 项 ",-1))]),_:1})]),_:1}),o.value.length?(u(),x("div",ce,[s(q,{"max-height":"60px"},{default:a(()=>[ee("div",de,[(u(!0),x(I,null,S(o.value,t=>(u(),w(z,{key:t.id||t.code,closable:"",onClose:v=>M(t)},{default:a(()=>[s(W,{content:`${t.code} ${t.name}`,placement:"top"},{default:a(()=>[p(g(t.name),1)]),_:2},1032,["content"])]),_:2},1032,["onClose"]))),128))])]),_:1})])):te("v-if",!0),s(H,oe({ref_key:"gridRef",ref:f},U,{data:d.value?.records??[],total:d.value?.total??0,pagination:"","current-page":n.value.current,"onUpdate:currentPage":e[2]||(e[2]=t=>n.value.current=t),"page-size":n.value.size,"onUpdate:pageSize":e[3]||(e[3]=t=>n.value.size=t),onCheckboxAll:k,onCheckboxChange:k,onCurrentChange:y}),{attriList:a(({row:t})=>[(u(!0),x(I,null,S(t.attriList,v=>(u(),w(z,{key:v.id||v.attriCd},{default:a(()=>[p(g(v.attriName),1)]),_:2},1024))),128))]),type:a(({row:t})=>[p(g(D(O)(t.type,"ComIndexType")||"—"),1)]),_:1},16,["data","total","current-page","page-size"])]),_:1})),[[G,m.value]])}}}),Fe=se(ue,[["__scopeId","data-v-fb8634e1"]]);export{Fe as default};
@@ -1 +1 @@
1
- import o from"../../../utils/request.js";import"../../../utils/AxiosConfig.js";import"axios";import"uuid";import"../../../utils/encrypt.js";import"jsencrypt";import"../../../utils/behaviorTrack.js";import"crypto-js/enc-base64";import"crypto-js/enc-utf8";import"../../../utils/behaviorContext.js";import"../../../utils/dateTime.js";import"element-plus";import"../../../utils/frontendBus.js";import"../../../utils/globalLoading.js";import"vue";import"../../../utils/workflowTaskContext.js";const r="/api/base/comIndex/",P={getPageComIndex(t){return o.post(r+"getPageComIndex",t)},getComIndexAttriVo(t){return o.get("/api/se/assessmentMethodConfig/getComIndexAttriVo/"+t)}};export{P as default};
1
+ import o from"../../../utils/request.js";import"../../../utils/AxiosConfig.js";import"axios";import"../../../utils/uuid.js";import"uuid";import"../../../utils/encrypt.js";import"jsencrypt";import"../../../utils/behaviorTrack.js";import"crypto-js/enc-base64";import"crypto-js/enc-utf8";import"../../../utils/behaviorContext.js";import"../../../utils/dateTime.js";import"element-plus";import"../../../utils/frontendBus.js";import"../../../utils/globalLoading.js";import"vue";import"../../../utils/workflowTaskContext.js";import"../../../config/GlobalLoadingConfig.js";const r="/api/base/comIndex/",h={getPageComIndex(t){return o.post(r+"getPageComIndex",t)},getComIndexAttriVo(t){return o.get("/api/se/assessmentMethodConfig/getComIndexAttriVo/"+t)}};export{h as 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/behaviorTrack.js";import"crypto-js/enc-base64";import"crypto-js/enc-utf8";import"../../utils/behaviorContext.js";import"../../utils/dateTime.js";import"element-plus";import"../../utils/frontendBus.js";import"../../utils/globalLoading.js";import"../../utils/workflowTaskContext.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-DQXuYsW_.js";/* empty css */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"../../utils/uuid.js";import"uuid";import"../../utils/encrypt.js";import"jsencrypt";import"../../utils/behaviorTrack.js";import"crypto-js/enc-base64";import"crypto-js/enc-utf8";import"../../utils/behaviorContext.js";import"../../utils/dateTime.js";import"element-plus";import"../../utils/frontendBus.js";import"../../utils/globalLoading.js";import"../../utils/workflowTaskContext.js";import"../../config/GlobalLoadingConfig.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-DQXuYsW_.js";/* empty css */import"../../../chunks/_plugin-vue_export-helper-DlAUqK2U.js";export{o as default};
@@ -1 +1 @@
1
- import{defineComponent as Y,ref as f,reactive as Z,resolveComponent as c,resolveDirective as ee,withDirectives as te,openBlock as k,createBlock as E,withCtx as v,createVNode as u,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{ElMessage as de}from"element-plus";import ce from"../../api/DeptInfoApi.js";import ue from"../../api/EmployeeInfoApi.js";import{useResetRefHooks as x}from"../../hooks/useResetRefHooks.js";import I from"../../utils/FrameworkUtils.js";import{checkboxColumn as pe,radioColumn as me}from"../../config/vxeSelectColumn.js";import{_ as fe}from"../../../chunks/ElTagDisplay.vue_vue_type_script_setup_true_lang-DQXuYsW_.js";/* empty css */import{_ as ve}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/behaviorTrack.js";import"crypto-js/enc-base64";import"crypto-js/enc-utf8";import"../../utils/behaviorContext.js";import"../../utils/dateTime.js";import"../../utils/frontendBus.js";import"../../utils/globalLoading.js";import"../../utils/workflowTaskContext.js";import"xlsx-js-style";const ge={style:{"padding-top":"4px"}},he=Y({__name:"comp.userForm",props:{fetchData:{type:Function,default:ue.getMdmEmployeeListByIds},defalutQueryParam:{default:{disabled:!1,deptIds:[]}},multiple:{type:Boolean,default:!0},showOrgInfo:{type:Boolean,default:!0}},emits:["success"],setup(O,{expose:z,emit:P}){const d=O,[l,D]=x({current:1,size:I.getPageSize(),...d.defalutQueryParam}),U=P,h=f([]),y=f(!1),R=f(),m=f(),g=f(""),_=f(),b=f(),[r,S]=x([]),[p,B]=x({records:[],total:0,pages:0,current:1}),L=[d.multiple?{...pe,checkboxConfig:{checkMethod:({row:e})=>e.isValid==="1"}}:me,{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:!1,range:!1},columns:L}),T=({row:e,rowIndex:t})=>{if(e.isValid!=="1")return"table-row-disabled"},F=async()=>{try{h.value=await ce.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(i=>i.code);t.forEach(i=>{o.includes(i.code)||r.value.push(i)})}else{const o=t.map(i=>i.code);r.value=r.value.filter(i=>!o.includes(i.code))}},J=({row:e})=>{d.multiple||M(e)},V=async()=>{y.value=!0,h.value&&h.value.length||await F(),S(),B(),R.value?.resetFields(),b.value?.setCheckedKeys([]),D(),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(C=>C.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 i=r.value.map(n=>n.code);N(()=>{p.value.records.forEach(n=>{i.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 z({confirm:async()=>{!r.value.length&&d.multiple||!_.value&&!d.multiple?de.warning("未选择需要新增的人员!"):U("success",d.multiple?r.value:_.value)},resetQuery:V}),(e,t)=>{const o=c("el-tree-select"),i=c("el-form-item"),n=c("el-input"),C=c("el-form"),$=c("el-search"),H=c("el-title"),j=c("el-tooltip"),G=c("el-grid"),W=c("el-flex"),X=ee("loading");return te((k(),E(W,{vertical:!0},{default:v(()=>[u($,{class:"border",style:{"border-bottom":"var(--border)"},onReset:V,onSearch:w},{default:v(()=>[u(C,{ref_key:"queryRef",ref:R,inline:!0,model:a(l),style:{width:"100%",height:"100%"},labelPosition:"top",size:"default"},{default:v(()=>[u(i,{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]=s=>a(l).deptIds=s),data:h.value,filterable:"",multiple:"","default-expand-all":!0,props:{label:"name",children:"children",disabled:s=>s.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(i,{style:{width:"220px"},label:"人员编码或名称",prop:"codeorname"},{default:v(()=>[u(n,{modelValue:a(l).codeorname,"onUpdate:modelValue":t[1]||(t[1]=s=>a(l).codeorname=s),clearable:"",placeholder:"请输入人员编码或名称"},null,8,["modelValue"])]),_:1})]),_:1},8,["model"])]),_:1}),u(H,{class:"border",style:{"border-bottom":"var(--border)"},title:"人员列表"}),le("div",ge,[(k(!0),oe(ae,null,re(a(r),s=>(k(),E(fe,{key:s.code,closable:"",style:{margin:"2px"},onClose:ye=>K(s)},{default:v(()=>[u(j,{placement:"top",content:s.deptName},{default:v(()=>[se(ie(s.name),1)]),_:2},1032,["content"])]),_:2},1032,["onClose"]))),128))]),u(G,ne({ref_key:"gridRef",ref:m},Q,{data:a(p)?.records,total:a(p)?.total?a(p)?.total:0,pagination:"","current-page":a(l).current,"onUpdate:currentPage":t[2]||(t[2]=s=>a(l).current=s),"page-size":a(l).size,"onUpdate:pageSize":t[3]||(t[3]=s=>a(l).size=s),"row-class-name":T,style:{width:"100%"},onCheckboxChange:q,onCheckboxAll:A,onCellClick:J,onCurrentChange:w}),null,16,["data","total","current-page","page-size"])]),_:1})),[[X,y.value]])}}}),$e=ve(he,[["__scopeId","data-v-006d831a"]]);export{$e as default};
1
+ import{defineComponent as Y,ref as f,reactive as Z,resolveComponent as c,resolveDirective as ee,withDirectives as te,openBlock as k,createBlock as E,withCtx as v,createVNode as u,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{ElMessage as de}from"element-plus";import ce from"../../api/DeptInfoApi.js";import ue from"../../api/EmployeeInfoApi.js";import{useResetRefHooks as x}from"../../hooks/useResetRefHooks.js";import I from"../../utils/FrameworkUtils.js";import{checkboxColumn as pe,radioColumn as me}from"../../config/vxeSelectColumn.js";import{_ as fe}from"../../../chunks/ElTagDisplay.vue_vue_type_script_setup_true_lang-DQXuYsW_.js";/* empty css */import{_ as ve}from"../../../chunks/_plugin-vue_export-helper-DlAUqK2U.js";import"../../utils/request.js";import"../../utils/AxiosConfig.js";import"axios";import"../../utils/uuid.js";import"uuid";import"../../utils/encrypt.js";import"jsencrypt";import"../../utils/behaviorTrack.js";import"crypto-js/enc-base64";import"crypto-js/enc-utf8";import"../../utils/behaviorContext.js";import"../../utils/dateTime.js";import"../../utils/frontendBus.js";import"../../utils/globalLoading.js";import"../../utils/workflowTaskContext.js";import"../../config/GlobalLoadingConfig.js";import"xlsx-js-style";const ge={style:{"padding-top":"4px"}},he=Y({__name:"comp.userForm",props:{fetchData:{type:Function,default:ue.getMdmEmployeeListByIds},defalutQueryParam:{default:{disabled:!1,deptIds:[]}},multiple:{type:Boolean,default:!0},showOrgInfo:{type:Boolean,default:!0}},emits:["success"],setup(O,{expose:z,emit:P}){const d=O,[l,D]=x({current:1,size:I.getPageSize(),...d.defalutQueryParam}),U=P,h=f([]),y=f(!1),R=f(),m=f(),g=f(""),_=f(),b=f(),[r,S]=x([]),[p,B]=x({records:[],total:0,pages:0,current:1}),L=[d.multiple?{...pe,checkboxConfig:{checkMethod:({row:e})=>e.isValid==="1"}}:me,{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:!1,range:!1},columns:L}),T=({row:e,rowIndex:t})=>{if(e.isValid!=="1")return"table-row-disabled"},F=async()=>{try{h.value=await ce.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(i=>i.code);t.forEach(i=>{o.includes(i.code)||r.value.push(i)})}else{const o=t.map(i=>i.code);r.value=r.value.filter(i=>!o.includes(i.code))}},J=({row:e})=>{d.multiple||M(e)},V=async()=>{y.value=!0,h.value&&h.value.length||await F(),S(),B(),R.value?.resetFields(),b.value?.setCheckedKeys([]),D(),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(C=>C.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 i=r.value.map(n=>n.code);N(()=>{p.value.records.forEach(n=>{i.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 z({confirm:async()=>{!r.value.length&&d.multiple||!_.value&&!d.multiple?de.warning("未选择需要新增的人员!"):U("success",d.multiple?r.value:_.value)},resetQuery:V}),(e,t)=>{const o=c("el-tree-select"),i=c("el-form-item"),n=c("el-input"),C=c("el-form"),$=c("el-search"),H=c("el-title"),j=c("el-tooltip"),G=c("el-grid"),W=c("el-flex"),X=ee("loading");return te((k(),E(W,{vertical:!0},{default:v(()=>[u($,{class:"border",style:{"border-bottom":"var(--border)"},onReset:V,onSearch:w},{default:v(()=>[u(C,{ref_key:"queryRef",ref:R,inline:!0,model:a(l),style:{width:"100%",height:"100%"},labelPosition:"top",size:"default"},{default:v(()=>[u(i,{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]=s=>a(l).deptIds=s),data:h.value,filterable:"",multiple:"","default-expand-all":!0,props:{label:"name",children:"children",disabled:s=>s.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(i,{style:{width:"220px"},label:"人员编码或名称",prop:"codeorname"},{default:v(()=>[u(n,{modelValue:a(l).codeorname,"onUpdate:modelValue":t[1]||(t[1]=s=>a(l).codeorname=s),clearable:"",placeholder:"请输入人员编码或名称"},null,8,["modelValue"])]),_:1})]),_:1},8,["model"])]),_:1}),u(H,{class:"border",style:{"border-bottom":"var(--border)"},title:"人员列表"}),le("div",ge,[(k(!0),oe(ae,null,re(a(r),s=>(k(),E(fe,{key:s.code,closable:"",style:{margin:"2px"},onClose:ye=>K(s)},{default:v(()=>[u(j,{placement:"top",content:s.deptName},{default:v(()=>[se(ie(s.name),1)]),_:2},1032,["content"])]),_:2},1032,["onClose"]))),128))]),u(G,ne({ref_key:"gridRef",ref:m},Q,{data:a(p)?.records,total:a(p)?.total?a(p)?.total:0,pagination:"","current-page":a(l).current,"onUpdate:currentPage":t[2]||(t[2]=s=>a(l).current=s),"page-size":a(l).size,"onUpdate:pageSize":t[3]||(t[3]=s=>a(l).size=s),"row-class-name":T,style:{width:"100%"},onCheckboxChange:q,onCheckboxAll:A,onCellClick:J,onCurrentChange:w}),null,16,["data","total","current-page","page-size"])]),_:1})),[[X,y.value]])}}}),je=ve(he,[["__scopeId","data-v-006d831a"]]);export{je as default};
@@ -1 +1 @@
1
- import{_ as o}from"../../../chunks/userSelect.vue_vue_type_script_setup_true_lang-DlEso2ua.js";import"vue";import"@vueuse/core";import"./userSelectContent.vue.js";import"../../api/BasicApi.js";import"../../utils/request.js";import"../../utils/AxiosConfig.js";import"axios";import"uuid";import"../../utils/encrypt.js";import"jsencrypt";import"../../utils/behaviorTrack.js";import"crypto-js/enc-base64";import"crypto-js/enc-utf8";import"../../utils/behaviorContext.js";import"../../utils/dateTime.js";import"element-plus";import"../../utils/frontendBus.js";import"../../utils/globalLoading.js";import"../../utils/workflowTaskContext.js";import"../../api/SysUserApi.js";import"../../utils/FrameworkUtils.js";import"xlsx-js-style";import"../../../chunks/_plugin-vue_export-helper-DlAUqK2U.js";export{o as default};
1
+ import{_ as o}from"../../../chunks/userSelect.vue_vue_type_script_setup_true_lang-DlEso2ua.js";import"vue";import"@vueuse/core";import"./userSelectContent.vue.js";import"../../api/BasicApi.js";import"../../utils/request.js";import"../../utils/AxiosConfig.js";import"axios";import"../../utils/uuid.js";import"uuid";import"../../utils/encrypt.js";import"jsencrypt";import"../../utils/behaviorTrack.js";import"crypto-js/enc-base64";import"crypto-js/enc-utf8";import"../../utils/behaviorContext.js";import"../../utils/dateTime.js";import"element-plus";import"../../utils/frontendBus.js";import"../../utils/globalLoading.js";import"../../utils/workflowTaskContext.js";import"../../config/GlobalLoadingConfig.js";import"../../api/SysUserApi.js";import"../../utils/FrameworkUtils.js";import"xlsx-js-style";import"../../../chunks/_plugin-vue_export-helper-DlAUqK2U.js";export{o as default};
@@ -1 +1 @@
1
- import{defineComponent as G,ref as m,shallowRef as O,onMounted as P,resolveComponent as p,resolveDirective as Q,withDirectives as W,openBlock as f,createBlock as v,withCtx as s,createVNode as n,createCommentVNode as L,normalizeStyle as T,createTextVNode as I,toDisplayString as w,createElementBlock as M,Fragment as J,renderList as X,nextTick as Z}from"vue";import{watchDebounced as ee}from"@vueuse/core";import te from"../../api/BasicApi.js";import U from"../../api/SysUserApi.js";import"element-plus";import re from"../../utils/FrameworkUtils.js";import{_ as le}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/behaviorTrack.js";import"crypto-js/enc-base64";import"crypto-js/enc-utf8";import"../../utils/behaviorContext.js";import"../../utils/dateTime.js";import"../../utils/frontendBus.js";import"../../utils/globalLoading.js";import"../../utils/workflowTaskContext.js";import"xlsx-js-style";const oe=G({__name:"userSelectContent",props:{selectedUserIds:{type:Array,default:()=>[]},roleId:{type:String,default:""},multiple:{type:Boolean,default:!1},includeExternal:{type:Boolean,default:!1},onConfirm:{type:Function,default:void 0}},emits:["success"],setup(V,{expose:H,emit:K}){const C=m(!1),b=O([]),c=m([]),S=m([]),_=m([]),y=m(),g=m("");let E=new Map,B=!1;const h=V,R=K;ee(g,l=>{y.value?.filter(l.trim())},{debounce:200,maxWait:500});const Y=(l,e)=>{if(!l)return!0;const t=l.toLocaleLowerCase();return String(e.name??"").toLocaleLowerCase().includes(t)||String(e.code??"").toLocaleLowerCase().includes(t)};function $(l){const e=c.value.findIndex(t=>t.id===l.id);if(e!==-1){c.value.splice(e,1);const t=c.value.map(r=>r.id);y.value?.setCheckedKeys(t)}}const z=async()=>{_.value=[];let l=h.selectedUserIds;h.roleId&&(l=(await U.getSysRoleUserByRoleId(h.roleId)||[]).map(t=>t.sysUserInfoId).filter(Boolean).map(t=>String(t))),l.length&&(c.value=await U.getInitUserListComp(l),c.value.forEach(e=>{e.id&&_.value.push(String(e.id))}))},D=(l,e,t)=>{e.id&&l.push({id:e.id,code:e.loginName,name:e.userName,parentId:t,type:"YH",sex:e.sex})},A=l=>{const e=new Map;return E=new Map,l.forEach(t=>{if(t.id&&E.set(t.id,t),!t.mdmDeptId)return;const r=e.get(t.mdmDeptId);r?r.push(t):e.set(t.mdmDeptId,[t])}),e},N=async()=>{if(!B){B=!0,C.value=!0,c.value=[],b.value=[],g.value="";try{const l=h.includeExternal?U.getSysUserInfoUserSelectForTransfer():U.getSysUserInfoUserSelectComp(),[e,t]=await Promise.all([te.getMdmOrgDeptTree(),l,z()]),r=[];e.forEach(i=>{i.children?.forEach(o=>{o.parentId=i.id}),r.push(...j(i))});const d=[],a=A(t),u=new Set;r.forEach(i=>{i.type="BM",a.get(i.id)?.forEach(o=>{D(d,o,i.id),o.id&&u.add(o.id)})});const x=t.filter(i=>i.isIup==="0"&&!!i.id&&!u.has(i.id));if(x.length){const i="__external_users__";r.push({id:i,code:i,name:"外部人员",parentId:null,type:"BM"}),x.forEach(o=>D(d,o,i))}const k=F([...r,...d]);S.value=k.map(i=>i.id),b.value=k,await Z(),y.value?.setCheckedKeys(_.value)}catch(l){re.messageError(l)}finally{C.value=!1}}};P(()=>{N()});function F(l){const e=new Map,t=[];return l.forEach(r=>{e.set(r.id,{...r,children:[]})}),l.forEach(r=>{const d=e.get(r.id);if(r.parentId===null)t.push(d);else{const a=e.get(r.parentId);a&&a.children.push(d)}}),t}function j(l){const e=[];function t(r){r&&(e.push({id:r.id,code:r.code,name:r.name,parentId:r.parentId}),r.children&&r.children.length>0&&r.children.forEach(d=>t(d)))}return t(l),e}const q=()=>{const l=y.value?.getCheckedNodes().filter(e=>e.type==="YH")??[];c.value=l.map(e=>E.get(e.id)).filter(e=>e!==void 0)};return H({resetQuery:N,confirm:async()=>{await h.onConfirm?.(c.value),R("success",c.value)},reset:()=>{c.value=[]}}),(l,e)=>{const t=p("el-title"),r=p("el-search-input"),d=p("el-icons"),a=p("el-flex"),u=p("el-text"),x=p("el-tree"),k=p("el-icon-btn"),i=Q("loading");return W((f(),v(a,{vertical:!0,style:{height:"100%"}},{default:s(()=>[n(a,{vertical:!1},{default:s(()=>[n(a,{vertical:!0,style:{"padding-right":"15px"}},{default:s(()=>[n(t,{title:"人员列表",style:{"border-bottom":"var(--border)"}}),n(r,{modelValue:g.value,"onUpdate:modelValue":e[0]||(e[0]=o=>g.value=o),"show-action":!1,placeholder:"请输入用户名称或者编码进行搜索"},null,8,["modelValue"]),n(a,{vertical:!0},{default:s(()=>[n(x,{style:{width:"100%"},"filter-node-method":Y,"show-checkbox":"",ref_key:"ref_tree",ref:y,data:b.value,onCheck:q,"node-key":"id","default-expanded-keys":S.value,"default-checked-keys":_.value,props:{label:"name",children:"children"}},{default:s(({data:o})=>[n(a,{align:"center"},{default:s(()=>[n(a,{align:"center",justify:"center",width:"20px"},{default:s(()=>[o.type==="BM"?(f(),v(d,{key:0,"model-value":"adtec-dept",style:{color:"var(--el-color-primary)"}})):L("v-if",!0),o.type==="YH"?(f(),v(d,{key:1,"model-value":"adtec-user",style:T({color:o.sex==="1"?"#ef5fa6":"var(--el-color-primary)"})},null,8,["style"])):L("v-if",!0)]),_:2},1024),n(a,{align:"center"},{default:s(()=>[o.type==="YH"?(f(),v(u,{key:0},{default:s(()=>[I(w(o.name+`(${o.code})`),1)]),_:2},1024)):(f(),v(u,{key:1},{default:s(()=>[I(w(o.name),1)]),_:2},1024))]),_:2},1024)]),_:2},1024)]),_:1},8,["data","default-expanded-keys","default-checked-keys"])]),_:1})]),_:1}),n(a,{vertical:!0,style:{"border-left":"var(--border)","padding-left":"15px"}},{default:s(()=>[n(t,{title:`已选人员(${c.value.length})`,style:{"border-bottom":"var(--border)","margin-top":"5px"}},null,8,["title"]),n(a,{vertical:!0},{default:s(()=>[(f(!0),M(J,null,X(c.value,o=>(f(),M("div",{key:o.id,class:"user-select"},[n(a,{height:"50px",style:{"border-bottom":"var(--border)",cursor:"pointer"}},{default:s(()=>[n(a,{align:"center",width:"30px"},{default:s(()=>[n(d,{"model-value":"adtec-user",style:T([{"font-size":"20px"},{color:o.sex==="1"?"#ef5fa6":"var(--el-color-primary)"}])},null,8,["style"])]),_:2},1024),n(a,{align:"center",vertical:!0,justify:"flex-start"},{default:s(()=>[n(a,null,{default:s(()=>[n(u,null,{default:s(()=>[I(w(o.userName+`(${o.loginName})`),1)]),_:2},1024)]),_:2},1024),n(a,{align:"flex-start",height:"18px",style:{overflow:"hidden"}},{default:s(()=>[n(u,{style:{"font-size":"12px",opacity:"0.8","margin-bottom":"8px"}},{default:s(()=>[I(w(o.deptName),1)]),_:2},1024)]),_:2},1024)]),_:2},1024),n(a,{width:"50px",align:"center"},{default:s(()=>[n(k,{onClick:se=>$(o),"model-value":"adtec-close",style:{opacity:"0.8",cursor:"pointer"}},null,8,["onClick"])]),_:2},1024)]),_:2},1024)]))),128))]),_:1})]),_:1})]),_:1})]),_:1})),[[i,C.value]])}}}),De=le(oe,[["__scopeId","data-v-22875bfe"]]);export{De as default};
1
+ import{defineComponent as G,ref as m,shallowRef as O,onMounted as P,resolveComponent as p,resolveDirective as Q,withDirectives as W,openBlock as f,createBlock as v,withCtx as s,createVNode as n,createCommentVNode as L,normalizeStyle as T,createTextVNode as I,toDisplayString as w,createElementBlock as M,Fragment as J,renderList as X,nextTick as Z}from"vue";import{watchDebounced as ee}from"@vueuse/core";import te from"../../api/BasicApi.js";import U from"../../api/SysUserApi.js";import"element-plus";import re from"../../utils/FrameworkUtils.js";import{_ as le}from"../../../chunks/_plugin-vue_export-helper-DlAUqK2U.js";import"../../utils/request.js";import"../../utils/AxiosConfig.js";import"axios";import"../../utils/uuid.js";import"uuid";import"../../utils/encrypt.js";import"jsencrypt";import"../../utils/behaviorTrack.js";import"crypto-js/enc-base64";import"crypto-js/enc-utf8";import"../../utils/behaviorContext.js";import"../../utils/dateTime.js";import"../../utils/frontendBus.js";import"../../utils/globalLoading.js";import"../../utils/workflowTaskContext.js";import"../../config/GlobalLoadingConfig.js";import"xlsx-js-style";const oe=G({__name:"userSelectContent",props:{selectedUserIds:{type:Array,default:()=>[]},roleId:{type:String,default:""},multiple:{type:Boolean,default:!1},includeExternal:{type:Boolean,default:!1},onConfirm:{type:Function,default:void 0}},emits:["success"],setup(V,{expose:H,emit:K}){const C=m(!1),b=O([]),c=m([]),S=m([]),_=m([]),y=m(),g=m("");let E=new Map,B=!1;const h=V,R=K;ee(g,l=>{y.value?.filter(l.trim())},{debounce:200,maxWait:500});const Y=(l,e)=>{if(!l)return!0;const t=l.toLocaleLowerCase();return String(e.name??"").toLocaleLowerCase().includes(t)||String(e.code??"").toLocaleLowerCase().includes(t)};function $(l){const e=c.value.findIndex(t=>t.id===l.id);if(e!==-1){c.value.splice(e,1);const t=c.value.map(r=>r.id);y.value?.setCheckedKeys(t)}}const z=async()=>{_.value=[];let l=h.selectedUserIds;h.roleId&&(l=(await U.getSysRoleUserByRoleId(h.roleId)||[]).map(t=>t.sysUserInfoId).filter(Boolean).map(t=>String(t))),l.length&&(c.value=await U.getInitUserListComp(l),c.value.forEach(e=>{e.id&&_.value.push(String(e.id))}))},D=(l,e,t)=>{e.id&&l.push({id:e.id,code:e.loginName,name:e.userName,parentId:t,type:"YH",sex:e.sex})},A=l=>{const e=new Map;return E=new Map,l.forEach(t=>{if(t.id&&E.set(t.id,t),!t.mdmDeptId)return;const r=e.get(t.mdmDeptId);r?r.push(t):e.set(t.mdmDeptId,[t])}),e},N=async()=>{if(!B){B=!0,C.value=!0,c.value=[],b.value=[],g.value="";try{const l=h.includeExternal?U.getSysUserInfoUserSelectForTransfer():U.getSysUserInfoUserSelectComp(),[e,t]=await Promise.all([te.getMdmOrgDeptTree(),l,z()]),r=[];e.forEach(i=>{i.children?.forEach(o=>{o.parentId=i.id}),r.push(...j(i))});const d=[],a=A(t),u=new Set;r.forEach(i=>{i.type="BM",a.get(i.id)?.forEach(o=>{D(d,o,i.id),o.id&&u.add(o.id)})});const x=t.filter(i=>i.isIup==="0"&&!!i.id&&!u.has(i.id));if(x.length){const i="__external_users__";r.push({id:i,code:i,name:"外部人员",parentId:null,type:"BM"}),x.forEach(o=>D(d,o,i))}const k=F([...r,...d]);S.value=k.map(i=>i.id),b.value=k,await Z(),y.value?.setCheckedKeys(_.value)}catch(l){re.messageError(l)}finally{C.value=!1}}};P(()=>{N()});function F(l){const e=new Map,t=[];return l.forEach(r=>{e.set(r.id,{...r,children:[]})}),l.forEach(r=>{const d=e.get(r.id);if(r.parentId===null)t.push(d);else{const a=e.get(r.parentId);a&&a.children.push(d)}}),t}function j(l){const e=[];function t(r){r&&(e.push({id:r.id,code:r.code,name:r.name,parentId:r.parentId}),r.children&&r.children.length>0&&r.children.forEach(d=>t(d)))}return t(l),e}const q=()=>{const l=y.value?.getCheckedNodes().filter(e=>e.type==="YH")??[];c.value=l.map(e=>E.get(e.id)).filter(e=>e!==void 0)};return H({resetQuery:N,confirm:async()=>{await h.onConfirm?.(c.value),R("success",c.value)},reset:()=>{c.value=[]}}),(l,e)=>{const t=p("el-title"),r=p("el-search-input"),d=p("el-icons"),a=p("el-flex"),u=p("el-text"),x=p("el-tree"),k=p("el-icon-btn"),i=Q("loading");return W((f(),v(a,{vertical:!0,style:{height:"100%"}},{default:s(()=>[n(a,{vertical:!1},{default:s(()=>[n(a,{vertical:!0,style:{"padding-right":"15px"}},{default:s(()=>[n(t,{title:"人员列表",style:{"border-bottom":"var(--border)"}}),n(r,{modelValue:g.value,"onUpdate:modelValue":e[0]||(e[0]=o=>g.value=o),"show-action":!1,placeholder:"请输入用户名称或者编码进行搜索"},null,8,["modelValue"]),n(a,{vertical:!0},{default:s(()=>[n(x,{style:{width:"100%"},"filter-node-method":Y,"show-checkbox":"",ref_key:"ref_tree",ref:y,data:b.value,onCheck:q,"node-key":"id","default-expanded-keys":S.value,"default-checked-keys":_.value,props:{label:"name",children:"children"}},{default:s(({data:o})=>[n(a,{align:"center"},{default:s(()=>[n(a,{align:"center",justify:"center",width:"20px"},{default:s(()=>[o.type==="BM"?(f(),v(d,{key:0,"model-value":"adtec-dept",style:{color:"var(--el-color-primary)"}})):L("v-if",!0),o.type==="YH"?(f(),v(d,{key:1,"model-value":"adtec-user",style:T({color:o.sex==="1"?"#ef5fa6":"var(--el-color-primary)"})},null,8,["style"])):L("v-if",!0)]),_:2},1024),n(a,{align:"center"},{default:s(()=>[o.type==="YH"?(f(),v(u,{key:0},{default:s(()=>[I(w(o.name+`(${o.code})`),1)]),_:2},1024)):(f(),v(u,{key:1},{default:s(()=>[I(w(o.name),1)]),_:2},1024))]),_:2},1024)]),_:2},1024)]),_:1},8,["data","default-expanded-keys","default-checked-keys"])]),_:1})]),_:1}),n(a,{vertical:!0,style:{"border-left":"var(--border)","padding-left":"15px"}},{default:s(()=>[n(t,{title:`已选人员(${c.value.length})`,style:{"border-bottom":"var(--border)","margin-top":"5px"}},null,8,["title"]),n(a,{vertical:!0},{default:s(()=>[(f(!0),M(J,null,X(c.value,o=>(f(),M("div",{key:o.id,class:"user-select"},[n(a,{height:"50px",style:{"border-bottom":"var(--border)",cursor:"pointer"}},{default:s(()=>[n(a,{align:"center",width:"30px"},{default:s(()=>[n(d,{"model-value":"adtec-user",style:T([{"font-size":"20px"},{color:o.sex==="1"?"#ef5fa6":"var(--el-color-primary)"}])},null,8,["style"])]),_:2},1024),n(a,{align:"center",vertical:!0,justify:"flex-start"},{default:s(()=>[n(a,null,{default:s(()=>[n(u,null,{default:s(()=>[I(w(o.userName+`(${o.loginName})`),1)]),_:2},1024)]),_:2},1024),n(a,{align:"flex-start",height:"18px",style:{overflow:"hidden"}},{default:s(()=>[n(u,{style:{"font-size":"12px",opacity:"0.8","margin-bottom":"8px"}},{default:s(()=>[I(w(o.deptName),1)]),_:2},1024)]),_:2},1024)]),_:2},1024),n(a,{width:"50px",align:"center"},{default:s(()=>[n(k,{onClick:se=>$(o),"model-value":"adtec-close",style:{opacity:"0.8",cursor:"pointer"}},null,8,["onClick"])]),_:2},1024)]),_:2},1024)]))),128))]),_:1})]),_:1})]),_:1})]),_:1})),[[i,C.value]])}}}),Le=le(oe,[["__scopeId","data-v-22875bfe"]]);export{Le as default};
@@ -1 +1 @@
1
- import{_ as o}from"../../../chunks/DictDisplay.vue_vue_type_script_setup_true_lang-DiFlFWi1.js";import"vue";import"../../hooks/useDictHooks.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/behaviorTrack.js";import"crypto-js/enc-base64";import"crypto-js/enc-utf8";import"../../utils/behaviorContext.js";import"../../utils/dateTime.js";import"element-plus";import"../../utils/frontendBus.js";import"../../utils/globalLoading.js";import"../../utils/workflowTaskContext.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-DQXuYsW_.js";export{o as default};
1
+ import{_ as o}from"../../../chunks/DictDisplay.vue_vue_type_script_setup_true_lang-DiFlFWi1.js";import"vue";import"../../hooks/useDictHooks.js";import"../../api/SysDictCacheApi.js";import"../../utils/request.js";import"../../utils/AxiosConfig.js";import"axios";import"../../utils/uuid.js";import"uuid";import"../../utils/encrypt.js";import"jsencrypt";import"../../utils/behaviorTrack.js";import"crypto-js/enc-base64";import"crypto-js/enc-utf8";import"../../utils/behaviorContext.js";import"../../utils/dateTime.js";import"element-plus";import"../../utils/frontendBus.js";import"../../utils/globalLoading.js";import"../../utils/workflowTaskContext.js";import"../../config/GlobalLoadingConfig.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-DQXuYsW_.js";export{o as default};
@@ -1 +1 @@
1
- import{_ as m}from"../../../chunks/DragHandleIcon.vue_vue_type_script_setup_true_lang-Cu9FA2nn.js";import"vue";export{m as default};
1
+ import{_ as m}from"../../../chunks/DragHandleIcon.vue_vue_type_script_setup_true_lang-DnMWn5jY.js";import"vue";export{m as default};
@@ -1 +1 @@
1
- import{defineComponent as E,ref as u,onBeforeUnmount as R,onDeactivated as $,onActivated as K,watch as L,openBlock as i,createElementBlock as m,renderSlot as p,createTextVNode as F,createCommentVNode as N}from"vue";import{useThrottleFn as T,useResizeObserver as V}from"@vueuse/core";import{IFrameManager as a}from"./IframeOptions.js";import{v4 as b}from"uuid";import{_ as D}from"../../../chunks/_plugin-vue_export-helper-DlAUqK2U.js";const M={key:0,class:"k-frame-tips"},O={key:1,class:"k-frame-tips"},S={key:2,class:"k-frame-tips"},U=E({name:"KFrame",__name:"KFrame",props:{src:{default:""},zIndex:{},keepAlive:{type:Boolean,default:!0}},emits:["loaded","error"],setup(v,{expose:g,emit:y}){const o=v,k=y,t=`kFrame-${b().replaceAll("-","")}`,s=u(),n=u(!1),d=u(!1);let l=!1;const c=()=>{const{x:e,y:r,width:B,height:I}=s.value?.getBoundingClientRect()||{};return{left:e||0,top:r||0,width:B||0,height:I||0,zIndex:o.zIndex??"auto"}},h=()=>{d.value=!1,n.value=!0,a.createFame({uid:t,name:t,src:o.src,onLoad:_,onError:w,allow:"fullscreen;autoplay"},c())},_=e=>{n.value=!1,k("loaded",e)},w=e=>{n.value=!1,d.value=!0,k("error",e)},x=()=>{a.showFrame(t,c())},z=()=>{a.hideFrame(t)},C=T(()=>{a.resizeFrame(t,c())}),f=()=>{a.destroyFrame(t)},A=()=>a.getFrame(t);return V(s,()=>{C()}),R(()=>{f(),l=!1}),$(()=>{o.keepAlive?z():f()}),K(()=>{if(o.keepAlive){x();return}l&&h()}),L(()=>[s.value,o.src],(e,r)=>{e&&r?(h(),l=!0):(f(),l=!1)},{immediate:!0}),g({getRef:()=>A()?.instance}),(e,r)=>(i(),m("div",{ref_key:"frameContainer",ref:s,class:"k-frame"},[v.src?n.value?(i(),m("span",O,[p(e.$slots,"loading",{},()=>[r[1]||(r[1]=F("加载中... ",-1))],!0)])):d.value?(i(),m("span",S,[p(e.$slots,"error",{},()=>[r[2]||(r[2]=F("加载失败 ",-1))],!0)])):N("v-if",!0):(i(),m("span",M,[p(e.$slots,"placeholder",{},()=>[r[0]||(r[0]=F("暂无数据",-1))],!0)]))],512))}}),P=D(U,[["__scopeId","data-v-5980ccdc"]]);export{P as default};
1
+ import{defineComponent as E,ref as u,onBeforeUnmount as R,onDeactivated as $,onActivated as K,watch as L,openBlock as i,createElementBlock as m,renderSlot as p,createTextVNode as F,createCommentVNode as N}from"vue";import{useThrottleFn as S,useResizeObserver as T}from"@vueuse/core";import{IFrameManager as a}from"./IframeOptions.js";import{createSimpleUuid as U}from"../../utils/uuid.js";import{_ as V}from"../../../chunks/_plugin-vue_export-helper-DlAUqK2U.js";import"uuid";const b={key:0,class:"k-frame-tips"},D={key:1,class:"k-frame-tips"},M={key:2,class:"k-frame-tips"},O=E({name:"KFrame",__name:"KFrame",props:{src:{default:""},zIndex:{},keepAlive:{type:Boolean,default:!0}},emits:["loaded","error"],setup(v,{expose:g,emit:y}){const o=v,k=y,t=`kFrame-${U()}`,s=u(),n=u(!1),d=u(!1);let l=!1;const f=()=>{const{x:e,y:r,width:I,height:A}=s.value?.getBoundingClientRect()||{};return{left:e||0,top:r||0,width:I||0,height:A||0,zIndex:o.zIndex??"auto"}},h=()=>{d.value=!1,n.value=!0,a.createFame({uid:t,name:t,src:o.src,onLoad:_,onError:w,allow:"fullscreen;autoplay"},f())},_=e=>{n.value=!1,k("loaded",e)},w=e=>{n.value=!1,d.value=!0,k("error",e)},x=()=>{a.showFrame(t,f())},z=()=>{a.hideFrame(t)},C=S(()=>{a.resizeFrame(t,f())}),c=()=>{a.destroyFrame(t)},B=()=>a.getFrame(t);return T(s,()=>{C()}),R(()=>{c(),l=!1}),$(()=>{o.keepAlive?z():c()}),K(()=>{if(o.keepAlive){x();return}l&&h()}),L(()=>[s.value,o.src],(e,r)=>{e&&r?(h(),l=!0):(c(),l=!1)},{immediate:!0}),g({getRef:()=>B()?.instance}),(e,r)=>(i(),m("div",{ref_key:"frameContainer",ref:s,class:"k-frame"},[v.src?n.value?(i(),m("span",D,[p(e.$slots,"loading",{},()=>[r[1]||(r[1]=F("加载中... ",-1))],!0)])):d.value?(i(),m("span",M,[p(e.$slots,"error",{},()=>[r[2]||(r[2]=F("加载失败 ",-1))],!0)])):N("v-if",!0):(i(),m("span",b,[p(e.$slots,"placeholder",{},()=>[r[0]||(r[0]=F("暂无数据",-1))],!0)]))],512))}}),Q=V(O,[["__scopeId","data-v-f4d44386"]]);export{Q as default};