| <template> | 
|   <GlobalWindow | 
|     :title="title" | 
|     width="900px" | 
|     :visible.sync="visible" | 
|     :confirm-working="isWorking" | 
|     @confirm="confirm" | 
|   > | 
|     <div class="massage-style"> | 
|       <el-form :model="form" ref="form" label-width="120px" label-suffix=":" inline> | 
|         <div class="property-title">{{type == 1 ? '入库信息' : '出库信息'}}</div> | 
|         <el-form-item :label="type == 1 ? '入库单号' : '出库单号'" class="count-style" > | 
|           {{ form.code }} | 
|         </el-form-item> | 
|         <el-form-item :label="type == 1 ? '入库仓库' : '出库仓库'" class="count-style"> | 
|           <span style="max-width: 130px;" class="long-title-style" :title="form.warehouseCode + '|' + form.warehouseName">{{ form.warehouseCode + '|' + form.warehouseName }}</span> | 
|         </el-form-item> | 
|         <el-form-item label="单据状态" class="count-style"> | 
|           {{ statusToStr(form.status) }} | 
|         </el-form-item> | 
|         <el-form-item label="单据类型" class="count-style"> | 
|           {{ billToStr(form.billType) }} | 
|         </el-form-item> | 
|         <el-form-item :label="type == 1 ? '计划入库日期' : '计划出库日期'" class="count-style"> | 
|           {{ form.planDate }} | 
|         </el-form-item> | 
|          | 
|         <!-- <el-form-item :label="type == 1 ? '申请工序' : '申领工序'" class="count-style"> | 
|           - | 
|         </el-form-item> --> | 
|         <el-form-item :label="type == 1 ? '申请人员' : '申领人员'" class="count-style"> | 
|           <span style="width: 140px;" class="long-title-style" :title="applyStr(form)">{{ applyStr(form) }}</span> | 
|         </el-form-item> | 
|         <el-form-item label="创建时间" class="count-style"> | 
|           {{ form.createTime }} | 
|         </el-form-item> | 
|         <el-form-item label="单据摘要" class="count-style"> | 
|           <span style="width: 140px;" class="long-title-style" :title="form.abstracts">{{ form.abstracts || '-' }}</span> | 
|         </el-form-item> | 
|         <div v-if="form.status == 2"> | 
|           <el-form-item label="取消原因" class="count-style"> | 
|             <span style="width: 140px;" class="long-title-style" :title="form.cancelInfo">{{ form.cancelInfo  || '-'}}</span> | 
|           </el-form-item> | 
|           <el-form-item label="操作人" class="count-style"> | 
|             {{ form.updateName + '-' + form.updateMobile }} | 
|           </el-form-item> | 
|           <el-form-item label="操作时间" class="count-style"> | 
|             {{ form.updateTime }} | 
|           </el-form-item> | 
|         </div> | 
|       </el-form> | 
|     </div> | 
|     <div style="height:10px; background:0xf7f7f7"></div> | 
|     <div v-if="didArray&&didArray.length"> | 
|       <div style="margin:10px"> | 
|         <div class="property-title" style="margin-bottom:10px">{{type == 1 ? '待入库物料' : '待出库物料'}}</div> | 
|         <el-table | 
|           :data="didArray" | 
|           border | 
|           stripe | 
|         > | 
|           <el-table-column align="center" label="序号" fixed="left" type="index" /> | 
|           <el-table-column prop="materialName" align="center" label="物料名称" min-width="100px"></el-table-column> | 
|           <el-table-column prop="materialCode" align="center" label="物料编码" min-width="160px"></el-table-column> | 
|           <el-table-column prop="batch" align="center" label="批次号" min-width="100px"> | 
|             <template slot-scope="{row}"> | 
|               <span >{{ row.batch || '-' }}</span> | 
|             </template> | 
|           </el-table-column> | 
|           <el-table-column align="center" prop="procedureName" label="工序" min-width="100px"> | 
|             <template slot-scope="{row}"> | 
|               <span >{{ row.procedureName || '-' }}</span> | 
|             </template> | 
|           </el-table-column> | 
|           <el-table-column align="center" label="质量属性" min-width="100px"> | 
|             <template slot-scope="{row}"> | 
|               <span v-if="row.qualityType==0" class="valid-style">合格</span> | 
|               <span v-else-if="row.qualityType==1" class="unvalid-style">不良</span> | 
|               <span v-else-if="row.qualityType==2" class="scrap-style">报废</span> | 
|               <span v-else>-</span> | 
|             </template> | 
|           </el-table-column> | 
|           <el-table-column v-if="type==0" prop="locationName" align="center" label="货位" min-width="100px"></el-table-column> | 
|           <!-- <el-table-column prop="unitName" align="center" label="单位" min-width="100px"></el-table-column> --> | 
|           <el-table-column prop="num" :label="type == 1 ? '待入库数量' : '待出库数量'" align="center" min-width="100px"> | 
|             <template slot-scope="{row}"> | 
|               {{ row.num + row.unitName }} | 
|             </template> | 
|           </el-table-column> | 
|         </el-table> | 
|       </div> | 
|     </div> | 
|     <div v-if="notArray&¬Array.length"> | 
|       <div style="margin:10px"> | 
|         <div class="property-title" style="margin-bottom:10px">{{type == 1 ? '已入库物料' : '已出库物料'}}</div> | 
|         <el-table | 
|           :data="notArray" | 
|           border | 
|           stripe | 
|         > | 
|           <el-table-column align="center" label="序号" fixed="left" type="index" /> | 
|           <el-table-column prop="materialName" align="center" label="物料名称" min-width="100px"></el-table-column> | 
|           <el-table-column prop="materialCode" align="center" label="物料编码" min-width="160px"></el-table-column> | 
|           <el-table-column prop="batch" align="center" label="批次号" min-width="100px"></el-table-column> | 
|           <el-table-column align="center" prop="procedureName" label="工序" min-width="100px"> | 
|             <template slot-scope="{row}"> | 
|               <span >{{ row.procedureName || '-' }}</span> | 
|             </template> | 
|           </el-table-column> | 
|           <el-table-column align="center" prop="procedureName" label="货位" show-overflow-tooltip min-width="130px"> | 
|             <template slot-scope="{row}"> | 
|               <span class="long-title-type">{{ row.locationName || '-' }}</span> | 
|             </template> | 
|           </el-table-column> | 
|           <el-table-column align="center" label="质量属性" min-width="100px"> | 
|             <template slot-scope="{row}"> | 
|               <span v-if="row.qualityType==0" class="valid-style">合格</span> | 
|               <span v-else-if="row.qualityType==1" class="unvalid-style">不良</span> | 
|               <span v-else-if="row.qualityType==2" class="scrap-style">报废</span> | 
|               <span v-else>-</span> | 
|             </template> | 
|           </el-table-column> | 
|           <!-- <el-table-column prop="unitName" align="center" label="单位" min-width="100px"></el-table-column> --> | 
|           <el-table-column prop="num" :label="type == 1 ? '已入库数量' : '已出库数量'" align="center" min-width="100px"> | 
|             <template slot-scope="{row}"> | 
|               {{ row.doneNum + row.unitName }} | 
|             </template> | 
|           </el-table-column> | 
|         </el-table> | 
|       </div> | 
|     </div> | 
|     <div slot="footer" class="window__header"> | 
|       <el-button type="primary" @click="cancel">返回</el-button> | 
|     </div> | 
|   </GlobalWindow> | 
| </template> | 
|   | 
| <script> | 
| import BaseOpera from '@/components/base/BaseOpera' | 
| import GlobalWindow from '@/components/common/GlobalWindow' | 
| export default { | 
|   name: 'OperaWboundDetailExtWindow', | 
|   extends: BaseOpera, | 
|   components: { GlobalWindow }, | 
|   data () { | 
|     return { | 
|       // 表单数据 | 
|       form: { | 
|         abstracts: null, | 
|         code: null, | 
|         warehouseCode: null, | 
|         warehouseName: null, | 
|         planDate: null, | 
|         userName: null, | 
|         userDepartName: null, | 
|         createTime: null, | 
|         cancelInfo: null, | 
|         updateName: null, | 
|         updateMobile: null, | 
|         updateTime: null, | 
|         billType: null, | 
|         status: 0 | 
|       }, | 
|       didArray: [], | 
|       notArray: [], | 
|       type: 0, // 0出库 1入库 | 
|       billType: [ | 
|         { name: '车间领料', id: 1 }, | 
|         { name: '计划领料', id: 2 }, | 
|         { name: '机台备料', id: 3 }, | 
|         { name: '完工入库', id: 4 }, | 
|         { name: '车间转库', id: 5 }, | 
|         { name: '外协领料转库', id: 6 }, | 
|         { name: '外协完工转库', id: 7 }, | 
|         { name: '产品入库', id: 8 }, | 
|         { name: '产品转库', id: 9 }, | 
|         { name: '让步放行入库', id: 10 }, | 
|         { name: '让步放行转库', id: 11 }, | 
|         { name: '客返返修领料', id: 12 }, | 
|         { name: '客返返修入库', id: 13 }, | 
|         { name: '跨组织转库', id: 14 }, | 
|         { name: '工序报废', id: 15 }, | 
|         { name: '客退返修领料', id: 16 }, | 
|         { name: '客退返修入库', id: 17 }, | 
|         { name: '销售出库', id: 18 }, | 
|         { name: '让步销售', id: 19 }, | 
|         { name: '工单投料', id: 20 }, | 
|         { name: '仓库报废', id: 21 }, | 
|         { name: '客退检验领料', id: 22 }, | 
|         { name: '客返检验领料', id: 23 }, | 
|         { name: '工单产出', id: 24 }, | 
|         { name: '采购入库', id: 25 }, | 
|         { name: '客退检验入库', id: 26 }, | 
|         { name: '客返检验入库', id: 27 }, | 
|         { name: '库存调整', id: 28 }, | 
|         { name: '废品入库', id: 30 }, | 
|       ], | 
|     } | 
|   }, | 
|   created () { | 
|     this.config({ | 
|       api: '/ext/materialExt', | 
|       'field.id': 'id' | 
|     }) | 
|   }, | 
|   methods: { | 
|     open (title, target, type) { | 
|       // console.log(title, target, type) | 
|       this.title = title | 
|       this.type = type | 
|       this.visible = true | 
|       this.notArray = target.woutboundDetailsOut | 
|       this.didArray = target.woutboundDetailsWait | 
|       // console.log(this.didArray) | 
|       // 编辑 | 
|       // console.log('target', target) | 
|       this.$nextTick(() => { | 
|         for (const key in this.form) { | 
|           this.form[key] = target[key] | 
|         } | 
|         // console.log('this.form', this.form) | 
|       }) | 
|     }, | 
|     statusToStr (status) { | 
|       switch (status) { | 
|       case 0: | 
|         return this.type === 1 ? '未入库' : '未出库' | 
|       case 1: | 
|         return this.type === 1 ? '已入库' : '已出库' | 
|       case 2: | 
|         return '已取消' | 
|       default: | 
|         return '' | 
|       } | 
|     }, | 
|     cancel () { | 
|       this.$refs.form.resetFields() | 
|       this.visible = false | 
|       // let that = this | 
|     }, | 
|     applyStr (row) { | 
|       return `${row.userName}/${row.userDepartName}` | 
|     }, | 
|     billToStr (type) { | 
|       // console.log('billToStr', type) | 
|       for (const item of this.billType) { | 
|         if (item.id === type) return item.name | 
|       } | 
|       return '-' | 
|     } | 
|   } | 
| } | 
| </script> | 
|   | 
| <style lang="scss" scoped> | 
| .count-style { | 
|   display: inline-block; | 
|   width: 30%; | 
|   height: 30px; | 
| } | 
| .massage-style { | 
|   .el-form-item { | 
|     margin-bottom: 0px !important; | 
|   } | 
| } | 
|   | 
| </style> |