个人信息的增删改查action

来源:互联网 发布:淘宝客的导购名称 编辑:程序博客网 时间:2024/05/07 12:30
package com.ebiz.bp_mysql.web.struts.manager.admin;


import java.util.List;

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

import org.apache.commons.beanutils.DynaBean;
import org.apache.commons.lang.ArrayUtils;
import org.apache.commons.lang.StringUtils;
import org.apache.commons.validator.GenericValidator;
/*GenericValidator类的验证方法:
isBlankOrNull: 验证字段是否为null,或者长度是否为0。
isByte:验证字段是否可以被转换为有小的byte类型的数据。
isCreditCard:验证字段是否为有效的信用卡号。
isDate:验证字段是否为有效的日期。
isDouble:验证字段是否可以被转换成有效的double类型的数据。
isEmail:验证字段是否为有效的Email地址。
isFloat:验证字段是否可以被转换为有效的float类型的数据。
isInRange:雁阵谷子断时候借于最小值和最大值之间。
isInt:验证字段是否可以被转换为有效的int类型的数据。
isLong:验证字段是否可以被转换为有效的long类型的数据。 来isShort:验证字段是否可以被转换为有效的short类型的数据。
matchTegexp:验证字段是否和正规表达式匹配。
maxLength:验证字段时候小于或等于最大值。
minLength:验证字段时候大于或等于最小值。 */
import org.apache.struts.action.ActionForm;
import org.apache.struts.action.ActionForward;
import org.apache.struts.action.ActionMapping;

import com.ebiz.bp_mysql.domain.UserTestHpp;
import com.ebiz.ssi.web.struts.bean.Pager;


public class UserTestHppAction extends BaseAdminAction {
    public ActionForward unspecified(ActionMapping mapping, ActionForm form, HttpServletRequest request,
            HttpServletResponse response) throws Exception {
        return this.list(mapping, form, request, response);
    }

    public ActionForward list(ActionMapping mapping, ActionForm form, HttpServletRequest request,
            HttpServletResponse response) throws Exception {
        setNaviStringToRequestScope(request);

        DynaBean dynaBean = (DynaBean) form;
        Pager pager = (Pager) dynaBean.get("pager");
        String is_del = (String) dynaBean.get("is_del");
        String user_name_like = (String) dynaBean.get("user_name_like");

        UserTestHpp entity = new UserTestHpp();
        //只显示未删除的
        if (null == is_del) {
            entity.setIs_del(0);
        dynaBean.set("is_del", "0");
        }
        super.copyProperties(entity, dynaBean);
        entity.getMap().put("user_name_like", user_name_like);

        long recordCount = getFacade().getUserTestHppService().getUserTestHppCount(entity);
        pager.init(recordCount, pager.getPageSize(), pager.getRequestPage());
        entity.getRow().setFirst(pager.getFirstRow());
        entity.getRow().setCount(pager.getRowCount());

        List<UserTestHpp> list = getFacade().getUserTestHppService().getUserTestHppPaginatedList(entity);
        request.setAttribute("userTestHppList", list);
        return mapping.findForward("list");
    }

    public ActionForward add(ActionMapping mapping, ActionForm form, HttpServletRequest request,
            HttpServletResponse response) throws Exception {
        setNaviStringToRequestScope(request);
        DynaBean dynaBean = (DynaBean) form;
        dynaBean.set("user_desc", "0");
        return mapping.findForward("input");
    }

    public ActionForward delete(ActionMapping mapping, ActionForm form, HttpServletRequest request,
            HttpServletResponse response) throws Exception {

        DynaBean dynaBean = (DynaBean) form;

        String id = (String) dynaBean.get("id");
        String[] pks = (String[]) dynaBean.get("pks");//pks代表删除所选的数组
        String mod_id = (String) dynaBean.get("mod_id");//mod_id表示数据库中的id
        //UserInfo sessionUi = super.getUserInfoFromSession(request);

        if (!StringUtils.isBlank(id) && GenericValidator.isLong(id)) {
            UserTestHpp entity = new UserTestHpp();
            entity.setIs_del(1);
            entity.setId(new Integer(id));
            //entity.setDel_user_id(sessionUi.getId());
            getFacade().getUserTestHppService().modifyUserTestHpp(entity);
            saveMessage(request, "entity.deleted");
        } else if (!ArrayUtils.isEmpty(pks)) {
            UserTestHpp entity = new UserTestHpp();
            entity.setIs_del(1);
            
            //entity.setDel_user_id(sessionUi.getId());
            entity.getMap().put("pks", pks);
            getFacade().getUserTestHppService().modifyUserTestHpp(entity);
            saveMessage(request, "entity.deleted");
        }
        // the line below is added for pagination
        StringBuffer pathBuffer = new StringBuffer();
        pathBuffer.append(mapping.findForward("success").getPath());
        pathBuffer.append("&mod_id=").append(mod_id);
        pathBuffer.append("&");
        pathBuffer.append(super.encodeSerializedQueryString(super.serialize(request, "id", "ids", "method")));
        ActionForward forward = new ActionForward(pathBuffer.toString(), true);
        // end
        return forward;
    }


    public ActionForward edit(ActionMapping mapping, ActionForm form, HttpServletRequest request,
            HttpServletResponse response) throws Exception {
        setNaviStringToRequestScope(request);

        DynaBean dynaBean = (DynaBean) form;
        String id = (String) dynaBean.get("id");//bean绑定页面元素
        /*
        String user_name = (String) dynaBean.get("user_name");
        String real_name = (String) dynaBean.get("real_name");
        Integer sex = (Integer) dynaBean.get("sex");
        Integer age = (Integer) dynaBean.get("age");
        String education = (String) dynaBean.get("education");
        Date birth_year = (Date) dynaBean.get("birth_year");
        Integer user_desc = (Integer) dynaBean.get("user_desc");
        Integer is_del = (Integer) dynaBean.get("is_del");
        */
        UserTestHpp userTestHpp = new UserTestHpp();
        userTestHpp.setId(new Integer(id));

        UserTestHpp entity = getFacade().getUserTestHppService().getUserTestHpp(userTestHpp);

        // the line below is added for pagination
        entity.setQueryString(super.serialize(request, "id", "method"));
        // end

        super.copyProperties(form, entity);//super.copyProperties(form, entity); 的目的是针对两个javaBean 相互拷贝,只要两个javabean中有相同的属性名,就会互相拷贝。


        return mapping.findForward("input");
    }

    public ActionForward save(ActionMapping mapping, ActionForm form, HttpServletRequest request,
            HttpServletResponse response) throws Exception {
        setNaviStringToRequestScope(request);
        DynaBean dynaBean = (DynaBean) form;
        String mod_id = (String) dynaBean.get("mod_id");
        UserTestHpp entity = new UserTestHpp();
        super.copyProperties(entity, dynaBean);
        if (null == entity.getId()) {
            entity.setIs_del(0);
            getFacade().getUserTestHppService().createUserTestHpp(entity);
            saveMessage(request, "entity.inerted");
        } else {
            if (null != entity.getIs_del() && entity.getIs_del().intValue() == 0) {
                entity.setEducation(null);
            }
            getFacade().getUserTestHppService().modifyUserTestHpp(entity);
            saveMessage(request, "entity.updated");
        }
        StringBuffer pathBuffer = new StringBuffer();
        pathBuffer.append(mapping.findForward("success").getPath());
        pathBuffer.append("&mod_id=").append(mod_id);
        pathBuffer.append("&");
        pathBuffer.append(super.encodeSerializedQueryString(entity.getQueryString()));
        ActionForward forward = new ActionForward(pathBuffer.toString(), true);
        return forward;
    }

    public ActionForward view(ActionMapping mapping, ActionForm form, HttpServletRequest request,
            HttpServletResponse response) throws Exception {
        setNaviStringToRequestScope(request);
        super.setBaseDataListToSession(10, request);// 用户类型
        DynaBean dynaBean = (DynaBean) form;
        String id = (String) dynaBean.get("id");
        UserTestHpp userTestHpp = new UserTestHpp();
        userTestHpp.setId(new Integer(id));
        UserTestHpp entity = getFacade().getUserTestHppService().getUserTestHpp(userTestHpp);
        super.copyProperties(form, entity);
        return mapping.findForward("view");
    }

    /*public ActionForward saveRoleUser(ActionMapping mapping, ActionForm form, HttpServletRequest request,
            HttpServletResponse response) throws Exception {
        DynaBean dynaBean = (DynaBean) form;
        String role_id = (String) dynaBean.get("id");
        String mod_id = (String) dynaBean.get("mod_id");
        String[] user_ids = request.getParameterValues("user_ids");
        if (StringUtils.isBlank(role_id)) {
            saveError(request, "errors.parm");
            return mapping.findForward("list");
        }
        // 删除该角色的相应用户
        RoleUser roleUser = new RoleUser();
        roleUser.setRole_id(Integer.valueOf(role_id));
        getFacade().getRoleUserService().removeRoleUser(roleUser);
        // 添加该角色新的用户
        if (ArrayUtils.isNotEmpty(user_ids)) {
            for (String user_id : user_ids) {
                RoleUser entity = new RoleUser();
                entity.setRole_id(Integer.valueOf(role_id));
                entity.setUser_id(Integer.valueOf(user_id));
                getFacade().getRoleUserService().createRoleUser(entity);
            }
        }
        saveMessage(request, "entity.inerted");
        ActionForward forward = new ActionForward(mapping.findForward("success").getPath()
                + response.encodeURL("&mod_id=" + mod_id), true);
        return forward;
    }
*/
    public ActionForward checkUserName(ActionMapping mapping, ActionForm form, HttpServletRequest request,
            HttpServletResponse response) throws Exception {
        DynaBean dynaBean = (DynaBean) form;
        String user_name = (String) dynaBean.get("user_name");
        String id = (String) dynaBean.get("id");
        UserTestHpp entity = new UserTestHpp();
        entity.getMap().put("not_in_id", id);
        entity.setUser_name(user_name);
        entity.setIs_del(0);
        long recordCount = super.getFacade().getUserTestHppService().getUserTestHppCount(entity);
        String flag = "1";
        if (recordCount == 0) {
            flag = "0";
        }
        super.renderJson(response, flag);
        return null;
    }
}