6 changed files with 64 additions and 1310 deletions
@ -1,610 +0,0 @@ |
|||||
<template> |
|
||||
<div class="InventoryBookDetail_innerPage" v-loading="loading"> |
|
||||
<!-- 全部展示优化一半 --> |
|
||||
<!-- 搜索 --> |
|
||||
<el-form ref="searchForm" :inline="true" :rules="formRule" :model="searchForm" size="small" class="searchHeader"> |
|
||||
<el-form-item label="ERP储位" prop="erpLocatioCode"> |
|
||||
<el-input v-model="searchForm.erpLocatioCode" placeholder="请输入ERP储位"></el-input> |
|
||||
</el-form-item> |
|
||||
<el-form-item label="零件" prop="itemCode"> |
|
||||
<el-input v-model="searchForm.itemCode" placeholder="请输入零件"></el-input> |
|
||||
</el-form-item> |
|
||||
<el-form-item label="账期" prop="interfaceCalendar"> |
|
||||
<el-select |
|
||||
:loading="calendarLoading" |
|
||||
@change="calendarChange" |
|
||||
v-model="searchForm.interfaceCalendar" |
|
||||
placeholder="请选择账期" |
|
||||
> |
|
||||
<el-option |
|
||||
v-for="item in calendarList" |
|
||||
:key="item.id" |
|
||||
:label="item.name" |
|
||||
:value="item.id" |
|
||||
></el-option> |
|
||||
</el-select> |
|
||||
</el-form-item> |
|
||||
<el-form-item label="开始时间" prop="beginDate"> |
|
||||
<el-date-picker |
|
||||
@change="timeChange" |
|
||||
value-format="yyyy-MM-dd" |
|
||||
v-model="searchForm.beginDate" |
|
||||
type="date" |
|
||||
placeholder="选择日期"> |
|
||||
</el-date-picker> |
|
||||
</el-form-item> |
|
||||
<el-form-item label="结束时间" prop="endDate"> |
|
||||
<el-date-picker |
|
||||
@change="timeChange" |
|
||||
value-format="yyyy-MM-dd" |
|
||||
v-model="searchForm.endDate" |
|
||||
type="date" |
|
||||
placeholder="选择日期"> |
|
||||
</el-date-picker> |
|
||||
</el-form-item> |
|
||||
<el-form-item> |
|
||||
<el-button type="primary" @click="searchHandle">查询</el-button> |
|
||||
</el-form-item> |
|
||||
</el-form> |
|
||||
<!-- table --> |
|
||||
<div class="tableContent" v-if="tableData"> |
|
||||
<ul class="tableHeader"> |
|
||||
<li>{{tableHeader.companyName}}</li> |
|
||||
<li><span class="tableName">库存流水帐 (料品)</span></li> |
|
||||
<li class="timeLi"> |
|
||||
<div class="item">交易年月: {{ getYearMonth(tableHeader.beginDate) }} - {{ getYearMonth(tableHeader.endDate) }}</div> |
|
||||
<div class="item">制表日期:{{ getNow() }}</div> |
|
||||
</li> |
|
||||
</ul> |
|
||||
<!-- :span-method="verticalMergeCell" --> |
|
||||
<el-table |
|
||||
height="calc(100vh - 180px)" |
|
||||
:data="tableData" |
|
||||
class="tableEl" |
|
||||
:row-class-name="tableRowClass" |
|
||||
> |
|
||||
<!-- <el-table-column type="index" label="序号"></el-table-column> --> |
|
||||
<!-- :show-overflow-tooltip="true" --> |
|
||||
<el-table-column |
|
||||
v-for="(item,key) in tableTh" |
|
||||
:key="key" |
|
||||
:prop="item.prop" |
|
||||
:label="item.label" |
|
||||
:align="item.prop.toLowerCase().indexOf('qty') >= 0 ? 'right' : 'left'" |
|
||||
:width="item.width" |
|
||||
> |
|
||||
<template slot-scope="scope"> |
|
||||
<div v-if="scope.row.total_erp || scope.row.total_erp2 || scope.row.total_item"> |
|
||||
<div v-if="scope.row.total_erp2"> |
|
||||
<span v-if="totalProps[0] == item.prop" style="color: blue;font-weight:bold">库位小计:</span> |
|
||||
<span v-if="totalProps.indexOf(item.prop) >= 0">{{scope.row.total_erp2[item.prop]}}</span> |
|
||||
</div> |
|
||||
<div v-if="scope.row.total_erp"> |
|
||||
<span v-if="totalProps[0] == item.prop" style="color: #ff6000;font-weight:bold">储位小计:</span> |
|
||||
<span v-if="totalProps.indexOf(item.prop) >= 0">{{scope.row.total_erp[item.prop]}}</span> |
|
||||
</div> |
|
||||
<div v-if="scope.row.total_item"> |
|
||||
<span v-if="totalProps[0] == item.prop" style="color: #24b924;font-weight:bold">物料小计:</span> |
|
||||
<span v-if="totalProps.indexOf(item.prop) >= 0">{{scope.row.total_item[item.prop]}}</span> |
|
||||
</div> |
|
||||
</div> |
|
||||
<div v-else> |
|
||||
<div v-if="item.prop == 'itemCode'"> |
|
||||
<div>ERP料号:<br/>【{{ scope.row.level1[item.prop] }}】</div> |
|
||||
<br/> |
|
||||
<div>物料名称:<br/>【{{ scope.row.level1.itemName }}】</div> |
|
||||
<br/> |
|
||||
<div>物料描述1:<br/>【{{ scope.row.level1.itemDesc1 }}】</div> |
|
||||
<br/> |
|
||||
<div v-if="scope.row.level1.configuration">配置码:<br/>【{{ scope.row.level1.configuration }}】</div> |
|
||||
</div> |
|
||||
<div v-else-if="item.prop == 'erpLocatioCode'">{{ scope.row.level2[item.prop] }}</div> |
|
||||
<div v-else> |
|
||||
<div v-if="scope.row.level4"> |
|
||||
<div v-if="item.prop == 'sumInQty'">{{ scope.row.level4.inQty }}</div> |
|
||||
<div v-else-if="item.prop == 'sumOutQty'">{{ scope.row.level4.outQty }}</div> |
|
||||
<div v-else-if="item.prop == 'createDateTime'">{{ formatTime(scope.row.level4.createDateTime) }}</div> |
|
||||
<div v-else-if="item.prop == 'locationCode'">{{ scope.row.level4.locatioCode }}</div> |
|
||||
<div v-else-if="item.prop == 'interFaceName'">{{getInterFaceName(scope.row.level4)}}</div> |
|
||||
<div v-else-if="item.prop == 'enumTransType' || item.prop == 'enumTransSubType'">{{ scope.row.level4[item.prop] | trigger(item.option, "label") }}</div> |
|
||||
<div v-else>{{ scope.row.level4[item.prop] }}</div> |
|
||||
</div> |
|
||||
<div v-else>{{ scope.row.level3[item.prop] }}</div> |
|
||||
</div> |
|
||||
</div> |
|
||||
</template> |
|
||||
</el-table-column> |
|
||||
</el-table> |
|
||||
</div> |
|
||||
</div> |
|
||||
</template> |
|
||||
<script> |
|
||||
import { getInventoryTransactionSerials,getInterfaceCalendar } from '@/api/wms-api' |
|
||||
import { formatTimeStampToNorm,formatTimeStrToStr } from '@/utils/formatTime' |
|
||||
export default { |
|
||||
name:"InventoryBookDetail_innerPage", |
|
||||
data(){ |
|
||||
return{ |
|
||||
loading:false,//页面加载 |
|
||||
calendarLoading:false,//账期下拉加载 |
|
||||
tableData:null,//table数据 |
|
||||
calendarList:[],//账期下拉列表 |
|
||||
// 查询字段 |
|
||||
searchForm:{ |
|
||||
interfaceCalendar:null, |
|
||||
erpLocatioCode:null, |
|
||||
itemCode:null,//VW316C1A028A,UTT06PP5483 |
|
||||
beginDate: '',//2021-10-01 |
|
||||
endDate: '',//2023-11-28T23:59:59 |
|
||||
}, |
|
||||
// 查询必填项 |
|
||||
formRule: { |
|
||||
beginDate: [{ required: true, trigger: ['blur','change'], message: "不可为空" }], |
|
||||
endDate: [{ required: true, trigger: ['blur','change'], message: "不可为空" }], |
|
||||
// itemCode: [{ required: true, trigger: "blur", message: "不可为空" }], |
|
||||
}, |
|
||||
// table账单表头 |
|
||||
tableHeader:{ |
|
||||
beginDate: '', |
|
||||
endDate: '', |
|
||||
companyName:localStorage.getItem('companyName') |
|
||||
}, |
|
||||
// table标头 |
|
||||
tableTh:[ |
|
||||
{label:'物料信息',prop:'itemCode',width:180}, |
|
||||
{label:'ERP储位',prop:'erpLocatioCode',width:80}, |
|
||||
{label:'库位代码',prop:'locationCode',width:90}, |
|
||||
{label:'单号',prop:'number',width:170}, |
|
||||
{label:'创建时间',prop:'createDateTime',width:160}, |
|
||||
{label:'业务编号',prop:'docNumber',width:140}, |
|
||||
{label:'业务主类型',prop:'enumTransType',type:'filter',option:'TransTypeBase'}, |
|
||||
{label:'业务子类型',prop:'enumTransSubType',type:'filter',option:'transSubType'}, |
|
||||
{label:'对应接口',prop:'interFaceName',width:220}, |
|
||||
{label:'期初库存',prop:'firstQty'}, |
|
||||
{label:'入库',prop:'sumInQty'}, |
|
||||
{label:'出库',prop:'sumOutQty'}, |
|
||||
{label:'结存',prop:'nowQty'}, |
|
||||
{label:'期末库存',prop:'lastQty'}, |
|
||||
], |
|
||||
totalProps:['firstQty','lastQty','nowQty','sumInQty','sumOutQty'],// 小结显示的字段 |
|
||||
indexArray_item: [], //itemCode 存储所有合并的行号 |
|
||||
indexArray_erp: [], //erpLocatioCode 存储所有合并的行号 |
|
||||
indexArray_erp2: [], //locationCode 存储所有合并的行号 |
|
||||
} |
|
||||
}, |
|
||||
mounted () { |
|
||||
this.getInterfaceCalendarList() |
|
||||
}, |
|
||||
methods:{ |
|
||||
// 格式化时间 |
|
||||
formatTime(data){ |
|
||||
// return data.slice(0,scope.row.level4.createDateTime.indexOf('T') |
|
||||
return formatTimeStrToStr(data) |
|
||||
}, |
|
||||
// 获取账期下拉 |
|
||||
getInterfaceCalendarList(){ |
|
||||
this.calendarLoading = true |
|
||||
let _data = { |
|
||||
condition: { |
|
||||
filters: [] |
|
||||
}, |
|
||||
Sorting: "code DESC", |
|
||||
SkipCount: 0, |
|
||||
MaxResultCount: 1000 |
|
||||
} |
|
||||
getInterfaceCalendar(_data).then(res => { |
|
||||
this.calendarList=res.items |
|
||||
this.calendarLoading = false |
|
||||
}).catch(err => { |
|
||||
this.calendarLoading = false |
|
||||
}) |
|
||||
}, |
|
||||
// 账期更改 |
|
||||
calendarChange(id){ |
|
||||
let _item = this.calendarList.filter(item=>{ |
|
||||
return item.id == id |
|
||||
})[0] |
|
||||
this.searchForm.beginDate = _item.beginTime |
|
||||
this.searchForm.endDate = _item.endTime |
|
||||
}, |
|
||||
// 时间更改 |
|
||||
timeChange(data){ |
|
||||
if(data){ |
|
||||
this.searchForm.interfaceCalendar = "" |
|
||||
} |
|
||||
}, |
|
||||
// 查询事件 |
|
||||
searchHandle(){ |
|
||||
this.$refs.searchForm.validate((valid) => { |
|
||||
if (valid) { |
|
||||
this.getTableData() |
|
||||
} else { |
|
||||
return false; |
|
||||
} |
|
||||
}); |
|
||||
}, |
|
||||
// 年月转义 |
|
||||
getYearMonth(date){ |
|
||||
return date.replaceAll('-',"").slice(0,8) |
|
||||
}, |
|
||||
// 获取当前时间 |
|
||||
getNow(){ |
|
||||
return formatTimeStampToNorm(new Date(),'date') |
|
||||
}, |
|
||||
// 表格数据转义 |
|
||||
initTableData(res){ |
|
||||
let _list = [] |
|
||||
res.forEach(item1 => { |
|
||||
// item1.cellLength = 0 |
|
||||
item1.reportErpLocationSerialDtos.forEach((item2,index2) => { |
|
||||
item2.reportLocationSerialDtos.forEach((item3,index3)=>{ |
|
||||
// 如果有第四层 |
|
||||
if(item3.reportTransactionSerialDtos && item3.reportTransactionSerialDtos.length > 0){ |
|
||||
item3.reportTransactionSerialDtos.forEach((item4,index4)=>{ |
|
||||
let _item = { |
|
||||
level1:item1, |
|
||||
level2:item2, |
|
||||
level3:item3, |
|
||||
level4:item4, |
|
||||
} |
|
||||
_list.push(_item) |
|
||||
// item1.cellLength ++ |
|
||||
// 如果有第四层添加库位小计 |
|
||||
if(index4 == item3.reportTransactionSerialDtos.length - 1){ |
|
||||
_list.push({ |
|
||||
level1:item1, |
|
||||
level2:item2, |
|
||||
level3:item3, |
|
||||
level4:item4, |
|
||||
total_erp2:item3 |
|
||||
}) |
|
||||
// item1.cellLength ++ |
|
||||
} |
|
||||
}) |
|
||||
}else{ |
|
||||
let _item = { |
|
||||
level1:item1, |
|
||||
level2:item2, |
|
||||
level3:item3, |
|
||||
} |
|
||||
_list.push(_item) |
|
||||
item1.cellLength ++ |
|
||||
// 如果没有第四层添加库位小计 |
|
||||
// if(index3 == item2.reportLocationSerialDtos.length - 1){ |
|
||||
_list.push({ |
|
||||
level1:item1, |
|
||||
level2:item2, |
|
||||
level3:item3, |
|
||||
total_erp2:item3 |
|
||||
}) |
|
||||
item1.cellLength ++ |
|
||||
// } |
|
||||
} |
|
||||
// 添加储位小计 |
|
||||
if(index3 == item2.reportLocationSerialDtos.length - 1){ |
|
||||
_list.push({ |
|
||||
level1:item1, |
|
||||
level2:item2, |
|
||||
// level3:item3, |
|
||||
level3:{locationCode:null}, |
|
||||
total_erp:item2, |
|
||||
}) |
|
||||
// item1.cellLength ++ |
|
||||
} |
|
||||
}) |
|
||||
// 添加物料小计 |
|
||||
if(index2 == item1.reportErpLocationSerialDtos.length - 1){ |
|
||||
_list.push({ |
|
||||
level1:item1, |
|
||||
// level2:item2, |
|
||||
// level3:{locationCode:null}, |
|
||||
level2:{erpLocatioCode:null}, |
|
||||
level3:{locationCode:null},//此处为了合并单元格做模拟locationCode处理 |
|
||||
total_item:item1, |
|
||||
}) |
|
||||
// item1.cellLength ++ |
|
||||
} |
|
||||
}) |
|
||||
}); |
|
||||
return _list |
|
||||
}, |
|
||||
// 格式化结束时间(格式:T23:59:59) |
|
||||
initEndTime(data){ |
|
||||
let _time = "" |
|
||||
if(data.indexOf('T') >= 0){ |
|
||||
_time = data.slice(0,data.indexOf('T')) + 'T23:59:59' |
|
||||
}else{ |
|
||||
_time = data + 'T23:59:59' |
|
||||
} |
|
||||
return _time |
|
||||
}, |
|
||||
// 获取表格数据 |
|
||||
getTableData(){ |
|
||||
this.loading = true |
|
||||
let _itemCodes = this.searchForm.itemCode ? this.searchForm.itemCode.split(',') : [] |
|
||||
|
|
||||
getInventoryTransactionSerials( |
|
||||
`wms/inventory/inventory-transaction/item-serial-list?startDateTime=${this.searchForm.beginDate}&endDateTime=${this.initEndTime(this.searchForm.endDate)}&erpLocationCode=${this.searchForm.erpLocatioCode}`, |
|
||||
_itemCodes |
|
||||
).then(res => { |
|
||||
this.tableData = null |
|
||||
this.tableHeader.beginDate = this.searchForm.beginDate |
|
||||
this.tableHeader.endDate = this.searchForm.endDate |
|
||||
console.log(res) |
|
||||
this.$nextTick(() => { |
|
||||
this.tableData = this.initTableData(res) |
|
||||
// this.getIndexArr() |
|
||||
this.loading = false |
|
||||
}) |
|
||||
}).catch(err => { |
|
||||
this.loading = false |
|
||||
}) |
|
||||
}, |
|
||||
// 样式class |
|
||||
tableRowClass(data){ |
|
||||
if(data.row.total_erp2){ |
|
||||
return "totalRow" |
|
||||
} |
|
||||
if(data.row.total_erp){ |
|
||||
return "totalRow-red" |
|
||||
} |
|
||||
if(data.row.total_item){ |
|
||||
return "totalRow-green" |
|
||||
} |
|
||||
}, |
|
||||
// 获取合并单元格行 |
|
||||
getIndexArr(){ |
|
||||
// 合并 itemCode |
|
||||
let count_item = 0 |
|
||||
// console.log(357,this.tableData) |
|
||||
for (let rowIndex = 0; rowIndex < this.tableData.length; ) { |
|
||||
this.indexArray_item.push(rowIndex) |
|
||||
count_item = this.getRows(rowIndex, this.tableData[rowIndex].level1.itemCode,'itemCode','level1') |
|
||||
rowIndex += count_item |
|
||||
} |
|
||||
// console.log(362,this.indexArray_item) |
|
||||
|
|
||||
// // 合并 erpLocatioCode |
|
||||
// let count_erp = 0 |
|
||||
// for (let rowIndex = 0; rowIndex < this.tableData.length; ) { |
|
||||
// this.indexArray_erp.push(rowIndex) |
|
||||
// count_erp = this.getRows(rowIndex, this.tableData[rowIndex].level2.erpLocatioCode,'erpLocatioCode','level2') |
|
||||
// rowIndex += count_erp |
|
||||
// } |
|
||||
|
|
||||
// // 合并 locationCode |
|
||||
// let count_erp2 = 0 |
|
||||
// for (let rowIndex = 0; rowIndex < this.tableData.length; ) { |
|
||||
// this.indexArray_erp2.push(rowIndex) |
|
||||
// count_erp2 = this.getRows(rowIndex, this.tableData[rowIndex].level3.locationCode,'locationCode','level3') |
|
||||
// rowIndex += count_erp2 |
|
||||
// } |
|
||||
}, |
|
||||
// 获取合并单元格行数 |
|
||||
getRows(rowIndex, name,prop,level) { |
|
||||
let count = 0 |
|
||||
for (let i = rowIndex; i < this.tableData.length; i++) { |
|
||||
if (this.tableData[i][level][prop] == name) { |
|
||||
count++ |
|
||||
} else { |
|
||||
break |
|
||||
} |
|
||||
} |
|
||||
return count |
|
||||
}, |
|
||||
// 合并单元格 |
|
||||
verticalMergeCell({ row, column, rowIndex, columnIndex }) { |
|
||||
// 合并 itemCode |
|
||||
if (columnIndex == 0) { |
|
||||
let rowCount = 0 |
|
||||
if (this.indexArray_item.includes(rowIndex)) { |
|
||||
// console.log('length',rowIndex,this.tableData.length) |
|
||||
// rowCount = this.getRows(rowIndex, row.level1.itemCode, 'itemCode','level1') |
|
||||
rowCount = row.level1.cellLength |
|
||||
// console.log(390,rowCount) |
|
||||
return { |
|
||||
rowspan: rowCount, |
|
||||
colspan: 1 |
|
||||
} |
|
||||
} else { |
|
||||
return { |
|
||||
rowspan: 0, |
|
||||
colspan: 0 |
|
||||
} |
|
||||
} |
|
||||
} |
|
||||
// 合并 erpLocatioCode |
|
||||
// if (columnIndex == 1) { |
|
||||
// let rowCount = 0 |
|
||||
// if (this.indexArray_erp.includes(rowIndex)) { |
|
||||
// rowCount = this.getRows(rowIndex, this.tableData[rowIndex].level2.erpLocatioCode,'erpLocatioCode','level2') |
|
||||
// return { |
|
||||
// rowspan: rowCount, |
|
||||
// colspan: 1 |
|
||||
// } |
|
||||
// } else { |
|
||||
// return { |
|
||||
// rowspan: 0, |
|
||||
// colspan: 0 |
|
||||
// } |
|
||||
// } |
|
||||
// } |
|
||||
// // 合并 locationCode |
|
||||
// if (columnIndex == 2) { |
|
||||
// let rowCount = 0 |
|
||||
// if (this.indexArray_erp2.includes(rowIndex)) { |
|
||||
// rowCount = this.getRows(rowIndex, this.tableData[rowIndex].level3.locationCode,'locationCode','level3') |
|
||||
// return { |
|
||||
// rowspan: rowCount, |
|
||||
// colspan: 1 |
|
||||
// } |
|
||||
// } else { |
|
||||
// return { |
|
||||
// rowspan: 0, |
|
||||
// colspan: 0 |
|
||||
// } |
|
||||
// } |
|
||||
// } |
|
||||
}, |
|
||||
// 转义【对应接口】 |
|
||||
getInterFaceName(item){ |
|
||||
let _str = "" |
|
||||
if (item.enumTransType == 11) { |
|
||||
_str = '【TYRP】-【采购单】' |
|
||||
} else if (item.enumTransType == 12) { |
|
||||
_str = '【TYRP】-【采购退货单】*【EOS】-【退货单】' |
|
||||
} else if (item.enumTransType == 14 && item.enumTransSubType == 4401) { |
|
||||
_str = '【TYRP】-【验收单】*【EOS】-【验收单】' |
|
||||
} else if (item.enumTransType == 14 && item.enumTransSubType == 4401) { |
|
||||
_str = '【TYRP】-【储位、线边仓调拨单 和 客户储位调拨单】' |
|
||||
} else if (item.enumTransType == 15 && item.enumTransSubType == 1505) { |
|
||||
_str = '【TYRP】-【线边仓领料单】*【MES】-【发料单】' |
|
||||
} else if (item.enumTransType == 15 && item.enumTransSubType == 1501) { |
|
||||
_str = '【TYRP】-【线边仓领料单】*【MES】-【发料单】' |
|
||||
} else if (item.enumTransType == 16) { |
|
||||
_str = '【TYRP】-【线边仓退料单】' |
|
||||
} else if (item.enumTransType == 31 && item.enumTransSubType == 3102) { |
|
||||
_str = '【TYRP】-【储位、线边仓调拨单 和 客户储位调拨单】' |
|
||||
} else if (item.enumTransType == 31 && item.enumTransSubType == 3104) { |
|
||||
_str = '【TYRP】-【储位、线边仓调拨单 和 客户储位调拨单】' |
|
||||
} else if (item.enumTransType == 31 && item.enumTransSubType == 3105) { |
|
||||
_str = '【TYRP】-【储位、线边仓调拨单 和 客户储位调拨单】' |
|
||||
} else if (item.enumTransType == 21) { |
|
||||
_str = '【TYRP】-【缴库单】' |
|
||||
} else if (item.enumTransType == 23 && item.enumTransSubType == 2302) { |
|
||||
_str = '【TYRP】-【出货单】' |
|
||||
} else if (item.enumTransType == 23 && item.enumTransSubType == 2303) { |
|
||||
_str = '【TYRP】-【出货单】' |
|
||||
} else if (item.enumTransType == 23) { |
|
||||
_str = '【TYRP】-【非生产领料单】' |
|
||||
} else if (item.enumTransType == 33 && item.enumTransSubType == 0) { |
|
||||
_str = '【TYRP】-【非生产退料】' |
|
||||
} else if (item.enumTransType == 33 && item.enumTransSubType == 3301) { |
|
||||
_str = '【TYRP】-【回收料入库单】' |
|
||||
} else if (item.enumTransType == 22) { |
|
||||
_str = '【TYRP】-【退拆单】' |
|
||||
} else if (item.enumTransType == 37 && item.enumTransSubType == 0) { |
|
||||
_str = '【TYRP】-【盘点调整单】' |
|
||||
} else if (item.enumTransType == 37 && item.enumTransSubType == 3701) { |
|
||||
_str = '【TYRP】-【线边仓调整单】' |
|
||||
} else if (item.enumTransType == 38 && item.enumTransSubType == 3302) { |
|
||||
_str = '【TYRP】-【回收料调整单】' |
|
||||
} else if (item.enumTransType == 36) { |
|
||||
_str = '【TYRP】-【报废单、线边仓报废单】' |
|
||||
} else { |
|
||||
_str = '' |
|
||||
} |
|
||||
return _str |
|
||||
}, |
|
||||
} |
|
||||
} |
|
||||
</script> |
|
||||
<style lang="scss"> |
|
||||
.InventoryBookDetail_innerPage{ |
|
||||
background: #fff; |
|
||||
height: 100%; |
|
||||
|
|
||||
.searchHeader{ |
|
||||
background: #f1f1f1; |
|
||||
padding: 20px 30px 0; |
|
||||
border-bottom: 1px solid #dbdbdb; |
|
||||
|
|
||||
.el-form-item{ |
|
||||
margin-right: 25px !important; |
|
||||
} |
|
||||
.el-button{ |
|
||||
background: #205f78 !important; |
|
||||
border-color: #ddd; |
|
||||
border-radius: 2px; |
|
||||
} |
|
||||
|
|
||||
.el-form-item__label{ |
|
||||
font-weight: normal; |
|
||||
} |
|
||||
|
|
||||
.el-input__inner{ |
|
||||
border-radius: 0px !important; |
|
||||
background: #ddd !important; |
|
||||
} |
|
||||
|
|
||||
.el-input__inner:focus, |
|
||||
.el-input__inner:hover{ |
|
||||
border-color: #ddd; |
|
||||
} |
|
||||
} |
|
||||
|
|
||||
.tableHeader{ |
|
||||
list-style: none; |
|
||||
text-align: center; |
|
||||
height: 80px; |
|
||||
overflow: hidden; |
|
||||
margin: 10px 0; |
|
||||
|
|
||||
.tableName{ |
|
||||
letter-spacing: 10px; |
|
||||
border-bottom: #333 solid 1px; |
|
||||
padding: 0 15px; |
|
||||
font-size: 18px; |
|
||||
} |
|
||||
|
|
||||
.timeLi{ |
|
||||
display: flex; |
|
||||
justify-content: center; |
|
||||
|
|
||||
.item{ |
|
||||
margin: 0 10px; |
|
||||
} |
|
||||
} |
|
||||
} |
|
||||
|
|
||||
.tableEl{ |
|
||||
width: 100%; |
|
||||
margin: 0px auto; |
|
||||
// background: transparent !important; |
|
||||
|
|
||||
.el-table__cell{ |
|
||||
vertical-align: initial !important; |
|
||||
padding: 5px 0 !important; |
|
||||
background: transparent !important; |
|
||||
} |
|
||||
|
|
||||
tr{ |
|
||||
background: transparent !important; |
|
||||
border: none !important; |
|
||||
} |
|
||||
|
|
||||
th.el-table__cell{ |
|
||||
padding: 0 !important; |
|
||||
color: #000 !important; |
|
||||
border: none !important; |
|
||||
border-bottom: #333 solid 1px !important; |
|
||||
.cell{ |
|
||||
vertical-align: bottom !important; |
|
||||
} |
|
||||
} |
|
||||
|
|
||||
td{ |
|
||||
border: none !important; |
|
||||
color: #000 !important; |
|
||||
} |
|
||||
|
|
||||
.totalRow{ |
|
||||
td{ |
|
||||
border-top: blue dashed 1px !important; |
|
||||
} |
|
||||
} |
|
||||
|
|
||||
.totalRow-red{ |
|
||||
td{ |
|
||||
border-top: #ff6000 solid 1px !important; |
|
||||
} |
|
||||
} |
|
||||
.totalRow-green{ |
|
||||
td{ |
|
||||
border-top: #24b924 solid 1px !important; |
|
||||
} |
|
||||
} |
|
||||
} |
|
||||
} |
|
||||
|
|
||||
</style> |
|
@ -1,602 +0,0 @@ |
|||||
<template> |
|
||||
<div class="InventoryBookDetail_innerPage_old" v-loading="loading"> |
|
||||
<!-- 修改前 --> |
|
||||
<!-- 搜索 --> |
|
||||
<el-form ref="searchForm" :inline="true" :rules="formRule" :model="searchForm" size="small" class="searchHeader"> |
|
||||
<el-form-item label="ERP储位" prop="erpLocatioCode"> |
|
||||
<el-input v-model="searchForm.erpLocatioCode" placeholder="请输入ERP储位"></el-input> |
|
||||
</el-form-item> |
|
||||
<el-form-item label="零件" prop="itemCode"> |
|
||||
<el-input v-model="searchForm.itemCode" placeholder="请输入零件"></el-input> |
|
||||
</el-form-item> |
|
||||
<el-form-item label="账期" prop="interfaceCalendar"> |
|
||||
<el-select |
|
||||
:loading="calendarLoading" |
|
||||
@change="calendarChange" |
|
||||
v-model="searchForm.interfaceCalendar" |
|
||||
placeholder="请选择账期" |
|
||||
> |
|
||||
<el-option |
|
||||
v-for="item in calendarList" |
|
||||
:key="item.id" |
|
||||
:label="item.name" |
|
||||
:value="item.id" |
|
||||
></el-option> |
|
||||
</el-select> |
|
||||
</el-form-item> |
|
||||
<el-form-item label="开始时间" prop="beginDate"> |
|
||||
<el-date-picker |
|
||||
@change="timeChange" |
|
||||
value-format="yyyy-MM-dd" |
|
||||
v-model="searchForm.beginDate" |
|
||||
type="date" |
|
||||
placeholder="选择日期"> |
|
||||
</el-date-picker> |
|
||||
</el-form-item> |
|
||||
<el-form-item label="结束时间" prop="endDate"> |
|
||||
<el-date-picker |
|
||||
@change="timeChange" |
|
||||
value-format="yyyy-MM-dd" |
|
||||
v-model="searchForm.endDate" |
|
||||
type="date" |
|
||||
placeholder="选择日期"> |
|
||||
</el-date-picker> |
|
||||
</el-form-item> |
|
||||
<el-form-item> |
|
||||
<el-button type="primary" @click="searchHandle">查询</el-button> |
|
||||
</el-form-item> |
|
||||
</el-form> |
|
||||
<!-- table --> |
|
||||
<div class="tableContent" v-if="tableData"> |
|
||||
<ul class="tableHeader"> |
|
||||
<li>{{tableHeader.companyName}}</li> |
|
||||
<li><span class="tableName">库存流水帐 (料品)</span></li> |
|
||||
<li class="timeLi"> |
|
||||
<div class="item">交易年月: {{ getYearMonth(tableHeader.beginDate) }} - {{ getYearMonth(tableHeader.endDate) }}</div> |
|
||||
<div class="item">制表日期:{{ getNow() }}</div> |
|
||||
</li> |
|
||||
</ul> |
|
||||
<el-table |
|
||||
:data="tableData" |
|
||||
class="tableEl" |
|
||||
height="calc(100vh - 180px)" |
|
||||
:span-method="verticalMergeCell" |
|
||||
:row-class-name="tableRowClass" |
|
||||
> |
|
||||
<!-- <el-table-column type="index" label="序号"></el-table-column> --> |
|
||||
<el-table-column |
|
||||
v-for="(item,key) in tableTh" |
|
||||
:key="key" |
|
||||
:prop="item.prop" |
|
||||
:label="item.label" |
|
||||
:align="item.prop.toLowerCase().indexOf('qty') >= 0 ? 'right' : 'left'" |
|
||||
:width="item.width" |
|
||||
> |
|
||||
<template slot-scope="scope"> |
|
||||
<div v-if="scope.row.total_erp || scope.row.total_erp2 || scope.row.total_item"> |
|
||||
<div v-if="scope.row.total_erp2"> |
|
||||
<span v-if="totalProps[0] == item.prop" style="color: blue;font-weight:bold">库位小计:</span> |
|
||||
<span v-if="totalProps.indexOf(item.prop) >= 0">{{scope.row.total_erp2[item.prop]}}</span> |
|
||||
</div> |
|
||||
<div v-if="scope.row.total_erp"> |
|
||||
<span v-if="totalProps[0] == item.prop" style="color: #ff6000;font-weight:bold">储位小计:</span> |
|
||||
<span v-if="totalProps.indexOf(item.prop) >= 0">{{scope.row.total_erp[item.prop]}}</span> |
|
||||
</div> |
|
||||
<div v-if="scope.row.total_item"> |
|
||||
<span v-if="totalProps[0] == item.prop" style="color: #24b924;font-weight:bold">物料小计:</span> |
|
||||
<span v-if="totalProps.indexOf(item.prop) >= 0">{{scope.row.total_item[item.prop]}}</span> |
|
||||
</div> |
|
||||
</div> |
|
||||
<div v-else> |
|
||||
<div v-if="item.prop == 'itemCode'"> |
|
||||
<div>ERP料号:<br/>【{{ scope.row.level1[item.prop] }}】</div> |
|
||||
<br/> |
|
||||
<div>物料名称:<br/>【{{ scope.row.level1.itemName }}】</div> |
|
||||
<br/> |
|
||||
<div>物料描述1:<br/>【{{ scope.row.level1.itemDesc1 }}】</div> |
|
||||
<br/> |
|
||||
<div v-if="scope.row.level1.configuration">配置码:<br/>【{{ scope.row.level1.configuration }}】</div> |
|
||||
</div> |
|
||||
<div v-else-if="item.prop == 'erpLocatioCode'">{{ scope.row.level2[item.prop] }}</div> |
|
||||
<div v-else> |
|
||||
<div v-if="scope.row.level4"> |
|
||||
<div v-if="item.prop == 'sumInQty'">{{ scope.row.level4.inQty }}</div> |
|
||||
<div v-else-if="item.prop == 'sumOutQty'">{{ scope.row.level4.outQty }}</div> |
|
||||
<div v-else-if="item.prop == 'createDateTime'">{{ formatTime(scope.row.level4.createDateTime) }}</div> |
|
||||
<div v-else-if="item.prop == 'locationCode'">{{ scope.row.level4.locatioCode }}</div> |
|
||||
<div v-else-if="item.prop == 'interFaceName'">{{getInterFaceName(scope.row.level4)}}</div> |
|
||||
<div v-else-if="item.prop == 'enumTransType' || item.prop == 'enumTransSubType'">{{ scope.row.level4[item.prop] | trigger(item.option, "label") }}</div> |
|
||||
<div v-else>{{ scope.row.level4[item.prop] }}</div> |
|
||||
</div> |
|
||||
<div v-else>{{ scope.row.level3[item.prop] }}</div> |
|
||||
</div> |
|
||||
</div> |
|
||||
</template> |
|
||||
</el-table-column> |
|
||||
</el-table> |
|
||||
</div> |
|
||||
</div> |
|
||||
</template> |
|
||||
<script> |
|
||||
import { getInventoryTransactionSerials,getInterfaceCalendar } from '@/api/wms-api' |
|
||||
import { formatTimeStampToNorm,formatTimeStrToStr } from '@/utils/formatTime' |
|
||||
|
|
||||
export default { |
|
||||
name:"InventoryBookDetail_innerPage_old", |
|
||||
data(){ |
|
||||
return{ |
|
||||
loading:false,//页面加载 |
|
||||
calendarLoading:false,//账期下拉加载 |
|
||||
tableData:null,//table数据 |
|
||||
calendarList:[],//账期下拉列表 |
|
||||
// 查询字段 |
|
||||
searchForm:{ |
|
||||
interfaceCalendar:null, |
|
||||
erpLocatioCode:null, |
|
||||
itemCode:null,//VW316C1A028A,UTT06PP5483 |
|
||||
beginDate: '',//2021-10-01 |
|
||||
endDate: '',//2023-11-28T23:59:59 |
|
||||
}, |
|
||||
// 查询必填项 |
|
||||
formRule: { |
|
||||
beginDate: [{ required: true, trigger: ['blur','change'], message: "不可为空" }], |
|
||||
endDate: [{ required: true, trigger: ['blur','change'], message: "不可为空" }], |
|
||||
// itemCode: [{ required: true, trigger: "blur", message: "不可为空" }], |
|
||||
}, |
|
||||
// table账单表头 |
|
||||
tableHeader:{ |
|
||||
beginDate: '', |
|
||||
endDate: '', |
|
||||
companyName:localStorage.getItem('companyName') |
|
||||
}, |
|
||||
// table标头 |
|
||||
tableTh:[ |
|
||||
{label:'物料信息',prop:'itemCode',width:180}, |
|
||||
{label:'ERP储位',prop:'erpLocatioCode',width:80}, |
|
||||
{label:'库位代码',prop:'locationCode',width:90}, |
|
||||
{label:'单号',prop:'number',width:170}, |
|
||||
{label:'创建时间',prop:'createDateTime',width:160}, |
|
||||
{label:'业务编号',prop:'docNumber',width:140}, |
|
||||
{label:'业务主类型',prop:'enumTransType',type:'filter',option:'TransTypeBase'}, |
|
||||
{label:'业务子类型',prop:'enumTransSubType',type:'filter',option:'transSubType'}, |
|
||||
{label:'对应接口',prop:'interFaceName',width:220}, |
|
||||
{label:'期初库存',prop:'firstQty'}, |
|
||||
{label:'入库',prop:'sumInQty'}, |
|
||||
{label:'出库',prop:'sumOutQty'}, |
|
||||
{label:'结存',prop:'nowQty'}, |
|
||||
{label:'期末库存',prop:'lastQty'}, |
|
||||
], |
|
||||
totalProps:['firstQty','lastQty','nowQty','sumInQty','sumOutQty'],// 小结显示的字段 |
|
||||
indexArray_item: [], //itemCode 存储所有合并的行号 |
|
||||
indexArray_erp: [], //erpLocatioCode 存储所有合并的行号 |
|
||||
indexArray_erp2: [], //locationCode 存储所有合并的行号 |
|
||||
} |
|
||||
}, |
|
||||
mounted () { |
|
||||
this.getInterfaceCalendarList() |
|
||||
}, |
|
||||
methods:{ |
|
||||
// 格式化时间 |
|
||||
formatTime(data){ |
|
||||
// return data.slice(0,scope.row.level4.createDateTime.indexOf('T') |
|
||||
return formatTimeStrToStr(data) |
|
||||
}, |
|
||||
// 获取账期下拉 |
|
||||
getInterfaceCalendarList(){ |
|
||||
this.calendarLoading = true |
|
||||
let _data = { |
|
||||
condition: { |
|
||||
filters: [] |
|
||||
}, |
|
||||
Sorting: "code DESC", |
|
||||
SkipCount: 0, |
|
||||
MaxResultCount: 1000 |
|
||||
} |
|
||||
getInterfaceCalendar(_data).then(res => { |
|
||||
this.calendarList=res.items |
|
||||
this.calendarLoading = false |
|
||||
}).catch(err => { |
|
||||
this.calendarLoading = false |
|
||||
}) |
|
||||
}, |
|
||||
// 账期更改 |
|
||||
calendarChange(id){ |
|
||||
let _item = this.calendarList.filter(item=>{ |
|
||||
return item.id == id |
|
||||
})[0] |
|
||||
this.searchForm.beginDate = _item.beginTime |
|
||||
this.searchForm.endDate = _item.endTime |
|
||||
}, |
|
||||
// 时间更改 |
|
||||
timeChange(data){ |
|
||||
if(data){ |
|
||||
this.searchForm.interfaceCalendar = "" |
|
||||
} |
|
||||
}, |
|
||||
// 查询事件 |
|
||||
searchHandle(){ |
|
||||
this.$refs.searchForm.validate((valid) => { |
|
||||
if (valid) { |
|
||||
this.getTableData() |
|
||||
} else { |
|
||||
return false; |
|
||||
} |
|
||||
}); |
|
||||
}, |
|
||||
// 年月转义 |
|
||||
getYearMonth(date){ |
|
||||
return date.replaceAll('-',"").slice(0,8) |
|
||||
}, |
|
||||
// 获取当前时间 |
|
||||
getNow(){ |
|
||||
return formatTimeStampToNorm(new Date(),'date') |
|
||||
}, |
|
||||
// 表格数据转义 |
|
||||
initTableData(res){ |
|
||||
let _list = [] |
|
||||
res.forEach(item1 => { |
|
||||
item1.reportErpLocationSerialDtos.forEach((item2,index2) => { |
|
||||
item2.reportLocationSerialDtos.forEach((item3,index3)=>{ |
|
||||
// 如果有第四层 |
|
||||
if(item3.reportTransactionSerialDtos && item3.reportTransactionSerialDtos.length > 0){ |
|
||||
item3.reportTransactionSerialDtos.forEach((item4,index4)=>{ |
|
||||
let _item = { |
|
||||
level1:item1, |
|
||||
level2:item2, |
|
||||
level3:item3, |
|
||||
level4:item4, |
|
||||
} |
|
||||
_list.push(_item) |
|
||||
// 如果有第四层添加库位小计 |
|
||||
if(index4 == item3.reportTransactionSerialDtos.length - 1){ |
|
||||
_list.push({ |
|
||||
level1:item1, |
|
||||
level2:item2, |
|
||||
level3:item3, |
|
||||
level4:item4, |
|
||||
total_erp2:item3 |
|
||||
}) |
|
||||
} |
|
||||
}) |
|
||||
}else{ |
|
||||
let _item = { |
|
||||
level1:item1, |
|
||||
level2:item2, |
|
||||
level3:item3, |
|
||||
} |
|
||||
_list.push(_item) |
|
||||
// 如果没有第四层添加库位小计 |
|
||||
// if(index3 == item2.reportLocationSerialDtos.length - 1){ |
|
||||
_list.push({ |
|
||||
level1:item1, |
|
||||
level2:item2, |
|
||||
level3:item3, |
|
||||
total_erp2:item3 |
|
||||
}) |
|
||||
// } |
|
||||
} |
|
||||
// 添加储位小计 |
|
||||
if(index3 == item2.reportLocationSerialDtos.length - 1){ |
|
||||
_list.push({ |
|
||||
level1:item1, |
|
||||
level2:item2, |
|
||||
// level3:item3, |
|
||||
level3:{locationCode:null}, |
|
||||
total_erp:item2, |
|
||||
}) |
|
||||
} |
|
||||
}) |
|
||||
// 添加物料小计 |
|
||||
if(index2 == item1.reportErpLocationSerialDtos.length - 1){ |
|
||||
_list.push({ |
|
||||
level1:item1, |
|
||||
// level2:item2, |
|
||||
// level3:{locationCode:null}, |
|
||||
level2:{erpLocatioCode:null}, |
|
||||
level3:{locationCode:null},//此处为了合并单元格做模拟locationCode处理 |
|
||||
total_item:item1, |
|
||||
}) |
|
||||
} |
|
||||
}) |
|
||||
}); |
|
||||
return _list |
|
||||
}, |
|
||||
// 格式化结束时间(格式:T23:59:59) |
|
||||
initEndTime(data){ |
|
||||
let _time = "" |
|
||||
if(data.indexOf('T') >= 0){ |
|
||||
_time = data.slice(0,data.indexOf('T')) + 'T23:59:59' |
|
||||
}else{ |
|
||||
_time = data + 'T23:59:59' |
|
||||
} |
|
||||
return _time |
|
||||
}, |
|
||||
// 获取表格数据 |
|
||||
getTableData(){ |
|
||||
this.loading = true |
|
||||
let _itemCodes = this.searchForm.itemCode ? this.searchForm.itemCode.split(',') : [] |
|
||||
// getInventoryTransactionSerials( |
|
||||
// _itemCodes,{ |
|
||||
// startDateTime:this.searchForm.beginDate, |
|
||||
// endDateTime:this.initEndTime(this.searchForm.endDate), |
|
||||
// erpLocatioCode:this.searchForm.erpLocatioCode, |
|
||||
// }).then(res => { |
|
||||
getInventoryTransactionSerials( |
|
||||
`wms/inventory/inventory-transaction/item-serial-list?startDateTime=${this.searchForm.beginDate}&endDateTime=${this.initEndTime(this.searchForm.endDate)}&erpLocationCode=${this.searchForm.erpLocatioCode}`, |
|
||||
_itemCodes |
|
||||
).then(res => { |
|
||||
this.tableData = null |
|
||||
this.tableHeader.beginDate = this.searchForm.beginDate |
|
||||
this.tableHeader.endDate = this.searchForm.endDate |
|
||||
this.$nextTick(() => { |
|
||||
this.tableData = this.initTableData(res) |
|
||||
this.getIndexArr() |
|
||||
this.loading = false |
|
||||
}) |
|
||||
}).catch(err => { |
|
||||
this.loading = false |
|
||||
}) |
|
||||
}, |
|
||||
// 样式class |
|
||||
tableRowClass(data){ |
|
||||
if(data.row.total_erp2){ |
|
||||
return "totalRow" |
|
||||
} |
|
||||
if(data.row.total_erp){ |
|
||||
return "totalRow-red" |
|
||||
} |
|
||||
if(data.row.total_item){ |
|
||||
return "totalRow-green" |
|
||||
} |
|
||||
}, |
|
||||
// 获取合并单元格行 |
|
||||
getIndexArr(){ |
|
||||
// 合并 itemCode |
|
||||
let count_item = 0 |
|
||||
for (let rowIndex = 0; rowIndex < this.tableData.length; ) { |
|
||||
this.indexArray_item.push(rowIndex) |
|
||||
count_item = this.getRows(rowIndex, this.tableData[rowIndex].level1.itemCode,'itemCode','level1') |
|
||||
rowIndex += count_item |
|
||||
} |
|
||||
|
|
||||
// 合并 erpLocatioCode |
|
||||
let count_erp = 0 |
|
||||
for (let rowIndex = 0; rowIndex < this.tableData.length; ) { |
|
||||
this.indexArray_erp.push(rowIndex) |
|
||||
count_erp = this.getRows(rowIndex, this.tableData[rowIndex].level2.erpLocatioCode,'erpLocatioCode','level2') |
|
||||
rowIndex += count_erp |
|
||||
} |
|
||||
|
|
||||
// 合并 locationCode |
|
||||
let count_erp2 = 0 |
|
||||
for (let rowIndex = 0; rowIndex < this.tableData.length; ) { |
|
||||
this.indexArray_erp2.push(rowIndex) |
|
||||
count_erp2 = this.getRows(rowIndex, this.tableData[rowIndex].level3.locationCode,'locationCode','level3') |
|
||||
rowIndex += count_erp2 |
|
||||
} |
|
||||
}, |
|
||||
// 获取合并单元格行数 |
|
||||
getRows(rowIndex, name,prop,level) { |
|
||||
let count = 0 |
|
||||
for (let i = rowIndex; i < this.tableData.length; i++) { |
|
||||
if (this.tableData[i][level][prop] == name) { |
|
||||
count++ |
|
||||
} else { |
|
||||
break |
|
||||
} |
|
||||
} |
|
||||
return count |
|
||||
}, |
|
||||
// 合并单元格 |
|
||||
verticalMergeCell({ row, column, rowIndex, columnIndex }) { |
|
||||
// 合并 itemCode |
|
||||
if (columnIndex == 0) { |
|
||||
let rowCount = 0 |
|
||||
if (this.indexArray_item.includes(rowIndex)) { |
|
||||
rowCount = this.getRows(rowIndex, row.level1.itemCode, 'itemCode','level1') |
|
||||
return { |
|
||||
rowspan: rowCount, |
|
||||
colspan: 1 |
|
||||
} |
|
||||
} else { |
|
||||
return { |
|
||||
rowspan: 0, |
|
||||
colspan: 0 |
|
||||
} |
|
||||
} |
|
||||
} |
|
||||
// 合并 erpLocatioCode |
|
||||
if (columnIndex == 1) { |
|
||||
let rowCount = 0 |
|
||||
if (this.indexArray_erp.includes(rowIndex)) { |
|
||||
rowCount = this.getRows(rowIndex, this.tableData[rowIndex].level2.erpLocatioCode,'erpLocatioCode','level2') |
|
||||
return { |
|
||||
rowspan: rowCount, |
|
||||
colspan: 1 |
|
||||
} |
|
||||
} else { |
|
||||
return { |
|
||||
rowspan: 0, |
|
||||
colspan: 0 |
|
||||
} |
|
||||
} |
|
||||
} |
|
||||
// 合并 locationCode |
|
||||
if (columnIndex == 2) { |
|
||||
let rowCount = 0 |
|
||||
if (this.indexArray_erp2.includes(rowIndex)) { |
|
||||
rowCount = this.getRows(rowIndex, this.tableData[rowIndex].level3.locationCode,'locationCode','level3') |
|
||||
return { |
|
||||
rowspan: rowCount, |
|
||||
colspan: 1 |
|
||||
} |
|
||||
} else { |
|
||||
return { |
|
||||
rowspan: 0, |
|
||||
colspan: 0 |
|
||||
} |
|
||||
} |
|
||||
} |
|
||||
}, |
|
||||
// 转义【对应接口】 |
|
||||
getInterFaceName(item){ |
|
||||
let _str = "" |
|
||||
if (item.enumTransType == 11) { |
|
||||
_str = '【TYRP】-【采购单】' |
|
||||
} else if (item.enumTransType == 12) { |
|
||||
_str = '【TYRP】-【采购退货单】*【EOS】-【退货单】' |
|
||||
} else if (item.enumTransType == 14 && item.enumTransSubType == 4401) { |
|
||||
_str = '【TYRP】-【验收单】*【EOS】-【验收单】' |
|
||||
} else if (item.enumTransType == 14 && item.enumTransSubType == 4401) { |
|
||||
_str = '【TYRP】-【储位、线边仓调拨单 和 客户储位调拨单】' |
|
||||
} else if (item.enumTransType == 15 && item.enumTransSubType == 1505) { |
|
||||
_str = '【TYRP】-【线边仓领料单】*【MES】-【发料单】' |
|
||||
} else if (item.enumTransType == 15 && item.enumTransSubType == 1501) { |
|
||||
_str = '【TYRP】-【线边仓领料单】*【MES】-【发料单】' |
|
||||
} else if (item.enumTransType == 16) { |
|
||||
_str = '【TYRP】-【线边仓退料单】' |
|
||||
} else if (item.enumTransType == 31 && item.enumTransSubType == 3102) { |
|
||||
_str = '【TYRP】-【储位、线边仓调拨单 和 客户储位调拨单】' |
|
||||
} else if (item.enumTransType == 31 && item.enumTransSubType == 3104) { |
|
||||
_str = '【TYRP】-【储位、线边仓调拨单 和 客户储位调拨单】' |
|
||||
} else if (item.enumTransType == 31 && item.enumTransSubType == 3105) { |
|
||||
_str = '【TYRP】-【储位、线边仓调拨单 和 客户储位调拨单】' |
|
||||
} else if (item.enumTransType == 21) { |
|
||||
_str = '【TYRP】-【缴库单】' |
|
||||
} else if (item.enumTransType == 23 && item.enumTransSubType == 2302) { |
|
||||
_str = '【TYRP】-【出货单】' |
|
||||
} else if (item.enumTransType == 23 && item.enumTransSubType == 2303) { |
|
||||
_str = '【TYRP】-【出货单】' |
|
||||
} else if (item.enumTransType == 23) { |
|
||||
_str = '【TYRP】-【非生产领料单】' |
|
||||
} else if (item.enumTransType == 33 && item.enumTransSubType == 0) { |
|
||||
_str = '【TYRP】-【非生产退料】' |
|
||||
} else if (item.enumTransType == 33 && item.enumTransSubType == 3301) { |
|
||||
_str = '【TYRP】-【回收料入库单】' |
|
||||
} else if (item.enumTransType == 22) { |
|
||||
_str = '【TYRP】-【退拆单】' |
|
||||
} else if (item.enumTransType == 37 && item.enumTransSubType == 0) { |
|
||||
_str = '【TYRP】-【盘点调整单】' |
|
||||
} else if (item.enumTransType == 37 && item.enumTransSubType == 3701) { |
|
||||
_str = '【TYRP】-【线边仓调整单】' |
|
||||
} else if (item.enumTransType == 38 && item.enumTransSubType == 3302) { |
|
||||
_str = '【TYRP】-【回收料调整单】' |
|
||||
} else if (item.enumTransType == 36) { |
|
||||
_str = '【TYRP】-【报废单、线边仓报废单】' |
|
||||
} else { |
|
||||
_str = '' |
|
||||
} |
|
||||
return _str |
|
||||
}, |
|
||||
} |
|
||||
} |
|
||||
</script> |
|
||||
<style lang="scss"> |
|
||||
.InventoryBookDetail_innerPage_old{ |
|
||||
background: #fff; |
|
||||
height: 100%; |
|
||||
|
|
||||
.searchHeader{ |
|
||||
background: #f1f1f1; |
|
||||
padding: 20px 30px 0; |
|
||||
border-bottom: 1px solid #dbdbdb; |
|
||||
|
|
||||
.el-form-item{ |
|
||||
margin-right: 25px !important; |
|
||||
} |
|
||||
.el-button{ |
|
||||
background: #205f78 !important; |
|
||||
border-color: #ddd; |
|
||||
border-radius: 2px; |
|
||||
} |
|
||||
|
|
||||
.el-form-item__label{ |
|
||||
font-weight: normal; |
|
||||
} |
|
||||
|
|
||||
.el-input__inner{ |
|
||||
border-radius: 0px !important; |
|
||||
background: #ddd !important; |
|
||||
} |
|
||||
|
|
||||
.el-input__inner:focus, |
|
||||
.el-input__inner:hover{ |
|
||||
border-color: #ddd; |
|
||||
} |
|
||||
} |
|
||||
|
|
||||
.tableHeader{ |
|
||||
list-style: none; |
|
||||
text-align: center; |
|
||||
height: 80px; |
|
||||
overflow: hidden; |
|
||||
margin: 10px 0; |
|
||||
|
|
||||
.tableName{ |
|
||||
letter-spacing: 10px; |
|
||||
border-bottom: #333 solid 1px; |
|
||||
padding: 0 15px; |
|
||||
font-size: 18px; |
|
||||
} |
|
||||
|
|
||||
.timeLi{ |
|
||||
display: flex; |
|
||||
justify-content: center; |
|
||||
|
|
||||
.item{ |
|
||||
margin: 0 10px; |
|
||||
} |
|
||||
} |
|
||||
} |
|
||||
|
|
||||
.tableEl{ |
|
||||
width: 100%; |
|
||||
margin: 0px auto; |
|
||||
// background: transparent !important; |
|
||||
|
|
||||
.el-table__cell{ |
|
||||
vertical-align: initial !important; |
|
||||
padding: 5px 0 !important; |
|
||||
background: transparent !important; |
|
||||
} |
|
||||
|
|
||||
tr{ |
|
||||
background: transparent !important; |
|
||||
border: none !important; |
|
||||
} |
|
||||
|
|
||||
th.el-table__cell{ |
|
||||
padding: 0 !important; |
|
||||
color: #000 !important; |
|
||||
border: none !important; |
|
||||
border-bottom: #333 solid 1px !important; |
|
||||
.cell{ |
|
||||
vertical-align: bottom !important; |
|
||||
} |
|
||||
} |
|
||||
|
|
||||
td{ |
|
||||
border: none !important; |
|
||||
color: #000 !important; |
|
||||
} |
|
||||
|
|
||||
.totalRow{ |
|
||||
td{ |
|
||||
border-top: blue dashed 1px !important; |
|
||||
} |
|
||||
} |
|
||||
|
|
||||
.totalRow-red{ |
|
||||
td{ |
|
||||
border-top: #ff6000 solid 1px !important; |
|
||||
} |
|
||||
} |
|
||||
.totalRow-green{ |
|
||||
td{ |
|
||||
border-top: #24b924 solid 1px !important; |
|
||||
} |
|
||||
} |
|
||||
} |
|
||||
} |
|
||||
|
|
||||
</style> |
|
Loading…
Reference in new issue