From 50a3487ec7940e9604b4410f70fcdec2fe85609a Mon Sep 17 00:00:00 2001 From: zhangzeli <123456> Date: 星期一, 01 十一月 2021 15:40:47 +0800 Subject: [PATCH] 设备 --- src/views/your/car-manage/carManage.vue | 221 ++++++++++++++++++++++++++++++++++++++++++------------- 1 files changed, 168 insertions(+), 53 deletions(-) diff --git a/src/views/your/car-manage/carManage.vue b/src/views/your/car-manage/carManage.vue index 0f94c6a..0ef24a5 100644 --- a/src/views/your/car-manage/carManage.vue +++ b/src/views/your/car-manage/carManage.vue @@ -60,12 +60,7 @@ :mask-closable="false" :width="500" > - <Form - ref="carForm" - :model="carForm" - :label-width="80" - :rules="carFormValidate" - > + <Form ref="carForm" :model="carForm" :label-width="80" :rules="carFormValidate"> <FormItem label="鍝佺墝" prop="brand"> <Input v-model="carForm.brand"/> </FormItem> @@ -95,12 +90,50 @@ > </div> </Modal> - <Modal :title="modalTitle" v-model="equipmentVisible" :mask-closable="false" :width="1200"> + <Modal :title="modalTitle" v-model="equipmentVisible" :mask-closable="false" :width="1044"> + <Row class="operation" style="padding-bottom: 20px"> + <Button @click="addEquipment" type="primary" icon="md-add">娣诲姞璁惧</Button> + <Button @click="init" icon="md-refresh">鍒锋柊</Button> + </Row> <Table :loading="loading" border :columns="columns2" :data="data2" ref="table" sortable="custom" @on-sort-change="changeSort" @on-selection-change="changeSelect"> </Table> + </Modal> + <Modal :title="modalTitle" v-model="addEquipmentVisible" :mask-closable="false" :width="500"> + <Form ref="equipmentForm" :model="equipmentForm" :label-width="80" :rules="equipmentFormValidate"> + <FormItem label="璁惧" prop="type"> + <Select v-model="equipmentForm.type"> + <Option :value="0">杞︽満</Option> + <Option :value="1">鎽勫儚鏈�</Option> + <Option :value="2">鎶撴媿鏈�</Option> + <Option :value="3">pad</Option> + </Select> + </FormItem> + <FormItem label="璁惧" prop="status"> + <Select v-model="equipmentForm.status"> + <Option :value="0">姝e父</Option> + <Option :value="1">鍋滅敤</Option> + </Select> + </FormItem> + <FormItem label="缂栧彿" prop="code"> + <Input v-model="equipmentForm.code" /> + </FormItem> + <FormItem label="ip鍦板潃" prop="ip"> + <Input v-model="equipmentForm.ip" /> + </FormItem> + <FormItem label="绔彛鍙�" prop="port"> + <Input v-model="equipmentForm.port" /> + </FormItem> + + </Form> + <div slot="footer"> + <Button type="text" @click="carRole">鍙栨秷</Button> + <Button type="primary" :loading="submitLoading" @click="submitEquipment" + >鎻愪氦</Button + > + </div> </Modal> <!-- 鑿滃崟鏉冮檺 --> <Drawer @@ -200,6 +233,8 @@ editCar, deleteCar, getEquipment, + addEquipment, + deleteEquipment, } from "@/api/open"; import util from "@/libs/util.js"; export default { @@ -219,6 +254,7 @@ sortType: "desc", modalType: 0, roleModalVisible: false, + addEquipmentVisible: false, equipmentVisible: false, carModalVisible: false, permModalVisible: false, @@ -233,6 +269,9 @@ key: "", }, carForm: { + status : 0 + }, + equipmentForm: { status : 0 }, removeForm: { @@ -402,18 +441,54 @@ { title: "璁惧绫诲瀷", key: "type", - width: 100, + width: 130, sortable: true, + render: (h, params) => { + let re = ""; + if (params.row.type == 0) { + return h("div", [ + h("Badge", { + props: { + text: "杞︽満", + }, + }), + ]); + } else if (params.row.type == 1) { + return h("div", [ + h("Badge", { + props: { + text: "鎽勫儚鏈�", + }, + }), + ]); + }else if (params.row.type == 2) { + return h("div", [ + h("Badge", { + props: { + text: "鎶撴媿鏈�", + }, + }), + ]); + }else if (params.row.type == 3) { + return h("div", [ + h("Badge", { + props: { + text: "pad", + }, + }), + ]); + } + }, }, { title: "缂栧彿", key: "code", - width: 100, + width: 120, }, { title: "鐘舵��", key: "status", - width: 100, + width: 120, sortable: true, render: (h, params) => { let re = ""; @@ -431,7 +506,7 @@ h("Badge", { props: { status: "error", - text: "绉婚櫎", + text: "鍋滅敤", }, }), ]); @@ -441,12 +516,12 @@ { title: "ip鍦板潃", key: "ip", - width: 100, + width: 120, }, { title: "绔彛鍙�", key: "port", - width: 100, + width: 120, sortable: true, }, { @@ -461,39 +536,7 @@ { on: { click: () => { - this.equipment(params.row); - }, - }, - }, - "璁惧" - ), - h("Divider", { - props: { - type: "vertical", - }, - }), - h( - "a", - { - on: { - click: () => { - this.removeCar(params.row); - }, - }, - }, - "绉婚櫎杞﹁締" - ), - h("Divider", { - props: { - type: "vertical", - }, - }), - h( - "a", - { - on: { - click: () => { - this.edit(params.row); + this.editEquipment(params.row); }, }, }, @@ -509,7 +552,7 @@ { on: { click: () => { - this.remove(params.row); + this.removeEquipment(params.row); }, }, }, @@ -522,11 +565,13 @@ data: [], data2: [], total: 0, + total2: 0, permData: [], editRolePermId: "", selectAllFlag: false, depData: [], dataType: 0, + carId: '', editDepartments: [], buyYear:'' }; @@ -613,13 +658,13 @@ } }); }, - getEquipmentList() { + getEquipmentList(carId) { this.loading = true; + this.searchForm.carId=carId; getEquipment(this.searchForm).then((res) => { this.loading = false; if (res.success) { this.data2 = res.result.records; - this.total = res.result.total; } }); }, @@ -679,6 +724,37 @@ } }); }, + submitEquipment() { + this.$refs.equipmentForm.validate((valid) => { + this.equipmentForm.carId = this.carId; + if (valid) { + if (this.modalType == 0) { + // 娣诲姞 + this.submitLoading = true; + addEquipment(this.equipmentForm).then((res) => { + this.submitLoading = false; + if (res.success) { + this.$Message.success("鎿嶄綔鎴愬姛"); + this.getEquipmentList(this.carId); + this.addEquipmentVisible = false; + this.getEquipmentList(this.carId); + } + }); + } else { + this.submitLoading = true; + addEquipment(this.equipmentForm).then((res) => { + this.submitLoading = false; + if (res.success) { + this.$Message.success("鎿嶄綔鎴愬姛"); + this.getEquipmentList(this.carId); + this.addEquipmentVisible = false; + } + }); + } + } + + }); + }, submitRemove(){ this.$refs.removeForm.validate((valid) => { if (valid) { @@ -694,8 +770,9 @@ } }); }, - equipment() { - this.getEquipmentList(); + equipment(row) { + this.carId = row.id + this.getEquipmentList(row.id); this.modalType = 0; this.modalTitle = "璁惧淇℃伅"; this.$refs.carForm.resetFields(); @@ -708,6 +785,14 @@ this.$refs.carForm.resetFields(); delete this.carForm.id; this.roleModalVisible = true; + }, + addEquipment() { + this.equipmentForm={}; + this.modalType = 0; + this.modalTitle = "娣诲姞璁惧"; + this.$refs.carForm.resetFields(); + delete this.carForm.id; + this.addEquipmentVisible = true; }, edit(v) { this.buyYear = v.buyYear; @@ -722,9 +807,23 @@ } let str = JSON.stringify(v); let roleInfo = JSON.parse(str); - this.carForm = roleInfo; this.roleModalVisible = true; + }, + editEquipment(v) { + this.modalType = 1; + this.modalTitle = "缂栬緫璁惧"; + this.$refs.equipmentForm.resetFields(); + // 杞崲null涓�"" + for (let attr in v) { + if (v[attr] == null) { + v[attr] = ""; + } + } + let str = JSON.stringify(v); + let roleInfo = JSON.parse(str); + this.equipmentForm = roleInfo; + this.addEquipmentVisible = true; }, removeCar(v) { this.dataType = 0; @@ -739,7 +838,6 @@ let str = JSON.stringify(v); let roleInfo = JSON.parse(str); roleInfo.status=1 - console.log(roleInfo); this.removeForm = roleInfo; this.carModalVisible = true; @@ -761,6 +859,23 @@ }, }); }, + removeEquipment(v) { + this.$Modal.confirm({ + title: "纭鍒犻櫎", + content: "鎮ㄧ‘璁よ鍒犻櫎鍚� ", + loading: true, + onOk: () => { + deleteEquipment({ ids: v.id }).then((res) => { + this.$Modal.remove(); + if (res.success) { + this.clearSelectAll(); + this.$Message.success("鍒犻櫎鎴愬姛"); + this.getEquipmentList(this.carId); + } + }); + }, + }); + }, setDefault(v) { this.loading = true; let params = { -- Gitblit v1.9.1