AppDetailOperation.jsp 8.63 KB
<%@ page buffer="4kb" autoFlush="true" errorPage="/notice/error.jsp" %>
<%@ page import="weaver.general.Util" %>
<%@ page import="java.util.*" %>
<%@ page import="weaver.file.FileUpload" %>
<%@page import="java.io.File"%>
<%@page import="weaver.weaversso.ExcelUtil"%>
<%@page import="weaver.file.FileUploadToPath"%>
<%@page import="java.util.regex.Pattern"%>
<%@page import="java.util.regex.Matcher"%>
<jsp:useBean id="SysMaintenanceLog" class="weaver.systeminfo.SysMaintenanceLog" scope="page" />
<%@ page language="java" contentType="text/html; charset=UTF-8" %> <%@ include file="/systeminfo/init_wev8.jsp" %>
<jsp:useBean id="RecordSet" class="weaver.conn.RecordSet" scope="page" />
<jsp:useBean id="rs" class="weaver.conn.RecordSet" scope="page" />
<%!
public boolean isIP(String addr)  
{  
	if(addr==null||"".equals(addr)){
	    return true;  
	}
    if(addr.length() < 7 || addr.length() > 15 || "".equals(addr))  
    {  
        return false;  
    }  
    /** 
     * 判断IP格式和范围 
     */  
     String rexp = "^(25[0-5]|2[0-4][0-9]|[0-1]{1}[0-9]{2}|[1-9]{1}[0-9]{1}|[1-9])\\.(25[0-5]|2[0-4][0-9]|[0-1]{1}[0-9]{2}|[1-9]{1}[0-9]{1}|[1-9]|0)\\.(25[0-5]|2[0-4][0-9]|[0-1]{1}[0-9]{2}|[1-9]{1}[0-9]{1}|[1-9]|0)\\.(25[0-5]|2[0-4][0-9]|[0-1]{1}[0-9]{2}|[1-9]{1}[0-9]{1}|[0-9])$";  

    Pattern pat = Pattern.compile(rexp);    

    Matcher mat = pat.matcher(addr);    

    boolean ipAddress = mat.find();  

    return ipAddress;  
}  

%>
<%
if(!HrmUserVarify.checkUserRight("SystemSetEdit:Edit", user)){
	  response.sendRedirect("/notice/noright.jsp");
	  return;
}
//FileUploadToPath fu = new FileUploadToPath(request) ; 

FileUpload fu = new FileUpload(request);
String isDialog = Util.null2String(fu.getParameter("isdialog"));
String backto = Util.null2String(fu.getParameter("backto"));//返回类型
String operation = Util.fromScreen(fu.getParameter("operation"),user.getLanguage());
String isuse = Util.fromScreen(fu.getParameter("isuse"),user.getLanguage());
String appid =fu.getParameter("appid");
String appname = Util.fromScreen(fu.getParameter("appname"),user.getLanguage());
String allow_ip = Util.fromScreen(fu.getParameter("allow_ip"),user.getLanguage());
String definebroswerType = Util.fromScreen(fu.getParameter("definebroswerType"),user.getLanguage());


String account_rules = Util.fromScreen(fu.getParameter("account_rules"),user.getLanguage());
//FileUploadToPath fu2 = new FileUploadToPath(fu.getRequest()) ; 
int userid = user.getUID();
String createdate = TimeUtil.getCurrentTimeString();
char separator = Util.getSeparator() ;
String err="";
if(operation.equals("add")){
	
    boolean isip=true;
    String ips=allow_ip;
    String[] iplist=ips.split(",");
    for(String ip:iplist){
    	if(!isIP(ip)){
    		isip=false;
    		break;
    	}
 
    }

	
	RecordSet.execute("select 1 from weaver_sso_app  where appid= '"+appid+"'");
	if(RecordSet.next()){
		 err="11";
	} else if (!isip){
		 err="12";
	}else{
	RecordSet.writeLog("insert into weaver_sso_app(isuse,appid,appname,allow_ip,account_rules,definebroswerType) values('"+isuse+"','"+appid+"','"+appname+"','"+allow_ip+"','"+account_rules+"','"+definebroswerType+"')");
	RecordSet.executeSql("insert into weaver_sso_app(isuse,appid,appname,allow_ip,account_rules,definebroswerType) values('"+isuse+"','"+appid+"','"+appname+"','"+allow_ip+"','"+account_rules+"','"+definebroswerType+"')");
	int a=0;
	byte[] appidb=appid.getBytes();
	for(byte b:appidb ){
		a+=b;
	}
	  SysMaintenanceLog.resetParameter();
	     SysMaintenanceLog.setRelatedId(a);
	     SysMaintenanceLog.setRelatedName(appname);
	     SysMaintenanceLog.setOperateType("1");
	     SysMaintenanceLog.setOperateDesc("insert into weaver_sso_app(isuse,appid,appname,allow_ip,account_rules,definebroswerType) values('"+isuse+"','"+appid+"','"+appname+"','"+allow_ip+"','"+account_rules+"','"+definebroswerType+"')");
	     SysMaintenanceLog.setOperateItem("170");
	     SysMaintenanceLog.setOperateUserid(user.getUID());
	     SysMaintenanceLog.setClientAddress(request.getRemoteAddr());
	     SysMaintenanceLog.setSysLogInfo();
	}
 
}
else if(operation.equals("edit")){
	
	 boolean isip=true;
	    String ips=allow_ip;
	    String[] iplist=ips.split(",");
	    for(String ip:iplist){
	    	if(!isIP(ip)){
	    		isip=false;
	    		break;
	    	}
	 
	    }
	    if (!isip){
			 err="12";
		}else{
			RecordSet.writeLog("update weaver_sso_app set isuse = '"+isuse+"',appname = '"+appname+"',appid = '"+appid+"',allow_ip = '"+allow_ip+"',account_rules = '"+account_rules+"',definebroswerType='"+definebroswerType+"' where appid= '"+appid+"'");
			RecordSet.execute("update weaver_sso_app set isuse = '"+isuse+"',appname = '"+appname+"',appid = '"+appid+"',allow_ip = '"+allow_ip+"',account_rules = '"+account_rules+"',definebroswerType='"+definebroswerType+"' where appid= '"+appid+"'");
			int a=0;
			byte[] appidb=appid.getBytes();
			for(byte b:appidb ){
				a+=b;
			}
			  	 SysMaintenanceLog.resetParameter();
			     SysMaintenanceLog.setRelatedId(a);
			     SysMaintenanceLog.setRelatedName(appname);
			     SysMaintenanceLog.setOperateType("2");
			     SysMaintenanceLog.setOperateDesc("update weaver_sso_app set isuse = '"+isuse+"',appname = '"+appname+"',appid = '"+appid+"',allow_ip = '"+allow_ip+"',account_rules = '"+account_rules+"',definebroswerType='"+definebroswerType+"' where appid= '"+appid+"'");
			     SysMaintenanceLog.setOperateItem("170");
			     SysMaintenanceLog.setOperateUserid(user.getUID());
			     SysMaintenanceLog.setClientAddress(request.getRemoteAddr());
			     SysMaintenanceLog.setSysLogInfo();
	}
}
else if(operation.equals("delete")){
	appid=appid.replace(",","','");
		RecordSet.writeLog("delete from weaver_sso_app  where appid in( '"+appid+"')");
		int a=0;
		byte[] appidb=appid.getBytes();
		for(byte b:appidb ){
			a+=b;
		}
				RecordSet.execute("delete from weaver_sso_app  where appid in( '"+appid+"')");
				  	 SysMaintenanceLog.resetParameter();
				     SysMaintenanceLog.setRelatedId(a);
				     SysMaintenanceLog.setRelatedName(appname);
				     SysMaintenanceLog.setOperateType("3");
				     SysMaintenanceLog.setOperateDesc("delete from weaver_sso_app  where appid in( '"+appid+"')");
				     SysMaintenanceLog.setOperateItem("170");
				     SysMaintenanceLog.setOperateUserid(user.getUID());
				     SysMaintenanceLog.setClientAddress(request.getRemoteAddr());
				     SysMaintenanceLog.setSysLogInfo();
	
}
else if(operation.equals("excelImport")){
 String filename=fu.uploadFiles("excelfile");
	 System.out.println(filename);


	File file =  new File(filename);// new File("C:\\Users\\Administrator\\Desktop\\统一认证开发计划.xlsx");
	 System.out.println(file.getPath()+"/"+file.getName());

	 ArrayList<ArrayList<Object>> e= ExcelUtil.readExcel(  file);
	 for(ArrayList<Object> a:e){
		 String loginid=(String)a.get(0);
		 String apploginid=(String)a.get(1);
		 RecordSet.execute("select * from hrmresource where loginid='"+loginid+"' ");
		 if(RecordSet.next()){
 			String id=RecordSet.getString("id");
			 rs.execute("select * from weaver_sso_user_mapping where appid='"+appid+"' and loginid='"+loginid+"'");
			 if(rs.next()){
				 
				rs.writeLog("update weaver_sso_user_mapping set LoginId= '"+loginid+"',AppLoginId='"+apploginid+"' ,userid='"+id+"' where appid='"+appid+"' and loginid='"+loginid+"'");
				 rs.execute("update weaver_sso_user_mapping set LoginId= '"+loginid+"',AppLoginId='"+apploginid+"' ,userid='"+id+"' where appid='"+appid+"' and loginid='"+loginid+"'");

			 }else{
 				 rs.execute("select max(id ) maxid from weaver_sso_user_mapping ");
				 rs.next();
				String maxid= rs.getString("maxid");
				if("".equals(maxid)){
					maxid="1";
				}else{
					maxid=(Integer.valueOf(maxid)+1)+"";
				}
				rs.writeLog("insert into  weaver_sso_user_mapping ( appid,id,LoginId ,AppLoginId,userid) values('"+appid+"','"+maxid+"','"+loginid+"','"+apploginid+"','"+id+"') ");
				 rs.execute("insert into  weaver_sso_user_mapping (appid, id,LoginId ,AppLoginId,userid) values('"+appid+"','"+maxid+"','"+loginid+"','"+apploginid+"','"+id+"') ");

			 }
		 }
		 System.out.println("");
	 }
	
}
if(!err.equals("")){
	String headerReferer = Util.null2String(request.getHeader("Referer"));
if(headerReferer.indexOf("&err=")>0){
	headerReferer=headerReferer.substring(0,headerReferer.indexOf("&err="));
}
	 response.sendRedirect(headerReferer+"&err="+err+"&"+request.getQueryString());
	 	return;
}
else if("1".equals(isDialog)){
%>
<script language=javascript >
try{
	//var parentWin = parent.getParentWindow(window);
	var parentWin = parent.parent.getParentWindow(parent);
	parentWin.location.href="AppDetail.jsp?backto=<%=backto%>&err=<%=err%>";
	parentWin.closeDialog();
}
catch(e){
}
</script>
<%
}
else
response.sendRedirect("AppDetail.jsp?backto="+backto+"&err="+err);
%>