产品模块完善

This commit is contained in:
kerwincui
2022-05-30 16:08:39 +08:00
parent ed5b747844
commit aab50e5a78
5 changed files with 32 additions and 45 deletions

View File

@@ -70,12 +70,6 @@
<el-col :span="9"> <el-col :span="9">
<div style="margin-top:10px;"> <div style="margin-top:10px;">
<el-image style="width:100%;height:100px;border:1px solid #ccc;border-radius:5px;" lazy :preview-src-list="[baseUrl+item.imgUrl]" :src="baseUrl+item.imgUrl" fit="cover" v-if="item.imgUrl!=null && item.imgUrl!=''"></el-image> <el-image style="width:100%;height:100px;border:1px solid #ccc;border-radius:5px;" lazy :preview-src-list="[baseUrl+item.imgUrl]" :src="baseUrl+item.imgUrl" fit="cover" v-if="item.imgUrl!=null && item.imgUrl!=''"></el-image>
<!-- 用于显示本地计算机手机树莓派等设备图片-->
<el-image style="width:100%;height:100px;border:1px solid #ccc;border-radius:5px;" :preview-src-list="[require('@/assets/images/esp8266.jpg')]" :src="require('@/assets/images/esp8266.jpg')" fit="cover" v-else-if="item.productName.indexOf('ESP8266')!=-1"></el-image>
<el-image style="width:100%;height:100px;border:1px solid #ccc;border-radius:5px;" :preview-src-list="[require('@/assets/images/esp32.jpg')]" :src="require('@/assets/images/esp32.jpg')" fit="cover" v-else-if="item.productName.indexOf('ESP32')!=-1"></el-image>
<el-image style="width:100%;height:100px;border:1px solid #ccc;border-radius:5px;" :preview-src-list="[require('@/assets/images/raspberry.jpg')]" :src="require('@/assets/images/raspberry.jpg')" fit="cover" v-else-if="item.productName.indexOf('Raspberry')!=-1"></el-image>
<el-image style="width:100%;height:100px;border:1px solid #ccc;border-radius:5px;" :preview-src-list="[require('@/assets/images/telphone.jpg')]" :src="require('@/assets/images/telphone.jpg')" fit="cover" v-else-if="item.productName.indexOf('Phone')!=-1"></el-image>
<el-image style="width:100%;height:100px;border:1px solid #ccc;border-radius:5px;" :preview-src-list="[require('@/assets/images/computer.jpg')]" :src="require('@/assets/images/computer.jpg')" fit="cover" v-else-if="item.productName.indexOf('Computer')!=-1"></el-image>
<el-image style="width:100%;height:100px;border:1px solid #ccc;border-radius:5px;" :preview-src-list="[require('@/assets/images/product.jpg')]" :src="require('@/assets/images/product.jpg')" fit="cover" v-else></el-image> <el-image style="width:100%;height:100px;border:1px solid #ccc;border-radius:5px;" :preview-src-list="[require('@/assets/images/product.jpg')]" :src="require('@/assets/images/product.jpg')" fit="cover" v-else></el-image>
</div> </div>
</el-col> </el-col>
@@ -238,7 +232,7 @@ export default {
// 查询参数 // 查询参数
queryParams: { queryParams: {
pageNum: 1, pageNum: 1,
pageSize: 10, pageSize: 12,
deviceName: null, deviceName: null,
productId: null, productId: null,
groupId: null, groupId: null,

View File

@@ -62,12 +62,6 @@
<el-col :span="10"> <el-col :span="10">
<div style="margin-top:10px;"> <div style="margin-top:10px;">
<el-image style="width:100%;height:100px;border:1px solid #ccc;border-radius:5px;" lazy :preview-src-list="[baseUrl+item.imgUrl]" :src="baseUrl+item.imgUrl" fit="cover" v-if="item.imgUrl!=null && item.imgUrl!=''"></el-image> <el-image style="width:100%;height:100px;border:1px solid #ccc;border-radius:5px;" lazy :preview-src-list="[baseUrl+item.imgUrl]" :src="baseUrl+item.imgUrl" fit="cover" v-if="item.imgUrl!=null && item.imgUrl!=''"></el-image>
<!-- 用于显示本地计算机手机树莓派等设备图片-->
<el-image style="width:100%;height:100px;border:1px solid #ccc;border-radius:5px;" :preview-src-list="[require('@/assets/images/esp8266.jpg')]" :src="require('@/assets/images/esp8266.jpg')" fit="cover" v-else-if="item.productName.indexOf('ESP8266')!=-1"></el-image>
<el-image style="width:100%;height:100px;border:1px solid #ccc;border-radius:5px;" :preview-src-list="[require('@/assets/images/esp32.jpg')]" :src="require('@/assets/images/esp32.jpg')" fit="cover" v-else-if="item.productName.indexOf('ESP32')!=-1"></el-image>
<el-image style="width:100%;height:100px;border:1px solid #ccc;border-radius:5px;" :preview-src-list="[require('@/assets/images/raspberry.jpg')]" :src="require('@/assets/images/raspberry.jpg')" fit="cover" v-else-if="item.productName.indexOf('Raspberry')!=-1"></el-image>
<el-image style="width:100%;height:100px;border:1px solid #ccc;border-radius:5px;" :preview-src-list="[require('@/assets/images/telphone.jpg')]" :src="require('@/assets/images/telphone.jpg')" fit="cover" v-else-if="item.productName.indexOf('Phone')!=-1"></el-image>
<el-image style="width:100%;height:100px;border:1px solid #ccc;border-radius:5px;" :preview-src-list="[require('@/assets/images/computer.jpg')]" :src="require('@/assets/images/computer.jpg')" fit="cover" v-else-if="item.productName.indexOf('Computer')!=-1"></el-image>
<el-image style="width:100%;height:100px;border:1px solid #ccc;border-radius:5px;" :preview-src-list="[require('@/assets/images/product.jpg')]" :src="require('@/assets/images/product.jpg')" fit="cover" v-else></el-image> <el-image style="width:100%;height:100px;border:1px solid #ccc;border-radius:5px;" :preview-src-list="[require('@/assets/images/product.jpg')]" :src="require('@/assets/images/product.jpg')" fit="cover" v-else></el-image>
</div> </div>
</el-col> </el-col>
@@ -129,7 +123,7 @@ export default {
// 查询参数 // 查询参数
queryParams: { queryParams: {
pageNum: 1, pageNum: 1,
pageSize: 10, pageSize: 12,
productName: null, productName: null,
categoryId: null, categoryId: null,
categoryName: null, categoryName: null,

View File

@@ -21,13 +21,13 @@
<el-button type="primary" plain icon="el-icon-plus" size="mini" @click="handleAdd" v-hasPermi="['iot:authorize:add']">生成授权码</el-button> <el-button type="primary" plain icon="el-icon-plus" size="mini" @click="handleAdd" v-hasPermi="['iot:authorize:add']">生成授权码</el-button>
</el-col> </el-col>
<el-col :span="1.5"> <el-col :span="1.5">
<el-button type="success" plain icon="el-icon-edit" size="mini" :disabled="single" @click="handleUpdate" v-hasPermi="['iot:authorize:edit']">修改</el-button> <el-button type="success" plain icon="el-icon-edit" size="mini" :disabled="single || productInfo.status==2" @click="handleUpdate" v-hasPermi="['iot:authorize:edit']">修改</el-button>
</el-col> </el-col>
<el-col :span="1.5"> <el-col :span="1.5">
<el-button type="danger" plain icon="el-icon-delete" size="mini" :disabled="multiple" @click="handleDelete" v-hasPermi="['iot:authorize:remove']">删除</el-button> <el-button type="danger" plain icon="el-icon-delete" size="mini" :disabled="multiple || productInfo.status==2" @click="handleDelete" v-hasPermi="['iot:authorize:remove']">删除</el-button>
</el-col> </el-col>
<el-col :span="1.5"> <el-col :span="1.5">
<el-link type="danger" style="padding-top:5px" :underline="false">注意绑定设备之后不可以删除 Tips双击可以复制授权码</el-link> <el-link type="danger" style="padding-top:5px" :underline="false">Tips双击可以复制授权码</el-link>
</el-col> </el-col>
<right-toolbar @queryTable="getList"></right-toolbar> <right-toolbar @queryTable="getList"></right-toolbar>
</el-row> </el-row>
@@ -147,8 +147,8 @@ export default {
title: "", title: "",
// 是否显示弹出层 // 是否显示弹出层
open: false, open: false,
// 新增个数 // 新增授权码个数
createNum: 1, createNum: 10,
// 查询参数 // 查询参数
queryParams: { queryParams: {
pageNum: 1, pageNum: 1,
@@ -241,7 +241,7 @@ export default {
addProductAuthorizeByNum(_addData).then(response => { addProductAuthorizeByNum(_addData).then(response => {
this.$modal.msgSuccess("新增授权码成功"); this.$modal.msgSuccess("新增授权码成功");
this.getList(); this.getList();
this.createNum = 1; this.createNum = 10;
}); });
} }
}).catch(() => { }).catch(() => {

View File

@@ -7,23 +7,23 @@
<el-row :gutter="100"> <el-row :gutter="100">
<el-col :xs="24" :sm="24" :md="24" :lg="12" :xl="8"> <el-col :xs="24" :sm="24" :md="24" :lg="12" :xl="8">
<el-form-item label="产品名称" prop="productName"> <el-form-item label="产品名称" prop="productName">
<el-input v-model="form.productName" placeholder="请输入产品名称" /> <el-input v-model="form.productName" placeholder="请输入产品名称" :readonly="form.status==2"/>
</el-form-item> </el-form-item>
<el-form-item label="产品分类" prop="categoryId"> <el-form-item label="产品分类" prop="categoryId">
<el-select v-model="form.categoryId" placeholder="请选择分类" @change="selectCategory" style="width:100%"> <el-select v-model="form.categoryId" placeholder="请选择分类" @change="selectCategory" style="width:100%" :disabled="form.status==2">
<el-option v-for="category in categoryShortList" :key="category.id" :label="category.name" :value="category.id"></el-option> <el-option v-for="category in categoryShortList" :key="category.id" :label="category.name" :value="category.id"></el-option>
</el-select> </el-select>
</el-form-item> </el-form-item>
<el-form-item label="联网方式" prop="networkMethod"> <el-form-item label="联网方式" prop="networkMethod">
<el-select v-model="form.networkMethod" placeholder="请选择联网方式" style="width:100%;"> <el-select v-model="form.networkMethod" placeholder="请选择联网方式" style="width:100%;" :disabled="form.status==2">
<el-option v-for="dict in dict.type.iot_network_method" :key="dict.value" :label="dict.label" :value="parseInt(dict.value)"></el-option> <el-option v-for="dict in dict.type.iot_network_method" :key="dict.value" :label="dict.label" :value="parseInt(dict.value)"></el-option>
</el-select> </el-select>
</el-form-item> </el-form-item>
<el-form-item label="授权码开关" prop="networkMethod"> <el-form-item label="授权码" prop="networkMethod">
<el-switch v-model="form.isAuthorize" @change="changeIsAuthorize(form.isAuthorize)" :active-value="1" :inactive-value="0" /> <el-switch v-model="form.isAuthorize" @change="changeIsAuthorize(form.isAuthorize)" :active-value="1" :inactive-value="0" :disabled="form.status==2" />
</el-form-item> </el-form-item>
<el-form-item label="备注信息" prop="remark"> <el-form-item label="备注信息" prop="remark">
<el-input v-model="form.remark" type="textarea" placeholder="请输入内容" rows="3" /> <el-input v-model="form.remark" type="textarea" placeholder="请输入内容" rows="3" :readonly="form.status==2" />
</el-form-item> </el-form-item>
</el-col> </el-col>
<el-col :xs="24" :sm="24" :md="24" :lg="12" :xl="8"> <el-col :xs="24" :sm="24" :md="24" :lg="12" :xl="8">
@@ -58,7 +58,7 @@
</el-col> </el-col>
<el-col :xs="24" :sm="24" :md="24" :lg="12" :xl="8"> <el-col :xs="24" :sm="24" :md="24" :lg="12" :xl="8">
<el-form-item label="产品图片"> <el-form-item label="产品图片">
<imageUpload ref="image-upload" :value="form.imgUrl" :limit="1" :fileSize="1" @input="getImagePath($event)"></imageUpload> <imageUpload ref="image-upload" :value="form.imgUrl" :limit="form.status==2 ? 0 : 1" :fileSize="1" @input="getImagePath($event)"></imageUpload>
</el-form-item> </el-form-item>
</el-col> </el-col>
</el-row> </el-row>
@@ -76,7 +76,7 @@
<product-things-model ref="productThingsModel" :product="form" /> <product-things-model ref="productThingsModel" :product="form" />
</el-tab-pane> </el-tab-pane>
<el-tab-pane label="" name="productAuthorize" :disabled="form.isAuthorize==0"> <el-tab-pane label="" name="productAuthorize" :disabled="form.productId==0 || form.isAuthorize==0">
<span slot="label">授权码</span> <span slot="label">授权码</span>
<product-authorize ref="productAuthorize" :product="form" /> <product-authorize ref="productAuthorize" :product="form" />
</el-tab-pane> </el-tab-pane>
@@ -170,10 +170,10 @@ export default {
trigger: "blur" trigger: "blur"
}] }]
}, },
// 查询参数 // 查询参数
queryParams: { queryParams: {
tenantName: null, tenantName: null,
}, },
}; };
}, },
@@ -187,15 +187,15 @@ export default {
this.init(); this.init();
}, },
methods: { methods: {
init(){ init() {
if (this.$store.state.user.roles.indexOf("admin") === -1){ if (this.$store.state.user.roles.indexOf("admin") === -1) {
this.queryParams.tenantName = this.$store.state.user.name this.queryParams.tenantName = this.$store.state.user.name
} }
// 获取简短分类列表 // 获取简短分类列表
listShortCategory1(this.queryParams).then(response => { listShortCategory1(this.queryParams).then(response => {
this.categoryShortList = response.data; this.categoryShortList = response.data;
}) })
}, },
/** 返回按钮 */ /** 返回按钮 */
goBack() { goBack() {
const obj = { const obj = {
@@ -308,8 +308,7 @@ export default {
// 授权码状态修改 // 授权码状态修改
changeIsAuthorize() { changeIsAuthorize() {
let text = this.form.isAuthorize == "1" ? "启用" : "停用"; let text = this.form.isAuthorize == "1" ? "启用" : "停用";
this.$modal.confirm('确认要' + text + '授权码吗?').then(function () { this.$modal.confirm('确认要' + text + '授权码吗?').then(function () {}).catch(() => {
}).catch(() => {
this.form.isAuthorize = 0; this.form.isAuthorize = 0;
}); });
} }

View File

@@ -46,8 +46,8 @@
</el-table-column> </el-table-column>
<el-table-column label="操作" align="center" class-name="small-padding fixed-width"> <el-table-column label="操作" align="center" class-name="small-padding fixed-width">
<template slot-scope="scope"> <template slot-scope="scope">
<el-button size="mini" type="text" icon="el-icon-edit" @click="handleUpdate(scope.row)">修改</el-button> <el-button size="mini" type="text" icon="el-icon-edit" @click="handleUpdate(scope.row)" v-if="productInfo.status!=2">修改</el-button>
<el-button size="mini" type="text" icon="el-icon-delete" @click="handleDelete(scope.row)">删除</el-button> <el-button size="mini" type="text" icon="el-icon-delete" @click="handleDelete(scope.row)" v-if="productInfo.status!=2">删除</el-button>
</template> </template>
</el-table-column> </el-table-column>
</el-table> </el-table>