From 95cafbee8f05dc6fbc6256c5cd84bcfe3621107f Mon Sep 17 00:00:00 2001
From: zss <zss@example.com>
Date: 星期四, 07 十二月 2023 17:30:38 +0800
Subject: [PATCH] Merge remote-tracking branch 'origin/master'
---
src/views/equipment/equipment/index.vue | 27 ++-
src/views/plan/manufacturingorder/index.vue | 187 +++++++++++++++++++-------
src/views/equipment/metering/index.vue | 75 +++++++---
src/views/plan/customerorder/sample-customerorder-form.vue | 2
src/views/quality/Packaging_ledger/index.vue | 72 +++++----
src/page/index/logo.vue | 4
6 files changed, 248 insertions(+), 119 deletions(-)
diff --git a/src/page/index/logo.vue b/src/page/index/logo.vue
index c9c78f0..8e02347 100644
--- a/src/page/index/logo.vue
+++ b/src/page/index/logo.vue
@@ -120,7 +120,7 @@
width: 220px;
height: 64px;
line-height: 64px;
- background-color: #006eff;
+ background-color: #875a7b;
font-size: 20px;
overflow: hidden;
box-sizing: border-box;
@@ -151,7 +151,7 @@
width: 220px;
height: 64px;
line-height: 64px;
- background-color: #006eff;
+ background-color: #875a7b;
font-size: 20px;
overflow: hidden;
box-sizing: border-box;
diff --git a/src/views/equipment/equipment/index.vue b/src/views/equipment/equipment/index.vue
index c5911e0..f19e542 100644
--- a/src/views/equipment/equipment/index.vue
+++ b/src/views/equipment/equipment/index.vue
@@ -18,9 +18,11 @@
ref="addOrUpdate"
@refreshDataList="getData"
></table-form>
- <el-dialog title="鏍囩鍒楄〃" :visible.sync="diaPrintTab" width="500px">
+ </basic-container>
+ <el-dialog title="鏍囩鍒楄〃" :visible.sync="diaPrintTab" width="500px" top="5vh">
+ <div style="width:100%;height:400px;overflow-y: auto;">
<div class="dia_body" id="printRaw">
- <el-card class="box-card" v-for="(tem, i) in multipleSelection" :key="i" style="margin-bottom: 30px; font-size: 16px !important;">
+ <el-card class="box-card" v-for="(tem, i) in multipleSelection" :key="i" style="margin-bottom: 10px; font-size: 16px !important;">
<el-row>
<el-col :span="8" :offset="1">搴忓彿锛�</el-col>
<el-col :span="7" style="font-weight: bold;">{{ tem.id }}</el-col>
@@ -41,12 +43,12 @@
</el-row>
</el-card>
</div>
- <span slot="footer" class="dialog-footer">
- <el-button @click="diaPrintTab = false">鍙� 娑�</el-button>
- <el-button type="primary" @click="printFun">鎵� 鍗�</el-button>
- </span>
- </el-dialog>
- </basic-container>
+ </div>
+ <span slot="footer" class="dialog-footer">
+ <el-button @click="diaPrintTab = false">鍙� 娑�</el-button>
+ <el-button type="primary" @click="printFun">鎵� 鍗�</el-button>
+ </span>
+ </el-dialog>
</div>
</template>
@@ -296,15 +298,17 @@
targetStyles:['*'],
style: `@page {
margin:0;
- size: 360px 175px;
+ padding: 0;
+ size: 360px 170px;
}
- hrml{
+ html{
zoom:100%;
}
@media print{
width: 360px;
- height: 175px;
+ height: 170px;
margin:0;
+ padding: 0;
}`,
onPrintDialogClose: this.erexcel=false,
targetStyles: ["*"], // 浣跨敤dom鐨勬墍鏈夋牱寮忥紝寰堥噸瑕�
@@ -339,7 +343,6 @@
},
handleSelectionChange(val) {
this.multipleSelection = val
- console.log(this.multipleSelection);
},
// 鏂板 / 淇敼
addOrUpdateHandle(row) {
diff --git a/src/views/equipment/metering/index.vue b/src/views/equipment/metering/index.vue
index ea43bd6..022b8cd 100644
--- a/src/views/equipment/metering/index.vue
+++ b/src/views/equipment/metering/index.vue
@@ -19,32 +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>
+ <el-dialog title="鏍囩鍒楄〃" :visible.sync="diaPrintTab" width="500px" top="5vh">
+ <div style="width:100%;height:400px;overflow-y: auto;">
+ <div class="dia_body" id="printMetering">
+ <el-card class="box-card" v-for="(tem, i) in multipleSelection" :key="i" style="margin-bottom: 10px; font-size: 16px !important;">
+ <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>
</div>
<span slot="footer" class="dialog-footer">
<el-button @click="diaPrintTab = false">鍙� 娑�</el-button>
- <el-button type="primary" @click="diaPrintTab = false">鎵� 鍗�</el-button>
+ <el-button type="primary" @click="printFun">鎵� 鍗�</el-button>
</span>
</el-dialog>
</div>
@@ -58,6 +60,7 @@
import * as fecha from 'element-ui/lib/utils/date'
import { remote } from '../../../api/admin/dict'
import vueQr from 'vue-qr'
+ import PrintJS from 'print-js'
export default {
data() {
return {
@@ -321,6 +324,32 @@
})
},
methods: {
+ printFun() {
+ this.diaPrintTab = false;
+ PrintJS({
+ printable: 'printMetering',//椤甸潰
+ type: "html",//鏂囨。绫诲瀷
+ maxWidth:450,
+ targetStyles:['*'],
+ style: `@page {
+ margin:0;
+ padding: 0;
+ size: 360px 170px;
+ }
+ html{
+ zoom:100%;
+ }
+ @media print{
+ width: 360px;
+ height: 170px;
+ margin:0;
+ padding: 0;
+ }`,
+ onPrintDialogClose: this.erexcel=false,
+ targetStyles: ["*"], // 浣跨敤dom鐨勬墍鏈夋牱寮忥紝寰堥噸瑕�
+ font_size: '',
+ });
+ },
pullEquipFun(){
this.table.toolbar.find((e) => e.text === '鍚屾').loading = true
pullEquip().then(res=>{
diff --git a/src/views/plan/customerorder/sample-customerorder-form.vue b/src/views/plan/customerorder/sample-customerorder-form.vue
index b1d326d..8a89e4c 100644
--- a/src/views/plan/customerorder/sample-customerorder-form.vue
+++ b/src/views/plan/customerorder/sample-customerorder-form.vue
@@ -68,7 +68,7 @@
<el-row>
<el-col :span="6">
<el-form-item label="涓氬姟鍛�" prop="salesMan">
- <el-select @change="selsctionSales" filterable v-model="salesSelectData" style="width:100%">
+ <el-select @change="selsctionSales" clearable filterable v-model="salesSelectData" style="width:100%">
<el-option v-for="(item,index) in staffOptions" :key="index" :value="item.staffNo+','+item.staffName" :label="item.staffName"/>
</el-select>
</el-form-item>
diff --git a/src/views/plan/manufacturingorder/index.vue b/src/views/plan/manufacturingorder/index.vue
index 09b4935..f1276ae 100644
--- a/src/views/plan/manufacturingorder/index.vue
+++ b/src/views/plan/manufacturingorder/index.vue
@@ -22,8 +22,9 @@
</el-button>
<el-dropdown-menu slot="dropdown">
<el-dropdown-item
+ :key="index"
:command="item.command"
- v-for="item in taskTypeArr"
+ v-for="(item,index) in taskTypeArr"
:disabled="canCreateTask"
>{{ item.label }}</el-dropdown-item
>
@@ -40,8 +41,9 @@
</el-button>
<el-dropdown-menu slot="dropdown">
<el-dropdown-item
+ :key="i"
:command="item.command"
- v-for="item in stateTagArr"
+ v-for="(item,i) in stateTagArr"
:disabled="item.disabled"
>{{ item.label }}</el-dropdown-item
>
@@ -197,9 +199,43 @@
</el-dialog>
</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="(item, i) in qrData" :key="i" style="margin-bottom: 15px;width:100%">
+ <el-dialog title="鏍囩鍒楄〃" :visible.sync="diaPrintTab" width="500px" top="5vh">
+ <div style="width:100%;height: 400px;overflow-y: auto;">
+ <div class="dia_body">
+ <el-checkbox
+ style="margin: 10px 5px;"
+ :indeterminate="isIndeterminate"
+ v-model="checkAll"
+ @change="handleCheckAllChange">鍏ㄩ��</el-checkbox>
+ <el-checkbox-group @change="changePrintCode()" v-model="checkIndexList">
+ <el-card class="box-card" v-for="(item, i) in qrData" :key="i" style="margin-bottom: 15px; font-size: 16px !important;">
+ <el-checkbox :label="i" :key="i" style="position: relative;top:-20px;left:5px"><br></el-checkbox>
+ <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;">{{ item.moNo2 }}</el-col>
+ </el-row>
+ <el-row>
+ <el-col :span="10" :offset="3">璁㈠崟浜岀淮鐮侊細</el-col>
+ <el-col :span="10">
+ <vueQr :text="JSON.stringify(item)" :size="80" :margin="2"></vueQr>
+ </el-col>
+ </el-row>
+ </el-card>
+ </el-checkbox-group>
+ </div>
+ </div>
+ <span slot="footer" class="dialog-footer">
+ <el-button @click="diaPrintTab = false">鍙� 娑�</el-button>
+ <el-button type="primary" @click="printFun">鎵� 鍗�</el-button>
+ </span>
+ </el-dialog>
+ <div class="el-dialog__body" style="width:448.8px;overflow-y: auto;position: absolute;top:9999px;padding: 0;">
+ <div id="printMOrder">
+ <el-card class="box-card" v-for="(item, i) in checkDataList" :key="i" style="margin-bottom:10px;font-size: 16px !important;">
<el-row>
<el-col :span="10" :offset="3">搴忓彿锛�</el-col>
<el-col :span="10" style="font-weight: bold;">{{ i + 1 }}</el-col>
@@ -211,16 +247,12 @@
<el-row>
<el-col :span="10" :offset="3">璁㈠崟浜岀淮鐮侊細</el-col>
<el-col :span="10">
- <vueQr :text="JSON.stringify(item)" :size="80" :margin="2"></vueQr>
+ <vueQr :text="JSON.stringify(item)" :size="110" :margin="2"></vueQr>
</el-col>
</el-row>
</el-card>
+ </div>
</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>
@@ -250,12 +282,15 @@
import { getStore } from '@/util/store.js'
import { getObj as getSysParam } from '@/api/admin/sys-public-param'
import vueQr from 'vue-qr'
+import PrintJS from 'print-js'
export default {
data() {
return {
- checkList: [],
+ checkAll: false,
+ isIndeterminate: true,
+ checkDataList: [],
+ checkIndexList: [],
qrData: [],
- orderDatalist:[],
diaPrintTab:false,
showCustomerorder: false,
paramObj: { customerList: null },
@@ -1051,7 +1086,97 @@
mounted() {
// this.initQueryParams()
},
+ watch:{
+ diaPrintTab(newVal){
+ if(!newVal){
+ this.qrData = []
+ this.checkIndexList = []
+ this.checkDataList = []
+ this.isIndeterminate = true;
+ }
+ }
+ },
methods: {
+ //鍏ㄩ��
+ handleCheckAllChange(val) {
+ if(val){
+ for(var i=0;i<this.qrData.length;i++){
+ this.checkIndexList.push(i)
+ }
+ this.checkDataList = this.qrData
+ }else{
+ this.checkIndexList = []
+ this.checkDataList = []
+ }
+ this.isIndeterminate = false;
+ },
+ //閫夋嫨瑕佹墦鍗扮殑浜岀淮鐮�
+ changePrintCode(){
+ let indexList = this.checkIndexList
+ let arr = []
+ indexList.forEach(i=>{
+ arr.push(this.qrData[i])
+ })
+ this.checkDataList = arr
+ },
+ //鎵撳嵃鏂规硶
+ printFun() {
+ if(this.checkDataList.length < 1){
+ this.$message.warning("璇烽�夋嫨瑕佹墦鍗扮殑浜岀淮鐮�")
+ return
+ }
+ this.diaPrintTab = false;
+ PrintJS({
+ printable: 'printMOrder',//椤甸潰
+ type: "html",//鏂囨。绫诲瀷
+ maxWidth:450,
+ targetStyles:['*'],
+ style: `@page {
+ margin:0;
+ size: 360px 175px;
+ }
+ html{
+ zoom:100%;
+ }
+ @media print{
+ width: 360px;
+ height: 175px;
+ margin:0;
+ }`,
+ onPrintDialogClose: this.erexcel=false,
+ targetStyles: ["*"], // 浣跨敤dom鐨勬墍鏈夋牱寮忥紝寰堥噸瑕�
+ font_size: '',
+ });
+ },
+ //鍒濆鍖栦簩缁寸爜鏍囩鏁版嵁
+ initQrData(data){
+ this.qrData = []
+ if(data){
+ let index = Number(data.qtyRequired) + Number(data.scrapQty)
+ if(index>0){
+ for(var i=1;i<= index;i++){
+ let obj = {
+ moNo: data.moNo,
+ moNo2: null,
+ }
+ let no = (i+"").padStart(3,'0')
+ obj.moNo2 = data.moNo + no
+ this.qrData.push(obj)
+ }
+ }
+ }
+ },
+ //鏍囩鎵撳嵃鎸夐挳
+ labelPrint(){
+ if(this.multipleSelection.length==0){
+ this.$message.warning('璇烽�夋嫨涓�鏉℃暟鎹�')
+ return
+ }
+ let selection = this.multipleSelection
+ let lastRow = selection[ selection.length - 1 ]
+ this.initQrData(lastRow)
+ this.diaPrintTab = true
+ },
getManufactureAttr(row, column, cellValue) {
this.manufactureAttrs.forEach((obj) => {
if (obj.value === cellValue) {
@@ -1168,7 +1293,6 @@
getByMoIds([this.orderPlan.id]).then((repsonse) => {
const resData = repsonse.data.data
const resCode = repsonse.data.code
- console.log("resData-----",repsonse);
if (resCode === 0) {
const _that = this
for (const key in resData) {
@@ -1400,36 +1524,8 @@
}
}
},
- //鍒濆鍖栦簩缁寸爜鏍囩鏁版嵁
- initQrData(data){
- if(data){
- let index = Number(data.qtyRequired) + Number(data.scrapQty)
- if(index>0){
- for(var i=1;i<= index;i++){
- let obj = {
- moNo: data.moNo,
- moNo2: null,
- }
- let no = (i+"").padStart(3,'0')
- obj.moNo2 = data.moNo + no
- this.qrData.push(obj)
- }
- }
- }
- },
// table鑷甫浜嬩欢
handleSelectionChange(val) {
- console.log(val,"涓�琛�");
- let orderData = []
- orderData =val.map( el =>{
- return{
- moNo:el.moNo,
- qtyRequired: el.qtyRequired,
- scrapQty: el.scrapQty
- }
- })
- this.orderDatalist = orderData
- this.initQrData(orderData[0])
// 鏍规嵁鐘舵�侊紝绂佺敤琛ㄥご鎸夐挳
// 绛涢�夊嚭閫変腑璁板綍鐨勭姸鎬�
var stateArr = val.map(function(value, index) {
@@ -1722,13 +1818,6 @@
this.$message.error('涓婁紶澶辫触')
}
},
- labelPrint(){
- if(this.multipleSelection.length==0){
- this.$message.warning('璇烽�夋嫨涓�鏉℃暟鎹�')
- return
- }
- this.diaPrintTab = true
- }
}
}
</script>
diff --git a/src/views/quality/Packaging_ledger/index.vue b/src/views/quality/Packaging_ledger/index.vue
index b4837ac..542ea79 100644
--- a/src/views/quality/Packaging_ledger/index.vue
+++ b/src/views/quality/Packaging_ledger/index.vue
@@ -128,23 +128,25 @@
</packfromadd>
</basic-container>
<el-dialog title="鏍囩鍒楄〃" top="5vh" :visible.sync="diaPrintTab" width="500px">
- <div id="qrCard" class="dia_body" style="height: 400px;overflow-y: auto;padding: 0 10px;">
- <el-card class="box-card" v-for="(item, i) in qrData" :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;">{{ item.packageNo }}</el-col>
- </el-row>
- <el-row>
- <el-col :span="10" :offset="3">浜岀淮鐮侊細</el-col>
- <el-col :span="10">
- <vueQr :text="JSON.stringify(item)" :size="120" :margin="1"></vueQr>
- </el-col>
- </el-row>
- </el-card>
+ <div style="width:100%;height: 400px;overflow-y: auto;">
+ <div id="qrCard" class="dia_body">
+ <el-card class="box-card" v-for="(item, i) in qrData" :key="i" style="margin-bottom: 10px;">
+ <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;">{{ item.packageNo }}</el-col>
+ </el-row>
+ <el-row>
+ <el-col :span="10" :offset="3">鍖呰鍙拌处浜岀淮鐮侊細</el-col>
+ <el-col :span="10">
+ <vueQr :text="JSON.stringify(item)" :size="110" :margin="1"></vueQr>
+ </el-col>
+ </el-row>
+ </el-card>
+ </div>
</div>
<span slot="footer" class="dialog-footer">
<el-button @click="diaPrintTab = false">鍙� 娑�</el-button>
@@ -313,20 +315,27 @@
printFun() {
this.diaPrintTab = false;
PrintJS({
- printable: "qrCard",
- type: "html",
- // header: "鍘熸潗鏂欐娴嬫姤鍛�",
- targetStyles: ["*"],
- style: `@page {margin: 0mm 5mm;}
- html {zoom:100%;}
- @media print {
- html,body{
- width:60mm;
- height:40mm;
- }
- }`,
- ignoreElements: ["no-ignore"],
- orientation: 'portrait'
+ printable: 'qrCard',//椤甸潰
+ type: "html",//鏂囨。绫诲瀷
+ maxWidth:450,
+ targetStyles:['*'],
+ style: `@page {
+ margin:0;
+ padding: 0;
+ size: 360px 170px;
+ }
+ html{
+ zoom:100%;
+ }
+ @media print{
+ width: 360px;
+ height: 170px;
+ margin:0;
+ padding: 0;
+ }`,
+ onPrintDialogClose: this.erexcel=false,
+ targetStyles: ["*"], // 浣跨敤dom鐨勬墍鏈夋牱寮忥紝寰堥噸瑕�
+ font_size: '',
});
},
handleSelectionChange(val){
@@ -340,7 +349,6 @@
return
}
this.diaPrintTab = true
- console.log(this.multipleSelection);
this.multipleSelection.forEach(item=>{
let obj = {
packageNo: item.packageNo,
--
Gitblit v1.9.3