?? relationaction.java
字號:
package com.yuanchung.sales.struts;
import java.util.ArrayList;
import java.util.List;
import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse;
import org.apache.log4j.Logger;
import org.apache.struts.action.ActionForm;
import org.apache.struts.action.ActionForward;
import org.apache.struts.action.ActionMapping;
import org.apache.struts.actions.DispatchAction;
import com.yuanchung.sales.config.ClassCodeMgr;
import com.yuanchung.sales.exception.ApplicationException;
import com.yuanchung.sales.model.user.User;
import com.yuanchung.sales.service.RelationManage;
import com.yuanchung.sales.util.Constants;
import com.yuanchung.sales.util.DateTimeTool;
import com.yuanchung.sales.util.SessionMgr;
import com.yuanchung.sales.util.StringTool;
import com.yuanchung.sales.util.XPage;
import com.yuanchung.sales.vo.DeleteItemVo;
import java.io.UnsupportedEncodingException;
import java.net.URLDecoder;
public class RelationAction extends DispatchAction {
private static Logger logger = Logger.getLogger(RelationAction.class);
private RelationManage relationManage;
public RelationManage getRelationManage() {
return relationManage;
}
public void setRelationManage(RelationManage relationManage) {
this.relationManage = relationManage;
}
/**
* 所有的刪除數據
* @param mapping
* @param form
* @param request
* @param response
* @return
* @throws ApplicationException
*/
public ActionForward allDeleteData(ActionMapping mapping, ActionForm form,
HttpServletRequest request, HttpServletResponse response)
throws ApplicationException {
try{
User user = SessionMgr.getCustSession(request);
//查找直接刪除的數據, 標記3
List<DeleteItemVo> deleteItems = relationManage.getAllDeleteItem(user, Constants.DELETESELF);
String currentPage = request.getParameter("currentPage");
XPage xpage = new XPage(request.getContextPath()
+ "/relation.do?method=allDeleteData", deleteItems.size(),
1, 10, deleteItems);
if (currentPage != null && !currentPage.equals("")) {
xpage.setCurrentItems(Integer.parseInt(currentPage));
} else {
xpage.setCurrentItems(1);
}
xpage.setPageBar();
request.setAttribute("xpage", xpage);
logger.debug("有刪除的數據嗎..."+deleteItems);
}catch(Exception e) {
e.printStackTrace();logger.error("find deleted data error");
request.setAttribute(Constants.ERRMSG, Constants.WITHOUTDATA);
throw new ApplicationException("find deleted data error");
}
return mapping.findForward("listDeleteData");
}
/**
* 恢復所有的數據
* @param mapping
* @param form
* @param request
* @param response
* @return
* @throws ApplicationException
*/
public ActionForward renewData(ActionMapping mapping, ActionForm form,
HttpServletRequest request, HttpServletResponse response)
throws ApplicationException {
User user = SessionMgr.getCustSession(request);
String iValue = request.getParameter("iValue");
logger.debug("恢復數量..."+iValue);
//前置條件
if(!StringTool.isNotBlank(iValue)){//如果條件為空
request.setAttribute(Constants.ERRMSG, "對不起,你可能還沒有選擇!");
throw new ApplicationException("the param input exception!");
}
try{
for(int i = 1; i <= Integer.parseInt(iValue); i++) {
String boxId = request.getParameter("box"+i);
//若沒有選擇,則跳出
if(boxId == null || boxId.equals("")){
continue;
}
//獲取刪除的類型
String type = request.getParameter("type"+i);
//獲取刪除數據的ID
String id = request.getParameter("id"+i);
//恢復數據
relationManage.updateEntitysStates(user.getId(), DateTimeTool.getCurrentDate("yyyy-MM-dd HH:mm:ss"), Integer.parseInt(type), Integer.parseInt(id), Constants.ACTIVEFLAG, Constants.ACTIVEFLAG);
}
}catch(Exception e) {
logger.error("can't renew data...");
request.setAttribute(Constants.ERRMSG, "系統不能恢復數據!");
throw new ApplicationException("系統不能恢復數據!");
}
return mapping.findForward("allDeleteData");
}
/**
* 清空回收站
* @param mapping
* @param form
* @param request
* @param response
* @return
* @throws ApplicationException
*/
public ActionForward cleanData(ActionMapping mapping, ActionForm form,
HttpServletRequest request, HttpServletResponse response)
throws ApplicationException {
User user = SessionMgr.getCustSession(request);
String iValue = request.getParameter("iValue");
logger.debug("--這個值是多少--:"+iValue);
//前置條件
if(!StringTool.isNotBlank(iValue)){//如果條件為空
request.setAttribute(Constants.ERRMSG, "對不起,你可能還沒有選擇!");
throw new ApplicationException("the param input exception!");
}
try{
for(int i = 1; i <= Integer.parseInt(iValue); i++) {
String boxId = request.getParameter("box"+i);
//若沒有選擇,則跳出
if(boxId == null || boxId.equals("")){
continue;
}
//獲取刪除的類型
String type = request.getParameter("type"+i);
logger.debug("--type--:"+type);
//獲取刪除數據的ID
String id = request.getParameter("id"+i);
logger.debug("--id--:"+id);
//刪除數據
relationManage.deleteDatas(Integer.parseInt(id), Constants.PASSIVITY, Integer.parseInt(type));
}
}catch(Exception e) {
logger.error("can't renew data...");
request.setAttribute(Constants.ERRMSG, "清空所選的數據異常!");
throw new ApplicationException("清空所選的數據異常!");
}
return mapping.findForward("allDeleteData");
}
/**
* 查找數據
* @param mapping
* @param form
* @param request
* @param response
* @return
* @throws ApplicationException
*/
public ActionForward findDataLeft(ActionMapping mapping, ActionForm form,
HttpServletRequest request, HttpServletResponse response)
throws ApplicationException {
RelationForm relationForm = (RelationForm)form;
String type = relationForm.getSearchType();
logger.debug("類型..."+type);
String name = relationForm.getSearchName();
logger.debug("搜索名稱..."+name);
String myItems = relationForm.getMyItems();
logger.debug("僅限于我的項目..."+myItems);
try {
name = URLDecoder.decode(name,"UTF-8");
relationForm.setSearchName(name);
logger.debug("名稱..."+name);
} catch (UnsupportedEncodingException e1) {
e1.printStackTrace();
logger.error(e1);
request.setAttribute(Constants.ERRMSG, Constants.INPUTBANK);
throw new ApplicationException("can not transform codes to UTF-8");
}
request.setAttribute("relationForm", relationForm);
User user = SessionMgr.getCustSession(request);
String forward = "";
//前置條件
if(!StringTool.isNotBlank(type)){//如果條件為空
type = "0";
}
forward = "globalData"; //跳轉到全局數據
int isExsits = 1;//是否存在數據
try{
int typeInt = Integer.parseInt(type);
List<String> tixingList = new ArrayList<String>();
switch(typeInt) {
case ClassCodeMgr.CUSTOMERINT:
//查找客戶數據
?? 快捷鍵說明
復制代碼
Ctrl + C
搜索代碼
Ctrl + F
全屏模式
F11
切換主題
Ctrl + Shift + D
顯示快捷鍵
?
增大字號
Ctrl + =
減小字號
Ctrl + -