From 2546d2a6251176b0214c2d23ac93ccde5dd008f5 Mon Sep 17 00:00:00 2001
From: 唐耀东 <18861537@qq.com>
Date: 星期四, 12 五月 2022 10:51:01 +0800
Subject: [PATCH] 提交代码
---
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..27b24b2 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"/>
+ <el-table-column label="澶栬鍚嶇О" align="center" prop="name" show-overflow-tooltip/>
+ <el-table-column label="瑙勬牸鍨嬪彿" align="center" prop="model" min-width="60"/>
+ <el-table-column label="鐢熶骇鍘傚晢" align="center" prop="manufacturer_dictText"/>
+ <el-table-column label="鍘傚晢浠g爜" width="100" align="center" prop="vendorCode_dictText"/>
+ <el-table-column label="娉㈢壒鐜�" width="100" align="center" prop="baudRate">
<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"/>
+ <el-table-column label="鎸囦护闀垮害" width="80" align="center" prop="orderLength"/>
+ <el-table-column label="杩斿洖闀垮害" width="80" align="center" prop="loopLength"/>
+<!-- <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>
<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