From 61ce61386bbb5ac886fb1f577b1acd2d7a4fb0df Mon Sep 17 00:00:00 2001
From: wl <173@qq.com>
Date: 星期三, 21 十二月 2022 11:29:24 +0800
Subject: [PATCH] fix:修改部门bug和对齐违规违建
---
src/views/systemSetting/device/bayonet/create/index.vue | 406 +++++++++++++++++++++++++++++++++++++++++-----------------
1 files changed, 287 insertions(+), 119 deletions(-)
diff --git a/src/views/systemSetting/device/bayonet/create/index.vue b/src/views/systemSetting/device/bayonet/create/index.vue
index a97553f..170d4f3 100644
--- a/src/views/systemSetting/device/bayonet/create/index.vue
+++ b/src/views/systemSetting/device/bayonet/create/index.vue
@@ -1,137 +1,305 @@
<template>
- <div class="create">
- <el-form ref="device" label-position="right" label-width="120px" :model="bayonet" :rule="rules">
- <!-- 鍗″彛鍚嶇О -->
- <div class="device-item">
- <div class="item-left">
- <el-form-item label="鍗″彛鍚嶇О:" prop="name">
- <el-input v-model="bayonet.name" placeholder="璇峰~鍐欏崱鍙e悕绉�"></el-input>
- </el-form-item>
- </div>
- <div class="item-right"></div>
- </div>
- <!-- 缁忕含搴︿綅缃� -->
- <div class="device-item">
- <div class="item-left">
- <el-form-item label="缁忕含搴︿綅缃�:" prop="longitude">
- <el-input v-model="bayonet.longitude" placeholder="璇峰~鍐欑粡搴︿綅缃�"></el-input>
- </el-form-item>
- <el-form-item prop="latitude">
- <el-input v-model="bayonet.latitude" placeholder="璇峰~鍐欑含搴︿綅缃�"></el-input>
- </el-form-item>
- </div>
- <div class="item-right"></div>
- </div>
- <!-- 鎵�灞炲尯鍩� -->
- <div class="device-item">
- <div class="item-left">
- <el-form-item label="鎵�灞炲尯鍩�:" prop="area">
- <el-input v-model="bayonet.area" placeholder="璇峰~鍐欏尯鍩熷悕绉�"></el-input>
- </el-form-item>
- </div>
- <div class="item-right"></div>
- </div>
- <!-- 鍩熷悕/ip -->
- <div class="device-item">
- <div class="item-left">
- <el-form-item label="鍩熷悕/IP:" prop="domainName">
- <el-input v-model="bayonet.domainName" placeholder="璇峰~鍐欏煙鍚嶆垨鑰匢P"></el-input>
- </el-form-item>
- </div>
- <div class="item-right"></div>
- </div>
- <!-- 绔彛鍙� -->
- <div class="device-item">
- <div class="item-left">
- <el-form-item label="绔彛鍙�:" prop="port">
- <el-input v-model="bayonet.port" placeholder="璇疯緭鍏ョ鍙e彿"></el-input>
- </el-form-item>
- </div>
- <div class="item-right"></div>
- </div>
- <!-- 鍓嶇绫诲瀷 -->
- <div class="device-item">
- <div class="item-left">
- <el-form-item label="鍓嶇绫诲瀷:" prop="webType">
- <el-input v-model="bayonet.webType" placeholder="璇疯緭鍏ュ墠绔被鍨�"></el-input>
- </el-form-item>
- </div>
- <div class="item-right"></div>
- </div>
- <!-- 鍑哄叆鍩庣被鍨� -->
- <div class="device-item">
- <div class="item-left">
- <el-form-item label="鍑哄叆鍩庣被鍨�:" prop="cityType">
- <el-input v-model="bayonet.cityType" placeholder="鍑哄煄/鍏ュ煄"></el-input>
- </el-form-item>
- </div>
- <div class="item-right"></div>
- </div>
- <!-- 鎻忚堪 -->
- <div class="device-item">
- <div class="item-left">
- <el-form-item label="鎻忚堪:" prop="description">
- <el-input type="textarea" :rows='5' maxlength="200" v-model="bayonet.description" placeholder="璇疯緭鍏ユ弿杩板唴瀹�200瀛椾互鍐�"></el-input>
- </el-form-item>
- </div>
- <div class="item-right"></div>
- </div>
- <!-- 鎸夐挳 -->
- <div class="device-btn">
- <el-button>杩斿洖</el-button>
- <el-button type="primary">纭畾</el-button>
- </div>
- </el-form>
- </div>
+ <div class="create">
+ <el-form
+ ref="device"
+ label-position="right"
+ label-width="120px"
+ :model="bayonet"
+ :rules="rules"
+ >
+ <!-- 鍗″彛鍚嶇О -->
+ <div class="device-item">
+ <div class="item-left">
+ <el-form-item label="鍗″彛鍚嶇О:" prop="name">
+ <el-input
+ v-model="bayonet.name"
+ placeholder="璇峰~鍐欏崱鍙e悕绉�"
+ ></el-input>
+ </el-form-item>
+ </div>
+ <div class="item-right"></div>
+ </div>
+ <!-- 缁忕含搴︿綅缃� -->
+ <div class="device-item">
+ <div class="item-left">
+ <el-form-item label="缁忕含搴︿綅缃�:" prop="longitude">
+ <el-input
+ v-model="bayonet.longitude"
+ placeholder="璇峰~鍐欑粡搴︿綅缃�"
+ ></el-input>
+ </el-form-item>
+ <el-form-item prop="latitude">
+ <el-input
+ v-model="bayonet.latitude"
+ placeholder="璇峰~鍐欑含搴︿綅缃�"
+ ></el-input>
+ </el-form-item>
+ </div>
+ <div class="item-right"></div>
+ </div>
+ <!-- 鎵�灞炲尯鍩� -->
+ <div class="device-item">
+ <div class="item-left">
+ <el-form-item label="鎵�灞炲尯鍩�:" prop="belongArea">
+ <el-input
+ v-model="bayonet.belongArea"
+ placeholder="璇峰~鍐欏尯鍩熷悕绉�"
+ ></el-input>
+ </el-form-item>
+ </div>
+ <div class="item-right"></div>
+ </div>
+ <!-- 鍩熷悕/ip -->
+ <div class="device-item">
+ <div class="item-left">
+ <el-form-item label="鍩熷悕/IP:" prop="ipAddress">
+ <el-input
+ v-model="bayonet.ipAddress"
+ placeholder="璇峰~鍐欏煙鍚嶆垨鑰匢P"
+ ></el-input>
+ </el-form-item>
+ </div>
+ <div class="item-right"></div>
+ </div>
+ <!-- 绔彛鍙� -->
+ <div class="device-item">
+ <div class="item-left">
+ <el-form-item label="绔彛鍙�:" prop="port">
+ <el-input
+ v-model="bayonet.port"
+ placeholder="璇疯緭鍏ョ鍙e彿"
+ ></el-input>
+ </el-form-item>
+ </div>
+ <div class="item-right"></div>
+ </div>
+ <!-- 鍓嶇绫诲瀷 -->
+ <div class="device-item">
+ <div class="item-left">
+ <el-form-item class="optionItem" label="鍓嶇绫诲瀷:" prop="role">
+ <el-select
+ v-model="bayonet.frontEndType"
+ placeholder="璇疯緭鍏ュ墠绔被鍨�"
+ collapse-tags
+ >
+ <el-option
+ v-for="item in frontEndTypeList"
+ :key="item.id"
+ :label="item.name"
+ :value="item.id"
+ >
+ </el-option>
+ </el-select>
+ </el-form-item>
+ </div>
+ <div class="item-right"></div>
+ </div>
+ <!-- 鍑哄叆鍩庣被鍨� -->
+ <div class="device-item">
+ <div class="item-left">
+ <el-form-item class="optionItem" label="鍑哄叆鍩庣被鍨�:" prop="role">
+ <el-select
+ v-model="bayonet.inOutCityType"
+ placeholder="璇疯緭鍏ュ嚭鍏ュ煄绫诲瀷"
+ collapse-tags
+ >
+ <el-option
+ v-for="item in inOutTypeList"
+ :key="item.id"
+ :label="item.name"
+ :value="item.id"
+ >
+ </el-option>
+ </el-select>
+ </el-form-item>
+ </div>
+ <div class="item-right"></div>
+ </div>
+ <!-- 鎻忚堪 -->
+ <div class="device-item">
+ <div class="item-left">
+ <el-form-item label="鎻忚堪:" prop="description">
+ <el-input
+ type="textarea"
+ :rows="5"
+ maxlength="200"
+ v-model="bayonet.description"
+ placeholder="璇疯緭鍏ユ弿杩板唴瀹�200瀛椾互鍐�"
+ ></el-input>
+ </el-form-item>
+ </div>
+ <div class="item-right"></div>
+ </div>
+ <!-- 鎸夐挳 -->
+ <div class="device-btn">
+ <el-button @click="closeDialog">杩斿洖</el-button>
+ <el-button type="primary" @click="onSubmit">纭畾</el-button>
+ </div>
+ </el-form>
+ </div>
</template>
<script>
-export default {
- data() {
- return {
- bayonet: {
- bayonetName: '',
- latitude: '',
- longitude: '',
- area: '',
- ipAddress: '',
- port: '',
- frontEndType: '',
- inOutCityType: '',
- description: '',
- },
- rules: {
+import bayonet from "@/api/system/bayonet";
+import { deepClone, getTypeList } from "@/utils/helper";
- }
+export default {
+ props: {
+ originalBayonet: {
+ type: Object,
+ default: () => {},
+ },
+ isEdit: {
+ type: Boolean,
+ default: () => false,
+ },
+ },
+
+ data() {
+ return {
+ bayonet: {
+ name: "",
+ latitude: "",
+ longitude: "",
+ belongArea: "",
+ ipAddress: "",
+ port: "",
+ frontEndType: "",
+ inOutCityType: "",
+ description: "",
+ },
+ rules: {
+ name: [{ required: true, trigger: "blur", message: "璇峰~鍐欏崱鍙e悕绉�" }],
+ latitude: [
+ {
+ required: true,
+ trigger: ["blur", "change"],
+ message: "璇峰~鍐欑含搴︿綅缃�",
+ },
+ ],
+ longitude: [
+ {
+ required: true,
+ trigger: ["blur", "change"],
+ message: "璇峰~鍐欑粡搴︿綅缃�",
+ },
+ ],
+ belongArea: [
+ {
+ required: true,
+ trigger: ["blur", "change"],
+ message: "璇峰~鍐欏尯鍩熷悕绉�",
+ },
+ ],
+ ipAddress: [
+ {
+ required: true,
+ trigger: ["blur", "change"],
+ message: "璇峰~鍐欏煙鍚嶆垨鑰匢P",
+ },
+ ],
+ port: [
+ {
+ required: true,
+ trigger: ["blur", "change"],
+ message: "璇疯緭鍏ョ鍙e彿",
+ },
+ ],
+ frontEndType: [
+ {
+ required: true,
+ trigger: ["blur", "change"],
+ message: "璇疯緭鍏ュ墠绔被鍨�",
+ },
+ ],
+ inOutCityType: [
+ {
+ required: true,
+ trigger: ["blur", "change"],
+ message: "璇峰~鍐欏嚭鍩�/鍏ュ煄",
+ },
+ ],
+ },
+ frontEndTypeList: [],
+ inOutTypeList: [],
+ };
+ },
+ beforeCreate() {},
+ created() {
+ this.getInOutCityTypeList();
+ this.getFrontEndTypeList();
+ if (this.originalBayonet) {
+ this.bayonet = this.originalBayonet;
+ }
+ },
+ methods: {
+ onSubmit() {
+ this.$refs.device.validate((valid) => {
+ if (valid) {
+ const copyBayonet = deepClone(this.bayonet);
+ if (!this.isEdit) {
+ bayonet
+ .addBayonet(this.bayonet)
+ .then(() => {
+ this.$message({ type: "success", message: "鎿嶄綔鎴愬姛" });
+ this.$emit("closeDialog");
+ })
+ .catch((err) => {
+ this.$message({ type: "error", message: err });
+ });
+ } else {
+ bayonet
+ .updateBayonet(copyBayonet)
+ .then(() => {
+ this.$message({ type: "success", message: "鎿嶄綔鎴愬姛" });
+ this.$emit("closeDialog");
+ })
+ .catch((err) => {
+ this.$message({ type: "error", message: err });
+ });
+ }
+ } else {
+ this.$message({ type: "warning", message: "璇锋鏌ュ繀濉」" });
}
+ });
+ },
+ async getInOutCityTypeList() {
+ this.inOutTypeList = await getTypeList(1, "14");
},
-}
+ async getFrontEndTypeList() {
+ this.frontEndTypeList = await getTypeList(1, "13");
+ },
+ closeDialog() {
+ this.$emit("closeDialog");
+ },
+ },
+};
</script>
<style lang="scss" scoped>
.create {
- padding: 20px;
+ padding: 20px;
- .device-item {
- display: flex;
+ .device-item {
+ display: flex;
- .item-left {
- flex: 6;
- display: flex;
+ .item-left {
+ flex: 6;
+ display: flex;
- .el-form-item {
- flex: 1;
- }
- }
-
- .item-right {
- flex: 4;
- }
+ .el-form-item {
+ flex: 1;
+ }
}
- .device-btn {
- padding-top: 20px;
- display: flex;
- justify-content: center;
+ .item-right {
+ flex: 4;
}
+ }
+
+ .device-btn {
+ padding-top: 20px;
+ display: flex;
+ justify-content: center;
+ }
}
</style>
\ No newline at end of file
--
Gitblit v1.8.0