Commit adcdc662 authored by Damon's avatar Damon

Merge branch 'dev' of https://git.banshouhui.com/lijundan/self-support into dev

parents 33b41120 53744f01
...@@ -184,6 +184,11 @@ let orderApiFun = function(vm){ ...@@ -184,6 +184,11 @@ let orderApiFun = function(vm){
let fileList = async (params = {}) => await vm.$u.get(prefix + 'config/' + vm.vuex_token + '/finish/file', params); let fileList = async (params = {}) => await vm.$u.get(prefix + 'config/' + vm.vuex_token + '/finish/file', params);
// 订单配件列表 // 订单配件列表
let applyList = async (params = {}) => await vm.$u.get(prefix + 'parts/' + vm.vuex_token + '/orders', params); let applyList = async (params = {}) => await vm.$u.get(prefix + 'parts/' + vm.vuex_token + '/orders', params);
// 返件列表
let returnedParts = async (params = {}) => await vm.$u.get(prefix + 'parts/' + vm.vuex_token + '/return', params);
// 备件仓列表
let reserveList = async (params = {}) => await vm.$u.get(prefix + 'parts/' + vm.vuex_token + '/items/reserve', params);
const orderApi = { const orderApi = {
listByRecommendOrder, listByRecommendOrder,
listOrderCount, listOrderCount,
...@@ -228,7 +233,9 @@ let orderApiFun = function(vm){ ...@@ -228,7 +233,9 @@ let orderApiFun = function(vm){
fileLabel, fileLabel,
fileList, fileList,
completeNextStep, completeNextStep,
applyList applyList,
returnedParts,
reserveList
} }
return orderApi return orderApi
} }
......
...@@ -133,12 +133,12 @@ ...@@ -133,12 +133,12 @@
flex-direction: column; flex-direction: column;
width: 100%; width: 100%;
&.image { &.image {
margin-right: 40rpx; margin-right: 22rpx;
} }
&.text { &.text {
width: 400rpx; width: 360rpx;
margin-left: 40rpx; margin-left: 18rpx;
&.one { &.one {
width: 600rpx; width: 600rpx;
margin-left: 0rpx; margin-left: 0rpx;
......
This diff is collapsed.
...@@ -58,9 +58,9 @@ export default { ...@@ -58,9 +58,9 @@ export default {
toAddSite(title){ toAddSite(title){
this.$u.route({ this.$u.route({
url: 'pages/mine/address/addSite', url: 'pages/mine/address/addSite',
params: { // params: {
title: title // title: title
} // }
}) })
} }
} }
......
...@@ -18,16 +18,16 @@ ...@@ -18,16 +18,16 @@
</view> </view>
<view class="u-tabs-box"> <view class="u-tabs-box">
<u-tabs height="66" activeColor="#2272FF" bg-color="none" inactive-color="#999" bar-height="4" <u-tabs height="66" activeColor="#2272FF" bg-color="none" inactive-color="#999" bar-height="4"
bar-width="44" :offset="[0,0]" :list="list[curNow]" count="total" :current="current[curNow]" @change="change" bar-width="44" :offset="[0,0]" :list="list[curNow]" count="total" :current="current[curNow]"
:is-scroll="false" font-size="28" bold></u-tabs> @change="change" :is-scroll="false" font-size="28" bold></u-tabs>
</view> </view>
<view class="tab-view"> <view class="tab-view">
<scroll-view scroll-y style="height: 100%;width: 100%;" @scrolltolower="reachBottom" scroll-anchoring <scroll-view scroll-y style="height: 100%;width: 100%;" @scrolltolower="reachBottom" scroll-anchoring
refresher-enabled="true" :refresher-triggered="triggered" :refresher-threshold="100" refresher-enabled="true" :refresher-triggered="triggered" :refresher-threshold="100"
:scroll-top="scrollTop" refresher-background="#F4F5F7" @refresherpulling="triggered = true" :scroll-top="scrollTop" refresher-background="#F4F5F7" @refresherpulling="triggered = true"
@refresherrefresh="onRefresh" @refresherrestore="onRestore" @scroll="scroll" enable-back-to-top> @refresherrefresh="onRefresh" @refresherrestore="onRestore" enable-back-to-top>
<NoOrder v-if="noMore" type="black" :customStyle="noPartsCustomStyle" /> <NoOrder v-if="noParts" type="black" :customStyle="noPartsCustomStyle" />
<template v-else> <template v-else>
<view v-for="(item, index) in partsList" :key="item.id"> <view v-for="(item, index) in partsList" :key="item.id">
<AppliedCell @operate="handleOperate" :info="item"></AppliedCell> <AppliedCell @operate="handleOperate" :info="item"></AppliedCell>
...@@ -39,6 +39,17 @@ ...@@ -39,6 +39,17 @@
</template> </template>
</scroll-view> </scroll-view>
</view> </view>
<view class="bottom-view" v-if="isReserve">
<view class="selected-all-view" @click="radioChange">
<u-icon class="selected-all-icon" name="checkbox-mark" :color="radioColor"></u-icon>
<text>全选</text>
</view>
<view class="right-view">
<u-button class="scd-btn" @click="handleClickRecords" :custom-style="buttonStyle" type="primary"
shape="circle">{{buttonText}}</u-button>
</view>
</view>
</view> </view>
</template> </template>
...@@ -57,42 +68,43 @@ ...@@ -57,42 +68,43 @@
pageNumber: 0, pageNumber: 0,
pageSize: 100, pageSize: 100,
partsList: [], partsList: [],
current: [0, 0], current: [0, 0], // [未入库index, 已入库index]
loadStatus: 'loading', loadStatus: 'loading',
dataValue: [],
loaded: false, loaded: false,
triggered: false, triggered: false,
_freshing: false, _freshing: false,
scrollTop: 0, scrollTop: 0,
old: { selectedAll: false,
scrollTop: 0
}
}; };
}, },
computed: { computed: {
// -1 已驳回,-1 已取消,0 新申请,1 待审核,10 待发货,11 配货中,12 采购中,15 已发货,20 已签收,21 待返件,22 返件中,90 已转备件,100 已完成 // 待签收 15;待发货 10;待审核 1;已驳回 -2;已签收 20;已取消 -1;
list() { list() {
return [ return [
[{ [{
'name': '代签收', 'name': '代签收',
'status': '' 'status': 15
}, },
{ {
'name': '代发货', 'name': '代发货',
'status': '' 'status': 10
}, },
{ {
'name': '代审核', 'name': '代审核',
'status': '' 'status': 1
}, },
{ {
'name': '已取消', 'name': '已驳回',
'status': '' 'status': -2
}, },
{ {
'name': '已签收', 'name': '已签收',
'status': '' 'status': 20
} },
{
'name': '已取消',
'status': -1
},
], ],
[{ [{
'name': '备件仓', 'name': '备件仓',
...@@ -109,12 +121,12 @@ ...@@ -109,12 +121,12 @@
return ['未入库', '已入库'] return ['未入库', '已入库']
}, },
currentTab() { currentTab() {
return this.list[this.curNow][this.current[this.curNow]] return this.list[this.curNow][this.currentIndex]
}, },
sousuoImage() { sousuoImage() {
return process.uniEnv.qn_base_url + 'sousuo.png' return process.uniEnv.qn_base_url + 'sousuo.png'
}, },
noMore() { noParts() {
return this.partsList.length == 0 && this.loaded return this.partsList.length == 0 && this.loaded
}, },
noPartsCustomStyle() { noPartsCustomStyle() {
...@@ -129,15 +141,28 @@ ...@@ -129,15 +141,28 @@
'height': '80rpx', 'height': '80rpx',
'width': '200rpx' 'width': '200rpx'
} }
},
radioColor() {
return this.selectedAll ? '#2272FF' : 'transparent'
},
currentIndex() { // 当前tab的index
return this.current[this.curNow]
},
buttonTexts() {
return [['签收', '', '取消申请', '', ''], ['退件', '']]
},
buttonText() {
return this.buttonTexts[this.curNow][this.currentIndex]
},
isReserve() { // 选中备件仓
return this.curNow == 1 && this.currentIndex == 0
} }
}, },
onLoad(e) { onLoad(e) {
getApp().trackPage('我的仓库列表页') getApp().trackPage('我的仓库列表页')
this.reloadPartsList()
this._freshing = false; this._freshing = false;
}, },
onShow() {
this.reloadPartsInfo()
},
methods: { methods: {
sectionChange(index) { sectionChange(index) {
this.curNow = index; this.curNow = index;
...@@ -149,35 +174,28 @@ ...@@ -149,35 +174,28 @@
this.reloadPartsList() this.reloadPartsList()
}, },
reachBottom(e) { // 页面数据:未入库
if (this.loadStatus != 'loadmore') return getUnstockedList(status) {
this.loadStatus == 'loading'
this.getPartsList(this.currentTab)
},
// 页面数据
getPartsList(index) {
// 状态处理 // 状态处理
this.pageNumber += 1 this.pageNumber += 1
this.loaded = false this.loaded = false
var param = { var param = {
pageNumber: this.pageNumber, 'pageSize': 20,
pageSize: this.pageSize, 'pageNumbr': 1,
keyword: '', 'status': status, //不传值 全部;待签收 15;待发货 10;待审核 1;已取消 -1;已驳回 -2;已签收 20
type: 0 // 'workOrderId': ''
} }
var self = this; this.$u.api.applyList(param).then((res) => {
self.$u.api.listBystock(param).then((res) => {
if (res.code == 200) { if (res.code == 200) {
if (res.data.type != self.partsType) return if (res.data.type != this.partsType) return
self.triggered = false; this.triggered = false;
self._freshing = false; this._freshing = false;
if (self.pageNumber == 1) { if (this.pageNumber == 1) {
self.partsList = [] this.partsList = []
} }
if (res.data.list) { if (res.data.list) {
self.partsList.push(...res.data.list) this.partsList.push(...res.data.list)
self.loadStatus = res.data.total > self.partsList.length && res.data.list.length == this.loadStatus = res.data.list.length < this.pageSize ? 'nomore' : 'loadmore'
self.pageSize ? 'loadmore' : 'nomore'
} }
} else { } else {
console.log(res.message, "获取订单数量失败!"); console.log(res.message, "获取订单数量失败!");
...@@ -187,6 +205,55 @@ ...@@ -187,6 +205,55 @@
}, },
getReturnedParts(status) { // 返件列表
this.pageNumber += 1
this.loaded = false
var param = {
'pageSize': 20,
'pageNumbr': 1,
'items': true,
'type': 'new'
}
this.$u.api.returnedParts(param).then((res) => {
if (res.code == 200) {
if (res.data.type != this.partsType) return
this.triggered = false;
this._freshing = false;
if (this.pageNumber == 1) {
this.partsList = []
}
if (res.data.list) {
this.partsList.push(...res.data.list)
this.loadStatus = res.data.list.length < this.pageSize ? 'nomore' : 'loadmore'
}
} else {
console.log(res.message, "获取订单数量失败!");
}
this.loaded = true
});
},
getReserveList() { // 备件列表
this.pageNumber += 1
this.loaded = false
this.$u.api.reserveList(param).then((res) => {
if (res.code == 200) {
if (res.data.type != this.partsType) return
this.triggered = false;
this._freshing = false;
if (this.pageNumber == 1) {
this.partsList = []
}
if (res.data.list) {
this.partsList.push(...res.data.list)
this.loadStatus = res.data.list.length < this.pageSize ? 'nomore' : 'loadmore'
}
} else {
console.log(res.message, "获取订单数量失败!");
}
this.loaded = true
});
},
handleOperate(type) { handleOperate(type) {
// 调接口 // 调接口
// 刷新页面 // 刷新页面
...@@ -201,21 +268,40 @@ ...@@ -201,21 +268,40 @@
url: 'pages/order/search' url: 'pages/order/search'
}) })
}, },
radioChange(e) {
this.selectedAll = !this.selectedAll
},
onRefresh() { onRefresh() {
if (this._freshing) return; if (this._freshing) return;
this._freshing = true; this._freshing = true;
this.reloadPartsInfo() this.reloadPartsList()
}, },
onRestore() { onRestore() {
this.triggered = 'restore'; // 需要重置 this.triggered = 'restore'; // 需要重置
}, },
reloadPartsInfo() { reloadPartsList() { // 第一页数据
this.reloadPartsList()
},
reloadPartsList() {
this.pageNumber = 0 this.pageNumber = 0
this.loadStatus = 'loading' this.loadStatus = 'loading'
this.getPartsList(this.currentTab); this.loadPartsList()
},
loadPartsList() {
if (this.curNow == 0) { // 未入库
this.getUnstockedList(this.currentTab.status);
} else { // 已入库
if (this.currentIndex == 0) {
// 备件仓
this.getReserveList()
} else {
// 已返件
this.getReturnedParts()
}
}
},
reachBottom(e) {
if (this.isReserve) this.loadStatus = 'nomore' // 已入库的备件仓没有分页
if (this.loadStatus != 'loadmore') return
this.loadStatus == 'loading'
this.loadPartsList()
}, },
scroll(e) { scroll(e) {
this.old.scrollTop = e.detail.scrollTop this.old.scrollTop = e.detail.scrollTop
...@@ -226,10 +312,14 @@ ...@@ -226,10 +312,14 @@
<style lang="scss" scoped> <style lang="scss" scoped>
.ware-house { .ware-house {
padding: 0 30rpx 20rpx 30rpx;
height: 100vh;
display: flex;
flex-direction: column;
.u-tabs-box { .u-tabs-box {
margin-bottom: 30rpx; margin-bottom: 30rpx;
} }
.tab-view { .tab-view {
height: 100%; height: 100%;
overflow: auto; overflow: auto;
...@@ -274,5 +364,26 @@ ...@@ -274,5 +364,26 @@
} }
} }
} }
.bottom-view {
display: flex;
justify-content: space-around;
align-items: center;
.selected-all-view {
.selected-all-icon {
border: 2rpx solid #666666;
}
}
.right-view {
display: flex;
align-items: center;
.fst-btn {
}
.scd-btn {
}
}
}
} }
</style> </style>
<template> <template>
<view class="ware-wrap"> <view class="ware-wrap">
<w-navbar title="操作记录" :background="{backgroundColor: '#F4F5F7'}"></w-navbar> <w-navbar title="" :background="{backgroundColor: '#F4F5F7'}"></w-navbar>
<view class="content"> <!-- <view class="content">
<view class="panel"> <view class="panel">
<view class="title">物料明细</view> <view class="title">物料明细</view>
<view class="item-table"> <view class="item-table">
...@@ -15,9 +15,9 @@ ...@@ -15,9 +15,9 @@
<view class="width-106 center">{{ item.systemStock }}</view> <view class="width-106 center">{{ item.systemStock }}</view>
</view> </view>
</view> </view>
</view> </view> -->
<view class="panel"> <view class="panel">
<view class="title">操作记录</view> <!-- <view class="title">操作记录</view> -->
<view class="item-table"> <view class="item-table">
<view class="item-header"> <view class="item-header">
<view class="width-132">订单编号</view> <view class="width-132">订单编号</view>
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment