@ibiz-template/runtime 0.4.8 → 0.4.10
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 +70 -9
- package/dist/index.system.min.js +2 -2
- package/out/controller/control/gantt/gantt.controller.d.ts +19 -0
- package/out/controller/control/gantt/gantt.controller.d.ts.map +1 -0
- package/out/controller/control/gantt/gantt.controller.js +19 -0
- package/out/controller/control/gantt/gantt.service.d.ts +14 -0
- package/out/controller/control/gantt/gantt.service.d.ts.map +1 -0
- package/out/controller/control/gantt/gantt.service.js +12 -0
- package/out/controller/control/gantt/index.d.ts +3 -0
- package/out/controller/control/gantt/index.d.ts.map +1 -0
- package/out/controller/control/gantt/index.js +2 -0
- package/out/controller/control/index.d.ts +1 -0
- package/out/controller/control/index.d.ts.map +1 -1
- package/out/controller/control/index.js +1 -0
- package/out/controller/control/report-panel/generator/user-generator.js +1 -1
- package/out/interface/controller/controller/control/i-gantt.controller.d.ts +19 -0
- package/out/interface/controller/controller/control/i-gantt.controller.d.ts.map +1 -0
- package/out/interface/controller/controller/control/index.d.ts +1 -0
- package/out/interface/controller/controller/control/index.d.ts.map +1 -1
- package/out/interface/controller/controller/control/index.js +1 -0
- package/out/interface/controller/event/control/i-gantt.event.d.ts +13 -0
- package/out/interface/controller/event/control/i-gantt.event.d.ts.map +1 -0
- package/out/interface/controller/event/control/index.d.ts +1 -0
- package/out/interface/controller/event/control/index.d.ts.map +1 -1
- package/out/interface/controller/event/control/index.js +1 -0
- package/out/interface/controller/event/view/i-gantt-view.event.d.ts +13 -0
- package/out/interface/controller/event/view/i-gantt-view.event.d.ts.map +1 -0
- package/out/interface/controller/event/view/index.d.ts +1 -0
- package/out/interface/controller/event/view/index.d.ts.map +1 -1
- package/out/interface/controller/event/view/index.js +1 -0
- package/out/interface/controller/state/control/i-gantt.state.d.ts +13 -0
- package/out/interface/controller/state/control/i-gantt.state.d.ts.map +1 -0
- package/out/interface/controller/state/control/i-gantt.state.js +1 -0
- package/out/interface/controller/state/control/index.d.ts +1 -0
- package/out/interface/controller/state/control/index.d.ts.map +1 -1
- package/out/interface/controller/state/control/index.js +1 -0
- package/out/interface/controller/state/view/i-gantt-view.state.d.ts +13 -0
- package/out/interface/controller/state/view/i-gantt-view.state.d.ts.map +1 -0
- package/out/interface/controller/state/view/i-gantt-view.state.js +1 -0
- package/out/interface/controller/state/view/index.d.ts +1 -0
- package/out/interface/controller/state/view/index.d.ts.map +1 -1
- package/out/interface/controller/state/view/index.js +1 -0
- package/out/interface/index.d.ts +1 -1
- package/out/interface/index.js +1 -1
- package/out/interface/provider/{i-ui-login-node.provider.d.ts → i-ui-logic-node.provider.d.ts} +2 -2
- package/out/interface/provider/{i-ui-login-node.provider.d.ts.map → i-ui-logic-node.provider.d.ts.map} +1 -1
- package/out/interface/provider/i-ui-logic-node.provider.js +1 -0
- package/out/interface/provider/index.d.ts +1 -1
- package/out/interface/service/service/i-app-de.service.d.ts +66 -0
- package/out/interface/service/service/i-app-de.service.d.ts.map +1 -1
- package/out/interface/service/service/i-auth.service.d.ts +8 -0
- package/out/interface/service/service/i-auth.service.d.ts.map +1 -1
- package/out/interface/{ui-login → ui-logic}/i-ui-logic-context.d.ts.map +1 -1
- package/out/interface/ui-logic/i-ui-logic-context.js +1 -0
- package/out/interface/ui-logic/index.d.ts.map +1 -0
- package/out/interface/ui-logic/index.js +1 -0
- package/out/service/service/auth/v7-auth.service.d.ts +1 -0
- package/out/service/service/auth/v7-auth.service.d.ts.map +1 -1
- package/out/service/service/auth/v7-auth.service.js +23 -3
- package/out/service/service/entity/de.service.d.ts +6 -0
- package/out/service/service/entity/de.service.d.ts.map +1 -1
- package/out/service/service/entity/de.service.js +18 -0
- package/out/service/service/entity/method/fetch.js +2 -2
- package/out/service/utils/dynamic-code-list/dynamic-code-list.d.ts.map +1 -1
- package/out/service/utils/dynamic-code-list/dynamic-code-list.js +2 -1
- package/out/service/utils/index.d.ts +1 -0
- package/out/service/utils/index.d.ts.map +1 -1
- package/out/service/utils/index.js +1 -0
- package/out/service/utils/util/util.d.ts +14 -0
- package/out/service/utils/util/util.d.ts.map +1 -0
- package/out/service/utils/util/util.js +16 -0
- package/out/service/vo/tree-node-data/tree-data-set-node-data.d.ts.map +1 -1
- package/out/service/vo/tree-node-data/tree-data-set-node-data.js +2 -2
- package/package.json +5 -5
- package/src/controller/control/gantt/gantt.controller.ts +27 -0
- package/src/controller/control/gantt/gantt.service.ts +13 -0
- package/src/controller/control/gantt/index.ts +2 -0
- package/src/controller/control/index.ts +1 -0
- package/src/controller/control/report-panel/generator/user-generator.ts +1 -1
- package/src/interface/controller/controller/control/i-gantt.controller.ts +22 -0
- package/src/interface/controller/controller/control/index.ts +1 -0
- package/src/interface/controller/event/control/i-gantt.event.ts +12 -0
- package/src/interface/controller/event/control/index.ts +1 -0
- package/src/interface/controller/event/view/i-gantt-view.event.ts +12 -0
- package/src/interface/controller/event/view/index.ts +1 -0
- package/src/interface/controller/state/control/i-gantt.state.ts +12 -0
- package/src/interface/controller/state/control/index.ts +1 -0
- package/src/interface/controller/state/view/i-gantt-view.state.ts +12 -0
- package/src/interface/controller/state/view/index.ts +1 -0
- package/src/interface/index.ts +1 -1
- package/src/interface/provider/{i-ui-login-node.provider.ts → i-ui-logic-node.provider.ts} +1 -1
- package/src/interface/provider/index.ts +1 -1
- package/src/interface/service/service/i-app-de.service.ts +96 -0
- package/src/interface/service/service/i-auth.service.ts +9 -0
- package/src/service/service/auth/v7-auth.service.ts +30 -3
- package/src/service/service/entity/de.service.ts +48 -0
- package/src/service/service/entity/method/fetch.ts +2 -2
- package/src/service/utils/dynamic-code-list/dynamic-code-list.ts +2 -1
- package/src/service/utils/index.ts +1 -0
- package/src/service/utils/util/util.ts +16 -0
- package/src/service/vo/tree-node-data/tree-data-set-node-data.ts +2 -2
- package/out/interface/ui-login/index.d.ts.map +0 -1
- /package/out/interface/{provider/i-ui-login-node.provider.js → controller/controller/control/i-gantt.controller.js} +0 -0
- /package/out/interface/{ui-login/i-ui-logic-context.js → controller/event/control/i-gantt.event.js} +0 -0
- /package/out/interface/{ui-login/index.js → controller/event/view/i-gantt-view.event.js} +0 -0
- /package/out/interface/{ui-login → ui-logic}/i-ui-logic-context.d.ts +0 -0
- /package/out/interface/{ui-login → ui-logic}/index.d.ts +0 -0
- /package/src/interface/{ui-login → ui-logic}/i-ui-logic-context.ts +0 -0
- /package/src/interface/{ui-login → ui-logic}/index.ts +0 -0
package/dist/index.system.min.js
CHANGED
|
@@ -1,4 +1,4 @@
|
|
|
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,C,na,Bt,oa,It,Ot,L,_t,ua,ca,la,da,le,ha,de,pa,k,he,Mt,xt,Vt,kt,pe,Wt,fe,fa,ma,Y,Ea,ga,Ut,wa,mt,Ca,Da,va,Ia,Aa,ya,Fa,Pa,ba,x,V,me,Et,G,zt,Ee,ge,we,Sa,Na,Ce,Ra,D,De,B,I,rt,gt,ve,Ie,wt,N,Ae,ye;return{setters:[function(g){m=g.RuntimeModelError,f=g.RuntimeError,C=g.ModelError,na=g.downloadFileFromBlob,Bt=g.IBizContext,oa=g.clone,It=g.CoreConst,Ot=g.DataTypes,L=g.HttpResponse,_t=g.HttpError,ua=g.Net,ca=g.getToken,la=g.NOOP,da=g.IBizParams,le=g.NoticeError,ha=g.isElementSame,de=g.findRecursiveChild,pa=g.StringUtil,k=g.recursiveIterate,he=g.debounceAndAsyncMerge,Mt=g.mergeDefaultInLeft,xt=g.isOverlap,Vt=g.BitMask,kt=g.mergeInLeft,pe=g.awaitTimeout,Wt=g.plus,fe=g.toNumberOrNil},function(g){fa=g.isEmpty,ma=g.isString,Y=g.isArray,Ea=g.isObject,ga=g.isNil,Ut=g.debounce,wa=g.camelCase,mt=g.eq,Ca=g.gt,Da=g.gte,va=g.findIndex,Ia=g.lt,Aa=g.lte,ya=g.upperFirst,Fa=g.snakeCase,Pa=g.kebabCase,ba=g.isFunction},function(g){x=g.notNilEmpty,V=g.isNilOrEmpty,me=g.AsyncSeriesHook,Et=g.QXEvent,G=g.createUUID,zt=g.isArray,Ee=g.setCookie,ge=g.clearCookie,we=g.ascSort,Sa=g.descSort,Na=g.clearAll,Ce=g.isNumber},function(g){Ra=g.default},function(g){D=g.isNil,De=g.mergeRight,B=g.isEmpty,I=g.clone,rt=g.equals,gt=g.where,ve=g.mergeLeft,Ie=g.isNotNil,wt=g.mergeDeepRight},function(g){N=g.default},function(g){Ae=g.default},function(g){ye=g.default}],execute:function(){d({asyncImportData:No,calcContentAlignStyle:er,calcDeCodeNameById:O,calcDynaClass:Ct,calcGridLayoutPos:ar,calcLayoutHeightWidth:jt,calcMainStateOPPrivsStrs:Wa,calcNavParams:Gt,calcResPath:te,compare:yt,compareNumber:Te,contains:Ft,convertNavData:F,convertNavDataByArray:xa,convertObjectToNavParams:Fe,execDELogic:se,execDELogicAction:Us,execDELogicById:Ws,execFieldLogics:Lt,execUILogic:re,exportData:$s,filterFieldLogics:za,filterValueRules:Me,findChildFormDetails:ja,findDELogic:Se,findEditItem:Ga,findFieldById:Dt,findModelChild:lt,formatMultiData:Pe,generateEditorRules:Ye,generateRules:Xe,getAllPanelField:$a,getAppCounterProvider:rs,getAppViewRef:Zi,getAsyncActionProvider:Zr,getChildNodeRSs:Le,getControl:Ji,getControlPanel:Va,getControlProvider:dt,getControlsByView:Ha,getDEMethodProvider:Ts,getDeACMode:sr,getDefaultValue:qe,getEditorProvider:$t,getFormDetailProvider:ls,getGridColumnProvider:Ue,getMatchResPath:_s,getOriginData:Qs,getPFPlugin:tr,getPanelItemProvider:fs,getPlatformProvider:Ns,getPlatformType:Fs,getPortletProvider:gs,getRootNode:Ne,getTreeNode:Re,getUIActionById:Kt,getUIActionProvider:Ds,getUILogicNodeProvider:Is,getViewEngines:Ya,getViewLogics:Xa,getViewProvider:Qr,getWFContext:ts,getWFSubmitViewId:Pr,handleAllSettled:nt,hasDeCodeName:Ua,hasSubRoute:Ke,importData:Ro,install:Cc,installCommand:Ys,isDataContainer:qa,isFormDataContainer:Ka,isValueChange:He,matchMainState:ka,openRedirectView:Ja,parseUserParams:be,presetAppCounterProvider:Bs,presetDEMethodProvider:js,presetUIActionProvider:ei,registerAppCounterProvider:is,registerAsyncActionProvider:$r,registerControlProvider:zr,registerDEMethodProvider:Zt,registerEditorProvider:Gr,registerFormDetailProvider:jr,registerGridColumnProvider:Kr,registerPanelItemProvider:Hr,registerPlatformProvider:bs,registerPortletProvider:Xr,registerUIActionProvider:bt,registerUILogicNodeProvider:Yr,registerViewProvider:qr,strContain:Ht,testCond:J,toLocalOpenWFRedirectView:Za,verifyDeRules:Be,verifyFormGroupLogic:Xt,verifyPanelGroupLogic:Yt});var g=typeof globalThis<"u"?globalThis:typeof window<"u"?window:typeof global<"u"?global:typeof self<"u"?self:{};function At(t){return t&&t.__esModule&&Object.prototype.hasOwnProperty.call(t,"default")?t.default:t}var La={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)}}})})(La);var Ci=La.exports,Di=At(Ci),Ta={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)}}})})(Ta);var vi=Ta.exports,Ii=At(vi),Ba={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)}}})})(Ba);var Ai=Ba.exports,yi=At(Ai),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),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)}}})})(Oa);var Fi=Oa.exports,Pi=At(Fi),_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,w=n(this),y=(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 w.diff(y,"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 bi=_a.exports,Si=At(bi),Ni=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},this.form={mdCtrlConfirmBeforeRemove:!0}}},Ri=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)}}),$=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}};$.helperNames=["lookup","log","and","camelCase","concat","eq","gt","get","lowerCase","lt","lte","neq","not","or","pascalCase","pluralize","snakeCase","spinalCase","upperCase"];var M=class{constructor(t,e){t.registerHelper(e,this.onExecute)}},Li=class extends M{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 $.handleJudgmentExecute(this,s,e)}},Ti=class extends M{constructor(t){super(t,"camelCase")}onExecute(t){return t?wa(t):""}},Bi=class extends M{constructor(t){super(t,"concat")}onExecute(...t){return t.pop(),t.join("")}},Oi=class extends M{constructor(t){super(t,"eq")}onExecute(t,e,a){const s=mt(t,e);return $.handleJudgmentExecute(this,s,a)}},_i=class extends M{constructor(t){super(t,"gt")}onExecute(t,e,a){const s=Ca(t,e);return $.handleJudgmentExecute(this,s,a)}},Mi=class extends M{constructor(t){super(t,"gte")}onExecute(t,e,a){const s=Da(t,e);return $.handleJudgmentExecute(this,s,a)}},xi=class extends M{constructor(t){super(t,"eqPropertyValue")}onExecute(t,e,a,s){let i=!1;return Y(t)?i=!mt(va(t,r=>mt(r[e],a)),-1):i=t.hasOwnProperty(e)&&(i=mt(t[e],a)),$.handleJudgmentExecute(this,i,s)}},Vi=class extends M{constructor(t){super(t,"jsonParse")}onExecute(t){return JSON.parse(t)}},ki=class extends M{constructor(t){super(t,"jsonStringify")}onExecute(t,e){return JSON.stringify(t,null,typeof e=="number"?e:void 0)}},Wi=class extends M{constructor(t){super(t,"lowerCase")}onExecute(t){return t?t.toLowerCase():""}},Ui=class extends M{constructor(t){super(t,"lt")}onExecute(t,e,a){const s=Ia(t,e);return $.handleJudgmentExecute(this,s,a)}},zi=class extends M{constructor(t){super(t,"lte")}onExecute(t,e,a){const s=Aa(t,e);return $.handleJudgmentExecute(this,s,a)}},Gi=class extends M{constructor(t){super(t,"neq")}onExecute(t,e,a){const s=!mt(t,e);return $.handleJudgmentExecute(this,s,a)}},ji=class extends M{constructor(t){super(t,"not")}onExecute(t,e){const a=Handlebars.Utils.isEmpty(t);return $.handleJudgmentExecute(this,a,e)}},Ki=class extends M{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||""}},Hi=class extends M{constructor(t){super(t,"pascalCase")}onExecute(t){return t?ya(t):""}},Xi=class extends M{constructor(t){super(t,"snakeCase")}onExecute(t){return t?Fa(t):""}},Yi=class extends M{constructor(t){super(t,"spinalCase")}onExecute(t){return t?Pa(t):""}},qi=class extends M{constructor(t){super(t,"upperCase")}onExecute(t){return t?t.toUpperCase():""}};function Qi(t){new Li(t),new Ti(t),new Bi(t),new Oi(t),new _i(t),new Mi(t),new Vi(t),new ki(t),new Wi(t),new Ui(t),new zi(t),new Gi(t),new ji(t),new Ki(t),new Hi(t),new Xi(t),new Yi(t),new qi(t),new xi(t)}var $i=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,Qi(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 F(t,...e){if(!t||fa(t))return{};const a=Array.isArray(t)?t:Fe(t);return xa(a,...e)}function Ma(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 xa(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}=Ma(e,o.slice(2,-1).toLowerCase());u&&(n=n.replace(o,"".concat(c)))}),s[i.key.toLowerCase()]=n}else{const{find:n,value:o}=Ma(e,i.value.toLowerCase());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 Gt(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 w=F(r,c,u,o),y=F(n,c,u,o);return Object.assign(h,w),Object.assign(p,y),{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 Ji(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 Zi(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 tr(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 Va(t){let e;if(t.controlRenders){const a=t.controlRenders.find(s=>s.renderType==="LAYOUTPANEL"&&!!s.layoutPanel);e=a?.layoutPanel}return e}function jt(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 er(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 ar(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 Ct(t,e){const a=[],s=T.execScriptFn({data:e},t,{singleRowReturn:!0,isAsync:!1});return ma(s)?a.push(s):Y(s)?a.push(...s):Ea(s)&&Object.keys(s).forEach(i=>{s[i]&&a.push(i)}),a}function ka(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 Wa(t,e){const a=ibiz.hub.getApp(e.appId).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 sr(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 Dt(t,e){var a;return(a=t.appDEFields)==null?void 0:a.find(s=>s.id===e)}async function Kt(t,e){return ibiz.hub.getApp(e).getUIAction(t)}function Ne(t){return t.detreeNodes.find(e=>e.rootNode)}function Re(t,e){return t.detreeNodes.find(a=>a.id===e)}function ir(t,e){return t===3||(e?t===1:t===2)}function Le(t,e){const a=e.parentId||Ne(t).id;return t.detreeNodeRSs.filter(s=>s.parentDETreeNodeId===a&&ir(s.searchMode,e.hasQuery))}function Ga(t,e){var a;return(a=t.degridEditItems)==null?void 0:a.find(s=>s.codeName===e)}function ja(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 Ka(t){return t.detailType==="MDCTRL"}function Ha(t){const{viewLayoutPanel:e}=t,a=t.controls||[];return e&&a.push(...e.controls||[]),a}function Xa(t){const{viewLayoutPanel:e}=t,a=t.appViewLogics||[];return e&&a.push(...e.appViewLogics||[]),a}function Ya(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 qa(t){return t.itemType==="CONTAINER"&&["CONTAINER_MULTIDATA","CONTAINER_SINGLEDATA"].includes(t.predefinedType)}var rr=["panelItems","panelTabPages","rootPanelItems"];function Qa(t){let e=[];for(const s of rr)if(t[s]){e=t[s];break}const a=[];return e.length&&(a.push(...e.filter(s=>s.itemType==="FIELD")),e.forEach(s=>{qa(s)||a.push(...Qa(s))})),a}function $a(t){return Qa(t)}async function Ja(t,e,a={},s={}){return nr(t,e,a,s)}async function Za(t,e,a={}){const s=e.lastIndexOf("?"),i=decodeURIComponent(e.substring(s+1,e.length)),r=Ra.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")),w=p.substring(p.lastIndexOf("v"));r.wf=E,r.wfVersion=w}r.srfprocessinstanceid&&(t.srfprocessinstanceid=r.srfprocessinstanceid,delete r.srfprocessinstanceid),await ibiz.commands.execute(Z.TAG,l.id,t,r,a)}async function nr(t,e,a={},s={}){var i;const r=t.appViewNavContexts||[],n=F(r,a,e);e=Object.assign(e.clone(),n);const o=t.appViewNavParams||[],u=F(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,w=await ibiz.hub.getApp(t.appId).deService.getService(c);ibiz.loading.showRedirect();try{const Q=await w.exec(p||"get",e,a);if(Q.ok){h=Q.data;let S=h.linkurl;if(S)return e.srfprocessinstanceid&&(S+=";srfprocessinstanceid=".concat(e.srfprocessinstanceid)),ibiz.env.dev&&S.indexOf("appredirectview?")!==-1&&(S=S.slice(S.indexOf("appredirectview?"))),S.startsWith("http://")||S.startsWith("https://")?new Promise(et=>{const di=window.open(S,"_blank");di&&(di.callback=()=>{et({ok:!0,data:[]})})}):S.startsWith("appredirectview?")?(await Za(e,S,s),{ok:!0,data:[]}):{ok:!1,data:[]}}}finally{ibiz.loading.hideRedirect()}const y=await ibiz.hub.getAppDataEntity(c,t.appId),v=await or(y,t,a,h),P=v.split(":"),b=P.length===2?v:P.slice(0,2).join(":"),A="".concat(y.name.toUpperCase(),":").concat(v),R=t.redirectAppViewRefs,z=R?.find(Q=>{const S=Q.name||Q.id;return S===A||S===v||S===b});if(z){const Q=z.refAppViewId;if(Q){const S=await ibiz.commands.execute(Z.TAG,Q,e,a,{...s,data:[h]});if(S)return S}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:S,realTitle:et})=>({viewId:Q,tag:S,title:et}))),new m(t,"\u672A\u627E\u5230\u91CD\u5B9A\u5411\u6807\u8BC6[".concat(v,"]\u6216[").concat(A,"]\u6216\u5DE5\u4F5C\u6D41[").concat(b,"]\u5BF9\u5E94\u89C6\u56FE"));return{ok:!0,data:[]}}async function or(t,e,a,s){let i="";const r=e.typeAppDEFieldId;if(r){const{codeName:c}=Dt(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}=Dt(t,t.indexTypeAppDEFieldId);u=s[c.toLowerCase()]}if(V(u)&&t.formTypeAppDEFieldId){const{codeName:c}=Dt(t,t.formTypeAppDEFieldId);u=s[c.toLowerCase()]}return x(u)?i="".concat(n,":").concat(u.toString().toUpperCase()):i="".concat(n),i}function J(t,e,a){if(Object.is(e,"IN"))return Ft(t,a);if(Object.is(e,"NOTIN"))return!Ft(t,a);switch(e){case"EQ":return"".concat(t)==="".concat(a);case"NOTEQ":return"".concat(t)!=="".concat(a);case"LT":return yt(t,a)<0;case"LTANDEQ":return yt(t,a)<=0;case"GT":return yt(t,a)>0;case"GTANDEQ":return yt(t,a)>=0;case"ISNULL":return V(t);case"ISNOTNULL":return x(t);case"TESTNULL":return D(t);case"IN":return Ft(t,a);case"NOTIN":return!Ft(t,a);case"LIKE":return Ht(t,a);case"LEFTLIKE":return Ht(t,a,"start");case"RIGHTLIKE":return Ht(t,a,"end");default:throw new f("\u503C\u64CD\u4F5C\uFF1A".concat(e,"\uFF0C\u6682\u672A\u652F\u6301"))}}function yt(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 Ft(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 Ht(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 ur={singleRowReturn:!1,isAsync:!0},cr=d("ScriptFunction",class{constructor(t,e,a=ur){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?De(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){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"appSession":e.appSession=ibiz.hub.controller.session;break}const a=e.view;if(a)switch(t){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}}exec(t){const e=this.convertArgs(t);return this.scriptFn(...e)}}),T=d("ScriptFactory",class{static createScriptFn(t,e,a){return new cr(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 lr(t){return t.condType==="GROUP"}function dr(t){return t.condType==="SIMPLE"}function hr(t){return t.condType==="VALUERANGE2"}function pr(t){return t.condType==="REGEX"}function fr(t){return t.condType==="STRINGLENGTH"}function mr(t){return t.condType==="SYSVALUERULE"}function Be(t,e,a){const s={isPast:!0,infoMessage:a.ruleInfo};if(lr(a)){const i=a.conds;i&&i.length>0&&(s.isPast=Er(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(dr(a))s.isPast=!gr(e[t],a.condOp,a.paramValue,a.ruleInfo,a.paramType,e,a.keyCond);else if(hr(a))s.isPast=!Cr(e[t],a.minValue,a.includeMinValue,a.maxValue,a.includeMaxValue,a.ruleInfo,a.keyCond);else if(pr(a))s.isPast=!Oe(e[t],a.regExCode,a.ruleInfo,a.keyCond);else if(fr(a))s.isPast=!wr(e[t],a.minValue,a.includeMinValue,a.maxValue,a.includeMaxValue,a.ruleInfo,a.keyCond);else if(mr(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}=Dr(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 Er(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 gr(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),(D(s)||B(s))&&(s="\u5185\u5BB9\u5FC5\u987B\u7B26\u5408\u503C\u89C4\u5219");const o=J(t,e,a);if(!o&&n)throw new f(s);return!o}function wr(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 Cr(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 Dr(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=T.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 vr(t){return t.logicType==="GROUP"}function Ir(t){return t.logicType==="SINGLE"}function Xt(t,e){if(vr(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(Ir(e))return J(t[e.defdname.toLowerCase()],e.condOP,e.value);throw new C(e,"\u672A\u652F\u6301\u7684\u903B\u8F91\u7C7B\u578B".concat(e.logicType))}function Ar(t){return t.logicType==="GROUP"}function yr(t){return t.logicType==="SINGLE"}function Yt(t,e){if(Ar(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=>!Yt(t,r))===void 0:e.groupOP==="OR"&&(s=e.panelItemLogics.find(r=>Yt(t,r))!==void 0),e.notMode?!s:s}if(yr(e))return J(t[e.dstModelField.toLowerCase()],e.condOp,e.value);throw new C(e,"\u672A\u652F\u6301\u7684\u903B\u8F91\u7C7B\u578B".concat(e.logicType))}var Fr=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=I(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 ts(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 br=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))(br||{})),Sr=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))(Sr||{})),Nr=d("ViewMode",(t=>(t.ROUTE="ROUTE",t.MODAL="MODAL",t.DRAWER="DRAWER",t.EMBED="EMBED",t.POPOVER="POPOVER",t))(Nr||{})),Rr=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))(Rr||{})),Lr=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))(Lr||{})),Tr=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))(Tr||{})),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||{})),_e=d("StudioViewEvents",class{});_e.onViewMounted="onMounted",_e.onViewDestroyed="onDestroyed";var qt=d("StudioPanelEvents",class{});qt.onClick="onClick",qt.onChange="onChange",qt.onEnter="onEnter",qt.onLeave="onLeave";var U=d("StudioControlEvents",class{});U.onBeforeLoad="onBeforeLoad",U.onLoadSuccess="onLoadSuccess",U.onLoadError="onLoadError",U.onBeforeLoadDraft="onBeforeLoadDraft",U.onLoadDraftSuccess="onLoadDraftSuccess",U.onLoadDraftError="onLoadDraftError",U.onBeforeSave="onBeforeSave",U.onSaveSuccess="onSaveSuccess",U.onSaveError="onSaveError",U.onBeforeRemove="onBeforeRemove",U.onRemoveSuccess="onRemoveSuccess",U.onRemoveError="onRemoveError",U.CLICK="onClick";var Or=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 _r=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")}}),Mr=d("ThemeUtil",class{constructor(){this.html=document.getElementsByTagName("html")[0]}async loadTheme(t){const e=I(t.themeParams||{}),a=e["theme-package-path"];delete e.appId,delete e["theme-package-path"],await ibiz.plugin.loadPlugin({runtimeObject:!0,rtobjectName:t.name,rtobjectRepo:a}),this.setThemeParams(t,e),this.setTheme(t.themeTag)}setThemeParams(t,e){if(document.getElementById(t.themeTag))return;let s=":root.".concat(t.themeTag,"{");for(const r in e)if(Object.prototype.hasOwnProperty.call(e,r)){const n=e[r];s+="".concat(r,": ").concat(n).concat(n.endsWith(";")?"":";")}s+="}";const i=document.createElement("style");i.id=t.themeTag,i.type="text/css",i.innerHTML=s,document.head.appendChild(i)}setTheme(t){const e=this.getTheme();this.html.classList.remove(e),this.html.setAttribute("theme",t),this.html.classList.add(t)}getTheme(){return this.html.getAttribute("theme")}}),xr=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 Vr=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}},es=class{constructor(){this.strCondOp=null}getCondOp(){return this.strCondOp}setCondOp(t){this.strCondOp=t}},xe=class extends es{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}},as=class hi extends es{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 hi;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}},kr=class extends as{},Wr=class extends xe{},Ve=class sa extends Vr{test(e,a){return this.testCond(this.getPSModelGroupCondBase(),e,a)}testCond(e,a,s){if(e instanceof as){const i=e.getChildPSModelCondBases();if(i==null||B(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){B(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&&!B(n)?(B(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 Wr}createPSModelGroupCond(){return new kr}};Ve.PARAMTYPE_DATACONTEXT="DATACONTEXT",Ve.PARAMTYPE_WEBCONTEXT="WEBCONTEXT";var Ur=d("PSDEDQCondEngine",Ve);async function q(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 ss=d("APP_COUNTER_PROVIDER_PREFIX","APPCOUNTER");function is(t,e){ibiz.register.register("".concat(ss,"_").concat(t),e)}function ke(t){return ibiz.register.get("".concat(ss,"_").concat(t))}async function rs(t){let e;const{codeName:a,counterType:s,sysPFPluginId:i,appId:r}=t;if(i){const n=await q(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 ns=d("CONTROL_PROVIDER_PREFIX","CONTROL");function zr(t,e){ibiz.register.register("".concat(ns,"_").concat(t),e)}function We(t){return ibiz.register.get("".concat(ns,"_").concat(t))}async function dt(t){let e;const{controlType:a,controlStyle:s,sysPFPluginId:i,appId:r}=t;if(i){const n=await q(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 os=d("EDITOR_PROVIDER_PREFIX","EDITOR");function Gr(t,e){ibiz.register.register("".concat(os,"_").concat(t),e)}function Qt(t){return ibiz.register.get("".concat(os,"_").concat(t))}async function $t(t){let e;const{editorType:a,editorStyle:s,predefinedType:i,sysPFPluginId:r,appId:n}=t;if(r){const o=await q(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 us=d("FORMDETAIL_PROVIDER_PREFIX","FORMDETAIL");function jr(t,e){ibiz.register.register("".concat(us,"_").concat(t),e)}function cs(t){return ibiz.register.get("".concat(us,"_").concat(t))}async function ls(t){let e;const{detailType:a,sysPFPluginId:s,appId:i}=t;if(s){const r=await q(s,i);if(r&&(e=cs(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=cs(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 ds=d("GRIDCOLUMN_PROVIDER_PREFIX","GRIDCOLUMN");function Kr(t,e){ibiz.register.register("".concat(ds,"_").concat(t),e)}function hs(t){return ibiz.register.get("".concat(ds,"_").concat(t))}async function Ue(t){let e;const{columnType:a,enableRowEdit:s,sysPFPluginId:i,appId:r}=t;if(i){const o=await q(i,r);if(o&&(e=hs(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=hs(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 ps=d("PANELITEM_PROVIDER_PREFIX","PANELITEM");function Hr(t,e){ibiz.register.register("".concat(ps,"_").concat(t.toUpperCase()),e)}function Pt(t){return ibiz.register.get("".concat(ps,"_").concat(t.toUpperCase()))}async function fs(t){var e;let a;const{itemType:s,sysPFPluginId:i,appId:r}=t;if(i){const n=await q(i,r);if(n&&(a=Pt(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=Pt(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=Pt(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=Pt(o),a)return a}}if(a=Pt(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 ms=d("PORTLET_PROVIDER_PREFIX","PORTLET");function Xr(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{portletType:a,sysPFPluginId:s,appId:i}=t;if(s){const r=await q(s,i);if(r&&(e=Es(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=Es(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 ws=d("UIACTION_PROVIDER_PREFIX","UIACTION");function bt(t,e){ibiz.register.register("".concat(ws,"_").concat(t),e)}function Cs(t){return ibiz.register.get("".concat(ws,"_").concat(t))}async function Ds(t){let e;const{uiactionMode:a,sysPFPluginId:s,appId:i}=t;if(s){const r=await q(s,i);if(r&&(e=Cs(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=Cs(a),e)return e;throw new f("\u627E\u4E0D\u754C\u9762\u884C\u4E3A\u6A21\u5F0F".concat(a,"\u5BF9\u5E94\u7684\u9002\u914D\u5668"))}var vs=d("UILOGINNODE_PROVIDER_PREFIX","UI_LOGIN_NODE");function Yr(t,e){ibiz.register.register("".concat(vs,"_").concat(t),e)}async function Is(t){let e;const{sysPFPluginId:a,appId:s}=t,i=await q(a,s);if(i){if(e=ibiz.register.get("".concat(vs,"_").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 As=d("VIEW_PROVIDER_PREFIX","VIEW");function qr(t,e){ibiz.register.register("".concat(As,"_").concat(t),e)}function Jt(t){return ibiz.register.get("".concat(As,"_").concat(t))}async function Qr(t){let e;const{viewType:a,viewStyle:s,sysPFPluginId:i,appId:r}=t;if(i){const n=await q(i,r);if(n&&(e=Jt(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=Jt(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=Jt(a)),e||(e=Jt("DEFAULT")),e}var ys=d("ASYNC_ACTION_PROVIDER_PREFIX","ASYNC_ACTION");function $r(t,e){ibiz.register.register("".concat(ys,"_").concat(t),e)}function Jr(t){return ibiz.register.get("".concat(ys,"_").concat(t))}function Zr(t){const e=Jr(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 tn=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",baseURL:""});if(a.status!==200)throw new f("\u4E0B\u8F7D\u6587\u4EF6\u5931\u8D25");if(a.data){const s=e;return na(a.data,s),Promise.resolve(!0)}else throw new f("\u6587\u4EF6\u6D41\u6570\u636E\u4E0D\u5B58\u5728")}}),en=d("BrowserPlatformProvider",class extends tn{});function an(){const t=new en;bs("Browser",()=>t)}var St=window.navigator.userAgent.toLowerCase();function sn(){return/Android|Adr/i.test(St)}function rn(){return/iPhone|iPod|iPad/i.test(St)}function nn(){return/MicroMessenger/i.test(St)}function on(){return/DingTalk/i.test(St)}function un(){return/miniProgram/i.test(St)||window.__wxjs_environment==="miniprogram"}function Fs(){return sn()?"Android":rn()?"IOS":nn()?"WeChat":on()?"DingTalk":un()?"WeChatMiniProgram":"Browser"}var Ps=d("PLATFORM_PROVIDER_PREFIX","PLATFORM");function bs(t,e){ibiz.register.register("".concat(Ps,"_").concat(t),e)}function Ss(t){return ibiz.register.get("".concat(Ps,"_").concat(t))}function Ns(){const t=Fs(),e=Ss(t);return e||Ss("Browser")}var Rs=d("DEMETHOD_PROVIDER_PREFIX","DEMETHOD");function Zt(t,e){ibiz.register.register("".concat(Rs,"_").concat(t),e)}function Ls(t){return ibiz.register.get("".concat(Rs,"_").concat(t))}async function Ts(t){let e;const{methodType:a,sysPFPluginId:s,appId:i}=t;if(s){const r=await q(s,i);if(r&&(e=Ls(r)),!e)ibiz.log.error("\u627E\u4E0D\u5230\u5B9E\u4F53\u884C\u4E3A\u63D2\u4EF6".concat(r,"\u5BF9\u5E94\u7684\u9002\u914D\u5668"));else return e}if(e=Ls(a),e)return e;throw new f("\u627E\u4E0D\u5B9E\u4F53\u884C\u4E3A\u65B9\u6CD5\u7C7B\u578B\u4E3A".concat(a,"\u7684\u9002\u914D\u5668"))}var cn=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=I(t)),e&&(this.params=I(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()}}),ln=d("AppDECounter",class extends cn{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}}),dn=d("AppDECounterProvider",class{createCounter(t){return new ln(t)}});function Bs(){is("DEDR",()=>new dn)}var hn=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 Ur;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 C(a,"\u6682\u672A\u652F\u6301\u7684\u67E5\u8BE2\u6761\u4EF6\u7C7B\u578B: ".concat(a.condType));e.push(s)}),e}});hn.map=new WeakMap;var pn=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 C(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;if(e.id=l,e.value=l,e.text=s?t[s]:t.srfmajortext,(i||r||n||o)&&(e.sysImage={appId:this.codeList.appId},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])try{e.data=T.execSingleLine(t[c])}catch{ibiz.log.error("\u52A8\u6001\u4EE3\u7801\u8868\u6570\u636E\u5C5E\u6027\u8FD4\u56DE\u503C\u4E0D\u4E3A\u5BF9\u8C61\u683C\u5F0F\u7684\u5B57\u7B26\u4E32\uFF0C\u65E0\u6CD5\u8F6C\u6362\uFF01")}return 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=T.execSingleLine(u),E=F(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||D(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 Os(t,e){if(e!=null){const{srfkey:a}=e;if(!D(a)&&!B(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(!D(a)&&!B(a))return!0;throw new f("\u6267\u884C\u300C".concat(t,"\u300D\u4E0D\u5B58\u5728\u300Csrfsessionid\u300D\u65E0\u6CD5\u5904\u7406"))}var fn=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,I(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),(D(e.srfkey)||B(e.srfkey))&&(e.srfkey=G()),e.srftempdate=new Date().getTime(),this.getCacheByTag(t).set(e.srfkey,I(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),I(s)}catch(a){return ibiz.log.error(a),null}}update(t,e){try{ot("update",t),Os("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),I(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];(D(i.srfkey)||B(i.srfkey))&&(i.srfkey=G()),i.srftempdate=new Date().getTime();const r=I(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];Os("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]=I(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)}}),mn=/\$\{(.*?)\}/g;function _s(t,e){const i=(e.requestPaths||[]).map(r=>{const n=r.match(mn),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 te(t,e){const a=_s(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 En=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(!D(e.page)&&!B(e.page)&&(this.page=e.page),!D(e.size)&&!B(e.size)&&(this.size=e.size),!D(e.query)&&!B(e.query)&&(this.query=e.query),!D(e.sort)&&!B(e.sort)){const a=e.sort.split(",");a.length>=1&&([this.sortField]=a),a.length>=2&&(this.sortMode=a[1].toUpperCase())}!D(e.srfparentkey)&&!B(e.srfparentkey)&&(this.srfparentkey=e.srfparentkey),!D(e.srfparentdename)&&!B(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]}}),gn=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?T.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 pn(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):[]}}),Nt=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||{}:{}}}),Ms=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 rs(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)}});Ms.counterMap=new Map;var wn=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"))}}}),Cn=class{constructor(t){this.model=t}exportData(t,e,a,s){const i=te(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"})}},Dn=d("DEService",class{constructor(t){this.model=t,this.methodMap=new Map,this.local=new fn,this.configCache=new Nt(t.appId,"PSAppDataEntity",t.codeName),this.wf=new wn(t),this.file=new Cn(t)}async 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),i=await Ts(s);if(!i)throw new C(s,"\u672A\u652F\u6301\u7684\u670D\u52A1\u65B9\u6CD5\u7C7B\u578B: ".concat(s.methodType));const r=i.create(this.model,s,{acMode:e});return this.methodMap.set(a,r),r}async exec(t,e,a,s){const i=await 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)}async execAc(t,e,a,s={}){const i=await 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 te(t,this.model)+s}}),vn=d("Srfuf",(t=>(t[t.CREATE=0]="CREATE",t[t.UPDATE=1]="UPDATE",t))(vn||{})),In=["srfkey","srfmajortext","srfmajorfield","srfkeyfield","tempsrfkey","srfuf","srfdeid","srfdecodename"],j=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:D(this.srfkey)?G():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;In.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=I(this.$origin),a=new ia(e,this.$dataUIMap);return Object.keys(this).forEach(s=>{a[s]=this[s]}),a}}),Rt=d("ControlService",class{constructor(t){this.dataUIMap=new Map,this.model=t}async init(t){this.app=ibiz.hub.getApp(this.model.appId),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 oa(t)}toUIData(t){return new j(t,this.dataUIMap)}}),at=d("MDControlService",class extends Rt{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&&(zt(e.data)?e.data=e.data.map(a=>this.toUIData(a)):e.data=this.toUIData(e.data)),e}}),An=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=ka(s,e);if(i){ibiz.log.debug("\u5339\u914D\u4E3B\u72B6\u6001",i);const r=Wa(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 An(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,a){try{const s=await ibiz.net.post("/v7/login",{loginname:t,password:e,rememberme:a}),{data:i}=s;if(i&&i.token){Ee(It.TOKEN,i.token,0,!0);const r=new Date().getTime()+(i.expirein||7199)*1e3;Ee(It.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"),ge(It.TOKEN),ge(It.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 D(e.data)&&(e.data=[]),e}async get(t){return await ibiz.net.get("/portal/asyncaction/".concat(t))}}),ee=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?I(a._data):I(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:D(this.srfkey)?G():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){let a={};return e instanceof ce?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||D(a))return e;if(Ot.isNumber(a)){const s=!D(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}}),xs=d("MethodDto",class pi{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)a[n]&&(s[n]=a[n].length===0?null:this.convertArrayToListMap(a[n]));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 C(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 ee(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 pi(a,!0,s);return this.dtoMap.set(e.codeName,i),i}});function ae(t){return t.actionType==="BUILTIN"||t.dataSetType==="DATAQUERY"}var bn=d("MethodInput",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 xs(t,this.isLocalMode,s))}}get isLocalMode(){return ae(this.method)}async handle(t,e){return this.dto?this.dto.get(t,e):e}}),Sn=d("MethodReturn",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 xs(t,this.isLocalMode,s))}}get isLocalMode(){return ae(this.method)}async handle(t,e){return this.dto?(await this.dto.sets(t,[e]))[0]:(V(e)&&(e={}),new ee(this.entity,e))}}),Vs=d("Method",class{constructor(t,e){this.entity=t,this.method=e,this.app=ibiz.hub.getApp(t.appId),this.input=new bn(t,e),this.result=new Sn(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 te(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 ee?a.clone():new ee(this.entity,a);return Y(t)?t.map(a=>e(a)):e(t)}}),Nn=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:Y(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)}},ks=class{},Rn=class extends ks{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 J(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 J(s[this.dstField],this.op,i[this.value])}case"CURTIME":throw new C(this.model,"\u6682\u672A\u652F\u6301\u6761\u4EF6\u503C\u7C7B\u578B\u4E3A[\u5F53\u524D\u65F6\u95F4]");default:return J(s[this.dstField],this.op,this.value)}}},Ln=class fi extends ks{constructor(e){super(),this.model=e;const a=e.conds||[];this.conds=a.map(s=>s.logicType==="SINGLE"?new Rn(s):new fi(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}},Tn=class{constructor(t){this.model=t,this.srcNode=null,this.dstNode=null,this.groupCond=null;const e=this.model.delogicLinkGroupCond;e&&(this.groupCond=new Ln(e))}async exec(t){const{defaultLink:e}=this.model;return e||!this.groupCond?!0:this.groupCond.test(t,t.context,t.data[0]||{})}},H=class{constructor(t){this.model=t;var e;this.links=(e=t.links||[])==null?void 0:e.map(a=>new Tn(a))}},Bn=class extends H{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)}},On=class extends H{async exec(t){}},_n=class extends H{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 C(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=I(ibiz.env);break;default:throw new C(e,"\u6682\u672A\u652F\u6301\u6E90\u503C\u7C7B\u578B".concat(r))}if(o&&n)try{Array.isArray(o)?o=o[Number(n)]:o=T.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 Mn=class extends H{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 C(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]=I(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])}},xn=class extends H{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)}},Vn=class extends H{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}},kn=class extends H{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)}},Wn=class extends H{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)}},Un=class extends H{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]=I(s)}},zn=class extends H{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])}},Gn=class extends H{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))}},jn=class extends H{async exec(t){const{errorCode:e,errorInfo:a}=this.model;throw new _t({response:{status:e,statusText:a}})}},Kn=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]=I(ibiz.env);else if(a.entityListParam)t.params[e]=[];else{if(a.entityPageParam)throw new C(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]=I(t.data||{});else{if(a.envParam)throw new C(a,"\u672A\u652F\u6301\u7684\u903B\u8F91\u53C2\u6570\u7C7B\u578B: \u7CFB\u7EDF\u73AF\u5883\u53D8\u91CF");if(a.fileListParam)throw new C(a,"\u672A\u652F\u6301\u7684\u903B\u8F91\u53C2\u6570\u7C7B\u578B: \u6587\u4EF6\u5BF9\u8C61\u5217\u8868\u53D8\u91CF");if(a.fileParam)throw new C(a,"\u672A\u652F\u6301\u7684\u903B\u8F91\u53C2\u6570\u7C7B\u578B: \u6587\u4EF6\u5BF9\u8C61\u53D8\u91CF");if(a.filterParam)throw new C(a,"\u672A\u652F\u6301\u7684\u903B\u8F91\u53C2\u6570\u7C7B\u578B: \u8FC7\u6EE4\u5668\u5BF9\u8C61\u53D8\u91CF");if(a.lastParam)throw new C(a,"\u672A\u652F\u6301\u7684\u903B\u8F91\u53C2\u6570\u7C7B\u578B: \u6700\u540E\u6570\u636E\u53D8\u91CF");if(a.originEntity)throw new C(a,"\u672A\u652F\u6301\u7684\u903B\u8F91\u53C2\u6570\u7C7B\u578B: \u539F\u59CB\u6570\u636E\u5BF9\u8C61");if(a.sessionParam)throw new C(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 C(a,"\u672A\u652F\u6301\u7684\u903B\u8F91\u53C2\u6570\u7C7B\u578B\u91CD\u65B0\u5EFA\u7ACB\u53D8\u91CF")}},Hn=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=T.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 On(s);break;case"END":r=new _n(s);break;case"DEACTION":r=new Bn(s);break;case"PREPAREPARAM":r=new Mn(s);break;case"DEDATASET":r=new xn(s);break;case"THROWEXCEPTION":r=new jn(s);break;case"BINDPARAM":r=new Vn(s);break;case"RESETPARAM":r=new kn(s);break;case"COPYPARAM":r=new Un(s);break;case"RENEWPARAM":r=new Wn(s);break;case"APPENDPARAM":r=new Gn(s);break;case"SORTPARAM":r=new zn(s);break;default:throw new C(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 Kn(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 Nn(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}}},ze=new Map;async function Xn(t,e,a){const s=await ibiz.hub.getAppDataEntity(e,a);return Se(t,s)}async function se(t,e,a={},s={}){return ze.has(t)||ze.set(t,new Hn(t)),ze.get(t).exec(e,a,s)}async function Ws(t,e,a,s,i){const r=await Xn(t,e,a.srfappid);if(!r)throw new f("".concat(e,"\u627E\u4E0D\u5230\u5B9E\u4F53\u903B\u8F91").concat(t));return se(r,a,s,i)}async function Us(t,e,a,s){const i=I(e),r=a&&I(a),n=s&&I(s);try{const o=await se(t,i,r,n);return new L(o)}catch(o){if(o instanceof _t)return new L(o,500);throw o}}async function zs(t,e,a,s,i){const r=za(t,e);r.length&&(await Promise.all(r.map(o=>se(o,a,s,i)))).forEach(o=>{Object.assign(s,o)})}async function Lt(t,e,a,s,i={}){if(s){if(Y(s)){await Promise.all(s.map(r=>zs(t,e,a,r,i)));return}return zs(t,e,a,s,i)}}var Yn=d("DEActionMethod",class extends Vs{get isLocalMode(){return ae(this.method)}async inputHandle(t,e){return Y(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 Us(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()];ga(n)&&(n=Y(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 Y(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 Y(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)}}),qn=class{create(t,e,a){return new Yn(t,e)}},Gs=d("FetchMethod",class extends Vs{get isLocalMode(){return ae(this.method)}async exec(t,e,a){const s=e&&Y(e)?e:a||{};if(this.isLocalMode){const n=await this.searchLocal(null,new En(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 C(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(!B(i)){const c=gt(i),l=gt(r),h=gt(n),p=gt(o);s=s.filter(E=>{if(B(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],w=l[E];if(h.test(w))return!0}return!1}))),!D(e.sortField)&&!B(e.sortField)&&(e.sortMode==="DESC"?i=Sa(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=>I(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)}}),Qn=d("AcFetchMethod",class extends Gs{mergeRequestPath(t,e){return"".concat(t,"/ac/").concat(e,"?srfac=ac")}}),$n=class{create(t,e,a){return a.acMode?new Qn(t,e):new Gs(t,e)}};function js(){const t=new qn;Zt("DEACTION",()=>t);const e=new $n;Zt("FETCH",()=>e),Zt("FETCHTEMP",()=>e)}var Ge=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}}),Jn=d("TreeCodeListNodeData",class extends Ge{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)}}),Ks=d("TreeDataSetNodeData",class extends Ge{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 T.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}}),Zn=d("TreeStaticNodeData",class extends Ge{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)}}),X=d("UIMapField",class{constructor(t,e,a={}){this.isOriginField=!1,this.isRequestNeed=!0,this.uiKey=t,this.dataKey=e,D(a.isOriginField)||(this.isOriginField=a.isOriginField),D(a.dataType)||(this.dataType=a.dataType)}convertVal(t){if(!this.dataType)return t;if(Ot.isNumber(this.dataType)){const e=!D(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}}),to=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 eo(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 ao=["REGION","REGION2","REGION3","REGION4"],so=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,ao.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 eo(h,p),p}})}});function io(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 ro=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 io(r,n),n}})}destroy(){this._evt.reset()}});function no(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 oo=d("ChartData",class{constructor(t,e,a,s){return this._seriesModelId=e?.id,this._catalog=a,this._groupName=s,this._uuid=G(),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 no(i,r),r}})}}),uo=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:G(),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()}}),co=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 Dn(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)}}),Hs=class mi{constructor(){ibiz.commands.register(mi.TAG,this.exec.bind(this))}async exec(e,a,s={},i={}){const r=I(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 Ja(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 C(n,"\u672A\u652F\u6301\u7684\u89C6\u56FE\u6253\u5F00\u6A21\u5F0F: POPUP");case"POPUPMODAL":return this.openModal(n,r,s);case"POPUPAPP":throw new C(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)}};Hs.TAG="ibiz.app-view.open";var Z=d("OpenAppViewCommand",Hs),Xs=class Ei{constructor(){ibiz.commands.register(Ei.TAG,this.exec.bind(this))}async exec(e,a,s={},i={}){const n=(await ibiz.hub.getAppAsync(a.srfappid)).getAppFunc(e);if(!n)throw new f("\u627E\u4E0D\u5230\u53EB".concat(e,"\u7684\u5E94\u7528\u529F\u80FD"));const{navigateContexts:o,navigateParams:u,appFuncType:c}=n,l=a.clone();Object.assign(l,F(o,s,a));const h=F(u,s,a);switch(c){case"APPVIEW":return this.openAppView(n,l,h,i);case"OPENHTMLPAGE":return this.openHtmlPage(n);case"PDTAPPFUNC":return this.openPdAppFunc(n,l,h);case"JAVASCRIPT":return this.executeJavaScript(n,l,h);case"CUSTOM":return this.custom(n,l,h);default:throw new C(n,"\u672A\u652F\u6301\u7684\u5E94\u7528\u529F\u80FD\u7C7B\u578B: ".concat(c))}}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")}};Xs.TAG="ibiz.app-func.exec";var je=d("AppFuncCommand",Xs);function Ys(){new je,new Z}var lo=d("Application",class{constructor(t){this.model=t,this.deName2DeCodeName=new Map,this.net=new ua({baseURL:"".concat(ibiz.env.baseUrl,"/").concat(t.appId)}),this.configCache=new Nt(t.appId,"PSSysApp",t.codeName),this.deService=new co(t),this.codeList=new gn(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 uo(ibiz.appData.mqtttopic,ca(),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)}}),ho=class{parse(t){return t}},po=class{constructor(){this.appMenu=new ho}},fo=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}},mo=class{constructor(){this.view=new fo}},Eo=d("FormNotifyState",(t=>(t.LOAD="LOAD",t.DRAFT="DRAFT",t.SAVE="SAVE",t))(Eo||{})),go=d("GridNotifyState",(t=>(t.LOAD="LOAD",t.DRAFT="DRAFT",t.SAVE="SAVE",t))(go||{})),wo=d("PanelNotifyState",(t=>(t.LOAD="LOAD",t.DRAFT="DRAFT",t.SAVE="SAVE",t))(wo||{})),qs=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 qs(la)}begin(){this.isLoading=!0,this.counter.increment()}end(){this.counter.decrement(()=>{this.isLoading=!1})}}),Do=d("CTXState",class{}),vo=d("CTX",class{constructor(t){this.parent=t,this.isDestroyed=!1,this.evt=new Et(3e3),this.controllersMap=new Map,this.state=new Do}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}}),Io=d("ActivityCounter",class extends qs{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.noKeyDisabled=!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 Kt(this.uiActionId,this.appId);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,(s==="SINGLEKEY"||s==="MULTIKEY")&&(this.noKeyDisabled=!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.noKeyDisabled&&!t.srfkey)):(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)))}}),Ao=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(),Na(this.anyEventFns)}}),yo=d("ControllerEvent",class{constructor(t){this.getBaseArgs=t,this.isDestroyed=!1,this.evt=new Ao}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 Ke(t){return window.location.hash.split("/").length>t*2+2}function He(t,e){return(D(t)||t==="")&&(D(e)||e==="")?!1:t!==e}function Qs(t){let e=Array.isArray(t)?t[0]:t;return e&&e instanceof j&&(e=e.getOrigin()),e}function Xe(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{T.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:w}=Be(u,p,o.groupCond);return E||h(new f(w||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(!D(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(!D(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}}),D(i)||e.push({validator:(n,o,u)=>{if(!D(o)&&Ce(o)&&o>i)u(new Error("\u503C\u5FC5\u987B\u5C0F\u4E8E\u7B49\u4E8E".concat(i)));else return!0}}),D(r)||e.push({validator:(n,o,u)=>{if(!D(o)&&Ce(o)&&o<r)u(new Error("\u503C\u5FC5\u987B\u5927\u4E8E\u7B49\u4E8E".concat(r)));else return!0}}),e}var Fo=d("ValueExUtil",class{static mergeDefault(t){return ve(t,{textSeparator:",",valueSeparator:","})}static toText(t,e){if(D(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(D(i)&&D(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 N().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 G();default:throw new C({},"\u9ED8\u8BA4\u503C\u7C7B\u578B[".concat(i,"]\u672A\u652F\u6301"))}}}var Po="asyncimportdata2",bo="importdata2";function So(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 No(t,e,a){const s=new FormData;s.append("file",t);let i="".concat(e.codeName2.toLowerCase(),"/").concat(Po);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 So(r.data.asyncacitonid),ibiz.mc.command.send({srfdecodename:e.codeName},"OBJECTCREATED")}async function Ro(t,e,a){const s=new FormData;s.append("file",t);let i="".concat(e.codeName2.toLowerCase(),"/").concat(bo);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 $s(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",Js=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 yo(this.getEventArgs.bind(this)),this.mountCounter=new Io(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)}}),Lo=class gi{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=Dt(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},w=this.getDeFieldName(p,n);w&&(E.sort="".concat(w,",asc"));const y=await gi.fetchDataSet(i,a,E);if(!y.length)return[];const v=this.calcStaticMsg(e),P=this.getDeFieldName(p,o),b=this.getDeFieldName(p,h),A=this.getDeFieldName(p,l),R=this.getDeFieldName(p,c),z=this.getDeFieldName(p,u);return y.map(S=>{const et={};return b&&!D(S[b])&&(et.position=S[b]),P&&!D(S[P])&&(et.title=S[P]),A&&!D(S[A])&&(et.message=S[A]),R&&!D(S[R])&&(et.messageType=S[R]),z&&!D(S[z])&&(et.removeMode=S[z]),De(v,et)})}},Zs=d("ViewController",class extends Js{constructor(t,e,a,s){const i=ibiz.util.layoutPanel.fill(t);super(i,Bt.create({},e),a||{},new vo(s)),this.session={},this.modal=new Or({}),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=Ya(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,appId:this.model.appId},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 Ms.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=Ha(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=Xa(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,(D(this.context.srfsessionid)||B(this.context.srfsessionid))&&(this.context.srfsessionid=G());const t=this.model.appViewNavContexts;let e={};x(t)&&(e=F(t,this.params,this.context)),Object.assign(this.context,e);const a=this.model.appViewNavParams;let s={};x(a)&&(s=F(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 Lo(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)}}),Dc=d("MobViewController",class extends Zs{}),vc=d("WFStepTraceViewController",class extends Zs{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)}}}),To=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=F(s,t,a,e));const n=Object.assign(e.clone(),r);let o={};return i&&t&&(o=F(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)}}),Ic=d("CodeListEditorController",class extends To{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"))}}),K=d("ControlController",class extends Js{constructor(t,e,a,s){if(super(t,Bt.create({},e),new da({},a),s),this.controlParams={},this.providers={},this.registerToCtx(),this.controlPanel=Va(t),!this.controlPanel){const i=ibiz.util.layoutPanel.get("".concat(t.controlType,"_DEFAULT"));i&&(this.controlPanel=I(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=F(e,this.params,this.context)),Object.assign(this.context,s);let i={};x(a)&&(i=F(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=F(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=D(i.timeout)?void 0:i.timeout/1e3;const o={...this.getEventArgs()};e?.data&&(o.data=e.data),r=T.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 K{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,this.model.appId),(t=this.dataEntity.appDEFields)==null||t.forEach(a=>{this.fieldIdNameMap.set(a.id,a.name)});const e=this.onDataChange.bind(this);this.onDataChange=Ut(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;ha(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,this.model.appId),i=(t=s.appDEDataImports)==null?void 0:t.find(o=>o.id===a);if(!i)throw new f("\u65E0\u5BFC\u5165\u6A21\u578B\uFF01");let r="DataImport";i.enableCustomized&&(r="DataImport2");const n=ibiz.overlay.createModal(r,{dismiss:()=>n.dismiss(),appDataEntity:s},{width:"auto",placement:"center"});n.present(),await n.onWillDismiss()}async exportData(t){}}),Bo=d("AppMenuController",class extends K{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();i.srfappid=s.appId,this.routeDepth&&a&&Object.assign(i,{toRouteDepth:this.routeDepth+1}),await ibiz.commands.execute(je.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}}),Ac=d("AppMenuIconViewController",class extends Bo{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(je.TAG,a.appFuncId,s,this.params)}}),Oo=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 to(s,i))}async exec2(t,e,a={},s={},i=this.model.appDataEntityId){return await this.app.deService.exec(i,t,e,a,s)}}),yc=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 Oo(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 N(a).isAfter(s)?i=-1:N(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:N(i).format("YYYY-MM-DD HH:mm:ss"),srfenddate:N(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}});N.extend(Di),N.extend(Ii),N.extend(yi),N.extend(Pi),N.extend(Si);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=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(D(e))return;if(D(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 oo(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(D(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=Wt(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=wt(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(I(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=N(s[this.catalogField]).format(i);s[this.catalogField]=r}}else if(a==="QUARTER"){if(s[this.catalogField]){const r="".concat(N(s[this.catalogField]).format("YYYY"),"-").concat(N(s[this.catalogField]).quarter());s[this.catalogField]=r}}else if(a==="YEARWEEK"&&s[this.catalogField]){const r="".concat(N(s[this.catalogField]).format("YYYY"),"-").concat(N(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)=>N(n).diff(N(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(N(o))})});const s=N.max(a),i=N.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=N("".concat(l,"-12-31")).isoWeek();for(let p=1;p<=h;p++){const E="".concat(l,"-").concat(p);Object.keys(t).forEach(w=>{t[w].get(E)||t[w].set(E,{value:0})})}}}this.sortTimeData(t)}},_o=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}},Mo=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}},xo=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}},Vo=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}},ko=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}},Wo=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}))}}},Uo=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 Wo(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=wt(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 zo=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 _o(e,this);break;case"bar":a=new Mo(e,this);break;case"scatter":a=new ko(e,this);break;case"pie":a=new Vo(e,this);break;case"funnel":a=new xo(e,this);break;case"radar":a=new Uo(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=>(typeof o=="number"&&(o=o.toString()),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,oa){"use strict";var m,f,C,ua,Ot,ca,st,_t,L,Mt,la,da,ha,pa,de,fa,he,ma,k,pe,xt,Vt,kt,Wt,fe,Ut,me,Ea,ga,Y,wa,Ca,zt,Da,Et,va,Ia,Aa,ya,Fa,Pa,ba,Sa,Na,x,V,Ee,gt,G,Gt,At,ge,we,Ce,Ra,La,De,Ta,D,ve,B,I,nt,wt,Ie,Ae,Ct,N,ye,Fe;return{setters:[function(g){m=g.RuntimeModelError,f=g.RuntimeError,C=g.ModelError,ua=g.downloadFileFromBlob,Ot=g.IBizContext,ca=g.clone,st=g.CoreConst,_t=g.DataTypes,L=g.HttpResponse,Mt=g.HttpError,la=g.Net,da=g.getToken,ha=g.NOOP,pa=g.IBizParams,de=g.NoticeError,fa=g.isElementSame,he=g.findRecursiveChild,ma=g.StringUtil,k=g.recursiveIterate,pe=g.debounceAndAsyncMerge,xt=g.mergeDefaultInLeft,Vt=g.isOverlap,kt=g.BitMask,Wt=g.mergeInLeft,fe=g.awaitTimeout,Ut=g.plus,me=g.toNumberOrNil},function(g){Ea=g.isEmpty,ga=g.isString,Y=g.isArray,wa=g.isObject,Ca=g.isNil,zt=g.debounce,Da=g.camelCase,Et=g.eq,va=g.gt,Ia=g.gte,Aa=g.findIndex,ya=g.lt,Fa=g.lte,Pa=g.upperFirst,ba=g.snakeCase,Sa=g.kebabCase,Na=g.isFunction},function(g){x=g.notNilEmpty,V=g.isNilOrEmpty,Ee=g.AsyncSeriesHook,gt=g.QXEvent,G=g.createUUID,Gt=g.isArray,At=g.setCookie,ge=g.clearCookie,we=g.getCookie,Ce=g.ascSort,Ra=g.descSort,La=g.clearAll,De=g.isNumber},function(g){Ta=g.default},function(g){D=g.isNil,ve=g.mergeRight,B=g.isEmpty,I=g.clone,nt=g.equals,wt=g.where,Ie=g.mergeLeft,Ae=g.isNotNil,Ct=g.mergeDeepRight},function(g){N=g.default},function(g){ye=g.default},function(g){Fe=g.default}],execute:function(){d({asyncImportData:Lo,calcContentAlignStyle:sr,calcDeCodeNameById:O,calcDynaClass:Dt,calcGridLayoutPos:ir,calcLayoutHeightWidth:Kt,calcMainStateOPPrivsStrs:za,calcNavParams:jt,calcResPath:ee,compare:Ft,compareNumber:Be,contains:Pt,convertNavData:F,convertNavDataByArray:ka,convertObjectToNavParams:Pe,execDELogic:ie,execDELogicAction:Gs,execDELogicById:zs,execFieldLogics:Tt,execUILogic:ne,exportData:Zs,fieldValueToBoolean:Ge,filterFieldLogics:ja,filterValueRules:xe,findChildFormDetails:Ha,findDELogic:Ne,findEditItem:Ka,findFieldById:vt,findModelChild:dt,formatMultiData:be,generateEditorRules:Qe,generateRules:qe,getAllPanelField:Za,getAppCounterProvider:os,getAppViewRef:er,getAsyncActionProvider:en,getChildNodeRSs:Te,getControl:tr,getControlPanel:Wa,getControlProvider:ht,getControlsByView:Ya,getDEMethodProvider:Os,getDeACMode:rr,getDefaultValue:$e,getEditorProvider:Jt,getFormDetailProvider:hs,getGridColumnProvider:ze,getMatchResPath:xs,getOriginData:Js,getPFPlugin:ar,getPanelItemProvider:Es,getPlatformProvider:Ls,getPlatformType:bs,getPortletProvider:Cs,getRootNode:Re,getTreeNode:Le,getUIActionById:Ht,getUIActionProvider:Is,getUILogicNodeProvider:ys,getViewEngines:Qa,getViewLogics:qa,getViewProvider:Jr,getWFContext:as,getWFSubmitViewId:Sr,handleAllSettled:ot,hasDeCodeName:Ga,hasSubRoute:Xe,importData:To,install:Ic,installCommand:Qs,isDataContainer:$a,isFormDataContainer:Xa,isValueChange:Ye,matchMainState:Ua,openRedirectView:ts,parseUserParams:Se,presetAppCounterProvider:_s,presetDEMethodProvider:Hs,presetUIActionProvider:si,registerAppCounterProvider:ns,registerAsyncActionProvider:Zr,registerControlProvider:jr,registerDEMethodProvider:te,registerEditorProvider:Kr,registerFormDetailProvider:Hr,registerGridColumnProvider:Xr,registerPanelItemProvider:Yr,registerPlatformProvider:Ns,registerPortletProvider:qr,registerUIActionProvider:St,registerUILogicNodeProvider:Qr,registerViewProvider:$r,strContain:Xt,testCond:Z,toLocalOpenWFRedirectView:es,verifyDeRules:Oe,verifyFormGroupLogic:Yt,verifyPanelGroupLogic:qt});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 Ba={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)}}})})(Ba);var vi=Ba.exports,Ii=yt(vi),Oa={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)}}})})(Oa);var Ai=Oa.exports,yi=yt(Ai),_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 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)}}})})(_a);var Fi=_a.exports,Pi=yt(Fi),Ma={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)}}})})(Ma);var bi=Ma.exports,Si=yt(bi),xa={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,w=n(this),y=(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 w.diff(y,"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)}}})})(xa);var Ni=xa.exports,Ri=yt(Ni),Li=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},this.form={mdCtrlConfirmBeforeRemove:!0}}},Ti=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)}}),J=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}};J.helperNames=["lookup","log","and","camelCase","concat","eq","gt","get","lowerCase","lt","lte","neq","not","or","pascalCase","pluralize","snakeCase","spinalCase","upperCase"];var M=class{constructor(t,e){t.registerHelper(e,this.onExecute)}},Bi=class extends M{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 J.handleJudgmentExecute(this,s,e)}},Oi=class extends M{constructor(t){super(t,"camelCase")}onExecute(t){return t?Da(t):""}},_i=class extends M{constructor(t){super(t,"concat")}onExecute(...t){return t.pop(),t.join("")}},Mi=class extends M{constructor(t){super(t,"eq")}onExecute(t,e,a){const s=Et(t,e);return J.handleJudgmentExecute(this,s,a)}},xi=class extends M{constructor(t){super(t,"gt")}onExecute(t,e,a){const s=va(t,e);return J.handleJudgmentExecute(this,s,a)}},Vi=class extends M{constructor(t){super(t,"gte")}onExecute(t,e,a){const s=Ia(t,e);return J.handleJudgmentExecute(this,s,a)}},ki=class extends M{constructor(t){super(t,"eqPropertyValue")}onExecute(t,e,a,s){let i=!1;return Y(t)?i=!Et(Aa(t,r=>Et(r[e],a)),-1):i=t.hasOwnProperty(e)&&(i=Et(t[e],a)),J.handleJudgmentExecute(this,i,s)}},Wi=class extends M{constructor(t){super(t,"jsonParse")}onExecute(t){return JSON.parse(t)}},Ui=class extends M{constructor(t){super(t,"jsonStringify")}onExecute(t,e){return JSON.stringify(t,null,typeof e=="number"?e:void 0)}},zi=class extends M{constructor(t){super(t,"lowerCase")}onExecute(t){return t?t.toLowerCase():""}},Gi=class extends M{constructor(t){super(t,"lt")}onExecute(t,e,a){const s=ya(t,e);return J.handleJudgmentExecute(this,s,a)}},ji=class extends M{constructor(t){super(t,"lte")}onExecute(t,e,a){const s=Fa(t,e);return J.handleJudgmentExecute(this,s,a)}},Ki=class extends M{constructor(t){super(t,"neq")}onExecute(t,e,a){const s=!Et(t,e);return J.handleJudgmentExecute(this,s,a)}},Hi=class extends M{constructor(t){super(t,"not")}onExecute(t,e){const a=Handlebars.Utils.isEmpty(t);return J.handleJudgmentExecute(this,a,e)}},Xi=class extends M{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||""}},Yi=class extends M{constructor(t){super(t,"pascalCase")}onExecute(t){return t?Pa(t):""}},qi=class extends M{constructor(t){super(t,"snakeCase")}onExecute(t){return t?ba(t):""}},Qi=class extends M{constructor(t){super(t,"spinalCase")}onExecute(t){return t?Sa(t):""}},$i=class extends M{constructor(t){super(t,"upperCase")}onExecute(t){return t?t.toUpperCase():""}};function Ji(t){new Bi(t),new Oi(t),new _i(t),new Mi(t),new xi(t),new Vi(t),new Wi(t),new Ui(t),new zi(t),new Gi(t),new ji(t),new Ki(t),new Hi(t),new Xi(t),new Yi(t),new qi(t),new Qi(t),new $i(t),new ki(t)}var Zi=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=oa.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 F(t,...e){if(!t||Ea(t))return{};const a=Array.isArray(t)?t:Pe(t);return ka(a,...e)}function Va(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 ka(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}=Va(e,o.slice(2,-1).toLowerCase());u&&(n=n.replace(o,"".concat(c)))}),s[i.key.toLowerCase()]=n}else{const{find:n,value:o}=Va(e,i.value.toLowerCase());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 jt(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 w=F(r,c,u,o),y=F(n,c,u,o);return Object.assign(h,w),Object.assign(p,y),{resultContext:h,resultParams:p}}function dt(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 tr(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 er(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 Se(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 ar(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 Wa(t){let e;if(t.controlRenders){const a=t.controlRenders.find(s=>s.renderType==="LAYOUTPANEL"&&!!s.layoutPanel);e=a?.layoutPanel}return e}function Kt(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 sr(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 ir(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=T.execScriptFn({data:e},t,{singleRowReturn:!0,isAsync:!1});return ga(s)?a.push(s):Y(s)?a.push(...s):wa(s)&&Object.keys(s).forEach(i=>{s[i]&&a.push(i)}),a}function Ua(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 za(t,e){const a=ibiz.hub.getApp(e.appId).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 Ga(t,e){const a=O(e);return x(t[a])}async function rr(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 ja(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 vt(t,e){var a;return(a=t.appDEFields)==null?void 0:a.find(s=>s.id===e)}async function Ht(t,e){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 nr(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&&nr(s.searchMode,e.hasQuery))}function Ka(t,e){var a;return(a=t.degridEditItems)==null?void 0:a.find(s=>s.codeName===e)}function Ha(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 Xa(t){return t.detailType==="MDCTRL"}function Ya(t){const{viewLayoutPanel:e}=t,a=t.controls||[];return e&&a.push(...e.controls||[]),a}function qa(t){const{viewLayoutPanel:e}=t,a=t.appViewLogics||[];return e&&a.push(...e.appViewLogics||[]),a}function Qa(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 $a(t){return t.itemType==="CONTAINER"&&["CONTAINER_MULTIDATA","CONTAINER_SINGLEDATA"].includes(t.predefinedType)}var or=["panelItems","panelTabPages","rootPanelItems"];function Ja(t){let e=[];for(const s of or)if(t[s]){e=t[s];break}const a=[];return e.length&&(a.push(...e.filter(s=>s.itemType==="FIELD")),e.forEach(s=>{$a(s)||a.push(...Ja(s))})),a}function Za(t){return Ja(t)}async function ts(t,e,a={},s={}){return ur(t,e,a,s)}async function es(t,e,a={}){const s=e.lastIndexOf("?"),i=decodeURIComponent(e.substring(s+1,e.length)),r=Ta.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")),w=p.substring(p.lastIndexOf("v"));r.wf=E,r.wfVersion=w}r.srfprocessinstanceid&&(t.srfprocessinstanceid=r.srfprocessinstanceid,delete r.srfprocessinstanceid),await ibiz.commands.execute(et.TAG,l.id,t,r,a)}async function ur(t,e,a={},s={}){var i;const r=t.appViewNavContexts||[],n=F(r,a,e);e=Object.assign(e.clone(),n);const o=t.appViewNavParams||[],u=F(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,w=await ibiz.hub.getApp(t.appId).deService.getService(c);ibiz.loading.showRedirect();try{const $=await w.exec(p||"get",e,a);if($.ok){h=$.data;let S=h.linkurl;if(S)return e.srfprocessinstanceid&&(S+=";srfprocessinstanceid=".concat(e.srfprocessinstanceid)),ibiz.env.dev&&S.indexOf("appredirectview?")!==-1&&(S=S.slice(S.indexOf("appredirectview?"))),S.startsWith("http://")||S.startsWith("https://")?new Promise(at=>{const pi=window.open(S,"_blank");pi&&(pi.callback=()=>{at({ok:!0,data:[]})})}):S.startsWith("appredirectview?")?(await es(e,S,s),{ok:!0,data:[]}):{ok:!1,data:[]}}}finally{ibiz.loading.hideRedirect()}const y=await ibiz.hub.getAppDataEntity(c,t.appId),v=await cr(y,t,a,h),P=v.split(":"),b=P.length===2?v:P.slice(0,2).join(":"),A="".concat(y.name.toUpperCase(),":").concat(v),R=t.redirectAppViewRefs,z=R?.find($=>{const S=$.name||$.id;return S===A||S===v||S===b});if(z){const $=z.refAppViewId;if($){const S=await ibiz.commands.execute(et.TAG,$,e,a,{...s,data:[h]});if(S)return S}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:$,name:S,realTitle:at})=>({viewId:$,tag:S,title:at}))),new m(t,"\u672A\u627E\u5230\u91CD\u5B9A\u5411\u6807\u8BC6[".concat(v,"]\u6216[").concat(A,"]\u6216\u5DE5\u4F5C\u6D41[").concat(b,"]\u5BF9\u5E94\u89C6\u56FE"));return{ok:!0,data:[]}}async function cr(t,e,a,s){let i="";const r=e.typeAppDEFieldId;if(r){const{codeName:c}=vt(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}=vt(t,t.indexTypeAppDEFieldId);u=s[c.toLowerCase()]}if(V(u)&&t.formTypeAppDEFieldId){const{codeName:c}=vt(t,t.formTypeAppDEFieldId);u=s[c.toLowerCase()]}return x(u)?i="".concat(n,":").concat(u.toString().toUpperCase()):i="".concat(n),i}function Z(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 D(t);case"IN":return Pt(t,a);case"NOTIN":return!Pt(t,a);case"LIKE":return Xt(t,a);case"LEFTLIKE":return Xt(t,a,"start");case"RIGHTLIKE":return Xt(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 Xt(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 lr={singleRowReturn:!1,isAsync:!0},dr=d("ScriptFunction",class{constructor(t,e,a=lr){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){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"appSession":e.appSession=ibiz.hub.controller.session;break}const a=e.view;if(a)switch(t){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}}exec(t){const e=this.convertArgs(t);return this.scriptFn(...e)}}),T=d("ScriptFactory",class{static createScriptFn(t,e,a){return new dr(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 hr(t){return t.condType==="GROUP"}function pr(t){return t.condType==="SIMPLE"}function fr(t){return t.condType==="VALUERANGE2"}function mr(t){return t.condType==="REGEX"}function Er(t){return t.condType==="STRINGLENGTH"}function gr(t){return t.condType==="SYSVALUERULE"}function Oe(t,e,a){const s={isPast:!0,infoMessage:a.ruleInfo};if(hr(a)){const i=a.conds;i&&i.length>0&&(s.isPast=wr(i,r=>{const{isPast:n,infoMessage:o}=Oe(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(pr(a))s.isPast=!Cr(e[t],a.condOp,a.paramValue,a.ruleInfo,a.paramType,e,a.keyCond);else if(fr(a))s.isPast=!vr(e[t],a.minValue,a.includeMinValue,a.maxValue,a.includeMaxValue,a.ruleInfo,a.keyCond);else if(mr(a))s.isPast=!_e(e[t],a.regExCode,a.ruleInfo,a.keyCond);else if(Er(a))s.isPast=!Dr(e[t],a.minValue,a.includeMinValue,a.maxValue,a.includeMaxValue,a.ruleInfo,a.keyCond);else if(gr(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}=Ir(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 wr(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 Cr(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),(D(s)||B(s))&&(s="\u5185\u5BB9\u5FC5\u987B\u7B26\u5408\u503C\u89C4\u5219");const o=Z(t,e,a);if(!o&&n)throw new f(s);return!o}function Dr(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 vr(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 Ir(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=T.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 Ar(t){return t.logicType==="GROUP"}function yr(t){return t.logicType==="SINGLE"}function Yt(t,e){if(Ar(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=>!Yt(t,r))===void 0:e.groupOP==="OR"&&(s=e.defdlogics.find(r=>Yt(t,r))!==void 0),e.notMode?!s:s}if(yr(e))return Z(t[e.defdname.toLowerCase()],e.condOP,e.value);throw new C(e,"\u672A\u652F\u6301\u7684\u903B\u8F91\u7C7B\u578B".concat(e.logicType))}function Fr(t){return t.logicType==="GROUP"}function Pr(t){return t.logicType==="SINGLE"}function qt(t,e){if(Fr(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=>!qt(t,r))===void 0:e.groupOP==="OR"&&(s=e.panelItemLogics.find(r=>qt(t,r))!==void 0),e.notMode?!s:s}if(Pr(e))return Z(t[e.dstModelField.toLowerCase()],e.condOp,e.value);throw new C(e,"\u672A\u652F\u6301\u7684\u903B\u8F91\u7C7B\u578B".concat(e.logicType))}var br=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=I(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 as(t){const e={};return t.param09&&(e.srfprocessinstanceid=t.param09),e}function Sr(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 Nr=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))(Nr||{})),Rr=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))(Rr||{})),Lr=d("ViewMode",(t=>(t.ROUTE="ROUTE",t.MODAL="MODAL",t.DRAWER="DRAWER",t.EMBED="EMBED",t.POPOVER="POPOVER",t))(Lr||{})),Tr=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))(Tr||{})),Br=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))(Br||{})),Or=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))(Or||{})),_r=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))(_r||{})),Me=d("StudioViewEvents",class{});Me.onViewMounted="onMounted",Me.onViewDestroyed="onDestroyed";var Qt=d("StudioPanelEvents",class{});Qt.onClick="onClick",Qt.onChange="onChange",Qt.onEnter="onEnter",Qt.onLeave="onLeave";var U=d("StudioControlEvents",class{});U.onBeforeLoad="onBeforeLoad",U.onLoadSuccess="onLoadSuccess",U.onLoadError="onLoadError",U.onBeforeLoadDraft="onBeforeLoadDraft",U.onLoadDraftSuccess="onLoadDraftSuccess",U.onLoadDraftError="onLoadDraftError",U.onBeforeSave="onBeforeSave",U.onSaveSuccess="onSaveSuccess",U.onSaveError="onSaveError",U.onBeforeRemove="onBeforeRemove",U.onRemoveSuccess="onRemoveSuccess",U.onRemoveError="onRemoveError",U.CLICK="onClick";var Mr=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 xr=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")}}),Vr=d("ThemeUtil",class{constructor(){this.html=document.getElementsByTagName("html")[0]}async loadTheme(t){const e=I(t.themeParams||{}),a=e["theme-package-path"];delete e.appId,delete e["theme-package-path"],await ibiz.plugin.loadPlugin({runtimeObject:!0,rtobjectName:t.name,rtobjectRepo:a}),this.setThemeParams(t,e),this.setTheme(t.themeTag)}setThemeParams(t,e){if(document.getElementById(t.themeTag))return;let s=":root.".concat(t.themeTag,"{");for(const r in e)if(Object.prototype.hasOwnProperty.call(e,r)){const n=e[r];s+="".concat(r,": ").concat(n).concat(n.endsWith(";")?"":";")}s+="}";const i=document.createElement("style");i.id=t.themeTag,i.type="text/css",i.innerHTML=s,document.head.appendChild(i)}setTheme(t){const e=this.getTheme();this.html.classList.remove(e),this.html.setAttribute("theme",t),this.html.classList.add(t)}getTheme(){return this.html.getAttribute("theme")}}),kr=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 ot(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 Wr=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}},ss=class{constructor(){this.strCondOp=null}getCondOp(){return this.strCondOp}setCondOp(t){this.strCondOp=t}},Ve=class extends ss{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}},is=class fi extends ss{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 fi;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}},Ur=class extends is{},zr=class extends Ve{},ke=class ra extends Wr{test(e,a){return this.testCond(this.getPSModelGroupCondBase(),e,a)}testCond(e,a,s){if(e instanceof is){const i=e.getChildPSModelCondBases();if(i==null||B(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){B(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&&!B(n)?(B(o)&&ibiz.log.warn("\u6CA1\u6709\u6307\u5B9A\u4E0A\u4E0B\u6587\u53C2\u6570\u540D\u79F0"),ra.PARAMTYPE_WEBCONTEXT===n?r=s.data[o.toLowerCase()]:ra.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 zr}createPSModelGroupCond(){return new Ur}};ke.PARAMTYPE_DATACONTEXT="DATACONTEXT",ke.PARAMTYPE_WEBCONTEXT="WEBCONTEXT";var Gr=d("PSDEDQCondEngine",ke);async function q(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 rs=d("APP_COUNTER_PROVIDER_PREFIX","APPCOUNTER");function ns(t,e){ibiz.register.register("".concat(rs,"_").concat(t),e)}function We(t){return ibiz.register.get("".concat(rs,"_").concat(t))}async function os(t){let e;const{codeName:a,counterType:s,sysPFPluginId:i,appId:r}=t;if(i){const n=await q(i,r);if(n&&(e=We(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=We(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=We(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 us=d("CONTROL_PROVIDER_PREFIX","CONTROL");function jr(t,e){ibiz.register.register("".concat(us,"_").concat(t),e)}function Ue(t){return ibiz.register.get("".concat(us,"_").concat(t))}async function ht(t){let e;const{controlType:a,controlStyle:s,sysPFPluginId:i,appId:r}=t;if(i){const n=await q(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 cs=d("EDITOR_PROVIDER_PREFIX","EDITOR");function Kr(t,e){ibiz.register.register("".concat(cs,"_").concat(t),e)}function $t(t){return ibiz.register.get("".concat(cs,"_").concat(t))}async function Jt(t){let e;const{editorType:a,editorStyle:s,predefinedType:i,sysPFPluginId:r,appId:n}=t;if(r){const o=await q(r,n);if(o&&(e=$t(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=$t(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=$t(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=$t(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 ls=d("FORMDETAIL_PROVIDER_PREFIX","FORMDETAIL");function Hr(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{detailType:a,sysPFPluginId:s,appId:i}=t;if(s){const r=await q(s,i);if(r&&(e=ds(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=ds(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 ps=d("GRIDCOLUMN_PROVIDER_PREFIX","GRIDCOLUMN");function Xr(t,e){ibiz.register.register("".concat(ps,"_").concat(t),e)}function fs(t){return ibiz.register.get("".concat(ps,"_").concat(t))}async function ze(t){let e;const{columnType:a,enableRowEdit:s,sysPFPluginId:i,appId:r}=t;if(i){const o=await q(i,r);if(o&&(e=fs(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=fs(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 ms=d("PANELITEM_PROVIDER_PREFIX","PANELITEM");function Yr(t,e){ibiz.register.register("".concat(ms,"_").concat(t.toUpperCase()),e)}function bt(t){return ibiz.register.get("".concat(ms,"_").concat(t.toUpperCase()))}async function Es(t){var e;let a;const{itemType:s,sysPFPluginId:i,appId:r}=t;if(i){const n=await q(i,r);if(n&&(a=bt(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=bt(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=bt(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=bt(o),a)return a}}if(a=bt(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 gs=d("PORTLET_PROVIDER_PREFIX","PORTLET");function qr(t,e){ibiz.register.register("".concat(gs,"_").concat(t),e)}function ws(t){return ibiz.register.get("".concat(gs,"_").concat(t))}async function Cs(t){let e;const{portletType:a,sysPFPluginId:s,appId:i}=t;if(s){const r=await q(s,i);if(r&&(e=ws(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=ws(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 Ds=d("UIACTION_PROVIDER_PREFIX","UIACTION");function St(t,e){ibiz.register.register("".concat(Ds,"_").concat(t),e)}function vs(t){return ibiz.register.get("".concat(Ds,"_").concat(t))}async function Is(t){let e;const{uiactionMode:a,sysPFPluginId:s,appId:i}=t;if(s){const r=await q(s,i);if(r&&(e=vs(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=vs(a),e)return e;throw new f("\u627E\u4E0D\u754C\u9762\u884C\u4E3A\u6A21\u5F0F".concat(a,"\u5BF9\u5E94\u7684\u9002\u914D\u5668"))}var As=d("UILOGINNODE_PROVIDER_PREFIX","UI_LOGIN_NODE");function Qr(t,e){ibiz.register.register("".concat(As,"_").concat(t),e)}async function ys(t){let e;const{sysPFPluginId:a,appId:s}=t,i=await q(a,s);if(i){if(e=ibiz.register.get("".concat(As,"_").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 Fs=d("VIEW_PROVIDER_PREFIX","VIEW");function $r(t,e){ibiz.register.register("".concat(Fs,"_").concat(t),e)}function Zt(t){return ibiz.register.get("".concat(Fs,"_").concat(t))}async function Jr(t){let e;const{viewType:a,viewStyle:s,sysPFPluginId:i,appId:r}=t;if(i){const n=await q(i,r);if(n&&(e=Zt(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=Zt(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=Zt(a)),e||(e=Zt("DEFAULT")),e}var Ps=d("ASYNC_ACTION_PROVIDER_PREFIX","ASYNC_ACTION");function Zr(t,e){ibiz.register.register("".concat(Ps,"_").concat(t),e)}function tn(t){return ibiz.register.get("".concat(Ps,"_").concat(t))}function en(t){const e=tn(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 an=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",baseURL:""});if(a.status!==200)throw new f("\u4E0B\u8F7D\u6587\u4EF6\u5931\u8D25");if(a.data){const s=e;return ua(a.data,s),Promise.resolve(!0)}else throw new f("\u6587\u4EF6\u6D41\u6570\u636E\u4E0D\u5B58\u5728")}}),sn=d("BrowserPlatformProvider",class extends an{});function rn(){const t=new sn;Ns("Browser",()=>t)}var Nt=window.navigator.userAgent.toLowerCase();function nn(){return/Android|Adr/i.test(Nt)}function on(){return/iPhone|iPod|iPad/i.test(Nt)}function un(){return/MicroMessenger/i.test(Nt)}function cn(){return/DingTalk/i.test(Nt)}function ln(){return/miniProgram/i.test(Nt)||window.__wxjs_environment==="miniprogram"}function bs(){return nn()?"Android":on()?"IOS":un()?"WeChat":cn()?"DingTalk":ln()?"WeChatMiniProgram":"Browser"}var Ss=d("PLATFORM_PROVIDER_PREFIX","PLATFORM");function Ns(t,e){ibiz.register.register("".concat(Ss,"_").concat(t),e)}function Rs(t){return ibiz.register.get("".concat(Ss,"_").concat(t))}function Ls(){const t=bs(),e=Rs(t);return e||Rs("Browser")}var Ts=d("DEMETHOD_PROVIDER_PREFIX","DEMETHOD");function te(t,e){ibiz.register.register("".concat(Ts,"_").concat(t),e)}function Bs(t){return ibiz.register.get("".concat(Ts,"_").concat(t))}async function Os(t){let e;const{methodType:a,sysPFPluginId:s,appId:i}=t;if(s){const r=await q(s,i);if(r&&(e=Bs(r)),!e)ibiz.log.error("\u627E\u4E0D\u5230\u5B9E\u4F53\u884C\u4E3A\u63D2\u4EF6".concat(r,"\u5BF9\u5E94\u7684\u9002\u914D\u5668"));else return e}if(e=Bs(a),e)return e;throw new f("\u627E\u4E0D\u5B9E\u4F53\u884C\u4E3A\u65B9\u6CD5\u7C7B\u578B\u4E3A".concat(a,"\u7684\u9002\u914D\u5668"))}var dn=d("AppCounter",class{constructor(t){this.model=t,this.destroyed=!1,this.context=Ot.create(),this.params={},this.evt=new gt,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=I(t)),e&&(this.params=I(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()}}),hn=d("AppDECounter",class extends dn{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}}),pn=d("AppDECounterProvider",class{createCounter(t){return new hn(t)}});function _s(){ns("DEDR",()=>new pn)}var fn=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 Gr;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 C(a,"\u6682\u672A\u652F\u6301\u7684\u67E5\u8BE2\u6761\u4EF6\u7C7B\u578B: ".concat(a.condType));e.push(s)}),e}});fn.map=new WeakMap;var mn=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 C(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;if(e.id=l,e.value=l,e.text=s?t[s]:t.srfmajortext,(i||r||n||o)&&(e.sysImage={appId:this.codeList.appId},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=Ge(t[u])),c&&t[c])try{e.data=T.execSingleLine(t[c])}catch{ibiz.log.error("\u52A8\u6001\u4EE3\u7801\u8868\u6570\u636E\u5C5E\u6027\u8FD4\u56DE\u503C\u4E0D\u4E3A\u5BF9\u8C61\u683C\u5F0F\u7684\u5B57\u7B26\u4E32\uFF0C\u65E0\u6CD5\u8F6C\u6362\uFF01")}return 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=T.execSingleLine(u),E=F(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||D(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 Ms(t,e){if(e!=null){const{srfkey:a}=e;if(!D(a)&&!B(a))return!0}throw new f("\u6267\u884C\u300C".concat(t,"\u300D\u4E0D\u5B58\u5728\u300Csrfkey\u300D\u65E0\u6CD5\u5904\u7406"))}function ut(t,e){const{srfsessionid:a}=e;if(!D(a)&&!B(a))return!0;throw new f("\u6267\u884C\u300C".concat(t,"\u300D\u4E0D\u5B58\u5728\u300Csrfsessionid\u300D\u65E0\u6CD5\u5904\u7406"))}var En=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,I(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 ut("add",t),(D(e.srfkey)||B(e.srfkey))&&(e.srfkey=G()),e.srftempdate=new Date().getTime(),this.getCacheByTag(t).set(e.srfkey,I(e)),ibiz.log.warn("add",e.srfkey,e),e}catch(a){return ibiz.log.error(a),null}}get(t,e){try{ut("get",t);const s=this.getCacheByTag(t).get(e);return ibiz.log.warn("get",e,s),I(s)}catch(a){return ibiz.log.error(a),null}}update(t,e){try{ut("update",t),Ms("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),I(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{ut("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{ut("add",t);const a=this.getCacheByTag(t);for(let s=0;s<e.length;s++){const i=e[s];(D(i.srfkey)||B(i.srfkey))&&(i.srfkey=G()),i.srftempdate=new Date().getTime();const r=I(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{ut("update",t);const a=this.getCacheByTag(t);for(let s=0;s<e.length;s++){const i=e[s];Ms("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]=I(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{ut("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{ut("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=nt(t.srfkey)),delete t.srfkey;for(const a in t)if(Object.prototype.hasOwnProperty.call(t,a)){const s=t[a];e[a]=nt(s)}return wt(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)}}),gn=/\$\{(.*?)\}/g;function xs(t,e){const i=(e.requestPaths||[]).map(r=>{const n=r.match(gn),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 ee(t,e){const a=xs(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 wn=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(!D(e.page)&&!B(e.page)&&(this.page=e.page),!D(e.size)&&!B(e.size)&&(this.size=e.size),!D(e.query)&&!B(e.query)&&(this.query=e.query),!D(e.sort)&&!B(e.sort)){const a=e.sort.split(",");a.length>=1&&([this.sortField]=a),a.length>=2&&(this.sortMode=a[1].toUpperCase())}!D(e.srfparentkey)&&!B(e.srfparentkey)&&(this.srfparentkey=e.srfparentkey),!D(e.srfparentdename)&&!B(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]}});function Ge(t){return[1,"1",!0,"true"].includes(t)}var Cn=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?T.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 mn(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):[]}}),Rt=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||{}:{}}}),Vs=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 os(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)}});Vs.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"))}}}),vn=class{constructor(t){this.model=t}exportData(t,e,a,s){const i=ee(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"})}},In=d("DEService",class{constructor(t){this.model=t,this.methodMap=new Map,this.local=new En,this.configCache=new Rt(t.appId,"PSAppDataEntity",t.codeName),this.wf=new Dn(t),this.file=new vn(t)}async getMethod(t,e=!1){const a=e?"ac-".concat(t):t;if(this.methodMap.has(a))return this.methodMap.get(a);const s=dt(this.model.appDEMethods,t),i=await Os(s);if(!i)throw new C(s,"\u672A\u652F\u6301\u7684\u670D\u52A1\u65B9\u6CD5\u7C7B\u578B: ".concat(s.methodType));const r=i.create(this.model,s,{acMode:e});return this.methodMap.set(a,r),r}async exec(t,e,a,s){const i=await 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)}getDraftTemp(t,e,a){return this.exec("GetDraftTemp",t,e,a)}createTemp(t,e,a){return this.exec("CreateTemp",t,e,a)}getTemp(t,e,a){return this.exec("GetTemp",t,e,a)}updateTemp(t,e,a){return this.exec("UpdateTemp",t,e,a)}removeTemp(t,e,a){return this.exec("RemoveTemp",t,e,a)}fetchTempDefault(t,e,a){return this.exec("FetchTempDefault",t,e,a)}async execAc(t,e,a,s={}){const i=await 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 ee(t,this.model)+s}}),An=d("Srfuf",(t=>(t[t.CREATE=0]="CREATE",t[t.UPDATE=1]="UPDATE",t))(An||{})),yn=["srfkey","srfmajortext","srfmajorfield","srfkeyfield","tempsrfkey","srfuf","srfdeid","srfdecodename"],j=d("ControlVO",class na{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:D(this.srfkey)?G():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;yn.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 na?e.getOrigin():e}clone(){const e=I(this.$origin),a=new na(e,this.$dataUIMap);return Object.keys(this).forEach(s=>{a[s]=this[s]}),a}}),Lt=d("ControlService",class{constructor(t){this.dataUIMap=new Map,this.model=t}async init(t){this.app=ibiz.hub.getApp(this.model.appId),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 ca(t)}toUIData(t){return new j(t,this.dataUIMap)}}),tt=d("MDControlService",class extends Lt{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&&(Gt(e.data)?e.data=e.data.map(a=>this.toUIData(a)):e.data=this.toUIData(e.data)),e}}),Fn=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=Ua(s,e);if(i){ibiz.log.debug("\u5339\u914D\u4E3B\u72B6\u6001",i);const r=za(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}}),Pn=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 Fn(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}}),bn=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){At(st.TOKEN,i.token,a?7:0,!0);const r=new Date().getTime()+(i.expirein||7199)*1e3;At(st.TOKEN_EXPIRES,"".concat(r),a?7: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"),ge(st.TOKEN),ge(st.TOKEN_EXPIRES),!0}catch(t){ibiz.notification.error({title:"\u767B\u51FA\u5931\u8D25",desc:t.message||""})}return!1}async extendLogin(){const t=we(st.TOKEN),e=we(st.TOKEN_EXPIRES);if(t&&e){let a=Number(e)-new Date().getTime();const s=5*60*1e3;a=a>s?a-s:0,setTimeout(async()=>{const i=await ibiz.net.get("/uaa/refreshtoken2");if(i.ok){At(st.TOKEN,i.data.token,0,!0);const r=new Date().getTime()+(i.data.expirein||7199)*1e3;At(st.TOKEN_EXPIRES,"".concat(r),0,!0)}this.extendLogin()},a)}}}),Sn=d("AsyncActionService",class{async fetch(t={}){const e=await ibiz.net.post("/portal/asyncaction/all",t);return D(e.data)&&(e.data=[]),e}async get(t){return await ibiz.net.get("/portal/asyncaction/".concat(t))}}),ae=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?I(a._data):I(a)}),Object.defineProperty(this,"srfdeid",{get(){return e.id}}),Object.defineProperty(this,"srfdecodename",{get(){return e.codeName}});const s=dt(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=dt(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:D(this.srfkey)?G():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||D(a))return e;if(_t.isNumber(a)){const s=!D(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}}),ks=d("MethodDto",class mi{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)a[n]&&(s[n]=a[n].length===0?null:this.convertArrayToListMap(a[n]));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 C(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 ae(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=dt(a.appDEMethodDTOs||[],e.refAppDEMethodDTOId),i=new mi(a,!0,s);return this.dtoMap.set(e.codeName,i),i}});function se(t){return t.actionType==="BUILTIN"||t.dataSetType==="DATAQUERY"}var Nn=d("MethodInput",class{constructor(t,e){this.entity=t,this.method=e;const a=e.appDEMethodInput;if(a){const s=dt(t.appDEMethodDTOs||[],a.appDEMethodDTOId);s&&(this.dto=new ks(t,this.isLocalMode,s))}}get isLocalMode(){return se(this.method)}async handle(t,e){return this.dto?this.dto.get(t,e):e}}),Rn=d("MethodReturn",class{constructor(t,e){this.entity=t,this.method=e;const a=e.appDEMethodReturn;if(a){const s=dt(t.appDEMethodDTOs||[],a.appDEMethodDTOId);s&&(this.dto=new ks(t,this.isLocalMode,s))}}get isLocalMode(){return se(this.method)}async handle(t,e){return this.dto?(await this.dto.sets(t,[e]))[0]:(V(e)&&(e={}),new ae(this.entity,e))}}),Ws=d("Method",class{constructor(t,e){this.entity=t,this.method=e,this.app=ibiz.hub.getApp(t.appId),this.input=new Nn(t,e),this.result=new Rn(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 ee(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 ae?a.clone():new ae(this.entity,a);return Y(t)?t.map(a=>e(a)):e(t)}}),Ln=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:Y(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)}},Us=class{},Tn=class extends Us{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 Z(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 Z(s[this.dstField],this.op,i[this.value])}case"CURTIME":throw new C(this.model,"\u6682\u672A\u652F\u6301\u6761\u4EF6\u503C\u7C7B\u578B\u4E3A[\u5F53\u524D\u65F6\u95F4]");default:return Z(s[this.dstField],this.op,this.value)}}},Bn=class Ei extends Us{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}},On=class{constructor(t){this.model=t,this.srcNode=null,this.dstNode=null,this.groupCond=null;const e=this.model.delogicLinkGroupCond;e&&(this.groupCond=new Bn(e))}async exec(t){const{defaultLink:e}=this.model;return e||!this.groupCond?!0:this.groupCond.test(t,t.context,t.data[0]||{})}},H=class{constructor(t){this.model=t;var e;this.links=(e=t.links||[])==null?void 0:e.map(a=>new On(a))}},_n=class extends H{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)}},Mn=class extends H{async exec(t){}},xn=class extends H{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 C(this.model,"\u6682\u672A\u652F\u6301\u7684\u7ED3\u675F\u8282\u70B9\u8FD4\u56DE\u503C\u7C7B\u578B: ".concat(a))}}};function pt(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=I(ibiz.env);break;default:throw new C(e,"\u6682\u672A\u652F\u6301\u6E90\u503C\u7C7B\u578B".concat(r))}if(o&&n)try{Array.isArray(o)?o=o[Number(n)]:o=T.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 Vn=class extends H{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 C(a,"\u6682\u672A\u652F\u6301\u903B\u8F91\u5904\u7406\u53C2\u6570\u64CD\u4F5C".concat(a.paramAction))}}))}copyParam(t,e){const{dstDELogicParamId:a}=t,s=pt(e,t);e.params[a]=I(s)}bindParam(t,e){const a=pt(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=pt(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=pt(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])}},kn=class extends H{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)}},Wn=class extends H{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=pt(t,this.model);t.params[e]=s}},Un=class extends H{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)}},zn=class extends H{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)}},Gn=class extends H{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=pt(t,this.model);t.params[e]=I(s)}},jn=class extends H{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])}},Kn=class extends H{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=pt(t,this.model),o=s||0,u=i||0,c=r||n.length;t.params[e].splice(o,0,...n.slice(u,c))}},Hn=class extends H{async exec(t){const{errorCode:e,errorInfo:a}=this.model;throw new Mt({response:{status:e,statusText:a}})}},Xn=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]=I(ibiz.env);else if(a.entityListParam)t.params[e]=[];else{if(a.entityPageParam)throw new C(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]=I(t.data||{});else{if(a.envParam)throw new C(a,"\u672A\u652F\u6301\u7684\u903B\u8F91\u53C2\u6570\u7C7B\u578B: \u7CFB\u7EDF\u73AF\u5883\u53D8\u91CF");if(a.fileListParam)throw new C(a,"\u672A\u652F\u6301\u7684\u903B\u8F91\u53C2\u6570\u7C7B\u578B: \u6587\u4EF6\u5BF9\u8C61\u5217\u8868\u53D8\u91CF");if(a.fileParam)throw new C(a,"\u672A\u652F\u6301\u7684\u903B\u8F91\u53C2\u6570\u7C7B\u578B: \u6587\u4EF6\u5BF9\u8C61\u53D8\u91CF");if(a.filterParam)throw new C(a,"\u672A\u652F\u6301\u7684\u903B\u8F91\u53C2\u6570\u7C7B\u578B: \u8FC7\u6EE4\u5668\u5BF9\u8C61\u53D8\u91CF");if(a.lastParam)throw new C(a,"\u672A\u652F\u6301\u7684\u903B\u8F91\u53C2\u6570\u7C7B\u578B: \u6700\u540E\u6570\u636E\u53D8\u91CF");if(a.originEntity)throw new C(a,"\u672A\u652F\u6301\u7684\u903B\u8F91\u53C2\u6570\u7C7B\u578B: \u539F\u59CB\u6570\u636E\u5BF9\u8C61");if(a.sessionParam)throw new C(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 C(a,"\u672A\u652F\u6301\u7684\u903B\u8F91\u53C2\u6570\u7C7B\u578B\u91CD\u65B0\u5EFA\u7ACB\u53D8\u91CF")}},Yn=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=T.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 Mn(s);break;case"END":r=new xn(s);break;case"DEACTION":r=new _n(s);break;case"PREPAREPARAM":r=new Vn(s);break;case"DEDATASET":r=new kn(s);break;case"THROWEXCEPTION":r=new Hn(s);break;case"BINDPARAM":r=new Wn(s);break;case"RESETPARAM":r=new Un(s);break;case"COPYPARAM":r=new Gn(s);break;case"RENEWPARAM":r=new zn(s);break;case"APPENDPARAM":r=new Kn(s);break;case"SORTPARAM":r=new jn(s);break;default:throw new C(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 Xn(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 Ln(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 qn(t,e,a){const s=await ibiz.hub.getAppDataEntity(e,a);return Ne(t,s)}async function ie(t,e,a={},s={}){return je.has(t)||je.set(t,new Yn(t)),je.get(t).exec(e,a,s)}async function zs(t,e,a,s,i){const r=await qn(t,e,a.srfappid);if(!r)throw new f("".concat(e,"\u627E\u4E0D\u5230\u5B9E\u4F53\u903B\u8F91").concat(t));return ie(r,a,s,i)}async function Gs(t,e,a,s){const i=I(e),r=a&&I(a),n=s&&I(s);try{const o=await ie(t,i,r,n);return new L(o)}catch(o){if(o instanceof Mt)return new L(o,500);throw o}}async function js(t,e,a,s,i){const r=ja(t,e);r.length&&(await Promise.all(r.map(o=>ie(o,a,s,i)))).forEach(o=>{Object.assign(s,o)})}async function Tt(t,e,a,s,i={}){if(s){if(Y(s)){await Promise.all(s.map(r=>js(t,e,a,r,i)));return}return js(t,e,a,s,i)}}var Qn=d("DEActionMethod",class extends Ws{get isLocalMode(){return se(this.method)}async inputHandle(t,e){return Y(e)?e:this.input.handle(t,e)}async exec(t,e,a){if(e&&await Tt(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 Gs(i,t,e,a)}e&&!this.isLocalMode&&(e=await this.inputHandle(t,e)),e&&!["READ","GETDRAFT"].includes(this.method.actionMode)&&await Tt(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=Y(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 Tt(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 Y(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 Y(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)}}),$n=class{create(t,e,a){return new Qn(t,e)}},Ks=d("FetchMethod",class extends Ws{get isLocalMode(){return se(this.method)}async exec(t,e,a){const s=e&&!Y(e)?e:a||{};if(this.isLocalMode){const n=await this.searchLocal(null,new wn(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 C(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 Tt(this.entity,"compute",t,i.data,s),i}async selectLocal(t,e={}){let s=(await this.getService()).local.getList(t);s=Ce(s,"srfordervalue");const i={},r={},n={},o={};e.srfkey&&(i.srfkey=nt(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]=nt(null),n[c]=nt(void 0),o[c]=nt("")):i[c]=nt(l)}if(!B(i)){const c=wt(i),l=wt(r),h=wt(n),p=wt(o);s=s.filter(E=>{if(B(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,e.data),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],w=l[E];if(h.test(w))return!0}return!1}))),!D(e.sortField)&&!B(e.sortField)&&(e.sortMode==="DESC"?i=Ra(i,e.sortField):i=Ce(i,e.sortField));const{page:r,size:n}=e,o=r*n,u=(r+1)*n-1;return i.slice(o,u).map(l=>I(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)}}),Jn=d("AcFetchMethod",class extends Ks{mergeRequestPath(t,e){return"".concat(t,"/ac/").concat(e,"?srfac=ac")}}),Zn=class{create(t,e,a){return a.acMode?new Jn(t,e):new Ks(t,e)}};function Hs(){const t=new $n;te("DEACTION",()=>t);const e=new Zn;te("FETCH",()=>e),te("FETCHTEMP",()=>e)}var 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}}),to=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)}}),Xs=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})}this.srfkey=this.deData.srfkey,this.srfmajortext=this.deData.srfmajortext,this.icon=this.calcIcon(t),this.textHtml=this.calcTextHtml(t),t.leafFlagAppDEFieldId&&(this.leaf=Ge(s[t.leafFlagAppDEFieldId]))}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 T.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}}),eo=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)}}),X=d("UIMapField",class{constructor(t,e,a={}){this.isOriginField=!1,this.isRequestNeed=!0,this.uiKey=t,this.dataKey=e,D(a.isOriginField)||(this.isOriginField=a.isOriginField),D(a.dataType)||(this.dataType=a.dataType)}convertVal(t){if(!this.dataType)return t;if(_t.isNumber(this.dataType)){const e=!D(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}}),ao=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 so(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 io=["REGION","REGION2","REGION3","REGION4"],ro=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,io.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 so(h,p),p}})}});function no(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 oo=d("PanelData",class{constructor(t,e){const a=new gt,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 no(r,n),n}})}destroy(){this._evt.reset()}});function uo(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 co=d("ChartData",class{constructor(t,e,a,s){return this._seriesModelId=e?.id,this._catalog=a,this._groupName=s,this._uuid=G(),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 uo(i,r),r}})}}),lo=d("MqttService",class{constructor(t,e,a){if(this.mqttTopic=t,this.token=e,this.appId=a,this.evt=new gt,this.options={connectTimeout:6e3,clientId:G(),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 oa.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()}}),ho=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 In(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)}}),Ys=class gi{constructor(){ibiz.commands.register(gi.TAG,this.exec.bind(this))}async exec(e,a,s={},i={}){const r=I(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 ts(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 C(n,"\u672A\u652F\u6301\u7684\u89C6\u56FE\u6253\u5F00\u6A21\u5F0F: POPUP");case"POPUPMODAL":return this.openModal(n,r,s);case"POPUPAPP":throw new C(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)}};Ys.TAG="ibiz.app-view.open";var et=d("OpenAppViewCommand",Ys),qs=class wi{constructor(){ibiz.commands.register(wi.TAG,this.exec.bind(this))}async exec(e,a,s={},i={}){const n=(await ibiz.hub.getAppAsync(a.srfappid)).getAppFunc(e);if(!n)throw new f("\u627E\u4E0D\u5230\u53EB".concat(e,"\u7684\u5E94\u7528\u529F\u80FD"));const{navigateContexts:o,navigateParams:u,appFuncType:c}=n,l=a.clone();Object.assign(l,F(o,s,a));const h=F(u,s,a);switch(c){case"APPVIEW":return this.openAppView(n,l,h,i);case"OPENHTMLPAGE":return this.openHtmlPage(n);case"PDTAPPFUNC":return this.openPdAppFunc(n,l,h);case"JAVASCRIPT":return this.executeJavaScript(n,l,h);case"CUSTOM":return this.custom(n,l,h);default:throw new C(n,"\u672A\u652F\u6301\u7684\u5E94\u7528\u529F\u80FD\u7C7B\u578B: ".concat(c))}}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(et.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")}};qs.TAG="ibiz.app-func.exec";var He=d("AppFuncCommand",qs);function Qs(){new He,new et}var po=d("Application",class{constructor(t){this.model=t,this.deName2DeCodeName=new Map,this.net=new la({baseURL:"".concat(ibiz.env.baseUrl,"/").concat(t.appId)}),this.configCache=new Rt(t.appId,"PSSysApp",t.codeName),this.deService=new ho(t),this.codeList=new Cn(t),this.authority=new Pn(t)}get appId(){return this.model.appId}async init(){await this.authority.init(),await this.loadAppModelStyle(),ibiz.env.enableMqtt&&ibiz.appData&&(this.mqtt=new lo(ibiz.appData.mqtttopic,da(),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)}}),fo=class{parse(t){return t}},mo=class{constructor(){this.appMenu=new fo}},Eo=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}},go=class{constructor(){this.view=new Eo}},wo=d("FormNotifyState",(t=>(t.LOAD="LOAD",t.DRAFT="DRAFT",t.SAVE="SAVE",t))(wo||{})),Co=d("GridNotifyState",(t=>(t.LOAD="LOAD",t.DRAFT="DRAFT",t.SAVE="SAVE",t))(Co||{})),Do=d("PanelNotifyState",(t=>(t.LOAD="LOAD",t.DRAFT="DRAFT",t.SAVE="SAVE",t))(Do||{})),$s=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}}),vo=d("LoadingState",class{constructor(){this.isLoading=!1,this.counter=new $s(ha)}begin(){this.isLoading=!0,this.counter.increment()}end(){this.counter.decrement(()=>{this.isLoading=!1})}}),Io=d("CTXState",class{}),Ao=d("CTX",class{constructor(t){this.parent=t,this.isDestroyed=!1,this.evt=new gt(3e3),this.controllersMap=new Map,this.state=new Io}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}}),yo=d("ActivityCounter",class extends $s{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())}}),ft=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.noKeyDisabled=!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 Ht(this.uiActionId,this.appId);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,(s==="SINGLEKEY"||s==="MULTIKEY")&&(this.noKeyDisabled=!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.noKeyDisabled&&!t.srfkey)):(this.disabled=!0,this.visible=!this.noPermissionHidden)}}),mt=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 gt{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(),La(this.anyEventFns)}}),Po=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 Xe(t){return window.location.hash.split("/").length>t*2+2}function Ye(t,e){return(D(t)||t==="")&&(D(e)||e==="")?!1:t!==e}function Js(t){let e=Array.isArray(t)?t[0]:t;return e&&e instanceof j&&(e=e.getOrigin()),e}function qe(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{T.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:w}=Oe(u,p,o.groupCond);return E||h(new f(w||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(!D(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(!D(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}}),D(i)||e.push({validator:(n,o,u)=>{if(!D(o)&&De(o)&&o>i)u(new Error("\u503C\u5FC5\u987B\u5C0F\u4E8E\u7B49\u4E8E".concat(i)));else return!0}}),D(r)||e.push({validator:(n,o,u)=>{if(!D(o)&&De(o)&&o<r)u(new Error("\u503C\u5FC5\u987B\u5927\u4E8E\u7B49\u4E8E".concat(r)));else return!0}}),e}var bo=d("ValueExUtil",class{static mergeDefault(t){return Ie(t,{textSeparator:",",valueSeparator:","})}static toText(t,e){if(D(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 $e(t,e){var a;const{name:s,valueType:i,defaultValue:r,valueFormat:n}=t,{data:o,context:u,params:c}=e;if(D(i)&&D(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 N().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 G();default:throw new C({},"\u9ED8\u8BA4\u503C\u7C7B\u578B[".concat(i,"]\u672A\u652F\u6301"))}}}var So="asyncimportdata2",No="importdata2";function Ro(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 Lo(t,e,a){const s=new FormData;s.append("file",t);let i="".concat(e.codeName2.toLowerCase(),"/").concat(So);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 Ro(r.data.asyncacitonid),ibiz.mc.command.send({srfdecodename:e.codeName},"OBJECTCREATED")}async function To(t,e,a){const s=new FormData;s.append("file",t);let i="".concat(e.codeName2.toLowerCase(),"/").concat(No);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 Zs(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 Je="__self",ti=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 Po(this.getEventArgs.bind(this)),this.mountCounter=new yo(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(Je),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(Je)||this.mountCounter.attend(Je)}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)}}),Bo=class Ci{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=vt(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},w=this.getDeFieldName(p,n);w&&(E.sort="".concat(w,",asc"));const y=await Ci.fetchDataSet(i,a,E);if(!y.length)return[];const v=this.calcStaticMsg(e),P=this.getDeFieldName(p,o),b=this.getDeFieldName(p,h),A=this.getDeFieldName(p,l),R=this.getDeFieldName(p,c),z=this.getDeFieldName(p,u);return y.map(S=>{const at={};return b&&!D(S[b])&&(at.position=S[b]),P&&!D(S[P])&&(at.title=S[P]),A&&!D(S[A])&&(at.message=S[A]),R&&!D(S[R])&&(at.messageType=S[R]),z&&!D(S[z])&&(at.removeMode=S[z]),ve(v,at)})}},ei=d("ViewController",class extends ti{constructor(t,e,a,s){const i=ibiz.util.layoutPanel.fill(t);super(i,Ot.create({},e),a||{},new Ao(s)),this.session={},this.modal=new Mr({}),this.providers={},this.engines=[],this.slotProps={},this.counters={},this.viewLoading=new vo,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=Qa(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,appId:this.model.appId},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 Vs.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 ht(t);this.providers[t.name]=e;const a=Ya(this.model);a&&await Promise.all(a.map(async i=>{const r=await ht(i);this.providers[i.name||i.id]=r})),await this.initCounters();const s=qa(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,(D(this.context.srfsessionid)||B(this.context.srfsessionid))&&(this.context.srfsessionid=G());const t=this.model.appViewNavContexts;let e={};x(t)&&(e=F(t,this.params,this.context)),Object.assign(this.context,e);const a=this.model.appViewNavParams;let s={};x(a)&&(s=F(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 Bo(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)}}),Ac=d("MobViewController",class extends ei{}),yc=d("WFStepTraceViewController",class extends ei{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)}}}),Oo=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=F(s,t,a,e));const n=Object.assign(e.clone(),r);let o={};return i&&t&&(o=F(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 Oo{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"))}}),K=d("ControlController",class extends ti{constructor(t,e,a,s){if(super(t,Ot.create({},e),new pa({},a),s),this.controlParams={},this.providers={},this.registerToCtx(),this.controlPanel=Wa(t),!this.controlPanel){const i=ibiz.util.layoutPanel.get("".concat(t.controlType,"_DEFAULT"));i&&(this.controlPanel=I(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 ht(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=F(e,this.params,this.context)),Object.assign(this.context,s);let i={};x(a)&&(i=F(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=F(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=D(i.timeout)?void 0:i.timeout/1e3;const o={...this.getEventArgs()};e?.data&&(o.data=e.data),r=T.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)}}}),Q=d("MDControlController",class extends K{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,this.model.appId),(t=this.dataEntity.appDEFields)==null||t.forEach(a=>{this.fieldIdNameMap.set(a.id,a.name)});const e=this.onDataChange.bind(this);this.onDataChange=zt(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 ot(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;fa(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,this.model.appId),i=(t=s.appDEDataImports)==null?void 0:t.find(o=>o.id===a);if(!i)throw new f("\u65E0\u5BFC\u5165\u6A21\u578B\uFF01");let r="DataImport";i.enableCustomized&&(r="DataImport2");const n=ibiz.overlay.createModal(r,{dismiss:()=>n.dismiss(),appDataEntity:s},{width:"auto",placement:"center"});n.present(),await n.onWillDismiss()}async exportData(t){}}),_o=d("AppMenuController",class extends K{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();i.srfappid=s.appId,this.routeDepth&&a&&Object.assign(i,{toRouteDepth:this.routeDepth+1}),await ibiz.commands.execute(He.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}}),Pc=d("AppMenuIconViewController",class extends _o{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(He.TAG,a.appFuncId,s,this.params)}}),Mo=d("CalendarService",class extends tt{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 ao(s,i))}async exec2(t,e,a={},s={},i=this.model.appDataEntityId){return await this.app.deService.exec(i,t,e,a,s)}}),bc=d("CalendarController",class extends Q{initState(){super.initState(),this.state.selectedDate=new Date,this.state.size=1e3}async onCreated(){await super.onCreated(),this.service=new Mo(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 N(a).isAfter(s)?i=-1:N(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:N(i).format("YYYY-MM-DD HH:mm:ss"),srfenddate:N(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}});N.extend(Ii),N.extend(yi),N.extend(Pi),N.extend(Si),N.extend(Ri);var re="$default_group",It=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=Ze(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(D(e))return;if(D(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 co(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=re;if(this.groupField){const o=this.translateVal(a,i[this.groupField]);if(D(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=Ut(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!==re&&(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[re].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(I(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=N(s[this.catalogField]).format(i);s[this.catalogField]=r}}else if(a==="QUARTER"){if(s[this.catalogField]){const r="".concat(N(s[this.catalogField]).format("YYYY"),"-").concat(N(s[this.catalogField]).quarter());s[this.catalogField]=r}}else if(a==="YEARWEEK"&&s[this.catalogField]){const r="".concat(N(s[this.catalogField]).format("YYYY"),"-").concat(N(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)=>N(n).diff(N(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(N(o))})});const s=N.max(a),i=N.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=N("".concat(l,"-12-31")).isoWeek();for(let p=1;p<=h;p++){const E="".concat(l,"-").concat(p);Object.keys(t).forEach(w=>{t[w].get(E)||t[w].set(E,{value:0})})}}}this.sortTimeData(t)}},xo=class extends It{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}},Vo=class extends It{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}},ko=class extends It{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}},Wo=class extends It{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}},Uo=class extends It{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}},zo=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}))}}},Go=class extends It{calcStaticOptions(){return super.calcStaticOptions()}calcRadarCoordSystem(t){const e=this.calcGroupData(t);this.chartGenerator.radarMap.has(this.catalogField)||this.chartGenerator.radarMap.set(this.catalogField,new zo(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===re?this.seriesName:r,value:o}});let i={...this.staticOptions,data:s};return this.seriesUserParam&&(i=Ct(i,this.seriesUserParam)),i}};function Ze(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 jo=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=Ze(r))}initSeriesGenerators(){var t;(t=this.model.dechartSerieses)==null||t.forEach(e=>{let a;switch(e.seriesType){case"line":a=new xo(e,this);break;case"bar":a=new Vo(e,this);break;case"scatter":a=new Uo(e,this);break;case"pie":a=new Wo(e,this);break;case"funnel":a=new ko(e,this);break;case"radar":a=new Go(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=>(typeof o=="number"&&(o=o.toString()),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=wt(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.model.appId),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=wt(this.staticOptions,this.options),this.chartUserParam&&(this.options=wt(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)}},Go=d("ChartService",class extends at{}),Fc=d("ChartController",class extends tt{initState(){super.initState(),this.state.size=1e3}async onCreated(){await super.onCreated(),this.service=new Go(this.model),await this.service.init(this.context),this.generator=new zo(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);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()}}),Pc=d("CaptionBarController",class extends K{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):"")})}}),jo=class{constructor(t,e){this.deLogicParams=t,this.parameters=e,this.params={},this.result=null,this.isEndNode=!1,this.defaultParamName="Default"}get view(){return this.parameters.view}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)}},ti=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=I(ibiz.env);break;default:throw new C(e,"\u6682\u672A\u652F\u6301\u6E90\u503C\u7C7B\u578B".concat(r))}if(o&&n)try{Array.isArray(o)?o=o[Number(n)]:o=T.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 Ko=class extends ti{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 J(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 J(s,this.op,i)}case"CURTIME":throw new C(this.model,"\u6682\u672A\u652F\u6301\u6761\u4EF6\u503C\u7C7B\u578B\u4E3A[\u5F53\u524D\u65F6\u95F4]");default:return J(s,this.op,this.value)}}},Ho=class wi extends ti{constructor(e){super(),this.model=e;const a=e.deuilogicLinkConds||[];this.conds=a.map(s=>s.logicType==="SINGLE"?new Ko(s):new wi(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}},Xo=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 Ho(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 C(this.model,"\u672A\u652F\u6301\u7684\u903B\u8F91\u8FDE\u63A5\u7C7B\u578B: \u5F02\u6B65\u7ED3\u675F");case 3:throw new C(this.model,"\u672A\u652F\u6301\u7684\u903B\u8F91\u8FDE\u63A5\u7C7B\u578B: \u5F02\u6B65\u62D2\u7EDD");case 9:throw new C(this.model,"\u672A\u652F\u6301\u7684\u903B\u8F91\u8FDE\u63A5\u7C7B\u578B: \u5F02\u5E38\u5904\u7406");default:throw new C(this.model,"\u672A\u652F\u6301\u7684\u903B\u8F91\u8FDE\u63A5\u7C7B\u578B:".concat(e))}}},_=class{constructor(t){this.model=t,this.links=(t.deuilogicLinks||[]).map(e=>new Xo(e))}},Yo=class extends _{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)}},qo=class extends _{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 W.execAndResolved(e,{...i,context:t.context,params:t.viewParam,data:r},this.model.appId)}},Qo=class extends _{async exec(t){}},$o=class extends _{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 C(this.model,"\u6682\u672A\u652F\u6301\u7684\u7ED3\u675F\u8282\u70B9\u8FD4\u56DE\u503C\u7C7B\u578B: ".concat(e))}}},Jo=class extends _{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 C(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{T.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]=I(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])}},Zo=class extends _{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]||!ba(r[e]))throw new f("\u6CA1\u6709\u627E\u5230\u8C03\u7528\u65B9\u6CD5".concat(e));await r[e](i)}},tu=class extends _{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}},eu=class extends _{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 C(this.model,"".concat(a,"\u6682\u672A\u652F\u6301"))}const c=await ibiz.modal.confirm(o);t.setLastReturn(u[c?0:1])}},au=class extends _{async exec(t){const e=await Is(this.model);e&&await e.exec(this.model,t)}},su=class extends _{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)}},iu=class extends _{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)}},ru=class extends _{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]=I(s)}},nu=class extends _{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))}},ou=class extends _{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])}},uu=class extends _{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)}},cu=class extends _{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)}},lu=class extends _{async exec(t){const{errorInfo:e}=this.model;throw new f(e)}},du=class extends _{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)}},hu=class extends _{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 Ws(e,a,t.context,r,t.params);i&&(t.params[i]=n)}},pu=class extends _{async exec(t){console.log(t),T.execScriptFn({view:t.view,context:t.context,params:t.viewParam,uiLogic:t.params},this.model.code||"",{isAsync:!1})}},fu=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 C(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 C(a,"\u672A\u652F\u6301\u7684\u903B\u8F91\u53C2\u6570\u7C7B\u578B: \u89C6\u56FE\u8DEF\u7531\u53C2\u6570");if(a.routeViewSessionParam)throw new C(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 C(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 C(a,"\u672A\u652F\u6301\u7684\u903B\u8F91\u53C2\u6570\u7C7B\u578B\u91CD\u65B0\u5EFA\u7ACB\u53D8\u91CF")}},mu=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 Qo(a);break;case"END":i=new $o(a);break;case"DEACTION":i=new Yo(a);break;case"DEUIACTION":i=new qo(a);break;case"PREPAREJSPARAM":i=new Jo(a);break;case"RESETPARAM":i=new iu(a);break;case"COPYPARAM":i=new ru(a);break;case"BINDPARAM":i=new tu(a);break;case"VIEWCTRLINVOKE":i=new Zo(a);break;case"MSGBOX":i=new eu(a);break;case"DEBUGPARAM":i=new su(a);break;case"APPENDPARAM":i=new nu(a);break;case"SORTPARAM":i=new ou(a);break;case"RENEWPARAM":i=new uu(a);break;case"DEDATASET":i=new cu(a);break;case"THROWEXCEPTION":i=new lu(a);break;case"VIEWCTRLFIREEVENT":i=new du(a);break;case"DELOGIC":i=new hu(a);break;case"PFPLUGIN":i=new au(a);break;case"RAWJSCODE":i=new pu(a);break;default:throw new C(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 fu(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 jo(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 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 Je.has(i)||Je.set(i,new mu(i)),await Je.get(i).exec(a),null}var W=d("UIActionUtil",class{static async exec(t,e,a){const s=await Kt(t,a);if(!s)throw new f("\u6CA1\u627E\u5230".concat(t,"\u7684\u754C\u9762\u884C\u4E3A\u6A21\u578B"));return s.actionTarget==="SINGLEDATA"&&await e.view.call("Validate")===!1?{cancel:!0}:(await Ds(s)).exec(s,e)}static async execAndResolved(t,e,a){var s,i;const r=await this.exec(t,e,a);if(r.closeView)e.view.modal.ignoreDismissCheck=!0,e.view.closeView({ok:!0});else if(r.refresh)switch(r.refreshMode){case 1:e.view.callUIAction("Refresh");break;case 2:(s=e.view.parentView)==null||s.callUIAction("Refresh");break;case 3:(i=e.view.getTopView())==null||i.callUIAction("Refresh");break}}}),ne=d("UIActionProviderBase",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,t.appId);else{const h=await this.doNextAction(t,l,t.appId);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 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,a){const s=t.nextId;if(s)return W.exec(s,e,a)}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(w=>({[o]:w.srfkey||w[o]})):[{}];break;case"SINGLEKEY":{const w=a[0]||{};i=r?[{[o]:w.srfkey||w[o]}]:[{}]}break}const u=e.clone(),c=[...t.navigateContexts||[]];if(r&&t.actionTarget!=="NONE"){const{valueItem:w,paramItem:y}=t,v=y||r,P=w||"srfkey";c.unshift({key:v,value:P,rawValue:!1})}const l=["MULTIKEY","MULTIDATA"].includes(t.actionTarget)&&a.length>0,h=F(c,l?Pe(c,a):a[0]||{},s,e);Object.assign(u,h);const p=t.navigateParams,E=F(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,T.execScriptFn(l,"`".concat(s,"`"),{isAsync:!1,singleRowReturn:!0})}}}),Eu=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: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 A=b.data.map(R=>{var z;return((z=R.getOrigin)==null?void 0:z.call(R))||R||{}});h.forEach(R=>{R.srfactionparam=A})}}const w=ibiz.hub.getApp(a?.srfappid),y=h.map(b=>{var A;return((A=b.getOrigin)==null?void 0:A.call(b))||b||{}}).map(b=>Object.assign(b,p)),v=["MULTIKEY","MULTIDATA"].includes(t.actionTarget),P=await w.deService.exec(o,u,c,v?y:y[0],p);if(P.ok){const b=this.calcMessage("success",t,e);b&&ibiz.message.success(b)}return Object.assign(n,{data:zt(P.data)?P.data:[P.data],nextContext:c,nextParams:p}),n}}),gu=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)||{}}}),wu=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=pa.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 C(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,view:o}=e;if(a)return T.execScriptFn({context:s,params:i,data:r,el:n?.target,view:o},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,i;const{resultContext:r,resultParams:n}=await this.handleParams(t,e.context,e.data,e.params),o=await ibiz.hub.getAppDataEntity(t.appDataEntityId,t.appId),u=(a=o.appDEPrints)==null?void 0:a.find(c=>c.id===t.appDEPrintId);if(u){let c="";if(r&&r[o.codeName.toLowerCase()])c+="/".concat((s=o.codeName2)==null?void 0:s.toLowerCase(),"/printdata/").concat(r[o.codeName.toLowerCase()]);else throw new f("\u6CA1\u6709\u627E\u5230\u6570\u636E\u4E3B\u952E");const l=await ibiz.net.request(c,{method:"get",responseType:"blob",params:{srfprinttag:u.codeName,...n}});if(l.ok)if(n&&n.srfcontenttype){const p=(i=l.headers["content-disposition"].split(";").find(y=>y.indexOf("filename=")!==-1))==null?void 0:i.slice(9),E=URL.createObjectURL(l.data),w=document.createElement("a");w.href=E,w.download=p,document.body.appendChild(w),w.click(),document.body.removeChild(w),URL.revokeObjectURL(E)}else{const h=window.URL.createObjectURL(l.data);window.open(h,"_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,t.appId),i=(a=s.appDEDataImports)==null?void 0:a.find(n=>n.id===t.appDEDataImportId);let r="DataImport";if(i&&i.enableCustomized&&(r="DataImport2"),i){const n=ibiz.overlay.createModal(r,{dismiss:()=>n.dismiss(),appDataEntity:s,dataImport:i},{width:"auto",placement:"center"});return n.present(),await n.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,t.appId),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 h=new Blob([c.data],{type:"application/vnd.ms-excel"}),p=document.createElement("a");p.download=l,p.style.display="none",p.href=URL.createObjectURL(h),document.body.appendChild(p),p.click(),URL.revokeObjectURL(p.href),document.body.removeChild(p)}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 ei(){const t=new wu;bt("FRONT",()=>t);const e=new Eu;bt("BACKEND",()=>e);const a=new gu;bt("SYS",()=>a);const s=new Cu;bt("DEUIACTION_WFWithdraw",()=>s)}var Du=d("ToolbarController",class extends K{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 Kt(s,t.appId);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 W.execAndResolved(s,{...u,data:o,event:e},t.appId)}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 j&&(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){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)}}),vu=d("ContextMenuController",class extends Du{}),bc=d("DashboardController",class extends K{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=Qs(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 gs(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)))}}),Sc=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 Nt(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}}),Iu=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}=jt(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 Iu}onDataChange(t){let e=t.data[0];e&&e instanceof j&&(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 W.execAndResolved(s,{context:this.dashboard.context,params:this.dashboard.params,data:a,view:this.dashboard.view,event:e},t.appId)}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=Ct(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)}}),Nc=d("ContainerPortletController",class extends ut{}),Rc=d("ViewPortletController",class extends ut{}),Lc=d("MenuPortletController",class extends ut{}),Tc=d("ChartPortletController",class extends ut{}),Bc=d("ActionBarPortletController",class extends ut{}),Oc=d("HtmlPortletController",class extends ut{}),_c=d("ListPortletController",class extends ut{}),Mc=d("RawItemPortletController",class extends ut{}),ai=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 X(a,r,{isOriginField:!0,dataType:e.dataType})}else i=new X(a,a);this.dataUIMap.set(a,i)})}}),Au=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 ai(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 j&&(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 W.execAndResolved(s,{context:this.context,params:this.params,data:[e],view:this.view,event:a},t.appId)}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];D(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};W.execAndResolved("new",{context:this.context,params:a,data:[],view:this.view,event:t},this.view.model.appId)}async onGroupToolbarClick(t,e,a){const s=t.uiactionId,i={...this.params,srfgroup:a.key};await W.execAndResolved(s,{context:this.context,params:i,data:a.selectedData||[],view:this.view,event:e},t.appId)}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 K{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&&Ke(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}=Gt(c,l),E=Object.assign(a.clone(),h,{currentSrfNav:e[this.navKeyName]});this.state.srfnav=e[this.navKeyName];const w={...p};return{context:E,params:w}}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())}}),xc=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}}}),Vc=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)}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)}}),kc=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=F(u,e,s,r),h=F(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}}}),si=d("FormController",class extends K{constructor(){super(...arguments),this.details={},this.providers={},this.formItems=[],this.formMDCtrls=[]}get _evt(){return this.evt}get data(){return this.state.data}initState(){super.initState(),this.state.data=new j,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 ls(s);if(!i)return;e.providers[s.id]=i;const r=await i.createController(s,e,a);if(e.details[s.id]=r,s.detailType==="FORMITEM"&&e.formItems.push(r),s.detailType==="MDCTRL"&&e.formMDCtrls.push(r),Ka(s))return;const n=ja(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)&&!He(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 updateFormItem(t){}async validate(){return(await Promise.all([...this.formItems,...this.formMDCtrls].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)}}),yu=d("SearchFormService",class extends Rt{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 X(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}}),Wc=d("SearchFormController",class extends si{initState(){super.initState(),this.state.storedFilters=[]}async onCreated(){var t,e;await super.onCreated(),this.config=new Nt(this.model.appId,"dynafilter","searchform_".concat(((t=this.model.appDataEntityId)==null?void 0:t.toLowerCase())||"app","_").concat((e=this.model.codeName)==null?void 0:e.toLowerCase())),this.preprocessLayoutPanel(),this.service=new yu(this.model),await this.service.init(this.context),await this.load(),await this.loadConfig()}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)}async loadConfig(){const t=await this.config.load();t.model&&(this.state.storedFilters=t.model)}async saveConfig(){await this.config.save({model:this.state.storedFilters})}async storeFilter(t){this.state.storedFilters.push({name:t,data:{...this.data}}),await this.saveConfig()}applyStoredFilter(t){const e=this.state.storedFilters[t];if(!e)throw new f("\u6CA1\u6709\u627E\u5230\u53EF\u4EE5\u5E94\u7528\u7684\u641C\u7D22\u6761\u4EF6");e.data&&Object.assign(this.data,e.data),this.search()}async removeStoredFilter(t){if(!this.state.storedFilters[t])throw new f("\u6CA1\u6709\u627E\u5230\u4FDD\u5B58\u7684\u641C\u7D22\u6761\u4EF6");this.state.storedFilters.splice(t,1),await this.saveConfig()}}),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}})}}),Fu=d("FormDetailEventName",(t=>(t.CLICK="onClick",t.FOCUS="onFocus",t.BLUR="onBlur",t.CHANGE="onChange",t.ENTER="onEnter",t))(Fu||{})),Pu=d("PanelItemEventName",(t=>(t.CLICK="onClick",t.FOCUS="onFocus",t.BLUR="onBlur",t.CHANGE="onChange",t.ENTER="onEnter",t))(Pu||{})),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 context(){return this.form.context}get params(){return this.form.params}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}=jt(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.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=Ct(this.model.dynaClass,t);e.length&&(this.state.class.containerDyna=e)}if(this.model.labelDynaClass){const e=Ct(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})}}),bu=d("FormButtonState",class extends it{constructor(){super(...arguments),this.loading=!1}}),Uc=d("FormButtonController",class extends ct{createState(){var t;return new bu((t=this.parent)==null?void 0:t.state)}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 W.execAndResolved(e,{context:this.form.context,params:this.form.params,data:[this.data],view:this.form.view,event:t,noWaitRoute:!0},this.model.appId)}async doFormItemUpdate(){this.model.deformItemUpdateId&&await this.form.updateFormItem(this.model.deformItemUpdateId)}}),Su=d("FormDruipartState",class extends it{constructor(){super(...arguments),this.showMask=!1}}),zc=d("FormDRUIPartController",class extends ct{constructor(){super(...arguments),this.refreshItems=["srfkey"],this.paramItem="srfkey",this.isNewData=!1}createState(){var t;return new Su((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,F(e,this.data,this.form.params,this.form.context)));const a=F(this.model.navigateParams,this.data,this.form.params,this.form.context);if(!this.state.viewComponentKey)this.state.viewComponentKey=G(),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))})}}),ii=d("FormGroupPanelState",class extends it{constructor(){super(...arguments),this.isShowMore=!1,this.actionGroupState=null}}),Nu=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 ii((t=this.parent)==null?void 0:t.state)}async onInit(){super.onInit(),await this.initActionStates()}async formStateNotify(t){if(super.formStateNotify(t),this.state.actionGroupState){const e=this.data.getOrigin?this.data.getOrigin():this.data;this.state.actionGroupState.update(e)}}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 W.execAndResolved(a,{context:this.form.context,params:this.form.params,data:[this.data],view:this.form.view,event:e},t.appId)}}),Ru=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}})}}),Gc=d("FormItemController",class extends ct{constructor(t,e,a){super(t,e,a),this.rules=[]}createState(){var t;return new Ru((t=this.parent)==null?void 0:t.state)}get name(){return this.model.id}get value(){return this.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 $t(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(...Xe(t,this.name,this.valueItemName)),this.model.editor&&this.rules.push(...Ye(this.model.editor)),this.rules.length>0&&(this.validator=new Ae({[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("FormMDCtrlController",class extends ct{get context(){return this.form.context}get params(){return this.form.params}get enableCreate(){return Vt.checkPermission(this.model.buildInActions,1)}get enableUpdate(){return Vt.checkPermission(this.model.buildInActions,2)}get enableDelete(){return Vt.checkPermission(this.model.buildInActions,4)}async updateFormItem(){this.model.deformItemUpdateId&&await this.form.updateFormItem(this.model.deformItemUpdateId)}refresh(){}async validate(){return!0}}),jc=d("FormMDCtrlMDController",class extends ta{get name(){return this.model.id}async onInit(){await super.onInit();const{contentControl:t}=this.model;if(!t)throw new m(this.model,"\u591A\u6570\u636E\u90E8\u4EF6\u672A\u914D\u7F6E\u5185\u5BB9\u90E8\u4EF6");t.controlType==="GRID"&&kt(t,{enableRowEdit:this.enableCreate||this.enableUpdate,enableRowNew:this.enableCreate});const e=await dt(t);e&&(this.mdProvider=e)}setMDControl(t){this.mdController=t,t.evt.on("onSaveSuccess",()=>{this.updateFormItem()}),t.evt.on("onRemoveSuccess",()=>{this.updateFormItem()})}updateFormItem(){const t=this.mdController.state.items||[];return this.data[this.name]=t,super.updateFormItem()}remove(){this.mdController.remove()}create(){if(this.model.contentType==="GRID")this.mdController.newRow();else throw new C(this.model,"\u591A\u6570\u636E\u90E8\u4EF6\u7C7B\u578B".concat(this.model.contentType,"\u6682\u4E0D\u652F\u6301\u6DFB\u52A0\u6570\u636E"))}refresh(){this.mdController?this.mdController.refresh():ibiz.log.debug("mdController\u4E0D\u5B58\u5728")}async formStateNotify(t){await super.formStateNotify(t),this.refresh()}async dataChangeNotify(t){await super.dataChangeNotify(t),t.includes(this.model.id)&&this.refresh()}}),Lu=class extends it{},Kc=d("FormMDCtrlFormController",class extends ta{constructor(){super(...arguments),this.formMap=new Map}createState(){var t;return new Lu((t=this.parent)==null?void 0:t.state)}async onInit(){super.onInit();const{contentControl:t}=this.model;if(!t)throw new m(this.model,"\u591A\u6570\u636E\u90E8\u4EF6\u672A\u914D\u7F6E\u5185\u5BB9\u90E8\u4EF6");t.enableAutoSave=this.enableCreate||this.enableUpdate;const e=await dt(t);e&&(this.formProvider=e);const{appDataEntityId:a}=this.model.contentControl;this.deName=O(a)}async fetchData(){const{appDataEntityId:t}=this.model.contentControl,e="fetchdefault",a=await ibiz.hub.getApp(this.model.appId).deService.exec(t,e,this.context,this.params);a.ok&&(this.state.items=a.data.map(s=>{const i=this.context.clone();i[this.deName]=s.srfkey;const r={...this.params};return{id:s.srfkey,context:i,params:r}}))}async formStateNotify(t){await super.formStateNotify(t),await this.fetchData()}setFormController(t,e){this.formMap.set(t,e),e.evt.on("onSaveSuccess",a=>{const s=a.data[0],i=this.state.items.find(r=>r.id===t);i&&i.context[this.deName]!==s.srfkey&&(i.context[this.deName]=s.srfkey),this.updateFormItem()}),e.evt.on("onRemoveSuccess",()=>{this.updateFormItem()})}async remove(t){const e=this.formMap.get(t);if(!e)throw new f("\u6CA1\u6709\u627E\u5230\u5BF9\u5E94".concat(t,"\u7684\u8868\u5355\u63A7\u5236\u5668"));await e.remove();const a=this.state.items.findIndex(s=>s.id===t);a!==-1&&this.state.items.splice(a,1)}create(t){const e=this.context.clone(),a={...this.params};this.state.items||(this.state.items=[]);const s={id:G(),context:e,params:a};t!==void 0?this.state.items.splice(t,0,s):this.state.items.push(s)}refresh(){this.fetchData()}async dataChangeNotify(t){await super.dataChangeNotify(t),t.includes(this.model.id)&&this.refresh()}}),Hc=d("FormMDCtrlRepeaterController",class extends ta{constructor(){super(...arguments),this.repeaterStyle="MultiForm",this.isSingleData=!1}get name(){return this.model.id}get value(){return this.data[this.model.id]}async onInit(){switch(await super.onInit(),this.model.detailStyle){case"DEFAULT":this.repeaterStyle="MultiForm",this.isSingleData=!1;break;case"STYLE2":this.repeaterStyle="Grid",this.isSingleData=!1;break;case"STYLE3":this.repeaterStyle="SingleForm",this.isSingleData=!0;break;default:throw new C(this.model,"\u6682\u4E0D\u652F\u6301\u91CD\u590D\u5668\u6837\u5F0F".concat(this.model.detailStyle))}this.prepareRepeatedForm()}prepareRepeatedForm(){const t="".concat(this.model.id,"repeatedform"),e={appId:this.model.appId,id:t,codeName:t,name:t,deformPages:[{appId:this.model.appId,id:"formpage1",deformDetails:this.model.deformDetails,detailType:"FORMPAGE",detailStyle:"DEFAULT",layout:this.model.layout}]};["appId","controlType","deformItemVRs"].forEach(s=>{e[s]=this.form.model[s]}),this.repeatedForm=I(e)}setValue(t){this.form.setDataValue(this.name,t)}create(t){if(this.isSingleData)this.setValue({});else{let e=this.value;e=e?[...e]:[],t!==void 0?e.splice(t,0,{}):e.push({}),this.setValue(e)}}remove(t){if(this.isSingleData){this.setValue(null);return}const e=this.value.filter((a,s)=>t!==s);this.setValue(e)}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.setValue(null),t.includes(this.name)&&await this.updateFormItem()}}),Tu=d("FormPageState",class extends ii{}),Xc=d("FormPageController",class extends Nu{createState(){var t;return new Tu((t=this.parent)==null?void 0:t.state)}}),Bu=d("FormRawItemState",class extends it{}),Yc=d("FormRawItemController",class extends ct{createState(){var t;return new Bu((t=this.parent)==null?void 0:t.state)}}),Ou=d("FormTabPageState",class extends it{}),qc=d("FormTabPageController",class extends ct{createState(){var t;return new Ou((t=this.parent)==null?void 0:t.state)}}),_u=d("FormTabPanelState",class extends it{}),Qc=d("FormTabPanelController",class extends ct{createState(){var t;return new _u((t=this.parent)==null?void 0:t.state)}}),Mu=d("EditFormService",class extends Rt{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 j?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 j?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 j?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 j?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 j?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 X(s,i,{isOriginField:!0,dataType:a.dataType}):r=new X(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}}),$c=d("EditFormController",class extends si{get view(){return this.ctx.view}async onCreated(){await super.onCreated(),this.service=new Mu(this.model),await this.service.init(this.context),this.autoSave=Ut(this.autoSave.bind(this),500,{trailing:!0})}async onMounted(){await super.onMounted(),!this.state.isSimple&&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=I(this.context),e=I(this.params),s=(await ibiz.hub.getAppDataEntity(this.model.appDataEntityId,this.model.appId)).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=G(),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=I(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):kt(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 j,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&&kt(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=T.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)}}setSimpleData(t){const e={...t};this.formItems.forEach(a=>{Object.prototype.hasOwnProperty.call(e,a.name)||(e[a.name]=null)}),this.state.modified=!1,this.state.data=e,this.state.isLoaded?this.dataChangeNotify(Object.keys(this.state.data)):(this.formStateNotify("LOAD"),this.state.isLoaded=!0)}}),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 T.execScriptFn({data:t.data},this.deGridDataItem.scriptCode,{singleRowReturn:!0,isAsync:!1})}}),ri=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}})}}),ni=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 X(a,r,{isOriginField:!0,dataType:e.dataType})}else i=new X(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}}),xu=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 ni(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 ri(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 ri(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 Ue(t);if(!a)return;this.providers[t.codeName]=a;const s=await a.createController(t,this);this.columns[t.codeName]=s,t.columnType==="DEFGRIDCOLUMN"||t.columnType==="DEFTREEGRIDCOLUMN"?(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)&&!He(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=I(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=T.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=I(u.map(p=>p.getOrigin()));return h.forEach(p=>{Object.keys(p).forEach(w=>{var y;l.get(w)&&(p[w]=((y=l.get(w).find(v=>v.value===p[w]))==null?void 0:y.text)||p[w])})}),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,w=c==="customPage"?{page:0,offset:(p-1)*h,size:(E-p+1)*h}:{size:1e3,page:0};l=await this.loadData({viewParam:w})}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 $s(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}async onRowClick(t){this.setSelection([t]),this.state.mdctrlActiveMode===1&&await this.setActive(t)}}),Vu=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=Ut(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=F(i,t,a,e));const o=Object.assign(e.clone(),n);let u={};r&&t&&(u=F(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 C(this.model,"\u672A\u5728\u884C\u6570\u636E\u4E2D\u53D6\u5230 ".concat(s," \u7684\u503C"));const{linkAppViewId:r}=this.model;if(!r)return;const n=ts(t.data),o=Object.assign(this.context.clone(),{srfkey:i,...n}),u=I(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 W.execAndResolved(a,{context:this.context,params:this.params,data:[t.data],view:this.grid.view,event:e},this.model.appId)}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=>!D(u[r]));let n;if(this.grid.model.aggMode==="PAGE")switch(a){case"SUM":n=t.map(u=>u[r]).reduce((u,c)=>Wt(u,c),0);break;case"AVG":n=t.map(u=>u[r]).reduce((u,c)=>Wt(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 C(this.model,"\u6682\u672A\u652F\u6301\u5C5E\u6027\u5217\u805A\u5408\u6A21\u5F0F".concat(a))}else throw this.grid.model.aggMode==="ALL"?new C(this.model,"\u8FDC\u7A0B\u805A\u5408\u6682\u672A\u652F\u6301"):new C(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 Fo.toText(this.model,t);const e="".concat(t);if(!this.valueFormat)return e;if(Ot.isDate(this.dataType)){const s=N(e).format(this.valueFormat);return s!=="Invalid Date"?s:e}return ibiz.util.text.format(e,this.valueFormat)}}),Jc=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 W.execAndResolved(s,{context:this.context,params:this.params,data:[e.data],view:this.grid.view,event:a},t.appId)}}),Zc=d("GridFieldEditColumnController",class extends Vu{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 $t(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(...Xe(t,this.fieldName,this.valueItemName)),this.editItem.editor&&this.rules.push(...Ye(this.editItem.editor)),this.rules.length>0&&(this.validator=new Ae({[this.fieldName]:this.rules}))}async setRowValue(t,e,a){a=a||this.fieldName,await this.grid.setRowValue(t,a,e)}async dataChangeNotify(t,e){const{resetItemNames:a}=this.editItem;let s=!1;a&&a.length>0&&a.forEach(n=>{e.includes(n)&&(s=!0)}),s&&this.setRowValue(t,null),this.calcColumnDisabled(t);const i=t.editColStates[this.fieldName].required;if(this.calcColumnRequired(t),(i!==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}}),tl=d("GridGroupColumnController",class extends ea{}),ku=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 X(a,r,{isOriginField:!0,dataType:e.dataType})}else i=new X(a,a);this.dataUIMap.set(a,i)})}}),el=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 ku(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 K{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 fs(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=$a(this.model),a=e.map(i=>i.id),s=new ro(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)}}),al=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||[]))}}),Uu=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}})}}),sl=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}=jt(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 Uu((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=Yt(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=Ct(this.model.dynaClass,t);e.length&&(this.state.class.containerDyna=e)}if(this.model.labelDynaClass){const e=Ct(this.model.labelDynaClass,t);e.length&&(this.state.class.labelDyna=e)}}onClick(){this.panel.evt.emit("onPanelItemEvent",{panelItemName:this.model.id,panelItemEventName:"onClick"})}}),il=d("PickupViewPanelController",class extends K{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,F(t,this.params,this.context)),e&&Object.assign(s,F(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")}}),zu=class{constructor(t,e){this.model=t,this.searchBar=e;var a;let s;t.appDEFieldId&&(s=Dt(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 $t(this.model.editor),this.editorProvider&&(this.editor=await this.editorProvider.createController(this.model.editor,this))}},rl=d("SearchBarController",class extends K{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=T.execSingleLine(this.state.selectedGroupItem.data),i=F(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 zu(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&&!D(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))}}}),nl=d("TabExpPanelController",class extends K{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&&Ke(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}=Gt(n,o),l=Object.assign(this.context.clone(),u,{currentSrfNav:this.state.activeName}),h={...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}}}),oi=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=Ne(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 C(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 w=await this.fetchChildNodes(h,s);h.children=w}})),n}async getStaticNodeData(t,e,a,s){return new Zn(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,w;if(p){h=p.deData||{};const P=Re(this.model,p.nodeId);P.appDataEntityId&&(w=O(P.appDataEntityId)),E=p.value}const{resultContext:y,resultParams:v}=Gt({deName:w,navFilter:n?"n_".concat(n.toLowerCase(),"_eq"):void 0,pickupDEFName:u,navParams:r,navContexts:i},{derValue:E,context:l,params:c,data:h});return Object.assign(l,y),Object.assign(c,v),{context:l,params:c,navContext:y,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 Ks(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 Jn(t,a,{data:l,leaf:!!s.leaf,navContext:n,navParams:o})):[]}}),ol=d("TreeController",class extends tt{constructor(){super(...arguments),this.contextMenus={},this.enableQuickSearch=!1}initState(){super.initState(),this.state.defaultExpandedKeys=[],this.state.expandedKeys=[],this.state.navigational=!1,this.state.size=0,this.state.query=""}async onCreated(){var t,e;if(await super.onCreated(),this.state.expandedKeys=[...this.state.defaultExpandedKeys],(t=this.model.detreeNodes)!=null&&t[0].enableQuickSearch&&(this.enableQuickSearch=!0),this.dataEntity){const a=(e=this.dataEntity.appDEFields)==null?void 0:e.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"))}this.service=new oi(this.model),await this.service.init(this.context),this.model.detreeNodes.forEach(a=>{var s,i;(i=(s=a.decontextMenu)==null?void 0:s.detoolbarItems)!=null&&i.length&&(this.contextMenus[a.decontextMenu.id]=new vu(a.decontextMenu,this.context,this.params,this.ctx))}),await Promise.all(Object.values(this.contextMenus).map(a=>a.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 getFetchParams(t){const e=await super.getFetchParams(t);return this.state.query&&(e.query=this.state.query),e}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,s){const i=this.getEventArgs(),r=this.parseTreeNodeData(e),n=await W.exec(t,{...i,...r,event:a},s);if(n.closeView)this.view.closeView();else if(n.refresh)switch(n.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)))}}),Gu=d("WizardPanelService",class extends Rt{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}}),ul=d("WizardPanelController",class extends K{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 Gu(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]):(this.tagHistory.pop(),e=this.tagHistory[this.tagHistory.length-1]),!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 a=this.model.dewizard.dewizardSteps,s=this.model.dewizard.dewizardForms;if(a&&s){const i=a.findIndex(o=>o.id===this.activeWizardForm.dewizardStepId),r=a[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()}}),ju=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 X(a,r,{isOriginField:!0,dataType:e.dataType})}else i=new X(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}}),cl=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 ju(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 W.execAndResolved(s,{context:this.context,params:this.params,data:[e.data],view:this.view,event:a},t.appId)}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];D(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}}),Ku=d("KanbanService",class extends ai{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}}),ll=d("KanbanController",class extends Au{get enableEditOrder(){return this.model.enableCardEditOrder===!0}get enableEditGroup(){return this.model.enableCardEditGroup===!0}async initControlService(){this.service=new Ku(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(D(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(A=>A.key===a),l=this.state.groups.find(A=>A.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 A=c.children[i];return A[n]=t.to,this.updateChangedItems([A])}const h=A=>A+(100-A%100),p=[...l.children],E=[...l.children],w=c.children[i];t.from!==t.to?(w[n]=t.to,E.splice(r,0,w)):(E.splice(i,1),E.splice(r,0,w));const y=c.children.splice(i,1);l.children.splice(r,0,...y),e||(p.reverse(),E.reverse());let v,P=[],b;E.forEach((A,R)=>{v===void 0?A!==p[R]&&(p[R]?v=p[R][o]||100:v=R===0?100:h(p[R-1][o]),A[o]=v,u.push(A)):(v>=A[o]?(P.length>0&&(P.forEach(z=>{z[o]=h(b),u.push(z),b=z[o]}),v=b,b=0,P=[]),A[o]=h(v),u.push(A)):(P.length===0&&(b=v),P.push(A)),v=A[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)}}}),Hu=d("TreeGridExService",class extends oi{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 X(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 Ks(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&&(zt(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 j(t,a)}}),dl=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 Hu(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 Ue(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}}),hl=d("TreeGridController",class extends xu{}),pl=d("TreeGridService",class extends ni{}),Xu=d("MEditViewPanelService",class extends at{}),fl=d("MEditViewPanelController",class extends tt{constructor(){super(...arguments),this.parameters=[]}async onCreated(){await super.onCreated(),this.service=new Xu(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.appId);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(G()),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)}}),Yu=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=T.execSingleLine(u);if(p){const{navigateContexts:E,navigateParams:w}=be(p);E&&Object.assign(c,F(E,e,t)),w&&Object.assign(l,F(E,e,t))}}const h=await i.deService.exec(n,o,c,l);h.data&&s.push(...h.data.map(p=>new so(p,r)))}))}return new L(s,200)}}),ml=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 Yu(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]})}}),qu=d("ReportPanelService",class extends Rt{async fetch(t,e={}){var a;this.dataEntity=await ibiz.hub.getAppDataEntity(this.model.appDataEntityId,this.model.appId);const s="".concat((a=this.dataEntity.codeName2)==null?void 0:a.toLowerCase(),"/report?srfreporttag=").concat(this.model.codeName);let i=await ibiz.net.request(s,{method:"post",data:e});return i=this.handleResponse(i),i}}),ui=class{constructor(t){this.config={},this.model=t,this.setConfig()}setConfig(){}init(t){this.protoRef=t}load(t){return Promise.resolve(t)}},Qu=class extends ui{setConfig(){this.config={CONFIG:{fitView:!0,minZoom:.002,layout:{type:"force",preventOverlap:!0,linkDistance:200,nodeSize:80,nodeSpacing:30}},NODELEGENDCONFIG:{valueField:"source_lables||target_lables",selected:"{{return Object.is(data.source_lables, 'NEO4J_ZT') || Object.is(data.target_lables, 'NEO4J_ZT')}}",codeListTag:"web.nodetype"},EDGELEGENDCONFIG:{valueField:"relationship_type",codeListTag:"web.relationshiptype"},PLUGINCONFIG:{gridConfig:{},miniMapConfig:{}},HOOKS:{g6Hooks:[{name:"afterrender",callBack:"{{ const nodes = data.controller.graph.getNodes(); if (nodes.length < 25) { data.controller.graph.zoomTo(1); data.controller.graph.fitCenter() } }}"}],nodeDataHook:"{{ data.forEach(node => { const type = node.data.source_lables || node.data.target_lables; Object.assign(node, { label: node.data.name, size: 66, style: { fill: node.color },donutAttrs: { prop1: 10000, prop2: 10 },donutColorMap: { prop1: node.color, prop2: node.color },icon: {show: true,img: type === 'NEO4J_ZT' ? './assets/images/user-avatar.png' : './assets/images/phone.png',width: 40,height: 40}})})}}",edgeDataHook:"{{ data.forEach(edge => {Object.assign(edge, { label: edge.name })}) }}"}}}load(t){return this.protoRef&&this.protoRef.setData(t),Promise.resolve(t)}},$u=class extends ui{},Ju=class{static getInstance(t){if(!t||!t.appDEReport||!t.appDEReport.reportType)throw new Error("\u62A5\u8868\u9762\u677F\u751F\u6210\u5668\u5DE5\u5382\u53C2\u6570\u9519\u8BEF\uFF0C\u62A5\u8868\u9762\u677F\u672A\u6307\u5B9A\u62A5\u8868\u7C7B\u578B");switch(t.appDEReport.reportType){case"USER":return new Qu(t);case"USER2":return new $u(t);default:throw new Error("\u6307\u5B9A\u62A5\u8868".concat(t.appDEReport.reportType,"\u7C7B\u578B\u62A5\u8868\u9762\u677F\u751F\u6210\u5668\u6682\u672A\u5B9E\u73B0"))}}},El=d("ReportPanelController",class extends K{get _evt(){return this.evt}initState(){super.initState(),this.state.data={},this.state.searchParams={},this.state.reportType=this.model.appDEReport&&this.model.appDEReport.reportType||""}async onCreated(){await super.onCreated(),this.generator=Ju.getInstance(this.model),this.dataEntity=await ibiz.hub.getAppDataEntity(this.model.appDataEntityId,this.model.appId),this.service=new qu(this.model),await this.service.init(this.context)}async onMounted(){await super.onMounted(),this.state.loadDefault&&this.load({isInitialLoad:!0})}onDestroyed(){return super.onDestroyed()}async load(t={}){await this.startLoading();try{const{context:e}=this.handlerAbilityParams(t),a=await this.getFetchParams(t?.viewParam),s=await this.service.fetch(e,a);this.state.data=s.data,await this.afterLoad(t,s.data),this.state.isLoaded=!0,await this._evt.emit("onLoadSuccess",void 0)}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.data}async afterLoad(t,e){return e}async getFetchParams(t){const e={...this.params};return await this._evt.emit("onBeforeLoad",void 0),Object.assign(e,{...this.state.searchParams}),t&&Object.assign(e,t),e}getData(){return[this.state.data]}async refresh(){await this.load({isInitialLoad:!1})}}),Zu=d("HubController",class{constructor(){this.session={}}login(t,e){return ibiz.auth.login(t,e)}logout(){return ibiz.auth.logout()}}),tc=class{constructor(){this.convert=new po,this.controller=new Zu,this.appMap=new Map,this.view2appMap=new Map,this.views=new Map,this.dataEntities=new Map,this.config=new mo,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}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);if(!this.modelLoaderProvider)throw new f("\u8BF7\u5148\u6CE8\u518C\u6A21\u578B\u52A0\u8F7D\u9002\u914D\u5668");const e=await this.modelLoaderProvider.getApp(t),a=new lo(e);return this.appMap.set(t,a),await this.modelLoaderProvider.initApp(t),await a.init(),this.configCache||(this.configCache=new Nt(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)}},ec=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)}}),ac=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||""}))}}),gl=d("MDViewEngine",class extends ac{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=I(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)}}}),sc=class{handle(t){return t instanceof m||t instanceof C?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}},ic=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)}},rc=class{constructor(){this.layoutPanel=new Fr,this.theme=new Mr,this.text=new _r,this.hbs=new $i,this.rawValue=new xr,this.action=W,this.error=new ic,this.error.register(new sc)}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(){}},nc=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 C(t,"\u903B\u8F91\u7C7B\u578B ".concat(t.logicType," \u6682\u672A\u652F\u6301\uFF01"));return a(t,e)}},oc=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=T.createScriptFn(t,s,a),this.initialized=!0}execute(t){const e=this.convertScriptArgs(t);return this.scriptFn.exec(e)}},ci=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");re(e,a,t)}},li=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)}},uc=class extends li{constructor(t){const e=t.filter(a=>a.triggerType!=="APPVIEWENGINE");e.forEach(a=>{a.triggerType==="CTRLEVENT"&&(a.ctrlName=a.itemName||a.logicTag)}),super(e)}},cc=class extends li{constructor(t){t.forEach(e=>{e.triggerType=e.logicTrigger}),super(t)}triggerViewEvent(t){const e={eventName:t.eventName,triggerType:"VIEWEVENT"};this.triggerAndExecute(e,t)}},lc=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 C(t,"\u89E6\u53D1\u5668\u7C7B\u578B ".concat(t.triggerType," \u6682\u672A\u652F\u6301\uFF01"));return a(t,e)}},dc=class{constructor(){this.executorFactory=new nc,this.triggerFactory=new lc}createViewScheduler(t){return new cc(t)}createControlScheduler(t){return new uc(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}},hc=class extends Tt{},aa=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)}},pc=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)}},fc=class extends ue{async execute(t){let e;try{this.logic.id==="opendata"&&this.logic.builtinAppUILogic?e=await this.executeOpenDataAppUILogic(this.logic.builtinAppUILogic,t):this.logic.id==="newdata"&&this.logic.builtinAppUILogic&&(e=await this.executeNewDataAppUILogic(this.logic.builtinAppUILogic,t))}catch(a){ibiz.log.error(a)}return e}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,F(c,r[0],s,a));let h={};const p=o.navigateParams;return x(p)&&(h=F(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,e.view.model.appId),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),A=t.batchAddAppViews;if(h=A?.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 C(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 w=r?.[0]||{},y=h.navigateContexts;x(y)&&(p=F(y,w,s,a)),p=Object.assign(a,p);const v=h.navigateParams;if(x(v)&&(E=F(v,w,s,a)),s.srfcopymode){const A=(await ibiz.hub.getAppDataEntity(n.model.appDataEntityId,n.model.appId)).keyAppDEFieldId;A&&w&&(E[A]=w.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=>{var E;return((E=p.refMode)==null?void 0:E.toUpperCase())===l.toUpperCase()});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 w of p){const[y,v]=w.split(":");y&&v&&(E[y]=v)}l=e.map(w=>{const y={[u]:w.srfkey};for(const v in E)if(Object.prototype.hasOwnProperty.call(E,v)){const P=E[v];Object.prototype.hasOwnProperty.call(w,v)&&(y[P]=w[v])}return y})}else l=e.map(p=>({[u]:p.srfkey}));await ibiz.hub.getApp(a.srfappid).deService.exec(r.id,"Create",a,l)}}},mc=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=>_e[s]||s)}match(t){return super.match(t)&&this.listenEventNames.includes(t.eventName)}},Ec=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=>U[s]||s)}match(t){return super.match(t)&&t.ctrlName.toLowerCase()===this.logic.ctrlName.toLowerCase()&&this.listenEventNames.includes(t.eventName)}},gc=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");W.execAndResolved(this.logic.appDEUIActionId,t,this.logic.appId)}};function wc(){ibiz.scheduler=new dc,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 pc(t,e)),ibiz.scheduler.triggerFactory.register("CUSTOM",(t,e)=>new hc(t,e)),ibiz.scheduler.triggerFactory.register("VIEWEVENT",(t,e)=>new mc(t,e)),ibiz.scheduler.triggerFactory.register("CTRLEVENT",(t,e)=>new Ec(t,e)),ibiz.scheduler.executorFactory.register("SCRIPT",(t,e)=>new oc(t,e)),ibiz.scheduler.executorFactory.register("APPDEUILOGIC",(t,e)=>new ci(t,e)),ibiz.scheduler.executorFactory.register("DEUILOGIC",(t,e)=>new ci(t,e)),ibiz.scheduler.executorFactory.register("APPUILOGIC",(t,e)=>new fc(t,e)),ibiz.scheduler.executorFactory.register("APPDEUIACTION",(t,e)=>new gc(t,e))}function Cc(){const{ibiz:t}=window;t.util=new rc,t.hub=new tc,t.register=new Ri,t.config=new Ni,t.auth=new Fn,t.asyncAction=new Pn,t.engine=new ec,Ys(),ei(),js(),Bs(),wc(),an(),t.platform=Ns()}var wl=d("PluginStaticResource",class{constructor(t){this.styleElementMap=new Map,this.url=new URL(t),this.baseDir=ye.dirname(this.url.pathname)}dir(t){return this.url.origin+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)}}}),Cl=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,Ze(r))),e.push(n)}),e}async init(t,e){await this.loadCodeList(t,e),this.entity=await ibiz.hub.getAppDataEntity(this.model.appDataEntityId,this.model.appId),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)}},Ko=d("ChartService",class extends tt{}),Sc=d("ChartController",class extends Q{initState(){super.initState(),this.state.size=1e3}async onCreated(){await super.onCreated(),this.service=new Ko(this.model),await this.service.init(this.context),this.generator=new jo(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);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()}}),Nc=d("CaptionBarController",class extends K{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):"")})}}),Ho=class{constructor(t,e){this.deLogicParams=t,this.parameters=e,this.params={},this.result=null,this.isEndNode=!1,this.defaultParamName="Default"}get view(){return this.parameters.view}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)}},ai=class{};function it(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=I(ibiz.env);break;default:throw new C(e,"\u6682\u672A\u652F\u6301\u6E90\u503C\u7C7B\u578B".concat(r))}if(o&&n)try{Array.isArray(o)?o=o[Number(n)]:o=T.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 Xo=class extends ai{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=it(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 Z(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=it(t,{srcDEUILogicParamId:this.srcParam,srcFieldName:this.value});return Z(s,this.op,i)}case"CURTIME":throw new C(this.model,"\u6682\u672A\u652F\u6301\u6761\u4EF6\u503C\u7C7B\u578B\u4E3A[\u5F53\u524D\u65F6\u95F4]");default:return Z(s,this.op,this.value)}}},Yo=class Di extends ai{constructor(e){super(),this.model=e;const a=e.deuilogicLinkConds||[];this.conds=a.map(s=>s.logicType==="SINGLE"?new Xo(s):new Di(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}},qo=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 Yo(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 C(this.model,"\u672A\u652F\u6301\u7684\u903B\u8F91\u8FDE\u63A5\u7C7B\u578B: \u5F02\u6B65\u7ED3\u675F");case 3:throw new C(this.model,"\u672A\u652F\u6301\u7684\u903B\u8F91\u8FDE\u63A5\u7C7B\u578B: \u5F02\u6B65\u62D2\u7EDD");case 9:throw new C(this.model,"\u672A\u652F\u6301\u7684\u903B\u8F91\u8FDE\u63A5\u7C7B\u578B: \u5F02\u5E38\u5904\u7406");default:throw new C(this.model,"\u672A\u652F\u6301\u7684\u903B\u8F91\u8FDE\u63A5\u7C7B\u578B:".concat(e))}}},_=class{constructor(t){this.model=t,this.links=(t.deuilogicLinks||[]).map(e=>new qo(e))}},Qo=class extends _{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)}},$o=class extends _{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 W.execAndResolved(e,{...i,context:t.context,params:t.viewParam,data:r},this.model.appId)}},Jo=class extends _{async exec(t){}},Zo=class extends _{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 C(this.model,"\u6682\u672A\u652F\u6301\u7684\u7ED3\u675F\u8282\u70B9\u8FD4\u56DE\u503C\u7C7B\u578B: ".concat(e))}}},tu=class extends _{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 C(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=it(e,t);if(i)try{T.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=it(e,t);e.params[a]=I(s)}bindParam(t,e){const a=it(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=it(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])}},eu=class extends _{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)}},au=class extends _{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=it(t,this.model);t.params[e]=s}},su=class extends _{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 C(this.model,"".concat(a,"\u6682\u672A\u652F\u6301"))}const c=await ibiz.modal.confirm(o);t.setLastReturn(u[c?0:1])}},iu=class extends _{async exec(t){const e=await ys(this.model);e&&await e.exec(this.model,t)}},ru=class extends _{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)}},nu=class extends _{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)}},ou=class extends _{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=it(t,this.model);t.params[e]=I(s)}},uu=class extends _{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=it(t,this.model),o=s||0,u=i||0,c=r||n.length;t.params[e].splice(o,0,...n.slice(u,c))}},cu=class extends _{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])}},lu=class extends _{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)}},du=class extends _{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)}},hu=class extends _{async exec(t){const{errorInfo:e}=this.model;throw new f(e)}},pu=class extends _{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)}},fu=class extends _{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 zs(e,a,t.context,r,t.params);i&&(t.params[i]=n)}},mu=class extends _{async exec(t){console.log(t),T.execScriptFn({view:t.view,context:t.context,params:t.viewParam,uiLogic:t.params},this.model.code||"",{isAsync:!1})}},Eu=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 C(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 C(a,"\u672A\u652F\u6301\u7684\u903B\u8F91\u53C2\u6570\u7C7B\u578B: \u89C6\u56FE\u8DEF\u7531\u53C2\u6570");if(a.routeViewSessionParam)throw new C(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 C(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 C(a,"\u672A\u652F\u6301\u7684\u903B\u8F91\u53C2\u6570\u7C7B\u578B\u91CD\u65B0\u5EFA\u7ACB\u53D8\u91CF")}},gu=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 Jo(a);break;case"END":i=new Zo(a);break;case"DEACTION":i=new Qo(a);break;case"DEUIACTION":i=new $o(a);break;case"PREPAREJSPARAM":i=new tu(a);break;case"RESETPARAM":i=new nu(a);break;case"COPYPARAM":i=new ou(a);break;case"BINDPARAM":i=new au(a);break;case"VIEWCTRLINVOKE":i=new eu(a);break;case"MSGBOX":i=new su(a);break;case"DEBUGPARAM":i=new ru(a);break;case"APPENDPARAM":i=new uu(a);break;case"SORTPARAM":i=new cu(a);break;case"RENEWPARAM":i=new lu(a);break;case"DEDATASET":i=new du(a);break;case"THROWEXCEPTION":i=new hu(a);break;case"VIEWCTRLFIREEVENT":i=new pu(a);break;case"DELOGIC":i=new fu(a);break;case"PFPLUGIN":i=new iu(a);break;case"RAWJSCODE":i=new mu(a);break;default:throw new C(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 Eu(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 Ho(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}}},ta=new Map;async function ne(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 ta.has(i)||ta.set(i,new gu(i)),await ta.get(i).exec(a),null}var W=d("UIActionUtil",class{static async exec(t,e,a){const s=await Ht(t,a);if(!s)throw new f("\u6CA1\u627E\u5230".concat(t,"\u7684\u754C\u9762\u884C\u4E3A\u6A21\u578B"));return s.actionTarget==="SINGLEDATA"&&await e.view.call("Validate")===!1?{cancel:!0}:(await Is(s)).exec(s,e)}static async execAndResolved(t,e,a){var s,i;const r=await this.exec(t,e,a);if(r.closeView)e.view.modal.ignoreDismissCheck=!0,e.view.closeView({ok:!0});else if(r.refresh)switch(r.refreshMode){case 1:e.view.callUIAction("Refresh");break;case 2:(s=e.view.parentView)==null||s.callUIAction("Refresh");break;case 3:(i=e.view.getTopView())==null||i.callUIAction("Refresh");break}}}),oe=d("UIActionProviderBase",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 ne(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,t.appId);else{const h=await this.doNextAction(t,l,t.appId);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 ne(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,a){const s=t.nextId;if(s)return W.exec(s,e,a)}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(w=>({[o]:w.srfkey||w[o]})):[{}];break;case"SINGLEKEY":{const w=a[0]||{};i=r?[{[o]:w.srfkey||w[o]}]:[{}]}break}const u=e.clone(),c=[...t.navigateContexts||[]];if(r&&t.actionTarget!=="NONE"){const{valueItem:w,paramItem:y}=t,v=y||r,P=w||"srfkey";c.unshift({key:v,value:P,rawValue:!1})}const l=["MULTIKEY","MULTIDATA"].includes(t.actionTarget)&&a.length>0,h=F(c,l?be(c,a):a[0]||{},s,e);Object.assign(u,h);const p=t.navigateParams,E=F(p,l?be(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,T.execScriptFn(l,"`".concat(s,"`"),{isAsync:!1,singleRowReturn:!0})}}}),wu=d("BackendUIActionProvider",class extends oe{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(et.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 A=b.data.map(R=>{var z;return((z=R.getOrigin)==null?void 0:z.call(R))||R||{}});h.forEach(R=>{R.srfactionparam=A})}}const w=ibiz.hub.getApp(a?.srfappid),y=h.map(b=>{var A;return((A=b.getOrigin)==null?void 0:A.call(b))||b||{}}).map(b=>Object.assign(b,p)),v=["MULTIKEY","MULTIDATA"].includes(t.actionTarget),P=await w.deService.exec(o,u,c,v?y:y[0],p);if(P.ok){const b=this.calcMessage("success",t,e);b&&ibiz.message.success(b)}return Object.assign(n,{data:Gt(P.data)?P.data:[P.data],nextContext:c,nextParams:p}),n}}),Cu=d("SysUIActionProvider",class extends oe{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)||{}}}),Du=d("FrontUIActionProvider",class extends oe{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=ma.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(et.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 C(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,view:o}=e;if(a)return T.execScriptFn({context:s,params:i,data:r,el:n?.target,view:o},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,i;const{resultContext:r,resultParams:n}=await this.handleParams(t,e.context,e.data,e.params),o=await ibiz.hub.getAppDataEntity(t.appDataEntityId,t.appId),u=(a=o.appDEPrints)==null?void 0:a.find(c=>c.id===t.appDEPrintId);if(u){let c="";if(r&&r[o.codeName.toLowerCase()])c+="/".concat((s=o.codeName2)==null?void 0:s.toLowerCase(),"/printdata/").concat(r[o.codeName.toLowerCase()]);else throw new f("\u6CA1\u6709\u627E\u5230\u6570\u636E\u4E3B\u952E");const l=await ibiz.net.request(c,{method:"get",responseType:"blob",params:{srfprinttag:u.codeName,...n}});if(l.ok)if(n&&n.srfcontenttype){const p=(i=l.headers["content-disposition"].split(";").find(y=>y.indexOf("filename=")!==-1))==null?void 0:i.slice(9),E=URL.createObjectURL(l.data),w=document.createElement("a");w.href=E,w.download=p,document.body.appendChild(w),w.click(),document.body.removeChild(w),URL.revokeObjectURL(E)}else{const h=window.URL.createObjectURL(l.data);window.open(h,"_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,t.appId),i=(a=s.appDEDataImports)==null?void 0:a.find(n=>n.id===t.appDEDataImportId);let r="DataImport";if(i&&i.enableCustomized&&(r="DataImport2"),i){const n=ibiz.overlay.createModal(r,{dismiss:()=>n.dismiss(),appDataEntity:s,dataImport:i},{width:"auto",placement:"center"});return n.present(),await n.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,t.appId),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 h=new Blob([c.data],{type:"application/vnd.ms-excel"}),p=document.createElement("a");p.download=l,p.style.display="none",p.href=URL.createObjectURL(h),document.body.appendChild(p),p.click(),URL.revokeObjectURL(p.href),document.body.removeChild(p)}else throw new f("\u5BFC\u51FA\u8BF7\u6C42\u5931\u8D25")}else throw new f("\u6CA1\u6709\u627E\u5230\u5B9E\u4F53\u5BFC\u51FA\u9879")}}),vu=d("WFWithdrawUIActionProvider",class extends oe{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 si(){const t=new Du;St("FRONT",()=>t);const e=new wu;St("BACKEND",()=>e);const a=new Cu;St("SYS",()=>a);const s=new vu;St("DEUIACTION_WFWithdraw",()=>s)}var Iu=d("ToolbarController",class extends K{get _evt(){return this.evt}initState(){super.initState(),this.state.buttonsState=new mt,this.state.viewMode="EMBED",this.state.extraButtons={}}async doUIAction(t,e,a={}){if(t.itemType==="DEUIACTION"){const s=t.uiactionId,i=await Ht(s,t.appId);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 W.execAndResolved(s,{...u,data:o,event:e},t.appId)}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 ft(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 j&&(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){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)}}),Au=d("ContextMenuController",class extends Iu{}),Rc=d("DashboardController",class extends K{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=Js(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 Cs(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 ot(Object.values(this.portlets).map(async e=>e.dataChangeNotify(t)))}}),Lc=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 Rt(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}}),yu=d("PortletPartState",class{constructor(){this.visible=!0,this.keepAlive=!1,this.layout={width:"",height:"",extraStyle:{},extraClass:[],contentStyle:{}},this.class={container:[],containerDyna:[]},this.actionGroupState=null}}),ct=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}=Kt(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 yu}onDataChange(t){let e=t.data[0];e&&e instanceof j&&(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 mt;e.uiactionGroupDetails.forEach(i=>{const r=i.uiactionId;if(r){const n=new ft(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 W.execAndResolved(s,{context:this.dashboard.context,params:this.dashboard.params,data:a,view:this.dashboard.view,event:e},t.appId)}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)}}),Tc=d("ContainerPortletController",class extends ct{}),Bc=d("ViewPortletController",class extends ct{}),Oc=d("MenuPortletController",class extends ct{}),_c=d("ChartPortletController",class extends ct{}),Mc=d("ActionBarPortletController",class extends ct{}),xc=d("HtmlPortletController",class extends ct{}),Vc=d("ListPortletController",class extends ct{}),kc=d("RawItemPortletController",class extends ct{}),ii=d("DataViewControlService",class extends tt{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 X(a,r,{isOriginField:!0,dataType:e.dataType})}else i=new X(a,a);this.dataUIMap.set(a,i)})}}),Fu=d("DataViewControlController",class extends Q{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 ii(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 mt;e.uiactionGroupDetails.forEach(i=>{const r=i.uiactionId;if(r){const n=new ft(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 j&&(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 mt,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 ft(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 W.execAndResolved(s,{context:this.context,params:this.params,data:[e],view:this.view,event:a},t.appId)}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];D(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};W.execAndResolved("new",{context:this.context,params:a,data:[],view:this.view,event:t},this.view.model.appId)}async onGroupToolbarClick(t,e,a){const s=t.uiactionId,i={...this.params,srfgroup:a.key};await W.execAndResolved(s,{context:this.context,params:i,data:a.selectedData||[],view:this.view,event:e},t.appId)}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)}}),ea=d("ExpBarControlController",class extends K{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}=jt(c,l),E=Object.assign(a.clone(),h,{currentSrfNav:e[this.navKeyName]});this.state.srfnav=e[this.navKeyName];const w={...p};return{context:E,params:w}}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())}}),Wc=d("CalendarExpBarController",class extends ea{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}}}),Uc=d("TreeExpBarController",class extends ea{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)}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)}}),zc=d("ChartExpBarController",class extends ea{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=F(u,e,s,r),h=F(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}}}),ri=d("FormController",class extends K{constructor(){super(...arguments),this.details={},this.providers={},this.formItems=[],this.formMDCtrls=[]}get _evt(){return this.evt}get data(){return this.state.data}initState(){super.initState(),this.state.data=new j,this.state.isLoaded=!1,this.state.processing=!1,this.state.modified=!1}async dataChangeNotify(t){await ot(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 hs(s);if(!i)return;e.providers[s.id]=i;const r=await i.createController(s,e,a);if(e.details[s.id]=r,s.detailType==="FORMITEM"&&e.formItems.push(r),s.detailType==="MDCTRL"&&e.formMDCtrls.push(r),Xa(s))return;const n=Ha(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)&&!Ye(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 updateFormItem(t){}async validate(){return(await Promise.all([...this.formItems,...this.formMDCtrls].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)}}),Pu=d("SearchFormService",class extends Lt{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 X(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}}),Gc=d("SearchFormController",class extends ri{initState(){super.initState(),this.state.storedFilters=[]}async onCreated(){var t,e;await super.onCreated(),this.config=new Rt(this.model.appId,"dynafilter","searchform_".concat(((t=this.model.appDataEntityId)==null?void 0:t.toLowerCase())||"app","_").concat((e=this.model.codeName)==null?void 0:e.toLowerCase())),this.preprocessLayoutPanel(),this.service=new Pu(this.model),await this.service.init(this.context),await this.load(),await this.loadConfig()}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,xt(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)}async loadConfig(){const t=await this.config.load();t.model&&(this.state.storedFilters=t.model)}async saveConfig(){await this.config.save({model:this.state.storedFilters})}async storeFilter(t){this.state.storedFilters.push({name:t,data:{...this.data}}),await this.saveConfig()}applyStoredFilter(t){const e=this.state.storedFilters[t];if(!e)throw new f("\u6CA1\u6709\u627E\u5230\u53EF\u4EE5\u5E94\u7528\u7684\u641C\u7D22\u6761\u4EF6");e.data&&Object.assign(this.data,e.data),this.search()}async removeStoredFilter(t){if(!this.state.storedFilters[t])throw new f("\u6CA1\u6709\u627E\u5230\u4FDD\u5B58\u7684\u641C\u7D22\u6761\u4EF6");this.state.storedFilters.splice(t,1),await this.saveConfig()}}),rt=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}})}}),bu=d("FormDetailEventName",(t=>(t.CLICK="onClick",t.FOCUS="onFocus",t.BLUR="onBlur",t.CHANGE="onChange",t.ENTER="onEnter",t))(bu||{})),Su=d("PanelItemEventName",(t=>(t.CLICK="onClick",t.FOCUS="onFocus",t.BLUR="onBlur",t.CHANGE="onChange",t.ENTER="onEnter",t))(Su||{})),lt=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 context(){return this.form.context}get params(){return this.form.params}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}=Kt(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 rt((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||Vt(i,t))try{const r=Yt(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)}})}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})}}),Nu=d("FormButtonState",class extends rt{constructor(){super(...arguments),this.loading=!1}}),jc=d("FormButtonController",class extends lt{createState(){var t;return new Nu((t=this.parent)==null?void 0:t.state)}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 W.execAndResolved(e,{context:this.form.context,params:this.form.params,data:[this.data],view:this.form.view,event:t,noWaitRoute:!0},this.model.appId)}async doFormItemUpdate(){this.model.deformItemUpdateId&&await this.form.updateFormItem(this.model.deformItemUpdateId)}}),Ru=d("FormDruipartState",class extends rt{constructor(){super(...arguments),this.showMask=!1}}),Kc=d("FormDRUIPartController",class extends lt{constructor(){super(...arguments),this.refreshItems=["srfkey"],this.paramItem="srfkey",this.isNewData=!1}createState(){var t;return new Ru((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),Vt(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,F(e,this.data,this.form.params,this.form.context)));const a=F(this.model.navigateParams,this.data,this.form.params,this.form.context);if(!this.state.viewComponentKey)this.state.viewComponentKey=G(),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))})}}),ni=d("FormGroupPanelState",class extends rt{constructor(){super(...arguments),this.isShowMore=!1,this.actionGroupState=null}}),Lu=d("FormGroupPanelController",class extends lt{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 ni((t=this.parent)==null?void 0:t.state)}async onInit(){super.onInit(),await this.initActionStates()}async formStateNotify(t){if(super.formStateNotify(t),this.state.actionGroupState){const e=this.data.getOrigin?this.data.getOrigin():this.data;this.state.actionGroupState.update(e)}}async initActionStates(){var t;const{uiactionGroup:e}=this.model;if(!((t=e?.uiactionGroupDetails)!=null&&t.length))return;const a=new mt;e.uiactionGroupDetails.forEach(s=>{const i=s.uiactionId;if(i){const r=new ft(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 W.execAndResolved(a,{context:this.form.context,params:this.form.params,data:[this.data],view:this.form.view,event:e},t.appId)}}),Tu=d("FormItemState",class extends rt{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}})}}),Hc=d("FormItemController",class extends lt{constructor(t,e,a){super(t,e,a),this.rules=[]}createState(){var t;return new Tu((t=this.parent)==null?void 0:t.state)}get name(){return this.model.id}get value(){return this.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 Jt(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(...qe(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=$e({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})}}),aa=d("FormMDCtrlController",class extends lt{get context(){return this.form.context}get params(){return this.form.params}get enableCreate(){return kt.checkPermission(this.model.buildInActions,1)}get enableUpdate(){return kt.checkPermission(this.model.buildInActions,2)}get enableDelete(){return kt.checkPermission(this.model.buildInActions,4)}async updateFormItem(){this.model.deformItemUpdateId&&await this.form.updateFormItem(this.model.deformItemUpdateId)}refresh(){}async validate(){return!0}}),Xc=d("FormMDCtrlMDController",class extends aa{get name(){return this.model.id}async onInit(){await super.onInit();const{contentControl:t}=this.model;if(!t)throw new m(this.model,"\u591A\u6570\u636E\u90E8\u4EF6\u672A\u914D\u7F6E\u5185\u5BB9\u90E8\u4EF6");t.controlType==="GRID"&&Wt(t,{enableRowEdit:this.enableCreate||this.enableUpdate,enableRowNew:this.enableCreate});const e=await ht(t);e&&(this.mdProvider=e)}setMDControl(t){this.mdController=t,t.evt.on("onSaveSuccess",()=>{this.updateFormItem()}),t.evt.on("onRemoveSuccess",()=>{this.updateFormItem()})}updateFormItem(){const t=this.mdController.state.items||[];return this.data[this.name]=t,super.updateFormItem()}remove(){this.mdController.remove()}create(){if(this.model.contentType==="GRID")this.mdController.newRow();else throw new C(this.model,"\u591A\u6570\u636E\u90E8\u4EF6\u7C7B\u578B".concat(this.model.contentType,"\u6682\u4E0D\u652F\u6301\u6DFB\u52A0\u6570\u636E"))}refresh(){this.mdController?this.mdController.refresh():ibiz.log.debug("mdController\u4E0D\u5B58\u5728")}async formStateNotify(t){await super.formStateNotify(t),this.refresh()}async dataChangeNotify(t){await super.dataChangeNotify(t),t.includes(this.model.id)&&this.refresh()}}),Bu=class extends rt{},Yc=d("FormMDCtrlFormController",class extends aa{constructor(){super(...arguments),this.formMap=new Map}createState(){var t;return new Bu((t=this.parent)==null?void 0:t.state)}async onInit(){super.onInit();const{contentControl:t}=this.model;if(!t)throw new m(this.model,"\u591A\u6570\u636E\u90E8\u4EF6\u672A\u914D\u7F6E\u5185\u5BB9\u90E8\u4EF6");t.enableAutoSave=this.enableCreate||this.enableUpdate;const e=await ht(t);e&&(this.formProvider=e);const{appDataEntityId:a}=this.model.contentControl;this.deName=O(a)}async fetchData(){const{appDataEntityId:t}=this.model.contentControl,e="fetchdefault",a=await ibiz.hub.getApp(this.model.appId).deService.exec(t,e,this.context,this.params);a.ok&&(this.state.items=a.data.map(s=>{const i=this.context.clone();i[this.deName]=s.srfkey;const r={...this.params};return{id:s.srfkey,context:i,params:r}}))}async formStateNotify(t){await super.formStateNotify(t),await this.fetchData()}setFormController(t,e){this.formMap.set(t,e),e.evt.on("onSaveSuccess",a=>{const s=a.data[0],i=this.state.items.find(r=>r.id===t);i&&i.context[this.deName]!==s.srfkey&&(i.context[this.deName]=s.srfkey),this.updateFormItem()}),e.evt.on("onRemoveSuccess",()=>{this.updateFormItem()})}async remove(t){const e=this.formMap.get(t);if(!e)throw new f("\u6CA1\u6709\u627E\u5230\u5BF9\u5E94".concat(t,"\u7684\u8868\u5355\u63A7\u5236\u5668"));await e.remove();const a=this.state.items.findIndex(s=>s.id===t);a!==-1&&this.state.items.splice(a,1)}create(t){const e=this.context.clone(),a={...this.params};this.state.items||(this.state.items=[]);const s={id:G(),context:e,params:a};t!==void 0?this.state.items.splice(t,0,s):this.state.items.push(s)}refresh(){this.fetchData()}async dataChangeNotify(t){await super.dataChangeNotify(t),t.includes(this.model.id)&&this.refresh()}}),qc=d("FormMDCtrlRepeaterController",class extends aa{constructor(){super(...arguments),this.repeaterStyle="MultiForm",this.isSingleData=!1}get name(){return this.model.id}get value(){return this.data[this.model.id]}async onInit(){switch(await super.onInit(),this.model.detailStyle){case"DEFAULT":this.repeaterStyle="MultiForm",this.isSingleData=!1;break;case"STYLE2":this.repeaterStyle="Grid",this.isSingleData=!1;break;case"STYLE3":this.repeaterStyle="SingleForm",this.isSingleData=!0;break;default:throw new C(this.model,"\u6682\u4E0D\u652F\u6301\u91CD\u590D\u5668\u6837\u5F0F".concat(this.model.detailStyle))}this.prepareRepeatedForm()}prepareRepeatedForm(){const t="".concat(this.model.id,"repeatedform"),e={appId:this.model.appId,id:t,codeName:t,name:t,deformPages:[{appId:this.model.appId,id:"formpage1",deformDetails:this.model.deformDetails,detailType:"FORMPAGE",detailStyle:"DEFAULT",layout:this.model.layout}]};["appId","controlType","deformItemVRs"].forEach(s=>{e[s]=this.form.model[s]}),this.repeatedForm=I(e)}setValue(t){this.form.setDataValue(this.name,t)}create(t){if(this.isSingleData)this.setValue({});else{let e=this.value;e=e?[...e]:[],t!==void 0?e.splice(t,0,{}):e.push({}),this.setValue(e)}}remove(t){if(this.isSingleData){this.setValue(null);return}const e=this.value.filter((a,s)=>t!==s);this.setValue(e)}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.setValue(null),t.includes(this.name)&&await this.updateFormItem()}}),Ou=d("FormPageState",class extends ni{}),Qc=d("FormPageController",class extends Lu{createState(){var t;return new Ou((t=this.parent)==null?void 0:t.state)}}),_u=d("FormRawItemState",class extends rt{}),$c=d("FormRawItemController",class extends lt{createState(){var t;return new _u((t=this.parent)==null?void 0:t.state)}}),Mu=d("FormTabPageState",class extends rt{}),Jc=d("FormTabPageController",class extends lt{createState(){var t;return new Mu((t=this.parent)==null?void 0:t.state)}}),xu=d("FormTabPanelState",class extends rt{}),Zc=d("FormTabPanelController",class extends lt{createState(){var t;return new xu((t=this.parent)==null?void 0:t.state)}}),Vu=d("EditFormService",class extends Lt{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 j?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 j?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 j?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 j?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 j?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 X(s,i,{isOriginField:!0,dataType:a.dataType}):r=new X(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}}),tl=d("EditFormController",class extends ri{get view(){return this.ctx.view}async onCreated(){await super.onCreated(),this.service=new Vu(this.model),await this.service.init(this.context),this.autoSave=zt(this.autoSave.bind(this),500,{trailing:!0})}async onMounted(){await super.onMounted(),!this.state.isSimple&&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,xt(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=I(this.context),e=I(this.params),s=(await ibiz.hub.getAppDataEntity(this.model.appDataEntityId,this.model.appId)).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=G(),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(!Ga(this.context,this.model.appDataEntityId))return this.loadDraft();const{context:s,params:i}=this.handlerAbilityParams(t),r=I(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):Wt(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 j,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&&Wt(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=T.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)}}setSimpleData(t){const e={...t};this.formItems.forEach(a=>{Object.prototype.hasOwnProperty.call(e,a.name)||(e[a.name]=null)}),this.state.modified=!1,this.state.data=e,this.state.isLoaded?this.dataChangeNotify(Object.keys(this.state.data)):(this.formStateNotify("LOAD"),this.state.isLoaded=!0)}}),sa=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 T.execScriptFn({data:t.data},this.deGridDataItem.scriptCode,{singleRowReturn:!0,isAsync:!1})}}),oi=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}})}}),ui=d("GridService",class extends tt{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 X(a,r,{isOriginField:!0,dataType:e.dataType})}else i=new X(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}}),ku=d("GridController",class extends Q{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 ui(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 ot(Object.values(this.fieldColumns).map(async a=>{await a.loadCodeList()}),!1),this.state.rows=e.map(a=>{const s=new oi(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;xt(n,i),this.state.items.unshift(n);const o=new oi(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 ot(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"||t.columnType==="DEFTREEGRIDCOLUMN"?(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)&&!Ye(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 ot(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=I(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=T.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=I(u.map(p=>p.getOrigin()));return h.forEach(p=>{Object.keys(p).forEach(w=>{var y;l.get(w)&&(p[w]=((y=l.get(w).find(v=>v.value===p[w]))==null?void 0:y.text)||p[w])})}),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,w=c==="customPage"?{page:0,offset:(p-1)*h,size:(E-p+1)*h}:{size:1e3,page:0};l=await this.loadData({viewParam:w})}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 Zs(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=$e({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}async onRowClick(t){this.setSelection([t]),this.state.mdctrlActiveMode===1&&await this.setActive(t)}}),Wu=d("GridFieldColumnController",class extends sa{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=zt(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}=Se(s);let n={};i&&t&&(n=F(i,t,a,e));const o=Object.assign(e.clone(),n);let u={};r&&t&&(u=F(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 C(this.model,"\u672A\u5728\u884C\u6570\u636E\u4E2D\u53D6\u5230 ".concat(s," \u7684\u503C"));const{linkAppViewId:r}=this.model;if(!r)return;const n=as(t.data),o=Object.assign(this.context.clone(),{srfkey:i,...n}),u=I(this.params),{context:c,params:l}=this.handlePublicParams(t.data,o,u),h=await ibiz.commands.execute(et.TAG,r,c,l,{event:e});h?.ok&&this.grid.load()}async triggerAction(t,e){const a=this.model.deuiactionId;await W.execAndResolved(a,{context:this.context,params:this.params,data:[t.data],view:this.grid.view,event:e},this.model.appId)}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=>!D(u[r]));let n;if(this.grid.model.aggMode==="PAGE")switch(a){case"SUM":n=t.map(u=>u[r]).reduce((u,c)=>Ut(u,c),0);break;case"AVG":n=t.map(u=>u[r]).reduce((u,c)=>Ut(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 C(this.model,"\u6682\u672A\u652F\u6301\u5C5E\u6027\u5217\u805A\u5408\u6A21\u5F0F".concat(a))}else throw this.grid.model.aggMode==="ALL"?new C(this.model,"\u8FDC\u7A0B\u805A\u5408\u6682\u672A\u652F\u6301"):new C(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 bo.toText(this.model,t);const e="".concat(t);if(!this.valueFormat)return e;if(_t.isDate(this.dataType)){const s=N(e).format(this.valueFormat);return s!=="Invalid Date"?s:e}return ibiz.util.text.format(e,this.valueFormat)}}),el=d("GridUAColumnController",class extends sa{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 mt;a.uiactionGroupDetails.forEach(i=>{const r=i.uiactionId;if(r){const n=new ft(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 W.execAndResolved(s,{context:this.context,params:this.params,data:[e.data],view:this.grid.view,event:a},t.appId)}}),al=d("GridFieldEditColumnController",class extends Wu{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=Ka(this.grid.model,this.model.codeName);t&&(this.editItem=t,this.editItem.editor&&this.editItem.editor.editorType!=="HIDDEN"&&(this.editorProvider=await Jt(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(...qe(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){const{resetItemNames:a}=this.editItem;let s=!1;a&&a.length>0&&a.forEach(n=>{e.includes(n)&&(s=!0)}),s&&this.setRowValue(t,null),this.calcColumnDisabled(t);const i=t.editColStates[this.fieldName].required;if(this.calcColumnRequired(t),(i!==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}}),sl=d("GridGroupColumnController",class extends sa{}),Uu=d("ListService",class extends tt{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 X(a,r,{isOriginField:!0,dataType:e.dataType})}else i=new X(a,a);this.dataUIMap.set(a,i)})}}),il=d("ListController",class extends Q{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 Uu(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}}}),zu=d("PanelController",class extends K{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 Es(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=Za(this.model),a=e.map(i=>i.id),s=new oo(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)}}),rl=d("ViewLayoutPanelController",class extends zu{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||[]))}}),Gu=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}})}}),nl=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}=Kt(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 Gu((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||Vt(i,t))try{const r=qt(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"})}}),ol=d("PickupViewPanelController",class extends K{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,F(t,this.params,this.context)),e&&Object.assign(s,F(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")}}),ju=class{constructor(t,e){this.model=t,this.searchBar=e;var a;let s;t.appDEFieldId&&(s=vt(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 Jt(this.model.editor),this.editorProvider&&(this.editor=await this.editorProvider.createController(this.model.editor,this))}},ul=d("SearchBarController",class extends K{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=T.execSingleLine(this.state.selectedGroupItem.data),i=F(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 ju(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&&!D(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))}}}),cl=d("TabExpPanelController",class extends K{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}=jt(n,o),l=Object.assign(this.context.clone(),u,{currentSrfNav:this.state.activeName}),h={...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}}}),ci=d("TreeService",class extends tt{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 ot(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 C(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 w=await this.fetchChildNodes(h,s);h.children=w}})),n}async getStaticNodeData(t,e,a,s){return new eo(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,w;if(p){h=p.deData||{};const P=Le(this.model,p.nodeId);P.appDataEntityId&&(w=O(P.appDataEntityId)),E=p.value}const{resultContext:y,resultParams:v}=jt({deName:w,navFilter:n?"n_".concat(n.toLowerCase(),"_eq"):void 0,pickupDEFName:u,navParams:r,navContexts:i},{derValue:E,context:l,params:c,data:h});return Object.assign(l,y),Object.assign(c,v),{context:l,params:c,navContext:y,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 Xs(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 to(t,a,{data:l,leaf:!!s.leaf,navContext:n,navParams:o})):[]}}),ll=d("TreeController",class extends Q{constructor(){super(...arguments),this.contextMenus={},this.enableQuickSearch=!1}initState(){super.initState(),this.state.defaultExpandedKeys=[],this.state.expandedKeys=[],this.state.navigational=!1,this.state.size=0,this.state.query=""}async onCreated(){var t,e;if(await super.onCreated(),this.state.expandedKeys=[...this.state.defaultExpandedKeys],(t=this.model.detreeNodes)!=null&&t[0].enableQuickSearch&&(this.enableQuickSearch=!0),this.dataEntity){const a=(e=this.dataEntity.appDEFields)==null?void 0:e.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"))}this.service=new ci(this.model),await this.service.init(this.context),this.model.detreeNodes.forEach(a=>{var s,i;(i=(s=a.decontextMenu)==null?void 0:s.detoolbarItems)!=null&&i.length&&(this.contextMenus[a.decontextMenu.id]=new Au(a.decontextMenu,this.context,this.params,this.ctx))}),await Promise.all(Object.values(this.contextMenus).map(a=>a.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 getFetchParams(t){const e=await super.getFetchParams(t);return this.state.query&&(e.query=this.state.query),e}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,s){const i=this.getEventArgs(),r=this.parseTreeNodeData(e),n=await W.exec(t,{...i,...r,event:a},s);if(n.closeView)this.view.closeView();else if(n.refresh)switch(n.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)))}}),Ku=d("WizardPanelService",class extends Lt{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}}),dl=d("WizardPanelController",class extends K{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 Ku(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 ht(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]):(this.tagHistory.pop(),e=this.tagHistory[this.tagHistory.length-1]),!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 a=this.model.dewizard.dewizardSteps,s=this.model.dewizard.dewizardForms;if(a&&s){const i=a.findIndex(o=>o.id===this.activeWizardForm.dewizardStepId),r=a[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()}}),Hu=d("MDCtrlService",class extends tt{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 X(a,r,{isOriginField:!0,dataType:e.dataType})}else i=new X(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}}),hl=d("MDCtrlController",class extends Q{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 Hu(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 W.execAndResolved(s,{context:this.context,params:this.params,data:[e.data],view:this.view,event:a},t.appId)}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 mt;(e.uiactionGroupDetails||[]).forEach(r=>{const n=r.uiactionId;if(n){const o=new ft(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];D(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}}),Xu=d("KanbanService",class extends ii{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}}),pl=d("KanbanController",class extends Fu{get enableEditOrder(){return this.model.enableCardEditOrder===!0}get enableEditGroup(){return this.model.enableCardEditGroup===!0}async initControlService(){this.service=new Xu(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(D(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(A=>A.key===a),l=this.state.groups.find(A=>A.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 A=c.children[i];return A[n]=t.to,this.updateChangedItems([A])}const h=A=>A+(100-A%100),p=[...l.children],E=[...l.children],w=c.children[i];t.from!==t.to?(w[n]=t.to,E.splice(r,0,w)):(E.splice(i,1),E.splice(r,0,w));const y=c.children.splice(i,1);l.children.splice(r,0,...y),e||(p.reverse(),E.reverse());let v,P=[],b;E.forEach((A,R)=>{v===void 0?A!==p[R]&&(p[R]?v=p[R][o]||100:v=R===0?100:h(p[R-1][o]),A[o]=v,u.push(A)):(v>=A[o]?(P.length>0&&(P.forEach(z=>{z[o]=h(b),u.push(z),b=z[o]}),v=b,b=0,P=[]),A[o]=h(v),u.push(A)):(P.length===0&&(b=v),P.push(A)),v=A[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)}}}),Yu=d("TreeGridExService",class extends ci{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 X(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 Xs(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&&(Gt(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 j(t,a)}}),fl=d("TreeGridExController",class extends Q{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 Yu(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}}),ml=d("TreeGridController",class extends ku{}),El=d("TreeGridService",class extends ui{}),qu=d("MEditViewPanelService",class extends tt{}),gl=d("MEditViewPanelController",class extends Q{constructor(){super(...arguments),this.parameters=[]}async onCreated(){await super.onCreated(),this.service=new qu(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.appId);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(G()),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)}}),Qu=d("MapService",class extends tt{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=T.execSingleLine(u);if(p){const{navigateContexts:E,navigateParams:w}=Se(p);E&&Object.assign(c,F(E,e,t)),w&&Object.assign(l,F(E,e,t))}}const h=await i.deService.exec(n,o,c,l);h.data&&s.push(...h.data.map(p=>new ro(p,r)))}))}return new L(s,200)}}),wl=d("MapController",class extends Q{initState(){super.initState(),this.state.size=1e3,this.state.pointData=[],this.state.areaData=[],this.calcDefaultOptions()}async onCreated(){await super.onCreated(),this.service=new Qu(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]})}}),$u=d("ReportPanelService",class extends Lt{async fetch(t,e={}){var a;this.dataEntity=await ibiz.hub.getAppDataEntity(this.model.appDataEntityId,this.model.appId);const s="".concat((a=this.dataEntity.codeName2)==null?void 0:a.toLowerCase(),"/report?srfreporttag=").concat(this.model.codeName);let i=await ibiz.net.request(s,{method:"post",data:e});return i=this.handleResponse(i),i}}),li=class{constructor(t){this.config={},this.model=t,this.setConfig()}setConfig(){}init(t){this.protoRef=t}load(t){return Promise.resolve(t)}},Ju=class extends li{setConfig(){this.config={CONFIG:{fitView:!0,minZoom:.002,layout:{type:"force",preventOverlap:!0,linkDistance:200,nodeSize:80,nodeSpacing:30}},NODELEGENDCONFIG:{valueField:"source_lables||target_lables",selected:"{{return Object.is(data.source_lables, 'NEO4J_ZT') || Object.is(data.target_lables, 'NEO4J_ZT')}}",codeListTag:"web.nodetype"},EDGELEGENDCONFIG:{valueField:"relationship_type",codeListTag:"web.relationshiptype"},PLUGINCONFIG:{gridConfig:{},miniMapConfig:{}},HOOKS:{g6Hooks:[{name:"afterrender",callBack:"{{ const nodes = data.controller.graph.getNodes(); if (nodes.length < 25) { data.controller.graph.zoomTo(1); data.controller.graph.fitCenter() } }}"}],nodeDataHook:"{{ data.forEach(node => { const type = node.data.source_lables || node.data.target_lables; Object.assign(node, { label: node.data.name, size: 66, style: { fill: node.color },donutAttrs: { prop1: 10000, prop2: 10 },donutColorMap: { prop1: node.color, prop2: node.color },icon: {show: true,img: type === 'NEO4J_ZT' ? resource.dir('/assets/images/user-avatar.png') : resource.dir('/assets/images/phone.png'),width: 40,height: 40}})})}}",edgeDataHook:"{{ data.forEach(edge => {Object.assign(edge, { label: edge.name })}) }}"}}}load(t){return this.protoRef&&this.protoRef.setData(t),Promise.resolve(t)}},Zu=class extends li{},tc=class{static getInstance(t){if(!t||!t.appDEReport||!t.appDEReport.reportType)throw new Error("\u62A5\u8868\u9762\u677F\u751F\u6210\u5668\u5DE5\u5382\u53C2\u6570\u9519\u8BEF\uFF0C\u62A5\u8868\u9762\u677F\u672A\u6307\u5B9A\u62A5\u8868\u7C7B\u578B");switch(t.appDEReport.reportType){case"USER":return new Ju(t);case"USER2":return new Zu(t);default:throw new Error("\u6307\u5B9A\u62A5\u8868".concat(t.appDEReport.reportType,"\u7C7B\u578B\u62A5\u8868\u9762\u677F\u751F\u6210\u5668\u6682\u672A\u5B9E\u73B0"))}}},Cl=d("ReportPanelController",class extends K{get _evt(){return this.evt}initState(){super.initState(),this.state.data={},this.state.searchParams={},this.state.reportType=this.model.appDEReport&&this.model.appDEReport.reportType||""}async onCreated(){await super.onCreated(),this.generator=tc.getInstance(this.model),this.dataEntity=await ibiz.hub.getAppDataEntity(this.model.appDataEntityId,this.model.appId),this.service=new $u(this.model),await this.service.init(this.context)}async onMounted(){await super.onMounted(),this.state.loadDefault&&this.load({isInitialLoad:!0})}onDestroyed(){return super.onDestroyed()}async load(t={}){await this.startLoading();try{const{context:e}=this.handlerAbilityParams(t),a=await this.getFetchParams(t?.viewParam),s=await this.service.fetch(e,a);this.state.data=s.data,await this.afterLoad(t,s.data),this.state.isLoaded=!0,await this._evt.emit("onLoadSuccess",void 0)}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.data}async afterLoad(t,e){return e}async getFetchParams(t){const e={...this.params};return await this._evt.emit("onBeforeLoad",void 0),Object.assign(e,{...this.state.searchParams}),t&&Object.assign(e,t),e}getData(){return[this.state.data]}async refresh(){await this.load({isInitialLoad:!1})}}),ec=d("GanttService",class extends tt{}),Dl=d("GanttController",class extends Q{async onCreated(){await super.onCreated(),this.service=new ec(this.model),await this.service.init(this.context)}}),ac=d("HubController",class{constructor(){this.session={}}login(t,e){return ibiz.auth.login(t,e)}logout(){return ibiz.auth.logout()}}),sc=class{constructor(){this.convert=new mo,this.controller=new ac,this.appMap=new Map,this.view2appMap=new Map,this.views=new Map,this.dataEntities=new Map,this.config=new go,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}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);if(!this.modelLoaderProvider)throw new f("\u8BF7\u5148\u6CE8\u518C\u6A21\u578B\u52A0\u8F7D\u9002\u914D\u5668");const e=await this.modelLoaderProvider.getApp(t),a=new po(e);return this.appMap.set(t,a),await this.modelLoaderProvider.initApp(t),await a.init(),this.configCache||(this.configCache=new Rt(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)}},ic=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)}}),rc=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||""}))}}),vl=d("MDViewEngine",class extends rc{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=I(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)}}}),nc=class{handle(t){return t instanceof m||t instanceof C?ibiz.message.error(t.message,10,!0):t instanceof Mt?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}},oc=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)}},uc=class{constructor(){this.layoutPanel=new br,this.theme=new Vr,this.text=new xr,this.hbs=new Zi,this.rawValue=new kr,this.action=W,this.error=new oc,this.error.register(new nc)}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(){}},cc=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 C(t,"\u903B\u8F91\u7C7B\u578B ".concat(t.logicType," \u6682\u672A\u652F\u6301\uFF01"));return a(t,e)}},lc=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=T.createScriptFn(t,s,a),this.initialized=!0}execute(t){const e=this.convertScriptArgs(t);return this.scriptFn.exec(e)}},di=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");ne(e,a,t)}},hi=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()),Ie(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)}},dc=class extends hi{constructor(t){const e=t.filter(a=>a.triggerType!=="APPVIEWENGINE");e.forEach(a=>{a.triggerType==="CTRLEVENT"&&(a.ctrlName=a.itemName||a.logicTag)}),super(e)}},hc=class extends hi{constructor(t){t.forEach(e=>{e.triggerType=e.logicTrigger}),super(t)}triggerViewEvent(t){const e={eventName:t.eventName,triggerType:"VIEWEVENT"};this.triggerAndExecute(e,t)}},pc=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 C(t,"\u89E6\u53D1\u5668\u7C7B\u578B ".concat(t.triggerType," \u6682\u672A\u652F\u6301\uFF01"));return a(t,e)}},fc=class{constructor(){this.executorFactory=new cc,this.triggerFactory=new pc}createViewScheduler(t){return new hc(t)}createControlScheduler(t){return new dc(t)}},Bt=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}},mc=class extends Bt{},ia=class extends Bt{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)}},Ec=class extends Bt{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)}},gc=class extends ce{async execute(t){let e;try{this.logic.id==="opendata"&&this.logic.builtinAppUILogic?e=await this.executeOpenDataAppUILogic(this.logic.builtinAppUILogic,t):this.logic.id==="newdata"&&this.logic.builtinAppUILogic&&(e=await this.executeNewDataAppUILogic(this.logic.builtinAppUILogic,t))}catch(a){ibiz.log.error(a)}return e}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,F(c,r[0],s,a));let h={};const p=o.navigateParams;return x(p)&&(h=F(p,r[0],s,a)),ibiz.commands.execute(et.TAG,u,l,h,i)}async calcOpenViewRef(t,e){const a=await ibiz.hub.getAppDataEntity(e.view.model.appDataEntityId,e.view.model.appId),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),A=t.batchAddAppViews;if(h=A?.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 C(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 w=r?.[0]||{},y=h.navigateContexts;x(y)&&(p=F(y,w,s,a)),p=Object.assign(a,p);const v=h.navigateParams;if(x(v)&&(E=F(v,w,s,a)),s.srfcopymode){const A=(await ibiz.hub.getAppDataEntity(n.model.appDataEntityId,n.model.appId)).keyAppDEFieldId;A&&w&&(E[A]=w.srfkey,E.srfcopymode=!0)}E.srfuf=0;const P=await ibiz.commands.execute(et.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(et.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=>{var E;return((E=p.refMode)==null?void 0:E.toUpperCase())===l.toUpperCase()});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 w of p){const[y,v]=w.split(":");y&&v&&(E[y]=v)}l=e.map(w=>{const y={[u]:w.srfkey};for(const v in E)if(Object.prototype.hasOwnProperty.call(E,v)){const P=E[v];Object.prototype.hasOwnProperty.call(w,v)&&(y[P]=w[v])}return y})}else l=e.map(p=>({[u]:p.srfkey}));await ibiz.hub.getApp(a.srfappid).deService.exec(r.id,"Create",a,l)}}},wc=class extends Bt{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)}},Cc=class extends Bt{constructor(t,e){super(t,e),this.logic=t,this.scheduler=e,this.listenEventNames=[];const a=t.eventNames.split(";");this.listenEventNames=a.map(s=>U[s]||s)}match(t){return super.match(t)&&t.ctrlName.toLowerCase()===this.logic.ctrlName.toLowerCase()&&this.listenEventNames.includes(t.eventName)}},Dc=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");W.execAndResolved(this.logic.appDEUIActionId,t,this.logic.appId)}};function vc(){ibiz.scheduler=new fc,ibiz.scheduler.triggerFactory.register("ITEMVISIBLE",(t,e)=>new ia(t,e)),ibiz.scheduler.triggerFactory.register("ITEMENABLE",(t,e)=>new ia(t,e)),ibiz.scheduler.triggerFactory.register("ITEMBLANK",(t,e)=>new ia(t,e)),ibiz.scheduler.triggerFactory.register("TIMER",(t,e)=>new Ec(t,e)),ibiz.scheduler.triggerFactory.register("CUSTOM",(t,e)=>new mc(t,e)),ibiz.scheduler.triggerFactory.register("VIEWEVENT",(t,e)=>new wc(t,e)),ibiz.scheduler.triggerFactory.register("CTRLEVENT",(t,e)=>new Cc(t,e)),ibiz.scheduler.executorFactory.register("SCRIPT",(t,e)=>new lc(t,e)),ibiz.scheduler.executorFactory.register("APPDEUILOGIC",(t,e)=>new di(t,e)),ibiz.scheduler.executorFactory.register("DEUILOGIC",(t,e)=>new di(t,e)),ibiz.scheduler.executorFactory.register("APPUILOGIC",(t,e)=>new gc(t,e)),ibiz.scheduler.executorFactory.register("APPDEUIACTION",(t,e)=>new Dc(t,e))}function Ic(){const{ibiz:t}=window;t.util=new uc,t.hub=new sc,t.register=new Ti,t.config=new Li,t.auth=new bn,t.asyncAction=new Sn,t.engine=new ic,Qs(),si(),Hs(),_s(),vc(),rn(),t.platform=Ls()}var Il=d("PluginStaticResource",class{constructor(t){this.styleElementMap=new Map,this.url=new URL(t),this.baseDir=Fe.dirname(this.url.pathname)}dir(t){return this.url.origin+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)}}}),Al=d("RemotePluginItem",class{constructor(t,e,a){this.tag=t,this.repo=e,this.config=a}})}}});
|