From b69442a151f8a0990cd17acb705f482609e6727d Mon Sep 17 00:00:00 2001 From: 王震 <10952869+daywangzhen@user.noreply.gitee.com> Date: 星期四, 09 十一月 2023 13:11:16 +0800 Subject: [PATCH] modified: package.json modified: src/api/quality/finishedProduct.js modified: src/views/equipment/equipment/index.vue modified: src/views/equipment/metering/index.vue modified: src/views/quality/finishedProductInspection/finishedProduct-form.vue modified: src/views/quality/finishedProductInspection/finishedProduct-print.vue modified: src/views/quality/finishedProductInspection/index.vue modified: src/views/quality/rawMaterial/rawMaterial-print.vue --- src/views/equipment/equipment/index.vue | 48 +++++++++++ src/views/quality/finishedProductInspection/index.vue | 21 ++++ src/api/quality/finishedProduct.js | 8 ++ package.json | 1 src/views/equipment/metering/index.vue | 47 +++++++++++ src/views/quality/finishedProductInspection/finishedProduct-form.vue | 25 +++-- src/views/quality/finishedProductInspection/finishedProduct-print.vue | 51 ++++++++++++ src/views/quality/rawMaterial/rawMaterial-print.vue | 2 8 files changed, 182 insertions(+), 21 deletions(-) diff --git a/package.json b/package.json index 7ac2004..fb282aa 100644 --- a/package.json +++ b/package.json @@ -44,6 +44,7 @@ "vue-echarts": "^4.0.1", "vue-json-editor": "^1.2.3", "vue-json-tree-view": "^2.1.4", + "vue-qr": "^4.0.9", "vue-quill-editor": "3.0.6", "vue-router": "^3.0.2", "vuedraggable": "^2.24.3", diff --git a/src/api/quality/finishedProduct.js b/src/api/quality/finishedProduct.js index cb8ce52..70893a4 100644 --- a/src/api/quality/finishedProduct.js +++ b/src/api/quality/finishedProduct.js @@ -16,6 +16,14 @@ }) } +export function selectDeviceAPI(query) { + return request({ + url: '/mes/qualityFinishedInsProduct/selectDevice', + method: 'get', + params: query + }) +} + export function addFinish(obj) { return request({ url: '/mes/qualityFinishedInspect/addFinish', diff --git a/src/views/equipment/equipment/index.vue b/src/views/equipment/equipment/index.vue index f65ac9d..5a2a8dc 100644 --- a/src/views/equipment/equipment/index.vue +++ b/src/views/equipment/equipment/index.vue @@ -18,6 +18,34 @@ ref="addOrUpdate" @refreshDataList="getData" ></table-form> + <el-dialog title="鏍囩鍒楄〃" :visible.sync="diaPrintTab" width="500px"> + <div class="dia_body" style="height: 400px;overflow-y: auto;padding: 0 10px;"> + <el-card class="box-card" v-for="(tem, i) in multipleSelection" :key="i" style="margin-bottom: 15px;"> + <el-row> + <el-col :span="10" :offset="3">搴忓彿锛�</el-col> + <el-col :span="10" style="font-weight: bold;">{{ i + 1 }}</el-col> + </el-row> + <el-row> + <el-col :span="10" :offset="3">缂栧彿锛�</el-col> + <el-col :span="10" style="font-weight: bold;">{{ tem.code }}</el-col> + </el-row> + <el-row> + <el-col :span="10" :offset="3">璁惧鍚嶇О锛�</el-col> + <el-col :span="10" style="font-weight: bold;">{{ tem.name }}</el-col> + </el-row> + <el-row> + <el-col :span="10" :offset="3">璁惧浜岀淮鐮侊細</el-col> + <el-col :span="10"> + <vueQr :text="tem.number" :size="80" :margin="2"></vueQr> + </el-col> + </el-row> + </el-card> + </div> + <span slot="footer" class="dialog-footer"> + <el-button @click="diaPrintTab = false">鍙� 娑�</el-button> + <el-button type="primary" @click="diaPrintTab = false">鎵� 鍗�</el-button> + </span> + </el-dialog> </basic-container> </div> </template> @@ -29,6 +57,7 @@ import { mapGetters } from 'vuex' import * as fecha from 'element-ui/lib/utils/date' import { remote } from '../../../api/admin/dict' +import vueQr from 'vue-qr' export default { data() { return { @@ -39,6 +68,7 @@ isShow: true, url: '/mes/equipment/upload' }, + diaPrintTab: false, prelang: 'workstation', options: { height: 300, // 榛樿楂樺害-涓轰簡琛ㄥご鍥哄畾 @@ -198,6 +228,11 @@ type: 'primary', fun: this.addOrUpdateHandle }, + { + text: '鏍囩鎵撳嵃', + type: 'primary', + fun: this.labelPrint + }, // { // text: '鍚屾', // type: 'primary', @@ -234,7 +269,8 @@ }, components: { ttable, - TableForm + TableForm, + vueQr }, computed: { ...mapGetters(['permissions']) @@ -277,6 +313,7 @@ }, handleSelectionChange(val) { this.multipleSelection = val + console.log(this.multipleSelection); }, // 鏂板 / 淇敼 addOrUpdateHandle(row) { @@ -300,7 +337,14 @@ this.$message.success('鍒犻櫎鎴愬姛') this.getData() }) - } + }, + labelPrint(){ + if(this.multipleSelection.length==0){ + this.$message.warning('璇烽�夋嫨涓�鏉℃暟鎹�') + return + } + this.diaPrintTab = true + } } } </script> diff --git a/src/views/equipment/metering/index.vue b/src/views/equipment/metering/index.vue index bbd003d..3364d51 100644 --- a/src/views/equipment/metering/index.vue +++ b/src/views/equipment/metering/index.vue @@ -19,6 +19,34 @@ @refreshDataList="getData" ></table-form> </basic-container> + <el-dialog title="鏍囩鍒楄〃" :visible.sync="diaPrintTab" width="500px"> + <div class="dia_body" style="height: 400px;overflow-y: auto;padding: 0 10px;"> + <el-card class="box-card" v-for="(tem, i) in multipleSelection" :key="i" style="margin-bottom: 15px;"> + <el-row> + <el-col :span="10" :offset="3">搴忓彿锛�</el-col> + <el-col :span="10" style="font-weight: bold;">{{ i + 1 }}</el-col> + </el-row> + <el-row> + <el-col :span="10" :offset="3">缂栧彿锛�</el-col> + <el-col :span="10" style="font-weight: bold;">{{ tem.code }}</el-col> + </el-row> + <el-row> + <el-col :span="10" :offset="3">璁惧鍚嶇О锛�</el-col> + <el-col :span="10" style="font-weight: bold;">{{ tem.name }}</el-col> + </el-row> + <el-row> + <el-col :span="10" :offset="3">璁惧浜岀淮鐮侊細</el-col> + <el-col :span="10"> + <vueQr :text="tem.code" :size="80" :margin="2"></vueQr> + </el-col> + </el-row> + </el-card> + </div> + <span slot="footer" class="dialog-footer"> + <el-button @click="diaPrintTab = false">鍙� 娑�</el-button> + <el-button type="primary" @click="diaPrintTab = false">鎵� 鍗�</el-button> + </span> + </el-dialog> </div> </template> @@ -29,6 +57,7 @@ import { mapGetters } from 'vuex' import * as fecha from 'element-ui/lib/utils/date' import { remote } from '../../../api/admin/dict' + import vueQr from 'vue-qr' export default { data() { return { @@ -233,6 +262,11 @@ type: 'primary', fun: this.addOrUpdateHandle }, + { + text: '鏍囩鎵撳嵃', + type: 'primary', + fun: this.labelPrint + }, // { // text: '鍚屾', // type: 'primary', @@ -264,12 +298,14 @@ } }, addOrUpdateVisible: false, - workshopList: [] + workshopList: [], + diaPrintTab: false } }, components: { ttable, - TableForm + TableForm, + vueQr }, computed: { ...mapGetters(['permissions']) @@ -336,6 +372,13 @@ this.$message.success('鍒犻櫎鎴愬姛') this.getData() }) + }, + labelPrint(){ + if(this.multipleSelection.length==0){ + this.$message.warning('璇烽�夋嫨涓�鏉℃暟鎹�') + return + } + this.diaPrintTab = true } } } diff --git a/src/views/quality/finishedProductInspection/finishedProduct-form.vue b/src/views/quality/finishedProductInspection/finishedProduct-form.vue index 5012f74..da0e42b 100644 --- a/src/views/quality/finishedProductInspection/finishedProduct-form.vue +++ b/src/views/quality/finishedProductInspection/finishedProduct-form.vue @@ -125,12 +125,12 @@ <template slot-scope="scope"> <span v-if="resultVal!=null && processInspectVo.id!=null" v-text="scope.row.ename"></span> <div v-else> - <el-input v-model="scope.row.eId" v-if="scope.row.iname != null" placeholder="璇疯緭鍏ヨ澶囧彿"></el-input> - <!-- <el-select style="width:100%" v-model="scope.row.eId" + <!-- <el-input v-model="scope.row.eId" v-if="scope.row.iname != null" placeholder="璇疯緭鍏ヨ澶囧彿"></el-input> --> + <el-select style="width:100%" v-model="scope.row.eId" v-if="scope.row.iname != null" filterable @change="updateDevice(scope.row,scope.$index)"> <el-option v-for="(item,index) in deviceList" :key="index" :value="item.id" :label="item.number +'-'+ item.name"></el-option> - </el-select> --> + </el-select> </div> </template> </el-table-column> @@ -140,9 +140,11 @@ <el-col v-if="scope.row.itype === '1'"> <el-tooltip v-if="scope.row.iname != null" :disabled="scope.row.eId != null" class="item" effect="dark" content="璇峰厛閫夋嫨璁惧锛�" placement="top-start"> + <el-input :disabled="scope.row.eId == null" v-model="scope.row.inote" @blur="changeState(scope.row, index)" placeholder="璇疯緭鍏ユ楠屾弿杩�"></el-input> + <span v-if="resultVal != null && processInspectVo.id != null" v-text="scope.row.inote"></span> </el-tooltip> @@ -150,14 +152,14 @@ <el-col v-else> <el-tooltip v-if="scope.row.iname != null" :disabled="scope.row.eId != null" class="item" effect="dark" content="璇峰厛閫夋嫨璁惧锛�" placement="top-start"> - <!-- <el-input :disabled="scope.row.eId == null" - v-model="scope.row.empiricalValueAddss[index]" - @blur="changeState(scope.row, index)" placeholder="璇疯緭鍏ユ娴嬪��"></el-input> --> - <el-select style="width: 100%;" @change="changeState(scope.row, index)" :disabled="scope.row.eId == null" v-model="scope.row.inote" placeholder="璇烽�夋嫨"> + <el-input :disabled="scope.row.eId == null" + v-model="scope.row.inote" + @blur="changeState(scope.row, index)" placeholder="璇疯緭鍏ユ娴嬪��"></el-input> + <!-- <el-select style="width: 100%;" @change="changeState(scope.row, index)" :disabled="scope.row.eId == null" v-model="scope.row.inote" placeholder="璇烽�夋嫨"> <el-option v-for="item in dataVal" :key="item.value" :label="item.label" :value="item.value"> </el-option> - </el-select> + </el-select> --> <span v-if="resultVal != null && processInspectVo.id != null" v-text="scope.row.inote"></span> </el-tooltip> @@ -216,6 +218,7 @@ updateDeviceById, updateFinishedInsProduct, updateFinishedInspectById, + selectDeviceAPI, } from '@/api/quality/finishedProduct' import { selectDevice } from '@/api/quality/rawMaterial' export default { @@ -273,7 +276,7 @@ this.init() }, methods: { - + submitSave(){ let pro = 0 this.inspectionItems.forEach(item => { @@ -379,9 +382,11 @@ } }, getDeviceList(){ - selectDevice(null).then(res=>{ + selectDeviceAPI(null).then(res=>{ // this.deviceList = res.data.data console.log(res); + this.deviceList = res.data.data + }) }, updateDevice(row,index){ diff --git a/src/views/quality/finishedProductInspection/finishedProduct-print.vue b/src/views/quality/finishedProductInspection/finishedProduct-print.vue index a3b53fc..48d7c40 100644 --- a/src/views/quality/finishedProductInspection/finishedProduct-print.vue +++ b/src/views/quality/finishedProductInspection/finishedProduct-print.vue @@ -27,10 +27,16 @@ <td colspan=2 height=53 class=xl7624921 style='border-right:.5pt solid black; height:40.05pt'>椤圭洰鍚嶇О</td> <td colspan=2 class=xl6624921 style='border-right:.5pt solid black; - border-left:none'>銆�</td> + border-left:none'>銆� + <p class="MsoNormal" align="center" style="text-align:center"> + <span lang="EN-US" style="font-family:"Arial",sans-serif" v-text="deviceStr"></span></p> + </td> <td class=xl6924921 style='border-top:none;border-left:none'>浜у搧鍚嶇О</td> <td colspan=2 class=xl6624921 style='border-right:.5pt solid black; - border-left:none'>銆�</td> + border-left:none'> + <p class="MsoNormal" align="center" style="text-align:center"> + <span lang="EN-US" style="font-family:"Arial",sans-serif" v-text="product"></span></p> +銆� </td> </tr> <tr class=xl6524921 height=53 style='mso-height-source:userset;height:40.05pt'> <td colspan=2 height=53 class=xl7624921 style='border-right:.5pt solid black; @@ -266,7 +272,46 @@ <script> export default { - + props:{ + formData:{ + type: Object, + default:()=>{ + return {} + } + } + }, + data(){ + return{ + tableData: null, + projectList: [], + deviceStr: null, + product:null, + childrenData: [], + } + }, + created(){ + this.tableData = this.formData + console.log("============",this.tableData) + this.initData() + // this.initProjectList(this.projectList) + }, + methods:{ + initData(){ + this.deviceStr = this.tableData.projectName + this.product = this.tableData.material + }, + }, + watch:{ + formData(newVal){ + if(newVal){ + this.projectList = [] + console.log(newVal) + this.tableData = newVal + this.initData() + // this.initProjectList(this.projectList) + } + } + }, } </script> diff --git a/src/views/quality/finishedProductInspection/index.vue b/src/views/quality/finishedProductInspection/index.vue index fb3c9ca..288adcd 100644 --- a/src/views/quality/finishedProductInspection/index.vue +++ b/src/views/quality/finishedProductInspection/index.vue @@ -195,11 +195,25 @@ } }, created() { }, + watch:{ + printFormData(newVal){ + if(newVal){ + this.printFormData = newVal + } + } + }, methods: { //鏌ョ湅鎶ュ憡鎸夐挳 - showPrint(){ - - }, + // showPrint(row){ + // queryById(row.id).then(res=>{ + // console.log(res); + // this.printFormData = res.data.data + // this.printDialogVisible = true + // }) + // .catch(error=>{ + // console.log(error); + // }) + // }, //鎵撳嵃鎸夐挳 printFun() { this.printDialogVisible = false; @@ -216,6 +230,7 @@ showPrint(row){ queryById(row.id).then(res=>{ console.log(res); + this.printFormData = res.data.data this.printDialogVisible = true }).catch(error=>{ console.log(error); diff --git a/src/views/quality/rawMaterial/rawMaterial-print.vue b/src/views/quality/rawMaterial/rawMaterial-print.vue index 72a69d2..87d52aa 100644 --- a/src/views/quality/rawMaterial/rawMaterial-print.vue +++ b/src/views/quality/rawMaterial/rawMaterial-print.vue @@ -409,7 +409,7 @@ this.tableData = this.formData this.initData() this.initProjectList(this.projectList) - // console.log("aa--",this.tableData) + console.log("aa--",this.tableData) }, watch:{ formData(newVal){ -- Gitblit v1.9.3