?? inputregisteraction.java
字號:
package com.action;
import org.apache.struts.action.*;
import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse;
import java.sql.SQLException;
import com.tool.pagetool.Page;
import javax.servlet.http.HttpSession;
import com.tool.QueryStrCreator;
import com.tool.pagetool.PageTool;
import com.tool.pagetool.PageToolBuilder;
import com.dao.InputApplyDAO;
import com.bean.InputApply;
import com.bean.InputRegister;
import com.dao.InputRegisterDAO;
import java.util.Date;
import java.text.SimpleDateFormat;
/**
* <p>Title: </p>
*
* <p>Description: </p>
*
* <p>Copyright: Copyright (c) 2007</p>
*
* <p>Company: </p>
*
* @author not attributable
* @version 1.0
*/
public class InputRegisterAction extends Action {
public ActionForward execute(ActionMapping mapping,
ActionForm form,
HttpServletRequest request,
HttpServletResponse response) throws Exception {
request.setCharacterEncoding("gb2312");
response.setContentType("text/html;charset=gb2312");
InputRegister inputReg=(InputRegister)form;
String flag = request.getParameter("flag");
ActionErrors actionErrors = new ActionErrors();
String target = null;
if(flag.equals("selectInputApply")){
try{
int inApId=(request.getParameter("inIpId")==null?-1:Integer.parseInt(request.getParameter("inIpId").toString()));
InputApply inputApp=InputApplyDAO.selectInputApplyByinApId(inApId);
request.setAttribute("inputAppForInputReg", inputApp);
target="showInputApplySelected";
}catch(SQLException e){
e.printStackTrace();
ActionError actionError = new ActionError("errors.generally.failed",e.getMessage());
actionErrors.add("selectInputApplyFeiled", actionError);
saveErrors(request, actionErrors);
target = "listForCreateInReg";
}
}else if(flag.equals("forInsert")){ //插入新的
try{
String sysDate=new SimpleDateFormat("yyyy-MM-dd HH:mm:ss").format(new Date()); //獲得系統當前時間
inputReg.setRegisterDate(sysDate);
inputReg.setFirstAudFlag(0);
inputReg.setDelFlagd(0);
inputReg.setRegisterState(0);
InputRegisterDAO.startTransation();
int inApId=inputReg.getInApId();
int hasOne=InputRegisterDAO.selectInputRegisterByinApId(inApId);
if(hasOne!=-1){
InputRegisterDAO.activeInputRegister(hasOne);
InputRegisterDAO.updateInputRegister(inputReg);
}else{
int maxID=InputRegisterDAO.getLastId();
inputReg.setInRegiId(maxID+1);
InputRegisterDAO.insertInputRegister(inputReg);
hasOne=maxID+1;
}
InputRegisterDAO.updateInputInformStateTo1(inputReg.getInApId());
InputRegisterDAO.commit();
inputReg=InputRegisterDAO.selectInputRegisterByinRegiId(hasOne);
request.setAttribute("inputRegInfo",inputReg);
ActionError actionError = new ActionError("errors.addSuccese");
actionErrors.add("addInputRegisterSuccess",actionError);
saveErrors(request, actionErrors);
//target="listForCreateInReg";
target="showInpuRegInfo";
}catch(Exception e){
e.printStackTrace();
ActionError actionError = new ActionError("errors.addFailed",e.getMessage());
actionErrors.add("addInputRegisterFeiled", actionError);
saveErrors(request, actionErrors);
}
}else if(flag.equals("selectInpuReg") || flag.equals("forEdit")){ //查詢
try{
int inRegId=(request.getParameter("inRegId")==null?-1:Integer.parseInt(request.getParameter("inRegId").toString()));
InputRegister inReg=InputRegisterDAO.selectInputRegisterByinRegiId(inRegId);
request.setAttribute("inputRegInfo",inReg);
if(flag.equals("forEdit")){
target="forEdit";
}else target="showInpuRegInfo";
String forCancleInReg=request.getParameter("forCancleInReg")==null?"":request.getParameter("forCancleInReg");
String forInputShForm=request.getParameter("forInputShForm")==null?"":request.getParameter("forInputShForm");
request.setAttribute("forCancleInReg",forCancleInReg);
request.setAttribute("forInputShForm",forInputShForm);
String fromCancled=request.getParameter("fromCancled")==null?"":request.getParameter("fromCancled");
if(fromCancled.equals("fromCancled")) request.setAttribute("fromCancled","fromCancled");
}catch(Exception e){
e.printStackTrace();
ActionError actionError = new ActionError("errors.generally.failed",e.getMessage());
actionErrors.add("selectInputRegFeiled", actionError);
saveErrors(request, actionErrors);
target = "showAllInpuReg";
}
}else if(flag.equals("doUpdate")){//修改
try{
//inputReg
String sysDate=new SimpleDateFormat("yyyy-MM-dd HH:mm:ss").format(new Date()); //獲得系統當前時間
inputReg.setRegisterDate(sysDate);
InputRegisterDAO.updateInputRegister(inputReg);
InputRegister inReg=InputRegisterDAO.selectInputRegisterByinRegiId(inputReg.getInRegiId());
request.setAttribute("inputRegInfo",inReg);
ActionError actionError = new ActionError("errors.editSuccese");
actionErrors.add("EditInputRegisterSuccess",actionError);
saveErrors(request, actionErrors);
target = "showInpuRegInfo";
}catch(Exception e){
e.printStackTrace();
ActionError actionError = new ActionError("errors.editFailed",e.getMessage());
actionErrors.add("updateInputRegFeiled", actionError);
saveErrors(request, actionErrors);
target = "showAllInpuReg";
}
}else if(flag.equals("doDel")){ //刪除
String forCancleInReg=request.getParameter("forCancleInReg")==null?"":request.getParameter("forCancleInReg");
if(forCancleInReg.equals("forCancleInReg")) request.setAttribute("forCancleInReg",new String("forCancleInReg"));
try{
int inRegId=(request.getParameter("inRegId")==null?-1:Integer.parseInt(request.getParameter("inRegId").toString()));
int InApId=(request.getParameter("InApId")==null?-1:Integer.parseInt(request.getParameter("InApId").toString()));
InputRegisterDAO.startTransation();
InputRegisterDAO.deleteInputRegister(inRegId);
InputRegisterDAO.updateInputInformStateTo0(InApId);
InputRegisterDAO.commit();
ActionError actionError = new ActionError("errors.deleteSuccese");
actionErrors.add("delInputRegisterSuccess",actionError);
saveErrors(request, actionErrors);
initPage(request,"listAllInReg");
if(flag.equals("forCancleInReg"))request.setAttribute("forCancleInReg",new String("forCancleInReg"));
target="showAllInpuReg";
}catch(Exception e){
e.printStackTrace();
ActionError actionError = new ActionError("errors.deleteFeiled",e.getMessage());
actionErrors.add("deleteInputRegFeiled", actionError);
saveErrors(request, actionErrors);
target = "showAllInpuReg";
}
}else if(flag.equals("doActive")){ //激活
try{
int inRegId = (request.getParameter("inRegId") == null?-1:Integer.parseInt(request.getParameter("inRegId").toString()));
int inApId = (request.getParameter("InApId") == null?-1:Integer.parseInt(request.getParameter("InApId").toString()));
InputRegisterDAO.startTransation();
InputRegisterDAO.activeInputRegister(inRegId);
InputRegisterDAO.updateInputInformStateTo1(inApId);
InputRegisterDAO.commit();
ActionError actionError = new ActionError("errors.activeInputApplySuccese");
actionErrors.add("activeInputRegisterSuccess",actionError);
saveErrors(request, actionErrors);
initPage(request,"listCancledInReg");
target = "showCancledInReg";
}catch(Exception e){
e.printStackTrace();
ActionError actionError = new ActionError("errors.deleteFeiled",e.getMessage());
actionErrors.add("deleteInputRegFeiled", actionError);
saveErrors(request, actionErrors);
target = "showCancledInReg";
}
}else if(flag.equals("doAuditRev")){ //入庫申報反審核
int inRegId=(request.getParameter("inRegId")==null?-1:Integer.parseInt(request.getParameter("inRegId").toString()));
try{
InputRegisterDAO.updateInputRegisterRegisterStateTo0(inRegId);
}catch(Exception e){
e.printStackTrace();
ActionError actionError = new ActionError("errors.generally.failed", e.getMessage());
actionErrors.add("auditReverseFeiled", actionError);
saveErrors(request, actionErrors);
}
ActionError actionError = new ActionError("errors.auditReverseSuccess");
actionErrors.add("auditReverseSuccess", actionError);
saveErrors(request, actionErrors);
initPage(request,"forInputShFormRev");
request.setAttribute("forInputShForm",new String("forInputShFormRev"));
target="showAllInpuReg";
}else{
initPage(request,flag);
if(flag.equals("listAllInReg")){
target="showAllInpuReg";
}else if(flag.equals("forCancleInReg")){
request.setAttribute("forCancleInReg",new String("forCancleInReg"));
target="showAllInpuReg";
}else if(flag.equals("forInputShForm")){
request.setAttribute("forInputShForm",new String("forInputShForm"));
target="showAllInpuReg";
}else if(flag.equals("forInputShFormRev")){
request.setAttribute("forInputShForm",new String("forInputShFormRev"));
target="showAllInpuReg";
}else if(flag.equals("listCancledInReg")){
target="showCancledInReg";
}else target="listAll";
}
return mapping.findForward(target);
}
//初始化并獲得分頁
private Page initPage(HttpServletRequest request,String flag) {
String currentPageStr = request.getParameter("currentPage");
String queryStr = null;
if(flag.equals("listAllInReg") || flag.equals("forCancleInReg") || flag.equals("forInputShForm")){
queryStr = QueryStrCreator.create("listAllInReg", request);
}else if(flag.equals("forInputShFormRev")){
queryStr = QueryStrCreator.create("forInputShFormRev",request);
}else if(flag.equals("listCancledInReg")){
queryStr = QueryStrCreator.create("listCancledInReg", request);
}
int currentPage = 1; //當前頁碼
int size = 20; //每頁的記錄數
try { //防止從地址欄直接輸入非法頁碼
if (currentPageStr != null)
currentPage = new Integer(
currentPageStr).intValue();
} catch (Exception e) {
e.printStackTrace();
}
//處理分頁
//會話中是否已有分頁生成工具
PageTool pageTool = null;
HttpSession session = request.getSession();
pageTool = (PageTool) session.getAttribute("inputRegisterPageTool"); //有,則直接拿來用
if (pageTool == null) { //沒有,則新建,并放進會話中,以備下次用
pageTool = PageToolBuilder.builder(new InputRegisterDAO());
session.setAttribute("inputRegisterPageTool", pageTool);
}
//由分頁工具生成分頁
Page page = null;
try {
if (flag.equals("listAllInReg") || flag.equals("forCancleInReg") || flag.equals("listCancledInReg") || flag.equals("forInputShForm") || flag.equals("forInputShFormRev")){ //查詢時的分頁,是否需要查詢條件
page = pageTool.createPage(currentPage, size, queryStr);
}else{//其它非查詢的分頁
page = pageTool.createPage(currentPage, size);
}
} catch (SQLException ex) {
ex.printStackTrace();
}
//將分頁放進請求中,分發到下一個頁面顯示
if(flag.equals("listAllInReg") || flag.equals("forCancleInReg") || flag.equals("forInputShForm") || flag.equals("forInputShFormRev")){
request.setAttribute("allInputRegisterPage", page);
}else if(flag.equals("listCancledInReg")){
request.setAttribute("allCancledInputRegisterPage", page);
}else request.setAttribute("allInputRegisterPage", page);
return page;
}
}
?? 快捷鍵說明
復制代碼
Ctrl + C
搜索代碼
Ctrl + F
全屏模式
F11
切換主題
Ctrl + Shift + D
顯示快捷鍵
?
增大字號
Ctrl + =
減小字號
Ctrl + -