adtec-hnyzfc-core-package 1.5.2 → 1.5.4

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
@@ -0,0 +1,2 @@
1
+ import{defineComponent as J,useAttrs as K,useSlots as Q,ref as i,computed as n,onMounted as X,onUpdated as Y,onBeforeUnmount as Z,openBlock as g,createBlock as ee,unref as H,normalizeProps as te,guardReactiveProps as oe,withCtx as j,createElementVNode as w,normalizeClass as I,renderSlot as L,createTextVNode as M,toDisplayString as h,createCommentVNode as x,createElementBlock as T,Fragment as re,withModifiers as ne,nextTick as b}from"vue";import{ElTooltip as le}from"element-plus";const se={class:"adtec-copy-tooltip__body"},ie=["innerHTML"],ae={key:0,class:"adtec-copy-tooltip__copy-bar"},pe=J({name:"ElCopyTooltip",inheritAttrs:!1,__name:"ElCopyTooltip",setup(ce){const o=K(),C=Q(),O=i(),p=i(),v=i(!1),d=i(!1),A=i(!1),m=i(!1);let a,c;const l=n(()=>{const e=o.content;return e==null?"":String(e)}),V=n(()=>o.rawContent===!0||o["raw-content"]===!0),W=n(()=>!!C.content||l.value.trim().length>0),u=n(()=>{const e=o["overflow-only"]??o.overflowOnly;if(e!==void 0)return e!==!1&&e!=="false"}),R=n(()=>u.value===void 0?d.value:u.value),S=n(()=>u.value===void 0?d.value:u.value),_=()=>{const e=o["virtual-triggering"]??o.virtualTriggering;return e===!0||e===""},q=n(()=>!_()&&!A.value),k=e=>String(e??"").replace(/\s+/g," ").trim(),z=e=>e.matches('button, a, input, textarea, select, [role="button"], svg, .el-icon')?!0:!!e.querySelector('button, a, input, textarea, select, [role="button"], svg, .el-icon'),N=e=>e.scrollWidth>e.clientWidth+1||e.scrollHeight>e.clientHeight+1?!0:Array.from(e.querySelectorAll("*")).some(t=>t.scrollWidth>t.clientWidth+1||t.scrollHeight>t.clientHeight+1),P=e=>{if(_()||z(e))return!1;const t=k(e.innerText||e.textContent);if(!t)return!1;const r=k(l.value);return r&&r!==t?!1:Array.from(e.querySelectorAll("*")).every(y=>y.children.length===0)},s=()=>{const e=p.value;if(!e)return;A.value=_()||z(e);const t=u.value,r=P(e),y=t===void 0?r:t,f=t===void 0?r:t;if(d.value!==r){d.value=r,b(s);return}if(R.value!==y){b(s);return}const E=f&&N(e);m.value!==E&&(m.value=E)},B=()=>{b(()=>{s(),!c&&p.value&&typeof ResizeObserver<"u"&&(c=new ResizeObserver(s),c.observe(p.value))})},U=e=>Array.isArray(e)?e.filter(Boolean).map(t=>String(t)).join(" "):e&&typeof e=="object"?Object.entries(e).filter(([,t])=>t).map(([t])=>t).join(" "):e?String(e):"",$=n(()=>{const e=o["popper-class"]??o.popperClass;return["adtec-copy-tooltip-popper",U(e)].filter(Boolean).join(" ")}),D=n(()=>{const{"popper-class":e,popperClass:t,"overflow-only":r,overflowOnly:y,...f}=o;return{...f,"show-after":f["show-after"]??f.showAfter??1e3,effect:o.effect??"light","popper-class":$.value,disabled:o.disabled===!0||o.disabled===""||!W.value||S.value&&!m.value}});X(()=>{B(),window.addEventListener("resize",s)}),Y(B),Z(()=>{c?.disconnect(),c=void 0,window.removeEventListener("resize",s),a&&window.clearTimeout(a)});const F=async e=>{if(!e)return!1;try{if(navigator.clipboard?.writeText)return await navigator.clipboard.writeText(e),!0}catch{}const t=document.createElement("textarea");t.value=e,t.setAttribute("readonly",""),t.style.position="fixed",t.style.top="0",t.style.left="-9999px",t.style.opacity="0",document.body.appendChild(t),t.select();let r=!1;try{r=document.execCommand("copy")}catch{r=!1}return document.body.removeChild(t),r},G=async()=>{const e=(O.value?.innerText||l.value).trim();await F(e)&&(v.value=!0,a&&window.clearTimeout(a),a=window.setTimeout(()=>{v.value=!1},1500))};return(e,t)=>(g(),ee(H(le),te(oe(D.value)),{content:j(()=>[w("div",se,[w("div",{ref_key:"contentRef",ref:O,class:"adtec-copy-tooltip__content"},[L(e.$slots,"content",{},()=>[V.value?(g(),T("span",{key:0,innerHTML:l.value},null,8,ie)):(g(),T(re,{key:1},[M(h(l.value),1)],64))])],512),x(` 仅文本溢出类 tooltip(内容被省略、需要查看/复制全文)保留复制条;
2
+ 按钮/图标/输入控件及虚拟触发等交互型语义提示一律不显示复制功能 `),q.value?(g(),T("div",ae,[w("button",{type:"button",class:I(["adtec-copy-tooltip__copy-btn",{"is-copied":v.value}]),title:"复制内容",onClick:ne(G,["stop"])},h(v.value?"已复制":"复制"),3)])):x("v-if",!0)])]),default:j(()=>[w("span",{ref_key:"referenceRef",ref:p,class:I(["adtec-copy-tooltip__trigger",{"adtec-copy-tooltip__trigger--text":R.value,"adtec-copy-tooltip__trigger--overflow":S.value}])},[H(C).default?L(e.$slots,"default",{},()=>[M(h(l.value),1)],void 0,0):x("v-if",!0)],2)]),_:3},16))}});export{pe as _};
@@ -0,0 +1 @@
1
+ import{defineComponent as pe,ref as de,reactive as ie,onMounted as me,onUpdated as ye,onBeforeUnmount as ve,computed as E,resolveComponent as p,openBlock as c,createBlock as d,withKeys as he,withCtx as i,createCommentVNode as S,createVNode as C,createElementBlock as x,Fragment as F,renderList as T,normalizeClass as Y,createElementVNode as z,toDisplayString as A,mergeProps as y,createTextVNode as D,renderSlot as I,nextTick as L}from"vue";import{DATE_FORMAT as fe,formatDateTime as be}from"../src/utils/dateTime.js";const _e=["onMouseenter"],Ve={key:11,class:"el-desc-form__readonly-slot"},$="—",ke=pe({__name:"ElDescForm",props:{model:{},fields:{},rules:{default:()=>({})},column:{default:4},border:{type:Boolean,default:!0},readonly:{type:Boolean,default:!1},title:{},scrollToError:{type:Boolean,default:!0},scrollIntoViewOptions:{type:Boolean,default:()=>({behavior:"smooth",block:"center"})}},setup(a,{expose:K}){const h=a,V=de(),g=new Map,k=new Map,U=ie({}),w=e=>{const o=g.get(e),l=!!o&&o.scrollWidth>o.clientWidth;U[e]!==l&&(U[e]=l)},N=()=>{L(()=>{g.forEach((e,o)=>w(o))})},P=(e,o)=>{const l=o;if(g.get(e)===l){l&&w(e);return}if(k.get(e)?.disconnect(),k.delete(e),delete U[e],!l){g.delete(e);return}if(g.set(e,l),typeof ResizeObserver<"u"){const n=new ResizeObserver(()=>w(e));n.observe(l),k.set(e,n)}L(()=>w(e))};me(N),ye(N),ve(()=>{k.forEach(e=>e.disconnect()),k.clear(),g.clear()});const f=E(()=>Math.min(4,Math.max(1,h.column||4))),H=e=>{const o=V.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 s=document.activeElement;if(!s||!l.includes(s))return;const n=l.indexOf(s),u=e.shiftKey?-1:1,b=(n+u+l.length)%l.length;e.preventDefault();const _=l[b];_.focus();try{const m=_.value.length;_.setSelectionRange(m,m)}catch{}},j=E(()=>{const e={...h.rules};for(const o of h.fields)o.rules?.length&&(e[o.prop]=[...e[o.prop]||[],...o.rules]);return e}),W=E(()=>{const e=[];let o=0,l=0;const s=n=>{for(let u=0;u<n;u+=1)e.push({prop:`__descFormFiller${l++}`,label:"",type:"slot",span:1})};for(const n of h.fields){if(!(typeof n.show=="function"?n.show(h.model):n.show!==!1))continue;const b=Q(n),_=Math.min(Math.max(1,b.span??1),f.value);_>f.value-o&&(s(f.value-o),o=0),e.push(b),o+=_,o>=f.value&&(o=0)}return o>0&&s(f.value-o),e}),M=e=>{const o=e.props||{};return h.readonly===!0||e.readonly===!0||o.readonly===!0},B=(e,o)=>e===o||String(e)===String(o),R=(e,o)=>{if(!e?.length)return;const l=e.find(s=>B(s.value,o));return l===void 0?void 0:String(l.label)},O=(e,o)=>{if(e?.length)for(const l of e){if(B(l.value,o))return String(l.label??l.name??"");if(l.children?.length){const s=O(l.children,o);if(s)return s}}},G=(e,o)=>{let l=e||[];const s=[];for(const n of o){const u=l.find(b=>B(b.value,n));if(!u)break;s.push(String(u.label??u.name??"")),l=u.children||[]}return s.join(" / ")},v=e=>e.trim()||$,q=e=>{const o=h.model?.[e.prop];if(o==null||typeof o=="string"&&o.trim()===""||Array.isArray(o)&&o.length===0)return $;const l=e.props||{},s=e.options;if(e.type==="select")return Array.isArray(o)?v(o.map(n=>R(s,n)??String(n)).filter(Boolean).join("、")):v(R(s,o)??String(o));if(e.type==="radio")return v(R(s,o)??String(o));if(e.type==="checkbox"){const n=Array.isArray(o)?o:[o];return v(n.map(u=>R(s,u)??String(u)).filter(Boolean).join("、"))}if(e.type==="tree-select"){const n=s||l.data;return Array.isArray(o)?v(o.map(u=>O(n,u)??String(u)).filter(Boolean).join("、")):v(O(n,o)??String(o))}if(e.type==="cascader"){const n=G(s,Array.isArray(o)?o:[o]);return v(n||(Array.isArray(o)?o.join(" / "):String(o)))}if(e.type==="switch")return o===!0||o===1||o==="1"?l["active-text"]||"是":l["inactive-text"]||"否";if(e.type==="date"){const n=String(l.type||"date"),u=String(l.valueFormat||l.format||"")||(n==="year"?"YYYY":n==="month"?"YYYY-MM":n==="time"?"HH:mm:ss":fe);return v(be(String(o),{format:u})||String(o))}return v(String(o))},J=e=>!!j.value[e.prop]?.some(l=>l.required),Q=e=>{const o=l=>typeof l=="function"?l(h.model):l;return{...e,span:e.type==="textarea"?f.value:Math.min(Math.max(1,e.span??1),f.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 K({validate:e=>V.value?.validate(e),validateField:(e,o)=>V.value?.validateField(e,o),scrollToField:e=>V.value?.scrollToField(e),resetFields:()=>V.value?.resetFields(),clearValidate:()=>V.value?.clearValidate()}),(e,o)=>{const l=p("el-title"),s=p("el-icons"),n=p("el-tooltip"),u=p("el-input"),b=p("el-numeric-input"),_=p("el-option"),m=p("el-select"),X=p("el-date-picker"),Z=p("el-switch"),ee=p("el-radio"),oe=p("el-radio-group"),te=p("el-checkbox"),le=p("el-checkbox-group"),re=p("el-tree-select"),ne=p("el-cascader"),ae=p("el-form-item"),se=p("el-descriptions-item"),ce=p("el-descriptions"),ue=p("el-form");return c(),d(ue,{ref_key:"formRef",ref:V,class:"el-desc-form",model:a.model,rules:j.value,"validate-on-rule-change":!1,"scroll-to-error":a.scrollToError,"scroll-into-view-options":a.scrollIntoViewOptions,onKeydown:he(H,["tab"])},{default:i(()=>[S(" 内容块二级标题:弹窗/抽屉内表单区块统一用 el-desc-form title 声明式渲染,避免各页面手写 "),a.title?(c(),d(l,{key:0,level:"1",title:a.title,style:{"border-bottom":"var(--border)","margin-bottom":"8px"}},null,8,["title"])):S("v-if",!0),C(ce,{direction:"vertical",column:f.value,border:a.border},{default:i(()=>[(c(!0),x(F,null,T(W.value,t=>(c(),d(se,{key:t.prop,label:t.label||void 0,span:t.span},{label:i(()=>[t.label?(c(),x("span",{key:0,class:Y(["el-desc-form__label",{"el-desc-form__label--required":J(t)}])},[D(A(t.label)+" ",1),t.tip?(c(),d(n,{key:0,content:t.tip,placement:"top","popper-class":"el-desc-form-tip-popper"},{default:i(()=>[C(s,{"model-value":"adtec-info",class:"el-desc-form__label-tip"})]),_:1},8,["content"])):S("v-if",!0)],2)):S("v-if",!0)]),default:i(()=>[C(ae,{prop:M(t)?void 0:t.prop,class:Y({"el-desc-form__form-item--multiline":t.type==="textarea"}),style:{"margin-bottom":"0"},"hide-required-asterisk":""},{default:i(()=>[S(" 只读模式:统一处理文本溢出,只有内容超出单元格宽度时才打开 tooltip "),M(t)&&t.type&&t.type!=="slot"?(c(),d(n,{key:0,content:q(t),disabled:!U[t.prop],effect:"light",placement:"top","popper-class":"el-desc-form-readonly-tip-popper"},{default:i(()=>[z("span",{class:Y(["el-desc-form__readonly-text",{"el-desc-form__readonly-text--multiline":t.type==="textarea"}]),onMouseenter:r=>w(t.prop)},[z("span",{ref_for:!0,ref:r=>P(t.prop,r),class:"el-desc-form__readonly-text-content"},A(q(t)),513)],42,_e)]),_:2},1032,["content","disabled"])):t.type==="input"?(c(),d(u,y({key:1,modelValue:a.model[t.prop],"onUpdate:modelValue":r=>a.model[t.prop]=r},{ref_for:!0},t.props,{placeholder:t.placeholder}),null,16,["modelValue","onUpdate:modelValue","placeholder"])):t.type==="textarea"?(c(),d(u,y({key:2,modelValue:a.model[t.prop],"onUpdate:modelValue":r=>a.model[t.prop]=r,type:"textarea",autosize:{minRows:2,maxRows:4}},{ref_for:!0},t.props,{placeholder:t.placeholder}),null,16,["modelValue","onUpdate:modelValue","placeholder"])):t.type==="number"?(c(),d(b,y({key:3,modelValue:a.model[t.prop],"onUpdate:modelValue":r=>a.model[t.prop]=r},{ref_for:!0},t.props),null,16,["modelValue","onUpdate:modelValue"])):t.type==="select"?(c(),d(m,y({key:4,modelValue:a.model[t.prop],"onUpdate:modelValue":r=>a.model[t.prop]=r},{ref_for:!0},t.props,{placeholder:t.placeholder,clearable:""}),{default:i(()=>[(c(!0),x(F,null,T(t.options,r=>(c(),d(_,{key:r.value,label:r.label,value:r.value,disabled:r.disabled},null,8,["label","value","disabled"]))),128))]),_:2},1040,["modelValue","onUpdate:modelValue","placeholder"])):t.type==="date"?(c(),d(X,y({key:5,modelValue:a.model[t.prop],"onUpdate:modelValue":r=>a.model[t.prop]=r},{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"?(c(),d(Z,y({key:6,modelValue:a.model[t.prop],"onUpdate:modelValue":r=>a.model[t.prop]=r},{ref_for:!0},t.props),null,16,["modelValue","onUpdate:modelValue"])):t.type==="radio"?(c(),d(oe,y({key:7,modelValue:a.model[t.prop],"onUpdate:modelValue":r=>a.model[t.prop]=r},{ref_for:!0},t.props),{default:i(()=>[(c(!0),x(F,null,T(t.options,r=>(c(),d(ee,{key:r.value,value:r.value},{default:i(()=>[D(A(r.label),1)]),_:2},1032,["value"]))),128))]),_:2},1040,["modelValue","onUpdate:modelValue"])):t.type==="checkbox"?(c(),d(le,y({key:8,modelValue:a.model[t.prop],"onUpdate:modelValue":r=>a.model[t.prop]=r},{ref_for:!0},t.props),{default:i(()=>[(c(!0),x(F,null,T(t.options,r=>(c(),d(te,{key:r.value,value:r.value},{default:i(()=>[D(A(r.label),1)]),_:2},1032,["value"]))),128))]),_:2},1040,["modelValue","onUpdate:modelValue"])):t.type==="tree-select"?(c(),d(re,y({key:9,modelValue:a.model[t.prop],"onUpdate:modelValue":r=>a.model[t.prop]=r},{ref_for:!0},t.props,{placeholder:t.placeholder,style:{width:"100%"}}),null,16,["modelValue","onUpdate:modelValue","placeholder"])):t.type==="cascader"?(c(),d(ne,y({key:10,modelValue:a.model[t.prop],"onUpdate:modelValue":r=>a.model[t.prop]=r,options:t.options},{ref_for:!0},t.props,{style:{width:"100%"}}),null,16,["modelValue","onUpdate:modelValue","options"])):M(t)?(c(),x("div",Ve,[I(e.$slots,t.slot||t.prop,{field:t,model:a.model})])):I(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","scroll-to-error","scroll-into-view-options"])}}});export{ke as _};
@@ -25,7 +25,11 @@ declare const _default: {
25
25
  /**
26
26
  * 通过鉴权接口下载附件,不向前端暴露存储地址。
27
27
  * format:original(默认,原始附件)/ pdf(Office 文档导出 PDF,后端转换后同样叠加水印)。
28
+ * 返回后端 Content-Disposition 指定的文件名,前端据此命名可保证 .pdf 等后缀与内容一致。
28
29
  */
29
- downloadFile(id: string, format?: string): Promise<Blob>;
30
+ downloadFile(id: string, format?: string): Promise<{
31
+ blob: Blob;
32
+ fileName?: string;
33
+ }>;
30
34
  };
31
35
  export default _default;
@@ -1 +1 @@
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,s){return i({url:t+"preview/download/"+e+(s?"?format="+s:""),method:"get",responseType:"blob"}).then(o=>o.data)}};export{I as default};
1
+ import o 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 r="/api/doc/",n=e=>{if(!e)return;const t=/filename\*=(?:UTF-8|utf-8)''([^;]+)/i.exec(e);if(t?.[1])try{return decodeURIComponent(t[1].trim())}catch{}return/filename="?([^";]+)"?/i.exec(e)?.[1]?.trim()},x={getUpLoadFilesVoById(e){return o.get(r+"getUpLoadFilesVoById/"+e)},getFileAccessAddress(e){return o.get(r+"getFileAccessAddress",{id:e})},async createRichTextImageUrl(e){const{url:t}=await this.createPreviewSession(e),s=/\/preview\/fileView\/([^/]+)\//.exec(t||"");if(!s?.[1])throw new Error("预览会话创建失败");return`${r}preview/fileView/${encodeURIComponent(s[1])}/image`},getUpLoadFilesByBussinessIds(e,t){const s=t===void 0?r+"getUpLoadFilesByBussinessIds":r+"getUpLoadFilesByBussinessIds/"+t;return o.post(s,e)},delSysUploadFile(e){return o.get(r+"delSysUploadFile/"+e)},getBusinessDocuments(e,t){return o.get(r+"getBusinessDocuments/"+e+"/"+t)},fileStatusConfirmation(e){return o.post(r+"fileStatusConfirmation",e)},delSysUploadFiles(e){return o.post(r+"delSysUploadFiles",e)},updateFilesCreateBy(e,t){return o.post(r+"updateFilesCreateBy",{ids:e,createBy:t})},createPreviewSession(e){return o.post(r+"preview/session/"+e)},async downloadFile(e,t){const s=await i({url:r+"preview/download/"+e+(t?"?format="+t:""),method:"get",responseType:"blob"});return{blob:s.data,fileName:n(s.headers?.["content-disposition"])}}};export{x as default};
@@ -3,5 +3,10 @@ import type { IMdmEmployee } from '../interface/IMdmEmployee';
3
3
  import type { PageData } from '../interface/PageData';
4
4
  declare const _default: {
5
5
  getMdmEmployeeListByIds(query: IMdmEmployeeQuery): Promise<PageData<IMdmEmployee>>;
6
+ /**
7
+ * 按人员编码精确查询人员基础信息。
8
+ * 用于“库里存编码、界面回显姓名/已选”的场景(编码 -> 人员信息)。
9
+ */
10
+ getMdmEmployeeBaseInfo(userCode: string): Promise<IMdmEmployee>;
6
11
  };
7
12
  export default _default;
@@ -1 +1 @@
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
+ 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/",c={getMdmEmployeeListByIds(t){return o.post(m+"getMdmEmployeeListByIds",t)},getMdmEmployeeBaseInfo(t){return o.get(m+"getMdmEmployeeBaseInfo",{userCode:t})}};export{c as default};
@@ -1 +1 @@
1
- import{_ as o}from"../../../chunks/ElDescForm.vue_vue_type_style_index_0_lang-BU3FMUMx.js";import"vue";import"../../utils/dateTime.js";export{o as default};
1
+ import{_ as o}from"../../../chunks/ElDescForm.vue_vue_type_style_index_0_lang-DRKuI9Xa.js";import"vue";import"../../utils/dateTime.js";export{o as default};
@@ -1 +1 @@
1
- import{defineComponent as j,computed as A,ref as r,inject as U,watch as f,nextTick as C,onMounted as $,onUnmounted as I,resolveComponent as k,openBlock as K,createBlock as M,withCtx as o,createVNode as l,createElementVNode as S,normalizeStyle as W,renderSlot as q,createTextVNode as h,normalizeClass as F,withDirectives as m,unref as H,vShow as _,toDisplayString as G}from"vue";import{useWindowSize as J}from"@vueuse/core";import{useRouter as L}from"vue-router";import{ArrowDown as O,ArrowUp as P}from"@element-plus/icons-vue";import{_ as g}from"../../../chunks/ElFlex.vue_vue_type_script_setup_true_lang-DYk3SQcE.js";import{frontendBus as B}from"../../utils/frontendBus.js";import{_ as Q}from"../../../chunks/_plugin-vue_export-helper-DlAUqK2U.js";import"../../interface/enum/FlexEnum.js";import"../icon/ElIcons.vue.js";const X=j({__name:"ElSearch",emits:["reset","search"],setup(Y,{emit:N}){const b=L(),z=A(()=>b.currentRoute.value.name),s=r(),e=r("展开"),t=r("95px"),a=r(!1),n=r(),x=J(),d=U("collapsed"),u=r(!1),w=p=>{u.value=p};f(()=>d?.value,()=>{u.value=d?.value??!1}),f(u,()=>{console.log("collapsedSearch"),i()}),f(x.width,()=>{i()});const i=()=>{C(()=>{setTimeout(()=>{n.value?.children.length>0&&(n.value.children[0].offsetHeight>95?n.value.children[0].offsetHeight<=95?a.value=!1:(a.value=!0,t.value="95px",e.value="展开"):n.value.children[0].offsetHeight!==0?(a.value=!1,t.value=n.value.children[0].offsetHeight+15+"px",e.value="收起"):i())},200)})};f(x.height,()=>{i()});const D=()=>{t.value==="95px"?(t.value=s.value.children[0].scrollHeight+15+"px",e.value="收起"):(t.value="95px",e.value="展开")},E=()=>{y("reset")},R=()=>{y("search")},T=()=>{},y=N;return $(()=>{u.value=d?.value,B.on("collapsedChangeBus",w),C(()=>{s.value.children[0].scrollHeight>95?(a.value=!0,t.value="95px",e.value="展开"):(a.value=!1,t.value=s.value.children[0].scrollHeight+15+"px",e.value="收起")})}),I(()=>{B.off("collapsedChangeBus",w)}),(p,c)=>{const v=k("el-button"),V=k("el-icon");return K(),M(g,{onKeypress:T,height:t.value,style:{background:"#ffffff",padding:"15px 10px 15px 15px"}},{default:o(()=>[l(g,{style:{overflow:"hidden"}},{default:o(()=>[S("div",{ref_key:"ref_content",ref:s,style:W([{width:"100%",overflow:"hidden"},{height:t.value}])},[S("div",{ref_key:"ref_div",ref:n},[q(p.$slots,"default",{},void 0,!0)],512)],4)]),_:3}),l(g,{width:"240px",justify:"flex-end",align:"flex-start",style:{"padding-top":"30px"}},{default:o(()=>[l(v,{onClick:E},{default:o(()=>[...c[0]||(c[0]=[h("重置",-1)])]),_:1}),l(v,{type:"primary",onClick:R,class:F(z.value+"_search")},{default:o(()=>[...c[1]||(c[1]=[h("查询",-1)])]),_:1},8,["class"]),m(l(v,{type:"text",onClick:D},{default:o(()=>[l(V,null,{default:o(()=>[m(l(H(O),null,null,512),[[_,e.value==="展开"]]),m(l(H(P),null,null,512),[[_,e.value==="收起"]])]),_:1}),h(G(e.value),1)]),_:1},512),[[_,a.value]])]),_:1})]),_:3},8,["height"])}}}),ue=Q(X,[["__scopeId","data-v-4529cc32"]]);export{ue as default};
1
+ import{defineComponent as U,computed as V,ref as s,inject as j,watch as d,nextTick as C,onMounted as I,onUnmounted as K,resolveComponent as k,openBlock as $,createBlock as M,withKeys as P,withCtx as a,createVNode as l,createElementVNode as S,normalizeStyle as W,renderSlot as X,createTextVNode as m,normalizeClass as q,withDirectives as _,unref as H,vShow as g,toDisplayString as F}from"vue";import{useWindowSize as G}from"@vueuse/core";import{useRouter as J}from"vue-router";import{ArrowDown as L,ArrowUp as O}from"@element-plus/icons-vue";import{_ as x}from"../../../chunks/ElFlex.vue_vue_type_script_setup_true_lang-DYk3SQcE.js";import{frontendBus as N}from"../../utils/frontendBus.js";import{_ as Q}from"../../../chunks/_plugin-vue_export-helper-DlAUqK2U.js";import"../../interface/enum/FlexEnum.js";import"../icon/ElIcons.vue.js";const Y=U({__name:"ElSearch",emits:["reset","search"],setup(Z,{emit:T}){const B=J(),E=V(()=>B.currentRoute.value.name),i=s(),e=s("展开"),t=s("95px"),n=s(!1),r=s(),w=G(),v=j("collapsed"),c=s(!1),y=u=>{c.value=u};d(()=>v?.value,()=>{c.value=v?.value??!1}),d(c,()=>{console.log("collapsedSearch"),f()}),d(w.width,()=>{f()});const f=()=>{C(()=>{setTimeout(()=>{r.value?.children.length>0&&(r.value.children[0].offsetHeight>95?r.value.children[0].offsetHeight<=95?n.value=!1:(n.value=!0,t.value="95px",e.value="展开"):r.value.children[0].offsetHeight!==0?(n.value=!1,t.value=r.value.children[0].offsetHeight+15+"px",e.value="收起"):f())},200)})};d(w.height,()=>{f()});const A=()=>{t.value==="95px"?(t.value=i.value.children[0].scrollHeight+15+"px",e.value="收起"):(t.value="95px",e.value="展开")},R=()=>{p("reset")},b=()=>{p("search")},z=u=>{const o=u.target?.tagName;o!=="INPUT"&&o!=="TEXTAREA"||p("search")},p=T;return I(()=>{c.value=v?.value,N.on("collapsedChangeBus",y),C(()=>{i.value.children[0].scrollHeight>95?(n.value=!0,t.value="95px",e.value="展开"):(n.value=!1,t.value=i.value.children[0].scrollHeight+15+"px",e.value="收起")})}),K(()=>{N.off("collapsedChangeBus",y)}),(u,o)=>{const h=k("el-button"),D=k("el-icon");return $(),M(x,{onKeydown:P(z,["enter"]),height:t.value,style:{background:"#ffffff",padding:"15px 10px 15px 15px"}},{default:a(()=>[l(x,{style:{overflow:"hidden"}},{default:a(()=>[S("div",{ref_key:"ref_content",ref:i,style:W([{width:"100%",overflow:"hidden"},{height:t.value}])},[S("div",{ref_key:"ref_div",ref:r},[X(u.$slots,"default",{},void 0,!0)],512)],4)]),_:3}),l(x,{width:"240px",justify:"flex-end",align:"flex-start",style:{"padding-top":"30px"}},{default:a(()=>[l(h,{onClick:R},{default:a(()=>[...o[0]||(o[0]=[m("重置",-1)])]),_:1}),l(h,{type:"primary",onClick:b,class:q(E.value+"_search")},{default:a(()=>[...o[1]||(o[1]=[m("查询",-1)])]),_:1},8,["class"]),_(l(h,{type:"text",onClick:A},{default:a(()=>[l(D,null,{default:a(()=>[_(l(H(L),null,null,512),[[g,e.value==="展开"]]),_(l(H(O),null,null,512),[[g,e.value==="收起"]])]),_:1}),m(F(e.value),1)]),_:1},512),[[g,n.value]])]),_:1})]),_:3},8,["height"])}}}),ie=Q(Y,[["__scopeId","data-v-748add82"]]);export{ie as default};
@@ -6,6 +6,11 @@ interface Props<T extends IpageDataQuery, E extends IMdmEmployee> {
6
6
  defalutQueryParam?: any;
7
7
  multiple?: boolean;
8
8
  showOrgInfo?: boolean;
9
+ /**
10
+ * 已选人员编码:打开时按编码查出人员信息放进“已选”列表并勾选,用于回显。
11
+ * 已选人员不在当前查询页/部门时同样会回显。
12
+ */
13
+ selectedUserCodes?: string[];
9
14
  }
10
15
  type __VLS_Props = Props<IMdmEmployeeQuery, IMdmEmployee>;
11
16
  declare const _default: import("vue").DefineComponent<__VLS_Props, {
@@ -20,5 +25,6 @@ declare const _default: import("vue").DefineComponent<__VLS_Props, {
20
25
  fetchData: (data: IMdmEmployeeQuery) => Promise<PageData<IMdmEmployee>>;
21
26
  defalutQueryParam: any;
22
27
  showOrgInfo: boolean;
28
+ selectedUserCodes: string[];
23
29
  }, {}, {}, {}, string, import("vue").ComponentProvideOptions, false, {}, any>;
24
30
  export default _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"../../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
+ import{defineComponent as le,ref as v,reactive as oe,resolveComponent as c,resolveDirective as ae,withDirectives as re,openBlock as w,createBlock as U,withCtx as g,createVNode as u,unref as s,createCommentVNode as E,createElementBlock as N,Fragment as se,renderList as ie,createTextVNode as ne,toDisplayString as de,mergeProps as ce,nextTick as O}from"vue";import"@vueuse/core";import{ElMessage as ue}from"element-plus";import pe from"../../api/DeptInfoApi.js";import P from"../../api/EmployeeInfoApi.js";import{useResetRefHooks as x}from"../../hooks/useResetRefHooks.js";import I from"../../utils/FrameworkUtils.js";import{checkboxColumn as me,radioColumn as fe}from"../../config/vxeSelectColumn.js";import{_ as ve}from"../../../chunks/ElTagDisplay.vue_vue_type_script_setup_true_lang-DQXuYsW_.js";/* empty css */import{_ as ge}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 he={key:0,class:"user-form__selected"},_e=le({__name:"comp.userForm",props:{fetchData:{type:Function,default:P.getMdmEmployeeListByIds},defalutQueryParam:{default:{disabled:!1,deptIds:[]}},multiple:{type:Boolean,default:!0},showOrgInfo:{type:Boolean,default:!0},selectedUserCodes:{default:()=>[]}},emits:["success"],setup(z,{expose:B,emit:D}){const n=z,[o,S]=x({current:1,size:I.getPageSize(),...n.defalutQueryParam}),L=D,_=v([]),y=v(!1),R=v(),m=v(),f=v(""),h=v(),b=v(),[a,Q]=x([]),[p,T]=x({records:[],total:0,pages:0,current:1}),F=[n.multiple?{...me,checkboxConfig:{checkMethod:({row:e})=>e.isValid==="1",trigger:"row"}}:fe,{align:"left",field:"name",title:"用户姓名",width:120,showOverflow:!0},{align:"left",field:"postName",title:"岗位名称",width:120,showOverflow:!0},{align:"left",field:"deptName",title:"所属部门",showOverflow:!0},...n.showOrgInfo?[{align:"left",field:"orgName",title:"所属组织",width:220,showOverflow:!0}]:[]],M=oe({border:!0,height:"100%",columnConfig:{resizable:!1},radioConfig:{highlight:!0,trigger:"row"},checkboxConfig:{highlight:!1,range:!1,trigger:"row"},columns:F}),q=({row:e,rowIndex:t})=>{if(e.isValid!=="1")return"table-row-disabled"},A=async()=>{try{_.value=await pe.getMdmOrgDeptTree({})}catch(e){I.messageError(e)}},J=e=>{e.id===f.value?(h.value=void 0,f.value="",m.value?.clearRadioRow()):(f.value=e.id,h.value=e,m.value?.setRadioRow(e))},K=({row:e,checked:t})=>{e&&(t?a.value.some(l=>l.code===e.code)||a.value.push(e):a.value=a.value.filter(l=>l.code!==e.code))},$=({checked:e})=>{const t=p.value?.records??[];if(e){const l=a.value.map(r=>r.code);t.forEach(r=>{l.includes(r.code)||a.value.push(r)})}else{const l=t.map(r=>r.code);a.value=a.value.filter(r=>!l.includes(r.code))}},H=({row:e})=>{n.multiple||J(e)},V=async()=>{y.value=!0,_.value&&_.value.length||await A(),Q(),T(),R.value?.resetFields(),b.value?.setCheckedKeys([]),S(),o.value={...o.value,...n.defalutQueryParam},await j(),O(()=>{b.value?.setCheckedKeys(o.value.deptIds??[]),C()})},j=async()=>{const e=(n.selectedUserCodes||[]).filter(Boolean);if(!e.length)return;const t=[];await Promise.all(e.map(async l=>{try{const r=await P.getMdmEmployeeBaseInfo(l);r?.code&&t.push(r)}catch{}})),a.value=e.map(l=>t.find(r=>r.code===l)).filter(Boolean),!n.multiple&&a.value.length&&(f.value=a.value[0].id,h.value=a.value[0])},C=async()=>{try{y.value=!0;let e=[],t;o.value.deptIds&&o.value.deptIds.length&&o.value.deptIds.forEach(d=>{_.value.findIndex(k=>k.id===d)>=0?t=d:e.push(d)});let l=JSON.parse(JSON.stringify(o.value));l.deptIds=e,l.orgId=t,p.value=await n.fetchData(l);const r=a.value.map(d=>d.code);O(()=>{p.value.records.forEach(d=>{r.includes(d.code)&&(n.multiple?m.value?.setCheckboxRow(d,!0):d.id===f.value&&m.value?.setRadioRow(d))})}),o.value.current=p.value.current}catch(e){I.messageError(e)}finally{y.value=!1}},G=e=>{a.value=a.value.filter(l=>l.code!==e.code);const t=p.value.records.find(l=>l.code===e.code);t&&(n.multiple?m.value?.setCheckboxRow(t,!1):t.id===f.value&&(h.value=void 0,f.value="",m.value?.clearRadioRow()))};return B({confirm:async()=>{!a.value.length&&n.multiple||!h.value&&!n.multiple?ue.warning("未选择需要新增的人员!"):L("success",n.multiple?a.value:h.value)},resetQuery:V}),(e,t)=>{const l=c("el-tree-select"),r=c("el-form-item"),d=c("el-input"),k=c("el-form"),W=c("el-search"),X=c("el-title"),Y=c("el-tooltip"),Z=c("el-grid"),ee=c("el-flex"),te=ae("loading");return re((w(),U(ee,{vertical:!0,gap:"var(--space-8)"},{default:g(()=>[u(W,{class:"border",style:{"border-bottom":"var(--border)"},onReset:V,onSearch:C},{default:g(()=>[u(k,{ref_key:"queryRef",ref:R,inline:!0,model:s(o),style:{width:"100%",height:"100%"},labelPosition:"top",size:"default"},{default:g(()=>[u(r,{style:{width:"220px"},label:"所属部门",prop:"deptIds"},{default:g(()=>[u(l,{ref_key:"ref_tree",ref:b,"check-strictly":"",disabled:s(o).disabled,modelValue:s(o).deptIds,"onUpdate:modelValue":t[0]||(t[0]=i=>s(o).deptIds=i),data:_.value,filterable:"",multiple:"","default-expand-all":!0,props:{label:"name",children:"children",disabled:i=>i.isValid!=="1"||s(o).disabled},"render-after-expand":!1,clearable:"","collapse-tags":"","collapse-tags-tooltip":"","node-key":"id",placeholder:"请选择所属部门"},null,8,["disabled","modelValue","data","props"])]),_:1}),u(r,{style:{width:"220px"},label:"人员编码或名称",prop:"codeorname"},{default:g(()=>[u(d,{modelValue:s(o).codeorname,"onUpdate:modelValue":t[1]||(t[1]=i=>s(o).codeorname=i),clearable:"",placeholder:"请输入人员编码或名称"},null,8,["modelValue"])]),_:1})]),_:1},8,["model"])]),_:1}),u(X,{class:"border",style:{"border-bottom":"var(--border)"},title:"人员列表"}),E(" 已选人员:间距由容器 gap 统一控制(空列表不渲染,避免多出一段 8px 间距) "),s(a).length?(w(),N("div",he,[(w(!0),N(se,null,ie(s(a),i=>(w(),U(ve,{key:i.code,closable:"",onClose:we=>G(i)},{default:g(()=>[u(Y,{placement:"top",content:i.deptName},{default:g(()=>[ne(de(i.name),1)]),_:2},1032,["content"])]),_:2},1032,["onClose"]))),128))])):E("v-if",!0),u(Z,ce({ref_key:"gridRef",ref:m},M,{data:s(p)?.records,total:s(p)?.total?s(p)?.total:0,pagination:"","current-page":s(o).current,"onUpdate:currentPage":t[2]||(t[2]=i=>s(o).current=i),"page-size":s(o).size,"onUpdate:pageSize":t[3]||(t[3]=i=>s(o).size=i),"row-class-name":q,style:{width:"100%"},onCheckboxChange:K,onCheckboxAll:$,onCellClick:H,onCurrentChange:C}),null,16,["data","total","current-page","page-size"])]),_:1})),[[te,y.value]])}}}),Ge=ge(_e,[["__scopeId","data-v-c6576c13"]]);export{Ge as default};
@@ -1 +1 @@
1
- import{_ as o}from"../../../chunks/ElCopyTooltip.vue_vue_type_script_setup_true_lang-Qg1P3If6.js";/* empty css */import"vue";import"element-plus";export{o as default};
1
+ import{_ as o}from"../../../chunks/ElCopyTooltip.vue_vue_type_script_setup_true_lang-MdgIHwF2.js";/* empty css */import"vue";import"element-plus";export{o as default};
@@ -55,6 +55,7 @@ declare const __VLS_component: import("vue").DefineComponent<__VLS_Props, {
55
55
  "onUpdate:fileType"?: ((type: string) => any) | undefined;
56
56
  }>, {
57
57
  title: string;
58
+ fileName: string;
58
59
  emptyDescription: string;
59
60
  showSearch: boolean;
60
61
  showZoom: boolean;
@@ -62,7 +63,6 @@ declare const __VLS_component: import("vue").DefineComponent<__VLS_Props, {
62
63
  showRefresh: boolean;
63
64
  showFullscreen: boolean;
64
65
  fileId: string;
65
- fileName: string;
66
66
  fileType: string;
67
67
  showHeader: boolean;
68
68
  lostDescription: string;
@@ -48,6 +48,7 @@ declare const _default: import("vue").DefineComponent<__VLS_PublicProps, {
48
48
  title: string;
49
49
  url: string;
50
50
  showClose: boolean;
51
+ fileName: string;
51
52
  fullscreen: boolean;
52
53
  showSearch: boolean;
53
54
  showPageNav: boolean;
@@ -58,7 +59,6 @@ declare const _default: import("vue").DefineComponent<__VLS_PublicProps, {
58
59
  downloadLoading: boolean;
59
60
  refreshLoading: boolean;
60
61
  fileId: string;
61
- fileName: string;
62
62
  fileType: string;
63
63
  showHeader: boolean;
64
64
  lostDescription: string;
@@ -1,2 +1,2 @@
1
- import{defineComponent as te,useModel as se,ref as t,computed as i,watch as ne,onMounted as ie,onBeforeUnmount as ue,openBlock as m,createElementBlock as M,normalizeClass as V,createBlock as N,unref as B,createCommentVNode as p,createElementVNode as y,createVNode as de,Transition as ce,withCtx as O,normalizeStyle as fe,createTextVNode as me,mergeModels as $}from"vue";import{ElEmpty as ve,ElButton as we,ElMessage as A}from"element-plus";import he from"../../api/DocumentApi.js";import pe from"../../utils/FrameworkUtils.js";import ye from"../../utils/fileDownload.js";import{resolveOfficeFileExt as ge,canExportPdf as xe,MAX_RICH_PREVIEW_ZOOM as Ee,MIN_OFFICE_ZOOM as Be,clampRichPreviewZoom as W,OFFICE_ZOOM_STEP as U}from"../../utils/officePreviewUtil.js";import Ie from"./OfficePreviewHeaderBar.vue.js";import{_ as Se}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";import"@element-plus/icons-vue";const ze={key:0,class:"preview-loading-overlay"},Me=["src","title"],Ne=te({__name:"OfficePreview",props:$({url:{default:""},fileId:{default:""},fileName:{default:""},fileType:{default:""},title:{default:""},showHeader:{type:Boolean,default:!0},showSearch:{type:Boolean,default:!0},showPageNav:{type:Boolean,default:!1},showZoom:{type:Boolean,default:!0},showDownload:{type:Boolean,default:!1},showRefresh:{type:Boolean,default:!1},showFullscreen:{type:Boolean,default:!1},showClose:{type:Boolean,default:!1},fullscreen:{type:Boolean,default:!1},downloadLoading:{type:Boolean,default:!1},refreshLoading:{type:Boolean,default:!1},lostDescription:{default:"附件已丢失或无权访问"},attachmentLost:{type:Boolean,default:!1}},{scale:{default:1},scaleModifiers:{}}),emits:$(["loaded","error","download","refresh","toggle-fullscreen","close"],["update:scale"]),setup(r,{expose:Q,emit:X}){const a=r,l=se(r,"scale"),u=X,c=t(""),I=t(null),f=t(!1),d=t(!1),g=t(""),s=t(""),v=t(-1),w=t(0),x=t(!1),h=t(!1),S=t(!1);let E=0;const j=new Set(["pdf","doc","docx","xls","xlsx","ppt","pptx","txt","csv","html","htm","xml","json","md"]),G=i(()=>g.value||a.lostDescription),P=i(()=>a.title||a.fileName),C=i(()=>ge(a.fileType,a.fileName,a.url)),F=i(()=>a.showSearch&&!d.value&&j.has(C.value)),J=i(()=>a.showZoom&&!d.value),K=i(()=>a.showDownload&&xe(C.value)),Y=i(()=>a.downloadLoading||S.value),L=i(()=>h.value&&l.value!==1),_=i(()=>{if(!L.value)return;const o=l.value;return{width:`${100/o}%`,height:`${100/o}%`,transform:`scale(${o})`,transformOrigin:"top left"}}),n=o=>{I.value?.contentWindow?.postMessage({source:"adtec-office-preview",type:"command",...o},"*")},k=()=>{l.value=W(l.value+U),n({command:"zoom",scale:l.value})},D=()=>{l.value=W(l.value-U),n({command:"zoom",scale:l.value})},Z=()=>{l.value=1,n({command:"zoom",scale:l.value})},ee=o=>{const e=o.trim();if(s.value=e,v.value=-1,w.value=0,!e){R();return}if(h.value){A.warning("当前预览服务不支持内容搜索,请下载后查看");return}n({command:"search",query:e,direction:"first"})},R=()=>{s.value="",v.value=-1,w.value=0,n({command:"clear-search"})},oe=()=>{s.value&&n({command:"search",query:s.value,direction:"prev"})},ae=()=>{s.value&&n({command:"search",query:s.value,direction:"next"})},T=o=>{if(!(o.source!==I.value?.contentWindow||o.data?.source!=="adtec-fileview")){if(o.data.type==="ready"){x.value=!0,h.value=!1,n({command:"zoom",scale:l.value});return}if(o.data.type==="search-result"){const e=Number(o.data.total||0);w.value=e,v.value=e>0?Number(o.data.index||0):-1,e===0&&s.value&&A.warning("未找到匹配内容")}}},b=async()=>{const o=++E;if(c.value="",f.value=!1,d.value=!1,g.value="",l.value=1,s.value="",v.value=-1,w.value=0,x.value=!1,h.value=!1,a.attachmentLost){d.value=!0,u("error");return}f.value=!0;try{if(a.fileId){const e=await he.createPreviewSession(a.fileId);if(o!==E)return;c.value=e.url;return}if(a.url.startsWith("/api/doc/preview/fileView/")){c.value=a.url;return}throw new Error("为保护附件地址,旧版文件直链已停止预览,请使用附件 ID 打开")}catch(e){if(o!==E)return;f.value=!1,d.value=!0,g.value=e?.msg||e?.message||"文件预览失败,请下载后查看",u("error",e)}},q=()=>{u("refresh"),b()},z=async(o="original")=>{if(u("download",o),!!a.fileId){S.value=!0;try{await ye(a.fileId,a.fileName,o)}catch(e){pe.messageError(e)}finally{S.value=!1}}},le=()=>{f.value=!1,x.value||window.setTimeout(()=>{x.value||(h.value=!0)},1500),n({command:"zoom",scale:l.value}),u("loaded")},re=o=>{f.value=!1,d.value=!0,g.value="文件预览服务暂不可用,请稍后重试或下载后查看",u("error",o)};return ne(()=>[a.fileId,a.url,a.attachmentLost],()=>void b(),{immediate:!0}),ie(()=>window.addEventListener("message",T)),ue(()=>{E++,window.removeEventListener("message",T)}),Q({reloadPreview:q,zoomIn:k,zoomOut:D,resetZoom:Z,download:z}),(o,e)=>(m(),M("div",{class:V(["office-preview-root",{"is-fullscreen":r.fullscreen}])},[r.showHeader?(m(),N(Ie,{key:0,title:P.value,"title-only":!F.value,zoom:l.value,"search-query":s.value,"search-index":v.value,"search-total":w.value,"show-search":F.value,"show-page-nav":!1,"show-zoom":J.value,"show-download":r.showDownload,"pdf-export":K.value,"show-refresh":r.showRefresh,"show-fullscreen":r.showFullscreen,"show-close":r.showClose,fullscreen:r.fullscreen,"download-loading":Y.value,"refresh-loading":r.refreshLoading,"min-zoom":B(Be),"max-zoom":B(Ee),onZoomIn:k,onZoomOut:D,onZoomReset:Z,onSearch:ee,onSearchClear:R,onSearchPrev:oe,onSearchNext:ae,onDownload:z,onRefresh:q,onToggleFullscreen:e[0]||(e[0]=H=>u("toggle-fullscreen")),onClose:e[1]||(e[1]=H=>u("close"))},null,8,["title","title-only","zoom","search-query","search-index","search-total","show-search","show-zoom","show-download","pdf-export","show-refresh","show-fullscreen","show-close","fullscreen","download-loading","refresh-loading","min-zoom","max-zoom"])):p("v-if",!0),p(` 外层加载层与预览页内层样式完全一致(spinner + 正在加载文件... + 进度条),
2
- 切换时淡出过渡,避免 spinner 相位/进度条状态差异造成的跳动 `),y("div",{class:V(["fileview-frame-wrap",{"is-fallback-zoom":L.value}])},[de(ce,{name:"preview-loading-fade"},{default:O(()=>[f.value?(m(),M("div",ze,[...e[3]||(e[3]=[y("div",{class:"preview-loading-spinner"},null,-1),y("div",{class:"preview-loading-text"},"正在加载文件...",-1),y("div",{class:"preview-loading-progress"},[y("div",{class:"preview-loading-bar is-indeterminate"})],-1)])])):p("v-if",!0)]),_:1}),c.value&&!d.value?(m(),M("iframe",{key:c.value,ref_key:"previewFrameRef",ref:I,class:"fileview-frame",style:fe(_.value),src:c.value,title:P.value||"文件预览",referrerpolicy:"same-origin",onLoad:le,onError:re},null,44,Me)):d.value?(m(),N(B(ve),{key:1,description:G.value},{default:O(()=>[r.showDownload?(m(),N(B(we),{key:0,type:"primary",onClick:e[2]||(e[2]=H=>z())},{default:O(()=>[...e[4]||(e[4]=[me(" 下载文件 ",-1)])]),_:1})):p("v-if",!0)]),_:1},8,["description"])):p("v-if",!0)],2)],2))}}),eo=Se(Ne,[["__scopeId","data-v-705a8cef"]]);export{eo as default};
1
+ import{defineComponent as Be,useModel as Me,ref as c,computed as m,watch as ee,nextTick as Ie,onMounted as Le,onBeforeUnmount as Pe,openBlock as N,createElementBlock as W,normalizeClass as Re,createBlock as A,unref as O,createCommentVNode as M,createElementVNode as I,createVNode as Oe,Transition as Te,withCtx as H,normalizeStyle as be,createTextVNode as ze,mergeModels as te}from"vue";import{ElEmpty as ke,ElButton as Ze,ElMessage as $}from"element-plus";import De from"../../api/DocumentApi.js";import Ve from"../../utils/FrameworkUtils.js";import We from"../../utils/fileDownload.js";import{resolveOfficeFileExt as Ae,canExportPdf as He,MAX_RICH_PREVIEW_ZOOM as oe,MIN_OFFICE_ZOOM as ae,clampRichPreviewZoom as re,OFFICE_ZOOM_STEP as le}from"../../utils/officePreviewUtil.js";import $e from"./OfficePreviewHeaderBar.vue.js";import{_ as qe}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";import"@element-plus/icons-vue";const _e={class:"fileview-frame-wrap"},Ue={key:0,class:"preview-loading-overlay"},Xe=["src","title"],Qe=Be({__name:"OfficePreview",props:te({url:{default:""},fileId:{default:""},fileName:{default:""},fileType:{default:""},title:{default:""},showHeader:{type:Boolean,default:!0},showSearch:{type:Boolean,default:!0},showPageNav:{type:Boolean,default:!1},showZoom:{type:Boolean,default:!0},showDownload:{type:Boolean,default:!1},showRefresh:{type:Boolean,default:!1},showFullscreen:{type:Boolean,default:!1},showClose:{type:Boolean,default:!1},fullscreen:{type:Boolean,default:!1},downloadLoading:{type:Boolean,default:!1},refreshLoading:{type:Boolean,default:!1},lostDescription:{default:"附件已丢失或无权访问"},attachmentLost:{type:Boolean,default:!1}},{scale:{default:1},scaleModifiers:{}}),emits:te(["loaded","error","download","refresh","toggle-fullscreen","close"],["update:scale"]),setup(s,{expose:ne,emit:se}){const o=s,n=Me(s,"scale"),v=se,y=c(""),x=c(null),E=c(!1),h=c(!1),L=c(""),u=c(""),S=c(-1),F=c(0),C=c(!1),d=c(!1),T=c(!1);let P=0;const ie=new Set(["pdf","doc","docx","xls","xlsx","ppt","pptx","txt","csv","html","htm","xml","json","md"]),ce=m(()=>L.value||o.lostDescription),q=m(()=>o.title||o.fileName),_=m(()=>Ae(o.fileType,o.fileName,o.url)),U=m(()=>o.showSearch&&!h.value&&ie.has(_.value)),ue=m(()=>o.showZoom&&!h.value),de=m(()=>o.showDownload&&He(_.value)),fe=m(()=>o.downloadLoading||T.value),me=m(()=>d.value&&n.value!==1),ve=m(()=>{if(!me.value)return;const t=n.value;return{position:"absolute",top:"0",left:"0",width:`${100/t}%`,height:`${100/t}%`,transform:`scale(${t})`,transformOrigin:"top left"}}),b=t=>{x.value?.contentWindow?.postMessage({source:"adtec-office-preview",type:"command",...t},"*")},z=()=>{try{return x.value?.contentWindow||null}catch{return null}},k=t=>{const e=Number(t?.total||0);F.value=e,S.value=e>0?Number(t?.index||0):-1,e===0&&u.value&&$.warning("未找到匹配内容")},he=t=>{const e=t?.adtecFileViewAdapter;if(e?.zoom)try{return e.zoom(n.value),!0}catch{}try{const a=t?.document?.documentElement;if(a){const l=Math.max(ae,Math.min(oe,n.value));return a.style.zoom=String(l),a.style.width=`${100/l}%`,a.style.height=`${100/l}%`,!0}}catch{}return!1},B=()=>{!d.value&&he(z())||b({command:"zoom",scale:n.value})},X=()=>{n.value=re(n.value+le),B()},Q=()=>{n.value=re(n.value-le),B()},j=()=>{n.value=1,B()};let i={query:"",matches:[],index:-1};const we=(t,e)=>{const a=[],l=t.body;if(!l)return a;const r=e.toLocaleLowerCase(),w=t.createTreeWalker(l,NodeFilter.SHOW_TEXT,{acceptNode:f=>{const g=f.parentElement;return!g||!f.nodeValue||!f.nodeValue.trim()||g.closest("script, style, noscript, input, textarea, #wm_div_id")?NodeFilter.FILTER_REJECT:NodeFilter.FILTER_ACCEPT}});let p=w.nextNode();for(;p;){const f=p.nodeValue?.toLocaleLowerCase()||"";let g=f.indexOf(r);for(;g!==-1;)a.push({node:p,start:g,end:g+e.length}),g=f.indexOf(r,g+Math.max(1,e.length));p=w.nextNode()}return a},pe=(t,e,a)=>{const l=t?.document;if(!l?.body)return null;(a==="first"||i.query!==e)&&(i={query:e,matches:we(l,e),index:-1});const r=i.matches.length;if(r===0)return{total:0,index:-1};a==="prev"?i.index=(i.index-1+r)%r:i.index=(i.index+1)%r;const w=i.matches[i.index];try{const p=l.createRange();p.setStart(w.node,w.start),p.setEnd(w.node,w.end);const f=t?.getSelection?.();f?.removeAllRanges(),f?.addRange(p),w.node.parentElement?.scrollIntoView({block:"center",behavior:"smooth"})}catch{}return{total:r,index:i.index}},Z=t=>{const e=u.value;if(!e)return;const a=z(),l=a?.adtecFileViewAdapter;if(l?.search)try{const r=l.search(e,t);r&&typeof r.then=="function"?r.then(k):k(r);return}catch{}if(!d.value){const r=pe(a,e,t);if(r){k(r);return}}b({command:"search",query:e,direction:t})},ge=()=>{i={query:"",matches:[],index:-1};const t=z(),e=t?.adtecFileViewAdapter;if(e?.clearSearch)try{e.clearSearch();return}catch{}if(!d.value)try{t?.getSelection?.()?.removeAllRanges()}catch{}b({command:"clear-search"})},ye=t=>{const e=t.trim();if(u.value=e,S.value=-1,F.value=0,!e){J();return}if(d.value){$.warning("当前预览服务不支持内容搜索,请下载后查看");return}Z("first")},J=()=>{u.value="",S.value=-1,F.value=0,ge()},xe=()=>{u.value&&Z("prev")},Ee=()=>{u.value&&Z("next")},G=t=>{if(!(t.source!==x.value?.contentWindow||t.data?.source!=="adtec-fileview")){if(t.data.type==="ready"){C.value=!0,d.value=!1,B();return}if(t.data.type==="search-result"){const e=Number(t.data.total||0);F.value=e,S.value=e>0?Number(t.data.index||0):-1,e===0&&u.value&&$.warning("未找到匹配内容")}}},R=new Set,Se=()=>{const t=x.value;if(!t)return null;try{const e=t.contentWindow;if(e?.parent&&e.parent!==e)return e.parent}catch{}return null},D=()=>{[window,Se()].forEach(e=>{if(!(!e||R.has(e)))try{e.addEventListener("message",G),R.add(e)}catch{}})},Fe=()=>{R.forEach(t=>{try{t.removeEventListener("message",G)}catch{}}),R.clear()},K=async()=>{const t=++P;if(y.value="",E.value=!1,h.value=!1,L.value="",n.value=1,u.value="",S.value=-1,F.value=0,C.value=!1,d.value=!1,o.attachmentLost){h.value=!0,v("error");return}E.value=!0;try{if(o.fileId){const e=await De.createPreviewSession(o.fileId);if(t!==P)return;y.value=e.url;return}if(o.url.startsWith("/api/doc/preview/fileView/")){y.value=o.url;return}throw new Error("为保护附件地址,旧版文件直链已停止预览,请使用附件 ID 打开")}catch(e){if(t!==P)return;E.value=!1,h.value=!0,L.value=e?.msg||e?.message||"文件预览失败,请下载后查看",v("error",e)}},Y=()=>{v("refresh"),K()},V=async(t="original")=>{if(v("download",t),!!o.fileId){T.value=!0;try{await We(o.fileId,o.fileName,t)}catch(e){Ve.messageError(e)}finally{T.value=!1}}},Ce=()=>{E.value=!1,D();const t=x.value?.contentWindow;if(t&&!C.value)try{t.adtecPreviewBridge&&(C.value=!0,d.value=!1)}catch{}C.value||window.setTimeout(()=>{C.value||(d.value=!0)},1500),B(),v("loaded")},Ne=t=>{E.value=!1,h.value=!0,L.value="文件预览服务暂不可用,请稍后重试或下载后查看",v("error",t)};return ee(()=>[o.fileId,o.url,o.attachmentLost],()=>void K(),{immediate:!0}),ee(y,t=>{t&&Ie(()=>D())}),Le(()=>D()),Pe(()=>{P++,Fe()}),ne({reloadPreview:Y,zoomIn:X,zoomOut:Q,resetZoom:j,download:V}),(t,e)=>(N(),W("div",{class:Re(["office-preview-root",{"is-fullscreen":s.fullscreen}])},[s.showHeader?(N(),A($e,{key:0,title:q.value,"title-only":!U.value,zoom:n.value,"search-query":u.value,"search-index":S.value,"search-total":F.value,"show-search":U.value,"show-page-nav":!1,"show-zoom":ue.value,"show-download":s.showDownload,"pdf-export":de.value,"show-refresh":s.showRefresh,"show-fullscreen":s.showFullscreen,"show-close":s.showClose,fullscreen:s.fullscreen,"download-loading":fe.value,"refresh-loading":s.refreshLoading,"min-zoom":O(ae),"max-zoom":O(oe),onZoomIn:X,onZoomOut:Q,onZoomReset:j,onSearch:ye,onSearchClear:J,onSearchPrev:xe,onSearchNext:Ee,onDownload:V,onRefresh:Y,onToggleFullscreen:e[0]||(e[0]=a=>v("toggle-fullscreen")),onClose:e[1]||(e[1]=a=>v("close"))},null,8,["title","title-only","zoom","search-query","search-index","search-total","show-search","show-zoom","show-download","pdf-export","show-refresh","show-fullscreen","show-close","fullscreen","download-loading","refresh-loading","min-zoom","max-zoom"])):M("v-if",!0),M(` 外层加载层与预览页内层样式完全一致(spinner + 正在加载文件... + 进度条),
2
+ 切换时淡出过渡,避免 spinner 相位/进度条状态差异造成的跳动 `),I("div",_e,[Oe(Te,{name:"preview-loading-fade"},{default:H(()=>[E.value?(N(),W("div",Ue,[...e[3]||(e[3]=[I("div",{class:"preview-loading-spinner"},null,-1),I("div",{class:"preview-loading-text"},"正在加载文件...",-1),I("div",{class:"preview-loading-progress"},[I("div",{class:"preview-loading-bar is-indeterminate"})],-1)])])):M("v-if",!0)]),_:1}),y.value&&!h.value?(N(),W("iframe",{key:y.value,ref_key:"previewFrameRef",ref:x,class:"fileview-frame",style:be(ve.value),src:y.value,title:q.value||"文件预览",referrerpolicy:"same-origin",onLoad:Ce,onError:Ne},null,44,Xe)):h.value?(N(),A(O(ke),{key:1,description:ce.value},{default:H(()=>[s.showDownload?(N(),A(O(Ze),{key:0,type:"primary",onClick:e[2]||(e[2]=a=>V())},{default:H(()=>[...e[4]||(e[4]=[ze(" 下载文件 ",-1)])]),_:1})):M("v-if",!0)]),_:1},8,["description"])):M("v-if",!0)])],2))}}),Et=qe(Qe,[["__scopeId","data-v-e2b19417"]]);export{Et as default};
@@ -1,5 +1,5 @@
1
- import{computed as M,ref as v,unref as w,createApp as eo,nextTick as to,h as s}from"vue";import lo,{ElDrawer as io,ElDialog as ao,ElButton as B}from"element-plus";import P from"../stores/storeConfig.js";/* empty css */import*as T from"@element-plus/icons-vue";import"../config/ElementPlusConfig.js";import{installVxeGrid as ro}from"../config/VxeTableConfig.js";import no from"element-plus/es/locale/lang/zh-cn";import so from"./useListenerHooks.js";import{permissionStore as co}from"../stores/permissionStore.js";import go from"../components/icon/ElIcons.vue.js";import ho from"../components/ElDialogBody/ElDialogBody.vue.js";import po from"crypto-js/enc-base64";import uo from"crypto-js/enc-utf8";import{frontendBus as C}from"../utils/frontendBus.js";import{GLOBAL_LOADING_EVENT as q,notifyDialogLoadingScope as mo}from"../utils/globalLoading.js";import fo from"./useBehaviorAction.js";import"pinia";import"pinia-plugin-store";import"../utils/patchWujiePopperCoordinates.js";import"vxe-table";import"@vxe-ui/core";import"@vxe-ui/plugin-export-xlsx";import"exceljs";import"vxe-table/es/style.css";import"vxe-table/es/locale/lang/zh-CN";import"../components/vxeReplace/index.js";import"../components/tooltip/index.js";import"../components/tooltip/src/tooltip.js";import"../../chunks/VxeButton.vue_vue_type_script_setup_true_lang-s_mYx9TA.js";import"../../chunks/VxeInput.vue_vue_type_script_setup_true_lang-v9AqGSoL.js";import"../../chunks/VxeSelect.vue_vue_type_script_setup_true_lang-DcVggycZ.js";import"../../chunks/VxeCheckbox.vue_vue_type_script_setup_true_lang-Ccr5YD1x.js";import"../../chunks/VxeModal.vue_vue_type_script_setup_true_lang-B4gh7jFR.js";import"../../chunks/VxeLoading.vue_vue_type_script_setup_true_lang-B253kD5t.js";import"../../chunks/VxePager.vue_vue_type_script_setup_true_lang-DpOa3T96.js";import"../../chunks/VxeForm.vue_vue_type_script_setup_true_lang-DXNZ8Qzg.js";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";import"../utils/operationAuth.js";import"../stores/userInfoStore.js";import"../utils/userSessionStorage.js";import"@vueuse/core";import"../../chunks/_plugin-vue_export-helper-DlAUqK2U.js";const bo={},_o="subAppModalOverlay",x="adtec-subapp-modal-open";let V=0;const u=[],_=new Map;let I=!1;const yo=()=>{for(let o=u.length-1;o>=0;o--)if(u[o].open.value)return u[o]},z=o=>{if(!o?.id)return;if(o.phase==="start"){const l=yo();if(!l)return;_.set(o.id,l),l.requestLoadingIds.add(o.id),l.requestLoading.value=!0;return}const e=_.get(o.id);e&&(_.delete(o.id),e.requestLoadingIds.delete(o.id),e.requestLoading.value=e.requestLoadingIds.size>0)},ko=o=>{u.push(o),!I&&(C.on(q,z),I=!0)},vo=o=>{const e=u.indexOf(o);e>-1&&u.splice(e,1),o.requestLoadingIds.forEach(l=>_.delete(l)),o.requestLoadingIds.clear(),o.requestLoading.value=!1,!(u.length>0||!I)&&(C.off(q,z),I=!1,_.clear())},wo=o=>{const e=bo||{};return o.applicationModule||e.VITE_APPLICATION_MODULE||e.VITE_APP_MODULE||String(o.router.currentRoute.value.meta.applicationModule||"")},$=(o,e,l)=>{if(typeof window>"u"||!window.__POWERED_BY_WUJIE__)return;const i=wo(o);if(!i||(l&&!e.overlayId&&(e.overlayId=`${i}-${Date.now()}-${++V}`),!e.overlayId))return;const d={applicationModule:i,overlayId:e.overlayId,open:l};C.emit(_o,d),l||(e.overlayId=void 0)},N=(o,e)=>{e&&!o.overlayId&&(o.overlayId=`dialog-${Date.now()}-${++V}`),o.overlayId&&mo({id:o.overlayId,open:e})};function xo(){const e="dialog-hooks-styles",l=document.getElementById(e);if(l&&(l.textContent||"").includes("/* dialog-hooks v16 */"))return;l?.remove();const i=document.createElement("style");i.id=e,i.type="text/css",i.innerHTML=`
2
- /* dialog-hooks v16 */
1
+ import{computed as B,ref as v,unref as w,createApp as lo,nextTick as io,h as n}from"vue";import ao,{ElDrawer as ro,ElDialog as so,ElButton as T}from"element-plus";import V from"../stores/storeConfig.js";/* empty css */import*as $ from"@element-plus/icons-vue";import"../config/ElementPlusConfig.js";import{installVxeGrid as no}from"../config/VxeTableConfig.js";import co from"element-plus/es/locale/lang/zh-cn";import go from"./useListenerHooks.js";import{permissionStore as ho}from"../stores/permissionStore.js";import po from"../components/icon/ElIcons.vue.js";import uo from"../components/ElDialogBody/ElDialogBody.vue.js";import mo from"crypto-js/enc-base64";import fo from"crypto-js/enc-utf8";import{frontendBus as D}from"../utils/frontendBus.js";import{GLOBAL_LOADING_EVENT as R,notifyDialogLoadingScope as bo}from"../utils/globalLoading.js";import yo from"./useBehaviorAction.js";import"pinia";import"pinia-plugin-store";import"../utils/patchWujiePopperCoordinates.js";import"vxe-table";import"@vxe-ui/core";import"@vxe-ui/plugin-export-xlsx";import"exceljs";import"vxe-table/es/style.css";import"vxe-table/es/locale/lang/zh-CN";import"../components/vxeReplace/index.js";import"../components/tooltip/index.js";import"../components/tooltip/src/tooltip.js";import"../../chunks/VxeButton.vue_vue_type_script_setup_true_lang-s_mYx9TA.js";import"../../chunks/VxeInput.vue_vue_type_script_setup_true_lang-v9AqGSoL.js";import"../../chunks/VxeSelect.vue_vue_type_script_setup_true_lang-DcVggycZ.js";import"../../chunks/VxeCheckbox.vue_vue_type_script_setup_true_lang-Ccr5YD1x.js";import"../../chunks/VxeModal.vue_vue_type_script_setup_true_lang-B4gh7jFR.js";import"../../chunks/VxeLoading.vue_vue_type_script_setup_true_lang-B253kD5t.js";import"../../chunks/VxePager.vue_vue_type_script_setup_true_lang-DpOa3T96.js";import"../../chunks/VxeForm.vue_vue_type_script_setup_true_lang-DXNZ8Qzg.js";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";import"../utils/operationAuth.js";import"../stores/userInfoStore.js";import"../utils/userSessionStorage.js";import"@vueuse/core";import"../../chunks/_plugin-vue_export-helper-DlAUqK2U.js";const _o={},ko="subAppModalOverlay",x="adtec-subapp-modal-open";let H=0;const m=[],_=new Map;let I=!1;const q=new WeakSet,vo=()=>{for(let o=m.length-1;o>=0;o--)if(m[o].open.value)return m[o]},U=o=>{if(!o?.id)return;if(o.phase==="start"){const i=vo();if(!i)return;_.set(o.id,i),i.requestLoadingIds.add(o.id),i.requestLoading.value=!0;return}const e=_.get(o.id);e&&(_.delete(o.id),e.requestLoadingIds.delete(o.id),e.requestLoading.value=e.requestLoadingIds.size>0)},wo=o=>{m.push(o),!I&&(D.on(R,U),I=!0)},xo=o=>{const e=m.indexOf(o);e>-1&&m.splice(e,1),o.requestLoadingIds.forEach(i=>_.delete(i)),o.requestLoadingIds.clear(),o.requestLoading.value=!1,!(m.length>0||!I)&&(D.off(R,U),I=!1,_.clear())},Io=o=>{const e=_o||{};return o.applicationModule||e.VITE_APPLICATION_MODULE||e.VITE_APP_MODULE||String(o.router.currentRoute.value.meta.applicationModule||"")},P=(o,e,i)=>{if(typeof window>"u"||!window.__POWERED_BY_WUJIE__)return;const l=Io(o);if(!l||(i&&!e.overlayId&&(e.overlayId=`${l}-${Date.now()}-${++H}`),!e.overlayId))return;const d={applicationModule:l,overlayId:e.overlayId,open:i};D.emit(ko,d),i||(e.overlayId=void 0)},N=(o,e)=>{e&&!o.overlayId&&(o.overlayId=`dialog-${Date.now()}-${++H}`),o.overlayId&&bo({id:o.overlayId,open:e})};function Lo(){const e="dialog-hooks-styles",i=document.getElementById(e);if(i&&(i.textContent||"").includes("/* dialog-hooks v17 */"))return;i?.remove();const l=document.createElement("style");l.id=e,l.type="text/css",l.innerHTML=`
2
+ /* dialog-hooks v17 */
3
3
  /* 抽屉组件 - 无滚动条样式 */
4
4
  .dialog-hooks-no-scroll.el-drawer .el-drawer__body {
5
5
  overflow: hidden !important;
@@ -74,7 +74,11 @@ import{computed as M,ref as v,unref as w,createApp as eo,nextTick as to,h as s}f
74
74
  .dialog-hooks-host.el-drawer .el-drawer__body .el-title {
75
75
  padding-right: 0;
76
76
  }
77
- /* 弹窗/抽屉内容滚动条自动隐藏:平时透明,滚动或悬停时显示 */
77
+ /* 弹窗/抽屉内容滚动条自动隐藏:平时透明,滚动或悬停时显示。
78
+ scrollbar-width/scrollbar-color 负责浏览器原生滚动条的显隐(各浏览器原生表现最好,
79
+ 不要为了改宽度去掉它们);::-webkit-scrollbar 是忽略上述属性的浏览器的细滚动条兜底。
80
+ 两种方式的实际占位宽度不同(6 / 11 / 15px…),所以右侧补偿一律走实测值,
81
+ 见下面 --dialog-hooks-scrollbar 的说明。 */
78
82
  .dialog-hooks-host .el-drawer__body,
79
83
  .dialog-hooks-host .el-dialog__body,
80
84
  .dialog-hooks-host .el-dialog-body__content {
@@ -112,19 +116,18 @@ import{computed as M,ref as v,unref as w,createApp as eo,nextTick as to,h as s}f
112
116
  scrollbar-color: rgba(144, 147, 153, 0.4) transparent;
113
117
  }
114
118
  /* 滚动条当右侧内边距用:内容区的滚动条落在弹窗/抽屉右侧 8px 内边距里,左右边距一致。
115
- - 内容层(ElDialogBody)自己滚:向 body 右内边距溢出一个滚动条宽(这里的滚动条是 6px);
116
- - 弹窗/抽屉 body 自己滚(dialogBody=false 的特殊内容):右侧内边距只留 8px-6px=2px,
117
- 其余交给滚动条槽。scrollbar-gutter: stable 保证内容短、没有滚动条时槽位仍在,宽度不跳动。 */
118
- @supports (scrollbar-gutter: stable) {
119
- .dialog-hooks-host .el-dialog-body__content {
120
- margin-right: -6px;
121
- scrollbar-gutter: stable;
122
- }
123
- .dialog-hooks-host:not(.dialog-hooks-body-contained) .el-dialog__body,
124
- .dialog-hooks-host:not(.dialog-hooks-body-contained) .el-drawer__body {
125
- padding-right: 2px;
126
- scrollbar-gutter: stable;
127
- }
119
+ 滚动条占位宽度由 syncDialogScrollbarOffset 实测后写入 --dialog-hooks-scrollbar
120
+ (覆盖式滚动条 0、自定义细滚动条 6、原生 thin/系统滚动条 11~15 等各环境都不同,
121
+ 写死宽度必然在某些浏览器里左右边距不等,也不再需要 scrollbar-gutter
122
+ 它在 Chromium 里按系统默认滚动条宽度预留,与自定义细滚动条宽度对不上,会多留一段空白):
123
+ - 内容层(ElDialogBody)自己滚:向右溢出同样的宽度,内容宽度与没有滚动条时保持一致;
124
+ - 弹窗/抽屉 body 自己滚(dialogBody=false 的特殊内容):从 8px 右内边距里扣掉同样宽度。 */
125
+ .dialog-hooks-host.dialog-hooks-body-contained .el-dialog-body__content {
126
+ margin-right: calc(-1 * var(--dialog-hooks-scrollbar, 0px));
127
+ }
128
+ .dialog-hooks-host:not(.dialog-hooks-body-contained) .el-dialog__body,
129
+ .dialog-hooks-host:not(.dialog-hooks-body-contained) .el-drawer__body {
130
+ padding-right: max(0px, calc(8px - var(--dialog-hooks-scrollbar, 0px)));
128
131
  }
129
132
  /* vxe 网格滚动条保持原生样式,不被上面的自动隐藏规则影响 */
130
133
  .dialog-hooks-host .vxe-grid,
@@ -238,4 +241,4 @@ import{computed as M,ref as v,unref as w,createApp as eo,nextTick as to,h as s}f
238
241
  background: transparent !important;
239
242
  background-color: transparent !important;
240
243
  }
241
- `,document.head.appendChild(i)}function Io(o){const e=!!o.querySelector(".dialog-hooks-body-contained");o.querySelectorAll(e?".el-dialog-body__content":".el-drawer__body, .el-dialog__body").forEach(i=>{let d;const y=()=>{i.classList.add("is-scrolling"),d&&window.clearTimeout(d),d=window.setTimeout(()=>i.classList.remove("is-scrolling"),600)};i.addEventListener("scroll",y,{passive:!0}),i.addEventListener("mouseenter",y),i.addEventListener("mouseleave",()=>{d&&window.clearTimeout(d),i.classList.remove("is-scrolling")})})}function Lo(o,e,l){return o===!1?{enabled:!1,scroll:l,class:void 0,contentClass:void 0}:o===!0||o===void 0?{enabled:o===!0?!0:e,scroll:l,class:void 0,contentClass:void 0}:{enabled:o.enabled??e,scroll:o.scroll??l,class:o.class,contentClass:o.contentClass}}function Eo(o,e){if(e)return e;try{const l=o.router.currentRoute.value.meta?.sysMenuData?.icon;if(l)return l}catch{}try{const l=sessionStorage.getItem("permissionStore");if(l){const i=JSON.parse(po.parse(l).toString(uo));if(i?.activeMenuInfo?.icon)return i.activeMenuInfo.icon}}catch{}try{return co(P).getActiveMenuInfo?.icon||""}catch{return""}}function xe(o){return function(l){const i=[],d=()=>i[i.length-1],y=r=>{const a=w(r?.data),b=w(r?.row),k=w(r?.formData),p=r?.id??r?.taskId??r?.selectedId??a?.id??b?.id??k?.id;return p==null||p===""?"":String(p)},H=(r,a,b,k="drawer",p,G=!0)=>{xo();const{icon:K,hideConfirm:L,hideFooter:W,dialogBody:F,...c}=b||{},f=Lo(F,o.defaultDialogBody??!0,G),J=`${k}|${typeof r=="string"?r:r?.__name||r?.name||""}|${c.title||""}|${y(a)}`,D=v(!1),O=v(!1),t={open:v(!0),loading:M(()=>D.value||O.value),manualLoading:D,requestLoading:O,requestLoadingIds:new Set,childInstance:v(),app:null,div:null,closing:!1,renderKey:J,actionName:c.title||"确认"},Q=Object.fromEntries(Object.entries(a||{}).map(([n,h])=>[n,w(h)])),X={...c,class:["dialog-hooks-host",...f.enabled?["dialog-hooks-body-contained"]:[],...f.scroll?[]:["dialog-hooks-no-scroll"],"dialog-hooks-scroll-auto",...Array.isArray(c.class)?c.class:c.class?[c.class]:[]]},Z=c.onClosed,E=typeof c.title=="string"&&c.title,A=E?Eo(o,K):"",oo=()=>s("div",{class:"dialog-hooks-header"},[A?s("div",{class:"dialog-hooks-header-icon"},[s(go,{modelValue:A})]):null,s("div",{class:"dialog-hooks-header-title"},[c.title]),t.loading.value&&!L?null:s("button",{type:"button",class:"dialog-hooks-header-close",onClick:()=>m(t)},[s(T.Close)])]),g=eo(()=>s(k==="drawer"?io:ao,{...X,modelValue:t.open.value,showClose:E?!1:c.showClose??!0,onClosed(){N(t,!1),$(o,t,!1),vo(t),Z?.();const n=i.indexOf(t);n>-1&&i.splice(n,1),t.app?.unmount(),t.div?.parentNode&&t.div.parentNode.removeChild(t.div),t.app=null,t.div=null},onClose(){m(t)}},{...E?{header:oo}:{},default:()=>{const n=s(r,{...Q,loading:t.loading.value,"onUpdate:loading":h=>{t.manualLoading.value=h},ref:t.childInstance});return f.enabled?s(ho,{scroll:f.scroll,class:f.class,contentClass:f.contentClass},{default:()=>n}):n},...W?{}:{footer:()=>{if(p&&p.length){const n=p.map(h=>typeof h=="function"?h():h);return s("div",{className:"dialog-footer"},n)}return s("div",{className:"dialog-footer"},[s(B,{onClick:()=>m(t),loading:!L&&t.loading.value},"取 消"),L?null:s(B,{type:"primary",onClick:()=>R(t),loading:t.loading.value},"确 认")])}}}));o.plugins?.forEach(n=>g.use(n)),g.use(lo,{locale:no}),g.use(P),g.use(o.router);for(const[n,h]of Object.entries(T))g.component(n,h);ro(g),o.setupApp?.(g);const S=document.createElement("div");return document.body.appendChild(S),t.app=g,t.div=S,i.push(t),ko(t),N(t,!0),$(o,t,!0),g.mount(S),to(()=>{Io(t.div),t.childInstance.value?.resetQuery?.(),setTimeout(()=>{window.dispatchEvent(new Event("resize"))},350)}),so(),{cancel:()=>m(t)}},R=async r=>{const a=r||d();if(!a)return;const{runBehaviorAction:b}=fo();await b({code:`dialog:${a.renderKey}:confirm`,name:a.actionName||"确认",actionType:"SUBMIT"},async()=>{try{a.manualLoading.value=!0,await a.childInstance.value?.confirm?.(),l&&m(a)}finally{a.manualLoading.value=!1}})},m=r=>{const a=r||d();!a||!a.open.value||(a.closing=!0,a.open.value=!1)},U=r=>{const a=d();a&&(a.manualLoading.value=r)},j=()=>d()?.loading.value??!1,Y=M(()=>d()?.childInstance.value);return{render:H,cancel:m,setLoading:U,getLoading:j,instance:Y}}}export{xe as createDialogHooks,xe as default};
244
+ `,document.head.appendChild(l)}function Eo(o){const e=!!o.querySelector(".dialog-hooks-body-contained");o.querySelectorAll(e?".el-dialog-body__content":".el-drawer__body, .el-dialog__body").forEach(l=>{let d;const u=()=>{l.classList.add("is-scrolling"),d&&window.clearTimeout(d),d=window.setTimeout(()=>l.classList.remove("is-scrolling"),600)};l.addEventListener("scroll",u,{passive:!0}),l.addEventListener("mouseenter",u),l.addEventListener("mouseleave",()=>{d&&window.clearTimeout(d),l.classList.remove("is-scrolling")})})}function z(o){const e=!!o.querySelector(".dialog-hooks-body-contained");o.querySelectorAll(e?".el-dialog-body__content":".el-drawer__body, .el-dialog__body").forEach(l=>{let d;const u=()=>{if(!l.isConnected){d?.disconnect();return}const L=Math.max(0,l.offsetWidth-l.clientWidth);l.style.setProperty("--dialog-hooks-scrollbar",`${L}px`)};typeof ResizeObserver<"u"&&!q.has(l)&&(q.add(l),d=new ResizeObserver(u),d.observe(l)),u()})}function So(o,e,i){return o===!1?{enabled:!1,scroll:i,class:void 0,contentClass:void 0}:o===!0||o===void 0?{enabled:o===!0?!0:e,scroll:i,class:void 0,contentClass:void 0}:{enabled:o.enabled??e,scroll:o.scroll??i,class:o.class,contentClass:o.contentClass}}function Co(o,e){if(e)return e;try{const i=o.router.currentRoute.value.meta?.sysMenuData?.icon;if(i)return i}catch{}try{const i=sessionStorage.getItem("permissionStore");if(i){const l=JSON.parse(mo.parse(i).toString(fo));if(l?.activeMenuInfo?.icon)return l.activeMenuInfo.icon}}catch{}try{return ho(V).getActiveMenuInfo?.icon||""}catch{return""}}function Le(o){return function(i){const l=[],d=()=>l[l.length-1],u=r=>{const a=w(r?.data),y=w(r?.row),k=w(r?.formData),p=r?.id??r?.taskId??r?.selectedId??a?.id??y?.id??k?.id;return p==null||p===""?"":String(p)},L=(r,a,y,k="drawer",p,K=!0)=>{Lo();const{icon:F,hideConfirm:E,hideFooter:J,dialogBody:Q,...c}=y||{},b=So(Q,o.defaultDialogBody??!0,K),X=`${k}|${typeof r=="string"?r:r?.__name||r?.name||""}|${c.title||""}|${u(a)}`,O=v(!1),A=v(!1),t={open:v(!0),loading:B(()=>O.value||A.value),manualLoading:O,requestLoading:A,requestLoadingIds:new Set,childInstance:v(),app:null,div:null,closing:!1,renderKey:X,actionName:c.title||"确认"},Z=Object.fromEntries(Object.entries(a||{}).map(([s,h])=>[s,w(h)])),oo={...c,class:["dialog-hooks-host",...b.enabled?["dialog-hooks-body-contained"]:[],...b.scroll?[]:["dialog-hooks-no-scroll"],"dialog-hooks-scroll-auto",...Array.isArray(c.class)?c.class:c.class?[c.class]:[]]},eo=c.onClosed,S=typeof c.title=="string"&&c.title,M=S?Co(o,F):"",to=()=>n("div",{class:"dialog-hooks-header"},[M?n("div",{class:"dialog-hooks-header-icon"},[n(po,{modelValue:M})]):null,n("div",{class:"dialog-hooks-header-title"},[c.title]),t.loading.value&&!E?null:n("button",{type:"button",class:"dialog-hooks-header-close",onClick:()=>f(t)},[n($.Close)])]),g=lo(()=>n(k==="drawer"?ro:so,{...oo,modelValue:t.open.value,showClose:S?!1:c.showClose??!0,onClosed(){N(t,!1),P(o,t,!1),xo(t),eo?.();const s=l.indexOf(t);s>-1&&l.splice(s,1),t.app?.unmount(),t.div?.parentNode&&t.div.parentNode.removeChild(t.div),t.app=null,t.div=null},onClose(){f(t)}},{...S?{header:to}:{},default:()=>{const s=n(r,{...Z,loading:t.loading.value,"onUpdate:loading":h=>{t.manualLoading.value=h},ref:t.childInstance});return b.enabled?n(uo,{scroll:b.scroll,class:b.class,contentClass:b.contentClass},{default:()=>s}):s},...J?{}:{footer:()=>{if(p&&p.length){const s=p.map(h=>typeof h=="function"?h():h);return n("div",{className:"dialog-footer"},s)}return n("div",{className:"dialog-footer"},[n(T,{onClick:()=>f(t),loading:!E&&t.loading.value},"取 消"),E?null:n(T,{type:"primary",onClick:()=>j(t),loading:t.loading.value},"确 认")])}}}));o.plugins?.forEach(s=>g.use(s)),g.use(ao,{locale:co}),g.use(V),g.use(o.router);for(const[s,h]of Object.entries($))g.component(s,h);no(g),o.setupApp?.(g);const C=document.createElement("div");return document.body.appendChild(C),t.app=g,t.div=C,l.push(t),wo(t),N(t,!0),P(o,t,!0),g.mount(C),io(()=>{Eo(t.div),z(t.div),t.childInstance.value?.resetQuery?.(),setTimeout(()=>{t.div&&z(t.div),window.dispatchEvent(new Event("resize"))},350)}),go(),{cancel:()=>f(t)}},j=async r=>{const a=r||d();if(!a)return;const{runBehaviorAction:y}=yo();await y({code:`dialog:${a.renderKey}:confirm`,name:a.actionName||"确认",actionType:"SUBMIT"},async()=>{try{a.manualLoading.value=!0,await a.childInstance.value?.confirm?.(),i&&f(a)}finally{a.manualLoading.value=!1}})},f=r=>{const a=r||d();!a||!a.open.value||(a.closing=!0,a.open.value=!1)},W=r=>{const a=d();a&&(a.manualLoading.value=r)},Y=()=>d()?.loading.value??!1,G=B(()=>d()?.childInstance.value);return{render:L,cancel:f,setLoading:W,getLoading:Y,instance:G}}}export{Le as createDialogHooks,Le as default};
@@ -1 +1 @@
1
- import{_ as p}from"../../chunks/operationAuth.vue_vue_type_script_lang-BgqMGXbQ.js";import{_ as e}from"../../chunks/ElFlex.vue_vue_type_script_setup_true_lang-DYk3SQcE.js";import{_ as a}from"../../chunks/ElDescForm.vue_vue_type_style_index_0_lang-BU3FMUMx.js";import s from"../components/ElContentPanel/ElContentPanel.vue.js";import n from"../components/ElSplitPanel/ElSplitPanel.vue.js";import _ from"../components/ElCardSection/ElCardSection.vue.js";import f from"../components/upload/AttachmentPreview.vue.js";import l from"../components/ElDialogBody/ElDialogBody.vue.js";import c from"../components/ElGrid/ElGrid.vue.js";import h from"../components/Search/ElSearch.vue.js";import u from"../components/Title/ElTitle.vue.js";import d from"../components/icon/ElIcons.vue.js";import E from"../components/icon/ElIconBtn.vue.js";import $ from"../components/Search/ElIconSearch.vue.js";import v from"../components/Search/ElSearchInput.vue.js";import{_ as I}from"../../chunks/ElCopyTooltip.vue_vue_type_script_setup_true_lang-Qg1P3If6.js";/* empty css */import{reportPageLeave as i,setCurrentMenu as m,reportPageActivate as b,reportFeatureOpen as g}from"../utils/behaviorTrack.js";import{_ as P}from"../../chunks/userSelect.vue_vue_type_script_setup_true_lang-DlEso2ua.js";import{_ as A}from"../../chunks/comp.selectUser.vue_vue_type_script_setup_true_lang-BQDO393q.js";import{_ as M}from"../../chunks/DictDisplay.vue_vue_type_script_setup_true_lang-DiFlFWi1.js";import{_ as D}from"../../chunks/ElScrollbars.vue_vue_type_script_setup_true_lang-0Vhrxdyr.js";import{_ as L}from"../../chunks/ElTotalTools.vue_vue_type_script_setup_true_lang-BqRnIFkw.js";import T from"../components/ElCardList.vue.js";import C from"../components/kFrame/KFrame.vue.js";import{_ as S}from"../../chunks/ElPagePagination.vue_vue_type_style_index_0_lang-CGjSyYgn.js";import{_ as y}from"../../chunks/ElCellLink.vue_vue_type_script_setup_true_lang-DXGj9pCT.js";import{_ as O}from"../../chunks/ElTagDisplay.vue_vue_type_script_setup_true_lang-DQXuYsW_.js";import{_ as F}from"../../chunks/DragHandleIcon.vue_vue_type_script_setup_true_lang-DnMWn5jY.js";import N from"../components/ElCircleBadge/ElCircleBadge.vue.js";import U from"../components/AsideCardList/AsideCardList.vue.js";import{_ as x}from"../../chunks/ElNumericInput.vue_vue_type_script_setup_true_lang-C6KlCE6f.js";import B from"../components/ElIndicatorInput/ElIndicatorInput.vue.js";import K from"../components/ElTabsPanel/ElTabsPanel.vue.js";import"vue";import"../hooks/useBehaviorAction.js";import"../utils/behaviorContext.js";import"../utils/uuid.js";import"uuid";import"axios";import"crypto-js/enc-base64";import"crypto-js/enc-utf8";import"../utils/encrypt.js";import"jsencrypt";import"../utils/dateTime.js";import"../hooks/useOperationAuth.js";import"vue-router";import"../stores/permissionStore.js";import"pinia";import"../utils/frontendBus.js";import"../utils/operationAuth.js";import"../stores/userInfoStore.js";import"../utils/userSessionStorage.js";import"../interface/enum/FlexEnum.js";import"@vueuse/core";import"../../chunks/_plugin-vue_export-helper-DlAUqK2U.js";import"element-plus";import"../utils/FrameworkUtils.js";import"xlsx-js-style";import"../hooks/usePreviewFullscreen.js";import"../components/upload/OfficePreview.vue.js";import"../api/DocumentApi.js";import"../utils/request.js";import"../utils/AxiosConfig.js";import"../utils/globalLoading.js";import"../utils/workflowTaskContext.js";import"../config/GlobalLoadingConfig.js";import"../utils/fileDownload.js";import"../utils/officePreviewUtil.js";import"../components/upload/OfficePreviewHeaderBar.vue.js";import"@element-plus/icons-vue";import"../components/ElGrid/ElGridColumnSetting.vue.js";import"../utils/columnSettingStorage.js";import"../components/business/userSelectContent.vue.js";import"../api/BasicApi.js";import"../api/SysUserApi.js";import"../api/EmployeeInfoApi.js";import"../components/business/comp.userForm.vue.js";import"../api/DeptInfoApi.js";import"../hooks/useResetRefHooks.js";import"../config/vxeSelectColumn.js";import"../hooks/useDictHooks.js";import"../api/SysDictCacheApi.js";import"../stores/dictStore.js";import"@vueuse/components";import"../components/kFrame/IframeOptions.js";import"../components/RichTextEditor/RichTextEditor.vue.js";import"../../chunks/preload-helper-BlTxHScW.js";import"../components/RichTextEditor/richTextHtmlUtils.js";import"../components/RichTextEditor/installUmoEditorApp.js";import"tdesign-vue-next";import"../components/RichTextEditor/richTextImageUpload.js";import"../utils/buildUploadHeaders.js";import"../components/ElIndicatorInput/interface.js";const Mr={mounted(){const t=this.$route,r=t?.meta?.sysMenuData;r?.id&&m(r);const o=this.$options?.__name||this.$options?.name;this.$options?.__isPageWrapper||this.$parent?.$options?.__isPageWrapper&&r?.id&&o&&o===t?.name&&(g(r,t.fullPath),this.__behaviorMenuId=r.id,this.__behaviorActivatedOnce=!1,this.__behaviorLeft=!1)},activated(){const t=this.$route?.meta?.sysMenuData;t?.id&&m(t);const r=this.__behaviorMenuId;if(r){if(!this.__behaviorActivatedOnce){this.__behaviorActivatedOnce=!0;return}b(r),this.__behaviorLeft=!1}},deactivated(){const t=this.__behaviorMenuId;t&&(i(t,"KEEP_ALIVE_DEACTIVATE"),this.__behaviorLeft=!0)},beforeUnmount(){const t=this.__behaviorMenuId;t&&i(t,"UNMOUNT",!0,!this.__behaviorLeft)},components:{operationAuth:p,ElFlex:e,ElDescForm:a,ElContentPanel:s,ElSplitPanel:n,ElCardSection:_,AttachmentPreview:f,ElDialogBody:l,ElGrid:c,ElSearch:h,ElTitle:u,ElIcons:d,ElIconBtn:E,ElIconSearch:$,ElSearchInput:v,ElTooltip:I,userSelect:P,mdmUserSelect:A,ElScrollbars:D,ElTotalTools:L,ElCardList:T,KFrame:C,ElPagePagination:S,ElCellLink:y,ElTagDisplay:O,DictDisplay:M,DragHandleIcon:F,ElCircleBadge:N,AsideCardList:U,ElNumericInput:x,ElIndicatorInput:B,ElTabsPanel:K}};export{Mr as globalMixin};
1
+ import{_ as p}from"../../chunks/operationAuth.vue_vue_type_script_lang-BgqMGXbQ.js";import{_ as e}from"../../chunks/ElFlex.vue_vue_type_script_setup_true_lang-DYk3SQcE.js";import{_ as a}from"../../chunks/ElDescForm.vue_vue_type_style_index_0_lang-DRKuI9Xa.js";import s from"../components/ElContentPanel/ElContentPanel.vue.js";import n from"../components/ElSplitPanel/ElSplitPanel.vue.js";import _ from"../components/ElCardSection/ElCardSection.vue.js";import f from"../components/upload/AttachmentPreview.vue.js";import l from"../components/ElDialogBody/ElDialogBody.vue.js";import c from"../components/ElGrid/ElGrid.vue.js";import h from"../components/Search/ElSearch.vue.js";import u from"../components/Title/ElTitle.vue.js";import d from"../components/icon/ElIcons.vue.js";import E from"../components/icon/ElIconBtn.vue.js";import $ from"../components/Search/ElIconSearch.vue.js";import v from"../components/Search/ElSearchInput.vue.js";import{_ as I}from"../../chunks/ElCopyTooltip.vue_vue_type_script_setup_true_lang-MdgIHwF2.js";/* empty css */import{reportPageLeave as i,setCurrentMenu as m,reportPageActivate as b,reportFeatureOpen as g}from"../utils/behaviorTrack.js";import{_ as P}from"../../chunks/userSelect.vue_vue_type_script_setup_true_lang-DlEso2ua.js";import{_ as A}from"../../chunks/comp.selectUser.vue_vue_type_script_setup_true_lang-BQDO393q.js";import{_ as M}from"../../chunks/DictDisplay.vue_vue_type_script_setup_true_lang-DiFlFWi1.js";import{_ as D}from"../../chunks/ElScrollbars.vue_vue_type_script_setup_true_lang-0Vhrxdyr.js";import{_ as L}from"../../chunks/ElTotalTools.vue_vue_type_script_setup_true_lang-BqRnIFkw.js";import T from"../components/ElCardList.vue.js";import C from"../components/kFrame/KFrame.vue.js";import{_ as S}from"../../chunks/ElPagePagination.vue_vue_type_style_index_0_lang-CGjSyYgn.js";import{_ as y}from"../../chunks/ElCellLink.vue_vue_type_script_setup_true_lang-DXGj9pCT.js";import{_ as O}from"../../chunks/ElTagDisplay.vue_vue_type_script_setup_true_lang-DQXuYsW_.js";import{_ as F}from"../../chunks/DragHandleIcon.vue_vue_type_script_setup_true_lang-DnMWn5jY.js";import N from"../components/ElCircleBadge/ElCircleBadge.vue.js";import U from"../components/AsideCardList/AsideCardList.vue.js";import{_ as x}from"../../chunks/ElNumericInput.vue_vue_type_script_setup_true_lang-C6KlCE6f.js";import B from"../components/ElIndicatorInput/ElIndicatorInput.vue.js";import K from"../components/ElTabsPanel/ElTabsPanel.vue.js";import"vue";import"../hooks/useBehaviorAction.js";import"../utils/behaviorContext.js";import"../utils/uuid.js";import"uuid";import"axios";import"crypto-js/enc-base64";import"crypto-js/enc-utf8";import"../utils/encrypt.js";import"jsencrypt";import"../utils/dateTime.js";import"../hooks/useOperationAuth.js";import"vue-router";import"../stores/permissionStore.js";import"pinia";import"../utils/frontendBus.js";import"../utils/operationAuth.js";import"../stores/userInfoStore.js";import"../utils/userSessionStorage.js";import"../interface/enum/FlexEnum.js";import"@vueuse/core";import"../../chunks/_plugin-vue_export-helper-DlAUqK2U.js";import"element-plus";import"../utils/FrameworkUtils.js";import"xlsx-js-style";import"../hooks/usePreviewFullscreen.js";import"../components/upload/OfficePreview.vue.js";import"../api/DocumentApi.js";import"../utils/request.js";import"../utils/AxiosConfig.js";import"../utils/globalLoading.js";import"../utils/workflowTaskContext.js";import"../config/GlobalLoadingConfig.js";import"../utils/fileDownload.js";import"../utils/officePreviewUtil.js";import"../components/upload/OfficePreviewHeaderBar.vue.js";import"@element-plus/icons-vue";import"../components/ElGrid/ElGridColumnSetting.vue.js";import"../utils/columnSettingStorage.js";import"../components/business/userSelectContent.vue.js";import"../api/BasicApi.js";import"../api/SysUserApi.js";import"../api/EmployeeInfoApi.js";import"../components/business/comp.userForm.vue.js";import"../api/DeptInfoApi.js";import"../hooks/useResetRefHooks.js";import"../config/vxeSelectColumn.js";import"../hooks/useDictHooks.js";import"../api/SysDictCacheApi.js";import"../stores/dictStore.js";import"@vueuse/components";import"../components/kFrame/IframeOptions.js";import"../components/RichTextEditor/RichTextEditor.vue.js";import"../../chunks/preload-helper-BlTxHScW.js";import"../components/RichTextEditor/richTextHtmlUtils.js";import"../components/RichTextEditor/installUmoEditorApp.js";import"tdesign-vue-next";import"../components/RichTextEditor/richTextImageUpload.js";import"../utils/buildUploadHeaders.js";import"../components/ElIndicatorInput/interface.js";const Mr={mounted(){const t=this.$route,r=t?.meta?.sysMenuData;r?.id&&m(r);const o=this.$options?.__name||this.$options?.name;this.$options?.__isPageWrapper||this.$parent?.$options?.__isPageWrapper&&r?.id&&o&&o===t?.name&&(g(r,t.fullPath),this.__behaviorMenuId=r.id,this.__behaviorActivatedOnce=!1,this.__behaviorLeft=!1)},activated(){const t=this.$route?.meta?.sysMenuData;t?.id&&m(t);const r=this.__behaviorMenuId;if(r){if(!this.__behaviorActivatedOnce){this.__behaviorActivatedOnce=!0;return}b(r),this.__behaviorLeft=!1}},deactivated(){const t=this.__behaviorMenuId;t&&(i(t,"KEEP_ALIVE_DEACTIVATE"),this.__behaviorLeft=!0)},beforeUnmount(){const t=this.__behaviorMenuId;t&&i(t,"UNMOUNT",!0,!this.__behaviorLeft)},components:{operationAuth:p,ElFlex:e,ElDescForm:a,ElContentPanel:s,ElSplitPanel:n,ElCardSection:_,AttachmentPreview:f,ElDialogBody:l,ElGrid:c,ElSearch:h,ElTitle:u,ElIcons:d,ElIconBtn:E,ElIconSearch:$,ElSearchInput:v,ElTooltip:I,userSelect:P,mdmUserSelect:A,ElScrollbars:D,ElTotalTools:L,ElCardList:T,KFrame:C,ElPagePagination:S,ElCellLink:y,ElTagDisplay:O,DictDisplay:M,DragHandleIcon:F,ElCircleBadge:N,AsideCardList:U,ElNumericInput:x,ElIndicatorInput:B,ElTabsPanel:K}};export{Mr as globalMixin};
@@ -1 +1 @@
1
- import"../config/ElementPlusConfig.js";import{_ as o}from"../../chunks/ElFlex.vue_vue_type_script_setup_true_lang-DYk3SQcE.js";import{_ as r}from"../../chunks/ElDescForm.vue_vue_type_style_index_0_lang-BU3FMUMx.js";import t from"../components/icon/ElIcons.vue.js";import m from"../components/icon/ElIconBtn.vue.js";import{_ as i}from"../../chunks/operationAuth.vue_vue_type_script_lang-BgqMGXbQ.js";import p from"../components/Search/ElSearch.vue.js";import a from"../components/Search/ElIconSearch.vue.js";import e from"../components/Search/ElSearchInput.vue.js";import{_ as l}from"../../chunks/ElCellLink.vue_vue_type_script_setup_true_lang-DXGj9pCT.js";import{_ as n}from"../../chunks/ElTagDisplay.vue_vue_type_script_setup_true_lang-DQXuYsW_.js";import s from"../components/ElCircleBadge/ElCircleBadge.vue.js";import{_ as f}from"../../chunks/ElNumericInput.vue_vue_type_script_setup_true_lang-C6KlCE6f.js";import c from"../components/ElIndicatorInput/ElIndicatorInput.vue.js";import u from"../components/ElTabsPanel/ElTabsPanel.vue.js";import{INDICATOR_RANGE_TYPE as Ao,evaluateComputedIndicators as Fo,evaluateIndicatorFormula as xo,formatIndicatorFormulaResult as Ro,formatIndicatorRangeValue as go,isComputedIndicator as Co,isIndicatorReadonly as Mo,parseIndicatorRangeValue as ho,parseIndicatorTags as vo,validateIndicatorValue as No}from"../components/ElIndicatorInput/interface.js";import{useDescForm as $o}from"../hooks/useDescForm.js";import{default as Po}from"../hooks/useOperationAuth.js";import{default as Vo}from"../hooks/useFileOpen.js";import{matchOperation as bo,resolveOperationList as ko,resolveOperationMenu as Go}from"../utils/operationAuth.js";import{DATE_FORMAT as jo,DATE_TIME_FORMAT as qo,DATE_TIME_MILLISECONDS_FORMAT as wo,formatDateTime as zo}from"../utils/dateTime.js";import _ from"element-plus";import"../utils/patchWujiePopperCoordinates.js";import"vue";import"../interface/enum/FlexEnum.js";import"@vueuse/core";import"../../chunks/_plugin-vue_export-helper-DlAUqK2U.js";import"../hooks/useBehaviorAction.js";import"../utils/behaviorTrack.js";import"axios";import"crypto-js/enc-base64";import"crypto-js/enc-utf8";import"../utils/uuid.js";import"uuid";import"../utils/behaviorContext.js";import"../utils/encrypt.js";import"jsencrypt";import"vue-router";import"@element-plus/icons-vue";import"../utils/frontendBus.js";import"../components/RichTextEditor/RichTextEditor.vue.js";import"../../chunks/preload-helper-BlTxHScW.js";import"../components/RichTextEditor/richTextHtmlUtils.js";import"../components/RichTextEditor/installUmoEditorApp.js";import"tdesign-vue-next";import"../components/RichTextEditor/richTextImageUpload.js";import"../api/DocumentApi.js";import"../utils/request.js";import"../utils/AxiosConfig.js";import"../utils/globalLoading.js";import"../utils/workflowTaskContext.js";import"../config/GlobalLoadingConfig.js";import"../utils/buildUploadHeaders.js";import"../stores/permissionStore.js";import"pinia";import"../stores/userInfoStore.js";import"../utils/userSessionStorage.js";import"../hooks/useFileView.js";import"../utils/FrameworkUtils.js";import"xlsx-js-style";import"../utils/fileDownload.js";import"../utils/uploadAccept.js";const To={ElFlex:o,ElDescForm:r,ElIcons:t,ElIconBtn:m,OperationAuth:i,ElSearch:p,ElIconSearch:a,ElSearchInput:e,ElCellLink:l,ElTagDisplay:n,ElCircleBadge:s,ElNumericInput:f,ElIndicatorInput:c,ElTabsPanel:u,elementPlusConfig:_};export{jo as DATE_FORMAT,qo as DATE_TIME_FORMAT,wo as DATE_TIME_MILLISECONDS_FORMAT,s as ElCircleBadge,r as ElDescForm,c as ElIndicatorInput,f as ElNumericInput,e as ElSearchInput,u as ElTabsPanel,n as ElTagDisplay,Ao as INDICATOR_RANGE_TYPE,To as default,Fo as evaluateComputedIndicators,xo as evaluateIndicatorFormula,zo as formatDateTime,Ro as formatIndicatorFormulaResult,go as formatIndicatorRangeValue,Co as isComputedIndicator,Mo as isIndicatorReadonly,bo as matchOperation,ho as parseIndicatorRangeValue,vo as parseIndicatorTags,ko as resolveOperationList,Go as resolveOperationMenu,$o as useDescForm,Vo as useFileOpen,Po as useOperationAuth,No as validateIndicatorValue};
1
+ import"../config/ElementPlusConfig.js";import{_ as o}from"../../chunks/ElFlex.vue_vue_type_script_setup_true_lang-DYk3SQcE.js";import{_ as r}from"../../chunks/ElDescForm.vue_vue_type_style_index_0_lang-DRKuI9Xa.js";import t from"../components/icon/ElIcons.vue.js";import m from"../components/icon/ElIconBtn.vue.js";import{_ as i}from"../../chunks/operationAuth.vue_vue_type_script_lang-BgqMGXbQ.js";import p from"../components/Search/ElSearch.vue.js";import a from"../components/Search/ElIconSearch.vue.js";import e from"../components/Search/ElSearchInput.vue.js";import{_ as l}from"../../chunks/ElCellLink.vue_vue_type_script_setup_true_lang-DXGj9pCT.js";import{_ as n}from"../../chunks/ElTagDisplay.vue_vue_type_script_setup_true_lang-DQXuYsW_.js";import s from"../components/ElCircleBadge/ElCircleBadge.vue.js";import{_ as f}from"../../chunks/ElNumericInput.vue_vue_type_script_setup_true_lang-C6KlCE6f.js";import c from"../components/ElIndicatorInput/ElIndicatorInput.vue.js";import u from"../components/ElTabsPanel/ElTabsPanel.vue.js";import{INDICATOR_RANGE_TYPE as Ao,evaluateComputedIndicators as Fo,evaluateIndicatorFormula as xo,formatIndicatorFormulaResult as Ro,formatIndicatorRangeValue as go,isComputedIndicator as Co,isIndicatorReadonly as Mo,parseIndicatorRangeValue as ho,parseIndicatorTags as vo,validateIndicatorValue as No}from"../components/ElIndicatorInput/interface.js";import{useDescForm as $o}from"../hooks/useDescForm.js";import{default as Po}from"../hooks/useOperationAuth.js";import{default as Vo}from"../hooks/useFileOpen.js";import{matchOperation as bo,resolveOperationList as ko,resolveOperationMenu as Go}from"../utils/operationAuth.js";import{DATE_FORMAT as jo,DATE_TIME_FORMAT as qo,DATE_TIME_MILLISECONDS_FORMAT as wo,formatDateTime as zo}from"../utils/dateTime.js";import _ from"element-plus";import"../utils/patchWujiePopperCoordinates.js";import"vue";import"../interface/enum/FlexEnum.js";import"@vueuse/core";import"../../chunks/_plugin-vue_export-helper-DlAUqK2U.js";import"../hooks/useBehaviorAction.js";import"../utils/behaviorTrack.js";import"axios";import"crypto-js/enc-base64";import"crypto-js/enc-utf8";import"../utils/uuid.js";import"uuid";import"../utils/behaviorContext.js";import"../utils/encrypt.js";import"jsencrypt";import"vue-router";import"@element-plus/icons-vue";import"../utils/frontendBus.js";import"../components/RichTextEditor/RichTextEditor.vue.js";import"../../chunks/preload-helper-BlTxHScW.js";import"../components/RichTextEditor/richTextHtmlUtils.js";import"../components/RichTextEditor/installUmoEditorApp.js";import"tdesign-vue-next";import"../components/RichTextEditor/richTextImageUpload.js";import"../api/DocumentApi.js";import"../utils/request.js";import"../utils/AxiosConfig.js";import"../utils/globalLoading.js";import"../utils/workflowTaskContext.js";import"../config/GlobalLoadingConfig.js";import"../utils/buildUploadHeaders.js";import"../stores/permissionStore.js";import"pinia";import"../stores/userInfoStore.js";import"../utils/userSessionStorage.js";import"../hooks/useFileView.js";import"../utils/FrameworkUtils.js";import"xlsx-js-style";import"../utils/fileDownload.js";import"../utils/uploadAccept.js";const To={ElFlex:o,ElDescForm:r,ElIcons:t,ElIconBtn:m,OperationAuth:i,ElSearch:p,ElIconSearch:a,ElSearchInput:e,ElCellLink:l,ElTagDisplay:n,ElCircleBadge:s,ElNumericInput:f,ElIndicatorInput:c,ElTabsPanel:u,elementPlusConfig:_};export{jo as DATE_FORMAT,qo as DATE_TIME_FORMAT,wo as DATE_TIME_MILLISECONDS_FORMAT,s as ElCircleBadge,r as ElDescForm,c as ElIndicatorInput,f as ElNumericInput,e as ElSearchInput,u as ElTabsPanel,n as ElTagDisplay,Ao as INDICATOR_RANGE_TYPE,To as default,Fo as evaluateComputedIndicators,xo as evaluateIndicatorFormula,zo as formatDateTime,Ro as formatIndicatorFormulaResult,go as formatIndicatorRangeValue,Co as isComputedIndicator,Mo as isIndicatorReadonly,bo as matchOperation,ho as parseIndicatorRangeValue,vo as parseIndicatorTags,ko as resolveOperationList,Go as resolveOperationMenu,$o as useDescForm,Vo as useFileOpen,Po as useOperationAuth,No as validateIndicatorValue};
@@ -1 +1 @@
1
- import{globalMixin as o}from"../mixin/globalMixin.js";import"../../chunks/operationAuth.vue_vue_type_script_lang-BgqMGXbQ.js";import"vue";import"../hooks/useBehaviorAction.js";import"../utils/behaviorTrack.js";import"axios";import"crypto-js/enc-base64";import"crypto-js/enc-utf8";import"../utils/uuid.js";import"uuid";import"../utils/behaviorContext.js";import"../utils/encrypt.js";import"jsencrypt";import"../utils/dateTime.js";import"../hooks/useOperationAuth.js";import"vue-router";import"../stores/permissionStore.js";import"pinia";import"../utils/frontendBus.js";import"../utils/operationAuth.js";import"../stores/userInfoStore.js";import"../utils/userSessionStorage.js";import"../../chunks/ElFlex.vue_vue_type_script_setup_true_lang-DYk3SQcE.js";import"../interface/enum/FlexEnum.js";import"@vueuse/core";import"../components/icon/ElIcons.vue.js";import"../../chunks/_plugin-vue_export-helper-DlAUqK2U.js";import"../../chunks/ElDescForm.vue_vue_type_style_index_0_lang-BU3FMUMx.js";import"../components/ElContentPanel/ElContentPanel.vue.js";import"../components/ElSplitPanel/ElSplitPanel.vue.js";import"../components/ElCardSection/ElCardSection.vue.js";import"../components/upload/AttachmentPreview.vue.js";import"element-plus";import"../utils/FrameworkUtils.js";import"xlsx-js-style";import"../hooks/usePreviewFullscreen.js";import"../components/upload/OfficePreview.vue.js";import"../api/DocumentApi.js";import"../utils/request.js";import"../utils/AxiosConfig.js";import"../utils/globalLoading.js";import"../utils/workflowTaskContext.js";import"../config/GlobalLoadingConfig.js";import"../utils/fileDownload.js";import"../utils/officePreviewUtil.js";import"../components/upload/OfficePreviewHeaderBar.vue.js";import"@element-plus/icons-vue";import"../components/ElDialogBody/ElDialogBody.vue.js";import"../components/ElGrid/ElGrid.vue.js";import"../components/ElGrid/ElGridColumnSetting.vue.js";import"../../chunks/DragHandleIcon.vue_vue_type_script_setup_true_lang-DnMWn5jY.js";import"../utils/columnSettingStorage.js";import"../../chunks/ElTotalTools.vue_vue_type_script_setup_true_lang-BqRnIFkw.js";import"../../chunks/ElPagePagination.vue_vue_type_style_index_0_lang-CGjSyYgn.js";import"../components/Search/ElSearch.vue.js";import"../components/Title/ElTitle.vue.js";import"../components/icon/ElIconBtn.vue.js";import"../components/Search/ElIconSearch.vue.js";import"../components/Search/ElSearchInput.vue.js";import"../../chunks/ElCopyTooltip.vue_vue_type_script_setup_true_lang-Qg1P3If6.js";/* empty css */import"../../chunks/userSelect.vue_vue_type_script_setup_true_lang-DlEso2ua.js";import"../components/business/userSelectContent.vue.js";import"../api/BasicApi.js";import"../api/SysUserApi.js";import"../../chunks/comp.selectUser.vue_vue_type_script_setup_true_lang-BQDO393q.js";import"../api/EmployeeInfoApi.js";import"../components/business/comp.userForm.vue.js";import"../api/DeptInfoApi.js";import"../hooks/useResetRefHooks.js";import"../config/vxeSelectColumn.js";import"../../chunks/ElTagDisplay.vue_vue_type_script_setup_true_lang-DQXuYsW_.js";import"../../chunks/DictDisplay.vue_vue_type_script_setup_true_lang-DiFlFWi1.js";import"../hooks/useDictHooks.js";import"../api/SysDictCacheApi.js";import"../stores/dictStore.js";import"../../chunks/ElScrollbars.vue_vue_type_script_setup_true_lang-0Vhrxdyr.js";import"@vueuse/components";import"../components/ElCardList.vue.js";import"../components/kFrame/KFrame.vue.js";import"../components/kFrame/IframeOptions.js";import"../../chunks/ElCellLink.vue_vue_type_script_setup_true_lang-DXGj9pCT.js";import"../components/ElCircleBadge/ElCircleBadge.vue.js";import"../components/AsideCardList/AsideCardList.vue.js";import"../../chunks/ElNumericInput.vue_vue_type_script_setup_true_lang-C6KlCE6f.js";import"../components/ElIndicatorInput/ElIndicatorInput.vue.js";import"../components/RichTextEditor/RichTextEditor.vue.js";import"../../chunks/preload-helper-BlTxHScW.js";import"../components/RichTextEditor/richTextHtmlUtils.js";import"../components/RichTextEditor/installUmoEditorApp.js";import"tdesign-vue-next";import"../components/RichTextEditor/richTextImageUpload.js";import"../utils/buildUploadHeaders.js";import"../components/ElIndicatorInput/interface.js";import"../components/ElTabsPanel/ElTabsPanel.vue.js";const Ri={install(i){i.mixin(o)}};export{Ri as default};
1
+ import{globalMixin as o}from"../mixin/globalMixin.js";import"../../chunks/operationAuth.vue_vue_type_script_lang-BgqMGXbQ.js";import"vue";import"../hooks/useBehaviorAction.js";import"../utils/behaviorTrack.js";import"axios";import"crypto-js/enc-base64";import"crypto-js/enc-utf8";import"../utils/uuid.js";import"uuid";import"../utils/behaviorContext.js";import"../utils/encrypt.js";import"jsencrypt";import"../utils/dateTime.js";import"../hooks/useOperationAuth.js";import"vue-router";import"../stores/permissionStore.js";import"pinia";import"../utils/frontendBus.js";import"../utils/operationAuth.js";import"../stores/userInfoStore.js";import"../utils/userSessionStorage.js";import"../../chunks/ElFlex.vue_vue_type_script_setup_true_lang-DYk3SQcE.js";import"../interface/enum/FlexEnum.js";import"@vueuse/core";import"../components/icon/ElIcons.vue.js";import"../../chunks/_plugin-vue_export-helper-DlAUqK2U.js";import"../../chunks/ElDescForm.vue_vue_type_style_index_0_lang-DRKuI9Xa.js";import"../components/ElContentPanel/ElContentPanel.vue.js";import"../components/ElSplitPanel/ElSplitPanel.vue.js";import"../components/ElCardSection/ElCardSection.vue.js";import"../components/upload/AttachmentPreview.vue.js";import"element-plus";import"../utils/FrameworkUtils.js";import"xlsx-js-style";import"../hooks/usePreviewFullscreen.js";import"../components/upload/OfficePreview.vue.js";import"../api/DocumentApi.js";import"../utils/request.js";import"../utils/AxiosConfig.js";import"../utils/globalLoading.js";import"../utils/workflowTaskContext.js";import"../config/GlobalLoadingConfig.js";import"../utils/fileDownload.js";import"../utils/officePreviewUtil.js";import"../components/upload/OfficePreviewHeaderBar.vue.js";import"@element-plus/icons-vue";import"../components/ElDialogBody/ElDialogBody.vue.js";import"../components/ElGrid/ElGrid.vue.js";import"../components/ElGrid/ElGridColumnSetting.vue.js";import"../../chunks/DragHandleIcon.vue_vue_type_script_setup_true_lang-DnMWn5jY.js";import"../utils/columnSettingStorage.js";import"../../chunks/ElTotalTools.vue_vue_type_script_setup_true_lang-BqRnIFkw.js";import"../../chunks/ElPagePagination.vue_vue_type_style_index_0_lang-CGjSyYgn.js";import"../components/Search/ElSearch.vue.js";import"../components/Title/ElTitle.vue.js";import"../components/icon/ElIconBtn.vue.js";import"../components/Search/ElIconSearch.vue.js";import"../components/Search/ElSearchInput.vue.js";import"../../chunks/ElCopyTooltip.vue_vue_type_script_setup_true_lang-MdgIHwF2.js";/* empty css */import"../../chunks/userSelect.vue_vue_type_script_setup_true_lang-DlEso2ua.js";import"../components/business/userSelectContent.vue.js";import"../api/BasicApi.js";import"../api/SysUserApi.js";import"../../chunks/comp.selectUser.vue_vue_type_script_setup_true_lang-BQDO393q.js";import"../api/EmployeeInfoApi.js";import"../components/business/comp.userForm.vue.js";import"../api/DeptInfoApi.js";import"../hooks/useResetRefHooks.js";import"../config/vxeSelectColumn.js";import"../../chunks/ElTagDisplay.vue_vue_type_script_setup_true_lang-DQXuYsW_.js";import"../../chunks/DictDisplay.vue_vue_type_script_setup_true_lang-DiFlFWi1.js";import"../hooks/useDictHooks.js";import"../api/SysDictCacheApi.js";import"../stores/dictStore.js";import"../../chunks/ElScrollbars.vue_vue_type_script_setup_true_lang-0Vhrxdyr.js";import"@vueuse/components";import"../components/ElCardList.vue.js";import"../components/kFrame/KFrame.vue.js";import"../components/kFrame/IframeOptions.js";import"../../chunks/ElCellLink.vue_vue_type_script_setup_true_lang-DXGj9pCT.js";import"../components/ElCircleBadge/ElCircleBadge.vue.js";import"../components/AsideCardList/AsideCardList.vue.js";import"../../chunks/ElNumericInput.vue_vue_type_script_setup_true_lang-C6KlCE6f.js";import"../components/ElIndicatorInput/ElIndicatorInput.vue.js";import"../components/RichTextEditor/RichTextEditor.vue.js";import"../../chunks/preload-helper-BlTxHScW.js";import"../components/RichTextEditor/richTextHtmlUtils.js";import"../components/RichTextEditor/installUmoEditorApp.js";import"tdesign-vue-next";import"../components/RichTextEditor/richTextImageUpload.js";import"../utils/buildUploadHeaders.js";import"../components/ElIndicatorInput/interface.js";import"../components/ElTabsPanel/ElTabsPanel.vue.js";const Ri={install(i){i.mixin(o)}};export{Ri as default};
@@ -1 +1 @@
1
- import{ref as m,createApp as g,h as t}from"vue";import v,{ElDialog as y,ElDrawer as C,ElButton as n}from"element-plus";import E from"./plugins.js";import h from"../stores/storeConfig.js";/* empty css */import"../config/ElementPlusConfig.js";import b from"element-plus/es/locale/lang/zh-cn";import"../mixin/globalMixin.js";import"../../chunks/operationAuth.vue_vue_type_script_lang-BgqMGXbQ.js";import"../hooks/useBehaviorAction.js";import"../utils/behaviorTrack.js";import"axios";import"crypto-js/enc-base64";import"crypto-js/enc-utf8";import"../utils/uuid.js";import"uuid";import"../utils/behaviorContext.js";import"../utils/encrypt.js";import"jsencrypt";import"../utils/dateTime.js";import"../hooks/useOperationAuth.js";import"vue-router";import"../stores/permissionStore.js";import"pinia";import"../utils/frontendBus.js";import"../utils/operationAuth.js";import"../stores/userInfoStore.js";import"../utils/userSessionStorage.js";import"../../chunks/ElFlex.vue_vue_type_script_setup_true_lang-DYk3SQcE.js";import"../interface/enum/FlexEnum.js";import"@vueuse/core";import"../components/icon/ElIcons.vue.js";import"../../chunks/_plugin-vue_export-helper-DlAUqK2U.js";import"../../chunks/ElDescForm.vue_vue_type_style_index_0_lang-BU3FMUMx.js";import"../components/ElContentPanel/ElContentPanel.vue.js";import"../components/ElSplitPanel/ElSplitPanel.vue.js";import"../components/ElCardSection/ElCardSection.vue.js";import"../components/upload/AttachmentPreview.vue.js";import"../utils/FrameworkUtils.js";import"xlsx-js-style";import"../hooks/usePreviewFullscreen.js";import"../components/upload/OfficePreview.vue.js";import"../api/DocumentApi.js";import"../utils/request.js";import"../utils/AxiosConfig.js";import"../utils/globalLoading.js";import"../utils/workflowTaskContext.js";import"../config/GlobalLoadingConfig.js";import"../utils/fileDownload.js";import"../utils/officePreviewUtil.js";import"../components/upload/OfficePreviewHeaderBar.vue.js";import"@element-plus/icons-vue";import"../components/ElDialogBody/ElDialogBody.vue.js";import"../components/ElGrid/ElGrid.vue.js";import"../components/ElGrid/ElGridColumnSetting.vue.js";import"../../chunks/DragHandleIcon.vue_vue_type_script_setup_true_lang-DnMWn5jY.js";import"../utils/columnSettingStorage.js";import"../../chunks/ElTotalTools.vue_vue_type_script_setup_true_lang-BqRnIFkw.js";import"../../chunks/ElPagePagination.vue_vue_type_style_index_0_lang-CGjSyYgn.js";import"../components/Search/ElSearch.vue.js";import"../components/Title/ElTitle.vue.js";import"../components/icon/ElIconBtn.vue.js";import"../components/Search/ElIconSearch.vue.js";import"../components/Search/ElSearchInput.vue.js";import"../../chunks/ElCopyTooltip.vue_vue_type_script_setup_true_lang-Qg1P3If6.js";/* empty css */import"../../chunks/userSelect.vue_vue_type_script_setup_true_lang-DlEso2ua.js";import"../components/business/userSelectContent.vue.js";import"../api/BasicApi.js";import"../api/SysUserApi.js";import"../../chunks/comp.selectUser.vue_vue_type_script_setup_true_lang-BQDO393q.js";import"../api/EmployeeInfoApi.js";import"../components/business/comp.userForm.vue.js";import"../api/DeptInfoApi.js";import"../hooks/useResetRefHooks.js";import"../config/vxeSelectColumn.js";import"../../chunks/ElTagDisplay.vue_vue_type_script_setup_true_lang-DQXuYsW_.js";import"../../chunks/DictDisplay.vue_vue_type_script_setup_true_lang-DiFlFWi1.js";import"../hooks/useDictHooks.js";import"../api/SysDictCacheApi.js";import"../stores/dictStore.js";import"../../chunks/ElScrollbars.vue_vue_type_script_setup_true_lang-0Vhrxdyr.js";import"@vueuse/components";import"../components/ElCardList.vue.js";import"../components/kFrame/KFrame.vue.js";import"../components/kFrame/IframeOptions.js";import"../../chunks/ElCellLink.vue_vue_type_script_setup_true_lang-DXGj9pCT.js";import"../components/ElCircleBadge/ElCircleBadge.vue.js";import"../components/AsideCardList/AsideCardList.vue.js";import"../../chunks/ElNumericInput.vue_vue_type_script_setup_true_lang-C6KlCE6f.js";import"../components/ElIndicatorInput/ElIndicatorInput.vue.js";import"../components/RichTextEditor/RichTextEditor.vue.js";import"../../chunks/preload-helper-BlTxHScW.js";import"../components/RichTextEditor/richTextHtmlUtils.js";import"../components/RichTextEditor/installUmoEditorApp.js";import"tdesign-vue-next";import"../components/RichTextEditor/richTextImageUpload.js";import"../utils/buildUploadHeaders.js";import"../components/ElIndicatorInput/interface.js";import"../components/ElTabsPanel/ElTabsPanel.vue.js";import"pinia-plugin-store";import"../utils/patchWujiePopperCoordinates.js";function Ct(a,u,c,s,d="dialog"){const p=m(!0),i=m(!1),e=m(),o=g(()=>t(d==="dialog"?y:C,{...c,modelValue:p.value,onClosed(){o.unmount(),document.body.removeChild(r)},onClose(){l()}},{default:()=>t(a,{...u,ref:e}),footer:()=>t("div",{className:"dialog-footer"},[t(n,{onClick:l},()=>"取 消"),t(n,{type:"primary",onClick:f,loading:i.value},()=>"确 认")])}));o.use(E),o.use(v,{locale:b}),o.use(h),o.use(s);const r=document.createElement("div");document.body.appendChild(r),o.mount(r);async function f(){i.value=!0;try{await e.value?.confirm?.()}finally{i.value=!1}}function l(){p.value=!1}}export{Ct as renderDialog};
1
+ import{ref as m,createApp as g,h as t}from"vue";import v,{ElDialog as y,ElDrawer as C,ElButton as n}from"element-plus";import E from"./plugins.js";import h from"../stores/storeConfig.js";/* empty css */import"../config/ElementPlusConfig.js";import b from"element-plus/es/locale/lang/zh-cn";import"../mixin/globalMixin.js";import"../../chunks/operationAuth.vue_vue_type_script_lang-BgqMGXbQ.js";import"../hooks/useBehaviorAction.js";import"../utils/behaviorTrack.js";import"axios";import"crypto-js/enc-base64";import"crypto-js/enc-utf8";import"../utils/uuid.js";import"uuid";import"../utils/behaviorContext.js";import"../utils/encrypt.js";import"jsencrypt";import"../utils/dateTime.js";import"../hooks/useOperationAuth.js";import"vue-router";import"../stores/permissionStore.js";import"pinia";import"../utils/frontendBus.js";import"../utils/operationAuth.js";import"../stores/userInfoStore.js";import"../utils/userSessionStorage.js";import"../../chunks/ElFlex.vue_vue_type_script_setup_true_lang-DYk3SQcE.js";import"../interface/enum/FlexEnum.js";import"@vueuse/core";import"../components/icon/ElIcons.vue.js";import"../../chunks/_plugin-vue_export-helper-DlAUqK2U.js";import"../../chunks/ElDescForm.vue_vue_type_style_index_0_lang-DRKuI9Xa.js";import"../components/ElContentPanel/ElContentPanel.vue.js";import"../components/ElSplitPanel/ElSplitPanel.vue.js";import"../components/ElCardSection/ElCardSection.vue.js";import"../components/upload/AttachmentPreview.vue.js";import"../utils/FrameworkUtils.js";import"xlsx-js-style";import"../hooks/usePreviewFullscreen.js";import"../components/upload/OfficePreview.vue.js";import"../api/DocumentApi.js";import"../utils/request.js";import"../utils/AxiosConfig.js";import"../utils/globalLoading.js";import"../utils/workflowTaskContext.js";import"../config/GlobalLoadingConfig.js";import"../utils/fileDownload.js";import"../utils/officePreviewUtil.js";import"../components/upload/OfficePreviewHeaderBar.vue.js";import"@element-plus/icons-vue";import"../components/ElDialogBody/ElDialogBody.vue.js";import"../components/ElGrid/ElGrid.vue.js";import"../components/ElGrid/ElGridColumnSetting.vue.js";import"../../chunks/DragHandleIcon.vue_vue_type_script_setup_true_lang-DnMWn5jY.js";import"../utils/columnSettingStorage.js";import"../../chunks/ElTotalTools.vue_vue_type_script_setup_true_lang-BqRnIFkw.js";import"../../chunks/ElPagePagination.vue_vue_type_style_index_0_lang-CGjSyYgn.js";import"../components/Search/ElSearch.vue.js";import"../components/Title/ElTitle.vue.js";import"../components/icon/ElIconBtn.vue.js";import"../components/Search/ElIconSearch.vue.js";import"../components/Search/ElSearchInput.vue.js";import"../../chunks/ElCopyTooltip.vue_vue_type_script_setup_true_lang-MdgIHwF2.js";/* empty css */import"../../chunks/userSelect.vue_vue_type_script_setup_true_lang-DlEso2ua.js";import"../components/business/userSelectContent.vue.js";import"../api/BasicApi.js";import"../api/SysUserApi.js";import"../../chunks/comp.selectUser.vue_vue_type_script_setup_true_lang-BQDO393q.js";import"../api/EmployeeInfoApi.js";import"../components/business/comp.userForm.vue.js";import"../api/DeptInfoApi.js";import"../hooks/useResetRefHooks.js";import"../config/vxeSelectColumn.js";import"../../chunks/ElTagDisplay.vue_vue_type_script_setup_true_lang-DQXuYsW_.js";import"../../chunks/DictDisplay.vue_vue_type_script_setup_true_lang-DiFlFWi1.js";import"../hooks/useDictHooks.js";import"../api/SysDictCacheApi.js";import"../stores/dictStore.js";import"../../chunks/ElScrollbars.vue_vue_type_script_setup_true_lang-0Vhrxdyr.js";import"@vueuse/components";import"../components/ElCardList.vue.js";import"../components/kFrame/KFrame.vue.js";import"../components/kFrame/IframeOptions.js";import"../../chunks/ElCellLink.vue_vue_type_script_setup_true_lang-DXGj9pCT.js";import"../components/ElCircleBadge/ElCircleBadge.vue.js";import"../components/AsideCardList/AsideCardList.vue.js";import"../../chunks/ElNumericInput.vue_vue_type_script_setup_true_lang-C6KlCE6f.js";import"../components/ElIndicatorInput/ElIndicatorInput.vue.js";import"../components/RichTextEditor/RichTextEditor.vue.js";import"../../chunks/preload-helper-BlTxHScW.js";import"../components/RichTextEditor/richTextHtmlUtils.js";import"../components/RichTextEditor/installUmoEditorApp.js";import"tdesign-vue-next";import"../components/RichTextEditor/richTextImageUpload.js";import"../utils/buildUploadHeaders.js";import"../components/ElIndicatorInput/interface.js";import"../components/ElTabsPanel/ElTabsPanel.vue.js";import"pinia-plugin-store";import"../utils/patchWujiePopperCoordinates.js";function Ct(a,u,c,s,d="dialog"){const p=m(!0),i=m(!1),e=m(),o=g(()=>t(d==="dialog"?y:C,{...c,modelValue:p.value,onClosed(){o.unmount(),document.body.removeChild(r)},onClose(){l()}},{default:()=>t(a,{...u,ref:e}),footer:()=>t("div",{className:"dialog-footer"},[t(n,{onClick:l},()=>"取 消"),t(n,{type:"primary",onClick:f,loading:i.value},()=>"确 认")])}));o.use(E),o.use(v,{locale:b}),o.use(h),o.use(s);const r=document.createElement("div");document.body.appendChild(r),o.mount(r);async function f(){i.value=!0;try{await e.value?.confirm?.()}finally{i.value=!1}}function l(){p.value=!1}}export{Ct as renderDialog};
@@ -1 +1 @@
1
- import e from"../api/DocumentApi.js";import"./request.js";import"./AxiosConfig.js";import"axios";import"./uuid.js";import"uuid";import"./encrypt.js";import"jsencrypt";import"./behaviorTrack.js";import"crypto-js/enc-base64";import"crypto-js/enc-utf8";import"./behaviorContext.js";import"./dateTime.js";import"element-plus";import"./frontendBus.js";import"./globalLoading.js";import"vue";import"./workflowTaskContext.js";import"../config/GlobalLoadingConfig.js";const v=async(o,i,m)=>{if(!o)return;const p=await e.downloadFile(o,m),r=URL.createObjectURL(p),t=document.createElement("a");t.href=r,t.download=i||o,t.click(),URL.revokeObjectURL(r)};export{v as default,v as downloadFileById};
1
+ import a from"../api/DocumentApi.js";import"./request.js";import"./AxiosConfig.js";import"axios";import"./uuid.js";import"uuid";import"./encrypt.js";import"jsencrypt";import"./behaviorTrack.js";import"crypto-js/enc-base64";import"crypto-js/enc-utf8";import"./behaviorContext.js";import"./dateTime.js";import"element-plus";import"./frontendBus.js";import"./globalLoading.js";import"vue";import"./workflowTaskContext.js";import"../config/GlobalLoadingConfig.js";const $=async(o,e,r)=>{if(!o)return;const{blob:t,fileName:p}=await a.downloadFile(o,r),m=URL.createObjectURL(t),i=document.createElement("a");i.href=m,i.download=p||c(e,o,r),i.click(),URL.revokeObjectURL(m)},c=(o,e,r)=>{const t=o||e;return r?.toLowerCase()==="pdf"&&!/\.pdf$/i.test(t)?t.replace(/\.[^./\\]+$/,"")+".pdf":t};export{$ as default,$ as downloadFileById};