|
|
@ -37,21 +37,24 @@ |
|
|
|
<div v-if="checkDateLine.length !== 0" class="time-update-cont"> |
|
|
|
<span class="time-left-txt">最后更新时间:</span> |
|
|
|
<!-- <el-button class="time-btn-txt">{{ checkDateLine[2].endTime }}</el-button> --> |
|
|
|
<el-button>{{ checkDateLine[0].stockType === 0 ? '现在' : checkDateLine[0].endTime }}</el-button> |
|
|
|
<el-button>{{ checkDateLine[timeIndex].stockType === 0 ? '现在' : checkDateLine[timeIndex].endTime }}</el-button> |
|
|
|
<div class="time-update-line"> |
|
|
|
<el-timeline> |
|
|
|
<el-timeline-item |
|
|
|
v-for="(activity, index) in checkDateLine" |
|
|
|
:key="index" |
|
|
|
:icon="activity.icon" |
|
|
|
:type="activity.type" |
|
|
|
:color="activity.color" |
|
|
|
:size="activity.size" |
|
|
|
:timestamp="activity.endTime" |
|
|
|
> |
|
|
|
{{ computedStockType(activity.stockType) }} |
|
|
|
</el-timeline-item> |
|
|
|
</el-timeline> |
|
|
|
<ul class="el-timeline"> |
|
|
|
<li v-for="(activity, index) in checkDateLine" :key="index" class="el-timeline-item" @click="handleHistory(activity,index)"> |
|
|
|
<div class="el-timeline-item__tail" /> |
|
|
|
<div class="el-timeline-item__node el-timeline-item__node--normal" :style="index === timeIndex ? 'background-color: rgb(11, 189, 135);' : ''"> |
|
|
|
<i v-if="index === timeIndex" class="el-timeline-item__icon el-icon-more" /> |
|
|
|
</div> |
|
|
|
<div class="el-timeline-item__wrapper"> |
|
|
|
<div class="el-timeline-item__content"> |
|
|
|
{{ computedStockType(activity.stockType) }} |
|
|
|
</div> |
|
|
|
<div class="el-timeline-item__timestamp is-bottom"> |
|
|
|
{{ activity.endTime }} |
|
|
|
</div> |
|
|
|
</div> |
|
|
|
</li> |
|
|
|
</ul> |
|
|
|
</div> |
|
|
|
</div> |
|
|
|
<crudOperation :permission="permission"> |
|
|
@ -216,12 +219,13 @@ |
|
|
|
</div> |
|
|
|
</el-dialog> |
|
|
|
<eForm ref="eform" /> |
|
|
|
<exportForm ref="exportform" /> |
|
|
|
<exportForm ref="exportform" export-type="grid" /> |
|
|
|
</div> |
|
|
|
</template> |
|
|
|
|
|
|
|
<script> |
|
|
|
import { FetchInitStockInfo, FetchInitBookDetailsByGrids, FetchBillByShelfIdAndGridShelf, FetchIsGoodcutByBillNoAndGridId } from '@/api/stockTask/index' |
|
|
|
// FetchShowByBillIdAndShelfIdAndGridShelf |
|
|
|
import { FetchInitStockInfo, FetchInitBookDetailsByGrids, FetchBillByShelfIdAndGridShelf, FetchIsGoodcutByBillNoAndGridId, FetchShowByBillIdAndShelfIdAndGridShelf } from '@/api/stockTask/index' |
|
|
|
import { dataScreeningCrud } from '@/views/visualCheck/mixins/index' |
|
|
|
import { FetchBookShelfDetails, FetchShelfGridByShelfIdAndGridShelf } from '@/api/shelf/index' |
|
|
|
import crudRegion from '@/api/area/index' |
|
|
@ -291,7 +295,8 @@ export default { |
|
|
|
shelfAllGridDataLoading: false, |
|
|
|
billNoImg: null, |
|
|
|
bookImgData: [], |
|
|
|
bigImg: '' |
|
|
|
bigImg: '', |
|
|
|
timeIndex: 0 |
|
|
|
} |
|
|
|
}, |
|
|
|
computed: { |
|
|
@ -493,6 +498,11 @@ export default { |
|
|
|
doExport(type) { |
|
|
|
this.$refs.exportform.formExportVisible = true |
|
|
|
this.$refs.exportform.type = 3 |
|
|
|
this.$refs.exportform.params = { |
|
|
|
// 'floorId': this.floorId, |
|
|
|
// 'regionId': this.regionId, |
|
|
|
'shelfId': this.bookShelfDetails.id |
|
|
|
} |
|
|
|
}, |
|
|
|
handleCellCurrent(item, index) { |
|
|
|
this.cellIndex = index |
|
|
@ -630,6 +640,27 @@ export default { |
|
|
|
this.shelfAllGridDataLoading = false |
|
|
|
}).catch(() => { |
|
|
|
}) |
|
|
|
}, |
|
|
|
handleHistory(item, index) { |
|
|
|
this.timeIndex = index |
|
|
|
console.log('item', item) |
|
|
|
const params = { |
|
|
|
'gridShelf': '0' + this.layerVal, |
|
|
|
'ShelfId': this.bookShelfDetails.id, |
|
|
|
'toward': this.bookShelfDetails.toward, |
|
|
|
'billId': item.stockBill |
|
|
|
} |
|
|
|
FetchShowByBillIdAndShelfIdAndGridShelf(params).then(res => { |
|
|
|
console.log('res', res) |
|
|
|
// this.shelfAllGridData = [] |
|
|
|
// this.shelfAllGridData = res |
|
|
|
// this.getInitStockInfo(this.shelfAllGridData) |
|
|
|
|
|
|
|
// this.getInitBookDetailsByGrids(this.shelfAllGridData) |
|
|
|
|
|
|
|
// this.shelfAllGridDataLoading = false |
|
|
|
}).catch(() => { |
|
|
|
}) |
|
|
|
} |
|
|
|
} |
|
|
|
} |
|
|
@ -928,4 +959,55 @@ export default { |
|
|
|
font-style: normal; |
|
|
|
} |
|
|
|
} |
|
|
|
|
|
|
|
.el-timeline { |
|
|
|
margin: 0; |
|
|
|
font-size: 14px; |
|
|
|
list-style: none; |
|
|
|
} |
|
|
|
.el-timeline-item { |
|
|
|
position: relative; |
|
|
|
padding-bottom: 20px; |
|
|
|
} |
|
|
|
.el-timeline-item__tail { |
|
|
|
position: absolute; |
|
|
|
left: 4px; |
|
|
|
height: 100%; |
|
|
|
border-left: 2px solid #dfe4ed; |
|
|
|
} |
|
|
|
.el-timeline-item__node { |
|
|
|
position: absolute; |
|
|
|
background-color: #dfe4ed; |
|
|
|
border-radius: 50%; |
|
|
|
display: -webkit-box; |
|
|
|
display: -ms-flexbox; |
|
|
|
display: flex; |
|
|
|
-webkit-box-pack: center; |
|
|
|
-ms-flex-pack: center; |
|
|
|
justify-content: center; |
|
|
|
-webkit-box-align: center; |
|
|
|
-ms-flex-align: center; |
|
|
|
align-items: center; |
|
|
|
} |
|
|
|
.el-timeline-item__icon { |
|
|
|
color: #fff; |
|
|
|
font-size: 13px; |
|
|
|
} |
|
|
|
.el-timeline-item__wrapper { |
|
|
|
position: relative; |
|
|
|
padding-left: 28px; |
|
|
|
top: -3px; |
|
|
|
} |
|
|
|
.el-timeline-item__content { |
|
|
|
color: #303133; |
|
|
|
} |
|
|
|
.el-timeline-item__timestamp { |
|
|
|
color: #909399; |
|
|
|
line-height: 1; |
|
|
|
font-size: 13px; |
|
|
|
} |
|
|
|
.el-timeline-item__timestamp.is-bottom { |
|
|
|
margin-top: 8px; |
|
|
|
} |
|
|
|
|
|
|
|
</style> |