createcircular_send.java
来自「一个日本流行的,功能较全的开源Web办公管理(Groupware)系统。」· Java 代码 · 共 307 行
JAVA
307 行
package jp.co.sjts.gsession.circular;
/*
* 夞棗憲怣僼僅儖僟乕夋柺嶌惉 Createcircular_send.java
* Copyright (C) 1999-2000 Japan Total System Co,LTD
* Masakatu O <ookubo@sjts.co.jp>
*/
import java.util.Collection;
import java.util.Map;
import java.util.Iterator;
import java.util.Hashtable;
import java.util.Arrays;
import java.util.Vector;
import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse;
import jp.co.sjts.gsession.tools.*;
public class Createcircular_send extends CreatePage
{
private Hashtable hsPara;
private Hashtable hsPara1;
private CISendFile cifile;
private CISendData cidata ;
private GSDate cal ; //僇儗儞僟乕
private String mapURL ;
private String dataDIR ;
private String helpURL ;
private int page ;
private int max ;
private String uid ;
private final String title = "夞棗憲怣僼僅儖僟乕";
private static final String bgcolor = "#ffffff";
private static final String text = "#000000";
private static final String link = "#0000ff";
private static final String alink = "#ff0000";
private static final String vlink = "#0000ff";
private static final int CIRCID = 0;
private static final int TITLE = 1;
private static final int DATEKEY = 2;
private static final int YMD = 3;
private static final int USER = 5;
public Createcircular_send(Hashtable hsPara,Hashtable hsPara1,int page,int max,String uid)
{
this.hsPara = hsPara;
this.mapURL = (String)hsPara.get(CICmd.CI_MAP);
this.dataDIR = (String)hsPara.get(CICmd.CI_DIR);
this.helpURL = (String)hsPara.get("help");
this.hsPara1 = hsPara1;
this.uid = uid;
this.page = page;
this.max = max;
}
/**
* <P>夞棗憲怣僼僅儖僟乕夋柺傪嶌惉偟傑偡丅
*
* @param req - 儕僋僄僗僩
* @param res - 儗僗億儞僗
*/
protected boolean writePage(HttpServletRequest req,HttpServletResponse res) throws GSException {
String url = GSTool.removeParaFormURI(req.getRequestURI());
/* 僨乕僞撉傒崬傒 */
cal = new GSDate();
cifile = new CISendFile(dataDIR,uid);
setCharset("iso-2022-jp");
setHelpUrl(helpURL + GSHelpPage.CI200000);
setTitle(title);
setBodyColor(bgcolor,text,link,vlink,alink);
addBodyString("<TABLE WIDTH=\"100%\" BORDER=\"0\" CELLSPACING=\"0\" CELLPADDING=\"0\">");
addBodyString("");
addBodyString("<TR>");
addBodyString("<TD BGCOLOR=\"#000080\">");
addBodyString(" <TABLE HEIGHT=\"40\" BORDER=\"0\" CELLSPACING=\"0\" CELLPADDING=\"5\">");
addBodyString(" <TR>");
addBodyString(" <FORM METHOD=\"post\" ACTION=\"" + url + "\">");
addBodyString(" <INPUT TYPE=\"hidden\" NAME=\"" + CICmd.PA_CMD + "\" VALUE=\"" + CICmd.CI_SEND + "\">");
addBodyString(" <INPUT TYPE=\"hidden\" NAME=\"" + CICmd.PA_PAG + "\" VALUE=\"" + Integer.toString(page) + "\">");
addBodyString(" <INPUT TYPE=\"hidden\" NAME=\"" + CICmd.PA_MOD + "\" VALUE=\"1\">");
addBodyString(" <TD NOWRAP><FONT SIZE=\"+1\" COLOR=\"#ffffff\"><B>夞棗</B></FONT></TD>");
addBodyString(" <TD WIDTH=\"100%\" ALIGN=\"right\">");
addBodyString(" <INPUT TYPE=\"image\" NAME=\""+"pers"+"\" SRC=\""+mapURL+CICmd.W_B_12+"\" ALT=\"屄恖愝掕\" BORDER=\"0\">");
addBodyString(" </TD>");
addBodyString(" </TR>");
addBodyString(" </TABLE>");
addBodyString("</TD>");
addBodyString("</TR>");
/* 怴婯夞棗 */
addBodyString(" <!--怴婯夞棗-->");
addBodyString(" <!--僐儅儞僪-->");
addBodyString("<TR>");
addBodyString("<TD>");
addBodyString(" <TABLE WIDTH=\"100%\" BORDER=\"0\" CELLSPACING=\"0\" CELLPADDING=\"5\">");
addBodyString(" <TR>");
addBodyString(" <TD WIDTH=\"100%\" ALIGN=\"RIGHT\" NOWRAP><INPUT TYPE=\"image\" NAME=\""+"del"+"\" SRC=\""+mapURL+CICmd.W_B_01+"\" ALT=\"嶍彍\" BORDER=\"0\">");
addBodyString(" </TD>");
addBodyString(" <TD ALIGN=\"right\"><INPUT TYPE=\"image\" NAME=\""+"new"+"\" SRC=\""+mapURL+CICmd.W_B_09+"\" ALT=\"怴婯夞棗\" BORDER=\"0\">");
addBodyString(" </TD>");
addBodyString(" </TR>");
addBodyString(" </TABLE>");
addBodyString("</TD>");
addBodyString("</TR>");
/* 僼僅儖僟乕慖戰 */
addBodyString(" <!--僼僅儖僟乕慖戰-->");
addBodyString("<TR>");
addBodyString("<TD>");
addBodyString(" <TABLE BORDER=\"0\" CELLSPACING=\"0\" CELLPADDING=\"0\">");
addBodyString(" <TR>");
addBodyString(" <TD>");
addBodyString(" <TABLE BORDER=\"0\" CELLSPACING=\"0\" CELLPADDING=\"0\">");
addBodyString(" <TR>");
addBodyString(" <TD><INPUT TYPE=\"image\" NAME=\""+"rec"+"\" SRC=\""+mapURL+CICmd.W_B_10+"\" ALT=\"庴怣僼僅儖僟乕\" BORDER=\"0\"></TD>");
addBodyString(" <TD><INPUT TYPE=\"image\" NAME=\""+"send"+"\" SRC=\""+mapURL+CICmd.W_B_11+"\" ALT=\"憲怣嵪傒僼僅儖僟乕\" BORDER=\"0\"></TD>");
addBodyString(" </TR>");
addBodyString(" </TABLE>");
addBodyString(" </TD>");
/* 儁乕僕 */
addBodyString(" <!--儁乕僕堏摦-->");
addBodyString(" <TD WIDTH=\"100%\" ALIGN=\"right\">");
if( page == 0 ) {
addBodyString(" <IMG SRC=\""+mapURL+CICmd.W_B_L+"\" HEIGHT=\"18\" WIDTH=\"18\" BORDER=\"0\">");
}else{
addBodyString(" <INPUT TYPE=\"image\" NAME=\""+"down"+"\" SRC=\""+mapURL+CICmd.W_B_L+"\" ALT=\"慜儁乕僕\" HEIGHT=\"18\" WIDTH=\"18\" BORDER=\"0\">");
}
addBodyString(" </TD>");
addBodyString(" <TD ALIGN=\"right\" NOWRAP>");
if( cifile.size() == 0 ) {
addBodyString( "<B>Page 0/0</B>" );
}else{
if( cifile.size() % max == 0 ) {
addBodyString("<B>Page " + Integer.toString(page+1) + "/" + Integer.toString(cifile.size()/max) + "</B>" );
}else{
addBodyString("<B>Page " + Integer.toString(page+1) + "/" + Integer.toString(cifile.size()/max+1) + "</B>" );
}
}
addBodyString(" </TD>");
addBodyString(" <TD ALIGN=\"right\" NOWRAP>");
if( (page+1)*max < cifile.size() ) {
addBodyString(" <INPUT TYPE=\"image\" NAME=\""+"up"+"\" SRC=\""+mapURL+CICmd.W_B_R+"\" ALT=\"師儁乕僕\" HEIGHT=\"18\" WIDTH=\"18\" BORDER=\"0\">");
}else{
addBodyString(" <IMG SRC=\""+mapURL+CICmd.W_B_R+"\" HEIGHT=\"18\" WIDTH=\"18\" BORDER=\"0\">");
}
addBodyString("<INPUT TYPE=\"hidden\" NAME=\"" + CICmd.CI_SORTKEY + "\" VALUE=\""
+ ((hsPara1.get(CICmd.CI_SORTKEY)!=null)?
((String[])hsPara1.get(CICmd.CI_SORTKEY))[0]:"0")
+ "\">");
addBodyString("<INPUT TYPE=\"hidden\" NAME=\"" + CICmd.CI_SORTFLG+TITLE + "\" VALUE=\""
+ ( (hsPara1.get(CICmd.CI_SORTFLG+TITLE)!=null)?
((String[])(hsPara1.get(CICmd.CI_SORTFLG+TITLE)))[0]:"false")
+ "\">");
addBodyString("<INPUT TYPE=\"hidden\" NAME=\"" + CICmd.CI_SORTFLG+DATEKEY + "\" VALUE=\""
+ ( (hsPara1.get(CICmd.CI_SORTFLG+DATEKEY)!=null)?
((String[])(hsPara1.get(CICmd.CI_SORTFLG+DATEKEY)))[0]:"false")
+ "\">");
addBodyString("<INPUT TYPE=\"hidden\" NAME=\"" + CICmd.CI_SORTFLG+USER + "\" VALUE=\""
+ ( (hsPara1.get(CICmd.CI_SORTFLG+USER)!=null)?
((String[])(hsPara1.get(CICmd.CI_SORTFLG+USER)))[0]:"false")
+ "\">");
addBodyString(" </TD>");
addBodyString(" </TR>");
addBodyString(" </TABLE>");
addBodyString("</TD>");
addBodyString("</TR>");
/* 僞僀僩儖 */
String href = url+"?"+CICmd.PA_CMD+"="+CICmd.CI_SEND
+"&"+CICmd.PA_PAG+"="+Integer.toString(page)
+"&"+CICmd.PA_MOD+"="+"0";
int sortkey = (hsPara1.get(CICmd.CI_SORTKEY)!=null)?
Integer.parseInt(((String[])hsPara1.get(CICmd.CI_SORTKEY))[0]):0;
int key = sortkey;
String titleSortflg="true";
if( (sortkey==TITLE) && (hsPara1.get(CICmd.CI_SORTFLG+TITLE)!=null) )
titleSortflg = (((String[])hsPara1.get(CICmd.CI_SORTFLG+TITLE))[0]).equals("true")?"false":"true";
String ymdSortflg="true";
if( (sortkey==DATEKEY) && (hsPara1.get(CICmd.CI_SORTFLG+DATEKEY)!=null) )
ymdSortflg = (((String[])hsPara1.get(CICmd.CI_SORTFLG+DATEKEY))[0]).equals("true")?"false":"true";
if(sortkey == 0 || sortkey > 2) {
ymdSortflg = "false";
sortkey = DATEKEY;
}
addBodyString("<TR>");
addBodyString("<TD>");
addBodyString(" <TABLE BGCOLOR=\"#ffffcf\" WIDTH=\"100%\" BORDER=\"0\" CELLSPACING=\"0\" CELLPADDING=\"0\">");
addBodyString(" <TR><TD>丂<BR></TD></TR>");
addBodyString(" <TR ALIGN=\"center\">");
addBodyString(" <TD>");
addBodyString(" <TABLE WIDTH=\"98%\" BORDER=\"1\" CELLSPACING=\"1\" CELLPADDING=\"1\">");
addBodyString(" <TR BGCOLOR=\"#8080ff\">");
addBodyString(" <TH>丂</TH>");
String paraFlags = "&" + CICmd.CI_SORTFLG + TITLE + "=" + titleSortflg +
"&" + CICmd.CI_SORTFLG + DATEKEY + "=" + ymdSortflg;
String titleTitle = makeTitle("僞僀僩儖",titleSortflg,sortkey,TITLE);
addBodyString(" <TH WIDTH=\"80%\" NOWRAP><A HREF=\""
+ href
+ "&"+CICmd.CI_SORTKEY+"="+Integer.toString(TITLE)
+ paraFlags
+ "\">"
+ titleTitle
+ "</A></TH>");
String ymdTitle = makeTitle("擔晅",ymdSortflg,sortkey,DATEKEY);
addBodyString(" <TH WIDTH=\"20%\" NOWRAP><A HREF=\""
+ href
+ "&"+CICmd.CI_SORTKEY+"="+Integer.toString(DATEKEY)
+ paraFlags
+ "\">"
+ ymdTitle
+ "</A></TH>");
/* 柧嵶峴 */
Vector vecCircular = new Vector();
Object[] dspCircular = null;
//僜乕僩梡僥乕僽儖嶌惉
for(int i = 0; i < cifile.size(); i++) {
Vector vec = new Vector(4);
cidata = cifile.Getmod(i);//柧嵶撉傒崬傒
cal.setYMDHMS(cidata.GetDate());
vec.add(cidata.GetCircid());
vec.add(cidata.GetTitol());
vec.add(new Long(cal.getTime()));
vec.add(Integer.toString(cal.getYear()) + "擭"
+ Integer.toString(cal.getMonth()) + "寧"
+ Integer.toString(cal.getDay()) + "擔 ");
vecCircular.add(vec);
}
dspCircular = vecCircular.toArray();
boolean sortflg=true;
switch(key){
case TITLE:
sortflg = (hsPara1.get(CICmd.CI_SORTFLG+TITLE)!=null)?
(((String[])hsPara1.get(CICmd.CI_SORTFLG+TITLE))[0]).equals("true"):true;
break;
case DATEKEY:
sortflg = (hsPara1.get(CICmd.CI_SORTFLG+DATEKEY)!=null)?
(((String[])hsPara1.get(CICmd.CI_SORTFLG+DATEKEY))[0]).equals("true"):true;
break;
case 0:
sortflg = true;
sortkey = DATEKEY;
}
// 僜乕僩
GSSort cirsort = new GSSort(sortflg,sortkey);
Arrays.sort(dspCircular,cirsort);
// 柧嵶峴昞帵
boolean mode = true;
for( int i = page * max ; i < (page + 1) * max && i < dspCircular.length ; i++) {
Vector vec = (Vector)dspCircular[i];
// BGCOLOR愝掕
if(mode)
addBodyString(" <TR BGCOLOR=\"#f0f0f0\">");
else
addBodyString(" <TR BGCOLOR=\"#bebebe\">");
mode = !mode;
addBodyString(" <TD><INPUT TYPE=\"checkbox\" NAME=\"cbox\" VALUE=\"" + ((String)vec.get(CIRCID)) + "\" ></TD>");
addBodyString(" <TD><A HREF=\"" + url + "?" + CICmd.PA_CMD + "=" + CICmd.CI_CHKMSG
+ "&" + CICmd.PA_CID + "=" + ((String)vec.get(CIRCID))
+ "&" + CICmd.PA_PAG + "=" + Integer.toString(page)
+ "&" + CICmd.PA_MOD + "=" + "1"
+ "\" TARGET=\"_self\">" + ((String)vec.get(TITLE)) + "</A></TD>");
addBodyString(" <TD ALIGN=\"center\" NOWRAP>" + ((String)vec.get(YMD)) + "</TD>");
addBodyString(" </TR>");
}
addBodyString(" </TABLE>");
addBodyString(" </TD>");
addBodyString(" </TR>");
addBodyString(" <TR><TD>丂<BR></TD></TR>");
/* 柧嵶廔椆 */
addBodyString(" </FORM>");
addBodyString(" </TABLE>"); //new
addBodyString("</TD>");
addBodyString("</TR>");
addBodyString("</TABLE>");
return true;
}
private String makeTitle(String title,String flag,int key,int sorttarget)
{
if(key == sorttarget) {
if(flag.equals("true"))
title = "<FONT COLOR=\"#ffffff\"> 仴 " + title + "</FONT>";
else
title = "<FONT COLOR=\"#ffffff\">" + title + " 仯 </FONT>";
}
else
title = "<FONT COLOR=\"#ffffff\">" + title + "</FONT>";
return title;
}
}
⌨️ 快捷键说明
复制代码Ctrl + C
搜索代码Ctrl + F
全屏模式F11
增大字号Ctrl + =
减小字号Ctrl + -
显示快捷键?