Browse Source

Merge branch 'master' of http://git.huaml.com/zhh/front-end

# Conflicts:
#	mobile-code/src/static/css/common.scss
lalala 6 years ago
parent
commit
73e0e68079
100 changed files with 2142 additions and 691 deletions
  1. 237 0
      mobile-code/src/components/app-area-sel.vue
  2. 1 1
      mobile-code/src/components/app-coupon-sel.vue
  3. 0 0
      mobile-code/src/components/app-date-picker.vue
  4. 242 0
      mobile-code/src/components/app-delivery.vue
  5. 11 7
      mobile-code/src/components/module/app-activily-coupon.vue
  6. 7 2
      mobile-code/src/components/module/app-close.vue
  7. 0 0
      mobile-code/src/components/module/app-order-list.vue
  8. 48 0
      mobile-code/src/components/module/app-search.vue
  9. 99 0
      mobile-code/src/components/module/app-share-mask.vue
  10. 35 0
      mobile-code/src/components/module/app-vip.vue
  11. 134 0
      mobile-code/src/components/plugin/alert.vue
  12. 3 3
      mobile-code/src/components/plugin/list-cell.vue
  13. 1 0
      mobile-code/src/components/plugin/tabs.vue
  14. 50 8
      mobile-code/src/pages.json
  15. 2 2
      mobile-code/src/pages/callback/index.vue
  16. 1 1
      mobile-code/src/pages/coupon/list.vue
  17. 0 2
      mobile-code/src/pages/goods/components/buy-foot.vue
  18. 1 1
      mobile-code/src/pages/goods/components/sel-popup.vue
  19. 53 47
      mobile-code/src/pages/goods/detail.vue
  20. 3 1
      mobile-code/src/pages/home/index.vue
  21. 197 0
      mobile-code/src/pages/interest/invite.vue
  22. 133 0
      mobile-code/src/pages/interest/level.vue
  23. 185 0
      mobile-code/src/pages/order/buy.vue
  24. 1 1
      mobile-code/src/pages/order/detail.vue
  25. 2 2
      mobile-code/src/pages/order/list.vue
  26. 3 1
      mobile-code/src/pages/pay/components/keyboard.vue
  27. 14 5
      mobile-code/src/pages/pay/index.vue
  28. 21 16
      mobile-code/src/pages/user/index.vue
  29. 68 0
      mobile-code/src/pages/user/password.vue
  30. 79 0
      mobile-code/src/pages/user/register.vue
  31. 3 3
      mobile-code/src/static/css/base.scss
  32. 98 96
      mobile-code/src/static/css/common.scss
  33. 53 40
      mobile-code/src/static/css/reset.scss
  34. 35 7
      mobile-code/src/static/iconfont/iconfont.css
  35. BIN
      mobile-code/src/static/images/common/category-is.png
  36. BIN
      mobile-code/src/static/images/common/category-no.png
  37. BIN
      mobile-code/src/static/images/common/home-is.png
  38. BIN
      mobile-code/src/static/images/common/home-no.png
  39. BIN
      mobile-code/src/static/images/common/localposition.png
  40. BIN
      mobile-code/src/static/images/common/shop-is.png
  41. BIN
      mobile-code/src/static/images/common/shop-no.png
  42. BIN
      mobile-code/src/static/images/common/user-is.png
  43. BIN
      mobile-code/src/static/images/common/user-no.png
  44. BIN
      mobile-code/src/static/images/interest/VIP-interest.png
  45. BIN
      mobile-code/src/static/images/interest/invite.png
  46. BIN
      mobile-code/src/static/images/interest/invited.png
  47. BIN
      mobile-code/src/static/images/interest/ordered.png
  48. BIN
      mobile-code/src/static/images/interest/shou.png
  49. BIN
      mobile-code/src/static/images/interest/vip.png
  50. 1 1
      mobile/index.html
  51. 92 66
      mobile/static/css/base.scss
  52. 110 178
      mobile/static/css/common.scss
  53. 1 1
      mobile/static/css/minxin.scss
  54. 61 33
      mobile/static/css/reset.scss
  55. 57 164
      mobile/static/iconfont/iconfont.css
  56. BIN
      mobile/static/images/callback/bg.png
  57. BIN
      mobile/static/images/callback/coupon.png
  58. BIN
      mobile/static/images/callback/success.png
  59. BIN
      mobile/static/images/common/category-is.png
  60. BIN
      mobile/static/images/common/category-no.png
  61. BIN
      mobile/static/images/common/home-is.png
  62. BIN
      mobile/static/images/common/home-no.png
  63. BIN
      mobile/static/images/common/localposition.png
  64. BIN
      mobile/static/images/common/shop-is.png
  65. BIN
      mobile/static/images/common/shop-no.png
  66. BIN
      mobile/static/images/common/trademark.png
  67. BIN
      mobile/static/images/common/user-is.png
  68. BIN
      mobile/static/images/common/user-no.png
  69. BIN
      mobile/static/images/coupon/bg.png
  70. BIN
      mobile/static/images/coupon/expired.png
  71. BIN
      mobile/static/images/coupon/is-check.png
  72. BIN
      mobile/static/images/coupon/new-bg.png
  73. BIN
      mobile/static/images/coupon/new-coupon-bg.png
  74. BIN
      mobile/static/images/coupon/no-check.png
  75. BIN
      mobile/static/images/interest/VIP-interest.png
  76. BIN
      mobile/static/images/interest/invite.png
  77. BIN
      mobile/static/images/interest/invited.png
  78. BIN
      mobile/static/images/interest/ordered.png
  79. BIN
      mobile/static/images/interest/shou.png
  80. BIN
      mobile/static/images/interest/vip.png
  81. BIN
      mobile/static/images/order/bg.png
  82. BIN
      mobile/static/images/order/wait-pay.png
  83. BIN
      mobile/static/images/user/attr-default.png
  84. BIN
      mobile/static/images/user/bg.png
  85. BIN
      mobile/static/images/user/hot.png
  86. BIN
      mobile/static/img/invite.c0148d47.png
  87. BIN
      mobile/static/img/new-bg.9e00ae9d.png
  88. 0 0
      mobile/static/js/index.79ee6fbf.js
  89. 0 0
      mobile/static/js/index.e4a82e6c.js
  90. 0 0
      mobile/static/js/pages-callback-index.19747ac6.js
  91. 0 0
      mobile/static/js/pages-category-index.0f32508e.js
  92. 0 0
      mobile/static/js/pages-category-index.9ba7748b.js
  93. 0 0
      mobile/static/js/pages-category-index~pages-order-buy~pages-order-detail~pages-order-list~pages-pay-index.b4f3eb1d.js
  94. 0 0
      mobile/static/js/pages-coupon-list.b154d7f5.js
  95. 0 0
      mobile/static/js/pages-goods-detail.645a297c.js
  96. 0 1
      mobile/static/js/pages-goods-detail.e76218d3.js
  97. 0 1
      mobile/static/js/pages-home-index.1735f5fa.js
  98. 0 0
      mobile/static/js/pages-home-index.83732e25.js
  99. 0 0
      mobile/static/js/pages-interest-invite.e8e03a76.js
  100. 0 0
      mobile/static/js/pages-interest-level.b825a5d0.js

+ 237 - 0
mobile-code/src/components/app-area-sel.vue

@@ -0,0 +1,237 @@
+<template>
+	<div class="app-area-sel">
+		<bottom-popup class="popup-wrap" :show="show" @close="hidePopup">
+			<div class="map-wrap">
+				<div class="map-top-tit-wrap">
+					<div class="map-top-tit">选择收货地址</div>
+					<app-close icon="iconguanbi" @close="hidePopup" />
+				</div>
+				<!-- 搜索 -->
+				<div class="map-search">
+					<app-search-module placeholder="请输入你的收货地址" />
+				</div>
+				<!-- 地图 -->
+				<div class="map-box">
+					<map id="myMap" style="width: 100%; height: 140px;" :latitude="latitude" :longitude="longitude" @regionchange="mapChange">
+						<cover-image class="current-site-icon" src="../../static/images/common/localposition.png"></cover-image>
+						<cover-view class="reload" @click="reload">
+							<cover-view class="center1">
+								<cover-view class="center2"></cover-view>
+							</cover-view>
+						</cover-view>
+					</map>
+				</div>
+				<!-- 列表 -->
+				<scroll-view class="near-list" scroll-y>
+					<view v-for="(item,index) in nearListData" :key="index" @click="switchAddress(item,index)" class="near-item">
+						<div class="current-site" :class="{'active' : currentSelectAddress === index}"></div>
+						<view>
+							<view :class="['title',currentSelectAddress === index? 'title1':'']">{{item.title}}</view>
+							<view class="add">{{item.address}}</view>
+						</view>
+					</view>
+				</scroll-view>
+			</div>
+		</bottom-popup>
+	</div>
+</template>
+
+<script>
+import bottomPopup from '@/components/plugin/bottom-popup'
+import appClose from '@/components/module/app-close'
+import appSearchModule from '@/components/module/app-search'
+export default {
+	name: 'app-area-sel',
+	components: {
+		bottomPopup,
+		appClose,
+		appSearchModule
+	},
+	props: {
+		show: {
+			type: Boolean,
+			default: false
+		}
+	},
+	data() {
+		return {
+			// 地图
+			latitude: 24.44579,
+			longitude: 118.08243,
+			// 列表
+			currentSelectAddress: 0,
+			nearListData: [
+				{
+					title: '中国共产党厦门市思明区纪律检查委员会',
+					address: '福建省厦门市思明区民族路33号'
+				},
+				{
+					title: '厦门市思明区人民政府',
+					address: '福建省厦门市思明区民族路33号'
+				},
+				{
+					title: '海滨商厦',
+					address: '福建省厦门市思明区民族路42~44'
+				},
+				{
+					title: '卢卡国际青年旅舍',
+					address: '福建省厦门市思明区民族路35号(思明区政府对面)'
+				},
+				{
+					title: '中国共产党厦门市思明区纪律检查委员会',
+					address: '福建省厦门市思明区民族路33号'
+				},
+				{
+					title: '厦门市思明区人民政府',
+					address: '福建省厦门市思明区民族路33号'
+				},
+				{
+					title: '海滨商厦',
+					address: '福建省厦门市思明区民族路42~44'
+				}
+			]
+		}
+	},
+	onLoad(val) {
+		this.mapCtx = uni.createMapContext('myMap')
+		this.query = val
+		this.reload()
+	},
+	methods: {
+		hidePopup() {
+			this.$emit('hide')
+		},
+		// 地图操作
+		reload() {
+			uni.getLocation({
+				type: 'wgs84',
+				success: res => {
+					this.latitude = res.latitude
+					this.longitude = res.longitude
+					// this.nearList()
+				},
+				// eslint-disable-next-line handle-callback-err
+				fail: err => {
+					this.$msg('定位失败')
+					// setTimeout(function() {
+					// 	uni.navigateBack({
+					// 		delta: 1
+					// 	})
+					// }, 1500)
+				}
+			})
+		},
+		mapChange(e) {
+			if (e.type == 'end' && (e.causedBy == 'scale' || e.causedBy == 'drag')) {
+				this.mapCtx.getCenterLocation({
+					success: res => {
+						this.longitude = res.longitude
+						this.latitude = res.latitude
+						// this.nearList()
+					}
+				})
+			}
+		},
+		// 获取列表
+		nearList() {
+			geocoder({
+				latitude: this.latitude,
+				longitude: this.longitude
+			}).then(res => {
+				console.log(res)
+				let data = res.result
+				this.currentSelectAddress = 0
+				this.nearListData = data.pois
+				// this.currentRegion = [data.address_component.province, data.address_component.city, data.address_component.district]
+			})
+		},
+		switchAddress(item, index) {
+			// this.currentSelectAddress = index
+			// this.latitude = item.location.lat
+			// this.longitude = item.location.lng
+			// if (!this.$util.isEmpty(item.province) && !this.$util.isEmpty(item.city)) {
+			// 	this.currentRegion = [item.province, item.city, item.district]
+			// }
+			this.$emit('change', item)
+		}
+	}
+}
+</script>
+
+<style lang="scss" scoped>
+	// 弹窗
+	/deep/.popup-wrap {
+		.tui-popup-class {
+			border-top-left-radius: 20px;
+			border-top-right-radius: 20px;
+		}
+	}
+	.map-wrap {
+		.map-top-tit-wrap {
+			padding: 30px 0;
+			text-align: center;
+			font-size: 34px;
+		}
+		.map-search {
+			padding: 0 30px;
+			margin-bottom: 20px;
+		}
+		.map-box {
+			.current-site-icon {
+				width: 63px;
+				height: 90px;
+				position: absolute;
+				top: 50%;
+				left: 50%;
+				transform: translate(-50%, -50%);
+			}
+		}
+
+		// 列表
+		.near-list {
+			height: 620rpx;
+			// padding-bottom: 110rpx;
+			box-sizing: border-box;
+			.near-item {
+				line-height: 40rpx;
+				padding: 18rpx 50rpx 18rpx 0;
+				margin-left: 90px;
+				text-align: left;
+				border-bottom: 1px solid #eee;
+				position: relative;
+			}
+			.current-site {
+				width: 16px;
+				height: 16px;
+				background-color: #dedede;
+				border-radius: 50%;
+				position: absolute;
+				top: 60rpx;
+				left: -60rpx;
+				&.active {
+					background-color: $mainColor;
+				}
+			}
+			.near-item .title {
+				color: #282828;
+				font-size: 28rpx;
+				white-space: nowrap;
+				overflow: hidden;
+				text-overflow: ellipsis;
+			}
+			.near-item .add {
+				color: $fontColor3;
+				font-size: 22rpx;
+				white-space: nowrap;
+				overflow: hidden;
+				text-overflow: ellipsis;
+			}
+			.near-item .title1 {
+				color: $mainColor;
+			}
+			.near-item .add1 {
+				color: $mainColor;
+			}
+		}
+	}
+</style>

+ 1 - 1
mobile-code/src/components/app-coupon-sel.vue

@@ -37,7 +37,7 @@
 							</div>
 							<div class="list-det-right">
 								<div class="coupon-message">
-									<div class="app-font-color-2">优惠券</div>
+									<div class="app-color-2">优惠券</div>
 									<div>适用:全品类</div>
 									<div>有效至:2020-10-11</div>
 								</div>

+ 0 - 0
mobile-code/src/components/app_date_picker.vue → mobile-code/src/components/app-date-picker.vue


+ 242 - 0
mobile-code/src/components/app-delivery.vue

@@ -0,0 +1,242 @@
+<template>
+	<div class="app-delivery-module">
+		<!-- 配送公共组件 -->
+		<!-- 收花人 -->
+		<div class="module-com">
+			<tui-list-cell class="line-cell" :hover="false">
+				<div class="tui-title">收花人姓名</div>
+				<input placeholder-class="phcolor" class="tui-input" name="name" placeholder="请输入姓名" maxlength="50" type="number" />
+			</tui-list-cell>
+			<tui-list-cell class="line-cell" :hover="false">
+				<div class="tui-title">电话</div>
+				<input placeholder-class="phcolor" class="tui-input" name="phone" placeholder="请输入电话" maxlength="50" type="number" />
+			</tui-list-cell>
+			<tui-list-cell class="line-cell" :hover="false" :arrow="true" @click="selRegionFn">
+				<div class="tui-title">收花人地址</div>
+				<div class="tui-input">福建厦门</div>
+			</tui-list-cell>
+			<tui-list-cell class="line-cell" :hover="false">
+				<div class="tui-title">详细地址</div>
+				<input placeholder-class="phcolor" class="tui-input" name="phone" placeholder="小区、大厦或街道名称,如金尚小区" maxlength="50" type="number" />
+			</tui-list-cell>
+			<tui-list-cell class="line-cell" :hover="false">
+				<div class="tui-title">门牌号</div>
+				<input placeholder-class="phcolor" class="tui-input" name="phone" placeholder="楼号门牌号,如23号403室 (选填)" maxlength="50" type="number" />
+			</tui-list-cell>
+		</div>
+		<!-- 订花人 -->
+		<div class="module-com">
+			<tui-list-cell class="line-cell" :hover="false">
+				<div class="tui-title">订花人姓名</div>
+				<input placeholder-class="phcolor" class="tui-input" name="age" placeholder="请输入姓名 (选填)" maxlength="50" type="number" />
+			</tui-list-cell>
+			<tui-list-cell class="line-cell" :hover="false">
+				<div class="tui-title">订花人电话</div>
+				<input placeholder-class="phcolor" class="tui-input" name="age" placeholder="填了花送到了会通知您 (选填)" maxlength="50" type="number" />
+			</tui-list-cell>
+			<tui-list-cell class="line-cell" :hover="false" :arrow="true">
+				<div class="tui-title">送达时间</div>
+				<picker mode="date" :value="time" @change="selTimeFn" class="tui-input">
+					<div v-if="time">{{ time }}</div>
+					<div class="tui-placeholder" v-else>请选择送达时间</div>
+				</picker>
+			</tui-list-cell>
+			<!-- 具体时间 -->
+			<div class="delivery-time">
+				<button class="button-com" :class="[timeTodaySel == 0 ? 'red' : 'default']" @click="timeTodaySelFn(0)">上午</button>
+				<button class="button-com" :class="[timeTodaySel == 1 ? 'red' : 'default']" @click="timeTodaySelFn(1)">中午</button>
+				<button class="button-com" :class="[timeTodaySel == 2 ? 'red' : 'default']" @click="timeTodaySelFn(2)">下午</button>
+			</div>
+		</div>
+		<!-- 贺卡 -->
+		<div class="module-com gift-wrap">
+			<tui-list-cell :hover="false">
+				<div class="gift-content">
+					<div class="flex-center">
+						<checkbox class="ljd-checkbox" checked @change="giftChange"></checkbox>
+						<span class="need-gift">需要贺卡</span>
+					</div>
+					<div class="gitf-textarea">
+						<app-textarea placeholder="请填写贺卡内容" v-model="gift" @blur="blursave('blur')" />
+					</div>
+				</div>
+			</tui-list-cell>
+		</div>
+		<!-- 备注 -->
+		<div class="module-com">
+			<tui-list-cell class="line-cell" :hover="false">
+				<div class="tui-title">备注</div>
+				<input placeholder-class="phcolor" class="tui-input" name="age" placeholder="(选填)" maxlength="50" type="number" />
+			</tui-list-cell>
+		</div>
+		<!-- 商品金额 -->
+		<div class="module-com shop-price-wrap">
+			<div class="module-tit">商品金额</div>
+			<div class="module-det">
+				<app-list-module v-for="(item, subIndex) in 2" :key="subIndex" />
+				<div class="shop-prompt">
+					<div>
+						<span>运费(6公里)</span>
+						<i class="iconfont iconchangjianwentixiangguanwenti2"></i>
+					</div>
+					<div>¥2</div>
+				</div>
+				<div class="shop-prompt">
+					<div>总计</div>
+					<div>¥400</div>
+				</div>
+			</div>
+		</div>
+		<!-- 可选优惠 -->
+		<div class="module-com discount-wrap">
+			<div class="module-tit">可选优惠</div>
+			<div class="module-det">
+				<app-coupon-sel :discountArr="['member', 'coupon']" />
+			</div>
+		</div>
+		<!-- 匿名派送 -->
+		<div class="none-name-delivery flex-center">
+			<checkbox class="ljd-checkbox" @change="giftChange"></checkbox>
+			<span class="none-name-text">匿名派送</span>
+		</div>
+        <!-- 选择地区 -->
+        <app-area-sel :show="showRegion" @hide="hideAreaSel" @change="changeAreaFn" />
+	</div>
+</template>
+
+<script>
+import tuiListCell from '@/components/plugin/list-cell'
+import appDatePicker from '@/components/app-date-picker'
+import appTextarea from '@/components/app-textarea'
+import appListModule from '@/components/module/app-order-list'
+import appCouponSel from '@/components/app-coupon-sel'
+import appAreaSel from '@/components/app-area-sel'
+export default {
+	name: 'app-delivery-module',
+	components: {
+		tuiListCell,
+		appDatePicker,
+		appTextarea,
+		appListModule,
+		appCouponSel,
+		appAreaSel
+	},
+	data() {
+		return {
+			time: '',
+			timeTodaySel: 0,
+			region: [],
+			gift: '',
+			showRegion: false
+		}
+	},
+	methods: {
+		selTimeFn(e) {
+			this.time = e.detail.value
+		},
+		selRegionFn() {
+			this.showRegion = true
+		},
+		changeAreaFn(item) {
+			console.log(item)
+		},
+		hideAreaSel() {
+			this.showRegion = false
+		},
+		timeTodaySelFn(index) {
+			this.timeTodaySel = index
+		},
+		giftChange() {
+			this.aaa = !this.aaa
+		}
+	}
+}
+</script>
+
+<style lang="scss" scoped>
+	.app-delivery-module {
+		.module-com {
+			margin-bottom: 20px;
+			background-color: #fff;
+			.module-tit {
+				padding: 20px 18px;
+				font-size: 28px;
+				font-weight: 600;
+				border-bottom: 1px solid $borderColor;
+			}
+			.module-det {
+				padding: 0 30px;
+			}
+		}
+		// 公共
+		.line-cell {
+			.tui-title {
+				width: 210px;
+				color: $fontColor2;
+			}
+			.tui-input {
+				width: calc(100% - 210px);
+				font-size: 28px;
+			}
+			.tui-placeholder {
+				color: #ccc;
+			}
+			.phcolor {
+				color: #ccc;
+			}
+		}
+		// 今天时间选择
+		.delivery-time {
+			@include disFlex(center, center);
+			background-color: #fff;
+			padding: 20px 0;
+			// border-top: 1px solid $borderColor;
+			.button-com {
+				padding-top: 14px;
+				padding-bottom: 10px;
+				margin: 0 10px;
+			}
+		}
+		// 贺卡
+		.gift-wrap {
+			.gift-content {
+				width: 100%;
+			}
+			.need-gift {
+				margin-left: 14px;
+				color: $fontColor2;
+			}
+			.gitf-textarea {
+				margin-top: 40px;
+			}
+		}
+		// 商品金额
+		.shop-price-wrap {
+			.shop-prompt {
+				@include disFlex(center, space-between);
+				color: $fontColor2;
+                margin: 20px 0;
+                .iconfont {
+                    color: $fontColor3;
+                    margin-left: 8px;
+                }
+			}
+		}
+		// 可选优惠
+		.discount-wrap {
+			.module-det {
+				padding-top: 20px;
+				padding-bottom: 20px;
+			}
+        }
+        // 匿名派送
+        .none-name-delivery {
+            padding-left: 30px;
+            margin-top: 40px;
+			.none-name-text {
+				margin-left: 14px;
+				color: $fontColor2;
+			}
+        }
+	}
+</style>

+ 11 - 7
mobile-code/src/components/module/app-activily-coupon.vue

@@ -1,5 +1,5 @@
 <template>
-	<modal :show="modalShow" @cancel="modalCancel" :custom="true" padding="0 0" bgcolor="none">
+	<modal :show="show" @cancel="modalCancel" :custom="true" padding="0 0" bgcolor="none">
 		<div class="app-activily-coupon" @click="receive">
 			<div class="sctivliy-bg">
 				<img src="../../static/images/coupon/new-bg.png" alt mode="widthFix" />
@@ -19,7 +19,7 @@
 					</div>
 					<div class="list-det-right">
 						<div class="coupon-message">
-							<div class="app-font-color-1">优惠券</div>
+							<div class="app-color-1">优惠券</div>
 							<div>适用:全品类</div>
 							<div>有效至:2020-10-11</div>
 						</div>
@@ -37,17 +37,21 @@ export default {
 	components: {
 		modal
 	},
-	data() {
-		return {
-			modalShow: true
+	props: {
+		show: {
+			type: Boolean,
+			default: false
 		}
 	},
+	data() {
+		return {}
+	},
 	methods: {
 		receive() {
-			alert('领取!')
+			console.log('领取!')
 		},
 		modalCancel() {
-			this.modalShow = false
+			this.show = false
 		}
 	}
 }

+ 7 - 2
mobile-code/src/components/module/app-close.vue

@@ -1,14 +1,19 @@
 <template>
     <!-- 公共按钮 -->
 	<div class="app-close" @click="close">
-		<i class="iconfont iconclose"></i>
+		<i class="iconfont" :class="[icon]"></i>
 	</div>
 </template>
 
 <script>
 export default {
 	name: 'app-close',
-	props: {},
+	props: {
+		icon: {
+			type: String,
+			default: 'iconclose'
+		}
+	},
 	methods: {
 		close() {
 			this.$emit('close')

+ 0 - 0
mobile-code/src/components/module/order-list.vue → mobile-code/src/components/module/app-order-list.vue


+ 48 - 0
mobile-code/src/components/module/app-search.vue

@@ -0,0 +1,48 @@
+<template>
+	<div class="app-search-module">
+        <div class="icon-wrap">
+            <i class="iconfont iconsearch"></i>
+        </div>
+        <div class="input-wrap">
+            <input type="text" :placeholder="placeholder" placeholder-class="placeholder">
+        </div>
+    </div>
+</template>
+
+<script>
+export default {
+	name: 'app-search-module',
+	props: {
+		placeholder: {
+			type: String,
+			default: '请输入'
+		}
+	}
+}
+</script>
+
+<style lang="scss" scoped>
+.app-search-module {
+    @include disFlex(center, flex-start);
+    height: 66px;
+    width: 100%;
+    background-color: #F0F2F6;
+    border-radius: 10px;
+    .icon-wrap {
+        margin: 0 14px 0 20px;
+        width: 40px;
+        .iconfont {
+            color: #ccc;
+        }
+    }
+    .input-wrap {
+        width: calc(100% - 90px);
+        input {
+            font-size: 26px;
+        }
+        .placeholder {
+            color: #ccc;
+        }
+    }
+}
+</style>

+ 99 - 0
mobile-code/src/components/module/app-share-mask.vue

@@ -0,0 +1,99 @@
+<template>
+	<div class="app-share-mask">
+		<div class="share-mask" :class="[show ? 'share-mask-show' : '']">
+			<div class="share-content">
+				<div class="share-img">
+					<img src="../../static/images/interest/shou.png" alt mode="widthFix" />
+				</div>
+				<div class="share-text">
+					<div>点此右上角</div>
+					<div>分享即可邀请</div>
+				</div>
+			</div>
+			<div class="share-btn">
+                <button class="button-com default" @tap.stop="handleClick">知道了</button>
+            </div>
+		</div>
+		<div class="tui-alert-mask" :class="[show ? 'tui-alert-mask-show' : '']"></div>
+	</div>
+</template>
+
+<script>
+export default {
+	name: 'app-share-mask',
+	props: {
+		show: {
+			type: Boolean,
+			default: false
+		}
+	},
+	data() {
+		return {}
+	},
+	methods: {
+		handleClick() {
+			if (!this.show) return
+			this.$emit('click')
+		}
+	}
+}
+</script>
+
+<style lang="scss" scoped>
+	.app-share-mask {
+		.share-mask {
+			position: fixed;
+			top: 0;
+			left: 0;
+			right: 0;
+			z-index: 998;
+			opacity: 0;
+			color: #fff;
+			.share-content {
+                width: 100%;
+                text-align: right;
+				.share-img {
+					width: 90px;
+                    margin: 26px 128px 36px auto;
+				}
+				.share-text {
+					width: 210px;
+					font-size: 34px;
+					text-align: center;
+                    margin: 0 80px 36px auto;
+				}
+			}
+			.share-btn {
+                @include disFlex(center, center);
+                margin-top: 200px;
+                .button-com {
+				    width: 340px;
+				    padding-top: 32px;
+                    padding-bottom: 32px;
+                    margin: 0 auto;
+                    font-size: 32px;
+                }
+			}
+		}
+		.share-mask-show {
+			// transform: translate(-50%, -50%) scale(1);
+			opacity: 1;
+		}
+		.tui-alert-mask {
+			position: fixed;
+			top: 0;
+			left: 0;
+			right: 0;
+			bottom: 0;
+			background: rgba(0, 0, 0, 0.5);
+			z-index: 996;
+			transition: all 0.3s ease-in-out;
+			opacity: 0;
+			visibility: hidden;
+		}
+		.tui-alert-mask-show {
+			visibility: visible;
+			opacity: 1;
+		}
+	}
+</style>

+ 35 - 0
mobile-code/src/components/module/app-vip.vue

@@ -0,0 +1,35 @@
+<template>
+	<div class="app-vip-module">
+		<img class="vip-img" src="../../static/images/interest/vip.png" alt mode="widthFix" />
+		<div class="vip-text">{{ text }}</div>
+	</div>
+</template>
+
+<script>
+export default {
+	name: 'app-vip-module',
+	props: {
+		text: {
+			type: String,
+			default: 'vip'
+		}
+	}
+}
+</script>
+
+<style lang="scss" scoped>
+	.app-vip-module {
+		position: relative;
+        width: 104px;
+		.vip-img {
+            width: 100%;
+		}
+		.vip-text {
+			position: absolute;
+			top: 2px;
+			left: 46px;
+			color: #fff;
+			transform: scale(0.9);
+		}
+	}
+</style>

+ 134 - 0
mobile-code/src/components/plugin/alert.vue

@@ -0,0 +1,134 @@
+<template>
+	<view>
+		<view class="tui-alert-class tui-alert-box" :class="[show?'tui-alert-show':'']">
+			<view class="tui-alert-content" :style="{fontSize:size+'rpx',color:color}">
+				<slot></slot>
+			</view>
+			<view class="tui-alert-btn" :style="{color:btnColor}" hover-class="tui-alert-btn-hover" :hover-stay-time="150"
+			 @tap.stop="handleClick">{{btnText}}</view>
+		</view>
+		<view class="tui-alert-mask" :class="[show?'tui-alert-mask-show':'']" @tap.stop="handleClickCancel"></view>
+	</view>
+</template>
+
+<script>
+export default {
+	name: 'tuiAlert',
+	props: {
+		// 控制显示
+		show: {
+			type: Boolean,
+			default: false
+		},
+		// 提示信息字体大小
+		size: {
+			type: Number,
+			default: 28
+		},
+		// 提示信息字体颜色
+		color: {
+			type: String,
+			default: '#333'
+		},
+		// 按钮字体颜色
+		btnColor: {
+			type: String,
+			default: '#666'
+		},
+		btnText: {
+			type: String,
+			default: '知道了'
+		},
+		// 点击遮罩 是否可关闭
+		maskClosable: {
+			type: Boolean,
+			default: false
+		}
+	},
+	methods: {
+		handleClick(e) {
+			if (!this.show) return
+			this.$emit('click', {})
+		},
+		handleClickCancel() {
+			if (!this.maskClosable) return
+			this.$emit('cancel')
+		}
+	}
+}
+</script>
+
+<style>
+	.tui-alert-box {
+		position: fixed;
+		width: 560rpx;
+		left: 50%;
+		top: 50%;
+		background: #fff;
+		transition: all 0.3s ease-in-out;
+		transform: translate(-50%, -50%) scale(0);
+		opacity: 0;
+		border-radius: 20px;
+		overflow: hidden;
+		z-index: 998;
+	}
+
+	.tui-alert-show {
+		transform: translate(-50%, -50%) scale(1);
+		opacity: 1;
+	}
+
+	.tui-alert-mask {
+		position: fixed;
+		top: 0;
+		left: 0;
+		right: 0;
+		bottom: 0;
+		background: rgba(0, 0, 0, 0.5);
+		z-index: 996;
+		transition: all 0.3s ease-in-out;
+		opacity: 0;
+		visibility: hidden;
+	}
+
+	.tui-alert-mask-show {
+		visibility: visible;
+		opacity: 1;
+	}
+
+	.tui-alert-content {
+		text-align: center;
+		color: #333333;
+		padding: 98rpx 48rpx 92rpx 48rpx;
+		box-sizing: border-box;
+		word-break: break-all;
+	}
+
+	.tui-alert-btn {
+		width: 100%;
+		height: 90rpx;
+		display: flex;
+		align-items: center;
+		justify-content: center;
+		background: #fff;
+		box-sizing: border-box;
+		position: relative;
+		font-size: 32rpx;
+		line-height: 32rpx;
+	}
+
+	.tui-alert-btn-hover {
+		background: #f7f7f7;
+	}
+
+	.tui-alert-btn::before {
+		width: 100%;
+		content: "";
+		position: absolute;
+		border-top: 1rpx solid #E0E0E0;
+		-webkit-transform: scaleY(0.5);
+		transform: scaleY(0.5);
+		left: 0;
+		top: 0;
+	}
+</style>

+ 3 - 3
mobile-code/src/components/plugin/list-cell.vue

@@ -88,10 +88,10 @@ export default {
 	.tui-list-cell::after {
 		content: '';
 		position: absolute;
-		border-bottom: 1rpx solid #eaeef1;
+		border-bottom: 2px solid #eee;
 		-webkit-transform: scaleY(0.5);
 		transform: scaleY(0.5);
-		top: 0;
+		bottom: 0;
 		right: 0;
 		left: 0;
 	}
@@ -118,7 +118,7 @@ export default {
 		transform: matrix(0.5, 0.5, -0.5, 0.5, 0, 0);
 		position: absolute;
 		top: 50%;
-		margin-top: -7px;
+		margin-top: -12px;
 		right: 30rpx;
 	}
 </style>

+ 1 - 0
mobile-code/src/components/plugin/tabs.vue

@@ -172,6 +172,7 @@ export default {
 		align-items: center;
 		justify-content: space-between;
 		z-index: 99;
+    	box-shadow: 4px 4px 10px #eee;
 		.tui-tabs-item {
 			&.border-left {
 				border-left: 2px solid #ddd;

+ 50 - 8
mobile-code/src/pages.json

@@ -45,6 +45,23 @@
 		}
 	],
 	"subPackages": [
+		{
+			"root": "pages/user",
+			"pages": [
+				{
+					"path": "register",
+					"style": {
+						"navigationBarTitleText": "注册"
+					}
+				},
+				{
+					"path": "password",
+					"style": {
+						"navigationBarTitleText": "修改密码"
+					}
+				}
+			]
+		},
 		{
 			"root": "pages/goods",
 			"pages": [
@@ -103,6 +120,31 @@
 						"navigationBarTitleText": "订单列表",
 						"enablePullDownRefresh": true
 					}
+				},
+				{
+					"path": "buy",
+					"style": {
+						"navigationBarTitleText": "订单确认"
+					}
+				}
+			]
+		},
+		{
+			"root": "pages/interest",
+			"pages": [
+				{
+					"path": "invite",
+					"style": {
+						"navigationBarTitleText": "邀请排行",
+						"enablePullDownRefresh": true
+					}
+				},
+				{
+					"path": "level",
+					"style": {
+						"navigationBarTitleText": "会员等级",
+						"enablePullDownRefresh": true
+					}
 				}
 			]
 		}
@@ -122,26 +164,26 @@
 		"backgroundColor": "#ffffff",
 		"list": [{
 				"pagePath": "pages/home/index",
-				"iconPath": "static/images/extension.png",
-				"selectedIconPath": "static/images/extension.png",
+				"iconPath": "static/images/common/home-no.png",
+				"selectedIconPath": "static/images/common/home-is.png",
 				"text": "首页"
 			},
 			{
 				"pagePath": "pages/category/index",
-				"iconPath": "static/images/extension.png",
-				"selectedIconPath": "static/images/extension.png",
+				"iconPath": "static/images/common/category-no.png",
+				"selectedIconPath": "static/images/common/category-is.png",
 				"text": "分类"
 			},
 			{
 				"pagePath": "pages/shop/index",
-				"iconPath": "static/images/extension.png",
-				"selectedIconPath": "static/images/extension.png",
+				"iconPath": "static/images/common/shop-no.png",
+				"selectedIconPath": "static/images/common/shop-is.png",
 				"text": "门店"
 			},
 			{
 				"pagePath": "pages/user/index",
-				"iconPath": "static/images/extension.png",
-				"selectedIconPath": "static/images/extension.png",
+				"iconPath": "static/images/common/user-no.png",
+				"selectedIconPath": "static/images/common/user-is.png",
 				"text": "我的"
 			}
 		]

+ 2 - 2
mobile-code/src/pages/callback/index.vue

@@ -20,8 +20,8 @@
 					<span>¥</span>
 					<span class="app-size-36 app-bold">3251.00</span>
 				</div>
-				<div class="surplus app-font-color-3">剩余¥3515.00</div>
-				<div class="order-num app-font-color-3">订单号: 515155151515151551</div>
+				<div class="surplus app-color-3">剩余¥3515.00</div>
+				<div class="order-num app-color-3">订单号: 515155151515151551</div>
 				<!-- 一个主按钮 -->
 				<template v-if="false">
 					<div class="call-btn-com call-one-btn">

+ 1 - 1
mobile-code/src/pages/coupon/list.vue

@@ -25,7 +25,7 @@
 					</div>
 					<div class="list-det-right">
 						<div class="coupon-message">
-							<div class="app-font-color-2">优惠券</div>
+							<div class="app-color-2">优惠券</div>
 							<div>适用:全品类</div>
 							<div>有效至:2020-10-11</div>
 						</div>

+ 0 - 2
mobile-code/src/pages/goods/components/buy-foot.vue

@@ -47,8 +47,6 @@ export default {
         @include disFlex(center, center);
         .button-com {
             width: calc(90% - 30px);
-            height: 50px;
-            line-height: 50px;
             font-size: 32px;
             font-weight: 400;
         }

+ 1 - 1
mobile-code/src/pages/goods/components/sel-popup.vue

@@ -35,7 +35,7 @@
 					</div>
 				</scroll-view>
 				<div class="tui-popup-btn">
-                    <button class="button-com red">下一步</button>
+                    <button class="button-com red" @click="$util.pageTo('/pages/order/buy')">下一步</button>
 				</div>
 			</div>
         </bottom-popup>

+ 53 - 47
mobile-code/src/pages/goods/detail.vue

@@ -12,13 +12,14 @@
 				<div class="tui-pro-title app-size-32">谈判官明星同款耳坠韩国气质简约显脸瘦的耳环女百搭个性长款耳钉 个性水滴耳环【A2】</div>
 				<button open-type="share" class="tui-share-btn tui-share-position">
 					<app-tag type="gray" tui-tag-class="tui-tag-share tui-size" shape="circleLeft" size="small">
-						<div class="tui-icon tui-icon-partake" style="color:#999; font-size:15px"></div>
-						<!-- <tui-icon name="partake" color="#999" size="15"></tui-icon> -->
-						<text class="tui-share-text tui-gray">分享</text>
+						<div class="flex-center">
+							<i class="iconfont iconfenxiang"></i>
+							<text class="tui-share-text tui-gray">分享</text>
+						</div>
 					</app-tag>
 				</button>
 			</div>
-			<div class="shop-express app-font-color-3">
+			<div class="shop-express app-color-3">
 				<div>快递:0.00</div>
 				<div>月销2000</div>
 				<div>浙江杭州</div>
@@ -29,7 +30,7 @@
 		<div class="module-wrap shop-detail">
 			<div class="module-tit app-size-30">商品详情</div>
 			<div class="module-det">
-				<img src="../../static/images/swiper.png" alt="" mode="widthFix" />
+				<img src="../../static/images/swiper.png" alt mode="widthFix" />
 			</div>
 		</div>
 		<!-- 商品详情 -->
@@ -63,7 +64,7 @@ export default {
 	data() {
 		return {
 			buyNum: 1,
-			popupShow: true
+			popupShow: false
 		}
 	},
 	onLoad(option) {},
@@ -82,52 +83,57 @@ export default {
 </script>
 
 <style lang="scss" scoped>
-.app-content {
-	padding-bottom: 120px;
-	// 公共模块
-	.module-wrap {
-		margin-top: 20px;
-		background-color: #fff;
-		.module-tit {
-			padding: 14px 30px;
-			border-bottom: 1px solid $borderColor;
-		}
-		.module-det {
-			color: $fontColor2;
-		}
-	}
-	// 公共模块
-	.shop-intro {
-		background: #fff;
-		padding: 30px 0 30px 30px;
-		.tui-pro-titbox {
-			margin: 30px 0 20px;
-			@include disFlex(center, space-between);
-			.tui-pro-title {
-				width: 80%;
+	.app-content {
+		padding-bottom: 120px;
+		// 公共模块
+		.module-wrap {
+			margin-top: 20px;
+			background-color: #fff;
+			.module-tit {
+				padding: 14px 30px;
+				border-bottom: 1px solid $borderColor;
 			}
-			.tui-share-btn {
-				display: block;
-				background: none;
-				margin: 0;
-				padding: 0;
-				border-radius: 0;
-				.tui-share-text {
-					padding-left: 4px;
+			.module-det {
+				color: $fontColor2;
+			}
+		}
+		// 公共模块
+		.shop-intro {
+			background: #fff;
+			padding: 30px 0 30px 30px;
+			.tui-pro-titbox {
+				margin: 30px 0 20px;
+				@include disFlex(center, space-between);
+				.tui-pro-title {
+					width: 80%;
+				}
+				.tui-share-btn {
+					display: block;
+					background: none;
+					margin: 0;
+					padding: 0;
+					border-radius: 0;
+					.tui-share-text {
+						padding-left: 4px;
+						color: $fontColor3;
+					}
+				}
+				.iconfenxiang {
+					font-size: 26px;
 					color: $fontColor3;
+					margin-right: 6px;
 				}
 			}
+			.shop-express {
+				padding-right: 30px;
+				@include disFlex(center, space-between);
+			}
 		}
-		.shop-express {
-			padding-right: 30px;
-			@include disFlex(center, space-between);
-		}
-	}
-	.shop-desc {
-		.module-det {
-			padding: 24px;
-			line-height: 48px;
+		.shop-desc {
+			.module-det {
+				padding: 24px;
+				line-height: 48px;
+			}
 		}
 	}
-}
 </style>

+ 3 - 1
mobile-code/src/pages/home/index.vue

@@ -2,8 +2,10 @@
 	<div class="app-main app-content">
 		<button @click="toPay">去支付页</button>
 		<button @click="$util.pageTo('/pages/callback/index')">支付回调</button>
+		<button @click="$util.pageTo('/pages/user/register')">注册</button>
+		<button @click="$util.pageTo('/pages/user/password')">修改密码</button>
 		<!-- <app-footer /> -->
-		<app-activily-coupon />
+		<app-activily-coupon :show="false" />
 	</div>
 </template>
 

+ 197 - 0
mobile-code/src/pages/interest/invite.vue

@@ -0,0 +1,197 @@
+<template>
+	<div class="app-content">
+		<div class="invite-top-wrap">
+			<div class="invite-top-img">
+				<img src="../../static/images/interest/invite.png" alt mode="widthFix" />
+			</div>
+			<div class="invite-top-price-wrap">
+				<div class="flex-end-center">
+					<span class="money-text">100</span>
+					<span class="app-price">元</span>
+				</div>
+                <div class="app-color-2">
+                    <span>受邀朋友可以得</span>
+                    <span class="app-price">80元优惠券</span>
+                </div>
+			</div>
+		</div>
+		<div class="list-content">
+			<div class="invite-tabs">
+				<div class="tabs-list">
+					<div class="tabs-img">
+						<img src="../../static/images/interest/invited.png" alt mode="widthFix" />
+					</div>
+					<div class="tab-list-right">
+						<div class>已邀请(人)</div>
+						<div class="tabs-num">29</div>
+					</div>
+				</div>
+				<div class="tabs-list">
+					<div class="tabs-img">
+						<img src="../../static/images/interest/ordered.png" alt mode="widthFix" />
+					</div>
+					<div class="tabs-list-right">
+						<div class>已下单(人)</div>
+						<div class="tabs-num">6</div>
+					</div>
+				</div>
+			</div>
+			<!-- 邀请记录 -->
+			<div class="invite-list-blo">
+				<div class="invite-list-tit flex-center-between">
+					<div class="app-size-30">邀请记录</div>
+					<div class="flex-center-end app-color-3">
+						<span>规则说明</span>
+						<i class="iconfont iconchangjianwentixiangguanwenti2"></i>
+					</div>
+				</div>
+				<div class="invite-list-wrap">
+					<div class="invite-list flex-center-between" v-for="(item, index) in 6" :key="index">
+						<div class="list-left flex-center-start">
+							<div class="list-img">
+								<img src="../../static/images/user/attr-default.png" alt mode="widthFix" />
+							</div>
+							<div class>
+								<div class="app-size-30">冯宝宝</div>
+								<div class="app-color-3">
+									<span>2019-10-10 10:00 下单</span>
+									<span class="app-price">¥198</span>
+								</div>
+							</div>
+						</div>
+						<div class="app-size-26">已兑奖</div>
+					</div>
+					<div class="load-more flex-center-center app-color-3">加载更多...</div>
+				</div>
+			</div>
+		</div>
+		<!-- 弹窗 -->
+		<alert-module :show="showAlert" @click="hideAlert" @cancel="hideAlert">
+			<div class="alt-wrap">
+				<div class="alt-tit app-size-34">规则说明</div>
+				<div class="alt-content">
+					<div>1、邀请有礼活动老客可以获得奖励,新客可以获得超值的优惠券;</div>
+					<div>2、只有本店老客户才能发起邀请;</div>
+					<div>3、接受邀请的人需本店新客户;</div>
+					<div>4、本活动只能邀请自己的朋友,请勿滥发邀请链接,否则取消邀请权力。</div>
+				</div>
+			</div>
+		</alert-module>
+		<app-share-mask :show="showShare" @click="hideShare" />
+	</div>
+</template>
+
+<script>
+import alertModule from '@/components/plugin/alert'
+import appShareMask from '@/components/module/app-share-mask'
+export default {
+	name: 'invite',
+	components: {
+		alertModule,
+		appShareMask
+	},
+	data() {
+		return {
+			showAlert: false,
+			showShare: false
+		}
+	},
+	methods: {
+		hideAlert() {
+			this.showAlert = false
+		},
+		hideShare() {
+			this.showShare = false
+		}
+	}
+}
+</script>
+
+<style lang="scss" scoped>
+	.app-content {
+		width: 100%;
+		// position: relative;
+		// 弹窗
+		/deep/.tui-alert-content {
+			padding: 40px 40px 0;
+		}
+		.alt-wrap {
+			.alt-content {
+				margin-top: 30px;
+				margin-bottom: 30px;
+				text-align: left;
+				color: $fontColor2;
+			}
+		}
+	}
+	.invite-top-wrap {
+		position: relative;
+		.invite-top-price-wrap {
+			position: absolute;
+			top: 120px;
+			left: 0;
+            right: 0;
+            text-align: center;
+            .flex-end-center {
+                margin-bottom: 30px;
+            }
+            .money-text {
+                color: $mainColor;
+                font-size: 110px;
+            }
+		}
+	}
+	.list-content {
+		position: relative;
+		top: -100px;
+		width: 96%;
+		margin: 0 auto;
+	}
+	.invite-tabs {
+		padding: 20px 60px 24px;
+		// border-bottom: 20px solid #f5f5f5;
+		margin-bottom: 20px;
+		color: $fontColor3;
+		border-radius: 10px;
+		background-color: #fff;
+		@include disFlex(center, space-between);
+		.tabs-list {
+			@include disFlex(center, flex-end);
+		}
+		.tabs-img {
+			width: 90px;
+			margin-right: 20px;
+		}
+		.tabs-num {
+			font-size: 40px;
+			color: #ff5400;
+			margin-top: 8px;
+		}
+	}
+	.invite-list-blo {
+		padding: 20px 20px 24px;
+		border-radius: 10px;
+		background-color: #fff;
+		.invite-list-tit {
+			margin-bottom: 20px;
+			.iconfont {
+				margin-left: 10px;
+				font-size: 34px;
+			}
+		}
+		.invite-list-wrap {
+			.invite-list {
+				padding: 14px 0;
+				border-bottom: 1px solid $borderColor;
+			}
+			.list-img {
+				width: 80px;
+				margin-right: 20px;
+			}
+			// 加载更多
+			.load-more {
+				padding: 24px 0 6px;
+			}
+		}
+	}
+</style>

+ 133 - 0
mobile-code/src/pages/interest/level.vue

@@ -0,0 +1,133 @@
+<template>
+	<div class="app-content">
+		<div class="rank-top-wrap">
+			<div class="rank-top-text">
+				<div class="rank-top-tit">VIP会员权益</div>
+				<div>升级会员享受更多权益~</div>
+			</div>
+			<div class="rank-top-img">
+				<img src="../../static/images/interest/VIP-interest.png" alt mode="widthFix" />
+			</div>
+		</div>
+		<!--  -->
+		<div class="rank-bottom-wrap">
+			<div class="rank-text">
+				<div>1、充值或消费1元得1积分</div>
+				<div>2、会员权益关系如下:</div>
+			</div>
+			<!-- level -->
+			<div class="level-list-wrap">
+				<div class="level-list-tit">
+					<div>会员等级</div>
+					<div>成长值</div>
+					<div>折扣</div>
+				</div>
+				<div class="level-list-blo">
+					<div class="level-list" v-for="(item, index) in 5" :key="index">
+						<div>
+							<appVipModule class="level-img" :text="`vip${index + 1}`" />
+						</div>
+						<div>2000</div>
+						<div>9</div>
+					</div>
+				</div>
+			</div>
+            <!-- 按钮 -->
+            <div class="btn-wrap">
+                <div class="button-com red big">申请成为会员</div>
+            </div>
+		</div>
+        <!-- 商标 -->
+        <app-trademark-module />
+	</div>
+</template>
+
+<script>
+import appVipModule from '@/components/module/app-vip'
+import appTrademarkModule from '@/components/module/app-trademark'
+export default {
+	name: 'interest-rank',
+	components: {
+		appVipModule,
+		appTrademarkModule
+	}
+}
+</script>
+
+<style lang="scss" scoped>
+	.rank-top-wrap {
+		width: 100%;
+		height: 230px;
+		position: relative;
+		background-color: #191919;
+		.rank-top-text {
+			color: #d2d2d2;
+			padding-top: 60px;
+			padding-left: 70px;
+			.rank-top-tit {
+				color: #ffd515;
+				font-size: 44px;
+				margin-bottom: 10px;
+			}
+		}
+		.rank-top-img {
+			position: absolute;
+			top: 20px;
+			right: 44px;
+			width: 232px;
+		}
+	}
+	// ----
+	.rank-bottom-wrap {
+		padding: 30px;
+		background-color: #fff;
+		.rank-text {
+			margin-bottom: 26px;
+			& > div {
+				margin-bottom: 16px;
+			}
+        }
+        .btn-wrap {
+            width: calc(100% - 60px);
+            margin-top: 50px;
+            .button-com {
+                width: 100%;
+            }
+        }
+		.level-list-wrap {
+            border: 1px solid #EEEEEE;
+            font-size: 26px;
+			.level-list-tit,
+			.level-list {
+				@include disFlex(center, space-between);
+				& > div {
+					margin: 0 auto;
+					flex: 1;
+					@include disFlex(center, center);
+					height: 70px;
+				}
+			}
+			.level-list-tit {
+				color: #fff;
+				background-color: #d9c096;
+				& > div {
+					border-left: 1px solid #fff;
+				}
+				& > div:first-child {
+					border-left: none;
+				}
+			}
+			.level-list {
+				&:nth-child(2n) {
+					background-color: #f7f7ed;
+				}
+				& > div {
+					border-left: 1px solid #EEEEEE;
+				}
+				& > div:first-child {
+					border-left: none;
+				}
+			}
+		}
+	}
+</style>

+ 185 - 0
mobile-code/src/pages/order/buy.vue

@@ -0,0 +1,185 @@
+<template>
+	<div class="app-content">
+		<!-- tabs -->
+		<app-tabs :tabs="tabs" :currentTab="tabIndex" :isFixed="true" :borderLeft="true" @change="tabChange" itemWidth="50%" />
+		<!-- 配送 -->
+		<block v-if="tabIndex == 0">
+			<app-delivery-module />
+		</block>
+		<block v-else>
+			<!-- 收花人 -->
+			<div class="module-com">
+				<tui-list-cell class="line-cell" :hover="false">
+					<div class="tui-title">收花人姓名</div>
+					<input placeholder-class="phcolor" class="tui-input" name="name" placeholder="请输入姓名" maxlength="50" type="number" />
+				</tui-list-cell>
+				<tui-list-cell class="line-cell" :hover="false">
+					<div class="tui-title">电话</div>
+					<input placeholder-class="phcolor" class="tui-input" name="phone" placeholder="请输入电话" maxlength="50" type="number" />
+				</tui-list-cell>
+			</div>
+			<!-- 商品金额 -->
+			<div class="module-com shop-price-wrap">
+				<div class="module-tit">商品金额</div>
+				<div class="module-det">
+					<app-list-module v-for="(item, subIndex) in 2" :key="subIndex" />
+					<div class="shop-prompt">
+						<div>总计</div>
+						<div>¥400</div>
+					</div>
+				</div>
+			</div>
+			<!-- 可选优惠 -->
+			<div class="module-com discount-wrap">
+				<div class="module-tit">可选优惠</div>
+				<div class="module-det">
+					<app-coupon-sel :discountArr="['member', 'coupon']" />
+				</div>
+			</div>
+		</block>
+
+		<app-trademark />
+		<!-- 按钮 -->
+		<div class="page-btn app-footer">
+			<div class="flex-center">
+				<span>应付款</span>
+				<span class="app-price">
+					<span>¥</span>
+					<span class="app-size-40">580</span>
+					<span>.00</span>
+				</span>
+			</div>
+			<button class="button-com red">确认</button>
+		</div>
+		<!-- 弹窗 -->
+		<alert-module :show="showAlert" @click="hideAlert" @cancel="hideAlert">
+			<div class="alt-content">
+				<div>5公里内免运费</div>
+				<div>
+					<span>超过</span>
+					<span class="app-price">5公里</span>
+					<span>每增加1公里</span>
+					<span class="app-price">+2元</span>
+				</div>
+			</div>
+		</alert-module>
+	</div>
+</template>
+
+<script>
+import appTabs from '@/components/plugin/tabs'
+import tuiListCell from '@/components/plugin/list-cell'
+import appDeliveryModule from '@/components/app-delivery'
+import appTrademark from '@/components/module/app-trademark'
+import appListModule from '@/components/module/app-order-list'
+import appCouponSel from '@/components/app-coupon-sel'
+import alertModule from '@/components/plugin/alert'
+export default {
+	name: 'order-buy',
+	components: {
+		appTabs,
+		appDeliveryModule,
+		tuiListCell,
+		appListModule,
+		appCouponSel,
+		appTrademark,
+		alertModule
+	},
+	data() {
+		return {
+			tabIndex: 0,
+			tabs: [
+				{
+					name: '配送'
+				},
+				{
+					name: '我要自提'
+				}
+			],
+			showAlert: false
+		}
+	},
+	methods: {
+		tabChange(e) {
+			this.tabIndex = e.index
+		},
+		hideAlert() {
+			this.showAlert = false
+		}
+	}
+}
+</script>
+
+<style lang='scss' scoped>
+	.app-content {
+		padding-top: 100px;
+		padding-bottom: 120px;
+		min-height: 0;
+		.module-com {
+			margin-bottom: 20px;
+			background-color: #fff;
+			.module-tit {
+				padding: 20px 18px;
+				font-size: 28px;
+				font-weight: 600;
+				border-bottom: 1px solid $borderColor;
+			}
+			.module-det {
+				padding: 0 30px;
+			}
+		}
+		// 公共
+		.line-cell {
+			.tui-title {
+				width: 210px;
+				color: $fontColor2;
+			}
+			.tui-input {
+				width: calc(100% - 210px);
+				font-size: 28px;
+			}
+			.tui-placeholder {
+				color: #ccc;
+			}
+			.phcolor {
+				color: #ccc;
+			}
+		}
+		// 商品金额
+		.shop-price-wrap {
+			.shop-prompt {
+				@include disFlex(center, space-between);
+				color: $fontColor2;
+				margin: 20px 0;
+			}
+		}
+		// 可选优惠
+		.discount-wrap {
+			.module-det {
+				padding-top: 20px;
+				padding-bottom: 20px;
+			}
+		}
+	}
+	.page-btn {
+		width: calc(100% - 60px);
+		@include disFlex(center, space-between);
+		padding: 0 30px;
+		.app-price {
+			margin-bottom: 8px;
+			margin-left: 4px;
+		}
+		.red {
+			width: 270px;
+		}
+	}
+	// 弹窗
+	/deep/.tui-alert-content {
+		padding: 40px 40px;
+	}
+	.alt-content {
+		& > div {
+			margin: 10px 0;
+		}
+	}
+</style>

+ 1 - 1
mobile-code/src/pages/order/detail.vue

@@ -107,7 +107,7 @@
 </template>
 
 <script>
-import listModule from '@/components/module/order-list'
+import listModule from '@/components/module/app-order-list'
 import appCoupon from '@/components/app-coupon-sel'
 export default {
 	name: 'order-detail',

+ 2 - 2
mobile-code/src/pages/order/list.vue

@@ -2,7 +2,7 @@
 	<div class="app-content">
 		<div class="list-wrap" v-for="(item, index) in 4" :key="index" @click="$util.pageTo('/pages/order/detail')">
 			<div class="list-top flex-center-between">
-				<div class="app-font-color-3">订单编号:3261515151</div>
+				<div class="app-color-3">订单编号:3261515151</div>
 				<div class="app-price">等待支付</div>
 			</div>
 			<div class="list-blo">
@@ -20,7 +20,7 @@
 </template>
 
 <script>
-import listModule from '@/components/module/order-list'
+import listModule from '@/components/module/app-order-list'
 export default {
 	name: 'order-list',
 	components: {

+ 3 - 1
mobile-code/src/pages/pay/components/keyboard.vue

@@ -6,7 +6,9 @@
 					<li :class="{'zero': item == 0}" v-for="(item, index) in keyLeftData" :key="index" @click="clickKeyFn(item)">{{ item }}</li>
 				</ul>
 				<ul class="ui-keyboard-btn">
-					<li class="btn-del" @click="del">&lt;</li>
+					<li class="btn-del" @click="del">
+                        <i class="iconfont iconshanchu"></i>
+                    </li>
 					<li class="btn-ok" @click="comfirm">完成</li>
 				</ul>
 			</div>

+ 14 - 5
mobile-code/src/pages/pay/index.vue

@@ -4,7 +4,7 @@
 		<app-tabs :tabs="tabs" :currentTab="tabIndex" :isFixed="true" :borderLeft="true" @change="tabChange" itemWidth="50%" />
 		<!-- </div> -->
 		<!-- 直接付款 -->
-		<template v-if="tabIndex == 0">
+		<block v-if="tabIndex == 0">
 			<div class="logo-wrap">
 				<div class="logo-img">
 					<img src="../../static/images/user/attr-default.png" alt mode="widthFix" />
@@ -23,9 +23,11 @@
 					<button class="button-com green" @click="_pay">微信支付</button>
 				</div>
 			</div>
-		</template>
+		</block>
 		<!-- 我要配送 -->
-		<template v-else></template>
+		<block v-else>
+			<app-delivery-module />
+		</block>
 		<!-- <button @click="_pay">提交</button> -->
 	</div>
 </template>
@@ -33,6 +35,7 @@
 <script>
 import appTabs from '@/components/plugin/tabs'
 import payInputModule from './components/pay-input'
+import appDeliveryModule from '@/components/app-delivery'
 import { getMiniAppUrl } from '@/utils/common'
 import { getCheckLogin } from '@/utils/auth'
 import wexinPay from '@/utils/pay/wxPay'
@@ -42,7 +45,8 @@ export default {
 	name: 'pay',
 	components: {
 		appTabs,
-		payInputModule
+		payInputModule,
+		appDeliveryModule
 	},
 	data() {
 		return {
@@ -126,8 +130,13 @@ export default {
 </script>
 
 <style lang="scss">
+	.app-content {
+		min-height: 0;
+        padding-top: 100px;
+		// padding-bottom: 120px;
+	}
 	.logo-wrap {
-		padding-top: 170px;
+		padding-top: 70px;
 		padding-bottom: 60px;
 		text-align: center;
 		.logo-img {

+ 21 - 16
mobile-code/src/pages/user/index.vue

@@ -49,27 +49,26 @@
 				<tui-list-cell class="tui-list" :arrow="true" @click="$util.pageTo('/pages/order/list')">
 					<div class="list-wrap">
 						<div class="list-label">我的订单</div>
+						<div class="list-text">2</div>
 					</div>
 				</tui-list-cell>
-				<tui-list-cell class="tui-list" @click="detail">
+				<tui-list-cell class="tui-list" :arrow="true" @click="$util.pageTo('/pages/interest/invite')">
 					<div class="list-wrap">
 						<div class="list-label">我的邀请</div>
-					</div>
-					<div class="list-icon">
-						<i class="iconfont iconshoujihao"></i>
+						<div class="list-text">领金币奖励</div>
 					</div>
 				</tui-list-cell>
-				<tui-list-cell class="tui-list" @click="$util.pageTo('/pages/coupon/list')">
+				<tui-list-cell class="tui-list" :arrow="true" @click="$util.pageTo('/pages/coupon/list')">
 					<div class="list-wrap">
 						<div class="list-label">我的优惠券</div>
 					</div>
 				</tui-list-cell>
-				<tui-list-cell class="tui-list" @click="detail">
+				<tui-list-cell class="tui-list" :arrow="true" @click="$util.pageTo('/pages/user/password')">
 					<div class="list-wrap">
 						<div class="list-label">支付密码设置</div>
 					</div>
 				</tui-list-cell>
-				<tui-list-cell class="tui-list" @click="detail">
+				<tui-list-cell class="tui-list" :arrow="true" @click="$util.pageTo('/pages/interest/level')">
 					<div class="list-wrap">
 						<div class="list-label">会员权益</div>
 					</div>
@@ -98,7 +97,7 @@
 						<img src="../../static/images/user/attr-default.png" alt />
 					</div>
 					<div class="creat-account-btn">
-						<button class="button-com red">点击创建头像</button>
+						<button class="button-com red big">点击创建头像</button>
 					</div>
 				</template>
 				<!-- 注册完成 -->
@@ -110,17 +109,17 @@
 						<div class="phone-num font-bold">13285979347</div>
 					</div>
 					<div class="creat-account-btn">
-						<button class="button-com red">点击创建头像</button>
+						<button class="button-com red big">点击创建头像</button>
 					</div>
 				</template>
 				<!-- 关注公众号 -->
 				<template v-if="stepIndex == 2">
 					<div class="wx-public-wrap">
-						<div class="app-font-color-3">国兰华尚关联的公众号</div>
+						<div class="app-color-3">国兰华尚关联的公众号</div>
 						<div class="flex-center-between">
 							<div class="wx-public-left">
 								<div class="wx-public-img">
-									<img src="../../static/images/user/attr-default.png" alt="">
+									<img src="../../static/images/user/attr-default.png" alt />
 								</div>
 								<div class="wx-public-det">
 									<div class="wx-public-tit">国兰华尚</div>
@@ -262,13 +261,21 @@ export default {
 			padding-left: 50px;
 			padding-right: 50px;
 		}
+		.list-wrap {
+			@include disFlex(center, space-between);
+			width: calc(100% - 30px);
+			padding-right: 30px;
+			.list-text {
+				color: $fontColor3;
+			}
+		}
 	}
 	// 弹窗
 	/deep/.popup-wrap {
 		.tui-popup-class {
 			border-top-left-radius: 20px;
 			border-top-right-radius: 20px;
-        	// 适配iphoneX
+			// 适配iphoneX
 			padding-bottom: env(safe-area-inset-bottom);
 		}
 		.popup-content {
@@ -288,9 +295,7 @@ export default {
 				padding-bottom: 80px;
 				margin: 0 auto;
 				.button-com {
-					width: calc(100% - 60px);
-					height: 50px;
-					line-height: 50px;
+					width: 100%;
 					text-align: center;
 					font-size: 32px;
 				}
@@ -331,7 +336,7 @@ export default {
 							height: 78px;
 						}
 						.wx-public-det {
-							color: #7C7E7D;
+							color: #7c7e7d;
 							margin-left: 20px;
 							.wx-public-tit {
 								color: #333;

+ 68 - 0
mobile-code/src/pages/user/password.vue

@@ -0,0 +1,68 @@
+<template>
+	<div class="app-content">
+		<div class="module-com">
+			<tui-list-cell class="line-cell" :hover="false">
+				<div class="tui-title">旧密码</div>
+				<input placeholder-class="phcolor" class="tui-input" name="name" placeholder="首次设置不需要填写" maxlength="50" type="number" />
+			</tui-list-cell>
+			<tui-list-cell class="line-cell" :hover="false">
+				<div class="tui-title">密码</div>
+				<input placeholder-class="phcolor" class="tui-input" name="phone" placeholder="请输入密码" maxlength="50" type="number" />
+			</tui-list-cell>
+			<tui-list-cell class="line-cell" :hover="false">
+				<div class="tui-title">确认密码</div>
+				<input placeholder-class="phcolor" class="tui-input" name="phone" placeholder="请输入确认密码" maxlength="50" type="number" />
+			</tui-list-cell>
+            <div class="prompt-text">提示:余额支付时需要用到支付密码</div>
+            <div class="btn-wrap">
+			    <button class="button-com red big">确认</button>
+            </div>
+		</div>
+	</div>
+</template>
+
+<script>
+import tuiListCell from '@/components/plugin/list-cell'
+export default {
+	name: 'password',
+	components: {
+		tuiListCell
+	},
+	data() {
+		return {}
+	}
+}
+</script>
+
+<style lang="scss" scoped>
+	// 公共
+	.line-cell {
+		.tui-title {
+			width: 210px;
+			color: $fontColor2;
+		}
+		.tui-input {
+			width: calc(100% - 210px);
+			font-size: 28px;
+		}
+		.tui-placeholder {
+			color: #ccc;
+		}
+		.phcolor {
+			color: #ccc;
+		}
+    }
+    .prompt-text {
+        color: $fontColor3;
+        margin-top: 20px;
+        margin-left: 30px;
+    }
+    .btn-wrap {
+        width: 90%;
+        margin: 60px auto;
+        .button-com {
+            width: 100%;
+            margin: 0 auto;
+        }
+    }
+</style>

+ 79 - 0
mobile-code/src/pages/user/register.vue

@@ -0,0 +1,79 @@
+<template>
+	<div class="app-content">
+		<div class="module-com">
+			<tui-list-cell class="line-cell" :hover="false">
+				<div class="tui-title">手机号</div>
+				<input placeholder-class="phcolor" class="tui-input" name="name" placeholder="请输入手机号" maxlength="50" type="number" />
+			</tui-list-cell>
+			<tui-list-cell class="line-cell code-wrap" :hover="false">
+				<div class="tui-title">验证码</div>
+				<input placeholder-class="phcolor" class="tui-input" name="phone" placeholder="请输入验证码" maxlength="50" type="number" />
+				<div class="tui-code">获取验证码</div>
+			</tui-list-cell>
+			<tui-list-cell class="line-cell" :hover="false">
+				<div class="tui-title">姓名</div>
+				<input placeholder-class="phcolor" class="tui-input" name="phone" placeholder="选填" maxlength="50" type="number" />
+			</tui-list-cell>
+			<tui-list-cell class="line-cell" :hover="false">
+				<div class="tui-title">生日</div>
+				<input placeholder-class="phcolor" class="tui-input" name="phone" placeholder="选填" maxlength="50" type="number" />
+			</tui-list-cell>
+            <div class="btn-wrap">
+			    <button class="button-com red big">确认</button>
+            </div>
+		</div>
+	</div>
+</template>
+
+<script>
+import tuiListCell from '@/components/plugin/list-cell'
+export default {
+	name: 'register',
+	components: {
+		tuiListCell
+	},
+	data() {
+		return {}
+	}
+}
+</script>
+
+<style lang="scss" scoped>
+	// 公共
+	.line-cell {
+		.tui-title {
+			width: 210px;
+			color: $fontColor2;
+		}
+		.tui-input {
+			width: calc(100% - 210px);
+			font-size: 28px;
+		}
+		.tui-placeholder {
+			color: #ccc;
+		}
+		.phcolor {
+			color: #ccc;
+		}
+    }
+    .btn-wrap {
+        width: 90%;
+        margin: 60px auto;
+        .button-com {
+            width: 100%;
+            margin: 0 auto;
+        }
+    }
+    .code-wrap {
+		.tui-input {
+			width: calc(100% - 410px);
+			font-size: 28px;
+		}
+        .tui-code {
+            width: 200px;
+            text-align: center;
+            border-left: 1px solid $borderColor;
+            color: $mainColor;
+        }
+    }
+</style>

+ 3 - 3
mobile-code/src/static/css/base.scss

@@ -105,15 +105,15 @@
 	padding: 0 30px;
 }
 
-.app-font-color-1 {
+.app-color-1 {
     color: $fontColorMain;
 }
 
-.app-font-color-2 {
+.app-color-2 {
     color: $fontColor2;
 }
 
-.app-font-color-3 {
+.app-color-3 {
     color: $fontColor3;
 }
 

+ 98 - 96
mobile-code/src/static/css/common.scss

@@ -1,13 +1,14 @@
 /**
 *全局样式,以 App- 前缀命名
 */
-*{
-	margin: 0;
-	padding: 0;
+* {
+    margin: 0;
+    padding: 0;
 }
 
-page, body {
-    font-family: 'microsoft yahei';
+page,
+body {
+    font-family: "microsoft yahei";
     font-size: 24px;
     // height: 100%;
     // line-height: 1;
@@ -19,23 +20,23 @@ page, body {
 // .App_bg {
 // 	height: 100%;
 // }
-.App{
-	// line-height: 1;
-	min-height: 100vh;
+.App {
+    // line-height: 1;
+    min-height: 100vh;
 }
-.App_gray{
-	// line-height: 1;
-	min-height: 100vh;
-	background-color: $backColor;
+.App_gray {
+    // line-height: 1;
+    min-height: 100vh;
+    background-color: $backColor;
 }
 .App_row {
-	display: flex;
-	justify-content: center;
+    display: flex;
+    justify-content: center;
 }
 .App_col {
-	display: flex;
-	align-items: center;
-	flex-direction: column;
+    display: flex;
+    align-items: center;
+    flex-direction: column;
 }
 
 .App_border-box * {
@@ -44,59 +45,62 @@ page, body {
 
 // 按钮公共样式
 .button-com {
-	display: inline-block;
+    display: inline-block;
     color: $mainColor;
     font-size: 28px;
     padding: 20px 30px;
-	background-color: #fff;
-	border-radius: 100px;
-	border: 1px solid $mainColor;
-	text-align: center;
-	line-height: 1;
-	margin-left: 0;
-	margin-right: 0;
+    background-color: #fff;
+    border-radius: 100px;
+    border: 1px solid $mainColor;
+    text-align: center;
+    line-height: 1;
+    margin: 0;
+}
+.button-com.big {
+    padding-top: 30px;
+    padding-bottom: 30px;
 }
 .button-com.red {
-	color: #fff;
-	background-color: $mainColor;
-	&:active {
-		background-color: rgb(245, 63, 85);
-	}
+    color: #fff;
+    background-color: $mainColor;
+    &:active {
+        background-color: rgb(245, 63, 85);
+    }
 }
 .button-com.green {
-	color: #fff;
-	background-color: #07BE0B;
-	border-color: #07BE0B;
-	&:active {
-		background-color: rgb(45, 194, 47);
-	}
+    color: #fff;
+    background-color: #07be0b;
+    border-color: #07be0b;
+    &:active {
+        background-color: rgb(45, 194, 47);
+    }
 }
 .button-com.default {
-	color: $fontColor2;
-	border-color: #DDDDDD;
-	&:active {
-		background-color: #f5f5f5;
-	}
+    color: $fontColor2;
+    border-color: #dddddd;
+    &:active {
+        background-color: #f5f5f5;
+    }
 }
 
 // 带统计字数文本域
 .textarea_wrap {
     position: relative;
     textarea {
-      display: block;
-      background-color: #fff;
-      padding: 30px 31px;
-      border: 0 none;
-      width: 100%;
-      height: 270px;
+        display: block;
+        background-color: #fff;
+        padding: 30px 31px;
+        border: 0 none;
+        width: 100%;
+        height: 270px;
     }
     .count {
         position: absolute;
         line-height: 1;
         right: 30px;
         bottom: 30px;
-        font-size:24px;
-        color:rgba(153,153,153,1);
+        font-size: 24px;
+        color: rgba(153, 153, 153, 1);
     }
 }
 
@@ -116,25 +120,25 @@ page, body {
     -webkit-line-clamp: 2;
     line-clamp: 2;
     -webkit-box-orient: vertical;
-	line-height: 1.3;
+    line-height: 1.3;
 }
 
 /* 黑色蒙版 */
 .black_mask {
-	position: fixed;
-	top: 0;
-	bottom: 0;
-	left: 0;
-	right: 0;
-	width: 100vw;
-	height: 100vh;
-	background-color: rgba(0,0,0,0.7);
-	z-index: 999;
-	&.center {
-		display: flex;
-		justify-content: center;
-		align-items: center;
-	}
+    position: fixed;
+    top: 0;
+    bottom: 0;
+    left: 0;
+    right: 0;
+    width: 100vw;
+    height: 100vh;
+    background-color: rgba(0, 0, 0, 0.7);
+    z-index: 999;
+    &.center {
+        display: flex;
+        justify-content: center;
+        align-items: center;
+    }
 }
 
 .app-footer {
@@ -146,7 +150,7 @@ page, body {
     text-align: center;
     bottom: 0;
     background: white;
-    box-shadow: -4px -4px 6px #eee; /*no*/
+    box-shadow: -4px -4px 6px #eee;
     z-index: 100;
     // font-size: 32px;
     // line-height: 90px;
@@ -159,20 +163,19 @@ page, body {
         height: 38px;
         margin-right: 20px;
     }
-  }
+}
 
-.noMore{
-	color: #969799;
-	font-size: 24upx;
-	line-height: 50px;
-	text-align: center;
-	padding: 30px 0;
+.noMore {
+    color: #969799;
+    font-size: 24upx;
+    line-height: 50px;
+    text-align: center;
+    padding: 30px 0;
 }
-li{
-	list-style: none;
+li {
+    list-style: none;
 }
 
-
 // .app-seach-box {
 // 	position: relative;
 // 	z-index: 999;
@@ -200,31 +203,30 @@ li{
 // 	}
 // }
 
-
-.includecontent p img{
-	width: 100%;
-	height: auto;
+.includecontent p img {
+    width: 100%;
+    height: auto;
 }
-.uni-overflow-hidden{
-	overflow: hidden;
-	height: 100vh;
+.uni-overflow-hidden {
+    overflow: hidden;
+    height: 100vh;
 }
 
 .inputTip_box {
-	position: relative;
-	width: 100%;
-	.inputTip {
-		position: absolute;
-		top: 50%;
-		transform: translateY(-50%);
-		right: 0;
-		color: #f44;
-		font-size: 28upx;
-	}
+    position: relative;
+    width: 100%;
+    .inputTip {
+        position: absolute;
+        top: 50%;
+        transform: translateY(-50%);
+        right: 0;
+        color: #f44;
+        font-size: 28upx;
+    }
 }
 
-.text-overflow{
-	overflow: hidden;
-	text-overflow: ellipsis;
-	white-space: nowrap;
+.text-overflow {
+    overflow: hidden;
+    text-overflow: ellipsis;
+    white-space: nowrap;
 }

+ 53 - 40
mobile-code/src/static/css/reset.scss

@@ -1,80 +1,93 @@
 /*  #ifdef  H5  */
 .uni-page-head {
-	background-color: transparent !important;
+    background-color: transparent !important;
 }
 /*  #endif  */
 
 /*  #ifdef  H5  */
 /*  #endif  */
-uni-page-body, body, html {
-	height: auto;
-	min-height: 100%;
+uni-page-body,
+body,
+html {
+    height: auto;
+    min-height: 100%;
 }
 
 body {
-	-webkit-overflow-scrolling: touch
+    -webkit-overflow-scrolling: touch;
 }
 
 // 修改uni-nav-bar样式
 .uni-navbar-header {
-	line-height: 96px !important;
-	height: 96px !important;
+    line-height: 96px !important;
+    height: 96px !important;
 }
 
 .uni-status-bar {
-	height: auto !important;
+    height: auto !important;
 }
 
 .uni-navbar-container {
-	display: flex !important;
-	align-items: center !important;
-	justify-content: center !important;
+    display: flex !important;
+    align-items: center !important;
+    justify-content: center !important;
 }
 
 .uni-navbar-shadow {
-	box-shadow: 0 0 6px 2px #ccc;
+    box-shadow: 0 0 6px 2px #ccc;
 }
 
 uni-picker .uni-picker-item {
-	font-size: 30px;
+    font-size: 30px;
 }
 
 .iconfont {
-	display: inline-block;
-	vertical-align: middle;
+    display: inline-block;
+    vertical-align: middle;
 }
 
 // 修改image的图片样式
-image {
-	width: 100%;
-	height: auto;
-	display: block;
+// image {
+// 	width: 100%;
+// 	height: auto;
+// 	display: block;
+// }
+
+.ljd-checkbox,.ljd-checkbox .uni-checkbox-input {
+    width: 46px;
+    height: 46px;
+    border-radius: 50% !important;
 }
 
-img {
-	width: 100%;
-	height: auto;
-	display: block;
+.ljd-checkbox .uni-checkbox-input.uni-checkbox-input-checked {
+	color: #fff !important;
+	background-color: $mainColor !important;
+	border: none !important;
 }
 
-.datetime-picker{
-	.picker-body{
-		font-size: 32px !important;
-	}
-	 .btn-picker{
-		font-size: 32px !important;
-		 &.submit{
-			 color: #3a1b06 !important;
-			 padding: 0 20px !important;
-			 border-radius: 24px !important;
-		 }
-		 &.cancel{
-			 color: #878787!important
-		 }
-	}
+img {
+    width: 100%;
+    height: auto;
+    display: block;
+}
 
+.datetime-picker {
+    .picker-body {
+        font-size: 32px !important;
+    }
+    .btn-picker {
+        font-size: 32px !important;
+        &.submit {
+            color: #3a1b06 !important;
+            padding: 0 20px !important;
+            border-radius: 24px !important;
+        }
+        &.cancel {
+            color: #878787 !important;
+        }
+    }
 }
 
-uni-button::after{
-	border: none;
+uni-button::after {
+    border: none;
 }

+ 35 - 7
mobile-code/src/static/iconfont/iconfont.css

@@ -1,12 +1,12 @@
 @font-face {
   font-family: 'iconfont';  /* project id 1525256 */
-  src: url('https://at.alicdn.com/t/font_1525256_qav13ygth5g.eot');
-  src: url('https://at.alicdn.com/t/font_1525256_qav13ygth5g.eot?#iefix') format('embedded-opentype'),
-  url('https://at.alicdn.com/t/font_1525256_qav13ygth5g.woff2') format('woff2'),
-  url('https://at.alicdn.com/t/font_1525256_qav13ygth5g.woff') format('woff'),
-  url('https://at.alicdn.com/t/font_1525256_qav13ygth5g.ttf') format('truetype'),
-  url('https://at.alicdn.com/t/font_1525256_qav13ygth5g.svg#iconfont') format('svg');
-}  
+  src: url('https://at.alicdn.com/t/font_1525256_shwvpql9q4.eot');
+  src: url('https://at.alicdn.com/t/font_1525256_shwvpql9q4.eot?#iefix') format('embedded-opentype'),
+  url('https://at.alicdn.com/t/font_1525256_shwvpql9q4.woff2') format('woff2'),
+  url('https://at.alicdn.com/t/font_1525256_shwvpql9q4.woff') format('woff'),
+  url('https://at.alicdn.com/t/font_1525256_shwvpql9q4.ttf') format('truetype'),
+  url('https://at.alicdn.com/t/font_1525256_shwvpql9q4.svg#iconfont') format('svg');
+}
 
 .iconfont {
   font-family: "iconfont" !important;
@@ -16,6 +16,10 @@
   -moz-osx-font-smoothing: grayscale;
 }
 
+.iconchangjianwentixiangguanwenti2:before {
+  content: "\e679";
+}
+
 .icondaizhifu:before {
   content: "\e733";
 }
@@ -92,3 +96,27 @@
   content: "\e745";
 }
 
+.icontupian:before {
+  content: "\e746";
+}
+
+.iconxiaochengxu:before {
+  content: "\e747";
+}
+
+.iconzhifubao:before {
+  content: "\e748";
+}
+
+.iconkefu:before {
+  content: "\e749";
+}
+
+.iconshanchu:before {
+  content: "\e74a";
+}
+
+.iconguanbi:before {
+  content: "\e74b";
+}
+

BIN
mobile-code/src/static/images/common/category-is.png


BIN
mobile-code/src/static/images/common/category-no.png


BIN
mobile-code/src/static/images/common/home-is.png


BIN
mobile-code/src/static/images/common/home-no.png


BIN
mobile-code/src/static/images/common/localposition.png


BIN
mobile-code/src/static/images/common/shop-is.png


BIN
mobile-code/src/static/images/common/shop-no.png


BIN
mobile-code/src/static/images/common/user-is.png


BIN
mobile-code/src/static/images/common/user-no.png


BIN
mobile-code/src/static/images/interest/VIP-interest.png


BIN
mobile-code/src/static/images/interest/invite.png


BIN
mobile-code/src/static/images/interest/invited.png


BIN
mobile-code/src/static/images/interest/ordered.png


BIN
mobile-code/src/static/images/interest/shou.png


BIN
mobile-code/src/static/images/interest/vip.png


+ 1 - 1
mobile/index.html

@@ -6,4 +6,4 @@
 				// window.location.href = '/h5/pcguide.html';
 			}</script><script>document.addEventListener('DOMContentLoaded', function() {
 				document.documentElement.style.fontSize = document.documentElement.clientWidth / 20 + 'px'
-			})</script><link rel=stylesheet href=/static/index.css></head><body><noscript><strong>Please enable JavaScript to continue.</strong></noscript><div id=app></div><script>/*BAIDU_STAT*/</script><script src=/static/js/chunk-vendors.3186e5ea.js></script><script src=/static/js/index.79ee6fbf.js></script></body></html>
+			})</script><link rel=stylesheet href=/static/index.css></head><body><noscript><strong>Please enable JavaScript to continue.</strong></noscript><div id=app></div><script>/*BAIDU_STAT*/</script><script src=/static/js/chunk-vendors.3186e5ea.js></script><script src=/static/js/index.e4a82e6c.js></script></body></html>

+ 92 - 66
mobile/static/css/base.scss

@@ -1,10 +1,13 @@
 /**
-*全局变量
+*全局公共样式
 */
 .app-content {
     // line-height: 1;
-    background-color: #f5f5f5;
+    background-color: $backColor;
     min-height: 100vh;
+    &.app-main {
+        min-height: calc(100vh - 100px);
+    }
 }
 .gray_txt {
     color: #999 !important;
@@ -42,96 +45,119 @@
 }
 
 .flex {
-    display: -webkit-box;
-    display: -webkit-flex;
-    display: -ms-flexbox;
     display: flex;
 }
 
-.flex-v {
-    -webkit-box-orient: vertical;
-    -webkit-flex-direction: column;
-    -ms-flex-direction: column;
-    flex-direction: column;
+.flex-center-center {
+    @extend .flex;
+    align-items: center;
+    justify-content: center;
+}
+
+.flex-center {
+    display: flex;
+    align-items: center;
 }
 
-.flex-rr {
-    -webkit-box-orient: revert;
-    -webkit-flex-direction: row-reverse;
-    -ms-flex-direction: row-reverse;
-    flex-direction: row-reverse;
+.flex-start {
+    @extend .flex;
+    align-items: flex-start;
 }
 
-.flex-vr {
-    -webkit-box-orient: revert;
-    -webkit-flex-direction: column-reverse;
-    -ms-flex-direction: column-reverse;
-    flex-direction: column-reverse;
+.flex-end {
+    @extend .flex;
+    align-items: flex-end;
 }
 
-.flex-pack-justify {
-    -webkit-box-pack: justify;
-    -webkit-justify-content: space-between;
-    -ms-flex-pack: justify;
+.flex-center-between {
+    @extend .flex;
+    align-items: center;
     justify-content: space-between;
 }
 
-.flex-pack-justify-center {
-    -webkit-box-pack: center;
-    -webkit-justify-content: center;
-    -ms-flex-pack: center;
-    justify-content: center;
+.flex-center-around {
+    @extend .flex;
+    align-items: center;
+    justify-content: space-around;
 }
 
-.flex-pack-justify-start {
-    -webkit-box-pack: start;
-    -webkit-justify-content: start;
-    -ms-flex-pack: flex-start;
+.flex-center-evenly {
+    @extend .flex;
+    align-items: center;
+    justify-content: space-evenly;
+}
+
+.flex-center-start {
+    @extend .flex;
+    align-items: center;
     justify-content: flex-start;
 }
 
-.flex-pack-justify-end {
-    -webkit-box-pack: end;
-    -webkit-justify-content: end;
-    -ms-flex-pack: flex-end;
+.flex-center-end {
+    @extend .flex;
+    align-items: center;
     justify-content: flex-end;
 }
 
-.flex-pack-around {
-    -webkit-justify-content: space-around;
-    justify-content: space-around;
+// ===================    定义的全局字体普通样式 ========================
+
+.app-padding {
+	padding: 0 30px;
 }
 
-.flex-align-center {
-    -webkit-box-align: center;
-    -webkit-align-items: center;
-    -ms-flex-align: center;
-    align-items: center;
+.app-color-1 {
+    color: $fontColorMain;
 }
 
-.flex-align-end {
-    -webkit-box-align: end;
-    -ms-flex-align: end;
-    -webkit-align-items: flex-end;
-    align-items: flex-end;
+.app-color-2 {
+    color: $fontColor2;
 }
 
-.flex-wrap {
-    -webkit-box-lines: multiple;
-    -webkit-flex-wrap: wrap;
-    -ms-flex-wrap: wrap;
-    flex-wrap: wrap;
+.app-color-3 {
+    color: $fontColor3;
 }
 
-.flex1 {
-    -webkit-box-flex: 1;
-    /* OLD - iOS 6-, Safari 3.1-6 */
-    -moz-box-flex: 1;
-    /* OLD - Firefox 19- */
-    -webkit-flex: 1;
-    /* Chrome */
-    -ms-flex: 1;
-    /* IE 10 */
-    flex: 1;
-    /* NEW, Spec - Opera 12.1, Firefox 20+ */
+// 金额
+.app-price {
+	color: $mainColor;
 }
+
+.app-bold {
+	font-weight: bold;
+}
+
+.app-size-24 {
+	font-size: 24px;
+}
+
+.app-size-26 {
+	font-size: 26px;
+}
+
+.app-size-28 {
+	font-size: 28px;
+}
+
+.app-size-30 {
+	font-size: 30px;
+}
+
+.app-size-32 {
+	font-size: 32px;
+}
+
+.app-size-34 {
+	font-size: 34px;
+}
+
+.app-size-36 {
+	font-size: 36px;
+}
+
+.app-size-38 {
+	font-size: 38px;
+}
+
+.app-size-40 {
+	font-size: 40px;
+}

+ 110 - 178
mobile/static/css/common.scss

@@ -1,15 +1,16 @@
 /**
 *全局样式,以 App- 前缀命名
 */
-*{
-	margin: 0;
-	padding: 0;
+* {
+    margin: 0;
+    padding: 0;
 }
 
-page, body {
-    font-family: 'microsoft yahei';
+page,
+body {
+    font-family: "microsoft yahei";
     font-size: 24px;
-    height: 100%;
+    // height: 100%;
     // line-height: 1;
 }
 .app-wh100 {
@@ -19,79 +20,87 @@ page, body {
 // .App_bg {
 // 	height: 100%;
 // }
-.App{
-	// line-height: 1;
-	min-height: 100vh;
+.App {
+    // line-height: 1;
+    min-height: 100vh;
 }
-.App_gray{
-	// line-height: 1;
-	min-height: 100vh;
-	background-color: #f5f5f5;
+.App_gray {
+    // line-height: 1;
+    min-height: 100vh;
+    background-color: $backColor;
 }
 .App_row {
-	display: flex;
-	justify-content: center;
+    display: flex;
+    justify-content: center;
 }
 .App_col {
-	display: flex;
-	align-items: center;
-	flex-direction: column;
+    display: flex;
+    align-items: center;
+    flex-direction: column;
 }
 
 .App_border-box * {
     box-sizing: border-box;
 }
 
-footer {
-    width: 100%;
-    // max-width: 750px;
-    min-width: 320px;
-    height: 100px;
-    position: fixed;
+// 按钮公共样式
+.button-com {
+    display: inline-block;
+    color: $mainColor;
+    font-size: 28px;
+    padding: 20px 30px;
+    background-color: #fff;
+    border-radius: 60px;
+    border: 1px solid $mainColor;
     text-align: center;
-    bottom: 0;
-    background: #fff;
-    box-shadow: -1px -1px 10px #cccccc; /*no*/
-	z-index: 100;
+    line-height: 1;
+    margin: 0;
 }
-
-// 按钮公共样式
-.main_btn_com {
-    display: flex;
-    color: $auxiliaryColor1;
-    font-size: 30px;
-    padding: 15px 40px;
-    background-color: $mainColor;
-    border-radius: 50px;
+.button-com.big {
+    padding-top: 30px;
+    padding-bottom: 30px;
 }
-
-.bottom_btn_com {
-    height: 100px;
-    line-height: 100px;
-    color: $auxiliaryColor1;
-    font-size: 30px;
+.button-com.red {
+    color: #fff;
     background-color: $mainColor;
-    text-align: center;
+    &:active {
+        background-color: rgb(245, 63, 85);
+    }
+}
+.button-com.green {
+    color: #fff;
+    background-color: #07be0b;
+    border-color: #07be0b;
+    &:active {
+        background-color: rgb(45, 194, 47);
+    }
+}
+.button-com.default {
+    color: $fontColor2;
+    border-color: #dddddd;
+    &:active {
+        background-color: #f5f5f5;
+    }
 }
 
 // 带统计字数文本域
 .textarea_wrap {
     position: relative;
     textarea {
-      display: block;
-      background-color: #fff;
-      padding: 30px 31px;
-      border: 0 none;
-      width: 100%;
-      height: 270px;
+        display: block;
+        background-color: #fff;
+        padding: 30px 31px;
+        border: 0 none;
+        width: 100%;
+        height: 270px;
     }
     .count {
         position: absolute;
         line-height: 1;
         right: 30px;
         bottom: 30px;
-        font-size:24px;
-        color:rgba(153,153,153,1);
+        font-size: 24px;
+        color: rgba(153, 153, 153, 1);
     }
 }
 
@@ -111,65 +120,27 @@ footer {
     -webkit-line-clamp: 2;
     line-clamp: 2;
     -webkit-box-orient: vertical;
-	line-height: 1.3;
-}
-
-/* 修改vant输入框样式 */
-.van-field__body {
-	padding-left: 20px;
-	height: 100%;
-}
-
-.van-field__control {
-	height: 100%;
-}
-.van-field__control::placeholder {
-	font-size: 34px;
-	font-weight: normal;
-	font-stretch: normal;
-	letter-spacing: 0.7px;
-	color: #cccccc;
+    line-height: 1.3;
 }
 
 /* 黑色蒙版 */
 .black_mask {
-	position: fixed;
-	top: 0;
-	bottom: 0;
-	left: 0;
-	right: 0;
-	width: 100vw;
-	height: 100vh;
-	background-color: rgba(0,0,0,0.7);
-	z-index: 999;
-	&.center {
-		display: flex;
-		justify-content: center;
-		align-items: center;
-	}
-}
-
-// 弹窗关闭按钮
-.closemask {
-    position: absolute;
-    width: 30px;
-    height: 30px;
-    right: 39px;
-    top: 39px;
+    position: fixed;
+    top: 0;
+    bottom: 0;
+    left: 0;
+    right: 0;
+    width: 100vw;
+    height: 100vh;
+    background-color: rgba(0, 0, 0, 0.7);
+    z-index: 999;
+    &.center {
+        display: flex;
+        justify-content: center;
+        align-items: center;
+    }
 }
 
- // 公共底部样式
-.pub_footer {
-			width: 100%;
-			height: 100px;
-			position: fixed;
-			text-align: center;
-			bottom: 0;
-			background: white;
-			box-shadow: -1px -1px 5px #cccccc;
-			z-index: 100;
-		}
-
 .app-footer {
     width: 100%;
     max-width: 750px; /*no*/
@@ -179,33 +150,31 @@ footer {
     text-align: center;
     bottom: 0;
     background: white;
-    box-shadow: -1px -1px 1px #cccccc; /*no*/
+    box-shadow: -4px -4px 6px #eee;
     z-index: 100;
-    font-size: 32px;
-    color: #3a1b04;
-    line-height: 90px;
-    background: #ffd11a;
+    // font-size: 32px;
+    // line-height: 90px;
     display: flex;
     justify-content: center;
     align-items: center;
-    letter-spacing: 3px;
+    // letter-spacing: 3px;
     & .add {
         width: 38px;
         height: 38px;
         margin-right: 20px;
     }
-  }
-.noMore{
-	color: #969799;
-	font-size: 24upx;
-	line-height: 50px;
-	text-align: center;
-	padding: 30px 0;
-}
-li{
-	list-style: none;
 }
 
+.noMore {
+    color: #969799;
+    font-size: 24upx;
+    line-height: 50px;
+    text-align: center;
+    padding: 30px 0;
+}
+li {
+    list-style: none;
+}
 
 // .app-seach-box {
 // 	position: relative;
@@ -234,67 +203,30 @@ li{
 // 	}
 // }
 
-
-/* 分享按钮的公共样式 */
-
-.go_share {
-	width: 60upx;
-	height: 60upx;
-	position: fixed;
-	right: 5%;
-	top: 35upx;
-	opacity: 0.7;
-	float: right;
-	z-index: 99;
-}
-
-.go_share img {
-	width: 60upx;
-	height: 60upx;
-	float: right;
-}
-/*返回按钮的公共样式*/
-
-.returnback {
-	width: 60upx;
-	height: 60upx;
-	position: fixed;
-	left: 5%;
-	top: 35upx;
-	opacity: .7;
-	float: left;
-	z-index: 1;
-}
-
-.returnback img {
-	width: 60upx;
-	height: 60upx;
-	float: left;
-}
-.includecontent p img{
-	width: 100%;
-	height: auto;
+.includecontent p img {
+    width: 100%;
+    height: auto;
 }
-.uni-overflow-hidden{
-	overflow: hidden;
-	height: 100vh;
+.uni-overflow-hidden {
+    overflow: hidden;
+    height: 100vh;
 }
 
 .inputTip_box {
-	position: relative;
-	width: 100%;
-	.inputTip {
-		position: absolute;
-		top: 50%;
-		transform: translateY(-50%);
-		right: 0;
-		color: #f44;
-		font-size: 28upx;
-	}
+    position: relative;
+    width: 100%;
+    .inputTip {
+        position: absolute;
+        top: 50%;
+        transform: translateY(-50%);
+        right: 0;
+        color: #f44;
+        font-size: 28upx;
+    }
 }
 
-.text-overflow{
-	overflow: hidden;
-	text-overflow: ellipsis;
-	white-space: nowrap;
+.text-overflow {
+    overflow: hidden;
+    text-overflow: ellipsis;
+    white-space: nowrap;
 }

+ 1 - 1
mobile/static/css/minxin.scss

@@ -49,7 +49,7 @@
     display:-webkit-box !important;
 }
 
-@mixin direction($items: center,$justify: center){//位置
+@mixin disFlex($items: center,$justify: center){//位置
     display:flex;
     display:-webkit-flex;
     align-items: $items;

+ 61 - 33
mobile/static/css/reset.scss

@@ -1,65 +1,93 @@
 /*  #ifdef  H5  */
 .uni-page-head {
-	background-color: transparent !important;
+    background-color: transparent !important;
 }
 /*  #endif  */
 
 /*  #ifdef  H5  */
-// uni-page-body, body {
-// 	height: auto;
-// 	min-height: 100%;
-// }
 /*  #endif  */
+uni-page-body,
+body,
+html {
+    height: auto;
+    min-height: 100%;
+}
+
+body {
+    -webkit-overflow-scrolling: touch;
+}
 
 // 修改uni-nav-bar样式
 .uni-navbar-header {
-	line-height: 96px !important;
-	height: 96px !important;
+    line-height: 96px !important;
+    height: 96px !important;
 }
 
 .uni-status-bar {
-	height: auto !important;
+    height: auto !important;
 }
 
 .uni-navbar-container {
-	display: flex !important;
-	align-items: center !important;
-	justify-content: center !important;
+    display: flex !important;
+    align-items: center !important;
+    justify-content: center !important;
 }
 
 .uni-navbar-shadow {
-	box-shadow: 0 0 6px 2px #ccc;
+    box-shadow: 0 0 6px 2px #ccc;
 }
 
 uni-picker .uni-picker-item {
-	font-size: 30px;
+    font-size: 30px;
 }
 
 .iconfont {
-	display: inline-block;
-	vertical-align: middle;
+    display: inline-block;
+    vertical-align: middle;
 }
 
 // 修改image的图片样式
-image {
-	width: 100%;
-	// height: auto;
+// image {
+// 	width: 100%;
+// 	height: auto;
+// 	display: block;
+// }
+
+.ljd-checkbox,.ljd-checkbox .uni-checkbox-input {
+    width: 46px;
+    height: 46px;
+    border-radius: 50% !important;
+}
+
+.ljd-checkbox .uni-checkbox-input.uni-checkbox-input-checked {
+	color: #fff !important;
+	background-color: $mainColor !important;
+	border: none !important;
 }
 
-.datetime-picker{
-	.picker-body{
-		font-size: 32px !important;
-	}
-	 .btn-picker{
-		font-size: 32px !important;
-		 &.submit{
-			 color: #3a1b06 !important;
-			 padding: 0 20px !important;
-			 border-radius: 24px !important;
-		 }
-		 &.cancel{
-			 color: #878787!important
-		 }
-	}
+img {
+    width: 100%;
+    height: auto;
+    display: block;
+}
+
+.datetime-picker {
+    .picker-body {
+        font-size: 32px !important;
+    }
+    .btn-picker {
+        font-size: 32px !important;
+        &.submit {
+            color: #3a1b06 !important;
+            padding: 0 20px !important;
+            border-radius: 24px !important;
+        }
+        &.cancel {
+            color: #878787 !important;
+        }
+    }
+}
 
+uni-button::after {
+    border: none;
 }

+ 57 - 164
mobile/static/iconfont/iconfont.css

@@ -1,11 +1,11 @@
 @font-face {
-  font-family: 'iconfont';  /* project id 1169641 */
-  src: url('https://at.alicdn.com/t/font_1169641_448qu878ouj.eot');
-  src: url('https://at.alicdn.com/t/font_1169641_448qu878ouj.eot?#iefix') format('embedded-opentype'),
-  url('https://at.alicdn.com/t/font_1169641_448qu878ouj.woff2') format('woff2'),
-  url('https://at.alicdn.com/t/font_1169641_448qu878ouj.woff') format('woff'),
-  url('https://at.alicdn.com/t/font_1169641_448qu878ouj.ttf') format('truetype'),
-  url('https://at.alicdn.com/t/font_1169641_448qu878ouj.svg#iconfont') format('svg');
+  font-family: 'iconfont';  /* project id 1525256 */
+  src: url('https://at.alicdn.com/t/font_1525256_shwvpql9q4.eot');
+  src: url('https://at.alicdn.com/t/font_1525256_shwvpql9q4.eot?#iefix') format('embedded-opentype'),
+  url('https://at.alicdn.com/t/font_1525256_shwvpql9q4.woff2') format('woff2'),
+  url('https://at.alicdn.com/t/font_1525256_shwvpql9q4.woff') format('woff'),
+  url('https://at.alicdn.com/t/font_1525256_shwvpql9q4.ttf') format('truetype'),
+  url('https://at.alicdn.com/t/font_1525256_shwvpql9q4.svg#iconfont') format('svg');
 }
 
 .iconfont {
@@ -16,214 +16,107 @@
   -moz-osx-font-smoothing: grayscale;
 }
 
-.icon22:before {
-  content: "\e618";
+.iconchangjianwentixiangguanwenti2:before {
+  content: "\e679";
 }
 
-.icongouwuche:before {
-  content: "\e73d";
-}
-
-.iconpaizhao:before {
-  content: "\e6f9";
-}
-
-.iconclear:before {
-  content: "\e6e1";
-}
-
-.icontianjia1:before {
-  content: "\e609";
-}
-
-.iconsousuo:before {
-  content: "\e643";
-}
-
-.iconweibiaoti-:before {
-  content: "\e6e8";
+.icondaizhifu:before {
+  content: "\e733";
 }
 
-.iconjichutubiao-:before {
-  content: "\e633";
+.iconshoujihao:before {
+  content: "\e734";
 }
 
-.iconclose:before {
-  content: "\e6f1";
+.iconxiangyou:before {
+  content: "\e735";
 }
 
-.iconkefu:before {
-  content: "\e6f2";
+.iconhaopingxingxing:before {
+  content: "\e736";
 }
 
-.iconjiaobiao:before {
-  content: "\e6f5";
+.iconmine:before {
+  content: "\e737";
 }
 
-.iconshaixuan:before {
-  content: "\e6f6";
+.iconstore:before {
+  content: "\e738";
 }
 
-.icondaishenhe:before {
-  content: "\e705";
+.iconhome:before {
+  content: "\e739";
 }
 
-.iconyiqueren:before {
-  content: "\e706";
+.iconclassification:before {
+  content: "\e73a";
 }
 
-.iconjiantou:before {
-  content: "\e707";
+.iconyiguoqi:before {
+  content: "\e73b";
 }
 
-.iconbeibohui:before {
-  content: "\e708";
+.iconyishiyong:before {
+  content: "\e73c";
 }
 
-.iconicon-test:before {
-  content: "\e709";
+.iconsearch:before {
+  content: "\e73d";
 }
 
-.iconxianshi:before {
-  content: "\e70a";
+.iconclose:before {
+  content: "\e73e";
 }
 
-.iconhaoping:before {
-  content: "\e70b";
+.icondianhua:before {
+  content: "\e73f";
 }
 
-.icongou:before {
-  content: "\e70c";
+.iconditu:before {
+  content: "\e740";
 }
 
 .iconxiaoxi:before {
-  content: "\e70d";
-}
-
-.iconfenxiang:before {
-  content: "\e70e";
-}
-
-.iconxuanze:before {
-  content: "\e712";
-}
-
-.iconxiaoxituisong:before {
-  content: "\e713";
-}
-
-.iconmorentu:before {
-  content: "\e714";
-}
-
-.iconqian:before {
-  content: "\e715";
-}
-
-.icontianjia:before {
-  content: "\e716";
-}
-
-.iconadd:before {
-  content: "\e717";
+  content: "\e741";
 }
 
-.iconxiala:before {
-  content: "\e718";
+.icondianpu:before {
+  content: "\e742";
 }
 
-.iconjisuanji:before {
-  content: "\e719";
-}
-
-.iconxiaji:before {
-  content: "\e71a";
-}
-
-.iconqiye:before {
-  content: "\e91d";
-}
-
-.iconshoujihao:before {
-  content: "\e71c";
-}
-
-.iconmima:before {
-  content: "\e71d";
-}
-
-.iconzhanghaodenglu:before {
-  content: "\e71e";
+.iconfenxiang:before {
+  content: "\e743";
 }
 
-.iconyanzhengma:before {
-  content: "\e71f";
+.iconxuanzhong:before {
+  content: "\e744";
 }
 
-.icondelete:before {
-  content: "\e720";
+.iconweixuanzhong:before {
+  content: "\e745";
 }
 
-.iconxia:before {
-  content: "\e721";
+.icontupian:before {
+  content: "\e746";
 }
 
-.iconshang:before {
-  content: "\e722";
+.iconxiaochengxu:before {
+  content: "\e747";
 }
 
-.iconshijianzhou:before {
-  content: "\e723";
+.iconzhifubao:before {
+  content: "\e748";
 }
 
-.iconmoban:before {
-  content: "\e724";
+.iconkefu:before {
+  content: "\e749";
 }
 
 .iconshanchu:before {
-  content: "\e725";
-}
-
-.iconqiehuan:before {
-  content: "\e726";
-}
-
-.icondianzan:before {
-  content: "\e727";
-}
-
-.icongengxin:before {
-  content: "\e728";
-}
-
-.iconshezhi:before {
-  content: "\e729";
-}
-
-.icontishi:before {
-  content: "\e72a";
-}
-
-.iconcollection:before {
-  content: "\e72d";
-}
-
-.iconcustomerservice:before {
-  content: "\e72e";
-}
-
-.iconcollecton_unactive:before {
-  content: "\e72f";
-}
-
-.iconaddress:before {
-  content: "\e730";
+  content: "\e74a";
 }
 
-.iconxiala-min:before {
-  content: "\e91e";
+.iconguanbi:before {
+  content: "\e74b";
 }
 
-.iconbaocun:before {
-  content: "\e731";
-}

BIN
mobile/static/images/callback/bg.png


BIN
mobile/static/images/callback/coupon.png


BIN
mobile/static/images/callback/success.png


BIN
mobile/static/images/common/category-is.png


BIN
mobile/static/images/common/category-no.png


BIN
mobile/static/images/common/home-is.png


BIN
mobile/static/images/common/home-no.png


BIN
mobile/static/images/common/localposition.png


BIN
mobile/static/images/common/shop-is.png


BIN
mobile/static/images/common/shop-no.png


BIN
mobile/static/images/common/trademark.png


BIN
mobile/static/images/common/user-is.png


BIN
mobile/static/images/common/user-no.png


BIN
mobile/static/images/coupon/bg.png


BIN
mobile/static/images/coupon/expired.png


BIN
mobile/static/images/coupon/is-check.png


BIN
mobile/static/images/coupon/new-bg.png


BIN
mobile/static/images/coupon/new-coupon-bg.png


BIN
mobile/static/images/coupon/no-check.png


BIN
mobile/static/images/interest/VIP-interest.png


BIN
mobile/static/images/interest/invite.png


BIN
mobile/static/images/interest/invited.png


BIN
mobile/static/images/interest/ordered.png


BIN
mobile/static/images/interest/shou.png


BIN
mobile/static/images/interest/vip.png


BIN
mobile/static/images/order/bg.png


BIN
mobile/static/images/order/wait-pay.png


BIN
mobile/static/images/user/attr-default.png


BIN
mobile/static/images/user/bg.png


BIN
mobile/static/images/user/hot.png


BIN
mobile/static/img/invite.c0148d47.png


BIN
mobile/static/img/new-bg.9e00ae9d.png


File diff suppressed because it is too large
+ 0 - 0
mobile/static/js/index.79ee6fbf.js


File diff suppressed because it is too large
+ 0 - 0
mobile/static/js/index.e4a82e6c.js


File diff suppressed because it is too large
+ 0 - 0
mobile/static/js/pages-callback-index.19747ac6.js


File diff suppressed because it is too large
+ 0 - 0
mobile/static/js/pages-category-index.0f32508e.js


File diff suppressed because it is too large
+ 0 - 0
mobile/static/js/pages-category-index.9ba7748b.js


File diff suppressed because it is too large
+ 0 - 0
mobile/static/js/pages-category-index~pages-order-buy~pages-order-detail~pages-order-list~pages-pay-index.b4f3eb1d.js


File diff suppressed because it is too large
+ 0 - 0
mobile/static/js/pages-coupon-list.b154d7f5.js


File diff suppressed because it is too large
+ 0 - 0
mobile/static/js/pages-goods-detail.645a297c.js


+ 0 - 1
mobile/static/js/pages-goods-detail.e76218d3.js

@@ -1 +0,0 @@
-(window["webpackJsonp"]=window["webpackJsonp"]||[]).push([["pages-goods-detail"],{"16ef":function(t,n,e){"use strict";Object.defineProperty(n,"__esModule",{value:!0}),n.default=void 0;var a={name:"goods-detail",data:function(){return{}},onLoad:function(t){}};n.default=a},"17af":function(t,n,e){"use strict";e.r(n);var a=e("16ef"),u=e.n(a);for(var r in a)"default"!==r&&function(t){e.d(n,t,(function(){return a[t]}))}(r);n["default"]=u.a},"3a8b":function(t,n,e){"use strict";var a=function(){var t=this,n=t.$createElement,e=t._self._c||n;return e("div",{staticClass:"app-content"})},u=[];e.d(n,"a",(function(){return a})),e.d(n,"b",(function(){return u}))},bbcb:function(t,n,e){"use strict";e.r(n);var a=e("3a8b"),u=e("17af");for(var r in u)"default"!==r&&function(t){e.d(n,t,(function(){return u[t]}))}(r);var o=e("4e82"),f=Object(o["a"])(u["default"],a["a"],a["b"],!1,null,"571a4e7e",null);n["default"]=f.exports}}]);

+ 0 - 1
mobile/static/js/pages-home-index.1735f5fa.js

@@ -1 +0,0 @@
-(window["webpackJsonp"]=window["webpackJsonp"]||[]).push([["pages-home-index"],{"3ef7":function(n,t,e){"use strict";e.r(t);var u=e("8b67"),a=e.n(u);for(var i in u)"default"!==i&&function(n){e.d(t,n,(function(){return u[n]}))}(i);t["default"]=a.a},"46ee":function(n,t,e){"use strict";var u=function(){var n=this,t=n.$createElement,e=n._self._c||t;return e("div",{staticClass:"app-content"},[e("v-uni-button",{on:{click:function(t){t=n.$handleEvent(t),n.toPay(t)}}},[n._v("去支付页")])],1)},a=[];e.d(t,"a",(function(){return u})),e.d(t,"b",(function(){return a}))},"8b67":function(n,t,e){"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.default=void 0;var u={name:"home",components:{},data:function(){return{}},onLoad:function(n){uni.setNavigationBarTitle({title:"国兰花尚"})},methods:{toPay:function(){uni.navigateTo({url:"/pages/pay/index"})}}};t.default=u},f5b8:function(n,t,e){"use strict";e.r(t);var u=e("46ee"),a=e("3ef7");for(var i in a)"default"!==i&&function(n){e.d(t,n,(function(){return a[n]}))}(i);var o=e("4e82"),r=Object(o["a"])(a["default"],u["a"],u["b"],!1,null,"760e0e4c",null);t["default"]=r.exports}}]);

File diff suppressed because it is too large
+ 0 - 0
mobile/static/js/pages-home-index.83732e25.js


File diff suppressed because it is too large
+ 0 - 0
mobile/static/js/pages-interest-invite.e8e03a76.js


File diff suppressed because it is too large
+ 0 - 0
mobile/static/js/pages-interest-level.b825a5d0.js


Some files were not shown because too many files changed in this diff