Commit c3a40599 authored by xiejb's avatar xiejb

添加获取订单列表

parent 6aacc9d6
...@@ -2,7 +2,7 @@ import { fetch } from '@/utils' ...@@ -2,7 +2,7 @@ import { fetch } from '@/utils'
// 获取商品列表 // 获取商品列表
export function getMyOrderList(params) { export function getMyOrderList(params) {
return fetch({ return fetch({
url: '/product/queryGoods_PS', url: '/OrderLife/queryOrder',
method: 'post', method: 'post',
data: params, data: params,
loading: true loading: true
......
...@@ -48,7 +48,7 @@ export default { ...@@ -48,7 +48,7 @@ export default {
return time return time
} }
}, },
mounted() { activated() {
// 设置标题栏关闭返回按钮 // 设置标题栏关闭返回按钮
this.$store.commit('setNavBar', { this.$store.commit('setNavBar', {
show: true, show: true,
...@@ -62,6 +62,20 @@ export default { ...@@ -62,6 +62,20 @@ export default {
// 给window添加一个popstate事件,拦截返回键,执行this.onBrowserBack事件,addEventListener需要指向一个方法 // 给window添加一个popstate事件,拦截返回键,执行this.onBrowserBack事件,addEventListener需要指向一个方法
window.addEventListener('popstate', this.onBrowserBack, false) window.addEventListener('popstate', this.onBrowserBack, false)
}, },
mounted() {
// 设置标题栏关闭返回按钮
// this.$store.commit('setNavBar', {
// show: true,
// leftArrow: true,
// rightIcon: true,
// title: '发票',
// leftText: '',
// leftClick: this.closeAppPage,
// rightClick: this.onMoreSearch
// })
// // 给window添加一个popstate事件,拦截返回键,执行this.onBrowserBack事件,addEventListener需要指向一个方法
// window.addEventListener('popstate', this.onBrowserBack, false)
},
destroyed() { destroyed() {
// 当页面销毁必须要移除这个事件,vue不刷新页面,不移除会重复执行这个事件 // 当页面销毁必须要移除这个事件,vue不刷新页面,不移除会重复执行这个事件
window.removeEventListener('popstate', this.onBrowserBack, false) window.removeEventListener('popstate', this.onBrowserBack, false)
......
...@@ -16,7 +16,7 @@ ...@@ -16,7 +16,7 @@
<div class="high-info"> <div class="high-info">
<div class="title font-bold font-16">请输入订单号</div> <div class="title font-bold font-16">请输入订单号</div>
<!-- <div contenteditable="true" class="inputInfo">{{orderNo}}</div> --> <!-- <div contenteditable="true" class="inputInfo">{{orderNo}}</div> -->
<input :value="orderNo" class="input" type="text"> <input v-model="moreSearchInfo.orderNo" class="input" type="text">
</div> </div>
<div class="high-info" @click="showPost('supplier')"> <div class="high-info" @click="showPost('supplier')">
<div class="title font-bold font-16">供应商</div> <div class="title font-bold font-16">供应商</div>
...@@ -216,7 +216,7 @@ export default { ...@@ -216,7 +216,7 @@ export default {
}, },
methods: { methods: {
timeConfirm (data) { timeConfirm (data) {
this.time = data this.moreSearchInfo.time = data
}, },
onSearchClick() { onSearchClick() {
this.moreSearchShow = false this.moreSearchShow = false
......
...@@ -22,7 +22,7 @@ ...@@ -22,7 +22,7 @@
v-for="(item, index) in tabsTitle" v-for="(item, index) in tabsTitle"
:key="index" :key="index"
:title="item.title"> :title="item.title">
<my-order-list :ref="item.name" :activeTab="activeTab" :more-search-info="moreSearchInfo" @orderItemAction="orderItemAction"/> <my-order-list :ref="item.name" :orderTypeCode="item.orderTypeCode" :activeTab="activeTab" @orderItemAction="orderItemAction"/>
</van-tab> </van-tab>
</van-tabs> </van-tabs>
<high-search v-model="moreSearchShow" @onsearch="moreSearchConfirm" @onclean="moreSearchClean"/> <high-search v-model="moreSearchShow" @onsearch="moreSearchConfirm" @onclean="moreSearchClean"/>
...@@ -35,11 +35,11 @@ import HighSearch from './components/HighSearch.vue' ...@@ -35,11 +35,11 @@ import HighSearch from './components/HighSearch.vue'
import {getFormateDate} from '@/utils/common' import {getFormateDate} from '@/utils/common'
import { bridge } from "@/utils"; import { bridge } from "@/utils";
const allTabsTitle = [ const allTabsTitle = [
{title: '全部', name: 'all'}, {title: '全部', name: 'all', orderTypeCode: ''},
{title: '已开单', name: 'billing'}, {title: '待发货', name: 'billing', orderTypeCode: '100'},
{title: '已发货', name: 'ship'}, {title: '待收货', name: 'ship', orderTypeCode: '220'},
{title: '完成', name: 'carryOut'}, {title: '签收', name: 'carryOut', orderTypeCode: '400'},
{title: '已取消', name: 'cancel'} {title: '已取消', name: 'cancel', orderTypeCode: '110'}
] ]
export default { export default {
components: { components: {
...@@ -176,10 +176,13 @@ export default { ...@@ -176,10 +176,13 @@ export default {
// this.$refs.all[0].httpAction(this.moreSearchInfo) // this.$refs.all[0].httpAction(this.moreSearchInfo)
}) })
this.moreSearchInfo = JSON.parse(JSON.stringify(data)) this.moreSearchInfo = JSON.parse(JSON.stringify(data))
console.log(data)
console.log(this.moreSearchInfo)
this.$EventBus.$emit('myOrderMoreSearch', this.moreSearchInfo) this.$EventBus.$emit('myOrderMoreSearch', this.moreSearchInfo)
}, },
// 高级搜索取消 // 高级搜索取消
moreSearchClean(data) { moreSearchClean(data) {
console.log(this.moreSearchInfo)
this.moreSearchInfo = JSON.parse(JSON.stringify(data)) this.moreSearchInfo = JSON.parse(JSON.stringify(data))
this.$EventBus.$emit('myOrderMoreSearch', this.moreSearchInfo) this.$EventBus.$emit('myOrderMoreSearch', this.moreSearchInfo)
}, },
......
...@@ -66,6 +66,7 @@ ...@@ -66,6 +66,7 @@
// 引入接口 // 引入接口
import { getMyOrderList } from '@/api/myOrder' import { getMyOrderList } from '@/api/myOrder'
import orderListItem from './orderListItem.vue' import orderListItem from './orderListItem.vue'
import {getFormateDate} from '@/utils/common'
import { valid } from 'semver' import { valid } from 'semver'
export default { export default {
name: 'MyOrderList', name: 'MyOrderList',
...@@ -84,17 +85,25 @@ export default { ...@@ -84,17 +85,25 @@ export default {
orderList: [], orderList: [],
orderItem: {}, orderItem: {},
sphImage: require('@/assets/img/u48.png'), sphImage: require('@/assets/img/u48.png'),
}
},
props: {
moreSearchInfo: { moreSearchInfo: {
type: Object, supplier: '', // 供应商
default: () => { consignor: [], // 货主
return { goods: '', // 商品
client: '', // 客户
orderNo: '',
time: {
start: getFormateDate(new Date(), 'yyyy-MM-dd'),
end: getFormateDate(new Date(), 'yyyy-MM-dd')
}
} }
} }
}, },
activeTab: '' props: {
activeTab: '',
orderTypeCode: {
type: String,
default: ''
}
}, },
computed: { computed: {
linkInfo () { linkInfo () {
...@@ -110,9 +119,10 @@ export default { ...@@ -110,9 +119,10 @@ export default {
}, },
mounted() { mounted() {
// this.onLoad() // this.onLoad()
let _this = this
this.$EventBus.$on('myOrderMoreSearch', (model) => { this.$EventBus.$on('myOrderMoreSearch', (model) => {
// console.log(model) _this.moreSearchInfo = model
this.onRefresh() _this.onRefresh()
}) })
}, },
watch: { watch: {
...@@ -142,23 +152,50 @@ export default { ...@@ -142,23 +152,50 @@ export default {
getPostData() { getPostData() {
let _this = this let _this = this
let data = { let data = {
'dbName': 'erp_test_shaphar-上药控股有限公司-204-23528', // 'erp_ogg_shaphar', 'businessType': '',
'start': _this.currentPage, 'clientID': [
'length': _this.pageSize, '3168'
'goods': '' ], // 客户编码
'endDate': _this.moreSearchInfo.time.end, // 结束时间
'startDate': _this.moreSearchInfo.time.start, // 开始时间
'goodsCode': '', // 商品代码
'goodsDesc': '', // 商品描述
'goodsId': '', // 商品ID
'goodsName': '', // 商品名称
'goodsSpec': '', // 商品规格
'isDelivered': '', // 是否配送 TRUE是/FALSE
'isInvoice': '', // 是否开票 TURE 是 FALSE 否
'isWeb': '', // 是否网单 TURE 是FALSE 否
'manufacturer': '', // 生产企业
'mdmClientCode': '', // 主数据客户编码
'order': '',
'orderId': '', // 订单ID
'orderNo': !_this.moreSearchInfo.orderNo ? '':_this.moreSearchInfo.orderNo, // 订单号
// 订单状态ERP 100 已开单110 已取消180 已完(销退)WMS200 待出库210 拣配中220 已出库TMS300 调度中310 运输中400 已签收410 签收执420 拒收
'orderStatusCode': _this.orderTypeCode,
'orderType': 'SALE', // 订单类型 正常销售SALE销售退货SALE_RTN
'pageNum': _this.currentPage,
'pageSize': _this.pageSize,
'shippingAdress': '', // 送货地址
'sort': '',
'sourceDb': 'SHYY', // 数据来源
'sourceOrderNo': '', // 来源订单号(网上订单号)
'sourceSystem': '', // 订单来源 来源订单号和订单来源必须同时不为空
'supplierId': [
] // 供应商(部门)编码
} }
getMyOrderList(data).then(rt => { getMyOrderList(data).then(rt => {
if (rt.code === 1 || rt.code === '1') { if (rt.data.code === '00000') {
if (_this.isRefreshing) { if (_this.isRefreshing) {
_this.orderList = rt.data _this.orderList = rt.data.entity.orderList
} else if (rt.data || rt.data.length > 0) { } else if (rt.data || rt.data.length > 0) {
_this.orderList = _this.orderList.concat(rt.data) _this.orderList = _this.orderList.concat(rt.data.entity.orderList)
} }
// 重置刷新提示 // 重置刷新提示
_this.isRefreshing = false _this.isRefreshing = false
// 重置加载更多提示 // 重置加载更多提示
_this.isLoading = false _this.isLoading = false
if (rt.data.length < 10) { if (rt.data.entity.orderList.length < 10) {
_this.finished = true _this.finished = true
} else { } else {
// 加载成功后下一页自增1 // 加载成功后下一页自增1
......
...@@ -4,7 +4,7 @@ ...@@ -4,7 +4,7 @@
<div class="orderNum"> <div class="orderNum">
<van-image fit="contain" width="45" height="50" :src="sphImage"/> <van-image fit="contain" width="45" height="50" :src="sphImage"/>
<div class="num">订单号:34678649876</div> <div class="num">订单号:34678649876</div>
<van-button style="margin: auto;" class="numBtn" round plain size="mini" type="info">复制</van-button> <van-button style="margin: auto;width: 50PX" class="numBtn" round plain size="mini" type="info">复制</van-button>
</div> </div>
<div class="divider"></div> <div class="divider"></div>
<div class="invoiecInfo"> <div class="invoiecInfo">
......
...@@ -4,46 +4,48 @@ ...@@ -4,46 +4,48 @@
<div class="orderNum"> <div class="orderNum">
<van-image fit="contain" width="50" height="55" :src="sphImage"/> <van-image fit="contain" width="50" height="55" :src="sphImage"/>
<div class="num"> <div class="num">
<div class="numBer">订单号:34678649876</div> <div class="numBer">订单号:{{item.orderNo}}</div>
<van-button color="#D9001B" class="numBtn" round plain size="mini" type="info">退</van-button> <!-- <van-button color="#D9001B" class="numBtn" round plain size="mini" type="info">退</van-button> -->
<van-button color="#4b7902" class="numBtn" round plain size="mini" type="info"></van-button> <!-- <van-button color="#4b7902" class="numBtn" round plain size="mini" type="info"></van-button> -->
<van-button color="#02a7f0" class="numBtn" round plain size="mini" type="info">精麻</van-button> <!-- <van-button color="#02a7f0" class="numBtn" round plain size="mini" type="info">精麻</van-button> -->
</div>
<!-- <div class="dian"></div> -->
<!-- <div class="numType"><span>{{item.orderStatus}}</span></div> -->
<div class="numType">
<van-button :color="orderTypeColor(item)" plain size="mini" type="info">{{item.orderStatus}}</van-button>
</div> </div>
<div class="dian"></div>
<div class="numType"><span>已开单</span></div>
</div> </div>
<div class="divider"></div> <div class="divider"></div>
<div class="orderInfo"> <div class="orderInfo">
<div class="company" @click="btnAction('details')"> <div class="company" @click="btnAction('details')">
<span style="width: 83%">上药控股有限公司</span> <span style="width: 75%">{{item.sourceSystem}}</span>
<span style="margin-right: 5PX;">共8件</span> <span style="width: 25%;margin-right: 5PX;text-align: right;">{{item.orderTotalQty}}</span>
<van-icon style="margin: auto 0;" color="#1989fa" name="arrow" /> <van-icon style="margin: auto 0;" color="#1989fa" name="arrow" />
</div> </div>
<div class="info" @click="btnAction('details')"> <div class="info" @click="btnAction('details')">
<div class="headImage"> <div class="headImage">
<van-image width="55" height="55" <van-image width="55" height="55" :src="orderImage"/>
src="https://img01.yzcdn.cn/vant/cat.jpeg"/>
</div> </div>
<div class="details"> <div class="details">
<div class="titleInfo"> <div class="titleInfo">
[132521]阿西匹林/0.25g*s/上海市浦东新区金科路长泰广场负一楼 {{item.goodsInfos[0].goodsDesc}}
</div> </div>
<div class="priceInfo"> <div class="priceInfo">
<div class="price"><span style="color:red;">10.5</span></div> <div class="price"><span style="color:red;">{{item.goodsInfos[0].taxPrice}}</span></div>
<div class="numBer">X 8</div> <div class="numBer">X {{item.goodsInfos[0].orderQty}}</div>
</div> </div>
</div> </div>
</div> </div>
<div class="orderTime" @click="btnAction('details')"> <div class="orderTime" @click="btnAction('details')">
<van-icon size="20" style="margin: auto 0; width: 7%;" name="clock-o" /> <van-icon size="20" style="margin: auto 0; width: 7%;" name="clock-o" />
<span style="width: 50%;">2020-11-10 18:09:33</span> <span style="width: 50%;">{{item.orderDate}}</span>
<div class="price">总计:¥<span style="color:red;">10.5</span></div> <div class="price">总计:¥<span style="color:red;">{{item.orderTotalAmount}}</span></div>
</div> </div>
<van-divider :style="{ color: '#999999', borderColor: '#999999', margin: '10PX 0 10PX 0'}"/> <van-divider :style="{ color: '#999999', borderColor: '#999999', margin: '10PX 0 10PX 0'}"/>
<div class="btnInfo" style="text-align: right;"> <div class="btnInfo" style="text-align: right;">
<van-button @click="btnAction('invoice')" style="border-radius: 5PX;" plain size="small" type="info">查看发票</van-button> <van-button v-if="item.isInvoice === 'TRUE'" @click="btnAction('invoice')" style="border-radius: 5PX;" plain size="small" type="info">查看发票</van-button>
<van-button @click="btnAction('logistics')" style="border-radius: 5PX;" plain size="small" type="info">查看物流</van-button> <van-button v-if="item.isDelivered === 'TRUE'" @click="btnAction('logistics')" style="border-radius: 5PX;" plain size="small" type="info">查看物流</van-button>
<van-button @click="btnAction('clearance')" style="border-radius: 5PX;" plain size="small" type="info">清货单</van-button> <van-button v-if="item.isWeb === 'TRUE'" @click="btnAction('clearance')" style="border-radius: 5PX;" plain size="small" type="info">清货单</van-button>
</div> </div>
</div> </div>
</div> </div>
...@@ -58,6 +60,7 @@ export default { ...@@ -58,6 +60,7 @@ export default {
data() { data() {
return { return {
sphImage: require('@/assets/img/u48.png'), sphImage: require('@/assets/img/u48.png'),
orderImage: require('@/assets/img/order.png')
} }
}, },
props: { props: {
...@@ -85,6 +88,22 @@ export default { ...@@ -85,6 +88,22 @@ export default {
// this.onLoad() // this.onLoad()
}, },
methods: { methods: {
// 根据订单类型返回颜色
orderTypeColor (model) {
if (model.orderStatusCode === '100') {
// 待发货
return '#53BE00'
} else if (model.orderStatusCode === '220') {
// 待收货
return '#E6C500'
} else if (model.orderStatusCode === '400') {
// 已签收
return '#4b7902'
} else if (model.orderStatusCode === '110') {
// 已取消
return '#D9001B'
}
},
onRefresh() { onRefresh() {
}, },
// 查看发票 查看物流 清货单 // 查看发票 查看物流 清货单
......
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