2018-06-03 22:26:41 +08:00

64 lines
3.3 KiB
Plaintext

<%@page import="com.amarsoft.are.util.json.JSONObject"%>
<%@page import="com.amarsoft.are.util.json.JSONDecoder"%>
<%@ page language="java" contentType="text/html;charset=GBK" %><%@
page import="java.util.*"%><%@
page import="java.net.URLDecoder"%><%@
page import="com.amarsoft.are.*"%><%@
page import="com.amarsoft.are.jbo.*"%><%@
page import="com.amarsoft.awe.dw.handler.BusinessProcessData"%><%@
page import="com.amarsoft.awe.dw.ui.actions.IDataAction"%><%@
page import="com.amarsoft.awe.dw.ui.list.NewListAction"%><%@
page import="com.amarsoft.awe.dw.ui.util.PublicFuns"%><%@
page import="com.amarsoft.awe.dw.ui.util.ConvertXmlAndJava"%><%@
page import="com.amarsoft.awe.dw.ui.util.Request"%><%@
page import="com.amarsoft.awe.dw.ui.htmlfactory.*"%><%@
page import="com.amarsoft.awe.dw.ui.htmlfactory.imp.*"%><%
String sJbo = Request.GBKSingleRequest("SERIALIZED_JBO",request);
String sASD = Request.GBKSingleRequest("SERIALIZED_ASD",request);
String noRequiredColArray = Request.GBKSingleRequest("noRequiredColArray",request);
String noRequiredCols = URLDecoder.decode(noRequiredColArray,"UTF-8");
String[] colArray = noRequiredCols.split(",");
List<JSONObject> nrCols = new ArrayList<JSONObject>();//by zhulh对指定行的指定字段动态排除字段必填校验
for(String c:colArray){
JSONObject json = JSONDecoder.decode(c);
if(json != null){
nrCols.add(json);
}
}
sASD = sASD.replace("%7C", "|");
//String sPostEvents = Request.GBKSingleRequest("POST_EVENTS",request);//前台执行脚本
String sCurPage = Request.GBKSingleRequest("curpage",request);
int iCurPage = 0;
if(sCurPage.matches("[0-9]+"))
iCurPage = Integer.parseInt(sCurPage);
//String sTableIndex = Request.GBKSingleRequest("index",request);
String sAction = Request.GBKSingleRequest("SYS_ACTION",request);//获得动作名称
String sSelectedRows = Request.GBKSingleRequest("SelectedRows",request);
//request.setCharacterEncoding("UTF-8");
String sUpdatedFields = request.getParameter("UPDATED_FIELD");//获得保存过的字段
if(sUpdatedFields==null)sUpdatedFields = "";
//System.out.println("UPDATED_FIELD0 = " + sUpdatedFields);
sUpdatedFields= URLDecoder.decode(sUpdatedFields,"UTF-8");
//System.out.println("UPDATED_FIELD1 = " + sUpdatedFields);
if(sUpdatedFields.equals("<root></root>"))sUpdatedFields="";
//sUpdatedFields = new String(sUpdatedFields.getBytes("GBK"),"UTF-8");
//System.out.println("UPDATED_FIELD1 = " + sUpdatedFields);
BusinessProcessData bpData = new BusinessProcessData();
bpData.SelectedRows = PublicFuns.getIntArrays(sSelectedRows);
try{
sUpdatedFields = sUpdatedFields.replaceAll("⊙a≌t□","+");
IDataAction action = new NewListAction(request,sUpdatedFields,nrCols);//重写校验方法,增加可以对某行进行字段校验
boolean result = action.run(sJbo,sASD,sAction,bpData);
System.out.println(action.getErrors());
if(result){
out.println("{status:'success',resultInfo:'"+ com.amarsoft.awe.dw.ui.util.WordConvertor.convertJava2Js(action.getResultInfo()) +"'}");
}else{
out.println("{status:'fail',errors:'"+ com.amarsoft.awe.dw.ui.util.WordConvertor.convertJava2Js(action.getErrors()) +"'}");
}
}catch(Exception e){
e.printStackTrace();
//out.println("<script>alert('系统错误:"+ e.toString() +"');</script>");
out.println("{status:'fail',errors:'"+ com.amarsoft.awe.dw.ui.util.WordConvertor.convertJava2Js(e.toString()) +"'}");
ARE.getLog().error("系统错误" + e.toString());
}
%>