From dd0c26d6ad263c41978a55889152390c1ef21a16 Mon Sep 17 00:00:00 2001 From: xiaochong0302 Date: Wed, 20 Dec 2023 21:17:10 +0800 Subject: [PATCH 01/16] v1.6.8 start --- CHANGELOG.md | 3 +++ README.md | 2 +- app/Http/Admin/Services/Role.php | 10 ++++++++++ app/Library/AppInfo.php | 2 +- 4 files changed, 15 insertions(+), 2 deletions(-) diff --git a/CHANGELOG.md b/CHANGELOG.md index 3e1502d6..c6e585db 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -1,3 +1,6 @@ +### [v1.6.8](https://gitee.com/koogua/course-tencent-cloud/releases/v1.6.8)(2024-01-15) + + ### [v1.6.7](https://gitee.com/koogua/course-tencent-cloud/releases/v1.6.7)(2023-12-15) - 增加文章分类功能 diff --git a/README.md b/README.md index 07882628..1b83845f 100644 --- a/README.md +++ b/README.md @@ -13,7 +13,7 @@ ### 系统功能 -实现了点播、直播、专栏、面授、问答、会员、积分、秒杀等。 +实现了点播、直播、专栏、问答、会员、积分等。 友情提示: diff --git a/app/Http/Admin/Services/Role.php b/app/Http/Admin/Services/Role.php index 3899d6cd..d832d852 100644 --- a/app/Http/Admin/Services/Role.php +++ b/app/Http/Admin/Services/Role.php @@ -172,10 +172,20 @@ class Role extends Service } if (in_array('admin.category.list', $routes)) { + $list[] = 'admin.article.category'; + $list[] = 'admin.question.category'; $list[] = 'admin.course.category'; $list[] = 'admin.help.category'; } + if (in_array('admin.article.category', $routes)) { + $list[] = 'admin.category.list'; + } + + if (in_array('admin.question.category', $routes)) { + $list[] = 'admin.category.list'; + } + if (in_array('admin.course.category', $routes)) { $list[] = 'admin.category.list'; } diff --git a/app/Library/AppInfo.php b/app/Library/AppInfo.php index a33bb0a3..72fadf97 100644 --- a/app/Library/AppInfo.php +++ b/app/Library/AppInfo.php @@ -16,7 +16,7 @@ class AppInfo protected $link = 'https://www.koogua.com'; - protected $version = '1.6.7'; + protected $version = '1.6.8'; public function __get($name) { From 6c33dbc72417d06e795cb697343eff899ec6ab4c Mon Sep 17 00:00:00 2001 From: xiaochong0302 Date: Wed, 20 Dec 2023 21:36:13 +0800 Subject: [PATCH 02/16] =?UTF-8?q?=E4=BF=AE=E6=AD=A3=E8=AF=BE=E6=97=B6?= =?UTF-8?q?=E5=8F=91=E5=B8=83switch=E5=BC=80=E5=85=B3=E9=97=AE=E9=A2=98?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- app/Http/Admin/Views/chapter/lessons.volt | 46 ------------------- .../Admin/Views/chapter/lessons_live.volt | 4 +- .../Admin/Views/chapter/lessons_offline.volt | 4 +- .../Admin/Views/chapter/lessons_read.volt | 8 ++-- app/Http/Admin/Views/chapter/lessons_vod.volt | 8 ++-- 5 files changed, 12 insertions(+), 58 deletions(-) diff --git a/app/Http/Admin/Views/chapter/lessons.volt b/app/Http/Admin/Views/chapter/lessons.volt index 861ca1a3..ceb10fb3 100644 --- a/app/Http/Admin/Views/chapter/lessons.volt +++ b/app/Http/Admin/Views/chapter/lessons.volt @@ -31,50 +31,4 @@ {{ partial('chapter/lessons_offline') }} {% endif %} -{% endblock %} - -{% block inline_js %} - - - {% endblock %} \ No newline at end of file diff --git a/app/Http/Admin/Views/chapter/lessons_live.volt b/app/Http/Admin/Views/chapter/lessons_live.volt index 0ff808d0..dc93fe70 100644 --- a/app/Http/Admin/Views/chapter/lessons_live.volt +++ b/app/Http/Admin/Views/chapter/lessons_live.volt @@ -62,8 +62,8 @@ {{ live_time_info(item.attrs) }} {{ live_status_info(item.attrs['stream']['status']) }} - - + +
diff --git a/app/Http/Admin/Views/chapter/lessons_offline.volt b/app/Http/Admin/Views/chapter/lessons_offline.volt index dae91e84..2d2a4fa7 100644 --- a/app/Http/Admin/Views/chapter/lessons_offline.volt +++ b/app/Http/Admin/Views/chapter/lessons_offline.volt @@ -42,8 +42,8 @@ {{ offline_time_info(item.attrs) }} - - + +
diff --git a/app/Http/Admin/Views/chapter/lessons_read.volt b/app/Http/Admin/Views/chapter/lessons_read.volt index 317c5908..56c7a2a9 100644 --- a/app/Http/Admin/Views/chapter/lessons_read.volt +++ b/app/Http/Admin/Views/chapter/lessons_read.volt @@ -30,7 +30,7 @@ {% set update_url = url({'for':'admin.chapter.update','id':item.id}) %} {% set delete_url = url({'for':'admin.chapter.delete','id':item.id}) %} {% set restore_url = url({'for':'admin.chapter.restore','id':item.id}) %} - {% set comment_url = url({'for':'admin.comment.list'},{'item_id':item.id,'item_type':1}) %} + {% set comments_url = url({'for':'admin.comment.list'},{'item_id':item.id,'item_type':1}) %} {{ item.id }} @@ -43,8 +43,8 @@ {{ item.like_count }} {{ item.comment_count }} - - + +
@@ -59,7 +59,7 @@
  • 还原
  • {% endif %}
    -
  • 评论管理
  • +
  • 评论管理
  • diff --git a/app/Http/Admin/Views/chapter/lessons_vod.volt b/app/Http/Admin/Views/chapter/lessons_vod.volt index 4a2018f8..4109617f 100644 --- a/app/Http/Admin/Views/chapter/lessons_vod.volt +++ b/app/Http/Admin/Views/chapter/lessons_vod.volt @@ -44,7 +44,7 @@ {% set update_url = url({'for':'admin.chapter.update','id':item.id}) %} {% set delete_url = url({'for':'admin.chapter.delete','id':item.id}) %} {% set restore_url = url({'for':'admin.chapter.restore','id':item.id}) %} - {% set comment_url = url({'for':'admin.comment.list'},{'item_id':item.id,'item_type':1}) %} + {% set comments_url = url({'for':'admin.comment.list'},{'item_id':item.id,'item_type':1}) %} {{ item.id }} @@ -61,8 +61,8 @@ {{ item.like_count }} {{ item.comment_count }} - - + +
    @@ -77,7 +77,7 @@
  • 还原
  • {% endif %}
    -
  • 评论管理
  • +
  • 评论管理
  • From db82de6f35e8e5bfe49b95973d08e2cdeaeb1a93 Mon Sep 17 00:00:00 2001 From: xiaochong0302 Date: Wed, 20 Dec 2023 21:53:19 +0800 Subject: [PATCH 03/16] =?UTF-8?q?=E4=BF=AE=E6=AD=A3plan=5Fid=E6=A0=BC?= =?UTF-8?q?=E5=BC=8F=E9=97=AE=E9=A2=98?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- app/Models/CourseUser.php | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/app/Models/CourseUser.php b/app/Models/CourseUser.php index 64dbf479..a8a4dc93 100644 --- a/app/Models/CourseUser.php +++ b/app/Models/CourseUser.php @@ -119,7 +119,7 @@ class CourseUser extends Model public function beforeCreate() { - $this->plan_id = (int)date('ymd'); + $this->plan_id = (int)date('Ymd'); $this->create_time = time(); } From decf80273a227ddabb1dcc22205a3f3e8be4cda4 Mon Sep 17 00:00:00 2001 From: xiaochong0302 Date: Thu, 21 Dec 2023 09:26:48 +0800 Subject: [PATCH 04/16] =?UTF-8?q?=E7=BB=9F=E4=B8=80layui-skin=3Dswitch?= =?UTF-8?q?=E5=B1=9E=E6=80=A7=E4=BD=8D=E7=BD=AE?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- app/Http/Admin/Views/chapter/lessons_live.volt | 6 ++++-- app/Http/Admin/Views/chapter/lessons_offline.volt | 6 ++++-- app/Http/Admin/Views/chapter/lessons_read.volt | 6 ++++-- app/Http/Admin/Views/chapter/lessons_vod.volt | 6 ++++-- 4 files changed, 16 insertions(+), 8 deletions(-) diff --git a/app/Http/Admin/Views/chapter/lessons_live.volt b/app/Http/Admin/Views/chapter/lessons_live.volt index dc93fe70..e1bf3ba5 100644 --- a/app/Http/Admin/Views/chapter/lessons_live.volt +++ b/app/Http/Admin/Views/chapter/lessons_live.volt @@ -62,8 +62,10 @@ {{ live_time_info(item.attrs) }} {{ live_status_info(item.attrs['stream']['status']) }} - - + +
    diff --git a/app/Http/Admin/Views/chapter/lessons_offline.volt b/app/Http/Admin/Views/chapter/lessons_offline.volt index 2d2a4fa7..e9a8c6a5 100644 --- a/app/Http/Admin/Views/chapter/lessons_offline.volt +++ b/app/Http/Admin/Views/chapter/lessons_offline.volt @@ -42,8 +42,10 @@ {{ offline_time_info(item.attrs) }} - - + +
    diff --git a/app/Http/Admin/Views/chapter/lessons_read.volt b/app/Http/Admin/Views/chapter/lessons_read.volt index 56c7a2a9..827aacf1 100644 --- a/app/Http/Admin/Views/chapter/lessons_read.volt +++ b/app/Http/Admin/Views/chapter/lessons_read.volt @@ -43,8 +43,10 @@ {{ item.like_count }} {{ item.comment_count }} - - + +
    diff --git a/app/Http/Admin/Views/chapter/lessons_vod.volt b/app/Http/Admin/Views/chapter/lessons_vod.volt index 4109617f..6f016903 100644 --- a/app/Http/Admin/Views/chapter/lessons_vod.volt +++ b/app/Http/Admin/Views/chapter/lessons_vod.volt @@ -61,8 +61,10 @@ {{ item.like_count }} {{ item.comment_count }} - - + +
    From ce9f0eade034f3dd2d73b6da47e40c9ad489626b Mon Sep 17 00:00:00 2001 From: xiaochong0302 Date: Mon, 25 Dec 2023 20:18:13 +0800 Subject: [PATCH 05/16] =?UTF-8?q?=E4=BF=AE=E6=AD=A3=E7=94=A8=E6=88=B7activ?= =?UTF-8?q?e=5Ftime=E6=90=9C=E7=B4=A2=E6=9D=A1=E4=BB=B6?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- app/Caches/Counter.php | 23 ++++------------------- app/Caches/UserDailyCounter.php | 2 -- app/Http/Admin/Views/user/search.volt | 2 +- app/Http/Home/Views/order/confirm.volt | 12 ++++++------ app/Library/Paginator/Query.php | 4 ++-- 5 files changed, 13 insertions(+), 30 deletions(-) diff --git a/app/Caches/Counter.php b/app/Caches/Counter.php index 7d985e02..14ece69f 100644 --- a/app/Caches/Counter.php +++ b/app/Caches/Counter.php @@ -9,6 +9,7 @@ namespace App\Caches; use App\Library\Cache\Backend\Redis as RedisCache; use Phalcon\Di\Injectable; +use Redis; abstract class Counter extends Injectable { @@ -19,7 +20,7 @@ abstract class Counter extends Injectable protected $cache; /** - * @var \Redis + * @var Redis */ protected $redis; @@ -30,19 +31,13 @@ abstract class Counter extends Injectable $this->redis = $this->cache->getRedis(); } - /** - * 获取缓存内容 - * - * @param mixed $id - * @return array - */ public function get($id = null) { $key = $this->getKey($id); $content = $this->redis->hGetAll($key); - if (!$this->cache->exists($key)) { + if (!$this->redis->exists($key)) { $content = $this->getContent($id); $lifetime = $this->getLifetime(); @@ -54,23 +49,13 @@ abstract class Counter extends Injectable return $content; } - /** - * 删除缓存内容 - * - * @param mixed $id - */ public function delete($id = null) { $key = $this->getKey($id); - $this->cache->delete($key); + $this->redis->del($key); } - /** - * 重建缓存内容 - * - * @param mixed $id - */ public function rebuild($id = null) { $this->delete($id); diff --git a/app/Caches/UserDailyCounter.php b/app/Caches/UserDailyCounter.php index 19f59830..9497d1c7 100644 --- a/app/Caches/UserDailyCounter.php +++ b/app/Caches/UserDailyCounter.php @@ -10,8 +10,6 @@ namespace App\Caches; class UserDailyCounter extends Counter { - protected $lifetime = 86400; - public function getLifetime() { $tomorrow = strtotime('tomorrow'); diff --git a/app/Http/Admin/Views/user/search.volt b/app/Http/Admin/Views/user/search.volt index 0d88f3c3..df41dc26 100644 --- a/app/Http/Admin/Views/user/search.volt +++ b/app/Http/Admin/Views/user/search.volt @@ -35,7 +35,7 @@
    -
    - +
    diff --git a/app/Http/Home/Views/order/confirm.volt b/app/Http/Home/Views/order/confirm.volt index 0da3b7c8..d9e18393 100644 --- a/app/Http/Home/Views/order/confirm.volt +++ b/app/Http/Home/Views/order/confirm.volt @@ -4,7 +4,7 @@ {{ partial('macros/course') }} - {%- macro cart_course_card(course, user) %} + {%- macro cart_course_card(course) %} {% set course_url = url({'for':'home.course.show','id':course.id}) %}
    @@ -21,10 +21,10 @@ {% if course.model in [1,2,3] %}

    学习期限 - {{ course.study_expiry }}个月 + {{ course.study_expiry }} 个月 {% if course.refund_expiry > 0 %} 退款期限 - {{ course.refund_expiry }}天 + {{ course.refund_expiry }} 天 {% else %} 退款期限 不支持 @@ -82,7 +82,7 @@

    期限 - {{ vip.expiry }}个月 + {{ vip.expiry }} 个月

    @@ -96,11 +96,11 @@
    {% if confirm.item_type == 1 %} {% set course = confirm.item_info.course %} - {{ cart_course_card(course, auth_user) }} + {{ cart_course_card(course) }} {% elseif confirm.item_type == 2 %} {% set package = confirm.item_info.package %} {% for course in package.courses %} - {{ cart_course_card(course, auth_user) }} + {{ cart_course_card(course) }} {% endfor %} {% elseif confirm.item_type == 3 %} {{ cart_reward_card(confirm.item_info) }} diff --git a/app/Library/Paginator/Query.php b/app/Library/Paginator/Query.php index 66f2d839..560512cb 100644 --- a/app/Library/Paginator/Query.php +++ b/app/Library/Paginator/Query.php @@ -35,14 +35,14 @@ class Query { $page = $this->request->getQuery('page', ['trim', 'int'], 1); - return $page > 100 ? 100 : $page; + return min($page, 100); } public function getLimit() { $limit = $this->request->getQuery('limit', ['trim', 'int'], 12); - return $limit > 100 ? 100 : $limit; + return min($limit, 100); } public function getSort() From 33fc75b9f8422841d6bd83c9a4a606d77bf5c36e Mon Sep 17 00:00:00 2001 From: xiaochong0302 Date: Wed, 27 Dec 2023 16:05:23 +0800 Subject: [PATCH 06/16] =?UTF-8?q?1.=E7=B2=BE=E7=AE=80chapter/lessons.volt?= =?UTF-8?q?=202.=E4=BD=BF=E7=94=A8ServiceTrait=E7=B2=BE=E7=AE=80=E4=BB=A3?= =?UTF-8?q?=E7=A0=81?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- README.md | 6 - app/Console/Migrations/Migration.php | 4 + app/Http/Admin/Views/chapter/lessons.volt | 113 ++++++++++++++++-- .../Admin/Views/chapter/lessons_live.volt | 88 -------------- .../Admin/Views/chapter/lessons_offline.volt | 65 ---------- .../Admin/Views/chapter/lessons_read.volt | 71 ----------- app/Http/Admin/Views/chapter/lessons_vod.volt | 89 -------------- app/Http/Api/Controllers/Controller.php | 5 - app/Listeners/Listener.php | 37 +----- app/Validators/Validator.php | 15 +-- 10 files changed, 113 insertions(+), 380 deletions(-) delete mode 100644 app/Http/Admin/Views/chapter/lessons_live.volt delete mode 100644 app/Http/Admin/Views/chapter/lessons_offline.volt delete mode 100644 app/Http/Admin/Views/chapter/lessons_read.volt delete mode 100644 app/Http/Admin/Views/chapter/lessons_vod.volt diff --git a/README.md b/README.md index 1b83845f..918714fd 100644 --- a/README.md +++ b/README.md @@ -34,12 +34,6 @@ H5手机端演示: 演示账号:13507083515 / 123456 -微信公众号演示: - -![公众号二维码](https://portal-1255691183.file.myqcloud.com/img/content/616f998270eca.png) - -演示账号:13507083515 / 123456 - 支付流程演示: - [MySQL提升课程全面讲解MySQL架构设计(0.01元)](https://ctc.koogua.com/order/confirm?item_id=1390&item_type=1) diff --git a/app/Console/Migrations/Migration.php b/app/Console/Migrations/Migration.php index 98d848d0..433999b8 100644 --- a/app/Console/Migrations/Migration.php +++ b/app/Console/Migrations/Migration.php @@ -7,7 +7,11 @@ namespace App\Console\Migrations; +use App\Traits\Service as ServiceTrait; + abstract class Migration { + use ServiceTrait; + abstract public function run(); } \ No newline at end of file diff --git a/app/Http/Admin/Views/chapter/lessons.volt b/app/Http/Admin/Views/chapter/lessons.volt index ceb10fb3..e0ea4ca6 100644 --- a/app/Http/Admin/Views/chapter/lessons.volt +++ b/app/Http/Admin/Views/chapter/lessons.volt @@ -2,6 +2,40 @@ {% block content %} + {{ partial('macros/course') }} + + {%- macro attrs_info(model,attrs) %} + {% if model == 1 %} + 类型:{{ model_type(model) }} + {% if attrs['duration'] > 0 %} + 时长:{{ attrs['duration']|duration }} + {% else %} + 时长:N/A + {% endif %} + {% elseif model == 2 %} + 类型:{{ model_type(model) }} + {% if attrs['start_time'] > 0 %} + 时间:{{ date('Y-m-d H:i',attrs['start_time']) }} + {% else %} + 时间:N/A + {% endif %} + {% elseif model == 3 %} + 类型:{{ model_type(model) }} + {% if attrs['word_count'] > 0 %} + 字数:{{ attrs['word_count'] }} + {% else %} + 字数:N/A + {% endif %} + {% elseif model == 4 %} + 类型:{{ model_type(model) }} + {% if attrs['start_time'] > 0 %} + 时间:{{ date('Y-m-d H:i',attrs['start_time']) }} + {% else %} + 时间:N/A + {% endif %} + {% endif %} + {%- endmacro %} + {% set back_url = url({'for':'admin.course.chapters','id':course.id}) %} {% set add_chapter_url = url({'for':'admin.chapter.add'},{'type':'chapter','course_id':course.id}) %} {% set add_lesson_url = url({'for':'admin.chapter.add'},{'type':'lesson','course_id':course.id,'parent_id':chapter.id}) %} @@ -21,14 +55,75 @@
    - {% if course.model == 1 %} - {{ partial('chapter/lessons_vod') }} - {% elseif course.model == 2 %} - {{ partial('chapter/lessons_live') }} - {% elseif course.model == 3 %} - {{ partial('chapter/lessons_read') }} - {% elseif course.model == 4 %} - {{ partial('chapter/lessons_offline') }} - {% endif %} + + + + + + + + + + + + + + + + + + + + + + + + + {% for item in lessons %} + {% set chapter_url = url({'for':'home.chapter.show','id':item.id}) %} + {% set edit_url = url({'for':'admin.chapter.edit','id':item.id}) %} + {% set update_url = url({'for':'admin.chapter.update','id':item.id}) %} + {% set delete_url = url({'for':'admin.chapter.delete','id':item.id}) %} + {% set restore_url = url({'for':'admin.chapter.restore','id':item.id}) %} + {% set comment_url = url({'for':'admin.comment.list'},{'item_id':item.id,'item_type':1}) %} + + + + + + + + + + + {% endfor %} + +
    名称学员点赞评论排序免费发布操作
    +

    + {{ item.title }} + ({{ item.id }}) + +

    +

    {{ attrs_info(item.model,item.attrs) }}

    +
    {{ item.user_count }}{{ item.like_count }}{{ item.comment_count }} + +
    + + +
    +
    {% endblock %} \ No newline at end of file diff --git a/app/Http/Admin/Views/chapter/lessons_live.volt b/app/Http/Admin/Views/chapter/lessons_live.volt deleted file mode 100644 index e1bf3ba5..00000000 --- a/app/Http/Admin/Views/chapter/lessons_live.volt +++ /dev/null @@ -1,88 +0,0 @@ -{%- macro live_time_info(attrs) %} - {% if attrs['start_time'] > 0 %} -

    开始:{{ date('Y-m-d H:i',attrs['start_time']) }}

    -

    结束:{{ date('Y-m-d H:i',attrs['end_time']) }}

    - {% else %} - N/A - {% endif %} -{%- endmacro %} - -{%- macro live_status_info(status) %} - {% if status == 'active' %} - 活跃 - {% elseif status == 'inactive' %} - 沉默 - {% elseif status == 'forbid' %} - 禁播 - {% endif %} -{%- endmacro %} - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - {% for item in lessons %} - {% set chapter_url = url({'for':'home.chapter.show','id':item.id}) %} - {% set edit_url = url({'for':'admin.chapter.edit','id':item.id}) %} - {% set update_url = url({'for':'admin.chapter.update','id':item.id}) %} - {% set delete_url = url({'for':'admin.chapter.delete','id':item.id}) %} - {% set restore_url = url({'for':'admin.chapter.restore','id':item.id}) %} - - - - - - - - - - - - - {% endfor %} - -
    编号名称学员点赞时间推流排序免费发布操作
    {{ item.id }} - {{ item.title }} - - {{ item.user_count }}{{ item.like_count }}{{ live_time_info(item.attrs) }}{{ live_status_info(item.attrs['stream']['status']) }} -
    - -
      - {% if item.published == 1 %} -
    • 浏览
    • - {% endif %} -
    • 编辑
    • - {% if item.deleted == 0 %} -
    • 删除
    • - {% else %} -
    • 还原
    • - {% endif %} -
    -
    -
    \ No newline at end of file diff --git a/app/Http/Admin/Views/chapter/lessons_offline.volt b/app/Http/Admin/Views/chapter/lessons_offline.volt deleted file mode 100644 index e9a8c6a5..00000000 --- a/app/Http/Admin/Views/chapter/lessons_offline.volt +++ /dev/null @@ -1,65 +0,0 @@ -{%- macro offline_time_info(attrs) %} - {% if attrs['start_time'] > 0 %} -

    开始:{{ date('Y-m-d H:i',attrs['start_time']) }}

    -

    结束:{{ date('Y-m-d H:i',attrs['end_time']) }}

    - {% else %} - N/A - {% endif %} -{%- endmacro %} - - - - - - - - - - - - - - - - - - - - - - - - {% for item in lessons %} - {% set edit_url = url({'for':'admin.chapter.edit','id':item.id}) %} - {% set update_url = url({'for':'admin.chapter.update','id':item.id}) %} - {% set delete_url = url({'for':'admin.chapter.delete','id':item.id}) %} - {% set restore_url = url({'for':'admin.chapter.restore','id':item.id}) %} - - - - - - - - - - {% endfor %} - -
    编号名称时间排序免费发布操作
    {{ item.id }} - {{ item.title }} - - {{ offline_time_info(item.attrs) }} -
    - - -
    -
    \ No newline at end of file diff --git a/app/Http/Admin/Views/chapter/lessons_read.volt b/app/Http/Admin/Views/chapter/lessons_read.volt deleted file mode 100644 index 827aacf1..00000000 --- a/app/Http/Admin/Views/chapter/lessons_read.volt +++ /dev/null @@ -1,71 +0,0 @@ - - - - - - - - - - - - - - - - - - - - - - - - - - - {% for item in lessons %} - {% set chapter_url = url({'for':'home.chapter.show','id':item.id}) %} - {% set edit_url = url({'for':'admin.chapter.edit','id':item.id}) %} - {% set update_url = url({'for':'admin.chapter.update','id':item.id}) %} - {% set delete_url = url({'for':'admin.chapter.delete','id':item.id}) %} - {% set restore_url = url({'for':'admin.chapter.restore','id':item.id}) %} - {% set comments_url = url({'for':'admin.comment.list'},{'item_id':item.id,'item_type':1}) %} - - - - - - - - - - - - {% endfor %} - -
    编号名称学员点赞评论排序免费发布操作
    {{ item.id }} -

    - {{ item.title }} - -

    -
    {{ item.user_count }}{{ item.like_count }}{{ item.comment_count }} -
    - - -
    -
    \ No newline at end of file diff --git a/app/Http/Admin/Views/chapter/lessons_vod.volt b/app/Http/Admin/Views/chapter/lessons_vod.volt deleted file mode 100644 index 6f016903..00000000 --- a/app/Http/Admin/Views/chapter/lessons_vod.volt +++ /dev/null @@ -1,89 +0,0 @@ -{%- macro file_status(value) %} - {% if value == 'pending' %} - 待上传 - {% elseif value == 'uploaded' %} - 已上传 - {% elseif value == 'translating' %} - 转码中 - {% elseif value == 'translated' %} - 已转码 - {% elseif value == 'failed' %} - 已失败 - {% endif %} -{%- endmacro %} - - - - - - - - - - - - - - - - - - - - - - - - - - - - {% for item in lessons %} - {% set chapter_url = url({'for':'home.chapter.show','id':item.id}) %} - {% set edit_url = url({'for':'admin.chapter.edit','id':item.id}) %} - {% set update_url = url({'for':'admin.chapter.update','id':item.id}) %} - {% set delete_url = url({'for':'admin.chapter.delete','id':item.id}) %} - {% set restore_url = url({'for':'admin.chapter.restore','id':item.id}) %} - {% set comments_url = url({'for':'admin.comment.list'},{'item_id':item.id,'item_type':1}) %} - - - - - - - - - - - - {% endfor %} - -
    编号名称学员点赞评论排序免费发布操作
    {{ item.id }} -

    - {{ item.title }} - -

    -

    - 状态:{{ file_status(item.attrs['file']['status']) }} - 时长:{{ item.attrs['duration']|duration }} -

    -
    {{ item.user_count }}{{ item.like_count }}{{ item.comment_count }} -
    - - -
    -
    \ No newline at end of file diff --git a/app/Http/Api/Controllers/Controller.php b/app/Http/Api/Controllers/Controller.php index f9677c20..60c3dac3 100644 --- a/app/Http/Api/Controllers/Controller.php +++ b/app/Http/Api/Controllers/Controller.php @@ -11,7 +11,6 @@ use App\Models\User as UserModel; use App\Services\Auth\Api as ApiAuth; use App\Traits\Response as ResponseTrait; use App\Traits\Security as SecurityTrait; -use App\Validators\Validator as AppValidator; use Phalcon\Mvc\Dispatcher; class Controller extends \Phalcon\Mvc\Controller @@ -31,10 +30,6 @@ class Controller extends \Phalcon\Mvc\Controller $this->setCors(); } - $validator = new AppValidator(); - - $validator->checkSiteStatus(); - $this->checkRateLimit(); return true; diff --git a/app/Listeners/Listener.php b/app/Listeners/Listener.php index 87f867f4..d305d6d7 100644 --- a/app/Listeners/Listener.php +++ b/app/Listeners/Listener.php @@ -8,50 +8,19 @@ namespace App\Listeners; use App\Services\Service as AppService; -use App\Traits\Auth as AuthTrait; +use App\Traits\Service as ServiceTrait; use Phalcon\Mvc\User\Plugin as UserPlugin; class Listener extends UserPlugin { - use AuthTrait; + use ServiceTrait; - public function getConfig() + public function getLogger($channel = 'listen') { $appService = new AppService(); - return $appService->getConfig(); - } - - - public function getCache() - { - $appService = new AppService(); - - return $appService->getCache(); - } - - public function getRedis() - { - $appService = new AppService(); - - return $appService->getRedis(); - } - - public function getLogger($channel = null) - { - $appService = new AppService(); - - $channel = $channel ?: 'listen'; - return $appService->getLogger($channel); } - public function getSettings($section) - { - $appService = new AppService(); - - return $appService->getSettings($section); - } - } diff --git a/app/Validators/Validator.php b/app/Validators/Validator.php index d395a851..9f93f4af 100644 --- a/app/Validators/Validator.php +++ b/app/Validators/Validator.php @@ -8,25 +8,14 @@ namespace App\Validators; use App\Exceptions\Forbidden as ForbiddenException; -use App\Exceptions\ServiceUnavailable; -use App\Exceptions\ServiceUnavailable as ServiceUnavailableException; use App\Exceptions\Unauthorized as UnauthorizedException; -use App\Services\Service as AppService; +use App\Traits\Service as ServiceTrait; use Phalcon\Di\Injectable; class Validator extends Injectable { - public function checkSiteStatus() - { - $service = new AppService(); - - $siteInfo = $service->getSettings('site'); - - if ($siteInfo['status'] == 'closed') { - throw new ServiceUnavailableException('sys.service_unavailable'); - } - } + use ServiceTrait; public function checkAuthUser($userId) { From 5ce45971e63b9001cc3f79b5e04fe4928c084a09 Mon Sep 17 00:00:00 2001 From: xiaochong0302 Date: Thu, 28 Dec 2023 21:31:59 +0800 Subject: [PATCH 07/16] =?UTF-8?q?=E4=BC=98=E5=8C=96AccountSearchTrait?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- app/Http/Admin/Services/Answer.php | 4 ++ app/Http/Admin/Services/Article.php | 4 ++ app/Http/Admin/Services/Consult.php | 22 ++------- app/Http/Admin/Services/CourseUser.php | 21 ++------ app/Http/Admin/Services/Order.php | 37 +++++--------- app/Http/Admin/Services/Question.php | 4 ++ app/Http/Admin/Services/Refund.php | 33 +++---------- app/Http/Admin/Services/Review.php | 22 ++------- app/Http/Admin/Services/Trade.php | 31 +++--------- .../Services/Traits/AccountSearchTrait.php | 49 +++++++++++++++++++ .../Services/Traits/OrderSearchTrait.php | 32 ++++++++++++ app/Http/Admin/Services/User.php | 19 +++---- app/Http/Admin/Views/answer/search.volt | 4 +- app/Http/Admin/Views/article/search.volt | 4 +- app/Http/Admin/Views/question/search.volt | 4 +- app/Http/Admin/Views/user/search.volt | 2 +- 16 files changed, 147 insertions(+), 145 deletions(-) create mode 100644 app/Http/Admin/Services/Traits/AccountSearchTrait.php create mode 100644 app/Http/Admin/Services/Traits/OrderSearchTrait.php diff --git a/app/Http/Admin/Services/Answer.php b/app/Http/Admin/Services/Answer.php index c705c432..9587f8f4 100644 --- a/app/Http/Admin/Services/Answer.php +++ b/app/Http/Admin/Services/Answer.php @@ -9,6 +9,7 @@ namespace App\Http\Admin\Services; use App\Builders\AnswerList as AnswerListBuilder; use App\Builders\ReportList as ReportListBuilder; +use App\Http\Admin\Services\Traits\AccountSearchTrait; use App\Library\Paginator\Query as PagerQuery; use App\Models\Answer as AnswerModel; use App\Models\Question as QuestionModel; @@ -31,6 +32,7 @@ class Answer extends Service { use AnswerDataTrait; + use AccountSearchTrait; public function getPublishTypes() { @@ -48,6 +50,8 @@ class Answer extends Service $params = $pagerQuery->getParams(); + $params = $this->handleAccountSearchParams($params); + $params['deleted'] = $params['deleted'] ?? 0; $sort = $pagerQuery->getSort(); diff --git a/app/Http/Admin/Services/Article.php b/app/Http/Admin/Services/Article.php index fb9c0b03..f0f568ce 100644 --- a/app/Http/Admin/Services/Article.php +++ b/app/Http/Admin/Services/Article.php @@ -10,6 +10,7 @@ namespace App\Http\Admin\Services; use App\Builders\ArticleList as ArticleListBuilder; use App\Builders\ReportList as ReportListBuilder; use App\Caches\Article as ArticleCache; +use App\Http\Admin\Services\Traits\AccountSearchTrait; use App\Library\Paginator\Query as PagerQuery; use App\Library\Utils\Word as WordUtil; use App\Models\Article as ArticleModel; @@ -34,6 +35,7 @@ class Article extends Service { use ArticleDataTrait; + use AccountSearchTrait; public function getXmTags($id) { @@ -70,6 +72,8 @@ class Article extends Service $params = $pagerQuery->getParams(); + $params = $this->handleAccountSearchParams($params); + if (!empty($params['xm_tag_ids'])) { $params['tag_id'] = explode(',', $params['xm_tag_ids']); } diff --git a/app/Http/Admin/Services/Consult.php b/app/Http/Admin/Services/Consult.php index 44ae915c..9a44d10a 100644 --- a/app/Http/Admin/Services/Consult.php +++ b/app/Http/Admin/Services/Consult.php @@ -8,14 +8,13 @@ namespace App\Http\Admin\Services; use App\Builders\ConsultList as ConsultListBuilder; +use App\Http\Admin\Services\Traits\AccountSearchTrait; use App\Library\Paginator\Query as PagerQuery; -use App\Library\Validators\Common as CommonValidator; use App\Models\Chapter as ChapterModel; use App\Models\Consult as ConsultModel; use App\Models\Course as CourseModel; use App\Models\Reason as ReasonModel; use App\Models\User as UserModel; -use App\Repos\Account as AccountRepo; use App\Repos\Chapter as ChapterRepo; use App\Repos\Consult as ConsultRepo; use App\Repos\Course as CourseRepo; @@ -26,6 +25,8 @@ use App\Validators\Consult as ConsultValidator; class Consult extends Service { + use AccountSearchTrait; + public function getPublishTypes() { return ConsultModel::publishTypes(); @@ -65,23 +66,10 @@ class Consult extends Service $params = $pagerQuery->getParams(); + $params = $this->handleAccountSearchParams($params); + $params['deleted'] = $params['deleted'] ?? 0; - $accountRepo = new AccountRepo(); - - /** - * 兼容用户编号|手机号码|邮箱地址查询 - */ - if (!empty($params['owner_id'])) { - if (CommonValidator::phone($params['owner_id'])) { - $account = $accountRepo->findByPhone($params['owner_id']); - $params['owner_id'] = $account ? $account->id : -1000; - } elseif (CommonValidator::email($params['owner_id'])) { - $account = $accountRepo->findByEmail($params['owner_id']); - $params['owner_id'] = $account ? $account->id : -1000; - } - } - $sort = $pagerQuery->getSort(); $page = $pagerQuery->getPage(); $limit = $pagerQuery->getLimit(); diff --git a/app/Http/Admin/Services/CourseUser.php b/app/Http/Admin/Services/CourseUser.php index a3963d47..8090b079 100644 --- a/app/Http/Admin/Services/CourseUser.php +++ b/app/Http/Admin/Services/CourseUser.php @@ -8,10 +8,9 @@ namespace App\Http\Admin\Services; use App\Builders\CourseUserList as CourseUserListBuilder; +use App\Http\Admin\Services\Traits\AccountSearchTrait; use App\Library\Paginator\Query as PagerQuery; -use App\Library\Validators\Common as CommonValidator; use App\Models\CourseUser as CourseUserModel; -use App\Repos\Account as AccountRepo; use App\Repos\CourseUser as CourseUserRepo; use App\Services\Logic\Course\CourseUserTrait; use App\Validators\CourseUser as CourseUserValidator; @@ -20,6 +19,7 @@ class CourseUser extends Service { use CourseUserTrait; + use AccountSearchTrait; public function getSourceTypes() { @@ -53,24 +53,11 @@ class CourseUser extends Service $params = $pagerQuery->getParams(); + $params = $this->handleAccountSearchParams($params); + $params['course_id'] = $course->id; $params['deleted'] = 0; - $accountRepo = new AccountRepo(); - - /** - * 兼容用户编号|手机号码|邮箱地址查询 - */ - if (!empty($params['user_id'])) { - if (CommonValidator::phone($params['user_id'])) { - $account = $accountRepo->findByPhone($params['user_id']); - $params['user_id'] = $account ? $account->id : -1000; - } elseif (CommonValidator::email($params['user_id'])) { - $account = $accountRepo->findByEmail($params['user_id']); - $params['user_id'] = $account ? $account->id : -1000; - } - } - $sort = $pagerQuery->getSort(); $page = $pagerQuery->getPage(); $limit = $pagerQuery->getLimit(); diff --git a/app/Http/Admin/Services/Order.php b/app/Http/Admin/Services/Order.php index b69745d9..e461dafd 100644 --- a/app/Http/Admin/Services/Order.php +++ b/app/Http/Admin/Services/Order.php @@ -8,8 +8,9 @@ namespace App\Http\Admin\Services; use App\Builders\OrderList as OrderListBuilder; +use App\Http\Admin\Services\Traits\AccountSearchTrait; +use App\Http\Admin\Services\Traits\OrderSearchTrait; use App\Library\Paginator\Query as PaginateQuery; -use App\Library\Validators\Common as CommonValidator; use App\Models\Order as OrderModel; use App\Repos\Account as AccountRepo; use App\Repos\Order as OrderRepo; @@ -19,6 +20,9 @@ use App\Validators\Order as OrderValidator; class Order extends Service { + use AccountSearchTrait; + use OrderSearchTrait; + public function getItemTypes() { return OrderModel::itemTypes(); @@ -35,32 +39,15 @@ class Order extends Service $params = $pageQuery->getParams(); + $params = $this->handleAccountSearchParams($params); + $params = $this->handleOrderSearchParams($params); + + if (!empty($params['order_id'])) { + $params['id'] = $params['order_id']; + } + $params['deleted'] = $params['deleted'] ?? 0; - /** - * 兼容订单编号或订单序号查询 - */ - if (isset($params['id']) && strlen($params['id']) > 10) { - $orderRepo = new OrderRepo(); - $order = $orderRepo->findBySn($params['id']); - $params['id'] = $order ? $order->id : -1000; - } - - $accountRepo = new AccountRepo(); - - /** - * 兼容用户编号|手机号码|邮箱地址查询 - */ - if (!empty($params['owner_id'])) { - if (CommonValidator::phone($params['owner_id'])) { - $account = $accountRepo->findByPhone($params['owner_id']); - $params['owner_id'] = $account ? $account->id : -1000; - } elseif (CommonValidator::email($params['owner_id'])) { - $account = $accountRepo->findByEmail($params['owner_id']); - $params['owner_id'] = $account ? $account->id : -1000; - } - } - $sort = $pageQuery->getSort(); $page = $pageQuery->getPage(); $limit = $pageQuery->getLimit(); diff --git a/app/Http/Admin/Services/Question.php b/app/Http/Admin/Services/Question.php index e17a687d..a0fab6aa 100644 --- a/app/Http/Admin/Services/Question.php +++ b/app/Http/Admin/Services/Question.php @@ -10,6 +10,7 @@ namespace App\Http\Admin\Services; use App\Builders\QuestionList as QuestionListBuilder; use App\Builders\ReportList as ReportListBuilder; use App\Caches\Question as QuestionCache; +use App\Http\Admin\Services\Traits\AccountSearchTrait; use App\Library\Paginator\Query as PagerQuery; use App\Models\Category as CategoryModel; use App\Models\Question as QuestionModel; @@ -33,6 +34,7 @@ class Question extends Service { use QuestionDataTrait; + use AccountSearchTrait; public function getXmTags($id) { @@ -64,6 +66,8 @@ class Question extends Service $params = $pagerQuery->getParams(); + $params = $this->handleAccountSearchParams($params); + if (!empty($params['xm_tag_ids'])) { $params['tag_id'] = explode(',', $params['xm_tag_ids']); } diff --git a/app/Http/Admin/Services/Refund.php b/app/Http/Admin/Services/Refund.php index ed8aeed0..a0aac0b8 100644 --- a/app/Http/Admin/Services/Refund.php +++ b/app/Http/Admin/Services/Refund.php @@ -8,8 +8,9 @@ namespace App\Http\Admin\Services; use App\Builders\RefundList as RefundListBuilder; +use App\Http\Admin\Services\Traits\AccountSearchTrait; +use App\Http\Admin\Services\Traits\OrderSearchTrait; use App\Library\Paginator\Query as PaginateQuery; -use App\Library\Validators\Common as CommonValidator; use App\Models\Refund as RefundModel; use App\Models\Task as TaskModel; use App\Repos\Account as AccountRepo; @@ -22,6 +23,9 @@ use App\Validators\Refund as RefundValidator; class Refund extends Service { + use AccountSearchTrait; + use OrderSearchTrait; + public function getStatusTypes() { return RefundModel::statusTypes(); @@ -33,32 +37,11 @@ class Refund extends Service $params = $pageQuery->getParams(); + $params = $this->handleAccountSearchParams($params); + $params = $this->handleOrderSearchParams($params); + $params['deleted'] = $params['deleted'] ?? 0; - /** - * 兼容订单编号或订单序号查询 - */ - if (isset($params['order_id']) && strlen($params['order_id']) > 10) { - $orderRepo = new OrderRepo(); - $order = $orderRepo->findBySn($params['order_id']); - $params['order_id'] = $order ? $order->id : -1000; - } - - $accountRepo = new AccountRepo(); - - /** - * 兼容用户编号|手机号码|邮箱地址查询 - */ - if (!empty($params['owner_id'])) { - if (CommonValidator::phone($params['owner_id'])) { - $account = $accountRepo->findByPhone($params['owner_id']); - $params['owner_id'] = $account ? $account->id : -1000; - } elseif (CommonValidator::email($params['owner_id'])) { - $account = $accountRepo->findByEmail($params['owner_id']); - $params['owner_id'] = $account ? $account->id : -1000; - } - } - $sort = $pageQuery->getSort(); $page = $pageQuery->getPage(); $limit = $pageQuery->getLimit(); diff --git a/app/Http/Admin/Services/Review.php b/app/Http/Admin/Services/Review.php index 26922213..e63dcd39 100644 --- a/app/Http/Admin/Services/Review.php +++ b/app/Http/Admin/Services/Review.php @@ -8,13 +8,12 @@ namespace App\Http\Admin\Services; use App\Builders\ReviewList as ReviewListBuilder; +use App\Http\Admin\Services\Traits\AccountSearchTrait; use App\Library\Paginator\Query as PagerQuery; -use App\Library\Validators\Common as CommonValidator; use App\Models\Course as CourseModel; use App\Models\Reason as ReasonModel; use App\Models\Review as ReviewModel; use App\Models\User as UserModel; -use App\Repos\Account as AccountRepo; use App\Repos\Course as CourseRepo; use App\Repos\Review as ReviewRepo; use App\Services\CourseStat as CourseStatService; @@ -24,6 +23,8 @@ use App\Validators\Review as ReviewValidator; class Review extends Service { + use AccountSearchTrait; + public function getPublishTypes() { return ReviewModel::publishTypes(); @@ -63,23 +64,10 @@ class Review extends Service $params = $pagerQuery->getParams(); + $params = $this->handleAccountSearchParams($params); + $params['deleted'] = $params['deleted'] ?? 0; - $accountRepo = new AccountRepo(); - - /** - * 兼容用户编号|手机号码|邮箱地址查询 - */ - if (!empty($params['owner_id'])) { - if (CommonValidator::phone($params['owner_id'])) { - $account = $accountRepo->findByPhone($params['owner_id']); - $params['owner_id'] = $account ? $account->id : -1000; - } elseif (CommonValidator::email($params['owner_id'])) { - $account = $accountRepo->findByEmail($params['owner_id']); - $params['owner_id'] = $account ? $account->id : -1000; - } - } - $sort = $pagerQuery->getSort(); $page = $pagerQuery->getPage(); $limit = $pagerQuery->getLimit(); diff --git a/app/Http/Admin/Services/Trade.php b/app/Http/Admin/Services/Trade.php index 3023e9ae..4439aabc 100644 --- a/app/Http/Admin/Services/Trade.php +++ b/app/Http/Admin/Services/Trade.php @@ -8,8 +8,9 @@ namespace App\Http\Admin\Services; use App\Builders\TradeList as TradeListBuilder; +use App\Http\Admin\Services\Traits\AccountSearchTrait; +use App\Http\Admin\Services\Traits\OrderSearchTrait; use App\Library\Paginator\Query as PaginateQuery; -use App\Library\Validators\Common as CommonValidator; use App\Models\Refund as RefundModel; use App\Models\Trade as TradeModel; use App\Repos\Account as AccountRepo; @@ -22,6 +23,9 @@ use App\Validators\Trade as TradeValidator; class Trade extends Service { + use AccountSearchTrait; + use OrderSearchTrait; + public function getChannelTypes() { return TradeModel::channelTypes(); @@ -38,29 +42,8 @@ class Trade extends Service $params = $pageQuery->getParams(); - /** - * 兼容订单编号或订单序号查询 - */ - if (isset($params['order_id']) && strlen($params['order_id']) > 10) { - $orderRepo = new OrderRepo(); - $order = $orderRepo->findBySn($params['order_id']); - $params['order_id'] = $order ? $order->id : -1000; - } - - $accountRepo = new AccountRepo(); - - /** - * 兼容用户编号|手机号码|邮箱地址查询 - */ - if (!empty($params['owner_id'])) { - if (CommonValidator::phone($params['owner_id'])) { - $account = $accountRepo->findByPhone($params['owner_id']); - $params['owner_id'] = $account ? $account->id : -1000; - } elseif (CommonValidator::email($params['owner_id'])) { - $account = $accountRepo->findByEmail($params['owner_id']); - $params['owner_id'] = $account ? $account->id : -1000; - } - } + $params = $this->handleAccountSearchParams($params); + $params = $this->handleOrderSearchParams($params); $sort = $pageQuery->getSort(); $page = $pageQuery->getPage(); diff --git a/app/Http/Admin/Services/Traits/AccountSearchTrait.php b/app/Http/Admin/Services/Traits/AccountSearchTrait.php new file mode 100644 index 00000000..3f393083 --- /dev/null +++ b/app/Http/Admin/Services/Traits/AccountSearchTrait.php @@ -0,0 +1,49 @@ +findByPhone($params['user_id']); + $params['user_id'] = $account ? $account->id : -1000; + } elseif (CommonValidator::email($params['user_id'])) { + $account = $accountRepo->findByEmail($params['user_id']); + $params['user_id'] = $account ? $account->id : -1000; + } + } + + /** + * 兼容用户编号|手机号码|邮箱地址查询 + */ + if (!empty($params['owner_id'])) { + if (CommonValidator::phone($params['owner_id'])) { + $account = $accountRepo->findByPhone($params['owner_id']); + $params['owner_id'] = $account ? $account->id : -1000; + } elseif (CommonValidator::email($params['owner_id'])) { + $account = $accountRepo->findByEmail($params['owner_id']); + $params['owner_id'] = $account ? $account->id : -1000; + } + } + + return $params; + } + +} diff --git a/app/Http/Admin/Services/Traits/OrderSearchTrait.php b/app/Http/Admin/Services/Traits/OrderSearchTrait.php new file mode 100644 index 00000000..6fd1a5ac --- /dev/null +++ b/app/Http/Admin/Services/Traits/OrderSearchTrait.php @@ -0,0 +1,32 @@ + 10) { + + $orderRepo = new OrderRepo(); + + $order = $orderRepo->findBySn($params['order_id']); + + $params['order_id'] = $order ? $order->id : -1000; + } + + return $params; + } + +} diff --git a/app/Http/Admin/Services/User.php b/app/Http/Admin/Services/User.php index be2f4039..78d61e5a 100644 --- a/app/Http/Admin/Services/User.php +++ b/app/Http/Admin/Services/User.php @@ -9,9 +9,9 @@ namespace App\Http\Admin\Services; use App\Builders\UserList as UserListBuilder; use App\Caches\User as UserCache; +use App\Http\Admin\Services\Traits\AccountSearchTrait; use App\Library\Paginator\Query as PaginateQuery; use App\Library\Utils\Password as PasswordUtil; -use App\Library\Validators\Common as CommonValidator; use App\Models\Account as AccountModel; use App\Models\User as UserModel; use App\Repos\Account as AccountRepo; @@ -26,6 +26,8 @@ use App\Validators\User as UserValidator; class User extends Service { + use AccountSearchTrait; + public function getEduRoleTypes() { return UserModel::eduRoleTypes(); @@ -63,19 +65,10 @@ class User extends Service $params = $pageQuery->getParams(); - $accountRepo = new AccountRepo(); + $params = $this->handleAccountSearchParams($params); - /** - * 兼容用户编号|手机号码|邮箱地址查询 - */ - if (!empty($params['id'])) { - if (CommonValidator::phone($params['id'])) { - $account = $accountRepo->findByPhone($params['id']); - $params['id'] = $account ? $account->id : -1000; - } elseif (CommonValidator::email($params['id'])) { - $account = $accountRepo->findByEmail($params['id']); - $params['id'] = $account ? $account->id : -1000; - } + if (!empty($params['user_id'])) { + $params['id'] = $params['user_id']; } $params['deleted'] = $params['deleted'] ?? 0; diff --git a/app/Http/Admin/Views/answer/search.volt b/app/Http/Admin/Views/answer/search.volt index 945fb5d7..bb0ce828 100644 --- a/app/Http/Admin/Views/answer/search.volt +++ b/app/Http/Admin/Views/answer/search.volt @@ -19,9 +19,9 @@
    - +
    - +
    diff --git a/app/Http/Admin/Views/article/search.volt b/app/Http/Admin/Views/article/search.volt index 0c92270b..88a519aa 100644 --- a/app/Http/Admin/Views/article/search.volt +++ b/app/Http/Admin/Views/article/search.volt @@ -13,9 +13,9 @@
    - +
    - +
    diff --git a/app/Http/Admin/Views/question/search.volt b/app/Http/Admin/Views/question/search.volt index cf5a92fc..a1928c56 100644 --- a/app/Http/Admin/Views/question/search.volt +++ b/app/Http/Admin/Views/question/search.volt @@ -13,9 +13,9 @@
    - +
    - +
    diff --git a/app/Http/Admin/Views/user/search.volt b/app/Http/Admin/Views/user/search.volt index df41dc26..63bde531 100644 --- a/app/Http/Admin/Views/user/search.volt +++ b/app/Http/Admin/Views/user/search.volt @@ -9,7 +9,7 @@
    - +
    From 78d538c816cbe32bfe57b8e7d373d08af97edcea Mon Sep 17 00:00:00 2001 From: xiaochong0302 Date: Sat, 30 Dec 2023 15:23:53 +0800 Subject: [PATCH 08/16] =?UTF-8?q?=E6=B8=85=E7=90=86=E4=BB=A3=E7=A0=81?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- app/Http/Admin/Views/answer/search.volt | 2 +- app/Http/Admin/Views/article/search.volt | 2 +- app/Http/Admin/Views/consult/search.volt | 2 +- app/Http/Admin/Views/course/search.volt | 2 +- app/Http/Admin/Views/order/search.volt | 2 +- app/Http/Admin/Views/question/search.volt | 2 +- app/Http/Admin/Views/refund/search.volt | 2 +- app/Http/Admin/Views/review/search.volt | 2 +- app/Http/Admin/Views/tag/search.volt | 2 +- app/Http/Admin/Views/topic/search.volt | 2 +- app/Http/Admin/Views/trade/search.volt | 2 +- app/Http/Admin/Views/user/search.volt | 2 +- 12 files changed, 12 insertions(+), 12 deletions(-) diff --git a/app/Http/Admin/Views/answer/search.volt b/app/Http/Admin/Views/answer/search.volt index bb0ce828..43de3e98 100644 --- a/app/Http/Admin/Views/answer/search.volt +++ b/app/Http/Admin/Views/answer/search.volt @@ -64,7 +64,7 @@