BaseAction


package com.web.base;

import java.io.*;
import java.util.*;

import javax.servlet.ServletOutputStream;
import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse;
import javax.servlet.http.HttpSession;

import org.apache.commons.lang.StringUtils;
import org.apache.struts2.ServletActionContext;
import org.apache.struts2.interceptor.ServletRequestAware;
import org.apache.struts2.interceptor.SessionAware;
import org.springframework.jdbc.core.JdbcTemplate;

import com.opensymphony.xwork2.Action;
import com.opensymphony.xwork2.ActionSupport;
import com.web.displaytag.PageList;
import com.web.event.service.EventStepService;
import com.web.event.service.EventsService;
import com.web.event.service.JcxxeventService;
import com.web.event.service.JtcyqkeventService;
import com.web.event.service.RhhjlbeventService;
import com.web.event.service.RwqjleventService;
import com.web.event.service.ShgxqkeventService;
import com.web.event.service.SjfjbService;
import com.web.event.service.SjyhxxbService;
import com.web.event.vo.EventStep;
import com.web.event.vo.Jcxxevent;
import com.web.event.vo.Jtcyqkevent;
import com.web.event.vo.Rhhjlbevent;
import com.web.event.vo.Rwqjlevent;
import com.web.event.vo.Shgxqkevent;
import com.web.event.vo.Sjfjb;
import com.web.sys.service.JcxxService;
import com.web.sys.service.JtcyqkService;
import com.web.sys.service.OpinfoService;
import com.web.sys.service.PagemenuService;
import com.web.sys.service.RhhjlbService;
import com.web.sys.service.RwqjlService;
import com.web.sys.service.ShgxqkService;
import com.web.sys.service.SysUsersService;
import com.web.sys.service.WordbookService;
import com.web.sys.vo.Jcxx;
import com.web.sys.vo.Jtcyqk;
import com.web.sys.vo.Opinfo;
import com.web.sys.vo.Pagemenu;
import com.web.sys.vo.Rhhjlb;
import com.web.sys.vo.Rwqjl;
import com.web.sys.vo.Shgxqk;
import com.web.sys.vo.SysUsers;
import com.web.sys.vo.User;
import com.web.utils.ExcelUtils;
import com.web.utils.FacesUtils;
import com.web.utils.Tools;

public abstract class BaseAction extends ActionSupport implements Action, SessionAware, ServletRequestAware {
public OpinfoService opinfoService;

public JdbcTemplate jdbcTemplate;

protected String returnPage = "list";

private JtcyqkeventService jtcyqkeventService;

private RhhjlbeventService rhhjlbeventService;

private RwqjleventService rwqjleventService;

private ShgxqkeventService shgxqkeventService;

private JcxxeventService jcxxeventService;

// private List<Jtcyqkevent> jtcyqklist;
// private List<Rhhjlbevent> rhhjlblist;
// private List<Rwqjlevent> rwqjllist;
// private List<Shgxqkevent> shgxqklist;
// private List<Jcxxevent> jcxxlist;

public JtcyqkService jtcyqkService;

public RhhjlbService rhhjlbService;

public RwqjlService rwqjlService;

public ShgxqkService shgxqkService;

public JcxxService jcxxService;

public List jtcyqklist;
public List rhhjlblist;
public List rwqjllist;
public List shgxqklist;
public List jcxxlist;


public void saveOpinfo(String message) {
Date insertTime = new Date(System.currentTimeMillis());
Long userid = getLoginuser().getId();
String ip = getIpAddr(this.getRequest());
Opinfo opinfo = new Opinfo();
opinfo.setInsertTime(insertTime);
opinfo.setIp(ip);
opinfo.setMessage(message);
opinfo.setUserid(userid);
opinfoService.save(opinfo);
}

public int persize;

public int PAGE_SIZE = 20;

public int pageNumber=1;



public String getSortOrder() {
return this.getRequest().getParameter("sort");
}

public String getSortOrderstr(String str) {
String orderstr=str;
if(FacesUtils.getValueInHashtableOfSession("sortstr")!=null)
orderstr=FacesUtils.getValueInHashtableOfSession("sortstr").toString();
if(this.getRequest().getParameter("sort")!=null&&this.getRequest().getParameter("dir")!=null&&this.getRequest().getParameter("page")==null){
String sortdir="asc";
Object obj=FacesUtils.getValueInHashtableOfSession("sortdir");
if(obj!=null){
if(obj.toString().equals("asc"))
sortdir="desc";
else sortdir="asc";
}
FacesUtils.setValueInHashtableOfSession("sortdir", sortdir);
orderstr=" order by t."+this.getSortOrder()+" "+sortdir;
}
return orderstr;
}

public abstract BaseService getService();

public abstract Object[] getSearchParam();

public abstract String getSortstr();

public String search() {
if(persize==0)
persize=20;
PAGE_SIZE=persize;

if(this.getSearch()!=null&&this.getSearch().equals("1")){
FacesUtils.clearValueInHashtableOfSessionKey("list");
FacesUtils.clearValueInHashtableOfSessionKey("pageNumber");
FacesUtils.clearValueInHashtableOfSessionKey("hql");
FacesUtils.clearValueInHashtableOfSessionKey("hql_count");
FacesUtils.clearValueInHashtableOfSessionKey("map");
FacesUtils.clearValueInHashtableOfSessionKey("sortstr");

FacesUtils.clearValueInHashtableOfSessionKey("ids");
FacesUtils.clearValueInHashtableOfSessionKey("sends");
}
if(this.getRequest()!=null){
if (StringUtils.isNotEmpty(this.getRequest().getParameter("page")))
pageNumber = Integer.parseInt(this.getRequest().getParameter("page"));
else{
Object obj=FacesUtils.getValueInHashtableOfSession("pageNumber",this.getSession());
if(obj!=null)
pageNumber=(Integer)obj;
}
}

String hql=null;
String hql_count=null;
Map map=null;
Object obj1=FacesUtils.getValueInHashtableOfSession("hql");
Object obj2=FacesUtils.getValueInHashtableOfSession("hql_count");
Object obj3=FacesUtils.getValueInHashtableOfSession("map");


if(obj1!=null&&obj2!=null&&obj3!=null){
hql=obj1.toString();
hql_count=obj2.toString();
map=(Map)obj3;

}else{
Object[] objs = this.getSearchParam();
hql=objs[0].toString();
hql_count=objs[1].toString();
map=(Map)objs[2];

}

String sortstr=this.getSortstr();

int resultSize=this.getService().getPageSize(hql_count.toString(),map);
if(pageNumber>Tools.ceil(resultSize, PAGE_SIZE))
pageNumber=Tools.ceil(resultSize, PAGE_SIZE);
List list = this.getService().getPageData(hql+sortstr, map, pageNumber, PAGE_SIZE);

PageList pageList = new PageList();
List pages = list;
pageList.setPageNumber(pageNumber);// 设置当前页数
pageList.setList(pages);// 设置当前页列表
pageList.setObjectsPerPage(PAGE_SIZE);// 设置page size
pageList.setFullListSize(resultSize); // 设置总页数

FacesUtils.setValueInHashtableOfSession("list", pageList);
FacesUtils.setValueInHashtableOfSession("pageNumber", pageNumber);
FacesUtils.setValueInHashtableOfSession("hql", hql);
FacesUtils.setValueInHashtableOfSession("hql_count", hql_count);
FacesUtils.setValueInHashtableOfSession("map", map);
FacesUtils.setValueInHashtableOfSession("sortstr", sortstr);

return returnPage;
}

public HttpServletRequest getRequest() {
return this.request;
}

public HttpSession getSession() {
//HttpServletRequest request = ServletActionContext.getRequest();
return this.request.getSession();
}

public User getUserInSession() {
Object obj = getSession().getAttribute("loginUser");
if (obj != null){
User user = (User) obj;
return user;
}
else
return null;
}

public String getIpAddr(HttpServletRequest request) {
String ip = request.getHeader("x-forwarded-for");
if (ip == null || ip.length() == 0 || "unknown".equalsIgnoreCase(ip)) {
ip = request.getHeader("Proxy-Client-IP");
}
if (ip == null || ip.length() == 0 || "unknown".equalsIgnoreCase(ip)) {
ip = request.getHeader("WL-Proxy-Client-IP");
}
if (ip == null || ip.length() == 0 || "unknown".equalsIgnoreCase(ip)) {
ip = request.getRemoteAddr();
}
return ip;
}

public Map session;

public void setSession(Map session) {
this.session = session;
}

public User getLoginuser() {
return (User) session.get("loginUser");
}

public HttpServletRequest request;

public void setServletRequest(HttpServletRequest request) {
this.request=request;
}

public String delete(){
search=null;
getService().removes(ids);

if(codes!=null)
getService().removes(codes);

return search();
}

public abstract String edit();
public abstract String save();
public abstract String deleteForm();
public abstract void editForm(Long id);
public Long[] ids;
public String[] idss;//附件删除转换
public String[] codes;
public String idsString;
public Long[] getIds() {
return ids;
}
public void setIds(Long[] ids) {
this.ids = ids;
}
public String[] getCodes() {
return codes;
}
public void setCodes(String[] codes) {
this.codes = codes;
}

public String search;

public String getSearch() {
return search;
}

public void setSearch(String search) {
this.search = search;
}

public void setOpinfoService(OpinfoService opinfoService) {
this.opinfoService = opinfoService;
}

public WordbookService wordbookService;

public void setWordbookService(WordbookService wordbookService) {
this.wordbookService = wordbookService;
}

public void exportExcel(Map beans,String templateName,String filename) {
try {
HttpServletResponse response = ServletActionContext.getResponse();
response.setContentType("application/vnd.ms-excel");
response.setHeader("Content-disposition", "attachment; filename=\"" + filename);
ServletOutputStream outStream = response.getOutputStream();
ExcelUtils.exportExcel(beans, this.getText("template.path") + System.getProperty("file.separator") + templateName, outStream);
response.getOutputStream().flush();
response.getOutputStream().close();
outStream.close();
} catch (FileNotFoundException e) {
e.printStackTrace();
} catch (UnsupportedEncodingException e) {
e.printStackTrace();
} catch (IOException e) {
e.printStackTrace();
}
}

public void exportAll() {
if(getTemplateName()!=null){
String templateName=getTemplateName();
String sortstr=FacesUtils.getValueInHashtableOfSession("sortstr").toString();
String hql=FacesUtils.getValueInHashtableOfSession("hql").toString()+sortstr;
Map map=(Map)FacesUtils.getValueInHashtableOfSession("map");
List list = this.getService().getPageData(hql, map);
Map beans=new HashMap();
beans.put("list", list);
String filename=templateName+Tools.getNowTime()+".xls";
exportExcel(beans, templateName+".xls", filename);
//日志
String message=templateName+"报表导出";
saveOpinfo(message);
}
}

public String getTemplateName(){
return null;
}

public int getPersize() {
return persize;
}

public void setPersize(int persize) {
this.persize = persize;
}

public void setJdbcTemplate(JdbcTemplate jdbcTemplate) {
this.jdbcTemplate = jdbcTemplate;
}

public boolean getAdd(){
String menuKey=(String)FacesUtils.getValueInHashtableOfSession("menuKey");
if(StringUtils.isNotBlank(menuKey)){
Long pagemenuid=Long.valueOf(menuKey.trim());
List list=(List)session.get("add_pagemenus");
if(list!=null&&list.contains(pagemenuid))
return true;
}
return false;
}
public boolean getModify(){
String menuKey=(String)FacesUtils.getValueInHashtableOfSession("menuKey");
if(StringUtils.isNotBlank(menuKey)){
Long pagemenuid=Long.valueOf(menuKey.trim());
List list=(List)session.get("modify_pagemenus");
if(list!=null&&list.contains(pagemenuid))
return true;
}
return false;
}
public boolean getDelete(){
String menuKey=(String)FacesUtils.getValueInHashtableOfSession("menuKey");
if(StringUtils.isNotBlank(menuKey)){
Long pagemenuid=Long.valueOf(menuKey.trim());
List list=(List)session.get("delete_pagemenus");
if(list!=null&&list.contains(pagemenuid))
return true;
}
return false;
}
public boolean getConfirm(){
String menuKey=(String)FacesUtils.getValueInHashtableOfSession("menuKey");
if(StringUtils.isNotBlank(menuKey)){
Long pagemenuid=Long.valueOf(menuKey.trim());
List list=(List)session.get("confirm_pagemenus");
if(list!=null&&list.contains(pagemenuid))
return true;
}
return false;
}
public int getFiltertype(){
String menuKey=(String)FacesUtils.getValueInHashtableOfSession("menuKey");
if(StringUtils.isNotBlank(menuKey)){
Long pagemenuid=Long.valueOf(menuKey.trim());
Pagemenu pagemenu=pagemenuService.get(pagemenuid);
return pagemenu.getFiltertype();
}
return 0;
}
public List<String> getTagList(){
String menuKey=(String)FacesUtils.getValueInHashtableOfSession("menuKey");
if(StringUtils.isNotBlank(menuKey)){
Long pagemenuid=Long.valueOf(menuKey.trim());
Pagemenu pagemenu=pagemenuService.get(pagemenuid);
if(pagemenu.getUsertags()!=null)
return Arrays.asList(pagemenu.getUsertags());
}
return null;
}

public EventStepService eventStepService;

public EventsService eventsService;

private PagemenuService pagemenuService;

public SysUsersService sysusersService;

public SjyhxxbService sjyhxxbService;

public SjfjbService sjfjbService;

public SysUsers sysUsers;

public String selectUser(){
sysUsers=sysusersService.get(sysUsers.getUserid());
//人员基本信息
jtcyqklist = jtcyqkService.getByHql("from Jtcyqk t where t.qykrybh = ? ", new Object[]{sysUsers.getUserid()});

rhhjlblist = rhhjlbService.getByHql("from Rhhjlb t where t.qykrybh = ?", new Object[]{sysUsers.getUserid()});

rwqjllist = rwqjlService.getByHql("from Rwqjl t where t.qykrybh = ?", new Object[]{sysUsers.getUserid()});

shgxqklist = shgxqkService.getByHql("from Shgxqk t where t.qykrybh = ?", new Object[]{sysUsers.getUserid()});

jcxxlist = jcxxService.getByHql("from Jcxx t where t.qykrybh = ?", new Object[]{sysUsers.getUserid()});

return "edit";
}
public String selectUser2(String eid){
//人员基本信息
jtcyqklist = jtcyqkeventService.getByHql("from Jtcyqkevent t where t.eid = ? ", new Object[]{eid});

rhhjlblist = rhhjlbeventService.getByHql("from Rhhjlbevent t where t.eid = ?", new Object[]{eid});

rwqjllist = rwqjleventService.getByHql("from Rwqjlevent t where t.eid = ?", new Object[]{eid});

shgxqklist = shgxqkeventService.getByHql("from Shgxqkevent t where t.eid = ?", new Object[]{eid});

jcxxlist = jcxxeventService.getByHql("from Jcxxevent t where t.eid = ?", new Object[]{eid});

return "edit";
}

public SysUsers getSysUsers() {
return sysUsers;
}

public void setSysUsers(SysUsers sysUsers) {
this.sysUsers = sysUsers;
}

public void setSysusersService(SysUsersService sysusersService) {
this.sysusersService = sysusersService;
}

public void setPagemenuService(PagemenuService pagemenuService) {
this.pagemenuService = pagemenuService;
}

public void setSjyhxxbService(SjyhxxbService sjyhxxbService) {
this.sjyhxxbService = sjyhxxbService;
}

public void setEventStepService(EventStepService eventStepService) {
this.eventStepService = eventStepService;
}

public void setEventsService(EventsService eventsService) {
this.eventsService = eventsService;
}

public List<EventStep> list;

public List<EventStep> getList() {
return list;
}

public void setList(List<EventStep> list) {
this.list = list;
}

public List<Sjfjb> filelist;

public List<Sjfjb> getFilelist() {
return filelist;
}

public void setFilelist(List<Sjfjb> filelist) {
this.filelist = filelist;
}

public File[] files; // 上传的文件
public String[] filesFileName; // 文件名称
public String[] filesContentType; // 文件类型
public int[] yxxzs;

public File[] getFiles() {
return files;
}
public void setFiles(File[] files) {
this.files = files;
}
public String[] getFilesContentType() {
return filesContentType;
}
public void setFilesContentType(String[] filesContentType) {
this.filesContentType = filesContentType;
}
public String[] getFilesFileName() {
return filesFileName;
}
public void setFilesFileName(String[] filesFileName) {
this.filesFileName = filesFileName;
}
public int[] getYxxzs() {
return yxxzs;
}
public void setYxxzs(int[] yxxzs) {
this.yxxzs = yxxzs;
}

public void setSjfjbService(SjfjbService sjfjbService) {
this.sjfjbService = sjfjbService;
}


public JtcyqkeventService getJtcyqkeventService() {
return jtcyqkeventService;
}

public void setJtcyqkeventService(JtcyqkeventService jtcyqkeventService) {
this.jtcyqkeventService = jtcyqkeventService;
}

public RhhjlbeventService getRhhjlbeventService() {
return rhhjlbeventService;
}

public void setRhhjlbeventService(RhhjlbeventService rhhjlbeventService) {
this.rhhjlbeventService = rhhjlbeventService;
}

public RwqjleventService getRwqjleventService() {
return rwqjleventService;
}

public void setRwqjleventService(RwqjleventService rwqjleventService) {
this.rwqjleventService = rwqjleventService;
}

public ShgxqkeventService getShgxqkeventService() {
return shgxqkeventService;
}

public void setShgxqkeventService(ShgxqkeventService shgxqkeventService) {
this.shgxqkeventService = shgxqkeventService;
}

public JcxxeventService getJcxxeventService() {
return jcxxeventService;
}

public void setJcxxeventService(JcxxeventService jcxxeventService) {
this.jcxxeventService = jcxxeventService;
}


public EventStepService getEventStepService() {
return eventStepService;
}

public EventsService getEventsService() {
return eventsService;
}

public SysUsersService getSysusersService() {
return sysusersService;
}

public SjyhxxbService getSjyhxxbService() {
return sjyhxxbService;
}

public SjfjbService getSjfjbService() {
return sjfjbService;
}

public JtcyqkService getJtcyqkService() {
return jtcyqkService;
}

public void setJtcyqkService(JtcyqkService jtcyqkService) {
this.jtcyqkService = jtcyqkService;
}

public RhhjlbService getRhhjlbService() {
return rhhjlbService;
}

public void setRhhjlbService(RhhjlbService rhhjlbService) {
this.rhhjlbService = rhhjlbService;
}

public RwqjlService getRwqjlService() {
return rwqjlService;
}

public void setRwqjlService(RwqjlService rwqjlService) {
this.rwqjlService = rwqjlService;
}

public ShgxqkService getShgxqkService() {
return shgxqkService;
}

public void setShgxqkService(ShgxqkService shgxqkService) {
this.shgxqkService = shgxqkService;
}

public JcxxService getJcxxService() {
return jcxxService;
}

public void setJcxxService(JcxxService jcxxService) {
this.jcxxService = jcxxService;
}

public List<Jtcyqk> getJtcyqklist() {
return jtcyqklist;
}

public void setJtcyqklist(List<Jtcyqk> jtcyqklist) {
this.jtcyqklist = jtcyqklist;
}

public List<Rhhjlb> getRhhjlblist() {
return rhhjlblist;
}

public void setRhhjlblist(List<Rhhjlb> rhhjlblist) {
this.rhhjlblist = rhhjlblist;
}

public List<Rwqjl> getRwqjllist() {
return rwqjllist;
}

public void setRwqjllist(List<Rwqjl> rwqjllist) {
this.rwqjllist = rwqjllist;
}

public List<Shgxqk> getShgxqklist() {
return shgxqklist;
}

public void setShgxqklist(List<Shgxqk> shgxqklist) {
this.shgxqklist = shgxqklist;
}

public List<Jcxx> getJcxxlist() {
return jcxxlist;
}

public void setJcxxlist(List<Jcxx> jcxxlist) {
this.jcxxlist = jcxxlist;
}

public String[] getIdss() {
return idss;
}

public void setIdss(String[] idss) {
this.idss=idss;
}

public String getIdsString() {
return idsString;
}

public void setIdsString(String idsString) {
this.idsString = idsString;
String[] ss = idsString.split(",");
setIdss(ss);
}


}

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值