@newview/permission-service 1.2.16 → 1.2.17
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.
|
@@ -1 +1 @@
|
|
|
1
|
-
!function(e,t){"object"==typeof exports&&"undefined"!=typeof module?module.exports=t(require("@newview/base-vue"),require("vue"),require("@newview/permission-api"),require("@newview/infrastructure"),require("view-ui-plus"),require("@newview/permission-ui"),require("@newview/casign-api"),require("@newview/basics-api"),require("@newview/file-ui")):"function"==typeof define&&define.amd?define(["@newview/base-vue","vue","@newview/permission-api","@newview/infrastructure","view-ui-plus","@newview/permission-ui","@newview/casign-api","@newview/basics-api","@newview/file-ui"],t):(e="undefined"!=typeof globalThis?globalThis:e||self).permissionservice=t(e.baseVue,e.Vue,e.permissionApi,e.infrastructure,e.viewUiPlus,e.permissionUi,e.casignApi,e.basicsApi,e.fileUi)}(this,(function(e,t,i,o,s,r,l,a,n){"use strict";var d=Object.defineProperty,u=(e,t,i)=>(((e,t,i)=>{t in e?d(e,t,{enumerable:!0,configurable:!0,writable:!0,value:i}):e[t]=i})(e,"symbol"!=typeof t?t+"":t,i),i);const h={linkParam:{type:String,default:""},operates:{type:String,default:"-"}},p=t.defineComponent({name:"Platform",components:{},emits:[""],props:h,setup:(e,t)=>new m(e,t)});let m=class extends e.BaseInstance{constructor(e,s){super(),u(this,"props"),u(this,"ctx"),u(this,"platformApi",new i.PlatformApi),u(this,"platformGroupApi",new i.PlatformGroupApi),u(this,"currentGroupRow",t.ref({})),u(this,"groupData",t.ref()),u(this,"groupOption",t.reactive({api:this.platformGroupApi,keyField:"Id",titleField:"GroupName"})),u(this,"showEditGroup",t.ref(!1)),u(this,"refGroupForm",t.ref()),u(this,"saveingGroupform",t.ref(!1)),u(this,"editGroupformModalTitle",t.ref("新增 - 平台目录")),u(this,"groupFormModel",t.reactive({Id:0,SKey:this.utilities.getUniqueCode(),GroupNo:"",GroupName:"",OrderNo:"",CreateDate:this.utilities.getCurrentDate()})),u(this,"groupFormItems",t.reactive([{model:"GroupName",label:"组名称",prop:"GroupName",type:"Input",span:24,rules:[{required:!0,message:"组名称不能为空",trigger:"blur"}]},{model:"GroupNo",label:"平台目录代号",prop:"GroupNo",type:"Input",span:24,rules:[{required:!0,message:"平台目录代号不能为空",trigger:"blur"}]},{model:"OrderNo",label:"排序号",prop:"OrderNo",type:"InputNumber",span:24}])),u(this,"doRefresh",(()=>{this.loadGroupData()})),u(this,"groupSelect",(e=>{var t;this.currentGroupRow.value=e,null==(t=this.platformGrid.value)||t.setPageIndex(1),this.loadPlatformGrid()})),u(this,"handleGroupAdd",(()=>{this.showEditGroup.value=!0})),u(this,"doSaveGroupform",(async()=>{if(!(await this.refGroupForm.value.validate()))return;this.saveingGroupform.value=!0;let e=await this.platformGroupApi.save(this.groupFormModel);if(this.utilities.parseApiResult(e)<=0)return this.message.warning("保存失败,请稍后重试!"),void(this.saveingGroupform.value=!1);this.message.success("保存成功!"),this.doRefresh(),this.saveingGroupform.value=!1,this.showEditGroup.value=!1})),u(this,"upList",t.reactive(Array())),u(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:150},{colType:"select",field:"PId",title:"上级平台",width:150,select:{data:this.upList,clearable:!0,multiple:!1},format:(e,t)=>{const i=this.upList.find((e=>e.value==t.row.PId));return e("span",0==t.row.PId?"/":i.text)}},{colType:"ed",field:"PlatformNo",title:"系统代号",width:100},{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),i=o.QueryWrapper.create();i.eq("1","1");for(const o of t){const t=e[o];this.utilities.isNull(t)||i.like(o,t)}this.platformGrid.value.loadDataByQuery(i)}}})),u(this,"platformGrid",t.ref()),u(this,"refPlatformForm",t.ref()),u(this,"saveingPlatform",t.ref(!1)),u(this,"showEditPlatform",t.ref(!1)),u(this,"editPlatformModalTitle",t.ref("新增 - 系统平台")),u(this,"platformFormModel",t.reactive({Id:0,SKey:"",PlatformNo:"",PlatformName:"",PlatformAbbreviation:"",OssRootPath:"",PlatformGroup:this.currentGroupRow.value.Id,PlatformUrl:"",OrderNo:0,CABusinessKey:"",PId:0,LastUpdateUserId:0,LastUpdateUserName:"",LastUpdateDate:"",DefaultPwd:""})),u(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:"PId",label:"上级平台",prop:"PId",type:"Select",span:24,selectProp:{datas:[],transfer:!0,clearable:!0,multiple:!1}},{model:"PlatformUrl",label:"系统URL",prop:"PlatformUrl",type:"Input",span:24},{model:"CABusinessKey",label:"CAKey",prop:"CABusinessKey",type:"Input",span:24},{model:"DefaultPwd",label:"用户默认密码",prop:"DefaultPwd",type:"Input",span:24},{model:"OrderNo",label:"排序号",prop:"OrderNo",type:"InputNumber",span:24}])),u(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=s,this.usePlatform()}loadGroupData(){this.groupData.value.loadDataByQuery(o.QueryWrapper.create().orderBy(["OrderNo"]))}usePlatform(){t.onMounted((()=>{this.loadGroupData()}))}async loadPlatformGrid(){const e=this.storageInfo.getUser();this.platformGrid.value.setGloablValue("LastUpdateUserId",e.Id),this.platformGrid.value.setGloablValue("LastUpdateUserName",e.UserName),this.platformGrid.value.setGloablValue("LastUpdateDate",(()=>this.utilities.getCurrentDate())),this.platformGrid.value.setGloablValue("SKey",(()=>this.utilities.getUniqueCode()),!0),this.platformGrid.value.loadData((async e=>{const t=await this.platformApi.getEntitiesPageDynamic(e.page,e.pageSize,o.QueryWrapper.create().eq("PlatformGroup",this.currentGroupRow.value.Id).orderBy(["OrderNo"]).eq("1","1")),i=this.utilities.parseApiResult(t);e.success(i),this.upList.splice(0,this.upList.length);for(const o of i.Datas)this.upList.push({value:o.Id,text:o.PlatformAbbreviation})}))}doEditPlatform(e){var t;const i=this.storageInfo.getUser();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=i.Id,this.platformFormModel.LastUpdateUserName=i.UserName,this.platformFormModel.PId=e.PId,this.platformFormModel.LastUpdateDate=this.utilities.getCurrentDate(),this.platformFormModel.DefaultPwd=e.DefaultPwd,this.editPlatformModalTitle.value=`编辑 - ${e.PlatformName}`;const o=null==(t=this.platformGrid.value)?void 0:t.getDatas();this.platformFormItems[4].selectProp.datas=o.length>0?null==o?void 0:o.map((e=>({value:e.Id,text:e.PlatformName}))):[],this.showEditPlatform.value=!0}doAddPlatform(){var e;const t=this.storageInfo.getUser();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.currentGroupRow.value.Id,this.platformFormModel.PlatformUrl="",this.platformFormModel.CABusinessKey="",this.platformFormModel.OrderNo=0,this.platformFormModel.LastUpdateUserId=t.Id,this.platformFormModel.LastUpdateUserName=t.UserName,this.platformFormModel.LastUpdateDate=this.utilities.getCurrentDate(),this.editPlatformModalTitle.value="新增 - 系统平台";const i=null==(e=this.platformGrid.value)?void 0:e.getDatas();this.platformFormItems[4].selectProp.datas=i.length>0?null==i?void 0:i.map((e=>({value:e.Id,text:e.PlatformName}))):[],this.showEditPlatform.value=!0}};const c=(e,t)=>{const i=e.__vccOpts||e;for(const[o,s]of t)i[o]=s;return i},f={class:"nv-flex",style:{"justify-content":"space-between"}},g={style:{height:"550px","overflow-y":"auto"}},I={style:{height:"400px","overflow-y":"auto"}};const v=c(p,[["render",function(e,i,o,s,r,l){const a=t.resolveComponent("NvList"),n=t.resolveComponent("Icon"),d=t.resolveComponent("Space"),u=t.resolveComponent("Button"),h=t.resolveComponent("NvBox"),p=t.resolveComponent("NvGrid"),m=t.resolveComponent("NvComForm"),c=t.resolveComponent("Form"),v=t.resolveComponent("Modal"),w=t.resolveComponent("NvPage");return t.openBlock(),t.createBlock(w,{gutter:8,class:"platform nv-flex"},{default:t.withCtx((()=>[t.createVNode(h,{width:"200px",title:"平台目录","show-arrow":!0},{footer:t.withCtx((()=>[t.createElementVNode("div",f,[t.createVNode(d,null,{default:t.withCtx((()=>[t.createVNode(n,{type:"md-add",class:"nv-c-p",size:"25",onClick:e.handleGroupAdd},null,8,["onClick"])])),_:1}),t.createVNode(d,null,{default:t.withCtx((()=>[t.createVNode(u,{type:"text",onClick:e.doRefresh},{default:t.withCtx((()=>[t.createTextVNode("刷新")])),_:1},8,["onClick"])])),_:1})])])),default:t.withCtx((()=>[t.createVNode(a,{ref:"groupData",option:e.groupOption,onSelect:e.groupSelect},null,8,["option","onSelect"])])),_:1}),t.createVNode(h,{class:"nv-flex-1",title:"系统平台"},{default:t.withCtx((()=>[t.createVNode(p,{ref:"platformGrid",option:e.platformGridOption},null,8,["option"])])),_:1}),t.createVNode(v,{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(u,{type:"text",onClick:i[0]||(i[0]=t=>e.showEditPlatform=!1)},{default:t.withCtx((()=>[t.createTextVNode("关闭")])),_:1}),t.createVNode(u,{type:"primary",loading:e.saveingPlatform,onClick:e.doSavePlatform},{default:t.withCtx((()=>[t.createTextVNode("保存")])),_:1},8,["loading","onClick"])])),default:t.withCtx((()=>[t.createElementVNode("div",g,[t.createVNode(c,{ref:"refPlatformForm",model:e.platformFormModel,"label-width":120},{default:t.withCtx((()=>[t.createVNode(m,{formModel:e.platformFormModel,formItems:e.platformFormItems},null,8,["formModel","formItems"])])),_:1},8,["model"])])])),_:1},8,["modelValue","title"]),t.createVNode(v,{modelValue:e.showEditGroup,"onUpdate:modelValue":i[3]||(i[3]=t=>e.showEditGroup=t),draggable:"",mask:!0,"mask-closable":!1,width:500,title:e.editGroupformModalTitle,styles:{top:"3%"}},{footer:t.withCtx((()=>[t.createVNode(u,{type:"text",onClick:i[2]||(i[2]=t=>e.showEditGroup=!1)},{default:t.withCtx((()=>[t.createTextVNode("关闭")])),_:1}),t.createVNode(u,{type:"primary",loading:e.saveingGroupform,onClick:e.doSaveGroupform},{default:t.withCtx((()=>[t.createTextVNode("保存")])),_:1},8,["loading","onClick"])])),default:t.withCtx((()=>[t.createElementVNode("div",I,[t.createVNode(c,{ref:"refGroupForm",model:e.groupFormModel,"label-width":115},{default:t.withCtx((()=>[t.createVNode(m,{formModel:e.groupFormModel,formItems:e.groupFormItems},null,8,["formModel","formItems"])])),_:1},8,["model"])])])),_:1},8,["modelValue","title"])])),_:1})}],["__scopeId","data-v-f58b0adc"]]),w={linkParam:{type:String,default:""},operates:{type:String,default:"-"}},y=t.defineComponent({name:"Module",components:{SelectPlatform:r.SelectPlatform},emits:["change"],props:w,setup:(e,t)=>new C(e,t)});let C=class extends e.BaseInstance{constructor(e,r){super(),u(this,"props"),u(this,"ctx"),u(this,"platformApi",new i.PlatformApi),u(this,"moduleApi",new i.ModuleApi),u(this,"selectedPlatform"),u(this,"moduleWidth",t.ref("calc(100% - 300px)")),u(this,"webOrApp",t.ref(0)),u(this,"moduleGrid",t.ref()),u(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},{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(s.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(s.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(s.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=o.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)}}})),u(this,"doPlatformChange",(e=>{this.selectedPlatform=e,this.loadModuleGridData()})),u(this,"loadModuleGridData",(()=>{this.moduleGrid.value.loadDataByQuery(o.QueryWrapper.create().eq("PlatformId",this.selectedPlatform.Id).eq("WebOrApp",this.webOrApp.value).orderBy(["OrderNo"]))})),u(this,"doChangeModuleWidth",(e=>{this.moduleWidth.value=e?"calc(100% - 300px)":"calc(100% - 45px)"})),u(this,"parentModule"),u(this,"editModulePId",0),u(this,"editModuleChildData",[]),u(this,"saveingModule",t.ref(!1)),u(this,"moduleComForm",t.ref()),u(this,"showEditModule",t.ref(!1)),u(this,"editMoudelModalTitle",t.ref("新增 - 模块")),u(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:0,LastUpdateUserName:"",LastUpdateDate:""})),u(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: '编辑' }]"}}]}])),u(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 i=this.editModuleChildData;this.editModulePId>0&&(e=await this.moduleApi.getCount(o.QueryWrapper.create().eq("PId",this.editModulePId)),t=this.utilities.parseApiResult(e),i.push({Id:this.editModulePId,HasChild:t>0?1:0})),await this.moduleApi.saves(i)}this.message.success("保存成功!"),this.moduleGrid.value.refreshData(),this.saveingModule.value=!1,this.showEditModule.value=!1})),u(this,"showImportModule",t.ref(!1)),u(this,"saveingImportModule",t.ref(!1)),u(this,"originPlatform",t.reactive({list:[],selectedItem:{Id:0,PlatformName:""},selectedId:0})),u(this,"originModuleGrid",t.ref()),u(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(s.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(s.Tag,{color:i.color},(()=>i.text))}}],event:{event_search:e=>{const t=o.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)}}})),u(this,"targetPlatform",t.reactive({Id:0,PlatformName:""})),u(this,"targetModuleGrid",t.ref()),u(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(s.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(s.Tag,{color:i.color},(()=>i.text))}}],event:{event_search:e=>{const t=o.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)}}})),u(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()})),u(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=r}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){const t=this.storageInfo.getUser();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=t.Id,this.moduleFormModel.LastUpdateUserName=t.UserName,this.moduleFormModel.LastUpdateDate=this.utilities.getCurrentDate(),this.parentModule=void 0,this.editModulePId=e.PId,this.editModuleChildData=[],this.editMoudelModalTitle.value=`编辑 - 模块 - ${e.ModuleName}`,this.setParentModuleTreeItem(!0),this.showEditModule.value=!0}doAddModule(){const e=this.storageInfo.getUser();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=e.Id,this.moduleFormModel.LastUpdateUserName=e.UserName,this.moduleFormModel.LastUpdateDate=this.utilities.getCurrentDate(),this.parentModule=void 0,this.setParentModuleTreeItem(!1),this.editMoudelModalTitle.value="新增 - 模块",this.showEditModule.value=!0}doAddChildModule(e){const t=this.storageInfo.getUser();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=t.Id,this.moduleFormModel.LastUpdateUserName=t.UserName,this.moduleFormModel.LastUpdateDate=this.utilities.getCurrentDate(),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 i=await this.moduleApi.delete(e.Id),s=this.utilities.parseApiResult(i);s<=0?this.message.warning("删除失败,请稍后重试!"):(i=await this.moduleApi.getCount(o.QueryWrapper.create().eq("PId",t)),s=this.utilities.parseApiResult(i),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(o.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=o.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=o.QueryWrapper.create().eq("PlatformId",this.targetPlatform.Id).eq("WebOrApp",this.webOrApp.value).orderBy(["OrderNo"]),i=await this.moduleApi.getEntities(t),s=this.utilities.parseApiResult(i),r={Id:0,PId:-1,ModuleName:"根节点",ModuleType:"",PlatformId:this.targetPlatform.Id,IconUrl:""};s.push(r),e.success(s)}))}};const N={style:{height:"650px","overflow-y":"auto"}},M={class:"import-module",style:{height:"650px",position:"relative"}},x={style:{width:"100%",height:"100%"}},P={style:{width:"560px",height:"100%",float:"left"}},U={style:{height:"calc(100% - 0px)"}},A={style:{width:"calc(100% - 570px)",height:"100%","margin-left":"10px",display:"inline-block"}},T={style:{height:"calc(100% - 0px)"}},F=(e=>(t.pushScopeId("data-v-5a5ef504"),e=e(),t.popScopeId(),e))((()=>t.createElementVNode("div",{class:"primary-color gird-tip"},"点击选择要放置的位置!",-1)));const b=c(y,[["render",function(e,i,o,s,r,l){const a=t.resolveComponent("SelectPlatform"),n=t.resolveComponent("Radio"),d=t.resolveComponent("RadioGroup"),u=t.resolveComponent("NvGrid"),h=t.resolveComponent("NvComForm"),p=t.resolveComponent("Form"),m=t.resolveComponent("Button"),c=t.resolveComponent("Modal"),f=t.resolveComponent("Option"),g=t.resolveComponent("Select"),I=t.resolveComponent("Card"),v=t.resolveComponent("Spin"),w=t.resolveComponent("NvBox"),y=t.resolveComponent("NvPage");return t.openBlock(),t.createBlock(y,{gutter:8,class:"module"},{default:t.withCtx((()=>[t.createVNode(w,{width:"100%",title:"模块列表"},{default:t.withCtx((()=>[t.createVNode(u,{ref:"moduleGrid",option:e.moduleGridOption},{default:t.withCtx((()=>[t.createVNode(a,{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(n,{label:0},{default:t.withCtx((()=>[t.createTextVNode("Web")])),_:1}),t.createVNode(n,{label:1},{default:t.withCtx((()=>[t.createTextVNode("App")])),_:1})])),_:1},8,["modelValue","onOnChange"])])),_:1},8,["option"]),t.createVNode(c,{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(m,{type:"text",onClick:i[1]||(i[1]=t=>e.showEditModule=!1)},{default:t.withCtx((()=>[t.createTextVNode("关闭")])),_:1}),t.createVNode(m,{type:"primary",loading:e.saveingModule,onClick:e.doSaveModule},{default:t.withCtx((()=>[t.createTextVNode("保存")])),_:1},8,["loading","onClick"])])),default:t.withCtx((()=>[t.createElementVNode("div",N,[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(c,{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(m,{type:"text",onClick:i[4]||(i[4]=t=>e.showImportModule=!1)},{default:t.withCtx((()=>[t.createTextVNode("关闭")])),_:1}),t.createVNode(m,{type:"primary",loading:e.saveingImportModule,onClick:e.doImportOriginToTargetModule},{default:t.withCtx((()=>[t.createTextVNode("引入")])),_:1},8,["loading","onClick"])])),default:t.withCtx((()=>[t.createElementVNode("div",M,[t.createElementVNode("div",x,[t.createElementVNode("div",P,[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",U,[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",A,[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",T,[t.createVNode(u,{ref:"targetModuleGrid",option:e.targetModuleGridOption},{default:t.withCtx((()=>[F])),_: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"]]),S={linkParam:{type:String,default:""},operates:{type:String,default:"-"}},R=t.defineComponent({name:"Role",components:{SelectPlatform:r.SelectPlatform},emits:[""],props:S,setup:(e,t)=>new V(e,t)});let V=class extends e.BaseInstance{constructor(e,r){super(),u(this,"props"),u(this,"ctx"),u(this,"roleApi",new i.RoleApi),u(this,"moduleApi",new i.ModuleApi),u(this,"roleModuleApi",new i.RoleModuleApi),u(this,"platformApi",new i.PlatformApi),u(this,"institutionRoleApi",new i.InstitutionRoleApi),u(this,"selectedPlatform"),u(this,"roleWidth",t.ref("calc(100% - 300px)")),u(this,"roleGrid",t.ref()),u(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:15},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(s.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(s.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=o.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)}}})),u(this,"doPlatformListSelect",(e=>{this.selectedPlatform=e;const t=this.storageInfo.getUser();this.roleGrid.value.setGloablValue("PlatformId",this.selectedPlatform.Id),this.roleGrid.value.setGloablValue("LastUpdateUserId",t.Id),this.roleGrid.value.setGloablValue("LastUpdateUserName",t.UserName),this.roleGrid.value.setGloablValue("LastUpdateDate",(()=>this.utilities.getCurrentDate())),this.loadRoleGridData()})),u(this,"loadRoleGridData",(async()=>{const e=await this.institutionRoleApi.getEntities(o.QueryWrapper.create()),t=this.utilities.parseApiResult(e),i=[];for(let o of t)i.some((e=>e==o.RoleId))||i.push(o.RoleId);const s=o.QueryWrapper.create().eq("PlatformId",this.selectedPlatform.Id).orderBy(["OrderNo"]);i.length>0&&s.notIn("Id",i),this.roleGrid.value.loadDataByQuery(s)})),u(this,"doChangeRoleWidth",(e=>{this.roleWidth.value=e?"calc(100% - 300px)":"calc(100% - 45px)"})),u(this,"refRoleForm",t.ref()),u(this,"saveingRole",t.ref(!1)),u(this,"showEditRole",t.ref(!1)),u(this,"editRoleModalTitle",t.ref("新增 - 角色")),u(this,"roleFormModel",t.reactive({Id:0,PlatformId:0,RoleName:"",RoleCode:"",RoleDesc:"",RoleStatus:1,FrontEndVisible:0,DefaultUrl:"",WelcomeUrl:"",OrderNo:0,LastUpdateUserId:0,LastUpdateUserName:"",LastUpdateDate:""})),u(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}])),u(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})),u(this,"selectRole"),u(this,"saveRoleModuleing",t.ref(!1)),u(this,"showRoleModule",t.ref(!1)),u(this,"roleModuleTitle",t.ref("")),u(this,"moduleGrid",t.ref()),u(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},pageSize:15},searchOptions:[{field:"ModuleName",title:"模块名称",type:"Input"}],rightToolbars:[{name:"refresh"}],columns:[{colType:"seq"},{colType:"ro",width:50,align:"center",format:(e,t)=>e(s.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(s.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(s.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=[],r=e(s.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(s.Divider,{type:"vertical"}),a=[];for(const d of i)o.push(d.code),a.push(e(s.Checkbox,{label:d.code},(()=>d.name)));const n=e(s.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))}},(()=>a));return e(s.Space,(()=>[r,l,n]))}}],event:{event_search:e=>{this.loadModuleGridData(e)}}})),u(this,"loadModuleGridData",(e=>{this.moduleGrid.value.loadData((async t=>{const i=o.QueryWrapper.create().eq("PlatformId",this.selectedPlatform.Id).ne("ModuleStatus",0).orderBy(["OrderNo"]);this.utilities.isNull(e.ModuleName)||i.like("ModuleName",e.ModuleName);let s=await this.moduleApi.getEntities(i),r=this.utilities.parseApiResult(s);const l=o.QueryWrapper.create().eq("RoleId",this.selectRole.Id);s=await this.roleModuleApi.getEntities(l);let a=this.utilities.parseApiResult(s);for(const e of r){const t=a.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)}))})),u(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})),u(this,"showImportRole",t.ref(!1)),u(this,"saveingImportRole",t.ref(!1)),u(this,"originPlatform",t.reactive({list:[],selectedItem:{Id:0,PlatformAbbreviation:""},selectedId:0})),u(this,"originRoleGrid",t.ref()),u(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}]})),u(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()})),u(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=r,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){const t=this.storageInfo.getUser();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=t.Id,this.roleFormModel.LastUpdateUserName=t.UserName,this.roleFormModel.LastUpdateDate=this.utilities.getCurrentDate(),this.editRoleModalTitle.value=`编辑 - ${e.RoleName}`,this.showEditRole.value=!0}doAddRole(){const e=this.storageInfo.getUser();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=e.Id,this.roleFormModel.LastUpdateUserName=e.UserName,this.roleFormModel.LastUpdateDate=this.utilities.getCurrentDate(),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(o.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=o.QueryWrapper.create().eq("PlatformId",this.originPlatform.selectedId).eq("RoleStatus",1).orderBy(["OrderNo"]);this.originRoleGrid.value.loadDataByQuery(e)}};const k={style:{height:"650px","overflow-y":"auto",position:"relative"}},D={class:"import-role",style:{height:"610px",position:"relative"}},E={style:{width:"100%",height:"100%"}},G={style:{height:"530px","overflow-y":"auto"}};const O=c(R,[["render",function(e,i,o,s,r,l){const a=t.resolveComponent("SelectPlatform"),n=t.resolveComponent("NvGrid"),d=t.resolveComponent("NvBox"),u=t.resolveComponent("Button"),h=t.resolveComponent("Modal"),p=t.resolveComponent("Option"),m=t.resolveComponent("Select"),c=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(n,{ref:"roleGrid",option:e.roleGridOption},{default:t.withCtx((()=>[t.createVNode(a,{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",k,[t.createVNode(n,{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",D,[t.createElementVNode("div",E,[t.createVNode(n,{ref:"originRoleGrid",option:e.originRoleGridOption},{default:t.withCtx((()=>[t.createVNode(m,{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(c,{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",G,[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-0f25fe31"]]),L={linkParam:{type:String,default:""},operates:{type:String,default:"-"}},B=t.defineComponent({name:"InstitutionType",components:{},emits:[""],props:L,setup:(e,t)=>new _(e,t)});class _ extends e.BaseInstance{constructor(e,s){super(),u(this,"props"),u(this,"ctx"),u(this,"institutionTypeApi",new i.InstitutionTypeApi),u(this,"institutionTypeGrid",t.ref()),u(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=o.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)}}})),u(this,"refInstitutionTypeForm",t.ref()),u(this,"saveingInstitutionType",t.ref(!1)),u(this,"showEditInstitutionType",t.ref(!1)),u(this,"editInstitutionTypeModalTitle",t.ref("新增 - 机构类型")),u(this,"institutionTypeFormModel",t.reactive({Id:0,Code:"",Name:"",Summary:"",OrderNo:0})),u(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}])),u(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=s,this.useBusinessInstitutionType()}useBusinessInstitutionType(){t.onMounted((()=>{this.loadInstitutionTypes()})),t.onUnmounted((()=>{}))}loadInstitutionTypes(){this.institutionTypeGrid.value.loadDataByQuery(o.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 W={style:{height:"350px","overflow-y":"auto"}};const q=c(B,[["render",function(e,i,o,s,r,l){const a=t.resolveComponent("NvGrid"),n=t.resolveComponent("NvBox"),d=t.resolveComponent("NvComForm"),u=t.resolveComponent("Form"),h=t.resolveComponent("Button"),p=t.resolveComponent("Modal"),m=t.resolveComponent("NvPage");return t.openBlock(),t.createBlock(m,{gutter:8,class:"institutiontype"},{default:t.withCtx((()=>[t.createVNode(n,{title:"机构类型"},{default:t.withCtx((()=>[t.createVNode(a,{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",W,[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"]]),K={linkParam:{type:String,default:""},operates:{type:String,default:"-"}},Q=t.defineComponent({name:"Institution",components:{SelectPlatform:r.SelectPlatform},emits:[""],props:K,setup:(e,t)=>new Y(e,t)});let Y=class extends e.BaseInstance{constructor(e,o){super(),u(this,"props"),u(this,"ctx"),u(this,"institutionTypeApi",new i.InstitutionTypeApi),u(this,"institutioninforApi",new i.InstitutioninforApi),u(this,"institutionPlatformApi",new i.InstitutionPlatformApi),u(this,"platformApi",new i.PlatformApi),u(this,"institutionTreeApi",new i.InstitutionTreeApi),u(this,"roleApi",new i.RoleApi),u(this,"enterpriseApi",new i.EnterpriseApi),u(this,"selectedPlatform"),u(this,"institutionTypes",t.ref([])),u(this,"enterprises",[]),u(this,"institutionWidth",t.ref("calc(100% - 45px)")),u(this,"institutionGrid",t.ref()),u(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)}}})),u(this,"doPlatformListSelect",(async e=>{this.selectedPlatform=e,await this.loadEnterprises(),this.loadInstitutionGridData(this.selectedPlatform.Id,"","",""),this.loadInstitutionTree()})),u(this,"doWidthChange",(e=>{this.institutionWidth.value=e?"calc(100% - 350px)":"calc(100% - 45px)"})),u(this,"saveingInstitution",t.ref(!1)),u(this,"showEditInstitution",t.ref(!1)),u(this,"editInstitutionTitle",t.ref("新增 - 机构")),u(this,"institutionFormModel",t.reactive({Id:0,EnterpriseId:0,InstitutionPlatformId:0,InstitutionCode:"",InstitutionName:"",InstitutionAbbreviation:"",InstitutionTypeCode:"",OrderNo:1,LastUpdateUserId:0,LastUpdateUserName:"",LastUpdateDate:""})),u(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}])),u(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})),u(this,"showImportInstitution",t.ref(!1)),u(this,"saveingImportInstitution",t.ref(!1)),u(this,"originPlatform",t.reactive({list:[],selectedItem:{Id:0,PlatformName:""},selectedId:0})),u(this,"originInstitutionGrid",t.ref()),u(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)}}})),u(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,"","","")})),u(this,"doImportInstitution",(async()=>{const e=this.originInstitutionGrid.value.getCheckboxDatas();if(e.length<=0)return void this.message.warning("请选择源平台机构信息");this.saveingImportInstitution.value=!0;let t=[];const i=this.storageInfo.getUser();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:i.Id,LastUpdateUserName:i.UserName,LastUpdateDate:this.utilities.getCurrentDate()});const o=await this.institutionPlatformApi.saves(t),s=this.utilities.parseApiResult(o);this.saveingImportInstitution.value=!1,s?(this.showImportInstitution.value=!1,this.institutionGrid.value.refreshData(),this.message.success("导入成功")):this.message.warning("导入失败, 请稍后重试")})),u(this,"selectedInstitutionTree"),u(this,"insertRecords",[]),u(this,"institutionTree",t.ref([])),u(this,"saveingInstitutionTree",t.ref(!1)),u(this,"loadingInstitutionTree",t.ref(!1)),u(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(s.Icon,{type:"md-trash",style:{fontSize:"18px",color:"rgb(225, 76, 23)"},onClick:()=>{this.doDeleteNode(t,i,o)}})])]))),u(this,"doTreeSelectChange",(e=>{e.length>0?this.selectedInstitutionTree=e[0]:this.selectedInstitutionTree=void 0})),u(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)})),u(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("操作异常, 请稍后重试!")})),u(this,"selectInstitution"),u(this,"showBindRole",t.ref(!1)),u(this,"saveingBindRole",t.ref(!1)),u(this,"roleGrid",t.ref()),u(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(s.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"}]})),u(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=o,this.useBusinessInstitutionType(),this.useBusinessInstitution()}useBusinessInstitutionType(){t.onMounted((()=>{})),t.onUnmounted((()=>{})),this.getInstitutionTypes()}async getInstitutionTypes(){const e=await this.institutionTypeApi.getEntities(o.QueryWrapper.create().eq("1",1).orderBy(["OrderNo"]));this.institutionTypes.value=this.utilities.parseApiResult(e),this.setInstitutionTypeCodeDatas()}async loadEnterprises(){const e=await this.enterpriseApi.getEntities(o.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),i=this.utilities.parseApiResult(t);i<=0?this.message.error("操作失败, 请稍后重试!"):(t=await this.institutionPlatformApi.getCount(o.QueryWrapper.create().eq("InstitutionId",e.Id)),i=this.utilities.parseApiResult(t),0==i&&(t=await this.institutioninforApi.delete(e.Id),i=this.utilities.parseApiResult(t)),t=await this.institutionTreeApi.deleteInstitutionTreeByInstitutionIdAndPlatformId(e.Id,this.selectedPlatform.Id),i=this.utilities.parseApiResult(t),this.message.success("操作成功"),this.institutionGrid.value.refreshData(),i>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){const t=this.storageInfo.getUser();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=t.Id,this.institutionFormModel.LastUpdateUserName=t.UserName,this.institutionFormModel.LastUpdateDate=this.utilities.getCurrentDate(),this.editInstitutionTitle.value="编辑 - "+e.InstitutionName,this.showEditInstitution.value=!0}doAddInstitution(){const e=this.storageInfo.getUser();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=e.Id,this.institutionFormModel.LastUpdateUserName=e.UserName,this.institutionFormModel.LastUpdateDate=this.utilities.getCurrentDate(),this.editInstitutionTitle.value="新增 - 机构",this.showEditInstitution.value=!0}doShowImportInstitution(){this.showImportInstitution.value=!0,this.loadOriginPlatforms()}async loadOriginPlatforms(){const e=await this.platformApi.getEntities(o.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=o.QueryWrapper.create().eq("PlatformId",this.selectedPlatform.Id).eq("RoleStatus",1).orderBy(["OrderNo"]),i=await this.roleApi.getEntities(t),s=this.utilities.parseApiResult(i),r=this.selectInstitution.RoleIds,l=this.utilities.isNull(r)?[]:r.split(",");for(const o of s)o.IsChk=-1!=l.findIndex((e=>e==o.Id));e.success(s)}))}};const H={style:{width:"100%",height:"100%",position:"relative"}},z={style:{height:"500px","overflow-y":"auto"}},Z={class:"import-institution",style:{height:"600px","overflow-y":"auto",position:"relative"}},$={style:{width:"100%",height:"100%"}},j={style:{height:"calc(100%)"}},J={style:{height:"610px","overflow-y":"auto",position:"relative"}};const X=c(Q,[["render",function(e,i,o,s,r,l){const a=t.resolveComponent("SelectPlatform"),n=t.resolveComponent("NvGrid"),d=t.resolveComponent("NvBox"),u=t.resolveComponent("Tree"),h=t.resolveComponent("Spin"),p=t.resolveComponent("Button"),m=t.resolveComponent("Space"),c=t.resolveComponent("NvComForm"),f=t.resolveComponent("Form"),g=t.resolveComponent("Modal"),I=t.resolveComponent("Option"),v=t.resolveComponent("Select"),w=t.resolveComponent("NvPage");return t.openBlock(),t.createBlock(w,{gutter:8,class:"institution"},{default:t.withCtx((()=>[t.createVNode(d,{width:e.institutionWidth,title:"机构列表"},{default:t.withCtx((()=>[t.createVNode(n,{ref:"institutionGrid",option:e.institutionGridOption},{default:t.withCtx((()=>[t.createVNode(a,{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(m,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",H,[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",z,[t.createVNode(f,{model:e.institutionFormModel,"label-width":90},{default:t.withCtx((()=>[t.createVNode(c,{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",Z,[t.createElementVNode("div",$,[t.createElementVNode("div",j,[t.createVNode(n,{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",J,[t.createVNode(n,{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"]]),ee=t.defineComponent({name:"LoginLog",components:{},emits:[""],props:{},setup:(e,t)=>new te(e,t)});let te=class extends e.BaseInstance{constructor(e,s){super(),u(this,"props"),u(this,"ctx"),u(this,"loginLogApi",new i.LoginLogApi),u(this,"platformId",0),u(this,"userId",0),u(this,"loginLogGrid",t.ref()),u(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)}}})),u(this,"loadLoginLog",((e,t,i={})=>{this.platformId=e,this.userId=t;const s=o.QueryWrapper.create();s.eq("PlatformId",this.platformId).eq("UserId",this.userId).orderBy(["Id"],!1),this.utilities.isNull(i.IPAddress)||s.like("IPAddress",i.IPAddress);const r=this.utilities.dateHelper.format(i.LoginDate,"YYYY-MM-DD");this.utilities.isNull(i.LoginDate)||s.between("LoginDate",`${r} 00:00:00`,`${r} 23:59:59`),this.loginLogGrid.value.loadDataByQuery(s)})),this.props=e,this.ctx=s}};const ie={class:"loginLog"};const oe=c(ee,[["render",function(e,i,o,s,r,l){const a=t.resolveComponent("NvGrid");return t.openBlock(),t.createElementBlock("div",ie,[t.createVNode(a,{ref:"loginLogGrid",option:e.loginLogGridOption},null,8,["option"])])}],["__scopeId","data-v-4e2e0184"]]),se={linkParam:{type:String,default:""},operates:{type:String,default:"-"}},re=t.defineComponent({name:"Userinfor",components:{SelectPlatform:r.SelectPlatform,LoginLog:oe,BaseLogin:r.BaseLogin},emits:[""],props:se,setup:(e,t)=>new le(e,t)});let le=class extends e.BaseInstance{constructor(e,r){super(),u(this,"props"),u(this,"ctx"),u(this,"platformApi",new i.PlatformApi),u(this,"institutionTreeApi",new i.InstitutionTreeApi),u(this,"userinforApi",new i.UserinforApi),u(this,"institutionUserApi",new i.InstitutionUserApi),u(this,"userRoleApi",new i.UserRoleApi),u(this,"institutionPlatformApi",new i.InstitutionPlatformApi),u(this,"roleApi",new i.RoleApi),u(this,"oauthApi",new i.OAuthApi),u(this,"userSignApi",new i.UserSignApi),u(this,"signTaskInfoApi",new l.SignTaskInfoApi),u(this,"selectedPlatform"),u(this,"selectedInsTree"),u(this,"institutionTree",t.ref([])),u(this,"loadingInstitutionTree",t.ref(!1)),u(this,"doChangePlatform",(e=>{this.selectedPlatform=e,this.loadInsTree()})),u(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,"[未知节点]"))])]))),u(this,"doChangeInsTree",(e=>{e.length>0&&(this.selectedInsTree=e[0],this.loadInstitutionTreeUsers({}))})),u(this,"doRefreshInsTree",(()=>{this.loadInsTree()})),u(this,"userBoxWidth",t.ref("calc(100% - 300px)")),u(this,"insTreeUserGrid",t.ref()),u(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(s.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:"resize",text:"重置",onclick:(e,t)=>{this.doResetUserPwd(e.Id)}}]}],event:{event_search:e=>{this.insTreeUserGrid.value.setPageIndex(1),this.loadInstitutionTreeUsers(e)}}})),u(this,"doChangeUserBoxWidth",(e=>{this.userBoxWidth.value=e?"calc(100% - 300px)":"calc(100% - 45px)"})),u(this,"showEditUser",t.ref(!1)),u(this,"saveingUser",t.ref(!1)),u(this,"editUserTitle",t.ref("新增 - 用户")),u(this,"userForm",t.ref()),u(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:0,LastUpdateUserName:"",LastUpdateDate:""})),u(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"}]}])),u(this,"userFormRule",t.reactive({UserName:[{required:!0,message:"姓名不能为空",trigger:"blur"}],Account:[{required:!0,message:"姓名不能为空",trigger:"blur"}]})),u(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=o.QueryWrapper.create();t.eq("Phone",this.userFormModel.Phone).eq("IsDel",0),this.userFormModel.Id>0&&t.ne("Id",this.userFormModel.Id);const i=await this.userinforApi.isExist(t);if(e=this.utilities.parseApiResult(i),e)return this.message.warning(`手机号 ${this.userFormModel.Phone} 已关联其他账号, 请重新输入!`),void(this.saveingUser.value=!1)}const t=o.QueryWrapper.create();t.eq("Account",this.userFormModel.Account).eq("IsDel",0),this.userFormModel.Id>0&&t.ne("Id",this.userFormModel.Id);let i=await this.userinforApi.isExist(t);if(e=this.utilities.parseApiResult(i),e)return this.message.warning(`账号 ${this.userFormModel.Account} 已存在, 请重新输入!`),void(this.saveingUser.value=!1);i=await this.userinforApi.save(this.userFormModel),e=this.utilities.parseApiResult(i),0==this.userFormModel.Id&&(await this.institutionUserApi.save({InstitutionId:this.selectedInsTree.InstitutionId,UserId:e,InsTreeId:this.selectedInsTree.Id}),await this.userinforApi.initialUserPwd(e,this.selectedPlatform.Id)),this.saveingUser.value=!1,e>0?(this.message.success("保存成功"),this.insTreeUserGrid.value.refreshData(),this.showEditUser.value=!1):this.message.error(i.msg)})),u(this,"currentUser"),u(this,"showUserRole",t.ref(!1)),u(this,"saveingUserRole",t.ref(!1)),u(this,"userRoleGrid",t.ref()),u(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(s.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"}]})),u(this,"doSaveUserRole",(async()=>{const e=this.userRoleGrid.value.getDatas().filter((e=>1==e.IsChk));this.saveingUserRole.value=!0;let t=await this.userRoleApi.getEntities(o.QueryWrapper.create().eq("UserId",this.currentUser.Id).eq("PlatformId",this.selectedPlatform.Id)),i=this.utilities.parseApiResult(t),s=[];for(const o of e)-1==i.findIndex((e=>e.RoleId==o.Id))&&s.push({PlatformId:this.selectedPlatform.Id,UserId:this.currentUser.Id,RoleId:o.Id});let r=[];for(const o of i)-1==e.findIndex((e=>e.Id==o.RoleId))&&r.push(o.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("保存失败, 请稍后重试!")})),u(this,"showImportUser",t.ref(!1)),u(this,"saveingImportUser",t.ref(!1)),u(this,"otherUserGrid",t.ref()),u(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(s.Tag,{color:i.color},(()=>i.text))}}],event:{event_search:e=>{this.loadImportUserGrid(e)}}})),u(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("导入失败, 请稍后重试!")})),u(this,"showLoginLog",t.ref(!1)),u(this,"loginLogRef",t.ref()),u(this,"doShowLoginLog",(e=>{this.showLoginLog.value=!0,this.loginLogRef.value.loadLoginLog(this.selectedPlatform.Id,e.Id)})),u(this,"loginRef",t.ref()),u(this,"logining",t.ref(!1)),u(this,"showEditUserSign",t.ref(!1)),u(this,"saveingUserSign",t.ref(!1)),u(this,"userSignForm",t.ref()),u(this,"userSignFormModel",t.reactive({Id:0,UserId:0,CAUserInfoKey:"",CAUserSealKey:"",CAUserYZKey:"",CAUserSealImg:"",CAUserYZImg:""})),u(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}])),u(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("保存失败,请稍后重试")})),u(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("读取失败,请稍后重试")})),u(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=r}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){const t=this.storageInfo.getUser();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=t.Id,this.userFormModel.LastUpdateUserName=t.UserName,this.userFormModel.LastUpdateDate=this.utilities.getCurrentDate(),this.editUserTitle.value="编辑用户 - "+e.UserName,this.showEditUser.value=!0}doAddUser(){const e=this.storageInfo.getUser();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 t=this.utilities.getCurrentDate();t=this.utilities.dateHelper.format(this.utilities.dateHelper.add(this.utilities.stringHelper.toDate(t),1,"years"),"YYYY-MM-DD"),this.userFormModel.ExpiredDate=t,this.userFormModel.IsMutex=0,this.userFormModel.PwdAuthentication=0,this.userFormModel.LastUpdateUserId=e.Id,this.userFormModel.LastUpdateUserName=e.UserName,this.userFormModel.LastUpdateDate=this.utilities.getCurrentDate(),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(o.QueryWrapper.create().eq("UserId",this.currentUser.Id).eq("PlatformId",this.selectedPlatform.Id)),i=this.utilities.parseApiResult(t);t=await this.institutionPlatformApi.getEntityByFilter(o.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(o.QueryWrapper.create().in("Id",s.RoleIds.split(",")));let r=this.utilities.parseApiResult(t);for(const o of r){const e=!this.utilities.isNull(i)&&i.findIndex((e=>e.RoleId==o.Id))>=0;o.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(o.QueryWrapper.create().eq("UserId",e.Id)),i=this.utilities.parseApiResult(t);this.utilities.isNull(i)?(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=i.Id,this.userSignFormModel.UserId=i.UserId,this.userSignFormModel.CAUserInfoKey=i.CAUserInfoKey,this.userSignFormModel.CAUserSealKey=i.CAUserSealKey,this.userSignFormModel.CAUserYZKey=i.CAUserYZKey,this.userSignFormModel.CAUserSealImg=i.CAUserSealImg,this.userSignFormModel.CAUserYZImg=i.CAUserYZImg)}doResetUserPwd(e){this.modal.confirm({title:"提示",content:"确定要重置为初始密码吗?",onOk:async()=>{const t=await this.userinforApi.resetUserPwd(e);this.utilities.parseApiResult(t)>0?this.message.success("重置成功"):this.message.error("操作失败,请稍后重试")}})}};const ae=e=>(t.pushScopeId("data-v-3969fae6"),e=e(),t.popScopeId(),e),ne={class:"instree-search"},de={class:"instree-list"},ue={style:{height:"600px","overflow-y":"auto"}},he=ae((()=>t.createElementVNode("div",{style:{"margin-left":"16px",color:"#ff9900"}},[t.createElementVNode("div",{style:{"padding-bottom":"8px"}},"用户账号:手机号必填。在新设备登录时,需进行短信验证。"),t.createElementVNode("div",null,"内部账号:手机号可不填。")],-1))),pe={style:{height:"600px","overflow-y":"auto"}},me=ae((()=>t.createElementVNode("div",{class:"primary-color gird-tip"},"勾选绑定用户角色!",-1))),ce={style:{height:"650px","overflow-y":"auto"}},fe=ae((()=>t.createElementVNode("div",{class:"primary-color gird-tip"},"勾选需要引入的用户!",-1))),ge={style:{height:"650px","overflow-y":"auto"}},Ie={style:{display:"none"}},ve={style:{height:"400px","overflow-y":"auto"}},we=["src"],ye=["src"];const Ce=c(re,[["render",function(e,i,o,s,r,l){const a=t.resolveComponent("SelectPlatform"),n=t.resolveComponent("Tree"),d=t.resolveComponent("Spin"),u=t.resolveComponent("Button"),h=t.resolveComponent("Space"),p=t.resolveComponent("NvBox"),m=t.resolveComponent("NvGrid"),c=t.resolveComponent("NvComForm"),f=t.resolveComponent("Form"),g=t.resolveComponent("Modal"),I=t.resolveComponent("LoginLog"),v=t.resolveComponent("BaseLogin"),w=t.resolveComponent("FormItem"),y=t.resolveComponent("NvPage");return t.openBlock(),t.createBlock(y,{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",ne,[t.createVNode(a,{onSelect:e.doChangePlatform,width:"100%",showLabel:!1},null,8,["onSelect"])]),t.createElementVNode("div",de,[t.createVNode(n,{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(m,{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",ue,[t.createVNode(f,{ref:"userForm",model:e.userFormModel,"label-width":120,rules:e.userFormRule},{default:t.withCtx((()=>[t.createVNode(c,{ref:"userComForm",formModel:e.userFormModel,formItems:e.userFormItems},null,8,["formModel","formItems"])])),_:1},8,["model","rules"]),he])])),_: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",pe,[t.createVNode(m,{ref:"userRoleGrid",option:e.userRoleGridOption},{default:t.withCtx((()=>[me])),_: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",ce,[t.createVNode(m,{ref:"otherUserGrid",option:e.otherUserGridOption},{default:t.withCtx((()=>[fe])),_: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",ge,[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",Ie,[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",ve,[t.createVNode(f,{ref:"userSignForm",model:e.userSignFormModel,"label-width":85},{default:t.withCtx((()=>[t.createVNode(c,{ref:"userSignComForm",formModel:e.userSignFormModel,formItems:e.userSignFormItems},null,8,["formModel","formItems"]),t.createVNode(w,{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,we)):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(w,{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,ye)):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"]]),Ne={linkParam:{type:String,default:""},operates:{type:String,default:"-"}},Me=t.defineComponent({name:"Enterprise",components:{SelectPlatform:r.SelectPlatform},emits:[""],props:Ne,setup:(e,t)=>new xe(e,t)});let xe=class extends e.BaseInstance{constructor(e,o){super(),u(this,"props"),u(this,"ctx"),u(this,"platformApi",new i.PlatformApi),u(this,"enterpriseApi",new i.EnterpriseApi),u(this,"provinceApi",new a.ProvinceApi),u(this,"cityApi",new a.CityApi),u(this,"areaApi",new a.AreaApi),u(this,"selectedPlatform"),u(this,"provinces",[]),u(this,"cities",[]),u(this,"areas",[]),u(this,"refSelectPlatform",t.ref()),u(this,"onlyView",t.ref(!1)),u(this,"enterpriseGrid",t.ref()),u(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)}}})),u(this,"doPlatformChange",(e=>{this.selectedPlatform=e,this.loadEnterpriseGridData({})})),u(this,"saveingEnterprise",t.ref(!1)),u(this,"showEditEnterprise",t.ref(!1)),u(this,"editEnterpriseTitle",t.ref("新增 - 企业")),u(this,"enterpriseFormModel",t.reactive({Id:0,PlatformId:0,EnterpriseName:"",EnterpriseCode:"",LegalPerson:"",RegisteredCapital:0,Province:"",City:"",Area:"",Address:"",Contact:"",TelPhone:"",LastUpdateUserId:0,LastUpdateUserName:"",LastUpdateTime:"",PostalCode:"",Fax:"",Email:""})),u(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:"请输入联系电话"}},{model:"PostalCode",label:"邮政编码",type:"Input",span:12,inputProp:{placeholder:"请输入邮政编码"}},{model:"Email",label:"Email",type:"Input",span:12,inputProp:{placeholder:"请输入Email地址"}},{model:"Fax",label:"传真",type:"Input",span:12,inputProp:{placeholder:"请输入传真"}}]}])),u(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=o,this.useArea()}async useArea(){let e=await this.provinceApi.getEntities(o.QueryWrapper.create().eq("1","1"));this.provinces=this.utilities.parseApiResult(e),e=await this.cityApi.getEntities(o.QueryWrapper.create().eq("1","1")),this.cities=this.utilities.parseApiResult(e),e=await this.areaApi.getEntities(o.QueryWrapper.create().eq("1","1")),this.areas=this.utilities.parseApiResult(e),this.setProvinceDatas(),this.refSelectPlatform.value.loadPlatforms()}loadEnterpriseGridData(e){const t=o.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(){const e=this.storageInfo.getUser();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.PostalCode="",this.enterpriseFormModel.Fax="",this.enterpriseFormModel.Email="",this.enterpriseFormModel.LastUpdateUserId=e.Id,this.enterpriseFormModel.LastUpdateUserName=e.UserName,this.enterpriseFormModel.LastUpdateTime=this.utilities.getCurrentDate(),this.setCityDatas(""),this.setAreaDatas(""),this.editEnterpriseTitle.value="新增 - 企业",this.showEditEnterprise.value=!0}doEditEnterprise(e){const t=this.storageInfo.getUser();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.PostalCode=e.PostalCode,this.enterpriseFormModel.Fax=e.Fax,this.enterpriseFormModel.Email=e.Email,this.enterpriseFormModel.LastUpdateUserId=t.Id,this.enterpriseFormModel.LastUpdateUserName=t.UserName,this.enterpriseFormModel.LastUpdateTime=this.utilities.getCurrentDate(),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 Pe={style:{height:"650px","overflow-y":"auto"}};const Ue=c(Me,[["render",function(e,i,o,s,r,l){const a=t.resolveComponent("SelectPlatform"),n=t.resolveComponent("NvGrid"),d=t.resolveComponent("NvBox"),u=t.resolveComponent("NvComForm"),h=t.resolveComponent("Form"),p=t.resolveComponent("Button"),m=t.resolveComponent("Modal"),c=t.resolveComponent("NvPage");return t.openBlock(),t.createBlock(c,{gutter:8,class:""},{default:t.withCtx((()=>[t.createVNode(d,{width:"100%",title:"企业列表"},{default:t.withCtx((()=>[t.createVNode(n,{ref:"enterpriseGrid",option:e.enterpriseGridOption},{default:t.withCtx((()=>[t.createVNode(a,{ref:"refSelectPlatform",onSelect:e.doPlatformChange,defaultLoad:!1},null,8,["onSelect"])])),_:1},8,["option"])])),_:1}),t.createVNode(m,{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",Pe,[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-58aa3e77"]]);class Ae extends o.BaseApi{get ProxyName(){return"CalcPythonApi"}constructor(){super(),this.addHeader("projectid",0),this.addHeader("devprod","dev"),this.addHeader("dbSkey","08fb72ad2cf661088849ef17fdaab21a")}}class Te extends Ae{get ControllerName(){return"currency"}constructor(){super(),this.addHeader("tableName","core_partner")}}class Fe extends Ae{get ControllerName(){return"currency"}constructor(){super(),this.addHeader("tableName","core_platform_config")}}const be={linkParam:{type:String,default:""},operates:{type:String,default:"-"}},Se=t.defineComponent({name:"Information",components:{NvComFormUp:n.NvComFormUp},emits:[""],props:be,setup:(e,t)=>new Re(e,t)});class Re extends e.BaseInstance{constructor(e,i){super(),u(this,"props"),u(this,"ctx"),u(this,"corePartnerApi",new Te),u(this,"roleWidth",t.ref("calc(100% - 300px)")),u(this,"roleGrid",t.ref()),u(this,"roleGridOption",t.reactive({api:this.corePartnerApi,setting:{border:!0,searchConfig:{btnSpan:6,labelWidth:130,defaultShowSearch:!1},toolbarConfig:{isButtonGroup:!1},rowConfig:{isHover:!0},isPagination:!0,pageSize:10},searchOptions:[{field:"UnitName",title:"第三方单位名称",type:"Input"}],toolbars:[{name:"add",text:"新增",onclick:()=>{this.doAddRole()}}],rightToolbars:[{name:"refresh"}],columns:[{colType:"seq"},{colType:"ed",field:"UnitName",title:"第三方单位名称",align:"left",minWidth:250},{colType:"ed",field:"Contact",title:"联系人",width:200,align:"center"},{colType:"ed",field:"ContactPhone",title:"联系电话",width:200,align:"center"},{colType:"select",field:"IsAuthorize",title:"授权状态",width:140,align:"center",defaultValue:1,select:{data:[{text:"是",value:1},{text:"否",value:2}]},format:(e,t)=>{const i={1:{text:"是",color:"green"},2:{text:"否",color:"red"}}[t.row.IsAuthorize];return e(s.Tag,{color:i.color},(()=>i.text))}},{colType:"select",field:"BusinessType",title:"业务类型",width:140,align:"center",defaultValue:1,select:{data:[{text:"接收",value:1},{text:"推送",value:2}]},format:(e,t)=>{const i={1:{text:"接收",color:"green"},2:{text:"推送",color:"blue"}}[t.row.BusinessType];return e(s.Tag,{color:null==i?void 0:i.color},(()=>null==i?void 0:i.text))}},{colType:"ed",field:"CreateUserName",title:"创建人名称",width:200,align:"center"},{title:"操作",width:200,rowButtons:[{name:"view",text:"开启",isShow:e=>2===e.IsAuthorize,onclick:(e,t)=>{e.IsAuthorize=1,this.doSaveRole2(e)}},{name:"view",text:"禁用",isShow:e=>1===e.IsAuthorize,onclick:(e,t)=>{e.IsAuthorize=2,this.doSaveRole2(e)}},{name:"edit",text:"编辑",onclick:(e,t)=>{this.doEditRole(e)}},{name:"delete",text:"删除",onclick:(e,t)=>{this.doDeleteRole(e)}}]}],event:{event_search:e=>{this.roleGrid.value.setPageIndex(1);const t=o.QueryWrapper.create().orderBy(["CreateDate"]);this.utilities.isNull(e.UnitName)||t.like("UnitName",e.UnitName),this.roleGrid.value.loadDataByQuery(t)}}})),u(this,"refRoleForm",t.ref()),u(this,"saveingRole",t.ref(!1)),u(this,"showEditRole",t.ref(!1)),u(this,"editRoleModalTitle",t.ref("新增 - 第三方信息")),u(this,"roleFormModel",t.reactive({Id:0,UnitName:"",Contact:"",ContactPhone:"",UniqueKey:"",IsAuthorize:2,BusinessType:1,CreateDate:"",CreateUserId:0,CreateUserName:"",Token:""})),u(this,"roleFormItems",t.reactive([{label:"第三方单位名称","label-width":130,model:"UnitName",prop:"UnitName",type:"Input",span:24,rules:[{required:!0,message:"第三方单位名称不能为空",trigger:"blur"}]},{label:"联系人","label-width":130,model:"Contact",prop:"Contact",type:"Input",span:12},{label:"联系电话","label-width":130,model:"ContactPhone",prop:"ContactPhone",type:"Input",span:12},{model:"BusinessType","label-width":130,label:"业务类型",prop:"BusinessType",type:"Radio",span:12,radioProp:{datas:[{text:"接收",value:1},{text:"推送",value:2}],type:"button"}},{label:"唯一标识","label-width":130,model:"UniqueKey",prop:"UniqueKey",type:"Input",span:24,isShow:!1,inputProp:{disabled:!0}},{label:"附件","label-width":130,model:"Token",prop:"Token",type:"UploadFile",span:24}])),u(this,"doSaveRole",(async()=>{if(!(await this.refRoleForm.value.validate()))return;this.saveingRole.value=!0;let e=await this.corePartnerApi.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})),u(this,"doSaveRole2",(async e=>{let t=await this.corePartnerApi.save(e);this.utilities.parseApiResult(t)<=0?this.message.warning("变更失败,请稍后重试!"):(this.message.success("变更成功!"),this.roleGrid.value.refreshData())})),this.props=e,this.ctx=i,this.useBusinessRole()}useBusinessRole(){t.onMounted((()=>{this.loadMainData()})),t.onUnmounted((()=>{}))}doDeleteRole(e){this.modal.confirm({title:"提示",content:`确定要删除${e.UnitName}吗`,onOk:async()=>{const t=await this.corePartnerApi.delete(e.Id);this.utilities.parseApiResult(t)?(this.message.success("删除成功!"),this.roleGrid.value.refreshData()):this.message.warning("操作异常, 请稍后重试!")}})}async loadMainData(){const e=o.QueryWrapper.create().orderBy(["CreateDate"]);this.roleGrid.value.loadDataByQuery(e)}doEditRole(e){this.storageInfo.getUser(),this.roleFormModel.Id=e.Id,this.roleFormModel.UnitName=e.UnitName,this.roleFormModel.Contact=e.Contact,this.roleFormModel.ContactPhone=e.ContactPhone,this.roleFormModel.UniqueKey=e.UniqueKey,this.roleFormModel.IsAuthorize=e.IsAuthorize,this.roleFormModel.BusinessType=e.BusinessType,this.roleFormModel.CreateDate=e.CreateDate,this.roleFormModel.CreateUserId=e.CreateUserId,this.roleFormModel.CreateUserName=e.CreateUserName,this.roleFormModel.Token=e.Token,this.roleFormItems[4].isShow=!0,this.editRoleModalTitle.value=`编辑 - ${e.UnitName}`,this.showEditRole.value=!0}doAddRole(){const e=this.storageInfo.getUser();this.roleFormModel.Id=0,this.roleFormModel.UnitName="",this.roleFormModel.Contact="",this.roleFormModel.ContactPhone="",this.roleFormModel.UniqueKey=this.utilities.getUniqueCode(),this.roleFormModel.IsAuthorize=2,this.roleFormModel.BusinessType=1,this.roleFormModel.CreateDate=this.utilities.getCurrentDate(),this.roleFormModel.CreateUserId=e.Id,this.roleFormModel.CreateUserName=e.UserName,this.roleFormModel.Token=this.utilities.getUniqueCode(),this.roleFormItems[4].isShow=!1,this.editRoleModalTitle.value="新增 - 第三方信息",this.showEditRole.value=!0}}const Ve={style:{"overflow-y":"auto"}};const ke=c(Se,[["render",function(e,i,o,s,r,l){const a=t.resolveComponent("NvGrid"),n=t.resolveComponent("NvBox"),d=t.resolveComponent("NvComFormUp"),u=t.resolveComponent("Form"),h=t.resolveComponent("Button"),p=t.resolveComponent("Modal"),m=t.resolveComponent("NvPage");return t.openBlock(),t.createBlock(m,{gutter:8,class:"information"},{default:t.withCtx((()=>[t.createVNode(n,{width:"100%",title:"第三方信息"},{default:t.withCtx((()=>[t.createVNode(a,{ref:"roleGrid",option:e.roleGridOption},null,8,["option"])])),_:1}),t.createVNode(p,{modelValue:e.showEditRole,"onUpdate:modelValue":i[1]||(i[1]=t=>e.showEditRole=t),draggable:"",mask:!0,"mask-closable":!1,width:620,title:e.editRoleModalTitle,styles:{top:"3%"}},{footer:t.withCtx((()=>[t.createVNode(h,{type:"text",onClick:i[0]||(i[0]=t=>e.showEditRole=!1)},{default:t.withCtx((()=>[t.createTextVNode("关闭")])),_:1}),t.createVNode(h,{type:"primary",loading:e.saveingRole,onClick:e.doSaveRole},{default:t.withCtx((()=>[t.createTextVNode("保存")])),_:1},8,["loading","onClick"])])),default:t.withCtx((()=>[t.createElementVNode("div",Ve,[t.createVNode(u,{ref:"refRoleForm",model:e.roleFormModel,"label-width":90},{default:t.withCtx((()=>[t.createVNode(d,{formModel:e.roleFormModel,formItems:e.roleFormItems},null,8,["formModel","formItems"])])),_:1},8,["model"])])])),_:1},8,["modelValue","title"])])),_:1})}]]),De={linkParam:{type:String,default:""},operates:{type:String,default:"-"},platformInfo:{type:Object,default:{}},configType:{type:String,default:"BD"}},Ee=t.defineComponent({name:"GeneralConfiguration",components:{},emits:[""],props:De,setup:(e,t)=>new Ge(e,t)});class Ge extends e.BaseInstance{constructor(e,o){super(),u(this,"props"),u(this,"ctx"),u(this,"platformApi",new i.PlatformApi),u(this,"dictionaryDetailApi",new a.DictionaryDetailApi),u(this,"dictionaryTypeApi",new a.DictionaryTypeApi),u(this,"corePlatformConfigApi",new Fe),u(this,"nowRow",t.reactive({Id:0,PlatformId:0,ProjectConfig:"[]",ConstructConfig:"[]",LastUpdateUserId:this.storageInfo.getUser().Id,LastUpdateUserName:this.storageInfo.getUser().UserName,LastUpdateDate:this.utilities.getCurrentDate()})),u(this,"generalConfGrid",t.ref()),u(this,"generalConfGridOption",t.reactive({api:this.platformApi,setting:{searchConfig:{btnSpan:6,labelWidth:120,defaultShowSearch:!1},toolbarConfig:{isButtonGroup:!1},rowConfig:{isCurrent:!1,isHover:!0},editConfig:{trigger:"click",mode:"row",showStatus:!0},isPagination:!1,pageSize:10},searchOptions:[],toolbars:[{name:"add",onclick:()=>{this.doAddFormData()}},{name:"save",onclick:()=>{this.saveFormData()}},{name:"delete",text:"删除",onclick:()=>{this.deleteFormData()}}],rightToolbars:[{name:"refresh"}],columns:[{colType:"seq"},{colType:"checkbox"},{colType:"ro",field:"label",title:"标签文本",align:"left",minWidth:250},{colType:"ro",field:"prop",title:"属性字段",align:"left",minWidth:250},{colType:"ro",field:"model",title:"表单字段",align:"left",minWidth:250},{colType:"select",field:"seltype",title:"类型",minWidth:240,align:"center",select:{data:[{value:"Input",text:"文字输入框"},{value:"InputNumber",text:"数字输入框"},{value:"Textarea",text:"多行文本"},{value:"TextEditor",text:"富文本"},{value:"DatePicker",text:"日期选择"},{value:"TimePicker",text:"时间选择"},{value:"UploadFile",text:"附件"},{value:"region",text:"地区选择"}]},change:e=>{switch(e.seltype){case"Input":e.type="Input";break;case"InputNumber":e.type="InputNumber",e.rules=[{required:!0,type:"number",message:e.message,trigger:"blur"}];break;case"Textarea":e.type="Input",e.inputProp={type:"textarea",rows:4};break;case"DatePicker":e.type="DatePicker",e.rules=[{required:!0,type:"date",message:e.message,trigger:"change"}];break;case"TimePicker":e.type="TimePicker",e.rules=[{required:!0,type:"date",message:e.message,trigger:"change"}];break;case"UploadFile":e.type="UploadFile";break;case"TextEditor":e.type="TextEditor",e.textHeight=160;break;case"region":e.type="region"}}},{colType:"ed",field:"append",title:"输入框单位",minWidth:120,align:"center",change:e=>{e.append&&"Input"==e.seltype?(e.type="Input",e.inputProp={type:"text",append:e.append}):(e.type=e.seltype,e.inputProp={})}},{colType:"select",field:"span",title:"占位格数",minWidth:120,align:"right",select:{data:[{value:8,text:"8"},{value:12,text:"12"},{value:24,text:"24"}]}},{colType:"select",field:"requiredd",title:"必填项",minWidth:120,align:"center",select:{data:[{value:1,text:"必填"},{value:0,text:"可空"}]},change:e=>{1==e.requiredd?e.rules=[{required:!0,message:e.message,trigger:"blur"}]:e.rules=[]}},{colType:"ed",field:"message",title:"提示信息",minWidth:200,align:"left",change:e=>{e.message?e.rules=[{required:!0,message:e.message,trigger:"blur"}]:e.rules=[]}},{colType:"num",field:"orderNum",title:"排序号",minWidth:80,align:"right"}],event:{}})),u(this,"saveFormData",(async()=>{const e=this.generalConfGrid.value.getSaveDatas();if(0==e.length)return void this.message.warning("没有需要保存的数据");let t="GC"==this.props.configType?this.utilities.deepCopy(JSON.parse(this.nowRow.ProjectConfig)):this.utilities.deepCopy(JSON.parse(this.nowRow.ConstructConfig));t.forEach((t=>{e.forEach((e=>{t.model==e.model&&Object.assign(t,e)}))}));let i={Id:this.nowRow.Id>0?this.nowRow.Id:0,PlatformId:this.props.platformInfo.Id,ProjectConfig:"GC"==this.props.configType?JSON.stringify(t):this.nowRow.ProjectConfig,ConstructConfig:"BD"==this.props.configType?JSON.stringify(t):this.nowRow.ConstructConfig,LastUpdateUserId:this.storageInfo.getUser().Id,LastUpdateUserName:this.storageInfo.getUser().UserName,LastUpdateDate:this.utilities.getCurrentDate()};this.utilities.parseApiResult(await this.corePlatformConfigApi.save(i))>0?(this.message.success("保存成功"),this.loadGeneralSituationData()):this.message.warning("保存失败")})),u(this,"deleteFormData",(async()=>{const e=this.generalConfGrid.value.getCheckboxDatas();0!=e.length?this.modal.confirm({title:"提示",content:"确定删除所选数据吗?",onOk:async()=>{let t="GC"==this.props.configType?this.utilities.deepCopy(JSON.parse(this.nowRow.ProjectConfig)):this.utilities.deepCopy(JSON.parse(this.nowRow.ConstructConfig));e.forEach((e=>{t.forEach(((i,o)=>{e.prop==i.prop&&t.splice(o,1)}))}));let i={Id:this.nowRow.Id>0?this.nowRow.Id:0,PlatformId:this.props.platformInfo.Id,ProjectConfig:"GC"==this.props.configType?JSON.stringify(t):this.nowRow.ProjectConfig,ConstructConfig:"BD"==this.props.configType?JSON.stringify(t):this.nowRow.ConstructConfig,LastUpdateUserId:this.storageInfo.getUser().Id,LastUpdateUserName:this.storageInfo.getUser().UserName,LastUpdateDate:this.utilities.getCurrentDate()};this.utilities.parseApiResult(await this.corePlatformConfigApi.save(i))>0?(this.message.success("删除成功"),this.loadGeneralSituationData()):this.message.error("删除失败")}}):this.message.warning("未勾选数据")})),u(this,"isShowDicModal",t.ref(!1)),u(this,"dicModalTitle",t.ref("概况选择")),u(this,"isShowDicModalLoading",t.ref(!1)),u(this,"dicModalGrid",t.ref()),u(this,"dicModalGridOption",t.reactive({api:this.platformApi,setting:{searchConfig:{btnSpan:6,labelWidth:120,defaultShowSearch:!1},toolbarConfig:{isButtonGroup:!1},rowConfig:{isCurrent:!0,isHover:!0},isPagination:!1,pageSize:10},searchOptions:[],toolbars:[],rightToolbars:[{name:"refresh"}],columns:[{colType:"seq"},{colType:"checkbox"},{colType:"ro",field:"DetailInfor",title:"标签文本",minWidth:200,align:"left"},{colType:"ro",field:"DetailValue",title:"属性字段",minWidth:200,align:"left"}],event:{}})),u(this,"doSaveDicModal",(async()=>{const e=this.dicModalGrid.value.getCheckboxDatas();if(0==e.length)return void this.message.warning("请先勾选数据");this.isShowDicModalLoading.value=!0;let t=[];e.forEach(((e,i)=>{t.push({label:e.DetailInfor,prop:e.DetailValue,model:e.DetailValue,type:"Input",seltype:"Input",append:"",span:8,orderNum:i,requiredd:1,message:e.DetailInfor+"不能为空",rules:[{required:!0,message:e.DetailInfor+"不能为空",trigger:"blur"}]})}));let i="GC"==this.props.configType?this.utilities.deepCopy(JSON.parse(this.nowRow.ProjectConfig)):this.utilities.deepCopy(JSON.parse(this.nowRow.ConstructConfig)),o=[...t,...i].reduce(((e,t)=>{let i=e.find((e=>e.model==t.model));return i?Object.assign(i,t):e.push(t),e}),[]),s={Id:this.nowRow.Id>0?this.nowRow.Id:0,PlatformId:this.props.platformInfo.Id,ProjectConfig:"GC"==this.props.configType?JSON.stringify(o):this.nowRow.ProjectConfig,ConstructConfig:"BD"==this.props.configType?JSON.stringify(o):this.nowRow.ConstructConfig,LastUpdateUserId:this.storageInfo.getUser().Id,LastUpdateUserName:this.storageInfo.getUser().UserName,LastUpdateDate:this.utilities.getCurrentDate()};this.utilities.parseApiResult(await this.corePlatformConfigApi.save(s))>0?(this.message.success("保存成功"),this.loadGeneralSituationData(),this.isShowDicModal.value=!1):this.message.warning("保存失败"),this.isShowDicModalLoading.value=!1})),this.props=e,this.ctx=o,this.loadGeneralSituationData()}doAddFormData(){this.isShowDicModal.value=!0,this.loadDicData()}async loadGeneralSituationData(){let e=this.utilities.parseApiResult(await this.corePlatformConfigApi.getEntities(o.QueryWrapper.create().allEq({PlatformId:this.props.platformInfo.Id})));if(e&&e.length>0){Object.assign(this.nowRow,e[0]);let t="GC"==this.props.configType?this.utilities.deepCopy(JSON.parse(e[0].ProjectConfig)):this.utilities.deepCopy(JSON.parse(e[0].ConstructConfig));t&&t.length>0&&(t=t.sort(((e,t)=>e.orderNum-t.orderNum))),this.loadMainData(t)}}async loadMainData(e){this.generalConfGrid.value.loadData((async t=>{t.success(e)}))}async loadDicData(){let e="GC"==this.props.configType?"ProjectProfileConfiguration":"SectionGeneralConfiguration",t=this.utilities.parseApiResult(await this.dictionaryTypeApi.getEntitiesDynamic(o.QueryWrapper.create().allEq({PlatformId:this.props.platformInfo.PId>0?this.props.platformInfo.PId:this.props.platformInfo.Id,OptionCode:e})));t&&t.length>0&&this.dicModalGrid.value.loadData((async e=>{let i=this.utilities.parseApiResult(await this.dictionaryDetailApi.getEntities(o.QueryWrapper.create().eq("MainId",t[0].Id)));e.success(i)}))}}const Oe={style:{height:"600px","overflow-y":"auto"}};const Le=c(Ee,[["render",function(e,i,o,s,r,l){const a=t.resolveComponent("NvGrid"),n=t.resolveComponent("NvBox"),d=t.resolveComponent("Button"),u=t.resolveComponent("Modal"),h=t.resolveComponent("NvPage");return t.openBlock(),t.createBlock(h,{gutter:8,class:"platform"},{default:t.withCtx((()=>[t.createVNode(n,{width:"100%"},{default:t.withCtx((()=>[t.createVNode(a,{ref:"generalConfGrid",option:e.generalConfGridOption},null,8,["option"])])),_:1}),t.createVNode(u,{modelValue:e.isShowDicModal,"onUpdate:modelValue":i[1]||(i[1]=t=>e.isShowDicModal=t),draggable:"",mask:!0,"mask-closable":!1,width:600,title:e.dicModalTitle,styles:{top:"3%"}},{footer:t.withCtx((()=>[t.createVNode(d,{type:"text",onClick:i[0]||(i[0]=t=>e.isShowDicModal=!1)},{default:t.withCtx((()=>[t.createTextVNode("关闭")])),_:1}),t.createVNode(d,{type:"primary",loading:e.isShowDicModalLoading,onClick:e.doSaveDicModal},{default:t.withCtx((()=>[t.createTextVNode("保存")])),_:1},8,["loading","onClick"])])),default:t.withCtx((()=>[t.createElementVNode("div",Oe,[t.createVNode(a,{ref:"dicModalGrid",option:e.dicModalGridOption},null,8,["option"])])])),_:1},8,["modelValue","title"])])),_:1})}],["__scopeId","data-v-a01b6a2e"]]),Be={linkParam:{type:String,default:""},operates:{type:String,default:"-"}},_e=t.defineComponent({name:"Platform",components:{GeneralConfiguration:Le},emits:[""],props:Be,setup:(e,t)=>new We(e,t)});class We extends e.BaseInstance{constructor(e,s){super(),u(this,"props"),u(this,"ctx"),u(this,"platformApi",new i.PlatformApi),u(this,"isShowGeneralConfig",t.ref(!1)),u(this,"generalConfigTitle",t.ref("概况配置")),u(this,"platformInfo",t.reactive({})),u(this,"configType",t.ref("GC")),u(this,"upList",t.reactive(Array())),u(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:15},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:150},{colType:"select",field:"PId",title:"上级平台",width:150,format:(e,t)=>{const i=this.upList.find((e=>e.value==t.row.PId));return e("span",0==t.row.PId?"/":i.text)},select:{data:this.upList,clearable:!0,multiple:!1}},{colType:"ed",field:"PlatformNo",title:"系统代号",width:100},{colType:"ed",field:"PlatformUrl",title:"系统URL",width:230},{colType:"num",field:"OrderNo",title:"排序号",width:80,align:"center"},{title:"概况配置",width:140,fixed:"right",rowButtons:[{name:"view",text:"项目",onclick:e=>{this.configType.value="GC",Object.assign(this.platformInfo,e),this.generalConfigTitle.value=`${e.PlatformName}-项目概况配置`,this.isShowGeneralConfig.value=!0}},{name:"view-",text:"标段",onclick:e=>{this.configType.value="BD",Object.assign(this.platformInfo,e),this.generalConfigTitle.value=`${e.PlatformName}-标段概况配置`,this.isShowGeneralConfig.value=!0}}]},{title:"操作",width:140,fixed:"right",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),i=o.QueryWrapper.create();i.eq("1","1");for(const o of t){const t=e[o];this.utilities.isNull(t)||i.like(o,t)}this.platformGrid.value.loadDataByQuery(i)}}})),u(this,"platformGrid",t.ref()),u(this,"refPlatformForm",t.ref()),u(this,"saveingPlatform",t.ref(!1)),u(this,"showEditPlatform",t.ref(!1)),u(this,"editPlatformModalTitle",t.ref("新增 - 系统平台")),u(this,"platformFormModel",t.reactive({Id:0,SKey:"",PlatformNo:"",PlatformName:"",PlatformAbbreviation:"",OssRootPath:"",PlatformGroup:"0",PlatformUrl:"",OrderNo:0,CABusinessKey:"",PId:0,LastUpdateUserId:0,LastUpdateUserName:"",LastUpdateDate:"",DefaultPwd:""})),u(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:"PId",label:"上级平台",prop:"PId",type:"Select",span:24,selectProp:{datas:[],transfer:!0,clearable:!0,multiple:!1,onChange:(e,t)=>{const i=t.selectProp.datas.find((t=>t.value==e));this.platformFormModel.PlatformGroup=this.utilities.isNull(i.PlatformGroup)?"0":i.PlatformGroup}}},{model:"PlatformUrl",label:"系统URL",prop:"PlatformUrl",type:"Input",span:24},{model:"CABusinessKey",label:"CAKey",prop:"CABusinessKey",type:"Input",span:24},{model:"DefaultPwd",label:"用户默认密码",prop:"DefaultPwd",type:"Input",span:24},{model:"OrderNo",label:"排序号",prop:"OrderNo",type:"InputNumber",span:24}])),u(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=s,this.usePlatform()}usePlatform(){t.onMounted((()=>{this.loadPlatformGrid()}))}async loadPlatformGrid(){var e;const t=this.storageInfo.getUser();this.platformGrid.value.setGloablValue("LastUpdateUserId",t.Id),this.platformGrid.value.setGloablValue("LastUpdateUserName",t.UserName),this.platformGrid.value.setGloablValue("LastUpdateDate",(()=>this.utilities.getCurrentDate())),this.platformGrid.value.setGloablValue("SKey",(()=>this.utilities.getUniqueCode()),!0);const i=null==(e=this.storageInfo.getCurrentPlatform())?void 0:e.Id;this.platformGrid.value.loadData((async e=>{const t=await this.platformApi.getEntitiesPageDynamic(e.page,e.pageSize,o.QueryWrapper.create().eq("Id",i).or((e=>e.allEq({PId:i}))).orderBy(["OrderNo"])),s=this.utilities.parseApiResult(t);e.success(s),this.upList.splice(0,this.upList.length);for(const i of s.Datas)this.upList.push({value:i.Id,text:i.PlatformAbbreviation})}))}doEditPlatform(e){var t;const i=this.storageInfo.getUser();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=i.Id,this.platformFormModel.LastUpdateUserName=i.UserName,this.platformFormModel.LastUpdateDate=this.utilities.getCurrentDate(),this.platformFormModel.DefaultPwd=e.DefaultPwd;const o=null==(t=this.platformGrid.value)?void 0:t.getDatas();this.platformFormItems[4].selectProp.datas=o.length>0?null==o?void 0:o.map((e=>({value:e.Id,text:e.PlatformAbbreviation,PlatformGroup:e.PlatformGroup}))):[],this.platformFormModel.PId=e.PId,this.editPlatformModalTitle.value=`编辑 - ${e.PlatformName}`,this.showEditPlatform.value=!0}doAddPlatform(){var e;const t=this.storageInfo.getUser();this.platformFormModel.Id=0,this.platformFormModel.SKey=this.utilities.getUniqueCode(),this.platformFormModel.PlatformNo="",this.platformFormModel.PlatformName="",this.platformFormModel.PlatformAbbreviation="",this.platformFormModel.OssRootPath="",this.platformFormModel.PlatformUrl="",this.platformFormModel.CABusinessKey="",this.platformFormModel.OrderNo=0,this.platformFormModel.LastUpdateUserId=t.Id,this.platformFormModel.LastUpdateUserName=t.UserName,this.platformFormModel.LastUpdateDate=this.utilities.getCurrentDate(),this.platformFormModel.DefaultPwd="",this.editPlatformModalTitle.value="新增 - 系统平台";const i=null==(e=this.platformGrid.value)?void 0:e.getDatas();this.platformFormItems[4].selectProp.datas=i.length>0?null==i?void 0:i.map((e=>({value:e.Id,text:e.PlatformAbbreviation,PlatformGroup:e.PlatformGroup}))):[],this.platformFormModel.PId=i.length>0?i[0].Id:0,this.platformFormModel.PlatformGroup=i.length>0?i[0].PlatformGroup:0,this.showEditPlatform.value=!0}}const qe={style:{height:"550px","overflow-y":"auto"}};const Ke=c(_e,[["render",function(e,i,o,s,r,l){const a=t.resolveComponent("NvGrid"),n=t.resolveComponent("NvBox"),d=t.resolveComponent("NvComForm"),u=t.resolveComponent("Form"),h=t.resolveComponent("Button"),p=t.resolveComponent("Modal"),m=t.resolveComponent("GeneralConfiguration"),c=t.resolveComponent("NvPage");return t.openBlock(),t.createBlock(c,{gutter:8,class:"platform"},{default:t.withCtx((()=>[t.createVNode(n,{title:"系统平台"},{default:t.withCtx((()=>[t.createVNode(a,{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",qe,[t.createVNode(u,{ref:"refPlatformForm",model:e.platformFormModel,"label-width":120},{default:t.withCtx((()=>[t.createVNode(d,{formModel:e.platformFormModel,formItems:e.platformFormItems},null,8,["formModel","formItems"])])),_:1},8,["model"])])])),_:1},8,["modelValue","title"]),t.createVNode(p,{modelValue:e.isShowGeneralConfig,"onUpdate:modelValue":i[3]||(i[3]=t=>e.isShowGeneralConfig=t),fullscreen:"",title:e.generalConfigTitle},{footer:t.withCtx((()=>[t.createVNode(h,{type:"text",onClick:i[2]||(i[2]=t=>e.isShowGeneralConfig=!1)},{default:t.withCtx((()=>[t.createTextVNode("关闭")])),_:1})])),default:t.withCtx((()=>[e.isShowGeneralConfig?(t.openBlock(),t.createBlock(m,{key:0,platformInfo:e.platformInfo,configType:e.configType},null,8,["platformInfo","configType"])):t.createCommentVNode("",!0)])),_:1},8,["modelValue","title"])])),_:1})}],["__scopeId","data-v-fbc0e7f2"]]),Qe={linkParam:{type:String,default:""},operates:{type:String,default:"-"}},Ye=t.defineComponent({name:"Role",components:{SelectPlatform:r.SelectPlatform},emits:[""],props:Qe,setup:(e,t)=>new He(e,t)});class He extends e.BaseInstance{constructor(e,r){super(),u(this,"props"),u(this,"ctx"),u(this,"roleApi",new i.RoleApi),u(this,"moduleApi",new i.ModuleApi),u(this,"roleModuleApi",new i.RoleModuleApi),u(this,"platformApi",new i.PlatformApi),u(this,"institutionRoleApi",new i.InstitutionRoleApi),u(this,"platId",t.ref(0)),u(this,"platData",t.ref([])),u(this,"spinPlatShow",t.ref(!1)),u(this,"getPlatData",(async()=>{var e;this.spinPlatShow.value=!0;const i=null==(e=this.storageInfo.getCurrentPlatform())?void 0:e.Id,s=await this.platformApi.getEntities(o.QueryWrapper.create().eq("Id",i).or((e=>e.allEq({PId:i}))).orderBy(["OrderNo"]));this.platData.value=this.utilities.parseApiResult(s),this.spinPlatShow.value=!1,this.platData.value.length>0&&(this.platId.value=this.platData.value[0].Id),t.nextTick((()=>{this.doPlatformListSelect()}))})),u(this,"roleWidth",t.ref("calc(100% - 300px)")),u(this,"roleGrid",t.ref()),u(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:15},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(s.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(s.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=o.QueryWrapper.create().eq("PlatformId",this.platId.value).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)}}})),u(this,"doPlatformListSelect",(()=>{const e=this.storageInfo.getUser();this.roleGrid.value.setGloablValue("PlatformId",this.platId.value),this.roleGrid.value.setGloablValue("LastUpdateUserId",e.Id),this.roleGrid.value.setGloablValue("LastUpdateUserName",e.UserName),this.roleGrid.value.setGloablValue("LastUpdateDate",(()=>this.utilities.getCurrentDate())),this.loadRoleGridData()})),u(this,"loadRoleGridData",(async()=>{const e=await this.institutionRoleApi.getEntities(o.QueryWrapper.create()),t=this.utilities.parseApiResult(e),i=[];for(let o of t)i.some((e=>e==o.RoleId))||i.push(o.RoleId);const s=o.QueryWrapper.create().eq("PlatformId",this.platId.value).orderBy(["OrderNo"]);i.length>0&&s.notIn("Id",i),this.roleGrid.value.loadDataByQuery(s)})),u(this,"doChangeRoleWidth",(e=>{this.roleWidth.value=e?"calc(100% - 300px)":"calc(100% - 45px)"})),u(this,"refRoleForm",t.ref()),u(this,"saveingRole",t.ref(!1)),u(this,"showEditRole",t.ref(!1)),u(this,"editRoleModalTitle",t.ref("新增 - 角色")),u(this,"roleFormModel",t.reactive({Id:0,PlatformId:0,RoleName:"",RoleCode:"",RoleDesc:"",RoleStatus:1,FrontEndVisible:0,DefaultUrl:"",WelcomeUrl:"",OrderNo:0,LastUpdateUserId:0,LastUpdateUserName:"",LastUpdateDate:""})),u(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}])),u(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})),u(this,"selectRole"),u(this,"saveRoleModuleing",t.ref(!1)),u(this,"showRoleModule",t.ref(!1)),u(this,"roleModuleTitle",t.ref("")),u(this,"moduleGrid",t.ref()),u(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(s.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(s.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(s.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=[],r=e(s.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(s.Divider,{type:"vertical"}),a=[];for(const d of i)o.push(d.code),a.push(e(s.Checkbox,{label:d.code},(()=>d.name)));const n=e(s.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))}},(()=>a));return e(s.Space,(()=>[r,l,n]))}}],event:{event_search:e=>{this.loadModuleGridData(e)}}})),u(this,"loadModuleGridData",(e=>{this.moduleGrid.value.loadData((async t=>{const i=o.QueryWrapper.create().eq("PlatformId",this.platId.value).ne("ModuleStatus",0).orderBy(["OrderNo"]);this.utilities.isNull(e.ModuleName)||i.like("ModuleName",e.ModuleName);let s=await this.moduleApi.getEntities(i),r=this.utilities.parseApiResult(s);const l=o.QueryWrapper.create().eq("RoleId",this.selectRole.Id);s=await this.roleModuleApi.getEntities(l);let a=this.utilities.parseApiResult(s);for(const e of r){const t=a.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)}))})),u(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})),u(this,"showImportRole",t.ref(!1)),u(this,"saveingImportRole",t.ref(!1)),u(this,"originPlatform",t.reactive({list:[],selectedItem:{Id:0,PlatformAbbreviation:""},selectedId:0})),u(this,"originRoleGrid",t.ref()),u(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}]})),u(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()})),u(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.platId.value,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=r,this.useBusinessRole()}useBusinessRole(){t.onMounted((()=>{this.getPlatData()})),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){const t=this.storageInfo.getUser();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=t.Id,this.roleFormModel.LastUpdateUserName=t.UserName,this.roleFormModel.LastUpdateDate=this.utilities.getCurrentDate(),this.editRoleModalTitle.value=`编辑 - ${e.RoleName}`,this.showEditRole.value=!0}doAddRole(){const e=this.storageInfo.getUser();this.roleFormModel.Id=0,this.roleFormModel.PlatformId=this.platId.value,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=e.Id,this.roleFormModel.LastUpdateUserName=e.UserName,this.roleFormModel.LastUpdateDate=this.utilities.getCurrentDate(),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(){var e;const i=null==(e=this.storageInfo.getCurrentPlatform())?void 0:e.Id,s=await this.platformApi.getEntities(o.QueryWrapper.create().eq("Id",i).ne("Id",this.platId.value).or((e=>e.allEq({PId:i}))).orderBy(["OrderNo"]));this.originPlatform.list=this.utilities.parseApiResult(s),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=o.QueryWrapper.create().eq("PlatformId",this.originPlatform.selectedId).eq("RoleStatus",1).orderBy(["OrderNo"]);this.originRoleGrid.value.loadDataByQuery(e)}}const ze={style:{height:"650px","overflow-y":"auto",position:"relative"}},Ze={class:"import-role",style:{height:"610px",position:"relative"}},$e={style:{width:"100%",height:"100%"}},je={style:{height:"530px","overflow-y":"auto"}};const Je=c(Ye,[["render",function(e,i,o,s,r,l){const a=t.resolveComponent("Option"),n=t.resolveComponent("Select"),d=t.resolveComponent("Spin"),u=t.resolveComponent("NvControlGroup"),h=t.resolveComponent("NvGrid"),p=t.resolveComponent("NvBox"),m=t.resolveComponent("Button"),c=t.resolveComponent("Modal"),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(p,{width:"100%",title:"角色列表"},{default:t.withCtx((()=>[t.createVNode(h,{ref:"roleGrid",option:e.roleGridOption},{default:t.withCtx((()=>[t.createVNode(u,{width:"380px",icon:"md-refresh",label:"系统平台",labelWidth:75,onClick:e.getPlatData},{default:t.withCtx((()=>[t.createVNode(n,{modelValue:e.platId,"onUpdate:modelValue":i[0]||(i[0]=t=>e.platId=t),onOnChange:e.doPlatformListSelect,transfer:""},{default:t.withCtx((()=>[(t.openBlock(!0),t.createElementBlock(t.Fragment,null,t.renderList(e.platData,((e,i)=>(t.openBlock(),t.createBlock(a,{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.spinPlatShow},null,8,["show"])])),_:1},8,["onClick"])])),_:1},8,["option"])])),_:1}),t.createVNode(c,{modelValue:e.showRoleModule,"onUpdate:modelValue":i[2]||(i[2]=t=>e.showRoleModule=t),draggable:"",mask:!0,"mask-closable":!1,width:1300,title:"模块权限",styles:{top:"3%"}},{footer:t.withCtx((()=>[t.createVNode(m,{type:"text",onClick:i[1]||(i[1]=t=>e.showRoleModule=!1)},{default:t.withCtx((()=>[t.createTextVNode("关闭")])),_:1}),t.createVNode(m,{type:"primary",loading:e.saveRoleModuleing,onClick:e.doSaveRoleModule},{default:t.withCtx((()=>[t.createTextVNode("保存")])),_:1},8,["loading","onClick"])])),default:t.withCtx((()=>[t.createElementVNode("div",ze,[t.createVNode(h,{ref:"moduleGrid",option:e.moduleGridOption},null,8,["option"])])])),_:1},8,["modelValue"]),t.createVNode(c,{modelValue:e.showImportRole,"onUpdate:modelValue":i[5]||(i[5]=t=>e.showImportRole=t),draggable:"",mask:!0,"mask-closable":!1,width:800,title:"引入角色",styles:{top:"3%"}},{footer:t.withCtx((()=>[t.createVNode(m,{type:"text",onClick:i[4]||(i[4]=t=>e.showImportRole=!1)},{default:t.withCtx((()=>[t.createTextVNode("关闭")])),_:1}),t.createVNode(m,{type:"primary",loading:e.saveingImportRole,onClick:e.doImportRole},{default:t.withCtx((()=>[t.createTextVNode("引入")])),_:1},8,["loading","onClick"])])),default:t.withCtx((()=>[t.createElementVNode("div",Ze,[t.createElementVNode("div",$e,[t.createVNode(h,{ref:"originRoleGrid",option:e.originRoleGridOption},{default:t.withCtx((()=>[t.createVNode(n,{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,((i,o)=>(t.openBlock(),t.createBlock(a,{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(d,{fix:""},null,512),[[t.vShow,e.saveingImportRole]])])])])),_:1},8,["modelValue"]),t.createVNode(c,{modelValue:e.showEditRole,"onUpdate:modelValue":i[7]||(i[7]=t=>e.showEditRole=t),draggable:"",mask:!0,"mask-closable":!1,width:620,title:e.editRoleModalTitle,styles:{top:"3%"}},{footer:t.withCtx((()=>[t.createVNode(m,{type:"text",onClick:i[6]||(i[6]=t=>e.showEditRole=!1)},{default:t.withCtx((()=>[t.createTextVNode("关闭")])),_:1}),t.createVNode(m,{type:"primary",loading:e.saveingRole,onClick:e.doSaveRole},{default:t.withCtx((()=>[t.createTextVNode("保存")])),_:1},8,["loading","onClick"])])),default:t.withCtx((()=>[t.createElementVNode("div",je,[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-ffab91cb"]]),Xe={linkParam:{type:String,default:""},operates:{type:String,default:"-"}},et=t.defineComponent({name:"Enterprise",components:{SelectPlatform:r.SelectPlatform},emits:[""],props:Xe,setup:(e,t)=>new tt(e,t)});class tt extends e.BaseInstance{constructor(e,s){super(),u(this,"props"),u(this,"ctx"),u(this,"platformApi",new i.PlatformApi),u(this,"enterpriseApi",new i.EnterpriseApi),u(this,"provinceApi",new a.ProvinceApi),u(this,"cityApi",new a.CityApi),u(this,"areaApi",new a.AreaApi),u(this,"platId",t.ref(0)),u(this,"platData",t.ref([])),u(this,"spinPlatShow",t.ref(!1)),u(this,"getPlatData",(async()=>{var e;this.spinPlatShow.value=!0;const i=null==(e=this.storageInfo.getCurrentPlatform())?void 0:e.Id,s=await this.platformApi.getEntities(o.QueryWrapper.create().eq("Id",i).orderBy(["OrderNo"]));this.platData.value=this.utilities.parseApiResult(s),this.spinPlatShow.value=!1,this.platData.value.length>0&&(this.platId.value=this.platData.value[0].Id),t.nextTick((()=>{this.doPlatformChange()}))})),u(this,"provinces",[]),u(this,"cities",[]),u(this,"areas",[]),u(this,"refSelectPlatform",t.ref()),u(this,"onlyView",t.ref(!1)),u(this,"enterpriseGrid",t.ref()),u(this,"enterpriseGridOption",t.reactive({api:this.enterpriseApi,setting:{searchConfig:{btnSpan:8,labelWidth:120,defaultShowSearch:!1},toolbarConfig:{isButtonGroup:!1},rowConfig:{isHover:!0},isPagination:!0,pageSize:15},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)}}})),u(this,"doPlatformChange",(()=>{this.loadEnterpriseGridData({})})),u(this,"saveingEnterprise",t.ref(!1)),u(this,"showEditEnterprise",t.ref(!1)),u(this,"editEnterpriseTitle",t.ref("新增 - 企业")),u(this,"enterpriseFormModel",t.reactive({Id:0,PlatformId:0,EnterpriseName:"",EnterpriseCode:"",LegalPerson:"",RegisteredCapital:0,Province:"",City:"",Area:"",Address:"",Contact:"",TelPhone:"",LastUpdateUserId:0,LastUpdateUserName:"",LastUpdateTime:"",PostalCode:"",Fax:"",Email:""})),u(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:"请输入联系电话"}},{model:"PostalCode",label:"邮政编码",type:"Input",span:12,inputProp:{placeholder:"请输入邮政编码"}},{model:"Email",label:"Email",type:"Input",span:12,inputProp:{placeholder:"请输入Email地址"}},{model:"Fax",label:"传真",type:"Input",span:12,inputProp:{placeholder:"请输入传真"}}]}])),u(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=s,this.useArea(),this.getPlatData()}async useArea(){let e=await this.provinceApi.getEntities(o.QueryWrapper.create().eq("1","1"));this.provinces=this.utilities.parseApiResult(e),e=await this.cityApi.getEntities(o.QueryWrapper.create().eq("1","1")),this.cities=this.utilities.parseApiResult(e),e=await this.areaApi.getEntities(o.QueryWrapper.create().eq("1","1")),this.areas=this.utilities.parseApiResult(e),this.setProvinceDatas(),this.refSelectPlatform.value.loadPlatforms()}loadEnterpriseGridData(e){const t=o.QueryWrapper.create().eq("PlatformId",this.platId.value);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(){const e=this.storageInfo.getUser();this.onlyView.value=!1,this.enterpriseFormModel.Id=0,this.enterpriseFormModel.PlatformId=this.platId.value,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.PostalCode="",this.enterpriseFormModel.Fax="",this.enterpriseFormModel.Email="",this.enterpriseFormModel.LastUpdateUserId=e.Id,this.enterpriseFormModel.LastUpdateUserName=e.UserName,this.enterpriseFormModel.LastUpdateTime=this.utilities.getCurrentDate(),this.setCityDatas(""),this.setAreaDatas(""),this.editEnterpriseTitle.value="新增 - 企业",this.showEditEnterprise.value=!0}doEditEnterprise(e){const t=this.storageInfo.getUser();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.PostalCode=e.PostalCode,this.enterpriseFormModel.Fax=e.Fax,this.enterpriseFormModel.Email=e.Email,this.enterpriseFormModel.LastUpdateUserId=t.Id,this.enterpriseFormModel.LastUpdateUserName=t.UserName,this.enterpriseFormModel.LastUpdateTime=this.utilities.getCurrentDate(),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 it={style:{height:"650px","overflow-y":"auto"}};const ot=c(et,[["render",function(e,i,o,s,r,l){const a=t.resolveComponent("Option"),n=t.resolveComponent("Select"),d=t.resolveComponent("Spin"),u=t.resolveComponent("NvControlGroup"),h=t.resolveComponent("NvGrid"),p=t.resolveComponent("NvBox"),m=t.resolveComponent("NvComForm"),c=t.resolveComponent("Form"),f=t.resolveComponent("Button"),g=t.resolveComponent("Modal"),I=t.resolveComponent("NvPage");return t.openBlock(),t.createBlock(I,{gutter:8,class:""},{default:t.withCtx((()=>[t.createVNode(p,{width:"100%",title:"企业列表"},{default:t.withCtx((()=>[t.createVNode(h,{ref:"enterpriseGrid",option:e.enterpriseGridOption},{default:t.withCtx((()=>[t.createVNode(u,{width:"380px",icon:"md-refresh",label:"系统平台",labelWidth:75,onClick:e.getPlatData},{default:t.withCtx((()=>[t.createVNode(n,{modelValue:e.platId,"onUpdate:modelValue":i[0]||(i[0]=t=>e.platId=t),onOnChange:e.doPlatformChange,transfer:""},{default:t.withCtx((()=>[(t.openBlock(!0),t.createElementBlock(t.Fragment,null,t.renderList(e.platData,((e,i)=>(t.openBlock(),t.createBlock(a,{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.spinPlatShow},null,8,["show"])])),_:1},8,["onClick"])])),_:1},8,["option"])])),_:1}),t.createVNode(g,{modelValue:e.showEditEnterprise,"onUpdate:modelValue":i[2]||(i[2]=t=>e.showEditEnterprise=t),draggable:"",mask:!0,"mask-closable":!1,width:850,title:e.editEnterpriseTitle,styles:{top:"3%"}},{footer:t.withCtx((()=>[t.createVNode(f,{type:"text",onClick:i[1]||(i[1]=t=>e.showEditEnterprise=!1)},{default:t.withCtx((()=>[t.createTextVNode("关闭")])),_:1}),e.onlyView?t.createCommentVNode("",!0):(t.openBlock(),t.createBlock(f,{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",it,[t.createVNode(c,{model:e.enterpriseFormModel,"label-width":90},{default:t.withCtx((()=>[t.createVNode(m,{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-57711b94"]]),st={linkParam:{type:String,default:""},operates:{type:String,default:"-"}},rt=t.defineComponent({name:"Institution",components:{SelectPlatform:r.SelectPlatform},emits:[""],props:st,setup:(e,t)=>new lt(e,t)});class lt extends e.BaseInstance{constructor(e,r){super(),u(this,"props"),u(this,"ctx"),u(this,"institutionTypeApi",new i.InstitutionTypeApi),u(this,"institutioninforApi",new i.InstitutioninforApi),u(this,"institutionPlatformApi",new i.InstitutionPlatformApi),u(this,"platformApi",new i.PlatformApi),u(this,"institutionTreeApi",new i.InstitutionTreeApi),u(this,"roleApi",new i.RoleApi),u(this,"enterpriseApi",new i.EnterpriseApi),u(this,"platId",t.ref(0)),u(this,"selectPlat",t.ref({})),u(this,"platData",t.ref([])),u(this,"spinPlatShow",t.ref(!1)),u(this,"getPlatData",(async()=>{var e;this.spinPlatShow.value=!0;const i=null==(e=this.storageInfo.getCurrentPlatform())?void 0:e.Id,s=await this.platformApi.getEntities(o.QueryWrapper.create().eq("Id",i).or((e=>e.allEq({PId:i}))).orderBy(["OrderNo"]));this.platData.value=this.utilities.parseApiResult(s),this.spinPlatShow.value=!1,this.platData.value.length>0&&(this.platId.value=this.platData.value[0].Id,t.nextTick((()=>{this.doPlatformListSelect(this.platId.value)})))})),u(this,"institutionTypes",t.ref([])),u(this,"enterprises",[]),u(this,"institutionWidth",t.ref("calc(100% - 45px)")),u(this,"institutionGrid",t.ref()),u(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.platId.value,e.InstitutionCode,e.InstitutionName,e.InstitutionAbbreviation)}}})),u(this,"doPlatformListSelect",(async e=>{const t=this.platData.value.find((t=>t.Id==e));this.selectPlat.value=t,await this.loadEnterprises(),this.loadInstitutionGridData(this.platId.value,"","",""),this.loadInstitutionTree()})),u(this,"doWidthChange",(e=>{this.institutionWidth.value=e?"calc(100% - 350px)":"calc(100% - 45px)"})),u(this,"saveingInstitution",t.ref(!1)),u(this,"showEditInstitution",t.ref(!1)),u(this,"editInstitutionTitle",t.ref("新增 - 机构")),u(this,"institutionFormModel",t.reactive({Id:0,EnterpriseId:0,InstitutionPlatformId:0,InstitutionCode:"",InstitutionName:"",InstitutionAbbreviation:"",InstitutionTypeCode:"",OrderNo:1,LastUpdateUserId:0,LastUpdateUserName:"",LastUpdateDate:""})),u(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}])),u(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.platId.value,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})),u(this,"showImportInstitution",t.ref(!1)),u(this,"saveingImportInstitution",t.ref(!1)),u(this,"originPlatform",t.reactive({list:[],selectedItem:{Id:0,PlatformName:""},selectedId:0})),u(this,"originInstitutionGrid",t.ref()),u(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.platId.value,e.InstitutionCode,e.InstitutionName,e.InstitutionAbbreviation)}}})),u(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,"","","")})),u(this,"doImportInstitution",(async()=>{const e=this.originInstitutionGrid.value.getCheckboxDatas();if(e.length<=0)return void this.message.warning("请选择源平台机构信息");this.saveingImportInstitution.value=!0;let t=[];const i=this.storageInfo.getUser();for(const r of e)t.push({InstitutionId:r.Id,PlatformId:this.platId.value,InstitutionCode:r.InstitutionCode,InstitutionAbbreviation:r.InstitutionAbbreviation,InstitutionTypeCode:r.InstitutionTypeCode,OrderNo:r.OrderNo,LastUpdateUserId:i.Id,LastUpdateUserName:i.UserName,LastUpdateDate:this.utilities.getCurrentDate()});const o=await this.institutionPlatformApi.saves(t),s=this.utilities.parseApiResult(o);this.saveingImportInstitution.value=!1,s?(this.showImportInstitution.value=!1,this.institutionGrid.value.refreshData(),this.message.success("导入成功")):this.message.warning("导入失败, 请稍后重试")})),u(this,"selectedInstitutionTree"),u(this,"insertRecords",[]),u(this,"institutionTree",t.ref([])),u(this,"saveingInstitutionTree",t.ref(!1)),u(this,"loadingInstitutionTree",t.ref(!1)),u(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(s.Icon,{type:"md-trash",style:{fontSize:"18px",color:"rgb(225, 76, 23)"},onClick:()=>{this.doDeleteNode(t,i,o)}})])]))),u(this,"doTreeSelectChange",(e=>{e.length>0?this.selectedInstitutionTree=e[0]:this.selectedInstitutionTree=void 0})),u(this,"loadInstitutionTree",(async()=>{this.insertRecords=[],this.selectedInstitutionTree=void 0,this.loadingInstitutionTree.value=!0;const e=await this.institutionTreeApi.getInstitutionTrees(this.platId.value),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)})),u(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("操作异常, 请稍后重试!")})),u(this,"selectInstitution"),u(this,"showBindRole",t.ref(!1)),u(this,"saveingBindRole",t.ref(!1)),u(this,"roleGrid",t.ref()),u(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(s.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"}]})),u(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=r,this.useBusinessInstitutionType(),this.useBusinessInstitution()}useBusinessInstitutionType(){t.onMounted((()=>{})),t.onUnmounted((()=>{})),this.getInstitutionTypes()}async getInstitutionTypes(){const e=await this.institutionTypeApi.getEntities(o.QueryWrapper.create().eq("1",1).orderBy(["OrderNo"]));this.institutionTypes.value=this.utilities.parseApiResult(e),this.setInstitutionTypeCodeDatas()}async loadEnterprises(){const e=await this.enterpriseApi.getEntities(o.QueryWrapper.create().eq("1","1"));this.enterprises=this.utilities.parseApiResult(e),this.setEnterpriseDatas()}useBusinessInstitution(){t.onMounted((()=>{this.getPlatData()})),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.platId.value),i=this.utilities.parseApiResult(t);i<=0?this.message.error("操作失败, 请稍后重试!"):(t=await this.institutionPlatformApi.getCount(o.QueryWrapper.create().eq("InstitutionId",e.Id)),i=this.utilities.parseApiResult(t),0==i&&(t=await this.institutioninforApi.delete(e.Id),i=this.utilities.parseApiResult(t)),t=await this.institutionTreeApi.deleteInstitutionTreeByInstitutionIdAndPlatformId(e.Id,this.platId.value),i=this.utilities.parseApiResult(t),this.message.success("操作成功"),this.institutionGrid.value.refreshData(),i>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=[];let t=[];t=0!==this.selectPlat.PId?this.platData.value.filter((e=>e.Id==this.selectPlat.value.PId||this.selectPlat.value.Id==e.Id)):this.platData.value.filter((e=>e.Id==this.selectPlat.value.Id));const i=this.enterprises.filter((e=>t.some((t=>t.Id==e.PlatformId))));for(const o of i)e.push({text:o.EnterpriseName,value:o.Id});this.institutionFormItems[3].selectProp.datas=e}doEditInstitution(e){const t=this.storageInfo.getUser();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=t.Id,this.institutionFormModel.LastUpdateUserName=t.UserName,this.institutionFormModel.LastUpdateDate=this.utilities.getCurrentDate(),this.editInstitutionTitle.value="编辑 - "+e.InstitutionName,this.showEditInstitution.value=!0}doAddInstitution(){const e=this.storageInfo.getUser();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=e.Id,this.institutionFormModel.LastUpdateUserName=e.UserName,this.institutionFormModel.LastUpdateDate=this.utilities.getCurrentDate(),this.editInstitutionTitle.value="新增 - 机构",this.showEditInstitution.value=!0}doShowImportInstitution(){this.showImportInstitution.value=!0,this.loadOriginPlatforms()}async loadOriginPlatforms(){var e;const i=null==(e=this.storageInfo.getCurrentPlatform())?void 0:e.Id,s=await this.platformApi.getEntities(o.QueryWrapper.create().eq("Id",i).ne("Id",this.platId.value).or((e=>e.allEq({PId:i}))).orderBy(["OrderNo"]));this.originPlatform.list=this.utilities.parseApiResult(s),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.platId.value,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.platId.value,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=o.QueryWrapper.create().eq("PlatformId",this.platId.value).eq("RoleStatus",1).orderBy(["OrderNo"]),i=await this.roleApi.getEntities(t),s=this.utilities.parseApiResult(i),r=this.selectInstitution.RoleIds,l=this.utilities.isNull(r)?[]:r.split(",");for(const o of s)o.IsChk=-1!=l.findIndex((e=>e==o.Id));e.success(s)}))}}const at={style:{width:"100%",height:"100%",position:"relative"}},nt={style:{height:"500px","overflow-y":"auto"}},dt={class:"import-institution",style:{height:"600px","overflow-y":"auto",position:"relative"}},ut={style:{width:"100%",height:"100%"}},ht={style:{height:"calc(100%)"}},pt={style:{height:"610px","overflow-y":"auto",position:"relative"}};const mt=c(rt,[["render",function(e,i,o,s,r,l){const a=t.resolveComponent("Option"),n=t.resolveComponent("Select"),d=t.resolveComponent("Spin"),u=t.resolveComponent("NvControlGroup"),h=t.resolveComponent("NvGrid"),p=t.resolveComponent("NvBox"),m=t.resolveComponent("Tree"),c=t.resolveComponent("Button"),f=t.resolveComponent("Space"),g=t.resolveComponent("NvComForm"),I=t.resolveComponent("Form"),v=t.resolveComponent("Modal"),w=t.resolveComponent("NvPage");return t.openBlock(),t.createBlock(w,{gutter:8,class:"institution"},{default:t.withCtx((()=>[t.createVNode(p,{width:e.institutionWidth,title:"机构列表"},{default:t.withCtx((()=>[t.createVNode(h,{ref:"institutionGrid",option:e.institutionGridOption},{default:t.withCtx((()=>[t.createVNode(u,{width:"380px",icon:"md-refresh",label:"系统平台",labelWidth:75,onClick:e.getPlatData},{default:t.withCtx((()=>[t.createVNode(n,{modelValue:e.platId,"onUpdate:modelValue":i[0]||(i[0]=t=>e.platId=t),onOnChange:e.doPlatformListSelect,transfer:""},{default:t.withCtx((()=>[(t.openBlock(!0),t.createElementBlock(t.Fragment,null,t.renderList(e.platData,((e,i)=>(t.openBlock(),t.createBlock(a,{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.spinPlatShow},null,8,["show"])])),_:1},8,["onClick"])])),_:1},8,["option"])])),_:1},8,["width"]),t.createVNode(p,{width:"350px",title:"组织机构树",showArrow:!0,expand:!1,onChange:e.doWidthChange},{footer:t.withCtx((()=>[t.createVNode(f,null,{default:t.withCtx((()=>[t.createVNode(c,{type:"text",onClick:e.loadInstitutionTree},{default:t.withCtx((()=>[t.createTextVNode("刷新")])),_:1},8,["onClick"]),t.createVNode(c,{type:"primary",loading:e.saveingInstitutionTree,onClick:e.doSaveInstitutionTree},{default:t.withCtx((()=>[t.createTextVNode("保存")])),_:1},8,["loading","onClick"])])),_:1})])),default:t.withCtx((()=>[t.createElementVNode("div",at,[t.createVNode(m,{data:e.institutionTree,render:e.renderContent,class:"tree-render",onOnSelectChange:e.doTreeSelectChange},null,8,["data","render","onOnSelectChange"]),t.withDirectives(t.createVNode(d,{fix:""},{default:t.withCtx((()=>[t.createTextVNode("正在保存中")])),_:1},512),[[t.vShow,e.saveingInstitutionTree]]),t.withDirectives(t.createVNode(d,{fix:""},{default:t.withCtx((()=>[t.createTextVNode("数据加载中")])),_:1},512),[[t.vShow,e.loadingInstitutionTree]])])])),_:1},8,["onChange"]),t.createVNode(v,{modelValue:e.showEditInstitution,"onUpdate:modelValue":i[2]||(i[2]=t=>e.showEditInstitution=t),draggable:"",mask:!0,"mask-closable":!1,width:450,title:e.editInstitutionTitle,styles:{top:"3%"}},{footer:t.withCtx((()=>[t.createVNode(c,{type:"text",onClick:i[1]||(i[1]=t=>e.showEditInstitution=!1)},{default:t.withCtx((()=>[t.createTextVNode("关闭")])),_:1}),t.createVNode(c,{type:"primary",loading:e.saveingInstitution,onClick:e.doSaveInstitution},{default:t.withCtx((()=>[t.createTextVNode("保存")])),_:1},8,["loading","onClick"])])),default:t.withCtx((()=>[t.createElementVNode("div",nt,[t.createVNode(I,{model:e.institutionFormModel,"label-width":90},{default:t.withCtx((()=>[t.createVNode(g,{ref:"institutionComForm",formModel:e.institutionFormModel,formItems:e.institutionFormItems},null,8,["formModel","formItems"])])),_:1},8,["model"])])])),_:1},8,["modelValue","title"]),t.createVNode(v,{modelValue:e.showImportInstitution,"onUpdate:modelValue":i[5]||(i[5]=t=>e.showImportInstitution=t),draggable:"",mask:!0,"mask-closable":!1,width:1200,title:"引入机构",styles:{top:"3%"}},{footer:t.withCtx((()=>[t.createVNode(c,{type:"text",onClick:i[4]||(i[4]=t=>e.showImportInstitution=!1)},{default:t.withCtx((()=>[t.createTextVNode("关闭")])),_:1}),t.createVNode(c,{type:"primary",loading:e.saveingImportInstitution,onClick:e.doImportInstitution},{default:t.withCtx((()=>[t.createTextVNode("引入")])),_:1},8,["loading","onClick"])])),default:t.withCtx((()=>[t.createElementVNode("div",dt,[t.createElementVNode("div",ut,[t.createElementVNode("div",ht,[t.createVNode(h,{ref:"originInstitutionGrid",option:e.originInstitutionGridOption},{default:t.withCtx((()=>[t.createVNode(n,{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,((i,o)=>(t.openBlock(),t.createBlock(a,{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(d,{fix:""},null,512),[[t.vShow,e.saveingImportInstitution]])])])])),_:1},8,["modelValue"]),t.createVNode(v,{modelValue:e.showBindRole,"onUpdate:modelValue":i[7]||(i[7]=t=>e.showBindRole=t),draggable:"",mask:!0,"mask-closable":!1,width:900,title:"绑定角色",styles:{top:"3%"}},{footer:t.withCtx((()=>[t.createVNode(c,{type:"text",onClick:i[6]||(i[6]=t=>e.showBindRole=!1)},{default:t.withCtx((()=>[t.createTextVNode("关闭")])),_:1}),t.createVNode(c,{type:"primary",loading:e.saveingBindRole,onClick:e.doSaveBindRole},{default:t.withCtx((()=>[t.createTextVNode("保存")])),_:1},8,["loading","onClick"])])),default:t.withCtx((()=>[t.createElementVNode("div",pt,[t.createVNode(h,{ref:"roleGrid",option:e.roleGridOption},null,8,["option"]),t.withDirectives(t.createVNode(d,{fix:""},null,512),[[t.vShow,e.saveingBindRole]])])])),_:1},8,["modelValue"])])),_:1})}],["__scopeId","data-v-ed65a91d"]]),ct=t.defineComponent({name:"LoginLog",components:{},emits:[""],props:{},setup:(e,t)=>new ft(e,t)});class ft extends e.BaseInstance{constructor(e,s){super(),u(this,"props"),u(this,"ctx"),u(this,"loginLogApi",new i.LoginLogApi),u(this,"platformId",0),u(this,"userId",0),u(this,"loginLogGrid",t.ref()),u(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)}}})),u(this,"loadLoginLog",((e,t,i={})=>{this.platformId=e,this.userId=t;const s=o.QueryWrapper.create();s.eq("PlatformId",this.platformId).eq("UserId",this.userId).orderBy(["Id"],!1),this.utilities.isNull(i.IPAddress)||s.like("IPAddress",i.IPAddress);const r=this.utilities.dateHelper.format(i.LoginDate,"YYYY-MM-DD");this.utilities.isNull(i.LoginDate)||s.between("LoginDate",`${r} 00:00:00`,`${r} 23:59:59`),this.loginLogGrid.value.loadDataByQuery(s)})),this.props=e,this.ctx=s}}const gt={class:"loginLog"};const It=c(ct,[["render",function(e,i,o,s,r,l){const a=t.resolveComponent("NvGrid");return t.openBlock(),t.createElementBlock("div",gt,[t.createVNode(a,{ref:"loginLogGrid",option:e.loginLogGridOption},null,8,["option"])])}],["__scopeId","data-v-a0d5af5b"]]),vt={linkParam:{type:String,default:""},operates:{type:String,default:"-"}},wt=t.defineComponent({name:"Userinfor",components:{SelectPlatform:r.SelectPlatform,LoginLog:It,BaseLogin:r.BaseLogin},emits:[""],props:vt,setup:(e,t)=>new yt(e,t)});class yt extends e.BaseInstance{constructor(e,r){super(),u(this,"props"),u(this,"ctx"),u(this,"platformApi",new i.PlatformApi),u(this,"institutionTreeApi",new i.InstitutionTreeApi),u(this,"userinforApi",new i.UserinforApi),u(this,"institutionUserApi",new i.InstitutionUserApi),u(this,"userRoleApi",new i.UserRoleApi),u(this,"institutionPlatformApi",new i.InstitutionPlatformApi),u(this,"roleApi",new i.RoleApi),u(this,"oauthApi",new i.OAuthApi),u(this,"userSignApi",new i.UserSignApi),u(this,"signTaskInfoApi",new l.SignTaskInfoApi),u(this,"selectedPlatform"),u(this,"platId",t.ref(0)),u(this,"platData",t.ref([])),u(this,"spinPlatShow",t.ref(!1)),u(this,"getPlatData",(async()=>{var e;this.spinPlatShow.value=!0;const i=null==(e=this.storageInfo.getCurrentPlatform())?void 0:e.Id,s=await this.platformApi.getEntities(o.QueryWrapper.create().eq("Id",i).or((e=>e.allEq({PId:i}))).orderBy(["OrderNo"]));this.platData.value=this.utilities.parseApiResult(s),this.spinPlatShow.value=!1,this.platData.value.length>0&&(this.platId.value=this.platData.value[0].Id),t.nextTick((()=>{this.doChangePlatform(this.platData.value[0])}))})),u(this,"selectedInsTree"),u(this,"institutionTree",t.ref([])),u(this,"loadingInstitutionTree",t.ref(!1)),u(this,"doChangePlatform",(e=>{const t=this.platData.value.find((e=>e.Id==this.platId.value));this.utilities.isNull(e)||(this.selectedPlatform=t,this.loadInsTree())})),u(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,"[未知节点]"))])]))),u(this,"doChangeInsTree",(e=>{e.length>0&&(this.selectedInsTree=e[0],this.loadInstitutionTreeUsers({}))})),u(this,"doRefreshInsTree",(()=>{this.loadInsTree()})),u(this,"userBoxWidth",t.ref("calc(100% - 300px)")),u(this,"insTreeUserGrid",t.ref()),u(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:13},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(s.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:"resize",text:"重置",onclick:(e,t)=>{this.doResetUserPwd(e.Id)}}]}],event:{event_search:e=>{this.insTreeUserGrid.value.setPageIndex(1),this.loadInstitutionTreeUsers(e)}}})),u(this,"doChangeUserBoxWidth",(e=>{this.userBoxWidth.value=e?"calc(100% - 300px)":"calc(100% - 45px)"})),u(this,"showEditUser",t.ref(!1)),u(this,"saveingUser",t.ref(!1)),u(this,"editUserTitle",t.ref("新增 - 用户")),u(this,"userForm",t.ref()),u(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:0,LastUpdateUserName:"",LastUpdateDate:""})),u(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"}]}])),u(this,"userFormRule",t.reactive({UserName:[{required:!0,message:"姓名不能为空",trigger:"blur"}],Account:[{required:!0,message:"姓名不能为空",trigger:"blur"}]})),u(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=o.QueryWrapper.create();t.eq("Phone",this.userFormModel.Phone).eq("IsDel",0),this.userFormModel.Id>0&&t.ne("Id",this.userFormModel.Id);const i=await this.userinforApi.isExist(t);if(e=this.utilities.parseApiResult(i),e)return this.message.warning(`手机号 ${this.userFormModel.Phone} 已关联其他账号, 请重新输入!`),void(this.saveingUser.value=!1)}const t=o.QueryWrapper.create();t.eq("Account",this.userFormModel.Account).eq("IsDel",0),this.userFormModel.Id>0&&t.ne("Id",this.userFormModel.Id);let i=await this.userinforApi.isExist(t);if(e=this.utilities.parseApiResult(i),e)return this.message.warning(`账号 ${this.userFormModel.Account} 已存在, 请重新输入!`),void(this.saveingUser.value=!1);i=await this.userinforApi.save(this.userFormModel),e=this.utilities.parseApiResult(i),0==this.userFormModel.Id&&(await this.institutionUserApi.save({InstitutionId:this.selectedInsTree.InstitutionId,UserId:e,InsTreeId:this.selectedInsTree.Id}),await this.userinforApi.initialUserPwd(e,this.selectedPlatform.Id)),this.saveingUser.value=!1,e>0?(this.message.success("保存成功"),this.insTreeUserGrid.value.refreshData(),this.showEditUser.value=!1):this.message.error(i.msg)})),u(this,"currentUser"),u(this,"showUserRole",t.ref(!1)),u(this,"saveingUserRole",t.ref(!1)),u(this,"userRoleGrid",t.ref()),u(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(s.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"}]})),u(this,"doSaveUserRole",(async()=>{const e=this.userRoleGrid.value.getDatas().filter((e=>1==e.IsChk));this.saveingUserRole.value=!0;let t=await this.userRoleApi.getEntities(o.QueryWrapper.create().eq("UserId",this.currentUser.Id).eq("PlatformId",this.selectedPlatform.Id)),i=this.utilities.parseApiResult(t),s=[];for(const o of e)-1==i.findIndex((e=>e.RoleId==o.Id))&&s.push({PlatformId:this.selectedPlatform.Id,UserId:this.currentUser.Id,RoleId:o.Id});let r=[];for(const o of i)-1==e.findIndex((e=>e.Id==o.RoleId))&&r.push(o.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("保存失败, 请稍后重试!")})),u(this,"showImportUser",t.ref(!1)),u(this,"saveingImportUser",t.ref(!1)),u(this,"otherUserGrid",t.ref()),u(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(s.Tag,{color:i.color},(()=>i.text))}}],event:{event_search:e=>{this.loadImportUserGrid(e)}}})),u(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("导入失败, 请稍后重试!")})),u(this,"showLoginLog",t.ref(!1)),u(this,"loginLogRef",t.ref()),u(this,"doShowLoginLog",(e=>{this.showLoginLog.value=!0,this.loginLogRef.value.loadLoginLog(this.selectedPlatform.Id,e.Id)})),u(this,"loginRef",t.ref()),u(this,"logining",t.ref(!1)),u(this,"showEditUserSign",t.ref(!1)),u(this,"saveingUserSign",t.ref(!1)),u(this,"userSignForm",t.ref()),u(this,"userSignFormModel",t.reactive({Id:0,UserId:0,CAUserInfoKey:"",CAUserSealKey:"",CAUserYZKey:"",CAUserSealImg:"",CAUserYZImg:""})),u(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}])),u(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("保存失败,请稍后重试")})),u(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("读取失败,请稍后重试")})),u(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=r,this.initData()}initData(){t.onMounted((()=>{this.getPlatData()})),t.onUnmounted((()=>{}))}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){const t=this.storageInfo.getUser();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=t.Id,this.userFormModel.LastUpdateUserName=t.UserName,this.userFormModel.LastUpdateDate=this.utilities.getCurrentDate(),this.editUserTitle.value="编辑用户 - "+e.UserName,this.showEditUser.value=!0}doAddUser(){const e=this.storageInfo.getUser();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 t=this.utilities.getCurrentDate();t=this.utilities.dateHelper.format(this.utilities.dateHelper.add(this.utilities.stringHelper.toDate(t),1,"years"),"YYYY-MM-DD"),this.userFormModel.ExpiredDate=t,this.userFormModel.IsMutex=0,this.userFormModel.PwdAuthentication=0,this.userFormModel.LastUpdateUserId=e.Id,this.userFormModel.LastUpdateUserName=e.UserName,this.userFormModel.LastUpdateDate=this.utilities.getCurrentDate(),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(o.QueryWrapper.create().eq("UserId",this.currentUser.Id).eq("PlatformId",this.selectedPlatform.Id)),i=this.utilities.parseApiResult(t);t=await this.institutionPlatformApi.getEntityByFilter(o.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(o.QueryWrapper.create().in("Id",s.RoleIds.split(",")));let r=this.utilities.parseApiResult(t);for(const o of r){const e=!this.utilities.isNull(i)&&i.findIndex((e=>e.RoleId==o.Id))>=0;o.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(o.QueryWrapper.create().eq("UserId",e.Id)),i=this.utilities.parseApiResult(t);this.utilities.isNull(i)?(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=i.Id,this.userSignFormModel.UserId=i.UserId,this.userSignFormModel.CAUserInfoKey=i.CAUserInfoKey,this.userSignFormModel.CAUserSealKey=i.CAUserSealKey,this.userSignFormModel.CAUserYZKey=i.CAUserYZKey,this.userSignFormModel.CAUserSealImg=i.CAUserSealImg,this.userSignFormModel.CAUserYZImg=i.CAUserYZImg)}doResetUserPwd(e){this.modal.confirm({title:"提示",content:"确定要重置为初始密码吗?",onOk:async()=>{const t=await this.userinforApi.resetUserPwd(e);this.utilities.parseApiResult(t)>0?this.message.success("重置成功"):this.message.error("操作失败,请稍后重试")}})}}const Ct=e=>(t.pushScopeId("data-v-4827d4a9"),e=e(),t.popScopeId(),e),Nt={class:"instree-search"},Mt={class:"instree-list"},xt={style:{height:"600px","overflow-y":"auto"}},Pt=Ct((()=>t.createElementVNode("div",{style:{"margin-left":"16px",color:"#ff9900"}},[t.createElementVNode("div",{style:{"padding-bottom":"8px"}},"用户账号:手机号必填。在新设备登录时,需进行短信验证。"),t.createElementVNode("div",null,"内部账号:手机号可不填。")],-1))),Ut={style:{height:"600px","overflow-y":"auto"}},At=Ct((()=>t.createElementVNode("div",{class:"primary-color gird-tip"},"勾选绑定用户角色!",-1))),Tt={style:{height:"650px","overflow-y":"auto"}},Ft=Ct((()=>t.createElementVNode("div",{class:"primary-color gird-tip"},"勾选需要引入的用户!",-1))),bt={style:{height:"650px","overflow-y":"auto"}},St={style:{display:"none"}},Rt={style:{height:"400px","overflow-y":"auto"}},Vt=["src"],kt=["src"];const Dt=c(wt,[["render",function(e,i,o,s,r,l){const a=t.resolveComponent("Option"),n=t.resolveComponent("Select"),d=t.resolveComponent("Spin"),u=t.resolveComponent("NvControlGroup"),h=t.resolveComponent("Tree"),p=t.resolveComponent("Button"),m=t.resolveComponent("Space"),c=t.resolveComponent("NvBox"),f=t.resolveComponent("NvGrid"),g=t.resolveComponent("NvComForm"),I=t.resolveComponent("Form"),v=t.resolveComponent("Modal"),w=t.resolveComponent("LoginLog"),y=t.resolveComponent("BaseLogin"),C=t.resolveComponent("FormItem"),N=t.resolveComponent("NvPage");return t.openBlock(),t.createBlock(N,{gutter:8,class:"userinfor"},{default:t.withCtx((()=>[t.createVNode(c,{width:"300px",title:"组织机构树",showArrow:!0,onChange:e.doChangeUserBoxWidth},{footer:t.withCtx((()=>[t.createVNode(m,null,{default:t.withCtx((()=>[t.createVNode(p,{type:"text",onClick:e.doRefreshInsTree},{default:t.withCtx((()=>[t.createTextVNode("刷新")])),_:1},8,["onClick"])])),_:1})])),default:t.withCtx((()=>[t.createElementVNode("div",Nt,[t.createVNode(u,{width:"100%",icon:"md-refresh",label:"系统平台",labelWidth:75,onClick:e.getPlatData},{default:t.withCtx((()=>[t.createVNode(n,{modelValue:e.platId,"onUpdate:modelValue":i[0]||(i[0]=t=>e.platId=t),onOnChange:e.doChangePlatform,transfer:""},{default:t.withCtx((()=>[(t.openBlock(!0),t.createElementBlock(t.Fragment,null,t.renderList(e.platData,((e,i)=>(t.openBlock(),t.createBlock(a,{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.spinPlatShow},null,8,["show"])])),_:1},8,["onClick"])]),t.createElementVNode("div",Mt,[t.createVNode(h,{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(c,{width:e.userBoxWidth,title:"用户列表"},{default:t.withCtx((()=>[t.createVNode(f,{ref:"insTreeUserGrid",option:e.insTreeUserGridOption},null,8,["option"])])),_:1},8,["width"]),t.createVNode(v,{modelValue:e.showEditUser,"onUpdate:modelValue":i[2]||(i[2]=t=>e.showEditUser=t),draggable:"",mask:!0,"mask-closable":!1,width:850,title:e.editUserTitle,styles:{top:"3%"}},{footer:t.withCtx((()=>[t.createVNode(p,{type:"text",onClick:i[1]||(i[1]=t=>e.showEditUser=!1)},{default:t.withCtx((()=>[t.createTextVNode("关闭")])),_:1}),t.createVNode(p,{type:"primary",loading:e.saveingUser,onClick:e.doSaveUser},{default:t.withCtx((()=>[t.createTextVNode("保存")])),_:1},8,["loading","onClick"])])),default:t.withCtx((()=>[t.createElementVNode("div",xt,[t.createVNode(I,{ref:"userForm",model:e.userFormModel,"label-width":120,rules:e.userFormRule},{default:t.withCtx((()=>[t.createVNode(g,{ref:"userComForm",formModel:e.userFormModel,formItems:e.userFormItems},null,8,["formModel","formItems"])])),_:1},8,["model","rules"]),Pt])])),_:1},8,["modelValue","title"]),t.createVNode(v,{modelValue:e.showUserRole,"onUpdate:modelValue":i[4]||(i[4]=t=>e.showUserRole=t),draggable:"",mask:!0,"mask-closable":!1,width:850,title:"定岗",styles:{top:"3%"}},{footer:t.withCtx((()=>[t.createVNode(p,{type:"text",onClick:i[3]||(i[3]=t=>e.showUserRole=!1)},{default:t.withCtx((()=>[t.createTextVNode("关闭")])),_:1}),t.createVNode(p,{type:"primary",loading:e.saveingUserRole,onClick:e.doSaveUserRole},{default:t.withCtx((()=>[t.createTextVNode("保存")])),_:1},8,["loading","onClick"])])),default:t.withCtx((()=>[t.createElementVNode("div",Ut,[t.createVNode(f,{ref:"userRoleGrid",option:e.userRoleGridOption},{default:t.withCtx((()=>[At])),_:1},8,["option"])])])),_:1},8,["modelValue"]),t.createVNode(v,{modelValue:e.showImportUser,"onUpdate:modelValue":i[6]||(i[6]=t=>e.showImportUser=t),draggable:"",mask:!0,"mask-closable":!1,width:800,title:"引入用户",styles:{top:"3%"}},{footer:t.withCtx((()=>[t.createVNode(p,{type:"text",onClick:i[5]||(i[5]=t=>e.showImportUser=!1)},{default:t.withCtx((()=>[t.createTextVNode("关闭")])),_:1}),t.createVNode(p,{type:"primary",loading:e.saveingImportUser,onClick:e.doImportUser},{default:t.withCtx((()=>[t.createTextVNode("引入")])),_:1},8,["loading","onClick"])])),default:t.withCtx((()=>[t.createElementVNode("div",Tt,[t.createVNode(f,{ref:"otherUserGrid",option:e.otherUserGridOption},{default:t.withCtx((()=>[Ft])),_:1},8,["option"])])])),_:1},8,["modelValue"]),t.createVNode(v,{modelValue:e.showLoginLog,"onUpdate:modelValue":i[8]||(i[8]=t=>e.showLoginLog=t),draggable:"",mask:!0,"mask-closable":!1,width:800,title:"登录日志",styles:{top:"3%"}},{footer:t.withCtx((()=>[t.createVNode(p,{type:"text",onClick:i[7]||(i[7]=t=>e.showLoginLog=!1)},{default:t.withCtx((()=>[t.createTextVNode("关闭")])),_:1})])),default:t.withCtx((()=>[t.createElementVNode("div",bt,[t.createVNode(w,{ref:"loginLogRef"},null,512)])])),_:1},8,["modelValue"]),t.createVNode(d,{size:"large",fix:"",show:e.logining},null,8,["show"]),t.createElementVNode("div",St,[t.createVNode(y,{ref:"loginRef",autoLogin:!1},null,512)]),t.createVNode(v,{modelValue:e.showEditUserSign,"onUpdate:modelValue":i[10]||(i[10]=t=>e.showEditUserSign=t),draggable:"",mask:!0,"mask-closable":!1,width:440,title:"编辑签字信息",styles:{top:"3%"}},{footer:t.withCtx((()=>[t.createVNode(p,{type:"text",onClick:i[9]||(i[9]=t=>e.showEditUserSign=!1)},{default:t.withCtx((()=>[t.createTextVNode("关闭")])),_:1}),t.createVNode(p,{type:"primary",loading:e.saveingUserSign,onClick:e.doSaveUserSign},{default:t.withCtx((()=>[t.createTextVNode("保存")])),_:1},8,["loading","onClick"])])),default:t.withCtx((()=>[t.createElementVNode("div",Rt,[t.createVNode(I,{ref:"userSignForm",model:e.userSignFormModel,"label-width":85},{default:t.withCtx((()=>[t.createVNode(g,{ref:"userSignComForm",formModel:e.userSignFormModel,formItems:e.userSignFormItems},null,8,["formModel","formItems"]),t.createVNode(C,{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,Vt)):t.createCommentVNode("",!0),t.createVNode(p,{type:"primary",style:{float:"right"},onClick:e.doLoadUserSealImg},{default:t.withCtx((()=>[t.createTextVNode("加载")])),_:1},8,["onClick"])])),_:1}),t.createVNode(C,{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,kt)):t.createCommentVNode("",!0),t.createVNode(p,{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-4827d4a9"]]),Et={linkParam:{type:String,default:""},operates:{type:String,default:"-"}},Gt=t.defineComponent({name:"Module",components:{SelectPlatform:r.SelectPlatform},emits:["change"],props:Et,setup:(e,t)=>new Ot(e,t)});class Ot extends e.BaseInstance{constructor(e,r){super(),u(this,"props"),u(this,"ctx"),u(this,"platformApi",new i.PlatformApi),u(this,"moduleApi",new i.ModuleApi),u(this,"selectedPlatform"),u(this,"platId",t.ref(0)),u(this,"platData",t.ref([])),u(this,"spinPlatShow",t.ref(!1)),u(this,"getPlatData",(async()=>{var e;this.spinPlatShow.value=!0;const i=null==(e=this.storageInfo.getCurrentPlatform())?void 0:e.Id,s=await this.platformApi.getEntities(o.QueryWrapper.create().eq("Id",i).or((e=>e.allEq({PId:i}))).orderBy(["OrderNo"]));this.platData.value=this.utilities.parseApiResult(s),this.spinPlatShow.value=!1,this.platData.value.length>0&&(this.platId.value=this.platData.value[0].Id,t.nextTick((()=>{this.doPlatformChange(this.platData.value[0])})))})),u(this,"moduleWidth",t.ref("calc(100% - 300px)")),u(this,"webOrApp",t.ref(0)),u(this,"moduleGrid",t.ref()),u(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},{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(s.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(s.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(s.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=o.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)}}})),u(this,"doPlatformChange",(e=>{const t=this.platData.value.find((e=>e.Id==this.platId.value));this.utilities.isNull(t)||(this.selectedPlatform=t,this.loadModuleGridData())})),u(this,"loadModuleGridData",(()=>{this.moduleGrid.value.loadDataByQuery(o.QueryWrapper.create().eq("PlatformId",this.selectedPlatform.Id).eq("WebOrApp",this.webOrApp.value).orderBy(["OrderNo"]))})),u(this,"doChangeModuleWidth",(e=>{this.moduleWidth.value=e?"calc(100% - 300px)":"calc(100% - 45px)"})),u(this,"parentModule"),u(this,"editModulePId",0),u(this,"editModuleChildData",[]),u(this,"saveingModule",t.ref(!1)),u(this,"moduleComForm",t.ref()),u(this,"showEditModule",t.ref(!1)),u(this,"editMoudelModalTitle",t.ref("新增 - 模块")),u(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:0,LastUpdateUserName:"",LastUpdateDate:""})),u(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: '编辑' }]"}}]}])),u(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 i=this.editModuleChildData;this.editModulePId>0&&(e=await this.moduleApi.getCount(o.QueryWrapper.create().eq("PId",this.editModulePId)),t=this.utilities.parseApiResult(e),i.push({Id:this.editModulePId,HasChild:t>0?1:0})),await this.moduleApi.saves(i)}this.message.success("保存成功!"),this.moduleGrid.value.refreshData(),this.saveingModule.value=!1,this.showEditModule.value=!1})),u(this,"showImportModule",t.ref(!1)),u(this,"saveingImportModule",t.ref(!1)),u(this,"originPlatform",t.reactive({list:[],selectedItem:{Id:0,PlatformName:""},selectedId:0})),u(this,"originModuleGrid",t.ref()),u(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(s.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(s.Tag,{color:i.color},(()=>i.text))}}],event:{event_search:e=>{const t=o.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)}}})),u(this,"targetPlatform",t.reactive({Id:0,PlatformName:""})),u(this,"targetModuleGrid",t.ref()),u(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(s.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(s.Tag,{color:i.color},(()=>i.text))}}],event:{event_search:e=>{const t=o.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)}}})),u(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()})),u(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=r,this.initData()}initData(){t.onMounted((()=>{this.getPlatData()})),t.onUnmounted((()=>{}))}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){const t=this.storageInfo.getUser();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=t.Id,this.moduleFormModel.LastUpdateUserName=t.UserName,this.moduleFormModel.LastUpdateDate=this.utilities.getCurrentDate(),this.parentModule=void 0,this.editModulePId=e.PId,this.editModuleChildData=[],this.editMoudelModalTitle.value=`编辑 - 模块 - ${e.ModuleName}`,this.setParentModuleTreeItem(!0),this.showEditModule.value=!0}doAddModule(){const e=this.storageInfo.getUser();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=e.Id,this.moduleFormModel.LastUpdateUserName=e.UserName,this.moduleFormModel.LastUpdateDate=this.utilities.getCurrentDate(),this.parentModule=void 0,this.setParentModuleTreeItem(!1),this.editMoudelModalTitle.value="新增 - 模块",this.showEditModule.value=!0}doAddChildModule(e){const t=this.storageInfo.getUser();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=t.Id,this.moduleFormModel.LastUpdateUserName=t.UserName,this.moduleFormModel.LastUpdateDate=this.utilities.getCurrentDate(),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 i=await this.moduleApi.delete(e.Id),s=this.utilities.parseApiResult(i);s<=0?this.message.warning("删除失败,请稍后重试!"):(i=await this.moduleApi.getCount(o.QueryWrapper.create().eq("PId",t)),s=this.utilities.parseApiResult(i),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(){var e;const i=null==(e=this.storageInfo.getCurrentPlatform())?void 0:e.Id,s=await this.platformApi.getEntities(o.QueryWrapper.create().eq("Id",i).ne("Id",this.selectedPlatform.Id).or((e=>e.allEq({PId:i}))).orderBy(["OrderNo"]));this.originPlatform.list=this.utilities.parseApiResult(s),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=o.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=o.QueryWrapper.create().eq("PlatformId",this.targetPlatform.Id).eq("WebOrApp",this.webOrApp.value).orderBy(["OrderNo"]),i=await this.moduleApi.getEntities(t),s=this.utilities.parseApiResult(i),r={Id:0,PId:-1,ModuleName:"根节点",ModuleType:"",PlatformId:this.targetPlatform.Id,IconUrl:""};s.push(r),e.success(s)}))}}const Lt={style:{height:"650px","overflow-y":"auto"}},Bt={class:"import-module",style:{height:"650px",position:"relative"}},_t={style:{width:"100%",height:"100%"}},Wt={style:{width:"560px",height:"100%",float:"left"}},qt={style:{height:"calc(100% - 0px)"}},Kt={style:{width:"calc(100% - 570px)",height:"100%","margin-left":"10px",display:"inline-block"}},Qt={style:{height:"calc(100% - 0px)"}},Yt=(e=>(t.pushScopeId("data-v-23a8ab5f"),e=e(),t.popScopeId(),e))((()=>t.createElementVNode("div",{class:"primary-color gird-tip"},"点击选择要放置的位置!",-1)));const Ht=c(Gt,[["render",function(e,i,o,s,r,l){const a=t.resolveComponent("Option"),n=t.resolveComponent("Select"),d=t.resolveComponent("Spin"),u=t.resolveComponent("NvControlGroup"),h=t.resolveComponent("Radio"),p=t.resolveComponent("RadioGroup"),m=t.resolveComponent("NvGrid"),c=t.resolveComponent("NvComForm"),f=t.resolveComponent("Form"),g=t.resolveComponent("Button"),I=t.resolveComponent("Modal"),v=t.resolveComponent("Card"),w=t.resolveComponent("NvBox"),y=t.resolveComponent("NvPage");return t.openBlock(),t.createBlock(y,{gutter:8,class:"module"},{default:t.withCtx((()=>[t.createVNode(w,{width:"100%",title:"模块列表"},{default:t.withCtx((()=>[t.createVNode(m,{ref:"moduleGrid",option:e.moduleGridOption},{default:t.withCtx((()=>[t.createVNode(u,{width:"380px",icon:"md-refresh",label:"系统平台",labelWidth:75,onClick:e.getPlatData},{default:t.withCtx((()=>[t.createVNode(n,{modelValue:e.platId,"onUpdate:modelValue":i[0]||(i[0]=t=>e.platId=t),onOnChange:e.doPlatformChange,transfer:""},{default:t.withCtx((()=>[(t.openBlock(!0),t.createElementBlock(t.Fragment,null,t.renderList(e.platData,((e,i)=>(t.openBlock(),t.createBlock(a,{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.spinPlatShow},null,8,["show"])])),_:1},8,["onClick"]),t.createVNode(p,{modelValue:e.webOrApp,"onUpdate:modelValue":i[1]||(i[1]=t=>e.webOrApp=t),type:"button",onOnChange:e.loadModuleGridData},{default:t.withCtx((()=>[t.createVNode(h,{label:0},{default:t.withCtx((()=>[t.createTextVNode("Web")])),_:1}),t.createVNode(h,{label:1},{default:t.withCtx((()=>[t.createTextVNode("App")])),_:1})])),_:1},8,["modelValue","onOnChange"])])),_:1},8,["option"]),t.createVNode(I,{modelValue:e.showEditModule,"onUpdate:modelValue":i[3]||(i[3]=t=>e.showEditModule=t),draggable:"",mask:!0,"mask-closable":!1,width:700,title:e.editMoudelModalTitle,styles:{top:"3%"}},{footer:t.withCtx((()=>[t.createVNode(g,{type:"text",onClick:i[2]||(i[2]=t=>e.showEditModule=!1)},{default:t.withCtx((()=>[t.createTextVNode("关闭")])),_:1}),t.createVNode(g,{type:"primary",loading:e.saveingModule,onClick:e.doSaveModule},{default:t.withCtx((()=>[t.createTextVNode("保存")])),_:1},8,["loading","onClick"])])),default:t.withCtx((()=>[t.createElementVNode("div",Lt,[t.createVNode(f,{model:e.moduleFormModel,"label-width":90},{default:t.withCtx((()=>[t.createVNode(c,{ref:"moduleComForm",formModel:e.moduleFormModel,formItems:e.moduleFormItems},null,8,["formModel","formItems"])])),_:1},8,["model"])])])),_:1},8,["modelValue","title"]),t.createVNode(I,{modelValue:e.showImportModule,"onUpdate:modelValue":i[6]||(i[6]=t=>e.showImportModule=t),draggable:"",mask:!0,"mask-closable":!1,width:1300,title:"引入模块",styles:{top:"3%"}},{footer:t.withCtx((()=>[t.createVNode(g,{type:"text",onClick:i[5]||(i[5]=t=>e.showImportModule=!1)},{default:t.withCtx((()=>[t.createTextVNode("关闭")])),_:1}),t.createVNode(g,{type:"primary",loading:e.saveingImportModule,onClick:e.doImportOriginToTargetModule},{default:t.withCtx((()=>[t.createTextVNode("引入")])),_:1},8,["loading","onClick"])])),default:t.withCtx((()=>[t.createElementVNode("div",Bt,[t.createElementVNode("div",_t,[t.createElementVNode("div",Wt,[t.createVNode(v,{"dis-hover":"",class:"import-module_card"},{title:t.withCtx((()=>[t.createTextVNode("源平台 - ["+t.toDisplayString(e.originPlatform.selectedItem.PlatformName)+"] - 模块菜单",1)])),default:t.withCtx((()=>[t.createElementVNode("div",qt,[t.createVNode(m,{ref:"originModuleGrid",option:e.originModuleGridOption},{default:t.withCtx((()=>[t.createVNode(n,{modelValue:e.originPlatform.selectedId,"onUpdate:modelValue":i[4]||(i[4]=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(a,{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",Kt,[t.createVNode(v,{"dis-hover":"",class:"import-module_card"},{title:t.withCtx((()=>[t.createTextVNode("目标平台 - ["+t.toDisplayString(e.targetPlatform.PlatformName)+"] - 模块菜单",1)])),default:t.withCtx((()=>[t.createElementVNode("div",Qt,[t.createVNode(m,{ref:"targetModuleGrid",option:e.targetModuleGridOption},{default:t.withCtx((()=>[Yt])),_:1},8,["option"])])])),_:1})]),t.withDirectives(t.createVNode(d,{fix:""},null,512),[[t.vShow,e.saveingImportModule]])])])])),_:1},8,["modelValue"])])),_:1})])),_:1})}],["__scopeId","data-v-23a8ab5f"]]),zt={linkParam:{type:String,default:""},operates:{type:String,default:"-"}},Zt=t.defineComponent({name:"ProjectUserinfor",components:{SelectPlatform:r.SelectPlatform,LoginLog:It,BaseLogin:r.BaseLogin},emits:[""],props:zt,setup:(e,t)=>new $t(e,t)});class $t extends e.BaseInstance{constructor(e,r){super(),u(this,"props"),u(this,"ctx"),u(this,"platformApi",new i.PlatformApi),u(this,"institutionTreeApi",new i.InstitutionTreeApi),u(this,"userinforApi",new i.UserinforApi),u(this,"institutionUserApi",new i.InstitutionUserApi),u(this,"userRoleApi",new i.UserRoleApi),u(this,"institutionPlatformApi",new i.InstitutionPlatformApi),u(this,"roleApi",new i.RoleApi),u(this,"oauthApi",new i.OAuthApi),u(this,"userSignApi",new i.UserSignApi),u(this,"signTaskInfoApi",new l.SignTaskInfoApi),u(this,"selectedPlatform"),u(this,"platId",t.ref(0)),u(this,"platData",t.ref([])),u(this,"spinPlatShow",t.ref(!1)),u(this,"getPlatData",(async()=>{var e;this.spinPlatShow.value=!0;const i=null==(e=this.storageInfo.getCurrentPlatform())?void 0:e.Id,s=await this.platformApi.getEntities(o.QueryWrapper.create().eq("Id",i).or((e=>e.allEq({PId:i}))).orderBy(["OrderNo"]));this.platData.value=this.utilities.parseApiResult(s),this.spinPlatShow.value=!1,this.platData.value.length>0&&(this.platId.value=this.platData.value[0].Id),t.nextTick((()=>{this.doChangePlatform(this.platData.value[0])}))})),u(this,"selectedInsTree"),u(this,"institutionTree",t.ref([])),u(this,"loadingInstitutionTree",t.ref(!1)),u(this,"doChangePlatform",(e=>{const t=this.platData.value.find((e=>e.Id==this.platId.value));this.utilities.isNull(e)||(this.selectedPlatform=t,this.loadInsTree())})),u(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,"[未知节点]"))])]))),u(this,"doChangeInsTree",(e=>{e.length>0&&(this.selectedInsTree=e[0],this.loadInstitutionTreeUsers({}))})),u(this,"doRefreshInsTree",(()=>{this.loadInsTree()})),u(this,"userBoxWidth",t.ref("calc(100% - 300px)")),u(this,"insTreeUserGrid",t.ref()),u(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:13},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()}}],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(s.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:150,rowButtons:[{name:"userSign",text:"签字",onclick:(e,t)=>{this.doShowEditUserSign(e)}},{name:"resize",text:"重置",onclick:(e,t)=>{this.doResetUserPwd(e.Id)}}]}],event:{event_search:e=>{this.insTreeUserGrid.value.setPageIndex(1),this.loadInstitutionTreeUsers(e)}}})),u(this,"doChangeUserBoxWidth",(e=>{this.userBoxWidth.value=e?"calc(100% - 300px)":"calc(100% - 45px)"})),u(this,"showEditUser",t.ref(!1)),u(this,"saveingUser",t.ref(!1)),u(this,"editUserTitle",t.ref("新增 - 用户")),u(this,"userForm",t.ref()),u(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:0,LastUpdateUserName:"",LastUpdateDate:""})),u(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",prop:"Phone"},{model:"Sex",label:"性别",type:"Select",selectProp:{datas:[{text:"男",value:1},{text:"女",value:2},{text:"其他",value:3}],transfer:!0}}]},{model:"",label:"账号信息",span:24,children:[{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"},{model:"WechatOpenId",label:"微信授权Id",type:"Input"}]}])),u(this,"userFormRule",t.reactive({UserName:[{required:!0,message:"姓名不能为空",trigger:"blur"}],Account:[{required:!0,message:"账号不能为空",trigger:"blur"}],Phone:[{required:!0,validator:this.validPhone,trigger:"blur"}]})),u(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=o.QueryWrapper.create();t.eq("Phone",this.userFormModel.Phone).eq("IsDel",0),this.userFormModel.Id>0&&t.ne("Id",this.userFormModel.Id);const i=await this.userinforApi.isExist(t);if(e=this.utilities.parseApiResult(i),e)return this.message.warning(`手机号 ${this.userFormModel.Phone} 已关联其他账号, 请重新输入!`),void(this.saveingUser.value=!1)}const t=o.QueryWrapper.create();t.eq("Account",this.userFormModel.Account).eq("IsDel",0),this.userFormModel.Id>0&&t.ne("Id",this.userFormModel.Id);let i=await this.userinforApi.isExist(t);if(e=this.utilities.parseApiResult(i),e)return this.message.warning(`账号 ${this.userFormModel.Account} 已存在, 请重新输入!`),void(this.saveingUser.value=!1);i=await this.userinforApi.save(this.userFormModel),e=this.utilities.parseApiResult(i),0==this.userFormModel.Id&&(await this.institutionUserApi.save({InstitutionId:this.selectedInsTree.InstitutionId,UserId:e,InsTreeId:this.selectedInsTree.Id}),await this.userinforApi.initialUserPwd(e,this.selectedPlatform.Id)),this.saveingUser.value=!1,e>0?(this.message.success("保存成功"),this.insTreeUserGrid.value.refreshData(),this.showEditUser.value=!1):this.message.error(i.msg)})),u(this,"currentUser"),u(this,"showUserRole",t.ref(!1)),u(this,"saveingUserRole",t.ref(!1)),u(this,"userRoleGrid",t.ref()),u(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(s.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"}]})),u(this,"doSaveUserRole",(async()=>{const e=this.userRoleGrid.value.getDatas().filter((e=>1==e.IsChk));this.saveingUserRole.value=!0;let t=await this.userRoleApi.getEntities(o.QueryWrapper.create().eq("UserId",this.currentUser.Id).eq("PlatformId",this.selectedPlatform.Id)),i=this.utilities.parseApiResult(t),s=[];for(const o of e)-1==i.findIndex((e=>e.RoleId==o.Id))&&s.push({PlatformId:this.selectedPlatform.Id,UserId:this.currentUser.Id,RoleId:o.Id});let r=[];for(const o of i)-1==e.findIndex((e=>e.Id==o.RoleId))&&r.push(o.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("保存失败, 请稍后重试!")})),u(this,"showImportUser",t.ref(!1)),u(this,"saveingImportUser",t.ref(!1)),u(this,"otherUserGrid",t.ref()),u(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(s.Tag,{color:i.color},(()=>i.text))}}],event:{event_search:e=>{this.loadImportUserGrid(e)}}})),u(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("导入失败, 请稍后重试!")})),u(this,"showLoginLog",t.ref(!1)),u(this,"loginLogRef",t.ref()),u(this,"doShowLoginLog",(e=>{this.showLoginLog.value=!0,this.loginLogRef.value.loadLoginLog(this.selectedPlatform.Id,e.Id)})),u(this,"loginRef",t.ref()),u(this,"logining",t.ref(!1)),u(this,"showEditUserSign",t.ref(!1)),u(this,"saveingUserSign",t.ref(!1)),u(this,"userSignForm",t.ref()),u(this,"userSignFormModel",t.reactive({Id:0,UserId:0,CAUserInfoKey:"",CAUserSealKey:"",CAUserYZKey:"",CAUserSealImg:"",CAUserYZImg:""})),u(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}])),u(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("保存失败,请稍后重试")})),u(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("读取失败,请稍后重试")})),u(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=r,this.initData()}initData(){t.onMounted((()=>{this.getPlatData()})),t.onUnmounted((()=>{}))}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){const t=this.storageInfo.getUser();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=t.Id,this.userFormModel.LastUpdateUserName=t.UserName,this.userFormModel.LastUpdateDate=this.utilities.getCurrentDate(),this.editUserTitle.value="编辑用户 - "+e.UserName,this.showEditUser.value=!0}doAddUser(){const e=this.storageInfo.getUser();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=0,this.userFormModel.AccountStatus=1,this.userFormModel.ErrorNum=0;let t=this.utilities.getCurrentDate();t=this.utilities.dateHelper.format(this.utilities.dateHelper.add(this.utilities.stringHelper.toDate(t),1,"years"),"YYYY-MM-DD"),this.userFormModel.ExpiredDate=t,this.userFormModel.IsMutex=0,this.userFormModel.PwdAuthentication=0,this.userFormModel.LastUpdateUserId=e.Id,this.userFormModel.LastUpdateUserName=e.UserName,this.userFormModel.LastUpdateDate=this.utilities.getCurrentDate(),this.editUserTitle.value="新增 - 用户",this.showEditUser.value=!0}doDeleteUser(e){this.modal.confirm({title:"提示",content:`确定要移除用户${e.UserName}吗?`,onOk:async()=>{const t=await this.userinforApi.save({Id:e.Id,IsDel:1});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(o.QueryWrapper.create().eq("UserId",this.currentUser.Id).eq("PlatformId",this.selectedPlatform.Id)),i=this.utilities.parseApiResult(t);t=await this.institutionPlatformApi.getEntityByFilter(o.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(o.QueryWrapper.create().in("Id",s.RoleIds.split(",")));let r=this.utilities.parseApiResult(t);for(const o of r){const e=!this.utilities.isNull(i)&&i.findIndex((e=>e.RoleId==o.Id))>=0;o.IsChk=e}e.success(r)}))}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)}doResetUserPwd(e){this.modal.confirm({title:"提示",content:"确定要重置为初始密码吗?",onOk:async()=>{const t=await this.userinforApi.resetUserPwd(e);this.utilities.parseApiResult(t)>0?this.message.success("重置成功"):this.message.error("操作失败,请稍后重试")}})}async doShowEditUserSign(e){this.showEditUserSign.value=!0;const t=await this.userSignApi.getEntityByFilter(o.QueryWrapper.create().eq("UserId",e.Id)),i=this.utilities.parseApiResult(t);this.utilities.isNull(i)?(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=i.Id,this.userSignFormModel.UserId=i.UserId,this.userSignFormModel.CAUserInfoKey=i.CAUserInfoKey,this.userSignFormModel.CAUserSealKey=i.CAUserSealKey,this.userSignFormModel.CAUserYZKey=i.CAUserYZKey,this.userSignFormModel.CAUserSealImg=i.CAUserSealImg,this.userSignFormModel.CAUserYZImg=i.CAUserYZImg)}validPhone(e,t,i){if(!t)return i(new Error("手机号不能为空"));/^1[3456789]\d{9}$/.test(t)?i():i("手机号格式不正确!")}}const jt=e=>(t.pushScopeId("data-v-86385f96"),e=e(),t.popScopeId(),e),Jt={class:"instree-search"},Xt={class:"instree-list"},ei={style:{height:"600px","overflow-y":"auto"}},ti=jt((()=>t.createElementVNode("div",{style:{"margin-left":"16px",color:"#ff9900"}},[t.createElementVNode("div",{style:{"padding-bottom":"8px"}},"用户账号:手机号必填。在新设备登录时,需进行短信验证。"),t.createElementVNode("div",null,"内部账号:手机号可不填。")],-1))),ii={style:{height:"600px","overflow-y":"auto"}},oi=jt((()=>t.createElementVNode("div",{class:"primary-color gird-tip"},"勾选绑定用户角色!",-1))),si={style:{height:"650px","overflow-y":"auto"}},ri={style:{display:"none"}},li={style:{height:"400px","overflow-y":"auto"}},ai=["src"],ni=["src"];return[{path:"/permission-service/platform/platform",component:v},{path:"/permission-service/platform/module",component:b},{path:"/permission-service/platform/role",component:O},{path:"/permission-service/institution/institutiontype",component:q},{path:"/permission-service/institution/institution",component:X},{path:"/permission-service/institution/userinfor",component:Ce},{path:"/permission-service/institution/enterprise",component:Ue},{path:"/permission-service/thirdparty/information",component:ke},{path:"/permission-service/platform/subplatform",component:Ke},{path:"/permission-service/platform/subrole",component:Je},{path:"/permission-service/institution/subenterprise",component:ot},{path:"/permission-service/institution/subinstitution",component:mt},{path:"/permission-service/institution/subuserinfor",component:Dt},{path:"/permission-service/institution/projectUserinfor",component:c(Zt,[["render",function(e,i,o,s,r,l){const a=t.resolveComponent("Option"),n=t.resolveComponent("Select"),d=t.resolveComponent("Spin"),u=t.resolveComponent("NvControlGroup"),h=t.resolveComponent("Tree"),p=t.resolveComponent("Button"),m=t.resolveComponent("Space"),c=t.resolveComponent("NvBox"),f=t.resolveComponent("NvGrid"),g=t.resolveComponent("NvComForm"),I=t.resolveComponent("Form"),v=t.resolveComponent("Modal"),w=t.resolveComponent("LoginLog"),y=t.resolveComponent("BaseLogin"),C=t.resolveComponent("FormItem"),N=t.resolveComponent("NvPage");return t.openBlock(),t.createBlock(N,{gutter:8,class:"userinfor"},{default:t.withCtx((()=>[t.createVNode(c,{width:"300px",title:"组织机构树",showArrow:!0,onChange:e.doChangeUserBoxWidth},{footer:t.withCtx((()=>[t.createVNode(m,null,{default:t.withCtx((()=>[t.createVNode(p,{type:"text",onClick:e.doRefreshInsTree},{default:t.withCtx((()=>[t.createTextVNode("刷新")])),_:1},8,["onClick"])])),_:1})])),default:t.withCtx((()=>[t.createElementVNode("div",Jt,[t.createVNode(u,{width:"100%",icon:"md-refresh",label:"系统平台",labelWidth:75,onClick:e.getPlatData},{default:t.withCtx((()=>[t.createVNode(n,{modelValue:e.platId,"onUpdate:modelValue":i[0]||(i[0]=t=>e.platId=t),onOnChange:e.doChangePlatform,transfer:""},{default:t.withCtx((()=>[(t.openBlock(!0),t.createElementBlock(t.Fragment,null,t.renderList(e.platData,((e,i)=>(t.openBlock(),t.createBlock(a,{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.spinPlatShow},null,8,["show"])])),_:1},8,["onClick"])]),t.createElementVNode("div",Xt,[t.createVNode(h,{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(c,{width:e.userBoxWidth,title:"用户列表"},{default:t.withCtx((()=>[t.createVNode(f,{ref:"insTreeUserGrid",option:e.insTreeUserGridOption},null,8,["option"])])),_:1},8,["width"]),t.createVNode(v,{modelValue:e.showEditUser,"onUpdate:modelValue":i[2]||(i[2]=t=>e.showEditUser=t),draggable:"",mask:!0,"mask-closable":!1,width:850,title:e.editUserTitle,styles:{top:"3%"}},{footer:t.withCtx((()=>[t.createVNode(p,{type:"text",onClick:i[1]||(i[1]=t=>e.showEditUser=!1)},{default:t.withCtx((()=>[t.createTextVNode("关闭")])),_:1}),t.createVNode(p,{type:"primary",loading:e.saveingUser,onClick:e.doSaveUser},{default:t.withCtx((()=>[t.createTextVNode("保存")])),_:1},8,["loading","onClick"])])),default:t.withCtx((()=>[t.createElementVNode("div",ei,[t.createVNode(I,{ref:"userForm",model:e.userFormModel,"label-width":120,rules:e.userFormRule},{default:t.withCtx((()=>[t.createVNode(g,{ref:"userComForm",formModel:e.userFormModel,formItems:e.userFormItems},null,8,["formModel","formItems"])])),_:1},8,["model","rules"]),ti])])),_:1},8,["modelValue","title"]),t.createVNode(v,{modelValue:e.showUserRole,"onUpdate:modelValue":i[4]||(i[4]=t=>e.showUserRole=t),draggable:"",mask:!0,"mask-closable":!1,width:850,title:"定岗",styles:{top:"3%"}},{footer:t.withCtx((()=>[t.createVNode(p,{type:"text",onClick:i[3]||(i[3]=t=>e.showUserRole=!1)},{default:t.withCtx((()=>[t.createTextVNode("关闭")])),_:1}),t.createVNode(p,{type:"primary",loading:e.saveingUserRole,onClick:e.doSaveUserRole},{default:t.withCtx((()=>[t.createTextVNode("保存")])),_:1},8,["loading","onClick"])])),default:t.withCtx((()=>[t.createElementVNode("div",ii,[t.createVNode(f,{ref:"userRoleGrid",option:e.userRoleGridOption},{default:t.withCtx((()=>[oi])),_:1},8,["option"])])])),_:1},8,["modelValue"]),t.createVNode(v,{modelValue:e.showLoginLog,"onUpdate:modelValue":i[6]||(i[6]=t=>e.showLoginLog=t),draggable:"",mask:!0,"mask-closable":!1,width:800,title:"登录日志",styles:{top:"3%"}},{footer:t.withCtx((()=>[t.createVNode(p,{type:"text",onClick:i[5]||(i[5]=t=>e.showLoginLog=!1)},{default:t.withCtx((()=>[t.createTextVNode("关闭")])),_:1})])),default:t.withCtx((()=>[t.createElementVNode("div",si,[t.createVNode(w,{ref:"loginLogRef"},null,512)])])),_:1},8,["modelValue"]),t.createVNode(d,{size:"large",fix:"",show:e.logining},null,8,["show"]),t.createElementVNode("div",ri,[t.createVNode(y,{ref:"loginRef",autoLogin:!1},null,512)]),t.createVNode(v,{modelValue:e.showEditUserSign,"onUpdate:modelValue":i[8]||(i[8]=t=>e.showEditUserSign=t),draggable:"",mask:!0,"mask-closable":!1,width:440,title:"编辑签字信息",styles:{top:"3%"}},{footer:t.withCtx((()=>[t.createVNode(p,{type:"text",onClick:i[7]||(i[7]=t=>e.showEditUserSign=!1)},{default:t.withCtx((()=>[t.createTextVNode("关闭")])),_:1}),t.createVNode(p,{type:"primary",loading:e.saveingUserSign,onClick:e.doSaveUserSign},{default:t.withCtx((()=>[t.createTextVNode("保存")])),_:1},8,["loading","onClick"])])),default:t.withCtx((()=>[t.createElementVNode("div",li,[t.createVNode(I,{ref:"userSignForm",model:e.userSignFormModel,"label-width":85},{default:t.withCtx((()=>[t.createVNode(g,{ref:"userSignComForm",formModel:e.userSignFormModel,formItems:e.userSignFormItems},null,8,["formModel","formItems"]),t.createVNode(C,{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,ai)):t.createCommentVNode("",!0),t.createVNode(p,{type:"primary",style:{float:"right"},onClick:e.doLoadUserSealImg},{default:t.withCtx((()=>[t.createTextVNode("加载")])),_:1},8,["onClick"])])),_:1}),t.createVNode(C,{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,ni)):t.createCommentVNode("",!0),t.createVNode(p,{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-86385f96"]])},{path:"/permission-service/subplatform/subModule",component:Ht}]}));
|
|
1
|
+
!function(e,t){"object"==typeof exports&&"undefined"!=typeof module?module.exports=t(require("@newview/base-vue"),require("vue"),require("@newview/permission-api"),require("@newview/infrastructure"),require("view-ui-plus"),require("@newview/permission-ui"),require("@newview/casign-api"),require("@newview/basics-api"),require("@newview/file-ui")):"function"==typeof define&&define.amd?define(["@newview/base-vue","vue","@newview/permission-api","@newview/infrastructure","view-ui-plus","@newview/permission-ui","@newview/casign-api","@newview/basics-api","@newview/file-ui"],t):(e="undefined"!=typeof globalThis?globalThis:e||self).permissionservice=t(e.baseVue,e.Vue,e.permissionApi,e.infrastructure,e.viewUiPlus,e.permissionUi,e.casignApi,e.basicsApi,e.fileUi)}(this,(function(e,t,i,o,s,r,l,a,n){"use strict";var d=Object.defineProperty,u=(e,t,i)=>(((e,t,i)=>{t in e?d(e,t,{enumerable:!0,configurable:!0,writable:!0,value:i}):e[t]=i})(e,"symbol"!=typeof t?t+"":t,i),i);const h={linkParam:{type:String,default:""},operates:{type:String,default:"-"}},p=t.defineComponent({name:"Platform",components:{},emits:[""],props:h,setup:(e,t)=>new m(e,t)});let m=class extends e.BaseInstance{constructor(e,s){super(),u(this,"props"),u(this,"ctx"),u(this,"platformApi",new i.PlatformApi),u(this,"platformGroupApi",new i.PlatformGroupApi),u(this,"currentGroupRow",t.ref({})),u(this,"groupData",t.ref()),u(this,"groupOption",t.reactive({api:this.platformGroupApi,keyField:"Id",titleField:"GroupName"})),u(this,"showEditGroup",t.ref(!1)),u(this,"refGroupForm",t.ref()),u(this,"saveingGroupform",t.ref(!1)),u(this,"editGroupformModalTitle",t.ref("新增 - 平台目录")),u(this,"groupFormModel",t.reactive({Id:0,SKey:this.utilities.getUniqueCode(),GroupNo:"",GroupName:"",OrderNo:"",CreateDate:this.utilities.getCurrentDate()})),u(this,"groupFormItems",t.reactive([{model:"GroupName",label:"组名称",prop:"GroupName",type:"Input",span:24,rules:[{required:!0,message:"组名称不能为空",trigger:"blur"}]},{model:"GroupNo",label:"平台目录代号",prop:"GroupNo",type:"Input",span:24,rules:[{required:!0,message:"平台目录代号不能为空",trigger:"blur"}]},{model:"OrderNo",label:"排序号",prop:"OrderNo",type:"InputNumber",span:24}])),u(this,"doRefresh",(()=>{this.loadGroupData()})),u(this,"groupSelect",(e=>{var t;this.currentGroupRow.value=e,null==(t=this.platformGrid.value)||t.setPageIndex(1),this.loadPlatformGrid()})),u(this,"handleGroupAdd",(()=>{this.showEditGroup.value=!0})),u(this,"doSaveGroupform",(async()=>{if(!(await this.refGroupForm.value.validate()))return;this.saveingGroupform.value=!0;let e=await this.platformGroupApi.save(this.groupFormModel);if(this.utilities.parseApiResult(e)<=0)return this.message.warning("保存失败,请稍后重试!"),void(this.saveingGroupform.value=!1);this.message.success("保存成功!"),this.doRefresh(),this.saveingGroupform.value=!1,this.showEditGroup.value=!1})),u(this,"upList",t.reactive(Array())),u(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:150},{colType:"select",field:"PId",title:"上级平台",width:150,select:{data:this.upList,clearable:!0,multiple:!1},format:(e,t)=>{const i=this.upList.find((e=>e.value==t.row.PId));return e("span",0==t.row.PId?"/":i.text)}},{colType:"ed",field:"PlatformNo",title:"系统代号",width:100},{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),i=o.QueryWrapper.create();i.eq("1","1");for(const o of t){const t=e[o];this.utilities.isNull(t)||i.like(o,t)}this.platformGrid.value.loadDataByQuery(i)}}})),u(this,"platformGrid",t.ref()),u(this,"refPlatformForm",t.ref()),u(this,"saveingPlatform",t.ref(!1)),u(this,"showEditPlatform",t.ref(!1)),u(this,"editPlatformModalTitle",t.ref("新增 - 系统平台")),u(this,"platformFormModel",t.reactive({Id:0,SKey:"",PlatformNo:"",PlatformName:"",PlatformAbbreviation:"",OssRootPath:"",PlatformGroup:this.currentGroupRow.value.Id,PlatformUrl:"",OrderNo:0,CABusinessKey:"",PId:0,LastUpdateUserId:0,LastUpdateUserName:"",LastUpdateDate:"",DefaultPwd:""})),u(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:"PId",label:"上级平台",prop:"PId",type:"Select",span:24,selectProp:{datas:[],transfer:!0,clearable:!0,multiple:!1}},{model:"PlatformUrl",label:"系统URL",prop:"PlatformUrl",type:"Input",span:24},{model:"CABusinessKey",label:"CAKey",prop:"CABusinessKey",type:"Input",span:24},{model:"DefaultPwd",label:"用户默认密码",prop:"DefaultPwd",type:"Input",span:24},{model:"OrderNo",label:"排序号",prop:"OrderNo",type:"InputNumber",span:24}])),u(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=s,this.usePlatform()}loadGroupData(){this.groupData.value.loadDataByQuery(o.QueryWrapper.create().orderBy(["OrderNo"]))}usePlatform(){t.onMounted((()=>{this.loadGroupData()}))}async loadPlatformGrid(){const e=this.storageInfo.getUser();this.platformGrid.value.setGloablValue("LastUpdateUserId",e.Id),this.platformGrid.value.setGloablValue("LastUpdateUserName",e.UserName),this.platformGrid.value.setGloablValue("LastUpdateDate",(()=>this.utilities.getCurrentDate())),this.platformGrid.value.setGloablValue("SKey",(()=>this.utilities.getUniqueCode()),!0),this.platformGrid.value.loadData((async e=>{const t=await this.platformApi.getEntitiesPageDynamic(e.page,e.pageSize,o.QueryWrapper.create().eq("PlatformGroup",this.currentGroupRow.value.Id).orderBy(["OrderNo"]).eq("1","1")),i=this.utilities.parseApiResult(t);e.success(i),this.upList.splice(0,this.upList.length);for(const o of i.Datas)this.upList.push({value:o.Id,text:o.PlatformAbbreviation})}))}doEditPlatform(e){var t;const i=this.storageInfo.getUser();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=i.Id,this.platformFormModel.LastUpdateUserName=i.UserName,this.platformFormModel.PId=e.PId,this.platformFormModel.LastUpdateDate=this.utilities.getCurrentDate(),this.platformFormModel.DefaultPwd=e.DefaultPwd,this.editPlatformModalTitle.value=`编辑 - ${e.PlatformName}`;const o=null==(t=this.platformGrid.value)?void 0:t.getDatas();this.platformFormItems[4].selectProp.datas=o.length>0?null==o?void 0:o.map((e=>({value:e.Id,text:e.PlatformName}))):[],this.showEditPlatform.value=!0}doAddPlatform(){var e;const t=this.storageInfo.getUser();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.currentGroupRow.value.Id,this.platformFormModel.PlatformUrl="",this.platformFormModel.CABusinessKey="",this.platformFormModel.OrderNo=0,this.platformFormModel.LastUpdateUserId=t.Id,this.platformFormModel.LastUpdateUserName=t.UserName,this.platformFormModel.LastUpdateDate=this.utilities.getCurrentDate(),this.editPlatformModalTitle.value="新增 - 系统平台";const i=null==(e=this.platformGrid.value)?void 0:e.getDatas();this.platformFormItems[4].selectProp.datas=i.length>0?null==i?void 0:i.map((e=>({value:e.Id,text:e.PlatformName}))):[],this.showEditPlatform.value=!0}};const c=(e,t)=>{const i=e.__vccOpts||e;for(const[o,s]of t)i[o]=s;return i},f={class:"nv-flex",style:{"justify-content":"space-between"}},g={style:{height:"550px","overflow-y":"auto"}},I={style:{height:"400px","overflow-y":"auto"}};const v=c(p,[["render",function(e,i,o,s,r,l){const a=t.resolveComponent("NvList"),n=t.resolveComponent("Icon"),d=t.resolveComponent("Space"),u=t.resolveComponent("Button"),h=t.resolveComponent("NvBox"),p=t.resolveComponent("NvGrid"),m=t.resolveComponent("NvComForm"),c=t.resolveComponent("Form"),v=t.resolveComponent("Modal"),w=t.resolveComponent("NvPage");return t.openBlock(),t.createBlock(w,{gutter:8,class:"platform nv-flex"},{default:t.withCtx((()=>[t.createVNode(h,{width:"200px",title:"平台目录","show-arrow":!0},{footer:t.withCtx((()=>[t.createElementVNode("div",f,[t.createVNode(d,null,{default:t.withCtx((()=>[t.createVNode(n,{type:"md-add",class:"nv-c-p",size:"25",onClick:e.handleGroupAdd},null,8,["onClick"])])),_:1}),t.createVNode(d,null,{default:t.withCtx((()=>[t.createVNode(u,{type:"text",onClick:e.doRefresh},{default:t.withCtx((()=>[t.createTextVNode("刷新")])),_:1},8,["onClick"])])),_:1})])])),default:t.withCtx((()=>[t.createVNode(a,{ref:"groupData",option:e.groupOption,onSelect:e.groupSelect},null,8,["option","onSelect"])])),_:1}),t.createVNode(h,{class:"nv-flex-1",title:"系统平台"},{default:t.withCtx((()=>[t.createVNode(p,{ref:"platformGrid",option:e.platformGridOption},null,8,["option"])])),_:1}),t.createVNode(v,{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(u,{type:"text",onClick:i[0]||(i[0]=t=>e.showEditPlatform=!1)},{default:t.withCtx((()=>[t.createTextVNode("关闭")])),_:1}),t.createVNode(u,{type:"primary",loading:e.saveingPlatform,onClick:e.doSavePlatform},{default:t.withCtx((()=>[t.createTextVNode("保存")])),_:1},8,["loading","onClick"])])),default:t.withCtx((()=>[t.createElementVNode("div",g,[t.createVNode(c,{ref:"refPlatformForm",model:e.platformFormModel,"label-width":120},{default:t.withCtx((()=>[t.createVNode(m,{formModel:e.platformFormModel,formItems:e.platformFormItems},null,8,["formModel","formItems"])])),_:1},8,["model"])])])),_:1},8,["modelValue","title"]),t.createVNode(v,{modelValue:e.showEditGroup,"onUpdate:modelValue":i[3]||(i[3]=t=>e.showEditGroup=t),draggable:"",mask:!0,"mask-closable":!1,width:500,title:e.editGroupformModalTitle,styles:{top:"3%"}},{footer:t.withCtx((()=>[t.createVNode(u,{type:"text",onClick:i[2]||(i[2]=t=>e.showEditGroup=!1)},{default:t.withCtx((()=>[t.createTextVNode("关闭")])),_:1}),t.createVNode(u,{type:"primary",loading:e.saveingGroupform,onClick:e.doSaveGroupform},{default:t.withCtx((()=>[t.createTextVNode("保存")])),_:1},8,["loading","onClick"])])),default:t.withCtx((()=>[t.createElementVNode("div",I,[t.createVNode(c,{ref:"refGroupForm",model:e.groupFormModel,"label-width":115},{default:t.withCtx((()=>[t.createVNode(m,{formModel:e.groupFormModel,formItems:e.groupFormItems},null,8,["formModel","formItems"])])),_:1},8,["model"])])])),_:1},8,["modelValue","title"])])),_:1})}],["__scopeId","data-v-f58b0adc"]]),w={linkParam:{type:String,default:""},operates:{type:String,default:"-"}},y=t.defineComponent({name:"Module",components:{SelectPlatform:r.SelectPlatform},emits:["change"],props:w,setup:(e,t)=>new C(e,t)});let C=class extends e.BaseInstance{constructor(e,r){super(),u(this,"props"),u(this,"ctx"),u(this,"platformApi",new i.PlatformApi),u(this,"moduleApi",new i.ModuleApi),u(this,"selectedPlatform"),u(this,"moduleWidth",t.ref("calc(100% - 300px)")),u(this,"webOrApp",t.ref(0)),u(this,"moduleGrid",t.ref()),u(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},{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(s.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(s.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(s.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=o.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)}}})),u(this,"doPlatformChange",(e=>{this.selectedPlatform=e,this.loadModuleGridData()})),u(this,"loadModuleGridData",(()=>{this.moduleGrid.value.loadDataByQuery(o.QueryWrapper.create().eq("PlatformId",this.selectedPlatform.Id).eq("WebOrApp",this.webOrApp.value).orderBy(["OrderNo"]))})),u(this,"doChangeModuleWidth",(e=>{this.moduleWidth.value=e?"calc(100% - 300px)":"calc(100% - 45px)"})),u(this,"parentModule"),u(this,"editModulePId",0),u(this,"editModuleChildData",[]),u(this,"saveingModule",t.ref(!1)),u(this,"moduleComForm",t.ref()),u(this,"showEditModule",t.ref(!1)),u(this,"editMoudelModalTitle",t.ref("新增 - 模块")),u(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:0,LastUpdateUserName:"",LastUpdateDate:""})),u(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: '编辑' }]"}}]}])),u(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 i=this.editModuleChildData;this.editModulePId>0&&(e=await this.moduleApi.getCount(o.QueryWrapper.create().eq("PId",this.editModulePId)),t=this.utilities.parseApiResult(e),i.push({Id:this.editModulePId,HasChild:t>0?1:0})),await this.moduleApi.saves(i)}this.message.success("保存成功!"),this.moduleGrid.value.refreshData(),this.saveingModule.value=!1,this.showEditModule.value=!1})),u(this,"showImportModule",t.ref(!1)),u(this,"saveingImportModule",t.ref(!1)),u(this,"originPlatform",t.reactive({list:[],selectedItem:{Id:0,PlatformName:""},selectedId:0})),u(this,"originModuleGrid",t.ref()),u(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(s.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(s.Tag,{color:i.color},(()=>i.text))}}],event:{event_search:e=>{const t=o.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)}}})),u(this,"targetPlatform",t.reactive({Id:0,PlatformName:""})),u(this,"targetModuleGrid",t.ref()),u(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(s.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(s.Tag,{color:i.color},(()=>i.text))}}],event:{event_search:e=>{const t=o.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)}}})),u(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()})),u(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=r}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){const t=this.storageInfo.getUser();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=t.Id,this.moduleFormModel.LastUpdateUserName=t.UserName,this.moduleFormModel.LastUpdateDate=this.utilities.getCurrentDate(),this.parentModule=void 0,this.editModulePId=e.PId,this.editModuleChildData=[],this.editMoudelModalTitle.value=`编辑 - 模块 - ${e.ModuleName}`,this.setParentModuleTreeItem(!0),this.showEditModule.value=!0}doAddModule(){const e=this.storageInfo.getUser();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=e.Id,this.moduleFormModel.LastUpdateUserName=e.UserName,this.moduleFormModel.LastUpdateDate=this.utilities.getCurrentDate(),this.parentModule=void 0,this.setParentModuleTreeItem(!1),this.editMoudelModalTitle.value="新增 - 模块",this.showEditModule.value=!0}doAddChildModule(e){const t=this.storageInfo.getUser();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=t.Id,this.moduleFormModel.LastUpdateUserName=t.UserName,this.moduleFormModel.LastUpdateDate=this.utilities.getCurrentDate(),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 i=await this.moduleApi.delete(e.Id),s=this.utilities.parseApiResult(i);s<=0?this.message.warning("删除失败,请稍后重试!"):(i=await this.moduleApi.getCount(o.QueryWrapper.create().eq("PId",t)),s=this.utilities.parseApiResult(i),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(o.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=o.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=o.QueryWrapper.create().eq("PlatformId",this.targetPlatform.Id).eq("WebOrApp",this.webOrApp.value).orderBy(["OrderNo"]),i=await this.moduleApi.getEntities(t),s=this.utilities.parseApiResult(i),r={Id:0,PId:-1,ModuleName:"根节点",ModuleType:"",PlatformId:this.targetPlatform.Id,IconUrl:""};s.push(r),e.success(s)}))}};const N={style:{height:"650px","overflow-y":"auto"}},M={class:"import-module",style:{height:"650px",position:"relative"}},x={style:{width:"100%",height:"100%"}},P={style:{width:"560px",height:"100%",float:"left"}},U={style:{height:"calc(100% - 0px)"}},A={style:{width:"calc(100% - 570px)",height:"100%","margin-left":"10px",display:"inline-block"}},T={style:{height:"calc(100% - 0px)"}},F=(e=>(t.pushScopeId("data-v-5a5ef504"),e=e(),t.popScopeId(),e))((()=>t.createElementVNode("div",{class:"primary-color gird-tip"},"点击选择要放置的位置!",-1)));const b=c(y,[["render",function(e,i,o,s,r,l){const a=t.resolveComponent("SelectPlatform"),n=t.resolveComponent("Radio"),d=t.resolveComponent("RadioGroup"),u=t.resolveComponent("NvGrid"),h=t.resolveComponent("NvComForm"),p=t.resolveComponent("Form"),m=t.resolveComponent("Button"),c=t.resolveComponent("Modal"),f=t.resolveComponent("Option"),g=t.resolveComponent("Select"),I=t.resolveComponent("Card"),v=t.resolveComponent("Spin"),w=t.resolveComponent("NvBox"),y=t.resolveComponent("NvPage");return t.openBlock(),t.createBlock(y,{gutter:8,class:"module"},{default:t.withCtx((()=>[t.createVNode(w,{width:"100%",title:"模块列表"},{default:t.withCtx((()=>[t.createVNode(u,{ref:"moduleGrid",option:e.moduleGridOption},{default:t.withCtx((()=>[t.createVNode(a,{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(n,{label:0},{default:t.withCtx((()=>[t.createTextVNode("Web")])),_:1}),t.createVNode(n,{label:1},{default:t.withCtx((()=>[t.createTextVNode("App")])),_:1})])),_:1},8,["modelValue","onOnChange"])])),_:1},8,["option"]),t.createVNode(c,{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(m,{type:"text",onClick:i[1]||(i[1]=t=>e.showEditModule=!1)},{default:t.withCtx((()=>[t.createTextVNode("关闭")])),_:1}),t.createVNode(m,{type:"primary",loading:e.saveingModule,onClick:e.doSaveModule},{default:t.withCtx((()=>[t.createTextVNode("保存")])),_:1},8,["loading","onClick"])])),default:t.withCtx((()=>[t.createElementVNode("div",N,[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(c,{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(m,{type:"text",onClick:i[4]||(i[4]=t=>e.showImportModule=!1)},{default:t.withCtx((()=>[t.createTextVNode("关闭")])),_:1}),t.createVNode(m,{type:"primary",loading:e.saveingImportModule,onClick:e.doImportOriginToTargetModule},{default:t.withCtx((()=>[t.createTextVNode("引入")])),_:1},8,["loading","onClick"])])),default:t.withCtx((()=>[t.createElementVNode("div",M,[t.createElementVNode("div",x,[t.createElementVNode("div",P,[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",U,[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",A,[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",T,[t.createVNode(u,{ref:"targetModuleGrid",option:e.targetModuleGridOption},{default:t.withCtx((()=>[F])),_: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"]]),S={linkParam:{type:String,default:""},operates:{type:String,default:"-"}},R=t.defineComponent({name:"Role",components:{SelectPlatform:r.SelectPlatform},emits:[""],props:S,setup:(e,t)=>new V(e,t)});let V=class extends e.BaseInstance{constructor(e,r){super(),u(this,"props"),u(this,"ctx"),u(this,"roleApi",new i.RoleApi),u(this,"moduleApi",new i.ModuleApi),u(this,"roleModuleApi",new i.RoleModuleApi),u(this,"platformApi",new i.PlatformApi),u(this,"institutionRoleApi",new i.InstitutionRoleApi),u(this,"selectedPlatform"),u(this,"roleWidth",t.ref("calc(100% - 300px)")),u(this,"roleGrid",t.ref()),u(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:15},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(s.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(s.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=o.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)}}})),u(this,"doPlatformListSelect",(e=>{this.selectedPlatform=e;const t=this.storageInfo.getUser();this.roleGrid.value.setGloablValue("PlatformId",this.selectedPlatform.Id),this.roleGrid.value.setGloablValue("LastUpdateUserId",t.Id),this.roleGrid.value.setGloablValue("LastUpdateUserName",t.UserName),this.roleGrid.value.setGloablValue("LastUpdateDate",(()=>this.utilities.getCurrentDate())),this.loadRoleGridData()})),u(this,"loadRoleGridData",(async()=>{const e=await this.institutionRoleApi.getEntities(o.QueryWrapper.create()),t=this.utilities.parseApiResult(e),i=[];for(let o of t)i.some((e=>e==o.RoleId))||i.push(o.RoleId);const s=o.QueryWrapper.create().eq("PlatformId",this.selectedPlatform.Id).orderBy(["OrderNo"]);i.length>0&&s.notIn("Id",i),this.roleGrid.value.loadDataByQuery(s)})),u(this,"doChangeRoleWidth",(e=>{this.roleWidth.value=e?"calc(100% - 300px)":"calc(100% - 45px)"})),u(this,"refRoleForm",t.ref()),u(this,"saveingRole",t.ref(!1)),u(this,"showEditRole",t.ref(!1)),u(this,"editRoleModalTitle",t.ref("新增 - 角色")),u(this,"roleFormModel",t.reactive({Id:0,PlatformId:0,RoleName:"",RoleCode:"",RoleDesc:"",RoleStatus:1,FrontEndVisible:0,DefaultUrl:"",WelcomeUrl:"",OrderNo:0,LastUpdateUserId:0,LastUpdateUserName:"",LastUpdateDate:""})),u(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}])),u(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})),u(this,"selectRole"),u(this,"saveRoleModuleing",t.ref(!1)),u(this,"showRoleModule",t.ref(!1)),u(this,"roleModuleTitle",t.ref("")),u(this,"moduleGrid",t.ref()),u(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},pageSize:15},searchOptions:[{field:"ModuleName",title:"模块名称",type:"Input"}],rightToolbars:[{name:"refresh"}],columns:[{colType:"seq"},{colType:"ro",width:50,align:"center",format:(e,t)=>e(s.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(s.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(s.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=[],r=e(s.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(s.Divider,{type:"vertical"}),a=[];for(const d of i)o.push(d.code),a.push(e(s.Checkbox,{label:d.code},(()=>d.name)));const n=e(s.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))}},(()=>a));return e(s.Space,(()=>[r,l,n]))}}],event:{event_search:e=>{this.loadModuleGridData(e)}}})),u(this,"loadModuleGridData",(e=>{this.moduleGrid.value.loadData((async t=>{const i=o.QueryWrapper.create().eq("PlatformId",this.selectedPlatform.Id).ne("ModuleStatus",0).orderBy(["OrderNo"]);this.utilities.isNull(e.ModuleName)||i.like("ModuleName",e.ModuleName);let s=await this.moduleApi.getEntities(i),r=this.utilities.parseApiResult(s);const l=o.QueryWrapper.create().eq("RoleId",this.selectRole.Id);s=await this.roleModuleApi.getEntities(l);let a=this.utilities.parseApiResult(s);for(const e of r){const t=a.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)}))})),u(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})),u(this,"showImportRole",t.ref(!1)),u(this,"saveingImportRole",t.ref(!1)),u(this,"originPlatform",t.reactive({list:[],selectedItem:{Id:0,PlatformAbbreviation:""},selectedId:0})),u(this,"originRoleGrid",t.ref()),u(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}]})),u(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()})),u(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=r,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){const t=this.storageInfo.getUser();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=t.Id,this.roleFormModel.LastUpdateUserName=t.UserName,this.roleFormModel.LastUpdateDate=this.utilities.getCurrentDate(),this.editRoleModalTitle.value=`编辑 - ${e.RoleName}`,this.showEditRole.value=!0}doAddRole(){const e=this.storageInfo.getUser();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=e.Id,this.roleFormModel.LastUpdateUserName=e.UserName,this.roleFormModel.LastUpdateDate=this.utilities.getCurrentDate(),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(o.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=o.QueryWrapper.create().eq("PlatformId",this.originPlatform.selectedId).eq("RoleStatus",1).orderBy(["OrderNo"]);this.originRoleGrid.value.loadDataByQuery(e)}};const k={style:{height:"650px","overflow-y":"auto",position:"relative"}},D={class:"import-role",style:{height:"610px",position:"relative"}},E={style:{width:"100%",height:"100%"}},G={style:{height:"530px","overflow-y":"auto"}};const O=c(R,[["render",function(e,i,o,s,r,l){const a=t.resolveComponent("SelectPlatform"),n=t.resolveComponent("NvGrid"),d=t.resolveComponent("NvBox"),u=t.resolveComponent("Button"),h=t.resolveComponent("Modal"),p=t.resolveComponent("Option"),m=t.resolveComponent("Select"),c=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(n,{ref:"roleGrid",option:e.roleGridOption},{default:t.withCtx((()=>[t.createVNode(a,{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",k,[t.createVNode(n,{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",D,[t.createElementVNode("div",E,[t.createVNode(n,{ref:"originRoleGrid",option:e.originRoleGridOption},{default:t.withCtx((()=>[t.createVNode(m,{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(c,{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",G,[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-0f25fe31"]]),L={linkParam:{type:String,default:""},operates:{type:String,default:"-"}},B=t.defineComponent({name:"InstitutionType",components:{},emits:[""],props:L,setup:(e,t)=>new _(e,t)});class _ extends e.BaseInstance{constructor(e,s){super(),u(this,"props"),u(this,"ctx"),u(this,"institutionTypeApi",new i.InstitutionTypeApi),u(this,"institutionTypeGrid",t.ref()),u(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=o.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)}}})),u(this,"refInstitutionTypeForm",t.ref()),u(this,"saveingInstitutionType",t.ref(!1)),u(this,"showEditInstitutionType",t.ref(!1)),u(this,"editInstitutionTypeModalTitle",t.ref("新增 - 机构类型")),u(this,"institutionTypeFormModel",t.reactive({Id:0,Code:"",Name:"",Summary:"",OrderNo:0})),u(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}])),u(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=s,this.useBusinessInstitutionType()}useBusinessInstitutionType(){t.onMounted((()=>{this.loadInstitutionTypes()})),t.onUnmounted((()=>{}))}loadInstitutionTypes(){this.institutionTypeGrid.value.loadDataByQuery(o.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 W={style:{height:"350px","overflow-y":"auto"}};const q=c(B,[["render",function(e,i,o,s,r,l){const a=t.resolveComponent("NvGrid"),n=t.resolveComponent("NvBox"),d=t.resolveComponent("NvComForm"),u=t.resolveComponent("Form"),h=t.resolveComponent("Button"),p=t.resolveComponent("Modal"),m=t.resolveComponent("NvPage");return t.openBlock(),t.createBlock(m,{gutter:8,class:"institutiontype"},{default:t.withCtx((()=>[t.createVNode(n,{title:"机构类型"},{default:t.withCtx((()=>[t.createVNode(a,{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",W,[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"]]),K={linkParam:{type:String,default:""},operates:{type:String,default:"-"}},Q=t.defineComponent({name:"Institution",components:{SelectPlatform:r.SelectPlatform},emits:[""],props:K,setup:(e,t)=>new Y(e,t)});let Y=class extends e.BaseInstance{constructor(e,o){super(),u(this,"props"),u(this,"ctx"),u(this,"institutionTypeApi",new i.InstitutionTypeApi),u(this,"institutioninforApi",new i.InstitutioninforApi),u(this,"institutionPlatformApi",new i.InstitutionPlatformApi),u(this,"platformApi",new i.PlatformApi),u(this,"institutionTreeApi",new i.InstitutionTreeApi),u(this,"roleApi",new i.RoleApi),u(this,"enterpriseApi",new i.EnterpriseApi),u(this,"selectedPlatform"),u(this,"institutionTypes",t.ref([])),u(this,"enterprises",[]),u(this,"institutionWidth",t.ref("calc(100% - 45px)")),u(this,"institutionGrid",t.ref()),u(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)}}})),u(this,"doPlatformListSelect",(async e=>{this.selectedPlatform=e,await this.loadEnterprises(),this.loadInstitutionGridData(this.selectedPlatform.Id,"","",""),this.loadInstitutionTree()})),u(this,"doWidthChange",(e=>{this.institutionWidth.value=e?"calc(100% - 350px)":"calc(100% - 45px)"})),u(this,"saveingInstitution",t.ref(!1)),u(this,"showEditInstitution",t.ref(!1)),u(this,"editInstitutionTitle",t.ref("新增 - 机构")),u(this,"institutionFormModel",t.reactive({Id:0,EnterpriseId:0,InstitutionPlatformId:0,InstitutionCode:"",InstitutionName:"",InstitutionAbbreviation:"",InstitutionTypeCode:"",OrderNo:1,LastUpdateUserId:0,LastUpdateUserName:"",LastUpdateDate:""})),u(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}])),u(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})),u(this,"showImportInstitution",t.ref(!1)),u(this,"saveingImportInstitution",t.ref(!1)),u(this,"originPlatform",t.reactive({list:[],selectedItem:{Id:0,PlatformName:""},selectedId:0})),u(this,"originInstitutionGrid",t.ref()),u(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)}}})),u(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,"","","")})),u(this,"doImportInstitution",(async()=>{const e=this.originInstitutionGrid.value.getCheckboxDatas();if(e.length<=0)return void this.message.warning("请选择源平台机构信息");this.saveingImportInstitution.value=!0;let t=[];const i=this.storageInfo.getUser();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:i.Id,LastUpdateUserName:i.UserName,LastUpdateDate:this.utilities.getCurrentDate()});const o=await this.institutionPlatformApi.saves(t),s=this.utilities.parseApiResult(o);this.saveingImportInstitution.value=!1,s?(this.showImportInstitution.value=!1,this.institutionGrid.value.refreshData(),this.message.success("导入成功")):this.message.warning("导入失败, 请稍后重试")})),u(this,"selectedInstitutionTree"),u(this,"insertRecords",[]),u(this,"institutionTree",t.ref([])),u(this,"saveingInstitutionTree",t.ref(!1)),u(this,"loadingInstitutionTree",t.ref(!1)),u(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(s.Icon,{type:"md-trash",style:{fontSize:"18px",color:"rgb(225, 76, 23)"},onClick:()=>{this.doDeleteNode(t,i,o)}})])]))),u(this,"doTreeSelectChange",(e=>{e.length>0?this.selectedInstitutionTree=e[0]:this.selectedInstitutionTree=void 0})),u(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)})),u(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("操作异常, 请稍后重试!")})),u(this,"selectInstitution"),u(this,"showBindRole",t.ref(!1)),u(this,"saveingBindRole",t.ref(!1)),u(this,"roleGrid",t.ref()),u(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(s.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"}]})),u(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=o,this.useBusinessInstitutionType(),this.useBusinessInstitution()}useBusinessInstitutionType(){t.onMounted((()=>{})),t.onUnmounted((()=>{})),this.getInstitutionTypes()}async getInstitutionTypes(){const e=await this.institutionTypeApi.getEntities(o.QueryWrapper.create().eq("1",1).orderBy(["OrderNo"]));this.institutionTypes.value=this.utilities.parseApiResult(e),this.setInstitutionTypeCodeDatas()}async loadEnterprises(){const e=await this.enterpriseApi.getEntities(o.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),i=this.utilities.parseApiResult(t);i<=0?this.message.error("操作失败, 请稍后重试!"):(t=await this.institutionPlatformApi.getCount(o.QueryWrapper.create().eq("InstitutionId",e.Id)),i=this.utilities.parseApiResult(t),0==i&&(t=await this.institutioninforApi.delete(e.Id),i=this.utilities.parseApiResult(t)),t=await this.institutionTreeApi.deleteInstitutionTreeByInstitutionIdAndPlatformId(e.Id,this.selectedPlatform.Id),i=this.utilities.parseApiResult(t),this.message.success("操作成功"),this.institutionGrid.value.refreshData(),i>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){const t=this.storageInfo.getUser();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=t.Id,this.institutionFormModel.LastUpdateUserName=t.UserName,this.institutionFormModel.LastUpdateDate=this.utilities.getCurrentDate(),this.editInstitutionTitle.value="编辑 - "+e.InstitutionName,this.showEditInstitution.value=!0}doAddInstitution(){const e=this.storageInfo.getUser();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=e.Id,this.institutionFormModel.LastUpdateUserName=e.UserName,this.institutionFormModel.LastUpdateDate=this.utilities.getCurrentDate(),this.editInstitutionTitle.value="新增 - 机构",this.showEditInstitution.value=!0}doShowImportInstitution(){this.showImportInstitution.value=!0,this.loadOriginPlatforms()}async loadOriginPlatforms(){const e=await this.platformApi.getEntities(o.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=o.QueryWrapper.create().eq("PlatformId",this.selectedPlatform.Id).eq("RoleStatus",1).orderBy(["OrderNo"]),i=await this.roleApi.getEntities(t),s=this.utilities.parseApiResult(i),r=this.selectInstitution.RoleIds,l=this.utilities.isNull(r)?[]:r.split(",");for(const o of s)o.IsChk=-1!=l.findIndex((e=>e==o.Id));e.success(s)}))}};const H={style:{width:"100%",height:"100%",position:"relative"}},z={style:{height:"500px","overflow-y":"auto"}},Z={class:"import-institution",style:{height:"600px","overflow-y":"auto",position:"relative"}},$={style:{width:"100%",height:"100%"}},j={style:{height:"calc(100%)"}},J={style:{height:"610px","overflow-y":"auto",position:"relative"}};const X=c(Q,[["render",function(e,i,o,s,r,l){const a=t.resolveComponent("SelectPlatform"),n=t.resolveComponent("NvGrid"),d=t.resolveComponent("NvBox"),u=t.resolveComponent("Tree"),h=t.resolveComponent("Spin"),p=t.resolveComponent("Button"),m=t.resolveComponent("Space"),c=t.resolveComponent("NvComForm"),f=t.resolveComponent("Form"),g=t.resolveComponent("Modal"),I=t.resolveComponent("Option"),v=t.resolveComponent("Select"),w=t.resolveComponent("NvPage");return t.openBlock(),t.createBlock(w,{gutter:8,class:"institution"},{default:t.withCtx((()=>[t.createVNode(d,{width:e.institutionWidth,title:"机构列表"},{default:t.withCtx((()=>[t.createVNode(n,{ref:"institutionGrid",option:e.institutionGridOption},{default:t.withCtx((()=>[t.createVNode(a,{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(m,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",H,[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",z,[t.createVNode(f,{model:e.institutionFormModel,"label-width":90},{default:t.withCtx((()=>[t.createVNode(c,{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",Z,[t.createElementVNode("div",$,[t.createElementVNode("div",j,[t.createVNode(n,{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",J,[t.createVNode(n,{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"]]),ee=t.defineComponent({name:"LoginLog",components:{},emits:[""],props:{},setup:(e,t)=>new te(e,t)});let te=class extends e.BaseInstance{constructor(e,s){super(),u(this,"props"),u(this,"ctx"),u(this,"loginLogApi",new i.LoginLogApi),u(this,"platformId",0),u(this,"userId",0),u(this,"loginLogGrid",t.ref()),u(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)}}})),u(this,"loadLoginLog",((e,t,i={})=>{this.platformId=e,this.userId=t;const s=o.QueryWrapper.create();s.eq("PlatformId",this.platformId).eq("UserId",this.userId).orderBy(["Id"],!1),this.utilities.isNull(i.IPAddress)||s.like("IPAddress",i.IPAddress);const r=this.utilities.dateHelper.format(i.LoginDate,"YYYY-MM-DD");this.utilities.isNull(i.LoginDate)||s.between("LoginDate",`${r} 00:00:00`,`${r} 23:59:59`),this.loginLogGrid.value.loadDataByQuery(s)})),this.props=e,this.ctx=s}};const ie={class:"loginLog"};const oe=c(ee,[["render",function(e,i,o,s,r,l){const a=t.resolveComponent("NvGrid");return t.openBlock(),t.createElementBlock("div",ie,[t.createVNode(a,{ref:"loginLogGrid",option:e.loginLogGridOption},null,8,["option"])])}],["__scopeId","data-v-4e2e0184"]]),se={linkParam:{type:String,default:""},operates:{type:String,default:"-"}},re=t.defineComponent({name:"Userinfor",components:{SelectPlatform:r.SelectPlatform,LoginLog:oe,BaseLogin:r.BaseLogin},emits:[""],props:se,setup:(e,t)=>new le(e,t)});let le=class extends e.BaseInstance{constructor(e,r){super(),u(this,"props"),u(this,"ctx"),u(this,"platformApi",new i.PlatformApi),u(this,"institutionTreeApi",new i.InstitutionTreeApi),u(this,"userinforApi",new i.UserinforApi),u(this,"institutionUserApi",new i.InstitutionUserApi),u(this,"userRoleApi",new i.UserRoleApi),u(this,"institutionPlatformApi",new i.InstitutionPlatformApi),u(this,"roleApi",new i.RoleApi),u(this,"oauthApi",new i.OAuthApi),u(this,"userSignApi",new i.UserSignApi),u(this,"signTaskInfoApi",new l.SignTaskInfoApi),u(this,"selectedPlatform"),u(this,"selectedInsTree"),u(this,"institutionTree",t.ref([])),u(this,"loadingInstitutionTree",t.ref(!1)),u(this,"doChangePlatform",(e=>{this.selectedPlatform=e,this.loadInsTree()})),u(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,"[未知节点]"))])]))),u(this,"doChangeInsTree",(e=>{e.length>0&&(this.selectedInsTree=e[0],this.loadInstitutionTreeUsers({}))})),u(this,"doRefreshInsTree",(()=>{this.loadInsTree()})),u(this,"userBoxWidth",t.ref("calc(100% - 300px)")),u(this,"insTreeUserGrid",t.ref()),u(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(s.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:"resize",text:"重置",onclick:(e,t)=>{this.doResetUserPwd(e.Id)}}]}],event:{event_search:e=>{this.insTreeUserGrid.value.setPageIndex(1),this.loadInstitutionTreeUsers(e)}}})),u(this,"doChangeUserBoxWidth",(e=>{this.userBoxWidth.value=e?"calc(100% - 300px)":"calc(100% - 45px)"})),u(this,"showEditUser",t.ref(!1)),u(this,"saveingUser",t.ref(!1)),u(this,"editUserTitle",t.ref("新增 - 用户")),u(this,"userForm",t.ref()),u(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:0,LastUpdateUserName:"",LastUpdateDate:""})),u(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"}]}])),u(this,"userFormRule",t.reactive({UserName:[{required:!0,message:"姓名不能为空",trigger:"blur"}],Account:[{required:!0,message:"姓名不能为空",trigger:"blur"}]})),u(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=o.QueryWrapper.create();t.eq("Phone",this.userFormModel.Phone).eq("IsDel",0),this.userFormModel.Id>0&&t.ne("Id",this.userFormModel.Id);const i=await this.userinforApi.isExist(t);if(e=this.utilities.parseApiResult(i),e)return this.message.warning(`手机号 ${this.userFormModel.Phone} 已关联其他账号, 请重新输入!`),void(this.saveingUser.value=!1)}const t=o.QueryWrapper.create();t.eq("Account",this.userFormModel.Account).eq("IsDel",0),this.userFormModel.Id>0&&t.ne("Id",this.userFormModel.Id);let i=await this.userinforApi.isExist(t);if(e=this.utilities.parseApiResult(i),e)return this.message.warning(`账号 ${this.userFormModel.Account} 已存在, 请重新输入!`),void(this.saveingUser.value=!1);i=await this.userinforApi.save(this.userFormModel),e=this.utilities.parseApiResult(i),0==this.userFormModel.Id&&(await this.institutionUserApi.save({InstitutionId:this.selectedInsTree.InstitutionId,UserId:e,InsTreeId:this.selectedInsTree.Id}),await this.userinforApi.initialUserPwd(e,this.selectedPlatform.Id)),this.saveingUser.value=!1,e>0?(this.message.success("保存成功"),this.insTreeUserGrid.value.refreshData(),this.showEditUser.value=!1):this.message.error(i.msg)})),u(this,"currentUser"),u(this,"showUserRole",t.ref(!1)),u(this,"saveingUserRole",t.ref(!1)),u(this,"userRoleGrid",t.ref()),u(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(s.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"}]})),u(this,"doSaveUserRole",(async()=>{const e=this.userRoleGrid.value.getDatas().filter((e=>1==e.IsChk));this.saveingUserRole.value=!0;let t=await this.userRoleApi.getEntities(o.QueryWrapper.create().eq("UserId",this.currentUser.Id).eq("PlatformId",this.selectedPlatform.Id)),i=this.utilities.parseApiResult(t),s=[];for(const o of e)-1==i.findIndex((e=>e.RoleId==o.Id))&&s.push({PlatformId:this.selectedPlatform.Id,UserId:this.currentUser.Id,RoleId:o.Id});let r=[];for(const o of i)-1==e.findIndex((e=>e.Id==o.RoleId))&&r.push(o.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("保存失败, 请稍后重试!")})),u(this,"showImportUser",t.ref(!1)),u(this,"saveingImportUser",t.ref(!1)),u(this,"otherUserGrid",t.ref()),u(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(s.Tag,{color:i.color},(()=>i.text))}}],event:{event_search:e=>{this.loadImportUserGrid(e)}}})),u(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("导入失败, 请稍后重试!")})),u(this,"showLoginLog",t.ref(!1)),u(this,"loginLogRef",t.ref()),u(this,"doShowLoginLog",(e=>{this.showLoginLog.value=!0,this.loginLogRef.value.loadLoginLog(this.selectedPlatform.Id,e.Id)})),u(this,"loginRef",t.ref()),u(this,"logining",t.ref(!1)),u(this,"showEditUserSign",t.ref(!1)),u(this,"saveingUserSign",t.ref(!1)),u(this,"userSignForm",t.ref()),u(this,"userSignFormModel",t.reactive({Id:0,UserId:0,CAUserInfoKey:"",CAUserSealKey:"",CAUserYZKey:"",CAUserSealImg:"",CAUserYZImg:""})),u(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}])),u(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("保存失败,请稍后重试")})),u(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("读取失败,请稍后重试")})),u(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=r}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){const t=this.storageInfo.getUser();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=t.Id,this.userFormModel.LastUpdateUserName=t.UserName,this.userFormModel.LastUpdateDate=this.utilities.getCurrentDate(),this.editUserTitle.value="编辑用户 - "+e.UserName,this.showEditUser.value=!0}doAddUser(){const e=this.storageInfo.getUser();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 t=this.utilities.getCurrentDate();t=this.utilities.dateHelper.format(this.utilities.dateHelper.add(this.utilities.stringHelper.toDate(t),1,"years"),"YYYY-MM-DD"),this.userFormModel.ExpiredDate=t,this.userFormModel.IsMutex=0,this.userFormModel.PwdAuthentication=0,this.userFormModel.LastUpdateUserId=e.Id,this.userFormModel.LastUpdateUserName=e.UserName,this.userFormModel.LastUpdateDate=this.utilities.getCurrentDate(),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(o.QueryWrapper.create().eq("UserId",this.currentUser.Id).eq("PlatformId",this.selectedPlatform.Id)),i=this.utilities.parseApiResult(t);t=await this.institutionPlatformApi.getEntityByFilter(o.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(o.QueryWrapper.create().in("Id",s.RoleIds.split(",")));let r=this.utilities.parseApiResult(t);for(const o of r){const e=!this.utilities.isNull(i)&&i.findIndex((e=>e.RoleId==o.Id))>=0;o.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(o.QueryWrapper.create().eq("UserId",e.Id)),i=this.utilities.parseApiResult(t);this.utilities.isNull(i)?(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=i.Id,this.userSignFormModel.UserId=i.UserId,this.userSignFormModel.CAUserInfoKey=i.CAUserInfoKey,this.userSignFormModel.CAUserSealKey=i.CAUserSealKey,this.userSignFormModel.CAUserYZKey=i.CAUserYZKey,this.userSignFormModel.CAUserSealImg=i.CAUserSealImg,this.userSignFormModel.CAUserYZImg=i.CAUserYZImg)}doResetUserPwd(e){this.modal.confirm({title:"提示",content:"确定要重置为初始密码吗?",onOk:async()=>{const t=await this.userinforApi.resetUserPwd(e);this.utilities.parseApiResult(t)>0?this.message.success("重置成功"):this.message.error("操作失败,请稍后重试")}})}};const ae=e=>(t.pushScopeId("data-v-3969fae6"),e=e(),t.popScopeId(),e),ne={class:"instree-search"},de={class:"instree-list"},ue={style:{height:"600px","overflow-y":"auto"}},he=ae((()=>t.createElementVNode("div",{style:{"margin-left":"16px",color:"#ff9900"}},[t.createElementVNode("div",{style:{"padding-bottom":"8px"}},"用户账号:手机号必填。在新设备登录时,需进行短信验证。"),t.createElementVNode("div",null,"内部账号:手机号可不填。")],-1))),pe={style:{height:"600px","overflow-y":"auto"}},me=ae((()=>t.createElementVNode("div",{class:"primary-color gird-tip"},"勾选绑定用户角色!",-1))),ce={style:{height:"650px","overflow-y":"auto"}},fe=ae((()=>t.createElementVNode("div",{class:"primary-color gird-tip"},"勾选需要引入的用户!",-1))),ge={style:{height:"650px","overflow-y":"auto"}},Ie={style:{display:"none"}},ve={style:{height:"400px","overflow-y":"auto"}},we=["src"],ye=["src"];const Ce=c(re,[["render",function(e,i,o,s,r,l){const a=t.resolveComponent("SelectPlatform"),n=t.resolveComponent("Tree"),d=t.resolveComponent("Spin"),u=t.resolveComponent("Button"),h=t.resolveComponent("Space"),p=t.resolveComponent("NvBox"),m=t.resolveComponent("NvGrid"),c=t.resolveComponent("NvComForm"),f=t.resolveComponent("Form"),g=t.resolveComponent("Modal"),I=t.resolveComponent("LoginLog"),v=t.resolveComponent("BaseLogin"),w=t.resolveComponent("FormItem"),y=t.resolveComponent("NvPage");return t.openBlock(),t.createBlock(y,{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",ne,[t.createVNode(a,{onSelect:e.doChangePlatform,width:"100%",showLabel:!1},null,8,["onSelect"])]),t.createElementVNode("div",de,[t.createVNode(n,{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(m,{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",ue,[t.createVNode(f,{ref:"userForm",model:e.userFormModel,"label-width":120,rules:e.userFormRule},{default:t.withCtx((()=>[t.createVNode(c,{ref:"userComForm",formModel:e.userFormModel,formItems:e.userFormItems},null,8,["formModel","formItems"])])),_:1},8,["model","rules"]),he])])),_: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",pe,[t.createVNode(m,{ref:"userRoleGrid",option:e.userRoleGridOption},{default:t.withCtx((()=>[me])),_: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",ce,[t.createVNode(m,{ref:"otherUserGrid",option:e.otherUserGridOption},{default:t.withCtx((()=>[fe])),_: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",ge,[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",Ie,[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",ve,[t.createVNode(f,{ref:"userSignForm",model:e.userSignFormModel,"label-width":85},{default:t.withCtx((()=>[t.createVNode(c,{ref:"userSignComForm",formModel:e.userSignFormModel,formItems:e.userSignFormItems},null,8,["formModel","formItems"]),t.createVNode(w,{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,we)):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(w,{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,ye)):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"]]),Ne={linkParam:{type:String,default:""},operates:{type:String,default:"-"}},Me=t.defineComponent({name:"Enterprise",components:{SelectPlatform:r.SelectPlatform},emits:[""],props:Ne,setup:(e,t)=>new xe(e,t)});let xe=class extends e.BaseInstance{constructor(e,o){super(),u(this,"props"),u(this,"ctx"),u(this,"platformApi",new i.PlatformApi),u(this,"enterpriseApi",new i.EnterpriseApi),u(this,"provinceApi",new a.ProvinceApi),u(this,"cityApi",new a.CityApi),u(this,"areaApi",new a.AreaApi),u(this,"selectedPlatform"),u(this,"provinces",[]),u(this,"cities",[]),u(this,"areas",[]),u(this,"refSelectPlatform",t.ref()),u(this,"onlyView",t.ref(!1)),u(this,"enterpriseGrid",t.ref()),u(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)}}})),u(this,"doPlatformChange",(e=>{this.selectedPlatform=e,this.loadEnterpriseGridData({})})),u(this,"saveingEnterprise",t.ref(!1)),u(this,"showEditEnterprise",t.ref(!1)),u(this,"editEnterpriseTitle",t.ref("新增 - 企业")),u(this,"enterpriseFormModel",t.reactive({Id:0,PlatformId:0,EnterpriseName:"",EnterpriseCode:"",LegalPerson:"",RegisteredCapital:0,Province:"",City:"",Area:"",Address:"",Contact:"",TelPhone:"",LastUpdateUserId:0,LastUpdateUserName:"",LastUpdateTime:"",PostalCode:"",Fax:"",Email:""})),u(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:"请输入联系电话"}},{model:"PostalCode",label:"邮政编码",type:"Input",span:12,inputProp:{placeholder:"请输入邮政编码"}},{model:"Email",label:"Email",type:"Input",span:12,inputProp:{placeholder:"请输入Email地址"}},{model:"Fax",label:"传真",type:"Input",span:12,inputProp:{placeholder:"请输入传真"}}]}])),u(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=o,this.useArea()}async useArea(){let e=await this.provinceApi.getEntities(o.QueryWrapper.create().eq("1","1"));this.provinces=this.utilities.parseApiResult(e),e=await this.cityApi.getEntities(o.QueryWrapper.create().eq("1","1")),this.cities=this.utilities.parseApiResult(e),e=await this.areaApi.getEntities(o.QueryWrapper.create().eq("1","1")),this.areas=this.utilities.parseApiResult(e),this.setProvinceDatas(),this.refSelectPlatform.value.loadPlatforms()}loadEnterpriseGridData(e){const t=o.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(){const e=this.storageInfo.getUser();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.PostalCode="",this.enterpriseFormModel.Fax="",this.enterpriseFormModel.Email="",this.enterpriseFormModel.LastUpdateUserId=e.Id,this.enterpriseFormModel.LastUpdateUserName=e.UserName,this.enterpriseFormModel.LastUpdateTime=this.utilities.getCurrentDate(),this.setCityDatas(""),this.setAreaDatas(""),this.editEnterpriseTitle.value="新增 - 企业",this.showEditEnterprise.value=!0}doEditEnterprise(e){const t=this.storageInfo.getUser();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.PostalCode=e.PostalCode,this.enterpriseFormModel.Fax=e.Fax,this.enterpriseFormModel.Email=e.Email,this.enterpriseFormModel.LastUpdateUserId=t.Id,this.enterpriseFormModel.LastUpdateUserName=t.UserName,this.enterpriseFormModel.LastUpdateTime=this.utilities.getCurrentDate(),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 Pe={style:{height:"650px","overflow-y":"auto"}};const Ue=c(Me,[["render",function(e,i,o,s,r,l){const a=t.resolveComponent("SelectPlatform"),n=t.resolveComponent("NvGrid"),d=t.resolveComponent("NvBox"),u=t.resolveComponent("NvComForm"),h=t.resolveComponent("Form"),p=t.resolveComponent("Button"),m=t.resolveComponent("Modal"),c=t.resolveComponent("NvPage");return t.openBlock(),t.createBlock(c,{gutter:8,class:""},{default:t.withCtx((()=>[t.createVNode(d,{width:"100%",title:"企业列表"},{default:t.withCtx((()=>[t.createVNode(n,{ref:"enterpriseGrid",option:e.enterpriseGridOption},{default:t.withCtx((()=>[t.createVNode(a,{ref:"refSelectPlatform",onSelect:e.doPlatformChange,defaultLoad:!1},null,8,["onSelect"])])),_:1},8,["option"])])),_:1}),t.createVNode(m,{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",Pe,[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-58aa3e77"]]);class Ae extends o.BaseApi{get ProxyName(){return"CalcPythonApi"}constructor(){super(),this.addHeader("projectid",0),this.addHeader("devprod","dev"),this.addHeader("dbSkey","08fb72ad2cf661088849ef17fdaab21a")}}class Te extends Ae{get ControllerName(){return"currency"}constructor(){super(),this.addHeader("tableName","core_partner")}}class Fe extends Ae{get ControllerName(){return"currency"}constructor(){super(),this.addHeader("tableName","core_platform_config")}}const be={linkParam:{type:String,default:""},operates:{type:String,default:"-"}},Se=t.defineComponent({name:"Information",components:{NvComFormUp:n.NvComFormUp},emits:[""],props:be,setup:(e,t)=>new Re(e,t)});class Re extends e.BaseInstance{constructor(e,i){super(),u(this,"props"),u(this,"ctx"),u(this,"corePartnerApi",new Te),u(this,"roleWidth",t.ref("calc(100% - 300px)")),u(this,"roleGrid",t.ref()),u(this,"roleGridOption",t.reactive({api:this.corePartnerApi,setting:{border:!0,searchConfig:{btnSpan:6,labelWidth:130,defaultShowSearch:!1},toolbarConfig:{isButtonGroup:!1},rowConfig:{isHover:!0},isPagination:!0,pageSize:10},searchOptions:[{field:"UnitName",title:"第三方单位名称",type:"Input"}],toolbars:[{name:"add",text:"新增",onclick:()=>{this.doAddRole()}}],rightToolbars:[{name:"refresh"}],columns:[{colType:"seq"},{colType:"ed",field:"UnitName",title:"第三方单位名称",align:"left",minWidth:250},{colType:"ed",field:"Contact",title:"联系人",width:200,align:"center"},{colType:"ed",field:"ContactPhone",title:"联系电话",width:200,align:"center"},{colType:"select",field:"IsAuthorize",title:"授权状态",width:140,align:"center",defaultValue:1,select:{data:[{text:"是",value:1},{text:"否",value:2}]},format:(e,t)=>{const i={1:{text:"是",color:"green"},2:{text:"否",color:"red"}}[t.row.IsAuthorize];return e(s.Tag,{color:i.color},(()=>i.text))}},{colType:"select",field:"BusinessType",title:"业务类型",width:140,align:"center",defaultValue:1,select:{data:[{text:"接收",value:1},{text:"推送",value:2}]},format:(e,t)=>{const i={1:{text:"接收",color:"green"},2:{text:"推送",color:"blue"}}[t.row.BusinessType];return e(s.Tag,{color:null==i?void 0:i.color},(()=>null==i?void 0:i.text))}},{colType:"ed",field:"CreateUserName",title:"创建人名称",width:200,align:"center"},{title:"操作",width:200,rowButtons:[{name:"view",text:"开启",isShow:e=>2===e.IsAuthorize,onclick:(e,t)=>{e.IsAuthorize=1,this.doSaveRole2(e)}},{name:"view",text:"禁用",isShow:e=>1===e.IsAuthorize,onclick:(e,t)=>{e.IsAuthorize=2,this.doSaveRole2(e)}},{name:"edit",text:"编辑",onclick:(e,t)=>{this.doEditRole(e)}},{name:"delete",text:"删除",onclick:(e,t)=>{this.doDeleteRole(e)}}]}],event:{event_search:e=>{this.roleGrid.value.setPageIndex(1);const t=o.QueryWrapper.create().orderBy(["CreateDate"]);this.utilities.isNull(e.UnitName)||t.like("UnitName",e.UnitName),this.roleGrid.value.loadDataByQuery(t)}}})),u(this,"refRoleForm",t.ref()),u(this,"saveingRole",t.ref(!1)),u(this,"showEditRole",t.ref(!1)),u(this,"editRoleModalTitle",t.ref("新增 - 第三方信息")),u(this,"roleFormModel",t.reactive({Id:0,UnitName:"",Contact:"",ContactPhone:"",UniqueKey:"",IsAuthorize:2,BusinessType:1,CreateDate:"",CreateUserId:0,CreateUserName:"",Token:""})),u(this,"roleFormItems",t.reactive([{label:"第三方单位名称","label-width":130,model:"UnitName",prop:"UnitName",type:"Input",span:24,rules:[{required:!0,message:"第三方单位名称不能为空",trigger:"blur"}]},{label:"联系人","label-width":130,model:"Contact",prop:"Contact",type:"Input",span:12},{label:"联系电话","label-width":130,model:"ContactPhone",prop:"ContactPhone",type:"Input",span:12},{model:"BusinessType","label-width":130,label:"业务类型",prop:"BusinessType",type:"Radio",span:12,radioProp:{datas:[{text:"接收",value:1},{text:"推送",value:2}],type:"button"}},{label:"唯一标识","label-width":130,model:"UniqueKey",prop:"UniqueKey",type:"Input",span:24,isShow:!1,inputProp:{disabled:!0}},{label:"附件","label-width":130,model:"Token",prop:"Token",type:"UploadFile",span:24}])),u(this,"doSaveRole",(async()=>{if(!(await this.refRoleForm.value.validate()))return;this.saveingRole.value=!0;let e=await this.corePartnerApi.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})),u(this,"doSaveRole2",(async e=>{let t=await this.corePartnerApi.save(e);this.utilities.parseApiResult(t)<=0?this.message.warning("变更失败,请稍后重试!"):(this.message.success("变更成功!"),this.roleGrid.value.refreshData())})),this.props=e,this.ctx=i,this.useBusinessRole()}useBusinessRole(){t.onMounted((()=>{this.loadMainData()})),t.onUnmounted((()=>{}))}doDeleteRole(e){this.modal.confirm({title:"提示",content:`确定要删除${e.UnitName}吗`,onOk:async()=>{const t=await this.corePartnerApi.delete(e.Id);this.utilities.parseApiResult(t)?(this.message.success("删除成功!"),this.roleGrid.value.refreshData()):this.message.warning("操作异常, 请稍后重试!")}})}async loadMainData(){const e=o.QueryWrapper.create().orderBy(["CreateDate"]);this.roleGrid.value.loadDataByQuery(e)}doEditRole(e){this.storageInfo.getUser(),this.roleFormModel.Id=e.Id,this.roleFormModel.UnitName=e.UnitName,this.roleFormModel.Contact=e.Contact,this.roleFormModel.ContactPhone=e.ContactPhone,this.roleFormModel.UniqueKey=e.UniqueKey,this.roleFormModel.IsAuthorize=e.IsAuthorize,this.roleFormModel.BusinessType=e.BusinessType,this.roleFormModel.CreateDate=e.CreateDate,this.roleFormModel.CreateUserId=e.CreateUserId,this.roleFormModel.CreateUserName=e.CreateUserName,this.roleFormModel.Token=e.Token,this.roleFormItems[4].isShow=!0,this.editRoleModalTitle.value=`编辑 - ${e.UnitName}`,this.showEditRole.value=!0}doAddRole(){const e=this.storageInfo.getUser();this.roleFormModel.Id=0,this.roleFormModel.UnitName="",this.roleFormModel.Contact="",this.roleFormModel.ContactPhone="",this.roleFormModel.UniqueKey=this.utilities.getUniqueCode(),this.roleFormModel.IsAuthorize=2,this.roleFormModel.BusinessType=1,this.roleFormModel.CreateDate=this.utilities.getCurrentDate(),this.roleFormModel.CreateUserId=e.Id,this.roleFormModel.CreateUserName=e.UserName,this.roleFormModel.Token=this.utilities.getUniqueCode(),this.roleFormItems[4].isShow=!1,this.editRoleModalTitle.value="新增 - 第三方信息",this.showEditRole.value=!0}}const Ve={style:{"overflow-y":"auto"}};const ke=c(Se,[["render",function(e,i,o,s,r,l){const a=t.resolveComponent("NvGrid"),n=t.resolveComponent("NvBox"),d=t.resolveComponent("NvComFormUp"),u=t.resolveComponent("Form"),h=t.resolveComponent("Button"),p=t.resolveComponent("Modal"),m=t.resolveComponent("NvPage");return t.openBlock(),t.createBlock(m,{gutter:8,class:"information"},{default:t.withCtx((()=>[t.createVNode(n,{width:"100%",title:"第三方信息"},{default:t.withCtx((()=>[t.createVNode(a,{ref:"roleGrid",option:e.roleGridOption},null,8,["option"])])),_:1}),t.createVNode(p,{modelValue:e.showEditRole,"onUpdate:modelValue":i[1]||(i[1]=t=>e.showEditRole=t),draggable:"",mask:!0,"mask-closable":!1,width:620,title:e.editRoleModalTitle,styles:{top:"3%"}},{footer:t.withCtx((()=>[t.createVNode(h,{type:"text",onClick:i[0]||(i[0]=t=>e.showEditRole=!1)},{default:t.withCtx((()=>[t.createTextVNode("关闭")])),_:1}),t.createVNode(h,{type:"primary",loading:e.saveingRole,onClick:e.doSaveRole},{default:t.withCtx((()=>[t.createTextVNode("保存")])),_:1},8,["loading","onClick"])])),default:t.withCtx((()=>[t.createElementVNode("div",Ve,[t.createVNode(u,{ref:"refRoleForm",model:e.roleFormModel,"label-width":90},{default:t.withCtx((()=>[t.createVNode(d,{formModel:e.roleFormModel,formItems:e.roleFormItems},null,8,["formModel","formItems"])])),_:1},8,["model"])])])),_:1},8,["modelValue","title"])])),_:1})}]]),De={linkParam:{type:String,default:""},operates:{type:String,default:"-"},platformInfo:{type:Object,default:{}},configType:{type:String,default:"BD"}},Ee=t.defineComponent({name:"GeneralConfiguration",components:{},emits:[""],props:De,setup:(e,t)=>new Ge(e,t)});class Ge extends e.BaseInstance{constructor(e,o){super(),u(this,"props"),u(this,"ctx"),u(this,"platformApi",new i.PlatformApi),u(this,"dictionaryDetailApi",new a.DictionaryDetailApi),u(this,"dictionaryTypeApi",new a.DictionaryTypeApi),u(this,"corePlatformConfigApi",new Fe),u(this,"nowRow",t.reactive({Id:0,PlatformId:0,ProjectConfig:"[]",ConstructConfig:"[]",LastUpdateUserId:this.storageInfo.getUser().Id,LastUpdateUserName:this.storageInfo.getUser().UserName,LastUpdateDate:this.utilities.getCurrentDate()})),u(this,"generalConfGrid",t.ref()),u(this,"generalConfGridOption",t.reactive({api:this.platformApi,setting:{searchConfig:{btnSpan:6,labelWidth:120,defaultShowSearch:!1},toolbarConfig:{isButtonGroup:!1},rowConfig:{isCurrent:!1,isHover:!0},editConfig:{trigger:"click",mode:"row",showStatus:!0},isPagination:!1,pageSize:10},searchOptions:[],toolbars:[{name:"add",onclick:()=>{this.doAddFormData()}},{name:"save",onclick:()=>{this.saveFormData()}},{name:"delete",text:"删除",onclick:()=>{this.deleteFormData()}}],rightToolbars:[{name:"refresh"}],columns:[{colType:"seq"},{colType:"checkbox"},{colType:"ro",field:"label",title:"标签文本",align:"left",minWidth:250},{colType:"ro",field:"prop",title:"属性字段",align:"left",minWidth:250},{colType:"ro",field:"model",title:"表单字段",align:"left",minWidth:250},{colType:"select",field:"seltype",title:"类型",minWidth:240,align:"center",select:{data:[{value:"Input",text:"文字输入框"},{value:"InputNumber",text:"数字输入框"},{value:"Textarea",text:"多行文本"},{value:"TextEditor",text:"富文本"},{value:"DatePicker",text:"日期选择"},{value:"TimePicker",text:"时间选择"},{value:"UploadFile",text:"附件"},{value:"region",text:"地区选择"}]},change:e=>{switch(e.seltype){case"Input":e.type="Input";break;case"InputNumber":e.type="InputNumber",e.rules=[{required:!0,type:"number",message:e.message,trigger:"blur"}];break;case"Textarea":e.type="Input",e.inputProp={type:"textarea",rows:4};break;case"DatePicker":e.type="DatePicker",e.rules=[{required:!0,type:"date",message:e.message,trigger:"change"}];break;case"TimePicker":e.type="TimePicker",e.rules=[{required:!0,type:"date",message:e.message,trigger:"change"}];break;case"UploadFile":e.type="UploadFile";break;case"TextEditor":e.type="TextEditor",e.textHeight=160;break;case"region":e.type="region"}}},{colType:"ed",field:"append",title:"输入框单位",minWidth:120,align:"center",change:e=>{e.append&&"Input"==e.seltype?(e.type="Input",e.inputProp={type:"text",append:e.append}):(e.type=e.seltype,e.inputProp={})}},{colType:"select",field:"span",title:"占位格数",minWidth:120,align:"right",select:{data:[{value:8,text:"8"},{value:12,text:"12"},{value:24,text:"24"}]}},{colType:"select",field:"requiredd",title:"必填项",minWidth:120,align:"center",select:{data:[{value:1,text:"必填"},{value:0,text:"可空"}]},change:e=>{1==e.requiredd?e.rules=[{required:!0,message:e.message,trigger:"blur"}]:e.rules=[]}},{colType:"ed",field:"message",title:"提示信息",minWidth:200,align:"left",change:e=>{e.message?e.rules=[{required:!0,message:e.message,trigger:"blur"}]:e.rules=[]}},{colType:"num",field:"orderNum",title:"排序号",minWidth:80,align:"right"}],event:{}})),u(this,"saveFormData",(async()=>{const e=this.generalConfGrid.value.getSaveDatas();if(0==e.length)return void this.message.warning("没有需要保存的数据");let t="GC"==this.props.configType?this.utilities.deepCopy(JSON.parse(this.nowRow.ProjectConfig)):this.utilities.deepCopy(JSON.parse(this.nowRow.ConstructConfig));t.forEach((t=>{e.forEach((e=>{t.model==e.model&&Object.assign(t,e)}))}));let i={Id:this.nowRow.Id>0?this.nowRow.Id:0,PlatformId:this.props.platformInfo.Id,ProjectConfig:"GC"==this.props.configType?JSON.stringify(t):this.nowRow.ProjectConfig,ConstructConfig:"BD"==this.props.configType?JSON.stringify(t):this.nowRow.ConstructConfig,LastUpdateUserId:this.storageInfo.getUser().Id,LastUpdateUserName:this.storageInfo.getUser().UserName,LastUpdateDate:this.utilities.getCurrentDate()};this.utilities.parseApiResult(await this.corePlatformConfigApi.save(i))>0?(this.message.success("保存成功"),this.loadGeneralSituationData()):this.message.warning("保存失败")})),u(this,"deleteFormData",(async()=>{const e=this.generalConfGrid.value.getCheckboxDatas();0!=e.length?this.modal.confirm({title:"提示",content:"确定删除所选数据吗?",onOk:async()=>{let t="GC"==this.props.configType?this.utilities.deepCopy(JSON.parse(this.nowRow.ProjectConfig)):this.utilities.deepCopy(JSON.parse(this.nowRow.ConstructConfig));e.forEach((e=>{t.forEach(((i,o)=>{e.prop==i.prop&&t.splice(o,1)}))}));let i={Id:this.nowRow.Id>0?this.nowRow.Id:0,PlatformId:this.props.platformInfo.Id,ProjectConfig:"GC"==this.props.configType?JSON.stringify(t):this.nowRow.ProjectConfig,ConstructConfig:"BD"==this.props.configType?JSON.stringify(t):this.nowRow.ConstructConfig,LastUpdateUserId:this.storageInfo.getUser().Id,LastUpdateUserName:this.storageInfo.getUser().UserName,LastUpdateDate:this.utilities.getCurrentDate()};this.utilities.parseApiResult(await this.corePlatformConfigApi.save(i))>0?(this.message.success("删除成功"),this.loadGeneralSituationData()):this.message.error("删除失败")}}):this.message.warning("未勾选数据")})),u(this,"isShowDicModal",t.ref(!1)),u(this,"dicModalTitle",t.ref("概况选择")),u(this,"isShowDicModalLoading",t.ref(!1)),u(this,"dicModalGrid",t.ref()),u(this,"dicModalGridOption",t.reactive({api:this.platformApi,setting:{searchConfig:{btnSpan:6,labelWidth:120,defaultShowSearch:!1},toolbarConfig:{isButtonGroup:!1},rowConfig:{isCurrent:!0,isHover:!0},isPagination:!1,pageSize:10},searchOptions:[],toolbars:[],rightToolbars:[{name:"refresh"}],columns:[{colType:"seq"},{colType:"checkbox"},{colType:"ro",field:"DetailInfor",title:"标签文本",minWidth:200,align:"left"},{colType:"ro",field:"DetailValue",title:"属性字段",minWidth:200,align:"left"}],event:{}})),u(this,"doSaveDicModal",(async()=>{const e=this.dicModalGrid.value.getCheckboxDatas();if(0==e.length)return void this.message.warning("请先勾选数据");this.isShowDicModalLoading.value=!0;let t=[];e.forEach(((e,i)=>{t.push({label:e.DetailInfor,prop:e.DetailValue,model:e.DetailValue,type:"Input",seltype:"Input",append:"",span:8,orderNum:i,requiredd:1,message:e.DetailInfor+"不能为空",rules:[{required:!0,message:e.DetailInfor+"不能为空",trigger:"blur"}]})}));let i="GC"==this.props.configType?this.utilities.deepCopy(JSON.parse(this.nowRow.ProjectConfig)):this.utilities.deepCopy(JSON.parse(this.nowRow.ConstructConfig)),o=[...t,...i].reduce(((e,t)=>{let i=e.find((e=>e.model==t.model));return i?Object.assign(i,t):e.push(t),e}),[]),s={Id:this.nowRow.Id>0?this.nowRow.Id:0,PlatformId:this.props.platformInfo.Id,ProjectConfig:"GC"==this.props.configType?JSON.stringify(o):this.nowRow.ProjectConfig,ConstructConfig:"BD"==this.props.configType?JSON.stringify(o):this.nowRow.ConstructConfig,LastUpdateUserId:this.storageInfo.getUser().Id,LastUpdateUserName:this.storageInfo.getUser().UserName,LastUpdateDate:this.utilities.getCurrentDate()};this.utilities.parseApiResult(await this.corePlatformConfigApi.save(s))>0?(this.message.success("保存成功"),this.loadGeneralSituationData(),this.isShowDicModal.value=!1):this.message.warning("保存失败"),this.isShowDicModalLoading.value=!1})),this.props=e,this.ctx=o,this.loadGeneralSituationData()}doAddFormData(){this.isShowDicModal.value=!0,this.loadDicData()}async loadGeneralSituationData(){let e=this.utilities.parseApiResult(await this.corePlatformConfigApi.getEntities(o.QueryWrapper.create().allEq({PlatformId:this.props.platformInfo.Id})));if(e&&e.length>0){Object.assign(this.nowRow,e[0]);let t="GC"==this.props.configType?this.utilities.deepCopy(JSON.parse(e[0].ProjectConfig)):this.utilities.deepCopy(JSON.parse(e[0].ConstructConfig));t&&t.length>0&&(t=t.sort(((e,t)=>e.orderNum-t.orderNum))),this.loadMainData(t)}}async loadMainData(e){this.generalConfGrid.value.loadData((async t=>{t.success(e)}))}async loadDicData(){let e="GC"==this.props.configType?"ProjectProfileConfiguration":"SectionGeneralConfiguration",t=this.utilities.parseApiResult(await this.dictionaryTypeApi.getEntitiesDynamic(o.QueryWrapper.create().allEq({PlatformId:this.props.platformInfo.PId>0?this.props.platformInfo.PId:this.props.platformInfo.Id,OptionCode:e})));t&&t.length>0&&this.dicModalGrid.value.loadData((async e=>{let i=this.utilities.parseApiResult(await this.dictionaryDetailApi.getEntities(o.QueryWrapper.create().eq("MainId",t[0].Id)));e.success(i)}))}}const Oe={style:{height:"600px","overflow-y":"auto"}};const Le=c(Ee,[["render",function(e,i,o,s,r,l){const a=t.resolveComponent("NvGrid"),n=t.resolveComponent("NvBox"),d=t.resolveComponent("Button"),u=t.resolveComponent("Modal"),h=t.resolveComponent("NvPage");return t.openBlock(),t.createBlock(h,{gutter:8,class:"platform"},{default:t.withCtx((()=>[t.createVNode(n,{width:"100%"},{default:t.withCtx((()=>[t.createVNode(a,{ref:"generalConfGrid",option:e.generalConfGridOption},null,8,["option"])])),_:1}),t.createVNode(u,{modelValue:e.isShowDicModal,"onUpdate:modelValue":i[1]||(i[1]=t=>e.isShowDicModal=t),draggable:"",mask:!0,"mask-closable":!1,width:600,title:e.dicModalTitle,styles:{top:"3%"}},{footer:t.withCtx((()=>[t.createVNode(d,{type:"text",onClick:i[0]||(i[0]=t=>e.isShowDicModal=!1)},{default:t.withCtx((()=>[t.createTextVNode("关闭")])),_:1}),t.createVNode(d,{type:"primary",loading:e.isShowDicModalLoading,onClick:e.doSaveDicModal},{default:t.withCtx((()=>[t.createTextVNode("保存")])),_:1},8,["loading","onClick"])])),default:t.withCtx((()=>[t.createElementVNode("div",Oe,[t.createVNode(a,{ref:"dicModalGrid",option:e.dicModalGridOption},null,8,["option"])])])),_:1},8,["modelValue","title"])])),_:1})}],["__scopeId","data-v-a01b6a2e"]]),Be={linkParam:{type:String,default:""},operates:{type:String,default:"-"}},_e=t.defineComponent({name:"Platform",components:{GeneralConfiguration:Le},emits:[""],props:Be,setup:(e,t)=>new We(e,t)});class We extends e.BaseInstance{constructor(e,s){super(),u(this,"props"),u(this,"ctx"),u(this,"platformApi",new i.PlatformApi),u(this,"isShowGeneralConfig",t.ref(!1)),u(this,"generalConfigTitle",t.ref("概况配置")),u(this,"platformInfo",t.reactive({})),u(this,"configType",t.ref("GC")),u(this,"upList",t.reactive(Array())),u(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:15},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:150},{colType:"select",field:"PId",title:"上级平台",width:150,format:(e,t)=>{const i=this.upList.find((e=>e.value==t.row.PId));return e("span",0==t.row.PId?"/":i.text)},select:{data:this.upList,clearable:!0,multiple:!1}},{colType:"ed",field:"PlatformNo",title:"系统代号",width:100},{colType:"ed",field:"PlatformUrl",title:"系统URL",width:230},{colType:"num",field:"OrderNo",title:"排序号",width:80,align:"center"},{title:"概况配置",width:140,fixed:"right",rowButtons:[{name:"view",text:"项目",onclick:e=>{this.configType.value="GC",Object.assign(this.platformInfo,e),this.generalConfigTitle.value=`${e.PlatformName}-项目概况配置`,this.isShowGeneralConfig.value=!0}},{name:"view-",text:"标段",onclick:e=>{this.configType.value="BD",Object.assign(this.platformInfo,e),this.generalConfigTitle.value=`${e.PlatformName}-标段概况配置`,this.isShowGeneralConfig.value=!0}}]},{title:"操作",width:140,fixed:"right",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),i=o.QueryWrapper.create();i.eq("1","1");for(const o of t){const t=e[o];this.utilities.isNull(t)||i.like(o,t)}this.platformGrid.value.loadDataByQuery(i)}}})),u(this,"platformGrid",t.ref()),u(this,"refPlatformForm",t.ref()),u(this,"saveingPlatform",t.ref(!1)),u(this,"showEditPlatform",t.ref(!1)),u(this,"editPlatformModalTitle",t.ref("新增 - 系统平台")),u(this,"platformFormModel",t.reactive({Id:0,SKey:"",PlatformNo:"",PlatformName:"",PlatformAbbreviation:"",OssRootPath:"",PlatformGroup:"0",PlatformUrl:"",OrderNo:0,CABusinessKey:"",PId:0,LastUpdateUserId:0,LastUpdateUserName:"",LastUpdateDate:"",DefaultPwd:""})),u(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:"PId",label:"上级平台",prop:"PId",type:"Select",span:24,selectProp:{datas:[],transfer:!0,clearable:!0,multiple:!1,onChange:(e,t)=>{const i=t.selectProp.datas.find((t=>t.value==e));this.platformFormModel.PlatformGroup=this.utilities.isNull(i.PlatformGroup)?"0":i.PlatformGroup}}},{model:"PlatformUrl",label:"系统URL",prop:"PlatformUrl",type:"Input",span:24},{model:"CABusinessKey",label:"CAKey",prop:"CABusinessKey",type:"Input",span:24},{model:"DefaultPwd",label:"用户默认密码",prop:"DefaultPwd",type:"Input",span:24},{model:"OrderNo",label:"排序号",prop:"OrderNo",type:"InputNumber",span:24}])),u(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=s,this.usePlatform()}usePlatform(){t.onMounted((()=>{this.loadPlatformGrid()}))}async loadPlatformGrid(){var e;const t=this.storageInfo.getUser();this.platformGrid.value.setGloablValue("LastUpdateUserId",t.Id),this.platformGrid.value.setGloablValue("LastUpdateUserName",t.UserName),this.platformGrid.value.setGloablValue("LastUpdateDate",(()=>this.utilities.getCurrentDate())),this.platformGrid.value.setGloablValue("SKey",(()=>this.utilities.getUniqueCode()),!0);const i=null==(e=this.storageInfo.getCurrentPlatform())?void 0:e.Id;this.platformGrid.value.loadData((async e=>{const t=await this.platformApi.getEntitiesPageDynamic(e.page,e.pageSize,o.QueryWrapper.create().eq("Id",i).or((e=>e.allEq({PId:i}))).orderBy(["OrderNo"])),s=this.utilities.parseApiResult(t);e.success(s),this.upList.splice(0,this.upList.length);for(const i of s.Datas)this.upList.push({value:i.Id,text:i.PlatformAbbreviation})}))}doEditPlatform(e){var t;const i=this.storageInfo.getUser();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=i.Id,this.platformFormModel.LastUpdateUserName=i.UserName,this.platformFormModel.LastUpdateDate=this.utilities.getCurrentDate(),this.platformFormModel.DefaultPwd=e.DefaultPwd;const o=null==(t=this.platformGrid.value)?void 0:t.getDatas();this.platformFormItems[4].selectProp.datas=o.length>0?null==o?void 0:o.map((e=>({value:e.Id,text:e.PlatformAbbreviation,PlatformGroup:e.PlatformGroup}))):[],this.platformFormModel.PId=e.PId,this.editPlatformModalTitle.value=`编辑 - ${e.PlatformName}`,this.showEditPlatform.value=!0}doAddPlatform(){var e;const t=this.storageInfo.getUser();this.platformFormModel.Id=0,this.platformFormModel.SKey=this.utilities.getUniqueCode(),this.platformFormModel.PlatformNo="",this.platformFormModel.PlatformName="",this.platformFormModel.PlatformAbbreviation="",this.platformFormModel.OssRootPath="",this.platformFormModel.PlatformUrl="",this.platformFormModel.CABusinessKey="",this.platformFormModel.OrderNo=0,this.platformFormModel.LastUpdateUserId=t.Id,this.platformFormModel.LastUpdateUserName=t.UserName,this.platformFormModel.LastUpdateDate=this.utilities.getCurrentDate(),this.platformFormModel.DefaultPwd="",this.editPlatformModalTitle.value="新增 - 系统平台";const i=null==(e=this.platformGrid.value)?void 0:e.getDatas();this.platformFormItems[4].selectProp.datas=i.length>0?null==i?void 0:i.map((e=>({value:e.Id,text:e.PlatformAbbreviation,PlatformGroup:e.PlatformGroup}))):[],this.platformFormModel.PId=i.length>0?i[0].Id:0,this.platformFormModel.PlatformGroup=i.length>0?i[0].PlatformGroup:0,this.showEditPlatform.value=!0}}const qe={style:{height:"550px","overflow-y":"auto"}};const Ke=c(_e,[["render",function(e,i,o,s,r,l){const a=t.resolveComponent("NvGrid"),n=t.resolveComponent("NvBox"),d=t.resolveComponent("NvComForm"),u=t.resolveComponent("Form"),h=t.resolveComponent("Button"),p=t.resolveComponent("Modal"),m=t.resolveComponent("GeneralConfiguration"),c=t.resolveComponent("NvPage");return t.openBlock(),t.createBlock(c,{gutter:8,class:"platform"},{default:t.withCtx((()=>[t.createVNode(n,{title:"系统平台"},{default:t.withCtx((()=>[t.createVNode(a,{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",qe,[t.createVNode(u,{ref:"refPlatformForm",model:e.platformFormModel,"label-width":120},{default:t.withCtx((()=>[t.createVNode(d,{formModel:e.platformFormModel,formItems:e.platformFormItems},null,8,["formModel","formItems"])])),_:1},8,["model"])])])),_:1},8,["modelValue","title"]),t.createVNode(p,{modelValue:e.isShowGeneralConfig,"onUpdate:modelValue":i[3]||(i[3]=t=>e.isShowGeneralConfig=t),fullscreen:"",title:e.generalConfigTitle},{footer:t.withCtx((()=>[t.createVNode(h,{type:"text",onClick:i[2]||(i[2]=t=>e.isShowGeneralConfig=!1)},{default:t.withCtx((()=>[t.createTextVNode("关闭")])),_:1})])),default:t.withCtx((()=>[e.isShowGeneralConfig?(t.openBlock(),t.createBlock(m,{key:0,platformInfo:e.platformInfo,configType:e.configType},null,8,["platformInfo","configType"])):t.createCommentVNode("",!0)])),_:1},8,["modelValue","title"])])),_:1})}],["__scopeId","data-v-fbc0e7f2"]]),Qe={linkParam:{type:String,default:""},operates:{type:String,default:"-"}},Ye=t.defineComponent({name:"Role",components:{SelectPlatform:r.SelectPlatform},emits:[""],props:Qe,setup:(e,t)=>new He(e,t)});class He extends e.BaseInstance{constructor(e,r){super(),u(this,"props"),u(this,"ctx"),u(this,"roleApi",new i.RoleApi),u(this,"moduleApi",new i.ModuleApi),u(this,"roleModuleApi",new i.RoleModuleApi),u(this,"platformApi",new i.PlatformApi),u(this,"institutionRoleApi",new i.InstitutionRoleApi),u(this,"platId",t.ref(0)),u(this,"platData",t.ref([])),u(this,"spinPlatShow",t.ref(!1)),u(this,"getPlatData",(async()=>{var e;this.spinPlatShow.value=!0;const i=null==(e=this.storageInfo.getCurrentPlatform())?void 0:e.Id,s=await this.platformApi.getEntities(o.QueryWrapper.create().eq("Id",i).or((e=>e.allEq({PId:i}))).orderBy(["OrderNo"]));this.platData.value=this.utilities.parseApiResult(s),this.spinPlatShow.value=!1,this.platData.value.length>0&&(this.platId.value=this.platData.value[0].Id),t.nextTick((()=>{this.doPlatformListSelect()}))})),u(this,"roleWidth",t.ref("calc(100% - 300px)")),u(this,"roleGrid",t.ref()),u(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:15},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(s.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(s.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=o.QueryWrapper.create().eq("PlatformId",this.platId.value).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)}}})),u(this,"doPlatformListSelect",(()=>{const e=this.storageInfo.getUser();this.roleGrid.value.setGloablValue("PlatformId",this.platId.value),this.roleGrid.value.setGloablValue("LastUpdateUserId",e.Id),this.roleGrid.value.setGloablValue("LastUpdateUserName",e.UserName),this.roleGrid.value.setGloablValue("LastUpdateDate",(()=>this.utilities.getCurrentDate())),this.loadRoleGridData()})),u(this,"loadRoleGridData",(async()=>{const e=await this.institutionRoleApi.getEntities(o.QueryWrapper.create()),t=this.utilities.parseApiResult(e),i=[];for(let o of t)i.some((e=>e==o.RoleId))||i.push(o.RoleId);const s=o.QueryWrapper.create().eq("PlatformId",this.platId.value).orderBy(["OrderNo"]);i.length>0&&s.notIn("Id",i),this.roleGrid.value.loadDataByQuery(s)})),u(this,"doChangeRoleWidth",(e=>{this.roleWidth.value=e?"calc(100% - 300px)":"calc(100% - 45px)"})),u(this,"refRoleForm",t.ref()),u(this,"saveingRole",t.ref(!1)),u(this,"showEditRole",t.ref(!1)),u(this,"editRoleModalTitle",t.ref("新增 - 角色")),u(this,"roleFormModel",t.reactive({Id:0,PlatformId:0,RoleName:"",RoleCode:"",RoleDesc:"",RoleStatus:1,FrontEndVisible:0,DefaultUrl:"",WelcomeUrl:"",OrderNo:0,LastUpdateUserId:0,LastUpdateUserName:"",LastUpdateDate:""})),u(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}])),u(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})),u(this,"selectRole"),u(this,"saveRoleModuleing",t.ref(!1)),u(this,"showRoleModule",t.ref(!1)),u(this,"roleModuleTitle",t.ref("")),u(this,"moduleGrid",t.ref()),u(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(s.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(s.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(s.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=[],r=e(s.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(s.Divider,{type:"vertical"}),a=[];for(const d of i)o.push(d.code),a.push(e(s.Checkbox,{label:d.code},(()=>d.name)));const n=e(s.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))}},(()=>a));return e(s.Space,(()=>[r,l,n]))}}],event:{event_search:e=>{this.loadModuleGridData(e)}}})),u(this,"loadModuleGridData",(e=>{this.moduleGrid.value.loadData((async t=>{const i=o.QueryWrapper.create().eq("PlatformId",this.platId.value).ne("ModuleStatus",0).orderBy(["OrderNo"]);this.utilities.isNull(e.ModuleName)||i.like("ModuleName",e.ModuleName);let s=await this.moduleApi.getEntities(i),r=this.utilities.parseApiResult(s);const l=o.QueryWrapper.create().eq("RoleId",this.selectRole.Id);s=await this.roleModuleApi.getEntities(l);let a=this.utilities.parseApiResult(s);for(const e of r){const t=a.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)}))})),u(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})),u(this,"showImportRole",t.ref(!1)),u(this,"saveingImportRole",t.ref(!1)),u(this,"originPlatform",t.reactive({list:[],selectedItem:{Id:0,PlatformAbbreviation:""},selectedId:0})),u(this,"originRoleGrid",t.ref()),u(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}]})),u(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()})),u(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.platId.value,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=r,this.useBusinessRole()}useBusinessRole(){t.onMounted((()=>{this.getPlatData()})),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){const t=this.storageInfo.getUser();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=t.Id,this.roleFormModel.LastUpdateUserName=t.UserName,this.roleFormModel.LastUpdateDate=this.utilities.getCurrentDate(),this.editRoleModalTitle.value=`编辑 - ${e.RoleName}`,this.showEditRole.value=!0}doAddRole(){const e=this.storageInfo.getUser();this.roleFormModel.Id=0,this.roleFormModel.PlatformId=this.platId.value,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=e.Id,this.roleFormModel.LastUpdateUserName=e.UserName,this.roleFormModel.LastUpdateDate=this.utilities.getCurrentDate(),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(){var e;const i=null==(e=this.storageInfo.getCurrentPlatform())?void 0:e.Id,s=await this.platformApi.getEntities(o.QueryWrapper.create().eq("Id",i).ne("Id",this.platId.value).or((e=>e.allEq({PId:i}))).orderBy(["OrderNo"]));this.originPlatform.list=this.utilities.parseApiResult(s),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=o.QueryWrapper.create().eq("PlatformId",this.originPlatform.selectedId).eq("RoleStatus",1).orderBy(["OrderNo"]);this.originRoleGrid.value.loadDataByQuery(e)}}const ze={style:{height:"650px","overflow-y":"auto",position:"relative"}},Ze={class:"import-role",style:{height:"610px",position:"relative"}},$e={style:{width:"100%",height:"100%"}},je={style:{height:"530px","overflow-y":"auto"}};const Je=c(Ye,[["render",function(e,i,o,s,r,l){const a=t.resolveComponent("Option"),n=t.resolveComponent("Select"),d=t.resolveComponent("Spin"),u=t.resolveComponent("NvControlGroup"),h=t.resolveComponent("NvGrid"),p=t.resolveComponent("NvBox"),m=t.resolveComponent("Button"),c=t.resolveComponent("Modal"),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(p,{width:"100%",title:"角色列表"},{default:t.withCtx((()=>[t.createVNode(h,{ref:"roleGrid",option:e.roleGridOption},{default:t.withCtx((()=>[t.createVNode(u,{width:"380px",icon:"md-refresh",label:"系统平台",labelWidth:75,onClick:e.getPlatData},{default:t.withCtx((()=>[t.createVNode(n,{modelValue:e.platId,"onUpdate:modelValue":i[0]||(i[0]=t=>e.platId=t),onOnChange:e.doPlatformListSelect,transfer:""},{default:t.withCtx((()=>[(t.openBlock(!0),t.createElementBlock(t.Fragment,null,t.renderList(e.platData,((e,i)=>(t.openBlock(),t.createBlock(a,{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.spinPlatShow},null,8,["show"])])),_:1},8,["onClick"])])),_:1},8,["option"])])),_:1}),t.createVNode(c,{modelValue:e.showRoleModule,"onUpdate:modelValue":i[2]||(i[2]=t=>e.showRoleModule=t),draggable:"",mask:!0,"mask-closable":!1,width:1300,title:"模块权限",styles:{top:"3%"}},{footer:t.withCtx((()=>[t.createVNode(m,{type:"text",onClick:i[1]||(i[1]=t=>e.showRoleModule=!1)},{default:t.withCtx((()=>[t.createTextVNode("关闭")])),_:1}),t.createVNode(m,{type:"primary",loading:e.saveRoleModuleing,onClick:e.doSaveRoleModule},{default:t.withCtx((()=>[t.createTextVNode("保存")])),_:1},8,["loading","onClick"])])),default:t.withCtx((()=>[t.createElementVNode("div",ze,[t.createVNode(h,{ref:"moduleGrid",option:e.moduleGridOption},null,8,["option"])])])),_:1},8,["modelValue"]),t.createVNode(c,{modelValue:e.showImportRole,"onUpdate:modelValue":i[5]||(i[5]=t=>e.showImportRole=t),draggable:"",mask:!0,"mask-closable":!1,width:800,title:"引入角色",styles:{top:"3%"}},{footer:t.withCtx((()=>[t.createVNode(m,{type:"text",onClick:i[4]||(i[4]=t=>e.showImportRole=!1)},{default:t.withCtx((()=>[t.createTextVNode("关闭")])),_:1}),t.createVNode(m,{type:"primary",loading:e.saveingImportRole,onClick:e.doImportRole},{default:t.withCtx((()=>[t.createTextVNode("引入")])),_:1},8,["loading","onClick"])])),default:t.withCtx((()=>[t.createElementVNode("div",Ze,[t.createElementVNode("div",$e,[t.createVNode(h,{ref:"originRoleGrid",option:e.originRoleGridOption},{default:t.withCtx((()=>[t.createVNode(n,{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,((i,o)=>(t.openBlock(),t.createBlock(a,{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(d,{fix:""},null,512),[[t.vShow,e.saveingImportRole]])])])])),_:1},8,["modelValue"]),t.createVNode(c,{modelValue:e.showEditRole,"onUpdate:modelValue":i[7]||(i[7]=t=>e.showEditRole=t),draggable:"",mask:!0,"mask-closable":!1,width:620,title:e.editRoleModalTitle,styles:{top:"3%"}},{footer:t.withCtx((()=>[t.createVNode(m,{type:"text",onClick:i[6]||(i[6]=t=>e.showEditRole=!1)},{default:t.withCtx((()=>[t.createTextVNode("关闭")])),_:1}),t.createVNode(m,{type:"primary",loading:e.saveingRole,onClick:e.doSaveRole},{default:t.withCtx((()=>[t.createTextVNode("保存")])),_:1},8,["loading","onClick"])])),default:t.withCtx((()=>[t.createElementVNode("div",je,[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-ffab91cb"]]),Xe={linkParam:{type:String,default:""},operates:{type:String,default:"-"}},et=t.defineComponent({name:"Enterprise",components:{SelectPlatform:r.SelectPlatform},emits:[""],props:Xe,setup:(e,t)=>new tt(e,t)});class tt extends e.BaseInstance{constructor(e,s){super(),u(this,"props"),u(this,"ctx"),u(this,"platformApi",new i.PlatformApi),u(this,"enterpriseApi",new i.EnterpriseApi),u(this,"provinceApi",new a.ProvinceApi),u(this,"cityApi",new a.CityApi),u(this,"areaApi",new a.AreaApi),u(this,"platId",t.ref(0)),u(this,"platData",t.ref([])),u(this,"spinPlatShow",t.ref(!1)),u(this,"getPlatData",(async()=>{var e;this.spinPlatShow.value=!0;const i=null==(e=this.storageInfo.getCurrentPlatform())?void 0:e.Id,s=await this.platformApi.getEntities(o.QueryWrapper.create().eq("Id",i).orderBy(["OrderNo"]));this.platData.value=this.utilities.parseApiResult(s),this.spinPlatShow.value=!1,this.platData.value.length>0&&(this.platId.value=this.platData.value[0].Id),t.nextTick((()=>{this.doPlatformChange()}))})),u(this,"provinces",[]),u(this,"cities",[]),u(this,"areas",[]),u(this,"refSelectPlatform",t.ref()),u(this,"onlyView",t.ref(!1)),u(this,"enterpriseGrid",t.ref()),u(this,"enterpriseGridOption",t.reactive({api:this.enterpriseApi,setting:{searchConfig:{btnSpan:8,labelWidth:120,defaultShowSearch:!1},toolbarConfig:{isButtonGroup:!1},rowConfig:{isHover:!0},isPagination:!0,pageSize:15},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)}}})),u(this,"doPlatformChange",(()=>{this.loadEnterpriseGridData({})})),u(this,"saveingEnterprise",t.ref(!1)),u(this,"showEditEnterprise",t.ref(!1)),u(this,"editEnterpriseTitle",t.ref("新增 - 企业")),u(this,"enterpriseFormModel",t.reactive({Id:0,PlatformId:0,EnterpriseName:"",EnterpriseCode:"",LegalPerson:"",RegisteredCapital:0,Province:"",City:"",Area:"",Address:"",Contact:"",TelPhone:"",LastUpdateUserId:0,LastUpdateUserName:"",LastUpdateTime:"",PostalCode:"",Fax:"",Email:""})),u(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:"请输入联系电话"}},{model:"PostalCode",label:"邮政编码",type:"Input",span:12,inputProp:{placeholder:"请输入邮政编码"}},{model:"Email",label:"Email",type:"Input",span:12,inputProp:{placeholder:"请输入Email地址"}},{model:"Fax",label:"传真",type:"Input",span:12,inputProp:{placeholder:"请输入传真"}}]}])),u(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=s,this.useArea(),this.getPlatData()}async useArea(){let e=await this.provinceApi.getEntities(o.QueryWrapper.create().eq("1","1"));this.provinces=this.utilities.parseApiResult(e),e=await this.cityApi.getEntities(o.QueryWrapper.create().eq("1","1")),this.cities=this.utilities.parseApiResult(e),e=await this.areaApi.getEntities(o.QueryWrapper.create().eq("1","1")),this.areas=this.utilities.parseApiResult(e),this.setProvinceDatas(),this.refSelectPlatform.value.loadPlatforms()}loadEnterpriseGridData(e){const t=o.QueryWrapper.create().eq("PlatformId",this.platId.value);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(){const e=this.storageInfo.getUser();this.onlyView.value=!1,this.enterpriseFormModel.Id=0,this.enterpriseFormModel.PlatformId=this.platId.value,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.PostalCode="",this.enterpriseFormModel.Fax="",this.enterpriseFormModel.Email="",this.enterpriseFormModel.LastUpdateUserId=e.Id,this.enterpriseFormModel.LastUpdateUserName=e.UserName,this.enterpriseFormModel.LastUpdateTime=this.utilities.getCurrentDate(),this.setCityDatas(""),this.setAreaDatas(""),this.editEnterpriseTitle.value="新增 - 企业",this.showEditEnterprise.value=!0}doEditEnterprise(e){const t=this.storageInfo.getUser();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.PostalCode=e.PostalCode,this.enterpriseFormModel.Fax=e.Fax,this.enterpriseFormModel.Email=e.Email,this.enterpriseFormModel.LastUpdateUserId=t.Id,this.enterpriseFormModel.LastUpdateUserName=t.UserName,this.enterpriseFormModel.LastUpdateTime=this.utilities.getCurrentDate(),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 it={style:{height:"650px","overflow-y":"auto"}};const ot=c(et,[["render",function(e,i,o,s,r,l){const a=t.resolveComponent("Option"),n=t.resolveComponent("Select"),d=t.resolveComponent("Spin"),u=t.resolveComponent("NvControlGroup"),h=t.resolveComponent("NvGrid"),p=t.resolveComponent("NvBox"),m=t.resolveComponent("NvComForm"),c=t.resolveComponent("Form"),f=t.resolveComponent("Button"),g=t.resolveComponent("Modal"),I=t.resolveComponent("NvPage");return t.openBlock(),t.createBlock(I,{gutter:8,class:""},{default:t.withCtx((()=>[t.createVNode(p,{width:"100%",title:"企业列表"},{default:t.withCtx((()=>[t.createVNode(h,{ref:"enterpriseGrid",option:e.enterpriseGridOption},{default:t.withCtx((()=>[t.createVNode(u,{width:"380px",icon:"md-refresh",label:"系统平台",labelWidth:75,onClick:e.getPlatData},{default:t.withCtx((()=>[t.createVNode(n,{modelValue:e.platId,"onUpdate:modelValue":i[0]||(i[0]=t=>e.platId=t),onOnChange:e.doPlatformChange,transfer:""},{default:t.withCtx((()=>[(t.openBlock(!0),t.createElementBlock(t.Fragment,null,t.renderList(e.platData,((e,i)=>(t.openBlock(),t.createBlock(a,{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.spinPlatShow},null,8,["show"])])),_:1},8,["onClick"])])),_:1},8,["option"])])),_:1}),t.createVNode(g,{modelValue:e.showEditEnterprise,"onUpdate:modelValue":i[2]||(i[2]=t=>e.showEditEnterprise=t),draggable:"",mask:!0,"mask-closable":!1,width:850,title:e.editEnterpriseTitle,styles:{top:"3%"}},{footer:t.withCtx((()=>[t.createVNode(f,{type:"text",onClick:i[1]||(i[1]=t=>e.showEditEnterprise=!1)},{default:t.withCtx((()=>[t.createTextVNode("关闭")])),_:1}),e.onlyView?t.createCommentVNode("",!0):(t.openBlock(),t.createBlock(f,{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",it,[t.createVNode(c,{model:e.enterpriseFormModel,"label-width":90},{default:t.withCtx((()=>[t.createVNode(m,{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-57711b94"]]),st={linkParam:{type:String,default:""},operates:{type:String,default:"-"}},rt=t.defineComponent({name:"Institution",components:{SelectPlatform:r.SelectPlatform},emits:[""],props:st,setup:(e,t)=>new lt(e,t)});class lt extends e.BaseInstance{constructor(e,r){super(),u(this,"props"),u(this,"ctx"),u(this,"institutionTypeApi",new i.InstitutionTypeApi),u(this,"institutioninforApi",new i.InstitutioninforApi),u(this,"institutionPlatformApi",new i.InstitutionPlatformApi),u(this,"platformApi",new i.PlatformApi),u(this,"institutionTreeApi",new i.InstitutionTreeApi),u(this,"roleApi",new i.RoleApi),u(this,"enterpriseApi",new i.EnterpriseApi),u(this,"platId",t.ref(0)),u(this,"selectPlat",t.ref({})),u(this,"platData",t.ref([])),u(this,"spinPlatShow",t.ref(!1)),u(this,"getPlatData",(async()=>{var e;this.spinPlatShow.value=!0;const i=null==(e=this.storageInfo.getCurrentPlatform())?void 0:e.Id,s=await this.platformApi.getEntities(o.QueryWrapper.create().eq("Id",i).or((e=>e.allEq({PId:i}))).orderBy(["OrderNo"]));this.platData.value=this.utilities.parseApiResult(s),this.spinPlatShow.value=!1,this.platData.value.length>0&&(this.platId.value=this.platData.value[0].Id,t.nextTick((()=>{this.doPlatformListSelect(this.platId.value)})))})),u(this,"institutionTypes",t.ref([])),u(this,"enterprises",[]),u(this,"institutionWidth",t.ref("calc(100% - 45px)")),u(this,"institutionGrid",t.ref()),u(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.platId.value,e.InstitutionCode,e.InstitutionName,e.InstitutionAbbreviation)}}})),u(this,"doPlatformListSelect",(async e=>{const t=this.platData.value.find((t=>t.Id==e));this.selectPlat.value=t,await this.loadEnterprises(),this.loadInstitutionGridData(this.platId.value,"","",""),this.loadInstitutionTree()})),u(this,"doWidthChange",(e=>{this.institutionWidth.value=e?"calc(100% - 350px)":"calc(100% - 45px)"})),u(this,"saveingInstitution",t.ref(!1)),u(this,"showEditInstitution",t.ref(!1)),u(this,"editInstitutionTitle",t.ref("新增 - 机构")),u(this,"institutionFormModel",t.reactive({Id:0,EnterpriseId:0,InstitutionPlatformId:0,InstitutionCode:"",InstitutionName:"",InstitutionAbbreviation:"",InstitutionTypeCode:"",OrderNo:1,LastUpdateUserId:0,LastUpdateUserName:"",LastUpdateDate:""})),u(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}])),u(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.platId.value,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})),u(this,"showImportInstitution",t.ref(!1)),u(this,"saveingImportInstitution",t.ref(!1)),u(this,"originPlatform",t.reactive({list:[],selectedItem:{Id:0,PlatformName:""},selectedId:0})),u(this,"originInstitutionGrid",t.ref()),u(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.platId.value,e.InstitutionCode,e.InstitutionName,e.InstitutionAbbreviation)}}})),u(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,"","","")})),u(this,"doImportInstitution",(async()=>{const e=this.originInstitutionGrid.value.getCheckboxDatas();if(e.length<=0)return void this.message.warning("请选择源平台机构信息");this.saveingImportInstitution.value=!0;let t=[];const i=this.storageInfo.getUser();for(const r of e)t.push({InstitutionId:r.Id,PlatformId:this.platId.value,InstitutionCode:r.InstitutionCode,InstitutionAbbreviation:r.InstitutionAbbreviation,InstitutionTypeCode:r.InstitutionTypeCode,OrderNo:r.OrderNo,LastUpdateUserId:i.Id,LastUpdateUserName:i.UserName,LastUpdateDate:this.utilities.getCurrentDate()});const o=await this.institutionPlatformApi.saves(t),s=this.utilities.parseApiResult(o);this.saveingImportInstitution.value=!1,s?(this.showImportInstitution.value=!1,this.institutionGrid.value.refreshData(),this.message.success("导入成功")):this.message.warning("导入失败, 请稍后重试")})),u(this,"selectedInstitutionTree"),u(this,"insertRecords",[]),u(this,"institutionTree",t.ref([])),u(this,"saveingInstitutionTree",t.ref(!1)),u(this,"loadingInstitutionTree",t.ref(!1)),u(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(s.Icon,{type:"md-trash",style:{fontSize:"18px",color:"rgb(225, 76, 23)"},onClick:()=>{this.doDeleteNode(t,i,o)}})])]))),u(this,"doTreeSelectChange",(e=>{e.length>0?this.selectedInstitutionTree=e[0]:this.selectedInstitutionTree=void 0})),u(this,"loadInstitutionTree",(async()=>{this.insertRecords=[],this.selectedInstitutionTree=void 0,this.loadingInstitutionTree.value=!0;const e=await this.institutionTreeApi.getInstitutionTrees(this.platId.value),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)})),u(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("操作异常, 请稍后重试!")})),u(this,"selectInstitution"),u(this,"showBindRole",t.ref(!1)),u(this,"saveingBindRole",t.ref(!1)),u(this,"roleGrid",t.ref()),u(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(s.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"}]})),u(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=r,this.useBusinessInstitutionType(),this.useBusinessInstitution()}useBusinessInstitutionType(){t.onMounted((()=>{})),t.onUnmounted((()=>{})),this.getInstitutionTypes()}async getInstitutionTypes(){const e=await this.institutionTypeApi.getEntities(o.QueryWrapper.create().eq("1",1).orderBy(["OrderNo"]));this.institutionTypes.value=this.utilities.parseApiResult(e),this.setInstitutionTypeCodeDatas()}async loadEnterprises(){const e=await this.enterpriseApi.getEntities(o.QueryWrapper.create().eq("1","1"));this.enterprises=this.utilities.parseApiResult(e),this.setEnterpriseDatas()}useBusinessInstitution(){t.onMounted((()=>{this.getPlatData()})),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.platId.value),i=this.utilities.parseApiResult(t);i<=0?this.message.error("操作失败, 请稍后重试!"):(t=await this.institutionPlatformApi.getCount(o.QueryWrapper.create().eq("InstitutionId",e.Id)),i=this.utilities.parseApiResult(t),0==i&&(t=await this.institutioninforApi.delete(e.Id),i=this.utilities.parseApiResult(t)),t=await this.institutionTreeApi.deleteInstitutionTreeByInstitutionIdAndPlatformId(e.Id,this.platId.value),i=this.utilities.parseApiResult(t),this.message.success("操作成功"),this.institutionGrid.value.refreshData(),i>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=[];let t=[];t=0!==this.selectPlat.PId?this.platData.value.filter((e=>e.Id==this.selectPlat.value.PId||this.selectPlat.value.Id==e.Id)):this.platData.value.filter((e=>e.Id==this.selectPlat.value.Id));const i=this.enterprises.filter((e=>t.some((t=>t.Id==e.PlatformId))));for(const o of i)e.push({text:o.EnterpriseName,value:o.Id});this.institutionFormItems[3].selectProp.datas=e}doEditInstitution(e){const t=this.storageInfo.getUser();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=t.Id,this.institutionFormModel.LastUpdateUserName=t.UserName,this.institutionFormModel.LastUpdateDate=this.utilities.getCurrentDate(),this.editInstitutionTitle.value="编辑 - "+e.InstitutionName,this.showEditInstitution.value=!0}doAddInstitution(){const e=this.storageInfo.getUser();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=e.Id,this.institutionFormModel.LastUpdateUserName=e.UserName,this.institutionFormModel.LastUpdateDate=this.utilities.getCurrentDate(),this.editInstitutionTitle.value="新增 - 机构",this.showEditInstitution.value=!0}doShowImportInstitution(){this.showImportInstitution.value=!0,this.loadOriginPlatforms()}async loadOriginPlatforms(){var e;const i=null==(e=this.storageInfo.getCurrentPlatform())?void 0:e.Id,s=await this.platformApi.getEntities(o.QueryWrapper.create().eq("Id",i).ne("Id",this.platId.value).or((e=>e.allEq({PId:i}))).orderBy(["OrderNo"]));this.originPlatform.list=this.utilities.parseApiResult(s),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.platId.value,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.platId.value,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=o.QueryWrapper.create().eq("PlatformId",this.platId.value).eq("RoleStatus",1).orderBy(["OrderNo"]),i=await this.roleApi.getEntities(t),s=this.utilities.parseApiResult(i),r=this.selectInstitution.RoleIds,l=this.utilities.isNull(r)?[]:r.split(",");for(const o of s)o.IsChk=-1!=l.findIndex((e=>e==o.Id));e.success(s)}))}}const at={style:{width:"100%",height:"100%",position:"relative"}},nt={style:{height:"500px","overflow-y":"auto"}},dt={class:"import-institution",style:{height:"600px","overflow-y":"auto",position:"relative"}},ut={style:{width:"100%",height:"100%"}},ht={style:{height:"calc(100%)"}},pt={style:{height:"610px","overflow-y":"auto",position:"relative"}};const mt=c(rt,[["render",function(e,i,o,s,r,l){const a=t.resolveComponent("Option"),n=t.resolveComponent("Select"),d=t.resolveComponent("Spin"),u=t.resolveComponent("NvControlGroup"),h=t.resolveComponent("NvGrid"),p=t.resolveComponent("NvBox"),m=t.resolveComponent("Tree"),c=t.resolveComponent("Button"),f=t.resolveComponent("Space"),g=t.resolveComponent("NvComForm"),I=t.resolveComponent("Form"),v=t.resolveComponent("Modal"),w=t.resolveComponent("NvPage");return t.openBlock(),t.createBlock(w,{gutter:8,class:"institution"},{default:t.withCtx((()=>[t.createVNode(p,{width:e.institutionWidth,title:"机构列表"},{default:t.withCtx((()=>[t.createVNode(h,{ref:"institutionGrid",option:e.institutionGridOption},{default:t.withCtx((()=>[t.createVNode(u,{width:"380px",icon:"md-refresh",label:"系统平台",labelWidth:75,onClick:e.getPlatData},{default:t.withCtx((()=>[t.createVNode(n,{modelValue:e.platId,"onUpdate:modelValue":i[0]||(i[0]=t=>e.platId=t),onOnChange:e.doPlatformListSelect,transfer:""},{default:t.withCtx((()=>[(t.openBlock(!0),t.createElementBlock(t.Fragment,null,t.renderList(e.platData,((e,i)=>(t.openBlock(),t.createBlock(a,{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.spinPlatShow},null,8,["show"])])),_:1},8,["onClick"])])),_:1},8,["option"])])),_:1},8,["width"]),t.createVNode(p,{width:"350px",title:"组织机构树",showArrow:!0,expand:!1,onChange:e.doWidthChange},{footer:t.withCtx((()=>[t.createVNode(f,null,{default:t.withCtx((()=>[t.createVNode(c,{type:"text",onClick:e.loadInstitutionTree},{default:t.withCtx((()=>[t.createTextVNode("刷新")])),_:1},8,["onClick"]),t.createVNode(c,{type:"primary",loading:e.saveingInstitutionTree,onClick:e.doSaveInstitutionTree},{default:t.withCtx((()=>[t.createTextVNode("保存")])),_:1},8,["loading","onClick"])])),_:1})])),default:t.withCtx((()=>[t.createElementVNode("div",at,[t.createVNode(m,{data:e.institutionTree,render:e.renderContent,class:"tree-render",onOnSelectChange:e.doTreeSelectChange},null,8,["data","render","onOnSelectChange"]),t.withDirectives(t.createVNode(d,{fix:""},{default:t.withCtx((()=>[t.createTextVNode("正在保存中")])),_:1},512),[[t.vShow,e.saveingInstitutionTree]]),t.withDirectives(t.createVNode(d,{fix:""},{default:t.withCtx((()=>[t.createTextVNode("数据加载中")])),_:1},512),[[t.vShow,e.loadingInstitutionTree]])])])),_:1},8,["onChange"]),t.createVNode(v,{modelValue:e.showEditInstitution,"onUpdate:modelValue":i[2]||(i[2]=t=>e.showEditInstitution=t),draggable:"",mask:!0,"mask-closable":!1,width:450,title:e.editInstitutionTitle,styles:{top:"3%"}},{footer:t.withCtx((()=>[t.createVNode(c,{type:"text",onClick:i[1]||(i[1]=t=>e.showEditInstitution=!1)},{default:t.withCtx((()=>[t.createTextVNode("关闭")])),_:1}),t.createVNode(c,{type:"primary",loading:e.saveingInstitution,onClick:e.doSaveInstitution},{default:t.withCtx((()=>[t.createTextVNode("保存")])),_:1},8,["loading","onClick"])])),default:t.withCtx((()=>[t.createElementVNode("div",nt,[t.createVNode(I,{model:e.institutionFormModel,"label-width":90},{default:t.withCtx((()=>[t.createVNode(g,{ref:"institutionComForm",formModel:e.institutionFormModel,formItems:e.institutionFormItems},null,8,["formModel","formItems"])])),_:1},8,["model"])])])),_:1},8,["modelValue","title"]),t.createVNode(v,{modelValue:e.showImportInstitution,"onUpdate:modelValue":i[5]||(i[5]=t=>e.showImportInstitution=t),draggable:"",mask:!0,"mask-closable":!1,width:1200,title:"引入机构",styles:{top:"3%"}},{footer:t.withCtx((()=>[t.createVNode(c,{type:"text",onClick:i[4]||(i[4]=t=>e.showImportInstitution=!1)},{default:t.withCtx((()=>[t.createTextVNode("关闭")])),_:1}),t.createVNode(c,{type:"primary",loading:e.saveingImportInstitution,onClick:e.doImportInstitution},{default:t.withCtx((()=>[t.createTextVNode("引入")])),_:1},8,["loading","onClick"])])),default:t.withCtx((()=>[t.createElementVNode("div",dt,[t.createElementVNode("div",ut,[t.createElementVNode("div",ht,[t.createVNode(h,{ref:"originInstitutionGrid",option:e.originInstitutionGridOption},{default:t.withCtx((()=>[t.createVNode(n,{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,((i,o)=>(t.openBlock(),t.createBlock(a,{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(d,{fix:""},null,512),[[t.vShow,e.saveingImportInstitution]])])])])),_:1},8,["modelValue"]),t.createVNode(v,{modelValue:e.showBindRole,"onUpdate:modelValue":i[7]||(i[7]=t=>e.showBindRole=t),draggable:"",mask:!0,"mask-closable":!1,width:900,title:"绑定角色",styles:{top:"3%"}},{footer:t.withCtx((()=>[t.createVNode(c,{type:"text",onClick:i[6]||(i[6]=t=>e.showBindRole=!1)},{default:t.withCtx((()=>[t.createTextVNode("关闭")])),_:1}),t.createVNode(c,{type:"primary",loading:e.saveingBindRole,onClick:e.doSaveBindRole},{default:t.withCtx((()=>[t.createTextVNode("保存")])),_:1},8,["loading","onClick"])])),default:t.withCtx((()=>[t.createElementVNode("div",pt,[t.createVNode(h,{ref:"roleGrid",option:e.roleGridOption},null,8,["option"]),t.withDirectives(t.createVNode(d,{fix:""},null,512),[[t.vShow,e.saveingBindRole]])])])),_:1},8,["modelValue"])])),_:1})}],["__scopeId","data-v-ed65a91d"]]),ct=t.defineComponent({name:"LoginLog",components:{},emits:[""],props:{},setup:(e,t)=>new ft(e,t)});class ft extends e.BaseInstance{constructor(e,s){super(),u(this,"props"),u(this,"ctx"),u(this,"loginLogApi",new i.LoginLogApi),u(this,"platformId",0),u(this,"userId",0),u(this,"loginLogGrid",t.ref()),u(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)}}})),u(this,"loadLoginLog",((e,t,i={})=>{this.platformId=e,this.userId=t;const s=o.QueryWrapper.create();s.eq("PlatformId",this.platformId).eq("UserId",this.userId).orderBy(["Id"],!1),this.utilities.isNull(i.IPAddress)||s.like("IPAddress",i.IPAddress);const r=this.utilities.dateHelper.format(i.LoginDate,"YYYY-MM-DD");this.utilities.isNull(i.LoginDate)||s.between("LoginDate",`${r} 00:00:00`,`${r} 23:59:59`),this.loginLogGrid.value.loadDataByQuery(s)})),this.props=e,this.ctx=s}}const gt={class:"loginLog"};const It=c(ct,[["render",function(e,i,o,s,r,l){const a=t.resolveComponent("NvGrid");return t.openBlock(),t.createElementBlock("div",gt,[t.createVNode(a,{ref:"loginLogGrid",option:e.loginLogGridOption},null,8,["option"])])}],["__scopeId","data-v-a0d5af5b"]]),vt={linkParam:{type:String,default:""},operates:{type:String,default:"-"}},wt=t.defineComponent({name:"Userinfor",components:{SelectPlatform:r.SelectPlatform,LoginLog:It,BaseLogin:r.BaseLogin},emits:[""],props:vt,setup:(e,t)=>new yt(e,t)});class yt extends e.BaseInstance{constructor(e,r){super(),u(this,"props"),u(this,"ctx"),u(this,"platformApi",new i.PlatformApi),u(this,"institutionTreeApi",new i.InstitutionTreeApi),u(this,"userinforApi",new i.UserinforApi),u(this,"institutionUserApi",new i.InstitutionUserApi),u(this,"userRoleApi",new i.UserRoleApi),u(this,"institutionPlatformApi",new i.InstitutionPlatformApi),u(this,"roleApi",new i.RoleApi),u(this,"oauthApi",new i.OAuthApi),u(this,"userSignApi",new i.UserSignApi),u(this,"signTaskInfoApi",new l.SignTaskInfoApi),u(this,"selectedPlatform"),u(this,"platId",t.ref(0)),u(this,"platData",t.ref([])),u(this,"spinPlatShow",t.ref(!1)),u(this,"getPlatData",(async()=>{var e;this.spinPlatShow.value=!0;const i=null==(e=this.storageInfo.getCurrentPlatform())?void 0:e.Id,s=await this.platformApi.getEntities(o.QueryWrapper.create().eq("Id",i).or((e=>e.allEq({PId:i}))).orderBy(["OrderNo"]));this.platData.value=this.utilities.parseApiResult(s),this.spinPlatShow.value=!1,this.platData.value.length>0&&(this.platId.value=this.platData.value[0].Id),t.nextTick((()=>{this.doChangePlatform(this.platData.value[0])}))})),u(this,"selectedInsTree"),u(this,"institutionTree",t.ref([])),u(this,"loadingInstitutionTree",t.ref(!1)),u(this,"doChangePlatform",(e=>{const t=this.platData.value.find((e=>e.Id==this.platId.value));this.utilities.isNull(e)||(this.selectedPlatform=t,this.loadInsTree())})),u(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,"[未知节点]"))])]))),u(this,"doChangeInsTree",(e=>{e.length>0&&(this.selectedInsTree=e[0],this.loadInstitutionTreeUsers({}))})),u(this,"doRefreshInsTree",(()=>{this.loadInsTree()})),u(this,"userBoxWidth",t.ref("calc(100% - 300px)")),u(this,"insTreeUserGrid",t.ref()),u(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:13},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(s.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:"resize",text:"重置",onclick:(e,t)=>{this.doResetUserPwd(e.Id)}}]}],event:{event_search:e=>{this.insTreeUserGrid.value.setPageIndex(1),this.loadInstitutionTreeUsers(e)}}})),u(this,"doChangeUserBoxWidth",(e=>{this.userBoxWidth.value=e?"calc(100% - 300px)":"calc(100% - 45px)"})),u(this,"showEditUser",t.ref(!1)),u(this,"saveingUser",t.ref(!1)),u(this,"editUserTitle",t.ref("新增 - 用户")),u(this,"userForm",t.ref()),u(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:0,LastUpdateUserName:"",LastUpdateDate:""})),u(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"}]}])),u(this,"userFormRule",t.reactive({UserName:[{required:!0,message:"姓名不能为空",trigger:"blur"}],Account:[{required:!0,message:"姓名不能为空",trigger:"blur"}]})),u(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,6,7,8,9]\d{9}$/.test(this.userFormModel.Phone))return this.message.warning("手机号格式不正确, 请重新输入!"),void(this.saveingUser.value=!1);const t=o.QueryWrapper.create();t.eq("Phone",this.userFormModel.Phone).eq("IsDel",0),this.userFormModel.Id>0&&t.ne("Id",this.userFormModel.Id);const i=await this.userinforApi.isExist(t);if(e=this.utilities.parseApiResult(i),e)return this.message.warning(`手机号 ${this.userFormModel.Phone} 已关联其他账号, 请重新输入!`),void(this.saveingUser.value=!1)}const t=o.QueryWrapper.create();t.eq("Account",this.userFormModel.Account).eq("IsDel",0),this.userFormModel.Id>0&&t.ne("Id",this.userFormModel.Id);let i=await this.userinforApi.isExist(t);if(e=this.utilities.parseApiResult(i),e)return this.message.warning(`账号 ${this.userFormModel.Account} 已存在, 请重新输入!`),void(this.saveingUser.value=!1);i=await this.userinforApi.save(this.userFormModel),e=this.utilities.parseApiResult(i),0==this.userFormModel.Id&&(await this.institutionUserApi.save({InstitutionId:this.selectedInsTree.InstitutionId,UserId:e,InsTreeId:this.selectedInsTree.Id}),await this.userinforApi.initialUserPwd(e,this.selectedPlatform.Id)),this.saveingUser.value=!1,e>0?(this.message.success("保存成功"),this.insTreeUserGrid.value.refreshData(),this.showEditUser.value=!1):this.message.error(i.msg)})),u(this,"currentUser"),u(this,"showUserRole",t.ref(!1)),u(this,"saveingUserRole",t.ref(!1)),u(this,"userRoleGrid",t.ref()),u(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(s.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"}]})),u(this,"doSaveUserRole",(async()=>{const e=this.userRoleGrid.value.getDatas().filter((e=>1==e.IsChk));this.saveingUserRole.value=!0;let t=await this.userRoleApi.getEntities(o.QueryWrapper.create().eq("UserId",this.currentUser.Id).eq("PlatformId",this.selectedPlatform.Id)),i=this.utilities.parseApiResult(t),s=[];for(const o of e)-1==i.findIndex((e=>e.RoleId==o.Id))&&s.push({PlatformId:this.selectedPlatform.Id,UserId:this.currentUser.Id,RoleId:o.Id});let r=[];for(const o of i)-1==e.findIndex((e=>e.Id==o.RoleId))&&r.push(o.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("保存失败, 请稍后重试!")})),u(this,"showImportUser",t.ref(!1)),u(this,"saveingImportUser",t.ref(!1)),u(this,"otherUserGrid",t.ref()),u(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(s.Tag,{color:i.color},(()=>i.text))}}],event:{event_search:e=>{this.loadImportUserGrid(e)}}})),u(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("导入失败, 请稍后重试!")})),u(this,"showLoginLog",t.ref(!1)),u(this,"loginLogRef",t.ref()),u(this,"doShowLoginLog",(e=>{this.showLoginLog.value=!0,this.loginLogRef.value.loadLoginLog(this.selectedPlatform.Id,e.Id)})),u(this,"loginRef",t.ref()),u(this,"logining",t.ref(!1)),u(this,"showEditUserSign",t.ref(!1)),u(this,"saveingUserSign",t.ref(!1)),u(this,"userSignForm",t.ref()),u(this,"userSignFormModel",t.reactive({Id:0,UserId:0,CAUserInfoKey:"",CAUserSealKey:"",CAUserYZKey:"",CAUserSealImg:"",CAUserYZImg:""})),u(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}])),u(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("保存失败,请稍后重试")})),u(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("读取失败,请稍后重试")})),u(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=r,this.initData()}initData(){t.onMounted((()=>{this.getPlatData()})),t.onUnmounted((()=>{}))}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){const t=this.storageInfo.getUser();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=t.Id,this.userFormModel.LastUpdateUserName=t.UserName,this.userFormModel.LastUpdateDate=this.utilities.getCurrentDate(),this.editUserTitle.value="编辑用户 - "+e.UserName,this.showEditUser.value=!0}doAddUser(){const e=this.storageInfo.getUser();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 t=this.utilities.getCurrentDate();t=this.utilities.dateHelper.format(this.utilities.dateHelper.add(this.utilities.stringHelper.toDate(t),1,"years"),"YYYY-MM-DD"),this.userFormModel.ExpiredDate=t,this.userFormModel.IsMutex=0,this.userFormModel.PwdAuthentication=0,this.userFormModel.LastUpdateUserId=e.Id,this.userFormModel.LastUpdateUserName=e.UserName,this.userFormModel.LastUpdateDate=this.utilities.getCurrentDate(),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(o.QueryWrapper.create().eq("UserId",this.currentUser.Id).eq("PlatformId",this.selectedPlatform.Id)),i=this.utilities.parseApiResult(t);t=await this.institutionPlatformApi.getEntityByFilter(o.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(o.QueryWrapper.create().in("Id",s.RoleIds.split(",")));let r=this.utilities.parseApiResult(t);for(const o of r){const e=!this.utilities.isNull(i)&&i.findIndex((e=>e.RoleId==o.Id))>=0;o.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(o.QueryWrapper.create().eq("UserId",e.Id)),i=this.utilities.parseApiResult(t);this.utilities.isNull(i)?(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=i.Id,this.userSignFormModel.UserId=i.UserId,this.userSignFormModel.CAUserInfoKey=i.CAUserInfoKey,this.userSignFormModel.CAUserSealKey=i.CAUserSealKey,this.userSignFormModel.CAUserYZKey=i.CAUserYZKey,this.userSignFormModel.CAUserSealImg=i.CAUserSealImg,this.userSignFormModel.CAUserYZImg=i.CAUserYZImg)}doResetUserPwd(e){this.modal.confirm({title:"提示",content:"确定要重置为初始密码吗?",onOk:async()=>{const t=await this.userinforApi.resetUserPwd(e);this.utilities.parseApiResult(t)>0?this.message.success("重置成功"):this.message.error("操作失败,请稍后重试")}})}}const Ct=e=>(t.pushScopeId("data-v-4827d4a9"),e=e(),t.popScopeId(),e),Nt={class:"instree-search"},Mt={class:"instree-list"},xt={style:{height:"600px","overflow-y":"auto"}},Pt=Ct((()=>t.createElementVNode("div",{style:{"margin-left":"16px",color:"#ff9900"}},[t.createElementVNode("div",{style:{"padding-bottom":"8px"}},"用户账号:手机号必填。在新设备登录时,需进行短信验证。"),t.createElementVNode("div",null,"内部账号:手机号可不填。")],-1))),Ut={style:{height:"600px","overflow-y":"auto"}},At=Ct((()=>t.createElementVNode("div",{class:"primary-color gird-tip"},"勾选绑定用户角色!",-1))),Tt={style:{height:"650px","overflow-y":"auto"}},Ft=Ct((()=>t.createElementVNode("div",{class:"primary-color gird-tip"},"勾选需要引入的用户!",-1))),bt={style:{height:"650px","overflow-y":"auto"}},St={style:{display:"none"}},Rt={style:{height:"400px","overflow-y":"auto"}},Vt=["src"],kt=["src"];const Dt=c(wt,[["render",function(e,i,o,s,r,l){const a=t.resolveComponent("Option"),n=t.resolveComponent("Select"),d=t.resolveComponent("Spin"),u=t.resolveComponent("NvControlGroup"),h=t.resolveComponent("Tree"),p=t.resolveComponent("Button"),m=t.resolveComponent("Space"),c=t.resolveComponent("NvBox"),f=t.resolveComponent("NvGrid"),g=t.resolveComponent("NvComForm"),I=t.resolveComponent("Form"),v=t.resolveComponent("Modal"),w=t.resolveComponent("LoginLog"),y=t.resolveComponent("BaseLogin"),C=t.resolveComponent("FormItem"),N=t.resolveComponent("NvPage");return t.openBlock(),t.createBlock(N,{gutter:8,class:"userinfor"},{default:t.withCtx((()=>[t.createVNode(c,{width:"300px",title:"组织机构树",showArrow:!0,onChange:e.doChangeUserBoxWidth},{footer:t.withCtx((()=>[t.createVNode(m,null,{default:t.withCtx((()=>[t.createVNode(p,{type:"text",onClick:e.doRefreshInsTree},{default:t.withCtx((()=>[t.createTextVNode("刷新")])),_:1},8,["onClick"])])),_:1})])),default:t.withCtx((()=>[t.createElementVNode("div",Nt,[t.createVNode(u,{width:"100%",icon:"md-refresh",label:"系统平台",labelWidth:75,onClick:e.getPlatData},{default:t.withCtx((()=>[t.createVNode(n,{modelValue:e.platId,"onUpdate:modelValue":i[0]||(i[0]=t=>e.platId=t),onOnChange:e.doChangePlatform,transfer:""},{default:t.withCtx((()=>[(t.openBlock(!0),t.createElementBlock(t.Fragment,null,t.renderList(e.platData,((e,i)=>(t.openBlock(),t.createBlock(a,{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.spinPlatShow},null,8,["show"])])),_:1},8,["onClick"])]),t.createElementVNode("div",Mt,[t.createVNode(h,{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(c,{width:e.userBoxWidth,title:"用户列表"},{default:t.withCtx((()=>[t.createVNode(f,{ref:"insTreeUserGrid",option:e.insTreeUserGridOption},null,8,["option"])])),_:1},8,["width"]),t.createVNode(v,{modelValue:e.showEditUser,"onUpdate:modelValue":i[2]||(i[2]=t=>e.showEditUser=t),draggable:"",mask:!0,"mask-closable":!1,width:850,title:e.editUserTitle,styles:{top:"3%"}},{footer:t.withCtx((()=>[t.createVNode(p,{type:"text",onClick:i[1]||(i[1]=t=>e.showEditUser=!1)},{default:t.withCtx((()=>[t.createTextVNode("关闭")])),_:1}),t.createVNode(p,{type:"primary",loading:e.saveingUser,onClick:e.doSaveUser},{default:t.withCtx((()=>[t.createTextVNode("保存")])),_:1},8,["loading","onClick"])])),default:t.withCtx((()=>[t.createElementVNode("div",xt,[t.createVNode(I,{ref:"userForm",model:e.userFormModel,"label-width":120,rules:e.userFormRule},{default:t.withCtx((()=>[t.createVNode(g,{ref:"userComForm",formModel:e.userFormModel,formItems:e.userFormItems},null,8,["formModel","formItems"])])),_:1},8,["model","rules"]),Pt])])),_:1},8,["modelValue","title"]),t.createVNode(v,{modelValue:e.showUserRole,"onUpdate:modelValue":i[4]||(i[4]=t=>e.showUserRole=t),draggable:"",mask:!0,"mask-closable":!1,width:850,title:"定岗",styles:{top:"3%"}},{footer:t.withCtx((()=>[t.createVNode(p,{type:"text",onClick:i[3]||(i[3]=t=>e.showUserRole=!1)},{default:t.withCtx((()=>[t.createTextVNode("关闭")])),_:1}),t.createVNode(p,{type:"primary",loading:e.saveingUserRole,onClick:e.doSaveUserRole},{default:t.withCtx((()=>[t.createTextVNode("保存")])),_:1},8,["loading","onClick"])])),default:t.withCtx((()=>[t.createElementVNode("div",Ut,[t.createVNode(f,{ref:"userRoleGrid",option:e.userRoleGridOption},{default:t.withCtx((()=>[At])),_:1},8,["option"])])])),_:1},8,["modelValue"]),t.createVNode(v,{modelValue:e.showImportUser,"onUpdate:modelValue":i[6]||(i[6]=t=>e.showImportUser=t),draggable:"",mask:!0,"mask-closable":!1,width:800,title:"引入用户",styles:{top:"3%"}},{footer:t.withCtx((()=>[t.createVNode(p,{type:"text",onClick:i[5]||(i[5]=t=>e.showImportUser=!1)},{default:t.withCtx((()=>[t.createTextVNode("关闭")])),_:1}),t.createVNode(p,{type:"primary",loading:e.saveingImportUser,onClick:e.doImportUser},{default:t.withCtx((()=>[t.createTextVNode("引入")])),_:1},8,["loading","onClick"])])),default:t.withCtx((()=>[t.createElementVNode("div",Tt,[t.createVNode(f,{ref:"otherUserGrid",option:e.otherUserGridOption},{default:t.withCtx((()=>[Ft])),_:1},8,["option"])])])),_:1},8,["modelValue"]),t.createVNode(v,{modelValue:e.showLoginLog,"onUpdate:modelValue":i[8]||(i[8]=t=>e.showLoginLog=t),draggable:"",mask:!0,"mask-closable":!1,width:800,title:"登录日志",styles:{top:"3%"}},{footer:t.withCtx((()=>[t.createVNode(p,{type:"text",onClick:i[7]||(i[7]=t=>e.showLoginLog=!1)},{default:t.withCtx((()=>[t.createTextVNode("关闭")])),_:1})])),default:t.withCtx((()=>[t.createElementVNode("div",bt,[t.createVNode(w,{ref:"loginLogRef"},null,512)])])),_:1},8,["modelValue"]),t.createVNode(d,{size:"large",fix:"",show:e.logining},null,8,["show"]),t.createElementVNode("div",St,[t.createVNode(y,{ref:"loginRef",autoLogin:!1},null,512)]),t.createVNode(v,{modelValue:e.showEditUserSign,"onUpdate:modelValue":i[10]||(i[10]=t=>e.showEditUserSign=t),draggable:"",mask:!0,"mask-closable":!1,width:440,title:"编辑签字信息",styles:{top:"3%"}},{footer:t.withCtx((()=>[t.createVNode(p,{type:"text",onClick:i[9]||(i[9]=t=>e.showEditUserSign=!1)},{default:t.withCtx((()=>[t.createTextVNode("关闭")])),_:1}),t.createVNode(p,{type:"primary",loading:e.saveingUserSign,onClick:e.doSaveUserSign},{default:t.withCtx((()=>[t.createTextVNode("保存")])),_:1},8,["loading","onClick"])])),default:t.withCtx((()=>[t.createElementVNode("div",Rt,[t.createVNode(I,{ref:"userSignForm",model:e.userSignFormModel,"label-width":85},{default:t.withCtx((()=>[t.createVNode(g,{ref:"userSignComForm",formModel:e.userSignFormModel,formItems:e.userSignFormItems},null,8,["formModel","formItems"]),t.createVNode(C,{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,Vt)):t.createCommentVNode("",!0),t.createVNode(p,{type:"primary",style:{float:"right"},onClick:e.doLoadUserSealImg},{default:t.withCtx((()=>[t.createTextVNode("加载")])),_:1},8,["onClick"])])),_:1}),t.createVNode(C,{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,kt)):t.createCommentVNode("",!0),t.createVNode(p,{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-4827d4a9"]]),Et={linkParam:{type:String,default:""},operates:{type:String,default:"-"}},Gt=t.defineComponent({name:"Module",components:{SelectPlatform:r.SelectPlatform},emits:["change"],props:Et,setup:(e,t)=>new Ot(e,t)});class Ot extends e.BaseInstance{constructor(e,r){super(),u(this,"props"),u(this,"ctx"),u(this,"platformApi",new i.PlatformApi),u(this,"moduleApi",new i.ModuleApi),u(this,"selectedPlatform"),u(this,"platId",t.ref(0)),u(this,"platData",t.ref([])),u(this,"spinPlatShow",t.ref(!1)),u(this,"getPlatData",(async()=>{var e;this.spinPlatShow.value=!0;const i=null==(e=this.storageInfo.getCurrentPlatform())?void 0:e.Id,s=await this.platformApi.getEntities(o.QueryWrapper.create().eq("Id",i).or((e=>e.allEq({PId:i}))).orderBy(["OrderNo"]));this.platData.value=this.utilities.parseApiResult(s),this.spinPlatShow.value=!1,this.platData.value.length>0&&(this.platId.value=this.platData.value[0].Id,t.nextTick((()=>{this.doPlatformChange(this.platData.value[0])})))})),u(this,"moduleWidth",t.ref("calc(100% - 300px)")),u(this,"webOrApp",t.ref(0)),u(this,"moduleGrid",t.ref()),u(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},{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(s.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(s.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(s.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=o.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)}}})),u(this,"doPlatformChange",(e=>{const t=this.platData.value.find((e=>e.Id==this.platId.value));this.utilities.isNull(t)||(this.selectedPlatform=t,this.loadModuleGridData())})),u(this,"loadModuleGridData",(()=>{this.moduleGrid.value.loadDataByQuery(o.QueryWrapper.create().eq("PlatformId",this.selectedPlatform.Id).eq("WebOrApp",this.webOrApp.value).orderBy(["OrderNo"]))})),u(this,"doChangeModuleWidth",(e=>{this.moduleWidth.value=e?"calc(100% - 300px)":"calc(100% - 45px)"})),u(this,"parentModule"),u(this,"editModulePId",0),u(this,"editModuleChildData",[]),u(this,"saveingModule",t.ref(!1)),u(this,"moduleComForm",t.ref()),u(this,"showEditModule",t.ref(!1)),u(this,"editMoudelModalTitle",t.ref("新增 - 模块")),u(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:0,LastUpdateUserName:"",LastUpdateDate:""})),u(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: '编辑' }]"}}]}])),u(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 i=this.editModuleChildData;this.editModulePId>0&&(e=await this.moduleApi.getCount(o.QueryWrapper.create().eq("PId",this.editModulePId)),t=this.utilities.parseApiResult(e),i.push({Id:this.editModulePId,HasChild:t>0?1:0})),await this.moduleApi.saves(i)}this.message.success("保存成功!"),this.moduleGrid.value.refreshData(),this.saveingModule.value=!1,this.showEditModule.value=!1})),u(this,"showImportModule",t.ref(!1)),u(this,"saveingImportModule",t.ref(!1)),u(this,"originPlatform",t.reactive({list:[],selectedItem:{Id:0,PlatformName:""},selectedId:0})),u(this,"originModuleGrid",t.ref()),u(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(s.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(s.Tag,{color:i.color},(()=>i.text))}}],event:{event_search:e=>{const t=o.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)}}})),u(this,"targetPlatform",t.reactive({Id:0,PlatformName:""})),u(this,"targetModuleGrid",t.ref()),u(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(s.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(s.Tag,{color:i.color},(()=>i.text))}}],event:{event_search:e=>{const t=o.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)}}})),u(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()})),u(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=r,this.initData()}initData(){t.onMounted((()=>{this.getPlatData()})),t.onUnmounted((()=>{}))}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){const t=this.storageInfo.getUser();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=t.Id,this.moduleFormModel.LastUpdateUserName=t.UserName,this.moduleFormModel.LastUpdateDate=this.utilities.getCurrentDate(),this.parentModule=void 0,this.editModulePId=e.PId,this.editModuleChildData=[],this.editMoudelModalTitle.value=`编辑 - 模块 - ${e.ModuleName}`,this.setParentModuleTreeItem(!0),this.showEditModule.value=!0}doAddModule(){const e=this.storageInfo.getUser();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=e.Id,this.moduleFormModel.LastUpdateUserName=e.UserName,this.moduleFormModel.LastUpdateDate=this.utilities.getCurrentDate(),this.parentModule=void 0,this.setParentModuleTreeItem(!1),this.editMoudelModalTitle.value="新增 - 模块",this.showEditModule.value=!0}doAddChildModule(e){const t=this.storageInfo.getUser();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=t.Id,this.moduleFormModel.LastUpdateUserName=t.UserName,this.moduleFormModel.LastUpdateDate=this.utilities.getCurrentDate(),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 i=await this.moduleApi.delete(e.Id),s=this.utilities.parseApiResult(i);s<=0?this.message.warning("删除失败,请稍后重试!"):(i=await this.moduleApi.getCount(o.QueryWrapper.create().eq("PId",t)),s=this.utilities.parseApiResult(i),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(){var e;const i=null==(e=this.storageInfo.getCurrentPlatform())?void 0:e.Id,s=await this.platformApi.getEntities(o.QueryWrapper.create().eq("Id",i).ne("Id",this.selectedPlatform.Id).or((e=>e.allEq({PId:i}))).orderBy(["OrderNo"]));this.originPlatform.list=this.utilities.parseApiResult(s),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=o.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=o.QueryWrapper.create().eq("PlatformId",this.targetPlatform.Id).eq("WebOrApp",this.webOrApp.value).orderBy(["OrderNo"]),i=await this.moduleApi.getEntities(t),s=this.utilities.parseApiResult(i),r={Id:0,PId:-1,ModuleName:"根节点",ModuleType:"",PlatformId:this.targetPlatform.Id,IconUrl:""};s.push(r),e.success(s)}))}}const Lt={style:{height:"650px","overflow-y":"auto"}},Bt={class:"import-module",style:{height:"650px",position:"relative"}},_t={style:{width:"100%",height:"100%"}},Wt={style:{width:"560px",height:"100%",float:"left"}},qt={style:{height:"calc(100% - 0px)"}},Kt={style:{width:"calc(100% - 570px)",height:"100%","margin-left":"10px",display:"inline-block"}},Qt={style:{height:"calc(100% - 0px)"}},Yt=(e=>(t.pushScopeId("data-v-23a8ab5f"),e=e(),t.popScopeId(),e))((()=>t.createElementVNode("div",{class:"primary-color gird-tip"},"点击选择要放置的位置!",-1)));const Ht=c(Gt,[["render",function(e,i,o,s,r,l){const a=t.resolveComponent("Option"),n=t.resolveComponent("Select"),d=t.resolveComponent("Spin"),u=t.resolveComponent("NvControlGroup"),h=t.resolveComponent("Radio"),p=t.resolveComponent("RadioGroup"),m=t.resolveComponent("NvGrid"),c=t.resolveComponent("NvComForm"),f=t.resolveComponent("Form"),g=t.resolveComponent("Button"),I=t.resolveComponent("Modal"),v=t.resolveComponent("Card"),w=t.resolveComponent("NvBox"),y=t.resolveComponent("NvPage");return t.openBlock(),t.createBlock(y,{gutter:8,class:"module"},{default:t.withCtx((()=>[t.createVNode(w,{width:"100%",title:"模块列表"},{default:t.withCtx((()=>[t.createVNode(m,{ref:"moduleGrid",option:e.moduleGridOption},{default:t.withCtx((()=>[t.createVNode(u,{width:"380px",icon:"md-refresh",label:"系统平台",labelWidth:75,onClick:e.getPlatData},{default:t.withCtx((()=>[t.createVNode(n,{modelValue:e.platId,"onUpdate:modelValue":i[0]||(i[0]=t=>e.platId=t),onOnChange:e.doPlatformChange,transfer:""},{default:t.withCtx((()=>[(t.openBlock(!0),t.createElementBlock(t.Fragment,null,t.renderList(e.platData,((e,i)=>(t.openBlock(),t.createBlock(a,{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.spinPlatShow},null,8,["show"])])),_:1},8,["onClick"]),t.createVNode(p,{modelValue:e.webOrApp,"onUpdate:modelValue":i[1]||(i[1]=t=>e.webOrApp=t),type:"button",onOnChange:e.loadModuleGridData},{default:t.withCtx((()=>[t.createVNode(h,{label:0},{default:t.withCtx((()=>[t.createTextVNode("Web")])),_:1}),t.createVNode(h,{label:1},{default:t.withCtx((()=>[t.createTextVNode("App")])),_:1})])),_:1},8,["modelValue","onOnChange"])])),_:1},8,["option"]),t.createVNode(I,{modelValue:e.showEditModule,"onUpdate:modelValue":i[3]||(i[3]=t=>e.showEditModule=t),draggable:"",mask:!0,"mask-closable":!1,width:700,title:e.editMoudelModalTitle,styles:{top:"3%"}},{footer:t.withCtx((()=>[t.createVNode(g,{type:"text",onClick:i[2]||(i[2]=t=>e.showEditModule=!1)},{default:t.withCtx((()=>[t.createTextVNode("关闭")])),_:1}),t.createVNode(g,{type:"primary",loading:e.saveingModule,onClick:e.doSaveModule},{default:t.withCtx((()=>[t.createTextVNode("保存")])),_:1},8,["loading","onClick"])])),default:t.withCtx((()=>[t.createElementVNode("div",Lt,[t.createVNode(f,{model:e.moduleFormModel,"label-width":90},{default:t.withCtx((()=>[t.createVNode(c,{ref:"moduleComForm",formModel:e.moduleFormModel,formItems:e.moduleFormItems},null,8,["formModel","formItems"])])),_:1},8,["model"])])])),_:1},8,["modelValue","title"]),t.createVNode(I,{modelValue:e.showImportModule,"onUpdate:modelValue":i[6]||(i[6]=t=>e.showImportModule=t),draggable:"",mask:!0,"mask-closable":!1,width:1300,title:"引入模块",styles:{top:"3%"}},{footer:t.withCtx((()=>[t.createVNode(g,{type:"text",onClick:i[5]||(i[5]=t=>e.showImportModule=!1)},{default:t.withCtx((()=>[t.createTextVNode("关闭")])),_:1}),t.createVNode(g,{type:"primary",loading:e.saveingImportModule,onClick:e.doImportOriginToTargetModule},{default:t.withCtx((()=>[t.createTextVNode("引入")])),_:1},8,["loading","onClick"])])),default:t.withCtx((()=>[t.createElementVNode("div",Bt,[t.createElementVNode("div",_t,[t.createElementVNode("div",Wt,[t.createVNode(v,{"dis-hover":"",class:"import-module_card"},{title:t.withCtx((()=>[t.createTextVNode("源平台 - ["+t.toDisplayString(e.originPlatform.selectedItem.PlatformName)+"] - 模块菜单",1)])),default:t.withCtx((()=>[t.createElementVNode("div",qt,[t.createVNode(m,{ref:"originModuleGrid",option:e.originModuleGridOption},{default:t.withCtx((()=>[t.createVNode(n,{modelValue:e.originPlatform.selectedId,"onUpdate:modelValue":i[4]||(i[4]=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(a,{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",Kt,[t.createVNode(v,{"dis-hover":"",class:"import-module_card"},{title:t.withCtx((()=>[t.createTextVNode("目标平台 - ["+t.toDisplayString(e.targetPlatform.PlatformName)+"] - 模块菜单",1)])),default:t.withCtx((()=>[t.createElementVNode("div",Qt,[t.createVNode(m,{ref:"targetModuleGrid",option:e.targetModuleGridOption},{default:t.withCtx((()=>[Yt])),_:1},8,["option"])])])),_:1})]),t.withDirectives(t.createVNode(d,{fix:""},null,512),[[t.vShow,e.saveingImportModule]])])])])),_:1},8,["modelValue"])])),_:1})])),_:1})}],["__scopeId","data-v-23a8ab5f"]]),zt={linkParam:{type:String,default:""},operates:{type:String,default:"-"}},Zt=t.defineComponent({name:"ProjectUserinfor",components:{SelectPlatform:r.SelectPlatform,LoginLog:It,BaseLogin:r.BaseLogin},emits:[""],props:zt,setup:(e,t)=>new $t(e,t)});class $t extends e.BaseInstance{constructor(e,r){super(),u(this,"props"),u(this,"ctx"),u(this,"platformApi",new i.PlatformApi),u(this,"institutionTreeApi",new i.InstitutionTreeApi),u(this,"userinforApi",new i.UserinforApi),u(this,"institutionUserApi",new i.InstitutionUserApi),u(this,"userRoleApi",new i.UserRoleApi),u(this,"institutionPlatformApi",new i.InstitutionPlatformApi),u(this,"roleApi",new i.RoleApi),u(this,"oauthApi",new i.OAuthApi),u(this,"userSignApi",new i.UserSignApi),u(this,"signTaskInfoApi",new l.SignTaskInfoApi),u(this,"selectedPlatform"),u(this,"platId",t.ref(0)),u(this,"platData",t.ref([])),u(this,"spinPlatShow",t.ref(!1)),u(this,"getPlatData",(async()=>{var e;this.spinPlatShow.value=!0;const i=null==(e=this.storageInfo.getCurrentPlatform())?void 0:e.Id,s=await this.platformApi.getEntities(o.QueryWrapper.create().eq("Id",i).or((e=>e.allEq({PId:i}))).orderBy(["OrderNo"]));this.platData.value=this.utilities.parseApiResult(s),this.spinPlatShow.value=!1,this.platData.value.length>0&&(this.platId.value=this.platData.value[0].Id),t.nextTick((()=>{this.doChangePlatform(this.platData.value[0])}))})),u(this,"selectedInsTree"),u(this,"institutionTree",t.ref([])),u(this,"loadingInstitutionTree",t.ref(!1)),u(this,"doChangePlatform",(e=>{const t=this.platData.value.find((e=>e.Id==this.platId.value));this.utilities.isNull(e)||(this.selectedPlatform=t,this.loadInsTree())})),u(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,"[未知节点]"))])]))),u(this,"doChangeInsTree",(e=>{e.length>0&&(this.selectedInsTree=e[0],this.loadInstitutionTreeUsers({}))})),u(this,"doRefreshInsTree",(()=>{this.loadInsTree()})),u(this,"userBoxWidth",t.ref("calc(100% - 300px)")),u(this,"insTreeUserGrid",t.ref()),u(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:13},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()}}],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(s.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:150,rowButtons:[{name:"userSign",text:"签字",onclick:(e,t)=>{this.doShowEditUserSign(e)}},{name:"resize",text:"重置",onclick:(e,t)=>{this.doResetUserPwd(e.Id)}}]}],event:{event_search:e=>{this.insTreeUserGrid.value.setPageIndex(1),this.loadInstitutionTreeUsers(e)}}})),u(this,"doChangeUserBoxWidth",(e=>{this.userBoxWidth.value=e?"calc(100% - 300px)":"calc(100% - 45px)"})),u(this,"showEditUser",t.ref(!1)),u(this,"saveingUser",t.ref(!1)),u(this,"editUserTitle",t.ref("新增 - 用户")),u(this,"userForm",t.ref()),u(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:0,LastUpdateUserName:"",LastUpdateDate:""})),u(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",prop:"Phone"},{model:"Sex",label:"性别",type:"Select",selectProp:{datas:[{text:"男",value:1},{text:"女",value:2},{text:"其他",value:3}],transfer:!0}}]},{model:"",label:"账号信息",span:24,children:[{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"},{model:"WechatOpenId",label:"微信授权Id",type:"Input"}]}])),u(this,"userFormRule",t.reactive({UserName:[{required:!0,message:"姓名不能为空",trigger:"blur"}],Account:[{required:!0,message:"账号不能为空",trigger:"blur"}],Phone:[{required:!0,validator:this.validPhone,trigger:"blur"}]})),u(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=o.QueryWrapper.create();t.eq("Phone",this.userFormModel.Phone).eq("IsDel",0),this.userFormModel.Id>0&&t.ne("Id",this.userFormModel.Id);const i=await this.userinforApi.isExist(t);if(e=this.utilities.parseApiResult(i),e)return this.message.warning(`手机号 ${this.userFormModel.Phone} 已关联其他账号, 请重新输入!`),void(this.saveingUser.value=!1)}const t=o.QueryWrapper.create();t.eq("Account",this.userFormModel.Account).eq("IsDel",0),this.userFormModel.Id>0&&t.ne("Id",this.userFormModel.Id);let i=await this.userinforApi.isExist(t);if(e=this.utilities.parseApiResult(i),e)return this.message.warning(`账号 ${this.userFormModel.Account} 已存在, 请重新输入!`),void(this.saveingUser.value=!1);i=await this.userinforApi.save(this.userFormModel),e=this.utilities.parseApiResult(i),0==this.userFormModel.Id&&(await this.institutionUserApi.save({InstitutionId:this.selectedInsTree.InstitutionId,UserId:e,InsTreeId:this.selectedInsTree.Id}),await this.userinforApi.initialUserPwd(e,this.selectedPlatform.Id)),this.saveingUser.value=!1,e>0?(this.message.success("保存成功"),this.insTreeUserGrid.value.refreshData(),this.showEditUser.value=!1):this.message.error(i.msg)})),u(this,"currentUser"),u(this,"showUserRole",t.ref(!1)),u(this,"saveingUserRole",t.ref(!1)),u(this,"userRoleGrid",t.ref()),u(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(s.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"}]})),u(this,"doSaveUserRole",(async()=>{const e=this.userRoleGrid.value.getDatas().filter((e=>1==e.IsChk));this.saveingUserRole.value=!0;let t=await this.userRoleApi.getEntities(o.QueryWrapper.create().eq("UserId",this.currentUser.Id).eq("PlatformId",this.selectedPlatform.Id)),i=this.utilities.parseApiResult(t),s=[];for(const o of e)-1==i.findIndex((e=>e.RoleId==o.Id))&&s.push({PlatformId:this.selectedPlatform.Id,UserId:this.currentUser.Id,RoleId:o.Id});let r=[];for(const o of i)-1==e.findIndex((e=>e.Id==o.RoleId))&&r.push(o.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("保存失败, 请稍后重试!")})),u(this,"showImportUser",t.ref(!1)),u(this,"saveingImportUser",t.ref(!1)),u(this,"otherUserGrid",t.ref()),u(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(s.Tag,{color:i.color},(()=>i.text))}}],event:{event_search:e=>{this.loadImportUserGrid(e)}}})),u(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("导入失败, 请稍后重试!")})),u(this,"showLoginLog",t.ref(!1)),u(this,"loginLogRef",t.ref()),u(this,"doShowLoginLog",(e=>{this.showLoginLog.value=!0,this.loginLogRef.value.loadLoginLog(this.selectedPlatform.Id,e.Id)})),u(this,"loginRef",t.ref()),u(this,"logining",t.ref(!1)),u(this,"showEditUserSign",t.ref(!1)),u(this,"saveingUserSign",t.ref(!1)),u(this,"userSignForm",t.ref()),u(this,"userSignFormModel",t.reactive({Id:0,UserId:0,CAUserInfoKey:"",CAUserSealKey:"",CAUserYZKey:"",CAUserSealImg:"",CAUserYZImg:""})),u(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}])),u(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("保存失败,请稍后重试")})),u(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("读取失败,请稍后重试")})),u(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=r,this.initData()}initData(){t.onMounted((()=>{this.getPlatData()})),t.onUnmounted((()=>{}))}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){const t=this.storageInfo.getUser();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=t.Id,this.userFormModel.LastUpdateUserName=t.UserName,this.userFormModel.LastUpdateDate=this.utilities.getCurrentDate(),this.editUserTitle.value="编辑用户 - "+e.UserName,this.showEditUser.value=!0}doAddUser(){const e=this.storageInfo.getUser();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=0,this.userFormModel.AccountStatus=1,this.userFormModel.ErrorNum=0;let t=this.utilities.getCurrentDate();t=this.utilities.dateHelper.format(this.utilities.dateHelper.add(this.utilities.stringHelper.toDate(t),1,"years"),"YYYY-MM-DD"),this.userFormModel.ExpiredDate=t,this.userFormModel.IsMutex=0,this.userFormModel.PwdAuthentication=0,this.userFormModel.LastUpdateUserId=e.Id,this.userFormModel.LastUpdateUserName=e.UserName,this.userFormModel.LastUpdateDate=this.utilities.getCurrentDate(),this.editUserTitle.value="新增 - 用户",this.showEditUser.value=!0}doDeleteUser(e){this.modal.confirm({title:"提示",content:`确定要移除用户${e.UserName}吗?`,onOk:async()=>{const t=await this.userinforApi.save({Id:e.Id,IsDel:1});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(o.QueryWrapper.create().eq("UserId",this.currentUser.Id).eq("PlatformId",this.selectedPlatform.Id)),i=this.utilities.parseApiResult(t);t=await this.institutionPlatformApi.getEntityByFilter(o.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(o.QueryWrapper.create().in("Id",s.RoleIds.split(",")));let r=this.utilities.parseApiResult(t);for(const o of r){const e=!this.utilities.isNull(i)&&i.findIndex((e=>e.RoleId==o.Id))>=0;o.IsChk=e}e.success(r)}))}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)}doResetUserPwd(e){this.modal.confirm({title:"提示",content:"确定要重置为初始密码吗?",onOk:async()=>{const t=await this.userinforApi.resetUserPwd(e);this.utilities.parseApiResult(t)>0?this.message.success("重置成功"):this.message.error("操作失败,请稍后重试")}})}async doShowEditUserSign(e){this.showEditUserSign.value=!0;const t=await this.userSignApi.getEntityByFilter(o.QueryWrapper.create().eq("UserId",e.Id)),i=this.utilities.parseApiResult(t);this.utilities.isNull(i)?(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=i.Id,this.userSignFormModel.UserId=i.UserId,this.userSignFormModel.CAUserInfoKey=i.CAUserInfoKey,this.userSignFormModel.CAUserSealKey=i.CAUserSealKey,this.userSignFormModel.CAUserYZKey=i.CAUserYZKey,this.userSignFormModel.CAUserSealImg=i.CAUserSealImg,this.userSignFormModel.CAUserYZImg=i.CAUserYZImg)}validPhone(e,t,i){if(!t)return i(new Error("手机号不能为空"));/^1[3456789]\d{9}$/.test(t)?i():i("手机号格式不正确!")}}const jt=e=>(t.pushScopeId("data-v-86385f96"),e=e(),t.popScopeId(),e),Jt={class:"instree-search"},Xt={class:"instree-list"},ei={style:{height:"600px","overflow-y":"auto"}},ti=jt((()=>t.createElementVNode("div",{style:{"margin-left":"16px",color:"#ff9900"}},[t.createElementVNode("div",{style:{"padding-bottom":"8px"}},"用户账号:手机号必填。在新设备登录时,需进行短信验证。"),t.createElementVNode("div",null,"内部账号:手机号可不填。")],-1))),ii={style:{height:"600px","overflow-y":"auto"}},oi=jt((()=>t.createElementVNode("div",{class:"primary-color gird-tip"},"勾选绑定用户角色!",-1))),si={style:{height:"650px","overflow-y":"auto"}},ri={style:{display:"none"}},li={style:{height:"400px","overflow-y":"auto"}},ai=["src"],ni=["src"];return[{path:"/permission-service/platform/platform",component:v},{path:"/permission-service/platform/module",component:b},{path:"/permission-service/platform/role",component:O},{path:"/permission-service/institution/institutiontype",component:q},{path:"/permission-service/institution/institution",component:X},{path:"/permission-service/institution/userinfor",component:Ce},{path:"/permission-service/institution/enterprise",component:Ue},{path:"/permission-service/thirdparty/information",component:ke},{path:"/permission-service/platform/subplatform",component:Ke},{path:"/permission-service/platform/subrole",component:Je},{path:"/permission-service/institution/subenterprise",component:ot},{path:"/permission-service/institution/subinstitution",component:mt},{path:"/permission-service/institution/subuserinfor",component:Dt},{path:"/permission-service/institution/projectUserinfor",component:c(Zt,[["render",function(e,i,o,s,r,l){const a=t.resolveComponent("Option"),n=t.resolveComponent("Select"),d=t.resolveComponent("Spin"),u=t.resolveComponent("NvControlGroup"),h=t.resolveComponent("Tree"),p=t.resolveComponent("Button"),m=t.resolveComponent("Space"),c=t.resolveComponent("NvBox"),f=t.resolveComponent("NvGrid"),g=t.resolveComponent("NvComForm"),I=t.resolveComponent("Form"),v=t.resolveComponent("Modal"),w=t.resolveComponent("LoginLog"),y=t.resolveComponent("BaseLogin"),C=t.resolveComponent("FormItem"),N=t.resolveComponent("NvPage");return t.openBlock(),t.createBlock(N,{gutter:8,class:"userinfor"},{default:t.withCtx((()=>[t.createVNode(c,{width:"300px",title:"组织机构树",showArrow:!0,onChange:e.doChangeUserBoxWidth},{footer:t.withCtx((()=>[t.createVNode(m,null,{default:t.withCtx((()=>[t.createVNode(p,{type:"text",onClick:e.doRefreshInsTree},{default:t.withCtx((()=>[t.createTextVNode("刷新")])),_:1},8,["onClick"])])),_:1})])),default:t.withCtx((()=>[t.createElementVNode("div",Jt,[t.createVNode(u,{width:"100%",icon:"md-refresh",label:"系统平台",labelWidth:75,onClick:e.getPlatData},{default:t.withCtx((()=>[t.createVNode(n,{modelValue:e.platId,"onUpdate:modelValue":i[0]||(i[0]=t=>e.platId=t),onOnChange:e.doChangePlatform,transfer:""},{default:t.withCtx((()=>[(t.openBlock(!0),t.createElementBlock(t.Fragment,null,t.renderList(e.platData,((e,i)=>(t.openBlock(),t.createBlock(a,{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.spinPlatShow},null,8,["show"])])),_:1},8,["onClick"])]),t.createElementVNode("div",Xt,[t.createVNode(h,{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(c,{width:e.userBoxWidth,title:"用户列表"},{default:t.withCtx((()=>[t.createVNode(f,{ref:"insTreeUserGrid",option:e.insTreeUserGridOption},null,8,["option"])])),_:1},8,["width"]),t.createVNode(v,{modelValue:e.showEditUser,"onUpdate:modelValue":i[2]||(i[2]=t=>e.showEditUser=t),draggable:"",mask:!0,"mask-closable":!1,width:850,title:e.editUserTitle,styles:{top:"3%"}},{footer:t.withCtx((()=>[t.createVNode(p,{type:"text",onClick:i[1]||(i[1]=t=>e.showEditUser=!1)},{default:t.withCtx((()=>[t.createTextVNode("关闭")])),_:1}),t.createVNode(p,{type:"primary",loading:e.saveingUser,onClick:e.doSaveUser},{default:t.withCtx((()=>[t.createTextVNode("保存")])),_:1},8,["loading","onClick"])])),default:t.withCtx((()=>[t.createElementVNode("div",ei,[t.createVNode(I,{ref:"userForm",model:e.userFormModel,"label-width":120,rules:e.userFormRule},{default:t.withCtx((()=>[t.createVNode(g,{ref:"userComForm",formModel:e.userFormModel,formItems:e.userFormItems},null,8,["formModel","formItems"])])),_:1},8,["model","rules"]),ti])])),_:1},8,["modelValue","title"]),t.createVNode(v,{modelValue:e.showUserRole,"onUpdate:modelValue":i[4]||(i[4]=t=>e.showUserRole=t),draggable:"",mask:!0,"mask-closable":!1,width:850,title:"定岗",styles:{top:"3%"}},{footer:t.withCtx((()=>[t.createVNode(p,{type:"text",onClick:i[3]||(i[3]=t=>e.showUserRole=!1)},{default:t.withCtx((()=>[t.createTextVNode("关闭")])),_:1}),t.createVNode(p,{type:"primary",loading:e.saveingUserRole,onClick:e.doSaveUserRole},{default:t.withCtx((()=>[t.createTextVNode("保存")])),_:1},8,["loading","onClick"])])),default:t.withCtx((()=>[t.createElementVNode("div",ii,[t.createVNode(f,{ref:"userRoleGrid",option:e.userRoleGridOption},{default:t.withCtx((()=>[oi])),_:1},8,["option"])])])),_:1},8,["modelValue"]),t.createVNode(v,{modelValue:e.showLoginLog,"onUpdate:modelValue":i[6]||(i[6]=t=>e.showLoginLog=t),draggable:"",mask:!0,"mask-closable":!1,width:800,title:"登录日志",styles:{top:"3%"}},{footer:t.withCtx((()=>[t.createVNode(p,{type:"text",onClick:i[5]||(i[5]=t=>e.showLoginLog=!1)},{default:t.withCtx((()=>[t.createTextVNode("关闭")])),_:1})])),default:t.withCtx((()=>[t.createElementVNode("div",si,[t.createVNode(w,{ref:"loginLogRef"},null,512)])])),_:1},8,["modelValue"]),t.createVNode(d,{size:"large",fix:"",show:e.logining},null,8,["show"]),t.createElementVNode("div",ri,[t.createVNode(y,{ref:"loginRef",autoLogin:!1},null,512)]),t.createVNode(v,{modelValue:e.showEditUserSign,"onUpdate:modelValue":i[8]||(i[8]=t=>e.showEditUserSign=t),draggable:"",mask:!0,"mask-closable":!1,width:440,title:"编辑签字信息",styles:{top:"3%"}},{footer:t.withCtx((()=>[t.createVNode(p,{type:"text",onClick:i[7]||(i[7]=t=>e.showEditUserSign=!1)},{default:t.withCtx((()=>[t.createTextVNode("关闭")])),_:1}),t.createVNode(p,{type:"primary",loading:e.saveingUserSign,onClick:e.doSaveUserSign},{default:t.withCtx((()=>[t.createTextVNode("保存")])),_:1},8,["loading","onClick"])])),default:t.withCtx((()=>[t.createElementVNode("div",li,[t.createVNode(I,{ref:"userSignForm",model:e.userSignFormModel,"label-width":85},{default:t.withCtx((()=>[t.createVNode(g,{ref:"userSignComForm",formModel:e.userSignFormModel,formItems:e.userSignFormItems},null,8,["formModel","formItems"]),t.createVNode(C,{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,ai)):t.createCommentVNode("",!0),t.createVNode(p,{type:"primary",style:{float:"right"},onClick:e.doLoadUserSealImg},{default:t.withCtx((()=>[t.createTextVNode("加载")])),_:1},8,["onClick"])])),_:1}),t.createVNode(C,{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,ni)):t.createCommentVNode("",!0),t.createVNode(p,{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-86385f96"]])},{path:"/permission-service/subplatform/subModule",component:Ht}]}));
|