From 14f8b7b32ed9133152780eb072adbc32df2eb242 Mon Sep 17 00:00:00 2001 From: zhanghua <314079846@qq.com> Date: 星期一, 07 十一月 2022 17:42:16 +0800 Subject: [PATCH] 音柱、手持设备修改 --- src/store/system/loudspeaker/index.js | 3 src/views/systemSetting/device/loudspeaker/components/dialogForm.vue | 81 ++++----------- src/api/system/handheldTerminal.js | 2 src/api/system/loudspeaker.js | 2 src/views/systemSetting/device/loudspeaker/index.vue | 54 +++++++--- src/store/system/handheldTerminal/index.js | 7 + src/views/systemSetting/device/handheldTerminal/index.vue | 62 +++++++---- src/views/layout/components/Menu/index.vue | 3 src/views/systemSetting/device/handheldTerminal/components/dialogForm.vue | 38 ++++--- 9 files changed, 129 insertions(+), 123 deletions(-) diff --git a/src/api/system/handheldTerminal.js b/src/api/system/handheldTerminal.js index e478797..a04bd7d 100644 --- a/src/api/system/handheldTerminal.js +++ b/src/api/system/handheldTerminal.js @@ -15,6 +15,6 @@ }, // 鍒犻櫎 deleteHandheldTerminal: (id) => { - return http.delete('/sccg/equipment_handheld_terminal/' + id); + return http.delete('/sccg/equipment_handheld_terminal/delete/' + id); }, }; \ No newline at end of file diff --git a/src/api/system/loudspeaker.js b/src/api/system/loudspeaker.js index 799871c..ba5a1c3 100644 --- a/src/api/system/loudspeaker.js +++ b/src/api/system/loudspeaker.js @@ -15,6 +15,6 @@ }, // 鍒犻櫎 deleteLoudspeaker: (id) => { - return http.delete('/sccg/equipment_loudspeaker/' + id); + return http.delete('/sccg/equipment_loudspeaker/delete/' + id); }, }; diff --git a/src/store/system/handheldTerminal/index.js b/src/store/system/handheldTerminal/index.js index 41336d3..363ceca 100644 --- a/src/store/system/handheldTerminal/index.js +++ b/src/store/system/handheldTerminal/index.js @@ -9,10 +9,13 @@ return handheldTerminalApi.getHandheldTerminalList(params); }, saveHandheldTerminal(context, params) { - return loudspeakerApi.saveHandheldTerminal(params); + return handheldTerminalApi.saveHandheldTerminal(params); }, updateHandheldTerminal(context, params) { - return loudspeakerApi.updateHandheldTerminal(params); + return handheldTerminalApi.updateHandheldTerminal(params); + }, + deleteHandheldTerminal(context, id) { + return handheldTerminalApi.deleteHandheldTerminal(id); }, }, }; \ No newline at end of file diff --git a/src/store/system/loudspeaker/index.js b/src/store/system/loudspeaker/index.js index 3dc7ab2..04e8329 100644 --- a/src/store/system/loudspeaker/index.js +++ b/src/store/system/loudspeaker/index.js @@ -14,5 +14,8 @@ updateLoudspeaker(context, params) { return loudspeakerApi.updateLoudspeaker(params); }, + deleteLoudspeaker(context, id) { + return loudspeakerApi.deleteLoudspeaker(id); + }, }, }; \ No newline at end of file diff --git a/src/views/layout/components/Menu/index.vue b/src/views/layout/components/Menu/index.vue index df0d374..b7b43c5 100644 --- a/src/views/layout/components/Menu/index.vue +++ b/src/views/layout/components/Menu/index.vue @@ -80,16 +80,13 @@ const info = JSON.parse(sessionStorage.getItem("user")); if (info && info.menus) { - console.log("timer--", timer); window.clearInterval(timer); this.menuList = info.menus; - console.log(this.menuList); } else { if (!timer) { timer = window.setInterval(() => { this.loadMenu(); }, 1000); - console.log("timer++", timer); } } }, diff --git a/src/views/systemSetting/device/handheldTerminal/components/dialogForm.vue b/src/views/systemSetting/device/handheldTerminal/components/dialogForm.vue index fa3c400..511b162 100644 --- a/src/views/systemSetting/device/handheldTerminal/components/dialogForm.vue +++ b/src/views/systemSetting/device/handheldTerminal/components/dialogForm.vue @@ -73,6 +73,10 @@ </template> <script> import { validatePhone, validateName } from "@/utils/validate"; + +import { createNamespacedHelpers } from "vuex"; +const { mapActions } = createNamespacedHelpers("handheldTerminal"); + export default { data() { const checkName = (rule, value, callback) => { @@ -189,37 +193,41 @@ // 鍒濆鍖栭儴闂ㄦ爲 getDepartTree(); // 鍒濆鍖栨暟鎹� - this.form = JSON.parse(JSON.stringify(this.info)); + this.form = this.info; if (!this.form.departName) { this.form.departName = this.form.pdepartName; } }, + + watch: { + info(newVal) { + this.form = newVal; //瀵圭埗缁勪欢浼犺繃鏉ョ殑鍊艰繘琛岀洃鍚紝濡傛灉鏀瑰彉涔熷瀛愮粍浠跺唴閮ㄧ殑鍊艰繘琛屾敼鍙� + }, + }, methods: { + ...mapActions(["saveHandheldTerminal", "updateHandheldTerminal"]), // 淇敼鎵ф硶杞� handleUpdateLawCar() { this.$refs.formRef.validate((valid) => { if (valid) { const { form } = this; - this.$axios({ - method: "put", - url: "sccg/car_Manage/modification_enforce", - data: { - ...form, - }, - }).then((res) => { - if (res.code === 200) { + if (form.id > 0) { + this.updateHandheldTerminal(form).then((res) => { this.$message({ type: "success", - message: "淇敼杞﹁締鎴愬姛", + message: "淇敼鎵嬫寔璁惧鎴愬姛", }); this.$emit("closeDialog", { flag: false, index: 1 }); - } else { + }); + } else { + this.saveHandheldTerminal(form).then((res) => { this.$message({ - type: "error", - message: res.message, + type: "success", + message: "淇濆瓨鎵嬫寔璁惧鎴愬姛", }); - } - }); + this.$emit("closeDialog", { flag: false, index: 1 }); + }); + } } else { return false; } diff --git a/src/views/systemSetting/device/handheldTerminal/index.vue b/src/views/systemSetting/device/handheldTerminal/index.vue index 03d856f..6e2fd98 100644 --- a/src/views/systemSetting/device/handheldTerminal/index.vue +++ b/src/views/systemSetting/device/handheldTerminal/index.vue @@ -23,10 +23,7 @@ <main> <div class="main-content"> <div class="main-title"> - <el-button - class="el-icon-plus" - type="primary" - @click="dialogCreate = true" + <el-button class="el-icon-plus" type="primary" @click="handleAdd" >娣诲姞</el-button > </div> @@ -53,7 +50,7 @@ </el-table-column> <el-table-column prop="phone" label="鑱旂郴鏂瑰紡" min-width="10"> </el-table-column> - <el-table-column prop="pDepartName" label="鎵�灞為儴闂�" min-width="10"> + <el-table-column prop="pdepartName" label="鎵�灞為儴闂�" min-width="10"> </el-table-column> <el-table-column prop="departName" label="鎵�灞炲ぇ闃�" min-width="10"> </el-table-column> @@ -68,7 +65,7 @@ <el-table-column prop="operation" label="鎿嶄綔" min-width="20"> <template slot-scope="scope"> - <div class="btn"> + <div class="operation"> <span @click="handleEdit(scope.row)">缂栬緫</span> <span class="line">|</span> <span @click="handleDelete(scope.row)">鍒犻櫎</span> @@ -105,7 +102,7 @@ width="60%" :before-close="handleClose" > - <MyForm :info="handheldTerminal" :closeDialog="setTableData"></MyForm> + <MyForm :info="handheldTerminal" @closeDialog="handleCallBack"></MyForm> </el-dialog> </footer> </div> @@ -142,31 +139,47 @@ pageSize: 10, currentPage: 1, renderFlag: false, - handheldTerminal: { - id: 0, - name: "", - code: "", - user: "", - phone: "", - departId: 0, - }, + handheldTerminal: {}, }; }, created() { this.setTableData(); }, methods: { - ...mapActions([ - "getHandheldTerminalList", - "saveHandheldTerminal", - "updateHandheldTerminal", - ]), + ...mapActions(["getHandheldTerminalList", "deleteHandheldTerminal"]), + handleAdd() { + this.handheldTerminal = { + id: 0, + name: "", + code: "", + user: "", + phone: "", + departId: 0, + departName: "", + }; + this.dialogCreate = true; + }, handleEdit(row) { - this.handheldTerminal = row; this.dialogCreate = true; }, - handleDelete(row) {}, + handleDelete(row) { + this.$confirm("纭鍒犻櫎锛�").then((_) => { + this.deleteHandheldTerminal(row.id).then((res) => { + this.$message({ + type: "success", + message: "鍒犻櫎鎴愬姛锛�", + }); + this.setTableData(); + }); + }); + }, + + handleCallBack(e) { + this.currentPage = 1; + this.dialogCreate = false; + this.setTableData(); + }, formatSate(row, column) { return row.state == 1 ? "鍦ㄧ嚎" : "绂荤嚎"; }, @@ -183,6 +196,7 @@ // 寮圭獥鍏抽棴 handleClose(done) { this.$confirm("纭鍏抽棴?").then((_) => { + this.dialogCreate = false; done(); }); }, @@ -194,8 +208,8 @@ pageSize, state: context, }).then((res) => { - this.list = res.records; - this.totalNum = res.total; + this.list = res.records; + this.totalNum = res.total; }); }, handleStateChange(e) { diff --git a/src/views/systemSetting/device/loudspeaker/components/dialogForm.vue b/src/views/systemSetting/device/loudspeaker/components/dialogForm.vue index 39a5e0e..22090d6 100644 --- a/src/views/systemSetting/device/loudspeaker/components/dialogForm.vue +++ b/src/views/systemSetting/device/loudspeaker/components/dialogForm.vue @@ -58,7 +58,7 @@ <el-button type="primary" class="btn submit" - @click.native.prevent="handleUpdateLawCar" + @click.native.prevent="handleSave" >纭 </el-button> </div> @@ -69,6 +69,8 @@ </div> </template> <script> +import { createNamespacedHelpers } from "vuex"; +const { mapActions } = createNamespacedHelpers("loudspeaker"); export default { data() { const checkName = (rule, value, callback) => { @@ -113,77 +115,40 @@ }; }, created() { - // 鍒濆鍖栨暟鎹� - - this.form = JSON.parse(JSON.stringify(this.info)); + this.form = this.info; + }, + watch: { + info(newVal) { + this.form = newVal; //瀵圭埗缁勪欢浼犺繃鏉ョ殑鍊艰繘琛岀洃鍚紝濡傛灉鏀瑰彉涔熷瀛愮粍浠跺唴閮ㄧ殑鍊艰繘琛屾敼鍙� + }, }, methods: { - // 淇敼鎵ф硶杞� - handleUpdateLawCar() { + ...mapActions(["saveLoudspeaker", "updateLoudspeaker"]), + // 淇濆瓨 + handleSave() { this.$refs.formRef.validate((valid) => { if (valid) { const { form } = this; - this.$axios({ - method: "put", - url: "sccg/car_Manage/modification_enforce", - data: { - ...form, - }, - }).then((res) => { - console.log(res); - if (res.code === 200) { + if (form.id > 0) { + this.updateLoudspeaker(form).then((res) => { this.$message({ type: "success", - message: "淇敼杞﹁締鎴愬姛", + message: "淇敼闊虫煴鎴愬姛", }); this.$emit("closeDialog", { flag: false, index: 1 }); - } else { + }); + } else { + this.saveLoudspeaker(form).then((res) => { this.$message({ - type: "error", - message: res.message, + type: "success", + message: "淇濆瓨闊虫煴鎴愬姛", }); - } - }); + this.$emit("closeDialog", { flag: false, index: 1 }); + }); + } } else { return false; } - }); - }, - // 閮ㄩ棬淇敼 - handleCheck(data, checked) { - console.log(data); - this.form.departId = data.id; - this.form.departName = data.departName; - // 鑾峰彇褰撳墠閫夋嫨鐨刬d鍦ㄦ暟缁勪腑鐨勭储寮� - const indexs = this.selectOrg.orgsid.indexOf(data.id); - // 濡傛灉涓嶅瓨鍦ㄦ暟缁勪腑锛屽苟涓旀暟缁勪腑宸茬粡鏈変竴涓猧d骞朵笖checked涓簍rue鐨勬椂鍊欙紝浠h〃涓嶈兘鍐嶆閫夋嫨銆� - if (indexs < 0 && this.selectOrg.orgsid.length === 1 && checked) { - this.$message({ - message: "鍙兘閫夋嫨涓�涓儴闂紒", - type: "warning", - showClose: true, - }); - // 璁剧疆宸查�夋嫨鐨勮妭鐐逛负false 寰堥噸瑕� - this.$refs.tree.setChecked(data, false); - } else if (this.selectOrg.orgsid.length === 0 && checked) { - // 鍙戠幇鏁扮粍涓虹┖ 骞朵笖鏄凡閫夋嫨 - // 闃叉鏁扮粍鏈夊�硷紝棣栧厛娓呯┖锛屽啀push - this.selectOrg.orgsid = []; - this.selectOrg.orgsid.push(data.id); - } else if ( - indexs >= 0 && - this.selectOrg.orgsid.length === 1 && - !checked - ) { - // 鍐嶆鐩存帴杩涜璧嬪�间负绌烘搷浣� - this.selectOrg.orgsid = []; - this.form.departName = ""; - } - }, - // 鑾峰彇閮ㄩ棬鏍� - getDepartTree() { - this.$axios.get("/sccg/depart/tree").then((res) => { - this.departList = res.data; }); }, }, diff --git a/src/views/systemSetting/device/loudspeaker/index.vue b/src/views/systemSetting/device/loudspeaker/index.vue index 8c4c33e..19de7d7 100644 --- a/src/views/systemSetting/device/loudspeaker/index.vue +++ b/src/views/systemSetting/device/loudspeaker/index.vue @@ -23,10 +23,7 @@ <main> <div class="main-content"> <div class="main-title"> - <el-button - class="el-icon-plus" - type="primary" - @click="dialogCreate = true" + <el-button class="el-icon-plus" type="primary" @click="handleAdd" >娣诲姞</el-button > </div> @@ -72,7 +69,7 @@ </el-table-column> <el-table-column prop="operation" label="鎿嶄綔" min-width="20"> <template slot-scope="scope"> - <div class="btn"> + <div class="operation"> <span @click="handleEdit(scope.row)">缂栬緫</span> <span class="line">|</span> <span @click="handleDelete(scope.row)">鍒犻櫎</span> @@ -106,10 +103,9 @@ title="娣诲姞闊虫煴" :visible.sync="dialogCreate" width="60%" - v-if="dialogCreate" :before-close="handleClose" > - <MyForm :info="loudspeakerInfo" :closeDialog="null"></MyForm> + <MyForm :info="loudspeakerInfo" @closeDialog="handleCallBack"></MyForm> </el-dialog> </footer> </div> @@ -146,14 +142,7 @@ pageSize: 10, currentPage: 1, renderFlag: false, - loudspeakerInfo: { - id: 0, - name: "", - code: "", - power: "", - frequencyResponse: "", - fullRangeSpeaker: "", - }, + loudspeakerInfo: {}, }; }, created() { @@ -164,16 +153,42 @@ "getLoudspeakerList", "saveLoudspeaker", "updateLoudspeaker", + "deleteLoudspeaker", ]), + handleAdd() { + this.loudspeakerInfo = { + id: 0, + name: "", + code: "", + power: "", + frequencyResponse: "", + fullRangeSpeaker: "", + }; + this.dialogCreate = true; + }, handleEdit(row) { this.loudspeakerInfo = row; this.dialogCreate = true; }, - handleDelete(row) {}, + handleDelete(row) { + this.$confirm("纭鍒犻櫎锛�").then((_) => { + this.deleteLoudspeaker(row.id).then((res) => { + this.$message({ + type: "success", + message: "鍒犻櫎鎴愬姛锛�", + }); + this.setTableData(); + }); + }); + }, formatSate(row, column) { return row.state == 1 ? "鍦ㄧ嚎" : "绂荤嚎"; }, - + handleCallBack(e) { + this.currentPage = 1; + this.dialogCreate = false; + this.setTableData(); + }, // 璁剧疆琛ㄦ牸鏂戦┈绾� tableRowClassName({ row, rowIndex }) { if ((rowIndex + 1) % 2 == 0) { @@ -197,11 +212,12 @@ pageSize, state: context, }).then((res) => { - this.list = res.records; - this.totalNum = res.total; + this.list = res.records; + this.totalNum = res.total; }); }, handleStateChange(e) { + this.currentPage = 1; this.setTableData(); }, // 褰撳墠椤垫敼鍙樿Е鍙戜簨浠� -- Gitblit v1.8.0