⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 share.java

📁 一套完整的档案管理系统
💻 JAVA
字号:

package com.stsc.archive.file;

import com.stsc.util.STPoolDataSet;
import com.stsc.util.STResultSet;
import java.text.SimpleDateFormat;
import java.util.Date;
import java.util.Properties;

import com.stsc.archive.file.SaveArchiveAction;

// Referenced classes of package com.stsc.archive:
//            ArchiveList, ArchiveForm, Archive
//共享类,此类中的方法供其他类公用
public class share {
	
	SaveArchiveAction archive=new SaveArchiveAction();
	STPoolDataSet data= new STPoolDataSet();
	STResultSet ms=null;
	
	//2003-06-04 add by liqf
	//生成电子档号的方法
	/*参数说明如下:
		archivetype:为档案种类
		code	   :为文件年代或者工程代号或者载体代号
		r1	       :归入旧卷还是增加新卷的判断标志
		categray   :类目号
		nowyear    :当前年度
		volumnno    :案卷号
	*/
	public String toEcno(String archivetype,String nowyear,String code,String r1,String categray,String volumnno){
		String elecno="";
		int serino=0;
		
		//文书档案电子卷号
		//四级类目号(不足四位用0填补) +工程代号(或年代)外加括号 
		//第三段为:实体卷号(工程代号下流水卷号)
		//第四段为:卷号下流水件号
		//elecno=toEcno_all(r1,nowyear,volumnno,categray))
		if(archivetype.equals("文档") || archivetype.equals("文书档案") || archivetype.equals("会档") || archivetype.equals("会计档案")){
			elecno=toEcno_all(archivetype,r1,nowyear,volumnno,categray);
		}
		
		//科技档案归档号:工程代号(四位)+"-"+类目号(四位)+""+流水卷号(三位)+""+件号(三位)
		if(archivetype.equals("科档") || archivetype.equals("科技档案")){
			//elecno=toEcno_all(archivetype,r1,code,volumnno,categray);
			if(r1.equals("V1")){
				elecno=categray+"("+code+")-"+"001";
			//归入旧卷
			}else{
				if(!volumnno.equals("") && volumnno.length()>=13){
					volumnno=volumnno.substring(10,13);
				}else{
					volumnno="001";
				}
				elecno=categray+"("+code+")-"+volumnno;
			}
			//System.out.println("elecno111=========================="+elecno);
			serino=toTempint(archivetype,nowyear,elecno);
			//System.out.println("elecno111=========================="+serino);
			elecno=elecno+"-"+archive.toFlowno_3(serino);
			//System.out.println("elecno222=========================="+elecno);
		}
		//特种载体档案,
		if(archivetype.equals("特种载体") || archivetype.equals("特种载体档案")){
			//增加新卷
			if(r1.equals("V1")){
				elecno=categray+"("+code+")-"+"001";
			//归入旧卷
			}else{
				System.out.println("volumnno===="+volumnno);
				if(!volumnno.equals("") && volumnno.length()>=13){
					volumnno=volumnno.substring(10,13);
					System.out.println("volumnno===="+volumnno);
				}else{
					volumnno="001";
				}
				System.out.println("volumnno===="+volumnno);
				elecno=categray+"("+code+")-"+volumnno;
			}
			serino=toTempint_one(archivetype,nowyear,elecno);
			elecno=elecno+"-"+toFlowno_2(serino);
			System.out.println("elecno=========================="+elecno);
		}
	
		return elecno;
	}
	
	

	//次方法返回一个整数,当前电子档号的流水号
	public int toTempint(String archivetype,String nowyear,String elecno){
			String sql="";
			int temp_int=0;
			Properties properties = new Properties();
			properties.setProperty("dsJndiName", Constants.DATABASE_KEY);
			String last_maxarchivalcode="";
			String maxarchivalcode="";
			sql="select max(archiveno)  from fArchive where archivetype='"+archivetype+"'";
			sql+=" and FileDate>=cdate('"+nowyear+"-01-01"+"') and FileDate<=cdate('"+nowyear+"-12-31"+"')";
			System.out.println("sql-============"+sql);
			//从数据库中查询出流水号
			ms=data.getSTResult(sql,properties);
			if(ms!=null){
				ms.next();
				maxarchivalcode=ms.getString(1);
				System.out.println("maxarchivalcode=========================="+maxarchivalcode);
				if(!maxarchivalcode.equals("") && maxarchivalcode.length()>=15){
					last_maxarchivalcode=maxarchivalcode.substring(0,14);
					//System.out.println("elecno=========================="+elecno);
					//System.out.println("last_maxarchivalcode11111=========================="+last_maxarchivalcode);
					if(last_maxarchivalcode.equals(elecno)){
						maxarchivalcode=maxarchivalcode.substring(15);
					}else{
						maxarchivalcode="0";
					}
				}else {
					maxarchivalcode="0";
				}
				temp_int=Integer.parseInt(maxarchivalcode);
				
			}
			return temp_int;
	}
			//次方法返回一个整数,当前电子档号的流水号
	public int toTempint_one(String archivetype,String nowyear,String elecno){	
			String sql="";
			int temp_int=0;
			Properties properties = new Properties();
			properties.setProperty("dsJndiName", Constants.DATABASE_KEY);
			String last_maxarchivalcode="";
			String maxarchivalcode="";
			sql="select max(archiveno)  from fArchive where archivetype='"+archivetype+"'";
			sql+=" and FileDate>=cdate('"+nowyear+"-01-01"+"') and FileDate<=cdate('"+nowyear+"-12-31"+"')";
			//从数据库中查询出流水号
			ms=data.getSTResult(sql,properties);
			if(ms!=null){
				ms.next();
				maxarchivalcode=ms.getString(1);
				if(!maxarchivalcode.equals("") && maxarchivalcode.length()>=14){
					last_maxarchivalcode=maxarchivalcode.substring(0,14);
					//System.out.println("elecno============="+elecno);
					//System.out.println("last_maxarchivalcode============="+last_maxarchivalcode);
					if(last_maxarchivalcode.equals(elecno)){
						maxarchivalcode=maxarchivalcode.substring(15);
					}else{
						maxarchivalcode="0";
					}
				}else {
					maxarchivalcode="0";
				}
				System.out.println("maxarchivalcode============="+maxarchivalcode);
				temp_int=Integer.parseInt(maxarchivalcode);
				
			}
			return temp_int;
	}


	//返回完整的电子档号的方法
	public String toEcno_all(String archivetype,String r1,String nowyear,String volumnno,String categray){
		int serino=0;
		String elecno="";
		//增加新卷
			if(r1.equals("V1")){
				elecno=categray+"("+nowyear+")-"+"001";
			//归入旧卷
			}else{
				if(!volumnno.equals("") && volumnno.length()>=13){
					volumnno=volumnno.substring(10,13);
				}else{
					volumnno="001";
				}
				elecno=categray+"("+nowyear+")-"+volumnno;
			}
			System.out.println("elecno111=========================="+elecno);
			serino=toTempint(archivetype,nowyear,elecno);
			System.out.println("elecno111=========================="+serino);
			elecno=elecno+"-"+archive.toFlowno_3(serino);
			System.out.println("elecno222=========================="+elecno);
		return elecno;
	}

	//2003-06-05 add by liqf
	//生成三位数字,不足的用0补足
	//返回类型为"xx",x:0-9
	public String toFlowno_2(int flowno)
	{
		String folwno_new="";
		flowno=flowno+1;
      if(flowno<10){
		folwno_new=""+flowno;
		folwno_new="0"+folwno_new;
	  }
	  if(flowno<100 && flowno>9){
		folwno_new=""+flowno;
		folwno_new=folwno_new;
	  }
	  if(flowno>1000 ){
		folwno_new="0";
	  }
	  return folwno_new;
    }
}

⌨️ 快捷键说明

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