@newview/permission-service 0.0.1

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
@@ -0,0 +1 @@
1
+ !function(e,t){"object"==typeof exports&&"undefined"!=typeof module?module.exports=t(require("@newview/base-vue"),require("vue"),require("@newview/infrastructure"),require("@newview/tools"),require("@newview/ui"),require("view-ui-plus"),require("vue-router")):"function"==typeof define&&define.amd?define(["@newview/base-vue","vue","@newview/infrastructure","@newview/tools","@newview/ui","view-ui-plus","vue-router"],t):(e="undefined"!=typeof globalThis?globalThis:e||self).permissionservice=t(e.baseVue,e.Vue,e.infrastructure,e.tools,e.ui,e.viewUiPlus,e.VueRouter)}(this,(function(e,t,i,o,s,r,l){"use strict";var n=Object.defineProperty,a=(e,t,i)=>(((e,t,i)=>{t in e?n(e,t,{enumerable:!0,configurable:!0,writable:!0,value:i}):e[t]=i})(e,"symbol"!=typeof t?t+"":t,i),i);function d(e,t){for(var i=0;i<t.length;i++){var o=t[i];o.enumerable=o.enumerable||!1,o.configurable=!0,"value"in o&&(o.writable=!0),Object.defineProperty(e,"symbol"==typeof(s=function(e,t){if("object"!=typeof e||null===e)return e;var i=e[Symbol.toPrimitive];if(void 0!==i){var o=i.call(e,"string");if("object"!=typeof o)return o;throw new TypeError("@@toPrimitive must return a primitive value.")}return String(e)}(o.key))?s:String(s),o)}var s}function u(e,t,i){return t&&d(e.prototype,t),i&&d(e,i),Object.defineProperty(e,"prototype",{writable:!1}),e}function h(e,t){e.prototype=Object.create(t.prototype),e.prototype.constructor=e,p(e,t)}function p(e,t){return(p=Object.setPrototypeOf?Object.setPrototypeOf.bind():function(e,t){return e.__proto__=t,e})(e,t)}var c=function(e){function t(){return e.apply(this,arguments)||this}return h(t,e),u(t,[{key:"ProxyName",get:function(){return"PermissionApi"}}]),t}(i.BaseApi),m=function(e){function t(){return e.apply(this,arguments)||this}return h(t,e),t.prototype.getInstitutioninfors=function(e,t,o,s){return this.send({platformId:e,institutionCode:t,institutionName:o,institutionAbbreviation:s},"getInstitutioninfors",i.Methods.GET)},u(t,[{key:"ControllerName",get:function(){return"Institutioninfor"}}]),t}(c),f=function(e){function t(){return e.apply(this,arguments)||this}return h(t,e),t.prototype.deleteByInsIdAndPlatformId=function(e,t){return this.send({insId:e,platformId:t},"deleteByInsIdAndPlatformId",i.Methods.GET)},u(t,[{key:"ControllerName",get:function(){return"InstitutionPlatform"}}]),t}(c),g=function(e){function t(){return e.apply(this,arguments)||this}h(t,e);var o=t.prototype;return o.getInstitutionTrees=function(e){return this.send({platformId:e},"getInstitutionTrees",i.Methods.GET)},o.saveInstitutionTrees=function(e){return this.send(e,"saveInstitutionTrees",i.Methods.POST)},o.deleteInstitutionTree=function(e){return this.send({institutionTreeId:e},"deleteInstitutionTree",i.Methods.GET)},o.deleteInstitutionTreeByInstitutionIdAndPlatformId=function(e,t){return this.send({institutionId:e,platformId:t},"deleteInstitutionTreeByInstitutionIdAndPlatformId",i.Methods.GET)},o.moveNodeToParentNode=function(e,t){return this.send({Node:e,ParentNode:t},"moveNodeToParentNode",i.Methods.POST)},o.batchMoveNodeToParentNode=function(e,t,o){return this.send({Nodes:e,ParentNode:t,OldPId:o},"batchMoveNodeToParentNode",i.Methods.POST)},o.getPInstitutionTreeView=function(e,t,o){return this.send({platformId:e,insTreeId:t,insTypeCode:o},"getPInstitutionTreeView",i.Methods.GET)},o.getPInstitutionTreeViewByParentPath=function(e,t,o){return this.send({platformId:e,parentPath:t,insTypeCode:o},"getPInstitutionTreeViewByParentPath",i.Methods.GET)},u(t,[{key:"ControllerName",get:function(){return"InstitutionTree"}}]),t}(c),I=function(e){function t(){return e.apply(this,arguments)||this}return h(t,e),u(t,[{key:"ControllerName",get:function(){return"InstitutionType"}}]),t}(c),v=function(e){function t(){return e.apply(this,arguments)||this}return h(t,e),u(t,[{key:"ControllerName",get:function(){return"InstitutionUser"}}]),t}(c),y=function(e){function t(){return e.apply(this,arguments)||this}return h(t,e),u(t,[{key:"ControllerName",get:function(){return"InstitutionRole"}}]),t}(c),w=function(e){function t(){return e.apply(this,arguments)||this}h(t,e);var o=t.prototype;return o.importModules=function(e,t){return this.send({OriginModules:e,TargetRootModule:t},"importModules",i.Methods.POST)},o.getFavoritesModules=function(e,t){return this.send({platformId:e,userId:t},"getFavoritesModules",i.Methods.GET)},u(t,[{key:"ControllerName",get:function(){return"Module"}}]),t}(c),C=function(e){function t(){return e.apply(this,arguments)||this}return h(t,e),u(t,[{key:"ControllerName",get:function(){return"Platform"}}]),t}(c),N=function(e){function t(){return e.apply(this,arguments)||this}return h(t,e),t.prototype.importRoles=function(e,t){return this.send({PlatformId:e,RoleIdList:t},"importRoles",i.Methods.POST)},u(t,[{key:"ControllerName",get:function(){return"Role"}}]),t}(c),T=function(e){function t(){return e.apply(this,arguments)||this}return h(t,e),t.prototype.deleteRoleModuleByRoleId=function(e){return this.send({roleId:e},"deleteRoleModuleByRoleId",i.Methods.GET)},u(t,[{key:"ControllerName",get:function(){return"RoleModule"}}]),t}(c),M=function(e){function t(){return e.apply(this,arguments)||this}h(t,e);var o=t.prototype;return o.getInstitutionUsers=function(e,t,o,s){return void 0===t&&(t=""),void 0===o&&(o=""),void 0===s&&(s=0),this.send({institutionId:e,userName:t,account:o,accountStatus:s},"getInstitutionUsers",i.Methods.GET)},o.getInstitutionTreeUsers=function(e,t,o,s,r,l){return void 0===s&&(s=""),void 0===r&&(r=""),void 0===l&&(l=0),this.send({pageIndex:e,pageSize:t,insTreeId:o,userName:s,account:r,accountStatus:l},"getInstitutionTreeUsers",i.Methods.GET)},o.getInstitutionTreeAllUsers=function(e,t,o){return void 0===o&&(o=""),this.send({insTreeId:e,platformId:t,userName:o},"getInstitutionTreeAllUsers",i.Methods.GET)},o.getNotInInstitutionTreeUsers=function(e,t,o,s,r){return void 0===o&&(o=""),void 0===s&&(s=""),void 0===r&&(r=0),this.send({institutionId:e,insTreeId:t,userName:o,account:s,accountStatus:r},"getNotInInstitutionTreeUsers",i.Methods.GET)},o.deleteUser=function(e,t){return this.send({userId:e,institutionUserId:t},"deleteUser",i.Methods.GET)},o.resetUserPwd=function(e){return this.send({userId:e},"resetUserPwd",i.Methods.GET)},o.getRoleUsers=function(e,t,o,s){return this.send({platformId:e,roleIds:t,insTreeId:o,parentPath:s},"getRoleUsers",i.Methods.GET)},u(t,[{key:"ControllerName",get:function(){return"Userinfor"}}]),t}(c),P=function(e){function t(){return e.apply(this,arguments)||this}return h(t,e),u(t,[{key:"ControllerName",get:function(){return"UserRole"}}]),t}(c),b=function(e){function t(){for(var t,i=arguments.length,o=new Array(i),s=0;s<i;s++)o[s]=arguments[s];return(t=e.call.apply(e,[this].concat(o))||this).aesKey="d2140707ca3a469c8527e546fe961276",t}h(t,e);var s=t.prototype;return s.login=function(e,t){return this.send({Account:e,Pwd:t},"login",i.Methods.POST)},s.phoneLogin=function(e,t){return this.send({Phone:e,Captcha:t},"phoneLogin",i.Methods.POST)},s.devOpsLogin=function(e){var t=o.utilities.stringHelper.encryptAES(""+e,this.aesKey);return this.send({TargetKey:t},"devOpsLogin",i.Methods.POST)},s.writeLoginToken=function(e){return this.send({Token:e},"writeLoginToken",i.Methods.POST)},s.validateToken=function(){return this.send({},"validateToken",i.Methods.GET)},s.existPhone=function(e){return this.send({phone:e},"existPhone",i.Methods.GET)},u(t,[{key:"ControllerName",get:function(){return"OAuth"}}]),t}(c),x=function(e){function t(){return e.apply(this,arguments)||this}return h(t,e),u(t,[{key:"ControllerName",get:function(){return"Enterprise"}}]),t}(c),S=function(e){function t(){return e.apply(this,arguments)||this}return h(t,e),u(t,[{key:"ControllerName",get:function(){return"LoginLog"}}]),t}(c),A=function(e){function t(){return e.apply(this,arguments)||this}return h(t,e),u(t,[{key:"ControllerName",get:function(){return"UserSign"}}]),t}(c);const U={linkParam:{type:String,default:""},operates:{type:String,default:"-"}},V=t.defineComponent({name:"Platform",components:{},emits:[""],props:U,setup:(e,t)=>new R(e,t)});class R extends e.BaseInstance{constructor(e,o){super(),a(this,"props"),a(this,"ctx"),a(this,"platformApi",new C),a(this,"platformGridOption",t.reactive({api:this.platformApi,setting:{searchConfig:{btnSpan:6,labelWidth:120,defaultShowSearch:!1},toolbarConfig:{isButtonGroup:!1},rowConfig:{isCurrent:!1,isHover:!0},isPagination:!0,pageSize:10},searchOptions:[{field:"SKey",title:"唯一KEY",type:"Input"},{field:"PlatformName",title:"系统名称",type:"Input"},{field:"PlatformAbbreviation",title:"系统简称",type:"Input"},{field:"PlatformNo",title:"系统代号",type:"Input"},{field:"PlatformGroup",title:"系统组",type:"Input"}],toolbars:[{name:"add",onclick:()=>{this.doAddPlatform()}}],rightToolbars:[{name:"refresh"}],columns:[{colType:"seq"},{colType:"ro",field:"SKey",title:"唯一KEY",width:240},{colType:"ed",field:"PlatformName",title:"系统名称",minWidth:250},{colType:"ed",field:"PlatformAbbreviation",title:"系统简称",width:250},{colType:"ed",field:"PlatformNo",title:"系统代号",width:160},{colType:"ed",field:"OssRootPath",title:"OSS根路径",width:200},{colType:"ed",field:"PlatformUrl",title:"系统URL",width:230},{colType:"num",field:"OrderNo",title:"排序号",width:90,align:"center"},{title:"操作",width:140,rowButtons:[{name:"edit",text:"编辑",onclick:e=>{this.doEditPlatform(e)}},{name:"delete"}]}],event:{event_search:e=>{this.platformGrid.value.setPageIndex(1);const t=Object.keys(e),o=i.QueryWrapper.create();o.eq("1","1");for(const i of t){const t=e[i];this.utilities.isNull(t)||o.like(i,t)}this.platformGrid.value.loadDataByQuery(o)}}})),a(this,"platformGrid",t.ref()),a(this,"refPlatformForm",t.ref()),a(this,"saveingPlatform",t.ref(!1)),a(this,"showEditPlatform",t.ref(!1)),a(this,"editPlatformModalTitle",t.ref("新增 - 系统平台")),a(this,"platformFormModel",t.reactive({Id:0,SKey:"",PlatformNo:"",PlatformName:"",PlatformAbbreviation:"",OssRootPath:"",PlatformGroup:"",PlatformUrl:"",OrderNo:0,CABusinessKey:"",LastUpdateUserId:"",LastUpdateUserName:"",LastUpdateDate:""})),a(this,"platformFormItems",t.reactive([{model:"PlatformName",label:"系统名称",prop:"PlatformName",type:"Input",span:24,rules:[{required:!0,message:"系统名称不能为空",trigger:"blur"}]},{model:"PlatformNo",label:"系统编号",prop:"PlatformNo",type:"Input",span:24,rules:[{required:!0,message:"系统编号不能为空",trigger:"blur"}]},{model:"PlatformAbbreviation",label:"系统简称",prop:"PlatformAbbreviation",type:"Input",span:24},{model:"OssRootPath",label:"Oss根路径",prop:"OssRootPath",type:"Input",span:24},{model:"PlatformGroup",label:"系统组",prop:"PlatformGroup",type:"Input",span:24},{model:"PlatformUrl",label:"系统URL",prop:"PlatformUrl",type:"Input",span:24},{model:"CABusinessKey",label:"CAKey",prop:"CABusinessKey",type:"Input",span:24},{model:"OrderNo",label:"排序号",prop:"OrderNo",type:"InputNumber",span:24}])),a(this,"doSavePlatform",(async()=>{if(!(await this.refPlatformForm.value.validate()))return;this.saveingPlatform.value=!0;let e=await this.platformApi.save(this.platformFormModel);if(this.utilities.parseApiResult(e)<=0)return this.message.warning("保存失败,请稍后重试!"),void(this.saveingPlatform.value=!1);this.message.success("保存成功!"),this.platformGrid.value.refreshData(),this.saveingPlatform.value=!1,this.showEditPlatform.value=!1})),this.props=e,this.ctx=o,this.usePlatform()}usePlatform(){t.onMounted((()=>{this.platformGrid.value.setGloablValue("LastUpdateUserId",s.GloablValueType.$LoginUserId),this.platformGrid.value.setGloablValue("LastUpdateUserName",s.GloablValueType.$LoginUserTrueName),this.platformGrid.value.setGloablValue("LastUpdateDate",s.GloablValueType.$CurrentDate),this.platformGrid.value.setGloablValue("SKey",s.GloablValueType.$guid,!0),this.platformGrid.value.loadDataByQuery(i.QueryWrapper.create().eq("1","1"))}))}doEditPlatform(e){this.platformFormModel.Id=e.Id,this.platformFormModel.SKey=e.SKey,this.platformFormModel.PlatformNo=e.PlatformNo,this.platformFormModel.PlatformName=e.PlatformName,this.platformFormModel.PlatformAbbreviation=e.PlatformAbbreviation,this.platformFormModel.OssRootPath=e.OssRootPath,this.platformFormModel.PlatformGroup=e.PlatformGroup,this.platformFormModel.PlatformUrl=e.PlatformUrl,this.platformFormModel.CABusinessKey=e.CABusinessKey,this.platformFormModel.OrderNo=e.OrderNo,this.platformFormModel.LastUpdateUserId=s.GloablValueType.$LoginUserId,this.platformFormModel.LastUpdateUserName=s.GloablValueType.$LoginUserTrueName,this.platformFormModel.LastUpdateDate=s.GloablValueType.$CurrentDate,this.editPlatformModalTitle.value=`编辑 - ${e.PlatformName}`,this.showEditPlatform.value=!0}doAddPlatform(){this.platformFormModel.Id=0,this.platformFormModel.SKey=this.utilities.getUniqueCode(),this.platformFormModel.PlatformNo="",this.platformFormModel.PlatformName="",this.platformFormModel.PlatformAbbreviation="",this.platformFormModel.OssRootPath="",this.platformFormModel.PlatformGroup="",this.platformFormModel.PlatformUrl="",this.platformFormModel.CABusinessKey="",this.platformFormModel.OrderNo=0,this.platformFormModel.LastUpdateUserId=s.GloablValueType.$LoginUserId,this.platformFormModel.LastUpdateUserName=s.GloablValueType.$LoginUserTrueName,this.platformFormModel.LastUpdateDate=s.GloablValueType.$CurrentDate,this.editPlatformModalTitle.value="新增 - 系统平台",this.showEditPlatform.value=!0}}const F=(e,t)=>{const i=e.__vccOpts||e;for(const[o,s]of t)i[o]=s;return i},k={style:{height:"500px","overflow-y":"auto"}};const O=F(V,[["render",function(e,i,o,s,r,l){const n=t.resolveComponent("NvGrid"),a=t.resolveComponent("NvBox"),d=t.resolveComponent("NvComForm"),u=t.resolveComponent("Form"),h=t.resolveComponent("Button"),p=t.resolveComponent("Modal"),c=t.resolveComponent("NvPage");return t.openBlock(),t.createBlock(c,{gutter:8,class:"platform"},{default:t.withCtx((()=>[t.createVNode(a,{title:"系统平台"},{default:t.withCtx((()=>[t.createVNode(n,{ref:"platformGrid",option:e.platformGridOption},null,8,["option"])])),_:1}),t.createVNode(p,{modelValue:e.showEditPlatform,"onUpdate:modelValue":i[1]||(i[1]=t=>e.showEditPlatform=t),draggable:"",mask:!0,"mask-closable":!1,width:500,title:e.editPlatformModalTitle,styles:{top:"3%"}},{footer:t.withCtx((()=>[t.createVNode(h,{type:"text",onClick:i[0]||(i[0]=t=>e.showEditPlatform=!1)},{default:t.withCtx((()=>[t.createTextVNode("关闭")])),_:1}),t.createVNode(h,{type:"primary",loading:e.saveingPlatform,onClick:e.doSavePlatform},{default:t.withCtx((()=>[t.createTextVNode("保存")])),_:1},8,["loading","onClick"])])),default:t.withCtx((()=>[t.createElementVNode("div",k,[t.createVNode(u,{ref:"refPlatformForm",model:e.platformFormModel,"label-width":95},{default:t.withCtx((()=>[t.createVNode(d,{formModel:e.platformFormModel,formItems:e.platformFormItems},null,8,["formModel","formItems"])])),_:1},8,["model"])])])),_:1},8,["modelValue","title"])])),_:1})}],["__scopeId","data-v-4757066c"]]);var E=Object.defineProperty,G=(e,t,i)=>(((e,t,i)=>{t in e?E(e,t,{enumerable:!0,configurable:!0,writable:!0,value:i}):e[t]=i})(e,"symbol"!=typeof t?t+"":t,i),i);function L(e,t){for(var i=0;i<t.length;i++){var o=t[i];o.enumerable=o.enumerable||!1,o.configurable=!0,"value"in o&&(o.writable=!0),Object.defineProperty(e,"symbol"==typeof(s=function(e,t){if("object"!=typeof e||null===e)return e;var i=e[Symbol.toPrimitive];if(void 0!==i){var o=i.call(e,"string");if("object"!=typeof o)return o;throw new TypeError("@@toPrimitive must return a primitive value.")}return String(e)}(o.key))?s:String(s),o)}var s}function B(e,t,i){return t&&L(e.prototype,t),i&&L(e,i),Object.defineProperty(e,"prototype",{writable:!1}),e}function D(e,t){e.prototype=Object.create(t.prototype),e.prototype.constructor=e,_(e,t)}function _(e,t){return(_=Object.setPrototypeOf?Object.setPrototypeOf.bind():function(e,t){return e.__proto__=t,e})(e,t)}var W=function(e){function t(){return e.apply(this,arguments)||this}return D(t,e),B(t,[{key:"ProxyName",get:function(){return"PermissionApi"}}]),t}(i.BaseApi),K=function(e){function t(){return e.apply(this,arguments)||this}return D(t,e),B(t,[{key:"ControllerName",get:function(){return"Platform"}}]),t}(W),q=function(e){function t(){for(var t,i=arguments.length,o=new Array(i),s=0;s<i;s++)o[s]=arguments[s];return(t=e.call.apply(e,[this].concat(o))||this).aesKey="d2140707ca3a469c8527e546fe961276",t}D(t,e);var s=t.prototype;return s.login=function(e,t){return this.send({Account:e,Pwd:t},"login",i.Methods.POST)},s.phoneLogin=function(e,t){return this.send({Phone:e,Captcha:t},"phoneLogin",i.Methods.POST)},s.devOpsLogin=function(e){var t=o.utilities.stringHelper.encryptAES(""+e,this.aesKey);return this.send({TargetKey:t},"devOpsLogin",i.Methods.POST)},s.writeLoginToken=function(e){return this.send({Token:e},"writeLoginToken",i.Methods.POST)},s.validateToken=function(){return this.send({},"validateToken",i.Methods.GET)},s.existPhone=function(e){return this.send({phone:e},"existPhone",i.Methods.GET)},B(t,[{key:"ControllerName",get:function(){return"OAuth"}}]),t}(W),$=function(e){function t(){return e.apply(this,arguments)||this}return D(t,e),B(t,[{key:"ControllerName",get:function(){return"UserSign"}}]),t}(W);function Q(e,t){for(var i=0;i<t.length;i++){var o=t[i];o.enumerable=o.enumerable||!1,o.configurable=!0,"value"in o&&(o.writable=!0),Object.defineProperty(e,"symbol"==typeof(s=function(e,t){if("object"!=typeof e||null===e)return e;var i=e[Symbol.toPrimitive];if(void 0!==i){var o=i.call(e,"string");if("object"!=typeof o)return o;throw new TypeError("@@toPrimitive must return a primitive value.")}return String(e)}(o.key))?s:String(s),o)}var s}function j(e,t,i){return t&&Q(e.prototype,t),i&&Q(e,i),Object.defineProperty(e,"prototype",{writable:!1}),e}function H(e,t){e.prototype=Object.create(t.prototype),e.prototype.constructor=e,Y(e,t)}function Y(e,t){return(Y=Object.setPrototypeOf?Object.setPrototypeOf.bind():function(e,t){return e.__proto__=t,e})(e,t)}var z=function(e){function t(){return e.apply(this,arguments)||this}return H(t,e),j(t,[{key:"ProxyName",get:function(){return"BasicsApi"}}]),t}(i.BaseApi),Z=function(e){function t(){return e.apply(this,arguments)||this}H(t,e);var o=t.prototype;return o.sendPhoneCaptcha=function(e){return this.send({phone:e},"sendPhoneCaptcha",i.Methods.GET)},o.sendMailCaptcha=function(e){return this.send({mail:e},"sendMailCaptcha",i.Methods.GET)},o.getCaptcha=function(e){return this.send({source:e},"getCaptcha",i.Methods.GET)},j(t,[{key:"ControllerName",get:function(){return"Captcha"}}]),t}(z);const J={theme:{type:String,default:"light"},autoLogin:{type:Boolean,default:!0}},X=t.defineComponent({name:"BaseLogin",components:{},emits:[""],props:J,setup:(e,t)=>new ee(e,t)});let ee=class extends e.BaseInstance{constructor(e,i){super(),G(this,"props"),G(this,"ctx"),G(this,"oauthApi",new q),G(this,"captchaApi",new Z),G(this,"router"),G(this,"aesKey","d2140707ca3a469c8527e546fe961276"),G(this,"autoLogin",t.ref(!0)),G(this,"userName",t.ref("")),G(this,"passWord",t.ref("")),G(this,"isloading",t.ref(!1)),G(this,"loadType",t.ref("userName")),G(this,"doUserNamePwdLogin",(async()=>{this.utilities.isNull(this.userName.value)?this.loginTip.value="用户名不能为空!":this.utilities.isNull(this.passWord.value)?this.loginTip.value="密码不能为空!":this.login(this.userName.value,this.passWord.value)})),G(this,"phone",t.ref("")),G(this,"captcha",t.ref("")),G(this,"canGetCaptcha",t.ref(!0)),G(this,"canGetCaptchaTime",t.ref(60)),G(this,"sendCaptchaing",t.ref(!1)),G(this,"loginTip",t.ref("")),G(this,"doSendCaptcha",(async()=>{this.sendCaptchaing.value=!0,this.loginTip.value="";if(!/^[1][3,4,5,7,8]\d{9}$/.test(this.phone.value))return this.loginTip.value="手机号格式不正确, 请重新输入!",void(this.sendCaptchaing.value=!1);let e=await this.oauthApi.existPhone(this.phone.value),t=this.utilities.parseApiResult(e);if(1!=t)return this.loginTip.value="手机号未注册,请联系管理员!",void(this.sendCaptchaing.value=!1);e=await this.captchaApi.sendPhoneCaptcha(this.phone.value),t=this.utilities.parseApiResult(e),this.sendCaptchaing.value=!1,t>0?(this.message.success("发送成功!"),this.canGetCaptcha.value=!1,this.intervalId=setInterval((()=>{this.canGetCaptchaTime.value--,0==this.canGetCaptchaTime.value&&(this.canGetCaptcha.value=!0,this.canGetCaptchaTime.value=60,clearInterval(this.intervalId))}),1e3)):this.loginTip.value=e.msg})),G(this,"doPhoneLogin",(async()=>{this.isloading.value=!0,this.loginTip.value="";if(!/^[1][3,4,5,7,8]\d{9}$/.test(this.phone.value))return this.loginTip.value="手机号格式不正确, 请重新输入!",void(this.isloading.value=!1);if(this.utilities.isNull(this.captcha.value))return this.loginTip.value="验证码不能为空!",void(this.isloading.value=!1);const e=await this.oauthApi.phoneLogin(this.phone.value,this.captcha.value),t=this.utilities.parseApiResult(e);this.isloading.value=!1,t.IsSuccess?(this.message.success("登录成功"),this.storageInfo.removeAll(),this.setLoginResult(t)):this.loginTip.value=t.Msg})),G(this,"loginUserName",""),G(this,"encryptPassword",""),G(this,"loginResult"),G(this,"intervalId"),G(this,"showPhoneValidate",t.ref(!1)),G(this,"sending",t.ref(!1)),G(this,"canSendCaptcha",t.ref(!0)),G(this,"resendTime",t.ref(60)),G(this,"validateing",t.ref(!1)),G(this,"captchaFormRef",t.ref()),G(this,"phoneValidateModel",t.reactive({Captcha:""})),G(this,"phoneValidateRule",t.reactive({Captcha:[{required:!0,message:"验证码不能空!",trigger:"blur"}]})),G(this,"doSendPhoneCaptcha",(async()=>{this.sending.value=!0;const e=await this.captchaApi.sendPhoneCaptcha(this.loginResult.User.Phone),t=this.utilities.parseApiResult(e);this.sending.value=!1,t>0?(this.message.success("发送成功!"),this.canSendCaptcha.value=!1,this.intervalId=setInterval((()=>{this.resendTime.value--,0==this.resendTime.value&&(this.canSendCaptcha.value=!0,this.resendTime.value=60,clearInterval(this.intervalId))}),1e3)):this.message.warning(e.msg)})),G(this,"doPhoneValidate",(async()=>{this.validateing.value=!0;if(!(await this.captchaFormRef.value.validate()))return void(this.validateing.value=!1);let e=await this.captchaApi.getCaptcha(this.loginResult.User.Phone),t=this.utilities.parseApiResult(e);this.validateing.value=!1,t==this.phoneValidateModel.Captcha?(this.message.success("验证成功!"),this.loginSuccess(this.loginUserName,this.encryptPassword,this.loginResult,!1),await this.oauthApi.writeLoginToken(this.storageInfo.getToken()),this.router.push(this.storageInfo.getCurrentDefaultPath()),this.showPhoneValidate.value=!1):this.message.warning("验证码填写错误!")})),G(this,"login",(async(e,t,i=!1)=>{this.isloading.value=!0,this.loginTip.value="",t=1==i?t:this.utilities.stringHelper.encryptAES(t,this.aesKey);const o=await this.oauthApi.login(e,t),s=this.utilities.parseApiResult(o);this.isloading.value=!1,s.IsSuccess?s.NeedCaptcha?this.doShowPhoneValidate(e,t,s):this.loginSuccess(e,t,s):this.loginTip.value=s.Msg})),G(this,"setLoginResult",((e,t=!0)=>{this.storageInfo.setToken(e.Token),this.storageInfo.setUser(e.User),this.storageInfo.setPlatforms(e.Platforms);const i=this.storageInfo.getPlatforms();if(!this.utilities.isNull(i)&&i.length>0){const e=i.find((e=>e.PlatformNo==this.storageInfo.getPlatformNo()));this.storageInfo.setCurrentPlatform(this.utilities.isNull(e)?i[0]:e)}const o=this.storageInfo.getCurrentPlatform();!this.utilities.isNull(o)&&o.Modules.length>0&&this.storageInfo.setCurrentBusiness(o.Modules[0]),t&&this.router.replace("/")})),this.props=e,this.ctx=i,this.useAutoLogin()}useAutoLogin(){this.router=l.useRouter(),this.props.autoLogin&&this.doAutoLogin()}async doAutoLogin(){if("1"!=this.storageInfo.getAutoLogin())return void this.storageInfo.removeAll();const e=this.storageInfo.getAutoLoginToken();if(this.utilities.isNull(e))return;const t=e.split(".");if(2!=t.length)return;const i=this.utilities.stringHelper.decryptAES(t[1],this.aesKey),o=t[0];this.login(i,o,!0)}doShowPhoneValidate(e,t,i){this.loginUserName=e,this.encryptPassword=t,this.loginResult=i,this.showPhoneValidate.value=!0}loginSuccess(e,t,i,o=!0){this.storageInfo.setAutoLogin(this.autoLogin.value?"1":"0"),this.storageInfo.setAutoLoginToken(this.autoLogin.value?`${t}.${this.utilities.stringHelper.encryptAES(e,this.aesKey)}`:""),this.setLoginResult(i)}};const te=(e,t)=>{const i=e.__vccOpts||e;for(const[o,s]of t)i[o]=s;return i},ie={class:"login-form"},oe={class:"login-body"},se={class:"login-tabs"},re={class:"login-panel"},le={class:"login-input-item"},ne={class:"login-input-item"},ae={class:"login-input-item",style:{"text-align":"right"}},de={class:"login-panel"},ue={class:"login-input-item"},he={class:"login-input-item"},pe={class:"login-input-item",style:{"text-align":"right"}},ce={key:0},me={key:1},fe={key:1,class:"captcha-item"},ge={class:"login-input-item",style:{"margin-top":"30px"}},Ie={class:"login-tip"},ve={key:0},ye={key:1},we=(e=>(t.pushScopeId("data-v-74a37534"),e=e(),t.popScopeId(),e))((()=>t.createElementVNode("div",{class:"captcha-tip"},"在新设备登录,需要进行短信验证!",-1))),Ce={key:0},Ne={key:1},Te={key:1,class:"captcha-item"};const Me=te(X,[["render",function(e,i,o,s,r,l){const n=t.resolveComponent("Input"),a=t.resolveComponent("Checkbox"),d=t.resolveComponent("Icon"),u=t.resolveComponent("Button"),h=t.resolveComponent("FormItem"),p=t.resolveComponent("Form"),c=t.resolveComponent("Modal");return t.openBlock(),t.createElementBlock("div",ie,[t.renderSlot(e.$slots,"default",{},(()=>[t.createElementVNode("div",oe,[t.createElementVNode("div",se,[t.createElementVNode("div",{class:t.normalizeClass("userName"==e.loadType?"login-tab login-tab--active":"login-tab"),onClick:i[0]||(i[0]=t=>e.loadType="userName")},"密码登录",2),t.createElementVNode("div",{class:t.normalizeClass("captcha"==e.loadType?"login-tab login-tab--active":"login-tab"),onClick:i[1]||(i[1]=t=>e.loadType="captcha")},"验证码登录",2)]),t.withDirectives(t.createElementVNode("div",re,[t.createElementVNode("div",le,[t.createVNode(n,{size:"large",prefix:"md-person",placeholder:"请输入用户名",modelValue:e.userName,"onUpdate:modelValue":i[2]||(i[2]=t=>e.userName=t),clearable:""},null,8,["modelValue"])]),t.createElementVNode("div",ne,[t.createVNode(n,{type:"password",size:"large",prefix:"md-unlock",placeholder:"请输入密码",modelValue:e.passWord,"onUpdate:modelValue":i[3]||(i[3]=t=>e.passWord=t),password:""},null,8,["modelValue"])]),t.createElementVNode("div",ae,[t.createVNode(a,{modelValue:e.autoLogin,"onUpdate:modelValue":i[4]||(i[4]=t=>e.autoLogin=t)},{default:t.withCtx((()=>[t.createTextVNode("下次自动登录")])),_:1},8,["modelValue"])])],512),[[t.vShow,"userName"==e.loadType]]),t.withDirectives(t.createElementVNode("div",de,[t.createElementVNode("div",ue,[t.createVNode(n,{size:"large",prefix:"md-phone-portrait",placeholder:"请输入手机号",modelValue:e.phone,"onUpdate:modelValue":i[5]||(i[5]=t=>e.phone=t),clearable:""},null,8,["modelValue"])]),t.createElementVNode("div",he,[t.createVNode(n,{size:"large",prefix:"md-keypad",placeholder:"请输入验证码",modelValue:e.captcha,"onUpdate:modelValue":i[6]||(i[6]=t=>e.captcha=t),clearable:"",maxlength:"6","show-word-limit":""},null,8,["modelValue"])]),t.createElementVNode("div",pe,[e.sendCaptchaing?(t.openBlock(),t.createElementBlock("div",ce,[t.createVNode(d,{type:"ios-loading",style:{animation:"ani-load-loop 1s linear infinite"}}),t.createTextVNode("发送中..")])):(t.openBlock(),t.createElementBlock("div",me,[e.canGetCaptcha?(t.openBlock(),t.createElementBlock("span",{key:0,class:"captcha-item_a",onClick:i[7]||(i[7]=(...t)=>e.doSendCaptcha&&e.doSendCaptcha(...t))},"获取短信验证码")):(t.openBlock(),t.createElementBlock("span",fe,t.toDisplayString(e.canGetCaptchaTime)+" 秒后可重发",1))]))])],512),[[t.vShow,"captcha"==e.loadType]]),t.createElementVNode("div",ge,[t.createElementVNode("div",Ie,t.toDisplayString(e.loginTip),1),t.createVNode(u,{class:"loginbtn",size:"large",type:"primary",long:"",loading:e.isloading,onClick:i[8]||(i[8]=t=>"captcha"==e.loadType?e.doPhoneLogin():e.doUserNamePwdLogin())},{default:t.withCtx((()=>[e.isloading?(t.openBlock(),t.createElementBlock("span",ye,"正在登录...")):(t.openBlock(),t.createElementBlock("span",ve,"登录"))])),_:1},8,["loading"])])])]),!0),t.createVNode(c,{modelValue:e.showPhoneValidate,"onUpdate:modelValue":i[11]||(i[11]=t=>e.showPhoneValidate=t),draggable:"",mask:!0,"mask-closable":!1,width:450,title:"短信验证"},{footer:t.withCtx((()=>[t.createVNode(u,{type:"primary",loading:e.validateing,onClick:e.doPhoneValidate},{default:t.withCtx((()=>[t.createTextVNode("验证")])),_:1},8,["loading","onClick"])])),default:t.withCtx((()=>[we,t.createVNode(p,{ref:"captchaFormRef",model:e.phoneValidateModel,"label-position":"top",rules:e.phoneValidateRule,style:{"margin-bottom":"50px"}},{default:t.withCtx((()=>[t.createVNode(h,{label:"验证码",prop:"Captcha"},{default:t.withCtx((()=>[t.createVNode(n,{modelValue:e.phoneValidateModel.Captcha,"onUpdate:modelValue":i[10]||(i[10]=t=>e.phoneValidateModel.Captcha=t),maxlength:"6"},{append:t.withCtx((()=>[e.sending?(t.openBlock(),t.createElementBlock("div",Ce,[t.createVNode(d,{type:"ios-loading",style:{animation:"ani-load-loop 1s linear infinite"}}),t.createTextVNode("发送中..")])):(t.openBlock(),t.createElementBlock("div",Ne,[e.canSendCaptcha?(t.openBlock(),t.createElementBlock("span",{key:0,class:"captcha-item_a",onClick:i[9]||(i[9]=(...t)=>e.doSendPhoneCaptcha&&e.doSendPhoneCaptcha(...t))},"获取短信验证码")):(t.openBlock(),t.createElementBlock("span",Te,t.toDisplayString(e.resendTime)+" 秒后可重发",1))]))])),_:1},8,["modelValue"])])),_:1})])),_:1},8,["model","rules"])])),_:1},8,["modelValue"])])}],["__scopeId","data-v-74a37534"]]),Pe={defaultLoad:{type:Boolean,default:!0},width:{type:String,default:"320px"},showLabel:{type:Boolean,default:!0}},be=t.defineComponent({name:"SelectPlatform",components:{},emits:["select"],props:Pe,setup:(e,t)=>new xe(e,t)});let xe=class extends e.BaseInstance{constructor(e,o){super(),G(this,"props"),G(this,"ctx"),G(this,"platformApi",new K),G(this,"platforms",t.ref([])),G(this,"selectPlatformId",t.ref(0)),G(this,"spinShow",t.ref(!1)),G(this,"loadPlatforms",(async()=>{this.spinShow.value=!0;const e=await this.platformApi.getEntities(i.QueryWrapper.create().eq("1","1").orderBy(["OrderNo"],!0));this.platforms.value=this.utilities.parseApiResult(e),this.spinShow.value=!1,this.platforms.value.length>0&&0==this.selectPlatformId.value&&(this.selectPlatformId.value=this.platforms.value[0].Id,this.ctx.emit("select",this.platforms.value[0]))})),G(this,"doPlatformChange",(()=>{const e=this.platforms.value.find((e=>e.Id==this.selectPlatformId.value));this.utilities.isNull(e)||this.ctx.emit("select",e)})),this.props=e,this.ctx=o,this.usePlatform()}usePlatform(){this.props.defaultLoad&&this.loadPlatforms()}};const Se=te(be,[["render",function(e,i,o,s,r,l){const n=t.resolveComponent("Option"),a=t.resolveComponent("Select"),d=t.resolveComponent("Spin"),u=t.resolveComponent("NvControlGroup");return t.openBlock(),t.createBlock(u,{width:e.width,icon:"md-refresh",label:e.showLabel?"系统平台":"",labelWidth:e.showLabel?75:0,onClick:e.loadPlatforms},{default:t.withCtx((()=>[t.createVNode(a,{modelValue:e.selectPlatformId,"onUpdate:modelValue":i[0]||(i[0]=t=>e.selectPlatformId=t),onOnChange:e.doPlatformChange,transfer:""},{default:t.withCtx((()=>[(t.openBlock(!0),t.createElementBlock(t.Fragment,null,t.renderList(e.platforms,((e,i)=>(t.openBlock(),t.createBlock(n,{key:i,value:e.Id},{default:t.withCtx((()=>[t.createTextVNode(t.toDisplayString(e.PlatformAbbreviation),1)])),_:2},1032,["value"])))),128))])),_:1},8,["modelValue","onOnChange"]),t.createVNode(d,{fix:"",show:e.spinShow},null,8,["show"])])),_:1},8,["width","label","labelWidth","onClick"])}]]);function Ae(e,t){for(var i=0;i<t.length;i++){var o=t[i];o.enumerable=o.enumerable||!1,o.configurable=!0,"value"in o&&(o.writable=!0),Object.defineProperty(e,"symbol"==typeof(s=function(e,t){if("object"!=typeof e||null===e)return e;var i=e[Symbol.toPrimitive];if(void 0!==i){var o=i.call(e,"string");if("object"!=typeof o)return o;throw new TypeError("@@toPrimitive must return a primitive value.")}return String(e)}(o.key))?s:String(s),o)}var s}function Ue(e,t,i){return t&&Ae(e.prototype,t),i&&Ae(e,i),Object.defineProperty(e,"prototype",{writable:!1}),e}function Ve(e,t){e.prototype=Object.create(t.prototype),e.prototype.constructor=e,Re(e,t)}function Re(e,t){return(Re=Object.setPrototypeOf?Object.setPrototypeOf.bind():function(e,t){return e.__proto__=t,e})(e,t)}var Fe=function(e){function t(){return e.apply(this,arguments)||this}Ve(t,e);var o=t.prototype;return o.SignVerification=function(e){return this.send({taskKey:e},"SignVerification",i.Methods.GET)},o.GetUserSealCloudInfo=function(e,t){return this.send({businessKey:e,userSealKey:t},"GetUserSealCloudInfo",i.Methods.GET)},o.SendCloudSignTask=function(e,t,o,s){return this.send({BusinessKey:e,UserSealKey:t,UserPin:o,SignContent:s},"SendCloudSignTask",i.Methods.POST)},o.SendCloudVerificationSign=function(e,t,o){return this.send({businessKey:e,taskKey:t,SignContent:o},"SendCloudVerificationSign",i.Methods.GET)},Ue(t,[{key:"ControllerName",get:function(){return"SignTaskInfo"}}]),t}(function(e){function t(){return e.apply(this,arguments)||this}return Ve(t,e),Ue(t,[{key:"ProxyName",get:function(){return"CASignApi"}}]),t}(i.BaseOldApi));new $;const ke=new Fe,Oe=e=>({code:-1,msg:e,result:""}),Ee=async(e,t,s)=>{const r=i.storageInfo.getCurrentPlatform().CABusinessKey;if(o.utilities.isNull(r))return Oe("未配置BusinessKey");const l=await ke.SendCloudSignTask(r,e,o.utilities.stringHelper.encodeToBase64(t),o.utilities.stringHelper.encodeToBase64(s)),n=o.utilities.parseApiResult(l);return o.utilities.isNull(n)?Oe(l.msg):10==n.head.code?(e=>({code:0,msg:"签字成功",result:e}))(n.data.signData):Oe(n.head.msg)},Ge={platformId:{type:Number,default:0},userId:{type:Number,default:0},signContent:{type:String,default:""},signType:{type:Number,default:0},signResult:{type:String,default:""}};t.defineComponent({name:"CASign",components:{},emits:["signSuccess"],props:Ge,setup:(e,t)=>new Le(e,t)});let Le=class extends e.BaseInstance{constructor(e,i){super(),G(this,"props"),G(this,"ctx"),G(this,"signTaskInfoApi",new Fe),G(this,"userSignApi",new $),G(this,"userSign"),G(this,"sealKey",""),G(this,"hasSign",t.ref(!1)),G(this,"signImg",t.ref("")),G(this,"showSignPwd",t.ref(!1)),G(this,"userPin",t.ref("")),G(this,"signing",t.ref(!1)),G(this,"doShowSignPwd",(()=>{this.userPin.value="",this.showSignPwd.value=!0})),G(this,"doRunSeal",(async()=>{if(this.signing.value=!0,this.utilities.isNull(this.userPin.value))return this.message.error("请输入证书密钥"),void(this.signing.value=!1);const e=await Ee(this.sealKey,this.userPin.value,this.props.signContent);this.signing.value=!1,-1!=e.code?(this.ctx.emit("signSuccess",e.result),this.hasSign.value=!0,this.showSignPwd.value=!1):this.message.error(e.msg)})),this.props=e,this.ctx=i,this.useCASign()}useCASign(){this.loadUserSign(),t.watch((()=>this.props.signResult),(()=>{this.hasSign.value=!this.utilities.isNull(this.props.signResult)})),t.watch((()=>this.props.userId),(()=>{this.loadUserSign()})),this.hasSign.value=!this.utilities.isNull(this.props.signResult)}async loadUserSign(){if(0==this.props.userId)return;const e=await this.userSignApi.getEntityByFilter(i.QueryWrapper.create().eq("UserId",this.props.userId)),t=this.utilities.parseApiResult(e);this.utilities.isNull(t)?this.message.error("该用户未配置签字信息"):(this.userSign=t,this.signImg.value=0==this.props.signType?this.userSign.CAUserSealImg:this.userSign.CAUserYZImg,this.sealKey=0==this.props.signType?this.userSign.CAUserSealKey:this.userSign.CAUserYZKey)}};const Be={theme:{type:String,default:"light"},autoLogin:{type:Boolean,default:!0}};t.defineComponent({name:"BaseLogin",components:{},emits:[""],props:Be,setup:(e,t)=>new De(e,t)});class De extends e.BaseInstance{constructor(e,i){super(),G(this,"props"),G(this,"ctx"),G(this,"oauthApi",new q),G(this,"captchaApi",new Z),G(this,"router"),G(this,"aesKey","d2140707ca3a469c8527e546fe961276"),G(this,"autoLogin",t.ref(!0)),G(this,"userName",t.ref("")),G(this,"passWord",t.ref("")),G(this,"isloading",t.ref(!1)),G(this,"loadType",t.ref("userName")),G(this,"doUserNamePwdLogin",(async()=>{this.utilities.isNull(this.userName.value)?this.loginTip.value="用户名不能为空!":this.utilities.isNull(this.passWord.value)?this.loginTip.value="密码不能为空!":this.login(this.userName.value,this.passWord.value)})),G(this,"phone",t.ref("")),G(this,"captcha",t.ref("")),G(this,"canGetCaptcha",t.ref(!0)),G(this,"canGetCaptchaTime",t.ref(60)),G(this,"sendCaptchaing",t.ref(!1)),G(this,"loginTip",t.ref("")),G(this,"doSendCaptcha",(async()=>{this.sendCaptchaing.value=!0,this.loginTip.value="";if(!/^[1][3,4,5,7,8]\d{9}$/.test(this.phone.value))return this.loginTip.value="手机号格式不正确, 请重新输入!",void(this.sendCaptchaing.value=!1);let e=await this.oauthApi.existPhone(this.phone.value),t=this.utilities.parseApiResult(e);if(1!=t)return this.loginTip.value="手机号未注册,请联系管理员!",void(this.sendCaptchaing.value=!1);e=await this.captchaApi.sendPhoneCaptcha(this.phone.value),t=this.utilities.parseApiResult(e),this.sendCaptchaing.value=!1,t>0?(this.message.success("发送成功!"),this.canGetCaptcha.value=!1,this.intervalId=setInterval((()=>{this.canGetCaptchaTime.value--,0==this.canGetCaptchaTime.value&&(this.canGetCaptcha.value=!0,this.canGetCaptchaTime.value=60,clearInterval(this.intervalId))}),1e3)):this.loginTip.value=e.msg})),G(this,"doPhoneLogin",(async()=>{this.isloading.value=!0,this.loginTip.value="";if(!/^[1][3,4,5,7,8]\d{9}$/.test(this.phone.value))return this.loginTip.value="手机号格式不正确, 请重新输入!",void(this.isloading.value=!1);if(this.utilities.isNull(this.captcha.value))return this.loginTip.value="验证码不能为空!",void(this.isloading.value=!1);const e=await this.oauthApi.phoneLogin(this.phone.value,this.captcha.value),t=this.utilities.parseApiResult(e);this.isloading.value=!1,t.IsSuccess?(this.message.success("登录成功"),this.storageInfo.removeAll(),this.setLoginResult(t)):this.loginTip.value=t.Msg})),G(this,"loginUserName",""),G(this,"encryptPassword",""),G(this,"loginResult"),G(this,"intervalId"),G(this,"showPhoneValidate",t.ref(!1)),G(this,"sending",t.ref(!1)),G(this,"canSendCaptcha",t.ref(!0)),G(this,"resendTime",t.ref(60)),G(this,"validateing",t.ref(!1)),G(this,"captchaFormRef",t.ref()),G(this,"phoneValidateModel",t.reactive({Captcha:""})),G(this,"phoneValidateRule",t.reactive({Captcha:[{required:!0,message:"验证码不能空!",trigger:"blur"}]})),G(this,"doSendPhoneCaptcha",(async()=>{this.sending.value=!0;const e=await this.captchaApi.sendPhoneCaptcha(this.loginResult.User.Phone),t=this.utilities.parseApiResult(e);this.sending.value=!1,t>0?(this.message.success("发送成功!"),this.canSendCaptcha.value=!1,this.intervalId=setInterval((()=>{this.resendTime.value--,0==this.resendTime.value&&(this.canSendCaptcha.value=!0,this.resendTime.value=60,clearInterval(this.intervalId))}),1e3)):this.message.warning(e.msg)})),G(this,"doPhoneValidate",(async()=>{this.validateing.value=!0;if(!(await this.captchaFormRef.value.validate()))return void(this.validateing.value=!1);let e=await this.captchaApi.getCaptcha(this.loginResult.User.Phone),t=this.utilities.parseApiResult(e);this.validateing.value=!1,t==this.phoneValidateModel.Captcha?(this.message.success("验证成功!"),this.loginSuccess(this.loginUserName,this.encryptPassword,this.loginResult,!1),await this.oauthApi.writeLoginToken(this.storageInfo.getToken()),this.router.push(this.storageInfo.getCurrentDefaultPath()),this.showPhoneValidate.value=!1):this.message.warning("验证码填写错误!")})),G(this,"login",(async(e,t,i=!1)=>{this.isloading.value=!0,this.loginTip.value="",t=1==i?t:this.utilities.stringHelper.encryptAES(t,this.aesKey);const o=await this.oauthApi.login(e,t),s=this.utilities.parseApiResult(o);this.isloading.value=!1,s.IsSuccess?s.NeedCaptcha?this.doShowPhoneValidate(e,t,s):this.loginSuccess(e,t,s):this.loginTip.value=s.Msg})),G(this,"setLoginResult",((e,t=!0)=>{this.storageInfo.setToken(e.Token),this.storageInfo.setUser(e.User),this.storageInfo.setPlatforms(e.Platforms);const i=this.storageInfo.getPlatforms();if(!this.utilities.isNull(i)&&i.length>0){const e=i.find((e=>e.PlatformNo==this.storageInfo.getPlatformNo()));this.storageInfo.setCurrentPlatform(this.utilities.isNull(e)?i[0]:e)}const o=this.storageInfo.getCurrentPlatform();!this.utilities.isNull(o)&&o.Modules.length>0&&this.storageInfo.setCurrentBusiness(o.Modules[0]),t&&this.router.replace("/")})),this.props=e,this.ctx=i,this.useAutoLogin()}useAutoLogin(){this.router=l.useRouter(),this.props.autoLogin&&this.doAutoLogin()}async doAutoLogin(){if("1"!=this.storageInfo.getAutoLogin())return void this.storageInfo.removeAll();const e=this.storageInfo.getAutoLoginToken();if(this.utilities.isNull(e))return;const t=e.split(".");if(2!=t.length)return;const i=this.utilities.stringHelper.decryptAES(t[1],this.aesKey),o=t[0];this.login(i,o,!0)}doShowPhoneValidate(e,t,i){this.loginUserName=e,this.encryptPassword=t,this.loginResult=i,this.showPhoneValidate.value=!0}loginSuccess(e,t,i,o=!0){this.storageInfo.setAutoLogin(this.autoLogin.value?"1":"0"),this.storageInfo.setAutoLoginToken(this.autoLogin.value?`${t}.${this.utilities.stringHelper.encryptAES(e,this.aesKey)}`:""),this.setLoginResult(i)}}const _e={defaultLoad:{type:Boolean,default:!0},width:{type:String,default:"320px"},showLabel:{type:Boolean,default:!0}};t.defineComponent({name:"SelectPlatform",components:{},emits:["select"],props:_e,setup:(e,t)=>new We(e,t)});class We extends e.BaseInstance{constructor(e,o){super(),G(this,"props"),G(this,"ctx"),G(this,"platformApi",new K),G(this,"platforms",t.ref([])),G(this,"selectPlatformId",t.ref(0)),G(this,"spinShow",t.ref(!1)),G(this,"loadPlatforms",(async()=>{this.spinShow.value=!0;const e=await this.platformApi.getEntities(i.QueryWrapper.create().eq("1","1").orderBy(["OrderNo"],!0));this.platforms.value=this.utilities.parseApiResult(e),this.spinShow.value=!1,this.platforms.value.length>0&&0==this.selectPlatformId.value&&(this.selectPlatformId.value=this.platforms.value[0].Id,this.ctx.emit("select",this.platforms.value[0]))})),G(this,"doPlatformChange",(()=>{const e=this.platforms.value.find((e=>e.Id==this.selectPlatformId.value));this.utilities.isNull(e)||this.ctx.emit("select",e)})),this.props=e,this.ctx=o,this.usePlatform()}usePlatform(){this.props.defaultLoad&&this.loadPlatforms()}}const Ke={platformId:{type:Number,default:0},userId:{type:Number,default:0},signContent:{type:String,default:""},signType:{type:Number,default:0},signResult:{type:String,default:""}};t.defineComponent({name:"CASign",components:{},emits:["signSuccess"],props:Ke,setup:(e,t)=>new qe(e,t)});class qe extends e.BaseInstance{constructor(e,i){super(),G(this,"props"),G(this,"ctx"),G(this,"signTaskInfoApi",new Fe),G(this,"userSignApi",new $),G(this,"userSign"),G(this,"sealKey",""),G(this,"hasSign",t.ref(!1)),G(this,"signImg",t.ref("")),G(this,"showSignPwd",t.ref(!1)),G(this,"userPin",t.ref("")),G(this,"signing",t.ref(!1)),G(this,"doShowSignPwd",(()=>{this.userPin.value="",this.showSignPwd.value=!0})),G(this,"doRunSeal",(async()=>{if(this.signing.value=!0,this.utilities.isNull(this.userPin.value))return this.message.error("请输入证书密钥"),void(this.signing.value=!1);const e=await Ee(this.sealKey,this.userPin.value,this.props.signContent);this.signing.value=!1,-1!=e.code?(this.ctx.emit("signSuccess",e.result),this.hasSign.value=!0,this.showSignPwd.value=!1):this.message.error(e.msg)})),this.props=e,this.ctx=i,this.useCASign()}useCASign(){this.loadUserSign(),t.watch((()=>this.props.signResult),(()=>{this.hasSign.value=!this.utilities.isNull(this.props.signResult)})),t.watch((()=>this.props.userId),(()=>{this.loadUserSign()})),this.hasSign.value=!this.utilities.isNull(this.props.signResult)}async loadUserSign(){if(0==this.props.userId)return;const e=await this.userSignApi.getEntityByFilter(i.QueryWrapper.create().eq("UserId",this.props.userId)),t=this.utilities.parseApiResult(e);this.utilities.isNull(t)?this.message.error("该用户未配置签字信息"):(this.userSign=t,this.signImg.value=0==this.props.signType?this.userSign.CAUserSealImg:this.userSign.CAUserYZImg,this.sealKey=0==this.props.signType?this.userSign.CAUserSealKey:this.userSign.CAUserYZKey)}}const $e={linkParam:{type:String,default:""},operates:{type:String,default:"-"}},Qe=t.defineComponent({name:"Module",components:{SelectPlatform:Se},emits:["change"],props:$e,setup:(e,t)=>new je(e,t)});class je extends e.BaseInstance{constructor(e,o){super(),a(this,"props"),a(this,"ctx"),a(this,"platformApi",new C),a(this,"moduleApi",new w),a(this,"selectedPlatform"),a(this,"moduleWidth",t.ref("calc(100% - 300px)")),a(this,"webOrApp",t.ref(0)),a(this,"moduleGrid",t.ref()),a(this,"moduleGridOption",t.reactive({api:this.moduleApi,setting:{isTree:!0,border:!0,searchConfig:{btnSpan:6,labelWidth:90,defaultShowSearch:!1},toolbarConfig:{isButtonGroup:!1},rowConfig:{isHover:!1,isCurrent:!0},treeConfig:{expandAll:!0}},searchOptions:[{field:"ModuleName",title:"模块名称",type:"Input"}],toolbars:[{name:"addModule",type:"primary",icon:"md-add",text:"新增",onclick:()=>{this.doAddModule()}},{name:"importModule",type:"default",icon:"md-arrow-round-up",text:"引入",onclick:()=>{this.doShowImportModule()}}],rightToolbars:[{name:"refresh"}],columns:[{colType:"seq"},{colType:"ro",field:"ModuleName",title:"模块名称",minWidth:250,treeNode:!0,format:(e,t)=>{const i=t.row,o=i.children&&i.children.length>0;return e(r.Space,{size:4},(()=>[e(r.Icon,{size:16,type:o?"ios-folder":"md-image",style:{color:"#ff9900"}}),e("span",i.ModuleName)]))}},{colType:"ro",field:"ModuleAlias",title:"别名",width:250,align:"center"},{colType:"ro",field:"IconUrl",title:"图标",width:80,align:"center",format:(e,t)=>{const i=t.row.IconUrl;return this.utilities.isNull(i)?"":e(r.Icon,{type:i,style:{"font-size":"18px"}})}},{colType:"ro",field:"ModuleType",title:"模块类型",width:120,align:"center",format:(e,t)=>{const i={Business:{text:"顶栏业务组",color:"purple"},MenuGroup:{text:"左侧菜单组",color:"geekblue"},MenuItem:{text:"左侧菜单项",color:"green"}}[t.row.ModuleType];return e(r.Tag,{color:i.color},(()=>i.text))}},{colType:"ro",field:"OrderNo",title:"排序号",width:90,align:"center"},{colType:"ro",field:"ModuleStatus",title:"状态",width:70,align:"center",format:(e,t)=>{const i={0:{text:"禁用",color:"red"},1:{text:"正常",color:"green"},2:{text:"沙盒",color:"default"}}[this.utilities.getValueNotNull(t.row.ModuleStatus,0)];return e(r.Tag,{color:i.color},(()=>i.text))}},{colType:"ro",field:"LoadMode",title:"加载模式",width:120,align:"center",format:(e,t)=>({0:"路由",1:"链接",2:"低代码"}[t.row.LoadMode])},{colType:"ro",field:"ModuleUrl",title:"路径",width:260},{title:"操作",width:240,rowButtons:[{name:"editModule",text:"编辑",onclick:e=>{this.doEditModule(e)}},{name:"addModuleChild",text:"新增子项",onclick:e=>{this.doAddChildModule(e)}},{name:"deleteModule",text:"删除",type:"error",onclick:e=>{this.doDeleteModule(e)}}]}],event:{event_search:e=>{const t=i.QueryWrapper.create().eq("PlatformId",this.selectedPlatform.Id).eq("WebOrApp",this.webOrApp.value).orderBy(["OrderNo"]);this.utilities.isNull(e.ModuleName)||t.like("ModuleName",e.ModuleName),this.moduleGrid.value.loadDataByQuery(t)}}})),a(this,"doPlatformChange",(e=>{this.selectedPlatform=e,this.loadModuleGridData()})),a(this,"loadModuleGridData",(()=>{this.moduleGrid.value.loadDataByQuery(i.QueryWrapper.create().eq("PlatformId",this.selectedPlatform.Id).eq("WebOrApp",this.webOrApp.value).orderBy(["OrderNo"]))})),a(this,"doChangeModuleWidth",(e=>{this.moduleWidth.value=e?"calc(100% - 300px)":"calc(100% - 45px)"})),a(this,"parentModule"),a(this,"editModulePId",0),a(this,"editModuleChildData",[]),a(this,"saveingModule",t.ref(!1)),a(this,"moduleComForm",t.ref()),a(this,"showEditModule",t.ref(!1)),a(this,"editMoudelModalTitle",t.ref("新增 - 模块")),a(this,"moduleFormModel",t.reactive({Id:0,PlatformId:0,RootId:0,PId:0,ParentPath:"",HasChild:0,NodeLevel:0,ModuleName:"",ModuleAlias:"",ModuleUrl:"",ModuleType:"",WebOrApp:0,OrderNo:0,IconUrl:"",AttachParams:"",Operates:"",LoadMode:0,ModuleStatus:1,LastUpdateUserId:"",LastUpdateUserName:"",LastUpdateDate:""})),a(this,"moduleFormItems",t.reactive([{model:"",label:"模块信息",span:24,children:[{model:"PId",label:"上级菜单",span:24,prop:"PId",type:"TreeSelect",isShow:!1,treeSelectProp:{data:[],onChange:(e,t)=>{this.setEditMoudelPId(e)}}},{model:"ModuleName",label:"模块名称",prop:"ModuleName",type:"Input"},{model:"ModuleAlias",label:"模块别名",prop:"ModuleAlias",type:"Input"},{model:"ModuleType",label:"模块类型",prop:"ModuleType",type:"Select",selectProp:{datas:[{text:"顶栏业务组",value:"Business"},{text:"左侧菜单组",value:"MenuGroup"},{text:"左侧菜单项",value:"MenuItem"}],transfer:!0}},{model:"IconUrl",label:"模块图标",prop:"IconUrl",type:"IconSelect",iconSelectProp:{placeholder:"模块图标"}},{model:"ModuleStatus",label:"模块状态",prop:"ModuleStatus",type:"Select",selectProp:{datas:[{text:"禁用",value:0},{text:"正常",value:1},{text:"沙盒",value:2}],transfer:!0}},{model:"OrderNo",label:"排序号",prop:"OrderNo",type:"InputNumber"}]},{model:"",label:"路由信息",span:24,children:[{model:"LoadMode",label:"加载模式",span:24,prop:"LoadMode",type:"Radio",radioProp:{datas:[{text:"路由",value:0},{text:"链接",value:1},{text:"低代码",value:3}]}},{model:"ModuleUrl",label:"路由地址",span:24,prop:"ModuleUrl",type:"Input"},{model:"AttachParams",label:"路由参数",span:24,prop:"AttachParams",type:"Input"},{model:"Operates",label:"功能点",span:24,prop:"Operates",type:"Input",inputProp:{type:"textarea",rows:4,placeholder:"例如: [{ code:'Edit', name: '编辑' }]"}}]}])),a(this,"doSaveModule",(async()=>{this.saveingModule.value=!0;let e=await this.moduleApi.save(this.moduleFormModel),t=this.utilities.parseApiResult(e);if(t<=0)return this.message.warning("保存失败,请稍后重试!"),void(this.saveingModule.value=!1);if(0==this.moduleFormModel.Id){const e=[{Id:t,RootId:this.utilities.isNull(this.parentModule)?t:this.parentModule.RootId}];this.utilities.isNull(this.parentModule)||0!=this.parentModule.HasChild||e.push({Id:this.parentModule.Id,HasChild:1}),await this.moduleApi.saves(e)}else if(this.editModulePId!=this.moduleFormModel.PId){let o=this.editModuleChildData;this.editModulePId>0&&(e=await this.moduleApi.getCount(i.QueryWrapper.create().eq("PId",this.editModulePId)),t=this.utilities.parseApiResult(e),o.push({Id:this.editModulePId,HasChild:t>0?1:0})),await this.moduleApi.saves(o)}this.message.success("保存成功!"),this.moduleGrid.value.refreshData(),this.saveingModule.value=!1,this.showEditModule.value=!1})),a(this,"showImportModule",t.ref(!1)),a(this,"saveingImportModule",t.ref(!1)),a(this,"originPlatform",t.reactive({list:[],selectedItem:{Id:0,PlatformName:""},selectedId:0})),a(this,"originModuleGrid",t.ref()),a(this,"originModuleGridOption",t.reactive({api:this.moduleApi,setting:{isTree:!0,searchConfig:{btnSpan:24,labelWidth:90,defaultShowSearch:!1},toolbarConfig:{isButtonGroup:!1},rowConfig:{isHover:!0},treeConfig:{expandAll:!0}},searchOptions:[{field:"ModuleName",title:"模块名称",type:"Input",span:24}],rightToolbars:[{name:"refresh"}],columns:[{colType:"checkbox"},{colType:"ro",field:"ModuleName",title:"模块名称",treeNode:!0},{colType:"ro",field:"IconUrl",title:"图标",width:80,align:"center",format:(e,t)=>{const i=t.row.IconUrl;return this.utilities.isNull(i)?"":e(r.Icon,{type:i,style:{"font-size":"18px"}})}},{colType:"ro",field:"ModuleType",title:"模块类型",width:120,align:"center",format:(e,t)=>{const i={Business:{text:"顶栏业务组",color:"purple"},MenuGroup:{text:"左侧菜单组",color:"geekblue"},MenuItem:{text:"左侧菜单项",color:"green"}}[t.row.ModuleType];return e(r.Tag,{color:i.color},(()=>i.text))}}],event:{event_search:e=>{const t=i.QueryWrapper.create().eq("PlatformId",this.originPlatform.selectedId).eq("WebOrApp",this.webOrApp.value).orderBy(["OrderNo"]);this.utilities.isNull(e.ModuleName)||t.like("ModuleName",e.ModuleName),this.originModuleGrid.value.loadDataByQuery(t)}}})),a(this,"targetPlatform",t.reactive({Id:0,PlatformName:""})),a(this,"targetModuleGrid",t.ref()),a(this,"targetModuleGridOption",t.reactive({api:this.moduleApi,setting:{isTree:!0,toolbarConfig:{isButtonGroup:!1},rowConfig:{isHover:!0,isCurrent:!0},treeConfig:{expandAll:!0}},toolbars:[],rightToolbars:[{name:"refresh"}],columns:[{colType:"ro",field:"ModuleName",title:"模块名称",treeNode:!0},{colType:"ro",field:"IconUrl",title:"图标",width:80,align:"center",format:(e,t)=>{const i=t.row.IconUrl;return this.utilities.isNull(i)?"":e(r.Icon,{type:i,style:{"font-size":"18px"}})}},{colType:"ro",field:"ModuleType",title:"模块类型",width:120,align:"center",format:(e,t)=>{const i={Business:{text:"顶栏业务组",color:"purple"},MenuGroup:{text:"左侧菜单组",color:"geekblue"},MenuItem:{text:"左侧菜单项",color:"green"}}[t.row.ModuleType];return this.utilities.isNull(i)?"":e(r.Tag,{color:i.color},(()=>i.text))}}],event:{event_search:e=>{const t=i.QueryWrapper.create().eq("PlatformId",this.originPlatform.selectedId).eq("WebOrApp",this.webOrApp.value).orderBy(["OrderNo"]);this.utilities.isNull(e.ModuleName)||t.like("ModuleName",e.ModuleName),this.targetModuleGrid.value.loadDataByQuery(t)}}})),a(this,"doChangeOriginPlatform",(()=>{const e=this.originPlatform.list.filter((e=>e.Id==this.originPlatform.selectedId));e.length>0?this.originPlatform.selectedItem=e[0]:this.originPlatform.selectedItem={Id:0,PlatformName:""},this.loadOriginModuleGridData()})),a(this,"doImportOriginToTargetModule",(async()=>{const e=this.originModuleGrid.value.getCheckboxDatas();if(e.length<=0)return void this.message.warning("请选择源平台模块菜单");const t=this.targetModuleGrid.value.getCurrentRecord();if(this.utilities.isNull(t))return void this.message.warning("请选择目标平台模块菜单");this.saveingImportModule.value=!0;const i=await this.moduleApi.importModules(e,t),o=this.utilities.parseApiResult(i);this.saveingImportModule.value=!1,o>0?(this.originModuleGrid.value.refreshData(),this.targetModuleGrid.value.refreshData(),this.moduleGrid.value.refreshData(),this.message.success("导入成功")):this.message.warning("导入失败, 请稍后重试")})),this.props=e,this.ctx=o}setEditMoudelPId(e){this.editModuleChildData=[];const t=this.moduleGrid.value.getDatas(),i=t.filter((t=>t.Id==e))[0];this.moduleFormModel.RootId=i?i.RootId:this.moduleFormModel.Id,this.moduleFormModel.PId=i?i.Id:0,this.moduleFormModel.ParentPath=i?`${i.ParentPath}${i.Id}/`:"/",this.moduleFormModel.NodeLevel=i?i.NodeLevel+1:1;((e,t)=>{const i=e.filter((e=>e.PId==t.Id));for(const o of i)this.editModuleChildData.push({Id:o.Id,RootId:t.RootId,ParentPath:`${t.ParentPath}${t.Id}/`,NodeLevel:t.NodeLevel+1})})(t,this.moduleFormModel)}setParentModuleTreeItem(e){const t=this.moduleFormItems[0].children[0];if(t.isShow=e,0==e)return;const i=this.moduleGrid.value.getDatas(),o=this.moduleComForm.value.convertTreeData({datas:i,titleField:"ModuleName",rootTitle:"主目录",rootValue:0});t.treeSelectProp.data=o}doEditModule(e){this.moduleFormModel.Id=e.Id,this.moduleFormModel.PlatformId=e.PlatformId,this.moduleFormModel.RootId=e.RootId,this.moduleFormModel.PId=e.PId,this.moduleFormModel.ParentPath=e.ParentPath,this.moduleFormModel.HasChild=e.HasChild,this.moduleFormModel.NodeLevel=e.NodeLevel,this.moduleFormModel.ModuleName=e.ModuleName,this.moduleFormModel.ModuleAlias=e.ModuleAlias,this.moduleFormModel.ModuleUrl=e.ModuleUrl,this.moduleFormModel.ModuleType=e.ModuleType,this.moduleFormModel.WebOrApp=e.WebOrApp,this.moduleFormModel.OrderNo=e.OrderNo,this.moduleFormModel.IconUrl=e.IconUrl,this.moduleFormModel.AttachParams=e.AttachParams,this.moduleFormModel.Operates=e.Operates,this.moduleFormModel.LoadMode=e.LoadMode,this.moduleFormModel.ModuleStatus=e.ModuleStatus,this.moduleFormModel.LastUpdateUserId=s.GloablValueType.$LoginUserId,this.moduleFormModel.LastUpdateUserName=s.GloablValueType.$LoginUserTrueName,this.moduleFormModel.LastUpdateDate=s.GloablValueType.$CurrentDate,this.parentModule=void 0,this.editModulePId=e.PId,this.editModuleChildData=[],this.editMoudelModalTitle.value=`编辑 - 模块 - ${e.ModuleName}`,this.setParentModuleTreeItem(!0),this.showEditModule.value=!0}doAddModule(){this.moduleFormModel.Id=0,this.moduleFormModel.PlatformId=this.selectedPlatform.Id,this.moduleFormModel.RootId=0,this.moduleFormModel.PId=0,this.moduleFormModel.ParentPath="/",this.moduleFormModel.HasChild=0,this.moduleFormModel.NodeLevel=1,this.moduleFormModel.ModuleName="",this.moduleFormModel.ModuleAlias="",this.moduleFormModel.ModuleUrl="",this.moduleFormModel.ModuleType="Business",this.moduleFormModel.WebOrApp=this.webOrApp.value,this.moduleFormModel.OrderNo=1,this.moduleFormModel.IconUrl="",this.moduleFormModel.AttachParams="",this.moduleFormModel.Operates='[{"code":"Edit", "name": "编辑"},{"code":"Delete", "name": "删除"},{"code":"Add", "name": "新增"},{"code":"Save", "name": "保存"}]',this.moduleFormModel.LoadMode=0,this.moduleFormModel.ModuleStatus=1,this.moduleFormModel.LastUpdateUserId=s.GloablValueType.$LoginUserId,this.moduleFormModel.LastUpdateUserName=s.GloablValueType.$LoginUserTrueName,this.moduleFormModel.LastUpdateDate=s.GloablValueType.$CurrentDate,this.parentModule=void 0,this.setParentModuleTreeItem(!1),this.editMoudelModalTitle.value="新增 - 模块",this.showEditModule.value=!0}doAddChildModule(e){this.moduleFormModel.Id=0,this.moduleFormModel.PlatformId=this.selectedPlatform.Id,this.moduleFormModel.RootId=e.RootId,this.moduleFormModel.PId=e.Id,this.moduleFormModel.ParentPath=`${e.ParentPath}${e.Id}/`,this.moduleFormModel.HasChild=0,this.moduleFormModel.NodeLevel=e.NodeLevel+1,this.moduleFormModel.ModuleName="",this.moduleFormModel.ModuleAlias="",this.moduleFormModel.ModuleUrl="",this.moduleFormModel.ModuleType="Business"==e.ModuleType?"MenuGroup":"MenuItem",this.moduleFormModel.WebOrApp=this.webOrApp.value,this.moduleFormModel.OrderNo=1,this.moduleFormModel.IconUrl="",this.moduleFormModel.AttachParams="",this.moduleFormModel.Operates="",this.moduleFormModel.LoadMode=0,this.moduleFormModel.ModuleStatus=1,this.moduleFormModel.LastUpdateUserId=s.GloablValueType.$LoginUserId,this.moduleFormModel.LastUpdateUserName=s.GloablValueType.$LoginUserTrueName,this.moduleFormModel.LastUpdateDate=s.GloablValueType.$CurrentDate,this.parentModule=e,this.setParentModuleTreeItem(!1),this.editMoudelModalTitle.value=`新增子项 - 父模块 - ${e.ModuleName}`,this.showEditModule.value=!0}async doDeleteModule(e){1!=e.HasChild?this.modal.confirm({title:"提示",content:`数据删除后不可恢复, 确定要删除[ ${e.ModuleName} ]模块吗?`,onOk:async()=>{const t=e.PId;let o=await this.moduleApi.delete(e.Id),s=this.utilities.parseApiResult(o);s<=0?this.message.warning("删除失败,请稍后重试!"):(o=await this.moduleApi.getCount(i.QueryWrapper.create().eq("PId",t)),s=this.utilities.parseApiResult(o),s<=0&&await this.moduleApi.save({Id:t,HasChild:0}),this.message.success("删除成功!"),this.moduleGrid.value.refreshData())}}):this.message.warning("该模块存在子模板, 不能删除, 请先删除子模块!")}doShowImportModule(){this.targetPlatform.Id=this.selectedPlatform.Id,this.targetPlatform.PlatformName=this.selectedPlatform.PlatformName,this.showImportModule.value=!0,this.loadOriginPlatforms()}async loadOriginPlatforms(){const e=await this.platformApi.getEntities(i.QueryWrapper.create().ne("Id",this.selectedPlatform.Id));this.originPlatform.list=this.utilities.parseApiResult(e),this.originPlatform.list.length>0?this.originPlatform.selectedItem=this.originPlatform.list[0]:this.originPlatform.selectedItem={Id:0,PlatformName:""},this.originPlatform.selectedId=this.originPlatform.selectedItem.Id,t.nextTick((()=>{this.loadOriginModuleGridData(),this.loadTargetModuleGridData()}))}loadOriginModuleGridData(){const e=i.QueryWrapper.create().eq("PlatformId",this.originPlatform.selectedId).eq("WebOrApp",this.webOrApp.value).orderBy(["OrderNo"]);this.originModuleGrid.value.loadDataByQuery(e)}loadTargetModuleGridData(){this.targetModuleGrid.value.loadData((async e=>{const t=i.QueryWrapper.create().eq("PlatformId",this.targetPlatform.Id).eq("WebOrApp",this.webOrApp.value).orderBy(["OrderNo"]),o=await this.moduleApi.getEntities(t),s=this.utilities.parseApiResult(o),r={Id:0,PId:-1,ModuleName:"根节点",ModuleType:"",PlatformId:this.targetPlatform.Id,IconUrl:""};s.push(r),e.success(s)}))}}const He={style:{height:"650px","overflow-y":"auto"}},Ye={class:"import-module",style:{height:"650px",position:"relative"}},ze={style:{width:"100%",height:"100%"}},Ze={style:{width:"560px",height:"100%",float:"left"}},Je={style:{height:"calc(100% - 0px)"}},Xe={style:{width:"calc(100% - 570px)",height:"100%","margin-left":"10px",display:"inline-block"}},et={style:{height:"calc(100% - 0px)"}},tt=(e=>(t.pushScopeId("data-v-5a5ef504"),e=e(),t.popScopeId(),e))((()=>t.createElementVNode("div",{class:"primary-color gird-tip"},"点击选择要放置的位置!",-1)));const it=F(Qe,[["render",function(e,i,o,s,r,l){const n=t.resolveComponent("SelectPlatform"),a=t.resolveComponent("Radio"),d=t.resolveComponent("RadioGroup"),u=t.resolveComponent("NvGrid"),h=t.resolveComponent("NvComForm"),p=t.resolveComponent("Form"),c=t.resolveComponent("Button"),m=t.resolveComponent("Modal"),f=t.resolveComponent("Option"),g=t.resolveComponent("Select"),I=t.resolveComponent("Card"),v=t.resolveComponent("Spin"),y=t.resolveComponent("NvBox"),w=t.resolveComponent("NvPage");return t.openBlock(),t.createBlock(w,{gutter:8,class:"module"},{default:t.withCtx((()=>[t.createVNode(y,{width:"100%",title:"模块列表"},{default:t.withCtx((()=>[t.createVNode(u,{ref:"moduleGrid",option:e.moduleGridOption},{default:t.withCtx((()=>[t.createVNode(n,{onSelect:e.doPlatformChange},null,8,["onSelect"]),t.createVNode(d,{modelValue:e.webOrApp,"onUpdate:modelValue":i[0]||(i[0]=t=>e.webOrApp=t),type:"button",onOnChange:e.loadModuleGridData},{default:t.withCtx((()=>[t.createVNode(a,{label:0},{default:t.withCtx((()=>[t.createTextVNode("Web")])),_:1}),t.createVNode(a,{label:1},{default:t.withCtx((()=>[t.createTextVNode("App")])),_:1})])),_:1},8,["modelValue","onOnChange"])])),_:1},8,["option"]),t.createVNode(m,{modelValue:e.showEditModule,"onUpdate:modelValue":i[2]||(i[2]=t=>e.showEditModule=t),draggable:"",mask:!0,"mask-closable":!1,width:700,title:e.editMoudelModalTitle,styles:{top:"3%"}},{footer:t.withCtx((()=>[t.createVNode(c,{type:"text",onClick:i[1]||(i[1]=t=>e.showEditModule=!1)},{default:t.withCtx((()=>[t.createTextVNode("关闭")])),_:1}),t.createVNode(c,{type:"primary",loading:e.saveingModule,onClick:e.doSaveModule},{default:t.withCtx((()=>[t.createTextVNode("保存")])),_:1},8,["loading","onClick"])])),default:t.withCtx((()=>[t.createElementVNode("div",He,[t.createVNode(p,{model:e.moduleFormModel,"label-width":90},{default:t.withCtx((()=>[t.createVNode(h,{ref:"moduleComForm",formModel:e.moduleFormModel,formItems:e.moduleFormItems},null,8,["formModel","formItems"])])),_:1},8,["model"])])])),_:1},8,["modelValue","title"]),t.createVNode(m,{modelValue:e.showImportModule,"onUpdate:modelValue":i[5]||(i[5]=t=>e.showImportModule=t),draggable:"",mask:!0,"mask-closable":!1,width:1300,title:"引入模块",styles:{top:"3%"}},{footer:t.withCtx((()=>[t.createVNode(c,{type:"text",onClick:i[4]||(i[4]=t=>e.showImportModule=!1)},{default:t.withCtx((()=>[t.createTextVNode("关闭")])),_:1}),t.createVNode(c,{type:"primary",loading:e.saveingImportModule,onClick:e.doImportOriginToTargetModule},{default:t.withCtx((()=>[t.createTextVNode("引入")])),_:1},8,["loading","onClick"])])),default:t.withCtx((()=>[t.createElementVNode("div",Ye,[t.createElementVNode("div",ze,[t.createElementVNode("div",Ze,[t.createVNode(I,{"dis-hover":"",class:"import-module_card"},{title:t.withCtx((()=>[t.createTextVNode("源平台 - ["+t.toDisplayString(e.originPlatform.selectedItem.PlatformName)+"] - 模块菜单",1)])),default:t.withCtx((()=>[t.createElementVNode("div",Je,[t.createVNode(u,{ref:"originModuleGrid",option:e.originModuleGridOption},{default:t.withCtx((()=>[t.createVNode(g,{modelValue:e.originPlatform.selectedId,"onUpdate:modelValue":i[3]||(i[3]=t=>e.originPlatform.selectedId=t),onOnChange:e.doChangeOriginPlatform,style:{width:"250px"}},{default:t.withCtx((()=>[(t.openBlock(!0),t.createElementBlock(t.Fragment,null,t.renderList(e.originPlatform.list,((e,i)=>(t.openBlock(),t.createBlock(f,{key:i,value:e.Id},{default:t.withCtx((()=>[t.createTextVNode(t.toDisplayString(e.PlatformName),1)])),_:2},1032,["value"])))),128))])),_:1},8,["modelValue","onOnChange"])])),_:1},8,["option"])])])),_:1})]),t.createElementVNode("div",Xe,[t.createVNode(I,{"dis-hover":"",class:"import-module_card"},{title:t.withCtx((()=>[t.createTextVNode("目标平台 - ["+t.toDisplayString(e.targetPlatform.PlatformName)+"] - 模块菜单",1)])),default:t.withCtx((()=>[t.createElementVNode("div",et,[t.createVNode(u,{ref:"targetModuleGrid",option:e.targetModuleGridOption},{default:t.withCtx((()=>[tt])),_:1},8,["option"])])])),_:1})]),t.withDirectives(t.createVNode(v,{fix:""},null,512),[[t.vShow,e.saveingImportModule]])])])])),_:1},8,["modelValue"])])),_:1})])),_:1})}],["__scopeId","data-v-5a5ef504"]]),ot={linkParam:{type:String,default:""},operates:{type:String,default:"-"}},st=t.defineComponent({name:"Role",components:{SelectPlatform:Se},emits:[""],props:ot,setup:(e,t)=>new rt(e,t)});class rt extends e.BaseInstance{constructor(e,o){super(),a(this,"props"),a(this,"ctx"),a(this,"roleApi",new N),a(this,"moduleApi",new w),a(this,"roleModuleApi",new T),a(this,"platformApi",new C),a(this,"institutionRoleApi",new y),a(this,"selectedPlatform"),a(this,"roleWidth",t.ref("calc(100% - 300px)")),a(this,"roleGrid",t.ref()),a(this,"roleGridOption",t.reactive({api:this.roleApi,setting:{border:!0,searchConfig:{btnSpan:6,labelWidth:90,defaultShowSearch:!1},toolbarConfig:{isButtonGroup:!1},rowConfig:{isHover:!0},isPagination:!0,pageSize:10},searchOptions:[{field:"RoleName",title:"角色名称",type:"Input"},{field:"RoleCode",title:"角色编码",type:"Input"},{field:"RoleStatus",title:"状态",type:"Radio",data:[{text:"启用",value:1},{text:"禁用",value:0}]}],toolbars:[{name:"add",text:"新增",onclick:()=>{this.doAddRole()}},{name:"importRole",type:"default",icon:"md-arrow-round-up",text:"引入",onclick:()=>{this.doShowImportRole()}}],rightToolbars:[{name:"refresh"}],columns:[{colType:"seq"},{colType:"ed",field:"RoleName",title:"角色名称",width:250},{colType:"ed",field:"RoleCode",title:"角色编码",width:180,align:"center"},{colType:"select",field:"RoleStatus",title:"角色状态",width:100,align:"center",defaultValue:1,select:{data:[{text:"启用",value:1},{text:"禁用",value:0}]},format:(e,t)=>{const i={0:{text:"禁用",color:"red"},1:{text:"启用",color:"green"}}[t.row.RoleStatus];return e(r.Tag,{color:i.color},(()=>i.text))}},{colType:"select",field:"FrontEndVisible",title:"角色类型",width:120,align:"center",defaultValue:1,select:{data:[{text:"是",value:1},{text:"否",value:0}]},format:(e,t)=>{const i={0:{text:"前台不可见",color:"blue"},1:{text:"前台可见",color:"green"}}[t.row.FrontEndVisible];return e(r.Tag,{color:null==i?void 0:i.color},(()=>null==i?void 0:i.text))}},{colType:"num",field:"OrderNo",title:"排序号",width:100,align:"center"},{colType:"ed",field:"RoleDesc",title:"角色描述",minWidth:200},{colType:"ed",field:"DefaultUrl",title:"默认页面",width:200},{colType:"ed",field:"WelcomeUrl",title:"欢迎页面",width:200},{title:"操作",width:200,rowButtons:[{name:"edit",text:"编辑",onclick:(e,t)=>{this.doEditRole(e)}},{name:"moduleRole",text:"模块权限",onclick:(e,t)=>{this.doShowRoleModule(e)}},{name:"delete",text:"删除",onclick:(e,t)=>{this.doDeleteRole(e)}}]}],event:{event_search:e=>{this.roleGrid.value.setPageIndex(1);const t=i.QueryWrapper.create().eq("PlatformId",this.selectedPlatform.Id).orderBy(["OrderNo"]);this.utilities.isNull(e.RoleName)||t.like("RoleName",e.RoleName),this.utilities.isNull(e.RoleCode)||t.like("RoleCode",e.RoleCode),this.utilities.isNull(e.RoleStatus)||t.eq("RoleStatus",e.RoleStatus),this.roleGrid.value.loadDataByQuery(t)}}})),a(this,"doPlatformListSelect",(e=>{this.selectedPlatform=e,this.roleGrid.value.setGloablValue("PlatformId",this.selectedPlatform.Id),this.roleGrid.value.setGloablValue("LastUpdateUserId",s.GloablValueType.$LoginUserId),this.roleGrid.value.setGloablValue("LastUpdateUserName",s.GloablValueType.$LoginUserTrueName),this.roleGrid.value.setGloablValue("LastUpdateDate",s.GloablValueType.$CurrentDate),this.loadRoleGridData()})),a(this,"loadRoleGridData",(async()=>{const e=await this.institutionRoleApi.getEntities(i.QueryWrapper.create()),t=this.utilities.parseApiResult(e),o=[];for(let i of t)o.some((e=>e==i.RoleId))||o.push(i.RoleId);const s=i.QueryWrapper.create().eq("PlatformId",this.selectedPlatform.Id).orderBy(["OrderNo"]);o.length>0&&s.notIn("Id",o),this.roleGrid.value.loadDataByQuery(s)})),a(this,"doChangeRoleWidth",(e=>{this.roleWidth.value=e?"calc(100% - 300px)":"calc(100% - 45px)"})),a(this,"refRoleForm",t.ref()),a(this,"saveingRole",t.ref(!1)),a(this,"showEditRole",t.ref(!1)),a(this,"editRoleModalTitle",t.ref("新增 - 角色")),a(this,"roleFormModel",t.reactive({Id:0,PlatformId:0,RoleName:"",RoleCode:"",RoleDesc:"",RoleStatus:1,FrontEndVisible:0,DefaultUrl:"",WelcomeUrl:"",OrderNo:0,LastUpdateUserId:"",LastUpdateUserName:"",LastUpdateDate:""})),a(this,"roleFormItems",t.reactive([{model:"RoleName",label:"角色名称",prop:"RoleName",type:"Input",span:24,rules:[{required:!0,message:"角色名称不能为空",trigger:"blur"}]},{model:"RoleCode",label:"角色编码",prop:"RoleCode",type:"Input",span:24,rules:[{required:!0,message:"角色编码不能为空",trigger:"blur"}]},{model:"RoleDesc",label:"角色描述",prop:"RoleDesc",type:"Input",span:24,inputProp:{type:"textarea",rows:4}},{model:"RoleStatus",label:"角色状态",prop:"RoleStatus",type:"Radio",span:12,radioProp:{datas:[{text:"启用",value:1},{text:"禁用",value:0}],type:"button"}},{model:"FrontEndVisible",label:"角色类型",prop:"FrontEndVisible",type:"Radio",span:12,radioProp:{datas:[{text:"前台可见",value:1},{text:"前台不可见",value:0}],type:"button"}},{model:"DefaultUrl",label:"默认页面",prop:"DefaultUrl",type:"Input",span:24},{model:"WelcomeUrl",label:"欢迎页面",prop:"WelcomeUrl",type:"Input",span:24},{model:"OrderNo",label:"排序号",prop:"OrderNo",type:"InputNumber",span:24}])),a(this,"doSaveRole",(async()=>{if(!(await this.refRoleForm.value.validate()))return;this.saveingRole.value=!0;let e=await this.roleApi.save(this.roleFormModel);if(this.utilities.parseApiResult(e)<=0)return this.message.warning("保存失败,请稍后重试!"),void(this.saveingRole.value=!1);this.message.success("保存成功!"),this.roleGrid.value.refreshData(),this.saveingRole.value=!1,this.showEditRole.value=!1})),a(this,"selectRole"),a(this,"saveRoleModuleing",t.ref(!1)),a(this,"showRoleModule",t.ref(!1)),a(this,"roleModuleTitle",t.ref("")),a(this,"moduleGrid",t.ref()),a(this,"moduleGridOption",t.reactive({api:this.moduleApi,setting:{isTree:!0,border:!0,searchConfig:{btnSpan:6,labelWidth:90,defaultShowSearch:!1},toolbarConfig:{isButtonGroup:!1},rowConfig:{isHover:!0},treeConfig:{expandAll:!0}},searchOptions:[{field:"ModuleName",title:"模块名称",type:"Input"}],rightToolbars:[{name:"refresh"}],columns:[{colType:"seq"},{colType:"ro",width:50,align:"center",format:(e,t)=>e(r.Checkbox,{style:{"margin-right":"0px"},"model-value":t.row.IsChk,"onUpdate:model-value":e=>{t.row.IsChk=e,this.setRoleModuleIsChange(t.row),this.changeParentRoleModuleStatus(t.row)}})},{colType:"ro",field:"ModuleName",title:"模块名称",treeNode:!0,width:260},{colType:"ro",field:"IconUrl",title:"图标",width:80,align:"center",format:(e,t)=>{const i=t.row.IconUrl;return this.utilities.isNull(i)?"":e(r.Icon,{type:i,style:{"font-size":"18px"}})}},{colType:"ro",field:"ModuleType",title:"模块类型",width:120,align:"center",format:(e,t)=>{const i={Business:{text:"顶栏业务组",color:"purple"},MenuGroup:{text:"左侧菜单组",color:"geekblue"},MenuItem:{text:"左侧菜单项",color:"green"}}[t.row.ModuleType];return e(r.Tag,{color:i.color},(()=>i.text))}},{colType:"ro",field:"OrderNo",title:"排序号",width:90,align:"center"},{colType:"ro",field:"Operates",title:"功能点权限",format:(e,t)=>{const i=this.utilities.isNull(t.row.Operates)?[]:JSON.parse(t.row.Operates);if(0==i.length)return"";const o=[],s=e(r.Checkbox,{label:"all","model-value":t.row.IsAllChk,"onUpdate:model-value":e=>{t.row.IsAllChk=e,t.row.RoleOperates=t.row.IsAllChk?o:[],this.setRoleModuleIsChange(t.row),e&&(t.row.IsChk=e,this.setRoleModuleIsChange(t.row),this.changeParentRoleModuleStatus(t.row))}},(()=>"全选")),l=e(r.Divider,{type:"vertical"}),n=[];for(const d of i)o.push(d.code),n.push(e(r.Checkbox,{label:d.code},(()=>d.name)));const a=e(r.CheckboxGroup,{"model-value":t.row.RoleOperates,"onUpdate:model-value":e=>{t.row.RoleOperates=e,this.setRoleModuleIsChange(t.row),e&&(t.row.IsChk=e,this.setRoleModuleIsChange(t.row),this.changeParentRoleModuleStatus(t.row))}},(()=>n));return e(r.Space,(()=>[s,l,a]))}}],event:{event_search:e=>{this.loadModuleGridData(e)}}})),a(this,"loadModuleGridData",(e=>{this.moduleGrid.value.loadData((async t=>{const o=i.QueryWrapper.create().eq("PlatformId",this.selectedPlatform.Id).ne("ModuleStatus",0).orderBy(["OrderNo"]);this.utilities.isNull(e.ModuleName)||o.like("ModuleName",e.ModuleName);let s=await this.moduleApi.getEntities(o),r=this.utilities.parseApiResult(s);const l=i.QueryWrapper.create().eq("RoleId",this.selectRole.Id);s=await this.roleModuleApi.getEntities(l);let n=this.utilities.parseApiResult(s);for(const e of r){const t=n.filter((t=>t.ModuleId==e.Id));if(t.length>0){const i=t[0];e.IsChk=!0,e.RoleModuleId=i.Id,e.RoleOperates=this.utilities.isNull(i.Operates)?[]:JSON.parse(i.Operates),e.OrgIsChk=!0,e.OrgRoleOperates=this.utilities.isNull(i.Operates)?[]:JSON.parse(i.Operates),e.IsChange=!1,e.IsAllChk=!1}else e.IsChk=!1,e.RoleModuleId=0,e.RoleOperates=[],e.OrgIsChk=!1,e.OrgRoleOperates=[],e.IsChange=!1,e.IsAllChk=!1}t.success(r)}))})),a(this,"doSaveRoleModule",(async()=>{const e=this.moduleGrid.value.getDatas().filter((e=>1==e.IsChange));if(0==e.length)return void this.message.warning("没有需要保存的数据");this.saveRoleModuleing.value=!0;const t=[],i=[],o=[];for(const r of e)0==r.RoleModuleId?t.push({Id:0,RoleId:this.selectRole.Id,ModuleId:r.Id,Operates:JSON.stringify(r.RoleOperates)}):0!=r.RoleModuleId&&1==r.IsChk?i.push({Id:r.RoleModuleId,RoleId:this.selectRole.Id,ModuleId:r.Id,Operates:JSON.stringify(r.RoleOperates)}):o.push(r.RoleModuleId);const s=[...t,...i];s.length>0&&await this.roleModuleApi.saves(s),o.length>0&&await this.roleModuleApi.deleteByIds(o.join(",")),this.message.success("操作完成"),this.saveRoleModuleing.value=!1,this.showRoleModule.value=!1})),a(this,"showImportRole",t.ref(!1)),a(this,"saveingImportRole",t.ref(!1)),a(this,"originPlatform",t.reactive({list:[],selectedItem:{Id:0,PlatformAbbreviation:""},selectedId:0})),a(this,"originRoleGrid",t.ref()),a(this,"originRoleGridOption",t.reactive({api:this.roleApi,setting:{border:!1,searchConfig:{btnSpan:24,labelWidth:80,defaultShowSearch:!1},toolbarConfig:{isButtonGroup:!1},rowConfig:{isHover:!0}},rightToolbars:[{name:"refresh"}],columns:[{colType:"seq"},{colType:"checkbox"},{colType:"ed",field:"RoleName",title:"角色名称",minWidth:160},{colType:"ed",field:"RoleCode",title:"角色编码",width:120,align:"center"},{colType:"num",field:"OrderNo",title:"排序号",width:100,align:"center"},{colType:"ed",field:"RoleDesc",title:"角色描述",width:200}]})),a(this,"doChangeOriginPlatform",(()=>{const e=this.originPlatform.list.filter((e=>e.Id==this.originPlatform.selectedId));e.length>0?this.originPlatform.selectedItem=e[0]:this.originPlatform.selectedItem={Id:0,PlatformAbbreviation:""},this.loadOriginRoleGridData()})),a(this,"doImportRole",(async()=>{const e=this.originRoleGrid.value.getCheckboxDatas();if(e.length<=0)return void this.message.warning("请选择源平台角色");this.saveingImportRole.value=!0;let t=[];for(const s of e)t.push(s.Id);const i=await this.roleApi.importRoles(this.selectedPlatform.Id,t),o=this.utilities.parseApiResult(i);this.saveingImportRole.value=!1,o?(this.showImportRole.value=!1,this.roleGrid.value.refreshData(),this.message.success("导入成功")):this.message.warning("导入失败, 请稍后重试")})),this.props=e,this.ctx=o,this.useBusinessRole()}useBusinessRole(){t.onMounted((()=>{})),t.onUnmounted((()=>{}))}doDeleteRole(e){this.modal.confirm({title:"提示",content:"该操作将执行以下步骤 <br/> 1. 删除角色配置的模块权限。 <br/> 2. 删除用户关联该角色的索引。 <br/> 3. 删除该角色。 <br/> 确定要执行该操作吗?",onOk:async()=>{await this.roleModuleApi.deleteRoleModuleByRoleId(e.Id);const t=await this.roleApi.delete(e.Id);this.utilities.parseApiResult(t)?(this.message.success("删除成功!"),this.roleGrid.value.refreshData()):this.message.warning("操作异常, 请稍后重试!")}})}doEditRole(e){this.roleFormModel.Id=e.Id,this.roleFormModel.PlatformId=e.PlatformId,this.roleFormModel.RoleName=e.RoleName,this.roleFormModel.RoleCode=e.RoleCode,this.roleFormModel.RoleDesc=e.RoleDesc,this.roleFormModel.RoleStatus=e.RoleStatus,this.roleFormModel.FrontEndVisible=e.FrontEndVisible,this.roleFormModel.DefaultUrl=e.DefaultUrl,this.roleFormModel.WelcomeUrl=e.WelcomeUrl,this.roleFormModel.OrderNo=e.OrderNo,this.roleFormModel.LastUpdateUserId=s.GloablValueType.$LoginUserId,this.roleFormModel.LastUpdateUserName=s.GloablValueType.$LoginUserTrueName,this.roleFormModel.LastUpdateDate=s.GloablValueType.$CurrentDate,this.editRoleModalTitle.value=`编辑 - ${e.RoleName}`,this.showEditRole.value=!0}doAddRole(){this.roleFormModel.Id=0,this.roleFormModel.PlatformId=this.selectedPlatform.Id,this.roleFormModel.RoleName="",this.roleFormModel.RoleCode="",this.roleFormModel.RoleDesc="",this.roleFormModel.RoleStatus=1,this.roleFormModel.FrontEndVisible=0,this.roleFormModel.DefaultUrl="",this.roleFormModel.WelcomeUrl="",this.roleFormModel.OrderNo=0,this.roleFormModel.LastUpdateUserId=s.GloablValueType.$LoginUserId,this.roleFormModel.LastUpdateUserName=s.GloablValueType.$LoginUserTrueName,this.roleFormModel.LastUpdateDate=s.GloablValueType.$CurrentDate,this.editRoleModalTitle.value="新增 - 角色",this.showEditRole.value=!0}doShowRoleModule(e){this.selectRole=e,this.roleModuleTitle.value=`模块权限 - ${this.selectRole.RoleName}`,this.showRoleModule.value=!0,t.nextTick((()=>{this.loadModuleGridData({})}))}setRoleModuleIsChange(e){let t=!1;if(e.OrgIsChk!=e.IsChk&&(t=!0),e.OrgRoleOperates.length!=e.RoleOperates.length)t=!0;else{for(const i of e.OrgRoleOperates)if(0==e.RoleOperates.filter((e=>e==i)).length){t=!0;break}for(const i of e.RoleOperates)if(0==e.OrgRoleOperates.filter((e=>e==i)).length){t=!0;break}}e.IsChange=t}changeParentRoleModuleStatus(e){const t=this.moduleGrid.value.getDatas(),i=t.filter((t=>t.Id==e.PId&&t.IsChk==!e.IsChk));for(const o of i)o.IsChk=0!=e.IsChk||t.filter((e=>e.PId==o.Id&&1==e.IsChk)).length>0,this.setRoleModuleIsChange(o),this.changeParentRoleModuleStatus(o)}doShowImportRole(){this.showImportRole.value=!0,this.loadOriginPlatforms()}async loadOriginPlatforms(){const e=await this.platformApi.getEntities(i.QueryWrapper.create().ne("Id",this.selectedPlatform.Id));this.originPlatform.list=this.utilities.parseApiResult(e),this.originPlatform.list.length>0?this.originPlatform.selectedItem=this.originPlatform.list[0]:this.originPlatform.selectedItem={Id:0,PlatformAbbreviation:""},this.originPlatform.selectedId=this.originPlatform.selectedItem.Id,t.nextTick((()=>{this.loadOriginRoleGridData()}))}loadOriginRoleGridData(){const e=i.QueryWrapper.create().eq("PlatformId",this.originPlatform.selectedId).eq("RoleStatus",1).orderBy(["OrderNo"]);this.originRoleGrid.value.loadDataByQuery(e)}}const lt={style:{height:"650px","overflow-y":"auto",position:"relative"}},nt={class:"import-role",style:{height:"610px",position:"relative"}},at={style:{width:"100%",height:"100%"}},dt={style:{height:"530px","overflow-y":"auto"}};const ut=F(st,[["render",function(e,i,o,s,r,l){const n=t.resolveComponent("SelectPlatform"),a=t.resolveComponent("NvGrid"),d=t.resolveComponent("NvBox"),u=t.resolveComponent("Button"),h=t.resolveComponent("Modal"),p=t.resolveComponent("Option"),c=t.resolveComponent("Select"),m=t.resolveComponent("Spin"),f=t.resolveComponent("NvComForm"),g=t.resolveComponent("Form"),I=t.resolveComponent("NvPage");return t.openBlock(),t.createBlock(I,{gutter:8,class:"role"},{default:t.withCtx((()=>[t.createVNode(d,{width:"100%",title:"角色列表"},{default:t.withCtx((()=>[t.createVNode(a,{ref:"roleGrid",option:e.roleGridOption},{default:t.withCtx((()=>[t.createVNode(n,{onSelect:e.doPlatformListSelect},null,8,["onSelect"])])),_:1},8,["option"])])),_:1}),t.createVNode(h,{modelValue:e.showRoleModule,"onUpdate:modelValue":i[1]||(i[1]=t=>e.showRoleModule=t),draggable:"",mask:!0,"mask-closable":!1,width:1300,title:"模块权限",styles:{top:"3%"}},{footer:t.withCtx((()=>[t.createVNode(u,{type:"text",onClick:i[0]||(i[0]=t=>e.showRoleModule=!1)},{default:t.withCtx((()=>[t.createTextVNode("关闭")])),_:1}),t.createVNode(u,{type:"primary",loading:e.saveRoleModuleing,onClick:e.doSaveRoleModule},{default:t.withCtx((()=>[t.createTextVNode("保存")])),_:1},8,["loading","onClick"])])),default:t.withCtx((()=>[t.createElementVNode("div",lt,[t.createVNode(a,{ref:"moduleGrid",option:e.moduleGridOption},null,8,["option"])])])),_:1},8,["modelValue"]),t.createVNode(h,{modelValue:e.showImportRole,"onUpdate:modelValue":i[4]||(i[4]=t=>e.showImportRole=t),draggable:"",mask:!0,"mask-closable":!1,width:800,title:"引入角色",styles:{top:"3%"}},{footer:t.withCtx((()=>[t.createVNode(u,{type:"text",onClick:i[3]||(i[3]=t=>e.showImportRole=!1)},{default:t.withCtx((()=>[t.createTextVNode("关闭")])),_:1}),t.createVNode(u,{type:"primary",loading:e.saveingImportRole,onClick:e.doImportRole},{default:t.withCtx((()=>[t.createTextVNode("引入")])),_:1},8,["loading","onClick"])])),default:t.withCtx((()=>[t.createElementVNode("div",nt,[t.createElementVNode("div",at,[t.createVNode(a,{ref:"originRoleGrid",option:e.originRoleGridOption},{default:t.withCtx((()=>[t.createVNode(c,{modelValue:e.originPlatform.selectedId,"onUpdate:modelValue":i[2]||(i[2]=t=>e.originPlatform.selectedId=t),onOnChange:e.doChangeOriginPlatform,style:{width:"250px"}},{default:t.withCtx((()=>[(t.openBlock(!0),t.createElementBlock(t.Fragment,null,t.renderList(e.originPlatform.list,((i,o)=>(t.openBlock(),t.createBlock(p,{key:e.originPlatform.selectedId+""+o,value:i.Id},{default:t.withCtx((()=>[t.createTextVNode(t.toDisplayString(i.PlatformAbbreviation),1)])),_:2},1032,["value"])))),128))])),_:1},8,["modelValue","onOnChange"])])),_:1},8,["option"]),t.withDirectives(t.createVNode(m,{fix:""},null,512),[[t.vShow,e.saveingImportRole]])])])])),_:1},8,["modelValue"]),t.createVNode(h,{modelValue:e.showEditRole,"onUpdate:modelValue":i[6]||(i[6]=t=>e.showEditRole=t),draggable:"",mask:!0,"mask-closable":!1,width:620,title:e.editRoleModalTitle,styles:{top:"3%"}},{footer:t.withCtx((()=>[t.createVNode(u,{type:"text",onClick:i[5]||(i[5]=t=>e.showEditRole=!1)},{default:t.withCtx((()=>[t.createTextVNode("关闭")])),_:1}),t.createVNode(u,{type:"primary",loading:e.saveingRole,onClick:e.doSaveRole},{default:t.withCtx((()=>[t.createTextVNode("保存")])),_:1},8,["loading","onClick"])])),default:t.withCtx((()=>[t.createElementVNode("div",dt,[t.createVNode(g,{ref:"refRoleForm",model:e.roleFormModel,"label-width":90},{default:t.withCtx((()=>[t.createVNode(f,{formModel:e.roleFormModel,formItems:e.roleFormItems},null,8,["formModel","formItems"])])),_:1},8,["model"])])])),_:1},8,["modelValue","title"])])),_:1})}],["__scopeId","data-v-086753a2"]]),ht={linkParam:{type:String,default:""},operates:{type:String,default:"-"}},pt=t.defineComponent({name:"InstitutionType",components:{},emits:[""],props:ht,setup:(e,t)=>new ct(e,t)});class ct extends e.BaseInstance{constructor(e,o){super(),a(this,"props"),a(this,"ctx"),a(this,"institutionTypeApi",new I),a(this,"institutionTypeGrid",t.ref()),a(this,"institutionTypeGridOption",t.reactive({api:this.institutionTypeApi,setting:{isPagination:!0,pageSize:12,border:!0,searchConfig:{btnSpan:6,labelWidth:90,defaultShowSearch:!1},toolbarConfig:{isButtonGroup:!1},rowConfig:{isHover:!0}},searchOptions:[{field:"Name",title:"机构类型",type:"Input"},{field:"Code",title:"类型编码",type:"Input"}],toolbars:[{name:"add",text:"新增",onclick:()=>{this.doAddInstitutionType()}}],rightToolbars:[{name:"refresh"}],columns:[{colType:"seq"},{colType:"ed",field:"Name",title:"机构类型",width:300},{colType:"ed",field:"Code",title:"类型编码",width:200,align:"center"},{colType:"num",field:"OrderNo",title:"排序号",width:100,align:"center"},{colType:"ed",field:"Summary",title:"描述"},{title:"操作",width:140,rowButtons:[{name:"edit",text:"编辑",onclick:(e,t)=>{this.doEditInstitutionType(e)}},{name:"delete",text:"删除"}]}],event:{event_search:e=>{this.institutionTypeGrid.value.setPageIndex(1);const t=i.QueryWrapper.create().eq("1",1).orderBy(["OrderNo"]);this.utilities.isNull(e.Name)||t.like("Name",e.Name),this.utilities.isNull(e.Code)||t.like("Code",e.Code),this.institutionTypeGrid.value.loadDataByQuery(t)}}})),a(this,"refInstitutionTypeForm",t.ref()),a(this,"saveingInstitutionType",t.ref(!1)),a(this,"showEditInstitutionType",t.ref(!1)),a(this,"editInstitutionTypeModalTitle",t.ref("新增 - 机构类型")),a(this,"institutionTypeFormModel",t.reactive({Id:0,Code:"",Name:"",Summary:"",OrderNo:0})),a(this,"institutionTypeFormItems",t.reactive([{model:"Name",label:"类型名称",prop:"Name",type:"Input",span:24,rules:[{required:!0,message:"类型名称不能为空",trigger:"blur"}]},{model:"Code",label:"类型编码",prop:"Code",type:"Input",span:24,rules:[{required:!0,message:"类型编码不能为空",trigger:"blur"}]},{model:"Summary",label:"描述",prop:"Summary",type:"Input",span:24,inputProp:{type:"textarea",rows:4}},{model:"OrderNo",label:"排序号",prop:"OrderNo",type:"InputNumber",span:24}])),a(this,"doSaveInstitutionType",(async()=>{if(!(await this.refInstitutionTypeForm.value.validate()))return;this.saveingInstitutionType.value=!0;let e=await this.institutionTypeApi.save(this.institutionTypeFormModel);if(this.utilities.parseApiResult(e)<=0)return this.message.warning("保存失败,请稍后重试!"),void(this.saveingInstitutionType.value=!1);this.message.success("保存成功!"),this.institutionTypeGrid.value.refreshData(),this.saveingInstitutionType.value=!1,this.showEditInstitutionType.value=!1})),this.props=e,this.ctx=o,this.useBusinessInstitutionType()}useBusinessInstitutionType(){t.onMounted((()=>{this.loadInstitutionTypes()})),t.onUnmounted((()=>{}))}loadInstitutionTypes(){this.institutionTypeGrid.value.loadDataByQuery(i.QueryWrapper.create().eq("1",1).orderBy(["OrderNo"]))}doEditInstitutionType(e){this.institutionTypeFormModel.Id=e.Id,this.institutionTypeFormModel.Code=e.Code,this.institutionTypeFormModel.Name=e.Name,this.institutionTypeFormModel.Summary=e.Summary,this.institutionTypeFormModel.OrderNo=e.OrderNo,this.editInstitutionTypeModalTitle.value=`编辑 - ${e.Name}`,this.showEditInstitutionType.value=!0}doAddInstitutionType(){this.institutionTypeFormModel.Id=0,this.institutionTypeFormModel.Code="",this.institutionTypeFormModel.Name="",this.institutionTypeFormModel.Summary="",this.institutionTypeFormModel.OrderNo=0,this.editInstitutionTypeModalTitle.value="新增 - 机构类型",this.showEditInstitutionType.value=!0}}const mt={style:{height:"350px","overflow-y":"auto"}};const ft=F(pt,[["render",function(e,i,o,s,r,l){const n=t.resolveComponent("NvGrid"),a=t.resolveComponent("NvBox"),d=t.resolveComponent("NvComForm"),u=t.resolveComponent("Form"),h=t.resolveComponent("Button"),p=t.resolveComponent("Modal"),c=t.resolveComponent("NvPage");return t.openBlock(),t.createBlock(c,{gutter:8,class:"institutiontype"},{default:t.withCtx((()=>[t.createVNode(a,{title:"机构类型"},{default:t.withCtx((()=>[t.createVNode(n,{ref:"institutionTypeGrid",option:e.institutionTypeGridOption},null,8,["option"])])),_:1}),t.createVNode(p,{modelValue:e.showEditInstitutionType,"onUpdate:modelValue":i[1]||(i[1]=t=>e.showEditInstitutionType=t),draggable:"",mask:!0,"mask-closable":!1,width:450,title:e.editInstitutionTypeModalTitle},{footer:t.withCtx((()=>[t.createVNode(h,{type:"text",onClick:i[0]||(i[0]=t=>e.showEditInstitutionType=!1)},{default:t.withCtx((()=>[t.createTextVNode("关闭")])),_:1}),t.createVNode(h,{type:"primary",loading:e.saveingInstitutionType,onClick:e.doSaveInstitutionType},{default:t.withCtx((()=>[t.createTextVNode("保存")])),_:1},8,["loading","onClick"])])),default:t.withCtx((()=>[t.createElementVNode("div",mt,[t.createVNode(u,{ref:"refInstitutionTypeForm",model:e.institutionTypeFormModel,"label-width":90},{default:t.withCtx((()=>[t.createVNode(d,{formModel:e.institutionTypeFormModel,formItems:e.institutionTypeFormItems},null,8,["formModel","formItems"])])),_:1},8,["model"])])])),_:1},8,["modelValue","title"])])),_:1})}],["__scopeId","data-v-947fe129"]]),gt={linkParam:{type:String,default:""},operates:{type:String,default:"-"}},It=t.defineComponent({name:"Institution",components:{SelectPlatform:Se},emits:[""],props:gt,setup:(e,t)=>new vt(e,t)});class vt extends e.BaseInstance{constructor(e,i){super(),a(this,"props"),a(this,"ctx"),a(this,"institutionTypeApi",new I),a(this,"institutioninforApi",new m),a(this,"institutionPlatformApi",new f),a(this,"platformApi",new C),a(this,"institutionTreeApi",new g),a(this,"roleApi",new N),a(this,"enterpriseApi",new x),a(this,"selectedPlatform"),a(this,"institutionTypes",t.ref([])),a(this,"enterprises",[]),a(this,"institutionWidth",t.ref("calc(100% - 45px)")),a(this,"institutionGrid",t.ref()),a(this,"institutionGridOption",t.reactive({api:this.institutioninforApi,setting:{searchConfig:{btnSpan:6,labelWidth:120,defaultShowSearch:!1},toolbarConfig:{isButtonGroup:!1},rowConfig:{isHover:!0}},searchOptions:[{field:"InstitutionName",title:"机构名称",type:"Input"},{field:"InstitutionAbbreviation",title:"机构简称",type:"Input"},{field:"InstitutionCode",title:"机构编码",type:"Input"}],toolbars:[{name:"add",onclick:()=>{this.doAddInstitution()}},{name:"importInstitution",type:"default",icon:"md-arrow-round-up",text:"引入",onclick:()=>{this.doShowImportInstitution()}}],rightToolbars:[{name:"refresh"}],columns:[{colType:"seq"},{colType:"ro",field:"Id",title:"ID",width:80,align:"center"},{colType:"ed",field:"InstitutionName",title:"机构名称",minWidth:250},{colType:"ed",field:"InstitutionAbbreviation",title:"机构简称",minWidth:200},{colType:"ro",field:"InstitutionCode",title:"机构编码",align:"center",width:140},{colType:"ro",field:"EnterpriseId",title:"所属企业",align:"center",width:220,format:(e,t)=>{const i=t.row.EnterpriseId;if(this.utilities.isNull(i))return"";const o=this.enterprises.filter((e=>e.Id==i));return 0==o.length?`${i}`:o[0].EnterpriseName}},{colType:"ed",field:"InstitutionTypeCode",title:"机构类型",width:160,align:"center",format:(e,t)=>{const i=t.row.InstitutionTypeCode,o=this.institutionTypes.value.filter((e=>e.Code==i));return 0==o.length?i:o[0].Name}},{colType:"num",field:"OrderNo",title:"排序号",width:90,align:"center"},{title:"操作",width:240,rowButtons:[{name:"edit",text:"编辑",onclick:(e,t)=>{this.doEditInstitution(e)}},{name:"roles",text:"绑定角色",onclick:(e,t)=>{this.doShowBindRole(e)}},{name:"delete",text:"移除",onclick:(e,t)=>{this.doRemoveInstitution(e)}},{name:"import",text:"->",onclick:(e,t)=>{this.doAddNode(e)}}]}],event:{event_search:e=>{this.loadInstitutionGridData(this.selectedPlatform.Id,e.InstitutionCode,e.InstitutionName,e.InstitutionAbbreviation)}}})),a(this,"doPlatformListSelect",(async e=>{this.selectedPlatform=e,await this.loadEnterprises(),this.loadInstitutionGridData(this.selectedPlatform.Id,"","",""),this.loadInstitutionTree()})),a(this,"doWidthChange",(e=>{this.institutionWidth.value=e?"calc(100% - 350px)":"calc(100% - 45px)"})),a(this,"saveingInstitution",t.ref(!1)),a(this,"showEditInstitution",t.ref(!1)),a(this,"editInstitutionTitle",t.ref("新增 - 机构")),a(this,"institutionFormModel",t.reactive({Id:0,EnterpriseId:0,InstitutionPlatformId:0,InstitutionCode:"",InstitutionName:"",InstitutionAbbreviation:"",InstitutionTypeCode:"",OrderNo:1,LastUpdateUserId:"",LastUpdateUserName:"",LastUpdateDate:""})),a(this,"institutionFormItems",t.reactive([{model:"InstitutionName",label:"机构名称",prop:"InstitutionName",type:"Input",span:24,inputProp:{placeholder:"请输入机构名称"}},{model:"InstitutionAbbreviation",label:"机构简称",prop:"InstitutionAbbreviation",type:"Input",span:24,inputProp:{placeholder:"请输入机构简称"}},{model:"InstitutionTypeCode",label:"机构类型",prop:"InstitutionTypeCode",type:"Select",span:24,selectProp:{datas:[],transfer:!0,onChange:(e,t)=>{this.utilities.isNull(e)||(this.institutionFormModel.InstitutionCode=e+"-")}}},{model:"EnterpriseId",label:"所属企业",prop:"EnterpriseId",type:"Select",span:24,selectProp:{datas:[],transfer:!0}},{model:"InstitutionCode",label:"机构编码",prop:"InstitutionCode",type:"Input",span:24,inputProp:{placeholder:"请输入机构编码"}},{model:"OrderNo",label:"排序号",prop:"OrderNo",type:"InputNumber",span:24}])),a(this,"doSaveInstitution",(async()=>{this.saveingInstitution.value=!0;let e=await this.institutioninforApi.save({Id:this.institutionFormModel.Id,EnterpriseId:this.institutionFormModel.EnterpriseId,InstitutionName:this.institutionFormModel.InstitutionName,LastUpdateUserId:this.institutionFormModel.LastUpdateUserId,LastUpdateUserName:this.institutionFormModel.LastUpdateUserName,LastUpdateDate:this.institutionFormModel.LastUpdateDate}),t=this.utilities.parseApiResult(e);if(t<=0)return this.message.warning("保存失败,请稍后重试!"),void(this.saveingInstitution.value=!1);await this.institutionPlatformApi.save({Id:this.institutionFormModel.InstitutionPlatformId,InstitutionId:this.institutionFormModel.Id<=0?t:this.institutionFormModel.Id,PlatformId:this.selectedPlatform.Id,InstitutionCode:this.institutionFormModel.InstitutionCode,InstitutionAbbreviation:this.institutionFormModel.InstitutionAbbreviation,InstitutionTypeCode:this.institutionFormModel.InstitutionTypeCode,OrderNo:this.institutionFormModel.OrderNo,LastUpdateUserId:this.institutionFormModel.LastUpdateUserId,LastUpdateUserName:this.institutionFormModel.LastUpdateUserName,LastUpdateDate:this.institutionFormModel.LastUpdateDate}),this.message.success("保存成功!"),this.institutionGrid.value.refreshData(),this.saveingInstitution.value=!1,this.showEditInstitution.value=!1})),a(this,"showImportInstitution",t.ref(!1)),a(this,"saveingImportInstitution",t.ref(!1)),a(this,"originPlatform",t.reactive({list:[],selectedItem:{Id:0,PlatformName:""},selectedId:0})),a(this,"originInstitutionGrid",t.ref()),a(this,"originInstitutionGridOption",t.reactive({api:this.institutioninforApi,setting:{searchConfig:{btnSpan:8,labelWidth:120,defaultShowSearch:!1},toolbarConfig:{isButtonGroup:!1},rowConfig:{isHover:!0}},searchOptions:[{field:"InstitutionName",title:"机构名称",type:"Input",span:12},{field:"InstitutionAbbreviation",title:"机构简称",type:"Input",span:12},{field:"InstitutionCode",title:"机构编码",type:"Input",span:12}],rightToolbars:[{name:"refresh"}],columns:[{colType:"seq"},{colType:"checkbox"},{colType:"ro",field:"Id",title:"ID",width:80},{colType:"ed",field:"InstitutionName",title:"机构名称",minWidth:200},{colType:"ed",field:"InstitutionAbbreviation",title:"机构简称",width:200},{colType:"ro",field:"InstitutionCode",title:"机构编码",align:"center",width:180},{colType:"ed",field:"InstitutionTypeCode",title:"机构类型",width:160,align:"center",format:(e,t)=>{const i=t.row.InstitutionTypeCode,o=this.institutionTypes.value.filter((e=>e.Code==i));return 0==o.length?i:o[0].Name}}],event:{event_search:e=>{this.loadOriginInstitutionGridData(this.selectedPlatform.Id,e.InstitutionCode,e.InstitutionName,e.InstitutionAbbreviation)}}})),a(this,"doChangeOriginPlatform",(()=>{const e=this.originPlatform.list.filter((e=>e.Id==this.originPlatform.selectedId));e.length>0?this.originPlatform.selectedItem=e[0]:this.originPlatform.selectedItem={Id:0,PlatformName:""},this.loadOriginInstitutionGridData(this.originPlatform.selectedId,"","","")})),a(this,"doImportInstitution",(async()=>{const e=this.originInstitutionGrid.value.getCheckboxDatas();if(e.length<=0)return void this.message.warning("请选择源平台机构信息");this.saveingImportInstitution.value=!0;let t=[];for(const r of e)t.push({InstitutionId:r.Id,PlatformId:this.selectedPlatform.Id,InstitutionCode:r.InstitutionCode,InstitutionAbbreviation:r.InstitutionAbbreviation,InstitutionTypeCode:r.InstitutionTypeCode,OrderNo:r.OrderNo,LastUpdateUserId:s.GloablValueType.$LoginUserId,LastUpdateUserName:s.GloablValueType.$LoginUserTrueName,LastUpdateDate:s.GloablValueType.$CurrentDate});const i=await this.institutionPlatformApi.saves(t),o=this.utilities.parseApiResult(i);this.saveingImportInstitution.value=!1,o?(this.showImportInstitution.value=!1,this.institutionGrid.value.refreshData(),this.message.success("导入成功")):this.message.warning("导入失败, 请稍后重试")})),a(this,"selectedInstitutionTree"),a(this,"insertRecords",[]),a(this,"institutionTree",t.ref([])),a(this,"saveingInstitutionTree",t.ref(!1)),a(this,"loadingInstitutionTree",t.ref(!1)),a(this,"renderContent",((e,{root:t,node:i,data:o})=>e("span",{style:{display:"inline-block",width:"100%",paddingLeft:"4px",boxSizing:"content-box",border:o.intoDrag?"1px dashed #2d8cf0":"0px"}},[e("span",[e("span",{style:{fontWeight:this.utilities.isNull(o.FakeId)?"normal":"bold"}},this.utilities.getValueNotNull(o.title,"[未知节点]"))]),e("span",{style:{display:"inline-block",float:"right",marginRight:"8px"}},[e(r.Icon,{type:"md-trash",style:{fontSize:"18px",color:"rgb(225, 76, 23)"},onClick:()=>{this.doDeleteNode(t,i,o)}})])]))),a(this,"doTreeSelectChange",(e=>{e.length>0?this.selectedInstitutionTree=e[0]:this.selectedInstitutionTree=void 0})),a(this,"loadInstitutionTree",(async()=>{this.insertRecords=[],this.selectedInstitutionTree=void 0,this.loadingInstitutionTree.value=!0;const e=await this.institutionTreeApi.getInstitutionTrees(this.selectedPlatform.Id),t=this.utilities.parseApiResult(e);this.loadingInstitutionTree.value=!1;const i=e=>{const o=t.filter((t=>t.PId==e));for(const t of o){t.title=t.InstitutionAbbreviation,t.expand=!0;const e=i(t.Id);e.length>0&&(t.children=e)}return o};this.institutionTree.value=i(0)})),a(this,"doSaveInstitutionTree",(async()=>{if(0==this.insertRecords.length)return void this.message.warning("没有需要保存的数据!");this.saveingInstitutionTree.value=!0;let e=await this.institutionTreeApi.saveInstitutionTrees(this.insertRecords),t=this.utilities.parseApiResult(e);this.saveingInstitutionTree.value=!1,t>0?(this.message.success("保存成功"),this.loadInstitutionTree()):this.message.error("操作异常, 请稍后重试!")})),a(this,"selectInstitution"),a(this,"showBindRole",t.ref(!1)),a(this,"saveingBindRole",t.ref(!1)),a(this,"roleGrid",t.ref()),a(this,"roleGridOption",t.reactive({api:this.roleApi,setting:{border:!0,toolbarConfig:{isButtonGroup:!1},rowConfig:{isHover:!0}},rightToolbars:[{name:"refresh"}],columns:[{colType:"seq"},{colType:"ro",width:50,align:"center",format:(e,t)=>e(r.Checkbox,{style:{"margin-right":"0px"},"model-value":t.row.IsChk,"onUpdate:model-value":e=>{t.row.IsChk=e}})},{colType:"ed",field:"RoleName",title:"角色名称",width:200},{colType:"ed",field:"RoleCode",title:"角色编码",width:180,align:"center"},{colType:"ed",field:"RoleDesc",title:"角色描述"},{colType:"num",field:"OrderNo",title:"排序号",width:100,align:"center"}]})),a(this,"doSaveBindRole",(async()=>{const e=this.roleGrid.value.getDatas().filter((e=>1==e.IsChk)).map((e=>e.Id)).join(",");this.saveingBindRole.value=!0;const t=await this.institutionPlatformApi.save({Id:this.selectInstitution.InstitutionPlatformId,RoleIds:e}),i=this.utilities.parseApiResult(t);this.saveingBindRole.value=!1,i>0?(this.message.success("保存成功"),this.showBindRole.value=!1,this.institutionGrid.value.refreshData()):this.message.error("保存失败,稍后重试!")})),this.props=e,this.ctx=i,this.useBusinessInstitutionType(),this.useBusinessInstitution()}useBusinessInstitutionType(){t.onMounted((()=>{})),t.onUnmounted((()=>{})),this.getInstitutionTypes()}async getInstitutionTypes(){const e=await this.institutionTypeApi.getEntities(i.QueryWrapper.create().eq("1",1).orderBy(["OrderNo"]));this.institutionTypes.value=this.utilities.parseApiResult(e),this.setInstitutionTypeCodeDatas()}async loadEnterprises(){const e=await this.enterpriseApi.getEntities(i.QueryWrapper.create().eq("1","1"));this.enterprises=this.utilities.parseApiResult(e),this.setEnterpriseDatas()}useBusinessInstitution(){t.onMounted((()=>{})),t.onUnmounted((()=>{}))}loadInstitutionGridData(e,t,i,o){this.institutionGrid.value.loadData((async s=>{const r=await this.institutioninforApi.getInstitutioninfors(e,t,i,o),l=this.utilities.parseApiResult(r);s.success(l)}))}async doRemoveInstitution(e){this.modal.confirm({title:"提示",content:"该操作将执行以下步骤 <br/> 1. 移除平台与机构的关联。 <br/> 2. 如果机构不存在于其他平台的关联,则会删除该机构。 <br/> 3. 移除该机构对应的机构树。 <br/> 确定要执行该操作吗?",onOk:async()=>{let t=await this.institutionPlatformApi.deleteByInsIdAndPlatformId(e.Id,this.selectedPlatform.Id),o=this.utilities.parseApiResult(t);o<=0?this.message.error("操作失败, 请稍后重试!"):(t=await this.institutionPlatformApi.getCount(i.QueryWrapper.create().eq("InstitutionId",e.Id)),o=this.utilities.parseApiResult(t),0==o&&(t=await this.institutioninforApi.delete(e.Id),o=this.utilities.parseApiResult(t)),t=await this.institutionTreeApi.deleteInstitutionTreeByInstitutionIdAndPlatformId(e.Id,this.selectedPlatform.Id),o=this.utilities.parseApiResult(t),this.message.success("操作成功"),this.institutionGrid.value.refreshData(),o>0&&this.loadInstitutionTree())}})}setInstitutionTypeCodeDatas(){const e=[];for(const t of this.institutionTypes.value)e.push({text:t.Name,value:t.Code});this.institutionFormItems[2].selectProp.datas=e}setEnterpriseDatas(){const e=[];for(const t of this.enterprises.filter((e=>e.PlatformId==this.selectedPlatform.Id)))e.push({text:t.EnterpriseName,value:t.Id});this.institutionFormItems[3].selectProp.datas=e}doEditInstitution(e){this.institutionFormModel.Id=e.Id,this.institutionFormModel.EnterpriseId=e.EnterpriseId,this.institutionFormModel.InstitutionPlatformId=e.InstitutionPlatformId,this.institutionFormModel.InstitutionCode=e.InstitutionCode,this.institutionFormModel.InstitutionName=e.InstitutionName,this.institutionFormModel.InstitutionAbbreviation=e.InstitutionAbbreviation,this.institutionFormModel.InstitutionTypeCode=e.InstitutionTypeCode,this.institutionFormModel.OrderNo=e.OrderNo,this.institutionFormModel.LastUpdateUserId=s.GloablValueType.$LoginUserId,this.institutionFormModel.LastUpdateUserName=s.GloablValueType.$LoginUserTrueName,this.institutionFormModel.LastUpdateDate=s.GloablValueType.$CurrentDate,this.editInstitutionTitle.value="编辑 - "+e.InstitutionName,this.showEditInstitution.value=!0}doAddInstitution(){this.institutionFormModel.Id=0,this.institutionFormModel.EnterpriseId=0,this.institutionFormModel.InstitutionPlatformId=0,this.institutionFormModel.InstitutionCode="",this.institutionFormModel.InstitutionName="",this.institutionFormModel.InstitutionAbbreviation="",this.institutionFormModel.InstitutionTypeCode="",this.institutionFormModel.OrderNo=1,this.institutionFormModel.LastUpdateUserId=s.GloablValueType.$LoginUserId,this.institutionFormModel.LastUpdateUserName=s.GloablValueType.$LoginUserTrueName,this.institutionFormModel.LastUpdateDate=s.GloablValueType.$CurrentDate,this.editInstitutionTitle.value="新增 - 机构",this.showEditInstitution.value=!0}doShowImportInstitution(){this.showImportInstitution.value=!0,this.loadOriginPlatforms()}async loadOriginPlatforms(){const e=await this.platformApi.getEntities(i.QueryWrapper.create().ne("Id",this.selectedPlatform.Id));this.originPlatform.list=this.utilities.parseApiResult(e),this.originPlatform.list.length>0?this.originPlatform.selectedItem=this.originPlatform.list[0]:this.originPlatform.selectedItem={Id:0,PlatformName:""},this.originPlatform.selectedId=this.originPlatform.selectedItem.Id,t.nextTick((()=>{this.loadOriginInstitutionGridData(this.originPlatform.selectedId,"","","")}))}loadOriginInstitutionGridData(e,t,i,o){this.originInstitutionGrid.value.loadData((async s=>{const r=await this.institutioninforApi.getInstitutioninfors(e,t,i,o),l=this.utilities.parseApiResult(r);s.success(l)}))}doAddNode(e){if(this.utilities.isNull(this.selectedInstitutionTree)){const t={Id:-1*(Date.now()-parseInt((Date.now()+"").substring(0,4)+"000000000")),RootId:0,PId:0,NodeLevel:1,ParentPath:"/",FakeId:this.utilities.getUniqueCode(),FakePId:null,PlatformId:this.selectedPlatform.Id,InstitutionId:e.Id,OrderNo:e.OrderNo,InstitutionCode:e.InstitutionCode,InstitutionName:e.InstitutionName,InstitutionAbbreviation:e.InstitutionAbbreviation,InstitutionTypeCode:e.InstitutionTypeCode,title:e.InstitutionAbbreviation,expand:!0};this.institutionTree.value.push(t),this.insertRecords.push(t)}else{this.utilities.isNull(this.selectedInstitutionTree.children)&&(this.selectedInstitutionTree.children=[]);const t=this.selectedInstitutionTree,i={Id:-1*(Date.now()-parseInt((Date.now()+"").substring(0,4)+"000000000")),RootId:t.RootId,PId:t.Id,NodeLevel:t.NodeLevel+1,ParentPath:t.ParentPath+t.Id+"/",FakeId:this.utilities.getUniqueCode(),FakePId:t.Id>0?null:t.FakeId,InstitutionId:e.Id,PlatformId:this.selectedPlatform.Id,OrderNo:e.OrderNo,InstitutionCode:e.InstitutionCode,InstitutionName:e.InstitutionName,InstitutionAbbreviation:e.InstitutionAbbreviation,InstitutionTypeCode:e.InstitutionTypeCode,title:e.InstitutionAbbreviation,expand:!0};t.children.push(i),this.insertRecords.push(i)}}doDeleteNode(e,t,i){this.modal.confirm({title:"提示",content:i.Id>0?"该操作将执行以下步骤 <br/> 1. 将该节点的子节点移动到该节点的父节点下 <br/> 2. 删除该节点 <br/> 确定要执行该操作吗?":"确定要移除该节点及其子节点吗?",onOk:async()=>{if(i.Id>0){const e=await this.institutionTreeApi.deleteInstitutionTree(i.Id);this.utilities.parseApiResult(e)>0?(this.message.success("操作成功"),this.loadInstitutionTree()):this.message.error("操作失败, 请稍后重试!")}else{const o=e.find((e=>e===t)).parent;if(this.utilities.isNull(o)){const e=this.institutionTree.value.indexOf(i);this.institutionTree.value.splice(e,1)}else{const t=e.find((e=>e.nodeKey===o)).node,s=t.children.indexOf(i);t.children.splice(s,1)}const s=e=>{for(const t of e){const e=this.insertRecords.findIndex((e=>e.FakeId==i.FakeId));this.insertRecords.splice(e,1),!this.utilities.isNull(t.children)&&t.children.length>0&&s(t.children)}};s([i])}}})}doShowBindRole(e){this.selectInstitution=e,this.showBindRole.value=!0,this.loadBindRole()}loadBindRole(){this.roleGrid.value.loadData((async e=>{const t=i.QueryWrapper.create().eq("PlatformId",this.selectedPlatform.Id).eq("RoleStatus",1).orderBy(["OrderNo"]),o=await this.roleApi.getEntities(t),s=this.utilities.parseApiResult(o),r=this.selectInstitution.RoleIds,l=this.utilities.isNull(r)?[]:r.split(",");for(const i of s)i.IsChk=-1!=l.findIndex((e=>e==i.Id));e.success(s)}))}}const yt={style:{width:"100%",height:"100%",position:"relative"}},wt={style:{height:"500px","overflow-y":"auto"}},Ct={class:"import-institution",style:{height:"600px","overflow-y":"auto",position:"relative"}},Nt={style:{width:"100%",height:"100%"}},Tt={style:{height:"calc(100%)"}},Mt={style:{height:"610px","overflow-y":"auto",position:"relative"}};const Pt=F(It,[["render",function(e,i,o,s,r,l){const n=t.resolveComponent("SelectPlatform"),a=t.resolveComponent("NvGrid"),d=t.resolveComponent("NvBox"),u=t.resolveComponent("Tree"),h=t.resolveComponent("Spin"),p=t.resolveComponent("Button"),c=t.resolveComponent("Space"),m=t.resolveComponent("NvComForm"),f=t.resolveComponent("Form"),g=t.resolveComponent("Modal"),I=t.resolveComponent("Option"),v=t.resolveComponent("Select"),y=t.resolveComponent("NvPage");return t.openBlock(),t.createBlock(y,{gutter:8,class:"institution"},{default:t.withCtx((()=>[t.createVNode(d,{width:e.institutionWidth,title:"机构列表"},{default:t.withCtx((()=>[t.createVNode(a,{ref:"institutionGrid",option:e.institutionGridOption},{default:t.withCtx((()=>[t.createVNode(n,{onSelect:e.doPlatformListSelect},null,8,["onSelect"])])),_:1},8,["option"])])),_:1},8,["width"]),t.createVNode(d,{width:"350px",title:"组织机构树",showArrow:!0,expand:!1,onChange:e.doWidthChange},{footer:t.withCtx((()=>[t.createVNode(c,null,{default:t.withCtx((()=>[t.createVNode(p,{type:"text",onClick:e.loadInstitutionTree},{default:t.withCtx((()=>[t.createTextVNode("刷新")])),_:1},8,["onClick"]),t.createVNode(p,{type:"primary",loading:e.saveingInstitutionTree,onClick:e.doSaveInstitutionTree},{default:t.withCtx((()=>[t.createTextVNode("保存")])),_:1},8,["loading","onClick"])])),_:1})])),default:t.withCtx((()=>[t.createElementVNode("div",yt,[t.createVNode(u,{data:e.institutionTree,render:e.renderContent,class:"tree-render",onOnSelectChange:e.doTreeSelectChange},null,8,["data","render","onOnSelectChange"]),t.withDirectives(t.createVNode(h,{fix:""},{default:t.withCtx((()=>[t.createTextVNode("正在保存中")])),_:1},512),[[t.vShow,e.saveingInstitutionTree]]),t.withDirectives(t.createVNode(h,{fix:""},{default:t.withCtx((()=>[t.createTextVNode("数据加载中")])),_:1},512),[[t.vShow,e.loadingInstitutionTree]])])])),_:1},8,["onChange"]),t.createVNode(g,{modelValue:e.showEditInstitution,"onUpdate:modelValue":i[1]||(i[1]=t=>e.showEditInstitution=t),draggable:"",mask:!0,"mask-closable":!1,width:450,title:e.editInstitutionTitle,styles:{top:"3%"}},{footer:t.withCtx((()=>[t.createVNode(p,{type:"text",onClick:i[0]||(i[0]=t=>e.showEditInstitution=!1)},{default:t.withCtx((()=>[t.createTextVNode("关闭")])),_:1}),t.createVNode(p,{type:"primary",loading:e.saveingInstitution,onClick:e.doSaveInstitution},{default:t.withCtx((()=>[t.createTextVNode("保存")])),_:1},8,["loading","onClick"])])),default:t.withCtx((()=>[t.createElementVNode("div",wt,[t.createVNode(f,{model:e.institutionFormModel,"label-width":90},{default:t.withCtx((()=>[t.createVNode(m,{ref:"institutionComForm",formModel:e.institutionFormModel,formItems:e.institutionFormItems},null,8,["formModel","formItems"])])),_:1},8,["model"])])])),_:1},8,["modelValue","title"]),t.createVNode(g,{modelValue:e.showImportInstitution,"onUpdate:modelValue":i[4]||(i[4]=t=>e.showImportInstitution=t),draggable:"",mask:!0,"mask-closable":!1,width:1200,title:"引入机构",styles:{top:"3%"}},{footer:t.withCtx((()=>[t.createVNode(p,{type:"text",onClick:i[3]||(i[3]=t=>e.showImportInstitution=!1)},{default:t.withCtx((()=>[t.createTextVNode("关闭")])),_:1}),t.createVNode(p,{type:"primary",loading:e.saveingImportInstitution,onClick:e.doImportInstitution},{default:t.withCtx((()=>[t.createTextVNode("引入")])),_:1},8,["loading","onClick"])])),default:t.withCtx((()=>[t.createElementVNode("div",Ct,[t.createElementVNode("div",Nt,[t.createElementVNode("div",Tt,[t.createVNode(a,{ref:"originInstitutionGrid",option:e.originInstitutionGridOption},{default:t.withCtx((()=>[t.createVNode(v,{modelValue:e.originPlatform.selectedId,"onUpdate:modelValue":i[2]||(i[2]=t=>e.originPlatform.selectedId=t),onOnChange:e.doChangeOriginPlatform,style:{width:"250px"}},{default:t.withCtx((()=>[(t.openBlock(!0),t.createElementBlock(t.Fragment,null,t.renderList(e.originPlatform.list,((i,o)=>(t.openBlock(),t.createBlock(I,{key:e.originPlatform.selectedId+""+o,value:i.Id},{default:t.withCtx((()=>[t.createTextVNode(t.toDisplayString(i.PlatformName),1)])),_:2},1032,["value"])))),128))])),_:1},8,["modelValue","onOnChange"])])),_:1},8,["option"])]),t.withDirectives(t.createVNode(h,{fix:""},null,512),[[t.vShow,e.saveingImportInstitution]])])])])),_:1},8,["modelValue"]),t.createVNode(g,{modelValue:e.showBindRole,"onUpdate:modelValue":i[6]||(i[6]=t=>e.showBindRole=t),draggable:"",mask:!0,"mask-closable":!1,width:900,title:"绑定角色",styles:{top:"3%"}},{footer:t.withCtx((()=>[t.createVNode(p,{type:"text",onClick:i[5]||(i[5]=t=>e.showBindRole=!1)},{default:t.withCtx((()=>[t.createTextVNode("关闭")])),_:1}),t.createVNode(p,{type:"primary",loading:e.saveingBindRole,onClick:e.doSaveBindRole},{default:t.withCtx((()=>[t.createTextVNode("保存")])),_:1},8,["loading","onClick"])])),default:t.withCtx((()=>[t.createElementVNode("div",Mt,[t.createVNode(a,{ref:"roleGrid",option:e.roleGridOption},null,8,["option"]),t.withDirectives(t.createVNode(h,{fix:""},null,512),[[t.vShow,e.saveingBindRole]])])])),_:1},8,["modelValue"])])),_:1})}],["__scopeId","data-v-42799ba1"]]),bt=t.defineComponent({name:"LoginLog",components:{},emits:[""],props:{},setup:(e,t)=>new xt(e,t)});class xt extends e.BaseInstance{constructor(e,o){super(),a(this,"props"),a(this,"ctx"),a(this,"loginLogApi",new S),a(this,"platformId",0),a(this,"userId",0),a(this,"loginLogGrid",t.ref()),a(this,"loginLogGridOption",t.reactive({api:this.loginLogApi,setting:{border:!0,searchConfig:{btnSpan:12,labelWidth:90,defaultShowSearch:!1},toolbarConfig:{isButtonGroup:!1},rowConfig:{isHover:!0},isPagination:!0,pageSize:10},searchOptions:[{field:"LoginDate",title:"登录日期",type:"DatePicker",span:12},{field:"IPAddress",title:"登录IP",type:"Input",span:12}],toolbars:[{name:"refresh",type:"primary"}],columns:[{colType:"seq"},{colType:"ro",field:"LoginType",title:"登录方式",align:"center"},{colType:"ro",field:"LoginDate",title:"登录日期",align:"center",format:(e,t)=>{const i=t.row.LoginDate;return this.utilities.isNull(i)?"":i}},{colType:"ro",field:"IPAddress",title:"登录IP",align:"center"}],event:{event_search:e=>{this.loadLoginLog(this.platformId,this.userId,e)}}})),a(this,"loadLoginLog",((e,t,o={})=>{this.platformId=e,this.userId=t;const s=i.QueryWrapper.create();s.eq("PlatformId",this.platformId).eq("UserId",this.userId).orderBy(["Id"],!1),this.utilities.isNull(o.IPAddress)||s.like("IPAddress",o.IPAddress);const r=this.utilities.dateHelper.format(o.LoginDate,"YYYY-MM-DD");this.utilities.isNull(o.LoginDate)||s.between("LoginDate",`${r} 00:00:00`,`${r} 23:59:59`),this.loginLogGrid.value.loadDataByQuery(s)})),this.props=e,this.ctx=o}}const St={class:"loginLog"};const At=F(bt,[["render",function(e,i,o,s,r,l){const n=t.resolveComponent("NvGrid");return t.openBlock(),t.createElementBlock("div",St,[t.createVNode(n,{ref:"loginLogGrid",option:e.loginLogGridOption},null,8,["option"])])}],["__scopeId","data-v-968675c2"]]);function Ut(e,t){for(var i=0;i<t.length;i++){var o=t[i];o.enumerable=o.enumerable||!1,o.configurable=!0,"value"in o&&(o.writable=!0),Object.defineProperty(e,"symbol"==typeof(s=function(e,t){if("object"!=typeof e||null===e)return e;var i=e[Symbol.toPrimitive];if(void 0!==i){var o=i.call(e,"string");if("object"!=typeof o)return o;throw new TypeError("@@toPrimitive must return a primitive value.")}return String(e)}(o.key))?s:String(s),o)}var s}function Vt(e,t,i){return t&&Ut(e.prototype,t),i&&Ut(e,i),Object.defineProperty(e,"prototype",{writable:!1}),e}function Rt(e,t){e.prototype=Object.create(t.prototype),e.prototype.constructor=e,Ft(e,t)}function Ft(e,t){return(Ft=Object.setPrototypeOf?Object.setPrototypeOf.bind():function(e,t){return e.__proto__=t,e})(e,t)}var kt=function(e){function t(){return e.apply(this,arguments)||this}Rt(t,e);var o=t.prototype;return o.SignVerification=function(e){return this.send({taskKey:e},"SignVerification",i.Methods.GET)},o.GetUserSealCloudInfo=function(e,t){return this.send({businessKey:e,userSealKey:t},"GetUserSealCloudInfo",i.Methods.GET)},o.SendCloudSignTask=function(e,t,o,s){return this.send({BusinessKey:e,UserSealKey:t,UserPin:o,SignContent:s},"SendCloudSignTask",i.Methods.POST)},o.SendCloudVerificationSign=function(e,t,o){return this.send({businessKey:e,taskKey:t,SignContent:o},"SendCloudVerificationSign",i.Methods.GET)},Vt(t,[{key:"ControllerName",get:function(){return"SignTaskInfo"}}]),t}(function(e){function t(){return e.apply(this,arguments)||this}return Rt(t,e),Vt(t,[{key:"ProxyName",get:function(){return"CASignApi"}}]),t}(i.BaseOldApi));const Ot={linkParam:{type:String,default:""},operates:{type:String,default:"-"}},Et=t.defineComponent({name:"Userinfor",components:{SelectPlatform:Se,LoginLog:At,BaseLogin:Me},emits:[""],props:Ot,setup:(e,t)=>new Gt(e,t)});class Gt extends e.BaseInstance{constructor(e,o){super(),a(this,"props"),a(this,"ctx"),a(this,"platformApi",new C),a(this,"institutionTreeApi",new g),a(this,"userinforApi",new M),a(this,"institutionUserApi",new v),a(this,"userRoleApi",new P),a(this,"institutionPlatformApi",new f),a(this,"roleApi",new N),a(this,"oauthApi",new b),a(this,"userSignApi",new A),a(this,"signTaskInfoApi",new kt),a(this,"selectedPlatform"),a(this,"selectedInsTree"),a(this,"institutionTree",t.ref([])),a(this,"loadingInstitutionTree",t.ref(!1)),a(this,"doChangePlatform",(e=>{this.selectedPlatform=e,this.loadInsTree()})),a(this,"renderInsTreeContent",((e,{root:t,node:i,data:o})=>e("span",{style:{display:"inline-block",paddingLeft:"4px",boxSizing:"content-box",border:o.intoDrag?"1px dashed #2d8cf0":"0px"}},[e("span",[e("span",{style:{fontWeight:this.utilities.isNull(o.FakeId)?"normal":"bold"}},this.utilities.getValueNotNull(o.title,"[未知节点]"))])]))),a(this,"doChangeInsTree",(e=>{e.length>0&&(this.selectedInsTree=e[0],this.loadInstitutionTreeUsers({}))})),a(this,"doRefreshInsTree",(()=>{this.loadInsTree()})),a(this,"userBoxWidth",t.ref("calc(100% - 300px)")),a(this,"insTreeUserGrid",t.ref()),a(this,"insTreeUserGridOption",t.reactive({api:this.userinforApi,setting:{border:!0,searchConfig:{btnSpan:6,labelWidth:90,defaultShowSearch:!1},toolbarConfig:{isButtonGroup:!1},rowConfig:{isHover:!0},isPagination:!0,pageSize:10},searchOptions:[{field:"UserName",title:"用户姓名",type:"Input"},{field:"Account",title:"账号",type:"Input"},{field:"AccountStatus",title:"账号状态",type:"Radio",data:[{text:"正常",value:1},{text:"挂起",value:2},{text:"禁用",value:3},{text:"只读",value:4}]}],toolbars:[{name:"add",text:"新增",onclick:()=>{this.doAddUser()}},{name:"import",icon:"md-arrow-round-up",text:"引入",onclick:()=>{this.doShowImportUser()}}],rightToolbars:[{name:"refresh"}],columns:[{colType:"seq"},{colType:"ro",field:"UserName",title:"姓名",minWidth:160},{colType:"ro",field:"Account",title:"账号",width:140},{colType:"ro",field:"AccountStatus",title:"账号状态",width:140,align:"center",format:(e,t)=>{const i={1:{text:"正常",color:"green"},2:{text:"挂起",color:"gold"},3:{text:"禁用",color:"red"},4:{text:"只读",color:"default"}}[t.row.AccountStatus],o=0==t.row.AccountType?"用户账号":"内部账号";return e(r.Tag,{color:i.color},(()=>o+" - "+i.text))}},{colType:"ro",field:"IsMutex",title:"单点登录",width:90,align:"center",format:(e,t)=>({0:"否",1:"是"}[t.row.IsMutex])},{colType:"ro",field:"ExpiredDate",title:"密码过期时间",width:130,align:"center",format:(e,t)=>{const i=t.row.ExpiredDate;return this.utilities.isNull(i)?"":i.split(" ")[0]}},{colType:"ro",field:"ErrorNum",title:"错误次数",width:90,align:"center",format:(e,t)=>t.row.ErrorNum+"/5"},{colType:"ro",field:"LastUpdateUserName",title:"最后修改人",width:120,align:"center"},{colType:"ro",field:"LastUpdateDate",title:"最后修改时间",width:140,align:"center"},{colType:"ro",field:"LastLoginTime",title:"最后登录时间",width:140,align:"center"},{title:"操作",width:180,rowButtons:[{name:"edit",text:"编辑",onclick:(e,t)=>{this.doEditUser(e)}},{name:"role",text:"定岗",onclick:(e,t)=>{this.doShowUserRole(e)}},{name:"delete",text:"移除",onclick:(e,t)=>{this.doDeleteUser(e)}}]},{title:"运维",width:180,rowButtons:[{name:"login",text:"登录",onclick:(e,t)=>{this.devOpsLogin(e)}},{name:"userSign",text:"签字",onclick:(e,t)=>{this.doShowEditUserSign(e)}},{name:"log",text:"日志",onclick:(e,t)=>{this.doShowLoginLog(e)}}]}],event:{event_search:e=>{this.insTreeUserGrid.value.setPageIndex(1),this.loadInstitutionTreeUsers(e)}}})),a(this,"doChangeUserBoxWidth",(e=>{this.userBoxWidth.value=e?"calc(100% - 300px)":"calc(100% - 45px)"})),a(this,"showEditUser",t.ref(!1)),a(this,"saveingUser",t.ref(!1)),a(this,"editUserTitle",t.ref("新增 - 用户")),a(this,"userForm",t.ref()),a(this,"userFormModel",t.reactive({Id:0,UserName:"",Sex:1,Phone:"",CIdNo:"",UserIconToken:"",UserSignImgToken:"",Account:"",AccountType:0,AccountStatus:1,ErrorNum:0,ExpiredDate:"",IsMutex:0,PwdAuthentication:0,LastUpdateUserId:"",LastUpdateUserName:"",LastUpdateDate:""})),a(this,"userFormItems",t.reactive([{model:"",label:"基础信息",span:24,children:[{model:"Account",label:"账号",type:"Input",prop:"Account"},{model:"UserName",label:"姓名",type:"Input",prop:"UserName"},{model:"Phone",label:"手机号",type:"Input"},{model:"Sex",label:"性别",type:"Select",selectProp:{datas:[{text:"男",value:1},{text:"女",value:2},{text:"其他",value:3}],transfer:!0}}]},{model:"",label:"账号信息",span:24,children:[{model:"AccountType",label:"账号类型",type:"Radio",radioProp:{type:"button","button-style":"solid",datas:[{text:"用户账号",value:0},{text:"内部账号",value:1}]}},{model:"AccountStatus",label:"账号状态",type:"Select",selectProp:{datas:[{text:"正常",value:1},{text:"挂起",value:2},{text:"禁用",value:3},{text:"只读",value:4}],transfer:!0}},{model:"ExpiredDate",label:"密码过期时间",type:"DatePicker"},{model:"PwdAuthentication",label:"密码强认证",type:"Select",selectProp:{datas:[{text:"否",value:0},{text:"是",value:1}],transfer:!0}},{model:"IsMutex",label:"单点登录",type:"Select",selectProp:{datas:[{text:"否",value:0},{text:"是",value:1}],transfer:!0}},{model:"ErrorNum",label:"错误次数",type:"Input"}]}])),a(this,"userFormRule",t.reactive({UserName:[{required:!0,message:"姓名不能为空",trigger:"blur"}],Account:[{required:!0,message:"姓名不能为空",trigger:"blur"}]})),a(this,"doSaveUser",(async()=>{this.saveingUser.value=!0;let e=await this.userForm.value.validate();if(!e)return void(this.saveingUser.value=!1);if(0==this.userFormModel.AccountType&&this.utilities.isNull(this.userFormModel.Phone))return this.message.warning("在用户账号模式下,手机号必填!"),void(this.saveingUser.value=!1);if(!this.utilities.isNull(this.userFormModel.Phone)){if(!/^[1][3,4,5,7,8]\d{9}$/.test(this.userFormModel.Phone))return this.message.warning("手机号格式不正确, 请重新输入!"),void(this.saveingUser.value=!1);const t=i.QueryWrapper.create();t.eq("Phone",this.userFormModel.Phone).eq("IsDel",0),this.userFormModel.Id>0&&t.ne("Id",this.userFormModel.Id);const o=await this.userinforApi.isExist(t);if(e=this.utilities.parseApiResult(o),e)return this.message.warning(`手机号 ${this.userFormModel.Phone} 已关联其他账号, 请重新输入!`),void(this.saveingUser.value=!1)}const t=i.QueryWrapper.create();t.eq("Account",this.userFormModel.Account).eq("IsDel",0),this.userFormModel.Id>0&&t.ne("Id",this.userFormModel.Id);let o=await this.userinforApi.isExist(t);if(e=this.utilities.parseApiResult(o),e)return this.message.warning(`账号 ${this.userFormModel.Account} 已存在, 请重新输入!`),void(this.saveingUser.value=!1);o=await this.userinforApi.save(this.userFormModel),e=this.utilities.parseApiResult(o),0==this.userFormModel.Id&&(await this.institutionUserApi.save({InstitutionId:this.selectedInsTree.InstitutionId,UserId:e,InsTreeId:this.selectedInsTree.Id}),await this.userinforApi.resetUserPwd(e)),this.saveingUser.value=!1,e>0?(this.message.success("保存成功"),this.insTreeUserGrid.value.refreshData(),this.showEditUser.value=!1):this.message.error(o.msg)})),a(this,"currentUser"),a(this,"showUserRole",t.ref(!1)),a(this,"saveingUserRole",t.ref(!1)),a(this,"userRoleGrid",t.ref()),a(this,"userRoleGridOption",t.reactive({api:this.userinforApi,setting:{border:!1,toolbarConfig:{isButtonGroup:!1},rowConfig:{isHover:!0}},rightToolbars:[{name:"refresh"}],columns:[{colType:"seq"},{colType:"ro",width:50,align:"center",format:(e,t)=>e(r.Checkbox,{style:{"margin-right":"0px"},"model-value":t.row.IsChk,"onUpdate:model-value":e=>{t.row.IsChk=e}})},{colType:"ed",field:"RoleName",title:"角色名称"},{colType:"ed",field:"DefaultUrl",title:"默认页面",width:200,align:"center"},{colType:"ed",field:"欢迎页面",title:"WelcomeUrl",width:200,align:"center"},{colType:"num",field:"OrderNo",title:"排序号",width:100,align:"center"}]})),a(this,"doSaveUserRole",(async()=>{const e=this.userRoleGrid.value.getDatas().filter((e=>1==e.IsChk));this.saveingUserRole.value=!0;let t=await this.userRoleApi.getEntities(i.QueryWrapper.create().eq("UserId",this.currentUser.Id).eq("PlatformId",this.selectedPlatform.Id)),o=this.utilities.parseApiResult(t),s=[];for(const i of e)-1==o.findIndex((e=>e.RoleId==i.Id))&&s.push({PlatformId:this.selectedPlatform.Id,UserId:this.currentUser.Id,RoleId:i.Id});let r=[];for(const i of o)-1==e.findIndex((e=>e.Id==i.RoleId))&&r.push(i.Id);if(0==s.length&&0==r.length)return this.message.warning("没有需要保存的数据"),void(this.saveingUserRole.value=!1);let l=!0;if(s.length>0){t=await this.userRoleApi.saves(s);let e=this.utilities.parseApiResult(t);1==l&&(l=e>0)}if(r.length>0){t=await this.userRoleApi.deleteByIds(r.join(","));let e=this.utilities.parseApiResult(t);0==l&&(l=e>0)}this.saveingUserRole.value=!1,l?(this.message.success("保存成功"),this.showUserRole.value=!1):this.message.error("保存失败, 请稍后重试!")})),a(this,"showImportUser",t.ref(!1)),a(this,"saveingImportUser",t.ref(!1)),a(this,"otherUserGrid",t.ref()),a(this,"otherUserGridOption",t.reactive({api:this.userinforApi,setting:{border:!0,searchConfig:{btnSpan:24,labelWidth:90,defaultShowSearch:!1},toolbarConfig:{isButtonGroup:!1},rowConfig:{isHover:!0}},searchOptions:[{field:"UserName",title:"用户姓名",type:"Input",span:8},{field:"Account",title:"账号",type:"Input",span:8},{field:"AccountStatus",title:"账号状态",type:"Radio",data:[{text:"正常",value:1},{text:"挂起",value:2},{text:"禁用",value:3}],span:8}],rightToolbars:[{name:"refresh"}],columns:[{colType:"seq"},{colType:"checkbox"},{colType:"ro",field:"UserName",title:"姓名",minWidth:160},{colType:"ro",field:"Sex",title:"性别",width:120,align:"center",format:(e,t)=>({1:"男",2:"女",3:"其他"}[t.row.Sex])},{colType:"ro",field:"Account",title:"账号",width:180},{colType:"ro",field:"AccountStatus",title:"账号状态",width:160,align:"center",format:(e,t)=>{const i={1:{text:"正常",color:"green"},2:{text:"挂起",color:"gold"},3:{text:"禁用",color:"red"}}[t.row.AccountStatus];return e(r.Tag,{color:i.color},(()=>i.text))}}],event:{event_search:e=>{this.loadImportUserGrid(e)}}})),a(this,"doImportUser",(async()=>{const e=this.otherUserGrid.value.getCheckboxDatas();if(0==e.length)return void this.message.warning("没有需要导入的用户");const t=[];for(const s of e)t.push({InstitutionId:this.selectedInsTree.InstitutionId,UserId:s.Id,InsTreeId:this.selectedInsTree.Id});this.saveingImportUser.value=!0;let i=await this.institutionUserApi.saves(t),o=this.utilities.parseApiResult(i);this.saveingImportUser.value=!1,o?(this.message.success("导入成功"),this.insTreeUserGrid.value.refreshData(),this.showImportUser.value=!1):this.message.error("导入失败, 请稍后重试!")})),a(this,"showLoginLog",t.ref(!1)),a(this,"loginLogRef",t.ref()),a(this,"doShowLoginLog",(e=>{this.showLoginLog.value=!0,this.loginLogRef.value.loadLoginLog(this.selectedPlatform.Id,e.Id)})),a(this,"loginRef",t.ref()),a(this,"logining",t.ref(!1)),a(this,"showEditUserSign",t.ref(!1)),a(this,"saveingUserSign",t.ref(!1)),a(this,"userSignForm",t.ref()),a(this,"userSignFormModel",t.reactive({Id:0,UserId:0,CAUserInfoKey:"",CAUserSealKey:"",CAUserYZKey:"",CAUserSealImg:"",CAUserYZImg:""})),a(this,"userSignFormItems",t.reactive([{model:"CAUserInfoKey",label:"用户KEY",type:"Input",prop:"CAUserInfoKey",span:24},{model:"CAUserSealKey",label:"印章KEY",type:"Input",prop:"CAUserSealKey",span:24},{model:"CAUserYZKey",label:"圆章KEY",type:"Input",prop:"CAUserYZKey",span:24}])),a(this,"doSaveUserSign",(async()=>{this.saveingUserSign.value=!0;const e=await this.userSignApi.save(this.userSignFormModel),t=this.utilities.parseApiResult(e);this.saveingUserSign.value=!1,t?(this.message.success("保存成功"),this.showEditUserSign.value=!1):this.message.error("保存失败,请稍后重试")})),a(this,"doLoadUserSealImg",(async()=>{if(this.utilities.isNull(this.selectedPlatform.CABusinessKey))return void this.message.warning("请先在平台模块设置CA业务KEY");if(this.utilities.isNull(this.userSignFormModel.CAUserSealKey))return void this.message.warning("请输入印章KEY");const e=await this.signTaskInfoApi.GetUserSealCloudInfo(this.selectedPlatform.CABusinessKey,this.userSignFormModel.CAUserSealKey),t=this.utilities.parseApiResult(e);t?this.userSignFormModel.CAUserSealImg="data:image/png;base64,"+t.data.sealPic:this.message.error("读取失败,请稍后重试")})),a(this,"doLoadUserYZImg",(async()=>{if(this.utilities.isNull(this.selectedPlatform.CABusinessKey))return void this.message.warning("请先在平台模块设置CA业务KEY");if(this.utilities.isNull(this.userSignFormModel.CAUserYZKey))return void this.message.warning("请输入圆章KEY");const e=await this.signTaskInfoApi.GetUserSealCloudInfo(this.selectedPlatform.CABusinessKey,this.userSignFormModel.CAUserYZKey),t=this.utilities.parseApiResult(e);t?10==t.head.code?this.userSignFormModel.CAUserYZImg="data:image/png;base64,"+t.data.sealPic:this.message.error(t.head.msg):this.message.error("读取失败,请稍后重试")})),this.props=e,this.ctx=o}async loadInsTree(){let e=!1;this.loadingInstitutionTree.value=!0;const t=await this.institutionTreeApi.getInstitutionTrees(this.selectedPlatform.Id),i=this.utilities.parseApiResult(t);this.loadingInstitutionTree.value=!1;const o=t=>{const s=i.filter((e=>e.PId==t));for(const i of s){i.title=i.InstitutionAbbreviation,i.expand=!0;const t=!this.utilities.isNull(this.selectedInsTree)&&this.selectedInsTree.Id==i.Id;i.selected=t,t&&(e=!0);const s=o(i.Id);s.length>0&&(i.children=s)}return s};if(this.institutionTree.value=o(0),!e&&this.institutionTree.value.length>0){const e=this.institutionTree.value[0];e.selected=!0,this.doChangeInsTree([e])}}loadInstitutionTreeUsers(e){this.insTreeUserGrid.value.loadData((async t=>{const i=await this.userinforApi.getInstitutionTreeUsers(t.page,t.pageSize,this.selectedInsTree.Id,this.utilities.getValueNotNull(e.UserName,""),this.utilities.getValueNotNull(e.Account,""),this.utilities.getValueNotNull(e.AccountStatus,0)),o=this.utilities.parseApiResult(i);t.success(o)}))}doEditUser(e){this.userFormModel.Id=e.Id,this.userFormModel.UserName=e.UserName,this.userFormModel.Sex=e.Sex,this.userFormModel.Phone=e.Phone,this.userFormModel.CIdNo=e.CIdNo,this.userFormModel.UserIconToken=e.UserIconToken,this.userFormModel.UserSignImgToken=e.UserSignImgToken,this.userFormModel.Account=e.Account,this.userFormModel.AccountStatus=e.AccountStatus,this.userFormModel.AccountType=e.AccountType,this.userFormModel.ErrorNum=e.ErrorNum,this.userFormModel.ExpiredDate=e.ExpiredDate,this.userFormModel.IsMutex=e.IsMutex,this.userFormModel.PwdAuthentication=e.PwdAuthentication,this.userFormModel.LastUpdateUserId=s.GloablValueType.$LoginUserId,this.userFormModel.LastUpdateUserName=s.GloablValueType.$LoginUserTrueName,this.userFormModel.LastUpdateDate=s.GloablValueType.$CurrentDate,this.editUserTitle.value="编辑用户 - "+e.UserName,this.showEditUser.value=!0}doAddUser(){this.userFormModel.Id=0,this.userFormModel.UserName="",this.userFormModel.Sex=1,this.userFormModel.Phone="",this.userFormModel.CIdNo="",this.userFormModel.UserIconToken="",this.userFormModel.UserSignImgToken="",this.userFormModel.Account="",this.userFormModel.AccountType=1,this.userFormModel.AccountStatus=1,this.userFormModel.ErrorNum=0;let e=this.utilities.getCurrentDate();e=this.utilities.dateHelper.format(this.utilities.dateHelper.add(this.utilities.stringHelper.toDate(e),1,"years"),"YYYY-MM-DD"),this.userFormModel.ExpiredDate=e,this.userFormModel.IsMutex=0,this.userFormModel.PwdAuthentication=0,this.userFormModel.LastUpdateUserId=s.GloablValueType.$LoginUserId,this.userFormModel.LastUpdateUserName=s.GloablValueType.$LoginUserTrueName,this.userFormModel.LastUpdateDate=s.GloablValueType.$CurrentDate,this.editUserTitle.value="新增 - 用户",this.showEditUser.value=!0}doDeleteUser(e){this.modal.confirm({title:"提示",content:`确定要移除用户${e.UserName}吗?`,onOk:async()=>{const t=await this.userinforApi.deleteUser(e.UserId,e.InstitutionUserId);this.utilities.parseApiResult(t)>0?(this.message.success("删除成功"),this.insTreeUserGrid.value.refreshData()):this.message.error("删除失败, 请稍后重试!")}})}doShowUserRole(e){this.currentUser=e,this.showUserRole.value=!0,t.nextTick((()=>{this.loadUserRole()}))}loadUserRole(){this.userRoleGrid.value.loadData((async e=>{let t=await this.userRoleApi.getEntities(i.QueryWrapper.create().eq("UserId",this.currentUser.Id).eq("PlatformId",this.selectedPlatform.Id)),o=this.utilities.parseApiResult(t);t=await this.institutionPlatformApi.getEntityByFilter(i.QueryWrapper.create().eq("PlatformId",this.selectedPlatform.Id).eq("InstitutionId",this.selectedInsTree.InstitutionId));let s=this.utilities.parseApiResult(t);if(this.utilities.isNull(s)||this.utilities.isNull(s.RoleIds))return void e.success([]);t=await this.roleApi.getEntities(i.QueryWrapper.create().in("Id",s.RoleIds.split(",")));let r=this.utilities.parseApiResult(t);for(const i of r){const e=!this.utilities.isNull(o)&&o.findIndex((e=>e.RoleId==i.Id))>=0;i.IsChk=e}e.success(r)}))}doShowImportUser(){this.showImportUser.value=!0,t.nextTick((()=>{this.loadImportUserGrid({})}))}loadImportUserGrid(e){this.otherUserGrid.value.loadData((async t=>{const i=await this.userinforApi.getNotInInstitutionTreeUsers(this.selectedInsTree.InstitutionId,this.selectedInsTree.Id,this.utilities.getValueNotNull(e.UserName,""),this.utilities.getValueNotNull(e.Account,""),this.utilities.getValueNotNull(e.AccountStatus,0)),o=this.utilities.parseApiResult(i);t.success(o)}))}async devOpsLogin(e){this.logining.value=!0;const t=await this.oauthApi.devOpsLogin(e.Id),i=this.utilities.parseApiResult(t);this.logining.value=!1,i.IsSuccess?(this.message.success("登录成功!"),this.storageInfo.removeAll(),this.loginRef.value.setLoginResult(i)):this.message.warning(i.Msg)}async doShowEditUserSign(e){this.showEditUserSign.value=!0;const t=await this.userSignApi.getEntityByFilter(i.QueryWrapper.create().eq("UserId",e.Id)),o=this.utilities.parseApiResult(t);this.utilities.isNull(o)?(this.userSignFormModel.Id=0,this.userSignFormModel.UserId=e.Id,this.userSignFormModel.CAUserInfoKey="",this.userSignFormModel.CAUserSealKey="",this.userSignFormModel.CAUserYZKey="",this.userSignFormModel.CAUserSealImg="",this.userSignFormModel.CAUserYZImg=""):(this.userSignFormModel.Id=o.Id,this.userSignFormModel.UserId=o.UserId,this.userSignFormModel.CAUserInfoKey=o.CAUserInfoKey,this.userSignFormModel.CAUserSealKey=o.CAUserSealKey,this.userSignFormModel.CAUserYZKey=o.CAUserYZKey,this.userSignFormModel.CAUserSealImg=o.CAUserSealImg,this.userSignFormModel.CAUserYZImg=o.CAUserYZImg)}}const Lt=e=>(t.pushScopeId("data-v-3969fae6"),e=e(),t.popScopeId(),e),Bt={class:"instree-search"},Dt={class:"instree-list"},_t={style:{height:"600px","overflow-y":"auto"}},Wt=Lt((()=>t.createElementVNode("div",{style:{"margin-left":"16px",color:"#ff9900"}},[t.createElementVNode("div",{style:{"padding-bottom":"8px"}},"用户账号:手机号必填。在新设备登录时,需进行短信验证。"),t.createElementVNode("div",null,"内部账号:手机号可不填。")],-1))),Kt={style:{height:"600px","overflow-y":"auto"}},qt=Lt((()=>t.createElementVNode("div",{class:"primary-color gird-tip"},"勾选绑定用户角色!",-1))),$t={style:{height:"650px","overflow-y":"auto"}},Qt=Lt((()=>t.createElementVNode("div",{class:"primary-color gird-tip"},"勾选需要引入的用户!",-1))),jt={style:{height:"650px","overflow-y":"auto"}},Ht={style:{display:"none"}},Yt={style:{height:"400px","overflow-y":"auto"}},zt=["src"],Zt=["src"];const Jt=F(Et,[["render",function(e,i,o,s,r,l){const n=t.resolveComponent("SelectPlatform"),a=t.resolveComponent("Tree"),d=t.resolveComponent("Spin"),u=t.resolveComponent("Button"),h=t.resolveComponent("Space"),p=t.resolveComponent("NvBox"),c=t.resolveComponent("NvGrid"),m=t.resolveComponent("NvComForm"),f=t.resolveComponent("Form"),g=t.resolveComponent("Modal"),I=t.resolveComponent("LoginLog"),v=t.resolveComponent("BaseLogin"),y=t.resolveComponent("FormItem"),w=t.resolveComponent("NvPage");return t.openBlock(),t.createBlock(w,{gutter:8,class:"userinfor"},{default:t.withCtx((()=>[t.createVNode(p,{width:"300px",title:"组织机构树",showArrow:!0,onChange:e.doChangeUserBoxWidth},{footer:t.withCtx((()=>[t.createVNode(h,null,{default:t.withCtx((()=>[t.createVNode(u,{type:"text",onClick:e.doRefreshInsTree},{default:t.withCtx((()=>[t.createTextVNode("刷新")])),_:1},8,["onClick"])])),_:1})])),default:t.withCtx((()=>[t.createElementVNode("div",Bt,[t.createVNode(n,{onSelect:e.doChangePlatform,width:"100%",showLabel:!1},null,8,["onSelect"])]),t.createElementVNode("div",Dt,[t.createVNode(a,{data:e.institutionTree,render:e.renderInsTreeContent,class:"tree-render",onOnSelectChange:e.doChangeInsTree},null,8,["data","render","onOnSelectChange"]),t.withDirectives(t.createVNode(d,{fix:""},{default:t.withCtx((()=>[t.createTextVNode("数据加载中")])),_:1},512),[[t.vShow,e.loadingInstitutionTree]])])])),_:1},8,["onChange"]),t.createVNode(p,{width:e.userBoxWidth,title:"用户列表"},{default:t.withCtx((()=>[t.createVNode(c,{ref:"insTreeUserGrid",option:e.insTreeUserGridOption},null,8,["option"])])),_:1},8,["width"]),t.createVNode(g,{modelValue:e.showEditUser,"onUpdate:modelValue":i[1]||(i[1]=t=>e.showEditUser=t),draggable:"",mask:!0,"mask-closable":!1,width:850,title:e.editUserTitle,styles:{top:"3%"}},{footer:t.withCtx((()=>[t.createVNode(u,{type:"text",onClick:i[0]||(i[0]=t=>e.showEditUser=!1)},{default:t.withCtx((()=>[t.createTextVNode("关闭")])),_:1}),t.createVNode(u,{type:"primary",loading:e.saveingUser,onClick:e.doSaveUser},{default:t.withCtx((()=>[t.createTextVNode("保存")])),_:1},8,["loading","onClick"])])),default:t.withCtx((()=>[t.createElementVNode("div",_t,[t.createVNode(f,{ref:"userForm",model:e.userFormModel,"label-width":120,rules:e.userFormRule},{default:t.withCtx((()=>[t.createVNode(m,{ref:"userComForm",formModel:e.userFormModel,formItems:e.userFormItems},null,8,["formModel","formItems"])])),_:1},8,["model","rules"]),Wt])])),_:1},8,["modelValue","title"]),t.createVNode(g,{modelValue:e.showUserRole,"onUpdate:modelValue":i[3]||(i[3]=t=>e.showUserRole=t),draggable:"",mask:!0,"mask-closable":!1,width:850,title:"定岗",styles:{top:"3%"}},{footer:t.withCtx((()=>[t.createVNode(u,{type:"text",onClick:i[2]||(i[2]=t=>e.showUserRole=!1)},{default:t.withCtx((()=>[t.createTextVNode("关闭")])),_:1}),t.createVNode(u,{type:"primary",loading:e.saveingUserRole,onClick:e.doSaveUserRole},{default:t.withCtx((()=>[t.createTextVNode("保存")])),_:1},8,["loading","onClick"])])),default:t.withCtx((()=>[t.createElementVNode("div",Kt,[t.createVNode(c,{ref:"userRoleGrid",option:e.userRoleGridOption},{default:t.withCtx((()=>[qt])),_:1},8,["option"])])])),_:1},8,["modelValue"]),t.createVNode(g,{modelValue:e.showImportUser,"onUpdate:modelValue":i[5]||(i[5]=t=>e.showImportUser=t),draggable:"",mask:!0,"mask-closable":!1,width:800,title:"引入用户",styles:{top:"3%"}},{footer:t.withCtx((()=>[t.createVNode(u,{type:"text",onClick:i[4]||(i[4]=t=>e.showImportUser=!1)},{default:t.withCtx((()=>[t.createTextVNode("关闭")])),_:1}),t.createVNode(u,{type:"primary",loading:e.saveingImportUser,onClick:e.doImportUser},{default:t.withCtx((()=>[t.createTextVNode("引入")])),_:1},8,["loading","onClick"])])),default:t.withCtx((()=>[t.createElementVNode("div",$t,[t.createVNode(c,{ref:"otherUserGrid",option:e.otherUserGridOption},{default:t.withCtx((()=>[Qt])),_:1},8,["option"])])])),_:1},8,["modelValue"]),t.createVNode(g,{modelValue:e.showLoginLog,"onUpdate:modelValue":i[7]||(i[7]=t=>e.showLoginLog=t),draggable:"",mask:!0,"mask-closable":!1,width:800,title:"登录日志",styles:{top:"3%"}},{footer:t.withCtx((()=>[t.createVNode(u,{type:"text",onClick:i[6]||(i[6]=t=>e.showLoginLog=!1)},{default:t.withCtx((()=>[t.createTextVNode("关闭")])),_:1})])),default:t.withCtx((()=>[t.createElementVNode("div",jt,[t.createVNode(I,{ref:"loginLogRef"},null,512)])])),_:1},8,["modelValue"]),t.createVNode(d,{size:"large",fix:"",show:e.logining},null,8,["show"]),t.createElementVNode("div",Ht,[t.createVNode(v,{ref:"loginRef",autoLogin:!1},null,512)]),t.createVNode(g,{modelValue:e.showEditUserSign,"onUpdate:modelValue":i[9]||(i[9]=t=>e.showEditUserSign=t),draggable:"",mask:!0,"mask-closable":!1,width:440,title:"编辑签字信息",styles:{top:"3%"}},{footer:t.withCtx((()=>[t.createVNode(u,{type:"text",onClick:i[8]||(i[8]=t=>e.showEditUserSign=!1)},{default:t.withCtx((()=>[t.createTextVNode("关闭")])),_:1}),t.createVNode(u,{type:"primary",loading:e.saveingUserSign,onClick:e.doSaveUserSign},{default:t.withCtx((()=>[t.createTextVNode("保存")])),_:1},8,["loading","onClick"])])),default:t.withCtx((()=>[t.createElementVNode("div",Yt,[t.createVNode(f,{ref:"userSignForm",model:e.userSignFormModel,"label-width":85},{default:t.withCtx((()=>[t.createVNode(m,{ref:"userSignComForm",formModel:e.userSignFormModel,formItems:e.userSignFormItems},null,8,["formModel","formItems"]),t.createVNode(y,{label:"印章图片"},{default:t.withCtx((()=>[""!=e.userSignFormModel.CAUserSealImg?(t.openBlock(),t.createElementBlock("img",{key:0,src:e.userSignFormModel.CAUserSealImg,alt:"",style:{width:"120px",height:"35px"}},null,8,zt)):t.createCommentVNode("",!0),t.createVNode(u,{type:"primary",style:{float:"right"},onClick:e.doLoadUserSealImg},{default:t.withCtx((()=>[t.createTextVNode("加载")])),_:1},8,["onClick"])])),_:1}),t.createVNode(y,{label:"圆章图片"},{default:t.withCtx((()=>[""!=e.userSignFormModel.CAUserYZImg?(t.openBlock(),t.createElementBlock("img",{key:0,src:e.userSignFormModel.CAUserYZImg,alt:"",style:{width:"120px",height:"120px","margin-left":"16px"}},null,8,Zt)):t.createCommentVNode("",!0),t.createVNode(u,{type:"primary",style:{float:"right"},onClick:e.doLoadUserYZImg},{default:t.withCtx((()=>[t.createTextVNode("加载")])),_:1},8,["onClick"])])),_:1})])),_:1},8,["model"])])])),_:1},8,["modelValue"])])),_:1})}],["__scopeId","data-v-3969fae6"]]);function Xt(e,t){for(var i=0;i<t.length;i++){var o=t[i];o.enumerable=o.enumerable||!1,o.configurable=!0,"value"in o&&(o.writable=!0),Object.defineProperty(e,"symbol"==typeof(s=function(e,t){if("object"!=typeof e||null===e)return e;var i=e[Symbol.toPrimitive];if(void 0!==i){var o=i.call(e,"string");if("object"!=typeof o)return o;throw new TypeError("@@toPrimitive must return a primitive value.")}return String(e)}(o.key))?s:String(s),o)}var s}function ei(e,t,i){return t&&Xt(e.prototype,t),i&&Xt(e,i),Object.defineProperty(e,"prototype",{writable:!1}),e}function ti(e,t){e.prototype=Object.create(t.prototype),e.prototype.constructor=e,ii(e,t)}function ii(e,t){return(ii=Object.setPrototypeOf?Object.setPrototypeOf.bind():function(e,t){return e.__proto__=t,e})(e,t)}var oi=function(e){function t(){return e.apply(this,arguments)||this}return ti(t,e),ei(t,[{key:"ProxyName",get:function(){return"BasicsApi"}}]),t}(i.BaseApi),si=function(e){function t(){return e.apply(this,arguments)||this}return ti(t,e),ei(t,[{key:"ControllerName",get:function(){return"Area"}}]),t}(oi),ri=function(e){function t(){return e.apply(this,arguments)||this}return ti(t,e),ei(t,[{key:"ControllerName",get:function(){return"City"}}]),t}(oi),li=function(e){function t(){return e.apply(this,arguments)||this}return ti(t,e),ei(t,[{key:"ControllerName",get:function(){return"Province"}}]),t}(oi);const ni={linkParam:{type:String,default:""},operates:{type:String,default:"-"}},ai=t.defineComponent({name:"Enterprise",components:{SelectPlatform:Se},emits:[""],props:ni,setup:(e,t)=>new di(e,t)});class di extends e.BaseInstance{constructor(e,i){super(),a(this,"props"),a(this,"ctx"),a(this,"platformApi",new C),a(this,"enterpriseApi",new x),a(this,"provinceApi",new li),a(this,"cityApi",new ri),a(this,"areaApi",new si),a(this,"selectedPlatform"),a(this,"provinces",[]),a(this,"cities",[]),a(this,"areas",[]),a(this,"refSelectPlatform",t.ref()),a(this,"onlyView",t.ref(!1)),a(this,"enterpriseGrid",t.ref()),a(this,"enterpriseGridOption",t.reactive({api:this.enterpriseApi,setting:{searchConfig:{btnSpan:8,labelWidth:120,defaultShowSearch:!1},toolbarConfig:{isButtonGroup:!1},rowConfig:{isHover:!0},isPagination:!0,pageSize:10},searchOptions:[{field:"EnterpriseName",title:"企业名称",type:"Input",span:6}],toolbars:[{name:"add",onclick:()=>{this.doAddEnterprise()}}],rightToolbars:[{name:"refresh"}],columns:[{colType:"seq"},{colType:"ro",field:"Id",title:"ID",width:70,align:"center"},{colType:"ed",field:"EnterpriseName",title:"企业名称",minWidth:300},{colType:"ed",field:"EnterpriseCode",title:"企业代码",align:"center",minWidth:160},{colType:"ro",field:"Province",title:"省 市 区",align:"center",width:220,format:(e,t)=>{const i=t.row;let o=[],s=this.provinces.filter((e=>e.ProvinceCode==i.Province)),r=this.cities.filter((e=>e.CityCode==i.City)),l=this.areas.filter((e=>e.AreaCode==i.Area));return s.length>0&&o.push(s[0].ProvinceName),r.length>0&&o.push(r[0].CityName),l.length>0&&o.push(l[0].AreaName),e("span",o.join("-"))}},{colType:"ro",field:"Contact",title:"联系人",align:"center",width:120},{colType:"ro",field:"TelPhone",title:"联系电话",align:"center",width:140},{colType:"ro",field:"LastUpdateUserName",title:"最后修改人",align:"center",width:140},{colType:"ro",field:"LastUpdateTime",title:"最后修改时间",align:"center",width:160},{title:"操作",width:180,rowButtons:[{name:"view",text:"预览",onclick:(e,t)=>{this.doViewEnterprise(e)}},{name:"edit",text:"编辑",onclick:(e,t)=>{this.doEditEnterprise(e)}},{name:"delete",text:"删除"}]}],event:{event_search:e=>{this.enterpriseGrid.value.setPageIndex(1),this.loadEnterpriseGridData(e)}}})),a(this,"doPlatformChange",(e=>{this.selectedPlatform=e,this.loadEnterpriseGridData({})})),a(this,"saveingEnterprise",t.ref(!1)),a(this,"showEditEnterprise",t.ref(!1)),a(this,"editEnterpriseTitle",t.ref("新增 - 企业")),a(this,"enterpriseFormModel",t.reactive({Id:0,PlatformId:0,EnterpriseName:"",EnterpriseCode:"",LegalPerson:"",RegisteredCapital:0,Province:"",City:"",Area:"",Address:"",Contact:"",TelPhone:"",LastUpdateUserId:"",LastUpdateUserName:"",LastUpdateTime:""})),a(this,"enterpriseFormItems",t.reactive([{model:"",label:"基本信息",span:24,children:[{model:"EnterpriseName",label:"企业名称",type:"Input",prop:"EnterpriseName",span:12,inputProp:{placeholder:"请输入企业名称"}},{model:"EnterpriseCode",label:"企业代码",type:"Input",prop:"EnterpriseCode",span:12,inputProp:{placeholder:"请输入企业代码"}},{model:"LegalPerson",label:"企业法人",type:"Input",span:12,inputProp:{placeholder:"请输入企业法人"}},{model:"RegisteredCapital",label:"注册资金",type:"Input",span:12,inputProp:{placeholder:"请输入注册资金",append:"万元"}}]},{model:"",label:"联系信息",span:24,children:[{model:"Province",label:"省份",type:"Select",span:8,selectProp:{datas:[],onChange:(e,t)=>{this.setCityDatas(e),this.setAreaDatas("")},transfer:!0,filterable:!0}},{model:"City",label:"城市",type:"Select",span:8,selectProp:{datas:[],onChange:(e,t)=>{this.setAreaDatas(e)},transfer:!0,filterable:!0}},{model:"Area",label:"区县",type:"Select",span:8,selectProp:{datas:[],transfer:!0,filterable:!0}},{model:"Address",label:"地址",type:"Input",span:24,inputProp:{rows:4,type:"textarea",placeholder:"请输入联系地址"}},{model:"Contact",label:"联系人",type:"Input",span:12,inputProp:{placeholder:"请输入联系人"}},{model:"TelPhone",label:"联系电话",type:"Input",span:12,inputProp:{placeholder:"请输入联系电话"}}]}])),a(this,"doSaveEnterprise",(async()=>{this.saveingEnterprise.value=!0;let e=await this.enterpriseApi.save(this.enterpriseFormModel);if(this.utilities.parseApiResult(e)<=0)return this.message.warning("保存失败,请稍后重试!"),void(this.saveingEnterprise.value=!1);this.message.success("保存成功!"),this.enterpriseGrid.value.refreshData(),this.saveingEnterprise.value=!1,this.showEditEnterprise.value=!1})),this.props=e,this.ctx=i,this.useArea()}async useArea(){let e=await this.provinceApi.getEntities(i.QueryWrapper.create().eq("1","1"));this.provinces=this.utilities.parseApiResult(e),e=await this.cityApi.getEntities(i.QueryWrapper.create().eq("1","1")),this.cities=this.utilities.parseApiResult(e),e=await this.areaApi.getEntities(i.QueryWrapper.create().eq("1","1")),this.areas=this.utilities.parseApiResult(e),this.setProvinceDatas(),this.refSelectPlatform.value.loadPlatforms()}loadEnterpriseGridData(e){const t=i.QueryWrapper.create().eq("PlatformId",this.selectedPlatform.Id);for(const i of Object.keys(e)){const o=e[i];this.utilities.isNull(o)||t.like(i,o)}this.enterpriseGrid.value.loadDataByQuery(t)}setProvinceDatas(){this.enterpriseFormItems[1].children[0].selectProp.datas=this.provinces.map((e=>({text:e.ProvinceName,value:e.ProvinceCode})))}setCityDatas(e){this.enterpriseFormItems[1].children[1].selectProp.datas=this.cities.filter((t=>t.ProvinceCode==e)).map((e=>({text:e.CityName,value:e.CityCode})))}setAreaDatas(e){this.enterpriseFormItems[1].children[2].selectProp.datas=this.areas.filter((t=>t.CityCode==e)).map((e=>({text:e.AreaName,value:e.AreaCode})))}doAddEnterprise(){this.onlyView.value=!1,this.enterpriseFormModel.Id=0,this.enterpriseFormModel.PlatformId=this.selectedPlatform.Id,this.enterpriseFormModel.EnterpriseName="",this.enterpriseFormModel.EnterpriseCode="",this.enterpriseFormModel.LegalPerson="",this.enterpriseFormModel.RegisteredCapital=0,this.enterpriseFormModel.Province="",this.enterpriseFormModel.City="",this.enterpriseFormModel.Area="",this.enterpriseFormModel.Address="",this.enterpriseFormModel.Contact="",this.enterpriseFormModel.TelPhone="",this.enterpriseFormModel.LastUpdateUserId=s.GloablValueType.$LoginUserId,this.enterpriseFormModel.LastUpdateUserName=s.GloablValueType.$LoginUserTrueName,this.enterpriseFormModel.LastUpdateTime=s.GloablValueType.$CurrentDate,this.setCityDatas(""),this.setAreaDatas(""),this.editEnterpriseTitle.value="新增 - 企业",this.showEditEnterprise.value=!0}doEditEnterprise(e){this.onlyView.value=!1,this.enterpriseFormModel.Id=e.Id,this.enterpriseFormModel.PlatformId=e.InstitutionId,this.enterpriseFormModel.EnterpriseName=e.EnterpriseName,this.enterpriseFormModel.EnterpriseCode=e.EnterpriseCode,this.enterpriseFormModel.LegalPerson=e.LegalPerson,this.enterpriseFormModel.RegisteredCapital=e.RegisteredCapital,this.enterpriseFormModel.Province=e.Province,this.enterpriseFormModel.City=e.City,this.enterpriseFormModel.Area=e.Area,this.enterpriseFormModel.Address=e.Address,this.enterpriseFormModel.Contact=e.Contact,this.enterpriseFormModel.TelPhone=e.TelPhone,this.enterpriseFormModel.LastUpdateUserId=s.GloablValueType.$LoginUserId,this.enterpriseFormModel.LastUpdateUserName=s.GloablValueType.$LoginUserTrueName,this.enterpriseFormModel.LastUpdateTime=s.GloablValueType.$CurrentDate,this.setCityDatas(e.Province),this.setAreaDatas(e.City),this.editEnterpriseTitle.value="编辑 - "+e.EnterpriseName,this.showEditEnterprise.value=!0}doViewEnterprise(e){this.doEditEnterprise(e),this.onlyView.value=!0,this.editEnterpriseTitle.value="预览 - "+e.EnterpriseName}}const ui={style:{height:"550px","overflow-y":"auto"}};return[{path:"/permission-service/platform/platform",component:O},{path:"/permission-service/platform/module",component:it},{path:"/permission-service/platform/role",component:ut},{path:"/permission-service/institution/institutiontype",component:ft},{path:"/permission-service/institution/institution",component:Pt},{path:"/permission-service/institution/userinfor",component:Jt},{path:"/permission-service/institution/enterprise",component:F(ai,[["render",function(e,i,o,s,r,l){const n=t.resolveComponent("SelectPlatform"),a=t.resolveComponent("NvGrid"),d=t.resolveComponent("NvBox"),u=t.resolveComponent("NvComForm"),h=t.resolveComponent("Form"),p=t.resolveComponent("Button"),c=t.resolveComponent("Modal"),m=t.resolveComponent("NvPage");return t.openBlock(),t.createBlock(m,{gutter:8,class:""},{default:t.withCtx((()=>[t.createVNode(d,{width:"100%",title:"企业列表"},{default:t.withCtx((()=>[t.createVNode(a,{ref:"enterpriseGrid",option:e.enterpriseGridOption},{default:t.withCtx((()=>[t.createVNode(n,{ref:"refSelectPlatform",onSelect:e.doPlatformChange,defaultLoad:!1},null,8,["onSelect"])])),_:1},8,["option"])])),_:1}),t.createVNode(c,{modelValue:e.showEditEnterprise,"onUpdate:modelValue":i[1]||(i[1]=t=>e.showEditEnterprise=t),draggable:"",mask:!0,"mask-closable":!1,width:850,title:e.editEnterpriseTitle,styles:{top:"3%"}},{footer:t.withCtx((()=>[t.createVNode(p,{type:"text",onClick:i[0]||(i[0]=t=>e.showEditEnterprise=!1)},{default:t.withCtx((()=>[t.createTextVNode("关闭")])),_:1}),e.onlyView?t.createCommentVNode("",!0):(t.openBlock(),t.createBlock(p,{key:0,type:"primary",loading:e.saveingEnterprise,onClick:e.doSaveEnterprise},{default:t.withCtx((()=>[t.createTextVNode("保存")])),_:1},8,["loading","onClick"]))])),default:t.withCtx((()=>[t.createElementVNode("div",ui,[t.createVNode(h,{model:e.enterpriseFormModel,"label-width":90},{default:t.withCtx((()=>[t.createVNode(u,{ref:"enterpriseComForm",onlyView:e.onlyView,formModel:e.enterpriseFormModel,formItems:e.enterpriseFormItems},null,8,["onlyView","formModel","formItems"])])),_:1},8,["model"])])])),_:1},8,["modelValue","title"])])),_:1})}],["__scopeId","data-v-dc747c74"]])}]}));
package/dist/style.css ADDED
@@ -0,0 +1 @@
1
+ .platform[data-v-4757066c],.module[data-v-5a5ef504],.import-module .import-module_card[data-v-5a5ef504]{height:100%}.import-module .import-module_card[data-v-5a5ef504] .ivu-card-body{height:calc(100% - 43px)}.role[data-v-086753a2],.import-role .import-role_card[data-v-086753a2]{height:100%}.import-role .import-role_card[data-v-086753a2] .ivu-card-body{height:calc(100% - 43px)}.institutiontype[data-v-947fe129],.institution[data-v-42799ba1],.loginLog[data-v-968675c2],.userinfor[data-v-3969fae6]{height:100%}.userinfor .instree-list[data-v-3969fae6]{position:relative;width:100%;height:calc(100% - 32px);margin-top:8px}.page[data-v-dc747c74]{height:100%}
package/package.json ADDED
@@ -0,0 +1,59 @@
1
+ {
2
+ "name": "@newview/permission-service",
3
+ "version": "0.0.1",
4
+ "author": "newview",
5
+ "license": "MIT",
6
+ "type": "module",
7
+ "main": "./dist/permission-service.umd.cjs",
8
+ "module": "./dist/permission-service.js",
9
+ "files": [
10
+ "dist",
11
+ "types",
12
+ "package.json",
13
+ "tsconfig.json",
14
+ "tsconfig.node.json",
15
+ "vite.config.ts"
16
+ ],
17
+ "exports": {
18
+ "./dist/style.css": "./dist/style.css",
19
+ "./css": "./dist/style.css",
20
+ ".": {
21
+ "import": "./dist/permission-service.js",
22
+ "require": "./dist/permission-service.umd.cjs"
23
+ }
24
+ },
25
+ "scripts": {
26
+ "dev": "vite",
27
+ "build": "run-p type-check build-only",
28
+ "preview": "vite preview",
29
+ "build-only": "vite build --watch",
30
+ "type-check": "vue-tsc --noEmit",
31
+ "p": "npm publish --access public"
32
+ },
33
+ "keywords": [],
34
+ "dependencies": {
35
+ "@newview/base-vue": "^0.0.3",
36
+ "@newview/basics-api": "^0.0.1",
37
+ "@newview/casign-api": "^0.0.1",
38
+ "@newview/infrastructure": "^0.0.4",
39
+ "@newview/permission-api": "^0.0.1",
40
+ "@newview/permission-ui": "^0.0.4",
41
+ "@newview/tools": "^0.0.1",
42
+ "@newview/ui": "^0.0.3",
43
+ "sass": "^1.56.2",
44
+ "view-ui-plus": "^1.3.1",
45
+ "vue": "^3.2.45",
46
+ "vue-router": "^4.1.6"
47
+ },
48
+ "devDependencies": {
49
+ "@types/file-saver": "^2.0.5",
50
+ "@types/node": "^20.5.0",
51
+ "@vitejs/plugin-vue": "^4.2.3",
52
+ "file-saver": "^2.0.5",
53
+ "npm-run-all": "^4.1.5",
54
+ "terser": "^5.19.2",
55
+ "typescript": "^4.9.5",
56
+ "vite": "^4.4.9",
57
+ "vue-tsc": "1.0.11"
58
+ }
59
+ }
package/tsconfig.json ADDED
@@ -0,0 +1,19 @@
1
+ {
2
+ "compilerOptions": {
3
+ "target": "ESNext",
4
+ "useDefineForClassFields": true,
5
+ "module": "ESNext",
6
+ "moduleResolution": "Node",
7
+ "strict": true,
8
+ "jsx": "preserve",
9
+ "resolveJsonModule": true,
10
+ "isolatedModules": true,
11
+ "esModuleInterop": true,
12
+ "lib": ["ESNext", "DOM"],
13
+ "skipLibCheck": true,
14
+ "noEmit": true,
15
+ "noImplicitAny": false
16
+ },
17
+ "include": ["src/**/*.ts", "src/**/*.d.ts", "src/**/*.tsx", "src/**/*.vue"],
18
+ "references": [{ "path": "./tsconfig.node.json" }]
19
+ }
@@ -0,0 +1,9 @@
1
+ {
2
+ "compilerOptions": {
3
+ "composite": true,
4
+ "module": "ESNext",
5
+ "moduleResolution": "Node",
6
+ "allowSyntheticDefaultImports": true
7
+ },
8
+ "include": ["vite.config.ts"]
9
+ }
package/vite.config.ts ADDED
@@ -0,0 +1,50 @@
1
+ import { defineConfig } from 'vite'
2
+ import vue from '@vitejs/plugin-vue'
3
+ import path from 'path';
4
+
5
+ // https://vitejs.dev/config/
6
+ export default defineConfig({
7
+ plugins: [vue()],
8
+ build: {
9
+ lib: {
10
+ entry: path.resolve(__dirname, './src/index.ts'),
11
+ name: 'permissionservice',
12
+ fileName: 'permission-service'
13
+ },
14
+ rollupOptions: {
15
+ // 确保外部化处理那些你不想打包进库的依赖
16
+ external: [
17
+ "@newview/base-vue",
18
+ "@newview/fileservice-api",
19
+ "@newview/infrastructure",
20
+ "@newview/tools",
21
+ "@newview/ui",
22
+ "sass",
23
+ "view-ui-plus",
24
+ "vue",
25
+ "vue-router"
26
+ ],
27
+ output: {
28
+ globals: {
29
+ vue: "Vue",
30
+ 'vue-router': 'VueRouter',
31
+ }
32
+ }
33
+ },
34
+ minify: 'terser',
35
+ terserOptions: { // 在打包代码时移除 console、debugger 和 注释
36
+ compress: {
37
+ /* (default: false) -- Pass true to discard calls to console.* functions.
38
+ If you wish to drop a specific function call such as console.info and/or
39
+ retain side effects from function arguments after dropping the function
40
+ call then use pure_funcs instead
41
+ */
42
+ drop_console: true, // 生产环境时移除console
43
+ drop_debugger: true
44
+ },
45
+ format: {
46
+ comments: false // 删除注释comments
47
+ }
48
+ }
49
+ }
50
+ });