Kaynağa Gözat

Merge remote-tracking branch 'remotes/origin/developer' into developerB

# Conflicts:
#	common/config/config.js
zhengjinyi 4 yıl önce
ebeveyn
işleme
29a40cbab4
38 değiştirilmiş dosya ile 960 ekleme ve 113 silme
  1. 1 1
      App.vue
  2. 1 1
      api/order.js
  3. 21 0
      common/config/caimeiApi.js
  4. 14 4
      components/cm-module/cm-seller/home.vue
  5. 345 0
      components/cm-module/listTemplate/classifyProductList.vue
  6. 1 1
      components/cm-module/listTemplate/immediatelyList.vue
  7. 1 1
      components/cm-module/modelAlert/cancelAlert.vue
  8. 149 0
      components/cm-module/modelAlert/order-alert.vue
  9. 1 1
      components/cm-module/modelAlert/sellerShareAlert.vue
  10. 16 13
      components/cm-module/orderDetails/orderButton.vue
  11. 12 16
      components/cm-module/orderDetails/orderListButton.vue
  12. 24 6
      components/cm-module/orderDetails/sellerDetaileButton.vue
  13. 9 2
      pages.json
  14. 62 0
      pages/goods/goods-classify.vue
  15. 2 1
      pages/goods/goods.vue
  16. 1 2
      pages/goods/product.vue
  17. 1 1
      pages/login/apply.vue
  18. 1 2
      pages/login/information.vue
  19. 15 6
      pages/tabBar/home/home.vue
  20. 3 1
      pages/user/order/create-order.vue
  21. 71 4
      pages/user/order/order-details.vue
  22. 68 8
      pages/user/order/order-list.vue
  23. 29 8
      pages/user/order/order-payment.vue
  24. 2 1
      pages/user/order/order-sharelogin.vue
  25. 8 2
      pages/user/order/success.vue
  26. 1 1
      seller/pages/cart/cart.vue
  27. 1 1
      seller/pages/club/allClub-list.vue
  28. 1 1
      seller/pages/club/club-list.vue
  29. 1 1
      seller/pages/club/list.vue
  30. 3 1
      seller/pages/order/create-order.vue
  31. 55 7
      seller/pages/order/order-details.vue
  32. 1 1
      seller/pages/order/order-historylist.vue
  33. 1 2
      seller/pages/order/order-list.vue
  34. 11 11
      seller/pages/search/search-order.vue
  35. 3 3
      services/ajax.env.js
  36. 4 1
      services/common.service.js
  37. 9 1
      services/order.service.js
  38. 11 0
      services/sellse.service.js

+ 1 - 1
App.vue

@@ -58,7 +58,7 @@
 				}
 			})
 			this.refresh()
-			this.$store.dispatch('setActivityFn',true)
+			// this.$store.dispatch('setActivityFn',true)
 		},
 		methods:{
 			refresh(){

+ 1 - 1
api/order.js

@@ -213,7 +213,7 @@ export function orderShareCode(params) {
 	})
 }
 /**
- *搜索订单
+ *机构搜索订单
  *@param searchWord 关键词
  *@param userId		用户ID
  *@param pageNum	页码

+ 21 - 0
common/config/caimeiApi.js

@@ -183,6 +183,26 @@ const caimeiApi = {
 			})
 		}
 	},
+	navigateToGoods:function({type,value,id,lType} = {}){
+	// 跳转到列表页
+		if(lType=='4'){
+			const pages = getCurrentPages();
+			const prevPage = pages[pages.length-2];
+			prevPage.refresh = true;
+			prevPage.listData = {
+				type: type,
+				from: value,
+				id: id
+			}
+			uni.navigateBack({
+				delta: 1
+			})
+		}else{
+			uni.navigateTo({
+				url:`/pages/goods/goods-classify?type=${type}&from=${value}&id=${id}`
+			})
+		}
+	},
 	navigateTo:function(url){
 		//路由跳转:页面之间路由跳转
 		uni.navigateTo({
@@ -290,6 +310,7 @@ module.exports = {
 	getStorage: caimeiApi.getStorage,
 	getComStorage: caimeiApi.getComStorage,
 	navToListPage: caimeiApi.navToListPage,
+	navigateToGoods: caimeiApi.navigateToGoods,
 	getWindowHeight: caimeiApi.getWindowHeight,
 	adaptRichTextImg: caimeiApi.adaptRichTextImg,
 	getStorageAddressKey: caimeiApi.getStorageAddressKey,

+ 14 - 4
components/cm-module/cm-seller/home.vue

@@ -6,7 +6,7 @@
 		<view class="container-home tui-skeleton">
 			<view class="swiper-banner-box" >
 				<swiper class="tui-banner-swiper tui-banner tui-skeleton-fillet" :autoplay="true" :interval="5000" :duration="500"  @change="swiperChange" :circular="true">
-					<swiper-item v-for="(item,index) in bannerImageList" :key="index" @click.stop="handleBannerActivity(item,index)">
+					<swiper-item v-for="(item,index) in bannerImageList" :key="index">
 						<image :src="item" class="tui-slide-image" mode="scaleToFill"/>
 					</swiper-item>
 				</swiper>
@@ -21,7 +21,7 @@
 			<view class="cate-section clearfix">
 				<!-- 自定义分类导航栏 -->
 				<view class="tabbar clearfix">
-					<view class="cate-item" v-for="(nav,idx) in productsClassifyList" :key="idx" @click.stop="navToListPage(nav)">
+					<view class="cate-item" v-for="(nav,idx) in productsClassifyList" :key="idx" @click.stop="navigateToGoods(nav)">
 						<image class="tui-skeleton-circular" :src="nav.classifyImage"></image>
 						<text class="tui-skeleton-fillet">{{nav.classifyName}}</text>
 					</view>
@@ -120,7 +120,7 @@
 			</view>	
 		</view>
 		<!-- 活动弹窗 -->
-		<activityAlert :show="isActivity" @click="handleClick" @cancel="handleCancelClick"></activityAlert>
+		<!-- <activityAlert :show="isActivity" @click="handleClick" @cancel="handleCancelClick"></activityAlert> -->
 		<!-- 透明模态层 -->
 		<modal-layer v-if='modallayer'></modal-layer>
 	</view>
@@ -198,7 +198,7 @@
 			this.getSellerHomeInfo()
 		},
 		computed: {
-			...mapState(['hasLogin'])
+			...mapState(['hasLogin','userInfo','isActivity'])
 		},
 		methods: {
 			getSellerHomeInfo(){
@@ -266,6 +266,16 @@
 					}
 				})
 			},
+			navigateToGoods(nav){
+				let self = this;
+				uni.setStorage({
+					key: 'commodity_id',
+					data: nav.id,
+					success: function () {
+						self.$api.navigateToGoods({type:'0',value:nav.classifyName,id:nav.id});
+					}
+				})
+			},
 			navToDetailPage(id) {//跳转商品详情页
 				this.modallayer = true;
 				this.$api.navigateTo(`/pages/goods/product?id=${id}`)

+ 345 - 0
components/cm-module/listTemplate/classifyProductList.vue

@@ -0,0 +1,345 @@
+<template>
+	<view class="container commodity-list-wrapper" :style="{'overflow':(showSkeleton? 'hidden' : 'auto'),'height': (showSkeleton? windowHeight + 'px' : 'auto')}">
+		<list-skeleton v-if="showSkeleton" :listType='0'></list-skeleton>
+		<scroll-view :style="{'height':scrollHeight+'px'}" @scrolltolower="toLower" scroll-y v-if="listData.length > 0">
+			<view v-for="(item,index) in listData" :key="index" :id="item.id" class="all-type-list-content commodity-list" @click.stop="navToDetailPage(item.productID)">
+				<image mode='widthFix' :src="item.mainImage"  class="list-img" alt="list-img"></image>
+				<view class="list-details-info">
+					<text class="list-details-title">{{item.name}}</text>
+					<text class="list-details-specs">规格:{{item.unit}}</text>
+					<view class="list-details-specs" v-if="item.productCode!=''&&item.productCode!=null">商品编码:{{item.productCode}}</view>
+					<view class="list-details-price">
+						<view v-if="hasLogin" class="list-price">
+							<view v-if="userIdentity == 1">
+								<text>¥<text class="price-larger">{{item.retailPrice ? item.retailPrice.toFixed(2) : '0.00'}}</text></text>
+							</view>	
+							<view v-if="userIdentity == 4">
+								<view class="price-larger" v-if="item.price1TextFlag == '1'">
+									<text class="txt">未公开价格</text>
+								</view>
+								<view v-else>
+									<view class="price-larger" v-if="item.price1TextFlag == '2'">
+										<text class="txt">价格仅会员可见</text>
+										<text class="btn" @click.stop="this.$api.navigateTo(`/pages/login/apply?clubStatus=${clubStatus}`)">去升级</text>
+									</view>
+									<text v-else>¥<text class="price-larger">{{item.retailPrice ? item.retailPrice.toFixed(2) :'0.00'}}</text></text>
+								</view>
+							</view>
+							<view v-if="userIdentity == 2">
+								<view class="price-larger" v-if="item.price1TextFlag == '1'">
+									<text class="txt">未公开价格</text>
+								</view>
+								<text>¥<text class="price-larger">{{item.retailPrice ? item.retailPrice.toFixed(2) :'0.00'}}</text></text>
+							</view>
+						</view>	
+						<view  v-else class="list-login-now">
+							<text class="p-no">价格:</text>
+							<uni-stars :stars="parseInt(item.price1Grade)" :font-size='36' :width-info="180"></uni-stars>
+						</view>
+					</view>
+				</view>
+			</view>
+			<view v-if="showLoading && listData.length > 4">
+				<view class="loading-wrapper loading-wrapper-now" v-if="loadingNow">{{loadingText}}<text v-if="loadingText === '已至底部'">‧ ‧ ‧</text></view>
+				<view class="loading-wrapper loading-wrapper-btm" v-else>———<text class="btm-text">已至底部</text>———</view>
+			</view>
+		</scroll-view>
+		<view class="empty-container" v-if="showEmpty">
+			<image class="empty-container-image" src="https://img.caimei365.com/group1/M00/03/71/Cmis2F3wna6AY2ZjAABpmnBICH4247.png"></image>
+			<text class="error-text">{{emptyText}}</text>
+		</view>
+		<!-- 透明模态层 -->
+		<modal-layer v-if='isModallayer'></modal-layer>
+	</view>
+</template>
+
+<script>
+	import listSkeleton from '@/components/cm-module/listTemplate/listSkeleton'
+	import modalLayer from "@/components/modal-layer"
+	import uniStars from '@/components/uni-stars/uni-stars.vue'
+	import { searchQueryTinyType,querySearchProductPrice} from "@/api/product.js"
+	import { mapState,mapMutations } from 'vuex';
+	export default{
+		name:'CommodityList',
+		components:{
+			listSkeleton,
+			modalLayer,
+			uniStars
+		},
+		props: {
+			emptyText: {
+				type: String
+			},
+			serverUrl: {
+				type: String
+			},
+			classifyID: {
+				type:Number
+			}
+		},
+		data(){
+			return{
+				clubStatus:'',
+				isModallayer:false,
+				windowHeight: '',
+				showSkeleton: true,
+				showEmpty: false,
+				userID: '',
+				userIdentity:'',
+				scrollHeight: '',
+				listData: [],
+				showLoading: false,
+				loadingNow: true,
+				loadingText: '上拉加载更多',
+				pageSize: 20,
+				pageNum: 1,
+				totalPage: 1,
+				hasNextPage:false,
+				pullFlag: true,
+				cartNum: 0,
+			}
+		},
+		created() {		
+			// console.log(this.typeId)
+			this.setScrollHeight();		
+			this.$api.getComStorage('userInfo').then((resolve) =>{
+				this.clubStatus = resolve.clubStatus
+				this.userID = resolve.userID ? resolve.userID : '';
+				this.userIdentity = resolve.userIdentity
+				this.getListFromServer();
+			}).catch(error =>{
+				this.getListFromServer();
+			})
+		},
+		computed: {
+			...mapState(['hasLogin','userInfo'])
+		},
+		methods:{
+			toLower() {
+				if(this.hasNextPage && this.pullFlag) {
+					this.getListFromServer(true);
+				}
+			},
+			setScrollHeight() {
+				const {windowHeight, pixelRatio} = wx.getSystemInfoSync();
+				this.windowHeight = windowHeight - 1;
+				this.scrollHeight = windowHeight - 1;
+			},
+			getListFromServer(loadMore) {
+				this.getQueryGoodslist(loadMore)
+			},
+			getQueryGoodslist(loadMore){
+				this.showLoading = true;
+				this.loadingNow = true;
+				this.loadingText = '加载中';
+				if(loadMore) { this.pageNum += 1; }
+				let params ={
+						classifyId:this.classifyID,
+						userId:this.userID,
+						pageNum:this.pageNum,
+						pageSize:this.pageSize,
+					}
+				this.CommonService.GetHomeClassify(params).then(response =>{	
+					const resList = response.data.results;
+					if(resList && resList.length > 0){
+						this.showEmpty = false
+						this.hasNextPage = response.data.hasNextPage;
+						if(loadMore) {
+							this.listData = [...this.listData,...resList];
+							this.showSkeleton = false
+						} else {
+							this.listData = [...resList];
+							this.showSkeleton = false
+						}
+						// 防上拉暴滑
+						this.pullFlag = false;
+						setTimeout(()=>{ this.pullFlag = true; },500)
+						// 底部提示文案
+						if(this.hasNextPage) {
+							this.loadingText = '上拉加载更多';
+						} else {
+							this.showLoading = true;
+							this.loadingNow = false;
+							this.loadingText = '已至底部';
+						}
+					} else {
+						if(!loadMore) { this.showEmpty = true; }
+					}
+					
+				}).catch(error =>{
+					this.$util.msg(error.msg,2000);
+				})
+			},
+			navToDetailPage(id) {
+				this.isModallayer = true;
+				this.$api.navigateTo(`/pages/goods/product?id=${id}`);
+				this.isModallayer = false;
+			}
+		}
+	}
+</script>
+
+<style lang="scss">
+	.commodity-list-wrapper {
+		scroll-view {
+			height: 100%;
+			border-top: 2rpx solid rgba(0,0,0,0.07);
+		}
+		.empty-container-image {
+			margin-top: -300rpx;
+		}
+		.toIndexPage {
+			bottom: 390rpx;
+		}
+		.show-more-btn {
+			width: 276rpx;
+			height: 52rpx;
+			line-height: 52rpx;
+			border: 2rpx solid #D8D8D8;
+			background: #F7F7F7;
+			font-size: 26rpx;
+			margin: 26rpx 0;
+			position: absolute;
+			left: 50%;
+			margin-left: -138rpx;
+		}
+	}
+	.all-type-list-content {
+		height: 216rpx;
+		padding: 24rpx;
+		background: #fff;
+		margin-bottom: 2rpx;
+		display: flex;
+		flex-direction: row;
+		box-sizing: content-box;
+		.list-img {
+			width: 210rpx;
+			height: 218rpx !important;
+			margin-right: 26rpx;
+			border-radius: 10rpx;
+			border: 2rpx solid #f3f3f3;
+		}
+	}
+	.list-details-info {
+		width: 466rpx;
+		display: flex;
+		flex-direction: column;
+		font-size: 26rpx;
+		position: relative;
+		.list-details-title {
+			line-height: 38rpx;
+			text-overflow: ellipsis;
+			overflow: hidden;
+			display: -webkit-box;
+			-webkit-line-clamp: 2;
+			line-clamp: 2;
+			-webkit-box-orient: vertical;
+		}
+		.list-details-specs {
+			margin-top: 8rpx;
+			color: #666666;
+		}
+		.list-details-miniQuantity {
+			margin-top: 7rpx;
+		}
+	}
+	.list-details-price {
+		width: 100%;
+		display: flex;
+		flex-direction: row;
+		justify-content: space-between;
+		position: absolute;
+		bottom: 0;
+		right: 0;
+		.price-icon {
+			width: 22rpx;
+			height: 28rpx;
+			vertical-align: middle;
+			margin-right: 10rpx;
+		}
+		.price-icon + text {
+			font-size: 25rpx;
+			vertical-align: middle;
+		}
+		.list-login-now {
+			width: 375rpx;
+			color: #F8C499;
+			position: absolute;
+			bottom: 0;
+			.p-no{
+				float: left;
+				font-size: $font-size-24;
+				color: $color-system;
+				margin-right: 10rpx;
+			}
+		}
+		.login-now {
+			padding: 10rpx 10rpx 10rpx 0;
+		}
+		.list-price {
+			color: #FF2A2A;
+			width: 100%;
+			height: 44rpx;
+			.price-larger {
+				width: 100%;
+				height: 44rpx;
+				font-size: 32rpx;
+				&.small{
+					font-size: $font-size-24;
+				}
+				.txt{
+					font-size: $font-size-24;
+					display: inline-block;
+					line-height: 44rpx;
+					text-align: left;
+					float: left;
+				}
+				.btn{
+					width: 112rpx;
+					height: 44rpx;
+					display: inline-block;
+					float: right;
+					background: $btn-confirm;
+					line-height: 44rpx;
+					text-align: center;
+					color: #FFFFFF;
+					font-size: $font-size-24;
+					border-radius: 22rpx;
+				}
+			}
+		}
+		.add-cart-btn {
+			width: 156rpx;
+			height: 64rpx;
+			line-height: 64rpx;
+			border-radius: 32rpx;
+			color: #fff;
+			font-size: 26rpx;
+			margin-right: 0;
+			background:linear-gradient(45deg,rgba(255,41,41,1) 0%,rgba(255,109,27,1) 100%);
+		}
+	}
+	.cart-icon {
+		width: 92rpx;
+		height: 92rpx;
+		border-radius: 50%;
+		background: rgba(255, 147, 0, 0.5);
+		position: fixed;
+		right: 24rpx;
+		bottom: 30%;
+		display: flex;
+		align-items: center;
+		justify-content: center;
+		cursor: pointer;
+		image {
+			width: 58rpx;
+			height: 58rpx;
+		}
+		text {
+			font-size: 28rpx;
+			position: absolute;
+			top: -10rpx;
+			right: 0;
+		}
+	}
+</style>

+ 1 - 1
components/cm-module/listTemplate/immediatelyList.vue

@@ -134,7 +134,7 @@
 	import uniStars from '@/components/uni-stars/uni-stars.vue'
 	import cmDrag from '@/components/cm-custom/cm-drag.vue'
 	import { queryNewSearchProduct,querySearchProductPrice} from "@/api/product.js"
-	import { getSellerProduct,getcombinationProduct } from "@/api/seller.js"
+	import { getcombinationProduct } from "@/api/seller.js"
 	import { mapState,mapMutations } from 'vuex';
 	export default{
 		name:'productList',

+ 1 - 1
components/cm-module/modelAlert/cancelAlert.vue

@@ -1,5 +1,5 @@
 <template name="alert">
-	<view class="alert spec" :class="specClass">
+	<view class="alert spec">
 		<view class="model-warp">
 			<view class="model-alert">
 				<view class="model-content">

+ 149 - 0
components/cm-module/modelAlert/order-alert.vue

@@ -0,0 +1,149 @@
+<template name="sharealert">
+	<view class="alert spec" >
+		<view class="model-warp" @click.stop="hideConfirm">
+			<view class="content" v-if="modelType == 1">
+				<view class="content-title"></view>
+				<view class="text-content clearfix">
+					<view class="text">
+						<text>您有采美余额¥{{payModelData.ableUserMoney}}暂未使用,是否需要抵扣订单?</text>
+						<text>抵扣后您只需再支付¥{{payModelData.pendingPayments}}</text></view>
+					<view class="alert-btn" @click="cancelConfirm(dataInfo)">不抵扣,继续付款</view>
+					<view class="alert-btn" @click="paymentConfirm(1,dataInfo)">抵扣,继续付款</view>
+				</view>				
+			</view>
+			<view class="content" v-if="modelType == 2">
+				<view class="content-title"></view>
+				<view class="text-content clearfix">
+					<view class="text">您有采美余额¥{{payModelData.ableUserMoney}}暂未使用,是否需要抵扣订单?抵扣后订单支付完成</view>
+					<view class="alert-btn" @click="cancelConfirm(dataInfo)">不抵扣,继续付款</view>
+					<view class="alert-btn" @click="paymentConfirm(2,dataInfo)">抵扣</view>
+				</view>				
+			</view>
+			<view class="content" v-if="modelType == 3">
+				<view class="content-title"></view>
+				<view class="text-content clearfix">
+					<view class="text">目前机构余额剩余¥{{payModelData.ableUserMoney.toFixed(2)}}是否抵扣订单?</view>
+					<view class="alert-btn" @click="hideConfirm">取消,不抵扣</view>
+					<view class="alert-btn" @click="paymentConfirm(3,dataInfo)">抵扣</view>
+				</view>				
+			</view>
+		</view>
+	</view>
+</template>
+
+<script>
+	import { queryOrderShareCode } from "@/api/order.js" 
+	export default{
+		name:'sharealert',
+		props:{
+			modelType:{
+				type:Number,
+				default:3
+			},
+			payModelData:{
+				type:Object
+			}
+		},
+		data() {
+			return{
+				dataInfo:{}
+			}
+		},
+		created() {
+			this.infoData(this.payModelData)
+		},
+		methods:{
+			infoData(el){
+				this.dataInfo = el
+			},
+			hideConfirm(){
+				this.$parent.isPayModel = false
+			},
+			cancelConfirm(data){
+				this.$emit('cancelConfirm',data)
+			},
+			paymentConfirm(type,data){
+				this.$parent.isPayModel = false
+				let _data = {type:type,order:data}
+				this.$emit('paymentConfirm',_data)
+			},
+			btnConfirm(data){//点击事件
+				this.$emit('btnConfirm',data)
+			}
+		}
+	}
+</script>
+
+<style lang="scss">
+	/*弹窗*/
+	 .model-warp.none{
+		 display: none;
+	 }
+	 .model-warp.show{
+		 display: block;
+	 }
+	 .model-warp{
+		width: 100%;
+		height: 100%;
+		background: rgba(0,0,0,0.3);
+		position: fixed;
+		top: 0;
+		left: 0;
+		z-index: 10000;
+		transition: all 0.4s;
+		&.none{
+			display: none;			
+		}
+		&.show{
+			display: block;
+		}
+		.content{
+			width: 540rpx;
+			min-height: 310rpx;
+			box-sizing: border-box;
+			position: absolute;
+			left: 50%;
+			top: 50%;
+			transform: translate(-50%,-50%);
+			border-radius: 14rpx;
+			background-color: #FFFFFF;
+			padding-top: 180rpx;
+			.content-title{
+				position: absolute;
+				left: 0;
+				top: -53rpx;
+				width: 100%;
+				height: 232rpx;
+				background: url(https://admin-b.caimei365.com/userfiles/1/images/photo/2020/08/alert%402x.png) no-repeat;
+				background-size: contain;
+			}
+			.text-content{
+				width: 100%;
+				min-height: 208rpx;
+				box-sizing: border-box;
+				padding:24rpx;
+				float: left;
+				background-color: #FFFFFF;
+				border-radius:0 0 14rpx 14rpx;
+				.text{
+					letter-spacing: 2rpx;
+					line-height: 50rpx;
+					font-size: $font-size-26;
+					color: $text-color;
+					text-align: justify;
+					margin-bottom: 30rpx;
+				}
+			}
+			.alert-btn{
+				width: 492rpx;
+				height: 88rpx;
+				background: $btn-confirm;
+				line-height: 88rpx;
+				text-align: center;
+				border-radius: 14rpx;
+				color: #FFFFFF;
+				margin-top: 20rpx;
+			}
+		}	
+	}
+</style>

+ 1 - 1
components/cm-module/modelAlert/sellerShareAlert.vue

@@ -90,7 +90,7 @@
 			bottom: 0;
 			top: 0;
 			margin: auto;
-			border-radius: 24rpx;
+			border-radius: 14rpx;
 			.text-content{
 				width: 448rpx;
 				height: 264rpx;

+ 16 - 13
components/cm-module/orderDetails/orderButton.vue

@@ -2,18 +2,16 @@
 	<view class="button-template" :style="{paddingBottom :isIphoneX ? '68rpx' : '0rpx'}">
 		<!-- 底部按钮 -->
 		<view class="button-content">
-			<view class="" v-if="onlinePayFlag == 0">
-				<view class="btn btn-pay" v-if="btnState.isPay" @click.stop="btnConfirm('pay')">付款</view>
-			</view>
+			<view class="btn btn-pay" v-if="btnState.isPay" @click.stop="btnConfirm('pay',order)">付款</view>
 			<view class="btn btn-share" @click.stop="onShareCode">
 				<view class="tips" v-if="shareCode">分享码:{{shareCode}}</view>
 				分享订单
 			</view>
-			<view class="btn btn-confirm" v-if="btnState.isConfirmation" @click.stop="btnConfirm('confirmation')">确认订单</view>
-			<view class="btn btn-cancel" v-if="btnState.isCancel" @click.stop="btnConfirm('cancel')">取消订单</view>
-			<view class="btn btn-delete" v-if="btnState.isDelete" @click.stop="btnConfirm('delete')">删除订单</view>
-			<view class="btn btn-query" v-if="btnState.isQuery" @click.stop="btnConfirm('query')">查看物流</view>
-			<view class="btn btn-confirm" v-if="btnState.isConfirm" @click.stop="btnConfirm('confirm')">确认收货</view>
+			<view class="btn btn-confirm" v-if="btnState.isConfirmation" @click.stop="btnConfirm('confirmation',order)">确认订单</view>
+			<view class="btn btn-cancel" v-if="btnState.isCancel" @click.stop="btnConfirm('cancel',order)">取消订单</view>
+			<view class="btn btn-delete" v-if="btnState.isDelete" @click.stop="btnConfirm('delete',order)">删除订单</view>
+			<view class="btn btn-query" v-if="btnState.isQuery" @click.stop="btnConfirm('query',order)">查看物流</view>
+			<view class="btn btn-confirm" v-if="btnState.isConfirm" @click.stop="btnConfirm('confirm',order)">确认收货</view>
 		</view>
 	</view>
 </template>
@@ -25,12 +23,12 @@
 			status:{
 				type:Number
 			},
+			order: {
+				type:Object
+			},
 			shareCode:{
 				type:String
 			},
-			onlinePayFlag : {
-				type:Number
-			}
 		},
 		watch:{
 			status:{
@@ -97,8 +95,13 @@
 				this.$parent.isShareModal = true
 				this.$emit('shareConfirm')
 			},
-			btnConfirm(type){
-				this.$emit('buttonConfirm',type)
+			btnConfirm(type,order){
+				let data = {
+						type:type,
+						orderId:order.orderID,
+						order:order
+					}
+				this.$emit('buttonConfirm',data)
 			}
 		}
 	}

+ 12 - 16
components/cm-module/orderDetails/orderListButton.vue

@@ -2,15 +2,13 @@
 	<view class="button-template">
 		<!-- 底部按钮 -->
 		<view class="button-content">
-			<view class="" v-if="onlinePayFlag == 0">
-				<view class="btn btn-pay" v-if="btnState.isPay" @click.stop="btnConfirm('pay',orderID)">付款</view>
-			</view>
-			<view class="btn btn-share"  @click.stop="onShareCode(orderID)">分享订单</view>
-			<view class="btn btn-confirm" v-if="btnState.isConfirmation" @click.stop="btnConfirm('confirmation',orderID)">确认订单</view>
-			<view class="btn btn-cancel" v-if="btnState.isCancel" @click.stop="btnConfirm('cancel',orderID)">取消订单</view>
-			<view class="btn btn-delete" v-if="btnState.isDelete" @click.stop="btnConfirm('delete',orderID)">删除订单</view>
-			<view class="btn btn-query" v-if="btnState.isQuery" @click.stop="btnConfirm('query',orderID)">查看物流</view>
-			<view class="btn btn-confirm" v-if="btnState.isConfirm" @click.stop="btnConfirm('confirm',orderID)">确认收货</view>
+			<view class="btn btn-pay" v-if="btnState.isPay" @click.stop="btnConfirm('pay',order)">付款</view>
+			<view class="btn btn-share"  @click.stop="onShareCode(order.orderID)">分享订单</view>
+			<view class="btn btn-confirm" v-if="btnState.isConfirmation" @click.stop="btnConfirm('confirmation',order)">确认订单</view>
+			<view class="btn btn-cancel" v-if="btnState.isCancel" @click.stop="btnConfirm('cancel',order)">取消订单</view>
+			<view class="btn btn-delete" v-if="btnState.isDelete" @click.stop="btnConfirm('delete',order)">删除订单</view>
+			<view class="btn btn-query" v-if="btnState.isQuery" @click.stop="btnConfirm('query',order)">查看物流</view>
+			<view class="btn btn-confirm" v-if="btnState.isConfirm" @click.stop="btnConfirm('confirm',order)">确认收货</view>
 		</view>
 	</view>
 </template>
@@ -22,12 +20,9 @@
 			status: {
 				type:Number
 			},
-			orderID: {
-				type:Number
+			order: {
+				type:Object
 			},
-			onlinePayFlag : {
-				type:Number
-			}
 		},
 		data() {
 			return{
@@ -97,10 +92,11 @@
 				this.$parent.btnoRderID = orderId
 				this.$emit('shareConfirm')
 			},
-			btnConfirm(type,id){
+			btnConfirm(type,order){
 				let data = {
 						type:type,
-						orderId:id
+						orderId:order.orderID,
+						order:order
 					}
 				this.$emit('buttonConfirm',data)
 			}

+ 24 - 6
components/cm-module/orderDetails/sellerDetaileButton.vue

@@ -2,13 +2,14 @@
 	<view class="button-template" :style="{paddingBottom :isIphoneX ? '68rpx' : '0rpx'}">
 		<!-- 底部按钮 -->
 		<view class="button-content">
-			<view class="btn btn-cancel" v-if="btnState.isCancel"  @click.stop="btnConfirm('cancel')">取消订单</view>
-			<view class="btn btn-cancel" v-if="btnState.isDelete"  @click.stop="btnConfirm('delete')">删除订单</view>
+			<view class="btn btn-cancel" v-if="btnState.isCancel"  @click.stop="btnConfirm('cancel',order)">取消订单</view>
+			<view class="btn btn-cancel" v-if="btnState.isDelete"  @click.stop="btnConfirm('delete',order)">删除订单</view>
 			<view class="btn btn-color" @click.stop="onShareCode">
 				<view class="tips" v-if="shareCode">分享码:{{shareCode}}</view>
 				分享订单
 			</view>	
-			<view class="btn btn-color" v-if="btnState.isConfirm" @click.stop="btnConfirm('confirm')">确认订单</view>
+			<view class="btn btn-color" v-if="btnState.isConfirm" @click.stop="btnConfirm('confirm',order)">确认订单</view>
+			<view class="btn btn-color" v-if="btnState.isPay && ableUserMoney > 0 && !rechargeGoods" @click.stop="btnConfirm('balance',order)">余额抵扣</view>
 		</view>
 	</view>
 </template>
@@ -20,6 +21,15 @@
 			status:{
 				type:Number
 			},
+			order: {
+				type:Object
+			},
+			ableUserMoney:{
+				type:Number
+			},
+			rechargeGoods:{
+				type:Boolean
+			},
 			shareCode:{
 				type:String
 			}
@@ -40,10 +50,12 @@
 					{label:'isDelete',val:[6],status: true},
 					{label:'isCancel',val:[0,111],status: true},
 					{label:'isConfirm',val:[0],status: true},
+					{label:'isPay',val:[11,12,13,21,22,23,111],status: true},
 				]
 			}
 		},
 		created(){
+			console.log(this.rechargeGoods);
 			this.initData(this.status)
 		},
 		computed: {
@@ -76,6 +88,7 @@
 						isDelete: false,
 						isCancel: false,
 						isConfirm: false,
+						isPay: false,
 					}
 				return 	btnState
 			},
@@ -86,8 +99,13 @@
 				this.$parent.isShareModal = true
 				this.$emit('shareConfirm')
 			},
-			btnConfirm(type){
-				this.$emit('buttonConfirm',type)
+			btnConfirm(type,order){
+				let data = {
+						type:type,
+						orderId:order.orderID,
+						order:order
+					}
+				this.$emit('buttonConfirm',data)
 			}
 		}
 	}
@@ -132,7 +150,7 @@
 			}
 			.btn-color{
 				background: $btn-confirm;
-				margin: 22rpx 0 22rpx 22rpx;
+				margin: 20rpx 0 20rpx 20rpx;
 				.tips{
 					width: 160rpx;
 					height: 34rpx;

+ 9 - 2
pages.json

@@ -63,7 +63,14 @@
 		},{
 			"path": "pages/goods/goods",
 			"style": {
-				"navigationBarTitleText": "商品列表"
+				"navigationBarTitleText": "商品列表",
+				"enablePullDownRefresh":true
+			}
+		},{
+			"path": "pages/goods/goods-classify",
+			"style": {
+				"navigationBarTitleText": "商品列表",
+				"enablePullDownRefresh":true
 			}
 		},{
 			"path": "pages/goods/product",
@@ -137,7 +144,7 @@
 		},{
 			"path": "pages/user/order/success",
 			"style": {
-				"navigationBarTitleText": "收银台",
+				"navigationBarTitleText": "支付结果",
 				"navigationStyle":"custom"
 			}
 		},{

+ 62 - 0
pages/goods/goods-classify.vue

@@ -0,0 +1,62 @@
+<template>
+	<view class="container all-type-list-wrapper">
+		<product-list ref="childList" :empty-text="emptyText" :serverUrl="serverUrl" :classifyID="classifyID" v-if="isRequest"></product-list>
+	</view>
+</template>
+
+<script>
+	import productList from '@/components/cm-module/listTemplate/classifyProductList'
+	
+	export default{
+		components:{
+			productList
+		},
+		data(){
+			return{
+				serverUrl: '',
+				emptyText: '该分类暂时还没有商品哟,去逛逛别的吧~',
+				lastPageType: '',
+				lastPageVal: '',
+				isRequest:false,
+				classifyID:null
+			}
+		},
+		onLoad(option) {
+			let self = this;
+			self.setServerUrl(option);
+		},
+		methods:{
+			setServerUrl(option) {
+				let self = this;
+				const {type, from: value} = option;
+				this.lastPageType = type;
+				this.lastPageVal = value;
+				uni.setNavigationBarTitle({title:value});
+				uni.getStorage({
+					key: 'commodity_id',
+					success: function (res) {
+					    self.classifyID = res.data;
+						self.isRequest = true
+					}
+				})
+			}
+		},
+		onShow() {
+			let pages = getCurrentPages(),
+				thisPage = pages[pages.length - 1];
+			if(thisPage.refresh) {
+				this.setServerUrl(thisPage.listData);
+			}
+		}
+	}
+</script>
+
+<style lang="scss">
+	page {
+		background: $sub-bg-color;
+		.all-type-list-wrapper {
+			display: flex;
+			flex-direction: column;
+		}
+	}
+</style>

+ 2 - 1
pages/goods/goods.vue

@@ -41,8 +41,9 @@
 						 **/
 						switch(type){
 							case '0':
+								console.log(res)
 								self.typeId = res.data;
-								self.serverUrl = '/search/query/product/classify';
+								self.serverUrl = '/home/classify';
 								self.emptyText = '该分类暂时还没有商品哟,去逛逛别的吧~';
 								break;
 							case '1':	

+ 1 - 2
pages/goods/product.vue

@@ -914,7 +914,6 @@
 				margin-bottom: 24rpx;
 				text-align: left;
 			}
-	
 		}
 		.wrap-seve{
 			float: left;
@@ -967,7 +966,7 @@
 			display: inline-block;
 			float: left;
 			font-size: $font-size-24;
-			color: #D0D0D0;
+			color: #EBEBEB;
 			float: right;
 			padding-right: 48rpx;
 			overflow: hidden;

+ 1 - 1
pages/login/apply.vue

@@ -417,7 +417,7 @@ import { mapMutations } from 'vuex';
 						socialCreditCode:this.socialCreditCode,
 						businessLicenseImage:this.uploadBusinessImage,
 						headpic:this.uploadMentuzImage,
-						firstClubType:this.isOrganizationType,  //机构类型分类 医美:0和生美:1
+						firstClubType:this.isOrganizationType,  //机构类型分类 医美:1和生美:2
 						secondClubType:this.secondClubType,		//机构类型二级分类 诊所:1,门诊:2,医院:3
 						department:this.department,				//科室
 						medicalPracticeLicenseImg:this.uploadMedicalImage,//资质图片

+ 1 - 2
pages/login/information.vue

@@ -270,7 +270,6 @@
 				clubContact:'',	 			//联系人
 				mobile:'',					//联系人手机号
 				socialCreditCode:'',	//统一社会信用代码
-				isAgreed:1,				//是否勾选协议
 				isDisabled:true,
 				isShowInput:true,
 				textareaFocus:false,
@@ -427,6 +426,7 @@
 							name:this.clubName,
 							linkMan1:this.clubContact,
 							sname:this.abbreviation,
+							contractEmail1:this.email,
 							provinceID:this.addressData.provinceID,
 							cityID:this.addressData.cityID,
 							townID:this.addressData.townID,
@@ -438,7 +438,6 @@
 							secondClubType:this.secondClubType,		//机构类型二级分类 诊所:1,门诊:2,医院:3
 							department:this.department,				//科室
 							medicalPracticeLicenseImg:this.uploadMedicalImage,//资质图片
-							isAgreed:this.isAgreed,				//是否勾选协议	
 							mainpro:this.mainpro,
 							fax:this.clubFax,
 							contractPhone:this.clubTelePhone,

+ 15 - 6
pages/tabBar/home/home.vue

@@ -6,7 +6,7 @@
 		<view class="container-home tui-skeleton">
 			<view class="swiper-banner-box" >
 				<swiper class="tui-banner-swiper tui-banner tui-skeleton-fillet" :autoplay="true" :interval="5000" :duration="500"  @change="swiperChange" :circular="true">
-					<swiper-item v-for="(item,index) in bannerImageList" :key="index" @click.stop="handleBannerActivity(item,index)">
+					<swiper-item v-for="(item,index) in bannerImageList" :key="index">
 						<image :src="item" class="tui-slide-image" mode="scaleToFill"/>
 					</swiper-item>
 				</swiper>
@@ -21,7 +21,7 @@
 			<view class="cate-section clearfix">
 				<!-- 自定义分类导航栏 -->
 				<view class="tabbar clearfix">
-					<view class="cate-item" v-for="(nav,idx) in productsClassifyList" :key="idx" @click.stop="navToListPage(nav)">
+					<view class="cate-item" v-for="(nav,idx) in productsClassifyList" :key="idx" @click.stop="navigateToGoods(nav)">
 						<image class="tui-skeleton-circular" :src="nav.classifyImage"></image>
 						<text class="tui-skeleton-fillet">{{nav.classifyName}}</text>
 					</view>
@@ -138,7 +138,7 @@
 			</view>	
 		</view>
 		<!-- 活动弹窗 -->
-		<activityAlert :show="isActivity" @click="handleClick" @cancel="handleCancelClick"></activityAlert>
+		<!-- <activityAlert :show="isActivity" @click="handleClick" @cancel="handleCancelClick"></activityAlert> -->
 		<!-- 透明模态层 -->
 		<modal-layer v-if='modallayer'></modal-layer>
 	</view>
@@ -298,8 +298,7 @@
 			handleCancelClick(data){
 				this.$store.commit('setActivity',data)
 			},
-			//分类导航跳转
-			navToListPage(nav){
+			navToListPage(nav){//三个分类模块跳转
 				let self = this;
 				uni.setStorage({
 					key: 'commodity_id',
@@ -309,6 +308,16 @@
 					}
 				})
 			},
+			navigateToGoods(nav){//分类导航跳转
+				let self = this;
+				uni.setStorage({
+					key: 'commodity_id',
+					data: nav.id,
+					success: function () {
+						self.$api.navigateToGoods({type:'0',value:nav.classifyName,id:nav.id});
+					}
+				})
+			},
 			navToDetailPage(id) {//跳转商品详情页
 				this.modallayer = true;
 				this.$api.navigateTo(`/pages/goods/product?id=${id}`)
@@ -318,7 +327,7 @@
 				console.log(e.detail.query)
 			},
 			showTost(){
-				this.$util.msg("正在开发中,敬请期待~",2000)
+				this.$util.msg("功能开发中,敬请期待~",2000)
 				// this.$api.navigateTo(`/seller/pages/login/login`)
 				// uni.navigateToMiniProgram({
 				// 	appId: 'wx5a5cda32926f55ac',

+ 3 - 1
pages/user/order/create-order.vue

@@ -20,7 +20,7 @@
 		</freight>
 		<freight-alert v-if="isfreightTip" ref="csPhone"></freight-alert>
 		<!-- 余额抵扣 -->
-		<view class="invoice-balance">
+		<view class="invoice-balance" v-show="!rechargeGoods">
 			<view class="balabce-t">
 				<view class="balabce-t-le">余额抵扣</view>
 				<view class="balabce-t-ri">
@@ -111,6 +111,7 @@
 				freightData:{},			  //邮费数据
 				orderInfo:[],			  //提交的商品信息
 				payInfo:{},				  //订单信息
+				rechargeGoods:null,		  //判断订单里有定金商品或者充值商品时,余额抵扣部分不显示
 				isIphoneX:this.$store.state.isIphoneX
 			}
 		},
@@ -141,6 +142,7 @@
 					this.isRequest = true
 					this.goodsData = resData.shopList
 					this.userMoney = resData.userMoney
+					this.rechargeGoods = resData.rechargeGoods
 				}).catch(error =>{
 					this.$util.msg(error.msg,2000)
 				})

+ 71 - 4
pages/user/order/order-details.vue

@@ -22,10 +22,17 @@
 						  v-if= "isRequest" 
 						  :status= "btnStatus" 
 						  :shareCode= "shareCode"
-						  :onlinePayFlag="onlinePayFlag"
+						  :order="orderInfo" 
 						   @buttonConfirm="handButtonConfirm">
 			</order-button>
 		</view>
+		<!-- 付款弹窗 -->
+		<order-model v-if="isPayModel" 
+					:payModelData="payModelData" 
+					:modelType='modelType' 
+					@cancelConfirm = "hanldCancelConfirm"
+					@paymentConfirm ='hanldPaymentConfirm'/>
+		<!-- 分享弹窗 -->			
 		<share-alert  :orderID="orderID" 
 					  v-if="isShareModal"  
 					  @shareConfirm ='onShareAppMessage'>
@@ -44,6 +51,7 @@
 	import refundRecord from '@/components/cm-module/orderDetails/refundRecord'		 //退款记录
 	import orderButton from '@/components/cm-module/orderDetails/orderButton'			 //底部按钮
 	import shareAlert from '@/components/cm-module/modelAlert/shareAlert.vue'			 //分享弹窗
+	import orderModel from '@/components/cm-module/modelAlert/order-alert'			 //付款弹窗
 	import { queryOrderDetails,cancelOrder,deleteOrder,confirmReceipt,affirmOrder } from "@/api/order.js" 
 	export default {
 		components:{
@@ -57,6 +65,7 @@
 			refundRecord,
 			orderButton,
 			shareAlert,
+			orderModel
 		},
 		data() {
 			return {
@@ -72,6 +81,11 @@
 				isRequest:false,			//是否加载完成渲染子组件
 				isOrderShare:false,
 				isShareModal:false,
+				isPayModel:false,
+				modelType:0,
+				orderInfo:{},
+				alertOrderInfo:{},
+				payModelData:{},
 				addressData:{},				//地址信息初始化
 				information:{},				//订单信息初始化
 				shopOrderData:{},			//商品信息初始化
@@ -111,12 +125,14 @@
 				queryOrderDetails({ orderID : this.orderID }).then(response =>{
 					let resData = response.data;
 					this.isRequest = true
+					this.orderInfo = resData.order
 					this.userID = resData.order.userID
 					this.shareCode = resData.shareCode
 					this.addressData = resData.userInfo
 					this.information = resData.order
 					this.btnStatus = resData.order.status
 					this.payStatus = resData.order.payStatus
+					this.payableAmount = resData.order.payableAmount
 					this.shopOrderData = resData.shopOrderList
 					this.orderInvoice = resData.orderInvoice
 					this.onlinePayFlag = resData.order.onlinePayFlag
@@ -133,8 +149,8 @@
 			handButtonConfirm(data){//监听点击时间的按钮类型并执行...
 				this.handShowAlert(data)
 			},
-			handShowAlert(type){//判断点击的按钮类型并执行...
-				switch(type){
+			handShowAlert(data){//判断点击的按钮类型并执行...
+				switch(data.type){
 					case 'delete':
 						this.handOrderDetele();
 						break
@@ -148,13 +164,64 @@
 						this.handOrderConfirm()
 						break
 					case 'pay':
-						this.$api.navigateTo(`/pages/user/order/order-payment?type=payfirm&orderID=${this.orderID}`)
+						this.getOrderPaymentValidation(data)
 						break
 					case 'confirmation':
 						this.handOrderConfirmation()
 						break
 				}
 			},
+			getOrderPaymentValidation(data){//监听根据付款状态做操作
+				this.OrderService.OrderPaymentValidation({orderId:data.orderId}).then(response =>{
+					let dataCode = response.data.code
+					this.payModelData = response.data
+					switch(dataCode){
+						case 1:
+							this.isPayModel = true;
+							this.modelType = 1
+							break;
+						case 2:
+							this.isPayModel = true;
+							this.modelType = 2
+							break;
+						case -1:
+							this.$util.modal('','订单已申请全部退款,无需再付款!','确定','',false,() =>{})
+							break;
+						default:
+							if(response.data.onlinePayFlag == '1'){
+								this.$api.navigateTo(`/pages/user/order/order-payment?type=onlinePay&Amount=${response.data.pendingPayments}&orderID=${data.orderId}`)
+							}else{
+								this.$api.navigateTo(`/pages/user/order/order-payment?type=payfirm&orderID=${data.orderId}`)
+							}
+					}
+					
+				}).catch(error =>{
+					this.$util.msg(error.msg,2000)
+				})	
+			},
+			hanldPaymentConfirm(data){//余额抵扣跳转
+				this.OrderService.OrderBalanceDeduction({orderId:data.order.orderId}).then(response =>{
+					if(data.type === 2){
+						let _data = {orderID:data.order.orderId}
+						this.$api.navigateTo(`/pages/user/order/success?type=deduction&data=${JSON.stringify({data:_data})}`)
+					}else{
+						if(data.order.onlinePayFlag === '1'){
+							this.$api.navigateTo(`/pages/user/order/order-payment?type=onlinePay&Amount=${data.order.pendingPayments}&orderID=${data.order.orderId}`)
+						}else{
+							this.$api.navigateTo(`/pages/user/order/order-payment?type=payfirm&orderID=${data.order.orderId}`)
+						}
+					}
+				}).catch(error =>{
+					this.$util.msg(error.msg,2000)
+				})	
+			},
+			hanldCancelConfirm(data){//不使用余额抵扣直接跳转收银台
+				if(data.onlinePayFlag == '1'){
+					this.$api.navigateTo(`/pages/user/order/order-payment?type=onlinePay&Amount=${this.orderInfo.pendingPayments}&orderID=${data.orderId}`)
+				}else{
+					this.$api.navigateTo(`/pages/user/order/order-payment?type=payfirm&orderID=${data.orderId}`)
+				}
+			},
 			handOrderConfirm(){//确认收货
 				this.$util.modal('提示','是否确认收货','确定','取消',true,() =>{
 					confirmReceipt({orderID:this.orderID}).then(response =>{

+ 68 - 8
pages/user/order/order-list.vue

@@ -65,8 +65,7 @@
 								<!-- 底部button -->
 								<order-button ref="orderButton" 
 											  :status="order.status" 
-											  :orderID="order.orderID" 
-											  :onlinePayFlag = "order.onlinePayFlag"
+											  :order="order" 
 											  @buttonConfirm="handButtonConfirm">
 								</order-button>
 							</view>
@@ -79,11 +78,14 @@
 				</scroll-view>
 			</swiper-item>
 		</swiper>
+		<!-- 付款弹窗 -->
+		<order-model v-if="isPayModel" 
+					:payModelData="payModelData" 
+					:modelType='modelType' 
+					@cancelConfirm = "hanldCancelConfirm"
+					@paymentConfirm ='hanldPaymentConfirm'/>
 		<!-- 分享弹窗 -->
-		<share-alert   v-if="isShareModal"
-					   :orderID="btnoRderID" 
-					   @shareConfirm ='onShareAppMessage'>
-		</share-alert>
+		<share-alert   v-if="isShareModal" :orderID="btnoRderID" @shareConfirm ='onShareAppMessage' />
 		<!-- 透明模态层 -->
 		<modal-layer v-if='isModalLayer'></modal-layer>
 	</view>
@@ -100,6 +102,7 @@
 	import modalLayer from "@/components/modal-layer"
 	import empty from "@/components/empty";
 	import shareAlert from '@/components/cm-module/modelAlert/shareAlert'			 //分享弹窗
+	import orderModel from '@/components/cm-module/modelAlert/order-alert'			 //付款弹窗
 	import { queryOrderList,cancelOrder,deleteOrder,confirmReceipt, affirmOrder } from "@/api/order.js" 
 	
 	export default {
@@ -113,7 +116,8 @@
 			orderButton,
 			tuiSkeleton,
 			modalLayer,
-			shareAlert
+			shareAlert,
+			orderModel
 		},
 		data() {
 			return {
@@ -146,11 +150,15 @@
 				isClickChange: false,
 				isShareModal: false,//控制分享弹窗
 				isModalLayer: false,
+				isPayModel:false,
 				loadding: false,
 				pullUpOn: true,
 				hasNextPage: false,
 				pullFlag: true,
 				navbarHeight:'',
+				payModelData:{},
+				hanldOrderData:{},
+				modelType:0,
 				nomoreText: '上拉显示更多',
 			}
 		},
@@ -311,13 +319,65 @@
 						this.handOrderConfirm(data.orderId);
 						break
 					case 'pay':
-						this.$api.navigateTo(`/pages/user/order/order-payment?type=payfirm&orderID=${data.orderId}`)
+						this.hanldOrderData = data.order;
+						this.getOrderPaymentValidation(data)
 						break
 					case 'confirmation':
 						this.handOrderConfirmation(data.orderId);
 						break
 				}
 			},
+			getOrderPaymentValidation(data){//监听根据付款状态做操作
+				this.OrderService.OrderPaymentValidation({orderId:data.orderId}).then(response =>{
+					let dataCode = response.data.code
+					this.payModelData = response.data
+					switch(dataCode){
+						case 1:
+							this.isPayModel = true;
+							this.modelType = 1
+							break;
+						case 2:
+							this.isPayModel = true;
+							this.modelType = 2
+							break;
+						case -1:
+							this.$util.modal('','订单已申请全部退款,无需再付款!','确定','',false,() =>{})
+							break;
+						default:
+							if(response.data.onlinePayFlag == '1'){
+								this.$api.navigateTo(`/pages/user/order/order-payment?type=onlinePay&Amount=${response.data.pendingPayments}&orderID=${data.orderId}`)
+							}else{
+								this.$api.navigateTo(`/pages/user/order/order-payment?type=payfirm&orderID=${data.orderId}`)
+							}
+					}
+					
+				}).catch(error =>{
+					this.$util.msg(error.msg,2000)
+				})	
+			},
+			hanldPaymentConfirm(data){//余额抵扣跳转
+				this.OrderService.OrderBalanceDeduction({orderId:data.order.orderId}).then(response =>{
+					if(data.type === 2){
+						let _data = {orderID:data.order.orderId}
+						this.$api.navigateTo(`/pages/user/order/success?type=deduction&data=${JSON.stringify({data:_data})}`)
+					}else{
+						if(data.order.onlinePayFlag === '1'){
+							this.$api.navigateTo(`/pages/user/order/order-payment?type=onlinePay&Amount=${data.order.pendingPayments}&orderID=${data.order.orderId}`)
+						}else{
+							this.$api.navigateTo(`/pages/user/order/order-payment?type=payfirm&orderID=${data.order.orderId}`)
+						}
+					}
+				}).catch(error =>{
+					this.$util.msg(error.msg,2000)
+				})	
+			},
+			hanldCancelConfirm(data){//不使用余额抵扣直接跳转收银台
+				if(data.onlinePayFlag == '1'){
+					this.$api.navigateTo(`/pages/user/order/order-payment?type=onlinePay&Amount=${this.hanldOrderData.pendingPayments}&orderID=${data.orderId}`)
+				}else{
+					this.$api.navigateTo(`/pages/user/order/order-payment?type=payfirm&orderID=${data.orderId}`)
+				}
+			},
 			handOrderConfirm (id){//确认收货
 				this.$util.modal('提示','是否确认收货','确定','取消',true,() =>{
 					confirmReceipt({orderID:id}).then(response =>{

+ 29 - 8
pages/user/order/order-payment.vue

@@ -2,7 +2,7 @@
 	<view class="container cashier" :style="{paddingTop:CustomBar+'px'}">
 		<cu-custom :navbar-data='nvabarData' @navigateBack="hanldNavigateBack"></cu-custom>
 		<view class="container-cash clearfix" v-if="invoiceStatus">
-			<view class="pay-bring-title">本次交易暂不支持线上支付,请使用线下转账方式付款</view>
+			<view class="pay-bring-title">{{payBringTitle}}</view>
 			<view class="container-wrapper">
 				<view class="pay-content">
 					<view class="pay-p"><text>待付金额</text></view>
@@ -121,7 +121,9 @@
 				btnColor:'#09BB07',
 				receiptStatus:'',
 				invoiceStatus:false,
+				optionType:'',
 				onlinePayFlag:'',
+				payBringTitle:'本次交易暂不支持线上支付,请使用线下转账方式付款',
 				payStatusText:'使用微信和企业网银支付全部金额后,供应商会在24小时后发货(周末、节假日顺延)。若着急发货,可以选择使用线下转账进行付款。'
 			}
 		},
@@ -153,26 +155,45 @@
 		},
 		methods:{
 			initData(e){
+				this.orderID = e.orderID;
+				this.payOrderId ='#'+e.orderID+'#';
+				this.optionType = e.type;
 				switch(e.type){
 					case 'confirm':
 						this.nvabarData.haveBack = false
 						this.nvabarData.haveHome = true
 						this.nvabarData.title = '支付'
+						this.PayOrderCheckoutCounter(this.orderID)
 						break;
 					case 'payfirm':
 						this.nvabarData.haveBack = true
 						this.nvabarData.haveHome = false
 						this.nvabarData.title = '选择支付方式'
+						this.PayOrderCheckoutCounter(this.orderID)
+						break;
+					case 'onlinePay':
+						this.invoiceStatus = true
+						this.nvabarData.haveBack = true
+						this.nvabarData.haveHome = false
+						this.nvabarData.title = '付款提示'
+						this.payableAmount = e.Amount
+						// this.PayOrderCheckoutCounter(this.orderID)
+						this.payBringTitle = '您已通过线下转账的方式支付了订单部分款项,剩余款项依然需要使用线下转账方式,给您带来的不便敬请谅解'
 						break;
 				}
-				this.orderID = e.orderID
-				this.payOrderId ='#'+e.orderID+'#';
-				this.PayService.PayOrderCheckoutCounter({orderId:this.orderID}).then(response =>{
+			},
+			PayOrderCheckoutCounter(orderId){
+				this.PayService.PayOrderCheckoutCounter({orderId:orderId}).then(response =>{
 					let data = response.data.order
 					this.payableAmount = data.payableAmount - data.receiptAmount  //待付金额
 					this.receiptStatus =  data.receiptStatus
-					this.invoiceStatus = data.invoiceStatus
 					this.onlinePayFlag = data.onlinePayFlag
+					//判断线上线下显示
+					if(this.optionType == 'onlinePay'){
+						this.invoiceStatus = true
+					}else{
+						this.invoiceStatus = data.invoiceStatus
+					}
 					if(data.receiptAmount>0){
 						this.payStatusText = '使用微信和企业网银支付全部金额后,供应商会在24小时后发货(周末、节假日顺延)。'
 						this.isReceiptStatus = false
@@ -247,9 +268,9 @@
 		.pay-bring-title{
 			box-sizing: border-box;
 			width: 100%;
-			height: 96rpx;
-			padding: 0 24rpx;
-			line-height: 96rpx;
+			min-height: 96rpx;
+			padding: 20rpx 24rpx;
+			line-height: 48rpx;
 			text-align: left;
 			font-size: $font-size-24;
 			background:rgba(255,234,221,1);

+ 2 - 1
pages/user/order/order-sharelogin.vue

@@ -80,12 +80,13 @@
 						}else if(response.code === -2){
 							this.$util.modal('提示',response.msg,'确定','',false,() =>{})
 						}else{
+							console.log(response.msg);
 							this.getOrderCommodityData()
 						}
 					})
 				})
 			},
-			getOrderCommodityData(){
+			getOrderCommodityData(){//查询订单商品信息s
 				this.OrderService.OrderCommodityData({orderId:this.orderID}).then(response =>{
 					this.productList = response.data
 					this.isShareStatus = true

+ 8 - 2
pages/user/order/success.vue

@@ -7,7 +7,7 @@
 					<image src="https://admin-b.caimei365.com/userfiles/1/images/photo/2020/05/%E8%AE%A2%E5%8D%95%E6%94%AF%E4%BB%98%E6%88%90%E5%8A%9F%402x.png" mode=""></image>
 				</view>
 				<view class="cash-text">
-					<text>订单提交并支付成功</text>
+					<text>{{ successText }}</text>
 				</view>
 				<view class="cash-btn">
 					<view class="btn btn-open" @click="this.$api.navigateTo('/pages/user/order/order-details?type=confim&orderID='+orderID)">查看订单</view>
@@ -27,15 +27,21 @@
 					haveBack:false,
 					showCapsule:1, // 是否显示左上角图标  1表示显示  0表示不显示,
 					showSearch: 0,
-					title: '收银台',  // 导航栏 中间的标题
+					title: '支付结果',  // 导航栏 中间的标题
 					textLeft:this.$store.state.isIphone
 				},
+				successText:'订单提交并支付成功',
 				isIphoneX:this.$store.state.isIphoneX,
 				CustomBar:this.CustomBar,// 顶部导航栏高度
 				
 			}
 		},
 		onLoad(option) {
+			if(option.type == 'deduction'){
+				this.successText = '支付成功'
+			}else{
+				this.successText = '订单提交并支付成功'
+			}
 			this.initData(option)
 		},
 		methods:{

+ 1 - 1
seller/pages/cart/cart.vue

@@ -822,7 +822,7 @@
 							font-weight: bold;
 						}
 						.btn-input{
-							width: 100rpx;
+							width: 90rpx;
 							height: 48rpx;
 							line-height: 48rpx;
 							background: #F8F8F8;

+ 1 - 1
seller/pages/club/allClub-list.vue

@@ -28,7 +28,7 @@
 						<view class="list-left">
 							<view class="list-head"><image :src="item.headpic ? item.headpic : '../../../static/temp/icon-club@3x.png'" mode=""></image></view>
 							<view class="list-tel">
-								<text class="txt">{{item.name}}</text>
+								<text class="txt">{{item.name == null ? item.username : item.name}}</text>
 								<text class="txt sm">
 									<text class="txt-le">{{checkData(item.linkMan1)  ? desensitizationName(item.linkMan1) : ''}}</text>
 									{{item.contractMobile1 ? hidePhone(item.contractMobile1) : ''}}

+ 1 - 1
seller/pages/club/club-list.vue

@@ -9,7 +9,7 @@
 					   v-model="searchInputVal" 
 					    @input="onShowClose" 
 					   @confirm="initclubList()" 
-					   placeholder="请输入机构名称搜索" 
+					   placeholder="机构名称/联系人" 
 					   maxlength="12"/>
 				<text class="iconfont icon-shanchu1" v-if="isShowClose" @click="delInputText()"></text>
 			</view>

+ 1 - 1
seller/pages/club/list.vue

@@ -10,7 +10,7 @@
 						   v-model="searchInputVal" 
 						   @input="onShowClose" 
 						   @confirm="initclubList()" 
-						   placeholder="请输入机构名称" 
+						   placeholder="机构名称/联系人" 
 						   maxlength="16"/>
 					<text class="iconfont icon-shanchu1" v-if="isShowClose" @click="delInputText()"></text>
 				</view>

+ 3 - 1
seller/pages/order/create-order.vue

@@ -21,7 +21,7 @@
 		</seller-freight>
 		<freight-alert v-if="isfreightTip" ref="csPhone"></freight-alert>
 		<!-- 余额抵扣 -->
-		<view class="invoice-balance">
+		<view class="invoice-balance" v-if="!rechargeGoods">
 			<view class="balabce-t">
 				<view class="balabce-t-le">余额抵扣</view>
 				<view class="balabce-t-ri">
@@ -111,6 +111,7 @@
 				freightData:{},			  //邮费数据
 				orderInfo:[],			  //提交的商品信息
 				payInfo:{},				  //订单信息
+				rechargeGoods:false,
 				isIphoneX:this.$store.state.isIphoneX
 			}
 		},
@@ -156,6 +157,7 @@
 						this.isRequest = true
 						this.goodsData = resData.shopList
 						this.userMoney = resData.userMoney
+						this.rechargeGoods = resData.rechargeGoods
 					}).catch(error =>{
 						this.$util.msg(error.msg,2000)
 					})

+ 55 - 7
seller/pages/order/order-details.vue

@@ -21,10 +21,19 @@
 			<order-button ref="orderButton" 
 						  v-if= "isRequest" 
 						  :status= "btnStatus" 
+						  :order="information" 
+						  :rechargeGoods = "rechargeGoods"
+						  :ableUserMoney = "ableUserMoney"
 						  :shareCode= "shareCode"
 						   @buttonConfirm="handButtonConfirm">
 			</order-button>
 		</view>
+		<!-- 付款弹窗 -->
+		<order-model v-if="isPayModel" 
+					:payModelData="payModelData" 
+					:modelType='modelType' 
+					@paymentConfirm ='hanldPaymentConfirm'/>
+		<!-- 分享弹窗 -->			
 		<share-alert  :orderID="orderID" 
 					  v-if="isShareModal"  
 					  @shareConfirm ='onShareAppMessage'>
@@ -43,6 +52,7 @@
 	import refundRecord from '@/components/cm-module/orderDetails/refundRecord'		 //退款记录
 	import orderButton from '@/components/cm-module/orderDetails/sellerDetaileButton'	 //底部按钮
 	import shareAlert from '@/components/cm-module/modelAlert/sellerShareAlert.vue'			 //分享弹窗
+	import orderModel from '@/components/cm-module/modelAlert/order-alert'			 //付款弹窗
 	import { queryOrderDetails,cancelOrder,deleteOrder,affirmOrder } from "@/api/order.js" 
 	export default {
 		components:{
@@ -56,6 +66,7 @@
 			refundRecord,
 			orderButton,
 			shareAlert,
+			orderModel
 		},
 		data() {
 			return {
@@ -71,6 +82,10 @@
 				isRequest:false,			//是否加载完成渲染子组件
 				isOrderShare:false,
 				isShareModal:false,
+				isPayModel:false,
+				modelType:0,
+				ableUserMoney:'',			//机构余额
+				payModelData:{},
 				addressData:{},				//地址信息初始化
 				information:{},				//订单信息初始化
 				shopOrderData:{},			//商品信息初始化
@@ -80,6 +95,7 @@
 				receiptAmount:0,			//支付金额
 				returnedPurchaseFee:0,		//退款金额
 				navbarHeight:'',
+				rechargeGoods:false,
 				headerBtnPosi:	this.setHeaderBtnPosi(), //获取设备顶部胶囊高度
 				systeminfo: this.setSysteminfo(),		 //获取设备信息
 				isIphoneX:this.$store.state.isIphoneX,
@@ -110,6 +126,7 @@
 				queryOrderDetails({ orderID : this.orderID }).then(response =>{
 					let resData = response.data;
 					this.isRequest = true
+					this.rechargeGoods = resData.rechargeGoods
 					this.userID = resData.order.userID
 					this.shareCode = resData.shareCode
 					this.addressData = resData.userInfo
@@ -122,6 +139,7 @@
 					this.discernReceiptList = resData.discernReceiptList
 					this.receiptAmount = resData.order.receiptAmount
 					this.returnedPurchaseFee = resData.order.returnedPurchaseFee
+					this.ableUserMoney = resData.ableUserMoney
 				}).catch(error =>{
 					this.$util.modal('提示','订单查询失败,请稍后重试~','确定','',false,() =>{
 						this.$api.switchTabTo('/seller/pages/index/index')
@@ -131,20 +149,23 @@
 			handButtonConfirm(data){//监听点击时间的按钮类型并执行...
 				this.handShowAlert(data)
 			},
-			handShowAlert(type){//判断点击的按钮类型并执行...
-				switch(type){
+			handShowAlert(data){//判断点击的按钮类型并执行...
+				switch(data.type){
 					case 'delete':
 						this.handOrderDetele();
-						break
+						break;
 					case 'cancel':
 						this.handCenceConfirm();
-						break
+						break;
 					case 'confirm':
-						this.handOrderConfirm()
-						break
+						this.handOrderConfirm(data)
+						break;
+					case 'balance':
+						this.getOrderPaymentValidation(data)
+						break;
 				}
 			},
-			handOrderConfirm(){//确认订单
+			handOrderConfirm(data){//确认订单
 				this.$util.modal('提示','确认此订单?','确定','取消',true,() =>{
 					affirmOrder({orderID:this.orderID}).then(response =>{
 						this.$util.msg(response.msg,2000,true,'success');
@@ -154,6 +175,33 @@
 					})
 				})
 			},
+			hanldPaymentConfirm(data){//监听余额抵扣按钮
+				switch(data.type){
+					case 3:
+						this.OrderService.OrderBalanceDeduction({orderId:this.orderID}).then(response =>{
+							this.$util.msg('余额抵扣成功',2000)
+							this.initOrderDetaileData()
+						}).catch(error =>{
+							this.$util.msg(error.msg,2000)
+						})	
+						break;
+				}
+			},
+			getOrderPaymentValidation(data){//监听根据付款状态做操作
+				this.OrderService.OrderPaymentValidation({orderId:data.orderId}).then(response =>{
+					let dataCode = response.data.code
+					this.payModelData = response.data
+					if(dataCode == -1){
+						this.$util.modal('','订单已申请全部退款,无需再付款!','确定','',false,() =>{})
+					}else{
+						this.isPayModel = true;
+						this.modelType = 3
+					}
+				}).catch(error =>{
+					this.$util.msg(error.msg,2000)
+				})	
+			},
+			
 			handOrderDetele(){//删除订单
 				this.$util.modal('提示','确认删除该订单吗?','确定','取消',true,() =>{
 					deleteOrder({orderID:this.orderID}).then(response =>{

+ 1 - 1
seller/pages/order/order-historylist.vue

@@ -69,6 +69,7 @@
 								<order-button ref="orderButton" 
 											  :status="order.status" 
 											  :orderID="order.orderID" 
+											  :userID = "order.userID"
 											  @buttonConfirm="handButtonConfirm">
 								</order-button>
 							</view>
@@ -84,7 +85,6 @@
 		<!-- 分享弹窗 -->
 		<share-alert   v-if="isShareModal"
 					   :orderID="btnoRderID" 
-					   :clubUserID = btnClubUserID
 					   @shareConfirm ='onShareAppMessage'>
 		</share-alert>
 		<!-- 透明模态层 -->

+ 1 - 2
seller/pages/order/order-list.vue

@@ -77,6 +77,7 @@
 								<order-button ref="orderButton" 
 											  :status="order.status" 
 											  :orderID="order.orderID" 
+											  :userID = "order.userID"
 											  @buttonConfirm="handButtonConfirm">
 								</order-button>
 							</view>
@@ -92,7 +93,6 @@
 		<!-- 分享弹窗 -->
 		<share-alert   v-if="isShareModal"
 					   :orderID="btnoRderID" 
-					   :clubUserID = btnClubUserID
 					   @shareConfirm ='onShareAppMessage'>
 		</share-alert>
 		<!-- 透明模态层 -->
@@ -220,7 +220,6 @@
 				}
 			},
 			onClickScreenTab(index){
-				console.log(index)
 				this.screenTab = index
 				this.pageNum = 1
 				this.pullUpOn = true //切换时隐藏

+ 11 - 11
seller/pages/search/search-order.vue

@@ -5,7 +5,7 @@
 			<view class="search">
 				<view class="search-input">
 					<text class="iconfont icon-iconfonticonfontsousuo1"></text>
-					<input maxlength="20" focus type="text" value="" confirm-type="search" @focus="onFocus" @input="onShowClose" @confirm="subMitSearch()" placeholder="请输入订单编号" v-model.trim="searchInputVal"/>
+					<input maxlength="20" focus type="text" value="" confirm-type="search" @focus="onFocus" @input="onShowClose" @confirm="subMitSearch()" placeholder="请输入商品关键词" v-model.trim="searchInputVal"/>
 					<text class="iconfont icon-shanchu1" v-if="isShowClose" @click="delInputText()"></text>
 				</view>
 				<view class="search-btn" @click="subMitSearch()">搜索</view>
@@ -30,7 +30,7 @@
 					<view v-else class="tui-order-content">
 						<view  class="tui-order-item" v-for="(order,orderIndex) in orderList" :key="orderIndex" @click.stop="detail(order.orderID)">
 							<view class="order-title">
-								<view class="order-title-name">这里是机构的名称</view>
+								<view class="order-title-name">{{order.clubName}}</view>
 								<view class="order-title-t">
 									<text class="bage-buss tui-skeleton-fillet" v-if="order.orderSubmitType == 3 || order.orderSubmitType == 4">协销</text>
 									<text class="bage-auto tui-skeleton-fillet" v-if="order.orderSubmitType == 0 || order.orderSubmitType == 1 || order.orderSubmitType == 2">自主</text>
@@ -154,7 +154,7 @@
 			}
 		},
 		onLoad() {
-		  // this.initGetSerachRecord()
+		  this.initGetSerachRecord()
 		},
 		methods:{
 			subMitSearch() {
@@ -166,7 +166,7 @@
 				}
 			},
 			initGetSerachRecord(){
-				this.$api.getStorage().then((resolve) =>{
+				this.$api.getComStorage('userInfo').then((resolve) =>{
 					this.userID = resolve.userID
 					searchOrderHistory({userId:this.userID}).then(response =>{
 						this.serachRecordList = response.data
@@ -185,14 +185,14 @@
 			},
 			onFocus () { //输入框获取焦点时触发
 				this.inputEmpty(this.searchInputVal)
-				// this.initGetSerachRecord()
+				this.initGetSerachRecord()
 			},
 			delInputText () { //清除输入框内容
 				this.searchInputVal = ''
 				this.isShowClose = false
 				this.isShowWrapper = false
 				this.inputEmpty(this.searchInputVal)
-				// this.initGetSerachRecord()
+				this.initGetSerachRecord()
 			},
 			keywordsClick (item) {	//关键词搜索与历史搜索
 				this.searchInputVal = item;
@@ -220,14 +220,14 @@
 			getOrderDatainit(index,source){
 				/**
 				 * @订单初始化加载  仅加载第一页码
-				 * @param:orderNo(订单号)
+				 * @param:searchWord(关键词)
 				 * @param:serviceProviderId(用户ID)
 				 * @param:pageNum(页码数)
 				 * @param:pageSize(每页条数)
 				 * @param:organizeID(全局变量组织ID)
 				 */ 
-				let params = {orderNo:this.searchInputVal,serviceProviderId:this.serviceProviderId,pageNum:1,pageSize:this.pageSize};
-				getSellerOrderList(params).then(response =>{
+				let params = {searchWord:this.searchInputVal,userId:this.userID,pageNum:1,pageSize:this.pageSize};
+				this.SellerService.getSellerOrderList(params).then(response =>{
 					this.isShowWrapper = true
 					this.showSkeleton = true
 					const _responseData = response.data.results;
@@ -263,8 +263,8 @@
 			}, 
 			getOnReachBottomData(index){//上拉加载
 				this.pageNum+=1
-				let params = {orderNo:this.searchInputVal,serviceProviderId:this.serviceProviderId,pageNum:this.pageNum,pageSize:this.pageSize}
-				getSellerOrderList(params).then(response =>{
+				let params = {searchWord:this.searchInputVal,userId:this.userID,pageNum:this.pageNum,pageSize:this.pageSize}
+				this.SellerService.getSellerOrderList(params).then(response =>{
 					let resData = response.data.results
 					this.hasNextPage = response.data.hasNextPage;
 					this.orderList = this.orderList.concat(resData)

+ 3 - 3
services/ajax.env.js

@@ -2,9 +2,9 @@ let URL_CONFIG = ""
 if(process.env.NODE_ENV === 'development'){
     // 开发环境
 	// URL_CONFIG = 'http://192.168.1.33:8008'	 //俊俊联调地址
-	// URL_CONFIG = 'http://192.168.1.40:8008'	 //裴裴联调地址
-	// URL_CONFIG = 'http://192.168.1.20:8008'	 //超超联调地址
-    URL_CONFIG = 'https://spi-b.caimei365.com'	 //采美测试地址
+	URL_CONFIG = 'http://192.168.2.67:8008'		 //裴裴联调地址
+	// URL_CONFIG = 'http://192.168.1.10:8008'	 //超超联调地址
+    // URL_CONFIG = 'https://spi-b.caimei365.com'//采美测试地址
 	// URL_CONFIG = 'https://spi.caimei365.com'
 }else{
     // 生产环境

+ 4 - 1
services/common.service.js

@@ -6,5 +6,8 @@ export default class CommonService {
 		Object.assign(this, { AjaxService })
 		this.name = 'CommonService'
 	}
-	
+	/* 首页导航模块商品列表 */
+	GetHomeClassify (data = {}) {
+		return this.AjaxService.get({ url:'/home/classify', data, isLoading: true })
+	}
 }

+ 9 - 1
services/order.service.js

@@ -10,5 +10,13 @@ export default class OrderService {
 	OrderCommodityData (data = {}) {
 		return this.AjaxService.get({ url:'/order/commodityData', data, isLoading: true })
 	}
-
+	/* 订单支付,效验付款规则 orderId 订单ID */
+	OrderPaymentValidation (data = {}) {
+		return this.AjaxService.get({ url:'/order/paymentValidation', data, isLoading: false })
+	}
+	/* 余额抵扣 orderId 订单ID */
+	OrderBalanceDeduction (data = {}) {
+		return this.AjaxService.post({ url:'/order/balanceDeduction', data, isLoading: false })
+	}
+	
 }

+ 11 - 0
services/sellse.service.js

@@ -31,4 +31,15 @@ export default class SellerService {
 	ProductRecommend (data={}){//相关推荐
 		return this.AjaxService.get({ url:'/product/getSecondHandProductRecommend', data, isLoading: true })
 	}
+	/**
+	 *@协销-关键词搜索订单
+	 *@param  userId:商品ID(数字类型,必传)
+	 *@param pageNum:机构会所ID(同之前)
+	 *@param pageSize:协销ID(同之前)
+	 */
+	getSellerOrderList (data={}){
+		return this.AjaxService.get({ url:'/seller/searchOrder', data, isLoading: true })
+	}
+	
+	
 }