From 1bf53722c9bbab6d0a561de40f0efbe3acf1f88d Mon Sep 17 00:00:00 2001
From: Fixiaobai <fixiaobai@163.com>
Date: 星期三, 30 八月 2023 09:36:06 +0800
Subject: [PATCH] modified: src/api/inspection/commisioninspection.js
---
src/views/inspectionManagement/reportForInspection/index.vue | 281 ++++++++++++++++++++++++++++++++++++++++++++++++++++----
1 files changed, 261 insertions(+), 20 deletions(-)
diff --git a/src/views/inspectionManagement/reportForInspection/index.vue b/src/views/inspectionManagement/reportForInspection/index.vue
index 3ff10a1..292601a 100644
--- a/src/views/inspectionManagement/reportForInspection/index.vue
+++ b/src/views/inspectionManagement/reportForInspection/index.vue
@@ -1,8 +1,9 @@
<template>
<div class="content-main">
+ <div class="rawPage" v-if="!showNewPage">
<div class="top-bar">
<el-form ref="form" :inline="true" :model="searchData">
- <el-form-item label="鏉愭枡缂栫爜:" class="sermargin">
+ <el-form-item label="鏉愭枡缂栫爜:" position="left" class="sermargin">
<el-input
v-model="searchData.code"
class="input-form"
@@ -39,9 +40,33 @@
<el-form-item>
<el-button type="primary" @click="search">鏌ヨ</el-button>
<el-button type="primary" plain @click="reset">閲嶇疆</el-button>
+ <el-button type="primary" icon="el-icon-plus" @click="addReportVisible = true">鏂板</el-button>
</el-form-item>
</el-form>
</div>
+ <el-dialog
+ title="鏂板鍘熸潗鏂欐姤妫�"
+ :visible.sync="addReportVisible"
+ width="40%">
+ <el-form v-model="insertData" label-position="left" label-width="80px">
+ <el-form-item label="鏍囧噯绫诲瀷">
+ <el-input v-model="insertData.materialName" />
+ </el-form-item>
+ <el-form-item label="鐗╂枡鍚嶇О">
+ <el-input v-model="insertData.materialName" />
+ </el-form-item>
+ <el-form-item label="鎵ц鏍囧噯">
+ <el-input v-model="insertData.standardName" />
+ </el-form-item>
+ <el-form-item label="瑙勬牸鍨嬪彿">
+ <el-input v-model="insertData.specificationsName" />
+ </el-form-item>
+ </el-form>
+ <span slot="footer" class="dialog-footer">
+ <el-button @click="addReportVisible = false">鍙� 娑�</el-button>
+ <el-button type="primary" @click="insert()">纭� 瀹�</el-button>
+ </span>
+ </el-dialog>
<div class="library-table">
<div class="table-header">
<div class="search-bar">
@@ -50,8 +75,9 @@
</el-radio-group>
</div>
<div class="generateInsp">
- <el-button type="primary" size="mini" icon="el-icon-document" style="background-color: rgb(1, 102, 226);">鐢熸垚鎶ユ鍗�</el-button>
+ <el-button @click="addReportBtn" type="primary" size="mini" icon="el-icon-document" style="background-color: rgb(1, 102, 226);">鐢熸垚鎶ユ鍗�</el-button>
</div>
+
</div>
<div class="table-box">
<el-table
@@ -61,11 +87,13 @@
:header-cell-style="{border:'0px',background:'#f5f7fa',color:'#606266',boxShadow: 'inset 0 1px 0 #ebeef5',textAlign: 'center'}"
:data="inspectionTable"
style="width: 100%"
+ @selection-change="handleSelectionChange"
>
<el-table-column
type="selection"
- min-width="10%"
- />
+ :selectable="checkSelect"
+ min-width="5%">
+ </el-table-column>
<el-table-column
type="index"
label="搴忓彿"
@@ -122,15 +150,22 @@
min-width="8%"
/>
<el-table-column
- prop="condition"
+ prop="type"
label="鐘舵��"
min-width="8%"
>
<template slot-scope="scope">
- <span :style="{ color: scope.row.condition === 1 ? 'green' : 'red' }">
- {{ scope.row.condition === 1 ? '宸叉娴�':'鏈娴�' }}
+ <span :style="{ color: scope.row.type === 1 ? 'green' : 'red' }">
+ {{ scope.row.type === 1 ? '宸叉姤妫�':'鏈姤妫�' }}
</span>
</template>
+ </el-table-column>
+ <el-table-column
+ label="鎿嶄綔"
+ min-width="8%">
+ <template slot-scope="scope">
+ <el-button type="text" size="small" @click="removeFun(scope.row)">鍒犻櫎</el-button>
+ </template>
</el-table-column>
</el-table>
<!-- 鍒嗛〉鍣� -->
@@ -147,14 +182,118 @@
</div>
</div>
</div>
- </div>
+ </div>
+
+ <!-- 鐢熸垚鎶ユ鍗� -->
+ <div class="newPage" v-if="showNewPage">
+ <!-- 鏂板椤甸潰 -->
+ <div class="inspectionForm">
+ <el-form :model="inspectionForm" ref="inspectionForm" label-position="right" label-width="100px" size="mini" >
+ <div class="formwrapper">
+ <el-row>
+ <el-col :span="8">
+ <el-form-item label="鏉ユ枡鏃ユ湡锛�">
+ <el-input style="width: 180px;" :value="inspectionForm.formTime" disabled autocomplete="off" />
+ </el-form-item>
+ </el-col>
+ <el-col :span="8">
+ <el-form-item label="渚涘簲鍟嗗悕绉帮細">
+ <el-input style="width: 180px;" :value="inspectionForm.supplier" disabled autocomplete="off" /> </el-form-item>
+ </el-col>
+ <el-col :span="8">
+ <el-form-item label="鏍峰搧缂栧彿锛�">
+ <el-input style="width: 180px;" :value="inspectionForm.code" disabled autocomplete="off" />
+ </el-form-item>
+ </el-col>
+ </el-row>
+ <el-row >
+ <el-col :span="8">
+ <el-form-item label="鏍峰搧鍚嶇О锛�" >
+ <el-input style="width: 180px;" :value="inspectionForm.name" disabled autocomplete="off" />
+ </el-form-item>
+ </el-col>
+ <el-col :span="8">
+ <el-form-item label="瑙勬牸鍨嬪彿锛�">
+ <el-input style="width: 180px;" :value="inspectionForm.specifications" disabled autocomplete="off" />
+ </el-form-item>
+ </el-col>
+ <el-col :span="8">
+ <el-form-item label="鍗曚綅锛�">
+ <el-input style="width: 180px;" :value="inspectionForm.unit" disabled autocomplete="off" />
+ </el-form-item>
+ </el-col>
+ </el-row>
+ <el-row >
+ <el-col :span="8">
+ <el-form-item label="鏁伴噺锛�" >
+ <el-input style="width: 180px;" :value="inspectionForm.num" disabled autocomplete="off" />
+ </el-form-item>
+ </el-col>
+ <el-col :span="8">
+ <el-form-item label="鎶ユ鏃ユ湡锛�" >
+ <el-input style="width: 180px;" :value="inspectionForm.endTime" disabled autocomplete="off" />
+ </el-form-item>
+ </el-col>
+ <el-col :span="8">
+ <el-form-item label="鎶ユ浜猴細">
+ <el-input style="width: 180px;" :value="inspectionForm.userName" disabled autocomplete="off" />
+ </el-form-item>
+ </el-col>
+ </el-row>
+ </div>
+ </el-form>
+ </div>
+ <div class="inspectionProject">
+ <div class="header">
+ <span style="font-size: 14px">妫�楠岄」鐩�</span>
+ <div>
+ <!-- <el-button type="primary" plain size="mini">淇濆瓨</el-button> -->
+ <el-button @click="showNewPage = false" type="primary" plain size="mini" icon="el-icon-back">杩斿洖</el-button>
+ </div>
+ </div>
+ <el-table
+ :max-height="800"
+ :cell-style="{textAlign: 'center'}"
+ :header-cell-style="{border:'0px',background:'#f5f7fa',color:'#606266',boxShadow: 'inset 0 1px 0 #ebeef5',textAlign: 'center'}"
+ :data="inspectionItems">
+ <el-table-column type="index" label="搴忓彿" width="60"></el-table-column>
+ <el-table-column prop="name" label="椤圭洰" width="250"></el-table-column>
+ <el-table-column prop="unit" label="鍗曚綅" width="125"></el-table-column>
+ <el-table-column prop="required" label="鏍囧噯鍊�" width="125"></el-table-column>
+ <el-table-column prop="internal" label="鍐呮祴鍊�" width="125"></el-table-column>
+ <el-table-column prop="testValue" label="妫�楠屽��" width="125"></el-table-column>
+ <el-table-column prop="userName" label="妫�楠屼汉">
+ <template slot-scope="scope">
+ <el-select v-model="scope.row.checker" size="small" slot="append" style="width: 260px;">
+ <el-option v-for="(item,index) in checkeroptions" :key="index" :value="item.value" :label="item.label">{{ item.label }}</el-option>
+ </el-select>
+ </template>
+ </el-table-column>
+ <el-table-column prop="device" label="璇曢獙璁惧">
+ <template slot-scope="scope">
+ <el-select v-model="scope.row.device" size="small" slot="append" style="width: 260px;">
+ <el-option v-for="(item,index) in deviceoptions" :key="index" :value="item.value" :label="item.label">{{ item.label }}</el-option>
+ </el-select>
+ </template>
+ </el-table-column>
+ </el-table>
+ </div>
+ </div>
+ </div>
</template>
<script>
-import {getRawMaterialList } from '@/api/inspection/rawmaterial'
+import { getRawMaterialList,addInspect,selectInspectsListById } from '@/api/inspection/rawmaterial'
export default {
data() {
return {
+ insertData:{
+
+ },
+ addReportVisible: false,
+ checked: false,
+ resultData : {},
+ checkData:[],
form: [],
searchData: {
code: '',
@@ -170,7 +309,21 @@
label: '宸叉楠�'
}, {
value: 2,
- label: '鏈楠�'
+ label: '寰呮楠�'
+ }],
+ deviceoptions:[{
+ value: 0,
+ label: '鎷夊姏鏈�'
+ },{
+ value: 1,
+ label: '鎷栨媺鏈�'
+ }],
+ checkeroptions:[{
+ value: 0,
+ label: '榛勫皬鏄�'
+ },{
+ value: 1,
+ label: '寮犱笁'
}],
radioOptions:[{
label: '鍏ㄩ儴',
@@ -199,17 +352,82 @@
currentPage: 1,
pageSize: 5,
total:20,
- data: ''
+ data: '',
+ showNewPage: false,
+ inspectionForm:{},
+ inspectionItems:[]
}
},
created(){
this.getRawMaterialList()
},
methods: {
+ removeFun(row){
+ this.$confirm('纭鍒犻櫎璇ユ暟鎹悧?', '鎻愮ず', {
+ confirmButtonText: '纭畾',
+ cancelButtonText: '鍙栨秷',
+ type: 'warning'
+ }).then(() => {
+ this.$message({
+ type: 'success',
+ message: '鍒犻櫎鎴愬姛!'
+ });
+ }).catch(() => {});
+ },
+ checkSelect(row,index){
+ if(row.type === 1){
+ return false;
+ }else{
+ return true;
+ }
+ },
+ handleSelectionChange(val){
+ this.checkData = val;
+ console.log(val);
+ },
+ //鐢熸垚鎶ユ鍗曟寜閽�
+ addReportBtn(){
+ let arr = this.checkData;
+ if(arr.length < 1){
+ this.$message.error("璇烽�夋嫨涓�鏉℃暟鎹�!");
+ }else{
+ if(arr.length > 1){
+ this.$message.error("鏈�澶氶�夋嫨涓�鏉℃暟鎹�!");
+ }else{
+ //娣诲姞鎶ユ鍗�
+ let val = arr[0];
+ let obj = {
+ "endTime": val.dateSurvey,
+ "experiment": "",
+ "formTime": val.createTime,
+ "id": val.id,
+ "mcode": val.materialCoding,
+ "name": val.materialName,
+ "num": val.quantity,
+ "specifications": val.specificationsModels,
+ "startTime": val.inspectionDate,
+ "supplier": val.supplierName,
+ "type": val.type,
+ "unit": val.unit,
+ "version": val.version
+ }
+ this.createReport(obj);
+ this.showNewPage = true;
+ }
+ }
+ },
+ //鐢熸垚鎶ヤ环鍗�
+ async createReport(param){
+ await addInspect(param);
+ const res2 = await selectInspectsListById({ id : 59});
+ this.resultData = res2.data;
+ this.inspectionForm = res2.data;
+ this.inspectionItems = res2.data.insProducts;
+
+ },
// 鑾峰彇鍒嗛〉鍒楄〃鏁版嵁
async getRawMaterialList(){
const res = await getRawMaterialList({pageNo: this.currentPage,pageSize:this.pageSize})
- // console.log(res)
this.inspectionTable = res.data.row
this.data = res.data.row
this.total = res.data.total
@@ -223,7 +441,6 @@
pageNo: this.currentPage,
pageSize: this.pageSize
})
- // console.log(res)
this.inspectionTable = res.data.row
this.data = res.data.row
this.total = res.data.total
@@ -239,7 +456,6 @@
},
radioclick(){
this.searchData.state = this.radioValue
- // console.log(this.radioValue)
this.inspectionTable = this.data.filter((item)=>{
return item.condition === this.radioValue
})
@@ -250,13 +466,11 @@
},
// 姣忛〉鏉℃暟鏀瑰彉鏃惰Е鍙� 閫夋嫨涓�椤垫樉绀哄灏戣
handleSizeChange(val) {
- console.log(`姣忛〉 ${val} 鏉)
this.pageSize = val
this.getRawMaterialList({pageNo: this.currentPage,pageSize:this.pageSize})
},
// 褰撳墠椤垫敼鍙樻椂瑙﹀彂 璺宠浆鍏朵粬椤�
handleCurrentChange(val) {
- console.log(`褰撳墠椤�: ${val}`)
this.currentPage = val
this.getRawMaterialList({pageNo: this.currentPage,pageSize:this.pageSize})
}
@@ -264,14 +478,15 @@
}
</script>
-<style scoped>
-
-.top-bar{
+<style scoped lang="scss">
+.content-main{
+ height: 100%;
+ .top-bar{
margin: -25px -15px;
background: #fff;
display: flex;
justify-content: space-between;
- padding: 5px 24px 0px 24px;
+ padding: 24px 24px 0px 24px;
.sermargin{
margin-right: 60px;
}
@@ -320,4 +535,30 @@
color: red;
}
+.newPage{
+ margin: -25px -15px;
+ .inspectionForm{
+ background-color:#fff;
+ .formwrapper{
+ margin-left: 80px;
+ padding:10px 0px;
+ }
+ }
+ .inspectionProject{
+ margin:10px 0px;
+ .header{
+ display:flex;
+ justify-content: space-between;
+ padding-top: -3px;
+ padding-bottom: 3px;
+ }
+ .el-table{
+ padding: 10px 10px;
+ height: 65vh;
+ overflow-y: auto;
+ }
+ }
+}
+}
+
</style>
--
Gitblit v1.9.3