Browse Source

feat:md5加密

HaXeho 5 months ago
parent
commit
3f0e6a73d4
100 changed files with 259 additions and 251 deletions
  1. 23 24
      errand/errand_app/pages/address/address.vue
  2. 1 1
      errand/errand_app/pages/preOrder/preOrder.vue
  3. 0 0
      errand/errand_app/unpackage/dist/dev/.sourcemap/mp-weixin/common/main.js.map
  4. 0 0
      errand/errand_app/unpackage/dist/dev/.sourcemap/mp-weixin/common/vendor.js.map
  5. 0 0
      errand/errand_app/unpackage/dist/dev/.sourcemap/mp-weixin/pages/address/address.js.map
  6. 0 0
      errand/errand_app/unpackage/dist/dev/.sourcemap/mp-weixin/pages/charge/charge.js.map
  7. 0 0
      errand/errand_app/unpackage/dist/dev/.sourcemap/mp-weixin/pages/detail/detail.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/me/me.js.map
  10. 0 0
      errand/errand_app/unpackage/dist/dev/.sourcemap/mp-weixin/pages/preOrder/preOrder.js.map
  11. 0 0
      errand/errand_app/unpackage/dist/dev/.sourcemap/mp-weixin/uni_modules/uni-data-checkbox/components/uni-data-checkbox/uni-data-checkbox.js.map
  12. 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
  13. 0 0
      errand/errand_app/unpackage/dist/dev/.sourcemap/mp-weixin/uni_modules/uni-easyinput/components/uni-easyinput/uni-easyinput.js.map
  14. 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
  15. 0 0
      errand/errand_app/unpackage/dist/dev/.sourcemap/mp-weixin/uni_modules/uni-file-picker/components/uni-file-picker/upload-file.js.map
  16. 0 0
      errand/errand_app/unpackage/dist/dev/.sourcemap/mp-weixin/uni_modules/uni-file-picker/components/uni-file-picker/upload-image.js.map
  17. 0 0
      errand/errand_app/unpackage/dist/dev/.sourcemap/mp-weixin/uni_modules/uni-forms/components/uni-forms-item/uni-forms-item.js.map
  18. 0 0
      errand/errand_app/unpackage/dist/dev/.sourcemap/mp-weixin/uni_modules/uni-forms/components/uni-forms/uni-forms.js.map
  19. 0 0
      errand/errand_app/unpackage/dist/dev/.sourcemap/mp-weixin/uni_modules/uni-icons/components/uni-icons/uni-icons.js.map
  20. 0 0
      errand/errand_app/unpackage/dist/dev/.sourcemap/mp-weixin/uni_modules/uni-load-more/components/uni-load-more/uni-load-more.js.map
  21. 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
  22. 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
  23. 0 0
      errand/errand_app/unpackage/dist/dev/.sourcemap/mp-weixin/uni_modules/uni-popup/components/uni-popup-dialog/uni-popup-dialog.js.map
  24. 0 0
      errand/errand_app/unpackage/dist/dev/.sourcemap/mp-weixin/uni_modules/uni-popup/components/uni-popup/uni-popup.js.map
  25. 0 0
      errand/errand_app/unpackage/dist/dev/.sourcemap/mp-weixin/uni_modules/uni-rate/components/uni-rate/uni-rate.js.map
  26. 0 0
      errand/errand_app/unpackage/dist/dev/.sourcemap/mp-weixin/uni_modules/uni-row/components/uni-col/uni-col.js.map
  27. 0 0
      errand/errand_app/unpackage/dist/dev/.sourcemap/mp-weixin/uni_modules/uni-row/components/uni-row/uni-row.js.map
  28. 0 0
      errand/errand_app/unpackage/dist/dev/.sourcemap/mp-weixin/uni_modules/uni-section/components/uni-section/uni-section.js.map
  29. 0 0
      errand/errand_app/unpackage/dist/dev/.sourcemap/mp-weixin/uni_modules/uni-segmented-control/components/uni-segmented-control/uni-segmented-control.js.map
  30. 0 0
      errand/errand_app/unpackage/dist/dev/.sourcemap/mp-weixin/uni_modules/uni-tag/components/uni-tag/uni-tag.js.map
  31. 17 17
      errand/errand_app/unpackage/dist/dev/mp-weixin/common/vendor.js
  32. 14 43
      errand/errand_app/unpackage/dist/dev/mp-weixin/pages/address/address.js
  33. 0 0
      errand/errand_app/unpackage/dist/dev/mp-weixin/pages/address/address.wxml
  34. 0 148
      errand/errand_app/unpackage/dist/dev/mp-weixin/pages/address/address.wxss
  35. 0 0
      errand/errand_app/unpackage/dist/dev/mp-weixin/pages/preOrder/preOrder.wxml
  36. BIN
      errand/files/1730698237259-xCoORuG0wS7Y56ce6f5e8ed62eddc30dd2628d8d8b68.jpg
  37. BIN
      errand/files/1730698239789-2C2vH66ZNGVQ20e4cccb97a65b7bdcd1e4bcf7626746.jpg
  38. BIN
      errand/files/1730698278469-Jrfn2ItizKz8bee7465bb4911f2305e0439a125a3bdb.jpg
  39. BIN
      errand/files/1730699743943-d4UHkRFF4RFjbfcce4cd01c769c83b7d031171755723.jpg
  40. BIN
      errand/files/1730699940541-PDmg9utekac2bfcce4cd01c769c83b7d031171755723.jpg
  41. BIN
      errand/files/1731138396444-7dM10N7Kgzeg56ce6f5e8ed62eddc30dd2628d8d8b68.jpg
  42. 16 0
      errand/node_modules/.package-lock.json
  43. 22 1
      errand/package-lock.json
  44. 6 1
      errand/package.json
  45. 1 1
      errand/springboot/src/main/java/com/example/service/CertificationService.java
  46. 62 15
      errand/springboot/src/main/java/com/example/service/UserService.java
  47. 27 0
      errand/springboot/src/main/java/com/example/utils/EncryptionUtil.java
  48. BIN
      errand/springboot/target/classes/com/example/service/UserService.class
  49. BIN
      errand/springboot/target/classes/com/example/utils/EncryptionUtil.class
  50. 3 0
      errand/springboot/target/maven-archiver/pom.properties
  51. 0 0
      errand/springboot/target/maven-status/maven-compiler-plugin/compile/default-compile/createdFiles.lst
  52. 49 0
      errand/springboot/target/maven-status/maven-compiler-plugin/compile/default-compile/inputFiles.lst
  53. BIN
      errand/springboot/target/springboot-0.0.1-SNAPSHOT.jar
  54. BIN
      errand/springboot/target/springboot-0.0.1-SNAPSHOT.jar.original
  55. 1 0
      errand/vue/dist/css/14.31c7184b.css
  56. 1 0
      errand/vue/dist/css/317.546f0197.css
  57. 1 0
      errand/vue/dist/css/437.c4824dd8.css
  58. 1 0
      errand/vue/dist/css/667.3d275c17.css
  59. 1 0
      errand/vue/dist/css/753.86024f36.css
  60. 1 0
      errand/vue/dist/css/920.e38f859f.css
  61. 1 0
      errand/vue/dist/css/98.781f0739.css
  62. 0 0
      errand/vue/dist/css/app.6766dc6d.css
  63. 0 0
      errand/vue/dist/css/chunk-vendors.10dd4e95.css
  64. BIN
      errand/vue/dist/dist.zip
  65. BIN
      errand/vue/dist/favicon.ico
  66. BIN
      errand/vue/dist/fonts/element-icons.f1a45d74.ttf
  67. BIN
      errand/vue/dist/fonts/element-icons.ff18efd1.woff
  68. BIN
      errand/vue/dist/img/bg.9e186fd6.jpg
  69. BIN
      errand/vue/dist/img/bg1.67cf8a50.jpg
  70. 1 0
      errand/vue/dist/index.html
  71. 0 0
      errand/vue/dist/js/14.e44861dc.js
  72. 0 0
      errand/vue/dist/js/14.e44861dc.js.map
  73. 2 0
      errand/vue/dist/js/155.3f6aa3e3.js
  74. 0 0
      errand/vue/dist/js/155.3f6aa3e3.js.map
  75. 0 0
      errand/vue/dist/js/305.b622ba43.js
  76. 0 0
      errand/vue/dist/js/305.b622ba43.js.map
  77. 0 0
      errand/vue/dist/js/317.1ff1ac89.js
  78. 0 0
      errand/vue/dist/js/317.1ff1ac89.js.map
  79. 0 0
      errand/vue/dist/js/337.250647b4.js
  80. 0 0
      errand/vue/dist/js/337.250647b4.js.map
  81. 0 0
      errand/vue/dist/js/407.86769bf6.js
  82. 0 0
      errand/vue/dist/js/407.86769bf6.js.map
  83. 0 0
      errand/vue/dist/js/437.fe87f3a4.js
  84. 0 0
      errand/vue/dist/js/437.fe87f3a4.js.map
  85. 0 0
      errand/vue/dist/js/446.27fdf4e4.js
  86. 0 0
      errand/vue/dist/js/446.27fdf4e4.js.map
  87. 0 0
      errand/vue/dist/js/540.0047c9e7.js
  88. 0 0
      errand/vue/dist/js/540.0047c9e7.js.map
  89. 0 0
      errand/vue/dist/js/576.54cebd85.js
  90. 0 0
      errand/vue/dist/js/576.54cebd85.js.map
  91. 2 0
      errand/vue/dist/js/634.b46e0553.js
  92. 0 0
      errand/vue/dist/js/634.b46e0553.js.map
  93. 2 0
      errand/vue/dist/js/643.3a6e992d.js
  94. 0 0
      errand/vue/dist/js/643.3a6e992d.js.map
  95. 2 0
      errand/vue/dist/js/649.9831543a.js
  96. 0 0
      errand/vue/dist/js/649.9831543a.js.map
  97. 0 0
      errand/vue/dist/js/667.7c08b5a8.js
  98. 0 0
      errand/vue/dist/js/667.7c08b5a8.js.map
  99. 2 0
      errand/vue/dist/js/753.20fbbe19.js
  100. 0 0
      errand/vue/dist/js/753.20fbbe19.js.map

+ 23 - 24
errand/errand_app/pages/address/address.vue

@@ -6,13 +6,13 @@
 					<uni-easyinput type="text" v-model="form.address" placeholder="请选择地址" @focus="chooseLocation" />
 				</uni-forms-item>
 				<uni-forms-item label="门牌号" name="doorNo" required>
-					<uni-easyinput type="text" v-model="form.doorNo" placeholder="请输入门牌号" />
+					<uni-easyinput type="text" v-model="form.doorNo" placeholder="请输入门牌号" @focus="chooseLocation" />
 				</uni-forms-item>
 				<uni-forms-item label="联系人" name="userName" required>
 					<uni-easyinput type="text" v-model="form.userName" placeholder="请输入联系人" />
 				</uni-forms-item>
 				<uni-forms-item label="联系电话" name="phone" required>
-					<uni-easyinput type="text" v-model="form.phone" placeholder="请输入联系电话" />
+					<uni-easyinput type="text" v-model="form.phone" placeholder="请输入联系电话" @focus="chooseLocation" />
 				</uni-forms-item>
 				<view>
 					<button type="primary" class="my-button-primary" @click="save">保存并使用</button>
@@ -57,30 +57,33 @@
 					phone: { rules: [{ required: true, errorMessage: '请填写联系电话' }] }
 				},
 				addressType: '',
-				choosingLocation: false // 新增状态
+				choosingLocation: false
 			};
 		},
 		onLoad(option) {
 			this.addressType = option.addressType;
-			this.load();
+			this.loadAddresses(); // 加载地址
 		},
 		methods: {
 			chooseLocation() {
-				if (this.choosingLocation) return; // 防止重复触发
-				this.choosingLocation = true; // 设置状态为正在选择位置
+				// 只在地址为空时触发
+				if (this.choosingLocation || this.form.address) return;
+
+				this.choosingLocation = true;
 
 				wx.chooseLocation({
-					success: (res) => {
-						console.log(res);
-						this.form.address = res.name || res.address;
-					},
-					fail: (err) => {
-						console.error(err);
-						uni.showToast({ title: '获取位置失败', icon: 'none' });
-					},
-					complete: () => {
-						this.choosingLocation = false; // 选择完毕后重置状态
-					}
+				    success: (res) => {
+				        console.log(res);
+				        // 将地址和名称组合为一个字符串返回
+				        this.form.address = res.address + ' ' + res.name;  
+				    },
+				    fail: (err) => {
+				        console.error(err);
+				        uni.showToast({ title: '获取位置失败', icon: 'none' });
+				    },
+				    complete: () => {
+				        this.choosingLocation = false;
+				    }
 				});
 			},
 			selectAddress(address) {
@@ -99,7 +102,7 @@
 				this.$request.del('/address/delete/' + id).then(res => {
 					if (res.code === '200') {
 						uni.showToast({ icon: 'success', title: '操作成功' });
-						this.load();
+						this.loadAddresses(); // 加载地址
 					} else {
 						uni.showToast({ icon: 'none', title: res.msg });
 					}
@@ -125,7 +128,7 @@
 								userName: '',
 								phone: ''
 							}; // 重置表单
-							this.load();
+							this.loadAddresses(); // 加载地址
 						} else {
 							uni.showToast({ icon: 'none', title: res.msg });
 						}
@@ -134,7 +137,7 @@
 					console.error(error);
 				});
 			},
-			load() {
+			loadAddresses() {
 				this.$request.get('/address/selectAll', { userId: this.user.id }).then(res => {
 					this.addressList = res.data || [];
 				});
@@ -142,7 +145,3 @@
 		}
 	};
 </script>
-
-<style>
-/* 你的样式代码 */
-</style>

+ 1 - 1
errand/errand_app/pages/preOrder/preOrder.vue

@@ -32,7 +32,7 @@
 				<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-number-box v-model="form.weight" :min="1" :step="1" :max="100" style="position: relative; top: 10rpx;"></uni-number-box>
 			  </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>

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/vendor.js.map


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


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


File diff suppressed because it is too large
+ 0 - 0
errand/errand_app/unpackage/dist/dev/.sourcemap/mp-weixin/pages/detail/detail.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/me/me.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-checkbox/components/uni-data-checkbox/uni-data-checkbox.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-load-more/components/uni-load-more/uni-load-more.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-popup/components/uni-popup-dialog/uni-popup-dialog.js.map


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


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


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


File diff suppressed because it is too large
+ 0 - 0
errand/errand_app/unpackage/dist/dev/.sourcemap/mp-weixin/uni_modules/uni-row/components/uni-row/uni-row.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-segmented-control/components/uni-segmented-control/uni-segmented-control.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


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


+ 14 - 43
errand/errand_app/unpackage/dist/dev/mp-weixin/pages/address/address.js

@@ -1,34 +1,5 @@
 (global["webpackJsonp"] = global["webpackJsonp"] || []).push([["pages/address/address"],{
 
-/***/ 353:
-/*!**********************************************************************************************************!*\
-  !*** D:/A_GraduationDesign/errand/errand_app/pages/address/address.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_address_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!./address.vue?vue&type=style&index=0&lang=css& */ 354);
-/* 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_address_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_address_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_address_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_address_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_address_vue_vue_type_style_index_0_lang_css___WEBPACK_IMPORTED_MODULE_0___default.a); 
-
-/***/ }),
-
-/***/ 354:
-/*!**************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************!*\
-  !*** ./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/pages/address/address.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; }
-  
-
-/***/ }),
-
 /***/ 79:
 /*!********************************************************************************************!*\
   !*** D:/A_GraduationDesign/errand/errand_app/main.js?{"page":"pages%2Faddress%2Faddress"} ***!
@@ -62,18 +33,16 @@ __webpack_require__.r(__webpack_exports__);
 /* harmony import */ var _address_vue_vue_type_template_id_db675620___WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ./address.vue?vue&type=template&id=db675620& */ 81);
 /* harmony import */ var _address_vue_vue_type_script_lang_js___WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ./address.vue?vue&type=script&lang=js& */ 83);
 /* harmony reexport (unknown) */ for(var __WEBPACK_IMPORT_KEY__ in _address_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 _address_vue_vue_type_script_lang_js___WEBPACK_IMPORTED_MODULE_1__[key]; }) }(__WEBPACK_IMPORT_KEY__));
-/* harmony import */ var _address_vue_vue_type_style_index_0_lang_css___WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! ./address.vue?vue&type=style&index=0&lang=css& */ 353);
-/* 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);
+/* 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_3__["default"])(
+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"])(
   _address_vue_vue_type_script_lang_js___WEBPACK_IMPORTED_MODULE_1__["default"],
   _address_vue_vue_type_template_id_db675620___WEBPACK_IMPORTED_MODULE_0__["render"],
   _address_vue_vue_type_template_id_db675620___WEBPACK_IMPORTED_MODULE_0__["staticRenderFns"],
@@ -289,23 +258,25 @@ var _default = {
         }
       },
       addressType: '',
-      choosingLocation: false // 新增状态
+      choosingLocation: false
     };
   },
   onLoad: function onLoad(option) {
     this.addressType = option.addressType;
-    this.load();
+    this.loadAddresses(); // 加载地址
   },
+
   methods: {
     chooseLocation: function chooseLocation() {
       var _this = this;
-      if (this.choosingLocation) return; // 防止重复触发
-      this.choosingLocation = true; // 设置状态为正在选择位置
-
+      // 只在地址为空时触发
+      if (this.choosingLocation || this.form.address) return;
+      this.choosingLocation = true;
       wx.chooseLocation({
         success: function success(res) {
           console.log(res);
-          _this.form.address = res.name || res.address;
+          // 将地址和名称组合为一个字符串返回
+          _this.form.address = res.address + ' ' + res.name;
         },
         fail: function fail(err) {
           console.error(err);
@@ -315,7 +286,7 @@ var _default = {
           });
         },
         complete: function complete() {
-          _this.choosingLocation = false; // 选择完毕后重置状态
+          _this.choosingLocation = false;
         }
       });
     },
@@ -339,7 +310,7 @@ var _default = {
             icon: 'success',
             title: '操作成功'
           });
-          _this2.load();
+          _this2.loadAddresses(); // 加载地址
         } else {
           uni.showToast({
             icon: 'none',
@@ -370,7 +341,7 @@ var _default = {
               userName: '',
               phone: ''
             }; // 重置表单
-            _this3.load();
+            _this3.loadAddresses(); // 加载地址
           } else {
             uni.showToast({
               icon: 'none',
@@ -382,7 +353,7 @@ var _default = {
         console.error(error);
       });
     },
-    load: function load() {
+    loadAddresses: function loadAddresses() {
       var _this4 = this;
       this.$request.get('/address/selectAll', {
         userId: this.user.id

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


+ 0 - 148
errand/errand_app/unpackage/dist/dev/mp-weixin/pages/address/address.wxss

@@ -1,148 +0,0 @@
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-/* 你的样式代码 */
-

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


BIN
errand/files/1730698237259-xCoORuG0wS7Y56ce6f5e8ed62eddc30dd2628d8d8b68.jpg


BIN
errand/files/1730698239789-2C2vH66ZNGVQ20e4cccb97a65b7bdcd1e4bcf7626746.jpg


BIN
errand/files/1730698278469-Jrfn2ItizKz8bee7465bb4911f2305e0439a125a3bdb.jpg


BIN
errand/files/1730699743943-d4UHkRFF4RFjbfcce4cd01c769c83b7d031171755723.jpg


BIN
errand/files/1730699940541-PDmg9utekac2bfcce4cd01c769c83b7d031171755723.jpg


BIN
errand/files/1731138396444-7dM10N7Kgzeg56ce6f5e8ed62eddc30dd2628d8d8b68.jpg


+ 16 - 0
errand/node_modules/.package-lock.json

@@ -29,6 +29,11 @@
         "node": ">= 0.8"
       }
     },
+    "node_modules/crypto-js": {
+      "version": "4.2.0",
+      "resolved": "https://registry.npmmirror.com/crypto-js/-/crypto-js-4.2.0.tgz",
+      "integrity": "sha512-KALDyEYgpY+Rlob/iriUtjV6d5Eq+Y191A5g4UqLAi8CyGP9N1+FdVbkc1SxKc2r4YAYqG8JzO2KGL+AizD70Q=="
+    },
     "node_modules/delayed-stream": {
       "version": "1.0.0",
       "resolved": "https://registry.npmjs.org/delayed-stream/-/delayed-stream-1.0.0.tgz",
@@ -69,6 +74,17 @@
         "node": ">= 6"
       }
     },
+    "node_modules/js-md5": {
+      "version": "0.8.3",
+      "resolved": "https://registry.npmmirror.com/js-md5/-/js-md5-0.8.3.tgz",
+      "integrity": "sha512-qR0HB5uP6wCuRMrWPTrkMaev7MJZwJuuw4fnwAzRgP4J4/F8RwtodOKpGp4XpqsLBFzzgqIO42efFAyz2Et6KQ==",
+      "dev": true
+    },
+    "node_modules/js-sha256": {
+      "version": "0.11.0",
+      "resolved": "https://registry.npmmirror.com/js-sha256/-/js-sha256-0.11.0.tgz",
+      "integrity": "sha512-6xNlKayMZvds9h1Y1VWc0fQHQ82BxTXizWPEtEeGvmOUYpBRy4gbWroHLpzowe6xiQhHpelCQiE7HEdznyBL9Q=="
+    },
     "node_modules/mime-db": {
       "version": "1.52.0",
       "resolved": "https://registry.npmjs.org/mime-db/-/mime-db-1.52.0.tgz",

+ 22 - 1
errand/package-lock.json

@@ -5,7 +5,12 @@
   "packages": {
     "": {
       "dependencies": {
-        "axios": "^1.7.2"
+        "axios": "^1.7.2",
+        "crypto-js": "^4.2.0",
+        "js-sha256": "^0.11.0"
+      },
+      "devDependencies": {
+        "js-md5": "^0.8.3"
       }
     },
     "node_modules/asynckit": {
@@ -34,6 +39,11 @@
         "node": ">= 0.8"
       }
     },
+    "node_modules/crypto-js": {
+      "version": "4.2.0",
+      "resolved": "https://registry.npmmirror.com/crypto-js/-/crypto-js-4.2.0.tgz",
+      "integrity": "sha512-KALDyEYgpY+Rlob/iriUtjV6d5Eq+Y191A5g4UqLAi8CyGP9N1+FdVbkc1SxKc2r4YAYqG8JzO2KGL+AizD70Q=="
+    },
     "node_modules/delayed-stream": {
       "version": "1.0.0",
       "resolved": "https://registry.npmjs.org/delayed-stream/-/delayed-stream-1.0.0.tgz",
@@ -74,6 +84,17 @@
         "node": ">= 6"
       }
     },
+    "node_modules/js-md5": {
+      "version": "0.8.3",
+      "resolved": "https://registry.npmmirror.com/js-md5/-/js-md5-0.8.3.tgz",
+      "integrity": "sha512-qR0HB5uP6wCuRMrWPTrkMaev7MJZwJuuw4fnwAzRgP4J4/F8RwtodOKpGp4XpqsLBFzzgqIO42efFAyz2Et6KQ==",
+      "dev": true
+    },
+    "node_modules/js-sha256": {
+      "version": "0.11.0",
+      "resolved": "https://registry.npmmirror.com/js-sha256/-/js-sha256-0.11.0.tgz",
+      "integrity": "sha512-6xNlKayMZvds9h1Y1VWc0fQHQ82BxTXizWPEtEeGvmOUYpBRy4gbWroHLpzowe6xiQhHpelCQiE7HEdznyBL9Q=="
+    },
     "node_modules/mime-db": {
       "version": "1.52.0",
       "resolved": "https://registry.npmjs.org/mime-db/-/mime-db-1.52.0.tgz",

+ 6 - 1
errand/package.json

@@ -1,5 +1,10 @@
 {
   "dependencies": {
-    "axios": "^1.7.2"
+    "axios": "^1.7.2",
+    "crypto-js": "^4.2.0",
+    "js-sha256": "^0.11.0"
+  },
+  "devDependencies": {
+    "js-md5": "^0.8.3"
   }
 }

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

@@ -45,7 +45,7 @@ public class CertificationService {
         return certificationMapper.selectByUserId(userId);
     }
 
-    /**
+    /**serv
      * 删除
      */
     public void deleteById(Integer id) {

+ 62 - 15
errand/springboot/src/main/java/com/example/service/UserService.java

@@ -1,16 +1,15 @@
 package com.example.service;
 
+import cn.hutool.crypto.digest.MD5;
 import cn.hutool.core.util.ObjectUtil;
 import com.example.common.Constants;
 import com.example.common.enums.RecordsTypeEnum;
 import com.example.common.enums.ResultCodeEnum;
 import com.example.common.enums.RoleEnum;
 import com.example.entity.Account;
-import com.example.entity.Admin;
 import com.example.entity.Certification;
 import com.example.entity.User;
 import com.example.exception.CustomException;
-import com.example.mapper.AdminMapper;
 import com.example.mapper.UserMapper;
 import com.example.utils.TokenUtils;
 import com.github.pagehelper.PageHelper;
@@ -34,9 +33,33 @@ public class UserService {
     @Resource
     private CertificationService certificationService;
 
+    /**
+     * 注册用户
+     * 在注册时加密密码
+     */
+    public void register(Account account) {
+        User user = new User();
+        BeanUtils.copyProperties(account, user);
+
+        // 在这里进行密码加密
+        if (ObjectUtil.isNotEmpty(user.getPassword())) {
+            String encryptedPassword = MD5.create().digestHex(user.getPassword());  // 使用MD5加密密码
+            user.setPassword(encryptedPassword);  // 将加密后的密码设置回User对象
+        } else {
+            // 如果密码为空,则使用默认密码,并进行加密
+            user.setPassword(MD5.create().digestHex(Constants.USER_DEFAULT_PASSWORD));
+        }
+
+        this.add(user);
+    }
+
+    /**
+     * 添加用户
+     * 在这里保存加密后的密码
+     */
     public void add(User user) {
         User dbUser = this.selectByUsername(user.getUsername());
-        if (ObjectUtil.isNotNull(dbUser)) {  //用户名重复
+        if (ObjectUtil.isNotNull(dbUser)) {  // 用户名重复
             throw new CustomException(ResultCodeEnum.USER_EXIST_ERROR);
         }
         if (ObjectUtil.isEmpty(user.getPassword())) {
@@ -49,6 +72,9 @@ public class UserService {
         userMapper.insert(user);
     }
 
+    /**
+     * 根据用户名查询用户
+     */
     public User selectByUsername(String username) {
         User params = new User();
         params.setUsername(username);
@@ -56,63 +82,84 @@ public class UserService {
         return userList.size() == 0 ? null : userList.get(0);
     }
 
-
+    /**
+     * 删除用户
+     */
     public void deleteById(Integer id) {
         userMapper.deleteById(id);
     }
 
+    /**
+     * 批量删除用户
+     */
     public void deleteBatch(List<Integer> ids) {
         for (Integer id : ids) {
             this.deleteById(id);
         }
     }
 
+    /**
+     * 更新用户信息
+     */
     public void updateById(User user) {
         userMapper.updateById(user);
-
     }
 
+    /**
+     * 根据用户ID查询用户
+     */
     public User selectById(Integer id) {
         return userMapper.selectById(id);
     }
 
+    /**
+     * 查询所有用户
+     */
     public List<User> selectAll(User user) {
         return userMapper.selectAll(user);
     }
 
+    /**
+     * 分页查询用户
+     */
     public PageInfo<User> selectPage(User user, Integer pageNum, Integer pageSize) {
         PageHelper.startPage(pageNum, pageSize);
         List<User> userList = userMapper.selectAll(user);
         return PageInfo.of(userList);
     }
 
+    /**
+     * 用户登录
+     * 登录时对密码进行加密验证
+     */
     public Account login(Account account) {
         Account dbUser = userMapper.selectByUsername(account.getUsername());
         if (ObjectUtil.isNull(dbUser)) {
             throw new CustomException(ResultCodeEnum.USER_NOT_EXIST_ERROR);
         }
-        if (!account.getPassword().equals(dbUser.getPassword())) {
+
+        // 使用加密密码验证用户
+        String encryptedPassword = MD5.create().digestHex(account.getPassword());  // 对输入的密码进行加密
+        if (!encryptedPassword.equals(dbUser.getPassword())) {
             throw new CustomException(ResultCodeEnum.USER_ACCOUNT_ERROR);
         }
+
         // 生成token
         String tokenData = dbUser.getId() + "-" + RoleEnum.USER.name();
         String token = TokenUtils.createToken(tokenData, dbUser.getPassword());
         dbUser.setToken(token);
 
-        Certification certification = certificationService.selectByUserId(dbUser.getId());  // 查询当前登录用户的骑手认证信息
+        // 查询当前登录用户的骑手认证信息
+        Certification certification = certificationService.selectByUserId(dbUser.getId());
         dbUser.setIsRider(ObjectUtil.isNotNull(certification) && "通过".equals(certification.getStatus()));
+
         return dbUser;
     }
 
     /**
-     * 注册
+     * 用户充值
+     * 充值时更新账户余额并记录收支明细
      */
-    public void register(Account account) {
-        User user = new User();
-        BeanUtils.copyProperties(account, user);
-        this.add(user);
-    }
-
     public void charge(Double money) {
         Account currentUser = TokenUtils.getCurrentUser();
         currentUser.setAccount(currentUser.getAccount().add(BigDecimal.valueOf(money)));
@@ -121,4 +168,4 @@ public class UserService {
         // 记录收支明细
         RecordsService.addRecord("充值", BigDecimal.valueOf(money), RecordsTypeEnum.CHARGE.getValue());
     }
-}
+}

+ 27 - 0
errand/springboot/src/main/java/com/example/utils/EncryptionUtil.java

@@ -0,0 +1,27 @@
+package com.example.utils;
+
+import java.security.MessageDigest;
+import java.security.NoSuchAlgorithmException;
+
+public class EncryptionUtil {
+
+    /**
+     * 使用SHA-256加密密码
+     */
+    public static String encryptPassword(String password) {
+        try {
+            // 获取SHA-256加密算法的MessageDigest实例
+            MessageDigest digest = MessageDigest.getInstance("SHA-256");
+            // 将密码转换为字节数组并进行加密
+            byte[] hash = digest.digest(password.getBytes());
+            // 将字节数组转换为16进制字符串
+            StringBuilder hexString = new StringBuilder();
+            for (byte b : hash) {
+                hexString.append(String.format("%02x", b));
+            }
+            return hexString.toString();
+        } catch (NoSuchAlgorithmException e) {
+            throw new RuntimeException("SHA-256加密算法不存在", e);
+        }
+    }
+}

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


BIN
errand/springboot/target/classes/com/example/utils/EncryptionUtil.class


+ 3 - 0
errand/springboot/target/maven-archiver/pom.properties

@@ -0,0 +1,3 @@
+artifactId=springboot
+groupId=com.example
+version=0.0.1-SNAPSHOT

+ 0 - 0
errand/springboot/target/maven-status/maven-compiler-plugin/compile/default-compile/createdFiles.lst


+ 49 - 0
errand/springboot/target/maven-status/maven-compiler-plugin/compile/default-compile/inputFiles.lst

@@ -0,0 +1,49 @@
+D:\A_GraduationDesign\errand\springboot\src\main\java\com\example\mapper\NoticeMapper.java
+D:\A_GraduationDesign\errand\springboot\src\main\java\com\example\common\Result.java
+D:\A_GraduationDesign\errand\springboot\src\main\java\com\example\service\CertificationService.java
+D:\A_GraduationDesign\errand\springboot\src\main\java\com\example\common\Constants.java
+D:\A_GraduationDesign\errand\springboot\src\main\java\com\example\service\AdminService.java
+D:\A_GraduationDesign\errand\springboot\src\main\java\com\example\entity\Orders.java
+D:\A_GraduationDesign\errand\springboot\src\main\java\com\example\mapper\UserMapper.java
+D:\A_GraduationDesign\errand\springboot\src\main\java\com\example\controller\RecordsController.java
+D:\A_GraduationDesign\errand\springboot\src\main\java\com\example\SpringbootApplication.java
+D:\A_GraduationDesign\errand\springboot\src\main\java\com\example\common\enums\ResultCodeEnum.java
+D:\A_GraduationDesign\errand\springboot\src\main\java\com\example\service\UserService.java
+D:\A_GraduationDesign\errand\springboot\src\main\java\com\example\entity\Account.java
+D:\A_GraduationDesign\errand\springboot\src\main\java\com\example\controller\OrdersController.java
+D:\A_GraduationDesign\errand\springboot\src\main\java\com\example\common\enums\RoleEnum.java
+D:\A_GraduationDesign\errand\springboot\src\main\java\com\example\service\NoticeService.java
+D:\A_GraduationDesign\errand\springboot\src\main\java\com\example\controller\CertificationController.java
+D:\A_GraduationDesign\errand\springboot\src\main\java\com\example\controller\WebController.java
+D:\A_GraduationDesign\errand\springboot\src\main\java\com\example\mapper\CommentMapper.java
+D:\A_GraduationDesign\errand\springboot\src\main\java\com\example\entity\Certification.java
+D:\A_GraduationDesign\errand\springboot\src\main\java\com\example\entity\User.java
+D:\A_GraduationDesign\errand\springboot\src\main\java\com\example\service\CommentService.java
+D:\A_GraduationDesign\errand\springboot\src\main\java\com\example\controller\AdminController.java
+D:\A_GraduationDesign\errand\springboot\src\main\java\com\example\mapper\OrdersMapper.java
+D:\A_GraduationDesign\errand\springboot\src\main\java\com\example\mapper\RecordsMapper.java
+D:\A_GraduationDesign\errand\springboot\src\main\java\com\example\common\config\CorsConfig.java
+D:\A_GraduationDesign\errand\springboot\src\main\java\com\example\common\config\JwtInterceptor.java
+D:\A_GraduationDesign\errand\springboot\src\main\java\com\example\controller\UserController.java
+D:\A_GraduationDesign\errand\springboot\src\main\java\com\example\service\OrdersService.java
+D:\A_GraduationDesign\errand\springboot\src\main\java\com\example\utils\TokenUtils.java
+D:\A_GraduationDesign\errand\springboot\src\main\java\com\example\controller\CommentController.java
+D:\A_GraduationDesign\errand\springboot\src\main\java\com\example\entity\Notice.java
+D:\A_GraduationDesign\errand\springboot\src\main\java\com\example\entity\Admin.java
+D:\A_GraduationDesign\errand\springboot\src\main\java\com\example\entity\Records.java
+D:\A_GraduationDesign\errand\springboot\src\main\java\com\example\entity\Address.java
+D:\A_GraduationDesign\errand\springboot\src\main\java\com\example\controller\NoticeController.java
+D:\A_GraduationDesign\errand\springboot\src\main\java\com\example\service\AddressService.java
+D:\A_GraduationDesign\errand\springboot\src\main\java\com\example\service\RecordsService.java
+D:\A_GraduationDesign\errand\springboot\src\main\java\com\example\common\enums\OrderStatusEnum.java
+D:\A_GraduationDesign\errand\springboot\src\main\java\com\example\common\enums\RecordsTypeEnum.java
+D:\A_GraduationDesign\errand\springboot\src\main\java\com\example\common\config\WebConfig.java
+D:\A_GraduationDesign\errand\springboot\src\main\java\com\example\mapper\AddressMapper.java
+D:\A_GraduationDesign\errand\springboot\src\main\java\com\example\controller\AddressController.java
+D:\A_GraduationDesign\errand\springboot\src\main\java\com\example\entity\Comment.java
+D:\A_GraduationDesign\errand\springboot\src\main\java\com\example\service\OrdersSchedule.java
+D:\A_GraduationDesign\errand\springboot\src\main\java\com\example\exception\GlobalExceptionHandler.java
+D:\A_GraduationDesign\errand\springboot\src\main\java\com\example\mapper\AdminMapper.java
+D:\A_GraduationDesign\errand\springboot\src\main\java\com\example\mapper\CertificationMapper.java
+D:\A_GraduationDesign\errand\springboot\src\main\java\com\example\controller\FileController.java
+D:\A_GraduationDesign\errand\springboot\src\main\java\com\example\exception\CustomException.java

BIN
errand/springboot/target/springboot-0.0.1-SNAPSHOT.jar


BIN
errand/springboot/target/springboot-0.0.1-SNAPSHOT.jar.original


+ 1 - 0
errand/vue/dist/css/14.31c7184b.css

@@ -0,0 +1 @@
+[data-v-6ed92316] .el-form-item__label{font-weight:700}

+ 1 - 0
errand/vue/dist/css/317.546f0197.css

@@ -0,0 +1 @@
+.front-notice{padding:5px 20px;color:#666;font-size:12px}.front-header{display:flex;height:60px;line-height:60px;border-bottom:1px solid #eee;background:#fff}.front-header-left{width:350px;display:flex;align-items:center;padding-left:30px}.front-header-dropdown img,.front-header-left img{width:40px;height:40px;border-radius:50%}.front-header-left .title{flex:1;color:#355476;cursor:pointer;margin-left:10px;font-size:20px;font-weight:700}.front-header-center{flex:1}.front-header-right{width:200px;padding-right:20px;text-align:right}.front-header-dropdown{display:flex;align-items:center;justify-content:right}.el-dropdown-menu{width:100px!important;text-align:center!important}.main-content{width:100%;margin:5px auto}.el-menu.el-menu--horizontal{border:none!important;height:59px}

+ 1 - 0
errand/vue/dist/css/437.c4824dd8.css

@@ -0,0 +1 @@
+.manager-container{background-color:#f8f8ff;min-height:100vh}.manager-header{display:flex;background-color:#2c334c}.manager-header-left{width:200px;height:60px;padding-left:10px;display:flex;align-items:center}.manager-header-left img{width:40px;height:40px}.manager-header-left .title{flex:1;margin-left:5px;font-size:20px;font-weight:700;color:#ddd}.manager-header-center{flex:1;width:0;display:flex;align-items:center}.manager-header-right{width:200px;display:flex;align-items:center;justify-content:flex-end}.manager-header-right .avatar{display:flex;align-items:center;padding-right:10px;color:#ccc;cursor:default}.manager-header-right .avatar img{width:40px;height:40px;border-radius:50%;margin-right:5px}.manager-main{display:flex}.manager-main-left{width:200px;min-height:calc(100vh - 60px);box-shadow:0 0 6px rgba(0,21,41,.35)}.manager-main-right{flex:1;width:0;padding:10px}.manager-main-right .operation,.manager-main-right .search{padding:10px;background-color:#fff;border-radius:5px;box-shadow:0 2px 5px 0 rgba(0,0,0,.1)}.manager-main-right .operation{margin-top:5px}.manager-main-right .table{margin-top:5px;padding:15px 10px;background-color:#fff;border-radius:5px;box-shadow:0 2px 12px 0 rgba(0,0,0,.1)}.manager-main-right .table .pagination{margin-top:10px}.card{padding:20px;background-color:#fff;border-radius:5px;box-shadow:0 2px 5px 0 rgba(0,0,0,.1)}.el-menu{width:200px;height:100%;background-color:#222b40}.el-menu-item,.el-submenu__title{color:#ccc;height:50px;line-height:50px}.el-menu-item{background-color:#222b40!important}.el-menu--inline .el-menu-item{padding-left:50px!important}.el-menu .is-active{color:#39f!important}.el-submenu__title:hover{background-color:#222!important}.el-menu-item:hover{background-color:#222!important}.el-submenu__icon-arrow{margin-top:-5px}.el-breadcrumb__inner{color:#ccc!important}.el-dropdown-menu{margin-top:20px!important}.el-breadcrumb{margin-left:10px}th.el-table__cell{background-color:#f8f8f8!important;color:#666}

+ 1 - 0
errand/vue/dist/css/667.3d275c17.css

@@ -0,0 +1 @@
+[data-v-45e81a60] .el-form-item__label{font-weight:700}[data-v-45e81a60] .el-upload{border-radius:50%}[data-v-45e81a60] .avatar-uploader .el-upload{border:1px dashed #d9d9d9;cursor:pointer;position:relative;overflow:hidden;border-radius:50%}[data-v-45e81a60] .avatar-uploader .el-upload:hover{border-color:#409eff}.avatar-uploader-icon[data-v-45e81a60]{font-size:28px;color:#8c939d;width:120px;height:120px;line-height:120px;text-align:center;border-radius:50%}.avatar[data-v-45e81a60]{width:120px;height:120px;display:block;border-radius:50%}

+ 1 - 0
errand/vue/dist/css/753.86024f36.css

@@ -0,0 +1 @@
+.container[data-v-573a5092]{height:100vh;overflow:hidden;background-image:url(/img/bg.9e186fd6.jpg);background-size:100%;display:flex;align-items:center;justify-content:center;color:#666}a[data-v-573a5092]{color:#2a60c9}

+ 1 - 0
errand/vue/dist/css/920.e38f859f.css

@@ -0,0 +1 @@
+.container[data-v-5a1b4405]{height:100vh;overflow:hidden;background-image:url(/img/bg1.67cf8a50.jpg);background-size:100%;display:flex;align-items:center;justify-content:center;color:#666}a[data-v-5a1b4405]{color:#2a60c9}

+ 1 - 0
errand/vue/dist/css/98.781f0739.css

@@ -0,0 +1 @@
+[data-v-64c39e03] .el-form-item__label{font-weight:700}[data-v-64c39e03] .el-upload{border-radius:50%}[data-v-64c39e03] .avatar-uploader .el-upload{border:1px dashed #d9d9d9;cursor:pointer;position:relative;overflow:hidden;border-radius:50%}[data-v-64c39e03] .avatar-uploader .el-upload:hover{border-color:#409eff}.avatar-uploader-icon[data-v-64c39e03]{font-size:28px;color:#8c939d;width:120px;height:120px;line-height:120px;text-align:center;border-radius:50%}.avatar[data-v-64c39e03]{width:120px;height:120px;display:block;border-radius:50%}

File diff suppressed because it is too large
+ 0 - 0
errand/vue/dist/css/app.6766dc6d.css


File diff suppressed because it is too large
+ 0 - 0
errand/vue/dist/css/chunk-vendors.10dd4e95.css


BIN
errand/vue/dist/dist.zip


BIN
errand/vue/dist/favicon.ico


BIN
errand/vue/dist/fonts/element-icons.f1a45d74.ttf


BIN
errand/vue/dist/fonts/element-icons.ff18efd1.woff


BIN
errand/vue/dist/img/bg.9e186fd6.jpg


BIN
errand/vue/dist/img/bg1.67cf8a50.jpg


+ 1 - 0
errand/vue/dist/index.html

@@ -0,0 +1 @@
+<!doctype html><html lang=""><head><meta charset="utf-8"><meta http-equiv="X-UA-Compatible" content="IE=edge"><meta name="viewport" content="width=device-width,initial-scale=1"><link rel="icon" href="/favicon.ico"><title>管理系统</title><script defer="defer" src="/js/chunk-vendors.9795f136.js"></script><script defer="defer" src="/js/app.554d3f59.js"></script><link href="/css/chunk-vendors.10dd4e95.css" rel="stylesheet"><link href="/css/app.6766dc6d.css" rel="stylesheet"></head><body><noscript><strong>We're sorry but 管理系统 doesn't work properly without JavaScript enabled. Please enable it to continue.</strong></noscript><div id="app"></div></body></html>

File diff suppressed because it is too large
+ 0 - 0
errand/vue/dist/js/14.e44861dc.js


File diff suppressed because it is too large
+ 0 - 0
errand/vue/dist/js/14.e44861dc.js.map


+ 2 - 0
errand/vue/dist/js/155.3f6aa3e3.js

@@ -0,0 +1,2 @@
+"use strict";(self["webpackChunkvue"]=self["webpackChunkvue"]||[]).push([[155],{2155:function(t,e,n){n.r(e),n.d(e,{default:function(){return c}});var i=function(){var t=this,e=t._self._c;return e("div",[e("div",{staticStyle:{height:"calc(100vh - 80px)",overflow:"hidden",display:"flex","align-items":"center","justify-content":"center"}},[e("div",{staticStyle:{"font-size":"40px"}},[t._v("无权访问 "),e("router-link",{attrs:{to:"/"}},[t._v("返回首页")])],1)])])},r=[],u={name:"Auth",data(){return{}},created(){},methods:{}},a=u,l=n(3736),s=(0,l.Z)(a,i,r,!1,null,"863a6d92",null),c=s.exports}}]);
+//# sourceMappingURL=155.3f6aa3e3.js.map

File diff suppressed because it is too large
+ 0 - 0
errand/vue/dist/js/155.3f6aa3e3.js.map


File diff suppressed because it is too large
+ 0 - 0
errand/vue/dist/js/305.b622ba43.js


File diff suppressed because it is too large
+ 0 - 0
errand/vue/dist/js/305.b622ba43.js.map


File diff suppressed because it is too large
+ 0 - 0
errand/vue/dist/js/317.1ff1ac89.js


File diff suppressed because it is too large
+ 0 - 0
errand/vue/dist/js/317.1ff1ac89.js.map


File diff suppressed because it is too large
+ 0 - 0
errand/vue/dist/js/337.250647b4.js


File diff suppressed because it is too large
+ 0 - 0
errand/vue/dist/js/337.250647b4.js.map


File diff suppressed because it is too large
+ 0 - 0
errand/vue/dist/js/407.86769bf6.js


File diff suppressed because it is too large
+ 0 - 0
errand/vue/dist/js/407.86769bf6.js.map


File diff suppressed because it is too large
+ 0 - 0
errand/vue/dist/js/437.fe87f3a4.js


File diff suppressed because it is too large
+ 0 - 0
errand/vue/dist/js/437.fe87f3a4.js.map


File diff suppressed because it is too large
+ 0 - 0
errand/vue/dist/js/446.27fdf4e4.js


File diff suppressed because it is too large
+ 0 - 0
errand/vue/dist/js/446.27fdf4e4.js.map


File diff suppressed because it is too large
+ 0 - 0
errand/vue/dist/js/540.0047c9e7.js


File diff suppressed because it is too large
+ 0 - 0
errand/vue/dist/js/540.0047c9e7.js.map


File diff suppressed because it is too large
+ 0 - 0
errand/vue/dist/js/576.54cebd85.js


File diff suppressed because it is too large
+ 0 - 0
errand/vue/dist/js/576.54cebd85.js.map


+ 2 - 0
errand/vue/dist/js/634.b46e0553.js

@@ -0,0 +1,2 @@
+"use strict";(self["webpackChunkvue"]=self["webpackChunkvue"]||[]).push([[634],{634:function(e,t,s){s.r(t),s.d(t,{default:function(){return o}});var i=function(){var e=this,t=e._self._c;return t("div",[t("div",{staticClass:"card",staticStyle:{padding:"15px"}},[e._v(" 您好,"+e._s(e.user?.name)+"!欢迎使用本系统 ")]),t("div",{staticStyle:{display:"flex",margin:"10px 0"}},[t("div",{staticClass:"card",staticStyle:{width:"50%"}},[t("div",{staticStyle:{"margin-bottom":"30px","font-size":"20px","font-weight":"bold"}},[e._v("公告列表")]),t("div",[t("el-timeline",{attrs:{slot:"reference",reverse:""},slot:"reference"},e._l(e.notices,(function(s){return t("el-timeline-item",{key:s.id,attrs:{timestamp:s.time}},[t("el-popover",{attrs:{placement:"right",width:"200",trigger:"hover",content:s.content}},[t("span",{attrs:{slot:"reference"},slot:"reference"},[e._v(e._s(s.title))])])],1)})),1)],1)])])])},r=[],n={name:"Home",data(){return{user:JSON.parse(localStorage.getItem("xm-user")||"{}"),notices:[]}},created(){this.$request.get("/notice/selectAll").then((e=>{this.notices=e.data||[]}))}},a=n,l=s(3736),c=(0,l.Z)(a,i,r,!1,null,null,null),o=c.exports}}]);
+//# sourceMappingURL=634.b46e0553.js.map

File diff suppressed because it is too large
+ 0 - 0
errand/vue/dist/js/634.b46e0553.js.map


+ 2 - 0
errand/vue/dist/js/643.3a6e992d.js

@@ -0,0 +1,2 @@
+"use strict";(self["webpackChunkvue"]=self["webpackChunkvue"]||[]).push([[643],{643:function(n,t,u){u.r(t),u.d(t,{default:function(){return i}});var e=function(){var n=this,t=n._self._c;return t("div",{staticClass:"main-content"})},s=[],l={data(){return{}},mounted(){},methods:{}},r=l,a=u(3736),c=(0,a.Z)(r,e,s,!1,null,null,null),i=c.exports}}]);
+//# sourceMappingURL=643.3a6e992d.js.map

File diff suppressed because it is too large
+ 0 - 0
errand/vue/dist/js/643.3a6e992d.js.map


+ 2 - 0
errand/vue/dist/js/649.9831543a.js

@@ -0,0 +1,2 @@
+"use strict";(self["webpackChunkvue"]=self["webpackChunkvue"]||[]).push([[649],{6649:function(t,e,n){n.r(e),n.d(e,{default:function(){return f}});var i=function(){var t=this,e=t._self._c;return e("div",[e("div",{staticStyle:{height:"100vh",overflow:"hidden",display:"flex","align-items":"center","justify-content":"center"}},[e("div",{staticStyle:{"font-size":"40px"}},[t._v("404 找不到页面 "),e("router-link",{attrs:{to:"/"}},[t._v("返回首页")])],1)])])},r=[],u={name:"404",data(){return{}},created(){},methods:{}},s=u,l=n(3736),a=(0,l.Z)(s,i,r,!1,null,"01fbf9fb",null),f=a.exports}}]);
+//# sourceMappingURL=649.9831543a.js.map

File diff suppressed because it is too large
+ 0 - 0
errand/vue/dist/js/649.9831543a.js.map


File diff suppressed because it is too large
+ 0 - 0
errand/vue/dist/js/667.7c08b5a8.js


File diff suppressed because it is too large
+ 0 - 0
errand/vue/dist/js/667.7c08b5a8.js.map


+ 2 - 0
errand/vue/dist/js/753.20fbbe19.js

@@ -0,0 +1,2 @@
+"use strict";(self["webpackChunkvue"]=self["webpackChunkvue"]||[]).push([[753],{4753:function(e,r,s){s.r(r),s.d(r,{default:function(){return u}});var t=function(){var e=this,r=e._self._c;return r("div",{staticClass:"container"},[r("div",{staticStyle:{width:"400px",padding:"30px","background-color":"white","border-radius":"5px"}},[r("div",{staticStyle:{"text-align":"center","font-size":"20px","margin-bottom":"20px",color:"#333"}},[e._v("欢迎使用")]),r("el-form",{ref:"formRef",attrs:{model:e.form,rules:e.rules}},[r("el-form-item",{attrs:{prop:"username"}},[r("el-input",{attrs:{"prefix-icon":"el-icon-user",placeholder:"请输入账号"},model:{value:e.form.username,callback:function(r){e.$set(e.form,"username",r)},expression:"form.username"}})],1),r("el-form-item",{attrs:{prop:"password"}},[r("el-input",{attrs:{"prefix-icon":"el-icon-lock",placeholder:"请输入密码","show-password":""},model:{value:e.form.password,callback:function(r){e.$set(e.form,"password",r)},expression:"form.password"}})],1),r("el-form-item",[r("el-button",{staticStyle:{width:"100%","background-color":"#333","border-color":"#333",color:"white"},on:{click:e.login}},[e._v("登 录")])],1)],1)],1)])},o=[],a=(s(7658),{name:"Login",data(){return{form:{role:"ADMIN"},rules:{username:[{required:!0,message:"请输入账号",trigger:"blur"}],password:[{required:!0,message:"请输入密码",trigger:"blur"}]}}},created(){},methods:{login(){this.$refs["formRef"].validate((e=>{e&&this.$request.post("/login",this.form).then((e=>{"200"===e.code?(localStorage.setItem("xm-user",JSON.stringify(e.data)),this.$router.push("/"),this.$message.success("登录成功")):this.$message.error(e.msg)}))}))}}}),i=a,l=s(3736),n=(0,l.Z)(i,t,o,!1,null,"573a5092",null),u=n.exports}}]);
+//# sourceMappingURL=753.20fbbe19.js.map

File diff suppressed because it is too large
+ 0 - 0
errand/vue/dist/js/753.20fbbe19.js.map


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