relationaction.java
来自「基于Sturts+Spring+Hibernate的一个高级销售管理系统。内容丰」· Java 代码 · 共 407 行 · 第 1/2 页
JAVA
407 行
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 + =
减小字号Ctrl + -
显示快捷键?