apzl_leasing/WebContent/Frame/page/tools/dialog/SelectGridDialog.jsp
2018-06-03 22:26:41 +08:00

189 lines
5.1 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.

<%@page import="com.amarsoft.app.base.util.ObjectWindowHelper"%>
<%@page import="com.amarsoft.app.base.businessobject.*"%>
<%@page import="com.amarsoft.are.util.json.JSONObject"%>
<%@page import="com.amarsoft.are.util.json.JSONDecoder"%>
<%@ page contentType="text/html; charset=GBK"%><%@
include file="/Frame/resources/include/include_begin_list.jspf"%><%
String sDoNo = CurPage.getParameter("DoNo");
String sParameters = CurPage.getParameter("Parameters");
String sFields = CurPage.getParameter("Fields");
boolean isMulti = "true".equals(CurPage.getParameter("IsMulti"));
if(sParameters == null) sParameters = "";
String[] tFields = sFields.split("@");
List<String> fields = new ArrayList<String>();
for(String field : tFields){
if(StringX.isSpace(field)) continue;
fields.add(field);
}
ASDataObject doTemp;
ASObjectWindow dwTemp;
try
{
JSONObject inputParameters=JSONDecoder.decode(sParameters);
dwTemp = ObjectWindowHelper.createObjectWindow_List(sDoNo, BusinessObject.createBusinessObject(), CurPage, request);
doTemp=dwTemp.getDataObject();
for (int i = 0; i < inputParameters.getElementTable().size(); ++i) {
com.amarsoft.are.lang.Element localElement = (com.amarsoft.are.lang.Element)inputParameters.getElementTable().get(i);
if (localElement.isNull())
continue;
CurPage.setAttribute(localElement.getName(), (String)localElement.getValue());
}
if(!StringX.isEmpty(CurPage.getParameter("BusinessProcess")))
{
doTemp.setBusinessProcess(CurPage.getParameter("BusinessProcess"));
}
sParameters = "";
}catch(Exception ex)
{
doTemp = new ASObjectModel(sDoNo);
dwTemp = new ASObjectWindow(CurPage ,(ASObjectModel)doTemp,request);
}
int visible = 0;
for(int i = 0; i < doTemp.Columns.size(); i++){
ASColumn col = (ASColumn)doTemp.Columns.get(i);
if("1".equals(col.getAttribute("ColVisible")))
visible++;
}
if(visible < 2) doTemp.setLockCount(0);
if(!isMulti) doTemp.setHtmlEvent("","ondblclick","doSure");
dwTemp.ConvertCode2Title = "1";
dwTemp.MultiSelect = isMulti;
dwTemp.setPageSize(10);
dwTemp.genHTMLObjectWindow(sParameters);
String sDoName = doTemp.getDoName();
if("".equals(sDoName)) sDoName = "<22>б<EFBFBD>ѡ<EFBFBD><D1A1><EFBFBD><EFBFBD>";
String[][] sButtons = {
/*
{"true", "", "Button", "ȷ<><C8B7>", "", "doSure()", "", "", "", ""},
{"true", "", "Button", "<22><><EFBFBD><EFBFBD>", "", "doClear()", "", "", "", ""},
{"true", "", "Button", "ȡ<><C8A1>", "", "doCancel()", "", "", "", ""},
*/
};
%><%@include file="/Frame/resources/include/ui/include_list.jspf"
%><%@page import="com.amarsoft.are.lang.StringX"%>
<script type="text/javascript">
document.onkeydown = function(e){
var e = e || window.event;
if(e.keyCode==27){
parent.doCancel();
}
};
var aSelected = new Array();
function doSure(){
beforeSubmitFilter();
if(aSelected.length < 1){
alert("<22><>ѡ<EFBFBD><D1A1><EFBFBD><EFBFBD>¼<EFBFBD><C2BC>");
return;
}
var sReturn = "";
if(<%=isMulti%>){
for(var i = 0; i < aSelected.length; i++){
if(sReturn != "") sReturn += "~";
for(var j = 0; j < aSelected[i].length; j++){
if(j != 0) sReturn += "@";
sReturn += aSelected[i][j];
}
}
}else{
for(var i = 0; i < aSelected.length; i++){
if(i != 0) sReturn += "@";
sReturn += aSelected[i];
}
}
parent.closeDialog(sReturn);
}
function doClear(){
TableBuilder.SelAll('myiframe0',this);
}
/**
* <20><>ҳ<EFBFBD><D2B3><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
*/
function afterSubmitFilter(){
var rowCount = getRowCount(0);
var rows = new Array();
for(var i = 0; i < rowCount; i++){
if(removeSelected(i)) rows.push(i);
}
selectRows(0, rows);
}
function removeSelected(num){
var sValue = getItemValue(0, num, "<%=fields.get(0)%>");
if(<%=isMulti%>){
for(var i = 0; i < aSelected.length; i++){
if(aSelected[i][0] == sValue){
aSelected.splice(i, 1);
return true;
}
}
}else{
if(aSelected.length > 0 && aSelected[0] == sValue){
lightRow(0, num);
}
}
return false;
}
/**
* <20><>ҳǰ<D2B3><C7B0><EFBFBD><EFBFBD>
*/
function beforeSubmitFilter(){
if(<%=isMulti%>){
var rows = getCheckedRows(0);
for(var i = 0; i < rows.length; i++){
aSelected.push(getValue(rows[i]));
}
}else{
aSelected = getValue(getRow());
}
}
function getValue(iRow){
var aReturn = new Array();
if(iRow < 0) return aReturn;
<%for(String field : fields){%>
aReturn.push(getItemValue(0, iRow, "<%=field%>"));
<%}%>
return aReturn;
}
$(function(){
setDialogTitle("<%=sDoName%>");
var initSelected = "<%=CurPage.getParameter("ASelected")%>".split("@")
//var initSelected = !top.dialogArguments ? "" : top.dialogArguments;
if(typeof initSelected == "string") initSelected = [initSelected];
// <20><>ȫ<EFBFBD><C8AB><EFBFBD><EFBFBD>
for(var i = initSelected.length; i < <%=fields.size()%>; i++){
initSelected[i] = initSelected[0];
}
// û<><C3BB>
if(!initSelected[0]) return;
// aSelected
var aSel0 = initSelected[0].split(",");
for(var i = 0; i < aSel0.length; i++){
var selected = new Array();
aSelected.push(selected);
selected.push(aSel0[i]);
for(var j = 1; j < initSelected.length; j++){
if(!initSelected[j]) selected.push("");
selected.push(initSelected[j].split(",")[i]);
}
}
afterSubmitFilter();
});
</script>
<%@ include file="/Frame/resources/include/include_end.jspf"%>