<%@ page language="java" import="java.util.*" pageEncoding="UTF-8" %>
|
<%
|
String path = request.getContextPath();
|
String basePath = request.getScheme() + "://" + request.getServerName() + ":" + request.getServerPort() + path + "/";
|
%>
|
|
<!DOCTYPE HTML>
|
<html lang="en">
|
<head>
|
<base href="<%=basePath%>">
|
<meta name="viewport" content="width=device-width, initial-scale=1.0">
|
<meta http-equiv="X-UA-Compatible" content="ie=edge">
|
<title>字段条件配置</title>
|
|
<link rel="stylesheet" href="static/plugins/jquery-steps/css/main.css" type="text/css">
|
<link rel="stylesheet" href="static/plugins/jquery-steps/css/jquery.steps.css" type="text/css">
|
<link href="static/plugins/font-awesome/css/font-awesome.css" rel="stylesheet" type="text/css">
|
<link href="static/plugins/jquery-easyui/themes/bootstrap/easyui.css" rel="stylesheet" type="text/css">
|
<link rel="stylesheet" href="static/styles/initialize.css" type="text/css">
|
<link rel="stylesheet" href="static/styles/common.css" type="text/css">
|
<link rel="stylesheet" href="static/plugins/layer/skin/default/layer.css" type="text/css">
|
|
<script type="text/javascript" src="static/plugins/jquery/jquery.min.js"></script>
|
<script type="text/javascript" src="static/plugins/jquery-easyui/jquery.easyui.min.js"></script>
|
<script type="text/javascript" src="static/plugins/jquery-easyui/locale/easyui-lang-zh_CN.js"></script>
|
<script type="text/javascript" src="static/scripts/easyuiExtend.js"></script>
|
<script type="text/javascript" src="static/scripts/jquery-extend.js"></script>
|
<script type="text/javascript" src="static/plugins/layer/layer.js"></script>
|
<script type="text/javascript" src="static/plugins/slimScroll/jquery.slimscroll.min.js"></script>
|
<script type="text/javascript" src="static/scripts/ResizeScroll.js"></script>
|
<script type="text/javascript" src="static/plugins/jquery-easyui-edatagrid/jquery.edatagrid.js"></script>
|
<script type="text/javascript" src="static/plugins/ace/src-noconflict/ace.js"></script>
|
|
<!-- 弹窗加载组件 -->
|
<script type="text/javascript" src="static/plugins/layer/layer.js"></script>
|
<script type="text/javascript" src="static/plugins/spinjs/spin.js"></script>
|
<script type="text/javascript" src="static/plugins/spinjs/jquery.spin.js"></script>
|
<script type="text/javascript" src="static/plugins/jquery.blockUI.js"></script>
|
<!-- wcp组件 -->
|
<script type="text/javascript" src="static/wcp/scripts/wcp.js"></script>
|
<script type="text/javascript" src="static/wcp/scripts/libs/wcp.layer.js"></script>
|
<script type="text/javascript" src="static/wcp/scripts/libs/wcp.blockUI.js"></script>
|
<script type="text/javascript" src="static/wcp/scripts/libs/wcp.spin.js"></script>
|
<script type="text/javascript" src="static/wcp/scripts/libs/wcp.jquery.js"></script>
|
|
<!--[if lt IE 9]>
|
<script type="text/javascript" src="static/plugins/json2.js"></script>
|
<![endif]-->
|
<script type="text/javascript" src="static/wcp/scripts/libs/wcp.infoPicker.js"></script>
|
<style>
|
html, body {
|
height: 100%;
|
}
|
|
body {
|
overflow: hidden;
|
}
|
</style>
|
</head>
|
<body>
|
<div class="pt-form">
|
<form id="formViewConditonColumn" method="post">
|
<table style="width: 100%;">
|
<tr>
|
<td class="tbtitle">表名:</td>
|
<td>
|
<input id="tableName" name="tableName" class="easyui-textbox" type="text"
|
value="${viewConditionColumn.tableName}" style="width:610px"
|
data-options="buttonText:'选表',prompt:'请选择表...',onClickButton:selectTable"/>
|
<input type="hidden" class="easyui-textbox" id="columnId" name="columnId"
|
value="${viewConditionColumn.columnId}"/>
|
<input type="hidden" class="easyui-textbox" id="viewId" name="viewId"
|
value="${viewConditionColumn.viewId}"/>
|
</td>
|
</tr>
|
<tr>
|
<td class="tbtitle"><em class="pt-color-danger">*</em> 字段名称:</td>
|
<td>
|
<input id="columnName" name="columnName" class="easyui-textbox" type="text"
|
value="${viewConditionColumn.columnName}" style="width:610px"
|
data-options="editable:false,required:true,buttonText:'选字段',prompt:'请选择字段...',onClickButton:selectColumn"
|
/>
|
</td>
|
</tr>
|
|
<tr>
|
<td class="tbtitle">
|
<em class="pt-color-danger">*</em> 字段显示名称:
|
</td>
|
<td>
|
<input id="columnTitle" name="columnTitle" class="easyui-textbox easyui-validatebox"
|
data-options="required:true" type="text" style="width:610px;"
|
value="${viewConditionColumn.columnTitle}"/>
|
</td>
|
</tr>
|
|
|
<tr>
|
<td class="tbtitle">字段类型:</td>
|
<td>
|
<div style="float:left;">
|
<select id="columnType" name="columnType" class="easyui-combobox" style="width:200px;"
|
data-options="editable:false,panelHeight:'auto'">
|
<option value="0" selected>字符串型</option>
|
<option value="1">整型</option>
|
<option value="2">日期型</option>
|
<option value="3">浮点型</option>
|
</select>
|
</div>
|
<div id="div_dateFormat" style="float:left;margin-left:10px;display:none">
|
<select id="dateFormat" name="dateFormat" class="easyui-combobox" style="width:200px;"
|
data-options="editable:false,panelHeight:'auto'">
|
<option value="yyyy" selected>年</option>
|
<option value="yyyy-MM">年-月</option>
|
<option value="yyyy-MM-dd">年-月-日</option>
|
<option value="yyyy-MM-dd HH:mm:ss">年-月-日 时:分:秒</option>
|
</select>
|
</div>
|
</td>
|
</tr>
|
|
<tr>
|
<td class="tbtitle">显示方式:</td>
|
<td>
|
<select id="displayMode" name="displayMode" class="easyui-combobox" name="GeneralDisplayType"
|
style="width:200px;" data-options="editable:false,panelHeight:'auto'">
|
<option value="0" selected>输入框</option>
|
<option value="1">单选按钮</option>
|
<option value="2">多选按钮</option>
|
<option value="3">下拉框</option>
|
<option value="4">弹出先择(多级关键字)</option>
|
</select>
|
</td>
|
</tr>
|
<tr id="tr_dataSourceType" style="display:none">
|
<td class="tbtitle">数据来源:</td>
|
<td>
|
<div style="float:left">
|
<select id="dataSourceType" name="dataSourceType" class="easyui-combobox" name="fromSource"
|
style="width:200px;" data-options="editable:false,panelHeight:'auto'">
|
<option value="0" selected>自定义选项</option>
|
<option value="1">部门</option>
|
<option value="2">sql语句</option>
|
<option value="3">单级关键字</option>
|
<option value="6">多级关键字</option>
|
<option value="4">提取字段所有值升序</option>
|
<option value="5">提取字段所有值降序</option>
|
</select>
|
</div>
|
<div id="div_dataSourceSql" style="float:left;display:none;margin-left:10px">
|
<input id="dataSourceSql" name="dataSourceSql" class="easyui-textbox" type="text"
|
style="width:400px;" value="${viewConditionColumn.dataSourceSql}"/>
|
</div>
|
<div id="div_dataSourceKeyWord" style="float:left;display:none;margin-left:10px;width:200px">
|
<input id="dataSourceKeywordName" name="dataSourceKeywordName" class="easyui-textbox"
|
type="text" style="width:200px;" value="${viewConditionColumn.dataSourceKeywordName}"
|
data-options="editable:false,buttonText:'选择关键字',prompt:'',onClickButton:function(){selectKeyword();}"/>
|
<input id="dataSourceKeywordId" name="dataSourceKeywordId" class="easyui-textbox" type="hidden"
|
value="${viewConditionColumn.dataSourceKeywordId}" value="${viewConditionColumn.enableJoinParent}"/>
|
</div>
|
<div id="divJoinParent" style="float:left;display:none;margin-left:10px;">
|
<input type="hidden" id="enableJoinParent" name="enableJoinParent"/>
|
<input id="enableJoinParentText" class="easyui-switchbutton"
|
data-options="onText:'是',offText:'否',onChange:setEnableValue"/>是否拼接父节点内容
|
</div>
|
<div id="div_dataSourceCustomItems" style="float:left;display:none;margin-left:10px">
|
<input id="dataSourceCustomItems" name="dataSourceCustomItems" class="easyui-textbox"
|
type="text"
|
style="width:395px;" value="${viewConditionColumn.dataSourceCustomItems}"/>
|
<i class="fa fa-exclamation-circle pt-color-warning easyui-tooltip"
|
title="选项之间请用“;”隔开,如“选项1;选项2;选项3”;如果需要名称和值不一样,请在名称和值之间用“:”隔开,如果“选项1:0,选项2:1,选项3:2”。"
|
data-options="hideDelay: 3000,
|
position: 'left',
|
onShow: function(){
|
$(this).tooltip('tip').css({
|
backgroundColor: '#eb9814',
|
borderColor: '#d38f23',
|
color: '#fff',
|
width: '260px',
|
lineHeight:'24px'
|
});
|
}"></i>
|
</div>
|
</td>
|
</tr>
|
<tr>
|
<td class="tbtitle">查询方式:</td>
|
<td>
|
<select id="searchMode" name="searchMode" class="easyui-combobox" name="queryWay"
|
style="width:200px;" data-options="editable:false,panelHeight:'auto'">
|
<option value="0" selected>等于</option>
|
<option value="1">不等于</option>
|
<option value="2">包含</option>
|
<option value="3">不包含</option>
|
<option value="4">范围内</option>
|
<option value="5">自定义查询条件</option>
|
</select>
|
</td>
|
</tr>
|
<tr id="tr_customSearchSql">
|
<td class="tbtitle">自定义查询</br>条件:
|
<i class="fa fa-exclamation-circle pt-color-warning easyui-tooltip"
|
title="注:录入框的自定义语句,在写语句时,不确定的输入值用{value}表示,如:xxx like '%{value}%'。如果是用于多选项的定义,请使用“;”隔开。"
|
data-options="hideDelay: 3000,
|
position: 'right',
|
onShow: function(){
|
$(this).tooltip('tip').css({
|
backgroundColor: '#eb9814',
|
borderColor: '#d38f23',
|
color: '#fff',
|
width: '260px',
|
lineHeight:'24px'
|
});
|
}"></i>
|
</td>
|
<td>
|
<input id="customSearchSql" name="customSearchSql" class="easyui-textbox" type="text"
|
style="width:610px;"
|
value="${viewConditionColumn.customSearchSql}"/>
|
|
</td>
|
</tr>
|
<tr>
|
<td class="tbtitle">默认值:</td>
|
<td>
|
<input id="defaultValue" name="defaultValue" class="easyui-textbox" type="text" style="width:610px;"
|
value="${viewConditionColumn.defaultValue}"/>
|
</td>
|
</tr>
|
<tr>
|
<td class="tbtitle">行号:</td>
|
<td>
|
<input id="rowNum" name="rowNum" class="easyui-numberspinner" type="text" style="width:610px;"
|
data-options="required:true" value="${viewConditionColumn.rowNum}"/>
|
</td>
|
</tr>
|
<tr>
|
<td class="tbtitle">列号:</td>
|
<td>
|
<input id="columnNum" name="columnNum" class="easyui-numberspinner" type="text" style="width:610px;"
|
data-options="required:true" value="${viewConditionColumn.columnNum}"/>
|
</td>
|
</tr>
|
<tr>
|
<td class="tbtitle">宽度:</td>
|
<td>
|
<input id="displayWidth" name="displayWidth" class="easyui-numberspinner" type="text"
|
style="width:610px;" data-options="required:true"
|
value="${viewConditionColumn.displayWidth}"/>
|
</td>
|
</tr>
|
</table>
|
</form>
|
</div>
|
|
<div class="pt-form-btn" style="bottom:0px;">
|
<div class="form-group">
|
<button type="button" class="pt-btn pt-btn-primary" onclick="doSave();">确定</button>
|
<button type="reset" class="pt-btn pt-btn-default" onclick="doClose();">关闭</button>
|
</div>
|
</div>
|
</body>
|
<script>
|
//窗口参数,用于弹窗传递
|
var params = {
|
callBack: null
|
};
|
$(function () {
|
$("#displayMode").combobox({
|
onChange: function (n, o) {
|
if (n == "0") {
|
$("#tr_dataSourceType").hide();
|
} else {
|
$("#tr_dataSourceType").show();
|
}
|
}
|
});
|
$("#columnType").combobox({
|
onChange: function (n, o) {
|
if (n == "2")//若字段类型为日期,则显示方式只能是输入框
|
{
|
$("#div_dateFormat").show();
|
$('#displayMode').combobox('setValue', '0');
|
$('#displayMode').combobox('readonly', true);
|
} else {
|
$("#div_dateFormat").hide();
|
$('#displayMode').combobox('readonly', false);
|
}
|
}
|
});
|
|
$("#dataSourceType").combobox({
|
onChange: function (n, o) {
|
if (n == "1")//若数据来源选择为部门,则显示方式只能是下拉
|
{
|
$('#displayMode').combobox('setValue', '3');
|
$('#displayMode').combobox('readonly', true);
|
} else {
|
$('#displayMode').combobox('readonly', false);
|
}
|
$("#divJoinParent").hide();
|
if (n == "0") {
|
$("#div_dataSourceSql").hide();
|
$("#div_dataSourceKeyWord").hide();
|
$("#div_dataSourceCustomItems").show();
|
} else if (n == "2") {
|
$("#div_dataSourceSql").show();
|
$("#div_dataSourceKeyWord").hide();
|
$("#div_dataSourceCustomItems").hide();
|
} else if (n == "3" || n == "6") {
|
$("#div_dataSourceSql").hide();
|
$("#div_dataSourceKeyWord").show();
|
$("#div_dataSourceCustomItems").hide();
|
if(n == "6"){
|
$("#divJoinParent").show();
|
}else{
|
$("#divJoinParent").hide();
|
}
|
} else {
|
$("#div_dataSourceSql").hide();
|
$("#div_dataSourceKeyWord").hide();
|
$("#div_dataSourceCustomItems").hide();
|
}
|
}
|
});
|
|
$("#searchMode").combobox({
|
onChange: function (n, o) {
|
if (n == "5") {
|
$("#tr_customSearchSql").show();
|
} else {
|
$("#tr_customSearchSql").hide();
|
}
|
}
|
});
|
|
initControlDisplay();
|
})
|
|
//初始化控件显示与否
|
function initControlDisplay() {
|
if ("${viewConditionColumn.enableJoinParent}" == "true") {
|
$('#enableJoinParentText').switchbutton("check");
|
} else {
|
$('#enableJoinParentText').switchbutton("uncheck");
|
}
|
|
if ('${viewConditionColumn.displayMode}' == '0') {
|
$("#tr_dataSourceType").hide();
|
} else {
|
$("#tr_dataSourceType").show();
|
}
|
|
if ('${viewConditionColumn.dataSourceType}' == '0') {
|
$("#div_dataSourceCustomItems").show();
|
} else if ('${viewConditionColumn.dataSourceType}' == '2') {
|
$("#div_dataSourceSql").show();
|
} else if ('${viewConditionColumn.dataSourceType}' == '3') {
|
$("#div_dataSourceKeyWord").show();
|
}
|
|
if ('${viewConditionColumn.searchMode}' == '5') {
|
$("#tr_customSearchSql").show();
|
} else {
|
$("#tr_customSearchSql").hide();
|
}
|
|
$('#columnType').combobox('setValue', '${viewConditionColumn.columnType}');
|
$('#displayMode').combobox('setValue', '${viewConditionColumn.displayMode}');
|
$('#dataSourceType').combobox('setValue', '${viewConditionColumn.dataSourceType}');
|
$('#searchMode').combobox('setValue', '${viewConditionColumn.searchMode}');
|
$('#dateFormat').combobox('setValue', '${viewConditionColumn.dateFormat}');
|
|
if ('${viewConditionColumn.columnType}' == '2') {
|
$("#div_dateFormat").show();
|
$('#displayMode').combobox('setValue', '0');
|
$('#displayMode').combobox('readonly', true);
|
} else {
|
$("#div_dateFormat").hide();
|
}
|
}
|
|
function selectTable() {
|
wcp.picker.selectTable({
|
title: "请选择表",
|
multiSelect: false,
|
layerOpener: window
|
}, function (rows) {
|
var selectedTables = "";
|
$.each(rows, function (index, value) {
|
selectedTables += value.tableName + ',';
|
});
|
selectedTables = selectedTables.substr(0, selectedTables.length - 1);
|
$('#tableName').textbox("setValue", selectedTables);
|
});
|
}
|
|
function selectColumn() {
|
var tableName = $('#tableName').val().replace(';', ',');
|
wcp.picker.selectTableColumn({
|
title: "请选择字段",
|
tableName: tableName,
|
multiSelect: false,
|
layerOpener: window
|
}, function (rows) {
|
var selectedColumns = rows[0].columnName;
|
var selectedDisplayName = rows[0].displayName;
|
$('#columnName').textbox("setValue", selectedColumns);
|
$('#columnTitle').textbox("setValue", selectedDisplayName);
|
$('#dataSourceSql').textbox("setValue", "select {字段名} as '" + selectedColumns + "' from {表名}");
|
});
|
}
|
|
function selectKeyword() {
|
var dataSourceType = $('#dataSourceType').combobox('getValue');
|
var keywordType = 1;
|
//多级关键字
|
if (dataSourceType == 6) {
|
keywordType = 0;
|
}
|
wcp.picker.selectKeyword({
|
title: "请选择关键字",
|
idElement: "dataSourceKeywordId",
|
nameElement: "dataSourceKeywordName",
|
keywordType: keywordType,
|
layerOpener: window
|
});
|
}
|
|
//设置隐藏域值
|
function setEnableValue(checked) {
|
$('#' + this.id.replace("Text", "")).val(checked);
|
}
|
|
//确定按钮事件
|
function doSave() {
|
//验证表单信息
|
var isValid = $('#formViewConditonColumn').form('validate');
|
if (!isValid) {
|
wcp.notify.warn('表单验证有误,请检查表单输入项!');
|
return false;
|
}
|
var obj = $("#formViewConditonColumn").serializeObject();
|
wcp.ui.setBusy("body", wcp.ajax({
|
url: "config/viewConditionColumn/saveViewConditionColumn",
|
data: JSON.stringify(obj),
|
}).done(function (result) {
|
//判断是否需要执行回调函数
|
if (params.callBack) {
|
params.callBack();
|
}
|
//关闭窗口
|
doClose();
|
top.wcp.notify.success("保存成功!");
|
}));
|
}
|
|
function doClose() { //关闭按钮事件
|
var index = top.layer.getFrameIndex(window.name); //获取窗口索引
|
top.layer.close(index);
|
}
|
</script>
|
</html>
|