1
0
mirror of https://gitee.com/koogua/course-tencent-cloud.git synced 2025-06-25 04:07:17 +08:00

Merge branch 'koogua/I39Y6L' into develop

This commit is contained in:
koogua 2021-03-07 15:30:12 +08:00
commit e51d44f5ea
8 changed files with 34 additions and 47 deletions

View File

@ -4,7 +4,7 @@
<div class="kg-order-item"> <div class="kg-order-item">
<p>课程名称:{{ course['title'] }}</p> <p>课程名称:{{ course['title'] }}</p>
<p>优惠价格:{{ '¥%0.2f'|format(course['market_price']) }},会员价格:{{ '¥%0.2f'|format(course['vip_price']) }}</p> <p>优惠价格:{{ '¥%0.2f'|format(course['market_price']) }},会员价格:{{ '¥%0.2f'|format(course['vip_price']) }}</p>
<p>学习期限:{{ date('Y-m-d H:i:s',course['study_expiry_time']) }},退款期限:{{ date('Y-m-d H:i:s',course['refund_expiry_time']) }}</p> <p>学习期限:{{ date('Y-m-d',course['study_expiry_time']) }},退款期限:{% if course['refund_expiry'] > 0 %}{{ date('Y-m-d',course['refund_expiry_time']) }}{% else %}不支持{% endif %}</p>
</div> </div>
{% elseif order.item_type == 2 %} {% elseif order.item_type == 2 %}
{% set courses = order.item_info['courses'] %} {% set courses = order.item_info['courses'] %}
@ -12,7 +12,7 @@
<div class="kg-order-item"> <div class="kg-order-item">
<p>课程名称:{{ course['title'] }}</p> <p>课程名称:{{ course['title'] }}</p>
<p>优惠价格:{{ '¥%0.2f'|format(course['market_price']) }},会员价格:{{ '¥%0.2f'|format(course['vip_price']) }}</p> <p>优惠价格:{{ '¥%0.2f'|format(course['market_price']) }},会员价格:{{ '¥%0.2f'|format(course['vip_price']) }}</p>
<p>学习期限:{{ date('Y-m-d H:i:s',course['study_expiry_time']) }},退款期限:{{ date('Y-m-d H:i:s',course['refund_expiry_time']) }}</p> <p>学习期限:{{ date('Y-m-d',course['study_expiry_time']) }},退款期限:{% if course['refund_expiry'] > 0 %}{{ date('Y-m-d',course['refund_expiry_time']) }}{% else %}不支持{% endif %}</p>
</div> </div>
{% endfor %} {% endfor %}
{% elseif order.item_type == 3 %} {% elseif order.item_type == 3 %}

View File

@ -28,7 +28,11 @@
{%- macro meta_expiry_info(course) %} {%- macro meta_expiry_info(course) %}
<p class="item"> <p class="item">
<span class="key">学习期限</span><span class="value">{{ course.study_expiry }}个月</span> <span class="key">学习期限</span><span class="value">{{ course.study_expiry }}个月</span>
<span class="key">退款期限</span><span class="value">{{ course.refund_expiry }}天</span> {% if course.refund_expiry > 0 %}
<span class="key">退款期限</span><span class="value">{{ course.refund_expiry }}天</span>
{% else %}
<span class="key">退款期限</span><span class="value">不支持</span>
{% endif %}
</p> </p>
{%- endmacro %} {%- endmacro %}

View File

@ -4,7 +4,7 @@
<div class="order-item"> <div class="order-item">
<p>课程名称:<span>{{ course.title }}</span></p> <p>课程名称:<span>{{ course.title }}</span></p>
<p>优惠价格:<span class="price">{{ '¥%0.2f'|format(course.market_price) }}</span>会员价格:<span class="price">{{ '¥%0.2f'|format(course.vip_price) }}</span></p> <p>优惠价格:<span class="price">{{ '¥%0.2f'|format(course.market_price) }}</span>会员价格:<span class="price">{{ '¥%0.2f'|format(course.vip_price) }}</span></p>
<p>学习期限:<span>{{ date('Y-m-d',course.study_expiry_time) }}</span>退款期限:<span>{{ date('Y-m-d',course.refund_expiry_time) }}</span></p> <p>学习期限:<span>{{ date('Y-m-d',course.study_expiry_time) }}</span>退款期限:<span>{% if course.refund_expiry > 0 %}{{ date('Y-m-d',course.refund_expiry_time) }}{% else %}不支持{% endif %}</span></p>
</div> </div>
{% elseif order.item_type == 2 %} {% elseif order.item_type == 2 %}
{% set courses = order.item_info.courses %} {% set courses = order.item_info.courses %}
@ -12,7 +12,7 @@
<div class="order-item"> <div class="order-item">
<p>课程名称:<span>{{ course.title }}</span></p> <p>课程名称:<span>{{ course.title }}</span></p>
<p>优惠价格:<span class="price">{{ '¥%0.2f'|format(course.market_price) }}</span>会员价格:<span class="price">{{ '¥%0.2f'|format(course.vip_price) }}</span></p> <p>优惠价格:<span class="price">{{ '¥%0.2f'|format(course.market_price) }}</span>会员价格:<span class="price">{{ '¥%0.2f'|format(course.vip_price) }}</span></p>
<p>学习期限:<span>{{ date('Y-m-d',course.study_expiry_time) }}</span>退款期限:<span>{{ date('Y-m-d',course.refund_expiry_time) }}</span></p> <p>学习期限:<span>{{ date('Y-m-d',course.study_expiry_time) }}</span>退款期限:<span>{% if course.refund_expiry > 0 %}{{ date('Y-m-d',course.refund_expiry_time) }}{% else %}不支持{% endif %}</span></p>
</div> </div>
{% endfor %} {% endfor %}
{% elseif order.item_type == 3 %} {% elseif order.item_type == 3 %}

View File

@ -13,13 +13,17 @@
<div class="info"> <div class="info">
<p><a href="{{ course_url }}" target="_blank">{{ course.title }}</a></p> <p><a href="{{ course_url }}" target="_blank">{{ course.title }}</a></p>
<p> <p>
原始价格 <span class="origin-price">{{ '¥%0.2f'|format(course.origin_price) }}</span> <span class="key">原始价格</span><span class="value origin-price">{{ '¥%0.2f'|format(course.origin_price) }}</span>
优惠价格 <span class="price">{{ '¥%0.2f'|format(course.market_price) }}</span> <span class="key">优惠价格</span><span class="price">{{ '¥%0.2f'|format(course.market_price) }}</span>
会员价格 <span class="price">{{ '¥%0.2f'|format(course.vip_price) }}</span> <span class="key">会员价格</span><span class="price">{{ '¥%0.2f'|format(course.vip_price) }}</span>
</p> </p>
<p> <p>
学习期限 <span class="expiry">{{ course.study_expiry }}个月</span> <span class="key">学习期限</span><span class="value">{{ course.study_expiry }}个月</span>
退款期限 <span class="expiry">{{ course.refund_expiry }}天</span> {% if course.refund_expiry > 0 %}
<span class="key">退款期限</span><span class="value">{{ course.refund_expiry }}天</span>
{% else %}
<span class="key">退款期限</span><span class="value">不支持</span>
{% endif %}
</p> </p>
</div> </div>
</div> </div>

View File

@ -408,6 +408,7 @@ class Course extends Model
public static function refundExpiryOptions() public static function refundExpiryOptions()
{ {
return [ return [
0 => '0天',
7 => '7天', 7 => '7天',
14 => '14天', 14 => '14天',
30 => '30天', 30 => '30天',

View File

@ -27,9 +27,6 @@ class Refund extends Service
protected function previewCourseRefund(OrderModel $order) protected function previewCourseRefund(OrderModel $order)
{ {
/**
* @var array $itemInfo
*/
$itemInfo = $order->item_info; $itemInfo = $order->item_info;
$itemInfo['course']['cover'] = kg_cos_cover_url($itemInfo['course']['cover']); $itemInfo['course']['cover'] = kg_cos_cover_url($itemInfo['course']['cover']);
@ -54,9 +51,6 @@ class Refund extends Service
protected function previewPackageRefund(OrderModel $order) protected function previewPackageRefund(OrderModel $order)
{ {
/**
* @var array $itemInfo
*/
$itemInfo = $order->item_info; $itemInfo = $order->item_info;
$totalMarketPrice = 0.00; $totalMarketPrice = 0.00;
@ -101,36 +95,23 @@ class Refund extends Service
$courseLessons = $courseRepo->findLessons($courseId); $courseLessons = $courseRepo->findLessons($courseId);
if ($courseLessons->count() == 0) { if ($courseLessons->count() == 0) return 1.00;
return 1.00;
}
$courseUserRepo = new CourseUserRepo(); $courseUserRepo = new CourseUserRepo();
$courseUser = $courseUserRepo->findCourseUser($courseId, $userId); $courseUser = $courseUserRepo->findCourseUser($courseId, $userId);
if (!$courseUser) { if (!$courseUser) return 1.00;
return 1.00;
}
$userLearnings = $courseRepo->findUserLearnings($courseId, $userId, $courseUser->plan_id); $userLearnings = $courseRepo->findUserLearnings($courseId, $userId, $courseUser->plan_id);
if ($userLearnings->count() == 0) { if ($userLearnings->count() == 0) return 1.00;
return 1.00;
}
/**
* @var array $consumedUserLearnings
*/
$consumedUserLearnings = $userLearnings->filter(function ($item) { $consumedUserLearnings = $userLearnings->filter(function ($item) {
if ($item->consumed == 1) { if ($item->consumed == 1) return $item;
return $item;
}
}); });
if (count($consumedUserLearnings) == 0) { if (count($consumedUserLearnings) == 0) return 1.00;
return 1.00;
}
$courseLessonIds = kg_array_column($courseLessons->toArray(), 'id'); $courseLessonIds = kg_array_column($courseLessons->toArray(), 'id');
$consumedUserLessonIds = kg_array_column($consumedUserLearnings, 'chapter_id'); $consumedUserLessonIds = kg_array_column($consumedUserLearnings, 'chapter_id');

View File

@ -174,16 +174,8 @@ class Order extends Validator
$order = $orderRepo->findUserLastFinishedOrder($userId, $courseId, $itemType); $order = $orderRepo->findUserLastFinishedOrder($userId, $courseId, $itemType);
if ($order) { if ($order && $order->item_info['course']['study_expiry_time'] > time()) {
throw new BadRequestException('order.has_bought_course');
/**
* @var array $itemInfo
*/
$itemInfo = $order->item_info;
if ($itemInfo['course']['study_expiry_time'] > time()) {
throw new BadRequestException('order.has_bought_course');
}
} }
} }

View File

@ -489,11 +489,12 @@
height: 118px; height: 118px;
} }
.course-meta .info span { .course-meta .info .key {
margin-right: 5px; margin-right: 5px;
} }
.course-meta .info .value { .course-meta .info .value {
margin-right: 5px;
color: #666; color: #666;
} }
@ -1074,9 +1075,13 @@
float: left; float: left;
} }
.cart-course-card span { .cart-course-card .key {
margin-right: 5px;
}
.cart-course-card .value {
margin-right: 5px;
color: #666; color: #666;
margin: 0 5px;
} }
.cart-course-card .origin-price { .cart-course-card .origin-price {