From 1eaf929a99238cd38224cadc7e7b720f7fe2d372 Mon Sep 17 00:00:00 2001 From: Qing Date: Tue, 11 Jul 2023 11:53:16 +0800 Subject: [PATCH] =?UTF-8?q?=E6=9B=B4=E6=96=B0?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- src/assets/images/oneFile.png | Bin 0 -> 53345 bytes src/assets/{images => svg}/DeleteButton.svg | 0 src/assets/{images => svg}/EditButton.svg | 0 src/assets/{images => svg}/WebsiteBanner.svg | 0 src/components/Home/Header.vue | 1 + src/components/Home/LoginDialog.vue | 62 +++- src/components/Home/PasswordStrength.vue | 124 +++++++ src/components/Monthly/Monthly.vue | 4 +- src/components/OneFile/OneFile.vue | 104 ++++++ src/components/OneFile/OneFileDetail.vue | 63 ++++ src/components/Project/ProjectList.vue | 2 +- src/components/System/AdminHome.vue | 336 +++++++++++++++++- .../System/Manage/articleManage.vue | 16 +- .../System/Manage/categoryManage.vue | 14 +- .../System/Manage/commentManage.vue | 14 +- .../System/Manage/projectManage.vue | 16 +- src/components/System/Manage/systemManage.vue | 6 +- src/components/System/Manage/userManage.vue | 14 +- src/components/User/UserProjects.vue | 2 +- src/router/index.js | 13 +- 20 files changed, 752 insertions(+), 39 deletions(-) create mode 100644 src/assets/images/oneFile.png rename src/assets/{images => svg}/DeleteButton.svg (100%) rename src/assets/{images => svg}/EditButton.svg (100%) rename src/assets/{images => svg}/WebsiteBanner.svg (100%) create mode 100644 src/components/Home/PasswordStrength.vue create mode 100644 src/components/OneFile/OneFile.vue create mode 100644 src/components/OneFile/OneFileDetail.vue diff --git a/src/assets/images/oneFile.png b/src/assets/images/oneFile.png new file mode 100644 index 0000000000000000000000000000000000000000..bc8b70eb40cd96375859bc72bbe600a27c940f2f GIT binary patch literal 53345 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 S?Lz#X}&@ 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

B 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 literal 0 HcmV?d00001 diff --git a/src/assets/images/DeleteButton.svg b/src/assets/svg/DeleteButton.svg similarity index 100% rename from src/assets/images/DeleteButton.svg rename to src/assets/svg/DeleteButton.svg diff --git a/src/assets/images/EditButton.svg b/src/assets/svg/EditButton.svg similarity index 100% rename from src/assets/images/EditButton.svg rename to src/assets/svg/EditButton.svg diff --git a/src/assets/images/WebsiteBanner.svg b/src/assets/svg/WebsiteBanner.svg similarity index 100% rename from src/assets/images/WebsiteBanner.svg rename to src/assets/svg/WebsiteBanner.svg diff --git a/src/components/Home/Header.vue b/src/components/Home/Header.vue index 3890efd..ba243c9 100644 --- a/src/components/Home/Header.vue +++ b/src/components/Home/Header.vue @@ -13,6 +13,7 @@ 榜 单 文 章 + OneFile 提交项目 diff --git a/src/components/Home/LoginDialog.vue b/src/components/Home/LoginDialog.vue index 1a0dc48..c4f1fd9 100644 --- a/src/components/Home/LoginDialog.vue +++ b/src/components/Home/LoginDialog.vue @@ -70,7 +70,7 @@ append-to-body :close-on-click-modal="false">

- + import axios from "axios"; import Vue from "vue"; +const checkPassword = (rule, value, callback) => { + var s_1_1 = "`1234567890-="; + var s_1_2 = "qwertyuiop[]\\"; + var s_1_3 = "asdfghjkl;'"; + var s_1_4 = "zxcvbnm,./"; + var s_2_1 = "`1234567890-="; + var s_2_2 = "QWERTYUIOP[]\\"; + var s_2_3 = "ASDFGHJKL;'"; + var s_2_4 = "ZXCVBNM,./"; + var s_3_1 = "~!@#$%^&*()_+"; + var s_3_2 = "QWERTYUIOP{}|"; + var s_3_3 = 'ASDFGHJKL:"'; + var s_3_4 = "ZXCVBNM<>?"; + var boolean = true; + + for (var n = 0; n < value.length - 2; n++) { + var char = value[n] + value[n + 1] + value[n + 2]; + if ( + s_1_1.indexOf(char) >= 0 || + s_1_2.indexOf(char) >= 0 || + s_1_3.indexOf(char) >= 0 || + s_1_4.indexOf(char) >= 0 || + s_2_1.indexOf(char) >= 0 || + s_2_2.indexOf(char) >= 0 || + s_2_3.indexOf(char) >= 0 || + s_2_4.indexOf(char) >= 0 || + s_3_1.indexOf(char) >= 0 || + s_3_2.indexOf(char) >= 0 || + s_3_3.indexOf(char) >= 0 || + s_3_4.indexOf(char) >= 0 + ) { + boolean = false; + break; + } + } + console.log(boolean); + if (boolean == true) { + callback(); + } + callback(new Error("密码中键盘顺序字符不得超过三个,请重新输入")); +}; export default { name: "LoginDialog", @@ -162,6 +203,25 @@ export default { password: [{required: true, message: "请输入密码", trigger: "blur"}], code: [{required: true, message: "请输入验证码", trigger: "blur"}], }, + registerRules: { + username: [ + // required:规则,o:失去焦点触发 + {required: true, message: "请输入用户名", trigger: "blur"}, + ], + password: [{required: true, message: "请输入密码", trigger: "blur"}, + { + //插入正则验证:大小写、数字、至少8位、不常用字符 + pattern: + /^(?=.*[a-z])(?=.*[A-Z])(?=.*\d)(?=.*[$@#!%^*?&+-])[A-Za-z\d$@#!%^*?&+-]{8,}/, + message: "密码应当至少8位且含有数字、大小写字母及特殊字符", + }, + + + //rule中插入比较复杂的验证方法 + { validator: checkPassword, trigger: "blur" }, + ], + code: [{required: true, message: "请输入验证码", trigger: "blur"}], + }, } }, methods:{ diff --git a/src/components/Home/PasswordStrength.vue b/src/components/Home/PasswordStrength.vue new file mode 100644 index 0000000..55180cf --- /dev/null +++ b/src/components/Home/PasswordStrength.vue @@ -0,0 +1,124 @@ + + + + + \ No newline at end of file diff --git a/src/components/Monthly/Monthly.vue b/src/components/Monthly/Monthly.vue index 4f0dcb0..278f62a 100644 --- a/src/components/Monthly/Monthly.vue +++ b/src/components/Monthly/Monthly.vue @@ -265,12 +265,12 @@ export default { .el-carousel__item:nth-child(2n) { background-size: cover; - background-image: url("../../assets/images/WebsiteBanner.svg"); + background-image: url("../../assets/svg/WebsiteBanner.svg"); } .el-carousel__item:nth-child(2n+1) { background-size: cover; - background-image: url("../../assets/images/WebsiteBanner.svg"); + background-image: url("../../assets/svg/WebsiteBanner.svg"); } .card_style{ height:390px; diff --git a/src/components/OneFile/OneFile.vue b/src/components/OneFile/OneFile.vue new file mode 100644 index 0000000..33f7008 --- /dev/null +++ b/src/components/OneFile/OneFile.vue @@ -0,0 +1,104 @@ + + + + + \ No newline at end of file diff --git a/src/components/OneFile/OneFileDetail.vue b/src/components/OneFile/OneFileDetail.vue new file mode 100644 index 0000000..907d71e --- /dev/null +++ b/src/components/OneFile/OneFileDetail.vue @@ -0,0 +1,63 @@ + + + + + \ No newline at end of file diff --git a/src/components/Project/ProjectList.vue b/src/components/Project/ProjectList.vue index f89f0f5..3005539 100644 --- a/src/components/Project/ProjectList.vue +++ b/src/components/Project/ProjectList.vue @@ -74,7 +74,7 @@ export default { }, // 截取文章内容的前 35 个字,并加上省略号 brief: function() { - return this.projectLists.projectDescription.substr(0, 40) + '...'; + return this.projectLists.projectDescription.substr(0, 33) + '...'; }, }, diff --git a/src/components/System/AdminHome.vue b/src/components/System/AdminHome.vue index 16d3080..acdd2a3 100644 --- a/src/components/System/AdminHome.vue +++ b/src/components/System/AdminHome.vue @@ -19,7 +19,7 @@
- 登录时间: 2023-7-9 + 登录时间: {{loginTime}}
@@ -47,7 +47,7 @@ >
- 678993 /个 + {{projectTotal}} /个 总共项目数量
@@ -67,7 +67,7 @@ >
- 678993 /个 + {{userTotal}} /个 总共用户数量
@@ -87,7 +87,7 @@ >
- 678993 /个 + {{AdminTotal}} /个 总共管理员数量
@@ -107,7 +107,7 @@ >
- 678993 /个 + {{ArticleTotal}} /个 总共文章数量
@@ -127,7 +127,7 @@ >
- 678993 /个 + {{CategoryTotal}} /个 总共标签数量
@@ -147,7 +147,7 @@ >
- 678993 /个 + {{CommentTotal}} /个 总共评论数量
@@ -157,7 +157,9 @@
+
+
@@ -165,22 +167,340 @@