ModeDetailImport.jsp 12 KB
<%@ page language="java" contentType="text/html; charset=UTF-8" %>
<%@ page import="weaver.general.Util" %>
<%@ page import="java.util.ArrayList" %>
<%@ page import="weaver.file.*," %>
<%@ page import="com.weaver.formmodel.util.StringHelper"%>
<jsp:useBean id="ExcelFile" class="weaver.file.ExcelFile" scope="page"/>
<jsp:useBean id="rs" class="weaver.conn.RecordSet" scope="page"/>
<jsp:useBean id="ModeDetailImport" class="weaver.formmode.view.ModeDetailImport" scope="page"/>
<jsp:useBean id="FieldInfo" class="weaver.formmode.data.FieldInfo" scope="page"/>
<%@ include file="/systeminfo/init_wev8.jsp" %>
<%@ taglib uri="/WEB-INF/weaver.tld" prefix="wea"%>
<HTML>
<HEAD>
    <LINK REL=stylesheet type=text/css HREF=/css/Weaver_wev8.css>
    <SCRIPT language="javascript" src="/js/weaver_wev8.js"></script>
    <script>
    var parentWin = null;
	var dialog = null;
	try{
		parentWin = parent.parent.getParentWindow(parent);
		dialog = parent.parent.getDialog(parent);
	}catch(e){}
    </script>
</HEAD>
<body>
<%
    String imagefilename = "/images/hdMaintenance_wev8.gif";
    String titlename = SystemEnv.getHtmlLabelName(26255, user.getLanguage());//明细导入
    String needfav = "";
    String needhelp = "";
    
    int modeId = Util.getIntValue(request.getParameter("modeId"),0);
    int billid = Util.getIntValue(request.getParameter("billid"),0);
    String fromSave = Util.null2String(request.getParameter("fromSave"));
    String modename = "";
    int formId = 0;
    if(modeId > 0){
    	rs.executeSql("select * from modeinfo where Id="+modeId);
    	if(rs.next()){
    		formId = rs.getInt("formid");
    		modename = Util.null2String(rs.getString("modename"));
    		
    		ArrayList editfields=new ArrayList();//可编辑字段
    		
    		rs.executeSql("select fieldid from modeformfield where modeid="+modeId+" and type=2 and isedit=1");
    		while(rs.next()){
    			editfields.add("field"+rs.getString("fieldid"));
    		}
    		ExcelSheet es = null;
    		ExcelFile.init() ;
    		ExcelFile.setFilename(modename) ;
    		ExcelStyle ess = ExcelFile.newExcelStyle("Header") ;
    		ess.setGroundcolor(ExcelStyle.WeaverHeaderGroundcolor) ;
            ess.setFontcolor(ExcelStyle.WeaverHeaderFontcolor) ;
            ess.setFontbold(ExcelStyle.WeaverHeaderFontbold) ;
            ess.setAlign(ExcelStyle.WeaverHeaderAlign) ;
            
            FieldInfo.setUser(user);
            FieldInfo.GetDetailTableField(formId, 1, user.getLanguage());
            ArrayList detailtablenames = FieldInfo.getDetailTableNames();
            ArrayList detailtablefieldids = FieldInfo.getDetailTableFieldIds();
            ArrayList detailtablefieldlabels = FieldInfo.getDetailTableFieldNames();
            ArrayList detailtablefieldnames = FieldInfo.getDetailDBFieldNames();
            ArrayList detailtablefieldtypes = FieldInfo.getDetailFieldTypes();
            ArrayList detailtablefieldhtmltypes = FieldInfo.getDetailFieldHtmlTypes();
            ArrayList detailtablefielddbtypes = FieldInfo.getDetailFieldDBTypes();
            for(int i=0;i<detailtablefieldlabels.size();i++){
                es = new ExcelSheet() ;   // 初始化一个EXCEL的sheet对象
                ExcelRow er = es.newExcelRow () ;  //准备新增EXCEL中的一行
                
                String detailtablename = Util.null2String(detailtablenames.get(i));
                ArrayList fieldids = (ArrayList)detailtablefieldids.get(i);
                ArrayList fieldlabels = (ArrayList)detailtablefieldlabels.get(i);
                ArrayList fieldnames = (ArrayList)detailtablefieldnames.get(i);
                ArrayList fieldtypes = (ArrayList)detailtablefieldtypes.get(i);
                ArrayList fieldhtmltypes = (ArrayList)detailtablefieldhtmltypes.get(i);
                ArrayList fielddbtypes = (ArrayList)detailtablefielddbtypes.get(i);
                boolean hasfield=false;
                for(int j=0;j<fieldids.size();j++){
                	String fieldid = Util.null2String(fieldids.get(j));
                	String fieldhtmltype = Util.null2String(fieldhtmltypes.get(j));
               		if("6".equals(fieldhtmltype)) continue;
                    if(!editfields.contains("field"+fieldid)) continue;
                    //以下为EXCEL添加多个列
                    es.addColumnwidth(6000);
                    if(!hasfield){
                    	er.addStringValue(SystemEnv.getHtmlLabelName(81287, user.getLanguage()),"Header");
                    }
                    er.addStringValue((String)fieldlabels.get(j),"Header");
                    hasfield=true;
                }
                if(hasfield){
                    es.addExcelRow(er) ;   //加入一行
					if(!"1".equals(fromSave)){
						ModeDetailImport.appendDetailDataToExcelSheet(ExcelFile, es, modeId, billid, detailtablename, fieldids, fieldnames, fieldtypes, fieldhtmltypes, fielddbtypes, user.getLanguage(),editfields);
					}
                    ExcelFile.addSheet(SystemEnv.getHtmlLabelName(17463, user.getLanguage())+(i+1), es) ; //为EXCEL文件插入一个SHEET
                }
            }
    	}
    	request.getSession(true).setAttribute("ExcelFile", ExcelFile);
    	request.getSession(true).setAttribute("ExcelFile_DetailImport_"+modeId, ExcelFile);
    }
%>

<%@ include file="/systeminfo/TopTitle_wev8.jsp" %>
<%@ include file="/systeminfo/RightClickMenuConent_wev8.jsp" %>
<%
    RCMenu += "{" + SystemEnv.getHtmlLabelName(26255, user.getLanguage()) + ",javascript:onSave(this),_self} ";//明细导入
    RCMenuHeight += RCMenuHeightStep;

    RCMenu += "{" + SystemEnv.getHtmlLabelName(309, user.getLanguage()) + ",javascript:onClose(),_self} ";//关闭
    RCMenuHeight += RCMenuHeightStep;
%>
<%@ include file="/systeminfo/RightClickMenu_wev8.jsp" %>
<jsp:include page="/systeminfo/commonTabHead.jsp">
   <jsp:param name="mouldID" value="workflow"/>
   <jsp:param name="navName" value="<%=SystemEnv.getHtmlLabelName(26255, user.getLanguage()) %>"/>
</jsp:include>
<table id="topTitle" cellpadding="0" cellspacing="0">
	<tr>
		<td class="rightSearchSpan" style="text-align:right;">
			<input type="button" class="e8_btn_top" value="<%=SystemEnv.getHtmlLabelName(26255,user.getLanguage()) %>" onclick="javascript:onSave(this)"/>				
			<span title="<%=SystemEnv.getHtmlLabelName(81804,user.getLanguage())%>" class="cornerMenu"></span><!-- 菜单 -->
		</td>
	</tr>
</table>
<div id="content">
	<iframe id="ExcelOut" name="ExcelOut" border=0 frameborder=no noresize=NORESIZE height="0px" width="0px"></iframe>
	<form name="detailimportform" method="post" action="ModeDetailImportOperation.jsp" enctype="multipart/form-data">
		<input type=hidden name="modeId" value="<%=modeId%>">
		<input type=hidden name="formId" value="<%=formId%>">
		<input type=hidden name="billid" value="<%=billid%>">
		<input type="hidden" name="fromSave" value="<%=fromSave%>">
		<input type="hidden" value="save" name="src">
		<wea:layout>
			<wea:group context="<%=SystemEnv.getHtmlLabelNames("258,64",user.getLanguage())%>">
				<wea:item>1<%=SystemEnv.getHtmlLabelName(125163, user.getLanguage()) %><%=SystemEnv.getHtmlLabelName(258, user.getLanguage())%><%=SystemEnv.getHtmlLabelName(64, user.getLanguage())%></wea:item>
				<wea:item><a href="/weaver/weaver.file.ExcelOut?excelfile=ExcelFile_DetailImport_<%=modeId%>" style="color:blue;"><%=modename%></a></wea:item>
				<wea:item>2<%=SystemEnv.getHtmlLabelName(125163, user.getLanguage()) %><%=SystemEnv.getHtmlLabelName(16630, user.getLanguage())%></wea:item>
				<wea:item>
				<input type="file" name="excelfile" size="35"  style="display:none;"  onchange="$('#filepath').html(this.value);" />
				<input type="button" id="filebutton" value="<%=SystemEnv.getHtmlLabelName(132239, user.getLanguage())%>" onclick="excelfile.click()" style="height:22px;width:65px;">
				<span id="filepath"><%=SystemEnv.getHtmlLabelName(132240, user.getLanguage())%></span>
				</wea:item>
			</wea:group>
			<wea:group context="<%=SystemEnv.getHtmlLabelNames("27577",user.getLanguage())%>">
				<wea:item attributes="{colspan:2}">1<%=SystemEnv.getHtmlLabelName(82174, user.getLanguage()) %><%=SystemEnv.getHtmlLabelName(27578, user.getLanguage())%><a href="/weaver/weaver.file.ExcelOut?excelfile=ExcelFile_DetailImport_<%=modeId%>" style="color:blue;"><%=modename%></a><%=SystemEnv.getHtmlLabelName(27579, user.getLanguage())%></wea:item>
				<wea:item attributes="{colspan:2}">2<%=SystemEnv.getHtmlLabelName(82174, user.getLanguage()) %><%=SystemEnv.getHtmlLabelName(27580, user.getLanguage())%><%=SystemEnv.getHtmlLabelName(26255, user.getLanguage())%></wea:item>
			</wea:group>
			<wea:group context="<%=SystemEnv.getHtmlLabelName(27581, user.getLanguage())%>">
				<wea:item attributes="{colspan:2}">1<%=SystemEnv.getHtmlLabelName(82174, user.getLanguage()) %><%=SystemEnv.getHtmlLabelName(27582, user.getLanguage())%></wea:item>
				<wea:item attributes="{colspan:2}">2<%=SystemEnv.getHtmlLabelName(82174, user.getLanguage()) %><%=SystemEnv.getHtmlLabelName(27583, user.getLanguage())%></wea:item>
				<wea:item attributes="{colspan:2}">3<%=SystemEnv.getHtmlLabelName(82174, user.getLanguage()) %><%=SystemEnv.getHtmlLabelName(27584, user.getLanguage())%></wea:item>
				<wea:item attributes="{colspan:2}">4<%=SystemEnv.getHtmlLabelName(82174, user.getLanguage()) %><%=SystemEnv.getHtmlLabelName(27585, user.getLanguage())%></wea:item>
				<wea:item attributes="{colspan:2}">5<%=SystemEnv.getHtmlLabelName(82174, user.getLanguage()) %><%=SystemEnv.getHtmlLabelName(27586, user.getLanguage())%></wea:item>
				<wea:item attributes="{colspan:2}">6<%=SystemEnv.getHtmlLabelName(82174, user.getLanguage()) %><%=SystemEnv.getHtmlLabelName(27587, user.getLanguage())%></wea:item>
				<wea:item attributes="{colspan:2}">7<%=SystemEnv.getHtmlLabelName(82174, user.getLanguage()) %><%=SystemEnv.getHtmlLabelName(82723, user.getLanguage())%></wea:item>
				<wea:item attributes="{colspan:2}">8<%=SystemEnv.getHtmlLabelName(82174, user.getLanguage()) %><%=SystemEnv.getHtmlLabelName(27589, user.getLanguage())%></wea:item>
				<wea:item attributes="{colspan:2}">9<%=SystemEnv.getHtmlLabelName(82174, user.getLanguage()) %><%=SystemEnv.getHtmlLabelName(27590, user.getLanguage())%><%=SystemEnv.getHtmlLabelName(126300, user.getLanguage())%></wea:item>
				<wea:item attributes="{colspan:2}">10<%=SystemEnv.getHtmlLabelName(82174, user.getLanguage()) %><%=SystemEnv.getHtmlLabelName(126320, user.getLanguage())%></wea:item>
				<wea:item attributes="{colspan:2}">11<%=SystemEnv.getHtmlLabelName(82174, user.getLanguage()) %><%=SystemEnv.getHtmlLabelName(126429, user.getLanguage())%></wea:item>
				<wea:item attributes="{colspan:2}">12<%=SystemEnv.getHtmlLabelName(82174, user.getLanguage()) %><%=SystemEnv.getHtmlLabelName(130475, user.getLanguage())%></wea:item>
				<wea:item attributes="{colspan:2}">13<%=SystemEnv.getHtmlLabelName(82174, user.getLanguage()) %><span style="color:red;font-weight:bold;Letter-spacing:1px;"><%=SystemEnv.getHtmlLabelName(126435, user.getLanguage())%></span></wea:item>
				<wea:item attributes="{colspan:2}">14<%=SystemEnv.getHtmlLabelName(82174, user.getLanguage()) %><span style="color:red;font-weight:bold;Letter-spacing:1px;"><%=SystemEnv.getHtmlLabelName(128659, user.getLanguage())%></span></wea:item>
				<wea:item attributes="{colspan:2}">15<%=SystemEnv.getHtmlLabelName(82174, user.getLanguage()) %><span style="color:red;font-weight:bold;Letter-spacing:1px;"><%=SystemEnv.getHtmlLabelName(127710, user.getLanguage())%></span></wea:item>
			</wea:group>
		</wea:layout>
</form>					
</div>

<script language=javascript>
	function onSave(obj) {
        var fileName=$G("excelfile").value;
		if(fileName!=""&&fileName.length>4){
			if(fileName.substring(fileName.length-4).toLowerCase()!=".xls"){
				alert('<%=SystemEnv.getHtmlLabelName(31460,user.getLanguage())%>');//必须上传.xls格式的文件
				return;
			}
			$G("detailimportform").submit();//上传文件
            obj.disabled=true;
		}else{
            alert('<%=SystemEnv.getHtmlLabelName(20890,user.getLanguage())%>');//必须上传Excel格式的文件
        }
    }

    function onClose() {
        window.parent.close();
    }
</script>
<jsp:include page="/systeminfo/commonTabFoot.jsp"></jsp:include>
</body>
</html>