oa_document_sendadd.jsp

来自「java开发的办公系统 1.系统管理 (地区管理,部门管理,菜单管理,用户管理」· JSP 代码 · 共 349 行

JSP
349
字号
<%@ include file="../../include/configuration.jsp"%>
<%@ page import="com.vere.oa.document.bean.*"%>
<%@ page import="com.vere.oa.document.item.*"%>

<%@ page contentType="text/html; charset=gb2312" %>
<%
    Oa_document_sendBean bean=new Oa_document_sendBean();
    ParameterUtils.setCharacterEncoding(request);
    String status=ParameterUtils.getString(request,"status");
    String message="";
    //add
    if(status.equals("add"))
    {
	  String workflow_id=ParameterUtils.getString(request,"workflow_id");
	  //取得工作流的状态list
	  Workflow_stateBean stateBean =new Workflow_stateBean();
	  List stateList=stateBean.findByWorkflow_id(workflow_id);
	  //取得开始状态
	  Workflow_stateItem start_stateItem=new Workflow_stateItem();
	  for(int i=0;i<stateList.size();i++)
	  {
	  	Workflow_stateItem stateItem=(Workflow_stateItem)stateList.get(i);
		if(stateItem.getState_type().equals("0"))
			start_stateItem=stateItem;
	  }
	  
	  //取得工作流的流转线
	  Workflow_lineBean lineBean=new Workflow_lineBean();
	  Workflow_lineItem lineItem =new Workflow_lineItem();
	  lineItem.setWorkflow_id(workflow_id);
	  List lineList=lineBean.find(lineItem);
	  
	  
      message=ParameterUtils.getString(request,"message");
      String title=ParameterUtils.getString(request,"title");
      String is_edit_flow=ParameterUtils.getString(request,"is_edit_flow");
	  SessionFactory sessionFactory=(SessionFactory)session.getAttribute("sessionFactory");
	  Manager_usersItem usersItem=sessionFactory.getManager_usersItem();
      String create_user=usersItem.getUsername();
      String create_name=usersItem.getName();
      String create_date=DateUtils.getDateTime();
      String modify_user=ParameterUtils.getString(request,"modify_user");
      String modify_name=ParameterUtils.getString(request,"modify_name");
      String modify_time=ParameterUtils.getString(request,"modify_time");
      String temple_file=ParameterUtils.getString(request,"temple_file");
	  String fileExt=ParameterUtils.getString(request,"fileExt");
	  String addtype=ParameterUtils.getString(request,"addtype");
      String document_status="1";
	  if(addtype.equals("send")) 
	  	document_status="2";
      String workflow_state_id=start_stateItem.getId();
	  if(workflow_state_id.equals("")) workflow_state_id="0";
      String workflow_state_name=start_stateItem.getName();
      String approval_type=start_stateItem.getApproval_type();
	   if(approval_type.equals("")) approval_type="0";
      String appraisal_method=start_stateItem.getAppraisal_method();
	  if(appraisal_method.equals("")) appraisal_method="0";
      String approval_user=start_stateItem.getApproval_user();
      String approval_name=start_stateItem.getApproval_name();
      String approval_departmentid=start_stateItem.getApproval_departmentid();
	  if(approval_departmentid.equals("")) approval_departmentid="0";
      String approval_department=start_stateItem.getApproval_department();
      String receive_user=start_stateItem.getReceive_user();
      String receive_name=start_stateItem.getReceive_name();
	  String func_id=start_stateItem.getFunc_id();
	  String state_type=start_stateItem.getState_type();
      Oa_document_sendItem item=new Oa_document_sendItem();
      item.setTitle(title);
      item.setWorkflow_id(workflow_id);
      item.setIs_edit_flow(is_edit_flow);
      item.setCreate_user(create_user);
      item.setCreate_name(create_name);
      item.setCreate_date(create_date);
      item.setModify_user(modify_user);
      item.setModify_name(modify_name);
      item.setModify_time(modify_time);
      item.setTemple_file(temple_file);
      item.setDocument_status(document_status);
      item.setFileExt(fileExt);
      item.setWorkflow_state_id(workflow_state_id);
      item.setWorkflow_state_name(workflow_state_name);
      item.setApproval_type(approval_type);
      item.setAppraisal_method(appraisal_method);
      item.setApproval_user(approval_user);
      item.setApproval_name(approval_name);
      item.setApproval_departmentid(approval_departmentid);
      item.setApproval_department(approval_department);
      item.setReceive_user(receive_user);
      item.setReceive_name(receive_name);
	  item.setFunc_id(func_id);
	  item.setState_type(state_type);
      int keyId=bean.addItemAndMaxId(item); 
	  if(keyId>0)
	  {
		  //创建对应工作流的流转状态xml
			String srcWorkflow_statepath=Configuration.getInstance().xmlUpload+"/workflow_xml/workflow_state.xml";
			String desWorkflow_statepath=Configuration.getInstance().xmlUpload+"/oa_document_send_xml/workflow_state"+keyId+".xml";
			if(!CFile.fileExists(desWorkflow_statepath)){
				CFile.copyFile(srcWorkflow_statepath,desWorkflow_statepath);
			}
			
			String srcWorkflow_linepath=Configuration.getInstance().xmlUpload+"/workflow_xml/workflow_line.xml";
			String desWorkflow_linepath=Configuration.getInstance().xmlUpload+"/oa_document_send_xml/workflow_line"+keyId+".xml";
			if(!CFile.fileExists(desWorkflow_linepath)){
				CFile.copyFile(srcWorkflow_linepath,desWorkflow_linepath);
			}
			//往创建的对应工作流的流转状态xml填入数据
			ArrayList stateXmlList = new ArrayList();
			 for(int i=0;i<stateList.size();i++){
					Workflow_stateItem stateItem=(Workflow_stateItem)stateList.get(i);
					stateItem.setWorkflow_id(Integer.toString(keyId));
					stateXmlList.add(stateItem);
			}
			Workflow_stateXmlBean stateXmlBean=new Workflow_stateXmlBean(desWorkflow_statepath); 
			stateXmlBean.AddXML(stateXmlList);
			
			ArrayList lineXmlList = new ArrayList();
			 for(int i=0;i<lineList.size();i++){
					lineItem=(Workflow_lineItem)lineList.get(i);
					lineItem.setWorkflow_id(Integer.toString(keyId));
					lineXmlList.add(lineItem);
			}
			Workflow_lineXmlBean lineXmlBean=new Workflow_lineXmlBean(desWorkflow_linepath); 
			lineXmlBean.AddXML(lineXmlList);
			response.sendRedirect("oa_document_send_transact.jsp");
			 return;
		}
		else
		{
			message="2";
		}
    }
%>
<html>
<head>
<title><%=titleName%></title>
<meta http-equiv="Content-Type" content="text/html; charset=gb2312">
<link href="../../css/css.css" rel="stylesheet" type="text/css">
<script language="javascript" src="../../js/check.js"></script>
<link href="../../css/date.css" rel="stylesheet" type="text/css">
<script src="../../js/ShowDate.js"></script>
<script language="javascript">
    init();
</script>
</head>
<script language="javascript">
	function back()
	{
		location="oa_document_send.jsp";
	}

	function Check(addtype)
	{
		var form=form1;
		if(form.title.value=="")
		{
			alert("请输入主题!");
			form.title.focus();
			return;
		}
		if(form.workflow_id.value=="")
		{
			alert("请选择流程!");
			form.workflow_id.focus();
			return;
		}
		/*if(form.temple_file.value=="")
		{
			alert("请添加表单!");
			form.temple_file.focus();
			return;
		}*/
		form.action="oa_document_sendadd.jsp?status=add&addtype="+addtype;
		form.message.value=1;
		form.submit();
	}
	
	function winOpen()
	{
		var form=form1;
		if(form.workflow_id.value=="")
		{
			alert("请选择流程!");
			form.workflow_id.focus();
			return;
		}
		if(form.is_workflow_temple_file.checked)
		{
			win_form_open("oa_document_form.jsp?workflow_id="+form.workflow_id.value+"&is_workflow_temple_file=1");
		}
		else
		{
			win_form_open("oa_document_form.jsp?workflow_id="+form.workflow_id.value+"&is_workflow_temple_file=2");
		}
	}
</script>
<body >
<form action=""  method="post"  name="form1" >
	<table class="firsttable">
		<tr>
			<td align="center" valign="top">
				<table class="centertable">
					<tr>
						<td></td>
					</tr>
					<tr>
						<td align="center" class="addborder">
							<table  class="addTable">
								<tr align="center" >
									<td colspan="2">
                  						<font  class="message">
										<%
											if(message.equals("1"))
											{
												out.println("拟稿添加成功!");
											}
											if(message.equals("2"))
											{
												out.println("拟稿添加失败!");
											}
										%>
										</font>									</td>
								</tr>
								<tr >
									<td >主题:</td>
									<td ><input name="title" type="text" id="title" ></td>
								</tr>
								<tr >
								  <td >流程类别:</td>
								  <td ><select name="workflow_category_id" id="workflow_category_id"  onChange="select_workflow_category_id(this)">
                                    <option value=''></option>
                                    <%
										String workflow_category_id=ParameterUtils.getString(request.getParameter("workflow_category_id"));
										Workflow_categoryBean categoryBean=new Workflow_categoryBean();
										out.print(categoryBean.toHtmlOptionMenu(workflow_category_id));
									%>
                                  </select></td>
							  </tr>
								<tr >
									<td >流程:</td>
									<td >
									<select name="workflow_id" id="workflow_id">
								      </select>
									<input name="Submit332" style="width:80px;" type="button" class="button" value="查看流程图" onClick="javascript:workflowlook()">								    </td>
									<script language="javascript">							
										function workflowlook()
										{
											var form=form1;
											if(form.workflow_id.selectedIndex<0) return;
											var url="../public/workflowlook.jsp?workflow_id="+form.workflow_id.options[form.workflow_id.selectedIndex].value;
											open(url,'win','scrollbars=no,width=700,height=500,resizable=no,left=200,top=100,resizable=false');
										}
									</script>
								</tr>
								<tr >
									<td >是否允许修改流程:</td>
									<td >
									<%
										String  is_edit_flow="1";
										if(!ParameterUtils.getString(request,"is_edit_flow").equals(""))
											is_edit_flow=ParameterUtils.getString(request,"is_edit_flow");
										Oa_dictionaryBean oa_dictionaryBean=new Oa_dictionaryBean();
										List oa_dictionaryList=oa_dictionaryBean.findByNum("5");
										Iterator oa_dictionaryE=oa_dictionaryList.iterator();
										while(oa_dictionaryE.hasNext()){
											Oa_dictionaryItem oa_dictionaryItem=(Oa_dictionaryItem)oa_dictionaryE.next();
											if(is_edit_flow.equals(oa_dictionaryItem.getCode()))
												out.println("<input type='radio' name='is_edit_flow' value='"+oa_dictionaryItem.getCode()+"' checked>"+oa_dictionaryItem.getCode_name());
											else
												out.println("<input type='radio' name='is_edit_flow' value='"+oa_dictionaryItem.getCode()+"' >"+oa_dictionaryItem.getCode_name());
										}
									%>									</td>
								</tr>
								<tr >
									<td >表单文件:</td>
								  <td ><input style="width:80px;" type="button" class="button" value="表单管理" onClick="javascript:winOpen();">
									<input type="hidden" name="temple_file" id="temple_file" >
									<input name="is_workflow_temple_file" type="checkbox" id="is_workflow_temple_file" value="1">
									是否使用流程模板表单</td>
								</tr>
								<script language='javascript'>
								function selectFile()
								{
									var url="../public/fileupload.jsp?dir_name=oa_document_send&file_name=fileExt";
									open(url,'win','scrollbars=no,width=600,height=400,resizable=no,left=200,top=100,resizable=false');
								}
								</script>
								<tr >
									<td >参考附件:</td>
									<td ><textarea name="fileExt" cols="70" rows="5" id="fileExt" readonly="readonly"></textarea> 
									<input name="Buttonfile" type="button" class="button" onClick="selectFile()" value="上传"></td>
								</tr>
								<tr >
								  <td colspan="2" align="center">
										<input name="Button" type="button" class="button" onClick="Check('save')" value="保存">
										&nbsp;&nbsp;&nbsp;&nbsp;
										<input name="Button2" type="button" class="button" onClick="Check('send')" value="发送"></td>
								</tr>
							</table>
						</td>
					</tr>
					<tr>
						<td></td>
					</tr>
				</table>
			</td>
		</tr>
	</table>
<input type="hidden" name="status" >
<input type="hidden" name="message" >
</form>
</body>
</html>
<script language="javascript">
function select_workflow_category_id(obj)
{ //把产品的类别列出
	var f2Array = new Array();
	<%
		List categoryList=categoryBean.find();
		WorkflowBean workflowBean=new WorkflowBean();
		List workflowList=workflowBean.find();
		for(int i=0; categoryList!=null&&i<categoryList.size(); i++)
		{
			Workflow_categoryItem categoryItem=(Workflow_categoryItem)categoryList.get(i);
			out.print("f2Array["+categoryItem.getId()+"] = new Array();\n");
			int j = 0;
			for(int k=0; workflowList!=null&&k<workflowList.size(); k++)
			{
				WorkflowItem workflowItem=(WorkflowItem)workflowList.get(k);
				if(workflowItem.getWorkflow_category_id().equals(categoryItem.getId()))
				{
					out.print( "f2Array["+categoryItem.getId()+"]["+j+"] = new Option();\n");
					out.print( "f2Array["+categoryItem.getId()+"]["+j+"].value = '"+workflowItem.getId()+"';\n");
					out.print( "f2Array["+categoryItem.getId()+"]["+j+"].text = '"+workflowItem.getName()+"';\n");
					j++;
				}
				
			}
		}
	%>
	var form = form1;
	var i = eval(obj.value);
	form.workflow_id.length = 0;
	for(var j=0; j<f2Array[i].length; j++)
	{
		form.workflow_id.options[form.workflow_id.length] = f2Array[i][j];
	}
}
</script>

⌨️ 快捷键说明

复制代码Ctrl + C
搜索代码Ctrl + F
全屏模式F11
增大字号Ctrl + =
减小字号Ctrl + -
显示快捷键?