{"remainingRequest":"D:\\jenkins\\workspace\\examine-fvue\\node_modules\\vue-loader\\lib\\index.js??vue-loader-options!D:\\jenkins\\workspace\\examine-fvue\\src\\components\\common\\HtDeleteButton.vue?vue&type=script&lang=js&","dependencies":[{"path":"D:\\jenkins\\workspace\\examine-fvue\\src\\components\\common\\HtDeleteButton.vue","mtime":1667280203826},{"path":"D:\\jenkins\\workspace\\examine-fvue\\node_modules\\babel-loader\\lib\\index.js","mtime":315532800000},{"path":"D:\\jenkins\\workspace\\examine-fvue\\node_modules\\cache-loader\\dist\\cjs.js","mtime":499162500000},{"path":"D:\\jenkins\\workspace\\examine-fvue\\node_modules\\vue-loader\\lib\\index.js","mtime":499162500000}],"contextDependencies":[],"result":["//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n\r\nimport req from \"@/request.js\";\r\nexport default {\r\n name: \"ht-delete-button\",\r\n props: {\r\n type: {\r\n type: String,\r\n default: \"danger\"\r\n },\r\n requestMethod: {\r\n type: String,\r\n default: \"DELETE\"\r\n },\r\n url: {\r\n type: String,\r\n required: true\r\n },\r\n pk: {\r\n type: String,\r\n default: \"id\"\r\n },\r\n parameter: {\r\n type: String,\r\n default: \"ids\"\r\n },\r\n pureData: {\r\n type: Boolean,\r\n default: false\r\n },\r\n htTable: {\r\n type: Object\r\n },\r\n row: {\r\n type: Object\r\n }\r\n },\r\n data() {\r\n return {\r\n fullscreenLoading: false,\r\n elTable: null\r\n };\r\n },\r\n methods: {\r\n async handleDelete() {\r\n this.elTable = this.htTable;\r\n if (this.htTable.$refs && this.htTable.$refs.htTable) {\r\n this.elTable = this.htTable.$refs.htTable;\r\n }\r\n if (\r\n this.elTable &&\r\n this.elTable.selection &&\r\n this.elTable.selection.length == 0 &&\r\n !this.row\r\n ) {\r\n this.$message.error(\"请至少选择一条数据\");\r\n return;\r\n }\r\n\r\n let ids = [];\r\n\r\n if (this.row) {\r\n ids.push(this.row[this.pk]);\r\n } else {\r\n for (let item of this.elTable.selection) {\r\n ids.push(item[this.pk]);\r\n }\r\n }\r\n\r\n let params = {},\r\n data = null;\r\n params[this.parameter] = ids.join(\",\");\r\n // 如果是纯文本作为参数,则直接传递文本作为参数\r\n if (this.pureData) {\r\n params = null;\r\n data = ids.join(\",\");\r\n }\r\n\r\n this.fullscreenLoading = true;\r\n let response = await req\r\n .request({\r\n params: params,\r\n data: data,\r\n url: this.url,\r\n method: this.requestMethod\r\n })\r\n .finally(() => {\r\n this.fullscreenLoading = false;\r\n });\r\n\r\n if (response.data && response.data.state) {\r\n this.$emit(\"after-delete\");\r\n this.htTable.load();\r\n this.$message({\r\n message: response.data.message || \"操作成功\",\r\n showClose: true,\r\n type: \"success\"\r\n });\r\n }\r\n }\r\n }\r\n};\r\n",null]}