adtec-hnyzfc-core-package 1.4.8 → 1.5.0
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.
- package/dist/chunks/ElDescForm.vue_vue_type_style_index_0_lang-BU3FMUMx.js +1 -0
- package/dist/chunks/operationAuth.vue_vue_type_script_lang-B0muG8DV.js +1 -0
- package/dist/src/components/ElDescForm/ElDescForm.vue.d.ts +15 -0
- package/dist/src/components/ElDescForm/ElDescForm.vue.js +1 -1
- package/dist/src/components/ElIndicatorInput/ElIndicatorInput.vue.js +1 -1
- package/dist/src/components/ElIndicatorInput/interface.d.ts +37 -2
- package/dist/src/components/ElIndicatorInput/interface.js +1 -1
- package/dist/src/components/OperationAuth/operationAuth.vue.js +1 -1
- package/dist/src/components/icon/ElIconBtn.vue.d.ts +1 -1
- package/dist/src/components/workflow/WorkflowTodoShell.vue.d.ts +2 -4
- package/dist/src/components/workflow/WorkflowTodoShell.vue.js +5 -2
- package/dist/src/mixin/globalMixin.js +1 -1
- package/dist/src/packages/index.d.ts +20 -2
- package/dist/src/packages/index.js +1 -1
- package/dist/src/plugins/plugins.js +1 -1
- package/dist/src/plugins/renderDialog.js +1 -1
- package/dist/src/utils/modules.js +2 -2
- package/dist/styles/element-ui.css +1 -1
- package/package.json +1 -1
- package/dist/chunks/ElDescForm.vue_vue_type_style_index_0_lang-pc2XfCVw.js +0 -1
- package/dist/chunks/operationAuth.vue_vue_type_script_lang-eWi-rEN3.js +0 -1
|
@@ -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 m,createCommentVNode as S,createVNode as C,createElementBlock as x,Fragment as M,renderList as T,normalizeClass as Y,createElementVNode as z,toDisplayString as A,mergeProps as v,createTextVNode as D,renderSlot as L,nextTick as I}from"vue";import{DATE_FORMAT as be,formatDateTime as fe}from"../src/utils/dateTime.js";const _e=["onMouseenter"],ge={key:11,class:"el-desc-form__readonly-slot"},K="—",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(n,{expose:P}){const f=n,g=de(),V=new Map,k=new Map,U=ie({}),w=e=>{const t=V.get(e),l=!!t&&t.scrollWidth>t.clientWidth;U[e]!==l&&(U[e]=l)},N=()=>{I(()=>{V.forEach((e,t)=>w(t))})},$=(e,t)=>{const l=t;if(V.get(e)===l){l&&w(e);return}if(k.get(e)?.disconnect(),k.delete(e),delete U[e],!l){V.delete(e);return}if(V.set(e,l),typeof ResizeObserver<"u"){const s=new ResizeObserver(()=>w(e));s.observe(l),k.set(e,s)}I(()=>w(e))};me(N),ye(N),ve(()=>{k.forEach(e=>e.disconnect()),k.clear(),V.clear()});const y=E(()=>Math.min(4,Math.max(1,f.column||4))),H=e=>{const t=g.value?.$el;if(!t)return;const l=Array.from(t.querySelectorAll("input, textarea")).filter(i=>!i.disabled&&i.type!=="checkbox"&&i.type!=="radio"&&i.type!=="hidden"&&(i.offsetParent!==null||i.getClientRects().length>0));if(!l.length)return;const a=document.activeElement;if(!a||!l.includes(a))return;const s=l.indexOf(a),u=e.shiftKey?-1:1,b=(s+u+l.length)%l.length;e.preventDefault();const _=l[b];_.focus();try{const i=_.value.length;_.setSelectionRange(i,i)}catch{}},j=E(()=>{const e={...f.rules};for(const t of f.fields)t.rules?.length&&(e[t.prop]=[...e[t.prop]||[],...t.rules]);return e}),W=E(()=>{const e=[];let t=y.value,l=-1;for(const a of f.fields){if(!(typeof a.show=="function"?a.show(f.model):a.show!==!1))continue;const u=Q(a),b=Math.min(Math.max(1,u.span??1),y.value);if(b===y.value&&t<y.value&&l>=0){const _=e[l],i=Math.min(Math.max(1,_.span??1),y.value);_.span=Math.min(i+t,y.value),t=y.value}e.push(u),l=e.length-1,t=b<t?t-b:y.value}return e}),F=e=>{const t=e.props||{};return f.readonly===!0||e.readonly===!0||t.readonly===!0},B=(e,t)=>e===t||String(e)===String(t),R=(e,t)=>{if(!e?.length)return;const l=e.find(a=>B(a.value,t));return l===void 0?void 0:String(l.label)},O=(e,t)=>{if(e?.length)for(const l of e){if(B(l.value,t))return String(l.label??l.name??"");if(l.children?.length){const a=O(l.children,t);if(a)return a}}},G=(e,t)=>{let l=e||[];const a=[];for(const s of t){const u=l.find(b=>B(b.value,s));if(!u)break;a.push(String(u.label??u.name??"")),l=u.children||[]}return a.join(" / ")},h=e=>e.trim()||K,q=e=>{const t=f.model?.[e.prop];if(t==null||typeof t=="string"&&t.trim()===""||Array.isArray(t)&&t.length===0)return K;const l=e.props||{},a=e.options;if(e.type==="select")return Array.isArray(t)?h(t.map(s=>R(a,s)??String(s)).filter(Boolean).join("、")):h(R(a,t)??String(t));if(e.type==="radio")return h(R(a,t)??String(t));if(e.type==="checkbox"){const s=Array.isArray(t)?t:[t];return h(s.map(u=>R(a,u)??String(u)).filter(Boolean).join("、"))}if(e.type==="tree-select"){const s=a||l.data;return Array.isArray(t)?h(t.map(u=>O(s,u)??String(u)).filter(Boolean).join("、")):h(O(s,t)??String(t))}if(e.type==="cascader"){const s=G(a,Array.isArray(t)?t:[t]);return h(s||(Array.isArray(t)?t.join(" / "):String(t)))}if(e.type==="switch")return t===!0||t===1||t==="1"?l["active-text"]||"是":l["inactive-text"]||"否";if(e.type==="date"){const s=String(l.type||"date"),u=String(l.valueFormat||l.format||"")||(s==="year"?"YYYY":s==="month"?"YYYY-MM":s==="time"?"HH:mm:ss":be);return h(fe(String(t),{format:u})||String(t))}return h(String(t))},J=e=>!!j.value[e.prop]?.some(l=>l.required),Q=e=>{const t=l=>typeof l=="function"?l(f.model):l;return{...e,span:e.type==="textarea"?y.value:Math.min(Math.max(1,e.span??1),y.value),label:t(e.label),tip:e.tip?t(e.tip):void 0,options:e.options?t(e.options):void 0,placeholder:e.placeholder?t(e.placeholder):void 0,props:e.props?t(e.props):void 0}};return P({validate:e=>g.value?.validate(e),validateField:(e,t)=>g.value?.validateField(e,t),scrollToField:e=>g.value?.scrollToField(e),resetFields:()=>g.value?.resetFields(),clearValidate:()=>g.value?.clearValidate()}),(e,t)=>{const l=p("el-title"),a=p("el-icons"),s=p("el-tooltip"),u=p("el-input"),b=p("el-numeric-input"),_=p("el-option"),i=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:g,class:"el-desc-form",model:n.model,rules:j.value,"validate-on-rule-change":!1,"scroll-to-error":n.scrollToError,"scroll-into-view-options":n.scrollIntoViewOptions,onKeydown:he(H,["tab"])},{default:m(()=>[S(" 内容块二级标题:弹窗/抽屉内表单区块统一用 el-desc-form title 声明式渲染,避免各页面手写 "),n.title?(c(),d(l,{key:0,level:"1",title:n.title,style:{"border-bottom":"var(--border)","margin-bottom":"8px"}},null,8,["title"])):S("v-if",!0),C(ce,{direction:"vertical",column:y.value,border:n.border},{default:m(()=>[(c(!0),x(M,null,T(W.value,o=>(c(),d(se,{key:o.prop,label:o.label||void 0,span:o.span},{label:m(()=>[o.label?(c(),x("span",{key:0,class:Y(["el-desc-form__label",{"el-desc-form__label--required":J(o)}])},[D(A(o.label)+" ",1),o.tip?(c(),d(s,{key:0,content:o.tip,placement:"top","popper-class":"el-desc-form-tip-popper"},{default:m(()=>[C(a,{"model-value":"adtec-info",class:"el-desc-form__label-tip"})]),_:1},8,["content"])):S("v-if",!0)],2)):S("v-if",!0)]),default:m(()=>[C(ae,{prop:F(o)?void 0:o.prop,class:Y({"el-desc-form__form-item--multiline":o.type==="textarea"}),style:{"margin-bottom":"0"},"hide-required-asterisk":""},{default:m(()=>[S(" 只读模式:统一处理文本溢出,只有内容超出单元格宽度时才打开 tooltip "),F(o)&&o.type&&o.type!=="slot"?(c(),d(s,{key:0,content:q(o),disabled:!U[o.prop],effect:"light",placement:"top","popper-class":"el-desc-form-readonly-tip-popper"},{default:m(()=>[z("span",{class:Y(["el-desc-form__readonly-text",{"el-desc-form__readonly-text--multiline":o.type==="textarea"}]),onMouseenter:r=>w(o.prop)},[z("span",{ref_for:!0,ref:r=>$(o.prop,r),class:"el-desc-form__readonly-text-content"},A(q(o)),513)],42,_e)]),_:2},1032,["content","disabled"])):o.type==="input"?(c(),d(u,v({key:1,modelValue:n.model[o.prop],"onUpdate:modelValue":r=>n.model[o.prop]=r},{ref_for:!0},o.props,{placeholder:o.placeholder}),null,16,["modelValue","onUpdate:modelValue","placeholder"])):o.type==="textarea"?(c(),d(u,v({key:2,modelValue:n.model[o.prop],"onUpdate:modelValue":r=>n.model[o.prop]=r,type:"textarea",autosize:{minRows:2,maxRows:4}},{ref_for:!0},o.props,{placeholder:o.placeholder}),null,16,["modelValue","onUpdate:modelValue","placeholder"])):o.type==="number"?(c(),d(b,v({key:3,modelValue:n.model[o.prop],"onUpdate:modelValue":r=>n.model[o.prop]=r},{ref_for:!0},o.props),null,16,["modelValue","onUpdate:modelValue"])):o.type==="select"?(c(),d(i,v({key:4,modelValue:n.model[o.prop],"onUpdate:modelValue":r=>n.model[o.prop]=r},{ref_for:!0},o.props,{placeholder:o.placeholder,clearable:""}),{default:m(()=>[(c(!0),x(M,null,T(o.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"])):o.type==="date"?(c(),d(X,v({key:5,modelValue:n.model[o.prop],"onUpdate:modelValue":r=>n.model[o.prop]=r},{ref_for:!0},o.props,{type:o.props?.type||"date",placeholder:o.placeholder,style:{width:"100%"}}),null,16,["modelValue","onUpdate:modelValue","type","placeholder"])):o.type==="switch"?(c(),d(Z,v({key:6,modelValue:n.model[o.prop],"onUpdate:modelValue":r=>n.model[o.prop]=r},{ref_for:!0},o.props),null,16,["modelValue","onUpdate:modelValue"])):o.type==="radio"?(c(),d(oe,v({key:7,modelValue:n.model[o.prop],"onUpdate:modelValue":r=>n.model[o.prop]=r},{ref_for:!0},o.props),{default:m(()=>[(c(!0),x(M,null,T(o.options,r=>(c(),d(ee,{key:r.value,value:r.value},{default:m(()=>[D(A(r.label),1)]),_:2},1032,["value"]))),128))]),_:2},1040,["modelValue","onUpdate:modelValue"])):o.type==="checkbox"?(c(),d(le,v({key:8,modelValue:n.model[o.prop],"onUpdate:modelValue":r=>n.model[o.prop]=r},{ref_for:!0},o.props),{default:m(()=>[(c(!0),x(M,null,T(o.options,r=>(c(),d(te,{key:r.value,value:r.value},{default:m(()=>[D(A(r.label),1)]),_:2},1032,["value"]))),128))]),_:2},1040,["modelValue","onUpdate:modelValue"])):o.type==="tree-select"?(c(),d(re,v({key:9,modelValue:n.model[o.prop],"onUpdate:modelValue":r=>n.model[o.prop]=r},{ref_for:!0},o.props,{placeholder:o.placeholder,style:{width:"100%"}}),null,16,["modelValue","onUpdate:modelValue","placeholder"])):o.type==="cascader"?(c(),d(ne,v({key:10,modelValue:n.model[o.prop],"onUpdate:modelValue":r=>n.model[o.prop]=r,options:o.options},{ref_for:!0},o.props,{style:{width:"100%"}}),null,16,["modelValue","onUpdate:modelValue","options"])):F(o)?(c(),x("div",ge,[L(e.$slots,o.slot||o.prop,{field:o,model:n.model})])):L(e.$slots,o.slot||o.prop,{field:o,model:n.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 _};
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
import{defineComponent as j,computed as n,isVNode as c,h as r,resolveComponent as s,resolveDynamicComponent as V,cloneVNode as F}from"vue";import{useRoute as G}from"vue-router";import{userInfoStore as Q}from"../src/stores/userInfoStore.js";import{permissionStore as X}from"../src/stores/permissionStore.js";import ee from"../src/hooks/useBehaviorAction.js";const x={primary:"var(--el-color-primary)",success:"var(--el-color-success)",info:"var(--el-color-info)",warning:"var(--el-color-warning)",danger:"var(--el-color-danger)",error:"var(--el-color-danger)"},le=j({name:"OperationAuth",props:{operCode:{type:[String,Array],required:!0},menuCode:String,noConfig:Boolean,loadType:String,icon:String,remark:String,alias:String,color:String},setup(l,{slots:u}){const B=G(),z=Q(),O=X(),{runBehaviorAction:R}=ee(),M=n(()=>Array.isArray(l.operCode)?l.operCode:[l.operCode]),Z=n(()=>B.meta?.sysMenuData),E=n(()=>O.getActiveMenuInfo),D=n(()=>{if(l.menuCode)return z.getUserInfo?.menuList?.find($=>$.code===l.menuCode)?.operation||[];const e=Z.value,o=E.value,t=e?.code?e:o,a=t?.code;if(!a)return[];const k=z.getUserInfo?.menuList?.find(A=>A.code===a);return k?k.operation||[]:t.operation||[]}),v=n(()=>D.value.find(e=>M.value.includes(e.code))),U=n(()=>!!v.value),I=n(()=>{const e=l.remark??v.value?.remark;if(!e)return{alias:"",color:""};try{const o=JSON.parse(e);return{alias:o?.aliases?.alias1||o?.aliases?.alias||"",color:o?.color||o?.icon?.color||o?.text?.color||""}}catch{return{alias:"",color:""}}}),d=n(()=>(l.icon??v.value?.icon??"").trim()),h=n(()=>l.alias||I.value.alias||v.value?.name||""),S=n(()=>v.value?.code||M.value[0]||""),p=n(()=>h.value||S.value||"未命名操作"),f=n(()=>({"data-behavior-operation-code":S.value,"data-behavior-operation-name":p.value,"data-behavior-scope":"manual","data-track-code":S.value,"data-track-name":p.value})),_=n(()=>l.color||I.value.color||""),y=n(()=>_.value.trim().toLowerCase()),i=n(()=>y.value!==""&&y.value in x),C=n(()=>{if(i.value)return y.value==="error"?"danger":y.value}),g=n(()=>{if(i.value)return;const e=_.value.trim();if(e)return{color:x[y.value]||e}}),W=n(()=>l.loadType??v.value?.loadType??""),b=n(()=>String(W.value??"")),L=n(()=>{const e=u.default?.()[0];if(!e||!c(e))return!1;const o=e.type||{},a=String(o?.name||o?.__name||"").replace(/[^a-zA-Z]/g,"");return/^elicon/i.test(a)?!0:/^elbutton$/i.test(a)&&!!e.props?.icon}),P=n(()=>{const e=u.default?.()[0];if(!e||!c(e))return!1;const o=e.type||{};return String(o?.name||o?.__name||"").replace(/[^a-zA-Z]/g,"").toLowerCase()==="elbutton"&&b.value==="20"}),N=n(()=>l.noConfig?"slot":P.value||L.value?"icon":b.value==="10"?"text":b.value==="20"?"icon":b.value==="30"?"iconText":"slot"),q=n(()=>u.default?.()[0]?.props?.onClick),T=n(()=>{const e=u.default?.()[0];return c(e)&&e.props?.["data-behavior-scope"]==="manual"}),w=e=>{const o=q.value;return Array.isArray(o)?o.reduce((t,a)=>typeof a=="function"?a(...e):t,void 0):typeof o=="function"?o(...e):void 0},m=(...e)=>T.value?w(e):R({code:S.value,name:p.value,actionType:"CLICK"},()=>w(e)),H=e=>{if(e.type==="button")return!0;const o=e.type,t=String(o?.name||o?.__name||"").replace(/[^a-zA-Z]/g,"").toLowerCase();return t==="elbutton"||t==="eliconbtn"||t==="eliconsearch"},J=e=>{const o=e.type;return String(o?.name||o?.__name||"").replace(/[^a-zA-Z]/g,"").toLowerCase()==="eliconbtn"},K=e=>i.value||!J(e)?{}:{neutral:!0},Y=()=>(u.default?.()||[]).map(o=>{if(!c(o)||!H(o))return o;const t=F(o,{...f.value,...T.value?{}:{onClick:m},type:i.value?C.value:void 0,...K(o),style:_.value.trim()?g.value:void 0});return!T.value&&t.props&&(t.props.onClick=m),t});return()=>{if(!U.value)return null;if(N.value==="icon"){const e=u.default?.()[0],o=c(e)?e.props||{}:{};if(P.value){const t={...o};delete t.modelValue,delete t.tip,delete t.elementType,delete t.neutral,delete t.icon;const a=d.value||"adtec-tips",k=r(s("el-icon"),{},()=>a.startsWith("adtec-")?r("svg",{class:"icon","aria-hidden":"true"},[r("use",{href:"#"+a})]):r(V(a))),A=r(s("el-button"),{...t,...f.value,type:i.value?C.value:void 0,title:p.value,"aria-label":p.value,style:[t.style,g.value],onClick:m},{icon:()=>k});return r(s("el-tooltip"),{content:p.value,placement:"top"},{default:()=>A})}return r(s("el-icon-btn"),{...o,...f.value,modelValue:d.value||o.modelValue||"adtec-tips",tip:h.value||o.tip,type:i.value?C.value:void 0,neutral:!i.value,style:g.value,onClick:m})}if(N.value==="text"){const e=u.default?.()[0],t={...c(e)?e.props||{}:{}};return delete t.modelValue,delete t.tip,delete t.icon,r(s("el-button"),{...t,...f.value,type:i.value?C.value:void 0,size:L.value?"small":t.size,style:[t.style,g.value],onClick:m},()=>h.value)}if(N.value==="iconText"){const e=u.default?.()[0],o=c(e)?e.props||{}:{},t=d.value?r(s("el-icon"),{},()=>d.value.startsWith("adtec-")?r("svg",{class:"icon","aria-hidden":"true"},[r("use",{href:"#"+d.value})]):r(V(d.value))):void 0;return r(s("el-button"),{...o,...f.value,type:C.value,style:[o.style,g.value],onClick:m},[t,r("span",{},h.value)])}return Y()}}});export{le as _};
|
|
@@ -19,6 +19,16 @@ type __VLS_Props = {
|
|
|
19
19
|
readonly?: boolean;
|
|
20
20
|
/** 内容块二级标题(弹窗/抽屉内表单区块统一使用) */
|
|
21
21
|
title?: string;
|
|
22
|
+
/**
|
|
23
|
+
* 校验失败时自动滚动到第一个报错字段(默认开启)。
|
|
24
|
+
* 与安徽中烟申报一致的交互:提交校验不通过时把用户带到出错位置。
|
|
25
|
+
*/
|
|
26
|
+
scrollToError?: boolean;
|
|
27
|
+
/**
|
|
28
|
+
* 滚动到出错/指定字段时的滚动参数,默认平滑滚动并垂直居中。
|
|
29
|
+
* 传 false 可关闭滚动,或传自定义 ScrollIntoViewOptions。
|
|
30
|
+
*/
|
|
31
|
+
scrollIntoViewOptions?: boolean | ScrollIntoViewOptions;
|
|
22
32
|
};
|
|
23
33
|
declare var __VLS_92: string, __VLS_93: {
|
|
24
34
|
field: ResolvedDescFormField;
|
|
@@ -34,6 +44,9 @@ type __VLS_Slots = {} & {
|
|
|
34
44
|
};
|
|
35
45
|
declare const __VLS_component: import("vue").DefineComponent<__VLS_Props, {
|
|
36
46
|
validate: (callback?: (isValid: boolean, invalidFields?: unknown) => void) => any;
|
|
47
|
+
validateField: (props?: unknown, callback?: unknown) => any;
|
|
48
|
+
/** 滚动到指定字段:业务在非表单规则校验失败时也能定位到具体字段 */
|
|
49
|
+
scrollToField: (prop: string) => any;
|
|
37
50
|
resetFields: () => any;
|
|
38
51
|
clearValidate: () => any;
|
|
39
52
|
}, {}, {}, {}, import("vue").ComponentOptionsMixin, import("vue").ComponentOptionsMixin, {}, string, import("vue").PublicProps, Readonly<__VLS_Props> & Readonly<{}>, {
|
|
@@ -41,6 +54,8 @@ declare const __VLS_component: import("vue").DefineComponent<__VLS_Props, {
|
|
|
41
54
|
rules: Record<string, FormItemRule[]>;
|
|
42
55
|
readonly: boolean;
|
|
43
56
|
column: number;
|
|
57
|
+
scrollToError: boolean;
|
|
58
|
+
scrollIntoViewOptions: boolean | ScrollIntoViewOptions;
|
|
44
59
|
}, {}, {}, {}, string, import("vue").ComponentProvideOptions, false, {}, any>;
|
|
45
60
|
declare const _default: __VLS_WithSlots<typeof __VLS_component, __VLS_Slots>;
|
|
46
61
|
export default _default;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
import{_ as
|
|
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 +1 @@
|
|
|
1
|
-
import{defineComponent as fe,useModel as ee,computed as u,ref as be,watch as pe,resolveComponent as p,openBlock as n,createElementBlock as g,toDisplayString as E,createBlock as m,mergeProps as h,unref as ge,withCtx as U,Fragment as O,renderList as H,createElementVNode as B,normalizeClass as he,createVNode as T,createCommentVNode as Ve,createTextVNode as le,mergeModels as xe}from"vue";import ye from"../RichTextEditor/RichTextEditor.vue.js";import{INDICATOR_RANGE_TYPE as d,parseIndicatorRangeValue as Pe,validateIndicatorValue as Ne,formatIndicatorRangeValue as ke}from"./interface.js";import{_ as Ee}from"../../../chunks/_plugin-vue_export-helper-DlAUqK2U.js";import"../../../chunks/preload-helper-BlTxHScW.js";import"element-plus";import"../../utils/uuid.js";import"uuid";import"../RichTextEditor/richTextHtmlUtils.js";import"../RichTextEditor/installUmoEditorApp.js";import"tdesign-vue-next";import"../RichTextEditor/richTextImageUpload.js";import"../../api/DocumentApi.js";import"../../utils/request.js";import"../../utils/AxiosConfig.js";import"axios";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"../../utils/buildUploadHeaders.js";const Oe={class:"el-indicator-input"},Se={key:0,class:"el-indicator-input__readonly-value"},Me={key:8,class:"indicator-range-field"},Ie={class:"indicator-range-operator"},Ue={class:"indicator-range-operator"},Be={class:"indicator-range-prefix"},we={key:0,class:"indicator-range-error"},Te=fe({__name:"ElIndicatorInput",props:xe({config:{default:()=>({})},options:{default:()=>[]},label:{default:""},placeholder:{default:""},businessId:{default:void 0},clearable:{type:Boolean,default:!0},disabled:{type:Boolean,default:!1},readonly:{type:Boolean,default:!1},maxlength:{default:1e3},showWordLimit:{type:Boolean,default:!0},controlProps:{default:()=>({})}},{modelValue:{default:""},modelModifiers:{},text:{default:""},textModifiers:{}}),emits:["update:modelValue","update:text"],setup(a,{expose:ae}){const r=a,s=ee(a,"modelValue"),b=ee(a,"text"),j=u(()=>r.options.some(e=>Array.isArray(e.children)&&e.children.length>0)),te=u(()=>String(r.config.indexTag??"").split(",").map(e=>e.trim().toLowerCase().replace(/[-_\s]/g,"")).filter(Boolean)),z=u(()=>te.value.includes("compute")),D=u(()=>r.readonly||z.value),c=u(()=>D.value),re=u(()=>b.value||s.value||"—"),o=u(()=>{const e=r.config.rangeYpe;return e===d.MULTI_LINE_TEXT?"textarea":e===d.RICH_TEXT?"rich-text":e===d.YEAR?"year":e===d.MONTH?"month":e===d.DATE?"date":e===d.TIME?"time":e===d.NUMBER||e===d.SCALE_NUMBER||e===d.RANGE_NUMBER?e===d.SCALE_NUMBER&&Z.value.length>0?"scale-select":e===d.RANGE_NUMBER?"range-number":"number":e===d.RADIO?"radio":e===d.CHECKBOX?"checkbox":e===d.SINGLE_SELECT||e===d.MULTIPLE_SELECT?j.value?"tree-select":"select":r.config.indexAttriValue==="02"?"date":r.config.indexAttriValue==="03"?"number":r.config.indexAttriValue==="04"?j.value?"tree-select":"select":"input"}),S=u(()=>r.config.rangeYpe===d.MULTIPLE_SELECT||r.config.rangeYpe===d.CHECKBOX),C=u(()=>{const e=[],l=i=>{i.forEach(x=>{e.push(x),x.children?.length&&l(x.children)})};return l(r.options),e}),L=e=>e.disabled===!0||e.isValid==="0",oe=e=>C.value.find(l=>String(l.value)===e)?.label,v=u(()=>{const e=r.config.rangeOfValue||"";return e==="x>a"?{double:!1,operator:">",leftOperator:"",rightOperator:"",firstPlaceholder:"请输入最小值",secondPlaceholder:""}:e==="x≥a"?{double:!1,operator:"≥",leftOperator:"",rightOperator:"",firstPlaceholder:"请输入最小值",secondPlaceholder:""}:e==="x<a"?{double:!1,operator:"<",leftOperator:"",rightOperator:"",firstPlaceholder:"请输入最大值",secondPlaceholder:""}:e==="x≤a"?{double:!1,operator:"≤",leftOperator:"",rightOperator:"",firstPlaceholder:"请输入最大值",secondPlaceholder:""}:e==="x=a"?{double:!1,operator:"=",leftOperator:"",rightOperator:"",firstPlaceholder:"请输入固定值",secondPlaceholder:""}:e==="x±a"?{double:!0,operator:"±",leftOperator:"±",rightOperator:"",firstPlaceholder:"请输入固定值",secondPlaceholder:"请输入允差值"}:{double:!0,operator:"",leftOperator:e.startsWith("a≤")?"≤":"<",rightOperator:e.endsWith("≤b")?"≤":"<",firstPlaceholder:"请输入最小值",secondPlaceholder:"请输入最大值"}}),R=u(()=>Pe(r.config,s.value)),W=u(()=>R.value.first),K=u(()=>R.value.second),y=be(!1),A=u(()=>Ne(r.config,s.value)),q=(e,l)=>{const i={...R.value};e===0?i.first=l:i.second=l,s.value=ke(r.config,i),k()},G=e=>q(0,e),J=e=>q(1,e),ne=()=>(y.value=!0,!A.value),k=()=>{if(o.value!=="rich-text"){if(o.value==="range-number"){const e=R.value,l=r.config.rangeOfValue||"";if(e.first==null&&e.second==null){b.value="";return}l==="x±a"?b.value=`${e.first??"x"} ± ${e.second??"a"}`:v.value.double?b.value=`${e.first??"a"} ${v.value.leftOperator} x ${v.value.rightOperator} ${e.second??"b"}`:b.value=`x ${v.value.operator} ${e.first}`;return}if(o.value==="select"||o.value==="scale-select"||o.value==="tree-select"||o.value==="radio"||o.value==="checkbox"){const e=s.value.split(",").filter(Boolean);if(!e.length){b.value="";return}if(!r.options.length&&b.value)return;b.value=e.map(l=>String(oe(l)??l)).join("、");return}b.value=s.value}},f=u({get:()=>s.value,set:e=>{s.value=e==null?"":String(e),k()}}),X=u({get:()=>s.value.split(",").filter(Boolean),set:e=>{s.value=e.join(","),k()}}),M=u({get:()=>S.value?X.value:s.value,set:e=>{s.value=Array.isArray(e)?e.join(","):String(e??""),k()}}),ue=u(()=>{if(!s.value.trim())return;const e=Number(s.value);return Number.isFinite(e)?e:void 0}),P=u(()=>{const e=Number(r.config.dataScale);if(Number.isFinite(e)&&e>0)return e;const l=Number(r.config.decimalPlaces);return Number.isInteger(l)&&l>=0?10**-Math.min(l,100):void 0}),Q=e=>{const l=Number(r.config.decimalPlaces);return Number.isInteger(l)&&l>=0?Number(e.toFixed(Math.min(l,100))):e},Y=u(()=>{let e=r.config.minValue,l=r.config.maxValue;r.config.rangeOfValue==="x=a"&&r.config.fixedValue!=null?(e=r.config.fixedValue,l=r.config.fixedValue):r.config.rangeOfValue==="x±a"&&r.config.fixedValue!=null&&r.config.tolerance!=null&&(e??(e=Number(r.config.fixedValue)-Number(r.config.tolerance)),l??(l=Number(r.config.fixedValue)+Number(r.config.tolerance)));const i=P.value;return e!=null&&r.config.isContainMin==="0"&&i&&(e=Q(Number(e)+i)),l!=null&&r.config.isContainMax==="0"&&i&&(l=Q(Number(l)-i)),{min:e,max:l}}),Z=u(()=>{if(r.config.rangeYpe!==d.SCALE_NUMBER)return[];const e=Y.value.min,l=Y.value.max,i=P.value;if(e==null||l==null||i==null||!Number.isFinite(e)||!Number.isFinite(l)||!Number.isFinite(i)||i<=0||l<e)return[];const x=Math.floor((l-e)/i+1e-9)+1;if(x<=0||x>1e3)return[];const w=Number(r.config.decimalPlaces),N=I=>Number.isInteger(w)&&w>=0?Number(I.toFixed(Math.min(w,100))):I;return Array.from({length:x},(I,$)=>{const F=N(e+$*i);return{label:F,value:F}})}),_=u(()=>o.value==="year"?"YYYY":o.value==="month"?"YYYY-MM":"YYYY-MM-DD"),V=u(()=>r.placeholder||r.config.tip?r.placeholder||r.config.tip:`${["input","textarea","rich-text","number"].includes(o.value)?"请输入":"请选择"}${r.label||"指标值"}`),ie={label:"label",children:"children",disabled:e=>L(e)},de=e=>{s.value=e==null?"":String(e),k()};return pe([s,()=>r.options,o],k,{immediate:!0,deep:!0}),ae({controlType:o,syncText:k,validate:ne,isReadonlyIndicator:D,isComputedIndicator:z}),(e,l)=>{const i=p("el-input"),x=p("el-date-picker"),w=p("el-time-picker"),N=p("el-numeric-input"),I=p("el-option"),$=p("el-select"),F=p("el-tree-select"),se=p("el-radio"),ce=p("el-radio-group"),me=p("el-checkbox"),ve=p("el-checkbox-group");return n(),g("div",Oe,[D.value?(n(),g("span",Se,E(re.value),1)):o.value==="rich-text"?(n(),m(ye,{key:1,modelValue:f.value,"onUpdate:modelValue":l[0]||(l[0]=t=>f.value=t),text:b.value,"onUpdate:text":l[1]||(l[1]=t=>b.value=t),"is-edit":!a.disabled&&!c.value,"editor-config":{businessId:a.businessId,placeholder:V.value}},null,8,["modelValue","text","is-edit","editor-config"])):o.value==="textarea"?(n(),m(i,h({key:2,modelValue:f.value,"onUpdate:modelValue":l[2]||(l[2]=t=>f.value=t)},a.controlProps,{type:"textarea",rows:3,maxlength:a.maxlength,"show-word-limit":a.showWordLimit,disabled:a.disabled,readonly:c.value,placeholder:V.value}),null,16,["modelValue","maxlength","show-word-limit","disabled","readonly","placeholder"])):o.value==="input"?(n(),m(i,h({key:3,modelValue:f.value,"onUpdate:modelValue":l[3]||(l[3]=t=>f.value=t)},a.controlProps,{maxlength:a.maxlength,"show-word-limit":a.showWordLimit,disabled:a.disabled,readonly:c.value,placeholder:V.value}),null,16,["modelValue","maxlength","show-word-limit","disabled","readonly","placeholder"])):o.value==="year"||o.value==="month"||o.value==="date"?(n(),m(x,h({key:4,modelValue:f.value,"onUpdate:modelValue":l[4]||(l[4]=t=>f.value=t)},a.controlProps,{type:o.value,format:_.value,"value-format":_.value,disabled:a.disabled||c.value,clearable:a.clearable,placeholder:V.value,style:{width:"100%"}}),null,16,["modelValue","type","format","value-format","disabled","clearable","placeholder"])):o.value==="time"?(n(),m(w,h({key:5,modelValue:f.value,"onUpdate:modelValue":l[5]||(l[5]=t=>f.value=t)},a.controlProps,{format:"HH:mm:ss","value-format":"HH:mm:ss",disabled:a.disabled||c.value,clearable:a.clearable,placeholder:V.value,style:{width:"100%"}}),null,16,["modelValue","disabled","clearable","placeholder"])):o.value==="number"?(n(),m(N,h({key:6,"model-value":ue.value},a.controlProps,{min:Y.value.min,max:Y.value.max,precision:a.config.decimalPlaces,step:P.value,"step-strictly":a.config.rangeYpe===ge(d).SCALE_NUMBER,disabled:a.disabled,readonly:c.value,clearable:a.clearable,placeholder:V.value,"onUpdate:modelValue":de}),null,16,["model-value","min","max","precision","step","step-strictly","disabled","readonly","clearable","placeholder"])):o.value==="scale-select"?(n(),m($,h({key:7,modelValue:M.value,"onUpdate:modelValue":l[6]||(l[6]=t=>M.value=t)},a.controlProps,{filterable:"",disabled:a.disabled||c.value,clearable:a.clearable,placeholder:V.value,style:{width:"100%"}}),{default:U(()=>[(n(!0),g(O,null,H(Z.value,t=>(n(),m(I,{key:String(t.value),label:String(t.label),value:String(t.value)},null,8,["label","value"]))),128))]),_:1},16,["modelValue","disabled","clearable","placeholder"])):o.value==="range-number"?(n(),g("div",Me,[B("div",{class:he(["indicator-range-input",{"is-error":y.value&&A.value}])},[v.value.operator==="±"?(n(),g(O,{key:0},[T(N,{"model-value":W.value,precision:a.config.decimalPlaces,step:P.value,disabled:a.disabled,readonly:c.value,clearable:a.clearable,placeholder:v.value.firstPlaceholder,"onUpdate:modelValue":G,onBlur:l[7]||(l[7]=t=>y.value=!0)},null,8,["model-value","precision","step","disabled","readonly","clearable","placeholder"]),l[16]||(l[16]=B("span",{class:"indicator-range-operator"},"±",-1)),T(N,{"model-value":K.value,precision:a.config.decimalPlaces,step:P.value,disabled:a.disabled,readonly:c.value,clearable:a.clearable,placeholder:v.value.secondPlaceholder,"onUpdate:modelValue":J,onBlur:l[8]||(l[8]=t=>y.value=!0)},null,8,["model-value","precision","step","disabled","readonly","clearable","placeholder"])],64)):v.value.double?(n(),g(O,{key:1},[T(N,{"model-value":W.value,precision:a.config.decimalPlaces,step:P.value,disabled:a.disabled,readonly:c.value,clearable:a.clearable,placeholder:v.value.firstPlaceholder,"onUpdate:modelValue":G,onBlur:l[9]||(l[9]=t=>y.value=!0)},null,8,["model-value","precision","step","disabled","readonly","clearable","placeholder"]),B("span",Ie,E(v.value.leftOperator),1),l[17]||(l[17]=B("span",{class:"indicator-range-variable"},"x",-1)),B("span",Ue,E(v.value.rightOperator),1),T(N,{"model-value":K.value,precision:a.config.decimalPlaces,step:P.value,disabled:a.disabled,readonly:c.value,clearable:a.clearable,placeholder:v.value.secondPlaceholder,"onUpdate:modelValue":J,onBlur:l[10]||(l[10]=t=>y.value=!0)},null,8,["model-value","precision","step","disabled","readonly","clearable","placeholder"])],64)):(n(),g(O,{key:2},[B("span",Be,E(v.value.operator),1),T(N,{"model-value":W.value,precision:a.config.decimalPlaces,step:P.value,disabled:a.disabled,readonly:c.value,clearable:a.clearable,placeholder:v.value.firstPlaceholder,"onUpdate:modelValue":G,onBlur:l[11]||(l[11]=t=>y.value=!0)},null,8,["model-value","precision","step","disabled","readonly","clearable","placeholder"])],64))],2),y.value&&A.value?(n(),g("div",we,E(A.value),1)):Ve("v-if",!0)])):o.value==="tree-select"?(n(),m(F,h({key:9,modelValue:M.value,"onUpdate:modelValue":l[12]||(l[12]=t=>M.value=t)},a.controlProps,{data:a.options,props:ie,"value-key":"value","node-key":"value","check-strictly":"",filterable:"","show-checkbox":S.value,multiple:S.value,"collapse-tags":S.value,"collapse-tags-tooltip":"",disabled:a.disabled||c.value,clearable:a.clearable,placeholder:V.value,style:{width:"100%"}}),null,16,["modelValue","data","show-checkbox","multiple","collapse-tags","disabled","clearable","placeholder"])):o.value==="select"?(n(),m($,h({key:10,modelValue:M.value,"onUpdate:modelValue":l[13]||(l[13]=t=>M.value=t)},a.controlProps,{filterable:"","collapse-tags":S.value,"collapse-tags-tooltip":"",multiple:S.value,disabled:a.disabled||c.value,clearable:a.clearable,placeholder:V.value,style:{width:"100%"}}),{default:U(()=>[(n(!0),g(O,null,H(C.value,t=>(n(),m(I,{key:String(t.value),label:String(t.label),value:String(t.value),disabled:L(t)},null,8,["label","value","disabled"]))),128))]),_:1},16,["modelValue","collapse-tags","multiple","disabled","clearable","placeholder"])):o.value==="radio"?(n(),m(ce,h({key:11,modelValue:f.value,"onUpdate:modelValue":l[14]||(l[14]=t=>f.value=t)},a.controlProps,{disabled:a.disabled||c.value}),{default:U(()=>[(n(!0),g(O,null,H(C.value,t=>(n(),m(se,{key:String(t.value),value:String(t.value),disabled:L(t)},{default:U(()=>[le(E(t.label),1)]),_:2},1032,["value","disabled"]))),128))]),_:1},16,["modelValue","disabled"])):(n(),m(ve,h({key:12,modelValue:X.value,"onUpdate:modelValue":l[15]||(l[15]=t=>X.value=t)},a.controlProps,{disabled:a.disabled||c.value}),{default:U(()=>[(n(!0),g(O,null,H(C.value,t=>(n(),m(me,{key:String(t.value),value:String(t.value),disabled:L(t)},{default:U(()=>[le(E(t.label),1)]),_:2},1032,["value","disabled"]))),128))]),_:1},16,["modelValue","disabled"]))])}}}),il=Ee(Te,[["__scopeId","data-v-d12f2924"]]);export{il as default};
|
|
1
|
+
import{defineComponent as ve,useModel as _,computed as u,ref as fe,watch as be,resolveComponent as p,openBlock as n,createElementBlock as g,toDisplayString as E,createBlock as m,mergeProps as h,unref as pe,withCtx as U,Fragment as O,renderList as H,createElementVNode as B,normalizeClass as ge,createVNode as C,createCommentVNode as he,createTextVNode as ee,mergeModels as Ve}from"vue";import ye from"../RichTextEditor/RichTextEditor.vue.js";import{isIndicatorReadonly as xe,isComputedIndicator as Pe,INDICATOR_RANGE_TYPE as d,parseIndicatorRangeValue as Ne,validateIndicatorValue as ke,formatIndicatorRangeValue as Ee}from"./interface.js";import{_ as Oe}from"../../../chunks/_plugin-vue_export-helper-DlAUqK2U.js";import"../../../chunks/preload-helper-BlTxHScW.js";import"element-plus";import"../../utils/uuid.js";import"uuid";import"../RichTextEditor/richTextHtmlUtils.js";import"../RichTextEditor/installUmoEditorApp.js";import"tdesign-vue-next";import"../RichTextEditor/richTextImageUpload.js";import"../../api/DocumentApi.js";import"../../utils/request.js";import"../../utils/AxiosConfig.js";import"axios";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"../../utils/buildUploadHeaders.js";const Ie={class:"el-indicator-input"},Se={key:0,class:"el-indicator-input__readonly-value"},Me={key:8,class:"indicator-range-field"},Ue={class:"indicator-range-operator"},Be={class:"indicator-range-operator"},we={class:"indicator-range-prefix"},Ce={key:0,class:"indicator-range-error"},Re=ve({__name:"ElIndicatorInput",props:Ve({config:{default:()=>({})},options:{default:()=>[]},label:{default:""},placeholder:{default:""},businessId:{default:void 0},clearable:{type:Boolean,default:!0},disabled:{type:Boolean,default:!1},readonly:{type:Boolean,default:!1},maxlength:{default:1e3},showWordLimit:{type:Boolean,default:!0},controlProps:{default:()=>({})}},{modelValue:{default:""},modelModifiers:{},text:{default:""},textModifiers:{}}),emits:["update:modelValue","update:text"],setup(a,{expose:le}){const r=a,s=_(a,"modelValue"),b=_(a,"text"),j=u(()=>r.options.some(e=>Array.isArray(e.children)&&e.children.length>0)),D=u(()=>r.readonly||xe(r.config)),ae=u(()=>Pe(r.config)),c=u(()=>D.value),te=u(()=>b.value||s.value||"—"),o=u(()=>{const e=r.config.rangeYpe;return e===d.MULTI_LINE_TEXT?"textarea":e===d.RICH_TEXT?"rich-text":e===d.YEAR?"year":e===d.MONTH?"month":e===d.DATE?"date":e===d.TIME?"time":e===d.NUMBER||e===d.SCALE_NUMBER||e===d.RANGE_NUMBER?e===d.SCALE_NUMBER&&Q.value.length>0?"scale-select":e===d.RANGE_NUMBER?"range-number":"number":e===d.RADIO?"radio":e===d.CHECKBOX?"checkbox":e===d.SINGLE_SELECT||e===d.MULTIPLE_SELECT?j.value?"tree-select":"select":r.config.indexAttriValue==="02"?"date":r.config.indexAttriValue==="03"?"number":r.config.indexAttriValue==="04"?j.value?"tree-select":"select":"input"}),I=u(()=>r.config.rangeYpe===d.MULTIPLE_SELECT||r.config.rangeYpe===d.CHECKBOX),R=u(()=>{const e=[],l=i=>{i.forEach(y=>{e.push(y),y.children?.length&&l(y.children)})};return l(r.options),e}),T=e=>e.disabled===!0||e.isValid==="0",re=e=>R.value.find(l=>String(l.value)===e)?.label,v=u(()=>{const e=r.config.rangeOfValue||"";return e==="x>a"?{double:!1,operator:">",leftOperator:"",rightOperator:"",firstPlaceholder:"请输入最小值",secondPlaceholder:""}:e==="x≥a"?{double:!1,operator:"≥",leftOperator:"",rightOperator:"",firstPlaceholder:"请输入最小值",secondPlaceholder:""}:e==="x<a"?{double:!1,operator:"<",leftOperator:"",rightOperator:"",firstPlaceholder:"请输入最大值",secondPlaceholder:""}:e==="x≤a"?{double:!1,operator:"≤",leftOperator:"",rightOperator:"",firstPlaceholder:"请输入最大值",secondPlaceholder:""}:e==="x=a"?{double:!1,operator:"=",leftOperator:"",rightOperator:"",firstPlaceholder:"请输入固定值",secondPlaceholder:""}:e==="x±a"?{double:!0,operator:"±",leftOperator:"±",rightOperator:"",firstPlaceholder:"请输入固定值",secondPlaceholder:"请输入允差值"}:{double:!0,operator:"",leftOperator:e.startsWith("a≤")?"≤":"<",rightOperator:e.endsWith("≤b")?"≤":"<",firstPlaceholder:"请输入最小值",secondPlaceholder:"请输入最大值"}}),L=u(()=>Ne(r.config,s.value)),W=u(()=>L.value.first),z=u(()=>L.value.second),x=fe(!1),A=u(()=>ke(r.config,s.value)),K=(e,l)=>{const i={...L.value};e===0?i.first=l:i.second=l,s.value=Ee(r.config,i),k()},G=e=>K(0,e),q=e=>K(1,e),oe=()=>(x.value=!0,!A.value),k=()=>{if(o.value!=="rich-text"){if(o.value==="range-number"){const e=L.value,l=r.config.rangeOfValue||"";if(e.first==null&&e.second==null){b.value="";return}l==="x±a"?b.value=`${e.first??"x"} ± ${e.second??"a"}`:v.value.double?b.value=`${e.first??"a"} ${v.value.leftOperator} x ${v.value.rightOperator} ${e.second??"b"}`:b.value=`x ${v.value.operator} ${e.first}`;return}if(o.value==="select"||o.value==="scale-select"||o.value==="tree-select"||o.value==="radio"||o.value==="checkbox"){const e=s.value.split(",").filter(Boolean);if(!e.length){b.value="";return}if(!r.options.length&&b.value)return;b.value=e.map(l=>String(re(l)??l)).join("、");return}b.value=s.value}},f=u({get:()=>s.value,set:e=>{s.value=e==null?"":String(e),k()}}),X=u({get:()=>s.value.split(",").filter(Boolean),set:e=>{s.value=e.join(","),k()}}),S=u({get:()=>I.value?X.value:s.value,set:e=>{s.value=Array.isArray(e)?e.join(","):String(e??""),k()}}),ne=u(()=>{if(!s.value.trim())return;const e=Number(s.value);return Number.isFinite(e)?e:void 0}),P=u(()=>{const e=Number(r.config.dataScale);if(Number.isFinite(e)&&e>0)return e;const l=Number(r.config.decimalPlaces);return Number.isInteger(l)&&l>=0?10**-Math.min(l,100):void 0}),J=e=>{const l=Number(r.config.decimalPlaces);return Number.isInteger(l)&&l>=0?Number(e.toFixed(Math.min(l,100))):e},Y=u(()=>{let e=r.config.minValue,l=r.config.maxValue;r.config.rangeOfValue==="x=a"&&r.config.fixedValue!=null?(e=r.config.fixedValue,l=r.config.fixedValue):r.config.rangeOfValue==="x±a"&&r.config.fixedValue!=null&&r.config.tolerance!=null&&(e??(e=Number(r.config.fixedValue)-Number(r.config.tolerance)),l??(l=Number(r.config.fixedValue)+Number(r.config.tolerance)));const i=P.value;return e!=null&&r.config.isContainMin==="0"&&i&&(e=J(Number(e)+i)),l!=null&&r.config.isContainMax==="0"&&i&&(l=J(Number(l)-i)),{min:e,max:l}}),Q=u(()=>{if(r.config.rangeYpe!==d.SCALE_NUMBER)return[];const e=Y.value.min,l=Y.value.max,i=P.value;if(e==null||l==null||i==null||!Number.isFinite(e)||!Number.isFinite(l)||!Number.isFinite(i)||i<=0||l<e)return[];const y=Math.floor((l-e)/i+1e-9)+1;if(y<=0||y>1e3)return[];const w=Number(r.config.decimalPlaces),N=M=>Number.isInteger(w)&&w>=0?Number(M.toFixed(Math.min(w,100))):M;return Array.from({length:y},(M,$)=>{const F=N(e+$*i);return{label:F,value:F}})}),Z=u(()=>o.value==="year"?"YYYY":o.value==="month"?"YYYY-MM":"YYYY-MM-DD"),V=u(()=>r.placeholder||r.config.tip?r.placeholder||r.config.tip:`${["input","textarea","rich-text","number"].includes(o.value)?"请输入":"请选择"}${r.label||"指标值"}`),ue={label:"label",children:"children",disabled:e=>T(e)},ie=e=>{s.value=e==null?"":String(e),k()};return be([s,()=>r.options,o],k,{immediate:!0,deep:!0}),le({controlType:o,syncText:k,validate:oe,isReadonlyIndicator:D,isComputedIndicator:ae}),(e,l)=>{const i=p("el-input"),y=p("el-date-picker"),w=p("el-time-picker"),N=p("el-numeric-input"),M=p("el-option"),$=p("el-select"),F=p("el-tree-select"),de=p("el-radio"),se=p("el-radio-group"),ce=p("el-checkbox"),me=p("el-checkbox-group");return n(),g("div",Ie,[D.value?(n(),g("span",Se,E(te.value),1)):o.value==="rich-text"?(n(),m(ye,{key:1,modelValue:f.value,"onUpdate:modelValue":l[0]||(l[0]=t=>f.value=t),text:b.value,"onUpdate:text":l[1]||(l[1]=t=>b.value=t),"is-edit":!a.disabled&&!c.value,"editor-config":{businessId:a.businessId,placeholder:V.value}},null,8,["modelValue","text","is-edit","editor-config"])):o.value==="textarea"?(n(),m(i,h({key:2,modelValue:f.value,"onUpdate:modelValue":l[2]||(l[2]=t=>f.value=t)},a.controlProps,{type:"textarea",rows:3,maxlength:a.maxlength,"show-word-limit":a.showWordLimit,disabled:a.disabled,readonly:c.value,placeholder:V.value}),null,16,["modelValue","maxlength","show-word-limit","disabled","readonly","placeholder"])):o.value==="input"?(n(),m(i,h({key:3,modelValue:f.value,"onUpdate:modelValue":l[3]||(l[3]=t=>f.value=t)},a.controlProps,{maxlength:a.maxlength,"show-word-limit":a.showWordLimit,disabled:a.disabled,readonly:c.value,placeholder:V.value}),null,16,["modelValue","maxlength","show-word-limit","disabled","readonly","placeholder"])):o.value==="year"||o.value==="month"||o.value==="date"?(n(),m(y,h({key:4,modelValue:f.value,"onUpdate:modelValue":l[4]||(l[4]=t=>f.value=t)},a.controlProps,{type:o.value,format:Z.value,"value-format":Z.value,disabled:a.disabled||c.value,clearable:a.clearable,placeholder:V.value,style:{width:"100%"}}),null,16,["modelValue","type","format","value-format","disabled","clearable","placeholder"])):o.value==="time"?(n(),m(w,h({key:5,modelValue:f.value,"onUpdate:modelValue":l[5]||(l[5]=t=>f.value=t)},a.controlProps,{format:"HH:mm:ss","value-format":"HH:mm:ss",disabled:a.disabled||c.value,clearable:a.clearable,placeholder:V.value,style:{width:"100%"}}),null,16,["modelValue","disabled","clearable","placeholder"])):o.value==="number"?(n(),m(N,h({key:6,"model-value":ne.value},a.controlProps,{min:Y.value.min,max:Y.value.max,precision:a.config.decimalPlaces,step:P.value,"step-strictly":a.config.rangeYpe===pe(d).SCALE_NUMBER,disabled:a.disabled,readonly:c.value,clearable:a.clearable,placeholder:V.value,"onUpdate:modelValue":ie}),null,16,["model-value","min","max","precision","step","step-strictly","disabled","readonly","clearable","placeholder"])):o.value==="scale-select"?(n(),m($,h({key:7,modelValue:S.value,"onUpdate:modelValue":l[6]||(l[6]=t=>S.value=t)},a.controlProps,{filterable:"",disabled:a.disabled||c.value,clearable:a.clearable,placeholder:V.value,style:{width:"100%"}}),{default:U(()=>[(n(!0),g(O,null,H(Q.value,t=>(n(),m(M,{key:String(t.value),label:String(t.label),value:String(t.value)},null,8,["label","value"]))),128))]),_:1},16,["modelValue","disabled","clearable","placeholder"])):o.value==="range-number"?(n(),g("div",Me,[B("div",{class:ge(["indicator-range-input",{"is-error":x.value&&A.value}])},[v.value.operator==="±"?(n(),g(O,{key:0},[C(N,{"model-value":W.value,precision:a.config.decimalPlaces,step:P.value,disabled:a.disabled,readonly:c.value,clearable:a.clearable,placeholder:v.value.firstPlaceholder,"onUpdate:modelValue":G,onBlur:l[7]||(l[7]=t=>x.value=!0)},null,8,["model-value","precision","step","disabled","readonly","clearable","placeholder"]),l[16]||(l[16]=B("span",{class:"indicator-range-operator"},"±",-1)),C(N,{"model-value":z.value,precision:a.config.decimalPlaces,step:P.value,disabled:a.disabled,readonly:c.value,clearable:a.clearable,placeholder:v.value.secondPlaceholder,"onUpdate:modelValue":q,onBlur:l[8]||(l[8]=t=>x.value=!0)},null,8,["model-value","precision","step","disabled","readonly","clearable","placeholder"])],64)):v.value.double?(n(),g(O,{key:1},[C(N,{"model-value":W.value,precision:a.config.decimalPlaces,step:P.value,disabled:a.disabled,readonly:c.value,clearable:a.clearable,placeholder:v.value.firstPlaceholder,"onUpdate:modelValue":G,onBlur:l[9]||(l[9]=t=>x.value=!0)},null,8,["model-value","precision","step","disabled","readonly","clearable","placeholder"]),B("span",Ue,E(v.value.leftOperator),1),l[17]||(l[17]=B("span",{class:"indicator-range-variable"},"x",-1)),B("span",Be,E(v.value.rightOperator),1),C(N,{"model-value":z.value,precision:a.config.decimalPlaces,step:P.value,disabled:a.disabled,readonly:c.value,clearable:a.clearable,placeholder:v.value.secondPlaceholder,"onUpdate:modelValue":q,onBlur:l[10]||(l[10]=t=>x.value=!0)},null,8,["model-value","precision","step","disabled","readonly","clearable","placeholder"])],64)):(n(),g(O,{key:2},[B("span",we,E(v.value.operator),1),C(N,{"model-value":W.value,precision:a.config.decimalPlaces,step:P.value,disabled:a.disabled,readonly:c.value,clearable:a.clearable,placeholder:v.value.firstPlaceholder,"onUpdate:modelValue":G,onBlur:l[11]||(l[11]=t=>x.value=!0)},null,8,["model-value","precision","step","disabled","readonly","clearable","placeholder"])],64))],2),x.value&&A.value?(n(),g("div",Ce,E(A.value),1)):he("v-if",!0)])):o.value==="tree-select"?(n(),m(F,h({key:9,modelValue:S.value,"onUpdate:modelValue":l[12]||(l[12]=t=>S.value=t)},a.controlProps,{data:a.options,props:ue,"value-key":"value","node-key":"value","check-strictly":"",filterable:"","show-checkbox":I.value,multiple:I.value,"collapse-tags":I.value,"collapse-tags-tooltip":"",disabled:a.disabled||c.value,clearable:a.clearable,placeholder:V.value,style:{width:"100%"}}),null,16,["modelValue","data","show-checkbox","multiple","collapse-tags","disabled","clearable","placeholder"])):o.value==="select"?(n(),m($,h({key:10,modelValue:S.value,"onUpdate:modelValue":l[13]||(l[13]=t=>S.value=t)},a.controlProps,{filterable:"","collapse-tags":I.value,"collapse-tags-tooltip":"",multiple:I.value,disabled:a.disabled||c.value,clearable:a.clearable,placeholder:V.value,style:{width:"100%"}}),{default:U(()=>[(n(!0),g(O,null,H(R.value,t=>(n(),m(M,{key:String(t.value),label:String(t.label),value:String(t.value),disabled:T(t)},null,8,["label","value","disabled"]))),128))]),_:1},16,["modelValue","collapse-tags","multiple","disabled","clearable","placeholder"])):o.value==="radio"?(n(),m(se,h({key:11,modelValue:f.value,"onUpdate:modelValue":l[14]||(l[14]=t=>f.value=t)},a.controlProps,{disabled:a.disabled||c.value}),{default:U(()=>[(n(!0),g(O,null,H(R.value,t=>(n(),m(de,{key:String(t.value),value:String(t.value),disabled:T(t)},{default:U(()=>[ee(E(t.label),1)]),_:2},1032,["value","disabled"]))),128))]),_:1},16,["modelValue","disabled"])):(n(),m(me,h({key:12,modelValue:X.value,"onUpdate:modelValue":l[15]||(l[15]=t=>X.value=t)},a.controlProps,{disabled:a.disabled||c.value}),{default:U(()=>[(n(!0),g(O,null,H(R.value,t=>(n(),m(ce,{key:String(t.value),value:String(t.value),disabled:T(t)},{default:U(()=>[ee(E(t.label),1)]),_:2},1032,["value","disabled"]))),128))]),_:1},16,["modelValue","disabled"]))])}}}),dl=Oe(Re,[["__scopeId","data-v-ff9cff09"]]);export{dl as default};
|
|
@@ -25,8 +25,42 @@ export interface IndicatorInputConfig {
|
|
|
25
25
|
isContainMin?: string;
|
|
26
26
|
isContainMax?: string;
|
|
27
27
|
}
|
|
28
|
-
|
|
29
|
-
|
|
28
|
+
type FormulaValue = number | string;
|
|
29
|
+
/**
|
|
30
|
+
* Evaluate the formula configured for an indicator without executing arbitrary code.
|
|
31
|
+
*
|
|
32
|
+
* 支持两类规则:
|
|
33
|
+
* - 数值运算:[CW0007]*1.13、([CW0009]-[CW0008])/[CW0009]*100
|
|
34
|
+
* - 文本拼接:[WL0001]+"mm * "+[WL0002]+"mm"
|
|
35
|
+
* 任一侧是文本(字符串字面量或非数字的指标值)时,“+”按字符串拼接,返回字符串。
|
|
36
|
+
*/
|
|
37
|
+
export declare const evaluateIndicatorFormula: (formula?: string, values?: Record<string, string | number | undefined>) => FormulaValue | undefined;
|
|
38
|
+
/** 指标标签解析:逗号分隔、去空格、转小写、去掉 -/_/空格。 */
|
|
39
|
+
export declare const parseIndicatorTags: (indexTag?: string) => string[];
|
|
40
|
+
/** 是否为计算指标:配置了计算规则,或打上了计算标签。 */
|
|
41
|
+
export declare const isComputedIndicator: (config?: {
|
|
42
|
+
formula?: string;
|
|
43
|
+
indexTag?: string;
|
|
44
|
+
} | null) => boolean;
|
|
45
|
+
/** 是否只读指标:计算指标,或打上了只读标签。 */
|
|
46
|
+
export declare const isIndicatorReadonly: (config?: {
|
|
47
|
+
formula?: string;
|
|
48
|
+
indexTag?: string;
|
|
49
|
+
} | null) => boolean;
|
|
50
|
+
/** 计算指标结果格式化:数字按配置精度,文本(字符串拼接结果)原样返回。 */
|
|
51
|
+
export declare const formatIndicatorFormulaResult: (result: number | string | undefined, decimalPlaces?: number) => string | undefined;
|
|
52
|
+
/** 计算指标配置的最小结构。 */
|
|
53
|
+
export interface ComputedIndicatorConfig {
|
|
54
|
+
code?: string;
|
|
55
|
+
formula?: string;
|
|
56
|
+
indexTag?: string;
|
|
57
|
+
decimalPlaces?: number;
|
|
58
|
+
}
|
|
59
|
+
/**
|
|
60
|
+
* 计算指标统一求值:按配置顺序依次计算,算出的结果回填到工作副本,
|
|
61
|
+
* 后面的规则可以直接引用前面的计算结果。返回 code 到计算值的映射(仅含算得出结果的项)。
|
|
62
|
+
*/
|
|
63
|
+
export declare const evaluateComputedIndicators: (configs?: ComputedIndicatorConfig[] | null, values?: Record<string, string | number | undefined> | null) => Record<string, string>;
|
|
30
64
|
export type IndicatorControlType = 'input' | 'textarea' | 'rich-text' | 'year' | 'month' | 'date' | 'time' | 'number' | 'scale-select' | 'range-number' | 'select' | 'tree-select' | 'radio' | 'checkbox';
|
|
31
65
|
export declare const INDICATOR_RANGE_TYPE: {
|
|
32
66
|
readonly SINGLE_LINE_TEXT: "0101";
|
|
@@ -53,3 +87,4 @@ export declare const parseIndicatorRangeValue: (config: IndicatorInputConfig, va
|
|
|
53
87
|
/** Serialize the two editing values as one rule-bearing field. */
|
|
54
88
|
export declare const formatIndicatorRangeValue: (config: IndicatorInputConfig, parts: IndicatorRangeParts) => string;
|
|
55
89
|
export declare const validateIndicatorValue: (config: IndicatorInputConfig, value?: string) => string | undefined;
|
|
90
|
+
export {};
|
|
@@ -1 +1 @@
|
|
|
1
|
-
const
|
|
1
|
+
const p=/\s*(?:"([^"]*)"|'([^']*)'|(\d+(?:\.\d*)?|\.\d+)|([A-Za-z_][A-Za-z0-9_]*)|([()+\-*/%]))/y,I=(r,s={})=>{const i=String(r??"").replace(/\[([A-Za-z_][A-Za-z0-9_]*)\]/g,"$1").replace(/[×✕]/g,"*").replace(/÷/g,"/").trim();if(!i)return;const t=[];let o=0;for(;o<i.length;){p.lastIndex=o;const e=p.exec(i);if(!e)return;o=p.lastIndex,e[1]!==void 0||e[2]!==void 0?t.push({type:"string",value:e[1]??e[2]}):e[3]?t.push({type:"number",value:e[3]}):e[4]?t.push({type:"identifier",value:e[4]}):t.push({type:"operator",value:e[5]})}let n=0;const u=e=>{if(e===void 0)return;if(typeof e=="number")return Number.isFinite(e)?e:void 0;const a=Number(e);return Number.isFinite(a)?a:void 0},d=()=>{const e=t[n];if(e){if(e.type==="operator"&&e.value==="("){n+=1;const a=E();return t[n]?.value!==")"?void 0:(n+=1,a)}if(e.type==="string")return n+=1,e.value;if(e.type==="number"){n+=1;const a=Number(e.value);return Number.isFinite(a)?a:void 0}if(e.type==="identifier"){n+=1;const a=s[e.value];if(a==null)return;const c=Number(a);return Number.isFinite(c)?c:String(a)}}},v=()=>{const e=t[n]?.value;if(e==="+"||e==="-"){n+=1;const a=u(v());return a===void 0?void 0:e==="-"?-a:a}return d()},N=()=>{let e=v();for(;e!=null&&["*","/","%"].includes(t[n]?.value||"");){const a=t[n++].value,c=u(e),l=u(v());if(c===void 0||l===void 0)return;if(a==="*")e=c*l;else if(a==="/"){if(l===0)return;e=c/l}else e=c%l;if(typeof e=="number"&&!Number.isFinite(e))return}return e};function E(){let e=N();for(;e!=null&&["+","-"].includes(t[n]?.value||"");){const a=t[n++].value,c=N();if(c==null)return;if(a==="+")e=typeof e=="string"||typeof c=="string"?`${e}${c}`:e+c;else{const l=u(e),g=u(c);if(l===void 0||g===void 0)return;e=l-g}if(typeof e=="number"&&!Number.isFinite(e))return}return e}const m=E();if(!(n!==t.length||m==null))return typeof m=="number"?Number.isFinite(m)?m:void 0:m},x=["compute","computed","calculate","calculated","formula"],R=["readonly","view","display"],b=r=>String(r??"").split(",").map(s=>s.trim().toLowerCase().replace(/[-_\s]/g,"")).filter(Boolean),T=r=>!!r?.formula?.trim()||b(r?.indexTag).some(s=>x.includes(s)),$=r=>T(r)||b(r?.indexTag).some(s=>R.includes(s)),_=(r,s)=>{if(r==null)return;if(typeof r=="string")return r;const i=Number(s);return Number.isInteger(i)&&i>=0?r.toFixed(Math.min(i,100)):String(r)},F=(r,s)=>{const i={...s||{}},t={};for(const o of r||[]){if(!o?.code||!T(o)||!o.formula?.trim())continue;const n=_(I(o.formula,i),o.decimalPlaces);n===void 0||n===""||(t[o.code]=n,i[o.code]=n)}return t},h={SINGLE_LINE_TEXT:"0101",MULTI_LINE_TEXT:"0102",RICH_TEXT:"0103",YEAR:"0201",MONTH:"0202",DATE:"0203",TIME:"0204",NUMBER:"0301",SCALE_NUMBER:"0302",RANGE_NUMBER:"0303",SINGLE_SELECT:"0401",MULTIPLE_SELECT:"0402",RADIO:"0403",CHECKBOX:"0404"},y="[+-]?(?:\\d+(?:\\.\\d*)?|\\.\\d+)",f=r=>{if(r==null||!r.trim())return;const s=Number(r);return Number.isFinite(s)?s:void 0},A=(r,s)=>{const i=String(s??"").trim();if(!i)return{};const t=r.rangeOfValue||"",o=y;if(t==="x±a"){const u=i.match(new RegExp(`^(${o})?±(${o})?$`));if(u)return{first:f(u[1]),second:f(u[2])}}else if(t.includes("a")&&t.includes("b")){const u=i.match(new RegExp(`^(${o})?[<≤]x[<≤](${o})?$`));if(u)return{first:f(u[1]),second:f(u[2])}}else{const u=i.match(new RegExp(`^x(?:>|≥|<|≤|=)(${o})$`));if(u)return{first:f(u[1])}}const n=i.split(",").map(u=>u.trim());return{first:f(n[0]),second:f(n[1])}},S=(r,s)=>{const i=r.rangeOfValue||"",t=s.first==null?"":String(s.first),o=s.second==null?"":String(s.second);if(!t&&!o)return"";if(i==="x±a")return`${t}±${o}`;if(i.includes("a")&&i.includes("b")){const u=i.startsWith("a≤")?"≤":"<",d=i.endsWith("≤b")?"≤":"<";return`${t}${u}x${d}${o}`}const n=i.match(/^x(>|≥|<|≤|=)a$/)?.[1]||"";return t?`x${n}${t}`:""},C=(r,s)=>{if(r.rangeYpe!==h.RANGE_NUMBER)return;const i=String(s??"");if(!i.trim())return;const t=r.rangeOfValue||"",o=t==="x±a"||t.includes("a")&&t.includes("b"),n=A(r,i);if(n.first==null)return t==="x=a"||t==="x±a"?"请输入固定值":t==="x<a"||t==="x≤a"?"请输入最大值":"请输入最小值";if(o&&n.second==null)return t==="x±a"?"请输入允差值":"请输入最大值";const u=n.first,d=n.second;if(!Number.isFinite(u)||o&&!Number.isFinite(d))return"必须填写数字";if(t==="x±a"&&d<0)return"允差值不能小于0";if(o&&t!=="x±a"&&u>=d)return"最小值必须小于最大值"};export{h as INDICATOR_RANGE_TYPE,F as evaluateComputedIndicators,I as evaluateIndicatorFormula,_ as formatIndicatorFormulaResult,S as formatIndicatorRangeValue,T as isComputedIndicator,$ as isIndicatorReadonly,A as parseIndicatorRangeValue,b as parseIndicatorTags,C as validateIndicatorValue};
|
|
@@ -1 +1 @@
|
|
|
1
|
-
import{_ as o}from"../../../chunks/operationAuth.vue_vue_type_script_lang-
|
|
1
|
+
import{_ as o}from"../../../chunks/operationAuth.vue_vue_type_script_lang-B0muG8DV.js";import"vue";import"vue-router";import"../../stores/userInfoStore.js";import"pinia";import"../../utils/userSessionStorage.js";import"crypto-js/enc-base64";import"crypto-js/enc-utf8";import"../../stores/permissionStore.js";import"../../utils/frontendBus.js";import"../../hooks/useBehaviorAction.js";import"../../utils/behaviorTrack.js";import"axios";import"../../utils/uuid.js";import"uuid";import"../../utils/behaviorContext.js";import"../../utils/encrypt.js";import"jsencrypt";import"../../utils/dateTime.js";export{o as default};
|
|
@@ -124,7 +124,7 @@ declare const _default: import("vue").DefineComponent<globalThis.ExtractPropType
|
|
|
124
124
|
disabled: boolean;
|
|
125
125
|
modelValue: string;
|
|
126
126
|
tip: string;
|
|
127
|
-
elementType: string;
|
|
128
127
|
neutral: boolean;
|
|
128
|
+
elementType: string;
|
|
129
129
|
}, {}, {}, {}, string, import("vue").ComponentProvideOptions, true, {}, any>;
|
|
130
130
|
export default _default;
|
|
@@ -6,19 +6,18 @@ type __VLS_Props = {
|
|
|
6
6
|
readonly?: boolean;
|
|
7
7
|
contentComponent?: Component;
|
|
8
8
|
contentProps?: Record<string, unknown>;
|
|
9
|
-
contentTitle?: string;
|
|
10
9
|
renderDialog?: (...args: any[]) => any;
|
|
11
10
|
showFooter?: boolean;
|
|
12
11
|
};
|
|
13
12
|
type __VLS_PublicProps = __VLS_Props & {
|
|
14
13
|
'loading'?: boolean;
|
|
15
14
|
};
|
|
16
|
-
declare var
|
|
15
|
+
declare var __VLS_9: {
|
|
17
16
|
task: IWfTaskVo | undefined;
|
|
18
17
|
process: IWfProcessInstVo | undefined;
|
|
19
18
|
};
|
|
20
19
|
type __VLS_Slots = {} & {
|
|
21
|
-
content?: (props: typeof
|
|
20
|
+
content?: (props: typeof __VLS_9) => any;
|
|
22
21
|
};
|
|
23
22
|
declare const __VLS_component: import("vue").DefineComponent<__VLS_PublicProps, {
|
|
24
23
|
resetQuery: () => Promise<void>;
|
|
@@ -37,7 +36,6 @@ declare const __VLS_component: import("vue").DefineComponent<__VLS_PublicProps,
|
|
|
37
36
|
renderDialog: (...args: any[]) => any;
|
|
38
37
|
contentComponent: Component;
|
|
39
38
|
contentProps: Record<string, unknown>;
|
|
40
|
-
contentTitle: string;
|
|
41
39
|
}, {}, {}, {}, string, import("vue").ComponentProvideOptions, false, {}, any>;
|
|
42
40
|
declare const _default: __VLS_WithSlots<typeof __VLS_component, __VLS_Slots>;
|
|
43
41
|
export default _default;
|
|
@@ -1,4 +1,7 @@
|
|
|
1
|
-
import{defineComponent as ge,useModel as Ie,ref as A,computed as
|
|
1
|
+
import{defineComponent as ge,useModel as Ie,ref as A,computed as y,resolveComponent as h,resolveDirective as Te,openBlock as a,createElementBlock as r,createCommentVNode as d,withDirectives as xe,createVNode as D,createElementVNode as i,createBlock as x,Fragment as u,renderList as C,normalizeClass as H,toDisplayString as p,renderSlot as Ce,resolveDynamicComponent as be,mergeProps as Ne,withCtx as K,normalizeStyle as De,createTextVNode as b,unref as J,mergeModels as X,nextTick as Ae}from"vue";import V from"../../api/workflow/workflowInstApi.js";import Ke from"../../api/DocumentApi.js";import Be from"../../hooks/useFileView.js";import Ee from"../../utils/FrameworkUtils.js";import{formatDateTime as Le}from"../../utils/dateTime.js";import{userInfoStore as Me}from"../../stores/userInfoStore.js";import Se from"./TaskOperation.vue.js";import{_ as Pe}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"element-plus";import"../../utils/frontendBus.js";import"../../utils/globalLoading.js";import"../../utils/workflowTaskContext.js";import"../../config/GlobalLoadingConfig.js";import"xlsx-js-style";import"pinia";import"../../utils/userSessionStorage.js";import"./components/SelectAssigneeDialog.vue.js";import"../../../chunks/AddOrMinusMultiDialog.vue_vue_type_script_setup_true_lang-Buyy5IIG.js";import"./components/CheckDialog.vue.js";import"@element-plus/icons-vue";import"../bpmntree/components/UserSelector/UserTag.vue.js";import"../../../chunks/userSelect.vue_vue_type_script_setup_true_lang-DlEso2ua.js";import"@vueuse/core";import"../business/userSelectContent.vue.js";import"../../api/BasicApi.js";import"../../api/SysUserApi.js";import"../upload/CustomElUpload.vue.js";import"../../hooks/useDeleteConfirmHooks.js";import"../../hooks/useBehaviorAction.js";import"../../utils/uploadAccept.js";import"../../utils/buildUploadHeaders.js";import"../../hooks/workflowTodo.js";import"../../hooks/usePermissionHooks.js";import"vue-router";import"../../stores/permissionStore.js";import"../../utils/routeMetaParams.js";import"../../hooks/useOpenNewMenu.js";import"../../utils/commonUtils.js";import"../../utils/tree.js";const $e={class:"workflow-todo-shell"},Ve={class:"workflow-todo-shell__body dialog-content-fill"},je={key:1,class:"wf-progress-scroll"},Fe={class:"wf-progress-steps"},Oe={class:"wf-progress-step__icon-wrap"},Ue={class:"wf-progress-step__icon"},ze={key:0,viewBox:"0 0 24 24",fill:"none",stroke:"currentColor","stroke-width":"3","stroke-linecap":"round","stroke-linejoin":"round"},Re={key:4},Qe={class:"wf-progress-step__name"},Ge={class:"wf-progress-step__name-text"},We={class:"wf-progress-step__name-label"},Ye={key:0,class:"wf-progress-step__occurrence"},qe={key:0,class:"workflow-todo-shell__record-occurrence"},He={key:1,class:"workflow-todo-shell__record-type"},Je={key:0,class:"workflow-todo-shell__record-user"},Xe={class:"workflow-todo-shell__record-person__name"},Ze={key:0,class:"workflow-todo-shell__comment"},et={key:0,class:"workflow-todo-shell__record-files"},tt=["onClick"],st={class:"workflow-todo-shell__record-person__name"},ot={key:0,class:"workflow-todo-shell__comment"},nt={key:1,class:"workflow-todo-shell__record-files"},at=["onClick"],rt={class:"workflow-todo-shell__record-person__name"},lt={key:0,class:"workflow-todo-shell__footer"},it=ge({__name:"WorkflowTodoShell",props:X({taskId:{},taskInfo:{default:void 0},readonly:{type:Boolean,default:!1},contentComponent:{default:void 0},contentProps:{default:()=>({})},renderDialog:{type:Function,default:void 0},showFooter:{type:Boolean,default:!0}},{loading:{type:Boolean,default:!1},loadingModifiers:{}}),emits:X(["cancel","success"],["update:loading"]),setup(w,{expose:Z,emit:ee}){const f=w,B=ee,g=Ie(w,"loading"),v=A(),m=A(),E=A(),L=A(!1),te=e=>[...e].sort((t,o)=>(t.createTime||"").localeCompare(o.createTime||"")),j=y(()=>te([...m.value?.hisTasks||[],...m.value?.activeTasks||[]])),M=A({}),F=Be().fileView,O=e=>{const t=(e.split(".").pop()||"").toLowerCase();return".jpg,.jpeg,.png,.gif,.bmp".includes(t)?"adtec-image":t==="pdf"?"adtec-pdf":t==="doc"||t==="docx"?"adtec-word":t==="xls"||t==="xlsx"?"adtec-excel":t==="ppt"||t==="pptx"?"adtec-ppt":"adtec-text"},N=e=>e?M.value[e]||[]:[],se=async()=>{var t;const e=Array.from(new Set(j.value.map(o=>o.taskId).filter(o=>!!o)));if(e.length)try{const o=await Ke.getUpLoadFilesByBussinessIds(e),n={};for(const l of o)l.businessId&&(n[t=l.businessId]||(n[t]=[])).push(l);M.value=n}catch{M.value={}}},S=y(()=>{const e=new Map;for(const t of j.value){const o=Y(t),n=e.get(o);n?n.tasks.push(t):e.set(o,{taskName:t.taskName,taskDefKey:t.taskDefKey,parentExecutionId:t.parentExecutionId,tasks:[t],approvalType:t.approvalType})}return Array.from(e.values())}),oe=y(()=>v.value?.procEndTime?!0:!!(m.value&&!(m.value.activeTasks||[]).length&&(m.value.hisTasks||[]).length)),ne=y(()=>{const e=[...S.value],t=new Set(e.map(n=>U(n)));for(const n of m.value?.futureTasks||[]){const l=`${n.taskDefKey||n.taskName}-`;t.has(l)||e.push({taskName:n.taskName,taskDefKey:n.taskDefKey,tasks:[],assigneeNames:n.assigneeNames,approvalType:n.approvalType})}const o=new Map;for(const n of e){const l=n.taskDefKey||n.taskName||"";l&&(n.occurrence=(o.get(l)||0)+1,o.set(l,n.occurrence))}return e}),U=e=>`${e.taskDefKey||e.taskName}-${e.parentExecutionId||""}`,ae={single:"或签",joint:"会签",all:"会签"},z=e=>ae[e.approvalType||e.tasks[0]?.approvalType||""]||"",re=e=>(e.approvalType||e.tasks[0]?.approvalType||"")==="single",R=e=>{const t=(e.assigneeNames||"").split(",").map(o=>o.trim()).filter(Boolean);return t.length?t:["待处理"]},le={1:{label:"同意",type:"success"},2:{label:"驳回",type:"warning"},3:{label:"终止",type:"danger"},4:{label:"委派",type:"warning"},5:{label:"转办",type:"warning"},6:{label:"终止",type:"danger"},7:{label:"撤回",type:"info"}},ie=e=>Le(e.finishTime||e.createTime),ce={success:"var(--el-color-success)",warning:"var(--el-color-warning)",danger:"var(--el-color-danger)",primary:"var(--el-color-primary)"},de=e=>ce[e]||"",I=e=>{if(!e.tasks.length)return{label:"等待",type:"info",hollow:!1};const t=e.tasks;if(t.some(l=>!l.finishTime))return{label:"进行中",type:"primary",hollow:!1};let o="已办",n="success";if(t.some(l=>l.taskLocalVars?.firstTask))o="提交";else{const l=[...t].sort((k,$)=>($.finishTime||"").localeCompare(k.finishTime||""))[0]?.commentList?.[0],T=le[l?.type||""];o=T?.label||"已办",n=T?.type||"success"}return{label:o,type:n,hollow:!1}},Q=e=>{const t=e.assigneeName||e.startUserName||"待处理";return e.finishTime?`${t} · ${ie(e)}`:t},pe=e=>e.tasks.length?e.tasks.map(Q).join(" / "):R(e).join(" / "),P=e=>e.tasks.map(t=>t.comment).filter(Boolean).join(" / "),G=y(()=>{const e=new Map,t=[];for(const o of S.value){const n=o.taskDefKey||o.taskName||"";if(!n)continue;const l=o.tasks.some(k=>!k.finishTime)?"process":I(o).type,T=e.get(n);if(T!==void 0){const k=t[T];k.occurrence=(k.occurrence||1)+1,k.parentExecutionId=o.parentExecutionId,k.status=l;continue}e.set(n,t.length),t.push({taskName:o.taskName,taskDefKey:o.taskDefKey,parentExecutionId:o.parentExecutionId,status:l,occurrence:1})}for(const o of m.value?.futureTasks||[]){const n=o.taskDefKey||o.taskName||"";if(!n)continue;const l=e.get(n);if(l!==void 0){t[l].status="wait";continue}e.set(n,t.length),t.push({taskName:o.taskName,taskDefKey:o.taskDefKey,status:"wait"})}return t.push({taskName:"结束",taskDefKey:"__end__",status:oe.value?"success":"wait"}),t}),W=e=>{const t=Me().getUserInfo.userCode;return!t||!e?!1:!!(e.assigneeId===t||e.candidate&&e.candidate.split(",").map(n=>n.trim()).filter(Boolean).includes(t))},ue=y(()=>W(v.value)?!0:(m.value?.activeTasks||[]).some(e=>W(e))),fe=y(()=>f.readonly||!!v.value?.finishTime||!!v.value?.procEndTime||L.value&&!(m.value?.activeTasks||[]).length||!ue.value),me=y(()=>E.value?.taskOption),ke=y(()=>{const e=me.value;return{...e||{},cancelFunction:(...t)=>{e?.cancelFunction?.(...t),B("cancel")},workflowComplete:(...t)=>{e?.workflowComplete?.(...t)}}}),Y=e=>`${e.taskDefKey||e.taskName}-${e.parentExecutionId||""}`,q=async(e,t=!1)=>{const o=f.taskInfo&&f.taskInfo.procInsId==null&&f.taskInfo.processInstanceId!=null?{...f.taskInfo,procInsId:f.taskInfo.processInstanceId}:f.taskInfo;if(!(!f.taskId&&!o?.procInsId))try{g.value=!0,L.value=!1,v.value=e?{...v.value,...e}:t&&f.taskId?await V.getTaskInst(f.taskId):o||await V.getTaskInst(f.taskId),v.value?.procInsId&&(m.value=await V.getProcessTaskList(v.value.procInsId)),L.value=!0,await se(),await Ae(),await E.value?.resetQuery?.()}catch(n){Ee.messageError(n)}finally{g.value=!1}},ve=async e=>{B("success",e),await q(e,!0)};return Z({resetQuery:async()=>{await q()}}),(e,t)=>{const o=h("el-title"),n=h("el-empty"),l=h("el-tag-display"),T=h("el-flex"),k=h("el-icons"),$=h("el-timeline-item"),_e=h("el-timeline"),ye=h("el-button"),we=Te("loading");return a(),r("div",$e,[d(`
|
|
2
2
|
内容区撑满剩余空间统一使用 dialog-content-fill(flex/height 由核心工具类提供),
|
|
3
3
|
滚动仅保留在本内容区,底部操作栏固定不随内容滚动。
|
|
4
|
-
`),xe((
|
|
4
|
+
`),xe((a(),r("div",Ve,[D(o,{level:"1",title:"流程进度",style:{"border-bottom":"var(--border)"}}),i("div",null,[G.value.length?(a(),r("div",je,[i("div",Fe,[(a(!0),r(u,null,C(G.value,(s,c)=>(a(),r("div",{key:Y(s),class:H(["wf-progress-step",{done:s.status==="success",current:s.status==="process",rejected:s.status==="warning",stopped:s.status==="error"||s.status==="danger"}])},[i("div",Oe,[i("div",Ue,[d(" 同意/提交:对勾 "),s.status==="success"?(a(),r("svg",ze,[...t[3]||(t[3]=[i("path",{d:"M20 6L9 17l-5-5"},null,-1)])])):s.status==="warning"?(a(),r(u,{key:1},[d(" 驳回:回退箭头 "),t[4]||(t[4]=i("svg",{viewBox:"0 0 24 24",fill:"currentColor"},[i("path",{d:"M10 9V5l-7 7 7 7v-4.1c5 0 8.5 1.6 11 5.1-1-5-4-10-11-11z"})],-1))],2112)):s.status==="danger"||s.status==="error"?(a(),r(u,{key:2},[d(" 终止:叉 "),t[5]||(t[5]=i("svg",{viewBox:"0 0 24 24",fill:"none",stroke:"currentColor","stroke-width":"3","stroke-linecap":"round","stroke-linejoin":"round"},[i("path",{d:"M18 6L6 18"}),i("path",{d:"M6 6l12 12"})],-1))],2112)):s.status==="info"?(a(),r(u,{key:3},[d(" 撤回:撤销箭头 "),t[6]||(t[6]=i("svg",{viewBox:"0 0 24 24",fill:"currentColor"},[i("path",{d:"M12.5 8c-2.65 0-5.05.99-6.9 2.6L2 7v9h9l-3.62-3.62c1.39-1.16 3.16-1.88 5.12-1.88 3.54 0 6.55 2.31 7.6 5.5l2.37-.78C21.08 11.03 17.15 8 12.5 8z"})],-1))],2112)):(a(),r("span",Re,p(c+1),1))])]),i("div",Qe,[i("span",Ge,[i("span",We,p(s.taskName||"未命名节点"),1),s.occurrence&&s.occurrence>1?(a(),r("sup",Ye,p(s.occurrence),1)):d("v-if",!0)])])],2))),128))])])):(a(),x(n,{key:0,description:"暂无流程进度","image-size":48}))]),d(`
|
|
5
|
+
业务审核内容:完全由业务内容组件/插槽决定(含它自己的标题、分区、网格),
|
|
6
|
+
通用抽屉不再注入任何标题,业务页面给什么就展示什么。
|
|
7
|
+
`),Ce(e.$slots,"content",{task:v.value,process:m.value},()=>[w.contentComponent?(a(),x(be(w.contentComponent),Ne({key:0,ref_key:"contentRef",ref:E},w.contentProps,{loading:g.value,"onUpdate:loading":t[0]||(t[0]=s=>g.value=s)}),null,16,["loading"])):d("v-if",!0)],!0),D(o,{level:"1",title:"审批记录",style:{"border-bottom":"var(--border)"}}),i("div",null,[S.value.length?(a(),x(_e,{key:1,class:"workflow-todo-shell__timeline"},{default:K(()=>[(a(!0),r(u,null,C(ne.value,s=>(a(),x($,{key:U(s),type:I(s).type,hollow:I(s).hollow,style:De({"--el-timeline-node-color":de(I(s).type)})},{default:K(()=>[D(T,{align:"center",justify:"space-between",class:H(["workflow-todo-shell__record-title",`is-${I(s).type}`])},{default:K(()=>[i("span",null,[b(p(s.taskName||"未命名节点")+" ",1),(s.occurrence||0)>1?(a(),r("span",qe,p(s.occurrence),1)):d("v-if",!0),z(s)?(a(),r("span",He,p(z(s)),1)):d("v-if",!0)]),D(l,{type:I(s).type,size:"small"},{default:K(()=>[b(p(I(s).label),1)]),_:2},1032,["type"])]),_:2},1032,["class"]),re(s)?(a(),r("div",Je,[i("span",Xe,p(pe(s)),1),P(s)||s.tasks.some(c=>N(c.taskId).length)?(a(),r("div",Ze,[P(s)?(a(),r(u,{key:0},[b(p(P(s)),1)],64)):d("v-if",!0),(a(!0),r(u,null,C(s.tasks,c=>(a(),r(u,{key:c.taskId},[N(c.taskId).length?(a(),r("div",et,[(a(!0),r(u,null,C(N(c.taskId),_=>(a(),r("span",{key:_.id,class:"workflow-todo-shell__record-file",onClick:he=>J(F)(_.id)},[D(k,{"model-value":O(_.name)},null,8,["model-value"]),b(p(_.name),1)],8,tt))),128))])):d("v-if",!0)],64))),128))])):d("v-if",!0)])):s.tasks.length?(a(!0),r(u,{key:1},C(s.tasks,c=>(a(),r("div",{key:c.taskId,class:"workflow-todo-shell__record-user"},[i("span",st,p(Q(c)),1),c.comment||N(c.taskId).length?(a(),r("div",ot,[c.comment?(a(),r(u,{key:0},[b(p(c.comment),1)],64)):d("v-if",!0),N(c.taskId).length?(a(),r("div",nt,[(a(!0),r(u,null,C(N(c.taskId),_=>(a(),r("span",{key:_.id,class:"workflow-todo-shell__record-file",onClick:he=>J(F)(_.id)},[D(k,{"model-value":O(_.name)},null,8,["model-value"]),b(p(_.name),1)],8,at))),128))])):d("v-if",!0)])):d("v-if",!0)]))),128)):(a(!0),r(u,{key:2},C(R(s),c=>(a(),r("div",{key:c,class:"workflow-todo-shell__record-user"},[i("span",rt,p(c),1)]))),128))]),_:2},1032,["type","hollow","style"]))),128))]),_:1})):(a(),x(n,{key:0,description:"暂无审批记录","image-size":48}))])])),[[we,g.value]]),w.showFooter?(a(),r("div",lt,[fe.value?(a(),x(ye,{key:0,onClick:t[1]||(t[1]=s=>B("cancel"))},{default:K(()=>[...t[7]||(t[7]=[b("取消",-1)])]),_:1})):(a(),x(Se,{key:1,"task-id":w.taskId,params:ke.value,"render-dialog":w.renderDialog,"show-process-btn":!1,"but-loading":g.value,"onUpdate:butLoading":t[2]||(t[2]=s=>g.value=s),onSuccess:ve},null,8,["task-id","params","render-dialog","but-loading"]))])):d("v-if",!0)])}}}),ls=Pe(it,[["__scopeId","data-v-d5df3d4d"]]);export{ls as default};
|
|
@@ -1 +1 @@
|
|
|
1
|
-
import{_ as p}from"../../chunks/operationAuth.vue_vue_type_script_lang-
|
|
1
|
+
import{_ as p}from"../../chunks/operationAuth.vue_vue_type_script_lang-B0muG8DV.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/ElDialogBody/ElDialogBody.vue.js";import l from"../components/ElGrid/ElGrid.vue.js";import c from"../components/Search/ElSearch.vue.js";import u from"../components/Title/ElTitle.vue.js";import h from"../components/icon/ElIcons.vue.js";import d from"../components/icon/ElIconBtn.vue.js";import E from"../components/Search/ElIconSearch.vue.js";import $ from"../components/Search/ElSearchInput.vue.js";import{_ as v}from"../../chunks/ElCopyTooltip.vue_vue_type_script_setup_true_lang-Qg1P3If6.js";/* empty css */import{reportPageLeave as i,setCurrentMenu as m,reportPageActivate as I,reportFeatureOpen as b}from"../utils/behaviorTrack.js";import{_ as g}from"../../chunks/userSelect.vue_vue_type_script_setup_true_lang-DlEso2ua.js";import{_ as P}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 A}from"../../chunks/ElScrollbars.vue_vue_type_script_setup_true_lang-0Vhrxdyr.js";import{_ as D}from"../../chunks/ElTotalTools.vue_vue_type_script_setup_true_lang-BqRnIFkw.js";import L from"../components/ElCardList.vue.js";import T from"../components/kFrame/KFrame.vue.js";import{_ as C}from"../../chunks/ElPagePagination.vue_vue_type_style_index_0_lang-CGjSyYgn.js";import{_ as S}from"../../chunks/ElCellLink.vue_vue_type_script_setup_true_lang-DXGj9pCT.js";import{_ as y}from"../../chunks/ElTagDisplay.vue_vue_type_script_setup_true_lang-DQXuYsW_.js";import{_ as O}from"../../chunks/DragHandleIcon.vue_vue_type_script_setup_true_lang-DnMWn5jY.js";import F from"../components/ElCircleBadge/ElCircleBadge.vue.js";import N from"../components/AsideCardList/AsideCardList.vue.js";import{_ as U}from"../../chunks/ElNumericInput.vue_vue_type_script_setup_true_lang-C6KlCE6f.js";import x from"../components/ElIndicatorInput/ElIndicatorInput.vue.js";import B from"../components/ElTabsPanel/ElTabsPanel.vue.js";import"vue";import"vue-router";import"../stores/userInfoStore.js";import"pinia";import"../utils/userSessionStorage.js";import"crypto-js/enc-base64";import"crypto-js/enc-utf8";import"../stores/permissionStore.js";import"../utils/frontendBus.js";import"../hooks/useBehaviorAction.js";import"../utils/behaviorContext.js";import"../utils/uuid.js";import"uuid";import"axios";import"../utils/encrypt.js";import"jsencrypt";import"../utils/dateTime.js";import"../interface/enum/FlexEnum.js";import"@vueuse/core";import"../../chunks/_plugin-vue_export-helper-DlAUqK2U.js";import"../components/ElGrid/ElGridColumnSetting.vue.js";import"../utils/columnSettingStorage.js";import"@element-plus/icons-vue";import"element-plus";import"../components/business/userSelectContent.vue.js";import"../api/BasicApi.js";import"../utils/request.js";import"../utils/AxiosConfig.js";import"../utils/globalLoading.js";import"../utils/workflowTaskContext.js";import"../config/GlobalLoadingConfig.js";import"../api/SysUserApi.js";import"../utils/FrameworkUtils.js";import"xlsx-js-style";import"../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"../api/DocumentApi.js";import"../utils/buildUploadHeaders.js";import"../components/ElIndicatorInput/interface.js";const Er={mounted(){const o=this.$route,r=o?.meta?.sysMenuData;r?.id&&m(r);const t=this.$options?.__name||this.$options?.name;this.$options?.__isPageWrapper||this.$parent?.$options?.__isPageWrapper&&r?.id&&t&&t===o?.name&&(b(r,o.fullPath),this.__behaviorMenuId=r.id,this.__behaviorActivatedOnce=!1,this.__behaviorLeft=!1)},activated(){const o=this.$route?.meta?.sysMenuData;o?.id&&m(o);const r=this.__behaviorMenuId;if(r){if(!this.__behaviorActivatedOnce){this.__behaviorActivatedOnce=!0;return}I(r),this.__behaviorLeft=!1}},deactivated(){const o=this.__behaviorMenuId;o&&(i(o,"KEEP_ALIVE_DEACTIVATE"),this.__behaviorLeft=!0)},beforeUnmount(){const o=this.__behaviorMenuId;o&&i(o,"UNMOUNT",!0,!this.__behaviorLeft)},components:{operationAuth:p,ElFlex:e,ElDescForm:a,ElContentPanel:s,ElSplitPanel:n,ElCardSection:_,ElDialogBody:f,ElGrid:l,ElSearch:c,ElTitle:u,ElIcons:h,ElIconBtn:d,ElIconSearch:E,ElSearchInput:$,ElTooltip:v,userSelect:g,mdmUserSelect:P,ElScrollbars:A,ElTotalTools:D,ElCardList:L,KFrame:T,ElPagePagination:C,ElCellLink:S,ElTagDisplay:y,DictDisplay:M,DragHandleIcon:O,ElCircleBadge:F,AsideCardList:N,ElNumericInput:U,ElIndicatorInput:x,ElTabsPanel:B}};export{Er as globalMixin};
|
|
@@ -20,8 +20,12 @@ declare const _default: {
|
|
|
20
20
|
border?: boolean;
|
|
21
21
|
readonly?: boolean;
|
|
22
22
|
title?: string;
|
|
23
|
+
scrollToError?: boolean;
|
|
24
|
+
scrollIntoViewOptions?: boolean | ScrollIntoViewOptions;
|
|
23
25
|
}> & Readonly<{}>, {
|
|
24
26
|
validate: (callback?: (isValid: boolean, invalidFields?: unknown) => void) => any;
|
|
27
|
+
validateField: (props?: unknown, callback?: unknown) => any;
|
|
28
|
+
scrollToField: (prop: string) => any;
|
|
25
29
|
resetFields: () => any;
|
|
26
30
|
clearValidate: () => any;
|
|
27
31
|
}, {}, {}, {}, import("vue").ComponentOptionsMixin, import("vue").ComponentOptionsMixin, {}, import("vue").PublicProps, {
|
|
@@ -29,6 +33,8 @@ declare const _default: {
|
|
|
29
33
|
rules: Record<string, import("element-plus").FormItemRule[]>;
|
|
30
34
|
readonly: boolean;
|
|
31
35
|
column: number;
|
|
36
|
+
scrollToError: boolean;
|
|
37
|
+
scrollIntoViewOptions: boolean | ScrollIntoViewOptions;
|
|
32
38
|
}, false, {}, {}, import("vue").GlobalComponents, import("vue").GlobalDirectives, string, {}, any, import("vue").ComponentProvideOptions, {
|
|
33
39
|
P: {};
|
|
34
40
|
B: {};
|
|
@@ -44,8 +50,12 @@ declare const _default: {
|
|
|
44
50
|
border?: boolean;
|
|
45
51
|
readonly?: boolean;
|
|
46
52
|
title?: string;
|
|
53
|
+
scrollToError?: boolean;
|
|
54
|
+
scrollIntoViewOptions?: boolean | ScrollIntoViewOptions;
|
|
47
55
|
}> & Readonly<{}>, {
|
|
48
56
|
validate: (callback?: (isValid: boolean, invalidFields?: unknown) => void) => any;
|
|
57
|
+
validateField: (props?: unknown, callback?: unknown) => any;
|
|
58
|
+
scrollToField: (prop: string) => any;
|
|
49
59
|
resetFields: () => any;
|
|
50
60
|
clearValidate: () => any;
|
|
51
61
|
}, {}, {}, {}, {
|
|
@@ -53,6 +63,8 @@ declare const _default: {
|
|
|
53
63
|
rules: Record<string, import("element-plus").FormItemRule[]>;
|
|
54
64
|
readonly: boolean;
|
|
55
65
|
column: number;
|
|
66
|
+
scrollToError: boolean;
|
|
67
|
+
scrollIntoViewOptions: boolean | ScrollIntoViewOptions;
|
|
56
68
|
}>;
|
|
57
69
|
__isFragment?: never;
|
|
58
70
|
__isTeleport?: never;
|
|
@@ -65,8 +77,12 @@ declare const _default: {
|
|
|
65
77
|
border?: boolean;
|
|
66
78
|
readonly?: boolean;
|
|
67
79
|
title?: string;
|
|
80
|
+
scrollToError?: boolean;
|
|
81
|
+
scrollIntoViewOptions?: boolean | ScrollIntoViewOptions;
|
|
68
82
|
}> & Readonly<{}>, {
|
|
69
83
|
validate: (callback?: (isValid: boolean, invalidFields?: unknown) => void) => any;
|
|
84
|
+
validateField: (props?: unknown, callback?: unknown) => any;
|
|
85
|
+
scrollToField: (prop: string) => any;
|
|
70
86
|
resetFields: () => any;
|
|
71
87
|
clearValidate: () => any;
|
|
72
88
|
}, {}, {}, {}, import("vue").ComponentOptionsMixin, import("vue").ComponentOptionsMixin, {}, string, {
|
|
@@ -74,6 +90,8 @@ declare const _default: {
|
|
|
74
90
|
rules: Record<string, import("element-plus").FormItemRule[]>;
|
|
75
91
|
readonly: boolean;
|
|
76
92
|
column: number;
|
|
93
|
+
scrollToError: boolean;
|
|
94
|
+
scrollIntoViewOptions: boolean | ScrollIntoViewOptions;
|
|
77
95
|
}, {}, string, {}, import("vue").GlobalComponents, import("vue").GlobalDirectives, string, import("vue").ComponentProvideOptions> & import("vue").VNodeProps & import("vue").AllowedComponentProps & import("vue").ComponentCustomProps & (new () => {
|
|
78
96
|
$slots: {
|
|
79
97
|
[x: string]: ((props: {
|
|
@@ -182,8 +200,8 @@ declare const _default: {
|
|
|
182
200
|
disabled: boolean;
|
|
183
201
|
modelValue: string;
|
|
184
202
|
tip: string;
|
|
185
|
-
elementType: string;
|
|
186
203
|
neutral: boolean;
|
|
204
|
+
elementType: string;
|
|
187
205
|
}, {}, {}, {}, string, import("vue").ComponentProvideOptions, true, {}, any>;
|
|
188
206
|
OperationAuth: import("vue").DefineComponent<{
|
|
189
207
|
operCode: string | string[];
|
|
@@ -760,7 +778,7 @@ export default _default;
|
|
|
760
778
|
export { ElDescForm, ElTagDisplay, ElSearchInput, ElCircleBadge, ElNumericInput, ElIndicatorInput, ElTabsPanel, };
|
|
761
779
|
export type { IndicatorControlType, IndicatorInputConfig, IndicatorInputOption, } from '../components/ElIndicatorInput/interface';
|
|
762
780
|
export { INDICATOR_RANGE_TYPE } from '../components/ElIndicatorInput/interface';
|
|
763
|
-
export { evaluateIndicatorFormula, formatIndicatorRangeValue, parseIndicatorRangeValue, validateIndicatorValue, } from '../components/ElIndicatorInput/interface';
|
|
781
|
+
export { evaluateComputedIndicators, evaluateIndicatorFormula, formatIndicatorFormulaResult, formatIndicatorRangeValue, isComputedIndicator, isIndicatorReadonly, parseIndicatorTags, parseIndicatorRangeValue, validateIndicatorValue, } from '../components/ElIndicatorInput/interface';
|
|
764
782
|
export { useDescForm } from '../hooks/useDescForm';
|
|
765
783
|
export { DATE_FORMAT, DATE_TIME_FORMAT, DATE_TIME_MILLISECONDS_FORMAT, formatDateTime, } from '../utils/dateTime';
|
|
766
784
|
export type { DateTimeInput, FormatDateTimeOptions } from '../utils/dateTime';
|
|
@@ -1 +1 @@
|
|
|
1
|
-
import"../config/ElementPlusConfig.js";import{_ as
|
|
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 m from"../components/icon/ElIcons.vue.js";import t from"../components/icon/ElIconBtn.vue.js";import{_ as i}from"../../chunks/operationAuth.vue_vue_type_script_lang-B0muG8DV.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 c}from"../../chunks/ElNumericInput.vue_vue_type_script_setup_true_lang-C6KlCE6f.js";import f from"../components/ElIndicatorInput/ElIndicatorInput.vue.js";import _ from"../components/ElTabsPanel/ElTabsPanel.vue.js";import{INDICATOR_RANGE_TYPE as Io,evaluateComputedIndicators as uo,evaluateIndicatorFormula as To,formatIndicatorFormulaResult as Do,formatIndicatorRangeValue as Ao,isComputedIndicator as Fo,isIndicatorReadonly as Ro,parseIndicatorRangeValue as go,parseIndicatorTags as Co,validateIndicatorValue as xo}from"../components/ElIndicatorInput/interface.js";import{useDescForm as Oo}from"../hooks/useDescForm.js";import{DATE_FORMAT as So,DATE_TIME_FORMAT as $o,DATE_TIME_MILLISECONDS_FORMAT as ho,formatDateTime as Po}from"../utils/dateTime.js";import E 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"vue-router";import"../stores/userInfoStore.js";import"pinia";import"../utils/userSessionStorage.js";import"crypto-js/enc-base64";import"crypto-js/enc-utf8";import"../stores/permissionStore.js";import"../utils/frontendBus.js";import"../hooks/useBehaviorAction.js";import"../utils/behaviorTrack.js";import"axios";import"../utils/uuid.js";import"uuid";import"../utils/behaviorContext.js";import"../utils/encrypt.js";import"jsencrypt";import"@element-plus/icons-vue";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";const fo={ElFlex:o,ElDescForm:r,ElIcons:m,ElIconBtn:t,OperationAuth:i,ElSearch:p,ElIconSearch:a,ElSearchInput:e,ElCellLink:l,ElTagDisplay:n,ElCircleBadge:s,ElNumericInput:c,ElIndicatorInput:f,ElTabsPanel:_,elementPlusConfig:E};export{So as DATE_FORMAT,$o as DATE_TIME_FORMAT,ho as DATE_TIME_MILLISECONDS_FORMAT,s as ElCircleBadge,r as ElDescForm,f as ElIndicatorInput,c as ElNumericInput,e as ElSearchInput,_ as ElTabsPanel,n as ElTagDisplay,Io as INDICATOR_RANGE_TYPE,fo as default,uo as evaluateComputedIndicators,To as evaluateIndicatorFormula,Po as formatDateTime,Do as formatIndicatorFormulaResult,Ao as formatIndicatorRangeValue,Fo as isComputedIndicator,Ro as isIndicatorReadonly,go as parseIndicatorRangeValue,Co as parseIndicatorTags,Oo as useDescForm,xo as validateIndicatorValue};
|
|
@@ -1 +1 @@
|
|
|
1
|
-
import{globalMixin as o}from"../mixin/globalMixin.js";import"../../chunks/operationAuth.vue_vue_type_script_lang-
|
|
1
|
+
import{globalMixin as o}from"../mixin/globalMixin.js";import"../../chunks/operationAuth.vue_vue_type_script_lang-B0muG8DV.js";import"vue";import"vue-router";import"../stores/userInfoStore.js";import"pinia";import"../utils/userSessionStorage.js";import"crypto-js/enc-base64";import"crypto-js/enc-utf8";import"../stores/permissionStore.js";import"../utils/frontendBus.js";import"../hooks/useBehaviorAction.js";import"../utils/behaviorTrack.js";import"axios";import"../utils/uuid.js";import"uuid";import"../utils/behaviorContext.js";import"../utils/encrypt.js";import"jsencrypt";import"../utils/dateTime.js";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/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"../utils/FrameworkUtils.js";import"element-plus";import"xlsx-js-style";import"../../chunks/ElPagePagination.vue_vue_type_style_index_0_lang-CGjSyYgn.js";import"../components/Search/ElSearch.vue.js";import"@element-plus/icons-vue";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"../utils/request.js";import"../utils/AxiosConfig.js";import"../utils/globalLoading.js";import"../utils/workflowTaskContext.js";import"../config/GlobalLoadingConfig.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"../api/DocumentApi.js";import"../utils/buildUploadHeaders.js";import"../components/ElIndicatorInput/interface.js";import"../components/ElTabsPanel/ElTabsPanel.vue.js";const Ii={install(i){i.mixin(o)}};export{Ii as default};
|