{"remainingRequest":"/data/jenkins/workspace/badp-bcxin-web-5.x-kms/src/badp-bcxin-5.x/obpm-kms-web/kmspc/node_modules/vue-loader/lib/index.js??vue-loader-options!/data/jenkins/workspace/badp-bcxin-web-5.x-kms/src/badp-bcxin-5.x/obpm-kms-web/kmspc/src/components/shared/ImpowerTreeDialog.vue?vue&type=script&lang=js&","dependencies":[{"path":"/data/jenkins/workspace/badp-bcxin-web-5.x-kms/src/badp-bcxin-5.x/obpm-kms-web/kmspc/src/components/shared/ImpowerTreeDialog.vue","mtime":1742796810168},{"path":"/data/jenkins/workspace/badp-bcxin-web-5.x-kms/src/badp-bcxin-5.x/obpm-kms-web/kmspc/node_modules/cache-loader/dist/cjs.js","mtime":499162500000},{"path":"/data/jenkins/workspace/badp-bcxin-web-5.x-kms/src/badp-bcxin-5.x/obpm-kms-web/kmspc/node_modules/thread-loader/dist/cjs.js","mtime":499162500000},{"path":"/data/jenkins/workspace/badp-bcxin-web-5.x-kms/src/badp-bcxin-5.x/obpm-kms-web/kmspc/node_modules/babel-loader/lib/index.js","mtime":315532800000},{"path":"/data/jenkins/workspace/badp-bcxin-web-5.x-kms/src/badp-bcxin-5.x/obpm-kms-web/kmspc/node_modules/cache-loader/dist/cjs.js","mtime":499162500000},{"path":"/data/jenkins/workspace/badp-bcxin-web-5.x-kms/src/badp-bcxin-5.x/obpm-kms-web/kmspc/node_modules/vue-loader/lib/index.js","mtime":1655715099000}],"contextDependencies":[],"result":["\nimport API from \"@/api.js\";\nimport moment from 'moment';\nmoment.locale('zh-cn');\n\nimport {handleTableListDataWitdhNORename, dateToTime} from \"@/utils/utils.js\" ;\n//用户选择框\nimport UserDialog from '@/components/shared/UserDialog/UserDialog.vue';\nconst TIMELIMITTYPE = {\n \"TIME_LIMIT_TYPE_PERMANENCE\" : \"1\", //永久\n \"TIME_LIMIT_TYPE_TEMPORARY\" : \"2\", //限时授权\n}\nconst SCOPE_RANGE = {\n \"DEPT\" : 2,\n \"USER\" : 1\n}\n\nconst RESOURCE_TYPE_FILE = 1;\nconst RESOURCE_TYPE_FOLDER = 2;\nconst CODE_DOWNLOAD = 1;\nconst CODE_PREVIEW = 2;\nconst CODE_EDIT = 3;\nconst CODE_SHARE = 4;\nconst CODE_COLLECT = 8;\n\nexport default {\n name: 'impowertreedialog',\n components: {\n UserDialog\n },\n props: [\n 'impowerTreeModalParams',\n ],\n data(){\n return{\n data: [],\n subVisible: false, //新建弹出层\n editVisible: false, //编辑权限弹出层\n multipleSelection: [],\n multipleSelectionArray: [],\n editAuthorizationId : \"\", //编辑某条授权的id \n impowerParams: {\n \"description\": \"\",\n \"scope\":SCOPE_RANGE.DEPT,\n \"targetId\":[],\n \"targetName\":\"\",\n \"startDate\":\"\",\n \"endDate\":\"\",\n \"indateRange\": \"\",\n \"resourceId\": this.impowerTreeModalParams.record.id,\n \"resourceType\": this.impowerTreeModalParams.record.folder ? RESOURCE_TYPE_FOLDER : RESOURCE_TYPE_FILE,\n \"operations\":[],\n \"creatorId\":\"\",\n \"creator\":\"\",\n \"createDate\":\"\",\n \"timeLimitType\" :\"\"\n },\n selectUserData: [], \n selectDeptData: [],\n deptIds: [],\n TIMELIMITTYPE: {\n \"TIME_LIMIT_TYPE_PERMANENCE\": \"1\", //永久\n \"TIME_LIMIT_TYPE_TEMPORARY\": \"2\", //限时授权\n },\n SCOPE_RANGE: {\n \"DEPT\": 2,\n \"USER\": 1\n },\n deptSelectVisiblve: false, //部门选择框\n visible: false,\n formParams:{\n members: [],\n userId: []\n }\n }\n },\n\n watch: {\n impowerTreeModalParams() {\n let resourceId = this.impowerTreeModalParams.resourceId;\n this.getAuthorizationData(resourceId);\n this.setResource(this.impowerTreeModalParams.record);\n }\n },\n\n mounted(){\n let resourceId = this.impowerTreeModalParams.resourceId;\n this.getAuthorizationData(resourceId);\n this.setResource(this.impowerTreeModalParams.record);\n },\n\n methods: {\n /**\n * 获取授权列表数据\n */\n async getAuthorizationData(resourceId){\n if(resourceId != \"\"){\n const result = (await API.getAuthorizationData(resourceId)).data.data.datas;\n const resultAddKey = handleTableListDataWitdhNORename(result);\n const data = this.handleDataForShow(resultAddKey);\n this.data = data;\n }\n \n\n },\n\n /**\n * 把当前要授权的资源的id和name添加到state里\n * @param {Object} record \n */\n setResource(record) {\n let impowerParams = {...this.impowerParams}\n impowerParams.resourceId = record.id;\n impowerParams.creatorId = record.creatorId;\n impowerParams.creator = record.creator;\n impowerParams.createDate = record.createDate;\n this.impowerParams = impowerParams;\n },\n\n /**\n * 处理授权列表,为显示\n * @param {Array} data \n */\n handleDataForShow(data) {\n data.map((e,key) => {\n let operationString = \"\";\n e.operations.map((e) => {\n switch(parseInt(e)) {\n case CODE_DOWNLOAD :\n operationString += this.$t('digalogTree.download');\n break;\n case CODE_PREVIEW :\n operationString += this.$t('digalogTree.preview');\n break;\n case CODE_EDIT :\n operationString += this.$t('digalogTree.edit');\n break;\n case CODE_SHARE :\n operationString += this.$t('digalogTree.share');\n break;\n case CODE_COLLECT :\n operationString += this.$t('digalogTree.collection');\n break;\n }\n })\n if(operationString.length>0){\n operationString = operationString.substring(0,operationString.length-1)\n }\n data[key].operationString = operationString;\n\n let startDate = data[key].startDate ? data[key].startDate : \"\" ;\n let endDate = data[key].endDate ? data[key].endDate : \"\" ;\n let timeLimitType = data[key].timeLimitType ? data[key].timeLimitType : \"\" ;\n let indate = \"\";\n if(timeLimitType != \"1\" && (startDate || endDate)){\n indate = data[key].startDate + this.$t('to') + data[key].endDate;\n }else {\n indate = this.$t('permanent');\n }\n data[key].indate = indate;\n });\n return data;\n \n },\n\n /**\n * 勾选行时响应\n */\n handleSelectionChange(val){\n let multipleSelection = [];\n if(val.length){\n val.map((e) => {\n multipleSelection.push(e.id)\n })\n }\n this.multipleSelectionArray = val;\n this.multipleSelection = multipleSelection;\n },\n\n /**\n * 取消选中行,分页、批量处理使用\n */\n cancelMultipleSelection() {\n this.$refs.multipleTable.clearSelection();\n },\n\n /**\n * 批量删除\n */\n showDeleteMessageBox(type, deleteIdArray){\n const resourceId = this.impowerParams.resourceId;\n let authorizationIdArray = [];\n if(type == \"single\"){\n authorizationIdArray.push(deleteIdArray);\n }else{\n authorizationIdArray = this.multipleSelection;\n }\n this.$confirm(this.$t('msg.delConfirm'), this.$t('msg.tip'), {\n confirmButtonText: this.$t('msg.confirm'),\n cancelButtonText: this.$t('msg.cancel'),\n type: 'warning',\n }).then(async () => {\n const result = (await API.deleteAuthorizations(authorizationIdArray)).data\n if(result.errcode == 0){\n this.getAuthorizationData(resourceId);\n this.$message({\n type: 'success',\n message: this.$t('msg.es')\n });\n }\n }).catch(() => {\n this.cancelMultipleSelection();\n this.$message({\n type: 'info',\n message: this.$t('msg.cancel_del')\n });\n });\n },\n\n /**\n * 取消授权\n */\n handleImpowerTreeDialogClose(){\n this.$emit('handleImpowerTreeDialogClose');\n },\n\n\n /**\n * 重置授权参数,新建/编辑时用\n */\n resetImpowerParams(){\n //重置部分参数\n let impowerParams = {\n ...this.impowerParams,\n \"description\": \"\",\n \"targetId\":[],\n \"targetName\":\"\",\n \"startDate\":\"\",\n \"endDate\":\"\",\n \"indateRange\": \"\",\n \"operations\":[],\n \"scope\" : SCOPE_RANGE.DEPT,\n \"creatorId\":\"\",\n \"creator\":\"\",\n \"createDate\":\"\",\n \"timeLimitType\":\"1\"\n };\n this.impowerParams = impowerParams;\n },\n\n /**\n * 创建授权\n */\n createAuthorizations(){\n this.resetImpowerParams();\n this.showSubImpowerModal();\n },\n\n /**\n * 打开新建授权信息界面\n */\n showSubImpowerModal(){\n this.subVisible = true\n },\n\n /**\n * 取消新建授权信息界面\n */\n handleImpowerFormDialogClose(){\n this.selectUserData = [];\n this.selectDeptData = [];\n this.deptIds = [];\n this.subVisible = false;\n if(this.editVisible == true){ //取消编辑授权时\n this.hideEditImpowerCancel();\n }\n },\n\n /**\n * 确定新建授权\n */\n async handleImpowerOk(){\n const impowerParams = {\n ...this.impowerParams,\n \"resourceId\": this.impowerTreeModalParams.record.id,\n }\n console.log(impowerParams)\n if(impowerParams.targetId.length == 0) {\n this.$message({\n type: 'warning',\n message: this.$t('msg.authorization_object_sl')\n });\n return;\n }else if(impowerParams.operations.length == 0) {\n this.$message({\n type: 'warning',\n message: this.$t('msg.least_permission_sl')\n });\n return;\n }else if(impowerParams.timeLimitType == TIMELIMITTYPE.TIME_LIMIT_TYPE_TEMPORARY \n && (impowerParams.startDate == \"\" || impowerParams.startDate == null )\n && (impowerParams.endDate == \"\" || impowerParams.endDate == null)){\n this.$message({\n type: 'warning',\n message: this.$t('msg.start_end_time_sl')\n }); \n return;\n }else{\n const result = (await API.createAuthorization(impowerParams)).data;\n if(result.errcode == 0) {\n this.getAuthorizationData(impowerParams.resourceId);\n this.$message({\n type: 'success',\n message: this.$t('msg.authorization_ss')\n }); \n }\n this.handleImpowerFormDialogClose();\n }\n },\n\n /**\n * 显示部门选择框\n */\n showDeptSelectBox(){\n this.deptSelectVisiblve = true;\n },\n\n /**\n * 取消部门选择框\n */\n handleDeptSelectBoxCancel(){\n this.deptSelectVisiblve = false;\n this.deptIds= [];\n },\n\n /**\n * 获取选中部门节点id\n */\n oncheckedKeys(data){\n this.deptIds = data;\n },\n\n /**\n * 确定部门选择框\n */\n handleDeptSelectBoxOk(){\n let data = this.deptIds;\n let targetId = [];\n let targetName = \"\";\n data.map((e) => {\n targetId.push(e.id);\n targetName += e.name+\",\";\n })\n \n const impowerParams = {\n ...this.impowerParams,\n \"targetId\" : targetId,\n \"targetName\" : targetName.substring(0,targetName.length-1)\n }\n this.impowerParams = impowerParams;\n this.selectDeptData = data;\n this.deptSelectVisiblve = false;\n },\n\n /**\n * 删除部门\n */\n handleDeptRemove(index) {\n let selectDeptData = [\n ...this.selectDeptData.slice(0, index),\n ...this.selectDeptData.slice(index + 1)\n ]\n\n let targetId = [];\n let targetName = \"\";\n selectDeptData.map((e) => {\n targetId.push(e.id);\n targetName += e.name+\",\";\n })\n const impowerParams = {\n ...this.impowerParams,\n \"targetId\" : targetId,\n \"targetName\" : targetName.substring(0,targetName.length-1)\n }\n this.impowerParams = impowerParams;\n this.selectDeptData = selectDeptData;\n this.deptIds = selectDeptData;\n },\n\n /**\n * 显示用户选择框\n */\n showUserDialog(){\n this.visible = true;\n },\n\n /**\n * 取消用户选择框\n */\n handleCancel(){\n this.$refs.userDialog.handleCancel();\n this.visible = false;\n },\n\n /**\n * 确定已选择用户\n */\n handleSettingUserOk(){\n this.$refs.userDialog.handleSelectUser();\n this.visible = false;\n },\n\n /**\n * 选择授权对象-用户\n * @param {Object} data \n */\n handleSelectUser(data){\n let targetId = [];\n let targetName = \"\";\n\n data.map((e) => {\n targetId.push(e.id);\n targetName += e.name+\",\";\n })\n const selectUserData = data;\n const impowerParams = {\n ...this.impowerParams,\n \"targetId\" : targetId,\n \"targetName\" : targetName.substring(0,targetName.length-1)\n }\n //与用户选择框参数先符合,后续在把授权统一\n const formParams = {\n ...this.formParams,\n \"members\" : data,\n \"userId\" : targetId\n }\n this.formParams = formParams;\n this.impowerParams = impowerParams;\n this.selectUserData = selectUserData;\n },\n\n /**\n * 删除用户\n * @param {int} index \n */\n handleUserRemove(index){\n let selectUserData = [\n ...this.selectUserData.slice(0, index),\n ...this.selectUserData.slice(index + 1)\n ]\n let targetId = [];\n let targetName = \"\";\n selectUserData.map((e) => {\n targetId.push(e.id);\n targetName += e.name+\",\";\n })\n\n const impowerParams = {\n ...this.impowerParams,\n \"targetId\" : targetId,\n \"targetName\" : targetName.substring(0,targetName.length-1)\n }\n\n this.impowerParams = impowerParams\n this.selectUserData = selectUserData;\n\n // ---------\n let datas = [\n ...this.formParams.members.slice(0, index),\n ...this.formParams.members.slice(index + 1)\n ]\n const formParams = {\n ...this.formParams,\n \"members\" : datas,\n \"userId\" : \"\"\n }\n this.formParams = formParams;\n },\n\n /**\n * 修改时效参数\n */\n onChangeRangePicker(){\n let startDate = \"\";\n let endDate =\"\";\n let impowerParams = {...this.impowerParams}\n startDate = dateToTime(impowerParams.indateRange[0]);\n endDate = dateToTime(impowerParams.indateRange[1]);\n impowerParams.startDate = startDate;\n impowerParams.endDate = endDate;\n this.impowerParams = impowerParams;\n },\n\n /**\n * 编辑授权\n */\n handleEdit(record){\n let editAuthorizationId = {...this.editAuthorizationId};\n let indateRange = [];\n console.log(record,\"编辑时候的\")\n if(record.startDate !=\"\" && record.endDate !=\"\"){\n indateRange.push(moment(record.startDate, 'YYYY-MM-DD'));\n indateRange.push(moment(record.endDate, 'YYYY-MM-DD'));\n }\n let impowerParams = {\n ...this.impowerParams,\n \"startDate\" : record.startDate,\n \"endDate\" : record.endDate,\n \"indateRange\": indateRange,\n \"description\" : record.description,\n \"scope\" : record.scope,\n \"targetId\" : record.targetId,\n \"targetName\" : record.targetName,\n \"operations\" : record.operations,\n \"timeLimitType\" : record.timeLimitType\n };\n console.log(impowerParams,\"aaaa\")\n\n editAuthorizationId = record.id;\n\n const targetIdArray = record.targetId;\n const targetNameArray = record.targetName.split(\",\");\n let selectUserData = [];\n let selectDeptData = [];\n let selectData = [];\n \n targetIdArray.map((e,key) => {\n let selectedObj = {};\n selectedObj.id = e;\n selectedObj.name = targetNameArray[key];\n selectData.push(selectedObj);\n })\n \n if(record.scope == SCOPE_RANGE.DEPT) {\n selectDeptData = selectData;\n }\n\n if(record.scope == SCOPE_RANGE.USER) {\n selectUserData = selectData;\n }\n this.impowerParams = impowerParams;\n this.selectUserData = selectUserData;\n this.selectDeptData = selectDeptData;\n this.editAuthorizationId = editAuthorizationId\n\n this.ShowEditImpowerShow();\n },\n\n /**\n * 打开编辑授权信息界面\n */\n ShowEditImpowerShow(){\n this.subVisible = true;\n this.editVisible = true;\n },\n\n /**\n * 确定编辑授权\n */\n async handleEditImpowerOk() {\n const impowerParams = this.impowerParams;\n let editParams = {\n \"id\": this.editAuthorizationId,\n \"description\": impowerParams.description,\n \"scope\": impowerParams.scope,\n \"targetId\": impowerParams.targetId,\n \"targetName\": impowerParams.targetName,\n \"startDate\": impowerParams.startDate,\n \"endDate\": impowerParams.endDate,\n \"creatorId\":impowerParams.creatorId,\n \"creator\":impowerParams.creator,\n \"createDate\":impowerParams.createDate,\n \"resourceId\":impowerParams.resourceId,\n \"resourceType\":impowerParams.resourceType,\n \"operations\":impowerParams.operations,\n \"timeLimitType\" : impowerParams.timeLimitType\n }\n\n if(impowerParams.targetId.length == 0) {\n this.$message({\n type: 'warning',\n message: this.$t('msg.authorization_object_sl')\n }); \n return;\n }else if(impowerParams.operations.length == 0) {\n this.$message({\n type: 'warning',\n message: this.$t('msg.least_permission_sl')\n }); \n return;\n }else if(impowerParams.timeLimitType == TIMELIMITTYPE.TIME_LIMIT_TYPE_TEMPORARY \n && (impowerParams.startDate == \"\" || impowerParams.startDate == null )\n && (impowerParams.endDate == \"\" || impowerParams.endDate == null)) {\n this.$message({\n type: 'warning',\n message: this.$t('msg.start_end_time_sl')\n }); \n return;\n }else {\n const result = (await API.editAuthorization(editParams)).data;\n if(result.errcode == 0) {\n this.getAuthorizationData(impowerParams.resourceId);\n this.$message({\n type: 'success',\n message: this.$t('msg.authorization_ss')\n }); \n this.hideEditImpowerCancel();\n }\n }\n },\n\n /**\n * 取消编辑授权信息界面\n */\n hideEditImpowerCancel(){\n let impowerParams = {...this.impowerParams};\n let editAuthorizationId = {...this.editAuthorizationId};\n\n editAuthorizationId = \"\";\n impowerParams.startDate = \"\";\n impowerParams.endDate = \"\";\n impowerParams.description = \"\";\n\n this.editAuthorizationId = editAuthorizationId;\n this.impowerParams = impowerParams;\n this.editVisible = false;\n this.subVisible = false;\n this.selectUserData = [];\n this.selectDeptData = [];\n },\n\n }\n}\n",null]}