📄 newsdocaction.java
字号:
package com.easyjf.news.action;
import java.util.ArrayList;
import java.util.Calendar;
import java.util.Collection;
import java.util.Date;
import java.util.List;
import com.easyjf.dbo.EasyJDB;
import com.easyjf.news.business.NewsUtil;
import com.easyjf.news.business.NewsDir;
import com.easyjf.news.business.NewsDoc;
import com.easyjf.util.CommUtil;
import com.easyjf.web.Module;
import com.easyjf.web.Page;
import com.easyjf.web.WebForm;
import com.easyjf.web.tools.DbPageList;
import com.easyjf.web.tools.IActiveUser;
import com.easyjf.web.tools.IPageList;
public class NewsDocAction extends BaseAction {
private NewsDir newsDir;
public IPageList doQuery(WebForm form, int currentPage, int pageSize) {
String scope="1=1";
String queryTitle=CommUtil.null2String(form.get("queryTitle"));
String queryAuthor=CommUtil.null2String(form.get("queryAuthor"));
String querySource=CommUtil.null2String(form.get("querySource"));
String queryAuditing=CommUtil.null2String(form.get("queryAuditing"));
String querySelected=CommUtil.null2String(form.get("querySelected"));
Collection paras=new ArrayList();
if(newsDir!=null)
{
//scope+=" and dirSn=?";
//paras.add(newsDir.getSn());
scope+=" and dirPath like ?";
//System.out.println(newsDir.getDirPath());
paras.add(newsDir.getDirPath().trim()+"%");
}
if(!queryTitle.equals(""))
{
scope+=" and title like ?";
paras.add("%"+queryTitle+"%");
}
if(!queryAuthor.equals(""))
{
scope+=" and author like ?";
paras.add("%"+queryAuthor+"%");
}
if(!querySource.equals(""))
{
scope+=" and source like ?";
paras.add("%"+querySource+"%");
}
if("1".equals(queryAuditing))
{
scope+=" and auditing>0";
}
if("1".equals(querySelected))
{
scope+=" and selected>0";
}
String orderType=CommUtil.null2String(form.get("orderType"));
String orderField=CommUtil.null2String(form.get("orderField"));
if(orderField.equals(""))
{
orderField="inputTime";
orderType="desc";
}
if(!orderField.equals(""))
{
scope +=" order by "+orderField;
if(!orderType.equals(""))scope+=" "+orderType;
}
DbPageList pList=new DbPageList(NewsDoc.class,scope,paras);
pList.doList(currentPage,pageSize);
return pList;
}
public Page doMulitDel(WebForm form, Module module) throws Exception {
String MulitCid=CommUtil.null2String(form.get("mulitCid"));
boolean opSuccess=false;
if(!MulitCid.equals("")){//执行批量删除
String[] s=MulitCid.split(",");
String scope="cid in('";
for(int i=0;i<s.length;i++)
{
scope+=s[i]+"'"+(i==s.length-1?"":",'");
}
scope+=")";
EasyJDB db=EasyJDB.getInstance();
if(db.execute("delete from DynamicStaticPair where "+scope)>0)opSuccess=true;
if(!opSuccess)
form.addResult("msg","删除数据失败!");
else
form.addResult("msg","删除数据成功!");
}
return super.doQuery(form,module,this.getCurrentUser(form));
}
public Page doPublish(WebForm form, Module module) throws Exception {
String MulitCid=CommUtil.null2String(form.get("mulitCid"));
int num=0;
if(!MulitCid.equals("")){//执行批量删除
String[] s=MulitCid.split(",");
for(int i=0;i<s.length;i++)
{
NewsDoc doc=NewsDoc.read(s[i]);
if(doc!=null && doc.publish(true))num++;
}
form.addResult("msg","成功发布"+num+"条文章信息!");
}
return super.doQuery(form,module,this.getCurrentUser(form));
}
public Page doAdd(WebForm form, Module module, IActiveUser user) {
Page forward=null;
NewsDoc obj=(NewsDoc)form2Obj(form);
if(obj==null)
{
form.addResult("msg","无法创建要保存的对象,添加失败!");
return module.findPage("edit");
}
if(obj.save())
{
form.addResult("msg","数据添加成功!");
forward=doQuery(form,module,user);
}
else
{
form.addResult("msg","数据添加失败");
forward=module.findPage("edit");
}
return forward;
}
public Page doUpdate(WebForm form, Module module, IActiveUser user) {
Page forward=null;
NewsDoc obj=(NewsDoc)form2Obj(form);
if(obj.update())
{
form.addResult("msg","数据修改成功!");
forward=doQuery(form,module,user);
}
else
{
form.addResult("msg","数据修改失败");
forward=module.findPage("edit");
}
return forward;
}
public Object form2Obj(WebForm form) {
String cid=CommUtil.null2String(form.get("cid"));
NewsDoc obj=null;
if(cid.equals(""))
{
obj=(NewsDoc)form.toPo(NewsDoc.class);
obj.setInputUser(this.getCurrentUser(form).getUserName());
obj.setStatus(new Integer(0));
obj.setInputTime(new Date());
}
else
{
obj=NewsDoc.read(cid);
form.toPo(obj);
}
if(obj!=null && ("add".equals(this.getCommand())||"update".equals(this.getCommand())))
{
NewsDir dir=NewsDir.readBySn(obj.getDirSn().trim());
obj.setDisplayTime(parseDisplayTime(form));
if("".equals(CommUtil.null2String(form.get("auditing"))))obj.setAuditing(new Integer(0));
if("".equals(CommUtil.null2String(form.get("selected"))))obj.setSelected(new Integer(0));
//System.out.println("目录路径"+dir.getDirPath());
if(dir!=null)obj.setDirPath(dir.getDirPath());
}
return obj;
}
public Object doBefore(WebForm form, Module module) {
//系统后台,添加/删除/修改
if("".equals(this.getCommand())||"list".equals(this.getCommand())||"edit".equals(this.getCommand())|| "save".equals(this.getCommand()) || "update".equals(this.getCommand())|| "del".equals(this.getCommand()))
{
if(this.getCurrentUser(form)==null){
form.addResult("msg","您没有登录,或者登录信息已经超时,请重新登录!");
return new Page("popedomError","/nologin.htm","page");
}
}
String dirSn=CommUtil.null2String(form.get("dirSn"));
if(!dirSn.equals(""))newsDir=NewsDir.readBySn(dirSn);
return super.doBefore(form,module);
}
public void doAfter(WebForm form, Module module) {
// TODO Auto-generated method stub
super.doAfter(form, module);
NewsDir dir=NewsDir.readBySn((String)form.get("dirSn"));
if(dir!=null)form.addResult("dir",dir);
if("new".equals(this.getCommand())||"edit".equals(this.getCommand()))
{
form.addResult("statusOptions",CommUtil.getSelectOptions(NewsDoc.statusTitle,""+form.get("status")));
form.addResult("typesOptions",CommUtil.getSelectOptions(NewsDoc.typesTitle,""+form.get("types")));
List allDir=NewsUtil.getAllDir();
if(allDir!=null)
{
String[][] dirs =new String[allDir.size()][2];
for(int i=0;i<allDir.size();i++)
{
dirs[i][0]=((NewsDir)allDir.get(i)).getSn().trim();
dirs[i][1]=((NewsDir)allDir.get(i)).getTitle().trim();
}
form.addResult("allDirOptions",CommUtil.getSelectOptions(dirs,(String)form.get("dirSn")));
// 显示日期displaytime
Calendar currentDa=Calendar.getInstance();
currentDa.setTime(new Date());
Calendar ca=Calendar.getInstance();
Object doc=form2Obj(form);
if(doc!=null && doc instanceof NewsDoc )
{
if(((NewsDoc)doc).getDisplayTime()!=null)ca.setTime(((NewsDoc)doc).getDisplayTime());
}
//ca.setTime((doc!=null && doc instanceof NewsDoc &&(((NewsDoc)doc).getDisplayTime()!=null)?((NewsDoc)doc).getDisplayTime():new Date()));
form.addResult("displayYearOptions",CommUtil.getSelectOptions(currentDa.get(Calendar.YEAR)-10,currentDa.get(Calendar.YEAR)+10,ca.get(Calendar.YEAR)));
form.addResult("displayMonthOptions",CommUtil.getSelectOptions(1,12,ca.get(Calendar.MONTH)+1));
form.addResult("displayDayOptions",CommUtil.getSelectOptions(1,31,ca.get(Calendar.DAY_OF_MONTH)));
form.addResult("displayHourOptions",CommUtil.getSelectOptions(1,24,ca.get(Calendar.HOUR_OF_DAY)));
form.addResult("displayMinuteOptions",CommUtil.getSelectOptions(1,60,ca.get(Calendar.MINUTE)));
if("1".equals(""+form.get("selected")))form.addResult("isSelected","true");
if("1".equals(""+form.get("auditing")))form.addResult("isAuditing","true");
}
}
}
private Date parseDisplayTime(WebForm form)
{
String displayYear=CommUtil.null2String(form.get("displayYear"));
String displayMonth=CommUtil.null2String(form.get("displayMonth"));
String displayDay=CommUtil.null2String(form.get("displayDay"));
String displayHour=CommUtil.null2String(form.get("displayHour"));
String displayMinute=CommUtil.null2String(form.get("displayMinute"));
Date displayTime=new Date();
if(!displayYear.equals("")&& (!displayMonth.equals(""))&&(!displayDay.equals("")))
{
String display=displayYear+"-"+displayMonth+"-"+displayDay;
display+=" "+(displayHour.equals("")?"0":displayHour);
display+=":"+(displayMinute.equals("")?"0":displayMinute)+":00";
java.text.SimpleDateFormat dateFormat=new java.text.SimpleDateFormat("yyyy-MM-dd hh:mm:ss");
try{
displayTime=dateFormat.parse(display);
}
catch(Exception e)
{
System.out.println("错误的日期格式:"+display+e);
}
}
return displayTime;
}
}
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -