@ibiz-template/runtime 0.2.18-dev.2 → 0.3.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (70) hide show
  1. package/dist/index.esm.js +250 -170
  2. package/dist/index.system.min.js +2 -2
  3. package/dist/index.system.min.js.map +1 -1
  4. package/out/controller/control/form/form-detail/form-detail/form-detail.controller.d.ts.map +1 -1
  5. package/out/controller/control/form/form-detail/form-detail/form-detail.controller.js +2 -1
  6. package/out/controller/control/form/form-detail/form-item/form-item.controller.d.ts +6 -0
  7. package/out/controller/control/form/form-detail/form-item/form-item.controller.d.ts.map +1 -1
  8. package/out/controller/control/form/form-detail/form-item/form-item.controller.js +16 -3
  9. package/out/controller/control/panel/panel/panel-item.controller.d.ts.map +1 -1
  10. package/out/controller/control/panel/panel/panel-item.controller.js +2 -1
  11. package/out/controller/utils/data-file-util/data-file-util.d.ts +1 -1
  12. package/out/controller/utils/data-file-util/data-file-util.d.ts.map +1 -1
  13. package/out/controller/utils/data-file-util/data-file-util.js +10 -23
  14. package/out/install.d.ts.map +1 -1
  15. package/out/install.js +3 -1
  16. package/out/interface/controller/event/argument/form-detail.event.d.ts +24 -2
  17. package/out/interface/controller/event/argument/form-detail.event.d.ts.map +1 -1
  18. package/out/interface/controller/event/argument/form-detail.event.js +24 -1
  19. package/out/interface/controller/event/argument/index.d.ts +2 -0
  20. package/out/interface/controller/event/argument/index.d.ts.map +1 -1
  21. package/out/interface/controller/event/argument/index.js +2 -1
  22. package/out/interface/controller/event/argument/panel-item.event.d.ts +23 -1
  23. package/out/interface/controller/event/argument/panel-item.event.d.ts.map +1 -1
  24. package/out/interface/controller/event/argument/panel-item.event.js +24 -1
  25. package/out/interface/provider/i-async-action.provider.d.ts +27 -0
  26. package/out/interface/provider/i-async-action.provider.d.ts.map +1 -0
  27. package/out/interface/provider/i-async-action.provider.js +1 -0
  28. package/out/interface/provider/index.d.ts +1 -0
  29. package/out/interface/provider/index.d.ts.map +1 -1
  30. package/out/interface/service/service/i-async-action.service.d.ts +28 -0
  31. package/out/interface/service/service/i-async-action.service.d.ts.map +1 -0
  32. package/out/interface/service/service/i-async-action.service.js +1 -0
  33. package/out/interface/service/service/index.d.ts +1 -0
  34. package/out/interface/service/service/index.d.ts.map +1 -1
  35. package/out/register/helper/async-action-register.d.ts +22 -0
  36. package/out/register/helper/async-action-register.d.ts.map +1 -0
  37. package/out/register/helper/async-action-register.js +35 -0
  38. package/out/register/helper/index.d.ts +1 -0
  39. package/out/register/helper/index.d.ts.map +1 -1
  40. package/out/register/helper/index.js +1 -0
  41. package/out/service/app-data-entity/app-data-entity.d.ts +3 -3
  42. package/out/service/app-data-entity/app-data-entity.d.ts.map +1 -1
  43. package/out/service/app-data-entity/app-data-entity.js +3 -3
  44. package/out/service/service/async-action/async-action.service.d.ts +28 -0
  45. package/out/service/service/async-action/async-action.service.d.ts.map +1 -0
  46. package/out/service/service/async-action/async-action.service.js +31 -0
  47. package/out/service/service/index.d.ts +1 -0
  48. package/out/service/service/index.d.ts.map +1 -1
  49. package/out/service/service/index.js +1 -0
  50. package/out/types.d.ts +9 -1
  51. package/out/types.d.ts.map +1 -1
  52. package/package.json +3 -3
  53. package/src/controller/control/form/form-detail/form-detail/form-detail.controller.ts +2 -1
  54. package/src/controller/control/form/form-detail/form-item/form-item.controller.ts +17 -3
  55. package/src/controller/control/panel/panel/panel-item.controller.ts +2 -1
  56. package/src/controller/utils/data-file-util/data-file-util.ts +16 -27
  57. package/src/install.ts +7 -1
  58. package/src/interface/controller/event/argument/form-detail.event.ts +26 -2
  59. package/src/interface/controller/event/argument/index.ts +2 -0
  60. package/src/interface/controller/event/argument/panel-item.event.ts +25 -1
  61. package/src/interface/provider/i-async-action.provider.ts +29 -0
  62. package/src/interface/provider/index.ts +1 -0
  63. package/src/interface/service/service/i-async-action.service.ts +29 -0
  64. package/src/interface/service/service/index.ts +1 -0
  65. package/src/register/helper/async-action-register.ts +47 -0
  66. package/src/register/helper/index.ts +1 -0
  67. package/src/service/app-data-entity/app-data-entity.ts +3 -3
  68. package/src/service/service/async-action/async-action.service.ts +37 -0
  69. package/src/service/service/index.ts +1 -0
  70. package/src/types.ts +10 -0
@@ -1,5 +1,5 @@
1
- System.register(["@ibiz-template/core","lodash-es","qx-util","qs","ramda","dayjs","async-validator","path-browserify"],function(d,ra){"use strict";var f,m,D,Tt,Bt,R,Ot,na,At,oa,ua,ca,la,ce,da,le,ha,k,de,_t,Mt,he,It,xt,pe,pa,fa,j,ma,Vt,Ea,ga,mt,Ca,Da,wa,va,Aa,Ia,ya,Fa,Pa,x,V,fe,Et,Y,kt,me,Ee,ba,ge,Ce,Sa,Na,w,De,T,v,rt,gt,we,ve,Ct,L,Ae,Ie;return{setters:[function(g){f=g.RuntimeError,m=g.RuntimeModelError,D=g.ModelError,Tt=g.IBizContext,Bt=g.DataTypes,R=g.HttpResponse,Ot=g.HttpError,na=g.clone,At=g.CoreConst,oa=g.Net,ua=g.getToken,ca=g.NOOP,la=g.IBizParams,ce=g.NoticeError,da=g.isElementSame,le=g.findRecursiveChild,ha=g.StringUtil,k=g.recursiveIterate,de=g.debounceAndAsyncMerge,_t=g.mergeDefaultInLeft,Mt=g.isOverlap,he=g.awaitTimeout,It=g.mergeInLeft,xt=g.plus,pe=g.toNumberOrNil},function(g){pa=g.isEmpty,fa=g.isString,j=g.isArray,ma=g.isObject,Vt=g.debounce,Ea=g.isNil,ga=g.camelCase,mt=g.eq,Ca=g.gt,Da=g.gte,wa=g.findIndex,va=g.lt,Aa=g.lte,Ia=g.upperFirst,ya=g.snakeCase,Fa=g.kebabCase,Pa=g.isFunction},function(g){x=g.notNilEmpty,V=g.isNilOrEmpty,fe=g.AsyncSeriesHook,Et=g.QXEvent,Y=g.createUUID,kt=g.isArray,me=g.setCookie,Ee=g.clearCookie,ba=g.clearAll,ge=g.isNumber,Ce=g.ascSort,Sa=g.descSort},function(g){Na=g.default},function(g){w=g.isNil,De=g.mergeRight,T=g.isEmpty,v=g.clone,rt=g.equals,gt=g.where,we=g.mergeLeft,ve=g.isNotNil,Ct=g.mergeDeepRight},function(g){L=g.default},function(g){Ae=g.default},function(g){Ie=g.default}],execute:function(){d({asyncImportData:Qn,calcContentAlignStyle:Ui,calcDeCodeNameById:_,calcDynaClass:Dt,calcGridLayoutPos:zi,calcLayoutHeightWidth:Ut,calcMainStateOPPrivsStrs:Va,calcNavParams:Wt,calcResPath:Qt,compare:Ft,compareNumber:Le,contains:Pt,convertNavData:b,convertNavDataByArray:Ma,convertObjectToNavParams:ye,execDELogic:te,execDELogicAction:bs,execDELogicById:Ps,execFieldLogics:Rt,execUILogic:se,exportData:Ms,filterFieldLogics:Wa,filterValueRules:_e,findChildFormDetails:Gt,findDELogic:be,findEditItem:Ua,findFieldById:wt,findModelChild:lt,formatMultiData:Fe,generateEditorRules:He,generateRules:Xe,getAllPanelField:Ha,getAppCounterProvider:es,getAppViewRef:ki,getChildNodeRSs:Re,getControl:Vi,getControlProvider:dt,getControlsByView:za,getDeACMode:Gi,getDefaultValue:Ye,getEditorProvider:bt,getFormDetailProvider:We,getGridColumnProvider:Ue,getMatchResPath:vs,getOriginData:_s,getPFPlugin:Wi,getPanelItemProvider:cs,getPortletProvider:hs,getRootNode:Se,getTreeNode:Ne,getUIActionById:zt,getUIActionProvider:ms,getUILogicNodeProvider:gs,getViewEngines:ja,getViewLogics:Ga,getViewProvider:Or,getWFContext:Qa,getWFSubmitViewId:hr,handleAllSettled:nt,hasDeCodeName:ka,hasSubRoute:Ke,importData:$n,install:Wu,installCommand:Bs,isDataContainer:Ka,isValueChange:ae,matchMainState:xa,openRedirectView:Ya,parseUserParams:Pe,presetAppCounterProvider:Ds,presetUIActionProvider:Ws,registerAppCounterProvider:ts,registerControlProvider:Pr,registerEditorProvider:br,registerFormDetailProvider:Sr,registerGridColumnProvider:Nr,registerPanelItemProvider:Rr,registerPortletProvider:Lr,registerUIActionProvider:Nt,registerUILogicNodeProvider:Tr,registerViewProvider:Br,strContain:jt,testCond:$,toLocalOpenWFRedirectView:qa,verifyDeRules:Te,verifyFormGroupLogic:Kt,verifyPanelGroupLogic:Xt});var g=typeof globalThis<"u"?globalThis:typeof window<"u"?window:typeof global<"u"?global:typeof self<"u"?self:{};function yt(t){return t&&t.__esModule&&Object.prototype.hasOwnProperty.call(t,"default")?t.default:t}var Ra={exports:{}};(function(t,e){(function(a,s){t.exports=s()})(g,function(){return function(a,s,i){var r=function(n,o){if(!o||!o.length||o.length===1&&!o[0]||o.length===1&&Array.isArray(o[0])&&!o[0].length)return null;var u;o.length===1&&o[0].length>0&&(o=o[0]),u=(o=o.filter(function(l){return l}))[0];for(var c=1;c<o.length;c+=1)o[c].isValid()&&!o[c][n](u)||(u=o[c]);return u};i.max=function(){var n=[].slice.call(arguments,0);return r("isAfter",n)},i.min=function(){var n=[].slice.call(arguments,0);return r("isBefore",n)}}})})(Ra);var ri=Ra.exports,ni=yt(ri),La={exports:{}};(function(t,e){(function(a,s){t.exports=s()})(g,function(){return function(a,s){s.prototype.isSameOrBefore=function(i,r){return this.isSame(i,r)||this.isBefore(i,r)}}})})(La);var oi=La.exports,ui=yt(oi),Ta={exports:{}};(function(t,e){(function(a,s){t.exports=s()})(g,function(){var a="month",s="quarter";return function(i,r){var n=r.prototype;n.quarter=function(c){return this.$utils().u(c)?Math.ceil((this.month()+1)/3):this.month(this.month()%3+3*(c-1))};var o=n.add;n.add=function(c,l){return c=Number(c),this.$utils().p(l)===s?this.add(3*c,a):o.bind(this)(c,l)};var u=n.startOf;n.startOf=function(c,l){var h=this.$utils(),p=!!h.u(l)||l;if(h.p(c)===s){var E=this.quarter()-1;return p?this.month(3*E).startOf(a).startOf("day"):this.month(3*E+2).endOf(a).endOf("day")}return u.bind(this)(c,l)}}})})(Ta);var ci=Ta.exports,li=yt(ci),Ba={exports:{}};(function(t,e){(function(a,s){t.exports=s()})(g,function(){var a="week",s="year";return function(i,r,n){var o=r.prototype;o.week=function(u){if(u===void 0&&(u=null),u!==null)return this.add(7*(u-this.week()),"day");var c=this.$locale().yearStart||1;if(this.month()===11&&this.date()>25){var l=n(this).startOf(s).add(1,s).date(c),h=n(this).endOf(a);if(l.isBefore(h))return 1}var p=n(this).startOf(s).date(c).startOf(a).subtract(1,"millisecond"),E=this.diff(p,a,!0);return E<0?n(this).startOf("week").week():Math.ceil(E)},o.weeks=function(u){return u===void 0&&(u=null),this.week(u)}}})})(Ba);var di=Ba.exports,hi=yt(di),Oa={exports:{}};(function(t,e){(function(a,s){t.exports=s()})(g,function(){var a="day";return function(s,i,r){var n=function(c){return c.add(4-c.isoWeekday(),a)},o=i.prototype;o.isoWeekYear=function(){return n(this).year()},o.isoWeek=function(c){if(!this.$utils().u(c))return this.add(7*(c-this.isoWeek()),a);var l,h,p,E,C=n(this),S=(l=this.isoWeekYear(),h=this.$u,p=(h?r.utc:r)().year(l).startOf("year"),E=4-p.isoWeekday(),p.isoWeekday()>4&&(E+=7),p.add(E,a));return C.diff(S,"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)}}})})(Oa);var pi=Oa.exports,fi=yt(pi),mi=class{constructor(){this.view={enableDataInfoBar:!0,expCacheMode:"TABEXPPANEL:"},this.grid={editShowMode:"row",editSaveMode:"cell-blur"},this.appMenu={enableEcho:!0},this.codeList={timeout:60*60*1e3}}},Ei=d("RegisterCenter",class{constructor(){this.providers=new Map}register(t,e){this.providers.set(t,e)}unRegister(t){this.providers.delete(t)}get(t,...e){const a=this.providers.get(t);if(a)return a(...e)}}),Q=class{static isHelperName(t){return this.helperNames.includes(t)}static handleJudgmentExecute(t,e,a){return a.fn?e?a.fn(t):a.inverse(t):e?a.hash.yes=!0:a.hash.no=!1}};Q.helperNames=["lookup","log","and","camelCase","concat","eq","gt","get","lowerCase","lt","lte","neq","not","or","pascalCase","pluralize","snakeCase","spinalCase","upperCase"];var O=class{constructor(t,e){t.registerHelper(e,this.onExecute)}},gi=class extends O{constructor(t){super(t,"and")}onExecute(...t){const e=t[t.length-1];t.pop();const s=t.filter(i=>!!i).length===t.length;return Q.handleJudgmentExecute(this,s,e)}},Ci=class extends O{constructor(t){super(t,"camelCase")}onExecute(t){return t?ga(t):""}},Di=class extends O{constructor(t){super(t,"concat")}onExecute(...t){return t.pop(),t.join("")}},wi=class extends O{constructor(t){super(t,"eq")}onExecute(t,e,a){const s=mt(t,e);return Q.handleJudgmentExecute(this,s,a)}},vi=class extends O{constructor(t){super(t,"gt")}onExecute(t,e,a){const s=Ca(t,e);return Q.handleJudgmentExecute(this,s,a)}},Ai=class extends O{constructor(t){super(t,"gte")}onExecute(t,e,a){const s=Da(t,e);return Q.handleJudgmentExecute(this,s,a)}},Ii=class extends O{constructor(t){super(t,"eqPropertyValue")}onExecute(t,e,a,s){let i=!1;return j(t)?i=!mt(wa(t,r=>mt(r[e],a)),-1):i=t.hasOwnProperty(e)&&(i=mt(t[e],a)),Q.handleJudgmentExecute(this,i,s)}},yi=class extends O{constructor(t){super(t,"jsonParse")}onExecute(t){return JSON.parse(t)}},Fi=class extends O{constructor(t){super(t,"jsonStringify")}onExecute(t,e){return JSON.stringify(t,null,typeof e=="number"?e:void 0)}},Pi=class extends O{constructor(t){super(t,"lowerCase")}onExecute(t){return t?t.toLowerCase():""}},bi=class extends O{constructor(t){super(t,"lt")}onExecute(t,e,a){const s=va(t,e);return Q.handleJudgmentExecute(this,s,a)}},Si=class extends O{constructor(t){super(t,"lte")}onExecute(t,e,a){const s=Aa(t,e);return Q.handleJudgmentExecute(this,s,a)}},Ni=class extends O{constructor(t){super(t,"neq")}onExecute(t,e,a){const s=!mt(t,e);return Q.handleJudgmentExecute(this,s,a)}},Ri=class extends O{constructor(t){super(t,"not")}onExecute(t,e){const a=Handlebars.Utils.isEmpty(t);return Q.handleJudgmentExecute(this,a,e)}},Li=class extends O{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||""}},Ti=class extends O{constructor(t){super(t,"pascalCase")}onExecute(t){return t?Ia(t):""}},Bi=class extends O{constructor(t){super(t,"snakeCase")}onExecute(t){return t?ya(t):""}},Oi=class extends O{constructor(t){super(t,"spinalCase")}onExecute(t){return t?Fa(t):""}},_i=class extends O{constructor(t){super(t,"upperCase")}onExecute(t){return t?t.toUpperCase():""}};function Mi(t){new gi(t),new Ci(t),new Di(t),new wi(t),new vi(t),new Ai(t),new yi(t),new Fi(t),new Pi(t),new bi(t),new Si(t),new Ni(t),new Ri(t),new Li(t),new Ti(t),new Bi(t),new Oi(t),new _i(t),new Ii(t)}var xi=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,Mi(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 ye(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 b(t,...e){if(!t||pa(t))return{};const a=Array.isArray(t)?t:ye(t);return Ma(a,...e)}function _a(t,e){const a=t.find(s=>V(s)?!1:s[e]||Object.prototype.hasOwnProperty.call(s,e));return{find:!!a,value:a?.[e]}}function Ma(t,...e){const a=/\$\{[^}]*\}/g,s={};for(const i of t)if(i.rawValue)s[i.key.toLowerCase()]=i.value||null;else{const r=i.value.match(a);if(r!==null){let n=i.value;r.forEach(o=>{const{find:u,value:c}=_a(e,o.slice(2,-1));u&&(n=n.replace(o,"".concat(c)))}),s[i.key.toLowerCase()]=n}else{const{find:n,value:o}=_a(e,i.value);n&&(s[i.key.toLowerCase()]=o)}}return s}function Fe(t,e){const a={};if(!t)return a;const s=Array.isArray(t)?t:ye(t),i=e[0];return s.forEach(r=>{const{rawValue:n,value:o}=r;!n&&o&&Object.prototype.hasOwnProperty.call(i,o)&&(a[o]=e.map(u=>u[o]).join(";"))}),a}function Wt(t,e){const{deName:a,navFilter:s,pickupDEFName:i,navContexts:r,navParams:n}=t,{context:o,params:u,data:c,derValue:l}=e,h={},p={},E=l||c.srfkey;E&&(a&&(h[a]=E),s&&(p[s]=E),i&&(p["n_".concat(i.toLowerCase(),"_eq")]=E));const C=b(r,c,u,o),S=b(n,c,u,o);return Object.assign(h,C),Object.assign(p,S),{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 Vi(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 ki(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 Pe(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(e,{[n[1]]:r});break;case"SRFNAVCTX":Object.assign(a,{[n[1]]:r});break;default:Object.assign(s,{key:r});break}}}return{navigateContexts:e,navigateParams:a,other:s}}function Wi(t,e){var a;const s=(a=t.appPFPluginRefs)==null?void 0:a.find(i=>i.id===e);if(!s)throw new Error("\u672A\u627E\u5230\u63D2\u4EF6".concat(e));return s}function Ut(t){const{width:e,height:a,widthMode:s,heightMode:i}=t,r={width:"",height:""};return s==="FULL"?r.width="100%":e&&e>0&&(e>0&&e<=1?r.width="".concat(e*100,"%"):s==="PERCENTAGE"?r.width="".concat(e,"%"):r.width="".concat(e,"px")),i==="FULL"?r.height="100%":a&&a>0&&(a>0&&a<=1?r.height="".concat(a*100,"%"):i==="PERCENTAGE"?r.height="".concat(a,"%"):r.height="".concat(a,"px")),r}function Ui(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 zi(t){const{layout:e,colXS:a,colXSOffset:s,colSM:i,colSMOffset:r,colMD:n,colMDOffset:o,colLG:u,colLGOffset:c}=t,l=(h,p)=>({span:(!h||h===-1?e==="TABLE_24COL"?24:12:h)*(e==="TABLE_24COL"?1:2),offset:!p||p===-1?void 0:p});return{xs:l(a,s),sm:l(i,r),md:l(n,o),lg:l(u,c)}}function Dt(t,e){const a=[],s=B.execScriptFn({data:e},t,{singleRowReturn:!0,isAsync:!1});return fa(s)?a.push(s):j(s)?a.push(...s):ma(s)&&Object.keys(s).forEach(i=>{s[i]&&a.push(i)}),a}function xa(t,e){const{mainStateAppDEFieldIds:a,demainStates:s}=t;if(a&&s){const i=[];return a.forEach(r=>{i.push(e[r])}),s.find(r=>{const{stateValue:n,state2Value:o,state3Value:u}=r;let c=!0;const l=[n,o,u];for(let h=0;h<i.length;h++)if("".concat(i[h])!=="".concat(l[h])){c=!1;break}return c})}}function Va(t,e){const a=ibiz.hub.getApp().model,{demainStateOPPrivs:s,opprivAllowMode:i}=t,r=s?.map(o=>o.name)||[];let n=[];return i?n=r:n=[...a.deopprivs,...e.deopprivs].filter(u=>!r.includes(u.name)).map(u=>u.name),n}function _(t){return t.split(".").pop()}function ka(t,e){const a=_(e);return x(t[a])}async function Gi(t,e,a){var s;return(s=(await ibiz.hub.getAppDataEntity(e,a)).appDEACModes)==null?void 0:s.find(n=>n.id===t)}function be(t,e){var a;return(a=e.appDELogics)==null?void 0:a.find(s=>s.id===t)}function Wa(t,e){var a,s;const i=[];return(a=t.appDEFields)==null||a.forEach(r=>{e==="compute"&&r.computeAppDEFLogicId?i.push(r.computeAppDEFLogicId):e==="change"&&r.onChangeAppDEFLogicId?i.push(r.onChangeAppDEFLogicId):e==="default"&&r.defaultValueAppDEFLogicId&&i.push(r.defaultValueAppDEFLogicId)}),((s=t.appDELogics)==null?void 0:s.filter(r=>i.includes(r.id)))||[]}function wt(t,e){var a;return(a=t.appDEFields)==null?void 0:a.find(s=>s.id===e)}async function zt(t){const[,,e]=t.split("@");return ibiz.hub.getApp(e).getUIAction(t)}function Se(t){return t.detreeNodes.find(e=>e.rootNode)}function Ne(t,e){return t.detreeNodes.find(a=>a.id===e)}function ji(t,e){return t===3||(e?t===1:t===2)}function Re(t,e){const a=e.parentId||Se(t).id;return t.detreeNodeRSs.filter(s=>s.parentDETreeNodeId===a&&ji(s.searchMode,e.hasQuery))}function Ua(t,e){var a;return(a=t.degridEditItems)==null?void 0:a.find(s=>s.codeName===e)}function Gt(t){let e;switch(t.detailType){case"TABPANEL":e=t.deformTabPages;break;case"FORMPAGE":case"TABPAGE":case"GROUPPANEL":e=t.deformDetails;break}return e||[]}function za(t){const{viewLayoutPanel:e}=t,a=t.controls||[];return e&&a.push(...e.controls||[]),a}function Ga(t){const{viewLayoutPanel:e}=t,a=t.appViewLogics||[];return e&&a.push(...e.appViewLogics||[]),a}function ja(t){const{viewLayoutPanel:e}=t,a=t.appViewEngines||[];return e&&a.push(...e.appViewEngines||[]),a.filter(s=>{switch(s.engineCat){case"CTRL":return ibiz.log.warn("\u672A\u652F\u6301\u7684\u5F15\u64CE\u5206\u7C7B\uFF1A".concat(s.engineType)),!1;default:return!0}})}function Ka(t){return t.itemType==="CONTAINER"&&["CONTAINER_MULTIDATA","CONTAINER_SINGLEDATA"].includes(t.predefinedType)}var Ki=["panelItems","panelTabPages","rootPanelItems"];function Xa(t){let e=[];for(const s of Ki)if(t[s]){e=t[s];break}const a=[];return e.length&&(a.push(...e.filter(s=>s.itemType==="FIELD")),e.forEach(s=>{Ka(s)||a.push(...Xa(s))})),a}function Ha(t){return Xa(t)}async function Ya(t,e,a={},s={}){return Xi(t,e,a,s)}async function qa(t,e,a={}){const s=e.lastIndexOf("?"),i=decodeURIComponent(e.substring(s+1,e.length)),r=Na.parse(i,{delimiter:";"}),n=r.srfdename||"";if(!n)throw new f("\u91CD\u5B9A\u5411\u53C2\u6570\u7F3A\u5C11\u5B9E\u4F53\u540D\u79F0");const u=ibiz.hub.getApp(t.srfappid).deName2DeCodeName.get(n.toUpperCase());if(!u)throw new f("\u672A\u627E\u5230\u6307\u5B9A\u5B9E\u4F53\u7684codeName: ".concat(n));r[u.toLowerCase()]=r[n.toLowerCase()];const c="".concat(u).concat(ibiz.env.isMob?"Mob":"","RedirectView"),l=await ibiz.hub.getAppView(c);if(delete r.srfdename,r.srfwf!=="undo"){const p=r.processDefinitionKey.split("-")[3],E=p.substring(0,p.lastIndexOf("v")),C=p.substring(p.lastIndexOf("v"));r.wf=E,r.wfVersion=C}r.srfprocessinstanceid&&(t.srfprocessinstanceid=r.srfprocessinstanceid,delete r.srfprocessinstanceid),await ibiz.commands.execute(Z.TAG,l.id,t,r,a)}async function Xi(t,e,a={},s={}){var i;const r=t.appViewNavContexts||[],n=b(r,a,e);e=Object.assign(e.clone(),n);const o=t.appViewNavParams||[],u=b(o,a,e);Object.assign(a,u);const c=t.appDataEntityId,l=_(c);let h=((i=s.data)==null?void 0:i[0])||{};e[l]=h[l]||e[l]||a[l];const p=t.getDataAppDEActionId,C=await ibiz.hub.getApp(t.appId).deService.getService(c);ibiz.loading.showRedirect();try{const q=await C.exec(p||"get",e,a);if(q.ok){h=q.data;let P=h.linkurl;if(P)return e.srfprocessinstanceid&&(P+=";srfprocessinstanceid=".concat(e.srfprocessinstanceid)),ibiz.env.dev&&P.indexOf("appredirectview?")!==-1&&(P=P.slice(P.indexOf("appredirectview?"))),P.startsWith("http://")||P.startsWith("https://")?new Promise(et=>{const $s=window.open(P,"_blank");$s&&($s.callback=()=>{et({ok:!0,data:[]})})}):P.startsWith("appredirectview?")?(await qa(e,P,s),{ok:!0,data:[]}):{ok:!1,data:[]}}}finally{ibiz.loading.hideRedirect()}const S=await ibiz.hub.getAppDataEntity(c,t.appId),A=await Hi(S,t,a,h),y=A.split(":"),F=y.length===2?A:y.slice(0,2).join(":"),I="".concat(S.name.toUpperCase(),":").concat(A),N=t.redirectAppViewRefs,z=N?.find(q=>{const P=q.name||q.id;return P===I||P===A||P===F});if(z){const q=z.refAppViewId;if(q){const P=await ibiz.commands.execute(Z.TAG,q,e,a,{...s,data:[h]});if(P)return P}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",N?.map(({refAppViewId:q,name:P,realTitle:et})=>({viewId:q,tag:P,title:et}))),new m(t,"\u672A\u627E\u5230\u91CD\u5B9A\u5411\u6807\u8BC6[".concat(A,"]\u6216[").concat(I,"]\u6216\u5DE5\u4F5C\u6D41[").concat(F,"]\u5BF9\u5E94\u89C6\u56FE"));return{ok:!0,data:[]}}async function Hi(t,e,a,s){let i="";const r=e.typeAppDEFieldId;if(r){const{codeName:c}=wt(t,r),l=s[c.toLowerCase()];if(x(l))return"".concat(l);ibiz.log.warn("\u91CD\u5B9A\u5411\u89C6\u56FE[".concat(e.name,"]\u81EA\u5B9A\u4E49\u7C7B\u522B\u5C5E\u6027[").concat(r,"]\u503C\u4E3A\u7A7A"),s)}const n="".concat(ibiz.env.isMob?"MOB":"","EDITVIEW"),o=a.srfwf;if(x(o))return x(a.wf)?"".concat(n,":").concat(o.toUpperCase(),":").concat(a.wf.toUpperCase()):"".concat(n,":").concat(o.toUpperCase());let u="";if(t.indexTypeAppDEFieldId){const{codeName:c}=wt(t,t.indexTypeAppDEFieldId);u=s[c.toLowerCase()]}if(V(u)&&t.formTypeAppDEFieldId){const{codeName:c}=wt(t,t.formTypeAppDEFieldId);u=s[c.toLowerCase()]}return x(u)?i="".concat(n,":").concat(u.toString().toUpperCase()):i="".concat(n),i}function $(t,e,a){if(Object.is(e,"IN"))return Pt(t,a);if(Object.is(e,"NOTIN"))return!Pt(t,a);switch(e){case"EQ":return"".concat(t)==="".concat(a);case"NOTEQ":return"".concat(t)!=="".concat(a);case"LT":return Ft(t,a)<0;case"LTANDEQ":return Ft(t,a)<=0;case"GT":return Ft(t,a)>0;case"GTANDEQ":return Ft(t,a)>=0;case"ISNULL":return V(t);case"ISNOTNULL":return x(t);case"TESTNULL":return w(t);case"IN":return Pt(t,a);case"NOTIN":return!Pt(t,a);case"LIKE":return jt(t,a);case"LEFTLIKE":return jt(t,a,"start");case"RIGHTLIKE":return jt(t,a,"end");default:throw new f("\u503C\u64CD\u4F5C\uFF1A".concat(e,"\uFF0C\u6682\u672A\u652F\u6301"))}}function Ft(t,e){const a=Number(t),s=Number(e);if(!Number.isNaN(a)&&!Number.isNaN(s))return Le(a,s);const i=new Date(t).getTime(),r=new Date(e).getTime();if(!Number.isNaN(i)&&!Number.isNaN(r))return Le(i,r);throw new f("".concat(t," \u548C ").concat(e," \u65E0\u6CD5\u6BD4\u8F83\u5927\u5C0F"))}function Le(t,e){return Number.isNaN(t)&&(t=0),Number.isNaN(e)&&(e=0),t>e?1:t<e?-1:0}function Pt(t,e){if(!e||typeof e!="string")throw new f("\u8303\u56F4\u6BD4\u8F83\u7684\u6761\u4EF6\u503C\u4E0D\u5B58\u6216\u8005\u4E0D\u662F\u5B57\u7B26\u4E32");return t?e.split(",").includes("".concat(t)):!1}function jt(t,e,a){if(!t||!e)return!1;const s="".concat(t).toUpperCase(),i="".concat(e).toUpperCase(),r=s.indexOf(i);switch(a){case"start":return r===0;case"end":return r+i.length===s.length;default:return r!==-1}}var Yi={singleRowReturn:!1,isAsync:!0},qi=d("ScriptFunction",class{constructor(t,e,a=Yi){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){const a=e.view;switch(t){case"util":e.util={message:ibiz.message,notification:ibiz.notification,modal:ibiz.modal,confirm:ibiz.confirm,openView:ibiz.openView};break;case"viewParam":e.viewParam=e.params;break;case"env":e.env=ibiz.env;break;case"app":e.app=ibiz.hub.controller;break;case"parent":e.parent=a?.parentView;break;case"topView":e.topView=a?.getTopView();break;case"parentView":e.parentView=a?.parentView;break;case"topViewSession":e.topViewSession=a?.getTopView().session;break;case"viewSession":e.viewSession=a?.session;break;case"appSession":e.appSession=ibiz.hub.controller.session;break}}exec(t){const e=this.convertArgs(t);return this.scriptFn(...e)}}),B=d("ScriptFactory",class{static createScriptFn(t,e,a){return new qi(t,e,a)}static execScriptFn(t,e,a){return this.createScriptFn(Object.keys(t),e,a).exec(t)}static execSingleLine(t,e={}){return this.execScriptFn(e,t,{singleRowReturn:!0,isAsync:!1})}});function Qi(t){return t.condType==="GROUP"}function $i(t){return t.condType==="SIMPLE"}function Ji(t){return t.condType==="VALUERANGE2"}function Zi(t){return t.condType==="REGEX"}function tr(t){return t.condType==="STRINGLENGTH"}function er(t){return t.condType==="SYSVALUERULE"}function Te(t,e,a){const s={isPast:!0,infoMessage:a.ruleInfo};if(Qi(a)){const i=a.conds;i&&i.length>0&&(s.isPast=ar(i,r=>{const{isPast:n,infoMessage:o}=Te(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($i(a))s.isPast=!sr(e[t],a.condOp,a.paramValue,a.ruleInfo,a.paramType,e,a.keyCond);else if(Ji(a))s.isPast=!rr(e[t],a.minValue,a.includeMinValue,a.maxValue,a.includeMaxValue,a.ruleInfo,a.keyCond);else if(Zi(a))s.isPast=!Be(e[t],a.regExCode,a.ruleInfo,a.keyCond);else if(tr(a))s.isPast=!ir(e[t],a.minValue,a.includeMinValue,a.maxValue,a.includeMaxValue,a.ruleInfo,a.keyCond);else if(er(a)&&a?.sysValueRule){const{ruleType:i,regExCode:r,scriptCode:n,ruleInfo:o}=a.sysValueRule;if(s.infoMessage=a.ruleInfo||o,i==="REG")s.isPast=!Be(e[t],r,s.infoMessage,a.keyCond);else if(i==="SCRIPT"){const{isPast:u,infoMessage:c}=nr(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 ar(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 sr(t,e,a,s,i,r,n){Object.is(i,"CURTIME")&&(a="".concat(new Date)),Object.is(i,"ENTITYFIELD")&&(a=a?a.toLowerCase():"",a=r[a]?r[a]:a),(w(s)||T(s))&&(s="\u5185\u5BB9\u5FC5\u987B\u7B26\u5408\u503C\u89C4\u5219");const o=$(t,e,a);if(!o&&n)throw new f(s);return!o}function ir(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 Be(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 rr(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(Be(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 nr(t,e,a,s,i){V(s)&&(s="\u503C\u5FC5\u987B\u7B26\u5408\u811A\u672C\u89C4\u5219");const r=e;let n="",o=!0;const u=c=>{o=!1,c?.length>0?c.forEach(l=>{l?.message&&(n+=l.message)}):c?.message&&(n=c.message)};try{const c=B.execScriptFn({value:t,data:r},a,{isAsync:!1});typeof c=="boolean"&&(o=c)}catch(c){ibiz.log.error(c),u(c)}if(s="",!o&&i)throw new f(s);return{isPast:o,infoMessage:n||s}}function or(t){return t.logicType==="GROUP"}function ur(t){return t.logicType==="SINGLE"}function Kt(t,e){if(or(e)){const a=e.defdlogics;if(!a||a.length===0)throw new m(e,"\u53D1\u73B0\u7A7A\u903B\u8F91\u7EC4\uFF0C\u903B\u8F91\u65E0\u6CD5\u6B63\u5E38\u6267\u884C\uFF01");let s=!0;return e.groupOP==="AND"?s=a.find(r=>!Kt(t,r))===void 0:e.groupOP==="OR"&&(s=e.defdlogics.find(r=>Kt(t,r))!==void 0),e.notMode?!s:s}if(ur(e))return $(t[e.defdname.toLowerCase()],e.condOP,e.value);throw new D(e,"\u672A\u652F\u6301\u7684\u903B\u8F91\u7C7B\u578B".concat(e.logicType))}function cr(t){return t.logicType==="GROUP"}function lr(t){return t.logicType==="SINGLE"}function Xt(t,e){if(cr(e)){const a=e.panelItemLogics;if(!a||a.length===0)throw new m(e,"\u53D1\u73B0\u7A7A\u903B\u8F91\u7EC4\uFF0C\u903B\u8F91\u65E0\u6CD5\u6B63\u5E38\u6267\u884C\uFF01");let s=!0;return e.groupOP==="AND"?s=a.find(r=>!Xt(t,r))===void 0:e.groupOP==="OR"&&(s=e.panelItemLogics.find(r=>Xt(t,r))!==void 0),e.notMode?!s:s}if(lr(e))return $(t[e.dstModelField.toLowerCase()],e.condOp,e.value);throw new D(e,"\u672A\u652F\u6301\u7684\u903B\u8F91\u7C7B\u578B".concat(e.logicType))}var dr=d("LayoutPanelUtil",class{constructor(){this.cache=new Map}register(t,e){this.cache.set(t,e)}get(t){return this.cache.get(t)}fill(t){const{viewLayoutPanel:e}=t;if(!e||e.useDefaultLayout===!0){const a=this.calcLayoutTag(t);if(this.cache.has(a)){const s=v(this.cache.get(a));t.viewLayoutPanel=s,t.appCounterRefs&&(s.appCounterRefs=t.appCounterRefs,delete t.appCounterRefs),t.appViewEngines&&(s.appViewEngines=t.appViewEngines,delete t.appViewEngines),t.appViewLogics&&(s.appViewLogics=t.appViewLogics,delete t.appViewLogics),t.appViewRefs&&(s.appViewRefs=t.appViewRefs,delete t.appViewRefs),t.controls&&(s.controls=t.controls,delete t.controls)}}return t}calcLayoutTag(t){const{viewType:e,viewStyle:a}=t;switch(e){case"APPINDEXVIEW":return this.calcIndexViewLayoutTag(t);default:return"".concat(e,"_").concat(a)}}calcIndexViewLayoutTag(t){const{viewType:e,viewStyle:a,blankMode:s,mainMenuAlign:i}=t;let r="";return s?r="BLANK_MODE":i&&(r=i.toUpperCase()),r!==""?"".concat(e,"_").concat(a,"_").concat(r):"".concat(e,"_").concat(a)}});function Qa(t){const e={};return t.param09&&(e.srfprocessinstanceid=t.param09),e}function hr(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 pr=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))(pr||{})),fr=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))(fr||{})),mr=d("ViewMode",(t=>(t.ROUTE="ROUTE",t.MODAL="MODAL",t.DRAWER="DRAWER",t.EMBED="EMBED",t.POPOVER="POPOVER",t))(mr||{})),Er=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.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))(Er||{})),gr=d("ViewCallTag",(t=>(t.LOAD="Load",t.GET_DATA="GetData",t.GET_ALL_DATA="GetAllData",t.VALIDATE="Validate",t.TOGGLE_COLLAPSE="ToggleCollapse",t))(gr||{})),Cr=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))(Cr||{})),Oe=d("StudioViewEvents",class{});Oe.onViewMounted="onMounted",Oe.onViewDestroyed="onDestroyed";var Ht=d("StudioPanelEvents",class{});Ht.onClick="onClick",Ht.onChange="onChange",Ht.onEnter="onEnter",Ht.onLeave="onLeave";var W=d("StudioControlEvents",class{});W.onBeforeLoad="onBeforeLoad",W.onLoadSuccess="onLoadSuccess",W.onLoadError="onLoadError",W.onBeforeLoadDraft="onBeforeLoadDraft",W.onLoadDraftSuccess="onLoadDraftSuccess",W.onLoadDraftError="onLoadDraftError",W.onBeforeSave="onBeforeSave",W.onSaveSuccess="onSaveSuccess",W.onSaveError="onSaveError",W.onBeforeRemove="onBeforeRemove",W.onRemoveSuccess="onRemoveSuccess",W.onRemoveError="onRemoveError",W.CLICK="onClick";var Dr=d("Modal",class{constructor(t){this.mode="EMBED",this.viewUsage=4,this.ignoreDismissCheck=!1,this.hooks={shouldDismiss:new fe,beforeDismiss:new fe},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 _e(t,e){return t.filter(a=>{const{checkMode:s}=a,i=a.deformItemName||a.degridEditItemName;return s!==2&&i===e})}var wr=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("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 Ar=class{constructor(){this.psModelGroupCondBase=null}parse(t){if(t instanceof Array){const e=this.createPSModelGroupCond();e.parse(t),this.psModelGroupCondBase=e}}testSingleCond(t,e,a){try{if(t==="ISNULL")return e==null;if(t==="ISNOTNULL")return e!=null;if(t==="EQ"||t==="ABSEQ"||t==="GT"||t==="GTANDEQ"||t==="LT"||t==="LTANDEQ"||t==="NOTEQ"){let s=-1;if(e==a?s=0:e>a&&(s=1),t==="EQ"||t==="ABSEQ")return s===0;if(t==="GT")return s>0;if(t==="GTANDEQ")return s>=0;if(t==="LT")return s<0;if(t==="LTANDEQ")return s<=0;if(t==="NOTEQ")return s!==0}if(t==="LIKE")return e!=null&&a!=null?e.toString().toUpperCase().indexOf(a.toString().toUpperCase())!==-1:!1;if(t==="LEFTLIKE")return e!=null&&a!=null?e.toString().toUpperCase().indexOf(a.toString().toUpperCase())===0:!1}catch(s){ibiz.log.error(s)}return!1}getPSModelGroupCondBase(){return this.psModelGroupCondBase}},$a=class{constructor(){this.strCondOp=null}getCondOp(){return this.strCondOp}setCondOp(t){this.strCondOp=t}},Me=class extends $a{parse(t){const e=t.length;let a=!0,s=!1,i=!1;for(let r=0;r<e;r++){if(a){const n=t[r];this.setCondOp(n),a=!1,s=!0;continue}if(s){const n=t[r];this.setParam(n),s=!1,i=!0;continue}if(i){const n=t[r];if(n instanceof Object&&!(n instanceof Array)){const o=n;o.type!=null&&this.setValueType(o.type.toString()),o.value!=null&&this.setValue(o.value.toString())}else this.setValue(n);break}}}getValueType(){return this.strValueType}setValueType(t){this.strValueType=t}getValue(){return this.strValue}setValue(t){this.strValue=t}getParamType(){return this.strParamType}setParamType(t){this.strParamType=t}getParam(){return this.strParam}setParam(t){this.strParam=t}},Ja=class Js extends $a{constructor(){super(...arguments),this.childCondList=[],this.bNotMode=!1}parse(e){const a=e.length;let s=!0,i=!0,r=!1;for(let n=0;n<a;n++){if(s&&i&&e[n]==="!"){this.setNotMode(!0),s=!1;continue}if(i){const o=e[n];this.setCondOp(o),i=!1,s=!1,r=!0;continue}if(r){const o=e[n];if(o instanceof Array)o.forEach(u=>{if(u.length>0){const c=u[0].toString();if(c==="!"||c==="OR"||c==="AND"){const l=new Js;l.parse(u),this.childCondList.push(l)}else{const l=new Me;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}},Ir=class extends Ja{},yr=class extends Me{},xe=class sa extends Ar{test(e,a){return this.testCond(this.getPSModelGroupCondBase(),e,a)}testCond(e,a,s){if(e instanceof Ja){const i=e.getChildPSModelCondBases();if(i==null||T(i))return!e.isNotMode();const r=e.getCondOp()==="AND";let n=r;for(let o=0;o<i.length;o++){const u=i[o];if(this.testCond(u,a,s)){if(!r){n=!0;break}}else if(r){n=!1;break}}return e.isNotMode()?!n:n}if(e instanceof Me){T(e.getParam())&&ibiz.log.warn("\u6CA1\u6709\u6307\u5B9A\u5C5E\u6027\u540D\u79F0",e);const i=a[e.getParam().toLowerCase()];let r=null;const n=e.getValueType(),o=e.getValue();return n!=null&&!T(n)?(T(o)&&ibiz.log.warn("\u6CA1\u6709\u6307\u5B9A\u4E0A\u4E0B\u6587\u53C2\u6570\u540D\u79F0"),sa.PARAMTYPE_WEBCONTEXT===n?r=s.data[o.toLowerCase()]:sa.PARAMTYPE_DATACONTEXT===n&&(r=s.getValue(o.toLowerCase()))):r=e.getValue(),this.testSingleCond(e.getCondOp(),i,r)}return ibiz.log.warn("\u65E0\u6CD5\u8BC6\u522B\u7684\u6761\u4EF6\u5BF9\u8C61",e),!1}createPSModelSingleCond(){return new yr}createPSModelGroupCond(){return new Ir}};xe.PARAMTYPE_DATACONTEXT="DATACONTEXT",xe.PARAMTYPE_WEBCONTEXT="WEBCONTEXT";var Fr=d("PSDEDQCondEngine",xe);async function J(t,e){var a;const i=(a=ibiz.hub.getApp(e).model.appPFPluginRefs)==null?void 0:a.find(r=>r.pluginCode.toLowerCase()===t);if(!i){ibiz.log.error("\u672A\u5339\u914D\u5230\u63D2\u4EF6[".concat(t,"]\u6A21\u578B"));return}return await ibiz.plugin.loadPlugin(i),"".concat(i.pluginType,"_").concat(i.pluginCode)}var Za=d("APP_COUNTER_PROVIDER_PREFIX","APPCOUNTER");function ts(t,e){ibiz.register.register("".concat(Za,"_").concat(t),e)}function Ve(t){return ibiz.register.get("".concat(Za,"_").concat(t))}async function es(t){let e;const{codeName:a,counterType:s,sysPFPluginId:i,appId:r}=t;if(i){const n=await J(i,r);if(n&&(e=Ve(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=Ve(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=Ve(s),e)return e;throw new f("\u627E\u4E0D\u7CFB\u7EDF\u8BA1\u6570\u5668\u7C7B\u578B".concat(s,"\u5BF9\u5E94\u7684\u9002\u914D\u5668"))}var as=d("CONTROL_PROVIDER_PREFIX","CONTROL");function Pr(t,e){ibiz.register.register("".concat(as,"_").concat(t),e)}function ke(t){return ibiz.register.get("".concat(as,"_").concat(t))}async function dt(t){let e;const{controlType:a,controlStyle:s,sysPFPluginId:i,appId:r}=t;if(i){const n=await J(i,r);if(n&&(e=ke(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=ke(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=ke(a),e)return e;switch(a){case"DATAINFOBAR":return;default:ibiz.log.error("\u627E\u4E0D\u5230\u90E8\u4EF6\u7C7B\u578B".concat(a,"\u5BF9\u5E94\u7684\u9002\u914D\u5668"))}}var ss=d("EDITOR_PROVIDER_PREFIX","EDITOR");function br(t,e){ibiz.register.register("".concat(ss,"_").concat(t),e)}function Yt(t){return ibiz.register.get("".concat(ss,"_").concat(t))}async function bt(t){let e;const{editorType:a,editorStyle:s,predefinedType:i,sysPFPluginId:r,appId:n}=t;if(r){const o=await J(r,n);if(o&&(e=Yt(o)),!e)ibiz.log.error("\u627E\u4E0D\u5230\u7F16\u8F91\u5668\u63D2\u4EF6".concat(o,"\u5BF9\u5E94\u7684\u9002\u914D\u5668"));else return e}if(s&&s!=="DEFAULT"){const o="".concat(a,"_").concat(s);if(e=Yt(o),!e)ibiz.log.error("\u627E\u4E0D\u5230\u7F16\u8F91\u5668\u7C7B\u578B\uFF1A[".concat(a,"]\u7684\u7F16\u8F91\u5668\u6837\u5F0F\uFF1A[").concat(s,"]\u5BF9\u5E94\u7684\u9002\u914D\u5668"),t);else return e}if(i){let o="".concat(i,"_").concat(a);if(s&&s!=="DEFAULT"&&(o+="_".concat(s)),e=Yt(o),!e)ibiz.log.error("\u627E\u4E0D\u5230\u7F16\u8F91\u5668\u7C7B\u578B\uFF1A[".concat(a,"]\u7684\u9884\u7F6E\u7C7B\u578B\uFF1A[").concat(i,"]\u5BF9\u5E94\u7684\u9002\u914D\u5668"),t);else return e}if(e=Yt(a),!e)ibiz.log.error("\u627E\u4E0D\u5230\u7F16\u8F91\u5668\u7C7B\u578B".concat(a,"\u5BF9\u5E94\u7684\u9002\u914D\u5668"));else return e}var is=d("FORMDETAIL_PROVIDER_PREFIX","FORMDETAIL");function Sr(t,e){ibiz.register.register("".concat(is,"_").concat(t),e)}function rs(t){return ibiz.register.get("".concat(is,"_").concat(t))}async function We(t){let e;const{detailType:a,sysPFPluginId:s,appId:i}=t;if(s){const r=await J(s,i);if(r&&(e=rs(r)),!e)ibiz.log.error("\u627E\u4E0D\u5230\u8868\u5355\u6210\u5458\u63D2\u4EF6".concat(r,"\u5BF9\u5E94\u7684\u9002\u914D\u5668"));else return e}if(e=rs(a),!e)ibiz.log.error("\u627E\u4E0D\u5230\u8868\u5355\u6210\u5458\u7C7B\u578B".concat(a,"\u5BF9\u5E94\u7684\u9002\u914D\u5668"));else return e}var ns=d("GRIDCOLUMN_PROVIDER_PREFIX","GRIDCOLUMN");function Nr(t,e){ibiz.register.register("".concat(ns,"_").concat(t),e)}function os(t){return ibiz.register.get("".concat(ns,"_").concat(t))}async function Ue(t){let e;const{columnType:a,enableRowEdit:s,sysPFPluginId:i,appId:r}=t;if(i){const o=await J(i,r);if(o&&(e=os(o)),!e)ibiz.log.error("\u627E\u4E0D\u5230\u8868\u683C\u5217\u63D2\u4EF6".concat(o,"\u5BF9\u5E94\u7684\u9002\u914D\u5668"));else return e}const n=s?"".concat(a,"_EDIT"):a;if(e=os(n),!e)ibiz.log.error("\u627E\u4E0D\u5230\u8868\u683C\u5217\u7C7B\u578B".concat(n,"\u5BF9\u5E94\u7684\u9002\u914D\u5668"));else return e}var us=d("PANELITEM_PROVIDER_PREFIX","PANELITEM");function Rr(t,e){ibiz.register.register("".concat(us,"_").concat(t.toUpperCase()),e)}function St(t){return ibiz.register.get("".concat(us,"_").concat(t.toUpperCase()))}async function cs(t){var e;let a;const{itemType:s,sysPFPluginId:i,appId:r}=t;if(i){const n=await J(i,r);if(n&&(a=St(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=St(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=St(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=St(o),a)return a}}if(a=St(s),!a)ibiz.log.error("\u627E\u4E0D\u5230\u9762\u677F\u6210\u5458\u7C7B\u578B".concat(s,"\u5BF9\u5E94\u7684\u9002\u914D\u5668"));else return a}var ls=d("PORTLET_PROVIDER_PREFIX","PORTLET");function Lr(t,e){ibiz.register.register("".concat(ls,"_").concat(t),e)}function ds(t){return ibiz.register.get("".concat(ls,"_").concat(t))}async function hs(t){let e;const{portletType:a,sysPFPluginId:s,appId:i}=t;if(s){const r=await J(s,i);if(r&&(e=ds(r)),!e)ibiz.log.error("\u627E\u4E0D\u5230\u95E8\u6237\u90E8\u4EF6\u63D2\u4EF6".concat(r,"\u5BF9\u5E94\u7684\u9002\u914D\u5668"));else return e}if(e=ds(a),!e)ibiz.log.error("\u627E\u4E0D\u5230\u95E8\u6237\u90E8\u4EF6\u6210\u5458\u7C7B\u578B".concat(a,"\u5BF9\u5E94\u7684\u9002\u914D\u5668"));else return e}var ps=d("UIACTION_PROVIDER_PREFIX","UIACTION");function Nt(t,e){ibiz.register.register("".concat(ps,"_").concat(t),e)}function fs(t){return ibiz.register.get("".concat(ps,"_").concat(t))}async function ms(t){let e;const{uiactionMode:a,sysPFPluginId:s,appId:i}=t;if(s){const r=await J(s,i);if(r&&(e=fs(r)),!e)ibiz.log.error("\u627E\u4E0D\u5230\u754C\u9762\u884C\u4E3A\u63D2\u4EF6".concat(r,"\u5BF9\u5E94\u7684\u9002\u914D\u5668"));else return e}if(e=fs(a),e)return e;throw new f("\u627E\u4E0D\u754C\u9762\u884C\u4E3A\u6A21\u5F0F".concat(a,"\u5BF9\u5E94\u7684\u9002\u914D\u5668"))}var Es=d("UILOGINNODE_PROVIDER_PREFIX","UI_LOGIN_NODE");function Tr(t,e){ibiz.register.register("".concat(Es,"_").concat(t),e)}async function gs(t){let e;const{sysPFPluginId:a,appId:s}=t,i=await J(a,s);if(i){if(e=ibiz.register.get("".concat(Es,"_").concat(i)),e)return e;throw new f("\u627E\u4E0D\u5230\u754C\u9762\u903B\u8F91\u524D\u7AEF\u63D2\u4EF6\u8282\u70B9\uFF0C\u63D2\u4EF6".concat(i,"\u5BF9\u5E94\u7684\u9002\u914D\u5668"))}}var Cs=d("VIEW_PROVIDER_PREFIX","VIEW");function Br(t,e){ibiz.register.register("".concat(Cs,"_").concat(t),e)}function qt(t){return ibiz.register.get("".concat(Cs,"_").concat(t))}async function Or(t){let e;const{viewType:a,viewStyle:s,sysPFPluginId:i,appId:r}=t;if(i){const n=await J(i,r);if(n&&(e=qt(n)),!e)ibiz.log.error("\u627E\u4E0D\u5230\u89C6\u56FE\u63D2\u4EF6".concat(n,"\u5BF9\u5E94\u7684\u9002\u914D\u5668"));else return e}if(s&&s!=="DEFAULT"){const n="".concat(a,"_").concat(s);if(e=qt(n),!e)ibiz.log.error("\u627E\u4E0D\u5230\u89C6\u56FE\u7C7B\u578B\uFF1A[".concat(a,"]\u7684\u89C6\u56FE\u6837\u5F0F\uFF1A[").concat(s,"]\u5BF9\u5E94\u7684\u9002\u914D\u5668"),t);else return e}return e||(e=qt(a)),e||(e=qt("DEFAULT")),e}var _r=d("AppCounter",class{constructor(t){this.model=t,this.destroyed=!1,this.context=Tt.create(),this.params={},this.evt=new Et,this.data={}}get isDestroyed(){return this.destroyed}async init(t,e){this.setParams(t,e),this.interval(),await this.load()}setParams(t,e){t&&(this.context=v(t)),e&&(this.params=v(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()}}),Mr=d("AppDECounter",class extends _r{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}}),xr=d("AppDECounterProvider",class{createCounter(t){return new Mr(t)}});function Ds(){ts("DEDR",()=>new xr)}var Vr=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 Fr;return a.parse(["OR",this.calcCond(e)]),this.map.set(t,a),a}return null}static calcCond(t){const e=[];return t.forEach(a=>{const s=[];if(a.condType==="GROUP"){const i=a;i.notMode&&s.push("!"),s.push(a.condOp);const r=i.dedqconditions;if(r){const n=this.calcCond(r);s.push(n)}}else if(a.condType==="SINGLE"){const i=a;s.push(i.fieldName),i.condValue||s.push("")}else throw new D(a,"\u6682\u672A\u652F\u6301\u7684\u67E5\u8BE2\u6761\u4EF6\u7C7B\u578B: ".concat(a.condType));e.push(s)}),e}});Vr.map=new WeakMap;var kr=d("DynamicCodeListCache",class{constructor(t){this.cache=new Map,this.isPredefined=!1,this.codeList=t}async init(){const t=async()=>{const{predefinedType:e}=this.codeList;if(e){if(this.isPredefined=!0,!["OPERATOR","RUNTIME"].includes(e))throw new D(this.codeList,"\u9884\u5B9A\u4E49\u7C7B\u578B".concat(e,"\u6682\u4E0D\u652F\u6301"));return}this.initPromise=void 0};return this.initPromise=t(),this.initPromise}convertData(t){const e={},{valueAppDEFieldId:a,textAppDEFieldId:s,iconClsAppDEFieldId:i,iconClsXAppDEFieldId:r,iconPathAppDEFieldId:n,iconPathXAppDEFieldId:o,disableAppDEFieldId:u,dataAppDEFieldId:c}=this.codeList,l=a?t[a]:t.srfkey;return e.id=l,e.value=l,e.text=s?t[s]:t.srfmajortext,(i||r||n||o)&&(e.sysImage={},i&&(e.sysImage.cssClass=t[i]),r&&(e.sysImage.cssClassX=t[r]),n&&(e.sysImage.imagePath=t[n]),o&&(e.sysImage.imagePathX=t[o])),u&&(e.disableSelect=t[u]),c&&t[c]&&(e.data=B.execSingleLine(t[c])),e}async load(t={},e={}){const a=ibiz.hub.getApp(t.srfappid),{appDataEntityId:s,appDEDataSetId:i,minorSortAppDEFieldId:r,minorSortDir:n,pvalueAppDEFieldId:o,customCond:u}=this.codeList,c={...e};if(r&&n&&Object.assign(c,{sort:"".concat(r.toLowerCase(),",").concat(n.toLowerCase())}),u){const p=B.execSingleLine(u),E=b(p,c,t);Object.assign(c,E)}if(c.size||(c.size=1e4),this.isPredefined){const p=await a.net.get("/dictionaries/codelist/".concat(this.codeList.codeName),c);return Object.freeze(p.data.items)}if(!s)throw new m(this.codeList,"\u672A\u914D\u7F6E\u5E94\u7528\u5B9E\u4F53");if(!i)throw new m(this.codeList,"\u672A\u914D\u7F6E\u6570\u636E\u96C6");const l=await a.deService.exec(s,i,t,void 0,c);let h=[];return l.data.length&&l.data.forEach(p=>{if(o){const E=this.prepareTreeData(l.data);E&&(h=E)}else h.push(this.convertData(p))}),Object.freeze(h)}prepareTreeData(t,e){const{pvalueAppDEFieldId:a}=this.codeList;let s=[];if(s=t.filter(i=>e?i[a]===e:!i[a]),s.length!==0)return s.map(i=>{const r=this.convertData(i);return r.children=this.prepareTreeData(t,r.value),r})}async get(t={},e={}){if(this.initPromise&&await this.initPromise,!this.codeList.enableCache)return this.load(t,e);const a=JSON.stringify(t)+JSON.stringify(e);if(this.cache.has(a)){const u=this.cache.get(a);if(u.expirationTime>new Date().getTime())return u.promise?u.promise:u.items;this.cache.delete(a)}const s=this.load(t,e),{cacheTimeout:i}=this.codeList,r=i===-1||w(i)?ibiz.config.codeList.timeout:this.codeList.cacheTimeout,n={expirationTime:new Date().getTime()+r,promise:s};this.cache.set(a,n);const o=await s;return n.items=o,delete n.promise,o}});function ws(t,e){if(e!=null){const{srfkey:a}=e;if(!w(a)&&!T(a))return!0}throw new f("\u6267\u884C\u300C".concat(t,"\u300D\u4E0D\u5B58\u5728\u300Csrfkey\u300D\u65E0\u6CD5\u5904\u7406"))}function ot(t,e){const{srfsessionid:a}=e;if(!w(a)&&!T(a))return!0;throw new f("\u6267\u884C\u300C".concat(t,"\u300D\u4E0D\u5B58\u5728\u300Csrfsessionid\u300D\u65E0\u6CD5\u5904\u7406"))}var Wr=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,v(e)),ibiz.log.warn("forceUpdate",e.srfkey,e)}forceDelete(t,e){this.getCacheByTag(t).delete(e),ibiz.log.warn("forceDelete",e)}add(t,e){try{return ot("add",t),(w(e.srfkey)||T(e.srfkey))&&(e.srfkey=Y()),e.srftempdate=new Date().getTime(),this.getCacheByTag(t).set(e.srfkey,v(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),v(s)}catch(a){return ibiz.log.error(a),null}}update(t,e){try{ot("update",t),ws("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),v(s);throw new Error("\u6570\u636E\u4E0D\u5B58\u5728\uFF0C\u65E0\u6CD5\u66F4\u65B0!")}catch(a){return ibiz.log.error(a),null}}delete(t,e){try{ot("delete",t);const a=this.getCacheByTag(t),s=e;if(a.has(s)){const i=a.get(s);return i.srftempdate=new Date().getTime(),a.delete(s),ibiz.log.warn("delete",s),i}return null}catch(a){return ibiz.log.error(a),null}}createBatch(t,e){try{ot("add",t);const a=this.getCacheByTag(t);for(let s=0;s<e.length;s++){const i=e[s];(w(i.srfkey)||T(i.srfkey))&&(i.srfkey=Y()),i.srftempdate=new Date().getTime();const r=v(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];ws("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]=v(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)}}),Ur=/\$\{(.*?)\}/g;function vs(t,e){const i=(e.requestPaths||[]).map(r=>{const n=r.match(Ur),o=n?.map(u=>u.substring(2,u.length-1))||[];return{path:r,keys:o}}).filter(r=>{const{keys:n}=r;return n.length===0?!0:n.every((o,u)=>u===n.length-1?!0:t[o]!=null)}).sort((r,n)=>n.keys.length-r.keys.length);if(i.length>0)return i[0]}function Qt(t,e){const a=vs(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 zr=d("SearchFilter",class{constructor(t,e){if(this.page=0,this.size=1e3,this.data={},this.sortField="srfordervalue",this.sortMode="ASC",this.context=t,e){if(!w(e.page)&&!T(e.page)&&(this.page=e.page),!w(e.size)&&!T(e.size)&&(this.size=e.size),!w(e.query)&&!T(e.query)&&(this.query=e.query),!w(e.sort)&&!T(e.sort)){const a=e.sort.split(",");a.length>=1&&([this.sortField]=a),a.length>=2&&(this.sortMode=a[1].toUpperCase())}!w(e.srfparentkey)&&!T(e.srfparentkey)&&(this.srfparentkey=e.srfparentkey),!w(e.srfparentdename)&&!T(e.srfparentdename)&&(this.srfparentdename=e.srfparentdename),this.data={...e},delete this.data.page,delete this.data.size,delete this.data.query,delete this.data.sort,delete this.data.srfparentkey,delete this.data.srfparentdename}}getValue(t){return this.data[t]?this.data[t]:this.context[t]}}),Gr=d("CodeListService",class{constructor(t){this.appModel=t,this.allCodeLists=new Map,this.cache=new Map}getStatic(t){const e=t.codeName;if(this.cache.has(e))return this.cache.get(e);const a=t.codeItems;let s=[];return a?.length&&(s=this.formatStaticItems(a,t.codeItemValueNumber)),this.cache.set(e,Object.freeze(s)),s}setCodeList(t){const{id:e,codeName:a}=t;this.allCodeLists.set(e,t),this.allCodeLists.set(a,t)}getCodeList(t){return this.allCodeLists.get(t)}formatStaticItems(t,e){return t.map(a=>{var s;let i=a.text;a.textLanguageRes&&(i=ibiz.i18n.t(a.textLanguageRes.lanResTag,a.text));let{tooltip:r}=a;a.tooltipLanguageRes&&(r=ibiz.i18n.t(a.tooltipLanguageRes.lanResTag,a.tooltip));const n={text:i,value:e?Number(a.value):a.value,color:a.color,id:a.codeName,textCls:a.textCls,disableSelect:a.disableSelect,tooltip:r,data:a.data?B.execSingleLine(a.data):void 0,sysImage:a.sysImage};return(s=a.codeItems)!=null&&s.length&&(n.children=this.formatStaticItems(a.codeItems,e)),Object.freeze(n)})}async getDynamicCodeList(t,e={},a={}){let s;const i=t.codeName;return this.cache.has(i)?s=this.cache.get(i):(s=new kr(t),this.cache.set(i,s),await s.init()),s.get(e,a)}async get(t,e,a){const s=this.allCodeLists.get(t);if(!s)throw new f("\u627E\u4E0D\u5230".concat(t,"\u4EE3\u7801\u8868"));return s.codeListType==="STATIC"?this.getStatic(s):s.codeListType==="DYNAMIC"?this.getDynamicCodeList(s,e,a):[]}}),$t=d("ConfigService",class{constructor(t,e,a){this.appId=t,this.folder=e,this.tag=a,this.app=ibiz.hub.getApp(t)}async save(t){const e=await this.app.net.put("/configs/".concat(this.folder,"/").concat(this.tag),t);return e.ok?e.data:!1}async load(){const t=await this.app.net.get("/configs/".concat(this.folder,"/").concat(this.tag));return t.ok?t.data:{}}}),As=d("CounterService",class{static async getCounter(t,e,a){const s=t.id;if(this.counterMap.has(s)){const n=this.counterMap.get(s);if(n.isDestroyed===!1)return n;this.counterMap.delete(s)}const r=(await es(t)).createCounter(t);return await r.init(e,a),this.counterMap.set(s,r),r}static async getCounterByRef(t,e,a){const{appCounter:s}=t;if(!s)throw new m(t,"\u672A\u914D\u7F6E\u5E94\u7528\u8BA1\u6570\u5668!");return this.getCounter(s,e,a)}});As.counterMap=new Map;var jr=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"))}}}),Kr=class{constructor(t){this.model=t}exportData(t,e,a,s){const i=Qt(a,this.model),r="".concat(i,"/").concat(this.model.codeName2.toLowerCase(),"/exportdata/").concat(e.toLowerCase(),"/?srfexporttag=").concat(t.codeName);return ibiz.net.request(r,{method:"post",data:s,responseType:"blob"})}},Xr=d("Srfuf",(t=>(t[t.CREATE=0]="CREATE",t[t.UPDATE=1]="UPDATE",t))(Xr||{})),Jt=d("AppDataEntity",class ue{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 ue?v(a._data):v(a)}),Object.defineProperty(this,"srfdeid",{get(){return e.id}}),Object.defineProperty(this,"srfdecodename",{get(){return e.codeName}});const s=lt(e.appDEFields||[],e.keyAppDEFieldId);if(s){const r=s.codeName.toLowerCase();Object.defineProperty(this,"srfkeyfield",{get(){return r}}),Object.defineProperty(this,"srfkey",{set(n){this._data[r]=n},get(){return this._data[r]}})}else ibiz.log.warn("\u5B9E\u4F53[".concat(e.codeName,"]\u672A\u914D\u7F6E\u4E3B\u952E\u5B57\u6BB5"));const i=lt(e.appDEFields||[],e.majorAppDEFieldId);if(i){const r=i.codeName.toLowerCase();Object.defineProperty(this,"srfmajorfield",{get(){return r}}),Object.defineProperty(this,"srfmajortext",{set(n){this._data[r]=n},get(){return this._data[r]}})}else ibiz.log.warn("\u5B9E\u4F53[".concat(e.codeName,"]\u672A\u914D\u7F6E\u4E3B\u6587\u672C\u5B57\u6BB5"));Object.defineProperty(this,"tempsrfkey",{enumerable:!1,configurable:!0,writable:!0,value:w(this.srfkey)?Y():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 ue(this._entity,this._data);return e.srfkey=this.srfkey,e}assign(e){return e instanceof ue?Object.assign(this._data,e._data):Object.assign(this._data,e),this}convertVal(e,a){if(e==null||w(a))return e;if(Bt.isNumber(a)){const s=!w(e)&&e!==""?Number(e):e;return Number.isNaN(s)?(ibiz.log.debug("".concat(e,"\u4E0D\u80FD\u8F6C\u6362\u6210\u6570\u5B57")),e):s}return e}}),Is=d("MethodDto",class Zs{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":break;case"DTOS":{if(r.listMap)s[n]=a[n]&&a[n].length>0?this.convertArrayToListMap(a[n]):null;else{if(a[n]!==void 0||!r.refAppDataEntityId)break;const o=await this.getFieldDto(r),c=(await this.app.deService.getService(r.refAppDataEntityId)).local.getList(e);if(c){const l=[];for(let h=0;h<c.length;h++)l.push(await o.get(e,c[h]));s[n]=l}}break}default:throw new D(r,"\u672A\u652F\u6301\u7684\u5E94\u7528\u5B9E\u4F53\u65B9\u6CD5\u8F93\u5165\u5C5E\u6027\u7C7B\u578B: ".concat(r.type))}}return{...a,...s}}async sets(e,a){const s=await this.app.deService.getService(this.entity.id);return this.isLocalMode&&s.local.clear(e),Promise.all(a.map(async i=>{const r=this.fields.filter(o=>o.type==="DTOS").map(async o=>{const u=o.codeName.toLowerCase();if(o.listMap&&typeof i[u]=="object")i[u]=this.convertListMapToArray(i[u]);else{if(!o.refAppDataEntityId)return;const c=await this.getFieldDto(o),l=i[u];l?await c.sets(e,l):await c.sets(e,[])}});for(let o=0;o<r.length;o++)await r[o];const n=new Jt(this.entity,i);return this.isLocalMode&&await s.local.add(e,n),n}))}async getFieldDto(e){if(this.dtoMap.has(e.codeName))return this.dtoMap.get(e.codeName);const a=await ibiz.hub.getAppDataEntity(e.refAppDataEntityId,this.entity.appId),s=lt(a.appDEMethodDTOs||[],e.refAppDEMethodDTOId),i=new Zs(a,!0,s);return this.dtoMap.set(e.codeName,i),i}});function Zt(t){return t.actionType==="BUILTIN"||t.dataSetType==="DATAQUERY"}var Hr=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 Is(t,this.isLocalMode,s))}}get isLocalMode(){return Zt(this.method)}async handle(t,e){return this.dto?this.dto.get(t,e):e}},Yr=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 Is(t,this.isLocalMode,s))}}get isLocalMode(){return Zt(this.method)}async handle(t,e){return this.dto?(await this.dto.sets(t,[e]))[0]:(V(e)&&(e={}),new Jt(this.entity,e))}},ys=class{constructor(t,e){this.entity=t,this.method=e,this.app=ibiz.hub.getApp(t.appId),this.input=new Hr(t,e),this.result=new Yr(t,e)}async request(t,e,a,s){const{actionType:i,requestMethod:r}=this.method;if(i==="REMOTE"){const n=this.method.codeName.toLowerCase();let o=null;switch(r){case"POST":o=await this.app.net.post(this.mergeRequestPath(t,n),a||s||{});break;case"GET":o=await this.app.net.get(this.mergeRequestPath(t,n),a||s);break;case"PUT":{o=await this.app.net.put(this.mergeRequestPath(t,n),a||s||{});break}case"DELETE":o=await this.app.net.delete(this.mergeRequestPath(t,n),a||s);break;default:throw r?new m(this.method,"\u672A\u652F\u6301\u7684\u8BF7\u6C42\u65B9\u5F0F: ".concat(r)):new m(this.method,"\u672A\u914D\u7F6E\u8BF7\u6C42\u65B9\u5F0F")}return o}throw new m(this.method,"\u672A\u652F\u6301\u7684\u884C\u4E3A\u7C7B\u578B[".concat(i,"]"))}mergeRequestPath(t,e){return"".concat(t,"/").concat(e)}calcPath(t){const e="/".concat(this.entity.codeName2.toLowerCase());return Qt(t,this.entity)+e}async getService(){return this.service||(this.service=await this.app.deService.getService(this.entity.id)),this.service}createEntity(t){const e=a=>a instanceof Jt?a.clone():new Jt(this.entity,a);return j(t)?t.map(a=>e(a)):e(t)}},qr=class{constructor(t,e,a,s){this.deLogicParams=t,this.params={},this.result=null,this.isEndNode=!1,this.defaultParamName="Default",this.parameters={context:e,data:j(a)?a:[a],params:s}}get context(){return Object.prototype.hasOwnProperty.call(this.params,"context")?this.params.context:this.parameters.context}get data(){return this.parameters.data}get viewParam(){return Object.prototype.hasOwnProperty.call(this.params,"viewParam")?this.params.viewParam:this.parameters.params}resetParam(t){var e;(e=this.deLogicParams.get(t))==null||e.calc(this)}renewParam(t){var e;(e=this.deLogicParams.get(t))==null||e.renew(this)}setLastReturn(t){this.lastReturn=t}initLastReturnParam(t){Object.defineProperty(this.params,t,{enumerable:!0,configurable:!0,get:()=>this.lastReturn})}isEntityParam(t){const e=this.deLogicParams.get(t);return!!(e&&e.model.entityParam)}},Fs=class{},Qr=class extends Fs{constructor(t){super(),this.model=t,this.srcParam=t.srcLogicParamId,this.dstParam=t.dstLogicParamId}get dstField(){return this.model.dstFieldName.toLowerCase()}get op(){return this.model.condOP}get type(){return this.model.paramType}get value(){return this.model.paramValue}test(t,e,a){const s=t.params[this.dstParam];switch(this.type){case"ENTITYFIELD":{if(!this.value)throw new m(this.model,"\u5F53\u524D\u6761\u4EF6\u503C\u7C7B\u578B\u4E3A[\u6570\u636E\u5BF9\u8C61\u5C5E\u6027],\u7F3A\u5C11\u914D\u7F6E\u6761\u4EF6\u503C");const i=a[this.value]!=null?a[this.value]:e[this.value];return $(s[this.dstField],this.op,i)}case"SRCENTITYFIELD":{if(!this.value)throw new m(this.model,"\u5F53\u524D\u6761\u4EF6\u503C\u7C7B\u578B\u4E3A[\u6E90\u6570\u636E\u5BF9\u8C61\u5C5E\u6027],\u7F3A\u5C11\u914D\u7F6E\u6761\u4EF6\u503C");const i=t.params[this.srcParam];return $(s[this.dstField],this.op,i[this.value])}case"CURTIME":throw new D(this.model,"\u6682\u672A\u652F\u6301\u6761\u4EF6\u503C\u7C7B\u578B\u4E3A[\u5F53\u524D\u65F6\u95F4]");default:return $(s[this.dstField],this.op,this.value)}}},$r=class ti extends Fs{constructor(e){super(),this.model=e;const a=e.conds||[];this.conds=a.map(s=>s.logicType==="SINGLE"?new Qr(s):new ti(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}},Jr=class{constructor(t){this.model=t,this.srcNode=null,this.dstNode=null,this.groupCond=null;const e=this.model.delogicLinkGroupCond;e&&(this.groupCond=new $r(e))}async exec(t){const{defaultLink:e}=this.model;return e||!this.groupCond?!0:this.groupCond.test(t,t.context,t.data[0]||{})}},K=class{constructor(t){this.model=t;var e;this.links=(e=t.links||[])==null?void 0:e.map(a=>new Jr(a))}},Zr=class extends K{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)}},tn=class extends K{async exec(t){}},en=class extends K{async exec(t){t.isEndNode=!0;const{returnParamId:e,returnType:a,rawValue:s}=this.model;if(a)switch(a){case"NONEVALUE":t.result=void 0;break;case"NULLVALUE":t.result=null;break;case"SRCVALUE":t.result=ibiz.util.rawValue.format(s);break;case"LOGICPARAM":t.result=t.params[e];break;case"LOGICPARAMFIELD":case"BREAK":default:throw new D(this.model,"\u6682\u672A\u652F\u6301\u7684\u7ED3\u675F\u8282\u70B9\u8FD4\u56DE\u503C\u7C7B\u578B: ".concat(a))}}};function ht(t,e){const{srcDELogicParamId:a,srcFieldName:s,srcValue:i}=e,r=e.srcValueType||"SRCDLPARAM";let n=s,o;switch(r){case"SRCDLPARAM":o=t.params[a],t.isEntityParam(a)&&(n=n?.toLowerCase());break;case"NULLVALUE":return null;case"NONEVALUE":return;case"SRCVALUE":return ibiz.util.rawValue.format(i);case"WEBCONTEXT":case"VIEWPARAM":o=t.parameters.params;break;case"APPLICATION":case"SESSION":case"APPDATA":case"DATACONTEXT":o=t.parameters.context;break;case"ENVPARAM":o=v(ibiz.env);break;default:throw new D(e,"\u6682\u672A\u652F\u6301\u6E90\u503C\u7C7B\u578B".concat(r))}if(o&&n)try{Array.isArray(o)?o=o[Number(n)]:o=B.execScriptFn({srcValue:o},"srcValue.".concat(n),{singleRowReturn:!0,isAsync:!1})}catch(u){throw ibiz.log.error("\u4ECE\u6E90\u53C2\u6570\u53D6\u5C5E\u6027".concat(n,"\u62A5\u9519\uFF0C\u6E90\u53C2\u6570\uFF1A"),o),u}return o}var an=class extends K{async exec(t){const e=this.model.delogicNodeParams;e?.length&&await Promise.all(e.map(a=>{switch(a.paramAction){case"SETPARAMVALUE":return this.setParamValue(a,t);case"RESETPARAM":return this.resetParam(a,t);case"COPYPARAM":return this.copyParam(a,t);case"BINDPARAM":return this.bindParam(a,t);case"RENEWPARAM":return this.renewParam(a,t);case"APPENDPARAM":return this.appendParam(a,t);case"SORTPARAM":return this.sortParam(a,t);default:throw new D(a,"\u6682\u672A\u652F\u6301\u903B\u8F91\u5904\u7406\u53C2\u6570\u64CD\u4F5C".concat(a.paramAction))}}))}copyParam(t,e){const{dstDELogicParamId:a}=t,s=ht(e,t);e.params[a]=v(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])}},sn=class extends K{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)}},rn=class extends K{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}},nn=class extends K{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)}},on=class extends K{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 K{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]=v(s)}},cn=class extends K{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])}},ln=class extends K{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))}},dn=class extends K{async exec(t){const{errorCode:e,errorInfo:a}=this.model;throw new Ot({response:{status:e,statusText:a}})}},hn=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]=v(ibiz.env);else if(a.entityListParam)t.params[e]=[];else{if(a.entityPageParam)throw new D(a,"\u672A\u652F\u6301\u7684\u903B\u8F91\u53C2\u6570\u7C7B\u578B: \u5206\u9875\u67E5\u8BE2\u7ED3\u679C");if(a.entityParam)t.params[e]={};else if(a.lastReturnParam)t.initLastReturnParam(e);else if(a.appContextParam)t.params[e]=t.parameters.context;else if(a.simpleListParam)t.params[e]=[];else if(a.simpleParam)t.params[e]={};else if(a.cloneParam)t.params[e]=v(t.data||{});else{if(a.envParam)throw new D(a,"\u672A\u652F\u6301\u7684\u903B\u8F91\u53C2\u6570\u7C7B\u578B: \u7CFB\u7EDF\u73AF\u5883\u53D8\u91CF");if(a.fileListParam)throw new D(a,"\u672A\u652F\u6301\u7684\u903B\u8F91\u53C2\u6570\u7C7B\u578B: \u6587\u4EF6\u5BF9\u8C61\u5217\u8868\u53D8\u91CF");if(a.fileParam)throw new D(a,"\u672A\u652F\u6301\u7684\u903B\u8F91\u53C2\u6570\u7C7B\u578B: \u6587\u4EF6\u5BF9\u8C61\u53D8\u91CF");if(a.filterParam)throw new D(a,"\u672A\u652F\u6301\u7684\u903B\u8F91\u53C2\u6570\u7C7B\u578B: \u8FC7\u6EE4\u5668\u5BF9\u8C61\u53D8\u91CF");if(a.lastParam)throw new D(a,"\u672A\u652F\u6301\u7684\u903B\u8F91\u53C2\u6570\u7C7B\u578B: \u6700\u540E\u6570\u636E\u53D8\u91CF");if(a.originEntity)throw new D(a,"\u672A\u652F\u6301\u7684\u903B\u8F91\u53C2\u6570\u7C7B\u578B: \u539F\u59CB\u6570\u636E\u5BF9\u8C61");if(a.sessionParam)throw new D(a,"\u672A\u652F\u6301\u7684\u903B\u8F91\u53C2\u6570\u7C7B\u578B: \u64CD\u4F5C\u4F1A\u8BDD\u53D8\u91CF")}}}renew(t){const e=this.model.id,a=this.model;if(a.entityListParam||a.simpleListParam||a.entityPageParam)t.params[e]=[];else if(a.simpleParam||a.entityParam)t.params[e]={};else throw new D(a,"\u672A\u652F\u6301\u7684\u903B\u8F91\u53C2\u6570\u7C7B\u578B\u91CD\u65B0\u5EFA\u7ACB\u53D8\u91CF")}},pn=class{constructor(t){this.model=t,this.nodes=new Map,this.params=new Map;var e,a;if(t.customCode){if(!t.scriptCode)throw new m(t,"\u811A\u672C\u4EE3\u7801\u6A21\u5F0F\u6CA1\u6709\u914D\u7F6E\u811A\u672C\u4EE3\u7801");this.scriptFn=B.createScriptFn([],t.scriptCode,{isAsync:!0});return}if(!((e=t.delogicNodes)!=null&&e.length))throw new m(t,"\u5B9E\u4F53\u903B\u8F91\u6CA1\u6709\u914D\u7F6E\u903B\u8F91\u8282\u70B9");t.delogicNodes.forEach(s=>{const{logicNodeType:i}=s;let r;switch(i){case"BEGIN":r=new tn(s);break;case"END":r=new en(s);break;case"DEACTION":r=new Zr(s);break;case"PREPAREPARAM":r=new an(s);break;case"DEDATASET":r=new sn(s);break;case"THROWEXCEPTION":r=new dn(s);break;case"BINDPARAM":r=new rn(s);break;case"RESETPARAM":r=new nn(s);break;case"COPYPARAM":r=new un(s);break;case"RENEWPARAM":r=new on(s);break;case"APPENDPARAM":r=new ln(s);break;case"SORTPARAM":r=new cn(s);break;default:throw new D(s,"\u672A\u652F\u6301\u7684\u903B\u8F91\u8282\u70B9\u7C7B\u578B: ".concat(i))}this.nodes.set(s.id,r)}),(a=t.delogicParams)==null||a.forEach(s=>{this.params.set(s.id,new hn(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 qr(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 fn(t,e,a){const s=await ibiz.hub.getAppDataEntity(e,a);return be(t,s)}async function te(t,e,a={},s={}){return ze.has(t)||ze.set(t,new pn(t)),ze.get(t).exec(e,a,s)}async function Ps(t,e,a,s,i){const r=await fn(t,e,a.srfappid);if(!r)throw new f("".concat(e,"\u627E\u4E0D\u5230\u5B9E\u4F53\u903B\u8F91").concat(t));return te(r,a,s,i)}async function bs(t,e,a,s){const i=v(e),r=a&&v(a),n=s&&v(s);try{const o=await te(t,i,r,n);return new R(o)}catch(o){if(o instanceof Ot)return new R(o,500);throw o}}async function Ss(t,e,a,s,i){const r=Wa(t,e);r.length&&(await Promise.all(r.map(o=>te(o,a,s,i)))).forEach(o=>{Object.assign(s,o)})}async function Rt(t,e,a,s,i={}){if(s){if(j(s)){await Promise.all(s.map(r=>Ss(t,e,a,r,i)));return}return Ss(t,e,a,s,i)}}var mn=class extends ys{get isLocalMode(){return Zt(this.method)}async inputHandle(t,e){return j(e)?e:this.input.handle(t,e)}async exec(t,e,a){if(e&&await Rt(this.entity,"change",t,e,a),this.method.actionType==="DELOGIC"){const i=be(this.method.appDELogicId,this.entity);if(!i)throw new m(this.method,"\u7F3A\u5C11\u5B9E\u4F53\u5904\u7406\u903B\u8F91");return bs(i,t,e,a)}e&&!this.isLocalMode&&(e=await this.inputHandle(t,e)),e&&!["READ","GETDRAFT"].includes(this.method.actionMode)&&await Rt(this.entity,"change",t,e,a);let s;switch(this.method.codeName){case"Create":s=await this.create(t,e,a||{});break;case"Get":s=await this.get(t,a);break;case"GetDraft":s=await this.getDraft(t,a);break;case"Remove":s=await this.remove(t,a);break;case"Update":s=await this.update(t,e,a);break;case"CreateTemp":s=await this.createTemp(t,e);break;case"GetTemp":s=await this.getTemp(t,e);break;case"GetDraftTemp":s=await this.getDraftTemp(t,a);break;case"RemoveTemp":s=await this.removeTemp(t,e);break;case"UpdateTemp":s=await this.updateTemp(t,e);break;default:{let i=this.calcPath(t);if(this.method.needResourceKey){let n=t[this.entity.codeName.toLowerCase()];Ea(n)&&(n=j(e)?null:e?.[this.entity.keyAppDEFieldId]),i="".concat(i,"/").concat(n)}const r=await this.request(i,t,e,a);r.data=await this.result.handle(t,r.data),s=r}}return s.data&&await Rt(this.entity,"compute",t,s.data,a),s}async create(t,e,a){if(!e)throw new f("create\u884C\u4E3A\u6CA1\u6709\u4F20data");if(this.isLocalMode)return this.createTemp(t,this.createEntity(e));const s=this.calcPath(t),i=await this.app.net.post(s,e,a);return i.data=await this.result.handle(t,i.data),i}async remove(t,e){if(this.isLocalMode)return this.removeTemp(t,e);const a=this.calcPath(t);return await this.app.net.delete("".concat(a,"/").concat(t[this.entity.codeName.toLowerCase()]),e)}async update(t,e,a){if(!e)throw new f("update\u884C\u4E3A\u6CA1\u6709\u4F20data");if(this.isLocalMode)return this.updateTemp(t,this.createEntity(e));const s=this.calcPath(t),i=await this.app.net.put("".concat(s,"/").concat(t[this.entity.codeName.toLowerCase()]),e,a);return i.data=await this.result.handle(t,i.data),i}async get(t,e={}){if(this.isLocalMode)return this.getTemp(t,e);const a=this.calcPath(t),s=await this.app.net.get("".concat(a,"/").concat(t[this.entity.codeName.toLowerCase()]),e);return s.data=await this.result.handle(t,s.data),s}async getDraft(t,e){if(this.isLocalMode)return this.getDraftTemp(t,e);const a=this.calcPath(t),s=await this.app.net.get("".concat(a,"/getdraft"),e);return s.data=await this.result.handle(t,s.data),s}async createTemp(t,e){try{const a=await this.getService(),s=this.createEntity(e);let i;return j(s)?i=await Promise.all(s.map(r=>a.local.add(t,r))):i=await a.local.add(t,s),new R(i)}catch(a){return new R(a,500)}}async getDraftTemp(t,e){try{const a=this.createEntity({});return a?new R(a):new R(a,500)}catch(a){return new R(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 R(i):new R(i,500)}catch(a){return new R(a,500)}}async updateTemp(t,e){try{const a=await this.getService(),s=this.createEntity(e);let i;return j(s)?i=await Promise.all(s.map(r=>a.local.update(t,r))):i=await a.local.update(t,s),i?new R(i):new R(i,500)}catch(a){return new R(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 R(i):new R(i,500)}catch(a){return new R(a,500)}}async removeBatchTemp(t,e){return new R(!0)}},Ns=class extends ys{get isLocalMode(){return Zt(this.method)}async exec(t,e,a){const s=e&&j(e)?e:a||{};if(this.isLocalMode){const n=await this.searchLocal(null,new zr(t,s));return new R(n,200)}let i;switch(this.method.dataSetType){case"INDEXDE":case"CODELIST":case"MULTIFORM":i=await this.fetchCodeListSet(t,s);break;case"REMOTE":{const n=this.calcPath(t);i=await this.request(n,t,e,a)}break;default:throw new D(this.method,"\u6570\u636E\u6765\u6E90\u7C7B\u578B".concat(this.method.dataSetType,"\u6682\u672A\u652F\u6301"))}const r=i.data||[];return i.data=r.map(n=>this.createEntity(n)),i.data&&await Rt(this.entity,"compute",t,i.data,s),i}async selectLocal(t,e={}){let s=(await this.getService()).local.getList(t);s=Ce(s,"srfordervalue");const i={},r={},n={},o={};e.srfkey&&(i.srfkey=rt(e.srfkey),delete e.srfkey);for(const c in e)if(Object.prototype.hasOwnProperty.call(e,c)){const l=e[c];l==null?(r[c]=rt(null),n[c]=rt(void 0),o[c]=rt("")):i[c]=rt(l)}if(!T(i)){const c=gt(i),l=gt(r),h=gt(n),p=gt(o);s=s.filter(E=>{if(T(r)){if(c(E))return!0}else if(c(E)&&(l(E)||h(E)||p(E)))return!0;return!1})}return s.map(c=>c.clone())}async searchLocal(t,e,a=this.entity.quickSearchAppDEFieldIds){const s=await this.getService();let i=[];t?(i=s.local.getList(e.context),i.length>0&&(i=i.filter(l=>t.test(l,e)))):(i=await this.selectLocal(e.context),i.length>0&&e.query&&e.query!==""&&a&&(i=i.filter(l=>{const h=new RegExp(e.query);for(let p=0;p<a.length;p+=1){const E=a[p],C=l[E];if(h.test(C))return!0}return!1}))),!w(e.sortField)&&!T(e.sortField)&&(e.sortMode==="DESC"?i=Sa(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=>v(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 R(n,200)}},En=class extends Ns{mergeRequestPath(t,e){return"".concat(t,"/ac/").concat(e,"?srfac=ac")}},gn=d("DEService",class{constructor(t){this.model=t,this.methodMap=new Map,this.local=new Wr,this.configCache=new $t(t.appId,"PSAppDataEntity",t.codeName),this.wf=new jr(t),this.file=new Kr(t)}getMethod(t,e=!1){const a=e?"ac-".concat(t):t;if(this.methodMap.has(a))return this.methodMap.get(a);const s=lt(this.model.appDEMethods,t);let i=null;switch(s.methodType){case"DEACTION":i=new mn(this.model,s);break;case"FETCH":case"FETCHTEMP":e?i=new En(this.model,s):i=new Ns(this.model,s);break;default:throw new D(s,"\u672A\u652F\u6301\u7684\u670D\u52A1\u65B9\u6CD5\u7C7B\u578B: ".concat(s.methodType))}return this.methodMap.set(a,i),i}exec(t,e,a,s){const i=this.getMethod(t);if(i)return i.exec(e,a,s);throw new f("".concat(this.model.codeName,"\u672A\u652F\u6301\u300C").concat(t,"\u300D\u65B9\u6CD5"))}execAc(t,e,a,s={}){const i=this.getMethod(t,!0);if(i)return i.exec(e,a,s);throw new f("".concat(this.model.codeName,"\u672A\u652F\u6301\u300C").concat(t,"\u300D\u65B9\u6CD5"))}aiChatSse(t,e,a={},s={}){const i=ibiz.hub.getApp(this.model.appId),r=this.calcSsePath(e);return new Promise((n,o)=>{i.net.sse("/".concat(r),{srfactag:"AIChat",...a},{headers:{"Content-Type":"application/json"},body:JSON.stringify(s),onmessage:u=>{if(u.data){const c=JSON.parse(u.data);t(c)}},onclose:()=>{n()},onerror:u=>{o(u)}})})}aiChatHistory(t,e={},a={}){const s=ibiz.hub.getApp(this.model.appId),i=this.calcSsePath(t,!0);return s.net.post(i,a,{srfactag:"AIChat",...e})}calcSsePath(t,e=!1){const a=t[this.model.codeName.toLowerCase()],s="/".concat(this.model.codeName2.toLowerCase(),"/ssechatcompletion").concat(e?"/histories":"").concat(a?"/".concat(a):"");return Qt(t,this.model)+s}}),Cn=["srfkey","srfmajortext","srfmajorfield","srfkeyfield","tempsrfkey","srfuf","srfdeid","srfdecodename"],G=d("ControlVO",class ia{constructor(e={},a=new Map){Object.defineProperty(this,"$origin",{enumerable:!1,configurable:!0,value:e||{}}),Object.defineProperty(this,"$dataUIMap",{enumerable:!1,configurable:!0,value:a||new Map}),Object.defineProperty(this,"srfactionparam",{get(){return this.$origin.srfactionparam},set(s){this.$origin.srfactionparam=s},enumerable:!0,configurable:!0}),["srfkey","srfmajortext"].forEach(s=>{if(Object.prototype.hasOwnProperty.call(this.$origin,s))Object.defineProperty(this,s,{get(){return this.$origin[s]},set(i){this.$origin[s]=i},enumerable:!1,configurable:!0});else if(this.$dataUIMap.has(s)){const{dataKey:i}=this.$dataUIMap.get(s);Object.defineProperty(this,s,{get(){return this.$origin[i]},set(r){this.$origin[i]=r},enumerable:!1,configurable:!0})}else Object.defineProperty(this,s,{enumerable:!1,configurable:!0,writable:!0,value:null})}),Object.prototype.hasOwnProperty.call(this.$origin,"tempsrfkey")?Object.defineProperty(this,"tempsrfkey",{get(){return this.$origin.tempsrfkey},set(s){this.$origin.tempsrfkey=s},enumerable:!1,configurable:!0}):Object.defineProperty(this,"tempsrfkey",{enumerable:!1,configurable:!0,writable:!0,value:w(this.srfkey)?Y():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;Cn.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=v(this.$origin),a=new ia(e,this.$dataUIMap);return Object.keys(this).forEach(s=>{a[s]=this[s]}),a}}),ee=d("ControlService",class{constructor(t){this.dataUIMap=new Map,this.model=t}async init(t){this.app=ibiz.hub.getApp(t?.srfappid),this.initUIDataMap()}initUIDataMap(){}async exec(t,e,a,s){return await this.app.deService.exec(this.model.appDataEntityId,t,e,a,s)}handleResponse(t){return na(t)}toUIData(t){return new G(t,this.dataUIMap)}}),at=d("MDControlService",class extends ee{async fetch(t,e={}){var a;const s=((a=this.model.fetchControlAction)==null?void 0:a.appDEMethodId)||"fetchdefault";let i=await this.exec(s,t,e);return i=this.handleResponse(i),i}async get(t,e={}){var a;const s=((a=this.model.getControlAction)==null?void 0:a.appDEMethodId)||"get";let i=await this.exec(s,t,void 0,e);return i=this.handleResponse(i),i}async getDraft(t,e={}){var a;const s=((a=this.model.getDraftControlAction)==null?void 0:a.appDEMethodId)||"getdraft";let i=await this.exec(s,t,void 0,e);return i=this.handleResponse(i),i}async remove(t,e={}){var a;const s=((a=this.model.removeControlAction)==null?void 0:a.appDEMethodId)||"remove";return await this.exec(s,t,void 0,e)}async create(t,e){var a;const s=((a=this.model.createControlAction)==null?void 0:a.appDEMethodId)||"create";let i=await this.exec(s,t,e.getOrigin());return i=this.handleResponse(i),i}async update(t,e){var a;const s=((a=this.model.updateControlAction)==null?void 0:a.appDEMethodId)||"update";let i=await this.exec(s,t,e.getOrigin());return i=this.handleResponse(i),i}async exportData(t,e,a={}){throw new f("\u672A\u5B9E\u73B0")}handleResponse(t){const e=super.handleResponse(t);return e.headers&&(e.headers["x-page"]&&(e.page=Number(e.headers["x-page"])),e.headers["x-per-page"]&&(e.size=Number(e.headers["x-per-page"])),e.headers["x-total"]&&(e.total=Number(e.headers["x-total"]))),e.ok&&(kt(e.data)?e.data=e.data.map(a=>this.toUIData(a)):e.data=this.toUIData(e.data)),e}}),Dn=d("DeAuthorityService",class{constructor(t){this.entityModel=t}async calcByDataAccessAction(t,e){return!(e.srfopprivs&&!e.srfopprivs.includes(t)||!await this.calcByDeMainState(t,e))}async calcByDeMainState(t,e){let a=!0;const s=this.entityModel;if(!s.enableDEMainState)return ibiz.log.debug("".concat(s.codeName,"\u5B9E\u4F53\u4E0D\u5B58\u5728\u6216\u8005\u4E3A\u542F\u7528\u4E3B\u72B6\u6001\uFF0C\u8FD4\u56DEtrue")),a;ibiz.log.debug("\u64CD\u4F5C\u6807\u8BC6".concat(t,"\u4E3B\u72B6\u6001\u8BA1\u7B97\u5F00\u59CB"),e,s);const i=xa(s,e);if(i){ibiz.log.debug("\u5339\u914D\u4E3B\u72B6\u6001",i);const r=Va(i,s);ibiz.log.debug("\u5141\u8BB8\u7684\u4E3B\u72B6\u6001\u6743\u9650\u96C6\u5408",r),a=r.includes(t)}else ibiz.log.debug("\u6CA1\u5339\u914D\u4E3B\u72B6\u6001\uFF0C\u8FD4\u56DEfalse"),a=!1;return ibiz.log.debug("\u64CD\u4F5C\u6807\u8BC6".concat(t,"\u6743\u9650\u8BA1\u7B97\u7ED3\u675F\uFF1A").concat(a)),a}}),wn=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 Dn(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}}),vn=d("V7AuthService",class{async login(t,e){try{const a=await ibiz.net.post("/v7/login",{loginname:t,password:e}),{data:s}=a;if(s&&s.token){me(At.TOKEN,s.token,0,!0);const i=new Date().getTime()+(s.expirein||7199)*1e3;me(At.TOKEN_EXPIRES,"".concat(i),0,!0)}return!0}catch(a){ibiz.notification.error({title:"\u767B\u5F55\u5931\u8D25",desc:a.message||""})}return!1}async logout(){try{return await ibiz.net.get("/v7/logout"),Ee(At.TOKEN),Ee(At.TOKEN_EXPIRES),!0}catch(t){ibiz.notification.error({title:"\u767B\u51FA\u5931\u8D25",desc:t.message||""})}return!1}}),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}}),An=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=_(t.appDataEntityId);this.context=Object.assign(this.context||{},{[i]:this.value})}this.srfkey=this.value,this.srfmajortext=this.text,this.icon=this.calcIcon(t)}}),Rs=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=_(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)}calcIcon(t){const e=super.calcIcon(t)||{},{iconAppDEFieldId:a,detreeNodeDataItems:s}=t;a&&this.deData[a]&&(e.imagePath=this.deData[a]),e&&(this.icon=e);const i=s?.find(r=>r.id==="icon");return i&&(e.htmlStr=this.calcDataItemScript(i)),Object.values(e).length>0?e:void 0}calcDataItemScript(t){if(t.customCode&&t.scriptCode)return B.execScriptFn({data:this.deData},t.scriptCode,{isAsync:!1})}calcTextHtml(t){let e;const{detreeNodeDataItems:a}=t,s=a?.find(i=>i.id==="text");return s&&(e=this.calcDataItemScript(s)),e}}),In=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,w(a.isOriginField)||(this.isOriginField=a.isOriginField),w(a.dataType)||(this.dataType=a.dataType)}convertVal(t){if(!this.dataType)return t;if(Bt.isNumber(this.dataType)){const e=!w(t)&&t!==""?Number(t):t;return Number.isNaN(e)?(ibiz.log.debug("".concat(t,"\u4E0D\u80FD\u8F6C\u6362\u6210\u6570\u5B57")),t):e}return t}}),yn=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 Fn(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 Pn=["REGION","REGION2","REGION3","REGION4"],bn=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,Pn.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 Fn(h,p),p}})}});function Sn(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 Nn=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 Sn(r,n),n}})}destroy(){this._evt.reset()}}),Rn=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:Y(),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()}}),Ln=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 gn(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)}}),Ls=class ei{constructor(){ibiz.commands.register(ei.TAG,this.exec.bind(this))}async exec(e,a,s={},i={}){const r=v(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=_(n.appDataEntityId);r.srfkey&&(r[u]=r.srfkey,r.srfkey=void 0),s.srfuf===0&&(r[u]=void 0,delete s.srfuf)}if(n.redirectView){const u=await ibiz.hub.getAppView(e);return Ya(u,r,s,i)}const{openMode:o="INDEXVIEWTAB"}=n;switch(i.openMode||o){case"INDEXVIEWTAB":return i.noWaitRoute?(this.openIndexViewTab(n,r,s),{ok:!0}):this.openIndexViewTab(n,r,s);case"POPUP":throw new D(n,"\u672A\u652F\u6301\u7684\u89C6\u56FE\u6253\u5F00\u6A21\u5F0F: POPUP");case"POPUPMODAL":return this.openModal(n,r,s);case"POPUPAPP":throw new D(n,"\u672A\u652F\u6301\u7684\u89C6\u56FE\u6253\u5F00\u6A21\u5F0F: POPUPAPP");case"POPOVER":return this.openPopover(n,i.event,r,s);case"DRAWER_LEFT":case"DRAWER_RIGHT":case"DRAWER_TOP":case"DRAWER_BOTTOM":return this.openDrawer(n,r,s);case"USER":return this.openUserCustom(n,r,s);default:return this.openIndexViewTab(n,r,s)}}openIndexViewTab(e,a,s={}){return ibiz.openView.root(e.id,a,s)}async openModal(e,a,s={}){return ibiz.openView.modal(e.id,a,s)}async openPopover(e,a,s,i={}){if(!a)throw new f("\u6C14\u6CE1\u6253\u5F00\u7F3A\u5C11event");return ibiz.openView.popover(e.id,a,s,i)}async openDrawer(e,a,s={}){return ibiz.openView.drawer(e.id,a,s)}async openUserCustom(e,a,s={}){return ibiz.openView.custom(e.id,a,s)}};Ls.TAG="ibiz.app-view.open";var Z=d("OpenAppViewCommand",Ls),Ts=class ai{constructor(){ibiz.commands.register(ai.TAG,this.exec.bind(this))}async exec(e,a,s={},i={}){const r=ibiz.hub.getApp(a.srfappid).getAppFunc(e);if(!r)throw new f("\u627E\u4E0D\u5230\u53EB".concat(e,"\u7684\u5E94\u7528\u529F\u80FD"));const{navigateContexts:n,navigateParams:o,appFuncType:u}=r,c=a.clone();Object.assign(c,b(n,s,a));const l=b(o,s,a);switch(u){case"APPVIEW":return this.openAppView(r,c,l,i);case"OPENHTMLPAGE":return this.openHtmlPage(r);case"PDTAPPFUNC":return this.openPdAppFunc(r,c,l);case"JAVASCRIPT":return this.executeJavaScript(r,c,l);case"CUSTOM":return this.custom(r,c,l);default:throw new D(r,"\u672A\u652F\u6301\u7684\u5E94\u7528\u529F\u80FD\u7C7B\u578B: ".concat(u))}}async openAppView(e,a,s,i){if(!e.appViewId)throw new f("\u5E94\u7528\u89C6\u56FE[".concat(e.appViewId,"]\u4E0D\u5B58\u5728"));return ibiz.commands.execute(Z.TAG,e.appViewId,a,s,i)}openHtmlPage(e){const a=e.htmlPageUrl;window.open(a,"_blank")}openPdAppFunc(e,a,s){throw ibiz.log.warn("openPdAppFunc",e,a,s),new f("\u672A\u5B9E\u73B0")}executeJavaScript(e,a,s){throw ibiz.log.warn("executeJavaScript",e,a,s),new f("\u672A\u5B9E\u73B0")}custom(e,a,s){throw ibiz.log.warn("custom",e,a,s),new f("\u672A\u5B9E\u73B0")}};Ts.TAG="ibiz.app-func.exec";var je=d("AppFuncCommand",Ts);function Bs(){new je,new Z}var Tn=d("Application",class{constructor(t){this.model=t,this.deName2DeCodeName=new Map,this.net=new oa({baseURL:"".concat(ibiz.env.baseUrl,"/").concat(t.appId)}),this.configCache=new $t(t.appId,"PSSysApp",t.codeName),this.deService=new Ln(t),this.codeList=new Gr(t),this.authority=new wn(t)}get appId(){return this.model.appId}async init(){await this.authority.init(),await this.loadAppModelStyle(),ibiz.env.enableMqtt&&ibiz.appData&&(this.mqtt=new Rn(ibiz.appData.mqtttopic,ua(),this.model.appId),this.mqtt.evt.on("message",t=>{ibiz.mc.command.asyncAction.next(t)}),await this.mqtt.connect())}async loadAppModelStyle(){const t=await ibiz.hub.getAppStyle(this.appId);if(t){const e=document.createElement("style");e.setAttribute("type","text/css"),e.id=this.appId,e.innerHTML=t,document.head.appendChild(e)}}getAppFunc(t){return(this.model.appFuncs||[]).find(s=>s.id===t)||null}async getUIAction(t){const[,e]=t.split("@");if(e){const s=(await ibiz.hub.getAppDataEntity(e,this.model.appId)).appDEUIActions.find(i=>i.id===t);if(s)return s}return this.model.appDEUIActions.find(a=>a.id===t)}async getOPPriv(t,e){var a,s;let i=(a=this.model.deopprivs)==null?void 0:a.find(r=>r.name===t);return!i&&e&&(i=(s=(await ibiz.hub.getAppDataEntity(e,this.model.appId)).deopprivs)==null?void 0:s.find(n=>n.name===t)),i}async getDEUILogic(t,e){return(await ibiz.hub.getAppDataEntity(e,this.model.appId)).appDEUILogics.find(s=>s.id===t)}}),Bn=class{parse(t){return t}},On=class{constructor(){this.appMenu=new Bn}},_n=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}},Mn=class{constructor(){this.view=new _n}},xn=d("FormNotifyState",(t=>(t.LOAD="LOAD",t.DRAFT="DRAFT",t.SAVE="SAVE",t))(xn||{})),Vn=d("GridNotifyState",(t=>(t.LOAD="LOAD",t.DRAFT="DRAFT",t.SAVE="SAVE",t))(Vn||{})),kn=d("PanelNotifyState",(t=>(t.LOAD="LOAD",t.DRAFT="DRAFT",t.SAVE="SAVE",t))(kn||{})),Os=d("Counter",class{constructor(t){this.callback=t,this.count=0,this.state="Unused",this.reusable=!0}increment(){return this.state==="Used"?this.count:(this.count+=1,this.count)}decrement(t){if(this.state!=="Used"){if(this.count===0)throw new f("\u9519\u8BEF\u7684\u8C03\u7528\uFF01decrement\u4E0D\u80FD\u5BF9count\u4E3A0\u8C03\u7528");this.count-=1,this.count===0&&(t?t():this.callback&&this.callback(),this.reusable||(this.state="Used"))}}destroy(){this.callback=void 0}}),Wn=d("LoadingState",class{constructor(){this.isLoading=!1,this.counter=new Os(ca)}begin(){this.isLoading=!0,this.counter.increment()}end(){this.counter.decrement(()=>{this.isLoading=!1})}}),Un=d("CTXState",class{}),zn=d("CTX",class{constructor(t){this.parent=t,this.isDestroyed=!1,this.evt=new Et(3e3),this.controllersMap=new Map,this.state=new Un}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}}),Gn=d("ActivityCounter",class extends Os{constructor(){super(...arguments),this.reusable=!1,this.registration=new Map}enroll(t){this.state==="Unused"&&!this.registration.has(t)&&(this.registration.set(t,!1),this.increment())}attend(t){this.registration.has(t)&&this.registration.get(t)===!1&&(this.registration.set(t,!0),this.decrement())}}),pt=d("UIActionButtonState",class{constructor(t,e,a){this.disabled=!1,this.visible=!0,this.loading=!1,this.permitted=!0,this.noPermissionHidden=!0,this.noDataDisabled=!1,this.isInit=!1,this.name=t,this.uiActionId=a,this.appId=e}async init(){if(!this.uiActionId){this.isInit=!0;return}const t=await zt(this.uiActionId);if([,this.appDeName]=this.uiActionId.split("@"),!t)return;const{dataAccessAction:e,noPrivDisplayMode:a,actionTarget:s,uiactionMode:i,uiactionTag:r}=t;this.dataAccessAction=e,a===1?this.noPermissionHidden=!1:a===6&&(this.visible=!1),(s&&s!=="NONE"||i==="SYS"&&["Save","SaveAndExit","SaveAndNew","Edit","Remove","RemoveAndExit"].includes(r))&&(this.noDataDisabled=!0),this.isInit=!0}async calcPermission(t,e){if(!this.dataAccessAction)return;const a=await ibiz.hub.getApp(this.appId);this.appDeName&&e&&!e.includes(this.appDeName)&&ibiz.log.warn("".concat(this.uiActionId,"\u754C\u9762\u884C\u4E3A\u7684\u5B9E\u4F53").concat(this.appDeName,"\u548C\u6570\u636E\u7684\u5B9E\u4F53").concat(e,"\u4E0D\u4E00\u81F4")),this.permitted=await a.authority.calcByDataAccessAction(this.dataAccessAction,t,e)}async update(t,e){this.isInit||await this.init(),await this.calcPermission(t,e),this.permitted?(this.visible=!0,this.disabled=this.noDataDisabled&&!t):(this.disabled=!0,this.visible=!this.noPermissionHidden)}}),ft=d("ButtonContainerState",class{constructor(){Object.defineProperty(this,"children",{enumerable:!1,configurable:!0,writable:!0,value:[]}),Object.defineProperty(this,"visible",{enumerable:!0,configurable:!0,get:()=>this.children.length===0?!1:!!this.children.find(t=>t.visible)})}addState(t,e){Object.defineProperty(this,t,{enumerable:!0,configurable:!0,writable:!0,value:e}),this.children.push(e)}setLoading(t){this.children.forEach(e=>{e.setLoading?e.setLoading(t):e.loading=t?e.name===t:!1})}async update(t,e){await Promise.all(this.children.map(a=>a.update(t,e)))}}),jn=d("QXEventEx",class extends Et{constructor(){super(...arguments),this.anyEventFns=[]}onAll(t){this.anyEventFns.includes(t)||this.anyEventFns.push(t)}emit(t,...e){super.emit(t,...e),this.anyEventFns.forEach(a=>{a(t,...e)})}async asyncEmit(t,...e){const a=super.asyncEmit(t,...e),s=this.anyEventFns.map(o=>o(t,...e)),i=Promise.all(s),r=await a,n=await i;return r.concat(...n)}reset(){super.reset(),ba(this.anyEventFns)}}),Kn=d("ControllerEvent",class{constructor(t){this.getBaseArgs=t,this.isDestroyed=!1,this.evt=new jn}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 ae(t,e){return(w(t)||t==="")&&(w(e)||e==="")?!1:t!==e}function _s(t){let e=Array.isArray(t)?t[0]:t;return e&&e instanceof G&&(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{B.execScriptFn({rule:u,value:c,callback:l,source:h},n.scriptCode,{isAsync:!1})}catch(p){return console.error(p),!1}return!0},trigger:"change blur"});else if(r==="DEFVALUERULE"&&o){const u=a||e;s.push({validator:(c,l,h,p)=>{if(V(p[u]))return!0;const{isPast:E,infoMessage:C}=Te(u,p,o.groupCond);return E||h(new f(C||o.ruleInfo)),!0},trigger:"change blur"})}}),s}function He(t){const e=[],{maxLength:a,minLength:s}=t,{maxValue:i,minValue:r}=t;return a&&e.push({validator:(n,o,u)=>{if(!w(o)&&o.length>a)u(new Error("\u5185\u5BB9\u957F\u5EA6\u5FC5\u987B\u5C0F\u4E8E\u7B49\u4E8E".concat(a,",\u5F53\u524D\u957F\u5EA6\u4E3A").concat(o.length)));else return!0}}),s&&e.push({validator:(n,o,u)=>{if(!w(o)&&o.length<s)u(new Error("\u5185\u5BB9\u957F\u5EA6\u5FC5\u987B\u5927\u4E8E\u7B49\u4E8E".concat(s,",\u5F53\u524D\u957F\u5EA6\u4E3A").concat(o.length)));else return!0}}),w(i)||e.push({validator:(n,o,u)=>{if(!w(o)&&ge(o)&&o>i)u(new Error("\u503C\u5FC5\u987B\u5C0F\u4E8E\u7B49\u4E8E".concat(i)));else return!0}}),w(r)||e.push({validator:(n,o,u)=>{if(!w(o)&&ge(o)&&o<r)u(new Error("\u503C\u5FC5\u987B\u5927\u4E8E\u7B49\u4E8E".concat(r)));else return!0}}),e}var Xn=d("ValueExUtil",class{static mergeDefault(t){return we(t,{textSeparator:",",valueSeparator:","})}static toText(t,e){if(w(e)||e==="")return"";const{valueType:a,objectNameField:s,textSeparator:i}=this.mergeDefault(t);if(["OBJECTS","OBJECT"].includes(a)){if(!s)throw new f("\u7F3A\u5C11objectNameField");const r=s.toLowerCase();return a==="OBJECTS"?e.map(n=>n[r]||"---").join(i):e[r]}return a==="SIMPLES"?e.join(i):"".concat(e)}});function Ye(t,e){var a;const{name:s,valueType:i,defaultValue:r,valueFormat:n}=t,{data:o,context:u,params:c}=e;if(w(i)&&w(r))return;if(i==="RESET")return null;const l=o[s];if(!ve(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 L().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 Y();default:throw new D({},"\u9ED8\u8BA4\u503C\u7C7B\u578B[".concat(i,"]\u672A\u652F\u6301"))}}}var Hn="/asyncimportdata2",Yn="/importdata2";function qn(t){return new Promise(e=>{const a=s=>{const i=s.messageid||s.data.asyncacitonid;if(t===i&&s.data.actionstate===30)try{const r=JSON.parse(s.data.actionresult);e(r)}catch{throw new f("\u89E3\u6790\u6570\u636E\u53D1\u751F\u9519\u8BEF")}finally{ibiz.mc.command.asyncAction.off(a)}else s.data.actionstate===40&&(e({total:0,success:0,message:s.data.actionresult}),ibiz.mc.command.asyncAction.off(a))};ibiz.mc.command.asyncAction.on(a)})}async function Qn(t,e){const a=new FormData;a.append("file",t);const s="".concat(e.codeName2.toLowerCase(),"/").concat(Hn),i=await ibiz.net.request(s,{method:"post",data:a,headers:{"Content-Type":"multipart/form-data"}});return qn(i.data.asyncacitonid)}async function $n(t,e){const a=new FormData;a.append("file",t);const s="".concat(e.codeName2.toLowerCase(),"/").concat(Yn);return(await ibiz.net.request(s,{method:"post",data:a,headers:{"Content-Type":"multipart/form-data"}})).data}async function Ms(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",xs=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 Kn(this.getEventArgs.bind(this)),this.mountCounter=new Gn(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)}}),Jn=class si{constructor(e){this.msgGroupId=e,this.viewMsgMap=new Map}async init(e){var a,s;const i=ibiz.hub.getApp(e.srfappid).model,r=(a=i.appViewMsgGroups)==null?void 0:a.find(o=>o.id===this.msgGroupId);if(!r)throw new f("\u627E\u4E0D\u5230\u89C6\u56FE\u6D88\u606F\u7EC4".concat(this.msgGroupId,"\u7684\u6A21\u578B"));this.msgGroup=r;const n=r.appViewMsgGroupDetails.map(o=>o.appViewMsgId);if((s=i.appViewMsgs)==null||s.forEach(o=>{const u=n.indexOf(o.id);u!==-1&&(this.viewMsgMap.set(o.id,o),n.splice(u,1))}),n.length)throw new f("\u6CA1\u6709\u627E\u5230".concat(n.join(","),"\u89C6\u56FE\u6D88\u606F\u6A21\u578B"))}getDeFieldName(e,a){var s,i;if(a)return(i=(s=wt(e,a))==null?void 0:s.name)==null?void 0:i.toLowerCase()}static async fetchDataSet(e,a,s){const{appDataEntityId:i,appDEDataSetId:r}=e;if(!r)throw new m(e,"\u672A\u914D\u7F6E\u5B9E\u4F53\u6570\u636E\u96C6");const n=await ibiz.hub.getApp(a.srfappid).deService.exec(i,r,a,s);return n.data.length?n.data:[]}async calcViewMessages(e,a){const s=this.msgGroup.appViewMsgGroupDetails,i=[];return s?.length&&await Promise.all(s.map(async r=>{if(this.viewMsgMap.get(r.appViewMsgId).dynamicMode===1){const o=await this.calcDynaMsgs(r,e,a);i.push(...o)}else{const o=this.calcStaticMsg(r);i.push(o)}})),i}calcStaticMsg(e){const{position:a}=e,s=this.viewMsgMap.get(e.appViewMsgId),{title:i,message:r,removeMode:n,position:o,messageType:u}=s,{userTag:c,userTag2:l,userTag3:h,userTag4:p}=s;return{title:i,message:r,position:a||o,messageType:u,removeMode:n,extraParams:{userTag:c,userTag2:l,userTag3:h,userTag4:p}}}async calcDynaMsgs(e,a,s){const i=this.viewMsgMap.get(e.appViewMsgId),{appDataEntityId:r,orderValueAppDEFieldId:n,titleAppDEFieldId:o,removeFlagAppDEFieldId:u,msgTypeAppDEFieldId:c,contentAppDEFieldId:l,msgPosAppDEFieldId:h}=i;if(!r)throw new m(i,"\u672A\u914D\u7F6E\u5E94\u7528\u5B9E\u4F53");const p=await ibiz.hub.getAppDataEntity(r,a.srfappid),E={...s},C=this.getDeFieldName(p,n);C&&(E.sort="".concat(C,",asc"));const S=await si.fetchDataSet(i,a,E);if(!S.length)return[];const A=this.calcStaticMsg(e),y=this.getDeFieldName(p,o),F=this.getDeFieldName(p,h),I=this.getDeFieldName(p,l),N=this.getDeFieldName(p,c),z=this.getDeFieldName(p,u);return S.map(P=>{const et={};return F&&!w(P[F])&&(et.position=P[F]),y&&!w(P[y])&&(et.title=P[y]),I&&!w(P[I])&&(et.message=P[I]),N&&!w(P[N])&&(et.messageType=P[N]),z&&!w(P[z])&&(et.removeMode=P[z]),De(A,et)})}},Vs=d("ViewController",class extends xs{constructor(t,e,a,s){const i=ibiz.util.layoutPanel.fill(t);super(i,Tt.create({},e),a||{},new zn(s)),this.session={},this.modal=new Dr({}),this.providers={},this.engines=[],this.slotProps={},this.counters={},this.viewLoading=new Wn,this.isCloseView=!1,this._isActive=!0,s&&s.registerController(this.model.name,this),this.ctx.init(this),this.initEngines()}get _evt(){return this.evt}get parentView(){var t;return(t=this.ctx.parent)==null?void 0:t.view}get isActive(){return this._isActive}onActivated(){this._isActive=!0,ibiz.log.debug("\u89C6\u56FE[".concat(this.model.name,"](").concat(this.model.id,")\u6FC0\u6D3B"))}onDeactivated(){this._isActive=!1,ibiz.log.debug("\u89C6\u56FE[".concat(this.model.name,"](").concat(this.model.id,")\u6682\u505C"))}initEngines(){const t=ja(this.model);if(t.length)t.forEach(e=>{const a=ibiz.engine.getEngine(e,this);a?this.engines.push(a):ibiz.log.warn("\u672A\u627E\u5230\u89C6\u56FE\u5F15\u64CE\u5B9E\u73B0\uFF1A",e)});else{const e=ibiz.engine.getEngine({engineCat:"VIEW",engineType:this.model.viewType},this);e&&this.engines.push(e)}}async initCounters(){const t=this.model.viewLayoutPanel,{appCounterRefs:e}=t;if(e&&e.length>0)try{await Promise.all(e.map(async a=>{const s=await As.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=>{ve(this.state.closeOK)&&(i.ok=this.state.closeOK),await this._evt.emit("onCloseView",{...i})}),this._evt.emit("onViewInfoChange",{caption:this.model.caption,title:this.model.title}),this.handleContextParams();const t=this.model.viewLayoutPanel;this.childNames.push(t.name);const e=await dt(t);this.providers[t.name]=e;const a=za(this.model);a&&await Promise.all(a.map(async i=>{const r=await dt(i);this.providers[i.name||i.id]=r})),await this.initCounters();const s=Ga(this.model);s.length&&(this.scheduler=ibiz.scheduler.createViewScheduler(s),this.scheduler.defaultParamsCb=()=>this.getEventArgs(),this.scheduler.hasViewEventTrigger&&this.evt.onAll((i,r)=>{this.scheduler.triggerViewEvent(r)})),this.initViewMsg(),this.engines.length&&await Promise.all(this.engines.map(i=>i.onCreated()))}async onMounted(){var t;await super.onMounted(),this.engines.length&&await Promise.all(this.engines.map(e=>e.onMounted())),(t=this.scheduler)==null||t.startTimerTrigger()}async onDestroyed(){await super.onDestroyed(),this.engines.length&&await Promise.all(this.engines.map(t=>t.onDestroyed())),this.ctx.destroy(),this.context.destroy(),this.engines=[],this.scheduler&&this.scheduler.destroy(),ibiz.log.debug("\u89C6\u56FE[".concat(this.model.name,"](").concat(this.model.id,")\u9500\u6BC1"))}handleContextParams(){this.context.srfappid=this.model.appId,(w(this.context.srfsessionid)||T(this.context.srfsessionid))&&(this.context.srfsessionid=Y());const t=this.model.appViewNavContexts;let e={};x(t)&&(e=b(t,this.params,this.context)),Object.assign(this.context,e);const a=this.model.appViewNavParams;let s={};x(a)&&(s=b(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 Jn(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)}}),Uu=d("MobViewController",class extends Vs{}),zu=d("WFStepTraceViewController",class extends Vs{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)}}}),Zn=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=b(s,t,a,e));const n=Object.assign(e.clone(),r);let o={};return i&&t&&(o=b(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)}}),Gu=d("CodeListEditorController",class extends Zn{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"))}}),H=d("ControlController",class extends xs{constructor(t,e,a,s){super(t,Tt.create({},e),new la({},a),s),this.controlParams={},this.providers={},this.registerToCtx();const i=ibiz.util.layoutPanel.get("".concat(t.controlType,"_DEFAULT"));i&&(this.controlPanel=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=b(e,this.params,this.context)),Object.assign(this.context,s);let i={};x(a)&&(i=b(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=b(t,this.params,this.context)),Object.assign(this.controlParams,e)}initControlScheduler(t=[]){t.length!==0&&(this.scheduler=ibiz.scheduler.createControlScheduler(t),this.scheduler.defaultParamsCb=()=>this.getEventArgs())}actionNotification(t,e){var a;const{ctrlMsg:s}=this.model,i=(a=s?.ctrlMsgItems)==null?void 0:a.find(o=>o.name===t);let r,n;if(i&&i.content){n=w(i.timeout)?void 0:i.timeout/1e3;const o={...this.getEventArgs()};e?.data&&(o.data=e.data),r=B.execScriptFn(o,"`".concat(i.content,"`"),{isAsync:!1,singleRowReturn:!0})}else{const o="CONTROL.".concat(this.model.controlType,".").concat(t).toUpperCase();r=ibiz.i18n.t(o,""),r===o&&(r="")}if(!r&&e?.default&&(r=e.default),!r&&e?.error&&(r=r||e.error.message),!!r){if(e?.error)throw ibiz.log.error(e.error),new ce(r,n);ibiz.message.success(r,n,n===0)}}}),tt=d("MDControlController",class extends H{constructor(){super(...arguments),this.fieldIdNameMap=new Map}get _evt(){return this.evt}initState(){super.initState(),this.state.items=[],this.state.selectedData=[],this.state.searchParams={},this.state.noSort=!1,this.state.sortQuery="",this.state.curPage=1,this.state.size=20,this.state.total=0,this.state.isLoaded=!1,this.state.singleSelect=!0,this.state.mdctrlActiveMode=0,this.state.groups=[]}async onCreated(){var t;await super.onCreated(),this.dataEntity=await ibiz.hub.getAppDataEntity(this.model.appDataEntityId),(t=this.dataEntity.appDEFields)==null||t.forEach(a=>{this.fieldIdNameMap.set(a.id,a.name)});const e=this.onDataChange.bind(this);this.onDataChange=Vt(a=>{e(a)},300),ibiz.mc.command.change.on(this.onDataChange),this.setSort()}async onMounted(){await super.onMounted(),this.state.loadDefault&&this.load({isInitialLoad:!0})}onDestroyed(){return ibiz.mc.command.change.off(this.onDataChange),super.onDestroyed()}onDataChange(t){t.data&&t.data.srfdecodename===this.dataEntity.codeName&&this.refresh()}setSort(t,e){t&&e&&(this.state.sortQuery="".concat(t,",").concat(e))}async getFetchParams(t){const{curPage:e,size:a,sortQuery:s,noSort:i}=this.state,r={...this.params};return a&&(r.page=e-1,r.size=a),!i&&s&&(r.sort=s),await this._evt.emit("onBeforeLoad",void 0),Object.assign(r,{...this.state.searchParams}),t&&Object.assign(r,t),r}async load(t={}){if(this.state.isSimple)return[];await this.startLoading();try{const e=t.isInitialLoad===!0,a=t.isLoadMore===!0;e?this.state.curPage=1:a&&(this.state.curPage+=1);const{context:s}=this.handlerAbilityParams(t),i=await this.getFetchParams(t?.viewParam),r=await this.service.fetch(s,i);typeof r.total=="number"&&(this.state.total=r.total),a?this.state.items.push(...r.data):this.state.items=r.data,await this.afterLoad(t,r.data),this.state.isLoaded=!0,await this._evt.emit("onLoadSuccess",{isInitialLoad:e})}catch(e){throw await this._evt.emit("onLoadError",void 0),this.actionNotification("FETCHERROR",{error:e}),e}finally{await this.endLoading()}return this.state.items.forEach((e,a)=>{e.srfserialnum=a+1}),this.actionNotification("FETCHSUCCESS"),this.state.items}async afterLoad(t,e){return e}async refresh(){await this.load({isInitialLoad:!1})}async remove(t){const{context:e,params:a,data:s}=this.handlerAbilityParams(t);if(!s?.length)throw new f("\u672A\u9009\u4E2D\u6570\u636E");if(t?.silent!==!0&&!await ibiz.confirm.error({title:"\u6570\u636E\u5220\u9664",desc:"\u786E\u8BA4\u5220\u9664\u6570\u636E\uFF1F"}))return;await this._evt.emit("onBeforeRemove",void 0),await this.startLoading();let i=!1;try{const r=_(this.model.appDataEntityId);await nt(s.map(async n=>{if(n.srfuf!==0){const o=e.clone();o[r]=n.srfkey,await this.service.remove(o,a),i=!0}this.afterRemove(n)})),t?.silent!==!0&&this.actionNotification("REMOVESUCCESS",{data:s,default:"\u6570\u636E[".concat(s.map(n=>n.srfmajortext).join("\u3001"),"]\u5220\u9664\u6210\u529F!")}),i&&!t?.notRefresh&&await this.refresh()}catch(r){throw await this._evt.emit("onRemoveError",void 0),this.actionNotification("REMOVEERROR",{error:r,data:s}),r}finally{await this.endLoading()}this.state.selectedData=[],await this._evt.emit("onRemoveSuccess",void 0)}afterRemove(t){const e=this.state.items.findIndex(a=>a.srfkey===t.srfkey);e!==-1&&this.state.items.splice(e,1)}getData(){return this.state.selectedData||[]}setActive(t){return this._evt.emit("onActive",{data:[t]})}setSelection(t){const{selectedData:e}=this.state;da(e,t)||(this.state.selectedData=t,this._evt.emit("onSelectionChange",{data:t}))}async onRowClick(t){const{selectedData:e}=this.state,a=e.filter(s=>s.srfkey!==t.srfkey);a.length===e.length?this.setSelection(this.state.singleSelect?[t]:e.concat([t])):this.setSelection(a),this.state.mdctrlActiveMode===1&&await this.setActive(t)}async onDbRowClick(t){this.state.mdctrlActiveMode===2&&await this.setActive(t)}async importData(){var t;const{appDataEntityId:e,dedataImportId:a}=this.model,s=await ibiz.hub.getAppDataEntity(e);if(!((t=s.appDEDataImports)==null?void 0:t.find(n=>n.id===a)))throw new f("\u65E0\u5BFC\u5165\u6A21\u578B\uFF01");const r=ibiz.overlay.createModal("DataImport",{dismiss:()=>r.dismiss(),appDataEntity:s},{width:"auto",placement:"center"});r.present(),await r.onWillDismiss()}async exportData(t){}}),to=d("AppMenuController",class extends H{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=le(this.model,t,{compareField:"id",childrenFields:["appMenuItems"]});if(!s)throw new f("\u627E\u4E0D\u5230\u540D\u4E3A".concat(t,"\u7684\u83DC\u5355\u9879"));if(this.evt.emit("onClick",{eventArg:t,event:e}),!s.appFuncId)throw new m(s,"\u6CA1\u6709\u914D\u7F6E\u5E94\u7528\u529F\u80FD");const i=this.context.clone();this.routeDepth&&a&&Object.assign(i,{toRouteDepth:this.routeDepth+1}),await ibiz.commands.execute(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}}),ju=d("AppMenuIconViewController",class extends to{async onClickMenuItem(t,e){const a=le(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)}}),eo=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 yn(s,i))}async exec2(t,e,a={},s={},i=this.model.appDataEntityId){return await this.app.deService.exec(i,t,e,a,s)}}),Ku=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 eo(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,await this.evt.emit("onLoadSuccess",{isInitialLoad:e}),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:L(i).format("YYYY-MM-DD HH:mm:ss"),srfenddate:L(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};!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);const n=this.getCurSelectDate(r);return Object.assign(r,n),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}});L.extend(ni),L.extend(ui),L.extend(li),L.extend(hi),L.extend(fi);var Qe="$default_group",vt=class{constructor(t,e){this.model=t,this.chartGenerator=e,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=pe(n),this.yAxisIndex=pe(o),this.seriesName=s||i,this.staticOptions=this.calcStaticOptions(),r&&(this.seriesUserParam=$e(r))}calcStaticOptions(){return{type:this.model.seriesType,name:this.seriesName,emphasis:{label:{fontSize:20,show:!0}},label:{position:"top",show:!0}}}translateVal(t,e,a=!1){if(w(e))return;if(w(t))return e;const s=this.chartGenerator.codeListMap.get(t);if(s?.length){const i=s.find(r=>r.value===e);if(i)return i.text}return a?void 0:e}calcGroupData(t){this.groupData={};const e=this.groupData,{seriesCodeListId:a,catalogCodeListId:s}=this.model;return t.forEach(i=>{let r=Qe;if(this.groupField){const o=this.translateVal(a,i[this.groupField]);if(w(o))return;r=o}e[r]||(e[r]=new Map,s&&this.autoCompleteCategory&&this.chartGenerator.codeListMap.get(s).forEach(u=>{e[r].set(u.text,{value:0})}));const n=this.translateVal(s,i[this.catalogField],!0);n&&(e[r].get(n)||e[r].set(n,{value:0}),e[r].get(n).value=xt(e[r].get(n).value,i[this.valueField]),e[r].get(n).deData=i)}),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!==Qe&&(i.name=e),this.seriesUserParam&&(i=Ct(i,this.seriesUserParam)),i})}calcSeriesData(t){const e=[];return t.forEach((a,s)=>{var i;e.push([s,a.value,(i=a.deData)==null?void 0:i.srfkey])}),e}calcByData(t){const e=this.dataPreprocess(t),a=this.calcGroupData(e);return this.addTimeData(a),this.calcGroupSeries(a)}getSrfkeyByParams(t){return t.value[2]}dataPreprocess(t){const e=[];t.forEach(s=>{e.push(v(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=L(s[this.catalogField]).format(i);s[this.catalogField]=r}}else if(a==="QUARTER"){if(s[this.catalogField]){const r="".concat(L(s[this.catalogField]).format("YYYY"),"-").concat(L(s[this.catalogField]).quarter());s[this.catalogField]=r}}else if(a==="YEARWEEK"&&s[this.catalogField]){const r="".concat(L(s[this.catalogField]).format("YYYY"),"-").concat(L(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)=>L(n).diff(L(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(L(o))})});const s=L.max(a),i=L.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=L("".concat(l,"-12-31")).isoWeek();for(let p=1;p<=h;p++){const E="".concat(l,"-").concat(p);Object.keys(t).forEach(C=>{t[C].get(E)||t[C].set(E,{value:0})})}}}this.sortTimeData(t)}},ao=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}},so=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}},io=class extends vt{calcStaticOptions(){const t=super.calcStaticOptions();return t.label.formatter="{b}: {d}%({c})",t.label.position="outer",t}calcSeriesData(t){const e=[];return t.forEach((a,s)=>{var i;e.push({name:s,value:[a.value,(i=a.deData)==null?void 0:i.srfkey]})}),e}getSrfkeyByParams(t){return t.value[1]}},ro=class extends vt{calcStaticOptions(){const t=super.calcStaticOptions();return t.label.formatter="{b}: {d}%({c})",t.label.position="outside",t}calcSeriesData(t){const e=[];return t.forEach((a,s)=>{var i;e.push({name:s,value:[a.value,(i=a.deData)==null?void 0:i.srfkey]})}),e}getSrfkeyByParams(t){return t.value[1]}},no=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}},oo=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 oo(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):0);return{name:r===Qe?this.seriesName:r,value:o}});let i={...this.staticOptions,data:s};return this.seriesUserParam&&(i=Ct(i,this.seriesUserParam)),i}getSrfkeyByParams(t){return t.value[1]}};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 co=class{constructor(t){this.model=t,this.staticOptions={tooltip:{show:!0}},this.options={},this.seriesGenerators=[],this.radarMap=new Map,this.codeListMap=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 ao(e,this);break;case"bar":a=new so(e,this);break;case"scatter":a=new no(e,this);break;case"pie":a=new ro(e,this);break;case"funnel":a=new io(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=>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,rs){"use strict";var f,m,D,Tt,Bt,R,Ot,ns,At,os,us,cs,ls,ce,ds,le,hs,k,de,_t,Mt,he,It,xt,pe,ps,fs,j,ms,Vt,Es,gs,mt,Cs,Ds,ws,vs,As,Is,ys,Fs,Ps,x,V,fe,Et,Y,kt,me,Ee,bs,ge,Ce,Ss,Ns,w,De,T,v,rt,gt,we,ve,Ct,L,Ae,Ie;return{setters:[function(g){f=g.RuntimeError,m=g.RuntimeModelError,D=g.ModelError,Tt=g.IBizContext,Bt=g.DataTypes,R=g.HttpResponse,Ot=g.HttpError,ns=g.clone,At=g.CoreConst,os=g.Net,us=g.getToken,cs=g.NOOP,ls=g.IBizParams,ce=g.NoticeError,ds=g.isElementSame,le=g.findRecursiveChild,hs=g.StringUtil,k=g.recursiveIterate,de=g.debounceAndAsyncMerge,_t=g.mergeDefaultInLeft,Mt=g.isOverlap,he=g.awaitTimeout,It=g.mergeInLeft,xt=g.plus,pe=g.toNumberOrNil},function(g){ps=g.isEmpty,fs=g.isString,j=g.isArray,ms=g.isObject,Vt=g.debounce,Es=g.isNil,gs=g.camelCase,mt=g.eq,Cs=g.gt,Ds=g.gte,ws=g.findIndex,vs=g.lt,As=g.lte,Is=g.upperFirst,ys=g.snakeCase,Fs=g.kebabCase,Ps=g.isFunction},function(g){x=g.notNilEmpty,V=g.isNilOrEmpty,fe=g.AsyncSeriesHook,Et=g.QXEvent,Y=g.createUUID,kt=g.isArray,me=g.setCookie,Ee=g.clearCookie,bs=g.clearAll,ge=g.isNumber,Ce=g.ascSort,Ss=g.descSort},function(g){Ns=g.default},function(g){w=g.isNil,De=g.mergeRight,T=g.isEmpty,v=g.clone,rt=g.equals,gt=g.where,we=g.mergeLeft,ve=g.isNotNil,Ct=g.mergeDeepRight},function(g){L=g.default},function(g){Ae=g.default},function(g){Ie=g.default}],execute:function(){d({asyncImportData:eo,calcContentAlignStyle:zi,calcDeCodeNameById:_,calcDynaClass:Dt,calcGridLayoutPos:Gi,calcLayoutHeightWidth:Ut,calcMainStateOPPrivsStrs:Vs,calcNavParams:Wt,calcResPath:Qt,compare:Ft,compareNumber:Le,contains:Pt,convertNavData:b,convertNavDataByArray:Ms,convertObjectToNavParams:ye,execDELogic:te,execDELogicAction:Sa,execDELogicById:ba,execFieldLogics:Rt,execUILogic:ae,exportData:xa,filterFieldLogics:Ws,filterValueRules:_e,findChildFormDetails:Gt,findDELogic:be,findEditItem:Us,findFieldById:wt,findModelChild:lt,formatMultiData:Fe,generateEditorRules:He,generateRules:Xe,getAllPanelField:Hs,getAppCounterProvider:ea,getAppViewRef:Wi,getAsyncActionProvider:Vr,getChildNodeRSs:Re,getControl:ki,getControlProvider:dt,getControlsByView:zs,getDeACMode:ji,getDefaultValue:Ye,getEditorProvider:bt,getFormDetailProvider:We,getGridColumnProvider:Ue,getMatchResPath:Aa,getOriginData:Ma,getPFPlugin:Ui,getPanelItemProvider:ca,getPortletProvider:ha,getRootNode:Se,getTreeNode:Ne,getUIActionById:zt,getUIActionProvider:ma,getUILogicNodeProvider:ga,getViewEngines:js,getViewLogics:Gs,getViewProvider:_r,getWFContext:Qs,getWFSubmitViewId:pr,handleAllSettled:nt,hasDeCodeName:ks,hasSubRoute:Ke,importData:so,install:Hu,installCommand:Oa,isDataContainer:Ks,isValueChange:se,matchMainState:xs,openRedirectView:Ys,parseUserParams:Pe,presetAppCounterProvider:wa,presetUIActionProvider:Ua,registerAppCounterProvider:ta,registerAsyncActionProvider:Mr,registerControlProvider:br,registerEditorProvider:Sr,registerFormDetailProvider:Nr,registerGridColumnProvider:Rr,registerPanelItemProvider:Lr,registerPortletProvider:Tr,registerUIActionProvider:Nt,registerUILogicNodeProvider:Br,registerViewProvider:Or,strContain:jt,testCond:$,toLocalOpenWFRedirectView:qs,verifyDeRules:Te,verifyFormGroupLogic:Kt,verifyPanelGroupLogic:Xt});var g=typeof globalThis<"u"?globalThis:typeof window<"u"?window:typeof global<"u"?global:typeof self<"u"?self:{};function yt(t){return t&&t.__esModule&&Object.prototype.hasOwnProperty.call(t,"default")?t.default:t}var Rs={exports:{}};(function(t,e){(function(s,a){t.exports=a()})(g,function(){return function(s,a,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)}}})})(Rs);var ni=Rs.exports,oi=yt(ni),Ls={exports:{}};(function(t,e){(function(s,a){t.exports=a()})(g,function(){return function(s,a){a.prototype.isSameOrBefore=function(i,r){return this.isSame(i,r)||this.isBefore(i,r)}}})})(Ls);var ui=Ls.exports,ci=yt(ui),Ts={exports:{}};(function(t,e){(function(s,a){t.exports=a()})(g,function(){var s="month",a="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)===a?this.add(3*c,s):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)===a){var E=this.quarter()-1;return p?this.month(3*E).startOf(s).startOf("day"):this.month(3*E+2).endOf(s).endOf("day")}return u.bind(this)(c,l)}}})})(Ts);var li=Ts.exports,di=yt(li),Bs={exports:{}};(function(t,e){(function(s,a){t.exports=a()})(g,function(){var s="week",a="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(a).add(1,a).date(c),h=n(this).endOf(s);if(l.isBefore(h))return 1}var p=n(this).startOf(a).date(c).startOf(s).subtract(1,"millisecond"),E=this.diff(p,s,!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)}}})})(Bs);var hi=Bs.exports,pi=yt(hi),Os={exports:{}};(function(t,e){(function(s,a){t.exports=a()})(g,function(){var s="day";return function(a,i,r){var n=function(c){return c.add(4-c.isoWeekday(),s)},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()),s);var l,h,p,E,C=n(this),S=(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,s));return C.diff(S,"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)}}})})(Os);var fi=Os.exports,mi=yt(fi),Ei=class{constructor(){this.view={enableDataInfoBar:!0,expCacheMode:"TABEXPPANEL:"},this.grid={editShowMode:"row",editSaveMode:"cell-blur"},this.appMenu={enableEcho:!0},this.codeList={timeout:60*60*1e3}}},gi=d("RegisterCenter",class{constructor(){this.providers=new Map}register(t,e){this.providers.set(t,e)}unRegister(t){this.providers.delete(t)}get(t,...e){const s=this.providers.get(t);if(s)return s(...e)}}),Q=class{static isHelperName(t){return this.helperNames.includes(t)}static handleJudgmentExecute(t,e,s){return s.fn?e?s.fn(t):s.inverse(t):e?s.hash.yes=!0:s.hash.no=!1}};Q.helperNames=["lookup","log","and","camelCase","concat","eq","gt","get","lowerCase","lt","lte","neq","not","or","pascalCase","pluralize","snakeCase","spinalCase","upperCase"];var O=class{constructor(t,e){t.registerHelper(e,this.onExecute)}},Ci=class extends O{constructor(t){super(t,"and")}onExecute(...t){const e=t[t.length-1];t.pop();const a=t.filter(i=>!!i).length===t.length;return Q.handleJudgmentExecute(this,a,e)}},Di=class extends O{constructor(t){super(t,"camelCase")}onExecute(t){return t?gs(t):""}},wi=class extends O{constructor(t){super(t,"concat")}onExecute(...t){return t.pop(),t.join("")}},vi=class extends O{constructor(t){super(t,"eq")}onExecute(t,e,s){const a=mt(t,e);return Q.handleJudgmentExecute(this,a,s)}},Ai=class extends O{constructor(t){super(t,"gt")}onExecute(t,e,s){const a=Cs(t,e);return Q.handleJudgmentExecute(this,a,s)}},Ii=class extends O{constructor(t){super(t,"gte")}onExecute(t,e,s){const a=Ds(t,e);return Q.handleJudgmentExecute(this,a,s)}},yi=class extends O{constructor(t){super(t,"eqPropertyValue")}onExecute(t,e,s,a){let i=!1;return j(t)?i=!mt(ws(t,r=>mt(r[e],s)),-1):i=t.hasOwnProperty(e)&&(i=mt(t[e],s)),Q.handleJudgmentExecute(this,i,a)}},Fi=class extends O{constructor(t){super(t,"jsonParse")}onExecute(t){return JSON.parse(t)}},Pi=class extends O{constructor(t){super(t,"jsonStringify")}onExecute(t,e){return JSON.stringify(t,null,typeof e=="number"?e:void 0)}},bi=class extends O{constructor(t){super(t,"lowerCase")}onExecute(t){return t?t.toLowerCase():""}},Si=class extends O{constructor(t){super(t,"lt")}onExecute(t,e,s){const a=vs(t,e);return Q.handleJudgmentExecute(this,a,s)}},Ni=class extends O{constructor(t){super(t,"lte")}onExecute(t,e,s){const a=As(t,e);return Q.handleJudgmentExecute(this,a,s)}},Ri=class extends O{constructor(t){super(t,"neq")}onExecute(t,e,s){const a=!mt(t,e);return Q.handleJudgmentExecute(this,a,s)}},Li=class extends O{constructor(t){super(t,"not")}onExecute(t,e){const s=Handlebars.Utils.isEmpty(t);return Q.handleJudgmentExecute(this,s,e)}},Ti=class extends O{constructor(t){super(t,"or")}onExecute(...t){var e;const s=t[t.length-1];t.pop();const a=t.find(i=>!!i);if(s.fn){const i=((e=s.data)==null?void 0:e.root)||{};return a?s.fn(i):s.inverse(i)}return a||""}},Bi=class extends O{constructor(t){super(t,"pascalCase")}onExecute(t){return t?Is(t):""}},Oi=class extends O{constructor(t){super(t,"snakeCase")}onExecute(t){return t?ys(t):""}},_i=class extends O{constructor(t){super(t,"spinalCase")}onExecute(t){return t?Fs(t):""}},Mi=class extends O{constructor(t){super(t,"upperCase")}onExecute(t){return t?t.toUpperCase():""}};function xi(t){new Ci(t),new Di(t),new wi(t),new vi(t),new Ai(t),new Ii(t),new Fi(t),new Pi(t),new bi(t),new Si(t),new Ni(t),new Ri(t),new Li(t),new Ti(t),new Bi(t),new Oi(t),new _i(t),new Mi(t),new yi(t)}var Vi=d("HandlebarsUtil",class{constructor(){this.p=null}get isInit(){return!!this.hsb}async init(){if(this.isInit)return;if(this.p)return this.p;this.p=rs.import("handlebars");const t=await this.p;return this.hsb=t.default||t,this.p=null,xi(this.hsb),this.hsb}async render(t,e){return this.hsb||await this.init(),this.hsb.compile(t)(e)}syncRender(t,e){if(!this.hsb)throw new Error("handlebars not init");return this.hsb.compile(t)(e)}});function ye(t){const e=[],s=/^%(.+)%$/;for(const a in t){let i=!0,r=t[a];x(t[a])&&s.test(t[a])&&(i=!1,r=t[a].substring(1,t[a].length-1)),e.push({key:a.toLowerCase(),rawValue:i,value:r})}return e}function b(t,...e){if(!t||ps(t))return{};const s=Array.isArray(t)?t:ye(t);return Ms(s,...e)}function _s(t,e){const s=t.find(a=>V(a)?!1:a[e]||Object.prototype.hasOwnProperty.call(a,e));return{find:!!s,value:s?.[e]}}function Ms(t,...e){const s=/\$\{[^}]*\}/g,a={};for(const i of t)if(i.rawValue)a[i.key.toLowerCase()]=i.value||null;else{const r=i.value.match(s);if(r!==null){let n=i.value;r.forEach(o=>{const{find:u,value:c}=_s(e,o.slice(2,-1));u&&(n=n.replace(o,"".concat(c)))}),a[i.key.toLowerCase()]=n}else{const{find:n,value:o}=_s(e,i.value);n&&(a[i.key.toLowerCase()]=o)}}return a}function Fe(t,e){const s={};if(!t)return s;const a=Array.isArray(t)?t:ye(t),i=e[0];return a.forEach(r=>{const{rawValue:n,value:o}=r;!n&&o&&Object.prototype.hasOwnProperty.call(i,o)&&(s[o]=e.map(u=>u[o]).join(";"))}),s}function Wt(t,e){const{deName:s,navFilter:a,pickupDEFName:i,navContexts:r,navParams:n}=t,{context:o,params:u,data:c,derValue:l}=e,h={},p={},E=l||c.srfkey;E&&(s&&(h[s]=E),a&&(p[a]=E),i&&(p["n_".concat(i.toLowerCase(),"_eq")]=E));const C=b(r,c,u,o),S=b(n,c,u,o);return Object.assign(h,C),Object.assign(p,S),{resultContext:h,resultParams:p}}function lt(t,e){if(t&&e){const s=t.find(a=>a.id?a.id.toLowerCase()===e.toLowerCase():!1);if(s)return s}return null}function ki(t,e){var s,a;let i=t.controls||[];return(a=(s=t.viewLayoutPanel)==null?void 0:s.controls)!=null&&a.length&&(i=i.concat(t.viewLayoutPanel.controls)),i.find(r=>r.name===e||r.codeName===e||r.id===e)}function Wi(t,e){var s,a;let i=t.appViewRefs||[];return(a=(s=t.viewLayoutPanel)==null?void 0:s.appViewRefs)!=null&&a.length&&(i=i.concat(t.viewLayoutPanel.appViewRefs)),i.find(r=>r.name===e||r.id===e)}function Pe(t){const e={},s={},a={};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(e,{[n[1]]:r});break;case"SRFNAVCTX":Object.assign(s,{[n[1]]:r});break;default:Object.assign(a,{key:r});break}}}return{navigateContexts:e,navigateParams:s,other:a}}function Ui(t,e){var s;const a=(s=t.appPFPluginRefs)==null?void 0:s.find(i=>i.id===e);if(!a)throw new Error("\u672A\u627E\u5230\u63D2\u4EF6".concat(e));return a}function Ut(t){const{width:e,height:s,widthMode:a,heightMode:i}=t,r={width:"",height:""};return a==="FULL"?r.width="100%":e&&e>0&&(e>0&&e<=1?r.width="".concat(e*100,"%"):a==="PERCENTAGE"?r.width="".concat(e,"%"):r.width="".concat(e,"px")),i==="FULL"?r.height="100%":s&&s>0&&(s>0&&s<=1?r.height="".concat(s*100,"%"):i==="PERCENTAGE"?r.height="".concat(s,"%"):r.height="".concat(s,"px")),r}function zi(t){const{valignSelf:e,halignSelf:s}=t;let a;if(e||s){switch(a={display:"flex"},e){case"TOP":Object.assign(a,{"align-items":"flex-start"});break;case"MIDDLE":Object.assign(a,{"align-items":"center"});break;case"BOTTOM":Object.assign(a,{"align-items":"flex-end"});break}switch(s){case"LEFT":Object.assign(a,{"justify-content":"flex-start"});break;case"CENTER":Object.assign(a,{"justify-content":"center"});break;case"RIGHT":Object.assign(a,{"justify-content":"flex-end"});break;case"JUSTIFY":Object.assign(a,{"justify-content":"space-between"});break}}return a}function Gi(t){const{layout:e,colXS:s,colXSOffset:a,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(s,a),sm:l(i,r),md:l(n,o),lg:l(u,c)}}function Dt(t,e){const s=[],a=B.execScriptFn({data:e},t,{singleRowReturn:!0,isAsync:!1});return fs(a)?s.push(a):j(a)?s.push(...a):ms(a)&&Object.keys(a).forEach(i=>{a[i]&&s.push(i)}),s}function xs(t,e){const{mainStateAppDEFieldIds:s,demainStates:a}=t;if(s&&a){const i=[];return s.forEach(r=>{i.push(e[r])}),a.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 Vs(t,e){const s=ibiz.hub.getApp().model,{demainStateOPPrivs:a,opprivAllowMode:i}=t,r=a?.map(o=>o.name)||[];let n=[];return i?n=r:n=[...s.deopprivs,...e.deopprivs].filter(u=>!r.includes(u.name)).map(u=>u.name),n}function _(t){return t.split(".").pop()}function ks(t,e){const s=_(e);return x(t[s])}async function ji(t,e,s){var a;return(a=(await ibiz.hub.getAppDataEntity(e,s)).appDEACModes)==null?void 0:a.find(n=>n.id===t)}function be(t,e){var s;return(s=e.appDELogics)==null?void 0:s.find(a=>a.id===t)}function Ws(t,e){var s,a;const i=[];return(s=t.appDEFields)==null||s.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)}),((a=t.appDELogics)==null?void 0:a.filter(r=>i.includes(r.id)))||[]}function wt(t,e){var s;return(s=t.appDEFields)==null?void 0:s.find(a=>a.id===e)}async function zt(t){const[,,e]=t.split("@");return ibiz.hub.getApp(e).getUIAction(t)}function Se(t){return t.detreeNodes.find(e=>e.rootNode)}function Ne(t,e){return t.detreeNodes.find(s=>s.id===e)}function Ki(t,e){return t===3||(e?t===1:t===2)}function Re(t,e){const s=e.parentId||Se(t).id;return t.detreeNodeRSs.filter(a=>a.parentDETreeNodeId===s&&Ki(a.searchMode,e.hasQuery))}function Us(t,e){var s;return(s=t.degridEditItems)==null?void 0:s.find(a=>a.codeName===e)}function Gt(t){let e;switch(t.detailType){case"TABPANEL":e=t.deformTabPages;break;case"FORMPAGE":case"TABPAGE":case"GROUPPANEL":e=t.deformDetails;break}return e||[]}function zs(t){const{viewLayoutPanel:e}=t,s=t.controls||[];return e&&s.push(...e.controls||[]),s}function Gs(t){const{viewLayoutPanel:e}=t,s=t.appViewLogics||[];return e&&s.push(...e.appViewLogics||[]),s}function js(t){const{viewLayoutPanel:e}=t,s=t.appViewEngines||[];return e&&s.push(...e.appViewEngines||[]),s.filter(a=>{switch(a.engineCat){case"CTRL":return ibiz.log.warn("\u672A\u652F\u6301\u7684\u5F15\u64CE\u5206\u7C7B\uFF1A".concat(a.engineType)),!1;default:return!0}})}function Ks(t){return t.itemType==="CONTAINER"&&["CONTAINER_MULTIDATA","CONTAINER_SINGLEDATA"].includes(t.predefinedType)}var Xi=["panelItems","panelTabPages","rootPanelItems"];function Xs(t){let e=[];for(const a of Xi)if(t[a]){e=t[a];break}const s=[];return e.length&&(s.push(...e.filter(a=>a.itemType==="FIELD")),e.forEach(a=>{Ks(a)||s.push(...Xs(a))})),s}function Hs(t){return Xs(t)}async function Ys(t,e,s={},a={}){return Hi(t,e,s,a)}async function qs(t,e,s={}){const a=e.lastIndexOf("?"),i=decodeURIComponent(e.substring(a+1,e.length)),r=Ns.parse(i,{delimiter:";"}),n=r.srfdename||"";if(!n)throw new f("\u91CD\u5B9A\u5411\u53C2\u6570\u7F3A\u5C11\u5B9E\u4F53\u540D\u79F0");const u=ibiz.hub.getApp(t.srfappid).deName2DeCodeName.get(n.toUpperCase());if(!u)throw new f("\u672A\u627E\u5230\u6307\u5B9A\u5B9E\u4F53\u7684codeName: ".concat(n));r[u.toLowerCase()]=r[n.toLowerCase()];const c="".concat(u).concat(ibiz.env.isMob?"Mob":"","RedirectView"),l=await ibiz.hub.getAppView(c);if(delete r.srfdename,r.srfwf!=="undo"){const p=r.processDefinitionKey.split("-")[3],E=p.substring(0,p.lastIndexOf("v")),C=p.substring(p.lastIndexOf("v"));r.wf=E,r.wfVersion=C}r.srfprocessinstanceid&&(t.srfprocessinstanceid=r.srfprocessinstanceid,delete r.srfprocessinstanceid),await ibiz.commands.execute(Z.TAG,l.id,t,r,s)}async function Hi(t,e,s={},a={}){var i;const r=t.appViewNavContexts||[],n=b(r,s,e);e=Object.assign(e.clone(),n);const o=t.appViewNavParams||[],u=b(o,s,e);Object.assign(s,u);const c=t.appDataEntityId,l=_(c);let h=((i=a.data)==null?void 0:i[0])||{};e[l]=h[l]||e[l]||s[l];const p=t.getDataAppDEActionId,C=await ibiz.hub.getApp(t.appId).deService.getService(c);ibiz.loading.showRedirect();try{const q=await C.exec(p||"get",e,s);if(q.ok){h=q.data;let P=h.linkurl;if(P)return e.srfprocessinstanceid&&(P+=";srfprocessinstanceid=".concat(e.srfprocessinstanceid)),ibiz.env.dev&&P.indexOf("appredirectview?")!==-1&&(P=P.slice(P.indexOf("appredirectview?"))),P.startsWith("http://")||P.startsWith("https://")?new Promise(et=>{const Ja=window.open(P,"_blank");Ja&&(Ja.callback=()=>{et({ok:!0,data:[]})})}):P.startsWith("appredirectview?")?(await qs(e,P,a),{ok:!0,data:[]}):{ok:!1,data:[]}}}finally{ibiz.loading.hideRedirect()}const S=await ibiz.hub.getAppDataEntity(c,t.appId),A=await Yi(S,t,s,h),y=A.split(":"),F=y.length===2?A:y.slice(0,2).join(":"),I="".concat(S.name.toUpperCase(),":").concat(A),N=t.redirectAppViewRefs,z=N?.find(q=>{const P=q.name||q.id;return P===I||P===A||P===F});if(z){const q=z.refAppViewId;if(q){const P=await ibiz.commands.execute(Z.TAG,q,e,s,{...a,data:[h]});if(P)return P}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",N?.map(({refAppViewId:q,name:P,realTitle:et})=>({viewId:q,tag:P,title:et}))),new m(t,"\u672A\u627E\u5230\u91CD\u5B9A\u5411\u6807\u8BC6[".concat(A,"]\u6216[").concat(I,"]\u6216\u5DE5\u4F5C\u6D41[").concat(F,"]\u5BF9\u5E94\u89C6\u56FE"));return{ok:!0,data:[]}}async function Yi(t,e,s,a){let i="";const r=e.typeAppDEFieldId;if(r){const{codeName:c}=wt(t,r),l=a[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"),a)}const n="".concat(ibiz.env.isMob?"MOB":"","EDITVIEW"),o=s.srfwf;if(x(o))return x(s.wf)?"".concat(n,":").concat(o.toUpperCase(),":").concat(s.wf.toUpperCase()):"".concat(n,":").concat(o.toUpperCase());let u="";if(t.indexTypeAppDEFieldId){const{codeName:c}=wt(t,t.indexTypeAppDEFieldId);u=a[c.toLowerCase()]}if(V(u)&&t.formTypeAppDEFieldId){const{codeName:c}=wt(t,t.formTypeAppDEFieldId);u=a[c.toLowerCase()]}return x(u)?i="".concat(n,":").concat(u.toString().toUpperCase()):i="".concat(n),i}function $(t,e,s){if(Object.is(e,"IN"))return Pt(t,s);if(Object.is(e,"NOTIN"))return!Pt(t,s);switch(e){case"EQ":return"".concat(t)==="".concat(s);case"NOTEQ":return"".concat(t)!=="".concat(s);case"LT":return Ft(t,s)<0;case"LTANDEQ":return Ft(t,s)<=0;case"GT":return Ft(t,s)>0;case"GTANDEQ":return Ft(t,s)>=0;case"ISNULL":return V(t);case"ISNOTNULL":return x(t);case"TESTNULL":return w(t);case"IN":return Pt(t,s);case"NOTIN":return!Pt(t,s);case"LIKE":return jt(t,s);case"LEFTLIKE":return jt(t,s,"start");case"RIGHTLIKE":return jt(t,s,"end");default:throw new f("\u503C\u64CD\u4F5C\uFF1A".concat(e,"\uFF0C\u6682\u672A\u652F\u6301"))}}function Ft(t,e){const s=Number(t),a=Number(e);if(!Number.isNaN(s)&&!Number.isNaN(a))return Le(s,a);const i=new Date(t).getTime(),r=new Date(e).getTime();if(!Number.isNaN(i)&&!Number.isNaN(r))return Le(i,r);throw new f("".concat(t," \u548C ").concat(e," \u65E0\u6CD5\u6BD4\u8F83\u5927\u5C0F"))}function Le(t,e){return Number.isNaN(t)&&(t=0),Number.isNaN(e)&&(e=0),t>e?1:t<e?-1:0}function Pt(t,e){if(!e||typeof e!="string")throw new f("\u8303\u56F4\u6BD4\u8F83\u7684\u6761\u4EF6\u503C\u4E0D\u5B58\u6216\u8005\u4E0D\u662F\u5B57\u7B26\u4E32");return t?e.split(",").includes("".concat(t)):!1}function jt(t,e,s){if(!t||!e)return!1;const a="".concat(t).toUpperCase(),i="".concat(e).toUpperCase(),r=a.indexOf(i);switch(s){case"start":return r===0;case"end":return r+i.length===a.length;default:return r!==-1}}var qi={singleRowReturn:!1,isAsync:!0},Qi=d("ScriptFunction",class{constructor(t,e,s=qi){this.argKeys=[],this.options=s;const a=this.formatCode(e,s);this.calcArgKeys(t,s);const i=new Function(...this.argKeys,a);this.scriptFn=function(...n){try{return i.apply({},n)}catch(o){throw console.log("\u62A5\u9519\u811A\u672C",a),o}}}formatCode(t,e){let s=t;return e.singleRowReturn&&(s="return (".concat(s,")")),e.isAsync&&(s="return (async function() { ".concat(s,"} )();")),s}calcArgKeys(t,e){const s=e.presetParams?Object.keys(e.presetParams):[];s.push(...t);const a=["document","el","selector","env","appSession","topViewSession","viewSession","context","viewParam","activeData","data","app","topView","parentView","view","parent","util"];s.push(...a),this.argKeys=Array.from(new Set(s))}convertArgs(t){const{presetParams:e}=this.options,s=e?De(e,t):t;s.document=document,s.selector=i=>document.getElementsByClassName(i);const a=[];return this.argKeys.forEach(i=>{s[i]===void 0&&this.fillDefaultParams(i,s),a.push(s[i])}),a}fillDefaultParams(t,e){const s=e.view;switch(t){case"util":e.util={message:ibiz.message,notification:ibiz.notification,modal:ibiz.modal,confirm:ibiz.confirm,openView:ibiz.openView};break;case"viewParam":e.viewParam=e.params;break;case"env":e.env=ibiz.env;break;case"app":e.app=ibiz.hub.controller;break;case"parent":e.parent=s?.parentView;break;case"topView":e.topView=s?.getTopView();break;case"parentView":e.parentView=s?.parentView;break;case"topViewSession":e.topViewSession=s?.getTopView().session;break;case"viewSession":e.viewSession=s?.session;break;case"appSession":e.appSession=ibiz.hub.controller.session;break}}exec(t){const e=this.convertArgs(t);return this.scriptFn(...e)}}),B=d("ScriptFactory",class{static createScriptFn(t,e,s){return new Qi(t,e,s)}static execScriptFn(t,e,s){return this.createScriptFn(Object.keys(t),e,s).exec(t)}static execSingleLine(t,e={}){return this.execScriptFn(e,t,{singleRowReturn:!0,isAsync:!1})}});function $i(t){return t.condType==="GROUP"}function Ji(t){return t.condType==="SIMPLE"}function Zi(t){return t.condType==="VALUERANGE2"}function tr(t){return t.condType==="REGEX"}function er(t){return t.condType==="STRINGLENGTH"}function sr(t){return t.condType==="SYSVALUERULE"}function Te(t,e,s){const a={isPast:!0,infoMessage:s.ruleInfo};if($i(s)){const i=s.conds;i&&i.length>0&&(a.isPast=ar(i,r=>{const{isPast:n,infoMessage:o}=Te(t,e,r);return a.infoMessage=o,n},s.condOp,!!s.notMode),!a.isPast&&(s.condOp==="AND"&&s.notMode||s.condOp==="OR"&&!s.notMode)&&(a.infoMessage=s.ruleInfo))}else{t=s?.defname.toLowerCase()||t;try{if(Ji(s))a.isPast=!ir(e[t],s.condOp,s.paramValue,s.ruleInfo,s.paramType,e,s.keyCond);else if(Zi(s))a.isPast=!nr(e[t],s.minValue,s.includeMinValue,s.maxValue,s.includeMaxValue,s.ruleInfo,s.keyCond);else if(tr(s))a.isPast=!Be(e[t],s.regExCode,s.ruleInfo,s.keyCond);else if(er(s))a.isPast=!rr(e[t],s.minValue,s.includeMinValue,s.maxValue,s.includeMaxValue,s.ruleInfo,s.keyCond);else if(sr(s)&&s?.sysValueRule){const{ruleType:i,regExCode:r,scriptCode:n,ruleInfo:o}=s.sysValueRule;if(a.infoMessage=s.ruleInfo||o,i==="REG")a.isPast=!Be(e[t],r,a.infoMessage,s.keyCond);else if(i==="SCRIPT"){const{isPast:u,infoMessage:c}=or(e[t],e,n,a.infoMessage,s.keyCond);a.isPast=u,a.infoMessage=c||a.infoMessage}}}catch{a.isPast=!1}a.isPast=s.notMode?!a.isPast:a.isPast}return a}function ar(t,e,s="AND",a=!1){if(!(t?.length>0))return!1;let i=s==="AND";for(let r=0,n=t.length;r<n;r++){const o=e(t[r],r);if(s==="AND"){if(!o){i=!1;break}}else if(s==="OR"&&o){i=!0;break}}return a?!i:i}function ir(t,e,s,a,i,r,n){Object.is(i,"CURTIME")&&(s="".concat(new Date)),Object.is(i,"ENTITYFIELD")&&(s=s?s.toLowerCase():"",s=r[s]?r[s]:s),(w(a)||T(a))&&(a="\u5185\u5BB9\u5FC5\u987B\u7B26\u5408\u503C\u89C4\u5219");const o=$(t,e,s);if(!o&&n)throw new f(a);return!o}function rr(t,e,s,a,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(s){if(u<e){if(n)throw new f(r);return!0}}else if(u<=e){if(n)throw new f(r);return!0}}if(a!==null){if(i){if(u>a){if(n)throw new f(r);return!0}}else if(u>=a){if(n)throw new f(r);return!0}}return r="",!1}function Be(t,e,s,a){if(V(s)&&(s="\u503C\u5FC5\u987B\u7B26\u5408\u6B63\u5219\u89C4\u5219"),V(t)){if(a)throw new f("\u503C\u4E3A\u7A7A");return s="\u503C\u4E3A\u7A7A",!0}if(!new RegExp(e).test(t)){if(a)throw new f(s);return!0}return s="",!1}function nr(t,e,s,a,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(Be(t,/^-?\d*\.?\d+$/,"",n))return!0;const c=Number.parseFloat(t);if(e!==null){if(s){if(c<e){if(n)throw new f(r);return!0}}else if(c<=e){if(n)throw new f(r);return!0}}if(a!=null){if(i){if(c>a){if(n)throw new f(r);return!0}}else if(c>=a){if(n)throw new f(r);return!0}}return r="",!1}function or(t,e,s,a,i){V(a)&&(a="\u503C\u5FC5\u987B\u7B26\u5408\u811A\u672C\u89C4\u5219");const r=e;let n="",o=!0;const u=c=>{o=!1,c?.length>0?c.forEach(l=>{l?.message&&(n+=l.message)}):c?.message&&(n=c.message)};try{const c=B.execScriptFn({value:t,data:r},s,{isAsync:!1});typeof c=="boolean"&&(o=c)}catch(c){ibiz.log.error(c),u(c)}if(a="",!o&&i)throw new f(a);return{isPast:o,infoMessage:n||a}}function ur(t){return t.logicType==="GROUP"}function cr(t){return t.logicType==="SINGLE"}function Kt(t,e){if(ur(e)){const s=e.defdlogics;if(!s||s.length===0)throw new m(e,"\u53D1\u73B0\u7A7A\u903B\u8F91\u7EC4\uFF0C\u903B\u8F91\u65E0\u6CD5\u6B63\u5E38\u6267\u884C\uFF01");let a=!0;return e.groupOP==="AND"?a=s.find(r=>!Kt(t,r))===void 0:e.groupOP==="OR"&&(a=e.defdlogics.find(r=>Kt(t,r))!==void 0),e.notMode?!a:a}if(cr(e))return $(t[e.defdname.toLowerCase()],e.condOP,e.value);throw new D(e,"\u672A\u652F\u6301\u7684\u903B\u8F91\u7C7B\u578B".concat(e.logicType))}function lr(t){return t.logicType==="GROUP"}function dr(t){return t.logicType==="SINGLE"}function Xt(t,e){if(lr(e)){const s=e.panelItemLogics;if(!s||s.length===0)throw new m(e,"\u53D1\u73B0\u7A7A\u903B\u8F91\u7EC4\uFF0C\u903B\u8F91\u65E0\u6CD5\u6B63\u5E38\u6267\u884C\uFF01");let a=!0;return e.groupOP==="AND"?a=s.find(r=>!Xt(t,r))===void 0:e.groupOP==="OR"&&(a=e.panelItemLogics.find(r=>Xt(t,r))!==void 0),e.notMode?!a:a}if(dr(e))return $(t[e.dstModelField.toLowerCase()],e.condOp,e.value);throw new D(e,"\u672A\u652F\u6301\u7684\u903B\u8F91\u7C7B\u578B".concat(e.logicType))}var hr=d("LayoutPanelUtil",class{constructor(){this.cache=new Map}register(t,e){this.cache.set(t,e)}get(t){return this.cache.get(t)}fill(t){const{viewLayoutPanel:e}=t;if(!e||e.useDefaultLayout===!0){const s=this.calcLayoutTag(t);if(this.cache.has(s)){const a=v(this.cache.get(s));t.viewLayoutPanel=a,t.appCounterRefs&&(a.appCounterRefs=t.appCounterRefs,delete t.appCounterRefs),t.appViewEngines&&(a.appViewEngines=t.appViewEngines,delete t.appViewEngines),t.appViewLogics&&(a.appViewLogics=t.appViewLogics,delete t.appViewLogics),t.appViewRefs&&(a.appViewRefs=t.appViewRefs,delete t.appViewRefs),t.controls&&(a.controls=t.controls,delete t.controls)}}return t}calcLayoutTag(t){const{viewType:e,viewStyle:s}=t;switch(e){case"APPINDEXVIEW":return this.calcIndexViewLayoutTag(t);default:return"".concat(e,"_").concat(s)}}calcIndexViewLayoutTag(t){const{viewType:e,viewStyle:s,blankMode:a,mainMenuAlign:i}=t;let r="";return a?r="BLANK_MODE":i&&(r=i.toUpperCase()),r!==""?"".concat(e,"_").concat(s,"_").concat(r):"".concat(e,"_").concat(s)}});function Qs(t){const e={};return t.param09&&(e.srfprocessinstanceid=t.param09),e}function pr(t,e){var s;const{type:a,sequenceflowview:i,sequenceflowmobview:r}=e,n=((s=t.viewLayoutPanel)==null?void 0:s.appViewRefs)||t.appViewRefs,o=a?"WFUTILACTION@".concat(a.toUpperCase()):"WFACTION@".concat(ibiz.env.isMob?r:i),u=n?.find(c=>c.name.indexOf(o)!==-1);return u?.refAppViewId}var fr=d("ControlType",(t=>(t.APP_MENU="APPMENU",t.GRID="GRID",t.FORM="FORM",t.SEARCHFORM="SEARCHFORM",t.TOOLBAR="TOOLBAR",t.DRBAR="DRBAR",t.VIEWPANEL="VIEWPANEL",t.PICKUP_VIEW_PANEL="PICKUPVIEWPANEL",t.DATAVIEW="DATAVIEW",t.TREEGRID="TREEGRID",t.WF_EXPBAR="WFEXPBAR",t.TREEVIEW="TREEVIEW",t.TREE_EXP_BAR="TREEEXPBAR",t.TAB_VIEWPANEL="TABVIEWPANEL",t.DRTAB="DRTAB",t.CHART="CHART",t.REPORT_PANEL="REPORTPANEL",t.LIST="LIST",t.MOB_MDCTRL="MOBMDCTRL",t.MULTI_EDIT_VIEWPANEL="MULTIEDITVIEWPANEL",t.WIZARD_PANEL="WIZARDPANEL",t.UPDATE_PANEL="UPDATEPANEL",t.SEARCHBAR="SEARCHBAR",t.DASHBOARD="DASHBOARD",t.CALENDAR="CALENDAR",t.PANEL="PANEL",t.VIEW_LAYOUT_PANEL="VIEWLAYOUTPANEL",t.MAP="MAP",t.GANTT="GANTT",t.TREE_GRIDEX="TREEGRIDEX",t.KANBAN="KANBAN",t.CALENDAR_EXPBAR="CALENDAREXPBAR",t.CHART_EXPBAR="CHARTEXPBAR",t.DATA_VIEW_EXPBAR="DATAVIEWEXPBAR",t.GANTT_EXPBAR="GANTTEXPBAR",t.GRID_EXPBAR="GRIDEXPBAR",t.LIST_EXPBAR="LISTEXPBAR",t.MAP_EXPBAR="MAPEXPBAR",t.STATE_WIZARD_PANEL="STATEWIZARDPANEL",t.TAB_EXP_PANEL="TABEXPPANEL",t.CUSTOM="CUSTOM",t.CAPTIONBAR="CAPTIONBAR",t))(fr||{})),mr=d("ViewType",(t=>(t.APP_INDEX_VIEW="APPINDEXVIEW",t.DE_GRID_VIEW="DEGRIDVIEW",t.DE_EDIT_VIEW="DEEDITVIEW",t.APP_DATA_UPLOAD_VIEW="APPDATAUPLOADVIEW",t.APP_ERROR_VIEW="APPERRORVIEW",t.APP_FILE_UPLOAD_VIEW="APPFILEUPLOADVIEW",t.APP_FUN_PICKUP_VIEW="APPFUNCPICKUPVIEW",t.APP_LOGIN_VIEW="APPLOGINVIEW",t.APP_LOGOUT_VIEW="APPLOGOUTVIEW",t.APP_PANEL_VIEW="APPPANELVIEW",t.APP_PIC_UPLOAD_VIEW="APPPICUPLOADVIEW",t.APP_PORTAL_VIEW="APPPORTALVIEW",t.APP_REDIRECT_VIEW="APPREDIRECTVIEW",t.APP_START_VIEW="APPSTARTVIEW",t.APP_WELCOME_VIEW="APPWELCOMEVIEW",t.APP_WF_ADD_STEP_AFTER_VIEW="APPWFADDSTEPAFTERVIEW",t.APP_WF_ADD_STEP_BEFORE_VIEW="APPWFADDSTEPBEFOREVIEW",t.APP_WF_REDIRECT_VIEW="APPWFREDIRECTVIEW",t.APP_WF_SENDBAC_VIEW="APPWFSENDBACKVIEW",t.APP_WF_STEP_ACTOR_VIEW="APPWFSTEPACTORVIEW",t.APP_WF_STEP_DATA_VIEW="APPWFSTEPDATAVIEW",t.APP_WF_STEP_TRACE_VIEW="APPWFSTEPTRACEVIEW",t.APP_WF_SUPPLY_INFO_VIEW="APPWFSUPPLYINFOVIEW",t.APP_WF_TAKE_ADVICE_VIEW="APPWFTAKEADVICEVIEW",t.DE_CALENDAR_EXP_VIEW="DECALENDAREXPVIEW",t.DE_CALENDAR_VIEW="DECALENDARVIEW",t.DE_CHART_EXP_VIEW="DECHARTEXPVIEW",t.DE_CHART_VIEW="DECHARTVIEW",t.DE_CHART_VIEW9="DECHARTVIEW9",t.DE_CUSTOM_VIEW="DECUSTOMVIEW",t.DE_DATA_VIEW="DEDATAVIEW",t.DE_DATA_VIEW9="DEDATAVIEW9",t.DE_DATAVIEW_EXP_VIEW="DEDATAVIEWEXPVIEW",t.DE_EDIT_VIEW2="DEEDITVIEW2",t.DE_EDIT_VIEW3="DEEDITVIEW3",t.DE_EDIT_VIEW4="DEEDITVIEW4",t.DE_EDIT_VIEW9="DEEDITVIEW9",t.DE_FORM_PICKUP_DATA_VIEW="DEFORMPICKUPDATAVIEW",t.DE_GANTT_EXP_VIEW="DEGANTTEXPVIEW",t.DE_GANTT_VIEW="DEGANTTVIEW",t.DE_GANTT_VIEW9="DEGANTTVIEW9",t.DE_GRID_EXP_VIEW="DEGRIDEXPVIEW",t.DE_GRID_VIEW2="DEGRIDVIEW2",t.DE_GRID_VIEW4="DEGRIDVIEW4",t.DE_GRID_VIEW8="DEGRIDVIEW8",t.DE_GRID_VIEW9="DEGRIDVIEW9",t.DE_HTML_VIEW="DEHTMLVIEW",t.DE_INDEX_PICKUP_DATA_VIEW="DEINDEXPICKUPDATAVIEW",t.DE_INDEX_VIEW="DEINDEXVIEW",t.DE_KANBAN_VIEW="DEKANBANVIEW",t.DE_KANBAN_VIEW9="DEKANBANVIEW9",t.DE_LIST_EXP_VIEW="DELISTEXPVIEW",t.DE_LIST_VIEW="DELISTVIEW",t.DE_LIST_VIEW9="DELISTVIEW9",t.DE_MAP_EXP_VIEW="DEMAPEXPVIEW",t.DE_MAP_VIEW="DEMAPVIEW",t.DE_MAP_VIEW9="DEMAPVIEW9",t.DE_MD_CUSTOM_VIEW="DEMDCUSTOMVIEW",t.DE_MEDITVIEW9="DEMEDITVIEW9",t.DE_MOB_CALENDAR_EXP_VIEW="DEMOBCALENDAREXPVIEW",t.DE_MOB_CALENDAR_VIEW="DEMOBCALENDARVIEW",t.DE_MOB_CALENDAR_VIEW9="DEMOBCALENDARVIEW9",t.DE_MOB_CHART_EXP_VIEW="DEMOBCHARTEXPVIEW",t.DE_MO_BCHART_VIEW="DEMOBCHARTVIEW",t.D_EMOB_CHART_VIEW9="DEMOBCHARTVIEW9",t.DE_MOB_CUSTOM_VIEW="DEMOBCUSTOMVIEW",t.DE_MOB_DATA_VIEW="DEMOBDATAVIEW",t.DE_MOB_DATA_VIEW_EXP_VIEW="DEMOBDATAVIEWEXPVIEW",t.DE_MOB_EDIT_VIEW="DEMOBEDITVIEW",t.DE_MOB_EDIT_VIEW3="DEMOBEDITVIEW3",t.DE_MOB_EDITVIEW9="DEMOBEDITVIEW9",t.DE_MOB_FORM_PICKUP_MDVIEW="DEMOBFORMPICKUPMDVIEW",t.DE_MOB_GANTT_EXP_VIEW="DEMOBGANTTEXPVIEW",t.DE_MOB_GANTT_VIEW="DEMOBGANTTVIEW",t.DE_MOB_GANTT_VIEW9="DEMOBGANTTVIEW9",t.DE_MOB_HTML_VIEW="DEMOBHTMLVIEW",t.DE_MOB_INDEX_PICKUP_MDVIEW="DEMOBINDEXPICKUPMDVIEW",t.DE_MOB_LIST_EXP_VIEW="DEMOBLISTEXPVIEW",t.DE_MOB_LIST_VIEW="DEMOBLISTVIEW",t.DE_MOB_MAP_VIEW="DEMOBMAPVIEW",t.DE_MOB_MAP_VIEW9="DEMOBMAPVIEW9",t.DE_MOB_MDVIEW="DEMOBMDVIEW",t.DE_MOB_MDVIEW9="DEMOBMDVIEW9",t.DE_MOB_MEDIT_VIEW9="DEMOBMEDITVIEW9",t.DE_MOB_MPICKUP_VIEW="DEMOBMPICKUPVIEW",t.DE_MOB_OPT_VIEW="DEMOBOPTVIEW",t.DE_MOB_PANEL_VIEW="DEMOBPANELVIEW",t.DE_MOB_PANEL_VIEW9="DEMOBPANELVIEW9",t.DE_MOB_PICKUP_LIST_VIEW="DEMOBPICKUPLISTVIEW",t.DE_MOB_PICKUP_MDVIEW="DEMOBPICKUPMDVIEW",t.DE_MOB_PICKUP_TREE_VIEW="DEMOBPICKUPTREEVIEW",t.DE_MOB_PICKUP_VIEW="DEMOBPICKUPVIEW",t.DE_MOB_PORTAL_VIEW="DEMOBPORTALVIEW",t.DE_MOB_PORTAL_VIEW9="DEMOBPORTALVIEW9",t.DE_MOB_REDIRECT_VIEW="DEMOBREDIRECTVIEW",t.DE_MOB_REPORT_VIEW="DEMOBREPORTVIEW",t.DE_MOB_TAB_EXP_VIEW="DEMOBTABEXPVIEW",t.DE_MOB_TAB_EXP_VIEW9="DEMOBTABEXPVIEW9",t.DE_MOB_TAB_SEARCH_VIEW="DEMOBTABSEARCHVIEW",t.DE_MOB_TAB_SEARCH_VIEW9="DEMOBTABSEARCHVIEW9",t.DE_MOB_TREE_EXP_VIEW="DEMOBTREEEXPVIEW",t.DEMOBTREEEXPVIEW9="DEMOBTREEEXPVIEW9",t.DE_MOB_TREE_VIEW="DEMOBTREEVIEW",t.DE_MOB_WFACTION_VIEW="DEMOBWFACTIONVIEW",t.DE_MOB_WF_DATA_REDIRECT_VIEW="DEMOBWFDATAREDIRECTVIEW",t.DE_MOB_WF_DYNAACTIO_NVIEW="DEMOBWFDYNAACTIONVIEW",t.DE_MOB_WFDYNA_EDIT_VIEW="DEMOBWFDYNAEDITVIEW",t.DE_MOB_WF_DYNA_EDIT_VIEW3="DEMOBWFDYNAEDITVIEW3",t.DE_MOB_WF_DYNA_EXP_MDVIEW="DEMOBWFDYNAEXPMDVIEW",t.DE_MO_BWF_DYNA_START_VIEW="DEMOBWFDYNASTARTVIEW",t.DE_MOB_WF_EDIT_VIEW="DEMOBWFEDITVIEW",t.DE_MOB_WF_EDIT_VIEW3="DEMOBWFEDITVIEW3",t.DE_MOB_WF_MDVIEW="DEMOBWFMDVIEW",t.DE_MOB_WF_PROXY_RESULT_VIEW="DEMOBWFPROXYRESULTVIEW",t.DE_MOB_WF_PROXY_START_VIEW="DEMOBWFPROXYSTARTVIEW",t.DE_MOB_WF_START_VIEW="DEMOBWFSTARTVIEW",t.DE_MOB_WIZARD_VIEW="DEMOBWIZARDVIEW",t.DE_MPICKUP_VIEW="DEMPICKUPVIEW",t.DE_MPICKUP_VIEW2="DEMPICKUPVIEW2",t.DE_OPT_VIEW="DEOPTVIEW",t.DE_PANEL_VIEW="DEPANELVIEW",t.DE_PANEL_VIEW9="DEPANELVIEW9",t.DE_PICKUP_DATA_VIEW="DEPICKUPDATAVIEW",t.DE_PICKUP_GRID_VIEW="DEPICKUPGRIDVIEW",t.DE_PICKUP_TREE_VIEW="DEPICKUPTREEVIEW",t.DE_PICKUP_VIEW="DEPICKUPVIEW",t.DE_PICKUP_VIEW2="DEPICKUPVIEW2",t.DE_PICK_UP_VIEW3="DEPICKUPVIEW3",t.DE_PORTAL_VIEW="DEPORTALVIEW",t.DE_PORTAL_VIEW9="DEPORTALVIEW9",t.DE_REDIRECT_VIEW="DEREDIRECTVIEW",t.DE_REPORT_VIEW="DEREPORTVIEW",t.DE_TAB_EXP_VIEW="DETABEXPVIEW",t.DE_TAB_EXP_VIEW9="DETABEXPVIEW9",t.DE_TAB_SEARCH_VIEW="DETABSEARCHVIEW",t.DE_TAB_SEARCH_VIEW9="DETABSEARCHVIEW9",t.DE_TREE_EXP_VIEW="DETREEEXPVIEW",t.DE_TREE_EXP_VIEW2="DETREEEXPVIEW2",t.DE_TREE_EXP_VIEW3="DETREEEXPVIEW3",t.DE_TREE_GRID_EXVIEW="DETREEGRIDEXVIEW",t.DE_TREE_GRID_EXVIEW9="DETREEGRIDEXVIEW9",t.DE_TREE_GRID_VIEW="DETREEGRIDVIEW",t.DE_TREE_GRID_VIEW9="DETREEGRIDVIEW9",t.DE_TREE_VIEW="DETREEVIEW",t.DE_TREE_VIEW9="DETREEVIEW9",t.DE_WF_ACTION_VIEW="DEWFACTIONVIEW",t.DE_WF_DATA_REDIRECT_VIEW="DEWFDATAREDIRECTVIEW",t.DE_WF_DYNA_ACTION_VIEW="DEWFDYNAACTIONVIEW",t.DE_WF_DYNA_EDIT_VIEW="DEWFDYNAEDITVIEW",t.DE_WF_DYNA_EDIT_VIEW3="DEWFDYNAEDITVIEW3",t.DE_WF_DYNA_EXP_GRID_VIEW="DEWFDYNAEXPGRIDVIEW",t.DE_WF_DYNA_START_VIEW="DEWFDYNASTARTVIEW",t.DE_WF_EDIT_PROXY_DATA_VIEW="DEWFEDITPROXYDATAVIEW",t.DE_WF_EDIT_VIEW="DEWFEDITVIEW",t.DE_WF_EDIT_VIEW2="DEWFEDITVIEW2",t.DE_WF_EDIT_VIEW3="DEWFEDITVIEW3",t.DE_WF_EDIT_VIEW9="DEWFEDITVIEW9",t.DE_WF_EXP_VIEW="DEWFEXPVIEW",t.DE_WF_GRID_VIEW="DEWFGRIDVIEW",t.DE_WF_PROXY_DATA_VIEW="DEWFPROXYDATAVIEW",t.DE_WF_PROXY_RESULT_VIEW="DEWFPROXYRESULTVIEW",t.DE_WF_PROXY_START_VIEW="DEWFPROXYSTARTVIEW",t.DE_WF_START_VIEW="DEWFSTARTVIEW",t.DE_WIZARD_VIEW="DEWIZARDVIEW",t))(mr||{})),Er=d("ViewMode",(t=>(t.ROUTE="ROUTE",t.MODAL="MODAL",t.DRAWER="DRAWER",t.EMBED="EMBED",t.POPOVER="POPOVER",t))(Er||{})),gr=d("SysUIActionTag",(t=>(t.NEW="New",t.EDIT="Edit",t.REFRESH="Refresh",t.EXIT="Exit",t.SAVE_AND_EXIT="SaveAndExit",t.SAVE_AND_NEW="SaveAndNew",t.SAVE="Save",t.SAVE_ROW="SaveRow",t.REMOVE="Remove",t.REMOVE_AND_EXIT="RemoveAndExit",t.NEW_ROW="NewRow",t.TOGGLE_FILTER="ToggleFilter",t.IMPORT="Import",t.EXPORT_EXCEL="ExportExcel",t.SAVE_AND_START="SaveAndStart",t.VIEW_WF_STEP="ViewWFStep",t.NO="No",t.YES="Yes",t.CANCEL="Cancel",t.OK="Ok",t.SEARCH="Search",t.FINISH="Finish",t.NEXT_STEP="NextStep",t.PREV_STEP="PrevStep",t.ADD_SELECTION="AddSelection",t.REMOVE_SELECTION="RemoveSelection",t.REMOVE_ALL="RemoveAll",t.ADD_ALL="AddAll",t.LOGOUT="Logout",t.LOGIN="Login",t.CANCEL_CHANGES="CancelChanges",t.COPY="Copy",t.VIEW="View",t.TOGGLE_ROW_EDIT="ToggleRowEdit",t.REFRESH_ALL="RefreshAll",t.REFRESH_PARENT="RefreshParent",t.LOAD_MORE="LoadMore",t))(gr||{})),Cr=d("ViewCallTag",(t=>(t.LOAD="Load",t.GET_DATA="GetData",t.GET_ALL_DATA="GetAllData",t.VALIDATE="Validate",t.TOGGLE_COLLAPSE="ToggleCollapse",t))(Cr||{})),Dr=d("ValueOP",(t=>(t.EQ="EQ",t.NOT_EQ="NOTEQ",t.GT="GT",t.GT_AND_EQ="GTANDEQ",t.LT="LT",t.LT_AND_EQ="LTANDEQ",t.IS_NULL="ISNULL",t.IS_NOT_NULL="ISNOTNULL",t.IN="IN",t.NOT_IN="NOTIN",t.LIKE="LIKE",t.LIFT_LIKE="LIFTLIKE",t.RIGHT_LIKE="RIGHT_LIKE",t.CHILD_OF="CHILDOF",t.USER_LIKE="USERLIKE",t.BIT_AND="BITAND",t.EXISTS="EXISTS",t.NOT_EXISTS="NOTEXISTS",t))(Dr||{})),Oe=d("StudioViewEvents",class{});Oe.onViewMounted="onMounted",Oe.onViewDestroyed="onDestroyed";var Ht=d("StudioPanelEvents",class{});Ht.onClick="onClick",Ht.onChange="onChange",Ht.onEnter="onEnter",Ht.onLeave="onLeave";var W=d("StudioControlEvents",class{});W.onBeforeLoad="onBeforeLoad",W.onLoadSuccess="onLoadSuccess",W.onLoadError="onLoadError",W.onBeforeLoadDraft="onBeforeLoadDraft",W.onLoadDraftSuccess="onLoadDraftSuccess",W.onLoadDraftError="onLoadDraftError",W.onBeforeSave="onBeforeSave",W.onSaveSuccess="onSaveSuccess",W.onSaveError="onSaveError",W.onBeforeRemove="onBeforeRemove",W.onRemoveSuccess="onRemoveSuccess",W.onRemoveError="onRemoveError",W.CLICK="onClick";var wr=d("Modal",class{constructor(t){this.mode="EMBED",this.viewUsage=4,this.ignoreDismissCheck=!1,this.hooks={shouldDismiss:new fe,beforeDismiss:new fe},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 _e(t,e){return t.filter(s=>{const{checkMode:a}=s,i=s.deformItemName||s.degridEditItemName;return a!==2&&i===e})}var vr=d("TextUtil",class{constructor(){this.inputElement=null}format(t,e){return t}copy(t){return this.inputElement||(this.inputElement=document.createElement("input"),this.inputElement.style.position="absolute",this.inputElement.style.left="-9999px",document.body.appendChild(this.inputElement)),this.inputElement.value=t,this.inputElement.select(),document.execCommand("copy")}}),Ar=d("RawValueUtil",class{isNumber(t){return/^-?\d+(\.\d+)?$/.test(t)}format(t){let e=t;return t!==void 0&&(t==="true"||t==="false"?e=t==="true":this.isNumber(t)&&(e=parseFloat(t))),e}});async function nt(t,e=!0){const s=await Promise.allSettled(t),a=[],i=[];if(s.forEach(r=>{r.status==="fulfilled"?a.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 a}var Ir=class{constructor(){this.psModelGroupCondBase=null}parse(t){if(t instanceof Array){const e=this.createPSModelGroupCond();e.parse(t),this.psModelGroupCondBase=e}}testSingleCond(t,e,s){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 a=-1;if(e==s?a=0:e>s&&(a=1),t==="EQ"||t==="ABSEQ")return a===0;if(t==="GT")return a>0;if(t==="GTANDEQ")return a>=0;if(t==="LT")return a<0;if(t==="LTANDEQ")return a<=0;if(t==="NOTEQ")return a!==0}if(t==="LIKE")return e!=null&&s!=null?e.toString().toUpperCase().indexOf(s.toString().toUpperCase())!==-1:!1;if(t==="LEFTLIKE")return e!=null&&s!=null?e.toString().toUpperCase().indexOf(s.toString().toUpperCase())===0:!1}catch(a){ibiz.log.error(a)}return!1}getPSModelGroupCondBase(){return this.psModelGroupCondBase}},$s=class{constructor(){this.strCondOp=null}getCondOp(){return this.strCondOp}setCondOp(t){this.strCondOp=t}},Me=class extends $s{parse(t){const e=t.length;let s=!0,a=!1,i=!1;for(let r=0;r<e;r++){if(s){const n=t[r];this.setCondOp(n),s=!1,a=!0;continue}if(a){const n=t[r];this.setParam(n),a=!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}},Js=class Za extends $s{constructor(){super(...arguments),this.childCondList=[],this.bNotMode=!1}parse(e){const s=e.length;let a=!0,i=!0,r=!1;for(let n=0;n<s;n++){if(a&&i&&e[n]==="!"){this.setNotMode(!0),a=!1;continue}if(i){const o=e[n];this.setCondOp(o),i=!1,a=!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 Za;l.parse(u),this.childCondList.push(l)}else{const l=new Me;l.parse(u),this.childCondList.push(l)}}});else throw new f("\u503C\u5FC5\u987B\u4E3A\u6570\u7EC4")}}}setNotMode(e){this.bNotMode=e}isNotMode(){return this.bNotMode}getChildPSModelCondBases(){return this.childCondList}},yr=class extends Js{},Fr=class extends Me{},xe=class as extends Ir{test(e,s){return this.testCond(this.getPSModelGroupCondBase(),e,s)}testCond(e,s,a){if(e instanceof Js){const i=e.getChildPSModelCondBases();if(i==null||T(i))return!e.isNotMode();const r=e.getCondOp()==="AND";let n=r;for(let o=0;o<i.length;o++){const u=i[o];if(this.testCond(u,s,a)){if(!r){n=!0;break}}else if(r){n=!1;break}}return e.isNotMode()?!n:n}if(e instanceof Me){T(e.getParam())&&ibiz.log.warn("\u6CA1\u6709\u6307\u5B9A\u5C5E\u6027\u540D\u79F0",e);const i=s[e.getParam().toLowerCase()];let r=null;const n=e.getValueType(),o=e.getValue();return n!=null&&!T(n)?(T(o)&&ibiz.log.warn("\u6CA1\u6709\u6307\u5B9A\u4E0A\u4E0B\u6587\u53C2\u6570\u540D\u79F0"),as.PARAMTYPE_WEBCONTEXT===n?r=a.data[o.toLowerCase()]:as.PARAMTYPE_DATACONTEXT===n&&(r=a.getValue(o.toLowerCase()))):r=e.getValue(),this.testSingleCond(e.getCondOp(),i,r)}return ibiz.log.warn("\u65E0\u6CD5\u8BC6\u522B\u7684\u6761\u4EF6\u5BF9\u8C61",e),!1}createPSModelSingleCond(){return new Fr}createPSModelGroupCond(){return new yr}};xe.PARAMTYPE_DATACONTEXT="DATACONTEXT",xe.PARAMTYPE_WEBCONTEXT="WEBCONTEXT";var Pr=d("PSDEDQCondEngine",xe);async function J(t,e){var s;const i=(s=ibiz.hub.getApp(e).model.appPFPluginRefs)==null?void 0:s.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 Zs=d("APP_COUNTER_PROVIDER_PREFIX","APPCOUNTER");function ta(t,e){ibiz.register.register("".concat(Zs,"_").concat(t),e)}function Ve(t){return ibiz.register.get("".concat(Zs,"_").concat(t))}async function ea(t){let e;const{codeName:s,counterType:a,sysPFPluginId:i,appId:r}=t;if(i){const n=await J(i,r);if(n&&(e=Ve(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(a==="CUSTOM"){if(e=Ve(s),e)return e;throw new f("\u627E\u4E0D\u5230\u81EA\u5B9A\u4E49\u7CFB\u7EDF\u8BA1\u6570\u5668".concat(s,"\u5BF9\u5E94\u7684\u9002\u914D\u5668"))}if(e=Ve(a),e)return e;throw new f("\u627E\u4E0D\u7CFB\u7EDF\u8BA1\u6570\u5668\u7C7B\u578B".concat(a,"\u5BF9\u5E94\u7684\u9002\u914D\u5668"))}var sa=d("CONTROL_PROVIDER_PREFIX","CONTROL");function br(t,e){ibiz.register.register("".concat(sa,"_").concat(t),e)}function ke(t){return ibiz.register.get("".concat(sa,"_").concat(t))}async function dt(t){let e;const{controlType:s,controlStyle:a,sysPFPluginId:i,appId:r}=t;if(i){const n=await J(i,r);if(n&&(e=ke(n)),!e)ibiz.log.error("\u627E\u4E0D\u5230\u90E8\u4EF6\u63D2\u4EF6".concat(n,"\u5BF9\u5E94\u7684\u9002\u914D\u5668"));else return e}if(a&&a!=="DEFAULT"){const n="".concat(s,"_").concat(a);if(e=ke(n),!e)ibiz.log.error("\u627E\u4E0D\u5230\u90E8\u4EF6\u7C7B\u578B\uFF1A[".concat(s,"]\u7684\u90E8\u4EF6\u6837\u5F0F\uFF1A[").concat(a,"]\u5BF9\u5E94\u7684\u9002\u914D\u5668"),t);else return e}if(e=ke(s),e)return e;switch(s){case"DATAINFOBAR":return;default:ibiz.log.error("\u627E\u4E0D\u5230\u90E8\u4EF6\u7C7B\u578B".concat(s,"\u5BF9\u5E94\u7684\u9002\u914D\u5668"))}}var aa=d("EDITOR_PROVIDER_PREFIX","EDITOR");function Sr(t,e){ibiz.register.register("".concat(aa,"_").concat(t),e)}function Yt(t){return ibiz.register.get("".concat(aa,"_").concat(t))}async function bt(t){let e;const{editorType:s,editorStyle:a,predefinedType:i,sysPFPluginId:r,appId:n}=t;if(r){const o=await J(r,n);if(o&&(e=Yt(o)),!e)ibiz.log.error("\u627E\u4E0D\u5230\u7F16\u8F91\u5668\u63D2\u4EF6".concat(o,"\u5BF9\u5E94\u7684\u9002\u914D\u5668"));else return e}if(a&&a!=="DEFAULT"){const o="".concat(s,"_").concat(a);if(e=Yt(o),!e)ibiz.log.error("\u627E\u4E0D\u5230\u7F16\u8F91\u5668\u7C7B\u578B\uFF1A[".concat(s,"]\u7684\u7F16\u8F91\u5668\u6837\u5F0F\uFF1A[").concat(a,"]\u5BF9\u5E94\u7684\u9002\u914D\u5668"),t);else return e}if(i){let o="".concat(i,"_").concat(s);if(a&&a!=="DEFAULT"&&(o+="_".concat(a)),e=Yt(o),!e)ibiz.log.error("\u627E\u4E0D\u5230\u7F16\u8F91\u5668\u7C7B\u578B\uFF1A[".concat(s,"]\u7684\u9884\u7F6E\u7C7B\u578B\uFF1A[").concat(i,"]\u5BF9\u5E94\u7684\u9002\u914D\u5668"),t);else return e}if(e=Yt(s),!e)ibiz.log.error("\u627E\u4E0D\u5230\u7F16\u8F91\u5668\u7C7B\u578B".concat(s,"\u5BF9\u5E94\u7684\u9002\u914D\u5668"));else return e}var ia=d("FORMDETAIL_PROVIDER_PREFIX","FORMDETAIL");function Nr(t,e){ibiz.register.register("".concat(ia,"_").concat(t),e)}function ra(t){return ibiz.register.get("".concat(ia,"_").concat(t))}async function We(t){let e;const{detailType:s,sysPFPluginId:a,appId:i}=t;if(a){const r=await J(a,i);if(r&&(e=ra(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=ra(s),!e)ibiz.log.error("\u627E\u4E0D\u5230\u8868\u5355\u6210\u5458\u7C7B\u578B".concat(s,"\u5BF9\u5E94\u7684\u9002\u914D\u5668"));else return e}var na=d("GRIDCOLUMN_PROVIDER_PREFIX","GRIDCOLUMN");function Rr(t,e){ibiz.register.register("".concat(na,"_").concat(t),e)}function oa(t){return ibiz.register.get("".concat(na,"_").concat(t))}async function Ue(t){let e;const{columnType:s,enableRowEdit:a,sysPFPluginId:i,appId:r}=t;if(i){const o=await J(i,r);if(o&&(e=oa(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=a?"".concat(s,"_EDIT"):s;if(e=oa(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 ua=d("PANELITEM_PROVIDER_PREFIX","PANELITEM");function Lr(t,e){ibiz.register.register("".concat(ua,"_").concat(t.toUpperCase()),e)}function St(t){return ibiz.register.get("".concat(ua,"_").concat(t.toUpperCase()))}async function ca(t){var e;let s;const{itemType:a,sysPFPluginId:i,appId:r}=t;if(i){const n=await J(i,r);if(n&&(s=St(n)),!s)ibiz.log.error("\u627E\u4E0D\u5230\u9762\u677F\u6210\u5458\u63D2\u4EF6".concat(n,"\u5BF9\u5E94\u7684\u9002\u914D\u5668"));else return s}if(a==="CONTAINER"){const n=t.predefinedType||"DEFAULT",o="CONTAINER_".concat(n);if(s=St(o),!s)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 s}if(a==="RAWITEM"){const n=((e=t.rawItem)==null?void 0:e.predefinedType)||"DEFAULT",o="RAWITEM_".concat(n);if(s=St(o),!s)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 s}if(a==="FIELD"){const{editor:n}=t;if(n&&n.predefinedType){const o="FIELD_".concat(n.predefinedType.toUpperCase());if(s=St(o),s)return s}}if(s=St(a),!s)ibiz.log.error("\u627E\u4E0D\u5230\u9762\u677F\u6210\u5458\u7C7B\u578B".concat(a,"\u5BF9\u5E94\u7684\u9002\u914D\u5668"));else return s}var la=d("PORTLET_PROVIDER_PREFIX","PORTLET");function Tr(t,e){ibiz.register.register("".concat(la,"_").concat(t),e)}function da(t){return ibiz.register.get("".concat(la,"_").concat(t))}async function ha(t){let e;const{portletType:s,sysPFPluginId:a,appId:i}=t;if(a){const r=await J(a,i);if(r&&(e=da(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=da(s),!e)ibiz.log.error("\u627E\u4E0D\u5230\u95E8\u6237\u90E8\u4EF6\u6210\u5458\u7C7B\u578B".concat(s,"\u5BF9\u5E94\u7684\u9002\u914D\u5668"));else return e}var pa=d("UIACTION_PROVIDER_PREFIX","UIACTION");function Nt(t,e){ibiz.register.register("".concat(pa,"_").concat(t),e)}function fa(t){return ibiz.register.get("".concat(pa,"_").concat(t))}async function ma(t){let e;const{uiactionMode:s,sysPFPluginId:a,appId:i}=t;if(a){const r=await J(a,i);if(r&&(e=fa(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=fa(s),e)return e;throw new f("\u627E\u4E0D\u754C\u9762\u884C\u4E3A\u6A21\u5F0F".concat(s,"\u5BF9\u5E94\u7684\u9002\u914D\u5668"))}var Ea=d("UILOGINNODE_PROVIDER_PREFIX","UI_LOGIN_NODE");function Br(t,e){ibiz.register.register("".concat(Ea,"_").concat(t),e)}async function ga(t){let e;const{sysPFPluginId:s,appId:a}=t,i=await J(s,a);if(i){if(e=ibiz.register.get("".concat(Ea,"_").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 Ca=d("VIEW_PROVIDER_PREFIX","VIEW");function Or(t,e){ibiz.register.register("".concat(Ca,"_").concat(t),e)}function qt(t){return ibiz.register.get("".concat(Ca,"_").concat(t))}async function _r(t){let e;const{viewType:s,viewStyle:a,sysPFPluginId:i,appId:r}=t;if(i){const n=await J(i,r);if(n&&(e=qt(n)),!e)ibiz.log.error("\u627E\u4E0D\u5230\u89C6\u56FE\u63D2\u4EF6".concat(n,"\u5BF9\u5E94\u7684\u9002\u914D\u5668"));else return e}if(a&&a!=="DEFAULT"){const n="".concat(s,"_").concat(a);if(e=qt(n),!e)ibiz.log.error("\u627E\u4E0D\u5230\u89C6\u56FE\u7C7B\u578B\uFF1A[".concat(s,"]\u7684\u89C6\u56FE\u6837\u5F0F\uFF1A[").concat(a,"]\u5BF9\u5E94\u7684\u9002\u914D\u5668"),t);else return e}return e||(e=qt(s)),e||(e=qt("DEFAULT")),e}var Da=d("ASYNC_ACTION_PROVIDER_PREFIX","ASYNC_ACTION");function Mr(t,e){ibiz.register.register("".concat(Da,"_").concat(t),e)}function xr(t){return ibiz.register.get("".concat(Da,"_").concat(t))}function Vr(t){const e=xr(t);if(e)return e;throw new f("\u627E\u4E0D\u5F02\u6B65\u64CD\u4F5C\u7C7B\u578B".concat(t,"\u5BF9\u5E94\u7684\u9002\u914D\u5668"))}var kr=d("AppCounter",class{constructor(t){this.model=t,this.destroyed=!1,this.context=Tt.create(),this.params={},this.evt=new Et,this.data={}}get isDestroyed(){return this.destroyed}async init(t,e){this.setParams(t,e),this.interval(),await this.load()}setParams(t,e){t&&(this.context=v(t)),e&&(this.params=v(e))}interval(){this.destroyInterval(),this.intervalTimer=setInterval(()=>{this.evt.getSize("change")>0&&this.load()},this.model.timer||6e3)}destroyInterval(){this.intervalTimer&&(clearInterval(this.intervalTimer),this.intervalTimer=null)}async load(){throw new f("\u672A\u5B9E\u73B0\u8BA1\u6570\u5668\u52A0\u8F7D\u65B9\u6CD5")}refresh(t,e){return this.setParams(t,e),this.load()}onChange(t,e=!0){this.evt.on("change",t),e&&x(this.data)&&t(this.data)}offChange(t){this.evt.off("change",t)}getCounter(t){return this.data[t.toLowerCase()]||0}destroy(){this.destroyed=!0,this.context.destroy(),this.destroyInterval(),this.evt.reset()}}),Wr=d("AppDECounter",class extends kr{async init(t,e){this.appDataEntityId=this.model.appDataEntityId;const s=this.model.getAppDEActionId;if(!s)throw new m(this.model,"\u672A\u627E\u5230\u83B7\u53D6\u8BA1\u6570\u5668\u884C\u4E3A!");this.action=s,await super.init(t,e)}async load(){const e=await ibiz.hub.getApp(this.context.srfappid).deService.exec(this.appDataEntityId,this.action,this.context,this.params);return e.ok&&(this.data=e.data,this.evt.emit("change",this.data)),this.data}}),Ur=d("AppDECounterProvider",class{createCounter(t){return new Wr(t)}});function wa(){ta("DEDR",()=>new Ur)}var zr=d("DEDQCondUtil",class{static getCond(t){if(this.map.has(t))return this.map.get(t);const e=t.dedqgroupConditions;if(e){const s=new Pr;return s.parse(["OR",this.calcCond(e)]),this.map.set(t,s),s}return null}static calcCond(t){const e=[];return t.forEach(s=>{const a=[];if(s.condType==="GROUP"){const i=s;i.notMode&&a.push("!"),a.push(s.condOp);const r=i.dedqconditions;if(r){const n=this.calcCond(r);a.push(n)}}else if(s.condType==="SINGLE"){const i=s;a.push(i.fieldName),i.condValue||a.push("")}else throw new D(s,"\u6682\u672A\u652F\u6301\u7684\u67E5\u8BE2\u6761\u4EF6\u7C7B\u578B: ".concat(s.condType));e.push(a)}),e}});zr.map=new WeakMap;var Gr=d("DynamicCodeListCache",class{constructor(t){this.cache=new Map,this.isPredefined=!1,this.codeList=t}async init(){const t=async()=>{const{predefinedType:e}=this.codeList;if(e){if(this.isPredefined=!0,!["OPERATOR","RUNTIME"].includes(e))throw new D(this.codeList,"\u9884\u5B9A\u4E49\u7C7B\u578B".concat(e,"\u6682\u4E0D\u652F\u6301"));return}this.initPromise=void 0};return this.initPromise=t(),this.initPromise}convertData(t){const e={},{valueAppDEFieldId:s,textAppDEFieldId:a,iconClsAppDEFieldId:i,iconClsXAppDEFieldId:r,iconPathAppDEFieldId:n,iconPathXAppDEFieldId:o,disableAppDEFieldId:u,dataAppDEFieldId:c}=this.codeList,l=s?t[s]:t.srfkey;return e.id=l,e.value=l,e.text=a?t[a]:t.srfmajortext,(i||r||n||o)&&(e.sysImage={},i&&(e.sysImage.cssClass=t[i]),r&&(e.sysImage.cssClassX=t[r]),n&&(e.sysImage.imagePath=t[n]),o&&(e.sysImage.imagePathX=t[o])),u&&(e.disableSelect=t[u]),c&&t[c]&&(e.data=B.execSingleLine(t[c])),e}async load(t={},e={}){const s=ibiz.hub.getApp(t.srfappid),{appDataEntityId:a,appDEDataSetId:i,minorSortAppDEFieldId:r,minorSortDir:n,pvalueAppDEFieldId:o,customCond:u}=this.codeList,c={...e};if(r&&n&&Object.assign(c,{sort:"".concat(r.toLowerCase(),",").concat(n.toLowerCase())}),u){const p=B.execSingleLine(u),E=b(p,c,t);Object.assign(c,E)}if(c.size||(c.size=1e4),this.isPredefined){const p=await s.net.get("/dictionaries/codelist/".concat(this.codeList.codeName),c);return Object.freeze(p.data.items)}if(!a)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 s.deService.exec(a,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:s}=this.codeList;let a=[];if(a=t.filter(i=>e?i[s]===e:!i[s]),a.length!==0)return a.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 s=JSON.stringify(t)+JSON.stringify(e);if(this.cache.has(s)){const u=this.cache.get(s);if(u.expirationTime>new Date().getTime())return u.promise?u.promise:u.items;this.cache.delete(s)}const a=this.load(t,e),{cacheTimeout:i}=this.codeList,r=i===-1||w(i)?ibiz.config.codeList.timeout:this.codeList.cacheTimeout,n={expirationTime:new Date().getTime()+r,promise:a};this.cache.set(s,n);const o=await a;return n.items=o,delete n.promise,o}});function va(t,e){if(e!=null){const{srfkey:s}=e;if(!w(s)&&!T(s))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:s}=e;if(!w(s)&&!T(s))return!0;throw new f("\u6267\u884C\u300C".concat(t,"\u300D\u4E0D\u5B58\u5728\u300Csrfsessionid\u300D\u65E0\u6CD5\u5904\u7406"))}var jr=d("DECache",class{constructor(){this.cacheMap=new Map}forceAdd(t,e){const a=this.getCacheByTag(t).get(e.srfkey);a&&(a.assign(e),ibiz.log.warn("forceAdd",e.srfkey,e))}forceUpdate(t,e){this.getCacheByTag(t).set(e.srfkey,v(e)),ibiz.log.warn("forceUpdate",e.srfkey,e)}forceDelete(t,e){this.getCacheByTag(t).delete(e),ibiz.log.warn("forceDelete",e)}add(t,e){try{return ot("add",t),(w(e.srfkey)||T(e.srfkey))&&(e.srfkey=Y()),e.srftempdate=new Date().getTime(),this.getCacheByTag(t).set(e.srfkey,v(e)),ibiz.log.warn("add",e.srfkey,e),e}catch(s){return ibiz.log.error(s),null}}get(t,e){try{ot("get",t);const a=this.getCacheByTag(t).get(e);return ibiz.log.warn("get",e,a),v(a)}catch(s){return ibiz.log.error(s),null}}update(t,e){try{ot("update",t),va("update",e),e.srftempdate=new Date().getTime();const s=this.getCacheByTag(t),a=s.get(e.srfkey);if(a)return a.assign(e),s.set(e.srfkey,a),ibiz.log.warn("update",e.srfkey,e),v(a);throw new Error("\u6570\u636E\u4E0D\u5B58\u5728\uFF0C\u65E0\u6CD5\u66F4\u65B0!")}catch(s){return ibiz.log.error(s),null}}delete(t,e){try{ot("delete",t);const s=this.getCacheByTag(t),a=e;if(s.has(a)){const i=s.get(a);return i.srftempdate=new Date().getTime(),s.delete(a),ibiz.log.warn("delete",a),i}return null}catch(s){return ibiz.log.error(s),null}}createBatch(t,e){try{ot("add",t);const s=this.getCacheByTag(t);for(let a=0;a<e.length;a++){const i=e[a];(w(i.srfkey)||T(i.srfkey))&&(i.srfkey=Y()),i.srftempdate=new Date().getTime();const r=v(i);s.set(i.srfkey,r),e[a]=r,ibiz.log.warn("add",i.srfkey,i)}return e}catch(s){ibiz.log.error(s)}return[]}updateBatch(t,e){try{ot("update",t);const s=this.getCacheByTag(t);for(let a=0;a<e.length;a++){const i=e[a];va("update",i),i.srftempdate=new Date().getTime();const r=s.get(i.srfkey);if(r)r.assign(i),s.set(i.srfkey,r),ibiz.log.warn("update",i.srfkey,i),e[a]=v(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(s){return ibiz.log.error(s),null}}deleteBatch(t,e){try{ot("delete",t)}catch(i){return ibiz.log.error(i),e}const s=this.getCacheByTag(t),a=[];for(let i=0;i<e.length;i++){const r=e[i];s.has(r)||a.push(r)}if(a.length>0)throw new Error("\u672A\u627E\u5230\u4EE5\u4E0B\u6570\u636E\u300C".concat(a.join("\u3001"),"\u300D\uFF0C\u65E0\u6CD5\u5220\u9664!"));for(let i=0;i<e.length;i++){const r=e[i];s.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 s=e.values();return Array.from(s)}catch(e){return ibiz.log.error(e),[]}}generatePred(t={}){const e={};t.srfkey&&(e.srfkey=rt(t.srfkey)),delete t.srfkey;for(const s in t)if(Object.prototype.hasOwnProperty.call(t,s)){const a=t[s];e[s]=rt(a)}return gt(e)}clear(t){const e=t.srfsessionid;this.cacheMap.size>0&&this.cacheMap.delete(e)}getCacheByTag(t){const e=t.srfsessionid;return this.cacheMap.has(e)||this.cacheMap.set(e,new Map),this.cacheMap.get(e)}}),Kr=/\$\{(.*?)\}/g;function Aa(t,e){const i=(e.requestPaths||[]).map(r=>{const n=r.match(Kr),o=n?.map(u=>u.substring(2,u.length-1))||[];return{path:r,keys:o}}).filter(r=>{const{keys:n}=r;return n.length===0?!0:n.every((o,u)=>u===n.length-1?!0:t[o]!=null)}).sort((r,n)=>n.keys.length-r.keys.length);if(i.length>0)return i[0]}function Qt(t,e){const s=Aa(t,e);if(s){if(s.keys.length>0){let{path:a}=s;return s.keys.forEach((i,r)=>{r===s.keys.length-1?a=a.replace(new RegExp("/[^/]+/\\$\\{".concat(i,"\\}")),""):a=a.replace("${".concat(i,"}"),t[i])}),a}return s.path}return""}var Xr=d("SearchFilter",class{constructor(t,e){if(this.page=0,this.size=1e3,this.data={},this.sortField="srfordervalue",this.sortMode="ASC",this.context=t,e){if(!w(e.page)&&!T(e.page)&&(this.page=e.page),!w(e.size)&&!T(e.size)&&(this.size=e.size),!w(e.query)&&!T(e.query)&&(this.query=e.query),!w(e.sort)&&!T(e.sort)){const s=e.sort.split(",");s.length>=1&&([this.sortField]=s),s.length>=2&&(this.sortMode=s[1].toUpperCase())}!w(e.srfparentkey)&&!T(e.srfparentkey)&&(this.srfparentkey=e.srfparentkey),!w(e.srfparentdename)&&!T(e.srfparentdename)&&(this.srfparentdename=e.srfparentdename),this.data={...e},delete this.data.page,delete this.data.size,delete this.data.query,delete this.data.sort,delete this.data.srfparentkey,delete this.data.srfparentdename}}getValue(t){return this.data[t]?this.data[t]:this.context[t]}}),Hr=d("CodeListService",class{constructor(t){this.appModel=t,this.allCodeLists=new Map,this.cache=new Map}getStatic(t){const e=t.codeName;if(this.cache.has(e))return this.cache.get(e);const s=t.codeItems;let a=[];return s?.length&&(a=this.formatStaticItems(s,t.codeItemValueNumber)),this.cache.set(e,Object.freeze(a)),a}setCodeList(t){const{id:e,codeName:s}=t;this.allCodeLists.set(e,t),this.allCodeLists.set(s,t)}getCodeList(t){return this.allCodeLists.get(t)}formatStaticItems(t,e){return t.map(s=>{var a;let i=s.text;s.textLanguageRes&&(i=ibiz.i18n.t(s.textLanguageRes.lanResTag,s.text));let{tooltip:r}=s;s.tooltipLanguageRes&&(r=ibiz.i18n.t(s.tooltipLanguageRes.lanResTag,s.tooltip));const n={text:i,value:e?Number(s.value):s.value,color:s.color,id:s.codeName,textCls:s.textCls,disableSelect:s.disableSelect,tooltip:r,data:s.data?B.execSingleLine(s.data):void 0,sysImage:s.sysImage};return(a=s.codeItems)!=null&&a.length&&(n.children=this.formatStaticItems(s.codeItems,e)),Object.freeze(n)})}async getDynamicCodeList(t,e={},s={}){let a;const i=t.codeName;return this.cache.has(i)?a=this.cache.get(i):(a=new Gr(t),this.cache.set(i,a),await a.init()),a.get(e,s)}async get(t,e,s){const a=this.allCodeLists.get(t);if(!a)throw new f("\u627E\u4E0D\u5230".concat(t,"\u4EE3\u7801\u8868"));return a.codeListType==="STATIC"?this.getStatic(a):a.codeListType==="DYNAMIC"?this.getDynamicCodeList(a,e,s):[]}}),$t=d("ConfigService",class{constructor(t,e,s){this.appId=t,this.folder=e,this.tag=s,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:{}}}),Ia=d("CounterService",class{static async getCounter(t,e,s){const a=t.id;if(this.counterMap.has(a)){const n=this.counterMap.get(a);if(n.isDestroyed===!1)return n;this.counterMap.delete(a)}const r=(await ea(t)).createCounter(t);return await r.init(e,s),this.counterMap.set(a,r),r}static async getCounterByRef(t,e,s){const{appCounter:a}=t;if(!a)throw new m(t,"\u672A\u914D\u7F6E\u5E94\u7528\u8BA1\u6570\u5668!");return this.getCounter(a,e,s)}});Ia.counterMap=new Map;var Yr=d("WorkFlowService",class{constructor(t){this.model=t,this.commonBaseUrl="",this.app=ibiz.hub.getApp(t.appId);const e=ibiz.appData.context;this.commonBaseUrl="/wfcore/".concat(e.srfsystemid,"-app-").concat(this.app.model.codeName.toLowerCase(),"/").concat(this.model.name.toLowerCase())}getBaseUrl(){return this.commonBaseUrl}getActiveData(t,e){return e.srfprocessinstanceid&&(t.srfprocessinstanceid=e.srfprocessinstanceid),t}getWFInstanceTag(t){return t.srfprocessinstanceid||"alls"}async getWFStep(t){const{processDefinitionKey:e,taskDefinitionKey:s}=t;return this.app.net.get("".concat(this.getBaseUrl(),"/process-definitions/").concat(e,"/usertasks/").concat(s))}async getWFLink(t,e){const s=t[this.model.codeName.toLowerCase()],{taskDefinitionKey:a}=t;return this.app.net.post("".concat(this.getBaseUrl(),"/").concat(s,"/usertasks/").concat(a,"/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,s){return this.app.net.post("".concat(this.getBaseUrl(),"/").concat(t[this.model.codeName.toLowerCase()],"/process-instances"),{...e,activedata:this.getActiveData(s,t)})}async wfSubmit(t,e,s){return this.app.net.post("".concat(this.getBaseUrl(),"/").concat(t[this.model.codeName.toLowerCase()],"/tasks/").concat(e.taskId),{...e,activedata:this.getActiveData(s,t)})}async wfWithdraw(t,e,s){return this.app.net.post("".concat(this.getBaseUrl(),"/").concat(t[this.model.codeName.toLowerCase()],"/tasks/").concat(e.taskId,"/withdraw"),{...e,activedata:this.getActiveData(s,t)})}async wfReassign(t,e,s){return ibiz.net.post("".concat(this.getBaseUrl(),"/").concat(t[this.model.codeName.toLowerCase()],"/tasks/").concat(e.taskId,"/transfer"),{...e,activedata:this.getActiveData(s,t)})}async wfAddStepBefore(t,e,s){return ibiz.net.post("".concat(this.getBaseUrl(),"/").concat(t[this.model.codeName.toLowerCase()],"/tasks/").concat(e.taskId,"/beforesign"),{...e,activedata:this.getActiveData(s,t)})}async wfAddStepAfter(t,e,s){return ibiz.net.post("".concat(this.getBaseUrl(),"/").concat(t[this.model.codeName.toLowerCase()],"/tasks/").concat(e.taskId,"/aftersign"),{...e,activedata:this.getActiveData(s,t)})}async wfSendBack(t,e,s){return ibiz.net.post("".concat(this.getBaseUrl(),"/").concat(t[this.model.codeName.toLowerCase()],"/tasks/").concat(e.taskId,"/sendback"),{...e,activedata:this.getActiveData(s,t)})}async wfSendCopy(t,e,s){return ibiz.net.post("".concat(this.getBaseUrl(),"/").concat(t[this.model.codeName.toLowerCase()],"/tasks/").concat(e.taskId,"/sendcopy"),{...e,activedata:this.getActiveData(s,t)})}async exec(t,e,s={},a={}){switch(t){case"wfstart":return this.wfStart(e,s,a);case"wfsubmit":return this.wfSubmit(e,s,a);case"reassign":return this.wfReassign(e,s,a);case"addstepbefore":return this.wfAddStepBefore(e,s,a);case"addstepafter":return this.wfAddStepAfter(e,s,a);case"sendback":return this.wfSendBack(e,s,a);case"sendcopy":return this.wfSendCopy(e,s,a);default:throw new f("\u300C".concat(t,"\u300D\u672A\u5B9E\u73B0"))}}}),qr=class{constructor(t){this.model=t}exportData(t,e,s,a){const i=Qt(s,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:a,responseType:"blob"})}},Qr=d("Srfuf",(t=>(t[t.CREATE=0]="CREATE",t[t.UPDATE=1]="UPDATE",t))(Qr||{})),Jt=d("AppDataEntity",class ue{get srfuf(){return this.srfkey===this.tempsrfkey?1:0}constructor(e,s={}){Object.defineProperty(this,"_entity",{enumerable:!1,configurable:!0,value:e}),Object.defineProperty(this,"_data",{enumerable:!1,configurable:!0,value:s instanceof ue?v(s._data):v(s)}),Object.defineProperty(this,"srfdeid",{get(){return e.id}}),Object.defineProperty(this,"srfdecodename",{get(){return e.codeName}});const a=lt(e.appDEFields||[],e.keyAppDEFieldId);if(a){const r=a.codeName.toLowerCase();Object.defineProperty(this,"srfkeyfield",{get(){return r}}),Object.defineProperty(this,"srfkey",{set(n){this._data[r]=n},get(){return this._data[r]}})}else ibiz.log.warn("\u5B9E\u4F53[".concat(e.codeName,"]\u672A\u914D\u7F6E\u4E3B\u952E\u5B57\u6BB5"));const i=lt(e.appDEFields||[],e.majorAppDEFieldId);if(i){const r=i.codeName.toLowerCase();Object.defineProperty(this,"srfmajorfield",{get(){return r}}),Object.defineProperty(this,"srfmajortext",{set(n){this._data[r]=n},get(){return this._data[r]}})}else ibiz.log.warn("\u5B9E\u4F53[".concat(e.codeName,"]\u672A\u914D\u7F6E\u4E3B\u6587\u672C\u5B57\u6BB5"));Object.defineProperty(this,"tempsrfkey",{enumerable:!1,configurable:!0,writable:!0,value:w(this.srfkey)?Y():this.srfkey}),this.defineProperties()}defineProperties(){var e;const{_data:s,convertVal:a}=this,i={};Object.keys(s).forEach(n=>{i[n]={enumerable:!0,set(o){s[n]=o},get(){return s[n]}}}),(e=this._entity.appDEFields)==null||e.forEach(n=>{const o=n.codeName.toLowerCase();i[o]={enumerable:!0,set(u){s[o]=a(u,n.stdDataType)},get(){return s[o]}},s[o]=a(s[o],n.stdDataType)}),Object.defineProperties(this,i)}clone(){const e=new ue(this._entity,this._data);return e.srfkey=this.srfkey,e}assign(e){return e instanceof ue?Object.assign(this._data,e._data):Object.assign(this._data,e),this}convertVal(e,s){if(e==null||w(s))return e;if(Bt.isNumber(s)){const a=!w(e)&&e!==""?Number(e):e;return Number.isNaN(a)?(ibiz.log.debug("".concat(e,"\u4E0D\u80FD\u8F6C\u6362\u6210\u6570\u5B57")),e):a}return e}}),ya=d("MethodDto",class ti{constructor(e,s,a){this.entity=e,this.isLocalMode=s,this.dto=a,this.dtoMap=new Map,a?(this.app=ibiz.hub.getApp(e.appId),this.fields=a.appDEMethodDTOFields||[]):this.fields=[]}convertArrayToListMap(e){const s={};return e.forEach((a,i)=>{s[i+1]=a}),s}convertListMapToArray(e){const s=[];return Object.keys(e).forEach(a=>{const i=parseInt(a,10);s[i-1]=e[i]}),s}async get(e,s){const a={};for(let i=0;i<this.fields.length;i++){const r=this.fields[i],n=r.codeName.toLowerCase();switch(r.type){case"SIMPLE":break;case"DTOS":{if(r.listMap)a[n]=s[n]&&s[n].length>0?this.convertArrayToListMap(s[n]):null;else{if(s[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]));a[n]=l}}break}default:throw new D(r,"\u672A\u652F\u6301\u7684\u5E94\u7528\u5B9E\u4F53\u65B9\u6CD5\u8F93\u5165\u5C5E\u6027\u7C7B\u578B: ".concat(r.type))}}return{...s,...a}}async sets(e,s){const a=await this.app.deService.getService(this.entity.id);return this.isLocalMode&&a.local.clear(e),Promise.all(s.map(async i=>{const r=this.fields.filter(o=>o.type==="DTOS").map(async o=>{const u=o.codeName.toLowerCase();if(o.listMap&&typeof i[u]=="object")i[u]=this.convertListMapToArray(i[u]);else{if(!o.refAppDataEntityId)return;const c=await this.getFieldDto(o),l=i[u];l?await c.sets(e,l):await c.sets(e,[])}});for(let o=0;o<r.length;o++)await r[o];const n=new Jt(this.entity,i);return this.isLocalMode&&await a.local.add(e,n),n}))}async getFieldDto(e){if(this.dtoMap.has(e.codeName))return this.dtoMap.get(e.codeName);const s=await ibiz.hub.getAppDataEntity(e.refAppDataEntityId,this.entity.appId),a=lt(s.appDEMethodDTOs||[],e.refAppDEMethodDTOId),i=new ti(s,!0,a);return this.dtoMap.set(e.codeName,i),i}});function Zt(t){return t.actionType==="BUILTIN"||t.dataSetType==="DATAQUERY"}var $r=class{constructor(t,e){this.entity=t,this.method=e;const s=e.appDEMethodInput;if(s){const a=lt(t.appDEMethodDTOs||[],s.appDEMethodDTOId);a&&(this.dto=new ya(t,this.isLocalMode,a))}}get isLocalMode(){return Zt(this.method)}async handle(t,e){return this.dto?this.dto.get(t,e):e}},Jr=class{constructor(t,e){this.entity=t,this.method=e;const s=e.appDEMethodReturn;if(s){const a=lt(t.appDEMethodDTOs||[],s.appDEMethodDTOId);a&&(this.dto=new ya(t,this.isLocalMode,a))}}get isLocalMode(){return Zt(this.method)}async handle(t,e){return this.dto?(await this.dto.sets(t,[e]))[0]:(V(e)&&(e={}),new Jt(this.entity,e))}},Fa=class{constructor(t,e){this.entity=t,this.method=e,this.app=ibiz.hub.getApp(t.appId),this.input=new $r(t,e),this.result=new Jr(t,e)}async request(t,e,s,a){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),s||a||{});break;case"GET":o=await this.app.net.get(this.mergeRequestPath(t,n),s||a);break;case"PUT":{o=await this.app.net.put(this.mergeRequestPath(t,n),s||a||{});break}case"DELETE":o=await this.app.net.delete(this.mergeRequestPath(t,n),s||a);break;default:throw r?new m(this.method,"\u672A\u652F\u6301\u7684\u8BF7\u6C42\u65B9\u5F0F: ".concat(r)):new m(this.method,"\u672A\u914D\u7F6E\u8BF7\u6C42\u65B9\u5F0F")}return o}throw new m(this.method,"\u672A\u652F\u6301\u7684\u884C\u4E3A\u7C7B\u578B[".concat(i,"]"))}mergeRequestPath(t,e){return"".concat(t,"/").concat(e)}calcPath(t){const e="/".concat(this.entity.codeName2.toLowerCase());return Qt(t,this.entity)+e}async getService(){return this.service||(this.service=await this.app.deService.getService(this.entity.id)),this.service}createEntity(t){const e=s=>s instanceof Jt?s.clone():new Jt(this.entity,s);return j(t)?t.map(s=>e(s)):e(t)}},Zr=class{constructor(t,e,s,a){this.deLogicParams=t,this.params={},this.result=null,this.isEndNode=!1,this.defaultParamName="Default",this.parameters={context:e,data:j(s)?s:[s],params:a}}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)}},Pa=class{},tn=class extends Pa{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,s){const a=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=s[this.value]!=null?s[this.value]:e[this.value];return $(a[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 $(a[this.dstField],this.op,i[this.value])}case"CURTIME":throw new D(this.model,"\u6682\u672A\u652F\u6301\u6761\u4EF6\u503C\u7C7B\u578B\u4E3A[\u5F53\u524D\u65F6\u95F4]");default:return $(a[this.dstField],this.op,this.value)}}},en=class ei extends Pa{constructor(e){super(),this.model=e;const s=e.conds||[];this.conds=s.map(a=>a.logicType==="SINGLE"?new tn(a):new ei(a))}get op(){return this.model.groupOP}get notMode(){return this.model.notMode===!0}test(e,s,a){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,s,a);if(this.op==="AND"&&o===!1){i=!1;break}if(this.op==="OR"&&o===!0){i=!0;break}}return this.notMode?!i:i}},sn=class{constructor(t){this.model=t,this.srcNode=null,this.dstNode=null,this.groupCond=null;const e=this.model.delogicLinkGroupCond;e&&(this.groupCond=new en(e))}async exec(t){const{defaultLink:e}=this.model;return e||!this.groupCond?!0:this.groupCond.test(t,t.context,t.data[0]||{})}},K=class{constructor(t){this.model=t;var e;this.links=(e=t.links||[])==null?void 0:e.map(s=>new sn(s))}},an=class extends K{async exec(t){const{dstAppDataEntityId:e,dstAppDEActionId:s,dstDELogicParamId:a,retDELogicParamId:i}=this.model;if(!e)throw new m(this.model,"\u672A\u6307\u5B9A\u5E94\u7528\u5B9E\u4F53");if(!s)throw new m(this.model,"\u672A\u6307\u5B9A\u5B9E\u4F53\u884C\u4E3A");const r=t.params[a],o=await ibiz.hub.getApp(t.context.srfappid).deService.exec(e,s,t.context,r,t.viewParam);o.ok&&(t.params[i]=o.data)}},rn=class extends K{async exec(t){}},nn=class extends K{async exec(t){t.isEndNode=!0;const{returnParamId:e,returnType:s,rawValue:a}=this.model;if(s)switch(s){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[e];break;case"LOGICPARAMFIELD":case"BREAK":default:throw new D(this.model,"\u6682\u672A\u652F\u6301\u7684\u7ED3\u675F\u8282\u70B9\u8FD4\u56DE\u503C\u7C7B\u578B: ".concat(s))}}};function ht(t,e){const{srcDELogicParamId:s,srcFieldName:a,srcValue:i}=e,r=e.srcValueType||"SRCDLPARAM";let n=a,o;switch(r){case"SRCDLPARAM":o=t.params[s],t.isEntityParam(s)&&(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=v(ibiz.env);break;default:throw new D(e,"\u6682\u672A\u652F\u6301\u6E90\u503C\u7C7B\u578B".concat(r))}if(o&&n)try{Array.isArray(o)?o=o[Number(n)]:o=B.execScriptFn({srcValue:o},"srcValue.".concat(n),{singleRowReturn:!0,isAsync:!1})}catch(u){throw ibiz.log.error("\u4ECE\u6E90\u53C2\u6570\u53D6\u5C5E\u6027".concat(n,"\u62A5\u9519\uFF0C\u6E90\u53C2\u6570\uFF1A"),o),u}return o}var on=class extends K{async exec(t){const e=this.model.delogicNodeParams;e?.length&&await Promise.all(e.map(s=>{switch(s.paramAction){case"SETPARAMVALUE":return this.setParamValue(s,t);case"RESETPARAM":return this.resetParam(s,t);case"COPYPARAM":return this.copyParam(s,t);case"BINDPARAM":return this.bindParam(s,t);case"RENEWPARAM":return this.renewParam(s,t);case"APPENDPARAM":return this.appendParam(s,t);case"SORTPARAM":return this.sortParam(s,t);default:throw new D(s,"\u6682\u672A\u652F\u6301\u903B\u8F91\u5904\u7406\u53C2\u6570\u64CD\u4F5C".concat(s.paramAction))}}))}copyParam(t,e){const{dstDELogicParamId:s}=t,a=ht(e,t);e.params[s]=v(a)}bindParam(t,e){const s=ht(e,t);e.params[t.dstDELogicParamId]=s}setParamValue(t,e){const{dstFieldName:s,dstDELogicParamId:a}=t;let i=s;e.isEntityParam(a)&&(i=i?.toLowerCase());const r=ht(e,t);i?e.params[a][i]=r:e.params[a]=r}resetParam(t,e){const{dstDELogicParamId:s}=t;e.resetParam(s)}renewParam(t,e){const{dstDELogicParamId:s}=t;e.renewParam(s)}appendParam(t,e){const{dstDELogicParamId:s,dstIndex:a,srcIndex:i,srcSize:r}=t,n=ht(e,t),o=a||0,u=i||0,c=r||n.length;e.params[s].splice(o,0,...n.slice(u,c))}sortParam(t,e){const{dstDELogicParamId:s,dstFieldName:a,dstSortDir:i}=t,r=a.toLowerCase();e.params[s].sort((o,u)=>i==="ASC"?o[r]-u[r]:u[r]-o[r])}},un=class extends K{async exec(t){const{dstAppDEDataSetId:e,dstAppDataEntityId:s,dstDELogicParamId:a,retDELogicParamId:i}=this.model,r=t.params[a],o=await ibiz.hub.getApp(t.context.srfappid).deService.exec(s,e,t.context,r);o.ok&&(t.params[i]=o.data)}},cn=class extends K{async exec(t){const{dstDELogicParamId:e,srcDELogicParamId:s}=this.model;if(!e||!s)throw new m(this.model,"\u7F3A\u5C11\u76EE\u6807\u53C2\u6570\u5BF9\u8C61\u6216\u8005\u6E90\u53C2\u6570\u5BF9\u8C61\u914D\u7F6E");const a=ht(t,this.model);t.params[e]=a}},ln=class extends K{async exec(t){const{dstDELogicParamId:e}=this.model;if(!e)throw new m(this.model,"\u7F3A\u5C11\u76EE\u6807\u53C2\u6570\u5BF9\u8C61\u914D\u7F6E");t.resetParam(e)}},dn=class extends K{async exec(t){const{dstDELogicParamId:e}=this.model;if(!e)throw new m(this.model,"\u7F3A\u5C11\u76EE\u6807\u53C2\u6570\u5BF9\u8C61\u914D\u7F6E");t.renewParam(e)}},hn=class extends K{async exec(t){const{dstDELogicParamId:e,srcDELogicParamId:s}=this.model;if(!e||!s)throw new m(this.model,"\u7F3A\u5C11\u76EE\u6807\u53C2\u6570\u5BF9\u8C61\u6216\u8005\u6E90\u53C2\u6570\u5BF9\u8C61\u914D\u7F6E");const a=ht(t,this.model);t.params[e]=v(a)}},pn=class extends K{async exec(t){const{dstDELogicParamId:e,dstSortDir:s,dstFieldName:a}=this.model;if(!e||!a)throw new m(this.model,"\u7F3A\u5C11\u76EE\u6807\u53C2\u6570\u5BF9\u8C61\u6216\u76EE\u6807\u5C5E\u6027\u914D\u7F6E");const i=a.toLowerCase();t.params[e].sort((n,o)=>s==="ASC"?n[i]-o[i]:o[i]-n[i])}},fn=class extends K{async exec(t){const{dstDELogicParamId:e,srcDELogicParamId:s,dstIndex:a,srcIndex:i,srcSize:r}=this.model;if(!e||!s)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=a||0,u=i||0,c=r||n.length;t.params[e].splice(o,0,...n.slice(u,c))}},mn=class extends K{async exec(t){const{errorCode:e,errorInfo:s}=this.model;throw new Ot({response:{status:e,statusText:s}})}},En=class{constructor(t){this.model=t}calc(t){const e=this.model.id,s=this.model;if(s.default)s.entityListParam?t.params[e]=t.data||[]:t.params[e]=t.data[0]||{};else if(s.appGlobalParam)t.params[e]=v(ibiz.env);else if(s.entityListParam)t.params[e]=[];else{if(s.entityPageParam)throw new D(s,"\u672A\u652F\u6301\u7684\u903B\u8F91\u53C2\u6570\u7C7B\u578B: \u5206\u9875\u67E5\u8BE2\u7ED3\u679C");if(s.entityParam)t.params[e]={};else if(s.lastReturnParam)t.initLastReturnParam(e);else if(s.appContextParam)t.params[e]=t.parameters.context;else if(s.simpleListParam)t.params[e]=[];else if(s.simpleParam)t.params[e]={};else if(s.cloneParam)t.params[e]=v(t.data||{});else{if(s.envParam)throw new D(s,"\u672A\u652F\u6301\u7684\u903B\u8F91\u53C2\u6570\u7C7B\u578B: \u7CFB\u7EDF\u73AF\u5883\u53D8\u91CF");if(s.fileListParam)throw new D(s,"\u672A\u652F\u6301\u7684\u903B\u8F91\u53C2\u6570\u7C7B\u578B: \u6587\u4EF6\u5BF9\u8C61\u5217\u8868\u53D8\u91CF");if(s.fileParam)throw new D(s,"\u672A\u652F\u6301\u7684\u903B\u8F91\u53C2\u6570\u7C7B\u578B: \u6587\u4EF6\u5BF9\u8C61\u53D8\u91CF");if(s.filterParam)throw new D(s,"\u672A\u652F\u6301\u7684\u903B\u8F91\u53C2\u6570\u7C7B\u578B: \u8FC7\u6EE4\u5668\u5BF9\u8C61\u53D8\u91CF");if(s.lastParam)throw new D(s,"\u672A\u652F\u6301\u7684\u903B\u8F91\u53C2\u6570\u7C7B\u578B: \u6700\u540E\u6570\u636E\u53D8\u91CF");if(s.originEntity)throw new D(s,"\u672A\u652F\u6301\u7684\u903B\u8F91\u53C2\u6570\u7C7B\u578B: \u539F\u59CB\u6570\u636E\u5BF9\u8C61");if(s.sessionParam)throw new D(s,"\u672A\u652F\u6301\u7684\u903B\u8F91\u53C2\u6570\u7C7B\u578B: \u64CD\u4F5C\u4F1A\u8BDD\u53D8\u91CF")}}}renew(t){const e=this.model.id,s=this.model;if(s.entityListParam||s.simpleListParam||s.entityPageParam)t.params[e]=[];else if(s.simpleParam||s.entityParam)t.params[e]={};else throw new D(s,"\u672A\u652F\u6301\u7684\u903B\u8F91\u53C2\u6570\u7C7B\u578B\u91CD\u65B0\u5EFA\u7ACB\u53D8\u91CF")}},gn=class{constructor(t){this.model=t,this.nodes=new Map,this.params=new Map;var e,s;if(t.customCode){if(!t.scriptCode)throw new m(t,"\u811A\u672C\u4EE3\u7801\u6A21\u5F0F\u6CA1\u6709\u914D\u7F6E\u811A\u672C\u4EE3\u7801");this.scriptFn=B.createScriptFn([],t.scriptCode,{isAsync:!0});return}if(!((e=t.delogicNodes)!=null&&e.length))throw new m(t,"\u5B9E\u4F53\u903B\u8F91\u6CA1\u6709\u914D\u7F6E\u903B\u8F91\u8282\u70B9");t.delogicNodes.forEach(a=>{const{logicNodeType:i}=a;let r;switch(i){case"BEGIN":r=new rn(a);break;case"END":r=new nn(a);break;case"DEACTION":r=new an(a);break;case"PREPAREPARAM":r=new on(a);break;case"DEDATASET":r=new un(a);break;case"THROWEXCEPTION":r=new mn(a);break;case"BINDPARAM":r=new cn(a);break;case"RESETPARAM":r=new ln(a);break;case"COPYPARAM":r=new hn(a);break;case"RENEWPARAM":r=new dn(a);break;case"APPENDPARAM":r=new fn(a);break;case"SORTPARAM":r=new pn(a);break;default:throw new D(a,"\u672A\u652F\u6301\u7684\u903B\u8F91\u8282\u70B9\u7C7B\u578B: ".concat(i))}this.nodes.set(a.id,r)}),(s=t.delogicParams)==null||s.forEach(a=>{this.params.set(a.id,new En(a))}),this.nodes.forEach(a=>{a.links.forEach(i=>{i.srcNode=a,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,s){if(this.scriptFn)return this.scriptFn.exec({context:t,data:e,params:s});const a=new Zr(this.params,t,e,s);this.initLogicParams(a);const{startDELogicNodeId:i}=this.model;if(i&&this.nodes.has(i)){const r=this.nodes.get(i);await this.deepExec(r,a)}else throw new m(this.model,"\u672A\u8BBE\u7F6E\u8D77\u59CB\u8282\u70B9");return a.isEndNode?a.result:a.params[a.defaultParamName]?a.params[a.defaultParamName]:null}async deepExec(t,e){await t.exec(e);const{links:s}=t;for(let a=0;a<s.length;a++){const i=s[a];if(await i.exec(e)&&i.dstNode&&(await this.deepExec(i.dstNode,e),t.model.parallelOutput===!1))break}}},ze=new Map;async function Cn(t,e,s){const a=await ibiz.hub.getAppDataEntity(e,s);return be(t,a)}async function te(t,e,s={},a={}){return ze.has(t)||ze.set(t,new gn(t)),ze.get(t).exec(e,s,a)}async function ba(t,e,s,a,i){const r=await Cn(t,e,s.srfappid);if(!r)throw new f("".concat(e,"\u627E\u4E0D\u5230\u5B9E\u4F53\u903B\u8F91").concat(t));return te(r,s,a,i)}async function Sa(t,e,s,a){const i=v(e),r=s&&v(s),n=a&&v(a);try{const o=await te(t,i,r,n);return new R(o)}catch(o){if(o instanceof Ot)return new R(o,500);throw o}}async function Na(t,e,s,a,i){const r=Ws(t,e);r.length&&(await Promise.all(r.map(o=>te(o,s,a,i)))).forEach(o=>{Object.assign(a,o)})}async function Rt(t,e,s,a,i={}){if(a){if(j(a)){await Promise.all(a.map(r=>Na(t,e,s,r,i)));return}return Na(t,e,s,a,i)}}var Dn=class extends Fa{get isLocalMode(){return Zt(this.method)}async inputHandle(t,e){return j(e)?e:this.input.handle(t,e)}async exec(t,e,s){if(e&&await Rt(this.entity,"change",t,e,s),this.method.actionType==="DELOGIC"){const i=be(this.method.appDELogicId,this.entity);if(!i)throw new m(this.method,"\u7F3A\u5C11\u5B9E\u4F53\u5904\u7406\u903B\u8F91");return Sa(i,t,e,s)}e&&!this.isLocalMode&&(e=await this.inputHandle(t,e)),e&&!["READ","GETDRAFT"].includes(this.method.actionMode)&&await Rt(this.entity,"change",t,e,s);let a;switch(this.method.codeName){case"Create":a=await this.create(t,e,s||{});break;case"Get":a=await this.get(t,s);break;case"GetDraft":a=await this.getDraft(t,s);break;case"Remove":a=await this.remove(t,s);break;case"Update":a=await this.update(t,e,s);break;case"CreateTemp":a=await this.createTemp(t,e);break;case"GetTemp":a=await this.getTemp(t,e);break;case"GetDraftTemp":a=await this.getDraftTemp(t,s);break;case"RemoveTemp":a=await this.removeTemp(t,e);break;case"UpdateTemp":a=await this.updateTemp(t,e);break;default:{let i=this.calcPath(t);if(this.method.needResourceKey){let n=t[this.entity.codeName.toLowerCase()];Es(n)&&(n=j(e)?null:e?.[this.entity.keyAppDEFieldId]),i="".concat(i,"/").concat(n)}const r=await this.request(i,t,e,s);r.data=await this.result.handle(t,r.data),a=r}}return a.data&&await Rt(this.entity,"compute",t,a.data,s),a}async create(t,e,s){if(!e)throw new f("create\u884C\u4E3A\u6CA1\u6709\u4F20data");if(this.isLocalMode)return this.createTemp(t,this.createEntity(e));const a=this.calcPath(t),i=await this.app.net.post(a,e,s);return i.data=await this.result.handle(t,i.data),i}async remove(t,e){if(this.isLocalMode)return this.removeTemp(t,e);const s=this.calcPath(t);return await this.app.net.delete("".concat(s,"/").concat(t[this.entity.codeName.toLowerCase()]),e)}async update(t,e,s){if(!e)throw new f("update\u884C\u4E3A\u6CA1\u6709\u4F20data");if(this.isLocalMode)return this.updateTemp(t,this.createEntity(e));const a=this.calcPath(t),i=await this.app.net.put("".concat(a,"/").concat(t[this.entity.codeName.toLowerCase()]),e,s);return i.data=await this.result.handle(t,i.data),i}async get(t,e={}){if(this.isLocalMode)return this.getTemp(t,e);const s=this.calcPath(t),a=await this.app.net.get("".concat(s,"/").concat(t[this.entity.codeName.toLowerCase()]),e);return a.data=await this.result.handle(t,a.data),a}async getDraft(t,e){if(this.isLocalMode)return this.getDraftTemp(t,e);const s=this.calcPath(t),a=await this.app.net.get("".concat(s,"/getdraft"),e);return a.data=await this.result.handle(t,a.data),a}async createTemp(t,e){try{const s=await this.getService(),a=this.createEntity(e);let i;return j(a)?i=await Promise.all(a.map(r=>s.local.add(t,r))):i=await s.local.add(t,a),new R(i)}catch(s){return new R(s,500)}}async getDraftTemp(t,e){try{const s=this.createEntity({});return s?new R(s):new R(s,500)}catch(s){return new R(s,500)}}async removeTemp(t,e){try{let s=null;!s&&t&&(s=t[this.entity.codeName.toLowerCase()]);const i=(await this.getService()).local.delete(t,s);return i?new R(i):new R(i,500)}catch(s){return new R(s,500)}}async updateTemp(t,e){try{const s=await this.getService(),a=this.createEntity(e);let i;return j(a)?i=await Promise.all(a.map(r=>s.local.update(t,r))):i=await s.local.update(t,a),i?new R(i):new R(i,500)}catch(s){return new R(s,500)}}async getTemp(t,e){try{let s=null;!s&&t&&(s=t[this.entity.codeName.toLowerCase()]);const i=(await this.getService()).local.get(t,s);return i?new R(i):new R(i,500)}catch(s){return new R(s,500)}}async removeBatchTemp(t,e){return new R(!0)}},Ra=class extends Fa{get isLocalMode(){return Zt(this.method)}async exec(t,e,s){const a=e&&j(e)?e:s||{};if(this.isLocalMode){const n=await this.searchLocal(null,new Xr(t,a));return new R(n,200)}let i;switch(this.method.dataSetType){case"INDEXDE":case"CODELIST":case"MULTIFORM":i=await this.fetchCodeListSet(t,a);break;case"REMOTE":{const n=this.calcPath(t);i=await this.request(n,t,e,s)}break;default:throw new D(this.method,"\u6570\u636E\u6765\u6E90\u7C7B\u578B".concat(this.method.dataSetType,"\u6682\u672A\u652F\u6301"))}const r=i.data||[];return i.data=r.map(n=>this.createEntity(n)),i.data&&await Rt(this.entity,"compute",t,i.data,a),i}async selectLocal(t,e={}){let a=(await this.getService()).local.getList(t);a=Ce(a,"srfordervalue");const i={},r={},n={},o={};e.srfkey&&(i.srfkey=rt(e.srfkey),delete e.srfkey);for(const c in e)if(Object.prototype.hasOwnProperty.call(e,c)){const l=e[c];l==null?(r[c]=rt(null),n[c]=rt(void 0),o[c]=rt("")):i[c]=rt(l)}if(!T(i)){const c=gt(i),l=gt(r),h=gt(n),p=gt(o);a=a.filter(E=>{if(T(r)){if(c(E))return!0}else if(c(E)&&(l(E)||h(E)||p(E)))return!0;return!1})}return a.map(c=>c.clone())}async searchLocal(t,e,s=this.entity.quickSearchAppDEFieldIds){const a=await this.getService();let i=[];t?(i=a.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!==""&&s&&(i=i.filter(l=>{const h=new RegExp(e.query);for(let p=0;p<s.length;p+=1){const E=s[p],C=l[E];if(h.test(C))return!0}return!1}))),!w(e.sortField)&&!T(e.sortField)&&(e.sortMode==="DESC"?i=Ss(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=>v(l))}async fetchCodeListSet(t,e){const{appCodeListId:s}=this.method;if(!s)throw new m(this.method,"\u6CA1\u6709\u6307\u5B9A\u6570\u636E\u6765\u6E90\u4EE3\u7801\u8868");const a=await this.app.codeList.get(s,t,e),{keyAppDEFieldId:i,majorAppDEFieldId:r}=this.entity,n=a.map(o=>({[i]:o.value,[r]:o.text}));return new R(n,200)}},wn=class extends Ra{mergeRequestPath(t,e){return"".concat(t,"/ac/").concat(e,"?srfac=ac")}},vn=d("DEService",class{constructor(t){this.model=t,this.methodMap=new Map,this.local=new jr,this.configCache=new $t(t.appId,"PSAppDataEntity",t.codeName),this.wf=new Yr(t),this.file=new qr(t)}getMethod(t,e=!1){const s=e?"ac-".concat(t):t;if(this.methodMap.has(s))return this.methodMap.get(s);const a=lt(this.model.appDEMethods,t);let i=null;switch(a.methodType){case"DEACTION":i=new Dn(this.model,a);break;case"FETCH":case"FETCHTEMP":e?i=new wn(this.model,a):i=new Ra(this.model,a);break;default:throw new D(a,"\u672A\u652F\u6301\u7684\u670D\u52A1\u65B9\u6CD5\u7C7B\u578B: ".concat(a.methodType))}return this.methodMap.set(s,i),i}exec(t,e,s,a){const i=this.getMethod(t);if(i)return i.exec(e,s,a);throw new f("".concat(this.model.codeName,"\u672A\u652F\u6301\u300C").concat(t,"\u300D\u65B9\u6CD5"))}execAc(t,e,s,a={}){const i=this.getMethod(t,!0);if(i)return i.exec(e,s,a);throw new f("".concat(this.model.codeName,"\u672A\u652F\u6301\u300C").concat(t,"\u300D\u65B9\u6CD5"))}aiChatSse(t,e,s={},a={}){const i=ibiz.hub.getApp(this.model.appId),r=this.calcSsePath(e);return new Promise((n,o)=>{i.net.sse("/".concat(r),{srfactag:"AIChat",...s},{headers:{"Content-Type":"application/json"},body:JSON.stringify(a),onmessage:u=>{if(u.data){const c=JSON.parse(u.data);t(c)}},onclose:()=>{n()},onerror:u=>{o(u)}})})}aiChatHistory(t,e={},s={}){const a=ibiz.hub.getApp(this.model.appId),i=this.calcSsePath(t,!0);return a.net.post(i,s,{srfactag:"AIChat",...e})}calcSsePath(t,e=!1){const s=t[this.model.codeName.toLowerCase()],a="/".concat(this.model.codeName2.toLowerCase(),"/ssechatcompletion").concat(e?"/histories":"").concat(s?"/".concat(s):"");return Qt(t,this.model)+a}}),An=["srfkey","srfmajortext","srfmajorfield","srfkeyfield","tempsrfkey","srfuf","srfdeid","srfdecodename"],G=d("ControlVO",class is{constructor(e={},s=new Map){Object.defineProperty(this,"$origin",{enumerable:!1,configurable:!0,value:e||{}}),Object.defineProperty(this,"$dataUIMap",{enumerable:!1,configurable:!0,value:s||new Map}),Object.defineProperty(this,"srfactionparam",{get(){return this.$origin.srfactionparam},set(a){this.$origin.srfactionparam=a},enumerable:!0,configurable:!0}),["srfkey","srfmajortext"].forEach(a=>{if(Object.prototype.hasOwnProperty.call(this.$origin,a))Object.defineProperty(this,a,{get(){return this.$origin[a]},set(i){this.$origin[a]=i},enumerable:!1,configurable:!0});else if(this.$dataUIMap.has(a)){const{dataKey:i}=this.$dataUIMap.get(a);Object.defineProperty(this,a,{get(){return this.$origin[i]},set(r){this.$origin[i]=r},enumerable:!1,configurable:!0})}else Object.defineProperty(this,a,{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(a){this.$origin.tempsrfkey=a},enumerable:!1,configurable:!0}):Object.defineProperty(this,"tempsrfkey",{enumerable:!1,configurable:!0,writable:!0,value:w(this.srfkey)?Y():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(a=>{Object.defineProperty(this,a,{get(){return this.$origin[a]},enumerable:!1,configurable:!0})}),this.$dataUIMap.forEach((a,i)=>{const r=a.dataKey;this.linkProperty(i,r,a)}),Object.keys(e).forEach(a=>{Object.prototype.hasOwnProperty.call(this,a)||this.linkProperty(a,a)})}linkProperty(e,s,a){const i=a?a.isOriginField:!0;An.includes(e)||(i||Object.prototype.hasOwnProperty.call(this.$origin,e)?Object.defineProperty(this,e,{enumerable:!0,configurable:!0,get(){return this.$origin[s]},set(r){this.$origin[s]=r}}):Object.defineProperty(this,e,{enumerable:!0,configurable:!0,writable:!0,value:null}))}getOrigin(){return this.$origin}setOrigin(e){this.$origin=e instanceof is?e.getOrigin():e}clone(){const e=v(this.$origin),s=new is(e,this.$dataUIMap);return Object.keys(this).forEach(a=>{s[a]=this[a]}),s}}),ee=d("ControlService",class{constructor(t){this.dataUIMap=new Map,this.model=t}async init(t){this.app=ibiz.hub.getApp(t?.srfappid),this.initUIDataMap()}initUIDataMap(){}async exec(t,e,s,a){return await this.app.deService.exec(this.model.appDataEntityId,t,e,s,a)}handleResponse(t){return ns(t)}toUIData(t){return new G(t,this.dataUIMap)}}),st=d("MDControlService",class extends ee{async fetch(t,e={}){var s;const a=((s=this.model.fetchControlAction)==null?void 0:s.appDEMethodId)||"fetchdefault";let i=await this.exec(a,t,e);return i=this.handleResponse(i),i}async get(t,e={}){var s;const a=((s=this.model.getControlAction)==null?void 0:s.appDEMethodId)||"get";let i=await this.exec(a,t,void 0,e);return i=this.handleResponse(i),i}async getDraft(t,e={}){var s;const a=((s=this.model.getDraftControlAction)==null?void 0:s.appDEMethodId)||"getdraft";let i=await this.exec(a,t,void 0,e);return i=this.handleResponse(i),i}async remove(t,e={}){var s;const a=((s=this.model.removeControlAction)==null?void 0:s.appDEMethodId)||"remove";return await this.exec(a,t,void 0,e)}async create(t,e){var s;const a=((s=this.model.createControlAction)==null?void 0:s.appDEMethodId)||"create";let i=await this.exec(a,t,e.getOrigin());return i=this.handleResponse(i),i}async update(t,e){var s;const a=((s=this.model.updateControlAction)==null?void 0:s.appDEMethodId)||"update";let i=await this.exec(a,t,e.getOrigin());return i=this.handleResponse(i),i}async exportData(t,e,s={}){throw new f("\u672A\u5B9E\u73B0")}handleResponse(t){const e=super.handleResponse(t);return e.headers&&(e.headers["x-page"]&&(e.page=Number(e.headers["x-page"])),e.headers["x-per-page"]&&(e.size=Number(e.headers["x-per-page"])),e.headers["x-total"]&&(e.total=Number(e.headers["x-total"]))),e.ok&&(kt(e.data)?e.data=e.data.map(s=>this.toUIData(s)):e.data=this.toUIData(e.data)),e}}),In=d("DeAuthorityService",class{constructor(t){this.entityModel=t}async calcByDataAccessAction(t,e){return!(e.srfopprivs&&!e.srfopprivs.includes(t)||!await this.calcByDeMainState(t,e))}async calcByDeMainState(t,e){let s=!0;const a=this.entityModel;if(!a.enableDEMainState)return ibiz.log.debug("".concat(a.codeName,"\u5B9E\u4F53\u4E0D\u5B58\u5728\u6216\u8005\u4E3A\u542F\u7528\u4E3B\u72B6\u6001\uFF0C\u8FD4\u56DEtrue")),s;ibiz.log.debug("\u64CD\u4F5C\u6807\u8BC6".concat(t,"\u4E3B\u72B6\u6001\u8BA1\u7B97\u5F00\u59CB"),e,a);const i=xs(a,e);if(i){ibiz.log.debug("\u5339\u914D\u4E3B\u72B6\u6001",i);const r=Vs(i,a);ibiz.log.debug("\u5141\u8BB8\u7684\u4E3B\u72B6\u6001\u6743\u9650\u96C6\u5408",r),s=r.includes(t)}else ibiz.log.debug("\u6CA1\u5339\u914D\u4E3B\u72B6\u6001\uFF0C\u8FD4\u56DEfalse"),s=!1;return ibiz.log.debug("\u64CD\u4F5C\u6807\u8BC6".concat(t,"\u6743\u9650\u8BA1\u7B97\u7ED3\u675F\uFF1A").concat(s)),s}}),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 s=this.constructorCache.get(t);let a;s?a=await s(e):a=new In(e),this.cache.set(t,a)}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,s){if(this.enablePermission){const r=await(await ibiz.hub.getApp(this.appModel.appId)).getOPPriv(t,s);if(this.enablePermission&&r?.mapSysUniResCode&&!this.calcByResCode(r.mapSysUniResCode))return!1}return e&&s?(await this.getService(s)).calcByDataAccessAction(t,e):!0}}),Fn=d("V7AuthService",class{async login(t,e){try{const s=await ibiz.net.post("/v7/login",{loginname:t,password:e}),{data:a}=s;if(a&&a.token){me(At.TOKEN,a.token,0,!0);const i=new Date().getTime()+(a.expirein||7199)*1e3;me(At.TOKEN_EXPIRES,"".concat(i),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"),Ee(At.TOKEN),Ee(At.TOKEN_EXPIRES),!0}catch(t){ibiz.notification.error({title:"\u767B\u51FA\u5931\u8D25",desc:t.message||""})}return!1}}),Pn=d("AsyncActionService",class{async fetch(t={}){return await ibiz.net.post("/portal/asyncaction/all",t)}async get(t){return await ibiz.net.get("/portal/asyncaction/".concat(t))}}),Ge=d("TreeNodeData",class{constructor(t,e,s){this.leaf=!1,this.leaf=s.leaf===!0,this.parent=e,this.parent&&(this.context={...this.parent.context}),s.navContext&&(this.context=Object.assign(this.context||{},s.navContext)),s.navParams&&(this.params={...s.navParams}),this.nodeId=t.id}calcIcon(t){const{sysImage:e}=t,s={};return e&&(e.cssClass&&(s.cssClass=e.cssClass),e.imagePath&&(s.imagePath=e.imagePath)),Object.values(s).length>0?s:void 0}}),bn=d("TreeCodeListNodeData",class extends Ge{constructor(t,e,s){super(t,e,s);const{data:a}=s;if(this.text=a.text,this.value=a.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=_(t.appDataEntityId);this.context=Object.assign(this.context||{},{[i]:this.value})}this.srfkey=this.value,this.srfmajortext=this.text,this.icon=this.calcIcon(t)}}),La=d("TreeDataSetNodeData",class extends Ge{constructor(t,e,s){super(t,e,s);const{data:a}=s;if(this.deData=a,this.text=t.textAppDEFieldId?a[t.textAppDEFieldId]:a.srfmajortext,this.value=t.idAppDEFieldId?a[t.idAppDEFieldId]:a.srfkey,this.id=e?"".concat(e.id,":").concat(t.id,"@").concat(a.srfkey):t.id+a.srfkey,this.id=this.id.toLowerCase(),t.appDataEntityId){const i=_(t.appDataEntityId);this.context=Object.assign(this.context||{},{[i]:a.srfkey})}this.srfkey=this.deData.srfkey,this.srfmajortext=this.deData.srfmajortext,this.icon=this.calcIcon(t),this.textHtml=this.calcTextHtml(t)}calcIcon(t){const e=super.calcIcon(t)||{},{iconAppDEFieldId:s,detreeNodeDataItems:a}=t;s&&this.deData[s]&&(e.imagePath=this.deData[s]),e&&(this.icon=e);const i=a?.find(r=>r.id==="icon");return i&&(e.htmlStr=this.calcDataItemScript(i)),Object.values(e).length>0?e:void 0}calcDataItemScript(t){if(t.customCode&&t.scriptCode)return B.execScriptFn({data:this.deData},t.scriptCode,{isAsync:!1})}calcTextHtml(t){let e;const{detreeNodeDataItems:s}=t,a=s?.find(i=>i.id==="text");return a&&(e=this.calcDataItemScript(a)),e}}),Sn=d("TreeStaticNodeData",class extends Ge{constructor(t,e,s){var a,i;super(t,e,s);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&&s.parentValueLevel){let n=e;for(let o=1;o<s.parentValueLevel;o++)n=n?.parent;n?.deData&&(this.deData=n.deData),this.value=r||n?.value}this.srfkey=((a=this.deData)==null?void 0:a.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,s={}){this.isOriginField=!1,this.isRequestNeed=!0,this.uiKey=t,this.dataKey=e,w(s.isOriginField)||(this.isOriginField=s.isOriginField),w(s.dataType)||(this.dataType=s.dataType)}convertVal(t){if(!this.dataType)return t;if(Bt.isNumber(this.dataType)){const e=!w(t)&&t!==""?Number(t):t;return Number.isNaN(e)?(ibiz.log.debug("".concat(t,"\u4E0D\u80FD\u8F6C\u6362\u6210\u6570\u5B57")),t):e}return t}}),Nn=d("CalendarItemData",class{constructor(t,e){this.model=t,this.data=e}get deData(){return this.data}get navId(){return"".concat(this.itemType,"@").concat(this.id)}get itemType(){return this.model.itemType}get bkColor(){const t=this.model.bkcolorAppDEFieldId;return t&&this.data[t]?this.data[t]:this.model.bkcolor}get beginTime(){const t=this.model.beginTimeAppDEFieldId;return t?this.data[t]:void 0}get color(){const t=this.model.colorAppDEFieldId;return t&&this.data[t]?this.data[t]:this.model.color}get content(){const t=this.model.contentAppDEFieldId;return t?this.data[t]:void 0}get endTime(){const t=this.model.endTimeAppDEFieldId;return t?this.data[t]:void 0}get icon(){const t=this.model.iconAppDEFieldId;return t?this.data[t]:void 0}get id(){const t=this.model.idAppDEFieldId;return t&&this.data[t]?this.data[t]:this.data.srfkey}get level(){const t=this.model.levelAppDEFieldId;return t?this.data[t]:void 0}get tag2(){const t=this.model.tag2AppDEFieldId;return t?this.data[t]:void 0}get tag(){const t=this.model.tagAppDEFieldId;return t?this.data[t]:void 0}get text(){const t=this.model.textAppDEFieldId;return t?this.data[t]:void 0}get tips(){const t=this.model.tipsAppDEFieldId;return t?this.data[t]:void 0}});function Rn(t,e){e.forEach(s=>{Object.prototype.hasOwnProperty.call(t,s)||Object.defineProperty(t,s,{enumerable:!0,configurable:!0,writable:!0,value:void 0})})}var Ln=["REGION","REGION2","REGION3","REGION4"],Tn=d("MapData",class{constructor(t,e){this._longitude=void 0,this._latitude=void 0,this._areaCode=void 0,this._tooltip=void 0,this._value=void 0,this._text=void 0,this._symbol=void 0;const{id:s,itemStyle:a,longitudeAppDEFieldId:i,latitudeAppDEFieldId:r,textAppDEFieldId:n,dataAppDEFieldId:o,tipsAppDEFieldId:u,sysImage:c}=e,l=new Map;return this._id=s+t.srfkey,this._itemStyle=a,this._mapItemId=s,Ln.includes(this._itemStyle)?i&&l.set("_areaCode",i):(i&&l.set("_longitude",i),r&&l.set("_latitude",r)),u&&l.set("_tooltip",u),n&&l.set("_text",n),o&&l.set("_value",o),c&&(this._symbol=c.rawContent||c.imagePath),new Proxy(this,{set(h,p,E){return Object.prototype.hasOwnProperty.call(t,p)?t[p]=E:l.has(p)?t[l.get(p)]=E:h[p]=E,!0},get(h,p,E){if(h[p]!==void 0)return h[p];if(l.has(p))return t[l.get(p)];if(t[p]!==void 0)return t[p]},ownKeys(h){const p=[...new Set([...Object.keys(h),...Object.keys(t)])];return Rn(h,p),p}})}});function Bn(t,e){e.forEach(s=>{Object.prototype.hasOwnProperty.call(t,s)||Object.defineProperty(t,s,{enumerable:!0,configurable:!0,writable:!0,value:void 0})})}var On=d("PanelData",class{constructor(t,e){const s=new Et,a={},i={};return t.forEach(r=>{var n;a[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(a,n)?a[n]?e[a[n]]=o:r[n]=o:e[n]=o,s.emit("change",n),a[n]&&a[n]!==n&&s.emit("change",a[n]),i[n]&&i[n]!==n&&s.emit("change",i[n]),!0},get(r,n,o){return n==="_evt"?s:a[n]?e[a[n]]:Object.prototype.hasOwnProperty.call(e,n)?e[n]:r[n]},ownKeys(r){const n=Object.keys(e);return Bn(r,n),n}})}destroy(){this._evt.reset()}}),_n=d("MqttService",class{constructor(t,e,s){if(this.mqttTopic=t,this.token=e,this.appId=s,this.evt=new Et,this.options={connectTimeout:6e3,clientId:Y(),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 rs.import("mqtt/dist/mqtt.min"),e=t.default?t.default:t,{location:s}=window;this.client=e.connect("ws://".concat(s.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",a=>{ibiz.log.error("mqtt error",a)}),this.client.on("message",(a,i)=>{this.evt.emit("message",JSON.parse(i.toString())),ibiz.log.debug("mqtt message",a,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()}}),Mn=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 s=this.constructorCache.get(t);let a;s?a=await s(e):a=new vn(e),this.cache.set(t,a)}return this.cache.get(t)}clearTempCache(t){this.cache.forEach(e=>{e.local.clear(t)})}async exec(t,e,s,a,i){return(await this.getService(t)).exec(e,s,a,i)}}),Ta=class si{constructor(){ibiz.commands.register(si.TAG,this.exec.bind(this))}async exec(e,s,a={},i={}){const r=v(s),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||a.srfuf===0)&&n.appDataEntityId){const u=_(n.appDataEntityId);r.srfkey&&(r[u]=r.srfkey,r.srfkey=void 0),a.srfuf===0&&(r[u]=void 0,delete a.srfuf)}if(n.redirectView){const u=await ibiz.hub.getAppView(e);return Ys(u,r,a,i)}const{openMode:o="INDEXVIEWTAB"}=n;switch(i.openMode||o){case"INDEXVIEWTAB":return i.noWaitRoute?(this.openIndexViewTab(n,r,a),{ok:!0}):this.openIndexViewTab(n,r,a);case"POPUP":throw new D(n,"\u672A\u652F\u6301\u7684\u89C6\u56FE\u6253\u5F00\u6A21\u5F0F: POPUP");case"POPUPMODAL":return this.openModal(n,r,a);case"POPUPAPP":throw new D(n,"\u672A\u652F\u6301\u7684\u89C6\u56FE\u6253\u5F00\u6A21\u5F0F: POPUPAPP");case"POPOVER":return this.openPopover(n,i.event,r,a);case"DRAWER_LEFT":case"DRAWER_RIGHT":case"DRAWER_TOP":case"DRAWER_BOTTOM":return this.openDrawer(n,r,a);case"USER":return this.openUserCustom(n,r,a);default:return this.openIndexViewTab(n,r,a)}}openIndexViewTab(e,s,a={}){return ibiz.openView.root(e.id,s,a)}async openModal(e,s,a={}){return ibiz.openView.modal(e.id,s,a)}async openPopover(e,s,a,i={}){if(!s)throw new f("\u6C14\u6CE1\u6253\u5F00\u7F3A\u5C11event");return ibiz.openView.popover(e.id,s,a,i)}async openDrawer(e,s,a={}){return ibiz.openView.drawer(e.id,s,a)}async openUserCustom(e,s,a={}){return ibiz.openView.custom(e.id,s,a)}};Ta.TAG="ibiz.app-view.open";var Z=d("OpenAppViewCommand",Ta),Ba=class ai{constructor(){ibiz.commands.register(ai.TAG,this.exec.bind(this))}async exec(e,s,a={},i={}){const r=ibiz.hub.getApp(s.srfappid).getAppFunc(e);if(!r)throw new f("\u627E\u4E0D\u5230\u53EB".concat(e,"\u7684\u5E94\u7528\u529F\u80FD"));const{navigateContexts:n,navigateParams:o,appFuncType:u}=r,c=s.clone();Object.assign(c,b(n,a,s));const l=b(o,a,s);switch(u){case"APPVIEW":return this.openAppView(r,c,l,i);case"OPENHTMLPAGE":return this.openHtmlPage(r);case"PDTAPPFUNC":return this.openPdAppFunc(r,c,l);case"JAVASCRIPT":return this.executeJavaScript(r,c,l);case"CUSTOM":return this.custom(r,c,l);default:throw new D(r,"\u672A\u652F\u6301\u7684\u5E94\u7528\u529F\u80FD\u7C7B\u578B: ".concat(u))}}async openAppView(e,s,a,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,s,a,i)}openHtmlPage(e){const s=e.htmlPageUrl;window.open(s,"_blank")}openPdAppFunc(e,s,a){throw ibiz.log.warn("openPdAppFunc",e,s,a),new f("\u672A\u5B9E\u73B0")}executeJavaScript(e,s,a){throw ibiz.log.warn("executeJavaScript",e,s,a),new f("\u672A\u5B9E\u73B0")}custom(e,s,a){throw ibiz.log.warn("custom",e,s,a),new f("\u672A\u5B9E\u73B0")}};Ba.TAG="ibiz.app-func.exec";var je=d("AppFuncCommand",Ba);function Oa(){new je,new Z}var xn=d("Application",class{constructor(t){this.model=t,this.deName2DeCodeName=new Map,this.net=new os({baseURL:"".concat(ibiz.env.baseUrl,"/").concat(t.appId)}),this.configCache=new $t(t.appId,"PSSysApp",t.codeName),this.deService=new Mn(t),this.codeList=new Hr(t),this.authority=new yn(t)}get appId(){return this.model.appId}async init(){await this.authority.init(),await this.loadAppModelStyle(),ibiz.env.enableMqtt&&ibiz.appData&&(this.mqtt=new _n(ibiz.appData.mqtttopic,us(),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(a=>a.id===t)||null}async getUIAction(t){const[,e]=t.split("@");if(e){const a=(await ibiz.hub.getAppDataEntity(e,this.model.appId)).appDEUIActions.find(i=>i.id===t);if(a)return a}return this.model.appDEUIActions.find(s=>s.id===t)}async getOPPriv(t,e){var s,a;let i=(s=this.model.deopprivs)==null?void 0:s.find(r=>r.name===t);return!i&&e&&(i=(a=(await ibiz.hub.getAppDataEntity(e,this.model.appId)).deopprivs)==null?void 0:a.find(n=>n.name===t)),i}async getDEUILogic(t,e){return(await ibiz.hub.getAppDataEntity(e,this.model.appId)).appDEUILogics.find(a=>a.id===t)}}),Vn=class{parse(t){return t}},kn=class{constructor(){this.appMenu=new Vn}},Wn=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}},Un=class{constructor(){this.view=new Wn}},zn=d("FormNotifyState",(t=>(t.LOAD="LOAD",t.DRAFT="DRAFT",t.SAVE="SAVE",t))(zn||{})),Gn=d("GridNotifyState",(t=>(t.LOAD="LOAD",t.DRAFT="DRAFT",t.SAVE="SAVE",t))(Gn||{})),jn=d("PanelNotifyState",(t=>(t.LOAD="LOAD",t.DRAFT="DRAFT",t.SAVE="SAVE",t))(jn||{})),_a=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}}),Kn=d("LoadingState",class{constructor(){this.isLoading=!1,this.counter=new _a(cs)}begin(){this.isLoading=!0,this.counter.increment()}end(){this.counter.decrement(()=>{this.isLoading=!1})}}),Xn=d("CTXState",class{}),Hn=d("CTX",class{constructor(t){this.parent=t,this.isDestroyed=!1,this.evt=new Et(3e3),this.controllersMap=new Map,this.state=new Xn}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}}),Yn=d("ActivityCounter",class extends _a{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,s){this.disabled=!1,this.visible=!0,this.loading=!1,this.permitted=!0,this.noPermissionHidden=!0,this.noDataDisabled=!1,this.isInit=!1,this.name=t,this.uiActionId=s,this.appId=e}async init(){if(!this.uiActionId){this.isInit=!0;return}const t=await zt(this.uiActionId);if([,this.appDeName]=this.uiActionId.split("@"),!t)return;const{dataAccessAction:e,noPrivDisplayMode:s,actionTarget:a,uiactionMode:i,uiactionTag:r}=t;this.dataAccessAction=e,s===1?this.noPermissionHidden=!1:s===6&&(this.visible=!1),(a&&a!=="NONE"||i==="SYS"&&["Save","SaveAndExit","SaveAndNew","Edit","Remove","RemoveAndExit"].includes(r))&&(this.noDataDisabled=!0),this.isInit=!0}async calcPermission(t,e){if(!this.dataAccessAction)return;const s=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 s.authority.calcByDataAccessAction(this.dataAccessAction,t,e)}async update(t,e){this.isInit||await this.init(),await this.calcPermission(t,e),this.permitted?(this.visible=!0,this.disabled=this.noDataDisabled&&!t):(this.disabled=!0,this.visible=!this.noPermissionHidden)}}),ft=d("ButtonContainerState",class{constructor(){Object.defineProperty(this,"children",{enumerable:!1,configurable:!0,writable:!0,value:[]}),Object.defineProperty(this,"visible",{enumerable:!0,configurable:!0,get:()=>this.children.length===0?!1:!!this.children.find(t=>t.visible)})}addState(t,e){Object.defineProperty(this,t,{enumerable:!0,configurable:!0,writable:!0,value:e}),this.children.push(e)}setLoading(t){this.children.forEach(e=>{e.setLoading?e.setLoading(t):e.loading=t?e.name===t:!1})}async update(t,e){await Promise.all(this.children.map(s=>s.update(t,e)))}}),qn=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(s=>{s(t,...e)})}async asyncEmit(t,...e){const s=super.asyncEmit(t,...e),a=this.anyEventFns.map(o=>o(t,...e)),i=Promise.all(a),r=await s,n=await i;return r.concat(...n)}reset(){super.reset(),bs(this.anyEventFns)}}),Qn=d("ControllerEvent",class{constructor(t){this.getBaseArgs=t,this.isDestroyed=!1,this.evt=new qn}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 se(t,e){return(w(t)||t==="")&&(w(e)||e==="")?!1:t!==e}function Ma(t){let e=Array.isArray(t)?t[0]:t;return e&&e instanceof G&&(e=e.getOrigin()),e}function Xe(t,e,s){const a=[];return t.forEach(i=>{const{valueRuleType:r}=i,n=i.sysValueRule,o=i.defvalueRule;if(r==="SYSVALUERULE"&&n)n.ruleType==="REG"?a.push({pattern:new RegExp(n.regExCode),message:n.ruleInfo,trigger:"change blur"}):n.ruleType==="SCRIPT"&&a.push({validator:(u,c,l,h)=>{if(!c)return!0;try{B.execScriptFn({rule:u,value:c,callback:l,source:h},n.scriptCode,{isAsync:!1})}catch(p){return console.error(p),!1}return!0},trigger:"change blur"});else if(r==="DEFVALUERULE"&&o){const u=s||e;a.push({validator:(c,l,h,p)=>{if(V(p[u]))return!0;const{isPast:E,infoMessage:C}=Te(u,p,o.groupCond);return E||h(new f(C||o.ruleInfo)),!0},trigger:"change blur"})}}),a}function He(t){const e=[],{maxLength:s,minLength:a}=t,{maxValue:i,minValue:r}=t;return s&&e.push({validator:(n,o,u)=>{if(!w(o)&&o.length>s)u(new Error("\u5185\u5BB9\u957F\u5EA6\u5FC5\u987B\u5C0F\u4E8E\u7B49\u4E8E".concat(s,",\u5F53\u524D\u957F\u5EA6\u4E3A").concat(o.length)));else return!0}}),a&&e.push({validator:(n,o,u)=>{if(!w(o)&&o.length<a)u(new Error("\u5185\u5BB9\u957F\u5EA6\u5FC5\u987B\u5927\u4E8E\u7B49\u4E8E".concat(a,",\u5F53\u524D\u957F\u5EA6\u4E3A").concat(o.length)));else return!0}}),w(i)||e.push({validator:(n,o,u)=>{if(!w(o)&&ge(o)&&o>i)u(new Error("\u503C\u5FC5\u987B\u5C0F\u4E8E\u7B49\u4E8E".concat(i)));else return!0}}),w(r)||e.push({validator:(n,o,u)=>{if(!w(o)&&ge(o)&&o<r)u(new Error("\u503C\u5FC5\u987B\u5927\u4E8E\u7B49\u4E8E".concat(r)));else return!0}}),e}var $n=d("ValueExUtil",class{static mergeDefault(t){return we(t,{textSeparator:",",valueSeparator:","})}static toText(t,e){if(w(e)||e==="")return"";const{valueType:s,objectNameField:a,textSeparator:i}=this.mergeDefault(t);if(["OBJECTS","OBJECT"].includes(s)){if(!a)throw new f("\u7F3A\u5C11objectNameField");const r=a.toLowerCase();return s==="OBJECTS"?e.map(n=>n[r]||"---").join(i):e[r]}return s==="SIMPLES"?e.join(i):"".concat(e)}});function Ye(t,e){var s;const{name:a,valueType:i,defaultValue:r,valueFormat:n}=t,{data:o,context:u,params:c}=e;if(w(i)&&w(r))return;if(i==="RESET")return null;const l=o[a];if(!ve(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 L().format(n);case"PARAM":return o[r];case"SESSION":case"APPLICATION":if(!((s=ibiz.appData)!=null&&s.context))throw new f("appdata.context\u4E0D\u5B58\u5728");return ibiz.appData.context[r];case"CONTEXT":return c[r];case"UNIQUEID":return Y();default:throw new D({},"\u9ED8\u8BA4\u503C\u7C7B\u578B[".concat(i,"]\u672A\u652F\u6301"))}}}var Jn="asyncimportdata2",Zn="importdata2";function to(t){return new Promise(e=>{const s=a=>{const i=a.messageid||a.data.asyncacitonid;if(t!==i)return;const r=a.data.actionstate;(r===30||r===40)&&(e(),ibiz.mc.command.asyncAction.off(s))};ibiz.mc.command.asyncAction.on(s)})}async function eo(t,e){const s=new FormData;s.append("file",t);const a="".concat(e.codeName2.toLowerCase(),"/").concat(Jn),i=await ibiz.net.request(a,{method:"post",data:s,headers:{"Content-Type":"multipart/form-data"}});await to(i.data.asyncacitonid),ibiz.mc.command.send({srfdecodename:e.codeName},"OBJECTCREATED")}async function so(t,e){const s=new FormData;s.append("file",t);const a="".concat(e.codeName2.toLowerCase(),"/").concat(Zn);return(await ibiz.net.request(a,{method:"post",data:s,headers:{"Content-Type":"multipart/form-data"}})).data}async function xa(t,e,s){if(!ibiz.util.getExcelUtil)throw new f("ibiz.util.getExportExcel\u4E0D\u5B58\u5728");const a=await ibiz.util.getExcelUtil();if(!a)throw new f("\u5BFC\u51FA\u6A21\u5757\u52A0\u8F7D\u9519\u8BEF");try{return a.exportJsonToExcel({header:t,data:e,filename:s,autoWidth:!0}),{ok:!0}}catch{return{ok:!1}}}var qe="__self",Va=d("BaseController",class{constructor(t,e,s,a){this.model=t,this.context=e,this.params=s,this.ctx=a,this.state={},this.name="",this.evt=new Qn(this.getEventArgs.bind(this)),this.mountCounter=new Yn(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)}}),ao=class ii{constructor(e){this.msgGroupId=e,this.viewMsgMap=new Map}async init(e){var s,a;const i=ibiz.hub.getApp(e.srfappid).model,r=(s=i.appViewMsgGroups)==null?void 0:s.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((a=i.appViewMsgs)==null||a.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,s){var a,i;if(s)return(i=(a=wt(e,s))==null?void 0:a.name)==null?void 0:i.toLowerCase()}static async fetchDataSet(e,s,a){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(s.srfappid).deService.exec(i,r,s,a);return n.data.length?n.data:[]}async calcViewMessages(e,s){const a=this.msgGroup.appViewMsgGroupDetails,i=[];return a?.length&&await Promise.all(a.map(async r=>{if(this.viewMsgMap.get(r.appViewMsgId).dynamicMode===1){const o=await this.calcDynaMsgs(r,e,s);i.push(...o)}else{const o=this.calcStaticMsg(r);i.push(o)}})),i}calcStaticMsg(e){const{position:s}=e,a=this.viewMsgMap.get(e.appViewMsgId),{title:i,message:r,removeMode:n,position:o,messageType:u}=a,{userTag:c,userTag2:l,userTag3:h,userTag4:p}=a;return{title:i,message:r,position:s||o,messageType:u,removeMode:n,extraParams:{userTag:c,userTag2:l,userTag3:h,userTag4:p}}}async calcDynaMsgs(e,s,a){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,s.srfappid),E={...a},C=this.getDeFieldName(p,n);C&&(E.sort="".concat(C,",asc"));const S=await ii.fetchDataSet(i,s,E);if(!S.length)return[];const A=this.calcStaticMsg(e),y=this.getDeFieldName(p,o),F=this.getDeFieldName(p,h),I=this.getDeFieldName(p,l),N=this.getDeFieldName(p,c),z=this.getDeFieldName(p,u);return S.map(P=>{const et={};return F&&!w(P[F])&&(et.position=P[F]),y&&!w(P[y])&&(et.title=P[y]),I&&!w(P[I])&&(et.message=P[I]),N&&!w(P[N])&&(et.messageType=P[N]),z&&!w(P[z])&&(et.removeMode=P[z]),De(A,et)})}},ka=d("ViewController",class extends Va{constructor(t,e,s,a){const i=ibiz.util.layoutPanel.fill(t);super(i,Tt.create({},e),s||{},new Hn(a)),this.session={},this.modal=new wr({}),this.providers={},this.engines=[],this.slotProps={},this.counters={},this.viewLoading=new Kn,this.isCloseView=!1,this._isActive=!0,a&&a.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=js(this.model);if(t.length)t.forEach(e=>{const s=ibiz.engine.getEngine(e,this);s?this.engines.push(s):ibiz.log.warn("\u672A\u627E\u5230\u89C6\u56FE\u5F15\u64CE\u5B9E\u73B0\uFF1A",e)});else{const e=ibiz.engine.getEngine({engineCat:"VIEW",engineType:this.model.viewType},this);e&&this.engines.push(e)}}async initCounters(){const t=this.model.viewLayoutPanel,{appCounterRefs:e}=t;if(e&&e.length>0)try{await Promise.all(e.map(async s=>{const a=await Ia.getCounterByRef(s,this.context);this.counters[s.id]=a}))}catch(s){console.error(s)}}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=>{ve(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 s=zs(this.model);s&&await Promise.all(s.map(async i=>{const r=await dt(i);this.providers[i.name||i.id]=r})),await this.initCounters();const a=Gs(this.model);a.length&&(this.scheduler=ibiz.scheduler.createViewScheduler(a),this.scheduler.defaultParamsCb=()=>this.getEventArgs(),this.scheduler.hasViewEventTrigger&&this.evt.onAll((i,r)=>{this.scheduler.triggerViewEvent(r)})),this.initViewMsg(),this.engines.length&&await Promise.all(this.engines.map(i=>i.onCreated()))}async onMounted(){var t;await super.onMounted(),this.engines.length&&await Promise.all(this.engines.map(e=>e.onMounted())),(t=this.scheduler)==null||t.startTimerTrigger()}async onDestroyed(){await super.onDestroyed(),this.engines.length&&await Promise.all(this.engines.map(t=>t.onDestroyed())),this.ctx.destroy(),this.context.destroy(),this.engines=[],this.scheduler&&this.scheduler.destroy(),ibiz.log.debug("\u89C6\u56FE[".concat(this.model.name,"](").concat(this.model.id,")\u9500\u6BC1"))}handleContextParams(){this.context.srfappid=this.model.appId,(w(this.context.srfsessionid)||T(this.context.srfsessionid))&&(this.context.srfsessionid=Y());const t=this.model.appViewNavContexts;let e={};x(t)&&(e=b(t,this.params,this.context)),Object.assign(this.context,e);const s=this.model.appViewNavParams;let a={};x(s)&&(a=b(s,this.params,this.context)),Object.assign(this.params,a),this.state.isMounted&&this.callUIAction("Refresh")}async call(t,e){let s;for(const a of this.engines)if(s=await a.call(t,e),s!==void 0)break;return s}async callUIAction(t,e){const s=this.call(t,e);if(s===void 0)throw new f("\u6CA1\u6709\u5F15\u64CE\u652F\u6301\u9884\u7F6E\u754C\u9762\u884C\u4E3A".concat(t));return s}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",s=>{this.scheduler.triggerControlEvent(s.triggerControlName,s.triggerEventName,s.triggerEvent)})}async initViewMsg(){const{appViewMsgGroupId:t}=this.model;t&&(this.state.viewMessages={TOP:[],BOTTOM:[],BODY:[],POPUP:[]},this.viewMsgController=new ao(t),await this.viewMsgController.init(this.context),(await this.viewMsgController.calcViewMessages(this.context,this.params)).forEach(s=>{["TOP","BOTTOM","BODY","POPUP"].includes(s.position)&&this.state.viewMessages[s.position].push(s)}),this.state.viewMessages.POPUP.length&&this.alertViewMessage(this.state.viewMessages.POPUP))}async alertViewMessage(t){const[e,...s]=t,a={title:e.title,desc:e.message};e.extraParams.userTag&&Object.assign(a,{confirmButtonText:e.extraParams.userTag}),e.messageType==="WARN"?await ibiz.modal.warning(a):e.messageType==="ERROR"?await ibiz.modal.error(a):await ibiz.modal.info(a),s.length&&this.alertViewMessage(s)}}),Yu=d("MobViewController",class extends ka{}),qu=d("WFStepTraceViewController",class extends ka{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 s=await e.deService.getService(this.ctx.parent.view.model.appDataEntityId),a=Object.assign(this.context.clone(),this.params),i=await s.wf.getWFHistory(a);i.data&&(this.state.historyData=i.data)}}}),io=d("EditorController",class{constructor(t,e){this.style={},this.placeHolder="",this.editorParams={},this.model=t,this.parent=e,this.context=e.context,this.params=e.params}get readonly(){return!!this.model.readOnly}async init(){await this.onInit()}async onInit(){if(this.model.placeHolder&&(this.placeHolder=this.model.placeHolder),this.model.editorParams&&Object.keys(this.model.editorParams).forEach(t=>{this.editorParams[t]=this.model.editorParams[t]}),this.model.editorWidth){const t=this.model.editorWidth;t>0&&t<=1?this.style.width="".concat(t*100,"%"):this.style.width="".concat(t,"px")}if(this.model.editorHeight){const t=this.model.editorHeight;t>0&&t<=1?this.style.height="".concat(t*100,"%"):this.style.height="".concat(t,"px")}}handlePublicParams(t,e,s){const{navigateContexts:a,navigateParams:i}=this.model;let r={};a&&t&&(r=b(a,t,s,e));const n=Object.assign(e.clone(),r);let o={};return i&&t&&(o=b(i,t,s,e)),{context:n,params:o}}toObj(t){return t?new Function("return (".concat(t,");"))():void 0}toBoolean(t){return Object.is("true",t)}}),Qu=d("CodeListEditorController",class extends io{async loadCodeList(t){const{context:e,params:s}=this.handlePublicParams(t,this.context,this.params);if(this.model.appCodeListId){const a=await ibiz.hub.getApp(this.context.srfappid);let i=[];return i=await a.codeList.get(this.model.appCodeListId,e,s),i}throw new m(this.model,"\u7F16\u8F91\u5668\u7C7B\u578B[".concat(this.model.editorType,"]\uFF0C\u672A\u914D\u7F6E\u4EE3\u7801\u8868"))}}),H=d("ControlController",class extends Va{constructor(t,e,s,a){super(t,Tt.create({},e),new ls({},s),a),this.controlParams={},this.providers={},this.registerToCtx();const i=ibiz.util.layoutPanel.get("".concat(t.controlType,"_DEFAULT"));i&&(this.controlPanel=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,s)=>{this.scheduler.triggerControlEvent(s.targetName,s.eventName,s)})}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:s}=this.model;let a={};x(e)&&(a=b(e,this.params,this.context)),Object.assign(this.context,a);let i={};x(s)&&(i=b(s,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(),s={...this.params};let a=this.getData()||[];return t?.data&&(a=Array.isArray(t.data)?t.data:[t.data]),t?.context&&Object.assign(e,t.context),t?.viewParam&&Object.assign(s,t.viewParam),{context:e,params:s,data:a}}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=b(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 s;const{ctrlMsg:a}=this.model,i=(s=a?.ctrlMsgItems)==null?void 0:s.find(o=>o.name===t);let r,n;if(i&&i.content){n=w(i.timeout)?void 0:i.timeout/1e3;const o={...this.getEventArgs()};e?.data&&(o.data=e.data),r=B.execScriptFn(o,"`".concat(i.content,"`"),{isAsync:!1,singleRowReturn:!0})}else{const o="CONTROL.".concat(this.model.controlType,".").concat(t).toUpperCase();r=ibiz.i18n.t(o,""),r===o&&(r="")}if(!r&&e?.default&&(r=e.default),!r&&e?.error&&(r=r||e.error.message),!!r){if(e?.error)throw ibiz.log.error(e.error),new ce(r,n);ibiz.message.success(r,n,n===0)}}}),tt=d("MDControlController",class extends H{constructor(){super(...arguments),this.fieldIdNameMap=new Map}get _evt(){return this.evt}initState(){super.initState(),this.state.items=[],this.state.selectedData=[],this.state.searchParams={},this.state.noSort=!1,this.state.sortQuery="",this.state.curPage=1,this.state.size=20,this.state.total=0,this.state.isLoaded=!1,this.state.singleSelect=!0,this.state.mdctrlActiveMode=0,this.state.groups=[]}async onCreated(){var t;await super.onCreated(),this.dataEntity=await ibiz.hub.getAppDataEntity(this.model.appDataEntityId),(t=this.dataEntity.appDEFields)==null||t.forEach(s=>{this.fieldIdNameMap.set(s.id,s.name)});const e=this.onDataChange.bind(this);this.onDataChange=Vt(s=>{e(s)},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:s,sortQuery:a,noSort:i}=this.state,r={...this.params};return s&&(r.page=e-1,r.size=s),!i&&a&&(r.sort=a),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,s=t.isLoadMore===!0;e?this.state.curPage=1:s&&(this.state.curPage+=1);const{context:a}=this.handlerAbilityParams(t),i=await this.getFetchParams(t?.viewParam),r=await this.service.fetch(a,i);typeof r.total=="number"&&(this.state.total=r.total),s?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,s)=>{e.srfserialnum=s+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:s,data:a}=this.handlerAbilityParams(t);if(!a?.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=_(this.model.appDataEntityId);await nt(a.map(async n=>{if(n.srfuf!==0){const o=e.clone();o[r]=n.srfkey,await this.service.remove(o,s),i=!0}this.afterRemove(n)})),t?.silent!==!0&&this.actionNotification("REMOVESUCCESS",{data:a,default:"\u6570\u636E[".concat(a.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:a}),r}finally{await this.endLoading()}this.state.selectedData=[],await this._evt.emit("onRemoveSuccess",void 0)}afterRemove(t){const e=this.state.items.findIndex(s=>s.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;ds(e,t)||(this.state.selectedData=t,this._evt.emit("onSelectionChange",{data:t}))}async onRowClick(t){const{selectedData:e}=this.state,s=e.filter(a=>a.srfkey!==t.srfkey);s.length===e.length?this.setSelection(this.state.singleSelect?[t]:e.concat([t])):this.setSelection(s),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:s}=this.model,a=await ibiz.hub.getAppDataEntity(e);if(!((t=a.appDEDataImports)==null?void 0:t.find(n=>n.id===s)))throw new f("\u65E0\u5BFC\u5165\u6A21\u578B\uFF01");const r=ibiz.overlay.createModal("DataImport",{dismiss:()=>r.dismiss(),appDataEntity:a},{width:"auto",placement:"center"});r.present(),await r.onWillDismiss()}async exportData(t){}}),ro=d("AppMenuController",class extends H{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,s=!0){const a=le(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 i=this.context.clone();this.routeDepth&&s&&Object.assign(i,{toRouteDepth:this.routeDepth+1}),await ibiz.commands.execute(je.TAG,a.appFuncId,i,this.params)}initMenuItemState(t){var e;const s={permitted:!0,visible:!0};if(t.hidden)s.visible=!1;else{let a=!0;t.accessKey&&(a=this.app.authority.calcByResCode(t.accessKey));let i=a;if((e=t.appMenuItems)!=null&&e.length){const r=t.appMenuItems.map(n=>this.initMenuItemState(n).visible);i=i&&r.includes(!0)}s.permitted=a,s.visible=i}return this.state.menuItemsState[t.id]=s,s}getAllItems(){const t=[],e=s=>{s.forEach(a=>{t.push(a),a.appMenuItems&&a.appMenuItems.length>0&&e(a.appMenuItems)})};return e(this.model.appMenuItems),t}getCounter(t){const{counters:e}=this.ctx.view;return e[t]?e[t]:null}}),$u=d("AppMenuIconViewController",class extends ro{async onClickMenuItem(t,e){const s=le(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 a=this.context.clone();this.routeDepth===1&&Object.assign(a,{toRouteDepth:1}),await ibiz.commands.execute(je.TAG,s.appFuncId,a,this.params)}}),no=d("CalendarService",class extends st{async search(t,e={}){const{sysCalendarItems:s}=this.model;if(!s)return[];const a=s.map(async n=>{const o=n.appDEDataSetId||"fetchdefault";return this.exec2(o,t,e,void 0,n.appDataEntityId)});return(await Promise.all(a)).map((n,o)=>this.setCalendarConfigData(n.data,o)).flat()}setCalendarConfigData(t,e){const{sysCalendarItems:s}=this.model;if(!s)throw new f("\u672A\u627E\u5230\u65E5\u5386\u9879\u6A21\u578B");const a=s[e];if(!a)throw new f("\u672A\u627E\u5230\u65E5\u5386\u9879\u6A21\u578B");return t.map(i=>new Nn(a,i))}async exec2(t,e,s={},a={},i=this.model.appDataEntityId){return await this.app.deService.exec(i,t,e,s,a)}}),Ju=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 no(this.model),await this.service.init(this.context)}async load(t={}){const e=t.isInitialLoad===!0,{context:s}=this.handlerAbilityParams(t),a=await this.getFetchParams(t?.viewParam);await this.startLoading();let i;try{i=await this.service.search(s,a)}finally{await this.endLoading()}return await this.afterLoad(t,i),this.state.isLoaded=!0,this.state.items=i,await this.evt.emit("onLoadSuccess",{isInitialLoad:e}),i}getCurSelectDate(t){const{selectedDate:e}=this.state,{srfstartdate:s,srfenddate:a}=t;if(!s||!a){const i=new Date(e.getFullYear(),e.getMonth(),1),r=new Date(e.getFullYear(),e.getMonth()+1,1);return{srfstartdate:L(i).format("YYYY-MM-DD HH:mm:ss"),srfenddate:L(r).format("YYYY-MM-DD HH:mm:ss")}}return{srfstartdate:s,srfenddate:a}}async getFetchParams(t={}){const{curPage:e,size:s,sortQuery:a,noSort:i}=this.state,r={...this.params};!i&&a&&(r.sort=a),await this._evt.emit("onBeforeLoad",void 0),Object.assign(r,{...this.state.searchParams}),s&&(r.page=e-1,r.size=s),t&&Object.assign(r,t);const n=this.getCurSelectDate(r);return Object.assign(r,n),r}async onRowClick(t){const{selectedData:e}=this.state,s=e.filter(a=>a.deData.srfkey!==t.deData.srfkey);s.length===e.length?this.setSelection(this.state.singleSelect?[t]:e.concat([t])):this.setSelection(s),this.state.mdctrlActiveMode===1&&await this.setActive(t)}setSelectDate(t){this.state.selectedDate=t}});L.extend(oi),L.extend(ci),L.extend(di),L.extend(pi),L.extend(mi);var Qe="$default_group",vt=class{constructor(t,e){this.model=t,this.chartGenerator=e,this.staticOptions={},this.autoCompleteCategory=!0,this.model=t,this.chartGenerator=e;const{chartSeriesEncode:s,caption:a,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}=s||{};this.xAxisIndex=pe(n),this.yAxisIndex=pe(o),this.seriesName=a||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,s=!1){if(w(e))return;if(w(t))return e;const a=this.chartGenerator.codeListMap.get(t);if(a?.length){const i=a.find(r=>r.value===e);if(i)return i.text}return s?void 0:e}calcGroupData(t){this.groupData={};const e=this.groupData,{seriesCodeListId:s,catalogCodeListId:a}=this.model;return t.forEach(i=>{let r=Qe;if(this.groupField){const o=this.translateVal(s,i[this.groupField]);if(w(o))return;r=o}e[r]||(e[r]=new Map,a&&this.autoCompleteCategory&&this.chartGenerator.codeListMap.get(a).forEach(u=>{e[r].set(u.text,{value:0})}));const n=this.translateVal(a,i[this.catalogField],!0);n&&(e[r].get(n)||e[r].set(n,{value:0}),e[r].get(n).value=xt(e[r].get(n).value,i[this.valueField]),e[r].get(n).deData=i)}),e}calcGroupSeries(t){return Object.keys(t).map(e=>{const s=t[e],a=this.calcSeriesData(s);let i={...this.staticOptions,data:a};return e!==Qe&&(i.name=e),this.seriesUserParam&&(i=Ct(i,this.seriesUserParam)),i})}calcSeriesData(t){const e=[];return t.forEach((s,a)=>{var i;e.push([a,s.value,(i=s.deData)==null?void 0:i.srfkey])}),e}calcByData(t){const e=this.dataPreprocess(t),s=this.calcGroupData(e);return this.addTimeData(s),this.calcGroupSeries(s)}getSrfkeyByParams(t){return t.value[2]}dataPreprocess(t){const e=[];t.forEach(a=>{e.push(v(a))});const{groupMode:s}=this.model;return s&&e.forEach(a=>{let i="";if(s==="DAY"||s==="YEAR"||s==="MONTH"){if(s==="DAY"?i="YYYY-MM-DD":s==="YEAR"?i="YYYY":s==="MONTH"&&(i="YYYY-MM"),a[this.catalogField]){const r=L(a[this.catalogField]).format(i);a[this.catalogField]=r}}else if(s==="QUARTER"){if(a[this.catalogField]){const r="".concat(L(a[this.catalogField]).format("YYYY"),"-").concat(L(a[this.catalogField]).quarter());a[this.catalogField]=r}}else if(s==="YEARWEEK"&&a[this.catalogField]){const r="".concat(L(a[this.catalogField]).format("YYYY"),"-").concat(L(a[this.catalogField]).week());a[this.catalogField]=r}}),e}sortTimeData(t){const{groupMode:e}=this.model;Object.keys(t).forEach(s=>{const a=t[s];let i=[];e==="DAY"||e==="YEAR"||e==="MONTH"?i=Array.from(a.keys()).sort((n,o)=>L(n).diff(L(o))):(e==="QUARTER"||e==="YEARWEEK")&&(i=Array.from(a.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,a.get(n))}),t[s]=r})}addTimeData(t){const{groupMode:e}=this.model;if(!e||e==="CODELIST")return;const s=[];Object.keys(t).forEach(r=>{t[r].forEach((n,o)=>{s.push(L(o))})});const a=L.max(s),i=L.min(s);if(e==="DAY"){let r=i;const n=a;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=a.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=a.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=L("".concat(l,"-12-31")).isoWeek();for(let p=1;p<=h;p++){const E="".concat(l,"-").concat(p);Object.keys(t).forEach(C=>{t[C].get(E)||t[C].set(E,{value:0})})}}}this.sortTimeData(t)}},oo=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:s}=this.model;return s&&(t.step="middle"),t}},uo=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}},co=class extends vt{calcStaticOptions(){const t=super.calcStaticOptions();return t.label.formatter="{b}: {d}%({c})",t.label.position="outer",t}calcSeriesData(t){const e=[];return t.forEach((s,a)=>{var i;e.push({name:a,value:[s.value,(i=s.deData)==null?void 0:i.srfkey]})}),e}getSrfkeyByParams(t){return t.value[1]}},lo=class extends vt{calcStaticOptions(){const t=super.calcStaticOptions();return t.label.formatter="{b}: {d}%({c})",t.label.position="outside",t}calcSeriesData(t){const e=[];return t.forEach((s,a)=>{var i;e.push({name:a,value:[s.value,(i=s.deData)==null?void 0:i.srfkey]})}),e}getSrfkeyByParams(t){return t.value[1]}},ho=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}},po=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 s=this.indicator[t];(!s||s.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}))}}},fo=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 po(this.chartGenerator.radarMap.size));const s=this.chartGenerator.radarMap.get(this.catalogField);Object.values(e).forEach(a=>{a.forEach((i,r)=>{s.updateIndicator(r,i.value)})})}calcByData(t){const e=this.groupData,s=this.chartGenerator.radarMap.get(this.catalogField),a=Object.keys(e).map(r=>{const n=e[r],o=s.indicatorKeys.map(u=>n.has(u)?n.get(u):0);return{name:r===Qe?this.seriesName:r,value:o}});let i={...this.staticOptions,data:a};return this.seriesUserParam&&(i=Ct(i,this.seriesUserParam)),i}getSrfkeyByParams(t){return t.value[1]}};function $e(t){const e={};return t&&Object.keys(t).forEach(s=>{const a=s.indexOf(".");if(a===-1)return;const i=s.slice(a+1);if(i)try{e[i]=JSON.parse(t[s])}catch{e[i]=t[s]}}),e}var mo=class{constructor(t){this.model=t,this.staticOptions={tooltip:{show:!0}},this.options={},this.seriesGenerators=[],this.radarMap=new Map,this.codeListMap=new Map;const{dechartTitle:e,dechartLegend:s,chartXAxises:a,chartYAxises:i,userParam:r}=t;e&&(this.staticOptions.title=this.calcTitleOption(e)),s&&(this.staticOptions.legend=this.calcLegendOption(s)),a?.length&&(this.staticOptions.xAxis=this.calcXYAxisOption(a)),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 s;switch(e.seriesType){case"line":s=new oo(e,this);break;case"bar":s=new uo(e,this);break;case"scatter":s=new ho(e,this);break;case"pie":s=new lo(e,this);break;case"funnel":s=new co(e,this);break;case"radar":s=new fo(e,this);break;default:ibiz.log.error("\u56FE\u8868\u6682\u672A\u652F\u6301\u5E8F\u5217\u7C7B\u578B".concat(e.seriesType));break}s&&this.seriesGenerators.push(s)})}calcTitleOption(t){const{showTitle:e,title:s,subTitle:a,titlePos:i}=t,r={show:e,text:s,subtext:a};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:s}=t,a={};a.show=e;const i=s?.toLowerCase();return i==="left"||i==="right"?(a.left=i,a.top="middle",a.orient="vertical"):i==="bottom"&&(a.top=i),a}calcXYAxisOption(t){const e=[];return t.forEach(s=>{const{position:a,dataShowMode:i,userParam:r}=s;let n={type:s.echartsType,name:s.caption,max:s.maxValue,min:s.minValue,position:a,axisLabel:{formatter:o=>i===1?o.length>4?"".concat(o.slice(0,4).split("").join(`
2
2
  `),`
3
3
  ...`):o.split("").join(`
4
- `):i===2&&o.length>4?"".concat(o.slice(0,4),"..."):o,rotate:i===3?45:0}};r&&(n=Ct(n,$e(r))),e.push(n)}),e}async init(t,e){await this.loadCodeList(t,e),this.entity=await ibiz.hub.getAppDataEntity(this.model.appDataEntityId),this.initSeriesGenerators()}getFieldKey(t){const e=this.entity.appDEFields.find(a=>a.name===t);return e?e.codeName.toLowerCase():t.toLowerCase()}async loadCodeList(t,e){var a;if(this.codeListMap.clear(),!((a=this.model.dechartSerieses)!=null&&a.length))return;const s=ibiz.hub.getApp(t.srfappid),i=async r=>{if(!r||this.codeListMap.has(r))return;const n=await s.codeList.get(r,t,e);this.codeListMap.set(r,n)};await Promise.all(this.model.dechartSerieses.map(async r=>{const{seriesCodeListId:n,catalogCodeListId:o}=r;await i(n),await i(o)}))}calcOptionsByData(t){this.radarMap.clear(),this.options={series:[],radar:[]},this.seriesGenerators.forEach(a=>{a.model.seriesType==="radar"&&a.calcRadarCoordSystem(t)}),this.radarMap.size&&(this.options.radar=[...this.radarMap.values()].map(a=>a.toOptions()));const e=[];return this.seriesGenerators.forEach(a=>{const s=a.calcByData(t);s instanceof Array?e.push(...s):e.push(s)}),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}getSrfkeyByParams(t){const e=this.seriesGenerators[t.seriesIndex];if(!e)throw new f("\u627E\u4E0D\u5230".concat(t.seriesIndex,"\u5E8F\u5217\u7684generator\uFF01"));return e.getSrfkeyByParams(t)}},lo=d("ChartService",class extends at{}),Xu=d("ChartController",class extends tt{initState(){super.initState(),this.state.size=1e3}async onCreated(){await super.onCreated(),this.service=new lo(this.model),await this.service.init(this.context),this.generator=new co(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.getSrfkeyByParams(e),s=this.state.items.find(i=>i.srfkey===a);console.log("\u5B9E\u4F53\u6570\u636E",s)})}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()}}),Hu=d("CaptionBarController",class extends H{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 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{};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=v(ibiz.env);break;default:throw new D(e,"\u6682\u672A\u652F\u6301\u6E90\u503C\u7C7B\u578B".concat(r))}if(o&&n)try{Array.isArray(o)?o=o[Number(n)]:o=B.execScriptFn({srcValue:o},"srcValue.".concat(n),{singleRowReturn:!0,isAsync:!1})}catch(u){throw ibiz.log.error("\u4ECE\u6E90\u53C2\u6570\u53D6\u5C5E\u6027".concat(n,"\u62A5\u9519\uFF0C\u6E90\u53C2\u6570\uFF1A"),o),u}return o}var po=class extends ks{constructor(t){super(),this.model=t,this.srcParam=t.srcLogicParamId,this.dstParam=t.dstLogicParamId}get dstField(){return this.model.dstFieldName}get op(){return this.model.condOP}get type(){return this.model.paramType}get value(){return this.model.paramValue}test(t,e,a){const s=st(t,{srcDEUILogicParamId:this.dstParam,srcFieldName:this.dstField});switch(this.type){case"ENTITYFIELD":{if(!this.value)throw new m(this.model,"\u5F53\u524D\u6761\u4EF6\u503C\u7C7B\u578B\u4E3A[\u6570\u636E\u5BF9\u8C61\u5C5E\u6027],\u7F3A\u5C11\u914D\u7F6E\u6761\u4EF6\u503C");const i=a[this.value]!=null?a[this.value]:e[this.value];return $(s,this.op,i)}case"SRCENTITYFIELD":{if(!this.value)throw new m(this.model,"\u5F53\u524D\u6761\u4EF6\u503C\u7C7B\u578B\u4E3A[\u6E90\u6570\u636E\u5BF9\u8C61\u5C5E\u6027],\u7F3A\u5C11\u914D\u7F6E\u6761\u4EF6\u503C");const i=st(t,{srcDEUILogicParamId:this.srcParam,srcFieldName:this.value});return $(s,this.op,i)}case"CURTIME":throw new D(this.model,"\u6682\u672A\u652F\u6301\u6761\u4EF6\u503C\u7C7B\u578B\u4E3A[\u5F53\u524D\u65F6\u95F4]");default:return $(s,this.op,this.value)}}},fo=class ii extends ks{constructor(e){super(),this.model=e;const a=e.deuilogicLinkConds||[];this.conds=a.map(s=>s.logicType==="SINGLE"?new po(s):new ii(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}},mo=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 fo(a))}async exec(t){const{linkMode:e}=this.model,{context:a,data:s}=t;switch(e||0){case 0:return this.groupCond?this.groupCond.test(t,a,s&&s.length>0?s[0]:{}):!0;case 1:return!0;case 2:throw new D(this.model,"\u672A\u652F\u6301\u7684\u903B\u8F91\u8FDE\u63A5\u7C7B\u578B: \u5F02\u6B65\u7ED3\u675F");case 3:throw new D(this.model,"\u672A\u652F\u6301\u7684\u903B\u8F91\u8FDE\u63A5\u7C7B\u578B: \u5F02\u6B65\u62D2\u7EDD");case 9:throw new D(this.model,"\u672A\u652F\u6301\u7684\u903B\u8F91\u8FDE\u63A5\u7C7B\u578B: \u5F02\u5E38\u5904\u7406");default:throw new D(this.model,"\u672A\u652F\u6301\u7684\u903B\u8F91\u8FDE\u63A5\u7C7B\u578B:".concat(e))}}},M=class{constructor(t){this.model=t,this.links=(t.deuilogicLinks||[]).map(e=>new mo(e))}},Eo=class extends M{async exec(t){const{dstAppDataEntityId:e,dstAppDEActionId:a,dstDEUILogicParamId:s,retDEUILogicParamId:i}=this.model;if(!e)throw new m(this.model,"\u672A\u6307\u5B9A\u5E94\u7528\u5B9E\u4F53");if(!a)throw new m(this.model,"\u672A\u6307\u5B9A\u5B9E\u4F53\u884C\u4E3A");const r=t.params[s],o=await ibiz.hub.getApp(t.context.srfappid).deService.exec(e,a,t.context,r,t.viewParam);o.ok&&(t.params[i]=o.data)}},go=class extends M{async exec(t){const{dstAppDEUIActionId:e,dstDEUILogicParamId:a}=this.model,{data:s,parameters:i}=t;if(!e)throw new m(this.model,"\u672A\u914D\u7F6E\u754C\u9762\u884C\u4E3A");let r=[s];if(a){const n=t.params[a];n instanceof Array?r=n:r=[n]}await U.execAndResolved(e,{...i,context:t.context,params:t.viewParam,data:r})}},Co=class extends M{async exec(t){}},Do=class extends M{async exec(t){t.isEndNode=!0;const{returnType:e,rawValue:a,returnParamId:s}=this.model;if(e)switch(e){case"NONEVALUE":t.result=void 0;break;case"NULLVALUE":t.result=null;break;case"SRCVALUE":t.result=ibiz.util.rawValue.format(a);break;case"LOGICPARAM":t.result=t.params[s];break;case"LOGICPARAMFIELD":case"BREAK":default:throw new D(this.model,"\u6682\u672A\u652F\u6301\u7684\u7ED3\u675F\u8282\u70B9\u8FD4\u56DE\u503C\u7C7B\u578B: ".concat(e))}}},wo=class extends M{async exec(t){const e=this.model.deuilogicNodeParams;if(e?.length)for(const a of e)switch(a.paramAction){case"SETPARAMVALUE":await this.setParamValue(a,t);break;case"RESETPARAM":await this.resetParam(a,t);break;case"COPYPARAM":await this.copyParam(a,t);break;case"BINDPARAM":await this.bindParam(a,t);break;case"RENEWPARAM":await this.renewParam(a,t);break;case"APPENDPARAM":await this.appendParam(a,t);break;case"SORTPARAM":await this.sortParam(a,t);break;default:throw new D(a,"\u6682\u672A\u652F\u6301\u903B\u8F91\u5904\u7406\u53C2\u6570\u64CD\u4F5C".concat(a.paramAction))}}setParamValue(t,e){const{dstFieldName:a,dstDEUILogicParamId:s}=t;if(!s)throw new f("\u6CA1\u6709\u76EE\u6807\u53C2\u6570\u5BF9\u8C61id");let i=a;e.isEntityParam(s)&&(i=i?.toLowerCase());const r=st(e,t);if(i)try{B.execScriptFn({srcVal:r,dstParam:e.params[s]},"dstParam.".concat(a," = srcVal"),{singleRowReturn:!1,isAsync:!1})}catch(n){throw ibiz.log.error("\u7ED9\u76EE\u6807\u53C2\u6570\u5C5E\u6027".concat(a,"\u8D4B\u503C\u62A5\u9519\uFF0C\u76EE\u6807\u53C2\u6570\uFF1A"),e.params[s]),n}else e.params[s]=r}copyParam(t,e){const{dstDEUILogicParamId:a}=t,s=st(e,t);e.params[a]=v(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])}},vo=class extends M{async exec(t){t.isEndNode=!0;const{invokeMethod:e,invokeCtrlId:a,invokeParamId:s}=this.model;if(!a)throw new m(this.model,"\u6CA1\u6709\u914D\u7F6E\u754C\u9762\u5BF9\u8C61");if(!s)throw new m(this.model,"\u6CA1\u6709\u914D\u7F6E\u64CD\u4F5C\u53C2\u6570");if(!e)throw new m(this.model,"\u6CA1\u6709\u914D\u7F6E\u8C03\u7528\u65B9\u6CD5");const i=t.params[s];if(!i)throw new f("\u6CA1\u6709\u627E\u5230\u64CD\u4F5C\u53C2\u6570".concat(s));const r=t.params[a];if(!r)throw new f("\u6CA1\u6709\u627E\u5230\u754C\u9762\u5BF9\u8C61".concat(a));if(!r[e]||!Pa(r[e]))throw new f("\u6CA1\u6709\u627E\u5230\u8C03\u7528\u65B9\u6CD5".concat(e));await r[e](i)}},Ao=class extends M{async exec(t){const{dstDEUILogicParamId:e,srcDEUILogicParamId:a}=this.model;if(!e||!a)throw new m(this.model,"\u7F3A\u5C11\u76EE\u6807\u53C2\u6570\u5BF9\u8C61\u6216\u8005\u6E90\u53C2\u6570\u5BF9\u8C61\u914D\u7F6E");const s=st(t,this.model);t.params[e]=s}},Io=class extends M{constructor(){super(...arguments),this.typeMap={INFO:"info",QUESTION:"success",WARNING:"warning",ERROR:"error"}}async exec(t){const{msgBoxType:e,buttonsType:a,msgBoxParamId:s}=this.model;if(!e)throw new m(this.model,"\u7F3A\u5C11\u6D88\u606F\u7C7B\u578B\u7684\u914D\u7F6E");if(!a)throw new m(this.model,"\u7F3A\u5C11\u6309\u94AE\u7C7B\u578B\u7684\u914D\u7F6E");let{title:i}=this.model,{message:r}=this.model;if(s){const l=t.params[s];l.title&&(i=l.title),l.message&&(r=l.message)}const o={type:this.typeMap[e],title:i||"\u6D88\u606F",desc:r};let u=[];switch(a){case"YESNO":o.confirmButtonText="\u662F",o.cancelButtonText="\u5426",o.showConfirmButton=!0,o.showCancelButton=!0,u=["yes","no"];break;case"OK":o.confirmButtonText="\u786E\u5B9A",o.showConfirmButton=!0,o.showCancelButton=!1,u=["ok"];break;case"OKCANCEL":o.confirmButtonText="\u786E\u5B9A",o.cancelButtonText="\u53D6\u6D88",o.showConfirmButton=!0,o.showCancelButton=!0,u=["ok","cancel"];break;default:throw new D(this.model,"".concat(a,"\u6682\u672A\u652F\u6301"))}const c=await ibiz.modal.confirm(o);t.setLastReturn(u[c?0:1])}},yo=class extends M{async exec(t){const e=await gs(this.model);e&&await e.exec(this.model,t)}},Fo=class extends M{async exec(t){const{dstDEUILogicParamId:e,name:a}=this.model;if(!e)throw new m(this.model,"\u7F3A\u5C11\u76EE\u6807\u53C2\u6570\u5BF9\u8C61\u914D\u7F6E");const s=t.params[e];console.log("\u903B\u8F91\u8282\u70B9".concat(a,"\u64CD\u4F5C\u53C2\u6570\u503C:"),s)}},Po=class extends M{async exec(t){const{dstDEUILogicParamId:e}=this.model;if(!e)throw new m(this.model,"\u7F3A\u5C11\u76EE\u6807\u53C2\u6570\u5BF9\u8C61\u914D\u7F6E");t.resetParam(e)}},bo=class extends M{async exec(t){const{dstDEUILogicParamId:e,srcDEUILogicParamId:a}=this.model;if(!e||!a)throw new m(this.model,"\u7F3A\u5C11\u76EE\u6807\u53C2\u6570\u5BF9\u8C61\u6216\u8005\u6E90\u53C2\u6570\u5BF9\u8C61\u914D\u7F6E");const s=st(t,this.model);t.params[e]=v(s)}},So=class extends M{async exec(t){const{dstDEUILogicParamId:e,srcDEUILogicParamId:a,dstIndex:s,srcIndex:i,srcSize:r}=this.model;if(!e||!a)throw new m(this.model,"\u7F3A\u5C11\u76EE\u6807\u53C2\u6570\u5BF9\u8C61\u6216\u8005\u6E90\u53C2\u6570\u5BF9\u8C61\u914D\u7F6E");const n=st(t,this.model),o=s||0,u=i||0,c=r||n.length;t.params[e].splice(o,0,...n.slice(u,c))}},No=class extends M{async exec(t){const{dstDEUILogicParamId:e,dstSortDir:a,dstFieldName:s}=this.model;if(!e||!s)throw new m(this.model,"\u7F3A\u5C11\u76EE\u6807\u53C2\u6570\u5BF9\u8C61\u6216\u76EE\u6807\u5C5E\u6027\u914D\u7F6E");const i=s;t.params[e].sort((n,o)=>a==="ASC"?n[i]-o[i]:o[i]-n[i])}},Ro=class extends M{async exec(t){const{dstDEUILogicParamId:e}=this.model;if(!e)throw new m(this.model,"\u7F3A\u5C11\u76EE\u6807\u53C2\u6570\u5BF9\u8C61\u914D\u7F6E");t.renewParam(e)}},Lo=class extends M{async exec(t){const{dstAppDEDataSetId:e,dstAppDataEntityId:a,dstDEUILogicParamId:s,retDEUILogicParamId:i}=this.model;if(!s)throw new m(this.model,"\u7F3A\u5C11\u914D\u7F6E\u8FC7\u6EE4\u53C2\u6570");const r=t.params[s],o=await ibiz.hub.getApp(t.context.srfappid).deService.exec(a,e,t.context,r);o.ok&&(t.params[i]=o.data)}},To=class extends M{async exec(t){const{errorInfo:e}=this.model;throw new f(e)}},Bo=class extends M{async exec(t){t.isEndNode=!0;const{eventName:e,eventParamId:a,fireCtrlId:s}=this.model;if(!s)throw new m(this.model,"\u6CA1\u6709\u914D\u7F6E\u89E6\u53D1\u5BF9\u8C61");if(!e)throw new m(this.model,"\u6CA1\u6709\u914D\u7F6E\u4E8B\u4EF6\u540D\u79F0\u53C2\u6570");if(!a)throw new m(this.model,"\u6CA1\u6709\u914D\u7F6E\u4E8B\u4EF6\u53C2\u6570");const i=t.params[s];if(!i)throw new f("\u6CA1\u6709\u627E\u5230\u89E6\u53D1\u5BF9\u8C61".concat(s));const r=t.params[a];if(!r)throw new f("\u6CA1\u6709\u627E\u5230\u4E8B\u4EF6\u53C2\u6570\u5BF9\u8C61".concat(a));await i.evt.emit(e,r)}},Oo=class extends M{async exec(t){const{dstAppDELogicId:e,dstAppDataEntityId:a,dstDEUILogicParamId:s,retDEUILogicParamId:i}=this.model;if(!a)throw new m(this.model,"\u6CA1\u6709\u914D\u7F6E\u5B9E\u4F53");if(!e)throw new m(this.model,"\u6CA1\u6709\u914D\u7F6E\u5B9E\u4F53\u903B\u8F91");if(!s)throw new m(this.model,"\u6CA1\u6709\u914D\u7F6E\u4F20\u5165\u903B\u8F91\u53C2\u6570");const r=t.params[s];if(!r)throw new f("\u6CA1\u6709\u627E\u5230\u4F20\u5165\u53C2\u6570".concat(s));const n=await Ps(e,a,t.context,r,t.params);i&&(t.params[i]=n)}},_o=class{constructor(t){this.model=t}calc(t){const e=this.model.id,a=this.model,{parameters:s}=t,{context:i,params:r,data:n}=s,o=ibiz.hub.getApp(i.srfappid);if(a.codeName==="layoutPanel"){t.params[e]=s.view.layoutPanel.panelItems;return}if(a.default)a.entityListParam?t.params[e]=n||[]:t.params[e]=n&&n.length>0?n[0]:{};else if(a.activeContainerParam)t.params[e]=s.ctrl||s.view;else if(a.activeCtrlParam)t.params[e]=s.ctrl;else if(a.ctrlParam){const u=s.view.getController(a.codeName.toLowerCase());u?t.params[e]=u:ibiz.log.error("\u89C6\u56FE\u903B\u8F91\u521D\u59CB\u5316\u53C2\u6570\uFF0C\u672A\u627E\u5230".concat(a.codeName,"\u6307\u5B9A\u90E8\u4EF6\u5BF9\u8C61"))}else if(a.activeViewParam)t.params[e]=s.view;else if(a.appGlobalParam)t.params[e]=ibiz.env;else if(a.applicationParam)t.params[e]=o;else if(a.entityListParam)t.params[e]=[];else{if(a.entityPageParam)throw new D(a,"\u672A\u652F\u6301\u7684\u903B\u8F91\u53C2\u6570\u7C7B\u578B: \u5206\u9875\u67E5\u8BE2\u7ED3\u679C");if(a.entityParam)t.params[e]={};else if(a.lastReturnParam)t.initLastReturnParam(e);else if(a.navContextParam)t.params[e]=i;else{if(a.navViewParamParam)throw new D(a,"\u672A\u652F\u6301\u7684\u903B\u8F91\u53C2\u6570\u7C7B\u578B: \u89C6\u56FE\u8DEF\u7531\u53C2\u6570");if(a.routeViewSessionParam)throw new D(a,"\u672A\u652F\u6301\u7684\u903B\u8F91\u53C2\u6570\u7C7B\u578B: \u8DEF\u7531\u89C6\u56FE\u4F1A\u8BDD");if(a.simpleListParam)t.params[e]=[];else if(a.simpleParam)t.params[e]={};else if(a.viewNavDataParam)t.params[e]=r;else if(a.viewSessionParam)throw new D(a,"\u672A\u652F\u6301\u7684\u903B\u8F91\u53C2\u6570\u7C7B\u578B: \u5F53\u524D\u89C6\u56FE\u4F1A\u8BDD")}}}renew(t){const e=this.model.id,a=this.model;if(a.entityListParam||a.simpleListParam||a.entityPageParam)t.params[e]=[];else if(a.simpleParam||a.entityParam)t.params[e]={};else throw new D(a,"\u672A\u652F\u6301\u7684\u903B\u8F91\u53C2\u6570\u7C7B\u578B\u91CD\u65B0\u5EFA\u7ACB\u53D8\u91CF")}},Mo=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 Co(a);break;case"END":i=new Do(a);break;case"DEACTION":i=new Eo(a);break;case"DEUIACTION":i=new go(a);break;case"PREPAREJSPARAM":i=new wo(a);break;case"RESETPARAM":i=new Po(a);break;case"COPYPARAM":i=new bo(a);break;case"BINDPARAM":i=new Ao(a);break;case"VIEWCTRLINVOKE":i=new vo(a);break;case"MSGBOX":i=new Io(a);break;case"DEBUGPARAM":i=new Fo(a);break;case"APPENDPARAM":i=new So(a);break;case"SORTPARAM":i=new No(a);break;case"RENEWPARAM":i=new Ro(a);break;case"DEDATASET":i=new Lo(a);break;case"THROWEXCEPTION":i=new To(a);break;case"VIEWCTRLFIREEVENT":i=new Bo(a);break;case"DELOGIC":i=new Oo(a);break;case"PFPLUGIN":i=new yo(a);break;default:throw new D(a,"\u672A\u652F\u6301\u7684\u903B\u8F91\u8282\u70B9\u7C7B\u578B: ".concat(s))}this.nodes.set(a.id,i)}),t.deuilogicParams.forEach(a=>{this.params.set(a.id,new _o(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}}},Je=new Map;async function se(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 Mo(i)),await Je.get(i).exec(a),null}var U=d("UIActionUtil",class{static async exec(t,e){const a=await zt(t);if(!a)throw new f("\u6CA1\u627E\u5230".concat(t,"\u7684\u754C\u9762\u884C\u4E3A\u6A21\u578B"));return a.actionTarget==="SINGLEDATA"&&await e.view.call("Validate")===!1?{cancel:!0}:(await ms(a)).exec(a,e)}static async execAndResolved(t,e){var a,s;const i=await this.exec(t,e);if(i.closeView)e.view.modal.ignoreDismissCheck=!0,e.view.closeView({ok:!0});else if(i.refresh)switch(i.refreshMode){case 1:e.view.callUIAction("Refresh");break;case 2:(a=e.view.parentView)==null||a.callUIAction("Refresh");break;case 3:(s=e.view.getTopView())==null||s.callUIAction("Refresh");break}}}),ie=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 se(n,o,e),r}if(!await this.isConfirm(t,e))return this.returnError(r);const c=await this.execAction(t,e);if(Object.assign(r,c),r.cancel===!0)return this.returnError(r);const l={...e,context:r.nextContext||a,data:r.data||i,params:r.nextParams||s};if(t.closeEditView)this.doNextAction(t,l);else{const h=await this.doNextAction(t,l);if(h&&(Object.assign(r,h),h.cancel===!0))return this.returnError(r)}if(t.uilogicAttachMode==="AFTER"){if(!n)throw new m(t,"\u6CA1\u6709\u914D\u7F6E\u5B9E\u4F53\u754C\u9762\u903B\u8F91");await se(n,o,e)}return r}returnError(t){return Object.assign(t,{refresh:!1,closeView:!1})}async isConfirm(t,e){const a=this.calcMessage("confirm",t,e);return t.enableConfirm&&a?ibiz.confirm.warning({title:"\u64CD\u4F5C\u786E\u8BA4",desc:a}):!0}async doNextAction(t,e){const a=t.nextId;if(a)return U.exec(a,e)}async handleParams(t,e,a,s){let i=[];const r=_(t.appDataEntityId),o=(await ibiz.hub.getAppDataEntity(t.appDataEntityId,e.srfappid)).keyAppDEFieldId;switch(t.actionTarget){case"NONE":i=[];break;case"SINGLEDATA":i=[a[0]];break;case"MULTIDATA":i=a;break;case"MULTIKEY":i=r&&a.length>0?a.map(C=>({[o]:C.srfkey||C[o]})):[{}];break;case"SINGLEKEY":{const C=a[0]||{};i=r?[{[o]:C.srfkey||C[o]}]:[{}]}break}const u=e.clone(),c=[...t.navigateContexts||[]];if(r&&t.actionTarget!=="NONE"){const{valueItem:C,paramItem:S}=t,A=S||r,y=C||"srfkey";c.unshift({key:A,value:y,rawValue:!1})}const l=["MULTIKEY","MULTIDATA"].includes(t.actionTarget)&&a.length>0,h=b(c,l?Fe(c,a):a[0]||{},s,e);Object.assign(u,h);const p=t.navigateParams,E=b(p,l?Fe(p,a):a[0]||{},s,u);return{resultContext:u,resultData:i,resultParams:E}}calcMessage(t,e,a){let s,i;const{confirmMsg:r,cmlanguageRes:n,successMsg:o,smlanguageRes:u}=e;switch(t){case"confirm":s=r,i=n;break;case"success":s=o,i=u;break}if(i){const c=ibiz.i18n.t(i.lanResTag,i.defaultContent||s);c!==i.lanResTag&&(s=c)}if(s){const{data:c}=a,l={...a};return c.length===1?[l.data]=c:c.length===0&&delete l.data,B.execScriptFn(l,"`".concat(s,"`"),{isAsync:!1,singleRowReturn:!0})}}},xo=d("BackendUIActionProvider",class extends ie{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 F=await ibiz.commands.execute(Z.TAG,E,c,l,{event:r});if(!F?.ok)return n.cancel=!0,n;if(F?.ok&&F.data){h.length===0&&h.push({});const I=F.data.map(N=>{var z;return((z=N.getOrigin)==null?void 0:z.call(N))||N||{}});h.forEach(N=>{N.srfactionparam=I})}}const C=ibiz.hub.getApp(a?.srfappid),S=h.map(F=>{var I;return((I=F.getOrigin)==null?void 0:I.call(F))||F||{}}).map(F=>Object.assign(F,p)),A=["MULTIKEY","MULTIDATA"].includes(t.actionTarget),y=await C.deService.exec(o,u,c,A?S:S[0],p);if(y.ok){const F=this.calcMessage("success",t,e);F&&ibiz.message.success(F)}return Object.assign(n,{data:kt(y.data)?y.data:[y.data],nextContext:c,nextParams:p}),n}}),Vo=d("SysUIActionProvider",class extends ie{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"]])}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)||{}}}),ko=d("FrontUIActionProvider",class extends ie{async execAction(t,e){const{context:a,params:s,data:i,event:r,noWaitRoute:n}=e;let o={};switch(t.frontProcessType){case"OPENHTMLPAGE":{const u=ha.fill(t.htmlPageUrl,a,i?.[0]);window.open(u,"_blank");break}case"TOP":case"WIZARD":{const u=t.frontAppViewId;if(!u)throw new m(t,"\u672A\u914D\u7F6E\u6253\u5F00\u89C6\u56FE");const{resultContext:c,resultParams:l}=await this.handleParams(t,a,i,s),h=await ibiz.commands.execute(Z.TAG,u,c,l,{event:r,noWaitRoute:n});h?.ok||(o.cancel=!0),h?.ok&&h.data&&(o.data=h.data,o.nextContext=c,o.nextParams={...s,...l});break}case"OTHER":o=this.doOther(t,e);break;default:throw new D(t,"\u672A\u652F\u6301\u7684\u524D\u53F0\u5904\u7406\u6A21\u5F0F[".concat(t.frontProcessType,"]"))}return o}doOther(t,e){const{scriptCode:a}=t,{context:s,params:i,data:r,event:n}=e;if(a)return B.execScriptFn({context:s,params:i,data:r,el:n?.target},a)||{};throw new m(t,"\u81EA\u5B9A\u4E49\u7C7B\u578B\u7F3A\u5C11\u914D\u7F6E\u811A\u672C\u4EE3\u7801")}}),Wo=d("WFWithdrawUIActionProvider",class extends ie{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 Ws(){const t=new ko;Nt("FRONT",()=>t);const e=new xo;Nt("BACKEND",()=>e);const a=new Vo;Nt("SYS",()=>a);const s=new Wo;Nt("DEUIACTION_WFWithdraw",()=>s)}var Uo=d("ToolbarController",class extends H{get _evt(){return this.evt}initState(){super.initState(),this.state.buttonsState=new ft,this.state.viewMode="EMBED",this.state.extraButtons={}}async doUIAction(t,e,a={}){if(t.itemType==="DEUIACTION"){const s=t.uiactionId,i=await zt(s);if(!i)throw new f("\u6CA1\u6709\u627E\u5230\u754C\u9762\u884C\u4E3A\u6A21\u578B".concat(s));const r=["SYS","BACKEND","WFBACKEND"].includes(i.uiactionMode)&&i.showBusyIndicator!==!1;r&&this.state.buttonsState.setLoading(t.id);try{const o=await this.ctx.view.call("GetData")||[],u=this.getEventArgs();u.params=Object.assign(a,u.params),await U.execAndResolved(s,{...u,data:o,event:e})}finally{r&&this.state.buttonsState.setLoading("")}}}async onCreated(){await super.onCreated(),this.state.viewMode=this.ctx.view.modal.mode,k(this.model,t=>{if(t.itemType==="DEUIACTION"){const e=t,a=new pt(e.id,this.context.srfappid,e.uiactionId);this.state.buttonsState.addState(e.id,a)}},{childrenFields:["detoolbarItems"]}),await this.calcButtonState()}async onItemClick(t,e,a){const s=t.buttonType==="extra";await this._evt.emit("onClick",{event:e,eventArg:t.id,buttonType:s?"extra":"deuiaction"}),s||await this.doUIAction(t,e,a)}async calcButtonState(t,e){let a=t;if(t&&t instanceof G&&(a=t.getOrigin()),await this.state.buttonsState.update(a,e),this.scheduler){const s={};a&&(s.data=[a]),k(this.model,i=>{const r=this.state.buttonsState[i.id];if(r.visible){const n=this.scheduler.triggerItemVisible(i.id,s);n!==void 0&&(r.visible=n)}if(!r.disabled){const n=this.scheduler.triggerItemEnable(i.id,s);n!==void 0&&(r.disabled=!n)}},{childrenFields:["detoolbarItems"]})}}setExtraButtons(t,e){this.state.extraButtons[t]||(this.state.extraButtons[t]=[]),this.state.extraButtons[t].push(...e)}clearExtraButtons(t){t===void 0?this.state.extraButtons={}:this.state.extraButtons[t]=[]}initControlScheduler(t=[]){const e=[...t];k(this.model,a=>{a.controlLogics&&e.push(...a.controlLogics)},{childrenFields:["detoolbarItems"]}),super.initControlScheduler(e)}}),zo=d("ContextMenuController",class extends Uo{}),Yu=d("DashboardController",class extends H{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=_s(e.data);a&&this.dataChangeNotify(a)})}async initPortlets(t,e){if(!t?.length)return;const a=["CHART","APPMENU","TOOLBAR","LIST"];await Promise.all(t.map(async s=>{var i;if(s.controlType&&a.includes(s.controlType))return;const r=await hs(s);if(r){this.providers[s.id]=r;const n=await r.createController(s,this,e);this.portlets[s.id]=n,(i=s.controls)!=null&&i.length&&await this.initPortlets(s.controls,n)}}))}async dataChangeNotify(t){await nt(Object.values(this.portlets).map(async e=>e.dataChangeNotify(t)))}}),qu=d("CustomDashboardController",class{constructor(t){this.customModelData=[],this.layoutColNum=12,this.layoutRowH=80,this.model=null;var e,a;this.model=t,this.config=new $t(t.appId,"dynadashboard","dashboard_".concat(((e=this.model.appDataEntityId)==null?void 0:e.toLowerCase())||"app","_").concat((a=this.model.codeName)==null?void 0:a.toLowerCase()))}async loadCustomModelData(){const t=await this.config.load();return t.model&&(this.customModelData=t.model),t.colNum&&(this.layoutColNum=t.colNum),t.rowH&&(this.layoutRowH=t.rowH),this.customModelData}async saveCustomModelData(t){return await this.config.save({model:t,colNum:this.layoutColNum,rowH:this.layoutRowH})&&(this.customModelData=t),t}}),Go=d("PortletPartState",class{constructor(){this.visible=!0,this.keepAlive=!1,this.layout={width:"",height:"",extraStyle:{},extraClass:[],contentStyle:{}},this.class={container:[],containerDyna:[]},this.actionGroupState=null}}),ut=d("PortletPartController",class{get context(){return this.dashboard.context}get params(){return this.dashboard.params}get containerClass(){return[...this.state.class.container,...this.state.class.containerDyna]}constructor(t,e,a){this.model=t,this.dashboard=e,this.parent=a,this.state=this.createState()}async init(){await this.onInit()}async onInit(){this.onDataChange=this.onDataChange.bind(this);const{layoutPos:t,sysCss:e}=this.model;if(t){const{width:a,height:s}=Ut(this.model);this.state.layout.width="".concat(a),this.state.layout.height="".concat(s)}e?.cssName&&this.state.class.container.push(e.cssName),await this.initActionStates()}createState(){return new Go}onDataChange(t){let e=t.data[0];e&&e instanceof G&&(e=e.getOrigin()),e&&this.state.actionGroupState.update(e,this.dashboard.view.model.appDataEntityId)}async initActionStates(){var t;const{uiactionGroup:e}=this.model;if(!((t=e?.uiactionGroupDetails)!=null&&t.length))return;const a=new ft;e.uiactionGroupDetails.forEach(i=>{const r=i.uiactionId;if(r){const n=new pt(i.id,this.dashboard.context.srfappid,r);a.addState(i.id,n)}}),await a.update(),this.state.actionGroupState=a;const{appDataEntityId:s}=this.dashboard.view.model;s&&this.dashboard.view.evt.on("onDataChange",this.onDataChange)}async onActionClick(t,e,a=[]){const s=t.uiactionId;await U.execAndResolved(s,{context:this.dashboard.context,params:this.dashboard.params,data:a,view:this.dashboard.view,event:e})}async dataChangeNotify(t){if(this.state.actionGroupState){const{appDataEntityId:e}=this.dashboard.view.model;this.state.actionGroupState.update(t,e)}this.calcDynaClass(t)}calcDynaClass(t){if(this.model.dynaClass){const e=Dt(this.model.dynaClass,t);e.length&&(this.state.class.containerDyna=e)}}async destroyed(){ibiz.log.debug("".concat(this.model.codeName," onDestroyed")),this.dashboard.view.evt.off("onDataChange",this.onDataChange)}}),Qu=d("ContainerPortletController",class extends ut{}),$u=d("ViewPortletController",class extends ut{}),Ju=d("MenuPortletController",class extends ut{}),Zu=d("ChartPortletController",class extends ut{}),tc=d("ActionBarPortletController",class extends ut{}),ec=d("HtmlPortletController",class extends ut{}),ac=d("ListPortletController",class extends ut{}),sc=d("RawItemPortletController",class extends ut{}),Us=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)})}}),jo=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 Us(this.model),await this.service.init(this.context)}async initGroupActionStates(){var t;const{groupUIActionGroup:e}=this.model;(t=e?.uiactionGroupDetails)!=null&&t.length&&this.state.groups.forEach(async a=>{const s=new ft;e.uiactionGroupDetails.forEach(i=>{const r=i.uiactionId;if(r){const n=new pt(i.id,this.context.srfappid,r);s.addState(i.id,n)}}),await s.update(),a.groupActionGroupState=s})}async onRowClick(t){var e;super.onRowClick(t);const{groupAppDEFieldId:a}=this.model;if(a)if(this.state.groups.forEach(s=>{s.selectedData=[]}),this.state.selectedData.forEach(s=>{const i=s[a],r=this.state.groups.find(n=>n.key===i);r&&r.selectedData.push(s)}),this.state.singleSelect)this.state.groups.forEach(s=>{var i,r;let n=t;s.selectedData.indexOf(n)!==-1?(n&&n instanceof G&&(n=n.getOrigin()),n&&((i=s.groupActionGroupState)==null||i.update(n,this.model.appDataEntityId))):(r=s.groupActionGroupState)==null||r.update(void 0,this.model.appDataEntityId)});else{const s=this.state.groups.find(i=>i.children.indexOf(t)!==-1);s&&((e=s.groupActionGroupState)==null||e.update(s.selectedData[0],this.model.appDataEntityId))}}async loadMore(){this.state.total>this.state.items.length&&await this.load({isLoadMore:!0})}async afterLoad(t,e){return await this.initGroupCodeListItems(),await this.handleDataGroup(),await this.initGroupActionStates(),e}getOptItemModel(){let t=null;const{dedataViewItems:e}=this.model;if(e)for(let a=0;a<e.length;a++)e[a].itemType==="ACTIONITEM"&&(t=e[a]);return t}getOptItemAction(t){var e;const a=new ft,s=this.getOptItemModel();if(s){if(!s.deuiactionGroup)throw new m(this.model,"\u64CD\u4F5C\u9879\u6CA1\u6709\u914D\u7F6E\u754C\u9762\u884C\u4E3A\u7EC4");if(!((e=s.deuiactionGroup.uiactionGroupDetails)!=null&&e.length))return ibiz.log.debug("\u64CD\u4F5C\u9879\u754C\u9762\u884C\u4E3A\u7EC4\u6CA1\u6709\u914D\u7F6E\u754C\u9762\u884C\u4E3A"),a;s.deuiactionGroup.uiactionGroupDetails.forEach(i=>{const r=i.uiactionId;if(r){const n=new pt(i.id,this.context.srfappid,r);a.addState(i.id,n)}}),a.update(t.getOrigin())}return a}async onActionClick(t,e,a){const s=t.uiactionId;await U.execAndResolved(s,{context:this.context,params:this.params,data:[e],view:this.view,event:a})}async handleDataGroup(){const{enableGroup:t,groupMode:e,groupAppDEFieldId:a}=this.model;if(t&&e){if(!a)throw new m(this.model,"\u5206\u7EC4\u5C5E\u6027\u6CA1\u6709\u914D\u7F6E");e==="AUTO"?this.handleAutoGroup():e==="CODELIST"&&await this.handleCodeListGroup()}}handleAutoGroup(){const{groupAppDEFieldId:t}=this.model;if(t){const{items:e}=this.state,a=new Map;e.forEach(i=>{const r=i[t];w(r)||(a.has(r)||a.set(r,[]),a.get(r).push(i))});const s=[];a.forEach((i,r)=>{s.push({caption:r,key:r,children:[...i]})}),this.state.groups=s}}async initGroupCodeListItems(){const{groupCodeListId:t}=this.model;if(!t)return;const e=ibiz.hub.getApp(this.context.srfappid);this.groupCodeListItems=await e.codeList.get(t,this.context,this.params)}async handleCodeListGroup(){const{groupAppDEFieldId:t,groupCodeListId:e}=this.model;if(!e)throw new m(this.model,"\u5206\u7EC4\u4EE3\u7801\u8868\u6CA1\u6709\u914D\u7F6E");const{items:a}=this.state,s=new Map;this.groupCodeListItems.forEach(r=>{s.set(r.value,[])}),a.forEach(r=>{const n=r[t],o=s.get(n);o&&o.push(r)});const i=[];s.forEach((r,n)=>{const o=this.groupCodeListItems.find(u=>u.value===n);i.push({caption:o.text,key:o.value,children:r})}),this.state.groups=i}setSort(t,e){if(t&&e)super.setSort(t,e);else{const{minorSortAppDEFieldId:a,minorSortDir:s}=this.model;if(a&&s){const i=this.fieldIdNameMap.get(a);this.state.sortQuery="".concat(i.toLowerCase(),",").concat(s.toLowerCase())}else this.state.sortQuery=""}}onClickNew(t,e){const a={...this.params,srfgroup:e};U.execAndResolved("new",{context:this.context,params:a,data:[],view:this.view,event:t})}async onGroupToolbarClick(t,e,a){const s=t.uiactionId,i={...this.params,srfgroup:a.key};await U.execAndResolved(s,{context:this.context,params:i,data:a.selectedData||[],view:this.view,event:e})}initSortItems(){var t;if(!((t=this.model.dedataViewItems)!=null&&t.length))return;const e=[],{minorSortAppDEFieldId:a,minorSortDir:s}=this.model,i=a&&s;this.model.dedataViewItems.forEach(r=>{if(!r.enableSort)return;let{caption:n}=r;if(r.capLanguageRes&&(n=ibiz.i18n.t(r.capLanguageRes.lanResTag,r.caption)),!r.appDEFieldId)throw new m(r,"\u542F\u7528\u6392\u5E8F\u7684\u9879\u5FC5\u987B\u5173\u8054\u5B9E\u4F53\u5C5E\u6027");const o={caption:n,key:r.appDEFieldId};i&&a===r.appDEFieldId&&(o.order=s.toLowerCase()),e.push(o)}),e.length>0&&(this.state.sortItems=e)}}),Ze=d("ExpBarControlController",class extends H{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?_(u):void 0,navFilter:r,pickupDEFName:i?.pickupDEFName,navContexts:n,navParams:o},l={context:a,params:s,data:e},{resultContext:h,resultParams:p}=Wt(c,l),E=Object.assign(a.clone(),h,{currentSrfNav:e[this.navKeyName]});this.state.srfnav=e[this.navKeyName];const C={...p};return{context:E,params:C}}calcViewModelId(){var t;if(["GRID","DATAVIEW","LIST"].includes(((t=this.XDataModel)==null?void 0:t.controlType)||""))return this.XDataModel.navAppViewId;throw new f("\u591A\u8282\u70B9\u89C6\u56FE\u7531\u5B50\u7C7B\u5B9E\u73B0")}getNavViewMsg(t,e,a){const s=this.calcViewModelId(),i=this.prepareParams(this.XDataModel,t,e,a);return{key:t[this.navKeyName],context:i.context,params:i.params,viewId:s,isCache:this.isCache}}calcControlHeaderVisible(){const t=!!this.toolbarController;if(!t&&this.layoutPanel){const e=this.layoutPanel.panelItems.control_toolbar;e&&(e.state.visible=!1)}return t||!!(this.model.showTitleBar&&this.model.title)||!!this.model.enableSearch}setLayoutPanel(t){super.setLayoutPanel(t),t.evt.on("onMounted",()=>{if(!this.calcControlHeaderVisible()){const a=this.layoutPanel.panelItems.control_header;a&&(a.state.visible=!1)}})}async onRouterChange(t){this.state.srfnav!==t.srfnav&&(this.state.srfnav=t.srfnav,this.navBySrfnav())}}),ic=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}}}),rc=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)}}),nc=d("ChartExpBarController",class extends Ze{getNavViewMsg(t,e,a){var s;const i=(s=this.XDataModel.dechartSerieses)==null?void 0:s[0].navAppViewId,r=this.prepareParams(this.XDataModel,t,e,a);return{key:t[this.navKeyName],context:r.context,params:r.params,viewId:i,isCache:this.isCache}}}),zs=d("FormController",class extends H{constructor(){super(...arguments),this.details={},this.providers={},this.formItems=[]}get _evt(){return this.evt}get data(){return this.state.data}initState(){super.initState(),this.state.data=new G,this.state.isLoaded=!1,this.state.processing=!1,this.state.modified=!1}async dataChangeNotify(t){await nt(Object.values(this.details).map(async e=>e.dataChangeNotify(t)))}formStateNotify(t){Object.values(this.details).forEach(e=>{e.formStateNotify(t)})}async onCreated(){await super.onCreated(),await this.initDetailControllers(),this.dataChangeNotify=de(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 We(s);if(!i)return;e.providers[s.id]=i;const r=await i.createController(s,e,a);e.details[s.id]=r,(s.detailType==="FORMITEM"||s.detailType==="MDCTRL")&&e.formItems.push(r);const n=Gt(s);n.length&&await this.initDetailControllers(n,e,r)}))}getData(){return[this.state.data]}async setDataValue(t,e){if(!(Object.prototype.hasOwnProperty.call(this.state.data,t)&&!ae(this.state.data[t],e))){this.state.data[t]=e,this.state.processing=!0,this.state.modified=!0,await this._evt.emit("onFormDataChange",void 0);try{await this.dataChangeNotify([t])}finally{this.state.processing=!1}}}async validate(){return(await Promise.all(this.formItems.map(e=>e.validate()))).findIndex(e=>!e)===-1}actionNotification(t,e){super.actionNotification(t,{data:this.data,...e||{}})}initControlScheduler(t=[]){const e=[...t];k(this.model,a=>{a.controlLogics&&e.push(...a.controlLogics)},{childrenFields:["deformPages","deformTabPages","deformDetails"]}),super.initControlScheduler(e)}}),Ko=d("SearchFormService",class extends ee{async getDraft(t,e={}){let s={ok:!0,status:200,data:this.getFilteredData({...e})};return s=this.handleResponse(s),s}initUIDataMap(){k(this.model,t=>{if(t.detailType==="FORMITEM"){const e=t.id.toLowerCase();this.dataUIMap.set(e,new 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}}),oc=d("SearchFormController",class extends zs{async onCreated(){await super.onCreated(),this.service=new Ko(this.model),await this.service.init(this.context),await this.load()}async onMounted(){await super.onMounted(),this.state.loadDefault&&this.load()}async load(){const t={...this.params},e=await this.getDraftParams();Object.assign(t,e),await this.evt.emit("onBeforeLoadDraft",{params:t});let a;try{a=await this.service.getDraft(this.context,t)}catch(s){throw this.actionNotification("GETDRAFTERROR",{error:s}),s}return this.state.data=a.data,_t(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()}}),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}})}}),ct=d("FormDetailController",class{constructor(t,e,a){this.dynaLogicResult={visible:void 0,disabled:void 0,required:void 0},this.model=t,this.form=e,this.parent=a,this.state=this.createState()}get data(){return this.form.data}get containerClass(){return[...this.state.class.container,...this.state.class.containerDyna]}get labelClass(){return[...this.state.class.label,...this.state.class.labelDyna]}async init(){await this.onInit()}async onInit(){this.state.showMoreMode=this.model.showMoreMode;const{layoutPos:t,sysCss:e,labelSysCss:a}=this.model;if(t){const{width:s,height:i}=Ut(t);this.state.layout.width="".concat(s),this.state.layout.height="".concat(i)}e?.cssName&&this.state.class.container.push(e.cssName),a?.cssName&&this.state.class.label.push(a.cssName)}createState(){var t;return new it((t=this.parent)==null?void 0:t.state)}async dataChangeNotify(t){this.calcDynamicLogic(t),this.calcDetailDisabled(this.data),this.calcDetailVisible(this.data),this.calcDetailRequired(this.data),this.calcDynaClass(this.data)}async formStateNotify(t){this.calcDynamicLogic([],!0),this.calcDetailDisabled(this.data),this.calcDetailVisible(this.data),this.calcDetailRequired(this.data),this.calcDynaClass(this.data)}calcDynamicLogic(t,e=!1){var a;this.parent&&!this.parent.state.visible||(a=this.model.defdgroupLogics)==null||a.forEach(s=>{const i=s.relatedDetailNames||[];if(e||Mt(i,t))try{const r=Kt(this.form.data,s);switch(s.logicCat){case"ITEMBLANK":this.dynaLogicResult.required=!r;break;case"ITEMENABLE":this.dynaLogicResult.disabled=!r;break;case"PANELVISIBLE":this.dynaLogicResult.visible=r;break;default:}}catch(r){ibiz.log.error(r)}})}force(t){}calcDynaClass(t){if(this.model.dynaClass){const e=Dt(this.model.dynaClass,t);e.length&&(this.state.class.containerDyna=e)}if(this.model.labelDynaClass){const e=Dt(this.model.labelDynaClass,t);e.length&&(this.state.class.labelDyna=e)}}calcDetailDisabled(t){let{disabled:e}=this.dynaLogicResult;if(e!==!0&&this.form.scheduler){const a=this.form.scheduler.triggerItemEnable(this.model.id,{data:[t]});a!==void 0&&(e=!a)}e!==void 0&&(this.state.disabled=e)}calcDetailVisible(t){let{visible:e}=this.dynaLogicResult;if(e!==!1&&this.form.scheduler){const a=this.form.scheduler.triggerItemVisible(this.model.id,{data:[t]});a!==void 0&&(e=a)}e!==void 0&&(this.state.visible=e)}calcDetailRequired(t){let{required:e}=this.dynaLogicResult;if(e!==!0&&this.form.scheduler){const a=this.form.scheduler.triggerItemBlank(this.model.id,{data:[t]});a!==void 0&&(e=!a)}e!==void 0&&(this.state.required=e)}async onClick(t){this.form.evt.emit("onFormDetailEvent",{formDetailName:this.model.id,formDetailEventName:"onClick",event:t})}}),Xo=d("FormButtonState",class extends it{constructor(){super(...arguments),this.loading=!1}}),uc=d("FormButtonController",class extends ct{createState(){var t;return new Xo((t=this.parent)==null?void 0:t.state)}get data(){return this.form.data}async onClick(t){this.state.loading=!0;try{this.model.actionType==="UIACTION"&&await this.doUIAction(t),await this.doFormItemUpdate()}finally{this.state.loading=!1}super.onClick(t)}async doUIAction(t){const e=this.model.uiactionId;await U.execAndResolved(e,{context:this.form.context,params:this.form.params,data:[this.data],view:this.form.view,event:t,noWaitRoute:!0})}async doFormItemUpdate(){this.model.deformItemUpdateId&&await this.form.updateFormItem(this.model.deformItemUpdateId)}}),Ho=d("FormDruipartState",class extends it{constructor(){super(...arguments),this.showMask=!1}}),cc=d("FormDRUIPartController",class extends ct{constructor(){super(...arguments),this.refreshItems=["srfkey"],this.paramItem="srfkey",this.isNewData=!1}createState(){var t;return new Ho((t=this.parent)==null?void 0:t.state)}async onInit(){if(await super.onInit(),Object.assign(this.state.layout.extraStyle,{overflow:"auto"}),this.model.refreshItems){let t=this.model.refreshItems.split(";");t=t.filter(e=>!!e),this.refreshItems.push(...t)}this.model.paramItem&&(this.paramItem=this.model.paramItem)}async dataChangeNotify(t){await super.dataChangeNotify(t),Mt(this.refreshItems,t)&&this.calcViewParams()}async formStateNotify(t){await super.formStateNotify(t),this.isNewData=t==="DRAFT",this.model.maskMode!==0&&(this.state.showMask=this.isNewData),(t==="LOAD"||t==="DRAFT"||t==="SAVE")&&this.calcViewParams()}calcViewParams(){let t=this.form.context.clone();const e=this.model.navigateContexts;x(e)&&(t=Object.assign(t,b(e,this.form.data,this.form.params,this.form.context)));const a=b(this.model.navigateParams,this.form.data,this.form.params,this.form.context);if(!this.state.viewComponentKey)this.state.viewComponentKey=Y(),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))})}}),Gs=d("FormGroupPanelState",class extends it{constructor(){super(...arguments),this.isShowMore=!1,this.actionGroupState=null}}),Yo=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 Gs((t=this.parent)==null?void 0:t.state)}async onInit(){super.onInit(),await this.initActionStates()}async formStateNotify(t){super.formStateNotify(t),this.state.actionGroupState&&this.state.actionGroupState.update(this.form.data.getOrigin())}async initActionStates(){var t;const{uiactionGroup:e}=this.model;if(!((t=e?.uiactionGroupDetails)!=null&&t.length))return;const a=new ft;e.uiactionGroupDetails.forEach(s=>{const i=s.uiactionId;if(i){const r=new pt(s.id,this.form.context.srfappid,i);a.addState(s.id,r)}}),await a.update(),this.state.actionGroupState=a}async onActionClick(t,e){const a=t.uiactionId;await U.execAndResolved(a,{context:this.form.context,params:this.form.params,data:[this.data],view:this.form.view,event:e})}}),qo=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}})}}),lc=d("FormItemController",class extends ct{constructor(t,e,a){super(t,e,a),this.rules=[],this.context=e.context,this.params=e.params}createState(){var t;return new qo((t=this.parent)==null?void 0:t.state)}get name(){return this.model.fieldName||this.model.id}get value(){return this.form.data[this.name]}get valueItemName(){if(this.model.editor)return this.model.editor.valueItemName}get unitName(){return this.model.unitName}get valueFormat(){return this.model.valueFormat}get dataType(){return this.model.dataType}async onInit(){await super.onInit(),this.state.required=!this.model.allowEmpty;const{enableCond:t}=this.model;t||(this.state.enableCondDisabled=!0),this.model.editor&&this.model.editor.editorType!=="HIDDEN"&&(this.editorProvider=await bt(this.model.editor),this.editorProvider&&(this.editor=await this.editorProvider.createController(this.model.editor,this),await this.initRules()))}async initRules(){this.rules=[];const t=_e(this.form.model.deformItemVRs||[],this.name);t&&this.rules.push(...Xe(t,this.name,this.valueItemName)),this.model.editor&&this.rules.push(...He(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=Ye({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})}}),ta=d("FormMDCtrlContentTypeController",class{constructor(t){this.parent=t,this.model=this.parent.model}get data(){return this.parent.state.contentCtrlData}async onInit(){}onDataChange(t){this.parent.state.contentCtrlData=t,this.parent.setFormDataValue()}onDataItemChange(t,e){this.parent.state.contentCtrlData[e]=t,this.parent.setFormDataValue()}onDataRemove(t){var e;t<0||((e=this.parent.state.contentCtrlData)==null||e.splice(t,1),this.parent.setFormDataValue())}onDataInsert(t){var e;(e=this.parent.state.contentCtrlData)==null||e.push(t||{}),this.parent.setFormDataValue()}async initData(){const t=this.model.appDEFieldId||this.model.fieldName||this.model.id;if(t){const e=this.parent.data[t];this.model.contentType==="REPEATER"&&this.model.detailStyle==="STYLE3"?Array.isArray(e)?this.parent.state.contentCtrlData={}:this.parent.state.contentCtrlData=e||{}:Array.isArray(e)?this.parent.state.contentCtrlData=e||[]:this.parent.state.contentCtrlData=[]}}async validate(){return!0}refresh(){}}),re=d("FormMDCtrlControlController",class extends ta{async onInit(){const{model:t}=this.parent,{contentControl:e}=t;if(!e)throw new f("\u8868\u5355\u591A\u6570\u636E\u90E8\u4EF6\u672A\u914D\u7F6E\u5D4C\u5165\u90E8\u4EF6");this.controlModel=e;const a=await dt(this.controlModel);a&&(this.provider=a)}}),Qo=d("FormMDCtrlDataViewController",class extends re{constructor(){super(...arguments),this.selectData=[],this.state={isSelect:!1}}onDataViewCreated(t){this.dataViewController=t.ctrl}onSelectionChange(t){this.state.isSelect=t.data.length>0}onDataRemove(){this.dataViewController&&(this.dataViewController.remove(),this.parent.state.contentCtrlData=this.dataViewController.state.items,this.parent.setFormDataValue())}onDataChange(t){this.parent.state.contentCtrlData=t,this.parent.setFormDataValue()}async initData(){var t;(t=this.dataViewController)==null||t.load()}async onDataInsert(){}refresh(){var t;(t=this.dataViewController)==null||t.refresh()}}),js=d("EditFormService",class extends ee{async get(t,e={}){var a;let s=await this.exec(((a=this.model.getControlAction)==null?void 0:a.appDEMethodId)||"get",t,void 0,e);return s=this.handleResponse(s),s}async getDraft(t,e={}){var a;let s=await this.exec(((a=this.model.getDraftControlAction)==null?void 0:a.appDEMethodId)||"getdraft",t,void 0,e);return s=this.handleResponse(s),s}async remove(t,e={}){var a;return await this.exec(((a=this.model.removeControlAction)==null?void 0:a.appDEMethodId)||"remove",t,void 0,e)}async create(t,e){var a;const s=e instanceof G?e.getOrigin():e,i=this.getFilteredData(s);let r=await this.exec(((a=this.model.createControlAction)==null?void 0:a.appDEMethodId)||"create",t,i);return r=this.handleResponse(r),r}async update(t,e){var a;const s=e instanceof G?e.getOrigin():e,i=this.getFilteredData(s);let r=await this.exec(((a=this.model.updateControlAction)==null?void 0:a.appDEMethodId)||"update",t,i);return r=this.handleResponse(r),r}async goBack(t,e){var a;const i=(a=this.model.goBackControlAction)==null?void 0:a.appDEMethodId;if(!i)throw new m(this.model,"\u7F3A\u5C11\u8FD4\u56DE\u64CD\u4F5C\u5B9E\u4F53\u884C\u4E3A");let r=await this.exec(i,t,e instanceof G?e.getOrigin():e);return r=this.handleResponse(r),r}async updateFormItem(t,e,a={}){let s=await this.exec(t,e,a);return s=this.handleResponse(s),s}async wfStart(t,e,a){var s;const r=((s=this.model.wfstartControlAction)==null?void 0:s.appDEMethodId)||"wfstart";return(await this.app.deService.getService(this.model.appDataEntityId)).wf.exec(r,t,e,a instanceof G?a.getOrigin():a)}async wfSubmit(t,e,a){var s;const i=this.model;let r="";return e.type?r=e.type:r=((s=i.wfsubmitControlAction)==null?void 0:s.appDEMethodId)||"wfsubmit",(await this.app.deService.getService(this.model.appDataEntityId)).wf.exec(r,t,e,a instanceof G?a.getOrigin():a)}initUIDataMap(){super.initUIDataMap();const t=["srfwfmemo","srfwftransferor","srfactionparam","srffrontuf","srfnextform"];k(this.model,e=>{if(e.detailType==="FORMITEM"||e.detailType==="MDCTRL"){const a=e,s=a.fieldName||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}}),$o=d("EditFormController",class extends zs{get view(){return this.ctx.view}async onCreated(){await super.onCreated(),this.service=new js(this.model),await this.service.init(this.context),this.autoSave=Vt(this.autoSave.bind(this),500,{trailing:!0})}async onMounted(){await super.onMounted(),this.state.loadDefault&&this.load()}async loadDraft(t){const{context:e,params:a}=this.handlerAbilityParams(t),s=await this.getDraftParams();Object.assign(a,s);let i;try{await this.startLoading(),await this.evt.emit("onBeforeLoadDraft",{params:a}),i=await this.service.getDraft(e,a)}catch(r){throw await this.evt.emit("onLoadDraftError",void 0),this.actionNotification("GETDRAFTERROR",{error:r}),r}finally{await this.endLoading()}return this.state.data=i.data,_t(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=v(this.context),e=v(this.params),s=(await ibiz.hub.getAppDataEntity(this.model.appDataEntityId)).keyAppDEFieldId;if(s&&this.params[s]){const r=_(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=Y(),this.state.modified=!1,this.state.data=i.data,this.formStateNotify("LOAD"),await this.evt.emit("onLoadSuccess",void 0),this.actionNotification("GETSUCCESS"),this.state.isLoaded=!0,this.data}async load(t){if(this.params.srfcopymode)return this.copy();if(!ka(this.context,this.model.appDataEntityId))return this.loadDraft();const{context:s,params:i}=this.handlerAbilityParams(t),r=v(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 he(500,this.save.bind(this),[t]);if(!await this.validate())throw new f("\u8BF7\u68C0\u67E5\u8868\u5355\u586B\u5199\uFF01");e||await this.startLoading(),await this.evt.emit("onBeforeSave",void 0);const{context:s,data:i}=this.handlerAbilityParams(t),r=i[0],n=r.srfuf===0;let o;try{o=n?await this.service.create(s,r):await this.service.update(s,r)}catch(c){throw await this.evt.emit("onSaveError",void 0),this.actionNotification("".concat(n?"CREATE":"UPDATE","ERROR"),{error:c}),c}finally{e||await this.endLoading()}const u=t?.noFillBack===!0;return o.data&&(u?(this.data.updatedate=o.data.updatedate,this.data.srfkey=o.data.srfkey):It(this.data,o.data),this.data.tempsrfkey=this.data.srfkey),this.state.modified=!1,await this.evt.emit("onSaveSuccess",void 0),this.formStateNotify("SAVE"),e||this.actionNotification("".concat(n?"CREATE":"UPDATE","SUCCESS"),{default:"".concat(this.data.srfmajortext||"","\u4FDD\u5B58\u6210\u529F")}),this.view.modal.mode==="ROUTE"&&ibiz.mc.command.send(this.data.$origin,n?"OBJECTCREATED":"OBJECTUPDATED"),this.data}async remove(t){const{context:e,params:a}=this.handlerAbilityParams(t);let s,i=!1;if(await this.evt.emit("onBeforeRemove",void 0),this.data.srfuf===1){if(i=await ibiz.modal.confirm({title:"\u63D0\u793A",desc:"\u786E\u8BA4\u5220\u9664\u5417\uFF1F"}),!i)return!1;await this.startLoading();try{s=await this.service.remove(e,a)}catch(r){throw await this.evt.emit("onRemoveError",void 0),this.actionNotification("REMOVEERROR",{error:r}),r}finally{await this.endLoading()}i=s.ok}return this.state.data=new G,this.state.modified=!1,await this.evt.emit("onRemoveSuccess",void 0),this.actionNotification("REMOVESUCCESS"),this.view.modal.mode==="ROUTE"&&ibiz.mc.command.send(this.data.$origin,"OBJECTREMOVED"),i}async goBack(){await this.startLoading();let t;try{t=await this.service.goBack(this.context,this.data)}finally{await this.endLoading()}return t.data&&It(this.data,t.data),this.data}async updateFormItem(t){var e;const a=(e=this.model.deformItemUpdates)==null?void 0:e.find(c=>c.id===t);if(!a)throw new f("\u6CA1\u627E\u5230".concat(t,"\u8868\u5355\u9879\u66F4\u65B0"));const{appDEMethodId:s,defiupdateDetails:i,customCode:r,scriptCode:n}=a,o=i?.map(c=>c.id);let u;if(r&&n)u=B.execScriptFn({...this.getEventArgs(),data:this.data},n,{isAsync:!1});else{const c={...this.params,...this.data.getOrigin()};u=(await this.service.updateFormItem(s,this.context,c)).data}u&&o?.length&&await Promise.all(o.map(c=>this.setDataValue(c,u[c])))}async wfStart(t){if(!await this.validate())throw new f("\u8BF7\u68C0\u67E5\u8868\u5355\u586B\u5199\uFF01");await this.startLoading();const{context:a,params:s}=this.handlerAbilityParams(t);try{await this.service.wfStart(a,s,this.data),this.view.modal.mode==="ROUTE"&&(ibiz.mc.command.send(this.data.$origin,"OBJECTUPDATED"),ibiz.mc.command.send({srfdecodename:"SysTodo"},"OBJECTUPDATED"))}catch(i){throw this.actionNotification("WFSTARTERROR",{error:i}),i}finally{await this.endLoading()}this.actionNotification("WFSTARTSUCCESS",{default:"\u6D41\u7A0B\u542F\u52A8\u6210\u529F"})}async wfSubmit(t){if(!await this.validate())throw new f("\u8BF7\u68C0\u67E5\u8868\u5355\u586B\u5199\uFF01");await this.startLoading();const{context:a,params:s}=this.handlerAbilityParams(t);try{await this.service.wfSubmit(a,s,this.data),this.view.modal.mode==="ROUTE"&&(ibiz.mc.command.send(this.data.$origin,"OBJECTUPDATED"),ibiz.mc.command.send({srfdecodename:"SysTodo"},"OBJECTUPDATED"))}catch(i){throw this.actionNotification("WFSUBMITERROR",{error:i}),i}finally{await this.endLoading()}this.actionNotification("WFSUBMITSUCCESS",{default:"\u6D41\u7A0B\u63D0\u4EA4\u6210\u529F"})}async dataChangeNotify(t){await super.dataChangeNotify(t),this.autoSave()}async autoSave(){if(this.model.enableAutoSave)try{await this.save({silent:!0,noFillBack:!0})}catch(t){ibiz.log.error(t)}}}),Jo=d("FormMDCtrlFormController",class extends re{constructor(){super(...arguments),this.controlControllerArray=[],this.state={data:[]}}onControlCreated(t,e){const a=t.ctrl;this.controlControllerArray[e]=a,a.load()}async onInit(){super.onInit(),this.service=new js(this.model.contentControl),await this.service.init(this.parent.form.context)}async fetch(t,e={}){const a="fetchdefault";let s=await this.service.exec(a,t,e);return s=this.handleResponse(s),s}handleResponse(t){const e=t;return e.ok&&(j(e.data)?e.data=e.data.map(a=>this.service.toUIData(a)):e.data=this.service.toUIData(e.data)),e}async initData(){const t=await this.fetch(this.parent.form.context,this.parent.form.params);this.state.data=t.data}onDataRemove(t){const e=this.controlControllerArray[t];e&&e.remove()}onFormChange(t,e){const a=this.controlControllerArray[e];a&&(a.save(),this.state.data[e]&&It(this.state.data[e],t[0]),this.parent.state.contentCtrlData=this.state.data,this.parent.setFormDataValue())}onFormRemoveSuccess(t){this.state.data.splice(t,1),this.controlControllerArray.splice(t,1),this.parent.state.contentCtrlData=this.state.data,this.parent.setFormDataValue()}async onDataInsert(){const t=await this.service.getDraft(this.parent.form.context,this.parent.form.params);if(t.data){const e=await this.service.create(this.parent.form.context,t.data);this.state.data.push(e.data),this.parent.state.contentCtrlData=this.state.data,this.parent.setFormDataValue()}}async validate(){return(await Promise.all(this.controlControllerArray.map(e=>e.validate()))).findIndex(e=>!e)===-1}refresh(){this.initData()}}),Zo=d("FormMDCtrlGridController",class extends re{constructor(){super(...arguments),this.selectData=[],this.state={isSelect:!1}}onGridCreated(t){this.gridController=t.ctrl}onSelectionChange(t){this.state.isSelect=t.data.length>0}onDataRemove(){this.gridController&&(this.gridController.remove(),this.parent.state.contentCtrlData=this.gridController.state.items,this.parent.setFormDataValue())}onDataChange(t){this.parent.state.contentCtrlData=t,this.parent.setFormDataValue()}async initData(){var t;(t=this.gridController)==null||t.load()}async onDataInsert(){this.gridController&&(await this.gridController.newRow(),this.parent.state.contentCtrlData=this.gridController.state.items,this.parent.setFormDataValue())}async onInit(){const{model:t}=this.parent,{contentControl:e}=t;if(!e)throw new f("\u8868\u5355\u591A\u6570\u636E\u90E8\u4EF6\u672A\u914D\u7F6E\u5D4C\u5165\u90E8\u4EF6");It(e,{enableRowEdit:!0,enableRowNew:!0}),this.controlModel=e;const a=await dt(this.controlModel);a&&(this.provider=a)}async validate(){if(!this.gridController)return!0;const{rows:t}=this.gridController.state;return(await Promise.all(t.map(a=>this.gridController.validate(a)))).findIndex(a=>!a)===-1}refresh(){var t;(t=this.gridController)==null||t.refresh()}}),tu=d("FormMDCtrlListController",class extends re{constructor(){super(...arguments),this.selectData=[],this.state={isSelect:!1}}onListCreated(t){this.listController=t.ctrl}onSelectionChange(t){this.state.isSelect=t.data.length>0}onDataRemove(){this.listController&&(this.listController.remove(),this.parent.state.contentCtrlData=this.listController.state.items,this.parent.setFormDataValue())}onDataChange(t){this.parent.state.contentCtrlData=t,this.parent.setFormDataValue()}async initData(){var t;(t=this.listController)==null||t.load()}async onDataInsert(){}refresh(){var t;(t=this.listController)==null||t.refresh()}}),Ks=d("FormMDCtrlRepeaterFormController",class extends ta{constructor(){super(...arguments),this.formControllerArray=[]}async onDataInsert(){const t={};super.onDataInsert(t)}onDataRemove(t){t<0||super.onDataRemove(t)}async validate(){const t=this.formControllerArray.map(a=>a.validate());return(await Promise.all(t)).findIndex(a=>!a)===-1}setFromController(t){this.formControllerArray.push(t)}}),eu=d("FormMDCtrlRepeaterFormOneController",class extends Ks{get data(){return this.parent.state.contentCtrlData}onDataItemChange(t){this.parent.state.contentCtrlData=t,this.parent.setFormDataValue()}}),au=d("FormMDCtrlRepeaterGridController",class extends ta{constructor(){super(...arguments),this.columns=[],this.editorMap={}}async onInit(){this.initColumns(this.model.deformDetails||[])}initColumns(t){t.forEach(async e=>{if(e.detailType==="FORMITEM"){const{editor:s,dataType:i}=e,r=await bt(s);if(r){const n=await r.createController(s,{unitName:s.unitName,valueFormat:s.valueFormat,context:this.parent.form.context,params:this.parent.form.params,dataType:i});this.editorMap[e.codeName]={provider:r,controller:n}}this.columns.push({codeName:e.codeName,caption:e.caption})}const a=Gt(e);a.length&&this.initColumns(a)})}rowDataChange(t,e,a){const s=this.data[a];Object.prototype.hasOwnProperty.call(s,e)&&!ae(s[e],t)||(s[e]=t,this.onDataItemChange(s,a))}}),su=d("FormMDCtrlState",class extends it{constructor(){super(...arguments),this.contentCtrlData=[]}}),dc=d("FormMDCtrlController",class extends ct{get isCreate(){return this.model.buildInActions?[1,3,5,7].includes(this.model.buildInActions):!1}get isDelete(){return this.model.buildInActions?[4,5,6,7].includes(this.model.buildInActions):!1}createState(){var t;return new su((t=this.parent)==null?void 0:t.state)}async onInit(){switch(await super.onInit(),this.model.contentType){case"FORM":this.mdCtrlContentController=new Jo(this);break;case"GRID":this.mdCtrlContentController=new Zo(this);break;case"LIST":this.mdCtrlContentController=new tu(this);break;case"DATAVIEW":this.mdCtrlContentController=new Qo(this);break;case"REPEATER":this.model.detailStyle==="DEFAULT"&&(this.mdCtrlContentController=new Ks(this)),this.model.detailStyle==="STYLE3"&&(this.mdCtrlContentController=new eu(this)),this.model.detailStyle==="STYLE2"&&(this.mdCtrlContentController=new au(this));break}this.mdCtrlContentController&&await this.mdCtrlContentController.onInit(),this.form.state.isLoaded&&this.mdCtrlContentController.initData(),this.form.evt.on("onLoadDraftSuccess",()=>{this.mdCtrlContentController.initData()}),this.form.evt.on("onLoadSuccess",()=>{this.mdCtrlContentController.initData()})}setFormDataValue(){const t=this.model.appDEFieldId||this.model.fieldName||this.model.id;t&&this.form.setDataValue(t,v(this.state.contentCtrlData))}async validate(){return this.mdCtrlContentController.validate()}setDefaultValue(){}async dataChangeNotify(t){await super.dataChangeNotify(t);const{resetItemNames:e}=this.model,a=this.model.appDEFieldId||this.model.fieldName||this.model.id;let s=!1;e&&e.length>0&&e.forEach(i=>{t.includes(i)&&(s=!0)}),s&&(this.state.contentCtrlData=null,this.setFormDataValue()),t.includes(a)&&this.validate(),t.includes(a)&&this.model.deformItemUpdateId&&await this.form.updateFormItem(this.model.deformItemUpdateId),t.includes(this.model.id)&&this.mdCtrlContentController.refresh()}refresh(){this.mdCtrlContentController.refresh()}}),hc=d("FormMDCtrlItemController",class extends $o{constructor(t,e,a,s,i,r){const n=v(r.model);Object.assign(n,t,{name:void 0}),super(n,e,a,s),this.state.data=i,this.state.isSimple=!0}async initDetailControllers(t=this.model.deformDetails,e=this,a=void 0){await Promise.all(t.map(async s=>{const i=await We(s);if(!i)return;e.providers[s.id]=i;const r=await i.createController(s,e,a);e.details[s.id]=r,(s.detailType==="FORMITEM"||s.detailType==="MDCTRL")&&e.formItems.push(r);const n=Gt(s);n.length&&await this.initDetailControllers(n,e,r)}))}}),iu=d("FormPageState",class extends Gs{}),pc=d("FormPageController",class extends Yo{createState(){var t;return new iu((t=this.parent)==null?void 0:t.state)}}),ru=d("FormRawItemState",class extends it{}),fc=d("FormRawItemController",class extends ct{createState(){var t;return new ru((t=this.parent)==null?void 0:t.state)}}),nu=d("FormTabPageState",class extends it{}),mc=d("FormTabPageController",class extends ct{createState(){var t;return new nu((t=this.parent)==null?void 0:t.state)}}),ou=d("FormTabPanelState",class extends it{}),Ec=d("FormTabPanelController",class extends ct{createState(){var t;return new ou((t=this.parent)==null?void 0:t.state)}}),ea=d("GridColumnController",class{constructor(t,e){this.isAdaptiveColumn=!1,this.isCustomCode=!1;var a;this.model=t,this.grid=e,this.isAdaptiveColumn=t.widthUnit==="STAR",this.isAdaptiveColumn&&(this.grid.hasAdaptiveColumn=!0),(a=this.deGridDataItem)!=null&&a.customCode&&(this.isCustomCode=!0)}get context(){return this.grid.context}get params(){return this.grid.params}get enableRowEdit(){return!!(this.grid.model.enableRowEdit&&this.model.enableRowEdit)}get deGridDataItem(){var t;return(t=this.grid.model.degridDataItems)==null?void 0:t.find(e=>e.id===this.model.id)}get valueFormat(){var t;return(t=this.deGridDataItem)==null?void 0:t.format}get dataType(){var t;return(t=this.deGridDataItem)==null?void 0:t.dataType}async init(){await this.onInit()}async onInit(){}getCustomHtml(t){var e;if((e=this.deGridDataItem)!=null&&e.scriptCode)return B.execScriptFn({data:t.data},this.deGridDataItem.scriptCode,{singleRowReturn:!0,isAsync:!1})}}),Xs=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}})}}),Hs=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}}),uu=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}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 Hs(this.model),await this.service.init(this.context),this.initColumnStates(),await this.initGridColumns(),this.dataChangeNotify=de(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 Xs(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;_t(n,i),this.state.items.unshift(n);const o=new Xs(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 he(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=_(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"?(this.fieldColumns[t.codeName]=s,t.enableRowEdit&&(this.editColumns[t.codeName]=s)):t.columnType==="UAGRIDCOLUMN"?this.uaColumns[t.codeName]=s:t.columnType==="GROUPGRIDCOLUMN"&&(this.isMultistageHeader=!0,await Promise.all(((e=t.degridColumns)==null?void 0:e.map(async i=>{await this.initColumnsController(i)}))||[]))}initColumnStates(){k(this.model,t=>{t.columnType!=="GROUPGRIDCOLUMN"&&this.state.columnStates.push({key:t.codeName,caption:t.caption,hidden:!!t.hideDefault,uaColumn:t.columnType==="UAGRIDCOLUMN"})},{childrenFields:["degridColumns"]}),this.calcColumnFixed()}calcColumnFixed(){const t=this.state.columnStates.filter(i=>!i.hidden),e=t.length,{frozenFirstColumn:a,frozenLastColumn:s}=this.model;t.forEach((i,r)=>{i.uaColumn?i.fixed=r+1<=Math.floor(e/2)?"left":"right":a&&r<a?i.fixed="left":s&&r>=e-s&&(i.fixed="right")})}async initGridColumns(){this.model.degridColumns&&await Promise.all(this.model.degridColumns.map(async t=>this.initColumnsController(t)))}async setRowValue(t,e,a){if(!(Object.prototype.hasOwnProperty.call(t.data,e)&&!ae(t.data[e],a))){t.data[e]=a,t.modified=!0,t.processing=!0;try{await this.dataChangeNotify(t,[e]),await this.evt.emit("onGridDataChange",{data:this.state.rows.map(s=>s.data)})}finally{t.processing=!1}}}async dataChangeNotify(t,e){await nt(Object.values(this.editColumns).map(async a=>a.dataChangeNotify(t,e)))}gridStateNotify(t,e){Object.values(this.editColumns).forEach(a=>{a.gridStateNotify(t,e)})}async validate(t){return(await Promise.all(Object.values(this.editColumns).map(a=>a.validate(t)))).findIndex(a=>!a)===-1}async toggleRowEdit(){if(!this.model.enableRowNew)throw new f("\u5F53\u524D\u8868\u683C\u4E0D\u652F\u6301\u884C\u7F16\u8F91\uFF0C\u65E0\u6CD5\u5207\u6362\u5F00\u542F\u884C\u7F16\u8F91");this.state.rowEditOpen=!this.state.rowEditOpen}async switchRowEdit(t,e,a=!0){if(!this.allowRowEdit)return;const s=e===void 0?!t.showRowEdit:e;if(t.showRowEdit!==s){if(s===!1)if(a)await this.save(t.data);else{if(t.data.srfuf===0)return t.showRowEdit=!1,this.evt.emit("onRowEditChange",{row:t}),this.remove({data:[t.data],silent:!0});t.cacheData&&(t.data=t.cacheData,delete t.cacheData)}else{if(this.state.rows.find(r=>r.showRowEdit))throw new f("\u540C\u65F6\u53EA\u80FD\u6709\u4E00\u884C\u5F00\u542F\u884C\u7F16\u8F91");if(t.data.srfuf===1){t.cacheData=v(t.data);const r=this.calcDefaultValue(t.data,!1);Object.assign(t.data,r)}}t.showRowEdit=s,Object.values(this.editColumns).forEach(i=>{t.editColStates[i.fieldName].editable=s}),this.evt.emit("onRowEditChange",{row:t})}}setSort(t,e){if(t&&e){const a=this.fieldIdNameMap.get(t).toLowerCase();super.setSort(a,e)}else{const{minorSortAppDEFieldId:a,minorSortDir:s}=this.model;if(a&&s){const i=this.fieldIdNameMap.get(a);this.state.sortQuery="".concat(i.toLowerCase(),",").concat(s.toLowerCase())}else this.state.sortQuery=""}}async updateGridEditItem(t,e){var a;const s=(a=this.model.degridEditItemUpdates)==null?void 0:a.find(l=>l.id===e);if(!s)throw new f("\u6CA1\u627E\u5230".concat(e,"\u7F16\u8F91\u5217\u66F4\u65B0"));const{appDEMethodId:i,degeiupdateDetails:r,customCode:n,scriptCode:o}=s,u=r.map(l=>l.id);let c;if(n&&o)c=B.execScriptFn({...this.getEventArgs(),data:t.data},o,{isAsync:!1});else{const l={...this.params,...t.data.getOrigin()};c=(await this.service.updateGridEditItem(i,this.context,l)).data}c&&u?.length&&await Promise.all(u.map(l=>this.setRowValue(t,l,c[l])))}async loadData(t){const{context:e}=this.handlerAbilityParams(t),a=await this.getFetchParams(t?.viewParam);let s;await this.startLoading();try{s=await this.service.fetch(e,a)}finally{await this.endLoading()}return s.data}async exportData(t){const e=this.fieldColumns,a=u=>v(u.map(l=>l.getOrigin())),s=async()=>{var u;const c=(u=t.params)==null?void 0:u.type;let l=[];if(c==="activatedPage"&&(l=this.state.rows.map(h=>h.data)),c==="maxRowCount"||c==="customPage"){const{size:h}=this.state,{startPage:p,endPage:E}=t.params,C=c==="customPage"?{page:0,offset:(p-1)*h,size:(E-p+1)*h}:{size:1e3,page:0};l=await this.loadData({viewParam:C})}if(c==="selectedRows"&&(l=this.getData()),l.length===0)throw new f("\u65E0\u5BFC\u51FA\u6570\u636E");return a(l)},i=(u,c)=>c.map(l=>u.map(h=>l[h])),r=Object.keys(e).map(u=>e[u].model.id),n=Object.keys(e).map(u=>e[u].model.caption),o=i(r,await s());await Ms(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=Ye({name:s.fieldName,valueType:u,defaultValue:c,valueFormat:s.valueFormat},{data:t,context:this.context,params:this.params});l!==void 0&&(a[s.fieldName]=l)}),a}findRowStateIndex(t){const a=t.srfuf===0?"tempsrfkey":"srfkey";return this.state.rows.findIndex(s=>s.data[a]===t[a])}findRowState(t){const e=this.findRowStateIndex(t);return e!==-1?this.state.rows[e]:void 0}}),cu=d("GridFieldColumnController",class extends ea{constructor(){super(...arguments),this.codeList=void 0}get isLinkColumn(){return!!this.model.enableLinkView&&!!this.model.linkAppViewId}get hasAction(){return!!this.model.deuiactionId}async onInit(){await super.onInit(),this.loadCodeList=Vt(this.loadCodeList,300,{leading:!0,trailing:!1}),this.loadCodeList()}clickable(t){const e=t.data[this.model.codeName];return(this.isLinkColumn||this.hasAction)&&e}handlePublicParams(t,e,a){const{userParam:s}=this.model;if(!s)return{context:e,params:a};const{navigateContexts:i,navigateParams:r}=Pe(s);let n={};i&&t&&(n=b(i,t,a,e));const o=Object.assign(e.clone(),n);let u={};r&&t&&(u=b(r,t,a,e));const c={...a,...u};return{context:o,params:c}}async openLinkView(t,e){if(!t.data[this.model.codeName])return;const s=this.model.linkValueItem||"srfkey",i=t.data[s];if(i==null)throw new D(this.model,"\u672A\u5728\u884C\u6570\u636E\u4E2D\u53D6\u5230 ".concat(s," \u7684\u503C"));const{linkAppViewId:r}=this.model;if(!r)return;const n=Qa(t.data),o=Object.assign(this.context.clone(),{srfkey:i,...n}),u=v(this.params),{context:c,params:l}=this.handlePublicParams(t.data,o,u),h=await ibiz.commands.execute(Z.TAG,r,c,l,{event:e});h?.ok&&this.grid.load()}async triggerAction(t,e){const a=this.model.deuiactionId;await U.execAndResolved(a,{context:this.context,params:this.params,data:[t.data],view:this.grid.view,event:e})}async loadCodeList(){const t=this.model.appCodeListId;if(!t)return;const e=ibiz.hub.getApp(this.context.srfappid);this.codeList||(this.codeList=e.codeList.getCodeList(t));const a=await e.codeList.get(t,this.context,this.params);return this.codeListItems=a,a}calcFieldAgg(t){const{aggField:e,aggMode:a,aggValueFormat:s,unitName:i}=this.model;if(a==="NONE")return;const r=e||this.model.id;t=t.filter(u=>!w(u[r]));let n;if(this.grid.model.aggMode==="PAGE")switch(a){case"SUM":n=t.map(u=>u[r]).reduce((u,c)=>xt(u,c),0);break;case"AVG":n=t.map(u=>u[r]).reduce((u,c)=>xt(u,c),0)/t.length;break;case"MAX":n=Math.max(...t.map(u=>u[r]));break;case"MIN":n=Math.min(...t.map(u=>u[r]));break;default:throw new D(this.model,"\u6682\u672A\u652F\u6301\u5C5E\u6027\u5217\u805A\u5408\u6A21\u5F0F".concat(a))}else throw this.grid.model.aggMode==="ALL"?new D(this.model,"\u8FDC\u7A0B\u805A\u5408\u6682\u672A\u652F\u6301"):new D(this.grid.model,"\u6682\u672A\u652F\u6301\u805A\u5408\u6A21\u5F0F".concat(this.grid.model.aggMode));let o="".concat(n);if(s)try{o=ibiz.util.text.format("".concat(n),s)}catch{ibiz.log.error("".concat(n," \u503C\u683C\u5F0F\u5316\u9519\u8BEF"))}return o&&i&&(o+=i),o}formatValue(t=""){if(this.model.valueType!=="SIMPLE")return Xn.toText(this.model,t);const e="".concat(t);if(!this.valueFormat)return e;if(Bt.isDate(this.dataType)){const s=L(e).format(this.valueFormat);return s!=="Invalid Date"?s:e}return ibiz.util.text.format(e,this.valueFormat)}}),gc=d("GridUAColumnController",class extends ea{initActionStates(t){var e;const{deuiactionGroup:a}=this.model;if(!a)throw new m(this.model,"\u64CD\u4F5C\u5217\u6CA1\u6709\u914D\u7F6E\u754C\u9762\u884C\u4E3A\u7EC4");if(!((e=a.uiactionGroupDetails)!=null&&e.length)){ibiz.log.debug("\u64CD\u4F5C\u5217\u754C\u9762\u884C\u4E3A\u7EC4\u6CA1\u6709\u914D\u7F6E\u754C\u9762\u884C\u4E3A");return}const s=new ft;a.uiactionGroupDetails.forEach(i=>{const r=i.uiactionId;if(r){const n=new pt(i.id,this.grid.context.srfappid,r);s.addState(i.id,n)}}),t.uaColStates[this.model.codeName]=s}async onActionClick(t,e,a){const s=t.uiactionId;await U.execAndResolved(s,{context:this.context,params:this.params,data:[e.data],view:this.grid.view,event:a})}}),Cc=d("GridFieldEditColumnController",class extends cu{constructor(){super(...arguments),this.rules=[]}get unitName(){return this.editItem.unitName}get valueFormat(){return this.model.valueFormat}get valueItemName(){if(this.editItem.editor)return this.editItem.editor.valueItemName}get fieldName(){return this.model.dataItemName}async onInit(){await super.onInit();const t=Ua(this.grid.model,this.model.codeName);t&&(this.editItem=t,this.editItem.editor&&this.editItem.editor.editorType!=="HIDDEN"&&(this.editorProvider=await bt(this.editItem.editor),this.editorProvider&&(this.editor=await this.editorProvider.createController(this.editItem.editor,this),await this.initRules())))}async initRules(){this.rules=[];const t=_e(this.grid.model.degridEditItemVRs||[],this.fieldName);t&&this.rules.push(...Xe(t,this.fieldName,this.valueItemName)),this.editItem.editor&&this.rules.push(...He(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){this.calcColumnDisabled(t);const a=t.editColStates[this.fieldName].required;if(this.calcColumnRequired(t),(a!==t.editColStates[this.fieldName].required||e.includes(this.fieldName)||e.includes(this.valueItemName))&&!await this.validate(t))throw new f("".concat(this.editItem.codeName,"\u6821\u9A8C\u62A5\u9519,").concat(t.errors[this.fieldName]));e.includes(this.fieldName)&&this.editItem.degridEditItemUpdateId&&await this.grid.updateGridEditItem(t,this.editItem.degridEditItemUpdateId)}gridStateNotify(t,e){this.calcColumnDisabled(t),this.calcColumnReadonly(t),this.calcColumnRequired(t)}calcColumnDisabled(t){let e=this.calcEnableCond(t);if(e&&this.grid.scheduler){const a=this.grid.scheduler.triggerItemEnable(this.fieldName,{data:[t.data]});a!==void 0&&(e=a)}t.editColStates[this.fieldName].disabled=!e}calcColumnRequired(t){let e=this.editItem.allowEmpty!==!1;if(e&&this.grid.scheduler){const a=this.grid.scheduler.triggerItemBlank(this.fieldName,{data:[t.data]});a!==void 0&&(e=a)}t.editColStates[this.fieldName].required=!e}calcColumnReadonly(t){var e;const a=!!((e=this.editItem.editor)!=null&&e.readOnly);t.editColStates[this.fieldName].readonly=a}calcEnableCond(t){const{enableCond:e}=this.editItem,a=t.data.srfuf===0;switch(e){case 0:return!1;case 1:return a;case 2:return!a;default:return!0}}async validate(t){const e=this.fieldName;if(ibiz.config.grid.editShowMode!=="cell"&&t.editColStates[e].required&&V(t.data[e]))return t.errors[e]="\u8BF7\u586B\u5199".concat(this.model.caption||""),!1;if(this.rules.length&&this.validator)try{await this.validator.validate(t.data)}catch(a){const{errors:s}=a;return t.errors[e]=s[0].message,!1}return t.errors[e]=null,!0}}),Dc=d("GridGroupColumnController",class extends ea{}),lu=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)})}}),wc=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 lu(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}}}),du=d("PanelController",class extends H{constructor(){super(...arguments),this.panelItems={},this.providers={}}get _evt(){return this.evt}get data(){return this.state.data}initState(){super.initState(),this.state.data={}}setInputData(t){this.inputData=t}getData(){return[this.data]}async onCreated(){var t;await super.onCreated(),await this.initPanelItemControllers(),(t=this.scheduler)!=null&&t.hasControlEventTrigger&&this._evt.on("onPanelItemEvent",e=>{this.scheduler.triggerControlEvent(e.panelItemName,e.panelItemEventName,e)})}async onMounted(){this.load()}async onDestroyed(){var t,e;await super.onDestroyed(),(e=(t=this.data).destroy)==null||e.call(t),Object.values(this.panelItems).forEach(a=>{a.destroy()})}async initPanelItemControllers(t=this.model.rootPanelItems,e=this,a=void 0){t&&await Promise.all(t.map(async s=>{var i,r;const n=await cs(s);if(!n)return;e.providers[s.id]=n;const o=await n.createController(s,e,a);e.panelItems[s.id]=o,(i=s.panelItems)!=null&&i.length&&!o.isDataContainer&&await this.initPanelItemControllers(s.panelItems,e,o),(r=s.panelTabPages)!=null&&r.length&&await this.initPanelItemControllers(s.panelTabPages,e,o)}))}async load(){var t,e;const a=await this.prepareData();if(!a)throw new f("\u672A\u83B7\u53D6\u5230\u9762\u677F\u6570\u636E");const s=this.convertData(a);(e=(t=this.data).destroy)==null||e.call(t),this.state.data=s,this.panelStateNotify("LOAD")}async prepareData(){let t;switch(this.model.dataMode){case 1:this.inputData&&(t=this.inputData);break;default:t=this.inputData||{}}return t}convertData(t){const e=Ha(this.model),a=e.map(i=>i.id),s=new Nn(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)}}),vc=d("ViewLayoutPanelController",class extends du{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||[]))}}),hu=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}})}}),Ac=d("PanelItemController",class{constructor(t,e,a){this.model=t,this.panel=e,this.parent=a,this.dynaLogicResult={visible:void 0,disabled:void 0,required:void 0},this.state=this.createState()}get dataParent(){return this.findDataParent(this)}get data(){return this.dataParent.data}get containerClass(){return[...this.state.class.container,...this.state.class.containerDyna]}get labelClass(){return[...this.state.class.label,...this.state.class.labelDyna]}async init(){await this.onInit()}async onInit(){const{layoutPos:t,sysCss:e,labelSysCss:a}=this.model;if(t){const{width:s,height:i}=Ut(t);this.state.layout.width="".concat(s),this.state.layout.height="".concat(i)}e?.cssName&&this.state.class.container.push(e.cssName),a?.cssName&&this.state.class.label.push(a.cssName)}destroy(){}createState(){var t;return new hu((t=this.parent)==null?void 0:t.state)}async dataChangeNotify(t){this.calcDynamicLogic(t),this.calcItemDisabled(this.data),this.calcItemVisible(this.data),this.calcItemRequired(this.data),this.calcDynaClass(this.data)}async panelStateNotify(t){this.calcDynamicLogic([],!0),this.calcItemDisabled(this.data),this.calcItemVisible(this.data),this.calcItemRequired(this.data),this.calcDynaClass(this.data)}calcItemDisabled(t){let{disabled:e}=this.dynaLogicResult;if(e!==!0&&this.panel.scheduler){const a=this.panel.scheduler.triggerItemEnable(this.model.id,{data:[t]});a!==void 0&&(e=!a)}e!==void 0&&(this.state.disabled=e)}calcItemVisible(t){let{visible:e}=this.dynaLogicResult;if(e!==!1&&this.panel.scheduler){const a=this.panel.scheduler.triggerItemVisible(this.model.id,{data:[t]});a!==void 0&&(e=a)}e!==void 0&&(this.state.visible=e)}calcItemRequired(t){let{required:e}=this.dynaLogicResult;if(e!==!0&&this.panel.scheduler){const a=this.panel.scheduler.triggerItemBlank(this.model.id,{data:[t]});a!==void 0&&(e=!a)}e!==void 0&&(this.state.required=e)}calcDynamicLogic(t,e=!1){var a;this.parent&&!this.parent.state.visible||(a=this.model.panelItemGroupLogics)==null||a.forEach(s=>{const i=s.relatedItemNames||[];if(e||Mt(i,t))try{const r=Xt(this.data,s);switch(s.logicCat){case"ITEMBLANK":this.dynaLogicResult.required=!r;break;case"ITEMENABLE":this.dynaLogicResult.disabled=!r;break;case"PANELVISIBLE":this.dynaLogicResult.visible=r;break;default:}}catch(r){ibiz.log.error(r)}})}findDataParent(t){const{parent:e}=t;return e?e.isDataContainer?e:this.findDataParent(e):t.panel}calcDynaClass(t){if(this.model.dynaClass){const e=Dt(this.model.dynaClass,t);e.length&&(this.state.class.containerDyna=e)}if(this.model.labelDynaClass){const e=Dt(this.model.labelDynaClass,t);e.length&&(this.state.class.labelDyna=e)}}onClick(){this.panel.evt.emit("onPanelItemEvent",{panelItemName:this.model.id,panelItemEventName:"onClick"})}}),Ic=d("PickupViewPanelController",class extends H{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,b(t,this.params,this.context)),e&&Object.assign(s,b(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")}}),pu=class{constructor(t,e){this.model=t,this.searchBar=e;var a;let s;t.appDEFieldId&&(s=wt(e.appDataEntity,t.appDEFieldId)),this.fieldName=s?s.codeName.toLowerCase():t.id,this.label=t.caption||s?.logicName||t.id,this.valueOP=(a=t.defsearchMode)==null?void 0:a.valueOP}get context(){return this.searchBar.context}get params(){return this.searchBar.params}async init(){if(!this.model.editor)throw new m(this.model,"\u7F3A\u5C11\u7F16\u8F91\u5668\u6A21\u578B");this.editorProvider=await bt(this.model.editor),this.editorProvider&&(this.editor=await this.editorProvider.createController(this.model.editor,this))}},yc=d("SearchBarController",class extends H{constructor(){super(...arguments),this.placeHolder="",this.filterControllers=[]}initState(){super.initState(),this.state.query="",this.state.selectedGroupItem=null,this.state.visible=!!(this.model.enableQuickSearch||this.model.enableGroup||this.model.enableFilter),this.model.enableFilter&&this.resetFilter()}async onCreated(){await super.onCreated();const t=await ibiz.hub.getAppDataEntity(this.model.appDataEntityId,this.context.srfappid);t&&(this.appDataEntity=t,this.calcQuickSearchPlaceholder()),await this.initSearchBarFilters()}calcQuickSearchPlaceholder(){if(!this.appDataEntity)return;const t=this.appDataEntity.appDEFields.filter(e=>e.enableQuickSearch);if(t.length){const e=[];t.forEach(a=>{a.lnlanguageRes&&a.lnlanguageRes.lanResTag?e.push(ibiz.i18n.t(a.lnlanguageRes.lanResTag,a.logicName)):a.logicName&&e.push(a.logicName)}),e.length>0&&(this.placeHolder=e.join("\u3001"))}}handleInput(t){this.state.query=t}onSearch(){this.evt.emit("onSearch",void 0)}getFilterParams(){var t;const e={};if(this.state.query&&(e.query=this.state.query),(t=this.state.selectedGroupItem)!=null&&t.data){const s=B.execSingleLine(this.state.selectedGroupItem.data),i=b(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 pu(e,this);this.filterControllers.push(a)}),await Promise.all(this.filterControllers.map(e=>e.init())))}calcFilters(){if(!this.model.enableFilter)return;let t=!1,e=!1;if(k(this.state.filterNodes[0],a=>{a.leaf&&(a.field&&a.valueOP&&!w(a.value)?t=!0:e=!0)}),t&&!e)return this.formatFilters(this.state.filterNodes[0])}formatFilters(t){return t.leaf?{["".concat(t.field)]:{["$".concat(t.valueOP.toLowerCase())]:t.value}}:{["$".concat(t.logicType.toLowerCase())]:t.children.map(e=>this.formatFilters(e))}}}),Fc=d("TabExpPanelController",class extends H{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:_(r),navFilter:a,pickupDEFName:e?.pickupDEFName,navContexts:s,navParams:i},o={context:this.context,params:this.params,data:{}},{resultContext:u,resultParams:c}=Wt(n,o),l=Object.assign(this.context.clone(),u,{currentSrfNav:this.state.activeName}),h={...this.params,...c};return{context:l,params:h}}getNavViewMsg(t){const{context:e,params:a}=this.prepareParams(t);return{key:t.codeName.toLowerCase(),context:e,params:a,viewId:t.embeddedAppDEViewId,isCache:this.isCache}}}),Ys=d("TreeService",class extends at{async fetchChildNodes(t,e){const{hasQuery:a}=e;let s=[];if(t){const i=Re(this.model,{parentId:t?.nodeId,hasQuery:a});if(i.length===0)return;(await nt(i.map(async n=>{const o=Ne(this.model,n.childDETreeNodeId);return this.fetchNodeDatasByType(o,n,t,e)}),!1)).forEach(n=>{s.push(...n)})}else{const i=Se(this.model);s=await this.fetchNodeDatasByType(i,void 0,void 0,e)}return s}async fetchNodeDatasByType(t,e,a,s){const i=Re(this.model,{parentId:t.id,hasQuery:s.hasQuery}).length===0,r={...s,leaf:i};let n=[];switch(t.treeNodeType){case"STATIC":n=[await this.getStaticNodeData(t,e,a,r)];break;case"DE":n=await this.getDENodeDatas(t,e,a,r);break;case"CODELIST":n=await this.getCodeListNodeDatas(t,e,a,r);break;default:throw new D(t,"".concat(t.treeNodeType,"\u8282\u70B9\u7C7B\u578B\u672A\u652F\u6301"))}const{expandFirstOnly:o,expanded:u,rootNode:c}=t,l=c&&!this.model.rootVisible;return i||await Promise.all(n.map(async(h,p)=>{var E;if(u&&(!o||o&&p===0)||(E=s.defaultExpandedKeys)!=null&&E.length&&s.defaultExpandedKeys.includes(h.id)||l){const C=await this.fetchChildNodes(h,s);h.children=C}})),n}async getStaticNodeData(t,e,a,s){return new In(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 y=1;y<s;y++)p=p?.parent}let E,C;if(p){h=p.deData||{};const y=Ne(this.model,p.nodeId);y.appDataEntityId&&(C=_(y.appDataEntityId)),E=p.value}const{resultContext:S,resultParams:A}=Wt({deName:C,navFilter:n?"n_".concat(n,"_eq"):void 0,pickupDEFName:u,navParams:r,navContexts:i},{derValue:E,context:l,params:c,data:h});return Object.assign(l,S),Object.assign(c,A),{context:l,params:c,navContext:S,navParams:A}}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 Rs(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 An(t,a,{data:l,leaf:!!s.leaf,navContext:n,navParams:o})):[]}}),Pc=d("TreeController",class extends tt{constructor(){super(...arguments),this.contextMenus={}}initState(){super.initState(),this.state.defaultExpandedKeys=[],this.state.expandedKeys=[],this.state.navigational=!1,this.state.size=0}async onCreated(){await super.onCreated(),this.state.expandedKeys=[...this.state.defaultExpandedKeys],this.service=new Ys(this.model),await this.service.init(this.context),this.model.detreeNodes.forEach(t=>{var e,a;(a=(e=t.decontextMenu)==null?void 0:e.detoolbarItems)!=null&&a.length&&(this.contextMenus[t.decontextMenu.id]=new zo(t.decontextMenu,this.context,this.params,this.ctx))}),await Promise.all(Object.values(this.contextMenus).map(t=>t.created()))}async load(t={}){const e=t.isInitialLoad===!0;e&&await this.startLoading();let a;try{a=await this.loadNodes()}finally{e&&await this.endLoading()}return await this.afterLoad(t,a),this.state.isLoaded=!0,await this.evt.emit("onLoadSuccess",{isInitialLoad:e}),a}async loadNodes(t){const e=await this.getFetchParams(),a=!!e.query;this.state.isLoading=!0;let s;try{s=await this.service.fetchChildNodes(t,{context:this.context.clone(),params:e,hasQuery:a,defaultExpandedKeys:this.state.expandedKeys})||[]}finally{this.state.isLoading=!1}return t?t.children=s:this.state.rootNodes=s,this.state.items=[],k({children:this.state.rootNodes},i=>{this.state.items.push(i)}),this.state.expandedKeys=this.calcExpandedKeys(s),s}async onTreeNodeClick(t){if(this.state.navigational){const e=this.getNodeModel(t.nodeId);if(!e?.navAppViewId)return}if(this.state.singleSelect){const{selectedData:e}=this.state,a=e.filter(s=>s.id!==t.id);a.length===e.length?this.setSelection(this.state.singleSelect?[t]:e.concat([t])):this.setSelection(a)}this.state.mdctrlActiveMode===1&&await this.setActive(t)}onExpandChange(t,e){const a=this.state.expandedKeys.includes(t.id);if(e&&!a)this.state.expandedKeys.push(t.id);else if(!e&&a){const s=this.state.expandedKeys.indexOf(t.id);s!==-1&&this.state.expandedKeys.splice(s,1)}}async onDbTreeNodeClick(t){this.state.mdctrlActiveMode===2&&await this.setActive(t)}setActive(t){const e=this.parseTreeNodeData(t);return this.evt.emit("onActive",{...e,nodeData:t})}setSelection(t){const e=t.map(s=>s.id),a=this.state.items.filter(s=>e.includes(s.id));super.setSelection(a)}getNodeModel(t){var e;return(e=this.model.detreeNodes)==null?void 0:e.find(a=>a.id===t)}async doUIAction(t,e,a){const s=this.getEventArgs(),i=this.parseTreeNodeData(e),r=await U.exec(t,{...s,...i,event:a});if(r.closeView)this.view.closeView();else if(r.refresh)switch(r.refreshMode){case 1:this.refreshNodeChildren(e);break;case 2:this.refreshNodeChildren(e,!0);break;case 3:this.refresh();break}}parseTreeNodeData(t){return{data:[{...t,...t.deData||{}}],context:Object.assign(this.context.clone(),t.context||{}),params:{...this.params,...t.params||{}}}}calcExpandedKeys(t){let e=[...this.state.expandedKeys];return k({children:t},a=>{var s;(s=a.children)!=null&&s.length&&e.push(a.id)}),e=Array.from(new Set(e)),e}async refreshNodeChildren(t,e=!1){const a=t.srfkey?"srfkey":"id",s=this.state.items.find(n=>n[a]===t[a]);if(!s){ibiz.log.error("\u627E\u4E0D\u5230\u5BF9\u5E94\u7684\u6811\u8282\u70B9\u6570\u636E",t);return}if(e){const{parent:n}=s;if(!n||!this.model.rootVisible&&this.state.rootNodes.includes(n)){this.refresh();return}}const i=e?s.parent:s,r=await this.loadNodes(i);this.evt.emit("onAfterRefreshParent",{parentNode:i,children:r})}async expandNodeByKey(t){const e=t.filter(s=>!this.state.expandedKeys.includes(s));if(e.length===0)return;const a=this.state.items.filter(s=>e.includes(s.id));this.state.expandedKeys.push(...e),a.length!==0&&await Promise.all(a.map(s=>this.loadNodes(s)))}}),fu=d("WizardPanelService",class extends ee{async initialize(t,e={},a={}){var s;const i=(s=this.model.initControlAction)==null?void 0:s.appDEMethodId;let r=await this.exec(i,t,e,a);return r=this.handleResponse(r),r}async finish(t,e={},a={}){var s;const i=(s=this.model.finishControlAction)==null?void 0:s.appDEMethodId;let r=await this.exec(i,t,e,a);return r=this.handleResponse(r),r}}),bc=d("WizardPanelController",class extends H{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 fu(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=_(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=_(this.model.appDataEntityId);if(a.data&&a.data.srfkey&&(this.context[s]=a.data.srfkey),a.data&&this.model.stateAppDEFieldId&&a.data[this.model.stateAppDEFieldId]){const i=this.getWizardFormByTag(a.data[this.model.stateAppDEFieldId]);i&&(this.state.activeFormTag=i.formTag)}}!this.state.activeFormTag&&this.firstForm&&(this.state.activeFormTag=this.firstForm.formTag,this.tagHistory.push(this.firstForm.formTag))}async finish(){await this.service.finish(this.context,this.params),this.evt.emit("onFinishSuccess",void 0)}async onPrevClick(){const t=await this.activeFormController.goBack();let e;if(this.model.stateAppDEFieldId&&t[this.model.stateAppDEFieldId]?this.getWizardFormByTag(t[this.model.stateAppDEFieldId])&&(e=t[this.model.stateAppDEFieldId]):(e=this.tagHistory[this.tagHistory.length-1],this.tagHistory.pop()),!e)throw new f("\u6CA1\u6709\u4E0A\u4E00\u4E2A\u8868\u5355");this.state.activeFormTag=e}async onNextClick(){const t=await this.activeFormController.save();let e;if(t.srfnextform)this.getWizardFormByTag(t.srfnextform)&&(e=t.srfnextform,this.tagHistory.push(e));else if(this.model.stateAppDEFieldId&&t[this.model.stateAppDEFieldId])this.getWizardFormByTag(t[this.model.stateAppDEFieldId])&&(e=t[this.model.stateAppDEFieldId]);else{const{formTag:a}=this.activeWizardForm,s=this.model.dewizard.dewizardSteps;if(s&&a){const i=s.findIndex(o=>o.stepTag===a),r=s[i+1];if(!r)throw new f("\u627E\u4E0D\u5230\u4E0B\u4E00\u4E2A\u5411\u5BFC\u6B65\u9AA4");const n=this.getWizardFormByTag(r.stepTag);n&&n.formTag&&(e=n.formTag)}}if(!e)throw new f("\u627E\u4E0D\u5230\u4E0B\u4E00\u4E2A\u5411\u5BFC\u8868\u5355");this.state.activeFormTag=e,this.tagHistory.push(e)}async onFinishClick(){await this.activeFormController.save(),await this.finish()}}),mu=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)})}}),ne=d("MobMDCtrlRowState",class{constructor(t,e){this.data=t,this.controller=e,this.uaColStates={},this.data=t}}),Sc=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 mu(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 ne(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 ne(a,this));this.state.rows=e}getAllData(){return this.state.rows.map(t=>t.data)}async onActionClick(t,e,a){const s=t.uiactionId;await U.execAndResolved(s,{context:this.context,params:this.params,data:[e.data],view:this.view,event:a})}initActionStates(t){const{deuiactionGroup:e,deuiactionGroup2:a}=this.model;e&&this.initUIActionGroup(t,e),a&&this.initUIActionGroup(t,a)}initUIActionGroup(t,e){var a;(a=e.uiactionGroupDetails)!=null&&a.length||ibiz.log.debug("\u64CD\u4F5C\u5217\u754C\u9762\u884C\u4E3A\u7EC4\u6CA1\u6709\u914D\u7F6E\u754C\u9762\u884C\u4E3A");const s=new ft;(e.uiactionGroupDetails||[]).forEach(r=>{const n=r.uiactionId;if(n){const o=new pt(r.id,this.context.srfappid,n);s.addState(r.id,o)}}),s.update(t.data.getOrigin()),t.uaColStates[e.id]=s}async handleDataGroup(){const{enableGroup:t,groupMode:e,groupAppDEFieldId:a}=this.model;if(t&&e){if(!a)throw new m(this.model,"\u5206\u7EC4\u5C5E\u6027\u6CA1\u6709\u914D\u7F6E");e==="AUTO"?this.handleAutoGroup():e==="CODELIST"&&await this.handleCodeListGroup()}}handleAutoGroup(){const{groupAppDEFieldId:t}=this.model;if(t){const{items:e}=this.state,a=new Map;e.forEach(i=>{const r=i[t];w(r)||(a.has(r)||a.set(r,[]),a.get(r).push(new ne(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 ne(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}}),Eu=d("KanbanService",class extends Us{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}}),Nc=d("KanbanController",class extends jo{get enableEditOrder(){return this.model.enableCardEditOrder===!0}get enableEditGroup(){return this.model.enableCardEditGroup===!0}async initControlService(){this.service=new Eu(this.model),await this.service.init(this.context)}initState(){super.initState(),this.state.size=this.model.pagingSize||1e3,this.state.updating=!1,this.state.draggable=this.enableEditOrder||this.enableEditGroup}async onCreated(){await super.onCreated()}sortItems(t){const e=this.model.minorSortAppDEFieldId,{minorSortDir:a}=this.model;if(!e)throw new m(this.model,"\u6392\u5E8F\u5C5E\u6027\u6CA1\u914D\u7F6E");if(!a)throw new m(this.model,"\u6392\u5E8F\u65B9\u5411\u6CA1\u914D\u7F6E");const s=a==="ASC";t.forEach(i=>{const r=i[e];if(w(r))i[e]=0;else{const n=Number(r);if(Number.isNaN(n))throw new f("".concat(i.srfmajortext,"\u7684\u6392\u5E8F\u5C5E\u6027\u65E0\u6CD5\u8F6C\u6362\u6210\u6570\u503C"))}}),t.sort((i,r)=>s?i[e]-r[e]:r[e]-i[e])}async afterLoad(t,e){return this.sortItems(this.state.items),super.afterLoad(t,e)}handleDataGroup(){if(!this.model.enableGroup||this.model.groupMode==="NONE")throw new f("\u770B\u677F\u90E8\u4EF6\u5FC5\u987B\u5F00\u542F\u5206\u7EC4");return super.handleDataGroup()}async onDragChange(t){if(!this.enableEditGroup&&t.from!==t.to){ibiz.message.warning("\u5F53\u524D\u770B\u677F\u4E0D\u5141\u8BB8\u8C03\u6574\u5206\u7EC4\uFF01");return}const e=this.model.minorSortDir==="ASC",{from:a,to:s,fromIndex:i,toIndex:r}=t,n=this.model.groupAppDEFieldId,o=this.model.minorSortAppDEFieldId,u=[],c=this.state.groups.find(I=>I.key===a),l=this.state.groups.find(I=>I.key===s);if(!this.enableEditOrder){if(t.from===t.to){ibiz.message.warning("\u5F53\u524D\u770B\u677F\u4E0D\u5141\u8BB8\u8C03\u6574\u6B21\u5E8F");return}const I=c.children[i];return I[n]=t.to,this.updateChangedItems([I])}const h=I=>I+(100-I%100),p=[...l.children],E=[...l.children],C=c.children[i];t.from!==t.to?(C[n]=t.to,E.splice(r,0,C)):(E.splice(i,1),E.splice(r,0,C));const S=c.children.splice(i,1);l.children.splice(r,0,...S),e||(p.reverse(),E.reverse());let A,y=[],F;E.forEach((I,N)=>{A===void 0?I!==p[N]&&(p[N]?A=p[N][o]||100:A=N===0?100:h(p[N-1][o]),I[o]=A,u.push(I)):(A>=I[o]?(y.length>0&&(y.forEach(z=>{z[o]=h(F),u.push(z),F=z[o]}),A=F,F=0,y=[]),I[o]=h(A),u.push(I)):(y.length===0&&(F=A),y.push(I)),A=I[o])}),this.updateChangedItems(u)}async updateChangedItems(t){try{this.state.updating=!0,await Promise.all(t.map(async e=>{const a=_(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)}}}),gu=d("TreeGridExService",class extends Ys{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 Rs(t,a,{data:E,leaf:!!s.leaf,navContext:u,navParams:c}))}return[]}handleResponseForMultiple(t,e){const a=super.handleResponse(t);return a.headers&&(a.headers["x-page"]&&(a.page=Number(a.headers["x-page"])),a.headers["x-per-page"]&&(a.size=Number(a.headers["x-per-page"])),a.headers["x-total"]&&(a.total=Number(a.headers["x-total"]))),a.ok&&(kt(a.data)?a.data=a.data.map(s=>this.toUIDataForMultiple(s,e)):a.data=this.toUIDataForMultiple(a.data,e)),a}toUIDataForMultiple(t,e){const a=this.multipleUiMap.get(e);return new G(t,a)}}),Rc=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 gu(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}}),Lc=d("TreeGridController",class extends uu{}),Tc=d("TreeGridService",class extends Hs{}),Cu=d("MEditViewPanelService",class extends at{}),Bc=d("MEditViewPanelController",class extends tt{constructor(){super(...arguments),this.parameters=[]}async onCreated(){await super.onCreated(),this.service=new Cu(this.model),await this.service.init(this.context),await this.initParameters()}initState(){super.initState(),this.state.panelUiItems=[],this.state.activeTab="",this.state.size=1e3,this.state.isNeedScroll=!1}async initParameters(){var t,e;if(this.model.embeddedAppViewId){const a=await ibiz.hub.getAppView(this.model.embeddedAppViewId);if(a.appDataEntityId){const s=await ibiz.hub.getAppDataEntity(a.appDataEntityId);a&&s?this.parameters=[{parameterName:(t=s.keyAppDEFieldId)==null?void 0:t.toLowerCase(),pathName:(e=s.codeName)==null?void 0:e.toLowerCase()}]:this.parameters=[]}}}async afterLoad(t,e){await super.afterLoad(t,e);const a=this.state.panelUiItems.filter(s=>s.id.startsWith("mockId:"));return this.state.panelUiItems=[],this.doItems(e,a),this.model.panelStyle==="TAB_TOP"&&this.state.panelUiItems.length>0&&a.length===0&&(this.state.activeTab=this.state.panelUiItems[0].id),e}handlePanelItemParams(t){const[{parameterName:e}]=this.parameters,s={id:t[e]?t[e]:"mockId:".concat(Y()),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)}}),Du=d("MapService",class extends at{async init(t){await super.init(t)}async fetchAll(t,e={}){var a;const s=[];if((a=this.model.sysMapItems)!=null&&a.length){const i=ibiz.hub.getApp(t.srfappid);await Promise.all(this.model.sysMapItems.map(async r=>{const{appDataEntityId:n,appDEDataSetId:o,customCond:u}=r,c=t.clone(),l={...e};if(u){const p=B.execSingleLine(u);if(p){const{navigateContexts:E,navigateParams:C}=Pe(p);E&&Object.assign(c,b(E,e,t)),C&&Object.assign(l,b(E,e,t))}}const h=await i.deService.exec(n,o,c,l);h.data&&s.push(...h.data.map(p=>new bn(p,r)))}))}return new R(s,200)}}),Oc=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 Du(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]})}}),wu=d("HubController",class{constructor(){this.session={}}login(t,e){return ibiz.auth.login(t,e)}logout(){return ibiz.auth.logout()}}),vu=class{constructor(){this.convert=new On,this.controller=new wu,this.appMap=new Map,this.apps=new Map,this.view2appMap=new Map,this.views=new Map,this.dataEntities=new Map,this.config=new Mn,this.defaultAppIndexViewName="Index"}calcAppViewId(t){let e="";if(t.indexOf(".")!==-1){const a=t.split(".");e=a[a.length-1]}else e=t.toLowerCase();return e}registerModelLoaderProvider(t){this.modelLoaderProvider=t}registerApp(t){this.apps.set(t.codeName,t)}registerAppView(t){this.views.set(t.codeName,t)}registerAppDataEntity(t,e=ibiz.env.appId){this.dataEntities.has(e)||this.dataEntities.set(e,new Map),this.dataEntities.get(e).set(t.id,t)}setAppView(t,e=ibiz.env.appId){const a=this.calcAppViewId(t);this.view2appMap.set(a,e)}hasAppView(t){const e=this.calcAppViewId(t);return this.view2appMap.has(e)}async getAppStyle(t){return this.modelLoaderProvider?this.modelLoaderProvider.getAppStyle(t):null}async getAppView(t){const e=this.calcAppViewId(t),a=this.view2appMap.get(e)||ibiz.env.appId;if(this.appMap.has(a)||await this.createApp(a),this.views.has(e))return this.views.get(e);if(this.modelLoaderProvider){const s=await this.modelLoaderProvider.getAppView(a,e);return this.registerAppView(s),s}throw new f("\u89C6\u56FE[".concat(e,"]\u4E0D\u5B58\u5728"))}async getAppDataEntity(t,e=ibiz.env.appId){if(this.dataEntities.has(e)){const a=this.dataEntities.get(e);if(a.has(t))return a.get(t)}if(this.modelLoaderProvider){let a;return t.indexOf(".")!==-1?a=await this.modelLoaderProvider.getAppDataEntity(e,t):a=await this.modelLoaderProvider.getAppDataEntityByCodeName(e,t),this.registerAppDataEntity(a,e),a}throw new f("\u672A\u627E\u5230\u5E94\u7528\u5B9E\u4F53[".concat(t,"]"))}async createApp(t){if(this.appMap.has(t))return this.appMap.get(t);let e;if(this.apps.has(t))e=this.apps.get(t);else if(this.modelLoaderProvider)e=await this.modelLoaderProvider.getApp(t),this.registerApp(e);else throw new f("\u672A\u627E\u5230\u5E94\u7528[".concat(t,"]\u6A21\u578B"));const a=new Tn(e);return this.appMap.set(t,a),await a.init(),this.configCache||(this.configCache=new $t(ibiz.env.appId,"PSSysHub","Global")),a}async getAppAsync(t=ibiz.env.appId){return this.createApp(t)}getApp(t){let e=null;return t?t instanceof Object?e=t.id:e=t:e=ibiz.env.appId,this.appMap.get(e)}},Au=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)}}),Iu=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||""}))}}),_c=d("MDViewEngine",class extends Iu{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==="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())||_(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=v(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)}}}),yu=class{handle(t){return t instanceof m||t instanceof D?ibiz.message.error(t.message,10,!0):t instanceof Ot?t.status===401?ibiz.message.error("\u6CA1\u6709\u6CE8\u518C\u65E0\u6743\u9650\u9519\u8BEF\u5904\u7406\u5668"):ibiz.notification.error({title:"",desc:t.message,duration:10}):t instanceof ce?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}},Fu=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)}},Pu=class{constructor(){this.layoutPanel=new dr,this.text=new wr,this.hbs=new xi,this.rawValue=new vr,this.error=new Fu,this.error.register(new yu)}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)}},oe=class{constructor(t,e){this.logic=t,this.scheduler=e,this.type=t.logicType}execute(t){throw new f("Method not implemented.")}destroy(){}},bu=class{constructor(){this.constructorMap=new Map}register(t,e){this.constructorMap.set(t,e)}createExecutor(t,e){const a=this.constructorMap.get(t.logicType);if(!a)throw new D(t,"\u903B\u8F91\u7C7B\u578B ".concat(t.logicType," \u6682\u672A\u652F\u6301\uFF01"));return a(t,e)}},Su=class extends oe{constructor(){super(...arguments),this.initialized=!1}convertScriptArgs(t){return t}init(t,e,a){this.convertScriptArgs=e;const s=this.logic.scriptCode;this.scriptFn=B.createScriptFn(t,s,a),this.initialized=!0}execute(t){const e=this.convertScriptArgs(t);return this.scriptFn.exec(e)}},qs=class extends oe{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");se(e,a,t)}},Qs=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()),we(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)}},Nu=class extends Qs{constructor(t){const e=t.filter(a=>a.triggerType!=="APPVIEWENGINE");e.forEach(a=>{a.triggerType==="CTRLEVENT"&&(a.ctrlName=a.itemName||a.logicTag)}),super(e)}},Ru=class extends Qs{constructor(t){t.forEach(e=>{e.triggerType=e.logicTrigger}),super(t)}triggerViewEvent(t){const e={eventName:t.eventName,triggerType:"VIEWEVENT"};this.triggerAndExecute(e,t)}},Lu=class{constructor(){this.constructorMap=new Map}register(t,e){this.constructorMap.set(t,e)}createTrigger(t,e){const a=this.constructorMap.get(t.triggerType);if(!a)throw new D(t,"\u89E6\u53D1\u5668\u7C7B\u578B ".concat(t.triggerType," \u6682\u672A\u652F\u6301\uFF01"));return a(t,e)}},Tu=class{constructor(){this.executorFactory=new bu,this.triggerFactory=new Lu}createViewScheduler(t){return new Ru(t)}createControlScheduler(t){return new Nu(t)}},Lt=class{constructor(t,e){this.logic=t,this.scheduler=e,this.type=t.triggerType}bindExecutor(t){this.executor=t,this.executor.type==="SCRIPT"&&this.bindScriptExecutor(t)}bindScriptExecutor(t){t.initialized||t.init([],e=>e,{isAsync:!0,singleRowReturn:!1})}match(t){return t.triggerType===this.type}execute(t){if(this.executor)return this.executor.execute(t);throw new f("".concat(this.logic.id,"\u6CA1\u6709\u7ED1\u5B9Aexecutor"))}destroy(){this.executor=void 0}},Bu=class extends Lt{},aa=class extends Lt{bindExecutor(t){if(super.bindExecutor(t),this.executor.type!=="SCRIPT")throw new f("\u9884\u5B9A\u4E49\u903B\u8F91\u7C7B\u578B".concat(this.type,"\u7684\u89E6\u53D1\u5668\u7C7B\u578B\u53EA\u80FD\u662F\u811A\u672C"))}bindScriptExecutor(t){t.init(["context","viewparams","data","env"],e=>{const{context:a,params:s,data:i}=e;return{context:a,params:s,data:i?.[0]||{},env:ibiz.env}},{singleRowReturn:!0,isAsync:!1})}match(t){var e,a;return super.match(t)&&((e=t.itemName)==null?void 0:e.toLowerCase())===((a=this.logic.itemName)==null?void 0:a.toLowerCase())}execute(t){return!!this.executor.execute(t)}},Ou=class extends Lt{constructor(){super(...arguments),this.timer=null}start(){if(!this.logic.timer)throw new m(this.logic,"\u5B9A\u65F6\u5668\u7F3A\u5C11\u5B9A\u65F6\u95F4\u9694");this.timer=setInterval(()=>{if(!this.scheduler.defaultParamsCb)throw new f("\u5B9A\u65F6\u5668\u7F3A\u5C11\u9ED8\u8BA4\u53C2\u6570\u56DE\u8C03");const t=this.scheduler.defaultParamsCb();this.executor.execute(t)},this.logic.timer)}destroy(){super.destroy(),this.timer&&clearInterval(this.timer)}},_u=class extends oe{execute(t){if(this.logic.id==="opendata"&&this.logic.builtinAppUILogic)return this.executeOpenDataAppUILogic(this.logic.builtinAppUILogic,t);if(this.logic.id==="newdata"&&this.logic.builtinAppUILogic)return this.executeNewDataAppUILogic(this.logic.builtinAppUILogic,t)}async executeOpenDataAppUILogic(t,e){const{context:a,params:s,...i}=e,{data:r}=e;if(!r?.[0])throw new f("opendata\u6CA1\u6709\u53EF\u64CD\u4F5C\u6570\u636E\uFF01");const n=t.openDataAppViews;let o;if(n)o=await this.calcOpenViewRef(t,e);else if(o=t.openDataAppView,!o)throw new m(t,"opendata\u89C6\u56FE\u903B\u8F91\u6CA1\u6709\u914D\u7F6E\u9ED8\u8BA4\u6253\u5F00\u89C6\u56FE");const u=o.refAppViewId;if(!u)throw new m(t,"opendata\u89C6\u56FE\u903B\u8F91\u7684\u9ED8\u8BA4\u6253\u5F00\u89C6\u56FE\u6CA1\u6709\u5B9E\u9645\u5F15\u7528\u89C6\u56FE");const c=o.navigateContexts||[],l=Object.assign(a,b(c,r[0],s,a));let h={};const p=o.navigateParams;return x(p)&&(h=b(p,r[0],s,a)),ibiz.commands.execute(Z.TAG,u,l,h,i)}async calcOpenViewRef(t,e){const a=await ibiz.hub.getAppDataEntity(e.view.model.appDataEntityId),s=a.formTypeAppDEFieldId||a.dataTypeAppDEFieldId;if(!s)throw new m(t,"".concat(a.codeName,"[\u591A\u8868\u5355\u5B9E\u4F53] or [\u7D22\u5F15\u5B9E\u4F53]\u7F3A\u5C11\u7C7B\u578B\u5C5E\u6027\u914D\u7F6E"));const{data:i}=e,r=i[0][s];if(!r)throw new m(t,"\u6570\u636E\u6E90\u65E0\u8868\u5355\u7C7B\u578B\u5E94\u7528\u5B9E\u4F53\u5C5E\u6027\u503C");const n=t.openDataAppViews,o=n?.find(u=>u.refMode===r);if(!o)throw new f("\u6CA1\u6709\u627E\u5230\u4E0E\u8868\u5355\u7C7B\u578B".concat(r,"\u76F8\u5173\u7684\u5B9E\u4F53\u7684\u7F16\u8F91\u89C6\u56FE"));return o}async executeNewDataAppUILogic(t,e){const{context:a,params:s,...i}=e,{data:r,view:n}=e,{enableWizardAdd:o,enableBatchAdd:u,batchAddOnly:c,newDataAppView:l}=t;let h;if(o){if(h=await this.getWizardNewViewRef(t,e),!h)return{ok:!1}}else if(u){const F=_(n.parentView.model.appDataEntityId),I=t.batchAddAppViews;if(h=I?.find(N=>N.refMode.toLowerCase()!==F),!h)throw new m(t,"\u6CA1\u6709\u627E\u5230\u6279\u6DFB\u52A0\u9700\u8981\u6253\u5F00\u7684\u9009\u62E9\u89C6\u56FE")}else{if(c)throw new D(t,"batchAddOnly\u6682\u672A\u652F\u6301");if(h=l,!h||!h.refAppViewId)throw new m(t,"newdata\u89C6\u56FE\u903B\u8F91\u6CA1\u6709\u914D\u7F6E\u9ED8\u8BA4\u65B0\u5EFA\u6570\u636E\u89C6\u56FE")}let p={},E={};const C=r?.[0]||{},S=h.navigateContexts;x(S)&&(p=b(S,C,s,a)),p=Object.assign(a,p);const A=h.navigateParams;if(x(A)&&(E=b(A,C,s,a)),s.srfcopymode){const I=(await ibiz.hub.getAppDataEntity(n.model.appDataEntityId)).keyAppDEFieldId;I&&C&&(E[I]=C.srfkey,E.srfcopymode=!0)}E.srfuf=0;const y=await ibiz.commands.execute(Z.TAG,h.refAppViewId,p,E,i);return u&&y.data&&await this.doBatchAdd(t,y.data,a,h),y}async getWizardNewViewRef(t,e){var a;const{wizardAppView:s,newDataAppViews:i}=t,{context:r,params:n,...o}=e;if(!s||!s.refAppViewId)throw new m(t,"\u7F3A\u5C11\u9ED8\u8BA4\u7D22\u5F15\u5B9E\u4F53\u9009\u62E9\u89C6\u56FE");const u=await ibiz.commands.execute(Z.TAG,s.refAppViewId,r,n,{...o,openMode:"POPUPMODAL"});if(!u.ok)return;const c=(a=u.data)==null?void 0:a[0];if(!c)throw new f("\u8BF7\u9009\u4E2D\u4E00\u6761\u6570\u636E");const l=c.srfkey,h=i?.find(p=>p.refMode===l);if(!h)throw new f("\u6CA1\u6709\u627E\u5230\u4E0E\u7D22\u5F15\u7C7B\u578B".concat(l,"\u76F8\u5173\u7684\u5B9E\u4F53\u7684\u7F16\u8F91\u89C6\u56FE"));return h}async doBatchAdd(t,e,a,s){var i;if(e?.length){const r=await ibiz.hub.getAppDataEntity(t.appDataEntityId,a.srfappid),n=r.minorAppDERSs,o=s.refMode.toLowerCase();if(!n)throw new m(r,"\u5B9E\u4F53\u6CA1\u6709\u4ECE\u5173\u7CFB\u96C6\u5408\uFF01");let u;n?.forEach(p=>{const E=_(p.majorAppDataEntityId);o===E&&(u=p.parentAppDEFieldId)});const c=(i=s.navigateParams)==null?void 0:i.find(p=>p.key==="keymapping");let l=[];if(c){const p=c.value.split(";"),E={};for(const C of p){const[S,A]=C.split(":");S&&A&&(E[S]=A)}l=e.map(C=>{const S={[u]:C.srfkey};for(const A in E)if(Object.prototype.hasOwnProperty.call(E,A)){const y=E[A];Object.prototype.hasOwnProperty.call(C,A)&&(S[y]=C[A])}return S})}else l=e.map(p=>({[u]:p.srfkey}));await ibiz.hub.getApp(a.srfappid).deService.exec(r.id,"Create",a,l)}}},Mu=class extends Lt{constructor(t,e){super(t,e),this.logic=t,this.scheduler=e,this.listenEventNames=[];const a=t.eventNames.split(";");this.listenEventNames=a.map(s=>Oe[s]||s)}match(t){return super.match(t)&&this.listenEventNames.includes(t.eventName)}},xu=class extends Lt{constructor(t,e){super(t,e),this.logic=t,this.scheduler=e,this.listenEventNames=[];const a=t.eventNames.split(";");this.listenEventNames=a.map(s=>W[s]||s)}match(t){return super.match(t)&&t.ctrlName.toLowerCase()===this.logic.ctrlName.toLowerCase()&&this.listenEventNames.includes(t.eventName)}},Vu=class extends oe{execute(t){if(!this.logic.appDEUIActionId)throw new m(this.logic,"\u903B\u8F91\u4E2D\u7F3A\u5C11\u89E6\u53D1\u5E94\u7528\u5B9E\u4F53\u754C\u9762\u884C\u4E3Aid");U.execAndResolved(this.logic.appDEUIActionId,t)}};function ku(){ibiz.scheduler=new Tu,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 Ou(t,e)),ibiz.scheduler.triggerFactory.register("CUSTOM",(t,e)=>new Bu(t,e)),ibiz.scheduler.triggerFactory.register("VIEWEVENT",(t,e)=>new Mu(t,e)),ibiz.scheduler.triggerFactory.register("CTRLEVENT",(t,e)=>new xu(t,e)),ibiz.scheduler.executorFactory.register("SCRIPT",(t,e)=>new Su(t,e)),ibiz.scheduler.executorFactory.register("APPDEUILOGIC",(t,e)=>new qs(t,e)),ibiz.scheduler.executorFactory.register("DEUILOGIC",(t,e)=>new qs(t,e)),ibiz.scheduler.executorFactory.register("APPUILOGIC",(t,e)=>new _u(t,e)),ibiz.scheduler.executorFactory.register("APPDEUIACTION",(t,e)=>new Vu(t,e))}function Wu(){const{ibiz:t}=window;t.util=new Pu,t.hub=new vu,t.register=new Ei,t.config=new mi,t.auth=new vn,t.engine=new Au,Bs(),Ws(),Ds(),ku()}var Mc=d("PluginStaticResource",class{constructor(t){this.styleElementMap=new Map,this.url=new URL(t);const e=Ie.dirname(this.url.pathname);this.baseDir=e}dir(t){return Ie.resolve(this.baseDir,t)}async loadStyle(t){const e=t.map(a=>{const s=this.dir(a);return this.styleElementMap.has(s)?!1:(this.styleElementMap.set(s,null),new Promise((i,r)=>{const n=document.createElement("link");n.setAttribute("type","text/css"),n.setAttribute("rel","stylesheet"),n.setAttribute("href",s),n.onload=i,n.onerror=r,document.head.appendChild(n)}))});try{await Promise.all(e)}catch(a){ibiz.log.error(a)}}}),xc=d("RemotePluginItem",class{constructor(t,e,a){this.tag=t,this.repo=e,this.config=a}})}}});
4
+ `):i===2&&o.length>4?"".concat(o.slice(0,4),"..."):o,rotate:i===3?45:0}};r&&(n=Ct(n,$e(r))),e.push(n)}),e}async init(t,e){await this.loadCodeList(t,e),this.entity=await ibiz.hub.getAppDataEntity(this.model.appDataEntityId),this.initSeriesGenerators()}getFieldKey(t){const e=this.entity.appDEFields.find(s=>s.name===t);return e?e.codeName.toLowerCase():t.toLowerCase()}async loadCodeList(t,e){var s;if(this.codeListMap.clear(),!((s=this.model.dechartSerieses)!=null&&s.length))return;const a=ibiz.hub.getApp(t.srfappid),i=async r=>{if(!r||this.codeListMap.has(r))return;const n=await a.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(s=>{s.model.seriesType==="radar"&&s.calcRadarCoordSystem(t)}),this.radarMap.size&&(this.options.radar=[...this.radarMap.values()].map(s=>s.toOptions()));const e=[];return this.seriesGenerators.forEach(s=>{const a=s.calcByData(t);a instanceof Array?e.push(...a):e.push(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}getSrfkeyByParams(t){const e=this.seriesGenerators[t.seriesIndex];if(!e)throw new f("\u627E\u4E0D\u5230".concat(t.seriesIndex,"\u5E8F\u5217\u7684generator\uFF01"));return e.getSrfkeyByParams(t)}},Eo=d("ChartService",class extends st{}),Zu=d("ChartController",class extends tt{initState(){super.initState(),this.state.size=1e3}async onCreated(){await super.onCreated(),this.service=new Eo(this.model),await this.service.init(this.context),this.generator=new mo(this.model),await this.generator.init(this.context,this.params),window.addEventListener("resize",this.resizeChart)}async afterLoad(t,e){const s=await super.afterLoad(t,e);return e.forEach(a=>{Object.assign(a,{srfcount:1})}),this.calcOptions(),s}initChart(t){this.chart=t,this.chart.on("click",e=>{const s=this.generator.getSrfkeyByParams(e),a=this.state.items.find(i=>i.srfkey===s);console.log("\u5B9E\u4F53\u6570\u636E",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()}}),tc=d("CaptionBarController",class extends H{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):"")})}}),go=class{constructor(t,e){this.deLogicParams=t,this.parameters=e,this.params={},this.result=null,this.isEndNode=!1,this.defaultParamName="Default"}get context(){return Object.prototype.hasOwnProperty.call(this.params,"context")?this.params.context:this.parameters.context}get data(){return this.parameters.data}get viewParam(){return Object.prototype.hasOwnProperty.call(this.params,"viewParam")?this.params.viewParam:this.parameters.params}resetParam(t){var e;(e=this.deLogicParams.get(t))==null||e.calc(this)}renewParam(t){var e;(e=this.deLogicParams.get(t))==null||e.renew(this)}setLastReturn(t){this.lastReturn=t}initLastReturnParam(t){Object.defineProperty(this.params,t,{enumerable:!0,configurable:!0,get:()=>this.lastReturn})}isEntityParam(t){const e=this.deLogicParams.get(t);return!!(e&&e.model.entityParam)}},Wa=class{};function at(t,e){const{srcDEUILogicParamId:s,srcFieldName:a,srcValue:i}=e,r=e.srcValueType||"SRCDLPARAM",n=a;let o;switch(r){case"SRCDLPARAM":o=t.params[s];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=v(ibiz.env);break;default:throw new D(e,"\u6682\u672A\u652F\u6301\u6E90\u503C\u7C7B\u578B".concat(r))}if(o&&n)try{Array.isArray(o)?o=o[Number(n)]:o=B.execScriptFn({srcValue:o},"srcValue.".concat(n),{singleRowReturn:!0,isAsync:!1})}catch(u){throw ibiz.log.error("\u4ECE\u6E90\u53C2\u6570\u53D6\u5C5E\u6027".concat(n,"\u62A5\u9519\uFF0C\u6E90\u53C2\u6570\uFF1A"),o),u}return o}var Co=class extends Wa{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,s){const a=at(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=s[this.value]!=null?s[this.value]:e[this.value];return $(a,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=at(t,{srcDEUILogicParamId:this.srcParam,srcFieldName:this.value});return $(a,this.op,i)}case"CURTIME":throw new D(this.model,"\u6682\u672A\u652F\u6301\u6761\u4EF6\u503C\u7C7B\u578B\u4E3A[\u5F53\u524D\u65F6\u95F4]");default:return $(a,this.op,this.value)}}},Do=class ri extends Wa{constructor(e){super(),this.model=e;const s=e.deuilogicLinkConds||[];this.conds=s.map(a=>a.logicType==="SINGLE"?new Co(a):new ri(a))}get op(){return this.model.groupOP}get notMode(){return this.model.notMode===!0}test(e,s,a){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,s,a);if(this.op==="AND"&&o===!1){i=!1;break}if(this.op==="OR"&&o===!0){i=!0;break}}return this.notMode?!i:i}},wo=class{constructor(t){this.model=t,this.srcNode=null,this.dstNode=null,this.groupCond=null;const{linkMode:e,deuilogicLinkGroupCond:s}=this.model;(e||0)===0&&s&&(this.groupCond=new Do(s))}async exec(t){const{linkMode:e}=this.model,{context:s,data:a}=t;switch(e||0){case 0:return this.groupCond?this.groupCond.test(t,s,a&&a.length>0?a[0]:{}):!0;case 1:return!0;case 2:throw new D(this.model,"\u672A\u652F\u6301\u7684\u903B\u8F91\u8FDE\u63A5\u7C7B\u578B: \u5F02\u6B65\u7ED3\u675F");case 3:throw new D(this.model,"\u672A\u652F\u6301\u7684\u903B\u8F91\u8FDE\u63A5\u7C7B\u578B: \u5F02\u6B65\u62D2\u7EDD");case 9:throw new D(this.model,"\u672A\u652F\u6301\u7684\u903B\u8F91\u8FDE\u63A5\u7C7B\u578B: \u5F02\u5E38\u5904\u7406");default:throw new D(this.model,"\u672A\u652F\u6301\u7684\u903B\u8F91\u8FDE\u63A5\u7C7B\u578B:".concat(e))}}},M=class{constructor(t){this.model=t,this.links=(t.deuilogicLinks||[]).map(e=>new wo(e))}},vo=class extends M{async exec(t){const{dstAppDataEntityId:e,dstAppDEActionId:s,dstDEUILogicParamId:a,retDEUILogicParamId:i}=this.model;if(!e)throw new m(this.model,"\u672A\u6307\u5B9A\u5E94\u7528\u5B9E\u4F53");if(!s)throw new m(this.model,"\u672A\u6307\u5B9A\u5B9E\u4F53\u884C\u4E3A");const r=t.params[a],o=await ibiz.hub.getApp(t.context.srfappid).deService.exec(e,s,t.context,r,t.viewParam);o.ok&&(t.params[i]=o.data)}},Ao=class extends M{async exec(t){const{dstAppDEUIActionId:e,dstDEUILogicParamId:s}=this.model,{data:a,parameters:i}=t;if(!e)throw new m(this.model,"\u672A\u914D\u7F6E\u754C\u9762\u884C\u4E3A");let r=[a];if(s){const n=t.params[s];n instanceof Array?r=n:r=[n]}await U.execAndResolved(e,{...i,context:t.context,params:t.viewParam,data:r})}},Io=class extends M{async exec(t){}},yo=class extends M{async exec(t){t.isEndNode=!0;const{returnType:e,rawValue:s,returnParamId:a}=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(s);break;case"LOGICPARAM":t.result=t.params[a];break;case"LOGICPARAMFIELD":case"BREAK":default:throw new D(this.model,"\u6682\u672A\u652F\u6301\u7684\u7ED3\u675F\u8282\u70B9\u8FD4\u56DE\u503C\u7C7B\u578B: ".concat(e))}}},Fo=class extends M{async exec(t){const e=this.model.deuilogicNodeParams;if(e?.length)for(const s of e)switch(s.paramAction){case"SETPARAMVALUE":await this.setParamValue(s,t);break;case"RESETPARAM":await this.resetParam(s,t);break;case"COPYPARAM":await this.copyParam(s,t);break;case"BINDPARAM":await this.bindParam(s,t);break;case"RENEWPARAM":await this.renewParam(s,t);break;case"APPENDPARAM":await this.appendParam(s,t);break;case"SORTPARAM":await this.sortParam(s,t);break;default:throw new D(s,"\u6682\u672A\u652F\u6301\u903B\u8F91\u5904\u7406\u53C2\u6570\u64CD\u4F5C".concat(s.paramAction))}}setParamValue(t,e){const{dstFieldName:s,dstDEUILogicParamId:a}=t;if(!a)throw new f("\u6CA1\u6709\u76EE\u6807\u53C2\u6570\u5BF9\u8C61id");let i=s;e.isEntityParam(a)&&(i=i?.toLowerCase());const r=at(e,t);if(i)try{B.execScriptFn({srcVal:r,dstParam:e.params[a]},"dstParam.".concat(s," = srcVal"),{singleRowReturn:!1,isAsync:!1})}catch(n){throw ibiz.log.error("\u7ED9\u76EE\u6807\u53C2\u6570\u5C5E\u6027".concat(s,"\u8D4B\u503C\u62A5\u9519\uFF0C\u76EE\u6807\u53C2\u6570\uFF1A"),e.params[a]),n}else e.params[a]=r}copyParam(t,e){const{dstDEUILogicParamId:s}=t,a=at(e,t);e.params[s]=v(a)}bindParam(t,e){const s=at(e,t);e.params[t.dstDEUILogicParamId]=s}resetParam(t,e){const{dstDEUILogicParamId:s}=t;e.resetParam(s)}renewParam(t,e){const{dstDEUILogicParamId:s}=t;e.renewParam(s)}appendParam(t,e){const{dstDEUILogicParamId:s,dstIndex:a,srcIndex:i,srcSize:r}=t,n=at(e,t),o=a||0,u=i||0,c=r||n.length;e.params[s].splice(o,0,...n.slice(u,c))}sortParam(t,e){const{dstDEUILogicParamId:s,dstFieldName:a,dstSortDir:i}=t,r=a;e.params[s].sort((o,u)=>i==="ASC"?o[r]-u[r]:u[r]-o[r])}},Po=class extends M{async exec(t){t.isEndNode=!0;const{invokeMethod:e,invokeCtrlId:s,invokeParamId:a}=this.model;if(!s)throw new m(this.model,"\u6CA1\u6709\u914D\u7F6E\u754C\u9762\u5BF9\u8C61");if(!a)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[a];if(!i)throw new f("\u6CA1\u6709\u627E\u5230\u64CD\u4F5C\u53C2\u6570".concat(a));const r=t.params[s];if(!r)throw new f("\u6CA1\u6709\u627E\u5230\u754C\u9762\u5BF9\u8C61".concat(s));if(!r[e]||!Ps(r[e]))throw new f("\u6CA1\u6709\u627E\u5230\u8C03\u7528\u65B9\u6CD5".concat(e));await r[e](i)}},bo=class extends M{async exec(t){const{dstDEUILogicParamId:e,srcDEUILogicParamId:s}=this.model;if(!e||!s)throw new m(this.model,"\u7F3A\u5C11\u76EE\u6807\u53C2\u6570\u5BF9\u8C61\u6216\u8005\u6E90\u53C2\u6570\u5BF9\u8C61\u914D\u7F6E");const a=at(t,this.model);t.params[e]=a}},So=class extends M{constructor(){super(...arguments),this.typeMap={INFO:"info",QUESTION:"success",WARNING:"warning",ERROR:"error"}}async exec(t){const{msgBoxType:e,buttonsType:s,msgBoxParamId:a}=this.model;if(!e)throw new m(this.model,"\u7F3A\u5C11\u6D88\u606F\u7C7B\u578B\u7684\u914D\u7F6E");if(!s)throw new m(this.model,"\u7F3A\u5C11\u6309\u94AE\u7C7B\u578B\u7684\u914D\u7F6E");let{title:i}=this.model,{message:r}=this.model;if(a){const l=t.params[a];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(s){case"YESNO":o.confirmButtonText="\u662F",o.cancelButtonText="\u5426",o.showConfirmButton=!0,o.showCancelButton=!0,u=["yes","no"];break;case"OK":o.confirmButtonText="\u786E\u5B9A",o.showConfirmButton=!0,o.showCancelButton=!1,u=["ok"];break;case"OKCANCEL":o.confirmButtonText="\u786E\u5B9A",o.cancelButtonText="\u53D6\u6D88",o.showConfirmButton=!0,o.showCancelButton=!0,u=["ok","cancel"];break;default:throw new D(this.model,"".concat(s,"\u6682\u672A\u652F\u6301"))}const c=await ibiz.modal.confirm(o);t.setLastReturn(u[c?0:1])}},No=class extends M{async exec(t){const e=await ga(this.model);e&&await e.exec(this.model,t)}},Ro=class extends M{async exec(t){const{dstDEUILogicParamId:e,name:s}=this.model;if(!e)throw new m(this.model,"\u7F3A\u5C11\u76EE\u6807\u53C2\u6570\u5BF9\u8C61\u914D\u7F6E");const a=t.params[e];console.log("\u903B\u8F91\u8282\u70B9".concat(s,"\u64CD\u4F5C\u53C2\u6570\u503C:"),a)}},Lo=class extends M{async exec(t){const{dstDEUILogicParamId:e}=this.model;if(!e)throw new m(this.model,"\u7F3A\u5C11\u76EE\u6807\u53C2\u6570\u5BF9\u8C61\u914D\u7F6E");t.resetParam(e)}},To=class extends M{async exec(t){const{dstDEUILogicParamId:e,srcDEUILogicParamId:s}=this.model;if(!e||!s)throw new m(this.model,"\u7F3A\u5C11\u76EE\u6807\u53C2\u6570\u5BF9\u8C61\u6216\u8005\u6E90\u53C2\u6570\u5BF9\u8C61\u914D\u7F6E");const a=at(t,this.model);t.params[e]=v(a)}},Bo=class extends M{async exec(t){const{dstDEUILogicParamId:e,srcDEUILogicParamId:s,dstIndex:a,srcIndex:i,srcSize:r}=this.model;if(!e||!s)throw new m(this.model,"\u7F3A\u5C11\u76EE\u6807\u53C2\u6570\u5BF9\u8C61\u6216\u8005\u6E90\u53C2\u6570\u5BF9\u8C61\u914D\u7F6E");const n=at(t,this.model),o=a||0,u=i||0,c=r||n.length;t.params[e].splice(o,0,...n.slice(u,c))}},Oo=class extends M{async exec(t){const{dstDEUILogicParamId:e,dstSortDir:s,dstFieldName:a}=this.model;if(!e||!a)throw new m(this.model,"\u7F3A\u5C11\u76EE\u6807\u53C2\u6570\u5BF9\u8C61\u6216\u76EE\u6807\u5C5E\u6027\u914D\u7F6E");const i=a;t.params[e].sort((n,o)=>s==="ASC"?n[i]-o[i]:o[i]-n[i])}},_o=class extends M{async exec(t){const{dstDEUILogicParamId:e}=this.model;if(!e)throw new m(this.model,"\u7F3A\u5C11\u76EE\u6807\u53C2\u6570\u5BF9\u8C61\u914D\u7F6E");t.renewParam(e)}},Mo=class extends M{async exec(t){const{dstAppDEDataSetId:e,dstAppDataEntityId:s,dstDEUILogicParamId:a,retDEUILogicParamId:i}=this.model;if(!a)throw new m(this.model,"\u7F3A\u5C11\u914D\u7F6E\u8FC7\u6EE4\u53C2\u6570");const r=t.params[a],o=await ibiz.hub.getApp(t.context.srfappid).deService.exec(s,e,t.context,r);o.ok&&(t.params[i]=o.data)}},xo=class extends M{async exec(t){const{errorInfo:e}=this.model;throw new f(e)}},Vo=class extends M{async exec(t){t.isEndNode=!0;const{eventName:e,eventParamId:s,fireCtrlId:a}=this.model;if(!a)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(!s)throw new m(this.model,"\u6CA1\u6709\u914D\u7F6E\u4E8B\u4EF6\u53C2\u6570");const i=t.params[a];if(!i)throw new f("\u6CA1\u6709\u627E\u5230\u89E6\u53D1\u5BF9\u8C61".concat(a));const r=t.params[s];if(!r)throw new f("\u6CA1\u6709\u627E\u5230\u4E8B\u4EF6\u53C2\u6570\u5BF9\u8C61".concat(s));await i.evt.emit(e,r)}},ko=class extends M{async exec(t){const{dstAppDELogicId:e,dstAppDataEntityId:s,dstDEUILogicParamId:a,retDEUILogicParamId:i}=this.model;if(!s)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(!a)throw new m(this.model,"\u6CA1\u6709\u914D\u7F6E\u4F20\u5165\u903B\u8F91\u53C2\u6570");const r=t.params[a];if(!r)throw new f("\u6CA1\u6709\u627E\u5230\u4F20\u5165\u53C2\u6570".concat(a));const n=await ba(e,s,t.context,r,t.params);i&&(t.params[i]=n)}},Wo=class{constructor(t){this.model=t}calc(t){const e=this.model.id,s=this.model,{parameters:a}=t,{context:i,params:r,data:n}=a,o=ibiz.hub.getApp(i.srfappid);if(s.codeName==="layoutPanel"){t.params[e]=a.view.layoutPanel.panelItems;return}if(s.default)s.entityListParam?t.params[e]=n||[]:t.params[e]=n&&n.length>0?n[0]:{};else if(s.activeContainerParam)t.params[e]=a.ctrl||a.view;else if(s.activeCtrlParam)t.params[e]=a.ctrl;else if(s.ctrlParam){const u=a.view.getController(s.codeName.toLowerCase());u?t.params[e]=u:ibiz.log.error("\u89C6\u56FE\u903B\u8F91\u521D\u59CB\u5316\u53C2\u6570\uFF0C\u672A\u627E\u5230".concat(s.codeName,"\u6307\u5B9A\u90E8\u4EF6\u5BF9\u8C61"))}else if(s.activeViewParam)t.params[e]=a.view;else if(s.appGlobalParam)t.params[e]=ibiz.env;else if(s.applicationParam)t.params[e]=o;else if(s.entityListParam)t.params[e]=[];else{if(s.entityPageParam)throw new D(s,"\u672A\u652F\u6301\u7684\u903B\u8F91\u53C2\u6570\u7C7B\u578B: \u5206\u9875\u67E5\u8BE2\u7ED3\u679C");if(s.entityParam)t.params[e]={};else if(s.lastReturnParam)t.initLastReturnParam(e);else if(s.navContextParam)t.params[e]=i;else{if(s.navViewParamParam)throw new D(s,"\u672A\u652F\u6301\u7684\u903B\u8F91\u53C2\u6570\u7C7B\u578B: \u89C6\u56FE\u8DEF\u7531\u53C2\u6570");if(s.routeViewSessionParam)throw new D(s,"\u672A\u652F\u6301\u7684\u903B\u8F91\u53C2\u6570\u7C7B\u578B: \u8DEF\u7531\u89C6\u56FE\u4F1A\u8BDD");if(s.simpleListParam)t.params[e]=[];else if(s.simpleParam)t.params[e]={};else if(s.viewNavDataParam)t.params[e]=r;else if(s.viewSessionParam)throw new D(s,"\u672A\u652F\u6301\u7684\u903B\u8F91\u53C2\u6570\u7C7B\u578B: \u5F53\u524D\u89C6\u56FE\u4F1A\u8BDD")}}}renew(t){const e=this.model.id,s=this.model;if(s.entityListParam||s.simpleListParam||s.entityPageParam)t.params[e]=[];else if(s.simpleParam||s.entityParam)t.params[e]={};else throw new D(s,"\u672A\u652F\u6301\u7684\u903B\u8F91\u53C2\u6570\u7C7B\u578B\u91CD\u65B0\u5EFA\u7ACB\u53D8\u91CF")}},Uo=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(s=>{const{logicNodeType:a}=s;let i;switch(a){case"BEGIN":i=new Io(s);break;case"END":i=new yo(s);break;case"DEACTION":i=new vo(s);break;case"DEUIACTION":i=new Ao(s);break;case"PREPAREJSPARAM":i=new Fo(s);break;case"RESETPARAM":i=new Lo(s);break;case"COPYPARAM":i=new To(s);break;case"BINDPARAM":i=new bo(s);break;case"VIEWCTRLINVOKE":i=new Po(s);break;case"MSGBOX":i=new So(s);break;case"DEBUGPARAM":i=new Ro(s);break;case"APPENDPARAM":i=new Bo(s);break;case"SORTPARAM":i=new Oo(s);break;case"RENEWPARAM":i=new _o(s);break;case"DEDATASET":i=new Mo(s);break;case"THROWEXCEPTION":i=new xo(s);break;case"VIEWCTRLFIREEVENT":i=new Vo(s);break;case"DELOGIC":i=new ko(s);break;case"PFPLUGIN":i=new No(s);break;default:throw new D(s,"\u672A\u652F\u6301\u7684\u903B\u8F91\u8282\u70B9\u7C7B\u578B: ".concat(a))}this.nodes.set(s.id,i)}),t.deuilogicParams.forEach(s=>{this.params.set(s.id,new Wo(s))}),this.nodes.forEach(s=>{s.links.forEach(a=>{a.srcNode=s,this.nodes.has(a.model.dstDEUILogicNodeId)&&(a.dstNode=this.nodes.get(a.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 go(this.params,t);this.initLogicParams(e);const{startDEUILogicNodeId:s}=this.model;if(s&&this.nodes.has(s)){const a=this.nodes.get(s);await this.deepExec(a,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:s}=t;for(let a=0;a<s.length;a++){const i=s[a];if(await i.exec(e)&&i.dstNode&&(await this.deepExec(i.dstNode,e),t.model.parallelOutput===!1))break}}},Je=new Map;async function ae(t,e,s){const i=await ibiz.hub.getApp(s.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 Uo(i)),await Je.get(i).exec(s),null}var U=d("UIActionUtil",class{static async exec(t,e){const s=await zt(t);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 ma(s)).exec(s,e)}static async execAndResolved(t,e){var s,a;const i=await this.exec(t,e);if(i.closeView)e.view.modal.ignoreDismissCheck=!0,e.view.closeView({ok:!0});else if(i.refresh)switch(i.refreshMode){case 1:e.view.callUIAction("Refresh");break;case 2:(s=e.view.parentView)==null||s.callUIAction("Refresh");break;case 3:(a=e.view.getTopView())==null||a.callUIAction("Refresh");break}}}),ie=class{async exec(t,e){const{context:s,params:a,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 ae(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||s,data:r.data||i,params:r.nextParams||a};if(t.closeEditView)this.doNextAction(t,l);else{const h=await this.doNextAction(t,l);if(h&&(Object.assign(r,h),h.cancel===!0))return this.returnError(r)}if(t.uilogicAttachMode==="AFTER"){if(!n)throw new m(t,"\u6CA1\u6709\u914D\u7F6E\u5B9E\u4F53\u754C\u9762\u903B\u8F91");await ae(n,o,e)}return r}returnError(t){return Object.assign(t,{refresh:!1,closeView:!1})}async isConfirm(t,e){const s=this.calcMessage("confirm",t,e);return t.enableConfirm&&s?ibiz.confirm.warning({title:"\u64CD\u4F5C\u786E\u8BA4",desc:s}):!0}async doNextAction(t,e){const s=t.nextId;if(s)return U.exec(s,e)}async handleParams(t,e,s,a){let i=[];const r=_(t.appDataEntityId),o=(await ibiz.hub.getAppDataEntity(t.appDataEntityId,e.srfappid)).keyAppDEFieldId;switch(t.actionTarget){case"NONE":i=[];break;case"SINGLEDATA":i=[s[0]];break;case"MULTIDATA":i=s;break;case"MULTIKEY":i=r&&s.length>0?s.map(C=>({[o]:C.srfkey||C[o]})):[{}];break;case"SINGLEKEY":{const C=s[0]||{};i=r?[{[o]:C.srfkey||C[o]}]:[{}]}break}const u=e.clone(),c=[...t.navigateContexts||[]];if(r&&t.actionTarget!=="NONE"){const{valueItem:C,paramItem:S}=t,A=S||r,y=C||"srfkey";c.unshift({key:A,value:y,rawValue:!1})}const l=["MULTIKEY","MULTIDATA"].includes(t.actionTarget)&&s.length>0,h=b(c,l?Fe(c,s):s[0]||{},a,e);Object.assign(u,h);const p=t.navigateParams,E=b(p,l?Fe(p,s):s[0]||{},a,u);return{resultContext:u,resultData:i,resultParams:E}}calcMessage(t,e,s){let a,i;const{confirmMsg:r,cmlanguageRes:n,successMsg:o,smlanguageRes:u}=e;switch(t){case"confirm":a=r,i=n;break;case"success":a=o,i=u;break}if(i){const c=ibiz.i18n.t(i.lanResTag,i.defaultContent||a);c!==i.lanResTag&&(a=c)}if(a){const{data:c}=s,l={...s};return c.length===1?[l.data]=c:c.length===0&&delete l.data,B.execScriptFn(l,"`".concat(a,"`"),{isAsync:!1,singleRowReturn:!0})}}},zo=d("BackendUIActionProvider",class extends ie{async execAction(t,e){const{context:s,params:a,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,s,i,a),p={...l},E=t.frontAppViewId;if(E){const F=await ibiz.commands.execute(Z.TAG,E,c,l,{event:r});if(!F?.ok)return n.cancel=!0,n;if(F?.ok&&F.data){h.length===0&&h.push({});const I=F.data.map(N=>{var z;return((z=N.getOrigin)==null?void 0:z.call(N))||N||{}});h.forEach(N=>{N.srfactionparam=I})}}const C=ibiz.hub.getApp(s?.srfappid),S=h.map(F=>{var I;return((I=F.getOrigin)==null?void 0:I.call(F))||F||{}}).map(F=>Object.assign(F,p)),A=["MULTIKEY","MULTIDATA"].includes(t.actionTarget),y=await C.deService.exec(o,u,c,A?S:S[0],p);if(y.ok){const F=this.calcMessage("success",t,e);F&&ibiz.message.success(F)}return Object.assign(n,{data:kt(y.data)?y.data:[y.data],nextContext:c,nextParams:p}),n}}),Go=d("SysUIActionProvider",class extends ie{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"]])}async execAction(t,e){const{view:s}=e,a=this.predefinedActionMap.get(t.predefinedType)||t.uiactionTag;return a==="Exit"?{closeView:!0}:await s.callUIAction(a,e)||{}}}),jo=d("FrontUIActionProvider",class extends ie{async execAction(t,e){const{context:s,params:a,data:i,event:r,noWaitRoute:n}=e;let o={};switch(t.frontProcessType){case"OPENHTMLPAGE":{const u=hs.fill(t.htmlPageUrl,s,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,s,i,a),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={...a,...l});break}case"OTHER":o=this.doOther(t,e);break;default:throw new D(t,"\u672A\u652F\u6301\u7684\u524D\u53F0\u5904\u7406\u6A21\u5F0F[".concat(t.frontProcessType,"]"))}return o}doOther(t,e){const{scriptCode:s}=t,{context:a,params:i,data:r,event:n}=e;if(s)return B.execScriptFn({context:a,params:i,data:r,el:n?.target},s)||{};throw new m(t,"\u81EA\u5B9A\u4E49\u7C7B\u578B\u7F3A\u5C11\u914D\u7F6E\u811A\u672C\u4EE3\u7801")}}),Ko=d("WFWithdrawUIActionProvider",class extends ie{async execAction(t,e){const{view:s}=e,a=await ibiz.modal.confirm({title:"\u63D0\u793A",desc:"\u662F\u5426\u786E\u8BA4\u6267\u884C\u64A4\u56DE\u64CD\u4F5C\uFF1F"});let i=!1;return a&&s&&(await s.call("WFWithdraw",e),i=!0),{refresh:!1,closeView:i}}});function Ua(){const t=new jo;Nt("FRONT",()=>t);const e=new zo;Nt("BACKEND",()=>e);const s=new Go;Nt("SYS",()=>s);const a=new Ko;Nt("DEUIACTION_WFWithdraw",()=>a)}var Xo=d("ToolbarController",class extends H{get _evt(){return this.evt}initState(){super.initState(),this.state.buttonsState=new ft,this.state.viewMode="EMBED",this.state.extraButtons={}}async doUIAction(t,e,s={}){if(t.itemType==="DEUIACTION"){const a=t.uiactionId,i=await zt(a);if(!i)throw new f("\u6CA1\u6709\u627E\u5230\u754C\u9762\u884C\u4E3A\u6A21\u578B".concat(a));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(s,u.params),await U.execAndResolved(a,{...u,data:o,event:e})}finally{r&&this.state.buttonsState.setLoading("")}}}async onCreated(){await super.onCreated(),this.state.viewMode=this.ctx.view.modal.mode,k(this.model,t=>{if(t.itemType==="DEUIACTION"){const e=t,s=new pt(e.id,this.context.srfappid,e.uiactionId);this.state.buttonsState.addState(e.id,s)}},{childrenFields:["detoolbarItems"]}),await this.calcButtonState()}async onItemClick(t,e,s){const a=t.buttonType==="extra";await this._evt.emit("onClick",{event:e,eventArg:t.id,buttonType:a?"extra":"deuiaction"}),a||await this.doUIAction(t,e,s)}async calcButtonState(t,e){let s=t;if(t&&t instanceof G&&(s=t.getOrigin()),await this.state.buttonsState.update(s,e),this.scheduler){const a={};s&&(a.data=[s]),k(this.model,i=>{const r=this.state.buttonsState[i.id];if(r.visible){const n=this.scheduler.triggerItemVisible(i.id,a);n!==void 0&&(r.visible=n)}if(!r.disabled){const n=this.scheduler.triggerItemEnable(i.id,a);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,s=>{s.controlLogics&&e.push(...s.controlLogics)},{childrenFields:["detoolbarItems"]}),super.initControlScheduler(e)}}),Ho=d("ContextMenuController",class extends Xo{}),ec=d("DashboardController",class extends H{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 s=Ma(e.data);s&&this.dataChangeNotify(s)})}async initPortlets(t,e){if(!t?.length)return;const s=["CHART","APPMENU","TOOLBAR","LIST"];await Promise.all(t.map(async a=>{var i;if(a.controlType&&s.includes(a.controlType))return;const r=await ha(a);if(r){this.providers[a.id]=r;const n=await r.createController(a,this,e);this.portlets[a.id]=n,(i=a.controls)!=null&&i.length&&await this.initPortlets(a.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,s;this.model=t,this.config=new $t(t.appId,"dynadashboard","dashboard_".concat(((e=this.model.appDataEntityId)==null?void 0:e.toLowerCase())||"app","_").concat((s=this.model.codeName)==null?void 0:s.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}}),Yo=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,s){this.model=t,this.dashboard=e,this.parent=s,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:s,height:a}=Ut(this.model);this.state.layout.width="".concat(s),this.state.layout.height="".concat(a)}e?.cssName&&this.state.class.container.push(e.cssName),await this.initActionStates()}createState(){return new Yo}onDataChange(t){let e=t.data[0];e&&e instanceof G&&(e=e.getOrigin()),e&&this.state.actionGroupState.update(e,this.dashboard.view.model.appDataEntityId)}async initActionStates(){var t;const{uiactionGroup:e}=this.model;if(!((t=e?.uiactionGroupDetails)!=null&&t.length))return;const s=new ft;e.uiactionGroupDetails.forEach(i=>{const r=i.uiactionId;if(r){const n=new pt(i.id,this.dashboard.context.srfappid,r);s.addState(i.id,n)}}),await s.update(),this.state.actionGroupState=s;const{appDataEntityId:a}=this.dashboard.view.model;a&&this.dashboard.view.evt.on("onDataChange",this.onDataChange)}async onActionClick(t,e,s=[]){const a=t.uiactionId;await U.execAndResolved(a,{context:this.dashboard.context,params:this.dashboard.params,data:s,view:this.dashboard.view,event:e})}async dataChangeNotify(t){if(this.state.actionGroupState){const{appDataEntityId:e}=this.dashboard.view.model;this.state.actionGroupState.update(t,e)}this.calcDynaClass(t)}calcDynaClass(t){if(this.model.dynaClass){const e=Dt(this.model.dynaClass,t);e.length&&(this.state.class.containerDyna=e)}}async destroyed(){ibiz.log.debug("".concat(this.model.codeName," onDestroyed")),this.dashboard.view.evt.off("onDataChange",this.onDataChange)}}),ac=d("ContainerPortletController",class extends ut{}),ic=d("ViewPortletController",class extends ut{}),rc=d("MenuPortletController",class extends ut{}),nc=d("ChartPortletController",class extends ut{}),oc=d("ActionBarPortletController",class extends ut{}),uc=d("HtmlPortletController",class extends ut{}),cc=d("ListPortletController",class extends ut{}),lc=d("RawItemPortletController",class extends ut{}),za=d("DataViewControlService",class extends st{initUIDataMap(){var t;super.initUIDataMap(),(t=this.model.dedataViewDataItems)==null||t.forEach(e=>{const s=e.id.toLowerCase(),a=e.appDEFieldId;let i;if(a){const r=a.toLowerCase();i=new X(s,r,{isOriginField:!0,dataType:e.dataType})}else i=new X(s,s);this.dataUIMap.set(s,i)})}}),qo=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 za(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 s=>{const a=new ft;e.uiactionGroupDetails.forEach(i=>{const r=i.uiactionId;if(r){const n=new pt(i.id,this.context.srfappid,r);a.addState(i.id,n)}}),await a.update(),s.groupActionGroupState=a})}async onRowClick(t){var e;super.onRowClick(t);const{groupAppDEFieldId:s}=this.model;if(s)if(this.state.groups.forEach(a=>{a.selectedData=[]}),this.state.selectedData.forEach(a=>{const i=a[s],r=this.state.groups.find(n=>n.key===i);r&&r.selectedData.push(a)}),this.state.singleSelect)this.state.groups.forEach(a=>{var i,r;let n=t;a.selectedData.indexOf(n)!==-1?(n&&n instanceof G&&(n=n.getOrigin()),n&&((i=a.groupActionGroupState)==null||i.update(n,this.model.appDataEntityId))):(r=a.groupActionGroupState)==null||r.update(void 0,this.model.appDataEntityId)});else{const a=this.state.groups.find(i=>i.children.indexOf(t)!==-1);a&&((e=a.groupActionGroupState)==null||e.update(a.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 s=0;s<e.length;s++)e[s].itemType==="ACTIONITEM"&&(t=e[s]);return t}getOptItemAction(t){var e;const s=new ft,a=this.getOptItemModel();if(a){if(!a.deuiactionGroup)throw new m(this.model,"\u64CD\u4F5C\u9879\u6CA1\u6709\u914D\u7F6E\u754C\u9762\u884C\u4E3A\u7EC4");if(!((e=a.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"),s;a.deuiactionGroup.uiactionGroupDetails.forEach(i=>{const r=i.uiactionId;if(r){const n=new pt(i.id,this.context.srfappid,r);s.addState(i.id,n)}}),s.update(t.getOrigin())}return s}async onActionClick(t,e,s){const a=t.uiactionId;await U.execAndResolved(a,{context:this.context,params:this.params,data:[e],view:this.view,event:s})}async handleDataGroup(){const{enableGroup:t,groupMode:e,groupAppDEFieldId:s}=this.model;if(t&&e){if(!s)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,s=new Map;e.forEach(i=>{const r=i[t];w(r)||(s.has(r)||s.set(r,[]),s.get(r).push(i))});const a=[];s.forEach((i,r)=>{a.push({caption:r,key:r,children:[...i]})}),this.state.groups=a}}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:s}=this.state,a=new Map;this.groupCodeListItems.forEach(r=>{a.set(r.value,[])}),s.forEach(r=>{const n=r[t],o=a.get(n);o&&o.push(r)});const i=[];a.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:s,minorSortDir:a}=this.model;if(s&&a){const i=this.fieldIdNameMap.get(s);this.state.sortQuery="".concat(i.toLowerCase(),",").concat(a.toLowerCase())}else this.state.sortQuery=""}}onClickNew(t,e){const s={...this.params,srfgroup:e};U.execAndResolved("new",{context:this.context,params:s,data:[],view:this.view,event:t})}async onGroupToolbarClick(t,e,s){const a=t.uiactionId,i={...this.params,srfgroup:s.key};await U.execAndResolved(a,{context:this.context,params:i,data:s.selectedData||[],view:this.view,event:e})}initSortItems(){var t;if(!((t=this.model.dedataViewItems)!=null&&t.length))return;const e=[],{minorSortAppDEFieldId:s,minorSortDir:a}=this.model,i=s&&a;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&&s===r.appDEFieldId&&(o.order=a.toLowerCase()),e.push(o)}),e.length>0&&(this.state.sortItems=e)}}),Ze=d("ExpBarControlController",class extends H{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(s=>s.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 s=(t=e.appDEFields)==null?void 0:t.filter(i=>i.enableQuickSearch),a=[];s?.forEach(i=>{i?.lnlanguageRes&&i.lnlanguageRes.lanResTag?a.push(ibiz.i18n.t(i.lnlanguageRes.lanResTag,i.logicName)):i?.logicName&&a.push(i.logicName)}),a.length>0&&(this.state.placeHolder=a.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(a=>a[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:s,params:a}=t,i=this.getNavViewMsg(e[0],s,a);this._evt.emit("onNavViewChange",{navViewMsg:i})}prepareParams(t,e,s,a){const{navDER:i,navFilter:r,navigateContexts:n,navigateParams:o,appDataEntityId:u}=t,c={deName:u?_(u):void 0,navFilter:r,pickupDEFName:i?.pickupDEFName,navContexts:n,navParams:o},l={context:s,params:a,data:e},{resultContext:h,resultParams:p}=Wt(c,l),E=Object.assign(s.clone(),h,{currentSrfNav:e[this.navKeyName]});this.state.srfnav=e[this.navKeyName];const C={...p};return{context:E,params:C}}calcViewModelId(){var t;if(["GRID","DATAVIEW","LIST"].includes(((t=this.XDataModel)==null?void 0:t.controlType)||""))return this.XDataModel.navAppViewId;throw new f("\u591A\u8282\u70B9\u89C6\u56FE\u7531\u5B50\u7C7B\u5B9E\u73B0")}getNavViewMsg(t,e,s){const a=this.calcViewModelId(),i=this.prepareParams(this.XDataModel,t,e,s);return{key:t[this.navKeyName],context:i.context,params:i.params,viewId:a,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 s=this.layoutPanel.panelItems.control_header;s&&(s.state.visible=!1)}})}async onRouterChange(t){this.state.srfnav!==t.srfnav&&(this.state.srfnav=t.srfnav,this.navBySrfnav())}}),dc=d("CalendarExpBarController",class extends Ze{constructor(){super(...arguments),this.navKeyName="navId"}getCalendarItemModel(t){const{sysCalendarItems:e}=this.XDataModel;if(e)return e.find(s=>s.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(a=>a.navId===this.state.srfnav);if(super.navBySrfnav(),!e)return;const s=new Date(e.beginTime);this.xDataController.setSelectDate(s)}getNavViewMsg(t){const e=this.getCalendarItemModel(t.itemType);if(e){const{context:s,params:a}=this.prepareParams(e,t.deData?t.deData:t,this.context,this.params);return s.currentSrfNav=t.navId,this.state.srfnav=t.navId,{key:t.navId,context:s,params:a,viewId:e.navAppViewId}}return{key:t.navId,context:this.context,params:this.params}}}),hc=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 s;return e&&e.forEach(a=>{a.id===t&&(s=a)}),s}xDataActive(t){const{nodeData:e}=t;super.xDataActive({...t,data:[e]})}getNavViewMsg(t,e,s){const a=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,s);return n.context.currentSrfNav=a,this.state.srfnav=a,{key:a,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((s,a)=>{a===0?e.push(s):e.push("".concat(e[a-1],":").concat(s))}),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)}}),pc=d("ChartExpBarController",class extends Ze{getNavViewMsg(t,e,s){var a;const i=(a=this.XDataModel.dechartSerieses)==null?void 0:a[0].navAppViewId,r=this.prepareParams(this.XDataModel,t,e,s);return{key:t[this.navKeyName],context:r.context,params:r.params,viewId:i,isCache:this.isCache}}}),Ga=d("FormController",class extends H{constructor(){super(...arguments),this.details={},this.providers={},this.formItems=[]}get _evt(){return this.evt}get data(){return this.state.data}initState(){super.initState(),this.state.data=new G,this.state.isLoaded=!1,this.state.processing=!1,this.state.modified=!1}async dataChangeNotify(t){await nt(Object.values(this.details).map(async e=>e.dataChangeNotify(t)))}formStateNotify(t){Object.values(this.details).forEach(e=>{e.formStateNotify(t)})}async onCreated(){await super.onCreated(),await this.initDetailControllers(),this.dataChangeNotify=de(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,s=void 0){await Promise.all(t.map(async a=>{const i=await We(a);if(!i)return;e.providers[a.id]=i;const r=await i.createController(a,e,s);e.details[a.id]=r,(a.detailType==="FORMITEM"||a.detailType==="MDCTRL")&&e.formItems.push(r);const n=Gt(a);n.length&&await this.initDetailControllers(n,e,r)}))}getData(){return[this.state.data]}async setDataValue(t,e){if(!(Object.prototype.hasOwnProperty.call(this.state.data,t)&&!se(this.state.data[t],e))){this.state.data[t]=e,this.state.processing=!0,this.state.modified=!0,await this._evt.emit("onFormDataChange",void 0);try{await this.dataChangeNotify([t])}finally{this.state.processing=!1}}}async validate(){return(await Promise.all(this.formItems.map(e=>e.validate()))).findIndex(e=>!e)===-1}actionNotification(t,e){super.actionNotification(t,{data:this.data,...e||{}})}initControlScheduler(t=[]){const e=[...t];k(this.model,s=>{s.controlLogics&&e.push(...s.controlLogics)},{childrenFields:["deformPages","deformTabPages","deformDetails"]}),super.initControlScheduler(e)}}),Qo=d("SearchFormService",class extends ee{async getDraft(t,e={}){let a={ok:!0,status:200,data:this.getFilteredData({...e})};return a=this.handleResponse(a),a}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(s=>{t[s.dataKey]!==void 0&&(e[s.dataKey]=t[s.dataKey])}),e}}),fc=d("SearchFormController",class extends Ga{async onCreated(){await super.onCreated(),this.service=new Qo(this.model),await this.service.init(this.context),await this.load()}async onMounted(){await super.onMounted(),this.state.loadDefault&&this.load()}async load(){const t={...this.params},e=await this.getDraftParams();Object.assign(t,e),await this.evt.emit("onBeforeLoadDraft",{params:t});let s;try{s=await this.service.getDraft(this.context,t)}catch(a){throw this.actionNotification("GETDRAFTERROR",{error:a}),a}return this.state.data=s.data,_t(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 s=this.state.data[e];s!=null&&s!==""&&(t[e]=s)}),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()}}),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(a){return e=a,!0}});let s;Object.defineProperty(this,"keepAlive",{enumerable:!0,configurable:!0,get(){return s!==void 0?s:this.parent?this.parent.keepAlive:!1},set(a){return s=a,!0}})}}),$o=d("FormDetailEventName",(t=>(t.CLICK="onClick",t.FOCUS="onFocus",t.BLUR="onBlur",t.CHANGE="onChange",t.ENTER="onEnter",t))($o||{})),Jo=d("PanelItemEventName",(t=>(t.CLICK="onClick",t.FOCUS="onFocus",t.BLUR="onBlur",t.CHANGE="onChange",t.ENTER="onEnter",t))(Jo||{})),ct=d("FormDetailController",class{constructor(t,e,s){this.dynaLogicResult={visible:void 0,disabled:void 0,required:void 0},this.model=t,this.form=e,this.parent=s,this.state=this.createState()}get data(){return this.form.data}get containerClass(){return[...this.state.class.container,...this.state.class.containerDyna]}get labelClass(){return[...this.state.class.label,...this.state.class.labelDyna]}async init(){await this.onInit()}async onInit(){this.state.showMoreMode=this.model.showMoreMode;const{layoutPos:t,sysCss:e,labelSysCss:s}=this.model;if(t){const{width:a,height:i}=Ut(t);this.state.layout.width="".concat(a),this.state.layout.height="".concat(i)}e?.cssName&&this.state.class.container.push(e.cssName),s?.cssName&&this.state.class.label.push(s.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 s;this.parent&&!this.parent.state.visible||(s=this.model.defdgroupLogics)==null||s.forEach(a=>{const i=a.relatedDetailNames||[];if(e||Mt(i,t))try{const r=Kt(this.form.data,a);switch(a.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 s=this.form.scheduler.triggerItemEnable(this.model.id,{data:[t]});s!==void 0&&(e=!s)}e!==void 0&&(this.state.disabled=e)}calcDetailVisible(t){let{visible:e}=this.dynaLogicResult;if(e!==!1&&this.form.scheduler){const s=this.form.scheduler.triggerItemVisible(this.model.id,{data:[t]});s!==void 0&&(e=s)}e!==void 0&&(this.state.visible=e)}calcDetailRequired(t){let{required:e}=this.dynaLogicResult;if(e!==!0&&this.form.scheduler){const s=this.form.scheduler.triggerItemBlank(this.model.id,{data:[t]});s!==void 0&&(e=!s)}e!==void 0&&(this.state.required=e)}async onClick(t){this.form.evt.emit("onFormDetailEvent",{formDetailName:this.model.id,formDetailEventName:"onClick",event:t})}}),Zo=d("FormButtonState",class extends it{constructor(){super(...arguments),this.loading=!1}}),mc=d("FormButtonController",class extends ct{createState(){var t;return new Zo((t=this.parent)==null?void 0:t.state)}get data(){return this.form.data}async onClick(t){this.state.loading=!0;try{this.model.actionType==="UIACTION"&&await this.doUIAction(t),await this.doFormItemUpdate()}finally{this.state.loading=!1}super.onClick(t)}async doUIAction(t){const e=this.model.uiactionId;await U.execAndResolved(e,{context:this.form.context,params:this.form.params,data:[this.data],view:this.form.view,event:t,noWaitRoute:!0})}async doFormItemUpdate(){this.model.deformItemUpdateId&&await this.form.updateFormItem(this.model.deformItemUpdateId)}}),tu=d("FormDruipartState",class extends it{constructor(){super(...arguments),this.showMask=!1}}),Ec=d("FormDRUIPartController",class extends ct{constructor(){super(...arguments),this.refreshItems=["srfkey"],this.paramItem="srfkey",this.isNewData=!1}createState(){var t;return new tu((t=this.parent)==null?void 0:t.state)}async onInit(){if(await super.onInit(),Object.assign(this.state.layout.extraStyle,{overflow:"auto"}),this.model.refreshItems){let t=this.model.refreshItems.split(";");t=t.filter(e=>!!e),this.refreshItems.push(...t)}this.model.paramItem&&(this.paramItem=this.model.paramItem)}async dataChangeNotify(t){await super.dataChangeNotify(t),Mt(this.refreshItems,t)&&this.calcViewParams()}async formStateNotify(t){await super.formStateNotify(t),this.isNewData=t==="DRAFT",this.model.maskMode!==0&&(this.state.showMask=this.isNewData),(t==="LOAD"||t==="DRAFT"||t==="SAVE")&&this.calcViewParams()}calcViewParams(){let t=this.form.context.clone();const e=this.model.navigateContexts;x(e)&&(t=Object.assign(t,b(e,this.form.data,this.form.params,this.form.context)));const s=b(this.model.navigateParams,this.form.data,this.form.params,this.form.context);if(!this.state.viewComponentKey)this.state.viewComponentKey=Y(),this.navContext=t,this.navParams=s;else if(JSON.stringify(this.navContext)!==JSON.stringify(t)||JSON.stringify(this.navParams)!==JSON.stringify(s))this.navContext=t,this.navParams=s,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))})}}),ja=d("FormGroupPanelState",class extends it{constructor(){super(...arguments),this.isShowMore=!1,this.actionGroupState=null}}),eu=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 ja((t=this.parent)==null?void 0:t.state)}async onInit(){super.onInit(),await this.initActionStates()}async formStateNotify(t){super.formStateNotify(t),this.state.actionGroupState&&this.state.actionGroupState.update(this.form.data.getOrigin())}async initActionStates(){var t;const{uiactionGroup:e}=this.model;if(!((t=e?.uiactionGroupDetails)!=null&&t.length))return;const s=new ft;e.uiactionGroupDetails.forEach(a=>{const i=a.uiactionId;if(i){const r=new pt(a.id,this.form.context.srfappid,i);s.addState(a.id,r)}}),await s.update(),this.state.actionGroupState=s}async onActionClick(t,e){const s=t.uiactionId;await U.execAndResolved(s,{context:this.form.context,params:this.form.params,data:[this.data],view:this.form.view,event:e})}}),su=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(s){return e=s,!0}})}}),gc=d("FormItemController",class extends ct{constructor(t,e,s){super(t,e,s),this.rules=[],this.context=e.context,this.params=e.params}createState(){var t;return new su((t=this.parent)==null?void 0:t.state)}get name(){return this.model.fieldName||this.model.id}get value(){return this.form.data[this.name]}get valueItemName(){if(this.model.editor)return this.model.editor.valueItemName}get unitName(){return this.model.unitName}get valueFormat(){return this.model.valueFormat}get dataType(){return this.model.dataType}async onInit(){await super.onInit(),this.state.required=!this.model.allowEmpty;const{enableCond:t}=this.model;t||(this.state.enableCondDisabled=!0),this.model.editor&&this.model.editor.editorType!=="HIDDEN"&&(this.editorProvider=await bt(this.model.editor),this.editorProvider&&(this.editor=await this.editorProvider.createController(this.model.editor,this),await this.initRules()))}async initRules(){this.rules=[];const t=_e(this.form.model.deformItemVRs||[],this.name);t&&this.rules.push(...Xe(t,this.name,this.valueItemName)),this.model.editor&&this.rules.push(...He(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 s=!1;e&&e.length>0&&e.forEach(a=>{t.includes(a)&&(s=!0)}),s&&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:s,createDV:a,updateDVT:i,updateDV:r}=this.model,n=t?s:i,o=t?a:r,u=Ye({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})}}),ts=d("FormMDCtrlContentTypeController",class{constructor(t){this.parent=t,this.model=this.parent.model}get data(){return this.parent.state.contentCtrlData}async onInit(){}onDataChange(t){this.parent.state.contentCtrlData=t,this.parent.setFormDataValue()}onDataItemChange(t,e){this.parent.state.contentCtrlData[e]=t,this.parent.setFormDataValue()}onDataRemove(t){var e;t<0||((e=this.parent.state.contentCtrlData)==null||e.splice(t,1),this.parent.setFormDataValue())}onDataInsert(t){var e;(e=this.parent.state.contentCtrlData)==null||e.push(t||{}),this.parent.setFormDataValue()}async initData(){const t=this.model.appDEFieldId||this.model.fieldName||this.model.id;if(t){const e=this.parent.data[t];this.model.contentType==="REPEATER"&&this.model.detailStyle==="STYLE3"?Array.isArray(e)?this.parent.state.contentCtrlData={}:this.parent.state.contentCtrlData=e||{}:Array.isArray(e)?this.parent.state.contentCtrlData=e||[]:this.parent.state.contentCtrlData=[]}}async validate(){return!0}refresh(){}}),re=d("FormMDCtrlControlController",class extends ts{async onInit(){const{model:t}=this.parent,{contentControl:e}=t;if(!e)throw new f("\u8868\u5355\u591A\u6570\u636E\u90E8\u4EF6\u672A\u914D\u7F6E\u5D4C\u5165\u90E8\u4EF6");this.controlModel=e;const s=await dt(this.controlModel);s&&(this.provider=s)}}),au=d("FormMDCtrlDataViewController",class extends re{constructor(){super(...arguments),this.selectData=[],this.state={isSelect:!1}}onDataViewCreated(t){this.dataViewController=t.ctrl}onSelectionChange(t){this.state.isSelect=t.data.length>0}onDataRemove(){this.dataViewController&&(this.dataViewController.remove(),this.parent.state.contentCtrlData=this.dataViewController.state.items,this.parent.setFormDataValue())}onDataChange(t){this.parent.state.contentCtrlData=t,this.parent.setFormDataValue()}async initData(){var t;(t=this.dataViewController)==null||t.load()}async onDataInsert(){}refresh(){var t;(t=this.dataViewController)==null||t.refresh()}}),Ka=d("EditFormService",class extends ee{async get(t,e={}){var s;let a=await this.exec(((s=this.model.getControlAction)==null?void 0:s.appDEMethodId)||"get",t,void 0,e);return a=this.handleResponse(a),a}async getDraft(t,e={}){var s;let a=await this.exec(((s=this.model.getDraftControlAction)==null?void 0:s.appDEMethodId)||"getdraft",t,void 0,e);return a=this.handleResponse(a),a}async remove(t,e={}){var s;return await this.exec(((s=this.model.removeControlAction)==null?void 0:s.appDEMethodId)||"remove",t,void 0,e)}async create(t,e){var s;const a=e instanceof G?e.getOrigin():e,i=this.getFilteredData(a);let r=await this.exec(((s=this.model.createControlAction)==null?void 0:s.appDEMethodId)||"create",t,i);return r=this.handleResponse(r),r}async update(t,e){var s;const a=e instanceof G?e.getOrigin():e,i=this.getFilteredData(a);let r=await this.exec(((s=this.model.updateControlAction)==null?void 0:s.appDEMethodId)||"update",t,i);return r=this.handleResponse(r),r}async goBack(t,e){var s;const i=(s=this.model.goBackControlAction)==null?void 0:s.appDEMethodId;if(!i)throw new m(this.model,"\u7F3A\u5C11\u8FD4\u56DE\u64CD\u4F5C\u5B9E\u4F53\u884C\u4E3A");let r=await this.exec(i,t,e instanceof G?e.getOrigin():e);return r=this.handleResponse(r),r}async updateFormItem(t,e,s={}){let a=await this.exec(t,e,s);return a=this.handleResponse(a),a}async wfStart(t,e,s){var a;const r=((a=this.model.wfstartControlAction)==null?void 0:a.appDEMethodId)||"wfstart";return(await this.app.deService.getService(this.model.appDataEntityId)).wf.exec(r,t,e,s instanceof G?s.getOrigin():s)}async wfSubmit(t,e,s){var a;const i=this.model;let r="";return e.type?r=e.type:r=((a=i.wfsubmitControlAction)==null?void 0:a.appDEMethodId)||"wfsubmit",(await this.app.deService.getService(this.model.appDataEntityId)).wf.exec(r,t,e,s instanceof G?s.getOrigin():s)}initUIDataMap(){super.initUIDataMap();const t=["srfwfmemo","srfwftransferor","srfactionparam","srffrontuf","srfnextform"];k(this.model,e=>{if(e.detailType==="FORMITEM"||e.detailType==="MDCTRL"){const s=e,a=s.fieldName||s.id.toLowerCase(),i=s.fieldName||e.appDEFieldId;let r;i?r=new X(a,i,{isOriginField:!0,dataType:s.dataType}):r=new X(a,a,{isOriginField:t.includes(a)}),this.dataUIMap.set(a,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(s=>{t[s.dataKey]!==void 0&&(e[s.dataKey]=t[s.dataKey])}),e}}),iu=d("EditFormController",class extends Ga{get view(){return this.ctx.view}async onCreated(){await super.onCreated(),this.service=new Ka(this.model),await this.service.init(this.context),this.autoSave=Vt(this.autoSave.bind(this),500,{trailing:!0})}async onMounted(){await super.onMounted(),this.state.loadDefault&&this.load()}async loadDraft(t){const{context:e,params:s}=this.handlerAbilityParams(t),a=await this.getDraftParams();Object.assign(s,a);let i;try{await this.startLoading(),await this.evt.emit("onBeforeLoadDraft",{params:s}),i=await this.service.getDraft(e,s)}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,_t(this.data,a),this.formStateNotify("DRAFT"),await this.evt.emit("onLoadDraftSuccess",void 0),this.actionNotification("GETDRAFTSUCCESS"),this.state.isLoaded=!0,this.data}async copy(){const t=v(this.context),e=v(this.params),a=(await ibiz.hub.getAppDataEntity(this.model.appDataEntityId)).keyAppDEFieldId;if(a&&this.params[a]){const r=_(this.model.appDataEntityId);t[r]=this.params[a],delete e[a],delete this.params[a],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=Y(),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(!ks(this.context,this.model.appDataEntityId))return this.loadDraft();const{context:a,params:i}=this.handlerAbilityParams(t),r=v(i);let n;try{await this.startLoading(),await this.evt.emit("onBeforeLoad",void 0),n=await this.service.get(a,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 he(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:a,data:i}=this.handlerAbilityParams(t),r=i[0],n=r.srfuf===0;let o;try{o=n?await this.service.create(a,r):await this.service.update(a,r)}catch(c){throw await this.evt.emit("onSaveError",void 0),this.actionNotification("".concat(n?"CREATE":"UPDATE","ERROR"),{error:c}),c}finally{e||await this.endLoading()}const u=t?.noFillBack===!0;return o.data&&(u?(this.data.updatedate=o.data.updatedate,this.data.srfkey=o.data.srfkey):It(this.data,o.data),this.data.tempsrfkey=this.data.srfkey),this.state.modified=!1,await this.evt.emit("onSaveSuccess",void 0),this.formStateNotify("SAVE"),e||this.actionNotification("".concat(n?"CREATE":"UPDATE","SUCCESS"),{default:"".concat(this.data.srfmajortext||"","\u4FDD\u5B58\u6210\u529F")}),this.view.modal.mode==="ROUTE"&&ibiz.mc.command.send(this.data.$origin,n?"OBJECTCREATED":"OBJECTUPDATED"),this.data}async remove(t){const{context:e,params:s}=this.handlerAbilityParams(t);let a,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{a=await this.service.remove(e,s)}catch(r){throw await this.evt.emit("onRemoveError",void 0),this.actionNotification("REMOVEERROR",{error:r}),r}finally{await this.endLoading()}i=a.ok}return this.state.data=new G,this.state.modified=!1,await this.evt.emit("onRemoveSuccess",void 0),this.actionNotification("REMOVESUCCESS"),this.view.modal.mode==="ROUTE"&&ibiz.mc.command.send(this.data.$origin,"OBJECTREMOVED"),i}async goBack(){await this.startLoading();let t;try{t=await this.service.goBack(this.context,this.data)}finally{await this.endLoading()}return t.data&&It(this.data,t.data),this.data}async updateFormItem(t){var e;const s=(e=this.model.deformItemUpdates)==null?void 0:e.find(c=>c.id===t);if(!s)throw new f("\u6CA1\u627E\u5230".concat(t,"\u8868\u5355\u9879\u66F4\u65B0"));const{appDEMethodId:a,defiupdateDetails:i,customCode:r,scriptCode:n}=s,o=i?.map(c=>c.id);let u;if(r&&n)u=B.execScriptFn({...this.getEventArgs(),data:this.data},n,{isAsync:!1});else{const c={...this.params,...this.data.getOrigin()};u=(await this.service.updateFormItem(a,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:s,params:a}=this.handlerAbilityParams(t);try{await this.service.wfStart(s,a,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:s,params:a}=this.handlerAbilityParams(t);try{await this.service.wfSubmit(s,a,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)}}}),ru=d("FormMDCtrlFormController",class extends re{constructor(){super(...arguments),this.controlControllerArray=[],this.state={data:[]}}onControlCreated(t,e){const s=t.ctrl;this.controlControllerArray[e]=s,s.load()}async onInit(){super.onInit(),this.service=new Ka(this.model.contentControl),await this.service.init(this.parent.form.context)}async fetch(t,e={}){const s="fetchdefault";let a=await this.service.exec(s,t,e);return a=this.handleResponse(a),a}handleResponse(t){const e=t;return e.ok&&(j(e.data)?e.data=e.data.map(s=>this.service.toUIData(s)):e.data=this.service.toUIData(e.data)),e}async initData(){const t=await this.fetch(this.parent.form.context,this.parent.form.params);this.state.data=t.data}onDataRemove(t){const e=this.controlControllerArray[t];e&&e.remove()}onFormChange(t,e){const s=this.controlControllerArray[e];s&&(s.save(),this.state.data[e]&&It(this.state.data[e],t[0]),this.parent.state.contentCtrlData=this.state.data,this.parent.setFormDataValue())}onFormRemoveSuccess(t){this.state.data.splice(t,1),this.controlControllerArray.splice(t,1),this.parent.state.contentCtrlData=this.state.data,this.parent.setFormDataValue()}async onDataInsert(){const t=await this.service.getDraft(this.parent.form.context,this.parent.form.params);if(t.data){const e=await this.service.create(this.parent.form.context,t.data);this.state.data.push(e.data),this.parent.state.contentCtrlData=this.state.data,this.parent.setFormDataValue()}}async validate(){return(await Promise.all(this.controlControllerArray.map(e=>e.validate()))).findIndex(e=>!e)===-1}refresh(){this.initData()}}),nu=d("FormMDCtrlGridController",class extends re{constructor(){super(...arguments),this.selectData=[],this.state={isSelect:!1}}onGridCreated(t){this.gridController=t.ctrl}onSelectionChange(t){this.state.isSelect=t.data.length>0}onDataRemove(){this.gridController&&(this.gridController.remove(),this.parent.state.contentCtrlData=this.gridController.state.items,this.parent.setFormDataValue())}onDataChange(t){this.parent.state.contentCtrlData=t,this.parent.setFormDataValue()}async initData(){var t;(t=this.gridController)==null||t.load()}async onDataInsert(){this.gridController&&(await this.gridController.newRow(),this.parent.state.contentCtrlData=this.gridController.state.items,this.parent.setFormDataValue())}async onInit(){const{model:t}=this.parent,{contentControl:e}=t;if(!e)throw new f("\u8868\u5355\u591A\u6570\u636E\u90E8\u4EF6\u672A\u914D\u7F6E\u5D4C\u5165\u90E8\u4EF6");It(e,{enableRowEdit:!0,enableRowNew:!0}),this.controlModel=e;const s=await dt(this.controlModel);s&&(this.provider=s)}async validate(){if(!this.gridController)return!0;const{rows:t}=this.gridController.state;return(await Promise.all(t.map(s=>this.gridController.validate(s)))).findIndex(s=>!s)===-1}refresh(){var t;(t=this.gridController)==null||t.refresh()}}),ou=d("FormMDCtrlListController",class extends re{constructor(){super(...arguments),this.selectData=[],this.state={isSelect:!1}}onListCreated(t){this.listController=t.ctrl}onSelectionChange(t){this.state.isSelect=t.data.length>0}onDataRemove(){this.listController&&(this.listController.remove(),this.parent.state.contentCtrlData=this.listController.state.items,this.parent.setFormDataValue())}onDataChange(t){this.parent.state.contentCtrlData=t,this.parent.setFormDataValue()}async initData(){var t;(t=this.listController)==null||t.load()}async onDataInsert(){}refresh(){var t;(t=this.listController)==null||t.refresh()}}),Xa=d("FormMDCtrlRepeaterFormController",class extends ts{constructor(){super(...arguments),this.formControllerArray=[]}async onDataInsert(){const t={};super.onDataInsert(t)}onDataRemove(t){t<0||super.onDataRemove(t)}async validate(){const t=this.formControllerArray.map(s=>s.validate());return(await Promise.all(t)).findIndex(s=>!s)===-1}setFromController(t){this.formControllerArray.push(t)}}),uu=d("FormMDCtrlRepeaterFormOneController",class extends Xa{get data(){return this.parent.state.contentCtrlData}onDataItemChange(t){this.parent.state.contentCtrlData=t,this.parent.setFormDataValue()}}),cu=d("FormMDCtrlRepeaterGridController",class extends ts{constructor(){super(...arguments),this.columns=[],this.editorMap={}}async onInit(){this.initColumns(this.model.deformDetails||[])}initColumns(t){t.forEach(async e=>{if(e.detailType==="FORMITEM"){const{editor:a,dataType:i}=e,r=await bt(a);if(r){const n=await r.createController(a,{unitName:a.unitName,valueFormat:a.valueFormat,context:this.parent.form.context,params:this.parent.form.params,dataType:i});this.editorMap[e.codeName]={provider:r,controller:n}}this.columns.push({codeName:e.codeName,caption:e.caption})}const s=Gt(e);s.length&&this.initColumns(s)})}rowDataChange(t,e,s){const a=this.data[s];Object.prototype.hasOwnProperty.call(a,e)&&!se(a[e],t)||(a[e]=t,this.onDataItemChange(a,s))}}),lu=d("FormMDCtrlState",class extends it{constructor(){super(...arguments),this.contentCtrlData=[]}}),Cc=d("FormMDCtrlController",class extends ct{get isCreate(){return this.model.buildInActions?[1,3,5,7].includes(this.model.buildInActions):!1}get isDelete(){return this.model.buildInActions?[4,5,6,7].includes(this.model.buildInActions):!1}createState(){var t;return new lu((t=this.parent)==null?void 0:t.state)}async onInit(){switch(await super.onInit(),this.model.contentType){case"FORM":this.mdCtrlContentController=new ru(this);break;case"GRID":this.mdCtrlContentController=new nu(this);break;case"LIST":this.mdCtrlContentController=new ou(this);break;case"DATAVIEW":this.mdCtrlContentController=new au(this);break;case"REPEATER":this.model.detailStyle==="DEFAULT"&&(this.mdCtrlContentController=new Xa(this)),this.model.detailStyle==="STYLE3"&&(this.mdCtrlContentController=new uu(this)),this.model.detailStyle==="STYLE2"&&(this.mdCtrlContentController=new cu(this));break}this.mdCtrlContentController&&await this.mdCtrlContentController.onInit(),this.form.state.isLoaded&&this.mdCtrlContentController.initData(),this.form.evt.on("onLoadDraftSuccess",()=>{this.mdCtrlContentController.initData()}),this.form.evt.on("onLoadSuccess",()=>{this.mdCtrlContentController.initData()})}setFormDataValue(){const t=this.model.appDEFieldId||this.model.fieldName||this.model.id;t&&this.form.setDataValue(t,v(this.state.contentCtrlData))}async validate(){return this.mdCtrlContentController.validate()}setDefaultValue(){}async dataChangeNotify(t){await super.dataChangeNotify(t);const{resetItemNames:e}=this.model,s=this.model.appDEFieldId||this.model.fieldName||this.model.id;let a=!1;e&&e.length>0&&e.forEach(i=>{t.includes(i)&&(a=!0)}),a&&(this.state.contentCtrlData=null,this.setFormDataValue()),t.includes(s)&&this.validate(),t.includes(s)&&this.model.deformItemUpdateId&&await this.form.updateFormItem(this.model.deformItemUpdateId),t.includes(this.model.id)&&this.mdCtrlContentController.refresh()}refresh(){this.mdCtrlContentController.refresh()}}),Dc=d("FormMDCtrlItemController",class extends iu{constructor(t,e,s,a,i,r){const n=v(r.model);Object.assign(n,t,{name:void 0}),super(n,e,s,a),this.state.data=i,this.state.isSimple=!0}async initDetailControllers(t=this.model.deformDetails,e=this,s=void 0){await Promise.all(t.map(async a=>{const i=await We(a);if(!i)return;e.providers[a.id]=i;const r=await i.createController(a,e,s);e.details[a.id]=r,(a.detailType==="FORMITEM"||a.detailType==="MDCTRL")&&e.formItems.push(r);const n=Gt(a);n.length&&await this.initDetailControllers(n,e,r)}))}}),du=d("FormPageState",class extends ja{}),wc=d("FormPageController",class extends eu{createState(){var t;return new du((t=this.parent)==null?void 0:t.state)}}),hu=d("FormRawItemState",class extends it{}),vc=d("FormRawItemController",class extends ct{createState(){var t;return new hu((t=this.parent)==null?void 0:t.state)}}),pu=d("FormTabPageState",class extends it{}),Ac=d("FormTabPageController",class extends ct{createState(){var t;return new pu((t=this.parent)==null?void 0:t.state)}}),fu=d("FormTabPanelState",class extends it{}),Ic=d("FormTabPanelController",class extends ct{createState(){var t;return new fu((t=this.parent)==null?void 0:t.state)}}),es=d("GridColumnController",class{constructor(t,e){this.isAdaptiveColumn=!1,this.isCustomCode=!1;var s;this.model=t,this.grid=e,this.isAdaptiveColumn=t.widthUnit==="STAR",this.isAdaptiveColumn&&(this.grid.hasAdaptiveColumn=!0),(s=this.deGridDataItem)!=null&&s.customCode&&(this.isCustomCode=!0)}get context(){return this.grid.context}get params(){return this.grid.params}get enableRowEdit(){return!!(this.grid.model.enableRowEdit&&this.model.enableRowEdit)}get deGridDataItem(){var t;return(t=this.grid.model.degridDataItems)==null?void 0:t.find(e=>e.id===this.model.id)}get valueFormat(){var t;return(t=this.deGridDataItem)==null?void 0:t.format}get dataType(){var t;return(t=this.deGridDataItem)==null?void 0:t.dataType}async init(){await this.onInit()}async onInit(){}getCustomHtml(t){var e;if((e=this.deGridDataItem)!=null&&e.scriptCode)return B.execScriptFn({data:t.data},this.deGridDataItem.scriptCode,{singleRowReturn:!0,isAsync:!1})}}),Ha=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(s=>{this.errors[s]===void 0&&(this.errors[s]=null)}),Object.values(e.uaColumns).forEach(s=>{s.initActionStates(this)}),Object.values(e.editColumns).forEach(s=>{this.editColStates[s.fieldName]={disabled:!1,readonly:!1,editable:ibiz.config.grid.editShowMode==="all",required:!1}})}}),Ya=d("GridService",class extends st{initUIDataMap(){var t;super.initUIDataMap(),(t=this.model.degridDataItems)==null||t.forEach(e=>{const s=e.id.toLowerCase(),a=e.appDEFieldId;let i;if(a){const r=a.toLowerCase();i=new X(s,r,{isOriginField:!0,dataType:e.dataType})}else i=new X(s,s);this.dataUIMap.set(s,i)})}async updateGridEditItem(t,e,s={}){let i=await(await this.app.deService.getService(this.model.appDataEntityId)).exec(t,e,s);return i=this.handleResponse(i),i}}),mu=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}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 Ya(this.model),await this.service.init(this.context),this.initColumnStates(),await this.initGridColumns(),this.dataChangeNotify=de(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:s}=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 a=this.groupFieldColumn.model.id;if(!this.groupFieldColumn.model.appCodeListId)throw new m(this.groupFieldColumn.model,"\u5206\u7EC4\u5C5E\u6027\u7684\u5C5E\u6027\u5217".concat(a,"\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(a,"\u914D\u7F6E\u4E3A\u7B2C\u4E00\u5217"));const r=this.state.columnStates.splice(i,1);this.state.columnStates.unshift(...r)}if(s==="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(a,"\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 s=>{await s.loadCodeList()}),!1),this.state.rows=e.map(s=>{const a=new Ha(s,this);return this.gridStateNotify(a,"LOAD"),a}),this.state.rows.forEach(s=>{Object.values(s.uaColStates).forEach(a=>{a.update(s.data.getOrigin(),this.model.appDataEntityId)})}),this.calcGroupData(e),this.calcAggResult(e),e}calcGroupData(t){const{enableGroup:e,groupMode:s}=this.model;if(e){const a=new Map,i=s==="CODELIST",r=this.groupFieldColumn.model.id;i&&this.groupCodeListItems.forEach(n=>{a.set(n.value,[])}),t.forEach(n=>{const o=n[r];!i&&!a.has(o)&&a.set(o,[]),a.has(o)&&a.get(o).push(n)}),this.state.groups=[],a.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:s}=this.model;if(t!=="ALL")return;if(!s||!e)throw new m(this.model,"\u7F3A\u5C11\u914D\u7F6E\u805A\u5408\u5B9E\u4F53\u6216\u805A\u5408\u6570\u636E\u96C6");const a=await this.getFetchParams(),r=await ibiz.hub.getApp(this.context.srfappid).deService.exec(e,s,this.context,void 0,a);r.data.length&&([this.state.remoteAggResult]=r.data)}calcAggResult(t){Object.values(this.fieldColumns).forEach(e=>{const s=e.calcFieldAgg(t);s&&(this.state.aggResult[e.model.id]=s)})}afterRemove(t){super.afterRemove(t);const e=this.findRowStateIndex(t);this.state.rows.splice(e,1),this.state.groups.forEach(s=>{if(s.children.length){const a=s.children.findIndex(i=>i.srfkey===t.srfkey);a!==-1&&s.children.splice(a,1)}})}async newRow(){const{enableRowEdit:t,enableRowNew:e}=this.model,{editShowMode:s}=ibiz.config.grid;if(!t||!e||!["row","all"].includes(s)){ibiz.log.error("\u4E0D\u652F\u6301\u65B0\u5EFA\u884C");return}if(s==="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 a={...this.params},i=this.calcDefaultValue({},!0);Object.assign(a,i);let r;try{r=await this.service.getDraft(this.context,a)}catch(u){throw this.actionNotification("GETDRAFTERROR",{error:u}),u}const n=r.data;_t(n,i),this.state.items.unshift(n);const o=new Ha(n,this);this.state.rows.unshift(o),this.gridStateNotify(o,"DRAFT"),s==="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,s=this.findRowState(t);if(!s)throw new f("\u884C\u6570\u636E\u4E0D\u5B58\u5728");if(!s.modified){ibiz.log.debug("\u503C\u6CA1\u6709\u53D1\u751F\u6539\u53D8");return}if(s.processing){await he(500,this.save.bind(this),[t]);return}if(!await this.validate(s))throw new f("\u884C\u6570\u636E\u6821\u9A8C\u4E0D\u901A\u8FC7\uFF0C\u4FDD\u5B58\u53D6\u6D88");let i;const r=_(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:s.data}),u}const o=this.findRowStateIndex(t);this.state.items.splice(o,1,i.data),s.data=i.data,s.modified=!1,this.gridStateNotify(s,"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 s=await Ue(t);if(!s)return;this.providers[t.codeName]=s;const a=await s.createController(t,this);this.columns[t.codeName]=a,t.columnType==="DEFGRIDCOLUMN"?(this.fieldColumns[t.codeName]=a,t.enableRowEdit&&(this.editColumns[t.codeName]=a)):t.columnType==="UAGRIDCOLUMN"?this.uaColumns[t.codeName]=a: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:s,frozenLastColumn:a}=this.model;t.forEach((i,r)=>{i.uaColumn?i.fixed=r+1<=Math.floor(e/2)?"left":"right":s&&r<s?i.fixed="left":a&&r>=e-a&&(i.fixed="right")})}async initGridColumns(){this.model.degridColumns&&await Promise.all(this.model.degridColumns.map(async t=>this.initColumnsController(t)))}async setRowValue(t,e,s){if(!(Object.prototype.hasOwnProperty.call(t.data,e)&&!se(t.data[e],s))){t.data[e]=s,t.modified=!0,t.processing=!0;try{await this.dataChangeNotify(t,[e]),await this.evt.emit("onGridDataChange",{data:this.state.rows.map(a=>a.data)})}finally{t.processing=!1}}}async dataChangeNotify(t,e){await nt(Object.values(this.editColumns).map(async s=>s.dataChangeNotify(t,e)))}gridStateNotify(t,e){Object.values(this.editColumns).forEach(s=>{s.gridStateNotify(t,e)})}async validate(t){return(await Promise.all(Object.values(this.editColumns).map(s=>s.validate(t)))).findIndex(s=>!s)===-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,s=!0){if(!this.allowRowEdit)return;const a=e===void 0?!t.showRowEdit:e;if(t.showRowEdit!==a){if(a===!1)if(s)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=v(t.data);const r=this.calcDefaultValue(t.data,!1);Object.assign(t.data,r)}}t.showRowEdit=a,Object.values(this.editColumns).forEach(i=>{t.editColStates[i.fieldName].editable=a}),this.evt.emit("onRowEditChange",{row:t})}}setSort(t,e){if(t&&e){const s=this.fieldIdNameMap.get(t).toLowerCase();super.setSort(s,e)}else{const{minorSortAppDEFieldId:s,minorSortDir:a}=this.model;if(s&&a){const i=this.fieldIdNameMap.get(s);this.state.sortQuery="".concat(i.toLowerCase(),",").concat(a.toLowerCase())}else this.state.sortQuery=""}}async updateGridEditItem(t,e){var s;const a=(s=this.model.degridEditItemUpdates)==null?void 0:s.find(l=>l.id===e);if(!a)throw new f("\u6CA1\u627E\u5230".concat(e,"\u7F16\u8F91\u5217\u66F4\u65B0"));const{appDEMethodId:i,degeiupdateDetails:r,customCode:n,scriptCode:o}=a,u=r.map(l=>l.id);let c;if(n&&o)c=B.execScriptFn({...this.getEventArgs(),data:t.data},o,{isAsync:!1});else{const l={...this.params,...t.data.getOrigin()};c=(await this.service.updateGridEditItem(i,this.context,l)).data}c&&u?.length&&await Promise.all(u.map(l=>this.setRowValue(t,l,c[l])))}async loadData(t){const{context:e}=this.handlerAbilityParams(t),s=await this.getFetchParams(t?.viewParam);let a;await this.startLoading();try{a=await this.service.fetch(e,s)}finally{await this.endLoading()}return a.data}async exportData(t){const e=this.fieldColumns,s=u=>v(u.map(l=>l.getOrigin())),a=async()=>{var u;const c=(u=t.params)==null?void 0:u.type;let l=[];if(c==="activatedPage"&&(l=this.state.rows.map(h=>h.data)),c==="maxRowCount"||c==="customPage"){const{size:h}=this.state,{startPage:p,endPage:E}=t.params,C=c==="customPage"?{page:0,offset:(p-1)*h,size:(E-p+1)*h}:{size:1e3,page:0};l=await this.loadData({viewParam:C})}if(c==="selectedRows"&&(l=this.getData()),l.length===0)throw new f("\u65E0\u5BFC\u51FA\u6570\u636E");return s(l)},i=(u,c)=>c.map(l=>u.map(h=>l[h])),r=Object.keys(e).map(u=>e[u].model.id),n=Object.keys(e).map(u=>e[u].model.caption),o=i(r,await a());await xa(n,o,this.model.logicName)}calcDefaultValue(t,e){const s={};return Object.values(this.editColumns).forEach(a=>{const{createDV:i,createDVT:r,updateDV:n,updateDVT:o}=a.editItem,u=e?r:o,c=e?i:n,l=Ye({name:a.fieldName,valueType:u,defaultValue:c,valueFormat:a.valueFormat},{data:t,context:this.context,params:this.params});l!==void 0&&(s[a.fieldName]=l)}),s}findRowStateIndex(t){const s=t.srfuf===0?"tempsrfkey":"srfkey";return this.state.rows.findIndex(a=>a.data[s]===t[s])}findRowState(t){const e=this.findRowStateIndex(t);return e!==-1?this.state.rows[e]:void 0}}),Eu=d("GridFieldColumnController",class extends es{constructor(){super(...arguments),this.codeList=void 0}get isLinkColumn(){return!!this.model.enableLinkView&&!!this.model.linkAppViewId}get hasAction(){return!!this.model.deuiactionId}async onInit(){await super.onInit(),this.loadCodeList=Vt(this.loadCodeList,300,{leading:!0,trailing:!1}),this.loadCodeList()}clickable(t){const e=t.data[this.model.codeName];return(this.isLinkColumn||this.hasAction)&&e}handlePublicParams(t,e,s){const{userParam:a}=this.model;if(!a)return{context:e,params:s};const{navigateContexts:i,navigateParams:r}=Pe(a);let n={};i&&t&&(n=b(i,t,s,e));const o=Object.assign(e.clone(),n);let u={};r&&t&&(u=b(r,t,s,e));const c={...s,...u};return{context:o,params:c}}async openLinkView(t,e){if(!t.data[this.model.codeName])return;const a=this.model.linkValueItem||"srfkey",i=t.data[a];if(i==null)throw new D(this.model,"\u672A\u5728\u884C\u6570\u636E\u4E2D\u53D6\u5230 ".concat(a," \u7684\u503C"));const{linkAppViewId:r}=this.model;if(!r)return;const n=Qs(t.data),o=Object.assign(this.context.clone(),{srfkey:i,...n}),u=v(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 s=this.model.deuiactionId;await U.execAndResolved(s,{context:this.context,params:this.params,data:[t.data],view:this.grid.view,event:e})}async loadCodeList(){const t=this.model.appCodeListId;if(!t)return;const e=ibiz.hub.getApp(this.context.srfappid);this.codeList||(this.codeList=e.codeList.getCodeList(t));const s=await e.codeList.get(t,this.context,this.params);return this.codeListItems=s,s}calcFieldAgg(t){const{aggField:e,aggMode:s,aggValueFormat:a,unitName:i}=this.model;if(s==="NONE")return;const r=e||this.model.id;t=t.filter(u=>!w(u[r]));let n;if(this.grid.model.aggMode==="PAGE")switch(s){case"SUM":n=t.map(u=>u[r]).reduce((u,c)=>xt(u,c),0);break;case"AVG":n=t.map(u=>u[r]).reduce((u,c)=>xt(u,c),0)/t.length;break;case"MAX":n=Math.max(...t.map(u=>u[r]));break;case"MIN":n=Math.min(...t.map(u=>u[r]));break;default:throw new D(this.model,"\u6682\u672A\u652F\u6301\u5C5E\u6027\u5217\u805A\u5408\u6A21\u5F0F".concat(s))}else throw this.grid.model.aggMode==="ALL"?new D(this.model,"\u8FDC\u7A0B\u805A\u5408\u6682\u672A\u652F\u6301"):new D(this.grid.model,"\u6682\u672A\u652F\u6301\u805A\u5408\u6A21\u5F0F".concat(this.grid.model.aggMode));let o="".concat(n);if(a)try{o=ibiz.util.text.format("".concat(n),a)}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 $n.toText(this.model,t);const e="".concat(t);if(!this.valueFormat)return e;if(Bt.isDate(this.dataType)){const a=L(e).format(this.valueFormat);return a!=="Invalid Date"?a:e}return ibiz.util.text.format(e,this.valueFormat)}}),yc=d("GridUAColumnController",class extends es{initActionStates(t){var e;const{deuiactionGroup:s}=this.model;if(!s)throw new m(this.model,"\u64CD\u4F5C\u5217\u6CA1\u6709\u914D\u7F6E\u754C\u9762\u884C\u4E3A\u7EC4");if(!((e=s.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 a=new ft;s.uiactionGroupDetails.forEach(i=>{const r=i.uiactionId;if(r){const n=new pt(i.id,this.grid.context.srfappid,r);a.addState(i.id,n)}}),t.uaColStates[this.model.codeName]=a}async onActionClick(t,e,s){const a=t.uiactionId;await U.execAndResolved(a,{context:this.context,params:this.params,data:[e.data],view:this.grid.view,event:s})}}),Fc=d("GridFieldEditColumnController",class extends Eu{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=Us(this.grid.model,this.model.codeName);t&&(this.editItem=t,this.editItem.editor&&this.editItem.editor.editorType!=="HIDDEN"&&(this.editorProvider=await bt(this.editItem.editor),this.editorProvider&&(this.editor=await this.editorProvider.createController(this.editItem.editor,this),await this.initRules())))}async initRules(){this.rules=[];const t=_e(this.grid.model.degridEditItemVRs||[],this.fieldName);t&&this.rules.push(...Xe(t,this.fieldName,this.valueItemName)),this.editItem.editor&&this.rules.push(...He(this.editItem.editor)),this.rules.length>0&&(this.validator=new Ae({[this.fieldName]:this.rules}))}async setRowValue(t,e,s){s=s||this.fieldName,await this.grid.setRowValue(t,s,e)}async dataChangeNotify(t,e){this.calcColumnDisabled(t);const s=t.editColStates[this.fieldName].required;if(this.calcColumnRequired(t),(s!==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 s=this.grid.scheduler.triggerItemEnable(this.fieldName,{data:[t.data]});s!==void 0&&(e=s)}t.editColStates[this.fieldName].disabled=!e}calcColumnRequired(t){let e=this.editItem.allowEmpty!==!1;if(e&&this.grid.scheduler){const s=this.grid.scheduler.triggerItemBlank(this.fieldName,{data:[t.data]});s!==void 0&&(e=s)}t.editColStates[this.fieldName].required=!e}calcColumnReadonly(t){var e;const s=!!((e=this.editItem.editor)!=null&&e.readOnly);t.editColStates[this.fieldName].readonly=s}calcEnableCond(t){const{enableCond:e}=this.editItem,s=t.data.srfuf===0;switch(e){case 0:return!1;case 1:return s;case 2:return!s;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(s){const{errors:a}=s;return t.errors[e]=a[0].message,!1}return t.errors[e]=null,!0}}),Pc=d("GridGroupColumnController",class extends es{}),gu=d("ListService",class extends st{initUIDataMap(){var t;super.initUIDataMap(),(t=this.model.delistDataItems)==null||t.forEach(e=>{const s=e.id.toLowerCase(),a=e.appDEFieldId;let i;if(a){const r=a.toLowerCase();i=new X(s,r,{isOriginField:!0,dataType:e.dataType})}else i=new X(s,s);this.dataUIMap.set(s,i)})}}),bc=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 gu(this.model),await this.service.init(this.context)}setSort(t,e){if(t&&e)super.setSort(t,e);else{const{minorSortAppDEFieldId:s,minorSortDir:a}=this.model;if(s&&a){const i=this.fieldIdNameMap.get(s);this.state.sortQuery="".concat(i.toLowerCase(),",").concat(a.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,s;super.setSelection(t);const a=t?.[0];(e=this.batchToolbarController)==null||e.calcButtonState(a,this.model.appDataEntityId),(s=this.quickToolbarController)==null||s.calcButtonState(a,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,s=new Map;e.forEach(i=>{const r=s.get(i[t])||[];r.push(i),s.set(i[t],r)});const a=[];s.forEach((i,r)=>{a.push({caption:r,key:r,children:[...i]})}),this.state.groups=a}}async handleCodeListGroup(){const{groupAppDEFieldId:t,groupCodeListId:e}=this.model;if(t&&e){const{items:s}=this.state,a=[],r=await ibiz.hub.getApp(this.context.srfappid).codeList.get(e,this.context,this.params),n=[];r.forEach(u=>{const c=s.filter(l=>l[t]===u.value);a.push({caption:u.text,key:u.value,children:[...c]}),n.push(u.value)});const o=s.filter(u=>n.indexOf(u[t])===-1);o.length>0&&a.push({caption:"\u5176\u4ED6",key:"\u5176\u4ED6",children:[...o]}),this.state.groups=a}}}),Cu=d("PanelController",class extends H{constructor(){super(...arguments),this.panelItems={},this.providers={}}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(s=>{s.destroy()})}async initPanelItemControllers(t=this.model.rootPanelItems,e=this,s=void 0){t&&await Promise.all(t.map(async a=>{var i,r;const n=await ca(a);if(!n)return;e.providers[a.id]=n;const o=await n.createController(a,e,s);e.panelItems[a.id]=o,(i=a.panelItems)!=null&&i.length&&!o.isDataContainer&&await this.initPanelItemControllers(a.panelItems,e,o),(r=a.panelTabPages)!=null&&r.length&&await this.initPanelItemControllers(a.panelTabPages,e,o)}))}async load(){var t,e;const s=await this.prepareData();if(!s)throw new f("\u672A\u83B7\u53D6\u5230\u9762\u677F\u6570\u636E");const a=this.convertData(s);(e=(t=this.data).destroy)==null||e.call(t),this.state.data=a,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=Hs(this.model),s=e.map(i=>i.id),a=new On(e,t);return a._evt.on("change",i=>{s.includes(i)&&this.dataChangeNotify([i])}),a}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,s=>{s.controlLogics&&e.push(...s.controlLogics)},{childrenFields:["rootPanelItems","panelItems","panelTabPages"]}),super.initControlScheduler(e)}}),Sc=d("ViewLayoutPanelController",class extends Cu{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 s=a=>{const i=[];return a.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=s(t.panelItems||[]):(e=this.model.rootPanelItems)!=null&&e.length&&(this.model.rootPanelItems=s(this.model.rootPanelItems||[]))}}),Du=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 a;return((a=this.parent)==null?void 0:a.visible)!==!1&&e},set(a){return e=a,!0}});let s;Object.defineProperty(this,"keepAlive",{enumerable:!0,configurable:!0,get(){return s!==void 0?s:this.parent?this.parent.keepAlive:!1},set(a){return s=a,!0}})}}),Nc=d("PanelItemController",class{constructor(t,e,s){this.model=t,this.panel=e,this.parent=s,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:s}=this.model;if(t){const{width:a,height:i}=Ut(t);this.state.layout.width="".concat(a),this.state.layout.height="".concat(i)}e?.cssName&&this.state.class.container.push(e.cssName),s?.cssName&&this.state.class.label.push(s.cssName)}destroy(){}createState(){var t;return new Du((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 s=this.panel.scheduler.triggerItemEnable(this.model.id,{data:[t]});s!==void 0&&(e=!s)}e!==void 0&&(this.state.disabled=e)}calcItemVisible(t){let{visible:e}=this.dynaLogicResult;if(e!==!1&&this.panel.scheduler){const s=this.panel.scheduler.triggerItemVisible(this.model.id,{data:[t]});s!==void 0&&(e=s)}e!==void 0&&(this.state.visible=e)}calcItemRequired(t){let{required:e}=this.dynaLogicResult;if(e!==!0&&this.panel.scheduler){const s=this.panel.scheduler.triggerItemBlank(this.model.id,{data:[t]});s!==void 0&&(e=!s)}e!==void 0&&(this.state.required=e)}calcDynamicLogic(t,e=!1){var s;this.parent&&!this.parent.state.visible||(s=this.model.panelItemGroupLogics)==null||s.forEach(a=>{const i=a.relatedItemNames||[];if(e||Mt(i,t))try{const r=Xt(this.data,a);switch(a.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"})}}),Rc=d("PickupViewPanelController",class extends H{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,s=this.context.clone(),a={...this.params};t&&Object.assign(s,b(t,this.params,this.context)),e&&Object.assign(a,b(e,this.params,this.context)),this.state.context=s,this.state.params=a}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")}}),wu=class{constructor(t,e){this.model=t,this.searchBar=e;var s;let a;t.appDEFieldId&&(a=wt(e.appDataEntity,t.appDEFieldId)),this.fieldName=a?a.codeName.toLowerCase():t.id,this.label=t.caption||a?.logicName||t.id,this.valueOP=(s=t.defsearchMode)==null?void 0:s.valueOP}get context(){return this.searchBar.context}get params(){return this.searchBar.params}async init(){if(!this.model.editor)throw new m(this.model,"\u7F3A\u5C11\u7F16\u8F91\u5668\u6A21\u578B");this.editorProvider=await bt(this.model.editor),this.editorProvider&&(this.editor=await this.editorProvider.createController(this.model.editor,this))}},Lc=d("SearchBarController",class extends H{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(s=>{s.lnlanguageRes&&s.lnlanguageRes.lanResTag?e.push(ibiz.i18n.t(s.lnlanguageRes.lanResTag,s.logicName)):s.logicName&&e.push(s.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 a=B.execSingleLine(this.state.selectedGroupItem.data),i=b(a,this.params,this.context);Object.assign(e,i)}const s=this.calcFilters();return s&&(e.filters=s),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 s=new wu(e,this);this.filterControllers.push(s)}),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],s=>{s.leaf&&(s.field&&s.valueOP&&!w(s.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))}}}),Tc=d("TabExpPanelController",class extends H{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(s=>{e.push({caption:s.caption,tabTag:s.id,class:s.sysCss?[s.sysCss.cssName]:[],sysImage:s.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 s=this.getNavViewMsg(t);e===!0&&(s.isRoutePushed=!0),this.evt.emit("onNavViewChange",{navViewMsg:s})}get activeTabViewPanelModel(){const{activeName:t}=this.state;return this.model.controls.find(s=>s.id===t)}async handleTabChange(){this.activeTabViewPanelModel&&this.changeToTab()}prepareParams(t){const{navDER:e,navFilter:s,navigateContexts:a,navigateParams:i,appDataEntityId:r}=t,n={deName:_(r),navFilter:s,pickupDEFName:e?.pickupDEFName,navContexts:a,navParams:i},o={context:this.context,params:this.params,data:{}},{resultContext:u,resultParams:c}=Wt(n,o),l=Object.assign(this.context.clone(),u,{currentSrfNav:this.state.activeName}),h={...this.params,...c};return{context:l,params:h}}getNavViewMsg(t){const{context:e,params:s}=this.prepareParams(t);return{key:t.codeName.toLowerCase(),context:e,params:s,viewId:t.embeddedAppDEViewId,isCache:this.isCache}}}),qa=d("TreeService",class extends st{async fetchChildNodes(t,e){const{hasQuery:s}=e;let a=[];if(t){const i=Re(this.model,{parentId:t?.nodeId,hasQuery:s});if(i.length===0)return;(await nt(i.map(async n=>{const o=Ne(this.model,n.childDETreeNodeId);return this.fetchNodeDatasByType(o,n,t,e)}),!1)).forEach(n=>{a.push(...n)})}else{const i=Se(this.model);a=await this.fetchNodeDatasByType(i,void 0,void 0,e)}return a}async fetchNodeDatasByType(t,e,s,a){const i=Re(this.model,{parentId:t.id,hasQuery:a.hasQuery}).length===0,r={...a,leaf:i};let n=[];switch(t.treeNodeType){case"STATIC":n=[await this.getStaticNodeData(t,e,s,r)];break;case"DE":n=await this.getDENodeDatas(t,e,s,r);break;case"CODELIST":n=await this.getCodeListNodeDatas(t,e,s,r);break;default:throw new D(t,"".concat(t.treeNodeType,"\u8282\u70B9\u7C7B\u578B\u672A\u652F\u6301"))}const{expandFirstOnly:o,expanded:u,rootNode:c}=t,l=c&&!this.model.rootVisible;return i||await Promise.all(n.map(async(h,p)=>{var E;if(u&&(!o||o&&p===0)||(E=a.defaultExpandedKeys)!=null&&E.length&&a.defaultExpandedKeys.includes(h.id)||l){const C=await this.fetchChildNodes(h,a);h.children=C}})),n}async getStaticNodeData(t,e,s,a){return new Sn(t,s,{parentValueLevel:e?.parentValueLevel,leaf:!!a.leaf})}getNodeRSFilterParams(t,e,s){const{parentValueLevel:a,navigateContexts:i,navigateParams:r,parentFilter:n,parentDER1N:o}=t,u=o?.pickupDEFName,c={...s.params},l={...s.context,...e?.context||{}};let h={},p;if(e){p=e;for(let y=1;y<a;y++)p=p?.parent}let E,C;if(p){h=p.deData||{};const y=Ne(this.model,p.nodeId);y.appDataEntityId&&(C=_(y.appDataEntityId)),E=p.value}const{resultContext:S,resultParams:A}=Wt({deName:C,navFilter:n?"n_".concat(n,"_eq"):void 0,pickupDEFName:u,navParams:r,navContexts:i},{derValue:E,context:l,params:c,data:h});return Object.assign(l,S),Object.assign(c,A),{context:l,params:c,navContext:S,navParams:A}}async getDENodeDatas(t,e,s,a){const{appDEDataSetId:i,appDataEntityId:r}=t,{context:n,params:o,navContext:u,navParams:c}=e?this.getNodeRSFilterParams(e,s,a):{context:a.context,params:a.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 La(t,s,{data:p,leaf:!!a.leaf,navContext:u,navParams:c})):[]}async getCodeListNodeDatas(t,e,s,a){const{context:i,params:r,navContext:n,navParams:o}=e?this.getNodeRSFilterParams(e,s,a):{context:a.context,params:a.params,navContext:{},navParams:{}},u=await this.app.codeList.get(t.codeListId,i,r);return u.length?u.map(l=>new bn(t,s,{data:l,leaf:!!a.leaf,navContext:n,navParams:o})):[]}}),Bc=d("TreeController",class extends tt{constructor(){super(...arguments),this.contextMenus={}}initState(){super.initState(),this.state.defaultExpandedKeys=[],this.state.expandedKeys=[],this.state.navigational=!1,this.state.size=0}async onCreated(){await super.onCreated(),this.state.expandedKeys=[...this.state.defaultExpandedKeys],this.service=new qa(this.model),await this.service.init(this.context),this.model.detreeNodes.forEach(t=>{var e,s;(s=(e=t.decontextMenu)==null?void 0:e.detoolbarItems)!=null&&s.length&&(this.contextMenus[t.decontextMenu.id]=new Ho(t.decontextMenu,this.context,this.params,this.ctx))}),await Promise.all(Object.values(this.contextMenus).map(t=>t.created()))}async load(t={}){const e=t.isInitialLoad===!0;e&&await this.startLoading();let s;try{s=await this.loadNodes()}finally{e&&await this.endLoading()}return await this.afterLoad(t,s),this.state.isLoaded=!0,await this.evt.emit("onLoadSuccess",{isInitialLoad:e}),s}async loadNodes(t){const e=await this.getFetchParams(),s=!!e.query;this.state.isLoading=!0;let a;try{a=await this.service.fetchChildNodes(t,{context:this.context.clone(),params:e,hasQuery:s,defaultExpandedKeys:this.state.expandedKeys})||[]}finally{this.state.isLoading=!1}return t?t.children=a:this.state.rootNodes=a,this.state.items=[],k({children:this.state.rootNodes},i=>{this.state.items.push(i)}),this.state.expandedKeys=this.calcExpandedKeys(a),a}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,s=e.filter(a=>a.id!==t.id);s.length===e.length?this.setSelection(this.state.singleSelect?[t]:e.concat([t])):this.setSelection(s)}this.state.mdctrlActiveMode===1&&await this.setActive(t)}onExpandChange(t,e){const s=this.state.expandedKeys.includes(t.id);if(e&&!s)this.state.expandedKeys.push(t.id);else if(!e&&s){const a=this.state.expandedKeys.indexOf(t.id);a!==-1&&this.state.expandedKeys.splice(a,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(a=>a.id),s=this.state.items.filter(a=>e.includes(a.id));super.setSelection(s)}getNodeModel(t){var e;return(e=this.model.detreeNodes)==null?void 0:e.find(s=>s.id===t)}async doUIAction(t,e,s){const a=this.getEventArgs(),i=this.parseTreeNodeData(e),r=await U.exec(t,{...a,...i,event:s});if(r.closeView)this.view.closeView();else if(r.refresh)switch(r.refreshMode){case 1:this.refreshNodeChildren(e);break;case 2:this.refreshNodeChildren(e,!0);break;case 3:this.refresh();break}}parseTreeNodeData(t){return{data:[{...t,...t.deData||{}}],context:Object.assign(this.context.clone(),t.context||{}),params:{...this.params,...t.params||{}}}}calcExpandedKeys(t){let e=[...this.state.expandedKeys];return k({children:t},s=>{var a;(a=s.children)!=null&&a.length&&e.push(s.id)}),e=Array.from(new Set(e)),e}async refreshNodeChildren(t,e=!1){const s=t.srfkey?"srfkey":"id",a=this.state.items.find(n=>n[s]===t[s]);if(!a){ibiz.log.error("\u627E\u4E0D\u5230\u5BF9\u5E94\u7684\u6811\u8282\u70B9\u6570\u636E",t);return}if(e){const{parent:n}=a;if(!n||!this.model.rootVisible&&this.state.rootNodes.includes(n)){this.refresh();return}}const i=e?a.parent:a,r=await this.loadNodes(i);this.evt.emit("onAfterRefreshParent",{parentNode:i,children:r})}async expandNodeByKey(t){const e=t.filter(a=>!this.state.expandedKeys.includes(a));if(e.length===0)return;const s=this.state.items.filter(a=>e.includes(a.id));this.state.expandedKeys.push(...e),s.length!==0&&await Promise.all(s.map(a=>this.loadNodes(a)))}}),vu=d("WizardPanelService",class extends ee{async initialize(t,e={},s={}){var a;const i=(a=this.model.initControlAction)==null?void 0:a.appDEMethodId;let r=await this.exec(i,t,e,s);return r=this.handleResponse(r),r}async finish(t,e={},s={}){var a;const i=(a=this.model.finishControlAction)==null?void 0:a.appDEMethodId;let r=await this.exec(i,t,e,s);return r=this.handleResponse(r),r}}),Oc=d("WizardPanelController",class extends H{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(a=>{var i,r,n;a.firstForm&&(this.firstForm=a);const o="".concat(this.model.name,"_form_").concat((i=a.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===a.dewizardStepId),c=u?.stepTag;this.stepTags[o]=c}),(e=(t=this.model.dewizard)==null?void 0:t.dewizardSteps)==null||e.forEach(a=>{this.steps.push(a.stepTag)}),this.service=new vu(this.model),await this.service.init(this.context);const{deeditForms:s}=this.model;s&&s.length>0&&await Promise.all(s.map(async a=>{const{formTag:i}=a.dewizardForm;if(i){const r=await dt(a);r&&(this.providers[i]=r)}}))}get activeWizardForm(){const{activeFormTag:t}=this.state,e=this.model.dewizard.dewizardForms.find(s=>s.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 s=e.ctrl;this.formControllers.set(t,s),s.load()}onFormSaved(t){const e=t.data[0],s=_(this.model.appDataEntityId);!this.context[s]&&e&&e.srfkey&&(this.context[s]=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 s=this.model.dewizard.dewizardForms.find(a=>a.formTag===t);if(!s)throw new f("\u627E\u4E0D\u5230\u6807\u8BC6\u4E3A".concat(t,"\u7684\u5411\u5BFC\u8868\u5355"));return s}async initialize(){var t;if((t=this.model.initControlAction)==null?void 0:t.appDEMethodId){const s=await this.service.initialize(this.context,this.params),a=_(this.model.appDataEntityId);if(s.data&&s.data.srfkey&&(this.context[a]=s.data.srfkey),s.data&&this.model.stateAppDEFieldId&&s.data[this.model.stateAppDEFieldId]){const i=this.getWizardFormByTag(s.data[this.model.stateAppDEFieldId]);i&&(this.state.activeFormTag=i.formTag)}}!this.state.activeFormTag&&this.firstForm&&(this.state.activeFormTag=this.firstForm.formTag,this.tagHistory.push(this.firstForm.formTag))}async finish(){await this.service.finish(this.context,this.params),this.evt.emit("onFinishSuccess",void 0)}async onPrevClick(){const t=await this.activeFormController.goBack();let e;if(this.model.stateAppDEFieldId&&t[this.model.stateAppDEFieldId]?this.getWizardFormByTag(t[this.model.stateAppDEFieldId])&&(e=t[this.model.stateAppDEFieldId]):(e=this.tagHistory[this.tagHistory.length-1],this.tagHistory.pop()),!e)throw new f("\u6CA1\u6709\u4E0A\u4E00\u4E2A\u8868\u5355");this.state.activeFormTag=e}async onNextClick(){const t=await this.activeFormController.save();let e;if(t.srfnextform)this.getWizardFormByTag(t.srfnextform)&&(e=t.srfnextform,this.tagHistory.push(e));else if(this.model.stateAppDEFieldId&&t[this.model.stateAppDEFieldId])this.getWizardFormByTag(t[this.model.stateAppDEFieldId])&&(e=t[this.model.stateAppDEFieldId]);else{const{formTag:s}=this.activeWizardForm,a=this.model.dewizard.dewizardSteps;if(a&&s){const i=a.findIndex(o=>o.stepTag===s),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()}}),Au=d("MDCtrlService",class extends st{initUIDataMap(){var t;super.initUIDataMap(),(t=this.model.delistDataItems)==null||t.forEach(e=>{const s=e.id.toLowerCase(),a=e.appDEFieldId;let i;if(a){const r=a.toLowerCase();i=new X(s,r,{isOriginField:!0,dataType:e.dataType})}else i=new X(s,s);this.dataUIMap.set(s,i)})}}),ne=d("MobMDCtrlRowState",class{constructor(t,e){this.data=t,this.controller=e,this.uaColStates={},this.data=t}}),_c=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 Au(this.model),await this.service.init(this.context),this.setSort()}setSort(t,e){if(t&&e)super.setSort(t,e);else{const{minorSortAppDEFieldId:s,minorSortDir:a}=this.model;s&&a?this.state.sortQuery="".concat(s.toLowerCase(),",").concat(a.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(s=>{const a=new ne(s,this);return this.initActionStates(a),a})),await this.initGroupCodeListItems(),await this.handleDataGroup(),super.afterLoad(t,e)}setData(t){const e=t.map(s=>new ne(s,this));this.state.rows=e}getAllData(){return this.state.rows.map(t=>t.data)}async onActionClick(t,e,s){const a=t.uiactionId;await U.execAndResolved(a,{context:this.context,params:this.params,data:[e.data],view:this.view,event:s})}initActionStates(t){const{deuiactionGroup:e,deuiactionGroup2:s}=this.model;e&&this.initUIActionGroup(t,e),s&&this.initUIActionGroup(t,s)}initUIActionGroup(t,e){var s;(s=e.uiactionGroupDetails)!=null&&s.length||ibiz.log.debug("\u64CD\u4F5C\u5217\u754C\u9762\u884C\u4E3A\u7EC4\u6CA1\u6709\u914D\u7F6E\u754C\u9762\u884C\u4E3A");const a=new ft;(e.uiactionGroupDetails||[]).forEach(r=>{const n=r.uiactionId;if(n){const o=new pt(r.id,this.context.srfappid,n);a.addState(r.id,o)}}),a.update(t.data.getOrigin()),t.uaColStates[e.id]=a}async handleDataGroup(){const{enableGroup:t,groupMode:e,groupAppDEFieldId:s}=this.model;if(t&&e){if(!s)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,s=new Map;e.forEach(i=>{const r=i[t];w(r)||(s.has(r)||s.set(r,[]),s.get(r).push(new ne(i,this)))});const a=[];s.forEach((i,r)=>{a.push({caption:r,key:r,children:[...i]})}),this.state.groups=a}}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:s}=this.state,a=new Map;this.groupCodeListItems.forEach(r=>{a.set(r.value,[])}),s.forEach(r=>{const n=r[t],o=a.get(n);o&&o.push(new ne(r,this))});const i=[];a.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}}),Iu=d("KanbanService",class extends za{async updateGroup(t,e){var s;const a=((s=this.model.updateGroupControlAction)==null?void 0:s.appDEMethodId)||"update";let i=await this.exec(a,t,e.getOrigin());return i=this.handleResponse(i),i}}),Mc=d("KanbanController",class extends qo{get enableEditOrder(){return this.model.enableCardEditOrder===!0}get enableEditGroup(){return this.model.enableCardEditGroup===!0}async initControlService(){this.service=new Iu(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:s}=this.model;if(!e)throw new m(this.model,"\u6392\u5E8F\u5C5E\u6027\u6CA1\u914D\u7F6E");if(!s)throw new m(this.model,"\u6392\u5E8F\u65B9\u5411\u6CA1\u914D\u7F6E");const a=s==="ASC";t.forEach(i=>{const r=i[e];if(w(r))i[e]=0;else{const n=Number(r);if(Number.isNaN(n))throw new f("".concat(i.srfmajortext,"\u7684\u6392\u5E8F\u5C5E\u6027\u65E0\u6CD5\u8F6C\u6362\u6210\u6570\u503C"))}}),t.sort((i,r)=>a?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:s,to:a,fromIndex:i,toIndex:r}=t,n=this.model.groupAppDEFieldId,o=this.model.minorSortAppDEFieldId,u=[],c=this.state.groups.find(I=>I.key===s),l=this.state.groups.find(I=>I.key===a);if(!this.enableEditOrder){if(t.from===t.to){ibiz.message.warning("\u5F53\u524D\u770B\u677F\u4E0D\u5141\u8BB8\u8C03\u6574\u6B21\u5E8F");return}const I=c.children[i];return I[n]=t.to,this.updateChangedItems([I])}const h=I=>I+(100-I%100),p=[...l.children],E=[...l.children],C=c.children[i];t.from!==t.to?(C[n]=t.to,E.splice(r,0,C)):(E.splice(i,1),E.splice(r,0,C));const S=c.children.splice(i,1);l.children.splice(r,0,...S),e||(p.reverse(),E.reverse());let A,y=[],F;E.forEach((I,N)=>{A===void 0?I!==p[N]&&(p[N]?A=p[N][o]||100:A=N===0?100:h(p[N-1][o]),I[o]=A,u.push(I)):(A>=I[o]?(y.length>0&&(y.forEach(z=>{z[o]=h(F),u.push(z),F=z[o]}),A=F,F=0,y=[]),I[o]=h(A),u.push(I)):(y.length===0&&(F=A),y.push(I)),A=I[o])}),this.updateChangedItems(u)}async updateChangedItems(t){try{this.state.updating=!0,await Promise.all(t.map(async e=>{const s=_(this.model.appDataEntityId),a=this.context.clone();a[s]=e.srfkey;const i=await this.service.updateGroup(a,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 qa{constructor(){super(...arguments),this.multipleUiMap=new Map}initUIDataMap(){var t;super.initUIDataMap(),(t=this.model.detreeNodes)==null||t.forEach(e=>{var s;const a=new Map;(s=e.detreeNodeDataItems)==null||s.forEach(i=>{const r=i.id.toLowerCase(),o=i.appDEFieldId.toLowerCase(),u=new X(r,o,{isOriginField:!0,dataType:i.dataType});a.set(r,u)}),this.multipleUiMap.set(e.id,a)})}async getDENodeDatas(t,e,s,a){const{appDEDataSetId:i,appDataEntityId:r}=t,{context:n,params:o,navContext:u,navParams:c}=e?this.getNodeRSFilterParams(e,s,a):{context:a.context,params:a.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 La(t,s,{data:E,leaf:!!a.leaf,navContext:u,navParams:c}))}return[]}handleResponseForMultiple(t,e){const s=super.handleResponse(t);return s.headers&&(s.headers["x-page"]&&(s.page=Number(s.headers["x-page"])),s.headers["x-per-page"]&&(s.size=Number(s.headers["x-per-page"])),s.headers["x-total"]&&(s.total=Number(s.headers["x-total"]))),s.ok&&(kt(s.data)?s.data=s.data.map(a=>this.toUIDataForMultiple(a,e)):s.data=this.toUIDataForMultiple(s.data,e)),s}toUIDataForMultiple(t,e){const s=this.multipleUiMap.get(e);return new G(t,s)}}),xc=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 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 Ue(t);if(!e)return;this.providers[t.codeName]=e;const s=await e.createController(t,this);this.columns[t.codeName]=s,t.columnType==="DEFGRIDCOLUMN"?this.fieldColumns[t.codeName]=s:t.columnType==="UAGRIDCOLUMN"&&(this.uaColumns[t.codeName]=s)}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(s=>!s.hidden),e=t.length;t.forEach((s,a)=>{s.uaColumn?s.fixed=a+1<=Math.floor(e/2)?"left":"right":s.fixed="right"})}async load(t={}){const e=t.isInitialLoad===!0,s=await this.loadNodes();return this.state.expandedKeys=this.calcExpandedKeys(s),await this.afterLoad(t,s),this.state.isLoaded=!0,await this.evt.emit("onLoadSuccess",{isInitialLoad:e}),s}async loadNodes(t){const e=await this.getFetchParams(),s=!!e.query,a=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:s,defaultExpandedKeys:a})||[]}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},s=>{var a;(a=s.children)!=null&&a.length&&e.push(s.id)}),this.state.defaultExpandedKeys.length&&(e.push(...this.state.defaultExpandedKeys),e=Array.from(new Set(e))),e}}),Vc=d("TreeGridController",class extends mu{}),kc=d("TreeGridService",class extends Ya{}),Fu=d("MEditViewPanelService",class extends st{}),Wc=d("MEditViewPanelController",class extends tt{constructor(){super(...arguments),this.parameters=[]}async onCreated(){await super.onCreated(),this.service=new Fu(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 s=await ibiz.hub.getAppView(this.model.embeddedAppViewId);if(s.appDataEntityId){const a=await ibiz.hub.getAppDataEntity(s.appDataEntityId);s&&a?this.parameters=[{parameterName:(t=a.keyAppDEFieldId)==null?void 0:t.toLowerCase(),pathName:(e=a.codeName)==null?void 0:e.toLowerCase()}]:this.parameters=[]}}}async afterLoad(t,e){await super.afterLoad(t,e);const s=this.state.panelUiItems.filter(a=>a.id.startsWith("mockId:"));return this.state.panelUiItems=[],this.doItems(e,s),this.model.panelStyle==="TAB_TOP"&&this.state.panelUiItems.length>0&&s.length===0&&(this.state.activeTab=this.state.panelUiItems[0].id),e}handlePanelItemParams(t){const[{parameterName:e}]=this.parameters,a={id:t[e]?t[e]:"mockId:".concat(Y()),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(a.context,{[n]:t[r]}),t.srfmajortext&&!Object.is(t.srfmajortext,"")?Object.assign(a,{srfmajortext:t.srfmajortext}):t.srfuf===0&&Object.assign(a,{srfmajortext:"\u8349\u7A3F--\u65B0\u5EFA"})}),a}doItems(t,e){t.forEach(s=>{const a=this.handlePanelItemParams(s);this.state.panelUiItems.push(a)}),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(s=>s===t);this.state.panelUiItems.splice(e,1)}else await this.remove({data:[t.data],notRefresh:!0})}async handleTabDelete(t,e){let s=!1;t.id===this.state.activeTab&&e===this.state.panelUiItems.length-1&&e>0&&(s=!0),await this.handleDelete(t),s&&(this.state.activeTab=this.state.panelUiItems[this.state.panelUiItems.length-1].id)}afterRemove(t){super.afterRemove(t);const e=this.state.panelUiItems.findIndex(s=>s.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 s=this.state.panelUiItems.findIndex(i=>i.id===e);if(s<0)throw new f("\u7F16\u8F91\u89C6\u56FE\u9762\u677F\u90E8\u4EF6UI\u6570\u636E\u4E0D\u5B58\u5728");const a=this.state.panelUiItems[s];a.id.startsWith("mockId:")?this.state.panelUiItems[s]=this.handlePanelItemParams(t):a.srfmajortext=t.srfmajortext,this.model.panelStyle==="TAB_TOP"&&(this.state.activeTab=this.state.panelUiItems[s].id)}}),Pu=d("MapService",class extends st{async init(t){await super.init(t)}async fetchAll(t,e={}){var s;const a=[];if((s=this.model.sysMapItems)!=null&&s.length){const i=ibiz.hub.getApp(t.srfappid);await Promise.all(this.model.sysMapItems.map(async r=>{const{appDataEntityId:n,appDEDataSetId:o,customCond:u}=r,c=t.clone(),l={...e};if(u){const p=B.execSingleLine(u);if(p){const{navigateContexts:E,navigateParams:C}=Pe(p);E&&Object.assign(c,b(E,e,t)),C&&Object.assign(l,b(E,e,t))}}const h=await i.deService.exec(n,o,c,l);h.data&&a.push(...h.data.map(p=>new Tn(p,r)))}))}return new R(a,200)}}),Uc=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 Pu(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:s}=this.handlerAbilityParams(t),a=await this.getFetchParams(t?.viewParam);s.srfareacode=this.state.areaCode;const i=await this.service.fetchAll(s,a);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 s=await super.afterLoad(t,e),a=[],i=[];return s.forEach(r=>{r._itemStyle==="REGION"?a.push(r):r._itemStyle==="POINT"&&i.push(r)}),this.state.pointData=i,this.state.areaData=a,s}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(s=>{const a=e[s];switch(s.toLowerCase()){case"defaultareacode":this.state.defaultAreaCode=a;break;case"strareacode":this.state.strAreaCode=a==="true";break;case"jsonbaseurl":this.state.jsonBaseUrl=a;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]})}}),bu=d("HubController",class{constructor(){this.session={}}login(t,e){return ibiz.auth.login(t,e)}logout(){return ibiz.auth.logout()}}),Su=class{constructor(){this.convert=new kn,this.controller=new bu,this.appMap=new Map,this.apps=new Map,this.view2appMap=new Map,this.views=new Map,this.dataEntities=new Map,this.config=new Un,this.defaultAppIndexViewName="Index"}calcAppViewId(t){let e="";if(t.indexOf(".")!==-1){const s=t.split(".");e=s[s.length-1]}else e=t.toLowerCase();return e}registerModelLoaderProvider(t){this.modelLoaderProvider=t}registerApp(t){this.apps.set(t.codeName,t)}registerAppView(t){this.views.set(t.codeName,t)}registerAppDataEntity(t,e=ibiz.env.appId){this.dataEntities.has(e)||this.dataEntities.set(e,new Map),this.dataEntities.get(e).set(t.id,t)}setAppView(t,e=ibiz.env.appId){const s=this.calcAppViewId(t);this.view2appMap.set(s,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),s=this.view2appMap.get(e)||ibiz.env.appId;if(this.appMap.has(s)||await this.createApp(s),this.views.has(e))return this.views.get(e);if(this.modelLoaderProvider){const a=await this.modelLoaderProvider.getAppView(s,e);return this.registerAppView(a),a}throw new f("\u89C6\u56FE[".concat(e,"]\u4E0D\u5B58\u5728"))}async getAppDataEntity(t,e=ibiz.env.appId){if(this.dataEntities.has(e)){const s=this.dataEntities.get(e);if(s.has(t))return s.get(t)}if(this.modelLoaderProvider){let s;return t.indexOf(".")!==-1?s=await this.modelLoaderProvider.getAppDataEntity(e,t):s=await this.modelLoaderProvider.getAppDataEntityByCodeName(e,t),this.registerAppDataEntity(s,e),s}throw new f("\u672A\u627E\u5230\u5E94\u7528\u5B9E\u4F53[".concat(t,"]"))}async createApp(t){if(this.appMap.has(t))return this.appMap.get(t);let e;if(this.apps.has(t))e=this.apps.get(t);else if(this.modelLoaderProvider)e=await this.modelLoaderProvider.getApp(t),this.registerApp(e);else throw new f("\u672A\u627E\u5230\u5E94\u7528[".concat(t,"]\u6A21\u578B"));const s=new xn(e);return this.appMap.set(t,s),await s.init(),this.configCache||(this.configCache=new $t(ibiz.env.appId,"PSSysHub","Global")),s}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)}},Nu=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:s,engineCat:a}=t,i="".concat(a,"_").concat(s),r=this.viewEngines.get(i);if(r)return r(...e);ibiz.log.error("\u6CA1\u6709".concat(i,"\u5BF9\u5E94\u7684\u5F15\u64CE"),t)}}),Ru=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:s,childNames:a}=this.view;if(ibiz.log.debug("".concat(s.id,"\u7684\u5B50\u7EC4\u4EF6\uFF1A").concat(a.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,s,a;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=(s=this.viewLayoutPanel)==null?void 0:s.panelItems.righttoolbar;n&&(n.state.visible=!1)}}else if(this.toolbar)i=!0;else{const n=(a=this.viewLayoutPanel)==null?void 0:a.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:s,params:a}=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(s.srfappid).deService.exec(t,"get",s,a),{data:n}=r;n&&(this.view.state.srfactiveviewdata=n,e.emit("onDataChange",{actionType:"LOAD",data:[n]}),n.srfkey&&e.emit("onViewInfoChange",{dataInfo:n.srfmajortext||""}))}}),zc=d("MDViewEngine",class extends Ru{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 s=>{var a;(a=this.toolbar)==null||a.calcButtonState(s.data[0],this.xdataControl.model.appDataEntityId)}),this.xdataControl.evt.on("onBeforeLoad",()=>{this.xdataControl.state.searchParams=this.getSearchParams()}),this.xdataControl.evt.on("onLoadSuccess",s=>{this.view.evt.emit("onDataChange",{...s,actionType:"LOAD"})}),this.xdataControl.evt.on("onRemoveSuccess",s=>{this.view.evt.emit("onDataChange",{...s,actionType:"REMOVE"})}),this.xdataControl.evt.on("onSaveSuccess",s=>{this.view.evt.emit("onDataChange",{...s,actionType:"SAVE"})});const e=this.viewLayoutPanel.panelItems.view_searchform;if(e){const s=!!this.searchForm;e.state.keepAlive=s,e.state.visible=s&&!!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==="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,s;const{data:a,event:i}=t,r=(t.context||this.view.context).clone(),n=t.params||this.view.params,o=((e=a[0].srfdecodename)==null?void 0:e.toLowerCase())||_(this.xdataControl.model.appDataEntityId);r[o.toLowerCase()]=a[0].srfkey;const u=await((s=this.view.scheduler)==null?void 0:s.triggerCustom("opendata",{context:r,params:n,data:a,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,s,a;const{data:i,event:r,copyMode:n}=t;if(!((s=(e=this.view.model.viewLayoutPanel)==null?void 0:e.appViewLogics)==null?void 0:s.find(l=>l.id==="newdata")))throw new m(this.view.model,"\u7F3A\u5C11newdata\u7684\u89C6\u56FE\u903B\u8F91");const u=v(this.view.params);n&&(u.srfcopymode=n);const c=await((a=this.view.scheduler)==null?void 0:a.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)}}}),Lu=class{handle(t){return t instanceof m||t instanceof D?ibiz.message.error(t.message,10,!0):t instanceof Ot?t.status===401?ibiz.message.error("\u6CA1\u6709\u6CE8\u518C\u65E0\u6743\u9650\u9519\u8BEF\u5904\u7406\u5668"):ibiz.notification.error({title:"",desc:t.message,duration:10}):t instanceof ce?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}},Tu=class{constructor(){this.handlers=[]}register(t){this.handlers.unshift(t)}handleSingle(t){this.handlers.find(s=>!!s.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)}},Bu=class{constructor(){this.layoutPanel=new hr,this.text=new vr,this.hbs=new Vi,this.rawValue=new Ar,this.error=new Tu,this.error.register(new Lu)}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)}},oe=class{constructor(t,e){this.logic=t,this.scheduler=e,this.type=t.logicType}execute(t){throw new f("Method not implemented.")}destroy(){}},Ou=class{constructor(){this.constructorMap=new Map}register(t,e){this.constructorMap.set(t,e)}createExecutor(t,e){const s=this.constructorMap.get(t.logicType);if(!s)throw new D(t,"\u903B\u8F91\u7C7B\u578B ".concat(t.logicType," \u6682\u672A\u652F\u6301\uFF01"));return s(t,e)}},_u=class extends oe{constructor(){super(...arguments),this.initialized=!1}convertScriptArgs(t){return t}init(t,e,s){this.convertScriptArgs=e;const a=this.logic.scriptCode;this.scriptFn=B.createScriptFn(t,a,s),this.initialized=!0}execute(t){const e=this.convertScriptArgs(t);return this.scriptFn.exec(e)}},Qa=class extends oe{execute(t){const{appDEUILogicId:e,appDataEntityId:s}=this.logic;if(!e)throw new m(this.logic,"\u6CA1\u6709\u914D\u7F6E\u5B9E\u4F53\u754C\u9762\u903B\u8F91");ae(e,s,t)}},$a=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 s=this.createExecutor(e);this.executors.set(e.id,s);const a=this.createTrigger(e);this.triggers.set(e.id,a),a.bindExecutor(s)}catch(s){ibiz.log.error(s.message)}})}destroy(){this.triggers.forEach(t=>t.destroy()),this.executors.forEach(t=>t.destroy())}getExecuteParams(t){let e={};return this.defaultParamsCb&&(e=this.defaultParamsCb()),we(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(s=>{s.match(t)&&e.push(s)}),e}triggerAndExecute(t,e={}){const s=this.getMatchTriggers(t);if(s.length>0){const a=this.getExecuteParams(e);return s.map(r=>r.execute(a))}}triggerItemDynaLogic(t,e,s){const a={itemName:t,triggerType:e},i=this.triggerAndExecute(a,s);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 s=this.triggers.get(t);if(!s)return-1;const a=this.getExecuteParams(e);return s.execute(a)}triggerControlEvent(t,e,s){const a={ctrlName:t,eventName:e,triggerType:"CTRLEVENT"};this.triggerAndExecute(a,s)}},Mu=class extends $a{constructor(t){const e=t.filter(s=>s.triggerType!=="APPVIEWENGINE");e.forEach(s=>{s.triggerType==="CTRLEVENT"&&(s.ctrlName=s.itemName||s.logicTag)}),super(e)}},xu=class extends $a{constructor(t){t.forEach(e=>{e.triggerType=e.logicTrigger}),super(t)}triggerViewEvent(t){const e={eventName:t.eventName,triggerType:"VIEWEVENT"};this.triggerAndExecute(e,t)}},Vu=class{constructor(){this.constructorMap=new Map}register(t,e){this.constructorMap.set(t,e)}createTrigger(t,e){const s=this.constructorMap.get(t.triggerType);if(!s)throw new D(t,"\u89E6\u53D1\u5668\u7C7B\u578B ".concat(t.triggerType," \u6682\u672A\u652F\u6301\uFF01"));return s(t,e)}},ku=class{constructor(){this.executorFactory=new Ou,this.triggerFactory=new Vu}createViewScheduler(t){return new xu(t)}createControlScheduler(t){return new Mu(t)}},Lt=class{constructor(t,e){this.logic=t,this.scheduler=e,this.type=t.triggerType}bindExecutor(t){this.executor=t,this.executor.type==="SCRIPT"&&this.bindScriptExecutor(t)}bindScriptExecutor(t){t.initialized||t.init([],e=>e,{isAsync:!0,singleRowReturn:!1})}match(t){return t.triggerType===this.type}execute(t){if(this.executor)return this.executor.execute(t);throw new f("".concat(this.logic.id,"\u6CA1\u6709\u7ED1\u5B9Aexecutor"))}destroy(){this.executor=void 0}},Wu=class extends Lt{},ss=class extends Lt{bindExecutor(t){if(super.bindExecutor(t),this.executor.type!=="SCRIPT")throw new f("\u9884\u5B9A\u4E49\u903B\u8F91\u7C7B\u578B".concat(this.type,"\u7684\u89E6\u53D1\u5668\u7C7B\u578B\u53EA\u80FD\u662F\u811A\u672C"))}bindScriptExecutor(t){t.init(["context","viewparams","data","env"],e=>{const{context:s,params:a,data:i}=e;return{context:s,params:a,data:i?.[0]||{},env:ibiz.env}},{singleRowReturn:!0,isAsync:!1})}match(t){var e,s;return super.match(t)&&((e=t.itemName)==null?void 0:e.toLowerCase())===((s=this.logic.itemName)==null?void 0:s.toLowerCase())}execute(t){return!!this.executor.execute(t)}},Uu=class extends Lt{constructor(){super(...arguments),this.timer=null}start(){if(!this.logic.timer)throw new m(this.logic,"\u5B9A\u65F6\u5668\u7F3A\u5C11\u5B9A\u65F6\u95F4\u9694");this.timer=setInterval(()=>{if(!this.scheduler.defaultParamsCb)throw new f("\u5B9A\u65F6\u5668\u7F3A\u5C11\u9ED8\u8BA4\u53C2\u6570\u56DE\u8C03");const t=this.scheduler.defaultParamsCb();this.executor.execute(t)},this.logic.timer)}destroy(){super.destroy(),this.timer&&clearInterval(this.timer)}},zu=class extends oe{execute(t){if(this.logic.id==="opendata"&&this.logic.builtinAppUILogic)return this.executeOpenDataAppUILogic(this.logic.builtinAppUILogic,t);if(this.logic.id==="newdata"&&this.logic.builtinAppUILogic)return this.executeNewDataAppUILogic(this.logic.builtinAppUILogic,t)}async executeOpenDataAppUILogic(t,e){const{context:s,params:a,...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(s,b(c,r[0],a,s));let h={};const p=o.navigateParams;return x(p)&&(h=b(p,r[0],a,s)),ibiz.commands.execute(Z.TAG,u,l,h,i)}async calcOpenViewRef(t,e){const s=await ibiz.hub.getAppDataEntity(e.view.model.appDataEntityId),a=s.formTypeAppDEFieldId||s.dataTypeAppDEFieldId;if(!a)throw new m(t,"".concat(s.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][a];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:s,params:a,...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 F=_(n.parentView.model.appDataEntityId),I=t.batchAddAppViews;if(h=I?.find(N=>N.refMode.toLowerCase()!==F),!h)throw new m(t,"\u6CA1\u6709\u627E\u5230\u6279\u6DFB\u52A0\u9700\u8981\u6253\u5F00\u7684\u9009\u62E9\u89C6\u56FE")}else{if(c)throw new D(t,"batchAddOnly\u6682\u672A\u652F\u6301");if(h=l,!h||!h.refAppViewId)throw new m(t,"newdata\u89C6\u56FE\u903B\u8F91\u6CA1\u6709\u914D\u7F6E\u9ED8\u8BA4\u65B0\u5EFA\u6570\u636E\u89C6\u56FE")}let p={},E={};const C=r?.[0]||{},S=h.navigateContexts;x(S)&&(p=b(S,C,a,s)),p=Object.assign(s,p);const A=h.navigateParams;if(x(A)&&(E=b(A,C,a,s)),a.srfcopymode){const I=(await ibiz.hub.getAppDataEntity(n.model.appDataEntityId)).keyAppDEFieldId;I&&C&&(E[I]=C.srfkey,E.srfcopymode=!0)}E.srfuf=0;const y=await ibiz.commands.execute(Z.TAG,h.refAppViewId,p,E,i);return u&&y.data&&await this.doBatchAdd(t,y.data,s,h),y}async getWizardNewViewRef(t,e){var s;const{wizardAppView:a,newDataAppViews:i}=t,{context:r,params:n,...o}=e;if(!a||!a.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,a.refAppViewId,r,n,{...o,openMode:"POPUPMODAL"});if(!u.ok)return;const c=(s=u.data)==null?void 0:s[0];if(!c)throw new f("\u8BF7\u9009\u4E2D\u4E00\u6761\u6570\u636E");const l=c.srfkey,h=i?.find(p=>p.refMode===l);if(!h)throw new f("\u6CA1\u6709\u627E\u5230\u4E0E\u7D22\u5F15\u7C7B\u578B".concat(l,"\u76F8\u5173\u7684\u5B9E\u4F53\u7684\u7F16\u8F91\u89C6\u56FE"));return h}async doBatchAdd(t,e,s,a){var i;if(e?.length){const r=await ibiz.hub.getAppDataEntity(t.appDataEntityId,s.srfappid),n=r.minorAppDERSs,o=a.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=_(p.majorAppDataEntityId);o===E&&(u=p.parentAppDEFieldId)});const c=(i=a.navigateParams)==null?void 0:i.find(p=>p.key==="keymapping");let l=[];if(c){const p=c.value.split(";"),E={};for(const C of p){const[S,A]=C.split(":");S&&A&&(E[S]=A)}l=e.map(C=>{const S={[u]:C.srfkey};for(const A in E)if(Object.prototype.hasOwnProperty.call(E,A)){const y=E[A];Object.prototype.hasOwnProperty.call(C,A)&&(S[y]=C[A])}return S})}else l=e.map(p=>({[u]:p.srfkey}));await ibiz.hub.getApp(s.srfappid).deService.exec(r.id,"Create",s,l)}}},Gu=class extends Lt{constructor(t,e){super(t,e),this.logic=t,this.scheduler=e,this.listenEventNames=[];const s=t.eventNames.split(";");this.listenEventNames=s.map(a=>Oe[a]||a)}match(t){return super.match(t)&&this.listenEventNames.includes(t.eventName)}},ju=class extends Lt{constructor(t,e){super(t,e),this.logic=t,this.scheduler=e,this.listenEventNames=[];const s=t.eventNames.split(";");this.listenEventNames=s.map(a=>W[a]||a)}match(t){return super.match(t)&&t.ctrlName.toLowerCase()===this.logic.ctrlName.toLowerCase()&&this.listenEventNames.includes(t.eventName)}},Ku=class extends oe{execute(t){if(!this.logic.appDEUIActionId)throw new m(this.logic,"\u903B\u8F91\u4E2D\u7F3A\u5C11\u89E6\u53D1\u5E94\u7528\u5B9E\u4F53\u754C\u9762\u884C\u4E3Aid");U.execAndResolved(this.logic.appDEUIActionId,t)}};function Xu(){ibiz.scheduler=new ku,ibiz.scheduler.triggerFactory.register("ITEMVISIBLE",(t,e)=>new ss(t,e)),ibiz.scheduler.triggerFactory.register("ITEMENABLE",(t,e)=>new ss(t,e)),ibiz.scheduler.triggerFactory.register("ITEMBLANK",(t,e)=>new ss(t,e)),ibiz.scheduler.triggerFactory.register("TIMER",(t,e)=>new Uu(t,e)),ibiz.scheduler.triggerFactory.register("CUSTOM",(t,e)=>new Wu(t,e)),ibiz.scheduler.triggerFactory.register("VIEWEVENT",(t,e)=>new Gu(t,e)),ibiz.scheduler.triggerFactory.register("CTRLEVENT",(t,e)=>new ju(t,e)),ibiz.scheduler.executorFactory.register("SCRIPT",(t,e)=>new _u(t,e)),ibiz.scheduler.executorFactory.register("APPDEUILOGIC",(t,e)=>new Qa(t,e)),ibiz.scheduler.executorFactory.register("DEUILOGIC",(t,e)=>new Qa(t,e)),ibiz.scheduler.executorFactory.register("APPUILOGIC",(t,e)=>new zu(t,e)),ibiz.scheduler.executorFactory.register("APPDEUIACTION",(t,e)=>new Ku(t,e))}function Hu(){const{ibiz:t}=window;t.util=new Bu,t.hub=new Su,t.register=new gi,t.config=new Ei,t.auth=new Fn,t.asyncAction=new Pn,t.engine=new Nu,Oa(),Ua(),wa(),Xu()}var Gc=d("PluginStaticResource",class{constructor(t){this.styleElementMap=new Map,this.url=new URL(t);const e=Ie.dirname(this.url.pathname);this.baseDir=e}dir(t){return Ie.resolve(this.baseDir,t)}async loadStyle(t){const e=t.map(s=>{const a=this.dir(s);return this.styleElementMap.has(a)?!1:(this.styleElementMap.set(a,null),new Promise((i,r)=>{const n=document.createElement("link");n.setAttribute("type","text/css"),n.setAttribute("rel","stylesheet"),n.setAttribute("href",a),n.onload=i,n.onerror=r,document.head.appendChild(n)}))});try{await Promise.all(e)}catch(s){ibiz.log.error(s)}}}),jc=d("RemotePluginItem",class{constructor(t,e,s){this.tag=t,this.repo=e,this.config=s}})}}});
5
5
  //# sourceMappingURL=index.system.min.js.map