diff --git a/CHANGELOG.md b/CHANGELOG.md index daed8aea..76e883b4 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -8,6 +8,7 @@ - 优化账户创建数据流 - 优化课程创建数据流 - 优化章节创建数据流 +- 优化积分商品兑换 - 优化发货逻辑 ### [v1.4.9](https://gitee.com/koogua/course-tencent-cloud/releases/v1.4.9)(2022-01-01) diff --git a/app/Caches/SiteTodayStat.php b/app/Caches/SiteTodayStat.php index 6cb59a86..285a34aa 100644 --- a/app/Caches/SiteTodayStat.php +++ b/app/Caches/SiteTodayStat.php @@ -35,7 +35,7 @@ class SiteTodayStat extends Cache $saleAmount = $statRepo->sumDailySales($date); $refundAmount = $statRepo->sumDailyRefunds($date); $registerCount = $statRepo->countDailyRegisteredUsers($date); - $pointRedeemCount = $statRepo->countDailyPointRedeems($date); + $pointRedeemCount = $statRepo->countDailyPointGiftRedeems($date); return [ 'sale_count' => $saleCount, diff --git a/app/Console/Tasks/PointGiftDeliverTask.php b/app/Console/Tasks/PointGiftDeliverTask.php index 946945a2..8edc51d7 100644 --- a/app/Console/Tasks/PointGiftDeliverTask.php +++ b/app/Console/Tasks/PointGiftDeliverTask.php @@ -10,15 +10,15 @@ namespace App\Console\Tasks; use App\Models\CourseUser as CourseUserModel; use App\Models\ImGroupUser as ImGroupUserModel; use App\Models\PointGift as PointGiftModel; -use App\Models\PointRedeem as PointRedeemModel; +use App\Models\PointGiftRedeem as PointGiftRedeemModel; use App\Models\Task as TaskModel; use App\Repos\Course as CourseRepo; use App\Repos\CourseUser as CourseUserRepo; use App\Repos\ImGroup as ImGroupRepo; use App\Repos\ImGroupUser as ImGroupUserRepo; use App\Repos\PointGift as PointGiftRepo; -use App\Repos\PointRedeem as PointRedeemRepo; -use App\Services\Logic\Notice\DingTalk\PointRedeem as PointRedeemNotice; +use App\Repos\PointGiftRedeem as PointGiftRedeemRepo; +use App\Services\Logic\Notice\DingTalk\PointGiftRedeem as PointGiftRedeemNotice; use App\Services\Logic\Point\History\PointRefund as PointRefundPointHistory; use Phalcon\Mvc\Model\Resultset; use Phalcon\Mvc\Model\ResultsetInterface; @@ -38,13 +38,11 @@ class PointGiftDeliverTask extends Task echo '------ start deliver task ------' . PHP_EOL; - $redeemRepo = new PointRedeemRepo(); + $redeemRepo = new PointGiftRedeemRepo(); foreach ($tasks as $task) { - $redeemId = $task->item_info['point_redeem']['id'] ?? 0; - - $redeem = $redeemRepo->findById($redeemId); + $redeem = $redeemRepo->findById($task->item_id); if (!$redeem) { $task->status = TaskModel::STATUS_FAILED; @@ -102,7 +100,7 @@ class PointGiftDeliverTask extends Task echo '------ end deliver task ------' . PHP_EOL; } - protected function handleCourseRedeem(PointRedeemModel $redeem) + protected function handleCourseRedeem(PointGiftRedeemModel $redeem) { $giftRepo = new PointGiftRepo(); @@ -163,21 +161,21 @@ class PointGiftDeliverTask extends Task } } - $redeem->status = PointRedeemModel::STATUS_FINISHED; + $redeem->status = PointGiftRedeemModel::STATUS_FINISHED; if ($redeem->update() === false) { throw new \RuntimeException('Update Redeem Status Failed'); } } - protected function handleGoodsRedeem(PointRedeemModel $redeem) + protected function handleGoodsRedeem(PointGiftRedeemModel $redeem) { - $notice = new PointRedeemNotice(); + $notice = new PointGiftRedeemNotice(); $notice->createTask($redeem); } - protected function handlePointRefund(PointRedeemModel $redeem) + protected function handlePointRefund(PointGiftRedeemModel $redeem) { $service = new PointRefundPointHistory(); diff --git a/app/Http/Admin/Controllers/ImGroupController.php b/app/Http/Admin/Controllers/ImGroupController.php index f95bf21b..e22e0086 100644 --- a/app/Http/Admin/Controllers/ImGroupController.php +++ b/app/Http/Admin/Controllers/ImGroupController.php @@ -25,8 +25,6 @@ class ImGroupController extends Controller $group = $service->getGroup($id); $pager = $service->getGroupUsers($id); - $this->view->pick('im/group/users'); - $this->view->setVar('group', $group); $this->view->setVar('pager', $pager); } @@ -40,8 +38,6 @@ class ImGroupController extends Controller $pager = $groupService->getGroups(); - $this->view->pick('im/group/list'); - $this->view->setVar('pager', $pager); } @@ -54,8 +50,6 @@ class ImGroupController extends Controller $types = $groupService->getGroupTypes(); - $this->view->pick('im/group/search'); - $this->view->setVar('types', $types); } @@ -64,7 +58,7 @@ class ImGroupController extends Controller */ public function addAction() { - $this->view->pick('im/group/add'); + } /** @@ -76,8 +70,6 @@ class ImGroupController extends Controller $group = $groupService->getGroup($id); - $this->view->pick('im/group/edit'); - $this->view->setVar('group', $group); } diff --git a/app/Http/Admin/Controllers/PointGiftController.php b/app/Http/Admin/Controllers/PointGiftController.php index 245eaa6b..433308a5 100644 --- a/app/Http/Admin/Controllers/PointGiftController.php +++ b/app/Http/Admin/Controllers/PointGiftController.php @@ -24,8 +24,6 @@ class PointGiftController extends Controller $pager = $service->getPointGifts(); - $this->view->pick('point/gift/list'); - $this->view->setVar('pager', $pager); } @@ -38,8 +36,6 @@ class PointGiftController extends Controller $types = $service->getTypes(); - $this->view->pick('point/gift/search'); - $this->view->setVar('types', $types); } @@ -53,8 +49,6 @@ class PointGiftController extends Controller $xmCourses = $service->getXmCourses(); $types = $service->getTypes(); - $this->view->pick('point/gift/add'); - $this->view->setVar('xm_courses', $xmCourses); $this->view->setVar('types', $types); } @@ -68,8 +62,6 @@ class PointGiftController extends Controller $gift = $service->getPointGift($id); - $this->view->pick('point/gift/edit'); - $this->view->setVar('gift', $gift); } diff --git a/app/Http/Admin/Controllers/PointRedeemController.php b/app/Http/Admin/Controllers/PointGiftRedeemController.php similarity index 53% rename from app/Http/Admin/Controllers/PointRedeemController.php rename to app/Http/Admin/Controllers/PointGiftRedeemController.php index f821fc34..38fe5b5d 100644 --- a/app/Http/Admin/Controllers/PointRedeemController.php +++ b/app/Http/Admin/Controllers/PointGiftRedeemController.php @@ -7,42 +7,40 @@ namespace App\Http\Admin\Controllers; -use App\Http\Admin\Services\PointRedeem as PointRedeemService; +use App\Http\Admin\Services\PointGiftRedeem as PointGiftRedeemService; /** - * @RoutePrefix("/admin/point/redeem") + * @RoutePrefix("/admin/point/gift/redeem") */ -class PointRedeemController extends Controller +class PointGiftRedeemController extends Controller { /** - * @Get("/search", name="admin.point_redeem.search") + * @Get("/search", name="admin.point_gift_redeem.search") */ public function searchAction() { - $this->view->pick('point/redeem/search'); + } /** - * @Get("/list", name="admin.point_redeem.list") + * @Get("/list", name="admin.point_gift_redeem.list") */ public function listAction() { - $redeemService = new PointRedeemService(); + $redeemService = new PointGiftRedeemService(); $pager = $redeemService->getRedeems(); - $this->view->pick('point/redeem/list'); - $this->view->setVar('pager', $pager); } /** - * @Post("/{id:[0-9]+}/deliver", name="admin.point_redeem.deliver") + * @Post("/{id:[0-9]+}/deliver", name="admin.point_gift_redeem.deliver") */ public function deliverAction($id) { - $redeemService = new PointRedeemService(); + $redeemService = new PointGiftRedeemService(); $redeemService->deliver($id); diff --git a/app/Http/Admin/Controllers/PointHistoryController.php b/app/Http/Admin/Controllers/PointHistoryController.php index 73bc2ef0..c8b8d3f6 100644 --- a/app/Http/Admin/Controllers/PointHistoryController.php +++ b/app/Http/Admin/Controllers/PointHistoryController.php @@ -24,7 +24,6 @@ class PointHistoryController extends Controller $eventTypes = $historyService->getEventTypes(); - $this->view->pick('point/history/search'); $this->view->setVar('event_types', $eventTypes); } @@ -37,8 +36,6 @@ class PointHistoryController extends Controller $pager = $historyService->getHistories(); - $this->view->pick('point/history/list'); - $this->view->setVar('pager', $pager); } diff --git a/app/Http/Admin/Services/AuthNode.php b/app/Http/Admin/Services/AuthNode.php index 032657a4..274c3b5f 100644 --- a/app/Http/Admin/Services/AuthNode.php +++ b/app/Http/Admin/Services/AuthNode.php @@ -871,7 +871,7 @@ class AuthNode extends Service 'id' => '2-20-2', 'title' => '兑换记录', 'type' => 'button', - 'route' => 'admin.point_redeem.list', + 'route' => 'admin.point_gift_redeem.list', ], [ 'id' => '2-20-3', diff --git a/app/Http/Admin/Services/PointRedeem.php b/app/Http/Admin/Services/PointGiftRedeem.php similarity index 73% rename from app/Http/Admin/Services/PointRedeem.php rename to app/Http/Admin/Services/PointGiftRedeem.php index 992271b4..da0705f4 100644 --- a/app/Http/Admin/Services/PointRedeem.php +++ b/app/Http/Admin/Services/PointGiftRedeem.php @@ -9,12 +9,12 @@ namespace App\Http\Admin\Services; use App\Library\Paginator\Query as PagerQuery; use App\Models\PointGift as PointGiftModel; -use App\Models\PointRedeem as PointRedeemModel; -use App\Repos\PointRedeem as PointRedeemRepo; +use App\Models\PointGiftRedeem as PointGiftRedeemModel; +use App\Repos\PointGiftRedeem as PointGiftRedeemRepo; use App\Services\Logic\Notice\PointGoodsDeliver as PointGoodsDeliverNotice; -use App\Validators\PointRedeem as PointRedeemValidator; +use App\Validators\PointGiftRedeem as PointGiftRedeemValidator; -class PointRedeem extends Service +class PointGiftRedeem extends Service { public function getRedeems() @@ -27,7 +27,7 @@ class PointRedeem extends Service $page = $pagerQuery->getPage(); $limit = $pagerQuery->getLimit(); - $redeemRepo = new PointRedeemRepo(); + $redeemRepo = new PointGiftRedeemRepo(); return $redeemRepo->paginate($params, $sort, $page, $limit); } @@ -45,7 +45,7 @@ class PointRedeem extends Service return $redeem; } - $redeem->status = PointRedeemModel::STATUS_FINISHED; + $redeem->status = PointGiftRedeemModel::STATUS_FINISHED; $redeem->update(); @@ -54,7 +54,7 @@ class PointRedeem extends Service return $redeem; } - protected function handleGoodsDeliverNotice(PointRedeemModel $redeem) + protected function handleGoodsDeliverNotice(PointGiftRedeemModel $redeem) { $notice = new PointGoodsDeliverNotice(); @@ -63,7 +63,7 @@ class PointRedeem extends Service protected function findOrFail($id) { - $validator = new PointRedeemValidator(); + $validator = new PointGiftRedeemValidator(); return $validator->checkRedeem($id); } diff --git a/app/Http/Admin/Views/course/list.volt b/app/Http/Admin/Views/course/list.volt index 6be67842..0b17998e 100644 --- a/app/Http/Admin/Views/course/list.volt +++ b/app/Http/Admin/Views/course/list.volt @@ -77,10 +77,10 @@ {% if item.teacher.id is defined %} 讲师:{{ item.teacher.name }} {% endif %} - 难度:{{ level_info(item.level) }} + 难度:{{ level_type(item.level) }}
diff --git a/app/Http/Admin/Views/im/group/add.volt b/app/Http/Admin/Views/im_group/add.volt similarity index 100% rename from app/Http/Admin/Views/im/group/add.volt rename to app/Http/Admin/Views/im_group/add.volt diff --git a/app/Http/Admin/Views/im/group/edit.volt b/app/Http/Admin/Views/im_group/edit.volt similarity index 100% rename from app/Http/Admin/Views/im/group/edit.volt rename to app/Http/Admin/Views/im_group/edit.volt diff --git a/app/Http/Admin/Views/im/group/list.volt b/app/Http/Admin/Views/im_group/list.volt similarity index 100% rename from app/Http/Admin/Views/im/group/list.volt rename to app/Http/Admin/Views/im_group/list.volt diff --git a/app/Http/Admin/Views/im/group/search.volt b/app/Http/Admin/Views/im_group/search.volt similarity index 100% rename from app/Http/Admin/Views/im/group/search.volt rename to app/Http/Admin/Views/im_group/search.volt diff --git a/app/Http/Admin/Views/im/group/users.volt b/app/Http/Admin/Views/im_group/users.volt similarity index 100% rename from app/Http/Admin/Views/im/group/users.volt rename to app/Http/Admin/Views/im_group/users.volt diff --git a/app/Http/Admin/Views/macros/course.volt b/app/Http/Admin/Views/macros/course.volt index 2f7de032..bb716a69 100644 --- a/app/Http/Admin/Views/macros/course.volt +++ b/app/Http/Admin/Views/macros/course.volt @@ -1,4 +1,4 @@ -{%- macro model_info(value) %} +{%- macro model_type(value) %} {% if value == 1 %} 点播 {% elseif value == 2 %} @@ -12,7 +12,7 @@ {% endif %} {%- endmacro %} -{%- macro level_info(value) %} +{%- macro level_type(value) %} {% if value == 1 %} 入门 {% elseif value == 2 %} diff --git a/app/Http/Admin/Views/macros/point_gift.volt b/app/Http/Admin/Views/macros/point_gift.volt new file mode 100644 index 00000000..3b9216ec --- /dev/null +++ b/app/Http/Admin/Views/macros/point_gift.volt @@ -0,0 +1,19 @@ +{%- macro gift_type_info(value) %} + {% if value == 1 %} + 课程 + {% elseif value == 2 %} + 商品 + {% elseif value == 3 %} + 现金 + {% endif %} +{%- endmacro %} + +{%- macro redeem_status_info(value) %} + {% if value == 1 %} + 处理中 + {% elseif value == 2 %} + 已完成 + {% elseif value == 3 %} + 已失败 + {% endif %} +{%- endmacro %} \ No newline at end of file diff --git a/app/Http/Admin/Views/macros/point.volt b/app/Http/Admin/Views/macros/point_history.volt similarity index 72% rename from app/Http/Admin/Views/macros/point.volt rename to app/Http/Admin/Views/macros/point_history.volt index 85bcbc60..0fab2e19 100644 --- a/app/Http/Admin/Views/macros/point.volt +++ b/app/Http/Admin/Views/macros/point_history.volt @@ -1,23 +1,3 @@ -{%- macro redeem_status_info(value) %} - {% if value == 1 %} - 处理中 - {% elseif value == 2 %} - 已完成 - {% elseif value == 3 %} - 已失败 - {% endif %} -{%- endmacro %} - -{%- macro gift_type_info(value) %} - {% if value == 1 %} - 课程 - {% elseif value == 2 %} - 商品 - {% elseif value == 3 %} - 现金 - {% endif %} -{%- endmacro %} - {%- macro event_point_info(value) %} {% if value > 0 %} +{{ value }} @@ -51,9 +31,9 @@ {% if history.event_type == 1 %}{{ event_info.order.subject }}
{% elseif history.event_type == 2 %} -{{ event_info.point_redeem.gift_name }}
+{{ event_info.point_gift_redeem.gift_name }}
{% elseif history.event_type == 3 %} - {{ event_info.point_redeem.gift_name }} + {{ event_info.point_gift_redeem.gift_name }} {% elseif history.event_type == 4 %} N/A {% elseif history.event_type == 5 %} diff --git a/app/Http/Admin/Views/point/gift/add.volt b/app/Http/Admin/Views/point_gift/add.volt similarity index 100% rename from app/Http/Admin/Views/point/gift/add.volt rename to app/Http/Admin/Views/point_gift/add.volt diff --git a/app/Http/Admin/Views/point/gift/edit.volt b/app/Http/Admin/Views/point_gift/edit.volt similarity index 85% rename from app/Http/Admin/Views/point/gift/edit.volt rename to app/Http/Admin/Views/point_gift/edit.volt index 8808fb96..8c1d654f 100644 --- a/app/Http/Admin/Views/point/gift/edit.volt +++ b/app/Http/Admin/Views/point_gift/edit.volt @@ -5,9 +5,9 @@ {% set update_url = url({'for':'admin.point_gift.update','id':gift.id}) %} {% if gift.type == 1 %} - {{ partial('point/gift/edit_course') }} + {{ partial('point_gift/edit_course') }} {% elseif gift.type == 2 %} - {{ partial('point/gift/edit_goods') }} + {{ partial('point_gift/edit_goods') }} {% endif %} {% endblock %} diff --git a/app/Http/Admin/Views/point/gift/edit_course.volt b/app/Http/Admin/Views/point_gift/edit_course.volt similarity index 100% rename from app/Http/Admin/Views/point/gift/edit_course.volt rename to app/Http/Admin/Views/point_gift/edit_course.volt diff --git a/app/Http/Admin/Views/point/gift/edit_goods.volt b/app/Http/Admin/Views/point_gift/edit_goods.volt similarity index 100% rename from app/Http/Admin/Views/point/gift/edit_goods.volt rename to app/Http/Admin/Views/point_gift/edit_goods.volt diff --git a/app/Http/Admin/Views/point/gift/list.volt b/app/Http/Admin/Views/point_gift/list.volt similarity index 90% rename from app/Http/Admin/Views/point/gift/list.volt rename to app/Http/Admin/Views/point_gift/list.volt index 6498db51..c8224b80 100644 --- a/app/Http/Admin/Views/point/gift/list.volt +++ b/app/Http/Admin/Views/point_gift/list.volt @@ -2,8 +2,9 @@ {% block content %} - {{ partial('macros/point') }} + {{ partial('macros/point_gift') }} + {% set redeem_url = url({'for':'admin.point_gift_redeem.list'}) %} {% set add_url = url({'for':'admin.point_gift.add'}) %} {% set search_url = url({'for':'admin.point_gift.search'}) %} @@ -14,6 +15,9 @@