| | |
| | | line-height: 1.5em; /* 行高 */ |
| | | height: 3.0em; /* 高度为行高的两倍 */ |
| | | } |
| | | .thermal-table{ |
| | | min-width: calc(100% - 10px); |
| | | margin: 5px 5px 0; |
| | | table-layout: fixed; |
| | | } |
| | | .thermal-table td { |
| | | min-width: 70px; |
| | | text-align: center; |
| | | font-size: 14px; |
| | | word-wrap: break-word; |
| | | white-space: normal; |
| | | padding: 5px; |
| | | } |
| | | </style> |
| | | |
| | | <template> |
| | |
| | | </el-col> |
| | | </el-row> |
| | | </div> |
| | | <div class="search" :style="`height: ${more?130:80}px;`"> |
| | | <div class="search" :style="`height: ${more?150:80}px;`"> |
| | | <el-row :gutter="10" style="width: 100%;"> |
| | | <el-col :span="20" style="display: flex;flex-wrap: wrap;"> |
| | | <div class="search_thing" style="width: 20%;"> |
| | |
| | | placeholder="选择日期"> |
| | | </el-date-picker> |
| | | </div> |
| | | </div> |
| | | <div class="search_thing" style="width: 20%;" v-if="more"> |
| | | <div class="search_label">约定时间:</div> |
| | | <div class="search_input"> |
| | | <el-date-picker style="width:100%" v-model="componentData.entity.appointed" |
| | | type="date" |
| | | size="small" |
| | | format="yyyy-MM-dd" |
| | | value-format="yyyy-MM-dd" |
| | | clearable |
| | | placeholder="选择日期"> |
| | | </el-date-picker> |
| | | </div> |
| | | </div> |
| | | <div class="search_thing" style="width: 20%;" v-if="more"> |
| | | <div class="search_label" style="width: 130px;">样机完成时间:</div> |
| | | <div class="search_input"> |
| | | <el-date-picker style="width:100%" v-model="componentData.entity.issueTime" |
| | | type="date" |
| | | size="small" |
| | | format="yyyy-MM-dd" |
| | | value-format="yyyy-MM-dd" |
| | | clearable |
| | | placeholder="选择日期"> |
| | | </el-date-picker> |
| | | </div> |
| | | </div> |
| | | <div class="search_thing" style="width: 20%;" v-if="more"> |
| | | <div class="search_label">电机编号:</div> |
| | | <div class="search_input"><el-input size="small" placeholder="请输入" clearable |
| | | v-model="componentData.entity.motorNumber" @keyup.enter.native="refreshTable()"></el-input></div> |
| | | </div> |
| | | <div class="search_thing" style="width: 20%;" v-if="more"> |
| | | <div class="search_label">下单人:</div> |
| | |
| | | <el-row style="margin-top: 1px;font-size: 14px;"> |
| | | <el-col style="font-weight: bold;"><span>样品名称: </span>{{ item.sample }}</el-col> |
| | | </el-row> |
| | | <el-row style="margin-top: 1px;font-size: 14px;"> |
| | | <el-col style="font-weight: bold;"><span>电机编号: </span>{{ item.motorNumber }}</el-col> |
| | | </el-row> |
| | | <el-row style="margin-top: 1px;font-size: 14px;" class="ellipsis-multiline"> |
| | | <el-col style="font-weight: bold;"><span>检测项目: </span>{{ item.item }}</el-col> |
| | | </el-row> |
| | |
| | | <el-row style="font-size: 0.20cm;"> |
| | | <el-col ><span>样品名称: </span>{{ item.sample }}</el-col> |
| | | </el-row> |
| | | <el-row style="font-size: 0.20cm;"> |
| | | <el-col ><span>电机编号: </span>{{ item.motorNumber }}</el-col> |
| | | </el-row> |
| | | <el-row style="font-size: 0.20cm;width: 4cm;"> |
| | | <el-col class="ellipsis-multiline"><span>检测项目: </span>{{ item.item }}</el-col> |
| | | </el-row> |
| | |
| | | </el-card> |
| | | </div> |
| | | </div> |
| | | <el-dialog title="样机编号" :visible.sync="BZDialogVisible" width="60%"> |
| | | <div class="body" style="max-height: 60vh;" v-if="BZDialogVisible"> |
| | | </div> |
| | | <table border="1" class="thermal-table" cellpadding="10"> |
| | | <tr> |
| | | <td>委托单号</td> |
| | | <td>样品</td> |
| | | <td>样品编号</td> |
| | | <td>样品型号</td> |
| | | <td>电机编号</td> |
| | | </tr> |
| | | <template v-for="(item,index) in BZinfo"> |
| | | <tr v-for="(m,i) in item.arr" :key="i"> |
| | | <td :rowspan="item.arr.length" v-if="i==0">{{item.name}}</td> |
| | | <td>{{ m.sample }}</td> |
| | | <td>{{ m.sampleCode }}</td> |
| | | <td>{{ m.model }}</td> |
| | | <td> |
| | | <el-input v-model="m.motorNumber" size="small"></el-input> |
| | | </td> |
| | | </tr> |
| | | </template> |
| | | </table> |
| | | <span slot="footer" class="dialog-footer"> |
| | | <el-row> |
| | | <el-button @click="BZDialogVisible=false">取 消</el-button> |
| | | <el-button type="primary" @click="submitForm3" :loading="upLoad">确 定</el-button> |
| | | </el-row> |
| | | </span> |
| | | </el-dialog> |
| | | </div> |
| | | </template> |
| | | |
| | |
| | | import Add from '../do/b1-ins-order/add.vue' |
| | | import vueQr from 'vue-qr' |
| | | import PrintJS from 'print-js' |
| | | import { Header } from 'iview'; |
| | | export default { |
| | | components: { |
| | | ValueTable, |
| | |
| | | name:null, |
| | | engineering:null, |
| | | production:null, |
| | | appointed:null, |
| | | issueTime:null, |
| | | motorNumber:null, |
| | | // orderBy: { |
| | | // field: '', |
| | | // order: '' |
| | |
| | | qrData:[], |
| | | multipleSelection:[], |
| | | sonLaboratoryList:[], |
| | | currentRole:'' |
| | | currentRole:'', |
| | | BZinfo:[], |
| | | BZDialogVisible:false, |
| | | } |
| | | }, |
| | | watch:{ |
| | |
| | | let res = await this.$axios.post(this.$api.insOrder.checkNumber,{ |
| | | ids:selection.map(m=>m.id).join(',') |
| | | }) |
| | | console.log(1111,res) |
| | | if(res.data){ |
| | | let arr = [] |
| | | for(let i in res.data){ |
| | | let obj = { |
| | | name:i, |
| | | arr:res.data[i], |
| | | motorNumber:null, |
| | | } |
| | | arr.push(obj) |
| | | } |
| | | this.BZinfo = arr |
| | | this.BZDialogVisible = true |
| | | return true |
| | | }else{ |
| | | return false |
| | | } |
| | | }, |
| | | submitForm3(){ |
| | | let arr = [] |
| | | let num = 0; |
| | | this.BZinfo.forEach(m=>{ |
| | | arr = arr.concat(m.arr) |
| | | }) |
| | | arr.forEach(m=>{ |
| | | if(!m.motorNumber){ |
| | | num++ |
| | | } |
| | | }) |
| | | if(num>0){ |
| | | return this.$message.warning("请输入电机编号") |
| | | } |
| | | this.upLoad = true |
| | | this.$axios.post(this.$api.insOrder.addNumber,{ |
| | | insSamples:arr.map(m=>{ |
| | | return { |
| | | id:m.id, |
| | | motorNumber:m.motorNumber |
| | | } |
| | | }) |
| | | },{ |
| | | header: { |
| | | 'Content-Type': 'application/json;charset=UTF-8', |
| | | }, |
| | | noQs:true |
| | | }).then(res => { |
| | | this.upLoad = false; |
| | | if(res.code == 200){ |
| | | this.BZDialogVisible = false |
| | | this.getLabelPrinting(this.multipleSelection) |
| | | this.printDialogVisible = true |
| | | this.refreshTable() |
| | | } |
| | | }) |
| | | }, |
| | | getLabelPrinting(selection){ |
| | | this.loadPint = true; |
| | |
| | | return |
| | | } |
| | | let selection = this.multipleSelection |
| | | await this.searchPrint(selection) |
| | | this.getLabelPrinting(selection) |
| | | this.printDialogVisible = true |
| | | let isAdd = await this.searchPrint(selection) |
| | | if(!isAdd){ |
| | | this.getLabelPrinting(selection) |
| | | this.printDialogVisible = true |
| | | } |
| | | }, |
| | | getAuthorizedPerson() { |
| | | this.$axios.get(this.$api.user.getUserMenu).then(res => { |