From c52465ae99f341ccb5139a95cf24d647672765d7 Mon Sep 17 00:00:00 2001
From: 王震 <10952869+daywangzhen@user.noreply.gitee.com>
Date: 星期三, 22 十一月 2023 13:26:30 +0800
Subject: [PATCH] 	modified:   src/views/quality/finishedProductInspection/finishedProducter-print.vue 	modified:   src/views/quality/finishedProductInspection/index.vue 	modified:   src/views/quality/teststandard/index.vue

---
 src/views/quality/finishedProductInspection/index.vue |  314 +++++++++++++++++----------------------------------
 1 files changed, 107 insertions(+), 207 deletions(-)

diff --git a/src/views/quality/finishedProductInspection/index.vue b/src/views/quality/finishedProductInspection/index.vue
index 73c770a..c319403 100644
--- a/src/views/quality/finishedProductInspection/index.vue
+++ b/src/views/quality/finishedProductInspection/index.vue
@@ -1,31 +1,6 @@
 <template>
 	<div class="content-main">
-		<div v-if="!showAdd&&!showLook&&!showUp" class="rawPage">
-			<!-- <div class="nav"> -->
-                <!-- <div class="title">
-                    <el-row>
-                        <el-col :span="12">浜у搧妫�楠�</el-col>
-                        <el-col :span="12">
-                            <el-button @click="handleAddNew" type="primary" size="mini" icon="el-icon-plus"
-                                style="background: #004EA2; ">鏂板</el-button>
-                            <el-button icon="el-icon-delete" size="mini">鍒犻櫎</el-button>
-                            <el-button icon="el-icon-download" size="mini">瀵煎嚭</el-button>
-                        </el-col>
-                    </el-row>
-                </div> -->
-				<!-- <span>妫�娴嬬粨鏋滐細</span>
-				<el-select v-model="searchData.result" size="small" placeholder="璇烽�夋嫨" style="width: 224px;margin-right: 52px;">
-					<el-option :value="''" label="鍏ㄩ儴"></el-option>
-					<el-option :value="1" label="鍚堟牸"></el-option>
-					<el-option :value="0" label="涓嶅悎鏍�"></el-option>
-				</el-select>
-				<span>浜у搧鍚嶇О锛�</span>
-				<el-input v-model="searchData.material" size="small" placeholder="璇疯緭鍏ヤ骇鍝佸悕绉�"
-					style="width: 224px;margin-right: 52px;"></el-input>
-				<el-button size="mini" @click="()=>{searchData={};getInspectionTableData()}"><span>閲� 缃�</span></el-button>
-				<el-button size="mini" type="primary" @click="getInspectionTableData" style="background: #004EA2;"><span>鏌�
-						璇�</span></el-button> -->
-			<!-- </div> -->
+		<div class="rawPage">
             <basic-container>
                 <ttable 
                 :table="table"
@@ -37,77 +12,42 @@
                 <template #toolbar></template>
                 </ttable>
             </basic-container>
-			<!-- <div class="content-body">
-				<div class="inspectionTable">
-					<el-table ref="inspectionTable" height="620" :cell-style="{textAlign: 'center'}"
-						:header-cell-style="{border:'0px',background:'#f5f7fa',color:'#606266',boxShadow: 'inset 0 1px 0 #ebeef5',textAlign: 'center'}"
-						:data="inspectionTable" style="width: 100%">
-						<el-table-column type="selection" width="50">
-						</el-table-column>
-						<el-table-column prop="order_number" label="璁㈠崟鍙�" min-width="100" />
-						<el-table-column prop="customer_name" label="瀹㈡埛鍚嶇О" min-width="80" />
-						<el-table-column prop="project_name" label="宸ョ▼鍚嶇О" min-width="80" />
-						<el-table-column prop="quality_traceability" label="璐ㄩ噺杩芥函鍙�" min-width="108" />
-						<el-table-column prop="material_code" label="浜у搧缂栫爜" min-width="100" />
-						<el-table-column prop="material" label="浜у搧澶х被" min-width="72" />
-						<el-table-column prop="specifications_model" label="瑙勬牸鍨嬪彿" min-width="110" />
-						<el-table-column prop="unit" label="鍗曚綅" min-width="50" />
-						<el-table-column prop="quantity" label="鏁伴噺" min-width="50" />
-						<el-table-column prop="detectionPeriod" label="妫�楠屾棩鏈�" min-width="80" />
-						<el-table-column prop="result" label="妫�娴嬬粨鏋�" min-width="80">
-							<template slot-scope="scope">
-								<span style="color: #34BD66;" v-if="scope.row.result === 1">鍚堟牸</span>
-								<span style="color: #E84738;" v-else-if="scope.row.result === 0">涓嶅悎鏍�</span>
-								<span v-else-if="scope.row.result === null || scope.row.result === undefined">鏆傛湭缁撹</span>
-							</template>
-						</el-table-column>
-						<el-table-column label="鎿嶄綔" min-width="80">
-							<template slot-scope="scope">
-								<el-button type="text" size="small" @click="goToDetail(scope.row)">鏌ョ湅</el-button>
-								<el-button type="text" size="small">鎵撳嵃</el-button>
-								<el-button v-if="scope.row.result == null" type="text" size="small"
-									@click="goUp(scope.row)">缂栬緫</el-button>
-							</template>
-						</el-table-column>
-					</el-table>
-				</div> -->
-				<!-- 鍒嗛〉鍣� -->
-				<!-- <div class="pagination">
-					<el-pagination :current-page="pageParams.pageSize" :page-sizes="[10, 50, 100, 200]"
-						:page-size="pageParams.countSize" layout="total, sizes, prev, pager, next, jumper" :total="pageParams.total"
-						@size-change="handleSizeChange" @current-change="handleCurrentChange" />
-				</div> -->
-			<!-- </div> -->
-		</div>
-		<div class="newPage" v-if="showAdd">
-			<finishedProductInspectionAdd />
-		</div>
-		<div class="newPage" v-if="showLook">
-			<finishedProductInspectionLook :rowInfo="rowInfo" />
-		</div>
-		<div class="newPage" v-if="showUp">
-			<finishedProductInspectionUp :rowInfo="rowInfo" />
+            <el-dialog
+            top="10vh"
+            title="鎵撳嵃棰勮"
+            :visible.sync="printDialogVisible"
+            width="70%">
+            <div style="width:100%;height: 60vh;overflow-y: scroll;">
+                <printTemplate id="printRaw" :formData="printFormData"></printTemplate>
+            </div>
+            <span slot="footer" class="dialog-footer">
+                <el-button @click="()=>{printDialogVisible = false;printFormData=null}">鍙� 娑�</el-button>
+                <el-button type="primary" @click="printFun()">鎵� 鍗�</el-button>
+            </span>
+            </el-dialog>
 		</div>
 	</div>
 </template>
 
-
 <script>
     import ttable from '@/views/common/ztt-table.vue'
     import * as fecha from 'element-ui/lib/utils/date'
-	import finishedProductInspectionAdd from './finishedProductInspectionAdd'
-	import finishedProductInspectionUp from './finishedProductInspectionUp'
-	import finishedProductInspectionLook from './finishedProductInspectionLook'
-    import { page } from '@/api/quality/finishedProduct'
+	import finishedProductInspectionAdd from './finishedProduct-form'
+    import { page,deletePro,exportExaminationProducts,queryById } from '@/api/quality/finishedProduct'
+    import { transform } from '@/util/fileTransform'
+    import printTemplate from './finishedProducter-print.vue'
+    import PrintJS from 'print-js'
+import { title } from 'process'
 	export default {
 		components: {
 			finishedProductInspectionAdd,
-			finishedProductInspectionUp,
-			finishedProductInspectionLook,
-            ttable
+            ttable,
+            printTemplate
 		},
 		data() {
 			return {
+                printFormData: null,
+                printDialogVisible: false,
                 result:[{label:'鍏ㄩ儴',value: ''},{label:'鍚堟牸',value: '1'},{label:'涓嶅悎鏍�',value: '0'}],
                 type: [1],
                 prelang: 'finishedProduct',
@@ -227,19 +167,26 @@
                     {
                         text: '鏂板',
                         type: 'primary',
-                        fun: ()=>this.showAdd=true
-                    },
-                    {
-                        text: '鍒犻櫎',
+                        fun: this.addOrUpdateHandle
                     },
                     {
                         text: '瀵煎嚭',
+                        type: 'primary',
+                        fun: this.exportExcel
                     }
                     ],
                     operator: [{
                         text: '鎵撳嵃',
                         type: 'text',
                         size: 'small',
+                        fun: this.showPrint,
+                        show: {
+                            val: [
+                                '1',
+                                '0'
+                            ],
+                            key: 'result'
+                        }
                     },{
                         text: '浣滃簾',
                         type: 'text',
@@ -253,68 +200,78 @@
                     minWidth: 100
                     },
                 },
-
-
-
-
-
-                
-				searchData: {
-					result: '',
-					material: '',
-				},
-				// 涓绘満宸ヤ笅鎷夋
-				usernameOptions: [],
-				inspectionTable: [],
-				rowInfo: {},
-				pageParams: {
-					countSize: 10, //姣忛〉鏁伴噺
-					pageSize: 1, // 褰撳墠椤电爜
-					total: 0
-				},
-				showAddPage: false,
-				showAdd: false,
-				showLook: false,
-				showUp: false,
-				showDetail: false,
-				addInspectionform: [{
-					number: '',
-					username: '',
-					projectname: '',
-					tracenumber: '',
-					code: '',
-					class: '',
-					specificationmodel: '',
-					unit: '',
-					quantity: '',
-					group: '',
-					worker: '',
-					machine: ''
-				}],
-				inspectionItems: [{
-					project: '甯冮殕杩�',
-					unit: '鍚�',
-					standardVal: '8219384314',
-					controlVal: '9823401',
-					detectionVal: '11111',
-					device: '',
-					conclusion: '鍚堟牸'
-				}],
-				inspectionResultForm: [{
-					id: '274024',
-					name: '111',
-					inspecter: '111',
-					conclusion: '',
-					operation: ''
-				}],
-				finishedInsInfo: {}
 			}
 		},
-		created() {
-			this.init()
-			// this.getInspectionTableData()
-		},
+		created() { },
+        watch:{
+        printFormData(newVal){
+            if(newVal){
+                // console.log("pData鍙樺寲--",newVal);
+                this.printFormData = newVal
+            }
+        }
+    },
 		methods: {
+            //鎵撳嵃鎸夐挳
+            printFun() {
+                const style = '@page {margin: 10mm 5mm; margin-bottom: 0;margin-top:0;} ' +'@media print {.title{font-size:30pt;font-weight: 400;font-family: 榛戜綋;!important;}' ;
+                PrintJS({
+                    printable: "printRaw",
+                    type: "html",
+                    // scanStyles: false,
+                    maxWidth: 1000,
+                    // header: "浜у搧妫�娴嬫姤鍛�",
+                    style:style,
+                    targetStyles: ["*"],
+                    ignoreElements: ["no-ignore"],
+                    orientation: 'portrait'
+                });
+            },
+            //鏌ョ湅鎶ュ憡鎸夐挳
+            showPrint(row){
+                queryById(row.id).then(res=>{
+                    this.printFormData = res.data.data
+                    this.printFormData.createTime = row.createTime
+                    this.printFormData.updateTime = row.updateTime
+                    this.printDialogVisible = true
+                }).catch(error=>{
+                })
+            },
+            exportExcel(){
+                let queryParam=this.$refs.finishedProduct.getQueryParam();
+                delete queryParam.criteria
+                // console.log(queryParam);
+                exportExaminationProducts(queryParam).then((res)=>{
+                    transform(res)
+                })
+            },
+			deleteHandle(row){
+				// console.log(row.id)
+				this.$confirm('纭鍒犻櫎璇ユ暟鎹悧锛�', '鎻愮ず', {
+				confirmButtonText: '纭畾',
+				cancelButtonText: '鍙栨秷',
+				type: 'warning',
+				}).then(()=>{
+					deletePro(row.id).then(res=>{
+						if(res.data.code == 0){
+							this.$message.success("鍒犻櫎鎴愬姛")
+						}else{
+							this.$message.error("鍒犻櫎澶辫触")
+						}
+						this.getData()
+					})
+				})
+			},
+			// 鏂板 / 淇敼
+			addOrUpdateHandle(row) {
+				this.$router.push({
+					name: 'finishedProductForm',
+					query: { 
+                        id: row == null ? null : row.id,
+                        resultVal: row == null ? null : row.result 
+                    }
+				})
+			},
             formatResult(row, column, cellValue){
                 if(cellValue != undefined || cellValue != null){
                     if(cellValue == 0){
@@ -327,67 +284,10 @@
             formatDateTime(row, column, cellValue) {
                 return cellValue ? fecha.format(new Date(cellValue), 'yyyy-MM-dd') : ''
             },
-            addOrUpdateHandle(row) {
-                this.$router.push({
-                    name: 'rawMaterialForm',
-                    query: { id: row == null ? null : row.id }
-                })
-            },
-            handleSelectionChange(){
-
-            },
-			// 姣忛〉鏉℃暟鏀瑰彉鏃惰Е鍙� 閫夋嫨涓�椤垫樉绀哄灏戣
-			handleSizeChange(val) {
-				console.log(`姣忛〉 ${val} 鏉)
-				this.currentPage = 1
-				this.pageSize = val
+            handleSelectionChange(){ },
+			getData() {
+				this.$refs.finishedProduct.getDataList()
 			},
-			// 褰撳墠椤垫敼鍙樻椂瑙﹀彂 璺宠浆鍏朵粬椤�
-			handleCurrentChange(val) {
-				console.log(`褰撳墠椤�: ${val}`)
-				this.currentPage = val
-			},
-			handleAddNew() {
-				this.showAdd = true
-			},
-			// async getInspectionTableData() {
-			// 	const {
-			// 		data: {
-			// 			row,
-			// 			total
-			// 		}
-			// 	} = await this.$axios.get(this.$api.url.finishedInsListPage, {
-			// 		params: {
-			// 			...this.pageParams,
-			// 			...this.searchData
-			// 		}
-			// 	})
-			// 	this.inspectionTable = row
-			// 	this.pageParams.total = total
-			// },
-			goToDetail(row) {
-				this.rowInfo = row
-				this.showLook = true
-			},
-			goUp(row) {
-				this.rowInfo = row
-				this.showUp = true
-			},
-			async init() {
-				// const {data} = await this.$axios.get(this.$api.url.finishedInspectUser)
-				// this.usernameOptions = data
-
-			},
-			comBackMain(val) {
-				this.showAdd = false
-				this.showLook = false
-				this.showUp = false
-				this.init()
-				// this.getInspectionTableData()
-				if (val) {
-					this.$parent.removeAllTab()
-				}
-			}
 		}
 
 	}

--
Gitblit v1.9.3