




已阅读5页,还剩4页未读, 继续免费阅读
版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
物联网物流仓储管理系统项目模块开发任务单参考实现V1.1目 录第一部分 用户登录7一、集成业务逻辑层71.集成业务逻辑层接口72.集成业务逻辑层接口实现类123.配置applicationContext.xml文件17二、集成Action请求处理层18三、集成验证码生成26四、集成登录过滤器30六、集成资源34七、集成登录页面34第二部分 系统管理41一、集成系统管理业务逻辑接口411. 集成业务逻辑层接口412. 集成业务逻辑层接口实现类523.配置applicationContext.xml文件64二、集成系统管理action处理类65步骤一、集成action处理类65步骤二、配置applicationContext.xml1501.配置权限管理Action指定的action处理类1502.配置组管理Action指定的action处理类1503.配置用户管理Action指定的action处理类1514.配置客户管理Action指定的action处理类1515.配置数据库维护管理Action指定的action处理类1516.配置系统参数管理Action指定的action处理类152步骤三、配置struts.xml1521.配置权限操作触发action所需要的方法1522.配置组管理操作触发action所需要的方法1533.配置用户管理操作触发action所需要的方法1554.配置客户管理操作触发action所需要的方法1565.配置数据库维护管理操作触发action所需要的方法1576.配置系统参数管理触发action所需要的方法158三、集成资源159四、集成系统管理个模块页面159第三部分 入库管理188一、集成短信模块188二、集成手持机模块204三、集成入库管理逻辑层2121.集成业务逻辑接口2122.集成业务逻辑接口实现类2293.配置applicationContext.xml文件257四、集成入库管理action请求处理层259步骤一、集成action请求处理类259步骤二、配置applicationContext.xml296步骤三、配置struts.xml296五、集成客户选择action请求处理类301步骤一、集成action请求处理类301步骤二、配置applicationContext.xml304步骤三、配置struts.xml304六、集成托盘选择action请求处理类304步骤一、集成action请求处理类304步骤二、配置applicationContext.xml307步骤三、配置struts.xml307七、集成仓库加载类308八、集成资源310九、集成入库管理页面311第四部分 出库管理333一、集成出库管理业务逻辑层3331.集成出库管理业务逻辑接口3332.集成业务逻辑接口实现类3363.配置applicationContext.xml348二、集成出库管理Action处理层349步骤一、集成action请求处理类349步骤二、配置applicationContext.xml369步骤三、配置struts.xml369三、集成资源文件372四、集成出库管理页面372五、集成出库手持机模块386第五部分 过户管理390一、集成过户操作工具类390二、集成过户业务逻辑层3971.集成过户管理业务逻辑接口3972.集成过户管理业务逻辑接口实现类4003.配置applicationContext.xml410三、集成过户管理Action处理层4101.集成action请求处理类4102.配置applicationContext.xml4333.配置struts.xml433四、集成过户资源文件436五、集成过户管理页面437第六部分 调仓管理448一、集成业务逻辑层4481.集成业务逻辑层接口4482.集成业务逻辑层接口实现类4513.配置applicationContext.xml文件460二、集成action请求处理层460三、集成资源473四、集成调仓管理页面473五、集成调仓手持机模块478第七部分 盘点管理484一、集成业务逻辑层4841.集成业务逻辑层接口4842.集成业务逻辑层接口实现类4963.配置applicationContext.xml文件509二、集成Action请求处理层510三、集成加载页面数据资源Interceptor521四、集成业务查询页面522五、配置View层事务527六、配置表格插件导出文件功能528第八部分 业务查询528一、集成业务逻辑层5291.集成业务逻辑层接口5292.集成业务逻辑层接口实现类5423.配置applicationContext.xml文件568二、集成Action请求处理层569三、集成加载页面数据资源Interceptor588四、集成业务查询页面589五、配置View层事务595六、配置表格插件导出文件功能596第九部分 资产管理596一、集成业务逻辑层5971.集成业务逻辑层接口5972.集成业务逻辑层接口实现类6063.配置applicationContext.xml文件617二、集成Action请求处理层617三、集成加载页面数据资源Interceptor629四、集成仓储报表页面630五、配置View层事务638六、配置表格插件导出文件功能639第十部分 仓储报表639一、集成业务逻辑层6401.集成业务逻辑层接口6402.集成业务逻辑层接口实现类6483.配置applicationContext.xml文件657二、集成Action请求处理层658三、集成加载页面数据资源Interceptor670四、集成仓储报表页面671五、配置View层事务677第一部分 用户登录一、集成业务逻辑层1.集成业务逻辑层接口步骤一、将已经实现好的用户管理业务接口IAdminManagementBiz.java复制后放入comyitekmercurybizinterfaces包下。package erfaces;import java.util.List;import org.springframework.transaction.annotation.Propagation;import org.springframework.transaction.annotation.Transactional;import com.yitek.mercury.entity.User;/* * 用户业务接口 * author yitek * */Transactional(propagation=Propagation.REQUIRED)public interface IAdminManagementBiz /* * 保存管理员数据 * param user */public void saveUser(User user);/* * 更新管理员信息,如果该管理员未注册,则注册新管理员 * param user */public void updateUser(User user);/* * 删除用户,将用户状态置为【删除】状态 * 找不到该用户则抛出异常,“no exist” * param user */public void deleteUser(String uid) throws Exception;/* * 根据管理员ID查询用户, * param uid 管理员id * return User 实体对象,无记录返回为空 */Transactional(readOnly=true)public UserfindUserById(String uid);/* * 根据条件模糊条件查询管理员/员工列表 * param uid * param useName * return */Transactional(readOnly=true)public List findUserlist(String uid,String useName);/* * 恢复管理员/员工,将状态置为【活动】 * param uid * throws Exception */public void revertUser(String uid) throws Exception;/* * 用户登录,根据登录帐号和密码 * param userAccount * param userPwd * return */Transactional(readOnly=true)public User loginByAccoutAndPassword(String userAccount,String userPwd );/* * 根据管理员登录名查找管理员 * param Account * return */Transactional(readOnly=true)public List findUserByAccount(String Account);步骤二、将已经实现好的权限管理业务接口IPermissionBiz.java复制后放入comyitekmercurybizinterfaces包下。package erfaces;import java.util.List;import org.springframework.transaction.annotation.Propagation;import org.springframework.transaction.annotation.Transactional;import com.yitek.mercury.entity.Permission;/* * 权限业务接口类 * 该类主要提供了与权限管理有关的业务逻辑处理方法 * author yitek * */Transactional(propagation=Propagation.REQUIRED)public interface IPermissionBiz /* * 保存权限 * param p */public void savePermission(Permission p);/* * 更新权限信息 * param p */public void updatePermission(Permission p);/* * 删除权限,将权限状态置为【删除】状态 * 找不到该权限则抛出异常,no exist * param cid 权限id */public void deletePermission(String pid)throws Exception;/* * 根据权限id查询权限 * param pid 权限id * return permission实体对象,无记录则返回空 */Transactional(readOnly=true)public Permission findPermissionById(String pid);/* * 恢复权限,将权限状态置为【活动】状态 * 找不到该权限则抛出异常,no exist * param pid 权限id */public void revertPermission(String pid)throws Exception;/* * 根据指定条件查询权限,若参数为空,代表查询所有权限 * param perId * param perName * return */Transactional(readOnly=true)public List findPermissionList(String perId,String perName);/* * 为用户组赋权限 * return */Transactional(readOnly=true)public List findPermissionForGroup();/* * 查询用户所有权限 * param userid * return */Transactional(readOnly=true)public List findPermissionFromUserid(String userid);/* * 查询用户权限 * param userid 用户id * param isDel 是否被删除 * return */Transactional(readOnly=true)public List findPermissionFromUserid(String userid,Integer isDel);2.集成业务逻辑层接口实现类步骤一、将已经实现好的用户管理业务接口实现类IAdminManagementBizImpl.java复制后放入comyitekmercurybizimpl包下。package .impl;import java.util.List;import erfaces.IAdminManagementBiz;import erfaces.IUserDao;import com.yitek.mercury.entity.User;/* * 用户管理业务接口实现类 * author yitek * */public class IAdminManagementBizImpl implements IAdminManagementBiz private IUserDao userdao;public IUserDao getUserdao() return userdao;public void setUserdao(IUserDao userdao) this.userdao = userdao;public User findUserById(String uid) return userdao.findUserById(uid);public void saveUser(User user) / TODO Auto-generated method stubuserdao.saveUser(user);public void updateUser(User user) / TODO Auto-generated method stubuserdao.updateUser(user);public void deleteUser(String uid) throws Exception / TODO Auto-generated method stubuserdao.deleteUser(uid);public List findUserlist(String uid, String useName) / TODO Auto-generated method stubreturn userdao.findUserList(uid, useName);public void revertUser(String uid) throws Exception / TODO Auto-generated method stubuserdao.revertUser(uid);public User loginByAccoutAndPassword(String userAccount, String userPwd) / TODO Auto-generated method stubreturn userdao.loginByNameAndPassword(userAccount, userPwd);public List findUserByAccount(String Account) / TODO Auto-generated method stubreturn userdao.findUserByAccount(Account);步骤二、将已经实现好的权限管理业务接口实现类IPermissionBizImpl.java复制后放入comyitekmercurybizimpl包下。package .impl;import java.util.List;import erfaces.IPermissionBiz;import com.yitek.mercury.dao.cell.PermissionDaoTest;import erfaces.IPermissionDao;import com.yitek.mercury.entity.Permission;/* * 权限业务接口实现类 * author yitek * */public class IPermissionBizImpl implements IPermissionBiz private IPermissionDao permissDao;public IPermissionDao getPermissDao() return permissDao;public void setPermissDao(IPermissionDao permissDao) this.permissDao = permissDao;public void deletePermission(String pid) throws Exception / TODO Auto-generated method stubpermissDao.deletePermission(pid);public Permission findPermissionById(String pid) / TODO Auto-generated method stubreturn permissDao.findPermissionById(pid);public void revertPermission(String pid) throws Exception / TODO Auto-generated method stubpermissDao.revertPermission(pid);public void savePermission(Permission p) / TODO Auto-generated method stubpermissDao.savePermission(p);public void updatePermission(Permission p) / TODO Auto-generated method stubpermissDao.updatePermission(p);public List findPermissionList(String perId, String perName) / TODO Auto-generated method stubreturn permissDao.findPermissionList(perId, perName);public List findPermissionForGroup() / TODO Auto-generated method stubreturn permissDao.findPermissionForGroup();public List findPermissionFromUserid(String userid) / TODO Auto-generated method stubreturn permissDao.findPermissionFromUserid(userid);3.配置applicationContext.xml文件配置业务接口实现类,将用户管理数据访问层注入到用户业务管理接口实现类中参考代码:配置业务接口实现类,将权限管理数据访问层注入到权限业务管理接口实现类中参考代码:二、集成Action请求处理层步骤一、将已经实现好的用户登录Action请求处理类UserLoginAction.java复制后放入comyitekmercuryaction包下。package com.yitek.mercury.action; import java.util.HashMap;import java.util.Map;import javax.servlet.http.HttpServletRequest;import javax.servlet.http.HttpSession;import net.sf.json.JSONArray;import org.apache.struts2.ServletActionContext;import com.opensymphony.xwork2.ActionContext;import com.opensymphony.xwork2.ActionSupport;import erfaces.IAdminManagementBiz;import erfaces.IPermissionBiz;import com.yitek.mercury.entity.Group;import com.yitek.mercury.entity.Permission;import com.yitek.mercury.entity.User;import com.yitek.mercury.entity.UserGroup;/* * 登陆action处理类 * author yitek * */public class UserLoginAction extends ActionSupport /* * 随机数 */private String rand;/* * 用户管理业务接口 */private IAdminManagementBiz adminbiz;/* * 权限管理业务接口 */private IPermissionBiz permBiz;/* * 用户账号 */private String username;/* * 用户密码 */private String password;public String getRand() return rand;public void setRand(String rand) this.rand = rand;public IAdminManagementBiz getAdminbiz() return adminbiz;public void setAdminbiz(IAdminManagementBiz adminbiz) this.adminbiz = adminbiz;public String getUsername() return username;public void setUsername(String username) this.username = username;public String getPassword() return password;public void setPassword(String password) this.password = password;/* * 用户登陆服务器响应方法 * return * throws Exception */public String login() throws Exception / TODO Auto-generated method stubHttpServletRequest request= ServletActionContext.getRequest();/HttpSession session1 =request.getSession();Map session =ServletActionContext.getContext().getSession();User user=null;try user=adminbiz.loginByAccoutAndPassword(username, password);if (user=null) this.addFieldError(loginError,用户名或密码不正确);return fail;/*if (user!=null) /session1.setAttribute(user, user);session.put(user, user);return success;*/session.put(user, user);for (Permission p : permBiz.findPermissionFromUserid(user.getUserID() session.put(p.getEngName(), p.getPermID(); catch (Exception e) / TODO: handle exceptione.printStackTrace();this.addFieldError(loginError,用户名或密码不正确);return fail;return success;/* * 响应异步请求活的用户权限 * return * throws Exception */public String findPerms() throws Exceptiontry HttpServletRequest request= ServletActionContext.getRequest();HttpSession session =request.getSession();User user = (User) session.getAttribute(user);Map permsMap = new HashMap();for (Permission p : permBiz.findPermissionFromUserid(user.getUserID() permsMap.put(p.getEngName(), p.getPermID();/设置相应编码格式ServletActionContext.getResponse().setContentType(text/json;charset=utf-8);ServletActionContext.getResponse().getWriter().write(JSONArray.fromObject(permsMap).toString(); catch (Exception e) e.printStackTrace();return null;public IPermissionBiz getPermBiz() return permBiz;public void setPermBiz(IPermissionBiz permBiz) this.permBiz = permBiz;/* * 验证码判断 */Overridepublic void validate() / TODO Auto-generated method stubclearErrorsAndMessages();Map session =ActionContext.getContext().getSession();System.out.println(rand);String sessionRand=(String) session.get(rand);if (sessionRand!=null&!.equals(sessionRand) if (!sessionRand.equals(rand) addFieldError(checkError, 验证码不对!);步骤二、将已经实现好的用户登出Action请求处理类UserLogoutAction.java复制后放入comyitekmercuryaction包下。package com.yitek.mercury.action; import javax.servlet.http.HttpServletRequest;import javax.servlet.http.HttpSession;import org.apache.struts2.ServletActionContext;import com.opensymphony.xwork2.ActionSupport;/* * 登出action处理类 * author yitek * */public class UserLogoutAction extends ActionSupport public String execute()throws ExceptionHttpServletRequest request=ServletActionContext.getRequest();HttpSession session=request.getSession();session.invalidate();return success;步骤三、配置applicationContext.xml配置登录Action指定的action处理类参考代码:配置登出Action指定的action处理类参考代码步骤四、配置struts.xml配置登录action处理入口类,指定触发action所需要的方法参考代码: /global/login.jsp /index.jsp/global/login.jsp配置登出action处理入库类,指定触发action所需要的方法参考代码: /global/error.jsp!- /global/login.jsp-/三、集成验证码生成步骤一、将已经实现好的验证码生成类RandomCodeServlet.java放入comyitekmercuryutil包下。package com.yitek.mercury.util;import java.awt.Color;import java.awt.Font;import java.awt.Graphics2D;import java.awt.image.BufferedImage;import java.io.IOException;import java.util.Random;import javax.imageio.ImageIO;import javax.servlet.ServletException;import javax.servlet.ServletOutputStream;import javax.servlet.http.HttpServlet;import javax.servlet.http.HttpServletRequest;import javax.servlet.http.HttpServletResponse;import javax.servlet.http.HttpSession;/* * 验证码生成类 * author yitek * */public class RandomCodeServlet extends HttpServlet/* * 图片宽度 */private int width=60;/* * 图片高度 */private int height=20;/* * 生成验证码执行方法 */Overrideprotected void service(HttpServletRequest req, HttpServletResponse res)throws ServletException, IOException / TODO Auto-generated method stubBufferedImage image=new BufferedImage(width, height, BufferedImage.TYPE_INT_RGB);Graphics2D g=image.createGraphics();Random
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 充分条件与必要条件教学设计
- 统编版语文四下《第七单元复习》课件
- 动物检疫个人工作总结模版
- 流动商住楼小区重大危险源专项的施工组织方案
- 大学生职业规划大赛《国际商务专业》生涯发展展示
- 老年卧床女性护理
- 普通服务员年终总结模版
- 员工消防培训试题及答案
- 银行投行面试题目及答案
- 一级建造师资格考试试题及答案
- 《游园不值》-完整版课件
- 钻孔桩钻孔记录表(旋挖钻)
- 660MW机组金属监督项目
- 大连银行招聘考试最新笔试复习材料题目内容试卷真题复习
- 卷烟纸生产工艺
- JBK-698CX淬火机数控系统
- 肩关节镜下肩袖修补术的护理查房ppt
- 回旋镖运动轨迹的模拟
- 《康复医学》PPT课件(PPT 105页)
- 心理学在船舶安全管理中的应用
- 实验室生物安全委员会及其工作职责
评论
0/150
提交评论