createaddress_tantou.java
来自「一个日本流行的,功能较全的开源Web办公管理(Groupware)系统。」· Java 代码 · 共 726 行 · 第 1/2 页
JAVA
726 行
package jp.co.sjts.gsession.card;
import java.io.File;
import java.util.Map;
import java.util.List;
import java.util.Collection;
import java.util.Iterator;
import java.util.Hashtable;
import java.util.HashSet;
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.*;
import jp.co.sjts.gsession.tools.mail.*;
/**
* 傾僪儗僗挔(扴摉幰)儁乕僕<BR>
*
* @author Ei KISHIDA <ei@sjts.co.jp>
* @author Hideyuki KITADE <kitade@sjts.co.jp>
*/
public class Createaddress_tantou extends CreatePage{
private static 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 CID = 0;
private static final int KAISHA = 1;
private static final int NAME = 2;
private static final int EMAIL = 3;
private static final int TANTOU = 4;
private static final int EDITFLG = 5;
private static final int ENTUID = 6;
private static final int KKAISHA = 7;
private static final int KNAME = 8;
private static final int KTANTOU = 9;
private Hashtable hsPara;
private Hashtable hsPara1;
private CDCardFile cddata;
private String mapURL;
private String dataDir;
private String carddataDir;
private String indexDir;
private String tanDir;
private String helpURL;
private int page;
private int max;
private int index;
private int gid;
private int uid;
private String usrid;
private IUserManager UM = null;
private CDtanidxFile ifile;
private CDtanidxData idata;
private HashSet toSet;
private HashSet ccSet;
private HashSet bccSet;
private int sortkey;
private boolean sortflg;
private int selection;
/**
* <p>
*
* @param hsPara
* @param hsPara1
* @param page
* @param max
* @param index
* @param UM
* @param gid
* @param uid
* @param usrid
*/
public Createaddress_tantou(Hashtable hsPara,Hashtable hsPara1,int page,int max,
int index,IUserManager UM,int gid,int uid,String usrid){
this.hsPara = hsPara;
this.hsPara1 = hsPara1;
this.dataDir = (String)hsPara.get(CDCmd.CD_DIR);
this.carddataDir = (String)hsPara.get(CDCmd.CD_DIR)+CDCmd.CD_DATA;
this.tanDir = dataDir+CDCmd.CD_IX+File.separator+CDCmd.CD_IX_TN;
this.mapURL = (String)hsPara.get(CDCmd.CD_MAP);
this.helpURL = (String)hsPara.get("help");
this.max = max;
this.page = page;
this.index = index;
this.UM = UM;
this.gid = gid;
this.uid = uid;
this.usrid = usrid;
}
/**
* <p>儊乕儖梡僷儔儊乕僞弶婜壔張棟
*/
private void initPara() {
String[] tos = (String[])hsPara1.get("to");
if(tos==null) {
toSet = new HashSet();
} else {
toSet = new HashSet(tos.length);
for(int i=0; i<tos.length; i++)
toSet.add(tos[i]);
}
String[] ccs = (String[])hsPara1.get("cc");
if(ccs==null) {
ccSet = new HashSet();
} else {
ccSet = new HashSet(ccs.length);
for(int i=0; i<ccs.length; i++)
ccSet.add(ccs[i]);
}
String[] bccs = (String[])hsPara1.get("bcc");
if(bccs==null) {
bccSet = new HashSet();
} else {
bccSet = new HashSet(bccs.length);
for(int i=0; i<bccs.length; i++)
bccSet.add(bccs[i]);
}
}
/**
* <p>僜乕僩弴妋掕張棟
*/
private void getSortPara() {
int nextkey = 0;
if(hsPara1.get(CDCmd.PA_NEXTSKEY) != null)
nextkey = Integer.parseInt(((String[])hsPara1.get(CDCmd.PA_NEXTSKEY))[0]);
if(hsPara1.get(CDCmd.PA_SORTFLG) != null)
sortflg = ((String[])hsPara1.get(CDCmd.PA_SORTFLG))[0].equals("true");
else
sortflg = true;
if(hsPara1.get(CDCmd.PA_SORTKEY) != null) {
sortkey = Integer.parseInt(((String[])hsPara1.get(CDCmd.PA_SORTKEY))[0]);
switch(sortkey) {
case KAISHA :
if(nextkey == KAISHA)
sortflg = !sortflg;
else if(nextkey > 0) {
sortkey = nextkey;
sortflg = true;
}
break;
case NAME :
if(nextkey == NAME)
sortflg = !sortflg;
else if(nextkey > 0) {
sortkey = nextkey;
sortflg = true;
}
break;
case EMAIL :
if(nextkey == EMAIL)
sortflg = !sortflg;
else if(nextkey > 0) {
sortkey = nextkey;
sortflg = true;
}
break;
case TANTOU :
if(nextkey == TANTOU)
sortflg = !sortflg;
else if(nextkey > 0) {
sortkey = nextkey;
sortflg = true;
}
break;
}
} else
sortkey = KAISHA;
}
/**
* <p>HTML弌椡
*
* @param req 儕僋僄僗僩
* @param res 儗僗億儞僗
* @return true:惓忢偵弌椡偑姰椆偟偨応崌,false:堎忢帪
*/
protected boolean writePage(HttpServletRequest req,HttpServletResponse res) throws GSException{
String url = GSTool.removeParaFormURI(req.getRequestURI());
HttpSession session = req.getSession(false);
Integer sessionUID = (Integer)session.getAttribute(GSBase.SESSION_PARA_UID);
initPara();
getSortPara();
//僗乕僷乕儐乕僓偐丠
boolean flg = UM.isSU(uid);
addScript(
"function openWindow(i)\r\n"
+"{\r\n"
+" var win=window.open(\"\",\"window\"+i,\"width=560,height=590,resizable=1\");\r\n"
+" win.location=\""+url
+"?"+CDCmd.PA_CMD+"="+CDCmd.AD_DATA
+"&"+CDCmd.PA_IDX+"="+index
+"&"+CDCmd.PA_MOD+"="+CDCmd.AD_ADDRESS3
+"&"+CDCmd.PA_PAG+"="+Integer.toString(page)
+"&"+CDCmd.PA_CID+"=\"+i;\r\n}"
);
addScript(
"function setSort(key)\r\n"
+"{\r\n"
+" document.myForm."+CDCmd.PA_NEXTSKEY+".value=key;\r\n"
+" document.myForm.submit();\r\n}"
);
setCharset("iso-2022-jp");
setTitle(title);
setBodyColor(bgcolor,text,link,vlink,alink);
setHelpUrl(helpURL + GSHelpPage.CA103000);
addBodyString("<CENTER>");
addBodyString("<FORM METHOD=\"post\" NAME=\"myForm\" ACTION=\"" + url + "\">");
addBodyString("<TABLE WIDTH=\"100%\" BORDER=\"0\" CELLSPACING=\"0\" CELLPADDING=\"0\">");
// 僞僀僩儖
addBodyString("<TR>");
addBodyString("<TD>");
addBodyString(" <TABLE BGCOLOR=\"#000080\" BORDER=\"0\" CELLSPACING=\"0\" CELLPADDING=\"3\">");
addBodyString(" <TR>");
addBodyString(" <TD HEIGHT=\"40\" WIDTH=\"100%\"><FONT SIZE=\"+1\" COLOR=\"#ffffff\"><B>傾僪儗僗挔</B></FONT></TD>");
addBodyString(" <TD ALIGN=\"right\" NOWRAP>");
addBodyString(" <INPUT TYPE=\"image\" NAME=\"" + CDCmd.PA_SET + "\" SRC=\""+mapURL+GSFilename.GS_TUIKA_BTN+"\" ALT=\"捛壛\" WIDTH=\"93\" HEIGHT=\"28\" BORDER=\"0\"></TD>");
addBodyString(" <TD ALIGN=\"right\" NOWRAP>");
addBodyString(" <INPUT TYPE=\"image\" NAME=\"" + CDCmd.PA_CANCEL + "\" SRC=\""+mapURL+GSFilename.GS_TORIKESHI_BTN+"\" ALT=\"庢徚\" WIDTH=\"93\" HEIGHT=\"28\" BORDER=\"0\"></TD>");
addBodyString(" </TR>");
addBodyString(" </TABLE>");
addBodyString("</TD>");
addBodyString("</TR>");
addBodyString("");
/* 僞僽 */
addBodyString("<TR>");
addBodyString("<TD>");
addBodyString(" <TABLE WIDTH=\"100%\" BGCOLOR=\"#cccccc\" BORDER=\"0\" CELLSPACING=\"0\" CELLPADDING=\"0\">");
addBodyString(" <TR BGCOLOR=\"#ffffff\">");
addBodyString(" <TD>");
addBodyString(" <TABLE BORDER=\"0\" CELLSPACING=\"0\" CELLPADDING=\"0\">");
addBodyString(" <TR>");
addBodyString( makeTab(CDCmd.AD_ADDRESS1, CDCmd.B_F_TSC, "夛幮柤偱専嶕") );
addBodyString( makeTab(CDCmd.AD_ADDRESS2, CDCmd.B_F_TNC, "柤慜偱専嶕") );
addBodyString( makeTab(CDCmd.AD_ADDRESS3, CDCmd.B_F_TTO, "扴摉幰偱専嶕") );
addBodyString( makeTab(CDCmd.AD_ADDRESS4, CDCmd.B_F_TEC, "E-Mail傾僪儗僗偱専嶕") );
addBodyString(" </TR>");
addBodyString(" </TABLE>");
addBodyString(" </TD>");
addBodyString(" </TR>");
/* 専嶕忦審 */
addBodyString(" <TR ALIGN=\"center\" BGCOLOR=\"#cccccc\">");
addBodyString(" <TD HEIGHT=\"130\" WIDTH=\"100%\">");
addBodyString(" <TABLE WIDTH=\"95%\" BORDER=\"0\" CELLSPACING=\"0\" CELLPADDING=\"5\">");
addBodyString(" <TR>");
addBodyString(" <TH WIDTH=\"5%\" NOWRAP>僌儖乕僾柤</TH>");
addBodyString(" <TD WIDTH=\"2%\" VALIGN=\"middle\">");
addBodyString(" <SELECT NAME=\""+CDCmd.PA_GROUP+"\" onchange=\"document.myForm.submit()\">");
int[] grpid = UM.getGidArray();
Object[] dspGroups = new Object[grpid.length];
//僜乕僩梡僥乕僽儖嶌惉
for(int i=0; i<grpid.length;i++)
{
Vector vec = new Vector(2);
vec.add(Integer.toString(grpid[i]));
vec.add(UM.getGName(grpid[i]));
dspGroups[i] = vec;
}
StringBuffer selectBuf = new StringBuffer(); //嬻敀Select傪愭摢偵偡傞偨傔
//僜乕僩
GSSort grpsort = new GSSort(true,1);
Arrays.sort(dspGroups,grpsort);
for(int a=0; a< dspGroups.length;a++) {
Vector vecgrp = (Vector)dspGroups[a];
if(Integer.parseInt((String)vecgrp.get(0)) != 0) {
if(gid==Integer.parseInt((String)vecgrp.get(0))){
selectBuf.append(" <OPTION VALUE=\""+(String)vecgrp.get(0)+"\" SELECTED>"+(String)vecgrp.get(1));
}else{
selectBuf.append(" <OPTION VALUE=\""+(String)vecgrp.get(0)+ "\">"+(String)vecgrp.get(1));
}
}
}
if(gid<0){
addBodyString(" <OPTION VALUE=\"-1\" SELECTED>丂丂丂丂丂丂丂丂丂丂丂丂丂丂丂丂丂丂丂丂丂丂");
}else{
addBodyString(" <OPTION VALUE=\"-1\">丂丂丂丂丂丂丂丂丂丂丂丂丂丂丂丂丂丂丂丂丂丂");
}
addBodyString(new String(selectBuf));
addBodyString(" </SELECT>");
addBodyString(" </TD>");
addBodyString(" <TD WIDTH=\"100%\">");
addBodyString(" <INPUT TYPE=\"image\" SRC=\""+mapURL+CDCmd.B_F_GO+"\" WIDTH=\"24\" HEIGHT=\"22\" BORDER=\"0\">");
addBodyString(" </TD>");
addBodyString(" </TR>");
/* 儐乕僓 */
addBodyString(" <TR>");
addBodyString(" <TH WIDTH=\"5%\" NOWRAP>扴摉幰柤</TH>");
addBodyString(" <TD WIDTH=\"2%\" VALIGN=\"middle\">");
addBodyString(" <SELECT NAME=\""+CDCmd.PA_USER+"\" onchange=\"document.myForm.submit()\">");
boolean uidIntoGidFlg = false; //GID拞偵UID偑偁傟偽True側偗傟偽false
selectBuf = new StringBuffer(); //嬻敀Select傪愭摢偵偡傞偨傔
if(gid != -1)
{
if ( UM.getUidArray(gid) != null)
{;
int[] alluid = UM.getUidArray(gid);
Vector vecUsrs = new Vector();
Object[] dspUsrs = null;
//僜乕僩梡僥乕僽儖嶌惉
for(int x=0; x<alluid.length;x++)
{
if(alluid[x]!=0){
Vector vecUsr = new Vector(3);
IUser user = UM.getUser(alluid[x]);
vecUsr.add(Integer.toString(alluid[x]));
vecUsr.add(UM.getUName(alluid[x]));
vecUsr.add(user.getKana());
vecUsrs.add(vecUsr);
}
}
dspUsrs = vecUsrs.toArray();
//僜乕僩
GSSort usrsort = new GSSort(true,2);
Arrays.sort(dspUsrs,usrsort);
for(int i=0;(dspUsrs!=null) && (i<dspUsrs.length);i++) {
Vector vec = (Vector)dspUsrs[i];
if(uid==Integer.parseInt((String)vec.get(0))){
selectBuf.append(" <OPTION SELECTED VALUE=\"" + ((String)vec.get(0)) + "\" SELECTED>"
+ ((String)vec.get(1)));
uidIntoGidFlg = true;
}else{
selectBuf.append(" <OPTION VALUE=\"" + ((String)vec.get(0)) + "\">"
+ ((String)vec.get(1)));
}
}
}
}
⌨️ 快捷键说明
复制代码Ctrl + C
搜索代码Ctrl + F
全屏模式F11
增大字号Ctrl + =
减小字号Ctrl + -
显示快捷键?