adminaction.java

来自「实现图书的借阅和管理信息化」· Java 代码 · 共 224 行

JAVA
224
字号
/*
 * Generated by MyEclipse Struts
 * Template path: templates/java/JavaClass.vtl
 */
package com.moonman.libraryManager.control.struts.action;

import java.util.List;
import java.util.Date;

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

import org.apache.struts.action.ActionForm;
import org.apache.struts.action.ActionForward;
import org.apache.struts.action.ActionMapping;
import org.apache.struts.action.ActionMessage;
import org.apache.struts.action.ActionMessages;
import org.apache.struts.action.DynaActionForm;
import org.apache.struts.actions.MappingDispatchAction;
import org.apache.struts.validator.DynaValidatorForm;

import com.moonman.libraryManager.model.service.AdminService;
import com.moonman.libraryManager.model.service.ReaderService;
import com.moonman.libraryManager.model.vo.Admin;
import com.moonman.libraryManager.model.vo.Reader;

/**
 * MyEclipse Struts Creation date: 01-09-2008
 * 
 * XDoclet definition:
 * 
 * @struts.action parameter="login" validate="true"
 */
public class AdminAction extends MappingDispatchAction {
	/*
	 * Generated Methods
	 */
	private AdminService adminService;

	private ReaderService readerService;

	public void setReaderService(ReaderService readerService) {
		this.readerService = readerService;
	}

	// 进行依赖注入
	public void setAdminService(AdminService adminService) {
		this.adminService = adminService;
	}

	/**
	 * Method execute 测试用户登陆
	 * 
	 * @param mapping
	 * @param form
	 * @param request
	 * @param response
	 * @return ActionForward
	 */
	public ActionForward login(ActionMapping mapping, ActionForm form,
			HttpServletRequest request, HttpServletResponse response) {
		DynaActionForm df = (DynaActionForm) form;
		String name = df.getString("unameOrCardNo");
		String pwd = df.getString("pwd");
		String type = df.getString("type");
		ActionMessages mess = new ActionMessages();
		if (type.equals("管理员")) {
			Admin admin = this.adminService.getAdminByAdmin(name);
			if (admin != null && !admin.getAdminName().equals("")) {
				if (admin.getPassword().equals(pwd)) {
					// 登陆成功
					request.getSession().setAttribute("admin", admin);
					return mapping.findForward("loginSucc");
				} else {
					// 密码错误
					mess.add("pwderror", new ActionMessage("jsp.pwd.error"));
				}
			} else {
				// 用户不存在
				mess.add("noname", new ActionMessage("jsp.noname.error"));
			}
		} else {
			Reader reader = this.readerService.getReaderByZjh(name);
			if (reader != null) {
				if (reader.getPassword().equals(pwd)) {
					if (reader.getSxrq().getTime() <= (new Date()).getTime()) {
						if (reader.getGqrq().getTime() > (new Date()).getTime()) {
							if (reader.getZt().intValue() == 1) {
								request.getSession().setAttribute("reader",
										reader);
								return mapping.findForward("loginSucc");
							} else {
								// 证已经挂失
								mess.add("gserror", new ActionMessage(
										"jsp.gs.error"));
							}
						} else {
							// 证件过期
							mess.add("zjgqerror", new ActionMessage(
									"jsp.zjgq.error"));
						}
					} else {
						// 证件没有生效
						mess.add("zjsxerror", new ActionMessage(
								"jsp.zjsx.error"));
					}
				} else {
					// 密码错误
					mess.add("pwderror", new ActionMessage("jsp.pwd.error"));
				}
			} else {
				// 用户不存在
				mess.add("noname", new ActionMessage("jsp.noname.error"));
			}
		}
		this.saveErrors(request, mess);
		return mapping.getInputForward();
	}

	/**
	 * 添加管理员信息
	 * 
	 * @param mapping
	 * @param form
	 * @param request
	 * @param response
	 * @return ActionForward
	 */
	public ActionForward adminAdd(ActionMapping mapping, ActionForm form,
			HttpServletRequest request, HttpServletResponse response) {
		DynaValidatorForm df = (DynaValidatorForm) form;
		this.adminService.addAdmins(this.encaEntity(df));
		return mapping.findForward("addSuccess");
	}

	/**
	 * 添加管理员信息
	 * 
	 * @param mapping
	 * @param form
	 * @param request
	 * @param response
	 * @return ActionForward
	 */
	public ActionForward showManager(ActionMapping mapping, ActionForm form,
			HttpServletRequest request, HttpServletResponse response) {
		List<Admin> lst = this.adminService.getAdmins();
		request.setAttribute("admins", lst);
		return mapping.findForward("show");
	}

	/**
	 * 删除管理员信息
	 * 
	 * @param mapping
	 * @param form
	 * @param request
	 * @param response
	 * @return ActionForward
	 */
	public ActionForward adminDelete(ActionMapping mapping, ActionForm form,
			HttpServletRequest request, HttpServletResponse response) {
		String id = request.getParameter("id");
		this.adminService.deleteAdminById(Integer.parseInt(id));
		return mapping.findForward("delSuccess");
	}

	/**
	 * 显示修改管理员信息的界面
	 * 
	 * @param mapping
	 * @param form
	 * @param request
	 * @param response
	 * @return ActionForward
	 */
	public ActionForward showModifyAdmin(ActionMapping mapping,
			ActionForm form, HttpServletRequest request,
			HttpServletResponse response) {
		String id = request.getParameter("id");
		Admin admin = this.adminService.getAdminById(Integer.parseInt(id));
		request.setAttribute("admin", admin);
		return mapping.findForward("showModify");
	}

	/**
	 * 修改管理员信息
	 * 
	 * @param mapping
	 * @param form
	 * @param request
	 * @param response
	 * @return ActionForward
	 */
	public ActionForward modifyAdmin(ActionMapping mapping, ActionForm form,
			HttpServletRequest request, HttpServletResponse response) {
		DynaValidatorForm df = (DynaValidatorForm) form;
		Admin admin = this.encaEntity(df);
		this.adminService.addAdmins(admin);
		request.setAttribute("admin", admin);
		return mapping.findForward("showModify");
	}

	/**
	 * 封装管理员的实体类
	 * 
	 * @param df
	 * @return
	 */
	private Admin encaEntity(DynaValidatorForm df) {
		String id = df.getString("id");
		String loginName = df.getString("loginName");
		String trueName = df.getString("trueName");
		String pwd = df.getString("pwd");
		Admin admin = new Admin();
		if (id != null && !"".equals(id)) {
			admin.setId(new Integer(id));
		}
		admin.setLoginName(loginName);
		admin.setAdminName(trueName);
		admin.setPassword(pwd);
		return admin;
	}
}

⌨️ 快捷键说明

复制代码Ctrl + C
搜索代码Ctrl + F
全屏模式F11
增大字号Ctrl + =
减小字号Ctrl + -
显示快捷键?