瀏覽代碼

增加非订单类型类别

zhengjinyi 2 年之前
父節點
當前提交
e67b4b3b59

+ 387 - 0
components/cm-module/receipt/receipt-popup.vue

@@ -0,0 +1,387 @@
+<template name="coupon">
+	<view class="coupon-template">
+		<!-- 选择机构 -->
+		<tui-bottom-popup :radius="true" :show="show" @close="hidePopup">
+			<view class="tui-popup-box clearfix">
+				<view class="title">选择供应商</view>
+				<view class="title-search">
+					<view class="search-from name">
+						<text class="iconfont icon-iconfonticonfontsousuo1"></text>
+						<input
+							class="input"
+							type="text"
+							confirm-type="search"
+							v-model="listQuery.keyWord"
+							@input="onShowClose"
+							@confirm="initclubList()"
+							placeholder="搜索供应商名称/联系人"
+							maxlength="16"
+						/>
+						<text class="iconfont icon-shanchu1" v-if="isShowClose" @click="delInputText()"></text>
+					</view>
+				</view>
+				<view class="tui-popup-main coupon">
+					<scroll-view class="tui-popup-scroll" scroll-y="true">
+						<view
+							v-for="(shop, index) in shopDataList"
+							:key="index"
+							class="list"
+							@click.stop="checkedCoupon(index)"
+						>
+							<view class="list-cell-ri">
+								<view class="list-name">
+									{{ shop.shopName }}
+								</view>
+								<view class="list-ntel">
+									<text class="list-link">{{ shop.linkMan ? shop.linkMan : '' }}</text>
+									<text class="list-texl">{{ shop.contractMobile ? shop.contractMobile : '' }}</text>
+								</view>
+							</view>
+							<view class="list-cell-btn">
+								<view
+									class="checkbox iconfont"
+									:class="[shop.ischecked ? 'icon-yixuanze' : 'icon-weixuanze']"
+								>
+								</view>
+							</view>
+						</view>
+					</scroll-view>
+				</view>
+				<view class="tui-right-flex tui-popup-btn" :style="{ paddingBottom: isIphoneX ? '68rpx' : '34rpx' }">
+					<view class="tui-flex-1"> <view class="tui-button" @click="hidePopup">确定</view> </view>
+				</view>
+			</view>
+		</tui-bottom-popup>
+	</view>
+</template>
+
+<script>
+export default {
+	name: 'coupon',
+	props: {
+		newReceiptType:{
+			type:Number
+		},
+		show: {
+			type: Boolean,
+			default: false
+		}
+	},
+	data() {
+		return {
+			isIphoneX: this.$store.state.isIphoneX,
+			checkedIndex: 0,
+			isShowClose: false,
+			listQuery: {
+				keyWord: '',
+				newReceiptType: '',
+				pageNum: 1,
+				pageSize: 200
+			},
+			shopDataList: []
+		}
+	},
+	created() {
+		console.log('newReceiptType',this.newReceiptType)
+		this.initclubList()
+	},
+	methods: {
+		async initclubList() {
+			const userInfo = await this.$api.getStorage()
+			this.listQuery.newReceiptType = this.newReceiptType
+			this.OrderService.orderNoReceiptShopList(this.listQuery)
+				.then(response => {
+					let data = response.data
+					if (data.list && data.list.length > 0) {
+						 this.shopDataList = data.list.map((el,index)=>{
+							el.ischecked = false
+							return el
+						})
+					}
+				})
+				.catch(error => {
+					this.$util.msg(error.msg, 2000)
+				})
+		},
+		checkedCoupon(idx) {
+			// 选择供应商
+			this.checkedIndex = idx
+			this.shopDataList.forEach((el, index) => {
+				if (this.checkedIndex == index) {
+					el.ischecked = !el.ischecked
+				} else {
+					el.ischecked = false
+				}
+			})
+		},
+		onShowClose() {
+			//输入框失去焦点时触发
+			if (this.listQuery.keyWord != '') {
+				this.isShowClose = true
+			} else {
+				this.isShowClose = false
+			}
+		},
+		delInputText() {
+			//清除输入框内容
+			this.listQuery.keyWord = ''
+			this.initclubList()
+			this.isShowClose = false
+			
+		},
+		hidePopup() {
+			let shopInfo = null
+			let checkedData = false
+			this.shopDataList.forEach((el, index) => {
+				if (el.ischecked) {
+					shopInfo = el
+					checkedData = true
+				}
+			})
+			if (checkedData) {
+				this.$emit('handleChoiceaShop', shopInfo)
+			}
+			this.$parent.isClubpopupShow = false
+		}
+	}
+}
+</script>
+
+<style lang="scss">
+.coupon-template {
+	width: 100%;
+	height: auto;
+	background: #ffffff;
+	float: left;
+	margin-top: 24rpx;
+	.coupon-title {
+		width: 702rpx;
+		padding: 0 24rpx;
+		height: 88rpx;
+		line-height: 88rpx;
+		position: relative;
+		.text {
+			font-size: $font-size-28;
+			color: $text-color;
+		}
+		.text-coupon {
+			display: inline-block;
+			float: right;
+			padding-right: 30rpx;
+			line-height: 88rpx;
+			font-size: 28rpx;
+			color: #f94b4b;
+		}
+		.iconfont {
+			width: 50rpx;
+			height: 88rpx;
+			line-height: 88rpx;
+			color: #999999;
+			display: block;
+			position: absolute;
+			right: 0;
+			top: 0;
+		}
+	}
+}
+.tui-popup-box {
+	position: relative;
+	box-sizing: border-box;
+	min-height: 220rpx;
+	padding: 24rpx 32rpx 0 32rpx;
+	.title {
+		font-size: $font-size-32;
+		color: $text-color;
+		line-height: 68rpx;
+		text-align: center;
+		float: left;
+		width: 100%;
+		height: 68rpx;
+		box-sizing: border-box;
+		padding: 0 24rpx;
+	}
+	.title-search {
+		width: 100%;
+		height: 66rpx;
+		background: #ffffff;
+		box-sizing: border-box;
+		float: left;
+		.search-from {
+			width: 100%;
+			height: 100%;
+			background: #f7f7f7;
+			border-radius: 32rpx;
+			float: left;
+			position: relative;
+			.input {
+				width: 500rpx;
+				height: 64rpx;
+				float: left;
+				line-height: 64rpx;
+				color: $text-color;
+				font-size: $font-size-24;
+			}
+			.icon-iconfonticonfontsousuo1 {
+				width: 64rpx;
+				height: 64rpx;
+				line-height: 64rpx;
+				text-align: center;
+				display: block;
+				font-size: $font-size-38;
+				float: left;
+				color: #999999;
+			}
+			.icon-shanchu1 {
+				font-size: $font-size-32;
+				color: #999999;
+				position: absolute;
+				width: 64rpx;
+				height: 64rpx;
+				line-height: 64rpx;
+				text-align: center;
+				top: 0;
+				right: 0;
+				z-index: 10;
+			}
+		}
+	}
+	.tui-popup-main {
+		width: 100%;
+		float: left;
+		padding-top: 10rpx;
+		.tui-popup-scroll {
+			width: 100%;
+			height: 800rpx;
+			.list {
+				width: 100%;
+				height: 168rpx;
+				box-sizing: border-box;
+				padding: 30rpx 0 24rpx 0;
+				background-size: cover;
+				border-bottom: 1px solid #e1e1e1;
+				.list-cell-ri {
+					width: 580rpx;
+					height: 100%;
+					box-sizing: border-box;
+					float: left;
+					margin-left: 24rpx;
+					.list-name {
+						width: 100%;
+						height: 40rpx;
+						float: left;
+						line-height: 40rpx;
+						text-align: left;
+						font-size: $font-size-28;
+						color: #333333;
+						margin-bottom: 24rpx;
+						font-weight: bold;
+						.tags {
+							display: inline-block;
+							width: 60rpx;
+							height: 32rpx;
+							border-radius: 8rpx;
+							background: #f0cb72;
+							font-size: $font-size-22;
+							color: #4e4539;
+							text-align: center;
+							line-height: 32rpx;
+							margin-left: 20rpx;
+							&.sv {
+								background: #333333;
+								color: #f0cb72;
+							}
+						}
+					}
+					.list-ntel {
+						width: 100%;
+						height: 50rpx;
+						float: left;
+						line-height: 50rpx;
+						text-align: left;
+						font-size: $font-size-26;
+						color: #666666;
+						.list-link {
+							display: inline-block;
+							float: left;
+							margin-right: 40rpx;
+						}
+						.list-texl {
+							display: inline-block;
+							float: left;
+						}
+					}
+				}
+				.list-cell-btn {
+					width: 80rpx;
+					height: 100%;
+					float: right;
+					.checkbox {
+						width: 80rpx;
+						line-height: 114rpx;
+						float: right;
+						box-sizing: border-box;
+						text-align: center;
+						text-decoration: none;
+						-webkit-tap-highlight-color: transparent;
+						overflow: hidden;
+						font-size: $font-size-34;
+						&.icon-weixuanze {
+							color: #b2b2b2;
+						}
+						&.icon-yixuanze {
+							color: #e15616;
+						}
+					}
+				}
+			}
+		}
+		.tui-popup-coupon {
+			width: 100%;
+			height: 500rpx;
+			box-sizing: border-box;
+			padding: 30rpx 20rpx;
+			.tui-popup-h1 {
+				width: 100%;
+				height: 66rpx;
+				display: flex;
+				align-items: center;
+				.tui-popup-text {
+					flex: 1;
+					height: 66rpx;
+					line-height: 66rpx;
+					font-size: $font-size-30;
+					color: #333333;
+					&.red {
+						color: #f94b4b;
+					}
+					&.bold {
+						font-weight: bold;
+					}
+					&.left {
+						text-align: left;
+					}
+					&.right {
+						text-align: right;
+					}
+				}
+			}
+		}
+	}
+	.tui-popup-btn {
+		width: 100%;
+		height: auto;
+		float: left;
+		margin-top: 24rpx;
+		.tui-button {
+			width: 100%;
+			height: 88rpx;
+			background: $btn-confirm;
+			line-height: 88rpx;
+			text-align: center;
+			color: #ffffff;
+			font-size: $font-size-28;
+			border-radius: 44rpx;
+		}
+	}
+}
+</style>

+ 15 - 0
pages.json

@@ -84,6 +84,21 @@
 				"navigationStyle":"custom"
 			}
 		},
+		{
+			"path": "pages/relation/nonorder/add",
+			"style": {
+				"navigationBarTitleText": "设置非订单类别",
+				"navigationStyle":"custom"
+			}
+		},
+		{
+			"path": "pages/relation/nonorder/list",
+			"style": {
+				"navigationBarTitleText": "选择关联订单",
+				"enablePullDownRefresh":true,
+				"navigationStyle":"custom"
+			}
+		},
 		{
 			"path": "pages/relation/return/index",
 			"style": {

+ 1 - 1
pages/collection/list.vue

@@ -360,7 +360,7 @@
 						this.modal = true
 						break
 					case 2:// 设为非订单款
-						this.modal1 = true
+						this.$api.navigateTo(`/pages/relation/nonorder/add?id=${receipt.id}`)
 						break
 					case 3:// 设为返佣款
 						this.contentModalText = '确认将该款项设为返佣款项?'

+ 617 - 0
pages/relation/nonorder/add.vue

@@ -0,0 +1,617 @@
+<template>
+	<view class="container mine clearfix">
+		<!-- <cu-custom :navbar-data='nvabarData'  @navigateBack="hanldNavigateBack"></cu-custom> -->
+		<view
+			class="tui-header-box first"
+			:style="{ height: isCmcustomClass == 'fiexd' ? CustomBar + 10 + 'px' : CustomBar + 30 + 'px' }"
+			:class="isCmcustomClass"
+		>
+			<view class="header-top" :style="{ paddingTop: top + 'px', lineHeight: CustomBar + 30 + 'px' }"></view>
+			<view class="header-sit">
+				<text class="iconfont icon-fanhui" @click.stop="this.$api.navigateBack(1)"></text>
+				<text class="header-sit-text">设置非订单款类别</text>
+			</view>
+		</view>
+		<view
+			class="tui-header-box"
+			:style="{
+				height: CustomBar + 30 + 'px',
+				backgroundImage: 'url(https://static.caimei365.com/app/crm/image/statistic_bg1.png)'
+			}"
+		>
+		</view>
+		<view class="distinguish-section" :style="{ top: CustomBar + 'px', left: 0 + 'px' }">
+			<view class="distinguish-section-conten">
+				<view class="section-rows">
+					<view class="rows-label">款项类型:</view>
+					<view class="rows-mains">
+						<input
+							class="input"
+							type="text"
+							disabled="true"
+							value=""
+							v-model="mainsText"
+							placeholder="非订单款"
+						/>
+					</view>
+				</view>
+				<view class="section-rows">
+					<view class="rows-label">二级类别:</view>
+					<view class="rows-mains">
+						<picker
+							@change="bindPickerChange($event)"
+							:value="index"
+							:range="categoryActions"
+							range-key="name"
+						>
+							<input
+								class="input"
+								type="text"
+								disabled="true"
+								v-model="categoryTypeText"
+								placeholder="请选择类别类型"
+							/>
+						</picker>
+					</view>
+					<text class="iconfont icon-xiayibu"></text>
+				</view>
+				<view class="section-rows" v-if="operateParams.newReceiptType == 2">
+					<view class="rows-label">关联订单:</view>
+					<view class="rows-mains">
+						<input
+							class="input"
+							type="text"
+							disabled="true"
+							placeholder="请选择订单"
+							v-model="shopOrderTerxt"
+							@click="handleChangeOrder"
+						/>
+					</view>
+					<text class="iconfont icon-xiayibu"></text>
+				</view>
+				<view class="section-rows" v-if="operateParams.newReceiptType == 1">
+					<view class="rows-label">供应商:</view>
+					<view class="rows-mains">
+						<input
+							class="input"
+							type="text"
+							disabled="true"
+							v-model="handleShopInfo.shopName"
+							placeholder="请选择上架的供应商"
+							@click="handleShowClubpopup(1)"
+						/>
+					</view>
+					<text class="iconfont icon-xiayibu"></text>
+				</view>
+				<view class="section-rows" v-if="operateParams.newReceiptType == 3">
+					<view class="rows-label">供应商:</view>
+					<view class="rows-mains">
+						<input
+							class="input"
+							type="text"
+							disabled="true"
+							v-model="handleShopInfo.shopName"
+							placeholder="请选择购买认证通会员的供应商"
+							@click="handleShowClubpopup(3)"
+						/>
+					</view>
+					<text class="iconfont icon-xiayibu"></text>
+				</view>
+				<view class="section-rows" v-if="operateParams.newReceiptType == 4">
+					<view class="rows-label">供应商:</view>
+					<view class="rows-mains">
+						<input
+							class="input"
+							type="text"
+							disabled="true"
+							v-model="handleShopInfo.shopName"
+							placeholder="请选择缴纳认证通企划费用的供应商"
+							@click="handleShowClubpopup(4)"
+						/>
+					</view>
+					<text class="iconfont icon-xiayibu"></text>
+				</view>
+				<view class="section-text">备注信息</view>
+				<view class="section-textarea">
+					<textarea
+						class="textarea"
+						:disabled="modal"
+						placeholder="请输入备注信息..."
+						v-model="operateParams.noOrderReason"
+					/>
+				</view>
+			</view>
+			<view class="distinguish-button"> <view class="button" @click="confirmDistinguish">确定</view> </view>
+		</view>
+		<!-- 时间组件 -->
+		<tui-datetime
+			ref="dateTime"
+			:type="7"
+			:startYear="startYear"
+			:endYear="endYear"
+			cancelColor="#555555"
+			color="#4688fa"
+			@confirm="bindStartDateChange"
+		></tui-datetime>
+		<!-- 弹窗提示 -->
+		<tui-modal
+			:show="modal"
+			@click="handleClick"
+			@cancel="hideMobel"
+			:title="contentModalTitle"
+			:content="contentModalText"
+			:button="modalButton"
+			color="#333"
+			:size="32"
+			shape="circle"
+			:maskClosable="false"
+		>
+		</tui-modal>
+		<!-- 关联提示弹窗 -->
+		<receipt-popup
+			ref="clubpopup"
+			:newReceiptType="operateParams.newReceiptType"
+			v-if="isClubpopupShow"
+			:show="isClubpopupShow"
+			@handleChoiceaShop="handleChoiceaShopData"
+		>
+		</receipt-popup>
+	</view>
+</template>
+<script>
+import receiptPopup from '@/components/cm-module/receipt/receipt-popup'
+import { mapState, mapMutations } from 'vuex'
+
+export default {
+	components:{
+		receiptPopup
+	},
+	data() {
+		return {
+			nvabarData: {
+				//顶部自定义导航
+				showCapsule: 1, // 是否显示左上角图标  1表示显示  0表示不显示,
+				showSearch: 0,
+				title: '', // 导航栏 中间的标题
+				haveBack: false,
+				home: false,
+				textLeft: this.$store.state.isIphone,
+				bgColor: '#D33020',
+				textColor: '#ffffff'
+			},
+			type: 7,
+			setDateTime: '',
+			startYear: 1980,
+			endYear: 2030,
+			receiptId:0,
+			modalButton: [
+				{
+					text: '取消',
+					type: 'gray',
+					plain: true //是否空心
+				},
+				{
+					text: '确认',
+					customStyle: {
+						color: '#fff',
+						bgColor: '#4688fa'
+					},
+					plain: false
+				}
+			],
+			categoryActions: [
+				{
+					name: '上架费',
+					value: 1
+				},
+				{
+					name: '订单返佣',
+					value: 2
+				},
+				{
+					name: '认证通会员',
+					value: 3
+				},
+				{
+					name: '认证通企划',
+					value: 4
+				}
+			],
+			shopOrderTerxt:'',
+			mainsText: '非订单款',
+			paymentTypeText: '普通款项', // 款项类型显示文案
+			categoryTypeText: '请选择类别', // 款项类型显示文案
+			isClubpopupShow: false,
+			handleShopInfo:{
+				shopName:''
+			},
+			operateParams: {
+				id : 0,
+				newReceiptType: 0,
+				receiptType: 2,
+				noOrderReason:'',
+				shopId:'',
+				shopOrderId:'',
+				shopName:''
+			},
+			infoData: {},
+			isCmcustomClass: 'left',
+			CustomBar: this.CustomBar, // 顶部导航栏高度
+			height: 64, //header高度
+			top: 0, //标题图标距离顶部距离
+			scrollH: 0, //滚动总高度
+			opcity: 1,
+			contentModalTitle: '',
+			contentModalText: '', //操作文字提示语句
+			modal: false
+		}
+	},
+	onLoad(option) {
+		this.operateParams.id = option.id
+		let obj = {}
+		// #ifdef MP-WEIXIN
+		obj = wx.getMenuButtonBoundingClientRect()
+		// #endif
+		// #ifdef MP-BAIDU
+		obj = swan.getMenuButtonBoundingClientRect()
+		// #endif
+		// #ifdef MP-ALIPAY
+		my.hideAddToDesktopMenu()
+		// #endif
+		uni.getSystemInfo({
+			success: res => {
+				this.width = obj.left || res.windowWidth
+				this.height = obj.top ? obj.top + obj.height + 8 : res.statusBarHeight + 44
+				this.top = obj.top ? obj.top + (obj.height - 32) / 2 : res.statusBarHeight + 6
+				this.scrollH = res.windowWidth * 0.6
+			}
+		})
+	},
+	filters: {
+		NumFormat: function(text) {
+			//处理金额
+			return Number(text).toFixed(2)
+		}
+	},
+	computed: {
+		...mapState(['hasLogin', 'userInfo'])
+	},
+	methods: {
+		bindPickerChange(e) {
+			// 选择类别
+			this.handleShopInfo = {}
+			this.categoryTypeText = this.categoryActions[e.target.value].name
+			this.operateParams.newReceiptType = this.categoryActions[e.target.value].value
+			console.log('类别', this.categoryTypeText)
+			console.log('款项类型', this.operateParams.newReceiptType)
+		},
+		showTuiDateTime() {
+			this.$refs.dateTime.show()
+		},
+		bindStartDateChange(event) {
+			//开始时间
+			console.log('开始时间==>', event.result)
+			this.operateParams.time = event.result
+		},
+		confirmDistinguish() {
+			if (this.operateParams.newReceiptType === 0) {
+				this.$util.msg('请选择二级类别', 2000)
+				return
+			}
+			if (this.operateParams.newReceiptType === 1 || this.operateParams.newReceiptType === 3) {
+				if(this.operateParams.shopId === '' ){
+					this.$util.msg('请选择供应商', 2000)
+					return
+				}
+			}
+			if (this.operateParams.newReceiptType === 2) {
+				if(this.operateParams.shopOrderId == '' ){
+					this.$util.msg('请选择关联订单', 2000)
+					return
+				}
+			}
+			this.handReceiptConfirm()
+		},
+		handReceiptConfirm() {
+			//操作款项
+			this.OrderService.orderReceiptOperate(this.operateParams)
+				.then(response => {
+					this.$util.msg(response.msg, 2000, true, 'success')
+					setTimeout(() => {
+						uni.navigateBack({
+						    delta: 1
+						})
+					}, 2000)
+				})
+				.catch(error => {
+					this.$util.msg(error.msg, 2000)
+				})
+		},
+		handleShowClubpopup(type) {
+			// 点击操作
+			this.isClubpopupShow = true
+		},
+		handleChoiceaShopData(data){
+			// 监听获取勾选供应商信息
+			this.handleShopInfo = data
+			this.operateParams.shopId = data.shopId
+			this.operateParams.shopName = data.shopName
+			console.log('监听获取勾选供应商信息',this.operateParams.shopId)
+		},
+		handleChangeOrder(){
+			//跳转选择订单关联
+			this.$api.navigateTo('/pages/relation/nonorder/list')
+		},
+		handleClick(e) {
+			// 确认收款
+			if (e.index == 1) {
+				this.$api.navigateTo('/pages/collection/detail')
+			}
+			this.modal = false
+		},
+		hideMobel() {
+			this.modal = false
+		},
+		toNoSms(url) {
+			this.$api.navigateTo(url)
+		},
+		navBack() {
+			uni.navigateBack({
+				delta: 1
+			})
+		}
+	},
+	onPageScroll(e) {
+		//实时获取到滚动的值
+		if (e.scrollTop > 30) {
+			this.isCmcustomClass = 'fiexd'
+		} else {
+			this.isCmcustomClass = 'left'
+		}
+	},
+	onShow() {
+		let pages = getCurrentPages()
+		let currPage = pages[pages.length-1]
+		if(currPage.data.select =='select'){
+			let order = uni.getStorageSync('selectOrder')
+			console.log('order=======>',order)
+			this.operateParams.shopOrderId = order.shopOrderId
+			this.shopOrderTerxt = `${order.shopOrderNo}(${order.shopOrderId})`
+		}
+	}
+}
+</script>
+
+<style lang="scss">
+@import '@/uni.scss';
+
+page {
+	background: #fff;
+}
+
+.tui-header-box {
+	width: 100%;
+	background: #ffffff;
+	z-index: 999;
+	background-image: url(https://static.caimei365.com/app/crm/image/statistic_bg2.png);
+	background-size: cover;
+	&.fiexd {
+		position: fixed;
+		top: 0;
+		left: 0;
+	}
+}
+
+.header-top {
+	width: 100%;
+	font-size: 16px;
+	font-weight: 500;
+	height: 32px;
+	display: flex;
+	align-items: center;
+	justify-content: center;
+	position: relative;
+	padding: 0 40rpx;
+}
+
+.header-sit {
+	width: 100%;
+	box-sizing: border-box;
+	height: 80rpx;
+	line-height: 80rpx;
+	box-sizing: border-box;
+	color: #ffffff;
+	.header-sit-text {
+		text-align: left;
+		font-size: $font-size-40;
+		font-weight: 600;
+		font-family: '正楷';
+	}
+	.icon-fanhui {
+		display: block;
+		width: 80rpx;
+		height: 80rpx;
+		float: left;
+		text-align: center;
+		line-height: 80rpx;
+		font-size: 46rpx;
+	}
+}
+
+.mine {
+	width: 100%;
+	height: 100%;
+	position: relative;
+}
+
+.distinguish-section {
+	width: 100%;
+	position: absolute;
+	padding: 40rpx 20rpx;
+	box-sizing: border-box;
+}
+
+.distinguish-section-conten {
+	width: 100%;
+	height: auto;
+	position: relative;
+	background-color: #ffffff;
+	border-radius: 20rpx;
+	padding: 20rpx;
+	box-shadow: 0 10rpx 14rpx 0 rgba(86, 119, 252, 0.2);
+
+	.section-top {
+		width: 100%;
+		height: 86rpx;
+		box-sizing: border-box;
+		padding-bottom: 20rpx;
+
+		.title {
+			float: left;
+			width: 66rpx;
+			line-height: 66rpx;
+			color: #333333;
+			text-align: left;
+
+			.iconfont {
+				color: #666666;
+				font-size: $font-size-40;
+			}
+		}
+
+		.button {
+			float: right;
+			box-sizing: border-box;
+			padding: 0 24rpx;
+			height: 100%;
+			line-height: 66rpx;
+			background: $btn-confirm;
+			border-radius: 8rpx;
+			text-align: center;
+			color: #ffffff;
+		}
+	}
+
+	.section-rows {
+		width: 100%;
+		height: 80rpx;
+		box-sizing: border-box;
+		padding: 0 20rpx;
+		border-radius: 8rpx;
+		background: #f8f8f8;
+		margin-bottom: 20rpx;
+		line-height: 80rpx;
+		display: flex;
+		position: relative;
+
+		&.disabled {
+			background: #e1e1e1;
+		}
+
+		.rows-label {
+			flex: 3;
+
+			.iconfont {
+				margin-right: 8rpx;
+
+				&.icon-yixuanze {
+					color: $color-system;
+				}
+			}
+		}
+
+		.rows-mains {
+			flex: 7;
+
+			.input {
+				width: 100%;
+				height: 80rpx;
+				box-sizing: border-box;
+				padding-right: 40rpx;
+				text-align: left;
+				font-size: $font-size-26;
+				color: #333333;
+			}
+		}
+
+		.icon-xiayibu {
+			display: block;
+			width: 40rpx;
+			height: 80rpx;
+			position: absolute;
+			right: 0;
+			text-align: center;
+			font-size: $font-size-32;
+		}
+	}
+
+	.section-text {
+		width: 100%;
+		height: 66rpx;
+		line-height: 66rpx;
+		font-size: $font-size-24;
+		color: #333333;
+	}
+
+	.section-textarea {
+		width: 100%;
+		height: 200rpx;
+		box-sizing: border-box;
+		padding: 20rpx;
+		background: #f7f7f7;
+		border-radius: 8rpx;
+
+		.textarea {
+			width: 100%;
+			height: 100%;
+		}
+	}
+}
+
+.distinguish-button {
+	width: 100%;
+	height: 80rpx;
+	margin-top: 100rpx;
+	box-sizing: border-box;
+	padding: 0 50rpx;
+
+	.button {
+		width: 100%;
+		height: 80rpx;
+		background: $btn-confirm;
+		border-radius: 40rpx;
+		text-align: center;
+		color: #ffffff;
+		line-height: 80rpx;
+		font-size: $font-size-28;
+		box-shadow: 0 10rpx 14rpx 0 rgba(86, 119, 252, 0.2);
+	}
+}
+
+.uni-badge--small {
+	-webkit-transform: scale(0.8);
+	-ms-transform: scale(0.8);
+	transform: scale(0.8);
+	-webkit-transform-origin: center center;
+	-ms-transform-origin: center center;
+	transform-origin: center center;
+}
+
+.uni-badge {
+	font-family: 'Helvetica Neue', Helvetica, sans-serif;
+	-webkit-box-sizing: border-box;
+	box-sizing: border-box;
+	font-size: 12px;
+	line-height: 1;
+	display: inline-block;
+	padding: 3px 6px;
+	color: #333;
+	border-radius: 100px;
+	background-color: #f1f1f1;
+}
+
+.uni-badge-error {
+	color: #fff;
+	background-color: #dd524d;
+}
+</style>

+ 59 - 12
pages/relation/nonorder/detail.vue

@@ -20,12 +20,17 @@
 			}"
 		>
 		</view>
-		<view class="distinguish-section" :style="{ top: CustomBar - 4 + 'px', left: 0 + 'px' }">
+		<tui-skeleton
+			v-if="skeletonShow"
+			backgroundColor="#fafafa"
+			borderRadius="10rpx"
+			:isLoading="true"
+			:loadingType="7"
+		></tui-skeleton>
+		<view class="distinguish-section" v-else :style="{ top: CustomBar - 4 + 'px', left: 0 + 'px' }">
 			<view class="distinguish-section-conten">
 				<view class="section-top">
-					<view class="title">
-						<view class="title-text">收款信息</view>
-					</view>
+					<view class="title"> <view class="title-text">收款信息</view> </view>
 					<view class="button" @click="toNoSms('/pages/collection/list')">
 						<text class="iconfont icon-wodedingdan"></text> 收款列表
 					</view>
@@ -34,6 +39,7 @@
 					<view class="list-title-t">
 						<view class="list-title-tip">
 							<text class="badges">{{ receiptInfo.receiptType | formatReceiptType }}</text>
+							<text class="badgesa">{{ receiptInfo.newReceiptType | newReceiptTypeType }}</text>
 						</view>
 					</view>
 					<view class="list-title-b">
@@ -71,7 +77,11 @@
 				<template v-if="receiptInfo.orderList">
 					<view class="section-title">关联订单</view>
 					<view class="section-mid">
-						<view class="tui-order-item" v-for="(order, orderIndex) in receiptInfo.orderList" :key="orderIndex">
+						<view
+							class="tui-order-item"
+							v-for="(order, orderIndex) in receiptInfo.orderList"
+							:key="orderIndex"
+						>
 							<receipt-details :orderInfo="order"></receipt-details>
 						</view>
 					</view>
@@ -80,9 +90,9 @@
 				<view class="section-mid">
 					<view class="list-title">
 						<view class="list-title-b"
-							>进度:<text :style="{ color: formatColor(receiptInfo.receiptStatus) }"
-								>{{ receiptInfo.receiptStatusText }}</text
-							>
+							>进度:<text :style="{ color: formatColor(receiptInfo.receiptStatus) }">{{
+								receiptInfo.receiptStatusText
+							}}</text>
 						</view>
 						<view class="list-title-b"
 							>确认人:<text class="text">{{
@@ -104,6 +114,9 @@
 								receiptInfo.reviewDate ? receiptInfo.reviewDate : '无'
 							}}</text></view
 						>
+						<view class="list-title-b" v-if="receiptInfo.shopName"
+							>关联供应商:<text class="text">{{ receiptInfo.shopName }}</text></view
+						>
 						<view class="list-title-b"
 							>备注信息:<text class="text">{{
 								receiptInfo.noOrderReason ? receiptInfo.noOrderReason : '无'
@@ -132,6 +145,7 @@ export default {
 			scrollH: 0, //滚动总高度
 			opcity: 1,
 			isCmcustomClass: 'left',
+			skeletonShow: true,
 			nvabarData: {
 				//顶部自定义导航
 				showCapsule: 1, // 是否显示左上角图标  1表示显示  0表示不显示,
@@ -170,6 +184,22 @@ export default {
 		this.getOrderReceiptDetail(this.receiptId)
 	},
 	filters: {
+		newReceiptTypeType(value) {
+			switch (value) {
+				case 1:
+					return '上架费'
+					break
+				case 2:
+					return '订单返佣'
+					break
+				case 3:
+					return '认证通会员'
+					break
+				case 4:
+					return '认证通企划'
+					break
+			}
+		},
 		formatSourceType(value) {
 			switch (value) {
 				case 1:
@@ -223,7 +253,9 @@ export default {
 			this.OrderService.orderReceiptDetail({ id: id })
 				.then(response => {
 					this.receiptInfo = response.data
-					this.skeletonShow = false
+					setTimeout(() => {
+						this.skeletonShow = false
+					}, 1000)
 				})
 				.catch(err => {
 					this.$api.navigateTo('/pages/login/login-error')
@@ -289,7 +321,9 @@ export default {
 			// console.log('来自页面内转发按钮')
 		}
 		return {
-			title: `¥${receipt.receiptAmount.toFixed(2)} | ${receipt.receiptDate}  |  ${receipt.receiptStatusText}(${receiptTypeText})`,
+			title: `¥${receipt.receiptAmount.toFixed(2)} | ${receipt.receiptDate}  |  ${
+				receipt.receiptStatusText
+			}(${receiptTypeText})`,
 			path: `/pages/login/login-share?id=${receipt.id}`,
 			imageUrl: 'https://static.caimei365.com/app/crm/image/icon-share@2x.jpg'
 		}
@@ -437,6 +471,19 @@ page {
 					text-align: center;
 					color: #ffffff;
 				}
+				.badgesa {
+					display: block;
+					float: left;
+					padding: 0 15rpx;
+					height: 40rpx;
+					line-height: 40rpx;
+					border-radius: 4rpx;
+					background: #7fba4f;
+					font-size: $font-size-24;
+					text-align: center;
+					color: #ffffff;
+					margin-left: 24rpx;
+				}
 			}
 		}
 		.list-title-b {
@@ -471,7 +518,7 @@ page {
 			top: 0;
 			color: #dd524d;
 			z-index: 99;
-			.list-icon-image{
+			.list-icon-image {
 				width: 120rpx;
 				height: 120rpx;
 				display: block;
@@ -505,7 +552,7 @@ page {
 			line-height: 50rpx;
 			color: #666666;
 			text-align: left;
-			.text{
+			.text {
 				color: #999999;
 			}
 			.list-title-b-item {

+ 684 - 0
pages/relation/nonorder/list.vue

@@ -0,0 +1,684 @@
+<template>
+	<view class="container mine clearfix">
+		<view
+			class="tui-header-box first"
+			:style="{ height: isCmcustomClass == 'fiexd' ? CustomBar + 6 + 'px' : CustomBar + 6 + 'px' }"
+			:class="isCmcustomClass"
+		>
+			<view class="header-top" :style="{ paddingTop: top + 'px', lineHeight: CustomBar + 20 + 'px' }"></view>
+			<view class="header-sit">
+				<text class="iconfont icon-fanhui" @click.stop="this.$api.navigateBack(1)"></text>
+				<text class="header-sit-text">选择关联订单</text>
+			</view>
+		</view>
+		<tui-skeleton v-if="skeletonShow" backgroundColor="#fafafa" borderRadius="10rpx" :isLoading	="true" :loadingType="7"></tui-skeleton>
+		<view class="container-content" v-else>
+			<view class="tui-header-tabs day clearfix" :style="{ top: CustomBar + 6 + 'px' }">
+				<view class="tui-header-tabmain">
+					<input
+						class="input"
+						type="text"
+						v-model="listQuery.keyWord"
+						confirm-type="search"
+						@confirm="subMitSearch()"
+						placeholder="请输入供应商名称"
+					/>
+					<text class="iconfont icon-sousuo"></text>
+				</view>
+			</view>
+			<view
+				class="user-section"
+				:style="{
+					top: isIphoneX ? CustomBar + 66 + 'px' : CustomBar + 56 + 'px',
+					left: 0 + 'px',
+					paddingBottom: isIphoneX ? '178rpx' : '144rpx'
+				}"
+			>
+				<view class="header-content">
+					<view :class="{ 'tui-order-list': scrollTop >= 0 }" class="clearfix">
+						<!-- 空白页 -->
+						<empty v-if="isEmpty" :typeIndex="currents" :navbarHeight="navbarHeight"></empty>
+						<!-- 列表 -->
+						<view v-else class="tui-order-content">
+							<view
+								class="tui-order-item"
+								v-for="(order, index) in orderList"
+								:key="index"
+							>
+								<view class="list-title" @click.stop="orderDetail(order.mainOrder.orderId)">
+									<view class="list-title-t">
+										<view class="list-title-tip">
+											<text class="badges">{{ order.mainOrder.orderType | formatOrderType }}</text>
+										</view>
+										<view class="list-title-tag" v-if="order.mainOrder.organizeId == 3">
+											<text class="badges">维沙</text>
+										</view>
+										<view class="list-title-num">{{ order.mainOrder.status | stateExpFormat }}</view>
+									</view>
+									<view class="list-title-a">
+										<view class="list-title-a-text">
+											子订单编号:<text class="text">{{ order.shopOrderNo }} ( {{ order.shopOrderId }} )</text>
+										</view>
+										<view class="list-title-a-text">
+											供应商名称:<text class="text">{{ order.shopName }}</text>
+										</view>
+										<view class="list-title-a-text">
+											订单金额:<text class="text">¥{{ order.needPayAmount | NumFormat }}</text>
+										</view>
+									</view>
+									<view class="list-title-b">
+										客户名称:<text class="text">{{ order.mainOrder.userName ? order.mainOrder.userName : '无' }}</text>
+									</view>
+									<view class="list-title-b">
+										订单编号:<text class="text">{{ order.mainOrder.orderNo }} ( {{ order.mainOrder.orderId }} )</text>
+									</view>
+									<view class="list-title-b">
+										下单日期:<text class="text">{{ order.mainOrder.orderTime }}</text>
+									</view>
+									<view class="list-title-b">
+										<view class="list-title-b-item ">
+											订单金额:<text class="text">¥{{ order.mainOrder.payTotalFee | NumFormat }}</text>
+										</view>
+										<view class="list-title-b-item ">
+											已收金额:<text class="text">¥{{ order.mainOrder.paidAmount | NumFormat }}</text>
+										</view>
+									</view>
+								</view>
+								<view class="list-checked" @click="checkedOrder(order,index)">
+									<text
+										class="iconfont"
+										:class="order.isChecked ? 'icon-yixuanze' : 'icon-weixuanze'"
+									></text>
+								</view>
+								<view class="list-detail" @click.stop="orderDetail(order.mainOrder.orderId)">
+									<text class="iconfont icon-xiayibu"></text>
+								</view>
+							</view>
+							<!--加载loadding-->
+							<tui-loadmore :visible="loadding" :index="3" type="black"></tui-loadmore>
+							<tui-nomore :visible="!pullUpOn" bgcolor="#F7F7F7" :text="nomoreText"></tui-nomore>
+							<!--加载loadding-->
+						</view>
+					</view>
+				</view>
+			</view>
+			<view class="distinguish-button" :style="{ paddingBottom: isIphoneX ? '68rpx' : '24rpx' }" v-if="orderList.length>0">
+				<view class="button" @click="confirmDistinguish">确定</view>
+			</view>
+		</view>	
+	</view>
+</template>
+<script>
+import empty from '@/components/empty'
+import { mapState, mapMutations } from 'vuex'
+const defaultListQuery = {
+	pageNum: 1, //页数
+	pageSize: 10, //条数
+	keyWord: '',
+}
+export default {
+	components: {
+		empty
+	},
+	data() {
+		return {
+			CustomBar: this.CustomBar, // 顶部导航栏高度
+			isIphoneX: this.$store.state.isIphoneX,
+			skeletonShow:true,
+			listQuery: Object.assign({}, defaultListQuery),
+			orderList: [],
+			checkedOrderList: [],
+			checkedIndex:'',
+			scrollTop: 0,
+			isEmpty: false,
+			loadding: false,
+			pullUpOn: true,
+			hasNextPage: false,
+			pullFlag: true,
+			navbarHeight: '',
+			nomoreText: '上拉显示更多',
+			contentModalText: '', //操作文字提示语句
+			modal: false,
+			modal1: false,
+			returnBrokerage:0,
+			confirmParams:{
+				shopOrderId:0,
+				verbalAmount:'',
+				rebateRemarks:''
+			},
+			rightDrawer: false,
+			hanldReceipt: {}, //储存监听收款信息
+			handleOperId: 0, //操作类型
+			height: 64, //header高度
+			top: 0, //标题图标距离顶部距离
+			scrollH: 0, //滚动总高度
+			opcity: 1
+		}
+	},
+	onLoad() {
+		let obj = {}
+		uni.getSystemInfo({
+			success: res => {
+				this.width = obj.left || res.windowWidth
+				this.height = obj.top ? obj.top + obj.height + 8 : res.statusBarHeight + 44
+				this.top = obj.top ? obj.top + (obj.height - 32) / 2 : res.statusBarHeight + 6
+				this.scrollH = res.windowWidth * 0.6
+			}
+		})
+	},
+	computed: {
+		...mapState(['hasLogin']),	
+	},
+	methods: {
+		orderNoReceiptShoporderList() {
+			// 收款详情-订单列表
+			this.initListQuery()
+			this.OrderService.orderNoReceiptShoporderList(this.listQuery)
+				.then(response => {
+					let data = response.data
+					this.hasNextPage = response.data.hasNextPage
+					if (data.list && data.list.length > 0) {
+						this.isEmpty = false
+						this.orderList = data.list.map((el, index) => {
+							el.isChecked = false
+							return el
+						})
+						this.pullFlag = false
+						setTimeout(() => {
+							this.pullFlag = true
+						}, 500)
+						if (this.hasNextPage) {
+							this.pullUpOn = false
+							this.nomoreText = '上拉显示更多'
+						} else {
+							if (this.orderList.length < 3) {
+								this.pullUpOn = true
+							} else {
+								this.pullUpOn = false
+								this.loadding = false
+								this.nomoreText = '已至底部'
+							}
+						}
+					} else {
+						this.isEmpty = true
+					}
+					this.skeletonShow = false
+				})
+				.catch(err => {
+					this.$util.msg(err.msg, 2000)
+				})
+		},
+		getOnReachBottomData(index) {
+			//上拉加载
+			this.listQuery.pageNum += 1
+			this.OrderService.orderNoReceiptShoporderList(this.listQuery)
+				.then(response => {
+					let data = response.data
+					if (data.list && data.list.length > 0) {
+						this.hasNextPage = data.hasNextPage
+						let list = data.list.map((el, index) => {
+							el.isChecked = false
+							return el
+						})
+						this.orderList = this.orderList.concat(list)
+						this.pullFlag = false // 防上拉暴滑
+						setTimeout(() => {
+							this.pullFlag = true
+						}, 500)
+						if (this.hasNextPage) {
+							this.pullUpOn = false
+							this.nomoreText = '上拉显示更多'
+						} else {
+							this.pullUpOn = false
+							this.loadding = false
+							this.nomoreText = '已至底部'
+						}
+					}
+				})
+				.catch(error => {
+					this.$util.msg(error.msg, 2000)
+				})
+		},
+		subMitSearch() {
+			// 确认搜索
+			this.orderNoReceiptShoporderList()
+		},
+		confirmDistinguish() {
+			// 点击确认
+			const list = []
+			this.checkedOrderList.forEach(el => {
+				if (list.indexOf(el.userId) == -1) {
+					list.push(el.userId)
+				}
+			})
+			if (this.confirmParams.shopOrderId == 0) {
+				this.$util.msg('请选择订单!', 2000)
+				return
+			}
+			// 带参数返回
+			var pages = getCurrentPages()
+			var prevPage = pages[pages.length - 2]  //上一个页面	
+				prevPage.setData({select:'select'})
+			uni.navigateBack()
+		},
+		checkedOrder(order,index) {
+			// 勾选关联订单
+			this.checkedIndex = index
+			this.orderList.forEach((el, index) => {
+				if (this.checkedIndex == index) {
+					el.isChecked = true
+					this.confirmParams.shopOrderId = el.shopOrderId
+					this.returnBrokerage = el.brokerage
+					uni.setStorageSync('selectOrder',el)
+				} else {
+					el.isChecked = false
+				}
+			})
+			console.log('shopOrderId',this.confirmParams.shopOrderId)
+			console.log('returnBrokerage',this.returnBrokerage)
+		},
+		orderDetail(orderId) {
+			//订单详情跳转
+			this.$api.navigateTo(`/pages/relation/order/detail?orderId=${orderId}`)
+		},
+		initListQuery(){// 初始化
+			this.orderList =[]
+			this.loadding = true
+			this.pullUpOn = true
+			this.listQuery.pageNum = 1
+		}
+	},
+	onPageScroll(e) {
+		//实时获取到滚动的值
+		if (e.scrollTop > 30) {
+			this.isCmcustomClass = 'fiexd'
+		} else {
+			this.isCmcustomClass = 'left'
+		}
+		if (e.scrollTop > 180) {
+			this.isShowHeader = true
+		} else {
+			this.isShowHeader = false
+		}
+	},
+	onReachBottom() {
+		if (this.hasNextPage) {
+			this.loadding = true
+			this.pullUpOn = true
+			this.getOnReachBottomData()
+		}
+	},
+	onPullDownRefresh() {
+		setTimeout(() => {
+			this.orderNoReceiptShoporderList()
+			uni.stopPullDownRefresh()
+		}, 200)
+	},
+	onShow() {
+		this.orderNoReceiptShoporderList()
+	}
+}
+</script>
+
+<style lang="scss">
+@import '@/uni.scss';
+
+page {
+	background: #f7f7f7;
+}
+
+.tui-header-box {
+	width: 100%;
+	background: #ffffff;
+	z-index: 999;
+	position: fixed;
+	top: 0;
+	left: 0;
+	background-size: cover;
+	background-image: url(https://static.caimei365.com/app/crm/image/statistic_bg2.png);
+
+	&.fiexd {
+	}
+
+	&.first {
+	}
+}
+.header-top {
+	width: 100%;
+	font-size: 16px;
+	font-weight: 500;
+	height: 32px;
+	display: flex;
+	align-items: center;
+	justify-content: center;
+	position: relative;
+	padding: 0 40rpx;
+}
+
+.header-sit {
+	width: 100%;
+	box-sizing: border-box;
+	height: 80rpx;
+	line-height: 80rpx;
+	box-sizing: border-box;
+	color: #ffffff;
+	.header-sit-text {
+		text-align: left;
+		font-size: $font-size-40;
+		font-weight: 600;
+		font-family: '正楷';
+	}
+	.icon-fanhui {
+		display: block;
+		width: 80rpx;
+		height: 80rpx;
+		float: left;
+		text-align: center;
+		line-height: 80rpx;
+		font-size: 42rpx;
+	}
+}
+
+.tui-header-tabs {
+	width: 100%;
+	height: auto;
+	margin-bottom: 40rpx;
+	padding: 20rpx 24rpx;
+	background: #ffffff;
+	box-sizing: border-box;
+	position: fixed;
+	z-index: 999;
+	box-shadow: 0 10rpx 10rpx 0 rgba(86, 119, 252, 0.2);
+	.tui-header-tabmain {
+		width: 100%;
+		height: 70rpx;
+		float: left;
+		position: relative;
+		.input {
+			width: 100%;
+			height: 70rpx;
+			box-sizing: border-box;
+			padding: 0 20rpx;
+			padding-left: 70rpx;
+			background: #f7f7f7;
+			border-radius: 8rpx;
+			font-size: $font-size-26;
+		}
+		.icon-sousuo {
+			width: 80rpx;
+			height: 70rpx;
+			display: block;
+			line-height: 70rpx;
+			text-align: center;
+			color: #999999;
+			font-size: $font-size-38;
+			position: absolute;
+			left: 0;
+			top: 0;
+		}
+	}
+	.button-content {
+		width: 100%;
+		height: auto;
+		float: left;
+		position: relative;
+		.btn {
+			height: 64rpx;
+			padding: 0 20rpx;
+			margin: 10rpx 0 0 0;
+			line-height: 64rpx;
+			font-size: $font-size-26;
+			text-align: center;
+			border-radius: 6rpx;
+			float: right;
+		}
+		.btn-confirm {
+			background-color: #ff5000;
+			color: #ffffff;
+		}
+	}
+}
+
+.distinguish-button {
+	width: 100%;
+	position: fixed;
+	bottom: 0;
+	left: 0;
+	z-index: 9999;
+	background-color: #ffffff;
+	padding: 0 50rpx;
+	padding-top: 20rpx;
+	.button {
+		width: 100%;
+		height: 80rpx;
+		background: $btn-confirm;
+		border-radius: 40rpx;
+		text-align: center;
+		color: #ffffff;
+		line-height: 80rpx;
+		font-size: $font-size-28;
+		box-shadow: 0 10rpx 14rpx 0 rgba(86, 119, 252, 0.2);
+	}
+}
+
+.user-section {
+	position: absolute;
+	width: 100%;
+}
+
+.header-content {
+	width: 100%;
+	height: auto;
+	position: relative;
+	background-color: #f7f7f7;
+}
+
+.tui-order-list {
+	margin-top: 24rpx;
+	width: 100%;
+	position: relative;
+	box-sizing: border-box;
+	padding: 0 20rpx;
+}
+
+.tui-order-content {
+	width: 100%;
+	height: auto;
+}
+
+.tui-order-item {
+	display: flex;
+	flex-direction: column;
+	width: 100%;
+	padding: 20rpx 20rpx;
+	background: #fff;
+	margin-bottom: 24rpx;
+	border-radius: 8rpx;
+	position: relative;
+	.list-checked {
+		width: 80rpx;
+		height: 80rpx;
+		line-height: 80rpx;
+		text-align: center;
+		position: absolute;
+		right: 0;
+		top: 0;
+		.iconfont {
+			font-size: 38rpx;
+			color: $color-system;
+		}
+	}
+	.list-detail {
+		width: 70rpx;
+		height: 80rpx;
+		line-height: 80rpx;
+		text-align: center;
+		position: absolute;
+		right: 0;
+		bottom: 0;
+		.iconfont {
+			font-size: $font-size-32;
+			color: #999999;
+		}
+	}
+}
+
+.list-title {
+	width: 100%;
+	height: auto;
+
+	.list-title-t {
+		width: 100%;
+		height: 50rpx;
+		float: left;
+		font-size: $font-size-24;
+		padding-bottom: 10rpx;
+		.list-title-tip {
+			float: left;
+			.badges {
+				display: block;
+				float: left;
+				padding: 0 15rpx;
+				height: 40rpx;
+				line-height: 40rpx;
+				border-radius: 20rpx;
+				background: rgba(248, 204, 148, 0.5);
+				font-size: $font-size-24;
+				text-align: center;
+				color: #666666;
+			}
+		}
+		.list-title-tag {
+			float: left;
+			margin-left: 20rpx;
+			.badges {
+				display: block;
+				float: left;
+				padding: 0 15rpx;
+				height: 40rpx;
+				line-height: 40rpx;
+				border-radius: 20rpx;
+				background: linear-gradient(270deg, #fee9ba 0%, #f0cb72 100%);
+				font-size: $font-size-24;
+				text-align: center;
+				color: #666666;
+			}
+		}
+		.list-title-num {
+			float: left;
+			text-align: left;
+			color: #e15616;
+			line-height: 40rpx;
+			margin-left: 20rpx;
+		}
+	}
+	.list-title-a {
+		width: 100%;
+		height: auto;
+		float: left;
+		padding: 5rpx 8rpx;
+		border-radius: 4rpx;
+		background-color: rgba(247, 247, 247, 1);
+		margin-bottom: 10rpx;
+		.text{
+			color: #999999;
+		}
+		.list-title-a-text {
+			width: 100%;
+			height: 44rpx;
+			float: left;
+			font-size: $font-size-24;
+			line-height: 44rpx;
+			color: #666666;
+			text-align: left;
+		}
+	}
+	.list-title-b {
+		width: 100%;
+		height: 44rpx;
+		float: left;
+		font-size: $font-size-24;
+		line-height: 44rpx;
+		color: #666666;
+		text-align: left;
+		.text{
+			color: #999999;
+		}
+		.list-title-b-item {
+			width: 50%;
+			height: 100%;
+			float: left;
+		}
+		&.sms {
+			height: auto;
+		}
+	}
+}
+.tui-prompt-title{
+	line-height: 44rpx;
+	text-align: center;
+}
+.tui-prompt-input{
+	width: 100%;
+	height: 80rpx;
+	box-sizing: border-box;
+	background: #f7f7f7;
+	border-radius: 8rpx;
+	padding:15rpx 20rpx;
+	padding-left: 50rpx;
+	margin: 20rpx 0;
+	position: relative;
+	.text{
+		display: block;
+		width: 50rpx;
+		height: 80rpx;
+		line-height: 80rpx;
+		color: #666666;
+		text-align: center;
+		position: absolute;
+		top: 0;
+		left: 0;
+	}
+	.input {
+		width: 100%;
+		height: 100%;
+		line-height: 80rpx;
+		font-size: $font-size-26;
+		color: $color-system;
+		&.none{
+			display: none;
+		}
+	}
+}
+.tui-prompt-flex{
+	width: 100%;
+	height: 70rpx;
+	display: flex;
+	margin-top: 20rpx;
+	.btn{
+		flex: 1;
+		line-height: 70rpx;
+		font-size: $font-size-26;
+		text-align: center;
+		color: #FFFFFF;
+		border-radius: 33rpx;
+		margin: 0 24rpx;
+		&.btn-cancel{
+			background: #F7F7F7;
+			color: #999999;
+		}
+		&.btn-confirm{
+			background: $color-system;
+		}
+	}
+	
+}
+.tui-prompt-text{
+	line-height: 44rpx;
+	font-size: $font-size-26;
+	color: #333333;
+	.text{
+		color: $color-system;
+	}
+}
+</style>

+ 12 - 2
pages/relation/order/detail.vue

@@ -20,7 +20,14 @@
 			}"
 		>
 		</view>
-		<view class="distinguish-section" :style="{ top: CustomBar - 4 + 'px', left: 0 + 'px' }">
+		<tui-skeleton
+			v-if="skeletonShow"
+			backgroundColor="#fafafa"
+			borderRadius="10rpx"
+			:isLoading="true"
+			:loadingType="7"
+		></tui-skeleton>
+		<view class="distinguish-section" v-else :style="{ top: CustomBar - 4 + 'px', left: 0 + 'px' }">
 			<view class="distinguish-section-conten">
 				<view class="section-top">
 					<view class="section-badges">
@@ -174,6 +181,7 @@ export default {
 			scrollH: 0, //滚动总高度
 			opcity: 1,
 			isCmcustomClass: 'left',
+			skeletonShow:true,
 			nvabarData: {
 				//顶部自定义导航
 				showCapsule: 1, // 是否显示左上角图标  1表示显示  0表示不显示,
@@ -220,7 +228,9 @@ export default {
 			this.OrderService.orderReceiptOrdersInfo({ orderId: orderId })
 				.then(response => {
 					this.order = response.data
-					this.skeletonShow = false
+					setTimeout(()=>{
+						this.skeletonShow = false
+					},1000)
 				})
 				.catch(err => {
 					this.$util.msg(err.msg, 2000)

+ 2 - 2
services/config.env.js

@@ -3,8 +3,8 @@ if(process.env.NODE_ENV === 'development'){
     // 开发环境
     // URL_CONFIG = 'http://192.168.2.67:18014'	 //智捷联调地址
     // URL_CONFIG = 'http://192.168.2.68:18014'	 //涛涛联调地址
-    // URL_CONFIG = 'http://192.168.2.75:18014'	 //超超联调地址
-    URL_CONFIG = 'https://core-b.caimei365.com'
+    URL_CONFIG = 'http://192.168.2.75:18014'	 //超超联调地址
+    // URL_CONFIG = 'https://core-b.caimei365.com'
     // URL_CONFIG = 'https://core.caimei365.com'
 }else{
     // 生产环境

+ 23 - 0
services/order.service.js

@@ -256,5 +256,28 @@ export default class OrderService {
 	        loadText: '处理中...' 
 	    })
     }
+    /**
+	 *非订单关联查询供应商
+	 * @param keyWord 关键词
+	 * @param newReceiptType 查询供应商的类别 1上架费供应商  3认证通会员供应商  4认证通企划供应商
+	/**/
+    orderNoReceiptShopList(data = {}) {
+	    return this.AjaxService.get({ 
+	        url:'/order/receipt/shop', 
+	        data, 
+	        isLoading: true ,
+	    })
+    }
+    /**
+	 *非订单款关联订单列表
+	 * @param keyWord 关键词
+	/**/
+    orderNoReceiptShoporderList(data = {}) {
+	    return this.AjaxService.get({ 
+	        url:'/order/receipt/shoporder', 
+	        data, 
+	        isLoading: false ,
+	    })
+    }
 	
 }

+ 1 - 0
uni.scss

@@ -30,6 +30,7 @@ $font-size-26:26rpx;
 $font-size-28:28rpx;
 $font-size-30:30rpx;
 $font-size-32:32rpx;
+$font-size-34:34rpx;
 $font-size-36:36rpx;
 $font-size-38:38rpx;
 $font-size-40:40rpx;