layui.config({
base: basePath,
version: skyeyeVersion
}).extend({
window: 'js/winui.window'
}).define(['window', 'jquery', 'winui'], function (exports) {
winui.renderColor();
var index = parent.layer.getFrameIndex(window.name);
var $ = layui.$,
form = layui.form;
var selOption = getFileContent('tpl/template/select-option.tpl');
var className = GetUrlParam("className");
var id = GetUrlParam("id");
var _html = {
'color': `
`,
'operateOpenPage': `
新开页面
`,
};
var attrHtml = '';
AjaxPostUtil.request({url: reqBasePath + "queryAttrDefinitionList", params: {className: className}, type: 'json', method: "POST", callback: function (json) {
attrHtml = getDataUseHandlebars(`全部 {{#each rows}}{{name}} {{/each}}`, json);
}, async: false});
if (!isNull(id)) {
AjaxPostUtil.request({url: reqBasePath + "queryOperateById", params: {id: id}, type: 'json', method: 'GET', callback: function (json) {
$("#name").val(json.bean.name);
$("#authPointNum").val(json.bean.authPointNum);
$("#orderBy").val(json.bean.orderBy);
skyeyeClassEnumUtil.showEnumDataListByClassName("operatePosition", 'select', "position", json.bean.position, form);
skyeyeClassEnumUtil.showEnumDataListByClassName("eventType", 'select', "eventType", json.bean.eventType, form);
if (json.bean.position == 'actionBar') {
$('#positionChangeBox').html(_html['color']);
skyeyeClassEnumUtil.showEnumDataListByClassName("buttonColorType", 'select', "color", json.bean.color, form);
}
if (json.bean.eventType == 'ajax') {
var businessApi = json.bean.businessApi;
$('#eventTypeChangeBox').html(commonHtml['businessApi']);
$("#serviceStr").html(getDataUseHandlebars(selOption, {rows: serviceMap}));
$("#serviceStr").val(businessApi.serviceStr);
$("#api").val(businessApi.api);
skyeyeClassEnumUtil.showEnumDataListByClassName("httpMethodEnum", 'select', "method", businessApi.method, form);
loadParamsTable('apiParams');
initTableChooseUtil.deleteAllRow('apiParams');
$.each(businessApi.params, function(key, value) {
var params = {
"key": key,
"attrKey": value
};
initTableChooseUtil.resetData('apiParams', params);
});
} else {
var operateOpenPage = json.bean.operateOpenPage;
$('#eventTypeChangeBox').html(_html['operateOpenPage']);
$('#typeChangeBox').html(commonHtml['customPageUrl']);
$("#openPageName").val(operateOpenPage.name);
var type = operateOpenPage.type ? "1" : "2";
$("input:radio[name=type][value=" + type + "]").attr("checked", true);
skyeyeClassEnumUtil.showEnumDataListByClassName("pageOpenType", 'radio', "openType", json.bean.openType, form);
if (type == 1) {
$('#typeChangeBox').html(commonHtml['customPageUrl']);
$("#pageUrl").val(operateOpenPage.pageUrl);
} else {
$('#typeChangeBox').html(commonHtml['dsFormPage']);
dsFormUtil.dsFormChooseMation = operateOpenPage.dsFormPage;
var serviceName = operateOpenPage.dsFormPage.serviceBeanCustom.serviceBean.name;
$("#pageUrl").val(serviceName + '【' + operateOpenPage.dsFormPage.name + '】');
}
loadParamsTable('pageParams');
initTableChooseUtil.deleteAllRow('pageParams');
$.each(operateOpenPage.params, function(key, value) {
var params = {
"key": key,
"attrKey": value
};
initTableChooseUtil.resetData('pageParams', params);
});
}
dsFormColumnUtil.init({
id: 'attrSymbolsDesignBox',
title: '按钮显示条件',
className: className
}, isNull(json.bean.showConditionList) ? [] : json.bean.showConditionList);
}, async: false});
} else {
dsFormColumnUtil.init({
id: 'attrSymbolsDesignBox',
title: '按钮显示条件',
className: className
});
skyeyeClassEnumUtil.showEnumDataListByClassName("operatePosition", 'select', "position", '', form);
skyeyeClassEnumUtil.showEnumDataListByClassName("eventType", 'select', "eventType", '', form);
}
form.on('select(position)', function(data) {
if (data.value == 'actionBar') {
// 操作栏
$('#positionChangeBox').html(_html['color']);
skyeyeClassEnumUtil.showEnumDataListByClassName("buttonColorType", 'select', "color", '', form);
} else {
$('#positionChangeBox').html('');
}
});
form.on('select(eventType)', function(data) {
if (isNull(data.value)) {
$('#eventTypeChangeBox').html('');
return false;
}
if (data.value == 'ajax') {
// 请求事件
$('#eventTypeChangeBox').html(commonHtml['businessApi']);
$("#serviceStr").html(getDataUseHandlebars(selOption, {rows: serviceMap}));
skyeyeClassEnumUtil.showEnumDataListByClassName("httpMethodEnum", 'select', "method", '', form);
loadParamsTable('apiParams');
} else {
// 新开页面
$('#eventTypeChangeBox').html(_html['operateOpenPage']);
$('#typeChangeBox').html(commonHtml['customPageUrl']);
skyeyeClassEnumUtil.showEnumDataListByClassName("pageOpenType", 'radio', "openType", '', form);
loadParamsTable('pageParams');
}
form.render();
});
form.on('radio(type)', function (data) {
if (data.value == 1) {
$('#typeChangeBox').html(commonHtml['customPageUrl']);
} else {
$('#typeChangeBox').html(commonHtml['dsFormPage']);
}
});
function loadParamsTable(id) {
initTableChooseUtil.initTable({
id: id,
cols: [
{id: 'key', title: '入参Key', formType: 'input', width: '150', verify: 'required'},
{id: 'attrKey', title: '属性', formType: 'select', width: '200', verify: 'required', modelHtml: attrHtml}
],
deleteRowCallback: function (trcusid) {
},
addRowCallback: function (trcusid) {
},
form: form
});
}
matchingLanguage();
form.render();
form.on('submit(formWriteBean)', function (data) {
if (winui.verifyForm(data.elem)) {
var params = {
className: className,
name: $("#name").val(),
position: $("#position").val(),
color: isNull($("#color").val()) ? '' : $("#color").val(),
authPointNum: $("#authPointNum").val(),
eventType: $("#eventType").val(),
orderBy: $("#orderBy").val(),
showConditionList: JSON.stringify(dsFormColumnUtil.tableDataList),
id: isNull(id) ? '' : id
};
if (params.eventType == 'ajax') {
var dataList = initTableChooseUtil.getDataList('apiParams').dataList;
var apiParams = {};
$.each(dataList, function (i, item) {
apiParams[item.key] = item.attrKey;
});
var businessApi = {
serviceStr: $("#serviceStr").val(),
api: $("#api").val(),
method: $("#method").val(),
params: apiParams
};
params.businessApi = JSON.stringify(businessApi);
} else {
var dataList = initTableChooseUtil.getDataList('pageParams').dataList;
var pageParams = {};
$.each(dataList, function (i, item) {
pageParams[item.key] = item.attrKey;
});
var type = $("input[name='type']:checked").val();
var operateOpenPage = {
name: $("#openPageName").val(),
type: type == 1 ? true : false,
pageUrl: type == 1 ? $("#pageUrl").val() : dsFormUtil.dsFormChooseMation.id,
params: pageParams
};
params.operateOpenPage = JSON.stringify(operateOpenPage);
params.openType = dataShowType.getData('openType');
}
AjaxPostUtil.request({url: reqBasePath + "writeOperate", params: params, type: 'json', method: 'POST', callback: function (json) {
parent.layer.close(index);
parent.refreshCode = '0';
}});
}
return false;
});
$("body").on("click", ".chooseBtn", function() {
dsFormUtil.openDsFormPageChoosePage(function (dsFormChoose) {
var serviceName = dsFormChoose.serviceBeanCustom.serviceBean.name;
$("#pageUrl").val(serviceName + '【' + dsFormChoose.name + '】');
});
});
$("body").on("click", "#cancle", function() {
parent.layer.close(index);
});
});