createmsg_chk.java

来自「一个日本流行的,功能较全的开源Web办公管理(Groupware)系统。」· Java 代码 · 共 307 行

JAVA
307
字号
package jp.co.sjts.gsession.schedule;
/*
 * Copyright (C) 1999-2002 Japan Total System Co,LTD
 */
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 javax.servlet.http.HttpSession;
import jp.co.sjts.gsession.tools.*;

/**
 * 揱尵堦棗夋柺
 *
 * @author Ei       Kishida  <ei@sjts.co.jp>
 * @author Hideyuki Kitade   <kitade@sjts.co.jp>
 */
public class Createmsg_chk extends CreatePage{

	private Hashtable hsPara;
	private Hashtable hsPara1;
	private String mapURL = null;
	private String dataDIR = null;
	private String userDIR = null;
	private String helpURL = null;  //僿儖僾
	private String hiduke ;
	private int mod ;
	private String sub ;
	private String gid ;
	private String uid ;
	private SCMsgData mdata;
	private SCMsgFile mfile;
	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 = "#000000";
	private static final String vlink = "#0000ff";

	private static final int ID = 0;
	private static final int PRIORITY = 1;
	private static final int MISSION = 2;
	private static final int TITLE = 3;
	private static final int DATE = 4;

	/**
	 *  僷儔儊乕僞僙僢僩
	 *
	 *  @param  hsPara   僷儔儊乕僞奿擺僴僢僔儏僥乕僽儖
	 *  @param  hsPara1  僷儔儊乕僞奿擺僴僢僔儏僥乕僽儖
	 *  @param  mod      儌乕僪
	 *  @param  hiduke   擔晅
	 *  @param  gid      僌儖乕僾ID
	 *  @param  sub      
	 */
	public Createmsg_chk(Hashtable hsPara,Hashtable hsPara1,int mod,String hiduke,String gid,String sub){

		this.hsPara = hsPara;
		this.mapURL = (String)hsPara.get(SCCmd.SC_MAP);
		this.dataDIR = (String)hsPara.get(SCCmd.SC_DIR);
		this.userDIR = (String)hsPara.get(SCCmd.SC_USER);
		this.helpURL = (String)hsPara.get("help");        //僿儖僾URL庢摼
		this.hsPara1 = hsPara1;
		this.hiduke = hiduke;
		this.gid = gid;
		this.mod = mod;
		this.sub = sub;
	}

	/**
	 *  揱尵堦棗夋柺昞帵
	 *
	 *  @param  req  儕僋僄僗僩
	 *  @param  res  儗僗億儞僗
	 */
	protected boolean writePage(HttpServletRequest req,HttpServletResponse res) throws GSException{

		HttpSession session = req.getSession(false);
		this.uid = ((Integer)session.getAttribute(GSBase.SESSION_PARA_UID)).toString();

		String url = GSTool.removeParaFormURI(req.getRequestURI());
		setCharset("iso-2022-jp");
		setTitle(title);
		setBodyColor(bgcolor,text,link,vlink,alink);
		//僿儖僾儁乕僕
		setHelpUrl(helpURL + GSHelpPage.SC500000);
/* 僞僀僩儖 */
		addBodyString("<!--僞僀僩儖-->");
		addBodyString("<TABLE WIDTH=\"100%\" BORDER=\"3\" CELLSPACING=\"0\" CELLPADDING=\"0\">");
		addBodyString("<TR>");
		addBodyString("<TD>");
		addBodyString("  <TABLE WIDTH=\"100%\" BORDER=\"0\" CELLSPACING=\"0\" CELLPADDING=\"2\">");
		addBodyString("  <TR HEIGHT=\"40\" BGCOLOR=\"#000080\">");
		addBodyString("  <FORM METHOD=\"post\" ACTION=\"" + url + "\">");
		addBodyString("  <INPUT TYPE=\"hidden\" NAME=\"" + SCCmd.PA_CMD + "\" VALUE=\"" + SCCmd.CD_MSG + "\">");
		addBodyString("  <INPUT TYPE=\"hidden\" NAME=\"" + SCCmd.PA_MOD + "\" VALUE=\"" + mod + "\">");
		addBodyString("  <INPUT TYPE=\"hidden\" NAME=\"" + SCCmd.PA_DATE + "\" VALUE=\"" + hiduke + "\">");
		addBodyString("  <INPUT TYPE=\"hidden\" NAME=\"" + SCCmd.PA_GID + "\" VALUE=\"" + gid + "\">");
		addBodyString("  <INPUT TYPE=\"hidden\" NAME=\"" + SCCmd.PA_SUB + "\" VALUE=\"" + sub + "\">");

		addBodyString("  <TD WIDTH=\"100%\"><FONT COLOR=\"#ffffff\"><B>"+title+"</B></FONT></TD>");
		addBodyString("  <TD WIDTH=\"5%\" NOWRAP>");
		addBodyString("  <INPUT TYPE=\"image\" NAME=\""+"del"+"\" SRC=\""+mapURL+SCCmd.S_DEL2+"\" ALT=\"嶍彍\" WIDTH=\"93\" HEIGHT=\"28\" BORDER=\"0\"></TD>");
		addBodyString("  <TD WIDTH=\"5%\" NOWRAP>");
		addBodyString("  <INPUT TYPE=\"image\" NAME=\""+"cansel"+"\" SRC=\""+mapURL+SCCmd.S_CANCEL+"\" ALT=\"栠傞\" WIDTH=\"93\" HEIGHT=\"28\" BORDER=\"0\"></TD>");
		addBodyString("  </TR>");
		addBodyString("  </TABLE>");
		addBodyString("</TD>");
		addBodyString("</TR>");
/* 杮懱 */
		addBodyString("<!--杮懱-->");
		addBodyString("<TR>");
		addBodyString("<TD BGCOLOR=\"#cccccc\">");
		addBodyString("  <TABLE WIDTH=\"100%\" BORDER=\"1\" CELLSPACING=\"0\" CELLPADDING=\"2\">");
/*尒弌偟  */

		String href = url+"?"+SCCmd.PA_CMD+"="+SCCmd.CD_MSG
			+"&"+SCCmd.PA_MOD+"="+mod
			+"&"+SCCmd.PA_DATE+"="+hiduke
			+"&"+SCCmd.PA_GID+"="+gid
			+"&"+SCCmd.PA_SUB+"="+sub;

		int sortkey = (hsPara1.get(SCCmd.PA_SORTKEY)!=null)?
			Integer.parseInt(((String[])hsPara1.get(SCCmd.PA_SORTKEY))[0]):0;
		
		String prioritySortflg="true";
		if( (sortkey==PRIORITY) && (hsPara1.get(SCCmd.PA_SORTFLG+PRIORITY)!=null) ) 
			prioritySortflg = (((String[])hsPara1.get(SCCmd.PA_SORTFLG+PRIORITY))[0]).equals("true")?"false":"true";
		String missionSortflg="true";
		if( (sortkey==MISSION) && (hsPara1.get(SCCmd.PA_SORTFLG+MISSION)!=null) )
			missionSortflg = (((String[])hsPara1.get(SCCmd.PA_SORTFLG+MISSION))[0]).equals("true")?"false":"true";
		String titleSortflg="true";
		if( (sortkey==TITLE) && (hsPara1.get(SCCmd.PA_SORTFLG+TITLE)!=null) )
			titleSortflg = (((String[])hsPara1.get(SCCmd.PA_SORTFLG+TITLE))[0]).equals("true")?"false":"true";
		String dateSortflg="true";
		if( (sortkey==DATE) && (hsPara1.get(SCCmd.PA_SORTFLG+DATE)!=null) )
			dateSortflg = (((String[])hsPara1.get(SCCmd.PA_SORTFLG+DATE))[0]).equals("true")?"false":"true";

		if(sortkey == 0) {
			sortkey = PRIORITY;
			prioritySortflg = "false";
		}

		addBodyString("  <TR BGCOLOR=\"#8080ff\">");

		addBodyString("  <TH WIDTH=\"1\"><BR></TH>");
		String priorityTitle="<FONT COLOR=\"#ffffff\">廳梫搙</FONT>";
		priorityTitle=makeTitle(priorityTitle,prioritySortflg,sortkey,PRIORITY);
		addBodyString("  <TH WIDTH=\"3%\" NOWRAP><A HREF=\"" + href
					  +"&"+SCCmd.PA_SORTKEY+"="+Integer.toString(PRIORITY)
					  +"&"+SCCmd.PA_SORTFLG+PRIORITY+"="+prioritySortflg
					  +"&"+SCCmd.PA_SORTFLG+MISSION+"="+missionSortflg
					  +"&"+SCCmd.PA_SORTFLG+TITLE+"="+titleSortflg
					  +"&"+SCCmd.PA_SORTFLG+DATE+"="+dateSortflg
					  +"\">"
					  +priorityTitle
					  +"</A></TH>");
		String missionTitle="<FONT COLOR=\"#ffffff\">埶棅庡</FONT>";
		missionTitle=makeTitle(missionTitle,missionSortflg,sortkey,MISSION);
		addBodyString("  <TH WIDTH=\"30%\"><A HREF=\"" + href
					  +"&"+SCCmd.PA_SORTKEY+"="+Integer.toString(MISSION)
					  +"&"+SCCmd.PA_SORTFLG+PRIORITY+"="+prioritySortflg
					  +"&"+SCCmd.PA_SORTFLG+MISSION+"="+missionSortflg
					  +"&"+SCCmd.PA_SORTFLG+TITLE+"="+titleSortflg
					  +"&"+SCCmd.PA_SORTFLG+DATE+"="+dateSortflg
					  +"\">"
					  +missionTitle
					  +"</A></TH>");
		String titleTitle="<FONT COLOR=\"#ffffff\">梡  審</FONT>";
		titleTitle=makeTitle(titleTitle,titleSortflg,sortkey,TITLE);
		addBodyString("  <TH WIDTH=\"70%\"><A HREF=\"" + href
					  +"&"+SCCmd.PA_SORTKEY+"="+Integer.toString(TITLE)
					  +"&"+SCCmd.PA_SORTFLG+PRIORITY+"="+prioritySortflg
					  +"&"+SCCmd.PA_SORTFLG+MISSION+"="+missionSortflg
					  +"&"+SCCmd.PA_SORTFLG+TITLE+"="+titleSortflg
					  +"&"+SCCmd.PA_SORTFLG+DATE+"="+dateSortflg
					  +"\">"
					  +titleTitle
					  +"</A></TH>");
		String dateTitle="<FONT COLOR=\"#ffffff\">憲怣擔帪</FONT>";
		dateTitle=makeTitle(dateTitle,dateSortflg,sortkey,DATE);
		addBodyString("  <TH WIDTH=\"3%\" NOWRAP><A HREF=\"" + href
					  +"&"+SCCmd.PA_SORTKEY+"="+Integer.toString(DATE)
					  +"&"+SCCmd.PA_SORTFLG+PRIORITY+"="+prioritySortflg
					  +"&"+SCCmd.PA_SORTFLG+MISSION+"="+missionSortflg
					  +"&"+SCCmd.PA_SORTFLG+TITLE+"="+titleSortflg
					  +"&"+SCCmd.PA_SORTFLG+DATE+"="+dateSortflg
					  +"\">"
					  +dateTitle
					  +"</A></TH>");

		addBodyString("  </TR>");
/* 柧嵶  */
		boolean color = false ;
/* 儊僢僙乕僕僨乕僞撉傓 */
		mfile = new SCMsgFile(userDIR,uid);
		Object[] dspMsg = new Object[mfile.size()];
		//僜乕僩梡僥乕僽儖嶌惉
		for( int i = 0 ; i < mfile.size() ; i++)
		{
			mdata = mfile.Getmod(i);//柧嵶撉傒崬傒
			Vector vec = new Vector(5);
			vec.add(mdata.GetMid());
			vec.add(mdata.GetPriority());
			vec.add(mdata.GetMission());
			vec.add(mdata.GetTitle());
			vec.add(mdata.GetDate());
			dspMsg[i] = vec;
		}

		boolean sortflg=true;
		switch(sortkey){
		case PRIORITY:
			sortflg = (hsPara1.get(SCCmd.PA_SORTFLG+PRIORITY)!=null)?
				(((String[])hsPara1.get(SCCmd.PA_SORTFLG+PRIORITY))[0]).equals("true"):true;
			break;
		case MISSION:
			sortflg = (hsPara1.get(SCCmd.PA_SORTFLG+MISSION)!=null)?
				(((String[])hsPara1.get(SCCmd.PA_SORTFLG+MISSION))[0]).equals("true"):true;
			break;
		case TITLE:
			sortflg = (hsPara1.get(SCCmd.PA_SORTFLG+TITLE)!=null)?
				(((String[])hsPara1.get(SCCmd.PA_SORTFLG+TITLE))[0]).equals("true"):true;
			break;
		case DATE:
			sortflg = (hsPara1.get(SCCmd.PA_SORTFLG+DATE)!=null)?
				(((String[])hsPara1.get(SCCmd.PA_SORTFLG+DATE))[0]).equals("true"):true;
		}
		
		//僜乕僩
		GSSort msgsort = new GSSort(sortflg,sortkey);
		Arrays.sort(dspMsg,msgsort);

		for( int i = 0 ; i < dspMsg.length ; i++)
		{
			Vector vec = (Vector)dspMsg[i];
			if(color==false)
			{
				addBodyString("  <TR BGCOLOR=\"#ffffff\">");
			}else{
				addBodyString("  <TR BGCOLOR=\"#ffffbf\">");
			}
			addBodyString("  <TD><INPUT TYPE=\"checkbox\" name=\""+SCCmd.PA_CBOX+"\" value=\""+((String)vec.get(ID))+"\"></TD>");
			switch(Integer.parseInt((String)vec.get(PRIORITY))){
			case 0:
				addBodyString("  <TD align=\"center\"><IMG SRC=\""+mapURL+SCCmd.S_TOP+"\" ALT=\"崅\" WIDTH=\"16\" HEIGHT=\"16\"></TD>");
				break;
			case 2:
				addBodyString("  <TD align=\"center\"><IMG SRC=\""+mapURL+SCCmd.S_LOW+"\" ALT=\"掅\" WIDTH=\"16\" HEIGHT=\"16\"></TD>");
				break;
			case 1:
				addBodyString("  <TD>丂</TD>");
			}

			addBodyString("  <TD><A HREF=\""+ url+"?"
						  +SCCmd.PA_CMD+"="+SCCmd.CD_MSGDSP+"&"
						  +SCCmd.PA_MOD+"="+mod+"&"
						  +SCCmd.PA_GID+"="+gid+"&"
						  +SCCmd.PA_SUB+"="+sub+"&"
						  +SCCmd.PA_DATE+"="+hiduke+"&"
						  +SCCmd.PA_MID+"="+((String)vec.get(ID))
						  +"\">"
						  +SCTools.chkStrDec((String)vec.get(MISSION))
						  +"</A></TD>");
			addBodyString("  <TD>"+SCTools.chkStrDec((String)vec.get(TITLE))+"</TD>");
			String Sdate = ((String)vec.get(DATE));
			addBodyString("  <TD>"+Sdate.substring(0,4)+"/"
						  +Sdate.substring(4,6)+"/"
						  +Sdate.substring(6,8)+"丂"
						  +Sdate.substring(8,10)+":"
						  +Sdate.substring(10,12)
						  +"</TD>");
			addBodyString("  </TR>");
		}
		addBodyString("  </FORM>");
		addBodyString("  </TABLE>");
		addBodyString("</TD>");
		addBodyString("</TR>");
		addBodyString("</TABLE>");
		return true;
	}

	/**
	 * <p>僜乕僩偟偨帪偺僞僀僩儖傪嶌惉偟傑偡丅
	 *
	 * @param title      僞僀僩儖
	 * @param flag
	 * @param key
	 * @param sorttarget
	 */
	private String makeTitle(String title,String flag,int key,int sorttarget){

		if(key == sorttarget) {
			if(flag.equals("true"))
				title = "<FONT COLOR=\"ffffff\"> 仴 </FONT>"+title;
			else
				title = title+"<FONT COLOR=\"ffffff\"> 仯 </FONT>";
		} 	

		return title;
	}
}

⌨️ 快捷键说明

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