From e6d901a82c66b13bda0f76f3c1939a8e464e18fe Mon Sep 17 00:00:00 2001
From: value <z1292839451@163.com>
Date: 星期二, 05 九月 2023 11:28:25 +0800
Subject: [PATCH] bug修复
---
src/views/inspectionManagement/commissionInspection/index.vue | 341 ++++++++++++++++++++++++++++++++++++++++++--------------
1 files changed, 253 insertions(+), 88 deletions(-)
diff --git a/src/views/inspectionManagement/commissionInspection/index.vue b/src/views/inspectionManagement/commissionInspection/index.vue
index a07fdda..783bb85 100644
--- a/src/views/inspectionManagement/commissionInspection/index.vue
+++ b/src/views/inspectionManagement/commissionInspection/index.vue
@@ -53,32 +53,31 @@
</el-radio-group>
</div>
<div class="generateInsp">
- <el-button type="primary" size="mini" icon="el-icon-document"
+ <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 ref="commisionTable" :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="commisionTable" style="width: 100%">
- <el-table-column type="selection" min-width="10%" />
+ :data="commisionTable" @selection-change="handleSelectionChange" style="width: 100%">
+ <el-table-column type="selection" :selectable="checkSelect" min-width="10%" />
<el-table-column type="index" label="搴忓彿" min-width="10%" />
<el-table-column prop="entrust_coding" label="濮旀墭缂栧彿" min-width="10%" />
<el-table-column prop="entrusted" label="濮旀墭鍗曚綅" min-width="12%" />
- <el-table-column prop="samples_number" label="鏍峰搧缂栧彿" min-width="8%" />
+ <el-table-column prop="samples_number" label="鏍峰搧鏁伴噺" min-width="8%" />
<el-table-column prop="sample_name" label="鏍峰搧鍚嶇О" min-width="8%" />
- <el-table-column prop="specifications_models" label="瑙勬牸鍨嬪彿" min-width="12%" />
- <el-table-column prop="dateSurvey" label="閫佽揪鏃堕棿" min-width="8%" />
+ <el-table-column prop="speName" label="瑙勬牸鍨嬪彿" min-width="12%" />
+ <el-table-column prop="inspectionTime" label="閫佹牱鏃堕棿" min-width="8%" />
<el-table-column prop="completionDeadline" label="瀹屾垚鏈熼檺" min-width="8%" />
<el-table-column prop="contacts" label="濮旀墭缂栧埗浜�" min-width="8%" />
- <el-table-column prop="inspectionTime" label="妫�楠屾棩鏈�" min-width="8%" />
<el-table-column prop="inspection_status" label="鐘舵��" min-width="8%">
<template slot-scope="scope">
- <div v-if="scope.row.inspection_status === 1">
- <span style="color: green;">宸叉娴�</span>
+ <div v-if="scope.row.inspection_status === 0">
+ <span style="color: green;">宸叉姤妫�</span>
</div>
<div v-else>
- <span style="color: red;">寰呮娴�</span>
+ <span style="color: red;">鏈姤妫�</span>
</div>
</template>
</el-table-column>
@@ -126,6 +125,33 @@
</el-dialog>
<!-- 闅愯棌鍩熻緭鍏ユ鐢ㄦ潵澶嶅埗 -->
<input id="copyContext" style="position: absolute;top: 0;left: 0;opacity: 0;z-index: -10;" />
+ <el-dialog title="閫夋嫨鏃ユ湡" :visible.sync="addReportDialog" width="60%">
+ <el-form :model="addInspectionForm" :rules="addInspectionFormRules" ref="addInspectionForm">
+ <el-form-item label="妫�楠屾棩鏈�" label-width="100px" prop="inspectionDate">
+ <el-date-picker v-model="addInspectionForm.inspectionDate" type="daterange" value-format="yyyy-MM-dd"
+ range-separator="鑷�" start-placeholder="寮�濮嬫棩鏈�" end-placeholder="缁撴潫鏃ユ湡">
+ </el-date-picker>
+ </el-form-item>
+ <el-form-item label="褰撳墠鐗堟湰" label-width="100px" prop="version">
+ <el-select @change="changeVersionFun" v-model="addInspectionForm.version" placeholder="璇烽�夋嫨鐗堟湰">
+ <el-option v-for="item in chooseVersion" :key="item.value" :label="item.label" :value="item.value" ></el-option>
+ </el-select>
+ </el-form-item>
+ </el-form>
+ <el-table
+ style="width:90%;margin-left:5%" :data="standardLibraryData" row-key="id" border
+ default-expand-all :tree-props="{ children: 'children', hasChildren: 'hasChildren' }">
+ <el-table-column type="index" width="50px" label="搴忓彿"></el-table-column>
+ <el-table-column label="椤圭洰鍚嶇О" prop="name" sortable></el-table-column>
+ <el-table-column prop="unit" label="鍗曚綅" sortable></el-table-column>
+ <el-table-column label="鏍囧噯鍊�" prop="required" sortable></el-table-column>
+ <el-table-column prop="internal" label="鍐呮帶鍊�" sortable></el-table-column>
+ </el-table>
+ <div slot="footer" class="dialog-footer">
+ <el-button @click="resetForm('addInspectionForm')">鍙� 娑�</el-button>
+ <el-button type="primary" @click="confirmBtn('addInspectionForm')">纭� 瀹�</el-button>
+ </div>
+ </el-dialog>
</div>
</template>
@@ -133,11 +159,30 @@
import {
getCommisionList,
getViewUUID,
- selectViewUUID
+ selectViewUUID,
+ delLink,
+ chooseVersion,
+ lookProByVer,
+ addInspect
} from '@/api/inspection/commisioninspection'
export default {
data() {
return {
+ standardLibraryData:[],
+ chooseVersion: [],
+ addInspectionForm: {
+ inspectionDate: [],
+ version: null
+ },
+ addInspectionFormRules: {
+ inspectionDate: [{
+ required: true,
+ message: '璇烽�夋嫨鏃ユ湡鍖洪棿',
+ trigger: 'change'
+ }],
+ },
+ addReportDialog: false,
+ checkData: [],
form: [],
searchData: {
code: '',
@@ -148,7 +193,7 @@
value: '1',
label: '閮ㄩ棬1'
}],
- radioValue: 0,
+ radioValue: null,
commisionTable: [{
specifications_models: "GGXH-AAAAA",
inspectionTime: "2023-08-03",
@@ -164,15 +209,15 @@
}],
conditionsOptions: [{
label: '鍏ㄩ儴',
- value: 0
+ value: null
},
{
label: '宸叉楠�',
- value: 1
+ value: 0
},
{
label: '寰呮楠�',
- value: 2
+ value: 1
}
],
currentPage: 1,
@@ -191,11 +236,121 @@
},
updated() {
if (this.$router.currentRoute.name === 'AddCommision') {
- // console.log(this.$router.currentRoute.name)
this.showDetail = true
}
},
methods: {
+ resetForm(formName) {
+ this.addInspectionForm.inspectionDate = [],
+ this.$refs[formName].resetFields();
+ this.addReportDialog = false
+ },
+ checkSelect(row) {
+ if (row.type === 1) {
+ return false;
+ } else {
+ return true;
+ }
+ },
+ handleSelectionChange(val) {
+ if (val.length > 1) {
+ this.$refs.commisionTable.clearSelection();
+ this.$refs.commisionTable.toggleRowSelection(val.pop())
+ }
+ this.checkData = val;
+ console.log(this.checkData);
+ },
+ //鐢熸垚鎶ユ鍗曠‘璁ゆ寜閽�
+ confirmBtn(formName) {
+ this.$refs[formName].validate((valid)=>{
+ if(valid){
+ let dateArr = this.addInspectionForm.inspectionDate;
+ //娣诲姞鎶ユ鍗�
+ let val = this.checkData[0];
+ let obj = {
+ "endTime": dateArr[1],
+ "mcode":"mcode",
+ "formTime": val.inspectionTime,
+ "id": val.id,
+ "name": val.sample_name,
+ "num": val.samples_number,
+ "specifications": val.speName,
+ "startTime": dateArr[0],
+ "supplier": val.entrusted,
+ "type": 2,
+ // "unit": "mm",
+ "version": this.addInspectionForm.version
+ }
+ this.createReport(obj);
+ this.addReportDialog = false;
+ }
+ });
+ },
+ //鐢熸垚鎶ユ鍗曡姹�
+ async createReport(param) {
+ let res = await addInspect(param);
+ if(res.data==null)return
+ this.$message.success('鎶ユ鎴愬姛')
+ this.$router.push(`/experiment/Viewdetails/${res.data}`)
+ },
+ //鐢熸垚鎶ユ鍗曟寜閽�
+ addReportBtn() {
+ if (this.checkData.length < 1) {
+ this.$message.error("璇烽�夋嫨涓�鏉℃暟鎹�!");
+ } else {
+ if (this.checkData.length > 1) {
+ this.$message.error("鏈�澶氶�夋嫨涓�鏉℃暟鎹�!");
+ } else {
+ let mcode = this.checkData[0].entrust_coding;
+ let name = this.checkData[0].sample_name;
+ let specifications = this.checkData[0].speName;
+ let id = this.checkData[0].id;
+ this.getChooseVersionFun(mcode,name,specifications,id);
+ this.addReportDialog = true;
+ }
+ }
+ },
+ changeVersionFun(){
+ let mCode = this.checkData[0].entrust_coding;
+ let name = this.checkData[0].sample_name;
+ let specifications = this.checkData[0].speName;
+ let version = this.addInspectionForm.version;
+ let id = this.checkData[0].id;
+ this.getProByVersion(mCode,name,specifications,version,id);
+ },
+ //鑾峰彇鐗堟湰涓嬬殑鏍囧噯搴撴暟鎹�
+ async getProByVersion(mCode,name,specifications,version,id){
+ var vm = this;
+ await lookProByVer({
+ id : id,
+ mcode : mCode,
+ name : name,
+ specifications : specifications,
+ version: version
+ }).then((res)=>{
+ console.log(res);
+ vm.standardLibraryData = res.data;
+ })
+ },
+ //鑾峰彇鐗堟湰鍒楄〃
+ async getChooseVersionFun(mCode,name,specifications,id){
+ var vm = this;
+ this.chooseVersion = [];
+ await chooseVersion({
+ id : id,
+ name : name,
+ specifications : specifications
+ }).then((res)=>{
+ vm.getProByVersion(mCode,name,specifications,res.data[0],id);
+ for(let i=0;i<res.data.length;i++){
+ vm.chooseVersion.push({
+ value: res.data[i],
+ label: "V"+res.data[i]
+ });
+ }
+ vm.addInspectionForm.version = res.data[0];
+ });
+ },
async getCommisionList() {
const res = await getCommisionList({
pageNo: this.currentPage,
@@ -203,7 +358,6 @@
})
this.commisionTable = res.data.row
this.total = res.data.total
- // console.log(res)
// 鑾峰彇鎵�鏈夌殑濮旀墭鍗曚綅鍚嶇О
const allDepartmentNames = [...new Set(this.commisionTable.map(item => item.entrusted))]
// 灏哸llDepartmentNames杞崲涓簅ptions闇�瑕佺殑鏍煎紡
@@ -235,11 +389,9 @@
inspectionStatus: this.radioValue
})
}
- // console.log(res)
this.commisionTable = res.data.row
this.total = res.data.total
},
-
// 閲嶇疆鏂规硶
reset() {
// 閲嶇疆鎼滅储鏉′欢
@@ -252,24 +404,29 @@
},
async radioclick() {
// 澶勭悊鐐瑰嚮radio鐨勬椂闂�
- console.log('radioValue', this.radioValue)
if (this.radioValue === 0) {
- this.getCommisionList()
- } else {
const res = await getCommisionList({
pageNo: this.currentPage,
pageSize: this.pageSize,
inspectionStatus: this.radioValue
})
- // console.log(res)
this.commisionTable = res.data.row
this.total = res.data.total
+ } else if(this.radioValue === 1) {
+ const res = await getCommisionList({
+ pageNo: this.currentPage,
+ pageSize: this.pageSize,
+ inspectionStatus: this.radioValue
+ })
+ this.commisionTable = res.data.row
+ this.total = res.data.total
+ }else{
+ this.getCommisionList();
}
},
// 姣忛〉鏉℃暟鏀瑰彉鏃惰Е鍙� 閫夋嫨涓�椤垫樉绀哄灏戣
async handleSizeChange(val) {
- // console.log(`姣忛〉 ${val} 鏉)
this.currentPage = 1
this.pageSize = val
if (this.radioValue === 0) {
@@ -286,7 +443,6 @@
},
// 褰撳墠椤垫敼鍙樻椂瑙﹀彂 璺宠浆鍏朵粬椤�
async handleCurrentChange(val) {
- // console.log(`褰撳墠椤�: ${val}`)
this.currentPage = val
if (this.radioValue === 0) {
this.getCommisionList()
@@ -327,82 +483,91 @@
if (document.execCommand('copy')) {
this.$message.success('宸插鍒跺埌鍓创鏉�')
}
+ },
+ handleClick(row){
+ delLink({
+ id: row.id
+ }).then(res=>{
+ this.$message.success('鍒犻櫎鎴愬姛')
+ this.getCommisionList()
+ })
}
}
}
</script>
-<style scoped>
+<style scoped lang="scss">
.top-bar {
margin: -25px -15px;
background: #fff;
display: flex;
justify-content: space-between;
- padding: 5px 24px 0px 24px;
- }
+ padding: 24px 24px 0px 24px;
-.top-bar{
- margin: -25px -15px;
- background: #fff;
- display: flex;
- justify-content: space-between;
- padding: 5px 24px 0px 24px;
- .sermargin{
- margin-right: 60px;
- }
- .rightForm{
- display: flex;
- justify-content: space-between;
- /* background-color: #bfa; */
- height: 40px;
- line-height: 40px;
- >div{
- padding: 0px 10px;
- padding-bottom: 10px;
- border:1px solid rgb(8, 156, 230);
- margin-right: 10px;
- /* height: 40px;
+ .sermargin {
+ margin-right: 60px;
+ }
+
+ .rightForm {
+ display: flex;
+ justify-content: space-between;
+ /* background-color: #bfa; */
+ height: 40px;
+ line-height: 40px;
+
+ >div {
+ padding: 0px 10px;
+ padding-bottom: 10px;
+ border: 1px solid rgb(8, 156, 230);
+ margin-right: 10px;
+ /* height: 40px;
line-height: 40px; */
- }
- .rightBtn{
- background-color: rgb(1, 102, 226);
- }
- }
- }
+ }
-.library-table{
- background-color: #fff;
- flex: 1;
- margin: 0px -15px;
- margin-top: 40px;
- display: flex;
- flex-direction: column;
- .table-header{
- padding: 20px;
- display: flex;
- justify-content: space-between;
- .el-form-item{
- margin-bottom: 30px !important;
- }
- }
- .table-box{
- padding: 0px 20px;
- margin-top: 0px;
- flex: 1;
- background: #fff;
- /* padding: 20px 20px 10px 20px; */
- display: flex;
- flex-direction: column;
- .el-table {
- flex: 1;
- }
- >div:nth-child(2){
- display: flex;
- justify-content: end;
- margin: 10px 0;
- }
- }
- }
+ .rightBtn {
+ background-color: rgb(1, 102, 226);
+ }
+ }
+ }
+
+ .library-table {
+ background-color: #fff;
+ flex: 1;
+ margin: 0px -15px;
+ margin-top: 40px;
+ display: flex;
+ flex-direction: column;
+
+ .table-header {
+ padding: 20px;
+ display: flex;
+ justify-content: space-between;
+
+ .el-form-item {
+ margin-bottom: 30px !important;
+ }
+ }
+
+ .table-box {
+ padding: 0px 20px;
+ margin-top: 0px;
+ flex: 1;
+ background: #fff;
+ /* padding: 20px 20px 10px 20px; */
+ display: flex;
+ flex-direction: column;
+
+ .el-table {
+ flex: 1;
+ }
+
+ >div:nth-child(2) {
+ display: flex;
+ justify-content: end;
+ margin: 10px 0;
+ }
+ }
+ }
.rightBtn {
background-color: rgb(1, 102, 226);
--
Gitblit v1.9.3