| | |
| | | <el-form :model="queryParams" ref="queryForm" :inline="true" v-show="showSearch" label-width="68px"> |
| | | <el-form-item label="外设代码" prop="code"> |
| | | <el-input |
| | | v-model="queryParams.code" |
| | | placeholder="请输入外设代码" |
| | | clearable |
| | | size="small" |
| | | @keyup.enter.native="handleQuery" |
| | | v-model="queryParams.code" |
| | | placeholder="请输入外设代码" |
| | | clearable |
| | | size="small" |
| | | @keyup.enter.native="handleQuery" |
| | | /> |
| | | </el-form-item> |
| | | <el-form-item label="外设名称" prop="name"> |
| | | <el-input |
| | | v-model="queryParams.name" |
| | | placeholder="请输入外设名称" |
| | | clearable |
| | | size="small" |
| | | @keyup.enter.native="handleQuery" |
| | | v-model="queryParams.name" |
| | | placeholder="请输入外设名称" |
| | | clearable |
| | | size="small" |
| | | @keyup.enter.native="handleQuery" |
| | | /> |
| | | </el-form-item> |
| | | <el-form-item label="规格型号" prop="model"> |
| | | <el-input |
| | | v-model="queryParams.model" |
| | | placeholder="请输入规格型号" |
| | | clearable |
| | | size="small" |
| | | @keyup.enter.native="handleQuery" |
| | | v-model="queryParams.model" |
| | | placeholder="请输入规格型号" |
| | | clearable |
| | | size="small" |
| | | @keyup.enter.native="handleQuery" |
| | | /> |
| | | </el-form-item> |
| | | <el-form-item label="生产厂商" prop="manufacturer"> |
| | | <el-select v-model="queryParams.manufacturer" placeholder="请选择生产厂商" clearable size="small"> |
| | | <el-option |
| | | v-for="item in manufacturerList" |
| | | :key="item.id" |
| | | :label="item.name" |
| | | :value="item.id" |
| | | v-for="item in manufacturerList" |
| | | :key="item.id" |
| | | :label="item.name" |
| | | :value="item.id" |
| | | /> |
| | | </el-select> |
| | | </el-form-item> |
| | | <!-- <el-form-item label="厂商代码" prop="vendorCode">--> |
| | | <!-- <el-input--> |
| | | <!-- v-model="queryParams.vendorCode"--> |
| | | <!-- placeholder="请输入厂商代码"--> |
| | | <!-- clearable--> |
| | | <!-- size="small"--> |
| | | <!-- @keyup.enter.native="handleQuery"--> |
| | | <!-- />--> |
| | | <!-- </el-form-item>--> |
| | | <!-- <el-form-item label="厂商代码" prop="vendorCode">--> |
| | | <!-- <el-input--> |
| | | <!-- v-model="queryParams.vendorCode"--> |
| | | <!-- placeholder="请输入厂商代码"--> |
| | | <!-- clearable--> |
| | | <!-- size="small"--> |
| | | <!-- @keyup.enter.native="handleQuery"--> |
| | | <!-- />--> |
| | | <!-- </el-form-item>--> |
| | | <el-form-item label="波特率" prop="baudRate"> |
| | | <el-select v-model="queryParams.baudRate" placeholder="请选择波特率" clearable size="small"> |
| | | <el-option |
| | | v-for="dict in dict.type.DICT103" |
| | | :key="dict.value" |
| | | :label="dict.label" |
| | | :value="dict.value" |
| | | v-for="dict in dict.type.DICT103" |
| | | :key="dict.value" |
| | | :label="dict.label" |
| | | :value="dict.value" |
| | | /> |
| | | </el-select> |
| | | </el-form-item> |
| | |
| | | <el-row :gutter="10" class="mb8"> |
| | | <el-col :span="1.5"> |
| | | <el-button |
| | | type="primary" |
| | | plain |
| | | icon="el-icon-plus" |
| | | size="mini" |
| | | @click="handleAdd" |
| | | v-hasPermi="['oa:peripheralUnit:add']" |
| | | type="primary" |
| | | plain |
| | | icon="el-icon-plus" |
| | | size="mini" |
| | | @click="handleAdd" |
| | | v-hasPermi="['oa:peripheralUnit:add']" |
| | | >新增 |
| | | </el-button> |
| | | </el-col> |
| | | <el-col :span="1.5"> |
| | | <el-button |
| | | type="success" |
| | | plain |
| | | icon="el-icon-edit" |
| | | size="mini" |
| | | :disabled="single" |
| | | @click="handleUpdate" |
| | | v-hasPermi="['oa:peripheralUnit:edit']" |
| | | type="success" |
| | | plain |
| | | icon="el-icon-edit" |
| | | size="mini" |
| | | :disabled="single" |
| | | @click="handleUpdate" |
| | | v-hasPermi="['oa:peripheralUnit:edit']" |
| | | >修改 |
| | | </el-button> |
| | | </el-col> |
| | | <el-col :span="1.5"> |
| | | <el-button |
| | | type="danger" |
| | | plain |
| | | icon="el-icon-delete" |
| | | size="mini" |
| | | :disabled="multiple" |
| | | @click="handleDelete" |
| | | v-hasPermi="['oa:peripheralUnit:remove']" |
| | | type="danger" |
| | | plain |
| | | icon="el-icon-delete" |
| | | size="mini" |
| | | :disabled="multiple" |
| | | @click="handleDelete" |
| | | v-hasPermi="['oa:peripheralUnit:remove']" |
| | | >删除 |
| | | </el-button> |
| | | </el-col> |
| | |
| | | <span>{{ scope.$index + (queryParams.pageNum - 1) * queryParams.pageSize + 1 }} </span> |
| | | </template> |
| | | </el-table-column> |
| | | <el-table-column label="外设代码" width="80" align="center" prop="code"/> |
| | | <el-table-column label="外设名称" align="center" prop="name" show-overflow-tooltip/> |
| | | <el-table-column label="规格型号" align="center" prop="model" min-width="120"/> |
| | | <el-table-column label="生产厂商" align="center" prop="manufacturer_dictText"/> |
| | | <el-table-column label="厂商代码" width="100" align="center" prop="vendorCode_dictText"/> |
| | | <el-table-column label="波特率" width="100" align="center" prop="baudRate"> |
| | | <el-table-column label="外设代码" width="80" align="center" prop="code" show-overflow-tooltip/> |
| | | <el-table-column label="外设名称" align="center" min-width="180" prop="name" show-overflow-tooltip/> |
| | | <el-table-column label="规格型号" align="center" prop="model" min-width="120" show-overflow-tooltip/> |
| | | <el-table-column label="生产厂商" align="center" prop="manufacturer_dictText" min-width="200" show-overflow-tooltip/> |
| | | <el-table-column label="厂商代码" width="100" align="center" prop="vendorCode_dictText" show-overflow-tooltip/> |
| | | <el-table-column label="波特率" width="100" align="center" prop="baudRate" show-overflow-tooltip> |
| | | <template slot-scope="scope"> |
| | | <dict-tag :options="dict.type.DICT103" :value="scope.row.baudRate"/> |
| | | </template> |
| | | </el-table-column> |
| | | <el-table-column label="问询指令" align="center" width="180" prop="readInstruction"/> |
| | | <el-table-column label="返回长度" width="80" align="center" prop="loopLength"/> |
| | | <el-table-column label="功能描述" align="center" min-width="300" show-overflow-tooltip prop="description"/> |
| | | <el-table-column label="问询指令" align="center" width="220" prop="readInstruction" show-overflow-tooltip/> |
| | | <el-table-column label="指令长度" width="80" align="center" prop="orderLength" show-overflow-tooltip/> |
| | | <el-table-column label="返回长度" width="80" align="center" prop="loopLength" show-overflow-tooltip/> |
| | | <!-- <el-table-column label="解析说明" align="center" min-width="300" show-overflow-tooltip prop="description"/>--> |
| | | <el-table-column label="操作" align="center" fixed="right" width="240" class-name="small-padding fixed-width"> |
| | | <template slot-scope="scope"> |
| | | <el-button |
| | | size="mini" |
| | | type="text" |
| | | icon="el-icon-view" |
| | | @click="handleInfo(scope.row)" |
| | | v-hasPermi="['oa:peripheralUnit:info']" |
| | | size="mini" |
| | | type="text" |
| | | icon="el-icon-view" |
| | | @click="handleInfo(scope.row)" |
| | | v-hasPermi="['oa:peripheralUnit:info']" |
| | | >查看 |
| | | </el-button> |
| | | <el-button |
| | | size="mini" |
| | | type="text" |
| | | icon="el-icon-edit" |
| | | @click="handleUpdate(scope.row)" |
| | | v-hasPermi="['oa:peripheralUnit:edit']" |
| | | size="mini" |
| | | type="text" |
| | | icon="el-icon-edit" |
| | | @click="handleUpdate(scope.row)" |
| | | v-hasPermi="['oa:peripheralUnit:edit']" |
| | | >修改 |
| | | </el-button> |
| | | <el-button |
| | | size="mini" |
| | | type="text" |
| | | icon="el-icon-document" |
| | | @click="handleUpload(scope.row)" |
| | | size="mini" |
| | | type="text" |
| | | icon="el-icon-document" |
| | | @click="handleUpload(scope.row)" |
| | | >附件 |
| | | </el-button> |
| | | <el-button |
| | | size="mini" |
| | | type="text" |
| | | icon="el-icon-delete" |
| | | class="del-btn" |
| | | @click="handleDelete(scope.row)" |
| | | v-hasPermi="['oa:peripheralUnit:remove']" |
| | | size="mini" |
| | | type="text" |
| | | icon="el-icon-delete" |
| | | class="del-btn" |
| | | @click="handleDelete(scope.row)" |
| | | v-hasPermi="['oa:peripheralUnit:remove']" |
| | | >删除 |
| | | </el-button> |
| | | </template> |
| | |
| | | </el-table> |
| | | |
| | | <pagination |
| | | v-show="total>0" |
| | | :total="total" |
| | | :page.sync="queryParams.pageNum" |
| | | :limit.sync="queryParams.pageSize" |
| | | @pagination="getList" |
| | | v-show="total>0" |
| | | :total="total" |
| | | :page.sync="queryParams.pageNum" |
| | | :limit.sync="queryParams.pageSize" |
| | | @pagination="getList" |
| | | /> |
| | | |
| | | <!-- 添加或修改外设单元对话框 --> |
| | | <Dialog :title="title" :visible.sync="open" width="50%" append-to-body> |
| | | <Dialog :title="title" :visible.sync="open" width="50%" :append-to-body="true" :close-on-click-modal="false"> |
| | | <el-form ref="form" :model="form" :rules="rules" label-width="80px"> |
| | | <el-form-item label="外设代码" prop="code"> |
| | | <el-input v-model="form.code" placeholder="请输入外设代码" :disabled="disabled"/> |
| | |
| | | <el-input v-model="form.model" placeholder="请输入规格型号" :disabled="disabled"/> |
| | | </el-form-item> |
| | | <el-form-item label="生产厂商" prop="manufacturer"> |
| | | <el-select v-model="form.manufacturer" placeholder="请选择生产厂商" clearable size="small" :disabled="disabled"> |
| | | <el-select v-model="form.manufacturer" placeholder="请选择生产厂商" clearable size="small" :disabled="disabled" |
| | | style="width: 100%;"> |
| | | <el-option |
| | | v-for="item in manufacturerList" |
| | | :key="item.id" |
| | | :label="item.name" |
| | | :value="item.id" |
| | | v-for="item in manufacturerList" |
| | | :key="item.id" |
| | | :label="item.name" |
| | | :value="item.id" |
| | | /> |
| | | </el-select> |
| | | </el-form-item> |
| | | <!-- <el-form-item label="厂商代码" prop="vendorCode">--> |
| | | <!-- <el-input v-model="form.vendorCode" placeholder="请输入厂商代码" :disabled="disabled"/>--> |
| | | <!-- </el-form-item>--> |
| | | <!-- <el-form-item label="厂商代码" prop="vendorCode">--> |
| | | <!-- <el-input v-model="form.vendorCode" placeholder="请输入厂商代码" :disabled="disabled"/>--> |
| | | <!-- </el-form-item>--> |
| | | <el-form-item label="波特率" prop="baudRate"> |
| | | <el-select v-model="form.baudRate" placeholder="请选择波特率" :disabled="disabled"> |
| | | <el-select v-model="form.baudRate" placeholder="请选择波特率" :disabled="disabled" style="width: 100%;"> |
| | | <el-option |
| | | v-for="dict in dict.type.DICT103" |
| | | :key="dict.value" |
| | | :label="dict.label" |
| | | :value="dict.value" |
| | | v-for="dict in dict.type.DICT103" |
| | | :key="dict.value" |
| | | :label="dict.label" |
| | | :value="dict.value" |
| | | ></el-option> |
| | | </el-select> |
| | | </el-form-item> |
| | | <el-form-item label="问询指令" prop="readInstruction"> |
| | | <el-input v-model="form.readInstruction" placeholder="请输入问询指令" :disabled="disabled"/> |
| | | </el-form-item> |
| | | <el-form-item label="返回长度" prop="loopLength"> |
| | | <el-input v-model="form.loopLength" placeholder="请输入返回长度" :disabled="disabled"/> |
| | | <el-form-item label="指令长度" prop="orderLength"> |
| | | <el-input v-model="form.orderLength" type="number" placeholder="请输入指令长度" :disabled="disabled"/> |
| | | </el-form-item> |
| | | <el-form-item label="功能描述" prop="description"> |
| | | <el-input v-model="form.description" type="textarea" placeholder="请输入内容" :disabled="disabled"/> |
| | | <el-form-item label="返回长度" prop="loopLength"> |
| | | <el-input v-model="form.loopLength" type='number' placeholder="请输入返回长度" :disabled="disabled"/> |
| | | </el-form-item> |
| | | <el-form-item label="解析说明" prop="description"> |
| | | <el-input v-model="form.description" type="textarea" placeholder="请输入内容" maxlength="512" show-word-limit |
| | | :disabled="disabled"/> |
| | | </el-form-item> |
| | | <el-form-item label="附件"> |
| | | <fileUpload v-model="form.filePath" :disabled="disabled"/> |
| | |
| | | updatePeripheralUnit |
| | | } from "@/api/oa/peripheralUnit"; |
| | | import {Base64} from 'js-base64'; |
| | | import { listManufacturer } from "@/api/common/common" |
| | | import {listManufacturer} from "@/api/common/common" |
| | | |
| | | export default { |
| | | name: "PeripheralUnit", |
| | |
| | | ], |
| | | name: [ |
| | | {required: true, message: "外设名称不能为空", trigger: "blur"}, |
| | | {max: 32, message: '最多输入32个字符', trigger: 'blur' } |
| | | {max: 32, message: '最多输入32个字符', trigger: 'blur'} |
| | | ], |
| | | model: [ |
| | | {required: true, validator: validateModel, trigger: "blur"} |
| | |
| | | ], |
| | | vendorCode: [ |
| | | {required: true, message: "厂商代码不能为空", trigger: "blur"}, |
| | | {max: 32, message: '最多输入32个字符', trigger: 'blur' } |
| | | {max: 32, message: '最多输入32个字符', trigger: 'blur'} |
| | | ], |
| | | baudRate: [ |
| | | {required: true, message: "波特率不能为空", trigger: "change"} |
| | | ], |
| | | readInstruction: [ |
| | | {required: true, message: "问询指令不能为空", trigger: "blur"}, |
| | | {max: 128, message: '最多输入128个字符', trigger: 'blur' } |
| | | {max: 128, message: '最多输入128个字符', trigger: 'blur'} |
| | | ], |
| | | orderLength: [ |
| | | {required: true, message: "指令长度不能为空", trigger: "blur"} |
| | | ], |
| | | loopLength: [ |
| | | {required: true, message: "返回长度不能为空", trigger: "blur"} |
| | |
| | | {required: true, message: "附件不能为空", trigger: "blur"} |
| | | ], |
| | | description: [ |
| | | {max: 128, message: '最多输入128个字符', trigger: 'blur' } |
| | | {max: 512, message: '最多输入512个字符', trigger: 'blur'} |
| | | ] |
| | | }, |
| | | disabled: false, |
| | |
| | | this.loading = true; |
| | | this.disabled = false |
| | | this.reset(); |
| | | //this.getManufacturerList(); |
| | | this.getManufacturerList(); |
| | | const id = row.id || this.ids |
| | | getPeripheralUnit(id).then(response => { |
| | | this.loading = false; |