|
@@ -12,12 +12,8 @@
|
|
|
</el-form-item>
|
|
|
<el-form-item label="升级方式:" prop="upgradeType">
|
|
|
<el-select v-model="form.upgradeType" placeholder="请选择升级方式">
|
|
|
- <el-option
|
|
|
- v-for="item in dict.type.dev_upgrade_type"
|
|
|
- :key="item.value"
|
|
|
- :label="item.label"
|
|
|
- :value="Number(item.value)"
|
|
|
- />
|
|
|
+ <el-option v-for="item in dict.type.dev_upgrade_type" :key="item.value" :label="item.label"
|
|
|
+ :value="Number(item.value)" />
|
|
|
</el-select>
|
|
|
</el-form-item>
|
|
|
<el-form-item label="设备过滤:" prop="filter">
|
|
@@ -25,12 +21,8 @@
|
|
|
</el-form-item>
|
|
|
<el-form-item label="制造商:" prop="manufacturer">
|
|
|
<el-select v-model="form.manufacturer" placeholder="请选择设备制造商" clearable>
|
|
|
- <el-option
|
|
|
- v-for="item in dict.type.dev_manu_facturer"
|
|
|
- :key="item.value"
|
|
|
- :label="item.label"
|
|
|
- :value="item.value"
|
|
|
- />
|
|
|
+ <el-option v-for="item in dict.type.dev_manu_facturer" :key="item.value" :label="item.label"
|
|
|
+ :value="item.value" />
|
|
|
</el-select>
|
|
|
</el-form-item>
|
|
|
<el-form-item label="设备类型:" prop="categoryId">
|
|
@@ -40,143 +32,82 @@
|
|
|
</el-form-item>
|
|
|
<el-form-item label="是否热门:" prop="isHot">
|
|
|
<el-select v-model="form.isHot" placeholder="请选择是否热门">
|
|
|
- <el-option
|
|
|
- v-for="item in dict.type.hot_yes_no"
|
|
|
- :key="item.value"
|
|
|
- :label="item.label"
|
|
|
- :value="Number(item.value)"
|
|
|
- />
|
|
|
+ <el-option v-for="item in dict.type.hot_yes_no" :key="item.value" :label="item.label"
|
|
|
+ :value="Number(item.value)" />
|
|
|
</el-select>
|
|
|
</el-form-item>
|
|
|
<el-row>
|
|
|
<el-col :span="12">
|
|
|
<el-form-item label="在线图片:" prop="img">
|
|
|
- <Upload
|
|
|
- listType="picture-card"
|
|
|
- :url="form.img"
|
|
|
- @upload="handleUploadImg($event, 'online')"
|
|
|
- :disabled="disabled"
|
|
|
- />
|
|
|
+ <Upload listType="picture-card" :url="form.img" @upload="handleUploadImg($event, 'online')"
|
|
|
+ :disabled="disabled" />
|
|
|
</el-form-item>
|
|
|
</el-col>
|
|
|
<el-col :span="12">
|
|
|
<el-form-item label="离线图片:" prop="offlineImg" style="float:right">
|
|
|
- <Upload
|
|
|
- listType="picture-card"
|
|
|
- :url="form.offlineImg"
|
|
|
- @upload="handleUploadImg($event, 'offline')"
|
|
|
- :disabled="disabled"
|
|
|
- />
|
|
|
+ <Upload listType="picture-card" :url="form.offlineImg"
|
|
|
+ @upload="handleUploadImg($event, 'offline')" :disabled="disabled" />
|
|
|
</el-form-item>
|
|
|
</el-col>
|
|
|
</el-row>
|
|
|
<!-- 子表单 -->
|
|
|
- <el-button
|
|
|
- v-if="disabled === false && form.typeList.length < 4"
|
|
|
- type="primary"
|
|
|
- icon="el-icon-plus"
|
|
|
- @click="getAdd"
|
|
|
- >新增</el-button>
|
|
|
+ <el-button v-if="disabled === false && form.typeList.length < 4" type="primary" icon="el-icon-plus"
|
|
|
+ @click="getAdd">新增</el-button>
|
|
|
<Draggable v-model="form.typeList" animation="300">
|
|
|
<div class="sub-form" v-for="(item, index) in form.typeList" :key="item.id">
|
|
|
- <el-form-item
|
|
|
- label="设备模式:"
|
|
|
- :prop="`typeList.${index}.type`"
|
|
|
- :rules="{
|
|
|
+ <el-form-item label="设备模式:" :prop="`typeList.${index}.type`" :rules="{
|
|
|
required: true,
|
|
|
message: '请选择设备模式',
|
|
|
trigger: 'change',
|
|
|
- }"
|
|
|
- >
|
|
|
+ }">
|
|
|
<el-select v-model="item.type" placeholder="请选择设备模式" @change="getTypeChange($event, index)">
|
|
|
- <el-option
|
|
|
- v-for="item in dict.type.dev_list_type"
|
|
|
- :key="item.value"
|
|
|
- :label="item.label"
|
|
|
- :value="Number(item.value)"
|
|
|
- :disabled="item.disabled"
|
|
|
- />
|
|
|
+ <el-option v-for="item in dict.type.dev_list_type" :key="item.value" :label="item.label"
|
|
|
+ :value="Number(item.value)" :disabled="item.disabled" />
|
|
|
</el-select>
|
|
|
</el-form-item>
|
|
|
- <el-form-item
|
|
|
- v-if="item.type !== 3"
|
|
|
- label="功能权限:"
|
|
|
- :prop="`typeList.${index}.functionList`"
|
|
|
- :rules="{type: 'array', required: true, message: '请选择功能权限', trigger: 'change'}"
|
|
|
- >
|
|
|
+ <el-form-item v-if="item.type !== 3" label="功能权限:" :prop="`typeList.${index}.functionList`"
|
|
|
+ :rules="{type: 'array', required: true, message: '请选择功能权限', trigger: 'change'}">
|
|
|
<el-select v-model="item.functionList" placeholder="请选择功能权限" multiple>
|
|
|
- <el-option v-for="item in functionOptions" :key="item.id" :label="item.name" :value="item.type" />
|
|
|
+ <el-option v-for="item in functionOptions" :key="item.id" :label="item.name"
|
|
|
+ :value="item.type" />
|
|
|
</el-select>
|
|
|
</el-form-item>
|
|
|
- <el-form-item
|
|
|
- v-if="item.type !== 2 && item.type !== 4"
|
|
|
- label="连接方式:"
|
|
|
+ <el-form-item v-if="item.type !== 2 && item.type !== 4" label="连接方式:"
|
|
|
:prop="`typeList.${index}.connectType`"
|
|
|
- :rules="{required: true, message: '请选择连接方式', trigger: 'change'}"
|
|
|
- >
|
|
|
+ :rules="{required: true, message: '请选择连接方式', trigger: 'change'}">
|
|
|
<el-select v-model="item.connectType" placeholder="请选择连接方式">
|
|
|
- <el-option
|
|
|
- v-for="item in dict.type.dev_connect_type"
|
|
|
- :key="item.value"
|
|
|
- :label="item.label"
|
|
|
- :value="Number(item.value)"
|
|
|
- />
|
|
|
+ <el-option v-for="item in dict.type.dev_connect_type" :key="item.value" :label="item.label"
|
|
|
+ :value="Number(item.value)" />
|
|
|
</el-select>
|
|
|
</el-form-item>
|
|
|
- <el-form-item
|
|
|
- v-if="item.type === 1"
|
|
|
- label="引导页:"
|
|
|
- :prop="`typeList.${index}.guideUrl`"
|
|
|
- :rules="{ required: true, message: '请输入引导页网址' , trigger: 'blur'}"
|
|
|
- >
|
|
|
+ <el-form-item v-if="item.type === 1" label="引导页:" :prop="`typeList.${index}.guideUrl`"
|
|
|
+ :rules="{ required: true, message: '请输入引导页网址' , trigger: 'blur'}">
|
|
|
<el-input v-model="item.guideUrl" placeholder="请输入引导页网址" />
|
|
|
</el-form-item>
|
|
|
<el-row>
|
|
|
<el-col :span="12">
|
|
|
- <el-form-item
|
|
|
- :label="item.type === 1 || 3 ? '连接引导页:' : '开机引导图'"
|
|
|
+ <el-form-item :label="item.type === 1 || 3 ? '连接引导页:' : '开机引导图'"
|
|
|
:prop="`typeList.${index}.icon1`"
|
|
|
- :rules="{ required: true, message: '请上传开机引导图片', trigger: 'change'}"
|
|
|
- >
|
|
|
- <Upload
|
|
|
- listType="picture-card"
|
|
|
- :url="item.icon1"
|
|
|
- @upload="handleUploadIcon($event, index, 'icon1')"
|
|
|
- :disabled="disabled"
|
|
|
- />
|
|
|
+ :rules="{ required: true, message: '请上传开机引导图片', trigger: 'change'}">
|
|
|
+ <Upload listType="picture-card" :url="item.icon1"
|
|
|
+ @upload="handleUploadIcon($event, index, 'icon1')" :disabled="disabled" />
|
|
|
</el-form-item>
|
|
|
</el-col>
|
|
|
<el-col :span="12" v-if="item.type === 1 || item.type === 3">
|
|
|
- <el-form-item
|
|
|
- label="配对键引导图:"
|
|
|
- :prop="`typeList.${index}.icon2`"
|
|
|
- style="float:right"
|
|
|
- :rules="{ required: true, message: '请上传配对键引导图', trigger: 'change'}"
|
|
|
- >
|
|
|
- <Upload
|
|
|
- listType="picture-card"
|
|
|
- :url="item.icon2"
|
|
|
- @upload="handleUploadIcon($event, index, 'icon2')"
|
|
|
- :disabled="disabled"
|
|
|
- />
|
|
|
+ <el-form-item label="配对键引导图:" :prop="`typeList.${index}.icon2`" style="float:right"
|
|
|
+ :rules="{ required: true, message: '请上传配对键引导图', trigger: 'change'}">
|
|
|
+ <Upload listType="picture-card" :url="item.icon2"
|
|
|
+ @upload="handleUploadIcon($event, index, 'icon2')" :disabled="disabled" />
|
|
|
</el-form-item>
|
|
|
</el-col>
|
|
|
</el-row>
|
|
|
- <el-form-item
|
|
|
- v-if="item.type === 1"
|
|
|
- label="引导页内容:"
|
|
|
- :prop="`typeList.${index}.guidePageContent`"
|
|
|
- :rules="{required: true, message: '请输入引导页内容', trigger: 'blur'}"
|
|
|
- >
|
|
|
+ <el-form-item v-if="item.type === 1" label="引导页内容:" :prop="`typeList.${index}.guidePageContent`"
|
|
|
+ :rules="{required: true, message: '请输入引导页内容', trigger: 'blur'}">
|
|
|
<Editor v-model="item.guidePageContent" :min-height="250" :readOnly="disabled" />
|
|
|
</el-form-item>
|
|
|
<!-- 删除按钮 -->
|
|
|
- <el-link
|
|
|
- class="el-icon-close"
|
|
|
- v-if="form.typeList.length > 1"
|
|
|
- :underline="false"
|
|
|
- @click="getDelete(item.type, index)"
|
|
|
- />
|
|
|
+ <el-link class="el-icon-close" v-if="form.typeList.length > 1" :underline="false"
|
|
|
+ @click="getDelete(item.type, index)" />
|
|
|
</div>
|
|
|
</Draggable>
|
|
|
</el-form>
|
|
@@ -188,9 +119,8 @@
|
|
|
</template>
|
|
|
|
|
|
<script>
|
|
|
-import { deviceAdd, deviceDetail, deviceEdit } from "@/api/device/list";
|
|
|
-import { functionList } from "@/api/device/function";
|
|
|
-import { category } from "../mixin/index";
|
|
|
+import { Add, Detail, Edit } from "@/api/device/list";
|
|
|
+import { category, functions } from "../mixin/index";
|
|
|
import Upload from "@/components/Upload/index";
|
|
|
import Editor from "@/components/Editor/index";
|
|
|
import Draggable from "vuedraggable";
|
|
@@ -203,7 +133,7 @@ export default {
|
|
|
"dev_connect_type",
|
|
|
"dev_manu_facturer",
|
|
|
],
|
|
|
- mixins: [category],
|
|
|
+ mixins: [category, functions],
|
|
|
components: {
|
|
|
Upload,
|
|
|
Editor,
|
|
@@ -284,12 +214,7 @@ export default {
|
|
|
};
|
|
|
},
|
|
|
created() {
|
|
|
- // 权限列表
|
|
|
- functionList().then((res) => {
|
|
|
- if (res.code === 0) {
|
|
|
- this.functionOptions = res.data;
|
|
|
- }
|
|
|
- });
|
|
|
+
|
|
|
},
|
|
|
mounted() {
|
|
|
this.disabled = this.$route.query.key === "查看" ? true : false;
|
|
@@ -299,7 +224,7 @@ export default {
|
|
|
// 详情
|
|
|
getList() {
|
|
|
if (this.$route.query.id) {
|
|
|
- deviceDetail({
|
|
|
+ Detail({
|
|
|
id: this.$route.query.id,
|
|
|
}).then((res) => {
|
|
|
if (res.code === 0) {
|
|
@@ -359,7 +284,7 @@ export default {
|
|
|
if (valid) {
|
|
|
if (this.$route.query.id) {
|
|
|
// 编辑
|
|
|
- deviceEdit(this.form).then((res) => {
|
|
|
+ Edit(this.form).then((res) => {
|
|
|
if (res.code === 0) {
|
|
|
this.$message.success("修改成功!");
|
|
|
this.getCancel();
|
|
@@ -367,7 +292,7 @@ export default {
|
|
|
});
|
|
|
} else {
|
|
|
// 新建
|
|
|
- deviceAdd(this.form).then((res) => {
|
|
|
+ Add(this.form).then((res) => {
|
|
|
if (res.code === 0) {
|
|
|
this.$message.success("提交成功!");
|
|
|
this.getCancel();
|