Browse Source

feat:下单功能

HaXeho 9 months ago
parent
commit
278f88b4d5
80 changed files with 4233 additions and 105 deletions
  1. 3 0
      errand/errand_app/main.js
  2. 7 0
      errand/errand_app/pages.json
  3. 140 0
      errand/errand_app/pages/preOrder/preOrder.vue
  4. 7 0
      errand/errand_app/static/css/global.css
  5. 0 0
      errand/errand_app/unpackage/dist/dev/.sourcemap/mp-weixin/common/main.js.map
  6. 0 0
      errand/errand_app/unpackage/dist/dev/.sourcemap/mp-weixin/common/runtime.js.map
  7. 0 0
      errand/errand_app/unpackage/dist/dev/.sourcemap/mp-weixin/common/vendor.js.map
  8. 0 0
      errand/errand_app/unpackage/dist/dev/.sourcemap/mp-weixin/pages/index/index.js.map
  9. 0 0
      errand/errand_app/unpackage/dist/dev/.sourcemap/mp-weixin/pages/preOrder/preOrder.js.map
  10. 0 0
      errand/errand_app/unpackage/dist/dev/.sourcemap/mp-weixin/uni_modules/uni-data-select/components/uni-data-select/uni-data-select.js.map
  11. 0 0
      errand/errand_app/unpackage/dist/dev/.sourcemap/mp-weixin/uni_modules/uni-easyinput/components/uni-easyinput/uni-easyinput.js.map
  12. 0 0
      errand/errand_app/unpackage/dist/dev/.sourcemap/mp-weixin/uni_modules/uni-file-picker/components/uni-file-picker/uni-file-picker.js.map
  13. 0 0
      errand/errand_app/unpackage/dist/dev/.sourcemap/mp-weixin/uni_modules/uni-file-picker/components/uni-file-picker/upload-file.js.map
  14. 0 0
      errand/errand_app/unpackage/dist/dev/.sourcemap/mp-weixin/uni_modules/uni-file-picker/components/uni-file-picker/upload-image.js.map
  15. 0 0
      errand/errand_app/unpackage/dist/dev/.sourcemap/mp-weixin/uni_modules/uni-forms/components/uni-forms-item/uni-forms-item.js.map
  16. 0 0
      errand/errand_app/unpackage/dist/dev/.sourcemap/mp-weixin/uni_modules/uni-forms/components/uni-forms/uni-forms.js.map
  17. 0 0
      errand/errand_app/unpackage/dist/dev/.sourcemap/mp-weixin/uni_modules/uni-icons/components/uni-icons/uni-icons.js.map
  18. 0 0
      errand/errand_app/unpackage/dist/dev/.sourcemap/mp-weixin/uni_modules/uni-notice-bar/components/uni-notice-bar/uni-notice-bar.js.map
  19. 0 0
      errand/errand_app/unpackage/dist/dev/.sourcemap/mp-weixin/uni_modules/uni-number-box/components/uni-number-box/uni-number-box.js.map
  20. 0 0
      errand/errand_app/unpackage/dist/dev/.sourcemap/mp-weixin/uni_modules/uni-section/components/uni-section/uni-section.js.map
  21. 0 0
      errand/errand_app/unpackage/dist/dev/.sourcemap/mp-weixin/uni_modules/uni-tag/components/uni-tag/uni-tag.js.map
  22. 2 1
      errand/errand_app/unpackage/dist/dev/mp-weixin/app.json
  23. 2 0
      errand/errand_app/unpackage/dist/dev/mp-weixin/common/main.js
  24. 7 0
      errand/errand_app/unpackage/dist/dev/mp-weixin/common/main.wxss
  25. 2 2
      errand/errand_app/unpackage/dist/dev/mp-weixin/common/runtime.js
  26. 343 28
      errand/errand_app/unpackage/dist/dev/mp-weixin/common/vendor.js
  27. 2 2
      errand/errand_app/unpackage/dist/dev/mp-weixin/pages/index/index.js
  28. 3 3
      errand/errand_app/unpackage/dist/dev/mp-weixin/pages/login/login.js
  29. 349 0
      errand/errand_app/unpackage/dist/dev/mp-weixin/pages/preOrder/preOrder.js
  30. 12 0
      errand/errand_app/unpackage/dist/dev/mp-weixin/pages/preOrder/preOrder.json
  31. 0 0
      errand/errand_app/unpackage/dist/dev/mp-weixin/pages/preOrder/preOrder.wxml
  32. 3 3
      errand/errand_app/unpackage/dist/dev/mp-weixin/pages/register/register.js
  33. 7 0
      errand/errand_app/unpackage/dist/dev/mp-weixin/project.private.config.json
  34. 7 0
      errand/errand_app/unpackage/dist/dev/mp-weixin/static/css/global.css
  35. 468 0
      errand/errand_app/unpackage/dist/dev/mp-weixin/uni_modules/uni-data-select/components/uni-data-select/uni-data-select.js
  36. 6 0
      errand/errand_app/unpackage/dist/dev/mp-weixin/uni_modules/uni-data-select/components/uni-data-select/uni-data-select.json
  37. 1 0
      errand/errand_app/unpackage/dist/dev/mp-weixin/uni_modules/uni-data-select/components/uni-data-select/uni-data-select.wxml
  38. 185 0
      errand/errand_app/unpackage/dist/dev/mp-weixin/uni_modules/uni-data-select/components/uni-data-select/uni-data-select.wxss
  39. 12 12
      errand/errand_app/unpackage/dist/dev/mp-weixin/uni_modules/uni-easyinput/components/uni-easyinput/uni-easyinput.js
  40. 890 0
      errand/errand_app/unpackage/dist/dev/mp-weixin/uni_modules/uni-file-picker/components/uni-file-picker/uni-file-picker.js
  41. 7 0
      errand/errand_app/unpackage/dist/dev/mp-weixin/uni_modules/uni-file-picker/components/uni-file-picker/uni-file-picker.json
  42. 1 0
      errand/errand_app/unpackage/dist/dev/mp-weixin/uni_modules/uni-file-picker/components/uni-file-picker/uni-file-picker.wxml
  43. 44 0
      errand/errand_app/unpackage/dist/dev/mp-weixin/uni_modules/uni-file-picker/components/uni-file-picker/uni-file-picker.wxss
  44. 313 0
      errand/errand_app/unpackage/dist/dev/mp-weixin/uni_modules/uni-file-picker/components/uni-file-picker/upload-file.js
  45. 4 0
      errand/errand_app/unpackage/dist/dev/mp-weixin/uni_modules/uni-file-picker/components/uni-file-picker/upload-file.json
  46. 1 0
      errand/errand_app/unpackage/dist/dev/mp-weixin/uni_modules/uni-file-picker/components/uni-file-picker/upload-file.wxml
  47. 125 0
      errand/errand_app/unpackage/dist/dev/mp-weixin/uni_modules/uni-file-picker/components/uni-file-picker/upload-file.wxss
  48. 319 0
      errand/errand_app/unpackage/dist/dev/mp-weixin/uni_modules/uni-file-picker/components/uni-file-picker/upload-image.js
  49. 4 0
      errand/errand_app/unpackage/dist/dev/mp-weixin/uni_modules/uni-file-picker/components/uni-file-picker/upload-image.json
  50. 1 0
      errand/errand_app/unpackage/dist/dev/mp-weixin/uni_modules/uni-file-picker/components/uni-file-picker/upload-image.wxml
  51. 116 0
      errand/errand_app/unpackage/dist/dev/mp-weixin/uni_modules/uni-file-picker/components/uni-file-picker/upload-image.wxss
  52. 13 13
      errand/errand_app/unpackage/dist/dev/mp-weixin/uni_modules/uni-forms/components/uni-forms-item/uni-forms-item.js
  53. 9 1
      errand/errand_app/unpackage/dist/dev/mp-weixin/uni_modules/uni-forms/components/uni-forms/uni-forms.js
  54. 12 12
      errand/errand_app/unpackage/dist/dev/mp-weixin/uni_modules/uni-icons/components/uni-icons/uni-icons.js
  55. 12 12
      errand/errand_app/unpackage/dist/dev/mp-weixin/uni_modules/uni-notice-bar/components/uni-notice-bar/uni-notice-bar.js
  56. 285 0
      errand/errand_app/unpackage/dist/dev/mp-weixin/uni_modules/uni-number-box/components/uni-number-box/uni-number-box.js
  57. 4 0
      errand/errand_app/unpackage/dist/dev/mp-weixin/uni_modules/uni-number-box/components/uni-number-box/uni-number-box.json
  58. 1 0
      errand/errand_app/unpackage/dist/dev/mp-weixin/uni_modules/uni-number-box/components/uni-number-box/uni-number-box.wxml
  59. 67 0
      errand/errand_app/unpackage/dist/dev/mp-weixin/uni_modules/uni-number-box/components/uni-number-box/uni-number-box.wxss
  60. 232 0
      errand/errand_app/unpackage/dist/dev/mp-weixin/uni_modules/uni-section/components/uni-section/uni-section.js
  61. 4 0
      errand/errand_app/unpackage/dist/dev/mp-weixin/uni_modules/uni-section/components/uni-section/uni-section.json
  62. 1 0
      errand/errand_app/unpackage/dist/dev/mp-weixin/uni_modules/uni-section/components/uni-section/uni-section.wxml
  63. 78 0
      errand/errand_app/unpackage/dist/dev/mp-weixin/uni_modules/uni-section/components/uni-section/uni-section.wxss
  64. 11 11
      errand/errand_app/unpackage/dist/dev/mp-weixin/uni_modules/uni-tag/components/uni-tag/uni-tag.js
  65. BIN
      errand/files/1720167376476-PDrohc7Wsq0X5c28c65f1a317af9373e35246408352e.png
  66. BIN
      errand/files/1720171809224-emrQyrLITgKb22cf23aa41db86ae198af41af1228774.png
  67. 2 0
      errand/springboot/src/main/java/com/example/SpringbootApplication.java
  68. 1 0
      errand/springboot/src/main/java/com/example/common/enums/ResultCodeEnum.java
  69. 10 0
      errand/springboot/src/main/java/com/example/controller/OrdersController.java
  70. 13 0
      errand/springboot/src/main/java/com/example/entity/Account.java
  71. 53 0
      errand/springboot/src/main/java/com/example/service/OrdersSchedule.java
  72. 28 1
      errand/springboot/src/main/java/com/example/service/OrdersService.java
  73. 2 2
      errand/springboot/src/main/resources/application.yml
  74. 2 2
      errand/springboot/target/classes/application.yml
  75. BIN
      errand/springboot/target/classes/com/example/SpringbootApplication.class
  76. BIN
      errand/springboot/target/classes/com/example/common/enums/ResultCodeEnum.class
  77. BIN
      errand/springboot/target/classes/com/example/controller/OrdersController.class
  78. BIN
      errand/springboot/target/classes/com/example/entity/Account.class
  79. BIN
      errand/springboot/target/classes/com/example/service/OrdersSchedule.class
  80. BIN
      errand/springboot/target/classes/com/example/service/OrdersService.class

+ 3 - 0
errand/errand_app/main.js

@@ -10,6 +10,9 @@ import request from '@/utils/request.js'
 
 Vue.prototype.$request = request
 
+import apiConfig from '@/config.js'
+Vue.prototype.$baseUrl = process.env.NODE_ENV === "development" ? apiConfig.dev.baseUrl : apiConfig.prod.baseUrl
+
 Vue.config.productionTip = false
 App.mpType = 'app'
 const app = new Vue({

+ 7 - 0
errand/errand_app/pages.json

@@ -35,6 +35,13 @@
 			{
 				"navigationBarTitleText" : "注 册"
 			}
+		},
+		{
+			"path" : "pages/preOrder/preOrder",
+			"style" : 
+			{
+				"navigationBarTitleText" : "下单"
+			}
 		}
 	],
 	"globalStyle": {

+ 140 - 0
errand/errand_app/pages/preOrder/preOrder.vue

@@ -0,0 +1,140 @@
+<template>
+	<view style="padding: 20rpx;">
+		<view class="box" style="margin-bottom: 10rpx;">
+			<uni-section title="取货地址" type="line"></uni-section>
+			<view style="color: #888;">请选择取货地址</view>
+		</view>
+		<view class="box" style="margin-bottom: 10rpx;">
+			<uni-section title="收货地址" type="line"></uni-section>
+			<view style="color: #888;">请选择收货地址</view>
+		</view>
+		
+		<view class="box">
+			<uni-forms :modelValue="form" :rules="rules" ref="formRef" label-width="160rpx" label-align="right">
+			  <uni-forms-item label="物品名称" name="name" required>
+			    <uni-easyinput type="text" v-model="form.name" placeholder="请输入" />
+			  </uni-forms-item>
+			  <uni-forms-item label="描述信息" name="descr">
+				<uni-easyinput type="text" v-model="form.descr" placeholder="请输入描述信息" />
+			  </uni-forms-item>
+			  <uni-forms-item label="重量(kg)" name="weight">
+				<uni-easyinput type="text" v-model="form.weight" placeholder="请输入物品重量" />
+			  </uni-forms-item>
+			  <uni-forms-item label="小费(元)" name="price" required>
+				<uni-number-box v-model="form.price" :min="1" style="position: relative; top: 10rpx;"></uni-number-box>
+			  </uni-forms-item>
+			  <uni-forms-item label="订单类型" name="type" required>
+				  <uni-data-select v-model="form.type" :localdata="orderTypes"></uni-data-select>
+			  </uni-forms-item>
+			  <uni-forms-item label="物品图片" name="img">
+				<uni-file-picker limit="1" :image-styles="imageStyles" :del-icon="false" :disable-preview="true" 
+					fileMediatype="image" v-model="imgs" @select="handleImgUploadSuccess"></uni-file-picker>
+			  </uni-forms-item>
+			  <uni-forms-item label="备注" name="comment">
+				<uni-easyinput type="text" v-model="form.comment" placeholder="请输入备注信息" />
+			  </uni-forms-item>
+			</uni-forms>
+			<view>
+				<button type="primary" @click="addOrder" class="my-button-primary">提交订单</button>
+			</view>
+		</view>
+	</view>
+</template>
+
+<script>
+export default {
+	data() {
+		return {
+			form: { name: '', descr: '', weight: '', price: 1, type: '', img: '', comment: '' },  // 表单绑定的对象
+			rules: {
+			  name: {
+			    rules: [{
+			      required: true,
+			      errorMessage: '请填写物品名称',
+			    }]
+			  },
+			  price: {
+			    rules: [{
+			      required: true,
+			      errorMessage: '请设置小费',
+			    }]
+			  },
+			  type: {
+			    rules: [{
+			      required: true,
+			      errorMessage: '请设置订单类型',
+			    }]
+			  }
+			},
+			imgs: [],
+			imageStyles: {
+			  "height": 80,	// 边框高度
+			  "width": 80,	// 边框宽度
+			  "border":{ // 如果为 Boolean 值,可以控制边框显示与否
+			    "color":"#eee",		// 边框颜色
+			    "width":"1px",		// 边框宽度
+			    "style":"solid", 	// 边框样式
+			    "radius":"50%" 		// 边框圆角,支持百分比
+			  }
+			},
+			orderTypes: [
+				{ value: '代拿快递', text: "代拿快递" },
+				{ value: '代取餐品', text: "代取餐品" },
+				{ value: '代买零食', text: "代买零食" },
+				{ value: '代送鲜花', text: "代送鲜花" },
+			]
+		}
+	},
+	onShow() {
+		let orderStore = uni.getStorageSync('orderStore')
+		this.form.type = orderStore?.type || ''
+	},
+	methods: {
+		addOrder() {
+			this.$refs.formRef.validate().then(res => {
+				console.log('Validation passed:', res);
+				console.log('Form data:', this.form);
+				this.$request.post('/orders/addOrder', this.form).then(res => {
+					if (res.code === '200') {
+						uni.showToast({
+							icon: 'success',
+							title: '下单成功'
+						});
+						setTimeout(() =>{
+							uni.switchTab({
+								url: '/pages/index/index'
+							});
+						},500)
+					} else {
+						uni.showToast({
+							icon: 'none',
+							title: res.msg
+						});
+					}
+				}).catch(error => {
+					console.error('API request failed:', error);
+				});
+			}).catch(error => {
+				console.error('Validation failed:', error);
+			});
+		},
+		handleImgUploadSuccess(e) {
+			let _this = this
+			const filePath = e.tempFilePaths[0]
+			uni.uploadFile({
+				url: _this.$baseUrl + '/files/upload', //自己的后端接口(默认发送post请求) 注意 _this.$baseUrl需要在全局变量定义
+				filePath: filePath,
+				name: "file",  //这里应为自己后端文件形参的名字
+				success(res) {
+					let url = JSON.parse(res.data || '{}').data  // 获取返回的图像链接
+					_this.form.img = url    // 给表单图像属性赋值
+				}
+			})
+		}
+	}
+}
+</script>
+
+<style>
+
+</style>

+ 7 - 0
errand/errand_app/static/css/global.css

@@ -15,4 +15,11 @@ page {
 	padding: 20rpx;
 	border-radius: 10rpx;
 	box-shadow: 0 4rpx 20rpx rgba(0, 0, 0, .1);
+}
+
+.my-button-primary{
+	height: 70rpx;
+	line-height: 70rpx;
+	background-color: #006eff !important;
+	font-size: 28rpx;
 }

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


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


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


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


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


File diff suppressed because it is too large
+ 0 - 0
errand/errand_app/unpackage/dist/dev/.sourcemap/mp-weixin/uni_modules/uni-data-select/components/uni-data-select/uni-data-select.js.map


File diff suppressed because it is too large
+ 0 - 0
errand/errand_app/unpackage/dist/dev/.sourcemap/mp-weixin/uni_modules/uni-easyinput/components/uni-easyinput/uni-easyinput.js.map


File diff suppressed because it is too large
+ 0 - 0
errand/errand_app/unpackage/dist/dev/.sourcemap/mp-weixin/uni_modules/uni-file-picker/components/uni-file-picker/uni-file-picker.js.map


File diff suppressed because it is too large
+ 0 - 0
errand/errand_app/unpackage/dist/dev/.sourcemap/mp-weixin/uni_modules/uni-file-picker/components/uni-file-picker/upload-file.js.map


File diff suppressed because it is too large
+ 0 - 0
errand/errand_app/unpackage/dist/dev/.sourcemap/mp-weixin/uni_modules/uni-file-picker/components/uni-file-picker/upload-image.js.map


File diff suppressed because it is too large
+ 0 - 0
errand/errand_app/unpackage/dist/dev/.sourcemap/mp-weixin/uni_modules/uni-forms/components/uni-forms-item/uni-forms-item.js.map


File diff suppressed because it is too large
+ 0 - 0
errand/errand_app/unpackage/dist/dev/.sourcemap/mp-weixin/uni_modules/uni-forms/components/uni-forms/uni-forms.js.map


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


File diff suppressed because it is too large
+ 0 - 0
errand/errand_app/unpackage/dist/dev/.sourcemap/mp-weixin/uni_modules/uni-notice-bar/components/uni-notice-bar/uni-notice-bar.js.map


File diff suppressed because it is too large
+ 0 - 0
errand/errand_app/unpackage/dist/dev/.sourcemap/mp-weixin/uni_modules/uni-number-box/components/uni-number-box/uni-number-box.js.map


File diff suppressed because it is too large
+ 0 - 0
errand/errand_app/unpackage/dist/dev/.sourcemap/mp-weixin/uni_modules/uni-section/components/uni-section/uni-section.js.map


File diff suppressed because it is too large
+ 0 - 0
errand/errand_app/unpackage/dist/dev/.sourcemap/mp-weixin/uni_modules/uni-tag/components/uni-tag/uni-tag.js.map


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

@@ -4,7 +4,8 @@
     "pages/orders/orders",
     "pages/me/me",
     "pages/login/login",
-    "pages/register/register"
+    "pages/register/register",
+    "pages/preOrder/preOrder"
   ],
   "subPackages": [],
   "window": {

+ 2 - 0
errand/errand_app/unpackage/dist/dev/mp-weixin/common/main.js

@@ -18,11 +18,13 @@ var _vue = _interopRequireDefault(__webpack_require__(/*! vue */ 25));
 __webpack_require__(/*! ./uni.promisify.adaptor */ 33);
 __webpack_require__(/*! @/static/css/global.css */ 34);
 var _request = _interopRequireDefault(__webpack_require__(/*! @/utils/request.js */ 35));
+var _config = _interopRequireDefault(__webpack_require__(/*! @/config.js */ 36));
 function ownKeys(object, enumerableOnly) { var keys = Object.keys(object); if (Object.getOwnPropertySymbols) { var symbols = Object.getOwnPropertySymbols(object); enumerableOnly && (symbols = symbols.filter(function (sym) { return Object.getOwnPropertyDescriptor(object, sym).enumerable; })), keys.push.apply(keys, symbols); } return keys; }
 function _objectSpread(target) { for (var i = 1; i < arguments.length; i++) { var source = null != arguments[i] ? arguments[i] : {}; i % 2 ? ownKeys(Object(source), !0).forEach(function (key) { (0, _defineProperty2.default)(target, key, source[key]); }) : Object.getOwnPropertyDescriptors ? Object.defineProperties(target, Object.getOwnPropertyDescriptors(source)) : ownKeys(Object(source)).forEach(function (key) { Object.defineProperty(target, key, Object.getOwnPropertyDescriptor(source, key)); }); } return target; }
 // @ts-ignore
 wx.__webpack_require_UNI_MP_PLUGIN__ = __webpack_require__;
 _vue.default.prototype.$request = _request.default;
+_vue.default.prototype.$baseUrl =  true ? _config.default.dev.baseUrl : undefined;
 _vue.default.config.productionTip = false;
 _App.default.mpType = 'app';
 var app = new _vue.default(_objectSpread({}, _App.default));

+ 7 - 0
errand/errand_app/unpackage/dist/dev/mp-weixin/common/main.wxss

@@ -29,3 +29,10 @@ page {
 	border-radius: 10rpx;
 	box-shadow: 0 4rpx 20rpx rgba(0, 0, 0, .1);
 }
+
+.my-button-primary{
+	height: 70rpx;
+	line-height: 70rpx;
+	background-color: #006eff !important;
+	font-size: 28rpx;
+}

+ 2 - 2
errand/errand_app/unpackage/dist/dev/mp-weixin/common/runtime.js

@@ -105,11 +105,11 @@
 /******/
 /******/
 /******/ 		// mini-css-extract-plugin CSS loading
-/******/ 		var cssChunks = {"uni_modules/uni-notice-bar/components/uni-notice-bar/uni-notice-bar":1,"uni_modules/uni-tag/components/uni-tag/uni-tag":1,"uni_modules/uni-forms/components/uni-forms-item/uni-forms-item":1,"uni_modules/uni-forms/components/uni-forms/uni-forms":1,"uni_modules/uni-easyinput/components/uni-easyinput/uni-easyinput":1,"uni_modules/uni-icons/components/uni-icons/uni-icons":1};
+/******/ 		var cssChunks = {"uni_modules/uni-notice-bar/components/uni-notice-bar/uni-notice-bar":1,"uni_modules/uni-tag/components/uni-tag/uni-tag":1,"uni_modules/uni-forms/components/uni-forms-item/uni-forms-item":1,"uni_modules/uni-forms/components/uni-forms/uni-forms":1,"uni_modules/uni-easyinput/components/uni-easyinput/uni-easyinput":1,"uni_modules/uni-data-select/components/uni-data-select/uni-data-select":1,"uni_modules/uni-file-picker/components/uni-file-picker/uni-file-picker":1,"uni_modules/uni-number-box/components/uni-number-box/uni-number-box":1,"uni_modules/uni-section/components/uni-section/uni-section":1,"uni_modules/uni-icons/components/uni-icons/uni-icons":1,"uni_modules/uni-file-picker/components/uni-file-picker/upload-file":1,"uni_modules/uni-file-picker/components/uni-file-picker/upload-image":1};
 /******/ 		if(installedCssChunks[chunkId]) promises.push(installedCssChunks[chunkId]);
 /******/ 		else if(installedCssChunks[chunkId] !== 0 && cssChunks[chunkId]) {
 /******/ 			promises.push(installedCssChunks[chunkId] = new Promise(function(resolve, reject) {
-/******/ 				var href = "" + ({"uni_modules/uni-notice-bar/components/uni-notice-bar/uni-notice-bar":"uni_modules/uni-notice-bar/components/uni-notice-bar/uni-notice-bar","uni_modules/uni-tag/components/uni-tag/uni-tag":"uni_modules/uni-tag/components/uni-tag/uni-tag","uni_modules/uni-forms/components/uni-forms-item/uni-forms-item":"uni_modules/uni-forms/components/uni-forms-item/uni-forms-item","uni_modules/uni-forms/components/uni-forms/uni-forms":"uni_modules/uni-forms/components/uni-forms/uni-forms","uni_modules/uni-easyinput/components/uni-easyinput/uni-easyinput":"uni_modules/uni-easyinput/components/uni-easyinput/uni-easyinput","uni_modules/uni-icons/components/uni-icons/uni-icons":"uni_modules/uni-icons/components/uni-icons/uni-icons"}[chunkId]||chunkId) + ".wxss";
+/******/ 				var href = "" + ({"uni_modules/uni-notice-bar/components/uni-notice-bar/uni-notice-bar":"uni_modules/uni-notice-bar/components/uni-notice-bar/uni-notice-bar","uni_modules/uni-tag/components/uni-tag/uni-tag":"uni_modules/uni-tag/components/uni-tag/uni-tag","uni_modules/uni-forms/components/uni-forms-item/uni-forms-item":"uni_modules/uni-forms/components/uni-forms-item/uni-forms-item","uni_modules/uni-forms/components/uni-forms/uni-forms":"uni_modules/uni-forms/components/uni-forms/uni-forms","uni_modules/uni-easyinput/components/uni-easyinput/uni-easyinput":"uni_modules/uni-easyinput/components/uni-easyinput/uni-easyinput","uni_modules/uni-data-select/components/uni-data-select/uni-data-select":"uni_modules/uni-data-select/components/uni-data-select/uni-data-select","uni_modules/uni-file-picker/components/uni-file-picker/uni-file-picker":"uni_modules/uni-file-picker/components/uni-file-picker/uni-file-picker","uni_modules/uni-number-box/components/uni-number-box/uni-number-box":"uni_modules/uni-number-box/components/uni-number-box/uni-number-box","uni_modules/uni-section/components/uni-section/uni-section":"uni_modules/uni-section/components/uni-section/uni-section","uni_modules/uni-icons/components/uni-icons/uni-icons":"uni_modules/uni-icons/components/uni-icons/uni-icons","uni_modules/uni-file-picker/components/uni-file-picker/upload-file":"uni_modules/uni-file-picker/components/uni-file-picker/upload-file","uni_modules/uni-file-picker/components/uni-file-picker/upload-image":"uni_modules/uni-file-picker/components/uni-file-picker/upload-image"}[chunkId]||chunkId) + ".wxss";
 /******/ 				var fullhref = __webpack_require__.p + href;
 /******/ 				var existingLinkTags = document.getElementsByTagName("link");
 /******/ 				for(var i = 0; i < existingLinkTags.length; i++) {

File diff suppressed because it is too large
+ 343 - 28
errand/errand_app/unpackage/dist/dev/mp-weixin/common/vendor.js


+ 2 - 2
errand/errand_app/unpackage/dist/dev/mp-weixin/pages/index/index.js

@@ -101,10 +101,10 @@ var components
 try {
   components = {
     uniNoticeBar: function () {
-      return __webpack_require__.e(/*! import() | uni_modules/uni-notice-bar/components/uni-notice-bar/uni-notice-bar */ "uni_modules/uni-notice-bar/components/uni-notice-bar/uni-notice-bar").then(__webpack_require__.bind(null, /*! @/uni_modules/uni-notice-bar/components/uni-notice-bar/uni-notice-bar.vue */ 71))
+      return __webpack_require__.e(/*! import() | uni_modules/uni-notice-bar/components/uni-notice-bar/uni-notice-bar */ "uni_modules/uni-notice-bar/components/uni-notice-bar/uni-notice-bar").then(__webpack_require__.bind(null, /*! @/uni_modules/uni-notice-bar/components/uni-notice-bar/uni-notice-bar.vue */ 77))
     },
     uniTag: function () {
-      return __webpack_require__.e(/*! import() | uni_modules/uni-tag/components/uni-tag/uni-tag */ "uni_modules/uni-tag/components/uni-tag/uni-tag").then(__webpack_require__.bind(null, /*! @/uni_modules/uni-tag/components/uni-tag/uni-tag.vue */ 78))
+      return __webpack_require__.e(/*! import() | uni_modules/uni-tag/components/uni-tag/uni-tag */ "uni_modules/uni-tag/components/uni-tag/uni-tag").then(__webpack_require__.bind(null, /*! @/uni_modules/uni-tag/components/uni-tag/uni-tag.vue */ 84))
     },
   }
 } catch (e) {

+ 3 - 3
errand/errand_app/unpackage/dist/dev/mp-weixin/pages/login/login.js

@@ -99,13 +99,13 @@ var components
 try {
   components = {
     uniForms: function () {
-      return Promise.all(/*! import() | uni_modules/uni-forms/components/uni-forms/uni-forms */[__webpack_require__.e("common/vendor"), __webpack_require__.e("uni_modules/uni-forms/components/uni-forms/uni-forms")]).then(__webpack_require__.bind(null, /*! @/uni_modules/uni-forms/components/uni-forms/uni-forms.vue */ 85))
+      return Promise.all(/*! import() | uni_modules/uni-forms/components/uni-forms/uni-forms */[__webpack_require__.e("common/vendor"), __webpack_require__.e("uni_modules/uni-forms/components/uni-forms/uni-forms")]).then(__webpack_require__.bind(null, /*! @/uni_modules/uni-forms/components/uni-forms/uni-forms.vue */ 91))
     },
     uniFormsItem: function () {
-      return Promise.all(/*! import() | uni_modules/uni-forms/components/uni-forms-item/uni-forms-item */[__webpack_require__.e("common/vendor"), __webpack_require__.e("uni_modules/uni-forms/components/uni-forms-item/uni-forms-item")]).then(__webpack_require__.bind(null, /*! @/uni_modules/uni-forms/components/uni-forms-item/uni-forms-item.vue */ 101))
+      return Promise.all(/*! import() | uni_modules/uni-forms/components/uni-forms-item/uni-forms-item */[__webpack_require__.e("common/vendor"), __webpack_require__.e("uni_modules/uni-forms/components/uni-forms-item/uni-forms-item")]).then(__webpack_require__.bind(null, /*! @/uni_modules/uni-forms/components/uni-forms-item/uni-forms-item.vue */ 107))
     },
     uniEasyinput: function () {
-      return __webpack_require__.e(/*! import() | uni_modules/uni-easyinput/components/uni-easyinput/uni-easyinput */ "uni_modules/uni-easyinput/components/uni-easyinput/uni-easyinput").then(__webpack_require__.bind(null, /*! @/uni_modules/uni-easyinput/components/uni-easyinput/uni-easyinput.vue */ 108))
+      return __webpack_require__.e(/*! import() | uni_modules/uni-easyinput/components/uni-easyinput/uni-easyinput */ "uni_modules/uni-easyinput/components/uni-easyinput/uni-easyinput").then(__webpack_require__.bind(null, /*! @/uni_modules/uni-easyinput/components/uni-easyinput/uni-easyinput.vue */ 114))
     },
   }
 } catch (e) {

+ 349 - 0
errand/errand_app/unpackage/dist/dev/mp-weixin/pages/preOrder/preOrder.js

@@ -0,0 +1,349 @@
+(global["webpackJsonp"] = global["webpackJsonp"] || []).push([["pages/preOrder/preOrder"],{
+
+/***/ 71:
+/*!**********************************************************************************************!*\
+  !*** D:/A_GraduationDesign/errand/errand_app/main.js?{"page":"pages%2FpreOrder%2FpreOrder"} ***!
+  \**********************************************************************************************/
+/*! no static exports found */
+/***/ (function(module, exports, __webpack_require__) {
+
+"use strict";
+/* WEBPACK VAR INJECTION */(function(wx, createPage) {
+
+var _interopRequireDefault = __webpack_require__(/*! @babel/runtime/helpers/interopRequireDefault */ 4);
+__webpack_require__(/*! uni-pages */ 26);
+var _vue = _interopRequireDefault(__webpack_require__(/*! vue */ 25));
+var _preOrder = _interopRequireDefault(__webpack_require__(/*! ./pages/preOrder/preOrder.vue */ 72));
+// @ts-ignore
+wx.__webpack_require_UNI_MP_PLUGIN__ = __webpack_require__;
+createPage(_preOrder.default);
+/* WEBPACK VAR INJECTION */}.call(this, __webpack_require__(/*! ./node_modules/@dcloudio/uni-mp-weixin/dist/wx.js */ 1)["default"], __webpack_require__(/*! ./node_modules/@dcloudio/uni-mp-weixin/dist/index.js */ 2)["createPage"]))
+
+/***/ }),
+
+/***/ 72:
+/*!***************************************************************************!*\
+  !*** D:/A_GraduationDesign/errand/errand_app/pages/preOrder/preOrder.vue ***!
+  \***************************************************************************/
+/*! no static exports found */
+/***/ (function(module, __webpack_exports__, __webpack_require__) {
+
+"use strict";
+__webpack_require__.r(__webpack_exports__);
+/* harmony import */ var _preOrder_vue_vue_type_template_id_3bf92ee6___WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ./preOrder.vue?vue&type=template&id=3bf92ee6& */ 73);
+/* harmony import */ var _preOrder_vue_vue_type_script_lang_js___WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ./preOrder.vue?vue&type=script&lang=js& */ 75);
+/* harmony reexport (unknown) */ for(var __WEBPACK_IMPORT_KEY__ in _preOrder_vue_vue_type_script_lang_js___WEBPACK_IMPORTED_MODULE_1__) if(["default"].indexOf(__WEBPACK_IMPORT_KEY__) < 0) (function(key) { __webpack_require__.d(__webpack_exports__, key, function() { return _preOrder_vue_vue_type_script_lang_js___WEBPACK_IMPORTED_MODULE_1__[key]; }) }(__WEBPACK_IMPORT_KEY__));
+/* harmony import */ var _HBuilder_HBuilderX_plugins_uniapp_cli_node_modules_dcloudio_vue_cli_plugin_uni_packages_vue_loader_lib_runtime_componentNormalizer_js__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! ../../../../../HBuilder/HBuilderX/plugins/uniapp-cli/node_modules/@dcloudio/vue-cli-plugin-uni/packages/vue-loader/lib/runtime/componentNormalizer.js */ 32);
+
+var renderjs
+
+
+
+
+/* normalize component */
+
+var component = Object(_HBuilder_HBuilderX_plugins_uniapp_cli_node_modules_dcloudio_vue_cli_plugin_uni_packages_vue_loader_lib_runtime_componentNormalizer_js__WEBPACK_IMPORTED_MODULE_2__["default"])(
+  _preOrder_vue_vue_type_script_lang_js___WEBPACK_IMPORTED_MODULE_1__["default"],
+  _preOrder_vue_vue_type_template_id_3bf92ee6___WEBPACK_IMPORTED_MODULE_0__["render"],
+  _preOrder_vue_vue_type_template_id_3bf92ee6___WEBPACK_IMPORTED_MODULE_0__["staticRenderFns"],
+  false,
+  null,
+  null,
+  null,
+  false,
+  _preOrder_vue_vue_type_template_id_3bf92ee6___WEBPACK_IMPORTED_MODULE_0__["components"],
+  renderjs
+)
+
+component.options.__file = "pages/preOrder/preOrder.vue"
+/* harmony default export */ __webpack_exports__["default"] = (component.exports);
+
+/***/ }),
+
+/***/ 73:
+/*!**********************************************************************************************************!*\
+  !*** D:/A_GraduationDesign/errand/errand_app/pages/preOrder/preOrder.vue?vue&type=template&id=3bf92ee6& ***!
+  \**********************************************************************************************************/
+/*! exports provided: render, staticRenderFns, recyclableRender, components */
+/***/ (function(module, __webpack_exports__, __webpack_require__) {
+
+"use strict";
+__webpack_require__.r(__webpack_exports__);
+/* harmony import */ var _HBuilder_HBuilderX_plugins_uniapp_cli_node_modules_dcloudio_vue_cli_plugin_uni_packages_vue_loader_lib_loaders_templateLoader_js_vue_loader_options_HBuilder_HBuilderX_plugins_uniapp_cli_node_modules_dcloudio_vue_cli_plugin_uni_packages_webpack_preprocess_loader_index_js_ref_17_0_HBuilder_HBuilderX_plugins_uniapp_cli_node_modules_dcloudio_webpack_uni_mp_loader_lib_template_js_HBuilder_HBuilderX_plugins_uniapp_cli_node_modules_dcloudio_vue_cli_plugin_uni_packages_webpack_uni_app_loader_page_meta_js_HBuilder_HBuilderX_plugins_uniapp_cli_node_modules_dcloudio_vue_cli_plugin_uni_packages_vue_loader_lib_index_js_vue_loader_options_HBuilder_HBuilderX_plugins_uniapp_cli_node_modules_dcloudio_webpack_uni_mp_loader_lib_style_js_preOrder_vue_vue_type_template_id_3bf92ee6___WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! -!../../../../../HBuilder/HBuilderX/plugins/uniapp-cli/node_modules/@dcloudio/vue-cli-plugin-uni/packages/vue-loader/lib/loaders/templateLoader.js??vue-loader-options!../../../../../HBuilder/HBuilderX/plugins/uniapp-cli/node_modules/@dcloudio/vue-cli-plugin-uni/packages/webpack-preprocess-loader??ref--17-0!../../../../../HBuilder/HBuilderX/plugins/uniapp-cli/node_modules/@dcloudio/webpack-uni-mp-loader/lib/template.js!../../../../../HBuilder/HBuilderX/plugins/uniapp-cli/node_modules/@dcloudio/vue-cli-plugin-uni/packages/webpack-uni-app-loader/page-meta.js!../../../../../HBuilder/HBuilderX/plugins/uniapp-cli/node_modules/@dcloudio/vue-cli-plugin-uni/packages/vue-loader/lib??vue-loader-options!../../../../../HBuilder/HBuilderX/plugins/uniapp-cli/node_modules/@dcloudio/webpack-uni-mp-loader/lib/style.js!./preOrder.vue?vue&type=template&id=3bf92ee6& */ 74);
+/* harmony reexport (safe) */ __webpack_require__.d(__webpack_exports__, "render", function() { return _HBuilder_HBuilderX_plugins_uniapp_cli_node_modules_dcloudio_vue_cli_plugin_uni_packages_vue_loader_lib_loaders_templateLoader_js_vue_loader_options_HBuilder_HBuilderX_plugins_uniapp_cli_node_modules_dcloudio_vue_cli_plugin_uni_packages_webpack_preprocess_loader_index_js_ref_17_0_HBuilder_HBuilderX_plugins_uniapp_cli_node_modules_dcloudio_webpack_uni_mp_loader_lib_template_js_HBuilder_HBuilderX_plugins_uniapp_cli_node_modules_dcloudio_vue_cli_plugin_uni_packages_webpack_uni_app_loader_page_meta_js_HBuilder_HBuilderX_plugins_uniapp_cli_node_modules_dcloudio_vue_cli_plugin_uni_packages_vue_loader_lib_index_js_vue_loader_options_HBuilder_HBuilderX_plugins_uniapp_cli_node_modules_dcloudio_webpack_uni_mp_loader_lib_style_js_preOrder_vue_vue_type_template_id_3bf92ee6___WEBPACK_IMPORTED_MODULE_0__["render"]; });
+
+/* harmony reexport (safe) */ __webpack_require__.d(__webpack_exports__, "staticRenderFns", function() { return _HBuilder_HBuilderX_plugins_uniapp_cli_node_modules_dcloudio_vue_cli_plugin_uni_packages_vue_loader_lib_loaders_templateLoader_js_vue_loader_options_HBuilder_HBuilderX_plugins_uniapp_cli_node_modules_dcloudio_vue_cli_plugin_uni_packages_webpack_preprocess_loader_index_js_ref_17_0_HBuilder_HBuilderX_plugins_uniapp_cli_node_modules_dcloudio_webpack_uni_mp_loader_lib_template_js_HBuilder_HBuilderX_plugins_uniapp_cli_node_modules_dcloudio_vue_cli_plugin_uni_packages_webpack_uni_app_loader_page_meta_js_HBuilder_HBuilderX_plugins_uniapp_cli_node_modules_dcloudio_vue_cli_plugin_uni_packages_vue_loader_lib_index_js_vue_loader_options_HBuilder_HBuilderX_plugins_uniapp_cli_node_modules_dcloudio_webpack_uni_mp_loader_lib_style_js_preOrder_vue_vue_type_template_id_3bf92ee6___WEBPACK_IMPORTED_MODULE_0__["staticRenderFns"]; });
+
+/* harmony reexport (safe) */ __webpack_require__.d(__webpack_exports__, "recyclableRender", function() { return _HBuilder_HBuilderX_plugins_uniapp_cli_node_modules_dcloudio_vue_cli_plugin_uni_packages_vue_loader_lib_loaders_templateLoader_js_vue_loader_options_HBuilder_HBuilderX_plugins_uniapp_cli_node_modules_dcloudio_vue_cli_plugin_uni_packages_webpack_preprocess_loader_index_js_ref_17_0_HBuilder_HBuilderX_plugins_uniapp_cli_node_modules_dcloudio_webpack_uni_mp_loader_lib_template_js_HBuilder_HBuilderX_plugins_uniapp_cli_node_modules_dcloudio_vue_cli_plugin_uni_packages_webpack_uni_app_loader_page_meta_js_HBuilder_HBuilderX_plugins_uniapp_cli_node_modules_dcloudio_vue_cli_plugin_uni_packages_vue_loader_lib_index_js_vue_loader_options_HBuilder_HBuilderX_plugins_uniapp_cli_node_modules_dcloudio_webpack_uni_mp_loader_lib_style_js_preOrder_vue_vue_type_template_id_3bf92ee6___WEBPACK_IMPORTED_MODULE_0__["recyclableRender"]; });
+
+/* harmony reexport (safe) */ __webpack_require__.d(__webpack_exports__, "components", function() { return _HBuilder_HBuilderX_plugins_uniapp_cli_node_modules_dcloudio_vue_cli_plugin_uni_packages_vue_loader_lib_loaders_templateLoader_js_vue_loader_options_HBuilder_HBuilderX_plugins_uniapp_cli_node_modules_dcloudio_vue_cli_plugin_uni_packages_webpack_preprocess_loader_index_js_ref_17_0_HBuilder_HBuilderX_plugins_uniapp_cli_node_modules_dcloudio_webpack_uni_mp_loader_lib_template_js_HBuilder_HBuilderX_plugins_uniapp_cli_node_modules_dcloudio_vue_cli_plugin_uni_packages_webpack_uni_app_loader_page_meta_js_HBuilder_HBuilderX_plugins_uniapp_cli_node_modules_dcloudio_vue_cli_plugin_uni_packages_vue_loader_lib_index_js_vue_loader_options_HBuilder_HBuilderX_plugins_uniapp_cli_node_modules_dcloudio_webpack_uni_mp_loader_lib_style_js_preOrder_vue_vue_type_template_id_3bf92ee6___WEBPACK_IMPORTED_MODULE_0__["components"]; });
+
+
+
+/***/ }),
+
+/***/ 74:
+/*!**********************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************!*\
+  !*** ./node_modules/@dcloudio/vue-cli-plugin-uni/packages/vue-loader/lib/loaders/templateLoader.js??vue-loader-options!./node_modules/@dcloudio/vue-cli-plugin-uni/packages/webpack-preprocess-loader??ref--17-0!./node_modules/@dcloudio/webpack-uni-mp-loader/lib/template.js!./node_modules/@dcloudio/vue-cli-plugin-uni/packages/webpack-uni-app-loader/page-meta.js!./node_modules/@dcloudio/vue-cli-plugin-uni/packages/vue-loader/lib??vue-loader-options!./node_modules/@dcloudio/webpack-uni-mp-loader/lib/style.js!D:/A_GraduationDesign/errand/errand_app/pages/preOrder/preOrder.vue?vue&type=template&id=3bf92ee6& ***!
+  \**********************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************/
+/*! exports provided: render, staticRenderFns, recyclableRender, components */
+/***/ (function(module, __webpack_exports__, __webpack_require__) {
+
+"use strict";
+__webpack_require__.r(__webpack_exports__);
+/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "render", function() { return render; });
+/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "staticRenderFns", function() { return staticRenderFns; });
+/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "recyclableRender", function() { return recyclableRender; });
+/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "components", function() { return components; });
+var components
+try {
+  components = {
+    uniSection: function () {
+      return __webpack_require__.e(/*! import() | uni_modules/uni-section/components/uni-section/uni-section */ "uni_modules/uni-section/components/uni-section/uni-section").then(__webpack_require__.bind(null, /*! @/uni_modules/uni-section/components/uni-section/uni-section.vue */ 137))
+    },
+    uniForms: function () {
+      return Promise.all(/*! import() | uni_modules/uni-forms/components/uni-forms/uni-forms */[__webpack_require__.e("common/vendor"), __webpack_require__.e("uni_modules/uni-forms/components/uni-forms/uni-forms")]).then(__webpack_require__.bind(null, /*! @/uni_modules/uni-forms/components/uni-forms/uni-forms.vue */ 91))
+    },
+    uniFormsItem: function () {
+      return Promise.all(/*! import() | uni_modules/uni-forms/components/uni-forms-item/uni-forms-item */[__webpack_require__.e("common/vendor"), __webpack_require__.e("uni_modules/uni-forms/components/uni-forms-item/uni-forms-item")]).then(__webpack_require__.bind(null, /*! @/uni_modules/uni-forms/components/uni-forms-item/uni-forms-item.vue */ 107))
+    },
+    uniEasyinput: function () {
+      return __webpack_require__.e(/*! import() | uni_modules/uni-easyinput/components/uni-easyinput/uni-easyinput */ "uni_modules/uni-easyinput/components/uni-easyinput/uni-easyinput").then(__webpack_require__.bind(null, /*! @/uni_modules/uni-easyinput/components/uni-easyinput/uni-easyinput.vue */ 114))
+    },
+    uniNumberBox: function () {
+      return __webpack_require__.e(/*! import() | uni_modules/uni-number-box/components/uni-number-box/uni-number-box */ "uni_modules/uni-number-box/components/uni-number-box/uni-number-box").then(__webpack_require__.bind(null, /*! @/uni_modules/uni-number-box/components/uni-number-box/uni-number-box.vue */ 144))
+    },
+    uniDataSelect: function () {
+      return Promise.all(/*! import() | uni_modules/uni-data-select/components/uni-data-select/uni-data-select */[__webpack_require__.e("common/vendor"), __webpack_require__.e("uni_modules/uni-data-select/components/uni-data-select/uni-data-select")]).then(__webpack_require__.bind(null, /*! @/uni_modules/uni-data-select/components/uni-data-select/uni-data-select.vue */ 151))
+    },
+    uniFilePicker: function () {
+      return Promise.all(/*! import() | uni_modules/uni-file-picker/components/uni-file-picker/uni-file-picker */[__webpack_require__.e("common/vendor"), __webpack_require__.e("uni_modules/uni-file-picker/components/uni-file-picker/uni-file-picker")]).then(__webpack_require__.bind(null, /*! @/uni_modules/uni-file-picker/components/uni-file-picker/uni-file-picker.vue */ 163))
+    },
+  }
+} catch (e) {
+  if (
+    e.message.indexOf("Cannot find module") !== -1 &&
+    e.message.indexOf(".vue") !== -1
+  ) {
+    console.error(e.message)
+    console.error("1. 排查组件名称拼写是否正确")
+    console.error(
+      "2. 排查组件是否符合 easycom 规范,文档:https://uniapp.dcloud.net.cn/collocation/pages?id=easycom"
+    )
+    console.error(
+      "3. 若组件不符合 easycom 规范,需手动引入,并在 components 中注册该组件"
+    )
+  } else {
+    throw e
+  }
+}
+var render = function () {
+  var _vm = this
+  var _h = _vm.$createElement
+  var _c = _vm._self._c || _h
+}
+var recyclableRender = false
+var staticRenderFns = []
+render._withStripped = true
+
+
+
+/***/ }),
+
+/***/ 75:
+/*!****************************************************************************************************!*\
+  !*** D:/A_GraduationDesign/errand/errand_app/pages/preOrder/preOrder.vue?vue&type=script&lang=js& ***!
+  \****************************************************************************************************/
+/*! no static exports found */
+/***/ (function(module, __webpack_exports__, __webpack_require__) {
+
+"use strict";
+__webpack_require__.r(__webpack_exports__);
+/* harmony import */ var _HBuilder_HBuilderX_plugins_uniapp_cli_node_modules_babel_loader_lib_index_js_HBuilder_HBuilderX_plugins_uniapp_cli_node_modules_dcloudio_vue_cli_plugin_uni_packages_webpack_preprocess_loader_index_js_ref_13_1_HBuilder_HBuilderX_plugins_uniapp_cli_node_modules_dcloudio_webpack_uni_mp_loader_lib_script_js_HBuilder_HBuilderX_plugins_uniapp_cli_node_modules_dcloudio_vue_cli_plugin_uni_packages_vue_loader_lib_index_js_vue_loader_options_HBuilder_HBuilderX_plugins_uniapp_cli_node_modules_dcloudio_webpack_uni_mp_loader_lib_style_js_preOrder_vue_vue_type_script_lang_js___WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! -!../../../../../HBuilder/HBuilderX/plugins/uniapp-cli/node_modules/babel-loader/lib!../../../../../HBuilder/HBuilderX/plugins/uniapp-cli/node_modules/@dcloudio/vue-cli-plugin-uni/packages/webpack-preprocess-loader??ref--13-1!../../../../../HBuilder/HBuilderX/plugins/uniapp-cli/node_modules/@dcloudio/webpack-uni-mp-loader/lib/script.js!../../../../../HBuilder/HBuilderX/plugins/uniapp-cli/node_modules/@dcloudio/vue-cli-plugin-uni/packages/vue-loader/lib??vue-loader-options!../../../../../HBuilder/HBuilderX/plugins/uniapp-cli/node_modules/@dcloudio/webpack-uni-mp-loader/lib/style.js!./preOrder.vue?vue&type=script&lang=js& */ 76);
+/* harmony import */ var _HBuilder_HBuilderX_plugins_uniapp_cli_node_modules_babel_loader_lib_index_js_HBuilder_HBuilderX_plugins_uniapp_cli_node_modules_dcloudio_vue_cli_plugin_uni_packages_webpack_preprocess_loader_index_js_ref_13_1_HBuilder_HBuilderX_plugins_uniapp_cli_node_modules_dcloudio_webpack_uni_mp_loader_lib_script_js_HBuilder_HBuilderX_plugins_uniapp_cli_node_modules_dcloudio_vue_cli_plugin_uni_packages_vue_loader_lib_index_js_vue_loader_options_HBuilder_HBuilderX_plugins_uniapp_cli_node_modules_dcloudio_webpack_uni_mp_loader_lib_style_js_preOrder_vue_vue_type_script_lang_js___WEBPACK_IMPORTED_MODULE_0___default = /*#__PURE__*/__webpack_require__.n(_HBuilder_HBuilderX_plugins_uniapp_cli_node_modules_babel_loader_lib_index_js_HBuilder_HBuilderX_plugins_uniapp_cli_node_modules_dcloudio_vue_cli_plugin_uni_packages_webpack_preprocess_loader_index_js_ref_13_1_HBuilder_HBuilderX_plugins_uniapp_cli_node_modules_dcloudio_webpack_uni_mp_loader_lib_script_js_HBuilder_HBuilderX_plugins_uniapp_cli_node_modules_dcloudio_vue_cli_plugin_uni_packages_vue_loader_lib_index_js_vue_loader_options_HBuilder_HBuilderX_plugins_uniapp_cli_node_modules_dcloudio_webpack_uni_mp_loader_lib_style_js_preOrder_vue_vue_type_script_lang_js___WEBPACK_IMPORTED_MODULE_0__);
+/* harmony reexport (unknown) */ for(var __WEBPACK_IMPORT_KEY__ in _HBuilder_HBuilderX_plugins_uniapp_cli_node_modules_babel_loader_lib_index_js_HBuilder_HBuilderX_plugins_uniapp_cli_node_modules_dcloudio_vue_cli_plugin_uni_packages_webpack_preprocess_loader_index_js_ref_13_1_HBuilder_HBuilderX_plugins_uniapp_cli_node_modules_dcloudio_webpack_uni_mp_loader_lib_script_js_HBuilder_HBuilderX_plugins_uniapp_cli_node_modules_dcloudio_vue_cli_plugin_uni_packages_vue_loader_lib_index_js_vue_loader_options_HBuilder_HBuilderX_plugins_uniapp_cli_node_modules_dcloudio_webpack_uni_mp_loader_lib_style_js_preOrder_vue_vue_type_script_lang_js___WEBPACK_IMPORTED_MODULE_0__) if(["default"].indexOf(__WEBPACK_IMPORT_KEY__) < 0) (function(key) { __webpack_require__.d(__webpack_exports__, key, function() { return _HBuilder_HBuilderX_plugins_uniapp_cli_node_modules_babel_loader_lib_index_js_HBuilder_HBuilderX_plugins_uniapp_cli_node_modules_dcloudio_vue_cli_plugin_uni_packages_webpack_preprocess_loader_index_js_ref_13_1_HBuilder_HBuilderX_plugins_uniapp_cli_node_modules_dcloudio_webpack_uni_mp_loader_lib_script_js_HBuilder_HBuilderX_plugins_uniapp_cli_node_modules_dcloudio_vue_cli_plugin_uni_packages_vue_loader_lib_index_js_vue_loader_options_HBuilder_HBuilderX_plugins_uniapp_cli_node_modules_dcloudio_webpack_uni_mp_loader_lib_style_js_preOrder_vue_vue_type_script_lang_js___WEBPACK_IMPORTED_MODULE_0__[key]; }) }(__WEBPACK_IMPORT_KEY__));
+ /* harmony default export */ __webpack_exports__["default"] = (_HBuilder_HBuilderX_plugins_uniapp_cli_node_modules_babel_loader_lib_index_js_HBuilder_HBuilderX_plugins_uniapp_cli_node_modules_dcloudio_vue_cli_plugin_uni_packages_webpack_preprocess_loader_index_js_ref_13_1_HBuilder_HBuilderX_plugins_uniapp_cli_node_modules_dcloudio_webpack_uni_mp_loader_lib_script_js_HBuilder_HBuilderX_plugins_uniapp_cli_node_modules_dcloudio_vue_cli_plugin_uni_packages_vue_loader_lib_index_js_vue_loader_options_HBuilder_HBuilderX_plugins_uniapp_cli_node_modules_dcloudio_webpack_uni_mp_loader_lib_style_js_preOrder_vue_vue_type_script_lang_js___WEBPACK_IMPORTED_MODULE_0___default.a); 
+
+/***/ }),
+
+/***/ 76:
+/*!***********************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************!*\
+  !*** ./node_modules/babel-loader/lib!./node_modules/@dcloudio/vue-cli-plugin-uni/packages/webpack-preprocess-loader??ref--13-1!./node_modules/@dcloudio/webpack-uni-mp-loader/lib/script.js!./node_modules/@dcloudio/vue-cli-plugin-uni/packages/vue-loader/lib??vue-loader-options!./node_modules/@dcloudio/webpack-uni-mp-loader/lib/style.js!D:/A_GraduationDesign/errand/errand_app/pages/preOrder/preOrder.vue?vue&type=script&lang=js& ***!
+  \***********************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************/
+/*! no static exports found */
+/***/ (function(module, exports, __webpack_require__) {
+
+"use strict";
+/* WEBPACK VAR INJECTION */(function(uni) {
+
+Object.defineProperty(exports, "__esModule", {
+  value: true
+});
+exports.default = void 0;
+//
+//
+//
+//
+//
+//
+//
+//
+//
+//
+//
+//
+//
+//
+//
+//
+//
+//
+//
+//
+//
+//
+//
+//
+//
+//
+//
+//
+//
+//
+//
+//
+//
+//
+//
+//
+//
+//
+//
+//
+//
+//
+//
+var _default = {
+  data: function data() {
+    return {
+      form: {
+        name: '',
+        descr: '',
+        weight: '',
+        price: 1,
+        type: '',
+        img: '',
+        comment: ''
+      },
+      // 表单绑定的对象
+      rules: {
+        name: {
+          rules: [{
+            required: true,
+            errorMessage: '请填写物品名称'
+          }]
+        },
+        price: {
+          rules: [{
+            required: true,
+            errorMessage: '请设置小费'
+          }]
+        },
+        type: {
+          rules: [{
+            required: true,
+            errorMessage: '请设置订单类型'
+          }]
+        }
+      },
+      imgs: [],
+      imageStyles: {
+        "height": 80,
+        // 边框高度
+        "width": 80,
+        // 边框宽度
+        "border": {
+          // 如果为 Boolean 值,可以控制边框显示与否
+          "color": "#eee",
+          // 边框颜色
+          "width": "1px",
+          // 边框宽度
+          "style": "solid",
+          // 边框样式
+          "radius": "50%" // 边框圆角,支持百分比
+        }
+      },
+
+      orderTypes: [{
+        value: '代拿快递',
+        text: "代拿快递"
+      }, {
+        value: '代取餐品',
+        text: "代取餐品"
+      }, {
+        value: '代买零食',
+        text: "代买零食"
+      }, {
+        value: '代送鲜花',
+        text: "代送鲜花"
+      }]
+    };
+  },
+  onShow: function onShow() {
+    var orderStore = uni.getStorageSync('orderStore');
+    this.form.type = (orderStore === null || orderStore === void 0 ? void 0 : orderStore.type) || '';
+  },
+  methods: {
+    addOrder: function addOrder() {
+      var _this2 = this;
+      this.$refs.formRef.validate().then(function (res) {
+        console.log('Validation passed:', res);
+        console.log('Form data:', _this2.form);
+        _this2.$request.post('/orders/addOrder', _this2.form).then(function (res) {
+          if (res.code === '200') {
+            uni.showToast({
+              icon: 'success',
+              title: '下单成功'
+            });
+            setTimeout(function () {
+              uni.switchTab({
+                url: '/pages/index/index'
+              });
+            }, 500);
+          } else {
+            uni.showToast({
+              icon: 'none',
+              title: res.msg
+            });
+          }
+        }).catch(function (error) {
+          console.error('API request failed:', error);
+        });
+      }).catch(function (error) {
+        console.error('Validation failed:', error);
+      });
+    },
+    handleImgUploadSuccess: function handleImgUploadSuccess(e) {
+      var _this = this;
+      var filePath = e.tempFilePaths[0];
+      uni.uploadFile({
+        url: _this.$baseUrl + '/files/upload',
+        //自己的后端接口(默认发送post请求) 注意 _this.$baseUrl需要在全局变量定义
+        filePath: filePath,
+        name: "file",
+        //这里应为自己后端文件形参的名字
+        success: function success(res) {
+          var url = JSON.parse(res.data || '{}').data; // 获取返回的图像链接
+          _this.form.img = url; // 给表单图像属性赋值
+        }
+      });
+    }
+  }
+};
+exports.default = _default;
+/* WEBPACK VAR INJECTION */}.call(this, __webpack_require__(/*! ./node_modules/@dcloudio/uni-mp-weixin/dist/index.js */ 2)["default"]))
+
+/***/ })
+
+},[[71,"common/runtime","common/vendor"]]]);
+//# sourceMappingURL=../../../.sourcemap/mp-weixin/pages/preOrder/preOrder.js.map

+ 12 - 0
errand/errand_app/unpackage/dist/dev/mp-weixin/pages/preOrder/preOrder.json

@@ -0,0 +1,12 @@
+{
+  "navigationBarTitleText": "下单",
+  "usingComponents": {
+    "uni-section": "/uni_modules/uni-section/components/uni-section/uni-section",
+    "uni-forms": "/uni_modules/uni-forms/components/uni-forms/uni-forms",
+    "uni-forms-item": "/uni_modules/uni-forms/components/uni-forms-item/uni-forms-item",
+    "uni-easyinput": "/uni_modules/uni-easyinput/components/uni-easyinput/uni-easyinput",
+    "uni-number-box": "/uni_modules/uni-number-box/components/uni-number-box/uni-number-box",
+    "uni-data-select": "/uni_modules/uni-data-select/components/uni-data-select/uni-data-select",
+    "uni-file-picker": "/uni_modules/uni-file-picker/components/uni-file-picker/uni-file-picker"
+  }
+}

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


+ 3 - 3
errand/errand_app/unpackage/dist/dev/mp-weixin/pages/register/register.js

@@ -99,13 +99,13 @@ var components
 try {
   components = {
     uniForms: function () {
-      return Promise.all(/*! import() | uni_modules/uni-forms/components/uni-forms/uni-forms */[__webpack_require__.e("common/vendor"), __webpack_require__.e("uni_modules/uni-forms/components/uni-forms/uni-forms")]).then(__webpack_require__.bind(null, /*! @/uni_modules/uni-forms/components/uni-forms/uni-forms.vue */ 85))
+      return Promise.all(/*! import() | uni_modules/uni-forms/components/uni-forms/uni-forms */[__webpack_require__.e("common/vendor"), __webpack_require__.e("uni_modules/uni-forms/components/uni-forms/uni-forms")]).then(__webpack_require__.bind(null, /*! @/uni_modules/uni-forms/components/uni-forms/uni-forms.vue */ 91))
     },
     uniFormsItem: function () {
-      return Promise.all(/*! import() | uni_modules/uni-forms/components/uni-forms-item/uni-forms-item */[__webpack_require__.e("common/vendor"), __webpack_require__.e("uni_modules/uni-forms/components/uni-forms-item/uni-forms-item")]).then(__webpack_require__.bind(null, /*! @/uni_modules/uni-forms/components/uni-forms-item/uni-forms-item.vue */ 101))
+      return Promise.all(/*! import() | uni_modules/uni-forms/components/uni-forms-item/uni-forms-item */[__webpack_require__.e("common/vendor"), __webpack_require__.e("uni_modules/uni-forms/components/uni-forms-item/uni-forms-item")]).then(__webpack_require__.bind(null, /*! @/uni_modules/uni-forms/components/uni-forms-item/uni-forms-item.vue */ 107))
     },
     uniEasyinput: function () {
-      return __webpack_require__.e(/*! import() | uni_modules/uni-easyinput/components/uni-easyinput/uni-easyinput */ "uni_modules/uni-easyinput/components/uni-easyinput/uni-easyinput").then(__webpack_require__.bind(null, /*! @/uni_modules/uni-easyinput/components/uni-easyinput/uni-easyinput.vue */ 108))
+      return __webpack_require__.e(/*! import() | uni_modules/uni-easyinput/components/uni-easyinput/uni-easyinput */ "uni_modules/uni-easyinput/components/uni-easyinput/uni-easyinput").then(__webpack_require__.bind(null, /*! @/uni_modules/uni-easyinput/components/uni-easyinput/uni-easyinput.vue */ 114))
     },
   }
 } catch (e) {

+ 7 - 0
errand/errand_app/unpackage/dist/dev/mp-weixin/project.private.config.json

@@ -8,6 +8,13 @@
   "condition": {
     "miniprogram": {
       "list": [
+        {
+          "name": "下单",
+          "pathName": "pages/preOrder/preOrder",
+          "query": "",
+          "launchMode": "default",
+          "scene": null
+        },
         {
           "name": "首页",
           "pathName": "pages/index/index",

+ 7 - 0
errand/errand_app/unpackage/dist/dev/mp-weixin/static/css/global.css

@@ -15,4 +15,11 @@ page {
 	padding: 20rpx;
 	border-radius: 10rpx;
 	box-shadow: 0 4rpx 20rpx rgba(0, 0, 0, .1);
+}
+
+.my-button-primary{
+	height: 70rpx;
+	line-height: 70rpx;
+	background-color: #006eff !important;
+	font-size: 28rpx;
 }

File diff suppressed because it is too large
+ 468 - 0
errand/errand_app/unpackage/dist/dev/mp-weixin/uni_modules/uni-data-select/components/uni-data-select/uni-data-select.js


+ 6 - 0
errand/errand_app/unpackage/dist/dev/mp-weixin/uni_modules/uni-data-select/components/uni-data-select/uni-data-select.json

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

+ 1 - 0
errand/errand_app/unpackage/dist/dev/mp-weixin/uni_modules/uni-data-select/components/uni-data-select/uni-data-select.wxml

@@ -0,0 +1 @@
+<view class="uni-stat__select"><block wx:if="{{label}}"><label class="uni-label-text hide-on-phone _span">{{label+':'}}</label></block><view class="{{['uni-stat-box',(current)?'uni-stat__actived':'']}}"><view class="{{['uni-select',(disabled)?'uni-select--disabled':'']}}"><view data-event-opts="{{[['tap',[['toggleSelector',['$event']]]]]}}" class="uni-select__input-box" bindtap="__e"><block wx:if="{{current}}"><view class="uni-select__input-text">{{current}}</view></block><block wx:else><view class="uni-select__input-text uni-select__input-placeholder">{{typePlaceholder}}</view></block><block wx:if="{{current&&clear&&!disabled}}"><view data-event-opts="{{[['tap',[['clearVal',['$event']]]]]}}" catchtap="__e"><uni-icons vue-id="011c9238-1" type="clear" color="#c0c4cc" size="24" bind:__l="__l"></uni-icons></view></block><block wx:else><view><uni-icons vue-id="011c9238-2" type="{{showSelector?'top':'bottom'}}" size="14" color="#999" bind:__l="__l"></uni-icons></view></block></view><block wx:if="{{showSelector}}"><view data-event-opts="{{[['tap',[['toggleSelector',['$event']]]]]}}" class="uni-select--mask" bindtap="__e"></view></block><block wx:if="{{showSelector}}"><view class="uni-select__selector"><view class="uni-popper__arrow"></view><scroll-view class="uni-select__selector-scroll" scroll-y="true"><block wx:if="{{$root.g0===0}}"><view class="uni-select__selector-empty"><text>{{emptyTips}}</text></view></block><block wx:else><block wx:for="{{$root.l0}}" wx:for-item="item" wx:for-index="index" wx:key="index"><view data-event-opts="{{[['tap',[['change',['$0'],[[['mixinDatacomResData','',index]]]]]]]}}" class="uni-select__selector-item" bindtap="__e"><text class="{{[(item.$orig.disable)?'uni-select__selector__disabled':'']}}">{{item.m0}}</text></view></block></block></scroll-view></view></block></view></view></view>

+ 185 - 0
errand/errand_app/unpackage/dist/dev/mp-weixin/uni_modules/uni-data-select/components/uni-data-select/uni-data-select.wxss

@@ -0,0 +1,185 @@
+@charset "UTF-8";
+/**
+ * 这里是uni-app内置的常用样式变量
+ *
+ * uni-app 官方扩展插件及插件市场(https://ext.dcloud.net.cn)上很多三方插件均使用了这些样式变量
+ * 如果你是插件开发者,建议你使用scss预处理,并在插件代码中直接使用这些变量(无需 import 这个文件),方便用户通过搭积木的方式开发整体风格一致的App
+ *
+ */
+/**
+ * 如果你是App开发者(插件使用者),你可以通过修改这些变量来定制自己的插件主题,实现自定义主题功能
+ *
+ * 如果你的项目同样使用了scss预处理,你也可以直接在你的 scss 代码中使用如下变量,同时无需 import 这个文件
+ */
+/* 颜色变量 */
+/* 行为相关颜色 */
+/* 文字基本颜色 */
+/* 背景颜色 */
+/* 边框颜色 */
+/* 尺寸变量 */
+/* 文字尺寸 */
+/* 图片尺寸 */
+/* Border Radius */
+/* 水平间距 */
+/* 垂直间距 */
+/* 透明度 */
+/* 文章场景相关 */
+@media screen and (max-width: 500px) {
+.hide-on-phone {
+    display: none;
+}
+}
+.uni-stat__select {
+  display: flex;
+  align-items: center;
+  width: 100%;
+  flex: 1;
+  box-sizing: border-box;
+}
+.uni-stat-box {
+  width: 100%;
+  flex: 1;
+}
+.uni-stat__actived {
+  width: 100%;
+  flex: 1;
+}
+.uni-label-text {
+  font-size: 14px;
+  font-weight: bold;
+  color: #6a6a6a;
+  margin: auto 0;
+  margin-right: 5px;
+}
+.uni-select {
+  font-size: 14px;
+  border: 1px solid #e5e5e5;
+  box-sizing: border-box;
+  border-radius: 4px;
+  padding: 0 5px;
+  padding-left: 10px;
+  position: relative;
+  display: flex;
+  -webkit-user-select: none;
+          user-select: none;
+  flex-direction: row;
+  align-items: center;
+  border-bottom: solid 1px #e5e5e5;
+  width: 100%;
+  flex: 1;
+  height: 35px;
+}
+.uni-select--disabled {
+  background-color: #f5f7fa;
+  cursor: not-allowed;
+}
+.uni-select__label {
+  font-size: 16px;
+  height: 35px;
+  padding-right: 10px;
+  color: #909399;
+}
+.uni-select__input-box {
+  height: 35px;
+  position: relative;
+  display: flex;
+  flex: 1;
+  flex-direction: row;
+  align-items: center;
+}
+.uni-select__input {
+  flex: 1;
+  font-size: 14px;
+  height: 22px;
+  line-height: 22px;
+}
+.uni-select__input-plac {
+  font-size: 14px;
+  color: #909399;
+}
+.uni-select__selector {
+  box-sizing: border-box;
+  position: absolute;
+  top: calc(100% + 12px);
+  left: 0;
+  width: 100%;
+  background-color: #FFFFFF;
+  border: 1px solid #EBEEF5;
+  border-radius: 6px;
+  box-shadow: 0 2px 12px 0 rgba(0, 0, 0, 0.1);
+  z-index: 3;
+  padding: 4px 0;
+}
+.uni-select__selector-scroll {
+  max-height: 200px;
+  box-sizing: border-box;
+}
+.uni-select__selector-empty,
+.uni-select__selector-item {
+  display: flex;
+  cursor: pointer;
+  line-height: 35px;
+  font-size: 14px;
+  text-align: center;
+  /* border-bottom: solid 1px $uni-border-3; */
+  padding: 0px 10px;
+}
+.uni-select__selector-item:hover {
+  background-color: #f9f9f9;
+}
+.uni-select__selector-empty:last-child,
+.uni-select__selector-item:last-child {
+  border-bottom: none;
+}
+.uni-select__selector__disabled {
+  opacity: 0.4;
+  cursor: default;
+}
+/* picker 弹出层通用的指示小三角 */
+.uni-popper__arrow,
+.uni-popper__arrow::after {
+  position: absolute;
+  display: block;
+  width: 0;
+  height: 0;
+  border-color: transparent;
+  border-style: solid;
+  border-width: 6px;
+}
+.uni-popper__arrow {
+  -webkit-filter: drop-shadow(0 2px 12px rgba(0, 0, 0, 0.03));
+          filter: drop-shadow(0 2px 12px rgba(0, 0, 0, 0.03));
+  top: -6px;
+  left: 10%;
+  margin-right: 3px;
+  border-top-width: 0;
+  border-bottom-color: #EBEEF5;
+}
+.uni-popper__arrow::after {
+  content: " ";
+  top: 1px;
+  margin-left: -6px;
+  border-top-width: 0;
+  border-bottom-color: #fff;
+}
+.uni-select__input-text {
+  width: 100%;
+  color: #333;
+  white-space: nowrap;
+  text-overflow: ellipsis;
+  -o-text-overflow: ellipsis;
+  overflow: hidden;
+}
+.uni-select__input-placeholder {
+  color: #6a6a6a;
+  font-size: 12px;
+}
+.uni-select--mask {
+  position: fixed;
+  top: 0;
+  bottom: 0;
+  right: 0;
+  left: 0;
+  z-index: 2;
+}
+

File diff suppressed because it is too large
+ 12 - 12
errand/errand_app/unpackage/dist/dev/mp-weixin/uni_modules/uni-easyinput/components/uni-easyinput/uni-easyinput.js


+ 890 - 0
errand/errand_app/unpackage/dist/dev/mp-weixin/uni_modules/uni-file-picker/components/uni-file-picker/uni-file-picker.js

@@ -0,0 +1,890 @@
+(global["webpackJsonp"] = global["webpackJsonp"] || []).push([["uni_modules/uni-file-picker/components/uni-file-picker/uni-file-picker"],{
+
+/***/ 163:
+/*!**************************************************************************************************************************!*\
+  !*** D:/A_GraduationDesign/errand/errand_app/uni_modules/uni-file-picker/components/uni-file-picker/uni-file-picker.vue ***!
+  \**************************************************************************************************************************/
+/*! no static exports found */
+/***/ (function(module, __webpack_exports__, __webpack_require__) {
+
+"use strict";
+__webpack_require__.r(__webpack_exports__);
+/* harmony import */ var _uni_file_picker_vue_vue_type_template_id_363ace0e___WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ./uni-file-picker.vue?vue&type=template&id=363ace0e& */ 164);
+/* harmony import */ var _uni_file_picker_vue_vue_type_script_lang_js___WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ./uni-file-picker.vue?vue&type=script&lang=js& */ 166);
+/* harmony reexport (unknown) */ for(var __WEBPACK_IMPORT_KEY__ in _uni_file_picker_vue_vue_type_script_lang_js___WEBPACK_IMPORTED_MODULE_1__) if(["default"].indexOf(__WEBPACK_IMPORT_KEY__) < 0) (function(key) { __webpack_require__.d(__webpack_exports__, key, function() { return _uni_file_picker_vue_vue_type_script_lang_js___WEBPACK_IMPORTED_MODULE_1__[key]; }) }(__WEBPACK_IMPORT_KEY__));
+/* harmony import */ var _uni_file_picker_vue_vue_type_style_index_0_lang_css___WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! ./uni-file-picker.vue?vue&type=style&index=0&lang=css& */ 170);
+/* harmony import */ var _HBuilder_HBuilderX_plugins_uniapp_cli_node_modules_dcloudio_vue_cli_plugin_uni_packages_vue_loader_lib_runtime_componentNormalizer_js__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(/*! ../../../../../../../HBuilder/HBuilderX/plugins/uniapp-cli/node_modules/@dcloudio/vue-cli-plugin-uni/packages/vue-loader/lib/runtime/componentNormalizer.js */ 32);
+
+var renderjs
+
+
+
+
+
+/* normalize component */
+
+var component = Object(_HBuilder_HBuilderX_plugins_uniapp_cli_node_modules_dcloudio_vue_cli_plugin_uni_packages_vue_loader_lib_runtime_componentNormalizer_js__WEBPACK_IMPORTED_MODULE_3__["default"])(
+  _uni_file_picker_vue_vue_type_script_lang_js___WEBPACK_IMPORTED_MODULE_1__["default"],
+  _uni_file_picker_vue_vue_type_template_id_363ace0e___WEBPACK_IMPORTED_MODULE_0__["render"],
+  _uni_file_picker_vue_vue_type_template_id_363ace0e___WEBPACK_IMPORTED_MODULE_0__["staticRenderFns"],
+  false,
+  null,
+  null,
+  null,
+  false,
+  _uni_file_picker_vue_vue_type_template_id_363ace0e___WEBPACK_IMPORTED_MODULE_0__["components"],
+  renderjs
+)
+
+component.options.__file = "uni_modules/uni-file-picker/components/uni-file-picker/uni-file-picker.vue"
+/* harmony default export */ __webpack_exports__["default"] = (component.exports);
+
+/***/ }),
+
+/***/ 164:
+/*!*********************************************************************************************************************************************************!*\
+  !*** D:/A_GraduationDesign/errand/errand_app/uni_modules/uni-file-picker/components/uni-file-picker/uni-file-picker.vue?vue&type=template&id=363ace0e& ***!
+  \*********************************************************************************************************************************************************/
+/*! exports provided: render, staticRenderFns, recyclableRender, components */
+/***/ (function(module, __webpack_exports__, __webpack_require__) {
+
+"use strict";
+__webpack_require__.r(__webpack_exports__);
+/* harmony import */ var _HBuilder_HBuilderX_plugins_uniapp_cli_node_modules_dcloudio_vue_cli_plugin_uni_packages_vue_loader_lib_loaders_templateLoader_js_vue_loader_options_HBuilder_HBuilderX_plugins_uniapp_cli_node_modules_dcloudio_vue_cli_plugin_uni_packages_webpack_preprocess_loader_index_js_ref_17_0_HBuilder_HBuilderX_plugins_uniapp_cli_node_modules_dcloudio_webpack_uni_mp_loader_lib_template_js_HBuilder_HBuilderX_plugins_uniapp_cli_node_modules_dcloudio_vue_cli_plugin_uni_packages_webpack_uni_app_loader_page_meta_js_HBuilder_HBuilderX_plugins_uniapp_cli_node_modules_dcloudio_vue_cli_plugin_uni_packages_vue_loader_lib_index_js_vue_loader_options_HBuilder_HBuilderX_plugins_uniapp_cli_node_modules_dcloudio_webpack_uni_mp_loader_lib_style_js_uni_file_picker_vue_vue_type_template_id_363ace0e___WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! -!../../../../../../../HBuilder/HBuilderX/plugins/uniapp-cli/node_modules/@dcloudio/vue-cli-plugin-uni/packages/vue-loader/lib/loaders/templateLoader.js??vue-loader-options!../../../../../../../HBuilder/HBuilderX/plugins/uniapp-cli/node_modules/@dcloudio/vue-cli-plugin-uni/packages/webpack-preprocess-loader??ref--17-0!../../../../../../../HBuilder/HBuilderX/plugins/uniapp-cli/node_modules/@dcloudio/webpack-uni-mp-loader/lib/template.js!../../../../../../../HBuilder/HBuilderX/plugins/uniapp-cli/node_modules/@dcloudio/vue-cli-plugin-uni/packages/webpack-uni-app-loader/page-meta.js!../../../../../../../HBuilder/HBuilderX/plugins/uniapp-cli/node_modules/@dcloudio/vue-cli-plugin-uni/packages/vue-loader/lib??vue-loader-options!../../../../../../../HBuilder/HBuilderX/plugins/uniapp-cli/node_modules/@dcloudio/webpack-uni-mp-loader/lib/style.js!./uni-file-picker.vue?vue&type=template&id=363ace0e& */ 165);
+/* harmony reexport (safe) */ __webpack_require__.d(__webpack_exports__, "render", function() { return _HBuilder_HBuilderX_plugins_uniapp_cli_node_modules_dcloudio_vue_cli_plugin_uni_packages_vue_loader_lib_loaders_templateLoader_js_vue_loader_options_HBuilder_HBuilderX_plugins_uniapp_cli_node_modules_dcloudio_vue_cli_plugin_uni_packages_webpack_preprocess_loader_index_js_ref_17_0_HBuilder_HBuilderX_plugins_uniapp_cli_node_modules_dcloudio_webpack_uni_mp_loader_lib_template_js_HBuilder_HBuilderX_plugins_uniapp_cli_node_modules_dcloudio_vue_cli_plugin_uni_packages_webpack_uni_app_loader_page_meta_js_HBuilder_HBuilderX_plugins_uniapp_cli_node_modules_dcloudio_vue_cli_plugin_uni_packages_vue_loader_lib_index_js_vue_loader_options_HBuilder_HBuilderX_plugins_uniapp_cli_node_modules_dcloudio_webpack_uni_mp_loader_lib_style_js_uni_file_picker_vue_vue_type_template_id_363ace0e___WEBPACK_IMPORTED_MODULE_0__["render"]; });
+
+/* harmony reexport (safe) */ __webpack_require__.d(__webpack_exports__, "staticRenderFns", function() { return _HBuilder_HBuilderX_plugins_uniapp_cli_node_modules_dcloudio_vue_cli_plugin_uni_packages_vue_loader_lib_loaders_templateLoader_js_vue_loader_options_HBuilder_HBuilderX_plugins_uniapp_cli_node_modules_dcloudio_vue_cli_plugin_uni_packages_webpack_preprocess_loader_index_js_ref_17_0_HBuilder_HBuilderX_plugins_uniapp_cli_node_modules_dcloudio_webpack_uni_mp_loader_lib_template_js_HBuilder_HBuilderX_plugins_uniapp_cli_node_modules_dcloudio_vue_cli_plugin_uni_packages_webpack_uni_app_loader_page_meta_js_HBuilder_HBuilderX_plugins_uniapp_cli_node_modules_dcloudio_vue_cli_plugin_uni_packages_vue_loader_lib_index_js_vue_loader_options_HBuilder_HBuilderX_plugins_uniapp_cli_node_modules_dcloudio_webpack_uni_mp_loader_lib_style_js_uni_file_picker_vue_vue_type_template_id_363ace0e___WEBPACK_IMPORTED_MODULE_0__["staticRenderFns"]; });
+
+/* harmony reexport (safe) */ __webpack_require__.d(__webpack_exports__, "recyclableRender", function() { return _HBuilder_HBuilderX_plugins_uniapp_cli_node_modules_dcloudio_vue_cli_plugin_uni_packages_vue_loader_lib_loaders_templateLoader_js_vue_loader_options_HBuilder_HBuilderX_plugins_uniapp_cli_node_modules_dcloudio_vue_cli_plugin_uni_packages_webpack_preprocess_loader_index_js_ref_17_0_HBuilder_HBuilderX_plugins_uniapp_cli_node_modules_dcloudio_webpack_uni_mp_loader_lib_template_js_HBuilder_HBuilderX_plugins_uniapp_cli_node_modules_dcloudio_vue_cli_plugin_uni_packages_webpack_uni_app_loader_page_meta_js_HBuilder_HBuilderX_plugins_uniapp_cli_node_modules_dcloudio_vue_cli_plugin_uni_packages_vue_loader_lib_index_js_vue_loader_options_HBuilder_HBuilderX_plugins_uniapp_cli_node_modules_dcloudio_webpack_uni_mp_loader_lib_style_js_uni_file_picker_vue_vue_type_template_id_363ace0e___WEBPACK_IMPORTED_MODULE_0__["recyclableRender"]; });
+
+/* harmony reexport (safe) */ __webpack_require__.d(__webpack_exports__, "components", function() { return _HBuilder_HBuilderX_plugins_uniapp_cli_node_modules_dcloudio_vue_cli_plugin_uni_packages_vue_loader_lib_loaders_templateLoader_js_vue_loader_options_HBuilder_HBuilderX_plugins_uniapp_cli_node_modules_dcloudio_vue_cli_plugin_uni_packages_webpack_preprocess_loader_index_js_ref_17_0_HBuilder_HBuilderX_plugins_uniapp_cli_node_modules_dcloudio_webpack_uni_mp_loader_lib_template_js_HBuilder_HBuilderX_plugins_uniapp_cli_node_modules_dcloudio_vue_cli_plugin_uni_packages_webpack_uni_app_loader_page_meta_js_HBuilder_HBuilderX_plugins_uniapp_cli_node_modules_dcloudio_vue_cli_plugin_uni_packages_vue_loader_lib_index_js_vue_loader_options_HBuilder_HBuilderX_plugins_uniapp_cli_node_modules_dcloudio_webpack_uni_mp_loader_lib_style_js_uni_file_picker_vue_vue_type_template_id_363ace0e___WEBPACK_IMPORTED_MODULE_0__["components"]; });
+
+
+
+/***/ }),
+
+/***/ 165:
+/*!*********************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************!*\
+  !*** ./node_modules/@dcloudio/vue-cli-plugin-uni/packages/vue-loader/lib/loaders/templateLoader.js??vue-loader-options!./node_modules/@dcloudio/vue-cli-plugin-uni/packages/webpack-preprocess-loader??ref--17-0!./node_modules/@dcloudio/webpack-uni-mp-loader/lib/template.js!./node_modules/@dcloudio/vue-cli-plugin-uni/packages/webpack-uni-app-loader/page-meta.js!./node_modules/@dcloudio/vue-cli-plugin-uni/packages/vue-loader/lib??vue-loader-options!./node_modules/@dcloudio/webpack-uni-mp-loader/lib/style.js!D:/A_GraduationDesign/errand/errand_app/uni_modules/uni-file-picker/components/uni-file-picker/uni-file-picker.vue?vue&type=template&id=363ace0e& ***!
+  \*********************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************/
+/*! exports provided: render, staticRenderFns, recyclableRender, components */
+/***/ (function(module, __webpack_exports__, __webpack_require__) {
+
+"use strict";
+__webpack_require__.r(__webpack_exports__);
+/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "render", function() { return render; });
+/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "staticRenderFns", function() { return staticRenderFns; });
+/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "recyclableRender", function() { return recyclableRender; });
+/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "components", function() { return components; });
+var components
+var render = function () {
+  var _vm = this
+  var _h = _vm.$createElement
+  var _c = _vm._self._c || _h
+  var g0 = _vm.title ? _vm.filesList.length : null
+  _vm.$mp.data = Object.assign(
+    {},
+    {
+      $root: {
+        g0: g0,
+      },
+    }
+  )
+}
+var recyclableRender = false
+var staticRenderFns = []
+render._withStripped = true
+
+
+
+/***/ }),
+
+/***/ 166:
+/*!***************************************************************************************************************************************************!*\
+  !*** D:/A_GraduationDesign/errand/errand_app/uni_modules/uni-file-picker/components/uni-file-picker/uni-file-picker.vue?vue&type=script&lang=js& ***!
+  \***************************************************************************************************************************************************/
+/*! no static exports found */
+/***/ (function(module, __webpack_exports__, __webpack_require__) {
+
+"use strict";
+__webpack_require__.r(__webpack_exports__);
+/* harmony import */ var _HBuilder_HBuilderX_plugins_uniapp_cli_node_modules_babel_loader_lib_index_js_HBuilder_HBuilderX_plugins_uniapp_cli_node_modules_dcloudio_vue_cli_plugin_uni_packages_webpack_preprocess_loader_index_js_ref_13_1_HBuilder_HBuilderX_plugins_uniapp_cli_node_modules_dcloudio_webpack_uni_mp_loader_lib_script_js_HBuilder_HBuilderX_plugins_uniapp_cli_node_modules_dcloudio_vue_cli_plugin_uni_packages_vue_loader_lib_index_js_vue_loader_options_HBuilder_HBuilderX_plugins_uniapp_cli_node_modules_dcloudio_webpack_uni_mp_loader_lib_style_js_uni_file_picker_vue_vue_type_script_lang_js___WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! -!../../../../../../../HBuilder/HBuilderX/plugins/uniapp-cli/node_modules/babel-loader/lib!../../../../../../../HBuilder/HBuilderX/plugins/uniapp-cli/node_modules/@dcloudio/vue-cli-plugin-uni/packages/webpack-preprocess-loader??ref--13-1!../../../../../../../HBuilder/HBuilderX/plugins/uniapp-cli/node_modules/@dcloudio/webpack-uni-mp-loader/lib/script.js!../../../../../../../HBuilder/HBuilderX/plugins/uniapp-cli/node_modules/@dcloudio/vue-cli-plugin-uni/packages/vue-loader/lib??vue-loader-options!../../../../../../../HBuilder/HBuilderX/plugins/uniapp-cli/node_modules/@dcloudio/webpack-uni-mp-loader/lib/style.js!./uni-file-picker.vue?vue&type=script&lang=js& */ 167);
+/* harmony import */ var _HBuilder_HBuilderX_plugins_uniapp_cli_node_modules_babel_loader_lib_index_js_HBuilder_HBuilderX_plugins_uniapp_cli_node_modules_dcloudio_vue_cli_plugin_uni_packages_webpack_preprocess_loader_index_js_ref_13_1_HBuilder_HBuilderX_plugins_uniapp_cli_node_modules_dcloudio_webpack_uni_mp_loader_lib_script_js_HBuilder_HBuilderX_plugins_uniapp_cli_node_modules_dcloudio_vue_cli_plugin_uni_packages_vue_loader_lib_index_js_vue_loader_options_HBuilder_HBuilderX_plugins_uniapp_cli_node_modules_dcloudio_webpack_uni_mp_loader_lib_style_js_uni_file_picker_vue_vue_type_script_lang_js___WEBPACK_IMPORTED_MODULE_0___default = /*#__PURE__*/__webpack_require__.n(_HBuilder_HBuilderX_plugins_uniapp_cli_node_modules_babel_loader_lib_index_js_HBuilder_HBuilderX_plugins_uniapp_cli_node_modules_dcloudio_vue_cli_plugin_uni_packages_webpack_preprocess_loader_index_js_ref_13_1_HBuilder_HBuilderX_plugins_uniapp_cli_node_modules_dcloudio_webpack_uni_mp_loader_lib_script_js_HBuilder_HBuilderX_plugins_uniapp_cli_node_modules_dcloudio_vue_cli_plugin_uni_packages_vue_loader_lib_index_js_vue_loader_options_HBuilder_HBuilderX_plugins_uniapp_cli_node_modules_dcloudio_webpack_uni_mp_loader_lib_style_js_uni_file_picker_vue_vue_type_script_lang_js___WEBPACK_IMPORTED_MODULE_0__);
+/* harmony reexport (unknown) */ for(var __WEBPACK_IMPORT_KEY__ in _HBuilder_HBuilderX_plugins_uniapp_cli_node_modules_babel_loader_lib_index_js_HBuilder_HBuilderX_plugins_uniapp_cli_node_modules_dcloudio_vue_cli_plugin_uni_packages_webpack_preprocess_loader_index_js_ref_13_1_HBuilder_HBuilderX_plugins_uniapp_cli_node_modules_dcloudio_webpack_uni_mp_loader_lib_script_js_HBuilder_HBuilderX_plugins_uniapp_cli_node_modules_dcloudio_vue_cli_plugin_uni_packages_vue_loader_lib_index_js_vue_loader_options_HBuilder_HBuilderX_plugins_uniapp_cli_node_modules_dcloudio_webpack_uni_mp_loader_lib_style_js_uni_file_picker_vue_vue_type_script_lang_js___WEBPACK_IMPORTED_MODULE_0__) if(["default"].indexOf(__WEBPACK_IMPORT_KEY__) < 0) (function(key) { __webpack_require__.d(__webpack_exports__, key, function() { return _HBuilder_HBuilderX_plugins_uniapp_cli_node_modules_babel_loader_lib_index_js_HBuilder_HBuilderX_plugins_uniapp_cli_node_modules_dcloudio_vue_cli_plugin_uni_packages_webpack_preprocess_loader_index_js_ref_13_1_HBuilder_HBuilderX_plugins_uniapp_cli_node_modules_dcloudio_webpack_uni_mp_loader_lib_script_js_HBuilder_HBuilderX_plugins_uniapp_cli_node_modules_dcloudio_vue_cli_plugin_uni_packages_vue_loader_lib_index_js_vue_loader_options_HBuilder_HBuilderX_plugins_uniapp_cli_node_modules_dcloudio_webpack_uni_mp_loader_lib_style_js_uni_file_picker_vue_vue_type_script_lang_js___WEBPACK_IMPORTED_MODULE_0__[key]; }) }(__WEBPACK_IMPORT_KEY__));
+ /* harmony default export */ __webpack_exports__["default"] = (_HBuilder_HBuilderX_plugins_uniapp_cli_node_modules_babel_loader_lib_index_js_HBuilder_HBuilderX_plugins_uniapp_cli_node_modules_dcloudio_vue_cli_plugin_uni_packages_webpack_preprocess_loader_index_js_ref_13_1_HBuilder_HBuilderX_plugins_uniapp_cli_node_modules_dcloudio_webpack_uni_mp_loader_lib_script_js_HBuilder_HBuilderX_plugins_uniapp_cli_node_modules_dcloudio_vue_cli_plugin_uni_packages_vue_loader_lib_index_js_vue_loader_options_HBuilder_HBuilderX_plugins_uniapp_cli_node_modules_dcloudio_webpack_uni_mp_loader_lib_style_js_uni_file_picker_vue_vue_type_script_lang_js___WEBPACK_IMPORTED_MODULE_0___default.a); 
+
+/***/ }),
+
+/***/ 167:
+/*!**********************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************!*\
+  !*** ./node_modules/babel-loader/lib!./node_modules/@dcloudio/vue-cli-plugin-uni/packages/webpack-preprocess-loader??ref--13-1!./node_modules/@dcloudio/webpack-uni-mp-loader/lib/script.js!./node_modules/@dcloudio/vue-cli-plugin-uni/packages/vue-loader/lib??vue-loader-options!./node_modules/@dcloudio/webpack-uni-mp-loader/lib/style.js!D:/A_GraduationDesign/errand/errand_app/uni_modules/uni-file-picker/components/uni-file-picker/uni-file-picker.vue?vue&type=script&lang=js& ***!
+  \**********************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************/
+/*! no static exports found */
+/***/ (function(module, exports, __webpack_require__) {
+
+"use strict";
+/* WEBPACK VAR INJECTION */(function(uniCloud, uni) {
+
+var _interopRequireDefault = __webpack_require__(/*! @babel/runtime/helpers/interopRequireDefault */ 4);
+Object.defineProperty(exports, "__esModule", {
+  value: true
+});
+exports.default = void 0;
+var _regenerator = _interopRequireDefault(__webpack_require__(/*! @babel/runtime/regenerator */ 96));
+var _toConsumableArray2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime/helpers/toConsumableArray */ 18));
+var _defineProperty2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime/helpers/defineProperty */ 11));
+var _asyncToGenerator2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime/helpers/asyncToGenerator */ 98));
+var _chooseAndUploadFile = __webpack_require__(/*! ./choose-and-upload-file.js */ 168);
+var _utils = __webpack_require__(/*! ./utils.js */ 169);
+function ownKeys(object, enumerableOnly) { var keys = Object.keys(object); if (Object.getOwnPropertySymbols) { var symbols = Object.getOwnPropertySymbols(object); enumerableOnly && (symbols = symbols.filter(function (sym) { return Object.getOwnPropertyDescriptor(object, sym).enumerable; })), keys.push.apply(keys, symbols); } return keys; }
+function _objectSpread(target) { for (var i = 1; i < arguments.length; i++) { var source = null != arguments[i] ? arguments[i] : {}; i % 2 ? ownKeys(Object(source), !0).forEach(function (key) { (0, _defineProperty2.default)(target, key, source[key]); }) : Object.getOwnPropertyDescriptors ? Object.defineProperties(target, Object.getOwnPropertyDescriptors(source)) : ownKeys(Object(source)).forEach(function (key) { Object.defineProperty(target, key, Object.getOwnPropertyDescriptor(source, key)); }); } return target; }
+var uploadImage = function uploadImage() {
+  __webpack_require__.e(/*! require.ensure | uni_modules/uni-file-picker/components/uni-file-picker/upload-image */ "uni_modules/uni-file-picker/components/uni-file-picker/upload-image").then((function () {
+    return resolve(__webpack_require__(/*! ./upload-image.vue */ 173));
+  }).bind(null, __webpack_require__)).catch(__webpack_require__.oe);
+};
+var uploadFile = function uploadFile() {
+  __webpack_require__.e(/*! require.ensure | uni_modules/uni-file-picker/components/uni-file-picker/upload-file */ "uni_modules/uni-file-picker/components/uni-file-picker/upload-file").then((function () {
+    return resolve(__webpack_require__(/*! ./upload-file.vue */ 180));
+  }).bind(null, __webpack_require__)).catch(__webpack_require__.oe);
+};
+var fileInput = null;
+/**
+ * FilePicker 文件选择上传
+ * @description 文件选择上传组件,可以选择图片、视频等任意文件并上传到当前绑定的服务空间
+ * @tutorial https://ext.dcloud.net.cn/plugin?id=4079
+ * @property {Object|Array}	value	组件数据,通常用来回显 ,类型由return-type属性决定
+ * @property {Boolean}	disabled = [true|false]	组件禁用
+ * 	@value true 	禁用
+ * 	@value false 	取消禁用
+ * @property {Boolean}	readonly = [true|false]	组件只读,不可选择,不显示进度,不显示删除按钮
+ * 	@value true 	只读
+ * 	@value false 	取消只读
+ * @property {String}	return-type = [array|object]	限制 value 格式,当为 object 时 ,组件只能单选,且会覆盖
+ * 	@value array	规定 value 属性的类型为数组
+ * 	@value object	规定 value 属性的类型为对象
+ * @property {Boolean}	disable-preview = [true|false]	禁用图片预览,仅 mode:grid 时生效
+ * 	@value true 	禁用图片预览
+ * 	@value false 	取消禁用图片预览
+ * @property {Boolean}	del-icon = [true|false]	是否显示删除按钮
+ * 	@value true 	显示删除按钮
+ * 	@value false 	不显示删除按钮
+ * @property {Boolean}	auto-upload = [true|false]	是否自动上传,值为true则只触发@select,可自行上传
+ * 	@value true 	自动上传
+ * 	@value false 	取消自动上传
+ * @property {Number|String}	limit	最大选择个数 ,h5 会自动忽略多选的部分
+ * @property {String}	title	组件标题,右侧显示上传计数
+ * @property {String}	mode = [list|grid]	选择文件后的文件列表样式
+ * 	@value list 	列表显示
+ * 	@value grid 	宫格显示
+ * @property {String}	file-mediatype = [image|video|all]	选择文件类型
+ * 	@value image	只选择图片
+ * 	@value video	只选择视频
+ * 	@value all		选择所有文件
+ * @property {Array}	file-extname	选择文件后缀,根据 file-mediatype 属性而不同
+ * @property {Object}	list-style	mode:list 时的样式
+ * @property {Object}	image-styles	选择文件后缀,根据 file-mediatype 属性而不同
+ * @event {Function} select 	选择文件后触发
+ * @event {Function} progress 文件上传时触发
+ * @event {Function} success 	上传成功触发
+ * @event {Function} fail 		上传失败触发
+ * @event {Function} delete 	文件从列表移除时触发
+ */
+var _default2 = {
+  name: 'uniFilePicker',
+  components: {
+    uploadImage: uploadImage,
+    uploadFile: uploadFile
+  },
+  options: {
+    virtualHost: true
+  },
+  emits: ['select', 'success', 'fail', 'progress', 'delete', 'update:modelValue', 'input'],
+  props: {
+    value: {
+      type: [Array, Object],
+      default: function _default() {
+        return [];
+      }
+    },
+    disabled: {
+      type: Boolean,
+      default: false
+    },
+    disablePreview: {
+      type: Boolean,
+      default: false
+    },
+    delIcon: {
+      type: Boolean,
+      default: true
+    },
+    // 自动上传
+    autoUpload: {
+      type: Boolean,
+      default: true
+    },
+    // 最大选择个数 ,h5只能限制单选或是多选
+    limit: {
+      type: [Number, String],
+      default: 9
+    },
+    // 列表样式 grid | list | list-card
+    mode: {
+      type: String,
+      default: 'grid'
+    },
+    // 选择文件类型  image/video/all
+    fileMediatype: {
+      type: String,
+      default: 'image'
+    },
+    // 文件类型筛选
+    fileExtname: {
+      type: [Array, String],
+      default: function _default() {
+        return [];
+      }
+    },
+    title: {
+      type: String,
+      default: ''
+    },
+    listStyles: {
+      type: Object,
+      default: function _default() {
+        return {
+          // 是否显示边框
+          border: true,
+          // 是否显示分隔线
+          dividline: true,
+          // 线条样式
+          borderStyle: {}
+        };
+      }
+    },
+    imageStyles: {
+      type: Object,
+      default: function _default() {
+        return {
+          width: 'auto',
+          height: 'auto'
+        };
+      }
+    },
+    readonly: {
+      type: Boolean,
+      default: false
+    },
+    returnType: {
+      type: String,
+      default: 'array'
+    },
+    sizeType: {
+      type: Array,
+      default: function _default() {
+        return ['original', 'compressed'];
+      }
+    },
+    sourceType: {
+      type: Array,
+      default: function _default() {
+        return ['album', 'camera'];
+      }
+    }
+  },
+  data: function data() {
+    return {
+      files: [],
+      localValue: []
+    };
+  },
+  watch: {
+    value: {
+      handler: function handler(newVal, oldVal) {
+        this.setValue(newVal, oldVal);
+      },
+      immediate: true
+    }
+  },
+  computed: {
+    filesList: function filesList() {
+      var files = [];
+      this.files.forEach(function (v) {
+        files.push(v);
+      });
+      return files;
+    },
+    showType: function showType() {
+      if (this.fileMediatype === 'image') {
+        return this.mode;
+      }
+      return 'list';
+    },
+    limitLength: function limitLength() {
+      if (this.returnType === 'object') {
+        return 1;
+      }
+      if (!this.limit) {
+        return 1;
+      }
+      if (this.limit >= 9) {
+        return 9;
+      }
+      return this.limit;
+    }
+  },
+  created: function created() {
+    // TODO 兼容不开通服务空间的情况
+    if (!(uniCloud.config && uniCloud.config.provider)) {
+      this.noSpace = true;
+      uniCloud.chooseAndUploadFile = _chooseAndUploadFile.chooseAndUploadFile;
+    }
+    this.form = this.getForm('uniForms');
+    this.formItem = this.getForm('uniFormsItem');
+    if (this.form && this.formItem) {
+      if (this.formItem.name) {
+        this.rename = this.formItem.name;
+        this.form.inputChildrens.push(this);
+      }
+    }
+  },
+  methods: {
+    /**
+     * 公开用户使用,清空文件
+     * @param {Object} index
+     */
+    clearFiles: function clearFiles(index) {
+      var _this = this;
+      if (index !== 0 && !index) {
+        this.files = [];
+        this.$nextTick(function () {
+          _this.setEmit();
+        });
+      } else {
+        this.files.splice(index, 1);
+      }
+      this.$nextTick(function () {
+        _this.setEmit();
+      });
+    },
+    /**
+     * 公开用户使用,继续上传
+     */
+    upload: function upload() {
+      var files = [];
+      this.files.forEach(function (v, index) {
+        if (v.status === 'ready' || v.status === 'error') {
+          files.push(Object.assign({}, v));
+        }
+      });
+      return this.uploadFiles(files);
+    },
+    setValue: function setValue(newVal, oldVal) {
+      var _this2 = this;
+      return (0, _asyncToGenerator2.default)( /*#__PURE__*/_regenerator.default.mark(function _callee2() {
+        var newData, i, v, filesData;
+        return _regenerator.default.wrap(function _callee2$(_context2) {
+          while (1) {
+            switch (_context2.prev = _context2.next) {
+              case 0:
+                newData = /*#__PURE__*/function () {
+                  var _ref = (0, _asyncToGenerator2.default)( /*#__PURE__*/_regenerator.default.mark(function _callee(v) {
+                    var reg, url;
+                    return _regenerator.default.wrap(function _callee$(_context) {
+                      while (1) {
+                        switch (_context.prev = _context.next) {
+                          case 0:
+                            reg = /cloud:\/\/([\w.]+\/?)\S*/;
+                            url = '';
+                            if (v.fileID) {
+                              url = v.fileID;
+                            } else {
+                              url = v.url;
+                            }
+                            if (!reg.test(url)) {
+                              _context.next = 8;
+                              break;
+                            }
+                            v.fileID = url;
+                            _context.next = 7;
+                            return _this2.getTempFileURL(url);
+                          case 7:
+                            v.url = _context.sent;
+                          case 8:
+                            if (v.url) v.path = v.url;
+                            return _context.abrupt("return", v);
+                          case 10:
+                          case "end":
+                            return _context.stop();
+                        }
+                      }
+                    }, _callee);
+                  }));
+                  return function newData(_x) {
+                    return _ref.apply(this, arguments);
+                  };
+                }();
+                if (!(_this2.returnType === 'object')) {
+                  _context2.next = 10;
+                  break;
+                }
+                if (!newVal) {
+                  _context2.next = 7;
+                  break;
+                }
+                _context2.next = 5;
+                return newData(newVal);
+              case 5:
+                _context2.next = 8;
+                break;
+              case 7:
+                newVal = {};
+              case 8:
+                _context2.next = 19;
+                break;
+              case 10:
+                if (!newVal) newVal = [];
+                i = 0;
+              case 12:
+                if (!(i < newVal.length)) {
+                  _context2.next = 19;
+                  break;
+                }
+                v = newVal[i];
+                _context2.next = 16;
+                return newData(v);
+              case 16:
+                i++;
+                _context2.next = 12;
+                break;
+              case 19:
+                _this2.localValue = newVal;
+                if (_this2.form && _this2.formItem && !_this2.is_reset) {
+                  _this2.is_reset = false;
+                  _this2.formItem.setValue(_this2.localValue);
+                }
+                filesData = Object.keys(newVal).length > 0 ? newVal : [];
+                _this2.files = [].concat(filesData);
+              case 23:
+              case "end":
+                return _context2.stop();
+            }
+          }
+        }, _callee2);
+      }))();
+    },
+    /**
+     * 选择文件
+     */
+    choose: function choose() {
+      if (this.disabled) return;
+      if (this.files.length >= Number(this.limitLength) && this.showType !== 'grid' && this.returnType === 'array') {
+        uni.showToast({
+          title: "\u60A8\u6700\u591A\u9009\u62E9 ".concat(this.limitLength, " \u4E2A\u6587\u4EF6"),
+          icon: 'none'
+        });
+        return;
+      }
+      this.chooseFiles();
+    },
+    /**
+     * 选择文件并上传
+     */
+    chooseFiles: function chooseFiles() {
+      var _this3 = this;
+      var _extname = (0, _utils.get_extname)(this.fileExtname);
+      // 获取后缀
+      uniCloud.chooseAndUploadFile({
+        type: this.fileMediatype,
+        compressed: false,
+        sizeType: this.sizeType,
+        sourceType: this.sourceType,
+        // TODO 如果为空,video 有问题
+        extension: _extname.length > 0 ? _extname : undefined,
+        count: this.limitLength - this.files.length,
+        //默认9
+        onChooseFile: this.chooseFileCallback,
+        onUploadProgress: function onUploadProgress(progressEvent) {
+          _this3.setProgress(progressEvent, progressEvent.index);
+        }
+      }).then(function (result) {
+        _this3.setSuccessAndError(result.tempFiles);
+      }).catch(function (err) {
+        console.log('选择失败', err);
+      });
+    },
+    /**
+     * 选择文件回调
+     * @param {Object} res
+     */
+    chooseFileCallback: function chooseFileCallback(res) {
+      var _this4 = this;
+      return (0, _asyncToGenerator2.default)( /*#__PURE__*/_regenerator.default.mark(function _callee3() {
+        var _extname, is_one, _get_files_and_is_max, filePaths, files, currentData, i, filedata;
+        return _regenerator.default.wrap(function _callee3$(_context3) {
+          while (1) {
+            switch (_context3.prev = _context3.next) {
+              case 0:
+                _extname = (0, _utils.get_extname)(_this4.fileExtname);
+                is_one = Number(_this4.limitLength) === 1 && _this4.disablePreview && !_this4.disabled || _this4.returnType === 'object'; // 如果这有一个文件 ,需要清空本地缓存数据
+                if (is_one) {
+                  _this4.files = [];
+                }
+                _get_files_and_is_max = (0, _utils.get_files_and_is_max)(res, _extname), filePaths = _get_files_and_is_max.filePaths, files = _get_files_and_is_max.files;
+                if (!(_extname && _extname.length > 0)) {
+                  filePaths = res.tempFilePaths;
+                  files = res.tempFiles;
+                }
+                currentData = [];
+                i = 0;
+              case 7:
+                if (!(i < files.length)) {
+                  _context3.next = 21;
+                  break;
+                }
+                if (!(_this4.limitLength - _this4.files.length <= 0)) {
+                  _context3.next = 10;
+                  break;
+                }
+                return _context3.abrupt("break", 21);
+              case 10:
+                files[i].uuid = Date.now();
+                _context3.next = 13;
+                return (0, _utils.get_file_data)(files[i], _this4.fileMediatype);
+              case 13:
+                filedata = _context3.sent;
+                filedata.progress = 0;
+                filedata.status = 'ready';
+                _this4.files.push(filedata);
+                currentData.push(_objectSpread(_objectSpread({}, filedata), {}, {
+                  file: files[i]
+                }));
+              case 18:
+                i++;
+                _context3.next = 7;
+                break;
+              case 21:
+                _this4.$emit('select', {
+                  tempFiles: currentData,
+                  tempFilePaths: filePaths
+                });
+                res.tempFiles = files;
+                // 停止自动上传
+                if (!_this4.autoUpload || _this4.noSpace) {
+                  res.tempFiles = [];
+                }
+              case 24:
+              case "end":
+                return _context3.stop();
+            }
+          }
+        }, _callee3);
+      }))();
+    },
+    /**
+     * 批传
+     * @param {Object} e
+     */
+    uploadFiles: function uploadFiles(files) {
+      var _this5 = this;
+      files = [].concat(files);
+      return _chooseAndUploadFile.uploadCloudFiles.call(this, files, 5, function (res) {
+        _this5.setProgress(res, res.index, true);
+      }).then(function (result) {
+        _this5.setSuccessAndError(result);
+        return result;
+      }).catch(function (err) {
+        console.log(err);
+      });
+    },
+    /**
+     * 成功或失败
+     */
+    setSuccessAndError: function setSuccessAndError(res, fn) {
+      var _this6 = this;
+      return (0, _asyncToGenerator2.default)( /*#__PURE__*/_regenerator.default.mark(function _callee4() {
+        var successData, errorData, tempFilePath, errorTempFilePath, _loop, i, _ret;
+        return _regenerator.default.wrap(function _callee4$(_context5) {
+          while (1) {
+            switch (_context5.prev = _context5.next) {
+              case 0:
+                successData = [];
+                errorData = [];
+                tempFilePath = [];
+                errorTempFilePath = [];
+                _loop = /*#__PURE__*/_regenerator.default.mark(function _loop(i) {
+                  var item, index, reg;
+                  return _regenerator.default.wrap(function _loop$(_context4) {
+                    while (1) {
+                      switch (_context4.prev = _context4.next) {
+                        case 0:
+                          item = res[i];
+                          index = item.uuid ? _this6.files.findIndex(function (p) {
+                            return p.uuid === item.uuid;
+                          }) : item.index;
+                          if (!(index === -1 || !_this6.files)) {
+                            _context4.next = 4;
+                            break;
+                          }
+                          return _context4.abrupt("return", "break");
+                        case 4:
+                          if (!(item.errMsg === 'request:fail')) {
+                            _context4.next = 12;
+                            break;
+                          }
+                          _this6.files[index].url = item.path;
+                          _this6.files[index].status = 'error';
+                          _this6.files[index].errMsg = item.errMsg;
+                          // this.files[index].progress = -1
+                          errorData.push(_this6.files[index]);
+                          errorTempFilePath.push(_this6.files[index].url);
+                          _context4.next = 26;
+                          break;
+                        case 12:
+                          _this6.files[index].errMsg = '';
+                          _this6.files[index].fileID = item.url;
+                          reg = /cloud:\/\/([\w.]+\/?)\S*/;
+                          if (!reg.test(item.url)) {
+                            _context4.next = 21;
+                            break;
+                          }
+                          _context4.next = 18;
+                          return _this6.getTempFileURL(item.url);
+                        case 18:
+                          _this6.files[index].url = _context4.sent;
+                          _context4.next = 22;
+                          break;
+                        case 21:
+                          _this6.files[index].url = item.url;
+                        case 22:
+                          _this6.files[index].status = 'success';
+                          _this6.files[index].progress += 1;
+                          successData.push(_this6.files[index]);
+                          tempFilePath.push(_this6.files[index].fileID);
+                        case 26:
+                        case "end":
+                          return _context4.stop();
+                      }
+                    }
+                  }, _loop);
+                });
+                i = 0;
+              case 6:
+                if (!(i < res.length)) {
+                  _context5.next = 14;
+                  break;
+                }
+                return _context5.delegateYield(_loop(i), "t0", 8);
+              case 8:
+                _ret = _context5.t0;
+                if (!(_ret === "break")) {
+                  _context5.next = 11;
+                  break;
+                }
+                return _context5.abrupt("break", 14);
+              case 11:
+                i++;
+                _context5.next = 6;
+                break;
+              case 14:
+                if (successData.length > 0) {
+                  _this6.setEmit();
+                  // 状态改变返回
+                  _this6.$emit('success', {
+                    tempFiles: _this6.backObject(successData),
+                    tempFilePaths: tempFilePath
+                  });
+                }
+                if (errorData.length > 0) {
+                  _this6.$emit('fail', {
+                    tempFiles: _this6.backObject(errorData),
+                    tempFilePaths: errorTempFilePath
+                  });
+                }
+              case 16:
+              case "end":
+                return _context5.stop();
+            }
+          }
+        }, _callee4);
+      }))();
+    },
+    /**
+     * 获取进度
+     * @param {Object} progressEvent
+     * @param {Object} index
+     * @param {Object} type
+     */
+    setProgress: function setProgress(progressEvent, index, type) {
+      var fileLenth = this.files.length;
+      var percentNum = index / fileLenth * 100;
+      var percentCompleted = Math.round(progressEvent.loaded * 100 / progressEvent.total);
+      var idx = index;
+      if (!type) {
+        idx = this.files.findIndex(function (p) {
+          return p.uuid === progressEvent.tempFile.uuid;
+        });
+      }
+      if (idx === -1 || !this.files[idx]) return;
+      // fix by mehaotian 100 就会消失,-1 是为了让进度条消失
+      this.files[idx].progress = percentCompleted - 1;
+      // 上传中
+      this.$emit('progress', {
+        index: idx,
+        progress: parseInt(percentCompleted),
+        tempFile: this.files[idx]
+      });
+    },
+    /**
+     * 删除文件
+     * @param {Object} index
+     */
+    delFile: function delFile(index) {
+      var _this7 = this;
+      this.$emit('delete', {
+        tempFile: this.files[index],
+        tempFilePath: this.files[index].url
+      });
+      this.files.splice(index, 1);
+      this.$nextTick(function () {
+        _this7.setEmit();
+      });
+    },
+    /**
+     * 获取文件名和后缀
+     * @param {Object} name
+     */
+    getFileExt: function getFileExt(name) {
+      var last_len = name.lastIndexOf('.');
+      var len = name.length;
+      return {
+        name: name.substring(0, last_len),
+        ext: name.substring(last_len + 1, len)
+      };
+    },
+    /**
+     * 处理返回事件
+     */
+    setEmit: function setEmit() {
+      var data = [];
+      if (this.returnType === 'object') {
+        data = this.backObject(this.files)[0];
+        this.localValue = data ? data : null;
+      } else {
+        data = this.backObject(this.files);
+        if (!this.localValue) {
+          this.localValue = [];
+        }
+        this.localValue = (0, _toConsumableArray2.default)(data);
+      }
+      this.$emit('input', this.localValue);
+    },
+    /**
+     * 处理返回参数
+     * @param {Object} files
+     */
+    backObject: function backObject(files) {
+      var newFilesData = [];
+      files.forEach(function (v) {
+        newFilesData.push({
+          extname: v.extname,
+          fileType: v.fileType,
+          image: v.image,
+          name: v.name,
+          path: v.path,
+          size: v.size,
+          fileID: v.fileID,
+          url: v.url,
+          // 修改删除一个文件后不能再上传的bug, #694
+          uuid: v.uuid,
+          status: v.status,
+          cloudPath: v.cloudPath
+        });
+      });
+      return newFilesData;
+    },
+    getTempFileURL: function getTempFileURL(fileList) {
+      return (0, _asyncToGenerator2.default)( /*#__PURE__*/_regenerator.default.mark(function _callee5() {
+        var urls;
+        return _regenerator.default.wrap(function _callee5$(_context6) {
+          while (1) {
+            switch (_context6.prev = _context6.next) {
+              case 0:
+                fileList = {
+                  fileList: [].concat(fileList)
+                };
+                _context6.next = 3;
+                return uniCloud.getTempFileURL(fileList);
+              case 3:
+                urls = _context6.sent;
+                return _context6.abrupt("return", urls.fileList[0].tempFileURL || '');
+              case 5:
+              case "end":
+                return _context6.stop();
+            }
+          }
+        }, _callee5);
+      }))();
+    },
+    /**
+     * 获取父元素实例
+     */
+    getForm: function getForm() {
+      var name = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : 'uniForms';
+      var parent = this.$parent;
+      var parentName = parent.$options.name;
+      while (parentName !== name) {
+        parent = parent.$parent;
+        if (!parent) return false;
+        parentName = parent.$options.name;
+      }
+      return parent;
+    }
+  }
+};
+exports.default = _default2;
+/* WEBPACK VAR INJECTION */}.call(this, __webpack_require__(/*! ./node_modules/@dcloudio/vue-cli-plugin-uni/packages/uni-cloud/dist/index.js */ 156)["default"], __webpack_require__(/*! ./node_modules/@dcloudio/uni-mp-weixin/dist/index.js */ 2)["default"]))
+
+/***/ }),
+
+/***/ 170:
+/*!***********************************************************************************************************************************************************!*\
+  !*** D:/A_GraduationDesign/errand/errand_app/uni_modules/uni-file-picker/components/uni-file-picker/uni-file-picker.vue?vue&type=style&index=0&lang=css& ***!
+  \***********************************************************************************************************************************************************/
+/*! no static exports found */
+/***/ (function(module, __webpack_exports__, __webpack_require__) {
+
+"use strict";
+__webpack_require__.r(__webpack_exports__);
+/* harmony import */ var _HBuilder_HBuilderX_plugins_uniapp_cli_node_modules_mini_css_extract_plugin_dist_loader_js_ref_6_oneOf_1_0_HBuilder_HBuilderX_plugins_uniapp_cli_node_modules_css_loader_dist_cjs_js_ref_6_oneOf_1_1_HBuilder_HBuilderX_plugins_uniapp_cli_node_modules_dcloudio_vue_cli_plugin_uni_packages_vue_loader_lib_loaders_stylePostLoader_js_HBuilder_HBuilderX_plugins_uniapp_cli_node_modules_dcloudio_vue_cli_plugin_uni_packages_webpack_preprocess_loader_index_js_ref_6_oneOf_1_2_HBuilder_HBuilderX_plugins_uniapp_cli_node_modules_postcss_loader_src_index_js_ref_6_oneOf_1_3_HBuilder_HBuilderX_plugins_uniapp_cli_node_modules_dcloudio_vue_cli_plugin_uni_packages_vue_loader_lib_index_js_vue_loader_options_HBuilder_HBuilderX_plugins_uniapp_cli_node_modules_dcloudio_webpack_uni_mp_loader_lib_style_js_uni_file_picker_vue_vue_type_style_index_0_lang_css___WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! -!../../../../../../../HBuilder/HBuilderX/plugins/uniapp-cli/node_modules/mini-css-extract-plugin/dist/loader.js??ref--6-oneOf-1-0!../../../../../../../HBuilder/HBuilderX/plugins/uniapp-cli/node_modules/css-loader/dist/cjs.js??ref--6-oneOf-1-1!../../../../../../../HBuilder/HBuilderX/plugins/uniapp-cli/node_modules/@dcloudio/vue-cli-plugin-uni/packages/vue-loader/lib/loaders/stylePostLoader.js!../../../../../../../HBuilder/HBuilderX/plugins/uniapp-cli/node_modules/@dcloudio/vue-cli-plugin-uni/packages/webpack-preprocess-loader??ref--6-oneOf-1-2!../../../../../../../HBuilder/HBuilderX/plugins/uniapp-cli/node_modules/postcss-loader/src??ref--6-oneOf-1-3!../../../../../../../HBuilder/HBuilderX/plugins/uniapp-cli/node_modules/@dcloudio/vue-cli-plugin-uni/packages/vue-loader/lib??vue-loader-options!../../../../../../../HBuilder/HBuilderX/plugins/uniapp-cli/node_modules/@dcloudio/webpack-uni-mp-loader/lib/style.js!./uni-file-picker.vue?vue&type=style&index=0&lang=css& */ 171);
+/* harmony import */ var _HBuilder_HBuilderX_plugins_uniapp_cli_node_modules_mini_css_extract_plugin_dist_loader_js_ref_6_oneOf_1_0_HBuilder_HBuilderX_plugins_uniapp_cli_node_modules_css_loader_dist_cjs_js_ref_6_oneOf_1_1_HBuilder_HBuilderX_plugins_uniapp_cli_node_modules_dcloudio_vue_cli_plugin_uni_packages_vue_loader_lib_loaders_stylePostLoader_js_HBuilder_HBuilderX_plugins_uniapp_cli_node_modules_dcloudio_vue_cli_plugin_uni_packages_webpack_preprocess_loader_index_js_ref_6_oneOf_1_2_HBuilder_HBuilderX_plugins_uniapp_cli_node_modules_postcss_loader_src_index_js_ref_6_oneOf_1_3_HBuilder_HBuilderX_plugins_uniapp_cli_node_modules_dcloudio_vue_cli_plugin_uni_packages_vue_loader_lib_index_js_vue_loader_options_HBuilder_HBuilderX_plugins_uniapp_cli_node_modules_dcloudio_webpack_uni_mp_loader_lib_style_js_uni_file_picker_vue_vue_type_style_index_0_lang_css___WEBPACK_IMPORTED_MODULE_0___default = /*#__PURE__*/__webpack_require__.n(_HBuilder_HBuilderX_plugins_uniapp_cli_node_modules_mini_css_extract_plugin_dist_loader_js_ref_6_oneOf_1_0_HBuilder_HBuilderX_plugins_uniapp_cli_node_modules_css_loader_dist_cjs_js_ref_6_oneOf_1_1_HBuilder_HBuilderX_plugins_uniapp_cli_node_modules_dcloudio_vue_cli_plugin_uni_packages_vue_loader_lib_loaders_stylePostLoader_js_HBuilder_HBuilderX_plugins_uniapp_cli_node_modules_dcloudio_vue_cli_plugin_uni_packages_webpack_preprocess_loader_index_js_ref_6_oneOf_1_2_HBuilder_HBuilderX_plugins_uniapp_cli_node_modules_postcss_loader_src_index_js_ref_6_oneOf_1_3_HBuilder_HBuilderX_plugins_uniapp_cli_node_modules_dcloudio_vue_cli_plugin_uni_packages_vue_loader_lib_index_js_vue_loader_options_HBuilder_HBuilderX_plugins_uniapp_cli_node_modules_dcloudio_webpack_uni_mp_loader_lib_style_js_uni_file_picker_vue_vue_type_style_index_0_lang_css___WEBPACK_IMPORTED_MODULE_0__);
+/* harmony reexport (unknown) */ for(var __WEBPACK_IMPORT_KEY__ in _HBuilder_HBuilderX_plugins_uniapp_cli_node_modules_mini_css_extract_plugin_dist_loader_js_ref_6_oneOf_1_0_HBuilder_HBuilderX_plugins_uniapp_cli_node_modules_css_loader_dist_cjs_js_ref_6_oneOf_1_1_HBuilder_HBuilderX_plugins_uniapp_cli_node_modules_dcloudio_vue_cli_plugin_uni_packages_vue_loader_lib_loaders_stylePostLoader_js_HBuilder_HBuilderX_plugins_uniapp_cli_node_modules_dcloudio_vue_cli_plugin_uni_packages_webpack_preprocess_loader_index_js_ref_6_oneOf_1_2_HBuilder_HBuilderX_plugins_uniapp_cli_node_modules_postcss_loader_src_index_js_ref_6_oneOf_1_3_HBuilder_HBuilderX_plugins_uniapp_cli_node_modules_dcloudio_vue_cli_plugin_uni_packages_vue_loader_lib_index_js_vue_loader_options_HBuilder_HBuilderX_plugins_uniapp_cli_node_modules_dcloudio_webpack_uni_mp_loader_lib_style_js_uni_file_picker_vue_vue_type_style_index_0_lang_css___WEBPACK_IMPORTED_MODULE_0__) if(["default"].indexOf(__WEBPACK_IMPORT_KEY__) < 0) (function(key) { __webpack_require__.d(__webpack_exports__, key, function() { return _HBuilder_HBuilderX_plugins_uniapp_cli_node_modules_mini_css_extract_plugin_dist_loader_js_ref_6_oneOf_1_0_HBuilder_HBuilderX_plugins_uniapp_cli_node_modules_css_loader_dist_cjs_js_ref_6_oneOf_1_1_HBuilder_HBuilderX_plugins_uniapp_cli_node_modules_dcloudio_vue_cli_plugin_uni_packages_vue_loader_lib_loaders_stylePostLoader_js_HBuilder_HBuilderX_plugins_uniapp_cli_node_modules_dcloudio_vue_cli_plugin_uni_packages_webpack_preprocess_loader_index_js_ref_6_oneOf_1_2_HBuilder_HBuilderX_plugins_uniapp_cli_node_modules_postcss_loader_src_index_js_ref_6_oneOf_1_3_HBuilder_HBuilderX_plugins_uniapp_cli_node_modules_dcloudio_vue_cli_plugin_uni_packages_vue_loader_lib_index_js_vue_loader_options_HBuilder_HBuilderX_plugins_uniapp_cli_node_modules_dcloudio_webpack_uni_mp_loader_lib_style_js_uni_file_picker_vue_vue_type_style_index_0_lang_css___WEBPACK_IMPORTED_MODULE_0__[key]; }) }(__WEBPACK_IMPORT_KEY__));
+ /* harmony default export */ __webpack_exports__["default"] = (_HBuilder_HBuilderX_plugins_uniapp_cli_node_modules_mini_css_extract_plugin_dist_loader_js_ref_6_oneOf_1_0_HBuilder_HBuilderX_plugins_uniapp_cli_node_modules_css_loader_dist_cjs_js_ref_6_oneOf_1_1_HBuilder_HBuilderX_plugins_uniapp_cli_node_modules_dcloudio_vue_cli_plugin_uni_packages_vue_loader_lib_loaders_stylePostLoader_js_HBuilder_HBuilderX_plugins_uniapp_cli_node_modules_dcloudio_vue_cli_plugin_uni_packages_webpack_preprocess_loader_index_js_ref_6_oneOf_1_2_HBuilder_HBuilderX_plugins_uniapp_cli_node_modules_postcss_loader_src_index_js_ref_6_oneOf_1_3_HBuilder_HBuilderX_plugins_uniapp_cli_node_modules_dcloudio_vue_cli_plugin_uni_packages_vue_loader_lib_index_js_vue_loader_options_HBuilder_HBuilderX_plugins_uniapp_cli_node_modules_dcloudio_webpack_uni_mp_loader_lib_style_js_uni_file_picker_vue_vue_type_style_index_0_lang_css___WEBPACK_IMPORTED_MODULE_0___default.a); 
+
+/***/ }),
+
+/***/ 171:
+/*!***************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************!*\
+  !*** ./node_modules/mini-css-extract-plugin/dist/loader.js??ref--6-oneOf-1-0!./node_modules/css-loader/dist/cjs.js??ref--6-oneOf-1-1!./node_modules/@dcloudio/vue-cli-plugin-uni/packages/vue-loader/lib/loaders/stylePostLoader.js!./node_modules/@dcloudio/vue-cli-plugin-uni/packages/webpack-preprocess-loader??ref--6-oneOf-1-2!./node_modules/postcss-loader/src??ref--6-oneOf-1-3!./node_modules/@dcloudio/vue-cli-plugin-uni/packages/vue-loader/lib??vue-loader-options!./node_modules/@dcloudio/webpack-uni-mp-loader/lib/style.js!D:/A_GraduationDesign/errand/errand_app/uni_modules/uni-file-picker/components/uni-file-picker/uni-file-picker.vue?vue&type=style&index=0&lang=css& ***!
+  \***************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************/
+/*! no static exports found */
+/***/ (function(module, exports, __webpack_require__) {
+
+// extracted by mini-css-extract-plugin
+    if(false) { var cssReload; }
+  
+
+/***/ })
+
+}]);
+//# sourceMappingURL=../../../../../.sourcemap/mp-weixin/uni_modules/uni-file-picker/components/uni-file-picker/uni-file-picker.js.map
+;(global["webpackJsonp"] = global["webpackJsonp"] || []).push([
+    'uni_modules/uni-file-picker/components/uni-file-picker/uni-file-picker-create-component',
+    {
+        'uni_modules/uni-file-picker/components/uni-file-picker/uni-file-picker-create-component':(function(module, exports, __webpack_require__){
+            __webpack_require__('2')['createComponent'](__webpack_require__(163))
+        })
+    },
+    [['uni_modules/uni-file-picker/components/uni-file-picker/uni-file-picker-create-component']]
+]);

+ 7 - 0
errand/errand_app/unpackage/dist/dev/mp-weixin/uni_modules/uni-file-picker/components/uni-file-picker/uni-file-picker.json

@@ -0,0 +1,7 @@
+{
+  "usingComponents": {
+    "upload-image": "/uni_modules/uni-file-picker/components/uni-file-picker/upload-image",
+    "upload-file": "/uni_modules/uni-file-picker/components/uni-file-picker/upload-file"
+  },
+  "component": true
+}

+ 1 - 0
errand/errand_app/unpackage/dist/dev/mp-weixin/uni_modules/uni-file-picker/components/uni-file-picker/uni-file-picker.wxml

@@ -0,0 +1 @@
+<view class="uni-file-picker"><block wx:if="{{title}}"><view class="uni-file-picker__header"><text class="file-title">{{title}}</text><text class="file-count">{{$root.g0+"/"+limitLength}}</text></view></block><block wx:if="{{fileMediatype==='image'&&showType==='grid'}}"><upload-image vue-id="ddc11690-1" readonly="{{readonly}}" image-styles="{{imageStyles}}" files-list="{{filesList}}" limit="{{limitLength}}" disablePreview="{{disablePreview}}" delIcon="{{delIcon}}" data-event-opts="{{[['^uploadFiles',[['uploadFiles']]],['^choose',[['choose']]],['^delFile',[['delFile']]]]}}" bind:uploadFiles="__e" bind:choose="__e" bind:delFile="__e" bind:__l="__l" vue-slots="{{['default']}}"><block wx:if="{{$slots.default}}"><slot></slot></block><block wx:else><view class="is-add"><view class="icon-add"></view><view class="icon-add rotate"></view></view></block></upload-image></block><block wx:if="{{fileMediatype!=='image'||showType!=='grid'}}"><upload-file vue-id="ddc11690-2" readonly="{{readonly}}" list-styles="{{listStyles}}" files-list="{{filesList}}" showType="{{showType}}" delIcon="{{delIcon}}" data-event-opts="{{[['^uploadFiles',[['uploadFiles']]],['^choose',[['choose']]],['^delFile',[['delFile']]]]}}" bind:uploadFiles="__e" bind:choose="__e" bind:delFile="__e" bind:__l="__l" vue-slots="{{['default']}}"><block wx:if="{{$slots.default}}"><slot></slot></block><block wx:else><button type="primary" size="mini">选择文件</button></block></upload-file></block></view>

+ 44 - 0
errand/errand_app/unpackage/dist/dev/mp-weixin/uni_modules/uni-file-picker/components/uni-file-picker/uni-file-picker.wxss

@@ -0,0 +1,44 @@
+
+.uni-file-picker {
+
+	box-sizing: border-box;
+	overflow: hidden;
+	width: 100%;
+
+	flex: 1;
+}
+.uni-file-picker__header {
+	padding-top: 5px;
+	padding-bottom: 10px;
+
+	display: flex;
+
+	justify-content: space-between;
+}
+.file-title {
+	font-size: 14px;
+	color: #333;
+}
+.file-count {
+	font-size: 14px;
+	color: #999;
+}
+.is-add {
+
+	display: flex;
+
+	align-items: center;
+	justify-content: center;
+}
+.icon-add {
+	width: 50px;
+	height: 5px;
+	background-color: #f1f1f1;
+	border-radius: 2px;
+}
+.rotate {
+	position: absolute;
+	-webkit-transform: rotate(90deg);
+	        transform: rotate(90deg);
+}
+

File diff suppressed because it is too large
+ 313 - 0
errand/errand_app/unpackage/dist/dev/mp-weixin/uni_modules/uni-file-picker/components/uni-file-picker/upload-file.js


+ 4 - 0
errand/errand_app/unpackage/dist/dev/mp-weixin/uni_modules/uni-file-picker/components/uni-file-picker/upload-file.json

@@ -0,0 +1,4 @@
+{
+  "usingComponents": {},
+  "component": true
+}

+ 1 - 0
errand/errand_app/unpackage/dist/dev/mp-weixin/uni_modules/uni-file-picker/components/uni-file-picker/upload-file.wxml

@@ -0,0 +1 @@
+<view class="uni-file-picker__files"><block wx:if="{{!readonly}}"><view data-event-opts="{{[['tap',[['choose',['$event']]]]]}}" class="files-button" bindtap="__e"><slot></slot></view></block><block wx:if="{{$root.g0>0}}"><view class="uni-file-picker__lists is-text-box" style="{{(borderStyle)}}"><block wx:for="{{list}}" wx:for-item="item" wx:for-index="index" wx:key="index"><view class="{{['uni-file-picker__lists-box',(index!==0&&styles.dividline)?'files-border':'']}}" style="{{(index!==0&&styles.dividline&&borderLineStyle)}}"><view class="uni-file-picker__item"><view class="files__name">{{item.name}}</view><block wx:if="{{delIcon&&!readonly}}"><view data-event-opts="{{[['tap',[['delFile',[index]]]]]}}" class="icon-del-box icon-files" bindtap="__e"><view class="icon-del icon-files"></view><view class="icon-del rotate"></view></view></block></view><block wx:if="{{item.progress&&item.progress!==100||item.progress===0}}"><view class="file-picker__progress"><progress class="file-picker__progress-item" percent="{{item.progress===-1?0:item.progress}}" stroke-width="4" backgroundColor="{{item.errMsg?'#ff5a5f':'#EBEBEB'}}"></progress></view></block><block wx:if="{{item.status==='error'}}"><view data-event-opts="{{[['tap',[['uploadFiles',['$0',index],[[['list','',index]]]]]]]}}" class="file-picker__mask" catchtap="__e">点击重试</view></block></view></block></view></block></view>

+ 125 - 0
errand/errand_app/unpackage/dist/dev/mp-weixin/uni_modules/uni-file-picker/components/uni-file-picker/upload-file.wxss

@@ -0,0 +1,125 @@
+@charset "UTF-8";
+/**
+ * 这里是uni-app内置的常用样式变量
+ *
+ * uni-app 官方扩展插件及插件市场(https://ext.dcloud.net.cn)上很多三方插件均使用了这些样式变量
+ * 如果你是插件开发者,建议你使用scss预处理,并在插件代码中直接使用这些变量(无需 import 这个文件),方便用户通过搭积木的方式开发整体风格一致的App
+ *
+ */
+/**
+ * 如果你是App开发者(插件使用者),你可以通过修改这些变量来定制自己的插件主题,实现自定义主题功能
+ *
+ * 如果你的项目同样使用了scss预处理,你也可以直接在你的 scss 代码中使用如下变量,同时无需 import 这个文件
+ */
+/* 颜色变量 */
+/* 行为相关颜色 */
+/* 文字基本颜色 */
+/* 背景颜色 */
+/* 边框颜色 */
+/* 尺寸变量 */
+/* 文字尺寸 */
+/* 图片尺寸 */
+/* Border Radius */
+/* 水平间距 */
+/* 垂直间距 */
+/* 透明度 */
+/* 文章场景相关 */
+.uni-file-picker__files {
+  display: flex;
+  flex-direction: column;
+  justify-content: flex-start;
+}
+.uni-file-picker__lists {
+  position: relative;
+  margin-top: 5px;
+  overflow: hidden;
+}
+.file-picker__mask {
+  display: flex;
+  justify-content: center;
+  align-items: center;
+  position: absolute;
+  right: 0;
+  top: 0;
+  bottom: 0;
+  left: 0;
+  color: #fff;
+  font-size: 14px;
+  background-color: rgba(0, 0, 0, 0.4);
+}
+.uni-file-picker__lists-box {
+  position: relative;
+}
+.uni-file-picker__item {
+  display: flex;
+  align-items: center;
+  padding: 8px 10px;
+  padding-right: 5px;
+  padding-left: 10px;
+}
+.files-border {
+  border-top: 1px #eee solid;
+}
+.files__name {
+  flex: 1;
+  font-size: 14px;
+  color: #666;
+  margin-right: 25px;
+  word-break: break-all;
+  word-wrap: break-word;
+}
+.icon-files {
+  position: static;
+  background-color: initial;
+}
+.is-list-card {
+  border: 1px #eee solid;
+  margin-bottom: 5px;
+  border-radius: 5px;
+  box-shadow: 0 0 2px 0px rgba(0, 0, 0, 0.1);
+  padding: 5px;
+}
+.files__image {
+  width: 40px;
+  height: 40px;
+  margin-right: 10px;
+}
+.header-image {
+  width: 100%;
+  height: 100%;
+}
+.is-text-box {
+  border: 1px #eee solid;
+  border-radius: 5px;
+}
+.is-text-image {
+  width: 25px;
+  height: 25px;
+  margin-left: 5px;
+}
+.rotate {
+  position: absolute;
+  -webkit-transform: rotate(90deg);
+          transform: rotate(90deg);
+}
+.icon-del-box {
+  display: flex;
+  margin: auto 0;
+  align-items: center;
+  justify-content: center;
+  position: absolute;
+  top: 0px;
+  bottom: 0;
+  right: 5px;
+  height: 26px;
+  width: 26px;
+  z-index: 2;
+  -webkit-transform: rotate(-45deg);
+          transform: rotate(-45deg);
+}
+.icon-del {
+  width: 15px;
+  height: 1px;
+  background-color: #333;
+}
+

File diff suppressed because it is too large
+ 319 - 0
errand/errand_app/unpackage/dist/dev/mp-weixin/uni_modules/uni-file-picker/components/uni-file-picker/upload-image.js


+ 4 - 0
errand/errand_app/unpackage/dist/dev/mp-weixin/uni_modules/uni-file-picker/components/uni-file-picker/upload-image.json

@@ -0,0 +1,4 @@
+{
+  "usingComponents": {},
+  "component": true
+}

+ 1 - 0
errand/errand_app/unpackage/dist/dev/mp-weixin/uni_modules/uni-file-picker/components/uni-file-picker/upload-image.wxml

@@ -0,0 +1 @@
+<view class="uni-file-picker__container"><block wx:for="{{filesList}}" wx:for-item="item" wx:for-index="index" wx:key="index"><view class="file-picker__box" style="{{(boxStyle)}}"><view class="file-picker__box-content" style="{{(borderStyle)}}"><image class="file-image" src="{{item.url}}" mode="aspectFill" data-event-opts="{{[['tap',[['prviewImage',['$0',index],[[['filesList','',index]]]]]]]}}" catchtap="__e"></image><block wx:if="{{delIcon&&!readonly}}"><view data-event-opts="{{[['tap',[['delFile',[index]]]]]}}" class="icon-del-box" catchtap="__e"><view class="icon-del"></view><view class="icon-del rotate"></view></view></block><block wx:if="{{item.progress&&item.progress!==100||item.progress===0}}"><view class="file-picker__progress"><progress class="file-picker__progress-item" percent="{{item.progress===-1?0:item.progress}}" stroke-width="4" backgroundColor="{{item.errMsg?'#ff5a5f':'#EBEBEB'}}"></progress></view></block><block wx:if="{{item.errMsg}}"><view data-event-opts="{{[['tap',[['uploadFiles',['$0',index],[[['filesList','',index]]]]]]]}}" class="file-picker__mask" catchtap="__e">点击重试</view></block></view></view></block><block wx:if="{{$root.g0}}"><view class="file-picker__box" style="{{(boxStyle)}}"><view data-event-opts="{{[['tap',[['choose',['$event']]]]]}}" class="file-picker__box-content is-add" style="{{(borderStyle)}}" bindtap="__e"><block wx:if="{{$slots.default}}"><slot></slot></block><block wx:else><view class="icon-add"></view><view class="icon-add rotate"></view></block></view></view></block></view>

+ 116 - 0
errand/errand_app/unpackage/dist/dev/mp-weixin/uni_modules/uni-file-picker/components/uni-file-picker/upload-image.wxss

@@ -0,0 +1,116 @@
+@charset "UTF-8";
+/**
+ * 这里是uni-app内置的常用样式变量
+ *
+ * uni-app 官方扩展插件及插件市场(https://ext.dcloud.net.cn)上很多三方插件均使用了这些样式变量
+ * 如果你是插件开发者,建议你使用scss预处理,并在插件代码中直接使用这些变量(无需 import 这个文件),方便用户通过搭积木的方式开发整体风格一致的App
+ *
+ */
+/**
+ * 如果你是App开发者(插件使用者),你可以通过修改这些变量来定制自己的插件主题,实现自定义主题功能
+ *
+ * 如果你的项目同样使用了scss预处理,你也可以直接在你的 scss 代码中使用如下变量,同时无需 import 这个文件
+ */
+/* 颜色变量 */
+/* 行为相关颜色 */
+/* 文字基本颜色 */
+/* 背景颜色 */
+/* 边框颜色 */
+/* 尺寸变量 */
+/* 文字尺寸 */
+/* 图片尺寸 */
+/* Border Radius */
+/* 水平间距 */
+/* 垂直间距 */
+/* 透明度 */
+/* 文章场景相关 */
+.uni-file-picker__container {
+  display: flex;
+  box-sizing: border-box;
+  flex-wrap: wrap;
+  margin: -5px;
+}
+.file-picker__box {
+  position: relative;
+  width: 33.3%;
+  height: 0;
+  padding-top: 33.33%;
+  box-sizing: border-box;
+}
+.file-picker__box-content {
+  position: absolute;
+  top: 0;
+  right: 0;
+  bottom: 0;
+  left: 0;
+  margin: 5px;
+  border: 1px #eee solid;
+  border-radius: 5px;
+  overflow: hidden;
+}
+.file-picker__progress {
+  position: absolute;
+  bottom: 0;
+  left: 0;
+  right: 0;
+  /* border: 1px red solid; */
+  z-index: 2;
+}
+.file-picker__progress-item {
+  width: 100%;
+}
+.file-picker__mask {
+  display: flex;
+  justify-content: center;
+  align-items: center;
+  position: absolute;
+  right: 0;
+  top: 0;
+  bottom: 0;
+  left: 0;
+  color: #fff;
+  font-size: 12px;
+  background-color: rgba(0, 0, 0, 0.4);
+}
+.file-image {
+  width: 100%;
+  height: 100%;
+}
+.is-add {
+  display: flex;
+  align-items: center;
+  justify-content: center;
+}
+.icon-add {
+  width: 50px;
+  height: 5px;
+  background-color: #f1f1f1;
+  border-radius: 2px;
+}
+.rotate {
+  position: absolute;
+  -webkit-transform: rotate(90deg);
+          transform: rotate(90deg);
+}
+.icon-del-box {
+  display: flex;
+  align-items: center;
+  justify-content: center;
+  position: absolute;
+  top: 3px;
+  right: 3px;
+  height: 26px;
+  width: 26px;
+  border-radius: 50%;
+  background-color: rgba(0, 0, 0, 0.5);
+  z-index: 2;
+  -webkit-transform: rotate(-45deg);
+          transform: rotate(-45deg);
+}
+.icon-del {
+  width: 15px;
+  height: 2px;
+  background-color: #fff;
+  border-radius: 2px;
+}
+

File diff suppressed because it is too large
+ 13 - 13
errand/errand_app/unpackage/dist/dev/mp-weixin/uni_modules/uni-forms/components/uni-forms-item/uni-forms-item.js


File diff suppressed because it is too large
+ 9 - 1
errand/errand_app/unpackage/dist/dev/mp-weixin/uni_modules/uni-forms/components/uni-forms/uni-forms.js


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


File diff suppressed because it is too large
+ 12 - 12
errand/errand_app/unpackage/dist/dev/mp-weixin/uni_modules/uni-notice-bar/components/uni-notice-bar/uni-notice-bar.js


File diff suppressed because it is too large
+ 285 - 0
errand/errand_app/unpackage/dist/dev/mp-weixin/uni_modules/uni-number-box/components/uni-number-box/uni-number-box.js


+ 4 - 0
errand/errand_app/unpackage/dist/dev/mp-weixin/uni_modules/uni-number-box/components/uni-number-box/uni-number-box.json

@@ -0,0 +1,4 @@
+{
+  "usingComponents": {},
+  "component": true
+}

+ 1 - 0
errand/errand_app/unpackage/dist/dev/mp-weixin/uni_modules/uni-number-box/components/uni-number-box/uni-number-box.wxml

@@ -0,0 +1 @@
+<view class="uni-numbox"><view data-event-opts="{{[['tap',[['_calcValue',['minus']]]]]}}" class="uni-numbox__minus uni-numbox-btns" style="{{'background:'+(background)+';'}}" bindtap="__e"><text class="{{['uni-numbox--text',(inputValue<=min||disabled)?'uni-numbox--disabled':'']}}" style="{{'color:'+(color)+';'}}">-</text></view><input class="uni-numbox__value" style="{{'background:'+(background)+';'+('color:'+(color)+';')}}" disabled="{{disabled}}" type="number" data-event-opts="{{[['focus',[['_onFocus',['$event']]]],['blur',[['_onBlur',['$event']]]],['input',[['__set_model',['','inputValue','$event',[]]]]]]}}" value="{{inputValue}}" bindfocus="__e" bindblur="__e" bindinput="__e"/><view data-event-opts="{{[['tap',[['_calcValue',['plus']]]]]}}" class="uni-numbox__plus uni-numbox-btns" style="{{'background:'+(background)+';'}}" bindtap="__e"><text class="{{['uni-numbox--text',(inputValue>=max||disabled)?'uni-numbox--disabled':'']}}" style="{{'color:'+(color)+';'}}">+</text></view></view>

+ 67 - 0
errand/errand_app/unpackage/dist/dev/mp-weixin/uni_modules/uni-number-box/components/uni-number-box/uni-number-box.wxss

@@ -0,0 +1,67 @@
+@charset "UTF-8";
+/**
+ * 这里是uni-app内置的常用样式变量
+ *
+ * uni-app 官方扩展插件及插件市场(https://ext.dcloud.net.cn)上很多三方插件均使用了这些样式变量
+ * 如果你是插件开发者,建议你使用scss预处理,并在插件代码中直接使用这些变量(无需 import 这个文件),方便用户通过搭积木的方式开发整体风格一致的App
+ *
+ */
+/**
+ * 如果你是App开发者(插件使用者),你可以通过修改这些变量来定制自己的插件主题,实现自定义主题功能
+ *
+ * 如果你的项目同样使用了scss预处理,你也可以直接在你的 scss 代码中使用如下变量,同时无需 import 这个文件
+ */
+/* 颜色变量 */
+/* 行为相关颜色 */
+/* 文字基本颜色 */
+/* 背景颜色 */
+/* 边框颜色 */
+/* 尺寸变量 */
+/* 文字尺寸 */
+/* 图片尺寸 */
+/* Border Radius */
+/* 水平间距 */
+/* 垂直间距 */
+/* 透明度 */
+/* 文章场景相关 */
+.uni-numbox {
+  display: flex;
+  flex-direction: row;
+}
+.uni-numbox-btns {
+  display: flex;
+  flex-direction: row;
+  align-items: center;
+  justify-content: center;
+  padding: 0 8px;
+  background-color: #f5f5f5;
+}
+.uni-numbox__value {
+  margin: 0 2px;
+  background-color: #f5f5f5;
+  width: 40px;
+  height: 26px;
+  text-align: center;
+  font-size: 14px;
+  border-left-width: 0;
+  border-right-width: 0;
+  color: #333;
+}
+.uni-numbox__minus {
+  border-top-left-radius: 2px;
+  border-bottom-left-radius: 2px;
+}
+.uni-numbox__plus {
+  border-top-right-radius: 2px;
+  border-bottom-right-radius: 2px;
+}
+.uni-numbox--text {
+  line-height: 20px;
+  font-size: 20px;
+  font-weight: 300;
+  color: #333;
+}
+.uni-numbox .uni-numbox--disabled {
+  color: #c0c0c0 !important;
+}
+

File diff suppressed because it is too large
+ 232 - 0
errand/errand_app/unpackage/dist/dev/mp-weixin/uni_modules/uni-section/components/uni-section/uni-section.js


+ 4 - 0
errand/errand_app/unpackage/dist/dev/mp-weixin/uni_modules/uni-section/components/uni-section/uni-section.json

@@ -0,0 +1,4 @@
+{
+  "usingComponents": {},
+  "component": true
+}

+ 1 - 0
errand/errand_app/unpackage/dist/dev/mp-weixin/uni_modules/uni-section/components/uni-section/uni-section.wxml

@@ -0,0 +1 @@
+<view class="uni-section"><view data-event-opts="{{[['tap',[['onClick',['$event']]]]]}}" class="uni-section-header" bindtap="__e"><block wx:if="{{type}}"><view class="{{['uni-section-header__decoration',type]}}"></view></block><block wx:else><slot name="decoration"></slot></block><view class="uni-section-header__content"><text class="{{['uni-section__content-title',(!subTitle)?'distraction':'']}}" style="{{'font-size:'+(titleFontSize)+';'+('color:'+(titleColor)+';')}}">{{title}}</text><block wx:if="{{subTitle}}"><text class="uni-section-header__content-sub" style="{{'font-size:'+(subTitleFontSize)+';'+('color:'+(subTitleColor)+';')}}">{{subTitle}}</text></block></view><view class="uni-section-header__slot-right"><slot name="right"></slot></view></view><view class="uni-section-content" style="{{'padding:'+(_padding)+';'}}"><slot></slot></view></view>

+ 78 - 0
errand/errand_app/unpackage/dist/dev/mp-weixin/uni_modules/uni-section/components/uni-section/uni-section.wxss

@@ -0,0 +1,78 @@
+@charset "UTF-8";
+/**
+ * 这里是uni-app内置的常用样式变量
+ *
+ * uni-app 官方扩展插件及插件市场(https://ext.dcloud.net.cn)上很多三方插件均使用了这些样式变量
+ * 如果你是插件开发者,建议你使用scss预处理,并在插件代码中直接使用这些变量(无需 import 这个文件),方便用户通过搭积木的方式开发整体风格一致的App
+ *
+ */
+/**
+ * 如果你是App开发者(插件使用者),你可以通过修改这些变量来定制自己的插件主题,实现自定义主题功能
+ *
+ * 如果你的项目同样使用了scss预处理,你也可以直接在你的 scss 代码中使用如下变量,同时无需 import 这个文件
+ */
+/* 颜色变量 */
+/* 行为相关颜色 */
+/* 文字基本颜色 */
+/* 背景颜色 */
+/* 边框颜色 */
+/* 尺寸变量 */
+/* 文字尺寸 */
+/* 图片尺寸 */
+/* Border Radius */
+/* 水平间距 */
+/* 垂直间距 */
+/* 透明度 */
+/* 文章场景相关 */
+.uni-section {
+  background-color: #fff;
+}
+.uni-section .uni-section-header {
+  position: relative;
+  display: flex;
+  flex-direction: row;
+  align-items: center;
+  padding: 12px 10px;
+  font-weight: normal;
+}
+.uni-section .uni-section-header__decoration {
+  margin-right: 6px;
+  background-color: #2979ff;
+}
+.uni-section .uni-section-header__decoration.line {
+  width: 4px;
+  height: 12px;
+  border-radius: 10px;
+}
+.uni-section .uni-section-header__decoration.circle {
+  width: 8px;
+  height: 8px;
+  border-top-right-radius: 50px;
+  border-top-left-radius: 50px;
+  border-bottom-left-radius: 50px;
+  border-bottom-right-radius: 50px;
+}
+.uni-section .uni-section-header__decoration.square {
+  width: 8px;
+  height: 8px;
+}
+.uni-section .uni-section-header__content {
+  display: flex;
+  flex-direction: column;
+  flex: 1;
+  color: #333;
+}
+.uni-section .uni-section-header__content .distraction {
+  flex-direction: row;
+  align-items: center;
+}
+.uni-section .uni-section-header__content-sub {
+  margin-top: 2px;
+}
+.uni-section .uni-section-header__slot-right {
+  font-size: 14px;
+}
+.uni-section .uni-section-content {
+  font-size: 14px;
+}
+

File diff suppressed because it is too large
+ 11 - 11
errand/errand_app/unpackage/dist/dev/mp-weixin/uni_modules/uni-tag/components/uni-tag/uni-tag.js


BIN
errand/files/1720167376476-PDrohc7Wsq0X5c28c65f1a317af9373e35246408352e.png


BIN
errand/files/1720171809224-emrQyrLITgKb22cf23aa41db86ae198af41af1228774.png


+ 2 - 0
errand/springboot/src/main/java/com/example/SpringbootApplication.java

@@ -3,9 +3,11 @@ package com.example;
 import org.mybatis.spring.annotation.MapperScan;
 import org.springframework.boot.SpringApplication;
 import org.springframework.boot.autoconfigure.SpringBootApplication;
+import org.springframework.scheduling.annotation.EnableScheduling;
 
 @SpringBootApplication
 @MapperScan("com.example.mapper")
+@EnableScheduling
 public class SpringbootApplication {
 
     public static void main(String[] args) {

+ 1 - 0
errand/springboot/src/main/java/com/example/common/enums/ResultCodeEnum.java

@@ -15,6 +15,7 @@ public enum ResultCodeEnum {
     USER_NOT_EXIST_ERROR("5004", "用户不存在"),
     PARAM_PASSWORD_ERROR("5005", "原密码输入错误"),
     ROLE_ERROR("5006", "角色错误"),
+    ACCOUNT_LIMIT_ERROR("5007", "账户余额不足"),
     ;
 
     public String code;

+ 10 - 0
errand/springboot/src/main/java/com/example/controller/OrdersController.java

@@ -18,6 +18,16 @@ public class OrdersController {
     @Resource
     private OrdersService ordersService;
 
+    /**
+     * 小程序下单
+     */
+    @PostMapping("/addOrder")
+    public Result addOrder(@RequestBody Orders orders) {
+        ordersService.addOrder(orders);
+        return Result.success();
+    }
+
+
     /**
      * 新增
      */

+ 13 - 0
errand/springboot/src/main/java/com/example/entity/Account.java

@@ -1,5 +1,7 @@
 package com.example.entity;
 
+import java.math.BigDecimal;
+
 /**
  * 角色用户父类
  */
@@ -20,6 +22,16 @@ public class Account {
 
     private String token;
 
+    private BigDecimal account;
+
+    public BigDecimal getAccount() {
+        return account;
+    }
+
+    public void setAccount(BigDecimal account) {
+        this.account = account;
+    }
+
     public Integer getId() {
         return id;
     }
@@ -83,4 +95,5 @@ public class Account {
     public void setToken(String token) {
         this.token = token;
     }
+
 }

+ 53 - 0
errand/springboot/src/main/java/com/example/service/OrdersSchedule.java

@@ -0,0 +1,53 @@
+package com.example.service;
+
+import cn.hutool.core.date.DateTime;
+import cn.hutool.core.date.DateUnit;
+import cn.hutool.core.date.DateUtil;
+import com.example.common.enums.OrderStatusEnum;
+import com.example.entity.Orders;
+import com.example.entity.User;
+import org.slf4j.Logger;
+import org.slf4j.LoggerFactory;
+import org.springframework.scheduling.annotation.Scheduled;
+import org.springframework.stereotype.Component;
+
+import javax.annotation.Resource;
+import java.math.BigDecimal;
+import java.util.Date;
+import java.util.List;
+
+@Component
+public class OrdersSchedule {
+    private static Logger log = LoggerFactory.getLogger(OrdersSchedule.class);
+
+    @Resource
+    OrdersService ordersService;
+
+    @Resource
+    UserService userService;
+
+    @Scheduled(fixedRate = 60000)
+    public void task() {
+        log.info("========================订单扫描任务开始========================");
+        Orders params = new Orders();
+        params.setStatus(OrderStatusEnum.NO_ACCEPT.getValue());
+        List<Orders> ordersList = ordersService.selectAll(params);
+        for (Orders orders : ordersList) {
+            String time = orders.getTime();
+            DateTime dateTime = DateUtil.parseDateTime(time);
+            long seconds = DateUtil.between(dateTime, new Date(), DateUnit.SECOND);// 计算下单的时间跟当前时间的间隔秒数
+            if (seconds >= 300) {  // 超过了5分钟   自动取消
+                orders.setStatus(OrderStatusEnum.CANCEL.getValue());
+                ordersService.updateById(orders);
+
+                // 取消订单后需要归还用户金额
+                User user = userService.selectById(orders.getUserId());
+                user.setAccount(user.getAccount().add(BigDecimal.valueOf(orders.getPrice())));
+                userService.updateById(user);
+            }
+        }
+
+        log.info("========================订单扫描任务结束========================");
+    }
+
+}

+ 28 - 1
errand/springboot/src/main/java/com/example/service/OrdersService.java

@@ -2,12 +2,20 @@ package com.example.service;
 
 import cn.hutool.core.date.DateUnit;
 import cn.hutool.core.date.DateUtil;
+import cn.hutool.core.util.IdUtil;
+import com.example.common.enums.OrderStatusEnum;
+import com.example.common.enums.ResultCodeEnum;
+import com.example.entity.Account;
 import com.example.entity.Orders;
+import com.example.entity.User;
+import com.example.exception.CustomException;
 import com.example.mapper.OrdersMapper;
+import com.example.utils.TokenUtils;
 import com.github.pagehelper.PageHelper;
 import com.github.pagehelper.PageInfo;
 import org.springframework.stereotype.Service;
 import javax.annotation.Resource;
+import java.math.BigDecimal;
 import java.util.Date;
 import java.util.List;
 
@@ -20,7 +28,8 @@ public class OrdersService {
     @Resource
     private OrdersMapper ordersMapper;
 
-
+    @Resource
+    UserService userService;
     /**
      * 新增
      */
@@ -81,4 +90,22 @@ public class OrdersService {
         return PageInfo.of(list);
     }
 
+    public void addOrder(Orders orders) {
+        Account currentUser = TokenUtils.getCurrentUser();
+        BigDecimal account = currentUser.getAccount();
+        Double price = orders.getPrice();
+        if (price > account.doubleValue()) {
+            throw new CustomException(ResultCodeEnum.ACCOUNT_LIMIT_ERROR);
+        }
+        // 更新账户余额
+        currentUser.setAccount(account.subtract(BigDecimal.valueOf(price)));
+        userService.updateById((User) currentUser);
+
+        orders.setUserId(currentUser.getId());
+        orders.setOrderNo(IdUtil.getSnowflakeNextIdStr());  // 设置唯一的订单编号
+        orders.setStatus(OrderStatusEnum.NO_ACCEPT.getValue());
+        orders.setTime(DateUtil.now());
+        ordersMapper.insert(orders);
+
+    }
 }

+ 2 - 2
errand/springboot/src/main/resources/application.yml

@@ -5,8 +5,8 @@ server:
 spring:
   datasource:
     driver-class-name: com.mysql.cj.jdbc.Driver
-    username: root   #本地的数据库用户名
-    password: 123456 #本地的数据库密码
+    username: root   #本地的数据库用户名
+    password: 123456 #本地的数据库密码
     url: jdbc:mysql://localhost:3306/errand?useUnicode=true&characterEncoding=utf-8&allowMultiQueries=true&useSSL=false&serverTimezone=GMT%2b8&allowPublicKeyRetrieval=true
   servlet:
     multipart:

+ 2 - 2
errand/springboot/target/classes/application.yml

@@ -5,8 +5,8 @@ server:
 spring:
   datasource:
     driver-class-name: com.mysql.cj.jdbc.Driver
-    username: root   #本地的数据库用户名
-    password: 123456 #本地的数据库密码
+    username: root   #本地的数据库用户名
+    password: 123456 #本地的数据库密码
     url: jdbc:mysql://localhost:3306/errand?useUnicode=true&characterEncoding=utf-8&allowMultiQueries=true&useSSL=false&serverTimezone=GMT%2b8&allowPublicKeyRetrieval=true
   servlet:
     multipart:

BIN
errand/springboot/target/classes/com/example/SpringbootApplication.class


BIN
errand/springboot/target/classes/com/example/common/enums/ResultCodeEnum.class


BIN
errand/springboot/target/classes/com/example/controller/OrdersController.class


BIN
errand/springboot/target/classes/com/example/entity/Account.class


BIN
errand/springboot/target/classes/com/example/service/OrdersSchedule.class


BIN
errand/springboot/target/classes/com/example/service/OrdersService.class


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