From 7d54f0e933a4ad95dee220eb5d36013ccd7cf872 Mon Sep 17 00:00:00 2001 From: xiaochong0302 Date: Sat, 16 Sep 2023 21:44:23 +0800 Subject: [PATCH] =?UTF-8?q?=E5=A2=9E=E5=8A=A0=E5=8C=BF=E5=90=8D=E8=AF=84?= =?UTF-8?q?=E4=BB=B7?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- app/Http/Admin/Controllers/ReviewController.php | 2 ++ app/Http/Admin/Services/Review.php | 4 ++++ app/Http/Admin/Views/review/edit.volt | 16 ++++++++++++++++ app/Http/Admin/Views/review/search.volt | 7 +++++++ app/Http/Home/Views/course/reviews.volt | 14 ++++++++++---- app/Http/Home/Views/review/add.volt | 7 +++++++ app/Http/Home/Views/review/edit.volt | 7 +++++++ app/Services/Logic/Course/ReviewList.php | 1 + app/Services/Logic/Review/ReviewInfo.php | 1 + 9 files changed, 55 insertions(+), 4 deletions(-) diff --git a/app/Http/Admin/Controllers/ReviewController.php b/app/Http/Admin/Controllers/ReviewController.php index b76c569e..1434f9b9 100644 --- a/app/Http/Admin/Controllers/ReviewController.php +++ b/app/Http/Admin/Controllers/ReviewController.php @@ -56,8 +56,10 @@ class ReviewController extends Controller $reviewService = new ReviewService(); $review = $reviewService->getReview($id); + $publishTypes = $reviewService->getPublishTypes(); $this->view->setVar('review', $review); + $this->view->setVar('publish_types', $publishTypes); } /** diff --git a/app/Http/Admin/Services/Review.php b/app/Http/Admin/Services/Review.php index 14bc5aa7..efd5a2cc 100644 --- a/app/Http/Admin/Services/Review.php +++ b/app/Http/Admin/Services/Review.php @@ -91,6 +91,10 @@ class Review extends Service $data['rating3'] = $validator->checkRating($post['rating3']); } + if (isset($post['anonymous'])) { + $data['anonymous'] = $validator->checkAnonymous($post['anonymous']); + } + if (isset($post['published'])) { $data['published'] = $validator->checkPublishStatus($post['published']); $this->recountCourseReviews($course); diff --git a/app/Http/Admin/Views/review/edit.volt b/app/Http/Admin/Views/review/edit.volt index eff64270..d7ff6bd6 100644 --- a/app/Http/Admin/Views/review/edit.volt +++ b/app/Http/Admin/Views/review/edit.volt @@ -33,6 +33,22 @@ +
+ +
+ {% for value,title in publish_types %} + {% set checked = value == review.published ? 'checked="checked"' : '' %} + + {% endfor %} +
+
+
+ +
+ + +
+
diff --git a/app/Http/Admin/Views/review/search.volt b/app/Http/Admin/Views/review/search.volt index 048436df..b2f0271f 100644 --- a/app/Http/Admin/Views/review/search.volt +++ b/app/Http/Admin/Views/review/search.volt @@ -32,6 +32,13 @@ {% endfor %}
+
+ +
+ + +
+
diff --git a/app/Http/Home/Views/course/reviews.volt b/app/Http/Home/Views/course/reviews.volt index 352573c3..0949507d 100644 --- a/app/Http/Home/Views/course/reviews.volt +++ b/app/Http/Home/Views/course/reviews.volt @@ -3,18 +3,24 @@ {% if pager.total_pages > 0 %}
{% for item in pager.items %} - {% set owner_url = url({'for':'home.user.show','id':item.owner.id}) %} + {% if item.anonymous == 0 %} + {% set owner_url = url({'for':'home.user.show','id':item.owner.id}) %} + {% set owner_name = item.owner.name %} + {% else %} + {% set owner_url = 'javascript:' %} + {% set owner_name = '匿名用户' %} + {% endif %} {% set like_url = url({'for':'home.review.like','id':item.id}) %}
{{ star_info(item.rating) }}
{{ item.content }}
+
+ +
+ + +
+
diff --git a/app/Http/Home/Views/review/edit.volt b/app/Http/Home/Views/review/edit.volt index 5a46d685..a6056c66 100644 --- a/app/Http/Home/Views/review/edit.volt +++ b/app/Http/Home/Views/review/edit.volt @@ -29,6 +29,13 @@
+
+ +
+ + +
+
diff --git a/app/Services/Logic/Course/ReviewList.php b/app/Services/Logic/Course/ReviewList.php index f3a1c270..a41acbba 100644 --- a/app/Services/Logic/Course/ReviewList.php +++ b/app/Services/Logic/Course/ReviewList.php @@ -69,6 +69,7 @@ class ReviewList extends LogicService 'id' => $review['id'], 'rating' => $review['rating'], 'content' => $review['content'], + 'anonymous' => $review['anonymous'], 'like_count' => $review['like_count'], 'create_time' => $review['create_time'], 'update_time' => $review['update_time'], diff --git a/app/Services/Logic/Review/ReviewInfo.php b/app/Services/Logic/Review/ReviewInfo.php index 7a2ac9c9..6e3cd18f 100644 --- a/app/Services/Logic/Review/ReviewInfo.php +++ b/app/Services/Logic/Review/ReviewInfo.php @@ -44,6 +44,7 @@ class ReviewInfo extends LogicService 'rating1' => $review->rating1, 'rating2' => $review->rating2, 'rating3' => $review->rating3, + 'anonymous' => $review->anonymous, 'published' => $review->published, 'deleted' => $review->deleted, 'like_count' => $review->like_count,