@ibiz-template/runtime 0.3.4 → 0.3.5
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/index.esm.js +308 -163
- package/dist/index.system.min.js +2 -2
- package/dist/index.system.min.js.map +1 -1
- package/out/constant/index.d.ts +1 -0
- package/out/constant/index.d.ts.map +1 -1
- package/out/constant/index.js +1 -0
- package/out/constant/platform-type.d.ts +43 -0
- package/out/constant/platform-type.d.ts.map +1 -0
- package/out/constant/platform-type.js +44 -0
- package/out/constant/view-call-tag.d.ts +5 -1
- package/out/constant/view-call-tag.d.ts.map +1 -1
- package/out/constant/view-call-tag.js +4 -0
- package/out/controller/control/chart/generator/funnel-series-generator.js +1 -1
- package/out/controller/control/chart/generator/pie-series-generator.js +1 -1
- package/out/index.d.ts +1 -0
- package/out/index.d.ts.map +1 -1
- package/out/index.js +1 -0
- package/out/install.d.ts.map +1 -1
- package/out/install.js +6 -0
- package/out/interface/provider/i-platform-provider.d.ts +49 -0
- package/out/interface/provider/i-platform-provider.d.ts.map +1 -0
- package/out/interface/provider/i-platform-provider.js +1 -0
- package/out/interface/provider/index.d.ts +1 -0
- package/out/interface/provider/index.d.ts.map +1 -1
- package/out/interface/service/service/i-auth.service.d.ts +1 -1
- package/out/interface/service/service/i-auth.service.d.ts.map +1 -1
- package/out/platform/index.d.ts +3 -0
- package/out/platform/index.d.ts.map +1 -0
- package/out/platform/index.js +2 -0
- package/out/platform/platform-util.d.ts +11 -0
- package/out/platform/platform-util.d.ts.map +1 -0
- package/out/platform/platform-util.js +50 -0
- package/out/platform/provider/browser-platform-provider.d.ts +13 -0
- package/out/platform/provider/browser-platform-provider.d.ts.map +1 -0
- package/out/platform/provider/browser-platform-provider.js +12 -0
- package/out/platform/provider/index.d.ts +12 -0
- package/out/platform/provider/index.d.ts.map +1 -0
- package/out/platform/provider/index.js +17 -0
- package/out/platform/provider/platform-provider-base.d.ts +18 -0
- package/out/platform/provider/platform-provider-base.d.ts.map +1 -0
- package/out/platform/provider/platform-provider-base.js +42 -0
- package/out/register/helper/index.d.ts +1 -0
- package/out/register/helper/index.d.ts.map +1 -1
- package/out/register/helper/index.js +1 -0
- package/out/register/helper/platform-register.d.ts +23 -0
- package/out/register/helper/platform-register.d.ts.map +1 -0
- package/out/register/helper/platform-register.js +44 -0
- package/out/service/app-data-entity/app-data-entity.d.ts.map +1 -1
- package/out/service/app-data-entity/app-data-entity.js +9 -2
- package/out/service/service/auth/v7-auth.service.d.ts +1 -1
- package/out/service/service/auth/v7-auth.service.d.ts.map +1 -1
- package/out/service/service/auth/v7-auth.service.js +6 -2
- package/out/types.d.ts +10 -1
- package/out/types.d.ts.map +1 -1
- package/out/ui-action/provider/front-ui-action-provider.d.ts +1 -1
- package/out/ui-action/provider/front-ui-action-provider.d.ts.map +1 -1
- package/out/ui-action/provider/front-ui-action-provider.js +8 -9
- package/package.json +3 -3
- package/src/constant/index.ts +1 -0
- package/src/constant/platform-type.ts +50 -0
- package/src/constant/view-call-tag.ts +4 -0
- package/src/controller/control/chart/generator/funnel-series-generator.ts +1 -1
- package/src/controller/control/chart/generator/pie-series-generator.ts +1 -1
- package/src/index.ts +1 -0
- package/src/install.ts +6 -0
- package/src/interface/provider/i-platform-provider.ts +55 -0
- package/src/interface/provider/index.ts +1 -0
- package/src/interface/service/service/i-auth.service.ts +5 -1
- package/src/platform/index.ts +2 -0
- package/src/platform/platform-util.ts +57 -0
- package/src/platform/provider/browser-platform-provider.ts +12 -0
- package/src/platform/provider/index.ts +19 -0
- package/src/platform/provider/platform-provider-base.ts +50 -0
- package/src/register/helper/index.ts +1 -0
- package/src/register/helper/platform-register.ts +56 -0
- package/src/service/app-data-entity/app-data-entity.ts +9 -2
- package/src/service/service/auth/v7-auth.service.ts +10 -2
- package/src/types.ts +11 -0
- package/src/ui-action/provider/front-ui-action-provider.ts +23 -5
package/dist/index.system.min.js
CHANGED
|
@@ -1,5 +1,5 @@
|
|
|
1
|
-
System.register(["@ibiz-template/core","lodash-es","qx-util","qs","ramda","dayjs","async-validator","path-browserify"],function(d,ra){"use strict";var m,f,D,Tt,Bt,L,_t,na,At,oa,ua,ca,la,le,da,de,ha,k,he,Ot,Mt,pe,It,xt,fe,pa,fa,j,ma,Vt,Ea,ga,mt,Ca,Da,wa,va,Aa,Ia,ya,Fa,Pa,x,V,me,Et,K,kt,Ee,ge,ba,Ce,De,Na,Sa,w,we,T,A,rt,gt,ve,Ae,Ct,S,Ie,ye;return{setters:[function(g){m=g.RuntimeModelError,f=g.RuntimeError,D=g.ModelError,Tt=g.IBizContext,Bt=g.DataTypes,L=g.HttpResponse,_t=g.HttpError,na=g.clone,At=g.CoreConst,oa=g.Net,ua=g.getToken,ca=g.NOOP,la=g.IBizParams,le=g.NoticeError,da=g.isElementSame,de=g.findRecursiveChild,ha=g.StringUtil,k=g.recursiveIterate,he=g.debounceAndAsyncMerge,Ot=g.mergeDefaultInLeft,Mt=g.isOverlap,pe=g.awaitTimeout,It=g.mergeInLeft,xt=g.plus,fe=g.toNumberOrNil},function(g){pa=g.isEmpty,fa=g.isString,j=g.isArray,ma=g.isObject,Vt=g.debounce,Ea=g.isNil,ga=g.camelCase,mt=g.eq,Ca=g.gt,Da=g.gte,wa=g.findIndex,va=g.lt,Aa=g.lte,Ia=g.upperFirst,ya=g.snakeCase,Fa=g.kebabCase,Pa=g.isFunction},function(g){x=g.notNilEmpty,V=g.isNilOrEmpty,me=g.AsyncSeriesHook,Et=g.QXEvent,K=g.createUUID,kt=g.isArray,Ee=g.setCookie,ge=g.clearCookie,ba=g.clearAll,Ce=g.isNumber,De=g.ascSort,Na=g.descSort},function(g){Sa=g.default},function(g){w=g.isNil,we=g.mergeRight,T=g.isEmpty,A=g.clone,rt=g.equals,gt=g.where,ve=g.mergeLeft,Ae=g.isNotNil,Ct=g.mergeDeepRight},function(g){S=g.default},function(g){Ie=g.default},function(g){ye=g.default}],execute:function(){d({asyncImportData:so,calcContentAlignStyle:zi,calcDeCodeNameById:O,calcDynaClass:Dt,calcGridLayoutPos:Gi,calcLayoutHeightWidth:Ut,calcMainStateOPPrivsStrs:Va,calcNavParams:Wt,calcResPath:Qt,compare:Ft,compareNumber:Te,contains:Pt,convertNavData:y,convertNavDataByArray:Ma,convertObjectToNavParams:Fe,execDELogic:te,execDELogicAction:Ns,execDELogicById:bs,execFieldLogics:Rt,execUILogic:ie,exportData:xs,filterFieldLogics:Wa,filterValueRules:Me,findChildFormDetails:Gt,findDELogic:Ne,findEditItem:Ua,findFieldById:wt,findModelChild:lt,formatMultiData:Pe,generateEditorRules:Ye,generateRules:He,getAllPanelField:Ha,getAppCounterProvider:es,getAppViewRef:Wi,getAsyncActionProvider:Vr,getChildNodeRSs:Le,getControl:ki,getControlProvider:dt,getControlsByView:za,getDeACMode:ji,getDefaultValue:qe,getEditorProvider:bt,getFormDetailProvider:Ue,getGridColumnProvider:ze,getMatchResPath:As,getOriginData:Ms,getPFPlugin:Ui,getPanelItemProvider:cs,getPortletProvider:hs,getRootNode:Se,getTreeNode:Re,getUIActionById:zt,getUIActionProvider:ms,getUILogicNodeProvider:gs,getViewEngines:ja,getViewLogics:Ga,getViewProvider:Or,getWFContext:Qa,getWFSubmitViewId:pr,handleAllSettled:nt,hasDeCodeName:ka,hasSubRoute:Xe,importData:io,install:qu,installCommand:_s,isDataContainer:Ka,isValueChange:ae,matchMainState:xa,openRedirectView:Ya,parseUserParams:be,presetAppCounterProvider:ws,presetUIActionProvider:Us,registerAppCounterProvider:ts,registerAsyncActionProvider:Mr,registerControlProvider:br,registerEditorProvider:Nr,registerFormDetailProvider:Sr,registerGridColumnProvider:Rr,registerPanelItemProvider:Lr,registerPortletProvider:Tr,registerUIActionProvider:St,registerUILogicNodeProvider:Br,registerViewProvider:_r,strContain:jt,testCond:$,toLocalOpenWFRedirectView:qa,verifyDeRules:Be,verifyFormGroupLogic:Kt,verifyPanelGroupLogic:Xt});var g=typeof globalThis<"u"?globalThis:typeof window<"u"?window:typeof global<"u"?global:typeof self<"u"?self:{};function yt(t){return t&&t.__esModule&&Object.prototype.hasOwnProperty.call(t,"default")?t.default:t}var Ra={exports:{}};(function(t,e){(function(a,s){t.exports=s()})(g,function(){return function(a,s,i){var r=function(n,o){if(!o||!o.length||o.length===1&&!o[0]||o.length===1&&Array.isArray(o[0])&&!o[0].length)return null;var u;o.length===1&&o[0].length>0&&(o=o[0]),u=(o=o.filter(function(l){return l}))[0];for(var c=1;c<o.length;c+=1)o[c].isValid()&&!o[c][n](u)||(u=o[c]);return u};i.max=function(){var n=[].slice.call(arguments,0);return r("isAfter",n)},i.min=function(){var n=[].slice.call(arguments,0);return r("isBefore",n)}}})})(Ra);var ni=Ra.exports,oi=yt(ni),La={exports:{}};(function(t,e){(function(a,s){t.exports=s()})(g,function(){return function(a,s){s.prototype.isSameOrBefore=function(i,r){return this.isSame(i,r)||this.isBefore(i,r)}}})})(La);var ui=La.exports,ci=yt(ui),Ta={exports:{}};(function(t,e){(function(a,s){t.exports=s()})(g,function(){var a="month",s="quarter";return function(i,r){var n=r.prototype;n.quarter=function(c){return this.$utils().u(c)?Math.ceil((this.month()+1)/3):this.month(this.month()%3+3*(c-1))};var o=n.add;n.add=function(c,l){return c=Number(c),this.$utils().p(l)===s?this.add(3*c,a):o.bind(this)(c,l)};var u=n.startOf;n.startOf=function(c,l){var h=this.$utils(),p=!!h.u(l)||l;if(h.p(c)===s){var E=this.quarter()-1;return p?this.month(3*E).startOf(a).startOf("day"):this.month(3*E+2).endOf(a).endOf("day")}return u.bind(this)(c,l)}}})})(Ta);var li=Ta.exports,di=yt(li),Ba={exports:{}};(function(t,e){(function(a,s){t.exports=s()})(g,function(){var a="week",s="year";return function(i,r,n){var o=r.prototype;o.week=function(u){if(u===void 0&&(u=null),u!==null)return this.add(7*(u-this.week()),"day");var c=this.$locale().yearStart||1;if(this.month()===11&&this.date()>25){var l=n(this).startOf(s).add(1,s).date(c),h=n(this).endOf(a);if(l.isBefore(h))return 1}var p=n(this).startOf(s).date(c).startOf(a).subtract(1,"millisecond"),E=this.diff(p,a,!0);return E<0?n(this).startOf("week").week():Math.ceil(E)},o.weeks=function(u){return u===void 0&&(u=null),this.week(u)}}})})(Ba);var hi=Ba.exports,pi=yt(hi),_a={exports:{}};(function(t,e){(function(a,s){t.exports=s()})(g,function(){var a="day";return function(s,i,r){var n=function(c){return c.add(4-c.isoWeekday(),a)},o=i.prototype;o.isoWeekYear=function(){return n(this).year()},o.isoWeek=function(c){if(!this.$utils().u(c))return this.add(7*(c-this.isoWeek()),a);var l,h,p,E,C=n(this),F=(l=this.isoWeekYear(),h=this.$u,p=(h?r.utc:r)().year(l).startOf("year"),E=4-p.isoWeekday(),p.isoWeekday()>4&&(E+=7),p.add(E,a));return C.diff(F,"week")+1},o.isoWeekday=function(c){return this.$utils().u(c)?this.day()||7:this.day(this.day()%7?c:c-7)};var u=o.startOf;o.startOf=function(c,l){var h=this.$utils(),p=!!h.u(l)||l;return h.p(c)==="isoweek"?p?this.date(this.date()-(this.isoWeekday()-1)).startOf("day"):this.date(this.date()-1-(this.isoWeekday()-1)+7).endOf("day"):u.bind(this)(c,l)}}})})(_a);var fi=_a.exports,mi=yt(fi),Ei=class{constructor(){this.view={enableDataInfoBar:!0,expCacheMode:"TABEXPPANEL:"},this.grid={editShowMode:"row",editSaveMode:"cell-blur",overflowMode:"wrap"},this.appMenu={enableEcho:!0},this.codeList={timeout:60*60*1e3}}},gi=d("RegisterCenter",class{constructor(){this.providers=new Map}register(t,e){this.providers.set(t,e)}unRegister(t){this.providers.delete(t)}get(t,...e){const a=this.providers.get(t);if(a)return a(...e)}}),Q=class{static isHelperName(t){return this.helperNames.includes(t)}static handleJudgmentExecute(t,e,a){return a.fn?e?a.fn(t):a.inverse(t):e?a.hash.yes=!0:a.hash.no=!1}};Q.helperNames=["lookup","log","and","camelCase","concat","eq","gt","get","lowerCase","lt","lte","neq","not","or","pascalCase","pluralize","snakeCase","spinalCase","upperCase"];var _=class{constructor(t,e){t.registerHelper(e,this.onExecute)}},Ci=class extends _{constructor(t){super(t,"and")}onExecute(...t){const e=t[t.length-1];t.pop();const s=t.filter(i=>!!i).length===t.length;return Q.handleJudgmentExecute(this,s,e)}},Di=class extends _{constructor(t){super(t,"camelCase")}onExecute(t){return t?ga(t):""}},wi=class extends _{constructor(t){super(t,"concat")}onExecute(...t){return t.pop(),t.join("")}},vi=class extends _{constructor(t){super(t,"eq")}onExecute(t,e,a){const s=mt(t,e);return Q.handleJudgmentExecute(this,s,a)}},Ai=class extends _{constructor(t){super(t,"gt")}onExecute(t,e,a){const s=Ca(t,e);return Q.handleJudgmentExecute(this,s,a)}},Ii=class extends _{constructor(t){super(t,"gte")}onExecute(t,e,a){const s=Da(t,e);return Q.handleJudgmentExecute(this,s,a)}},yi=class extends _{constructor(t){super(t,"eqPropertyValue")}onExecute(t,e,a,s){let i=!1;return j(t)?i=!mt(wa(t,r=>mt(r[e],a)),-1):i=t.hasOwnProperty(e)&&(i=mt(t[e],a)),Q.handleJudgmentExecute(this,i,s)}},Fi=class extends _{constructor(t){super(t,"jsonParse")}onExecute(t){return JSON.parse(t)}},Pi=class extends _{constructor(t){super(t,"jsonStringify")}onExecute(t,e){return JSON.stringify(t,null,typeof e=="number"?e:void 0)}},bi=class extends _{constructor(t){super(t,"lowerCase")}onExecute(t){return t?t.toLowerCase():""}},Ni=class extends _{constructor(t){super(t,"lt")}onExecute(t,e,a){const s=va(t,e);return Q.handleJudgmentExecute(this,s,a)}},Si=class extends _{constructor(t){super(t,"lte")}onExecute(t,e,a){const s=Aa(t,e);return Q.handleJudgmentExecute(this,s,a)}},Ri=class extends _{constructor(t){super(t,"neq")}onExecute(t,e,a){const s=!mt(t,e);return Q.handleJudgmentExecute(this,s,a)}},Li=class extends _{constructor(t){super(t,"not")}onExecute(t,e){const a=Handlebars.Utils.isEmpty(t);return Q.handleJudgmentExecute(this,a,e)}},Ti=class extends _{constructor(t){super(t,"or")}onExecute(...t){var e;const a=t[t.length-1];t.pop();const s=t.find(i=>!!i);if(a.fn){const i=((e=a.data)==null?void 0:e.root)||{};return s?a.fn(i):a.inverse(i)}return s||""}},Bi=class extends _{constructor(t){super(t,"pascalCase")}onExecute(t){return t?Ia(t):""}},_i=class extends _{constructor(t){super(t,"snakeCase")}onExecute(t){return t?ya(t):""}},Oi=class extends _{constructor(t){super(t,"spinalCase")}onExecute(t){return t?Fa(t):""}},Mi=class extends _{constructor(t){super(t,"upperCase")}onExecute(t){return t?t.toUpperCase():""}};function xi(t){new Ci(t),new Di(t),new wi(t),new vi(t),new Ai(t),new Ii(t),new Fi(t),new Pi(t),new bi(t),new Ni(t),new Si(t),new Ri(t),new Li(t),new Ti(t),new Bi(t),new _i(t),new Oi(t),new Mi(t),new yi(t)}var Vi=d("HandlebarsUtil",class{constructor(){this.p=null}get isInit(){return!!this.hsb}async init(){if(this.isInit)return;if(this.p)return this.p;this.p=ra.import("handlebars");const t=await this.p;return this.hsb=t.default||t,this.p=null,xi(this.hsb),this.hsb}async render(t,e){return this.hsb||await this.init(),this.hsb.compile(t)(e)}syncRender(t,e){if(!this.hsb)throw new Error("handlebars not init");return this.hsb.compile(t)(e)}});function Fe(t){const e=[],a=/^%(.+)%$/;for(const s in t){let i=!0,r=t[s];x(t[s])&&a.test(t[s])&&(i=!1,r=t[s].substring(1,t[s].length-1)),e.push({key:s.toLowerCase(),rawValue:i,value:r})}return e}function y(t,...e){if(!t||pa(t))return{};const a=Array.isArray(t)?t:Fe(t);return Ma(a,...e)}function Oa(t,e){const a=t.find(s=>V(s)?!1:s[e]||Object.prototype.hasOwnProperty.call(s,e));return{find:!!a,value:a?.[e]}}function Ma(t,...e){const a=/\$\{[^}]*\}/g,s={};for(const i of t)if(i.rawValue)s[i.key.toLowerCase()]=i.value||null;else{const r=i.value.match(a);if(r!==null){let n=i.value;r.forEach(o=>{const{find:u,value:c}=Oa(e,o.slice(2,-1));u&&(n=n.replace(o,"".concat(c)))}),s[i.key.toLowerCase()]=n}else{const{find:n,value:o}=Oa(e,i.value);n&&(s[i.key.toLowerCase()]=o)}}return s}function Pe(t,e){const a={};if(!t)return a;const s=Array.isArray(t)?t:Fe(t),i=e[0];return s.forEach(r=>{const{rawValue:n,value:o}=r;!n&&o&&Object.prototype.hasOwnProperty.call(i,o)&&(a[o]=e.map(u=>u[o]).join(";"))}),a}function Wt(t,e){const{deName:a,navFilter:s,pickupDEFName:i,navContexts:r,navParams:n}=t,{context:o,params:u,data:c,derValue:l}=e,h={},p={},E=l||c.srfkey;E&&(a&&(h[a]=E),s&&(p[s]=E),i&&(p["n_".concat(i.toLowerCase(),"_eq")]=E));const C=y(r,c,u,o),F=y(n,c,u,o);return Object.assign(h,C),Object.assign(p,F),{resultContext:h,resultParams:p}}function lt(t,e){if(t&&e){const a=t.find(s=>s.id?s.id.toLowerCase()===e.toLowerCase():!1);if(a)return a}return null}function ki(t,e){var a,s;let i=t.controls||[];return(s=(a=t.viewLayoutPanel)==null?void 0:a.controls)!=null&&s.length&&(i=i.concat(t.viewLayoutPanel.controls)),i.find(r=>r.name===e||r.codeName===e||r.id===e)}function Wi(t,e){var a,s;let i=t.appViewRefs||[];return(s=(a=t.viewLayoutPanel)==null?void 0:a.appViewRefs)!=null&&s.length&&(i=i.concat(t.viewLayoutPanel.appViewRefs)),i.find(r=>r.name===e||r.id===e)}function be(t){const e={},a={},s={};for(const i in t)if(Object.prototype.hasOwnProperty.call(t,i)){const r=t[i];if(i.indexOf(".")!==-1){const n=i.split(".");switch(n[0]){case"SRFNAVPARAM":Object.assign(a,{[n[1]]:r});break;case"SRFNAVCTX":Object.assign(e,{[n[1]]:r});break;default:Object.assign(s,{key:r});break}}}return{navigateContexts:e,navigateParams:a,other:s}}function Ui(t,e){const a=ibiz.hub.getApp(e);if(!a)throw new m(a,"\u672A\u627E\u5230\u5E94\u7528");const{model:s}=a;if(!s.appPFPluginRefs)throw new m(s,"\u5E94\u7528\u672A\u914D\u7F6E\u63D2\u4EF6");const i=s.appPFPluginRefs.find(r=>r.pluginCode.toLowerCase()===t.toLowerCase());if(!i)throw new Error("\u672A\u627E\u5230\u63D2\u4EF6".concat(t));return i}function Ut(t){const{width:e,height:a,widthMode:s,heightMode:i}=t,r={width:"",height:""};return s==="FULL"?r.width="100%":e&&e>0&&(e>0&&e<=1?r.width="".concat(e*100,"%"):s==="PERCENTAGE"?r.width="".concat(e,"%"):r.width="".concat(e,"px")),i==="FULL"?r.height="100%":a&&a>0&&(a>0&&a<=1?r.height="".concat(a*100,"%"):i==="PERCENTAGE"?r.height="".concat(a,"%"):r.height="".concat(a,"px")),r}function zi(t){const{valignSelf:e,halignSelf:a}=t;let s;if(e||a){switch(s={display:"flex"},e){case"TOP":Object.assign(s,{"align-items":"flex-start"});break;case"MIDDLE":Object.assign(s,{"align-items":"center"});break;case"BOTTOM":Object.assign(s,{"align-items":"flex-end"});break}switch(a){case"LEFT":Object.assign(s,{"justify-content":"flex-start"});break;case"CENTER":Object.assign(s,{"justify-content":"center"});break;case"RIGHT":Object.assign(s,{"justify-content":"flex-end"});break;case"JUSTIFY":Object.assign(s,{"justify-content":"space-between"});break}}return s}function Gi(t){const{layout:e,colXS:a,colXSOffset:s,colSM:i,colSMOffset:r,colMD:n,colMDOffset:o,colLG:u,colLGOffset:c}=t,l=(h,p)=>({span:(!h||h===-1?e==="TABLE_24COL"?24:12:h)*(e==="TABLE_24COL"?1:2),offset:!p||p===-1?void 0:p});return{xs:l(a,s),sm:l(i,r),md:l(n,o),lg:l(u,c)}}function Dt(t,e){const a=[],s=B.execScriptFn({data:e},t,{singleRowReturn:!0,isAsync:!1});return fa(s)?a.push(s):j(s)?a.push(...s):ma(s)&&Object.keys(s).forEach(i=>{s[i]&&a.push(i)}),a}function xa(t,e){const{mainStateAppDEFieldIds:a,demainStates:s}=t;if(a&&s){const i=[];return a.forEach(r=>{i.push(e[r])}),s.find(r=>{const{stateValue:n,state2Value:o,state3Value:u}=r;let c=!0;const l=[n,o,u];for(let h=0;h<i.length;h++)if("".concat(i[h])!=="".concat(l[h])){c=!1;break}return c})}}function Va(t,e){const a=ibiz.hub.getApp().model,{demainStateOPPrivs:s,opprivAllowMode:i}=t,r=s?.map(o=>o.name)||[];let n=[];return i?n=r:n=[...a.deopprivs,...e.deopprivs].filter(u=>!r.includes(u.name)).map(u=>u.name),n}function O(t){return t.split(".").pop()}function ka(t,e){const a=O(e);return x(t[a])}async function ji(t,e,a){var s;return(s=(await ibiz.hub.getAppDataEntity(e,a)).appDEACModes)==null?void 0:s.find(n=>n.id===t)}function Ne(t,e){var a;return(a=e.appDELogics)==null?void 0:a.find(s=>s.id===t)}function Wa(t,e){var a,s;const i=[];return(a=t.appDEFields)==null||a.forEach(r=>{e==="compute"&&r.computeAppDEFLogicId?i.push(r.computeAppDEFLogicId):e==="change"&&r.onChangeAppDEFLogicId?i.push(r.onChangeAppDEFLogicId):e==="default"&&r.defaultValueAppDEFLogicId&&i.push(r.defaultValueAppDEFLogicId)}),((s=t.appDELogics)==null?void 0:s.filter(r=>i.includes(r.id)))||[]}function wt(t,e){var a;return(a=t.appDEFields)==null?void 0:a.find(s=>s.id===e)}async function zt(t){const[,,e]=t.split("@");return ibiz.hub.getApp(e).getUIAction(t)}function Se(t){return t.detreeNodes.find(e=>e.rootNode)}function Re(t,e){return t.detreeNodes.find(a=>a.id===e)}function Ki(t,e){return t===3||(e?t===1:t===2)}function Le(t,e){const a=e.parentId||Se(t).id;return t.detreeNodeRSs.filter(s=>s.parentDETreeNodeId===a&&Ki(s.searchMode,e.hasQuery))}function Ua(t,e){var a;return(a=t.degridEditItems)==null?void 0:a.find(s=>s.codeName===e)}function Gt(t){let e;switch(t.detailType){case"TABPANEL":e=t.deformTabPages;break;case"FORMPAGE":case"TABPAGE":case"GROUPPANEL":e=t.deformDetails;break}return e||[]}function za(t){const{viewLayoutPanel:e}=t,a=t.controls||[];return e&&a.push(...e.controls||[]),a}function Ga(t){const{viewLayoutPanel:e}=t,a=t.appViewLogics||[];return e&&a.push(...e.appViewLogics||[]),a}function ja(t){const{viewLayoutPanel:e}=t,a=t.appViewEngines||[];return e&&a.push(...e.appViewEngines||[]),a.filter(s=>{switch(s.engineCat){case"CTRL":return ibiz.log.warn("\u672A\u652F\u6301\u7684\u5F15\u64CE\u5206\u7C7B\uFF1A".concat(s.engineType)),!1;default:return!0}})}function Ka(t){return t.itemType==="CONTAINER"&&["CONTAINER_MULTIDATA","CONTAINER_SINGLEDATA"].includes(t.predefinedType)}var Xi=["panelItems","panelTabPages","rootPanelItems"];function Xa(t){let e=[];for(const s of Xi)if(t[s]){e=t[s];break}const a=[];return e.length&&(a.push(...e.filter(s=>s.itemType==="FIELD")),e.forEach(s=>{Ka(s)||a.push(...Xa(s))})),a}function Ha(t){return Xa(t)}async function Ya(t,e,a={},s={}){return Hi(t,e,a,s)}async function qa(t,e,a={}){const s=e.lastIndexOf("?"),i=decodeURIComponent(e.substring(s+1,e.length)),r=Sa.parse(i,{delimiter:";"}),n=r.srfdename||"";if(!n)throw new f("\u91CD\u5B9A\u5411\u53C2\u6570\u7F3A\u5C11\u5B9E\u4F53\u540D\u79F0");const u=ibiz.hub.getApp(t.srfappid).deName2DeCodeName.get(n.toUpperCase());if(!u)throw new f("\u672A\u627E\u5230\u6307\u5B9A\u5B9E\u4F53\u7684codeName: ".concat(n));r[u.toLowerCase()]=r[n.toLowerCase()];const c="".concat(u).concat(ibiz.env.isMob?"Mob":"","RedirectView"),l=await ibiz.hub.getAppView(c);if(delete r.srfdename,r.srfwf!=="undo"){const p=r.processDefinitionKey.split("-")[3],E=p.substring(0,p.lastIndexOf("v")),C=p.substring(p.lastIndexOf("v"));r.wf=E,r.wfVersion=C}r.srfprocessinstanceid&&(t.srfprocessinstanceid=r.srfprocessinstanceid,delete r.srfprocessinstanceid),await ibiz.commands.execute(Z.TAG,l.id,t,r,a)}async function Hi(t,e,a={},s={}){var i;const r=t.appViewNavContexts||[],n=y(r,a,e);e=Object.assign(e.clone(),n);const o=t.appViewNavParams||[],u=y(o,a,e);Object.assign(a,u);const c=t.appDataEntityId,l=O(c);let h=((i=s.data)==null?void 0:i[0])||{};e[l]=h[l]||e[l]||a[l];const p=t.getDataAppDEActionId,C=await ibiz.hub.getApp(t.appId).deService.getService(c);ibiz.loading.showRedirect();try{const q=await C.exec(p||"get",e,a);if(q.ok){h=q.data;let N=h.linkurl;if(N)return e.srfprocessinstanceid&&(N+=";srfprocessinstanceid=".concat(e.srfprocessinstanceid)),ibiz.env.dev&&N.indexOf("appredirectview?")!==-1&&(N=N.slice(N.indexOf("appredirectview?"))),N.startsWith("http://")||N.startsWith("https://")?new Promise(et=>{const Js=window.open(N,"_blank");Js&&(Js.callback=()=>{et({ok:!0,data:[]})})}):N.startsWith("appredirectview?")?(await qa(e,N,s),{ok:!0,data:[]}):{ok:!1,data:[]}}}finally{ibiz.loading.hideRedirect()}const F=await ibiz.hub.getAppDataEntity(c,t.appId),v=await Yi(F,t,a,h),P=v.split(":"),b=P.length===2?v:P.slice(0,2).join(":"),I="".concat(F.name.toUpperCase(),":").concat(v),R=t.redirectAppViewRefs,z=R?.find(q=>{const N=q.name||q.id;return N===I||N===v||N===b});if(z){const q=z.refAppViewId;if(q){const N=await ibiz.commands.execute(Z.TAG,q,e,a,{...s,data:[h]});if(N)return N}else throw new m(z,"\u672A\u914D\u7F6E\u5B9E\u9645\u5F15\u7528\u89C6\u56FE")}else throw ibiz.log.error("\u91CD\u5B9A\u5411\u89C6\u56FE\u5F15\u7528\u6709\uFF1A",R?.map(({refAppViewId:q,name:N,realTitle:et})=>({viewId:q,tag:N,title:et}))),new m(t,"\u672A\u627E\u5230\u91CD\u5B9A\u5411\u6807\u8BC6[".concat(v,"]\u6216[").concat(I,"]\u6216\u5DE5\u4F5C\u6D41[").concat(b,"]\u5BF9\u5E94\u89C6\u56FE"));return{ok:!0,data:[]}}async function Yi(t,e,a,s){let i="";const r=e.typeAppDEFieldId;if(r){const{codeName:c}=wt(t,r),l=s[c.toLowerCase()];if(x(l))return"".concat(l);ibiz.log.warn("\u91CD\u5B9A\u5411\u89C6\u56FE[".concat(e.name,"]\u81EA\u5B9A\u4E49\u7C7B\u522B\u5C5E\u6027[").concat(r,"]\u503C\u4E3A\u7A7A"),s)}const n="".concat(ibiz.env.isMob?"MOB":"","EDITVIEW"),o=a.srfwf;if(x(o))return x(a.wf)?"".concat(n,":").concat(o.toUpperCase(),":").concat(a.wf.toUpperCase()):"".concat(n,":").concat(o.toUpperCase());let u="";if(t.indexTypeAppDEFieldId){const{codeName:c}=wt(t,t.indexTypeAppDEFieldId);u=s[c.toLowerCase()]}if(V(u)&&t.formTypeAppDEFieldId){const{codeName:c}=wt(t,t.formTypeAppDEFieldId);u=s[c.toLowerCase()]}return x(u)?i="".concat(n,":").concat(u.toString().toUpperCase()):i="".concat(n),i}function $(t,e,a){if(Object.is(e,"IN"))return Pt(t,a);if(Object.is(e,"NOTIN"))return!Pt(t,a);switch(e){case"EQ":return"".concat(t)==="".concat(a);case"NOTEQ":return"".concat(t)!=="".concat(a);case"LT":return Ft(t,a)<0;case"LTANDEQ":return Ft(t,a)<=0;case"GT":return Ft(t,a)>0;case"GTANDEQ":return Ft(t,a)>=0;case"ISNULL":return V(t);case"ISNOTNULL":return x(t);case"TESTNULL":return w(t);case"IN":return Pt(t,a);case"NOTIN":return!Pt(t,a);case"LIKE":return jt(t,a);case"LEFTLIKE":return jt(t,a,"start");case"RIGHTLIKE":return jt(t,a,"end");default:throw new f("\u503C\u64CD\u4F5C\uFF1A".concat(e,"\uFF0C\u6682\u672A\u652F\u6301"))}}function Ft(t,e){const a=Number(t),s=Number(e);if(!Number.isNaN(a)&&!Number.isNaN(s))return Te(a,s);const i=new Date(t).getTime(),r=new Date(e).getTime();if(!Number.isNaN(i)&&!Number.isNaN(r))return Te(i,r);throw new f("".concat(t," \u548C ").concat(e," \u65E0\u6CD5\u6BD4\u8F83\u5927\u5C0F"))}function Te(t,e){return Number.isNaN(t)&&(t=0),Number.isNaN(e)&&(e=0),t>e?1:t<e?-1:0}function Pt(t,e){if(!e||typeof e!="string")throw new f("\u8303\u56F4\u6BD4\u8F83\u7684\u6761\u4EF6\u503C\u4E0D\u5B58\u6216\u8005\u4E0D\u662F\u5B57\u7B26\u4E32");return t?e.split(",").includes("".concat(t)):!1}function jt(t,e,a){if(!t||!e)return!1;const s="".concat(t).toUpperCase(),i="".concat(e).toUpperCase(),r=s.indexOf(i);switch(a){case"start":return r===0;case"end":return r+i.length===s.length;default:return r!==-1}}var qi={singleRowReturn:!1,isAsync:!0},Qi=d("ScriptFunction",class{constructor(t,e,a=qi){this.argKeys=[],this.options=a;const s=this.formatCode(e,a);this.calcArgKeys(t,a);const i=new Function(...this.argKeys,s);this.scriptFn=function(...n){try{return i.apply({},n)}catch(o){throw console.log("\u62A5\u9519\u811A\u672C",s),o}}}formatCode(t,e){let a=t;return e.singleRowReturn&&(a="return (".concat(a,")")),e.isAsync&&(a="return (async function() { ".concat(a,"} )();")),a}calcArgKeys(t,e){const a=e.presetParams?Object.keys(e.presetParams):[];a.push(...t);const s=["document","el","selector","env","appSession","topViewSession","viewSession","context","viewParam","activeData","data","app","topView","parentView","view","parent","util"];a.push(...s),this.argKeys=Array.from(new Set(a))}convertArgs(t){const{presetParams:e}=this.options,a=e?we(e,t):t;a.document=document,a.selector=i=>document.getElementsByClassName(i);const s=[];return this.argKeys.forEach(i=>{a[i]===void 0&&this.fillDefaultParams(i,a),s.push(a[i])}),s}fillDefaultParams(t,e){const a=e.view;switch(t){case"util":e.util={message:ibiz.message,notification:ibiz.notification,modal:ibiz.modal,confirm:ibiz.confirm,openView:ibiz.openView};break;case"viewParam":e.viewParam=e.params;break;case"env":e.env=ibiz.env;break;case"app":e.app=ibiz.hub.controller;break;case"parent":e.parent=a?.parentView;break;case"topView":e.topView=a?.getTopView();break;case"parentView":e.parentView=a?.parentView;break;case"topViewSession":e.topViewSession=a?.getTopView().session;break;case"viewSession":e.viewSession=a?.session;break;case"appSession":e.appSession=ibiz.hub.controller.session;break}}exec(t){const e=this.convertArgs(t);return this.scriptFn(...e)}}),B=d("ScriptFactory",class{static createScriptFn(t,e,a){return new Qi(t,e,a)}static execScriptFn(t,e,a){return this.createScriptFn(Object.keys(t),e,a).exec(t)}static execSingleLine(t,e={}){return this.execScriptFn(e,t,{singleRowReturn:!0,isAsync:!1})}});function $i(t){return t.condType==="GROUP"}function Ji(t){return t.condType==="SIMPLE"}function Zi(t){return t.condType==="VALUERANGE2"}function tr(t){return t.condType==="REGEX"}function er(t){return t.condType==="STRINGLENGTH"}function ar(t){return t.condType==="SYSVALUERULE"}function Be(t,e,a){const s={isPast:!0,infoMessage:a.ruleInfo};if($i(a)){const i=a.conds;i&&i.length>0&&(s.isPast=sr(i,r=>{const{isPast:n,infoMessage:o}=Be(t,e,r);return s.infoMessage=o,n},a.condOp,!!a.notMode),!s.isPast&&(a.condOp==="AND"&&a.notMode||a.condOp==="OR"&&!a.notMode)&&(s.infoMessage=a.ruleInfo))}else{t=a?.defname.toLowerCase()||t;try{if(Ji(a))s.isPast=!ir(e[t],a.condOp,a.paramValue,a.ruleInfo,a.paramType,e,a.keyCond);else if(Zi(a))s.isPast=!nr(e[t],a.minValue,a.includeMinValue,a.maxValue,a.includeMaxValue,a.ruleInfo,a.keyCond);else if(tr(a))s.isPast=!_e(e[t],a.regExCode,a.ruleInfo,a.keyCond);else if(er(a))s.isPast=!rr(e[t],a.minValue,a.includeMinValue,a.maxValue,a.includeMaxValue,a.ruleInfo,a.keyCond);else if(ar(a)&&a?.sysValueRule){const{ruleType:i,regExCode:r,scriptCode:n,ruleInfo:o}=a.sysValueRule;if(s.infoMessage=a.ruleInfo||o,i==="REG")s.isPast=!_e(e[t],r,s.infoMessage,a.keyCond);else if(i==="SCRIPT"){const{isPast:u,infoMessage:c}=or(e[t],e,n,s.infoMessage,a.keyCond);s.isPast=u,s.infoMessage=c||s.infoMessage}}}catch{s.isPast=!1}s.isPast=a.notMode?!s.isPast:s.isPast}return s}function sr(t,e,a="AND",s=!1){if(!(t?.length>0))return!1;let i=a==="AND";for(let r=0,n=t.length;r<n;r++){const o=e(t[r],r);if(a==="AND"){if(!o){i=!1;break}}else if(a==="OR"&&o){i=!0;break}}return s?!i:i}function ir(t,e,a,s,i,r,n){Object.is(i,"CURTIME")&&(a="".concat(new Date)),Object.is(i,"ENTITYFIELD")&&(a=a?a.toLowerCase():"",a=r[a]?r[a]:a),(w(s)||T(s))&&(s="\u5185\u5BB9\u5FC5\u987B\u7B26\u5408\u503C\u89C4\u5219");const o=$(t,e,a);if(!o&&n)throw new f(s);return!o}function rr(t,e,a,s,i,r,n){if(V(r)&&(r="\u5185\u5BB9\u957F\u5EA6\u5FC5\u987B\u7B26\u5408\u8303\u56F4\u89C4\u5219"),V(t)){if(n)throw new f("\u503C\u4E3A\u7A7A");return r="\u503C\u4E3A\u7A7A",!0}const u=t.length;if(e!==null){if(a){if(u<e){if(n)throw new f(r);return!0}}else if(u<=e){if(n)throw new f(r);return!0}}if(s!==null){if(i){if(u>s){if(n)throw new f(r);return!0}}else if(u>=s){if(n)throw new f(r);return!0}}return r="",!1}function _e(t,e,a,s){if(V(a)&&(a="\u503C\u5FC5\u987B\u7B26\u5408\u6B63\u5219\u89C4\u5219"),V(t)){if(s)throw new f("\u503C\u4E3A\u7A7A");return a="\u503C\u4E3A\u7A7A",!0}if(!new RegExp(e).test(t)){if(s)throw new f(a);return!0}return a="",!1}function nr(t,e,a,s,i,r,n){if(V(r)&&(r="\u503C\u5FC5\u987B\u7B26\u5408\u503C\u8303\u56F4\u89C4\u5219"),V(t)){if(n)throw new f("\u503C\u4E3A\u7A7A");return r="\u503C\u4E3A\u7A7A",!0}if(_e(t,/^-?\d*\.?\d+$/,"",n))return!0;const c=Number.parseFloat(t);if(e!==null){if(a){if(c<e){if(n)throw new f(r);return!0}}else if(c<=e){if(n)throw new f(r);return!0}}if(s!=null){if(i){if(c>s){if(n)throw new f(r);return!0}}else if(c>=s){if(n)throw new f(r);return!0}}return r="",!1}function or(t,e,a,s,i){V(s)&&(s="\u503C\u5FC5\u987B\u7B26\u5408\u811A\u672C\u89C4\u5219");const r=e;let n="",o=!0;const u=c=>{o=!1,c?.length>0?c.forEach(l=>{l?.message&&(n+=l.message)}):c?.message&&(n=c.message)};try{const c=B.execScriptFn({value:t,data:r},a,{isAsync:!1});typeof c=="boolean"&&(o=c)}catch(c){ibiz.log.error(c),u(c)}if(s="",!o&&i)throw new f(s);return{isPast:o,infoMessage:n||s}}function ur(t){return t.logicType==="GROUP"}function cr(t){return t.logicType==="SINGLE"}function Kt(t,e){if(ur(e)){const a=e.defdlogics;if(!a||a.length===0)throw new m(e,"\u53D1\u73B0\u7A7A\u903B\u8F91\u7EC4\uFF0C\u903B\u8F91\u65E0\u6CD5\u6B63\u5E38\u6267\u884C\uFF01");let s=!0;return e.groupOP==="AND"?s=a.find(r=>!Kt(t,r))===void 0:e.groupOP==="OR"&&(s=e.defdlogics.find(r=>Kt(t,r))!==void 0),e.notMode?!s:s}if(cr(e))return $(t[e.defdname.toLowerCase()],e.condOP,e.value);throw new D(e,"\u672A\u652F\u6301\u7684\u903B\u8F91\u7C7B\u578B".concat(e.logicType))}function lr(t){return t.logicType==="GROUP"}function dr(t){return t.logicType==="SINGLE"}function Xt(t,e){if(lr(e)){const a=e.panelItemLogics;if(!a||a.length===0)throw new m(e,"\u53D1\u73B0\u7A7A\u903B\u8F91\u7EC4\uFF0C\u903B\u8F91\u65E0\u6CD5\u6B63\u5E38\u6267\u884C\uFF01");let s=!0;return e.groupOP==="AND"?s=a.find(r=>!Xt(t,r))===void 0:e.groupOP==="OR"&&(s=e.panelItemLogics.find(r=>Xt(t,r))!==void 0),e.notMode?!s:s}if(dr(e))return $(t[e.dstModelField.toLowerCase()],e.condOp,e.value);throw new D(e,"\u672A\u652F\u6301\u7684\u903B\u8F91\u7C7B\u578B".concat(e.logicType))}var hr=d("LayoutPanelUtil",class{constructor(){this.cache=new Map}register(t,e){this.cache.set(t,e)}get(t){return this.cache.get(t)}fill(t){const{viewLayoutPanel:e}=t;if(!e||e.useDefaultLayout===!0){const a=this.calcLayoutTag(t);if(this.cache.has(a)){const s=A(this.cache.get(a));t.viewLayoutPanel=s,t.appCounterRefs&&(s.appCounterRefs=t.appCounterRefs,delete t.appCounterRefs),t.appViewEngines&&(s.appViewEngines=t.appViewEngines,delete t.appViewEngines),t.appViewLogics&&(s.appViewLogics=t.appViewLogics,delete t.appViewLogics),t.appViewRefs&&(s.appViewRefs=t.appViewRefs,delete t.appViewRefs),t.controls&&(s.controls=t.controls,delete t.controls)}}return t}calcLayoutTag(t){const{viewType:e,viewStyle:a}=t;switch(e){case"APPINDEXVIEW":return this.calcIndexViewLayoutTag(t);default:return"".concat(e,"_").concat(a)}}calcIndexViewLayoutTag(t){const{viewType:e,viewStyle:a,blankMode:s,mainMenuAlign:i}=t;let r="";return s?r="BLANK_MODE":i&&(r=i.toUpperCase()),r!==""?"".concat(e,"_").concat(a,"_").concat(r):"".concat(e,"_").concat(a)}});function Qa(t){const e={};return t.param09&&(e.srfprocessinstanceid=t.param09),e}function pr(t,e){var a;const{type:s,sequenceflowview:i,sequenceflowmobview:r}=e,n=((a=t.viewLayoutPanel)==null?void 0:a.appViewRefs)||t.appViewRefs,o=s?"WFUTILACTION@".concat(s.toUpperCase()):"WFACTION@".concat(ibiz.env.isMob?r:i),u=n?.find(c=>c.name.indexOf(o)!==-1);return u?.refAppViewId}var fr=d("ControlType",(t=>(t.APP_MENU="APPMENU",t.GRID="GRID",t.FORM="FORM",t.SEARCHFORM="SEARCHFORM",t.TOOLBAR="TOOLBAR",t.DRBAR="DRBAR",t.VIEWPANEL="VIEWPANEL",t.PICKUP_VIEW_PANEL="PICKUPVIEWPANEL",t.DATAVIEW="DATAVIEW",t.TREEGRID="TREEGRID",t.WF_EXPBAR="WFEXPBAR",t.TREEVIEW="TREEVIEW",t.TREE_EXP_BAR="TREEEXPBAR",t.TAB_VIEWPANEL="TABVIEWPANEL",t.DRTAB="DRTAB",t.CHART="CHART",t.REPORT_PANEL="REPORTPANEL",t.LIST="LIST",t.MOB_MDCTRL="MOBMDCTRL",t.MULTI_EDIT_VIEWPANEL="MULTIEDITVIEWPANEL",t.WIZARD_PANEL="WIZARDPANEL",t.UPDATE_PANEL="UPDATEPANEL",t.SEARCHBAR="SEARCHBAR",t.DASHBOARD="DASHBOARD",t.CALENDAR="CALENDAR",t.PANEL="PANEL",t.VIEW_LAYOUT_PANEL="VIEWLAYOUTPANEL",t.MAP="MAP",t.GANTT="GANTT",t.TREE_GRIDEX="TREEGRIDEX",t.KANBAN="KANBAN",t.CALENDAR_EXPBAR="CALENDAREXPBAR",t.CHART_EXPBAR="CHARTEXPBAR",t.DATA_VIEW_EXPBAR="DATAVIEWEXPBAR",t.GANTT_EXPBAR="GANTTEXPBAR",t.GRID_EXPBAR="GRIDEXPBAR",t.LIST_EXPBAR="LISTEXPBAR",t.MAP_EXPBAR="MAPEXPBAR",t.STATE_WIZARD_PANEL="STATEWIZARDPANEL",t.TAB_EXP_PANEL="TABEXPPANEL",t.CUSTOM="CUSTOM",t.CAPTIONBAR="CAPTIONBAR",t))(fr||{})),mr=d("ViewType",(t=>(t.APP_INDEX_VIEW="APPINDEXVIEW",t.DE_GRID_VIEW="DEGRIDVIEW",t.DE_EDIT_VIEW="DEEDITVIEW",t.APP_DATA_UPLOAD_VIEW="APPDATAUPLOADVIEW",t.APP_ERROR_VIEW="APPERRORVIEW",t.APP_FILE_UPLOAD_VIEW="APPFILEUPLOADVIEW",t.APP_FUN_PICKUP_VIEW="APPFUNCPICKUPVIEW",t.APP_LOGIN_VIEW="APPLOGINVIEW",t.APP_LOGOUT_VIEW="APPLOGOUTVIEW",t.APP_PANEL_VIEW="APPPANELVIEW",t.APP_PIC_UPLOAD_VIEW="APPPICUPLOADVIEW",t.APP_PORTAL_VIEW="APPPORTALVIEW",t.APP_REDIRECT_VIEW="APPREDIRECTVIEW",t.APP_START_VIEW="APPSTARTVIEW",t.APP_WELCOME_VIEW="APPWELCOMEVIEW",t.APP_WF_ADD_STEP_AFTER_VIEW="APPWFADDSTEPAFTERVIEW",t.APP_WF_ADD_STEP_BEFORE_VIEW="APPWFADDSTEPBEFOREVIEW",t.APP_WF_REDIRECT_VIEW="APPWFREDIRECTVIEW",t.APP_WF_SENDBAC_VIEW="APPWFSENDBACKVIEW",t.APP_WF_STEP_ACTOR_VIEW="APPWFSTEPACTORVIEW",t.APP_WF_STEP_DATA_VIEW="APPWFSTEPDATAVIEW",t.APP_WF_STEP_TRACE_VIEW="APPWFSTEPTRACEVIEW",t.APP_WF_SUPPLY_INFO_VIEW="APPWFSUPPLYINFOVIEW",t.APP_WF_TAKE_ADVICE_VIEW="APPWFTAKEADVICEVIEW",t.DE_CALENDAR_EXP_VIEW="DECALENDAREXPVIEW",t.DE_CALENDAR_VIEW="DECALENDARVIEW",t.DE_CHART_EXP_VIEW="DECHARTEXPVIEW",t.DE_CHART_VIEW="DECHARTVIEW",t.DE_CHART_VIEW9="DECHARTVIEW9",t.DE_CUSTOM_VIEW="DECUSTOMVIEW",t.DE_DATA_VIEW="DEDATAVIEW",t.DE_DATA_VIEW9="DEDATAVIEW9",t.DE_DATAVIEW_EXP_VIEW="DEDATAVIEWEXPVIEW",t.DE_EDIT_VIEW2="DEEDITVIEW2",t.DE_EDIT_VIEW3="DEEDITVIEW3",t.DE_EDIT_VIEW4="DEEDITVIEW4",t.DE_EDIT_VIEW9="DEEDITVIEW9",t.DE_FORM_PICKUP_DATA_VIEW="DEFORMPICKUPDATAVIEW",t.DE_GANTT_EXP_VIEW="DEGANTTEXPVIEW",t.DE_GANTT_VIEW="DEGANTTVIEW",t.DE_GANTT_VIEW9="DEGANTTVIEW9",t.DE_GRID_EXP_VIEW="DEGRIDEXPVIEW",t.DE_GRID_VIEW2="DEGRIDVIEW2",t.DE_GRID_VIEW4="DEGRIDVIEW4",t.DE_GRID_VIEW8="DEGRIDVIEW8",t.DE_GRID_VIEW9="DEGRIDVIEW9",t.DE_HTML_VIEW="DEHTMLVIEW",t.DE_INDEX_PICKUP_DATA_VIEW="DEINDEXPICKUPDATAVIEW",t.DE_INDEX_VIEW="DEINDEXVIEW",t.DE_KANBAN_VIEW="DEKANBANVIEW",t.DE_KANBAN_VIEW9="DEKANBANVIEW9",t.DE_LIST_EXP_VIEW="DELISTEXPVIEW",t.DE_LIST_VIEW="DELISTVIEW",t.DE_LIST_VIEW9="DELISTVIEW9",t.DE_MAP_EXP_VIEW="DEMAPEXPVIEW",t.DE_MAP_VIEW="DEMAPVIEW",t.DE_MAP_VIEW9="DEMAPVIEW9",t.DE_MD_CUSTOM_VIEW="DEMDCUSTOMVIEW",t.DE_MEDITVIEW9="DEMEDITVIEW9",t.DE_MOB_CALENDAR_EXP_VIEW="DEMOBCALENDAREXPVIEW",t.DE_MOB_CALENDAR_VIEW="DEMOBCALENDARVIEW",t.DE_MOB_CALENDAR_VIEW9="DEMOBCALENDARVIEW9",t.DE_MOB_CHART_EXP_VIEW="DEMOBCHARTEXPVIEW",t.DE_MO_BCHART_VIEW="DEMOBCHARTVIEW",t.D_EMOB_CHART_VIEW9="DEMOBCHARTVIEW9",t.DE_MOB_CUSTOM_VIEW="DEMOBCUSTOMVIEW",t.DE_MOB_DATA_VIEW="DEMOBDATAVIEW",t.DE_MOB_DATA_VIEW_EXP_VIEW="DEMOBDATAVIEWEXPVIEW",t.DE_MOB_EDIT_VIEW="DEMOBEDITVIEW",t.DE_MOB_EDIT_VIEW3="DEMOBEDITVIEW3",t.DE_MOB_EDITVIEW9="DEMOBEDITVIEW9",t.DE_MOB_FORM_PICKUP_MDVIEW="DEMOBFORMPICKUPMDVIEW",t.DE_MOB_GANTT_EXP_VIEW="DEMOBGANTTEXPVIEW",t.DE_MOB_GANTT_VIEW="DEMOBGANTTVIEW",t.DE_MOB_GANTT_VIEW9="DEMOBGANTTVIEW9",t.DE_MOB_HTML_VIEW="DEMOBHTMLVIEW",t.DE_MOB_INDEX_PICKUP_MDVIEW="DEMOBINDEXPICKUPMDVIEW",t.DE_MOB_LIST_EXP_VIEW="DEMOBLISTEXPVIEW",t.DE_MOB_LIST_VIEW="DEMOBLISTVIEW",t.DE_MOB_MAP_VIEW="DEMOBMAPVIEW",t.DE_MOB_MAP_VIEW9="DEMOBMAPVIEW9",t.DE_MOB_MDVIEW="DEMOBMDVIEW",t.DE_MOB_MDVIEW9="DEMOBMDVIEW9",t.DE_MOB_MEDIT_VIEW9="DEMOBMEDITVIEW9",t.DE_MOB_MPICKUP_VIEW="DEMOBMPICKUPVIEW",t.DE_MOB_OPT_VIEW="DEMOBOPTVIEW",t.DE_MOB_PANEL_VIEW="DEMOBPANELVIEW",t.DE_MOB_PANEL_VIEW9="DEMOBPANELVIEW9",t.DE_MOB_PICKUP_LIST_VIEW="DEMOBPICKUPLISTVIEW",t.DE_MOB_PICKUP_MDVIEW="DEMOBPICKUPMDVIEW",t.DE_MOB_PICKUP_TREE_VIEW="DEMOBPICKUPTREEVIEW",t.DE_MOB_PICKUP_VIEW="DEMOBPICKUPVIEW",t.DE_MOB_PORTAL_VIEW="DEMOBPORTALVIEW",t.DE_MOB_PORTAL_VIEW9="DEMOBPORTALVIEW9",t.DE_MOB_REDIRECT_VIEW="DEMOBREDIRECTVIEW",t.DE_MOB_REPORT_VIEW="DEMOBREPORTVIEW",t.DE_MOB_TAB_EXP_VIEW="DEMOBTABEXPVIEW",t.DE_MOB_TAB_EXP_VIEW9="DEMOBTABEXPVIEW9",t.DE_MOB_TAB_SEARCH_VIEW="DEMOBTABSEARCHVIEW",t.DE_MOB_TAB_SEARCH_VIEW9="DEMOBTABSEARCHVIEW9",t.DE_MOB_TREE_EXP_VIEW="DEMOBTREEEXPVIEW",t.DEMOBTREEEXPVIEW9="DEMOBTREEEXPVIEW9",t.DE_MOB_TREE_VIEW="DEMOBTREEVIEW",t.DE_MOB_WFACTION_VIEW="DEMOBWFACTIONVIEW",t.DE_MOB_WF_DATA_REDIRECT_VIEW="DEMOBWFDATAREDIRECTVIEW",t.DE_MOB_WF_DYNAACTIO_NVIEW="DEMOBWFDYNAACTIONVIEW",t.DE_MOB_WFDYNA_EDIT_VIEW="DEMOBWFDYNAEDITVIEW",t.DE_MOB_WF_DYNA_EDIT_VIEW3="DEMOBWFDYNAEDITVIEW3",t.DE_MOB_WF_DYNA_EXP_MDVIEW="DEMOBWFDYNAEXPMDVIEW",t.DE_MO_BWF_DYNA_START_VIEW="DEMOBWFDYNASTARTVIEW",t.DE_MOB_WF_EDIT_VIEW="DEMOBWFEDITVIEW",t.DE_MOB_WF_EDIT_VIEW3="DEMOBWFEDITVIEW3",t.DE_MOB_WF_MDVIEW="DEMOBWFMDVIEW",t.DE_MOB_WF_PROXY_RESULT_VIEW="DEMOBWFPROXYRESULTVIEW",t.DE_MOB_WF_PROXY_START_VIEW="DEMOBWFPROXYSTARTVIEW",t.DE_MOB_WF_START_VIEW="DEMOBWFSTARTVIEW",t.DE_MOB_WIZARD_VIEW="DEMOBWIZARDVIEW",t.DE_MPICKUP_VIEW="DEMPICKUPVIEW",t.DE_MPICKUP_VIEW2="DEMPICKUPVIEW2",t.DE_OPT_VIEW="DEOPTVIEW",t.DE_PANEL_VIEW="DEPANELVIEW",t.DE_PANEL_VIEW9="DEPANELVIEW9",t.DE_PICKUP_DATA_VIEW="DEPICKUPDATAVIEW",t.DE_PICKUP_GRID_VIEW="DEPICKUPGRIDVIEW",t.DE_PICKUP_TREE_VIEW="DEPICKUPTREEVIEW",t.DE_PICKUP_VIEW="DEPICKUPVIEW",t.DE_PICKUP_VIEW2="DEPICKUPVIEW2",t.DE_PICK_UP_VIEW3="DEPICKUPVIEW3",t.DE_PORTAL_VIEW="DEPORTALVIEW",t.DE_PORTAL_VIEW9="DEPORTALVIEW9",t.DE_REDIRECT_VIEW="DEREDIRECTVIEW",t.DE_REPORT_VIEW="DEREPORTVIEW",t.DE_TAB_EXP_VIEW="DETABEXPVIEW",t.DE_TAB_EXP_VIEW9="DETABEXPVIEW9",t.DE_TAB_SEARCH_VIEW="DETABSEARCHVIEW",t.DE_TAB_SEARCH_VIEW9="DETABSEARCHVIEW9",t.DE_TREE_EXP_VIEW="DETREEEXPVIEW",t.DE_TREE_EXP_VIEW2="DETREEEXPVIEW2",t.DE_TREE_EXP_VIEW3="DETREEEXPVIEW3",t.DE_TREE_GRID_EXVIEW="DETREEGRIDEXVIEW",t.DE_TREE_GRID_EXVIEW9="DETREEGRIDEXVIEW9",t.DE_TREE_GRID_VIEW="DETREEGRIDVIEW",t.DE_TREE_GRID_VIEW9="DETREEGRIDVIEW9",t.DE_TREE_VIEW="DETREEVIEW",t.DE_TREE_VIEW9="DETREEVIEW9",t.DE_WF_ACTION_VIEW="DEWFACTIONVIEW",t.DE_WF_DATA_REDIRECT_VIEW="DEWFDATAREDIRECTVIEW",t.DE_WF_DYNA_ACTION_VIEW="DEWFDYNAACTIONVIEW",t.DE_WF_DYNA_EDIT_VIEW="DEWFDYNAEDITVIEW",t.DE_WF_DYNA_EDIT_VIEW3="DEWFDYNAEDITVIEW3",t.DE_WF_DYNA_EXP_GRID_VIEW="DEWFDYNAEXPGRIDVIEW",t.DE_WF_DYNA_START_VIEW="DEWFDYNASTARTVIEW",t.DE_WF_EDIT_PROXY_DATA_VIEW="DEWFEDITPROXYDATAVIEW",t.DE_WF_EDIT_VIEW="DEWFEDITVIEW",t.DE_WF_EDIT_VIEW2="DEWFEDITVIEW2",t.DE_WF_EDIT_VIEW3="DEWFEDITVIEW3",t.DE_WF_EDIT_VIEW9="DEWFEDITVIEW9",t.DE_WF_EXP_VIEW="DEWFEXPVIEW",t.DE_WF_GRID_VIEW="DEWFGRIDVIEW",t.DE_WF_PROXY_DATA_VIEW="DEWFPROXYDATAVIEW",t.DE_WF_PROXY_RESULT_VIEW="DEWFPROXYRESULTVIEW",t.DE_WF_PROXY_START_VIEW="DEWFPROXYSTARTVIEW",t.DE_WF_START_VIEW="DEWFSTARTVIEW",t.DE_WIZARD_VIEW="DEWIZARDVIEW",t))(mr||{})),Er=d("ViewMode",(t=>(t.ROUTE="ROUTE",t.MODAL="MODAL",t.DRAWER="DRAWER",t.EMBED="EMBED",t.POPOVER="POPOVER",t))(Er||{})),gr=d("SysUIActionTag",(t=>(t.NEW="New",t.EDIT="Edit",t.REFRESH="Refresh",t.EXIT="Exit",t.SAVE_AND_EXIT="SaveAndExit",t.SAVE_AND_NEW="SaveAndNew",t.SAVE="Save",t.SAVE_ROW="SaveRow",t.REMOVE="Remove",t.REMOVE_AND_EXIT="RemoveAndExit",t.NEW_ROW="NewRow",t.TOGGLE_FILTER="ToggleFilter",t.IMPORT="Import",t.EXPORT_EXCEL="ExportExcel",t.SAVE_AND_START="SaveAndStart",t.VIEW_WF_STEP="ViewWFStep",t.NO="No",t.YES="Yes",t.CANCEL="Cancel",t.OK="Ok",t.SEARCH="Search",t.RESET="Reset",t.FINISH="Finish",t.NEXT_STEP="NextStep",t.PREV_STEP="PrevStep",t.ADD_SELECTION="AddSelection",t.REMOVE_SELECTION="RemoveSelection",t.REMOVE_ALL="RemoveAll",t.ADD_ALL="AddAll",t.LOGOUT="Logout",t.LOGIN="Login",t.CANCEL_CHANGES="CancelChanges",t.COPY="Copy",t.VIEW="View",t.TOGGLE_ROW_EDIT="ToggleRowEdit",t.REFRESH_ALL="RefreshAll",t.REFRESH_PARENT="RefreshParent",t.LOAD_MORE="LoadMore",t))(gr||{})),Cr=d("ViewCallTag",(t=>(t.LOAD="Load",t.GET_DATA="GetData",t.GET_ALL_DATA="GetAllData",t.VALIDATE="Validate",t.TOGGLE_COLLAPSE="ToggleCollapse",t))(Cr||{})),Dr=d("ValueOP",(t=>(t.EQ="EQ",t.NOT_EQ="NOTEQ",t.GT="GT",t.GT_AND_EQ="GTANDEQ",t.LT="LT",t.LT_AND_EQ="LTANDEQ",t.IS_NULL="ISNULL",t.IS_NOT_NULL="ISNOTNULL",t.IN="IN",t.NOT_IN="NOTIN",t.LIKE="LIKE",t.LIFT_LIKE="LIFTLIKE",t.RIGHT_LIKE="RIGHT_LIKE",t.CHILD_OF="CHILDOF",t.USER_LIKE="USERLIKE",t.BIT_AND="BITAND",t.EXISTS="EXISTS",t.NOT_EXISTS="NOTEXISTS",t))(Dr||{})),Oe=d("StudioViewEvents",class{});Oe.onViewMounted="onMounted",Oe.onViewDestroyed="onDestroyed";var Ht=d("StudioPanelEvents",class{});Ht.onClick="onClick",Ht.onChange="onChange",Ht.onEnter="onEnter",Ht.onLeave="onLeave";var W=d("StudioControlEvents",class{});W.onBeforeLoad="onBeforeLoad",W.onLoadSuccess="onLoadSuccess",W.onLoadError="onLoadError",W.onBeforeLoadDraft="onBeforeLoadDraft",W.onLoadDraftSuccess="onLoadDraftSuccess",W.onLoadDraftError="onLoadDraftError",W.onBeforeSave="onBeforeSave",W.onSaveSuccess="onSaveSuccess",W.onSaveError="onSaveError",W.onBeforeRemove="onBeforeRemove",W.onRemoveSuccess="onRemoveSuccess",W.onRemoveError="onRemoveError",W.CLICK="onClick";var wr=d("Modal",class{constructor(t){this.mode="EMBED",this.viewUsage=4,this.ignoreDismissCheck=!1,this.hooks={shouldDismiss:new me,beforeDismiss:new me},this._dismiss=e=>{ibiz.log.error("\u5916\u90E8\u5173\u95ED\u80FD\u529B\u672A\u6CE8\u518C",e)},t.mode&&(this.mode=t.mode),t.routeDepth&&(this.routeDepth=t.routeDepth),t.viewUsage&&(this.viewUsage=t.viewUsage),t.dismiss&&(this._dismiss=t.dismiss)}injectDismiss(t){this._dismiss=t}async dismiss(t={ok:!1,data:[]}){const e={allowClose:!0};return this.ignoreDismissCheck!==!0&&await this.hooks.shouldDismiss.call(e),e.allowClose?(await this.hooks.beforeDismiss.call(t),this._dismiss(t),this.destroy(),!0):(ibiz.log.debug("shouldDismiss\u7ED3\u679C\u4E3Afalse,\u5173\u95ED\u4E2D\u65AD\u3002"),!1)}destroy(){this.hooks.shouldDismiss.clear(),this.hooks.beforeDismiss.clear()}});function Me(t,e){return t.filter(a=>{const{checkMode:s}=a,i=a.deformItemName||a.degridEditItemName;return s!==2&&i===e})}var vr=d("TextUtil",class{constructor(){this.inputElement=null}format(t,e){return t}copy(t){return this.inputElement||(this.inputElement=document.createElement("input"),this.inputElement.style.position="absolute",this.inputElement.style.left="-9999px",document.body.appendChild(this.inputElement)),this.inputElement.value=t,this.inputElement.select(),document.execCommand("copy")}}),Ar=d("RawValueUtil",class{isNumber(t){return/^-?\d+(\.\d+)?$/.test(t)}format(t){let e=t;return t!==void 0&&(t==="true"||t==="false"?e=t==="true":this.isNumber(t)&&(e=parseFloat(t))),e}});async function nt(t,e=!0){const a=await Promise.allSettled(t),s=[],i=[];if(a.forEach(r=>{r.status==="fulfilled"?s.push(r.value):i.push(r.reason)}),i.length>0){const r=i.length===1?i[0]:i;if(e)throw r;ibiz.util.error.handle(r)}return s}var Ir=class{constructor(){this.psModelGroupCondBase=null}parse(t){if(t instanceof Array){const e=this.createPSModelGroupCond();e.parse(t),this.psModelGroupCondBase=e}}testSingleCond(t,e,a){try{if(t==="ISNULL")return e==null;if(t==="ISNOTNULL")return e!=null;if(t==="EQ"||t==="ABSEQ"||t==="GT"||t==="GTANDEQ"||t==="LT"||t==="LTANDEQ"||t==="NOTEQ"){let s=-1;if(e==a?s=0:e>a&&(s=1),t==="EQ"||t==="ABSEQ")return s===0;if(t==="GT")return s>0;if(t==="GTANDEQ")return s>=0;if(t==="LT")return s<0;if(t==="LTANDEQ")return s<=0;if(t==="NOTEQ")return s!==0}if(t==="LIKE")return e!=null&&a!=null?e.toString().toUpperCase().indexOf(a.toString().toUpperCase())!==-1:!1;if(t==="LEFTLIKE")return e!=null&&a!=null?e.toString().toUpperCase().indexOf(a.toString().toUpperCase())===0:!1}catch(s){ibiz.log.error(s)}return!1}getPSModelGroupCondBase(){return this.psModelGroupCondBase}},$a=class{constructor(){this.strCondOp=null}getCondOp(){return this.strCondOp}setCondOp(t){this.strCondOp=t}},xe=class extends $a{parse(t){const e=t.length;let a=!0,s=!1,i=!1;for(let r=0;r<e;r++){if(a){const n=t[r];this.setCondOp(n),a=!1,s=!0;continue}if(s){const n=t[r];this.setParam(n),s=!1,i=!0;continue}if(i){const n=t[r];if(n instanceof Object&&!(n instanceof Array)){const o=n;o.type!=null&&this.setValueType(o.type.toString()),o.value!=null&&this.setValue(o.value.toString())}else this.setValue(n);break}}}getValueType(){return this.strValueType}setValueType(t){this.strValueType=t}getValue(){return this.strValue}setValue(t){this.strValue=t}getParamType(){return this.strParamType}setParamType(t){this.strParamType=t}getParam(){return this.strParam}setParam(t){this.strParam=t}},Ja=class Zs extends $a{constructor(){super(...arguments),this.childCondList=[],this.bNotMode=!1}parse(e){const a=e.length;let s=!0,i=!0,r=!1;for(let n=0;n<a;n++){if(s&&i&&e[n]==="!"){this.setNotMode(!0),s=!1;continue}if(i){const o=e[n];this.setCondOp(o),i=!1,s=!1,r=!0;continue}if(r){const o=e[n];if(o instanceof Array)o.forEach(u=>{if(u.length>0){const c=u[0].toString();if(c==="!"||c==="OR"||c==="AND"){const l=new Zs;l.parse(u),this.childCondList.push(l)}else{const l=new xe;l.parse(u),this.childCondList.push(l)}}});else throw new f("\u503C\u5FC5\u987B\u4E3A\u6570\u7EC4")}}}setNotMode(e){this.bNotMode=e}isNotMode(){return this.bNotMode}getChildPSModelCondBases(){return this.childCondList}},yr=class extends Ja{},Fr=class extends xe{},Ve=class sa extends Ir{test(e,a){return this.testCond(this.getPSModelGroupCondBase(),e,a)}testCond(e,a,s){if(e instanceof Ja){const i=e.getChildPSModelCondBases();if(i==null||T(i))return!e.isNotMode();const r=e.getCondOp()==="AND";let n=r;for(let o=0;o<i.length;o++){const u=i[o];if(this.testCond(u,a,s)){if(!r){n=!0;break}}else if(r){n=!1;break}}return e.isNotMode()?!n:n}if(e instanceof xe){T(e.getParam())&&ibiz.log.warn("\u6CA1\u6709\u6307\u5B9A\u5C5E\u6027\u540D\u79F0",e);const i=a[e.getParam().toLowerCase()];let r=null;const n=e.getValueType(),o=e.getValue();return n!=null&&!T(n)?(T(o)&&ibiz.log.warn("\u6CA1\u6709\u6307\u5B9A\u4E0A\u4E0B\u6587\u53C2\u6570\u540D\u79F0"),sa.PARAMTYPE_WEBCONTEXT===n?r=s.data[o.toLowerCase()]:sa.PARAMTYPE_DATACONTEXT===n&&(r=s.getValue(o.toLowerCase()))):r=e.getValue(),this.testSingleCond(e.getCondOp(),i,r)}return ibiz.log.warn("\u65E0\u6CD5\u8BC6\u522B\u7684\u6761\u4EF6\u5BF9\u8C61",e),!1}createPSModelSingleCond(){return new Fr}createPSModelGroupCond(){return new yr}};Ve.PARAMTYPE_DATACONTEXT="DATACONTEXT",Ve.PARAMTYPE_WEBCONTEXT="WEBCONTEXT";var Pr=d("PSDEDQCondEngine",Ve);async function J(t,e){var a;const i=(a=ibiz.hub.getApp(e).model.appPFPluginRefs)==null?void 0:a.find(r=>r.pluginCode.toLowerCase()===t);if(!i){ibiz.log.error("\u672A\u5339\u914D\u5230\u63D2\u4EF6[".concat(t,"]\u6A21\u578B"));return}return await ibiz.plugin.loadPlugin(i),"".concat(i.pluginType,"_").concat(i.pluginCode)}var Za=d("APP_COUNTER_PROVIDER_PREFIX","APPCOUNTER");function ts(t,e){ibiz.register.register("".concat(Za,"_").concat(t),e)}function ke(t){return ibiz.register.get("".concat(Za,"_").concat(t))}async function es(t){let e;const{codeName:a,counterType:s,sysPFPluginId:i,appId:r}=t;if(i){const n=await J(i,r);if(n&&(e=ke(n)),!e)ibiz.log.error("\u627E\u4E0D\u5230\u7CFB\u7EDF\u8BA1\u6570\u5668\u63D2\u4EF6".concat(n,"\u5BF9\u5E94\u7684\u9002\u914D\u5668"));else return e}if(s==="CUSTOM"){if(e=ke(a),e)return e;throw new f("\u627E\u4E0D\u5230\u81EA\u5B9A\u4E49\u7CFB\u7EDF\u8BA1\u6570\u5668".concat(a,"\u5BF9\u5E94\u7684\u9002\u914D\u5668"))}if(e=ke(s),e)return e;throw new f("\u627E\u4E0D\u7CFB\u7EDF\u8BA1\u6570\u5668\u7C7B\u578B".concat(s,"\u5BF9\u5E94\u7684\u9002\u914D\u5668"))}var as=d("CONTROL_PROVIDER_PREFIX","CONTROL");function br(t,e){ibiz.register.register("".concat(as,"_").concat(t),e)}function We(t){return ibiz.register.get("".concat(as,"_").concat(t))}async function dt(t){let e;const{controlType:a,controlStyle:s,sysPFPluginId:i,appId:r}=t;if(i){const n=await J(i,r);if(n&&(e=We(n)),!e)ibiz.log.error("\u627E\u4E0D\u5230\u90E8\u4EF6\u63D2\u4EF6".concat(n,"\u5BF9\u5E94\u7684\u9002\u914D\u5668"));else return e}if(s&&s!=="DEFAULT"){const n="".concat(a,"_").concat(s);if(e=We(n),!e)ibiz.log.error("\u627E\u4E0D\u5230\u90E8\u4EF6\u7C7B\u578B\uFF1A[".concat(a,"]\u7684\u90E8\u4EF6\u6837\u5F0F\uFF1A[").concat(s,"]\u5BF9\u5E94\u7684\u9002\u914D\u5668"),t);else return e}if(e=We(a),e)return e;switch(a){case"DATAINFOBAR":return;default:ibiz.log.error("\u627E\u4E0D\u5230\u90E8\u4EF6\u7C7B\u578B".concat(a,"\u5BF9\u5E94\u7684\u9002\u914D\u5668"))}}var ss=d("EDITOR_PROVIDER_PREFIX","EDITOR");function Nr(t,e){ibiz.register.register("".concat(ss,"_").concat(t),e)}function Yt(t){return ibiz.register.get("".concat(ss,"_").concat(t))}async function bt(t){let e;const{editorType:a,editorStyle:s,predefinedType:i,sysPFPluginId:r,appId:n}=t;if(r){const o=await J(r,n);if(o&&(e=Yt(o)),!e)ibiz.log.error("\u627E\u4E0D\u5230\u7F16\u8F91\u5668\u63D2\u4EF6".concat(o,"\u5BF9\u5E94\u7684\u9002\u914D\u5668"));else return e}if(s&&s!=="DEFAULT"){const o="".concat(a,"_").concat(s);if(e=Yt(o),!e)ibiz.log.error("\u627E\u4E0D\u5230\u7F16\u8F91\u5668\u7C7B\u578B\uFF1A[".concat(a,"]\u7684\u7F16\u8F91\u5668\u6837\u5F0F\uFF1A[").concat(s,"]\u5BF9\u5E94\u7684\u9002\u914D\u5668"),t);else return e}if(i){let o="".concat(i,"_").concat(a);if(s&&s!=="DEFAULT"&&(o+="_".concat(s)),e=Yt(o),!e)ibiz.log.error("\u627E\u4E0D\u5230\u7F16\u8F91\u5668\u7C7B\u578B\uFF1A[".concat(a,"]\u7684\u9884\u7F6E\u7C7B\u578B\uFF1A[").concat(i,"]\u5BF9\u5E94\u7684\u9002\u914D\u5668"),t);else return e}if(e=Yt(a),!e)ibiz.log.error("\u627E\u4E0D\u5230\u7F16\u8F91\u5668\u7C7B\u578B".concat(a,"\u5BF9\u5E94\u7684\u9002\u914D\u5668"));else return e}var is=d("FORMDETAIL_PROVIDER_PREFIX","FORMDETAIL");function Sr(t,e){ibiz.register.register("".concat(is,"_").concat(t),e)}function rs(t){return ibiz.register.get("".concat(is,"_").concat(t))}async function Ue(t){let e;const{detailType:a,sysPFPluginId:s,appId:i}=t;if(s){const r=await J(s,i);if(r&&(e=rs(r)),!e)ibiz.log.error("\u627E\u4E0D\u5230\u8868\u5355\u6210\u5458\u63D2\u4EF6".concat(r,"\u5BF9\u5E94\u7684\u9002\u914D\u5668"));else return e}if(e=rs(a),!e)ibiz.log.error("\u627E\u4E0D\u5230\u8868\u5355\u6210\u5458\u7C7B\u578B".concat(a,"\u5BF9\u5E94\u7684\u9002\u914D\u5668"));else return e}var ns=d("GRIDCOLUMN_PROVIDER_PREFIX","GRIDCOLUMN");function Rr(t,e){ibiz.register.register("".concat(ns,"_").concat(t),e)}function os(t){return ibiz.register.get("".concat(ns,"_").concat(t))}async function ze(t){let e;const{columnType:a,enableRowEdit:s,sysPFPluginId:i,appId:r}=t;if(i){const o=await J(i,r);if(o&&(e=os(o)),!e)ibiz.log.error("\u627E\u4E0D\u5230\u8868\u683C\u5217\u63D2\u4EF6".concat(o,"\u5BF9\u5E94\u7684\u9002\u914D\u5668"));else return e}const n=s?"".concat(a,"_EDIT"):a;if(e=os(n),!e)ibiz.log.error("\u627E\u4E0D\u5230\u8868\u683C\u5217\u7C7B\u578B".concat(n,"\u5BF9\u5E94\u7684\u9002\u914D\u5668"));else return e}var us=d("PANELITEM_PROVIDER_PREFIX","PANELITEM");function Lr(t,e){ibiz.register.register("".concat(us,"_").concat(t.toUpperCase()),e)}function Nt(t){return ibiz.register.get("".concat(us,"_").concat(t.toUpperCase()))}async function cs(t){var e;let a;const{itemType:s,sysPFPluginId:i,appId:r}=t;if(i){const n=await J(i,r);if(n&&(a=Nt(n)),!a)ibiz.log.error("\u627E\u4E0D\u5230\u9762\u677F\u6210\u5458\u63D2\u4EF6".concat(n,"\u5BF9\u5E94\u7684\u9002\u914D\u5668"));else return a}if(s==="CONTAINER"){const n=t.predefinedType||"DEFAULT",o="CONTAINER_".concat(n);if(a=Nt(o),!a)ibiz.log.error("\u627E\u4E0D\u5230\u9762\u677F\u5BB9\u5668\u9884\u7F6E\u7C7B\u578B\u4E3A".concat(n,"\u7684\u9002\u914D\u5668\uFF0C\u6CE8\u518Ckey\u4E3A").concat(o));else return a}if(s==="RAWITEM"){const n=((e=t.rawItem)==null?void 0:e.predefinedType)||"DEFAULT",o="RAWITEM_".concat(n);if(a=Nt(o),!a)ibiz.log.error("\u627E\u4E0D\u5230\u9762\u677F\u6210\u5458\u76F4\u63A5\u5185\u5BB9\u9884\u7F6E\u7C7B\u578B\u4E3A".concat(n,"\u7684\u9002\u914D\u5668\uFF0C\u6CE8\u518Ckey\u4E3A").concat(o));else return a}if(s==="FIELD"){const{editor:n}=t;if(n&&n.predefinedType){const o="FIELD_".concat(n.predefinedType.toUpperCase());if(a=Nt(o),a)return a}}if(a=Nt(s),!a)ibiz.log.error("\u627E\u4E0D\u5230\u9762\u677F\u6210\u5458\u7C7B\u578B".concat(s,"\u5BF9\u5E94\u7684\u9002\u914D\u5668"));else return a}var ls=d("PORTLET_PROVIDER_PREFIX","PORTLET");function Tr(t,e){ibiz.register.register("".concat(ls,"_").concat(t),e)}function ds(t){return ibiz.register.get("".concat(ls,"_").concat(t))}async function hs(t){let e;const{portletType:a,sysPFPluginId:s,appId:i}=t;if(s){const r=await J(s,i);if(r&&(e=ds(r)),!e)ibiz.log.error("\u627E\u4E0D\u5230\u95E8\u6237\u90E8\u4EF6\u63D2\u4EF6".concat(r,"\u5BF9\u5E94\u7684\u9002\u914D\u5668"));else return e}if(e=ds(a),!e)ibiz.log.error("\u627E\u4E0D\u5230\u95E8\u6237\u90E8\u4EF6\u6210\u5458\u7C7B\u578B".concat(a,"\u5BF9\u5E94\u7684\u9002\u914D\u5668"));else return e}var ps=d("UIACTION_PROVIDER_PREFIX","UIACTION");function St(t,e){ibiz.register.register("".concat(ps,"_").concat(t),e)}function fs(t){return ibiz.register.get("".concat(ps,"_").concat(t))}async function ms(t){let e;const{uiactionMode:a,sysPFPluginId:s,appId:i}=t;if(s){const r=await J(s,i);if(r&&(e=fs(r)),!e)ibiz.log.error("\u627E\u4E0D\u5230\u754C\u9762\u884C\u4E3A\u63D2\u4EF6".concat(r,"\u5BF9\u5E94\u7684\u9002\u914D\u5668"));else return e}if(e=fs(a),e)return e;throw new f("\u627E\u4E0D\u754C\u9762\u884C\u4E3A\u6A21\u5F0F".concat(a,"\u5BF9\u5E94\u7684\u9002\u914D\u5668"))}var Es=d("UILOGINNODE_PROVIDER_PREFIX","UI_LOGIN_NODE");function Br(t,e){ibiz.register.register("".concat(Es,"_").concat(t),e)}async function gs(t){let e;const{sysPFPluginId:a,appId:s}=t,i=await J(a,s);if(i){if(e=ibiz.register.get("".concat(Es,"_").concat(i)),e)return e;throw new f("\u627E\u4E0D\u5230\u754C\u9762\u903B\u8F91\u524D\u7AEF\u63D2\u4EF6\u8282\u70B9\uFF0C\u63D2\u4EF6".concat(i,"\u5BF9\u5E94\u7684\u9002\u914D\u5668"))}}var Cs=d("VIEW_PROVIDER_PREFIX","VIEW");function _r(t,e){ibiz.register.register("".concat(Cs,"_").concat(t),e)}function qt(t){return ibiz.register.get("".concat(Cs,"_").concat(t))}async function Or(t){let e;const{viewType:a,viewStyle:s,sysPFPluginId:i,appId:r}=t;if(i){const n=await J(i,r);if(n&&(e=qt(n)),!e)ibiz.log.error("\u627E\u4E0D\u5230\u89C6\u56FE\u63D2\u4EF6".concat(n,"\u5BF9\u5E94\u7684\u9002\u914D\u5668"));else return e}if(s&&s!=="DEFAULT"){const n="".concat(a,"_").concat(s);if(e=qt(n),!e)ibiz.log.error("\u627E\u4E0D\u5230\u89C6\u56FE\u7C7B\u578B\uFF1A[".concat(a,"]\u7684\u89C6\u56FE\u6837\u5F0F\uFF1A[").concat(s,"]\u5BF9\u5E94\u7684\u9002\u914D\u5668"),t);else return e}return e||(e=qt(a)),e||(e=qt("DEFAULT")),e}var Ds=d("ASYNC_ACTION_PROVIDER_PREFIX","ASYNC_ACTION");function Mr(t,e){ibiz.register.register("".concat(Ds,"_").concat(t),e)}function xr(t){return ibiz.register.get("".concat(Ds,"_").concat(t))}function Vr(t){const e=xr(t);if(e)return e;throw new f("\u627E\u4E0D\u5F02\u6B65\u64CD\u4F5C\u7C7B\u578B".concat(t,"\u5BF9\u5E94\u7684\u9002\u914D\u5668"))}var kr=d("AppCounter",class{constructor(t){this.model=t,this.destroyed=!1,this.context=Tt.create(),this.params={},this.evt=new Et,this.data={}}get isDestroyed(){return this.destroyed}async init(t,e){this.setParams(t,e),this.interval(),await this.load()}setParams(t,e){t&&(this.context=A(t)),e&&(this.params=A(e))}interval(){this.destroyInterval(),this.intervalTimer=setInterval(()=>{this.evt.getSize("change")>0&&this.load()},this.model.timer||6e3)}destroyInterval(){this.intervalTimer&&(clearInterval(this.intervalTimer),this.intervalTimer=null)}async load(){throw new f("\u672A\u5B9E\u73B0\u8BA1\u6570\u5668\u52A0\u8F7D\u65B9\u6CD5")}refresh(t,e){return this.setParams(t,e),this.load()}onChange(t,e=!0){this.evt.on("change",t),e&&x(this.data)&&t(this.data)}offChange(t){this.evt.off("change",t)}getCounter(t){return this.data[t.toLowerCase()]||0}destroy(){this.destroyed=!0,this.context.destroy(),this.destroyInterval(),this.evt.reset()}}),Wr=d("AppDECounter",class extends kr{async init(t,e){this.appDataEntityId=this.model.appDataEntityId;const a=this.model.getAppDEActionId;if(!a)throw new m(this.model,"\u672A\u627E\u5230\u83B7\u53D6\u8BA1\u6570\u5668\u884C\u4E3A!");this.action=a,await super.init(t,e)}async load(){const e=await ibiz.hub.getApp(this.context.srfappid).deService.exec(this.appDataEntityId,this.action,this.context,this.params);return e.ok&&(this.data=e.data,this.evt.emit("change",this.data)),this.data}}),Ur=d("AppDECounterProvider",class{createCounter(t){return new Wr(t)}});function ws(){ts("DEDR",()=>new Ur)}var zr=d("DEDQCondUtil",class{static getCond(t){if(this.map.has(t))return this.map.get(t);const e=t.dedqgroupConditions;if(e){const a=new Pr;return a.parse(["OR",this.calcCond(e)]),this.map.set(t,a),a}return null}static calcCond(t){const e=[];return t.forEach(a=>{const s=[];if(a.condType==="GROUP"){const i=a;i.notMode&&s.push("!"),s.push(a.condOp);const r=i.dedqconditions;if(r){const n=this.calcCond(r);s.push(n)}}else if(a.condType==="SINGLE"){const i=a;s.push(i.fieldName),i.condValue||s.push("")}else throw new D(a,"\u6682\u672A\u652F\u6301\u7684\u67E5\u8BE2\u6761\u4EF6\u7C7B\u578B: ".concat(a.condType));e.push(s)}),e}});zr.map=new WeakMap;var Gr=d("DynamicCodeListCache",class{constructor(t){this.cache=new Map,this.isPredefined=!1,this.codeList=t}async init(){const t=async()=>{const{predefinedType:e}=this.codeList;if(e){if(this.isPredefined=!0,!["OPERATOR","RUNTIME"].includes(e))throw new D(this.codeList,"\u9884\u5B9A\u4E49\u7C7B\u578B".concat(e,"\u6682\u4E0D\u652F\u6301"));return}this.initPromise=void 0};return this.initPromise=t(),this.initPromise}convertData(t){const e={},{valueAppDEFieldId:a,textAppDEFieldId:s,iconClsAppDEFieldId:i,iconClsXAppDEFieldId:r,iconPathAppDEFieldId:n,iconPathXAppDEFieldId:o,disableAppDEFieldId:u,dataAppDEFieldId:c}=this.codeList,l=a?t[a]:t.srfkey;return e.id=l,e.value=l,e.text=s?t[s]:t.srfmajortext,(i||r||n||o)&&(e.sysImage={},i&&(e.sysImage.cssClass=t[i]),r&&(e.sysImage.cssClassX=t[r]),n&&(e.sysImage.imagePath=t[n]),o&&(e.sysImage.imagePathX=t[o])),u&&(e.disableSelect=t[u]),c&&t[c]&&(e.data=B.execSingleLine(t[c])),e}async load(t={},e={}){const a=ibiz.hub.getApp(t.srfappid),{appDataEntityId:s,appDEDataSetId:i,minorSortAppDEFieldId:r,minorSortDir:n,pvalueAppDEFieldId:o,customCond:u}=this.codeList,c={...e};if(r&&n&&Object.assign(c,{sort:"".concat(r.toLowerCase(),",").concat(n.toLowerCase())}),u){const p=B.execSingleLine(u),E=y(p,c,t);Object.assign(c,E)}if(c.size||(c.size=1e4),this.isPredefined){const p=await a.net.get("/dictionaries/codelist/".concat(this.codeList.codeName),c);return Object.freeze(p.data.items)}if(!s)throw new m(this.codeList,"\u672A\u914D\u7F6E\u5E94\u7528\u5B9E\u4F53");if(!i)throw new m(this.codeList,"\u672A\u914D\u7F6E\u6570\u636E\u96C6");const l=await a.deService.exec(s,i,t,void 0,c);let h=[];return l.data.length&&l.data.forEach(p=>{if(o){const E=this.prepareTreeData(l.data);E&&(h=E)}else h.push(this.convertData(p))}),Object.freeze(h)}prepareTreeData(t,e){const{pvalueAppDEFieldId:a}=this.codeList;let s=[];if(s=t.filter(i=>e?i[a]===e:!i[a]),s.length!==0)return s.map(i=>{const r=this.convertData(i);return r.children=this.prepareTreeData(t,r.value),r})}async get(t={},e={}){if(this.initPromise&&await this.initPromise,!this.codeList.enableCache)return this.load(t,e);const a=JSON.stringify(t)+JSON.stringify(e);if(this.cache.has(a)){const u=this.cache.get(a);if(u.expirationTime>new Date().getTime())return u.promise?u.promise:u.items;this.cache.delete(a)}const s=this.load(t,e),{cacheTimeout:i}=this.codeList,r=i===-1||w(i)?ibiz.config.codeList.timeout:this.codeList.cacheTimeout,n={expirationTime:new Date().getTime()+r,promise:s};this.cache.set(a,n);const o=await s;return n.items=o,delete n.promise,o}});function vs(t,e){if(e!=null){const{srfkey:a}=e;if(!w(a)&&!T(a))return!0}throw new f("\u6267\u884C\u300C".concat(t,"\u300D\u4E0D\u5B58\u5728\u300Csrfkey\u300D\u65E0\u6CD5\u5904\u7406"))}function ot(t,e){const{srfsessionid:a}=e;if(!w(a)&&!T(a))return!0;throw new f("\u6267\u884C\u300C".concat(t,"\u300D\u4E0D\u5B58\u5728\u300Csrfsessionid\u300D\u65E0\u6CD5\u5904\u7406"))}var jr=d("DECache",class{constructor(){this.cacheMap=new Map}forceAdd(t,e){const s=this.getCacheByTag(t).get(e.srfkey);s&&(s.assign(e),ibiz.log.warn("forceAdd",e.srfkey,e))}forceUpdate(t,e){this.getCacheByTag(t).set(e.srfkey,A(e)),ibiz.log.warn("forceUpdate",e.srfkey,e)}forceDelete(t,e){this.getCacheByTag(t).delete(e),ibiz.log.warn("forceDelete",e)}add(t,e){try{return ot("add",t),(w(e.srfkey)||T(e.srfkey))&&(e.srfkey=K()),e.srftempdate=new Date().getTime(),this.getCacheByTag(t).set(e.srfkey,A(e)),ibiz.log.warn("add",e.srfkey,e),e}catch(a){return ibiz.log.error(a),null}}get(t,e){try{ot("get",t);const s=this.getCacheByTag(t).get(e);return ibiz.log.warn("get",e,s),A(s)}catch(a){return ibiz.log.error(a),null}}update(t,e){try{ot("update",t),vs("update",e),e.srftempdate=new Date().getTime();const a=this.getCacheByTag(t),s=a.get(e.srfkey);if(s)return s.assign(e),a.set(e.srfkey,s),ibiz.log.warn("update",e.srfkey,e),A(s);throw new Error("\u6570\u636E\u4E0D\u5B58\u5728\uFF0C\u65E0\u6CD5\u66F4\u65B0!")}catch(a){return ibiz.log.error(a),null}}delete(t,e){try{ot("delete",t);const a=this.getCacheByTag(t),s=e;if(a.has(s)){const i=a.get(s);return i.srftempdate=new Date().getTime(),a.delete(s),ibiz.log.warn("delete",s),i}return null}catch(a){return ibiz.log.error(a),null}}createBatch(t,e){try{ot("add",t);const a=this.getCacheByTag(t);for(let s=0;s<e.length;s++){const i=e[s];(w(i.srfkey)||T(i.srfkey))&&(i.srfkey=K()),i.srftempdate=new Date().getTime();const r=A(i);a.set(i.srfkey,r),e[s]=r,ibiz.log.warn("add",i.srfkey,i)}return e}catch(a){ibiz.log.error(a)}return[]}updateBatch(t,e){try{ot("update",t);const a=this.getCacheByTag(t);for(let s=0;s<e.length;s++){const i=e[s];vs("update",i),i.srftempdate=new Date().getTime();const r=a.get(i.srfkey);if(r)r.assign(i),a.set(i.srfkey,r),ibiz.log.warn("update",i.srfkey,i),e[s]=A(r);else throw new Error("\u6570\u636E[".concat(i.srfdename,"-").concat(i.srfmajortext,"(").concat(i.srfkey,")]\u4E0D\u5B58\u5728\uFF0C\u65E0\u6CD5\u66F4\u65B0!"))}return e}catch(a){return ibiz.log.error(a),null}}deleteBatch(t,e){try{ot("delete",t)}catch(i){return ibiz.log.error(i),e}const a=this.getCacheByTag(t),s=[];for(let i=0;i<e.length;i++){const r=e[i];a.has(r)||s.push(r)}if(s.length>0)throw new Error("\u672A\u627E\u5230\u4EE5\u4E0B\u6570\u636E\u300C".concat(s.join("\u3001"),"\u300D\uFF0C\u65E0\u6CD5\u5220\u9664!"));for(let i=0;i<e.length;i++){const r=e[i];a.delete(r),ibiz.log.warn("delete",r)}return[]}checkData(t,e){return this.getList(t).findIndex(i=>i.srfkey===e)!==-1}getList(t){try{ot("getList",t);const e=this.getCacheByTag(t);if(!e)return[];const a=e.values();return Array.from(a)}catch(e){return ibiz.log.error(e),[]}}generatePred(t={}){const e={};t.srfkey&&(e.srfkey=rt(t.srfkey)),delete t.srfkey;for(const a in t)if(Object.prototype.hasOwnProperty.call(t,a)){const s=t[a];e[a]=rt(s)}return gt(e)}clear(t){const e=t.srfsessionid;this.cacheMap.size>0&&this.cacheMap.delete(e)}getCacheByTag(t){const e=t.srfsessionid;return this.cacheMap.has(e)||this.cacheMap.set(e,new Map),this.cacheMap.get(e)}}),Kr=/\$\{(.*?)\}/g;function As(t,e){const i=(e.requestPaths||[]).map(r=>{const n=r.match(Kr),o=n?.map(u=>u.substring(2,u.length-1))||[];return{path:r,keys:o}}).filter(r=>{const{keys:n}=r;return n.length===0?!0:n.every((o,u)=>u===n.length-1?!0:t[o]!=null)}).sort((r,n)=>n.keys.length-r.keys.length);if(i.length>0)return i[0]}function Qt(t,e){const a=As(t,e);if(a){if(a.keys.length>0){let{path:s}=a;return a.keys.forEach((i,r)=>{r===a.keys.length-1?s=s.replace(new RegExp("/[^/]+/\\$\\{".concat(i,"\\}")),""):s=s.replace("${".concat(i,"}"),t[i])}),s}return a.path}return""}var Xr=d("SearchFilter",class{constructor(t,e){if(this.page=0,this.size=1e3,this.data={},this.sortField="srfordervalue",this.sortMode="ASC",this.context=t,e){if(!w(e.page)&&!T(e.page)&&(this.page=e.page),!w(e.size)&&!T(e.size)&&(this.size=e.size),!w(e.query)&&!T(e.query)&&(this.query=e.query),!w(e.sort)&&!T(e.sort)){const a=e.sort.split(",");a.length>=1&&([this.sortField]=a),a.length>=2&&(this.sortMode=a[1].toUpperCase())}!w(e.srfparentkey)&&!T(e.srfparentkey)&&(this.srfparentkey=e.srfparentkey),!w(e.srfparentdename)&&!T(e.srfparentdename)&&(this.srfparentdename=e.srfparentdename),this.data={...e},delete this.data.page,delete this.data.size,delete this.data.query,delete this.data.sort,delete this.data.srfparentkey,delete this.data.srfparentdename}}getValue(t){return this.data[t]?this.data[t]:this.context[t]}}),Hr=d("CodeListService",class{constructor(t){this.appModel=t,this.allCodeLists=new Map,this.cache=new Map}getStatic(t){const e=t.codeName;if(this.cache.has(e))return this.cache.get(e);const a=t.codeItems;let s=[];return a?.length&&(s=this.formatStaticItems(a,t.codeItemValueNumber)),this.cache.set(e,Object.freeze(s)),s}setCodeList(t){const{id:e,codeName:a}=t;this.allCodeLists.set(e,t),this.allCodeLists.set(a,t)}getCodeList(t){return this.allCodeLists.get(t)}formatStaticItems(t,e){return t.map(a=>{var s;let i=a.text;a.textLanguageRes&&(i=ibiz.i18n.t(a.textLanguageRes.lanResTag,a.text));let{tooltip:r}=a;a.tooltipLanguageRes&&(r=ibiz.i18n.t(a.tooltipLanguageRes.lanResTag,a.tooltip));const n={text:i,value:e?Number(a.value):a.value,color:a.color,id:a.codeName,textCls:a.textCls,disableSelect:a.disableSelect,tooltip:r,data:a.data?B.execSingleLine(a.data):void 0,sysImage:a.sysImage};return(s=a.codeItems)!=null&&s.length&&(n.children=this.formatStaticItems(a.codeItems,e)),Object.freeze(n)})}async getDynamicCodeList(t,e={},a={}){let s;const i=t.codeName;return this.cache.has(i)?s=this.cache.get(i):(s=new Gr(t),this.cache.set(i,s),await s.init()),s.get(e,a)}async get(t,e,a){const s=this.allCodeLists.get(t);if(!s)throw new f("\u627E\u4E0D\u5230".concat(t,"\u4EE3\u7801\u8868"));return s.codeListType==="STATIC"?this.getStatic(s):s.codeListType==="DYNAMIC"?this.getDynamicCodeList(s,e,a):[]}}),$t=d("ConfigService",class{constructor(t,e,a){this.appId=t,this.folder=e,this.tag=a,this.app=ibiz.hub.getApp(t)}async save(t){const e=await this.app.net.put("/configs/".concat(this.folder,"/").concat(this.tag),t);return e.ok?e.data:!1}async load(){const t=await this.app.net.get("/configs/".concat(this.folder,"/").concat(this.tag));return t.ok?t.data:{}}}),Is=d("CounterService",class{static async getCounter(t,e,a){const s=t.id;if(this.counterMap.has(s)){const n=this.counterMap.get(s);if(n.isDestroyed===!1)return n;this.counterMap.delete(s)}const r=(await es(t)).createCounter(t);return await r.init(e,a),this.counterMap.set(s,r),r}static async getCounterByRef(t,e,a){const{appCounter:s}=t;if(!s)throw new m(t,"\u672A\u914D\u7F6E\u5E94\u7528\u8BA1\u6570\u5668!");return this.getCounter(s,e,a)}});Is.counterMap=new Map;var Yr=d("WorkFlowService",class{constructor(t){this.model=t,this.commonBaseUrl="",this.app=ibiz.hub.getApp(t.appId);const e=ibiz.appData.context;this.commonBaseUrl="/wfcore/".concat(e.srfsystemid,"-app-").concat(this.app.model.codeName.toLowerCase(),"/").concat(this.model.name.toLowerCase())}getBaseUrl(){return this.commonBaseUrl}getActiveData(t,e){return e.srfprocessinstanceid&&(t.srfprocessinstanceid=e.srfprocessinstanceid),t}getWFInstanceTag(t){return t.srfprocessinstanceid||"alls"}async getWFStep(t){const{processDefinitionKey:e,taskDefinitionKey:a}=t;return this.app.net.get("".concat(this.getBaseUrl(),"/process-definitions/").concat(e,"/usertasks/").concat(a))}async getWFLink(t,e){const a=t[this.model.codeName.toLowerCase()],{taskDefinitionKey:s}=t;return this.app.net.post("".concat(this.getBaseUrl(),"/").concat(a,"/usertasks/").concat(s,"/ways"),{activedata:this.getActiveData(e,t)})}async getWFHistory(t){const e=t[this.model.codeName.toLowerCase()];return this.app.net.get("".concat(this.getBaseUrl(),"/").concat(e,"/process-instances/").concat(this.getWFInstanceTag(t),"/history"))}async getWFProcessDiagram(t){const e=t[this.model.codeName.toLowerCase()];return this.app.net.request("".concat(this.getBaseUrl(),"/").concat(e,"/process-instances/").concat(this.getWFInstanceTag(t),"/processdiagram"),{method:"post",data:{},responseType:"blob"})}async getWFVersion(){return this.app.net.get("".concat(this.getBaseUrl(),"/process-definitions2"))}async wfStart(t,e,a){return this.app.net.post("".concat(this.getBaseUrl(),"/").concat(t[this.model.codeName.toLowerCase()],"/process-instances"),{...e,activedata:this.getActiveData(a,t)})}async wfSubmit(t,e,a){return this.app.net.post("".concat(this.getBaseUrl(),"/").concat(t[this.model.codeName.toLowerCase()],"/tasks/").concat(e.taskId),{...e,activedata:this.getActiveData(a,t)})}async wfWithdraw(t,e,a){return this.app.net.post("".concat(this.getBaseUrl(),"/").concat(t[this.model.codeName.toLowerCase()],"/tasks/").concat(e.taskId,"/withdraw"),{...e,activedata:this.getActiveData(a,t)})}async wfReassign(t,e,a){return ibiz.net.post("".concat(this.getBaseUrl(),"/").concat(t[this.model.codeName.toLowerCase()],"/tasks/").concat(e.taskId,"/transfer"),{...e,activedata:this.getActiveData(a,t)})}async wfAddStepBefore(t,e,a){return ibiz.net.post("".concat(this.getBaseUrl(),"/").concat(t[this.model.codeName.toLowerCase()],"/tasks/").concat(e.taskId,"/beforesign"),{...e,activedata:this.getActiveData(a,t)})}async wfAddStepAfter(t,e,a){return ibiz.net.post("".concat(this.getBaseUrl(),"/").concat(t[this.model.codeName.toLowerCase()],"/tasks/").concat(e.taskId,"/aftersign"),{...e,activedata:this.getActiveData(a,t)})}async wfSendBack(t,e,a){return ibiz.net.post("".concat(this.getBaseUrl(),"/").concat(t[this.model.codeName.toLowerCase()],"/tasks/").concat(e.taskId,"/sendback"),{...e,activedata:this.getActiveData(a,t)})}async wfSendCopy(t,e,a){return ibiz.net.post("".concat(this.getBaseUrl(),"/").concat(t[this.model.codeName.toLowerCase()],"/tasks/").concat(e.taskId,"/sendcopy"),{...e,activedata:this.getActiveData(a,t)})}async exec(t,e,a={},s={}){switch(t){case"wfstart":return this.wfStart(e,a,s);case"wfsubmit":return this.wfSubmit(e,a,s);case"reassign":return this.wfReassign(e,a,s);case"addstepbefore":return this.wfAddStepBefore(e,a,s);case"addstepafter":return this.wfAddStepAfter(e,a,s);case"sendback":return this.wfSendBack(e,a,s);case"sendcopy":return this.wfSendCopy(e,a,s);default:throw new f("\u300C".concat(t,"\u300D\u672A\u5B9E\u73B0"))}}}),qr=class{constructor(t){this.model=t}exportData(t,e,a,s){const i=Qt(a,this.model),r="".concat(i,"/").concat(this.model.codeName2.toLowerCase(),"/exportdata/").concat(e.toLowerCase(),"/?srfexporttag=").concat(t.codeName);return ibiz.net.request(r,{method:"post",data:s,responseType:"blob"})}},Qr=d("Srfuf",(t=>(t[t.CREATE=0]="CREATE",t[t.UPDATE=1]="UPDATE",t))(Qr||{})),Jt=d("AppDataEntity",class ce{get srfuf(){return this.srfkey===this.tempsrfkey?1:0}constructor(e,a={}){Object.defineProperty(this,"_entity",{enumerable:!1,configurable:!0,value:e}),Object.defineProperty(this,"_data",{enumerable:!1,configurable:!0,value:a instanceof ce?A(a._data):A(a)}),Object.defineProperty(this,"srfdeid",{get(){return e.id}}),Object.defineProperty(this,"srfdecodename",{get(){return e.codeName}});const s=lt(e.appDEFields||[],e.keyAppDEFieldId);if(s){const r=s.codeName.toLowerCase();Object.defineProperty(this,"srfkeyfield",{get(){return r}}),Object.defineProperty(this,"srfkey",{set(n){this._data[r]=n},get(){return this._data[r]}})}else ibiz.log.warn("\u5B9E\u4F53[".concat(e.codeName,"]\u672A\u914D\u7F6E\u4E3B\u952E\u5B57\u6BB5"));const i=lt(e.appDEFields||[],e.majorAppDEFieldId);if(i){const r=i.codeName.toLowerCase();Object.defineProperty(this,"srfmajorfield",{get(){return r}}),Object.defineProperty(this,"srfmajortext",{set(n){this._data[r]=n},get(){return this._data[r]}})}else ibiz.log.warn("\u5B9E\u4F53[".concat(e.codeName,"]\u672A\u914D\u7F6E\u4E3B\u6587\u672C\u5B57\u6BB5"));Object.defineProperty(this,"tempsrfkey",{enumerable:!1,configurable:!0,writable:!0,value:w(this.srfkey)?K():this.srfkey}),this.defineProperties()}defineProperties(){var e;const{_data:a,convertVal:s}=this,i={};Object.keys(a).forEach(n=>{i[n]={enumerable:!0,set(o){a[n]=o},get(){return a[n]}}}),(e=this._entity.appDEFields)==null||e.forEach(n=>{const o=n.codeName.toLowerCase();i[o]={enumerable:!0,set(u){a[o]=s(u,n.stdDataType)},get(){return a[o]}},a[o]=s(a[o],n.stdDataType)}),Object.defineProperties(this,i)}clone(){const e=new ce(this._entity,this._data);return e.srfkey=this.srfkey,e}assign(e){return e instanceof ce?Object.assign(this._data,e._data):Object.assign(this._data,e),this}convertVal(e,a){if(e==null||w(a))return e;if(Bt.isNumber(a)){const s=!w(e)&&e!==""?Number(e):e;return Number.isNaN(s)?(ibiz.log.debug("".concat(e,"\u4E0D\u80FD\u8F6C\u6362\u6210\u6570\u5B57")),e):s}return e}}),ys=d("MethodDto",class ti{constructor(e,a,s){this.entity=e,this.isLocalMode=a,this.dto=s,this.dtoMap=new Map,s?(this.app=ibiz.hub.getApp(e.appId),this.fields=s.appDEMethodDTOFields||[]):this.fields=[]}convertArrayToListMap(e){const a={};return e.forEach((s,i)=>{a[i+1]=s}),a}convertListMapToArray(e){const a=[];return Object.keys(e).forEach(s=>{const i=parseInt(s,10);a[i-1]=e[i]}),a}async get(e,a){const s={};for(let i=0;i<this.fields.length;i++){const r=this.fields[i],n=r.codeName.toLowerCase();switch(r.type){case"SIMPLE":case"SIMPLES":case"DTO":break;case"DTOS":{if(r.listMap)s[n]=a[n]&&a[n].length>0?this.convertArrayToListMap(a[n]):null;else{if(a[n]!==void 0||!r.refAppDataEntityId)break;const o=await this.getFieldDto(r),c=(await this.app.deService.getService(r.refAppDataEntityId)).local.getList(e);if(c){const l=[];for(let h=0;h<c.length;h++)l.push(await o.get(e,c[h]));s[n]=l}}break}default:throw new D(r,"\u672A\u652F\u6301\u7684\u5E94\u7528\u5B9E\u4F53\u65B9\u6CD5\u8F93\u5165\u5C5E\u6027\u7C7B\u578B: ".concat(r.type))}}return{...a,...s}}async sets(e,a){const s=await this.app.deService.getService(this.entity.id);return this.isLocalMode&&s.local.clear(e),Promise.all(a.map(async i=>{const r=this.fields.filter(o=>o.type==="DTOS").map(async o=>{const u=o.codeName.toLowerCase();if(o.listMap&&typeof i[u]=="object")i[u]=this.convertListMapToArray(i[u]);else{if(!o.refAppDataEntityId)return;const c=await this.getFieldDto(o),l=i[u];l?await c.sets(e,l):await c.sets(e,[])}});for(let o=0;o<r.length;o++)await r[o];const n=new Jt(this.entity,i);return this.isLocalMode&&await s.local.add(e,n),n}))}async getFieldDto(e){if(this.dtoMap.has(e.codeName))return this.dtoMap.get(e.codeName);const a=await ibiz.hub.getAppDataEntity(e.refAppDataEntityId,this.entity.appId),s=lt(a.appDEMethodDTOs||[],e.refAppDEMethodDTOId),i=new ti(a,!0,s);return this.dtoMap.set(e.codeName,i),i}});function Zt(t){return t.actionType==="BUILTIN"||t.dataSetType==="DATAQUERY"}var $r=class{constructor(t,e){this.entity=t,this.method=e;const a=e.appDEMethodInput;if(a){const s=lt(t.appDEMethodDTOs||[],a.appDEMethodDTOId);s&&(this.dto=new ys(t,this.isLocalMode,s))}}get isLocalMode(){return Zt(this.method)}async handle(t,e){return this.dto?this.dto.get(t,e):e}},Jr=class{constructor(t,e){this.entity=t,this.method=e;const a=e.appDEMethodReturn;if(a){const s=lt(t.appDEMethodDTOs||[],a.appDEMethodDTOId);s&&(this.dto=new ys(t,this.isLocalMode,s))}}get isLocalMode(){return Zt(this.method)}async handle(t,e){return this.dto?(await this.dto.sets(t,[e]))[0]:(V(e)&&(e={}),new Jt(this.entity,e))}},Fs=class{constructor(t,e){this.entity=t,this.method=e,this.app=ibiz.hub.getApp(t.appId),this.input=new $r(t,e),this.result=new Jr(t,e)}async request(t,e,a,s){const{actionType:i,requestMethod:r}=this.method;if(i==="REMOTE"){const n=this.method.codeName.toLowerCase();let o=null;switch(r){case"POST":o=await this.app.net.post(this.mergeRequestPath(t,n),a||s||{});break;case"GET":o=await this.app.net.get(this.mergeRequestPath(t,n),a||s);break;case"PUT":{o=await this.app.net.put(this.mergeRequestPath(t,n),a||s||{});break}case"DELETE":o=await this.app.net.delete(this.mergeRequestPath(t,n),a||s);break;default:throw r?new m(this.method,"\u672A\u652F\u6301\u7684\u8BF7\u6C42\u65B9\u5F0F: ".concat(r)):new m(this.method,"\u672A\u914D\u7F6E\u8BF7\u6C42\u65B9\u5F0F")}return o}throw new m(this.method,"\u672A\u652F\u6301\u7684\u884C\u4E3A\u7C7B\u578B[".concat(i,"]"))}mergeRequestPath(t,e){return"".concat(t,"/").concat(e)}calcPath(t){const e="/".concat(this.entity.codeName2.toLowerCase());return Qt(t,this.entity)+e}async getService(){return this.service||(this.service=await this.app.deService.getService(this.entity.id)),this.service}createEntity(t){const e=a=>a instanceof Jt?a.clone():new Jt(this.entity,a);return j(t)?t.map(a=>e(a)):e(t)}},Zr=class{constructor(t,e,a,s){this.deLogicParams=t,this.params={},this.result=null,this.isEndNode=!1,this.defaultParamName="Default",this.parameters={context:e,data:j(a)?a:[a],params:s}}get context(){return Object.prototype.hasOwnProperty.call(this.params,"context")?this.params.context:this.parameters.context}get data(){return this.parameters.data}get viewParam(){return Object.prototype.hasOwnProperty.call(this.params,"viewParam")?this.params.viewParam:this.parameters.params}resetParam(t){var e;(e=this.deLogicParams.get(t))==null||e.calc(this)}renewParam(t){var e;(e=this.deLogicParams.get(t))==null||e.renew(this)}setLastReturn(t){this.lastReturn=t}initLastReturnParam(t){Object.defineProperty(this.params,t,{enumerable:!0,configurable:!0,get:()=>this.lastReturn})}isEntityParam(t){const e=this.deLogicParams.get(t);return!!(e&&e.model.entityParam)}},Ps=class{},tn=class extends Ps{constructor(t){super(),this.model=t,this.srcParam=t.srcLogicParamId,this.dstParam=t.dstLogicParamId}get dstField(){return this.model.dstFieldName.toLowerCase()}get op(){return this.model.condOP}get type(){return this.model.paramType}get value(){return this.model.paramValue}test(t,e,a){const s=t.params[this.dstParam];switch(this.type){case"ENTITYFIELD":{if(!this.value)throw new m(this.model,"\u5F53\u524D\u6761\u4EF6\u503C\u7C7B\u578B\u4E3A[\u6570\u636E\u5BF9\u8C61\u5C5E\u6027],\u7F3A\u5C11\u914D\u7F6E\u6761\u4EF6\u503C");const i=a[this.value]!=null?a[this.value]:e[this.value];return $(s[this.dstField],this.op,i)}case"SRCENTITYFIELD":{if(!this.value)throw new m(this.model,"\u5F53\u524D\u6761\u4EF6\u503C\u7C7B\u578B\u4E3A[\u6E90\u6570\u636E\u5BF9\u8C61\u5C5E\u6027],\u7F3A\u5C11\u914D\u7F6E\u6761\u4EF6\u503C");const i=t.params[this.srcParam];return $(s[this.dstField],this.op,i[this.value])}case"CURTIME":throw new D(this.model,"\u6682\u672A\u652F\u6301\u6761\u4EF6\u503C\u7C7B\u578B\u4E3A[\u5F53\u524D\u65F6\u95F4]");default:return $(s[this.dstField],this.op,this.value)}}},en=class ei extends Ps{constructor(e){super(),this.model=e;const a=e.conds||[];this.conds=a.map(s=>s.logicType==="SINGLE"?new tn(s):new ei(s))}get op(){return this.model.groupOP}get notMode(){return this.model.notMode===!0}test(e,a,s){let i=!0;if(this.conds.length===0)throw new m(this.model,"\u754C\u9762\u8FDE\u63A5\u6761\u4EF6\u903B\u8F91\u7EC4\u672A\u914D\u7F6E\u903B\u8F91\u9879");for(let r=0;r<this.conds.length;r++){const o=this.conds[r].test(e,a,s);if(this.op==="AND"&&o===!1){i=!1;break}if(this.op==="OR"&&o===!0){i=!0;break}}return this.notMode?!i:i}},an=class{constructor(t){this.model=t,this.srcNode=null,this.dstNode=null,this.groupCond=null;const e=this.model.delogicLinkGroupCond;e&&(this.groupCond=new en(e))}async exec(t){const{defaultLink:e}=this.model;return e||!this.groupCond?!0:this.groupCond.test(t,t.context,t.data[0]||{})}},X=class{constructor(t){this.model=t;var e;this.links=(e=t.links||[])==null?void 0:e.map(a=>new an(a))}},sn=class extends X{async exec(t){const{dstAppDataEntityId:e,dstAppDEActionId:a,dstDELogicParamId:s,retDELogicParamId:i}=this.model;if(!e)throw new m(this.model,"\u672A\u6307\u5B9A\u5E94\u7528\u5B9E\u4F53");if(!a)throw new m(this.model,"\u672A\u6307\u5B9A\u5B9E\u4F53\u884C\u4E3A");const r=t.params[s],o=await ibiz.hub.getApp(t.context.srfappid).deService.exec(e,a,t.context,r,t.viewParam);o.ok&&(t.params[i]=o.data)}},rn=class extends X{async exec(t){}},nn=class extends X{async exec(t){t.isEndNode=!0;const{returnParamId:e,returnType:a,rawValue:s}=this.model;if(a)switch(a){case"NONEVALUE":t.result=void 0;break;case"NULLVALUE":t.result=null;break;case"SRCVALUE":t.result=ibiz.util.rawValue.format(s);break;case"LOGICPARAM":t.result=t.params[e];break;case"LOGICPARAMFIELD":case"BREAK":default:throw new D(this.model,"\u6682\u672A\u652F\u6301\u7684\u7ED3\u675F\u8282\u70B9\u8FD4\u56DE\u503C\u7C7B\u578B: ".concat(a))}}};function ht(t,e){const{srcDELogicParamId:a,srcFieldName:s,srcValue:i}=e,r=e.srcValueType||"SRCDLPARAM";let n=s,o;switch(r){case"SRCDLPARAM":o=t.params[a],t.isEntityParam(a)&&(n=n?.toLowerCase());break;case"NULLVALUE":return null;case"NONEVALUE":return;case"SRCVALUE":return ibiz.util.rawValue.format(i);case"WEBCONTEXT":case"VIEWPARAM":o=t.parameters.params;break;case"APPLICATION":case"SESSION":case"APPDATA":case"DATACONTEXT":o=t.parameters.context;break;case"ENVPARAM":o=A(ibiz.env);break;default:throw new D(e,"\u6682\u672A\u652F\u6301\u6E90\u503C\u7C7B\u578B".concat(r))}if(o&&n)try{Array.isArray(o)?o=o[Number(n)]:o=B.execScriptFn({srcValue:o},"srcValue.".concat(n),{singleRowReturn:!0,isAsync:!1})}catch(u){throw ibiz.log.error("\u4ECE\u6E90\u53C2\u6570\u53D6\u5C5E\u6027".concat(n,"\u62A5\u9519\uFF0C\u6E90\u53C2\u6570\uFF1A"),o),u}return o}var on=class extends X{async exec(t){const e=this.model.delogicNodeParams;e?.length&&await Promise.all(e.map(a=>{switch(a.paramAction){case"SETPARAMVALUE":return this.setParamValue(a,t);case"RESETPARAM":return this.resetParam(a,t);case"COPYPARAM":return this.copyParam(a,t);case"BINDPARAM":return this.bindParam(a,t);case"RENEWPARAM":return this.renewParam(a,t);case"APPENDPARAM":return this.appendParam(a,t);case"SORTPARAM":return this.sortParam(a,t);default:throw new D(a,"\u6682\u672A\u652F\u6301\u903B\u8F91\u5904\u7406\u53C2\u6570\u64CD\u4F5C".concat(a.paramAction))}}))}copyParam(t,e){const{dstDELogicParamId:a}=t,s=ht(e,t);e.params[a]=A(s)}bindParam(t,e){const a=ht(e,t);e.params[t.dstDELogicParamId]=a}setParamValue(t,e){const{dstFieldName:a,dstDELogicParamId:s}=t;let i=a;e.isEntityParam(s)&&(i=i?.toLowerCase());const r=ht(e,t);i?e.params[s][i]=r:e.params[s]=r}resetParam(t,e){const{dstDELogicParamId:a}=t;e.resetParam(a)}renewParam(t,e){const{dstDELogicParamId:a}=t;e.renewParam(a)}appendParam(t,e){const{dstDELogicParamId:a,dstIndex:s,srcIndex:i,srcSize:r}=t,n=ht(e,t),o=s||0,u=i||0,c=r||n.length;e.params[a].splice(o,0,...n.slice(u,c))}sortParam(t,e){const{dstDELogicParamId:a,dstFieldName:s,dstSortDir:i}=t,r=s.toLowerCase();e.params[a].sort((o,u)=>i==="ASC"?o[r]-u[r]:u[r]-o[r])}},un=class extends X{async exec(t){const{dstAppDEDataSetId:e,dstAppDataEntityId:a,dstDELogicParamId:s,retDELogicParamId:i}=this.model,r=t.params[s],o=await ibiz.hub.getApp(t.context.srfappid).deService.exec(a,e,t.context,r);o.ok&&(t.params[i]=o.data)}},cn=class extends X{async exec(t){const{dstDELogicParamId:e,srcDELogicParamId:a}=this.model;if(!e||!a)throw new m(this.model,"\u7F3A\u5C11\u76EE\u6807\u53C2\u6570\u5BF9\u8C61\u6216\u8005\u6E90\u53C2\u6570\u5BF9\u8C61\u914D\u7F6E");const s=ht(t,this.model);t.params[e]=s}},ln=class extends X{async exec(t){const{dstDELogicParamId:e}=this.model;if(!e)throw new m(this.model,"\u7F3A\u5C11\u76EE\u6807\u53C2\u6570\u5BF9\u8C61\u914D\u7F6E");t.resetParam(e)}},dn=class extends X{async exec(t){const{dstDELogicParamId:e}=this.model;if(!e)throw new m(this.model,"\u7F3A\u5C11\u76EE\u6807\u53C2\u6570\u5BF9\u8C61\u914D\u7F6E");t.renewParam(e)}},hn=class extends X{async exec(t){const{dstDELogicParamId:e,srcDELogicParamId:a}=this.model;if(!e||!a)throw new m(this.model,"\u7F3A\u5C11\u76EE\u6807\u53C2\u6570\u5BF9\u8C61\u6216\u8005\u6E90\u53C2\u6570\u5BF9\u8C61\u914D\u7F6E");const s=ht(t,this.model);t.params[e]=A(s)}},pn=class extends X{async exec(t){const{dstDELogicParamId:e,dstSortDir:a,dstFieldName:s}=this.model;if(!e||!s)throw new m(this.model,"\u7F3A\u5C11\u76EE\u6807\u53C2\u6570\u5BF9\u8C61\u6216\u76EE\u6807\u5C5E\u6027\u914D\u7F6E");const i=s.toLowerCase();t.params[e].sort((n,o)=>a==="ASC"?n[i]-o[i]:o[i]-n[i])}},fn=class extends X{async exec(t){const{dstDELogicParamId:e,srcDELogicParamId:a,dstIndex:s,srcIndex:i,srcSize:r}=this.model;if(!e||!a)throw new m(this.model,"\u7F3A\u5C11\u76EE\u6807\u53C2\u6570\u5BF9\u8C61\u6216\u8005\u6E90\u53C2\u6570\u5BF9\u8C61\u914D\u7F6E");const n=ht(t,this.model),o=s||0,u=i||0,c=r||n.length;t.params[e].splice(o,0,...n.slice(u,c))}},mn=class extends X{async exec(t){const{errorCode:e,errorInfo:a}=this.model;throw new _t({response:{status:e,statusText:a}})}},En=class{constructor(t){this.model=t}calc(t){const e=this.model.id,a=this.model;if(a.default)a.entityListParam?t.params[e]=t.data||[]:t.params[e]=t.data[0]||{};else if(a.appGlobalParam)t.params[e]=A(ibiz.env);else if(a.entityListParam)t.params[e]=[];else{if(a.entityPageParam)throw new D(a,"\u672A\u652F\u6301\u7684\u903B\u8F91\u53C2\u6570\u7C7B\u578B: \u5206\u9875\u67E5\u8BE2\u7ED3\u679C");if(a.entityParam)t.params[e]={};else if(a.lastReturnParam)t.initLastReturnParam(e);else if(a.appContextParam)t.params[e]=t.parameters.context;else if(a.simpleListParam)t.params[e]=[];else if(a.simpleParam)t.params[e]={};else if(a.cloneParam)t.params[e]=A(t.data||{});else{if(a.envParam)throw new D(a,"\u672A\u652F\u6301\u7684\u903B\u8F91\u53C2\u6570\u7C7B\u578B: \u7CFB\u7EDF\u73AF\u5883\u53D8\u91CF");if(a.fileListParam)throw new D(a,"\u672A\u652F\u6301\u7684\u903B\u8F91\u53C2\u6570\u7C7B\u578B: \u6587\u4EF6\u5BF9\u8C61\u5217\u8868\u53D8\u91CF");if(a.fileParam)throw new D(a,"\u672A\u652F\u6301\u7684\u903B\u8F91\u53C2\u6570\u7C7B\u578B: \u6587\u4EF6\u5BF9\u8C61\u53D8\u91CF");if(a.filterParam)throw new D(a,"\u672A\u652F\u6301\u7684\u903B\u8F91\u53C2\u6570\u7C7B\u578B: \u8FC7\u6EE4\u5668\u5BF9\u8C61\u53D8\u91CF");if(a.lastParam)throw new D(a,"\u672A\u652F\u6301\u7684\u903B\u8F91\u53C2\u6570\u7C7B\u578B: \u6700\u540E\u6570\u636E\u53D8\u91CF");if(a.originEntity)throw new D(a,"\u672A\u652F\u6301\u7684\u903B\u8F91\u53C2\u6570\u7C7B\u578B: \u539F\u59CB\u6570\u636E\u5BF9\u8C61");if(a.sessionParam)throw new D(a,"\u672A\u652F\u6301\u7684\u903B\u8F91\u53C2\u6570\u7C7B\u578B: \u64CD\u4F5C\u4F1A\u8BDD\u53D8\u91CF")}}}renew(t){const e=this.model.id,a=this.model;if(a.entityListParam||a.simpleListParam||a.entityPageParam)t.params[e]=[];else if(a.simpleParam||a.entityParam)t.params[e]={};else throw new D(a,"\u672A\u652F\u6301\u7684\u903B\u8F91\u53C2\u6570\u7C7B\u578B\u91CD\u65B0\u5EFA\u7ACB\u53D8\u91CF")}},gn=class{constructor(t){this.model=t,this.nodes=new Map,this.params=new Map;var e,a;if(t.customCode){if(!t.scriptCode)throw new m(t,"\u811A\u672C\u4EE3\u7801\u6A21\u5F0F\u6CA1\u6709\u914D\u7F6E\u811A\u672C\u4EE3\u7801");this.scriptFn=B.createScriptFn([],t.scriptCode,{isAsync:!0});return}if(!((e=t.delogicNodes)!=null&&e.length))throw new m(t,"\u5B9E\u4F53\u903B\u8F91\u6CA1\u6709\u914D\u7F6E\u903B\u8F91\u8282\u70B9");t.delogicNodes.forEach(s=>{const{logicNodeType:i}=s;let r;switch(i){case"BEGIN":r=new rn(s);break;case"END":r=new nn(s);break;case"DEACTION":r=new sn(s);break;case"PREPAREPARAM":r=new on(s);break;case"DEDATASET":r=new un(s);break;case"THROWEXCEPTION":r=new mn(s);break;case"BINDPARAM":r=new cn(s);break;case"RESETPARAM":r=new ln(s);break;case"COPYPARAM":r=new hn(s);break;case"RENEWPARAM":r=new dn(s);break;case"APPENDPARAM":r=new fn(s);break;case"SORTPARAM":r=new pn(s);break;default:throw new D(s,"\u672A\u652F\u6301\u7684\u903B\u8F91\u8282\u70B9\u7C7B\u578B: ".concat(i))}this.nodes.set(s.id,r)}),(a=t.delogicParams)==null||a.forEach(s=>{this.params.set(s.id,new En(s))}),this.nodes.forEach(s=>{s.links.forEach(i=>{i.srcNode=s,this.nodes.has(i.model.thenId)&&(i.dstNode=this.nodes.get(i.model.thenId))})})}initLogicParams(t){this.params.forEach(e=>{e.model.default&&(t.defaultParamName=e.model.id),e.calc(t)})}async exec(t,e,a){if(this.scriptFn)return this.scriptFn.exec({context:t,data:e,params:a});const s=new Zr(this.params,t,e,a);this.initLogicParams(s);const{startDELogicNodeId:i}=this.model;if(i&&this.nodes.has(i)){const r=this.nodes.get(i);await this.deepExec(r,s)}else throw new m(this.model,"\u672A\u8BBE\u7F6E\u8D77\u59CB\u8282\u70B9");return s.isEndNode?s.result:s.params[s.defaultParamName]?s.params[s.defaultParamName]:null}async deepExec(t,e){await t.exec(e);const{links:a}=t;for(let s=0;s<a.length;s++){const i=a[s];if(await i.exec(e)&&i.dstNode&&(await this.deepExec(i.dstNode,e),t.model.parallelOutput===!1))break}}},Ge=new Map;async function Cn(t,e,a){const s=await ibiz.hub.getAppDataEntity(e,a);return Ne(t,s)}async function te(t,e,a={},s={}){return Ge.has(t)||Ge.set(t,new gn(t)),Ge.get(t).exec(e,a,s)}async function bs(t,e,a,s,i){const r=await Cn(t,e,a.srfappid);if(!r)throw new f("".concat(e,"\u627E\u4E0D\u5230\u5B9E\u4F53\u903B\u8F91").concat(t));return te(r,a,s,i)}async function Ns(t,e,a,s){const i=A(e),r=a&&A(a),n=s&&A(s);try{const o=await te(t,i,r,n);return new L(o)}catch(o){if(o instanceof _t)return new L(o,500);throw o}}async function Ss(t,e,a,s,i){const r=Wa(t,e);r.length&&(await Promise.all(r.map(o=>te(o,a,s,i)))).forEach(o=>{Object.assign(s,o)})}async function Rt(t,e,a,s,i={}){if(s){if(j(s)){await Promise.all(s.map(r=>Ss(t,e,a,r,i)));return}return Ss(t,e,a,s,i)}}var Dn=class extends Fs{get isLocalMode(){return Zt(this.method)}async inputHandle(t,e){return j(e)?e:this.input.handle(t,e)}async exec(t,e,a){if(e&&await Rt(this.entity,"change",t,e,a),this.method.actionType==="DELOGIC"){const i=Ne(this.method.appDELogicId,this.entity);if(!i)throw new m(this.method,"\u7F3A\u5C11\u5B9E\u4F53\u5904\u7406\u903B\u8F91");return Ns(i,t,e,a)}e&&!this.isLocalMode&&(e=await this.inputHandle(t,e)),e&&!["READ","GETDRAFT"].includes(this.method.actionMode)&&await Rt(this.entity,"change",t,e,a);let s;switch(this.method.codeName){case"Create":s=await this.create(t,e,a||{});break;case"Get":s=await this.get(t,a);break;case"GetDraft":s=await this.getDraft(t,a);break;case"Remove":s=await this.remove(t,a);break;case"Update":s=await this.update(t,e,a);break;case"CreateTemp":s=await this.createTemp(t,e);break;case"GetTemp":s=await this.getTemp(t,e);break;case"GetDraftTemp":s=await this.getDraftTemp(t,a);break;case"RemoveTemp":s=await this.removeTemp(t,e);break;case"UpdateTemp":s=await this.updateTemp(t,e);break;default:{let i=this.calcPath(t);if(this.method.needResourceKey){let n=t[this.entity.codeName.toLowerCase()];Ea(n)&&(n=j(e)?null:e?.[this.entity.keyAppDEFieldId]),i="".concat(i,"/").concat(n)}const r=await this.request(i,t,e,a);r.data=await this.result.handle(t,r.data),s=r}}return s.data&&await Rt(this.entity,"compute",t,s.data,a),s}async create(t,e,a){if(!e)throw new f("create\u884C\u4E3A\u6CA1\u6709\u4F20data");if(this.isLocalMode)return this.createTemp(t,this.createEntity(e));const s=this.calcPath(t),i=await this.app.net.post(s,e,a);return i.data=await this.result.handle(t,i.data),i}async remove(t,e){if(this.isLocalMode)return this.removeTemp(t,e);const a=this.calcPath(t);return await this.app.net.delete("".concat(a,"/").concat(t[this.entity.codeName.toLowerCase()]),e)}async update(t,e,a){if(!e)throw new f("update\u884C\u4E3A\u6CA1\u6709\u4F20data");if(this.isLocalMode)return this.updateTemp(t,this.createEntity(e));const s=this.calcPath(t),i=await this.app.net.put("".concat(s,"/").concat(t[this.entity.codeName.toLowerCase()]),e,a);return i.data=await this.result.handle(t,i.data),i}async get(t,e={}){if(this.isLocalMode)return this.getTemp(t,e);const a=this.calcPath(t),s=await this.app.net.get("".concat(a,"/").concat(t[this.entity.codeName.toLowerCase()]),e);return s.data=await this.result.handle(t,s.data),s}async getDraft(t,e){if(this.isLocalMode)return this.getDraftTemp(t,e);const a=this.calcPath(t),s=await this.app.net.get("".concat(a,"/getdraft"),e);return s.data=await this.result.handle(t,s.data),s}async createTemp(t,e){try{const a=await this.getService(),s=this.createEntity(e);let i;return j(s)?i=await Promise.all(s.map(r=>a.local.add(t,r))):i=await a.local.add(t,s),new L(i)}catch(a){return new L(a,500)}}async getDraftTemp(t,e){try{const a=this.createEntity({});return a?new L(a):new L(a,500)}catch(a){return new L(a,500)}}async removeTemp(t,e){try{let a=null;!a&&t&&(a=t[this.entity.codeName.toLowerCase()]);const i=(await this.getService()).local.delete(t,a);return i?new L(i):new L(i,500)}catch(a){return new L(a,500)}}async updateTemp(t,e){try{const a=await this.getService(),s=this.createEntity(e);let i;return j(s)?i=await Promise.all(s.map(r=>a.local.update(t,r))):i=await a.local.update(t,s),i?new L(i):new L(i,500)}catch(a){return new L(a,500)}}async getTemp(t,e){try{let a=null;!a&&t&&(a=t[this.entity.codeName.toLowerCase()]);const i=(await this.getService()).local.get(t,a);return i?new L(i):new L(i,500)}catch(a){return new L(a,500)}}async removeBatchTemp(t,e){return new L(!0)}},Rs=class extends Fs{get isLocalMode(){return Zt(this.method)}async exec(t,e,a){const s=e&&j(e)?e:a||{};if(this.isLocalMode){const n=await this.searchLocal(null,new Xr(t,s));return new L(n,200)}let i;switch(this.method.dataSetType){case"INDEXDE":case"CODELIST":case"MULTIFORM":i=await this.fetchCodeListSet(t,s);break;case"REMOTE":{const n=this.calcPath(t);i=await this.request(n,t,e,a)}break;default:throw new D(this.method,"\u6570\u636E\u6765\u6E90\u7C7B\u578B".concat(this.method.dataSetType,"\u6682\u672A\u652F\u6301"))}const r=i.data||[];return i.data=r.map(n=>this.createEntity(n)),i.data&&await Rt(this.entity,"compute",t,i.data,s),i}async selectLocal(t,e={}){let s=(await this.getService()).local.getList(t);s=De(s,"srfordervalue");const i={},r={},n={},o={};e.srfkey&&(i.srfkey=rt(e.srfkey),delete e.srfkey);for(const c in e)if(Object.prototype.hasOwnProperty.call(e,c)){const l=e[c];l==null?(r[c]=rt(null),n[c]=rt(void 0),o[c]=rt("")):i[c]=rt(l)}if(!T(i)){const c=gt(i),l=gt(r),h=gt(n),p=gt(o);s=s.filter(E=>{if(T(r)){if(c(E))return!0}else if(c(E)&&(l(E)||h(E)||p(E)))return!0;return!1})}return s.map(c=>c.clone())}async searchLocal(t,e,a=this.entity.quickSearchAppDEFieldIds){const s=await this.getService();let i=[];t?(i=s.local.getList(e.context),i.length>0&&(i=i.filter(l=>t.test(l,e)))):(i=await this.selectLocal(e.context),i.length>0&&e.query&&e.query!==""&&a&&(i=i.filter(l=>{const h=new RegExp(e.query);for(let p=0;p<a.length;p+=1){const E=a[p],C=l[E];if(h.test(C))return!0}return!1}))),!w(e.sortField)&&!T(e.sortField)&&(e.sortMode==="DESC"?i=Na(i,e.sortField):i=De(i,e.sortField));const{page:r,size:n}=e,o=r*n,u=(r+1)*n-1;return i.slice(o,u).map(l=>A(l))}async fetchCodeListSet(t,e){const{appCodeListId:a}=this.method;if(!a)throw new m(this.method,"\u6CA1\u6709\u6307\u5B9A\u6570\u636E\u6765\u6E90\u4EE3\u7801\u8868");const s=await this.app.codeList.get(a,t,e),{keyAppDEFieldId:i,majorAppDEFieldId:r}=this.entity,n=s.map(o=>({[i]:o.value,[r]:o.text}));return new L(n,200)}},wn=class extends Rs{mergeRequestPath(t,e){return"".concat(t,"/ac/").concat(e,"?srfac=ac")}},vn=d("DEService",class{constructor(t){this.model=t,this.methodMap=new Map,this.local=new jr,this.configCache=new $t(t.appId,"PSAppDataEntity",t.codeName),this.wf=new Yr(t),this.file=new qr(t)}getMethod(t,e=!1){const a=e?"ac-".concat(t):t;if(this.methodMap.has(a))return this.methodMap.get(a);const s=lt(this.model.appDEMethods,t);let i=null;switch(s.methodType){case"DEACTION":i=new Dn(this.model,s);break;case"FETCH":case"FETCHTEMP":e?i=new wn(this.model,s):i=new Rs(this.model,s);break;default:throw new D(s,"\u672A\u652F\u6301\u7684\u670D\u52A1\u65B9\u6CD5\u7C7B\u578B: ".concat(s.methodType))}return this.methodMap.set(a,i),i}exec(t,e,a,s){const i=this.getMethod(t);if(i)return i.exec(e,a,s);throw new f("".concat(this.model.codeName,"\u672A\u652F\u6301\u300C").concat(t,"\u300D\u65B9\u6CD5"))}getDraft(t,e,a){return this.exec("GetDraft",t,e,a)}create(t,e,a){return this.exec("Create",t,e,a)}get(t,e,a){return this.exec("Get",t,e,a)}update(t,e,a){return this.exec("Update",t,e,a)}remove(t,e,a){return this.exec("Remove",t,e,a)}fetchDefault(t,e,a){return this.exec("FetchDefault",t,e,a)}execAc(t,e,a,s={}){const i=this.getMethod(t,!0);if(i)return i.exec(e,a,s);throw new f("".concat(this.model.codeName,"\u672A\u652F\u6301\u300C").concat(t,"\u300D\u65B9\u6CD5"))}aiChatSse(t,e,a={},s={}){const i=ibiz.hub.getApp(this.model.appId),r=this.calcSsePath(e);return new Promise((n,o)=>{i.net.sse("/".concat(r),{srfactag:"AIChat",...a},{headers:{"Content-Type":"application/json"},body:JSON.stringify(s),onmessage:u=>{if(u.data){const c=JSON.parse(u.data);t(c)}},onclose:()=>{n()},onerror:u=>{o(u)}})})}aiChatHistory(t,e={},a={}){const s=ibiz.hub.getApp(this.model.appId),i=this.calcSsePath(t,!0);return s.net.post(i,a,{srfactag:"AIChat",...e})}calcSsePath(t,e=!1){const a=t[this.model.codeName.toLowerCase()],s="/".concat(this.model.codeName2.toLowerCase(),"/ssechatcompletion").concat(e?"/histories":"").concat(a?"/".concat(a):"");return Qt(t,this.model)+s}}),An=["srfkey","srfmajortext","srfmajorfield","srfkeyfield","tempsrfkey","srfuf","srfdeid","srfdecodename"],G=d("ControlVO",class ia{constructor(e={},a=new Map){Object.defineProperty(this,"$origin",{enumerable:!1,configurable:!0,value:e||{}}),Object.defineProperty(this,"$dataUIMap",{enumerable:!1,configurable:!0,value:a||new Map}),Object.defineProperty(this,"srfactionparam",{get(){return this.$origin.srfactionparam},set(s){this.$origin.srfactionparam=s},enumerable:!0,configurable:!0}),["srfkey","srfmajortext"].forEach(s=>{if(Object.prototype.hasOwnProperty.call(this.$origin,s))Object.defineProperty(this,s,{get(){return this.$origin[s]},set(i){this.$origin[s]=i},enumerable:!1,configurable:!0});else if(this.$dataUIMap.has(s)){const{dataKey:i}=this.$dataUIMap.get(s);Object.defineProperty(this,s,{get(){return this.$origin[i]},set(r){this.$origin[i]=r},enumerable:!1,configurable:!0})}else Object.defineProperty(this,s,{enumerable:!1,configurable:!0,writable:!0,value:null})}),Object.prototype.hasOwnProperty.call(this.$origin,"tempsrfkey")?Object.defineProperty(this,"tempsrfkey",{get(){return this.$origin.tempsrfkey},set(s){this.$origin.tempsrfkey=s},enumerable:!1,configurable:!0}):Object.defineProperty(this,"tempsrfkey",{enumerable:!1,configurable:!0,writable:!0,value:w(this.srfkey)?K():this.srfkey}),Object.defineProperty(this,"srfuf",{get(){return Object.prototype.hasOwnProperty.call(this.$origin,"srfuf")?this.$origin.srfuf:this.srfkey===this.tempsrfkey?1:0},enumerable:!1,configurable:!0}),["srfdeid","srfdecodename","srfkeyfield","srfmajorfield"].forEach(s=>{Object.defineProperty(this,s,{get(){return this.$origin[s]},enumerable:!1,configurable:!0})}),this.$dataUIMap.forEach((s,i)=>{const r=s.dataKey;this.linkProperty(i,r,s)}),Object.keys(e).forEach(s=>{Object.prototype.hasOwnProperty.call(this,s)||this.linkProperty(s,s)})}linkProperty(e,a,s){const i=s?s.isOriginField:!0;An.includes(e)||(i||Object.prototype.hasOwnProperty.call(this.$origin,e)?Object.defineProperty(this,e,{enumerable:!0,configurable:!0,get(){return this.$origin[a]},set(r){this.$origin[a]=r}}):Object.defineProperty(this,e,{enumerable:!0,configurable:!0,writable:!0,value:null}))}getOrigin(){return this.$origin}setOrigin(e){this.$origin=e instanceof ia?e.getOrigin():e}clone(){const e=A(this.$origin),a=new ia(e,this.$dataUIMap);return Object.keys(this).forEach(s=>{a[s]=this[s]}),a}}),ee=d("ControlService",class{constructor(t){this.dataUIMap=new Map,this.model=t}async init(t){this.app=ibiz.hub.getApp(t?.srfappid),this.initUIDataMap()}initUIDataMap(){}async exec(t,e,a,s){return await this.app.deService.exec(this.model.appDataEntityId,t,e,a,s)}handleResponse(t){return na(t)}toUIData(t){return new G(t,this.dataUIMap)}}),at=d("MDControlService",class extends ee{async fetch(t,e={}){var a;const s=((a=this.model.fetchControlAction)==null?void 0:a.appDEMethodId)||"fetchdefault";let i=await this.exec(s,t,e);return i=this.handleResponse(i),i}async get(t,e={}){var a;const s=((a=this.model.getControlAction)==null?void 0:a.appDEMethodId)||"get";let i=await this.exec(s,t,void 0,e);return i=this.handleResponse(i),i}async getDraft(t,e={}){var a;const s=((a=this.model.getDraftControlAction)==null?void 0:a.appDEMethodId)||"getdraft";let i=await this.exec(s,t,void 0,e);return i=this.handleResponse(i),i}async remove(t,e={}){var a;const s=((a=this.model.removeControlAction)==null?void 0:a.appDEMethodId)||"remove";return await this.exec(s,t,void 0,e)}async create(t,e){var a;const s=((a=this.model.createControlAction)==null?void 0:a.appDEMethodId)||"create";let i=await this.exec(s,t,e.getOrigin());return i=this.handleResponse(i),i}async update(t,e){var a;const s=((a=this.model.updateControlAction)==null?void 0:a.appDEMethodId)||"update";let i=await this.exec(s,t,e.getOrigin());return i=this.handleResponse(i),i}async exportData(t,e,a={}){throw new f("\u672A\u5B9E\u73B0")}handleResponse(t){const e=super.handleResponse(t);return e.headers&&(e.headers["x-page"]&&(e.page=Number(e.headers["x-page"])),e.headers["x-per-page"]&&(e.size=Number(e.headers["x-per-page"])),e.headers["x-total"]&&(e.total=Number(e.headers["x-total"]))),e.ok&&(kt(e.data)?e.data=e.data.map(a=>this.toUIData(a)):e.data=this.toUIData(e.data)),e}}),In=d("DeAuthorityService",class{constructor(t){this.entityModel=t}async calcByDataAccessAction(t,e){return!(e.srfopprivs&&!e.srfopprivs.includes(t)||!await this.calcByDeMainState(t,e))}async calcByDeMainState(t,e){let a=!0;const s=this.entityModel;if(!s.enableDEMainState)return ibiz.log.debug("".concat(s.codeName,"\u5B9E\u4F53\u4E0D\u5B58\u5728\u6216\u8005\u4E3A\u542F\u7528\u4E3B\u72B6\u6001\uFF0C\u8FD4\u56DEtrue")),a;ibiz.log.debug("\u64CD\u4F5C\u6807\u8BC6".concat(t,"\u4E3B\u72B6\u6001\u8BA1\u7B97\u5F00\u59CB"),e,s);const i=xa(s,e);if(i){ibiz.log.debug("\u5339\u914D\u4E3B\u72B6\u6001",i);const r=Va(i,s);ibiz.log.debug("\u5141\u8BB8\u7684\u4E3B\u72B6\u6001\u6743\u9650\u96C6\u5408",r),a=r.includes(t)}else ibiz.log.debug("\u6CA1\u5339\u914D\u4E3B\u72B6\u6001\uFF0C\u8FD4\u56DEfalse"),a=!1;return ibiz.log.debug("\u64CD\u4F5C\u6807\u8BC6".concat(t,"\u6743\u9650\u8BA1\u7B97\u7ED3\u675F\uFF1A").concat(a)),a}}),yn=d("AuthorityService",class{constructor(t){this.appModel=t,this.cache=new Map,this.constructorCache=new Map,this.resCodes=[],this.enablePermission=!1}register(t,e){this.constructorCache.set(t,e)}async getService(t){if(!this.cache.has(t)){const e=await ibiz.hub.getAppDataEntity(t,this.appModel.appId);if(!e)throw new f("\u672A\u627E\u5230\u5E94\u7528\u5B9E\u4F53[".concat(t,"]"));const a=this.constructorCache.get(t);let s;a?s=await a(e):s=new In(e),this.cache.set(t,s)}return this.cache.get(t)}async init(t=ibiz.appData){t&&(t.unires&&(this.resCodes=t.unires),t.enablepermissionvalid===!0&&ibiz.env.enablePermission&&(this.enablePermission=!0))}calcByResCode(t){return!this.enablePermission||this.resCodes.includes(t)}async calcByDataAccessAction(t,e,a){if(this.enablePermission){const r=await(await ibiz.hub.getApp(this.appModel.appId)).getOPPriv(t,a);if(this.enablePermission&&r?.mapSysUniResCode&&!this.calcByResCode(r.mapSysUniResCode))return!1}return e&&a?(await this.getService(a)).calcByDataAccessAction(t,e):!0}}),Fn=d("V7AuthService",class{async login(t,e){try{const a=await ibiz.net.post("/v7/login",{loginname:t,password:e}),{data:s}=a;if(s&&s.token){Ee(At.TOKEN,s.token,0,!0);const i=new Date().getTime()+(s.expirein||7199)*1e3;Ee(At.TOKEN_EXPIRES,"".concat(i),0,!0)}return!0}catch(a){ibiz.notification.error({title:"\u767B\u5F55\u5931\u8D25",desc:a.message||""})}return!1}async logout(){try{return await ibiz.net.get("/v7/logout"),ge(At.TOKEN),ge(At.TOKEN_EXPIRES),!0}catch(t){ibiz.notification.error({title:"\u767B\u51FA\u5931\u8D25",desc:t.message||""})}return!1}}),Pn=d("AsyncActionService",class{async fetch(t={}){const e=await ibiz.net.post("/portal/asyncaction/all",t);return w(e.data)&&(e.data=[]),e}async get(t){return await ibiz.net.get("/portal/asyncaction/".concat(t))}}),je=d("TreeNodeData",class{constructor(t,e,a){this.leaf=!1,this.leaf=a.leaf===!0,this.parent=e,this.parent&&(this.context={...this.parent.context}),a.navContext&&(this.context=Object.assign(this.context||{},a.navContext)),a.navParams&&(this.params={...a.navParams}),this.nodeId=t.id}calcIcon(t){const{sysImage:e}=t,a={};return e&&(e.cssClass&&(a.cssClass=e.cssClass),e.imagePath&&(a.imagePath=e.imagePath)),Object.values(a).length>0?a:void 0}}),bn=d("TreeCodeListNodeData",class extends je{constructor(t,e,a){super(t,e,a);const{data:s}=a;if(this.text=s.text,this.value=s.value,this.id=e?"".concat(e.id,":").concat(t.id,"@").concat(this.value):t.id+this.value,this.id=this.id.toLowerCase(),t.appDataEntityId){const i=O(t.appDataEntityId);this.context=Object.assign(this.context||{},{[i]:this.value})}this.srfkey=this.value,this.srfmajortext=this.text,this.icon=this.calcIcon(t)}}),Ls=d("TreeDataSetNodeData",class extends je{constructor(t,e,a){super(t,e,a);const{data:s}=a;if(this.deData=s,this.text=t.textAppDEFieldId?s[t.textAppDEFieldId]:s.srfmajortext,this.value=t.idAppDEFieldId?s[t.idAppDEFieldId]:s.srfkey,this.id=e?"".concat(e.id,":").concat(t.id,"@").concat(s.srfkey):t.id+s.srfkey,this.id=this.id.toLowerCase(),t.appDataEntityId){const i=O(t.appDataEntityId);this.context=Object.assign(this.context||{},{[i]:s.srfkey})}if(this.srfkey=this.deData.srfkey,this.srfmajortext=this.deData.srfmajortext,this.icon=this.calcIcon(t),this.textHtml=this.calcTextHtml(t),t.leafFlagAppDEFieldId){const i=s[t.leafFlagAppDEFieldId];this.leaf=[1,"1",!0,"true"].includes(i)}}calcIcon(t){const e=super.calcIcon(t)||{},{iconAppDEFieldId:a,detreeNodeDataItems:s}=t;a&&this.deData[a]&&(e.imagePath=this.deData[a]),e&&(this.icon=e);const i=s?.find(r=>r.id==="icon");return i&&(e.htmlStr=this.calcDataItemScript(i)),Object.values(e).length>0?e:void 0}calcDataItemScript(t){if(t.customCode&&t.scriptCode)return B.execScriptFn({data:this.deData},t.scriptCode,{isAsync:!1})}calcTextHtml(t){let e;const{detreeNodeDataItems:a}=t,s=a?.find(i=>i.id==="text");return s&&(e=this.calcDataItemScript(s)),e}}),Nn=d("TreeStaticNodeData",class extends je{constructor(t,e,a){var s,i;super(t,e,a);const r=t.nodeValue==="root"?void 0:t.nodeValue;if(this.id=e?"".concat(e.id,":").concat(t.id):t.id,this.id=this.id.toLowerCase(),this.text=t.text,this.value=r,e&&a.parentValueLevel){let n=e;for(let o=1;o<a.parentValueLevel;o++)n=n?.parent;n?.deData&&(this.deData=n.deData),this.value=r||n?.value}this.srfkey=((s=this.deData)==null?void 0:s.srfkey)||this.value,this.srfmajortext=((i=this.deData)==null?void 0:i.srfmajortext)||this.text,this.icon=this.calcIcon(t)}}),H=d("UIMapField",class{constructor(t,e,a={}){this.isOriginField=!1,this.isRequestNeed=!0,this.uiKey=t,this.dataKey=e,w(a.isOriginField)||(this.isOriginField=a.isOriginField),w(a.dataType)||(this.dataType=a.dataType)}convertVal(t){if(!this.dataType)return t;if(Bt.isNumber(this.dataType)){const e=!w(t)&&t!==""?Number(t):t;return Number.isNaN(e)?(ibiz.log.debug("".concat(t,"\u4E0D\u80FD\u8F6C\u6362\u6210\u6570\u5B57")),t):e}return t}}),Sn=d("CalendarItemData",class{constructor(t,e){this.model=t,this.data=e}get deData(){return this.data}get navId(){return"".concat(this.itemType,"@").concat(this.id)}get itemType(){return this.model.itemType}get bkColor(){const t=this.model.bkcolorAppDEFieldId;return t&&this.data[t]?this.data[t]:this.model.bkcolor}get beginTime(){const t=this.model.beginTimeAppDEFieldId;return t?this.data[t]:void 0}get color(){const t=this.model.colorAppDEFieldId;return t&&this.data[t]?this.data[t]:this.model.color}get content(){const t=this.model.contentAppDEFieldId;return t?this.data[t]:void 0}get endTime(){const t=this.model.endTimeAppDEFieldId;return t?this.data[t]:void 0}get icon(){const t=this.model.iconAppDEFieldId;return t?this.data[t]:void 0}get id(){const t=this.model.idAppDEFieldId;return t&&this.data[t]?this.data[t]:this.data.srfkey}get level(){const t=this.model.levelAppDEFieldId;return t?this.data[t]:void 0}get tag2(){const t=this.model.tag2AppDEFieldId;return t?this.data[t]:void 0}get tag(){const t=this.model.tagAppDEFieldId;return t?this.data[t]:void 0}get text(){const t=this.model.textAppDEFieldId;return t?this.data[t]:void 0}get tips(){const t=this.model.tipsAppDEFieldId;return t?this.data[t]:void 0}});function Rn(t,e){e.forEach(a=>{Object.prototype.hasOwnProperty.call(t,a)||Object.defineProperty(t,a,{enumerable:!0,configurable:!0,writable:!0,value:void 0})})}var Ln=["REGION","REGION2","REGION3","REGION4"],Tn=d("MapData",class{constructor(t,e){this._longitude=void 0,this._latitude=void 0,this._areaCode=void 0,this._tooltip=void 0,this._value=void 0,this._text=void 0,this._symbol=void 0;const{id:a,itemStyle:s,longitudeAppDEFieldId:i,latitudeAppDEFieldId:r,textAppDEFieldId:n,dataAppDEFieldId:o,tipsAppDEFieldId:u,sysImage:c}=e,l=new Map;return this._id=a+t.srfkey,this._itemStyle=s,this._mapItemId=a,Ln.includes(this._itemStyle)?i&&l.set("_areaCode",i):(i&&l.set("_longitude",i),r&&l.set("_latitude",r)),u&&l.set("_tooltip",u),n&&l.set("_text",n),o&&l.set("_value",o),c&&(this._symbol=c.rawContent||c.imagePath),new Proxy(this,{set(h,p,E){return Object.prototype.hasOwnProperty.call(t,p)?t[p]=E:l.has(p)?t[l.get(p)]=E:h[p]=E,!0},get(h,p,E){if(h[p]!==void 0)return h[p];if(l.has(p))return t[l.get(p)];if(t[p]!==void 0)return t[p]},ownKeys(h){const p=[...new Set([...Object.keys(h),...Object.keys(t)])];return Rn(h,p),p}})}});function Bn(t,e){e.forEach(a=>{Object.prototype.hasOwnProperty.call(t,a)||Object.defineProperty(t,a,{enumerable:!0,configurable:!0,writable:!0,value:void 0})})}var _n=d("PanelData",class{constructor(t,e){const a=new Et,s={},i={};return t.forEach(r=>{var n;s[r.id]=(n=r.viewFieldName)==null?void 0:n.toLowerCase(),r.viewFieldName&&(i[r.viewFieldName.toLowerCase()]=r.id)}),new Proxy(this,{set(r,n,o){return Object.prototype.hasOwnProperty.call(s,n)?s[n]?e[s[n]]=o:r[n]=o:e[n]=o,a.emit("change",n),s[n]&&s[n]!==n&&a.emit("change",s[n]),i[n]&&i[n]!==n&&a.emit("change",i[n]),!0},get(r,n,o){return n==="_evt"?a:s[n]?e[s[n]]:Object.prototype.hasOwnProperty.call(e,n)?e[n]:r[n]},ownKeys(r){const n=Object.keys(e);return Bn(r,n),n}})}destroy(){this._evt.reset()}});function On(t,e){e.forEach(a=>{Object.prototype.hasOwnProperty.call(t,a)||Object.defineProperty(t,a,{enumerable:!0,configurable:!0,writable:!0,value:void 0})})}var Mn=d("ChartData",class{constructor(t,e,a,s){return this._seriesModelId=e?.id,this._catalog=a,this._groupName=s,this._uuid=K(),new Proxy(this,{set(i,r,n){return Object.prototype.hasOwnProperty.call(t,r)?t[r]=n:i[r]=n,!0},get(i,r,n){if(i[r]!==void 0)return i[r];if(t[r]!==void 0)return t[r]},ownKeys(i){const r=[...new Set([...Object.keys(i),...Object.keys(t)])];return On(i,r),r}})}}),xn=d("MqttService",class{constructor(t,e,a){if(this.mqttTopic=t,this.token=e,this.appId=a,this.evt=new Et,this.options={connectTimeout:6e3,clientId:K(),username:"",password:"",keepalive:60,clean:!0},V(t)||V(e))throw new Error("mqttTopic or token is empty");this.options.username=t,this.options.password=e}async connect(){const t=await ra.import("mqtt/dist/mqtt.min"),e=t.default?t.default:t,{location:a}=window;this.client=e.connect("ws://".concat(a.host).concat(ibiz.env.baseUrl,"/").concat(this.appId).concat(ibiz.env.mqttUrl),this.options),this.client.on("connect",()=>{this.client.subscribe(this.mqttTopic),ibiz.log.debug("mqtt connect")}),this.client.on("error",s=>{ibiz.log.error("mqtt error",s)}),this.client.on("message",(s,i)=>{this.evt.emit("message",JSON.parse(i.toString())),ibiz.log.debug("mqtt message",s,i.toString())}),this.client.on("reconnect",()=>{ibiz.log.debug("mqtt reconnect")}),this.client.on("close",()=>{console.debug("mqtt close")})}close(){var t;(t=this.client)==null||t.end()}}),Vn=d("DEServiceUtil",class{constructor(t){this.appModel=t,this.cache=new Map,this.constructorCache=new Map}register(t,e){this.constructorCache.set(t,e)}async getService(t){if(!this.cache.has(t)){const e=await ibiz.hub.getAppDataEntity(t,this.appModel.appId);if(!e)throw new f("\u672A\u627E\u5230\u5E94\u7528\u5B9E\u4F53[".concat(t,"]"));const a=this.constructorCache.get(t);let s;a?s=await a(e):s=new vn(e),this.cache.set(t,s)}return this.cache.get(t)}clearTempCache(t){this.cache.forEach(e=>{e.local.clear(t)})}async exec(t,e,a,s,i){return(await this.getService(t)).exec(e,a,s,i)}}),Ts=class ai{constructor(){ibiz.commands.register(ai.TAG,this.exec.bind(this))}async exec(e,a,s={},i={}){const r=A(a),n=await ibiz.hub.config.view.get(e);if(!n)throw new f("\u5E94\u7528\u89C6\u56FE[".concat(e,"]\u4E0D\u5B58\u5728"));if((r.srfkey||s.srfuf===0)&&n.appDataEntityId){const u=O(n.appDataEntityId);r.srfkey&&(r[u]=r.srfkey,r.srfkey=void 0),s.srfuf===0&&(r[u]=void 0,delete s.srfuf)}if(n.redirectView){const u=await ibiz.hub.getAppView(e);return Ya(u,r,s,i)}const{openMode:o="INDEXVIEWTAB"}=n;switch(i.openMode||o){case"INDEXVIEWTAB":return i.noWaitRoute?(this.openIndexViewTab(n,r,s),{ok:!0}):this.openIndexViewTab(n,r,s);case"POPUP":throw new D(n,"\u672A\u652F\u6301\u7684\u89C6\u56FE\u6253\u5F00\u6A21\u5F0F: POPUP");case"POPUPMODAL":return this.openModal(n,r,s);case"POPUPAPP":throw new D(n,"\u672A\u652F\u6301\u7684\u89C6\u56FE\u6253\u5F00\u6A21\u5F0F: POPUPAPP");case"POPOVER":return this.openPopover(n,i.event,r,s);case"DRAWER_LEFT":case"DRAWER_RIGHT":case"DRAWER_TOP":case"DRAWER_BOTTOM":return this.openDrawer(n,r,s);case"USER":return this.openUserCustom(n,r,s);default:return this.openIndexViewTab(n,r,s)}}openIndexViewTab(e,a,s={}){return ibiz.openView.root(e.id,a,s)}async openModal(e,a,s={}){return ibiz.openView.modal(e.id,a,s)}async openPopover(e,a,s,i={}){if(!a)throw new f("\u6C14\u6CE1\u6253\u5F00\u7F3A\u5C11event");return ibiz.openView.popover(e.id,a,s,i)}async openDrawer(e,a,s={}){return ibiz.openView.drawer(e.id,a,s)}async openUserCustom(e,a,s={}){return ibiz.openView.custom(e.id,a,s)}};Ts.TAG="ibiz.app-view.open";var Z=d("OpenAppViewCommand",Ts),Bs=class si{constructor(){ibiz.commands.register(si.TAG,this.exec.bind(this))}async exec(e,a,s={},i={}){const r=ibiz.hub.getApp(a.srfappid).getAppFunc(e);if(!r)throw new f("\u627E\u4E0D\u5230\u53EB".concat(e,"\u7684\u5E94\u7528\u529F\u80FD"));const{navigateContexts:n,navigateParams:o,appFuncType:u}=r,c=a.clone();Object.assign(c,y(n,s,a));const l=y(o,s,a);switch(u){case"APPVIEW":return this.openAppView(r,c,l,i);case"OPENHTMLPAGE":return this.openHtmlPage(r);case"PDTAPPFUNC":return this.openPdAppFunc(r,c,l);case"JAVASCRIPT":return this.executeJavaScript(r,c,l);case"CUSTOM":return this.custom(r,c,l);default:throw new D(r,"\u672A\u652F\u6301\u7684\u5E94\u7528\u529F\u80FD\u7C7B\u578B: ".concat(u))}}async openAppView(e,a,s,i){if(!e.appViewId)throw new f("\u5E94\u7528\u89C6\u56FE[".concat(e.appViewId,"]\u4E0D\u5B58\u5728"));return ibiz.commands.execute(Z.TAG,e.appViewId,a,s,i)}openHtmlPage(e){const a=e.htmlPageUrl;window.open(a,"_blank")}openPdAppFunc(e,a,s){throw ibiz.log.warn("openPdAppFunc",e,a,s),new f("\u672A\u5B9E\u73B0")}executeJavaScript(e,a,s){throw ibiz.log.warn("executeJavaScript",e,a,s),new f("\u672A\u5B9E\u73B0")}custom(e,a,s){throw ibiz.log.warn("custom",e,a,s),new f("\u672A\u5B9E\u73B0")}};Bs.TAG="ibiz.app-func.exec";var Ke=d("AppFuncCommand",Bs);function _s(){new Ke,new Z}var kn=d("Application",class{constructor(t){this.model=t,this.deName2DeCodeName=new Map,this.net=new oa({baseURL:"".concat(ibiz.env.baseUrl,"/").concat(t.appId)}),this.configCache=new $t(t.appId,"PSSysApp",t.codeName),this.deService=new Vn(t),this.codeList=new Hr(t),this.authority=new yn(t)}get appId(){return this.model.appId}async init(){await this.authority.init(),await this.loadAppModelStyle(),ibiz.env.enableMqtt&&ibiz.appData&&(this.mqtt=new xn(ibiz.appData.mqtttopic,ua(),this.model.appId),this.mqtt.evt.on("message",t=>{ibiz.mc.command.asyncAction.next(t)}),await this.mqtt.connect())}async loadAppModelStyle(){const t=await ibiz.hub.getAppStyle(this.appId);if(t){const e=document.createElement("style");e.setAttribute("type","text/css"),e.id=this.appId,e.innerHTML=t,document.head.appendChild(e)}}getAppFunc(t){return(this.model.appFuncs||[]).find(s=>s.id===t)||null}async getUIAction(t){const[,e]=t.split("@");if(e){const s=(await ibiz.hub.getAppDataEntity(e,this.model.appId)).appDEUIActions.find(i=>i.id===t);if(s)return s}return this.model.appDEUIActions.find(a=>a.id===t)}async getOPPriv(t,e){var a,s;let i=(a=this.model.deopprivs)==null?void 0:a.find(r=>r.name===t);return!i&&e&&(i=(s=(await ibiz.hub.getAppDataEntity(e,this.model.appId)).deopprivs)==null?void 0:s.find(n=>n.name===t)),i}async getDEUILogic(t,e){return(await ibiz.hub.getAppDataEntity(e,this.model.appId)).appDEUILogics.find(s=>s.id===t)}}),Wn=class{parse(t){return t}},Un=class{constructor(){this.appMenu=new Wn}},zn=class{constructor(){this.viewConfigs=new Map}has(t){return this.viewConfigs.has(t)}set(t,e){this.viewConfigs.set(t,e)}async get(t){if(!this.viewConfigs.has(t)){const e=await ibiz.hub.getAppView(t);if(!e)throw new f("\u89C6\u56FE[".concat(t,"]\u4E0D\u5B58\u5728"));this.set(e.id,{id:e.id,codeName:e.codeName,openMode:e.openMode,viewType:e.viewType,width:e.width,height:e.height,appDataEntityId:e.appDataEntityId,redirectView:e.redirectView})}return this.viewConfigs.get(t)}getSync(t){return this.viewConfigs.has(t)?this.viewConfigs.get(t):null}},Gn=class{constructor(){this.view=new zn}},jn=d("FormNotifyState",(t=>(t.LOAD="LOAD",t.DRAFT="DRAFT",t.SAVE="SAVE",t))(jn||{})),Kn=d("GridNotifyState",(t=>(t.LOAD="LOAD",t.DRAFT="DRAFT",t.SAVE="SAVE",t))(Kn||{})),Xn=d("PanelNotifyState",(t=>(t.LOAD="LOAD",t.DRAFT="DRAFT",t.SAVE="SAVE",t))(Xn||{})),Os=d("Counter",class{constructor(t){this.callback=t,this.count=0,this.state="Unused",this.reusable=!0}increment(){return this.state==="Used"?this.count:(this.count+=1,this.count)}decrement(t){if(this.state!=="Used"){if(this.count===0)throw new f("\u9519\u8BEF\u7684\u8C03\u7528\uFF01decrement\u4E0D\u80FD\u5BF9count\u4E3A0\u8C03\u7528");this.count-=1,this.count===0&&(t?t():this.callback&&this.callback(),this.reusable||(this.state="Used"))}}destroy(){this.callback=void 0}}),Hn=d("LoadingState",class{constructor(){this.isLoading=!1,this.counter=new Os(ca)}begin(){this.isLoading=!0,this.counter.increment()}end(){this.counter.decrement(()=>{this.isLoading=!1})}}),Yn=d("CTXState",class{}),qn=d("CTX",class{constructor(t){this.parent=t,this.isDestroyed=!1,this.evt=new Et(3e3),this.controllersMap=new Map,this.state=new Yn}async init(t){this.view=t,this.registerController(t.model.name,t)}destroy(){this.controllersMap.clear(),this.view=null,this.state=null,this.isDestroyed=!0}async setState(t){Object.assign(this.state,t)}startLoading(){this.view.startLoading()}endLoading(){this.isDestroyed||this.view.endLoading()}registerController(t,e){this.controllersMap.set(t,e),this.evt.emit("onRegister",t,e)}getController(t,e=!1){if(this.controllersMap.has(t))return this.controllersMap.get(t);if(this.parent&&e)return this.parent.getController(t)}getTopView(){return this.parent?this.view.modal.routeDepth===2?this.view:this.parent.getTopView():this.view}}),Qn=d("ActivityCounter",class extends Os{constructor(){super(...arguments),this.reusable=!1,this.registration=new Map}enroll(t){this.state==="Unused"&&!this.registration.has(t)&&(this.registration.set(t,!1),this.increment())}attend(t){this.registration.has(t)&&this.registration.get(t)===!1&&(this.registration.set(t,!0),this.decrement())}}),pt=d("UIActionButtonState",class{constructor(t,e,a){this.disabled=!1,this.visible=!0,this.loading=!1,this.permitted=!0,this.noPermissionHidden=!0,this.noDataDisabled=!1,this.isInit=!1,this.name=t,this.uiActionId=a,this.appId=e}async init(){if(!this.uiActionId){this.isInit=!0;return}const t=await zt(this.uiActionId);if([,this.appDeName]=this.uiActionId.split("@"),!t)return;const{dataAccessAction:e,noPrivDisplayMode:a,actionTarget:s,uiactionMode:i,uiactionTag:r}=t;this.dataAccessAction=e,a===1?this.noPermissionHidden=!1:a===6&&(this.visible=!1),(s&&s!=="NONE"||i==="SYS"&&["Save","SaveAndExit","SaveAndNew","Edit","Remove","RemoveAndExit"].includes(r))&&(this.noDataDisabled=!0),this.isInit=!0}async calcPermission(t,e){if(!this.dataAccessAction)return;const a=await ibiz.hub.getApp(this.appId);this.appDeName&&e&&!e.includes(this.appDeName)&&ibiz.log.warn("".concat(this.uiActionId,"\u754C\u9762\u884C\u4E3A\u7684\u5B9E\u4F53").concat(this.appDeName,"\u548C\u6570\u636E\u7684\u5B9E\u4F53").concat(e,"\u4E0D\u4E00\u81F4")),this.permitted=await a.authority.calcByDataAccessAction(this.dataAccessAction,t,e)}async update(t,e){this.isInit||await this.init(),await this.calcPermission(t,e),this.permitted?(this.visible=!0,this.disabled=this.noDataDisabled&&!t):(this.disabled=!0,this.visible=!this.noPermissionHidden)}}),ft=d("ButtonContainerState",class{constructor(){Object.defineProperty(this,"children",{enumerable:!1,configurable:!0,writable:!0,value:[]}),Object.defineProperty(this,"visible",{enumerable:!0,configurable:!0,get:()=>this.children.length===0?!1:!!this.children.find(t=>t.visible)})}addState(t,e){Object.defineProperty(this,t,{enumerable:!0,configurable:!0,writable:!0,value:e}),this.children.push(e)}setLoading(t){this.children.forEach(e=>{e.setLoading?e.setLoading(t):e.loading=t?e.name===t:!1})}async update(t,e){await Promise.all(this.children.map(a=>a.update(t,e)))}}),$n=d("QXEventEx",class extends Et{constructor(){super(...arguments),this.anyEventFns=[]}onAll(t){this.anyEventFns.includes(t)||this.anyEventFns.push(t)}emit(t,...e){super.emit(t,...e),this.anyEventFns.forEach(a=>{a(t,...e)})}async asyncEmit(t,...e){const a=super.asyncEmit(t,...e),s=this.anyEventFns.map(o=>o(t,...e)),i=Promise.all(s),r=await a,n=await i;return r.concat(...n)}reset(){super.reset(),ba(this.anyEventFns)}}),Jn=d("ControllerEvent",class{constructor(t){this.getBaseArgs=t,this.isDestroyed=!1,this.evt=new $n}async emit(t,e){this.isDestroyed||await this.evt.asyncEmit(t,{...this.getBaseArgs(),eventName:t,...e||{}})}on(t,e){this.isDestroyed||this.evt.on(t,e)}off(t,e){this.isDestroyed||this.evt.off(t,e)}onAll(t){this.isDestroyed||this.evt.onAll(t)}destroy(){this.getBaseArgs=void 0,this.evt.reset(),this.isDestroyed=!0}});function Xe(t){return window.location.hash.split("/").length>t*2+2}function ae(t,e){return(w(t)||t==="")&&(w(e)||e==="")?!1:t!==e}function Ms(t){let e=Array.isArray(t)?t[0]:t;return e&&e instanceof G&&(e=e.getOrigin()),e}function He(t,e,a){const s=[];return t.forEach(i=>{const{valueRuleType:r}=i,n=i.sysValueRule,o=i.defvalueRule;if(r==="SYSVALUERULE"&&n)n.ruleType==="REG"?s.push({pattern:new RegExp(n.regExCode),message:n.ruleInfo,trigger:"change blur"}):n.ruleType==="SCRIPT"&&s.push({validator:(u,c,l,h)=>{if(!c)return!0;try{B.execScriptFn({rule:u,value:c,callback:l,source:h},n.scriptCode,{isAsync:!1})}catch(p){return console.error(p),!1}return!0},trigger:"change blur"});else if(r==="DEFVALUERULE"&&o){const u=a||e;s.push({validator:(c,l,h,p)=>{if(V(p[u]))return!0;const{isPast:E,infoMessage:C}=Be(u,p,o.groupCond);return E||h(new f(C||o.ruleInfo)),!0},trigger:"change blur"})}}),s}function Ye(t){const e=[],{maxLength:a,minLength:s}=t,{maxValue:i,minValue:r}=t;return a&&e.push({validator:(n,o,u)=>{if(!w(o)&&o.length>a)u(new Error("\u5185\u5BB9\u957F\u5EA6\u5FC5\u987B\u5C0F\u4E8E\u7B49\u4E8E".concat(a,",\u5F53\u524D\u957F\u5EA6\u4E3A").concat(o.length)));else return!0}}),s&&e.push({validator:(n,o,u)=>{if(!w(o)&&o.length<s)u(new Error("\u5185\u5BB9\u957F\u5EA6\u5FC5\u987B\u5927\u4E8E\u7B49\u4E8E".concat(s,",\u5F53\u524D\u957F\u5EA6\u4E3A").concat(o.length)));else return!0}}),w(i)||e.push({validator:(n,o,u)=>{if(!w(o)&&Ce(o)&&o>i)u(new Error("\u503C\u5FC5\u987B\u5C0F\u4E8E\u7B49\u4E8E".concat(i)));else return!0}}),w(r)||e.push({validator:(n,o,u)=>{if(!w(o)&&Ce(o)&&o<r)u(new Error("\u503C\u5FC5\u987B\u5927\u4E8E\u7B49\u4E8E".concat(r)));else return!0}}),e}var Zn=d("ValueExUtil",class{static mergeDefault(t){return ve(t,{textSeparator:",",valueSeparator:","})}static toText(t,e){if(w(e)||e==="")return"";const{valueType:a,objectNameField:s,textSeparator:i}=this.mergeDefault(t);if(["OBJECTS","OBJECT"].includes(a)){if(!s)throw new f("\u7F3A\u5C11objectNameField");const r=s.toLowerCase();return a==="OBJECTS"?e.map(n=>n[r]||"---").join(i):e[r]}return a==="SIMPLES"?e.join(i):"".concat(e)}});function qe(t,e){var a;const{name:s,valueType:i,defaultValue:r,valueFormat:n}=t,{data:o,context:u,params:c}=e;if(w(i)&&w(r))return;if(i==="RESET")return null;const l=o[s];if(!Ae(l)){if(!i&&r)return r;switch(i){case"APPDATA":if(Object.prototype.hasOwnProperty.call(c,r))return c[r];if(Object.prototype.hasOwnProperty.call(u,r))return u[r];break;case"OPERATORNAME":return u.srfusername;case"OPERATOR":return u.srfuserid;case"CURTIME":return S().format(n);case"PARAM":return o[r];case"SESSION":case"APPLICATION":if(!((a=ibiz.appData)!=null&&a.context))throw new f("appdata.context\u4E0D\u5B58\u5728");return ibiz.appData.context[r];case"CONTEXT":return c[r];case"UNIQUEID":return K();default:throw new D({},"\u9ED8\u8BA4\u503C\u7C7B\u578B[".concat(i,"]\u672A\u652F\u6301"))}}}var to="asyncimportdata2",eo="importdata2";function ao(t){return new Promise(e=>{const a=s=>{const i=s.messageid||s.data.asyncacitonid;if(t!==i)return;const r=s.data.actionstate;(r===30||r===40)&&(e(),ibiz.mc.command.asyncAction.off(a))};ibiz.mc.command.asyncAction.on(a)})}async function so(t,e,a){const s=new FormData;s.append("file",t);let i="".concat(e.codeName2.toLowerCase(),"/").concat(to);a?.codeName&&(i+="?srfimporttag=".concat(a.codeName));const r=await ibiz.net.request(i,{method:"post",data:s,headers:{"Content-Type":"multipart/form-data"}});await ao(r.data.asyncacitonid),ibiz.mc.command.send({srfdecodename:e.codeName},"OBJECTCREATED")}async function io(t,e,a){const s=new FormData;s.append("file",t);let i="".concat(e.codeName2.toLowerCase(),"/").concat(eo);return a?.codeName&&(i+="?srfimporttag=".concat(a.codeName)),(await ibiz.net.request(i,{method:"post",data:s,headers:{"Content-Type":"multipart/form-data"}})).data}async function xs(t,e,a){if(!ibiz.util.getExcelUtil)throw new f("ibiz.util.getExportExcel\u4E0D\u5B58\u5728");const s=await ibiz.util.getExcelUtil();if(!s)throw new f("\u5BFC\u51FA\u6A21\u5757\u52A0\u8F7D\u9519\u8BEF");try{return s.exportJsonToExcel({header:t,data:e,filename:a,autoWidth:!0}),{ok:!0}}catch{return{ok:!1}}}var Qe="__self",Vs=d("BaseController",class{constructor(t,e,a,s){this.model=t,this.context=e,this.params=a,this.ctx=s,this.state={},this.name="",this.evt=new Jn(this.getEventArgs.bind(this)),this.mountCounter=new Qn(this.mounted.bind(this)),this.childNames=[],this.name=t.name||t.id,this.initState()}get _evt(){return this.evt}initState(){this.state.isCreated=!1,this.state.isMounted=!1,this.state.isDestroyed=!1}getEventArgs(){return{context:this.context,params:this.params,data:[],targetName:this.model.name,view:this.ctx.view}}async created(){this.mountCounter.enroll(Qe),await this.onCreated(),this.state.isCreated=!0,this.force(()=>{this.mountSelf()}),ibiz.log.debug("".concat(this.constructor.name,":").concat(this.name," onCreated")),this._evt.emit("onCreated",void 0)}async onCreated(){this.ctx.evt.on("onForecast",t=>{this.childNames.includes(t)&&this.mountCounter.enroll(t)}),this.ctx.evt.on("onRegister",(t,e)=>{this.childNames.includes(t)&&e.evt.on("onMounted",()=>{this.mountCounter.attend(t)})})}async mountSelf(){this.mountCounter.registration.get(Qe)||this.mountCounter.attend(Qe)}async mounted(){await this.onMounted(),this.state.isMounted=!0,ibiz.log.debug("".concat(this.constructor.name,":").concat(this.name," onMounted")),this._evt.emit("onMounted",void 0)}async onMounted(){}async destroyed(){await this.onDestroyed(),this.state.isDestroyed=!0,ibiz.log.debug("".concat(this.constructor.name,":").concat(this.name," onDestroyed")),await this._evt.emit("onDestroyed",void 0),this.evt.destroy()}async onDestroyed(){}force(t){}getController(t,e=!1){return this.ctx.getController(t,e)}getTopView(){return this.ctx.getTopView()}listenNewController(t){this.ctx.evt.on("onRegister",t)}}),ro=class ii{constructor(e){this.msgGroupId=e,this.viewMsgMap=new Map}async init(e){var a,s;const i=ibiz.hub.getApp(e.srfappid).model,r=(a=i.appViewMsgGroups)==null?void 0:a.find(o=>o.id===this.msgGroupId);if(!r)throw new f("\u627E\u4E0D\u5230\u89C6\u56FE\u6D88\u606F\u7EC4".concat(this.msgGroupId,"\u7684\u6A21\u578B"));this.msgGroup=r;const n=r.appViewMsgGroupDetails.map(o=>o.appViewMsgId);if((s=i.appViewMsgs)==null||s.forEach(o=>{const u=n.indexOf(o.id);u!==-1&&(this.viewMsgMap.set(o.id,o),n.splice(u,1))}),n.length)throw new f("\u6CA1\u6709\u627E\u5230".concat(n.join(","),"\u89C6\u56FE\u6D88\u606F\u6A21\u578B"))}getDeFieldName(e,a){var s,i;if(a)return(i=(s=wt(e,a))==null?void 0:s.name)==null?void 0:i.toLowerCase()}static async fetchDataSet(e,a,s){const{appDataEntityId:i,appDEDataSetId:r}=e;if(!r)throw new m(e,"\u672A\u914D\u7F6E\u5B9E\u4F53\u6570\u636E\u96C6");const n=await ibiz.hub.getApp(a.srfappid).deService.exec(i,r,a,s);return n.data.length?n.data:[]}async calcViewMessages(e,a){const s=this.msgGroup.appViewMsgGroupDetails,i=[];return s?.length&&await Promise.all(s.map(async r=>{if(this.viewMsgMap.get(r.appViewMsgId).dynamicMode===1){const o=await this.calcDynaMsgs(r,e,a);i.push(...o)}else{const o=this.calcStaticMsg(r);i.push(o)}})),i}calcStaticMsg(e){const{position:a}=e,s=this.viewMsgMap.get(e.appViewMsgId),{title:i,message:r,removeMode:n,position:o,messageType:u}=s,{userTag:c,userTag2:l,userTag3:h,userTag4:p}=s;return{title:i,message:r,position:a||o,messageType:u,removeMode:n,extraParams:{userTag:c,userTag2:l,userTag3:h,userTag4:p}}}async calcDynaMsgs(e,a,s){const i=this.viewMsgMap.get(e.appViewMsgId),{appDataEntityId:r,orderValueAppDEFieldId:n,titleAppDEFieldId:o,removeFlagAppDEFieldId:u,msgTypeAppDEFieldId:c,contentAppDEFieldId:l,msgPosAppDEFieldId:h}=i;if(!r)throw new m(i,"\u672A\u914D\u7F6E\u5E94\u7528\u5B9E\u4F53");const p=await ibiz.hub.getAppDataEntity(r,a.srfappid),E={...s},C=this.getDeFieldName(p,n);C&&(E.sort="".concat(C,",asc"));const F=await ii.fetchDataSet(i,a,E);if(!F.length)return[];const v=this.calcStaticMsg(e),P=this.getDeFieldName(p,o),b=this.getDeFieldName(p,h),I=this.getDeFieldName(p,l),R=this.getDeFieldName(p,c),z=this.getDeFieldName(p,u);return F.map(N=>{const et={};return b&&!w(N[b])&&(et.position=N[b]),P&&!w(N[P])&&(et.title=N[P]),I&&!w(N[I])&&(et.message=N[I]),R&&!w(N[R])&&(et.messageType=N[R]),z&&!w(N[z])&&(et.removeMode=N[z]),we(v,et)})}},ks=d("ViewController",class extends Vs{constructor(t,e,a,s){const i=ibiz.util.layoutPanel.fill(t);super(i,Tt.create({},e),a||{},new qn(s)),this.session={},this.modal=new wr({}),this.providers={},this.engines=[],this.slotProps={},this.counters={},this.viewLoading=new Hn,this.isCloseView=!1,this._isActive=!0,s&&s.registerController(this.model.name,this),this.ctx.init(this),this.initEngines()}get _evt(){return this.evt}get parentView(){var t;return(t=this.ctx.parent)==null?void 0:t.view}get isActive(){return this._isActive}onActivated(){this._isActive=!0,ibiz.log.debug("\u89C6\u56FE[".concat(this.model.name,"](").concat(this.model.id,")\u6FC0\u6D3B"))}onDeactivated(){this._isActive=!1,ibiz.log.debug("\u89C6\u56FE[".concat(this.model.name,"](").concat(this.model.id,")\u6682\u505C"))}initEngines(){const t=ja(this.model);if(t.length)t.forEach(e=>{const a=ibiz.engine.getEngine(e,this);a?this.engines.push(a):ibiz.log.warn("\u672A\u627E\u5230\u89C6\u56FE\u5F15\u64CE\u5B9E\u73B0\uFF1A",e)});else{const e=ibiz.engine.getEngine({engineCat:"VIEW",engineType:this.model.viewType},this);e&&this.engines.push(e)}}async initCounters(){const t=this.model.viewLayoutPanel,{appCounterRefs:e}=t;if(e&&e.length>0)try{await Promise.all(e.map(async a=>{const s=await Is.getCounterByRef(a,this.context);this.counters[a.id]=s}))}catch(a){console.error(a)}}initState(){super.initState(),this.state.isLoading=!1,this.state.caption=this.model.caption,this.state.srfactiveviewdata=null,this.state.viewMessages={}}async onCreated(){await super.onCreated(),this.modal.hooks.beforeDismiss.tapPromise(async i=>{Ae(this.state.closeOK)&&(i.ok=this.state.closeOK),await this._evt.emit("onCloseView",{...i})}),this._evt.emit("onViewInfoChange",{caption:this.model.caption,title:this.model.title}),this.handleContextParams();const t=this.model.viewLayoutPanel;this.childNames.push(t.name);const e=await dt(t);this.providers[t.name]=e;const a=za(this.model);a&&await Promise.all(a.map(async i=>{const r=await dt(i);this.providers[i.name||i.id]=r})),await this.initCounters();const s=Ga(this.model);s.length&&(this.scheduler=ibiz.scheduler.createViewScheduler(s),this.scheduler.defaultParamsCb=()=>this.getEventArgs(),this.scheduler.hasViewEventTrigger&&this.evt.onAll((i,r)=>{this.scheduler.triggerViewEvent(r)})),this.initViewMsg(),this.engines.length&&await Promise.all(this.engines.map(i=>i.onCreated()))}async onMounted(){var t;await super.onMounted(),this.engines.length&&await Promise.all(this.engines.map(e=>e.onMounted())),(t=this.scheduler)==null||t.startTimerTrigger()}async onDestroyed(){await super.onDestroyed(),this.engines.length&&await Promise.all(this.engines.map(t=>t.onDestroyed())),this.ctx.destroy(),this.context.destroy(),this.engines=[],this.scheduler&&this.scheduler.destroy(),ibiz.log.debug("\u89C6\u56FE[".concat(this.model.name,"](").concat(this.model.id,")\u9500\u6BC1"))}handleContextParams(){this.context.srfappid=this.model.appId,(w(this.context.srfsessionid)||T(this.context.srfsessionid))&&(this.context.srfsessionid=K());const t=this.model.appViewNavContexts;let e={};x(t)&&(e=y(t,this.params,this.context)),Object.assign(this.context,e);const a=this.model.appViewNavParams;let s={};x(a)&&(s=y(a,this.params,this.context)),Object.assign(this.params,s),this.state.isMounted&&this.callUIAction("Refresh")}async call(t,e){let a;for(const s of this.engines)if(a=await s.call(t,e),a!==void 0)break;return a}async callUIAction(t,e){const a=this.call(t,e);if(a===void 0)throw new f("\u6CA1\u6709\u5F15\u64CE\u652F\u6301\u9884\u7F6E\u754C\u9762\u884C\u4E3A".concat(t));return a}async closeView(t={ok:!1,data:[]}){await this.modal.dismiss(t)}startLoading(){this.viewLoading.begin(),this.state.isLoading=this.viewLoading.isLoading}endLoading(){this.viewLoading.end(),this.state.isLoading=this.viewLoading.isLoading}setLayoutPanel(t){var e;this.layoutPanel=t,this.layoutPanel.state.isMounted?this.mountCounter.attend(this.layoutPanel.model.name):this.layoutPanel.evt.on("onMounted",()=>{this.mountCounter.attend(this.layoutPanel.model.name)}),(e=this.scheduler)!=null&&e.hasControlEventTrigger&&t.evt.on("onControlEvent",a=>{this.scheduler.triggerControlEvent(a.triggerControlName,a.triggerEventName,a.triggerEvent)})}async initViewMsg(){const{appViewMsgGroupId:t}=this.model;t&&(this.state.viewMessages={TOP:[],BOTTOM:[],BODY:[],POPUP:[]},this.viewMsgController=new ro(t),await this.viewMsgController.init(this.context),(await this.viewMsgController.calcViewMessages(this.context,this.params)).forEach(a=>{["TOP","BOTTOM","BODY","POPUP"].includes(a.position)&&this.state.viewMessages[a.position].push(a)}),this.state.viewMessages.POPUP.length&&this.alertViewMessage(this.state.viewMessages.POPUP))}async alertViewMessage(t){const[e,...a]=t,s={title:e.title,desc:e.message};e.extraParams.userTag&&Object.assign(s,{confirmButtonText:e.extraParams.userTag}),e.messageType==="WARN"?await ibiz.modal.warning(s):e.messageType==="ERROR"?await ibiz.modal.error(s):await ibiz.modal.info(s),a.length&&this.alertViewMessage(a)}}),Qu=d("MobViewController",class extends ks{}),$u=d("WFStepTraceViewController",class extends ks{initState(){super.initState(),this.state.historyData=null}async onCreated(){var t;await super.onCreated();const e=ibiz.hub.getApp(this.context.srfappid);if((t=this.ctx.parent)!=null&&t.view.model.appDataEntityId){const a=await e.deService.getService(this.ctx.parent.view.model.appDataEntityId),s=Object.assign(this.context.clone(),this.params),i=await a.wf.getWFHistory(s);i.data&&(this.state.historyData=i.data)}}}),no=d("EditorController",class{constructor(t,e){this.style={},this.placeHolder="",this.editorParams={},this.model=t,this.parent=e,this.context=e.context,this.params=e.params}get readonly(){return!!this.model.readOnly}async init(){await this.onInit()}async onInit(){if(this.model.placeHolder&&(this.placeHolder=this.model.placeHolder),this.model.editorParams&&Object.keys(this.model.editorParams).forEach(t=>{this.editorParams[t]=this.model.editorParams[t]}),this.model.editorWidth){const t=this.model.editorWidth;t>0&&t<=1?this.style.width="".concat(t*100,"%"):this.style.width="".concat(t,"px")}if(this.model.editorHeight){const t=this.model.editorHeight;t>0&&t<=1?this.style.height="".concat(t*100,"%"):this.style.height="".concat(t,"px")}}handlePublicParams(t,e,a){const{navigateContexts:s,navigateParams:i}=this.model;let r={};s&&t&&(r=y(s,t,a,e));const n=Object.assign(e.clone(),r);let o={};return i&&t&&(o=y(i,t,a,e)),{context:n,params:o}}toObj(t){return t?new Function("return (".concat(t,");"))():void 0}toBoolean(t){return Object.is("true",t)}}),Ju=d("CodeListEditorController",class extends no{async loadCodeList(t){const{context:e,params:a}=this.handlePublicParams(t,this.context,this.params);if(this.model.appCodeListId){const s=await ibiz.hub.getApp(this.context.srfappid);let i=[];return i=await s.codeList.get(this.model.appCodeListId,e,a),i}throw new m(this.model,"\u7F16\u8F91\u5668\u7C7B\u578B[".concat(this.model.editorType,"]\uFF0C\u672A\u914D\u7F6E\u4EE3\u7801\u8868"))}}),Y=d("ControlController",class extends Vs{constructor(t,e,a,s){super(t,Tt.create({},e),new la({},a),s),this.controlParams={},this.providers={},this.registerToCtx();const i=ibiz.util.layoutPanel.get("".concat(t.controlType,"_DEFAULT"));i&&(this.controlPanel=A(i)),this.updateContextParams({})}get _evt(){return this.evt}get view(){return this.ctx.view}registerToCtx(){this.ctx.registerController(this.model.name||this.model.id,this)}getEventArgs(){return{...super.getEventArgs(),data:this.getData()||[],ctrl:this}}initState(){super.initState(),this.state.isLoading=!1}async onCreated(){var t;if(await super.onCreated(),this.controlPanel){this.childNames.push(this.controlPanel.name);const e=await dt(this.controlPanel);this.providers[this.controlPanel.name]=e}this.handleControlParams(),this.initControlScheduler(this.model.controlLogics),(t=this.scheduler)!=null&&t.hasControlEventTrigger&&this._evt.onAll((e,a)=>{this.scheduler.triggerControlEvent(a.targetName,a.eventName,a)})}async onMounted(){var t;await super.onMounted(),(t=this.scheduler)==null||t.startTimerTrigger()}async onDestroyed(){await super.onDestroyed(),this.scheduler&&this.scheduler.destroy(),this.params.destroy()}updateContextParams(t){t.context&&this.context.reset({},t.context),t.params&&this.params.reset({},t.params);const{controlNavContexts:e,controlNavParams:a}=this.model;let s={};x(e)&&(s=y(e,this.params,this.context)),Object.assign(this.context,s);let i={};x(a)&&(i=y(a,this.params,this.context)),Object.assign(this.params,i)}getControlType(){return this.model.controlType}getData(){return null}async startLoading(){this.state.isLoading=!0,this.ctx.startLoading()}async endLoading(){this.state.isLoading=!1,this.ctx.endLoading()}handlerAbilityParams(t){const e=this.context.clone(),a={...this.params};let s=this.getData()||[];return t?.data&&(s=Array.isArray(t.data)?t.data:[t.data]),t?.context&&Object.assign(e,t.context),t?.viewParam&&Object.assign(a,t.viewParam),{context:e,params:a,data:s}}setLayoutPanel(t){this.layoutPanel=t,this.layoutPanel.state.isMounted?this.mountCounter.attend(this.layoutPanel.model.name):this.layoutPanel.evt.on("onMounted",()=>{this.mountCounter.attend(this.layoutPanel.model.name)})}handleControlParams(){if(!this.model.controlParam)return;const{ctrlParams:t}=this.model.controlParam;let e={};x(t)&&(e=y(t,this.params,this.context)),Object.assign(this.controlParams,e)}initControlScheduler(t=[]){t.length!==0&&(this.scheduler=ibiz.scheduler.createControlScheduler(t),this.scheduler.defaultParamsCb=()=>this.getEventArgs())}actionNotification(t,e){var a;const{ctrlMsg:s}=this.model,i=(a=s?.ctrlMsgItems)==null?void 0:a.find(o=>o.name===t);let r,n;if(i&&i.content){n=w(i.timeout)?void 0:i.timeout/1e3;const o={...this.getEventArgs()};e?.data&&(o.data=e.data),r=B.execScriptFn(o,"`".concat(i.content,"`"),{isAsync:!1,singleRowReturn:!0})}else{const o="CONTROL.".concat(this.model.controlType,".").concat(t).toUpperCase();r=ibiz.i18n.t(o,""),r===o&&(r="")}if(!r&&e?.default&&(r=e.default),!r&&e?.error&&(r=r||e.error.message),!!r){if(e?.error)throw ibiz.log.error(e.error),new le(r,n);ibiz.message.success(r,n,n===0)}}}),tt=d("MDControlController",class extends Y{constructor(){super(...arguments),this.fieldIdNameMap=new Map}get _evt(){return this.evt}initState(){super.initState(),this.state.items=[],this.state.selectedData=[],this.state.searchParams={},this.state.noSort=!1,this.state.sortQuery="",this.state.curPage=1,this.state.size=20,this.state.total=0,this.state.isLoaded=!1,this.state.singleSelect=!0,this.state.mdctrlActiveMode=0,this.state.groups=[]}async onCreated(){var t;await super.onCreated(),this.dataEntity=await ibiz.hub.getAppDataEntity(this.model.appDataEntityId),(t=this.dataEntity.appDEFields)==null||t.forEach(a=>{this.fieldIdNameMap.set(a.id,a.name)});const e=this.onDataChange.bind(this);this.onDataChange=Vt(a=>{e(a)},300),ibiz.mc.command.change.on(this.onDataChange),this.setSort()}async onMounted(){await super.onMounted(),this.state.loadDefault&&this.load({isInitialLoad:!0})}onDestroyed(){return ibiz.mc.command.change.off(this.onDataChange),super.onDestroyed()}onDataChange(t){t.data&&t.data.srfdecodename===this.dataEntity.codeName&&this.refresh()}setSort(t,e){t&&e&&(this.state.sortQuery="".concat(t,",").concat(e))}async getFetchParams(t){const{curPage:e,size:a,sortQuery:s,noSort:i}=this.state,r={...this.params};return a&&(r.page=e-1,r.size=a),!i&&s&&(r.sort=s),await this._evt.emit("onBeforeLoad",void 0),Object.assign(r,{...this.state.searchParams}),t&&Object.assign(r,t),r}async load(t={}){if(this.state.isSimple)return[];await this.startLoading();try{const e=t.isInitialLoad===!0,a=t.isLoadMore===!0;e?this.state.curPage=1:a&&(this.state.curPage+=1);const{context:s}=this.handlerAbilityParams(t),i=await this.getFetchParams(t?.viewParam),r=await this.service.fetch(s,i);typeof r.total=="number"&&(this.state.total=r.total),a?this.state.items.push(...r.data):this.state.items=r.data,await this.afterLoad(t,r.data),this.state.isLoaded=!0,await this._evt.emit("onLoadSuccess",{isInitialLoad:e})}catch(e){throw await this._evt.emit("onLoadError",void 0),this.actionNotification("FETCHERROR",{error:e}),e}finally{await this.endLoading()}return this.state.items.forEach((e,a)=>{e.srfserialnum=a+1}),this.actionNotification("FETCHSUCCESS"),this.state.items}async afterLoad(t,e){return e}async refresh(){await this.load({isInitialLoad:!1})}async remove(t){const{context:e,params:a,data:s}=this.handlerAbilityParams(t);if(!s?.length)throw new f("\u672A\u9009\u4E2D\u6570\u636E");if(t?.silent!==!0&&!await ibiz.confirm.error({title:"\u6570\u636E\u5220\u9664",desc:"\u786E\u8BA4\u5220\u9664\u6570\u636E\uFF1F"}))return;await this._evt.emit("onBeforeRemove",void 0),await this.startLoading();let i=!1;try{const r=O(this.model.appDataEntityId);await nt(s.map(async n=>{if(n.srfuf!==0){const o=e.clone();o[r]=n.srfkey,await this.service.remove(o,a),i=!0}this.afterRemove(n)})),t?.silent!==!0&&this.actionNotification("REMOVESUCCESS",{data:s,default:"\u6570\u636E[".concat(s.map(n=>n.srfmajortext).join("\u3001"),"]\u5220\u9664\u6210\u529F!")}),i&&!t?.notRefresh&&await this.refresh()}catch(r){throw await this._evt.emit("onRemoveError",void 0),this.actionNotification("REMOVEERROR",{error:r,data:s}),r}finally{await this.endLoading()}this.state.selectedData=[],await this._evt.emit("onRemoveSuccess",void 0)}afterRemove(t){const e=this.state.items.findIndex(a=>a.srfkey===t.srfkey);e!==-1&&this.state.items.splice(e,1)}getData(){return this.state.selectedData||[]}setActive(t){return this._evt.emit("onActive",{data:[t]})}setSelection(t){const{selectedData:e}=this.state;da(e,t)||(this.state.selectedData=t,this._evt.emit("onSelectionChange",{data:t}))}async onRowClick(t){const{selectedData:e}=this.state,a=e.filter(s=>s.srfkey!==t.srfkey);a.length===e.length?this.setSelection(this.state.singleSelect?[t]:e.concat([t])):this.setSelection(a),this.state.mdctrlActiveMode===1&&await this.setActive(t)}async onDbRowClick(t){this.state.mdctrlActiveMode===2&&await this.setActive(t)}async importData(){var t;const{appDataEntityId:e,dedataImportId:a}=this.model,s=await ibiz.hub.getAppDataEntity(e);if(!((t=s.appDEDataImports)==null?void 0:t.find(n=>n.id===a)))throw new f("\u65E0\u5BFC\u5165\u6A21\u578B\uFF01");const r=ibiz.overlay.createModal("DataImport",{dismiss:()=>r.dismiss(),appDataEntity:s},{width:"auto",placement:"center"});r.present(),await r.onWillDismiss()}async exportData(t){}}),oo=d("AppMenuController",class extends Y{initState(){super.initState(),this.state.menuItemsState={}}get routeDepth(){return this.view.modal.routeDepth}async onCreated(){var t;await super.onCreated(),this.app=await ibiz.hub.getApp(this.context.srfappid),(t=this.model.appMenuItems)==null||t.forEach(e=>{this.initMenuItemState(e)})}async onClickMenuItem(t,e,a=!0){const s=de(this.model,t,{compareField:"id",childrenFields:["appMenuItems"]});if(!s)throw new f("\u627E\u4E0D\u5230\u540D\u4E3A".concat(t,"\u7684\u83DC\u5355\u9879"));if(this.evt.emit("onClick",{eventArg:t,event:e}),!s.appFuncId)throw new m(s,"\u6CA1\u6709\u914D\u7F6E\u5E94\u7528\u529F\u80FD");const i=this.context.clone();this.routeDepth&&a&&Object.assign(i,{toRouteDepth:this.routeDepth+1}),await ibiz.commands.execute(Ke.TAG,s.appFuncId,i,this.params)}initMenuItemState(t){var e;const a={permitted:!0,visible:!0};if(t.hidden)a.visible=!1;else{let s=!0;t.accessKey&&(s=this.app.authority.calcByResCode(t.accessKey));let i=s;if((e=t.appMenuItems)!=null&&e.length){const r=t.appMenuItems.map(n=>this.initMenuItemState(n).visible);i=i&&r.includes(!0)}a.permitted=s,a.visible=i}return this.state.menuItemsState[t.id]=a,a}getAllItems(){const t=[],e=a=>{a.forEach(s=>{t.push(s),s.appMenuItems&&s.appMenuItems.length>0&&e(s.appMenuItems)})};return e(this.model.appMenuItems),t}getCounter(t){const{counters:e}=this.ctx.view;return e[t]?e[t]:null}}),Zu=d("AppMenuIconViewController",class extends oo{async onClickMenuItem(t,e){const a=de(this.model,t,{compareField:"id",childrenFields:["appMenuItems"]});if(!a)throw new f("\u627E\u4E0D\u5230\u540D\u4E3A".concat(t,"\u7684\u83DC\u5355\u9879"));if(this.evt.emit("onClick",{eventArg:t,event:e}),!a.appFuncId)throw new m(a,"\u6CA1\u6709\u914D\u7F6E\u5E94\u7528\u529F\u80FD");const s=this.context.clone();this.routeDepth===1&&Object.assign(s,{toRouteDepth:1}),await ibiz.commands.execute(Ke.TAG,a.appFuncId,s,this.params)}}),uo=d("CalendarService",class extends at{async search(t,e={}){const{sysCalendarItems:a}=this.model;if(!a)return[];const s=a.map(async n=>{const o=n.appDEDataSetId||"fetchdefault";return this.exec2(o,t,e,void 0,n.appDataEntityId)});return(await Promise.all(s)).map((n,o)=>this.setCalendarConfigData(n.data,o)).flat()}setCalendarConfigData(t,e){const{sysCalendarItems:a}=this.model;if(!a)throw new f("\u672A\u627E\u5230\u65E5\u5386\u9879\u6A21\u578B");const s=a[e];if(!s)throw new f("\u672A\u627E\u5230\u65E5\u5386\u9879\u6A21\u578B");return t.map(i=>new Sn(s,i))}async exec2(t,e,a={},s={},i=this.model.appDataEntityId){return await this.app.deService.exec(i,t,e,a,s)}}),tc=d("CalendarController",class extends tt{initState(){super.initState(),this.state.selectedDate=new Date,this.state.size=1e3}async onCreated(){await super.onCreated(),this.service=new uo(this.model),await this.service.init(this.context)}async load(t={}){const e=t.isInitialLoad===!0,{context:a}=this.handlerAbilityParams(t),s=await this.getFetchParams(t?.viewParam);await this.startLoading();let i;try{i=await this.service.search(a,s)}finally{await this.endLoading()}return await this.afterLoad(t,i),this.state.isLoaded=!0,this.state.items=i,this.sortItems(),await this.evt.emit("onLoadSuccess",{isInitialLoad:e}),i}sortItems(){this.model.calendarStyle==="TIMELINE"&&this.state.items.sort((t,e)=>{const a=t.beginTime,s=e.beginTime;let i=0;return S(a).isAfter(s)?i=-1:S(a).isBefore(s)&&(i=1),i})}getCurSelectDate(t){const{selectedDate:e}=this.state,{srfstartdate:a,srfenddate:s}=t;if(!a||!s){const i=new Date(e.getFullYear(),e.getMonth(),1),r=new Date(e.getFullYear(),e.getMonth()+1,1);return{srfstartdate:S(i).format("YYYY-MM-DD HH:mm:ss"),srfenddate:S(r).format("YYYY-MM-DD HH:mm:ss")}}return{srfstartdate:a,srfenddate:s}}async getFetchParams(t={}){const{curPage:e,size:a,sortQuery:s,noSort:i}=this.state,r={...this.params};if(!i&&s&&(r.sort=s),await this._evt.emit("onBeforeLoad",void 0),Object.assign(r,{...this.state.searchParams}),a&&(r.page=e-1,r.size=a),t&&Object.assign(r,t),this.model.calendarStyle!=="TIMELINE"){const n=this.getCurSelectDate(r);Object.assign(r,n)}return r}async onRowClick(t){const{selectedData:e}=this.state,a=e.filter(s=>s.deData.srfkey!==t.deData.srfkey);a.length===e.length?this.setSelection(this.state.singleSelect?[t]:e.concat([t])):this.setSelection(a),this.state.mdctrlActiveMode===1&&await this.setActive(t)}setSelectDate(t){this.state.selectedDate=t}});S.extend(oi),S.extend(ci),S.extend(di),S.extend(pi),S.extend(mi);var se="$default_group",vt=class{constructor(t,e){this.model=t,this.chartGenerator=e,this.chartDataArr=[],this.staticOptions={},this.autoCompleteCategory=!0,this.model=t,this.chartGenerator=e;const{chartSeriesEncode:a,caption:s,id:i,userParam:r}=t;if(!t.catalogField)throw new m(t,"\u7F3A\u5C11\u5206\u7C7B\u5C5E\u6027\u914D\u7F6E");if(!t.valueField)throw new m(t,"\u7F3A\u5C11\u503C\u5C5E\u6027\u914D\u7F6E");this.catalogField=e.getFieldKey(t.catalogField),this.valueField=e.getFieldKey(t.valueField),this.groupField=t.seriesField?e.getFieldKey(t.seriesField):void 0;const{chartXAxisId:n,chartYAxisId:o}=a||{};this.xAxisIndex=fe(n),this.yAxisIndex=fe(o),this.seriesName=s||i,this.staticOptions=this.calcStaticOptions(),r&&(this.seriesUserParam=$e(r))}calcStaticOptions(){return{type:this.model.seriesType,name:this.seriesName,emphasis:{label:{fontSize:20,show:!0}},label:{position:"top",show:!0}}}translateVal(t,e,a=!1){if(w(e))return;if(w(t))return e;const s=this.chartGenerator.codeListMap.get(t);if(s?.length){const i=s.find(r=>r.value===e);if(i)return i.text}return a?void 0:e}prepareChartData(t,e,a,s){var i;this.groupField&&Object.assign(e,{[this.groupField]:s}),this.catalogField&&Object.assign(e,{[this.catalogField]:a});const r=new Mn(e,this.model,a,s);t[s].get(a).chartData=r,(i=this.chartDataArr)==null||i.push(r)}calcGroupData(t){this.groupData={},this.chartDataArr=[];const e=this.groupData,{seriesCodeListId:a,catalogCodeListId:s}=this.model;return t.forEach(i=>{let r=se;if(this.groupField){const o=this.translateVal(a,i[this.groupField]);if(w(o))return;r=o}e[r]||(e[r]=new Map,s&&this.autoCompleteCategory&&this.chartGenerator.codeListMap.get(s).forEach(u=>{e[r].set(u.text,{value:0})}));const n=this.translateVal(s,i[this.catalogField],!0);if(!n){s&&this.autoCompleteCategory&&this.chartGenerator.codeListMap.get(s).forEach(u=>{this.prepareChartData(e,{[this.valueField]:0},u.text,r)});return}e[r].get(n)||e[r].set(n,{value:0}),e[r].get(n).value=xt(e[r].get(n).value,i[this.valueField]),e[r].get(n).chartData?this.prepareChartData(e,{[this.valueField]:e[r].get(n).value},n,r):this.prepareChartData(e,i,n,r)}),e}calcGroupSeries(t){return Object.keys(t).map(e=>{const a=t[e],s=this.calcSeriesData(a);let i={...this.staticOptions,data:s};return e!==se&&(i.name=e),this.seriesUserParam&&(i=Ct(i,this.seriesUserParam)),i})}calcSeriesData(t){const e=[];return t.forEach((a,s)=>{e.push([s,a.value,a.chartData])}),e}calcByData(t){const e=this.dataPreprocess(t),a=this.calcGroupData(e);return this.addTimeData(a),this.calcGroupSeries(a)}getChartDataByParams(t){var e,a,s;return this.groupData&&Object.keys(this.groupData).length===1?(e=this.groupData[se].get(t.name))==null?void 0:e.chartData:(s=(a=this.groupData)==null?void 0:a[t.seriesName].get(t.name))==null?void 0:s.chartData}dataPreprocess(t){const e=[];t.forEach(s=>{e.push(A(s))});const{groupMode:a}=this.model;return a&&e.forEach(s=>{let i="";if(a==="DAY"||a==="YEAR"||a==="MONTH"){if(a==="DAY"?i="YYYY-MM-DD":a==="YEAR"?i="YYYY":a==="MONTH"&&(i="YYYY-MM"),s[this.catalogField]){const r=S(s[this.catalogField]).format(i);s[this.catalogField]=r}}else if(a==="QUARTER"){if(s[this.catalogField]){const r="".concat(S(s[this.catalogField]).format("YYYY"),"-").concat(S(s[this.catalogField]).quarter());s[this.catalogField]=r}}else if(a==="YEARWEEK"&&s[this.catalogField]){const r="".concat(S(s[this.catalogField]).format("YYYY"),"-").concat(S(s[this.catalogField]).week());s[this.catalogField]=r}}),e}sortTimeData(t){const{groupMode:e}=this.model;Object.keys(t).forEach(a=>{const s=t[a];let i=[];e==="DAY"||e==="YEAR"||e==="MONTH"?i=Array.from(s.keys()).sort((n,o)=>S(n).diff(S(o))):(e==="QUARTER"||e==="YEARWEEK")&&(i=Array.from(s.keys()).sort((n,o)=>{const[u,c]=n.split("-"),[l,h]=o.split("-");return u!==l?parseInt(u,10)-parseInt(l,10):parseInt(c,10)-parseInt(h,10)}));const r=new Map;i.forEach(n=>{r.set(n,s.get(n))}),t[a]=r})}addTimeData(t){const{groupMode:e}=this.model;if(!e||e==="CODELIST")return;const a=[];Object.keys(t).forEach(r=>{t[r].forEach((n,o)=>{a.push(S(o))})});const s=S.max(a),i=S.min(a);if(e==="DAY"){let r=i;const n=s;for(;r?.isSameOrBefore(n,"day");){const o=r.format("YYYY-MM-DD");Object.keys(t).forEach(u=>{t[u].get(o)||t[u].set(o,{value:0})}),r=r.add(1,"day")}}else if(e==="YEAR"){let r=i.year();const n=s.year();for(;r<=n;){const o=r.toString();Object.keys(t).forEach(u=>{t[u].get(o)||t[u].set(o,{value:0})}),r+=1}}else if(e==="MONTH"){let r=i.clone().startOf("month");const n=s.clone().startOf("month");for(;r.isSameOrBefore(n);){const o=r.format("YYYY-MM");Object.keys(t).forEach(u=>{t[u].get(o)||t[u].set(o,{value:0})}),r=r.add(1,"month")}}else if(e==="QUARTER"){const r=[];Object.keys(t).forEach(l=>{t[l].forEach((h,p)=>{r.push(p)})});const n=r.reduce((l,h)=>h<l?h:l,r[0]),o=r.reduce((l,h)=>h>l?h:l,r[0]),[u]=n.split("-"),[c]=o.split("-");for(let l=parseInt(u,10);l<=parseInt(c,10);l++)for(let h=1;h<=4;h++){const p="".concat(l,"-").concat(h);Object.keys(t).forEach(E=>{t[E].get(p)||t[E].set(p,{value:0})})}}else if(e==="YEARWEEK"){const r=[];Object.keys(t).forEach(l=>{t[l].forEach((h,p)=>{r.push(p)})});const n=r.reduce((l,h)=>h<l?h:l,r[0]),o=r.reduce((l,h)=>h>l?h:l,r[0]),[u]=n.split("-"),[c]=o.split("-");for(let l=parseInt(u,10);l<=parseInt(c,10);l++){const h=S("".concat(l,"-12-31")).isoWeek();for(let p=1;p<=h;p++){const E="".concat(l,"-").concat(p);Object.keys(t).forEach(C=>{t[C].get(E)||t[C].set(E,{value:0})})}}}this.sortTimeData(t)}},co=class extends vt{calcStaticOptions(){if(this.xAxisIndex===void 0)throw new m(this.model,"\u5E8F\u5217\u6CA1\u6709\u914D\u7F6EX\u5750\u6807\u8F74");if(this.yAxisIndex===void 0)throw new m(this.model,"\u5E8F\u5217\u6CA1\u6709\u914D\u7F6EY\u5750\u6807\u8F74");const t=super.calcStaticOptions();t.xAxisIndex=this.xAxisIndex,t.yAxisIndex=this.yAxisIndex;const{stack:e,step:a}=this.model;return a&&(t.step="middle"),t}},lo=class extends vt{calcStaticOptions(){if(this.xAxisIndex===void 0)throw new m(this.model,"\u5E8F\u5217\u6CA1\u6709\u914D\u7F6EX\u5750\u6807\u8F74");if(this.yAxisIndex===void 0)throw new m(this.model,"\u5E8F\u5217\u6CA1\u6709\u914D\u7F6EY\u5750\u6807\u8F74");const t=super.calcStaticOptions();return t.xAxisIndex=this.xAxisIndex,t.yAxisIndex=this.yAxisIndex,this.model,t}},ho=class extends vt{calcStaticOptions(){const t=super.calcStaticOptions();return t.label.formatter="{b}: {d}%({c})",t.label.position="outer",t}calcSeriesData(t){const e=[];return t.forEach((a,s)=>{e.push({name:s,value:[a.value,a.chartData]})}),e}},po=class extends vt{calcStaticOptions(){const t=super.calcStaticOptions();return t.label.formatter="{b}: {d}%({c})",t.label.position="outside",t}calcSeriesData(t){const e=[];return t.forEach((a,s)=>{e.push({name:s,value:[a.value,a.chartData]})}),e}},fo=class extends vt{calcStaticOptions(){if(this.xAxisIndex===void 0)throw new m(this.model,"\u5E8F\u5217\u6CA1\u6709\u914D\u7F6EX\u5750\u6807\u8F74");if(this.yAxisIndex===void 0)throw new m(this.model,"\u5E8F\u5217\u6CA1\u6709\u914D\u7F6EY\u5750\u6807\u8F74");const t=super.calcStaticOptions();return t.xAxisIndex=this.xAxisIndex,t.yAxisIndex=this.yAxisIndex,t}},mo=class{constructor(t){this.indicator={},this.index=t}get indicatorKeys(){return(!this._indicatorKeys||this._indicatorKeys.length!==Object.keys(this.indicator).length)&&(this._indicatorKeys=Object.keys(this.indicator).sort()),this._indicatorKeys}updateIndicator(t,e){const a=this.indicator[t];(!a||a.max<e)&&(this.indicator[t]={max:e})}toOptions(){const t=Math.max(...Object.values(this.indicator).map(e=>e.max));return{indicator:this.indicatorKeys.map(e=>({name:e,max:t}))}}},Eo=class extends vt{calcStaticOptions(){return super.calcStaticOptions()}calcRadarCoordSystem(t){const e=this.calcGroupData(t);this.chartGenerator.radarMap.has(this.catalogField)||this.chartGenerator.radarMap.set(this.catalogField,new mo(this.chartGenerator.radarMap.size));const a=this.chartGenerator.radarMap.get(this.catalogField);Object.values(e).forEach(s=>{s.forEach((i,r)=>{a.updateIndicator(r,i.value)})})}calcByData(t){const e=this.groupData,a=this.chartGenerator.radarMap.get(this.catalogField),s=Object.keys(e).map(r=>{const n=e[r],o=a.indicatorKeys.map(u=>n.has(u)?n.get(u).value:0);return{name:r===se?this.seriesName:r,value:o}});let i={...this.staticOptions,data:s};return this.seriesUserParam&&(i=Ct(i,this.seriesUserParam)),i}};function $e(t){const e={};return t&&Object.keys(t).forEach(a=>{const s=a.indexOf(".");if(s===-1)return;const i=a.slice(s+1);if(i)try{e[i]=JSON.parse(t[a])}catch{e[i]=t[a]}}),e}var go=class{constructor(t){this.model=t,this.staticOptions={tooltip:{show:!0}},this.options={},this.seriesGenerators=[],this.radarMap=new Map,this.codeListMap=new Map,this.seriesGeneratorIndexMap=new Map;const{dechartTitle:e,dechartLegend:a,chartXAxises:s,chartYAxises:i,userParam:r}=t;e&&(this.staticOptions.title=this.calcTitleOption(e)),a&&(this.staticOptions.legend=this.calcLegendOption(a)),s?.length&&(this.staticOptions.xAxis=this.calcXYAxisOption(s)),i?.length&&(this.staticOptions.yAxis=this.calcXYAxisOption(i)),r&&(this.chartUserParam=$e(r))}initSeriesGenerators(){var t;(t=this.model.dechartSerieses)==null||t.forEach(e=>{let a;switch(e.seriesType){case"line":a=new co(e,this);break;case"bar":a=new lo(e,this);break;case"scatter":a=new fo(e,this);break;case"pie":a=new po(e,this);break;case"funnel":a=new ho(e,this);break;case"radar":a=new Eo(e,this);break;default:ibiz.log.error("\u56FE\u8868\u6682\u672A\u652F\u6301\u5E8F\u5217\u7C7B\u578B".concat(e.seriesType));break}a&&this.seriesGenerators.push(a)})}calcTitleOption(t){const{showTitle:e,title:a,subTitle:s,titlePos:i}=t,r={show:e,text:a,subtext:s};r.left="center";const n=i?.toLowerCase();return n==="left"||n==="right"?r.left=n:(n==="bottom"||n==="top")&&(r.top=n),r}calcLegendOption(t){const{showLegend:e,legendPos:a}=t,s={};s.show=e;const i=a?.toLowerCase();return i==="left"||i==="right"?(s.left=i,s.top="middle",s.orient="vertical"):i==="bottom"&&(s.top=i),s}calcXYAxisOption(t){const e=[];return t.forEach(a=>{const{position:s,dataShowMode:i,userParam:r}=a;let n={type:a.echartsType,name:a.caption,max:a.maxValue,min:a.minValue,position:s,axisLabel:{formatter:o=>i===1?o.length>4?"".concat(o.slice(0,4).split("").join(`
|
|
1
|
+
System.register(["@ibiz-template/core","lodash-es","qx-util","qs","ramda","dayjs","async-validator","path-browserify"],function(d,na){"use strict";var m,f,D,oa,Bt,_t,L,Ot,ua,At,ca,la,da,ha,de,pa,he,fa,W,pe,Mt,xt,fe,It,Vt,me,ma,Ea,j,ga,Wt,Ca,Da,mt,wa,va,Aa,Ia,ya,Fa,Pa,ba,Na,x,V,Ee,Et,K,kt,ge,Ce,Sa,De,we,Ra,La,w,ve,T,A,rt,gt,Ae,Ie,Ct,S,ye,Fe;return{setters:[function(g){m=g.RuntimeModelError,f=g.RuntimeError,D=g.ModelError,oa=g.downloadFileFromBlob,Bt=g.IBizContext,_t=g.DataTypes,L=g.HttpResponse,Ot=g.HttpError,ua=g.clone,At=g.CoreConst,ca=g.Net,la=g.getToken,da=g.NOOP,ha=g.IBizParams,de=g.NoticeError,pa=g.isElementSame,he=g.findRecursiveChild,fa=g.StringUtil,W=g.recursiveIterate,pe=g.debounceAndAsyncMerge,Mt=g.mergeDefaultInLeft,xt=g.isOverlap,fe=g.awaitTimeout,It=g.mergeInLeft,Vt=g.plus,me=g.toNumberOrNil},function(g){ma=g.isEmpty,Ea=g.isString,j=g.isArray,ga=g.isObject,Wt=g.debounce,Ca=g.isNil,Da=g.camelCase,mt=g.eq,wa=g.gt,va=g.gte,Aa=g.findIndex,Ia=g.lt,ya=g.lte,Fa=g.upperFirst,Pa=g.snakeCase,ba=g.kebabCase,Na=g.isFunction},function(g){x=g.notNilEmpty,V=g.isNilOrEmpty,Ee=g.AsyncSeriesHook,Et=g.QXEvent,K=g.createUUID,kt=g.isArray,ge=g.setCookie,Ce=g.clearCookie,Sa=g.clearAll,De=g.isNumber,we=g.ascSort,Ra=g.descSort},function(g){La=g.default},function(g){w=g.isNil,ve=g.mergeRight,T=g.isEmpty,A=g.clone,rt=g.equals,gt=g.where,Ae=g.mergeLeft,Ie=g.isNotNil,Ct=g.mergeDeepRight},function(g){S=g.default},function(g){ye=g.default},function(g){Fe=g.default}],execute:function(){d({asyncImportData:wo,calcContentAlignStyle:qi,calcDeCodeNameById:O,calcDynaClass:Dt,calcGridLayoutPos:Qi,calcLayoutHeightWidth:zt,calcMainStateOPPrivsStrs:ka,calcNavParams:Ut,calcResPath:$t,compare:Ft,compareNumber:Be,contains:Pt,convertNavData:y,convertNavDataByArray:Va,convertObjectToNavParams:Pe,execDELogic:ee,execDELogicAction:Os,execDELogicById:_s,execFieldLogics:Lt,execUILogic:re,exportData:js,filterFieldLogics:za,filterValueRules:xe,findChildFormDetails:jt,findDELogic:Se,findEditItem:Ga,findFieldById:wt,findModelChild:lt,formatMultiData:be,generateEditorRules:qe,generateRules:Ye,getAllPanelField:qa,getAppCounterProvider:ss,getAppViewRef:Hi,getAsyncActionProvider:Xr,getChildNodeRSs:Te,getControl:Xi,getControlProvider:dt,getControlsByView:ja,getDeACMode:$i,getDefaultValue:Qe,getEditorProvider:bt,getFormDetailProvider:ze,getGridColumnProvider:Ge,getMatchResPath:Ss,getOriginData:Gs,getPFPlugin:Yi,getPanelItemProvider:ds,getPlatformProvider:Ps,getPlatformType:As,getPortletProvider:fs,getRootNode:Re,getTreeNode:Le,getUIActionById:Gt,getUIActionProvider:gs,getUILogicNodeProvider:Ds,getViewEngines:Xa,getViewLogics:Ka,getViewProvider:Gr,getWFContext:Ja,getWFSubmitViewId:wr,handleAllSettled:nt,hasDeCodeName:Ua,hasSubRoute:He,importData:vo,install:dc,installCommand:Us,isDataContainer:Ha,isValueChange:se,matchMainState:Wa,openRedirectView:Qa,parseUserParams:Ne,presetAppCounterProvider:bs,presetUIActionProvider:Ys,registerAppCounterProvider:as,registerAsyncActionProvider:jr,registerControlProvider:Or,registerEditorProvider:Mr,registerFormDetailProvider:xr,registerGridColumnProvider:Vr,registerPanelItemProvider:Wr,registerPlatformProvider:ys,registerPortletProvider:kr,registerUIActionProvider:St,registerUILogicNodeProvider:Ur,registerViewProvider:zr,strContain:Kt,testCond:$,toLocalOpenWFRedirectView:$a,verifyDeRules:_e,verifyFormGroupLogic:Xt,verifyPanelGroupLogic:Ht});var g=typeof globalThis<"u"?globalThis:typeof window<"u"?window:typeof global<"u"?global:typeof self<"u"?self:{};function yt(t){return t&&t.__esModule&&Object.prototype.hasOwnProperty.call(t,"default")?t.default:t}var Ta={exports:{}};(function(t,e){(function(a,s){t.exports=s()})(g,function(){return function(a,s,i){var r=function(n,o){if(!o||!o.length||o.length===1&&!o[0]||o.length===1&&Array.isArray(o[0])&&!o[0].length)return null;var u;o.length===1&&o[0].length>0&&(o=o[0]),u=(o=o.filter(function(l){return l}))[0];for(var c=1;c<o.length;c+=1)o[c].isValid()&&!o[c][n](u)||(u=o[c]);return u};i.max=function(){var n=[].slice.call(arguments,0);return r("isAfter",n)},i.min=function(){var n=[].slice.call(arguments,0);return r("isBefore",n)}}})})(Ta);var pi=Ta.exports,fi=yt(pi),Ba={exports:{}};(function(t,e){(function(a,s){t.exports=s()})(g,function(){return function(a,s){s.prototype.isSameOrBefore=function(i,r){return this.isSame(i,r)||this.isBefore(i,r)}}})})(Ba);var mi=Ba.exports,Ei=yt(mi),_a={exports:{}};(function(t,e){(function(a,s){t.exports=s()})(g,function(){var a="month",s="quarter";return function(i,r){var n=r.prototype;n.quarter=function(c){return this.$utils().u(c)?Math.ceil((this.month()+1)/3):this.month(this.month()%3+3*(c-1))};var o=n.add;n.add=function(c,l){return c=Number(c),this.$utils().p(l)===s?this.add(3*c,a):o.bind(this)(c,l)};var u=n.startOf;n.startOf=function(c,l){var p=this.$utils(),h=!!p.u(l)||l;if(p.p(c)===s){var E=this.quarter()-1;return h?this.month(3*E).startOf(a).startOf("day"):this.month(3*E+2).endOf(a).endOf("day")}return u.bind(this)(c,l)}}})})(_a);var gi=_a.exports,Ci=yt(gi),Oa={exports:{}};(function(t,e){(function(a,s){t.exports=s()})(g,function(){var a="week",s="year";return function(i,r,n){var o=r.prototype;o.week=function(u){if(u===void 0&&(u=null),u!==null)return this.add(7*(u-this.week()),"day");var c=this.$locale().yearStart||1;if(this.month()===11&&this.date()>25){var l=n(this).startOf(s).add(1,s).date(c),p=n(this).endOf(a);if(l.isBefore(p))return 1}var h=n(this).startOf(s).date(c).startOf(a).subtract(1,"millisecond"),E=this.diff(h,a,!0);return E<0?n(this).startOf("week").week():Math.ceil(E)},o.weeks=function(u){return u===void 0&&(u=null),this.week(u)}}})})(Oa);var Di=Oa.exports,wi=yt(Di),Ma={exports:{}};(function(t,e){(function(a,s){t.exports=s()})(g,function(){var a="day";return function(s,i,r){var n=function(c){return c.add(4-c.isoWeekday(),a)},o=i.prototype;o.isoWeekYear=function(){return n(this).year()},o.isoWeek=function(c){if(!this.$utils().u(c))return this.add(7*(c-this.isoWeek()),a);var l,p,h,E,C=n(this),F=(l=this.isoWeekYear(),p=this.$u,h=(p?r.utc:r)().year(l).startOf("year"),E=4-h.isoWeekday(),h.isoWeekday()>4&&(E+=7),h.add(E,a));return C.diff(F,"week")+1},o.isoWeekday=function(c){return this.$utils().u(c)?this.day()||7:this.day(this.day()%7?c:c-7)};var u=o.startOf;o.startOf=function(c,l){var p=this.$utils(),h=!!p.u(l)||l;return p.p(c)==="isoweek"?h?this.date(this.date()-(this.isoWeekday()-1)).startOf("day"):this.date(this.date()-1-(this.isoWeekday()-1)+7).endOf("day"):u.bind(this)(c,l)}}})})(Ma);var vi=Ma.exports,Ai=yt(vi),Ii=class{constructor(){this.view={enableDataInfoBar:!0,expCacheMode:"TABEXPPANEL:"},this.grid={editShowMode:"row",editSaveMode:"cell-blur",overflowMode:"wrap"},this.appMenu={enableEcho:!0},this.codeList={timeout:60*60*1e3}}},yi=d("RegisterCenter",class{constructor(){this.providers=new Map}register(t,e){this.providers.set(t,e)}unRegister(t){this.providers.delete(t)}get(t,...e){const a=this.providers.get(t);if(a)return a(...e)}}),Q=class{static isHelperName(t){return this.helperNames.includes(t)}static handleJudgmentExecute(t,e,a){return a.fn?e?a.fn(t):a.inverse(t):e?a.hash.yes=!0:a.hash.no=!1}};Q.helperNames=["lookup","log","and","camelCase","concat","eq","gt","get","lowerCase","lt","lte","neq","not","or","pascalCase","pluralize","snakeCase","spinalCase","upperCase"];var _=class{constructor(t,e){t.registerHelper(e,this.onExecute)}},Fi=class extends _{constructor(t){super(t,"and")}onExecute(...t){const e=t[t.length-1];t.pop();const s=t.filter(i=>!!i).length===t.length;return Q.handleJudgmentExecute(this,s,e)}},Pi=class extends _{constructor(t){super(t,"camelCase")}onExecute(t){return t?Da(t):""}},bi=class extends _{constructor(t){super(t,"concat")}onExecute(...t){return t.pop(),t.join("")}},Ni=class extends _{constructor(t){super(t,"eq")}onExecute(t,e,a){const s=mt(t,e);return Q.handleJudgmentExecute(this,s,a)}},Si=class extends _{constructor(t){super(t,"gt")}onExecute(t,e,a){const s=wa(t,e);return Q.handleJudgmentExecute(this,s,a)}},Ri=class extends _{constructor(t){super(t,"gte")}onExecute(t,e,a){const s=va(t,e);return Q.handleJudgmentExecute(this,s,a)}},Li=class extends _{constructor(t){super(t,"eqPropertyValue")}onExecute(t,e,a,s){let i=!1;return j(t)?i=!mt(Aa(t,r=>mt(r[e],a)),-1):i=t.hasOwnProperty(e)&&(i=mt(t[e],a)),Q.handleJudgmentExecute(this,i,s)}},Ti=class extends _{constructor(t){super(t,"jsonParse")}onExecute(t){return JSON.parse(t)}},Bi=class extends _{constructor(t){super(t,"jsonStringify")}onExecute(t,e){return JSON.stringify(t,null,typeof e=="number"?e:void 0)}},_i=class extends _{constructor(t){super(t,"lowerCase")}onExecute(t){return t?t.toLowerCase():""}},Oi=class extends _{constructor(t){super(t,"lt")}onExecute(t,e,a){const s=Ia(t,e);return Q.handleJudgmentExecute(this,s,a)}},Mi=class extends _{constructor(t){super(t,"lte")}onExecute(t,e,a){const s=ya(t,e);return Q.handleJudgmentExecute(this,s,a)}},xi=class extends _{constructor(t){super(t,"neq")}onExecute(t,e,a){const s=!mt(t,e);return Q.handleJudgmentExecute(this,s,a)}},Vi=class extends _{constructor(t){super(t,"not")}onExecute(t,e){const a=Handlebars.Utils.isEmpty(t);return Q.handleJudgmentExecute(this,a,e)}},Wi=class extends _{constructor(t){super(t,"or")}onExecute(...t){var e;const a=t[t.length-1];t.pop();const s=t.find(i=>!!i);if(a.fn){const i=((e=a.data)==null?void 0:e.root)||{};return s?a.fn(i):a.inverse(i)}return s||""}},ki=class extends _{constructor(t){super(t,"pascalCase")}onExecute(t){return t?Fa(t):""}},Ui=class extends _{constructor(t){super(t,"snakeCase")}onExecute(t){return t?Pa(t):""}},zi=class extends _{constructor(t){super(t,"spinalCase")}onExecute(t){return t?ba(t):""}},Gi=class extends _{constructor(t){super(t,"upperCase")}onExecute(t){return t?t.toUpperCase():""}};function ji(t){new Fi(t),new Pi(t),new bi(t),new Ni(t),new Si(t),new Ri(t),new Ti(t),new Bi(t),new _i(t),new Oi(t),new Mi(t),new xi(t),new Vi(t),new Wi(t),new ki(t),new Ui(t),new zi(t),new Gi(t),new Li(t)}var Ki=d("HandlebarsUtil",class{constructor(){this.p=null}get isInit(){return!!this.hsb}async init(){if(this.isInit)return;if(this.p)return this.p;this.p=na.import("handlebars");const t=await this.p;return this.hsb=t.default||t,this.p=null,ji(this.hsb),this.hsb}async render(t,e){return this.hsb||await this.init(),this.hsb.compile(t)(e)}syncRender(t,e){if(!this.hsb)throw new Error("handlebars not init");return this.hsb.compile(t)(e)}});function Pe(t){const e=[],a=/^%(.+)%$/;for(const s in t){let i=!0,r=t[s];x(t[s])&&a.test(t[s])&&(i=!1,r=t[s].substring(1,t[s].length-1)),e.push({key:s.toLowerCase(),rawValue:i,value:r})}return e}function y(t,...e){if(!t||ma(t))return{};const a=Array.isArray(t)?t:Pe(t);return Va(a,...e)}function xa(t,e){const a=t.find(s=>V(s)?!1:s[e]||Object.prototype.hasOwnProperty.call(s,e));return{find:!!a,value:a?.[e]}}function Va(t,...e){const a=/\$\{[^}]*\}/g,s={};for(const i of t)if(i.rawValue)s[i.key.toLowerCase()]=i.value||null;else{const r=i.value.match(a);if(r!==null){let n=i.value;r.forEach(o=>{const{find:u,value:c}=xa(e,o.slice(2,-1));u&&(n=n.replace(o,"".concat(c)))}),s[i.key.toLowerCase()]=n}else{const{find:n,value:o}=xa(e,i.value);n&&(s[i.key.toLowerCase()]=o)}}return s}function be(t,e){const a={};if(!t)return a;const s=Array.isArray(t)?t:Pe(t),i=e[0];return s.forEach(r=>{const{rawValue:n,value:o}=r;!n&&o&&Object.prototype.hasOwnProperty.call(i,o)&&(a[o]=e.map(u=>u[o]).join(";"))}),a}function Ut(t,e){const{deName:a,navFilter:s,pickupDEFName:i,navContexts:r,navParams:n}=t,{context:o,params:u,data:c,derValue:l}=e,p={},h={},E=l||c.srfkey;E&&(a&&(p[a]=E),s&&(h[s]=E),i&&(h["n_".concat(i.toLowerCase(),"_eq")]=E));const C=y(r,c,u,o),F=y(n,c,u,o);return Object.assign(p,C),Object.assign(h,F),{resultContext:p,resultParams:h}}function lt(t,e){if(t&&e){const a=t.find(s=>s.id?s.id.toLowerCase()===e.toLowerCase():!1);if(a)return a}return null}function Xi(t,e){var a,s;let i=t.controls||[];return(s=(a=t.viewLayoutPanel)==null?void 0:a.controls)!=null&&s.length&&(i=i.concat(t.viewLayoutPanel.controls)),i.find(r=>r.name===e||r.codeName===e||r.id===e)}function Hi(t,e){var a,s;let i=t.appViewRefs||[];return(s=(a=t.viewLayoutPanel)==null?void 0:a.appViewRefs)!=null&&s.length&&(i=i.concat(t.viewLayoutPanel.appViewRefs)),i.find(r=>r.name===e||r.id===e)}function Ne(t){const e={},a={},s={};for(const i in t)if(Object.prototype.hasOwnProperty.call(t,i)){const r=t[i];if(i.indexOf(".")!==-1){const n=i.split(".");switch(n[0]){case"SRFNAVPARAM":Object.assign(a,{[n[1]]:r});break;case"SRFNAVCTX":Object.assign(e,{[n[1]]:r});break;default:Object.assign(s,{key:r});break}}}return{navigateContexts:e,navigateParams:a,other:s}}function Yi(t,e){const a=ibiz.hub.getApp(e);if(!a)throw new m(a,"\u672A\u627E\u5230\u5E94\u7528");const{model:s}=a;if(!s.appPFPluginRefs)throw new m(s,"\u5E94\u7528\u672A\u914D\u7F6E\u63D2\u4EF6");const i=s.appPFPluginRefs.find(r=>r.pluginCode.toLowerCase()===t.toLowerCase());if(!i)throw new Error("\u672A\u627E\u5230\u63D2\u4EF6".concat(t));return i}function zt(t){const{width:e,height:a,widthMode:s,heightMode:i}=t,r={width:"",height:""};return s==="FULL"?r.width="100%":e&&e>0&&(e>0&&e<=1?r.width="".concat(e*100,"%"):s==="PERCENTAGE"?r.width="".concat(e,"%"):r.width="".concat(e,"px")),i==="FULL"?r.height="100%":a&&a>0&&(a>0&&a<=1?r.height="".concat(a*100,"%"):i==="PERCENTAGE"?r.height="".concat(a,"%"):r.height="".concat(a,"px")),r}function qi(t){const{valignSelf:e,halignSelf:a}=t;let s;if(e||a){switch(s={display:"flex"},e){case"TOP":Object.assign(s,{"align-items":"flex-start"});break;case"MIDDLE":Object.assign(s,{"align-items":"center"});break;case"BOTTOM":Object.assign(s,{"align-items":"flex-end"});break}switch(a){case"LEFT":Object.assign(s,{"justify-content":"flex-start"});break;case"CENTER":Object.assign(s,{"justify-content":"center"});break;case"RIGHT":Object.assign(s,{"justify-content":"flex-end"});break;case"JUSTIFY":Object.assign(s,{"justify-content":"space-between"});break}}return s}function Qi(t){const{layout:e,colXS:a,colXSOffset:s,colSM:i,colSMOffset:r,colMD:n,colMDOffset:o,colLG:u,colLGOffset:c}=t,l=(p,h)=>({span:(!p||p===-1?e==="TABLE_24COL"?24:12:p)*(e==="TABLE_24COL"?1:2),offset:!h||h===-1?void 0:h});return{xs:l(a,s),sm:l(i,r),md:l(n,o),lg:l(u,c)}}function Dt(t,e){const a=[],s=B.execScriptFn({data:e},t,{singleRowReturn:!0,isAsync:!1});return Ea(s)?a.push(s):j(s)?a.push(...s):ga(s)&&Object.keys(s).forEach(i=>{s[i]&&a.push(i)}),a}function Wa(t,e){const{mainStateAppDEFieldIds:a,demainStates:s}=t;if(a&&s){const i=[];return a.forEach(r=>{i.push(e[r])}),s.find(r=>{const{stateValue:n,state2Value:o,state3Value:u}=r;let c=!0;const l=[n,o,u];for(let p=0;p<i.length;p++)if("".concat(i[p])!=="".concat(l[p])){c=!1;break}return c})}}function ka(t,e){const a=ibiz.hub.getApp().model,{demainStateOPPrivs:s,opprivAllowMode:i}=t,r=s?.map(o=>o.name)||[];let n=[];return i?n=r:n=[...a.deopprivs,...e.deopprivs].filter(u=>!r.includes(u.name)).map(u=>u.name),n}function O(t){return t.split(".").pop()}function Ua(t,e){const a=O(e);return x(t[a])}async function $i(t,e,a){var s;return(s=(await ibiz.hub.getAppDataEntity(e,a)).appDEACModes)==null?void 0:s.find(n=>n.id===t)}function Se(t,e){var a;return(a=e.appDELogics)==null?void 0:a.find(s=>s.id===t)}function za(t,e){var a,s;const i=[];return(a=t.appDEFields)==null||a.forEach(r=>{e==="compute"&&r.computeAppDEFLogicId?i.push(r.computeAppDEFLogicId):e==="change"&&r.onChangeAppDEFLogicId?i.push(r.onChangeAppDEFLogicId):e==="default"&&r.defaultValueAppDEFLogicId&&i.push(r.defaultValueAppDEFLogicId)}),((s=t.appDELogics)==null?void 0:s.filter(r=>i.includes(r.id)))||[]}function wt(t,e){var a;return(a=t.appDEFields)==null?void 0:a.find(s=>s.id===e)}async function Gt(t){const[,,e]=t.split("@");return ibiz.hub.getApp(e).getUIAction(t)}function Re(t){return t.detreeNodes.find(e=>e.rootNode)}function Le(t,e){return t.detreeNodes.find(a=>a.id===e)}function Ji(t,e){return t===3||(e?t===1:t===2)}function Te(t,e){const a=e.parentId||Re(t).id;return t.detreeNodeRSs.filter(s=>s.parentDETreeNodeId===a&&Ji(s.searchMode,e.hasQuery))}function Ga(t,e){var a;return(a=t.degridEditItems)==null?void 0:a.find(s=>s.codeName===e)}function jt(t){let e;switch(t.detailType){case"TABPANEL":e=t.deformTabPages;break;case"FORMPAGE":case"TABPAGE":case"GROUPPANEL":e=t.deformDetails;break}return e||[]}function ja(t){const{viewLayoutPanel:e}=t,a=t.controls||[];return e&&a.push(...e.controls||[]),a}function Ka(t){const{viewLayoutPanel:e}=t,a=t.appViewLogics||[];return e&&a.push(...e.appViewLogics||[]),a}function Xa(t){const{viewLayoutPanel:e}=t,a=t.appViewEngines||[];return e&&a.push(...e.appViewEngines||[]),a.filter(s=>{switch(s.engineCat){case"CTRL":return ibiz.log.warn("\u672A\u652F\u6301\u7684\u5F15\u64CE\u5206\u7C7B\uFF1A".concat(s.engineType)),!1;default:return!0}})}function Ha(t){return t.itemType==="CONTAINER"&&["CONTAINER_MULTIDATA","CONTAINER_SINGLEDATA"].includes(t.predefinedType)}var Zi=["panelItems","panelTabPages","rootPanelItems"];function Ya(t){let e=[];for(const s of Zi)if(t[s]){e=t[s];break}const a=[];return e.length&&(a.push(...e.filter(s=>s.itemType==="FIELD")),e.forEach(s=>{Ha(s)||a.push(...Ya(s))})),a}function qa(t){return Ya(t)}async function Qa(t,e,a={},s={}){return tr(t,e,a,s)}async function $a(t,e,a={}){const s=e.lastIndexOf("?"),i=decodeURIComponent(e.substring(s+1,e.length)),r=La.parse(i,{delimiter:";"}),n=r.srfdename||"";if(!n)throw new f("\u91CD\u5B9A\u5411\u53C2\u6570\u7F3A\u5C11\u5B9E\u4F53\u540D\u79F0");const u=ibiz.hub.getApp(t.srfappid).deName2DeCodeName.get(n.toUpperCase());if(!u)throw new f("\u672A\u627E\u5230\u6307\u5B9A\u5B9E\u4F53\u7684codeName: ".concat(n));r[u.toLowerCase()]=r[n.toLowerCase()];const c="".concat(u).concat(ibiz.env.isMob?"Mob":"","RedirectView"),l=await ibiz.hub.getAppView(c);if(delete r.srfdename,r.srfwf!=="undo"){const h=r.processDefinitionKey.split("-")[3],E=h.substring(0,h.lastIndexOf("v")),C=h.substring(h.lastIndexOf("v"));r.wf=E,r.wfVersion=C}r.srfprocessinstanceid&&(t.srfprocessinstanceid=r.srfprocessinstanceid,delete r.srfprocessinstanceid),await ibiz.commands.execute(Z.TAG,l.id,t,r,a)}async function tr(t,e,a={},s={}){var i;const r=t.appViewNavContexts||[],n=y(r,a,e);e=Object.assign(e.clone(),n);const o=t.appViewNavParams||[],u=y(o,a,e);Object.assign(a,u);const c=t.appDataEntityId,l=O(c);let p=((i=s.data)==null?void 0:i[0])||{};e[l]=p[l]||e[l]||a[l];const h=t.getDataAppDEActionId,C=await ibiz.hub.getApp(t.appId).deService.getService(c);ibiz.loading.showRedirect();try{const q=await C.exec(h||"get",e,a);if(q.ok){p=q.data;let N=p.linkurl;if(N)return e.srfprocessinstanceid&&(N+=";srfprocessinstanceid=".concat(e.srfprocessinstanceid)),ibiz.env.dev&&N.indexOf("appredirectview?")!==-1&&(N=N.slice(N.indexOf("appredirectview?"))),N.startsWith("http://")||N.startsWith("https://")?new Promise(et=>{const ri=window.open(N,"_blank");ri&&(ri.callback=()=>{et({ok:!0,data:[]})})}):N.startsWith("appredirectview?")?(await $a(e,N,s),{ok:!0,data:[]}):{ok:!1,data:[]}}}finally{ibiz.loading.hideRedirect()}const F=await ibiz.hub.getAppDataEntity(c,t.appId),v=await er(F,t,a,p),P=v.split(":"),b=P.length===2?v:P.slice(0,2).join(":"),I="".concat(F.name.toUpperCase(),":").concat(v),R=t.redirectAppViewRefs,z=R?.find(q=>{const N=q.name||q.id;return N===I||N===v||N===b});if(z){const q=z.refAppViewId;if(q){const N=await ibiz.commands.execute(Z.TAG,q,e,a,{...s,data:[p]});if(N)return N}else throw new m(z,"\u672A\u914D\u7F6E\u5B9E\u9645\u5F15\u7528\u89C6\u56FE")}else throw ibiz.log.error("\u91CD\u5B9A\u5411\u89C6\u56FE\u5F15\u7528\u6709\uFF1A",R?.map(({refAppViewId:q,name:N,realTitle:et})=>({viewId:q,tag:N,title:et}))),new m(t,"\u672A\u627E\u5230\u91CD\u5B9A\u5411\u6807\u8BC6[".concat(v,"]\u6216[").concat(I,"]\u6216\u5DE5\u4F5C\u6D41[").concat(b,"]\u5BF9\u5E94\u89C6\u56FE"));return{ok:!0,data:[]}}async function er(t,e,a,s){let i="";const r=e.typeAppDEFieldId;if(r){const{codeName:c}=wt(t,r),l=s[c.toLowerCase()];if(x(l))return"".concat(l);ibiz.log.warn("\u91CD\u5B9A\u5411\u89C6\u56FE[".concat(e.name,"]\u81EA\u5B9A\u4E49\u7C7B\u522B\u5C5E\u6027[").concat(r,"]\u503C\u4E3A\u7A7A"),s)}const n="".concat(ibiz.env.isMob?"MOB":"","EDITVIEW"),o=a.srfwf;if(x(o))return x(a.wf)?"".concat(n,":").concat(o.toUpperCase(),":").concat(a.wf.toUpperCase()):"".concat(n,":").concat(o.toUpperCase());let u="";if(t.indexTypeAppDEFieldId){const{codeName:c}=wt(t,t.indexTypeAppDEFieldId);u=s[c.toLowerCase()]}if(V(u)&&t.formTypeAppDEFieldId){const{codeName:c}=wt(t,t.formTypeAppDEFieldId);u=s[c.toLowerCase()]}return x(u)?i="".concat(n,":").concat(u.toString().toUpperCase()):i="".concat(n),i}function $(t,e,a){if(Object.is(e,"IN"))return Pt(t,a);if(Object.is(e,"NOTIN"))return!Pt(t,a);switch(e){case"EQ":return"".concat(t)==="".concat(a);case"NOTEQ":return"".concat(t)!=="".concat(a);case"LT":return Ft(t,a)<0;case"LTANDEQ":return Ft(t,a)<=0;case"GT":return Ft(t,a)>0;case"GTANDEQ":return Ft(t,a)>=0;case"ISNULL":return V(t);case"ISNOTNULL":return x(t);case"TESTNULL":return w(t);case"IN":return Pt(t,a);case"NOTIN":return!Pt(t,a);case"LIKE":return Kt(t,a);case"LEFTLIKE":return Kt(t,a,"start");case"RIGHTLIKE":return Kt(t,a,"end");default:throw new f("\u503C\u64CD\u4F5C\uFF1A".concat(e,"\uFF0C\u6682\u672A\u652F\u6301"))}}function Ft(t,e){const a=Number(t),s=Number(e);if(!Number.isNaN(a)&&!Number.isNaN(s))return Be(a,s);const i=new Date(t).getTime(),r=new Date(e).getTime();if(!Number.isNaN(i)&&!Number.isNaN(r))return Be(i,r);throw new f("".concat(t," \u548C ").concat(e," \u65E0\u6CD5\u6BD4\u8F83\u5927\u5C0F"))}function Be(t,e){return Number.isNaN(t)&&(t=0),Number.isNaN(e)&&(e=0),t>e?1:t<e?-1:0}function Pt(t,e){if(!e||typeof e!="string")throw new f("\u8303\u56F4\u6BD4\u8F83\u7684\u6761\u4EF6\u503C\u4E0D\u5B58\u6216\u8005\u4E0D\u662F\u5B57\u7B26\u4E32");return t?e.split(",").includes("".concat(t)):!1}function Kt(t,e,a){if(!t||!e)return!1;const s="".concat(t).toUpperCase(),i="".concat(e).toUpperCase(),r=s.indexOf(i);switch(a){case"start":return r===0;case"end":return r+i.length===s.length;default:return r!==-1}}var ar={singleRowReturn:!1,isAsync:!0},sr=d("ScriptFunction",class{constructor(t,e,a=ar){this.argKeys=[],this.options=a;const s=this.formatCode(e,a);this.calcArgKeys(t,a);const i=new Function(...this.argKeys,s);this.scriptFn=function(...n){try{return i.apply({},n)}catch(o){throw console.log("\u62A5\u9519\u811A\u672C",s),o}}}formatCode(t,e){let a=t;return e.singleRowReturn&&(a="return (".concat(a,")")),e.isAsync&&(a="return (async function() { ".concat(a,"} )();")),a}calcArgKeys(t,e){const a=e.presetParams?Object.keys(e.presetParams):[];a.push(...t);const s=["document","el","selector","env","appSession","topViewSession","viewSession","context","viewParam","activeData","data","app","topView","parentView","view","parent","util"];a.push(...s),this.argKeys=Array.from(new Set(a))}convertArgs(t){const{presetParams:e}=this.options,a=e?ve(e,t):t;a.document=document,a.selector=i=>document.getElementsByClassName(i);const s=[];return this.argKeys.forEach(i=>{a[i]===void 0&&this.fillDefaultParams(i,a),s.push(a[i])}),s}fillDefaultParams(t,e){const a=e.view;switch(t){case"util":e.util={message:ibiz.message,notification:ibiz.notification,modal:ibiz.modal,confirm:ibiz.confirm,openView:ibiz.openView};break;case"viewParam":e.viewParam=e.params;break;case"env":e.env=ibiz.env;break;case"app":e.app=ibiz.hub.controller;break;case"parent":e.parent=a?.parentView;break;case"topView":e.topView=a?.getTopView();break;case"parentView":e.parentView=a?.parentView;break;case"topViewSession":e.topViewSession=a?.getTopView().session;break;case"viewSession":e.viewSession=a?.session;break;case"appSession":e.appSession=ibiz.hub.controller.session;break}}exec(t){const e=this.convertArgs(t);return this.scriptFn(...e)}}),B=d("ScriptFactory",class{static createScriptFn(t,e,a){return new sr(t,e,a)}static execScriptFn(t,e,a){return this.createScriptFn(Object.keys(t),e,a).exec(t)}static execSingleLine(t,e={}){return this.execScriptFn(e,t,{singleRowReturn:!0,isAsync:!1})}});function ir(t){return t.condType==="GROUP"}function rr(t){return t.condType==="SIMPLE"}function nr(t){return t.condType==="VALUERANGE2"}function or(t){return t.condType==="REGEX"}function ur(t){return t.condType==="STRINGLENGTH"}function cr(t){return t.condType==="SYSVALUERULE"}function _e(t,e,a){const s={isPast:!0,infoMessage:a.ruleInfo};if(ir(a)){const i=a.conds;i&&i.length>0&&(s.isPast=lr(i,r=>{const{isPast:n,infoMessage:o}=_e(t,e,r);return s.infoMessage=o,n},a.condOp,!!a.notMode),!s.isPast&&(a.condOp==="AND"&&a.notMode||a.condOp==="OR"&&!a.notMode)&&(s.infoMessage=a.ruleInfo))}else{t=a?.defname.toLowerCase()||t;try{if(rr(a))s.isPast=!dr(e[t],a.condOp,a.paramValue,a.ruleInfo,a.paramType,e,a.keyCond);else if(nr(a))s.isPast=!pr(e[t],a.minValue,a.includeMinValue,a.maxValue,a.includeMaxValue,a.ruleInfo,a.keyCond);else if(or(a))s.isPast=!Oe(e[t],a.regExCode,a.ruleInfo,a.keyCond);else if(ur(a))s.isPast=!hr(e[t],a.minValue,a.includeMinValue,a.maxValue,a.includeMaxValue,a.ruleInfo,a.keyCond);else if(cr(a)&&a?.sysValueRule){const{ruleType:i,regExCode:r,scriptCode:n,ruleInfo:o}=a.sysValueRule;if(s.infoMessage=a.ruleInfo||o,i==="REG")s.isPast=!Oe(e[t],r,s.infoMessage,a.keyCond);else if(i==="SCRIPT"){const{isPast:u,infoMessage:c}=fr(e[t],e,n,s.infoMessage,a.keyCond);s.isPast=u,s.infoMessage=c||s.infoMessage}}}catch{s.isPast=!1}s.isPast=a.notMode?!s.isPast:s.isPast}return s}function lr(t,e,a="AND",s=!1){if(!(t?.length>0))return!1;let i=a==="AND";for(let r=0,n=t.length;r<n;r++){const o=e(t[r],r);if(a==="AND"){if(!o){i=!1;break}}else if(a==="OR"&&o){i=!0;break}}return s?!i:i}function dr(t,e,a,s,i,r,n){Object.is(i,"CURTIME")&&(a="".concat(new Date)),Object.is(i,"ENTITYFIELD")&&(a=a?a.toLowerCase():"",a=r[a]?r[a]:a),(w(s)||T(s))&&(s="\u5185\u5BB9\u5FC5\u987B\u7B26\u5408\u503C\u89C4\u5219");const o=$(t,e,a);if(!o&&n)throw new f(s);return!o}function hr(t,e,a,s,i,r,n){if(V(r)&&(r="\u5185\u5BB9\u957F\u5EA6\u5FC5\u987B\u7B26\u5408\u8303\u56F4\u89C4\u5219"),V(t)){if(n)throw new f("\u503C\u4E3A\u7A7A");return r="\u503C\u4E3A\u7A7A",!0}const u=t.length;if(e!==null){if(a){if(u<e){if(n)throw new f(r);return!0}}else if(u<=e){if(n)throw new f(r);return!0}}if(s!==null){if(i){if(u>s){if(n)throw new f(r);return!0}}else if(u>=s){if(n)throw new f(r);return!0}}return r="",!1}function Oe(t,e,a,s){if(V(a)&&(a="\u503C\u5FC5\u987B\u7B26\u5408\u6B63\u5219\u89C4\u5219"),V(t)){if(s)throw new f("\u503C\u4E3A\u7A7A");return a="\u503C\u4E3A\u7A7A",!0}if(!new RegExp(e).test(t)){if(s)throw new f(a);return!0}return a="",!1}function pr(t,e,a,s,i,r,n){if(V(r)&&(r="\u503C\u5FC5\u987B\u7B26\u5408\u503C\u8303\u56F4\u89C4\u5219"),V(t)){if(n)throw new f("\u503C\u4E3A\u7A7A");return r="\u503C\u4E3A\u7A7A",!0}if(Oe(t,/^-?\d*\.?\d+$/,"",n))return!0;const c=Number.parseFloat(t);if(e!==null){if(a){if(c<e){if(n)throw new f(r);return!0}}else if(c<=e){if(n)throw new f(r);return!0}}if(s!=null){if(i){if(c>s){if(n)throw new f(r);return!0}}else if(c>=s){if(n)throw new f(r);return!0}}return r="",!1}function fr(t,e,a,s,i){V(s)&&(s="\u503C\u5FC5\u987B\u7B26\u5408\u811A\u672C\u89C4\u5219");const r=e;let n="",o=!0;const u=c=>{o=!1,c?.length>0?c.forEach(l=>{l?.message&&(n+=l.message)}):c?.message&&(n=c.message)};try{const c=B.execScriptFn({value:t,data:r},a,{isAsync:!1});typeof c=="boolean"&&(o=c)}catch(c){ibiz.log.error(c),u(c)}if(s="",!o&&i)throw new f(s);return{isPast:o,infoMessage:n||s}}function mr(t){return t.logicType==="GROUP"}function Er(t){return t.logicType==="SINGLE"}function Xt(t,e){if(mr(e)){const a=e.defdlogics;if(!a||a.length===0)throw new m(e,"\u53D1\u73B0\u7A7A\u903B\u8F91\u7EC4\uFF0C\u903B\u8F91\u65E0\u6CD5\u6B63\u5E38\u6267\u884C\uFF01");let s=!0;return e.groupOP==="AND"?s=a.find(r=>!Xt(t,r))===void 0:e.groupOP==="OR"&&(s=e.defdlogics.find(r=>Xt(t,r))!==void 0),e.notMode?!s:s}if(Er(e))return $(t[e.defdname.toLowerCase()],e.condOP,e.value);throw new D(e,"\u672A\u652F\u6301\u7684\u903B\u8F91\u7C7B\u578B".concat(e.logicType))}function gr(t){return t.logicType==="GROUP"}function Cr(t){return t.logicType==="SINGLE"}function Ht(t,e){if(gr(e)){const a=e.panelItemLogics;if(!a||a.length===0)throw new m(e,"\u53D1\u73B0\u7A7A\u903B\u8F91\u7EC4\uFF0C\u903B\u8F91\u65E0\u6CD5\u6B63\u5E38\u6267\u884C\uFF01");let s=!0;return e.groupOP==="AND"?s=a.find(r=>!Ht(t,r))===void 0:e.groupOP==="OR"&&(s=e.panelItemLogics.find(r=>Ht(t,r))!==void 0),e.notMode?!s:s}if(Cr(e))return $(t[e.dstModelField.toLowerCase()],e.condOp,e.value);throw new D(e,"\u672A\u652F\u6301\u7684\u903B\u8F91\u7C7B\u578B".concat(e.logicType))}var Dr=d("LayoutPanelUtil",class{constructor(){this.cache=new Map}register(t,e){this.cache.set(t,e)}get(t){return this.cache.get(t)}fill(t){const{viewLayoutPanel:e}=t;if(!e||e.useDefaultLayout===!0){const a=this.calcLayoutTag(t);if(this.cache.has(a)){const s=A(this.cache.get(a));t.viewLayoutPanel=s,t.appCounterRefs&&(s.appCounterRefs=t.appCounterRefs,delete t.appCounterRefs),t.appViewEngines&&(s.appViewEngines=t.appViewEngines,delete t.appViewEngines),t.appViewLogics&&(s.appViewLogics=t.appViewLogics,delete t.appViewLogics),t.appViewRefs&&(s.appViewRefs=t.appViewRefs,delete t.appViewRefs),t.controls&&(s.controls=t.controls,delete t.controls)}}return t}calcLayoutTag(t){const{viewType:e,viewStyle:a}=t;switch(e){case"APPINDEXVIEW":return this.calcIndexViewLayoutTag(t);default:return"".concat(e,"_").concat(a)}}calcIndexViewLayoutTag(t){const{viewType:e,viewStyle:a,blankMode:s,mainMenuAlign:i}=t;let r="";return s?r="BLANK_MODE":i&&(r=i.toUpperCase()),r!==""?"".concat(e,"_").concat(a,"_").concat(r):"".concat(e,"_").concat(a)}});function Ja(t){const e={};return t.param09&&(e.srfprocessinstanceid=t.param09),e}function wr(t,e){var a;const{type:s,sequenceflowview:i,sequenceflowmobview:r}=e,n=((a=t.viewLayoutPanel)==null?void 0:a.appViewRefs)||t.appViewRefs,o=s?"WFUTILACTION@".concat(s.toUpperCase()):"WFACTION@".concat(ibiz.env.isMob?r:i),u=n?.find(c=>c.name.indexOf(o)!==-1);return u?.refAppViewId}var vr=d("ControlType",(t=>(t.APP_MENU="APPMENU",t.GRID="GRID",t.FORM="FORM",t.SEARCHFORM="SEARCHFORM",t.TOOLBAR="TOOLBAR",t.DRBAR="DRBAR",t.VIEWPANEL="VIEWPANEL",t.PICKUP_VIEW_PANEL="PICKUPVIEWPANEL",t.DATAVIEW="DATAVIEW",t.TREEGRID="TREEGRID",t.WF_EXPBAR="WFEXPBAR",t.TREEVIEW="TREEVIEW",t.TREE_EXP_BAR="TREEEXPBAR",t.TAB_VIEWPANEL="TABVIEWPANEL",t.DRTAB="DRTAB",t.CHART="CHART",t.REPORT_PANEL="REPORTPANEL",t.LIST="LIST",t.MOB_MDCTRL="MOBMDCTRL",t.MULTI_EDIT_VIEWPANEL="MULTIEDITVIEWPANEL",t.WIZARD_PANEL="WIZARDPANEL",t.UPDATE_PANEL="UPDATEPANEL",t.SEARCHBAR="SEARCHBAR",t.DASHBOARD="DASHBOARD",t.CALENDAR="CALENDAR",t.PANEL="PANEL",t.VIEW_LAYOUT_PANEL="VIEWLAYOUTPANEL",t.MAP="MAP",t.GANTT="GANTT",t.TREE_GRIDEX="TREEGRIDEX",t.KANBAN="KANBAN",t.CALENDAR_EXPBAR="CALENDAREXPBAR",t.CHART_EXPBAR="CHARTEXPBAR",t.DATA_VIEW_EXPBAR="DATAVIEWEXPBAR",t.GANTT_EXPBAR="GANTTEXPBAR",t.GRID_EXPBAR="GRIDEXPBAR",t.LIST_EXPBAR="LISTEXPBAR",t.MAP_EXPBAR="MAPEXPBAR",t.STATE_WIZARD_PANEL="STATEWIZARDPANEL",t.TAB_EXP_PANEL="TABEXPPANEL",t.CUSTOM="CUSTOM",t.CAPTIONBAR="CAPTIONBAR",t))(vr||{})),Ar=d("ViewType",(t=>(t.APP_INDEX_VIEW="APPINDEXVIEW",t.DE_GRID_VIEW="DEGRIDVIEW",t.DE_EDIT_VIEW="DEEDITVIEW",t.APP_DATA_UPLOAD_VIEW="APPDATAUPLOADVIEW",t.APP_ERROR_VIEW="APPERRORVIEW",t.APP_FILE_UPLOAD_VIEW="APPFILEUPLOADVIEW",t.APP_FUN_PICKUP_VIEW="APPFUNCPICKUPVIEW",t.APP_LOGIN_VIEW="APPLOGINVIEW",t.APP_LOGOUT_VIEW="APPLOGOUTVIEW",t.APP_PANEL_VIEW="APPPANELVIEW",t.APP_PIC_UPLOAD_VIEW="APPPICUPLOADVIEW",t.APP_PORTAL_VIEW="APPPORTALVIEW",t.APP_REDIRECT_VIEW="APPREDIRECTVIEW",t.APP_START_VIEW="APPSTARTVIEW",t.APP_WELCOME_VIEW="APPWELCOMEVIEW",t.APP_WF_ADD_STEP_AFTER_VIEW="APPWFADDSTEPAFTERVIEW",t.APP_WF_ADD_STEP_BEFORE_VIEW="APPWFADDSTEPBEFOREVIEW",t.APP_WF_REDIRECT_VIEW="APPWFREDIRECTVIEW",t.APP_WF_SENDBAC_VIEW="APPWFSENDBACKVIEW",t.APP_WF_STEP_ACTOR_VIEW="APPWFSTEPACTORVIEW",t.APP_WF_STEP_DATA_VIEW="APPWFSTEPDATAVIEW",t.APP_WF_STEP_TRACE_VIEW="APPWFSTEPTRACEVIEW",t.APP_WF_SUPPLY_INFO_VIEW="APPWFSUPPLYINFOVIEW",t.APP_WF_TAKE_ADVICE_VIEW="APPWFTAKEADVICEVIEW",t.DE_CALENDAR_EXP_VIEW="DECALENDAREXPVIEW",t.DE_CALENDAR_VIEW="DECALENDARVIEW",t.DE_CHART_EXP_VIEW="DECHARTEXPVIEW",t.DE_CHART_VIEW="DECHARTVIEW",t.DE_CHART_VIEW9="DECHARTVIEW9",t.DE_CUSTOM_VIEW="DECUSTOMVIEW",t.DE_DATA_VIEW="DEDATAVIEW",t.DE_DATA_VIEW9="DEDATAVIEW9",t.DE_DATAVIEW_EXP_VIEW="DEDATAVIEWEXPVIEW",t.DE_EDIT_VIEW2="DEEDITVIEW2",t.DE_EDIT_VIEW3="DEEDITVIEW3",t.DE_EDIT_VIEW4="DEEDITVIEW4",t.DE_EDIT_VIEW9="DEEDITVIEW9",t.DE_FORM_PICKUP_DATA_VIEW="DEFORMPICKUPDATAVIEW",t.DE_GANTT_EXP_VIEW="DEGANTTEXPVIEW",t.DE_GANTT_VIEW="DEGANTTVIEW",t.DE_GANTT_VIEW9="DEGANTTVIEW9",t.DE_GRID_EXP_VIEW="DEGRIDEXPVIEW",t.DE_GRID_VIEW2="DEGRIDVIEW2",t.DE_GRID_VIEW4="DEGRIDVIEW4",t.DE_GRID_VIEW8="DEGRIDVIEW8",t.DE_GRID_VIEW9="DEGRIDVIEW9",t.DE_HTML_VIEW="DEHTMLVIEW",t.DE_INDEX_PICKUP_DATA_VIEW="DEINDEXPICKUPDATAVIEW",t.DE_INDEX_VIEW="DEINDEXVIEW",t.DE_KANBAN_VIEW="DEKANBANVIEW",t.DE_KANBAN_VIEW9="DEKANBANVIEW9",t.DE_LIST_EXP_VIEW="DELISTEXPVIEW",t.DE_LIST_VIEW="DELISTVIEW",t.DE_LIST_VIEW9="DELISTVIEW9",t.DE_MAP_EXP_VIEW="DEMAPEXPVIEW",t.DE_MAP_VIEW="DEMAPVIEW",t.DE_MAP_VIEW9="DEMAPVIEW9",t.DE_MD_CUSTOM_VIEW="DEMDCUSTOMVIEW",t.DE_MEDITVIEW9="DEMEDITVIEW9",t.DE_MOB_CALENDAR_EXP_VIEW="DEMOBCALENDAREXPVIEW",t.DE_MOB_CALENDAR_VIEW="DEMOBCALENDARVIEW",t.DE_MOB_CALENDAR_VIEW9="DEMOBCALENDARVIEW9",t.DE_MOB_CHART_EXP_VIEW="DEMOBCHARTEXPVIEW",t.DE_MO_BCHART_VIEW="DEMOBCHARTVIEW",t.D_EMOB_CHART_VIEW9="DEMOBCHARTVIEW9",t.DE_MOB_CUSTOM_VIEW="DEMOBCUSTOMVIEW",t.DE_MOB_DATA_VIEW="DEMOBDATAVIEW",t.DE_MOB_DATA_VIEW_EXP_VIEW="DEMOBDATAVIEWEXPVIEW",t.DE_MOB_EDIT_VIEW="DEMOBEDITVIEW",t.DE_MOB_EDIT_VIEW3="DEMOBEDITVIEW3",t.DE_MOB_EDITVIEW9="DEMOBEDITVIEW9",t.DE_MOB_FORM_PICKUP_MDVIEW="DEMOBFORMPICKUPMDVIEW",t.DE_MOB_GANTT_EXP_VIEW="DEMOBGANTTEXPVIEW",t.DE_MOB_GANTT_VIEW="DEMOBGANTTVIEW",t.DE_MOB_GANTT_VIEW9="DEMOBGANTTVIEW9",t.DE_MOB_HTML_VIEW="DEMOBHTMLVIEW",t.DE_MOB_INDEX_PICKUP_MDVIEW="DEMOBINDEXPICKUPMDVIEW",t.DE_MOB_LIST_EXP_VIEW="DEMOBLISTEXPVIEW",t.DE_MOB_LIST_VIEW="DEMOBLISTVIEW",t.DE_MOB_MAP_VIEW="DEMOBMAPVIEW",t.DE_MOB_MAP_VIEW9="DEMOBMAPVIEW9",t.DE_MOB_MDVIEW="DEMOBMDVIEW",t.DE_MOB_MDVIEW9="DEMOBMDVIEW9",t.DE_MOB_MEDIT_VIEW9="DEMOBMEDITVIEW9",t.DE_MOB_MPICKUP_VIEW="DEMOBMPICKUPVIEW",t.DE_MOB_OPT_VIEW="DEMOBOPTVIEW",t.DE_MOB_PANEL_VIEW="DEMOBPANELVIEW",t.DE_MOB_PANEL_VIEW9="DEMOBPANELVIEW9",t.DE_MOB_PICKUP_LIST_VIEW="DEMOBPICKUPLISTVIEW",t.DE_MOB_PICKUP_MDVIEW="DEMOBPICKUPMDVIEW",t.DE_MOB_PICKUP_TREE_VIEW="DEMOBPICKUPTREEVIEW",t.DE_MOB_PICKUP_VIEW="DEMOBPICKUPVIEW",t.DE_MOB_PORTAL_VIEW="DEMOBPORTALVIEW",t.DE_MOB_PORTAL_VIEW9="DEMOBPORTALVIEW9",t.DE_MOB_REDIRECT_VIEW="DEMOBREDIRECTVIEW",t.DE_MOB_REPORT_VIEW="DEMOBREPORTVIEW",t.DE_MOB_TAB_EXP_VIEW="DEMOBTABEXPVIEW",t.DE_MOB_TAB_EXP_VIEW9="DEMOBTABEXPVIEW9",t.DE_MOB_TAB_SEARCH_VIEW="DEMOBTABSEARCHVIEW",t.DE_MOB_TAB_SEARCH_VIEW9="DEMOBTABSEARCHVIEW9",t.DE_MOB_TREE_EXP_VIEW="DEMOBTREEEXPVIEW",t.DEMOBTREEEXPVIEW9="DEMOBTREEEXPVIEW9",t.DE_MOB_TREE_VIEW="DEMOBTREEVIEW",t.DE_MOB_WFACTION_VIEW="DEMOBWFACTIONVIEW",t.DE_MOB_WF_DATA_REDIRECT_VIEW="DEMOBWFDATAREDIRECTVIEW",t.DE_MOB_WF_DYNAACTIO_NVIEW="DEMOBWFDYNAACTIONVIEW",t.DE_MOB_WFDYNA_EDIT_VIEW="DEMOBWFDYNAEDITVIEW",t.DE_MOB_WF_DYNA_EDIT_VIEW3="DEMOBWFDYNAEDITVIEW3",t.DE_MOB_WF_DYNA_EXP_MDVIEW="DEMOBWFDYNAEXPMDVIEW",t.DE_MO_BWF_DYNA_START_VIEW="DEMOBWFDYNASTARTVIEW",t.DE_MOB_WF_EDIT_VIEW="DEMOBWFEDITVIEW",t.DE_MOB_WF_EDIT_VIEW3="DEMOBWFEDITVIEW3",t.DE_MOB_WF_MDVIEW="DEMOBWFMDVIEW",t.DE_MOB_WF_PROXY_RESULT_VIEW="DEMOBWFPROXYRESULTVIEW",t.DE_MOB_WF_PROXY_START_VIEW="DEMOBWFPROXYSTARTVIEW",t.DE_MOB_WF_START_VIEW="DEMOBWFSTARTVIEW",t.DE_MOB_WIZARD_VIEW="DEMOBWIZARDVIEW",t.DE_MPICKUP_VIEW="DEMPICKUPVIEW",t.DE_MPICKUP_VIEW2="DEMPICKUPVIEW2",t.DE_OPT_VIEW="DEOPTVIEW",t.DE_PANEL_VIEW="DEPANELVIEW",t.DE_PANEL_VIEW9="DEPANELVIEW9",t.DE_PICKUP_DATA_VIEW="DEPICKUPDATAVIEW",t.DE_PICKUP_GRID_VIEW="DEPICKUPGRIDVIEW",t.DE_PICKUP_TREE_VIEW="DEPICKUPTREEVIEW",t.DE_PICKUP_VIEW="DEPICKUPVIEW",t.DE_PICKUP_VIEW2="DEPICKUPVIEW2",t.DE_PICK_UP_VIEW3="DEPICKUPVIEW3",t.DE_PORTAL_VIEW="DEPORTALVIEW",t.DE_PORTAL_VIEW9="DEPORTALVIEW9",t.DE_REDIRECT_VIEW="DEREDIRECTVIEW",t.DE_REPORT_VIEW="DEREPORTVIEW",t.DE_TAB_EXP_VIEW="DETABEXPVIEW",t.DE_TAB_EXP_VIEW9="DETABEXPVIEW9",t.DE_TAB_SEARCH_VIEW="DETABSEARCHVIEW",t.DE_TAB_SEARCH_VIEW9="DETABSEARCHVIEW9",t.DE_TREE_EXP_VIEW="DETREEEXPVIEW",t.DE_TREE_EXP_VIEW2="DETREEEXPVIEW2",t.DE_TREE_EXP_VIEW3="DETREEEXPVIEW3",t.DE_TREE_GRID_EXVIEW="DETREEGRIDEXVIEW",t.DE_TREE_GRID_EXVIEW9="DETREEGRIDEXVIEW9",t.DE_TREE_GRID_VIEW="DETREEGRIDVIEW",t.DE_TREE_GRID_VIEW9="DETREEGRIDVIEW9",t.DE_TREE_VIEW="DETREEVIEW",t.DE_TREE_VIEW9="DETREEVIEW9",t.DE_WF_ACTION_VIEW="DEWFACTIONVIEW",t.DE_WF_DATA_REDIRECT_VIEW="DEWFDATAREDIRECTVIEW",t.DE_WF_DYNA_ACTION_VIEW="DEWFDYNAACTIONVIEW",t.DE_WF_DYNA_EDIT_VIEW="DEWFDYNAEDITVIEW",t.DE_WF_DYNA_EDIT_VIEW3="DEWFDYNAEDITVIEW3",t.DE_WF_DYNA_EXP_GRID_VIEW="DEWFDYNAEXPGRIDVIEW",t.DE_WF_DYNA_START_VIEW="DEWFDYNASTARTVIEW",t.DE_WF_EDIT_PROXY_DATA_VIEW="DEWFEDITPROXYDATAVIEW",t.DE_WF_EDIT_VIEW="DEWFEDITVIEW",t.DE_WF_EDIT_VIEW2="DEWFEDITVIEW2",t.DE_WF_EDIT_VIEW3="DEWFEDITVIEW3",t.DE_WF_EDIT_VIEW9="DEWFEDITVIEW9",t.DE_WF_EXP_VIEW="DEWFEXPVIEW",t.DE_WF_GRID_VIEW="DEWFGRIDVIEW",t.DE_WF_PROXY_DATA_VIEW="DEWFPROXYDATAVIEW",t.DE_WF_PROXY_RESULT_VIEW="DEWFPROXYRESULTVIEW",t.DE_WF_PROXY_START_VIEW="DEWFPROXYSTARTVIEW",t.DE_WF_START_VIEW="DEWFSTARTVIEW",t.DE_WIZARD_VIEW="DEWIZARDVIEW",t))(Ar||{})),Ir=d("ViewMode",(t=>(t.ROUTE="ROUTE",t.MODAL="MODAL",t.DRAWER="DRAWER",t.EMBED="EMBED",t.POPOVER="POPOVER",t))(Ir||{})),yr=d("SysUIActionTag",(t=>(t.NEW="New",t.EDIT="Edit",t.REFRESH="Refresh",t.EXIT="Exit",t.SAVE_AND_EXIT="SaveAndExit",t.SAVE_AND_NEW="SaveAndNew",t.SAVE="Save",t.SAVE_ROW="SaveRow",t.REMOVE="Remove",t.REMOVE_AND_EXIT="RemoveAndExit",t.NEW_ROW="NewRow",t.TOGGLE_FILTER="ToggleFilter",t.IMPORT="Import",t.EXPORT_EXCEL="ExportExcel",t.SAVE_AND_START="SaveAndStart",t.VIEW_WF_STEP="ViewWFStep",t.NO="No",t.YES="Yes",t.CANCEL="Cancel",t.OK="Ok",t.SEARCH="Search",t.RESET="Reset",t.FINISH="Finish",t.NEXT_STEP="NextStep",t.PREV_STEP="PrevStep",t.ADD_SELECTION="AddSelection",t.REMOVE_SELECTION="RemoveSelection",t.REMOVE_ALL="RemoveAll",t.ADD_ALL="AddAll",t.LOGOUT="Logout",t.LOGIN="Login",t.CANCEL_CHANGES="CancelChanges",t.COPY="Copy",t.VIEW="View",t.TOGGLE_ROW_EDIT="ToggleRowEdit",t.REFRESH_ALL="RefreshAll",t.REFRESH_PARENT="RefreshParent",t.LOAD_MORE="LoadMore",t))(yr||{})),Fr=d("ViewCallTag",(t=>(t.LOAD="Load",t.GET_DATA="GetData",t.GET_ALL_DATA="GetAllData",t.VALIDATE="Validate",t.TOGGLE_COLLAPSE="ToggleCollapse",t.WF_WITHDRAW="WFWithdraw",t))(Fr||{})),Pr=d("ValueOP",(t=>(t.EQ="EQ",t.NOT_EQ="NOTEQ",t.GT="GT",t.GT_AND_EQ="GTANDEQ",t.LT="LT",t.LT_AND_EQ="LTANDEQ",t.IS_NULL="ISNULL",t.IS_NOT_NULL="ISNOTNULL",t.IN="IN",t.NOT_IN="NOTIN",t.LIKE="LIKE",t.LIFT_LIKE="LIFTLIKE",t.RIGHT_LIKE="RIGHT_LIKE",t.CHILD_OF="CHILDOF",t.USER_LIKE="USERLIKE",t.BIT_AND="BITAND",t.EXISTS="EXISTS",t.NOT_EXISTS="NOTEXISTS",t))(Pr||{})),br=d("PlatformType",(t=>(t.IOS="IOS",t.ANDROID="Android",t.WECHAT="WeChat",t.QQ="QQ",t.DINGTALK="DingTalk",t.BROWSER="Browser",t.WCMP="WeChatMiniProgram",t.DESKTOP="Desktop",t))(br||{})),Me=d("StudioViewEvents",class{});Me.onViewMounted="onMounted",Me.onViewDestroyed="onDestroyed";var Yt=d("StudioPanelEvents",class{});Yt.onClick="onClick",Yt.onChange="onChange",Yt.onEnter="onEnter",Yt.onLeave="onLeave";var k=d("StudioControlEvents",class{});k.onBeforeLoad="onBeforeLoad",k.onLoadSuccess="onLoadSuccess",k.onLoadError="onLoadError",k.onBeforeLoadDraft="onBeforeLoadDraft",k.onLoadDraftSuccess="onLoadDraftSuccess",k.onLoadDraftError="onLoadDraftError",k.onBeforeSave="onBeforeSave",k.onSaveSuccess="onSaveSuccess",k.onSaveError="onSaveError",k.onBeforeRemove="onBeforeRemove",k.onRemoveSuccess="onRemoveSuccess",k.onRemoveError="onRemoveError",k.CLICK="onClick";var Nr=d("Modal",class{constructor(t){this.mode="EMBED",this.viewUsage=4,this.ignoreDismissCheck=!1,this.hooks={shouldDismiss:new Ee,beforeDismiss:new Ee},this._dismiss=e=>{ibiz.log.error("\u5916\u90E8\u5173\u95ED\u80FD\u529B\u672A\u6CE8\u518C",e)},t.mode&&(this.mode=t.mode),t.routeDepth&&(this.routeDepth=t.routeDepth),t.viewUsage&&(this.viewUsage=t.viewUsage),t.dismiss&&(this._dismiss=t.dismiss)}injectDismiss(t){this._dismiss=t}async dismiss(t={ok:!1,data:[]}){const e={allowClose:!0};return this.ignoreDismissCheck!==!0&&await this.hooks.shouldDismiss.call(e),e.allowClose?(await this.hooks.beforeDismiss.call(t),this._dismiss(t),this.destroy(),!0):(ibiz.log.debug("shouldDismiss\u7ED3\u679C\u4E3Afalse,\u5173\u95ED\u4E2D\u65AD\u3002"),!1)}destroy(){this.hooks.shouldDismiss.clear(),this.hooks.beforeDismiss.clear()}});function xe(t,e){return t.filter(a=>{const{checkMode:s}=a,i=a.deformItemName||a.degridEditItemName;return s!==2&&i===e})}var Sr=d("TextUtil",class{constructor(){this.inputElement=null}format(t,e){return t}copy(t){return this.inputElement||(this.inputElement=document.createElement("input"),this.inputElement.style.position="absolute",this.inputElement.style.left="-9999px",document.body.appendChild(this.inputElement)),this.inputElement.value=t,this.inputElement.select(),document.execCommand("copy")}}),Rr=d("RawValueUtil",class{isNumber(t){return/^-?\d+(\.\d+)?$/.test(t)}format(t){let e=t;return t!==void 0&&(t==="true"||t==="false"?e=t==="true":this.isNumber(t)&&(e=parseFloat(t))),e}});async function nt(t,e=!0){const a=await Promise.allSettled(t),s=[],i=[];if(a.forEach(r=>{r.status==="fulfilled"?s.push(r.value):i.push(r.reason)}),i.length>0){const r=i.length===1?i[0]:i;if(e)throw r;ibiz.util.error.handle(r)}return s}var Lr=class{constructor(){this.psModelGroupCondBase=null}parse(t){if(t instanceof Array){const e=this.createPSModelGroupCond();e.parse(t),this.psModelGroupCondBase=e}}testSingleCond(t,e,a){try{if(t==="ISNULL")return e==null;if(t==="ISNOTNULL")return e!=null;if(t==="EQ"||t==="ABSEQ"||t==="GT"||t==="GTANDEQ"||t==="LT"||t==="LTANDEQ"||t==="NOTEQ"){let s=-1;if(e==a?s=0:e>a&&(s=1),t==="EQ"||t==="ABSEQ")return s===0;if(t==="GT")return s>0;if(t==="GTANDEQ")return s>=0;if(t==="LT")return s<0;if(t==="LTANDEQ")return s<=0;if(t==="NOTEQ")return s!==0}if(t==="LIKE")return e!=null&&a!=null?e.toString().toUpperCase().indexOf(a.toString().toUpperCase())!==-1:!1;if(t==="LEFTLIKE")return e!=null&&a!=null?e.toString().toUpperCase().indexOf(a.toString().toUpperCase())===0:!1}catch(s){ibiz.log.error(s)}return!1}getPSModelGroupCondBase(){return this.psModelGroupCondBase}},Za=class{constructor(){this.strCondOp=null}getCondOp(){return this.strCondOp}setCondOp(t){this.strCondOp=t}},Ve=class extends Za{parse(t){const e=t.length;let a=!0,s=!1,i=!1;for(let r=0;r<e;r++){if(a){const n=t[r];this.setCondOp(n),a=!1,s=!0;continue}if(s){const n=t[r];this.setParam(n),s=!1,i=!0;continue}if(i){const n=t[r];if(n instanceof Object&&!(n instanceof Array)){const o=n;o.type!=null&&this.setValueType(o.type.toString()),o.value!=null&&this.setValue(o.value.toString())}else this.setValue(n);break}}}getValueType(){return this.strValueType}setValueType(t){this.strValueType=t}getValue(){return this.strValue}setValue(t){this.strValue=t}getParamType(){return this.strParamType}setParamType(t){this.strParamType=t}getParam(){return this.strParam}setParam(t){this.strParam=t}},ts=class ni extends Za{constructor(){super(...arguments),this.childCondList=[],this.bNotMode=!1}parse(e){const a=e.length;let s=!0,i=!0,r=!1;for(let n=0;n<a;n++){if(s&&i&&e[n]==="!"){this.setNotMode(!0),s=!1;continue}if(i){const o=e[n];this.setCondOp(o),i=!1,s=!1,r=!0;continue}if(r){const o=e[n];if(o instanceof Array)o.forEach(u=>{if(u.length>0){const c=u[0].toString();if(c==="!"||c==="OR"||c==="AND"){const l=new ni;l.parse(u),this.childCondList.push(l)}else{const l=new Ve;l.parse(u),this.childCondList.push(l)}}});else throw new f("\u503C\u5FC5\u987B\u4E3A\u6570\u7EC4")}}}setNotMode(e){this.bNotMode=e}isNotMode(){return this.bNotMode}getChildPSModelCondBases(){return this.childCondList}},Tr=class extends ts{},Br=class extends Ve{},We=class ia extends Lr{test(e,a){return this.testCond(this.getPSModelGroupCondBase(),e,a)}testCond(e,a,s){if(e instanceof ts){const i=e.getChildPSModelCondBases();if(i==null||T(i))return!e.isNotMode();const r=e.getCondOp()==="AND";let n=r;for(let o=0;o<i.length;o++){const u=i[o];if(this.testCond(u,a,s)){if(!r){n=!0;break}}else if(r){n=!1;break}}return e.isNotMode()?!n:n}if(e instanceof Ve){T(e.getParam())&&ibiz.log.warn("\u6CA1\u6709\u6307\u5B9A\u5C5E\u6027\u540D\u79F0",e);const i=a[e.getParam().toLowerCase()];let r=null;const n=e.getValueType(),o=e.getValue();return n!=null&&!T(n)?(T(o)&&ibiz.log.warn("\u6CA1\u6709\u6307\u5B9A\u4E0A\u4E0B\u6587\u53C2\u6570\u540D\u79F0"),ia.PARAMTYPE_WEBCONTEXT===n?r=s.data[o.toLowerCase()]:ia.PARAMTYPE_DATACONTEXT===n&&(r=s.getValue(o.toLowerCase()))):r=e.getValue(),this.testSingleCond(e.getCondOp(),i,r)}return ibiz.log.warn("\u65E0\u6CD5\u8BC6\u522B\u7684\u6761\u4EF6\u5BF9\u8C61",e),!1}createPSModelSingleCond(){return new Br}createPSModelGroupCond(){return new Tr}};We.PARAMTYPE_DATACONTEXT="DATACONTEXT",We.PARAMTYPE_WEBCONTEXT="WEBCONTEXT";var _r=d("PSDEDQCondEngine",We);async function J(t,e){var a;const i=(a=ibiz.hub.getApp(e).model.appPFPluginRefs)==null?void 0:a.find(r=>r.pluginCode.toLowerCase()===t);if(!i){ibiz.log.error("\u672A\u5339\u914D\u5230\u63D2\u4EF6[".concat(t,"]\u6A21\u578B"));return}return await ibiz.plugin.loadPlugin(i),"".concat(i.pluginType,"_").concat(i.pluginCode)}var es=d("APP_COUNTER_PROVIDER_PREFIX","APPCOUNTER");function as(t,e){ibiz.register.register("".concat(es,"_").concat(t),e)}function ke(t){return ibiz.register.get("".concat(es,"_").concat(t))}async function ss(t){let e;const{codeName:a,counterType:s,sysPFPluginId:i,appId:r}=t;if(i){const n=await J(i,r);if(n&&(e=ke(n)),!e)ibiz.log.error("\u627E\u4E0D\u5230\u7CFB\u7EDF\u8BA1\u6570\u5668\u63D2\u4EF6".concat(n,"\u5BF9\u5E94\u7684\u9002\u914D\u5668"));else return e}if(s==="CUSTOM"){if(e=ke(a),e)return e;throw new f("\u627E\u4E0D\u5230\u81EA\u5B9A\u4E49\u7CFB\u7EDF\u8BA1\u6570\u5668".concat(a,"\u5BF9\u5E94\u7684\u9002\u914D\u5668"))}if(e=ke(s),e)return e;throw new f("\u627E\u4E0D\u7CFB\u7EDF\u8BA1\u6570\u5668\u7C7B\u578B".concat(s,"\u5BF9\u5E94\u7684\u9002\u914D\u5668"))}var is=d("CONTROL_PROVIDER_PREFIX","CONTROL");function Or(t,e){ibiz.register.register("".concat(is,"_").concat(t),e)}function Ue(t){return ibiz.register.get("".concat(is,"_").concat(t))}async function dt(t){let e;const{controlType:a,controlStyle:s,sysPFPluginId:i,appId:r}=t;if(i){const n=await J(i,r);if(n&&(e=Ue(n)),!e)ibiz.log.error("\u627E\u4E0D\u5230\u90E8\u4EF6\u63D2\u4EF6".concat(n,"\u5BF9\u5E94\u7684\u9002\u914D\u5668"));else return e}if(s&&s!=="DEFAULT"){const n="".concat(a,"_").concat(s);if(e=Ue(n),!e)ibiz.log.error("\u627E\u4E0D\u5230\u90E8\u4EF6\u7C7B\u578B\uFF1A[".concat(a,"]\u7684\u90E8\u4EF6\u6837\u5F0F\uFF1A[").concat(s,"]\u5BF9\u5E94\u7684\u9002\u914D\u5668"),t);else return e}if(e=Ue(a),e)return e;switch(a){case"DATAINFOBAR":return;default:ibiz.log.error("\u627E\u4E0D\u5230\u90E8\u4EF6\u7C7B\u578B".concat(a,"\u5BF9\u5E94\u7684\u9002\u914D\u5668"))}}var rs=d("EDITOR_PROVIDER_PREFIX","EDITOR");function Mr(t,e){ibiz.register.register("".concat(rs,"_").concat(t),e)}function qt(t){return ibiz.register.get("".concat(rs,"_").concat(t))}async function bt(t){let e;const{editorType:a,editorStyle:s,predefinedType:i,sysPFPluginId:r,appId:n}=t;if(r){const o=await J(r,n);if(o&&(e=qt(o)),!e)ibiz.log.error("\u627E\u4E0D\u5230\u7F16\u8F91\u5668\u63D2\u4EF6".concat(o,"\u5BF9\u5E94\u7684\u9002\u914D\u5668"));else return e}if(s&&s!=="DEFAULT"){const o="".concat(a,"_").concat(s);if(e=qt(o),!e)ibiz.log.error("\u627E\u4E0D\u5230\u7F16\u8F91\u5668\u7C7B\u578B\uFF1A[".concat(a,"]\u7684\u7F16\u8F91\u5668\u6837\u5F0F\uFF1A[").concat(s,"]\u5BF9\u5E94\u7684\u9002\u914D\u5668"),t);else return e}if(i){let o="".concat(i,"_").concat(a);if(s&&s!=="DEFAULT"&&(o+="_".concat(s)),e=qt(o),!e)ibiz.log.error("\u627E\u4E0D\u5230\u7F16\u8F91\u5668\u7C7B\u578B\uFF1A[".concat(a,"]\u7684\u9884\u7F6E\u7C7B\u578B\uFF1A[").concat(i,"]\u5BF9\u5E94\u7684\u9002\u914D\u5668"),t);else return e}if(e=qt(a),!e)ibiz.log.error("\u627E\u4E0D\u5230\u7F16\u8F91\u5668\u7C7B\u578B".concat(a,"\u5BF9\u5E94\u7684\u9002\u914D\u5668"));else return e}var ns=d("FORMDETAIL_PROVIDER_PREFIX","FORMDETAIL");function xr(t,e){ibiz.register.register("".concat(ns,"_").concat(t),e)}function os(t){return ibiz.register.get("".concat(ns,"_").concat(t))}async function ze(t){let e;const{detailType:a,sysPFPluginId:s,appId:i}=t;if(s){const r=await J(s,i);if(r&&(e=os(r)),!e)ibiz.log.error("\u627E\u4E0D\u5230\u8868\u5355\u6210\u5458\u63D2\u4EF6".concat(r,"\u5BF9\u5E94\u7684\u9002\u914D\u5668"));else return e}if(e=os(a),!e)ibiz.log.error("\u627E\u4E0D\u5230\u8868\u5355\u6210\u5458\u7C7B\u578B".concat(a,"\u5BF9\u5E94\u7684\u9002\u914D\u5668"));else return e}var us=d("GRIDCOLUMN_PROVIDER_PREFIX","GRIDCOLUMN");function Vr(t,e){ibiz.register.register("".concat(us,"_").concat(t),e)}function cs(t){return ibiz.register.get("".concat(us,"_").concat(t))}async function Ge(t){let e;const{columnType:a,enableRowEdit:s,sysPFPluginId:i,appId:r}=t;if(i){const o=await J(i,r);if(o&&(e=cs(o)),!e)ibiz.log.error("\u627E\u4E0D\u5230\u8868\u683C\u5217\u63D2\u4EF6".concat(o,"\u5BF9\u5E94\u7684\u9002\u914D\u5668"));else return e}const n=s?"".concat(a,"_EDIT"):a;if(e=cs(n),!e)ibiz.log.error("\u627E\u4E0D\u5230\u8868\u683C\u5217\u7C7B\u578B".concat(n,"\u5BF9\u5E94\u7684\u9002\u914D\u5668"));else return e}var ls=d("PANELITEM_PROVIDER_PREFIX","PANELITEM");function Wr(t,e){ibiz.register.register("".concat(ls,"_").concat(t.toUpperCase()),e)}function Nt(t){return ibiz.register.get("".concat(ls,"_").concat(t.toUpperCase()))}async function ds(t){var e;let a;const{itemType:s,sysPFPluginId:i,appId:r}=t;if(i){const n=await J(i,r);if(n&&(a=Nt(n)),!a)ibiz.log.error("\u627E\u4E0D\u5230\u9762\u677F\u6210\u5458\u63D2\u4EF6".concat(n,"\u5BF9\u5E94\u7684\u9002\u914D\u5668"));else return a}if(s==="CONTAINER"){const n=t.predefinedType||"DEFAULT",o="CONTAINER_".concat(n);if(a=Nt(o),!a)ibiz.log.error("\u627E\u4E0D\u5230\u9762\u677F\u5BB9\u5668\u9884\u7F6E\u7C7B\u578B\u4E3A".concat(n,"\u7684\u9002\u914D\u5668\uFF0C\u6CE8\u518Ckey\u4E3A").concat(o));else return a}if(s==="RAWITEM"){const n=((e=t.rawItem)==null?void 0:e.predefinedType)||"DEFAULT",o="RAWITEM_".concat(n);if(a=Nt(o),!a)ibiz.log.error("\u627E\u4E0D\u5230\u9762\u677F\u6210\u5458\u76F4\u63A5\u5185\u5BB9\u9884\u7F6E\u7C7B\u578B\u4E3A".concat(n,"\u7684\u9002\u914D\u5668\uFF0C\u6CE8\u518Ckey\u4E3A").concat(o));else return a}if(s==="FIELD"){const{editor:n}=t;if(n&&n.predefinedType){const o="FIELD_".concat(n.predefinedType.toUpperCase());if(a=Nt(o),a)return a}}if(a=Nt(s),!a)ibiz.log.error("\u627E\u4E0D\u5230\u9762\u677F\u6210\u5458\u7C7B\u578B".concat(s,"\u5BF9\u5E94\u7684\u9002\u914D\u5668"));else return a}var hs=d("PORTLET_PROVIDER_PREFIX","PORTLET");function kr(t,e){ibiz.register.register("".concat(hs,"_").concat(t),e)}function ps(t){return ibiz.register.get("".concat(hs,"_").concat(t))}async function fs(t){let e;const{portletType:a,sysPFPluginId:s,appId:i}=t;if(s){const r=await J(s,i);if(r&&(e=ps(r)),!e)ibiz.log.error("\u627E\u4E0D\u5230\u95E8\u6237\u90E8\u4EF6\u63D2\u4EF6".concat(r,"\u5BF9\u5E94\u7684\u9002\u914D\u5668"));else return e}if(e=ps(a),!e)ibiz.log.error("\u627E\u4E0D\u5230\u95E8\u6237\u90E8\u4EF6\u6210\u5458\u7C7B\u578B".concat(a,"\u5BF9\u5E94\u7684\u9002\u914D\u5668"));else return e}var ms=d("UIACTION_PROVIDER_PREFIX","UIACTION");function St(t,e){ibiz.register.register("".concat(ms,"_").concat(t),e)}function Es(t){return ibiz.register.get("".concat(ms,"_").concat(t))}async function gs(t){let e;const{uiactionMode:a,sysPFPluginId:s,appId:i}=t;if(s){const r=await J(s,i);if(r&&(e=Es(r)),!e)ibiz.log.error("\u627E\u4E0D\u5230\u754C\u9762\u884C\u4E3A\u63D2\u4EF6".concat(r,"\u5BF9\u5E94\u7684\u9002\u914D\u5668"));else return e}if(e=Es(a),e)return e;throw new f("\u627E\u4E0D\u754C\u9762\u884C\u4E3A\u6A21\u5F0F".concat(a,"\u5BF9\u5E94\u7684\u9002\u914D\u5668"))}var Cs=d("UILOGINNODE_PROVIDER_PREFIX","UI_LOGIN_NODE");function Ur(t,e){ibiz.register.register("".concat(Cs,"_").concat(t),e)}async function Ds(t){let e;const{sysPFPluginId:a,appId:s}=t,i=await J(a,s);if(i){if(e=ibiz.register.get("".concat(Cs,"_").concat(i)),e)return e;throw new f("\u627E\u4E0D\u5230\u754C\u9762\u903B\u8F91\u524D\u7AEF\u63D2\u4EF6\u8282\u70B9\uFF0C\u63D2\u4EF6".concat(i,"\u5BF9\u5E94\u7684\u9002\u914D\u5668"))}}var ws=d("VIEW_PROVIDER_PREFIX","VIEW");function zr(t,e){ibiz.register.register("".concat(ws,"_").concat(t),e)}function Qt(t){return ibiz.register.get("".concat(ws,"_").concat(t))}async function Gr(t){let e;const{viewType:a,viewStyle:s,sysPFPluginId:i,appId:r}=t;if(i){const n=await J(i,r);if(n&&(e=Qt(n)),!e)ibiz.log.error("\u627E\u4E0D\u5230\u89C6\u56FE\u63D2\u4EF6".concat(n,"\u5BF9\u5E94\u7684\u9002\u914D\u5668"));else return e}if(s&&s!=="DEFAULT"){const n="".concat(a,"_").concat(s);if(e=Qt(n),!e)ibiz.log.error("\u627E\u4E0D\u5230\u89C6\u56FE\u7C7B\u578B\uFF1A[".concat(a,"]\u7684\u89C6\u56FE\u6837\u5F0F\uFF1A[").concat(s,"]\u5BF9\u5E94\u7684\u9002\u914D\u5668"),t);else return e}return e||(e=Qt(a)),e||(e=Qt("DEFAULT")),e}var vs=d("ASYNC_ACTION_PROVIDER_PREFIX","ASYNC_ACTION");function jr(t,e){ibiz.register.register("".concat(vs,"_").concat(t),e)}function Kr(t){return ibiz.register.get("".concat(vs,"_").concat(t))}function Xr(t){const e=Kr(t);if(e)return e;throw new f("\u627E\u4E0D\u5F02\u6B65\u64CD\u4F5C\u7C7B\u578B".concat(t,"\u5BF9\u5E94\u7684\u9002\u914D\u5668"))}var Hr=d("PlatformProviderBase",class{back(){throw new Error("Method not implemented.")}init(){throw new Error("Method not implemented.")}async login(t,e,a){return ibiz.auth.login(t,e)}async download(t,e){const a=await ibiz.net.request(t,{method:"get",responseType:"blob"});if(a.status!==200)throw new f("\u4E0B\u8F7D\u6587\u4EF6\u5931\u8D25");if(a.data){const s=e;return oa(a.data,s),Promise.resolve(!0)}else throw new f("\u6587\u4EF6\u6D41\u6570\u636E\u4E0D\u5B58\u5728")}}),Yr=d("BrowserPlatformProvider",class extends Hr{});function qr(){const t=new Yr;ys("Browser",()=>t)}var Rt=window.navigator.userAgent.toLowerCase();function Qr(){return/Android|Adr/i.test(Rt)}function $r(){return/iPhone|iPod|iPad/i.test(Rt)}function Jr(){return/MicroMessenger/i.test(Rt)}function Zr(){return/DingTalk/i.test(Rt)}function tn(){return/miniProgram/i.test(Rt)||window.__wxjs_environment==="miniprogram"}function As(){return Qr()?"Android":$r()?"IOS":Jr()?"WeChat":Zr()?"DingTalk":tn()?"WeChatMiniProgram":"Browser"}var Is=d("PLATFORM_PROVIDER_PREFIX","PLATFORM");function ys(t,e){ibiz.register.register("".concat(Is,"_").concat(t),e)}function Fs(t){return ibiz.register.get("".concat(Is,"_").concat(t))}function Ps(){const t=As(),e=Fs(t);return e||Fs("Browser")}var en=d("AppCounter",class{constructor(t){this.model=t,this.destroyed=!1,this.context=Bt.create(),this.params={},this.evt=new Et,this.data={}}get isDestroyed(){return this.destroyed}async init(t,e){this.setParams(t,e),this.interval(),await this.load()}setParams(t,e){t&&(this.context=A(t)),e&&(this.params=A(e))}interval(){this.destroyInterval(),this.intervalTimer=setInterval(()=>{this.evt.getSize("change")>0&&this.load()},this.model.timer||6e3)}destroyInterval(){this.intervalTimer&&(clearInterval(this.intervalTimer),this.intervalTimer=null)}async load(){throw new f("\u672A\u5B9E\u73B0\u8BA1\u6570\u5668\u52A0\u8F7D\u65B9\u6CD5")}refresh(t,e){return this.setParams(t,e),this.load()}onChange(t,e=!0){this.evt.on("change",t),e&&x(this.data)&&t(this.data)}offChange(t){this.evt.off("change",t)}getCounter(t){return this.data[t.toLowerCase()]||0}destroy(){this.destroyed=!0,this.context.destroy(),this.destroyInterval(),this.evt.reset()}}),an=d("AppDECounter",class extends en{async init(t,e){this.appDataEntityId=this.model.appDataEntityId;const a=this.model.getAppDEActionId;if(!a)throw new m(this.model,"\u672A\u627E\u5230\u83B7\u53D6\u8BA1\u6570\u5668\u884C\u4E3A!");this.action=a,await super.init(t,e)}async load(){const e=await ibiz.hub.getApp(this.context.srfappid).deService.exec(this.appDataEntityId,this.action,this.context,this.params);return e.ok&&(this.data=e.data,this.evt.emit("change",this.data)),this.data}}),sn=d("AppDECounterProvider",class{createCounter(t){return new an(t)}});function bs(){as("DEDR",()=>new sn)}var rn=d("DEDQCondUtil",class{static getCond(t){if(this.map.has(t))return this.map.get(t);const e=t.dedqgroupConditions;if(e){const a=new _r;return a.parse(["OR",this.calcCond(e)]),this.map.set(t,a),a}return null}static calcCond(t){const e=[];return t.forEach(a=>{const s=[];if(a.condType==="GROUP"){const i=a;i.notMode&&s.push("!"),s.push(a.condOp);const r=i.dedqconditions;if(r){const n=this.calcCond(r);s.push(n)}}else if(a.condType==="SINGLE"){const i=a;s.push(i.fieldName),i.condValue||s.push("")}else throw new D(a,"\u6682\u672A\u652F\u6301\u7684\u67E5\u8BE2\u6761\u4EF6\u7C7B\u578B: ".concat(a.condType));e.push(s)}),e}});rn.map=new WeakMap;var nn=d("DynamicCodeListCache",class{constructor(t){this.cache=new Map,this.isPredefined=!1,this.codeList=t}async init(){const t=async()=>{const{predefinedType:e}=this.codeList;if(e){if(this.isPredefined=!0,!["OPERATOR","RUNTIME"].includes(e))throw new D(this.codeList,"\u9884\u5B9A\u4E49\u7C7B\u578B".concat(e,"\u6682\u4E0D\u652F\u6301"));return}this.initPromise=void 0};return this.initPromise=t(),this.initPromise}convertData(t){const e={},{valueAppDEFieldId:a,textAppDEFieldId:s,iconClsAppDEFieldId:i,iconClsXAppDEFieldId:r,iconPathAppDEFieldId:n,iconPathXAppDEFieldId:o,disableAppDEFieldId:u,dataAppDEFieldId:c}=this.codeList,l=a?t[a]:t.srfkey;return e.id=l,e.value=l,e.text=s?t[s]:t.srfmajortext,(i||r||n||o)&&(e.sysImage={},i&&(e.sysImage.cssClass=t[i]),r&&(e.sysImage.cssClassX=t[r]),n&&(e.sysImage.imagePath=t[n]),o&&(e.sysImage.imagePathX=t[o])),u&&(e.disableSelect=t[u]),c&&t[c]&&(e.data=B.execSingleLine(t[c])),e}async load(t={},e={}){const a=ibiz.hub.getApp(t.srfappid),{appDataEntityId:s,appDEDataSetId:i,minorSortAppDEFieldId:r,minorSortDir:n,pvalueAppDEFieldId:o,customCond:u}=this.codeList,c={...e};if(r&&n&&Object.assign(c,{sort:"".concat(r.toLowerCase(),",").concat(n.toLowerCase())}),u){const h=B.execSingleLine(u),E=y(h,c,t);Object.assign(c,E)}if(c.size||(c.size=1e4),this.isPredefined){const h=await a.net.get("/dictionaries/codelist/".concat(this.codeList.codeName),c);return Object.freeze(h.data.items)}if(!s)throw new m(this.codeList,"\u672A\u914D\u7F6E\u5E94\u7528\u5B9E\u4F53");if(!i)throw new m(this.codeList,"\u672A\u914D\u7F6E\u6570\u636E\u96C6");const l=await a.deService.exec(s,i,t,void 0,c);let p=[];return l.data.length&&l.data.forEach(h=>{if(o){const E=this.prepareTreeData(l.data);E&&(p=E)}else p.push(this.convertData(h))}),Object.freeze(p)}prepareTreeData(t,e){const{pvalueAppDEFieldId:a}=this.codeList;let s=[];if(s=t.filter(i=>e?i[a]===e:!i[a]),s.length!==0)return s.map(i=>{const r=this.convertData(i);return r.children=this.prepareTreeData(t,r.value),r})}async get(t={},e={}){if(this.initPromise&&await this.initPromise,!this.codeList.enableCache)return this.load(t,e);const a=JSON.stringify(t)+JSON.stringify(e);if(this.cache.has(a)){const u=this.cache.get(a);if(u.expirationTime>new Date().getTime())return u.promise?u.promise:u.items;this.cache.delete(a)}const s=this.load(t,e),{cacheTimeout:i}=this.codeList,r=i===-1||w(i)?ibiz.config.codeList.timeout:this.codeList.cacheTimeout,n={expirationTime:new Date().getTime()+r,promise:s};this.cache.set(a,n);const o=await s;return n.items=o,delete n.promise,o}});function Ns(t,e){if(e!=null){const{srfkey:a}=e;if(!w(a)&&!T(a))return!0}throw new f("\u6267\u884C\u300C".concat(t,"\u300D\u4E0D\u5B58\u5728\u300Csrfkey\u300D\u65E0\u6CD5\u5904\u7406"))}function ot(t,e){const{srfsessionid:a}=e;if(!w(a)&&!T(a))return!0;throw new f("\u6267\u884C\u300C".concat(t,"\u300D\u4E0D\u5B58\u5728\u300Csrfsessionid\u300D\u65E0\u6CD5\u5904\u7406"))}var on=d("DECache",class{constructor(){this.cacheMap=new Map}forceAdd(t,e){const s=this.getCacheByTag(t).get(e.srfkey);s&&(s.assign(e),ibiz.log.warn("forceAdd",e.srfkey,e))}forceUpdate(t,e){this.getCacheByTag(t).set(e.srfkey,A(e)),ibiz.log.warn("forceUpdate",e.srfkey,e)}forceDelete(t,e){this.getCacheByTag(t).delete(e),ibiz.log.warn("forceDelete",e)}add(t,e){try{return ot("add",t),(w(e.srfkey)||T(e.srfkey))&&(e.srfkey=K()),e.srftempdate=new Date().getTime(),this.getCacheByTag(t).set(e.srfkey,A(e)),ibiz.log.warn("add",e.srfkey,e),e}catch(a){return ibiz.log.error(a),null}}get(t,e){try{ot("get",t);const s=this.getCacheByTag(t).get(e);return ibiz.log.warn("get",e,s),A(s)}catch(a){return ibiz.log.error(a),null}}update(t,e){try{ot("update",t),Ns("update",e),e.srftempdate=new Date().getTime();const a=this.getCacheByTag(t),s=a.get(e.srfkey);if(s)return s.assign(e),a.set(e.srfkey,s),ibiz.log.warn("update",e.srfkey,e),A(s);throw new Error("\u6570\u636E\u4E0D\u5B58\u5728\uFF0C\u65E0\u6CD5\u66F4\u65B0!")}catch(a){return ibiz.log.error(a),null}}delete(t,e){try{ot("delete",t);const a=this.getCacheByTag(t),s=e;if(a.has(s)){const i=a.get(s);return i.srftempdate=new Date().getTime(),a.delete(s),ibiz.log.warn("delete",s),i}return null}catch(a){return ibiz.log.error(a),null}}createBatch(t,e){try{ot("add",t);const a=this.getCacheByTag(t);for(let s=0;s<e.length;s++){const i=e[s];(w(i.srfkey)||T(i.srfkey))&&(i.srfkey=K()),i.srftempdate=new Date().getTime();const r=A(i);a.set(i.srfkey,r),e[s]=r,ibiz.log.warn("add",i.srfkey,i)}return e}catch(a){ibiz.log.error(a)}return[]}updateBatch(t,e){try{ot("update",t);const a=this.getCacheByTag(t);for(let s=0;s<e.length;s++){const i=e[s];Ns("update",i),i.srftempdate=new Date().getTime();const r=a.get(i.srfkey);if(r)r.assign(i),a.set(i.srfkey,r),ibiz.log.warn("update",i.srfkey,i),e[s]=A(r);else throw new Error("\u6570\u636E[".concat(i.srfdename,"-").concat(i.srfmajortext,"(").concat(i.srfkey,")]\u4E0D\u5B58\u5728\uFF0C\u65E0\u6CD5\u66F4\u65B0!"))}return e}catch(a){return ibiz.log.error(a),null}}deleteBatch(t,e){try{ot("delete",t)}catch(i){return ibiz.log.error(i),e}const a=this.getCacheByTag(t),s=[];for(let i=0;i<e.length;i++){const r=e[i];a.has(r)||s.push(r)}if(s.length>0)throw new Error("\u672A\u627E\u5230\u4EE5\u4E0B\u6570\u636E\u300C".concat(s.join("\u3001"),"\u300D\uFF0C\u65E0\u6CD5\u5220\u9664!"));for(let i=0;i<e.length;i++){const r=e[i];a.delete(r),ibiz.log.warn("delete",r)}return[]}checkData(t,e){return this.getList(t).findIndex(i=>i.srfkey===e)!==-1}getList(t){try{ot("getList",t);const e=this.getCacheByTag(t);if(!e)return[];const a=e.values();return Array.from(a)}catch(e){return ibiz.log.error(e),[]}}generatePred(t={}){const e={};t.srfkey&&(e.srfkey=rt(t.srfkey)),delete t.srfkey;for(const a in t)if(Object.prototype.hasOwnProperty.call(t,a)){const s=t[a];e[a]=rt(s)}return gt(e)}clear(t){const e=t.srfsessionid;this.cacheMap.size>0&&this.cacheMap.delete(e)}getCacheByTag(t){const e=t.srfsessionid;return this.cacheMap.has(e)||this.cacheMap.set(e,new Map),this.cacheMap.get(e)}}),un=/\$\{(.*?)\}/g;function Ss(t,e){const i=(e.requestPaths||[]).map(r=>{const n=r.match(un),o=n?.map(u=>u.substring(2,u.length-1))||[];return{path:r,keys:o}}).filter(r=>{const{keys:n}=r;return n.length===0?!0:n.every((o,u)=>u===n.length-1?!0:t[o]!=null)}).sort((r,n)=>n.keys.length-r.keys.length);if(i.length>0)return i[0]}function $t(t,e){const a=Ss(t,e);if(a){if(a.keys.length>0){let{path:s}=a;return a.keys.forEach((i,r)=>{r===a.keys.length-1?s=s.replace(new RegExp("/[^/]+/\\$\\{".concat(i,"\\}")),""):s=s.replace("${".concat(i,"}"),t[i])}),s}return a.path}return""}var cn=d("SearchFilter",class{constructor(t,e){if(this.page=0,this.size=1e3,this.data={},this.sortField="srfordervalue",this.sortMode="ASC",this.context=t,e){if(!w(e.page)&&!T(e.page)&&(this.page=e.page),!w(e.size)&&!T(e.size)&&(this.size=e.size),!w(e.query)&&!T(e.query)&&(this.query=e.query),!w(e.sort)&&!T(e.sort)){const a=e.sort.split(",");a.length>=1&&([this.sortField]=a),a.length>=2&&(this.sortMode=a[1].toUpperCase())}!w(e.srfparentkey)&&!T(e.srfparentkey)&&(this.srfparentkey=e.srfparentkey),!w(e.srfparentdename)&&!T(e.srfparentdename)&&(this.srfparentdename=e.srfparentdename),this.data={...e},delete this.data.page,delete this.data.size,delete this.data.query,delete this.data.sort,delete this.data.srfparentkey,delete this.data.srfparentdename}}getValue(t){return this.data[t]?this.data[t]:this.context[t]}}),ln=d("CodeListService",class{constructor(t){this.appModel=t,this.allCodeLists=new Map,this.cache=new Map}getStatic(t){const e=t.codeName;if(this.cache.has(e))return this.cache.get(e);const a=t.codeItems;let s=[];return a?.length&&(s=this.formatStaticItems(a,t.codeItemValueNumber)),this.cache.set(e,Object.freeze(s)),s}setCodeList(t){const{id:e,codeName:a}=t;this.allCodeLists.set(e,t),this.allCodeLists.set(a,t)}getCodeList(t){return this.allCodeLists.get(t)}formatStaticItems(t,e){return t.map(a=>{var s;let i=a.text;a.textLanguageRes&&(i=ibiz.i18n.t(a.textLanguageRes.lanResTag,a.text));let{tooltip:r}=a;a.tooltipLanguageRes&&(r=ibiz.i18n.t(a.tooltipLanguageRes.lanResTag,a.tooltip));const n={text:i,value:e?Number(a.value):a.value,color:a.color,id:a.codeName,textCls:a.textCls,disableSelect:a.disableSelect,tooltip:r,data:a.data?B.execSingleLine(a.data):void 0,sysImage:a.sysImage};return(s=a.codeItems)!=null&&s.length&&(n.children=this.formatStaticItems(a.codeItems,e)),Object.freeze(n)})}async getDynamicCodeList(t,e={},a={}){let s;const i=t.codeName;return this.cache.has(i)?s=this.cache.get(i):(s=new nn(t),this.cache.set(i,s),await s.init()),s.get(e,a)}async get(t,e,a){const s=this.allCodeLists.get(t);if(!s)throw new f("\u627E\u4E0D\u5230".concat(t,"\u4EE3\u7801\u8868"));return s.codeListType==="STATIC"?this.getStatic(s):s.codeListType==="DYNAMIC"?this.getDynamicCodeList(s,e,a):[]}}),Jt=d("ConfigService",class{constructor(t,e,a){this.appId=t,this.folder=e,this.tag=a,this.app=ibiz.hub.getApp(t)}async save(t){const e=await this.app.net.put("/configs/".concat(this.folder,"/").concat(this.tag),t);return e.ok?e.data:!1}async load(){const t=await this.app.net.get("/configs/".concat(this.folder,"/").concat(this.tag));return t.ok?t.data:{}}}),Rs=d("CounterService",class{static async getCounter(t,e,a){const s=t.id;if(this.counterMap.has(s)){const n=this.counterMap.get(s);if(n.isDestroyed===!1)return n;this.counterMap.delete(s)}const r=(await ss(t)).createCounter(t);return await r.init(e,a),this.counterMap.set(s,r),r}static async getCounterByRef(t,e,a){const{appCounter:s}=t;if(!s)throw new m(t,"\u672A\u914D\u7F6E\u5E94\u7528\u8BA1\u6570\u5668!");return this.getCounter(s,e,a)}});Rs.counterMap=new Map;var dn=d("WorkFlowService",class{constructor(t){this.model=t,this.commonBaseUrl="",this.app=ibiz.hub.getApp(t.appId);const e=ibiz.appData.context;this.commonBaseUrl="/wfcore/".concat(e.srfsystemid,"-app-").concat(this.app.model.codeName.toLowerCase(),"/").concat(this.model.name.toLowerCase())}getBaseUrl(){return this.commonBaseUrl}getActiveData(t,e){return e.srfprocessinstanceid&&(t.srfprocessinstanceid=e.srfprocessinstanceid),t}getWFInstanceTag(t){return t.srfprocessinstanceid||"alls"}async getWFStep(t){const{processDefinitionKey:e,taskDefinitionKey:a}=t;return this.app.net.get("".concat(this.getBaseUrl(),"/process-definitions/").concat(e,"/usertasks/").concat(a))}async getWFLink(t,e){const a=t[this.model.codeName.toLowerCase()],{taskDefinitionKey:s}=t;return this.app.net.post("".concat(this.getBaseUrl(),"/").concat(a,"/usertasks/").concat(s,"/ways"),{activedata:this.getActiveData(e,t)})}async getWFHistory(t){const e=t[this.model.codeName.toLowerCase()];return this.app.net.get("".concat(this.getBaseUrl(),"/").concat(e,"/process-instances/").concat(this.getWFInstanceTag(t),"/history"))}async getWFProcessDiagram(t){const e=t[this.model.codeName.toLowerCase()];return this.app.net.request("".concat(this.getBaseUrl(),"/").concat(e,"/process-instances/").concat(this.getWFInstanceTag(t),"/processdiagram"),{method:"post",data:{},responseType:"blob"})}async getWFVersion(){return this.app.net.get("".concat(this.getBaseUrl(),"/process-definitions2"))}async wfStart(t,e,a){return this.app.net.post("".concat(this.getBaseUrl(),"/").concat(t[this.model.codeName.toLowerCase()],"/process-instances"),{...e,activedata:this.getActiveData(a,t)})}async wfSubmit(t,e,a){return this.app.net.post("".concat(this.getBaseUrl(),"/").concat(t[this.model.codeName.toLowerCase()],"/tasks/").concat(e.taskId),{...e,activedata:this.getActiveData(a,t)})}async wfWithdraw(t,e,a){return this.app.net.post("".concat(this.getBaseUrl(),"/").concat(t[this.model.codeName.toLowerCase()],"/tasks/").concat(e.taskId,"/withdraw"),{...e,activedata:this.getActiveData(a,t)})}async wfReassign(t,e,a){return ibiz.net.post("".concat(this.getBaseUrl(),"/").concat(t[this.model.codeName.toLowerCase()],"/tasks/").concat(e.taskId,"/transfer"),{...e,activedata:this.getActiveData(a,t)})}async wfAddStepBefore(t,e,a){return ibiz.net.post("".concat(this.getBaseUrl(),"/").concat(t[this.model.codeName.toLowerCase()],"/tasks/").concat(e.taskId,"/beforesign"),{...e,activedata:this.getActiveData(a,t)})}async wfAddStepAfter(t,e,a){return ibiz.net.post("".concat(this.getBaseUrl(),"/").concat(t[this.model.codeName.toLowerCase()],"/tasks/").concat(e.taskId,"/aftersign"),{...e,activedata:this.getActiveData(a,t)})}async wfSendBack(t,e,a){return ibiz.net.post("".concat(this.getBaseUrl(),"/").concat(t[this.model.codeName.toLowerCase()],"/tasks/").concat(e.taskId,"/sendback"),{...e,activedata:this.getActiveData(a,t)})}async wfSendCopy(t,e,a){return ibiz.net.post("".concat(this.getBaseUrl(),"/").concat(t[this.model.codeName.toLowerCase()],"/tasks/").concat(e.taskId,"/sendcopy"),{...e,activedata:this.getActiveData(a,t)})}async exec(t,e,a={},s={}){switch(t){case"wfstart":return this.wfStart(e,a,s);case"wfsubmit":return this.wfSubmit(e,a,s);case"reassign":return this.wfReassign(e,a,s);case"addstepbefore":return this.wfAddStepBefore(e,a,s);case"addstepafter":return this.wfAddStepAfter(e,a,s);case"sendback":return this.wfSendBack(e,a,s);case"sendcopy":return this.wfSendCopy(e,a,s);default:throw new f("\u300C".concat(t,"\u300D\u672A\u5B9E\u73B0"))}}}),hn=class{constructor(t){this.model=t}exportData(t,e,a,s){const i=$t(a,this.model),r="".concat(i,"/").concat(this.model.codeName2.toLowerCase(),"/exportdata/").concat(e.toLowerCase(),"/?srfexporttag=").concat(t.codeName);return ibiz.net.request(r,{method:"post",data:s,responseType:"blob"})}},pn=d("Srfuf",(t=>(t[t.CREATE=0]="CREATE",t[t.UPDATE=1]="UPDATE",t))(pn||{})),Zt=d("AppDataEntity",class le{get srfuf(){return this.srfkey===this.tempsrfkey?1:0}constructor(e,a={}){Object.defineProperty(this,"_entity",{enumerable:!1,configurable:!0,value:e}),Object.defineProperty(this,"_data",{enumerable:!1,configurable:!0,value:a instanceof le?A(a._data):A(a)}),Object.defineProperty(this,"srfdeid",{get(){return e.id}}),Object.defineProperty(this,"srfdecodename",{get(){return e.codeName}});const s=lt(e.appDEFields||[],e.keyAppDEFieldId);if(s){const r=s.codeName.toLowerCase();Object.defineProperty(this,"srfkeyfield",{get(){return r}}),Object.defineProperty(this,"srfkey",{set(n){this._data[r]=n},get(){return this._data[r]}})}else ibiz.log.warn("\u5B9E\u4F53[".concat(e.codeName,"]\u672A\u914D\u7F6E\u4E3B\u952E\u5B57\u6BB5"));const i=lt(e.appDEFields||[],e.majorAppDEFieldId);if(i){const r=i.codeName.toLowerCase();Object.defineProperty(this,"srfmajorfield",{get(){return r}}),Object.defineProperty(this,"srfmajortext",{set(n){this._data[r]=n},get(){return this._data[r]}})}else ibiz.log.warn("\u5B9E\u4F53[".concat(e.codeName,"]\u672A\u914D\u7F6E\u4E3B\u6587\u672C\u5B57\u6BB5"));Object.defineProperty(this,"tempsrfkey",{enumerable:!1,configurable:!0,writable:!0,value:w(this.srfkey)?K():this.srfkey}),this.defineProperties()}defineProperties(){var e;const{_data:a,convertVal:s}=this,i={};Object.keys(a).forEach(n=>{i[n]={enumerable:!0,set(o){a[n]=o},get(){return a[n]}}}),(e=this._entity.appDEFields)==null||e.forEach(n=>{const o=n.codeName.toLowerCase();i[o]={enumerable:!0,set(u){a[o]=s(u,n.stdDataType)},get(){return a[o]}},a[o]=s(a[o],n.stdDataType)}),Object.defineProperties(this,i)}clone(){const e=new le(this._entity,this._data);return e.srfkey=this.srfkey,e}assign(e){let a={};return e instanceof le?a=e._data:a=e,Object.keys(a).forEach(s=>{a[s]===void 0&&delete a[s]}),Object.assign(this._data,a),this}convertVal(e,a){if(e==null||w(a))return e;if(_t.isNumber(a)){const s=!w(e)&&e!==""?Number(e):e;return Number.isNaN(s)?(ibiz.log.debug("".concat(e,"\u4E0D\u80FD\u8F6C\u6362\u6210\u6570\u5B57")),e):s}return e}}),Ls=d("MethodDto",class oi{constructor(e,a,s){this.entity=e,this.isLocalMode=a,this.dto=s,this.dtoMap=new Map,s?(this.app=ibiz.hub.getApp(e.appId),this.fields=s.appDEMethodDTOFields||[]):this.fields=[]}convertArrayToListMap(e){const a={};return e.forEach((s,i)=>{a[i+1]=s}),a}convertListMapToArray(e){const a=[];return Object.keys(e).forEach(s=>{const i=parseInt(s,10);a[i-1]=e[i]}),a}async get(e,a){const s={};for(let i=0;i<this.fields.length;i++){const r=this.fields[i],n=r.codeName.toLowerCase();switch(r.type){case"SIMPLE":case"SIMPLES":case"DTO":break;case"DTOS":{if(r.listMap)s[n]=a[n]&&a[n].length>0?this.convertArrayToListMap(a[n]):null;else{if(a[n]!==void 0||!r.refAppDataEntityId)break;const o=await this.getFieldDto(r),c=(await this.app.deService.getService(r.refAppDataEntityId)).local.getList(e);if(c){const l=[];for(let p=0;p<c.length;p++)l.push(await o.get(e,c[p]));s[n]=l}}break}default:throw new D(r,"\u672A\u652F\u6301\u7684\u5E94\u7528\u5B9E\u4F53\u65B9\u6CD5\u8F93\u5165\u5C5E\u6027\u7C7B\u578B: ".concat(r.type))}}return{...a,...s}}async sets(e,a){const s=await this.app.deService.getService(this.entity.id);return this.isLocalMode&&s.local.clear(e),Promise.all(a.map(async i=>{const r=this.fields.filter(o=>o.type==="DTOS").map(async o=>{const u=o.codeName.toLowerCase();if(o.listMap&&typeof i[u]=="object")i[u]=this.convertListMapToArray(i[u]);else{if(!o.refAppDataEntityId)return;const c=await this.getFieldDto(o),l=i[u];l?await c.sets(e,l):await c.sets(e,[])}});for(let o=0;o<r.length;o++)await r[o];const n=new Zt(this.entity,i);return this.isLocalMode&&await s.local.add(e,n),n}))}async getFieldDto(e){if(this.dtoMap.has(e.codeName))return this.dtoMap.get(e.codeName);const a=await ibiz.hub.getAppDataEntity(e.refAppDataEntityId,this.entity.appId),s=lt(a.appDEMethodDTOs||[],e.refAppDEMethodDTOId),i=new oi(a,!0,s);return this.dtoMap.set(e.codeName,i),i}});function te(t){return t.actionType==="BUILTIN"||t.dataSetType==="DATAQUERY"}var fn=class{constructor(t,e){this.entity=t,this.method=e;const a=e.appDEMethodInput;if(a){const s=lt(t.appDEMethodDTOs||[],a.appDEMethodDTOId);s&&(this.dto=new Ls(t,this.isLocalMode,s))}}get isLocalMode(){return te(this.method)}async handle(t,e){return this.dto?this.dto.get(t,e):e}},mn=class{constructor(t,e){this.entity=t,this.method=e;const a=e.appDEMethodReturn;if(a){const s=lt(t.appDEMethodDTOs||[],a.appDEMethodDTOId);s&&(this.dto=new Ls(t,this.isLocalMode,s))}}get isLocalMode(){return te(this.method)}async handle(t,e){return this.dto?(await this.dto.sets(t,[e]))[0]:(V(e)&&(e={}),new Zt(this.entity,e))}},Ts=class{constructor(t,e){this.entity=t,this.method=e,this.app=ibiz.hub.getApp(t.appId),this.input=new fn(t,e),this.result=new mn(t,e)}async request(t,e,a,s){const{actionType:i,requestMethod:r}=this.method;if(i==="REMOTE"){const n=this.method.codeName.toLowerCase();let o=null;switch(r){case"POST":o=await this.app.net.post(this.mergeRequestPath(t,n),a||s||{});break;case"GET":o=await this.app.net.get(this.mergeRequestPath(t,n),a||s);break;case"PUT":{o=await this.app.net.put(this.mergeRequestPath(t,n),a||s||{});break}case"DELETE":o=await this.app.net.delete(this.mergeRequestPath(t,n),a||s);break;default:throw r?new m(this.method,"\u672A\u652F\u6301\u7684\u8BF7\u6C42\u65B9\u5F0F: ".concat(r)):new m(this.method,"\u672A\u914D\u7F6E\u8BF7\u6C42\u65B9\u5F0F")}return o}throw new m(this.method,"\u672A\u652F\u6301\u7684\u884C\u4E3A\u7C7B\u578B[".concat(i,"]"))}mergeRequestPath(t,e){return"".concat(t,"/").concat(e)}calcPath(t){const e="/".concat(this.entity.codeName2.toLowerCase());return $t(t,this.entity)+e}async getService(){return this.service||(this.service=await this.app.deService.getService(this.entity.id)),this.service}createEntity(t){const e=a=>a instanceof Zt?a.clone():new Zt(this.entity,a);return j(t)?t.map(a=>e(a)):e(t)}},En=class{constructor(t,e,a,s){this.deLogicParams=t,this.params={},this.result=null,this.isEndNode=!1,this.defaultParamName="Default",this.parameters={context:e,data:j(a)?a:[a],params:s}}get context(){return Object.prototype.hasOwnProperty.call(this.params,"context")?this.params.context:this.parameters.context}get data(){return this.parameters.data}get viewParam(){return Object.prototype.hasOwnProperty.call(this.params,"viewParam")?this.params.viewParam:this.parameters.params}resetParam(t){var e;(e=this.deLogicParams.get(t))==null||e.calc(this)}renewParam(t){var e;(e=this.deLogicParams.get(t))==null||e.renew(this)}setLastReturn(t){this.lastReturn=t}initLastReturnParam(t){Object.defineProperty(this.params,t,{enumerable:!0,configurable:!0,get:()=>this.lastReturn})}isEntityParam(t){const e=this.deLogicParams.get(t);return!!(e&&e.model.entityParam)}},Bs=class{},gn=class extends Bs{constructor(t){super(),this.model=t,this.srcParam=t.srcLogicParamId,this.dstParam=t.dstLogicParamId}get dstField(){return this.model.dstFieldName.toLowerCase()}get op(){return this.model.condOP}get type(){return this.model.paramType}get value(){return this.model.paramValue}test(t,e,a){const s=t.params[this.dstParam];switch(this.type){case"ENTITYFIELD":{if(!this.value)throw new m(this.model,"\u5F53\u524D\u6761\u4EF6\u503C\u7C7B\u578B\u4E3A[\u6570\u636E\u5BF9\u8C61\u5C5E\u6027],\u7F3A\u5C11\u914D\u7F6E\u6761\u4EF6\u503C");const i=a[this.value]!=null?a[this.value]:e[this.value];return $(s[this.dstField],this.op,i)}case"SRCENTITYFIELD":{if(!this.value)throw new m(this.model,"\u5F53\u524D\u6761\u4EF6\u503C\u7C7B\u578B\u4E3A[\u6E90\u6570\u636E\u5BF9\u8C61\u5C5E\u6027],\u7F3A\u5C11\u914D\u7F6E\u6761\u4EF6\u503C");const i=t.params[this.srcParam];return $(s[this.dstField],this.op,i[this.value])}case"CURTIME":throw new D(this.model,"\u6682\u672A\u652F\u6301\u6761\u4EF6\u503C\u7C7B\u578B\u4E3A[\u5F53\u524D\u65F6\u95F4]");default:return $(s[this.dstField],this.op,this.value)}}},Cn=class ui extends Bs{constructor(e){super(),this.model=e;const a=e.conds||[];this.conds=a.map(s=>s.logicType==="SINGLE"?new gn(s):new ui(s))}get op(){return this.model.groupOP}get notMode(){return this.model.notMode===!0}test(e,a,s){let i=!0;if(this.conds.length===0)throw new m(this.model,"\u754C\u9762\u8FDE\u63A5\u6761\u4EF6\u903B\u8F91\u7EC4\u672A\u914D\u7F6E\u903B\u8F91\u9879");for(let r=0;r<this.conds.length;r++){const o=this.conds[r].test(e,a,s);if(this.op==="AND"&&o===!1){i=!1;break}if(this.op==="OR"&&o===!0){i=!0;break}}return this.notMode?!i:i}},Dn=class{constructor(t){this.model=t,this.srcNode=null,this.dstNode=null,this.groupCond=null;const e=this.model.delogicLinkGroupCond;e&&(this.groupCond=new Cn(e))}async exec(t){const{defaultLink:e}=this.model;return e||!this.groupCond?!0:this.groupCond.test(t,t.context,t.data[0]||{})}},X=class{constructor(t){this.model=t;var e;this.links=(e=t.links||[])==null?void 0:e.map(a=>new Dn(a))}},wn=class extends X{async exec(t){const{dstAppDataEntityId:e,dstAppDEActionId:a,dstDELogicParamId:s,retDELogicParamId:i}=this.model;if(!e)throw new m(this.model,"\u672A\u6307\u5B9A\u5E94\u7528\u5B9E\u4F53");if(!a)throw new m(this.model,"\u672A\u6307\u5B9A\u5B9E\u4F53\u884C\u4E3A");const r=t.params[s],o=await ibiz.hub.getApp(t.context.srfappid).deService.exec(e,a,t.context,r,t.viewParam);o.ok&&(t.params[i]=o.data)}},vn=class extends X{async exec(t){}},An=class extends X{async exec(t){t.isEndNode=!0;const{returnParamId:e,returnType:a,rawValue:s}=this.model;if(a)switch(a){case"NONEVALUE":t.result=void 0;break;case"NULLVALUE":t.result=null;break;case"SRCVALUE":t.result=ibiz.util.rawValue.format(s);break;case"LOGICPARAM":t.result=t.params[e];break;case"LOGICPARAMFIELD":case"BREAK":default:throw new D(this.model,"\u6682\u672A\u652F\u6301\u7684\u7ED3\u675F\u8282\u70B9\u8FD4\u56DE\u503C\u7C7B\u578B: ".concat(a))}}};function ht(t,e){const{srcDELogicParamId:a,srcFieldName:s,srcValue:i}=e,r=e.srcValueType||"SRCDLPARAM";let n=s,o;switch(r){case"SRCDLPARAM":o=t.params[a],t.isEntityParam(a)&&(n=n?.toLowerCase());break;case"NULLVALUE":return null;case"NONEVALUE":return;case"SRCVALUE":return ibiz.util.rawValue.format(i);case"WEBCONTEXT":case"VIEWPARAM":o=t.parameters.params;break;case"APPLICATION":case"SESSION":case"APPDATA":case"DATACONTEXT":o=t.parameters.context;break;case"ENVPARAM":o=A(ibiz.env);break;default:throw new D(e,"\u6682\u672A\u652F\u6301\u6E90\u503C\u7C7B\u578B".concat(r))}if(o&&n)try{Array.isArray(o)?o=o[Number(n)]:o=B.execScriptFn({srcValue:o},"srcValue.".concat(n),{singleRowReturn:!0,isAsync:!1})}catch(u){throw ibiz.log.error("\u4ECE\u6E90\u53C2\u6570\u53D6\u5C5E\u6027".concat(n,"\u62A5\u9519\uFF0C\u6E90\u53C2\u6570\uFF1A"),o),u}return o}var In=class extends X{async exec(t){const e=this.model.delogicNodeParams;e?.length&&await Promise.all(e.map(a=>{switch(a.paramAction){case"SETPARAMVALUE":return this.setParamValue(a,t);case"RESETPARAM":return this.resetParam(a,t);case"COPYPARAM":return this.copyParam(a,t);case"BINDPARAM":return this.bindParam(a,t);case"RENEWPARAM":return this.renewParam(a,t);case"APPENDPARAM":return this.appendParam(a,t);case"SORTPARAM":return this.sortParam(a,t);default:throw new D(a,"\u6682\u672A\u652F\u6301\u903B\u8F91\u5904\u7406\u53C2\u6570\u64CD\u4F5C".concat(a.paramAction))}}))}copyParam(t,e){const{dstDELogicParamId:a}=t,s=ht(e,t);e.params[a]=A(s)}bindParam(t,e){const a=ht(e,t);e.params[t.dstDELogicParamId]=a}setParamValue(t,e){const{dstFieldName:a,dstDELogicParamId:s}=t;let i=a;e.isEntityParam(s)&&(i=i?.toLowerCase());const r=ht(e,t);i?e.params[s][i]=r:e.params[s]=r}resetParam(t,e){const{dstDELogicParamId:a}=t;e.resetParam(a)}renewParam(t,e){const{dstDELogicParamId:a}=t;e.renewParam(a)}appendParam(t,e){const{dstDELogicParamId:a,dstIndex:s,srcIndex:i,srcSize:r}=t,n=ht(e,t),o=s||0,u=i||0,c=r||n.length;e.params[a].splice(o,0,...n.slice(u,c))}sortParam(t,e){const{dstDELogicParamId:a,dstFieldName:s,dstSortDir:i}=t,r=s.toLowerCase();e.params[a].sort((o,u)=>i==="ASC"?o[r]-u[r]:u[r]-o[r])}},yn=class extends X{async exec(t){const{dstAppDEDataSetId:e,dstAppDataEntityId:a,dstDELogicParamId:s,retDELogicParamId:i}=this.model,r=t.params[s],o=await ibiz.hub.getApp(t.context.srfappid).deService.exec(a,e,t.context,r);o.ok&&(t.params[i]=o.data)}},Fn=class extends X{async exec(t){const{dstDELogicParamId:e,srcDELogicParamId:a}=this.model;if(!e||!a)throw new m(this.model,"\u7F3A\u5C11\u76EE\u6807\u53C2\u6570\u5BF9\u8C61\u6216\u8005\u6E90\u53C2\u6570\u5BF9\u8C61\u914D\u7F6E");const s=ht(t,this.model);t.params[e]=s}},Pn=class extends X{async exec(t){const{dstDELogicParamId:e}=this.model;if(!e)throw new m(this.model,"\u7F3A\u5C11\u76EE\u6807\u53C2\u6570\u5BF9\u8C61\u914D\u7F6E");t.resetParam(e)}},bn=class extends X{async exec(t){const{dstDELogicParamId:e}=this.model;if(!e)throw new m(this.model,"\u7F3A\u5C11\u76EE\u6807\u53C2\u6570\u5BF9\u8C61\u914D\u7F6E");t.renewParam(e)}},Nn=class extends X{async exec(t){const{dstDELogicParamId:e,srcDELogicParamId:a}=this.model;if(!e||!a)throw new m(this.model,"\u7F3A\u5C11\u76EE\u6807\u53C2\u6570\u5BF9\u8C61\u6216\u8005\u6E90\u53C2\u6570\u5BF9\u8C61\u914D\u7F6E");const s=ht(t,this.model);t.params[e]=A(s)}},Sn=class extends X{async exec(t){const{dstDELogicParamId:e,dstSortDir:a,dstFieldName:s}=this.model;if(!e||!s)throw new m(this.model,"\u7F3A\u5C11\u76EE\u6807\u53C2\u6570\u5BF9\u8C61\u6216\u76EE\u6807\u5C5E\u6027\u914D\u7F6E");const i=s.toLowerCase();t.params[e].sort((n,o)=>a==="ASC"?n[i]-o[i]:o[i]-n[i])}},Rn=class extends X{async exec(t){const{dstDELogicParamId:e,srcDELogicParamId:a,dstIndex:s,srcIndex:i,srcSize:r}=this.model;if(!e||!a)throw new m(this.model,"\u7F3A\u5C11\u76EE\u6807\u53C2\u6570\u5BF9\u8C61\u6216\u8005\u6E90\u53C2\u6570\u5BF9\u8C61\u914D\u7F6E");const n=ht(t,this.model),o=s||0,u=i||0,c=r||n.length;t.params[e].splice(o,0,...n.slice(u,c))}},Ln=class extends X{async exec(t){const{errorCode:e,errorInfo:a}=this.model;throw new Ot({response:{status:e,statusText:a}})}},Tn=class{constructor(t){this.model=t}calc(t){const e=this.model.id,a=this.model;if(a.default)a.entityListParam?t.params[e]=t.data||[]:t.params[e]=t.data[0]||{};else if(a.appGlobalParam)t.params[e]=A(ibiz.env);else if(a.entityListParam)t.params[e]=[];else{if(a.entityPageParam)throw new D(a,"\u672A\u652F\u6301\u7684\u903B\u8F91\u53C2\u6570\u7C7B\u578B: \u5206\u9875\u67E5\u8BE2\u7ED3\u679C");if(a.entityParam)t.params[e]={};else if(a.lastReturnParam)t.initLastReturnParam(e);else if(a.appContextParam)t.params[e]=t.parameters.context;else if(a.simpleListParam)t.params[e]=[];else if(a.simpleParam)t.params[e]={};else if(a.cloneParam)t.params[e]=A(t.data||{});else{if(a.envParam)throw new D(a,"\u672A\u652F\u6301\u7684\u903B\u8F91\u53C2\u6570\u7C7B\u578B: \u7CFB\u7EDF\u73AF\u5883\u53D8\u91CF");if(a.fileListParam)throw new D(a,"\u672A\u652F\u6301\u7684\u903B\u8F91\u53C2\u6570\u7C7B\u578B: \u6587\u4EF6\u5BF9\u8C61\u5217\u8868\u53D8\u91CF");if(a.fileParam)throw new D(a,"\u672A\u652F\u6301\u7684\u903B\u8F91\u53C2\u6570\u7C7B\u578B: \u6587\u4EF6\u5BF9\u8C61\u53D8\u91CF");if(a.filterParam)throw new D(a,"\u672A\u652F\u6301\u7684\u903B\u8F91\u53C2\u6570\u7C7B\u578B: \u8FC7\u6EE4\u5668\u5BF9\u8C61\u53D8\u91CF");if(a.lastParam)throw new D(a,"\u672A\u652F\u6301\u7684\u903B\u8F91\u53C2\u6570\u7C7B\u578B: \u6700\u540E\u6570\u636E\u53D8\u91CF");if(a.originEntity)throw new D(a,"\u672A\u652F\u6301\u7684\u903B\u8F91\u53C2\u6570\u7C7B\u578B: \u539F\u59CB\u6570\u636E\u5BF9\u8C61");if(a.sessionParam)throw new D(a,"\u672A\u652F\u6301\u7684\u903B\u8F91\u53C2\u6570\u7C7B\u578B: \u64CD\u4F5C\u4F1A\u8BDD\u53D8\u91CF")}}}renew(t){const e=this.model.id,a=this.model;if(a.entityListParam||a.simpleListParam||a.entityPageParam)t.params[e]=[];else if(a.simpleParam||a.entityParam)t.params[e]={};else throw new D(a,"\u672A\u652F\u6301\u7684\u903B\u8F91\u53C2\u6570\u7C7B\u578B\u91CD\u65B0\u5EFA\u7ACB\u53D8\u91CF")}},Bn=class{constructor(t){this.model=t,this.nodes=new Map,this.params=new Map;var e,a;if(t.customCode){if(!t.scriptCode)throw new m(t,"\u811A\u672C\u4EE3\u7801\u6A21\u5F0F\u6CA1\u6709\u914D\u7F6E\u811A\u672C\u4EE3\u7801");this.scriptFn=B.createScriptFn([],t.scriptCode,{isAsync:!0});return}if(!((e=t.delogicNodes)!=null&&e.length))throw new m(t,"\u5B9E\u4F53\u903B\u8F91\u6CA1\u6709\u914D\u7F6E\u903B\u8F91\u8282\u70B9");t.delogicNodes.forEach(s=>{const{logicNodeType:i}=s;let r;switch(i){case"BEGIN":r=new vn(s);break;case"END":r=new An(s);break;case"DEACTION":r=new wn(s);break;case"PREPAREPARAM":r=new In(s);break;case"DEDATASET":r=new yn(s);break;case"THROWEXCEPTION":r=new Ln(s);break;case"BINDPARAM":r=new Fn(s);break;case"RESETPARAM":r=new Pn(s);break;case"COPYPARAM":r=new Nn(s);break;case"RENEWPARAM":r=new bn(s);break;case"APPENDPARAM":r=new Rn(s);break;case"SORTPARAM":r=new Sn(s);break;default:throw new D(s,"\u672A\u652F\u6301\u7684\u903B\u8F91\u8282\u70B9\u7C7B\u578B: ".concat(i))}this.nodes.set(s.id,r)}),(a=t.delogicParams)==null||a.forEach(s=>{this.params.set(s.id,new Tn(s))}),this.nodes.forEach(s=>{s.links.forEach(i=>{i.srcNode=s,this.nodes.has(i.model.thenId)&&(i.dstNode=this.nodes.get(i.model.thenId))})})}initLogicParams(t){this.params.forEach(e=>{e.model.default&&(t.defaultParamName=e.model.id),e.calc(t)})}async exec(t,e,a){if(this.scriptFn)return this.scriptFn.exec({context:t,data:e,params:a});const s=new En(this.params,t,e,a);this.initLogicParams(s);const{startDELogicNodeId:i}=this.model;if(i&&this.nodes.has(i)){const r=this.nodes.get(i);await this.deepExec(r,s)}else throw new m(this.model,"\u672A\u8BBE\u7F6E\u8D77\u59CB\u8282\u70B9");return s.isEndNode?s.result:s.params[s.defaultParamName]?s.params[s.defaultParamName]:null}async deepExec(t,e){await t.exec(e);const{links:a}=t;for(let s=0;s<a.length;s++){const i=a[s];if(await i.exec(e)&&i.dstNode&&(await this.deepExec(i.dstNode,e),t.model.parallelOutput===!1))break}}},je=new Map;async function _n(t,e,a){const s=await ibiz.hub.getAppDataEntity(e,a);return Se(t,s)}async function ee(t,e,a={},s={}){return je.has(t)||je.set(t,new Bn(t)),je.get(t).exec(e,a,s)}async function _s(t,e,a,s,i){const r=await _n(t,e,a.srfappid);if(!r)throw new f("".concat(e,"\u627E\u4E0D\u5230\u5B9E\u4F53\u903B\u8F91").concat(t));return ee(r,a,s,i)}async function Os(t,e,a,s){const i=A(e),r=a&&A(a),n=s&&A(s);try{const o=await ee(t,i,r,n);return new L(o)}catch(o){if(o instanceof Ot)return new L(o,500);throw o}}async function Ms(t,e,a,s,i){const r=za(t,e);r.length&&(await Promise.all(r.map(o=>ee(o,a,s,i)))).forEach(o=>{Object.assign(s,o)})}async function Lt(t,e,a,s,i={}){if(s){if(j(s)){await Promise.all(s.map(r=>Ms(t,e,a,r,i)));return}return Ms(t,e,a,s,i)}}var On=class extends Ts{get isLocalMode(){return te(this.method)}async inputHandle(t,e){return j(e)?e:this.input.handle(t,e)}async exec(t,e,a){if(e&&await Lt(this.entity,"change",t,e,a),this.method.actionType==="DELOGIC"){const i=Se(this.method.appDELogicId,this.entity);if(!i)throw new m(this.method,"\u7F3A\u5C11\u5B9E\u4F53\u5904\u7406\u903B\u8F91");return Os(i,t,e,a)}e&&!this.isLocalMode&&(e=await this.inputHandle(t,e)),e&&!["READ","GETDRAFT"].includes(this.method.actionMode)&&await Lt(this.entity,"change",t,e,a);let s;switch(this.method.codeName){case"Create":s=await this.create(t,e,a||{});break;case"Get":s=await this.get(t,a);break;case"GetDraft":s=await this.getDraft(t,a);break;case"Remove":s=await this.remove(t,a);break;case"Update":s=await this.update(t,e,a);break;case"CreateTemp":s=await this.createTemp(t,e);break;case"GetTemp":s=await this.getTemp(t,e);break;case"GetDraftTemp":s=await this.getDraftTemp(t,a);break;case"RemoveTemp":s=await this.removeTemp(t,e);break;case"UpdateTemp":s=await this.updateTemp(t,e);break;default:{let i=this.calcPath(t);if(this.method.needResourceKey){let n=t[this.entity.codeName.toLowerCase()];Ca(n)&&(n=j(e)?null:e?.[this.entity.keyAppDEFieldId]),i="".concat(i,"/").concat(n)}const r=await this.request(i,t,e,a);r.data=await this.result.handle(t,r.data),s=r}}return s.data&&await Lt(this.entity,"compute",t,s.data,a),s}async create(t,e,a){if(!e)throw new f("create\u884C\u4E3A\u6CA1\u6709\u4F20data");if(this.isLocalMode)return this.createTemp(t,this.createEntity(e));const s=this.calcPath(t),i=await this.app.net.post(s,e,a);return i.data=await this.result.handle(t,i.data),i}async remove(t,e){if(this.isLocalMode)return this.removeTemp(t,e);const a=this.calcPath(t);return await this.app.net.delete("".concat(a,"/").concat(t[this.entity.codeName.toLowerCase()]),e)}async update(t,e,a){if(!e)throw new f("update\u884C\u4E3A\u6CA1\u6709\u4F20data");if(this.isLocalMode)return this.updateTemp(t,this.createEntity(e));const s=this.calcPath(t),i=await this.app.net.put("".concat(s,"/").concat(t[this.entity.codeName.toLowerCase()]),e,a);return i.data=await this.result.handle(t,i.data),i}async get(t,e={}){if(this.isLocalMode)return this.getTemp(t,e);const a=this.calcPath(t),s=await this.app.net.get("".concat(a,"/").concat(t[this.entity.codeName.toLowerCase()]),e);return s.data=await this.result.handle(t,s.data),s}async getDraft(t,e){if(this.isLocalMode)return this.getDraftTemp(t,e);const a=this.calcPath(t),s=await this.app.net.get("".concat(a,"/getdraft"),e);return s.data=await this.result.handle(t,s.data),s}async createTemp(t,e){try{const a=await this.getService(),s=this.createEntity(e);let i;return j(s)?i=await Promise.all(s.map(r=>a.local.add(t,r))):i=await a.local.add(t,s),new L(i)}catch(a){return new L(a,500)}}async getDraftTemp(t,e){try{const a=this.createEntity({});return a?new L(a):new L(a,500)}catch(a){return new L(a,500)}}async removeTemp(t,e){try{let a=null;!a&&t&&(a=t[this.entity.codeName.toLowerCase()]);const i=(await this.getService()).local.delete(t,a);return i?new L(i):new L(i,500)}catch(a){return new L(a,500)}}async updateTemp(t,e){try{const a=await this.getService(),s=this.createEntity(e);let i;return j(s)?i=await Promise.all(s.map(r=>a.local.update(t,r))):i=await a.local.update(t,s),i?new L(i):new L(i,500)}catch(a){return new L(a,500)}}async getTemp(t,e){try{let a=null;!a&&t&&(a=t[this.entity.codeName.toLowerCase()]);const i=(await this.getService()).local.get(t,a);return i?new L(i):new L(i,500)}catch(a){return new L(a,500)}}async removeBatchTemp(t,e){return new L(!0)}},xs=class extends Ts{get isLocalMode(){return te(this.method)}async exec(t,e,a){const s=e&&j(e)?e:a||{};if(this.isLocalMode){const n=await this.searchLocal(null,new cn(t,s));return new L(n,200)}let i;switch(this.method.dataSetType){case"INDEXDE":case"CODELIST":case"MULTIFORM":i=await this.fetchCodeListSet(t,s);break;case"REMOTE":{const n=this.calcPath(t);i=await this.request(n,t,e,a)}break;default:throw new D(this.method,"\u6570\u636E\u6765\u6E90\u7C7B\u578B".concat(this.method.dataSetType,"\u6682\u672A\u652F\u6301"))}const r=i.data||[];return i.data=r.map(n=>this.createEntity(n)),i.data&&await Lt(this.entity,"compute",t,i.data,s),i}async selectLocal(t,e={}){let s=(await this.getService()).local.getList(t);s=we(s,"srfordervalue");const i={},r={},n={},o={};e.srfkey&&(i.srfkey=rt(e.srfkey),delete e.srfkey);for(const c in e)if(Object.prototype.hasOwnProperty.call(e,c)){const l=e[c];l==null?(r[c]=rt(null),n[c]=rt(void 0),o[c]=rt("")):i[c]=rt(l)}if(!T(i)){const c=gt(i),l=gt(r),p=gt(n),h=gt(o);s=s.filter(E=>{if(T(r)){if(c(E))return!0}else if(c(E)&&(l(E)||p(E)||h(E)))return!0;return!1})}return s.map(c=>c.clone())}async searchLocal(t,e,a=this.entity.quickSearchAppDEFieldIds){const s=await this.getService();let i=[];t?(i=s.local.getList(e.context),i.length>0&&(i=i.filter(l=>t.test(l,e)))):(i=await this.selectLocal(e.context),i.length>0&&e.query&&e.query!==""&&a&&(i=i.filter(l=>{const p=new RegExp(e.query);for(let h=0;h<a.length;h+=1){const E=a[h],C=l[E];if(p.test(C))return!0}return!1}))),!w(e.sortField)&&!T(e.sortField)&&(e.sortMode==="DESC"?i=Ra(i,e.sortField):i=we(i,e.sortField));const{page:r,size:n}=e,o=r*n,u=(r+1)*n-1;return i.slice(o,u).map(l=>A(l))}async fetchCodeListSet(t,e){const{appCodeListId:a}=this.method;if(!a)throw new m(this.method,"\u6CA1\u6709\u6307\u5B9A\u6570\u636E\u6765\u6E90\u4EE3\u7801\u8868");const s=await this.app.codeList.get(a,t,e),{keyAppDEFieldId:i,majorAppDEFieldId:r}=this.entity,n=s.map(o=>({[i]:o.value,[r]:o.text}));return new L(n,200)}},Mn=class extends xs{mergeRequestPath(t,e){return"".concat(t,"/ac/").concat(e,"?srfac=ac")}},xn=d("DEService",class{constructor(t){this.model=t,this.methodMap=new Map,this.local=new on,this.configCache=new Jt(t.appId,"PSAppDataEntity",t.codeName),this.wf=new dn(t),this.file=new hn(t)}getMethod(t,e=!1){const a=e?"ac-".concat(t):t;if(this.methodMap.has(a))return this.methodMap.get(a);const s=lt(this.model.appDEMethods,t);let i=null;switch(s.methodType){case"DEACTION":i=new On(this.model,s);break;case"FETCH":case"FETCHTEMP":e?i=new Mn(this.model,s):i=new xs(this.model,s);break;default:throw new D(s,"\u672A\u652F\u6301\u7684\u670D\u52A1\u65B9\u6CD5\u7C7B\u578B: ".concat(s.methodType))}return this.methodMap.set(a,i),i}exec(t,e,a,s){const i=this.getMethod(t);if(i)return i.exec(e,a,s);throw new f("".concat(this.model.codeName,"\u672A\u652F\u6301\u300C").concat(t,"\u300D\u65B9\u6CD5"))}getDraft(t,e,a){return this.exec("GetDraft",t,e,a)}create(t,e,a){return this.exec("Create",t,e,a)}get(t,e,a){return this.exec("Get",t,e,a)}update(t,e,a){return this.exec("Update",t,e,a)}remove(t,e,a){return this.exec("Remove",t,e,a)}fetchDefault(t,e,a){return this.exec("FetchDefault",t,e,a)}execAc(t,e,a,s={}){const i=this.getMethod(t,!0);if(i)return i.exec(e,a,s);throw new f("".concat(this.model.codeName,"\u672A\u652F\u6301\u300C").concat(t,"\u300D\u65B9\u6CD5"))}aiChatSse(t,e,a={},s={}){const i=ibiz.hub.getApp(this.model.appId),r=this.calcSsePath(e);return new Promise((n,o)=>{i.net.sse("/".concat(r),{srfactag:"AIChat",...a},{headers:{"Content-Type":"application/json"},body:JSON.stringify(s),onmessage:u=>{if(u.data){const c=JSON.parse(u.data);t(c)}},onclose:()=>{n()},onerror:u=>{o(u)}})})}aiChatHistory(t,e={},a={}){const s=ibiz.hub.getApp(this.model.appId),i=this.calcSsePath(t,!0);return s.net.post(i,a,{srfactag:"AIChat",...e})}calcSsePath(t,e=!1){const a=t[this.model.codeName.toLowerCase()],s="/".concat(this.model.codeName2.toLowerCase(),"/ssechatcompletion").concat(e?"/histories":"").concat(a?"/".concat(a):"");return $t(t,this.model)+s}}),Vn=["srfkey","srfmajortext","srfmajorfield","srfkeyfield","tempsrfkey","srfuf","srfdeid","srfdecodename"],G=d("ControlVO",class ra{constructor(e={},a=new Map){Object.defineProperty(this,"$origin",{enumerable:!1,configurable:!0,value:e||{}}),Object.defineProperty(this,"$dataUIMap",{enumerable:!1,configurable:!0,value:a||new Map}),Object.defineProperty(this,"srfactionparam",{get(){return this.$origin.srfactionparam},set(s){this.$origin.srfactionparam=s},enumerable:!0,configurable:!0}),["srfkey","srfmajortext"].forEach(s=>{if(Object.prototype.hasOwnProperty.call(this.$origin,s))Object.defineProperty(this,s,{get(){return this.$origin[s]},set(i){this.$origin[s]=i},enumerable:!1,configurable:!0});else if(this.$dataUIMap.has(s)){const{dataKey:i}=this.$dataUIMap.get(s);Object.defineProperty(this,s,{get(){return this.$origin[i]},set(r){this.$origin[i]=r},enumerable:!1,configurable:!0})}else Object.defineProperty(this,s,{enumerable:!1,configurable:!0,writable:!0,value:null})}),Object.prototype.hasOwnProperty.call(this.$origin,"tempsrfkey")?Object.defineProperty(this,"tempsrfkey",{get(){return this.$origin.tempsrfkey},set(s){this.$origin.tempsrfkey=s},enumerable:!1,configurable:!0}):Object.defineProperty(this,"tempsrfkey",{enumerable:!1,configurable:!0,writable:!0,value:w(this.srfkey)?K():this.srfkey}),Object.defineProperty(this,"srfuf",{get(){return Object.prototype.hasOwnProperty.call(this.$origin,"srfuf")?this.$origin.srfuf:this.srfkey===this.tempsrfkey?1:0},enumerable:!1,configurable:!0}),["srfdeid","srfdecodename","srfkeyfield","srfmajorfield"].forEach(s=>{Object.defineProperty(this,s,{get(){return this.$origin[s]},enumerable:!1,configurable:!0})}),this.$dataUIMap.forEach((s,i)=>{const r=s.dataKey;this.linkProperty(i,r,s)}),Object.keys(e).forEach(s=>{Object.prototype.hasOwnProperty.call(this,s)||this.linkProperty(s,s)})}linkProperty(e,a,s){const i=s?s.isOriginField:!0;Vn.includes(e)||(i||Object.prototype.hasOwnProperty.call(this.$origin,e)?Object.defineProperty(this,e,{enumerable:!0,configurable:!0,get(){return this.$origin[a]},set(r){this.$origin[a]=r}}):Object.defineProperty(this,e,{enumerable:!0,configurable:!0,writable:!0,value:null}))}getOrigin(){return this.$origin}setOrigin(e){this.$origin=e instanceof ra?e.getOrigin():e}clone(){const e=A(this.$origin),a=new ra(e,this.$dataUIMap);return Object.keys(this).forEach(s=>{a[s]=this[s]}),a}}),ae=d("ControlService",class{constructor(t){this.dataUIMap=new Map,this.model=t}async init(t){this.app=ibiz.hub.getApp(t?.srfappid),this.initUIDataMap()}initUIDataMap(){}async exec(t,e,a,s){return await this.app.deService.exec(this.model.appDataEntityId,t,e,a,s)}handleResponse(t){return ua(t)}toUIData(t){return new G(t,this.dataUIMap)}}),at=d("MDControlService",class extends ae{async fetch(t,e={}){var a;const s=((a=this.model.fetchControlAction)==null?void 0:a.appDEMethodId)||"fetchdefault";let i=await this.exec(s,t,e);return i=this.handleResponse(i),i}async get(t,e={}){var a;const s=((a=this.model.getControlAction)==null?void 0:a.appDEMethodId)||"get";let i=await this.exec(s,t,void 0,e);return i=this.handleResponse(i),i}async getDraft(t,e={}){var a;const s=((a=this.model.getDraftControlAction)==null?void 0:a.appDEMethodId)||"getdraft";let i=await this.exec(s,t,void 0,e);return i=this.handleResponse(i),i}async remove(t,e={}){var a;const s=((a=this.model.removeControlAction)==null?void 0:a.appDEMethodId)||"remove";return await this.exec(s,t,void 0,e)}async create(t,e){var a;const s=((a=this.model.createControlAction)==null?void 0:a.appDEMethodId)||"create";let i=await this.exec(s,t,e.getOrigin());return i=this.handleResponse(i),i}async update(t,e){var a;const s=((a=this.model.updateControlAction)==null?void 0:a.appDEMethodId)||"update";let i=await this.exec(s,t,e.getOrigin());return i=this.handleResponse(i),i}async exportData(t,e,a={}){throw new f("\u672A\u5B9E\u73B0")}handleResponse(t){const e=super.handleResponse(t);return e.headers&&(e.headers["x-page"]&&(e.page=Number(e.headers["x-page"])),e.headers["x-per-page"]&&(e.size=Number(e.headers["x-per-page"])),e.headers["x-total"]&&(e.total=Number(e.headers["x-total"]))),e.ok&&(kt(e.data)?e.data=e.data.map(a=>this.toUIData(a)):e.data=this.toUIData(e.data)),e}}),Wn=d("DeAuthorityService",class{constructor(t){this.entityModel=t}async calcByDataAccessAction(t,e){return!(e.srfopprivs&&!e.srfopprivs.includes(t)||!await this.calcByDeMainState(t,e))}async calcByDeMainState(t,e){let a=!0;const s=this.entityModel;if(!s.enableDEMainState)return ibiz.log.debug("".concat(s.codeName,"\u5B9E\u4F53\u4E0D\u5B58\u5728\u6216\u8005\u4E3A\u542F\u7528\u4E3B\u72B6\u6001\uFF0C\u8FD4\u56DEtrue")),a;ibiz.log.debug("\u64CD\u4F5C\u6807\u8BC6".concat(t,"\u4E3B\u72B6\u6001\u8BA1\u7B97\u5F00\u59CB"),e,s);const i=Wa(s,e);if(i){ibiz.log.debug("\u5339\u914D\u4E3B\u72B6\u6001",i);const r=ka(i,s);ibiz.log.debug("\u5141\u8BB8\u7684\u4E3B\u72B6\u6001\u6743\u9650\u96C6\u5408",r),a=r.includes(t)}else ibiz.log.debug("\u6CA1\u5339\u914D\u4E3B\u72B6\u6001\uFF0C\u8FD4\u56DEfalse"),a=!1;return ibiz.log.debug("\u64CD\u4F5C\u6807\u8BC6".concat(t,"\u6743\u9650\u8BA1\u7B97\u7ED3\u675F\uFF1A").concat(a)),a}}),kn=d("AuthorityService",class{constructor(t){this.appModel=t,this.cache=new Map,this.constructorCache=new Map,this.resCodes=[],this.enablePermission=!1}register(t,e){this.constructorCache.set(t,e)}async getService(t){if(!this.cache.has(t)){const e=await ibiz.hub.getAppDataEntity(t,this.appModel.appId);if(!e)throw new f("\u672A\u627E\u5230\u5E94\u7528\u5B9E\u4F53[".concat(t,"]"));const a=this.constructorCache.get(t);let s;a?s=await a(e):s=new Wn(e),this.cache.set(t,s)}return this.cache.get(t)}async init(t=ibiz.appData){t&&(t.unires&&(this.resCodes=t.unires),t.enablepermissionvalid===!0&&ibiz.env.enablePermission&&(this.enablePermission=!0))}calcByResCode(t){return!this.enablePermission||this.resCodes.includes(t)}async calcByDataAccessAction(t,e,a){if(this.enablePermission){const r=await(await ibiz.hub.getApp(this.appModel.appId)).getOPPriv(t,a);if(this.enablePermission&&r?.mapSysUniResCode&&!this.calcByResCode(r.mapSysUniResCode))return!1}return e&&a?(await this.getService(a)).calcByDataAccessAction(t,e):!0}}),Un=d("V7AuthService",class{async login(t,e,a){try{const s=await ibiz.net.post("/v7/login",{loginname:t,password:e,rememberme:a}),{data:i}=s;if(i&&i.token){ge(At.TOKEN,i.token,0,!0);const r=new Date().getTime()+(i.expirein||7199)*1e3;ge(At.TOKEN_EXPIRES,"".concat(r),0,!0)}return!0}catch(s){ibiz.notification.error({title:"\u767B\u5F55\u5931\u8D25",desc:s.message||""})}return!1}async logout(){try{return await ibiz.net.get("/v7/logout"),Ce(At.TOKEN),Ce(At.TOKEN_EXPIRES),!0}catch(t){ibiz.notification.error({title:"\u767B\u51FA\u5931\u8D25",desc:t.message||""})}return!1}}),zn=d("AsyncActionService",class{async fetch(t={}){const e=await ibiz.net.post("/portal/asyncaction/all",t);return w(e.data)&&(e.data=[]),e}async get(t){return await ibiz.net.get("/portal/asyncaction/".concat(t))}}),Ke=d("TreeNodeData",class{constructor(t,e,a){this.leaf=!1,this.leaf=a.leaf===!0,this.parent=e,this.parent&&(this.context={...this.parent.context}),a.navContext&&(this.context=Object.assign(this.context||{},a.navContext)),a.navParams&&(this.params={...a.navParams}),this.nodeId=t.id}calcIcon(t){const{sysImage:e}=t,a={};return e&&(e.cssClass&&(a.cssClass=e.cssClass),e.imagePath&&(a.imagePath=e.imagePath)),Object.values(a).length>0?a:void 0}}),Gn=d("TreeCodeListNodeData",class extends Ke{constructor(t,e,a){super(t,e,a);const{data:s}=a;if(this.text=s.text,this.value=s.value,this.id=e?"".concat(e.id,":").concat(t.id,"@").concat(this.value):t.id+this.value,this.id=this.id.toLowerCase(),t.appDataEntityId){const i=O(t.appDataEntityId);this.context=Object.assign(this.context||{},{[i]:this.value})}this.srfkey=this.value,this.srfmajortext=this.text,this.icon=this.calcIcon(t)}}),Vs=d("TreeDataSetNodeData",class extends Ke{constructor(t,e,a){super(t,e,a);const{data:s}=a;if(this.deData=s,this.text=t.textAppDEFieldId?s[t.textAppDEFieldId]:s.srfmajortext,this.value=t.idAppDEFieldId?s[t.idAppDEFieldId]:s.srfkey,this.id=e?"".concat(e.id,":").concat(t.id,"@").concat(s.srfkey):t.id+s.srfkey,this.id=this.id.toLowerCase(),t.appDataEntityId){const i=O(t.appDataEntityId);this.context=Object.assign(this.context||{},{[i]:s.srfkey})}if(this.srfkey=this.deData.srfkey,this.srfmajortext=this.deData.srfmajortext,this.icon=this.calcIcon(t),this.textHtml=this.calcTextHtml(t),t.leafFlagAppDEFieldId){const i=s[t.leafFlagAppDEFieldId];this.leaf=[1,"1",!0,"true"].includes(i)}}calcIcon(t){const e=super.calcIcon(t)||{},{iconAppDEFieldId:a,detreeNodeDataItems:s}=t;a&&this.deData[a]&&(e.imagePath=this.deData[a]),e&&(this.icon=e);const i=s?.find(r=>r.id==="icon");return i&&(e.htmlStr=this.calcDataItemScript(i)),Object.values(e).length>0?e:void 0}calcDataItemScript(t){if(t.customCode&&t.scriptCode)return B.execScriptFn({data:this.deData},t.scriptCode,{isAsync:!1})}calcTextHtml(t){let e;const{detreeNodeDataItems:a}=t,s=a?.find(i=>i.id==="text");return s&&(e=this.calcDataItemScript(s)),e}}),jn=d("TreeStaticNodeData",class extends Ke{constructor(t,e,a){var s,i;super(t,e,a);const r=t.nodeValue==="root"?void 0:t.nodeValue;if(this.id=e?"".concat(e.id,":").concat(t.id):t.id,this.id=this.id.toLowerCase(),this.text=t.text,this.value=r,e&&a.parentValueLevel){let n=e;for(let o=1;o<a.parentValueLevel;o++)n=n?.parent;n?.deData&&(this.deData=n.deData),this.value=r||n?.value}this.srfkey=((s=this.deData)==null?void 0:s.srfkey)||this.value,this.srfmajortext=((i=this.deData)==null?void 0:i.srfmajortext)||this.text,this.icon=this.calcIcon(t)}}),H=d("UIMapField",class{constructor(t,e,a={}){this.isOriginField=!1,this.isRequestNeed=!0,this.uiKey=t,this.dataKey=e,w(a.isOriginField)||(this.isOriginField=a.isOriginField),w(a.dataType)||(this.dataType=a.dataType)}convertVal(t){if(!this.dataType)return t;if(_t.isNumber(this.dataType)){const e=!w(t)&&t!==""?Number(t):t;return Number.isNaN(e)?(ibiz.log.debug("".concat(t,"\u4E0D\u80FD\u8F6C\u6362\u6210\u6570\u5B57")),t):e}return t}}),Kn=d("CalendarItemData",class{constructor(t,e){this.model=t,this.data=e}get deData(){return this.data}get navId(){return"".concat(this.itemType,"@").concat(this.id)}get itemType(){return this.model.itemType}get bkColor(){const t=this.model.bkcolorAppDEFieldId;return t&&this.data[t]?this.data[t]:this.model.bkcolor}get beginTime(){const t=this.model.beginTimeAppDEFieldId;return t?this.data[t]:void 0}get color(){const t=this.model.colorAppDEFieldId;return t&&this.data[t]?this.data[t]:this.model.color}get content(){const t=this.model.contentAppDEFieldId;return t?this.data[t]:void 0}get endTime(){const t=this.model.endTimeAppDEFieldId;return t?this.data[t]:void 0}get icon(){const t=this.model.iconAppDEFieldId;return t?this.data[t]:void 0}get id(){const t=this.model.idAppDEFieldId;return t&&this.data[t]?this.data[t]:this.data.srfkey}get level(){const t=this.model.levelAppDEFieldId;return t?this.data[t]:void 0}get tag2(){const t=this.model.tag2AppDEFieldId;return t?this.data[t]:void 0}get tag(){const t=this.model.tagAppDEFieldId;return t?this.data[t]:void 0}get text(){const t=this.model.textAppDEFieldId;return t?this.data[t]:void 0}get tips(){const t=this.model.tipsAppDEFieldId;return t?this.data[t]:void 0}});function Xn(t,e){e.forEach(a=>{Object.prototype.hasOwnProperty.call(t,a)||Object.defineProperty(t,a,{enumerable:!0,configurable:!0,writable:!0,value:void 0})})}var Hn=["REGION","REGION2","REGION3","REGION4"],Yn=d("MapData",class{constructor(t,e){this._longitude=void 0,this._latitude=void 0,this._areaCode=void 0,this._tooltip=void 0,this._value=void 0,this._text=void 0,this._symbol=void 0;const{id:a,itemStyle:s,longitudeAppDEFieldId:i,latitudeAppDEFieldId:r,textAppDEFieldId:n,dataAppDEFieldId:o,tipsAppDEFieldId:u,sysImage:c}=e,l=new Map;return this._id=a+t.srfkey,this._itemStyle=s,this._mapItemId=a,Hn.includes(this._itemStyle)?i&&l.set("_areaCode",i):(i&&l.set("_longitude",i),r&&l.set("_latitude",r)),u&&l.set("_tooltip",u),n&&l.set("_text",n),o&&l.set("_value",o),c&&(this._symbol=c.rawContent||c.imagePath),new Proxy(this,{set(p,h,E){return Object.prototype.hasOwnProperty.call(t,h)?t[h]=E:l.has(h)?t[l.get(h)]=E:p[h]=E,!0},get(p,h,E){if(p[h]!==void 0)return p[h];if(l.has(h))return t[l.get(h)];if(t[h]!==void 0)return t[h]},ownKeys(p){const h=[...new Set([...Object.keys(p),...Object.keys(t)])];return Xn(p,h),h}})}});function qn(t,e){e.forEach(a=>{Object.prototype.hasOwnProperty.call(t,a)||Object.defineProperty(t,a,{enumerable:!0,configurable:!0,writable:!0,value:void 0})})}var Qn=d("PanelData",class{constructor(t,e){const a=new Et,s={},i={};return t.forEach(r=>{var n;s[r.id]=(n=r.viewFieldName)==null?void 0:n.toLowerCase(),r.viewFieldName&&(i[r.viewFieldName.toLowerCase()]=r.id)}),new Proxy(this,{set(r,n,o){return Object.prototype.hasOwnProperty.call(s,n)?s[n]?e[s[n]]=o:r[n]=o:e[n]=o,a.emit("change",n),s[n]&&s[n]!==n&&a.emit("change",s[n]),i[n]&&i[n]!==n&&a.emit("change",i[n]),!0},get(r,n,o){return n==="_evt"?a:s[n]?e[s[n]]:Object.prototype.hasOwnProperty.call(e,n)?e[n]:r[n]},ownKeys(r){const n=Object.keys(e);return qn(r,n),n}})}destroy(){this._evt.reset()}});function $n(t,e){e.forEach(a=>{Object.prototype.hasOwnProperty.call(t,a)||Object.defineProperty(t,a,{enumerable:!0,configurable:!0,writable:!0,value:void 0})})}var Jn=d("ChartData",class{constructor(t,e,a,s){return this._seriesModelId=e?.id,this._catalog=a,this._groupName=s,this._uuid=K(),new Proxy(this,{set(i,r,n){return Object.prototype.hasOwnProperty.call(t,r)?t[r]=n:i[r]=n,!0},get(i,r,n){if(i[r]!==void 0)return i[r];if(t[r]!==void 0)return t[r]},ownKeys(i){const r=[...new Set([...Object.keys(i),...Object.keys(t)])];return $n(i,r),r}})}}),Zn=d("MqttService",class{constructor(t,e,a){if(this.mqttTopic=t,this.token=e,this.appId=a,this.evt=new Et,this.options={connectTimeout:6e3,clientId:K(),username:"",password:"",keepalive:60,clean:!0},V(t)||V(e))throw new Error("mqttTopic or token is empty");this.options.username=t,this.options.password=e}async connect(){const t=await na.import("mqtt/dist/mqtt.min"),e=t.default?t.default:t,{location:a}=window;this.client=e.connect("ws://".concat(a.host).concat(ibiz.env.baseUrl,"/").concat(this.appId).concat(ibiz.env.mqttUrl),this.options),this.client.on("connect",()=>{this.client.subscribe(this.mqttTopic),ibiz.log.debug("mqtt connect")}),this.client.on("error",s=>{ibiz.log.error("mqtt error",s)}),this.client.on("message",(s,i)=>{this.evt.emit("message",JSON.parse(i.toString())),ibiz.log.debug("mqtt message",s,i.toString())}),this.client.on("reconnect",()=>{ibiz.log.debug("mqtt reconnect")}),this.client.on("close",()=>{console.debug("mqtt close")})}close(){var t;(t=this.client)==null||t.end()}}),to=d("DEServiceUtil",class{constructor(t){this.appModel=t,this.cache=new Map,this.constructorCache=new Map}register(t,e){this.constructorCache.set(t,e)}async getService(t){if(!this.cache.has(t)){const e=await ibiz.hub.getAppDataEntity(t,this.appModel.appId);if(!e)throw new f("\u672A\u627E\u5230\u5E94\u7528\u5B9E\u4F53[".concat(t,"]"));const a=this.constructorCache.get(t);let s;a?s=await a(e):s=new xn(e),this.cache.set(t,s)}return this.cache.get(t)}clearTempCache(t){this.cache.forEach(e=>{e.local.clear(t)})}async exec(t,e,a,s,i){return(await this.getService(t)).exec(e,a,s,i)}}),Ws=class ci{constructor(){ibiz.commands.register(ci.TAG,this.exec.bind(this))}async exec(e,a,s={},i={}){const r=A(a),n=await ibiz.hub.config.view.get(e);if(!n)throw new f("\u5E94\u7528\u89C6\u56FE[".concat(e,"]\u4E0D\u5B58\u5728"));if((r.srfkey||s.srfuf===0)&&n.appDataEntityId){const u=O(n.appDataEntityId);r.srfkey&&(r[u]=r.srfkey,r.srfkey=void 0),s.srfuf===0&&(r[u]=void 0,delete s.srfuf)}if(n.redirectView){const u=await ibiz.hub.getAppView(e);return Qa(u,r,s,i)}const{openMode:o="INDEXVIEWTAB"}=n;switch(i.openMode||o){case"INDEXVIEWTAB":return i.noWaitRoute?(this.openIndexViewTab(n,r,s),{ok:!0}):this.openIndexViewTab(n,r,s);case"POPUP":throw new D(n,"\u672A\u652F\u6301\u7684\u89C6\u56FE\u6253\u5F00\u6A21\u5F0F: POPUP");case"POPUPMODAL":return this.openModal(n,r,s);case"POPUPAPP":throw new D(n,"\u672A\u652F\u6301\u7684\u89C6\u56FE\u6253\u5F00\u6A21\u5F0F: POPUPAPP");case"POPOVER":return this.openPopover(n,i.event,r,s);case"DRAWER_LEFT":case"DRAWER_RIGHT":case"DRAWER_TOP":case"DRAWER_BOTTOM":return this.openDrawer(n,r,s);case"USER":return this.openUserCustom(n,r,s);default:return this.openIndexViewTab(n,r,s)}}openIndexViewTab(e,a,s={}){return ibiz.openView.root(e.id,a,s)}async openModal(e,a,s={}){return ibiz.openView.modal(e.id,a,s)}async openPopover(e,a,s,i={}){if(!a)throw new f("\u6C14\u6CE1\u6253\u5F00\u7F3A\u5C11event");return ibiz.openView.popover(e.id,a,s,i)}async openDrawer(e,a,s={}){return ibiz.openView.drawer(e.id,a,s)}async openUserCustom(e,a,s={}){return ibiz.openView.custom(e.id,a,s)}};Ws.TAG="ibiz.app-view.open";var Z=d("OpenAppViewCommand",Ws),ks=class li{constructor(){ibiz.commands.register(li.TAG,this.exec.bind(this))}async exec(e,a,s={},i={}){const r=ibiz.hub.getApp(a.srfappid).getAppFunc(e);if(!r)throw new f("\u627E\u4E0D\u5230\u53EB".concat(e,"\u7684\u5E94\u7528\u529F\u80FD"));const{navigateContexts:n,navigateParams:o,appFuncType:u}=r,c=a.clone();Object.assign(c,y(n,s,a));const l=y(o,s,a);switch(u){case"APPVIEW":return this.openAppView(r,c,l,i);case"OPENHTMLPAGE":return this.openHtmlPage(r);case"PDTAPPFUNC":return this.openPdAppFunc(r,c,l);case"JAVASCRIPT":return this.executeJavaScript(r,c,l);case"CUSTOM":return this.custom(r,c,l);default:throw new D(r,"\u672A\u652F\u6301\u7684\u5E94\u7528\u529F\u80FD\u7C7B\u578B: ".concat(u))}}async openAppView(e,a,s,i){if(!e.appViewId)throw new f("\u5E94\u7528\u89C6\u56FE[".concat(e.appViewId,"]\u4E0D\u5B58\u5728"));return ibiz.commands.execute(Z.TAG,e.appViewId,a,s,i)}openHtmlPage(e){const a=e.htmlPageUrl;window.open(a,"_blank")}openPdAppFunc(e,a,s){throw ibiz.log.warn("openPdAppFunc",e,a,s),new f("\u672A\u5B9E\u73B0")}executeJavaScript(e,a,s){throw ibiz.log.warn("executeJavaScript",e,a,s),new f("\u672A\u5B9E\u73B0")}custom(e,a,s){throw ibiz.log.warn("custom",e,a,s),new f("\u672A\u5B9E\u73B0")}};ks.TAG="ibiz.app-func.exec";var Xe=d("AppFuncCommand",ks);function Us(){new Xe,new Z}var eo=d("Application",class{constructor(t){this.model=t,this.deName2DeCodeName=new Map,this.net=new ca({baseURL:"".concat(ibiz.env.baseUrl,"/").concat(t.appId)}),this.configCache=new Jt(t.appId,"PSSysApp",t.codeName),this.deService=new to(t),this.codeList=new ln(t),this.authority=new kn(t)}get appId(){return this.model.appId}async init(){await this.authority.init(),await this.loadAppModelStyle(),ibiz.env.enableMqtt&&ibiz.appData&&(this.mqtt=new Zn(ibiz.appData.mqtttopic,la(),this.model.appId),this.mqtt.evt.on("message",t=>{ibiz.mc.command.asyncAction.next(t)}),await this.mqtt.connect())}async loadAppModelStyle(){const t=await ibiz.hub.getAppStyle(this.appId);if(t){const e=document.createElement("style");e.setAttribute("type","text/css"),e.id=this.appId,e.innerHTML=t,document.head.appendChild(e)}}getAppFunc(t){return(this.model.appFuncs||[]).find(s=>s.id===t)||null}async getUIAction(t){const[,e]=t.split("@");if(e){const s=(await ibiz.hub.getAppDataEntity(e,this.model.appId)).appDEUIActions.find(i=>i.id===t);if(s)return s}return this.model.appDEUIActions.find(a=>a.id===t)}async getOPPriv(t,e){var a,s;let i=(a=this.model.deopprivs)==null?void 0:a.find(r=>r.name===t);return!i&&e&&(i=(s=(await ibiz.hub.getAppDataEntity(e,this.model.appId)).deopprivs)==null?void 0:s.find(n=>n.name===t)),i}async getDEUILogic(t,e){return(await ibiz.hub.getAppDataEntity(e,this.model.appId)).appDEUILogics.find(s=>s.id===t)}}),ao=class{parse(t){return t}},so=class{constructor(){this.appMenu=new ao}},io=class{constructor(){this.viewConfigs=new Map}has(t){return this.viewConfigs.has(t)}set(t,e){this.viewConfigs.set(t,e)}async get(t){if(!this.viewConfigs.has(t)){const e=await ibiz.hub.getAppView(t);if(!e)throw new f("\u89C6\u56FE[".concat(t,"]\u4E0D\u5B58\u5728"));this.set(e.id,{id:e.id,codeName:e.codeName,openMode:e.openMode,viewType:e.viewType,width:e.width,height:e.height,appDataEntityId:e.appDataEntityId,redirectView:e.redirectView})}return this.viewConfigs.get(t)}getSync(t){return this.viewConfigs.has(t)?this.viewConfigs.get(t):null}},ro=class{constructor(){this.view=new io}},no=d("FormNotifyState",(t=>(t.LOAD="LOAD",t.DRAFT="DRAFT",t.SAVE="SAVE",t))(no||{})),oo=d("GridNotifyState",(t=>(t.LOAD="LOAD",t.DRAFT="DRAFT",t.SAVE="SAVE",t))(oo||{})),uo=d("PanelNotifyState",(t=>(t.LOAD="LOAD",t.DRAFT="DRAFT",t.SAVE="SAVE",t))(uo||{})),zs=d("Counter",class{constructor(t){this.callback=t,this.count=0,this.state="Unused",this.reusable=!0}increment(){return this.state==="Used"?this.count:(this.count+=1,this.count)}decrement(t){if(this.state!=="Used"){if(this.count===0)throw new f("\u9519\u8BEF\u7684\u8C03\u7528\uFF01decrement\u4E0D\u80FD\u5BF9count\u4E3A0\u8C03\u7528");this.count-=1,this.count===0&&(t?t():this.callback&&this.callback(),this.reusable||(this.state="Used"))}}destroy(){this.callback=void 0}}),co=d("LoadingState",class{constructor(){this.isLoading=!1,this.counter=new zs(da)}begin(){this.isLoading=!0,this.counter.increment()}end(){this.counter.decrement(()=>{this.isLoading=!1})}}),lo=d("CTXState",class{}),ho=d("CTX",class{constructor(t){this.parent=t,this.isDestroyed=!1,this.evt=new Et(3e3),this.controllersMap=new Map,this.state=new lo}async init(t){this.view=t,this.registerController(t.model.name,t)}destroy(){this.controllersMap.clear(),this.view=null,this.state=null,this.isDestroyed=!0}async setState(t){Object.assign(this.state,t)}startLoading(){this.view.startLoading()}endLoading(){this.isDestroyed||this.view.endLoading()}registerController(t,e){this.controllersMap.set(t,e),this.evt.emit("onRegister",t,e)}getController(t,e=!1){if(this.controllersMap.has(t))return this.controllersMap.get(t);if(this.parent&&e)return this.parent.getController(t)}getTopView(){return this.parent?this.view.modal.routeDepth===2?this.view:this.parent.getTopView():this.view}}),po=d("ActivityCounter",class extends zs{constructor(){super(...arguments),this.reusable=!1,this.registration=new Map}enroll(t){this.state==="Unused"&&!this.registration.has(t)&&(this.registration.set(t,!1),this.increment())}attend(t){this.registration.has(t)&&this.registration.get(t)===!1&&(this.registration.set(t,!0),this.decrement())}}),pt=d("UIActionButtonState",class{constructor(t,e,a){this.disabled=!1,this.visible=!0,this.loading=!1,this.permitted=!0,this.noPermissionHidden=!0,this.noDataDisabled=!1,this.isInit=!1,this.name=t,this.uiActionId=a,this.appId=e}async init(){if(!this.uiActionId){this.isInit=!0;return}const t=await Gt(this.uiActionId);if([,this.appDeName]=this.uiActionId.split("@"),!t)return;const{dataAccessAction:e,noPrivDisplayMode:a,actionTarget:s,uiactionMode:i,uiactionTag:r}=t;this.dataAccessAction=e,a===1?this.noPermissionHidden=!1:a===6&&(this.visible=!1),(s&&s!=="NONE"||i==="SYS"&&["Save","SaveAndExit","SaveAndNew","Edit","Remove","RemoveAndExit"].includes(r))&&(this.noDataDisabled=!0),this.isInit=!0}async calcPermission(t,e){if(!this.dataAccessAction)return;const a=await ibiz.hub.getApp(this.appId);this.appDeName&&e&&!e.includes(this.appDeName)&&ibiz.log.warn("".concat(this.uiActionId,"\u754C\u9762\u884C\u4E3A\u7684\u5B9E\u4F53").concat(this.appDeName,"\u548C\u6570\u636E\u7684\u5B9E\u4F53").concat(e,"\u4E0D\u4E00\u81F4")),this.permitted=await a.authority.calcByDataAccessAction(this.dataAccessAction,t,e)}async update(t,e){this.isInit||await this.init(),await this.calcPermission(t,e),this.permitted?(this.visible=!0,this.disabled=this.noDataDisabled&&!t):(this.disabled=!0,this.visible=!this.noPermissionHidden)}}),ft=d("ButtonContainerState",class{constructor(){Object.defineProperty(this,"children",{enumerable:!1,configurable:!0,writable:!0,value:[]}),Object.defineProperty(this,"visible",{enumerable:!0,configurable:!0,get:()=>this.children.length===0?!1:!!this.children.find(t=>t.visible)})}addState(t,e){Object.defineProperty(this,t,{enumerable:!0,configurable:!0,writable:!0,value:e}),this.children.push(e)}setLoading(t){this.children.forEach(e=>{e.setLoading?e.setLoading(t):e.loading=t?e.name===t:!1})}async update(t,e){await Promise.all(this.children.map(a=>a.update(t,e)))}}),fo=d("QXEventEx",class extends Et{constructor(){super(...arguments),this.anyEventFns=[]}onAll(t){this.anyEventFns.includes(t)||this.anyEventFns.push(t)}emit(t,...e){super.emit(t,...e),this.anyEventFns.forEach(a=>{a(t,...e)})}async asyncEmit(t,...e){const a=super.asyncEmit(t,...e),s=this.anyEventFns.map(o=>o(t,...e)),i=Promise.all(s),r=await a,n=await i;return r.concat(...n)}reset(){super.reset(),Sa(this.anyEventFns)}}),mo=d("ControllerEvent",class{constructor(t){this.getBaseArgs=t,this.isDestroyed=!1,this.evt=new fo}async emit(t,e){this.isDestroyed||await this.evt.asyncEmit(t,{...this.getBaseArgs(),eventName:t,...e||{}})}on(t,e){this.isDestroyed||this.evt.on(t,e)}off(t,e){this.isDestroyed||this.evt.off(t,e)}onAll(t){this.isDestroyed||this.evt.onAll(t)}destroy(){this.getBaseArgs=void 0,this.evt.reset(),this.isDestroyed=!0}});function He(t){return window.location.hash.split("/").length>t*2+2}function se(t,e){return(w(t)||t==="")&&(w(e)||e==="")?!1:t!==e}function Gs(t){let e=Array.isArray(t)?t[0]:t;return e&&e instanceof G&&(e=e.getOrigin()),e}function Ye(t,e,a){const s=[];return t.forEach(i=>{const{valueRuleType:r}=i,n=i.sysValueRule,o=i.defvalueRule;if(r==="SYSVALUERULE"&&n)n.ruleType==="REG"?s.push({pattern:new RegExp(n.regExCode),message:n.ruleInfo,trigger:"change blur"}):n.ruleType==="SCRIPT"&&s.push({validator:(u,c,l,p)=>{if(!c)return!0;try{B.execScriptFn({rule:u,value:c,callback:l,source:p},n.scriptCode,{isAsync:!1})}catch(h){return console.error(h),!1}return!0},trigger:"change blur"});else if(r==="DEFVALUERULE"&&o){const u=a||e;s.push({validator:(c,l,p,h)=>{if(V(h[u]))return!0;const{isPast:E,infoMessage:C}=_e(u,h,o.groupCond);return E||p(new f(C||o.ruleInfo)),!0},trigger:"change blur"})}}),s}function qe(t){const e=[],{maxLength:a,minLength:s}=t,{maxValue:i,minValue:r}=t;return a&&e.push({validator:(n,o,u)=>{if(!w(o)&&o.length>a)u(new Error("\u5185\u5BB9\u957F\u5EA6\u5FC5\u987B\u5C0F\u4E8E\u7B49\u4E8E".concat(a,",\u5F53\u524D\u957F\u5EA6\u4E3A").concat(o.length)));else return!0}}),s&&e.push({validator:(n,o,u)=>{if(!w(o)&&o.length<s)u(new Error("\u5185\u5BB9\u957F\u5EA6\u5FC5\u987B\u5927\u4E8E\u7B49\u4E8E".concat(s,",\u5F53\u524D\u957F\u5EA6\u4E3A").concat(o.length)));else return!0}}),w(i)||e.push({validator:(n,o,u)=>{if(!w(o)&&De(o)&&o>i)u(new Error("\u503C\u5FC5\u987B\u5C0F\u4E8E\u7B49\u4E8E".concat(i)));else return!0}}),w(r)||e.push({validator:(n,o,u)=>{if(!w(o)&&De(o)&&o<r)u(new Error("\u503C\u5FC5\u987B\u5927\u4E8E\u7B49\u4E8E".concat(r)));else return!0}}),e}var Eo=d("ValueExUtil",class{static mergeDefault(t){return Ae(t,{textSeparator:",",valueSeparator:","})}static toText(t,e){if(w(e)||e==="")return"";const{valueType:a,objectNameField:s,textSeparator:i}=this.mergeDefault(t);if(["OBJECTS","OBJECT"].includes(a)){if(!s)throw new f("\u7F3A\u5C11objectNameField");const r=s.toLowerCase();return a==="OBJECTS"?e.map(n=>n[r]||"---").join(i):e[r]}return a==="SIMPLES"?e.join(i):"".concat(e)}});function Qe(t,e){var a;const{name:s,valueType:i,defaultValue:r,valueFormat:n}=t,{data:o,context:u,params:c}=e;if(w(i)&&w(r))return;if(i==="RESET")return null;const l=o[s];if(!Ie(l)){if(!i&&r)return r;switch(i){case"APPDATA":if(Object.prototype.hasOwnProperty.call(c,r))return c[r];if(Object.prototype.hasOwnProperty.call(u,r))return u[r];break;case"OPERATORNAME":return u.srfusername;case"OPERATOR":return u.srfuserid;case"CURTIME":return S().format(n);case"PARAM":return o[r];case"SESSION":case"APPLICATION":if(!((a=ibiz.appData)!=null&&a.context))throw new f("appdata.context\u4E0D\u5B58\u5728");return ibiz.appData.context[r];case"CONTEXT":return c[r];case"UNIQUEID":return K();default:throw new D({},"\u9ED8\u8BA4\u503C\u7C7B\u578B[".concat(i,"]\u672A\u652F\u6301"))}}}var go="asyncimportdata2",Co="importdata2";function Do(t){return new Promise(e=>{const a=s=>{const i=s.messageid||s.data.asyncacitonid;if(t!==i)return;const r=s.data.actionstate;(r===30||r===40)&&(e(),ibiz.mc.command.asyncAction.off(a))};ibiz.mc.command.asyncAction.on(a)})}async function wo(t,e,a){const s=new FormData;s.append("file",t);let i="".concat(e.codeName2.toLowerCase(),"/").concat(go);a?.codeName&&(i+="?srfimporttag=".concat(a.codeName));const r=await ibiz.net.request(i,{method:"post",data:s,headers:{"Content-Type":"multipart/form-data"}});await Do(r.data.asyncacitonid),ibiz.mc.command.send({srfdecodename:e.codeName},"OBJECTCREATED")}async function vo(t,e,a){const s=new FormData;s.append("file",t);let i="".concat(e.codeName2.toLowerCase(),"/").concat(Co);return a?.codeName&&(i+="?srfimporttag=".concat(a.codeName)),(await ibiz.net.request(i,{method:"post",data:s,headers:{"Content-Type":"multipart/form-data"}})).data}async function js(t,e,a){if(!ibiz.util.getExcelUtil)throw new f("ibiz.util.getExportExcel\u4E0D\u5B58\u5728");const s=await ibiz.util.getExcelUtil();if(!s)throw new f("\u5BFC\u51FA\u6A21\u5757\u52A0\u8F7D\u9519\u8BEF");try{return s.exportJsonToExcel({header:t,data:e,filename:a,autoWidth:!0}),{ok:!0}}catch{return{ok:!1}}}var $e="__self",Ks=d("BaseController",class{constructor(t,e,a,s){this.model=t,this.context=e,this.params=a,this.ctx=s,this.state={},this.name="",this.evt=new mo(this.getEventArgs.bind(this)),this.mountCounter=new po(this.mounted.bind(this)),this.childNames=[],this.name=t.name||t.id,this.initState()}get _evt(){return this.evt}initState(){this.state.isCreated=!1,this.state.isMounted=!1,this.state.isDestroyed=!1}getEventArgs(){return{context:this.context,params:this.params,data:[],targetName:this.model.name,view:this.ctx.view}}async created(){this.mountCounter.enroll($e),await this.onCreated(),this.state.isCreated=!0,this.force(()=>{this.mountSelf()}),ibiz.log.debug("".concat(this.constructor.name,":").concat(this.name," onCreated")),this._evt.emit("onCreated",void 0)}async onCreated(){this.ctx.evt.on("onForecast",t=>{this.childNames.includes(t)&&this.mountCounter.enroll(t)}),this.ctx.evt.on("onRegister",(t,e)=>{this.childNames.includes(t)&&e.evt.on("onMounted",()=>{this.mountCounter.attend(t)})})}async mountSelf(){this.mountCounter.registration.get($e)||this.mountCounter.attend($e)}async mounted(){await this.onMounted(),this.state.isMounted=!0,ibiz.log.debug("".concat(this.constructor.name,":").concat(this.name," onMounted")),this._evt.emit("onMounted",void 0)}async onMounted(){}async destroyed(){await this.onDestroyed(),this.state.isDestroyed=!0,ibiz.log.debug("".concat(this.constructor.name,":").concat(this.name," onDestroyed")),await this._evt.emit("onDestroyed",void 0),this.evt.destroy()}async onDestroyed(){}force(t){}getController(t,e=!1){return this.ctx.getController(t,e)}getTopView(){return this.ctx.getTopView()}listenNewController(t){this.ctx.evt.on("onRegister",t)}}),Ao=class di{constructor(e){this.msgGroupId=e,this.viewMsgMap=new Map}async init(e){var a,s;const i=ibiz.hub.getApp(e.srfappid).model,r=(a=i.appViewMsgGroups)==null?void 0:a.find(o=>o.id===this.msgGroupId);if(!r)throw new f("\u627E\u4E0D\u5230\u89C6\u56FE\u6D88\u606F\u7EC4".concat(this.msgGroupId,"\u7684\u6A21\u578B"));this.msgGroup=r;const n=r.appViewMsgGroupDetails.map(o=>o.appViewMsgId);if((s=i.appViewMsgs)==null||s.forEach(o=>{const u=n.indexOf(o.id);u!==-1&&(this.viewMsgMap.set(o.id,o),n.splice(u,1))}),n.length)throw new f("\u6CA1\u6709\u627E\u5230".concat(n.join(","),"\u89C6\u56FE\u6D88\u606F\u6A21\u578B"))}getDeFieldName(e,a){var s,i;if(a)return(i=(s=wt(e,a))==null?void 0:s.name)==null?void 0:i.toLowerCase()}static async fetchDataSet(e,a,s){const{appDataEntityId:i,appDEDataSetId:r}=e;if(!r)throw new m(e,"\u672A\u914D\u7F6E\u5B9E\u4F53\u6570\u636E\u96C6");const n=await ibiz.hub.getApp(a.srfappid).deService.exec(i,r,a,s);return n.data.length?n.data:[]}async calcViewMessages(e,a){const s=this.msgGroup.appViewMsgGroupDetails,i=[];return s?.length&&await Promise.all(s.map(async r=>{if(this.viewMsgMap.get(r.appViewMsgId).dynamicMode===1){const o=await this.calcDynaMsgs(r,e,a);i.push(...o)}else{const o=this.calcStaticMsg(r);i.push(o)}})),i}calcStaticMsg(e){const{position:a}=e,s=this.viewMsgMap.get(e.appViewMsgId),{title:i,message:r,removeMode:n,position:o,messageType:u}=s,{userTag:c,userTag2:l,userTag3:p,userTag4:h}=s;return{title:i,message:r,position:a||o,messageType:u,removeMode:n,extraParams:{userTag:c,userTag2:l,userTag3:p,userTag4:h}}}async calcDynaMsgs(e,a,s){const i=this.viewMsgMap.get(e.appViewMsgId),{appDataEntityId:r,orderValueAppDEFieldId:n,titleAppDEFieldId:o,removeFlagAppDEFieldId:u,msgTypeAppDEFieldId:c,contentAppDEFieldId:l,msgPosAppDEFieldId:p}=i;if(!r)throw new m(i,"\u672A\u914D\u7F6E\u5E94\u7528\u5B9E\u4F53");const h=await ibiz.hub.getAppDataEntity(r,a.srfappid),E={...s},C=this.getDeFieldName(h,n);C&&(E.sort="".concat(C,",asc"));const F=await di.fetchDataSet(i,a,E);if(!F.length)return[];const v=this.calcStaticMsg(e),P=this.getDeFieldName(h,o),b=this.getDeFieldName(h,p),I=this.getDeFieldName(h,l),R=this.getDeFieldName(h,c),z=this.getDeFieldName(h,u);return F.map(N=>{const et={};return b&&!w(N[b])&&(et.position=N[b]),P&&!w(N[P])&&(et.title=N[P]),I&&!w(N[I])&&(et.message=N[I]),R&&!w(N[R])&&(et.messageType=N[R]),z&&!w(N[z])&&(et.removeMode=N[z]),ve(v,et)})}},Xs=d("ViewController",class extends Ks{constructor(t,e,a,s){const i=ibiz.util.layoutPanel.fill(t);super(i,Bt.create({},e),a||{},new ho(s)),this.session={},this.modal=new Nr({}),this.providers={},this.engines=[],this.slotProps={},this.counters={},this.viewLoading=new co,this.isCloseView=!1,this._isActive=!0,s&&s.registerController(this.model.name,this),this.ctx.init(this),this.initEngines()}get _evt(){return this.evt}get parentView(){var t;return(t=this.ctx.parent)==null?void 0:t.view}get isActive(){return this._isActive}onActivated(){this._isActive=!0,ibiz.log.debug("\u89C6\u56FE[".concat(this.model.name,"](").concat(this.model.id,")\u6FC0\u6D3B"))}onDeactivated(){this._isActive=!1,ibiz.log.debug("\u89C6\u56FE[".concat(this.model.name,"](").concat(this.model.id,")\u6682\u505C"))}initEngines(){const t=Xa(this.model);if(t.length)t.forEach(e=>{const a=ibiz.engine.getEngine(e,this);a?this.engines.push(a):ibiz.log.warn("\u672A\u627E\u5230\u89C6\u56FE\u5F15\u64CE\u5B9E\u73B0\uFF1A",e)});else{const e=ibiz.engine.getEngine({engineCat:"VIEW",engineType:this.model.viewType},this);e&&this.engines.push(e)}}async initCounters(){const t=this.model.viewLayoutPanel,{appCounterRefs:e}=t;if(e&&e.length>0)try{await Promise.all(e.map(async a=>{const s=await Rs.getCounterByRef(a,this.context);this.counters[a.id]=s}))}catch(a){console.error(a)}}initState(){super.initState(),this.state.isLoading=!1,this.state.caption=this.model.caption,this.state.srfactiveviewdata=null,this.state.viewMessages={}}async onCreated(){await super.onCreated(),this.modal.hooks.beforeDismiss.tapPromise(async i=>{Ie(this.state.closeOK)&&(i.ok=this.state.closeOK),await this._evt.emit("onCloseView",{...i})}),this._evt.emit("onViewInfoChange",{caption:this.model.caption,title:this.model.title}),this.handleContextParams();const t=this.model.viewLayoutPanel;this.childNames.push(t.name);const e=await dt(t);this.providers[t.name]=e;const a=ja(this.model);a&&await Promise.all(a.map(async i=>{const r=await dt(i);this.providers[i.name||i.id]=r})),await this.initCounters();const s=Ka(this.model);s.length&&(this.scheduler=ibiz.scheduler.createViewScheduler(s),this.scheduler.defaultParamsCb=()=>this.getEventArgs(),this.scheduler.hasViewEventTrigger&&this.evt.onAll((i,r)=>{this.scheduler.triggerViewEvent(r)})),this.initViewMsg(),this.engines.length&&await Promise.all(this.engines.map(i=>i.onCreated()))}async onMounted(){var t;await super.onMounted(),this.engines.length&&await Promise.all(this.engines.map(e=>e.onMounted())),(t=this.scheduler)==null||t.startTimerTrigger()}async onDestroyed(){await super.onDestroyed(),this.engines.length&&await Promise.all(this.engines.map(t=>t.onDestroyed())),this.ctx.destroy(),this.context.destroy(),this.engines=[],this.scheduler&&this.scheduler.destroy(),ibiz.log.debug("\u89C6\u56FE[".concat(this.model.name,"](").concat(this.model.id,")\u9500\u6BC1"))}handleContextParams(){this.context.srfappid=this.model.appId,(w(this.context.srfsessionid)||T(this.context.srfsessionid))&&(this.context.srfsessionid=K());const t=this.model.appViewNavContexts;let e={};x(t)&&(e=y(t,this.params,this.context)),Object.assign(this.context,e);const a=this.model.appViewNavParams;let s={};x(a)&&(s=y(a,this.params,this.context)),Object.assign(this.params,s),this.state.isMounted&&this.callUIAction("Refresh")}async call(t,e){let a;for(const s of this.engines)if(a=await s.call(t,e),a!==void 0)break;return a}async callUIAction(t,e){const a=this.call(t,e);if(a===void 0)throw new f("\u6CA1\u6709\u5F15\u64CE\u652F\u6301\u9884\u7F6E\u754C\u9762\u884C\u4E3A".concat(t));return a}async closeView(t={ok:!1,data:[]}){await this.modal.dismiss(t)}startLoading(){this.viewLoading.begin(),this.state.isLoading=this.viewLoading.isLoading}endLoading(){this.viewLoading.end(),this.state.isLoading=this.viewLoading.isLoading}setLayoutPanel(t){var e;this.layoutPanel=t,this.layoutPanel.state.isMounted?this.mountCounter.attend(this.layoutPanel.model.name):this.layoutPanel.evt.on("onMounted",()=>{this.mountCounter.attend(this.layoutPanel.model.name)}),(e=this.scheduler)!=null&&e.hasControlEventTrigger&&t.evt.on("onControlEvent",a=>{this.scheduler.triggerControlEvent(a.triggerControlName,a.triggerEventName,a.triggerEvent)})}async initViewMsg(){const{appViewMsgGroupId:t}=this.model;t&&(this.state.viewMessages={TOP:[],BOTTOM:[],BODY:[],POPUP:[]},this.viewMsgController=new Ao(t),await this.viewMsgController.init(this.context),(await this.viewMsgController.calcViewMessages(this.context,this.params)).forEach(a=>{["TOP","BOTTOM","BODY","POPUP"].includes(a.position)&&this.state.viewMessages[a.position].push(a)}),this.state.viewMessages.POPUP.length&&this.alertViewMessage(this.state.viewMessages.POPUP))}async alertViewMessage(t){const[e,...a]=t,s={title:e.title,desc:e.message};e.extraParams.userTag&&Object.assign(s,{confirmButtonText:e.extraParams.userTag}),e.messageType==="WARN"?await ibiz.modal.warning(s):e.messageType==="ERROR"?await ibiz.modal.error(s):await ibiz.modal.info(s),a.length&&this.alertViewMessage(a)}}),hc=d("MobViewController",class extends Xs{}),pc=d("WFStepTraceViewController",class extends Xs{initState(){super.initState(),this.state.historyData=null}async onCreated(){var t;await super.onCreated();const e=ibiz.hub.getApp(this.context.srfappid);if((t=this.ctx.parent)!=null&&t.view.model.appDataEntityId){const a=await e.deService.getService(this.ctx.parent.view.model.appDataEntityId),s=Object.assign(this.context.clone(),this.params),i=await a.wf.getWFHistory(s);i.data&&(this.state.historyData=i.data)}}}),Io=d("EditorController",class{constructor(t,e){this.style={},this.placeHolder="",this.editorParams={},this.model=t,this.parent=e,this.context=e.context,this.params=e.params}get readonly(){return!!this.model.readOnly}async init(){await this.onInit()}async onInit(){if(this.model.placeHolder&&(this.placeHolder=this.model.placeHolder),this.model.editorParams&&Object.keys(this.model.editorParams).forEach(t=>{this.editorParams[t]=this.model.editorParams[t]}),this.model.editorWidth){const t=this.model.editorWidth;t>0&&t<=1?this.style.width="".concat(t*100,"%"):this.style.width="".concat(t,"px")}if(this.model.editorHeight){const t=this.model.editorHeight;t>0&&t<=1?this.style.height="".concat(t*100,"%"):this.style.height="".concat(t,"px")}}handlePublicParams(t,e,a){const{navigateContexts:s,navigateParams:i}=this.model;let r={};s&&t&&(r=y(s,t,a,e));const n=Object.assign(e.clone(),r);let o={};return i&&t&&(o=y(i,t,a,e)),{context:n,params:o}}toObj(t){return t?new Function("return (".concat(t,");"))():void 0}toBoolean(t){return Object.is("true",t)}}),fc=d("CodeListEditorController",class extends Io{async loadCodeList(t){const{context:e,params:a}=this.handlePublicParams(t,this.context,this.params);if(this.model.appCodeListId){const s=await ibiz.hub.getApp(this.context.srfappid);let i=[];return i=await s.codeList.get(this.model.appCodeListId,e,a),i}throw new m(this.model,"\u7F16\u8F91\u5668\u7C7B\u578B[".concat(this.model.editorType,"]\uFF0C\u672A\u914D\u7F6E\u4EE3\u7801\u8868"))}}),Y=d("ControlController",class extends Ks{constructor(t,e,a,s){super(t,Bt.create({},e),new ha({},a),s),this.controlParams={},this.providers={},this.registerToCtx();const i=ibiz.util.layoutPanel.get("".concat(t.controlType,"_DEFAULT"));i&&(this.controlPanel=A(i)),this.updateContextParams({})}get _evt(){return this.evt}get view(){return this.ctx.view}registerToCtx(){this.ctx.registerController(this.model.name||this.model.id,this)}getEventArgs(){return{...super.getEventArgs(),data:this.getData()||[],ctrl:this}}initState(){super.initState(),this.state.isLoading=!1}async onCreated(){var t;if(await super.onCreated(),this.controlPanel){this.childNames.push(this.controlPanel.name);const e=await dt(this.controlPanel);this.providers[this.controlPanel.name]=e}this.handleControlParams(),this.initControlScheduler(this.model.controlLogics),(t=this.scheduler)!=null&&t.hasControlEventTrigger&&this._evt.onAll((e,a)=>{this.scheduler.triggerControlEvent(a.targetName,a.eventName,a)})}async onMounted(){var t;await super.onMounted(),(t=this.scheduler)==null||t.startTimerTrigger()}async onDestroyed(){await super.onDestroyed(),this.scheduler&&this.scheduler.destroy(),this.params.destroy()}updateContextParams(t){t.context&&this.context.reset({},t.context),t.params&&this.params.reset({},t.params);const{controlNavContexts:e,controlNavParams:a}=this.model;let s={};x(e)&&(s=y(e,this.params,this.context)),Object.assign(this.context,s);let i={};x(a)&&(i=y(a,this.params,this.context)),Object.assign(this.params,i)}getControlType(){return this.model.controlType}getData(){return null}async startLoading(){this.state.isLoading=!0,this.ctx.startLoading()}async endLoading(){this.state.isLoading=!1,this.ctx.endLoading()}handlerAbilityParams(t){const e=this.context.clone(),a={...this.params};let s=this.getData()||[];return t?.data&&(s=Array.isArray(t.data)?t.data:[t.data]),t?.context&&Object.assign(e,t.context),t?.viewParam&&Object.assign(a,t.viewParam),{context:e,params:a,data:s}}setLayoutPanel(t){this.layoutPanel=t,this.layoutPanel.state.isMounted?this.mountCounter.attend(this.layoutPanel.model.name):this.layoutPanel.evt.on("onMounted",()=>{this.mountCounter.attend(this.layoutPanel.model.name)})}handleControlParams(){if(!this.model.controlParam)return;const{ctrlParams:t}=this.model.controlParam;let e={};x(t)&&(e=y(t,this.params,this.context)),Object.assign(this.controlParams,e)}initControlScheduler(t=[]){t.length!==0&&(this.scheduler=ibiz.scheduler.createControlScheduler(t),this.scheduler.defaultParamsCb=()=>this.getEventArgs())}actionNotification(t,e){var a;const{ctrlMsg:s}=this.model,i=(a=s?.ctrlMsgItems)==null?void 0:a.find(o=>o.name===t);let r,n;if(i&&i.content){n=w(i.timeout)?void 0:i.timeout/1e3;const o={...this.getEventArgs()};e?.data&&(o.data=e.data),r=B.execScriptFn(o,"`".concat(i.content,"`"),{isAsync:!1,singleRowReturn:!0})}else{const o="CONTROL.".concat(this.model.controlType,".").concat(t).toUpperCase();r=ibiz.i18n.t(o,""),r===o&&(r="")}if(!r&&e?.default&&(r=e.default),!r&&e?.error&&(r=r||e.error.message),!!r){if(e?.error)throw ibiz.log.error(e.error),new de(r,n);ibiz.message.success(r,n,n===0)}}}),tt=d("MDControlController",class extends Y{constructor(){super(...arguments),this.fieldIdNameMap=new Map}get _evt(){return this.evt}initState(){super.initState(),this.state.items=[],this.state.selectedData=[],this.state.searchParams={},this.state.noSort=!1,this.state.sortQuery="",this.state.curPage=1,this.state.size=20,this.state.total=0,this.state.isLoaded=!1,this.state.singleSelect=!0,this.state.mdctrlActiveMode=0,this.state.groups=[]}async onCreated(){var t;await super.onCreated(),this.dataEntity=await ibiz.hub.getAppDataEntity(this.model.appDataEntityId),(t=this.dataEntity.appDEFields)==null||t.forEach(a=>{this.fieldIdNameMap.set(a.id,a.name)});const e=this.onDataChange.bind(this);this.onDataChange=Wt(a=>{e(a)},300),ibiz.mc.command.change.on(this.onDataChange),this.setSort()}async onMounted(){await super.onMounted(),this.state.loadDefault&&this.load({isInitialLoad:!0})}onDestroyed(){return ibiz.mc.command.change.off(this.onDataChange),super.onDestroyed()}onDataChange(t){t.data&&t.data.srfdecodename===this.dataEntity.codeName&&this.refresh()}setSort(t,e){t&&e&&(this.state.sortQuery="".concat(t,",").concat(e))}async getFetchParams(t){const{curPage:e,size:a,sortQuery:s,noSort:i}=this.state,r={...this.params};return a&&(r.page=e-1,r.size=a),!i&&s&&(r.sort=s),await this._evt.emit("onBeforeLoad",void 0),Object.assign(r,{...this.state.searchParams}),t&&Object.assign(r,t),r}async load(t={}){if(this.state.isSimple)return[];await this.startLoading();try{const e=t.isInitialLoad===!0,a=t.isLoadMore===!0;e?this.state.curPage=1:a&&(this.state.curPage+=1);const{context:s}=this.handlerAbilityParams(t),i=await this.getFetchParams(t?.viewParam),r=await this.service.fetch(s,i);typeof r.total=="number"&&(this.state.total=r.total),a?this.state.items.push(...r.data):this.state.items=r.data,await this.afterLoad(t,r.data),this.state.isLoaded=!0,await this._evt.emit("onLoadSuccess",{isInitialLoad:e})}catch(e){throw await this._evt.emit("onLoadError",void 0),this.actionNotification("FETCHERROR",{error:e}),e}finally{await this.endLoading()}return this.state.items.forEach((e,a)=>{e.srfserialnum=a+1}),this.actionNotification("FETCHSUCCESS"),this.state.items}async afterLoad(t,e){return e}async refresh(){await this.load({isInitialLoad:!1})}async remove(t){const{context:e,params:a,data:s}=this.handlerAbilityParams(t);if(!s?.length)throw new f("\u672A\u9009\u4E2D\u6570\u636E");if(t?.silent!==!0&&!await ibiz.confirm.error({title:"\u6570\u636E\u5220\u9664",desc:"\u786E\u8BA4\u5220\u9664\u6570\u636E\uFF1F"}))return;await this._evt.emit("onBeforeRemove",void 0),await this.startLoading();let i=!1;try{const r=O(this.model.appDataEntityId);await nt(s.map(async n=>{if(n.srfuf!==0){const o=e.clone();o[r]=n.srfkey,await this.service.remove(o,a),i=!0}this.afterRemove(n)})),t?.silent!==!0&&this.actionNotification("REMOVESUCCESS",{data:s,default:"\u6570\u636E[".concat(s.map(n=>n.srfmajortext).join("\u3001"),"]\u5220\u9664\u6210\u529F!")}),i&&!t?.notRefresh&&await this.refresh()}catch(r){throw await this._evt.emit("onRemoveError",void 0),this.actionNotification("REMOVEERROR",{error:r,data:s}),r}finally{await this.endLoading()}this.state.selectedData=[],await this._evt.emit("onRemoveSuccess",void 0)}afterRemove(t){const e=this.state.items.findIndex(a=>a.srfkey===t.srfkey);e!==-1&&this.state.items.splice(e,1)}getData(){return this.state.selectedData||[]}setActive(t){return this._evt.emit("onActive",{data:[t]})}setSelection(t){const{selectedData:e}=this.state;pa(e,t)||(this.state.selectedData=t,this._evt.emit("onSelectionChange",{data:t}))}async onRowClick(t){const{selectedData:e}=this.state,a=e.filter(s=>s.srfkey!==t.srfkey);a.length===e.length?this.setSelection(this.state.singleSelect?[t]:e.concat([t])):this.setSelection(a),this.state.mdctrlActiveMode===1&&await this.setActive(t)}async onDbRowClick(t){this.state.mdctrlActiveMode===2&&await this.setActive(t)}async importData(){var t;const{appDataEntityId:e,dedataImportId:a}=this.model,s=await ibiz.hub.getAppDataEntity(e);if(!((t=s.appDEDataImports)==null?void 0:t.find(n=>n.id===a)))throw new f("\u65E0\u5BFC\u5165\u6A21\u578B\uFF01");const r=ibiz.overlay.createModal("DataImport",{dismiss:()=>r.dismiss(),appDataEntity:s},{width:"auto",placement:"center"});r.present(),await r.onWillDismiss()}async exportData(t){}}),yo=d("AppMenuController",class extends Y{initState(){super.initState(),this.state.menuItemsState={}}get routeDepth(){return this.view.modal.routeDepth}async onCreated(){var t;await super.onCreated(),this.app=await ibiz.hub.getApp(this.context.srfappid),(t=this.model.appMenuItems)==null||t.forEach(e=>{this.initMenuItemState(e)})}async onClickMenuItem(t,e,a=!0){const s=he(this.model,t,{compareField:"id",childrenFields:["appMenuItems"]});if(!s)throw new f("\u627E\u4E0D\u5230\u540D\u4E3A".concat(t,"\u7684\u83DC\u5355\u9879"));if(this.evt.emit("onClick",{eventArg:t,event:e}),!s.appFuncId)throw new m(s,"\u6CA1\u6709\u914D\u7F6E\u5E94\u7528\u529F\u80FD");const i=this.context.clone();this.routeDepth&&a&&Object.assign(i,{toRouteDepth:this.routeDepth+1}),await ibiz.commands.execute(Xe.TAG,s.appFuncId,i,this.params)}initMenuItemState(t){var e;const a={permitted:!0,visible:!0};if(t.hidden)a.visible=!1;else{let s=!0;t.accessKey&&(s=this.app.authority.calcByResCode(t.accessKey));let i=s;if((e=t.appMenuItems)!=null&&e.length){const r=t.appMenuItems.map(n=>this.initMenuItemState(n).visible);i=i&&r.includes(!0)}a.permitted=s,a.visible=i}return this.state.menuItemsState[t.id]=a,a}getAllItems(){const t=[],e=a=>{a.forEach(s=>{t.push(s),s.appMenuItems&&s.appMenuItems.length>0&&e(s.appMenuItems)})};return e(this.model.appMenuItems),t}getCounter(t){const{counters:e}=this.ctx.view;return e[t]?e[t]:null}}),mc=d("AppMenuIconViewController",class extends yo{async onClickMenuItem(t,e){const a=he(this.model,t,{compareField:"id",childrenFields:["appMenuItems"]});if(!a)throw new f("\u627E\u4E0D\u5230\u540D\u4E3A".concat(t,"\u7684\u83DC\u5355\u9879"));if(this.evt.emit("onClick",{eventArg:t,event:e}),!a.appFuncId)throw new m(a,"\u6CA1\u6709\u914D\u7F6E\u5E94\u7528\u529F\u80FD");const s=this.context.clone();this.routeDepth===1&&Object.assign(s,{toRouteDepth:1}),await ibiz.commands.execute(Xe.TAG,a.appFuncId,s,this.params)}}),Fo=d("CalendarService",class extends at{async search(t,e={}){const{sysCalendarItems:a}=this.model;if(!a)return[];const s=a.map(async n=>{const o=n.appDEDataSetId||"fetchdefault";return this.exec2(o,t,e,void 0,n.appDataEntityId)});return(await Promise.all(s)).map((n,o)=>this.setCalendarConfigData(n.data,o)).flat()}setCalendarConfigData(t,e){const{sysCalendarItems:a}=this.model;if(!a)throw new f("\u672A\u627E\u5230\u65E5\u5386\u9879\u6A21\u578B");const s=a[e];if(!s)throw new f("\u672A\u627E\u5230\u65E5\u5386\u9879\u6A21\u578B");return t.map(i=>new Kn(s,i))}async exec2(t,e,a={},s={},i=this.model.appDataEntityId){return await this.app.deService.exec(i,t,e,a,s)}}),Ec=d("CalendarController",class extends tt{initState(){super.initState(),this.state.selectedDate=new Date,this.state.size=1e3}async onCreated(){await super.onCreated(),this.service=new Fo(this.model),await this.service.init(this.context)}async load(t={}){const e=t.isInitialLoad===!0,{context:a}=this.handlerAbilityParams(t),s=await this.getFetchParams(t?.viewParam);await this.startLoading();let i;try{i=await this.service.search(a,s)}finally{await this.endLoading()}return await this.afterLoad(t,i),this.state.isLoaded=!0,this.state.items=i,this.sortItems(),await this.evt.emit("onLoadSuccess",{isInitialLoad:e}),i}sortItems(){this.model.calendarStyle==="TIMELINE"&&this.state.items.sort((t,e)=>{const a=t.beginTime,s=e.beginTime;let i=0;return S(a).isAfter(s)?i=-1:S(a).isBefore(s)&&(i=1),i})}getCurSelectDate(t){const{selectedDate:e}=this.state,{srfstartdate:a,srfenddate:s}=t;if(!a||!s){const i=new Date(e.getFullYear(),e.getMonth(),1),r=new Date(e.getFullYear(),e.getMonth()+1,1);return{srfstartdate:S(i).format("YYYY-MM-DD HH:mm:ss"),srfenddate:S(r).format("YYYY-MM-DD HH:mm:ss")}}return{srfstartdate:a,srfenddate:s}}async getFetchParams(t={}){const{curPage:e,size:a,sortQuery:s,noSort:i}=this.state,r={...this.params};if(!i&&s&&(r.sort=s),await this._evt.emit("onBeforeLoad",void 0),Object.assign(r,{...this.state.searchParams}),a&&(r.page=e-1,r.size=a),t&&Object.assign(r,t),this.model.calendarStyle!=="TIMELINE"){const n=this.getCurSelectDate(r);Object.assign(r,n)}return r}async onRowClick(t){const{selectedData:e}=this.state,a=e.filter(s=>s.deData.srfkey!==t.deData.srfkey);a.length===e.length?this.setSelection(this.state.singleSelect?[t]:e.concat([t])):this.setSelection(a),this.state.mdctrlActiveMode===1&&await this.setActive(t)}setSelectDate(t){this.state.selectedDate=t}});S.extend(fi),S.extend(Ei),S.extend(Ci),S.extend(wi),S.extend(Ai);var ie="$default_group",vt=class{constructor(t,e){this.model=t,this.chartGenerator=e,this.chartDataArr=[],this.staticOptions={},this.autoCompleteCategory=!0,this.model=t,this.chartGenerator=e;const{chartSeriesEncode:a,caption:s,id:i,userParam:r}=t;if(!t.catalogField)throw new m(t,"\u7F3A\u5C11\u5206\u7C7B\u5C5E\u6027\u914D\u7F6E");if(!t.valueField)throw new m(t,"\u7F3A\u5C11\u503C\u5C5E\u6027\u914D\u7F6E");this.catalogField=e.getFieldKey(t.catalogField),this.valueField=e.getFieldKey(t.valueField),this.groupField=t.seriesField?e.getFieldKey(t.seriesField):void 0;const{chartXAxisId:n,chartYAxisId:o}=a||{};this.xAxisIndex=me(n),this.yAxisIndex=me(o),this.seriesName=s||i,this.staticOptions=this.calcStaticOptions(),r&&(this.seriesUserParam=Je(r))}calcStaticOptions(){return{type:this.model.seriesType,name:this.seriesName,emphasis:{label:{fontSize:20,show:!0}},label:{position:"top",show:!0}}}translateVal(t,e,a=!1){if(w(e))return;if(w(t))return e;const s=this.chartGenerator.codeListMap.get(t);if(s?.length){const i=s.find(r=>r.value===e);if(i)return i.text}return a?void 0:e}prepareChartData(t,e,a,s){var i;this.groupField&&Object.assign(e,{[this.groupField]:s}),this.catalogField&&Object.assign(e,{[this.catalogField]:a});const r=new Jn(e,this.model,a,s);t[s].get(a).chartData=r,(i=this.chartDataArr)==null||i.push(r)}calcGroupData(t){this.groupData={},this.chartDataArr=[];const e=this.groupData,{seriesCodeListId:a,catalogCodeListId:s}=this.model;return t.forEach(i=>{let r=ie;if(this.groupField){const o=this.translateVal(a,i[this.groupField]);if(w(o))return;r=o}e[r]||(e[r]=new Map,s&&this.autoCompleteCategory&&this.chartGenerator.codeListMap.get(s).forEach(u=>{e[r].set(u.text,{value:0})}));const n=this.translateVal(s,i[this.catalogField],!0);if(!n){s&&this.autoCompleteCategory&&this.chartGenerator.codeListMap.get(s).forEach(u=>{this.prepareChartData(e,{[this.valueField]:0},u.text,r)});return}e[r].get(n)||e[r].set(n,{value:0}),e[r].get(n).value=Vt(e[r].get(n).value,i[this.valueField]),e[r].get(n).chartData?this.prepareChartData(e,{[this.valueField]:e[r].get(n).value},n,r):this.prepareChartData(e,i,n,r)}),e}calcGroupSeries(t){return Object.keys(t).map(e=>{const a=t[e],s=this.calcSeriesData(a);let i={...this.staticOptions,data:s};return e!==ie&&(i.name=e),this.seriesUserParam&&(i=Ct(i,this.seriesUserParam)),i})}calcSeriesData(t){const e=[];return t.forEach((a,s)=>{e.push([s,a.value,a.chartData])}),e}calcByData(t){const e=this.dataPreprocess(t),a=this.calcGroupData(e);return this.addTimeData(a),this.calcGroupSeries(a)}getChartDataByParams(t){var e,a,s;return this.groupData&&Object.keys(this.groupData).length===1?(e=this.groupData[ie].get(t.name))==null?void 0:e.chartData:(s=(a=this.groupData)==null?void 0:a[t.seriesName].get(t.name))==null?void 0:s.chartData}dataPreprocess(t){const e=[];t.forEach(s=>{e.push(A(s))});const{groupMode:a}=this.model;return a&&e.forEach(s=>{let i="";if(a==="DAY"||a==="YEAR"||a==="MONTH"){if(a==="DAY"?i="YYYY-MM-DD":a==="YEAR"?i="YYYY":a==="MONTH"&&(i="YYYY-MM"),s[this.catalogField]){const r=S(s[this.catalogField]).format(i);s[this.catalogField]=r}}else if(a==="QUARTER"){if(s[this.catalogField]){const r="".concat(S(s[this.catalogField]).format("YYYY"),"-").concat(S(s[this.catalogField]).quarter());s[this.catalogField]=r}}else if(a==="YEARWEEK"&&s[this.catalogField]){const r="".concat(S(s[this.catalogField]).format("YYYY"),"-").concat(S(s[this.catalogField]).week());s[this.catalogField]=r}}),e}sortTimeData(t){const{groupMode:e}=this.model;Object.keys(t).forEach(a=>{const s=t[a];let i=[];e==="DAY"||e==="YEAR"||e==="MONTH"?i=Array.from(s.keys()).sort((n,o)=>S(n).diff(S(o))):(e==="QUARTER"||e==="YEARWEEK")&&(i=Array.from(s.keys()).sort((n,o)=>{const[u,c]=n.split("-"),[l,p]=o.split("-");return u!==l?parseInt(u,10)-parseInt(l,10):parseInt(c,10)-parseInt(p,10)}));const r=new Map;i.forEach(n=>{r.set(n,s.get(n))}),t[a]=r})}addTimeData(t){const{groupMode:e}=this.model;if(!e||e==="CODELIST")return;const a=[];Object.keys(t).forEach(r=>{t[r].forEach((n,o)=>{a.push(S(o))})});const s=S.max(a),i=S.min(a);if(e==="DAY"){let r=i;const n=s;for(;r?.isSameOrBefore(n,"day");){const o=r.format("YYYY-MM-DD");Object.keys(t).forEach(u=>{t[u].get(o)||t[u].set(o,{value:0})}),r=r.add(1,"day")}}else if(e==="YEAR"){let r=i.year();const n=s.year();for(;r<=n;){const o=r.toString();Object.keys(t).forEach(u=>{t[u].get(o)||t[u].set(o,{value:0})}),r+=1}}else if(e==="MONTH"){let r=i.clone().startOf("month");const n=s.clone().startOf("month");for(;r.isSameOrBefore(n);){const o=r.format("YYYY-MM");Object.keys(t).forEach(u=>{t[u].get(o)||t[u].set(o,{value:0})}),r=r.add(1,"month")}}else if(e==="QUARTER"){const r=[];Object.keys(t).forEach(l=>{t[l].forEach((p,h)=>{r.push(h)})});const n=r.reduce((l,p)=>p<l?p:l,r[0]),o=r.reduce((l,p)=>p>l?p:l,r[0]),[u]=n.split("-"),[c]=o.split("-");for(let l=parseInt(u,10);l<=parseInt(c,10);l++)for(let p=1;p<=4;p++){const h="".concat(l,"-").concat(p);Object.keys(t).forEach(E=>{t[E].get(h)||t[E].set(h,{value:0})})}}else if(e==="YEARWEEK"){const r=[];Object.keys(t).forEach(l=>{t[l].forEach((p,h)=>{r.push(h)})});const n=r.reduce((l,p)=>p<l?p:l,r[0]),o=r.reduce((l,p)=>p>l?p:l,r[0]),[u]=n.split("-"),[c]=o.split("-");for(let l=parseInt(u,10);l<=parseInt(c,10);l++){const p=S("".concat(l,"-12-31")).isoWeek();for(let h=1;h<=p;h++){const E="".concat(l,"-").concat(h);Object.keys(t).forEach(C=>{t[C].get(E)||t[C].set(E,{value:0})})}}}this.sortTimeData(t)}},Po=class extends vt{calcStaticOptions(){if(this.xAxisIndex===void 0)throw new m(this.model,"\u5E8F\u5217\u6CA1\u6709\u914D\u7F6EX\u5750\u6807\u8F74");if(this.yAxisIndex===void 0)throw new m(this.model,"\u5E8F\u5217\u6CA1\u6709\u914D\u7F6EY\u5750\u6807\u8F74");const t=super.calcStaticOptions();t.xAxisIndex=this.xAxisIndex,t.yAxisIndex=this.yAxisIndex;const{stack:e,step:a}=this.model;return a&&(t.step="middle"),t}},bo=class extends vt{calcStaticOptions(){if(this.xAxisIndex===void 0)throw new m(this.model,"\u5E8F\u5217\u6CA1\u6709\u914D\u7F6EX\u5750\u6807\u8F74");if(this.yAxisIndex===void 0)throw new m(this.model,"\u5E8F\u5217\u6CA1\u6709\u914D\u7F6EY\u5750\u6807\u8F74");const t=super.calcStaticOptions();return t.xAxisIndex=this.xAxisIndex,t.yAxisIndex=this.yAxisIndex,this.model,t}},No=class extends vt{calcStaticOptions(){const t=super.calcStaticOptions();return t.label.formatter="{b}: {d}%",t.label.position="outer",t}calcSeriesData(t){const e=[];return t.forEach((a,s)=>{e.push({name:s,value:[a.value,a.chartData]})}),e}},So=class extends vt{calcStaticOptions(){const t=super.calcStaticOptions();return t.label.formatter="{b}: {d}%",t.label.position="outside",t}calcSeriesData(t){const e=[];return t.forEach((a,s)=>{e.push({name:s,value:[a.value,a.chartData]})}),e}},Ro=class extends vt{calcStaticOptions(){if(this.xAxisIndex===void 0)throw new m(this.model,"\u5E8F\u5217\u6CA1\u6709\u914D\u7F6EX\u5750\u6807\u8F74");if(this.yAxisIndex===void 0)throw new m(this.model,"\u5E8F\u5217\u6CA1\u6709\u914D\u7F6EY\u5750\u6807\u8F74");const t=super.calcStaticOptions();return t.xAxisIndex=this.xAxisIndex,t.yAxisIndex=this.yAxisIndex,t}},Lo=class{constructor(t){this.indicator={},this.index=t}get indicatorKeys(){return(!this._indicatorKeys||this._indicatorKeys.length!==Object.keys(this.indicator).length)&&(this._indicatorKeys=Object.keys(this.indicator).sort()),this._indicatorKeys}updateIndicator(t,e){const a=this.indicator[t];(!a||a.max<e)&&(this.indicator[t]={max:e})}toOptions(){const t=Math.max(...Object.values(this.indicator).map(e=>e.max));return{indicator:this.indicatorKeys.map(e=>({name:e,max:t}))}}},To=class extends vt{calcStaticOptions(){return super.calcStaticOptions()}calcRadarCoordSystem(t){const e=this.calcGroupData(t);this.chartGenerator.radarMap.has(this.catalogField)||this.chartGenerator.radarMap.set(this.catalogField,new Lo(this.chartGenerator.radarMap.size));const a=this.chartGenerator.radarMap.get(this.catalogField);Object.values(e).forEach(s=>{s.forEach((i,r)=>{a.updateIndicator(r,i.value)})})}calcByData(t){const e=this.groupData,a=this.chartGenerator.radarMap.get(this.catalogField),s=Object.keys(e).map(r=>{const n=e[r],o=a.indicatorKeys.map(u=>n.has(u)?n.get(u).value:0);return{name:r===ie?this.seriesName:r,value:o}});let i={...this.staticOptions,data:s};return this.seriesUserParam&&(i=Ct(i,this.seriesUserParam)),i}};function Je(t){const e={};return t&&Object.keys(t).forEach(a=>{const s=a.indexOf(".");if(s===-1)return;const i=a.slice(s+1);if(i)try{e[i]=JSON.parse(t[a])}catch{e[i]=t[a]}}),e}var Bo=class{constructor(t){this.model=t,this.staticOptions={tooltip:{show:!0}},this.options={},this.seriesGenerators=[],this.radarMap=new Map,this.codeListMap=new Map,this.seriesGeneratorIndexMap=new Map;const{dechartTitle:e,dechartLegend:a,chartXAxises:s,chartYAxises:i,userParam:r}=t;e&&(this.staticOptions.title=this.calcTitleOption(e)),a&&(this.staticOptions.legend=this.calcLegendOption(a)),s?.length&&(this.staticOptions.xAxis=this.calcXYAxisOption(s)),i?.length&&(this.staticOptions.yAxis=this.calcXYAxisOption(i)),r&&(this.chartUserParam=Je(r))}initSeriesGenerators(){var t;(t=this.model.dechartSerieses)==null||t.forEach(e=>{let a;switch(e.seriesType){case"line":a=new Po(e,this);break;case"bar":a=new bo(e,this);break;case"scatter":a=new Ro(e,this);break;case"pie":a=new So(e,this);break;case"funnel":a=new No(e,this);break;case"radar":a=new To(e,this);break;default:ibiz.log.error("\u56FE\u8868\u6682\u672A\u652F\u6301\u5E8F\u5217\u7C7B\u578B".concat(e.seriesType));break}a&&this.seriesGenerators.push(a)})}calcTitleOption(t){const{showTitle:e,title:a,subTitle:s,titlePos:i}=t,r={show:e,text:a,subtext:s};r.left="center";const n=i?.toLowerCase();return n==="left"||n==="right"?r.left=n:(n==="bottom"||n==="top")&&(r.top=n),r}calcLegendOption(t){const{showLegend:e,legendPos:a}=t,s={};s.show=e;const i=a?.toLowerCase();return i==="left"||i==="right"?(s.left=i,s.top="middle",s.orient="vertical"):i==="bottom"&&(s.top=i),s}calcXYAxisOption(t){const e=[];return t.forEach(a=>{const{position:s,dataShowMode:i,userParam:r}=a;let n={type:a.echartsType,name:a.caption,max:a.maxValue,min:a.minValue,position:s,axisLabel:{formatter:o=>i===1?o.length>4?"".concat(o.slice(0,4).split("").join(`
|
|
2
2
|
`),`
|
|
3
3
|
...`):o.split("").join(`
|
|
4
|
-
`):i===2&&o.length>4?"".concat(o.slice(0,4),"..."):o,rotate:i===3?45:0}};r&&(n=Ct(n,$e(r))),e.push(n)}),e}async init(t,e){await this.loadCodeList(t,e),this.entity=await ibiz.hub.getAppDataEntity(this.model.appDataEntityId),this.initSeriesGenerators()}getFieldKey(t){const e=this.entity.appDEFields.find(a=>a.name===t);return e?e.codeName.toLowerCase():t.toLowerCase()}async loadCodeList(t,e){var a;if(this.codeListMap.clear(),!((a=this.model.dechartSerieses)!=null&&a.length))return;const s=ibiz.hub.getApp(t.srfappid),i=async r=>{if(!r||this.codeListMap.has(r))return;const n=await s.codeList.get(r,t,e);this.codeListMap.set(r,n)};await Promise.all(this.model.dechartSerieses.map(async r=>{const{seriesCodeListId:n,catalogCodeListId:o}=r;await i(n),await i(o)}))}calcOptionsByData(t){this.radarMap.clear(),this.options={series:[],radar:[]},this.seriesGenerators.forEach(a=>{a.model.seriesType==="radar"&&a.calcRadarCoordSystem(t)}),this.radarMap.size&&(this.options.radar=[...this.radarMap.values()].map(a=>a.toOptions()));const e=[];return this.seriesGenerators.forEach(a=>{const s=e.length,i=a.calcByData(t);i instanceof Array?e.push(...i):e.push(i);const r=e.length-1;for(let n=s;n<=r;n++)this.seriesGeneratorIndexMap.set(n,a)}),this.options.series=e,this.seriesGenerators.length===1&&this.seriesGenerators[0].groupData&&Object.keys(this.seriesGenerators[0].groupData).length===1&&e[0].type&&["bar","line","scatter"].includes(e[0].type)&&this.staticOptions.legend&&(this.staticOptions.legend.show=!1),this.options=Ct(this.staticOptions,this.options),this.chartUserParam&&(this.options=Ct(this.options,this.chartUserParam)),this.options}getChartDataByParams(t){const e=this.seriesGeneratorIndexMap.get(t.seriesIndex);if(!e)throw new f("\u627E\u4E0D\u5230".concat(t.seriesIndex,"\u5E8F\u5217\u7684generator\uFF01"));return e.getChartDataByParams(t)}},Co=d("ChartService",class extends at{}),ec=d("ChartController",class extends tt{initState(){super.initState(),this.state.size=1e3}async onCreated(){await super.onCreated(),this.service=new Co(this.model),await this.service.init(this.context),this.generator=new go(this.model),await this.generator.init(this.context,this.params),window.addEventListener("resize",this.resizeChart)}async afterLoad(t,e){const a=await super.afterLoad(t,e);return e.forEach(s=>{Object.assign(s,{srfcount:1})}),this.calcOptions(),a}initChart(t){this.chart=t,this.chart.on("click",e=>{const a=this.generator.getChartDataByParams(e);console.log("\u6FC0\u6D3B\u6570\u636E",a),a&&this.setActive(a)})}calcOptions(t=this.state.items){this.options=this.generator.calcOptionsByData(t),this.updateChart()}updateChart(){if(!this.chart)throw new f("chart\u5BF9\u8C61\u6CA1\u6709\u6B63\u786E\u521D\u59CB\u5316");if(!this.options)throw new f("options\u8FD8\u6CA1\u8BA1\u7B97");this.chart.setOption(this.options),this.resizeChart()}resizeChart(){this.chart&&this.chart.resize()}async onDestroyed(){var t;window.removeEventListener("resize",this.resizeChart),await super.onDestroyed(),(t=this.chart)==null||t.dispose()}}),ac=d("CaptionBarController",class extends Y{initState(){super.initState(),this.view.model.capLanguageRes?this.state.caption=ibiz.i18n.t(this.view.model.capLanguageRes.lanResTag,this.view.model.caption):this.state.caption=this.view.model.caption}async onCreated(){await super.onCreated(),this.view.evt.on("onViewInfoChange",({caption:t,dataInfo:e})=>{this.state.caption="".concat(this.view.model.caption).concat(e?"-".concat(e):"")})}}),Do=class{constructor(t,e){this.deLogicParams=t,this.parameters=e,this.params={},this.result=null,this.isEndNode=!1,this.defaultParamName="Default"}get context(){return Object.prototype.hasOwnProperty.call(this.params,"context")?this.params.context:this.parameters.context}get data(){return this.parameters.data}get viewParam(){return Object.prototype.hasOwnProperty.call(this.params,"viewParam")?this.params.viewParam:this.parameters.params}resetParam(t){var e;(e=this.deLogicParams.get(t))==null||e.calc(this)}renewParam(t){var e;(e=this.deLogicParams.get(t))==null||e.renew(this)}setLastReturn(t){this.lastReturn=t}initLastReturnParam(t){Object.defineProperty(this.params,t,{enumerable:!0,configurable:!0,get:()=>this.lastReturn})}isEntityParam(t){const e=this.deLogicParams.get(t);return!!(e&&e.model.entityParam)}},Ws=class{};function st(t,e){const{srcDEUILogicParamId:a,srcFieldName:s,srcValue:i}=e,r=e.srcValueType||"SRCDLPARAM",n=s;let o;switch(r){case"SRCDLPARAM":o=t.params[a];break;case"NULLVALUE":return null;case"NONEVALUE":return;case"SRCVALUE":return ibiz.util.rawValue.format(i);case"WEBCONTEXT":case"VIEWPARAM":o=t.parameters.params;break;case"APPLICATION":case"SESSION":case"APPDATA":case"DATACONTEXT":o=t.parameters.context;break;case"ENVPARAM":o=A(ibiz.env);break;default:throw new D(e,"\u6682\u672A\u652F\u6301\u6E90\u503C\u7C7B\u578B".concat(r))}if(o&&n)try{Array.isArray(o)?o=o[Number(n)]:o=B.execScriptFn({srcValue:o},"srcValue.".concat(n),{singleRowReturn:!0,isAsync:!1})}catch(u){throw ibiz.log.error("\u4ECE\u6E90\u53C2\u6570\u53D6\u5C5E\u6027".concat(n,"\u62A5\u9519\uFF0C\u6E90\u53C2\u6570\uFF1A"),o),u}return o}var wo=class extends Ws{constructor(t){super(),this.model=t,this.srcParam=t.srcLogicParamId,this.dstParam=t.dstLogicParamId}get dstField(){return this.model.dstFieldName}get op(){return this.model.condOP}get type(){return this.model.paramType}get value(){return this.model.paramValue}test(t,e,a){const s=st(t,{srcDEUILogicParamId:this.dstParam,srcFieldName:this.dstField});switch(this.type){case"ENTITYFIELD":{if(!this.value)throw new m(this.model,"\u5F53\u524D\u6761\u4EF6\u503C\u7C7B\u578B\u4E3A[\u6570\u636E\u5BF9\u8C61\u5C5E\u6027],\u7F3A\u5C11\u914D\u7F6E\u6761\u4EF6\u503C");const i=a[this.value]!=null?a[this.value]:e[this.value];return $(s,this.op,i)}case"SRCENTITYFIELD":{if(!this.value)throw new m(this.model,"\u5F53\u524D\u6761\u4EF6\u503C\u7C7B\u578B\u4E3A[\u6E90\u6570\u636E\u5BF9\u8C61\u5C5E\u6027],\u7F3A\u5C11\u914D\u7F6E\u6761\u4EF6\u503C");const i=st(t,{srcDEUILogicParamId:this.srcParam,srcFieldName:this.value});return $(s,this.op,i)}case"CURTIME":throw new D(this.model,"\u6682\u672A\u652F\u6301\u6761\u4EF6\u503C\u7C7B\u578B\u4E3A[\u5F53\u524D\u65F6\u95F4]");default:return $(s,this.op,this.value)}}},vo=class ri extends Ws{constructor(e){super(),this.model=e;const a=e.deuilogicLinkConds||[];this.conds=a.map(s=>s.logicType==="SINGLE"?new wo(s):new ri(s))}get op(){return this.model.groupOP}get notMode(){return this.model.notMode===!0}test(e,a,s){let i=!0;if(this.conds.length===0)throw new m(this.model,"\u754C\u9762\u8FDE\u63A5\u6761\u4EF6\u903B\u8F91\u7EC4\u672A\u914D\u7F6E\u903B\u8F91\u9879");for(let r=0;r<this.conds.length;r++){const o=this.conds[r].test(e,a,s);if(this.op==="AND"&&o===!1){i=!1;break}if(this.op==="OR"&&o===!0){i=!0;break}}return this.notMode?!i:i}},Ao=class{constructor(t){this.model=t,this.srcNode=null,this.dstNode=null,this.groupCond=null;const{linkMode:e,deuilogicLinkGroupCond:a}=this.model;(e||0)===0&&a&&(this.groupCond=new vo(a))}async exec(t){const{linkMode:e}=this.model,{context:a,data:s}=t;switch(e||0){case 0:return this.groupCond?this.groupCond.test(t,a,s&&s.length>0?s[0]:{}):!0;case 1:return!0;case 2:throw new D(this.model,"\u672A\u652F\u6301\u7684\u903B\u8F91\u8FDE\u63A5\u7C7B\u578B: \u5F02\u6B65\u7ED3\u675F");case 3:throw new D(this.model,"\u672A\u652F\u6301\u7684\u903B\u8F91\u8FDE\u63A5\u7C7B\u578B: \u5F02\u6B65\u62D2\u7EDD");case 9:throw new D(this.model,"\u672A\u652F\u6301\u7684\u903B\u8F91\u8FDE\u63A5\u7C7B\u578B: \u5F02\u5E38\u5904\u7406");default:throw new D(this.model,"\u672A\u652F\u6301\u7684\u903B\u8F91\u8FDE\u63A5\u7C7B\u578B:".concat(e))}}},M=class{constructor(t){this.model=t,this.links=(t.deuilogicLinks||[]).map(e=>new Ao(e))}},Io=class extends M{async exec(t){const{dstAppDataEntityId:e,dstAppDEActionId:a,dstDEUILogicParamId:s,retDEUILogicParamId:i}=this.model;if(!e)throw new m(this.model,"\u672A\u6307\u5B9A\u5E94\u7528\u5B9E\u4F53");if(!a)throw new m(this.model,"\u672A\u6307\u5B9A\u5B9E\u4F53\u884C\u4E3A");const r=t.params[s],o=await ibiz.hub.getApp(t.context.srfappid).deService.exec(e,a,t.context,r,t.viewParam);o.ok&&(t.params[i]=o.data)}},yo=class extends M{async exec(t){const{dstAppDEUIActionId:e,dstDEUILogicParamId:a}=this.model,{data:s,parameters:i}=t;if(!e)throw new m(this.model,"\u672A\u914D\u7F6E\u754C\u9762\u884C\u4E3A");let r=[s];if(a){const n=t.params[a];n instanceof Array?r=n:r=[n]}await U.execAndResolved(e,{...i,context:t.context,params:t.viewParam,data:r})}},Fo=class extends M{async exec(t){}},Po=class extends M{async exec(t){t.isEndNode=!0;const{returnType:e,rawValue:a,returnParamId:s}=this.model;if(e)switch(e){case"NONEVALUE":t.result=void 0;break;case"NULLVALUE":t.result=null;break;case"SRCVALUE":t.result=ibiz.util.rawValue.format(a);break;case"LOGICPARAM":t.result=t.params[s];break;case"LOGICPARAMFIELD":case"BREAK":default:throw new D(this.model,"\u6682\u672A\u652F\u6301\u7684\u7ED3\u675F\u8282\u70B9\u8FD4\u56DE\u503C\u7C7B\u578B: ".concat(e))}}},bo=class extends M{async exec(t){const e=this.model.deuilogicNodeParams;if(e?.length)for(const a of e)switch(a.paramAction){case"SETPARAMVALUE":await this.setParamValue(a,t);break;case"RESETPARAM":await this.resetParam(a,t);break;case"COPYPARAM":await this.copyParam(a,t);break;case"BINDPARAM":await this.bindParam(a,t);break;case"RENEWPARAM":await this.renewParam(a,t);break;case"APPENDPARAM":await this.appendParam(a,t);break;case"SORTPARAM":await this.sortParam(a,t);break;default:throw new D(a,"\u6682\u672A\u652F\u6301\u903B\u8F91\u5904\u7406\u53C2\u6570\u64CD\u4F5C".concat(a.paramAction))}}setParamValue(t,e){const{dstFieldName:a,dstDEUILogicParamId:s}=t;if(!s)throw new f("\u6CA1\u6709\u76EE\u6807\u53C2\u6570\u5BF9\u8C61id");let i=a;e.isEntityParam(s)&&(i=i?.toLowerCase());const r=st(e,t);if(i)try{B.execScriptFn({srcVal:r,dstParam:e.params[s]},"dstParam.".concat(a," = srcVal"),{singleRowReturn:!1,isAsync:!1})}catch(n){throw ibiz.log.error("\u7ED9\u76EE\u6807\u53C2\u6570\u5C5E\u6027".concat(a,"\u8D4B\u503C\u62A5\u9519\uFF0C\u76EE\u6807\u53C2\u6570\uFF1A"),e.params[s]),n}else e.params[s]=r}copyParam(t,e){const{dstDEUILogicParamId:a}=t,s=st(e,t);e.params[a]=A(s)}bindParam(t,e){const a=st(e,t);e.params[t.dstDEUILogicParamId]=a}resetParam(t,e){const{dstDEUILogicParamId:a}=t;e.resetParam(a)}renewParam(t,e){const{dstDEUILogicParamId:a}=t;e.renewParam(a)}appendParam(t,e){const{dstDEUILogicParamId:a,dstIndex:s,srcIndex:i,srcSize:r}=t,n=st(e,t),o=s||0,u=i||0,c=r||n.length;e.params[a].splice(o,0,...n.slice(u,c))}sortParam(t,e){const{dstDEUILogicParamId:a,dstFieldName:s,dstSortDir:i}=t,r=s;e.params[a].sort((o,u)=>i==="ASC"?o[r]-u[r]:u[r]-o[r])}},No=class extends M{async exec(t){t.isEndNode=!0;const{invokeMethod:e,invokeCtrlId:a,invokeParamId:s}=this.model;if(!a)throw new m(this.model,"\u6CA1\u6709\u914D\u7F6E\u754C\u9762\u5BF9\u8C61");if(!s)throw new m(this.model,"\u6CA1\u6709\u914D\u7F6E\u64CD\u4F5C\u53C2\u6570");if(!e)throw new m(this.model,"\u6CA1\u6709\u914D\u7F6E\u8C03\u7528\u65B9\u6CD5");const i=t.params[s];if(!i)throw new f("\u6CA1\u6709\u627E\u5230\u64CD\u4F5C\u53C2\u6570".concat(s));const r=t.params[a];if(!r)throw new f("\u6CA1\u6709\u627E\u5230\u754C\u9762\u5BF9\u8C61".concat(a));if(!r[e]||!Pa(r[e]))throw new f("\u6CA1\u6709\u627E\u5230\u8C03\u7528\u65B9\u6CD5".concat(e));await r[e](i)}},So=class extends M{async exec(t){const{dstDEUILogicParamId:e,srcDEUILogicParamId:a}=this.model;if(!e||!a)throw new m(this.model,"\u7F3A\u5C11\u76EE\u6807\u53C2\u6570\u5BF9\u8C61\u6216\u8005\u6E90\u53C2\u6570\u5BF9\u8C61\u914D\u7F6E");const s=st(t,this.model);t.params[e]=s}},Ro=class extends M{constructor(){super(...arguments),this.typeMap={INFO:"info",QUESTION:"success",WARNING:"warning",ERROR:"error"}}async exec(t){const{msgBoxType:e,buttonsType:a,msgBoxParamId:s}=this.model;if(!e)throw new m(this.model,"\u7F3A\u5C11\u6D88\u606F\u7C7B\u578B\u7684\u914D\u7F6E");if(!a)throw new m(this.model,"\u7F3A\u5C11\u6309\u94AE\u7C7B\u578B\u7684\u914D\u7F6E");let{title:i}=this.model,{message:r}=this.model;if(s){const l=t.params[s];l.title&&(i=l.title),l.message&&(r=l.message)}const o={type:this.typeMap[e],title:i||"\u6D88\u606F",desc:r};let u=[];switch(a){case"YESNO":o.confirmButtonText="\u662F",o.cancelButtonText="\u5426",o.showConfirmButton=!0,o.showCancelButton=!0,u=["yes","no"];break;case"OK":o.confirmButtonText="\u786E\u5B9A",o.showConfirmButton=!0,o.showCancelButton=!1,u=["ok"];break;case"OKCANCEL":o.confirmButtonText="\u786E\u5B9A",o.cancelButtonText="\u53D6\u6D88",o.showConfirmButton=!0,o.showCancelButton=!0,u=["ok","cancel"];break;default:throw new D(this.model,"".concat(a,"\u6682\u672A\u652F\u6301"))}const c=await ibiz.modal.confirm(o);t.setLastReturn(u[c?0:1])}},Lo=class extends M{async exec(t){const e=await gs(this.model);e&&await e.exec(this.model,t)}},To=class extends M{async exec(t){const{dstDEUILogicParamId:e,name:a}=this.model;if(!e)throw new m(this.model,"\u7F3A\u5C11\u76EE\u6807\u53C2\u6570\u5BF9\u8C61\u914D\u7F6E");const s=t.params[e];console.log("\u903B\u8F91\u8282\u70B9".concat(a,"\u64CD\u4F5C\u53C2\u6570\u503C:"),s)}},Bo=class extends M{async exec(t){const{dstDEUILogicParamId:e}=this.model;if(!e)throw new m(this.model,"\u7F3A\u5C11\u76EE\u6807\u53C2\u6570\u5BF9\u8C61\u914D\u7F6E");t.resetParam(e)}},_o=class extends M{async exec(t){const{dstDEUILogicParamId:e,srcDEUILogicParamId:a}=this.model;if(!e||!a)throw new m(this.model,"\u7F3A\u5C11\u76EE\u6807\u53C2\u6570\u5BF9\u8C61\u6216\u8005\u6E90\u53C2\u6570\u5BF9\u8C61\u914D\u7F6E");const s=st(t,this.model);t.params[e]=A(s)}},Oo=class extends M{async exec(t){const{dstDEUILogicParamId:e,srcDEUILogicParamId:a,dstIndex:s,srcIndex:i,srcSize:r}=this.model;if(!e||!a)throw new m(this.model,"\u7F3A\u5C11\u76EE\u6807\u53C2\u6570\u5BF9\u8C61\u6216\u8005\u6E90\u53C2\u6570\u5BF9\u8C61\u914D\u7F6E");const n=st(t,this.model),o=s||0,u=i||0,c=r||n.length;t.params[e].splice(o,0,...n.slice(u,c))}},Mo=class extends M{async exec(t){const{dstDEUILogicParamId:e,dstSortDir:a,dstFieldName:s}=this.model;if(!e||!s)throw new m(this.model,"\u7F3A\u5C11\u76EE\u6807\u53C2\u6570\u5BF9\u8C61\u6216\u76EE\u6807\u5C5E\u6027\u914D\u7F6E");const i=s;t.params[e].sort((n,o)=>a==="ASC"?n[i]-o[i]:o[i]-n[i])}},xo=class extends M{async exec(t){const{dstDEUILogicParamId:e}=this.model;if(!e)throw new m(this.model,"\u7F3A\u5C11\u76EE\u6807\u53C2\u6570\u5BF9\u8C61\u914D\u7F6E");t.renewParam(e)}},Vo=class extends M{async exec(t){const{dstAppDEDataSetId:e,dstAppDataEntityId:a,dstDEUILogicParamId:s,retDEUILogicParamId:i}=this.model;if(!s)throw new m(this.model,"\u7F3A\u5C11\u914D\u7F6E\u8FC7\u6EE4\u53C2\u6570");const r=t.params[s],o=await ibiz.hub.getApp(t.context.srfappid).deService.exec(a,e,t.context,r);o.ok&&(t.params[i]=o.data)}},ko=class extends M{async exec(t){const{errorInfo:e}=this.model;throw new f(e)}},Wo=class extends M{async exec(t){t.isEndNode=!0;const{eventName:e,eventParamId:a,fireCtrlId:s}=this.model;if(!s)throw new m(this.model,"\u6CA1\u6709\u914D\u7F6E\u89E6\u53D1\u5BF9\u8C61");if(!e)throw new m(this.model,"\u6CA1\u6709\u914D\u7F6E\u4E8B\u4EF6\u540D\u79F0\u53C2\u6570");if(!a)throw new m(this.model,"\u6CA1\u6709\u914D\u7F6E\u4E8B\u4EF6\u53C2\u6570");const i=t.params[s];if(!i)throw new f("\u6CA1\u6709\u627E\u5230\u89E6\u53D1\u5BF9\u8C61".concat(s));const r=t.params[a];if(!r)throw new f("\u6CA1\u6709\u627E\u5230\u4E8B\u4EF6\u53C2\u6570\u5BF9\u8C61".concat(a));await i.evt.emit(e,r)}},Uo=class extends M{async exec(t){const{dstAppDELogicId:e,dstAppDataEntityId:a,dstDEUILogicParamId:s,retDEUILogicParamId:i}=this.model;if(!a)throw new m(this.model,"\u6CA1\u6709\u914D\u7F6E\u5B9E\u4F53");if(!e)throw new m(this.model,"\u6CA1\u6709\u914D\u7F6E\u5B9E\u4F53\u903B\u8F91");if(!s)throw new m(this.model,"\u6CA1\u6709\u914D\u7F6E\u4F20\u5165\u903B\u8F91\u53C2\u6570");const r=t.params[s];if(!r)throw new f("\u6CA1\u6709\u627E\u5230\u4F20\u5165\u53C2\u6570".concat(s));const n=await bs(e,a,t.context,r,t.params);i&&(t.params[i]=n)}},zo=class{constructor(t){this.model=t}calc(t){const e=this.model.id,a=this.model,{parameters:s}=t,{context:i,params:r,data:n}=s,o=ibiz.hub.getApp(i.srfappid);if(a.codeName==="layoutPanel"){t.params[e]=s.view.layoutPanel.panelItems;return}if(a.default)a.entityListParam?t.params[e]=n||[]:t.params[e]=n&&n.length>0?n[0]:{};else if(a.activeContainerParam)t.params[e]=s.ctrl||s.view;else if(a.activeCtrlParam)t.params[e]=s.ctrl;else if(a.ctrlParam){const u=s.view.getController(a.codeName.toLowerCase());u?t.params[e]=u:ibiz.log.error("\u89C6\u56FE\u903B\u8F91\u521D\u59CB\u5316\u53C2\u6570\uFF0C\u672A\u627E\u5230".concat(a.codeName,"\u6307\u5B9A\u90E8\u4EF6\u5BF9\u8C61"))}else if(a.activeViewParam)t.params[e]=s.view;else if(a.appGlobalParam)t.params[e]=ibiz.env;else if(a.applicationParam)t.params[e]=o;else if(a.entityListParam)t.params[e]=[];else{if(a.entityPageParam)throw new D(a,"\u672A\u652F\u6301\u7684\u903B\u8F91\u53C2\u6570\u7C7B\u578B: \u5206\u9875\u67E5\u8BE2\u7ED3\u679C");if(a.entityParam)t.params[e]={};else if(a.lastReturnParam)t.initLastReturnParam(e);else if(a.navContextParam)t.params[e]=i;else{if(a.navViewParamParam)throw new D(a,"\u672A\u652F\u6301\u7684\u903B\u8F91\u53C2\u6570\u7C7B\u578B: \u89C6\u56FE\u8DEF\u7531\u53C2\u6570");if(a.routeViewSessionParam)throw new D(a,"\u672A\u652F\u6301\u7684\u903B\u8F91\u53C2\u6570\u7C7B\u578B: \u8DEF\u7531\u89C6\u56FE\u4F1A\u8BDD");if(a.simpleListParam)t.params[e]=[];else if(a.simpleParam)t.params[e]={};else if(a.viewNavDataParam)t.params[e]=r;else if(a.viewSessionParam)throw new D(a,"\u672A\u652F\u6301\u7684\u903B\u8F91\u53C2\u6570\u7C7B\u578B: \u5F53\u524D\u89C6\u56FE\u4F1A\u8BDD")}}}renew(t){const e=this.model.id,a=this.model;if(a.entityListParam||a.simpleListParam||a.entityPageParam)t.params[e]=[];else if(a.simpleParam||a.entityParam)t.params[e]={};else throw new D(a,"\u672A\u652F\u6301\u7684\u903B\u8F91\u53C2\u6570\u7C7B\u578B\u91CD\u65B0\u5EFA\u7ACB\u53D8\u91CF")}},Go=class{constructor(t){this.model=t,this.nodes=new Map,this.params=new Map;var e;if(!((e=t.deuilogicNodes)!=null&&e.length))throw new m(t,"\u754C\u9762\u903B\u8F91\u6CA1\u6709\u914D\u7F6E\u903B\u8F91\u8282\u70B9");t.deuilogicNodes.forEach(a=>{const{logicNodeType:s}=a;let i;switch(s){case"BEGIN":i=new Fo(a);break;case"END":i=new Po(a);break;case"DEACTION":i=new Io(a);break;case"DEUIACTION":i=new yo(a);break;case"PREPAREJSPARAM":i=new bo(a);break;case"RESETPARAM":i=new Bo(a);break;case"COPYPARAM":i=new _o(a);break;case"BINDPARAM":i=new So(a);break;case"VIEWCTRLINVOKE":i=new No(a);break;case"MSGBOX":i=new Ro(a);break;case"DEBUGPARAM":i=new To(a);break;case"APPENDPARAM":i=new Oo(a);break;case"SORTPARAM":i=new Mo(a);break;case"RENEWPARAM":i=new xo(a);break;case"DEDATASET":i=new Vo(a);break;case"THROWEXCEPTION":i=new ko(a);break;case"VIEWCTRLFIREEVENT":i=new Wo(a);break;case"DELOGIC":i=new Uo(a);break;case"PFPLUGIN":i=new Lo(a);break;default:throw new D(a,"\u672A\u652F\u6301\u7684\u903B\u8F91\u8282\u70B9\u7C7B\u578B: ".concat(s))}this.nodes.set(a.id,i)}),t.deuilogicParams.forEach(a=>{this.params.set(a.id,new zo(a))}),this.nodes.forEach(a=>{a.links.forEach(s=>{s.srcNode=a,this.nodes.has(s.model.dstDEUILogicNodeId)&&(s.dstNode=this.nodes.get(s.model.dstDEUILogicNodeId))})})}initLogicParams(t){this.params.forEach(e=>{e.model.default&&(t.defaultParamName=e.model.id),e.calc(t)})}async exec(t){const e=new Do(this.params,t);this.initLogicParams(e);const{startDEUILogicNodeId:a}=this.model;if(a&&this.nodes.has(a)){const s=this.nodes.get(a);await this.deepExec(s,e)}else throw new m(this.model,"\u672A\u8BBE\u7F6E\u8D77\u59CB\u8282\u70B9");return e.isEndNode?e.result:e.params[e.defaultParamName]?e.params[e.defaultParamName]:null}async deepExec(t,e){await t.exec(e);const{links:a}=t;for(let s=0;s<a.length;s++){const i=a[s];if(await i.exec(e)&&i.dstNode&&(await this.deepExec(i.dstNode,e),t.model.parallelOutput===!1))break}}},Je=new Map;async function ie(t,e,a){const i=await ibiz.hub.getApp(a.context.srfappid).getDEUILogic(t,e);if(!i)throw new f("\u627E\u4E0D\u5230\u5B9E\u4F53".concat(e,"\u7684\u754C\u9762\u903B\u8F91").concat(t));return Je.has(i)||Je.set(i,new Go(i)),await Je.get(i).exec(a),null}var U=d("UIActionUtil",class{static async exec(t,e){const a=await zt(t);if(!a)throw new f("\u6CA1\u627E\u5230".concat(t,"\u7684\u754C\u9762\u884C\u4E3A\u6A21\u578B"));return a.actionTarget==="SINGLEDATA"&&await e.view.call("Validate")===!1?{cancel:!0}:(await ms(a)).exec(a,e)}static async execAndResolved(t,e){var a,s;const i=await this.exec(t,e);if(i.closeView)e.view.modal.ignoreDismissCheck=!0,e.view.closeView({ok:!0});else if(i.refresh)switch(i.refreshMode){case 1:e.view.callUIAction("Refresh");break;case 2:(a=e.view.parentView)==null||a.callUIAction("Refresh");break;case 3:(s=e.view.getTopView())==null||s.callUIAction("Refresh");break}}}),re=class{async exec(t,e){const{context:a,params:s,data:i}=e,r={refresh:t.reloadData,refreshMode:t.refreshMode,closeView:t.closeEditView},{appDEUILogicId:n,appDataEntityId:o,uilogicAttachMode:u}=t;if(u==="REPLACE"){if(!n)throw new m(t,"\u6CA1\u6709\u914D\u7F6E\u5B9E\u4F53\u754C\u9762\u903B\u8F91");return await ie(n,o,e),r}if(!await this.isConfirm(t,e))return this.returnError(r);const c=await this.execAction(t,e);if(Object.assign(r,c),r.cancel===!0)return this.returnError(r);const l={...e,context:r.nextContext||a,data:r.data||i,params:r.nextParams||s};if(t.closeEditView)this.doNextAction(t,l);else{const h=await this.doNextAction(t,l);if(h&&(Object.assign(r,h),h.cancel===!0))return this.returnError(r)}if(t.uilogicAttachMode==="AFTER"){if(!n)throw new m(t,"\u6CA1\u6709\u914D\u7F6E\u5B9E\u4F53\u754C\u9762\u903B\u8F91");await ie(n,o,e)}return r}returnError(t){return Object.assign(t,{refresh:!1,closeView:!1})}async isConfirm(t,e){const a=this.calcMessage("confirm",t,e);return t.enableConfirm&&a?ibiz.confirm.warning({title:"\u64CD\u4F5C\u786E\u8BA4",desc:a}):!0}async doNextAction(t,e){const a=t.nextId;if(a)return U.exec(a,e)}async handleParams(t,e,a,s){let i=[];const r=O(t.appDataEntityId),o=(await ibiz.hub.getAppDataEntity(t.appDataEntityId,e.srfappid)).keyAppDEFieldId;switch(t.actionTarget){case"NONE":i=[];break;case"SINGLEDATA":i=[a[0]];break;case"MULTIDATA":i=a;break;case"MULTIKEY":i=r&&a.length>0?a.map(C=>({[o]:C.srfkey||C[o]})):[{}];break;case"SINGLEKEY":{const C=a[0]||{};i=r?[{[o]:C.srfkey||C[o]}]:[{}]}break}const u=e.clone(),c=[...t.navigateContexts||[]];if(r&&t.actionTarget!=="NONE"){const{valueItem:C,paramItem:F}=t,v=F||r,P=C||"srfkey";c.unshift({key:v,value:P,rawValue:!1})}const l=["MULTIKEY","MULTIDATA"].includes(t.actionTarget)&&a.length>0,h=y(c,l?Pe(c,a):a[0]||{},s,e);Object.assign(u,h);const p=t.navigateParams,E=y(p,l?Pe(p,a):a[0]||{},s,u);return{resultContext:u,resultData:i,resultParams:E}}calcMessage(t,e,a){let s,i;const{confirmMsg:r,cmlanguageRes:n,successMsg:o,smlanguageRes:u}=e;switch(t){case"confirm":s=r,i=n;break;case"success":s=o,i=u;break}if(i){const c=ibiz.i18n.t(i.lanResTag,i.defaultContent||s);c!==i.lanResTag&&(s=c)}if(s){const{data:c}=a,l={...a};return c.length===1?[l.data]=c:c.length===0&&delete l.data,B.execScriptFn(l,"`".concat(s,"`"),{isAsync:!1,singleRowReturn:!0})}}},jo=d("BackendUIActionProvider",class extends re{async execAction(t,e){const{context:a,params:s,data:i,event:r}=e,n={},o=t.appDataEntityId,u=t.appDEMethodId;if(!o||!u)throw new m(t,"\u672A\u914D\u7F6E\u5B9E\u4F53\u6216\u5B9E\u4F53\u884C\u4E3A");const{resultContext:c,resultParams:l,resultData:h}=await this.handleParams(t,a,i,s),p={...l},E=t.frontAppViewId;if(E){const b=await ibiz.commands.execute(Z.TAG,E,c,l,{event:r});if(!b?.ok)return n.cancel=!0,n;if(b?.ok&&b.data){h.length===0&&h.push({});const I=b.data.map(R=>{var z;return((z=R.getOrigin)==null?void 0:z.call(R))||R||{}});h.forEach(R=>{R.srfactionparam=I})}}const C=ibiz.hub.getApp(a?.srfappid),F=h.map(b=>{var I;return((I=b.getOrigin)==null?void 0:I.call(b))||b||{}}).map(b=>Object.assign(b,p)),v=["MULTIKEY","MULTIDATA"].includes(t.actionTarget),P=await C.deService.exec(o,u,c,v?F:F[0],p);if(P.ok){const b=this.calcMessage("success",t,e);b&&ibiz.message.success(b)}return Object.assign(n,{data:kt(P.data)?P.data:[P.data],nextContext:c,nextParams:p}),n}}),Ko=d("SysUIActionProvider",class extends re{constructor(){super(...arguments),this.predefinedActionMap=new Map([["EDITVIEW_EXITACTION","Exit"],["EDITVIEW_SAVEANDEXITACTION","SaveAndExit"],["TREEVIEW_REFRESHPARENTACTION","RefreshParent"],["GRIDVIEW_EXPORTXMLACTION","ExportModel"],["GRIDVIEW_EXPORTACTION","ExportExcel"],["EDITVIEW_REMOVEANDEXITACTION","RemoveAndExit"],["GRIDVIEW_PRINTACTION","Print"],["EDITVIEW_NEXTRECORDACTION","NextRecord"],["GRIDVIEW_NEWROWACTION","NewRow"],["EDITVIEW_LASTRECORDACTION","LastRecord"],["EDITVIEW_PREVRECORDACTION","PrevRecord"],["GRIDVIEW_SEARCHBAR","ToggleFilter"],["EDITVIEW_SAVEANDSTARTWFACTION","SaveAndStart"],["EDITVIEW_NEWACTION","New"],["EDITVIEW_PRINTACTION","Print"],["EDITVIEW_COPYACTION","Copy"],["EDITVIEW_HELPACTION","Help"],["EDITVIEW_FIRSTRECORDACTION","FirstRecord"],["GRIDVIEW_REFRESHACTION","Refresh"],["EDITVIEW_SAVEANDNEWACTION","SaveAndNew"],["EDITVIEW_VIEWWFSTEPACTORACTION","ViewWFStep"],["EDITVIEW_SAVEACTION","Save"],["TREEVIEW_REFRESHALLACTION","RefreshAll"],["GRIDVIEW_IMPORTBAR","Import"],["GRIDVIEW_ROWEDITACTION","ToggleRowEdit"],["GRIDVIEW_NEWACTION","New"],["GRIDVIEW_EDITACTION","Edit"],["GRIDVIEW_HELPACTION","Help"],["EDITVIEW_REFRESHACTION","Refresh"],["GRIDVIEW_REMOVEACTION","Remove"],["GRIDVIEW_COPYACTION","Copy"],["GRIDVIEW_VIEWACTION","View"],["GRIDVIEW_SAVEROWACTION","SaveRow"],["APP_LOGIN","Login"],["APP_LOGOUT","logout"],["UTIL_RESET","Reset"],["UTIL_SEARCH","Search"]])}async execAction(t,e){const{view:a}=e,s=this.predefinedActionMap.get(t.predefinedType)||t.uiactionTag;return s==="Exit"?{closeView:!0}:await a.callUIAction(s,e)||{}}}),Xo=d("FrontUIActionProvider",class extends re{async execAction(t,e){const{context:a,params:s,data:i,event:r,noWaitRoute:n}=e;let o={};switch(t.frontProcessType){case"OPENHTMLPAGE":{const u=ha.fill(t.htmlPageUrl,a,i?.[0]);window.open(u,"_blank");break}case"TOP":case"WIZARD":{const u=t.frontAppViewId;if(!u)throw new m(t,"\u672A\u914D\u7F6E\u6253\u5F00\u89C6\u56FE");const{resultContext:c,resultParams:l}=await this.handleParams(t,a,i,s),h=await ibiz.commands.execute(Z.TAG,u,c,l,{event:r,noWaitRoute:n});h?.ok||(o.cancel=!0),h?.ok&&h.data&&(o.data=h.data,o.nextContext=c,o.nextParams={...s,...l});break}case"PRINT":await this.executePrint(t,e);break;case"DATAIMP":o=await this.executeDataImport(t,e);break;case"DATAEXP":await this.executeDataExport(t,e);break;case"OTHER":o=this.doOther(t,e);break;default:throw new D(t,"\u672A\u652F\u6301\u7684\u524D\u53F0\u5904\u7406\u6A21\u5F0F[".concat(t.frontProcessType,"]"))}return o}doOther(t,e){const{scriptCode:a}=t,{context:s,params:i,data:r,event:n}=e;if(a)return B.execScriptFn({context:s,params:i,data:r,el:n?.target},a)||{};throw new m(t,"\u81EA\u5B9A\u4E49\u7C7B\u578B\u7F3A\u5C11\u914D\u7F6E\u811A\u672C\u4EE3\u7801")}async executePrint(t,e){var a,s;const i=await ibiz.hub.getAppDataEntity(t.appDataEntityId),r=(a=i.appDEPrints)==null?void 0:a.find(n=>n.id===t.appDEPrintId);if(r){let n="";const{context:o}=e;if(o&&o[i.codeName.toLowerCase()])n+="/".concat((s=i.codeName2)==null?void 0:s.toLowerCase(),"/printdata/").concat(o[i.codeName.toLowerCase()],"?srfprinttag=").concat(r.codeName);else throw new f("\u6CA1\u6709\u627E\u5230\u6570\u636E\u4E3B\u952E");const u=await ibiz.net.request(n,{method:"get",responseType:"blob"});if(u.ok){const c=window.URL.createObjectURL(u.data);window.open(c,"_blank")}else throw new f("\u6253\u5370\u5931\u8D25")}else throw new f("\u6CA1\u6709\u627E\u5230\u5B9E\u4F53\u6253\u5370\u9879")}async executeDataImport(t,e){var a;const s=await ibiz.hub.getAppDataEntity(t.appDataEntityId),i=(a=s.appDEDataImports)==null?void 0:a.find(r=>r.id===t.appDEDataImportId);if(i){const r=ibiz.overlay.createModal("DataImport",{dismiss:()=>r.dismiss(),appDataEntity:s,dataImport:i},{width:"auto",placement:"center"});return r.present(),await r.onWillDismiss(),{refresh:!0,refreshMode:1}}throw new f("\u6CA1\u6709\u627E\u5230\u5B9E\u4F53\u5BFC\u5165\u9879")}async executeDataExport(t,e){var a,s;const i=await ibiz.hub.getAppDataEntity(t.appDataEntityId),r=(a=i.appDEDataExports)==null?void 0:a.find(n=>n.id===t.appDEDataExportId);if(r){const n="/".concat((s=i.codeName2)==null?void 0:s.toLowerCase(),"/exportdata/fetchdefault?srfexporttag=").concat(r.codeName),o={page:0,size:r.maxRowCount?r.maxRowCount:1e3,responseType:"blob"},u=await ibiz.net.request(n,{method:"post",data:o,responseType:"blob"});if(u.status===200){let c="".concat(i.logicName,"\u8868.xlsx");c=decodeURIComponent(c);const l=new Blob([u.data],{type:"application/vnd.ms-excel"}),h=document.createElement("a");h.download=c,h.style.display="none",h.href=URL.createObjectURL(l),document.body.appendChild(h),h.click(),URL.revokeObjectURL(h.href),document.body.removeChild(h)}else throw new f("\u5BFC\u51FA\u8BF7\u6C42\u5931\u8D25")}else throw new f("\u6CA1\u6709\u627E\u5230\u5B9E\u4F53\u5BFC\u51FA\u9879")}}),Ho=d("WFWithdrawUIActionProvider",class extends re{async execAction(t,e){const{view:a}=e,s=await ibiz.modal.confirm({title:"\u63D0\u793A",desc:"\u662F\u5426\u786E\u8BA4\u6267\u884C\u64A4\u56DE\u64CD\u4F5C\uFF1F"});let i=!1;return s&&a&&(await a.call("WFWithdraw",e),i=!0),{refresh:!1,closeView:i}}});function Us(){const t=new Xo;St("FRONT",()=>t);const e=new jo;St("BACKEND",()=>e);const a=new Ko;St("SYS",()=>a);const s=new Ho;St("DEUIACTION_WFWithdraw",()=>s)}var Yo=d("ToolbarController",class extends Y{get _evt(){return this.evt}initState(){super.initState(),this.state.buttonsState=new ft,this.state.viewMode="EMBED",this.state.extraButtons={}}async doUIAction(t,e,a={}){if(t.itemType==="DEUIACTION"){const s=t.uiactionId,i=await zt(s);if(!i)throw new f("\u6CA1\u6709\u627E\u5230\u754C\u9762\u884C\u4E3A\u6A21\u578B".concat(s));const r=["SYS","BACKEND","WFBACKEND"].includes(i.uiactionMode)&&i.showBusyIndicator!==!1;r&&this.state.buttonsState.setLoading(t.id);try{const o=await this.ctx.view.call("GetData")||[],u=this.getEventArgs();u.params=Object.assign(a,u.params),await U.execAndResolved(s,{...u,data:o,event:e})}finally{r&&this.state.buttonsState.setLoading("")}}}async onCreated(){await super.onCreated(),this.state.viewMode=this.ctx.view.modal.mode,k(this.model,t=>{if(t.itemType==="DEUIACTION"){const e=t,a=new pt(e.id,this.context.srfappid,e.uiactionId);this.state.buttonsState.addState(e.id,a)}},{childrenFields:["detoolbarItems"]}),await this.calcButtonState()}async onItemClick(t,e,a){const s=t.buttonType==="extra";await this._evt.emit("onClick",{event:e,eventArg:t.id,buttonType:s?"extra":"deuiaction"}),s||await this.doUIAction(t,e,a)}async calcButtonState(t,e){let a=t;if(t&&t instanceof G&&(a=t.getOrigin()),await this.state.buttonsState.update(a,e),this.scheduler){const s={};a&&(s.data=[a]),k(this.model,i=>{const r=this.state.buttonsState[i.id];if(r.visible){const n=this.scheduler.triggerItemVisible(i.id,s);n!==void 0&&(r.visible=n)}if(!r.disabled){const n=this.scheduler.triggerItemEnable(i.id,s);n!==void 0&&(r.disabled=!n)}},{childrenFields:["detoolbarItems"]})}}setExtraButtons(t,e){this.state.extraButtons[t]||(this.state.extraButtons[t]=[]),this.state.extraButtons[t].push(...e)}clearExtraButtons(t){t===void 0?this.state.extraButtons={}:this.state.extraButtons[t]=[]}initControlScheduler(t=[]){const e=[...t];k(this.model,a=>{a.controlLogics&&e.push(...a.controlLogics)},{childrenFields:["detoolbarItems"]}),super.initControlScheduler(e)}}),qo=d("ContextMenuController",class extends Yo{}),sc=d("DashboardController",class extends Y{constructor(){super(...arguments),this.providers={},this.portlets={}}initState(){super.initState()}async onCreated(){await super.onCreated(),await this.initPortlets(this.model.controls);const{appDataEntityId:t}=this.view.model;t&&this.view.evt.on("onDataChange",e=>{const a=Ms(e.data);a&&this.dataChangeNotify(a)})}async initPortlets(t,e){if(!t?.length)return;const a=["CHART","APPMENU","TOOLBAR","LIST"];await Promise.all(t.map(async s=>{var i;if(s.controlType&&a.includes(s.controlType))return;const r=await hs(s);if(r){this.providers[s.id]=r;const n=await r.createController(s,this,e);this.portlets[s.id]=n,(i=s.controls)!=null&&i.length&&await this.initPortlets(s.controls,n)}}))}async dataChangeNotify(t){await nt(Object.values(this.portlets).map(async e=>e.dataChangeNotify(t)))}}),ic=d("CustomDashboardController",class{constructor(t){this.customModelData=[],this.layoutColNum=12,this.layoutRowH=80,this.model=null;var e,a;this.model=t,this.config=new $t(t.appId,"dynadashboard","dashboard_".concat(((e=this.model.appDataEntityId)==null?void 0:e.toLowerCase())||"app","_").concat((a=this.model.codeName)==null?void 0:a.toLowerCase()))}async loadCustomModelData(){const t=await this.config.load();return t.model&&(this.customModelData=t.model),t.colNum&&(this.layoutColNum=t.colNum),t.rowH&&(this.layoutRowH=t.rowH),this.customModelData}async saveCustomModelData(t){return await this.config.save({model:t,colNum:this.layoutColNum,rowH:this.layoutRowH})&&(this.customModelData=t),t}}),Qo=d("PortletPartState",class{constructor(){this.visible=!0,this.keepAlive=!1,this.layout={width:"",height:"",extraStyle:{},extraClass:[],contentStyle:{}},this.class={container:[],containerDyna:[]},this.actionGroupState=null}}),ut=d("PortletPartController",class{get context(){return this.dashboard.context}get params(){return this.dashboard.params}get containerClass(){return[...this.state.class.container,...this.state.class.containerDyna]}constructor(t,e,a){this.model=t,this.dashboard=e,this.parent=a,this.state=this.createState()}async init(){await this.onInit()}async onInit(){this.onDataChange=this.onDataChange.bind(this);const{layoutPos:t,sysCss:e}=this.model;if(t){const{width:a,height:s}=Ut(this.model);this.state.layout.width="".concat(a),this.state.layout.height="".concat(s)}e?.cssName&&this.state.class.container.push(e.cssName),await this.initActionStates()}createState(){return new Qo}onDataChange(t){let e=t.data[0];e&&e instanceof G&&(e=e.getOrigin()),e&&this.state.actionGroupState.update(e,this.dashboard.view.model.appDataEntityId)}async initActionStates(){var t;const{uiactionGroup:e}=this.model;if(!((t=e?.uiactionGroupDetails)!=null&&t.length))return;const a=new ft;e.uiactionGroupDetails.forEach(i=>{const r=i.uiactionId;if(r){const n=new pt(i.id,this.dashboard.context.srfappid,r);a.addState(i.id,n)}}),await a.update(),this.state.actionGroupState=a;const{appDataEntityId:s}=this.dashboard.view.model;s&&this.dashboard.view.evt.on("onDataChange",this.onDataChange)}async onActionClick(t,e,a=[]){const s=t.uiactionId;await U.execAndResolved(s,{context:this.dashboard.context,params:this.dashboard.params,data:a,view:this.dashboard.view,event:e})}async dataChangeNotify(t){if(this.state.actionGroupState){const{appDataEntityId:e}=this.dashboard.view.model;this.state.actionGroupState.update(t,e)}this.calcDynaClass(t)}calcDynaClass(t){if(this.model.dynaClass){const e=Dt(this.model.dynaClass,t);e.length&&(this.state.class.containerDyna=e)}}async destroyed(){ibiz.log.debug("".concat(this.model.codeName," onDestroyed")),this.dashboard.view.evt.off("onDataChange",this.onDataChange)}}),rc=d("ContainerPortletController",class extends ut{}),nc=d("ViewPortletController",class extends ut{}),oc=d("MenuPortletController",class extends ut{}),uc=d("ChartPortletController",class extends ut{}),cc=d("ActionBarPortletController",class extends ut{}),lc=d("HtmlPortletController",class extends ut{}),dc=d("ListPortletController",class extends ut{}),hc=d("RawItemPortletController",class extends ut{}),zs=d("DataViewControlService",class extends at{initUIDataMap(){var t;super.initUIDataMap(),(t=this.model.dedataViewDataItems)==null||t.forEach(e=>{const a=e.id.toLowerCase(),s=e.appDEFieldId;let i;if(s){const r=s.toLowerCase();i=new H(a,r,{isOriginField:!0,dataType:e.dataType})}else i=new H(a,a);this.dataUIMap.set(a,i)})}}),$o=d("DataViewControlController",class extends tt{get enableNew(){return this.model.enableCardNew===!0}initState(){super.initState(),this.state.noSort=this.model.noSort===!0,this.state.size=this.model.pagingSize||20,this.state.singleSelect=this.model.singleSelect===!0,this.state.sortItems=[]}async onCreated(){await super.onCreated(),await this.initControlService(),this.initSortItems()}async initControlService(){this.service=new zs(this.model),await this.service.init(this.context)}async initGroupActionStates(){var t;const{groupUIActionGroup:e}=this.model;(t=e?.uiactionGroupDetails)!=null&&t.length&&this.state.groups.forEach(async a=>{const s=new ft;e.uiactionGroupDetails.forEach(i=>{const r=i.uiactionId;if(r){const n=new pt(i.id,this.context.srfappid,r);s.addState(i.id,n)}}),await s.update(),a.groupActionGroupState=s})}async onRowClick(t){var e;super.onRowClick(t);const{groupAppDEFieldId:a}=this.model;if(a)if(this.state.groups.forEach(s=>{s.selectedData=[]}),this.state.selectedData.forEach(s=>{const i=s[a],r=this.state.groups.find(n=>n.key===i);r&&r.selectedData.push(s)}),this.state.singleSelect)this.state.groups.forEach(s=>{var i,r;let n=t;s.selectedData.indexOf(n)!==-1?(n&&n instanceof G&&(n=n.getOrigin()),n&&((i=s.groupActionGroupState)==null||i.update(n,this.model.appDataEntityId))):(r=s.groupActionGroupState)==null||r.update(void 0,this.model.appDataEntityId)});else{const s=this.state.groups.find(i=>i.children.indexOf(t)!==-1);s&&((e=s.groupActionGroupState)==null||e.update(s.selectedData[0],this.model.appDataEntityId))}}async loadMore(){this.state.total>this.state.items.length&&await this.load({isLoadMore:!0})}async afterLoad(t,e){return await this.initGroupCodeListItems(),await this.handleDataGroup(),await this.initGroupActionStates(),e}getOptItemModel(){let t=null;const{dedataViewItems:e}=this.model;if(e)for(let a=0;a<e.length;a++)e[a].itemType==="ACTIONITEM"&&(t=e[a]);return t}getOptItemAction(t){var e;const a=new ft,s=this.getOptItemModel();if(s){if(!s.deuiactionGroup)throw new m(this.model,"\u64CD\u4F5C\u9879\u6CA1\u6709\u914D\u7F6E\u754C\u9762\u884C\u4E3A\u7EC4");if(!((e=s.deuiactionGroup.uiactionGroupDetails)!=null&&e.length))return ibiz.log.debug("\u64CD\u4F5C\u9879\u754C\u9762\u884C\u4E3A\u7EC4\u6CA1\u6709\u914D\u7F6E\u754C\u9762\u884C\u4E3A"),a;s.deuiactionGroup.uiactionGroupDetails.forEach(i=>{const r=i.uiactionId;if(r){const n=new pt(i.id,this.context.srfappid,r);a.addState(i.id,n)}}),a.update(t.getOrigin())}return a}async onActionClick(t,e,a){const s=t.uiactionId;await U.execAndResolved(s,{context:this.context,params:this.params,data:[e],view:this.view,event:a})}async handleDataGroup(){const{enableGroup:t,groupMode:e,groupAppDEFieldId:a}=this.model;if(t&&e){if(!a)throw new m(this.model,"\u5206\u7EC4\u5C5E\u6027\u6CA1\u6709\u914D\u7F6E");e==="AUTO"?this.handleAutoGroup():e==="CODELIST"&&await this.handleCodeListGroup()}}handleAutoGroup(){const{groupAppDEFieldId:t}=this.model;if(t){const{items:e}=this.state,a=new Map;e.forEach(i=>{const r=i[t];w(r)||(a.has(r)||a.set(r,[]),a.get(r).push(i))});const s=[];a.forEach((i,r)=>{s.push({caption:r,key:r,children:[...i]})}),this.state.groups=s}}async initGroupCodeListItems(){const{groupCodeListId:t}=this.model;if(!t)return;const e=ibiz.hub.getApp(this.context.srfappid);this.groupCodeListItems=await e.codeList.get(t,this.context,this.params)}async handleCodeListGroup(){const{groupAppDEFieldId:t,groupCodeListId:e}=this.model;if(!e)throw new m(this.model,"\u5206\u7EC4\u4EE3\u7801\u8868\u6CA1\u6709\u914D\u7F6E");const{items:a}=this.state,s=new Map;this.groupCodeListItems.forEach(r=>{s.set(r.value,[])}),a.forEach(r=>{const n=r[t],o=s.get(n);o&&o.push(r)});const i=[];s.forEach((r,n)=>{const o=this.groupCodeListItems.find(u=>u.value===n);i.push({caption:o.text,key:o.value,children:r})}),this.state.groups=i}setSort(t,e){if(t&&e)super.setSort(t,e);else{const{minorSortAppDEFieldId:a,minorSortDir:s}=this.model;if(a&&s){const i=this.fieldIdNameMap.get(a);this.state.sortQuery="".concat(i.toLowerCase(),",").concat(s.toLowerCase())}else this.state.sortQuery=""}}onClickNew(t,e){const a={...this.params,srfgroup:e};U.execAndResolved("new",{context:this.context,params:a,data:[],view:this.view,event:t})}async onGroupToolbarClick(t,e,a){const s=t.uiactionId,i={...this.params,srfgroup:a.key};await U.execAndResolved(s,{context:this.context,params:i,data:a.selectedData||[],view:this.view,event:e})}initSortItems(){var t;if(!((t=this.model.dedataViewItems)!=null&&t.length))return;const e=[],{minorSortAppDEFieldId:a,minorSortDir:s}=this.model,i=a&&s;this.model.dedataViewItems.forEach(r=>{if(!r.enableSort)return;let{caption:n}=r;if(r.capLanguageRes&&(n=ibiz.i18n.t(r.capLanguageRes.lanResTag,r.caption)),!r.appDEFieldId)throw new m(r,"\u542F\u7528\u6392\u5E8F\u7684\u9879\u5FC5\u987B\u5173\u8054\u5B9E\u4F53\u5C5E\u6027");const o={caption:n,key:r.appDEFieldId};i&&a===r.appDEFieldId&&(o.order=s.toLowerCase()),e.push(o)}),e.length>0&&(this.state.sortItems=e)}}),Ze=d("ExpBarControlController",class extends Y{constructor(){super(...arguments),this.navKeyName="srfkey"}get _evt(){return this.evt}get routeDepth(){return this.view.modal.routeDepth}initState(){super.initState(),this.state.query=""}load(){return this.xDataController.load({isInitialLoad:!0})}get xDataController(){const t=this.view.getController(this.model.xdataControlName);if(!t)throw new m(this.model,"\u65E0\u6CD5\u83B7\u53D6\u591A\u6570\u636E\u90E8\u4EF6[".concat(this.model.xdataControlName,"]\u63A7\u5236\u5668"));return t}get toolbarController(){return this.view.getController("".concat(this.model.xdataControlName.split("_")[0],"_toolbar"))}get XDataModel(){var t;return(t=this.model.controls)==null?void 0:t.find(a=>a.name===this.model.xdataControlName)}get isCache(){return this.controlParams.expcache==="CACHE"?!0:this.controlParams.expcache==="NO_CACHE"?!1:ibiz.config.view.expCacheMode.includes(this.model.controlType)}async onCreated(){var t;await super.onCreated(),this.childNames.push(this.model.xdataControlName);const e=await ibiz.hub.getAppDataEntity(this.model.appDataEntityId,this.context.srfappid);if(e){const a=(t=e.appDEFields)==null?void 0:t.filter(i=>i.enableQuickSearch),s=[];a?.forEach(i=>{i?.lnlanguageRes&&i.lnlanguageRes.lanResTag?s.push(ibiz.i18n.t(i.lnlanguageRes.lanResTag,i.logicName)):i?.logicName&&s.push(i.logicName)}),s.length>0&&(this.state.placeHolder=s.join("\u3001"))}}async onMounted(){super.onMounted(),this.xDataController&&(this.xDataController.evt.on("onActive",t=>{this.xDataActive(t)}),this.xDataController.evt.on("onLoadSuccess",t=>{this.xDataLoadSuccess(t)}),this.xDataController.evt.on("onRemoveSuccess",()=>{this.navByFirstItem()})),this.toolbarController&&this.xDataController.evt.on("onSelectionChange",async t=>{this.toolbarController.calcButtonState(t.data[0],this.model.appDataEntityId)}),this.state.loadDefault&&this.load()}xDataLoadSuccess(t){t.isInitialLoad&&(this.state.srfnav&&this.routeDepth?this.navBySrfnav():this.navByFirstItem())}navBySrfnav(){var t;const e=(t=this.xDataController)==null?void 0:t.state.items.find(s=>s[this.navKeyName]===this.state.srfnav);if(this.routeDepth&&Xe(this.routeDepth)){e&&this.xDataController.setSelection([e]),this._evt.emit("onNavViewChange",{navViewMsg:{key:this.state.srfnav,isRoutePushed:!0,isCache:this.isCache},context:this.context});return}e?(this.xDataController.setActive(e),this.xDataController.setSelection([e])):this._evt.emit("onNavViewChange",{navViewMsg:{key:this.state.srfnav,is404:!0,isCache:this.isCache},context:this.context})}navByFirstItem(){const t=this.xDataController.state.items[0];if(!t){this.state.srfnav="",this._evt.emit("onNavViewChange",{navViewMsg:{key:"",isCache:this.isCache}});return}this.xDataController.setActive(t),this.xDataController.setSelection([t])}xDataActive(t){const{data:e,context:a,params:s}=t,i=this.getNavViewMsg(e[0],a,s);this._evt.emit("onNavViewChange",{navViewMsg:i})}prepareParams(t,e,a,s){const{navDER:i,navFilter:r,navigateContexts:n,navigateParams:o,appDataEntityId:u}=t,c={deName:u?O(u):void 0,navFilter:r,pickupDEFName:i?.pickupDEFName,navContexts:n,navParams:o},l={context:a,params:s,data:e},{resultContext:h,resultParams:p}=Wt(c,l),E=Object.assign(a.clone(),h,{currentSrfNav:e[this.navKeyName]});this.state.srfnav=e[this.navKeyName];const C={...p};return{context:E,params:C}}calcViewModelId(){var t;if(["GRID","DATAVIEW","LIST"].includes(((t=this.XDataModel)==null?void 0:t.controlType)||""))return this.XDataModel.navAppViewId;throw new f("\u591A\u8282\u70B9\u89C6\u56FE\u7531\u5B50\u7C7B\u5B9E\u73B0")}getNavViewMsg(t,e,a){const s=this.calcViewModelId(),i=this.prepareParams(this.XDataModel,t,e,a);return{key:t[this.navKeyName],context:i.context,params:i.params,viewId:s,isCache:this.isCache}}calcControlHeaderVisible(){const t=!!this.toolbarController;if(!t&&this.layoutPanel){const e=this.layoutPanel.panelItems.control_toolbar;e&&(e.state.visible=!1)}return t||!!(this.model.showTitleBar&&this.model.title)||!!this.model.enableSearch}setLayoutPanel(t){super.setLayoutPanel(t),t.evt.on("onMounted",()=>{if(!this.calcControlHeaderVisible()){const a=this.layoutPanel.panelItems.control_header;a&&(a.state.visible=!1)}})}async onRouterChange(t){this.state.srfnav!==t.srfnav&&(this.state.srfnav=t.srfnav,this.navBySrfnav())}}),pc=d("CalendarExpBarController",class extends Ze{constructor(){super(...arguments),this.navKeyName="navId"}getCalendarItemModel(t){const{sysCalendarItems:e}=this.XDataModel;if(e)return e.find(a=>a.itemType===t)}get xDataController(){const t=this.view.getController(this.model.xdataControlName);if(!t)throw new m(this.model,"\u65E0\u6CD5\u83B7\u53D6\u591A\u6570\u636E\u90E8\u4EF6[".concat(this.model.xdataControlName,"]\u63A7\u5236\u5668"));return t}navBySrfnav(){var t;const e=(t=this.xDataController)==null?void 0:t.state.items.find(s=>s.navId===this.state.srfnav);if(super.navBySrfnav(),!e)return;const a=new Date(e.beginTime);this.xDataController.setSelectDate(a)}getNavViewMsg(t){const e=this.getCalendarItemModel(t.itemType);if(e){const{context:a,params:s}=this.prepareParams(e,t.deData?t.deData:t,this.context,this.params);return a.currentSrfNav=t.navId,this.state.srfnav=t.navId,{key:t.navId,context:a,params:s,viewId:e.navAppViewId}}return{key:t.navId,context:this.context,params:this.params}}}),fc=d("TreeExpBarController",class extends Ze{constructor(){super(...arguments),this.navKeyName="id",this.navNodeModelIds=[]}get xDataController(){const t=this.view.getController(this.model.xdataControlName);if(!t)throw new m(this.model,"\u65E0\u6CD5\u83B7\u53D6\u591A\u6570\u636E\u90E8\u4EF6[".concat(this.model.xdataControlName,"]\u63A7\u5236\u5668"));return t}getNodeModel(t){const{detreeNodes:e}=this.XDataModel;let a;return e&&e.forEach(s=>{s.id===t&&(a=s)}),a}xDataActive(t){const{nodeData:e}=t;super.xDataActive({...t,data:[e]})}getNavViewMsg(t,e,a){const s=t.id,i=t.deData||t,r=this.getNodeModel(t.nodeId);if(!r)throw new f("\u627E\u4E0D\u5230".concat(t.nodeId,"\u7684\u8282\u70B9\u6A21\u578B"));const n=this.prepareParams(r,i,e,a);return n.context.currentSrfNav=s,this.state.srfnav=s,{key:s,viewId:r.navAppViewId,isCache:this.isCache,...n}}navByFirstItem(){const t=this.xDataController.state.items.find(e=>!this.xDataController.model.rootVisible&&this.xDataController.state.rootNodes.includes(e)?!1:this.state.noNeedNavView?!0:this.navNodeModelIds.includes(e.nodeId));t&&(this.xDataController.setActive(t),this.xDataController.setSelection([t]))}async onCreated(){await super.onCreated();const{detreeNodes:t}=this.XDataModel;t?.forEach(e=>{e.navAppViewId&&this.navNodeModelIds.push(e.id)}),this.state.srfnav&&(this.defaultExpandedKeys=this.calcExpandKeys(this.state.srfnav))}calcExpandKeys(t){const e=[];return t.split(":").forEach((a,s)=>{s===0?e.push(a):e.push("".concat(e[s-1],":").concat(a))}),e.pop(),e}async onRouterChange(t){if(this.state.srfnav!==t.srfnav){const e=this.calcExpandKeys(t.srfnav);await this.xDataController.expandNodeByKey(e)}await super.onRouterChange(t)}}),mc=d("ChartExpBarController",class extends Ze{navByFirstItem(){if(!this.xDataController.state.items[0]){this.state.srfnav="",this._evt.emit("onNavViewChange",{navViewMsg:{key:"",isCache:this.isCache}});return}const e=this.xDataController.generator.seriesGenerators.find(a=>a.chartDataArr.length>0&&a.model.navAppViewId);e&&this.xDataController.setActive(e.chartDataArr[0])}prepareParams(t,e,a,s){var i;const{context:r,params:n}=super.prepareParams(t,e,a,s);if(e._seriesModelId){const o=(i=t.dechartSerieses)==null?void 0:i.find(u=>u.id===e._seriesModelId);if(o){const{navigateContexts:u,navigateParams:c}=o,l=y(u,e,s,r),h=y(c,e,s,n);return{context:Object.assign(r.clone(),l),params:h}}}return{context:r,params:n}}getNavViewMsg(t,e,a){var s;let i;if(t._seriesModelId){const n=(s=this.XDataModel.dechartSerieses)==null?void 0:s.find(o=>o.id===t._seriesModelId);i=n?.navAppViewId}const r=this.prepareParams(this.XDataModel,t,e,a);return{key:t._uuid,context:r.context,params:r.params,viewId:i,isCache:this.isCache}}}),Gs=d("FormController",class extends Y{constructor(){super(...arguments),this.details={},this.providers={},this.formItems=[]}get _evt(){return this.evt}get data(){return this.state.data}initState(){super.initState(),this.state.data=new G,this.state.isLoaded=!1,this.state.processing=!1,this.state.modified=!1}async dataChangeNotify(t){await nt(Object.values(this.details).map(async e=>e.dataChangeNotify(t)))}formStateNotify(t){Object.values(this.details).forEach(e=>{e.formStateNotify(t)})}async onCreated(){await super.onCreated(),await this.initDetailControllers(),this.dataChangeNotify=he(this.dataChangeNotify.bind(this),(t,e)=>[Array.from(new Set([...t[0],...e[0]]))],200),this._evt.on("onFormDetailEvent",t=>{var e;(e=this.scheduler)==null||e.triggerControlEvent(t.formDetailName,t.formDetailEventName,t)})}async getDraftParams(){const t={};return await Promise.all(this.formItems.map(e=>e.setDefaultValue(!0,t))),t}async initDetailControllers(t=this.model.deformPages,e=this,a=void 0){await Promise.all(t.map(async s=>{const i=await Ue(s);if(!i)return;e.providers[s.id]=i;const r=await i.createController(s,e,a);e.details[s.id]=r,(s.detailType==="FORMITEM"||s.detailType==="MDCTRL")&&e.formItems.push(r);const n=Gt(s);n.length&&await this.initDetailControllers(n,e,r)}))}getData(){return[this.state.data]}async setDataValue(t,e){if(!(Object.prototype.hasOwnProperty.call(this.state.data,t)&&!ae(this.state.data[t],e))){this.state.data[t]=e,this.state.processing=!0,this.state.modified=!0,await this._evt.emit("onFormDataChange",void 0);try{await this.dataChangeNotify([t])}finally{this.state.processing=!1}}}async validate(){return(await Promise.all(this.formItems.map(e=>e.validate()))).findIndex(e=>!e)===-1}actionNotification(t,e){super.actionNotification(t,{data:this.data,...e||{}})}initControlScheduler(t=[]){const e=[...t];k(this.model,a=>{a.controlLogics&&e.push(...a.controlLogics)},{childrenFields:["deformPages","deformTabPages","deformDetails"]}),super.initControlScheduler(e)}}),Jo=d("SearchFormService",class extends ee{async getDraft(t,e={}){let s={ok:!0,status:200,data:this.getFilteredData({...e})};return s=this.handleResponse(s),s}initUIDataMap(){k(this.model,t=>{if(t.detailType==="FORMITEM"){const e=t.id.toLowerCase();this.dataUIMap.set(e,new H(e,e))}},{childrenFields:["deformPages","deformTabPages","deformDetails"]})}handleResponse(t){const e=super.handleResponse(t);return e.ok&&e.data&&(e.data=this.toUIData(e.data)),e}getFilteredData(t){const e={};return this.dataUIMap.forEach(a=>{t[a.dataKey]!==void 0&&(e[a.dataKey]=t[a.dataKey])}),e}}),Ec=d("SearchFormController",class extends Gs{async onCreated(){await super.onCreated(),this.preprocessLayoutPanel(),this.service=new Jo(this.model),await this.service.init(this.context),await this.load()}async onMounted(){await super.onMounted(),this.state.loadDefault&&this.load()}async load(){const t={...this.params},e=await this.getDraftParams();Object.assign(t,e),await this.evt.emit("onBeforeLoadDraft",{params:t});let a;try{a=await this.service.getDraft(this.context,t)}catch(s){throw this.actionNotification("GETDRAFTERROR",{error:s}),s}return this.state.data=a.data,Ot(this.data,e),this.state.isLoaded=!0,this.formStateNotify("DRAFT"),this.actionNotification("GETDRAFTSUCCESS"),this.data}getFilterParams(){const t={};return Object.keys(this.state.data).forEach(e=>{const a=this.state.data[e];a!=null&&a!==""&&(t[e]=a)}),t}async search(){await this.evt.emit("onSearch",void 0)}async onSearchButtonClick(){await this.search()}async reset(){await this.load(),await this.search()}async dataChangeNotify(t){await super.dataChangeNotify(t),this.model.enableAutoSearch&&this.search()}async onKeyUp(t){const e=t||window.event;e&&e.code==="Enter"&&await this.onSearchButtonClick()}preprocessLayoutPanel(){if(!this.controlPanel)return;const{searchButtonStyle:t}=this.model;let e=!1,a=!1;const s=this.model.searchButtonPos||"RIGHT";e=s==="BOTTOM",a=s!=="BOTTOM",t==="NONE"&&(e=!0,a=!0);const i=r=>{let n,o="";if(["rootPanelItems","panelItems"].find(u=>r[u]?(n=r[u],o=u,!0):!1),n&&n.length>0){const u=[];n.forEach(c=>{e&&c.id==="control_buttons_right"||a&&c.id==="control_buttons_bottom"||(u.push(c),i(c))}),u.length<n.length&&(r[o]=u)}};(a||e)&&i(this.controlPanel)}}),it=d("FormDetailState",class{constructor(t){this.parent=t,this.disabled=!1,this.layout={width:"",height:"",extraStyle:{},extraClass:[],contentStyle:{}},this.class={container:[],containerDyna:[],label:[],labelDyna:[]},this.required=!1,this.showMoreMode=0;let e=!0;Object.defineProperty(this,"visible",{enumerable:!0,configurable:!0,get(){return this.parent&&(this.parent.visible===!1||this.showMoreMode===1&&this.parent.isShowMore===!1)?!1:e},set(s){return e=s,!0}});let a;Object.defineProperty(this,"keepAlive",{enumerable:!0,configurable:!0,get(){return a!==void 0?a:this.parent?this.parent.keepAlive:!1},set(s){return a=s,!0}})}}),Zo=d("FormDetailEventName",(t=>(t.CLICK="onClick",t.FOCUS="onFocus",t.BLUR="onBlur",t.CHANGE="onChange",t.ENTER="onEnter",t))(Zo||{})),tu=d("PanelItemEventName",(t=>(t.CLICK="onClick",t.FOCUS="onFocus",t.BLUR="onBlur",t.CHANGE="onChange",t.ENTER="onEnter",t))(tu||{})),ct=d("FormDetailController",class{constructor(t,e,a){this.dynaLogicResult={visible:void 0,disabled:void 0,required:void 0},this.model=t,this.form=e,this.parent=a,this.state=this.createState()}get data(){return this.form.data}get containerClass(){return[...this.state.class.container,...this.state.class.containerDyna]}get labelClass(){return[...this.state.class.label,...this.state.class.labelDyna]}async init(){await this.onInit()}async onInit(){this.state.showMoreMode=this.model.showMoreMode;const{layoutPos:t,sysCss:e,labelSysCss:a}=this.model;if(t){const{width:s,height:i}=Ut(t);this.state.layout.width="".concat(s),this.state.layout.height="".concat(i)}e?.cssName&&this.state.class.container.push(e.cssName),a?.cssName&&this.state.class.label.push(a.cssName)}createState(){var t;return new it((t=this.parent)==null?void 0:t.state)}async dataChangeNotify(t){this.calcDynamicLogic(t),this.calcDetailDisabled(this.data),this.calcDetailVisible(this.data),this.calcDetailRequired(this.data),this.calcDynaClass(this.data)}async formStateNotify(t){this.calcDynamicLogic([],!0),this.calcDetailDisabled(this.data),this.calcDetailVisible(this.data),this.calcDetailRequired(this.data),this.calcDynaClass(this.data)}calcDynamicLogic(t,e=!1){var a;this.parent&&!this.parent.state.visible||(a=this.model.defdgroupLogics)==null||a.forEach(s=>{const i=s.relatedDetailNames||[];if(e||Mt(i,t))try{const r=Kt(this.form.data,s);switch(s.logicCat){case"ITEMBLANK":this.dynaLogicResult.required=!r;break;case"ITEMENABLE":this.dynaLogicResult.disabled=!r;break;case"PANELVISIBLE":this.dynaLogicResult.visible=r;break;default:}}catch(r){ibiz.log.error(r)}})}force(t){}calcDynaClass(t){if(this.model.dynaClass){const e=Dt(this.model.dynaClass,t);e.length&&(this.state.class.containerDyna=e)}if(this.model.labelDynaClass){const e=Dt(this.model.labelDynaClass,t);e.length&&(this.state.class.labelDyna=e)}}calcDetailDisabled(t){let{disabled:e}=this.dynaLogicResult;if(e!==!0&&this.form.scheduler){const a=this.form.scheduler.triggerItemEnable(this.model.id,{data:[t]});a!==void 0&&(e=!a)}e!==void 0&&(this.state.disabled=e)}calcDetailVisible(t){let{visible:e}=this.dynaLogicResult;if(e!==!1&&this.form.scheduler){const a=this.form.scheduler.triggerItemVisible(this.model.id,{data:[t]});a!==void 0&&(e=a)}e!==void 0&&(this.state.visible=e)}calcDetailRequired(t){let{required:e}=this.dynaLogicResult;if(e!==!0&&this.form.scheduler){const a=this.form.scheduler.triggerItemBlank(this.model.id,{data:[t]});a!==void 0&&(e=!a)}e!==void 0&&(this.state.required=e)}async onClick(t){this.form.evt.emit("onFormDetailEvent",{formDetailName:this.model.id,formDetailEventName:"onClick",event:t})}}),eu=d("FormButtonState",class extends it{constructor(){super(...arguments),this.loading=!1}}),gc=d("FormButtonController",class extends ct{createState(){var t;return new eu((t=this.parent)==null?void 0:t.state)}get data(){return this.form.data}async onClick(t){this.state.loading=!0;try{this.model.actionType==="UIACTION"&&await this.doUIAction(t),await this.doFormItemUpdate()}finally{this.state.loading=!1}super.onClick(t)}async doUIAction(t){const e=this.model.uiactionId;await U.execAndResolved(e,{context:this.form.context,params:this.form.params,data:[this.data],view:this.form.view,event:t,noWaitRoute:!0})}async doFormItemUpdate(){this.model.deformItemUpdateId&&await this.form.updateFormItem(this.model.deformItemUpdateId)}}),au=d("FormDruipartState",class extends it{constructor(){super(...arguments),this.showMask=!1}}),Cc=d("FormDRUIPartController",class extends ct{constructor(){super(...arguments),this.refreshItems=["srfkey"],this.paramItem="srfkey",this.isNewData=!1}createState(){var t;return new au((t=this.parent)==null?void 0:t.state)}async onInit(){if(await super.onInit(),Object.assign(this.state.layout.extraStyle,{overflow:"auto"}),this.model.refreshItems){let t=this.model.refreshItems.split(";");t=t.filter(e=>!!e),this.refreshItems.push(...t)}this.model.paramItem&&(this.paramItem=this.model.paramItem)}async dataChangeNotify(t){await super.dataChangeNotify(t),Mt(this.refreshItems,t)&&this.calcViewParams()}async formStateNotify(t){await super.formStateNotify(t),this.isNewData=t==="DRAFT",this.model.maskMode!==0&&(this.state.showMask=this.isNewData),(t==="LOAD"||t==="DRAFT"||t==="SAVE")&&this.calcViewParams()}calcViewParams(){let t=this.form.context.clone();const e=this.model.navigateContexts;x(e)&&(t=Object.assign(t,y(e,this.form.data,this.form.params,this.form.context)));const a=y(this.model.navigateParams,this.form.data,this.form.params,this.form.context);if(!this.state.viewComponentKey)this.state.viewComponentKey=K(),this.navContext=t,this.navParams=a;else if(JSON.stringify(this.navContext)!==JSON.stringify(t)||JSON.stringify(this.navParams)!==JSON.stringify(a))this.navContext=t,this.navParams=a,this.force();else if(this.embedView){if(this.isNewData)return;this.embedView.callUIAction("Refresh")}}setEmbedView(t){this.embedView=t,this.embedView.evt.on("onMounted",()=>{this.isNewData||this.embedView.call("Load")}),this.embedView.evt.on("onDataChange",e=>{["LOAD","LOADDRAFT"].includes(e.actionType)||(ibiz.log.debug("\u63A5\u6536\u5230\u5173\u7CFB\u754C\u9762\u7684\u6570\u636E\u53D8\u66F4\u4E8B\u4EF6",e),this.model.deformItemUpdateId&&this.form.updateFormItem(this.model.deformItemUpdateId))})}}),js=d("FormGroupPanelState",class extends it{constructor(){super(...arguments),this.isShowMore=!1,this.actionGroupState=null}}),su=d("FormGroupPanelController",class extends ct{get disableClose(){const{titleBarCloseMode:t}=this.model;return t===0||t===void 0}get defaultExpansion(){const{titleBarCloseMode:t}=this.model;return this.disableClose||t===1}createState(){var t;return new js((t=this.parent)==null?void 0:t.state)}async onInit(){super.onInit(),await this.initActionStates()}async formStateNotify(t){super.formStateNotify(t),this.state.actionGroupState&&this.state.actionGroupState.update(this.form.data.getOrigin())}async initActionStates(){var t;const{uiactionGroup:e}=this.model;if(!((t=e?.uiactionGroupDetails)!=null&&t.length))return;const a=new ft;e.uiactionGroupDetails.forEach(s=>{const i=s.uiactionId;if(i){const r=new pt(s.id,this.form.context.srfappid,i);a.addState(s.id,r)}}),await a.update(),this.state.actionGroupState=a}async onActionClick(t,e){const a=t.uiactionId;await U.execAndResolved(a,{context:this.form.context,params:this.form.params,data:[this.data],view:this.form.view,event:e})}}),iu=d("FormItemState",class extends it{constructor(t){super(t),this.parent=t,this.error=null,this.enableCondDisabled=!1;let e=!1;Object.defineProperty(this,"disabled",{enumerable:!0,configurable:!0,get(){return this.enableCondDisabled?!0:e},set(a){return e=a,!0}})}}),Dc=d("FormItemController",class extends ct{constructor(t,e,a){super(t,e,a),this.rules=[],this.context=e.context,this.params=e.params}createState(){var t;return new iu((t=this.parent)==null?void 0:t.state)}get name(){return this.model.id}get value(){return this.form.data[this.name]}get valueItemName(){if(this.model.editor)return this.model.editor.valueItemName}get unitName(){return this.model.unitName}get valueFormat(){return this.model.valueFormat}get dataType(){return this.model.dataType}async onInit(){await super.onInit(),this.state.required=!this.model.allowEmpty;const{enableCond:t}=this.model;t||(this.state.enableCondDisabled=!0),this.model.editor&&this.model.editor.editorType!=="HIDDEN"&&(this.editorProvider=await bt(this.model.editor),this.editorProvider&&(this.editor=await this.editorProvider.createController(this.model.editor,this),await this.initRules()))}async initRules(){this.rules=[];const t=Me(this.form.model.deformItemVRs||[],this.name);t&&this.rules.push(...He(t,this.name,this.valueItemName)),this.model.editor&&this.rules.push(...Ye(this.model.editor)),this.rules.length>0&&(this.validator=new Ie({[this.name]:this.rules}))}calcEnableCond(){const{enableCond:t}=this.model,e=this.data.srfuf===0;(e&&t===2||!e&&t===1)&&(this.state.enableCondDisabled=!0)}async dataChangeNotify(t){await super.dataChangeNotify(t);const{resetItemNames:e}=this.model;let a=!1;e&&e.length>0&&e.forEach(s=>{t.includes(s)&&(a=!0)}),a&&this.setDataValue(null,this.name),(t.includes(this.name)||t.includes(this.valueItemName))&&this.validate(),t.includes(this.name)&&this.model.deformItemUpdateId&&await this.form.updateFormItem(this.model.deformItemUpdateId)}async formStateNotify(t){super.formStateNotify(t),this.calcEnableCond(),t==="LOAD"&&this.setDefaultValue(!1)}calcDynamicLogic(t,e=!1){this.model.hidden||super.calcDynamicLogic(t,e)}async validate(){if(!this.state.visible)return this.state.error=null,!0;if(this.state.required&&V(this.data[this.name]))return this.state.error="\u8BF7\u586B\u5199".concat(this.model.caption||""),!1;if(this.validator)try{await this.validator.validate(this.data)}catch({errors:t,_fields:e}){return this.state.error=t[0].message,!1}return this.state.error=null,!0}async setDataValue(t,e){e=e||this.name,await this.form.setDataValue(e,t),this.form.evt.emit("onFormDetailEvent",{formDetailName:this.model.id,formDetailEventName:"onChange"})}setDefaultValue(t,e=this.data){const{createDVT:a,createDV:s,updateDVT:i,updateDV:r}=this.model,n=t?a:i,o=t?s:r,u=qe({name:this.name,valueType:n,defaultValue:o,valueFormat:this.model.valueFormat},{data:e,context:this.context,params:this.params});u!==void 0&&(e[this.name]=u)}onFocus(t){this.form.evt.emit("onFormDetailEvent",{formDetailName:this.model.id,formDetailEventName:"onFocus",event:t})}onBlur(t){this.form.evt.emit("onFormDetailEvent",{formDetailName:this.model.id,formDetailEventName:"onBlur",event:t})}onEnter(t){this.form.evt.emit("onFormDetailEvent",{formDetailName:this.model.id,formDetailEventName:"onEnter",event:t})}}),ta=d("FormMDCtrlContentTypeController",class{constructor(t){this.parent=t,this.model=this.parent.model}get data(){return this.parent.state.contentCtrlData}async onInit(){}onDataChange(t){this.parent.state.contentCtrlData=t,this.parent.setFormDataValue()}onDataItemChange(t,e){this.parent.state.contentCtrlData[e]=t,this.parent.setFormDataValue()}onDataRemove(t){var e;t<0||((e=this.parent.state.contentCtrlData)==null||e.splice(t,1),this.parent.setFormDataValue())}onDataInsert(t){var e;(e=this.parent.state.contentCtrlData)==null||e.push(t||{}),this.parent.setFormDataValue()}async initData(){const t=this.model.appDEFieldId||this.model.fieldName||this.model.id;if(t){const e=this.parent.data[t];this.model.contentType==="REPEATER"&&this.model.detailStyle==="STYLE3"?Array.isArray(e)?this.parent.state.contentCtrlData={}:this.parent.state.contentCtrlData=e||{}:Array.isArray(e)?this.parent.state.contentCtrlData=e||[]:this.parent.state.contentCtrlData=[]}}async validate(){return!0}refresh(){}}),ne=d("FormMDCtrlControlController",class extends ta{async onInit(){const{model:t}=this.parent,{contentControl:e}=t;if(!e)throw new f("\u8868\u5355\u591A\u6570\u636E\u90E8\u4EF6\u672A\u914D\u7F6E\u5D4C\u5165\u90E8\u4EF6");this.controlModel=e;const a=await dt(this.controlModel);a&&(this.provider=a)}}),ru=d("FormMDCtrlDataViewController",class extends ne{constructor(){super(...arguments),this.selectData=[],this.state={isSelect:!1}}onDataViewCreated(t){this.dataViewController=t.ctrl}onSelectionChange(t){this.state.isSelect=t.data.length>0}onDataRemove(){this.dataViewController&&(this.dataViewController.remove(),this.parent.state.contentCtrlData=this.dataViewController.state.items,this.parent.setFormDataValue())}onDataChange(t){this.parent.state.contentCtrlData=t,this.parent.setFormDataValue()}async initData(){var t;(t=this.dataViewController)==null||t.load()}async onDataInsert(){}refresh(){var t;(t=this.dataViewController)==null||t.refresh()}}),Ks=d("EditFormService",class extends ee{async get(t,e={}){var a;let s=await this.exec(((a=this.model.getControlAction)==null?void 0:a.appDEMethodId)||"get",t,void 0,e);return s=this.handleResponse(s),s}async getDraft(t,e={}){var a;let s=await this.exec(((a=this.model.getDraftControlAction)==null?void 0:a.appDEMethodId)||"getdraft",t,void 0,e);return s=this.handleResponse(s),s}async remove(t,e={}){var a;return await this.exec(((a=this.model.removeControlAction)==null?void 0:a.appDEMethodId)||"remove",t,void 0,e)}async create(t,e){var a;const s=e instanceof G?e.getOrigin():e,i=this.getFilteredData(s);let r=await this.exec(((a=this.model.createControlAction)==null?void 0:a.appDEMethodId)||"create",t,i);return r=this.handleResponse(r),r}async update(t,e){var a;const s=e instanceof G?e.getOrigin():e,i=this.getFilteredData(s);let r=await this.exec(((a=this.model.updateControlAction)==null?void 0:a.appDEMethodId)||"update",t,i);return r=this.handleResponse(r),r}async goBack(t,e){var a;const i=(a=this.model.goBackControlAction)==null?void 0:a.appDEMethodId;if(!i)throw new m(this.model,"\u7F3A\u5C11\u8FD4\u56DE\u64CD\u4F5C\u5B9E\u4F53\u884C\u4E3A");let r=await this.exec(i,t,e instanceof G?e.getOrigin():e);return r=this.handleResponse(r),r}async updateFormItem(t,e,a={}){let s=await this.exec(t,e,a);return s=this.handleResponse(s),s}async wfStart(t,e,a){var s;const r=((s=this.model.wfstartControlAction)==null?void 0:s.appDEMethodId)||"wfstart";return(await this.app.deService.getService(this.model.appDataEntityId)).wf.exec(r,t,e,a instanceof G?a.getOrigin():a)}async wfSubmit(t,e,a){var s;const i=this.model;let r="";return e.type?r=e.type:r=((s=i.wfsubmitControlAction)==null?void 0:s.appDEMethodId)||"wfsubmit",(await this.app.deService.getService(this.model.appDataEntityId)).wf.exec(r,t,e,a instanceof G?a.getOrigin():a)}initUIDataMap(){super.initUIDataMap();const t=["srfwfmemo","srfwftransferor","srfactionparam","srffrontuf","srfnextform"];k(this.model,e=>{if(e.detailType==="FORMITEM"||e.detailType==="MDCTRL"){const a=e,s=a.id.toLowerCase(),i=a.fieldName||e.appDEFieldId;let r;i?r=new H(s,i,{isOriginField:!0,dataType:a.dataType}):r=new H(s,s,{isOriginField:t.includes(s)}),this.dataUIMap.set(s,r)}},{childrenFields:["deformPages","deformTabPages","deformDetails"]})}handleResponse(t){const e=super.handleResponse(t);return e.ok&&e.data&&(e.data=this.toUIData(e.data)),e}getFilteredData(t){const e={};return this.dataUIMap.forEach(a=>{t[a.dataKey]!==void 0&&(e[a.dataKey]=t[a.dataKey])}),e}}),nu=d("EditFormController",class extends Gs{get view(){return this.ctx.view}async onCreated(){await super.onCreated(),this.service=new Ks(this.model),await this.service.init(this.context),this.autoSave=Vt(this.autoSave.bind(this),500,{trailing:!0})}async onMounted(){await super.onMounted(),this.state.loadDefault&&this.load()}async loadDraft(t){const{context:e,params:a}=this.handlerAbilityParams(t),s=await this.getDraftParams();Object.assign(a,s);let i;try{await this.startLoading(),await this.evt.emit("onBeforeLoadDraft",{params:a}),i=await this.service.getDraft(e,a)}catch(r){throw await this.evt.emit("onLoadDraftError",void 0),this.actionNotification("GETDRAFTERROR",{error:r}),r}finally{await this.endLoading()}return this.state.data=i.data,Ot(this.data,s),this.formStateNotify("DRAFT"),await this.evt.emit("onLoadDraftSuccess",void 0),this.actionNotification("GETDRAFTSUCCESS"),this.state.isLoaded=!0,this.data}async copy(){const t=A(this.context),e=A(this.params),s=(await ibiz.hub.getAppDataEntity(this.model.appDataEntityId)).keyAppDEFieldId;if(s&&this.params[s]){const r=O(this.model.appDataEntityId);t[r]=this.params[s],delete e[s],delete this.params[s],delete e.srfcopymode,delete this.params.srfcopymode}let i;try{await this.startLoading(),await this.evt.emit("onBeforeLoad",void 0),i=await this.service.get(t,e)}catch(r){throw await this.evt.emit("onLoadError",void 0),this.actionNotification("GETERROR",{error:r}),r}finally{await this.endLoading()}return i.data.srfkey=void 0,i.data.tempsrfkey=K(),this.state.modified=!1,this.state.data=i.data,this.formStateNotify("LOAD"),await this.evt.emit("onLoadSuccess",void 0),this.actionNotification("GETSUCCESS"),this.state.isLoaded=!0,this.data}async load(t){if(this.params.srfcopymode)return this.copy();if(!ka(this.context,this.model.appDataEntityId))return this.loadDraft();const{context:s,params:i}=this.handlerAbilityParams(t),r=A(i);let n;try{await this.startLoading(),await this.evt.emit("onBeforeLoad",void 0),n=await this.service.get(s,r)}catch(o){throw await this.evt.emit("onLoadError",void 0),this.actionNotification("GETERROR",{error:o}),o}finally{await this.endLoading()}return this.state.modified=!1,this.state.data=n.data,this.formStateNotify("LOAD"),await this.evt.emit("onLoadSuccess",void 0),this.actionNotification("GETSUCCESS"),this.state.isLoaded=!0,this.data}async save(t){const e=t?.silent===!0;if(this.state.processing)return await pe(500,this.save.bind(this),[t]);if(!await this.validate())throw new f("\u8BF7\u68C0\u67E5\u8868\u5355\u586B\u5199\uFF01");e||await this.startLoading(),await this.evt.emit("onBeforeSave",void 0);const{context:s,data:i}=this.handlerAbilityParams(t),r=i[0],n=r.srfuf===0;let o;try{o=n?await this.service.create(s,r):await this.service.update(s,r)}catch(c){throw await this.evt.emit("onSaveError",void 0),this.actionNotification("".concat(n?"CREATE":"UPDATE","ERROR"),{error:c}),c}finally{e||await this.endLoading()}const u=t?.noFillBack===!0;return o.data&&(u?(this.data.updatedate=o.data.updatedate,this.data.srfkey=o.data.srfkey):It(this.data,o.data),this.data.tempsrfkey=this.data.srfkey),this.state.modified=!1,await this.evt.emit("onSaveSuccess",void 0),this.formStateNotify("SAVE"),e||this.actionNotification("".concat(n?"CREATE":"UPDATE","SUCCESS"),{default:"".concat(this.data.srfmajortext||"","\u4FDD\u5B58\u6210\u529F")}),this.view.modal.mode==="ROUTE"&&ibiz.mc.command.send(this.data.$origin,n?"OBJECTCREATED":"OBJECTUPDATED"),this.data}async remove(t){const{context:e,params:a}=this.handlerAbilityParams(t);let s,i=!1;if(await this.evt.emit("onBeforeRemove",void 0),this.data.srfuf===1){if(i=await ibiz.modal.confirm({title:"\u63D0\u793A",desc:"\u786E\u8BA4\u5220\u9664\u5417\uFF1F"}),!i)return!1;await this.startLoading();try{s=await this.service.remove(e,a)}catch(r){throw await this.evt.emit("onRemoveError",void 0),this.actionNotification("REMOVEERROR",{error:r}),r}finally{await this.endLoading()}i=s.ok}return this.state.data=new G,this.state.modified=!1,await this.evt.emit("onRemoveSuccess",void 0),this.actionNotification("REMOVESUCCESS"),this.view.modal.mode==="ROUTE"&&ibiz.mc.command.send(this.data.$origin,"OBJECTREMOVED"),i}async goBack(){await this.startLoading();let t;try{t=await this.service.goBack(this.context,this.data)}finally{await this.endLoading()}return t.data&&It(this.data,t.data),this.data}async updateFormItem(t){var e;const a=(e=this.model.deformItemUpdates)==null?void 0:e.find(c=>c.id===t);if(!a)throw new f("\u6CA1\u627E\u5230".concat(t,"\u8868\u5355\u9879\u66F4\u65B0"));const{appDEMethodId:s,defiupdateDetails:i,customCode:r,scriptCode:n}=a,o=i?.map(c=>c.id);let u;if(r&&n)u=B.execScriptFn({...this.getEventArgs(),data:this.data},n,{isAsync:!1});else{const c={...this.params,...this.data.getOrigin()};u=(await this.service.updateFormItem(s,this.context,c)).data}u&&o?.length&&await Promise.all(o.map(c=>this.setDataValue(c,u[c])))}async wfStart(t){if(!await this.validate())throw new f("\u8BF7\u68C0\u67E5\u8868\u5355\u586B\u5199\uFF01");await this.startLoading();const{context:a,params:s}=this.handlerAbilityParams(t);try{await this.service.wfStart(a,s,this.data),this.view.modal.mode==="ROUTE"&&(ibiz.mc.command.send(this.data.$origin,"OBJECTUPDATED"),ibiz.mc.command.send({srfdecodename:"SysTodo"},"OBJECTUPDATED"))}catch(i){throw this.actionNotification("WFSTARTERROR",{error:i}),i}finally{await this.endLoading()}this.actionNotification("WFSTARTSUCCESS",{default:"\u6D41\u7A0B\u542F\u52A8\u6210\u529F"})}async wfSubmit(t){if(!await this.validate())throw new f("\u8BF7\u68C0\u67E5\u8868\u5355\u586B\u5199\uFF01");await this.startLoading();const{context:a,params:s}=this.handlerAbilityParams(t);try{await this.service.wfSubmit(a,s,this.data),this.view.modal.mode==="ROUTE"&&(ibiz.mc.command.send(this.data.$origin,"OBJECTUPDATED"),ibiz.mc.command.send({srfdecodename:"SysTodo"},"OBJECTUPDATED"))}catch(i){throw this.actionNotification("WFSUBMITERROR",{error:i}),i}finally{await this.endLoading()}this.actionNotification("WFSUBMITSUCCESS",{default:"\u6D41\u7A0B\u63D0\u4EA4\u6210\u529F"})}async dataChangeNotify(t){await super.dataChangeNotify(t),this.autoSave()}async autoSave(){if(this.model.enableAutoSave)try{await this.save({silent:!0,noFillBack:!0})}catch(t){ibiz.log.error(t)}}}),ou=d("FormMDCtrlFormController",class extends ne{constructor(){super(...arguments),this.controlControllerArray=[],this.state={data:[]}}onControlCreated(t,e){const a=t.ctrl;this.controlControllerArray[e]=a,a.load()}async onInit(){super.onInit(),this.service=new Ks(this.model.contentControl),await this.service.init(this.parent.form.context)}async fetch(t,e={}){const a="fetchdefault";let s=await this.service.exec(a,t,e);return s=this.handleResponse(s),s}handleResponse(t){const e=t;return e.ok&&(j(e.data)?e.data=e.data.map(a=>this.service.toUIData(a)):e.data=this.service.toUIData(e.data)),e}async initData(){const t=await this.fetch(this.parent.form.context,this.parent.form.params);this.state.data=t.data}onDataRemove(t){const e=this.controlControllerArray[t];e&&e.remove()}onFormChange(t,e){const a=this.controlControllerArray[e];a&&(a.save(),this.state.data[e]&&It(this.state.data[e],t[0]),this.parent.state.contentCtrlData=this.state.data,this.parent.setFormDataValue())}onFormRemoveSuccess(t){this.state.data.splice(t,1),this.controlControllerArray.splice(t,1),this.parent.state.contentCtrlData=this.state.data,this.parent.setFormDataValue()}async onDataInsert(){const t=await this.service.getDraft(this.parent.form.context,this.parent.form.params);if(t.data){const e=await this.service.create(this.parent.form.context,t.data);this.state.data.push(e.data),this.parent.state.contentCtrlData=this.state.data,this.parent.setFormDataValue()}}async validate(){return(await Promise.all(this.controlControllerArray.map(e=>e.validate()))).findIndex(e=>!e)===-1}refresh(){this.initData()}}),uu=d("FormMDCtrlGridController",class extends ne{constructor(){super(...arguments),this.selectData=[],this.state={isSelect:!1}}onGridCreated(t){this.gridController=t.ctrl}onSelectionChange(t){this.state.isSelect=t.data.length>0}onDataRemove(){this.gridController&&(this.gridController.remove(),this.parent.state.contentCtrlData=this.gridController.state.items,this.parent.setFormDataValue())}onDataChange(t){this.parent.state.contentCtrlData=t,this.parent.setFormDataValue()}async initData(){var t;(t=this.gridController)==null||t.load()}async onDataInsert(){this.gridController&&(await this.gridController.newRow(),this.parent.state.contentCtrlData=this.gridController.state.items,this.parent.setFormDataValue())}async onInit(){const{model:t}=this.parent,{contentControl:e}=t;if(!e)throw new f("\u8868\u5355\u591A\u6570\u636E\u90E8\u4EF6\u672A\u914D\u7F6E\u5D4C\u5165\u90E8\u4EF6");It(e,{enableRowEdit:!0,enableRowNew:!0}),this.controlModel=e;const a=await dt(this.controlModel);a&&(this.provider=a)}async validate(){if(!this.gridController)return!0;const{rows:t}=this.gridController.state;return(await Promise.all(t.map(a=>this.gridController.validate(a)))).findIndex(a=>!a)===-1}refresh(){var t;(t=this.gridController)==null||t.refresh()}}),cu=d("FormMDCtrlListController",class extends ne{constructor(){super(...arguments),this.selectData=[],this.state={isSelect:!1}}onListCreated(t){this.listController=t.ctrl}onSelectionChange(t){this.state.isSelect=t.data.length>0}onDataRemove(){this.listController&&(this.listController.remove(),this.parent.state.contentCtrlData=this.listController.state.items,this.parent.setFormDataValue())}onDataChange(t){this.parent.state.contentCtrlData=t,this.parent.setFormDataValue()}async initData(){var t;(t=this.listController)==null||t.load()}async onDataInsert(){}refresh(){var t;(t=this.listController)==null||t.refresh()}}),Xs=d("FormMDCtrlRepeaterFormController",class extends ta{constructor(){super(...arguments),this.formControllerArray=[]}async onDataInsert(){const t={};super.onDataInsert(t)}onDataRemove(t){t<0||super.onDataRemove(t)}async validate(){const t=this.formControllerArray.map(a=>a.validate());return(await Promise.all(t)).findIndex(a=>!a)===-1}setFromController(t){this.formControllerArray.push(t)}}),lu=d("FormMDCtrlRepeaterFormOneController",class extends Xs{get data(){return this.parent.state.contentCtrlData}onDataItemChange(t){this.parent.state.contentCtrlData=t,this.parent.setFormDataValue()}}),du=d("FormMDCtrlRepeaterGridController",class extends ta{constructor(){super(...arguments),this.columns=[],this.editorMap={}}async onInit(){this.initColumns(this.model.deformDetails||[])}initColumns(t){t.forEach(async e=>{if(e.detailType==="FORMITEM"){const{editor:s,dataType:i}=e,r=await bt(s);if(r){const n=await r.createController(s,{unitName:s.unitName,valueFormat:s.valueFormat,context:this.parent.form.context,params:this.parent.form.params,dataType:i});this.editorMap[e.codeName]={provider:r,controller:n}}this.columns.push({codeName:e.codeName,caption:e.caption})}const a=Gt(e);a.length&&this.initColumns(a)})}rowDataChange(t,e,a){const s=this.data[a];Object.prototype.hasOwnProperty.call(s,e)&&!ae(s[e],t)||(s[e]=t,this.onDataItemChange(s,a))}}),hu=d("FormMDCtrlState",class extends it{constructor(){super(...arguments),this.contentCtrlData=[]}}),wc=d("FormMDCtrlController",class extends ct{get isCreate(){return this.model.buildInActions?[1,3,5,7].includes(this.model.buildInActions):!1}get isDelete(){return this.model.buildInActions?[4,5,6,7].includes(this.model.buildInActions):!1}createState(){var t;return new hu((t=this.parent)==null?void 0:t.state)}async onInit(){switch(await super.onInit(),this.model.contentType){case"FORM":this.mdCtrlContentController=new ou(this);break;case"GRID":this.mdCtrlContentController=new uu(this);break;case"LIST":this.mdCtrlContentController=new cu(this);break;case"DATAVIEW":this.mdCtrlContentController=new ru(this);break;case"REPEATER":this.model.detailStyle==="DEFAULT"&&(this.mdCtrlContentController=new Xs(this)),this.model.detailStyle==="STYLE3"&&(this.mdCtrlContentController=new lu(this)),this.model.detailStyle==="STYLE2"&&(this.mdCtrlContentController=new du(this));break}this.mdCtrlContentController&&await this.mdCtrlContentController.onInit(),this.form.state.isLoaded&&this.mdCtrlContentController.initData(),this.form.evt.on("onLoadDraftSuccess",()=>{this.mdCtrlContentController.initData()}),this.form.evt.on("onLoadSuccess",()=>{this.mdCtrlContentController.initData()})}setFormDataValue(){const t=this.model.appDEFieldId||this.model.fieldName||this.model.id;t&&this.form.setDataValue(t,A(this.state.contentCtrlData))}async validate(){return this.mdCtrlContentController.validate()}setDefaultValue(){}async dataChangeNotify(t){await super.dataChangeNotify(t);const{resetItemNames:e}=this.model,a=this.model.appDEFieldId||this.model.fieldName||this.model.id;let s=!1;e&&e.length>0&&e.forEach(i=>{t.includes(i)&&(s=!0)}),s&&(this.state.contentCtrlData=null,this.setFormDataValue()),t.includes(a)&&this.validate(),t.includes(a)&&this.model.deformItemUpdateId&&await this.form.updateFormItem(this.model.deformItemUpdateId),t.includes(this.model.id)&&this.mdCtrlContentController.refresh()}refresh(){this.mdCtrlContentController.refresh()}}),vc=d("FormMDCtrlItemController",class extends nu{constructor(t,e,a,s,i,r){const n=A(r.model);Object.assign(n,t,{name:void 0}),super(n,e,a,s),this.state.data=i,this.state.isSimple=!0}async initDetailControllers(t=this.model.deformDetails,e=this,a=void 0){await Promise.all(t.map(async s=>{const i=await Ue(s);if(!i)return;e.providers[s.id]=i;const r=await i.createController(s,e,a);e.details[s.id]=r,(s.detailType==="FORMITEM"||s.detailType==="MDCTRL")&&e.formItems.push(r);const n=Gt(s);n.length&&await this.initDetailControllers(n,e,r)}))}}),pu=d("FormPageState",class extends js{}),Ac=d("FormPageController",class extends su{createState(){var t;return new pu((t=this.parent)==null?void 0:t.state)}}),fu=d("FormRawItemState",class extends it{}),Ic=d("FormRawItemController",class extends ct{createState(){var t;return new fu((t=this.parent)==null?void 0:t.state)}}),mu=d("FormTabPageState",class extends it{}),yc=d("FormTabPageController",class extends ct{createState(){var t;return new mu((t=this.parent)==null?void 0:t.state)}}),Eu=d("FormTabPanelState",class extends it{}),Fc=d("FormTabPanelController",class extends ct{createState(){var t;return new Eu((t=this.parent)==null?void 0:t.state)}}),ea=d("GridColumnController",class{constructor(t,e){this.isAdaptiveColumn=!1,this.isCustomCode=!1;var a;this.model=t,this.grid=e,this.isAdaptiveColumn=t.widthUnit==="STAR",this.isAdaptiveColumn&&(this.grid.hasAdaptiveColumn=!0),(a=this.deGridDataItem)!=null&&a.customCode&&(this.isCustomCode=!0)}get context(){return this.grid.context}get params(){return this.grid.params}get enableRowEdit(){return!!(this.grid.model.enableRowEdit&&this.model.enableRowEdit)}get deGridDataItem(){var t;return(t=this.grid.model.degridDataItems)==null?void 0:t.find(e=>e.id===this.model.id)}get valueFormat(){var t;return(t=this.deGridDataItem)==null?void 0:t.format}get dataType(){var t;return(t=this.deGridDataItem)==null?void 0:t.dataType}async init(){await this.onInit()}async onInit(){}getCustomHtml(t){var e;if((e=this.deGridDataItem)!=null&&e.scriptCode)return B.execScriptFn({data:t.data},this.deGridDataItem.scriptCode,{singleRowReturn:!0,isAsync:!1})}}),Hs=d("GridRowState",class{constructor(t,e){this.errors={},this.uaColStates={},this.editColStates={},this.showRowEdit=!1,this.modified=!1,this.processing=!1,this.data=t,Object.keys(this.data).forEach(a=>{this.errors[a]===void 0&&(this.errors[a]=null)}),Object.values(e.uaColumns).forEach(a=>{a.initActionStates(this)}),Object.values(e.editColumns).forEach(a=>{this.editColStates[a.fieldName]={disabled:!1,readonly:!1,editable:ibiz.config.grid.editShowMode==="all",required:!1}})}}),Ys=d("GridService",class extends at{initUIDataMap(){var t;super.initUIDataMap(),(t=this.model.degridDataItems)==null||t.forEach(e=>{const a=e.id.toLowerCase(),s=e.appDEFieldId;let i;if(s){const r=s.toLowerCase();i=new H(a,r,{isOriginField:!0,dataType:e.dataType})}else i=new H(a,a);this.dataUIMap.set(a,i)})}async updateGridEditItem(t,e,a={}){let i=await(await this.app.deService.getService(this.model.appDataEntityId)).exec(t,e,a);return i=this.handleResponse(i),i}}),gu=d("GridController",class extends tt{constructor(){super(...arguments),this.hasAdaptiveColumn=!1,this.isMultistageHeader=!1,this.columns={},this.fieldColumns={},this.uaColumns={},this.editColumns={},this.providers={},this.aggTitle="\u5408\u8BA1"}get groupCodeListItems(){var t;return(t=this.groupFieldColumn)==null?void 0:t.codeListItems}get enableAgg(){return this.model.aggMode!=="NONE"}get allowRowEdit(){return!!this.model.enableRowEdit&&this.state.rowEditOpen}get overflowMode(){return ibiz.config.grid.overflowMode}initState(){super.initState(),this.state.rows=[],this.state.noSort=this.model.noSort===!0,this.state.size=this.model.pagingSize||20,this.state.singleSelect=this.model.singleSelect===!0,this.state.columnStates=[],this.state.aggResult={},this.state.rowEditOpen=!1}async onCreated(){await super.onCreated(),this.service=new Ys(this.model),await this.service.init(this.context),this.initColumnStates(),await this.initGridColumns(),this.dataChangeNotify=he(this.dataChangeNotify.bind(this),(t,e)=>[t[0],Array.from(new Set([...t[1],...e[1]]))],200),await this.initGroup()}async initGroup(){if(!this.model.enableGroup)return;const{groupAppDEFieldId:t,groupCodeListId:e,groupMode:a}=this.model;if(this.groupFieldColumn=Object.values(this.fieldColumns).find(r=>r.model.appDEFieldId===t),!this.groupFieldColumn)throw new m(this.model,"\u6CA1\u6709\u914D\u7F6E\u5206\u7EC4\u5C5E\u6027\u7684\u5C5E\u6027\u5217");const s=this.groupFieldColumn.model.id;if(!this.groupFieldColumn.model.appCodeListId)throw new m(this.groupFieldColumn.model,"\u5206\u7EC4\u5C5E\u6027\u7684\u5C5E\u6027\u5217".concat(s,"\u6CA1\u6709\u914D\u7F6E\u4EE3\u7801\u8868"));const i=this.state.columnStates.findIndex(r=>r.key===this.groupFieldColumn.model.codeName);if(i!==-1&&i!==0){if(this.isMultistageHeader)throw new m(this.model,"\u8BF7\u5C06\u5206\u7EC4\u5C5E\u6027\u5217".concat(s,"\u914D\u7F6E\u4E3A\u7B2C\u4E00\u5217"));const r=this.state.columnStates.splice(i,1);this.state.columnStates.unshift(...r)}if(a==="CODELIST"){if(!e)throw new m(this.model,"\u4EE3\u7801\u8868\u5206\u7EC4\u6A21\u5F0F\u9700\u8981\u914D\u7F6E\u4EE3\u7801\u8868");if(this.groupFieldColumn.model.appCodeListId!==e)throw new m(this.model,"\u5206\u7EC4\u4EE3\u7801\u8868\u4E0E\u5C5E\u6027\u5217".concat(s,"\u7684\u4EE3\u7801\u8868\u4E0D\u4E00\u81F4"))}}async afterLoad(t,e){return await super.afterLoad(t,e),await nt(Object.values(this.fieldColumns).map(async a=>{await a.loadCodeList()}),!1),this.state.rows=e.map(a=>{const s=new Hs(a,this);return this.gridStateNotify(s,"LOAD"),s}),this.state.rows.forEach(a=>{Object.values(a.uaColStates).forEach(s=>{s.update(a.data.getOrigin(),this.model.appDataEntityId)})}),this.calcGroupData(e),this.calcAggResult(e),e}calcGroupData(t){const{enableGroup:e,groupMode:a}=this.model;if(e){const s=new Map,i=a==="CODELIST",r=this.groupFieldColumn.model.id;i&&this.groupCodeListItems.forEach(n=>{s.set(n.value,[])}),t.forEach(n=>{const o=n[r];!i&&!s.has(o)&&s.set(o,[]),s.has(o)&&s.get(o).push(n)}),this.state.groups=[],s.forEach((n,o)=>{const u=this.groupCodeListItems.find(c=>c.value===o);this.state.groups.push({caption:u?.text||"".concat(o),key:o,children:n})})}}async loadRemoteAgg(){const{aggMode:t,aggAppDataEntityId:e,aggAppDEDataSetId:a}=this.model;if(t!=="ALL")return;if(!a||!e)throw new m(this.model,"\u7F3A\u5C11\u914D\u7F6E\u805A\u5408\u5B9E\u4F53\u6216\u805A\u5408\u6570\u636E\u96C6");const s=await this.getFetchParams(),r=await ibiz.hub.getApp(this.context.srfappid).deService.exec(e,a,this.context,void 0,s);r.data.length&&([this.state.remoteAggResult]=r.data)}calcAggResult(t){Object.values(this.fieldColumns).forEach(e=>{const a=e.calcFieldAgg(t);a&&(this.state.aggResult[e.model.id]=a)})}afterRemove(t){super.afterRemove(t);const e=this.findRowStateIndex(t);this.state.rows.splice(e,1),this.state.groups.forEach(a=>{if(a.children.length){const s=a.children.findIndex(i=>i.srfkey===t.srfkey);s!==-1&&a.children.splice(s,1)}})}async newRow(){const{enableRowEdit:t,enableRowNew:e}=this.model,{editShowMode:a}=ibiz.config.grid;if(!t||!e||!["row","all"].includes(a)){ibiz.log.error("\u4E0D\u652F\u6301\u65B0\u5EFA\u884C");return}if(a==="row"&&this.state.rows.find(c=>c.showRowEdit))throw new f("\u8BF7\u5148\u5B8C\u6210\u5F53\u524D\u884C\u7F16\u8F91\u4E2D\u7684\u884C\u7684\u64CD\u4F5C");const s={...this.params},i=this.calcDefaultValue({},!0);Object.assign(s,i);let r;try{r=await this.service.getDraft(this.context,s)}catch(u){throw this.actionNotification("GETDRAFTERROR",{error:u}),u}const n=r.data;Ot(n,i),this.state.items.unshift(n);const o=new Hs(n,this);this.state.rows.unshift(o),this.gridStateNotify(o,"DRAFT"),a==="row"&&this.switchRowEdit(this.state.rows[0],!0),this.actionNotification("GETDRAFTSUCCESS",{data:n})}async save(t){if(this.state.isSimple)return;const e=t.srfuf===0,a=this.findRowState(t);if(!a)throw new f("\u884C\u6570\u636E\u4E0D\u5B58\u5728");if(!a.modified){ibiz.log.debug("\u503C\u6CA1\u6709\u53D1\u751F\u6539\u53D8");return}if(a.processing){await pe(500,this.save.bind(this),[t]);return}if(!await this.validate(a))throw new f("\u884C\u6570\u636E\u6821\u9A8C\u4E0D\u901A\u8FC7\uFF0C\u4FDD\u5B58\u53D6\u6D88");let i;const r=O(this.model.appDataEntityId),n=this.context.clone();n[r]=t.srfkey;try{i=e?await this.service.create(n,t):await this.service.update(n,t)}catch(u){throw await this.evt.emit("onSaveError",void 0),this.actionNotification("".concat(e?"CREATE":"UPDATE","ERROR"),{error:u,data:a.data}),u}const o=this.findRowStateIndex(t);this.state.items.splice(o,1,i.data),a.data=i.data,a.modified=!1,this.gridStateNotify(a,"SAVE"),await this.evt.emit("onSaveSuccess",void 0)}async saveAll(){const t=this.state.rows.filter(e=>e.modified).map(e=>e.data);t.length&&await nt(t.map(e=>this.save(e)))}async initColumnsController(t){var e;const a=await ze(t);if(!a)return;this.providers[t.codeName]=a;const s=await a.createController(t,this);this.columns[t.codeName]=s,t.columnType==="DEFGRIDCOLUMN"?(this.fieldColumns[t.codeName]=s,t.enableRowEdit&&(this.editColumns[t.codeName]=s)):t.columnType==="UAGRIDCOLUMN"?this.uaColumns[t.codeName]=s:t.columnType==="GROUPGRIDCOLUMN"&&(this.isMultistageHeader=!0,await Promise.all(((e=t.degridColumns)==null?void 0:e.map(async i=>{await this.initColumnsController(i)}))||[]))}initColumnStates(){k(this.model,t=>{t.columnType!=="GROUPGRIDCOLUMN"&&this.state.columnStates.push({key:t.codeName,caption:t.caption,hidden:!!t.hideDefault,uaColumn:t.columnType==="UAGRIDCOLUMN"})},{childrenFields:["degridColumns"]}),this.calcColumnFixed()}calcColumnFixed(){const t=this.state.columnStates.filter(i=>!i.hidden),e=t.length,{frozenFirstColumn:a,frozenLastColumn:s}=this.model;t.forEach((i,r)=>{i.uaColumn?i.fixed=r+1<=Math.floor(e/2)?"left":"right":a&&r<a?i.fixed="left":s&&r>=e-s&&(i.fixed="right")})}async initGridColumns(){this.model.degridColumns&&await Promise.all(this.model.degridColumns.map(async t=>this.initColumnsController(t)))}async setRowValue(t,e,a){if(!(Object.prototype.hasOwnProperty.call(t.data,e)&&!ae(t.data[e],a))){t.data[e]=a,t.modified=!0,t.processing=!0;try{await this.dataChangeNotify(t,[e]),await this.evt.emit("onGridDataChange",{data:this.state.rows.map(s=>s.data)})}finally{t.processing=!1}}}async dataChangeNotify(t,e){await nt(Object.values(this.editColumns).map(async a=>a.dataChangeNotify(t,e)))}gridStateNotify(t,e){Object.values(this.editColumns).forEach(a=>{a.gridStateNotify(t,e)})}async validate(t){return(await Promise.all(Object.values(this.editColumns).map(a=>a.validate(t)))).findIndex(a=>!a)===-1}async toggleRowEdit(){if(!this.model.enableRowNew)throw new f("\u5F53\u524D\u8868\u683C\u4E0D\u652F\u6301\u884C\u7F16\u8F91\uFF0C\u65E0\u6CD5\u5207\u6362\u5F00\u542F\u884C\u7F16\u8F91");this.state.rowEditOpen=!this.state.rowEditOpen}async switchRowEdit(t,e,a=!0){if(!this.allowRowEdit)return;const s=e===void 0?!t.showRowEdit:e;if(t.showRowEdit!==s){if(s===!1)if(a)await this.save(t.data);else{if(t.data.srfuf===0)return t.showRowEdit=!1,this.evt.emit("onRowEditChange",{row:t}),this.remove({data:[t.data],silent:!0});t.cacheData&&(t.data=t.cacheData,delete t.cacheData)}else{if(this.state.rows.find(r=>r.showRowEdit))throw new f("\u540C\u65F6\u53EA\u80FD\u6709\u4E00\u884C\u5F00\u542F\u884C\u7F16\u8F91");if(t.data.srfuf===1){t.cacheData=A(t.data);const r=this.calcDefaultValue(t.data,!1);Object.assign(t.data,r)}}t.showRowEdit=s,Object.values(this.editColumns).forEach(i=>{t.editColStates[i.fieldName].editable=s}),this.evt.emit("onRowEditChange",{row:t})}}setSort(t,e){if(t&&e){const a=this.fieldIdNameMap.get(t).toLowerCase();super.setSort(a,e)}else{const{minorSortAppDEFieldId:a,minorSortDir:s}=this.model;if(a&&s){const i=this.fieldIdNameMap.get(a);this.state.sortQuery="".concat(i.toLowerCase(),",").concat(s.toLowerCase())}else this.state.sortQuery=""}}async updateGridEditItem(t,e){var a;const s=(a=this.model.degridEditItemUpdates)==null?void 0:a.find(l=>l.id===e);if(!s)throw new f("\u6CA1\u627E\u5230".concat(e,"\u7F16\u8F91\u5217\u66F4\u65B0"));const{appDEMethodId:i,degeiupdateDetails:r,customCode:n,scriptCode:o}=s,u=r.map(l=>l.id);let c;if(n&&o)c=B.execScriptFn({...this.getEventArgs(),data:t.data},o,{isAsync:!1});else{const l={...this.params,...t.data.getOrigin()};c=(await this.service.updateGridEditItem(i,this.context,l)).data}c&&u?.length&&await Promise.all(u.map(l=>this.setRowValue(t,l,c[l])))}async loadData(t){const{context:e}=this.handlerAbilityParams(t),a=await this.getFetchParams(t?.viewParam);let s;await this.startLoading();try{s=await this.service.fetch(e,a)}finally{await this.endLoading()}return s.data}async findAllExportColumns(t){var e;const a=ibiz.hub.getApp(this.context.srfappid),s=(e=t.dedataExportItems)==null?void 0:e.map(async i=>{const r={...i};return i.codeListId&&(r.codeList=a.codeList.getCodeList(i.codeListId),r.codeListItems=await a.codeList.get(i.codeListId)),r});if(s)return Promise.all(s)}async exportData(t){var e;this.model.dedataExportId&&!this.dataExport&&(this.dataExport=(e=this.dataEntity.appDEDataExports)==null?void 0:e.find(u=>u.id===this.model.dedataExportId),this.dataExport&&(this.allExportColumns=await this.findAllExportColumns(this.dataExport)));const a=u=>{var c;const l=new Map;this.allExportColumns&&this.allExportColumns.length>0?(c=this.allExportColumns)==null||c.forEach(p=>{p.codeListItems&&l.set(p.appDEFieldId,p.codeListItems)}):Object.keys(this.fieldColumns).forEach(p=>{this.fieldColumns[p].codeList&&l.set(p,this.fieldColumns[p].codeListItems)});const h=A(u.map(p=>p.getOrigin()));return h.forEach(p=>{Object.keys(p).forEach(C=>{var F;l.get(C)&&(p[C]=((F=l.get(C).find(v=>v.value===p[C]))==null?void 0:F.text)||p[C])})}),h},s=async()=>{var u;const c=(u=t.params)==null?void 0:u.type;let l=[];if(c==="activatedPage"&&(l=this.state.rows.map(h=>h.data)),c==="maxRowCount"||c==="customPage"){const{size:h}=this.state,{startPage:p,endPage:E}=t.params,C=c==="customPage"?{page:0,offset:(p-1)*h,size:(E-p+1)*h}:{size:1e3,page:0};l=await this.loadData({viewParam:C})}if(c==="selectedRows"&&(l=this.getData()),l.length===0)throw new f("\u65E0\u5BFC\u51FA\u6570\u636E");return a(l)},i=(u,c)=>c.map(l=>u.map(h=>l[h]));let r=[],n=[];this.allExportColumns&&this.allExportColumns.length>0?(r=this.allExportColumns.map(u=>u.appDEFieldId),n=this.allExportColumns.map(u=>u.caption)):(r=Object.keys(this.fieldColumns).map(u=>this.fieldColumns[u].model.id),n=Object.keys(this.fieldColumns).map(u=>this.fieldColumns[u].model.caption));const o=i(r,await s());await xs(n,o,this.model.logicName)}calcDefaultValue(t,e){const a={};return Object.values(this.editColumns).forEach(s=>{const{createDV:i,createDVT:r,updateDV:n,updateDVT:o}=s.editItem,u=e?r:o,c=e?i:n,l=qe({name:s.fieldName,valueType:u,defaultValue:c,valueFormat:s.valueFormat},{data:t,context:this.context,params:this.params});l!==void 0&&(a[s.fieldName]=l)}),a}findRowStateIndex(t){const a=t.srfuf===0?"tempsrfkey":"srfkey";return this.state.rows.findIndex(s=>s.data[a]===t[a])}findRowState(t){const e=this.findRowStateIndex(t);return e!==-1?this.state.rows[e]:void 0}}),Cu=d("GridFieldColumnController",class extends ea{constructor(){super(...arguments),this.codeList=void 0}get isLinkColumn(){return!!this.model.enableLinkView&&!!this.model.linkAppViewId}get hasAction(){return!!this.model.deuiactionId}async onInit(){await super.onInit(),this.loadCodeList=Vt(this.loadCodeList,300,{leading:!0,trailing:!1}),this.loadCodeList()}clickable(t){const e=t.data[this.model.codeName];return(this.isLinkColumn||this.hasAction)&&e}handlePublicParams(t,e,a){const{userParam:s}=this.model;if(!s)return{context:e,params:a};const{navigateContexts:i,navigateParams:r}=be(s);let n={};i&&t&&(n=y(i,t,a,e));const o=Object.assign(e.clone(),n);let u={};r&&t&&(u=y(r,t,a,e));const c={...a,...u};return{context:o,params:c}}async openLinkView(t,e){if(!t.data[this.model.codeName])return;const s=this.model.linkValueItem||"srfkey",i=t.data[s];if(i==null)throw new D(this.model,"\u672A\u5728\u884C\u6570\u636E\u4E2D\u53D6\u5230 ".concat(s," \u7684\u503C"));const{linkAppViewId:r}=this.model;if(!r)return;const n=Qa(t.data),o=Object.assign(this.context.clone(),{srfkey:i,...n}),u=A(this.params),{context:c,params:l}=this.handlePublicParams(t.data,o,u),h=await ibiz.commands.execute(Z.TAG,r,c,l,{event:e});h?.ok&&this.grid.load()}async triggerAction(t,e){const a=this.model.deuiactionId;await U.execAndResolved(a,{context:this.context,params:this.params,data:[t.data],view:this.grid.view,event:e})}async loadCodeList(){const t=this.model.appCodeListId;if(!t)return;const e=ibiz.hub.getApp(this.context.srfappid);this.codeList||(this.codeList=e.codeList.getCodeList(t));const a=await e.codeList.get(t,this.context,this.params);return this.codeListItems=a,a}calcFieldAgg(t){const{aggField:e,aggMode:a,aggValueFormat:s,unitName:i}=this.model;if(a==="NONE")return;const r=e||this.model.id;t=t.filter(u=>!w(u[r]));let n;if(this.grid.model.aggMode==="PAGE")switch(a){case"SUM":n=t.map(u=>u[r]).reduce((u,c)=>xt(u,c),0);break;case"AVG":n=t.map(u=>u[r]).reduce((u,c)=>xt(u,c),0)/t.length;break;case"MAX":n=Math.max(...t.map(u=>u[r]));break;case"MIN":n=Math.min(...t.map(u=>u[r]));break;default:throw new D(this.model,"\u6682\u672A\u652F\u6301\u5C5E\u6027\u5217\u805A\u5408\u6A21\u5F0F".concat(a))}else throw this.grid.model.aggMode==="ALL"?new D(this.model,"\u8FDC\u7A0B\u805A\u5408\u6682\u672A\u652F\u6301"):new D(this.grid.model,"\u6682\u672A\u652F\u6301\u805A\u5408\u6A21\u5F0F".concat(this.grid.model.aggMode));let o="".concat(n);if(s)try{o=ibiz.util.text.format("".concat(n),s)}catch{ibiz.log.error("".concat(n," \u503C\u683C\u5F0F\u5316\u9519\u8BEF"))}return o&&i&&(o+=i),o}formatValue(t=""){if(this.model.valueType!=="SIMPLE")return Zn.toText(this.model,t);const e="".concat(t);if(!this.valueFormat)return e;if(Bt.isDate(this.dataType)){const s=S(e).format(this.valueFormat);return s!=="Invalid Date"?s:e}return ibiz.util.text.format(e,this.valueFormat)}}),Pc=d("GridUAColumnController",class extends ea{initActionStates(t){var e;const{deuiactionGroup:a}=this.model;if(!a)throw new m(this.model,"\u64CD\u4F5C\u5217\u6CA1\u6709\u914D\u7F6E\u754C\u9762\u884C\u4E3A\u7EC4");if(!((e=a.uiactionGroupDetails)!=null&&e.length)){ibiz.log.debug("\u64CD\u4F5C\u5217\u754C\u9762\u884C\u4E3A\u7EC4\u6CA1\u6709\u914D\u7F6E\u754C\u9762\u884C\u4E3A");return}const s=new ft;a.uiactionGroupDetails.forEach(i=>{const r=i.uiactionId;if(r){const n=new pt(i.id,this.grid.context.srfappid,r);s.addState(i.id,n)}}),t.uaColStates[this.model.codeName]=s}async onActionClick(t,e,a){const s=t.uiactionId;await U.execAndResolved(s,{context:this.context,params:this.params,data:[e.data],view:this.grid.view,event:a})}}),bc=d("GridFieldEditColumnController",class extends Cu{constructor(){super(...arguments),this.rules=[]}get unitName(){return this.editItem.unitName}get valueFormat(){return this.model.valueFormat}get valueItemName(){if(this.editItem.editor)return this.editItem.editor.valueItemName}get fieldName(){return this.model.dataItemName}async onInit(){await super.onInit();const t=Ua(this.grid.model,this.model.codeName);t&&(this.editItem=t,this.editItem.editor&&this.editItem.editor.editorType!=="HIDDEN"&&(this.editorProvider=await bt(this.editItem.editor),this.editorProvider&&(this.editor=await this.editorProvider.createController(this.editItem.editor,this),await this.initRules())))}async initRules(){this.rules=[];const t=Me(this.grid.model.degridEditItemVRs||[],this.fieldName);t&&this.rules.push(...He(t,this.fieldName,this.valueItemName)),this.editItem.editor&&this.rules.push(...Ye(this.editItem.editor)),this.rules.length>0&&(this.validator=new Ie({[this.fieldName]:this.rules}))}async setRowValue(t,e,a){a=a||this.fieldName,await this.grid.setRowValue(t,a,e)}async dataChangeNotify(t,e){this.calcColumnDisabled(t);const a=t.editColStates[this.fieldName].required;if(this.calcColumnRequired(t),(a!==t.editColStates[this.fieldName].required||e.includes(this.fieldName)||e.includes(this.valueItemName))&&!await this.validate(t))throw new f("".concat(this.editItem.codeName,"\u6821\u9A8C\u62A5\u9519,").concat(t.errors[this.fieldName]));e.includes(this.fieldName)&&this.editItem.degridEditItemUpdateId&&await this.grid.updateGridEditItem(t,this.editItem.degridEditItemUpdateId)}gridStateNotify(t,e){this.calcColumnDisabled(t),this.calcColumnReadonly(t),this.calcColumnRequired(t)}calcColumnDisabled(t){let e=this.calcEnableCond(t);if(e&&this.grid.scheduler){const a=this.grid.scheduler.triggerItemEnable(this.fieldName,{data:[t.data]});a!==void 0&&(e=a)}t.editColStates[this.fieldName].disabled=!e}calcColumnRequired(t){let e=this.editItem.allowEmpty!==!1;if(e&&this.grid.scheduler){const a=this.grid.scheduler.triggerItemBlank(this.fieldName,{data:[t.data]});a!==void 0&&(e=a)}t.editColStates[this.fieldName].required=!e}calcColumnReadonly(t){var e;const a=!!((e=this.editItem.editor)!=null&&e.readOnly);t.editColStates[this.fieldName].readonly=a}calcEnableCond(t){const{enableCond:e}=this.editItem,a=t.data.srfuf===0;switch(e){case 0:return!1;case 1:return a;case 2:return!a;default:return!0}}async validate(t){const e=this.fieldName;if(ibiz.config.grid.editShowMode!=="cell"&&t.editColStates[e].required&&V(t.data[e]))return t.errors[e]="\u8BF7\u586B\u5199".concat(this.model.caption||""),!1;if(this.rules.length&&this.validator)try{await this.validator.validate(t.data)}catch(a){const{errors:s}=a;return t.errors[e]=s[0].message,!1}return t.errors[e]=null,!0}}),Nc=d("GridGroupColumnController",class extends ea{}),Du=d("ListService",class extends at{initUIDataMap(){var t;super.initUIDataMap(),(t=this.model.delistDataItems)==null||t.forEach(e=>{const a=e.id.toLowerCase(),s=e.appDEFieldId;let i;if(s){const r=s.toLowerCase();i=new H(a,r,{isOriginField:!0,dataType:e.dataType})}else i=new H(a,a);this.dataUIMap.set(a,i)})}}),Sc=d("ListController",class extends tt{initState(){super.initState(),this.state.noSort=this.model.noSort===!0}async onCreated(){await super.onCreated(),this.state.size=this.model.pagingSize||20,this.service=new Du(this.model),await this.service.init(this.context)}setSort(t,e){if(t&&e)super.setSort(t,e);else{const{minorSortAppDEFieldId:a,minorSortDir:s}=this.model;if(a&&s){const i=this.fieldIdNameMap.get(a);this.state.sortQuery="".concat(i.toLowerCase(),",").concat(s.toLowerCase())}else this.state.sortQuery=""}}get batchToolbarController(){return this.view.getController("".concat(this.model.name,"_batchtoolbar"))}get quickToolbarController(){return this.view.getController("".concat(this.model.name,"_quicktoolbar"))}setSelection(t){var e,a;super.setSelection(t);const s=t?.[0];(e=this.batchToolbarController)==null||e.calcButtonState(s,this.model.appDataEntityId),(a=this.quickToolbarController)==null||a.calcButtonState(s,this.model.appDataEntityId)}async loadMore(){this.state.total>this.state.items.length&&await this.load({isLoadMore:!0})}async afterLoad(t,e){return await this.handleDataGroup(),e}setData(t){this.state.items=t}getAllData(){return this.state.items}async handleDataGroup(){const{enableGroup:t,groupMode:e}=this.model;t&&e&&(e==="AUTO"?this.handleAutoGroup():e==="CODELIST"&&await this.handleCodeListGroup())}handleAutoGroup(){const{groupAppDEFieldId:t}=this.model;if(t){const{items:e}=this.state,a=new Map;e.forEach(i=>{const r=a.get(i[t])||[];r.push(i),a.set(i[t],r)});const s=[];a.forEach((i,r)=>{s.push({caption:r,key:r,children:[...i]})}),this.state.groups=s}}async handleCodeListGroup(){const{groupAppDEFieldId:t,groupCodeListId:e}=this.model;if(t&&e){const{items:a}=this.state,s=[],r=await ibiz.hub.getApp(this.context.srfappid).codeList.get(e,this.context,this.params),n=[];r.forEach(u=>{const c=a.filter(l=>l[t]===u.value);s.push({caption:u.text,key:u.value,children:[...c]}),n.push(u.value)});const o=a.filter(u=>n.indexOf(u[t])===-1);o.length>0&&s.push({caption:"\u5176\u4ED6",key:"\u5176\u4ED6",children:[...o]}),this.state.groups=s}}}),wu=d("PanelController",class extends Y{constructor(t,e,a,s,i){super(t,e,a,s),this.panelItems={},this.providers={},this.container=i}get _evt(){return this.evt}get data(){return this.state.data}initState(){super.initState(),this.state.data={}}setInputData(t){this.inputData=t}getData(){return[this.data]}async onCreated(){var t;await super.onCreated(),await this.initPanelItemControllers(),(t=this.scheduler)!=null&&t.hasControlEventTrigger&&this._evt.on("onPanelItemEvent",e=>{this.scheduler.triggerControlEvent(e.panelItemName,e.panelItemEventName,e)})}async onMounted(){this.load()}async onDestroyed(){var t,e;await super.onDestroyed(),(e=(t=this.data).destroy)==null||e.call(t),Object.values(this.panelItems).forEach(a=>{a.destroy()})}async initPanelItemControllers(t=this.model.rootPanelItems,e=this,a=void 0){t&&await Promise.all(t.map(async s=>{var i,r;const n=await cs(s);if(!n)return;e.providers[s.id]=n;const o=await n.createController(s,e,a);e.panelItems[s.id]=o,(i=s.panelItems)!=null&&i.length&&!o.isDataContainer&&await this.initPanelItemControllers(s.panelItems,e,o),(r=s.panelTabPages)!=null&&r.length&&await this.initPanelItemControllers(s.panelTabPages,e,o)}))}async load(){var t,e;const a=await this.prepareData();if(!a)throw new f("\u672A\u83B7\u53D6\u5230\u9762\u677F\u6570\u636E");const s=this.convertData(a);(e=(t=this.data).destroy)==null||e.call(t),this.state.data=s,this.panelStateNotify("LOAD")}async prepareData(){let t;switch(this.model.dataMode){case 1:this.inputData&&(t=this.inputData);break;default:t=this.inputData||{}}return t}convertData(t){const e=Ha(this.model),a=e.map(i=>i.id),s=new _n(e,t);return s._evt.on("change",i=>{a.includes(i)&&this.dataChangeNotify([i])}),s}dataChangeNotify(t){Object.values(this.panelItems).forEach(e=>{e.dataChangeNotify(t)})}panelStateNotify(t){Object.values(this.panelItems).forEach(e=>{e.panelStateNotify(t)})}async setDataValue(t,e){Object.prototype.hasOwnProperty.call(this.state.data,t)&&this.state.data[t]===e||(this.state.data[t]=e)}initControlScheduler(t=[]){const e=[...t];k(this.model,a=>{a.controlLogics&&e.push(...a.controlLogics)},{childrenFields:["rootPanelItems","panelItems","panelTabPages"]}),super.initControlScheduler(e)}}),Rc=d("ViewLayoutPanelController",class extends wu{async onCreated(){var t;this.preprocessModel(),await super.onCreated(),(t=this.scheduler)!=null&&t.hasControlEventTrigger&&this.evt.on("onControlEvent",e=>{this.scheduler.triggerControlEvent(e.triggerControlName,e.triggerEventName,e.triggerEvent)})}registerToCtx(){}preprocessModel(t){var e;const a=s=>{const i=[];return s.forEach(r=>{r.itemType==="CONTAINER"&&r.predefinedType==="PANELPART"?i.push(...r.panelItems||[]):i.push(r)}),i.forEach(r=>{r.itemType==="CONTAINER"&&this.preprocessModel(r)}),i};t?t.panelItems=a(t.panelItems||[]):(e=this.model.rootPanelItems)!=null&&e.length&&(this.model.rootPanelItems=a(this.model.rootPanelItems||[]))}}),vu=d("PanelItemState",class{constructor(t){this.parent=t,this.disabled=!1,this.layout={width:"",height:"",extraStyle:{},extraClass:[],contentStyle:{}},this.class={container:[],containerDyna:[],label:[],labelDyna:[]},this.required=!1;let e=!0;Object.defineProperty(this,"visible",{enumerable:!0,configurable:!0,get(){var s;return((s=this.parent)==null?void 0:s.visible)!==!1&&e},set(s){return e=s,!0}});let a;Object.defineProperty(this,"keepAlive",{enumerable:!0,configurable:!0,get(){return a!==void 0?a:this.parent?this.parent.keepAlive:!1},set(s){return a=s,!0}})}}),Lc=d("PanelItemController",class{constructor(t,e,a){this.model=t,this.panel=e,this.parent=a,this.dynaLogicResult={visible:void 0,disabled:void 0,required:void 0},this.state=this.createState()}get dataParent(){return this.findDataParent(this)}get data(){return this.dataParent.data}get containerClass(){return[...this.state.class.container,...this.state.class.containerDyna]}get labelClass(){return[...this.state.class.label,...this.state.class.labelDyna]}async init(){await this.onInit()}async onInit(){const{layoutPos:t,sysCss:e,labelSysCss:a}=this.model;if(t){const{width:s,height:i}=Ut(t);this.state.layout.width="".concat(s),this.state.layout.height="".concat(i)}e?.cssName&&this.state.class.container.push(e.cssName),a?.cssName&&this.state.class.label.push(a.cssName)}destroy(){}createState(){var t;return new vu((t=this.parent)==null?void 0:t.state)}async dataChangeNotify(t){this.calcDynamicLogic(t),this.calcItemDisabled(this.data),this.calcItemVisible(this.data),this.calcItemRequired(this.data),this.calcDynaClass(this.data)}async panelStateNotify(t){this.calcDynamicLogic([],!0),this.calcItemDisabled(this.data),this.calcItemVisible(this.data),this.calcItemRequired(this.data),this.calcDynaClass(this.data)}calcItemDisabled(t){let{disabled:e}=this.dynaLogicResult;if(e!==!0&&this.panel.scheduler){const a=this.panel.scheduler.triggerItemEnable(this.model.id,{data:[t]});a!==void 0&&(e=!a)}e!==void 0&&(this.state.disabled=e)}calcItemVisible(t){let{visible:e}=this.dynaLogicResult;if(e!==!1&&this.panel.scheduler){const a=this.panel.scheduler.triggerItemVisible(this.model.id,{data:[t]});a!==void 0&&(e=a)}e!==void 0&&(this.state.visible=e)}calcItemRequired(t){let{required:e}=this.dynaLogicResult;if(e!==!0&&this.panel.scheduler){const a=this.panel.scheduler.triggerItemBlank(this.model.id,{data:[t]});a!==void 0&&(e=!a)}e!==void 0&&(this.state.required=e)}calcDynamicLogic(t,e=!1){var a;this.parent&&!this.parent.state.visible||(a=this.model.panelItemGroupLogics)==null||a.forEach(s=>{const i=s.relatedItemNames||[];if(e||Mt(i,t))try{const r=Xt(this.data,s);switch(s.logicCat){case"ITEMBLANK":this.dynaLogicResult.required=!r;break;case"ITEMENABLE":this.dynaLogicResult.disabled=!r;break;case"PANELVISIBLE":this.dynaLogicResult.visible=r;break;default:}}catch(r){ibiz.log.error(r)}})}findDataParent(t){const{parent:e}=t;return e?e.isDataContainer?e:this.findDataParent(e):t.panel}calcDynaClass(t){if(this.model.dynaClass){const e=Dt(this.model.dynaClass,t);e.length&&(this.state.class.containerDyna=e)}if(this.model.labelDynaClass){const e=Dt(this.model.labelDynaClass,t);e.length&&(this.state.class.labelDyna=e)}}onClick(){this.panel.evt.emit("onPanelItemEvent",{panelItemName:this.model.id,panelItemEventName:"onClick"})}}),Tc=d("PickupViewPanelController",class extends Y{async onCreated(){await super.onCreated(),this.mountCounter.enroll(this.model.embeddedAppDEViewId)}updateContextParams(t){super.updateContextParams(t),this.initNavParam()}initNavParam(){const{navigateContexts:t,navigateParams:e}=this.model,a=this.context.clone(),s={...this.params};t&&Object.assign(a,y(t,this.params,this.context)),e&&Object.assign(s,y(e,this.params,this.context)),this.state.context=a,this.state.params=s}setEmbedView(t){this.embedView=t,this.embedView.state.isMounted?this.mountCounter.attend(this.model.embeddedAppDEViewId):this.embedView.evt.on("onMounted",()=>{this.mountCounter.attend(this.model.embeddedAppDEViewId)}),this.embedView.evt.on("onSelectionChange",e=>{this.evt.emit("onSelectionChange",e)}),this.embedView.evt.on("onDataActive",e=>{this.evt.emit("onDataActive",{data:e.data})})}async getSelectedData(){return await this.embedView.call("GetData")}async getAllData(){return await this.embedView.call("GetAllData")}}),Au=class{constructor(t,e){this.model=t,this.searchBar=e;var a;let s;t.appDEFieldId&&(s=wt(e.appDataEntity,t.appDEFieldId)),this.fieldName=s?s.codeName.toLowerCase():t.id,this.label=t.caption||s?.logicName||t.id,this.valueOP=(a=t.defsearchMode)==null?void 0:a.valueOP}get context(){return this.searchBar.context}get params(){return this.searchBar.params}async init(){if(!this.model.editor)throw new m(this.model,"\u7F3A\u5C11\u7F16\u8F91\u5668\u6A21\u578B");this.editorProvider=await bt(this.model.editor),this.editorProvider&&(this.editor=await this.editorProvider.createController(this.model.editor,this))}},Bc=d("SearchBarController",class extends Y{constructor(){super(...arguments),this.placeHolder="",this.filterControllers=[]}initState(){super.initState(),this.state.query="",this.state.selectedGroupItem=null,this.state.visible=!!(this.model.enableQuickSearch||this.model.enableGroup||this.model.enableFilter),this.model.enableFilter&&this.resetFilter()}async onCreated(){await super.onCreated();const t=await ibiz.hub.getAppDataEntity(this.model.appDataEntityId,this.context.srfappid);t&&(this.appDataEntity=t,this.calcQuickSearchPlaceholder()),await this.initSearchBarFilters()}calcQuickSearchPlaceholder(){if(!this.appDataEntity)return;const t=this.appDataEntity.appDEFields.filter(e=>e.enableQuickSearch);if(t.length){const e=[];t.forEach(a=>{a.lnlanguageRes&&a.lnlanguageRes.lanResTag?e.push(ibiz.i18n.t(a.lnlanguageRes.lanResTag,a.logicName)):a.logicName&&e.push(a.logicName)}),e.length>0&&(this.placeHolder=e.join("\u3001"))}}handleInput(t){this.state.query=t}onSearch(){this.evt.emit("onSearch",void 0)}getFilterParams(){var t;const e={};if(this.state.query&&(e.query=this.state.query),(t=this.state.selectedGroupItem)!=null&&t.data){const s=B.execSingleLine(this.state.selectedGroupItem.data),i=y(s,this.params,this.context);Object.assign(e,i)}const a=this.calcFilters();return a&&(e.filters=a),e}resetFilter(){this.state.filterNodes=[{leaf:!1,logicType:"AND",children:[{leaf:!0,field:null,valueOP:null,value:null}]}]}async initSearchBarFilters(){var t;(t=this.model.searchBarFilters)!=null&&t.length&&(this.model.searchBarFilters.forEach(e=>{const a=new Au(e,this);this.filterControllers.push(a)}),await Promise.all(this.filterControllers.map(e=>e.init())))}calcFilters(){if(!this.model.enableFilter)return;let t=!1,e=!1;if(k(this.state.filterNodes[0],a=>{a.leaf&&(a.field&&a.valueOP&&!w(a.value)?t=!0:e=!0)}),t&&!e)return this.formatFilters(this.state.filterNodes[0])}formatFilters(t){return t.leaf?{["".concat(t.field)]:{["$".concat(t.valueOP.toLowerCase())]:t.value}}:{["$".concat(t.logicType.toLowerCase())]:t.children.map(e=>this.formatFilters(e))}}}),_c=d("TabExpPanelController",class extends Y{constructor(){super(...arguments),this.isShowCaption=!0,this.isShowIcon=!1}get isCache(){return this.controlParams.expcache==="CACHE"?!0:this.controlParams.expcache==="NO_CACHE"?!1:ibiz.config.view.expCacheMode.includes(this.model.controlType)}get routeDepth(){return this.view.modal.routeDepth}initState(){super.initState(),this.state.tabPages=[],this.state.activeName=""}async onCreated(){await super.onCreated(),this.layoutPanel=this.view.layoutPanel,this.initTabPages(),this.initIconCaption()}initTabPages(){const t=this.model.controls,e=[];t.forEach(a=>{e.push({caption:a.caption,tabTag:a.id,class:a.sysCss?[a.sysCss.cssName]:[],sysImage:a.sysImage})}),this.state.tabPages=e,e.length>0&&this.initDefaultPage()}initIconCaption(){if(this.params.showmode)switch(this.params.showmode){case"ICONANDSHORTWORD":this.isShowIcon=!0,this.isShowCaption=!0;break;case"ICON":this.isShowIcon=!0,this.isShowCaption=!1;break;case"SHORTWORD":this.isShowIcon=!1,this.isShowCaption=!0;break}}initDefaultPage(){if(this.state.defaultTabName){const t=this.state.tabPages.find(e=>e.tabTag===this.state.defaultTabName);if(t){this.state.activeName=t.tabTag,this.changeToTab(this.activeTabViewPanelModel,this.routeDepth!==void 0&&Xe(this.routeDepth));return}}this.state.activeName=this.state.tabPages[0].tabTag,this.handleTabChange()}changeToTab(t=this.activeTabViewPanelModel,e=!1){const a=this.getNavViewMsg(t);e===!0&&(a.isRoutePushed=!0),this.evt.emit("onNavViewChange",{navViewMsg:a})}get activeTabViewPanelModel(){const{activeName:t}=this.state;return this.model.controls.find(a=>a.id===t)}async handleTabChange(){this.activeTabViewPanelModel&&this.changeToTab()}prepareParams(t){const{navDER:e,navFilter:a,navigateContexts:s,navigateParams:i,appDataEntityId:r}=t,n={deName:O(r),navFilter:a,pickupDEFName:e?.pickupDEFName,navContexts:s,navParams:i},o={context:this.context,params:this.params,data:{}},{resultContext:u,resultParams:c}=Wt(n,o),l=Object.assign(this.context.clone(),u,{currentSrfNav:this.state.activeName}),h={...this.params,...c};return{context:l,params:h}}getNavViewMsg(t){const{context:e,params:a}=this.prepareParams(t);return{key:t.codeName.toLowerCase(),context:e,params:a,viewId:t.embeddedAppDEViewId,isCache:this.isCache}}}),qs=d("TreeService",class extends at{async fetchChildNodes(t,e){const{hasQuery:a}=e;let s=[];if(t){const i=Le(this.model,{parentId:t?.nodeId,hasQuery:a});if(i.length===0)return;(await nt(i.map(async n=>{const o=Re(this.model,n.childDETreeNodeId);return this.fetchNodeDatasByType(o,n,t,e)}),!1)).forEach(n=>{s.push(...n)})}else{const i=Se(this.model);s=await this.fetchNodeDatasByType(i,void 0,void 0,e)}return s}async fetchNodeDatasByType(t,e,a,s){const i=Le(this.model,{parentId:t.id,hasQuery:s.hasQuery}).length===0,r={...s,leaf:i};let n=[];switch(t.treeNodeType){case"STATIC":n=[await this.getStaticNodeData(t,e,a,r)];break;case"DE":n=await this.getDENodeDatas(t,e,a,r);break;case"CODELIST":n=await this.getCodeListNodeDatas(t,e,a,r);break;default:throw new D(t,"".concat(t.treeNodeType,"\u8282\u70B9\u7C7B\u578B\u672A\u652F\u6301"))}const{expandFirstOnly:o,expanded:u,rootNode:c}=t,l=c&&!this.model.rootVisible;return i||await Promise.all(n.map(async(h,p)=>{var E;if(u&&(!o||o&&p===0)||(E=s.defaultExpandedKeys)!=null&&E.length&&s.defaultExpandedKeys.includes(h.id)||l){const C=await this.fetchChildNodes(h,s);h.children=C}})),n}async getStaticNodeData(t,e,a,s){return new Nn(t,a,{parentValueLevel:e?.parentValueLevel,leaf:!!s.leaf})}getNodeRSFilterParams(t,e,a){const{parentValueLevel:s,navigateContexts:i,navigateParams:r,parentFilter:n,parentDER1N:o}=t,u=o?.pickupDEFName,c={...a.params},l={...a.context,...e?.context||{}};let h={},p;if(e){p=e;for(let P=1;P<s;P++)p=p?.parent}let E,C;if(p){h=p.deData||{};const P=Re(this.model,p.nodeId);P.appDataEntityId&&(C=O(P.appDataEntityId)),E=p.value}const{resultContext:F,resultParams:v}=Wt({deName:C,navFilter:n?"n_".concat(n,"_eq"):void 0,pickupDEFName:u,navParams:r,navContexts:i},{derValue:E,context:l,params:c,data:h});return Object.assign(l,F),Object.assign(c,v),{context:l,params:c,navContext:F,navParams:v}}async getDENodeDatas(t,e,a,s){const{appDEDataSetId:i,appDataEntityId:r}=t,{context:n,params:o,navContext:u,navParams:c}=e?this.getNodeRSFilterParams(e,a,s):{context:s.context,params:s.params,navContext:{},navParams:{}};o.size=t.maxSize||1e3,t.sortAppDEFieldId&&Object.assign(o,{sort:"".concat(t.sortAppDEFieldId.toLowerCase(),",").concat(t.sortDir?t.sortDir.toLowerCase():"asc")});const l=await this.app.deService.exec(r,i,n,o);return l.data.length?l.data.map(p=>new Ls(t,a,{data:p,leaf:!!s.leaf,navContext:u,navParams:c})):[]}async getCodeListNodeDatas(t,e,a,s){const{context:i,params:r,navContext:n,navParams:o}=e?this.getNodeRSFilterParams(e,a,s):{context:s.context,params:s.params,navContext:{},navParams:{}},u=await this.app.codeList.get(t.codeListId,i,r);return u.length?u.map(l=>new bn(t,a,{data:l,leaf:!!s.leaf,navContext:n,navParams:o})):[]}}),Oc=d("TreeController",class extends tt{constructor(){super(...arguments),this.contextMenus={}}initState(){super.initState(),this.state.defaultExpandedKeys=[],this.state.expandedKeys=[],this.state.navigational=!1,this.state.size=0}async onCreated(){await super.onCreated(),this.state.expandedKeys=[...this.state.defaultExpandedKeys],this.service=new qs(this.model),await this.service.init(this.context),this.model.detreeNodes.forEach(t=>{var e,a;(a=(e=t.decontextMenu)==null?void 0:e.detoolbarItems)!=null&&a.length&&(this.contextMenus[t.decontextMenu.id]=new qo(t.decontextMenu,this.context,this.params,this.ctx))}),await Promise.all(Object.values(this.contextMenus).map(t=>t.created()))}async load(t={}){const e=t.isInitialLoad===!0;e&&await this.startLoading();let a;try{a=await this.loadNodes()}finally{e&&await this.endLoading()}return await this.afterLoad(t,a),this.state.isLoaded=!0,await this.evt.emit("onLoadSuccess",{isInitialLoad:e}),a}async loadNodes(t){const e=await this.getFetchParams(),a=!!e.query;this.state.isLoading=!0;let s;try{s=await this.service.fetchChildNodes(t,{context:this.context.clone(),params:e,hasQuery:a,defaultExpandedKeys:this.state.expandedKeys})||[]}finally{this.state.isLoading=!1}return t?t.children=s:this.state.rootNodes=s,this.state.items=[],k({children:this.state.rootNodes},i=>{this.state.items.push(i)}),this.state.expandedKeys=this.calcExpandedKeys(s),s}async onTreeNodeClick(t){if(this.state.navigational){const e=this.getNodeModel(t.nodeId);if(!e?.navAppViewId)return}if(this.state.singleSelect){const{selectedData:e}=this.state,a=e.filter(s=>s.id!==t.id);a.length===e.length?this.setSelection(this.state.singleSelect?[t]:e.concat([t])):this.setSelection(a)}this.state.mdctrlActiveMode===1&&await this.setActive(t)}onExpandChange(t,e){const a=this.state.expandedKeys.includes(t.id);if(e&&!a)this.state.expandedKeys.push(t.id);else if(!e&&a){const s=this.state.expandedKeys.indexOf(t.id);s!==-1&&this.state.expandedKeys.splice(s,1)}}async onDbTreeNodeClick(t){this.state.mdctrlActiveMode===2&&await this.setActive(t)}setActive(t){const e=this.parseTreeNodeData(t);return this.evt.emit("onActive",{...e,nodeData:t})}setSelection(t){const e=t.map(s=>s.id),a=this.state.items.filter(s=>e.includes(s.id));super.setSelection(a)}getNodeModel(t){var e;return(e=this.model.detreeNodes)==null?void 0:e.find(a=>a.id===t)}async doUIAction(t,e,a){const s=this.getEventArgs(),i=this.parseTreeNodeData(e),r=await U.exec(t,{...s,...i,event:a});if(r.closeView)this.view.closeView();else if(r.refresh)switch(r.refreshMode){case 1:this.refreshNodeChildren(e);break;case 2:this.refreshNodeChildren(e,!0);break;case 3:this.refresh();break}}parseTreeNodeData(t){return{data:[{...t,...t.deData||{}}],context:Object.assign(this.context.clone(),t.context||{}),params:{...this.params,...t.params||{}}}}calcExpandedKeys(t){let e=[...this.state.expandedKeys];return k({children:t},a=>{var s;(s=a.children)!=null&&s.length&&e.push(a.id)}),e=Array.from(new Set(e)),e}async refreshNodeChildren(t,e=!1){const a=t.srfkey?"srfkey":"id",s=this.state.items.find(n=>n[a]===t[a]);if(!s){ibiz.log.error("\u627E\u4E0D\u5230\u5BF9\u5E94\u7684\u6811\u8282\u70B9\u6570\u636E",t);return}if(e){const{parent:n}=s;if(!n||!this.model.rootVisible&&this.state.rootNodes.includes(n)){this.refresh();return}}const i=e?s.parent:s,r=await this.loadNodes(i);this.evt.emit("onAfterRefreshParent",{parentNode:i,children:r})}async expandNodeByKey(t){const e=t.filter(s=>!this.state.expandedKeys.includes(s));if(e.length===0)return;const a=this.state.items.filter(s=>e.includes(s.id));this.state.expandedKeys.push(...e),a.length!==0&&await Promise.all(a.map(s=>this.loadNodes(s)))}}),Iu=d("WizardPanelService",class extends ee{async initialize(t,e={},a={}){var s;const i=(s=this.model.initControlAction)==null?void 0:s.appDEMethodId;let r=await this.exec(i,t,e,a);return r=this.handleResponse(r),r}async finish(t,e={},a={}){var s;const i=(s=this.model.finishControlAction)==null?void 0:s.appDEMethodId;let r=await this.exec(i,t,e,a);return r=this.handleResponse(r),r}}),Mc=d("WizardPanelController",class extends Y{constructor(){super(...arguments),this.tagHistory=[],this.providers={},this.firstForm=void 0,this.formControllers=new Map,this.steps=[],this.stepTags={}}initState(){super.initState()}async onCreated(){var t,e;await super.onCreated(),this.model.dewizard.dewizardForms.forEach(s=>{var i,r,n;s.firstForm&&(this.firstForm=s);const o="".concat(this.model.name,"_form_").concat((i=s.formTag)==null?void 0:i.toLowerCase()),u=(n=(r=this.model.dewizard)==null?void 0:r.dewizardSteps)==null?void 0:n.find(l=>l.id===s.dewizardStepId),c=u?.stepTag;this.stepTags[o]=c}),(e=(t=this.model.dewizard)==null?void 0:t.dewizardSteps)==null||e.forEach(s=>{this.steps.push(s.stepTag)}),this.service=new Iu(this.model),await this.service.init(this.context);const{deeditForms:a}=this.model;a&&a.length>0&&await Promise.all(a.map(async s=>{const{formTag:i}=s.dewizardForm;if(i){const r=await dt(s);r&&(this.providers[i]=r)}}))}get activeWizardForm(){const{activeFormTag:t}=this.state,e=this.model.dewizard.dewizardForms.find(a=>a.formTag===t);return e||ibiz.log.debug("\u627E\u4E0D\u5230".concat(t,"\u7684\u5411\u5BFC\u8868\u5355")),e}get activeFormController(){const{activeFormTag:t}=this.state,e=this.formControllers.get(t);if(!e)throw new f("\u627E\u4E0D\u5230".concat(t,"\u7684\u8868\u5355\u63A7\u5236\u5668"));return e}onFormMounted(t,e){const a=e.ctrl;this.formControllers.set(t,a),a.load()}onFormSaved(t){const e=t.data[0],a=O(this.model.appDataEntityId);!this.context[a]&&e&&e.srfkey&&(this.context[a]=e.srfkey)}getWizardFormByTag(t){var e;if(!((e=this.model.dewizard)!=null&&e.dewizardForms))throw new f("\u6CA1\u6709\u914D\u7F6E\u5411\u5BFC\u8868\u5355\u96C6\u5408");const a=this.model.dewizard.dewizardForms.find(s=>s.formTag===t);if(!a)throw new f("\u627E\u4E0D\u5230\u6807\u8BC6\u4E3A".concat(t,"\u7684\u5411\u5BFC\u8868\u5355"));return a}async initialize(){var t;if((t=this.model.initControlAction)==null?void 0:t.appDEMethodId){const a=await this.service.initialize(this.context,this.params),s=O(this.model.appDataEntityId);if(a.data&&a.data.srfkey&&(this.context[s]=a.data.srfkey),a.data&&this.model.stateAppDEFieldId&&a.data[this.model.stateAppDEFieldId]){const i=this.getWizardFormByTag(a.data[this.model.stateAppDEFieldId]);i&&(this.state.activeFormTag=i.formTag)}}!this.state.activeFormTag&&this.firstForm&&(this.state.activeFormTag=this.firstForm.formTag,this.tagHistory.push(this.firstForm.formTag))}async finish(){await this.service.finish(this.context,this.params),this.evt.emit("onFinishSuccess",void 0)}async onPrevClick(){const t=await this.activeFormController.goBack();let e;if(this.model.stateAppDEFieldId&&t[this.model.stateAppDEFieldId]?this.getWizardFormByTag(t[this.model.stateAppDEFieldId])&&(e=t[this.model.stateAppDEFieldId]):(e=this.tagHistory[this.tagHistory.length-1],this.tagHistory.pop()),!e)throw new f("\u6CA1\u6709\u4E0A\u4E00\u4E2A\u8868\u5355");this.state.activeFormTag=e}async onNextClick(){const t=await this.activeFormController.save();let e;if(t.srfnextform)this.getWizardFormByTag(t.srfnextform)&&(e=t.srfnextform,this.tagHistory.push(e));else if(this.model.stateAppDEFieldId&&t[this.model.stateAppDEFieldId])this.getWizardFormByTag(t[this.model.stateAppDEFieldId])&&(e=t[this.model.stateAppDEFieldId]);else{const{formTag:a}=this.activeWizardForm,s=this.model.dewizard.dewizardSteps;if(s&&a){const i=s.findIndex(o=>o.stepTag===a),r=s[i+1];if(!r)throw new f("\u627E\u4E0D\u5230\u4E0B\u4E00\u4E2A\u5411\u5BFC\u6B65\u9AA4");const n=this.getWizardFormByTag(r.stepTag);n&&n.formTag&&(e=n.formTag)}}if(!e)throw new f("\u627E\u4E0D\u5230\u4E0B\u4E00\u4E2A\u5411\u5BFC\u8868\u5355");this.state.activeFormTag=e,this.tagHistory.push(e)}async onFinishClick(){await this.activeFormController.save(),await this.finish()}}),yu=d("MDCtrlService",class extends at{initUIDataMap(){var t;super.initUIDataMap(),(t=this.model.delistDataItems)==null||t.forEach(e=>{const a=e.id.toLowerCase(),s=e.appDEFieldId;let i;if(s){const r=s.toLowerCase();i=new H(a,r,{isOriginField:!0,dataType:e.dataType})}else i=new H(a,a);this.dataUIMap.set(a,i)})}}),oe=d("MobMDCtrlRowState",class{constructor(t,e){this.data=t,this.controller=e,this.uaColStates={},this.data=t}}),xc=d("MDCtrlController",class extends tt{initState(){super.initState(),this.state.rows=[],this.state.noSort=this.model.noSort===!0,this.state.mdctrlActiveMode=1}async onCreated(){await super.onCreated(),this.service=new yu(this.model),await this.service.init(this.context),this.setSort()}setSort(t,e){if(t&&e)super.setSort(t,e);else{const{minorSortAppDEFieldId:a,minorSortDir:s}=this.model;a&&s?this.state.sortQuery="".concat(a.toLowerCase(),",").concat(s.toLowerCase()):this.state.sortQuery=""}}async loadMore(){this.state.total>this.state.items.length&&!this.state.isLoading&&await this.load({isLoadMore:!0})}async refresh(){await this.load({isInitialLoad:!0})}async afterLoad(t,e){return t.isInitialLoad&&(this.state.rows=[]),e&&e.length>0&&this.state.rows.push(...e.map(a=>{const s=new oe(a,this);return this.initActionStates(s),s})),await this.initGroupCodeListItems(),await this.handleDataGroup(),super.afterLoad(t,e)}setData(t){const e=t.map(a=>new oe(a,this));this.state.rows=e}getAllData(){return this.state.rows.map(t=>t.data)}async onActionClick(t,e,a){const s=t.uiactionId;await U.execAndResolved(s,{context:this.context,params:this.params,data:[e.data],view:this.view,event:a})}initActionStates(t){const{deuiactionGroup:e,deuiactionGroup2:a}=this.model;e&&this.initUIActionGroup(t,e),a&&this.initUIActionGroup(t,a)}initUIActionGroup(t,e){var a;(a=e.uiactionGroupDetails)!=null&&a.length||ibiz.log.debug("\u64CD\u4F5C\u5217\u754C\u9762\u884C\u4E3A\u7EC4\u6CA1\u6709\u914D\u7F6E\u754C\u9762\u884C\u4E3A");const s=new ft;(e.uiactionGroupDetails||[]).forEach(r=>{const n=r.uiactionId;if(n){const o=new pt(r.id,this.context.srfappid,n);s.addState(r.id,o)}}),s.update(t.data.getOrigin()),t.uaColStates[e.id]=s}async handleDataGroup(){const{enableGroup:t,groupMode:e,groupAppDEFieldId:a}=this.model;if(t&&e){if(!a)throw new m(this.model,"\u5206\u7EC4\u5C5E\u6027\u6CA1\u6709\u914D\u7F6E");e==="AUTO"?this.handleAutoGroup():e==="CODELIST"&&await this.handleCodeListGroup()}}handleAutoGroup(){const{groupAppDEFieldId:t}=this.model;if(t){const{items:e}=this.state,a=new Map;e.forEach(i=>{const r=i[t];w(r)||(a.has(r)||a.set(r,[]),a.get(r).push(new oe(i,this)))});const s=[];a.forEach((i,r)=>{s.push({caption:r,key:r,children:[...i]})}),this.state.groups=s}}async initGroupCodeListItems(){const{groupCodeListId:t}=this.model;if(!t)return;const e=ibiz.hub.getApp(this.context.srfappid);this.groupCodeListItems=await e.codeList.get(t,this.context,this.params)}async handleCodeListGroup(){const{groupAppDEFieldId:t,groupCodeListId:e}=this.model;if(!e)throw new m(this.model,"\u5206\u7EC4\u4EE3\u7801\u8868\u6CA1\u6709\u914D\u7F6E");const{items:a}=this.state,s=new Map;this.groupCodeListItems.forEach(r=>{s.set(r.value,[])}),a.forEach(r=>{const n=r[t],o=s.get(n);o&&o.push(new oe(r,this))});const i=[];s.forEach((r,n)=>{const o=this.groupCodeListItems.find(u=>u.value===n);i.push({caption:o.text,key:o.value,children:r})}),this.state.groups=i}}),Fu=d("KanbanService",class extends zs{async updateGroup(t,e){var a;const s=((a=this.model.updateGroupControlAction)==null?void 0:a.appDEMethodId)||"update";let i=await this.exec(s,t,e.getOrigin());return i=this.handleResponse(i),i}}),Vc=d("KanbanController",class extends $o{get enableEditOrder(){return this.model.enableCardEditOrder===!0}get enableEditGroup(){return this.model.enableCardEditGroup===!0}async initControlService(){this.service=new Fu(this.model),await this.service.init(this.context)}initState(){super.initState(),this.state.size=this.model.pagingSize||1e3,this.state.updating=!1,this.state.draggable=this.enableEditOrder||this.enableEditGroup}async onCreated(){await super.onCreated()}sortItems(t){const e=this.model.minorSortAppDEFieldId,{minorSortDir:a}=this.model;if(!e)throw new m(this.model,"\u6392\u5E8F\u5C5E\u6027\u6CA1\u914D\u7F6E");if(!a)throw new m(this.model,"\u6392\u5E8F\u65B9\u5411\u6CA1\u914D\u7F6E");const s=a==="ASC";t.forEach(i=>{const r=i[e];if(w(r))i[e]=0;else{const n=Number(r);if(Number.isNaN(n))throw new f("".concat(i.srfmajortext,"\u7684\u6392\u5E8F\u5C5E\u6027\u65E0\u6CD5\u8F6C\u6362\u6210\u6570\u503C"))}}),t.sort((i,r)=>s?i[e]-r[e]:r[e]-i[e])}async afterLoad(t,e){return this.sortItems(this.state.items),super.afterLoad(t,e)}handleDataGroup(){if(!this.model.enableGroup||this.model.groupMode==="NONE")throw new f("\u770B\u677F\u90E8\u4EF6\u5FC5\u987B\u5F00\u542F\u5206\u7EC4");return super.handleDataGroup()}async onDragChange(t){if(!this.enableEditGroup&&t.from!==t.to){ibiz.message.warning("\u5F53\u524D\u770B\u677F\u4E0D\u5141\u8BB8\u8C03\u6574\u5206\u7EC4\uFF01");return}const e=this.model.minorSortDir==="ASC",{from:a,to:s,fromIndex:i,toIndex:r}=t,n=this.model.groupAppDEFieldId,o=this.model.minorSortAppDEFieldId,u=[],c=this.state.groups.find(I=>I.key===a),l=this.state.groups.find(I=>I.key===s);if(!this.enableEditOrder){if(t.from===t.to){ibiz.message.warning("\u5F53\u524D\u770B\u677F\u4E0D\u5141\u8BB8\u8C03\u6574\u6B21\u5E8F");return}const I=c.children[i];return I[n]=t.to,this.updateChangedItems([I])}const h=I=>I+(100-I%100),p=[...l.children],E=[...l.children],C=c.children[i];t.from!==t.to?(C[n]=t.to,E.splice(r,0,C)):(E.splice(i,1),E.splice(r,0,C));const F=c.children.splice(i,1);l.children.splice(r,0,...F),e||(p.reverse(),E.reverse());let v,P=[],b;E.forEach((I,R)=>{v===void 0?I!==p[R]&&(p[R]?v=p[R][o]||100:v=R===0?100:h(p[R-1][o]),I[o]=v,u.push(I)):(v>=I[o]?(P.length>0&&(P.forEach(z=>{z[o]=h(b),u.push(z),b=z[o]}),v=b,b=0,P=[]),I[o]=h(v),u.push(I)):(P.length===0&&(b=v),P.push(I)),v=I[o])}),this.updateChangedItems(u)}async updateChangedItems(t){try{this.state.updating=!0,await Promise.all(t.map(async e=>{const a=O(this.model.appDataEntityId),s=this.context.clone();s[a]=e.srfkey;const i=await this.service.updateGroup(s,e);if(i.data){const r=this.state.items.findIndex(n=>n.srfkey===e.srfkey);this.state.items.splice(r,1,i.data)}}))}finally{this.state.updating=!1,await this.afterLoad({},this.state.items)}}}),Pu=d("TreeGridExService",class extends qs{constructor(){super(...arguments),this.multipleUiMap=new Map}initUIDataMap(){var t;super.initUIDataMap(),(t=this.model.detreeNodes)==null||t.forEach(e=>{var a;const s=new Map;(a=e.detreeNodeDataItems)==null||a.forEach(i=>{const r=i.id.toLowerCase(),o=i.appDEFieldId.toLowerCase(),u=new H(r,o,{isOriginField:!0,dataType:i.dataType});s.set(r,u)}),this.multipleUiMap.set(e.id,s)})}async getDENodeDatas(t,e,a,s){const{appDEDataSetId:i,appDataEntityId:r}=t,{context:n,params:o,navContext:u,navParams:c}=e?this.getNodeRSFilterParams(e,a,s):{context:s.context,params:s.params,navContext:{},navParams:{}};o.size=t.maxSize||1e3,t.sortAppDEFieldId&&t.sortDir&&Object.assign(o,{sort:"".concat(t.sortAppDEFieldId.toLowerCase(),",").concat(t.sortDir.toLowerCase())});const l=await this.app.deService.exec(r,i,n,o);if(l.data.length){const{data:h}=this.handleResponseForMultiple(l,t.id);return h.map(E=>new Ls(t,a,{data:E,leaf:!!s.leaf,navContext:u,navParams:c}))}return[]}handleResponseForMultiple(t,e){const a=super.handleResponse(t);return a.headers&&(a.headers["x-page"]&&(a.page=Number(a.headers["x-page"])),a.headers["x-per-page"]&&(a.size=Number(a.headers["x-per-page"])),a.headers["x-total"]&&(a.total=Number(a.headers["x-total"]))),a.ok&&(kt(a.data)?a.data=a.data.map(s=>this.toUIDataForMultiple(s,e)):a.data=this.toUIDataForMultiple(a.data,e)),a}toUIDataForMultiple(t,e){const a=this.multipleUiMap.get(e);return new G(t,a)}}),kc=d("TreeGridExController",class extends tt{constructor(){super(...arguments),this.providers={},this.columns={},this.fieldColumns={},this.uaColumns={}}initState(){super.initState(),this.state.size=0,this.state.columnStates=[],this.state.defaultExpandedKeys=[]}async onCreated(){await super.onCreated(),this.service=new Pu(this.model),await this.service.init(this.context),this.initColumnStates(),await this.initGridColumns()}async initGridColumns(){this.model.detreeColumns&&await Promise.all(this.model.detreeColumns.map(async t=>this.initColumnsController(t)))}async initColumnsController(t){const e=await ze(t);if(!e)return;this.providers[t.codeName]=e;const a=await e.createController(t,this);this.columns[t.codeName]=a,t.columnType==="DEFGRIDCOLUMN"?this.fieldColumns[t.codeName]=a:t.columnType==="UAGRIDCOLUMN"&&(this.uaColumns[t.codeName]=a)}initColumnStates(){k(this.model,t=>{t.columnType!=="GROUPGRIDCOLUMN"&&this.state.columnStates.push({key:t.codeName,caption:t.caption,hidden:!!t.hideDefault,uaColumn:t.columnType==="UAGRIDCOLUMN"})},{childrenFields:["detreeColumns"]}),this.calcColumnFixed()}calcColumnFixed(){const t=this.state.columnStates.filter(a=>!a.hidden),e=t.length;t.forEach((a,s)=>{a.uaColumn?a.fixed=s+1<=Math.floor(e/2)?"left":"right":a.fixed="right"})}async load(t={}){const e=t.isInitialLoad===!0,a=await this.loadNodes();return this.state.expandedKeys=this.calcExpandedKeys(a),await this.afterLoad(t,a),this.state.isLoaded=!0,await this.evt.emit("onLoadSuccess",{isInitialLoad:e}),a}async loadNodes(t){const e=await this.getFetchParams(),a=!!e.query,s=t?void 0:this.state.defaultExpandedKeys;await this.startLoading();let i;try{i=await this.service.fetchChildNodes(t,{context:this.context.clone(),params:e,hasQuery:a,defaultExpandedKeys:s})||[]}finally{await this.endLoading()}return t?t.children=i:this.state.rootNodes=i,this.state.items=[],k({children:this.state.rootNodes},r=>{this.state.items.push(r)}),i}calcExpandedKeys(t){let e=[];return k({children:t},a=>{var s;(s=a.children)!=null&&s.length&&e.push(a.id)}),this.state.defaultExpandedKeys.length&&(e.push(...this.state.defaultExpandedKeys),e=Array.from(new Set(e))),e}}),Wc=d("TreeGridController",class extends gu{}),Uc=d("TreeGridService",class extends Ys{}),bu=d("MEditViewPanelService",class extends at{}),zc=d("MEditViewPanelController",class extends tt{constructor(){super(...arguments),this.parameters=[]}async onCreated(){await super.onCreated(),this.service=new bu(this.model),await this.service.init(this.context),await this.initParameters()}initState(){super.initState(),this.state.panelUiItems=[],this.state.activeTab="",this.state.size=1e3,this.state.isNeedScroll=!1}async initParameters(){var t,e;if(this.model.embeddedAppViewId){const a=await ibiz.hub.getAppView(this.model.embeddedAppViewId);if(a.appDataEntityId){const s=await ibiz.hub.getAppDataEntity(a.appDataEntityId);a&&s?this.parameters=[{parameterName:(t=s.keyAppDEFieldId)==null?void 0:t.toLowerCase(),pathName:(e=s.codeName)==null?void 0:e.toLowerCase()}]:this.parameters=[]}}}async afterLoad(t,e){await super.afterLoad(t,e);const a=this.state.panelUiItems.filter(s=>s.id.startsWith("mockId:"));return this.state.panelUiItems=[],this.doItems(e,a),this.model.panelStyle==="TAB_TOP"&&this.state.panelUiItems.length>0&&a.length===0&&(this.state.activeTab=this.state.panelUiItems[0].id),e}handlePanelItemParams(t){const[{parameterName:e}]=this.parameters,s={id:t[e]?t[e]:"mockId:".concat(K()),context:this.context.clone(),params:{},data:t,srfmajortext:""};return this.parameters.forEach(i=>{const{parameterName:r,pathName:n}=i;t[r]&&!Object.is(t[r],"")&&Object.assign(s.context,{[n]:t[r]}),t.srfmajortext&&!Object.is(t.srfmajortext,"")?Object.assign(s,{srfmajortext:t.srfmajortext}):t.srfuf===0&&Object.assign(s,{srfmajortext:"\u8349\u7A3F--\u65B0\u5EFA"})}),s}doItems(t,e){t.forEach(a=>{const s=this.handlePanelItemParams(a);this.state.panelUiItems.push(s)}),e&&this.state.panelUiItems.push(...e)}async handleAdd(){this.state.isNeedScroll=!0,this.doItems([{srfuf:0}]),this.model.panelStyle==="TAB_TOP"&&(this.state.activeTab=this.state.panelUiItems[this.state.panelUiItems.length-1].id)}async handleDelete(t){if(this.state.isNeedScroll=!1,t.data.srfuf===0){const e=this.state.panelUiItems.findIndex(a=>a===t);this.state.panelUiItems.splice(e,1)}else await this.remove({data:[t.data],notRefresh:!0})}async handleTabDelete(t,e){let a=!1;t.id===this.state.activeTab&&e===this.state.panelUiItems.length-1&&e>0&&(a=!0),await this.handleDelete(t),a&&(this.state.activeTab=this.state.panelUiItems[this.state.panelUiItems.length-1].id)}afterRemove(t){super.afterRemove(t);const e=this.state.panelUiItems.findIndex(a=>a.data.srfkey===t.srfkey);e!==-1&&this.state.panelUiItems.splice(e,1)}onViewDataChange(t,e){t.eventName==="onSaveSuccess"&&this.handleDataChange(t.data[0],e)}async handleDataChange(t,e){const a=this.state.panelUiItems.findIndex(i=>i.id===e);if(a<0)throw new f("\u7F16\u8F91\u89C6\u56FE\u9762\u677F\u90E8\u4EF6UI\u6570\u636E\u4E0D\u5B58\u5728");const s=this.state.panelUiItems[a];s.id.startsWith("mockId:")?this.state.panelUiItems[a]=this.handlePanelItemParams(t):s.srfmajortext=t.srfmajortext,this.model.panelStyle==="TAB_TOP"&&(this.state.activeTab=this.state.panelUiItems[a].id)}}),Nu=d("MapService",class extends at{async init(t){await super.init(t)}async fetchAll(t,e={}){var a;const s=[];if((a=this.model.sysMapItems)!=null&&a.length){const i=ibiz.hub.getApp(t.srfappid);await Promise.all(this.model.sysMapItems.map(async r=>{const{appDataEntityId:n,appDEDataSetId:o,customCond:u}=r,c=t.clone(),l={...e};if(u){const p=B.execSingleLine(u);if(p){const{navigateContexts:E,navigateParams:C}=be(p);E&&Object.assign(c,y(E,e,t)),C&&Object.assign(l,y(E,e,t))}}const h=await i.deService.exec(n,o,c,l);h.data&&s.push(...h.data.map(p=>new Tn(p,r)))}))}return new L(s,200)}}),Gc=d("MapController",class extends tt{initState(){super.initState(),this.state.size=1e3,this.state.pointData=[],this.state.areaData=[],this.calcDefaultOptions()}async onCreated(){await super.onCreated(),this.service=new Nu(this.model),await this.service.init(this.context)}async load(t={}){if(this.state.isSimple)return[];await this.startLoading();try{const e=t.isInitialLoad===!0,{context:a}=this.handlerAbilityParams(t),s=await this.getFetchParams(t?.viewParam);a.srfareacode=this.state.areaCode;const i=await this.service.fetchAll(a,s);this.state.items=i.data,await this.afterLoad(t,i.data),this.state.isLoaded=!0,await this._evt.emit("onLoadSuccess",{isInitialLoad:e})}catch(e){throw await this._evt.emit("onLoadError",void 0),this.actionNotification("FETCHERROR",{error:e}),e}finally{await this.endLoading()}return this.actionNotification("FETCHSUCCESS"),this.state.items}async afterLoad(t,e){const a=await super.afterLoad(t,e),s=[],i=[];return a.forEach(r=>{r._itemStyle==="REGION"?s.push(r):r._itemStyle==="POINT"&&i.push(r)}),this.state.pointData=i,this.state.areaData=s,a}calcDefaultOptions(){var t;if(this.state.strAreaCode=!1,this.state.defaultAreaCode=1e5,(t=this.model.controlParam)!=null&&t.ctrlParams){const{ctrlParams:e}=this.model.controlParam;Object.keys(e).forEach(a=>{const s=e[a];switch(a.toLowerCase()){case"defaultareacode":this.state.defaultAreaCode=s;break;case"strareacode":this.state.strAreaCode=s==="true";break;case"jsonbaseurl":this.state.jsonBaseUrl=s;break}})}this.state.defaultAreaCode=this.state.strAreaCode?"".concat(this.state.defaultAreaCode):Number(this.state.defaultAreaCode),this.state.areaCode=this.state.defaultAreaCode}onMapChange(t){this.state.areaCode=t,this.load({}),this.evt.emit("onMapChange",{areaCode:t})}onAreaClick(t){this.evt.emit("onAreaClick",{data:[t]})}onPointClick(t){this.evt.emit("onPointClick",{data:[t]})}}),Su=d("HubController",class{constructor(){this.session={}}login(t,e){return ibiz.auth.login(t,e)}logout(){return ibiz.auth.logout()}}),Ru=class{constructor(){this.convert=new Un,this.controller=new Su,this.appMap=new Map,this.apps=new Map,this.view2appMap=new Map,this.views=new Map,this.dataEntities=new Map,this.config=new Gn,this.defaultAppIndexViewName="Index"}calcAppViewId(t){let e="";if(t.indexOf(".")!==-1){const a=t.split(".");e=a[a.length-1]}else e=t.toLowerCase();return e}registerModelLoaderProvider(t){this.modelLoaderProvider=t}registerApp(t){this.apps.set(t.codeName,t)}registerAppView(t){this.views.set(t.codeName,t)}registerAppDataEntity(t,e=ibiz.env.appId){this.dataEntities.has(e)||this.dataEntities.set(e,new Map),this.dataEntities.get(e).set(t.id,t)}setAppView(t,e=ibiz.env.appId){const a=this.calcAppViewId(t);this.view2appMap.set(a,e)}hasAppView(t){const e=this.calcAppViewId(t);return this.view2appMap.has(e)}async getAppStyle(t){return this.modelLoaderProvider?this.modelLoaderProvider.getAppStyle(t):null}async getAppView(t){const e=this.calcAppViewId(t),a=this.view2appMap.get(e)||ibiz.env.appId;if(this.appMap.has(a)||await this.createApp(a),this.views.has(e))return this.views.get(e);if(this.modelLoaderProvider){const s=await this.modelLoaderProvider.getAppView(a,e);return this.registerAppView(s),s}throw new f("\u89C6\u56FE[".concat(e,"]\u4E0D\u5B58\u5728"))}async getAppDataEntity(t,e=ibiz.env.appId){if(this.dataEntities.has(e)){const a=this.dataEntities.get(e);if(a.has(t))return a.get(t)}if(this.modelLoaderProvider){let a;return t.indexOf(".")!==-1?a=await this.modelLoaderProvider.getAppDataEntity(e,t):a=await this.modelLoaderProvider.getAppDataEntityByCodeName(e,t),this.registerAppDataEntity(a,e),a}throw new f("\u672A\u627E\u5230\u5E94\u7528\u5B9E\u4F53[".concat(t,"]"))}async createApp(t){if(this.appMap.has(t))return this.appMap.get(t);let e;if(this.apps.has(t))e=this.apps.get(t);else if(this.modelLoaderProvider)e=await this.modelLoaderProvider.getApp(t),this.registerApp(e);else throw new f("\u672A\u627E\u5230\u5E94\u7528[".concat(t,"]\u6A21\u578B"));const a=new kn(e);return this.appMap.set(t,a),await a.init(),this.configCache||(this.configCache=new $t(ibiz.env.appId,"PSSysHub","Global")),a}async getAppAsync(t=ibiz.env.appId){return this.createApp(t)}getApp(t){let e=null;return t?t instanceof Object?e=t.id:e=t:e=ibiz.env.appId,this.appMap.get(e)}},Lu=d("EngineFactory",class{constructor(){this.viewEngines=new Map}register(t,e){this.viewEngines.set(t,e)}unRegister(t){this.viewEngines.delete(t)}getEngine(t,...e){const{engineType:a,engineCat:s}=t,i="".concat(s,"_").concat(a),r=this.viewEngines.get(i);if(r)return r(...e);ibiz.log.error("\u6CA1\u6709".concat(i,"\u5BF9\u5E94\u7684\u5F15\u64CE"),t)}}),Tu=d("ViewEngineBase",class{constructor(t){this.view=t,this.initViewState()}get toolbar(){return this.view.getController("toolbar")}get leftToolbar(){return this.view.getController("lefttoolbar")}get rightToolbar(){return this.view.getController("righttoolbar")}get footerToolbar(){return this.view.getController("footertoolbar")}get viewLayoutPanel(){return this.view.layoutPanel}async onCreated(){const{childNames:t}=this.view;t.push("captionbar","toolbar")}async onMounted(){var t,e;const{model:a,childNames:s}=this.view;if(ibiz.log.debug("".concat(a.id,"\u7684\u5B50\u7EC4\u4EF6\uFF1A").concat(s.join(";"),"\u90FD\u5DF2mounted")),!this.calcViewHeaderVisible()){const r=(t=this.viewLayoutPanel)==null?void 0:t.panelItems.view_header;r&&(r.state.visible=!1)}if(ibiz.env.isMob&&!this.calcViewFooterVisible()){const n=(e=this.viewLayoutPanel)==null?void 0:e.panelItems.view_footer;n&&(n.state.visible=!1)}}async onDestroyed(){}async call(t,e){if(t==="GetData")return this.getData()}initViewState(){}getData(){return[]}calcViewHeaderVisible(){var t,e,a,s;let i=!1;const{model:r}=this.view;if(r.showCaptionBar===!1){const n=(t=this.viewLayoutPanel)==null?void 0:t.panelItems.view_captionbar;n&&(n.state.visible=!1)}else i=!0;if(ibiz.env.isMob){if(this.leftToolbar)i=!0;else{const n=(e=this.viewLayoutPanel)==null?void 0:e.panelItems.lefttoolbar;n&&(n.state.visible=!1)}if(this.rightToolbar)i=!0;else{const n=(a=this.viewLayoutPanel)==null?void 0:a.panelItems.righttoolbar;n&&(n.state.visible=!1)}}else if(this.toolbar)i=!0;else{const n=(s=this.viewLayoutPanel)==null?void 0:s.panelItems.view_toolbar;n&&(n.state.visible=!1)}return i}calcViewFooterVisible(){let t=!1;return this.footerToolbar&&(t=!0),t}async loadEntityData(){const{appDataEntityId:t}=this.view.model,{evt:e,context:a,params:s}=this.view;if(!t)throw new f("\u8BE5\u89C6\u56FE\u6CA1\u6709\u5B9E\u4F53\uFF0C\u65E0\u6CD5\u52A0\u8F7D\u5B9E\u4F53\u6570\u636E");const r=await ibiz.hub.getApp(a.srfappid).deService.exec(t,"get",a,s),{data:n}=r;n&&(this.view.state.srfactiveviewdata=n,e.emit("onDataChange",{actionType:"LOAD",data:[n]}),n.srfkey&&e.emit("onViewInfoChange",{dataInfo:n.srfmajortext||""}))}}),jc=d("MDViewEngine",class extends Tu{get xdataControlName(){return this.view.model.xdataControlName}get searchForm(){return this.view.getController("searchform")}get searchBar(){return this.view.getController("searchbar")}get xdataControl(){return this.view.getController(this.xdataControlName)}async onCreated(){await super.onCreated();const{childNames:t}=this.view;t.push(this.xdataControlName,"searchform","searchbar"),this.xdataControlName&&(this.view.slotProps[this.xdataControlName]||(this.view.slotProps[this.xdataControlName]={}),this.view.slotProps[this.xdataControlName].loadDefault=!1)}async onMounted(){await super.onMounted();const{model:t}=this.view;this.xdataControl.evt.on("onActive",this.onXDataActive.bind(this)),this.xdataControl.evt.on("onSelectionChange",async a=>{var s;(s=this.toolbar)==null||s.calcButtonState(a.data[0],this.xdataControl.model.appDataEntityId)}),this.xdataControl.evt.on("onBeforeLoad",()=>{this.xdataControl.state.searchParams=this.getSearchParams()}),this.xdataControl.evt.on("onLoadSuccess",a=>{this.view.evt.emit("onDataChange",{...a,actionType:"LOAD"})}),this.xdataControl.evt.on("onRemoveSuccess",a=>{this.view.evt.emit("onDataChange",{...a,actionType:"REMOVE"})}),this.xdataControl.evt.on("onSaveSuccess",a=>{this.view.evt.emit("onDataChange",{...a,actionType:"SAVE"})});const e=this.viewLayoutPanel.panelItems.view_searchform;if(e){const a=!!this.searchForm;e.state.keepAlive=a,e.state.visible=a&&!!t.expandSearchForm}this.searchForm&&this.searchForm.evt.on("onSearch",()=>{this.reLoad()}),this.searchBar&&this.searchBar.evt.on("onSearch",()=>{this.reLoad()}),!this.view.state.noLoadDefault&&t.loadDefault&&this.load()}async onXDataActive(t){(await this.openData(t)).cancel||this.refresh()}async call(t,e){return t==="ToggleFilter"?(this.toggleFilter(),null):t==="Edit"||t==="View"?this.openData(e):t==="New"?this.newData(e):t==="Remove"?(await this.remove(e),null):t==="Import"?(await this.importData(),null):t==="Refresh"?(await this.refresh(),null):t==="ExportExcel"?(await this.exportData(e),null):t==="Search"?(await this.searchForm.search(),null):t==="Reset"?(await this.searchForm.reset(),null):t==="Copy"?(this.copy(e),null):t==="Load"?(this.load(e),null):super.call(t,e)}getData(){return this.xdataControl.getData()}async openData(t){var e,a;const{data:s,event:i}=t,r=(t.context||this.view.context).clone(),n=t.params||this.view.params,o=((e=s[0].srfdecodename)==null?void 0:e.toLowerCase())||O(this.xdataControl.model.appDataEntityId);r[o.toLowerCase()]=s[0].srfkey;const u=await((a=this.view.scheduler)==null?void 0:a.triggerCustom("opendata",{context:r,params:n,data:s,event:i,view:this.view}));if(u===-1)throw new m(this.view.model,"\u7F3A\u5C11newdata\u7684\u89C6\u56FE\u903B\u8F91");return{cancel:!u.ok}}async newData(t){var e,a,s;const{data:i,event:r,copyMode:n}=t;if(!((a=(e=this.view.model.viewLayoutPanel)==null?void 0:e.appViewLogics)==null?void 0:a.find(l=>l.id==="newdata")))throw new m(this.view.model,"\u7F3A\u5C11newdata\u7684\u89C6\u56FE\u903B\u8F91");const u=A(this.view.params);n&&(u.srfcopymode=n);const c=await((s=this.view.scheduler)==null?void 0:s.triggerCustom("newdata",{context:this.view.context,params:u,data:i,event:r,view:this.view}));if(c===-1)throw new m(this.view.model,"\u7F3A\u5C11newdata\u7684\u89C6\u56FE\u903B\u8F91");return{cancel:!c.ok}}async remove(t){await this.xdataControl.remove(t)}async load(t={}){await this.xdataControl.load({isInitialLoad:!0,...t})}async refresh(){await this.xdataControl.refresh()}async reLoad(){await this.xdataControl.load({isInitialLoad:!0})}getSearchParams(){const t={};return this.searchForm&&Object.assign(t,this.searchForm.getFilterParams()),this.searchBar&&Object.assign(t,this.searchBar.getFilterParams()),t}async importData(){await this.xdataControl.importData()}async exportData(t){await this.xdataControl.exportData(t)}async copy(t){this.newData(Object.assign(t,{copyMode:!0}))}calcViewHeaderVisible(){let t=super.calcViewHeaderVisible();if(!this.searchBar||!this.searchBar.state.visible){const e=this.viewLayoutPanel.panelItems.view_searchbar;e&&(e.state.visible=!1)}else t=!0;return t}toggleFilter(){if(this.searchForm){const t=this.viewLayoutPanel.panelItems.view_searchform;t&&(t.state.visible=!t.state.visible)}}}),Bu=class{handle(t){return t instanceof m||t instanceof D?ibiz.message.error(t.message,10,!0):t instanceof _t?t.status===401?ibiz.message.error("\u6CA1\u6709\u6CE8\u518C\u65E0\u6743\u9650\u9519\u8BEF\u5904\u7406\u5668"):ibiz.notification.error({title:"",desc:t.message,duration:10}):t instanceof le?ibiz.message.error(t.message,t.duration,t.duration===0):t instanceof f&&ibiz.message.error(t.message,10,!0),ibiz.log.error(t),!0}},_u=class{constructor(){this.handlers=[]}register(t){this.handlers.unshift(t)}handleSingle(t){this.handlers.find(a=>!!a.handle(t))||ibiz.log.error("\u6CA1\u6709\u627E\u5230\u80FD\u5904\u7406\u8BE5\u9519\u8BEF\u7684\u5904\u7406\u5668",t)}handle(t){t instanceof Array?t.forEach(e=>{this.handleSingle(e)}):this.handleSingle(t)}},Ou=class{constructor(){this.layoutPanel=new hr,this.text=new vr,this.hbs=new Vi,this.rawValue=new Ar,this.error=new _u,this.error.register(new Bu)}showAppLoading(){const t=document.getElementById("app-loading-x");t&&(t.style.display="none")}hiddenAppLoading(){setTimeout(()=>{const t=document.getElementById("app-loading-x");t&&(t.style.display="none")},300)}},ue=class{constructor(t,e){this.logic=t,this.scheduler=e,this.type=t.logicType}execute(t){throw new f("Method not implemented.")}destroy(){}},Mu=class{constructor(){this.constructorMap=new Map}register(t,e){this.constructorMap.set(t,e)}createExecutor(t,e){const a=this.constructorMap.get(t.logicType);if(!a)throw new D(t,"\u903B\u8F91\u7C7B\u578B ".concat(t.logicType," \u6682\u672A\u652F\u6301\uFF01"));return a(t,e)}},xu=class extends ue{constructor(){super(...arguments),this.initialized=!1}convertScriptArgs(t){return t}init(t,e,a){this.convertScriptArgs=e;const s=this.logic.scriptCode;this.scriptFn=B.createScriptFn(t,s,a),this.initialized=!0}execute(t){const e=this.convertScriptArgs(t);return this.scriptFn.exec(e)}},Qs=class extends ue{execute(t){const{appDEUILogicId:e,appDataEntityId:a}=this.logic;if(!e)throw new m(this.logic,"\u6CA1\u6709\u914D\u7F6E\u5B9E\u4F53\u754C\u9762\u903B\u8F91");ie(e,a,t)}},$s=class{constructor(t){this.triggers=new Map,this.executors=new Map,this.hasViewEventTrigger=!1,this.hasControlEventTrigger=!1,this.logics=t,t.forEach(e=>{try{const a=this.createExecutor(e);this.executors.set(e.id,a);const s=this.createTrigger(e);this.triggers.set(e.id,s),s.bindExecutor(a)}catch(a){ibiz.log.error(a.message)}})}destroy(){this.triggers.forEach(t=>t.destroy()),this.executors.forEach(t=>t.destroy())}getExecuteParams(t){let e={};return this.defaultParamsCb&&(e=this.defaultParamsCb()),ve(t,e)}createTrigger(t){switch(t.triggerType){case"VIEWEVENT":this.hasViewEventTrigger=!0;break;case"CTRLEVENT":this.hasControlEventTrigger=!0;break}return ibiz.scheduler.triggerFactory.createTrigger(t,this)}createExecutor(t){return ibiz.scheduler.executorFactory.createExecutor(t,this)}getMatchTriggers(t){const e=[];return this.triggers.forEach(a=>{a.match(t)&&e.push(a)}),e}triggerAndExecute(t,e={}){const a=this.getMatchTriggers(t);if(a.length>0){const s=this.getExecuteParams(e);return a.map(r=>r.execute(s))}}triggerItemDynaLogic(t,e,a){const s={itemName:t,triggerType:e},i=this.triggerAndExecute(s,a);if(i?.length)return i.pop()}triggerItemVisible(t,e){return this.triggerItemDynaLogic(t,"ITEMVISIBLE",e)}triggerItemEnable(t,e){return this.triggerItemDynaLogic(t,"ITEMENABLE",e)}triggerItemBlank(t,e){return this.triggerItemDynaLogic(t,"ITEMBLANK",e)}startTimerTrigger(){this.getMatchTriggers({triggerType:"TIMER"}).forEach(e=>e.start())}triggerCustom(t,e){const a=this.triggers.get(t);if(!a)return-1;const s=this.getExecuteParams(e);return a.execute(s)}triggerControlEvent(t,e,a){const s={ctrlName:t,eventName:e,triggerType:"CTRLEVENT"};this.triggerAndExecute(s,a)}},Vu=class extends $s{constructor(t){const e=t.filter(a=>a.triggerType!=="APPVIEWENGINE");e.forEach(a=>{a.triggerType==="CTRLEVENT"&&(a.ctrlName=a.itemName||a.logicTag)}),super(e)}},ku=class extends $s{constructor(t){t.forEach(e=>{e.triggerType=e.logicTrigger}),super(t)}triggerViewEvent(t){const e={eventName:t.eventName,triggerType:"VIEWEVENT"};this.triggerAndExecute(e,t)}},Wu=class{constructor(){this.constructorMap=new Map}register(t,e){this.constructorMap.set(t,e)}createTrigger(t,e){const a=this.constructorMap.get(t.triggerType);if(!a)throw new D(t,"\u89E6\u53D1\u5668\u7C7B\u578B ".concat(t.triggerType," \u6682\u672A\u652F\u6301\uFF01"));return a(t,e)}},Uu=class{constructor(){this.executorFactory=new Mu,this.triggerFactory=new Wu}createViewScheduler(t){return new ku(t)}createControlScheduler(t){return new Vu(t)}},Lt=class{constructor(t,e){this.logic=t,this.scheduler=e,this.type=t.triggerType}bindExecutor(t){this.executor=t,this.executor.type==="SCRIPT"&&this.bindScriptExecutor(t)}bindScriptExecutor(t){t.initialized||t.init([],e=>e,{isAsync:!0,singleRowReturn:!1})}match(t){return t.triggerType===this.type}execute(t){if(this.executor)return this.executor.execute(t);throw new f("".concat(this.logic.id,"\u6CA1\u6709\u7ED1\u5B9Aexecutor"))}destroy(){this.executor=void 0}},zu=class extends Lt{},aa=class extends Lt{bindExecutor(t){if(super.bindExecutor(t),this.executor.type!=="SCRIPT")throw new f("\u9884\u5B9A\u4E49\u903B\u8F91\u7C7B\u578B".concat(this.type,"\u7684\u89E6\u53D1\u5668\u7C7B\u578B\u53EA\u80FD\u662F\u811A\u672C"))}bindScriptExecutor(t){t.init(["context","viewparams","data","env"],e=>{const{context:a,params:s,data:i}=e;return{context:a,params:s,data:i?.[0]||{},env:ibiz.env}},{singleRowReturn:!0,isAsync:!1})}match(t){var e,a;return super.match(t)&&((e=t.itemName)==null?void 0:e.toLowerCase())===((a=this.logic.itemName)==null?void 0:a.toLowerCase())}execute(t){return!!this.executor.execute(t)}},Gu=class extends Lt{constructor(){super(...arguments),this.timer=null}start(){if(!this.logic.timer)throw new m(this.logic,"\u5B9A\u65F6\u5668\u7F3A\u5C11\u5B9A\u65F6\u95F4\u9694");this.timer=setInterval(()=>{if(!this.scheduler.defaultParamsCb)throw new f("\u5B9A\u65F6\u5668\u7F3A\u5C11\u9ED8\u8BA4\u53C2\u6570\u56DE\u8C03");const t=this.scheduler.defaultParamsCb();this.executor.execute(t)},this.logic.timer)}destroy(){super.destroy(),this.timer&&clearInterval(this.timer)}},ju=class extends ue{execute(t){if(this.logic.id==="opendata"&&this.logic.builtinAppUILogic)return this.executeOpenDataAppUILogic(this.logic.builtinAppUILogic,t);if(this.logic.id==="newdata"&&this.logic.builtinAppUILogic)return this.executeNewDataAppUILogic(this.logic.builtinAppUILogic,t)}async executeOpenDataAppUILogic(t,e){const{context:a,params:s,...i}=e,{data:r}=e;if(!r?.[0])throw new f("opendata\u6CA1\u6709\u53EF\u64CD\u4F5C\u6570\u636E\uFF01");const n=t.openDataAppViews;let o;if(n)o=await this.calcOpenViewRef(t,e);else if(o=t.openDataAppView,!o)throw new m(t,"opendata\u89C6\u56FE\u903B\u8F91\u6CA1\u6709\u914D\u7F6E\u9ED8\u8BA4\u6253\u5F00\u89C6\u56FE");const u=o.refAppViewId;if(!u)throw new m(t,"opendata\u89C6\u56FE\u903B\u8F91\u7684\u9ED8\u8BA4\u6253\u5F00\u89C6\u56FE\u6CA1\u6709\u5B9E\u9645\u5F15\u7528\u89C6\u56FE");const c=o.navigateContexts||[],l=Object.assign(a,y(c,r[0],s,a));let h={};const p=o.navigateParams;return x(p)&&(h=y(p,r[0],s,a)),ibiz.commands.execute(Z.TAG,u,l,h,i)}async calcOpenViewRef(t,e){const a=await ibiz.hub.getAppDataEntity(e.view.model.appDataEntityId),s=a.formTypeAppDEFieldId||a.dataTypeAppDEFieldId;if(!s)throw new m(t,"".concat(a.codeName,"[\u591A\u8868\u5355\u5B9E\u4F53] or [\u7D22\u5F15\u5B9E\u4F53]\u7F3A\u5C11\u7C7B\u578B\u5C5E\u6027\u914D\u7F6E"));const{data:i}=e,r=i[0][s];if(!r)throw new m(t,"\u6570\u636E\u6E90\u65E0\u8868\u5355\u7C7B\u578B\u5E94\u7528\u5B9E\u4F53\u5C5E\u6027\u503C");const n=t.openDataAppViews,o=n?.find(u=>u.refMode===r);if(!o)throw new f("\u6CA1\u6709\u627E\u5230\u4E0E\u8868\u5355\u7C7B\u578B".concat(r,"\u76F8\u5173\u7684\u5B9E\u4F53\u7684\u7F16\u8F91\u89C6\u56FE"));return o}async executeNewDataAppUILogic(t,e){const{context:a,params:s,...i}=e,{data:r,view:n}=e,{enableWizardAdd:o,enableBatchAdd:u,batchAddOnly:c,newDataAppView:l}=t;let h;if(o){if(h=await this.getWizardNewViewRef(t,e),!h)return{ok:!1}}else if(u){const b=O(n.parentView.model.appDataEntityId),I=t.batchAddAppViews;if(h=I?.find(R=>R.refMode.toLowerCase()!==b),!h)throw new m(t,"\u6CA1\u6709\u627E\u5230\u6279\u6DFB\u52A0\u9700\u8981\u6253\u5F00\u7684\u9009\u62E9\u89C6\u56FE")}else{if(c)throw new D(t,"batchAddOnly\u6682\u672A\u652F\u6301");if(h=l,!h||!h.refAppViewId)throw new m(t,"newdata\u89C6\u56FE\u903B\u8F91\u6CA1\u6709\u914D\u7F6E\u9ED8\u8BA4\u65B0\u5EFA\u6570\u636E\u89C6\u56FE")}let p={},E={};const C=r?.[0]||{},F=h.navigateContexts;x(F)&&(p=y(F,C,s,a)),p=Object.assign(a,p);const v=h.navigateParams;if(x(v)&&(E=y(v,C,s,a)),s.srfcopymode){const I=(await ibiz.hub.getAppDataEntity(n.model.appDataEntityId)).keyAppDEFieldId;I&&C&&(E[I]=C.srfkey,E.srfcopymode=!0)}E.srfuf=0;const P=await ibiz.commands.execute(Z.TAG,h.refAppViewId,p,E,i);return u&&P.data&&await this.doBatchAdd(t,P.data,a,h),P}async getWizardNewViewRef(t,e){var a;const{wizardAppView:s,newDataAppViews:i}=t,{context:r,params:n,...o}=e;if(!s||!s.refAppViewId)throw new m(t,"\u7F3A\u5C11\u9ED8\u8BA4\u7D22\u5F15\u5B9E\u4F53\u9009\u62E9\u89C6\u56FE");const u=await ibiz.commands.execute(Z.TAG,s.refAppViewId,r,n,{...o,openMode:"POPUPMODAL"});if(!u.ok)return;const c=(a=u.data)==null?void 0:a[0];if(!c)throw new f("\u8BF7\u9009\u4E2D\u4E00\u6761\u6570\u636E");const l=c.srfkey,h=i?.find(p=>p.refMode===l);if(!h)throw new f("\u6CA1\u6709\u627E\u5230\u4E0E\u7D22\u5F15\u7C7B\u578B".concat(l,"\u76F8\u5173\u7684\u5B9E\u4F53\u7684\u7F16\u8F91\u89C6\u56FE"));return h}async doBatchAdd(t,e,a,s){var i;if(e?.length){const r=await ibiz.hub.getAppDataEntity(t.appDataEntityId,a.srfappid),n=r.minorAppDERSs,o=s.refMode.toLowerCase();if(!n)throw new m(r,"\u5B9E\u4F53\u6CA1\u6709\u4ECE\u5173\u7CFB\u96C6\u5408\uFF01");let u;n?.forEach(p=>{const E=O(p.majorAppDataEntityId);o===E&&(u=p.parentAppDEFieldId)});const c=(i=s.navigateParams)==null?void 0:i.find(p=>p.key==="keymapping");let l=[];if(c){const p=c.value.split(";"),E={};for(const C of p){const[F,v]=C.split(":");F&&v&&(E[F]=v)}l=e.map(C=>{const F={[u]:C.srfkey};for(const v in E)if(Object.prototype.hasOwnProperty.call(E,v)){const P=E[v];Object.prototype.hasOwnProperty.call(C,v)&&(F[P]=C[v])}return F})}else l=e.map(p=>({[u]:p.srfkey}));await ibiz.hub.getApp(a.srfappid).deService.exec(r.id,"Create",a,l)}}},Ku=class extends Lt{constructor(t,e){super(t,e),this.logic=t,this.scheduler=e,this.listenEventNames=[];const a=t.eventNames.split(";");this.listenEventNames=a.map(s=>Oe[s]||s)}match(t){return super.match(t)&&this.listenEventNames.includes(t.eventName)}},Xu=class extends Lt{constructor(t,e){super(t,e),this.logic=t,this.scheduler=e,this.listenEventNames=[];const a=t.eventNames.split(";");this.listenEventNames=a.map(s=>W[s]||s)}match(t){return super.match(t)&&t.ctrlName.toLowerCase()===this.logic.ctrlName.toLowerCase()&&this.listenEventNames.includes(t.eventName)}},Hu=class extends ue{execute(t){if(!this.logic.appDEUIActionId)throw new m(this.logic,"\u903B\u8F91\u4E2D\u7F3A\u5C11\u89E6\u53D1\u5E94\u7528\u5B9E\u4F53\u754C\u9762\u884C\u4E3Aid");U.execAndResolved(this.logic.appDEUIActionId,t)}};function Yu(){ibiz.scheduler=new Uu,ibiz.scheduler.triggerFactory.register("ITEMVISIBLE",(t,e)=>new aa(t,e)),ibiz.scheduler.triggerFactory.register("ITEMENABLE",(t,e)=>new aa(t,e)),ibiz.scheduler.triggerFactory.register("ITEMBLANK",(t,e)=>new aa(t,e)),ibiz.scheduler.triggerFactory.register("TIMER",(t,e)=>new Gu(t,e)),ibiz.scheduler.triggerFactory.register("CUSTOM",(t,e)=>new zu(t,e)),ibiz.scheduler.triggerFactory.register("VIEWEVENT",(t,e)=>new Ku(t,e)),ibiz.scheduler.triggerFactory.register("CTRLEVENT",(t,e)=>new Xu(t,e)),ibiz.scheduler.executorFactory.register("SCRIPT",(t,e)=>new xu(t,e)),ibiz.scheduler.executorFactory.register("APPDEUILOGIC",(t,e)=>new Qs(t,e)),ibiz.scheduler.executorFactory.register("DEUILOGIC",(t,e)=>new Qs(t,e)),ibiz.scheduler.executorFactory.register("APPUILOGIC",(t,e)=>new ju(t,e)),ibiz.scheduler.executorFactory.register("APPDEUIACTION",(t,e)=>new Hu(t,e))}function qu(){const{ibiz:t}=window;t.util=new Ou,t.hub=new Ru,t.register=new gi,t.config=new Ei,t.auth=new Fn,t.asyncAction=new Pn,t.engine=new Lu,_s(),Us(),ws(),Yu()}var Kc=d("PluginStaticResource",class{constructor(t){this.styleElementMap=new Map,this.url=new URL(t);const e=ye.dirname(this.url.pathname);this.baseDir=e}dir(t){return ye.resolve(this.baseDir,t)}async loadStyle(t){const e=t.map(a=>{const s=this.dir(a);return this.styleElementMap.has(s)?!1:(this.styleElementMap.set(s,null),new Promise((i,r)=>{const n=document.createElement("link");n.setAttribute("type","text/css"),n.setAttribute("rel","stylesheet"),n.setAttribute("href",s),n.onload=i,n.onerror=r,document.head.appendChild(n)}))});try{await Promise.all(e)}catch(a){ibiz.log.error(a)}}}),Xc=d("RemotePluginItem",class{constructor(t,e,a){this.tag=t,this.repo=e,this.config=a}})}}});
|
|
4
|
+
`):i===2&&o.length>4?"".concat(o.slice(0,4),"..."):o,rotate:i===3?45:0}};r&&(n=Ct(n,Je(r))),e.push(n)}),e}async init(t,e){await this.loadCodeList(t,e),this.entity=await ibiz.hub.getAppDataEntity(this.model.appDataEntityId),this.initSeriesGenerators()}getFieldKey(t){const e=this.entity.appDEFields.find(a=>a.name===t);return e?e.codeName.toLowerCase():t.toLowerCase()}async loadCodeList(t,e){var a;if(this.codeListMap.clear(),!((a=this.model.dechartSerieses)!=null&&a.length))return;const s=ibiz.hub.getApp(t.srfappid),i=async r=>{if(!r||this.codeListMap.has(r))return;const n=await s.codeList.get(r,t,e);this.codeListMap.set(r,n)};await Promise.all(this.model.dechartSerieses.map(async r=>{const{seriesCodeListId:n,catalogCodeListId:o}=r;await i(n),await i(o)}))}calcOptionsByData(t){this.radarMap.clear(),this.options={series:[],radar:[]},this.seriesGenerators.forEach(a=>{a.model.seriesType==="radar"&&a.calcRadarCoordSystem(t)}),this.radarMap.size&&(this.options.radar=[...this.radarMap.values()].map(a=>a.toOptions()));const e=[];return this.seriesGenerators.forEach(a=>{const s=e.length,i=a.calcByData(t);i instanceof Array?e.push(...i):e.push(i);const r=e.length-1;for(let n=s;n<=r;n++)this.seriesGeneratorIndexMap.set(n,a)}),this.options.series=e,this.seriesGenerators.length===1&&this.seriesGenerators[0].groupData&&Object.keys(this.seriesGenerators[0].groupData).length===1&&e[0].type&&["bar","line","scatter"].includes(e[0].type)&&this.staticOptions.legend&&(this.staticOptions.legend.show=!1),this.options=Ct(this.staticOptions,this.options),this.chartUserParam&&(this.options=Ct(this.options,this.chartUserParam)),this.options}getChartDataByParams(t){const e=this.seriesGeneratorIndexMap.get(t.seriesIndex);if(!e)throw new f("\u627E\u4E0D\u5230".concat(t.seriesIndex,"\u5E8F\u5217\u7684generator\uFF01"));return e.getChartDataByParams(t)}},_o=d("ChartService",class extends at{}),gc=d("ChartController",class extends tt{initState(){super.initState(),this.state.size=1e3}async onCreated(){await super.onCreated(),this.service=new _o(this.model),await this.service.init(this.context),this.generator=new Bo(this.model),await this.generator.init(this.context,this.params),window.addEventListener("resize",this.resizeChart)}async afterLoad(t,e){const a=await super.afterLoad(t,e);return e.forEach(s=>{Object.assign(s,{srfcount:1})}),this.calcOptions(),a}initChart(t){this.chart=t,this.chart.on("click",e=>{const a=this.generator.getChartDataByParams(e);console.log("\u6FC0\u6D3B\u6570\u636E",a),a&&this.setActive(a)})}calcOptions(t=this.state.items){this.options=this.generator.calcOptionsByData(t),this.updateChart()}updateChart(){if(!this.chart)throw new f("chart\u5BF9\u8C61\u6CA1\u6709\u6B63\u786E\u521D\u59CB\u5316");if(!this.options)throw new f("options\u8FD8\u6CA1\u8BA1\u7B97");this.chart.setOption(this.options),this.resizeChart()}resizeChart(){this.chart&&this.chart.resize()}async onDestroyed(){var t;window.removeEventListener("resize",this.resizeChart),await super.onDestroyed(),(t=this.chart)==null||t.dispose()}}),Cc=d("CaptionBarController",class extends Y{initState(){super.initState(),this.view.model.capLanguageRes?this.state.caption=ibiz.i18n.t(this.view.model.capLanguageRes.lanResTag,this.view.model.caption):this.state.caption=this.view.model.caption}async onCreated(){await super.onCreated(),this.view.evt.on("onViewInfoChange",({caption:t,dataInfo:e})=>{this.state.caption="".concat(this.view.model.caption).concat(e?"-".concat(e):"")})}}),Oo=class{constructor(t,e){this.deLogicParams=t,this.parameters=e,this.params={},this.result=null,this.isEndNode=!1,this.defaultParamName="Default"}get context(){return Object.prototype.hasOwnProperty.call(this.params,"context")?this.params.context:this.parameters.context}get data(){return this.parameters.data}get viewParam(){return Object.prototype.hasOwnProperty.call(this.params,"viewParam")?this.params.viewParam:this.parameters.params}resetParam(t){var e;(e=this.deLogicParams.get(t))==null||e.calc(this)}renewParam(t){var e;(e=this.deLogicParams.get(t))==null||e.renew(this)}setLastReturn(t){this.lastReturn=t}initLastReturnParam(t){Object.defineProperty(this.params,t,{enumerable:!0,configurable:!0,get:()=>this.lastReturn})}isEntityParam(t){const e=this.deLogicParams.get(t);return!!(e&&e.model.entityParam)}},Hs=class{};function st(t,e){const{srcDEUILogicParamId:a,srcFieldName:s,srcValue:i}=e,r=e.srcValueType||"SRCDLPARAM",n=s;let o;switch(r){case"SRCDLPARAM":o=t.params[a];break;case"NULLVALUE":return null;case"NONEVALUE":return;case"SRCVALUE":return ibiz.util.rawValue.format(i);case"WEBCONTEXT":case"VIEWPARAM":o=t.parameters.params;break;case"APPLICATION":case"SESSION":case"APPDATA":case"DATACONTEXT":o=t.parameters.context;break;case"ENVPARAM":o=A(ibiz.env);break;default:throw new D(e,"\u6682\u672A\u652F\u6301\u6E90\u503C\u7C7B\u578B".concat(r))}if(o&&n)try{Array.isArray(o)?o=o[Number(n)]:o=B.execScriptFn({srcValue:o},"srcValue.".concat(n),{singleRowReturn:!0,isAsync:!1})}catch(u){throw ibiz.log.error("\u4ECE\u6E90\u53C2\u6570\u53D6\u5C5E\u6027".concat(n,"\u62A5\u9519\uFF0C\u6E90\u53C2\u6570\uFF1A"),o),u}return o}var Mo=class extends Hs{constructor(t){super(),this.model=t,this.srcParam=t.srcLogicParamId,this.dstParam=t.dstLogicParamId}get dstField(){return this.model.dstFieldName}get op(){return this.model.condOP}get type(){return this.model.paramType}get value(){return this.model.paramValue}test(t,e,a){const s=st(t,{srcDEUILogicParamId:this.dstParam,srcFieldName:this.dstField});switch(this.type){case"ENTITYFIELD":{if(!this.value)throw new m(this.model,"\u5F53\u524D\u6761\u4EF6\u503C\u7C7B\u578B\u4E3A[\u6570\u636E\u5BF9\u8C61\u5C5E\u6027],\u7F3A\u5C11\u914D\u7F6E\u6761\u4EF6\u503C");const i=a[this.value]!=null?a[this.value]:e[this.value];return $(s,this.op,i)}case"SRCENTITYFIELD":{if(!this.value)throw new m(this.model,"\u5F53\u524D\u6761\u4EF6\u503C\u7C7B\u578B\u4E3A[\u6E90\u6570\u636E\u5BF9\u8C61\u5C5E\u6027],\u7F3A\u5C11\u914D\u7F6E\u6761\u4EF6\u503C");const i=st(t,{srcDEUILogicParamId:this.srcParam,srcFieldName:this.value});return $(s,this.op,i)}case"CURTIME":throw new D(this.model,"\u6682\u672A\u652F\u6301\u6761\u4EF6\u503C\u7C7B\u578B\u4E3A[\u5F53\u524D\u65F6\u95F4]");default:return $(s,this.op,this.value)}}},xo=class hi extends Hs{constructor(e){super(),this.model=e;const a=e.deuilogicLinkConds||[];this.conds=a.map(s=>s.logicType==="SINGLE"?new Mo(s):new hi(s))}get op(){return this.model.groupOP}get notMode(){return this.model.notMode===!0}test(e,a,s){let i=!0;if(this.conds.length===0)throw new m(this.model,"\u754C\u9762\u8FDE\u63A5\u6761\u4EF6\u903B\u8F91\u7EC4\u672A\u914D\u7F6E\u903B\u8F91\u9879");for(let r=0;r<this.conds.length;r++){const o=this.conds[r].test(e,a,s);if(this.op==="AND"&&o===!1){i=!1;break}if(this.op==="OR"&&o===!0){i=!0;break}}return this.notMode?!i:i}},Vo=class{constructor(t){this.model=t,this.srcNode=null,this.dstNode=null,this.groupCond=null;const{linkMode:e,deuilogicLinkGroupCond:a}=this.model;(e||0)===0&&a&&(this.groupCond=new xo(a))}async exec(t){const{linkMode:e}=this.model,{context:a,data:s}=t;switch(e||0){case 0:return this.groupCond?this.groupCond.test(t,a,s&&s.length>0?s[0]:{}):!0;case 1:return!0;case 2:throw new D(this.model,"\u672A\u652F\u6301\u7684\u903B\u8F91\u8FDE\u63A5\u7C7B\u578B: \u5F02\u6B65\u7ED3\u675F");case 3:throw new D(this.model,"\u672A\u652F\u6301\u7684\u903B\u8F91\u8FDE\u63A5\u7C7B\u578B: \u5F02\u6B65\u62D2\u7EDD");case 9:throw new D(this.model,"\u672A\u652F\u6301\u7684\u903B\u8F91\u8FDE\u63A5\u7C7B\u578B: \u5F02\u5E38\u5904\u7406");default:throw new D(this.model,"\u672A\u652F\u6301\u7684\u903B\u8F91\u8FDE\u63A5\u7C7B\u578B:".concat(e))}}},M=class{constructor(t){this.model=t,this.links=(t.deuilogicLinks||[]).map(e=>new Vo(e))}},Wo=class extends M{async exec(t){const{dstAppDataEntityId:e,dstAppDEActionId:a,dstDEUILogicParamId:s,retDEUILogicParamId:i}=this.model;if(!e)throw new m(this.model,"\u672A\u6307\u5B9A\u5E94\u7528\u5B9E\u4F53");if(!a)throw new m(this.model,"\u672A\u6307\u5B9A\u5B9E\u4F53\u884C\u4E3A");const r=t.params[s],o=await ibiz.hub.getApp(t.context.srfappid).deService.exec(e,a,t.context,r,t.viewParam);o.ok&&(t.params[i]=o.data)}},ko=class extends M{async exec(t){const{dstAppDEUIActionId:e,dstDEUILogicParamId:a}=this.model,{data:s,parameters:i}=t;if(!e)throw new m(this.model,"\u672A\u914D\u7F6E\u754C\u9762\u884C\u4E3A");let r=[s];if(a){const n=t.params[a];n instanceof Array?r=n:r=[n]}await U.execAndResolved(e,{...i,context:t.context,params:t.viewParam,data:r})}},Uo=class extends M{async exec(t){}},zo=class extends M{async exec(t){t.isEndNode=!0;const{returnType:e,rawValue:a,returnParamId:s}=this.model;if(e)switch(e){case"NONEVALUE":t.result=void 0;break;case"NULLVALUE":t.result=null;break;case"SRCVALUE":t.result=ibiz.util.rawValue.format(a);break;case"LOGICPARAM":t.result=t.params[s];break;case"LOGICPARAMFIELD":case"BREAK":default:throw new D(this.model,"\u6682\u672A\u652F\u6301\u7684\u7ED3\u675F\u8282\u70B9\u8FD4\u56DE\u503C\u7C7B\u578B: ".concat(e))}}},Go=class extends M{async exec(t){const e=this.model.deuilogicNodeParams;if(e?.length)for(const a of e)switch(a.paramAction){case"SETPARAMVALUE":await this.setParamValue(a,t);break;case"RESETPARAM":await this.resetParam(a,t);break;case"COPYPARAM":await this.copyParam(a,t);break;case"BINDPARAM":await this.bindParam(a,t);break;case"RENEWPARAM":await this.renewParam(a,t);break;case"APPENDPARAM":await this.appendParam(a,t);break;case"SORTPARAM":await this.sortParam(a,t);break;default:throw new D(a,"\u6682\u672A\u652F\u6301\u903B\u8F91\u5904\u7406\u53C2\u6570\u64CD\u4F5C".concat(a.paramAction))}}setParamValue(t,e){const{dstFieldName:a,dstDEUILogicParamId:s}=t;if(!s)throw new f("\u6CA1\u6709\u76EE\u6807\u53C2\u6570\u5BF9\u8C61id");let i=a;e.isEntityParam(s)&&(i=i?.toLowerCase());const r=st(e,t);if(i)try{B.execScriptFn({srcVal:r,dstParam:e.params[s]},"dstParam.".concat(a," = srcVal"),{singleRowReturn:!1,isAsync:!1})}catch(n){throw ibiz.log.error("\u7ED9\u76EE\u6807\u53C2\u6570\u5C5E\u6027".concat(a,"\u8D4B\u503C\u62A5\u9519\uFF0C\u76EE\u6807\u53C2\u6570\uFF1A"),e.params[s]),n}else e.params[s]=r}copyParam(t,e){const{dstDEUILogicParamId:a}=t,s=st(e,t);e.params[a]=A(s)}bindParam(t,e){const a=st(e,t);e.params[t.dstDEUILogicParamId]=a}resetParam(t,e){const{dstDEUILogicParamId:a}=t;e.resetParam(a)}renewParam(t,e){const{dstDEUILogicParamId:a}=t;e.renewParam(a)}appendParam(t,e){const{dstDEUILogicParamId:a,dstIndex:s,srcIndex:i,srcSize:r}=t,n=st(e,t),o=s||0,u=i||0,c=r||n.length;e.params[a].splice(o,0,...n.slice(u,c))}sortParam(t,e){const{dstDEUILogicParamId:a,dstFieldName:s,dstSortDir:i}=t,r=s;e.params[a].sort((o,u)=>i==="ASC"?o[r]-u[r]:u[r]-o[r])}},jo=class extends M{async exec(t){t.isEndNode=!0;const{invokeMethod:e,invokeCtrlId:a,invokeParamId:s}=this.model;if(!a)throw new m(this.model,"\u6CA1\u6709\u914D\u7F6E\u754C\u9762\u5BF9\u8C61");if(!s)throw new m(this.model,"\u6CA1\u6709\u914D\u7F6E\u64CD\u4F5C\u53C2\u6570");if(!e)throw new m(this.model,"\u6CA1\u6709\u914D\u7F6E\u8C03\u7528\u65B9\u6CD5");const i=t.params[s];if(!i)throw new f("\u6CA1\u6709\u627E\u5230\u64CD\u4F5C\u53C2\u6570".concat(s));const r=t.params[a];if(!r)throw new f("\u6CA1\u6709\u627E\u5230\u754C\u9762\u5BF9\u8C61".concat(a));if(!r[e]||!Na(r[e]))throw new f("\u6CA1\u6709\u627E\u5230\u8C03\u7528\u65B9\u6CD5".concat(e));await r[e](i)}},Ko=class extends M{async exec(t){const{dstDEUILogicParamId:e,srcDEUILogicParamId:a}=this.model;if(!e||!a)throw new m(this.model,"\u7F3A\u5C11\u76EE\u6807\u53C2\u6570\u5BF9\u8C61\u6216\u8005\u6E90\u53C2\u6570\u5BF9\u8C61\u914D\u7F6E");const s=st(t,this.model);t.params[e]=s}},Xo=class extends M{constructor(){super(...arguments),this.typeMap={INFO:"info",QUESTION:"success",WARNING:"warning",ERROR:"error"}}async exec(t){const{msgBoxType:e,buttonsType:a,msgBoxParamId:s}=this.model;if(!e)throw new m(this.model,"\u7F3A\u5C11\u6D88\u606F\u7C7B\u578B\u7684\u914D\u7F6E");if(!a)throw new m(this.model,"\u7F3A\u5C11\u6309\u94AE\u7C7B\u578B\u7684\u914D\u7F6E");let{title:i}=this.model,{message:r}=this.model;if(s){const l=t.params[s];l.title&&(i=l.title),l.message&&(r=l.message)}const o={type:this.typeMap[e],title:i||"\u6D88\u606F",desc:r};let u=[];switch(a){case"YESNO":o.confirmButtonText="\u662F",o.cancelButtonText="\u5426",o.showConfirmButton=!0,o.showCancelButton=!0,u=["yes","no"];break;case"OK":o.confirmButtonText="\u786E\u5B9A",o.showConfirmButton=!0,o.showCancelButton=!1,u=["ok"];break;case"OKCANCEL":o.confirmButtonText="\u786E\u5B9A",o.cancelButtonText="\u53D6\u6D88",o.showConfirmButton=!0,o.showCancelButton=!0,u=["ok","cancel"];break;default:throw new D(this.model,"".concat(a,"\u6682\u672A\u652F\u6301"))}const c=await ibiz.modal.confirm(o);t.setLastReturn(u[c?0:1])}},Ho=class extends M{async exec(t){const e=await Ds(this.model);e&&await e.exec(this.model,t)}},Yo=class extends M{async exec(t){const{dstDEUILogicParamId:e,name:a}=this.model;if(!e)throw new m(this.model,"\u7F3A\u5C11\u76EE\u6807\u53C2\u6570\u5BF9\u8C61\u914D\u7F6E");const s=t.params[e];console.log("\u903B\u8F91\u8282\u70B9".concat(a,"\u64CD\u4F5C\u53C2\u6570\u503C:"),s)}},qo=class extends M{async exec(t){const{dstDEUILogicParamId:e}=this.model;if(!e)throw new m(this.model,"\u7F3A\u5C11\u76EE\u6807\u53C2\u6570\u5BF9\u8C61\u914D\u7F6E");t.resetParam(e)}},Qo=class extends M{async exec(t){const{dstDEUILogicParamId:e,srcDEUILogicParamId:a}=this.model;if(!e||!a)throw new m(this.model,"\u7F3A\u5C11\u76EE\u6807\u53C2\u6570\u5BF9\u8C61\u6216\u8005\u6E90\u53C2\u6570\u5BF9\u8C61\u914D\u7F6E");const s=st(t,this.model);t.params[e]=A(s)}},$o=class extends M{async exec(t){const{dstDEUILogicParamId:e,srcDEUILogicParamId:a,dstIndex:s,srcIndex:i,srcSize:r}=this.model;if(!e||!a)throw new m(this.model,"\u7F3A\u5C11\u76EE\u6807\u53C2\u6570\u5BF9\u8C61\u6216\u8005\u6E90\u53C2\u6570\u5BF9\u8C61\u914D\u7F6E");const n=st(t,this.model),o=s||0,u=i||0,c=r||n.length;t.params[e].splice(o,0,...n.slice(u,c))}},Jo=class extends M{async exec(t){const{dstDEUILogicParamId:e,dstSortDir:a,dstFieldName:s}=this.model;if(!e||!s)throw new m(this.model,"\u7F3A\u5C11\u76EE\u6807\u53C2\u6570\u5BF9\u8C61\u6216\u76EE\u6807\u5C5E\u6027\u914D\u7F6E");const i=s;t.params[e].sort((n,o)=>a==="ASC"?n[i]-o[i]:o[i]-n[i])}},Zo=class extends M{async exec(t){const{dstDEUILogicParamId:e}=this.model;if(!e)throw new m(this.model,"\u7F3A\u5C11\u76EE\u6807\u53C2\u6570\u5BF9\u8C61\u914D\u7F6E");t.renewParam(e)}},tu=class extends M{async exec(t){const{dstAppDEDataSetId:e,dstAppDataEntityId:a,dstDEUILogicParamId:s,retDEUILogicParamId:i}=this.model;if(!s)throw new m(this.model,"\u7F3A\u5C11\u914D\u7F6E\u8FC7\u6EE4\u53C2\u6570");const r=t.params[s],o=await ibiz.hub.getApp(t.context.srfappid).deService.exec(a,e,t.context,r);o.ok&&(t.params[i]=o.data)}},eu=class extends M{async exec(t){const{errorInfo:e}=this.model;throw new f(e)}},au=class extends M{async exec(t){t.isEndNode=!0;const{eventName:e,eventParamId:a,fireCtrlId:s}=this.model;if(!s)throw new m(this.model,"\u6CA1\u6709\u914D\u7F6E\u89E6\u53D1\u5BF9\u8C61");if(!e)throw new m(this.model,"\u6CA1\u6709\u914D\u7F6E\u4E8B\u4EF6\u540D\u79F0\u53C2\u6570");if(!a)throw new m(this.model,"\u6CA1\u6709\u914D\u7F6E\u4E8B\u4EF6\u53C2\u6570");const i=t.params[s];if(!i)throw new f("\u6CA1\u6709\u627E\u5230\u89E6\u53D1\u5BF9\u8C61".concat(s));const r=t.params[a];if(!r)throw new f("\u6CA1\u6709\u627E\u5230\u4E8B\u4EF6\u53C2\u6570\u5BF9\u8C61".concat(a));await i.evt.emit(e,r)}},su=class extends M{async exec(t){const{dstAppDELogicId:e,dstAppDataEntityId:a,dstDEUILogicParamId:s,retDEUILogicParamId:i}=this.model;if(!a)throw new m(this.model,"\u6CA1\u6709\u914D\u7F6E\u5B9E\u4F53");if(!e)throw new m(this.model,"\u6CA1\u6709\u914D\u7F6E\u5B9E\u4F53\u903B\u8F91");if(!s)throw new m(this.model,"\u6CA1\u6709\u914D\u7F6E\u4F20\u5165\u903B\u8F91\u53C2\u6570");const r=t.params[s];if(!r)throw new f("\u6CA1\u6709\u627E\u5230\u4F20\u5165\u53C2\u6570".concat(s));const n=await _s(e,a,t.context,r,t.params);i&&(t.params[i]=n)}},iu=class{constructor(t){this.model=t}calc(t){const e=this.model.id,a=this.model,{parameters:s}=t,{context:i,params:r,data:n}=s,o=ibiz.hub.getApp(i.srfappid);if(a.codeName==="layoutPanel"){t.params[e]=s.view.layoutPanel.panelItems;return}if(a.default)a.entityListParam?t.params[e]=n||[]:t.params[e]=n&&n.length>0?n[0]:{};else if(a.activeContainerParam)t.params[e]=s.ctrl||s.view;else if(a.activeCtrlParam)t.params[e]=s.ctrl;else if(a.ctrlParam){const u=s.view.getController(a.codeName.toLowerCase());u?t.params[e]=u:ibiz.log.error("\u89C6\u56FE\u903B\u8F91\u521D\u59CB\u5316\u53C2\u6570\uFF0C\u672A\u627E\u5230".concat(a.codeName,"\u6307\u5B9A\u90E8\u4EF6\u5BF9\u8C61"))}else if(a.activeViewParam)t.params[e]=s.view;else if(a.appGlobalParam)t.params[e]=ibiz.env;else if(a.applicationParam)t.params[e]=o;else if(a.entityListParam)t.params[e]=[];else{if(a.entityPageParam)throw new D(a,"\u672A\u652F\u6301\u7684\u903B\u8F91\u53C2\u6570\u7C7B\u578B: \u5206\u9875\u67E5\u8BE2\u7ED3\u679C");if(a.entityParam)t.params[e]={};else if(a.lastReturnParam)t.initLastReturnParam(e);else if(a.navContextParam)t.params[e]=i;else{if(a.navViewParamParam)throw new D(a,"\u672A\u652F\u6301\u7684\u903B\u8F91\u53C2\u6570\u7C7B\u578B: \u89C6\u56FE\u8DEF\u7531\u53C2\u6570");if(a.routeViewSessionParam)throw new D(a,"\u672A\u652F\u6301\u7684\u903B\u8F91\u53C2\u6570\u7C7B\u578B: \u8DEF\u7531\u89C6\u56FE\u4F1A\u8BDD");if(a.simpleListParam)t.params[e]=[];else if(a.simpleParam)t.params[e]={};else if(a.viewNavDataParam)t.params[e]=r;else if(a.viewSessionParam)throw new D(a,"\u672A\u652F\u6301\u7684\u903B\u8F91\u53C2\u6570\u7C7B\u578B: \u5F53\u524D\u89C6\u56FE\u4F1A\u8BDD")}}}renew(t){const e=this.model.id,a=this.model;if(a.entityListParam||a.simpleListParam||a.entityPageParam)t.params[e]=[];else if(a.simpleParam||a.entityParam)t.params[e]={};else throw new D(a,"\u672A\u652F\u6301\u7684\u903B\u8F91\u53C2\u6570\u7C7B\u578B\u91CD\u65B0\u5EFA\u7ACB\u53D8\u91CF")}},ru=class{constructor(t){this.model=t,this.nodes=new Map,this.params=new Map;var e;if(!((e=t.deuilogicNodes)!=null&&e.length))throw new m(t,"\u754C\u9762\u903B\u8F91\u6CA1\u6709\u914D\u7F6E\u903B\u8F91\u8282\u70B9");t.deuilogicNodes.forEach(a=>{const{logicNodeType:s}=a;let i;switch(s){case"BEGIN":i=new Uo(a);break;case"END":i=new zo(a);break;case"DEACTION":i=new Wo(a);break;case"DEUIACTION":i=new ko(a);break;case"PREPAREJSPARAM":i=new Go(a);break;case"RESETPARAM":i=new qo(a);break;case"COPYPARAM":i=new Qo(a);break;case"BINDPARAM":i=new Ko(a);break;case"VIEWCTRLINVOKE":i=new jo(a);break;case"MSGBOX":i=new Xo(a);break;case"DEBUGPARAM":i=new Yo(a);break;case"APPENDPARAM":i=new $o(a);break;case"SORTPARAM":i=new Jo(a);break;case"RENEWPARAM":i=new Zo(a);break;case"DEDATASET":i=new tu(a);break;case"THROWEXCEPTION":i=new eu(a);break;case"VIEWCTRLFIREEVENT":i=new au(a);break;case"DELOGIC":i=new su(a);break;case"PFPLUGIN":i=new Ho(a);break;default:throw new D(a,"\u672A\u652F\u6301\u7684\u903B\u8F91\u8282\u70B9\u7C7B\u578B: ".concat(s))}this.nodes.set(a.id,i)}),t.deuilogicParams.forEach(a=>{this.params.set(a.id,new iu(a))}),this.nodes.forEach(a=>{a.links.forEach(s=>{s.srcNode=a,this.nodes.has(s.model.dstDEUILogicNodeId)&&(s.dstNode=this.nodes.get(s.model.dstDEUILogicNodeId))})})}initLogicParams(t){this.params.forEach(e=>{e.model.default&&(t.defaultParamName=e.model.id),e.calc(t)})}async exec(t){const e=new Oo(this.params,t);this.initLogicParams(e);const{startDEUILogicNodeId:a}=this.model;if(a&&this.nodes.has(a)){const s=this.nodes.get(a);await this.deepExec(s,e)}else throw new m(this.model,"\u672A\u8BBE\u7F6E\u8D77\u59CB\u8282\u70B9");return e.isEndNode?e.result:e.params[e.defaultParamName]?e.params[e.defaultParamName]:null}async deepExec(t,e){await t.exec(e);const{links:a}=t;for(let s=0;s<a.length;s++){const i=a[s];if(await i.exec(e)&&i.dstNode&&(await this.deepExec(i.dstNode,e),t.model.parallelOutput===!1))break}}},Ze=new Map;async function re(t,e,a){const i=await ibiz.hub.getApp(a.context.srfappid).getDEUILogic(t,e);if(!i)throw new f("\u627E\u4E0D\u5230\u5B9E\u4F53".concat(e,"\u7684\u754C\u9762\u903B\u8F91").concat(t));return Ze.has(i)||Ze.set(i,new ru(i)),await Ze.get(i).exec(a),null}var U=d("UIActionUtil",class{static async exec(t,e){const a=await Gt(t);if(!a)throw new f("\u6CA1\u627E\u5230".concat(t,"\u7684\u754C\u9762\u884C\u4E3A\u6A21\u578B"));return a.actionTarget==="SINGLEDATA"&&await e.view.call("Validate")===!1?{cancel:!0}:(await gs(a)).exec(a,e)}static async execAndResolved(t,e){var a,s;const i=await this.exec(t,e);if(i.closeView)e.view.modal.ignoreDismissCheck=!0,e.view.closeView({ok:!0});else if(i.refresh)switch(i.refreshMode){case 1:e.view.callUIAction("Refresh");break;case 2:(a=e.view.parentView)==null||a.callUIAction("Refresh");break;case 3:(s=e.view.getTopView())==null||s.callUIAction("Refresh");break}}}),ne=class{async exec(t,e){const{context:a,params:s,data:i}=e,r={refresh:t.reloadData,refreshMode:t.refreshMode,closeView:t.closeEditView},{appDEUILogicId:n,appDataEntityId:o,uilogicAttachMode:u}=t;if(u==="REPLACE"){if(!n)throw new m(t,"\u6CA1\u6709\u914D\u7F6E\u5B9E\u4F53\u754C\u9762\u903B\u8F91");return await re(n,o,e),r}if(!await this.isConfirm(t,e))return this.returnError(r);const c=await this.execAction(t,e);if(Object.assign(r,c),r.cancel===!0)return this.returnError(r);const l={...e,context:r.nextContext||a,data:r.data||i,params:r.nextParams||s};if(t.closeEditView)this.doNextAction(t,l);else{const p=await this.doNextAction(t,l);if(p&&(Object.assign(r,p),p.cancel===!0))return this.returnError(r)}if(t.uilogicAttachMode==="AFTER"){if(!n)throw new m(t,"\u6CA1\u6709\u914D\u7F6E\u5B9E\u4F53\u754C\u9762\u903B\u8F91");await re(n,o,e)}return r}returnError(t){return Object.assign(t,{refresh:!1,closeView:!1})}async isConfirm(t,e){const a=this.calcMessage("confirm",t,e);return t.enableConfirm&&a?ibiz.confirm.warning({title:"\u64CD\u4F5C\u786E\u8BA4",desc:a}):!0}async doNextAction(t,e){const a=t.nextId;if(a)return U.exec(a,e)}async handleParams(t,e,a,s){let i=[];const r=O(t.appDataEntityId),o=(await ibiz.hub.getAppDataEntity(t.appDataEntityId,e.srfappid)).keyAppDEFieldId;switch(t.actionTarget){case"NONE":i=[];break;case"SINGLEDATA":i=[a[0]];break;case"MULTIDATA":i=a;break;case"MULTIKEY":i=r&&a.length>0?a.map(C=>({[o]:C.srfkey||C[o]})):[{}];break;case"SINGLEKEY":{const C=a[0]||{};i=r?[{[o]:C.srfkey||C[o]}]:[{}]}break}const u=e.clone(),c=[...t.navigateContexts||[]];if(r&&t.actionTarget!=="NONE"){const{valueItem:C,paramItem:F}=t,v=F||r,P=C||"srfkey";c.unshift({key:v,value:P,rawValue:!1})}const l=["MULTIKEY","MULTIDATA"].includes(t.actionTarget)&&a.length>0,p=y(c,l?be(c,a):a[0]||{},s,e);Object.assign(u,p);const h=t.navigateParams,E=y(h,l?be(h,a):a[0]||{},s,u);return{resultContext:u,resultData:i,resultParams:E}}calcMessage(t,e,a){let s,i;const{confirmMsg:r,cmlanguageRes:n,successMsg:o,smlanguageRes:u}=e;switch(t){case"confirm":s=r,i=n;break;case"success":s=o,i=u;break}if(i){const c=ibiz.i18n.t(i.lanResTag,i.defaultContent||s);c!==i.lanResTag&&(s=c)}if(s){const{data:c}=a,l={...a};return c.length===1?[l.data]=c:c.length===0&&delete l.data,B.execScriptFn(l,"`".concat(s,"`"),{isAsync:!1,singleRowReturn:!0})}}},nu=d("BackendUIActionProvider",class extends ne{async execAction(t,e){const{context:a,params:s,data:i,event:r}=e,n={},o=t.appDataEntityId,u=t.appDEMethodId;if(!o||!u)throw new m(t,"\u672A\u914D\u7F6E\u5B9E\u4F53\u6216\u5B9E\u4F53\u884C\u4E3A");const{resultContext:c,resultParams:l,resultData:p}=await this.handleParams(t,a,i,s),h={...l},E=t.frontAppViewId;if(E){const b=await ibiz.commands.execute(Z.TAG,E,c,l,{event:r});if(!b?.ok)return n.cancel=!0,n;if(b?.ok&&b.data){p.length===0&&p.push({});const I=b.data.map(R=>{var z;return((z=R.getOrigin)==null?void 0:z.call(R))||R||{}});p.forEach(R=>{R.srfactionparam=I})}}const C=ibiz.hub.getApp(a?.srfappid),F=p.map(b=>{var I;return((I=b.getOrigin)==null?void 0:I.call(b))||b||{}}).map(b=>Object.assign(b,h)),v=["MULTIKEY","MULTIDATA"].includes(t.actionTarget),P=await C.deService.exec(o,u,c,v?F:F[0],h);if(P.ok){const b=this.calcMessage("success",t,e);b&&ibiz.message.success(b)}return Object.assign(n,{data:kt(P.data)?P.data:[P.data],nextContext:c,nextParams:h}),n}}),ou=d("SysUIActionProvider",class extends ne{constructor(){super(...arguments),this.predefinedActionMap=new Map([["EDITVIEW_EXITACTION","Exit"],["EDITVIEW_SAVEANDEXITACTION","SaveAndExit"],["TREEVIEW_REFRESHPARENTACTION","RefreshParent"],["GRIDVIEW_EXPORTXMLACTION","ExportModel"],["GRIDVIEW_EXPORTACTION","ExportExcel"],["EDITVIEW_REMOVEANDEXITACTION","RemoveAndExit"],["GRIDVIEW_PRINTACTION","Print"],["EDITVIEW_NEXTRECORDACTION","NextRecord"],["GRIDVIEW_NEWROWACTION","NewRow"],["EDITVIEW_LASTRECORDACTION","LastRecord"],["EDITVIEW_PREVRECORDACTION","PrevRecord"],["GRIDVIEW_SEARCHBAR","ToggleFilter"],["EDITVIEW_SAVEANDSTARTWFACTION","SaveAndStart"],["EDITVIEW_NEWACTION","New"],["EDITVIEW_PRINTACTION","Print"],["EDITVIEW_COPYACTION","Copy"],["EDITVIEW_HELPACTION","Help"],["EDITVIEW_FIRSTRECORDACTION","FirstRecord"],["GRIDVIEW_REFRESHACTION","Refresh"],["EDITVIEW_SAVEANDNEWACTION","SaveAndNew"],["EDITVIEW_VIEWWFSTEPACTORACTION","ViewWFStep"],["EDITVIEW_SAVEACTION","Save"],["TREEVIEW_REFRESHALLACTION","RefreshAll"],["GRIDVIEW_IMPORTBAR","Import"],["GRIDVIEW_ROWEDITACTION","ToggleRowEdit"],["GRIDVIEW_NEWACTION","New"],["GRIDVIEW_EDITACTION","Edit"],["GRIDVIEW_HELPACTION","Help"],["EDITVIEW_REFRESHACTION","Refresh"],["GRIDVIEW_REMOVEACTION","Remove"],["GRIDVIEW_COPYACTION","Copy"],["GRIDVIEW_VIEWACTION","View"],["GRIDVIEW_SAVEROWACTION","SaveRow"],["APP_LOGIN","Login"],["APP_LOGOUT","logout"],["UTIL_RESET","Reset"],["UTIL_SEARCH","Search"]])}async execAction(t,e){const{view:a}=e,s=this.predefinedActionMap.get(t.predefinedType)||t.uiactionTag;return s==="Exit"?{closeView:!0}:await a.callUIAction(s,e)||{}}}),uu=d("FrontUIActionProvider",class extends ne{async execAction(t,e){const{context:a,params:s,data:i,event:r,noWaitRoute:n}=e;let o={};switch(t.frontProcessType){case"OPENHTMLPAGE":{const u=fa.fill(t.htmlPageUrl,a,i?.[0]);window.open(u,"_blank");break}case"TOP":case"WIZARD":{const u=t.frontAppViewId;if(!u)throw new m(t,"\u672A\u914D\u7F6E\u6253\u5F00\u89C6\u56FE");const{resultContext:c,resultParams:l}=await this.handleParams(t,a,i,s),p=await ibiz.commands.execute(Z.TAG,u,c,l,{event:r,noWaitRoute:n});p?.ok||(o.cancel=!0),p?.ok&&p.data&&(o.data=p.data,o.nextContext=c,o.nextParams={...s,...l});break}case"PRINT":await this.executePrint(t,e);break;case"DATAIMP":o=await this.executeDataImport(t,e);break;case"DATAEXP":await this.executeDataExport(t,e);break;case"OTHER":o=this.doOther(t,e);break;default:throw new D(t,"\u672A\u652F\u6301\u7684\u524D\u53F0\u5904\u7406\u6A21\u5F0F[".concat(t.frontProcessType,"]"))}return o}doOther(t,e){const{scriptCode:a}=t,{context:s,params:i,data:r,event:n}=e;if(a)return B.execScriptFn({context:s,params:i,data:r,el:n?.target},a)||{};throw new m(t,"\u81EA\u5B9A\u4E49\u7C7B\u578B\u7F3A\u5C11\u914D\u7F6E\u811A\u672C\u4EE3\u7801")}async executePrint(t,e){var a,s;const{resultParams:i}=await this.handleParams(t,e.context,e.data,e.params),r=await ibiz.hub.getAppDataEntity(t.appDataEntityId),n=(a=r.appDEPrints)==null?void 0:a.find(o=>o.id===t.appDEPrintId);if(n){let o="";const{context:u}=e;if(u&&u[r.codeName.toLowerCase()])o+="/".concat((s=r.codeName2)==null?void 0:s.toLowerCase(),"/printdata/").concat(u[r.codeName.toLowerCase()]);else throw new f("\u6CA1\u6709\u627E\u5230\u6570\u636E\u4E3B\u952E");const c=await ibiz.net.request(o,{method:"get",responseType:"blob",params:{srfprinttag:n.codeName,...i}});if(c.ok){const l=window.URL.createObjectURL(c.data);window.open(l,"_blank")}else throw new f("\u6253\u5370\u5931\u8D25")}else throw new f("\u6CA1\u6709\u627E\u5230\u5B9E\u4F53\u6253\u5370\u9879")}async executeDataImport(t,e){var a;const s=await ibiz.hub.getAppDataEntity(t.appDataEntityId),i=(a=s.appDEDataImports)==null?void 0:a.find(r=>r.id===t.appDEDataImportId);if(i){const r=ibiz.overlay.createModal("DataImport",{dismiss:()=>r.dismiss(),appDataEntity:s,dataImport:i},{width:"auto",placement:"center"});return r.present(),await r.onWillDismiss(),{refresh:!0,refreshMode:1}}throw new f("\u6CA1\u6709\u627E\u5230\u5B9E\u4F53\u5BFC\u5165\u9879")}async executeDataExport(t,e){var a,s;const{resultParams:i}=await this.handleParams(t,e.context,e.data,e.params),r=await ibiz.hub.getAppDataEntity(t.appDataEntityId),n=(a=r.appDEDataExports)==null?void 0:a.find(o=>o.id===t.appDEDataExportId);if(n){const o="/".concat((s=r.codeName2)==null?void 0:s.toLowerCase(),"/exportdata/fetchdefault?srfexporttag=").concat(n.codeName),u={page:0,size:n.maxRowCount?n.maxRowCount:1e3,...e.params,...i},c=await ibiz.net.request(o,{method:"post",data:u});if(c.status===200){let l="".concat(r.logicName,"\u8868.xlsx");l=decodeURIComponent(l);const p=new Blob([c.data],{type:"application/vnd.ms-excel"}),h=document.createElement("a");h.download=l,h.style.display="none",h.href=URL.createObjectURL(p),document.body.appendChild(h),h.click(),URL.revokeObjectURL(h.href),document.body.removeChild(h)}else throw new f("\u5BFC\u51FA\u8BF7\u6C42\u5931\u8D25")}else throw new f("\u6CA1\u6709\u627E\u5230\u5B9E\u4F53\u5BFC\u51FA\u9879")}}),cu=d("WFWithdrawUIActionProvider",class extends ne{async execAction(t,e){const{view:a}=e,s=await ibiz.modal.confirm({title:"\u63D0\u793A",desc:"\u662F\u5426\u786E\u8BA4\u6267\u884C\u64A4\u56DE\u64CD\u4F5C\uFF1F"});let i=!1;return s&&a&&(await a.call("WFWithdraw",e),i=!0),{refresh:!1,closeView:i}}});function Ys(){const t=new uu;St("FRONT",()=>t);const e=new nu;St("BACKEND",()=>e);const a=new ou;St("SYS",()=>a);const s=new cu;St("DEUIACTION_WFWithdraw",()=>s)}var lu=d("ToolbarController",class extends Y{get _evt(){return this.evt}initState(){super.initState(),this.state.buttonsState=new ft,this.state.viewMode="EMBED",this.state.extraButtons={}}async doUIAction(t,e,a={}){if(t.itemType==="DEUIACTION"){const s=t.uiactionId,i=await Gt(s);if(!i)throw new f("\u6CA1\u6709\u627E\u5230\u754C\u9762\u884C\u4E3A\u6A21\u578B".concat(s));const r=["SYS","BACKEND","WFBACKEND"].includes(i.uiactionMode)&&i.showBusyIndicator!==!1;r&&this.state.buttonsState.setLoading(t.id);try{const o=await this.ctx.view.call("GetData")||[],u=this.getEventArgs();u.params=Object.assign(a,u.params),await U.execAndResolved(s,{...u,data:o,event:e})}finally{r&&this.state.buttonsState.setLoading("")}}}async onCreated(){await super.onCreated(),this.state.viewMode=this.ctx.view.modal.mode,W(this.model,t=>{if(t.itemType==="DEUIACTION"){const e=t,a=new pt(e.id,this.context.srfappid,e.uiactionId);this.state.buttonsState.addState(e.id,a)}},{childrenFields:["detoolbarItems"]}),await this.calcButtonState()}async onItemClick(t,e,a){const s=t.buttonType==="extra";await this._evt.emit("onClick",{event:e,eventArg:t.id,buttonType:s?"extra":"deuiaction"}),s||await this.doUIAction(t,e,a)}async calcButtonState(t,e){let a=t;if(t&&t instanceof G&&(a=t.getOrigin()),await this.state.buttonsState.update(a,e),this.scheduler){const s={};a&&(s.data=[a]),W(this.model,i=>{const r=this.state.buttonsState[i.id];if(r.visible){const n=this.scheduler.triggerItemVisible(i.id,s);n!==void 0&&(r.visible=n)}if(!r.disabled){const n=this.scheduler.triggerItemEnable(i.id,s);n!==void 0&&(r.disabled=!n)}},{childrenFields:["detoolbarItems"]})}}setExtraButtons(t,e){this.state.extraButtons[t]||(this.state.extraButtons[t]=[]),this.state.extraButtons[t].push(...e)}clearExtraButtons(t){t===void 0?this.state.extraButtons={}:this.state.extraButtons[t]=[]}initControlScheduler(t=[]){const e=[...t];W(this.model,a=>{a.controlLogics&&e.push(...a.controlLogics)},{childrenFields:["detoolbarItems"]}),super.initControlScheduler(e)}}),du=d("ContextMenuController",class extends lu{}),Dc=d("DashboardController",class extends Y{constructor(){super(...arguments),this.providers={},this.portlets={}}initState(){super.initState()}async onCreated(){await super.onCreated(),await this.initPortlets(this.model.controls);const{appDataEntityId:t}=this.view.model;t&&this.view.evt.on("onDataChange",e=>{const a=Gs(e.data);a&&this.dataChangeNotify(a)})}async initPortlets(t,e){if(!t?.length)return;const a=["CHART","APPMENU","TOOLBAR","LIST"];await Promise.all(t.map(async s=>{var i;if(s.controlType&&a.includes(s.controlType))return;const r=await fs(s);if(r){this.providers[s.id]=r;const n=await r.createController(s,this,e);this.portlets[s.id]=n,(i=s.controls)!=null&&i.length&&await this.initPortlets(s.controls,n)}}))}async dataChangeNotify(t){await nt(Object.values(this.portlets).map(async e=>e.dataChangeNotify(t)))}}),wc=d("CustomDashboardController",class{constructor(t){this.customModelData=[],this.layoutColNum=12,this.layoutRowH=80,this.model=null;var e,a;this.model=t,this.config=new Jt(t.appId,"dynadashboard","dashboard_".concat(((e=this.model.appDataEntityId)==null?void 0:e.toLowerCase())||"app","_").concat((a=this.model.codeName)==null?void 0:a.toLowerCase()))}async loadCustomModelData(){const t=await this.config.load();return t.model&&(this.customModelData=t.model),t.colNum&&(this.layoutColNum=t.colNum),t.rowH&&(this.layoutRowH=t.rowH),this.customModelData}async saveCustomModelData(t){return await this.config.save({model:t,colNum:this.layoutColNum,rowH:this.layoutRowH})&&(this.customModelData=t),t}}),hu=d("PortletPartState",class{constructor(){this.visible=!0,this.keepAlive=!1,this.layout={width:"",height:"",extraStyle:{},extraClass:[],contentStyle:{}},this.class={container:[],containerDyna:[]},this.actionGroupState=null}}),ut=d("PortletPartController",class{get context(){return this.dashboard.context}get params(){return this.dashboard.params}get containerClass(){return[...this.state.class.container,...this.state.class.containerDyna]}constructor(t,e,a){this.model=t,this.dashboard=e,this.parent=a,this.state=this.createState()}async init(){await this.onInit()}async onInit(){this.onDataChange=this.onDataChange.bind(this);const{layoutPos:t,sysCss:e}=this.model;if(t){const{width:a,height:s}=zt(this.model);this.state.layout.width="".concat(a),this.state.layout.height="".concat(s)}e?.cssName&&this.state.class.container.push(e.cssName),await this.initActionStates()}createState(){return new hu}onDataChange(t){let e=t.data[0];e&&e instanceof G&&(e=e.getOrigin()),e&&this.state.actionGroupState.update(e,this.dashboard.view.model.appDataEntityId)}async initActionStates(){var t;const{uiactionGroup:e}=this.model;if(!((t=e?.uiactionGroupDetails)!=null&&t.length))return;const a=new ft;e.uiactionGroupDetails.forEach(i=>{const r=i.uiactionId;if(r){const n=new pt(i.id,this.dashboard.context.srfappid,r);a.addState(i.id,n)}}),await a.update(),this.state.actionGroupState=a;const{appDataEntityId:s}=this.dashboard.view.model;s&&this.dashboard.view.evt.on("onDataChange",this.onDataChange)}async onActionClick(t,e,a=[]){const s=t.uiactionId;await U.execAndResolved(s,{context:this.dashboard.context,params:this.dashboard.params,data:a,view:this.dashboard.view,event:e})}async dataChangeNotify(t){if(this.state.actionGroupState){const{appDataEntityId:e}=this.dashboard.view.model;this.state.actionGroupState.update(t,e)}this.calcDynaClass(t)}calcDynaClass(t){if(this.model.dynaClass){const e=Dt(this.model.dynaClass,t);e.length&&(this.state.class.containerDyna=e)}}async destroyed(){ibiz.log.debug("".concat(this.model.codeName," onDestroyed")),this.dashboard.view.evt.off("onDataChange",this.onDataChange)}}),vc=d("ContainerPortletController",class extends ut{}),Ac=d("ViewPortletController",class extends ut{}),Ic=d("MenuPortletController",class extends ut{}),yc=d("ChartPortletController",class extends ut{}),Fc=d("ActionBarPortletController",class extends ut{}),Pc=d("HtmlPortletController",class extends ut{}),bc=d("ListPortletController",class extends ut{}),Nc=d("RawItemPortletController",class extends ut{}),qs=d("DataViewControlService",class extends at{initUIDataMap(){var t;super.initUIDataMap(),(t=this.model.dedataViewDataItems)==null||t.forEach(e=>{const a=e.id.toLowerCase(),s=e.appDEFieldId;let i;if(s){const r=s.toLowerCase();i=new H(a,r,{isOriginField:!0,dataType:e.dataType})}else i=new H(a,a);this.dataUIMap.set(a,i)})}}),pu=d("DataViewControlController",class extends tt{get enableNew(){return this.model.enableCardNew===!0}initState(){super.initState(),this.state.noSort=this.model.noSort===!0,this.state.size=this.model.pagingSize||20,this.state.singleSelect=this.model.singleSelect===!0,this.state.sortItems=[]}async onCreated(){await super.onCreated(),await this.initControlService(),this.initSortItems()}async initControlService(){this.service=new qs(this.model),await this.service.init(this.context)}async initGroupActionStates(){var t;const{groupUIActionGroup:e}=this.model;(t=e?.uiactionGroupDetails)!=null&&t.length&&this.state.groups.forEach(async a=>{const s=new ft;e.uiactionGroupDetails.forEach(i=>{const r=i.uiactionId;if(r){const n=new pt(i.id,this.context.srfappid,r);s.addState(i.id,n)}}),await s.update(),a.groupActionGroupState=s})}async onRowClick(t){var e;super.onRowClick(t);const{groupAppDEFieldId:a}=this.model;if(a)if(this.state.groups.forEach(s=>{s.selectedData=[]}),this.state.selectedData.forEach(s=>{const i=s[a],r=this.state.groups.find(n=>n.key===i);r&&r.selectedData.push(s)}),this.state.singleSelect)this.state.groups.forEach(s=>{var i,r;let n=t;s.selectedData.indexOf(n)!==-1?(n&&n instanceof G&&(n=n.getOrigin()),n&&((i=s.groupActionGroupState)==null||i.update(n,this.model.appDataEntityId))):(r=s.groupActionGroupState)==null||r.update(void 0,this.model.appDataEntityId)});else{const s=this.state.groups.find(i=>i.children.indexOf(t)!==-1);s&&((e=s.groupActionGroupState)==null||e.update(s.selectedData[0],this.model.appDataEntityId))}}async loadMore(){this.state.total>this.state.items.length&&await this.load({isLoadMore:!0})}async afterLoad(t,e){return await this.initGroupCodeListItems(),await this.handleDataGroup(),await this.initGroupActionStates(),e}getOptItemModel(){let t=null;const{dedataViewItems:e}=this.model;if(e)for(let a=0;a<e.length;a++)e[a].itemType==="ACTIONITEM"&&(t=e[a]);return t}getOptItemAction(t){var e;const a=new ft,s=this.getOptItemModel();if(s){if(!s.deuiactionGroup)throw new m(this.model,"\u64CD\u4F5C\u9879\u6CA1\u6709\u914D\u7F6E\u754C\u9762\u884C\u4E3A\u7EC4");if(!((e=s.deuiactionGroup.uiactionGroupDetails)!=null&&e.length))return ibiz.log.debug("\u64CD\u4F5C\u9879\u754C\u9762\u884C\u4E3A\u7EC4\u6CA1\u6709\u914D\u7F6E\u754C\u9762\u884C\u4E3A"),a;s.deuiactionGroup.uiactionGroupDetails.forEach(i=>{const r=i.uiactionId;if(r){const n=new pt(i.id,this.context.srfappid,r);a.addState(i.id,n)}}),a.update(t.getOrigin())}return a}async onActionClick(t,e,a){const s=t.uiactionId;await U.execAndResolved(s,{context:this.context,params:this.params,data:[e],view:this.view,event:a})}async handleDataGroup(){const{enableGroup:t,groupMode:e,groupAppDEFieldId:a}=this.model;if(t&&e){if(!a)throw new m(this.model,"\u5206\u7EC4\u5C5E\u6027\u6CA1\u6709\u914D\u7F6E");e==="AUTO"?this.handleAutoGroup():e==="CODELIST"&&await this.handleCodeListGroup()}}handleAutoGroup(){const{groupAppDEFieldId:t}=this.model;if(t){const{items:e}=this.state,a=new Map;e.forEach(i=>{const r=i[t];w(r)||(a.has(r)||a.set(r,[]),a.get(r).push(i))});const s=[];a.forEach((i,r)=>{s.push({caption:r,key:r,children:[...i]})}),this.state.groups=s}}async initGroupCodeListItems(){const{groupCodeListId:t}=this.model;if(!t)return;const e=ibiz.hub.getApp(this.context.srfappid);this.groupCodeListItems=await e.codeList.get(t,this.context,this.params)}async handleCodeListGroup(){const{groupAppDEFieldId:t,groupCodeListId:e}=this.model;if(!e)throw new m(this.model,"\u5206\u7EC4\u4EE3\u7801\u8868\u6CA1\u6709\u914D\u7F6E");const{items:a}=this.state,s=new Map;this.groupCodeListItems.forEach(r=>{s.set(r.value,[])}),a.forEach(r=>{const n=r[t],o=s.get(n);o&&o.push(r)});const i=[];s.forEach((r,n)=>{const o=this.groupCodeListItems.find(u=>u.value===n);i.push({caption:o.text,key:o.value,children:r})}),this.state.groups=i}setSort(t,e){if(t&&e)super.setSort(t,e);else{const{minorSortAppDEFieldId:a,minorSortDir:s}=this.model;if(a&&s){const i=this.fieldIdNameMap.get(a);this.state.sortQuery="".concat(i.toLowerCase(),",").concat(s.toLowerCase())}else this.state.sortQuery=""}}onClickNew(t,e){const a={...this.params,srfgroup:e};U.execAndResolved("new",{context:this.context,params:a,data:[],view:this.view,event:t})}async onGroupToolbarClick(t,e,a){const s=t.uiactionId,i={...this.params,srfgroup:a.key};await U.execAndResolved(s,{context:this.context,params:i,data:a.selectedData||[],view:this.view,event:e})}initSortItems(){var t;if(!((t=this.model.dedataViewItems)!=null&&t.length))return;const e=[],{minorSortAppDEFieldId:a,minorSortDir:s}=this.model,i=a&&s;this.model.dedataViewItems.forEach(r=>{if(!r.enableSort)return;let{caption:n}=r;if(r.capLanguageRes&&(n=ibiz.i18n.t(r.capLanguageRes.lanResTag,r.caption)),!r.appDEFieldId)throw new m(r,"\u542F\u7528\u6392\u5E8F\u7684\u9879\u5FC5\u987B\u5173\u8054\u5B9E\u4F53\u5C5E\u6027");const o={caption:n,key:r.appDEFieldId};i&&a===r.appDEFieldId&&(o.order=s.toLowerCase()),e.push(o)}),e.length>0&&(this.state.sortItems=e)}}),ta=d("ExpBarControlController",class extends Y{constructor(){super(...arguments),this.navKeyName="srfkey"}get _evt(){return this.evt}get routeDepth(){return this.view.modal.routeDepth}initState(){super.initState(),this.state.query=""}load(){return this.xDataController.load({isInitialLoad:!0})}get xDataController(){const t=this.view.getController(this.model.xdataControlName);if(!t)throw new m(this.model,"\u65E0\u6CD5\u83B7\u53D6\u591A\u6570\u636E\u90E8\u4EF6[".concat(this.model.xdataControlName,"]\u63A7\u5236\u5668"));return t}get toolbarController(){return this.view.getController("".concat(this.model.xdataControlName.split("_")[0],"_toolbar"))}get XDataModel(){var t;return(t=this.model.controls)==null?void 0:t.find(a=>a.name===this.model.xdataControlName)}get isCache(){return this.controlParams.expcache==="CACHE"?!0:this.controlParams.expcache==="NO_CACHE"?!1:ibiz.config.view.expCacheMode.includes(this.model.controlType)}async onCreated(){var t;await super.onCreated(),this.childNames.push(this.model.xdataControlName);const e=await ibiz.hub.getAppDataEntity(this.model.appDataEntityId,this.context.srfappid);if(e){const a=(t=e.appDEFields)==null?void 0:t.filter(i=>i.enableQuickSearch),s=[];a?.forEach(i=>{i?.lnlanguageRes&&i.lnlanguageRes.lanResTag?s.push(ibiz.i18n.t(i.lnlanguageRes.lanResTag,i.logicName)):i?.logicName&&s.push(i.logicName)}),s.length>0&&(this.state.placeHolder=s.join("\u3001"))}}async onMounted(){super.onMounted(),this.xDataController&&(this.xDataController.evt.on("onActive",t=>{this.xDataActive(t)}),this.xDataController.evt.on("onLoadSuccess",t=>{this.xDataLoadSuccess(t)}),this.xDataController.evt.on("onRemoveSuccess",()=>{this.navByFirstItem()})),this.toolbarController&&this.xDataController.evt.on("onSelectionChange",async t=>{this.toolbarController.calcButtonState(t.data[0],this.model.appDataEntityId)}),this.state.loadDefault&&this.load()}xDataLoadSuccess(t){t.isInitialLoad&&(this.state.srfnav&&this.routeDepth?this.navBySrfnav():this.navByFirstItem())}navBySrfnav(){var t;const e=(t=this.xDataController)==null?void 0:t.state.items.find(s=>s[this.navKeyName]===this.state.srfnav);if(this.routeDepth&&He(this.routeDepth)){e&&this.xDataController.setSelection([e]),this._evt.emit("onNavViewChange",{navViewMsg:{key:this.state.srfnav,isRoutePushed:!0,isCache:this.isCache},context:this.context});return}e?(this.xDataController.setActive(e),this.xDataController.setSelection([e])):this._evt.emit("onNavViewChange",{navViewMsg:{key:this.state.srfnav,is404:!0,isCache:this.isCache},context:this.context})}navByFirstItem(){const t=this.xDataController.state.items[0];if(!t){this.state.srfnav="",this._evt.emit("onNavViewChange",{navViewMsg:{key:"",isCache:this.isCache}});return}this.xDataController.setActive(t),this.xDataController.setSelection([t])}xDataActive(t){const{data:e,context:a,params:s}=t,i=this.getNavViewMsg(e[0],a,s);this._evt.emit("onNavViewChange",{navViewMsg:i})}prepareParams(t,e,a,s){const{navDER:i,navFilter:r,navigateContexts:n,navigateParams:o,appDataEntityId:u}=t,c={deName:u?O(u):void 0,navFilter:r,pickupDEFName:i?.pickupDEFName,navContexts:n,navParams:o},l={context:a,params:s,data:e},{resultContext:p,resultParams:h}=Ut(c,l),E=Object.assign(a.clone(),p,{currentSrfNav:e[this.navKeyName]});this.state.srfnav=e[this.navKeyName];const C={...h};return{context:E,params:C}}calcViewModelId(){var t;if(["GRID","DATAVIEW","LIST"].includes(((t=this.XDataModel)==null?void 0:t.controlType)||""))return this.XDataModel.navAppViewId;throw new f("\u591A\u8282\u70B9\u89C6\u56FE\u7531\u5B50\u7C7B\u5B9E\u73B0")}getNavViewMsg(t,e,a){const s=this.calcViewModelId(),i=this.prepareParams(this.XDataModel,t,e,a);return{key:t[this.navKeyName],context:i.context,params:i.params,viewId:s,isCache:this.isCache}}calcControlHeaderVisible(){const t=!!this.toolbarController;if(!t&&this.layoutPanel){const e=this.layoutPanel.panelItems.control_toolbar;e&&(e.state.visible=!1)}return t||!!(this.model.showTitleBar&&this.model.title)||!!this.model.enableSearch}setLayoutPanel(t){super.setLayoutPanel(t),t.evt.on("onMounted",()=>{if(!this.calcControlHeaderVisible()){const a=this.layoutPanel.panelItems.control_header;a&&(a.state.visible=!1)}})}async onRouterChange(t){this.state.srfnav!==t.srfnav&&(this.state.srfnav=t.srfnav,this.navBySrfnav())}}),Sc=d("CalendarExpBarController",class extends ta{constructor(){super(...arguments),this.navKeyName="navId"}getCalendarItemModel(t){const{sysCalendarItems:e}=this.XDataModel;if(e)return e.find(a=>a.itemType===t)}get xDataController(){const t=this.view.getController(this.model.xdataControlName);if(!t)throw new m(this.model,"\u65E0\u6CD5\u83B7\u53D6\u591A\u6570\u636E\u90E8\u4EF6[".concat(this.model.xdataControlName,"]\u63A7\u5236\u5668"));return t}navBySrfnav(){var t;const e=(t=this.xDataController)==null?void 0:t.state.items.find(s=>s.navId===this.state.srfnav);if(super.navBySrfnav(),!e)return;const a=new Date(e.beginTime);this.xDataController.setSelectDate(a)}getNavViewMsg(t){const e=this.getCalendarItemModel(t.itemType);if(e){const{context:a,params:s}=this.prepareParams(e,t.deData?t.deData:t,this.context,this.params);return a.currentSrfNav=t.navId,this.state.srfnav=t.navId,{key:t.navId,context:a,params:s,viewId:e.navAppViewId}}return{key:t.navId,context:this.context,params:this.params}}}),Rc=d("TreeExpBarController",class extends ta{constructor(){super(...arguments),this.navKeyName="id",this.navNodeModelIds=[]}get xDataController(){const t=this.view.getController(this.model.xdataControlName);if(!t)throw new m(this.model,"\u65E0\u6CD5\u83B7\u53D6\u591A\u6570\u636E\u90E8\u4EF6[".concat(this.model.xdataControlName,"]\u63A7\u5236\u5668"));return t}getNodeModel(t){const{detreeNodes:e}=this.XDataModel;let a;return e&&e.forEach(s=>{s.id===t&&(a=s)}),a}xDataActive(t){const{nodeData:e}=t;super.xDataActive({...t,data:[e]})}getNavViewMsg(t,e,a){const s=t.id,i=t.deData||t,r=this.getNodeModel(t.nodeId);if(!r)throw new f("\u627E\u4E0D\u5230".concat(t.nodeId,"\u7684\u8282\u70B9\u6A21\u578B"));const n=this.prepareParams(r,i,e,a);return n.context.currentSrfNav=s,this.state.srfnav=s,{key:s,viewId:r.navAppViewId,isCache:this.isCache,...n}}navByFirstItem(){const t=this.xDataController.state.items.find(e=>!this.xDataController.model.rootVisible&&this.xDataController.state.rootNodes.includes(e)?!1:this.state.noNeedNavView?!0:this.navNodeModelIds.includes(e.nodeId));t&&(this.xDataController.setActive(t),this.xDataController.setSelection([t]))}async onCreated(){await super.onCreated();const{detreeNodes:t}=this.XDataModel;t?.forEach(e=>{e.navAppViewId&&this.navNodeModelIds.push(e.id)}),this.state.srfnav&&(this.defaultExpandedKeys=this.calcExpandKeys(this.state.srfnav))}calcExpandKeys(t){const e=[];return t.split(":").forEach((a,s)=>{s===0?e.push(a):e.push("".concat(e[s-1],":").concat(a))}),e.pop(),e}async onRouterChange(t){if(this.state.srfnav!==t.srfnav){const e=this.calcExpandKeys(t.srfnav);await this.xDataController.expandNodeByKey(e)}await super.onRouterChange(t)}}),Lc=d("ChartExpBarController",class extends ta{navByFirstItem(){if(!this.xDataController.state.items[0]){this.state.srfnav="",this._evt.emit("onNavViewChange",{navViewMsg:{key:"",isCache:this.isCache}});return}const e=this.xDataController.generator.seriesGenerators.find(a=>a.chartDataArr.length>0&&a.model.navAppViewId);e&&this.xDataController.setActive(e.chartDataArr[0])}prepareParams(t,e,a,s){var i;const{context:r,params:n}=super.prepareParams(t,e,a,s);if(e._seriesModelId){const o=(i=t.dechartSerieses)==null?void 0:i.find(u=>u.id===e._seriesModelId);if(o){const{navigateContexts:u,navigateParams:c}=o,l=y(u,e,s,r),p=y(c,e,s,n);return{context:Object.assign(r.clone(),l),params:p}}}return{context:r,params:n}}getNavViewMsg(t,e,a){var s;let i;if(t._seriesModelId){const n=(s=this.XDataModel.dechartSerieses)==null?void 0:s.find(o=>o.id===t._seriesModelId);i=n?.navAppViewId}const r=this.prepareParams(this.XDataModel,t,e,a);return{key:t._uuid,context:r.context,params:r.params,viewId:i,isCache:this.isCache}}}),Qs=d("FormController",class extends Y{constructor(){super(...arguments),this.details={},this.providers={},this.formItems=[]}get _evt(){return this.evt}get data(){return this.state.data}initState(){super.initState(),this.state.data=new G,this.state.isLoaded=!1,this.state.processing=!1,this.state.modified=!1}async dataChangeNotify(t){await nt(Object.values(this.details).map(async e=>e.dataChangeNotify(t)))}formStateNotify(t){Object.values(this.details).forEach(e=>{e.formStateNotify(t)})}async onCreated(){await super.onCreated(),await this.initDetailControllers(),this.dataChangeNotify=pe(this.dataChangeNotify.bind(this),(t,e)=>[Array.from(new Set([...t[0],...e[0]]))],200),this._evt.on("onFormDetailEvent",t=>{var e;(e=this.scheduler)==null||e.triggerControlEvent(t.formDetailName,t.formDetailEventName,t)})}async getDraftParams(){const t={};return await Promise.all(this.formItems.map(e=>e.setDefaultValue(!0,t))),t}async initDetailControllers(t=this.model.deformPages,e=this,a=void 0){await Promise.all(t.map(async s=>{const i=await ze(s);if(!i)return;e.providers[s.id]=i;const r=await i.createController(s,e,a);e.details[s.id]=r,(s.detailType==="FORMITEM"||s.detailType==="MDCTRL")&&e.formItems.push(r);const n=jt(s);n.length&&await this.initDetailControllers(n,e,r)}))}getData(){return[this.state.data]}async setDataValue(t,e){if(!(Object.prototype.hasOwnProperty.call(this.state.data,t)&&!se(this.state.data[t],e))){this.state.data[t]=e,this.state.processing=!0,this.state.modified=!0,await this._evt.emit("onFormDataChange",void 0);try{await this.dataChangeNotify([t])}finally{this.state.processing=!1}}}async validate(){return(await Promise.all(this.formItems.map(e=>e.validate()))).findIndex(e=>!e)===-1}actionNotification(t,e){super.actionNotification(t,{data:this.data,...e||{}})}initControlScheduler(t=[]){const e=[...t];W(this.model,a=>{a.controlLogics&&e.push(...a.controlLogics)},{childrenFields:["deformPages","deformTabPages","deformDetails"]}),super.initControlScheduler(e)}}),fu=d("SearchFormService",class extends ae{async getDraft(t,e={}){let s={ok:!0,status:200,data:this.getFilteredData({...e})};return s=this.handleResponse(s),s}initUIDataMap(){W(this.model,t=>{if(t.detailType==="FORMITEM"){const e=t.id.toLowerCase();this.dataUIMap.set(e,new H(e,e))}},{childrenFields:["deformPages","deformTabPages","deformDetails"]})}handleResponse(t){const e=super.handleResponse(t);return e.ok&&e.data&&(e.data=this.toUIData(e.data)),e}getFilteredData(t){const e={};return this.dataUIMap.forEach(a=>{t[a.dataKey]!==void 0&&(e[a.dataKey]=t[a.dataKey])}),e}}),Tc=d("SearchFormController",class extends Qs{async onCreated(){await super.onCreated(),this.preprocessLayoutPanel(),this.service=new fu(this.model),await this.service.init(this.context),await this.load()}async onMounted(){await super.onMounted(),this.state.loadDefault&&this.load()}async load(){const t={...this.params},e=await this.getDraftParams();Object.assign(t,e),await this.evt.emit("onBeforeLoadDraft",{params:t});let a;try{a=await this.service.getDraft(this.context,t)}catch(s){throw this.actionNotification("GETDRAFTERROR",{error:s}),s}return this.state.data=a.data,Mt(this.data,e),this.state.isLoaded=!0,this.formStateNotify("DRAFT"),this.actionNotification("GETDRAFTSUCCESS"),this.data}getFilterParams(){const t={};return Object.keys(this.state.data).forEach(e=>{const a=this.state.data[e];a!=null&&a!==""&&(t[e]=a)}),t}async search(){await this.evt.emit("onSearch",void 0)}async onSearchButtonClick(){await this.search()}async reset(){await this.load(),await this.search()}async dataChangeNotify(t){await super.dataChangeNotify(t),this.model.enableAutoSearch&&this.search()}async onKeyUp(t){const e=t||window.event;e&&e.code==="Enter"&&await this.onSearchButtonClick()}preprocessLayoutPanel(){if(!this.controlPanel)return;const{searchButtonStyle:t}=this.model;let e=!1,a=!1;const s=this.model.searchButtonPos||"RIGHT";e=s==="BOTTOM",a=s!=="BOTTOM",t==="NONE"&&(e=!0,a=!0);const i=r=>{let n,o="";if(["rootPanelItems","panelItems"].find(u=>r[u]?(n=r[u],o=u,!0):!1),n&&n.length>0){const u=[];n.forEach(c=>{e&&c.id==="control_buttons_right"||a&&c.id==="control_buttons_bottom"||(u.push(c),i(c))}),u.length<n.length&&(r[o]=u)}};(a||e)&&i(this.controlPanel)}}),it=d("FormDetailState",class{constructor(t){this.parent=t,this.disabled=!1,this.layout={width:"",height:"",extraStyle:{},extraClass:[],contentStyle:{}},this.class={container:[],containerDyna:[],label:[],labelDyna:[]},this.required=!1,this.showMoreMode=0;let e=!0;Object.defineProperty(this,"visible",{enumerable:!0,configurable:!0,get(){return this.parent&&(this.parent.visible===!1||this.showMoreMode===1&&this.parent.isShowMore===!1)?!1:e},set(s){return e=s,!0}});let a;Object.defineProperty(this,"keepAlive",{enumerable:!0,configurable:!0,get(){return a!==void 0?a:this.parent?this.parent.keepAlive:!1},set(s){return a=s,!0}})}}),mu=d("FormDetailEventName",(t=>(t.CLICK="onClick",t.FOCUS="onFocus",t.BLUR="onBlur",t.CHANGE="onChange",t.ENTER="onEnter",t))(mu||{})),Eu=d("PanelItemEventName",(t=>(t.CLICK="onClick",t.FOCUS="onFocus",t.BLUR="onBlur",t.CHANGE="onChange",t.ENTER="onEnter",t))(Eu||{})),ct=d("FormDetailController",class{constructor(t,e,a){this.dynaLogicResult={visible:void 0,disabled:void 0,required:void 0},this.model=t,this.form=e,this.parent=a,this.state=this.createState()}get data(){return this.form.data}get containerClass(){return[...this.state.class.container,...this.state.class.containerDyna]}get labelClass(){return[...this.state.class.label,...this.state.class.labelDyna]}async init(){await this.onInit()}async onInit(){this.state.showMoreMode=this.model.showMoreMode;const{layoutPos:t,sysCss:e,labelSysCss:a}=this.model;if(t){const{width:s,height:i}=zt(t);this.state.layout.width="".concat(s),this.state.layout.height="".concat(i)}e?.cssName&&this.state.class.container.push(e.cssName),a?.cssName&&this.state.class.label.push(a.cssName)}createState(){var t;return new it((t=this.parent)==null?void 0:t.state)}async dataChangeNotify(t){this.calcDynamicLogic(t),this.calcDetailDisabled(this.data),this.calcDetailVisible(this.data),this.calcDetailRequired(this.data),this.calcDynaClass(this.data)}async formStateNotify(t){this.calcDynamicLogic([],!0),this.calcDetailDisabled(this.data),this.calcDetailVisible(this.data),this.calcDetailRequired(this.data),this.calcDynaClass(this.data)}calcDynamicLogic(t,e=!1){var a;this.parent&&!this.parent.state.visible||(a=this.model.defdgroupLogics)==null||a.forEach(s=>{const i=s.relatedDetailNames||[];if(e||xt(i,t))try{const r=Xt(this.form.data,s);switch(s.logicCat){case"ITEMBLANK":this.dynaLogicResult.required=!r;break;case"ITEMENABLE":this.dynaLogicResult.disabled=!r;break;case"PANELVISIBLE":this.dynaLogicResult.visible=r;break;default:}}catch(r){ibiz.log.error(r)}})}force(t){}calcDynaClass(t){if(this.model.dynaClass){const e=Dt(this.model.dynaClass,t);e.length&&(this.state.class.containerDyna=e)}if(this.model.labelDynaClass){const e=Dt(this.model.labelDynaClass,t);e.length&&(this.state.class.labelDyna=e)}}calcDetailDisabled(t){let{disabled:e}=this.dynaLogicResult;if(e!==!0&&this.form.scheduler){const a=this.form.scheduler.triggerItemEnable(this.model.id,{data:[t]});a!==void 0&&(e=!a)}e!==void 0&&(this.state.disabled=e)}calcDetailVisible(t){let{visible:e}=this.dynaLogicResult;if(e!==!1&&this.form.scheduler){const a=this.form.scheduler.triggerItemVisible(this.model.id,{data:[t]});a!==void 0&&(e=a)}e!==void 0&&(this.state.visible=e)}calcDetailRequired(t){let{required:e}=this.dynaLogicResult;if(e!==!0&&this.form.scheduler){const a=this.form.scheduler.triggerItemBlank(this.model.id,{data:[t]});a!==void 0&&(e=!a)}e!==void 0&&(this.state.required=e)}async onClick(t){this.form.evt.emit("onFormDetailEvent",{formDetailName:this.model.id,formDetailEventName:"onClick",event:t})}}),gu=d("FormButtonState",class extends it{constructor(){super(...arguments),this.loading=!1}}),Bc=d("FormButtonController",class extends ct{createState(){var t;return new gu((t=this.parent)==null?void 0:t.state)}get data(){return this.form.data}async onClick(t){this.state.loading=!0;try{this.model.actionType==="UIACTION"&&await this.doUIAction(t),await this.doFormItemUpdate()}finally{this.state.loading=!1}super.onClick(t)}async doUIAction(t){const e=this.model.uiactionId;await U.execAndResolved(e,{context:this.form.context,params:this.form.params,data:[this.data],view:this.form.view,event:t,noWaitRoute:!0})}async doFormItemUpdate(){this.model.deformItemUpdateId&&await this.form.updateFormItem(this.model.deformItemUpdateId)}}),Cu=d("FormDruipartState",class extends it{constructor(){super(...arguments),this.showMask=!1}}),_c=d("FormDRUIPartController",class extends ct{constructor(){super(...arguments),this.refreshItems=["srfkey"],this.paramItem="srfkey",this.isNewData=!1}createState(){var t;return new Cu((t=this.parent)==null?void 0:t.state)}async onInit(){if(await super.onInit(),Object.assign(this.state.layout.extraStyle,{overflow:"auto"}),this.model.refreshItems){let t=this.model.refreshItems.split(";");t=t.filter(e=>!!e),this.refreshItems.push(...t)}this.model.paramItem&&(this.paramItem=this.model.paramItem)}async dataChangeNotify(t){await super.dataChangeNotify(t),xt(this.refreshItems,t)&&this.calcViewParams()}async formStateNotify(t){await super.formStateNotify(t),this.isNewData=t==="DRAFT",this.model.maskMode!==0&&(this.state.showMask=this.isNewData),(t==="LOAD"||t==="DRAFT"||t==="SAVE")&&this.calcViewParams()}calcViewParams(){let t=this.form.context.clone();const e=this.model.navigateContexts;x(e)&&(t=Object.assign(t,y(e,this.form.data,this.form.params,this.form.context)));const a=y(this.model.navigateParams,this.form.data,this.form.params,this.form.context);if(!this.state.viewComponentKey)this.state.viewComponentKey=K(),this.navContext=t,this.navParams=a;else if(JSON.stringify(this.navContext)!==JSON.stringify(t)||JSON.stringify(this.navParams)!==JSON.stringify(a))this.navContext=t,this.navParams=a,this.force();else if(this.embedView){if(this.isNewData)return;this.embedView.callUIAction("Refresh")}}setEmbedView(t){this.embedView=t,this.embedView.evt.on("onMounted",()=>{this.isNewData||this.embedView.call("Load")}),this.embedView.evt.on("onDataChange",e=>{["LOAD","LOADDRAFT"].includes(e.actionType)||(ibiz.log.debug("\u63A5\u6536\u5230\u5173\u7CFB\u754C\u9762\u7684\u6570\u636E\u53D8\u66F4\u4E8B\u4EF6",e),this.model.deformItemUpdateId&&this.form.updateFormItem(this.model.deformItemUpdateId))})}}),$s=d("FormGroupPanelState",class extends it{constructor(){super(...arguments),this.isShowMore=!1,this.actionGroupState=null}}),Du=d("FormGroupPanelController",class extends ct{get disableClose(){const{titleBarCloseMode:t}=this.model;return t===0||t===void 0}get defaultExpansion(){const{titleBarCloseMode:t}=this.model;return this.disableClose||t===1}createState(){var t;return new $s((t=this.parent)==null?void 0:t.state)}async onInit(){super.onInit(),await this.initActionStates()}async formStateNotify(t){super.formStateNotify(t),this.state.actionGroupState&&this.state.actionGroupState.update(this.form.data.getOrigin())}async initActionStates(){var t;const{uiactionGroup:e}=this.model;if(!((t=e?.uiactionGroupDetails)!=null&&t.length))return;const a=new ft;e.uiactionGroupDetails.forEach(s=>{const i=s.uiactionId;if(i){const r=new pt(s.id,this.form.context.srfappid,i);a.addState(s.id,r)}}),await a.update(),this.state.actionGroupState=a}async onActionClick(t,e){const a=t.uiactionId;await U.execAndResolved(a,{context:this.form.context,params:this.form.params,data:[this.data],view:this.form.view,event:e})}}),wu=d("FormItemState",class extends it{constructor(t){super(t),this.parent=t,this.error=null,this.enableCondDisabled=!1;let e=!1;Object.defineProperty(this,"disabled",{enumerable:!0,configurable:!0,get(){return this.enableCondDisabled?!0:e},set(a){return e=a,!0}})}}),Oc=d("FormItemController",class extends ct{constructor(t,e,a){super(t,e,a),this.rules=[],this.context=e.context,this.params=e.params}createState(){var t;return new wu((t=this.parent)==null?void 0:t.state)}get name(){return this.model.id}get value(){return this.form.data[this.name]}get valueItemName(){if(this.model.editor)return this.model.editor.valueItemName}get unitName(){return this.model.unitName}get valueFormat(){return this.model.valueFormat}get dataType(){return this.model.dataType}async onInit(){await super.onInit(),this.state.required=!this.model.allowEmpty;const{enableCond:t}=this.model;t||(this.state.enableCondDisabled=!0),this.model.editor&&this.model.editor.editorType!=="HIDDEN"&&(this.editorProvider=await bt(this.model.editor),this.editorProvider&&(this.editor=await this.editorProvider.createController(this.model.editor,this),await this.initRules()))}async initRules(){this.rules=[];const t=xe(this.form.model.deformItemVRs||[],this.name);t&&this.rules.push(...Ye(t,this.name,this.valueItemName)),this.model.editor&&this.rules.push(...qe(this.model.editor)),this.rules.length>0&&(this.validator=new ye({[this.name]:this.rules}))}calcEnableCond(){const{enableCond:t}=this.model,e=this.data.srfuf===0;(e&&t===2||!e&&t===1)&&(this.state.enableCondDisabled=!0)}async dataChangeNotify(t){await super.dataChangeNotify(t);const{resetItemNames:e}=this.model;let a=!1;e&&e.length>0&&e.forEach(s=>{t.includes(s)&&(a=!0)}),a&&this.setDataValue(null,this.name),(t.includes(this.name)||t.includes(this.valueItemName))&&this.validate(),t.includes(this.name)&&this.model.deformItemUpdateId&&await this.form.updateFormItem(this.model.deformItemUpdateId)}async formStateNotify(t){super.formStateNotify(t),this.calcEnableCond(),t==="LOAD"&&this.setDefaultValue(!1)}calcDynamicLogic(t,e=!1){this.model.hidden||super.calcDynamicLogic(t,e)}async validate(){if(!this.state.visible)return this.state.error=null,!0;if(this.state.required&&V(this.data[this.name]))return this.state.error="\u8BF7\u586B\u5199".concat(this.model.caption||""),!1;if(this.validator)try{await this.validator.validate(this.data)}catch({errors:t,_fields:e}){return this.state.error=t[0].message,!1}return this.state.error=null,!0}async setDataValue(t,e){e=e||this.name,await this.form.setDataValue(e,t),this.form.evt.emit("onFormDetailEvent",{formDetailName:this.model.id,formDetailEventName:"onChange"})}setDefaultValue(t,e=this.data){const{createDVT:a,createDV:s,updateDVT:i,updateDV:r}=this.model,n=t?a:i,o=t?s:r,u=Qe({name:this.name,valueType:n,defaultValue:o,valueFormat:this.model.valueFormat},{data:e,context:this.context,params:this.params});u!==void 0&&(e[this.name]=u)}onFocus(t){this.form.evt.emit("onFormDetailEvent",{formDetailName:this.model.id,formDetailEventName:"onFocus",event:t})}onBlur(t){this.form.evt.emit("onFormDetailEvent",{formDetailName:this.model.id,formDetailEventName:"onBlur",event:t})}onEnter(t){this.form.evt.emit("onFormDetailEvent",{formDetailName:this.model.id,formDetailEventName:"onEnter",event:t})}}),ea=d("FormMDCtrlContentTypeController",class{constructor(t){this.parent=t,this.model=this.parent.model}get data(){return this.parent.state.contentCtrlData}async onInit(){}onDataChange(t){this.parent.state.contentCtrlData=t,this.parent.setFormDataValue()}onDataItemChange(t,e){this.parent.state.contentCtrlData[e]=t,this.parent.setFormDataValue()}onDataRemove(t){var e;t<0||((e=this.parent.state.contentCtrlData)==null||e.splice(t,1),this.parent.setFormDataValue())}onDataInsert(t){var e;(e=this.parent.state.contentCtrlData)==null||e.push(t||{}),this.parent.setFormDataValue()}async initData(){const t=this.model.appDEFieldId||this.model.fieldName||this.model.id;if(t){const e=this.parent.data[t];this.model.contentType==="REPEATER"&&this.model.detailStyle==="STYLE3"?Array.isArray(e)?this.parent.state.contentCtrlData={}:this.parent.state.contentCtrlData=e||{}:Array.isArray(e)?this.parent.state.contentCtrlData=e||[]:this.parent.state.contentCtrlData=[]}}async validate(){return!0}refresh(){}}),oe=d("FormMDCtrlControlController",class extends ea{async onInit(){const{model:t}=this.parent,{contentControl:e}=t;if(!e)throw new f("\u8868\u5355\u591A\u6570\u636E\u90E8\u4EF6\u672A\u914D\u7F6E\u5D4C\u5165\u90E8\u4EF6");this.controlModel=e;const a=await dt(this.controlModel);a&&(this.provider=a)}}),vu=d("FormMDCtrlDataViewController",class extends oe{constructor(){super(...arguments),this.selectData=[],this.state={isSelect:!1}}onDataViewCreated(t){this.dataViewController=t.ctrl}onSelectionChange(t){this.state.isSelect=t.data.length>0}onDataRemove(){this.dataViewController&&(this.dataViewController.remove(),this.parent.state.contentCtrlData=this.dataViewController.state.items,this.parent.setFormDataValue())}onDataChange(t){this.parent.state.contentCtrlData=t,this.parent.setFormDataValue()}async initData(){var t;(t=this.dataViewController)==null||t.load()}async onDataInsert(){}refresh(){var t;(t=this.dataViewController)==null||t.refresh()}}),Js=d("EditFormService",class extends ae{async get(t,e={}){var a;let s=await this.exec(((a=this.model.getControlAction)==null?void 0:a.appDEMethodId)||"get",t,void 0,e);return s=this.handleResponse(s),s}async getDraft(t,e={}){var a;let s=await this.exec(((a=this.model.getDraftControlAction)==null?void 0:a.appDEMethodId)||"getdraft",t,void 0,e);return s=this.handleResponse(s),s}async remove(t,e={}){var a;return await this.exec(((a=this.model.removeControlAction)==null?void 0:a.appDEMethodId)||"remove",t,void 0,e)}async create(t,e){var a;const s=e instanceof G?e.getOrigin():e,i=this.getFilteredData(s);let r=await this.exec(((a=this.model.createControlAction)==null?void 0:a.appDEMethodId)||"create",t,i);return r=this.handleResponse(r),r}async update(t,e){var a;const s=e instanceof G?e.getOrigin():e,i=this.getFilteredData(s);let r=await this.exec(((a=this.model.updateControlAction)==null?void 0:a.appDEMethodId)||"update",t,i);return r=this.handleResponse(r),r}async goBack(t,e){var a;const i=(a=this.model.goBackControlAction)==null?void 0:a.appDEMethodId;if(!i)throw new m(this.model,"\u7F3A\u5C11\u8FD4\u56DE\u64CD\u4F5C\u5B9E\u4F53\u884C\u4E3A");let r=await this.exec(i,t,e instanceof G?e.getOrigin():e);return r=this.handleResponse(r),r}async updateFormItem(t,e,a={}){let s=await this.exec(t,e,a);return s=this.handleResponse(s),s}async wfStart(t,e,a){var s;const r=((s=this.model.wfstartControlAction)==null?void 0:s.appDEMethodId)||"wfstart";return(await this.app.deService.getService(this.model.appDataEntityId)).wf.exec(r,t,e,a instanceof G?a.getOrigin():a)}async wfSubmit(t,e,a){var s;const i=this.model;let r="";return e.type?r=e.type:r=((s=i.wfsubmitControlAction)==null?void 0:s.appDEMethodId)||"wfsubmit",(await this.app.deService.getService(this.model.appDataEntityId)).wf.exec(r,t,e,a instanceof G?a.getOrigin():a)}initUIDataMap(){super.initUIDataMap();const t=["srfwfmemo","srfwftransferor","srfactionparam","srffrontuf","srfnextform"];W(this.model,e=>{if(e.detailType==="FORMITEM"||e.detailType==="MDCTRL"){const a=e,s=a.id.toLowerCase(),i=a.fieldName||e.appDEFieldId;let r;i?r=new H(s,i,{isOriginField:!0,dataType:a.dataType}):r=new H(s,s,{isOriginField:t.includes(s)}),this.dataUIMap.set(s,r)}},{childrenFields:["deformPages","deformTabPages","deformDetails"]})}handleResponse(t){const e=super.handleResponse(t);return e.ok&&e.data&&(e.data=this.toUIData(e.data)),e}getFilteredData(t){const e={};return this.dataUIMap.forEach(a=>{t[a.dataKey]!==void 0&&(e[a.dataKey]=t[a.dataKey])}),e}}),Au=d("EditFormController",class extends Qs{get view(){return this.ctx.view}async onCreated(){await super.onCreated(),this.service=new Js(this.model),await this.service.init(this.context),this.autoSave=Wt(this.autoSave.bind(this),500,{trailing:!0})}async onMounted(){await super.onMounted(),this.state.loadDefault&&this.load()}async loadDraft(t){const{context:e,params:a}=this.handlerAbilityParams(t),s=await this.getDraftParams();Object.assign(a,s);let i;try{await this.startLoading(),await this.evt.emit("onBeforeLoadDraft",{params:a}),i=await this.service.getDraft(e,a)}catch(r){throw await this.evt.emit("onLoadDraftError",void 0),this.actionNotification("GETDRAFTERROR",{error:r}),r}finally{await this.endLoading()}return this.state.data=i.data,Mt(this.data,s),this.formStateNotify("DRAFT"),await this.evt.emit("onLoadDraftSuccess",void 0),this.actionNotification("GETDRAFTSUCCESS"),this.state.isLoaded=!0,this.data}async copy(){const t=A(this.context),e=A(this.params),s=(await ibiz.hub.getAppDataEntity(this.model.appDataEntityId)).keyAppDEFieldId;if(s&&this.params[s]){const r=O(this.model.appDataEntityId);t[r]=this.params[s],delete e[s],delete this.params[s],delete e.srfcopymode,delete this.params.srfcopymode}let i;try{await this.startLoading(),await this.evt.emit("onBeforeLoad",void 0),i=await this.service.get(t,e)}catch(r){throw await this.evt.emit("onLoadError",void 0),this.actionNotification("GETERROR",{error:r}),r}finally{await this.endLoading()}return i.data.srfkey=void 0,i.data.tempsrfkey=K(),this.state.modified=!1,this.state.data=i.data,this.formStateNotify("LOAD"),await this.evt.emit("onLoadSuccess",void 0),this.actionNotification("GETSUCCESS"),this.state.isLoaded=!0,this.data}async load(t){if(this.params.srfcopymode)return this.copy();if(!Ua(this.context,this.model.appDataEntityId))return this.loadDraft();const{context:s,params:i}=this.handlerAbilityParams(t),r=A(i);let n;try{await this.startLoading(),await this.evt.emit("onBeforeLoad",void 0),n=await this.service.get(s,r)}catch(o){throw await this.evt.emit("onLoadError",void 0),this.actionNotification("GETERROR",{error:o}),o}finally{await this.endLoading()}return this.state.modified=!1,this.state.data=n.data,this.formStateNotify("LOAD"),await this.evt.emit("onLoadSuccess",void 0),this.actionNotification("GETSUCCESS"),this.state.isLoaded=!0,this.data}async save(t){const e=t?.silent===!0;if(this.state.processing)return await fe(500,this.save.bind(this),[t]);if(!await this.validate())throw new f("\u8BF7\u68C0\u67E5\u8868\u5355\u586B\u5199\uFF01");e||await this.startLoading(),await this.evt.emit("onBeforeSave",void 0);const{context:s,data:i}=this.handlerAbilityParams(t),r=i[0],n=r.srfuf===0;let o;try{o=n?await this.service.create(s,r):await this.service.update(s,r)}catch(c){throw await this.evt.emit("onSaveError",void 0),this.actionNotification("".concat(n?"CREATE":"UPDATE","ERROR"),{error:c}),c}finally{e||await this.endLoading()}const u=t?.noFillBack===!0;return o.data&&(u?(this.data.updatedate=o.data.updatedate,this.data.srfkey=o.data.srfkey):It(this.data,o.data),this.data.tempsrfkey=this.data.srfkey),this.state.modified=!1,await this.evt.emit("onSaveSuccess",void 0),this.formStateNotify("SAVE"),e||this.actionNotification("".concat(n?"CREATE":"UPDATE","SUCCESS"),{default:"".concat(this.data.srfmajortext||"","\u4FDD\u5B58\u6210\u529F")}),this.view.modal.mode==="ROUTE"&&ibiz.mc.command.send(this.data.$origin,n?"OBJECTCREATED":"OBJECTUPDATED"),this.data}async remove(t){const{context:e,params:a}=this.handlerAbilityParams(t);let s,i=!1;if(await this.evt.emit("onBeforeRemove",void 0),this.data.srfuf===1){if(i=await ibiz.modal.confirm({title:"\u63D0\u793A",desc:"\u786E\u8BA4\u5220\u9664\u5417\uFF1F"}),!i)return!1;await this.startLoading();try{s=await this.service.remove(e,a)}catch(r){throw await this.evt.emit("onRemoveError",void 0),this.actionNotification("REMOVEERROR",{error:r}),r}finally{await this.endLoading()}i=s.ok}return this.state.data=new G,this.state.modified=!1,await this.evt.emit("onRemoveSuccess",void 0),this.actionNotification("REMOVESUCCESS"),this.view.modal.mode==="ROUTE"&&ibiz.mc.command.send(this.data.$origin,"OBJECTREMOVED"),i}async goBack(){await this.startLoading();let t;try{t=await this.service.goBack(this.context,this.data)}finally{await this.endLoading()}return t.data&&It(this.data,t.data),this.data}async updateFormItem(t){var e;const a=(e=this.model.deformItemUpdates)==null?void 0:e.find(c=>c.id===t);if(!a)throw new f("\u6CA1\u627E\u5230".concat(t,"\u8868\u5355\u9879\u66F4\u65B0"));const{appDEMethodId:s,defiupdateDetails:i,customCode:r,scriptCode:n}=a,o=i?.map(c=>c.id);let u;if(r&&n)u=B.execScriptFn({...this.getEventArgs(),data:this.data},n,{isAsync:!1});else{const c={...this.params,...this.data.getOrigin()};u=(await this.service.updateFormItem(s,this.context,c)).data}u&&o?.length&&await Promise.all(o.map(c=>this.setDataValue(c,u[c])))}async wfStart(t){if(!await this.validate())throw new f("\u8BF7\u68C0\u67E5\u8868\u5355\u586B\u5199\uFF01");await this.startLoading();const{context:a,params:s}=this.handlerAbilityParams(t);try{await this.service.wfStart(a,s,this.data),this.view.modal.mode==="ROUTE"&&(ibiz.mc.command.send(this.data.$origin,"OBJECTUPDATED"),ibiz.mc.command.send({srfdecodename:"SysTodo"},"OBJECTUPDATED"))}catch(i){throw this.actionNotification("WFSTARTERROR",{error:i}),i}finally{await this.endLoading()}this.actionNotification("WFSTARTSUCCESS",{default:"\u6D41\u7A0B\u542F\u52A8\u6210\u529F"})}async wfSubmit(t){if(!await this.validate())throw new f("\u8BF7\u68C0\u67E5\u8868\u5355\u586B\u5199\uFF01");await this.startLoading();const{context:a,params:s}=this.handlerAbilityParams(t);try{await this.service.wfSubmit(a,s,this.data),this.view.modal.mode==="ROUTE"&&(ibiz.mc.command.send(this.data.$origin,"OBJECTUPDATED"),ibiz.mc.command.send({srfdecodename:"SysTodo"},"OBJECTUPDATED"))}catch(i){throw this.actionNotification("WFSUBMITERROR",{error:i}),i}finally{await this.endLoading()}this.actionNotification("WFSUBMITSUCCESS",{default:"\u6D41\u7A0B\u63D0\u4EA4\u6210\u529F"})}async dataChangeNotify(t){await super.dataChangeNotify(t),this.autoSave()}async autoSave(){if(this.model.enableAutoSave)try{await this.save({silent:!0,noFillBack:!0})}catch(t){ibiz.log.error(t)}}}),Iu=d("FormMDCtrlFormController",class extends oe{constructor(){super(...arguments),this.controlControllerArray=[],this.state={data:[]}}onControlCreated(t,e){const a=t.ctrl;this.controlControllerArray[e]=a,a.load()}async onInit(){super.onInit(),this.service=new Js(this.model.contentControl),await this.service.init(this.parent.form.context)}async fetch(t,e={}){const a="fetchdefault";let s=await this.service.exec(a,t,e);return s=this.handleResponse(s),s}handleResponse(t){const e=t;return e.ok&&(j(e.data)?e.data=e.data.map(a=>this.service.toUIData(a)):e.data=this.service.toUIData(e.data)),e}async initData(){const t=await this.fetch(this.parent.form.context,this.parent.form.params);this.state.data=t.data}onDataRemove(t){const e=this.controlControllerArray[t];e&&e.remove()}onFormChange(t,e){const a=this.controlControllerArray[e];a&&(a.save(),this.state.data[e]&&It(this.state.data[e],t[0]),this.parent.state.contentCtrlData=this.state.data,this.parent.setFormDataValue())}onFormRemoveSuccess(t){this.state.data.splice(t,1),this.controlControllerArray.splice(t,1),this.parent.state.contentCtrlData=this.state.data,this.parent.setFormDataValue()}async onDataInsert(){const t=await this.service.getDraft(this.parent.form.context,this.parent.form.params);if(t.data){const e=await this.service.create(this.parent.form.context,t.data);this.state.data.push(e.data),this.parent.state.contentCtrlData=this.state.data,this.parent.setFormDataValue()}}async validate(){return(await Promise.all(this.controlControllerArray.map(e=>e.validate()))).findIndex(e=>!e)===-1}refresh(){this.initData()}}),yu=d("FormMDCtrlGridController",class extends oe{constructor(){super(...arguments),this.selectData=[],this.state={isSelect:!1}}onGridCreated(t){this.gridController=t.ctrl}onSelectionChange(t){this.state.isSelect=t.data.length>0}onDataRemove(){this.gridController&&(this.gridController.remove(),this.parent.state.contentCtrlData=this.gridController.state.items,this.parent.setFormDataValue())}onDataChange(t){this.parent.state.contentCtrlData=t,this.parent.setFormDataValue()}async initData(){var t;(t=this.gridController)==null||t.load()}async onDataInsert(){this.gridController&&(await this.gridController.newRow(),this.parent.state.contentCtrlData=this.gridController.state.items,this.parent.setFormDataValue())}async onInit(){const{model:t}=this.parent,{contentControl:e}=t;if(!e)throw new f("\u8868\u5355\u591A\u6570\u636E\u90E8\u4EF6\u672A\u914D\u7F6E\u5D4C\u5165\u90E8\u4EF6");It(e,{enableRowEdit:!0,enableRowNew:!0}),this.controlModel=e;const a=await dt(this.controlModel);a&&(this.provider=a)}async validate(){if(!this.gridController)return!0;const{rows:t}=this.gridController.state;return(await Promise.all(t.map(a=>this.gridController.validate(a)))).findIndex(a=>!a)===-1}refresh(){var t;(t=this.gridController)==null||t.refresh()}}),Fu=d("FormMDCtrlListController",class extends oe{constructor(){super(...arguments),this.selectData=[],this.state={isSelect:!1}}onListCreated(t){this.listController=t.ctrl}onSelectionChange(t){this.state.isSelect=t.data.length>0}onDataRemove(){this.listController&&(this.listController.remove(),this.parent.state.contentCtrlData=this.listController.state.items,this.parent.setFormDataValue())}onDataChange(t){this.parent.state.contentCtrlData=t,this.parent.setFormDataValue()}async initData(){var t;(t=this.listController)==null||t.load()}async onDataInsert(){}refresh(){var t;(t=this.listController)==null||t.refresh()}}),Zs=d("FormMDCtrlRepeaterFormController",class extends ea{constructor(){super(...arguments),this.formControllerArray=[]}async onDataInsert(){const t={};super.onDataInsert(t)}onDataRemove(t){t<0||super.onDataRemove(t)}async validate(){const t=this.formControllerArray.map(a=>a.validate());return(await Promise.all(t)).findIndex(a=>!a)===-1}setFromController(t){this.formControllerArray.push(t)}}),Pu=d("FormMDCtrlRepeaterFormOneController",class extends Zs{get data(){return this.parent.state.contentCtrlData}onDataItemChange(t){this.parent.state.contentCtrlData=t,this.parent.setFormDataValue()}}),bu=d("FormMDCtrlRepeaterGridController",class extends ea{constructor(){super(...arguments),this.columns=[],this.editorMap={}}async onInit(){this.initColumns(this.model.deformDetails||[])}initColumns(t){t.forEach(async e=>{if(e.detailType==="FORMITEM"){const{editor:s,dataType:i}=e,r=await bt(s);if(r){const n=await r.createController(s,{unitName:s.unitName,valueFormat:s.valueFormat,context:this.parent.form.context,params:this.parent.form.params,dataType:i});this.editorMap[e.codeName]={provider:r,controller:n}}this.columns.push({codeName:e.codeName,caption:e.caption})}const a=jt(e);a.length&&this.initColumns(a)})}rowDataChange(t,e,a){const s=this.data[a];Object.prototype.hasOwnProperty.call(s,e)&&!se(s[e],t)||(s[e]=t,this.onDataItemChange(s,a))}}),Nu=d("FormMDCtrlState",class extends it{constructor(){super(...arguments),this.contentCtrlData=[]}}),Mc=d("FormMDCtrlController",class extends ct{get isCreate(){return this.model.buildInActions?[1,3,5,7].includes(this.model.buildInActions):!1}get isDelete(){return this.model.buildInActions?[4,5,6,7].includes(this.model.buildInActions):!1}createState(){var t;return new Nu((t=this.parent)==null?void 0:t.state)}async onInit(){switch(await super.onInit(),this.model.contentType){case"FORM":this.mdCtrlContentController=new Iu(this);break;case"GRID":this.mdCtrlContentController=new yu(this);break;case"LIST":this.mdCtrlContentController=new Fu(this);break;case"DATAVIEW":this.mdCtrlContentController=new vu(this);break;case"REPEATER":this.model.detailStyle==="DEFAULT"&&(this.mdCtrlContentController=new Zs(this)),this.model.detailStyle==="STYLE3"&&(this.mdCtrlContentController=new Pu(this)),this.model.detailStyle==="STYLE2"&&(this.mdCtrlContentController=new bu(this));break}this.mdCtrlContentController&&await this.mdCtrlContentController.onInit(),this.form.state.isLoaded&&this.mdCtrlContentController.initData(),this.form.evt.on("onLoadDraftSuccess",()=>{this.mdCtrlContentController.initData()}),this.form.evt.on("onLoadSuccess",()=>{this.mdCtrlContentController.initData()})}setFormDataValue(){const t=this.model.appDEFieldId||this.model.fieldName||this.model.id;t&&this.form.setDataValue(t,A(this.state.contentCtrlData))}async validate(){return this.mdCtrlContentController.validate()}setDefaultValue(){}async dataChangeNotify(t){await super.dataChangeNotify(t);const{resetItemNames:e}=this.model,a=this.model.appDEFieldId||this.model.fieldName||this.model.id;let s=!1;e&&e.length>0&&e.forEach(i=>{t.includes(i)&&(s=!0)}),s&&(this.state.contentCtrlData=null,this.setFormDataValue()),t.includes(a)&&this.validate(),t.includes(a)&&this.model.deformItemUpdateId&&await this.form.updateFormItem(this.model.deformItemUpdateId),t.includes(this.model.id)&&this.mdCtrlContentController.refresh()}refresh(){this.mdCtrlContentController.refresh()}}),xc=d("FormMDCtrlItemController",class extends Au{constructor(t,e,a,s,i,r){const n=A(r.model);Object.assign(n,t,{name:void 0}),super(n,e,a,s),this.state.data=i,this.state.isSimple=!0}async initDetailControllers(t=this.model.deformDetails,e=this,a=void 0){await Promise.all(t.map(async s=>{const i=await ze(s);if(!i)return;e.providers[s.id]=i;const r=await i.createController(s,e,a);e.details[s.id]=r,(s.detailType==="FORMITEM"||s.detailType==="MDCTRL")&&e.formItems.push(r);const n=jt(s);n.length&&await this.initDetailControllers(n,e,r)}))}}),Su=d("FormPageState",class extends $s{}),Vc=d("FormPageController",class extends Du{createState(){var t;return new Su((t=this.parent)==null?void 0:t.state)}}),Ru=d("FormRawItemState",class extends it{}),Wc=d("FormRawItemController",class extends ct{createState(){var t;return new Ru((t=this.parent)==null?void 0:t.state)}}),Lu=d("FormTabPageState",class extends it{}),kc=d("FormTabPageController",class extends ct{createState(){var t;return new Lu((t=this.parent)==null?void 0:t.state)}}),Tu=d("FormTabPanelState",class extends it{}),Uc=d("FormTabPanelController",class extends ct{createState(){var t;return new Tu((t=this.parent)==null?void 0:t.state)}}),aa=d("GridColumnController",class{constructor(t,e){this.isAdaptiveColumn=!1,this.isCustomCode=!1;var a;this.model=t,this.grid=e,this.isAdaptiveColumn=t.widthUnit==="STAR",this.isAdaptiveColumn&&(this.grid.hasAdaptiveColumn=!0),(a=this.deGridDataItem)!=null&&a.customCode&&(this.isCustomCode=!0)}get context(){return this.grid.context}get params(){return this.grid.params}get enableRowEdit(){return!!(this.grid.model.enableRowEdit&&this.model.enableRowEdit)}get deGridDataItem(){var t;return(t=this.grid.model.degridDataItems)==null?void 0:t.find(e=>e.id===this.model.id)}get valueFormat(){var t;return(t=this.deGridDataItem)==null?void 0:t.format}get dataType(){var t;return(t=this.deGridDataItem)==null?void 0:t.dataType}async init(){await this.onInit()}async onInit(){}getCustomHtml(t){var e;if((e=this.deGridDataItem)!=null&&e.scriptCode)return B.execScriptFn({data:t.data},this.deGridDataItem.scriptCode,{singleRowReturn:!0,isAsync:!1})}}),ti=d("GridRowState",class{constructor(t,e){this.errors={},this.uaColStates={},this.editColStates={},this.showRowEdit=!1,this.modified=!1,this.processing=!1,this.data=t,Object.keys(this.data).forEach(a=>{this.errors[a]===void 0&&(this.errors[a]=null)}),Object.values(e.uaColumns).forEach(a=>{a.initActionStates(this)}),Object.values(e.editColumns).forEach(a=>{this.editColStates[a.fieldName]={disabled:!1,readonly:!1,editable:ibiz.config.grid.editShowMode==="all",required:!1}})}}),ei=d("GridService",class extends at{initUIDataMap(){var t;super.initUIDataMap(),(t=this.model.degridDataItems)==null||t.forEach(e=>{const a=e.id.toLowerCase(),s=e.appDEFieldId;let i;if(s){const r=s.toLowerCase();i=new H(a,r,{isOriginField:!0,dataType:e.dataType})}else i=new H(a,a);this.dataUIMap.set(a,i)})}async updateGridEditItem(t,e,a={}){let i=await(await this.app.deService.getService(this.model.appDataEntityId)).exec(t,e,a);return i=this.handleResponse(i),i}}),Bu=d("GridController",class extends tt{constructor(){super(...arguments),this.hasAdaptiveColumn=!1,this.isMultistageHeader=!1,this.columns={},this.fieldColumns={},this.uaColumns={},this.editColumns={},this.providers={},this.aggTitle="\u5408\u8BA1"}get groupCodeListItems(){var t;return(t=this.groupFieldColumn)==null?void 0:t.codeListItems}get enableAgg(){return this.model.aggMode!=="NONE"}get allowRowEdit(){return!!this.model.enableRowEdit&&this.state.rowEditOpen}get overflowMode(){return ibiz.config.grid.overflowMode}initState(){super.initState(),this.state.rows=[],this.state.noSort=this.model.noSort===!0,this.state.size=this.model.pagingSize||20,this.state.singleSelect=this.model.singleSelect===!0,this.state.columnStates=[],this.state.aggResult={},this.state.rowEditOpen=!1}async onCreated(){await super.onCreated(),this.service=new ei(this.model),await this.service.init(this.context),this.initColumnStates(),await this.initGridColumns(),this.dataChangeNotify=pe(this.dataChangeNotify.bind(this),(t,e)=>[t[0],Array.from(new Set([...t[1],...e[1]]))],200),await this.initGroup()}async initGroup(){if(!this.model.enableGroup)return;const{groupAppDEFieldId:t,groupCodeListId:e,groupMode:a}=this.model;if(this.groupFieldColumn=Object.values(this.fieldColumns).find(r=>r.model.appDEFieldId===t),!this.groupFieldColumn)throw new m(this.model,"\u6CA1\u6709\u914D\u7F6E\u5206\u7EC4\u5C5E\u6027\u7684\u5C5E\u6027\u5217");const s=this.groupFieldColumn.model.id;if(!this.groupFieldColumn.model.appCodeListId)throw new m(this.groupFieldColumn.model,"\u5206\u7EC4\u5C5E\u6027\u7684\u5C5E\u6027\u5217".concat(s,"\u6CA1\u6709\u914D\u7F6E\u4EE3\u7801\u8868"));const i=this.state.columnStates.findIndex(r=>r.key===this.groupFieldColumn.model.codeName);if(i!==-1&&i!==0){if(this.isMultistageHeader)throw new m(this.model,"\u8BF7\u5C06\u5206\u7EC4\u5C5E\u6027\u5217".concat(s,"\u914D\u7F6E\u4E3A\u7B2C\u4E00\u5217"));const r=this.state.columnStates.splice(i,1);this.state.columnStates.unshift(...r)}if(a==="CODELIST"){if(!e)throw new m(this.model,"\u4EE3\u7801\u8868\u5206\u7EC4\u6A21\u5F0F\u9700\u8981\u914D\u7F6E\u4EE3\u7801\u8868");if(this.groupFieldColumn.model.appCodeListId!==e)throw new m(this.model,"\u5206\u7EC4\u4EE3\u7801\u8868\u4E0E\u5C5E\u6027\u5217".concat(s,"\u7684\u4EE3\u7801\u8868\u4E0D\u4E00\u81F4"))}}async afterLoad(t,e){return await super.afterLoad(t,e),await nt(Object.values(this.fieldColumns).map(async a=>{await a.loadCodeList()}),!1),this.state.rows=e.map(a=>{const s=new ti(a,this);return this.gridStateNotify(s,"LOAD"),s}),this.state.rows.forEach(a=>{Object.values(a.uaColStates).forEach(s=>{s.update(a.data.getOrigin(),this.model.appDataEntityId)})}),this.calcGroupData(e),this.calcAggResult(e),e}calcGroupData(t){const{enableGroup:e,groupMode:a}=this.model;if(e){const s=new Map,i=a==="CODELIST",r=this.groupFieldColumn.model.id;i&&this.groupCodeListItems.forEach(n=>{s.set(n.value,[])}),t.forEach(n=>{const o=n[r];!i&&!s.has(o)&&s.set(o,[]),s.has(o)&&s.get(o).push(n)}),this.state.groups=[],s.forEach((n,o)=>{const u=this.groupCodeListItems.find(c=>c.value===o);this.state.groups.push({caption:u?.text||"".concat(o),key:o,children:n})})}}async loadRemoteAgg(){const{aggMode:t,aggAppDataEntityId:e,aggAppDEDataSetId:a}=this.model;if(t!=="ALL")return;if(!a||!e)throw new m(this.model,"\u7F3A\u5C11\u914D\u7F6E\u805A\u5408\u5B9E\u4F53\u6216\u805A\u5408\u6570\u636E\u96C6");const s=await this.getFetchParams(),r=await ibiz.hub.getApp(this.context.srfappid).deService.exec(e,a,this.context,void 0,s);r.data.length&&([this.state.remoteAggResult]=r.data)}calcAggResult(t){Object.values(this.fieldColumns).forEach(e=>{const a=e.calcFieldAgg(t);a&&(this.state.aggResult[e.model.id]=a)})}afterRemove(t){super.afterRemove(t);const e=this.findRowStateIndex(t);this.state.rows.splice(e,1),this.state.groups.forEach(a=>{if(a.children.length){const s=a.children.findIndex(i=>i.srfkey===t.srfkey);s!==-1&&a.children.splice(s,1)}})}async newRow(){const{enableRowEdit:t,enableRowNew:e}=this.model,{editShowMode:a}=ibiz.config.grid;if(!t||!e||!["row","all"].includes(a)){ibiz.log.error("\u4E0D\u652F\u6301\u65B0\u5EFA\u884C");return}if(a==="row"&&this.state.rows.find(c=>c.showRowEdit))throw new f("\u8BF7\u5148\u5B8C\u6210\u5F53\u524D\u884C\u7F16\u8F91\u4E2D\u7684\u884C\u7684\u64CD\u4F5C");const s={...this.params},i=this.calcDefaultValue({},!0);Object.assign(s,i);let r;try{r=await this.service.getDraft(this.context,s)}catch(u){throw this.actionNotification("GETDRAFTERROR",{error:u}),u}const n=r.data;Mt(n,i),this.state.items.unshift(n);const o=new ti(n,this);this.state.rows.unshift(o),this.gridStateNotify(o,"DRAFT"),a==="row"&&this.switchRowEdit(this.state.rows[0],!0),this.actionNotification("GETDRAFTSUCCESS",{data:n})}async save(t){if(this.state.isSimple)return;const e=t.srfuf===0,a=this.findRowState(t);if(!a)throw new f("\u884C\u6570\u636E\u4E0D\u5B58\u5728");if(!a.modified){ibiz.log.debug("\u503C\u6CA1\u6709\u53D1\u751F\u6539\u53D8");return}if(a.processing){await fe(500,this.save.bind(this),[t]);return}if(!await this.validate(a))throw new f("\u884C\u6570\u636E\u6821\u9A8C\u4E0D\u901A\u8FC7\uFF0C\u4FDD\u5B58\u53D6\u6D88");let i;const r=O(this.model.appDataEntityId),n=this.context.clone();n[r]=t.srfkey;try{i=e?await this.service.create(n,t):await this.service.update(n,t)}catch(u){throw await this.evt.emit("onSaveError",void 0),this.actionNotification("".concat(e?"CREATE":"UPDATE","ERROR"),{error:u,data:a.data}),u}const o=this.findRowStateIndex(t);this.state.items.splice(o,1,i.data),a.data=i.data,a.modified=!1,this.gridStateNotify(a,"SAVE"),await this.evt.emit("onSaveSuccess",void 0)}async saveAll(){const t=this.state.rows.filter(e=>e.modified).map(e=>e.data);t.length&&await nt(t.map(e=>this.save(e)))}async initColumnsController(t){var e;const a=await Ge(t);if(!a)return;this.providers[t.codeName]=a;const s=await a.createController(t,this);this.columns[t.codeName]=s,t.columnType==="DEFGRIDCOLUMN"?(this.fieldColumns[t.codeName]=s,t.enableRowEdit&&(this.editColumns[t.codeName]=s)):t.columnType==="UAGRIDCOLUMN"?this.uaColumns[t.codeName]=s:t.columnType==="GROUPGRIDCOLUMN"&&(this.isMultistageHeader=!0,await Promise.all(((e=t.degridColumns)==null?void 0:e.map(async i=>{await this.initColumnsController(i)}))||[]))}initColumnStates(){W(this.model,t=>{t.columnType!=="GROUPGRIDCOLUMN"&&this.state.columnStates.push({key:t.codeName,caption:t.caption,hidden:!!t.hideDefault,uaColumn:t.columnType==="UAGRIDCOLUMN"})},{childrenFields:["degridColumns"]}),this.calcColumnFixed()}calcColumnFixed(){const t=this.state.columnStates.filter(i=>!i.hidden),e=t.length,{frozenFirstColumn:a,frozenLastColumn:s}=this.model;t.forEach((i,r)=>{i.uaColumn?i.fixed=r+1<=Math.floor(e/2)?"left":"right":a&&r<a?i.fixed="left":s&&r>=e-s&&(i.fixed="right")})}async initGridColumns(){this.model.degridColumns&&await Promise.all(this.model.degridColumns.map(async t=>this.initColumnsController(t)))}async setRowValue(t,e,a){if(!(Object.prototype.hasOwnProperty.call(t.data,e)&&!se(t.data[e],a))){t.data[e]=a,t.modified=!0,t.processing=!0;try{await this.dataChangeNotify(t,[e]),await this.evt.emit("onGridDataChange",{data:this.state.rows.map(s=>s.data)})}finally{t.processing=!1}}}async dataChangeNotify(t,e){await nt(Object.values(this.editColumns).map(async a=>a.dataChangeNotify(t,e)))}gridStateNotify(t,e){Object.values(this.editColumns).forEach(a=>{a.gridStateNotify(t,e)})}async validate(t){return(await Promise.all(Object.values(this.editColumns).map(a=>a.validate(t)))).findIndex(a=>!a)===-1}async toggleRowEdit(){if(!this.model.enableRowNew)throw new f("\u5F53\u524D\u8868\u683C\u4E0D\u652F\u6301\u884C\u7F16\u8F91\uFF0C\u65E0\u6CD5\u5207\u6362\u5F00\u542F\u884C\u7F16\u8F91");this.state.rowEditOpen=!this.state.rowEditOpen}async switchRowEdit(t,e,a=!0){if(!this.allowRowEdit)return;const s=e===void 0?!t.showRowEdit:e;if(t.showRowEdit!==s){if(s===!1)if(a)await this.save(t.data);else{if(t.data.srfuf===0)return t.showRowEdit=!1,this.evt.emit("onRowEditChange",{row:t}),this.remove({data:[t.data],silent:!0});t.cacheData&&(t.data=t.cacheData,delete t.cacheData)}else{if(this.state.rows.find(r=>r.showRowEdit))throw new f("\u540C\u65F6\u53EA\u80FD\u6709\u4E00\u884C\u5F00\u542F\u884C\u7F16\u8F91");if(t.data.srfuf===1){t.cacheData=A(t.data);const r=this.calcDefaultValue(t.data,!1);Object.assign(t.data,r)}}t.showRowEdit=s,Object.values(this.editColumns).forEach(i=>{t.editColStates[i.fieldName].editable=s}),this.evt.emit("onRowEditChange",{row:t})}}setSort(t,e){if(t&&e){const a=this.fieldIdNameMap.get(t).toLowerCase();super.setSort(a,e)}else{const{minorSortAppDEFieldId:a,minorSortDir:s}=this.model;if(a&&s){const i=this.fieldIdNameMap.get(a);this.state.sortQuery="".concat(i.toLowerCase(),",").concat(s.toLowerCase())}else this.state.sortQuery=""}}async updateGridEditItem(t,e){var a;const s=(a=this.model.degridEditItemUpdates)==null?void 0:a.find(l=>l.id===e);if(!s)throw new f("\u6CA1\u627E\u5230".concat(e,"\u7F16\u8F91\u5217\u66F4\u65B0"));const{appDEMethodId:i,degeiupdateDetails:r,customCode:n,scriptCode:o}=s,u=r.map(l=>l.id);let c;if(n&&o)c=B.execScriptFn({...this.getEventArgs(),data:t.data},o,{isAsync:!1});else{const l={...this.params,...t.data.getOrigin()};c=(await this.service.updateGridEditItem(i,this.context,l)).data}c&&u?.length&&await Promise.all(u.map(l=>this.setRowValue(t,l,c[l])))}async loadData(t){const{context:e}=this.handlerAbilityParams(t),a=await this.getFetchParams(t?.viewParam);let s;await this.startLoading();try{s=await this.service.fetch(e,a)}finally{await this.endLoading()}return s.data}async findAllExportColumns(t){var e;const a=ibiz.hub.getApp(this.context.srfappid),s=(e=t.dedataExportItems)==null?void 0:e.map(async i=>{const r={...i};return i.codeListId&&(r.codeList=a.codeList.getCodeList(i.codeListId),r.codeListItems=await a.codeList.get(i.codeListId)),r});if(s)return Promise.all(s)}async exportData(t){var e;this.model.dedataExportId&&!this.dataExport&&(this.dataExport=(e=this.dataEntity.appDEDataExports)==null?void 0:e.find(u=>u.id===this.model.dedataExportId),this.dataExport&&(this.allExportColumns=await this.findAllExportColumns(this.dataExport)));const a=u=>{var c;const l=new Map;this.allExportColumns&&this.allExportColumns.length>0?(c=this.allExportColumns)==null||c.forEach(h=>{h.codeListItems&&l.set(h.appDEFieldId,h.codeListItems)}):Object.keys(this.fieldColumns).forEach(h=>{this.fieldColumns[h].codeList&&l.set(h,this.fieldColumns[h].codeListItems)});const p=A(u.map(h=>h.getOrigin()));return p.forEach(h=>{Object.keys(h).forEach(C=>{var F;l.get(C)&&(h[C]=((F=l.get(C).find(v=>v.value===h[C]))==null?void 0:F.text)||h[C])})}),p},s=async()=>{var u;const c=(u=t.params)==null?void 0:u.type;let l=[];if(c==="activatedPage"&&(l=this.state.rows.map(p=>p.data)),c==="maxRowCount"||c==="customPage"){const{size:p}=this.state,{startPage:h,endPage:E}=t.params,C=c==="customPage"?{page:0,offset:(h-1)*p,size:(E-h+1)*p}:{size:1e3,page:0};l=await this.loadData({viewParam:C})}if(c==="selectedRows"&&(l=this.getData()),l.length===0)throw new f("\u65E0\u5BFC\u51FA\u6570\u636E");return a(l)},i=(u,c)=>c.map(l=>u.map(p=>l[p]));let r=[],n=[];this.allExportColumns&&this.allExportColumns.length>0?(r=this.allExportColumns.map(u=>u.appDEFieldId),n=this.allExportColumns.map(u=>u.caption)):(r=Object.keys(this.fieldColumns).map(u=>this.fieldColumns[u].model.id),n=Object.keys(this.fieldColumns).map(u=>this.fieldColumns[u].model.caption));const o=i(r,await s());await js(n,o,this.model.logicName)}calcDefaultValue(t,e){const a={};return Object.values(this.editColumns).forEach(s=>{const{createDV:i,createDVT:r,updateDV:n,updateDVT:o}=s.editItem,u=e?r:o,c=e?i:n,l=Qe({name:s.fieldName,valueType:u,defaultValue:c,valueFormat:s.valueFormat},{data:t,context:this.context,params:this.params});l!==void 0&&(a[s.fieldName]=l)}),a}findRowStateIndex(t){const a=t.srfuf===0?"tempsrfkey":"srfkey";return this.state.rows.findIndex(s=>s.data[a]===t[a])}findRowState(t){const e=this.findRowStateIndex(t);return e!==-1?this.state.rows[e]:void 0}}),_u=d("GridFieldColumnController",class extends aa{constructor(){super(...arguments),this.codeList=void 0}get isLinkColumn(){return!!this.model.enableLinkView&&!!this.model.linkAppViewId}get hasAction(){return!!this.model.deuiactionId}async onInit(){await super.onInit(),this.loadCodeList=Wt(this.loadCodeList,300,{leading:!0,trailing:!1}),this.loadCodeList()}clickable(t){const e=t.data[this.model.codeName];return(this.isLinkColumn||this.hasAction)&&e}handlePublicParams(t,e,a){const{userParam:s}=this.model;if(!s)return{context:e,params:a};const{navigateContexts:i,navigateParams:r}=Ne(s);let n={};i&&t&&(n=y(i,t,a,e));const o=Object.assign(e.clone(),n);let u={};r&&t&&(u=y(r,t,a,e));const c={...a,...u};return{context:o,params:c}}async openLinkView(t,e){if(!t.data[this.model.codeName])return;const s=this.model.linkValueItem||"srfkey",i=t.data[s];if(i==null)throw new D(this.model,"\u672A\u5728\u884C\u6570\u636E\u4E2D\u53D6\u5230 ".concat(s," \u7684\u503C"));const{linkAppViewId:r}=this.model;if(!r)return;const n=Ja(t.data),o=Object.assign(this.context.clone(),{srfkey:i,...n}),u=A(this.params),{context:c,params:l}=this.handlePublicParams(t.data,o,u),p=await ibiz.commands.execute(Z.TAG,r,c,l,{event:e});p?.ok&&this.grid.load()}async triggerAction(t,e){const a=this.model.deuiactionId;await U.execAndResolved(a,{context:this.context,params:this.params,data:[t.data],view:this.grid.view,event:e})}async loadCodeList(){const t=this.model.appCodeListId;if(!t)return;const e=ibiz.hub.getApp(this.context.srfappid);this.codeList||(this.codeList=e.codeList.getCodeList(t));const a=await e.codeList.get(t,this.context,this.params);return this.codeListItems=a,a}calcFieldAgg(t){const{aggField:e,aggMode:a,aggValueFormat:s,unitName:i}=this.model;if(a==="NONE")return;const r=e||this.model.id;t=t.filter(u=>!w(u[r]));let n;if(this.grid.model.aggMode==="PAGE")switch(a){case"SUM":n=t.map(u=>u[r]).reduce((u,c)=>Vt(u,c),0);break;case"AVG":n=t.map(u=>u[r]).reduce((u,c)=>Vt(u,c),0)/t.length;break;case"MAX":n=Math.max(...t.map(u=>u[r]));break;case"MIN":n=Math.min(...t.map(u=>u[r]));break;default:throw new D(this.model,"\u6682\u672A\u652F\u6301\u5C5E\u6027\u5217\u805A\u5408\u6A21\u5F0F".concat(a))}else throw this.grid.model.aggMode==="ALL"?new D(this.model,"\u8FDC\u7A0B\u805A\u5408\u6682\u672A\u652F\u6301"):new D(this.grid.model,"\u6682\u672A\u652F\u6301\u805A\u5408\u6A21\u5F0F".concat(this.grid.model.aggMode));let o="".concat(n);if(s)try{o=ibiz.util.text.format("".concat(n),s)}catch{ibiz.log.error("".concat(n," \u503C\u683C\u5F0F\u5316\u9519\u8BEF"))}return o&&i&&(o+=i),o}formatValue(t=""){if(this.model.valueType!=="SIMPLE")return Eo.toText(this.model,t);const e="".concat(t);if(!this.valueFormat)return e;if(_t.isDate(this.dataType)){const s=S(e).format(this.valueFormat);return s!=="Invalid Date"?s:e}return ibiz.util.text.format(e,this.valueFormat)}}),zc=d("GridUAColumnController",class extends aa{initActionStates(t){var e;const{deuiactionGroup:a}=this.model;if(!a)throw new m(this.model,"\u64CD\u4F5C\u5217\u6CA1\u6709\u914D\u7F6E\u754C\u9762\u884C\u4E3A\u7EC4");if(!((e=a.uiactionGroupDetails)!=null&&e.length)){ibiz.log.debug("\u64CD\u4F5C\u5217\u754C\u9762\u884C\u4E3A\u7EC4\u6CA1\u6709\u914D\u7F6E\u754C\u9762\u884C\u4E3A");return}const s=new ft;a.uiactionGroupDetails.forEach(i=>{const r=i.uiactionId;if(r){const n=new pt(i.id,this.grid.context.srfappid,r);s.addState(i.id,n)}}),t.uaColStates[this.model.codeName]=s}async onActionClick(t,e,a){const s=t.uiactionId;await U.execAndResolved(s,{context:this.context,params:this.params,data:[e.data],view:this.grid.view,event:a})}}),Gc=d("GridFieldEditColumnController",class extends _u{constructor(){super(...arguments),this.rules=[]}get unitName(){return this.editItem.unitName}get valueFormat(){return this.model.valueFormat}get valueItemName(){if(this.editItem.editor)return this.editItem.editor.valueItemName}get fieldName(){return this.model.dataItemName}async onInit(){await super.onInit();const t=Ga(this.grid.model,this.model.codeName);t&&(this.editItem=t,this.editItem.editor&&this.editItem.editor.editorType!=="HIDDEN"&&(this.editorProvider=await bt(this.editItem.editor),this.editorProvider&&(this.editor=await this.editorProvider.createController(this.editItem.editor,this),await this.initRules())))}async initRules(){this.rules=[];const t=xe(this.grid.model.degridEditItemVRs||[],this.fieldName);t&&this.rules.push(...Ye(t,this.fieldName,this.valueItemName)),this.editItem.editor&&this.rules.push(...qe(this.editItem.editor)),this.rules.length>0&&(this.validator=new ye({[this.fieldName]:this.rules}))}async setRowValue(t,e,a){a=a||this.fieldName,await this.grid.setRowValue(t,a,e)}async dataChangeNotify(t,e){this.calcColumnDisabled(t);const a=t.editColStates[this.fieldName].required;if(this.calcColumnRequired(t),(a!==t.editColStates[this.fieldName].required||e.includes(this.fieldName)||e.includes(this.valueItemName))&&!await this.validate(t))throw new f("".concat(this.editItem.codeName,"\u6821\u9A8C\u62A5\u9519,").concat(t.errors[this.fieldName]));e.includes(this.fieldName)&&this.editItem.degridEditItemUpdateId&&await this.grid.updateGridEditItem(t,this.editItem.degridEditItemUpdateId)}gridStateNotify(t,e){this.calcColumnDisabled(t),this.calcColumnReadonly(t),this.calcColumnRequired(t)}calcColumnDisabled(t){let e=this.calcEnableCond(t);if(e&&this.grid.scheduler){const a=this.grid.scheduler.triggerItemEnable(this.fieldName,{data:[t.data]});a!==void 0&&(e=a)}t.editColStates[this.fieldName].disabled=!e}calcColumnRequired(t){let e=this.editItem.allowEmpty!==!1;if(e&&this.grid.scheduler){const a=this.grid.scheduler.triggerItemBlank(this.fieldName,{data:[t.data]});a!==void 0&&(e=a)}t.editColStates[this.fieldName].required=!e}calcColumnReadonly(t){var e;const a=!!((e=this.editItem.editor)!=null&&e.readOnly);t.editColStates[this.fieldName].readonly=a}calcEnableCond(t){const{enableCond:e}=this.editItem,a=t.data.srfuf===0;switch(e){case 0:return!1;case 1:return a;case 2:return!a;default:return!0}}async validate(t){const e=this.fieldName;if(ibiz.config.grid.editShowMode!=="cell"&&t.editColStates[e].required&&V(t.data[e]))return t.errors[e]="\u8BF7\u586B\u5199".concat(this.model.caption||""),!1;if(this.rules.length&&this.validator)try{await this.validator.validate(t.data)}catch(a){const{errors:s}=a;return t.errors[e]=s[0].message,!1}return t.errors[e]=null,!0}}),jc=d("GridGroupColumnController",class extends aa{}),Ou=d("ListService",class extends at{initUIDataMap(){var t;super.initUIDataMap(),(t=this.model.delistDataItems)==null||t.forEach(e=>{const a=e.id.toLowerCase(),s=e.appDEFieldId;let i;if(s){const r=s.toLowerCase();i=new H(a,r,{isOriginField:!0,dataType:e.dataType})}else i=new H(a,a);this.dataUIMap.set(a,i)})}}),Kc=d("ListController",class extends tt{initState(){super.initState(),this.state.noSort=this.model.noSort===!0}async onCreated(){await super.onCreated(),this.state.size=this.model.pagingSize||20,this.service=new Ou(this.model),await this.service.init(this.context)}setSort(t,e){if(t&&e)super.setSort(t,e);else{const{minorSortAppDEFieldId:a,minorSortDir:s}=this.model;if(a&&s){const i=this.fieldIdNameMap.get(a);this.state.sortQuery="".concat(i.toLowerCase(),",").concat(s.toLowerCase())}else this.state.sortQuery=""}}get batchToolbarController(){return this.view.getController("".concat(this.model.name,"_batchtoolbar"))}get quickToolbarController(){return this.view.getController("".concat(this.model.name,"_quicktoolbar"))}setSelection(t){var e,a;super.setSelection(t);const s=t?.[0];(e=this.batchToolbarController)==null||e.calcButtonState(s,this.model.appDataEntityId),(a=this.quickToolbarController)==null||a.calcButtonState(s,this.model.appDataEntityId)}async loadMore(){this.state.total>this.state.items.length&&await this.load({isLoadMore:!0})}async afterLoad(t,e){return await this.handleDataGroup(),e}setData(t){this.state.items=t}getAllData(){return this.state.items}async handleDataGroup(){const{enableGroup:t,groupMode:e}=this.model;t&&e&&(e==="AUTO"?this.handleAutoGroup():e==="CODELIST"&&await this.handleCodeListGroup())}handleAutoGroup(){const{groupAppDEFieldId:t}=this.model;if(t){const{items:e}=this.state,a=new Map;e.forEach(i=>{const r=a.get(i[t])||[];r.push(i),a.set(i[t],r)});const s=[];a.forEach((i,r)=>{s.push({caption:r,key:r,children:[...i]})}),this.state.groups=s}}async handleCodeListGroup(){const{groupAppDEFieldId:t,groupCodeListId:e}=this.model;if(t&&e){const{items:a}=this.state,s=[],r=await ibiz.hub.getApp(this.context.srfappid).codeList.get(e,this.context,this.params),n=[];r.forEach(u=>{const c=a.filter(l=>l[t]===u.value);s.push({caption:u.text,key:u.value,children:[...c]}),n.push(u.value)});const o=a.filter(u=>n.indexOf(u[t])===-1);o.length>0&&s.push({caption:"\u5176\u4ED6",key:"\u5176\u4ED6",children:[...o]}),this.state.groups=s}}}),Mu=d("PanelController",class extends Y{constructor(t,e,a,s,i){super(t,e,a,s),this.panelItems={},this.providers={},this.container=i}get _evt(){return this.evt}get data(){return this.state.data}initState(){super.initState(),this.state.data={}}setInputData(t){this.inputData=t}getData(){return[this.data]}async onCreated(){var t;await super.onCreated(),await this.initPanelItemControllers(),(t=this.scheduler)!=null&&t.hasControlEventTrigger&&this._evt.on("onPanelItemEvent",e=>{this.scheduler.triggerControlEvent(e.panelItemName,e.panelItemEventName,e)})}async onMounted(){this.load()}async onDestroyed(){var t,e;await super.onDestroyed(),(e=(t=this.data).destroy)==null||e.call(t),Object.values(this.panelItems).forEach(a=>{a.destroy()})}async initPanelItemControllers(t=this.model.rootPanelItems,e=this,a=void 0){t&&await Promise.all(t.map(async s=>{var i,r;const n=await ds(s);if(!n)return;e.providers[s.id]=n;const o=await n.createController(s,e,a);e.panelItems[s.id]=o,(i=s.panelItems)!=null&&i.length&&!o.isDataContainer&&await this.initPanelItemControllers(s.panelItems,e,o),(r=s.panelTabPages)!=null&&r.length&&await this.initPanelItemControllers(s.panelTabPages,e,o)}))}async load(){var t,e;const a=await this.prepareData();if(!a)throw new f("\u672A\u83B7\u53D6\u5230\u9762\u677F\u6570\u636E");const s=this.convertData(a);(e=(t=this.data).destroy)==null||e.call(t),this.state.data=s,this.panelStateNotify("LOAD")}async prepareData(){let t;switch(this.model.dataMode){case 1:this.inputData&&(t=this.inputData);break;default:t=this.inputData||{}}return t}convertData(t){const e=qa(this.model),a=e.map(i=>i.id),s=new Qn(e,t);return s._evt.on("change",i=>{a.includes(i)&&this.dataChangeNotify([i])}),s}dataChangeNotify(t){Object.values(this.panelItems).forEach(e=>{e.dataChangeNotify(t)})}panelStateNotify(t){Object.values(this.panelItems).forEach(e=>{e.panelStateNotify(t)})}async setDataValue(t,e){Object.prototype.hasOwnProperty.call(this.state.data,t)&&this.state.data[t]===e||(this.state.data[t]=e)}initControlScheduler(t=[]){const e=[...t];W(this.model,a=>{a.controlLogics&&e.push(...a.controlLogics)},{childrenFields:["rootPanelItems","panelItems","panelTabPages"]}),super.initControlScheduler(e)}}),Xc=d("ViewLayoutPanelController",class extends Mu{async onCreated(){var t;this.preprocessModel(),await super.onCreated(),(t=this.scheduler)!=null&&t.hasControlEventTrigger&&this.evt.on("onControlEvent",e=>{this.scheduler.triggerControlEvent(e.triggerControlName,e.triggerEventName,e.triggerEvent)})}registerToCtx(){}preprocessModel(t){var e;const a=s=>{const i=[];return s.forEach(r=>{r.itemType==="CONTAINER"&&r.predefinedType==="PANELPART"?i.push(...r.panelItems||[]):i.push(r)}),i.forEach(r=>{r.itemType==="CONTAINER"&&this.preprocessModel(r)}),i};t?t.panelItems=a(t.panelItems||[]):(e=this.model.rootPanelItems)!=null&&e.length&&(this.model.rootPanelItems=a(this.model.rootPanelItems||[]))}}),xu=d("PanelItemState",class{constructor(t){this.parent=t,this.disabled=!1,this.layout={width:"",height:"",extraStyle:{},extraClass:[],contentStyle:{}},this.class={container:[],containerDyna:[],label:[],labelDyna:[]},this.required=!1;let e=!0;Object.defineProperty(this,"visible",{enumerable:!0,configurable:!0,get(){var s;return((s=this.parent)==null?void 0:s.visible)!==!1&&e},set(s){return e=s,!0}});let a;Object.defineProperty(this,"keepAlive",{enumerable:!0,configurable:!0,get(){return a!==void 0?a:this.parent?this.parent.keepAlive:!1},set(s){return a=s,!0}})}}),Hc=d("PanelItemController",class{constructor(t,e,a){this.model=t,this.panel=e,this.parent=a,this.dynaLogicResult={visible:void 0,disabled:void 0,required:void 0},this.state=this.createState()}get dataParent(){return this.findDataParent(this)}get data(){return this.dataParent.data}get containerClass(){return[...this.state.class.container,...this.state.class.containerDyna]}get labelClass(){return[...this.state.class.label,...this.state.class.labelDyna]}async init(){await this.onInit()}async onInit(){const{layoutPos:t,sysCss:e,labelSysCss:a}=this.model;if(t){const{width:s,height:i}=zt(t);this.state.layout.width="".concat(s),this.state.layout.height="".concat(i)}e?.cssName&&this.state.class.container.push(e.cssName),a?.cssName&&this.state.class.label.push(a.cssName)}destroy(){}createState(){var t;return new xu((t=this.parent)==null?void 0:t.state)}async dataChangeNotify(t){this.calcDynamicLogic(t),this.calcItemDisabled(this.data),this.calcItemVisible(this.data),this.calcItemRequired(this.data),this.calcDynaClass(this.data)}async panelStateNotify(t){this.calcDynamicLogic([],!0),this.calcItemDisabled(this.data),this.calcItemVisible(this.data),this.calcItemRequired(this.data),this.calcDynaClass(this.data)}calcItemDisabled(t){let{disabled:e}=this.dynaLogicResult;if(e!==!0&&this.panel.scheduler){const a=this.panel.scheduler.triggerItemEnable(this.model.id,{data:[t]});a!==void 0&&(e=!a)}e!==void 0&&(this.state.disabled=e)}calcItemVisible(t){let{visible:e}=this.dynaLogicResult;if(e!==!1&&this.panel.scheduler){const a=this.panel.scheduler.triggerItemVisible(this.model.id,{data:[t]});a!==void 0&&(e=a)}e!==void 0&&(this.state.visible=e)}calcItemRequired(t){let{required:e}=this.dynaLogicResult;if(e!==!0&&this.panel.scheduler){const a=this.panel.scheduler.triggerItemBlank(this.model.id,{data:[t]});a!==void 0&&(e=!a)}e!==void 0&&(this.state.required=e)}calcDynamicLogic(t,e=!1){var a;this.parent&&!this.parent.state.visible||(a=this.model.panelItemGroupLogics)==null||a.forEach(s=>{const i=s.relatedItemNames||[];if(e||xt(i,t))try{const r=Ht(this.data,s);switch(s.logicCat){case"ITEMBLANK":this.dynaLogicResult.required=!r;break;case"ITEMENABLE":this.dynaLogicResult.disabled=!r;break;case"PANELVISIBLE":this.dynaLogicResult.visible=r;break;default:}}catch(r){ibiz.log.error(r)}})}findDataParent(t){const{parent:e}=t;return e?e.isDataContainer?e:this.findDataParent(e):t.panel}calcDynaClass(t){if(this.model.dynaClass){const e=Dt(this.model.dynaClass,t);e.length&&(this.state.class.containerDyna=e)}if(this.model.labelDynaClass){const e=Dt(this.model.labelDynaClass,t);e.length&&(this.state.class.labelDyna=e)}}onClick(){this.panel.evt.emit("onPanelItemEvent",{panelItemName:this.model.id,panelItemEventName:"onClick"})}}),Yc=d("PickupViewPanelController",class extends Y{async onCreated(){await super.onCreated(),this.mountCounter.enroll(this.model.embeddedAppDEViewId)}updateContextParams(t){super.updateContextParams(t),this.initNavParam()}initNavParam(){const{navigateContexts:t,navigateParams:e}=this.model,a=this.context.clone(),s={...this.params};t&&Object.assign(a,y(t,this.params,this.context)),e&&Object.assign(s,y(e,this.params,this.context)),this.state.context=a,this.state.params=s}setEmbedView(t){this.embedView=t,this.embedView.state.isMounted?this.mountCounter.attend(this.model.embeddedAppDEViewId):this.embedView.evt.on("onMounted",()=>{this.mountCounter.attend(this.model.embeddedAppDEViewId)}),this.embedView.evt.on("onSelectionChange",e=>{this.evt.emit("onSelectionChange",e)}),this.embedView.evt.on("onDataActive",e=>{this.evt.emit("onDataActive",{data:e.data})})}async getSelectedData(){return await this.embedView.call("GetData")}async getAllData(){return await this.embedView.call("GetAllData")}}),Vu=class{constructor(t,e){this.model=t,this.searchBar=e;var a;let s;t.appDEFieldId&&(s=wt(e.appDataEntity,t.appDEFieldId)),this.fieldName=s?s.codeName.toLowerCase():t.id,this.label=t.caption||s?.logicName||t.id,this.valueOP=(a=t.defsearchMode)==null?void 0:a.valueOP}get context(){return this.searchBar.context}get params(){return this.searchBar.params}async init(){if(!this.model.editor)throw new m(this.model,"\u7F3A\u5C11\u7F16\u8F91\u5668\u6A21\u578B");this.editorProvider=await bt(this.model.editor),this.editorProvider&&(this.editor=await this.editorProvider.createController(this.model.editor,this))}},qc=d("SearchBarController",class extends Y{constructor(){super(...arguments),this.placeHolder="",this.filterControllers=[]}initState(){super.initState(),this.state.query="",this.state.selectedGroupItem=null,this.state.visible=!!(this.model.enableQuickSearch||this.model.enableGroup||this.model.enableFilter),this.model.enableFilter&&this.resetFilter()}async onCreated(){await super.onCreated();const t=await ibiz.hub.getAppDataEntity(this.model.appDataEntityId,this.context.srfappid);t&&(this.appDataEntity=t,this.calcQuickSearchPlaceholder()),await this.initSearchBarFilters()}calcQuickSearchPlaceholder(){if(!this.appDataEntity)return;const t=this.appDataEntity.appDEFields.filter(e=>e.enableQuickSearch);if(t.length){const e=[];t.forEach(a=>{a.lnlanguageRes&&a.lnlanguageRes.lanResTag?e.push(ibiz.i18n.t(a.lnlanguageRes.lanResTag,a.logicName)):a.logicName&&e.push(a.logicName)}),e.length>0&&(this.placeHolder=e.join("\u3001"))}}handleInput(t){this.state.query=t}onSearch(){this.evt.emit("onSearch",void 0)}getFilterParams(){var t;const e={};if(this.state.query&&(e.query=this.state.query),(t=this.state.selectedGroupItem)!=null&&t.data){const s=B.execSingleLine(this.state.selectedGroupItem.data),i=y(s,this.params,this.context);Object.assign(e,i)}const a=this.calcFilters();return a&&(e.filters=a),e}resetFilter(){this.state.filterNodes=[{leaf:!1,logicType:"AND",children:[{leaf:!0,field:null,valueOP:null,value:null}]}]}async initSearchBarFilters(){var t;(t=this.model.searchBarFilters)!=null&&t.length&&(this.model.searchBarFilters.forEach(e=>{const a=new Vu(e,this);this.filterControllers.push(a)}),await Promise.all(this.filterControllers.map(e=>e.init())))}calcFilters(){if(!this.model.enableFilter)return;let t=!1,e=!1;if(W(this.state.filterNodes[0],a=>{a.leaf&&(a.field&&a.valueOP&&!w(a.value)?t=!0:e=!0)}),t&&!e)return this.formatFilters(this.state.filterNodes[0])}formatFilters(t){return t.leaf?{["".concat(t.field)]:{["$".concat(t.valueOP.toLowerCase())]:t.value}}:{["$".concat(t.logicType.toLowerCase())]:t.children.map(e=>this.formatFilters(e))}}}),Qc=d("TabExpPanelController",class extends Y{constructor(){super(...arguments),this.isShowCaption=!0,this.isShowIcon=!1}get isCache(){return this.controlParams.expcache==="CACHE"?!0:this.controlParams.expcache==="NO_CACHE"?!1:ibiz.config.view.expCacheMode.includes(this.model.controlType)}get routeDepth(){return this.view.modal.routeDepth}initState(){super.initState(),this.state.tabPages=[],this.state.activeName=""}async onCreated(){await super.onCreated(),this.layoutPanel=this.view.layoutPanel,this.initTabPages(),this.initIconCaption()}initTabPages(){const t=this.model.controls,e=[];t.forEach(a=>{e.push({caption:a.caption,tabTag:a.id,class:a.sysCss?[a.sysCss.cssName]:[],sysImage:a.sysImage})}),this.state.tabPages=e,e.length>0&&this.initDefaultPage()}initIconCaption(){if(this.params.showmode)switch(this.params.showmode){case"ICONANDSHORTWORD":this.isShowIcon=!0,this.isShowCaption=!0;break;case"ICON":this.isShowIcon=!0,this.isShowCaption=!1;break;case"SHORTWORD":this.isShowIcon=!1,this.isShowCaption=!0;break}}initDefaultPage(){if(this.state.defaultTabName){const t=this.state.tabPages.find(e=>e.tabTag===this.state.defaultTabName);if(t){this.state.activeName=t.tabTag,this.changeToTab(this.activeTabViewPanelModel,this.routeDepth!==void 0&&He(this.routeDepth));return}}this.state.activeName=this.state.tabPages[0].tabTag,this.handleTabChange()}changeToTab(t=this.activeTabViewPanelModel,e=!1){const a=this.getNavViewMsg(t);e===!0&&(a.isRoutePushed=!0),this.evt.emit("onNavViewChange",{navViewMsg:a})}get activeTabViewPanelModel(){const{activeName:t}=this.state;return this.model.controls.find(a=>a.id===t)}async handleTabChange(){this.activeTabViewPanelModel&&this.changeToTab()}prepareParams(t){const{navDER:e,navFilter:a,navigateContexts:s,navigateParams:i,appDataEntityId:r}=t,n={deName:O(r),navFilter:a,pickupDEFName:e?.pickupDEFName,navContexts:s,navParams:i},o={context:this.context,params:this.params,data:{}},{resultContext:u,resultParams:c}=Ut(n,o),l=Object.assign(this.context.clone(),u,{currentSrfNav:this.state.activeName}),p={...this.params,...c};return{context:l,params:p}}getNavViewMsg(t){const{context:e,params:a}=this.prepareParams(t);return{key:t.codeName.toLowerCase(),context:e,params:a,viewId:t.embeddedAppDEViewId,isCache:this.isCache}}}),ai=d("TreeService",class extends at{async fetchChildNodes(t,e){const{hasQuery:a}=e;let s=[];if(t){const i=Te(this.model,{parentId:t?.nodeId,hasQuery:a});if(i.length===0)return;(await nt(i.map(async n=>{const o=Le(this.model,n.childDETreeNodeId);return this.fetchNodeDatasByType(o,n,t,e)}),!1)).forEach(n=>{s.push(...n)})}else{const i=Re(this.model);s=await this.fetchNodeDatasByType(i,void 0,void 0,e)}return s}async fetchNodeDatasByType(t,e,a,s){const i=Te(this.model,{parentId:t.id,hasQuery:s.hasQuery}).length===0,r={...s,leaf:i};let n=[];switch(t.treeNodeType){case"STATIC":n=[await this.getStaticNodeData(t,e,a,r)];break;case"DE":n=await this.getDENodeDatas(t,e,a,r);break;case"CODELIST":n=await this.getCodeListNodeDatas(t,e,a,r);break;default:throw new D(t,"".concat(t.treeNodeType,"\u8282\u70B9\u7C7B\u578B\u672A\u652F\u6301"))}const{expandFirstOnly:o,expanded:u,rootNode:c}=t,l=c&&!this.model.rootVisible;return i||await Promise.all(n.map(async(p,h)=>{var E;if(u&&(!o||o&&h===0)||(E=s.defaultExpandedKeys)!=null&&E.length&&s.defaultExpandedKeys.includes(p.id)||l){const C=await this.fetchChildNodes(p,s);p.children=C}})),n}async getStaticNodeData(t,e,a,s){return new jn(t,a,{parentValueLevel:e?.parentValueLevel,leaf:!!s.leaf})}getNodeRSFilterParams(t,e,a){const{parentValueLevel:s,navigateContexts:i,navigateParams:r,parentFilter:n,parentDER1N:o}=t,u=o?.pickupDEFName,c={...a.params},l={...a.context,...e?.context||{}};let p={},h;if(e){h=e;for(let P=1;P<s;P++)h=h?.parent}let E,C;if(h){p=h.deData||{};const P=Le(this.model,h.nodeId);P.appDataEntityId&&(C=O(P.appDataEntityId)),E=h.value}const{resultContext:F,resultParams:v}=Ut({deName:C,navFilter:n?"n_".concat(n,"_eq"):void 0,pickupDEFName:u,navParams:r,navContexts:i},{derValue:E,context:l,params:c,data:p});return Object.assign(l,F),Object.assign(c,v),{context:l,params:c,navContext:F,navParams:v}}async getDENodeDatas(t,e,a,s){const{appDEDataSetId:i,appDataEntityId:r}=t,{context:n,params:o,navContext:u,navParams:c}=e?this.getNodeRSFilterParams(e,a,s):{context:s.context,params:s.params,navContext:{},navParams:{}};o.size=t.maxSize||1e3,t.sortAppDEFieldId&&Object.assign(o,{sort:"".concat(t.sortAppDEFieldId.toLowerCase(),",").concat(t.sortDir?t.sortDir.toLowerCase():"asc")});const l=await this.app.deService.exec(r,i,n,o);return l.data.length?l.data.map(h=>new Vs(t,a,{data:h,leaf:!!s.leaf,navContext:u,navParams:c})):[]}async getCodeListNodeDatas(t,e,a,s){const{context:i,params:r,navContext:n,navParams:o}=e?this.getNodeRSFilterParams(e,a,s):{context:s.context,params:s.params,navContext:{},navParams:{}},u=await this.app.codeList.get(t.codeListId,i,r);return u.length?u.map(l=>new Gn(t,a,{data:l,leaf:!!s.leaf,navContext:n,navParams:o})):[]}}),$c=d("TreeController",class extends tt{constructor(){super(...arguments),this.contextMenus={}}initState(){super.initState(),this.state.defaultExpandedKeys=[],this.state.expandedKeys=[],this.state.navigational=!1,this.state.size=0}async onCreated(){await super.onCreated(),this.state.expandedKeys=[...this.state.defaultExpandedKeys],this.service=new ai(this.model),await this.service.init(this.context),this.model.detreeNodes.forEach(t=>{var e,a;(a=(e=t.decontextMenu)==null?void 0:e.detoolbarItems)!=null&&a.length&&(this.contextMenus[t.decontextMenu.id]=new du(t.decontextMenu,this.context,this.params,this.ctx))}),await Promise.all(Object.values(this.contextMenus).map(t=>t.created()))}async load(t={}){const e=t.isInitialLoad===!0;e&&await this.startLoading();let a;try{a=await this.loadNodes()}finally{e&&await this.endLoading()}return await this.afterLoad(t,a),this.state.isLoaded=!0,await this.evt.emit("onLoadSuccess",{isInitialLoad:e}),a}async loadNodes(t){const e=await this.getFetchParams(),a=!!e.query;this.state.isLoading=!0;let s;try{s=await this.service.fetchChildNodes(t,{context:this.context.clone(),params:e,hasQuery:a,defaultExpandedKeys:this.state.expandedKeys})||[]}finally{this.state.isLoading=!1}return t?t.children=s:this.state.rootNodes=s,this.state.items=[],W({children:this.state.rootNodes},i=>{this.state.items.push(i)}),this.state.expandedKeys=this.calcExpandedKeys(s),s}async onTreeNodeClick(t){if(this.state.navigational){const e=this.getNodeModel(t.nodeId);if(!e?.navAppViewId)return}if(this.state.singleSelect){const{selectedData:e}=this.state,a=e.filter(s=>s.id!==t.id);a.length===e.length?this.setSelection(this.state.singleSelect?[t]:e.concat([t])):this.setSelection(a)}this.state.mdctrlActiveMode===1&&await this.setActive(t)}onExpandChange(t,e){const a=this.state.expandedKeys.includes(t.id);if(e&&!a)this.state.expandedKeys.push(t.id);else if(!e&&a){const s=this.state.expandedKeys.indexOf(t.id);s!==-1&&this.state.expandedKeys.splice(s,1)}}async onDbTreeNodeClick(t){this.state.mdctrlActiveMode===2&&await this.setActive(t)}setActive(t){const e=this.parseTreeNodeData(t);return this.evt.emit("onActive",{...e,nodeData:t})}setSelection(t){const e=t.map(s=>s.id),a=this.state.items.filter(s=>e.includes(s.id));super.setSelection(a)}getNodeModel(t){var e;return(e=this.model.detreeNodes)==null?void 0:e.find(a=>a.id===t)}async doUIAction(t,e,a){const s=this.getEventArgs(),i=this.parseTreeNodeData(e),r=await U.exec(t,{...s,...i,event:a});if(r.closeView)this.view.closeView();else if(r.refresh)switch(r.refreshMode){case 1:this.refreshNodeChildren(e);break;case 2:this.refreshNodeChildren(e,!0);break;case 3:this.refresh();break}}parseTreeNodeData(t){return{data:[{...t,...t.deData||{}}],context:Object.assign(this.context.clone(),t.context||{}),params:{...this.params,...t.params||{}}}}calcExpandedKeys(t){let e=[...this.state.expandedKeys];return W({children:t},a=>{var s;(s=a.children)!=null&&s.length&&e.push(a.id)}),e=Array.from(new Set(e)),e}async refreshNodeChildren(t,e=!1){const a=t.srfkey?"srfkey":"id",s=this.state.items.find(n=>n[a]===t[a]);if(!s){ibiz.log.error("\u627E\u4E0D\u5230\u5BF9\u5E94\u7684\u6811\u8282\u70B9\u6570\u636E",t);return}if(e){const{parent:n}=s;if(!n||!this.model.rootVisible&&this.state.rootNodes.includes(n)){this.refresh();return}}const i=e?s.parent:s,r=await this.loadNodes(i);this.evt.emit("onAfterRefreshParent",{parentNode:i,children:r})}async expandNodeByKey(t){const e=t.filter(s=>!this.state.expandedKeys.includes(s));if(e.length===0)return;const a=this.state.items.filter(s=>e.includes(s.id));this.state.expandedKeys.push(...e),a.length!==0&&await Promise.all(a.map(s=>this.loadNodes(s)))}}),Wu=d("WizardPanelService",class extends ae{async initialize(t,e={},a={}){var s;const i=(s=this.model.initControlAction)==null?void 0:s.appDEMethodId;let r=await this.exec(i,t,e,a);return r=this.handleResponse(r),r}async finish(t,e={},a={}){var s;const i=(s=this.model.finishControlAction)==null?void 0:s.appDEMethodId;let r=await this.exec(i,t,e,a);return r=this.handleResponse(r),r}}),Jc=d("WizardPanelController",class extends Y{constructor(){super(...arguments),this.tagHistory=[],this.providers={},this.firstForm=void 0,this.formControllers=new Map,this.steps=[],this.stepTags={}}initState(){super.initState()}async onCreated(){var t,e;await super.onCreated(),this.model.dewizard.dewizardForms.forEach(s=>{var i,r,n;s.firstForm&&(this.firstForm=s);const o="".concat(this.model.name,"_form_").concat((i=s.formTag)==null?void 0:i.toLowerCase()),u=(n=(r=this.model.dewizard)==null?void 0:r.dewizardSteps)==null?void 0:n.find(l=>l.id===s.dewizardStepId),c=u?.stepTag;this.stepTags[o]=c}),(e=(t=this.model.dewizard)==null?void 0:t.dewizardSteps)==null||e.forEach(s=>{this.steps.push(s.stepTag)}),this.service=new Wu(this.model),await this.service.init(this.context);const{deeditForms:a}=this.model;a&&a.length>0&&await Promise.all(a.map(async s=>{const{formTag:i}=s.dewizardForm;if(i){const r=await dt(s);r&&(this.providers[i]=r)}}))}get activeWizardForm(){const{activeFormTag:t}=this.state,e=this.model.dewizard.dewizardForms.find(a=>a.formTag===t);return e||ibiz.log.debug("\u627E\u4E0D\u5230".concat(t,"\u7684\u5411\u5BFC\u8868\u5355")),e}get activeFormController(){const{activeFormTag:t}=this.state,e=this.formControllers.get(t);if(!e)throw new f("\u627E\u4E0D\u5230".concat(t,"\u7684\u8868\u5355\u63A7\u5236\u5668"));return e}onFormMounted(t,e){const a=e.ctrl;this.formControllers.set(t,a),a.load()}onFormSaved(t){const e=t.data[0],a=O(this.model.appDataEntityId);!this.context[a]&&e&&e.srfkey&&(this.context[a]=e.srfkey)}getWizardFormByTag(t){var e;if(!((e=this.model.dewizard)!=null&&e.dewizardForms))throw new f("\u6CA1\u6709\u914D\u7F6E\u5411\u5BFC\u8868\u5355\u96C6\u5408");const a=this.model.dewizard.dewizardForms.find(s=>s.formTag===t);if(!a)throw new f("\u627E\u4E0D\u5230\u6807\u8BC6\u4E3A".concat(t,"\u7684\u5411\u5BFC\u8868\u5355"));return a}async initialize(){var t;if((t=this.model.initControlAction)==null?void 0:t.appDEMethodId){const a=await this.service.initialize(this.context,this.params),s=O(this.model.appDataEntityId);if(a.data&&a.data.srfkey&&(this.context[s]=a.data.srfkey),a.data&&this.model.stateAppDEFieldId&&a.data[this.model.stateAppDEFieldId]){const i=this.getWizardFormByTag(a.data[this.model.stateAppDEFieldId]);i&&(this.state.activeFormTag=i.formTag)}}!this.state.activeFormTag&&this.firstForm&&(this.state.activeFormTag=this.firstForm.formTag,this.tagHistory.push(this.firstForm.formTag))}async finish(){await this.service.finish(this.context,this.params),this.evt.emit("onFinishSuccess",void 0)}async onPrevClick(){const t=await this.activeFormController.goBack();let e;if(this.model.stateAppDEFieldId&&t[this.model.stateAppDEFieldId]?this.getWizardFormByTag(t[this.model.stateAppDEFieldId])&&(e=t[this.model.stateAppDEFieldId]):(e=this.tagHistory[this.tagHistory.length-1],this.tagHistory.pop()),!e)throw new f("\u6CA1\u6709\u4E0A\u4E00\u4E2A\u8868\u5355");this.state.activeFormTag=e}async onNextClick(){const t=await this.activeFormController.save();let e;if(t.srfnextform)this.getWizardFormByTag(t.srfnextform)&&(e=t.srfnextform,this.tagHistory.push(e));else if(this.model.stateAppDEFieldId&&t[this.model.stateAppDEFieldId])this.getWizardFormByTag(t[this.model.stateAppDEFieldId])&&(e=t[this.model.stateAppDEFieldId]);else{const{formTag:a}=this.activeWizardForm,s=this.model.dewizard.dewizardSteps;if(s&&a){const i=s.findIndex(o=>o.stepTag===a),r=s[i+1];if(!r)throw new f("\u627E\u4E0D\u5230\u4E0B\u4E00\u4E2A\u5411\u5BFC\u6B65\u9AA4");const n=this.getWizardFormByTag(r.stepTag);n&&n.formTag&&(e=n.formTag)}}if(!e)throw new f("\u627E\u4E0D\u5230\u4E0B\u4E00\u4E2A\u5411\u5BFC\u8868\u5355");this.state.activeFormTag=e,this.tagHistory.push(e)}async onFinishClick(){await this.activeFormController.save(),await this.finish()}}),ku=d("MDCtrlService",class extends at{initUIDataMap(){var t;super.initUIDataMap(),(t=this.model.delistDataItems)==null||t.forEach(e=>{const a=e.id.toLowerCase(),s=e.appDEFieldId;let i;if(s){const r=s.toLowerCase();i=new H(a,r,{isOriginField:!0,dataType:e.dataType})}else i=new H(a,a);this.dataUIMap.set(a,i)})}}),ue=d("MobMDCtrlRowState",class{constructor(t,e){this.data=t,this.controller=e,this.uaColStates={},this.data=t}}),Zc=d("MDCtrlController",class extends tt{initState(){super.initState(),this.state.rows=[],this.state.noSort=this.model.noSort===!0,this.state.mdctrlActiveMode=1}async onCreated(){await super.onCreated(),this.service=new ku(this.model),await this.service.init(this.context),this.setSort()}setSort(t,e){if(t&&e)super.setSort(t,e);else{const{minorSortAppDEFieldId:a,minorSortDir:s}=this.model;a&&s?this.state.sortQuery="".concat(a.toLowerCase(),",").concat(s.toLowerCase()):this.state.sortQuery=""}}async loadMore(){this.state.total>this.state.items.length&&!this.state.isLoading&&await this.load({isLoadMore:!0})}async refresh(){await this.load({isInitialLoad:!0})}async afterLoad(t,e){return t.isInitialLoad&&(this.state.rows=[]),e&&e.length>0&&this.state.rows.push(...e.map(a=>{const s=new ue(a,this);return this.initActionStates(s),s})),await this.initGroupCodeListItems(),await this.handleDataGroup(),super.afterLoad(t,e)}setData(t){const e=t.map(a=>new ue(a,this));this.state.rows=e}getAllData(){return this.state.rows.map(t=>t.data)}async onActionClick(t,e,a){const s=t.uiactionId;await U.execAndResolved(s,{context:this.context,params:this.params,data:[e.data],view:this.view,event:a})}initActionStates(t){const{deuiactionGroup:e,deuiactionGroup2:a}=this.model;e&&this.initUIActionGroup(t,e),a&&this.initUIActionGroup(t,a)}initUIActionGroup(t,e){var a;(a=e.uiactionGroupDetails)!=null&&a.length||ibiz.log.debug("\u64CD\u4F5C\u5217\u754C\u9762\u884C\u4E3A\u7EC4\u6CA1\u6709\u914D\u7F6E\u754C\u9762\u884C\u4E3A");const s=new ft;(e.uiactionGroupDetails||[]).forEach(r=>{const n=r.uiactionId;if(n){const o=new pt(r.id,this.context.srfappid,n);s.addState(r.id,o)}}),s.update(t.data.getOrigin()),t.uaColStates[e.id]=s}async handleDataGroup(){const{enableGroup:t,groupMode:e,groupAppDEFieldId:a}=this.model;if(t&&e){if(!a)throw new m(this.model,"\u5206\u7EC4\u5C5E\u6027\u6CA1\u6709\u914D\u7F6E");e==="AUTO"?this.handleAutoGroup():e==="CODELIST"&&await this.handleCodeListGroup()}}handleAutoGroup(){const{groupAppDEFieldId:t}=this.model;if(t){const{items:e}=this.state,a=new Map;e.forEach(i=>{const r=i[t];w(r)||(a.has(r)||a.set(r,[]),a.get(r).push(new ue(i,this)))});const s=[];a.forEach((i,r)=>{s.push({caption:r,key:r,children:[...i]})}),this.state.groups=s}}async initGroupCodeListItems(){const{groupCodeListId:t}=this.model;if(!t)return;const e=ibiz.hub.getApp(this.context.srfappid);this.groupCodeListItems=await e.codeList.get(t,this.context,this.params)}async handleCodeListGroup(){const{groupAppDEFieldId:t,groupCodeListId:e}=this.model;if(!e)throw new m(this.model,"\u5206\u7EC4\u4EE3\u7801\u8868\u6CA1\u6709\u914D\u7F6E");const{items:a}=this.state,s=new Map;this.groupCodeListItems.forEach(r=>{s.set(r.value,[])}),a.forEach(r=>{const n=r[t],o=s.get(n);o&&o.push(new ue(r,this))});const i=[];s.forEach((r,n)=>{const o=this.groupCodeListItems.find(u=>u.value===n);i.push({caption:o.text,key:o.value,children:r})}),this.state.groups=i}}),Uu=d("KanbanService",class extends qs{async updateGroup(t,e){var a;const s=((a=this.model.updateGroupControlAction)==null?void 0:a.appDEMethodId)||"update";let i=await this.exec(s,t,e.getOrigin());return i=this.handleResponse(i),i}}),tl=d("KanbanController",class extends pu{get enableEditOrder(){return this.model.enableCardEditOrder===!0}get enableEditGroup(){return this.model.enableCardEditGroup===!0}async initControlService(){this.service=new Uu(this.model),await this.service.init(this.context)}initState(){super.initState(),this.state.size=this.model.pagingSize||1e3,this.state.updating=!1,this.state.draggable=this.enableEditOrder||this.enableEditGroup}async onCreated(){await super.onCreated()}sortItems(t){const e=this.model.minorSortAppDEFieldId,{minorSortDir:a}=this.model;if(!e)throw new m(this.model,"\u6392\u5E8F\u5C5E\u6027\u6CA1\u914D\u7F6E");if(!a)throw new m(this.model,"\u6392\u5E8F\u65B9\u5411\u6CA1\u914D\u7F6E");const s=a==="ASC";t.forEach(i=>{const r=i[e];if(w(r))i[e]=0;else{const n=Number(r);if(Number.isNaN(n))throw new f("".concat(i.srfmajortext,"\u7684\u6392\u5E8F\u5C5E\u6027\u65E0\u6CD5\u8F6C\u6362\u6210\u6570\u503C"))}}),t.sort((i,r)=>s?i[e]-r[e]:r[e]-i[e])}async afterLoad(t,e){return this.sortItems(this.state.items),super.afterLoad(t,e)}handleDataGroup(){if(!this.model.enableGroup||this.model.groupMode==="NONE")throw new f("\u770B\u677F\u90E8\u4EF6\u5FC5\u987B\u5F00\u542F\u5206\u7EC4");return super.handleDataGroup()}async onDragChange(t){if(!this.enableEditGroup&&t.from!==t.to){ibiz.message.warning("\u5F53\u524D\u770B\u677F\u4E0D\u5141\u8BB8\u8C03\u6574\u5206\u7EC4\uFF01");return}const e=this.model.minorSortDir==="ASC",{from:a,to:s,fromIndex:i,toIndex:r}=t,n=this.model.groupAppDEFieldId,o=this.model.minorSortAppDEFieldId,u=[],c=this.state.groups.find(I=>I.key===a),l=this.state.groups.find(I=>I.key===s);if(!this.enableEditOrder){if(t.from===t.to){ibiz.message.warning("\u5F53\u524D\u770B\u677F\u4E0D\u5141\u8BB8\u8C03\u6574\u6B21\u5E8F");return}const I=c.children[i];return I[n]=t.to,this.updateChangedItems([I])}const p=I=>I+(100-I%100),h=[...l.children],E=[...l.children],C=c.children[i];t.from!==t.to?(C[n]=t.to,E.splice(r,0,C)):(E.splice(i,1),E.splice(r,0,C));const F=c.children.splice(i,1);l.children.splice(r,0,...F),e||(h.reverse(),E.reverse());let v,P=[],b;E.forEach((I,R)=>{v===void 0?I!==h[R]&&(h[R]?v=h[R][o]||100:v=R===0?100:p(h[R-1][o]),I[o]=v,u.push(I)):(v>=I[o]?(P.length>0&&(P.forEach(z=>{z[o]=p(b),u.push(z),b=z[o]}),v=b,b=0,P=[]),I[o]=p(v),u.push(I)):(P.length===0&&(b=v),P.push(I)),v=I[o])}),this.updateChangedItems(u)}async updateChangedItems(t){try{this.state.updating=!0,await Promise.all(t.map(async e=>{const a=O(this.model.appDataEntityId),s=this.context.clone();s[a]=e.srfkey;const i=await this.service.updateGroup(s,e);if(i.data){const r=this.state.items.findIndex(n=>n.srfkey===e.srfkey);this.state.items.splice(r,1,i.data)}}))}finally{this.state.updating=!1,await this.afterLoad({},this.state.items)}}}),zu=d("TreeGridExService",class extends ai{constructor(){super(...arguments),this.multipleUiMap=new Map}initUIDataMap(){var t;super.initUIDataMap(),(t=this.model.detreeNodes)==null||t.forEach(e=>{var a;const s=new Map;(a=e.detreeNodeDataItems)==null||a.forEach(i=>{const r=i.id.toLowerCase(),o=i.appDEFieldId.toLowerCase(),u=new H(r,o,{isOriginField:!0,dataType:i.dataType});s.set(r,u)}),this.multipleUiMap.set(e.id,s)})}async getDENodeDatas(t,e,a,s){const{appDEDataSetId:i,appDataEntityId:r}=t,{context:n,params:o,navContext:u,navParams:c}=e?this.getNodeRSFilterParams(e,a,s):{context:s.context,params:s.params,navContext:{},navParams:{}};o.size=t.maxSize||1e3,t.sortAppDEFieldId&&t.sortDir&&Object.assign(o,{sort:"".concat(t.sortAppDEFieldId.toLowerCase(),",").concat(t.sortDir.toLowerCase())});const l=await this.app.deService.exec(r,i,n,o);if(l.data.length){const{data:p}=this.handleResponseForMultiple(l,t.id);return p.map(E=>new Vs(t,a,{data:E,leaf:!!s.leaf,navContext:u,navParams:c}))}return[]}handleResponseForMultiple(t,e){const a=super.handleResponse(t);return a.headers&&(a.headers["x-page"]&&(a.page=Number(a.headers["x-page"])),a.headers["x-per-page"]&&(a.size=Number(a.headers["x-per-page"])),a.headers["x-total"]&&(a.total=Number(a.headers["x-total"]))),a.ok&&(kt(a.data)?a.data=a.data.map(s=>this.toUIDataForMultiple(s,e)):a.data=this.toUIDataForMultiple(a.data,e)),a}toUIDataForMultiple(t,e){const a=this.multipleUiMap.get(e);return new G(t,a)}}),el=d("TreeGridExController",class extends tt{constructor(){super(...arguments),this.providers={},this.columns={},this.fieldColumns={},this.uaColumns={}}initState(){super.initState(),this.state.size=0,this.state.columnStates=[],this.state.defaultExpandedKeys=[]}async onCreated(){await super.onCreated(),this.service=new zu(this.model),await this.service.init(this.context),this.initColumnStates(),await this.initGridColumns()}async initGridColumns(){this.model.detreeColumns&&await Promise.all(this.model.detreeColumns.map(async t=>this.initColumnsController(t)))}async initColumnsController(t){const e=await Ge(t);if(!e)return;this.providers[t.codeName]=e;const a=await e.createController(t,this);this.columns[t.codeName]=a,t.columnType==="DEFGRIDCOLUMN"?this.fieldColumns[t.codeName]=a:t.columnType==="UAGRIDCOLUMN"&&(this.uaColumns[t.codeName]=a)}initColumnStates(){W(this.model,t=>{t.columnType!=="GROUPGRIDCOLUMN"&&this.state.columnStates.push({key:t.codeName,caption:t.caption,hidden:!!t.hideDefault,uaColumn:t.columnType==="UAGRIDCOLUMN"})},{childrenFields:["detreeColumns"]}),this.calcColumnFixed()}calcColumnFixed(){const t=this.state.columnStates.filter(a=>!a.hidden),e=t.length;t.forEach((a,s)=>{a.uaColumn?a.fixed=s+1<=Math.floor(e/2)?"left":"right":a.fixed="right"})}async load(t={}){const e=t.isInitialLoad===!0,a=await this.loadNodes();return this.state.expandedKeys=this.calcExpandedKeys(a),await this.afterLoad(t,a),this.state.isLoaded=!0,await this.evt.emit("onLoadSuccess",{isInitialLoad:e}),a}async loadNodes(t){const e=await this.getFetchParams(),a=!!e.query,s=t?void 0:this.state.defaultExpandedKeys;await this.startLoading();let i;try{i=await this.service.fetchChildNodes(t,{context:this.context.clone(),params:e,hasQuery:a,defaultExpandedKeys:s})||[]}finally{await this.endLoading()}return t?t.children=i:this.state.rootNodes=i,this.state.items=[],W({children:this.state.rootNodes},r=>{this.state.items.push(r)}),i}calcExpandedKeys(t){let e=[];return W({children:t},a=>{var s;(s=a.children)!=null&&s.length&&e.push(a.id)}),this.state.defaultExpandedKeys.length&&(e.push(...this.state.defaultExpandedKeys),e=Array.from(new Set(e))),e}}),al=d("TreeGridController",class extends Bu{}),sl=d("TreeGridService",class extends ei{}),Gu=d("MEditViewPanelService",class extends at{}),il=d("MEditViewPanelController",class extends tt{constructor(){super(...arguments),this.parameters=[]}async onCreated(){await super.onCreated(),this.service=new Gu(this.model),await this.service.init(this.context),await this.initParameters()}initState(){super.initState(),this.state.panelUiItems=[],this.state.activeTab="",this.state.size=1e3,this.state.isNeedScroll=!1}async initParameters(){var t,e;if(this.model.embeddedAppViewId){const a=await ibiz.hub.getAppView(this.model.embeddedAppViewId);if(a.appDataEntityId){const s=await ibiz.hub.getAppDataEntity(a.appDataEntityId);a&&s?this.parameters=[{parameterName:(t=s.keyAppDEFieldId)==null?void 0:t.toLowerCase(),pathName:(e=s.codeName)==null?void 0:e.toLowerCase()}]:this.parameters=[]}}}async afterLoad(t,e){await super.afterLoad(t,e);const a=this.state.panelUiItems.filter(s=>s.id.startsWith("mockId:"));return this.state.panelUiItems=[],this.doItems(e,a),this.model.panelStyle==="TAB_TOP"&&this.state.panelUiItems.length>0&&a.length===0&&(this.state.activeTab=this.state.panelUiItems[0].id),e}handlePanelItemParams(t){const[{parameterName:e}]=this.parameters,s={id:t[e]?t[e]:"mockId:".concat(K()),context:this.context.clone(),params:{},data:t,srfmajortext:""};return this.parameters.forEach(i=>{const{parameterName:r,pathName:n}=i;t[r]&&!Object.is(t[r],"")&&Object.assign(s.context,{[n]:t[r]}),t.srfmajortext&&!Object.is(t.srfmajortext,"")?Object.assign(s,{srfmajortext:t.srfmajortext}):t.srfuf===0&&Object.assign(s,{srfmajortext:"\u8349\u7A3F--\u65B0\u5EFA"})}),s}doItems(t,e){t.forEach(a=>{const s=this.handlePanelItemParams(a);this.state.panelUiItems.push(s)}),e&&this.state.panelUiItems.push(...e)}async handleAdd(){this.state.isNeedScroll=!0,this.doItems([{srfuf:0}]),this.model.panelStyle==="TAB_TOP"&&(this.state.activeTab=this.state.panelUiItems[this.state.panelUiItems.length-1].id)}async handleDelete(t){if(this.state.isNeedScroll=!1,t.data.srfuf===0){const e=this.state.panelUiItems.findIndex(a=>a===t);this.state.panelUiItems.splice(e,1)}else await this.remove({data:[t.data],notRefresh:!0})}async handleTabDelete(t,e){let a=!1;t.id===this.state.activeTab&&e===this.state.panelUiItems.length-1&&e>0&&(a=!0),await this.handleDelete(t),a&&(this.state.activeTab=this.state.panelUiItems[this.state.panelUiItems.length-1].id)}afterRemove(t){super.afterRemove(t);const e=this.state.panelUiItems.findIndex(a=>a.data.srfkey===t.srfkey);e!==-1&&this.state.panelUiItems.splice(e,1)}onViewDataChange(t,e){t.eventName==="onSaveSuccess"&&this.handleDataChange(t.data[0],e)}async handleDataChange(t,e){const a=this.state.panelUiItems.findIndex(i=>i.id===e);if(a<0)throw new f("\u7F16\u8F91\u89C6\u56FE\u9762\u677F\u90E8\u4EF6UI\u6570\u636E\u4E0D\u5B58\u5728");const s=this.state.panelUiItems[a];s.id.startsWith("mockId:")?this.state.panelUiItems[a]=this.handlePanelItemParams(t):s.srfmajortext=t.srfmajortext,this.model.panelStyle==="TAB_TOP"&&(this.state.activeTab=this.state.panelUiItems[a].id)}}),ju=d("MapService",class extends at{async init(t){await super.init(t)}async fetchAll(t,e={}){var a;const s=[];if((a=this.model.sysMapItems)!=null&&a.length){const i=ibiz.hub.getApp(t.srfappid);await Promise.all(this.model.sysMapItems.map(async r=>{const{appDataEntityId:n,appDEDataSetId:o,customCond:u}=r,c=t.clone(),l={...e};if(u){const h=B.execSingleLine(u);if(h){const{navigateContexts:E,navigateParams:C}=Ne(h);E&&Object.assign(c,y(E,e,t)),C&&Object.assign(l,y(E,e,t))}}const p=await i.deService.exec(n,o,c,l);p.data&&s.push(...p.data.map(h=>new Yn(h,r)))}))}return new L(s,200)}}),rl=d("MapController",class extends tt{initState(){super.initState(),this.state.size=1e3,this.state.pointData=[],this.state.areaData=[],this.calcDefaultOptions()}async onCreated(){await super.onCreated(),this.service=new ju(this.model),await this.service.init(this.context)}async load(t={}){if(this.state.isSimple)return[];await this.startLoading();try{const e=t.isInitialLoad===!0,{context:a}=this.handlerAbilityParams(t),s=await this.getFetchParams(t?.viewParam);a.srfareacode=this.state.areaCode;const i=await this.service.fetchAll(a,s);this.state.items=i.data,await this.afterLoad(t,i.data),this.state.isLoaded=!0,await this._evt.emit("onLoadSuccess",{isInitialLoad:e})}catch(e){throw await this._evt.emit("onLoadError",void 0),this.actionNotification("FETCHERROR",{error:e}),e}finally{await this.endLoading()}return this.actionNotification("FETCHSUCCESS"),this.state.items}async afterLoad(t,e){const a=await super.afterLoad(t,e),s=[],i=[];return a.forEach(r=>{r._itemStyle==="REGION"?s.push(r):r._itemStyle==="POINT"&&i.push(r)}),this.state.pointData=i,this.state.areaData=s,a}calcDefaultOptions(){var t;if(this.state.strAreaCode=!1,this.state.defaultAreaCode=1e5,(t=this.model.controlParam)!=null&&t.ctrlParams){const{ctrlParams:e}=this.model.controlParam;Object.keys(e).forEach(a=>{const s=e[a];switch(a.toLowerCase()){case"defaultareacode":this.state.defaultAreaCode=s;break;case"strareacode":this.state.strAreaCode=s==="true";break;case"jsonbaseurl":this.state.jsonBaseUrl=s;break}})}this.state.defaultAreaCode=this.state.strAreaCode?"".concat(this.state.defaultAreaCode):Number(this.state.defaultAreaCode),this.state.areaCode=this.state.defaultAreaCode}onMapChange(t){this.state.areaCode=t,this.load({}),this.evt.emit("onMapChange",{areaCode:t})}onAreaClick(t){this.evt.emit("onAreaClick",{data:[t]})}onPointClick(t){this.evt.emit("onPointClick",{data:[t]})}}),Ku=d("HubController",class{constructor(){this.session={}}login(t,e){return ibiz.auth.login(t,e)}logout(){return ibiz.auth.logout()}}),Xu=class{constructor(){this.convert=new so,this.controller=new Ku,this.appMap=new Map,this.apps=new Map,this.view2appMap=new Map,this.views=new Map,this.dataEntities=new Map,this.config=new ro,this.defaultAppIndexViewName="Index"}calcAppViewId(t){let e="";if(t.indexOf(".")!==-1){const a=t.split(".");e=a[a.length-1]}else e=t.toLowerCase();return e}registerModelLoaderProvider(t){this.modelLoaderProvider=t}registerApp(t){this.apps.set(t.codeName,t)}registerAppView(t){this.views.set(t.codeName,t)}registerAppDataEntity(t,e=ibiz.env.appId){this.dataEntities.has(e)||this.dataEntities.set(e,new Map),this.dataEntities.get(e).set(t.id,t)}setAppView(t,e=ibiz.env.appId){const a=this.calcAppViewId(t);this.view2appMap.set(a,e)}hasAppView(t){const e=this.calcAppViewId(t);return this.view2appMap.has(e)}async getAppStyle(t){return this.modelLoaderProvider?this.modelLoaderProvider.getAppStyle(t):null}async getAppView(t){const e=this.calcAppViewId(t),a=this.view2appMap.get(e)||ibiz.env.appId;if(this.appMap.has(a)||await this.createApp(a),this.views.has(e))return this.views.get(e);if(this.modelLoaderProvider){const s=await this.modelLoaderProvider.getAppView(a,e);return this.registerAppView(s),s}throw new f("\u89C6\u56FE[".concat(e,"]\u4E0D\u5B58\u5728"))}async getAppDataEntity(t,e=ibiz.env.appId){if(this.dataEntities.has(e)){const a=this.dataEntities.get(e);if(a.has(t))return a.get(t)}if(this.modelLoaderProvider){let a;return t.indexOf(".")!==-1?a=await this.modelLoaderProvider.getAppDataEntity(e,t):a=await this.modelLoaderProvider.getAppDataEntityByCodeName(e,t),this.registerAppDataEntity(a,e),a}throw new f("\u672A\u627E\u5230\u5E94\u7528\u5B9E\u4F53[".concat(t,"]"))}async createApp(t){if(this.appMap.has(t))return this.appMap.get(t);let e;if(this.apps.has(t))e=this.apps.get(t);else if(this.modelLoaderProvider)e=await this.modelLoaderProvider.getApp(t),this.registerApp(e);else throw new f("\u672A\u627E\u5230\u5E94\u7528[".concat(t,"]\u6A21\u578B"));const a=new eo(e);return this.appMap.set(t,a),await a.init(),this.configCache||(this.configCache=new Jt(ibiz.env.appId,"PSSysHub","Global")),a}async getAppAsync(t=ibiz.env.appId){return this.createApp(t)}getApp(t){let e=null;return t?t instanceof Object?e=t.id:e=t:e=ibiz.env.appId,this.appMap.get(e)}},Hu=d("EngineFactory",class{constructor(){this.viewEngines=new Map}register(t,e){this.viewEngines.set(t,e)}unRegister(t){this.viewEngines.delete(t)}getEngine(t,...e){const{engineType:a,engineCat:s}=t,i="".concat(s,"_").concat(a),r=this.viewEngines.get(i);if(r)return r(...e);ibiz.log.error("\u6CA1\u6709".concat(i,"\u5BF9\u5E94\u7684\u5F15\u64CE"),t)}}),Yu=d("ViewEngineBase",class{constructor(t){this.view=t,this.initViewState()}get toolbar(){return this.view.getController("toolbar")}get leftToolbar(){return this.view.getController("lefttoolbar")}get rightToolbar(){return this.view.getController("righttoolbar")}get footerToolbar(){return this.view.getController("footertoolbar")}get viewLayoutPanel(){return this.view.layoutPanel}async onCreated(){const{childNames:t}=this.view;t.push("captionbar","toolbar")}async onMounted(){var t,e;const{model:a,childNames:s}=this.view;if(ibiz.log.debug("".concat(a.id,"\u7684\u5B50\u7EC4\u4EF6\uFF1A").concat(s.join(";"),"\u90FD\u5DF2mounted")),!this.calcViewHeaderVisible()){const r=(t=this.viewLayoutPanel)==null?void 0:t.panelItems.view_header;r&&(r.state.visible=!1)}if(ibiz.env.isMob&&!this.calcViewFooterVisible()){const n=(e=this.viewLayoutPanel)==null?void 0:e.panelItems.view_footer;n&&(n.state.visible=!1)}}async onDestroyed(){}async call(t,e){if(t==="GetData")return this.getData()}initViewState(){}getData(){return[]}calcViewHeaderVisible(){var t,e,a,s;let i=!1;const{model:r}=this.view;if(r.showCaptionBar===!1){const n=(t=this.viewLayoutPanel)==null?void 0:t.panelItems.view_captionbar;n&&(n.state.visible=!1)}else i=!0;if(ibiz.env.isMob){if(this.leftToolbar)i=!0;else{const n=(e=this.viewLayoutPanel)==null?void 0:e.panelItems.lefttoolbar;n&&(n.state.visible=!1)}if(this.rightToolbar)i=!0;else{const n=(a=this.viewLayoutPanel)==null?void 0:a.panelItems.righttoolbar;n&&(n.state.visible=!1)}}else if(this.toolbar)i=!0;else{const n=(s=this.viewLayoutPanel)==null?void 0:s.panelItems.view_toolbar;n&&(n.state.visible=!1)}return i}calcViewFooterVisible(){let t=!1;return this.footerToolbar&&(t=!0),t}async loadEntityData(){const{appDataEntityId:t}=this.view.model,{evt:e,context:a,params:s}=this.view;if(!t)throw new f("\u8BE5\u89C6\u56FE\u6CA1\u6709\u5B9E\u4F53\uFF0C\u65E0\u6CD5\u52A0\u8F7D\u5B9E\u4F53\u6570\u636E");const r=await ibiz.hub.getApp(a.srfappid).deService.exec(t,"get",a,s),{data:n}=r;n&&(this.view.state.srfactiveviewdata=n,e.emit("onDataChange",{actionType:"LOAD",data:[n]}),n.srfkey&&e.emit("onViewInfoChange",{dataInfo:n.srfmajortext||""}))}}),nl=d("MDViewEngine",class extends Yu{get xdataControlName(){return this.view.model.xdataControlName}get searchForm(){return this.view.getController("searchform")}get searchBar(){return this.view.getController("searchbar")}get xdataControl(){return this.view.getController(this.xdataControlName)}async onCreated(){await super.onCreated();const{childNames:t}=this.view;t.push(this.xdataControlName,"searchform","searchbar"),this.xdataControlName&&(this.view.slotProps[this.xdataControlName]||(this.view.slotProps[this.xdataControlName]={}),this.view.slotProps[this.xdataControlName].loadDefault=!1)}async onMounted(){await super.onMounted();const{model:t}=this.view;this.xdataControl.evt.on("onActive",this.onXDataActive.bind(this)),this.xdataControl.evt.on("onSelectionChange",async a=>{var s;(s=this.toolbar)==null||s.calcButtonState(a.data[0],this.xdataControl.model.appDataEntityId)}),this.xdataControl.evt.on("onBeforeLoad",()=>{this.xdataControl.state.searchParams=this.getSearchParams()}),this.xdataControl.evt.on("onLoadSuccess",a=>{this.view.evt.emit("onDataChange",{...a,actionType:"LOAD"})}),this.xdataControl.evt.on("onRemoveSuccess",a=>{this.view.evt.emit("onDataChange",{...a,actionType:"REMOVE"})}),this.xdataControl.evt.on("onSaveSuccess",a=>{this.view.evt.emit("onDataChange",{...a,actionType:"SAVE"})});const e=this.viewLayoutPanel.panelItems.view_searchform;if(e){const a=!!this.searchForm;e.state.keepAlive=a,e.state.visible=a&&!!t.expandSearchForm}this.searchForm&&this.searchForm.evt.on("onSearch",()=>{this.reLoad()}),this.searchBar&&this.searchBar.evt.on("onSearch",()=>{this.reLoad()}),!this.view.state.noLoadDefault&&t.loadDefault&&this.load()}async onXDataActive(t){(await this.openData(t)).cancel||this.refresh()}async call(t,e){return t==="ToggleFilter"?(this.toggleFilter(),null):t==="Edit"||t==="View"?this.openData(e):t==="New"?this.newData(e):t==="Remove"?(await this.remove(e),null):t==="Import"?(await this.importData(),null):t==="Refresh"?(await this.refresh(),null):t==="ExportExcel"?(await this.exportData(e),null):t==="Search"?(await this.searchForm.search(),null):t==="Reset"?(await this.searchForm.reset(),null):t==="Copy"?(this.copy(e),null):t==="Load"?(this.load(e),null):super.call(t,e)}getData(){return this.xdataControl.getData()}async openData(t){var e,a;const{data:s,event:i}=t,r=(t.context||this.view.context).clone(),n=t.params||this.view.params,o=((e=s[0].srfdecodename)==null?void 0:e.toLowerCase())||O(this.xdataControl.model.appDataEntityId);r[o.toLowerCase()]=s[0].srfkey;const u=await((a=this.view.scheduler)==null?void 0:a.triggerCustom("opendata",{context:r,params:n,data:s,event:i,view:this.view}));if(u===-1)throw new m(this.view.model,"\u7F3A\u5C11newdata\u7684\u89C6\u56FE\u903B\u8F91");return{cancel:!u.ok}}async newData(t){var e,a,s;const{data:i,event:r,copyMode:n}=t;if(!((a=(e=this.view.model.viewLayoutPanel)==null?void 0:e.appViewLogics)==null?void 0:a.find(l=>l.id==="newdata")))throw new m(this.view.model,"\u7F3A\u5C11newdata\u7684\u89C6\u56FE\u903B\u8F91");const u=A(this.view.params);n&&(u.srfcopymode=n);const c=await((s=this.view.scheduler)==null?void 0:s.triggerCustom("newdata",{context:this.view.context,params:u,data:i,event:r,view:this.view}));if(c===-1)throw new m(this.view.model,"\u7F3A\u5C11newdata\u7684\u89C6\u56FE\u903B\u8F91");return{cancel:!c.ok}}async remove(t){await this.xdataControl.remove(t)}async load(t={}){await this.xdataControl.load({isInitialLoad:!0,...t})}async refresh(){await this.xdataControl.refresh()}async reLoad(){await this.xdataControl.load({isInitialLoad:!0})}getSearchParams(){const t={};return this.searchForm&&Object.assign(t,this.searchForm.getFilterParams()),this.searchBar&&Object.assign(t,this.searchBar.getFilterParams()),t}async importData(){await this.xdataControl.importData()}async exportData(t){await this.xdataControl.exportData(t)}async copy(t){this.newData(Object.assign(t,{copyMode:!0}))}calcViewHeaderVisible(){let t=super.calcViewHeaderVisible();if(!this.searchBar||!this.searchBar.state.visible){const e=this.viewLayoutPanel.panelItems.view_searchbar;e&&(e.state.visible=!1)}else t=!0;return t}toggleFilter(){if(this.searchForm){const t=this.viewLayoutPanel.panelItems.view_searchform;t&&(t.state.visible=!t.state.visible)}}}),qu=class{handle(t){return t instanceof m||t instanceof D?ibiz.message.error(t.message,10,!0):t instanceof Ot?t.status===401?ibiz.message.error("\u6CA1\u6709\u6CE8\u518C\u65E0\u6743\u9650\u9519\u8BEF\u5904\u7406\u5668"):ibiz.notification.error({title:"",desc:t.message,duration:10}):t instanceof de?ibiz.message.error(t.message,t.duration,t.duration===0):t instanceof f&&ibiz.message.error(t.message,10,!0),ibiz.log.error(t),!0}},Qu=class{constructor(){this.handlers=[]}register(t){this.handlers.unshift(t)}handleSingle(t){this.handlers.find(a=>!!a.handle(t))||ibiz.log.error("\u6CA1\u6709\u627E\u5230\u80FD\u5904\u7406\u8BE5\u9519\u8BEF\u7684\u5904\u7406\u5668",t)}handle(t){t instanceof Array?t.forEach(e=>{this.handleSingle(e)}):this.handleSingle(t)}},$u=class{constructor(){this.layoutPanel=new Dr,this.text=new Sr,this.hbs=new Ki,this.rawValue=new Rr,this.error=new Qu,this.error.register(new qu)}showAppLoading(){const t=document.getElementById("app-loading-x");t&&(t.style.display="none")}hiddenAppLoading(){setTimeout(()=>{const t=document.getElementById("app-loading-x");t&&(t.style.display="none")},300)}},ce=class{constructor(t,e){this.logic=t,this.scheduler=e,this.type=t.logicType}execute(t){throw new f("Method not implemented.")}destroy(){}},Ju=class{constructor(){this.constructorMap=new Map}register(t,e){this.constructorMap.set(t,e)}createExecutor(t,e){const a=this.constructorMap.get(t.logicType);if(!a)throw new D(t,"\u903B\u8F91\u7C7B\u578B ".concat(t.logicType," \u6682\u672A\u652F\u6301\uFF01"));return a(t,e)}},Zu=class extends ce{constructor(){super(...arguments),this.initialized=!1}convertScriptArgs(t){return t}init(t,e,a){this.convertScriptArgs=e;const s=this.logic.scriptCode;this.scriptFn=B.createScriptFn(t,s,a),this.initialized=!0}execute(t){const e=this.convertScriptArgs(t);return this.scriptFn.exec(e)}},si=class extends ce{execute(t){const{appDEUILogicId:e,appDataEntityId:a}=this.logic;if(!e)throw new m(this.logic,"\u6CA1\u6709\u914D\u7F6E\u5B9E\u4F53\u754C\u9762\u903B\u8F91");re(e,a,t)}},ii=class{constructor(t){this.triggers=new Map,this.executors=new Map,this.hasViewEventTrigger=!1,this.hasControlEventTrigger=!1,this.logics=t,t.forEach(e=>{try{const a=this.createExecutor(e);this.executors.set(e.id,a);const s=this.createTrigger(e);this.triggers.set(e.id,s),s.bindExecutor(a)}catch(a){ibiz.log.error(a.message)}})}destroy(){this.triggers.forEach(t=>t.destroy()),this.executors.forEach(t=>t.destroy())}getExecuteParams(t){let e={};return this.defaultParamsCb&&(e=this.defaultParamsCb()),Ae(t,e)}createTrigger(t){switch(t.triggerType){case"VIEWEVENT":this.hasViewEventTrigger=!0;break;case"CTRLEVENT":this.hasControlEventTrigger=!0;break}return ibiz.scheduler.triggerFactory.createTrigger(t,this)}createExecutor(t){return ibiz.scheduler.executorFactory.createExecutor(t,this)}getMatchTriggers(t){const e=[];return this.triggers.forEach(a=>{a.match(t)&&e.push(a)}),e}triggerAndExecute(t,e={}){const a=this.getMatchTriggers(t);if(a.length>0){const s=this.getExecuteParams(e);return a.map(r=>r.execute(s))}}triggerItemDynaLogic(t,e,a){const s={itemName:t,triggerType:e},i=this.triggerAndExecute(s,a);if(i?.length)return i.pop()}triggerItemVisible(t,e){return this.triggerItemDynaLogic(t,"ITEMVISIBLE",e)}triggerItemEnable(t,e){return this.triggerItemDynaLogic(t,"ITEMENABLE",e)}triggerItemBlank(t,e){return this.triggerItemDynaLogic(t,"ITEMBLANK",e)}startTimerTrigger(){this.getMatchTriggers({triggerType:"TIMER"}).forEach(e=>e.start())}triggerCustom(t,e){const a=this.triggers.get(t);if(!a)return-1;const s=this.getExecuteParams(e);return a.execute(s)}triggerControlEvent(t,e,a){const s={ctrlName:t,eventName:e,triggerType:"CTRLEVENT"};this.triggerAndExecute(s,a)}},tc=class extends ii{constructor(t){const e=t.filter(a=>a.triggerType!=="APPVIEWENGINE");e.forEach(a=>{a.triggerType==="CTRLEVENT"&&(a.ctrlName=a.itemName||a.logicTag)}),super(e)}},ec=class extends ii{constructor(t){t.forEach(e=>{e.triggerType=e.logicTrigger}),super(t)}triggerViewEvent(t){const e={eventName:t.eventName,triggerType:"VIEWEVENT"};this.triggerAndExecute(e,t)}},ac=class{constructor(){this.constructorMap=new Map}register(t,e){this.constructorMap.set(t,e)}createTrigger(t,e){const a=this.constructorMap.get(t.triggerType);if(!a)throw new D(t,"\u89E6\u53D1\u5668\u7C7B\u578B ".concat(t.triggerType," \u6682\u672A\u652F\u6301\uFF01"));return a(t,e)}},sc=class{constructor(){this.executorFactory=new Ju,this.triggerFactory=new ac}createViewScheduler(t){return new ec(t)}createControlScheduler(t){return new tc(t)}},Tt=class{constructor(t,e){this.logic=t,this.scheduler=e,this.type=t.triggerType}bindExecutor(t){this.executor=t,this.executor.type==="SCRIPT"&&this.bindScriptExecutor(t)}bindScriptExecutor(t){t.initialized||t.init([],e=>e,{isAsync:!0,singleRowReturn:!1})}match(t){return t.triggerType===this.type}execute(t){if(this.executor)return this.executor.execute(t);throw new f("".concat(this.logic.id,"\u6CA1\u6709\u7ED1\u5B9Aexecutor"))}destroy(){this.executor=void 0}},ic=class extends Tt{},sa=class extends Tt{bindExecutor(t){if(super.bindExecutor(t),this.executor.type!=="SCRIPT")throw new f("\u9884\u5B9A\u4E49\u903B\u8F91\u7C7B\u578B".concat(this.type,"\u7684\u89E6\u53D1\u5668\u7C7B\u578B\u53EA\u80FD\u662F\u811A\u672C"))}bindScriptExecutor(t){t.init(["context","viewparams","data","env"],e=>{const{context:a,params:s,data:i}=e;return{context:a,params:s,data:i?.[0]||{},env:ibiz.env}},{singleRowReturn:!0,isAsync:!1})}match(t){var e,a;return super.match(t)&&((e=t.itemName)==null?void 0:e.toLowerCase())===((a=this.logic.itemName)==null?void 0:a.toLowerCase())}execute(t){return!!this.executor.execute(t)}},rc=class extends Tt{constructor(){super(...arguments),this.timer=null}start(){if(!this.logic.timer)throw new m(this.logic,"\u5B9A\u65F6\u5668\u7F3A\u5C11\u5B9A\u65F6\u95F4\u9694");this.timer=setInterval(()=>{if(!this.scheduler.defaultParamsCb)throw new f("\u5B9A\u65F6\u5668\u7F3A\u5C11\u9ED8\u8BA4\u53C2\u6570\u56DE\u8C03");const t=this.scheduler.defaultParamsCb();this.executor.execute(t)},this.logic.timer)}destroy(){super.destroy(),this.timer&&clearInterval(this.timer)}},nc=class extends ce{execute(t){if(this.logic.id==="opendata"&&this.logic.builtinAppUILogic)return this.executeOpenDataAppUILogic(this.logic.builtinAppUILogic,t);if(this.logic.id==="newdata"&&this.logic.builtinAppUILogic)return this.executeNewDataAppUILogic(this.logic.builtinAppUILogic,t)}async executeOpenDataAppUILogic(t,e){const{context:a,params:s,...i}=e,{data:r}=e;if(!r?.[0])throw new f("opendata\u6CA1\u6709\u53EF\u64CD\u4F5C\u6570\u636E\uFF01");const n=t.openDataAppViews;let o;if(n)o=await this.calcOpenViewRef(t,e);else if(o=t.openDataAppView,!o)throw new m(t,"opendata\u89C6\u56FE\u903B\u8F91\u6CA1\u6709\u914D\u7F6E\u9ED8\u8BA4\u6253\u5F00\u89C6\u56FE");const u=o.refAppViewId;if(!u)throw new m(t,"opendata\u89C6\u56FE\u903B\u8F91\u7684\u9ED8\u8BA4\u6253\u5F00\u89C6\u56FE\u6CA1\u6709\u5B9E\u9645\u5F15\u7528\u89C6\u56FE");const c=o.navigateContexts||[],l=Object.assign(a,y(c,r[0],s,a));let p={};const h=o.navigateParams;return x(h)&&(p=y(h,r[0],s,a)),ibiz.commands.execute(Z.TAG,u,l,p,i)}async calcOpenViewRef(t,e){const a=await ibiz.hub.getAppDataEntity(e.view.model.appDataEntityId),s=a.formTypeAppDEFieldId||a.dataTypeAppDEFieldId;if(!s)throw new m(t,"".concat(a.codeName,"[\u591A\u8868\u5355\u5B9E\u4F53] or [\u7D22\u5F15\u5B9E\u4F53]\u7F3A\u5C11\u7C7B\u578B\u5C5E\u6027\u914D\u7F6E"));const{data:i}=e,r=i[0][s];if(!r)throw new m(t,"\u6570\u636E\u6E90\u65E0\u8868\u5355\u7C7B\u578B\u5E94\u7528\u5B9E\u4F53\u5C5E\u6027\u503C");const n=t.openDataAppViews,o=n?.find(u=>u.refMode===r);if(!o)throw new f("\u6CA1\u6709\u627E\u5230\u4E0E\u8868\u5355\u7C7B\u578B".concat(r,"\u76F8\u5173\u7684\u5B9E\u4F53\u7684\u7F16\u8F91\u89C6\u56FE"));return o}async executeNewDataAppUILogic(t,e){const{context:a,params:s,...i}=e,{data:r,view:n}=e,{enableWizardAdd:o,enableBatchAdd:u,batchAddOnly:c,newDataAppView:l}=t;let p;if(o){if(p=await this.getWizardNewViewRef(t,e),!p)return{ok:!1}}else if(u){const b=O(n.parentView.model.appDataEntityId),I=t.batchAddAppViews;if(p=I?.find(R=>R.refMode.toLowerCase()!==b),!p)throw new m(t,"\u6CA1\u6709\u627E\u5230\u6279\u6DFB\u52A0\u9700\u8981\u6253\u5F00\u7684\u9009\u62E9\u89C6\u56FE")}else{if(c)throw new D(t,"batchAddOnly\u6682\u672A\u652F\u6301");if(p=l,!p||!p.refAppViewId)throw new m(t,"newdata\u89C6\u56FE\u903B\u8F91\u6CA1\u6709\u914D\u7F6E\u9ED8\u8BA4\u65B0\u5EFA\u6570\u636E\u89C6\u56FE")}let h={},E={};const C=r?.[0]||{},F=p.navigateContexts;x(F)&&(h=y(F,C,s,a)),h=Object.assign(a,h);const v=p.navigateParams;if(x(v)&&(E=y(v,C,s,a)),s.srfcopymode){const I=(await ibiz.hub.getAppDataEntity(n.model.appDataEntityId)).keyAppDEFieldId;I&&C&&(E[I]=C.srfkey,E.srfcopymode=!0)}E.srfuf=0;const P=await ibiz.commands.execute(Z.TAG,p.refAppViewId,h,E,i);return u&&P.data&&await this.doBatchAdd(t,P.data,a,p),P}async getWizardNewViewRef(t,e){var a;const{wizardAppView:s,newDataAppViews:i}=t,{context:r,params:n,...o}=e;if(!s||!s.refAppViewId)throw new m(t,"\u7F3A\u5C11\u9ED8\u8BA4\u7D22\u5F15\u5B9E\u4F53\u9009\u62E9\u89C6\u56FE");const u=await ibiz.commands.execute(Z.TAG,s.refAppViewId,r,n,{...o,openMode:"POPUPMODAL"});if(!u.ok)return;const c=(a=u.data)==null?void 0:a[0];if(!c)throw new f("\u8BF7\u9009\u4E2D\u4E00\u6761\u6570\u636E");const l=c.srfkey,p=i?.find(h=>h.refMode===l);if(!p)throw new f("\u6CA1\u6709\u627E\u5230\u4E0E\u7D22\u5F15\u7C7B\u578B".concat(l,"\u76F8\u5173\u7684\u5B9E\u4F53\u7684\u7F16\u8F91\u89C6\u56FE"));return p}async doBatchAdd(t,e,a,s){var i;if(e?.length){const r=await ibiz.hub.getAppDataEntity(t.appDataEntityId,a.srfappid),n=r.minorAppDERSs,o=s.refMode.toLowerCase();if(!n)throw new m(r,"\u5B9E\u4F53\u6CA1\u6709\u4ECE\u5173\u7CFB\u96C6\u5408\uFF01");let u;n?.forEach(h=>{const E=O(h.majorAppDataEntityId);o===E&&(u=h.parentAppDEFieldId)});const c=(i=s.navigateParams)==null?void 0:i.find(h=>h.key==="keymapping");let l=[];if(c){const h=c.value.split(";"),E={};for(const C of h){const[F,v]=C.split(":");F&&v&&(E[F]=v)}l=e.map(C=>{const F={[u]:C.srfkey};for(const v in E)if(Object.prototype.hasOwnProperty.call(E,v)){const P=E[v];Object.prototype.hasOwnProperty.call(C,v)&&(F[P]=C[v])}return F})}else l=e.map(h=>({[u]:h.srfkey}));await ibiz.hub.getApp(a.srfappid).deService.exec(r.id,"Create",a,l)}}},oc=class extends Tt{constructor(t,e){super(t,e),this.logic=t,this.scheduler=e,this.listenEventNames=[];const a=t.eventNames.split(";");this.listenEventNames=a.map(s=>Me[s]||s)}match(t){return super.match(t)&&this.listenEventNames.includes(t.eventName)}},uc=class extends Tt{constructor(t,e){super(t,e),this.logic=t,this.scheduler=e,this.listenEventNames=[];const a=t.eventNames.split(";");this.listenEventNames=a.map(s=>k[s]||s)}match(t){return super.match(t)&&t.ctrlName.toLowerCase()===this.logic.ctrlName.toLowerCase()&&this.listenEventNames.includes(t.eventName)}},cc=class extends ce{execute(t){if(!this.logic.appDEUIActionId)throw new m(this.logic,"\u903B\u8F91\u4E2D\u7F3A\u5C11\u89E6\u53D1\u5E94\u7528\u5B9E\u4F53\u754C\u9762\u884C\u4E3Aid");U.execAndResolved(this.logic.appDEUIActionId,t)}};function lc(){ibiz.scheduler=new sc,ibiz.scheduler.triggerFactory.register("ITEMVISIBLE",(t,e)=>new sa(t,e)),ibiz.scheduler.triggerFactory.register("ITEMENABLE",(t,e)=>new sa(t,e)),ibiz.scheduler.triggerFactory.register("ITEMBLANK",(t,e)=>new sa(t,e)),ibiz.scheduler.triggerFactory.register("TIMER",(t,e)=>new rc(t,e)),ibiz.scheduler.triggerFactory.register("CUSTOM",(t,e)=>new ic(t,e)),ibiz.scheduler.triggerFactory.register("VIEWEVENT",(t,e)=>new oc(t,e)),ibiz.scheduler.triggerFactory.register("CTRLEVENT",(t,e)=>new uc(t,e)),ibiz.scheduler.executorFactory.register("SCRIPT",(t,e)=>new Zu(t,e)),ibiz.scheduler.executorFactory.register("APPDEUILOGIC",(t,e)=>new si(t,e)),ibiz.scheduler.executorFactory.register("DEUILOGIC",(t,e)=>new si(t,e)),ibiz.scheduler.executorFactory.register("APPUILOGIC",(t,e)=>new nc(t,e)),ibiz.scheduler.executorFactory.register("APPDEUIACTION",(t,e)=>new cc(t,e))}function dc(){const{ibiz:t}=window;t.util=new $u,t.hub=new Xu,t.register=new yi,t.config=new Ii,t.auth=new Un,t.asyncAction=new zn,t.engine=new Hu,Us(),Ys(),bs(),lc(),qr(),t.platform=Ps()}var ol=d("PluginStaticResource",class{constructor(t){this.styleElementMap=new Map,this.url=new URL(t);const e=Fe.dirname(this.url.pathname);this.baseDir=e}dir(t){return Fe.resolve(this.baseDir,t)}async loadStyle(t){const e=t.map(a=>{const s=this.dir(a);return this.styleElementMap.has(s)?!1:(this.styleElementMap.set(s,null),new Promise((i,r)=>{const n=document.createElement("link");n.setAttribute("type","text/css"),n.setAttribute("rel","stylesheet"),n.setAttribute("href",s),n.onload=i,n.onerror=r,document.head.appendChild(n)}))});try{await Promise.all(e)}catch(a){ibiz.log.error(a)}}}),ul=d("RemotePluginItem",class{constructor(t,e,a){this.tag=t,this.repo=e,this.config=a}})}}});
|
|
5
5
|
//# sourceMappingURL=index.system.min.js.map
|