|
|
<!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>
|
|
|
<title></title>
|
|
|
<link href="../../Scripts/layui/layui/css/layui.css" rel="stylesheet" />
|
|
|
<script src="../../Scripts/jquery-1.7.2.min.js" type="text/javascript"></script>
|
|
|
<script src="../../Scripts/QueryString.js" type="text/javascript"></script>
|
|
|
<!-- 增加一个配置 -->
|
|
|
<script src="../../Scripts/config.js" type="text/javascript"></script>
|
|
|
<script src="../../Comm/Gener.js" type="text/javascript"></script>
|
|
|
<script src="../../Scripts/layui/layui/layui.js"></script>
|
|
|
<style>
|
|
|
body{
|
|
|
line-height:24px;
|
|
|
}
|
|
|
.layui-th {
|
|
|
padding: 8px 10px;
|
|
|
margin: 4px;
|
|
|
background-color: #f7f7f7;
|
|
|
font-size: 13px;
|
|
|
border: 0px;
|
|
|
text-align: left;
|
|
|
word-break: keep-all;
|
|
|
font-weight: bold;
|
|
|
color: #333333;
|
|
|
}
|
|
|
.layui-row {
|
|
|
margin: 4px 0px 0px 4px;
|
|
|
padding: 8px 10px;
|
|
|
}
|
|
|
</style>
|
|
|
<script type="text/javascript">
|
|
|
var fk_mapdata = GetQueryString("FK_MapData");
|
|
|
var groupID = GetQueryString("GroupField");
|
|
|
if (groupID == null)
|
|
|
groupID = 0;
|
|
|
var dataType = GetQueryString("DataType");
|
|
|
var webUser = new WebUser();
|
|
|
layui.extend({
|
|
|
pinyin: "../../Scripts/layui/ext/pinyin"
|
|
|
});
|
|
|
layui.use(['pinyin'], function () {
|
|
|
var pinyin = layui.pinyin;
|
|
|
var Ele_TBName = document.getElementById("TB_Name");
|
|
|
Ele_TBName.focus();
|
|
|
|
|
|
PageTransfer_value = dataType; //取出页面传至
|
|
|
//给单选赋值
|
|
|
if (PageTransfer_value == "TextBox") {
|
|
|
$("#RB_String").attr("checked", true);
|
|
|
}
|
|
|
|
|
|
if (PageTransfer_value == "TextBoxInt") {
|
|
|
$("#RB_Int").attr("checked", true);
|
|
|
}
|
|
|
|
|
|
if (PageTransfer_value == "TextBoxFloat") {
|
|
|
$("#RB_Float").attr("checked", true);
|
|
|
}
|
|
|
|
|
|
if (PageTransfer_value == "TextBoxMoney") {
|
|
|
$("#RB_Money").attr("checked", true);
|
|
|
}
|
|
|
|
|
|
if (PageTransfer_value == "Date") {
|
|
|
$("#RB_Date").attr("checked", true);
|
|
|
}
|
|
|
|
|
|
if (PageTransfer_value == "DateTime") {
|
|
|
$("#RB_DateTime").attr("checked", true);
|
|
|
}
|
|
|
|
|
|
if (PageTransfer_value == "CheckBox") {
|
|
|
$("#RB_Boolen").attr("checked", true);
|
|
|
}
|
|
|
|
|
|
$('#TB_Name').blur(function () //文本失去焦点时触发的事件
|
|
|
{
|
|
|
var name = document.getElementById("TB_Name").value;
|
|
|
var val = $('input:radio[name="RB_QPJP"]:checked').val();
|
|
|
if (name == "") {
|
|
|
document.getElementById("TB_KeyOfEn").value = "";
|
|
|
return;
|
|
|
}
|
|
|
|
|
|
var keyVal = SpecWords(name);
|
|
|
if (keyVal == null) {
|
|
|
if (val == "ziduanquanpin")
|
|
|
$("#TB_KeyOfEn").val(pinyin.ConvertPinyin(name));
|
|
|
else
|
|
|
$("#TB_KeyOfEn").val(pinyin.makePy(name));
|
|
|
} else {
|
|
|
$("#TB_KeyOfEn").val(keyVal);
|
|
|
}
|
|
|
});
|
|
|
//点击全拼
|
|
|
$('input[id=RB_QP]').change(function () {
|
|
|
var name = document.getElementById("TB_Name").value;
|
|
|
var keyVal = SpecWords(name);
|
|
|
if (keyVal == null)
|
|
|
$("#TB_KeyOfEn").val(pinyin.ConvertPinyin(name));
|
|
|
else
|
|
|
$("#TB_KeyOfEn").val(keyVal);
|
|
|
});
|
|
|
//点击简拼
|
|
|
$('input[id=RB_JP]').change(function () {
|
|
|
var name = document.getElementById("TB_Name").value;
|
|
|
var keyVal = SpecWords(name);
|
|
|
if (keyVal == null)
|
|
|
$("#TB_KeyOfEn").val(pinyin.makePy(name));
|
|
|
else
|
|
|
$("#TB_KeyOfEn").val(keyVal);
|
|
|
});
|
|
|
});
|
|
|
//特别词汇.
|
|
|
function SpecWords(str) {
|
|
|
if (str == '项目编号') return 'PrjNo';
|
|
|
if (str == '项目名称') return 'PrjName';
|
|
|
if (str == '电话') return 'Tel';
|
|
|
if (str == '地址') return 'Addr';
|
|
|
if (str == '邮件') return 'Email';
|
|
|
if (str == '手机') return 'Mobile';
|
|
|
if (str == '合计') return 'HeJi';
|
|
|
return null;
|
|
|
}
|
|
|
//增加枚举字段
|
|
|
function Enum(doType) {
|
|
|
if (webUser.CCBPMRunModel == 2) {
|
|
|
SetHref( '../../../Admin/CCFormDesigner/SysEnum/List.htm?DoType=' + doType + '&FK_MapData=' + fk_mapdata + '&GroupField=' + groupID);
|
|
|
} else {
|
|
|
SetHref( 'SysEnumList.htm?DoType=' + doType + '&FK_MapData=' + fk_mapdata + '&GroupField=' + groupID);
|
|
|
}
|
|
|
}
|
|
|
//增加外键下拉框
|
|
|
function Table(doType) {
|
|
|
// SaaS模式下进入SaaS下页面
|
|
|
if (webUser.CCBPMRunModel == 2) {
|
|
|
SetHref( '../../../Admin/CCFormDesigner/SFList.htm?DoType=' + doType + '&FK_MapData=' + fk_mapdata + '&FType=Class&GroupField=' + groupID);
|
|
|
} else {
|
|
|
SetHref( 'SFList.htm?DoType=' + doType + '&FK_MapData=' + fk_mapdata + '&FType=Class&GroupField=' + groupID);
|
|
|
}
|
|
|
}
|
|
|
|
|
|
//签批组件
|
|
|
function AddWorkCheck() {
|
|
|
var pinyin = layui.pinyin;
|
|
|
layer.prompt({
|
|
|
title: '请输入签批组件的名称:\t\n比如:办公室意见、拟办意见',
|
|
|
formType: 0,
|
|
|
value: '',
|
|
|
}, function (name, index) {
|
|
|
layer.close(index);
|
|
|
if (name == null || name == undefined || name.trim() == "")
|
|
|
return "";
|
|
|
var mapAttrs = new Entities("BP.Sys.MapAttrs");
|
|
|
mapAttrs.Retrieve("FK_MapData", fk_mapdata, "Name", name);
|
|
|
if (mapAttrs.length >= 1) {
|
|
|
layer.alert('名称:[' + name + "]已经存在.");
|
|
|
AddWorkCheck(pinyin);
|
|
|
return "";
|
|
|
}
|
|
|
var keyOfEn = pinyin.makePy(name);
|
|
|
var mypk = fk_mapdata + "_" + keyOfEn;
|
|
|
var mapAttr = new Entity("BP.Sys.MapAttr");
|
|
|
mapAttr.MyPK = mypk;
|
|
|
if (mapAttr.IsExits == true) {
|
|
|
layer.alert('名称:[' + name + "]已经存在.");
|
|
|
return "";
|
|
|
}
|
|
|
mapAttr.FK_MapData = fk_mapdata;
|
|
|
mapAttr.KeyOfEn = keyOfEn;
|
|
|
mapAttr.Name = name;
|
|
|
mapAttr.GroupID = 1;
|
|
|
mapAttr.UIContralType = 14; //签批意见
|
|
|
mapAttr.MyDataType = 1;
|
|
|
mapAttr.LGType = 0;
|
|
|
mapAttr.ColSpan = 3; //
|
|
|
mapAttr.TextColSpan = 1; //
|
|
|
mapAttr.UIWidth = 150;
|
|
|
mapAttr.UIHeight = 50;
|
|
|
mapAttr.IsEnableInAPP = 1;
|
|
|
mapAttr.Insert(); //插入字段.
|
|
|
SetHref( "../../Comm/EnOnly.htm?EnName=BP.Sys.FrmUI.MapAttrCheck&MyPK=" + mapAttr.MyPK);
|
|
|
|
|
|
});
|
|
|
|
|
|
}
|
|
|
|
|
|
//传入父窗体
|
|
|
function GetFrmInfo() {
|
|
|
return {
|
|
|
Name: $.trim($("#TB_Name").val()),
|
|
|
KeyOfEn: $.trim($("#TB_KeyOfEn").val()),
|
|
|
IsCreateLabel: $("#CB_scbq").prop("checked"),
|
|
|
IsHidenField: $("#CB_sfyczd").prop("checked"),
|
|
|
FieldType: $('input:radio[name=Field_Type]:checked').val()
|
|
|
};
|
|
|
}
|
|
|
//在这里把返回值获取到,放入到对应的文本框里.
|
|
|
function SelectOne() {
|
|
|
|
|
|
var url = "./FieldTypeListChoseOneField.htm?FK_MapData=" + GetQueryString("FK_MapData");
|
|
|
SetHref(url);
|
|
|
}
|
|
|
function ToTemplate() {
|
|
|
var url = "./Template/Fields.htm?FK_MapData=" + GetQueryString("FK_MapData");
|
|
|
SetHref(url);
|
|
|
}
|
|
|
|
|
|
function HidAttr() {
|
|
|
var url = 'HidAttr.htm?FK_MapData=' + GetQueryString("FK_MapData");
|
|
|
SetHref(url);
|
|
|
}
|
|
|
|
|
|
function ContainsChinese(str) {
|
|
|
|
|
|
///<summary>判断指定字符串是否包含汉字</summary>
|
|
|
if (!str) {
|
|
|
return false;
|
|
|
}
|
|
|
|
|
|
return new RegExp("[\\u4E00-\\u9FFF]+", "g").test(str);
|
|
|
}
|
|
|
|
|
|
function Create(isSaveAndNew) {
|
|
|
|
|
|
var name = $("#TB_Name").val();
|
|
|
if (name == '' || name == null) {
|
|
|
alert('请输入字段中文名称');
|
|
|
return;
|
|
|
}
|
|
|
|
|
|
var no = $("#TB_KeyOfEn").val();
|
|
|
if (no == '' || no == null) {
|
|
|
alert('请输入字段英文名称');
|
|
|
return;
|
|
|
}
|
|
|
|
|
|
if (ContainsChinese(no)) {
|
|
|
alert('字段英文名称 不能包含汉字!');
|
|
|
return;
|
|
|
}
|
|
|
|
|
|
var fType = $('input[name="Field_Type"]:checked').val();
|
|
|
|
|
|
var handler = new HttpHandler("BP.WF.HttpHandler.WF_Admin_FoolFormDesigner");
|
|
|
handler.Clear();
|
|
|
|
|
|
if (plant == "CCFlow")
|
|
|
name = encodeURIComponent(name);
|
|
|
|
|
|
//特殊判断系统字段.
|
|
|
if (no.toUpperCase() == "BILLNO")
|
|
|
no = "BillNo";
|
|
|
|
|
|
//特殊判断系统字段.
|
|
|
if (no.toUpperCase() == "NO")
|
|
|
no = "MyNo";
|
|
|
|
|
|
handler.AddPara("name", name);
|
|
|
handler.AddPara("FType", fType);
|
|
|
handler.AddPara("FK_MapData", fk_mapdata);
|
|
|
handler.AddPara("KeyOfEn", no);
|
|
|
handler.AddPara("GroupField", groupID);
|
|
|
handler.AddPara("FK_Flow", GetQueryString("FK_Flow"));
|
|
|
|
|
|
var data = handler.DoMethodReturnString("FieldTypeSelect_Create");
|
|
|
if (data.indexOf("err@") >= 0) {
|
|
|
alert(data);
|
|
|
return;
|
|
|
}
|
|
|
|
|
|
var url = data.replace('url@', '');
|
|
|
if (isSaveAndNew == false) {
|
|
|
SetHref( url + "&inlayer=" + GetQueryString("inlayer"));
|
|
|
return;
|
|
|
}
|
|
|
|
|
|
SetHref( "FrmTextBox.htm?DataType=" + coverTypeToName(fType) + "&FK_MapData=" + fk_mapdata + "&GroupField=" + groupID + "&m=" + Math.random());
|
|
|
return;
|
|
|
}
|
|
|
|
|
|
function coverTypeToName(type) {
|
|
|
switch (parseInt(type)) {
|
|
|
case 1:
|
|
|
return "TextBox";
|
|
|
case 2:
|
|
|
return "TextBoxInt";
|
|
|
case 3:
|
|
|
return "TextBoxFloat";
|
|
|
case 4:
|
|
|
return "CheckBox";
|
|
|
case 6:
|
|
|
return "Date";
|
|
|
case 7:
|
|
|
return "DateTime";
|
|
|
case 8:
|
|
|
return "TextBoxMoney";
|
|
|
}
|
|
|
return "TextBox";
|
|
|
}
|
|
|
</script>
|
|
|
</head>
|
|
|
<body>
|
|
|
<div class="layui-container" style="width:100%">
|
|
|
<div class="layui-row layui-th">
|
|
|
<div class="layui-col-xs6">
|
|
|
<div style="float: left">
|
|
|
新增普通类型的字段
|
|
|
</div>
|
|
|
</div>
|
|
|
<div class="layui-col-xs6">
|
|
|
<div style="float: right" id="Temp0">
|
|
|
<a href="javascript:HidAttr();">隐藏字段</a>
|
|
|
<a href="javascript:ToTemplate();">常用字段模版</a>
|
|
|
</div>
|
|
|
</div>
|
|
|
</div>
|
|
|
<div class="layui-row">
|
|
|
<div class="layui-col-xs6">
|
|
|
<div class="layui-row">
|
|
|
<div class="layui-col-xs2">
|
|
|
中文名
|
|
|
</div>
|
|
|
<div class="layui-col-xs6">
|
|
|
<input style="font-weight:bolder;line-height:24px" type="text" name="TB_Name" id="TB_Name" />
|
|
|
</div>
|
|
|
</div>
|
|
|
<div class="layui-row">
|
|
|
<div class="layui-col-xs2">
|
|
|
英文名
|
|
|
</div>
|
|
|
<div class="layui-col-xs6">
|
|
|
<input style="font-weight:bolder;line-height:24px;margin-top:4px" type="text" name="TB_KeyOfEn" id="TB_KeyOfEn" />
|
|
|
</div>
|
|
|
</div>
|
|
|
<div class="layui-row">
|
|
|
<div class="layui-col-xs12">
|
|
|
<input type="radio" name="RB_QPJP" id="RB_QP" checked="checked" value="ziduanquanpin" />
|
|
|
<label for="RB_QP">
|
|
|
全拼
|
|
|
</label>
|
|
|
<input type="radio" name="RB_QPJP" id="RB_JP" value="ziduanjianpin" />
|
|
|
<label for="RB_JP">
|
|
|
简拼
|
|
|
</label>
|
|
|
<button class="layui-btn layui-btn-primary layui-border-green layui-btn-sm" onclick="SelectOne();" title="从数据表里选择字段">更多...</button>
|
|
|
</div>
|
|
|
|
|
|
</div>
|
|
|
<div class="layui-row">
|
|
|
<div class="layui-col-xs12">
|
|
|
<button class="layui-btn layui-border-blue layui-btn-primary layui-btn-sm" onclick="Create(false);">创建字段</button>
|
|
|
<button class="layui-btn layui-border-blue layui-btn-primary layui-btn-sm" onclick="Create(true);">保存+创建</button>
|
|
|
</div>
|
|
|
|
|
|
</div>
|
|
|
</div>
|
|
|
<div class="layui-col-xs6">
|
|
|
<input type="radio" name="Field_Type" id="RB_String" value="1" />
|
|
|
<label for="RB_String">
|
|
|
字符型。<font color="Gray">如:姓名、地址、邮编、电话。</font><br />
|
|
|
</label>
|
|
|
<input type="radio" name="Field_Type" id="RB_Int" value="2" />
|
|
|
<label for="RB_Int">
|
|
|
整数型。<font color="Gray">如:年龄、个数。</font><br />
|
|
|
</label>
|
|
|
<input type="radio" name="Field_Type" id="RB_Money" value="8" />
|
|
|
<label for="RB_Money">
|
|
|
金额型。<font color="Gray">如:单价、薪水。</font><br />
|
|
|
</label>
|
|
|
<input type="radio" name="Field_Type" id="RB_Float" value="3" />
|
|
|
<label for="RB_Float">
|
|
|
浮点型。<font color="Gray">如:身高、体重、长度。</font><br />
|
|
|
</label>
|
|
|
|
|
|
<input type="radio" name="Field_Type" id="RB_Date" value="6" />
|
|
|
<label for="RB_Date">
|
|
|
日期型。<font color="Gray">如:出生日期、发生日期yyyy-MM-dd。</font><br />
|
|
|
</label>
|
|
|
<input type="radio" name="Field_Type" id="RB_DateTime" value="7" />
|
|
|
<label for="RB_DateTime">
|
|
|
日期时间型。<font color="Gray">如:发生日期时间yyyy-MM-dd HH:mm。</font><br />
|
|
|
</label>
|
|
|
<input type="radio" name="Field_Type" id="RB_Boolen" value="4" />
|
|
|
<label for="RB_Boolen">
|
|
|
Boole型(是/否)。<font color="Gray">如:是否完成、是否达标。</font><br />
|
|
|
</label>
|
|
|
</div>
|
|
|
</div>
|
|
|
<div class="layui-row layui-th">
|
|
|
新增枚举字段(用来表示,状态、类型...的数据。)
|
|
|
</div>
|
|
|
<div class="layui-row">
|
|
|
<a href="javascript:Enum('AddEnum');"><b>枚举型</b></a> - 比如:性别:男/女。请假类型:事假/病假/婚假/产假/其它。
|
|
|
</div>
|
|
|
<div class="layui-row layui-th">
|
|
|
新增下拉框(外键、外部表、WebServices)字典表字段(通常只有编号名称两个列)
|
|
|
</div>
|
|
|
<div class="layui-row">
|
|
|
<a href="javascript:Table('AddSFTable')"><b>外键、外部数据、webservices数据类型</b></a> - 比如:岗位、税种、行业、科目,本机上一个表组成一个下拉框。
|
|
|
</div>
|
|
|
<div class="layui-row layui-th">
|
|
|
增加签批字段
|
|
|
</div>
|
|
|
<div class="layui-row">
|
|
|
<a href="javascript:AddWorkCheck()"><b>签批字段</b></a>。
|
|
|
</div>
|
|
|
</div>
|
|
|
</body>
|
|
|
</html>
|