You cannot select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.

1599 lines
74 KiB
Plaintext

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.

<!DOCTYPE HTML PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<meta charset="utf-8" />
<meta http-equiv="X-UA-Compatible" content="IE=edge,chrome=1" />
<title>ccform正在加载请稍候...</title>
<link href="../../../DataUser/Style/ccbpm.css" rel="stylesheet" type="text/css" />
<!--<link href="../../Admin/CSS/FoolFrmBody.css" rel="stylesheet" />-->
<script type="text/javascript" src="../../Scripts/jquery-1.11.0.min.js"></script>
<link href="../fonts/font-icons.min.css" rel="Stylesheet" />
<link href="../../Style/skin/adminfont/iconfont.css" rel="stylesheet" />
<!-- 位置必须放在 jquery 之后. -->
<script src="../../Scripts/QueryString.js" type="text/javascript"></script>
<script src="../../Scripts/config.js" type="text/javascript"></script>
<script src="../Gener.js" type="text/javascript"></script>
<script src="../JScript.js" type="text/javascript"></script>
<script src="../../Admin/CCFlowEnum.js" type="text/javascript"></script>
<script src="../../CCForm/FrmEnd.js" type="text/javascript"></script>
<link href="../../Scripts/layui/layui/css/layui.css" rel="stylesheet" />
<!--<link href="../../Scripts/layui/style/admin.css" rel="stylesheet" />-->
<script src="../../Scripts/layui/layui/layui.js" type="text/javascript"></script>
<script src="../../Scripts/layui/LayuiDialog.js" type="text/javascript"></script>
<script src="EnOnly.js" type="text/javascript"></script>
<script src="../../../DataUser/JSLibData/SearchAndEn.js"></script>
<style type="text/css">
.layui-form-label {
min-width: 80px;
width: auto;
text-align: right
}
.layui-form-label {
float: right !important;
}
.input-icon {
position: absolute;
left: calc(100% - 40px);
top: 1px;
width: 38px;
line-height: 36px;
text-align: center;
color: #d2d2d2;
}
.ccdate {
padding-right: 40px;
}
input[type=text], input[type=password], select {
border-radius: 5px;
border: thin solid #CCCCCC;
margin: 1px 1px;
height: 38px;
}
.layui-input-suffix {
width: 60px;
padding: 10px 15px 11px 15px;
line-height: 38px;
line-height: 20px;
border-width: 1px;
border-style: solid;
border-radius: 0 2px 2px 0px;
text-align: center;
background-color: none;
overflow: hidden;
white-space: nowrap;
text-overflow: ellipsis;
box-sizing: border-box;
border-color: #eee;
display: inline;
border-left-color: none;
border-left: none;
}
.layui-input-prefix {
width: 60px;
padding: 10px 15px 11px 15px;
line-height: 38px;
line-height: 20px;
border-width: 1px;
border-style: solid;
border-radius: 0 2px 2px 0px;
text-align: center;
background-color: none;
overflow: hidden;
white-space: nowrap;
text-overflow: ellipsis;
box-sizing: border-box;
border-color: #eee;
display: inline;
border-right-color: none;
border-right: none;
}
</style>
<!--杨玉慧 -->
<script type="text/javascript">
var frmData;
var mapData;
var mainData;
var dtM; //方法集合.
var dtl;//从表集合
var isReadonly = GetQueryString("isReadonly");
var pkVal = "";
var webUser = new WebUser();
var isSameEnName = true;//EnOnly页面和En的EnName是否相同
var cfg = null;
var drillFields = "";
$(function () {
pkVal = GetPKVal();
var enName = GetQueryString("EnName");
//新增时En.htm页面隐藏
if (window.parent) {
var url = window.parent.location.href;
var pEnName = getQueryStringByNameFromUrl(url, "EnName");
if (pEnName != enName)
isSameEnName = false;
}
cfg = new Entity("BP.Sys.EnCfg");
cfg.No = enName + "s";
cfg.RetrieveFromDBSources();
drillFields = cfg.Drill || "";
drillFields = drillFields.replace(/@/g, ",");
drillFields += ",";
if (isSameEnName == true && window.parent && window.parent.vm != undefined && pkVal == null) {
window.parent.vm.sideBarOpen = false;
$(".ocside", window.parent.document).remove();
}
var httpHandler = new HttpHandler("BP.WF.HttpHandler.WF_CommEntity");
httpHandler.AddUrlData();
if (pkVal != null) {
httpHandler.AddPara("PKVal", pkVal);
}
var data = httpHandler.DoMethodReturnString("EntityOnly_Init");
if (data.indexOf('err@') == 0) {
$("#CCFormTabs").html(data);
return;
}
//解析json.
frmData = JSON.parse(data);
mapData = frmData["Sys_MapData"][0];
mapData = new Entity("BP.Sys.MapData", mapData); //把他转化成entity.
mainData = frmData["MainTable"][0];
dtM = frmData["dtM"];
dtl = frmData["Dtl"] || [];
document.title = mapData.Name;
//获取没有解析的外部数据源
var uiBindKeys = frmData["UIBindKey"];
if (uiBindKeys != null && uiBindKeys.length != 0) {
//获取外部数据源 handler/JavaScript
var operdata;
for (var i = 0; i < uiBindKeys.length; i++) {
var sfTable = new Entity("BP.Sys.SFTable", uiBindKeys[i].No);
var srcType = sfTable.SrcType;
if (srcType != null && srcType != "") {
//Handler 获取外部数据源
if (srcType == 5) {
var selectStatement = sfTable.SelectStatement;
if (plant == 'CCFlow')
selectStatement = basePath + "/DataUser/SFTableHandler.ashx" + selectStatement;
else
selectStatement = basePath + "/DataUser/SFTableHandler/" + selectStatement;
operdata = DBAccess.RunDBSrc(selectStatement, 1);
}
//JavaScript获取外部数据源
if (srcType == 6) {
operdata = DBAccess.RunDBSrc(sfTable.FK_Val, 2);
}
frmData[uiBindKeys[i].No] = operdata;
}
}
}
InitToolbar(); //初始工具栏.
//生成傻瓜表单.
GenerFoolFrm(mapData, frmData);
//解析富文本
if ($(".rich").length > 0) {
var images_upload_url = "";
var handlerUrl = "";
if (plant == "CCFlow")
handlerUrl = basePath + "/WF/Comm/Handler.ashx";
else
handlerUrl = basePath + "/WF/Comm/Sys/ProcessRequest.do";
images_upload_url = handlerUrl + '?DoType=HttpHandler&DoMethod=RichUploadFile';
images_upload_url += '&HttpHandlerName=BP.WF.HttpHandler.WF_Comm_Sys&FrmID=' + GetQueryString("EnName") + "&PKVal=" + GetQueryString("PKVal");
layui.extend({
tinymce: '../../Scripts/layui/ext/tinymce/tinymce'
}).use('tinymce', function () {
var tinymce = layui.tinymce;
$(".rich").each(function (i, item) {
var id = item.id;
var h = item.style.height.replace("px", "");
if (h < 400) h = 400;
tinymce.render({
elem: "#" + id
, height: h
, images_upload_url: images_upload_url
, paste_data_images: true
//取消默认提示
, plugins: ['advlist', 'saveBtn', 'lists', 'image', 'charmap', 'searchreplace', 'visualblocks',
'table', 'wordcount',
],
});
})
});
}
if ($("ul.layui-tab-title li").length > 1) {
var li = $("<div style='float:right !important;z-index:999; top:0px' class='cs-btn-group'></div>");
li.append($("#Btns").children());
$("ul.layui-tab-title").append(li);
//$("#Btns").parent().remove();
$("#Btns").remove();
} else {
if (isHiddenBtn == true)
$("#Btns").css("display", "none");
}
})
///设置.
function Setting() {
var width = window.innerWidth * 4 / 5;
var url = GetLocalWFPreHref() + "/WF/Comm/RefFunc/Setting.htm?EnName=" + GetQueryString("EnName") + "&PKVal=" + GetQueryString("PKVal");
OpenLayuiDialog(url, "设置", width, 90, "auto", true);
}
//设置按钮
var isHiddenBtn = true;
function InitToolbar() {
var isTree = GetQueryString("isTree");
var isReadonly = GetQueryString("isReadonly");
if (isTree == "1") {
if (isReadonly != "1") {
isHiddenBtn = false;
$("#Btn_Save").show();
}
} else {
if (isReadonly != "1") {
//权限控制.
if (mapData.GetPara("IsInsert") == 1 && pkVal != null) {
isHiddenBtn = false;
$("#Btn_New").show();
}
if (mapData.GetPara("IsUpdate") == 1) {
isHiddenBtn = false;
$("#Btn_Save").show();
}
if (mapData.GetPara("IsDelete") == 1 && pkVal != null) {
if (pkVal != null) {
isHiddenBtn = false;
$("#Btn_Delete").show();
}
}
}
}
if (webUser.No == 'admin') {
isHiddenBtn = false;
$("#Btn_Setting").show();
}
var _html = "";
var btnLab1 = cfg.EnBtnLab1;
if (btnLab1 != null && btnLab1 != undefined && btnLab1 != "")
_html += "<button type='button' class='layui-btn layui-btn-primary layui-border-green layui-btn-sm' id='BtnLab1' onclick='executeFunction(1)'>" + btnLab1 + "</button>";
var btnLab2 = cfg.EnBtnLab2;
if (btnLab2 != null && btnLab2 != undefined && btnLab2 != "")
_html += "<button type='button' class='layui-btn layui-btn-primary layui-border-green layui-btn-sm' id='BtnLab2' onclick='executeFunction(2)'>" + btnLab2 + "</button>";
if (_html != "") {
$("#Btns").append(_html);
}
}
function GenerFoolFrm(mapData, frmData) {
frmData = frmData;
var Sys_GroupFields = frmData.Sys_GroupField;
var mapAtrrs = frmData.Sys_MapAttr;
var webUser = new WebUser();
//用户设置
var mypk = webUser.No + "_Fields_HS_" + GetQueryString("EnName");
var userRegedit = new Entity("BP.Sys.UserRegedit");
userRegedit.SetPKVal(mypk);
var count = userRegedit.RetrieveFromDBSources();
var tabIndex = GetQueryString("tabIndex");
tabIndex = tabIndex == null || tabIndex == undefined ? 0 : tabIndex;
var tableWidth = 800;
var html = "";
html += "<ul class='layui-tab-title'>";
for (var i = 0; i < Sys_GroupFields.length; i++) {
var gf = Sys_GroupFields[i];
if (count != 0 && userRegedit.MVals.indexOf("," + gf.OID + ",") != -1 && gf.OID != "基础信息")//去除基本信息
continue;
var lab = gf.Lab;
if (lab.indexOf(',') != -1) {
lab = lab.substring(0, lab.indexOf(','));
}
if (Sys_GroupFields.length == 1) {
html += "<li class='layui-this' id='" + gf.OID + "'>" + lab + "</li>";
} else {
if (tabIndex == i) {
html += "<li class='layui-this' id='" + gf.OID + "'>" + lab + "</li>";
}
else {
html += "<li id='" + gf.OID + "'>" + lab + "</li>";
}
}
}
html += "</ul>";
html += "<div class='layui-tab-content'style='width:95%'>";
for (var i = 0; i < Sys_GroupFields.length; i++) {
var gf = Sys_GroupFields[i];
if (count != 0 && userRegedit.MVals.indexOf("," + gf.OID + ",") != -1 && gf.OID != "基础信息")//去除基本信息
continue;
if (Sys_GroupFields.length == 1) {
html += "<div class='layui-tab-item layui-show'>";
} else {
if (tabIndex != null && tabIndex != undefined && tabIndex == i) {
html += "<div class='layui-tab-item layui-show'>";
}
else {
html += "<div class='layui-tab-item'>";
}
}
html += InitMapAttr(frmData.Sys_MapAttr, gf.OID, userRegedit);
html += "</div>";
}
html += "</div>";
//加入隐藏控件.
for (var i = 0; i < mapAtrrs.length; i++) {
var attr = mapAtrrs[i];
if (attr.UIVisible == 0) {
var defval = ConvertDefVal(attr);
html += "<input type='hidden' id='TB_" + attr.KeyOfEn + "' name='TB_" + attr.KeyOfEn + "' value='" + defval + "' />";
}
}
$('#CCFormTabs').html("").append(html);
layui.form.render();
$(".layui-form-label").css("width", "");
if (Sys_GroupFields.length == 1)
$(".layui-tab-title").css("display", "none");
//原有的。
//为 DISABLED 的 TEXTAREA 加TITLE
var disabledTextAreas = $('#divCCForm textarea:disabled');
$.each(disabledTextAreas, function (i, obj) {
$(obj).attr('title', $(obj).val());
})
//根据NAME 设置ID的值
var inputs = $('[name]');
$.each(inputs, function (i, obj) {
if ($(obj).attr("id") == undefined || $(obj).attr("id") == '') {
$(obj).attr("id", $(obj).attr("name"));
}
})
//设置默认值
var mainDataStr = JSON.stringify(frmData.MainTable[0]);
for (var j = 0; j < frmData.Sys_MapAttr.length; j++) {
var mapAttr = frmData.Sys_MapAttr[j];
if (mapAttr.UIIsEnable == "0" || isReadonly == "1") {
$('#TB_' + mapAttr.KeyOfEn).attr('disabled', true);
$('#DDL_' + mapAttr.KeyOfEn).attr('disabled', true);
$('#CB_' + mapAttr.KeyOfEn).attr('disabled', true);
}
//添加 label
//如果是整行的需要添加 style='clear:both'.
var defValue = ConvertDefVal(mapAttr);
//if (frmData.MainTable[0].DefValType == 0 && defValue == "10002")
// defValue = "";
if ($('#TB_' + mapAttr.KeyOfEn).length == 1) {
if (defValue == null || defValue == "null")
continue;
$('#TB_' + mapAttr.KeyOfEn).val(defValue);
if (mapAttr.KeyOfEn.toLowerCase() == "icon") {
$("#menuIconIcon").attr("class", defValue);
}
if (drillFields.indexOf(mapAttr.KeyOfEn + ",") != -1 && typeof Drill == "function") {
$('#TB_' + mapAttr.KeyOfEn).hide();
var _html = cceval("Drill('" + mapAttr.KeyOfEn + "','" + defValue + "','" + mainDataStr + "')");
_html = "<div class='layui-input'style='padding:10px 10px;border:none'>" + _html + "</div>";
$('#TB_' + mapAttr.KeyOfEn).after(_html);
}
}
if ($('#DDL_' + mapAttr.KeyOfEn).length == 1) {
var uiBindKey = mapAttr.UIBindKey;
if (uiBindKey.toLowerCase().indexOf("select") == -1 && uiBindKey.indexOf("Dept") != -1 && uiBindKey.indexOf(".") != -1) {
var pushData;
if (mapAttr.UIIsEnable == "1") {
var webUser = new WebUser();
var ens = new Entities(uiBindKey);
ens.RetrieveAll();
if (webUser.No == "admin")
pushData = findChildren(ens, "0");
else
pushData = findChildren(ens, webUser.FK_Dept);
} else {
pushData = [];
var selectText = frmData.MainTable[0][mapAttr.KeyOfEn + "Text"];
if (defValue == null)
defValue = "";
if (selectText == null || selectText == "") {
selectText = defValue;
}
pushData.push({ "id": defValue, "text": selectText, "children": [] });
if ($("option[value='" + defValue + "']", '#DDL_' + mapAttr.KeyOfEn).length == 0 && defValue != "")
$('#DDL_' + mapAttr.KeyOfEn).append("<option value='" + defValue + "'>" + selectText + "</option>");
}
if (drillFields.indexOf(mapAttr.KeyOfEn + ",") != -1 && typeof Drill == "function") {
$('#DDL_' + mapAttr.KeyOfEn).hide();
var _html = cceval("Drill('" + mapAttr.KeyOfEn + "','" + defValue + "','" + mainDataStr + "')");
_html = "<div class='layui-input'style='padding:10px 10px;border:none'>" + _html + "</div>";
$('#DDL_' + mapAttr.KeyOfEn).after(_html);
}
} else {
// 判断下拉框是否有对应option, 若没有则追加
if ($("option[value='" + defValue + "']", '#DDL_' + mapAttr.KeyOfEn).length == 0) {
var mainTable = frmData.MainTable[0];
var selectText = mainTable[mapAttr.KeyOfEn + "Text"];
if (selectText == null || selectText == "")
selectText = defValue;
if (defValue == null || defValue == "") {
} else {
$('#DDL_' + mapAttr.KeyOfEn).append("<option value='" + defValue + "'>" + selectText + "</option>");
}
} else {
//设置选择的值
$('#DDL_' + mapAttr.KeyOfEn).val(defValue);
}
if (drillFields.indexOf(mapAttr.KeyOfEn + ",") != -1 && typeof Drill == "function") {
$('#DDL_' + mapAttr.KeyOfEn).hide();
var _html = cceval("Drill('" + mapAttr.KeyOfEn + "','" + defValue + "','" + mainDataStr + "')");
_html = "<div class='layui-input'style='padding:10px 10px;border:none'>" + _html + "</div>";
$('#DDL_' + mapAttr.KeyOfEn).after(_html);
}
}
if (mapAttr.LGType == "0" && mapAttr.MyDataType == "1" && mapAttr.UIContralType == "1") {
if ($("#TB_" + mapAttr.KeyOfEn + "Text").length == 1) {
if (defValue == "")
$("#TB_" + mapAttr.KeyOfEn + "Text").val($('#DDL_' + mapAttr.KeyOfEn + " option:first").text());
else
$("#TB_" + mapAttr.KeyOfEn + "Text").val($('#DDL_' + mapAttr.KeyOfEn).find("option:selected").text());
}
}
$('#DDL_' + mapAttr.KeyOfEn).val(defValue);
}
if ($('#CB_' + mapAttr.KeyOfEn).length == 1) {
if (defValue == "1")
$('#CB_' + mapAttr.KeyOfEn).attr("checked", true);
else
$('#CB_' + mapAttr.KeyOfEn).attr("checked", false);
if (drillFields.indexOf(mapAttr.KeyOfEn + ",") != -1 && typeof Drill == "function") {
$('#CB_' + mapAttr.KeyOfEn).hide();
var _html = cceval("Drill('" + mapAttr.KeyOfEn + "','" + defValue + "','" + mainDataStr + "')");
_html = "<div class='layui-input'style='padding:10px 10px;border:none'>" + _html + "</div>";
$('#CB_' + mapAttr.KeyOfEn).after(_html);
}
}
}
if (pkVal != null && pkVal != 0) {
//获取当前主键字段是否可以编辑?
$("#TB_No").attr("disabled", true);
$("#TB_MyPK").attr("disabled", 'disabled');
$("#TB_NodeID").attr("disabled", 'disabled');
$("#TB_WorkID").attr("disabled", 'disabled');
$("#TB_OID").attr("disabled", 'disabled');
}
//获取
var refKey = GetQueryString("RefKey");
var refValue = GetQueryString("RefVal");
if (refKey && refValue) {
$("#TB_" + refKey).val(refValue);
$("#DDL_" + refKey).val(refValue);
}
var html = "-";
var fileName = $("#TB_MyFileName").val();
if (fileName != null && fileName != "" && fileName != undefined && fileName != "null") {
html = "<a href='#' onclick='downLoadFile()' target='_self'>" + $("#TB_MyFileName").val() + "." + $("#TB_MyFileExt").val() + "</a>";
}
$("#FileInfo").html(html);
layui.form.render();
//设置扩展
AfterBindEn_DealMapExt(frmData);
$.each($(".ccdate"), function (i, item) {
var format = $(item).attr("data-info");
var type = $(item).attr("data-type");
if (format.indexOf("HH") != -1) {
layui.laydate.render({
elem: '#' + item.id,
format: $(item).attr("data-info"), //可任意组合
type: type,
trigger: 'click',
ready: function (date) {
var now = new Date();
var mm = "";
if (now.getMinutes() < 10)
mm = "0" + now.getMinutes();
else
mm = now.getMinutes();
var ss = "";
if (now.getSeconds() < 10)
ss = "0" + now.getSeconds();
else
ss = now.getSeconds();
this.dateTime.hours = now.getHours();
this.dateTime.minutes = mm;
this.dateTime.seconds = ss;
},
change: function (value, date, endDate) {
$('.laydate-btns-confirm').click();
},
done: function (value, date, endDate) {
var data = $(this.elem).data();
$(this.elem).val(value);
if (data && data.ReqDay != null && data.ReqDay != undefined)
ReqDays(data.ReqDay);
}
});
} else {
layui.laydate.render({
elem: '#' + item.id,
format: $(item).attr("data-info"), //可任意组合
type: type,
done: function (value, date, endDate) {
var data = $(this.elem).data();
$(this.elem).val(value);
if (data && data.ReqDay != null && data.ReqDay != undefined)
ReqDays(data.ReqDay);
}
});
}
})
}
function downLoadFile() {
if (plant == "CCFlow")
SetHref(basePath + '/WF/Comm/ProcessRequest?DoType=HttpHandler&HttpHandlerName=BP.WF.HttpHandler.WF_CommEntity&DoMethod=EntityFile_Load&DelPKVal=' + pkVal + '&EnsName=' + GetQueryString("EnName") + "s");
else {
var currentPath = GetHrefUrl();
var path = currentPath.substring(0, currentPath.indexOf('/WF') + 1);
Url = path + '/WF/Ath/EntityFileLoad.do?DelPKVal=' + pkVal + '&EnsName=' + GetQueryString("EnName") + "s";
SetHref(url);
}
}
var isHaveAddAth = false;
//解析表单字段 MapAttr.
function InitMapAttr(Sys_MapAttr, groupID, userRegedit) {
var html = "<div class='layui-row FoolFrmGroupBar' id='Group_" + groupID + "'>";
var isDropTR = true;
var isExitMyNum = false;
var fileDesc = "";
for (var i = 0; i < Sys_MapAttr.length; i++) {
var attr = Sys_MapAttr[i];
if (userRegedit != null && userRegedit != undefined && userRegedit.Vals.indexOf("," + attr.KeyOfEn) != -1)
continue;
if (attr.KeyOfEn == "MyFileNum") {
isExitMyNum = true;
continue;
}
if (attr.KeyOfEn == "MyFileName") {
fileDesc = attr.Name;
continue;
}
if (GetPara(attr.AtPara, "GroupName") != groupID || attr.UIVisible == 0)
continue;
var enable = attr.UIIsEnable == "1" ? "" : " ui-state-disabled";
var rm = null; //当前的方法.
for (var iRm = 0; iRm < dtM.length; iRm++) {
if (dtM[iRm].RefAttrKey == attr.KeyOfEn) {
rm = dtM[iRm];
}
}
//输出帮助连接.
var name = null;
var helpUrl = GetPara(attr.AtPara, "HelpUrl");
if (helpUrl == null || helpUrl == "" || helpUrl == "null") {
name = attr.Name;
}
else {
if (attr.MyDataType == 4) {
if (helpUrl.indexOf('javascr') == 0)
name = "<a href=\"" + helpUrl + "\" ><img src='../../Img/Help.png' style='text-align:right' /><i class='iconfont icon-iconfonticon4'></i></a>";
else
name = "<a href=\"" + helpUrl + "\" target=_blank ><img src='../../Img/Help.png' style='text-align:right' /><i class='iconfont icon-iconfonticon4'></i></a>";
} else {
if (helpUrl.indexOf('javascr') == 0)
name = "<a href=\"" + helpUrl + "\" >" + attr.Name + "<i class='iconfont icon-iconfonticon4'></i></a>";
else
name = "<a href=\"" + helpUrl + "\" target=_blank >" + attr.Name + "<i class='iconfont icon-iconfonticon4'></i></a>";
}
}
var lab = "";
if (attr.UIContralType == 0)
lab = "<label for='TB_" + attr.KeyOfEn + "' class='layui-form-label " + (attr.UIIsInput == 1 ? "mustInput" : "") + "'>" + name + "</label>";
if (attr.MyDataType == 4)
lab = "<label for='CB_" + attr.KeyOfEn + "' class='layui-form-label " + (attr.UIIsInput == 1 ? "mustInput" : "") + "'>" + name + "</label>";
if (attr.UIContralType == 1)
lab = "<label for='DDL_" + attr.KeyOfEn + "' class='layui-form-label " + (attr.UIIsInput == 1 ? "mustInput" : "") + "'>" + name + "</label>";
if (attr.UIIsInput == 1 && attr.UIIsEnable == 1) {
lab += " <span style='color:red' class='mustInput' data-keyofen='" + attr.KeyOfEn + "'>*</span>";
}
//大文本
if (attr.UIHeight >= 10) {
if (attr.TextModel == 3 || attr.ColSpan == 4) {
if (isDropTR == false) {
html += "</div>";
}
isDropTR = true;
html += "<div class='layui-row FoolFrmFieldRow'style=''>";
html += "<div class='layui-col-md12 layui-col-xs12 FoolFrmFieldLabel'style='width: 16.66666667%;'>" + lab + "</div>";
html += "</div>";
html += "<div class='layui-row FoolFrmFieldRow'>";
html += "<div class='layui-col-md12 layui-col-xs12 FoolFrmFieldInput' style='padding-left:calc(16.6% - 10px)'>";
html += InitMapAttrOfCtrl(attr);
html += "</div>";
html += "</div>";
continue;
}
}
//线性展示并且colspan=3
if ((attr.ColSpan == 3 || attr.ColSpan == 4) && attr.UIHeight <= 40) {
if (isDropTR == false) {
html += "</div>";
}
isDropTR = true;
html += "<div class='layui-row FoolFrmFieldRow'>";
if (attr.UIContralType == 2) {
html += "<div class='layui-col-md2 layui-col-xs2 FoolFrmFieldLabel'><label class='layui-form-label'></label></div>";
html += "<div class='layui-col-md10 layui-col-xs10 FoolFrmFieldInput'>";
html += InitMapAttrOfCtrl(attr);
html += "</div>";
} else {
html += "<div class='layui-col-md2 layui-col-xs2 FoolFrmFieldLabel'>" + lab + "</div>";
html += "<div class='layui-col-md10 layui-col-xs10 FoolFrmFieldInput'>";
html += InitMapAttrOfCtrl(attr);
html += "</div>";
}
html += "</div>";
if (rm != null) {
html += "<div class='layui-row FoolFrmFieldRow'>";
html += "<div class='layui-col-md2 layui-col-xs2 FoolFrmFieldLabel'><label class='layui-form-label'></label></div>";
html += "<div class='layui-col-md10 layui-col-xs10 FoolFrmFieldInput'>";
html += GenerRM(rm);
html += "</div>";
html += "</div>";
isDropTR = true;
}
continue;
}
//线性展示并且colspan=4
if ((attr.ColSpan == 4 || attr.ColSpan == 3) && attr.UIHeight > 40) {
if (isDropTR == false) {
html += "</div>";
}
isDropTR = true;
html += "<div class='layui-row FoolFrmFieldRow' style='width: 16.66666667%;'>";
html += "<div class='layui-col-md12 layui-col-xs12 FoolFrmFieldLabel'>" + lab + "</div>";
html += "</div>";
html += "<div class='layui-row FoolFrmFieldRow'>";
html += "<div class='layui-col-md12 layui-col-xs12 FoolFrmFieldInput' style='padding-left:calc(16.6% - 10px)'>";
html += InitMapAttrOfCtrl(attr);
html += "</div>";
html += "</div>";
if (rm != null) {
html += "<div class='layui-row FoolFrmFieldRow'>";
html += "<div class='layui-col-md2 layui-col-xs2 FoolFrmFieldLabel'><label class='layui-form-label'></label></div>";
html += "<div class='layui-col-md10 layui-col-xs10 FoolFrmFieldInput'>";
html += GenerRM(rm);
html += "</div>";
html += "</div>";
isDropTR = true;
}
continue;
}
if (isDropTR == true) {
html += "<div class='layui-row FoolFrmFieldRow'>";
if (attr.UIContralType == 2) {
html += "<div class='layui-col-md2 layui-col-xs2 FoolFrmFieldLabel'><label class='layui-form-label'></label></div>";
html += "<div class='layui-col-md4 layui-col-xs4 FoolFrmFieldInput'>";
html += InitMapAttrOfCtrl(attr);
html += "</div>";
} else {
html += "<div class='layui-col-md2 layui-col-xs2 FoolFrmFieldLabel'>" + lab + "</div>";
html += "<div class='layui-col-md4 layui-col-xs4 FoolFrmFieldInput'>";
html += InitMapAttrOfCtrl(attr);
html += "</div>";
}
isDropTR = !isDropTR;
if (rm != null) {
html += "<div class='layui-col-md6 layui-col-xs6 FoolFrmFieldLabel'>";
html += GenerRM(rm);
html += "</div>";
html += "</div>";
isDropTR = true;
}
continue;
}
if (isDropTR == false) {
if (attr.UIContralType == 2) {
html += "<div class='layui-col-md2 layui-col-xs2 FoolFrmFieldLabel'><label class='layui-form-label'></label></div>";
html += "<div class='layui-col-md4 layui-col-xs4 FoolFrmFieldInput'>";
html += InitMapAttrOfCtrl(attr);
html += "</div>";
} else {
html += "<div class='layui-col-md2 layui-col-xs2 FoolFrmFieldLabel'>" + lab + "</div>";
html += "<div class='layui-col-md4 layui-col-xs4 FoolFrmFieldInput'>";
html += InitMapAttrOfCtrl(attr);
html += "</div>";
}
//html += "</tr>";
//isDropTR = !isDropTR;
if (rm != null) {
html += "<div class='layui-col-md6 layui-col-xs6 FoolFrmFieldLabel'>";
html += GenerRM(rm);
html += "</div>";
html += "</div>";
//html += "<div class='layui-row FoolFrmFieldRow'>";
isDropTR = true;;
} else {
html += "</div>";
isDropTR = !isDropTR;
}
continue;
}
}
if (isDropTR == false)
html += "</div>";
//如果MapData中具有文件上传的权限解析设置 0 无 1 单附件上传 2 多附件上传
var entityAthType = mapData.GetPara("BPEntityAthType");
//单附件上传
if (entityAthType == 1 && isHaveAddAth == false) {
isHaveAddAth = true;
html += "<div class='layui-row FoolFrmFieldRow'>";
if (fileDesc == "")
html += "<div class='layui-col-md2 layui-col-xs2 FoolFrmFieldLabel'>附件上传</div>";
else
html += "<div class='layui-col-md2 layui-col-xs2 FoolFrmFieldLabel'>" + fileDesc + "</div>";
html += "<div class='layui-col-md10 layui-col-xs10 FoolFrmFieldInput'>";
html += "<input type='file' id='File_Upload' name='File_Upload' style='background-color:white;' onchange='changeFile(1)' />";
html += "已上传的文件:<span id='FileInfo'></span>";
html += "</div>";
html += "</div>";
}
//多附件上传
if (entityAthType == 2 && isHaveAddAth == false) {
isHaveAddAth = true;
//多附件的信息
var AttrFiles = frmData.AttrFiles;
var FileManagers = frmData.Sys_FileManager;
html += ShowMultiFile(AttrFiles, FileManagers, isExitMyNum);
if (isExitMyNum == true)
html += "<div style='display:none'><input type='file' id='File_Upload' name='File_Upload' style='background-color:white;dispaly:none' onchange='MultiUploadFile()' /></div>";
}
html += "</div>";
dtl.forEach(item => {
if (item.GroupName == groupID) {
//增加从表的信息
html += "<div class='layui-col-xs12' style='margin-left: 24px;'>";
html += "<div style='line-height: 40px;font-size: 16px;'>"+item.Title+"</div>";
html += "<iframe style='width:100%;height:350px' name='Dtl' ID='Frame_" + item.No + "' src='" + item.Url + "' frameborder=0 leftMargin='0' topMargin='0' scrolling=none></iframe>"
html += "</div>";
return;
}
})
return html;
}
function GenerRM(rm) {
var icon = rm.Icon;
if (rm.Icon == "" || rm.Icon == null) {
icon = "../../Img/dot.png";
} else if (rm.Icon.indexOf('http') != 0) {
icon = "../" + rm.Icon;
}
var img = "";
if (icon.toLowerCase().indexOf(".png") != -1 || icon.toLowerCase().indexOf(".jpg") != -1) {
img = "<img src='" + icon + "' border=0 style='width:16px;height:16px;' />";
}
else
img = "<i class='" + icon + "'></i>";
var html = "";
var W = document.body.clientWidth - 80;
var H = document.body.clientHeight - 140;
if (W > rm.W)
W = rm.W;
var event = "if(pkVal== null){ layer.alert(\"请保存后再执行操作\");return;}"
if (parseInt(rm.RefMethodType) == RefMethodType.LinkeWinOpen) {
html = "<a href='javascript:void(0)' onclick='" + event + " WinOpenFull(\"" + rm.Url + "\",\"" + rm.Title + "\")'>" + img + rm.Title + "</a>";
}
if (parseInt(rm.RefMethodType) == RefMethodType.Func) {
html = "<a href='javascript:void(0)' onclick='" + event + " OPenFun(\"" + rm.Url + "\",\"" + rm.Warning + "\",\"" + rm.Title + "\")'>" + img + rm.Title + "</a>";
}
if (parseInt(rm.RefMethodType) == RefMethodType.LinkModel) {
html = "<a href='javascript:void(0)' onclick='" + event + " OpenLayuiDialog(\"" + rm.Url + "\",\"" + rm.Title + "\",\"" + W + "\",80,\"auto\",true)'>" + img + rm.Title + "</a>";
}
if (parseInt(rm.RefMethodType) == RefMethodType.RightFrameOpen) {
// alert('没有实现@代国强, 需要根据窗口大小,弹出模态窗口..');
//var html = "<img src='" + icon + "' border=0 style='width:16px;height:16px;' /><a href='javascript:OpenIt(\"" + rm.Url + "\",\"" + rm.Title + "\",\"" + rm.W + "\",\"" + rm.H + "\")'>" + rm.Title + "</a>";
html = "<a href='javascript:" + event + " OpenUrlInRightFrame(this,\"" + rm.Url + "\")'>" + img + rm.Title + "</a>";
}
return html;
}
function OPenFun(url, warning, title) {
warning = warning.replace(/,\s+/g, ",");
warning = warning.replace(/\s+/g, "\r\n");
layer.confirm(warning, function (index) {
layer.close(index);
OpenLayuiDialog(url, title, 400, 80, "auto", false);
});
}
//在右侧框架中显示指定url的页面
function OpenUrlInRightFrame(ele, url) {
if (ele != null && ele != undefined) {
currShow = $(ele).parents('li').text(); //有回车符
$.each($(ele).parents('ul').children('li'), function (i, e) {
$(e).children('div').css('font-weight', $(e).text() == currShow ? 'bold' : 'normal');
});
if (url.indexOf('?') == -1)
url += '?1=1';
$('#rightFrame').empty();
$('#rightFrame').append('<iframe scrolling="auto" frameborder="0" src="' + url + '&s=' + Math.random() + '" style="width:100%;height:100%;"></iframe>');
}
}
function InitMapAttrOfCtrl(mapAttr) {
var ccsCtrl = mapAttr.CSSCtrl;
ccsCtrl = ccsCtrl == null || ccsCtrl == undefined || ccsCtrl == "0" ? "" : ccsCtrl;
//下拉框 外键和外部数据源
if ((mapAttr.LGType == "0" && (mapAttr.MyDataType == "1" || mapAttr.MyDataType == "2") && mapAttr.UIContralType == 1)
|| (mapAttr.LGType == "2" && mapAttr.MyDataType == "1")) {
var css = "";
if (mapAttr.LGType == "0")
css = "class='ddl-ext'";
return "<div id='DIV_" + mapAttr.KeyOfEn + "' class='ccbpm-input-group'><select id = 'DDL_" + mapAttr.KeyOfEn + "' name = 'DDL_" + mapAttr.KeyOfEn + "' " + css + " lay-filter='" + mapAttr.KeyOfEn + "' > " + InitDDLOperation(frmData, mapAttr, "") + "</select></div>";
}
//枚举 单选枚举和下拉框枚举
if (mapAttr.LGType == 1) {
var ses = frmData[mapAttr.KeyOfEn];
if (ses == undefined)
ses = frmData[mapAttr.UIBindKey];
if (ses == undefined) {
//枚举类型的.
if (mapAttr.LGType == 1) {
ses = frmData.Sys_Enum;
ses = $.grep(ses, function (value) {
return value.EnumKey == mapAttr.UIBindKey;
});
}
}
if (mapAttr.UIContralType == 1) {//下拉框显示
var operations = "";
$.each(ses, function (i, obj) {
operations += "<option value='" + obj.IntKey + "'>" + obj.Lab + "</option>";
});
return "<div id='DIV_" + mapAttr.KeyOfEn + "'><select " + ccsCtrl + " name='DDL_" + mapAttr.KeyOfEn + "' id='DDL_" + mapAttr.KeyOfEn + "' " + (mapAttr.UIIsEnable == 1 ? '' : 'disabled="disabled"') + " lay-filter='" + mapAttr.KeyOfEn + "' >" + operations + "</select></div>";
}
if (mapAttr.UIContralType == 2) {//复选框
var rbHtmls = "";
//显示方式,默认为 0=横向展示 3=横向..
var RBShowModel = 0;
if (mapAttr.AtPara.indexOf('@RBShowModel=3') >= 0)
RBShowModel = 3;
for (var i = 0; i < ses.length; i++) {
var se = ses[i];
var br = "";
if (RBShowModel == 0)
br = "<br>";
var checked = "";
//if (se.IntKey == mapAttr.DefVal)
// checked = " checked=true ";
rbHtmls += "<input " + ccsCtrl + " type=checkbox name='CB_" + mapAttr.KeyOfEn + "' id='CB_" + mapAttr.KeyOfEn + "_" + se.IntKey + "' value='" + se.IntKey + "' " + checked + " lay-filter='" + mapAttr.KeyOfEn + "' class='mcheckbox' value='" + se.IntKey + "' title='" + se.Lab + "'/>";
}
return "<div id='DIV_" + mapAttr.KeyOfEn + "'>" + rbHtmls + "</div>";
}
if (mapAttr.UIContralType == 3) {//单选按钮显示
var rbHtmls = "";
//显示方式,默认为 0=横向展示 3=横向..
var RBShowModel = 0;
if (mapAttr.AtPara.indexOf('@RBShowModel=3') >= 0)
RBShowModel = 3;
for (var i = 0; i < ses.length; i++) {
var se = ses[i];
var br = "";
if (RBShowModel == 0)
br = "<br>";
var checked = "";
if (se.IntKey == mapAttr.DefVal)
checked = " checked=true ";
rbHtmls += "<input " + ccsCtrl + " type=radio name='RB_" + mapAttr.KeyOfEn + "' id='RB_" + mapAttr.KeyOfEn + "_" + se.IntKey + "' value='" + se.IntKey + "' " + checked + " lay-filter='" + mapAttr.KeyOfEn + "' title='" + se.Lab + "'/>" + br;
}
return "<div id='DIV_" + mapAttr.KeyOfEn + "'>" + rbHtmls + "</div>";
}
}
if (mapAttr.LGType == 0) {
switch (parseInt(mapAttr.MyDataType)) {
case 1://普通文本
//富文本编辑器
if (mapAttr.TextModel == 3) {
if (mapAttr.UIIsEnable == "0" || isReadonly == true) {
//使用div展示
var defValue = ConvertDefVal(mapAttr);
defValue = defValue.replace(/white-space: nowrap;/g, "");
return "<div style='margin-bottom:5px;border: 1px solid #cacaca!important;min-height: 50px;padding: 5px;background-color: #f2f2f2;word-wrap: break-word;'>" + defValue + "</div>";
}
return "<textarea maxlength=" + mapAttr.MaxLen + " style='height:" + mapAttr.UIHeight + "px;width:100%;' id='TB_" + mapAttr.KeyOfEn + "' name='TB_" + mapAttr.KeyOfEn + "' class='rich'/>";
}
//判断是不是大块文本
if (mapAttr.IsSupperText == 1 || mapAttr.UIHeight > 40) {
return "<textarea class='layui-textarea' id='TB_" + mapAttr.KeyOfEn + "' name='TB_" + mapAttr.KeyOfEn + "' type='text' " + (mapAttr.UIIsEnable == 1 ? '' : ' disabled="disabled"') + "></textarea>"
}
var baseUrl = "../";
var currentURL = "";
if (currentURL.indexOf("AdminFrm.htm") != -1)
baseUrl = "../../../";
if (currentURL.indexOf("CCBill") != -1 || currentURL.indexOf("CCForm") != -1)
baseUrl = "../../";
if (mapAttr.IsSigan == "1" && mapAttr.UIIsEnable == 1 && isReadonly != 0) {
var html = "<input maxlength=" + mapAttr.MaxLen + " id='TB_" + mapAttr.KeyOfEn + "' name='TB_" + mapAttr.KeyOfEn + "' value='" + defValue + "' type=hidden />";
//是否签过
var sealData = new Entities("BP.Tools.WFSealDatas");
sealData.Retrieve("OID", pageData.OID, "FK_Node", GetQueryString("FK_Node"), "SealData", GetQueryString("UserNo"));
if (sealData.length > 0) {
eleHtml += "<img src='" + baseUrl + "DataUser/Siganture/" + defValue + ".jpg' alt='" + defValue + "' style='border:0px;width:100px;height:30px;' id='Img" + mapAttr.KeyOfEn + "' />" + html;
isSigantureChecked = true;
}
else {
eleHtml += "<img src='" + baseUrl + "DataUser/Siganture/siganture.jpg' ondblclick='figure_Template_Siganture(\"" + mapAttr.KeyOfEn + "\",\"" + defValue + "\")' style='border:0px;width:100px;height:30px;' id='Img" + mapAttr.KeyOfEn + "' />" + html;
}
return eleHtml;
}
//如果不可编辑,并且是图片名称
if (mapAttr.IsSigan == "1") {
var val = ConvertDefVal(frmData, mapAttr.DefVal, mapAttr.KeyOfEn);
var html = "<input maxlength=" + mapAttr.MaxLen + " id='TB_" + mapAttr.KeyOfEn + "' name='TB_" + mapAttr.KeyOfEn + "' value='" + val + "' type=hidden />";
eleHtml += "<img src='" + baseUrl + "DataUser/Siganture/" + val + ".jpg' alt='" + val + "' style='border:0px;width:100px;height:30px;' id='Img" + mapAttr.KeyOfEn + "' />" + html;
return eleHtml;
}
if (mapAttr.KeyOfEn.toLowerCase() == "icon") {
var _html = "<div id='DIV_" + mapAttr.KeyOfEn + "' class='ccbpm-input-group'>";
_html += "<span class='layui-input-prefix'><i id='menuIconIcon' class='icon-settings'></i></span>"
_html += "<input class='" + ccsCtrl + " layui-input' style='text-align:left;width:calc(100% - 120px)!important;display:inline' type='text' maxlength=" + mapAttr.MaxLen + " value='" + mapAttr.DefVal + "' name='TB_" + mapAttr.KeyOfEn + "' id='TB_" + mapAttr.KeyOfEn + "'placeholder='" + (mapAttr.Tip || '') + "' " + (mapAttr.UIIsEnable == 1 ? '' : ' disabled="disabled"') + "/>";
if (mapAttr.UIIsEnable == 1 && isReadonly != "1")
_html += "<span class='layui-input-suffix'><a id='menuIconButton' href='javascript:void(0)' class='' onclick='openIconWindow(\"" + mapAttr.KeyOfEn + "\")'><i class='layui-icon'>&#xe615;</i></a></span>";
_html += "</div>";
return _html;
}
return "<div id='DIV_" + mapAttr.KeyOfEn + "' class='ccbpm-input-group'> <input class='" + ccsCtrl + " layui-input' maxlength=" + mapAttr.MaxLen + " value='" + mapAttr.DefVal + "' name='TB_" + mapAttr.KeyOfEn + "' id='TB_" + mapAttr.KeyOfEn + "'placeholder='" + (mapAttr.Tip || '') + "' type='text' " + (mapAttr.UIIsEnable == 1 ? '' : ' disabled="disabled"') + " /></div>";
case 2://整数
var _html = "<div id = 'DIV_" + mapAttr.KeyOfEn + "' class='ccbpm-input-group' >";
_html += "<input class='" + ccsCtrl + " layui-input' value='0' style='text-align:right;padding-right:10px;' onkeyup=" + '"' + "valitationAfter(this, 'int');if(isNaN(value) || (value%1 !== 0))execCommand('undo')" + '"' + " onafterpaste=" + '"' + "valitationAfter(this, 'int');if(isNaN(value) || (value%1 !== 0))execCommand('undo')" + '"' + " maxlength=" + mapAttr.MaxLen / 2 + " type='text'" + enableAttr + " id='TB_" + mapAttr.KeyOfEn + "'placeholder='" + (mapAttr.Tip || '') + "'/>";
_html += "</div>";
return _html;
case 4: //复选框
var helpUrl = GetPara(mapAttr.AtPara, "HelpUrl");
if (helpUrl == null || helpUrl == "" || helpUrl == "null")
helpUrl = ""
if(helpUrl!="")
if (helpUrl.indexOf('javascr') == 0)
helpUrl = "<a href=\"" + helpUrl + "\" ><i class='iconfont icon-iconfonticon4'></i></a>";
else
helpUrl = "<a href=\"" + helpUrl + "\" target=_blank ><i class='iconfont icon-iconfonticon4'></i></a>";
if (mapAttr.UIIsEnable == 0) {
enableAttr = "disabled='disabled'";
} else {
enableAttr = "";
}
return "<div style='line-height:38px;margin-top:10px;' id='DIV_" + mapAttr.KeyOfEn + "'><label for='CB_" + mapAttr.KeyOfEn + "' ></label><input type='checkbox' name='CB_" + mapAttr.KeyOfEn + "' id='CB_" + mapAttr.KeyOfEn + "'" + (mapAttr.DefVal == 1 ? "checked = 'checked'" : "") + enableAttr + " lay-filter='" + mapAttr.KeyOfEn + "' lay-skin='primary' value='1' title='" + mapAttr.Name + "'>" + helpUrl+"</div>";
case 3://浮点
case 5://双精度
var _html = "<div id = 'DIV_" + mapAttr.KeyOfEn + "' class='ccbpm-input-group' >";
var attrdefVal = mapAttr.DefVal;
var bit;
if (attrdefVal != null && attrdefVal !== "" && attrdefVal.indexOf(".") >= 0)
bit = attrdefVal.substring(attrdefVal.indexOf(".") + 1).length;
else
bit = 2;
_html += "<input class='" + ccsCtrl + " layui-input' style='text-align:right;padding-right:10px;' value='0.00' onkeyup=" + '"' + "valitationAfter(this, 'float');if(isNaN(value)) execCommand('undo');limitLength(this," + bit + ");" + '"' + " onafterpaste=" + '"' + " valitationAfter(this, 'float');if(isNaN(value))execCommand('undo')" + '"' + " maxlength=" + mapAttr.MaxLen / 2 + " type='text' id='TB_" + mapAttr.KeyOfEn + "' placeholder='" + (mapAttr.Tip || '') + "'/>";
_html += "</div>";
return _html;
case 6://日期类型
case 7://时间类型
//生成中间的部分.
var enableAttr = '';
var frmDate = 0; //获取日期格式
if (mapAttr.MyDataType == 7)
frmDate = 1;
var dateFmt = '';
var dateType = "";
if (frmDate == 0) {
dateFmt = "yyyy-MM-dd";
dateType = "date"
} else if (frmDate == 1) {
dateFmt = "yyyy-MM-dd HH:mm";
dateType = "datetime";
} else if (frmDate == 2) {
dateFmt = "yyyy-MM-dd HH:mm:ss";
dateType = "datetime";
} else if (frmDate == 3) {
dateFmt = "yyyy-MM";
dateType = "month";
} else if (frmDate == 4) {
dateFmt = "HH:mm";
dateType = "time";
} else if (frmDate == 5) {
dateFmt = "HH:mm:ss";
dateType = "time";
} else if (frmDate == 6) {
dateFmt = "MM-dd";
dateType = "date";
}
else if (frmDate == 7) {
dateFmt = "yyyy";
dateType = "year";
}
if (mapAttr.UIIsEnable == 0)
enableAttr = "disabled='disabled' ";
return "<div id='DIV_" + mapAttr.KeyOfEn + "' class='ccbpm-input-group'><i class='input-icon layui-icon layui-icon-date'></i> <input class='" + ccsCtrl + " ccdate layui-input' data-info='" + dateFmt + "' data-type='" + dateType + "' maxlength=" + mapAttr.MaxLen + " value='" + mapAttr.DefVal + "' type='text' " + enableAttr + " name='TB_" + mapAttr.KeyOfEn + "' id='TB_" + mapAttr.KeyOfEn + "'/></div>";
case 8://金额
//获取DefVal,根据默认的小数点位数来限制能输入的最多小数位数
var _html = "<div id = 'DIV_" + mapAttr.KeyOfEn + "' class='ccbpm-input-group' >";
var attrdefVal = mapAttr.DefVal;
var bit;
if (attrdefVal != null && attrdefVal !== "" && attrdefVal.indexOf(".") >= 0)
bit = attrdefVal.substring(attrdefVal.indexOf(".") + 1).length;
else
bit = 2;
_html += "<input class='" + ccsCtrl + " layui-input' style='text-align:right;padding-right:10px;' onkeyup=" + '"' + "valitationAfter(this, 'money');limitLength(this," + bit + "); FormatMoney(this, " + bit + ", ',',0)" + '"' + " onafterpaste=" + '"' + "valitationAfter(this, 'money');if(isNaN(value))execCommand('undo');" + '"' + " onblur=" + '"' + "FormatMoney(this, " + bit + ", ',',1)" + '"' + " maxlength=" + mapAttr.MaxLen / 2 + " type='text' id='TB_" + mapAttr.KeyOfEn + "' value='0.00' placeholder='" + (mapAttr.Tip || '') + "'/>";
_html += "</div>";
return _html;
default:
layer.alert(mapAttr.Name + "的类型没有判断.");
break;
}
}
}
//填充默认数据
function ConvertDefVal(attr) {
var result = '';
//通过MAINTABLE返回的参数
for (var ele in frmData.MainTable[0]) {
if (attr.KeyOfEn == ele && frmData.MainTable[0] != '') {
result = frmData.MainTable[0][ele];
break;
}
}
//获取参数中的值
var pageParams = getQueryString();
$.each(pageParams, function (i, pageParam) {
if (pageParam.indexOf(attr.KeyOfEn) == 0) {
var pageParamArr = pageParam.split('=');
result = pageParamArr[1];
return false;
}
});
return result = unescape(result);
}
//初始化下拉列表框的OPERATION
function InitDDLOperation(flowData, mapAttr, defVal) {
var operations = "";
var data = flowData[mapAttr.KeyOfEn];
if (data == undefined)
data = flowData[mapAttr.UIBindKey];
if (data == undefined) {
//枚举类型的.
if (mapAttr.LGType == 1) {
var enums = flowData.Sys_Enum;
enums = $.grep(enums, function (value) {
return value.EnumKey == mapAttr.UIBindKey;
});
$.each(enums, function (i, obj) {
operations += "<option " + (obj.IntKey == mapAttr.DefVal ? " selected='selected' " : "") + " value='" + obj.IntKey + "'>" + obj.Lab + "</option>";
});
}
return operations;
}
$.each(data, function (i, obj) {
operations += "<option " + (obj.No == defVal ? " selected='selected' " : "") + " value='" + obj.No + "'>" + obj.Name + "</option>";
});
return operations;
}
function ChangeKeyOfEnText(obj, KeyOfEn) {
if ($("#TB_" + KeyOfEn + "Text").length == 1)
$("#TB_" + KeyOfEn + "Text").val($(obj).find("option:selected").text());
}
//新建.
function New() {
var enName = GetQueryString("EnName");
var fromName = GetQueryString("FromName");
//获取选中的tab选项卡
var index = 0;
if ($('#tabDiv').length == 1) {
var tab = $('#tabDiv').tabs('getSelected');
index = $('#tabDiv').tabs('getTabIndex', tab);
}
url = GetHrefUrl();
url = url.replace("#", "");
url = replaceParamVal(url, "tabIndex", index);
url = replaceParamVal(url, "PKVal", "");
//新增时En.htm页面隐藏
if (window.parent && window.parent.$ && window.parent.$(".layui-side").length == 1 && isSameEnName == true) {
parent.window.location.href = filterXSS(url).replace("EnOnly", "En"); //刷新.
return;
}
window.location.href = filterXSS(url);
}
function Save() {
debugger
$("#Btn_Save").html('正在保存');
this.Update(true);
$("#Btn_Save").html('保存');
}
//更新.
function Update(isRefresh) {
var url = GetHrefUrl();
var enName = GetQueryString("EnName");
var en = new Entity(enName);
//获取选中的tab选项卡
var index = 0;
if ($('#tabDiv').length == 1) {
var tab = $('#tabDiv').tabs('getSelected');
index = $('#tabDiv').tabs('getTabIndex', tab);
}
if (pkVal == null || pkVal == "") {
en.CopyForm();
if ($(".rich").length > 0) {
$(".rich").each(function (i, item) {
var edit = layui.tinymce.get('#' + item.id)
var val = edit.getContent();
var key = item.id.replace("TB_", "");
en[key] = val;
})
}
//有编号列.
if (en.No != undefined) {
//获取当前主键字段是否可以编辑?
var val = $("#TB_No").prop("disabled");
//主键是可以别用户自定义的 zhangsan.
if (val == false) {
if (en.IsExits() == true) {
alert('编号为[' + en.No + ']的数据已经存在.');
return false;
}
}
}
//获取树形结构的表单值
//var combotrees = $(".easyui-combotree");
//$.each(combotrees, function (i, combotree) {
// var name = $(combotree).attr('id');
// var tree = $('#' + name).combotree('tree');
// //获取当前选中的节点
// var data = tree.tree('getSelected');
// if (data != null) {
// en[name] = data.id;
// }
//});
var refPK = GetQueryString("RefPK");
if (refPK && refPK != "") {
en[refPK] = GetQueryString("RefPKVal");
}
var info = en.Insert();
if (info.toString().indexOf("err@") != -1) {
return false;
}
//保存实体后文件上传
var entityAthType = mapData.GetPara("BPEntityAthType");
var fileObj = $("#File_Upload").length == 0 ? [] : $("#File_Upload")[0].files;
if (fileObj.length != 0) {
if (entityAthType == 1)
uploadFile(en.GetPKVal());
if (entityAthType == 2) {
pkVal = en.GetPKVal();
MultiUploadFile();
}
}
url = url.replace("#", "");
url = replaceParamVal(url, "PKVal", en.GetPKVal());
url = replaceParamVal(url, "tabIndex", index);
if (url.indexOf("&tabIndex") == -1)
url += "&tabIndex=" + index;
if (url.indexOf('&PKVal=') == -1)
url += "&PKVal=" + en.GetPKVal();
//新增保存后显示En
if (window.parent && window.parent.$ && window.parent.$(".layui-side").length == 1 && isSameEnName == true && isRefresh == true) {
url = url.replace("EnOnly", "En");
parent.window.location.href = filterXSS(url); //刷新.
return;
}
if (isRefresh == true) {
SetHref(url); //刷新.
return;
}
if (pkVal == null) {
pkVal = mainData.OID;
if (pkVal == undefined || pkVal == "")
pkVal = mainData.No;
if (pkVal == undefined || pkVal == "")
pkVal = mainData.WorkID;
if (pkVal == undefined || pkVal == "")
pkVal = mainData.NodeID;
if (pkVal == undefined || pkVal == "")
pkVal = mainData.MyPK;
if (pkVal == "null" || pkVal == "" || pkVal == undefined)
pkVal = null;
InitToolbar();
}
return true;
}
en.pkval = pkVal;
en.SetPKVal(pkVal);
en.RetrieveFromDBSources();
//en.SetPKVal(pkVal);
en.CopyForm();
if ($(".rich").length > 0) {
$(".rich").each(function (i, item) {
var edit = layui.tinymce.get('#' + item.id)
var val = edit.getContent();
var key = item.id.replace("TB_", "");
en[key] = val;
})
}
var refPK = GetQueryString("RefPK");
if (refPK && refPK != "") {
en[refPK] = GetQueryString("RefPKVal");
}
var info = en.Update();
if (info == 0) {
alert('更新错误:' + info);
return false;
}
//保存实体后文件上传
var entityAthType = mapData.GetPara("BPEntityAthType")
var fileObj = $("#File_Upload").length == 0 ? [] : $("#File_Upload")[0].files;
if (fileObj.length != 0) {
if (entityAthType == 1)
uploadFile(pkVal);
}
url = url.replace("#", "");
url = replaceParamVal(url, "tabIndex", index);
url = replaceParamVal(url, "PKVal", en.GetPKVal());
if (url.indexOf("&tabIndex") == -1)
url += "&tabIndex=" + index;
if (window.parent && typeof window.parent.$ != "undefined" && window.parent.$(".layui-side").length == 1 && isSameEnName == true && isRefresh == true) {
url = url.replace("EnOnly", "En");
parent.window.location.href = filterXSS(url);
return;
}
if (isRefresh == true)
window.location.href = filterXSS(url); //刷新.
return true;
}
function changeFile() {
var pkval = GetPKVal();
if (pkval == null || pkval == "") {
return;
}
uploadFile(pkval);
}
//单文件上传
function uploadFile(pkval) {
var handler = new HttpHandler("BP.WF.HttpHandler.WF_CommEntity");
handler.AddFileData();
handler.AddPara("EnName", GetQueryString("EnName"));
handler.AddPara("PKVal", pkval);
var data = handler.DoMethodReturnString("EntityAth_Upload");
if (data.indexOf("err@") != -1) {
alert(data);
return;
}
alert("上传成功");
}
function Delete() {
if (window.confirm('您确定要删除吗?') == false)
return;
var enName = GetQueryString("EnName");
var en = new Entity(enName, GetPKVal());
//删除相关的设置
var mapExts = new Entities("BP.Sys.MapExts");
mapExts.Retrieve("FK_MapData", en.FK_MapData, "AttrOfOper", en.KeyOfEn);
if (mapExts) {
for (var index = 0; index < mapExts.length; index++) {
var mapExt = new Entity("BP.Sys.MapExt", mapExts[index].MyPK);
mapExt.Delete();
}
}
en = new Entity(enName, GetPKVal());
var rs = en.Delete();
if (rs != null && rs != undefined && rs != '' && rs.indexOf("err@") == -1) {
$("#Btns").html("");
$("#Left").html("");
$("#CCFormTabs").html("删除成功..");
alert("删除成功.");
}
window.close();
CloseIt();
}
function CloseIt() {
if (window.parent && window.parent.$ && window.parent.$(".layui-side").length == 1) {
if (isSameEnName == true) {
//En页面的基础信息删除时关闭页面
try {
window.parent.parent.layer.close(window.parent.parent.layer.index);
return;
}
catch (e) {
return;
}
}
return;
}
//打开的时EnOnly页面
try {
window.parent.layer.close(window.parent.layer.index);
return;
} catch (e) {
return;
}
if (parent.parent != undefined && parent.parent.$("#eudlg").length == 1)
parent.parent.$("#eudlg").dialog('close');
}
$(function () {
var Accordion = function (el, multiple) {
this.el = el || {};
this.multiple = multiple || false;
var links = this.el.find('.link');
links.on('click', { el: this.el, multiple: this.multiple }, this.dropdown)
}
Accordion.prototype.dropdown = function (e) {
var $el = e.data.el;
$this = $(this),
$next = $this.next();
$next.slideToggle();
$this.parent().toggleClass('open');
if (!e.data.multiple) {
$el.find('.submenu').not($next).slideUp().parent().removeClass('open');
};
}
var accordion = new Accordion($('#accordion'), false);
});
var IconKeyOfEn = "";
function openIconWindow(keyOfEn) {
IconKeyOfEn = keyOfEn;
var width = $(document).width() - 120;
OpenLayuiDialog("IconSelect.htm", "选择图标", width, 80, "auto", false);
}
function changeICon(icon) {
//获取ICon的值
var oldICon = $("#TB_" + IconKeyOfEn).val();
$("#menuIconIcon").attr("class", icon);
$("#TB_" + IconKeyOfEn).val(icon);
layer.close(layer.index);
}
function executeFunction(type) {
//执行方法前先保存
var flag = Update(false);
if (flag == false)
return;
var label = "";
var funcStr = "";
if (type == 1) {
label = cfg.EnBtnLab1;
funcStr = cfg.EnBtnJS1;
}
if (type == 2) {
label = cfg.EnBtnLab2;
funcStr = cfg.EnBtnJS2;
}
funcStr = funcStr.replace(/~/g, "'");
if (funcStr.indexOf("/") != -1) {
var W = document.body.clientWidth - 40;
OpenLayuiDialog(funcStr, label, W, 100, "r", false);
} else {
if (funcStr.indexOf('(') == -1)
cceval(funcStr + "()");
else
cceval(funcStr);
}
}
</script>
</head>
<body>
<form class="layui-form" enctype="multipart/form-data" method="post" autocomplete=off>
<div id="Btns" style="text-align:right;margin-right:15px">
<button id="Btn_New" type="button" class="layui-btn layui-btn-primary layui-border-green layui-btn-sm" onclick="New()" style="display:none">
<i class="iconfont icon-xinjian"></i> 新建
</button>
<button id="Btn_Save" type="button" class="layui-btn layui-btn-primary layui-border-green layui-btn-sm" onclick="Save()" style="display:none">
<i class="iconfont icon-Save"></i> 保存
</button>
<button id="Btn_Delete" type="button" class="layui-btn layui-btn-primary layui-border-green layui-btn-sm" onclick="Delete()" style="display:none">
<i class="iconfont icon-shanchu1"></i> 删除
</button>
<button id="Btn_Setting" type="button" class="layui-btn layui-btn-primary layui-border-green layui-btn-sm" onclick="Setting()" style="display:none">
<i class="iconfont icon-jurassic_setup-batch"></i> 设置
</button>
</div>
<div class="layui-tab layui-tab-brief" id="CCFormTabs">
</div>
</form>
<script>
$(function () {
var theme = filterXSS(localStorage.getItem("themeColorInfo"));
if (theme == null || theme == undefined || theme == "")
return;
var data = JSON.parse(theme);
$("#Btns").find("button").css("border-color", data.selectedMenu).css("color", data.selectedMenu);
$("#Btns").find("button").removeClass("layui-border-green");
})
</script>
</body>
</html>