📄 share.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 + -