2023-10-27 14:25:12 +08:00

279 lines
15 KiB
PHP
Raw Blame History

This file contains ambiguous Unicode characters

This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.

<?php
/**
* @author Any
* @description KISS
* @date 2020-11-5
* @version 1.0.0
*
* _____LOG_____
*
*/
use app\models\sms\SmsSetting;
$type_labels = SmsSetting::typeLabels();
$this->title = '短信配置';
$this->params['breadcrumbs'][] = $this->title;
?>
<div class="layui-fluid">
<div class="layui-card">
<div class="layui-card-header"><?= $this->title ?></div>
<div class="layui-card-body">
<div class="layui-row">
<div class="layui-col-md6">
<div class="layui-form">
<div class="layui-form-item">
<label class="layui-form-label">服务商</label>
<div class="layui-input-block url-type">
<?php foreach ($type_labels as $key => $item):?>
<input type="radio" name="type" value="<?=$key?>" title="<?=$item?>" <?= $model->type == $key ? 'checked' : ''?> lay-filter="sms-type">
<?php endforeach;?>
</div>
<div class="layui-form-mid layui-word-aux"></div>
</div>
<div class="layui-form-item sms-type type-0">
<label class="layui-form-label">阿里云AccessKeyId</label>
<div class="layui-input-inline">
<input class="layui-input" type="text" name="access_key_id" lay-verify="" value="<?=$model->access_key_id?>" placeholder="请输入AccessKeyId">
</div>
<div class="layui-form-mid layui-word-aux"></div>
</div>
<div class="layui-form-item sms-type type-0">
<label class="layui-form-label">阿里云AccessSecret</label>
<div class="layui-input-inline">
<input class="layui-input" type="text" name="access_secret" lay-verify="" value="<?=$model->access_secret?>" placeholder="请输入AccessSecret">
</div>
<div class="layui-form-mid layui-word-aux"></div>
</div>
<div class="layui-form-item sms-type type-1">
<label class="layui-form-label">腾讯短信SecretId</label>
<div class="layui-input-inline">
<input class="layui-input" type="text" name="secret_id" lay-verify="" value="<?=$model->secret_id?>" placeholder="请输入secretId">
</div>
<div class="layui-form-mid layui-word-aux"></div>
</div>
<div class="layui-form-item sms-type type-1">
<label class="layui-form-label">腾讯短信SecretKey</label>
<div class="layui-input-inline">
<input class="layui-input" type="text" name="secret_key" lay-verify="" value="<?=$model->secret_key?>" placeholder="请输入secretKey">
</div>
<div class="layui-form-mid layui-word-aux"></div>
</div>
<div class="layui-form-item sms-type type-1">
<label class="layui-form-label">腾讯短信sdk应用ID</label>
<div class="layui-input-inline">
<input class="layui-input" type="text" name="sdk_app_id" lay-verify="" value="<?=$model->sdk_app_id?>" placeholder="请输入sdk应用ID">
</div>
<div class="layui-form-mid layui-word-aux"></div>
</div>
<div class="layui-form-item">
<label class="layui-form-label">短信签名</label>
<div class="layui-input-inline">
<input class="layui-input" type="text" name="sign_name" lay-verify="" value="<?=$model->sign_name?>" placeholder="请输入短信签名">
</div>
<div class="layui-form-mid layui-word-aux"></div>
</div>
<div class="layui-form-item">
<label class="layui-form-label">短信有效时长</label>
<div class="layui-input-inline">
<input class="layui-input" type="number" name="expire_time" lay-verify="required" value="<?=$model->expire_time?>" placeholder="请输入短信有效时长">
</div>
<div class="layui-form-mid layui-word-aux">单位:秒</div>
</div>
<div class="layui-form-item">
<label class="layui-form-label">短信获取间隔</label>
<div class="layui-input-inline">
<input class="layui-input" type="number" name="time_delay" lay-verify="required" value="<?=$model->time_delay?>" placeholder="请输入短信获取间隔">
</div>
<div class="layui-form-mid layui-word-aux">单位:秒</div>
</div>
<div class="layui-form-item">
<label class="layui-form-label">每日获取次数上限</label>
<div class="layui-input-inline">
<input class="layui-input" type="number" name="day_limit" lay-verify="required" value="<?=$model->day_limit?>" placeholder="请输入每日获取次数上限">
</div>
<div class="layui-form-mid layui-word-aux">每个手机号每日获取验证码次数上限为0则不限制</div>
</div>
<div class="layui-form-item">
<label class="layui-form-label">当前环境</label>
<div class="layui-input-block url-type">
<input type="radio" name="is_prod" value="0" title="测试环境" <?= $model->is_prod ? '' : 'checked=""'?>>
<input type="radio" name="is_prod" value="1" title="正式环境" <?= $model->is_prod == 1 ? 'checked=""' : ''?> >
</div>
<div class="layui-form-mid layui-word-aux"></div>
</div>
<div class="layui-form-item">
<label class="layui-form-label">验证码长度</label>
<div class="layui-input-inline">
<input class="layui-input" type="number" name="code_len" lay-verify="required" value="<?=$model->code_len?>" placeholder="请输入验证码长度">
</div>
<div class="layui-form-mid layui-word-aux"></div>
</div>
<div class="layui-form-item layui-mb-15">
<label class="layui-form-label">超级验证码</label>
<div class="layui-input-inline">
<input class="layui-input" type="text" name="super_code" lay-verify="required" value="<?=$model->super_code?>" placeholder="请输入超级验证码">
</div>
<div class="layui-form-mid layui-word-aux">仅在测试环境有效</div>
</div>
<hr class="layui-mb-15">
<?php foreach ($tpl_list as $index => $item): ?>
<div class="layui-form-item">
<label class="layui-form-label"><?= $item["label"] ?></label>
<div class="layui-input-block">
<input type="text" name="tpl[<?= $item["key"] ?>]" lay-verify="" placeholder="" value="<?= $item['tpl_code'] ?>" autocomplete="off" class="layui-input tpl">
<div class="layui-form-mid layui-word-aux"><?= $item["tip"] ?></div>
</div>
</div>
<?php endforeach; ?>
<div class="layui-form-item layui-mb-15">
<label class="layui-form-label">短信发送区间</label>
<div class="layui-input-inline">
<input type="text" class="layui-input" value="<?=$send_time?>" id="send_time" placeholder=" - " readonly>
</div>
<div class="layui-form-mid layui-word-aux">仅在每天的这段时间点内发送短信</div>
</div>
<div class="layui-form-item layui-mb-15">
<label class="layui-form-label">电量告警</label>
<div class="layui-input-inline">
<input class="layui-input" type="number" value="<?=$ddl_number?>" id="ddl_number" lay-verify="required" placeholder="请输入电量">
</div>
<div class="layui-form-mid layui-word-aux">低于此电量推送短信</div>
</div>
<div class="layui-form-item layui-mb-15">
<label class="layui-form-label">低电量告警频率</label>
<div class="layui-input-inline">
<input class="layui-input" type="number" value="<?=$ddl_sms?>" id="ddl_sms" lay-verify="required" placeholder="请输入分钟">
</div>
<div class="layui-form-mid layui-word-aux">分钟内不再发送此类短信</div>
</div>
<div class="layui-form-item layui-mb-15">
<label class="layui-form-label">报警通知频率</label>
<div class="layui-input-inline">
<input class="layui-input" type="number" value="<?=$bj_sms?>" id="bj_sms" lay-verify="required" placeholder="请输入分钟">
</div>
<div class="layui-form-mid layui-word-aux">分钟内不再发送此类短信</div>
</div>
<div class="layui-form-item layui-mb-15">
<label class="layui-form-label">超时未归还频率</label>
<div class="layui-input-inline">
<input class="layui-input" type="number" value="<?=$bj_time_sms?>" id="bj_time_sms" lay-verify="required" placeholder="请输入分钟">
</div>
<div class="layui-form-mid layui-word-aux">分钟内不再发送此类短信</div>
</div>
<div class="layui-form-item">
<div class="layui-input-block">
<div class="" >
<button class="layui-btn" lay-submit="" lay-filter="form-submit">立即提交</button>
</div>
</div>
</div>
</div>
</div>
</div>
</div>
</div>
</div>
<script>
<?php $this->beginBlock('js_script_wrap') ?>
layui.config({
base: '/statics/layuiadmin/' //静态资源所在路径
}).extend({
index: 'lib/index' //主入口模块
}).use(['index', 'user','laydate'], function () {
var $ = layui.$
, setter = layui.setter
, admin = layui.admin
, form = layui.form
, router = layui.router()
, search = router.search;
var laydate = layui.laydate;
//时间范围
laydate.render({
elem: '#send_time'
,type: 'time'
,range: true
});
form.render();
//提交
var submitLock = false;
form.on('submit(form-submit)', function (obj) {
if (submitLock) {
return false;
}
submitLock = true;
//请求登入接口
//console.log(obj)
var url = '<?= \Yii::$app->urlManager->createUrl(["/admin/sms/config"]) ?>';
var returnUrl = "<?= $return_url ?>";
var data = obj.field;
data.ddl_sms = $('#ddl_sms').val();
data.bj_sms = $('#bj_sms').val();
data.ddl_number = $('#ddl_number').val()
data.send_time = $('#send_time').val()
data.bj_time_sms = $('#bj_time_sms').val()
data._csrf = _csrf;
$.ajax(url, {
type: "POST",
dataType: "json",
data: data,
timeout: 10000,
success: function (res) {
if (res.code == 0) {
layer.msg(res.msg, {
offset: '15px'
, icon: 1
, time: 1000
}, function () {
location.reload();
});
} else {
layer.msg(res.msg, {
offset: '15px'
, icon: 2
, time: 1000
}, function () {
});
}
},
error: function (xhr, type, err) {
layer.msg(xhr.responseText, {
offset: '15px'
, icon: 2
, time: 1000
}, function () {
});
},
complete: function () {
submitLock = false;
}
})
});
//@TODO 其他短信服务商
form.on('radio(sms-type)',function(data){
//console.log(data)
$('.sms-type').hide();
var type_elem = '.type-' + data.value;
$(type_elem).show();
$('.tpl').val("");
})
function page_init()
{
$('.sms-type').hide();
var type = <?=$model->type == 1 ? 1 : 0?>;
var type_elem = '.type-' + type;
$(type_elem).show();
}
page_init();
});
<?php $this->endBlock(); ?>
</script>
<?php $this->registerJs($this->blocks['js_script_wrap'], \yii\web\View::POS_END); ?>