1
0
mirror of https://gitee.com/koogua/course-tencent-cloud.git synced 2025-06-21 19:22:45 +08:00

v1.4.5 beta3

This commit is contained in:
koogua 2021-09-22 21:48:49 +08:00
parent 616c7aa40d
commit c7c9ab4f59
29 changed files with 146 additions and 93 deletions

View File

@ -1,3 +1,12 @@
### [v1.4.5](https://gitee.com/koogua/course-tencent-cloud/releases/v1.4.5)(2021-09-27)
- 修正点击内容分享到微信会额外出现公众号二维码的问题
- 调整登录限制(邮箱|手机)为注册限制
- 调整订单发货为每一分钟执行一次
- 增加微信公众号支付处理
- 增加取消订单功能
- 优化计划任务
### [v1.4.4](https://gitee.com/koogua/course-tencent-cloud/releases/v1.4.4)(2021-09-17) ### [v1.4.4](https://gitee.com/koogua/course-tencent-cloud/releases/v1.4.4)(2021-09-17)
- 后台增加邮件手机登录选择配置 - 后台增加邮件手机登录选择配置

View File

@ -293,11 +293,11 @@ class DeliverTask extends Task
* @param int $limit * @param int $limit
* @return ResultsetInterface|Resultset|TaskModel[] * @return ResultsetInterface|Resultset|TaskModel[]
*/ */
protected function findTasks($limit = 30) protected function findTasks($limit = 100)
{ {
$itemType = TaskModel::TYPE_DELIVER; $itemType = TaskModel::TYPE_DELIVER;
$status = TaskModel::STATUS_PENDING; $status = TaskModel::STATUS_PENDING;
$createTime = strtotime('-3 days'); $createTime = strtotime('-1 days');
return TaskModel::query() return TaskModel::query()
->where('item_type = :item_type:', ['item_type' => $itemType]) ->where('item_type = :item_type:', ['item_type' => $itemType])

View File

@ -84,7 +84,7 @@ class NoticeTask extends Task
$task->update(); $task->update();
$logger->info('Notice Process Exception ' . kg_json_encode([ $logger->error('Notice Process Exception ' . kg_json_encode([
'file' => $e->getFile(), 'file' => $e->getFile(),
'line' => $e->getLine(), 'line' => $e->getLine(),
'message' => $e->getMessage(), 'message' => $e->getMessage(),

View File

@ -1205,7 +1205,7 @@ class AuthNode extends Service
], ],
[ [
'id' => '5-1-12', 'id' => '5-1-12',
'title' => '登录设置', 'title' => '注册登录',
'type' => 'menu', 'type' => 'menu',
'route' => 'admin.setting.oauth', 'route' => 'admin.setting.oauth',
], ],

View File

@ -4,7 +4,7 @@
<div class="layui-tab layui-tab-brief"> <div class="layui-tab layui-tab-brief">
<ul class="layui-tab-title kg-tab-title"> <ul class="layui-tab-title kg-tab-title">
<li class="layui-this">本地登录</li> <li class="layui-this">注册设置</li>
<li>QQ登录</li> <li>QQ登录</li>
<li>微信登录</li> <li>微信登录</li>
<li>微博登录</li> <li>微博登录</li>

View File

@ -1,16 +1,16 @@
<form class="layui-form kg-form" method="POST" action="{{ url({'for':'admin.setting.oauth'}) }}"> <form class="layui-form kg-form" method="POST" action="{{ url({'for':'admin.setting.oauth'}) }}">
<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">
<input type="radio" name="login_with_phone" value="1" title="是" {% if local_auth.login_with_phone == "1" %}checked="checked"{% endif %}> <input type="radio" name="register_with_phone" value="1" title="是" {% if local_auth.register_with_phone == "1" %}checked="checked"{% endif %}>
<input type="radio" name="login_with_phone" value="0" title="否" {% if local_auth.login_with_phone == "0" %}checked="checked"{% endif %}> <input type="radio" name="register_with_phone" value="0" title="否" {% if local_auth.register_with_phone == "0" %}checked="checked"{% endif %}>
</div> </div>
</div> </div>
<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">
<input type="radio" name="login_with_email" value="1" title="是" {% if local_auth.login_with_email == "1" %}checked="checked"{% endif %}> <input type="radio" name="register_with_email" value="1" title="是" {% if local_auth.register_with_email == "1" %}checked="checked"{% endif %}>
<input type="radio" name="login_with_email" value="0" title="否" {% if local_auth.login_with_email == "0" %}checked="checked"{% endif %}> <input type="radio" name="register_with_email" value="0" title="否" {% if local_auth.register_with_email == "0" %}checked="checked"{% endif %}>
</div> </div>
</div> </div>
<div class="layui-form-item"> <div class="layui-form-item">

View File

@ -28,6 +28,10 @@ class AccountController extends Controller
$returnUrl = $this->request->getHTTPReferer(); $returnUrl = $this->request->getHTTPReferer();
$service = new OAuthProviderService();
$oauthProvider = $service->handle();
$service = new AccountService(); $service = new AccountService();
$captcha = $service->getSettings('captcha'); $captcha = $service->getSettings('captcha');
@ -35,6 +39,7 @@ class AccountController extends Controller
$this->seo->prependTitle('注册'); $this->seo->prependTitle('注册');
$this->view->setVar('return_url', $returnUrl); $this->view->setVar('return_url', $returnUrl);
$this->view->setVar('local_oauth', $oauthProvider['local']);
$this->view->setVar('captcha', $captcha); $this->view->setVar('captcha', $captcha);
} }

View File

@ -2,9 +2,6 @@
{% block content %} {% block content %}
{% set login_with_phone = oauth_provider.local.login_with_phone == 1 %}
{% set login_with_email = oauth_provider.local.login_with_email == 1 %}
<div class="layui-breadcrumb breadcrumb"> <div class="layui-breadcrumb breadcrumb">
<a href="/">首页</a> <a href="/">首页</a>
<a><cite>登录</cite></a> <a><cite>登录</cite></a>

View File

@ -1,20 +1,8 @@
<form class="layui-form account-form" method="POST" action="{{ url({'for':'home.account.pwd_login'}) }}"> <form class="layui-form account-form" method="POST" action="{{ url({'for':'home.account.pwd_login'}) }}">
{% if login_with_phone and login_with_email %}
<div class="layui-form-item"> <div class="layui-form-item">
<label class="layui-icon layui-icon-username"></label> <label class="layui-icon layui-icon-username"></label>
<input class="layui-input" type="text" name="account" autocomplete="off" placeholder="手机 / 邮箱" lay-verify="required"> <input class="layui-input" type="text" name="account" autocomplete="off" placeholder="手机 / 邮箱" lay-verify="required">
</div> </div>
{% elseif login_with_email %}
<div class="layui-form-item">
<label class="layui-icon layui-icon-email"></label>
<input class="layui-input" type="text" name="account" autocomplete="off" placeholder="邮箱" lay-verify="email">
</div>
{% else %}
<div class="layui-form-item">
<label class="layui-icon layui-icon-cellphone"></label>
<input class="layui-input" type="text" name="account" autocomplete="off" placeholder="手机" lay-verify="phone">
</div>
{% endif %}
<div class="layui-form-item"> <div class="layui-form-item">
<label class="layui-icon layui-icon-password"></label> <label class="layui-icon layui-icon-password"></label>
<input class="layui-input" type="password" name="password" autocomplete="off" placeholder="密码" lay-verify="required"> <input class="layui-input" type="password" name="password" autocomplete="off" placeholder="密码" lay-verify="required">

View File

@ -2,6 +2,9 @@
{% block content %} {% block content %}
{% set register_with_phone = local_oauth.register_with_phone == 1 %}
{% set register_with_email = local_oauth.register_with_email == 1 %}
<div class="layui-breadcrumb breadcrumb"> <div class="layui-breadcrumb breadcrumb">
<a href="/">首页</a> <a href="/">首页</a>
<a><cite>注册</cite></a> <a><cite>注册</cite></a>
@ -9,10 +12,22 @@
<div class="account-wrap wrap"> <div class="account-wrap wrap">
<form class="layui-form account-form" method="POST" action="{{ url({'for':'home.account.do_register'}) }}"> <form class="layui-form account-form" method="POST" action="{{ url({'for':'home.account.do_register'}) }}">
{% if register_with_phone and register_with_email %}
<div class="layui-form-item"> <div class="layui-form-item">
<label class="layui-icon layui-icon-username"></label> <label class="layui-icon layui-icon-username"></label>
<input id="cv-account" class="layui-input" type="text" name="account" autocomplete="off" placeholder="手机 / 邮箱" lay-verify="required"> <input id="cv-account" class="layui-input" type="text" name="account" autocomplete="off" placeholder="手机 / 邮箱" lay-verify="required">
</div> </div>
{% elseif register_with_email %}
<div class="layui-form-item">
<label class="layui-icon layui-icon-email"></label>
<input id="cv-account" class="layui-input" type="text" name="account" autocomplete="off" placeholder="邮箱" lay-verify="email">
</div>
{% else %}
<div class="layui-form-item">
<label class="layui-icon layui-icon-cellphone"></label>
<input id="cv-account" class="layui-input" type="text" name="account" autocomplete="off" placeholder="手机" lay-verify="phone">
</div>
{% endif %}
<div class="layui-form-item"> <div class="layui-form-item">
<label class="layui-icon layui-icon-password"></label> <label class="layui-icon layui-icon-password"></label>
<input class="layui-input" type="password" name="password" autocomplete="off" placeholder="密码字母数字特殊字符6-16位" lay-verify="required"> <input class="layui-input" type="password" name="password" autocomplete="off" placeholder="密码字母数字特殊字符6-16位" lay-verify="required">

View File

@ -17,9 +17,9 @@
<a><cite>详情</cite></a> <a><cite>详情</cite></a>
</span> </span>
<span class="share"> <span class="share">
<a href="javascript:" title="分享到微信"><i class="layui-icon layui-icon-login-wechat icon-wechat"></i></a> <a href="javascript:" title="分享到微信"><i class="layui-icon layui-icon-login-wechat share-wechat"></i></a>
<a href="javascript:" title="分享到QQ空间"><i class="layui-icon layui-icon-login-qq icon-qq"></i></a> <a href="javascript:" title="分享到QQ空间"><i class="layui-icon layui-icon-login-qq share-qq"></i></a>
<a href="javascript:" title="分享到微博"><i class="layui-icon layui-icon-login-weibo icon-weibo"></i></a> <a href="javascript:" title="分享到微博"><i class="layui-icon layui-icon-login-weibo share-weibo"></i></a>
</span> </span>
</div> </div>

View File

@ -15,9 +15,9 @@
<a><cite>{{ chapter.title }}</cite></a> <a><cite>{{ chapter.title }}</cite></a>
</span> </span>
<span class="share"> <span class="share">
<a href="javascript:" title="分享到微信"><i class="layui-icon layui-icon-login-wechat icon-wechat"></i></a> <a href="javascript:" title="分享到微信"><i class="layui-icon layui-icon-login-wechat share-wechat"></i></a>
<a href="javascript:" title="分享到QQ空间"><i class="layui-icon layui-icon-login-qq icon-qq"></i></a> <a href="javascript:" title="分享到QQ空间"><i class="layui-icon layui-icon-login-qq share-qq"></i></a>
<a href="javascript:" title="分享到微博"><i class="layui-icon layui-icon-login-weibo icon-weibo"></i></a> <a href="javascript:" title="分享到微博"><i class="layui-icon layui-icon-login-weibo share-weibo"></i></a>
</span> </span>
</div> </div>

View File

@ -10,9 +10,9 @@
<a href="{{ course_url }}"><i class="layui-icon layui-icon-return"></i> 返回课程</a> <a href="{{ course_url }}"><i class="layui-icon layui-icon-return"></i> 返回课程</a>
</span> </span>
<span class="share"> <span class="share">
<a href="javascript:" title="分享到微信"><i class="layui-icon layui-icon-login-wechat icon-wechat"></i></a> <a href="javascript:" title="分享到微信"><i class="layui-icon layui-icon-login-wechat share-wechat"></i></a>
<a href="javascript:" title="分享到QQ空间"><i class="layui-icon layui-icon-login-qq icon-qq"></i></a> <a href="javascript:" title="分享到QQ空间"><i class="layui-icon layui-icon-login-qq share-qq"></i></a>
<a href="javascript:" title="分享到微博"><i class="layui-icon layui-icon-login-weibo icon-weibo"></i></a> <a href="javascript:" title="分享到微博"><i class="layui-icon layui-icon-login-weibo share-weibo"></i></a>
</span> </span>
</div> </div>

View File

@ -11,9 +11,9 @@
<a><cite>{{ chapter.title }}</cite></a> <a><cite>{{ chapter.title }}</cite></a>
</span> </span>
<span class="share"> <span class="share">
<a href="javascript:" title="分享到微信"><i class="layui-icon layui-icon-login-wechat icon-wechat"></i></a> <a href="javascript:" title="分享到微信"><i class="layui-icon layui-icon-login-wechat share-wechat"></i></a>
<a href="javascript:" title="分享到QQ空间"><i class="layui-icon layui-icon-login-qq icon-qq"></i></a> <a href="javascript:" title="分享到QQ空间"><i class="layui-icon layui-icon-login-qq share-qq"></i></a>
<a href="javascript:" title="分享到微博"><i class="layui-icon layui-icon-login-weibo icon-weibo"></i></a> <a href="javascript:" title="分享到微博"><i class="layui-icon layui-icon-login-weibo share-weibo"></i></a>
</span> </span>
</div> </div>

View File

@ -11,9 +11,9 @@
<a><cite>{{ course.title }}</cite></a> <a><cite>{{ course.title }}</cite></a>
</span> </span>
<span class="share"> <span class="share">
<a href="javascript:" title="分享到微信"><i class="layui-icon layui-icon-login-wechat icon-wechat"></i></a> <a href="javascript:" title="分享到微信"><i class="layui-icon layui-icon-login-wechat share-wechat"></i></a>
<a href="javascript:" title="分享到QQ空间"><i class="layui-icon layui-icon-login-qq icon-qq"></i></a> <a href="javascript:" title="分享到QQ空间"><i class="layui-icon layui-icon-login-qq share-qq"></i></a>
<a href="javascript:" title="分享到微博"><i class="layui-icon layui-icon-login-weibo icon-weibo"></i></a> <a href="javascript:" title="分享到微博"><i class="layui-icon layui-icon-login-weibo share-weibo"></i></a>
</span> </span>
</div> </div>

View File

@ -4,6 +4,7 @@
{{ partial('macros/order') }} {{ partial('macros/order') }}
{% set order_cancel_url = url({'for':'home.order.cancel'}) %}
{% set order_pay_url = url({'for':'home.order.pay'},{'sn':order.sn}) %} {% set order_pay_url = url({'for':'home.order.pay'},{'sn':order.sn}) %}
{% set refund_confirm_url = url({'for':'home.refund.confirm'},{'sn':order.sn}) %} {% set refund_confirm_url = url({'for':'home.refund.confirm'},{'sn':order.sn}) %}
@ -24,6 +25,9 @@
{% if order.me.allow_pay == 1 %} {% if order.me.allow_pay == 1 %}
<a class="layui-btn layui-bg-blue" href="{{ order_pay_url }}" target="_top">立即支付</a> <a class="layui-btn layui-bg-blue" href="{{ order_pay_url }}" target="_top">立即支付</a>
{% endif %} {% endif %}
{% if order.me.allow_cancel == 1 %}
<a class="layui-btn layui-bg-red order-cancel" href="javascript:" data-sn="{{ order.sn }}" data-url="{{ order_cancel_url }}">立即取消</a>
{% endif %}
{% if order.me.allow_refund == 1 %} {% if order.me.allow_refund == 1 %}
<a class="layui-btn layui-bg-blue" href="{{ refund_confirm_url }}">申请退款</a> <a class="layui-btn layui-bg-blue" href="{{ refund_confirm_url }}">申请退款</a>
{% endif %} {% endif %}
@ -31,13 +35,8 @@
{% endblock %} {% endblock %}
{% block inline_js %} {% block include_js %}
<script> {{ js_include('home/js/order.info.js') }}
layui.use(['jquery', 'layer'], function () {
var index = parent.layer.getFrameIndex(window.name);
parent.layer.iframeAuto(index);
});
</script>
{% endblock %} {% endblock %}

View File

@ -22,9 +22,9 @@
<a><cite>详情</cite></a> <a><cite>详情</cite></a>
</span> </span>
<span class="share"> <span class="share">
<a href="javascript:" title="分享到微信"><i class="layui-icon layui-icon-login-wechat icon-wechat"></i></a> <a href="javascript:" title="分享到微信"><i class="layui-icon layui-icon-login-wechat share-wechat"></i></a>
<a href="javascript:" title="分享到QQ空间"><i class="layui-icon layui-icon-login-qq icon-qq"></i></a> <a href="javascript:" title="分享到QQ空间"><i class="layui-icon layui-icon-login-qq share-qq"></i></a>
<a href="javascript:" title="分享到微博"><i class="layui-icon layui-icon-login-weibo icon-weibo"></i></a> <a href="javascript:" title="分享到微博"><i class="layui-icon layui-icon-login-weibo share-weibo"></i></a>
</span> </span>
</div> </div>

View File

@ -14,9 +14,9 @@
</span> </span>
<span class="share"> <span class="share">
<a href="javascript:" title="添加好友" class="apply-friend" data-id="{{ user.id }}" data-name="{{ user.name }}" data-avatar="{{ user.avatar }}"><i class="layui-icon layui-icon-user"></i></a> <a href="javascript:" title="添加好友" class="apply-friend" data-id="{{ user.id }}" data-name="{{ user.name }}" data-avatar="{{ user.avatar }}"><i class="layui-icon layui-icon-user"></i></a>
<a href="javascript:" title="分享到微信"><i class="layui-icon layui-icon-login-wechat icon-wechat"></i></a> <a href="javascript:" title="分享到微信"><i class="layui-icon layui-icon-login-wechat share-wechat"></i></a>
<a href="javascript:" title="分享到QQ空间"><i class="layui-icon layui-icon-login-qq icon-qq"></i></a> <a href="javascript:" title="分享到QQ空间"><i class="layui-icon layui-icon-login-qq share-qq"></i></a>
<a href="javascript:" title="分享到微博"><i class="layui-icon layui-icon-login-weibo icon-weibo"></i></a> <a href="javascript:" title="分享到微博"><i class="layui-icon layui-icon-login-weibo share-weibo"></i></a>
</span> </span>
</div> </div>

View File

@ -21,8 +21,8 @@ class OAuthProvider extends LogicService
return [ return [
'local' => [ 'local' => [
'login_with_phone' => $local['login_with_phone'], 'register_with_phone' => $local['register_with_phone'],
'login_with_email' => $local['login_with_email'], 'register_with_email' => $local['register_with_email'],
], ],
'weixin' => ['enabled' => $weixin['enabled']], 'weixin' => ['enabled' => $weixin['enabled']],
'weibo' => ['enabled' => $weibo['enabled']], 'weibo' => ['enabled' => $weibo['enabled']],

View File

@ -75,11 +75,13 @@ class OrderInfo extends LogicService
{ {
$result = [ $result = [
'allow_pay' => 0, 'allow_pay' => 0,
'allow_cancel' => 0,
'allow_refund' => 0, 'allow_refund' => 0,
]; ];
if ($order->status == OrderModel::STATUS_PENDING) { if ($order->status == OrderModel::STATUS_PENDING) {
$result['allow_pay'] = 1; $result['allow_pay'] = 1;
$result['allow_cancel'] = 1;
} }
if ($order->status == OrderModel::STATUS_FINISHED) { if ($order->status == OrderModel::STATUS_FINISHED) {

View File

@ -369,6 +369,7 @@ $error['order.item_not_found'] = '商品不存在';
$error['order.trade_expired'] = '交易已过期'; $error['order.trade_expired'] = '交易已过期';
$error['order.has_bought_course'] = '已经购买过该课程'; $error['order.has_bought_course'] = '已经购买过该课程';
$error['order.has_bought_package'] = '已经购买过该套餐'; $error['order.has_bought_package'] = '已经购买过该套餐';
$error['order.cancel_not_allowed'] = '当前不允许取消订单';
$error['order.close_not_allowed'] = '当前不允许关闭订单'; $error['order.close_not_allowed'] = '当前不允许关闭订单';
$error['order.refund_not_allowed'] = '当前不允许申请退款'; $error['order.refund_not_allowed'] = '当前不允许申请退款';
$error['order.refund_item_unsupported'] = '该品类不支持退款'; $error['order.refund_item_unsupported'] = '该品类不支持退款';

View File

@ -14,6 +14,7 @@ class V20210917093354 extends Phinx\Migration\AbstractMigration
{ {
$this->alterConnectTable(); $this->alterConnectTable();
$this->alterWechatSubscribeTable(); $this->alterWechatSubscribeTable();
$this->handleLocalAuthSetting();
} }
protected function alterConnectTable() protected function alterConnectTable()
@ -91,4 +92,22 @@ class V20210917093354 extends Phinx\Migration\AbstractMigration
$table->save(); $table->save();
} }
protected function handleLocalAuthSetting()
{
$rows = [
[
'section' => 'oauth.local',
'item_key' => 'register_with_phone',
'item_value' => '1',
],
[
'section' => 'oauth.local',
'item_key' => 'register_with_email',
'item_value' => '1',
]
];
$this->table('kg_setting')->insert($rows)->save();
}
} }

View File

@ -10,16 +10,16 @@ layui.use(['jquery', 'helper'], function () {
qrcode: $('input[name="share.qrcode"]').val() qrcode: $('input[name="share.qrcode"]').val()
}; };
$('.icon-wechat').on('click', function () { $('.share-wechat').on('click', function () {
helper.wechatShare(myShare.qrcode); helper.wechatShare(myShare.qrcode);
}); });
$('.icon-qq').on('click', function () { $('.share-qq').on('click', function () {
var title = '推荐一篇好文章:' + myShare.title + ',快来和我一起学习吧!'; var title = '推荐一篇好文章:' + myShare.title + ',快来和我一起学习吧!';
helper.qqShare(title, myShare.url, myShare.pic); helper.qqShare(title, myShare.url, myShare.pic);
}); });
$('.icon-weibo').on('click', function () { $('.share-weibo').on('click', function () {
var title = '推荐一篇好文章:' + myShare.title + ',快来和我一起学习吧!'; var title = '推荐一篇好文章:' + myShare.title + ',快来和我一起学习吧!';
helper.weiboShare(title, myShare.url, myShare.pic); helper.weiboShare(title, myShare.url, myShare.pic);
}); });

View File

@ -10,16 +10,16 @@ layui.use(['jquery', 'helper'], function () {
qrcode: $('input[name="share.qrcode"]').val() qrcode: $('input[name="share.qrcode"]').val()
}; };
$('.icon-wechat').on('click', function () { $('.share-wechat').on('click', function () {
helper.wechatShare(myShare.qrcode); helper.wechatShare(myShare.qrcode);
}); });
$('.icon-qq').on('click', function () { $('.share-qq').on('click', function () {
var title = '推荐一门好课:' + myShare.title + ',快来和我一起学习吧!'; var title = '推荐一门好课:' + myShare.title + ',快来和我一起学习吧!';
helper.qqShare(title, myShare.url, myShare.pic); helper.qqShare(title, myShare.url, myShare.pic);
}); });
$('.icon-weibo').on('click', function () { $('.share-weibo').on('click', function () {
var title = '推荐一门好课:' + myShare.title + ',快来和我一起学习吧!'; var title = '推荐一门好课:' + myShare.title + ',快来和我一起学习吧!';
helper.weiboShare(title, myShare.url, myShare.pic); helper.weiboShare(title, myShare.url, myShare.pic);
}); });

View File

@ -0,0 +1,27 @@
layui.use(['jquery', 'layer', 'helper'], function () {
var $ = layui.jquery;
var layer = layui.layer;
var index = parent.layer.getFrameIndex(window.name);
parent.layer.iframeAuto(index);
$('.order-cancel').on('click', function () {
var url = $(this).data('url');
var data = {sn: $(this).data('sn')};
layer.confirm('确定要取消订单吗?', function () {
$.ajax({
type: 'POST',
url: url,
data: data,
success: function () {
layer.msg('取消订单成功', {icon: 1});
parent.layer.close(index);
top.location.href = '/uc/orders';
}
});
});
});
});

View File

@ -10,16 +10,16 @@ layui.use(['jquery', 'helper'], function () {
qrcode: $('input[name="share.qrcode"]').val() qrcode: $('input[name="share.qrcode"]').val()
}; };
$('.icon-wechat').on('click', function () { $('.share-wechat').on('click', function () {
helper.wechatShare(myShare.qrcode); helper.wechatShare(myShare.qrcode);
}); });
$('.icon-qq').on('click', function () { $('.share-qq').on('click', function () {
var title = '分享一个好问题:' + myShare.title + ',快来和我一起学习吧!'; var title = '分享一个好问题:' + myShare.title + ',快来和我一起学习吧!';
helper.qqShare(title, myShare.url, myShare.pic); helper.qqShare(title, myShare.url, myShare.pic);
}); });
$('.icon-weibo').on('click', function () { $('.share-weibo').on('click', function () {
var title = '分享一个好问题:' + myShare.title + ',快来和我一起学习吧!'; var title = '分享一个好问题:' + myShare.title + ',快来和我一起学习吧!';
helper.weiboShare(title, myShare.url, myShare.pic); helper.weiboShare(title, myShare.url, myShare.pic);
}); });

View File

@ -10,16 +10,16 @@ layui.use(['jquery', 'helper'], function () {
qrcode: $('input[name="share.qrcode"]').val() qrcode: $('input[name="share.qrcode"]').val()
}; };
$('.icon-wechat').on('click', function () { $('.share-wechat').on('click', function () {
helper.wechatShare(myShare.qrcode); helper.wechatShare(myShare.qrcode);
}); });
$('.icon-qq').on('click', function () { $('.share-qq').on('click', function () {
var title = '推荐一个有趣的朋友:' + myShare.title + '快来和Ta一起学习吧'; var title = '推荐一个有趣的朋友:' + myShare.title + '快来和Ta一起学习吧';
helper.qqShare(title, myShare.url, myShare.pic); helper.qqShare(title, myShare.url, myShare.pic);
}); });
$('.icon-weibo').on('click', function () { $('.share-weibo').on('click', function () {
var title = '推荐一个有趣的朋友:' + myShare.title + '快来和Ta一起学习吧'; var title = '推荐一个有趣的朋友:' + myShare.title + '快来和Ta一起学习吧';
helper.weiboShare(title, myShare.url, myShare.pic); helper.weiboShare(title, myShare.url, myShare.pic);
}); });

View File

@ -29,15 +29,6 @@ layui.define(['jquery', 'layer'], function (exports) {
callback(); callback();
}; };
helper.cs = function () {
layer.open({
type: 2,
title: '在线客服',
area: ['600px', '570px'],
content: ['/im/cs', 'no']
});
};
helper.wechatShare = function (qrcode) { helper.wechatShare = function (qrcode) {
var content = '<div class="qrcode"><img src="' + qrcode + '" alt="分享到微信"></div>'; var content = '<div class="qrcode"><img src="' + qrcode + '" alt="分享到微信"></div>';
layer.open({ layer.open({

View File

@ -16,28 +16,28 @@ $script = __DIR__ . '/console.php';
$bin = '/usr/local/bin/php'; $bin = '/usr/local/bin/php';
$scheduler->php($script, $bin, ['--task' => 'deliver', '--action' => 'main']) $scheduler->php($script, $bin, ['--task' => 'deliver', '--action' => 'main'])
->at('*/3 * * * *'); ->everyMinute();
$scheduler->php($script, $bin, ['--task' => 'vod_event', '--action' => 'main']) $scheduler->php($script, $bin, ['--task' => 'vod_event', '--action' => 'main'])
->at('*/5 * * * *'); ->everyMinute(5);
$scheduler->php($script, $bin, ['--task' => 'sync_learning', '--action' => 'main']) $scheduler->php($script, $bin, ['--task' => 'sync_learning', '--action' => 'main'])
->at('*/7 * * * *'); ->everyMinute(7);
$scheduler->php($script, $bin, ['--task' => 'teacher_live_notice', '--action' => 'consume']) $scheduler->php($script, $bin, ['--task' => 'teacher_live_notice', '--action' => 'consume'])
->at('*/10 * * * *'); ->everyMinute(9);
$scheduler->php($script, $bin, ['--task' => 'point_gift_deliver', '--action' => 'main']) $scheduler->php($script, $bin, ['--task' => 'point_gift_deliver', '--action' => 'main'])
->at('*/11 * * * *'); ->everyMinute(11);
$scheduler->php($script, $bin, ['--task' => 'server_monitor', '--action' => 'main']) $scheduler->php($script, $bin, ['--task' => 'server_monitor', '--action' => 'main'])
->at('*/12 * * * *'); ->everyMinute(12);
$scheduler->php($script, $bin, ['--task' => 'close_trade', '--action' => 'main']) $scheduler->php($script, $bin, ['--task' => 'close_trade', '--action' => 'main'])
->at('*/13 * * * *'); ->everyMinute(13);
$scheduler->php($script, $bin, ['--task' => 'close_flash_sale_order', '--action' => 'main']) $scheduler->php($script, $bin, ['--task' => 'close_flash_sale_order', '--action' => 'main'])
->at('*/15 * * * *'); ->everyMinute(15);
$scheduler->php($script, $bin, ['--task' => 'notice', '--action' => 'main']) $scheduler->php($script, $bin, ['--task' => 'notice', '--action' => 'main'])
->everyMinute(); ->everyMinute();