Browse Source

代码提交

zhang 5 years ago
parent
commit
27f9b4b826
69 changed files with 11970 additions and 0 deletions
  1. 11 0
      .hbuilderx/launch.json
  2. 17 0
      App.vue
  3. 15 0
      main.js
  4. 81 0
      manifest.json
  5. 46 0
      pages.json
  6. 65 0
      pages/confirm/confirm.css
  7. 64 0
      pages/confirm/confirm.vue
  8. 85 0
      pages/index/index.css
  9. 392 0
      pages/index/index.vue
  10. 53 0
      pages/show/show.css
  11. 55 0
      pages/show/show.vue
  12. 35 0
      pages/test/test.vue
  13. 78 0
      static/api.js
  14. BIN
      static/images/card.png
  15. BIN
      static/images/change.png
  16. BIN
      static/images/explain.png
  17. BIN
      static/images/head.png
  18. BIN
      static/images/head1.png
  19. BIN
      static/images/light.png
  20. BIN
      static/images/map.png
  21. BIN
      static/images/showhead.png
  22. BIN
      static/images/take.png
  23. BIN
      static/images/test.png
  24. BIN
      static/logo.png
  25. 76 0
      uni.scss
  26. 0 0
      unpackage/dist/dev/.automator/mp-weixin/.automator.json
  27. 1 0
      unpackage/dist/dev/.sourcemap/mp-weixin/common/main.js.map
  28. 1 0
      unpackage/dist/dev/.sourcemap/mp-weixin/common/runtime.js.map
  29. 1 0
      unpackage/dist/dev/.sourcemap/mp-weixin/common/vendor.js.map
  30. 1 0
      unpackage/dist/dev/.sourcemap/mp-weixin/pages/confirm/confirm.js.map
  31. 1 0
      unpackage/dist/dev/.sourcemap/mp-weixin/pages/index/index.js.map
  32. 1 0
      unpackage/dist/dev/.sourcemap/mp-weixin/pages/show/show.js.map
  33. 1 0
      unpackage/dist/dev/.sourcemap/mp-weixin/pages/test/test.js.map
  34. 4 0
      unpackage/dist/dev/mp-weixin/app.js
  35. 24 0
      unpackage/dist/dev/mp-weixin/app.json
  36. 3 0
      unpackage/dist/dev/mp-weixin/app.wxss
  37. 135 0
      unpackage/dist/dev/mp-weixin/common/main.js
  38. 17 0
      unpackage/dist/dev/mp-weixin/common/main.wxss
  39. 158 0
      unpackage/dist/dev/mp-weixin/common/runtime.js
  40. 9025 0
      unpackage/dist/dev/mp-weixin/common/vendor.js
  41. 224 0
      unpackage/dist/dev/mp-weixin/pages/confirm/confirm.js
  42. 5 0
      unpackage/dist/dev/mp-weixin/pages/confirm/confirm.json
  43. 1 0
      unpackage/dist/dev/mp-weixin/pages/confirm/confirm.wxml
  44. 65 0
      unpackage/dist/dev/mp-weixin/pages/confirm/confirm.wxss
  45. 558 0
      unpackage/dist/dev/mp-weixin/pages/index/index.js
  46. 5 0
      unpackage/dist/dev/mp-weixin/pages/index/index.json
  47. 1 0
      unpackage/dist/dev/mp-weixin/pages/index/index.wxml
  48. 93 0
      unpackage/dist/dev/mp-weixin/pages/index/index.wxss
  49. 215 0
      unpackage/dist/dev/mp-weixin/pages/show/show.js
  50. 5 0
      unpackage/dist/dev/mp-weixin/pages/show/show.json
  51. 1 0
      unpackage/dist/dev/mp-weixin/pages/show/show.wxml
  52. 66 0
      unpackage/dist/dev/mp-weixin/pages/show/show.wxss
  53. 163 0
      unpackage/dist/dev/mp-weixin/pages/test/test.js
  54. 5 0
      unpackage/dist/dev/mp-weixin/pages/test/test.json
  55. 1 0
      unpackage/dist/dev/mp-weixin/pages/test/test.wxml
  56. 31 0
      unpackage/dist/dev/mp-weixin/project.config.json
  57. 7 0
      unpackage/dist/dev/mp-weixin/sitemap.json
  58. 78 0
      unpackage/dist/dev/mp-weixin/static/api.js
  59. BIN
      unpackage/dist/dev/mp-weixin/static/images/card.png
  60. BIN
      unpackage/dist/dev/mp-weixin/static/images/change.png
  61. BIN
      unpackage/dist/dev/mp-weixin/static/images/explain.png
  62. BIN
      unpackage/dist/dev/mp-weixin/static/images/head.png
  63. BIN
      unpackage/dist/dev/mp-weixin/static/images/head1.png
  64. BIN
      unpackage/dist/dev/mp-weixin/static/images/light.png
  65. BIN
      unpackage/dist/dev/mp-weixin/static/images/map.png
  66. BIN
      unpackage/dist/dev/mp-weixin/static/images/showhead.png
  67. BIN
      unpackage/dist/dev/mp-weixin/static/images/take.png
  68. BIN
      unpackage/dist/dev/mp-weixin/static/images/test.png
  69. BIN
      unpackage/dist/dev/mp-weixin/static/logo.png

+ 11 - 0
.hbuilderx/launch.json

@@ -0,0 +1,11 @@
+{ // launch.json 配置了启动调试时相关设置,configurations下节点名称可为 app-plus/h5/mp-weixin/mp-baidu/mp-alipay/mp-qq/mp-toutiao/mp-360/
+  // launchtype项可配置值为local或remote, local代表前端连本地云函数,remote代表前端连云端云函数
+    "version": "0.0",
+    "configurations": [{
+            "type": "uniCloud",
+            "default": {
+                "launchtype": "local"
+            }
+        }
+    ]
+}

+ 17 - 0
App.vue

@@ -0,0 +1,17 @@
+<script>
+	export default {
+		onLaunch: function() {
+			console.log('App Launch')
+		},
+		onShow: function() {
+			console.log('App Show')
+		},
+		onHide: function() {
+			console.log('App Hide')
+		}
+	}
+</script>
+
+<style>
+	/*每个页面公共css */
+</style>

+ 15 - 0
main.js

@@ -0,0 +1,15 @@
+import Vue from 'vue'
+import App from './App'
+
+import {myRequest} from 'static/api.js'// 1、引入app.js
+
+Vue.prototype.$myRequest = myRequest//  2、挂载全局
+
+Vue.config.productionTip = false
+
+App.mpType = 'app'
+
+const app = new Vue({
+    ...App
+})
+app.$mount()

+ 81 - 0
manifest.json

@@ -0,0 +1,81 @@
+{
+    "name" : "yinnxin",
+    "appid" : "__UNI__9CF6CB3",
+    "description" : "",
+    "versionName" : "1.0.0",
+    "versionCode" : "100",
+    "transformPx" : false,
+    /* 5+App特有相关 */
+    "app-plus" : {
+        "usingComponents" : true,
+        "nvueStyleCompiler" : "uni-app",
+        "compilerVersion" : 3,
+        "splashscreen" : {
+            "alwaysShowBeforeRender" : true,
+            "waiting" : true,
+            "autoclose" : true,
+            "delay" : 0
+        },
+        /* 模块配置 */
+        "modules" : {},
+        /* 应用发布信息 */
+        "distribute" : {
+            /* android打包配置 */
+            "android" : {
+                "permissions" : [
+                    "<uses-permission android:name=\"android.permission.CHANGE_NETWORK_STATE\"/>",
+                    "<uses-permission android:name=\"android.permission.MOUNT_UNMOUNT_FILESYSTEMS\"/>",
+                    "<uses-permission android:name=\"android.permission.VIBRATE\"/>",
+                    "<uses-permission android:name=\"android.permission.READ_LOGS\"/>",
+                    "<uses-permission android:name=\"android.permission.ACCESS_WIFI_STATE\"/>",
+                    "<uses-feature android:name=\"android.hardware.camera.autofocus\"/>",
+                    "<uses-permission android:name=\"android.permission.ACCESS_NETWORK_STATE\"/>",
+                    "<uses-permission android:name=\"android.permission.CAMERA\"/>",
+                    "<uses-permission android:name=\"android.permission.GET_ACCOUNTS\"/>",
+                    "<uses-permission android:name=\"android.permission.READ_PHONE_STATE\"/>",
+                    "<uses-permission android:name=\"android.permission.CHANGE_WIFI_STATE\"/>",
+                    "<uses-permission android:name=\"android.permission.WAKE_LOCK\"/>",
+                    "<uses-permission android:name=\"android.permission.FLASHLIGHT\"/>",
+                    "<uses-feature android:name=\"android.hardware.camera\"/>",
+                    "<uses-permission android:name=\"android.permission.WRITE_SETTINGS\"/>"
+                ]
+            },
+            /* ios打包配置 */
+            "ios" : {
+                "privacyDescription" : {
+                    "NSCameraUsageDescription" : "获取人脸信息"
+                }
+            },
+            /* SDK配置 */
+            "sdkConfigs" : {}
+        }
+    },
+    /* 快应用特有相关 */
+    "quickapp" : {},
+    /* 小程序特有相关 */
+    "mp-weixin" : {
+        "appid" : "wxd6f090391d410534",
+        "setting" : {
+            "urlCheck" : false
+        },
+        "usingComponents" : true,
+        "plugins" : {
+            "myPlugin" : {
+                "provider" : "wx1549b963bbae9931",
+                "version" : "4.0.0"
+            }
+        }
+    },
+    "mp-alipay" : {
+        "usingComponents" : true
+    },
+    "mp-baidu" : {
+        "usingComponents" : true
+    },
+    "mp-toutiao" : {
+        "usingComponents" : true
+    },
+    "uniStatistics" : {
+        "enable" : false
+    }
+}

+ 46 - 0
pages.json

@@ -0,0 +1,46 @@
+{
+	"pages": [ //pages数组中第一项表示应用启动页,参考:https://uniapp.dcloud.io/collocation/pages
+		{
+			"path": "pages/index/index",
+			"style": {
+				"navigationBarTitleText": "人脸采集",
+				"enablePullDownRefresh": true
+			}
+		}
+		,{
+		    "path" : "pages/show/show",
+		    "style" :                                                                                    
+		    {
+		        "navigationBarTitleText": "迎新首页",
+		        "enablePullDownRefresh": false
+		    }
+		    
+		},{
+		    "path" : "pages/confirm/confirm",
+		    "style" :                                                                                    
+		    {
+		        "navigationBarTitleText": "确认信息",
+		        "enablePullDownRefresh": false
+		    }
+		    
+		},{
+		    "path" : "pages/test/test",
+		    "style" :                                                                                    
+		    {
+		        "navigationBarTitleText": "",
+		        "enablePullDownRefresh": false
+		    }
+		    
+		}
+        
+    ],
+	"globalStyle": {
+		"navigationBarTextStyle": "black",
+		"navigationBarTitleText": "uni-app",
+		"navigationBarBackgroundColor": "#F8F8F8",
+		"backgroundColor": "#F8F8F8",
+		"usingComponents": {
+			"login": "plugin://myPlugin/login"
+		}
+	}
+}

+ 65 - 0
pages/confirm/confirm.css

@@ -0,0 +1,65 @@
+.container{
+		display: flex;
+		flex-direction: column;
+		color: #333333;
+		font-family: 'MicrosoftYaHei';
+		font-size: 28rpx;
+		height: 1206rpx;
+	}
+	
+	.image{
+		width: 692rpx;
+		height: 432rpx;
+		margin-top: 21rpx;
+		margin-left: 29rpx;
+	}
+	
+	.item_info_title{
+		margin-top: 40rpx;
+		margin-left: 30rpx;
+		font-size: 32rpx;
+		font-weight: 700;
+	}
+	
+	.item_info{
+		margin-left: 30rpx;
+		display: flex;
+		flex-wrap: wrap;
+	}
+	
+	.info_list_left{
+		width: 600rpx;
+		margin-top: 14.5rpx;
+	}
+	
+	.info_list_right{
+		width: 350rpx;
+		margin-top: 14.5rpx;
+	}
+	
+	.info_list_long{
+		width: 500rpx;
+		margin-top: 14.5rpx;
+	}
+	
+	.item_btu{
+		margin-top: 100rpx;
+	}
+	
+	.submit{
+		width: 600rpx;
+		height: 80rpx;
+		/* padding-top: 8rpx; */
+		/* border-radius: 10rpx; */
+		background-color: #6EAFF0;
+		color: #FFFFFF;
+		font-size: 28rpx;
+	}
+	
+	.last_info{
+		width: 578rpx;
+		height: 62rpx;
+		margin-top: 19rpx;
+		margin-left: 86rpx;
+		font-size: 24rpx;
+	}

+ 64 - 0
pages/confirm/confirm.vue

@@ -0,0 +1,64 @@
+<template>
+	<view class="container">
+		<view class="item_image">
+			<image src="../../static/images/test.png" class="image"></image>
+		</view>
+		<view class="item_info_title">
+			<text class="info_title">个人信息</text>
+		</view>
+		<view class="item_info">
+			<view class="info_list_left">
+				姓名:<text>{{name}}</text>
+			</view>
+			<view class="info_list_right">
+				性别:<text>{{sex}}</text>
+			</view>
+			<view class="info_list_left">
+				学号:<text>{{stu_info}}</text>
+			</view>
+			<view class="info_list_right">
+				准考证号:<text>{{ticket_id}}</text>
+			</view>
+			
+			<view class="info_list_long ">
+				身份证号:<text>{{id_card}}</text>
+			</view>
+		</view>
+		<view class="item_btu">
+			<button class="submit" @tap="navigateToIndex">我已确认</button>
+			<view class="last_info">
+				<text>如信息有误,或有其他疑问,请联系校招生办,联系电话:xxxxxxxxxxx</text>
+			</view>
+		</view>
+		
+	</view>
+</template>
+
+<script>
+	export default {
+		data() {
+			return {
+				name: '张三',
+				sex: '男',
+				stu_info: '20210210440101',
+				ticket_id: '22222222222222',
+				id_card: '360124199911112222',
+				card_number: '',
+			}
+		},
+		onLoad(){
+			
+		},
+		methods: {
+			navigateToIndex(){
+				uni.navigateTo({
+					url: '../test/test?card_number'
+				});
+			},
+		}
+	}
+</script>
+
+<style>
+	@import url("confirm.css");
+</style>

+ 85 - 0
pages/index/index.css

@@ -0,0 +1,85 @@
+.item-camera {
+	/* position: fixed; */
+	/* top: 0;
+	left: 0; */
+	width: 100%;
+	height: 1300rpx;
+	background-color: #ffffff;
+}
+
+.camera {
+	width: 100%;
+	/* height: 760rpx; */
+	height: 912rpx;
+}
+
+.item-cover {
+	/* width: 669rpx;
+	height: 581.3rpx; */
+	width: 802.8rpx;
+	height: 697.56rpx;
+	/* margin-left: 40rpx; */
+	margin-left: -26.4rpx;
+	margin-top: 180rpx;
+}
+
+/* .submit-btn {
+	width: 100%;
+	margin-top: 5rpx;
+	display: flex;
+	flex-direction: row;
+	align-items: center;
+} */
+
+.item-list{
+	/* z-index: 1; */
+	width: 555rpx;
+	margin-top: 89rpx;
+	margin-left: 100rpx;
+	display: flex;
+	flex-direction: row;
+	justify-content: space-between;
+	align-items:center;
+}
+
+.image-btn {
+	width: 150rpx;
+	height: 150rpx;
+	/* margin-left: 130rpx; */
+}
+
+.image-light{
+	width: 70rpx;
+	height: 70rpx;
+	/* margin-top: 129rpx; */
+	/* margin-left: 100rpx; */
+}
+
+.image-change{
+	width: 70rpx;
+	height: 70rpx;
+	/* margin-top: 129rpx; */
+	/* margin-left: 135rpx; */
+}
+
+.item-btn-list{
+	width: 690rpx;
+	margin-top: 125rpx;
+	margin-left: 30rpx;
+	display: flex;
+	flex-direction: row;
+	justify-content: space-between;
+}
+
+.use-btn{
+	background-color: #6EAFF0;
+	width: 188rpx;
+	height: 80rpx;
+	border-radius: 10rpx;
+	font-size: 32rpx;
+	color: #FFFFFF;
+}
+
+.login-item{
+	z-index: 1;
+}

+ 392 - 0
pages/index/index.vue

@@ -0,0 +1,392 @@
+<template>
+	<view class="content">
+		<view class="item-camera" v-if="showHeader">
+			<camera binderror="" :device-position="devicePosition" :flash="deviceLight" class="camera"
+				v-if="authCamera">
+				<cover-image src='../../static/images/head1.png' class="item-cover" v-if="cover">
+				</cover-image>
+			</camera>
+			<view class="item-list" v-if="list_btn">
+				<image src="../../static/images/light.png" class="image-light" @tap="takeLight"></image>
+				<image src="../../static/images/take.png" class="image-btn" @tap="takePhotoByHead"></image>
+				<image src="../../static/images/change.png" class="image-change" @tap="changeDevice"></image>
+			</view>
+			<view class="error-handler" v-if="!authCamera">
+				<button class="nobtn" openType="openSetting">打开相机授权</button>
+			</view>
+		</view>
+		<view class="item-camera" v-if="!showHeader">
+			<view>
+				<image :src="image" class="camera"></image>
+			</view>
+
+			<view class="item-btn-list">
+				<view><button class="use-btn" @tap="resetImage">重拍</button></view>
+				<view><button class="use-btn" @tap="checkImage">使用照片</button></view>
+			</view>
+		</view>
+		<view v-if="showLogin" class="login-item">
+			<login :ocode="ocode" :appkey="appkey" scope="snsapi_userinfo" :visible="visible" @success="callback()"
+				@cancel="callback()" @fail="callback()" />
+		</view>
+	</view>
+</template>
+
+<script>
+	export default {
+		data() {
+			return {
+				cover: false, //覆盖层
+				visible: true,  //是否可见
+				authCamera: true, //控制camera
+				showHeader: true, //控制camera所在的view
+				list_btn: false, //控制三个按钮
+				showLogin: true,
+				ctxHeader: null,
+				devicePosition: 'front', //摄像头
+				deviceLight: 'off', //闪光灯
+				image: '',
+				card_number: '', //学生信息
+				appkey: '8C41E2FECF2E9925',
+				sub_appid: '1015730314_1941301045',
+				appid: 'wxd6f090391d410534', // 获取用户信息
+				ocode: '1015730314', // 获取用户信息
+				app_secret: '9C5EC8E3B7ABBF9C0641804000D8F28E', // 获取用户信息
+				wxcode: '',
+				access_token: '',
+				userinfo: {},
+			}
+		},
+		onLoad(options) {
+			// console.log(options)
+			// this.card_number = options.card_number   //获取后台传入参数
+			// if (!this.card_number) {
+			// 	this.get_wxcode() //授权
+			// 	// uni.showToast({
+			// 	// 	icon: 'false',
+			// 	// 	title: '请重新授权',
+			// 	// 	duration: 1000,
+			// 	// 	success: (res) => {
+			// 	// 		// this.my_display = true
+			// 	// 	}
+			// 	// })
+			// } else {
+			// this.list_btn = true
+			// this.get_image()
+			// this.show_Toast()
+			//获取摄像头权限
+			uni.authorize({
+				scope: 'scope.camera',
+				success: res => {
+				}
+			})
+			//判断是否获取摄像头权限
+			uni.getSetting({
+				success: (res) => {
+					// console.log(res)
+					if (res.authSetting["scope.camera"]) {
+						this.authCamera = true
+						// this.takePhotoByHead()
+					} else {
+						// this.handleCameraError()
+						this.authCamera = false
+					}
+				}
+			})
+			// console.log(this.authCamera)
+			// this.get_image()  //拍照获取人脸信息
+			// }
+		},
+		methods: {
+			//授权获取wxcode
+			callback: function({
+				detail
+			}) {
+				// console.log(detail)
+				// {wxcode: "7f7Qi9rN8zQ1nifQiysTZ3WIeIWlgcGk"}
+				if (detail === undefined) {
+					// this.userinfo = {};
+					uni.showToast({
+						icon: 'success',
+						title: '需要先授权'
+					});
+				} else {
+					const {
+						wxcode = ""
+					} = detail
+					
+					if (wxcode.length == 0) {
+						uni.showToast({
+							title: '未获得wxcode',
+							duration: 500
+						})
+					} else {
+						// 获取wxcode
+						this.wxcode = wxcode
+						// console.log(this.wxcode)
+						this.list_btn = true
+						this.cover = true
+						// 通过wxcode换取access_token
+						this.get_access_token()
+					}
+				}
+			},
+			/**
+			 * 通过wxcode换取access_token
+			 */
+			async get_access_token() {
+				const res = await this.$myRequest({
+					host: 'wecard',
+					url: '/connect/oauth2/token',
+					method: 'POST',
+					header: {
+						'content-type': 'application/json'
+					},
+					data: {
+						'wxcode': this.wxcode,
+						'app_key': this.appkey,
+						'app_secret': this.app_secret,
+						'grant_type': 'authorization_code',
+						'redirect_uri': 'mnp://wxd6f090391d410534'
+					}
+				})
+				if (res.statusCode == 200) {
+					if (res.data.access_token == '' || res.data.access_token == 'undefined') {
+						uni.showToast({
+							title: '未获得token'
+						})
+					} else {
+						// console.log(res)
+						this.access_token = res.data.access_token;
+						
+						// 通过access_token换取用户信息
+						this.get_user_info();
+					}
+				} else {
+					uni.showToast({
+						icon: 'none',
+						title: '请求失败,未获得token'
+					})
+				}
+			},
+			/**
+			 * 通过access_token换取用户信息
+			 */
+			async get_user_info() {
+				const res = await this.$myRequest({
+					host: 'wecard',
+					url: '/connect/oauth/get-user-info',
+					method: 'POST',
+					header: {
+						'content-type': 'application/json'
+					},
+					data: {
+						"access_token": this.access_token
+					}
+				});
+			
+				if (res.statusCode == 200) {
+					if (res.data.errcode == 0 && res.data.errmsg == 'OK') {
+						try {
+							this.userinfo = res.data
+							// // 存储用户信息
+							uni.setStorageSync('userinfo_storage_key', this.userinfo)
+							// 提示授权成功
+							uni.showToast({
+								icon: 'success',
+								title: '授权成功',
+								duration: 800,
+								success: (res) => {
+									// this.my_display = true
+									this.list_btn = true
+									this.cover = true
+								}
+							})
+							this.card_number = this.userinfo.card_number
+							// console.log(this.userinfo)
+						} catch (e) {
+							console.log(e)
+						}
+					} else {
+						uni.showToast({
+							title: '未获得用户信息',
+							duration: 1000
+						});
+					}
+				} else {
+					uni.showToast({
+						icon: 'none',
+						title: '请求失败,未授权成功'
+					});
+				}
+			},
+
+			// //拍照获取人脸相片
+			// get_image() {
+			// 	uni.chooseMedia({
+			// 		count: 1, //默认9
+			// 		mediaType: ['image'],
+			// 		sourceType: ['camera'],
+			// 		sizeType: ['original'], //可以指定是原图还是压缩图,默认二者都有
+			// 		camera: 'front',
+			// 		success: res => {
+			// 			// console.log(res)
+			// 			let imgFiles = res.tempFiles[0].tempFilePath
+			// 			this.image = imgFiles
+			// 			console.log('本地地址', this.image)
+			// 			this.preview()
+			// 			// this.uploadTheImg(imgFiles)  //向后台传送文件
+			// 		}
+			// 	});
+			// },
+			//拍摄头像
+			takePhotoByHead() {
+				this.showHeader = true //开启拍照
+				this.ctxHeader = uni.createCameraContext();
+				this.ctxHeader.takePhoto({
+					quality: 'high',
+					success: (res) => {
+						uni.compressImage({
+							src: res.tempImagePath,
+							quality: 90, //压缩比例
+							success: ress => {
+								this.image = ress.tempFilePath;
+								console.log(this.image)
+								// console.log(typeof(this.image))
+								this.showHeader = false; //关闭拍照
+								// this.uploadTheImg()
+							}
+						})
+					}
+				});
+			},
+			// //当摄像头无法启动时显示
+			// handleCameraError() {
+			// 	uni.showToast({
+			// 		title: '用户拒绝使用摄像头',
+			// 		icon: 'none'
+			// 	})
+			// },
+			//刷新页面
+			onPullDownRefresh: function() {
+				uni.navigateTo({
+					url: '../index/index',
+				});
+				// console.log('触发了下拉刷新')
+			},
+			//相片预览
+			preview() {
+				console.log('路径' + this.image)
+				uni.previewImage({
+					// 对选中的图片进行预览
+					urls: [this.image, ],
+					// urls:['','']  图片的地址 是数组形式
+				});
+			},
+			//重新拍摄
+			resetImage() {
+				this.showHeader = true
+			},
+			//调用另一个摄像头
+			changeDevice() {
+				if (this.devicePosition == 'front') {
+					this.devicePosition = 'back'
+					uni.showToast({
+						title: '开启后摄像头',
+						icon: 'none'
+					})
+				} else {
+					this.devicePosition = 'front'
+					uni.showToast({
+						title: '开启前摄像头',
+						icon: 'none'
+					})
+				}
+			},
+			//设置闪光灯
+			takeLight() {
+				if (this.deviceLight == 'off') {
+					this.deviceLight = 'on'
+					uni.showToast({
+						title: '开启闪光灯',
+						icon: 'success'
+					})
+				} else {
+					this.deviceLight = 'off'
+					uni.showToast({
+						title: '关闭闪光灯',
+						icon: 'false'
+					})
+				}
+			},
+			//确定使用图片
+			checkImage() {
+				console.log(this.image)
+				uni.showLoading({
+					title: '图片正在上传中'
+				});
+				this.uploadTheImg() //向后台传送文件
+			},
+			
+			//上传图片
+			uploadTheImg() {
+				uni.uploadFile({
+					url: 'http://58bybm.natappfree.cc', //后端用于处理图片并返回图片地址的接口
+					header: {
+						"Content-Type": "multipart/form-data", // formdata提交格式
+					},
+					filePath: this.image,
+					name: 'uploadfile', // 默认
+					formData: { // 其他的formdata参数
+						card_number: this.card_number,
+					},
+					success: res => {
+						// let data = JSON.parse(res.data) //返回的是字符串,需要转成对象格式,打印data如下图
+						// if (data.code == 200) {
+						// 	console.log(data.msg) //图片地址
+						// }
+						console.log(res)
+						uni.hideLoading();
+						// var code = '200'
+						// if (code == 200) {
+						if (res.statusCode == 200) {
+							uni.showToast({
+								icon: 'success',
+								title: '人脸采集成功',
+								success: (res) => {
+									setTimeout(function() {
+										uni.navigateTo({
+											url: '../confirm/confirm',
+										})
+									}, 1500);
+								}
+							})
+						} else {
+							uni.showModal({
+								title: '人脸采集失败',
+								content: '请重新拍照上传',
+								confirmText: '重新拍照',
+								cancelText: '直接跳转',
+								// showCancel: false,
+								success: res => {
+									if (res.confirm) {
+										this.showHeader = true
+									} else if (res.cancel) {
+										uni.navigateTo({
+											url: '../confirm/confirm',
+										})
+									}
+								}
+							});
+						}
+					},
+					fail: res => {}
+				})
+			},
+		},
+	}
+</script>
+
+<style>
+	@import url("index.css");
+</style>

+ 53 - 0
pages/show/show.css

@@ -0,0 +1,53 @@
+
+.item-iamge .image{
+	width: 749rpx;
+	height: 360rpx;
+	
+}
+
+.item-title{
+	margin-top: 39rpx;
+	margin-left: 30rpx;
+	width: 400rpx;
+	display: flex;
+	flex-direction: row;
+}
+
+.item-title-line{
+	height: 32rpx;
+	width: 10rpx;
+	background-color: #3FB0FF;
+}
+
+.item-title-font{
+	font-size: 32rpx;
+	color: #333333;
+	margin-left: 15rpx;
+	font-weight: 700;
+	margin-top: -5rpx;
+}
+
+.item-list{
+	width: 590rpx;
+	margin-top: 40rpx;
+	margin-left: 80rpx;
+	display: flex;
+	flex-direction: row;
+	justify-content: space-between;
+}
+
+.item-list-one{
+	display: flex;
+	flex-direction: column;
+	align-items: center;
+}
+
+.img-btn{
+	width: 90rpx;
+	height: 90rpx;
+}
+.list-txt{
+	margin-top: 29rpx;
+	font-size: 30rpx;
+	color: #333333;
+}

+ 55 - 0
pages/show/show.vue

@@ -0,0 +1,55 @@
+<template>
+	<view class="container">
+		<view class="item-iamge">
+			<image src="../../static/images/showhead.png" class="image"></image>
+		</view>
+		<view class="item-title">
+			<view class="item-title-line"></view>
+			<view class="item-title-font">迎新指南</view>
+		</view>
+		<view class="item-list">
+			<view class="item-list-one" @tap="navigateToExplain">
+				<image src="../../static/images/explain.png" class="img-btn"></image>
+				<text class="list-txt">报道指南</text>
+			</view>
+			<view class="item-list-one" @tap="navigateToMap">
+				<image src="../../static/images/map.png" class="img-btn"></image>
+				<text class="list-txt">地图导览</text>
+			</view>
+			<view class="item-list-one" @tap="navigateToCard">
+				<image src="../../static/images/card.png" class="img-btn"></image>
+				<text class="list-txt">临时卡领取</text>
+			</view>
+		</view>
+	</view>
+</template>
+
+<script>
+	export default {
+		data() {
+			return {
+				
+			}
+		},
+		methods: {
+			navigateToExplain(){
+				uni.navigateTo({
+					url: '../test/test',
+				});
+			},
+			navigateToMap(){
+				uni.navigateTo({
+					url: '',
+				});
+			},navigateToCard(){
+				uni.navigateTo({
+					url: '',
+				});
+			}
+		}
+	}
+</script>
+	
+<style>
+	@import url("show.css");
+</style>

+ 35 - 0
pages/test/test.vue

@@ -0,0 +1,35 @@
+<template>
+	<view>
+		<web-view :src="link" bindmessage="getMessage"></web-view>
+	</view>
+</template>
+
+<script>
+	export default {
+		data() {
+			return {
+				link: "https://wj.qq.com/s2/8767613/e476?openid" + this.card_number,
+				card_number: ''
+			}
+		},
+		onLoad(){
+			try {
+				// 获取存储的用户数据
+				const value = uni.getStorageSync('userinfo_storage_key')
+				// console.log(item)
+				// console.log(value)
+				this.card_number = value.card_number
+				console.log(this.card_number)
+			} catch (e) {
+				console.log(e)
+			}
+		},
+		methods: {
+			
+		}
+	}
+</script>
+
+<style>
+
+</style>

+ 78 - 0
static/api.js

@@ -0,0 +1,78 @@
+const WECARD_BASE_URL = 'https://open.wecard.qq.com' // wecard
+const MY_BASE_URL = 'http://demo.xwsyjjy.com' // my
+const CODE_BASE_URL = 'https://developdomain.chuanghai-tech.com' // code
+
+export const myRequest = (options) => {
+	
+	// 域名 或 url 为空,则不执行任何操作
+	if (options.host == '' || options.url == '') {
+		return
+	}
+
+	return new Promise((resolve, reject) => {
+		let BASE_URL = '';
+
+		if (options.host == 'wecard')
+			BASE_URL = WECARD_BASE_URL;
+		else if (options.host == 'my')
+			BASE_URL = MY_BASE_URL;
+		else if (options.host == 'code')
+			BASE_URL = CODE_BASE_URL;
+		else
+			return;
+
+		uni.request({
+			url: BASE_URL + options.url,
+			method: options.method || 'GET',
+			header: options.header || {},
+			data: options.data || {},
+			success: (res) => {
+				// console.log(res)
+				resolve(res)
+			},
+			fail: (err) => {
+				uni.showToast({
+					icon: 'none',
+					title: err.errMsg
+				})
+				reject(err)
+			}
+		})
+	}).catch(
+		err => {
+			console.log("catch " + err);
+		}
+	)
+}
+
+// let BASE_URL = 'http://demo.xwsyjjy.com'
+// export const myRequest = (options) => {
+// 	return new Promise ((resolve, reject) => {
+// 		uni.request({
+// 			url: options.ip ? (options.ip + options.url) : (BASE_URL + options.url),
+// 			method: options.method || 'GET',
+// 			header: options.header || {},
+// 			data: options.data || {},
+// 			success: (res) => {
+// 				// console.log(res)
+// 				// if(res.data.static != "succ"){
+// 				// 	return uni.showToast({
+// 				// 		title: '获取数据失败'
+// 				// 	})
+// 				// }
+// 				// console.log(options)
+// 				resolve(res)
+// 			},
+// 			fail: (err) => {
+// 				uni.showToast({
+// 					title: '请求接口失败'
+// 				})
+// 				reject(err)
+// 			},
+// 		});
+// 	})
+	
+// }
+
+
+

BIN
static/images/card.png


BIN
static/images/change.png


BIN
static/images/explain.png


BIN
static/images/head.png


BIN
static/images/head1.png


BIN
static/images/light.png


BIN
static/images/map.png


BIN
static/images/showhead.png


BIN
static/images/take.png


BIN
static/images/test.png


BIN
static/logo.png


+ 76 - 0
uni.scss

@@ -0,0 +1,76 @@
+/**
+ * 这里是uni-app内置的常用样式变量
+ *
+ * uni-app 官方扩展插件及插件市场(https://ext.dcloud.net.cn)上很多三方插件均使用了这些样式变量
+ * 如果你是插件开发者,建议你使用scss预处理,并在插件代码中直接使用这些变量(无需 import 这个文件),方便用户通过搭积木的方式开发整体风格一致的App
+ *
+ */
+
+/**
+ * 如果你是App开发者(插件使用者),你可以通过修改这些变量来定制自己的插件主题,实现自定义主题功能
+ *
+ * 如果你的项目同样使用了scss预处理,你也可以直接在你的 scss 代码中使用如下变量,同时无需 import 这个文件
+ */
+
+/* 颜色变量 */
+
+/* 行为相关颜色 */
+$uni-color-primary: #007aff;
+$uni-color-success: #4cd964;
+$uni-color-warning: #f0ad4e;
+$uni-color-error: #dd524d;
+
+/* 文字基本颜色 */
+$uni-text-color:#333;//基本色
+$uni-text-color-inverse:#fff;//反色
+$uni-text-color-grey:#999;//辅助灰色,如加载更多的提示信息
+$uni-text-color-placeholder: #808080;
+$uni-text-color-disable:#c0c0c0;
+
+/* 背景颜色 */
+$uni-bg-color:#ffffff;
+$uni-bg-color-grey:#f8f8f8;
+$uni-bg-color-hover:#f1f1f1;//点击状态颜色
+$uni-bg-color-mask:rgba(0, 0, 0, 0.4);//遮罩颜色
+
+/* 边框颜色 */
+$uni-border-color:#c8c7cc;
+
+/* 尺寸变量 */
+
+/* 文字尺寸 */
+$uni-font-size-sm:24rpx;
+$uni-font-size-base:28rpx;
+$uni-font-size-lg:32rpx;
+
+/* 图片尺寸 */
+$uni-img-size-sm:40rpx;
+$uni-img-size-base:52rpx;
+$uni-img-size-lg:80rpx;
+
+/* Border Radius */
+$uni-border-radius-sm: 4rpx;
+$uni-border-radius-base: 6rpx;
+$uni-border-radius-lg: 12rpx;
+$uni-border-radius-circle: 50%;
+
+/* 水平间距 */
+$uni-spacing-row-sm: 10px;
+$uni-spacing-row-base: 20rpx;
+$uni-spacing-row-lg: 30rpx;
+
+/* 垂直间距 */
+$uni-spacing-col-sm: 8rpx;
+$uni-spacing-col-base: 16rpx;
+$uni-spacing-col-lg: 24rpx;
+
+/* 透明度 */
+$uni-opacity-disabled: 0.3; // 组件禁用态的透明度
+
+/* 文章场景相关 */
+$uni-color-title: #2C405A; // 文章标题颜色
+$uni-font-size-title:40rpx;
+$uni-color-subtitle: #555555; // 二级标题颜色
+$uni-font-size-subtitle:36rpx;
+$uni-color-paragraph: #3F536E; // 文章段落颜色
+$uni-font-size-paragraph:30rpx;

+ 0 - 0
unpackage/dist/dev/.automator/mp-weixin/.automator.json


File diff suppressed because it is too large
+ 1 - 0
unpackage/dist/dev/.sourcemap/mp-weixin/common/main.js.map


File diff suppressed because it is too large
+ 1 - 0
unpackage/dist/dev/.sourcemap/mp-weixin/common/runtime.js.map


File diff suppressed because it is too large
+ 1 - 0
unpackage/dist/dev/.sourcemap/mp-weixin/common/vendor.js.map


File diff suppressed because it is too large
+ 1 - 0
unpackage/dist/dev/.sourcemap/mp-weixin/pages/confirm/confirm.js.map


File diff suppressed because it is too large
+ 1 - 0
unpackage/dist/dev/.sourcemap/mp-weixin/pages/index/index.js.map


File diff suppressed because it is too large
+ 1 - 0
unpackage/dist/dev/.sourcemap/mp-weixin/pages/show/show.js.map


File diff suppressed because it is too large
+ 1 - 0
unpackage/dist/dev/.sourcemap/mp-weixin/pages/test/test.js.map


+ 4 - 0
unpackage/dist/dev/mp-weixin/app.js

@@ -0,0 +1,4 @@
+
+require('./common/runtime.js')
+require('./common/vendor.js')
+require('./common/main.js')

+ 24 - 0
unpackage/dist/dev/mp-weixin/app.json

@@ -0,0 +1,24 @@
+{
+  "pages": [
+    "pages/index/index",
+    "pages/show/show",
+    "pages/confirm/confirm",
+    "pages/test/test"
+  ],
+  "subPackages": [],
+  "window": {
+    "navigationBarTextStyle": "black",
+    "navigationBarTitleText": "uni-app",
+    "navigationBarBackgroundColor": "#F8F8F8",
+    "backgroundColor": "#F8F8F8"
+  },
+  "plugins": {
+    "myPlugin": {
+      "provider": "wx1549b963bbae9931",
+      "version": "4.0.0"
+    }
+  },
+  "usingComponents": {
+    "login": "plugin://myPlugin/login"
+  }
+}

+ 3 - 0
unpackage/dist/dev/mp-weixin/app.wxss

@@ -0,0 +1,3 @@
+@import './common/main.wxss';
+
+[data-custom-hidden="true"],[bind-data-custom-hidden="true"]{display: none !important;}

File diff suppressed because it is too large
+ 135 - 0
unpackage/dist/dev/mp-weixin/common/main.js


+ 17 - 0
unpackage/dist/dev/mp-weixin/common/main.wxss

@@ -0,0 +1,17 @@
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+/*每个页面公共css */
+

+ 158 - 0
unpackage/dist/dev/mp-weixin/common/runtime.js

@@ -0,0 +1,158 @@
+
+  !function(){try{var a=Function("return this")();a&&!a.Math&&(Object.assign(a,{isFinite:isFinite,Array:Array,Date:Date,Error:Error,Function:Function,Math:Math,Object:Object,RegExp:RegExp,String:String,TypeError:TypeError,setTimeout:setTimeout,clearTimeout:clearTimeout,setInterval:setInterval,clearInterval:clearInterval}),"undefined"!=typeof Reflect&&(a.Reflect=Reflect))}catch(a){}}();
+  /******/ (function(modules) { // webpackBootstrap
+/******/ 	// install a JSONP callback for chunk loading
+/******/ 	function webpackJsonpCallback(data) {
+/******/ 		var chunkIds = data[0];
+/******/ 		var moreModules = data[1];
+/******/ 		var executeModules = data[2];
+/******/
+/******/ 		// add "moreModules" to the modules object,
+/******/ 		// then flag all "chunkIds" as loaded and fire callback
+/******/ 		var moduleId, chunkId, i = 0, resolves = [];
+/******/ 		for(;i < chunkIds.length; i++) {
+/******/ 			chunkId = chunkIds[i];
+/******/ 			if(Object.prototype.hasOwnProperty.call(installedChunks, chunkId) && installedChunks[chunkId]) {
+/******/ 				resolves.push(installedChunks[chunkId][0]);
+/******/ 			}
+/******/ 			installedChunks[chunkId] = 0;
+/******/ 		}
+/******/ 		for(moduleId in moreModules) {
+/******/ 			if(Object.prototype.hasOwnProperty.call(moreModules, moduleId)) {
+/******/ 				modules[moduleId] = moreModules[moduleId];
+/******/ 			}
+/******/ 		}
+/******/ 		if(parentJsonpFunction) parentJsonpFunction(data);
+/******/
+/******/ 		while(resolves.length) {
+/******/ 			resolves.shift()();
+/******/ 		}
+/******/
+/******/ 		// add entry modules from loaded chunk to deferred list
+/******/ 		deferredModules.push.apply(deferredModules, executeModules || []);
+/******/
+/******/ 		// run deferred modules when all chunks ready
+/******/ 		return checkDeferredModules();
+/******/ 	};
+/******/ 	function checkDeferredModules() {
+/******/ 		var result;
+/******/ 		for(var i = 0; i < deferredModules.length; i++) {
+/******/ 			var deferredModule = deferredModules[i];
+/******/ 			var fulfilled = true;
+/******/ 			for(var j = 1; j < deferredModule.length; j++) {
+/******/ 				var depId = deferredModule[j];
+/******/ 				if(installedChunks[depId] !== 0) fulfilled = false;
+/******/ 			}
+/******/ 			if(fulfilled) {
+/******/ 				deferredModules.splice(i--, 1);
+/******/ 				result = __webpack_require__(__webpack_require__.s = deferredModule[0]);
+/******/ 			}
+/******/ 		}
+/******/
+/******/ 		return result;
+/******/ 	}
+/******/
+/******/ 	// The module cache
+/******/ 	var installedModules = {};
+/******/
+/******/ 	// object to store loaded and loading chunks
+/******/ 	// undefined = chunk not loaded, null = chunk preloaded/prefetched
+/******/ 	// Promise = chunk loading, 0 = chunk loaded
+/******/ 	var installedChunks = {
+/******/ 		"common/runtime": 0
+/******/ 	};
+/******/
+/******/ 	var deferredModules = [];
+/******/
+/******/ 	// The require function
+/******/ 	function __webpack_require__(moduleId) {
+/******/
+/******/ 		// Check if module is in cache
+/******/ 		if(installedModules[moduleId]) {
+/******/ 			return installedModules[moduleId].exports;
+/******/ 		}
+/******/ 		// Create a new module (and put it into the cache)
+/******/ 		var module = installedModules[moduleId] = {
+/******/ 			i: moduleId,
+/******/ 			l: false,
+/******/ 			exports: {}
+/******/ 		};
+/******/
+/******/ 		// Execute the module function
+/******/ 		modules[moduleId].call(module.exports, module, module.exports, __webpack_require__);
+/******/
+/******/ 		// Flag the module as loaded
+/******/ 		module.l = true;
+/******/
+/******/ 		// Return the exports of the module
+/******/ 		return module.exports;
+/******/ 	}
+/******/
+/******/
+/******/ 	// expose the modules object (__webpack_modules__)
+/******/ 	__webpack_require__.m = modules;
+/******/
+/******/ 	// expose the module cache
+/******/ 	__webpack_require__.c = installedModules;
+/******/
+/******/ 	// define getter function for harmony exports
+/******/ 	__webpack_require__.d = function(exports, name, getter) {
+/******/ 		if(!__webpack_require__.o(exports, name)) {
+/******/ 			Object.defineProperty(exports, name, { enumerable: true, get: getter });
+/******/ 		}
+/******/ 	};
+/******/
+/******/ 	// define __esModule on exports
+/******/ 	__webpack_require__.r = function(exports) {
+/******/ 		if(typeof Symbol !== 'undefined' && Symbol.toStringTag) {
+/******/ 			Object.defineProperty(exports, Symbol.toStringTag, { value: 'Module' });
+/******/ 		}
+/******/ 		Object.defineProperty(exports, '__esModule', { value: true });
+/******/ 	};
+/******/
+/******/ 	// create a fake namespace object
+/******/ 	// mode & 1: value is a module id, require it
+/******/ 	// mode & 2: merge all properties of value into the ns
+/******/ 	// mode & 4: return value when already ns object
+/******/ 	// mode & 8|1: behave like require
+/******/ 	__webpack_require__.t = function(value, mode) {
+/******/ 		if(mode & 1) value = __webpack_require__(value);
+/******/ 		if(mode & 8) return value;
+/******/ 		if((mode & 4) && typeof value === 'object' && value && value.__esModule) return value;
+/******/ 		var ns = Object.create(null);
+/******/ 		__webpack_require__.r(ns);
+/******/ 		Object.defineProperty(ns, 'default', { enumerable: true, value: value });
+/******/ 		if(mode & 2 && typeof value != 'string') for(var key in value) __webpack_require__.d(ns, key, function(key) { return value[key]; }.bind(null, key));
+/******/ 		return ns;
+/******/ 	};
+/******/
+/******/ 	// getDefaultExport function for compatibility with non-harmony modules
+/******/ 	__webpack_require__.n = function(module) {
+/******/ 		var getter = module && module.__esModule ?
+/******/ 			function getDefault() { return module['default']; } :
+/******/ 			function getModuleExports() { return module; };
+/******/ 		__webpack_require__.d(getter, 'a', getter);
+/******/ 		return getter;
+/******/ 	};
+/******/
+/******/ 	// Object.prototype.hasOwnProperty.call
+/******/ 	__webpack_require__.o = function(object, property) { return Object.prototype.hasOwnProperty.call(object, property); };
+/******/
+/******/ 	// __webpack_public_path__
+/******/ 	__webpack_require__.p = "/";
+/******/
+/******/ 	var jsonpArray = global["webpackJsonp"] = global["webpackJsonp"] || [];
+/******/ 	var oldJsonpFunction = jsonpArray.push.bind(jsonpArray);
+/******/ 	jsonpArray.push = webpackJsonpCallback;
+/******/ 	jsonpArray = jsonpArray.slice();
+/******/ 	for(var i = 0; i < jsonpArray.length; i++) webpackJsonpCallback(jsonpArray[i]);
+/******/ 	var parentJsonpFunction = oldJsonpFunction;
+/******/
+/******/
+/******/ 	// run deferred modules from other chunks
+/******/ 	checkDeferredModules();
+/******/ })
+/************************************************************************/
+/******/ ([]);
+//# sourceMappingURL=../../.sourcemap/mp-weixin/common/runtime.js.map
+  

File diff suppressed because it is too large
+ 9025 - 0
unpackage/dist/dev/mp-weixin/common/vendor.js


File diff suppressed because it is too large
+ 224 - 0
unpackage/dist/dev/mp-weixin/pages/confirm/confirm.js


+ 5 - 0
unpackage/dist/dev/mp-weixin/pages/confirm/confirm.json

@@ -0,0 +1,5 @@
+{
+  "navigationBarTitleText": "确认信息",
+  "enablePullDownRefresh": false,
+  "usingComponents": {}
+}

File diff suppressed because it is too large
+ 1 - 0
unpackage/dist/dev/mp-weixin/pages/confirm/confirm.wxml


+ 65 - 0
unpackage/dist/dev/mp-weixin/pages/confirm/confirm.wxss

@@ -0,0 +1,65 @@
+.container{
+		display: -webkit-box;
+		display: -webkit-flex;
+		display: flex;
+		-webkit-box-orient: vertical;
+		-webkit-box-direction: normal;
+		-webkit-flex-direction: column;
+		        flex-direction: column;
+		color: #333333;
+		font-family: 'MicrosoftYaHei';
+		font-size: 28rpx;
+		height: 1206rpx;
+}
+.image{
+		width: 692rpx;
+		height: 432rpx;
+		margin-top: 21rpx;
+		margin-left: 29rpx;
+}
+.item_info_title{
+		margin-top: 40rpx;
+		margin-left: 30rpx;
+		font-size: 32rpx;
+		font-weight: 700;
+}
+.item_info{
+		margin-left: 30rpx;
+		display: -webkit-box;
+		display: -webkit-flex;
+		display: flex;
+		-webkit-flex-wrap: wrap;
+		        flex-wrap: wrap;
+}
+.info_list_left{
+		width: 600rpx;
+		margin-top: 14.5rpx;
+}
+.info_list_right{
+		width: 350rpx;
+		margin-top: 14.5rpx;
+}
+.info_list_long{
+		width: 500rpx;
+		margin-top: 14.5rpx;
+}
+.item_btu{
+		margin-top: 100rpx;
+}
+.submit{
+		width: 600rpx;
+		height: 80rpx;
+		/* padding-top: 8rpx; */
+		/* border-radius: 10rpx; */
+		background-color: #6EAFF0;
+		color: #FFFFFF;
+		font-size: 28rpx;
+}
+.last_info{
+		width: 578rpx;
+		height: 62rpx;
+		margin-top: 19rpx;
+		margin-left: 86rpx;
+		font-size: 24rpx;
+}
+

File diff suppressed because it is too large
+ 558 - 0
unpackage/dist/dev/mp-weixin/pages/index/index.js


+ 5 - 0
unpackage/dist/dev/mp-weixin/pages/index/index.json

@@ -0,0 +1,5 @@
+{
+  "navigationBarTitleText": "人脸采集",
+  "enablePullDownRefresh": true,
+  "usingComponents": {}
+}

File diff suppressed because it is too large
+ 1 - 0
unpackage/dist/dev/mp-weixin/pages/index/index.wxml


+ 93 - 0
unpackage/dist/dev/mp-weixin/pages/index/index.wxss

@@ -0,0 +1,93 @@
+.item-camera {
+	/* position: fixed; */
+	/* top: 0;
+	left: 0; */
+	width: 100%;
+	height: 1300rpx;
+	background-color: #ffffff;
+}
+.camera {
+	width: 100%;
+	/* height: 760rpx; */
+	height: 912rpx;
+}
+.item-cover {
+	/* width: 669rpx;
+	height: 581.3rpx; */
+	width: 802.8rpx;
+	height: 697.56rpx;
+	/* margin-left: 40rpx; */
+	margin-left: -26.4rpx;
+	margin-top: 180rpx;
+}
+
+/* .submit-btn {
+	width: 100%;
+	margin-top: 5rpx;
+	display: flex;
+	flex-direction: row;
+	align-items: center;
+} */
+.item-list{
+	/* z-index: 1; */
+	width: 555rpx;
+	margin-top: 89rpx;
+	margin-left: 100rpx;
+	display: -webkit-box;
+	display: -webkit-flex;
+	display: flex;
+	-webkit-box-orient: horizontal;
+	-webkit-box-direction: normal;
+	-webkit-flex-direction: row;
+	        flex-direction: row;
+	-webkit-box-pack: justify;
+	-webkit-justify-content: space-between;
+	        justify-content: space-between;
+	-webkit-box-align:center;
+	-webkit-align-items:center;
+	        align-items:center;
+}
+.image-btn {
+	width: 150rpx;
+	height: 150rpx;
+	/* margin-left: 130rpx; */
+}
+.image-light{
+	width: 70rpx;
+	height: 70rpx;
+	/* margin-top: 129rpx; */
+	/* margin-left: 100rpx; */
+}
+.image-change{
+	width: 70rpx;
+	height: 70rpx;
+	/* margin-top: 129rpx; */
+	/* margin-left: 135rpx; */
+}
+.item-btn-list{
+	width: 690rpx;
+	margin-top: 125rpx;
+	margin-left: 30rpx;
+	display: -webkit-box;
+	display: -webkit-flex;
+	display: flex;
+	-webkit-box-orient: horizontal;
+	-webkit-box-direction: normal;
+	-webkit-flex-direction: row;
+	        flex-direction: row;
+	-webkit-box-pack: justify;
+	-webkit-justify-content: space-between;
+	        justify-content: space-between;
+}
+.use-btn{
+	background-color: #6EAFF0;
+	width: 188rpx;
+	height: 80rpx;
+	border-radius: 10rpx;
+	font-size: 32rpx;
+	color: #FFFFFF;
+}
+.login-item{
+	z-index: 1;
+}
+

File diff suppressed because it is too large
+ 215 - 0
unpackage/dist/dev/mp-weixin/pages/show/show.js


+ 5 - 0
unpackage/dist/dev/mp-weixin/pages/show/show.json

@@ -0,0 +1,5 @@
+{
+  "navigationBarTitleText": "迎新首页",
+  "enablePullDownRefresh": false,
+  "usingComponents": {}
+}

File diff suppressed because it is too large
+ 1 - 0
unpackage/dist/dev/mp-weixin/pages/show/show.wxml


+ 66 - 0
unpackage/dist/dev/mp-weixin/pages/show/show.wxss

@@ -0,0 +1,66 @@
+
+.item-iamge .image{
+	width: 749rpx;
+	height: 360rpx;
+}
+.item-title{
+	margin-top: 39rpx;
+	margin-left: 30rpx;
+	width: 400rpx;
+	display: -webkit-box;
+	display: -webkit-flex;
+	display: flex;
+	-webkit-box-orient: horizontal;
+	-webkit-box-direction: normal;
+	-webkit-flex-direction: row;
+	        flex-direction: row;
+}
+.item-title-line{
+	height: 32rpx;
+	width: 10rpx;
+	background-color: #3FB0FF;
+}
+.item-title-font{
+	font-size: 32rpx;
+	color: #333333;
+	margin-left: 15rpx;
+	font-weight: 700;
+	margin-top: -5rpx;
+}
+.item-list{
+	width: 590rpx;
+	margin-top: 40rpx;
+	margin-left: 80rpx;
+	display: -webkit-box;
+	display: -webkit-flex;
+	display: flex;
+	-webkit-box-orient: horizontal;
+	-webkit-box-direction: normal;
+	-webkit-flex-direction: row;
+	        flex-direction: row;
+	-webkit-box-pack: justify;
+	-webkit-justify-content: space-between;
+	        justify-content: space-between;
+}
+.item-list-one{
+	display: -webkit-box;
+	display: -webkit-flex;
+	display: flex;
+	-webkit-box-orient: vertical;
+	-webkit-box-direction: normal;
+	-webkit-flex-direction: column;
+	        flex-direction: column;
+	-webkit-box-align: center;
+	-webkit-align-items: center;
+	        align-items: center;
+}
+.img-btn{
+	width: 90rpx;
+	height: 90rpx;
+}
+.list-txt{
+	margin-top: 29rpx;
+	font-size: 30rpx;
+	color: #333333;
+}
+

File diff suppressed because it is too large
+ 163 - 0
unpackage/dist/dev/mp-weixin/pages/test/test.js


+ 5 - 0
unpackage/dist/dev/mp-weixin/pages/test/test.json

@@ -0,0 +1,5 @@
+{
+  "navigationBarTitleText": "",
+  "enablePullDownRefresh": false,
+  "usingComponents": {}
+}

+ 1 - 0
unpackage/dist/dev/mp-weixin/pages/test/test.wxml

@@ -0,0 +1 @@
+<view><web-view src="{{link}}" bindmessage="getMessage"></web-view></view>

+ 31 - 0
unpackage/dist/dev/mp-weixin/project.config.json

@@ -0,0 +1,31 @@
+{
+  "description": "项目配置文件。",
+  "packOptions": {
+    "ignore": []
+  },
+  "setting": {
+    "urlCheck": false
+  },
+  "compileType": "miniprogram",
+  "libVersion": "",
+  "appid": "wxd6f090391d410534",
+  "projectname": "yinnxin",
+  "condition": {
+    "search": {
+      "current": -1,
+      "list": []
+    },
+    "conversation": {
+      "current": -1,
+      "list": []
+    },
+    "game": {
+      "current": -1,
+      "list": []
+    },
+    "miniprogram": {
+      "current": -1,
+      "list": []
+    }
+  }
+}

+ 7 - 0
unpackage/dist/dev/mp-weixin/sitemap.json

@@ -0,0 +1,7 @@
+{
+  "desc": "关于本文件的更多信息,请参考文档 https://developers.weixin.qq.com/miniprogram/dev/framework/sitemap.html",
+  "rules": [{
+  "action": "allow",
+  "page": "*"
+  }]
+}

+ 78 - 0
unpackage/dist/dev/mp-weixin/static/api.js

@@ -0,0 +1,78 @@
+const WECARD_BASE_URL = 'https://open.wecard.qq.com' // wecard
+const MY_BASE_URL = 'http://demo.xwsyjjy.com' // my
+const CODE_BASE_URL = 'https://developdomain.chuanghai-tech.com' // code
+
+export const myRequest = (options) => {
+	
+	// 域名 或 url 为空,则不执行任何操作
+	if (options.host == '' || options.url == '') {
+		return
+	}
+
+	return new Promise((resolve, reject) => {
+		let BASE_URL = '';
+
+		if (options.host == 'wecard')
+			BASE_URL = WECARD_BASE_URL;
+		else if (options.host == 'my')
+			BASE_URL = MY_BASE_URL;
+		else if (options.host == 'code')
+			BASE_URL = CODE_BASE_URL;
+		else
+			return;
+
+		uni.request({
+			url: BASE_URL + options.url,
+			method: options.method || 'GET',
+			header: options.header || {},
+			data: options.data || {},
+			success: (res) => {
+				// console.log(res)
+				resolve(res)
+			},
+			fail: (err) => {
+				uni.showToast({
+					icon: 'none',
+					title: err.errMsg
+				})
+				reject(err)
+			}
+		})
+	}).catch(
+		err => {
+			console.log("catch " + err);
+		}
+	)
+}
+
+// let BASE_URL = 'http://demo.xwsyjjy.com'
+// export const myRequest = (options) => {
+// 	return new Promise ((resolve, reject) => {
+// 		uni.request({
+// 			url: options.ip ? (options.ip + options.url) : (BASE_URL + options.url),
+// 			method: options.method || 'GET',
+// 			header: options.header || {},
+// 			data: options.data || {},
+// 			success: (res) => {
+// 				// console.log(res)
+// 				// if(res.data.static != "succ"){
+// 				// 	return uni.showToast({
+// 				// 		title: '获取数据失败'
+// 				// 	})
+// 				// }
+// 				// console.log(options)
+// 				resolve(res)
+// 			},
+// 			fail: (err) => {
+// 				uni.showToast({
+// 					title: '请求接口失败'
+// 				})
+// 				reject(err)
+// 			},
+// 		});
+// 	})
+	
+// }
+
+
+

BIN
unpackage/dist/dev/mp-weixin/static/images/card.png


BIN
unpackage/dist/dev/mp-weixin/static/images/change.png


BIN
unpackage/dist/dev/mp-weixin/static/images/explain.png


BIN
unpackage/dist/dev/mp-weixin/static/images/head.png


BIN
unpackage/dist/dev/mp-weixin/static/images/head1.png


BIN
unpackage/dist/dev/mp-weixin/static/images/light.png


BIN
unpackage/dist/dev/mp-weixin/static/images/map.png


BIN
unpackage/dist/dev/mp-weixin/static/images/showhead.png


BIN
unpackage/dist/dev/mp-weixin/static/images/take.png


BIN
unpackage/dist/dev/mp-weixin/static/images/test.png


BIN
unpackage/dist/dev/mp-weixin/static/logo.png