package com.ydyd.rsp.trans;
/*
* 实现 日历的生成,先删除,后生成
* 2011-08-30
* */
import java.util.Calendar;
public class Svr814action implements IRspAction {
public RspResult execute(MainContext maincontext, IRspBean rspBean)
throws RspException {
Svr814bean mybean = (Svr814bean) rspBean;
YYTPORSP mf = new YYTPORSP();
int year=new Integer(mybean.getYear()).intValue();
String sql="delete from holiday where YMD like '%"+year+"%'";//删除已有日期信息
PersistentTool commonPersistent_gjj = PersistentTool.getInstance(
"resources/rsp.cfg.xml", true);
try {
commonPersistent_gjj.execute(sql);
} catch (Exception e1) {
try{
PersistentTool.rollback();
}catch(Exception e){
e.printStackTrace();
throw new RspException("回滚时出现异常!");
}
// TODO Auto-generated catch block
e1.printStackTrace();
throw new RspException("清理日期的时候出错,出错原因为【"+e1.getMessage()+"】");
}
//DayStatus[][] arr = new DayStatus[6][7];
Calendar c=Calendar.getInstance();//得到当年第一天和最后一天
c.set(Calendar.YEAR, year);
c.set(Calendar.MONTH,0);
c.set(Calendar.DATE, 1);
Calendar d=(Calendar)c.clone();
d.add(Calendar.YEAR, 1);
while(c.before(d))
{
DateUtility du=new DateUtility();
String date=du.cal2String(c);
int weekday = c.get(Calendar.DAY_OF_WEEK);
try{
if((date.substring(5)).equals("01-01")){
String sql1="insert into HOLIDAY (YMD,ISWORKDAY,INFO)values('"+date+"','1','元旦')";
//mf.executeUpdate(sql1);
commonPersistent_gjj.execute2(sql1);
}
else if((date.substring(5)).equals("05-01")){
String sql2="insert into HOLIDAY (YMD,ISWORKDAY,INFO)values('"+date+"','1','五一劳动节')";
//mf.executeUpdate(sql2);
commonPersistent_gjj.execute2(sql2);
}
else if((date.substring(5)).equals("10-01")){
String sql1="insert into HOLIDAY (YMD,ISWORKDAY,INFO)values('"+date+"','1','国庆节')";
//mf.executeUpdate(sql1);
commonPersistent_gjj.execute2(sql1);
}
else if(weekday==1||weekday==7)//如果是周末
{
if(weekday==1){String sql3="insert into HOLIDAY (YMD,ISWORKDAY,INFO) values ('"+date+"','1','星期天')";
// mf.executeUpdate(sql3);
commonPersistent_gjj.execute2(sql3);
}
else{String sql3="insert into HOLIDAY (YMD,ISWORKDAY,INFO) values ('"+date+"','1','星期六')";
// mf.executeUpdate(sql3);
commonPersistent_gjj.execute2(sql3);
}
}
else {//如果是工作日
String sql4="insert into HOLIDAY (YMD,ISWORKDAY)values('"+date+"','0')";
// mf.executeUpdate(sql4);
commonPersistent_gjj.execute2(sql4);
}
PersistentTool.commit();
}
catch (Exception e) {
try{
PersistentTool.rollback();
}catch(Exception e1){
e1.printStackTrace();
throw new RspException("rollback时出现异常!");
}
// TODO Auto-generated catch block
e.printStackTrace();
throw new RspException("插入假日表出现异常,错误原因【"+e.getMessage()+"】");
}
c.add(Calendar.DATE, 1);
}
// TODO Auto-generated method stub
return new ....();
}
}
日历生成---java 代码
最新推荐文章于 2021-07-24 16:22:06 发布