📄 createholiday.java
字号:
package jp.co.sjts.gsession.main;
/*
* 媥擔愝掕 CreateHoliday.java
* Copyright (C) 2000-2001 Japan Total System Co,LTD
* Junichi K <kaneuchi@sjts.co.jp>
*/
import java.io.File;
import java.util.Hashtable;
import java.util.Map;
import java.util.List;
import java.util.Iterator;
import java.util.Vector;
import java.util.Arrays;
import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse;
import javax.servlet.http.HttpSession;
import jp.co.sjts.gsession.tools.*;
public class CreateHoliday extends CreatePage {
private final String title = "媥擔愝掕";
private final String bgcolor = "#ffffff";
private final String text = "#000000";
private final String link = "#0000ff";
private final String alink = "#ff0000";
private final String vlink = "#0000ff";
private String urlMap;
private Hashtable hsPara;
private String helpURL;
private Holiday holiday;
private String mainDir;
public CreateHoliday(Hashtable hsPara,Holiday holiday,String mainDir,String urlMap,String helpURL) {
this.urlMap = urlMap;
this.hsPara = hsPara;
this.helpURL = helpURL;
this.holiday = holiday;
this.mainDir = mainDir;
}
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);
String[] buf;
String month = null;
String day = null;
String title = "";
int imonth = 0;
int iday = 0;
GSDate date = new GSDate();
String year = holiday.howYear();
//擔晅傪愝掕
if( hsPara.get(GSCmd.GS_PARA_LEFTX) != null) {
year = Integer.toString(Integer.parseInt(year) - 1);
holiday = (Holiday)holiday.CreateHoliday(year);
}
if( hsPara.get(GSCmd.GS_PARA_RIGHTX) != null) {
year = Integer.toString(Integer.parseInt(year) + 1);
holiday = (Holiday)holiday.CreateHoliday(year);
}
String md = (hsPara.get(GSCmd.GS_PARA_MD) != null)?
((String[])hsPara.get(GSCmd.GS_PARA_MD))[0]:"0101";
if( Integer.parseInt(md.substring(2)) > 40 ) {
HolidayTempData tempdata = new HolidayTempData(md,"","0",year);
if(tempdata.getFlg() != -1)
date.setYMD(year + tempdata.getDate() );
else
date.setYMD(year + md.substring(0,2) + 1);
}
else
date.setYMD(holiday.howYear() + md);
//僷儔儊乕僞庢摼
if( (buf = (String[])hsPara.get("month")) != null) {
month = buf[0];
imonth = Integer.parseInt(month);
}
if( (buf = (String[])hsPara.get("day")) != null) {
day = buf[0];
iday = Integer.parseInt(day);
}
if( (buf = (String[])hsPara.get("NAME")) != null)
title = buf[0];
//僥儞僾儗乕僩傪媥擔偵斀塮
if( hsPara.get(GSCmd.GS_PARA_REFLECTX) != null ) {
String[] tempdates;
if( (tempdates = (String[])hsPara.get(GSCmd.GS_PARA_CBOX)) != null ){
HolidayTemp holidaytemp = new HolidayTemp(new File(mainDir),date.getstrYear());
boolean update = false;
if( hsPara.get("update") != null )
update = true;
for(int i=0;i<tempdates.length;i++) {
HolidayTempData tempdata = holidaytemp.getHolidayTempData(tempdates[i]);
if(tempdata != null) {
String date_cur=tempdata.getDate();
if(tempdates.length-1>i) {
String date_next = holidaytemp.getHolidayTempData(tempdates[i+1]).getDate();
if(date_cur.equals(date_next)) {
String nexturl = url
+"?"+GSCmd.GS_PARA_CMD+"="+GSCmd.GS_HDAY
+"&"+GSCmd.GS_PARA_SUBCMD+"="+GSCmd.SUB_HDAY_TMP
+"&"+GSCmd.GS_PARA_DATE+"="+date.getstrYear();
String errmsg = plumeDate2(tempdates[i])+"偲"+plumeDate2(tempdates[i+1])+"偼摨堦偺擔晅偱偡丅";
CreateErrorPage epage = new CreateErrorPage(errmsg,urlMap,nexturl);
epage.write(req,res);
return false;
}
}
if(tempdata.getFlg()==-1) {
String nexturl = url
+"?"+GSCmd.GS_PARA_CMD+"="+GSCmd.GS_HDAY
+"&"+GSCmd.GS_PARA_SUBCMD+"="+GSCmd.SUB_HDAY_TMP
+"&"+GSCmd.GS_PARA_DATE+"="+date.getstrYear();
String errmsg = plumeDate2(tempdates[i])+ "偼晄惓側擔晅偱偡丅";
CreateErrorPage epage = new CreateErrorPage(errmsg,urlMap,nexturl);
epage.write(req,res);
return false;
}
if(update) {
holiday.addHoliday(date_cur,tempdata.getTitle(),0,true);
setSubstituteDay(holiday,tempdata,date,date_cur);
} else {
if(!holiday.isHoliday(date_cur)) {
holiday.addHoliday(date_cur,holidaytemp.getTitle(tempdates[i]),0);
setSubstituteDay(holiday,tempdata,date,date_cur);
}
}
}
}
holiday.Save();
}
}
//媥擔捛壛丄曄峏
if( (month != null) && (day != null)) {
//捛壛
if( hsPara.get(GSCmd.GS_PARA_ADDX) != null) {
if((imonth < 0) || (iday < 0)) {
String nexturl = url
+"?"+GSCmd.GS_PARA_CMD+"="+GSCmd.GS_HDAY
+"&"+GSCmd.GS_PARA_DATE+"="+date.getstrYear();
String errmsg = "晄惓側擔晅偱偡丅";
CreateErrorPage epage = new CreateErrorPage(errmsg,urlMap,nexturl);
epage.write(req,res);
return false;
}
//廳暋僠僃僢僋
if(holiday.isHoliday(imonth,iday)) {
String nexturl = url
+"?"+GSCmd.GS_PARA_CMD+"="+GSCmd.GS_HDAY
+"&"+GSCmd.GS_PARA_DATE+"="+date.getstrYear();
CreateErrorPage epage = new CreateErrorPage("偡偱偵擖椡偝傟偰偄傑偡丅",urlMap,nexturl);
epage.write(req,res);
return false;
}
//晄惓僠僃僢僋
GSDate chkdate = new GSDate();
chkdate.setYMD(date.getYear(),imonth,1);
if(chkdate.getMaxDayOfMonth() < iday) {
String nexturl = url
+"?"+GSCmd.GS_PARA_CMD+"="+GSCmd.GS_HDAY
+"&"+GSCmd.GS_PARA_DATE+"="+date.getstrYear();
String errmsg = "晄惓側擔晅偱偡丅";
CreateErrorPage epage = new CreateErrorPage(errmsg,urlMap,nexturl);
epage.write(req,res);
return false;
}
holiday.addHoliday(imonth,iday,title,0);
holiday.Save();
}
//曄峏
if( (hsPara.get(GSCmd.GS_PARA_MD) != null) && (hsPara.get(GSCmd.GS_PARA_EDITX) != null)) {
if((imonth < 0) || (iday < 0)) {
String nexturl = url
+"?"+GSCmd.GS_PARA_CMD+"="+GSCmd.GS_HDAY
+"&"+GSCmd.GS_PARA_DATE+"="+date.getstrYear();
String errmsg = "晄惓側擔晅偱偡丅";
CreateErrorPage epage = new CreateErrorPage(errmsg,urlMap,nexturl);
epage.write(req,res);
return false;
}
if(holiday.isHoliday(imonth,iday)) {
GSDate gsDate = new GSDate();
gsDate.setYMD(date.getYear(),imonth,iday);
if(Integer.parseInt(date.getstrMonth()+date.getstrDay()) !=
Integer.parseInt(gsDate.getstrMonth()+gsDate.getstrDay())) {
String nexturl = url
+"?"+GSCmd.GS_PARA_CMD+"="+GSCmd.GS_HDAY
+"&"+GSCmd.GS_PARA_DATE+"="+date.getstrYear();
CreatePage epage = new CreateErrorPage("偡偱偵擖椡偝傟偰偄傑偡丅",urlMap,nexturl);
epage.write(req,res);
return false;
}
}
//晄惓僠僃僢僋
GSDate chkdate = new GSDate();
chkdate.setYMD(date.getYear(),imonth,1);
if(chkdate.getMaxDayOfMonth() < iday) {
String nexturl = url
+"?"+GSCmd.GS_PARA_CMD+"="+GSCmd.GS_HDAY
+"&"+GSCmd.GS_PARA_DATE+"="+date.getstrYear();
String errmsg = "晄惓側擔晅偱偡丅";
CreateErrorPage epage = new CreateErrorPage(errmsg,urlMap,nexturl);
epage.write(req,res);
return false;
}
holiday.deleteHoliday( date.getstrMonth()+date.getstrDay() );
holiday.addHoliday(imonth,iday,title,0);
holiday.Save();
}
}
//媥擔嶍彍儁乕僕昞帵
String[] mds = (String[])hsPara.get(GSCmd.GS_PARA_CBOX);
if( (mds != null) && (hsPara.get(GSCmd.GS_PARA_DELETEPAGEX) != null)) {
Para[] param = new Para[3+mds.length];
param[0] = new Para(GSCmd.GS_PARA_CMD,Integer.toString(GSCmd.GS_HDAY));
param[1] = new Para(GSCmd.GS_PARA_DELETE,"damy");
param[2] = new Para(GSCmd.GS_PARA_DATE,date.getstrYear());
for( int i=3; i<3+mds.length; i++)
param[i] = new Para(GSCmd.GS_PARA_CBOX,mds[i-3]);
CreatePage page = new CreateMsgPage(CreateMsgPage.MB_YESNO
,CreateMsgPage.ID_POST
,"嶍彍妋擣"
,""+mds.length+"審傪嶍彍偟傑偡丅傛傠偟偄偱偡偐丅"
,param
,urlMap+GSFilename.GS_MSGICON);
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -