| | |
| | | :append-to-body="true" |
| | | :modal="!dialogVisible0" |
| | | > |
| | | <span>请选择委托编号为 <span style="color: #3A7BFA">{{currentInfo.entrustCode}}</span> 要生成的数据</span> |
| | | <span style="font-size: 16px;">请选择委托编号为 <span style="color: #3A7BFA">{{currentInfo.entrustCode}}</span> 要生成的数据</span> |
| | | <div style="max-height: 75vh;overflow-y: auto;"> |
| | | <el-card class="box-card" style="margin-top: 16px;" v-for="(item,index) in historyList" :key="index"> |
| | | <div slot="header" style="display: flex;justify-content: space-between;"> |
| | | <span>{{ item.laboratory }}</span> |
| | | </div> |
| | | <el-table |
| | | :data="item.insOrderUserList" |
| | | border |
| | | style="width: 100%" @selection-change="list=>handleSelectionChange(list,item.insOrderUserList)"> |
| | | <el-table-column |
| | | type="selection" |
| | | width="55"> |
| | | </el-table-column> |
| | | <el-table-column |
| | | prop="submitTime" |
| | | label="提交日期" |
| | | min-width="150"> |
| | | </el-table-column> |
| | | <el-table-column |
| | | prop="submitUserName" |
| | | label="提交人" |
| | | min-width="90"> |
| | | </el-table-column> |
| | | <el-table-column |
| | | prop="term" |
| | | label="实验阶段" |
| | | min-width="120"> |
| | | </el-table-column> |
| | | <el-table-column |
| | | prop="note" |
| | | label="实验操作" |
| | | min-width="120"> |
| | | </el-table-column> |
| | | <el-table-column |
| | | prop="tell" |
| | | label="再次检验原因" |
| | | min-width="120"> |
| | | </el-table-column> |
| | | <el-table-column |
| | | fixed="right" |
| | | label="操作" |
| | | min-width="100"> |
| | | <template slot-scope="scope"> |
| | | <el-button @click="lookDetail(item,scope.row.num)" type="text" size="small">查看</el-button> |
| | | </template> |
| | | </el-table-column> |
| | | </el-table> |
| | | </el-card> |
| | | <template v-for="(a,b) in sampleList"> |
| | | <el-divider></el-divider> |
| | | <p style="margin: 10px 0;font-weight: 700;">样品:<el-tag size="small">{{a.insSample.sample}}</el-tag> 样品编号:{{a.insSample.sampleCode}}</p> |
| | | <el-card class="box-card" style="margin-top: 16px;" v-for="(item,index) in a.historyList" :key="index"> |
| | | <div slot="header" style="display: flex;justify-content: space-between;"> |
| | | <span>{{ item.laboratory }}</span> |
| | | </div> |
| | | <el-table |
| | | :data="item.insOrderUserList" |
| | | border |
| | | style="width: 100%" @selection-change="list=>handleSelectionChange(list,item.insOrderUserList)"> |
| | | <el-table-column |
| | | type="selection" |
| | | width="55"> |
| | | </el-table-column> |
| | | <el-table-column |
| | | prop="submitTime" |
| | | label="提交日期" |
| | | min-width="150"> |
| | | </el-table-column> |
| | | <el-table-column |
| | | prop="submitUserName" |
| | | label="提交人" |
| | | min-width="90"> |
| | | </el-table-column> |
| | | <el-table-column |
| | | prop="term" |
| | | label="实验阶段" |
| | | min-width="120"> |
| | | </el-table-column> |
| | | <el-table-column |
| | | prop="note" |
| | | label="实验操作" |
| | | min-width="120"> |
| | | </el-table-column> |
| | | <el-table-column |
| | | prop="tell" |
| | | label="再次检验原因" |
| | | min-width="120"> |
| | | </el-table-column> |
| | | <el-table-column |
| | | fixed="right" |
| | | label="操作" |
| | | min-width="100"> |
| | | <template slot-scope="scope"> |
| | | <el-button @click="lookDetail(item,scope.row.num,a.insSample)" type="text" size="small">查看</el-button> |
| | | </template> |
| | | </el-table-column> |
| | | </el-table> |
| | | </el-card> |
| | | <p v-if="a.historyList.length==0" style="text-align: center;">暂无可生成的数据</p> |
| | | </template> |
| | | </div> |
| | | <span slot="footer" class="dialog-footer"> |
| | | <el-button :loading="loading0" @click="handleNoCreate">不生成</el-button> |
| | |
| | | :visible.sync="dialogVisible0" |
| | | width="100%" :fullscreen="true" :modal="false" :append-to-body="true"> |
| | | <Inspection v-if="dialogVisible0" |
| | | :orderId="currentInfo.id" |
| | | :orderId="sampleId" |
| | | :orderId0="orderId0" |
| | | :userInfo="{}" |
| | | :inspectorList="currentItem.inspectorList" |
| | | :sonLaboratory="currentItem.laboratory" |
| | | :state="2" |
| | |
| | | sampleModel: null, |
| | | sampleCode: null, |
| | | outEntrustCode: null, |
| | | state: 1, |
| | | state: 4, |
| | | name:null, |
| | | engineering:null, |
| | | production:null, |
| | |
| | | currentItem:{}, |
| | | loading0:false, |
| | | loading1:false, |
| | | dialogVisible0:false |
| | | dialogVisible0:false, |
| | | sampleList:[], |
| | | sampleId:null, |
| | | orderId0:null, |
| | | } |
| | | }, |
| | | mounted() { |
| | |
| | | handleCreateReport(row){ |
| | | this.currentInfo = row |
| | | this.$axios.get(this.$api.insReport.getInsOrderStateCount+'?id='+row.id).then(res => { |
| | | this.historyList = res.data |
| | | this.historyList.forEach(item => { |
| | | item.arr = [] |
| | | this.$set(item,'numValue',1) |
| | | // item.checked = false; |
| | | if(item.num>0){ |
| | | for(var i=0;i<item.num;i++){ |
| | | item.arr.push({ |
| | | label:'记录'+(i+1), |
| | | value:i+1 |
| | | }) |
| | | this.sampleList = res.data |
| | | this.sampleList.forEach(a=>{ |
| | | a.historyList = a.insOrderStates |
| | | a.historyList.forEach(item => { |
| | | item.arr = [] |
| | | this.$set(item,'numValue',1) |
| | | if(item.num>0){ |
| | | for(var i=0;i<item.num;i++){ |
| | | item.arr.push({ |
| | | label:'记录'+(i+1), |
| | | value:i+1 |
| | | }) |
| | | } |
| | | } |
| | | } |
| | | }) |
| | | }) |
| | | // this.historyList = res.data |
| | | // this.historyList.forEach(item => { |
| | | // item.arr = [] |
| | | // this.$set(item,'numValue',1) |
| | | // // item.checked = false; |
| | | // if(item.num>0){ |
| | | // for(var i=0;i<item.num;i++){ |
| | | // item.arr.push({ |
| | | // label:'记录'+(i+1), |
| | | // value:i+1 |
| | | // }) |
| | | // } |
| | | // } |
| | | // }) |
| | | this.dialogVisible = true |
| | | }) |
| | | }, |
| | | // 生成报告 |
| | | handleCreate(){ |
| | | let arr = [] |
| | | this.historyList.forEach(item => { |
| | | item.insOrderUserList.forEach(item1 => { |
| | | if(item1.state==1){ |
| | | arr.push({ |
| | | laboratory:item.laboratory, |
| | | num:item1.num, |
| | | insOrderUsersId:item1.id |
| | | }) |
| | | } |
| | | let insReportDto1s = [] |
| | | let num = 0; |
| | | this.sampleList.forEach(a => { |
| | | let insReportDto2s = [] |
| | | a.historyList.forEach(item => { |
| | | item.insOrderUserList.forEach(item1 => { |
| | | if(item1.state==1){ |
| | | let obj0 = { |
| | | laboratory:item.laboratory, |
| | | num:item1.num, |
| | | insOrderUsersId:item1.id |
| | | } |
| | | insReportDto2s.push(obj0) |
| | | num++ |
| | | } |
| | | }) |
| | | }) |
| | | let obj0 = { |
| | | sampleId:a.insSample.id, |
| | | insReportDto2s:insReportDto2s |
| | | } |
| | | insReportDto1s.push(obj0) |
| | | }) |
| | | if(arr.length==0){ |
| | | if(num==0){ |
| | | this.$message.error("请先选择需要生成的记录!") |
| | | return |
| | | } |
| | |
| | | this.$axios.post(this.$api.insReport.isReport, { |
| | | id:this.currentInfo.id, |
| | | state:1, |
| | | insReportDto1s:arr |
| | | insReportDto1s:insReportDto1s |
| | | },{ |
| | | headers: { |
| | | 'Content-Type': 'application/json' |
| | |
| | | }) |
| | | }, |
| | | // 查看检验详情 |
| | | lookDetail(row,value){ |
| | | lookDetail(row,value,insSample){ |
| | | this.dialogVisible0 = true |
| | | let inspectorList = [] |
| | | if(row.userName){ |
| | | inspectorList = row.userName.split(',') |
| | | } |
| | | this.sampleId = insSample.id |
| | | this.orderId0 = insSample.insOrderId |
| | | this.currentItem = { |
| | | num1:value, |
| | | inspectorList:inspectorList, |