smart-power-ui/node_modules/.cache/vue-loader/1ba8665272902244d55eb618158...

1 line
19 KiB
JSON

{"remainingRequest":"G:\\project\\smart-power-ui\\node_modules\\vue-loader\\lib\\index.js??vue-loader-options!G:\\project\\smart-power-ui\\src\\views\\iot\\vendor\\index.vue?vue&type=script&lang=js&","dependencies":[{"path":"G:\\project\\smart-power-ui\\src\\views\\iot\\vendor\\index.vue","mtime":1617244452821},{"path":"G:\\project\\smart-power-ui\\node_modules\\cache-loader\\dist\\cjs.js","mtime":1591751767036},{"path":"G:\\project\\smart-power-ui\\node_modules\\babel-loader\\lib\\index.js","mtime":1610504270305},{"path":"G:\\project\\smart-power-ui\\node_modules\\cache-loader\\dist\\cjs.js","mtime":1591751767036},{"path":"G:\\project\\smart-power-ui\\node_modules\\vue-loader\\lib\\index.js","mtime":1610504274351}],"contextDependencies":[],"result":[{"type":"Buffer","data":"base64:Ly8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KCmltcG9ydCB7CiAgbGlzdFZlbmRvciwKICBnZXRWZW5kb3IsCiAgZGVsVmVuZG9yLAogIGFkZFZlbmRvciwKICB1cGRhdGVWZW5kb3IsCiAgZXhwb3J0VmVuZG9yCn0gZnJvbSAiQC9hcGkvaW90L3ZlbmRvciI7CgpleHBvcnQgZGVmYXVsdCB7CiAgbmFtZTogIlZlbmRvciIsCiAgY29tcG9uZW50czoge30sCiAgZGF0YSgpIHsKICAgIHJldHVybiB7CiAgICAgIC8vIOmBrue9qeWxggogICAgICBsb2FkaW5nOiB0cnVlLAogICAgICAvLyDpgInkuK3mlbDnu4QKICAgICAgaWRzOiBbXSwKICAgICAgLy8g6Z2e5Y2V5Liq56aB55SoCiAgICAgIHNpbmdsZTogdHJ1ZSwKICAgICAgLy8g6Z2e5aSa5Liq56aB55SoCiAgICAgIG11bHRpcGxlOiB0cnVlLAogICAgICAvLyDmmL7npLrmkJzntKLmnaHku7YKICAgICAgc2hvd1NlYXJjaDogdHJ1ZSwKICAgICAgLy8g5oC75p2h5pWwCiAgICAgIHRvdGFsOiAwLAogICAgICAvLyDljoLllYbooajmoLzmlbDmja4KICAgICAgdmVuZG9yTGlzdDogW10sCiAgICAgIC8vIOW8ueWHuuWxguagh+mimAogICAgICB0aXRsZTogIiIsCiAgICAgIC8vIOaYr+WQpuaYvuekuuW8ueWHuuWxggogICAgICBvcGVuOiBmYWxzZSwKICAgICAgLy8g5p+l6K+i5Y+C5pWwCiAgICAgIHF1ZXJ5UGFyYW1zOiB7CiAgICAgICAgcGFnZU51bTogMSwKICAgICAgICBwYWdlU2l6ZTogMTAsCiAgICAgICAgdmVuZG9yTmFtZTogbnVsbCwKICAgICAgICB2ZW5kb3JBZGRyZXNzOiBudWxsLAogICAgICAgIHZlbmRvckNvbnRhY3Q6IG51bGwsCiAgICAgICAgb3JkZXJCeUNvbHVtbjogImNyZWF0ZVRpbWUiLAogICAgICAgIGlzQXNjOiAiZGVzYyIKICAgICAgfSwKICAgICAgLy8g6KGo5Y2V5Y+C5pWwCiAgICAgIGZvcm06IHt9LAogICAgICAvLyDooajljZXmoKHpqowKICAgICAgcnVsZXM6IHsKICAgICAgICB2ZW5kb3JOYW1lOiBbCiAgICAgICAgICB7IHJlcXVpcmVkOiB0cnVlLCBtZXNzYWdlOiAi5Y6C5ZWG5ZCN56ew5LiN6IO95Li656m6IiwgdHJpZ2dlcjogImJsdXIiIH0KICAgICAgICBdLAogICAgICAgIHZlbmRvckNvbnRhY3Q6IFsKICAgICAgICAgIHsgcmVxdWlyZWQ6IHRydWUsIG1lc3NhZ2U6ICLogZTns7vmlrnlvI/kuI3og73kuLrnqboiLCB0cmlnZ2VyOiAiYmx1ciIgfQogICAgICAgIF0KICAgICAgfQogICAgfTsKICB9LAogIGNyZWF0ZWQoKSB7CiAgICB0aGlzLmdldExpc3QoKTsKICB9LAogIG1ldGhvZHM6IHsKICAgIHNvcnRDaGFuZ2UoY29sdW1uKSB7CiAgICAgIGNvbnN0IHNvcnQgPSB7CiAgICAgICAgaXNBc2M6IGNvbHVtbi5vcmRlciA9PT0gImRlc2NlbmRpbmciID8gImRlc2MiIDogImFzYyIsCiAgICAgICAgb3JkZXJCeUNvbHVtbjogY29sdW1uLnByb3AKICAgICAgfTsKICAgICAgdGhpcy5xdWVyeVBhcmFtcyA9IE9iamVjdC5hc3NpZ24odGhpcy5xdWVyeVBhcmFtcywgc29ydCk7CiAgICAgIHRoaXMuaGFuZGxlUXVlcnkoKTsKICAgIH0sCiAgICBpbmRleEZvcm1hdHRlcih2YWwpIHsKICAgICAgcmV0dXJuICgKICAgICAgICB2YWwgKyAxICsgKHRoaXMucXVlcnlQYXJhbXMucGFnZU51bSAtIDEpICogdGhpcy5xdWVyeVBhcmFtcy5wYWdlU2l6ZQogICAgICApOwogICAgfSwKICAgIC8qKiDmn6Xor6LljoLllYbliJfooaggKi8KICAgIGdldExpc3QoKSB7CiAgICAgIHRoaXMubG9hZGluZyA9IHRydWU7CiAgICAgIGxpc3RWZW5kb3IodGhpcy5xdWVyeVBhcmFtcykudGhlbihyZXNwb25zZSA9PiB7CiAgICAgICAgdGhpcy52ZW5kb3JMaXN0ID0gcmVzcG9uc2Uucm93czsKICAgICAgICB0aGlzLnRvdGFsID0gcmVzcG9uc2UudG90YWw7CiAgICAgICAgdGhpcy5sb2FkaW5nID0gZmFsc2U7CiAgICAgIH0pOwogICAgfSwKICAgIC8vIOWPlua2iOaMiemSrgogICAgY2FuY2VsKCkgewogICAgICB0aGlzLm9wZW4gPSBmYWxzZTsKICAgICAgdGhpcy5yZXNldCgpOwogICAgfSwKICAgIC8vIOihqOWNlemHjee9rgogICAgcmVzZXQoKSB7CiAgICAgIHRoaXMuZm9ybSA9IHsKICAgICAgICB2ZW5kb3JJZDogbnVsbCwKICAgICAgICB2ZW5kb3JOYW1lOiBudWxsLAogICAgICAgIHZlbmRvckFkZHJlc3M6IG51bGwsCiAgICAgICAgdmVuZG9yQ29udGFjdDogbnVsbCwKICAgICAgICBkZWxGbGFnOiBudWxsLAogICAgICAgIGNyZWF0ZUlkOiBudWxsLAogICAgICAgIGNyZWF0ZVRpbWU6IG51bGwsCiAgICAgICAgdXBkYXRlSWQ6IG51bGwsCiAgICAgICAgdXBkYXRlVGltZTogbnVsbCwKICAgICAgICByZW1hcms6IG51bGwKICAgICAgfTsKICAgICAgdGhpcy5yZXNldEZvcm0oImZvcm0iKTsKICAgIH0sCiAgICAvKiog5pCc57Si5oyJ6ZKu5pON5L2cICovCiAgICBoYW5kbGVRdWVyeSgpIHsKICAgICAgdGhpcy5xdWVyeVBhcmFtcy5wYWdlTnVtID0gMTsKICAgICAgdGhpcy5nZXRMaXN0KCk7CiAgICB9LAogICAgLyoqIOmHjee9ruaMiemSruaTjeS9nCAqLwogICAgcmVzZXRRdWVyeSgpIHsKICAgICAgdGhpcy5yZXNldEZvcm0oInF1ZXJ5Rm9ybSIpOwogICAgICB0aGlzLmhhbmRsZVF1ZXJ5KCk7CiAgICB9LAogICAgLy8g5aSa6YCJ5qGG6YCJ5Lit5pWw5o2uCiAgICBoYW5kbGVTZWxlY3Rpb25DaGFuZ2Uoc2VsZWN0aW9uKSB7CiAgICAgIHRoaXMuaWRzID0gc2VsZWN0aW9uLm1hcChpdGVtID0+IGl0ZW0udmVuZG9ySWQpOwogICAgICB0aGlzLnNpbmdsZSA9IHNlbGVjdGlvbi5sZW5ndGggIT09IDE7CiAgICAgIHRoaXMubXVsdGlwbGUgPSAhc2VsZWN0aW9uLmxlbmd0aDsKICAgIH0sCiAgICAvKiog5paw5aKe5oyJ6ZKu5pON5L2cICovCiAgICBoYW5kbGVBZGQoKSB7CiAgICAgIHRoaXMucmVzZXQoKTsKICAgICAgdGhpcy5vcGVuID0gdHJ1ZTsKICAgICAgdGhpcy50aXRsZSA9ICLmt7vliqDljoLllYYiOwogICAgfSwKICAgIC8qKiDkv67mlLnmjInpkq7mk43kvZwgKi8KICAgIGhhbmRsZVVwZGF0ZShyb3cpIHsKICAgICAgdGhpcy5yZXNldCgpOwogICAgICBjb25zdCB2ZW5kb3JJZCA9IHJvdy52ZW5kb3JJZCB8fCB0aGlzLmlkczsKICAgICAgZ2V0VmVuZG9yKHZlbmRvcklkKS50aGVuKHJlc3BvbnNlID0+IHsKICAgICAgICB0aGlzLmZvcm0gPSByZXNwb25zZS5kYXRhOwogICAgICAgIHRoaXMub3BlbiA9IHRydWU7CiAgICAgICAgdGhpcy50aXRsZSA9ICLkv67mlLnljoLllYYiOwogICAgICB9KTsKICAgIH0sCiAgICAvKiog5o+Q5Lqk5oyJ6ZKuICovCiAgICBzdWJtaXRGb3JtKCkgewogICAgICB0aGlzLiRyZWZzWyJmb3JtIl0udmFsaWRhdGUodmFsaWQgPT4gewogICAgICAgIGlmICh2YWxpZCkgewogICAgICAgICAgaWYgKHRoaXMuZm9ybS52ZW5kb3JJZCAhPSBudWxsKSB7CiAgICAgICAgICAgIHVwZGF0ZVZlbmRvcih0aGlzLmZvcm0pLnRoZW4ocmVzcG9uc2UgPT4gewogICAgICAgICAgICAgIHRoaXMubXNnU3VjY2Vzcygi5L+u5pS55oiQ5YqfIik7CiAgICAgICAgICAgICAgdGhpcy5vcGVuID0gZmFsc2U7CiAgICAgICAgICAgICAgdGhpcy5nZXRMaXN0KCk7CiAgICAgICAgICAgIH0pOwogICAgICAgICAgfSBlbHNlIHsKICAgICAgICAgICAgYWRkVmVuZG9yKHRoaXMuZm9ybSkudGhlbihyZXNwb25zZSA9PiB7CiAgICAgICAgICAgICAgdGhpcy5tc2dTdWNjZXNzKCLmlrDlop7miJDlip8iKTsKICAgICAgICAgICAgICB0aGlzLm9wZW4gPSBmYWxzZTsKICAgICAgICAgICAgICB0aGlzLmdldExpc3QoKTsKICAgICAgICAgICAgfSk7CiAgICAgICAgICB9CiAgICAgICAgfQogICAgICB9KTsKICAgIH0sCiAgICAvKiog5Yig6Zmk5oyJ6ZKu5pON5L2cICovCiAgICBoYW5kbGVEZWxldGUocm93KSB7CiAgICAgIGNvbnN0IHZlbmRvcklkcyA9IHJvdy52ZW5kb3JJZCB8fCB0aGlzLmlkczsKICAgICAgdGhpcy4kY29uZmlybSgi5piv5ZCm5Yig6Zmk6K+l6YCJ6aG5PyIsICLorablkYoiLCB7CiAgICAgICAgY29uZmlybUJ1dHRvblRleHQ6ICLnoa7lrpoiLAogICAgICAgIGNhbmNlbEJ1dHRvblRleHQ6ICLlj5bmtogiLAogICAgICAgIHR5cGU6ICJ3YXJuaW5nIgogICAgICB9KQogICAgICAgIC50aGVuKGZ1bmN0aW9uKCkgewogICAgICAgICAgcmV0dXJuIGRlbFZlbmRvcih2ZW5kb3JJZHMpOwogICAgICAgIH0pCiAgICAgICAgLnRoZW4oKCkgPT4gewogICAgICAgICAgdGhpcy5nZXRMaXN0KCk7CiAgICAgICAgICB0aGlzLm1zZ1N1Y2Nlc3MoIuWIoOmZpOaIkOWKnyIpOwogICAgICAgIH0pOwogICAgfSwKICAgIC8qKiDlr7zlh7rmjInpkq7mk43kvZwgKi8KICAgIGhhbmRsZUV4cG9ydCgpIHsKICAgICAgY29uc3QgcXVlcnlQYXJhbXMgPSB0aGlzLnF1ZXJ5UGFyYW1zOwogICAgICB0aGlzLiRjb25maXJtKCLmmK/lkKbnoa7orqTlr7zlh7rmiYDmnInljoLllYbmlbDmja7pobk/IiwgIuitpuWRiiIsIHsKICAgICAgICBjb25maXJtQnV0dG9uVGV4dDogIuehruWumiIsCiAgICAgICAgY2FuY2VsQnV0dG9uVGV4dDogIuWPlua2iCIsCiAgICAgICAgdHlwZTogIndhcm5pbmciCiAgICAgIH0pCiAgICAgICAgLnRoZW4oZnVuY3Rpb24oKSB7CiAgICAgICAgICByZXR1cm4gZXhwb3J0VmVuZG9yKHF1ZXJ5UGFyYW1zKTsKICAgICAgICB9KQogICAgICAgIC50aGVuKHJlc3BvbnNlID0+IHsKICAgICAgICAgIHRoaXMuZG93bmxvYWQocmVzcG9uc2UubXNnKTsKICAgICAgICB9KTsKICAgIH0KICB9Cn07Cg=="},{"version":3,"sources":["index.vue"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AA0HA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA","file":"index.vue","sourceRoot":"src/views/iot/vendor","sourcesContent":["<template>\n <div class=\"app-container iot-vendor\">\n <el-form\n :model=\"queryParams\"\n ref=\"queryForm\"\n :inline=\"true\"\n v-show=\"showSearch\"\n label-width=\"68px\"\n >\n <el-form-item label=\"厂商名称\" prop=\"vendorName\">\n <el-input\n v-model=\"queryParams.vendorName\"\n placeholder=\"厂商名称\"\n clearable\n size=\"small\"\n @keyup.enter.native=\"handleQuery\"\n />\n </el-form-item>\n <el-form-item label=\"厂商地址\" prop=\"vendorAddress\">\n <el-input\n v-model=\"queryParams.vendorAddress\"\n placeholder=\"厂商地址\"\n clearable\n size=\"small\"\n @keyup.enter.native=\"handleQuery\"\n />\n </el-form-item>\n <el-form-item label=\"联系方式\" prop=\"vendorContact\">\n <el-input\n v-model=\"queryParams.vendorContact\"\n placeholder=\"联系方式\"\n clearable\n size=\"small\"\n @keyup.enter.native=\"handleQuery\"\n />\n </el-form-item>\n <el-form-item>\n <el-button type=\"primary\" icon=\"el-icon-search\" size=\"mini\" @click=\"handleQuery\">搜索</el-button>\n <el-button icon=\"el-icon-refresh\" size=\"mini\" @click=\"resetQuery\">重置</el-button>\n </el-form-item>\n </el-form>\n\n <el-row :gutter=\"10\" class=\"mb8\">\n <el-col :span=\"1.5\">\n <el-button\n type=\"primary\"\n plain\n icon=\"el-icon-plus\"\n size=\"mini\"\n @click=\"handleAdd\"\n v-hasPermi=\"['iot:vendor:add']\"\n >新增</el-button>\n </el-col>\n <right-toolbar :showSearch.sync=\"showSearch\" @queryTable=\"getList\"></right-toolbar>\n </el-row>\n\n <el-table\n v-loading=\"loading\"\n :data=\"vendorList\"\n @selection-change=\"handleSelectionChange\"\n :default-sort=\"{prop: 'createTime', order: 'descending'}\"\n @sort-change=\"sortChange\"\n >\n <el-table-column type=\"index\" label=\"序号\" align=\"center\" :index=\"indexFormatter\" width=\"80px\"></el-table-column>\n <el-table-column label=\"厂商名称\" align=\"left\" width=\"250\" prop=\"vendorName\" />\n <el-table-column label=\"联系方式\" align=\"left\" width=\"250\" prop=\"vendorContact\" />\n <el-table-column label=\"厂商地址\" align=\"left\" prop=\"vendorAddress\" />\n <el-table-column label=\"备注\" align=\"left\" prop=\"remark\" />\n <el-table-column label=\"创建时间\" align=\"center\" sortable=\"custom\" width=\"160\" prop=\"createTime\" />\n <el-table-column label=\"操作\" align=\"center\" width=\"200\" class-name=\"small-padding fixed-width\">\n <template slot-scope=\"scope\">\n <el-button\n size=\"mini\"\n type=\"text\"\n icon=\"el-icon-edit\"\n @click=\"handleUpdate(scope.row)\"\n v-hasPermi=\"['iot:vendor:edit']\"\n >修改</el-button>\n <el-button\n size=\"mini\"\n type=\"text\"\n icon=\"el-icon-delete\"\n @click=\"handleDelete(scope.row)\"\n v-hasPermi=\"['iot:vendor:remove']\"\n >删除</el-button>\n </template>\n </el-table-column>\n </el-table>\n\n <pagination\n v-show=\"total > 0\"\n :total=\"total\"\n :page.sync=\"queryParams.pageNum\"\n :limit.sync=\"queryParams.pageSize\"\n @pagination=\"getList\"\n />\n\n <!-- 添加或修改厂商对话框 -->\n <el-dialog class=\"eldialog-wrap\" :close-on-click-modal=\"false\" :title=\"title\" :visible.sync=\"open\" width=\"500px\">\n <el-form ref=\"form\" :model=\"form\" :rules=\"rules\" label-width=\"100px\">\n <el-form-item label=\"厂商名称:\" prop=\"vendorName\">\n <el-input v-model=\"form.vendorName\" placeholder=\"请输入厂商名称\" />\n </el-form-item>\n <el-form-item label=\"联系方式:\" prop=\"vendorContact\">\n <el-input v-model=\"form.vendorContact\" placeholder=\"请输入厂商联系方式\" />\n </el-form-item>\n <el-form-item label=\"厂商地址:\" prop=\"vendorAddress\">\n <el-input v-model=\"form.vendorAddress\" placeholder=\"请输入厂商地址\" />\n </el-form-item>\n <el-form-item label=\"备注:\" prop=\"remark\">\n <el-input v-model=\"form.remark\" type=\"textarea\" :rows=\"2\" placeholder=\"请输入备注\" />\n </el-form-item>\n </el-form>\n <div slot=\"footer\" class=\"form-button-div\">\n <el-button size=\"mini\" type=\"primary\" @click=\"submitForm\">确 定</el-button>\n <el-button size=\"mini\" @click=\"cancel\">取 消</el-button>\n </div>\n </el-dialog>\n </div>\n</template>\n\n<script>\nimport {\n listVendor,\n getVendor,\n delVendor,\n addVendor,\n updateVendor,\n exportVendor\n} from \"@/api/iot/vendor\";\n\nexport default {\n name: \"Vendor\",\n components: {},\n data() {\n return {\n // 遮罩层\n loading: true,\n // 选中数组\n ids: [],\n // 非单个禁用\n single: true,\n // 非多个禁用\n multiple: true,\n // 显示搜索条件\n showSearch: true,\n // 总条数\n total: 0,\n // 厂商表格数据\n vendorList: [],\n // 弹出层标题\n title: \"\",\n // 是否显示弹出层\n open: false,\n // 查询参数\n queryParams: {\n pageNum: 1,\n pageSize: 10,\n vendorName: null,\n vendorAddress: null,\n vendorContact: null,\n orderByColumn: \"createTime\",\n isAsc: \"desc\"\n },\n // 表单参数\n form: {},\n // 表单校验\n rules: {\n vendorName: [\n { required: true, message: \"厂商名称不能为空\", trigger: \"blur\" }\n ],\n vendorContact: [\n { required: true, message: \"联系方式不能为空\", trigger: \"blur\" }\n ]\n }\n };\n },\n created() {\n this.getList();\n },\n methods: {\n sortChange(column) {\n const sort = {\n isAsc: column.order === \"descending\" ? \"desc\" : \"asc\",\n orderByColumn: column.prop\n };\n this.queryParams = Object.assign(this.queryParams, sort);\n this.handleQuery();\n },\n indexFormatter(val) {\n return (\n val + 1 + (this.queryParams.pageNum - 1) * this.queryParams.pageSize\n );\n },\n /** 查询厂商列表 */\n getList() {\n this.loading = true;\n listVendor(this.queryParams).then(response => {\n this.vendorList = response.rows;\n this.total = response.total;\n this.loading = false;\n });\n },\n // 取消按钮\n cancel() {\n this.open = false;\n this.reset();\n },\n // 表单重置\n reset() {\n this.form = {\n vendorId: null,\n vendorName: null,\n vendorAddress: null,\n vendorContact: null,\n delFlag: null,\n createId: null,\n createTime: null,\n updateId: null,\n updateTime: null,\n remark: null\n };\n this.resetForm(\"form\");\n },\n /** 搜索按钮操作 */\n handleQuery() {\n this.queryParams.pageNum = 1;\n this.getList();\n },\n /** 重置按钮操作 */\n resetQuery() {\n this.resetForm(\"queryForm\");\n this.handleQuery();\n },\n // 多选框选中数据\n handleSelectionChange(selection) {\n this.ids = selection.map(item => item.vendorId);\n this.single = selection.length !== 1;\n this.multiple = !selection.length;\n },\n /** 新增按钮操作 */\n handleAdd() {\n this.reset();\n this.open = true;\n this.title = \"添加厂商\";\n },\n /** 修改按钮操作 */\n handleUpdate(row) {\n this.reset();\n const vendorId = row.vendorId || this.ids;\n getVendor(vendorId).then(response => {\n this.form = response.data;\n this.open = true;\n this.title = \"修改厂商\";\n });\n },\n /** 提交按钮 */\n submitForm() {\n this.$refs[\"form\"].validate(valid => {\n if (valid) {\n if (this.form.vendorId != null) {\n updateVendor(this.form).then(response => {\n this.msgSuccess(\"修改成功\");\n this.open = false;\n this.getList();\n });\n } else {\n addVendor(this.form).then(response => {\n this.msgSuccess(\"新增成功\");\n this.open = false;\n this.getList();\n });\n }\n }\n });\n },\n /** 删除按钮操作 */\n handleDelete(row) {\n const vendorIds = row.vendorId || this.ids;\n this.$confirm(\"是否删除该选项?\", \"警告\", {\n confirmButtonText: \"确定\",\n cancelButtonText: \"取消\",\n type: \"warning\"\n })\n .then(function() {\n return delVendor(vendorIds);\n })\n .then(() => {\n this.getList();\n this.msgSuccess(\"删除成功\");\n });\n },\n /** 导出按钮操作 */\n handleExport() {\n const queryParams = this.queryParams;\n this.$confirm(\"是否确认导出所有厂商数据项?\", \"警告\", {\n confirmButtonText: \"确定\",\n cancelButtonText: \"取消\",\n type: \"warning\"\n })\n .then(function() {\n return exportVendor(queryParams);\n })\n .then(response => {\n this.download(response.msg);\n });\n }\n }\n};\n</script>\n<style lang=\"scss\">\n.iot-vendor {\n .eldialog-wrap {\n .el-dialog__header {\n border-bottom: 1px solid #747373;\n }\n .el-dialog__body {\n padding: 0px;\n }\n .el-form {\n padding: 20px;\n padding-right: 40px;\n }\n .el-dialog__footer {\n height: 60px;\n border-top: 1px solid #747373;\n text-align: right;\n width: 100%;\n padding: 0px;\n padding-top: 15px;\n .el-button + .el-button {\n margin-right: 10px;\n }\n .el-button {\n padding-top: 8px;\n }\n }\n }\n}\n</style>\n"]}]}