Browse Source

no message

MS-CIAZDCOIXVRW\Administrator 3 years ago
parent
commit
43a75f185d
35 changed files with 3166 additions and 169 deletions
  1. 1 1
      App.vue
  2. 8 1
      pages.json
  3. 103 0
      pages/authorization/authorization.vue
  4. 188 15
      pages/index/index.vue
  5. BIN
      static/ceshi.jpg
  6. 1 0
      static/weixin.svg
  7. 1 0
      unpackage/dist/dev/mp-weixin/app.js
  8. 2 1
      unpackage/dist/dev/mp-weixin/app.json
  9. 1 1
      unpackage/dist/dev/mp-weixin/app.wxss
  10. 262 37
      unpackage/dist/dev/mp-weixin/common/vendor.js
  11. 14 0
      unpackage/dist/dev/mp-weixin/pages/authorization/authorization.js
  12. 5 0
      unpackage/dist/dev/mp-weixin/pages/authorization/authorization.json
  13. 1 0
      unpackage/dist/dev/mp-weixin/pages/authorization/authorization.wxml
  14. 37 0
      unpackage/dist/dev/mp-weixin/pages/authorization/authorization.wxss
  15. 127 8
      unpackage/dist/dev/mp-weixin/pages/index/index.js
  16. 4 2
      unpackage/dist/dev/mp-weixin/pages/index/index.json
  17. 1 1
      unpackage/dist/dev/mp-weixin/pages/index/index.wxml
  18. 52 5
      unpackage/dist/dev/mp-weixin/pages/index/index.wxss
  19. 1 1
      unpackage/dist/dev/mp-weixin/project.config.json
  20. BIN
      unpackage/dist/dev/mp-weixin/static/ceshi.jpg
  21. 1 0
      unpackage/dist/dev/mp-weixin/static/weixin.svg
  22. 433 0
      unpackage/dist/dev/mp-weixin/uni_modules/uni-easyinput/components/uni-easyinput/uni-easyinput.js
  23. 6 0
      unpackage/dist/dev/mp-weixin/uni_modules/uni-easyinput/components/uni-easyinput/uni-easyinput.json
  24. 1 0
      unpackage/dist/dev/mp-weixin/uni_modules/uni-easyinput/components/uni-easyinput/uni-easyinput.wxml
  25. 110 0
      unpackage/dist/dev/mp-weixin/uni_modules/uni-easyinput/components/uni-easyinput/uni-easyinput.wxss
  26. 1173 0
      unpackage/dist/dev/mp-weixin/uni_modules/uni-icons/components/uni-icons/icons.js
  27. 63 0
      unpackage/dist/dev/mp-weixin/uni_modules/uni-icons/components/uni-icons/uni-icons.js
  28. 0 0
      unpackage/dist/dev/mp-weixin/uni_modules/uni-icons/components/uni-icons/uni-icons.json
  29. 1 0
      unpackage/dist/dev/mp-weixin/uni_modules/uni-icons/components/uni-icons/uni-icons.wxml
  30. 509 0
      unpackage/dist/dev/mp-weixin/uni_modules/uni-icons/components/uni-icons/uni-icons.wxss
  31. 0 88
      unpackage/dist/dev/mp-weixin/uni_modules/uni-link/components/uni-link/uni-link.js
  32. 0 1
      unpackage/dist/dev/mp-weixin/uni_modules/uni-link/components/uni-link/uni-link.wxml
  33. 0 7
      unpackage/dist/dev/mp-weixin/uni_modules/uni-link/components/uni-link/uni-link.wxss
  34. 30 0
      unpackage/dist/dev/mp-weixin/util/api.js
  35. 30 0
      util/api.js

+ 1 - 1
App.vue

@@ -19,7 +19,7 @@
 	@import '@/static/customicons.css';
 	@import '@/static/customicons.css';
 	// 设置整个项目的背景色
 	// 设置整个项目的背景色
 	page {
 	page {
-		background-color: #f5f5f5;
+		background-color: #fff;
 	}
 	}
 
 
 	/* #endif */
 	/* #endif */

+ 8 - 1
pages.json

@@ -2,8 +2,15 @@
 	"pages": [{
 	"pages": [{
 		"path": "pages/index/index",
 		"path": "pages/index/index",
 		"style": {
 		"style": {
-			"navigationBarTitleText": "uni-app"
+			"navigationBarTitleText": "代理商登记管理系统"
 		}
 		}
+	}, {
+		"path": "pages/authorization/authorization",
+		"style": {
+			"navigationBarTitleText": "授权",
+			"enablePullDownRefresh": false
+		}
+
 	}],
 	}],
 	"globalStyle": {
 	"globalStyle": {
 		"navigationBarTextStyle": "black",
 		"navigationBarTextStyle": "black",

+ 103 - 0
pages/authorization/authorization.vue

@@ -0,0 +1,103 @@
+<template>
+	<view class="content">
+		<view class="logo">
+			<img class="img" src="../../static/ceshi.jpg">
+		</view>
+
+		<button class="button" open-type="getPhoneNumber" @getphonenumber="getPhoneNumber">
+			<img class="img" src="../../static/weixin.svg">
+			<span>微信一键登录</span>
+		</button>
+	</view>
+</template>
+
+<script setup>
+	// import {
+	// 	ref
+	// } from 'vue'
+
+	// const code = ref('')
+
+	// // 获取code方法
+	// const login = () => {
+	// 	uni.login({
+	// 		provider: 'weixin',
+	// 		success: res => {
+	// 			code.value = res.code
+	// 			console.log(code.value);
+	// 			// getData()
+	// 		}
+	// 	});
+	// }
+
+	// // 通过code获取openId 和 session_key
+	// const getData = () => {
+	// 	console.log(123);
+	// 	uni.request({
+	// 		url: 'https://api.weixin.qq.com/sns/jscode2session',
+	// 		method: 'GET',
+	// 		data: {
+	// 			appid: 'xxx', //你的小程序的APPID  
+	// 			secret: 'xxx', //你的小程序的secret,  
+	// 			js_code: code.value, //wx.login 登录成功后的code  
+	// 			grant_type: 'authorization_code',
+	// 		},
+	// 		success: (res) => {
+	// 			// this.openId = cts.data.openid //openid 用户唯一标识  
+	// 			// this.unionid = cts.data.unionid //unionid 开放平台唯一标识   当公众号和小程序同时登录过才会有
+	// 			// this.session_key = cts.data.session_key //session_key  会话密钥  
+	// 			// console.log(this.openId, this.session_key)
+	// 			console.log(res)
+	// 		}
+	// 	})
+	// }
+
+
+	// const getPhoneNumber = (e) => {
+	// 	console.log(e);
+	// }
+
+	// login()
+</script>
+
+<style lang="scss" scoped>
+	.content {
+		width: 100vw;
+		height: 100vh;
+		overflow: hidden;
+
+		.logo {
+			margin: 300rpx auto 0;
+			width: 150rpx;
+			height: 150rpx;
+			border-radius: 20rpx;
+			background-color: skyblue;
+
+			.img {
+				width: 100%;
+				height: 100%;
+				border-radius: 20rpx;
+			}
+		}
+
+		.button {
+			display: flex;
+			justify-content: center;
+			align-items: center;
+			margin: 150rpx auto 0;
+			width: 600rpx;
+			height: 100rpx;
+			font-size: 32rpx;
+			color: #fff;
+			border-radius: 50rpx;
+			background-color: #1E7DFB;
+
+			.img {
+				margin-right: 20rpx;
+				width: 50rpx;
+				height: 50rpx;
+				color: #fff;
+			}
+		}
+	}
+</style>

+ 188 - 15
pages/index/index.vue

@@ -1,26 +1,199 @@
 <template>
 <template>
-	<view class="container">
-		123
+	<view class="content">
+		<view class="header"></view>
+		<view class="form">
+			<view class="form_title">
+				登记信息
+			</view>
+			<view class="form_item">
+				姓名<span class="icon">*</span>
+				<uni-easyinput placeholder="请输入姓名" v-model="name"></uni-easyinput>
+			</view>
+			<view class="form_item">
+				手机号<span class="icon">*</span>
+				<uni-easyinput type="number" placeholder="请输入手机号" v-model="phone"></uni-easyinput>
+			</view>
+			<view class="form_item">
+				单位名称<span class="icon">*</span>
+				<uni-easyinput placeholder="请输入单位名称" v-model="company"></uni-easyinput>
+			</view>
+			<view class="form_item">
+				事件登记<span class="icon">*</span>
+				<uni-easyinput type="textarea" :maxlength="-1" placeholder="请输入需要登记的事件" v-model="content">
+				</uni-easyinput>
+			</view>
+
+			<button class="form_button" @click="handleSubmit">提交</button>
+		</view>
+		<view class="footer">
+			该系统由创海科技提供技术支持
+		</view>
 	</view>
 	</view>
 </template>
 </template>
 
 
-<script>
-	export default {
-		data() {
-			return {
-				
-			}
-		},
-		methods: {
+<script setup>
+	import {
+		ref
+	} from 'vue'
+	import {
+		myRequest
+	} from "../../util/api.js"
+
+	const name = ref(uni.getStorageSync('form_name') || '')
+	const phone = ref(uni.getStorageSync('form_phone') || '')
+	const company = ref(uni.getStorageSync('form_company') || '')
+	const content = ref('')
+	const wxPhone = ref(9876)
+
+	const handleSubmit =  () => {
+		const reName = /^[\u4e00-\u9fa5]{2,4}$/
+		const rePhone = /^[1][3,4,5,7,8,9][0-9]{9}$/
 
 
+		if (name.value == '') {
+			uni.showToast({
+				title: '请输入姓名',
+				icon: 'none'
+			})
+			return
+		}
+		if (!reName.test(name.value)) {
+			uni.showToast({
+				title: '姓名格式有误',
+				icon: 'none'
+			})
+			return
+		}
+		if (phone.value == '') {
+			uni.showToast({
+				title: '请输入手机号',
+				icon: 'none'
+			})
+			return
+		}
+		if (!rePhone.test(phone.value)) {
+			uni.showToast({
+				title: '手机格式有误',
+				icon: 'none'
+			})
+			return
 		}
 		}
+		if (company.value == '') {
+			uni.showToast({
+				title: '请输入单位名称',
+				icon: 'none'
+			})
+			return
+		}
+		if (!content.value) {
+			uni.showToast({
+				title: '请输入需要登记的事件',
+				icon: 'none'
+			})
+			return
+		}
+
+		uni.showModal({
+			title: '提示',
+			content: '确认提交吗',
+			success: async (res) => {
+				if (res.confirm) {
+					const res = await myRequest({
+						url: "/informationReporting/add",
+						method: "post",
+						data: {
+							name: name.value,
+							phone: phone.value,
+							company: company.value,
+							content: content.value,
+							wxPhone: wxPhone.value,
+						}
+					})
+					// console.log(res)
+					if (res.success && res.code == 1) {
+						uni.showToast({
+							title: '提交成功',
+							duration: 3000
+						})
+						uni.setStorageSync('form_name', name.value);
+						uni.setStorageSync('form_phone', phone.value);
+						uni.setStorageSync('form_company', company.value);
+						content.value = ''
+					} else {
+						uni.showToast({
+							title: res.message,
+							icon: 'error'
+						})
+					}
+				} else if (res.cancel) {
+
+				}
+			}
+		});
+
+		// uni.navigateTo({
+		// 	url:"/pages/authorization/authorization"
+		// })
 	}
 	}
 </script>
 </script>
 
 
-<style>
-	.container {
-		padding: 20px;
-		font-size: 14px;
-		line-height: 24px;
+<style lang="scss" scoped>
+	.content {
+		width: 100vw;
+		height: 100vh;
+		background-color: #F2F2F2;
+
+		.header {
+			width: 750rpx;
+			height: 300rpx;
+			border-radius: 0 0 10% 10%;
+			background-color: #1E7DFB;
+		}
+
+		.form {
+			position: absolute;
+			top: 42rpx;
+			left: 30rpx;
+			right: 30rpx;
+			padding: 0 32rpx;
+			height: 1055rpx;
+			border-radius: 10rpx;
+			background-color: #fff;
+
+			.form_title {
+				line-height: 105rpx;
+				font-weight: bold;
+				font-size: 34rpx;
+			}
+
+			.form_item {
+				margin-bottom: 20rpx;
+				font-size: 28rpx;
+
+				.icon {
+					color: #D43030;
+				}
+
+				:deep .uni-easyinput {
+					margin-top: 10rpx;
+					background-color: #F2F2F2;
+				}
+			}
+
+			.form_button {
+				margin-top: 65rpx;
+				background-color: #1E7DFB;
+				color: #fff;
+				font-size: 28rpx;
+			}
+		}
+
+		.footer {
+			position: absolute;
+			bottom: 44rpx;
+			width: 100vw;
+			text-align: center;
+			font-size: 24rpx;
+			color: #999999;
+		}
 	}
 	}
 </style>
 </style>

BIN
static/ceshi.jpg


File diff suppressed because it is too large
+ 1 - 0
static/weixin.svg


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

@@ -3,6 +3,7 @@ Object.defineProperty(exports, Symbol.toStringTag, { value: "Module" });
 const common_vendor = require("./common/vendor.js");
 const common_vendor = require("./common/vendor.js");
 if (!Math) {
 if (!Math) {
   "./pages/index/index.js";
   "./pages/index/index.js";
+  "./pages/authorization/authorization.js";
 }
 }
 const _sfc_main = {
 const _sfc_main = {
   onLaunch: function() {
   onLaunch: function() {

+ 2 - 1
unpackage/dist/dev/mp-weixin/app.json

@@ -1,6 +1,7 @@
 {
 {
   "pages": [
   "pages": [
-    "pages/index/index"
+    "pages/index/index",
+    "pages/authorization/authorization"
   ],
   ],
   "window": {
   "window": {
     "navigationBarTextStyle": "black",
     "navigationBarTextStyle": "black",

+ 1 - 1
unpackage/dist/dev/mp-weixin/app.wxss

@@ -2353,7 +2353,7 @@
   border-color: #e9e9eb;
   border-color: #e9e9eb;
 }
 }
 page {
 page {
-  background-color: #f5f5f5;
+  background-color: #fff;
 }
 }
 .example-info {
 .example-info {
   font-size: 14px;
   font-size: 14px;

+ 262 - 37
unpackage/dist/dev/mp-weixin/common/vendor.js

@@ -14,6 +14,58 @@ function makeMap(str, expectsLowerCase) {
   }
   }
   return expectsLowerCase ? (val) => !!map[val.toLowerCase()] : (val) => !!map[val];
   return expectsLowerCase ? (val) => !!map[val.toLowerCase()] : (val) => !!map[val];
 }
 }
+function normalizeStyle(value) {
+  if (isArray(value)) {
+    const res = {};
+    for (let i = 0; i < value.length; i++) {
+      const item = value[i];
+      const normalized = isString(item) ? parseStringStyle(item) : normalizeStyle(item);
+      if (normalized) {
+        for (const key in normalized) {
+          res[key] = normalized[key];
+        }
+      }
+    }
+    return res;
+  } else if (isString(value)) {
+    return value;
+  } else if (isObject(value)) {
+    return value;
+  }
+}
+const listDelimiterRE = /;(?![^(]*\))/g;
+const propertyDelimiterRE = /:([^]+)/;
+const styleCommentRE = /\/\*.*?\*\//gs;
+function parseStringStyle(cssText) {
+  const ret = {};
+  cssText.replace(styleCommentRE, "").split(listDelimiterRE).forEach((item) => {
+    if (item) {
+      const tmp = item.split(propertyDelimiterRE);
+      tmp.length > 1 && (ret[tmp[0].trim()] = tmp[1].trim());
+    }
+  });
+  return ret;
+}
+function normalizeClass(value) {
+  let res = "";
+  if (isString(value)) {
+    res = value;
+  } else if (isArray(value)) {
+    for (let i = 0; i < value.length; i++) {
+      const normalized = normalizeClass(value[i]);
+      if (normalized) {
+        res += normalized + " ";
+      }
+    }
+  } else if (isObject(value)) {
+    for (const name in value) {
+      if (value[name]) {
+        res += name + " ";
+      }
+    }
+  }
+  return res.trim();
+}
 const EMPTY_OBJ = Object.freeze({});
 const EMPTY_OBJ = Object.freeze({});
 const EMPTY_ARR = Object.freeze([]);
 const EMPTY_ARR = Object.freeze([]);
 const NOOP = () => {
 const NOOP = () => {
@@ -82,8 +134,8 @@ const def = (obj, key, value) => {
   });
   });
 };
 };
 const looseToNumber = (val) => {
 const looseToNumber = (val) => {
-  const n = parseFloat(val);
-  return isNaN(n) ? val : n;
+  const n2 = parseFloat(val);
+  return isNaN(n2) ? val : n2;
 };
 };
 const LINEFEED = "\n";
 const LINEFEED = "\n";
 const SLOT_DEFAULT_NAME = "d";
 const SLOT_DEFAULT_NAME = "d";
@@ -269,8 +321,8 @@ const E = function() {
 };
 };
 E.prototype = {
 E.prototype = {
   on: function(name, callback, ctx) {
   on: function(name, callback, ctx) {
-    var e = this.e || (this.e = {});
-    (e[name] || (e[name] = [])).push({
+    var e2 = this.e || (this.e = {});
+    (e2[name] || (e2[name] = [])).push({
       fn: callback,
       fn: callback,
       ctx
       ctx
     });
     });
@@ -296,8 +348,8 @@ E.prototype = {
     return this;
     return this;
   },
   },
   off: function(name, callback) {
   off: function(name, callback) {
-    var e = this.e || (this.e = {});
-    var evts = e[name];
+    var e2 = this.e || (this.e = {});
+    var evts = e2[name];
     var liveEvents = [];
     var liveEvents = [];
     if (evts && callback) {
     if (evts && callback) {
       for (var i = 0, len = evts.length; i < len; i++) {
       for (var i = 0, len = evts.length; i < len; i++) {
@@ -305,7 +357,7 @@ E.prototype = {
           liveEvents.push(evts[i]);
           liveEvents.push(evts[i]);
       }
       }
     }
     }
-    liveEvents.length ? e[name] = liveEvents : delete e[name];
+    liveEvents.length ? e2[name] = liveEvents : delete e2[name];
     return this;
     return this;
   }
   }
 };
 };
@@ -476,8 +528,8 @@ function tryCatch(fn) {
   return function() {
   return function() {
     try {
     try {
       return fn.apply(fn, arguments);
       return fn.apply(fn, arguments);
-    } catch (e) {
-      console.error(e);
+    } catch (e2) {
+      console.error(e2);
     }
     }
   };
   };
 }
 }
@@ -659,8 +711,8 @@ function promisify$1(name, fn) {
     if (hasCallback(args)) {
     if (hasCallback(args)) {
       return wrapperReturnValue(name, invokeApi(name, fn, args, rest));
       return wrapperReturnValue(name, invokeApi(name, fn, args, rest));
     }
     }
-    return wrapperReturnValue(name, handlePromise(new Promise((resolve, reject) => {
-      invokeApi(name, fn, extend(args, { success: resolve, fail: reject }), rest);
+    return wrapperReturnValue(name, handlePromise(new Promise((resolve2, reject) => {
+      invokeApi(name, fn, extend(args, { success: resolve2, fail: reject }), rest);
     })));
     })));
   };
   };
 }
 }
@@ -901,7 +953,7 @@ const $off = defineSyncApi(API_OFF, (name, callback) => {
   }
   }
   if (!isArray(name))
   if (!isArray(name))
     name = [name];
     name = [name];
-  name.forEach((n) => emitter.off(n, callback));
+  name.forEach((n2) => emitter.off(n2, callback));
 }, OffProtocol);
 }, OffProtocol);
 const $emit = defineSyncApi(API_EMIT, (name, ...args) => {
 const $emit = defineSyncApi(API_EMIT, (name, ...args) => {
   emitter.emit(name, ...args);
   emitter.emit(name, ...args);
@@ -912,7 +964,7 @@ let enabled;
 function normalizePushMessage(message) {
 function normalizePushMessage(message) {
   try {
   try {
     return JSON.parse(message);
     return JSON.parse(message);
-  } catch (e) {
+  } catch (e2) {
   }
   }
   return message;
   return message;
 }
 }
@@ -952,7 +1004,7 @@ function invokeGetPushCidCallbacks(cid2, errMsg) {
   getPushCidCallbacks.length = 0;
   getPushCidCallbacks.length = 0;
 }
 }
 const API_GET_PUSH_CLIENT_ID = "getPushClientId";
 const API_GET_PUSH_CLIENT_ID = "getPushClientId";
-const getPushClientId = defineAsyncApi(API_GET_PUSH_CLIENT_ID, (_, { resolve, reject }) => {
+const getPushClientId = defineAsyncApi(API_GET_PUSH_CLIENT_ID, (_, { resolve: resolve2, reject }) => {
   Promise.resolve().then(() => {
   Promise.resolve().then(() => {
     if (typeof enabled === "undefined") {
     if (typeof enabled === "undefined") {
       enabled = false;
       enabled = false;
@@ -961,7 +1013,7 @@ const getPushClientId = defineAsyncApi(API_GET_PUSH_CLIENT_ID, (_, { resolve, re
     }
     }
     getPushCidCallbacks.push((cid2, errMsg) => {
     getPushCidCallbacks.push((cid2, errMsg) => {
       if (cid2) {
       if (cid2) {
-        resolve({ cid: cid2 });
+        resolve2({ cid: cid2 });
       } else {
       } else {
         reject(errMsg);
         reject(errMsg);
       }
       }
@@ -1026,9 +1078,9 @@ function promisify(name, api) {
     if (isFunction(options.success) || isFunction(options.fail) || isFunction(options.complete)) {
     if (isFunction(options.success) || isFunction(options.fail) || isFunction(options.complete)) {
       return wrapperReturnValue(name, invokeApi(name, api, options, rest));
       return wrapperReturnValue(name, invokeApi(name, api, options, rest));
     }
     }
-    return wrapperReturnValue(name, handlePromise(new Promise((resolve, reject) => {
+    return wrapperReturnValue(name, handlePromise(new Promise((resolve2, reject) => {
       invokeApi(name, api, extend({}, options, {
       invokeApi(name, api, extend({}, options, {
-        success: resolve,
+        success: resolve2,
         fail: reject
         fail: reject
       }), rest);
       }), rest);
     })));
     })));
@@ -2357,6 +2409,9 @@ function isShallow(value) {
     /* ReactiveFlags.IS_SHALLOW */
     /* ReactiveFlags.IS_SHALLOW */
   ]);
   ]);
 }
 }
+function isProxy(value) {
+  return isReactive(value) || isReadonly(value);
+}
 function toRaw(observed) {
 function toRaw(observed) {
   const raw = observed && observed[
   const raw = observed && observed[
     "__v_raw"
     "__v_raw"
@@ -2792,8 +2847,8 @@ const resolvedPromise = /* @__PURE__ */ Promise.resolve();
 let currentFlushPromise = null;
 let currentFlushPromise = null;
 const RECURSION_LIMIT = 100;
 const RECURSION_LIMIT = 100;
 function nextTick$1(fn) {
 function nextTick$1(fn) {
-  const p = currentFlushPromise || resolvedPromise;
-  return fn ? p.then(this ? fn.bind(this) : fn) : p;
+  const p2 = currentFlushPromise || resolvedPromise;
+  return fn ? p2.then(this ? fn.bind(this) : fn) : p2;
 }
 }
 function findInsertionIndex(id) {
 function findInsertionIndex(id) {
   let start = flushIndex + 1;
   let start = flushIndex + 1;
@@ -3206,8 +3261,8 @@ function doWatch(source, cb, { immediate, deep, flush, onTrack, onTrigger } = EM
       warn(`watch() "deep" option is only respected when using the watch(source, callback, options?) signature.`);
       warn(`watch() "deep" option is only respected when using the watch(source, callback, options?) signature.`);
     }
     }
   }
   }
-  const warnInvalidSource = (s) => {
-    warn(`Invalid watch source: `, s, `A watch source can only be a getter/effect function, a ref, a reactive object, or an array of these types.`);
+  const warnInvalidSource = (s2) => {
+    warn(`Invalid watch source: `, s2, `A watch source can only be a getter/effect function, a ref, a reactive object, or an array of these types.`);
   };
   };
   const instance = getCurrentScope() === (currentInstance === null || currentInstance === void 0 ? void 0 : currentInstance.scope) ? currentInstance : null;
   const instance = getCurrentScope() === (currentInstance === null || currentInstance === void 0 ? void 0 : currentInstance.scope) ? currentInstance : null;
   let getter;
   let getter;
@@ -3221,21 +3276,21 @@ function doWatch(source, cb, { immediate, deep, flush, onTrack, onTrigger } = EM
     deep = true;
     deep = true;
   } else if (isArray(source)) {
   } else if (isArray(source)) {
     isMultiSource = true;
     isMultiSource = true;
-    forceTrigger = source.some((s) => isReactive(s) || isShallow(s));
-    getter = () => source.map((s) => {
-      if (isRef(s)) {
-        return s.value;
-      } else if (isReactive(s)) {
-        return traverse(s);
-      } else if (isFunction(s)) {
+    forceTrigger = source.some((s2) => isReactive(s2) || isShallow(s2));
+    getter = () => source.map((s2) => {
+      if (isRef(s2)) {
+        return s2.value;
+      } else if (isReactive(s2)) {
+        return traverse(s2);
+      } else if (isFunction(s2)) {
         return callWithErrorHandling(
         return callWithErrorHandling(
-          s,
+          s2,
           instance,
           instance,
           2
           2
           /* ErrorCodes.WATCH_GETTER */
           /* ErrorCodes.WATCH_GETTER */
         );
         );
       } else {
       } else {
-        warnInvalidSource(s);
+        warnInvalidSource(s2);
       }
       }
     });
     });
   } else if (isFunction(source)) {
   } else if (isFunction(source)) {
@@ -3511,6 +3566,46 @@ function validateDirectiveName(name) {
     warn("Do not use built-in directive ids as custom directive id: " + name);
     warn("Do not use built-in directive ids as custom directive id: " + name);
   }
   }
 }
 }
+const COMPONENTS = "components";
+function resolveComponent(name, maybeSelfReference) {
+  return resolveAsset(COMPONENTS, name, true, maybeSelfReference) || name;
+}
+function resolveAsset(type, name, warnMissing = true, maybeSelfReference = false) {
+  const instance = currentRenderingInstance || currentInstance;
+  if (instance) {
+    const Component2 = instance.type;
+    if (type === COMPONENTS) {
+      const selfName = getComponentName(
+        Component2,
+        false
+        /* do not include inferred name to avoid breaking existing code */
+      );
+      if (selfName && (selfName === name || selfName === camelize(name) || selfName === capitalize(camelize(name)))) {
+        return Component2;
+      }
+    }
+    const res = (
+      // local registration
+      // check instance[type] first which is resolved for options API
+      resolve(instance[type] || Component2[type], name) || // global registration
+      resolve(instance.appContext[type], name)
+    );
+    if (!res && maybeSelfReference) {
+      return Component2;
+    }
+    if (warnMissing && !res) {
+      const extra = type === COMPONENTS ? `
+If this is a native custom element, make sure to exclude it from component resolution via compilerOptions.isCustomElement.` : ``;
+      warn(`Failed to resolve ${type.slice(0, -1)}: ${name}${extra}`);
+    }
+    return res;
+  } else {
+    warn(`resolve${capitalize(type.slice(0, -1))} can only be used in render() or setup().`);
+  }
+}
+function resolve(registry, name) {
+  return registry && (registry[name] || registry[camelize(name)] || registry[capitalize(camelize(name))]);
+}
 const getPublicInstance = (i) => {
 const getPublicInstance = (i) => {
   if (!i)
   if (!i)
     return null;
     return null;
@@ -3550,9 +3645,9 @@ const PublicInstanceProxyHandlers = {
     }
     }
     let normalizedProps;
     let normalizedProps;
     if (key[0] !== "$") {
     if (key[0] !== "$") {
-      const n = accessCache[key];
-      if (n !== void 0) {
-        switch (n) {
+      const n2 = accessCache[key];
+      if (n2 !== void 0) {
+        switch (n2) {
           case 1:
           case 1:
             return setupState[key];
             return setupState[key];
           case 2:
           case 2:
@@ -4652,6 +4747,12 @@ const Static = Symbol("Static");
 function isVNode(value) {
 function isVNode(value) {
   return value ? value.__v_isVNode === true : false;
   return value ? value.__v_isVNode === true : false;
 }
 }
+const InternalObjectKey = `__vInternal`;
+function guardReactiveProps(props) {
+  if (!props)
+    return null;
+  return isProxy(props) || InternalObjectKey in props ? extend({}, props) : props;
+}
 const emptyAppContext = createAppContext();
 const emptyAppContext = createAppContext();
 let uid = 0;
 let uid = 0;
 function createComponentInstance(vnode, parent, suspense) {
 function createComponentInstance(vnode, parent, suspense) {
@@ -4738,6 +4839,7 @@ function createComponentInstance(vnode, parent, suspense) {
   return instance;
   return instance;
 }
 }
 let currentInstance = null;
 let currentInstance = null;
+const getCurrentInstance = () => currentInstance || currentRenderingInstance;
 const setCurrentInstance = (instance) => {
 const setCurrentInstance = (instance) => {
   currentInstance = instance;
   currentInstance = instance;
   instance.scope.on();
   instance.scope.on();
@@ -5093,8 +5195,8 @@ function nextTick(instance, fn) {
       _resolve(instance.proxy);
       _resolve(instance.proxy);
     }
     }
   });
   });
-  return new Promise((resolve) => {
-    _resolve = resolve;
+  return new Promise((resolve2) => {
+    _resolve = resolve2;
   });
   });
 }
 }
 function clone(src, seen) {
 function clone(src, seen) {
@@ -5472,8 +5574,8 @@ function setupRenderEffect(instance) {
   update.id = instance.uid;
   update.id = instance.uid;
   toggleRecurse(instance, true);
   toggleRecurse(instance, true);
   {
   {
-    effect.onTrack = instance.rtc ? (e) => invokeArrayFns$1(instance.rtc, e) : void 0;
-    effect.onTrigger = instance.rtg ? (e) => invokeArrayFns$1(instance.rtg, e) : void 0;
+    effect.onTrack = instance.rtc ? (e2) => invokeArrayFns$1(instance.rtc, e2) : void 0;
+    effect.onTrigger = instance.rtg ? (e2) => invokeArrayFns$1(instance.rtg, e2) : void 0;
     update.ownerInstance = instance;
     update.ownerInstance = instance;
   }
   }
   update();
   update();
@@ -5687,6 +5789,11 @@ function initApp(app) {
   }
   }
 }
 }
 const propsCaches = /* @__PURE__ */ Object.create(null);
 const propsCaches = /* @__PURE__ */ Object.create(null);
+function renderProps(props) {
+  const { uid: uid2, __counter } = getCurrentInstance();
+  const propsId = (propsCaches[uid2] || (propsCaches[uid2] = [])).push(guardReactiveProps(props)) - 1;
+  return uid2 + "," + propsId + "," + __counter;
+}
 function pruneComponentPropsCache(uid2) {
 function pruneComponentPropsCache(uid2) {
   delete propsCaches[uid2];
   delete propsCaches[uid2];
 }
 }
@@ -5727,6 +5834,116 @@ function getCreateApp() {
     return my[method];
     return my[method];
   }
   }
 }
 }
+function vOn(value, key) {
+  const instance = getCurrentInstance();
+  const ctx = instance.ctx;
+  const extraKey = typeof key !== "undefined" && (ctx.$mpPlatform === "mp-weixin" || ctx.$mpPlatform === "mp-qq") && (isString(key) || typeof key === "number") ? "_" + key : "";
+  const name = "e" + instance.$ei++ + extraKey;
+  const mpInstance = ctx.$scope;
+  if (!value) {
+    delete mpInstance[name];
+    return name;
+  }
+  const existingInvoker = mpInstance[name];
+  if (existingInvoker) {
+    existingInvoker.value = value;
+  } else {
+    mpInstance[name] = createInvoker(value, instance);
+  }
+  return name;
+}
+function createInvoker(initialValue, instance) {
+  const invoker = (e2) => {
+    patchMPEvent(e2);
+    let args = [e2];
+    if (e2.detail && e2.detail.__args__) {
+      args = e2.detail.__args__;
+    }
+    const eventValue = invoker.value;
+    const invoke = () => callWithAsyncErrorHandling(patchStopImmediatePropagation(e2, eventValue), instance, 5, args);
+    const eventTarget = e2.target;
+    const eventSync = eventTarget ? eventTarget.dataset ? eventTarget.dataset.eventsync === "true" : false : false;
+    if (bubbles.includes(e2.type) && !eventSync) {
+      setTimeout(invoke);
+    } else {
+      const res = invoke();
+      if (e2.type === "input" && (isArray(res) || isPromise(res))) {
+        return;
+      }
+      return res;
+    }
+  };
+  invoker.value = initialValue;
+  return invoker;
+}
+const bubbles = [
+  // touch事件暂不做延迟,否则在 Android 上会影响性能,比如一些拖拽跟手手势等
+  // 'touchstart',
+  // 'touchmove',
+  // 'touchcancel',
+  // 'touchend',
+  "tap",
+  "longpress",
+  "longtap",
+  "transitionend",
+  "animationstart",
+  "animationiteration",
+  "animationend",
+  "touchforcechange"
+];
+function patchMPEvent(event) {
+  if (event.type && event.target) {
+    event.preventDefault = NOOP;
+    event.stopPropagation = NOOP;
+    event.stopImmediatePropagation = NOOP;
+    if (!hasOwn(event, "detail")) {
+      event.detail = {};
+    }
+    if (hasOwn(event, "markerId")) {
+      event.detail = typeof event.detail === "object" ? event.detail : {};
+      event.detail.markerId = event.markerId;
+    }
+    if (isPlainObject(event.detail) && hasOwn(event.detail, "checked") && !hasOwn(event.detail, "value")) {
+      event.detail.value = event.detail.checked;
+    }
+    if (isPlainObject(event.detail)) {
+      event.target = extend({}, event.target, event.detail);
+    }
+  }
+}
+function patchStopImmediatePropagation(e2, value) {
+  if (isArray(value)) {
+    const originalStop = e2.stopImmediatePropagation;
+    e2.stopImmediatePropagation = () => {
+      originalStop && originalStop.call(e2);
+      e2._stopped = true;
+    };
+    return value.map((fn) => (e3) => !e3._stopped && fn(e3));
+  } else {
+    return value;
+  }
+}
+function stringifyStyle(value) {
+  if (isString(value)) {
+    return value;
+  }
+  return stringify(normalizeStyle(value));
+}
+function stringify(styles) {
+  let ret = "";
+  if (!styles || isString(styles)) {
+    return ret;
+  }
+  for (const key in styles) {
+    ret += `${key.startsWith(`--`) ? key : hyphenate(key)}:${styles[key]};`;
+  }
+  return ret;
+}
+const o = (value, key) => vOn(value, key);
+const s = (value) => stringifyStyle(value);
+const e = (target, ...sources) => extend(target, ...sources);
+const n = (value) => normalizeClass(value);
+const p = (props) => renderProps(props);
 function createApp$1(rootComponent, rootProps = null) {
 function createApp$1(rootComponent, rootProps = null) {
   rootComponent && (rootComponent.mpType = "app");
   rootComponent && (rootComponent.mpType = "app");
   return createVueApp(rootComponent, rootProps).use(plugin);
   return createVueApp(rootComponent, rootProps).use(plugin);
@@ -6526,3 +6743,11 @@ const createSubpackageApp = initCreateSubpackageApp();
 }
 }
 exports._export_sfc = _export_sfc;
 exports._export_sfc = _export_sfc;
 exports.createSSRApp = createSSRApp;
 exports.createSSRApp = createSSRApp;
+exports.e = e;
+exports.index = index;
+exports.n = n;
+exports.o = o;
+exports.p = p;
+exports.ref = ref;
+exports.resolveComponent = resolveComponent;
+exports.s = s;

+ 14 - 0
unpackage/dist/dev/mp-weixin/pages/authorization/authorization.js

@@ -0,0 +1,14 @@
+"use strict";
+const common_vendor = require("../../common/vendor.js");
+const _sfc_main = {
+  __name: "authorization",
+  setup(__props) {
+    return (_ctx, _cache) => {
+      return {
+        a: common_vendor.o((...args) => _ctx.getPhoneNumber && _ctx.getPhoneNumber(...args))
+      };
+    };
+  }
+};
+const MiniProgramPage = /* @__PURE__ */ common_vendor._export_sfc(_sfc_main, [["__scopeId", "data-v-2e3c7ef5"], ["__file", "G:/workSpace/agent-registration/pages/authorization/authorization.vue"]]);
+wx.createPage(MiniProgramPage);

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

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

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

@@ -0,0 +1 @@
+<view class="content data-v-2e3c7ef5"><view class="logo data-v-2e3c7ef5"><image class="img data-v-2e3c7ef5" src="/static/ceshi.jpg"></image></view><button class="button data-v-2e3c7ef5" open-type="getPhoneNumber" bindgetphonenumber="{{a}}"><image class="img data-v-2e3c7ef5" src="/static/weixin.svg"></image><label class="data-v-2e3c7ef5">微信一键登录</label></button></view>

+ 37 - 0
unpackage/dist/dev/mp-weixin/pages/authorization/authorization.wxss

@@ -0,0 +1,37 @@
+/* 水平间距 */
+/* 水平间距 */
+.content.data-v-2e3c7ef5 {
+  width: 100vw;
+  height: 100vh;
+  overflow: hidden;
+}
+.content .logo.data-v-2e3c7ef5 {
+  margin: 300rpx auto 0;
+  width: 150rpx;
+  height: 150rpx;
+  border-radius: 20rpx;
+  background-color: skyblue;
+}
+.content .logo .img.data-v-2e3c7ef5 {
+  width: 100%;
+  height: 100%;
+  border-radius: 20rpx;
+}
+.content .button.data-v-2e3c7ef5 {
+  display: flex;
+  justify-content: center;
+  align-items: center;
+  margin: 150rpx auto 0;
+  width: 600rpx;
+  height: 100rpx;
+  font-size: 32rpx;
+  color: #fff;
+  border-radius: 50rpx;
+  background-color: #1E7DFB;
+}
+.content .button .img.data-v-2e3c7ef5 {
+  margin-right: 20rpx;
+  width: 50rpx;
+  height: 50rpx;
+  color: #fff;
+}

+ 127 - 8
unpackage/dist/dev/mp-weixin/pages/index/index.js

@@ -1,13 +1,132 @@
 "use strict";
 "use strict";
 const common_vendor = require("../../common/vendor.js");
 const common_vendor = require("../../common/vendor.js");
+const util_api = require("../../util/api.js");
+if (!Array) {
+  const _easycom_uni_easyinput2 = common_vendor.resolveComponent("uni-easyinput");
+  _easycom_uni_easyinput2();
+}
+const _easycom_uni_easyinput = () => "../../uni_modules/uni-easyinput/components/uni-easyinput/uni-easyinput.js";
+if (!Math) {
+  _easycom_uni_easyinput();
+}
 const _sfc_main = {
 const _sfc_main = {
-  data() {
-    return {};
-  },
-  methods: {}
+  __name: "index",
+  setup(__props) {
+    const name = common_vendor.ref(common_vendor.index.getStorageSync("form_name") || "");
+    const phone = common_vendor.ref(common_vendor.index.getStorageSync("form_phone") || "");
+    const company = common_vendor.ref(common_vendor.index.getStorageSync("form_company") || "");
+    const content = common_vendor.ref("");
+    const wxPhone = common_vendor.ref(9876);
+    const handleSubmit = () => {
+      const reName = /^[\u4e00-\u9fa5]{2,4}$/;
+      const rePhone = /^[1][3,4,5,7,8,9][0-9]{9}$/;
+      if (name.value == "") {
+        common_vendor.index.showToast({
+          title: "请输入姓名",
+          icon: "none"
+        });
+        return;
+      }
+      if (!reName.test(name.value)) {
+        common_vendor.index.showToast({
+          title: "姓名格式有误",
+          icon: "none"
+        });
+        return;
+      }
+      if (phone.value == "") {
+        common_vendor.index.showToast({
+          title: "请输入手机号",
+          icon: "none"
+        });
+        return;
+      }
+      if (!rePhone.test(phone.value)) {
+        common_vendor.index.showToast({
+          title: "手机格式有误",
+          icon: "none"
+        });
+        return;
+      }
+      if (company.value == "") {
+        common_vendor.index.showToast({
+          title: "请输入单位名称",
+          icon: "none"
+        });
+        return;
+      }
+      if (!content.value) {
+        common_vendor.index.showToast({
+          title: "请输入需要登记的事件",
+          icon: "none"
+        });
+        return;
+      }
+      common_vendor.index.showModal({
+        title: "提示",
+        content: "确认提交吗",
+        success: async (res) => {
+          if (res.confirm) {
+            const res2 = await util_api.myRequest({
+              url: "/informationReporting/add",
+              method: "post",
+              data: {
+                name: name.value,
+                phone: phone.value,
+                company: company.value,
+                content: content.value,
+                wxPhone: wxPhone.value
+              }
+            });
+            if (res2.success && res2.code == 1) {
+              common_vendor.index.showToast({
+                title: "提交成功",
+                duration: 3e3
+              });
+              common_vendor.index.setStorageSync("form_name", name.value);
+              common_vendor.index.setStorageSync("form_phone", phone.value);
+              common_vendor.index.setStorageSync("form_company", company.value);
+              content.value = "";
+            } else {
+              common_vendor.index.showToast({
+                title: res2.message,
+                icon: "error"
+              });
+            }
+          } else if (res.cancel)
+            ;
+        }
+      });
+    };
+    return (_ctx, _cache) => {
+      return {
+        a: common_vendor.o(($event) => name.value = $event),
+        b: common_vendor.p({
+          placeholder: "请输入姓名",
+          modelValue: name.value
+        }),
+        c: common_vendor.o(($event) => phone.value = $event),
+        d: common_vendor.p({
+          type: "number",
+          placeholder: "请输入手机号",
+          modelValue: phone.value
+        }),
+        e: common_vendor.o(($event) => company.value = $event),
+        f: common_vendor.p({
+          placeholder: "请输入单位名称",
+          modelValue: company.value
+        }),
+        g: common_vendor.o(($event) => content.value = $event),
+        h: common_vendor.p({
+          type: "textarea",
+          maxlength: -1,
+          placeholder: "请输入需要登记的事件",
+          modelValue: content.value
+        }),
+        i: common_vendor.o(handleSubmit)
+      };
+    };
+  }
 };
 };
-function _sfc_render(_ctx, _cache, $props, $setup, $data, $options) {
-  return {};
-}
-const MiniProgramPage = /* @__PURE__ */ common_vendor._export_sfc(_sfc_main, [["render", _sfc_render], ["__file", "G:/workSpace/agent-registration/pages/index/index.vue"]]);
+const MiniProgramPage = /* @__PURE__ */ common_vendor._export_sfc(_sfc_main, [["__scopeId", "data-v-1cf27b2a"], ["__file", "G:/workSpace/agent-registration/pages/index/index.vue"]]);
 wx.createPage(MiniProgramPage);
 wx.createPage(MiniProgramPage);

+ 4 - 2
unpackage/dist/dev/mp-weixin/pages/index/index.json

@@ -1,4 +1,6 @@
 {
 {
-  "navigationBarTitleText": "uni-app",
-  "usingComponents": {}
+  "navigationBarTitleText": "代理商登记管理系统",
+  "usingComponents": {
+    "uni-easyinput": "../../uni_modules/uni-easyinput/components/uni-easyinput/uni-easyinput"
+  }
 }
 }

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


+ 52 - 5
unpackage/dist/dev/mp-weixin/pages/index/index.wxss

@@ -1,6 +1,53 @@
-
-.container {
-		padding: 20px;
-		font-size: 14px;
-		line-height: 24px;
+/* 水平间距 */
+/* 水平间距 */
+.content.data-v-1cf27b2a {
+  width: 100vw;
+  height: 100vh;
+  background-color: #F2F2F2;
 }
 }
+.content .header.data-v-1cf27b2a {
+  width: 750rpx;
+  height: 300rpx;
+  border-radius: 0 0 10% 10%;
+  background-color: #1E7DFB;
+}
+.content .form.data-v-1cf27b2a {
+  position: absolute;
+  top: 42rpx;
+  left: 30rpx;
+  right: 30rpx;
+  padding: 0 32rpx;
+  height: 1055rpx;
+  border-radius: 10rpx;
+  background-color: #fff;
+}
+.content .form .form_title.data-v-1cf27b2a {
+  line-height: 105rpx;
+  font-weight: bold;
+  font-size: 34rpx;
+}
+.content .form .form_item.data-v-1cf27b2a {
+  margin-bottom: 20rpx;
+  font-size: 28rpx;
+}
+.content .form .form_item .icon.data-v-1cf27b2a {
+  color: #D43030;
+}
+.content .form .form_item.data-v-1cf27b2a .uni-easyinput {
+  margin-top: 10rpx;
+  background-color: #F2F2F2;
+}
+.content .form .form_button.data-v-1cf27b2a {
+  margin-top: 65rpx;
+  background-color: #1E7DFB;
+  color: #fff;
+  font-size: 28rpx;
+}
+.content .footer.data-v-1cf27b2a {
+  position: absolute;
+  bottom: 44rpx;
+  width: 100vw;
+  text-align: center;
+  font-size: 24rpx;
+  color: #999999;
+}

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

@@ -19,7 +19,7 @@
     },
     },
     "compileType": "miniprogram",
     "compileType": "miniprogram",
     "libVersion": "2.30.2",
     "libVersion": "2.30.2",
-    "appid": "touristappid",
+    "appid": "wxd6f090391d410534",
     "projectname": "agent-registration",
     "projectname": "agent-registration",
     "condition": {},
     "condition": {},
     "editorSetting": {
     "editorSetting": {

BIN
unpackage/dist/dev/mp-weixin/static/ceshi.jpg


File diff suppressed because it is too large
+ 1 - 0
unpackage/dist/dev/mp-weixin/static/weixin.svg


+ 433 - 0
unpackage/dist/dev/mp-weixin/uni_modules/uni-easyinput/components/uni-easyinput/uni-easyinput.js

@@ -0,0 +1,433 @@
+"use strict";
+const common_vendor = require("../../../../common/vendor.js");
+function obj2strClass(obj) {
+  let classess = "";
+  for (let key in obj) {
+    const val = obj[key];
+    if (val) {
+      classess += `${key} `;
+    }
+  }
+  return classess;
+}
+function obj2strStyle(obj) {
+  let style = "";
+  for (let key in obj) {
+    const val = obj[key];
+    style += `${key}:${val};`;
+  }
+  return style;
+}
+const _sfc_main = {
+  name: "uni-easyinput",
+  emits: [
+    "click",
+    "iconClick",
+    "update:modelValue",
+    "input",
+    "focus",
+    "blur",
+    "confirm",
+    "clear",
+    "eyes",
+    "change"
+  ],
+  model: {
+    prop: "modelValue",
+    event: "update:modelValue"
+  },
+  options: {
+    virtualHost: true
+  },
+  inject: {
+    form: {
+      from: "uniForm",
+      default: null
+    },
+    formItem: {
+      from: "uniFormItem",
+      default: null
+    }
+  },
+  props: {
+    name: String,
+    value: [Number, String],
+    modelValue: [Number, String],
+    type: {
+      type: String,
+      default: "text"
+    },
+    clearable: {
+      type: Boolean,
+      default: true
+    },
+    autoHeight: {
+      type: Boolean,
+      default: false
+    },
+    placeholder: {
+      type: String,
+      default: " "
+    },
+    placeholderStyle: String,
+    focus: {
+      type: Boolean,
+      default: false
+    },
+    disabled: {
+      type: Boolean,
+      default: false
+    },
+    maxlength: {
+      type: [Number, String],
+      default: 140
+    },
+    confirmType: {
+      type: String,
+      default: "done"
+    },
+    clearSize: {
+      type: [Number, String],
+      default: 24
+    },
+    inputBorder: {
+      type: Boolean,
+      default: true
+    },
+    prefixIcon: {
+      type: String,
+      default: ""
+    },
+    suffixIcon: {
+      type: String,
+      default: ""
+    },
+    trim: {
+      type: [Boolean, String],
+      default: true
+    },
+    passwordIcon: {
+      type: Boolean,
+      default: true
+    },
+    primaryColor: {
+      type: String,
+      default: "#2979ff"
+    },
+    styles: {
+      type: Object,
+      default() {
+        return {
+          color: "#333",
+          disableColor: "#F7F6F6",
+          borderColor: "#e5e5e5"
+        };
+      }
+    },
+    errorMessage: {
+      type: [String, Boolean],
+      default: ""
+    }
+  },
+  data() {
+    return {
+      focused: false,
+      val: "",
+      showMsg: "",
+      border: false,
+      isFirstBorder: false,
+      showClearIcon: false,
+      showPassword: false,
+      focusShow: false,
+      localMsg: ""
+    };
+  },
+  computed: {
+    // 输入框内是否有值
+    isVal() {
+      const val = this.val;
+      if (val || val === 0) {
+        return true;
+      }
+      return false;
+    },
+    msg() {
+      return this.localMsg || this.errorMessage;
+    },
+    // 因为uniapp的input组件的maxlength组件必须要数值,这里转为数值,用户可以传入字符串数值
+    inputMaxlength() {
+      return Number(this.maxlength);
+    },
+    // 处理外层样式的style
+    boxStyle() {
+      return `color:${this.inputBorder && this.msg ? "#e43d33" : this.styles.color};`;
+    },
+    // input 内容的类和样式处理
+    inputContentClass() {
+      return obj2strClass({
+        "is-input-border": this.inputBorder,
+        "is-input-error-border": this.inputBorder && this.msg,
+        "is-textarea": this.type === "textarea",
+        "is-disabled": this.disabled
+      });
+    },
+    inputContentStyle() {
+      const focusColor = this.focusShow ? this.primaryColor : this.styles.borderColor;
+      const borderColor = this.inputBorder && this.msg ? "#dd524d" : focusColor;
+      return obj2strStyle({
+        "border-color": borderColor || "#e5e5e5",
+        "background-color": this.disabled ? this.styles.disableColor : this.styles.backgroundColor
+      });
+    },
+    // input右侧样式
+    inputStyle() {
+      const paddingRight = this.type === "password" || this.clearable || this.prefixIcon ? "" : "10px";
+      return obj2strStyle({
+        "padding-right": paddingRight,
+        "padding-left": this.prefixIcon ? "" : "10px"
+      });
+    }
+  },
+  watch: {
+    value(newVal) {
+      this.val = newVal;
+    },
+    modelValue(newVal) {
+      this.val = newVal;
+    },
+    focus(newVal) {
+      this.$nextTick(() => {
+        this.focused = this.focus;
+        this.focusShow = this.focus;
+      });
+    }
+  },
+  created() {
+    this.init();
+    if (this.form && this.formItem) {
+      this.$watch("formItem.errMsg", (newVal) => {
+        this.localMsg = newVal;
+      });
+    }
+  },
+  mounted() {
+    this.$nextTick(() => {
+      this.focused = this.focus;
+      this.focusShow = this.focus;
+    });
+  },
+  methods: {
+    /**
+     * 初始化变量值
+     */
+    init() {
+      if (this.value || this.value === 0) {
+        this.val = this.value;
+      } else if (this.modelValue || this.modelValue === 0) {
+        this.val = this.modelValue;
+      } else {
+        this.val = null;
+      }
+    },
+    /**
+     * 点击图标时触发
+     * @param {Object} type
+     */
+    onClickIcon(type) {
+      this.$emit("iconClick", type);
+    },
+    /**
+     * 显示隐藏内容,密码框时生效
+     */
+    onEyes() {
+      this.showPassword = !this.showPassword;
+      this.$emit("eyes", this.showPassword);
+    },
+    /**
+     * 输入时触发
+     * @param {Object} event
+     */
+    onInput(event) {
+      let value = event.detail.value;
+      if (this.trim) {
+        if (typeof this.trim === "boolean" && this.trim) {
+          value = this.trimStr(value);
+        }
+        if (typeof this.trim === "string") {
+          value = this.trimStr(value, this.trim);
+        }
+      }
+      if (this.errMsg)
+        this.errMsg = "";
+      this.val = value;
+      this.$emit("input", value);
+      this.$emit("update:modelValue", value);
+    },
+    /**
+     * 外部调用方法
+     * 获取焦点时触发
+     * @param {Object} event
+     */
+    onFocus() {
+      this.$nextTick(() => {
+        this.focused = true;
+      });
+      this.$emit("focus", null);
+    },
+    _Focus(event) {
+      this.focusShow = true;
+      this.$emit("focus", event);
+    },
+    /**
+     * 外部调用方法
+     * 失去焦点时触发
+     * @param {Object} event
+     */
+    onBlur() {
+      this.focused = false;
+      this.$emit("focus", null);
+    },
+    _Blur(event) {
+      event.detail.value;
+      this.focusShow = false;
+      this.$emit("blur", event);
+      this.$emit("change", this.val);
+      if (this.form && this.formItem) {
+        const { validateTrigger } = this.form;
+        if (validateTrigger === "blur") {
+          this.formItem.onFieldChange();
+        }
+      }
+    },
+    /**
+     * 按下键盘的发送键
+     * @param {Object} e
+     */
+    onConfirm(e) {
+      this.$emit("confirm", this.val);
+      this.$emit("change", this.val);
+    },
+    /**
+     * 清理内容
+     * @param {Object} event
+     */
+    onClear(event) {
+      this.val = "";
+      this.$emit("input", "");
+      this.$emit("update:modelValue", "");
+      this.$emit("clear");
+    },
+    /**
+     * 去除空格
+     */
+    trimStr(str, pos = "both") {
+      if (pos === "both") {
+        return str.trim();
+      } else if (pos === "left") {
+        return str.trimLeft();
+      } else if (pos === "right") {
+        return str.trimRight();
+      } else if (pos === "start") {
+        return str.trimStart();
+      } else if (pos === "end") {
+        return str.trimEnd();
+      } else if (pos === "all") {
+        return str.replace(/\s+/g, "");
+      } else if (pos === "none") {
+        return str;
+      }
+      return str;
+    }
+  }
+};
+if (!Array) {
+  const _easycom_uni_icons2 = common_vendor.resolveComponent("uni-icons");
+  _easycom_uni_icons2();
+}
+const _easycom_uni_icons = () => "../../../uni-icons/components/uni-icons/uni-icons.js";
+if (!Math) {
+  _easycom_uni_icons();
+}
+function _sfc_render(_ctx, _cache, $props, $setup, $data, $options) {
+  return common_vendor.e({
+    a: $props.prefixIcon
+  }, $props.prefixIcon ? {
+    b: common_vendor.o(($event) => $options.onClickIcon("prefix")),
+    c: common_vendor.p({
+      type: $props.prefixIcon,
+      color: "#c0c4cc",
+      size: "22"
+    })
+  } : {}, {
+    d: $props.type === "textarea"
+  }, $props.type === "textarea" ? {
+    e: $props.inputBorder ? 1 : "",
+    f: $props.name,
+    g: $data.val,
+    h: $props.placeholder,
+    i: $props.placeholderStyle,
+    j: $props.disabled,
+    k: $options.inputMaxlength,
+    l: $data.focused,
+    m: $props.autoHeight,
+    n: common_vendor.o((...args) => $options.onInput && $options.onInput(...args)),
+    o: common_vendor.o((...args) => $options._Blur && $options._Blur(...args)),
+    p: common_vendor.o((...args) => $options._Focus && $options._Focus(...args)),
+    q: common_vendor.o((...args) => $options.onConfirm && $options.onConfirm(...args))
+  } : {
+    r: $props.type === "password" ? "text" : $props.type,
+    s: common_vendor.s($options.inputStyle),
+    t: $props.name,
+    v: $data.val,
+    w: !$data.showPassword && $props.type === "password",
+    x: $props.placeholder,
+    y: $props.placeholderStyle,
+    z: $props.disabled,
+    A: $options.inputMaxlength,
+    B: $data.focused,
+    C: $props.confirmType,
+    D: common_vendor.o((...args) => $options._Focus && $options._Focus(...args)),
+    E: common_vendor.o((...args) => $options._Blur && $options._Blur(...args)),
+    F: common_vendor.o((...args) => $options.onInput && $options.onInput(...args)),
+    G: common_vendor.o((...args) => $options.onConfirm && $options.onConfirm(...args))
+  }, {
+    H: $props.type === "password" && $props.passwordIcon
+  }, $props.type === "password" && $props.passwordIcon ? common_vendor.e({
+    I: $options.isVal
+  }, $options.isVal ? {
+    J: $props.type === "textarea" ? 1 : "",
+    K: common_vendor.o($options.onEyes),
+    L: common_vendor.p({
+      type: $data.showPassword ? "eye-slash-filled" : "eye-filled",
+      size: 22,
+      color: $data.focusShow ? $props.primaryColor : "#c0c4cc"
+    })
+  } : {}) : $props.suffixIcon || _ctx.$slots.suffixIcon ? common_vendor.e({
+    N: $props.suffixIcon
+  }, $props.suffixIcon ? {
+    O: common_vendor.o(($event) => $options.onClickIcon("suffix")),
+    P: common_vendor.p({
+      type: $props.suffixIcon,
+      color: "#c0c4cc",
+      size: "22"
+    })
+  } : {}) : common_vendor.e({
+    Q: $props.clearable && $options.isVal && !$props.disabled && $props.type !== "textarea"
+  }, $props.clearable && $options.isVal && !$props.disabled && $props.type !== "textarea" ? {
+    R: $props.type === "textarea" ? 1 : "",
+    S: common_vendor.o($options.onClear),
+    T: common_vendor.p({
+      type: "clear",
+      size: $props.clearSize,
+      color: $options.msg ? "#dd524d" : $data.focusShow ? $props.primaryColor : "#c0c4cc"
+    })
+  } : {}), {
+    M: $props.suffixIcon || _ctx.$slots.suffixIcon,
+    U: common_vendor.n($options.inputContentClass),
+    V: common_vendor.s($options.inputContentStyle),
+    W: $options.msg ? 1 : "",
+    X: common_vendor.s($options.boxStyle)
+  });
+}
+const Component = /* @__PURE__ */ common_vendor._export_sfc(_sfc_main, [["render", _sfc_render], ["__file", "G:/workSpace/agent-registration/uni_modules/uni-easyinput/components/uni-easyinput/uni-easyinput.vue"]]);
+wx.createComponent(Component);

+ 6 - 0
unpackage/dist/dev/mp-weixin/uni_modules/uni-easyinput/components/uni-easyinput/uni-easyinput.json

@@ -0,0 +1,6 @@
+{
+  "component": true,
+  "usingComponents": {
+    "uni-icons": "../../../uni-icons/components/uni-icons/uni-icons"
+  }
+}

File diff suppressed because it is too large
+ 1 - 0
unpackage/dist/dev/mp-weixin/uni_modules/uni-easyinput/components/uni-easyinput/uni-easyinput.wxml


+ 110 - 0
unpackage/dist/dev/mp-weixin/uni_modules/uni-easyinput/components/uni-easyinput/uni-easyinput.wxss

@@ -0,0 +1,110 @@
+/* 水平间距 */
+/* 水平间距 */
+.uni-easyinput {
+  width: 100%;
+  flex: 1;
+  position: relative;
+  text-align: left;
+  color: #333;
+  font-size: 14px;
+}
+.uni-easyinput__content {
+  flex: 1;
+  width: 100%;
+  display: flex;
+  box-sizing: border-box;
+  flex-direction: row;
+  align-items: center;
+  border-color: #fff;
+  transition-property: border-color;
+  transition-duration: 0.3s;
+}
+.uni-easyinput__content-input {
+  width: auto;
+  position: relative;
+  overflow: hidden;
+  flex: 1;
+  line-height: 1;
+  font-size: 14px;
+  height: 35px;
+}
+.uni-easyinput__placeholder-class {
+  color: #999;
+  font-size: 12px;
+}
+.is-textarea {
+  align-items: flex-start;
+}
+.is-textarea-icon {
+  margin-top: 5px;
+}
+.uni-easyinput__content-textarea {
+  position: relative;
+  overflow: hidden;
+  flex: 1;
+  line-height: 1.5;
+  font-size: 14px;
+  margin: 6px;
+  margin-left: 0;
+  height: 80px;
+  min-height: 80px;
+  min-height: 80px;
+  width: auto;
+}
+.input-padding {
+  padding-left: 10px;
+}
+.content-clear-icon {
+  padding: 0 5px;
+}
+.label-icon {
+  margin-right: 5px;
+  margin-top: -1px;
+}
+.is-input-border {
+  display: flex;
+  box-sizing: border-box;
+  flex-direction: row;
+  align-items: center;
+  border: 1px solid #F0F0F0;
+  border-radius: 4px;
+}
+.uni-error-message {
+  position: absolute;
+  bottom: -17px;
+  left: 0;
+  line-height: 12px;
+  color: #e43d33;
+  font-size: 12px;
+  text-align: left;
+}
+.uni-error-msg--boeder {
+  position: relative;
+  bottom: 0;
+  line-height: 22px;
+}
+.is-input-error-border {
+  border-color: #e43d33;
+}
+.is-input-error-border .uni-easyinput__placeholder-class {
+  color: #f29e99;
+}
+.uni-easyinput--border {
+  margin-bottom: 0;
+  padding: 10px 15px;
+  border-top: 1px #eee solid;
+}
+.uni-easyinput-error {
+  padding-bottom: 0;
+}
+.is-first-border {
+  border: none;
+}
+.is-disabled {
+  background-color: #f7f6f6;
+  color: #d5d5d5;
+}
+.is-disabled .uni-easyinput__placeholder-class {
+  color: #d5d5d5;
+  font-size: 12px;
+}

File diff suppressed because it is too large
+ 1173 - 0
unpackage/dist/dev/mp-weixin/uni_modules/uni-icons/components/uni-icons/icons.js


+ 63 - 0
unpackage/dist/dev/mp-weixin/uni_modules/uni-icons/components/uni-icons/uni-icons.js

@@ -0,0 +1,63 @@
+"use strict";
+const uni_modules_uniIcons_components_uniIcons_icons = require("./icons.js");
+const common_vendor = require("../../../../common/vendor.js");
+const getVal = (val) => {
+  const reg = /^[0-9]*$/g;
+  return typeof val === "number" || reg.test(val) ? val + "px" : val;
+};
+const _sfc_main = {
+  name: "UniIcons",
+  emits: ["click"],
+  props: {
+    type: {
+      type: String,
+      default: ""
+    },
+    color: {
+      type: String,
+      default: "#333333"
+    },
+    size: {
+      type: [Number, String],
+      default: 16
+    },
+    customPrefix: {
+      type: String,
+      default: ""
+    }
+  },
+  data() {
+    return {
+      icons: uni_modules_uniIcons_components_uniIcons_icons.icons.glyphs
+    };
+  },
+  computed: {
+    unicode() {
+      let code = this.icons.find((v) => v.font_class === this.type);
+      if (code) {
+        return unescape(`%u${code.unicode}`);
+      }
+      return "";
+    },
+    iconSize() {
+      return getVal(this.size);
+    }
+  },
+  methods: {
+    _onClick() {
+      this.$emit("click");
+    }
+  }
+};
+function _sfc_render(_ctx, _cache, $props, $setup, $data, $options) {
+  return {
+    a: $props.color,
+    b: $options.iconSize,
+    c: common_vendor.n("uniui-" + $props.type),
+    d: common_vendor.n($props.customPrefix),
+    e: common_vendor.n($props.customPrefix ? $props.type : ""),
+    f: common_vendor.o((...args) => $options._onClick && $options._onClick(...args))
+  };
+}
+const Component = /* @__PURE__ */ common_vendor._export_sfc(_sfc_main, [["render", _sfc_render], ["__file", "G:/workSpace/agent-registration/uni_modules/uni-icons/components/uni-icons/uni-icons.vue"]]);
+wx.createComponent(Component);

unpackage/dist/dev/mp-weixin/uni_modules/uni-link/components/uni-link/uni-link.json → unpackage/dist/dev/mp-weixin/uni_modules/uni-icons/components/uni-icons/uni-icons.json


+ 1 - 0
unpackage/dist/dev/mp-weixin/uni_modules/uni-icons/components/uni-icons/uni-icons.wxml

@@ -0,0 +1 @@
+<text style="{{'color:' + a + ';' + ('font-size:' + b)}}" class="{{['uni-icons', c, d, e]}}" bindtap="{{f}}"></text>

File diff suppressed because it is too large
+ 509 - 0
unpackage/dist/dev/mp-weixin/uni_modules/uni-icons/components/uni-icons/uni-icons.wxss


+ 0 - 88
unpackage/dist/dev/mp-weixin/uni_modules/uni-link/components/uni-link/uni-link.js

@@ -1,88 +0,0 @@
-"use strict";
-const common_vendor = require("../../../../common/vendor.js");
-const _sfc_main = {
-  name: "uniLink",
-  props: {
-    href: {
-      type: String,
-      default: ""
-    },
-    text: {
-      type: String,
-      default: ""
-    },
-    download: {
-      type: String,
-      default: ""
-    },
-    showUnderLine: {
-      type: [Boolean, String],
-      default: true
-    },
-    copyTips: {
-      type: String,
-      default: "已自动复制网址,请在手机浏览器里粘贴该网址"
-    },
-    color: {
-      type: String,
-      default: "#999999"
-    },
-    fontSize: {
-      type: [Number, String],
-      default: 14
-    }
-  },
-  computed: {
-    isShowA() {
-      if ((this.isMail() || this.isTel()) && this._isH5 === true) {
-        return true;
-      }
-      return false;
-    }
-  },
-  created() {
-    this._isH5 = null;
-  },
-  methods: {
-    isMail() {
-      return this.href.startsWith("mailto:");
-    },
-    isTel() {
-      return this.href.startsWith("tel:");
-    },
-    openURL() {
-      common_vendor.index.setClipboardData({
-        data: this.href
-      });
-      common_vendor.index.showModal({
-        content: this.copyTips,
-        showCancel: false
-      });
-    },
-    makePhoneCall(phoneNumber) {
-      common_vendor.index.makePhoneCall({
-        phoneNumber
-      });
-    }
-  }
-};
-function _sfc_render(_ctx, _cache, $props, $setup, $data, $options) {
-  return common_vendor.e({
-    a: $options.isShowA
-  }, $options.isShowA ? {
-    b: common_vendor.t($props.text),
-    c: $props.href,
-    d: $props.showUnderLine === true || $props.showUnderLine === "true" ? 1 : "",
-    e: $props.color,
-    f: $props.fontSize + "px",
-    g: $props.download
-  } : {
-    h: common_vendor.t($props.text),
-    i: $props.showUnderLine === true || $props.showUnderLine === "true" ? 1 : "",
-    j: $props.color,
-    k: $props.fontSize + "px",
-    l: common_vendor.o((...args) => $options.openURL && $options.openURL(...args))
-  });
-}
-const Component = /* @__PURE__ */ common_vendor._export_sfc(_sfc_main, [["render", _sfc_render], ["__file", "G:/workSpace/agent-registration/uni_modules/uni-link/components/uni-link/uni-link.vue"]]);
-wx.createComponent(Component);

+ 0 - 1
unpackage/dist/dev/mp-weixin/uni_modules/uni-link/components/uni-link/uni-link.wxml

@@ -1 +0,0 @@
-<navigator wx:if="{{a}}" href="{{c}}" class="{{['uni-link', d && 'uni-link--withline']}}" style="{{'color:' + e + ';' + ('font-size:' + f)}}" download="{{g}}"><block wx:if="{{$slots.d}}"><slot></slot></block><block wx:else>{{b}}</block></navigator><text wx:else class="{{['uni-link', i && 'uni-link--withline']}}" style="{{'color:' + j + ';' + ('font-size:' + k)}}" bindtap="{{l}}"><block wx:if="{{$slots.d}}"><slot></slot></block><block wx:else>{{h}}</block></text>

+ 0 - 7
unpackage/dist/dev/mp-weixin/uni_modules/uni-link/components/uni-link/uni-link.wxss

@@ -1,7 +0,0 @@
-
-.uni-link {
-		cursor: pointer;
-}
-.uni-link--withline {
-		text-decoration: underline;
-}

+ 30 - 0
unpackage/dist/dev/mp-weixin/util/api.js

@@ -0,0 +1,30 @@
+"use strict";
+const common_vendor = require("../common/vendor.js");
+const BASE_URL = "http://192.168.161.34:8888/reporting";
+const myRequest = (options) => {
+  common_vendor.index.showLoading({
+    title: "加载中",
+    mask: true
+  });
+  return new Promise((resolve, reject) => {
+    common_vendor.index.request({
+      url: BASE_URL + options.url,
+      method: options.method || "GET",
+      data: options.data || {},
+      success: (res) => {
+        common_vendor.index.hideLoading();
+        resolve(res.data);
+      },
+      fail: (err) => {
+        common_vendor.index.hideLoading();
+        common_vendor.index.showToast({
+          title: "请求数据失败",
+          icon: "none",
+          mask: true
+        });
+        reject(err);
+      }
+    });
+  });
+};
+exports.myRequest = myRequest;

+ 30 - 0
util/api.js

@@ -0,0 +1,30 @@
+// 线上地址
+// const BASE_URL = "https://chtech.ncjti.edu.cn/campusclock"
+// 本地地址
+const BASE_URL = "http://192.168.161.34:8888/reporting"
+export const myRequest = (options) => {
+	uni.showLoading({
+		title: "加载中",
+		mask: true,
+	});
+	return new Promise((resolve, reject) => {
+		uni.request({
+			url: BASE_URL + options.url,
+			method: options.method || "GET",
+			data: options.data || {},
+			success: (res) => {
+				uni.hideLoading();
+				resolve(res.data)
+			},
+			fail: (err) => {
+				uni.hideLoading();
+				uni.showToast({
+					title: "请求数据失败",
+					icon: "none",
+					mask: true
+				})
+				reject(err)
+			}
+		})
+	})
+}