From 4001279159dd37942b3cf4c83ab537f95832a82d Mon Sep 17 00:00:00 2001 From: liuchengxin <13104445455@163.com> Date: 星期一, 06 六月 2022 13:33:21 +0800 Subject: [PATCH] BUG修改 --- src/views/device/peripheralUnit/index.vue | 177 +++++++++++++++++++++++++++++++++++++++------------------- 1 files changed, 119 insertions(+), 58 deletions(-) diff --git a/src/views/device/peripheralUnit/index.vue b/src/views/device/peripheralUnit/index.vue index 006987b..f733fd9 100644 --- a/src/views/device/peripheralUnit/index.vue +++ b/src/views/device/peripheralUnit/index.vue @@ -29,23 +29,24 @@ /> </el-form-item> <el-form-item label="鐢熶骇鍘傚晢" prop="manufacturer"> - <el-input - v-model="queryParams.manufacturer" - placeholder="璇疯緭鍏ョ敓浜у巶鍟�" - clearable - size="small" - @keyup.enter.native="handleQuery" - /> + <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" + /> + </el-select> </el-form-item> - <el-form-item label="鍘傚晢浠g爜" prop="vendorCode"> - <el-input - v-model="queryParams.vendorCode" - placeholder="璇疯緭鍏ュ巶鍟嗕唬鐮�" - clearable - size="small" - @keyup.enter.native="handleQuery" - /> - </el-form-item> +<!-- <el-form-item label="鍘傚晢浠g爜" 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 @@ -118,25 +119,26 @@ <span>{{ scope.$index + (queryParams.pageNum - 1) * queryParams.pageSize + 1 }} </span> </template> </el-table-column> - <el-table-column label="澶栬浠g爜" align="center" prop="code"/> - <el-table-column label="澶栬鍚嶇О" align="center" prop="name"/> - <el-table-column label="瑙勬牸鍨嬪彿" align="center" prop="model"/> - <el-table-column label="鐢熶骇鍘傚晢" align="center" prop="manufacturer"/> - <el-table-column label="鍘傚晢浠g爜" align="center" prop="vendorCode"/> - <el-table-column label="娉㈢壒鐜�" align="center" prop="baudRate"> + <el-table-column label="澶栬浠g爜" 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="鍘傚晢浠g爜" 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" prop="readInstruction"/> - <el-table-column label="鍥炴暟闀垮害" align="center" prop="loopLength"/> - <el-table-column label="鍔熻兘鎻忚堪" align="center" 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="瑙f瀽璇存槑" 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-edit" + icon="el-icon-view" @click="handleInfo(scope.row)" v-hasPermi="['oa:peripheralUnit:info']" >鏌ョ湅 @@ -152,17 +154,18 @@ <el-button size="mini" type="text" - icon="el-icon-delete" - @click="handleDelete(scope.row)" - v-hasPermi="['oa:peripheralUnit:remove']" - >鍒犻櫎 + icon="el-icon-document" + @click="handleUpload(scope.row)" + >闄勪欢 </el-button> <el-button size="mini" type="text" icon="el-icon-delete" - @click="handleUpload(scope.row)" - >闄勪欢 + class="del-btn" + @click="handleDelete(scope.row)" + v-hasPermi="['oa:peripheralUnit:remove']" + >鍒犻櫎 </el-button> </template> </el-table-column> @@ -177,7 +180,7 @@ /> <!-- 娣诲姞鎴栦慨鏀瑰璁惧崟鍏冨璇濇 --> - <el-dialog :title="title" :visible.sync="open" width="500px" 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="澶栬浠g爜" prop="code"> <el-input v-model="form.code" placeholder="璇疯緭鍏ュ璁句唬鐮�" :disabled="disabled"/> @@ -189,11 +192,18 @@ <el-input v-model="form.model" placeholder="璇疯緭鍏ヨ鏍煎瀷鍙�" :disabled="disabled"/> </el-form-item> <el-form-item label="鐢熶骇鍘傚晢" prop="manufacturer"> - <el-input v-model="form.manufacturer" placeholder="璇疯緭鍏ョ敓浜у巶鍟�" :disabled="disabled"/> + <el-select v-model="form.manufacturer" placeholder="璇烽�夋嫨鐢熶骇鍘傚晢" clearable size="small" :disabled="disabled"> + <el-option + v-for="item in manufacturerList" + :key="item.id" + :label="item.name" + :value="item.id" + /> + </el-select> </el-form-item> - <el-form-item label="鍘傚晢浠g爜" prop="vendorCode"> - <el-input v-model="form.vendorCode" placeholder="璇疯緭鍏ュ巶鍟嗕唬鐮�" :disabled="disabled"/> - </el-form-item> +<!-- <el-form-item label="鍘傚晢浠g爜" 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-option @@ -204,37 +214,40 @@ ></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 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="瑙f瀽璇存槑" 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"/> </el-form-item> </el-form> <div slot="footer" class="dialog-footer"> - <el-button :loading="buttonLoading" type="primary" @click="submitForm">纭� 瀹�</el-button> + <el-button :loading="buttonLoading" type="primary" @click="submitForm" :disabled="disabled">纭� 瀹�</el-button> <el-button @click="cancel">鍙� 娑�</el-button> </div> - </el-dialog> + </Dialog> <!-- 闄勪欢绐椾綋 --> - <el-dialog :title="title" :visible.sync="uploadFlag" width="500px" append-to-body> + <Dialog :title="title" :visible.sync="uploadFlag" width="500px" append-to-body> <el-form ref="form" :model="form" :rules="rules" label-width="80px"> <el-form-item label="闄勪欢"> - <fileUpload v-model="form.filePath" limit="1"/> + <fileUpload v-model="form.filePath" :limit="1"/> </el-form-item> </el-form> <div slot="footer" class="dialog-footer"> <el-button :loading="buttonLoading" type="primary" @click="submitForm">纭� 瀹�</el-button> <el-button @click="cancel">鍙� 娑�</el-button> </div> - </el-dialog> + </Dialog> </div> </template> @@ -246,11 +259,28 @@ addPeripheralUnit, updatePeripheralUnit } from "@/api/oa/peripheralUnit"; +import {Base64} from 'js-base64'; +import { listManufacturer } from "@/api/common/common" export default { name: "PeripheralUnit", dicts: ['DICT103'], data() { + var validateModel = (rule, value, callback) => { + if (!value) { + callback(new Error('瑙勬牸鍨嬪彿涓嶈兘涓虹┖')); + return + } + if (value.length > 32) { + callback(new Error('鏈�澶氳緭鍏�32涓瓧绗�')); + return + } + // if (!(/^[A-Za-z]+$/.test(value))) { + // callback(new Error('鍙兘杈撳叆鑻辨枃瀛楃')); + // return + // } + callback(); + }; return { // 鎸夐挳loading buttonLoading: false, @@ -282,7 +312,7 @@ model: undefined, manufacturer: undefined, vendorCode: undefined, - baudRate: undefined, + baudRate: undefined }, // 琛ㄥ崟鍙傛暟 form: {}, @@ -295,37 +325,54 @@ {required: true, message: "澶栬浠g爜涓嶈兘涓虹┖", trigger: "blur"} ], name: [ - {required: true, message: "澶栬鍚嶇О涓嶈兘涓虹┖", trigger: "blur"} + {required: true, message: "澶栬鍚嶇О涓嶈兘涓虹┖", trigger: "blur"}, + {max: 32, message: '鏈�澶氳緭鍏�32涓瓧绗�', trigger: 'blur' } ], model: [ - {required: true, message: "瑙勬牸鍨嬪彿涓嶈兘涓虹┖", trigger: "blur"} + {required: true, validator: validateModel, trigger: "blur"} ], manufacturer: [ {required: true, message: "鐢熶骇鍘傚晢涓嶈兘涓虹┖", trigger: "blur"} ], vendorCode: [ - {required: true, message: "鍘傚晢浠g爜涓嶈兘涓虹┖", trigger: "blur"} + {required: true, message: "鍘傚晢浠g爜涓嶈兘涓虹┖", trigger: "blur"}, + {max: 32, message: '鏈�澶氳緭鍏�32涓瓧绗�', trigger: 'blur' } ], baudRate: [ {required: true, message: "娉㈢壒鐜囦笉鑳戒负绌�", trigger: "change"} ], readInstruction: [ - {required: true, message: "璇绘暟鎸囦护涓嶈兘涓虹┖", trigger: "blur"} + {required: true, message: "闂鎸囦护涓嶈兘涓虹┖", 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"} ], filePath: [ {required: true, message: "闄勪欢涓嶈兘涓虹┖", trigger: "blur"} ], + description: [ + {max: 512, message: '鏈�澶氳緭鍏�512涓瓧绗�', trigger: 'blur' } + ] }, - disabled: false + disabled: false, + // 鐢熶骇鍘傚晢 + manufacturerList: [] }; }, created() { this.getList(); + }, methods: { + getManufacturerList() { + listManufacturer().then(res => { + this.manufacturerList = res.data; + }) + }, /** 鏌ヨ澶栬鍗曞厓鍒楄〃 */ getList() { this.loading = true; @@ -333,6 +380,7 @@ this.peripheralUnitList = response.rows; this.total = response.total; this.loading = false; + this.getManufacturerList(); }); }, // 鍙栨秷鎸夐挳 @@ -367,11 +415,13 @@ /** 鎼滅储鎸夐挳鎿嶄綔 */ handleQuery() { this.queryParams.pageNum = 1; + this.getManufacturerList(); this.getList(); }, /** 閲嶇疆鎸夐挳鎿嶄綔 */ resetQuery() { this.resetForm("queryForm"); + this.getManufacturerList(); this.handleQuery(); }, // 澶氶�夋閫変腑鏁版嵁 @@ -383,7 +433,9 @@ /** 鏂板鎸夐挳鎿嶄綔 */ handleAdd() { this.reset(); - this.form.baudRate = '3' + this.getManufacturerList(); + this.form.baudRate = '04' + this.disabled = false this.open = true; this.title = "娣诲姞澶栬鍗曞厓"; }, @@ -396,17 +448,20 @@ this.loading = false; this.form = response.data; this.open = true; - this.title = "淇敼澶栬鍗曞厓"; + this.title = "鏌ョ湅澶栬鍗曞厓"; }); }, /** 淇敼鎸夐挳鎿嶄綔 */ handleUpdate(row) { this.loading = true; + this.disabled = false this.reset(); + //this.getManufacturerList(); const id = row.id || this.ids getPeripheralUnit(id).then(response => { this.loading = false; this.form = response.data; + this.form.manufacturer = parseInt(this.form.manufacturer); this.open = true; this.title = "淇敼澶栬鍗曞厓"; }); @@ -415,6 +470,12 @@ submitForm() { this.$refs["form"].validate(valid => { if (valid) { + // if(this.uploadFlag){ + // if(!this.form.filePath){ + // this.$modal.msgWarning("璇烽�夋嫨涓婁紶闄勪欢"); + // return; + // } + // } this.buttonLoading = true; if (this.form.id != null) { updatePeripheralUnit(this.form).then(response => { @@ -440,7 +501,7 @@ /** 鍒犻櫎鎸夐挳鎿嶄綔 */ handleDelete(row) { const ids = row.id || this.ids; - this.$modal.confirm('鏄惁纭鍒犻櫎澶栬鍗曞厓缂栧彿涓�"' + ids + '"鐨勬暟鎹」锛�').then(() => { + this.$modal.confirm(`鏄惁纭鍒犻櫎澶栬浠g爜涓�${row.code}鐨勫璁惧崟鍏冿紵`).then(() => { this.loading = true; return delPeripheralUnit(ids); }).then(() => { -- Gitblit v1.9.1