Files
HTCloud/HT.Cloud.Web/Areas/SystemOrganize/Views/DataPrivilegeRule/Form.cshtml
2024-11-14 09:01:37 +08:00

296 lines
14 KiB
Plaintext
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.

@{
ViewBag.Title = "Form";
Layout = "~/Views/Shared/_Form.cshtml";
}
<script>
layui.use(['jquery', 'table', 'form', 'commonTable', 'common', 'optimizeSelectOption'], function () {
var form = layui.form,
$ = layui.$,
common = layui.common,
table = layui.table,
commonTable = layui.commonTable;
var keyValue = $.request("keyValue");
if (!!keyValue) {
$('#F_ModuleId').prop('disabled', true);
}
//权限字段
common.authorizeFields('adminform');
$(function () {
initControl();
if (!!keyValue) {
common.ajax({
url: '/SystemOrganize/DataPrivilegeRule/GetFormJson',
dataType: 'json',
data: { keyValue: keyValue },
async: false,
success: function (data) {
common.val('adminform', data);
var datas = JSON.parse(data.F_PrivilegeRules);
for (var i = 0; i < datas.length; i++) {
datas[i]["F_Id"] = uuid();
}
table.reload('currentTableId', {
data: datas
});
}
});
}
else {
if (!$('#F_ModuleId').val()) {
$('#toolbar').addClass('layui-hide');
}
}
form.render();
});
wcLoading.close();
commonTable.rendertable({
elem: '#currentTableId',
id: 'currentTableId',
data: [],
search:false,
limit: 9999,//每页数据 默认
page: { //支持传入 laypage 组件的所有参数某些参数除外jump/elem - 详见文档
layout: ['count'] //自定义分页布局
, first: false //不显示首页
, last: false //不显示尾页
},
height: 'full-150',
cols: [[
{ type: "radio", width: 50 },
{ field: 'Operation', title: '规则间条件', width: 120 },
{ field: 'Filters', title: '规则内容', minWidth: 200 },
{ field: 'Description', title: '规则备注', minWidth: 200 },
{ title: '操作', width: 130, toolbar: '#currentTableBar', align: "center" }
]]
});
//行点击事件监听,控制按钮显示
var oneList = ["NF-edit", "NF-delete"];//选择1条显示
commonTable.tableRowClick("radio", "currentTableFilter", "currentTableId", oneList);
//toolbar监听事件
table.on('toolbar(currentTableFilter)', function (obj) {
var data = table.checkStatus('currentTableId').data;
var id = data.length > 0 ? data[0].F_Id : null;
var module = $('#F_ModuleId').val();
if (obj.event === 'add') { // 监听删除操作
if (!module) {
common.modalMsg("未选中模块", "warning");
return false;
}
common.modalOpen({
title: "添加规则",
url: "/SystemOrganize/DataPrivilegeRule/RuleForm?module=" + module,
width: "750px",
height: "500px",
});
}
else if (obj.event === 'delete') {
if (id == null) {
common.modalMsg("未选中数据", "warning");
return false;
}
common.modalConfirm("注:您确定要删除该项数据吗?", function (r) {
if (r) {
var index = parent.layer.load(0, {
shade: [0.5, '#000'], //0.1透明度的背景
});
try {
var cachedata = table.cache.currentTableId;
for (var i = 0; i < cachedata.length; i++) {
if (id == cachedata[i].F_Id) {
cachedata.splice(i, 1);
break;
}
}
table.reload('currentTableId', {
data: cachedata
});
entity = null;
common.modalMsg("操作成功", "success");
} catch (e) {
alert(e);
}
parent.layer.close(index);
}
else {
return false;
}
});
}
else if (obj.event === 'edit') {
if (id == null) {
common.modalMsg("未选中数据", "warning");
return false;
}
if (!module) {
common.modalMsg("未选中模块", "warning");
return false;
}
common.modalOpen({
title: "编辑规则",
url: "/SystemOrganize/DataPrivilegeRule/RuleForm?keyValue=" + id + "&module=" + module,
width: "750px",
height: "500px",
});
}
return false;
});
//toolrow监听事件
table.on('tool(currentTableFilter)', function (obj) {
var id = obj.data.F_Id;
var module = $('#F_ModuleId').val();
if (obj.event === 'delete') {
common.modalConfirm("注:您确定要删除该项数据吗?", function (r) {
if (r) {
var index = parent.layer.load(0, {
shade: [0.5, '#000'], //0.1透明度的背景
});
try {
var cachedata = table.cache.currentTableId;
for (var i = 0; i < cachedata.length; i++) {
if (id == cachedata[i].F_Id) {
cachedata.splice(i, 1);
break;
}
}
table.reload('currentTableId', {
data: cachedata
});
entity = null;
common.modalMsg("操作成功", "success");
} catch (e) {
alert(e);
}
parent.layer.close(index);
}
else {
return false;
}
});
}
else if (obj.event === 'edit') {
if (!module) {
common.modalMsg("未选中模块", "warning");
return false;
}
common.modalOpen({
title: "编辑规则",
url: "/SystemOrganize/DataPrivilegeRule/RuleForm?keyValue=" + id + "&module=" + module,
width: "750px",
height: "500px",
});
}
return false;
});
function initControl() {
//绑定数据源
//类型为下拉框时
if (!!keyValue) {
$("#F_ModuleId").bindSelect({
url: "/SystemManage/Module/GetSelectMunuJson",
});
}
else {
$("#F_ModuleId").bindSelect({
url: "/SystemManage/Module/GetSelectMunuBesidesJson",
});
}
}
//select验证
form.verify({
required: function (value, item) {
var msg = "必填项不能为空";
value = $.trim(value);
var isEmpty = !value || value.length < 1;
// 当前验证元素是select且为空时,将页面定位至layui渲染的select处或自定义想定位的位置
if (item.tagName == 'SELECT' && isEmpty) {
$("html").animate({
scrollTop: $(item).siblings(".layui-form-select").offset().top - 74
}, 50);
}
if (isEmpty) {
return msg;
}
}
});
//监听select
form.on('select(F_ModuleId)', function (data) {
if (!!data.value) {
$('#toolbar').removeClass('layui-hide');
}
else {
$('#toolbar').addClass('layui-hide');
}
return false;
});
//监听提交
form.on('submit(saveBtn)', function (data) {
var cachedata = table.cache.currentTableId
if (cachedata.length == 0) {
common.modalMsg("未添加规则", "warning");
return false;
}
var postData = data.field;
if (!postData["F_EnabledMark"]) postData["F_EnabledMark"] = false;
postData.listData = JSON.stringify(cachedata);
common.submitForm({
url: '/SystemOrganize/DataPrivilegeRule/SubmitForm?keyValue=' + keyValue,
param: postData,
success: function () {
common.reloadIframe("/SystemOrganize/DataPrivilegeRule/Index", 'data-search-btn');
}
})
return false;
});
});
</script>
<body>
<div class="layuimini-container">
<div class="layuimini-main">
<fieldset class="table-search-fieldset">
<div class="layui-form layuimini-form" lay-filter="adminform">
<div class="layui-form-item">
<div class="layui-col-md4 layui-hide">
<label class="layui-form-label required">模块编号</label>
<div class="layui-input-block">
<select id="F_ModuleId" name="F_ModuleId" lay-filter="F_ModuleId" lay-verify="required" lay-search>
<option value="">请选择</option>
</select>
</div>
</div>
<div class="layui-col-md4 layui-hide">
<label class="layui-form-label required">排序</label>
<div class="layui-input-block">
<input type="number" pattern="[0-9]*" id="F_SortCode" name="F_SortCode" lay-verify="required|number" oninput="if(value.length>8)value=value.slice(0,8)" autocomplete="off" class="layui-input">
</div>
</div>
<div class="layui-col-md4 layui-hide">
<label class="layui-form-label">选项</label>
<div class="layui-input-block">
<input type="checkbox" name="F_EnabledMark" id="F_EnabledMark" checked="" value="true" title="有效标识">
</div>
</div>
</div>
<div class="layui-form-item text-right">
<button class="layui-btn site-demo-active" lay-submit id="submit" lay-filter="saveBtn">确认保存</button>
</div>
</div>
</fieldset>
<script type="text/html" id="toolbarDemo">
<div class="layui-btn-container" id="toolbar">
<button id="NF-add" authorize="yes" class="layui-btn layui-btn-sm" lay-event="add"><i class="layui-icon">&#xe654;</i>新增</button>
<button id="NF-edit" name="NF-edit" authorize="yes" class="layui-btn layui-btn-sm layui-btn-warm layui-hide" lay-event="edit"><i class="layui-icon">&#xe642;</i>修改</button>
<button id="NF-delete" name="NF-delete" authorize="yes" class="layui-btn layui-btn-sm layui-btn-danger layui-hide" lay-event="delete"> <i class="layui-icon">&#xe640;</i>删除</button>
</div>
</script>
<script type="text/html" id="currentTableBar">
<a id="NF-edit" authorize class="layui-btn layui-btn-xs layui-btn-warm" lay-event="edit">修改</a>
<a id="NF-delete" authorize class="layui-btn layui-btn-xs layui-btn-danger" lay-event="delete">删除</a>
</script>
<table class="layui-hide" id="currentTableId" lay-filter="currentTableFilter"></table>
</div>
</div>
</body>