From 221cc610f407b71973013de281fd19f7fc909e52 Mon Sep 17 00:00:00 2001
From: zouyu <2723363702@qq.com>
Date: 星期二, 19 十二月 2023 10:44:08 +0800
Subject: [PATCH] modified: src/const/crud/customerOrder/customerOrderForm.js
---
src/views/quality/finishedProductInspection/index.vue | 352 +++++++++++++++++++++------------------------------------
1 files changed, 131 insertions(+), 221 deletions(-)
diff --git a/src/views/quality/finishedProductInspection/index.vue b/src/views/quality/finishedProductInspection/index.vue
index 73c770a..b5a6c5a 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',
@@ -133,14 +73,30 @@
data: [],
// 鏍囬
column: [
+ {
+ minWidth: '120',
+ prop: 'finInsNo',
+ label: '浜у搧妫�楠岀紪鍙�',
+ isTrue: true,
+ isSearch: true,
+ searchInfoType: 'text',
+ render: { fun: this.addOrUpdateHandle }
+ },
+ {
+ minWidth: '120',
+ prop: 'productNo',
+ label: '鎶ュ伐鍗曞彿',
+ isTrue: true,
+ isSearch: true,
+ searchInfoType: 'text'
+ },
{
minWidth: '120',
prop: 'orderNumber',
label: '璁㈠崟鍙�',
isTrue: true,
isSearch: true,
- searchInfoType: 'text',
- render: { fun: this.addOrUpdateHandle }
+ searchInfoType: 'text'
},
{
minWidth: '120',
@@ -162,8 +118,16 @@
},
{
minWidth: '120',
+ prop: 'outBatchNo',
+ label: '鎵规鍙�',
+ isTrue: true,
+ isSearch: true,
+ searchInfoType: 'text'
+ },
+ {
+ minWidth: '120',
prop: 'materialCode',
- label: '浜у搧缂栫爜',
+ label: '浜у搧缂栧彿',
isTrue: true,
isSearch: true,
searchInfoType: 'text'
@@ -224,23 +188,13 @@
},
],
toolbar: [
- {
- text: '鏂板',
- type: 'primary',
- fun: ()=>this.showAdd=true
- },
- {
- text: '鍒犻櫎',
- },
- {
- text: '瀵煎嚭',
- }
+ {
+ text: '涓嬭浇妫�楠屾姤鍛�',
+ type: 'primary',
+ fun: this.downloadProReport
+ }
],
operator: [{
- text: '鎵撳嵃',
- type: 'text',
- size: 'small',
- },{
text: '浣滃簾',
type: 'text',
size: 'small',
@@ -253,68 +207,81 @@
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){
+ this.printFormData = newVal
+ }
+ }
+ },
methods: {
+ downloadProReport(){
+ this.$message.info("寮�鍙戜腑...")
+ },
+ //鎵撳嵃鎸夐挳
+ 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: 1200,
+ header: "浜у搧妫�娴嬫姤鍛�",
+ style:style,
+ css:'./title.css',
+ 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
+ exportExaminationProducts(queryParam).then((res)=>{
+ transform(res)
+ })
+ },
+ deleteHandle(row){
+ 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,
+ },
+ params: {
+ resultVal: row == null ? null : row.result
+ }
+ })
+ },
formatResult(row, column, cellValue){
if(cellValue != undefined || cellValue != null){
if(cellValue == 0){
@@ -327,67 +294,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