glhcp/server/app/admin/view/setting/notice_setting/set_mnp.html

214 lines
9.2 KiB
HTML
Raw Blame History

This file contains ambiguous Unicode characters!

This file contains ambiguous Unicode characters that may be confused with others in your current locale. If your use case is intentional and legitimate, you can safely ignore this warning. Use the Escape button to highlight these characters.

{layout name="layout2" /}
<style>
.tips{
color: red;
}
</style>
<div class="layui-form" lay-filter="layuiadmin-form-user" id="layuiadmin-form-user" style="padding: 20px 30px 0 0;">
<input type="hidden" value="{$info.id}" name="id">
<input type="hidden" value="{$type}" name="type">
<!--通知场景-->
<div class="layui-form-item">
<label class="layui-form-label">通知场景:</label>
<div class="layui-input-inline" style="padding-top: 8px">
{$info.scene}
</div>
</div>
<!--模板编号-->
<div class="layui-form-item">
<label class="layui-form-label"><span class="tips">*</span>模板编号:</label>
<div class="layui-input-inline">
<input type="text" name="template_sn" value="{$info.mnp_notice.template_sn | default =''}" autocomplete="off" class="layui-input" lay-verify="required" lay-vertype="tips">
</div>
</div>
<!--模板名称-->
<div class="layui-form-item">
<label class="layui-form-label"><span class="tips">*</span>模板名称:</label>
<div class="layui-input-inline">
<input type="text" name="name" value="{$info.mnp_notice.name | default = ''}" autocomplete="off" class="layui-input" lay-verify="required" lay-vertype="tips">
</div>
</div>
<!--模板id-->
<div class="layui-form-item">
<label class="layui-form-label"><span class="tips">*</span>模板ID</label>
<div class="layui-input-inline">
<input type="text" name="template_id" value="{$info.mnp_notice.template_id | default =''}" autocomplete="off" class="layui-input" lay-verify="required" lay-vertype="tips">
</div>
</div>
<!--场景变量-->
<div class="layui-form-item">
<label class="layui-form-label">场景变量:</label>
<div class="layui-input-block">
{foreach $info.variable as $item => $val}
<button type="button" class="layui-btn layui-btn-primary variable-btn" data-value="{$item}">{$val}</button>
{/foreach}
</div>
</div>
<div class="layui-form-item">
<label class="layui-form-label"></label>
<div class="layui-form-mid layui-word-aux">系统在当前场景预定义好的通知变量</div>
</div>
<!--模板内容-->
<div class="layui-form-item">
<label class="layui-form-label"><span class="tips">*</span>模板内容:</label>
<div class="layui-input-inline">
<button class="layui-btn layui-btn-sm layui-btn-normal addTpl" type="button">新增</button>
</div>
</div>
<!--模板-->
<div class="template-body">
{notempty name ="$info.mnp_notice.tpl"}
{foreach $info.mnp_notice.tpl as $k => $item}
<div class="layui-form-item template">
<div class="layui-input-block">
<label class="layui-form-label">字段名称:</label>
<div class="layui-input-inline">
<input type="text" name="tpl_name[]" value="{$item.tpl_name}" autocomplete="off" class="layui-input" lay-verify="required" lay-vertype="tips">
</div>
<label class="layui-form-label">关键词:</label>
<div class="layui-input-inline">
<input type="text" name="tpl_keyword[]" value="{$item.tpl_keyword}" autocomplete="off" class="layui-input" lay-verify="required" lay-vertype="tips">
</div>
<label class="layui-form-label">字段内容:</label>
<div class="layui-input-inline">
<input type="text" name="tpl_content[]" value="{$item.tpl_content}" autocomplete="off" class="layui-input" lay-verify="required" lay-vertype="tips">
</div>
<button class="layui-btn layui-btn-sm layui-btn-danger delTpl" type="button">删除</button>
</div>
</div>
{/foreach}
{/notempty}
</div>
<!--模板预览-->
<div class="layui-form-item">
<label class="layui-form-label"><span class="tips">*</span>模板预览:</label>
<div class="layui-input-block">
<div class="layui-col-sm4">
<textarea placeholder="请输入内容" name="content" id="content" class="layui-textarea"></textarea>
</div>
</div>
</div>
<!--状态-->
<div class="layui-form-item">
<label class="layui-form-label">状态</label>
<div class="layui-input-inline">
<input type="radio" name="status" value="1" title="开启" {if ($info.mnp_notice.status ?? 0) == 1}checked{/if} />
<input type="radio" name="status" value="0" title="关闭" {if ($info.mnp_notice.status ?? 0) == 0}checked{/if} />
<div class="layui-form-mid layui-word-aux">开启或关闭当前场景通知</div>
</div>
</div>
<div class="layui-form-item layui-hide">
<input type="button" lay-submit lay-filter="addSubmit" id="addSubmit" value="确认">
</div>
</div>
<script>
layui.config({
version:"{$front_version}",
base: '/static/plug/'
}).extend({
base: '/static/plug/layui-admin/dist/layuiadmin/'
}).use(['form'], function() {
var $ = layui.$
,form = layui.form;
//场景变量复制
$(document).on('click', '.variable-btn', function () {
var copyText = $(this).data('value');
let aux = document.createElement("input");
aux.setAttribute("value", '{'+copyText+'}');
document.body.appendChild(aux);
aux.select();
document.execCommand("copy");
document.body.removeChild(aux);
layer.msg('已复制场景变量');
});
// 添加模板
$(document).on('click','.addTpl',function() {
var tpl = '<div class="layui-form-item template">' +
' <div class="layui-input-block">' +
' <label class="layui-form-label">字段名称:</label>' +
' <div class="layui-input-inline">' +
' <input type="text" name="tpl_name[]" autocomplete="off" class="layui-input" value="" lay-verify="required" lay-vertype="tips">' +
' </div>' +
' <label class="layui-form-label">关键词:</label>' +
' <div class="layui-input-inline">' +
' <input type="text" name="tpl_keyword[]" autocomplete="off" class="layui-input" value="" lay-verify="required" lay-vertype="tips">' +
' </div>' +
' <label class="layui-form-label">字段内容:</label>' +
' <div class="layui-input-inline">' +
' <input type="text" name="tpl_content[]" autocomplete="off" class="layui-input" value="" lay-verify="required" lay-vertype="tips">' +
' </div>' +
' <button class="layui-btn layui-btn-sm layui-btn-danger delTpl" type="button">删除</button>' +
' </div>' +
' </div>';
$('.template-body').append(tpl);
});
refreshContent();
//监听字段名称
$(document).on("input propertychange","input[name='tpl_name[]']",function() {
refreshContent();
});
//监听关键词
$(document).on("input propertychange","input[name='tpl_keyword[]']",function() {
refreshContent();
});
// 删除模板
$(document).on('click','.delTpl',function() {
var len = $("div.template-body > div.template").length;
if (len == 1) {
layer.msg('最少保留一个模板内容');
return;
} else {
$(this).parents('.template').remove();
refreshContent();
}
});
//渲染模板预览
function refreshContent() {
var map = [];
$(".template").each(function() {
var index = $(this).index();
var key_value = $(this).children().find("input[name='tpl_keyword[]']").val();
var name_value = $(this).children().find("input[name='tpl_name[]']").val();
map[index] = {name:name_value, key:key_value};
});
if (map.length > 0) {
var content = '';
for (var i=0; i < map.length; i++) {
var key = '{{'+map[i].key+'.DATA}}';
var name = map[i].name;
if (map[i].key === undefined || map[i].key === '') {
key = '';
}
if (map[i].name === undefined || map[i].name === '') {
name = '';
}
content += name + ':' + key + "\n";
}
$('#content').text(content);
}
}
})
</script>