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

优化layer窗口中表单的跳转

This commit is contained in:
xiaochong0302 2025-04-19 17:18:55 +08:00
parent 9ad15b72cf
commit 0d8b07033a
11 changed files with 61 additions and 77 deletions

View File

@ -77,8 +77,14 @@ class ConsultController extends Controller
$consult = $service->handle($consult->id); $consult = $service->handle($consult->id);
$location = $this->url->get([
'for' => 'home.course.show',
'id' => $consult['course']['id'],
]);
$content = [ $content = [
'consult' => $consult, 'location' => $location,
'target' => 'parent',
'msg' => '提交咨询成功', 'msg' => '提交咨询成功',
]; ];
@ -92,14 +98,13 @@ class ConsultController extends Controller
{ {
$service = new ConsultUpdateService(); $service = new ConsultUpdateService();
$consult = $service->handle($id); $service->handle($id);
$service = new ConsultInfoService(); $location = $this->url->get(['for' => 'home.uc.consults']);
$consult = $service->handle($consult->id);
$content = [ $content = [
'consult' => $consult, 'location' => $location,
'target' => 'parent',
'msg' => '更新咨询成功', 'msg' => '更新咨询成功',
]; ];
@ -127,14 +132,13 @@ class ConsultController extends Controller
$service = new ConsultReplyService(); $service = new ConsultReplyService();
$consult = $service->handle($id); $service->handle($id);
$service = new ConsultInfoService(); $location = $this->url->get(['for' => 'home.tc.consults']);
$consult = $service->handle($consult->id);
$content = [ $content = [
'consult' => $consult, 'location' => $location,
'target' => 'parent',
'msg' => '回复咨询成功', 'msg' => '回复咨询成功',
]; ];

View File

@ -49,7 +49,15 @@ class RefundController extends Controller
$service->handle(); $service->handle();
return $this->jsonSuccess(['msg' => '申请退款成功']); $location = $this->url->get(['for' => 'home.uc.refunds']);
$content = [
'location' => $location,
'target' => 'parent',
'msg' => '提交申请成功',
];
return $this->jsonSuccess($content);
} }
/** /**

View File

@ -55,13 +55,6 @@ class ReviewController extends Controller
$this->notFound(); $this->notFound();
} }
$approved = $review['published'] == ReviewModel::PUBLISH_APPROVED;
$owned = $review['me']['owned'] == 1;
if (!$approved && !$owned) {
$this->notFound();
}
return $this->jsonSuccess(['review' => $review]); return $this->jsonSuccess(['review' => $review]);
} }
@ -72,14 +65,13 @@ class ReviewController extends Controller
{ {
$service = new ReviewCreateService(); $service = new ReviewCreateService();
$review = $service->handle(); $service->handle();
$service = new ReviewInfoService(); $location = $this->url->get(['for' => 'home.uc.reviews']);
$review = $service->handle($review->id);
$content = [ $content = [
'review' => $review, 'location' => $location,
'target' => 'parent',
'msg' => '发布评价成功', 'msg' => '发布评价成功',
]; ];
@ -95,12 +87,11 @@ class ReviewController extends Controller
$service->handle($id); $service->handle($id);
$service = new ReviewInfoService(); $location = $this->url->get(['for' => 'home.uc.reviews']);
$review = $service->handle($id);
$content = [ $content = [
'review' => $review, 'location' => $location,
'target' => 'parent',
'msg' => '更新评价成功', 'msg' => '更新评价成功',
]; ];

View File

@ -10,7 +10,7 @@
{% if course.model in [1,2,3] %} {% if course.model in [1,2,3] %}
<p> <p>
<span>学习期限:{{ date('Y-m-d',course.study_expiry_time) }}</span> <span>学习期限:{{ date('Y-m-d',course.study_expiry_time) }}</span>
<span>退款期限:{{ date('Y-m-d',course.refund_expiry_time) }}</span> <span>退款期限:{{ course.refund_expiry > 0 ? date('Y-m-d',course.refund_expiry_time) : '不支持' }}</span>
</p> </p>
{% elseif course.model == 4 %} {% elseif course.model == 4 %}
<p>上课时间:{{ course.attrs.start_date }} ~ {{ course.attrs.end_date }}</p> <p>上课时间:{{ course.attrs.start_date }} ~ {{ course.attrs.end_date }}</p>
@ -23,13 +23,13 @@
<div class="order-item"> <div class="order-item">
<p>课程名称:{{ course.title }}</p> <p>课程名称:{{ course.title }}</p>
<p> <p>
<span>市场价格:{{ '¥%0.2f'|format(course.market_price) }}</span> <span>市场价格:<em class="price">{{ '¥%0.2f'|format(course.market_price) }}</em></span>
<span>会员价格:<em class="price">{{ '¥%0.2f'|format(course.vip_price) }}</em></span> <span>会员价格:<em class="price">{{ '¥%0.2f'|format(course.vip_price) }}</em></span>
</p> </p>
{% if course.model in [1,2,3] %} {% if course.model in [1,2,3] %}
<p> <p>
<span>学习期限:{{ date('Y-m-d',course.study_expiry_time) }}</span> <span>学习期限:{{ date('Y-m-d',course.study_expiry_time) }}</span>
<span>退款期限:{{ date('Y-m-d',course.refund_expiry_time) }}</span> <span>退款期限:{{ course.refund_expiry > 0 ? date('Y-m-d',course.refund_expiry_time) : '不支持' }}</span>
</p> </p>
{% endif %} {% endif %}
</div> </div>

View File

@ -9,7 +9,7 @@
<div class="order-item"> <div class="order-item">
<p>课程名称:<span>{{ course.title }}</span></p> <p>课程名称:<span>{{ course.title }}</span></p>
<p>退款期限:<span>{{ date('Y-m-d H:i:s',course.refund_expiry_time) }} {{ expiry_flag }}</span></p> <p>退款期限:<span>{{ date('Y-m-d H:i:s',course.refund_expiry_time) }} {{ expiry_flag }}</span></p>
<p>退款金额:<span class="price">{{ '¥%0.2f'|format(course.refund_amount) }}</span>退款比例:<span class="price">{{ 100 * course.refund_percent }}%</span></p> <p>退款金额:<span class="price">{{ '¥%0.2f'|format(course.refund_amount) }}</span>退款比例:<span class="rate">{{ 100 * course.refund_rate }}%</span></p>
</div> </div>
{% elseif confirm.item_type == 2 %} {% elseif confirm.item_type == 2 %}
{% set courses = confirm.item_info.courses %} {% set courses = confirm.item_info.courses %}
@ -18,7 +18,7 @@
<div class="order-item"> <div class="order-item">
<p>课程名称:<span>{{ course.title }}</span></p> <p>课程名称:<span>{{ course.title }}</span></p>
<p>退款期限:<span>{{ date('Y-m-d H:i:s',course.refund_expiry_time) }} {{ expiry_flag }}</span></p> <p>退款期限:<span>{{ date('Y-m-d H:i:s',course.refund_expiry_time) }} {{ expiry_flag }}</span></p>
<p>退款金额:<span class="price">{{ '¥%0.2f'|format(course.refund_amount) }}</span>退款比例:<span class="price">{{ 100 * course.refund_percent }}%</span></p> <p>退款金额:<span class="price">{{ '¥%0.2f'|format(course.refund_amount) }}</span>退款比例:<span class="rate">{{ 100 * course.refund_rate }}%</span></p>
</div> </div>
{% endfor %} {% endfor %}
{% endif %} {% endif %}
@ -40,12 +40,9 @@
</table> </table>
<br> <br>
{% if confirm.refund_amount > 0 %} {% if confirm.refund_amount > 0 %}
<form class="layui-form layui-form-pane" method="post" action="{{ url({'for':'home.refund.create'}) }}"> <form class="layui-form" method="post" action="{{ url({'for':'home.refund.create'}) }}">
<div class="layui-form-item"> <div class="layui-form-item">
<label class="layui-form-label">退款原因</label> <input class="layui-input" name="apply_note" placeholder="请告知我们退款原因,让我们做的更好..." lay-verify="required">
<div class="layui-input-block">
<input class="layui-input" name="apply_note" lay-verify="required">
</div>
</div> </div>
<div class="layui-form-item center"> <div class="layui-form-item center">
<button class="layui-btn" lay-submit="true" lay-filter="go">提交申请</button> <button class="layui-btn" lay-submit="true" lay-filter="go">提交申请</button>

View File

@ -24,9 +24,9 @@
</div> </div>
</div> </div>
<div class="layui-form-item"> <div class="layui-form-item">
<label class="layui-form-label" for="content">评价内容</label> <label class="layui-form-label">评价内容</label>
<div class="layui-input-block"> <div class="layui-input-block">
<textarea name="content" id="content" class="layui-textarea" placeholder="请描述你的学习经历,例如学习成果、课程内容、讲师风格、教学服务等。"></textarea> <textarea name="content" class="layui-textarea" placeholder="请描述你的学习经历,例如学习成果、课程内容、讲师风格、教学服务等。" lay-verify="required"></textarea>
</div> </div>
</div> </div>
<div class="layui-form-item"> <div class="layui-form-item">

View File

@ -26,7 +26,7 @@
<div class="layui-form-item"> <div class="layui-form-item">
<label class="layui-form-label">评价内容</label> <label class="layui-form-label">评价内容</label>
<div class="layui-input-block"> <div class="layui-input-block">
<textarea name="content" class="layui-textarea">{{ review.content }}</textarea> <textarea name="content" class="layui-textarea" lay-verify="required">{{ review.content }}</textarea>
</div> </div>
</div> </div>
<div class="layui-form-item"> <div class="layui-form-item">

View File

@ -53,15 +53,15 @@ class Refund extends Service
$serviceFee = $this->getServiceFee($order); $serviceFee = $this->getServiceFee($order);
$serviceRate = $this->getServiceRate($order); $serviceRate = $this->getServiceRate($order);
$refundPercent = 0.00; $refundRate = 0.00;
$refundAmount = 0.00; $refundAmount = 0.00;
if ($itemInfo['course']['refund_expiry_time'] > time()) { if ($itemInfo['course']['refund_expiry_time'] > time()) {
$refundPercent = $this->getCourseRefundPercent($order->item_id, $order->owner_id); $refundRate = $this->getCourseRefundRate($order->item_id, $order->owner_id);
$refundAmount = round(($order->amount - $serviceFee) * $refundPercent, 2); $refundAmount = round(($order->amount - $serviceFee) * $refundRate, 2);
} }
$itemInfo['course']['refund_percent'] = $refundPercent; $itemInfo['course']['refund_rate'] = $refundRate;
$itemInfo['course']['refund_amount'] = $refundAmount; $itemInfo['course']['refund_amount'] = $refundAmount;
return [ return [
@ -95,17 +95,17 @@ class Refund extends Service
$course['cover'] = kg_cos_course_cover_url($course['cover']); $course['cover'] = kg_cos_course_cover_url($course['cover']);
$refundPercent = 0.00; $refundRate = 0.00;
$refundAmount = 0.00; $refundAmount = 0.00;
if ($course['refund_expiry_time'] > time()) { if ($course['refund_expiry_time'] > time()) {
$pricePercent = round($course['market_price'] / $totalMarketPrice, 4); $priceRate = round($course['market_price'] / $totalMarketPrice, 4);
$refundPercent = $this->getCourseRefundPercent($course['id'], $order->owner_id); $refundRate = $this->getCourseRefundRate($course['id'], $order->owner_id);
$refundAmount = round(($order->amount - $serviceFee) * $pricePercent * $refundPercent, 2); $refundAmount = round(($order->amount - $serviceFee) * $priceRate * $refundRate, 2);
$totalRefundAmount += $refundAmount; $totalRefundAmount += $refundAmount;
} }
$course['refund_percent'] = $refundPercent; $course['refund_rate'] = $refundRate;
$course['refund_amount'] = $refundAmount; $course['refund_amount'] = $refundAmount;
} }
@ -176,7 +176,7 @@ class Refund extends Service
return $serviceRate; return $serviceRate;
} }
protected function getCourseRefundPercent($courseId, $userId) protected function getCourseRefundRate($courseId, $userId)
{ {
$courseRepo = new CourseRepo(); $courseRepo = new CourseRepo();

View File

@ -12,7 +12,7 @@ layui.use(['jquery', 'layer'], function () {
type: 2, type: 2,
title: '咨询详情', title: '咨询详情',
content: [url, 'no'], content: [url, 'no'],
area: ['720px', '320px'] area: ['720px', '320px'],
}); });
}); });
@ -26,9 +26,6 @@ layui.use(['jquery', 'layer'], function () {
title: '回复咨询', title: '回复咨询',
content: [url, 'no'], content: [url, 'no'],
area: ['720px', '300px'], area: ['720px', '300px'],
cancel: function () {
parent.location.reload();
}
}); });
}); });
@ -41,7 +38,7 @@ layui.use(['jquery', 'layer'], function () {
type: 2, type: 2,
title: '直播推流', title: '直播推流',
content: [url, 'no'], content: [url, 'no'],
area: ['640px', '420px'] area: ['640px', '420px'],
}); });
}); });

View File

@ -12,7 +12,7 @@ layui.use(['jquery', 'layer'], function () {
type: 2, type: 2,
title: '咨询详情', title: '咨询详情',
content: [url, 'no'], content: [url, 'no'],
area: ['720px', '320px'] area: ['720px', '320px'],
}); });
}); });
@ -26,9 +26,6 @@ layui.use(['jquery', 'layer'], function () {
title: '编辑咨询', title: '编辑咨询',
content: [url, 'no'], content: [url, 'no'],
area: ['720px', '420px'], area: ['720px', '420px'],
cancel: function () {
parent.location.reload();
}
}); });
}); });
@ -42,9 +39,6 @@ layui.use(['jquery', 'layer'], function () {
title: '发布评价', title: '发布评价',
content: [url, 'no'], content: [url, 'no'],
area: ['640px', '480px'], area: ['640px', '480px'],
cancel: function () {
parent.location.reload();
}
}); });
}); });
@ -58,9 +52,6 @@ layui.use(['jquery', 'layer'], function () {
title: '修改评价', title: '修改评价',
content: [url, 'no'], content: [url, 'no'],
area: ['640px', '480px'], area: ['640px', '480px'],
cancel: function () {
parent.location.reload();
}
}); });
}); });
@ -74,7 +65,7 @@ layui.use(['jquery', 'layer'], function () {
title: '订单详情', title: '订单详情',
content: [url, 'no'], content: [url, 'no'],
area: '800px', area: '800px',
offset: '200px' offset: '200px',
}); });
}); });
@ -88,7 +79,7 @@ layui.use(['jquery', 'layer'], function () {
title: '退款详情', title: '退款详情',
content: [url, 'no'], content: [url, 'no'],
area: '800px', area: '800px',
offset: '200px' offset: '200px',
}); });
}); });

View File

@ -7,10 +7,6 @@ layui.use(['jquery', 'rate'], function () {
var $rating2 = $('input[name=rating2]'); var $rating2 = $('input[name=rating2]');
var $rating3 = $('input[name=rating3]'); var $rating3 = $('input[name=rating3]');
$('.btn-cancel').on('click', function () {
parent.layer.closeAll();
});
rate.render({ rate.render({
elem: '#rating1', elem: '#rating1',
value: $rating1.val(), value: $rating1.val(),