已閱讀5頁,還剩4頁未讀, 繼續(xù)免費閱讀
版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進行舉報或認領(lǐng)
文檔簡介
物聯(lián)網(wǎng)物流倉儲管理系統(tǒng)項目模塊開發(fā)任務單參考實現(xiàn)V1.1目 錄第一部分 用戶登錄7一、集成業(yè)務邏輯層71.集成業(yè)務邏輯層接口72.集成業(yè)務邏輯層接口實現(xiàn)類123.配置applicationContext.xml文件17二、集成Action請求處理層18三、集成驗證碼生成26四、集成登錄過濾器30六、集成資源34七、集成登錄頁面34第二部分 系統(tǒng)管理41一、集成系統(tǒng)管理業(yè)務邏輯接口411. 集成業(yè)務邏輯層接口412. 集成業(yè)務邏輯層接口實現(xiàn)類523.配置applicationContext.xml文件64二、集成系統(tǒng)管理action處理類65步驟一、集成action處理類65步驟二、配置applicationContext.xml1501.配置權(quán)限管理Action指定的action處理類1502.配置組管理Action指定的action處理類1503.配置用戶管理Action指定的action處理類1514.配置客戶管理Action指定的action處理類1515.配置數(shù)據(jù)庫維護管理Action指定的action處理類1516.配置系統(tǒng)參數(shù)管理Action指定的action處理類152步驟三、配置struts.xml1521.配置權(quán)限操作觸發(fā)action所需要的方法1522.配置組管理操作觸發(fā)action所需要的方法1533.配置用戶管理操作觸發(fā)action所需要的方法1554.配置客戶管理操作觸發(fā)action所需要的方法1565.配置數(shù)據(jù)庫維護管理操作觸發(fā)action所需要的方法1576.配置系統(tǒng)參數(shù)管理觸發(fā)action所需要的方法158三、集成資源159四、集成系統(tǒng)管理個模塊頁面159第三部分 入庫管理188一、集成短信模塊188二、集成手持機模塊204三、集成入庫管理邏輯層2121.集成業(yè)務邏輯接口2122.集成業(yè)務邏輯接口實現(xiàn)類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一、集成出庫管理業(yè)務邏輯層3331.集成出庫管理業(yè)務邏輯接口3332.集成業(yè)務邏輯接口實現(xiàn)類3363.配置applicationContext.xml348二、集成出庫管理Action處理層349步驟一、集成action請求處理類349步驟二、配置applicationContext.xml369步驟三、配置struts.xml369三、集成資源文件372四、集成出庫管理頁面372五、集成出庫手持機模塊386第五部分 過戶管理390一、集成過戶操作工具類390二、集成過戶業(yè)務邏輯層3971.集成過戶管理業(yè)務邏輯接口3972.集成過戶管理業(yè)務邏輯接口實現(xiàn)類4003.配置applicationContext.xml410三、集成過戶管理Action處理層4101.集成action請求處理類4102.配置applicationContext.xml4333.配置struts.xml433四、集成過戶資源文件436五、集成過戶管理頁面437第六部分 調(diào)倉管理448一、集成業(yè)務邏輯層4481.集成業(yè)務邏輯層接口4482.集成業(yè)務邏輯層接口實現(xiàn)類4513.配置applicationContext.xml文件460二、集成action請求處理層460三、集成資源473四、集成調(diào)倉管理頁面473五、集成調(diào)倉手持機模塊478第七部分 盤點管理484一、集成業(yè)務邏輯層4841.集成業(yè)務邏輯層接口4842.集成業(yè)務邏輯層接口實現(xiàn)類4963.配置applicationContext.xml文件509二、集成Action請求處理層510三、集成加載頁面數(shù)據(jù)資源Interceptor521四、集成業(yè)務查詢頁面522五、配置View層事務527六、配置表格插件導出文件功能528第八部分 業(yè)務查詢528一、集成業(yè)務邏輯層5291.集成業(yè)務邏輯層接口5292.集成業(yè)務邏輯層接口實現(xiàn)類5423.配置applicationContext.xml文件568二、集成Action請求處理層569三、集成加載頁面數(shù)據(jù)資源Interceptor588四、集成業(yè)務查詢頁面589五、配置View層事務595六、配置表格插件導出文件功能596第九部分 資產(chǎn)管理596一、集成業(yè)務邏輯層5971.集成業(yè)務邏輯層接口5972.集成業(yè)務邏輯層接口實現(xiàn)類6063.配置applicationContext.xml文件617二、集成Action請求處理層617三、集成加載頁面數(shù)據(jù)資源Interceptor629四、集成倉儲報表頁面630五、配置View層事務638六、配置表格插件導出文件功能639第十部分 倉儲報表639一、集成業(yè)務邏輯層6401.集成業(yè)務邏輯層接口6402.集成業(yè)務邏輯層接口實現(xiàn)類6483.配置applicationContext.xml文件657二、集成Action請求處理層658三、集成加載頁面數(shù)據(jù)資源Interceptor670四、集成倉儲報表頁面671五、配置View層事務677第一部分 用戶登錄一、集成業(yè)務邏輯層1.集成業(yè)務邏輯層接口步驟一、將已經(jīng)實現(xiàn)好的用戶管理業(yè)務接口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;/* * 用戶業(yè)務接口 * author yitek * */Transactional(propagation=Propagation.REQUIRED)public interface IAdminManagementBiz /* * 保存管理員數(shù)據(jù) * param user */public void saveUser(User user);/* * 更新管理員信息,如果該管理員未注冊,則注冊新管理員 * param user */public void updateUser(User user);/* * 刪除用戶,將用戶狀態(tài)置為【刪除】狀態(tài) * 找不到該用戶則拋出異常,“no exist” * param user */public void deleteUser(String uid) throws Exception;/* * 根據(jù)管理員ID查詢用戶, * param uid 管理員id * return User 實體對象,無記錄返回為空 */Transactional(readOnly=true)public UserfindUserById(String uid);/* * 根據(jù)條件模糊條件查詢管理員/員工列表 * param uid * param useName * return */Transactional(readOnly=true)public List findUserlist(String uid,String useName);/* * 恢復管理員/員工,將狀態(tài)置為【活動】 * param uid * throws Exception */public void revertUser(String uid) throws Exception;/* * 用戶登錄,根據(jù)登錄帳號和密碼 * param userAccount * param userPwd * return */Transactional(readOnly=true)public User loginByAccoutAndPassword(String userAccount,String userPwd );/* * 根據(jù)管理員登錄名查找管理員 * param Account * return */Transactional(readOnly=true)public List findUserByAccount(String Account);步驟二、將已經(jīng)實現(xiàn)好的權(quán)限管理業(yè)務接口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;/* * 權(quán)限業(yè)務接口類 * 該類主要提供了與權(quán)限管理有關(guān)的業(yè)務邏輯處理方法 * author yitek * */Transactional(propagation=Propagation.REQUIRED)public interface IPermissionBiz /* * 保存權(quán)限 * param p */public void savePermission(Permission p);/* * 更新權(quán)限信息 * param p */public void updatePermission(Permission p);/* * 刪除權(quán)限,將權(quán)限狀態(tài)置為【刪除】狀態(tài) * 找不到該權(quán)限則拋出異常,no exist * param cid 權(quán)限id */public void deletePermission(String pid)throws Exception;/* * 根據(jù)權(quán)限id查詢權(quán)限 * param pid 權(quán)限id * return permission實體對象,無記錄則返回空 */Transactional(readOnly=true)public Permission findPermissionById(String pid);/* * 恢復權(quán)限,將權(quán)限狀態(tài)置為【活動】狀態(tài) * 找不到該權(quán)限則拋出異常,no exist * param pid 權(quán)限id */public void revertPermission(String pid)throws Exception;/* * 根據(jù)指定條件查詢權(quán)限,若參數(shù)為空,代表查詢所有權(quán)限 * param perId * param perName * return */Transactional(readOnly=true)public List findPermissionList(String perId,String perName);/* * 為用戶組賦權(quán)限 * return */Transactional(readOnly=true)public List findPermissionForGroup();/* * 查詢用戶所有權(quán)限 * param userid * return */Transactional(readOnly=true)public List findPermissionFromUserid(String userid);/* * 查詢用戶權(quán)限 * param userid 用戶id * param isDel 是否被刪除 * return */Transactional(readOnly=true)public List findPermissionFromUserid(String userid,Integer isDel);2.集成業(yè)務邏輯層接口實現(xiàn)類步驟一、將已經(jīng)實現(xiàn)好的用戶管理業(yè)務接口實現(xiàn)類IAdminManagementBizImpl.java復制后放入comyitekmercurybizimpl包下。package .impl;import java.util.List;import erfaces.IAdminManagementBiz;import erfaces.IUserDao;import com.yitek.mercury.entity.User;/* * 用戶管理業(yè)務接口實現(xiàn)類 * 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);步驟二、將已經(jīng)實現(xiàn)好的權(quán)限管理業(yè)務接口實現(xiàn)類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;/* * 權(quán)限業(yè)務接口實現(xiàn)類 * 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文件配置業(yè)務接口實現(xiàn)類,將用戶管理數(shù)據(jù)訪問層注入到用戶業(yè)務管理接口實現(xiàn)類中參考代碼:配置業(yè)務接口實現(xiàn)類,將權(quán)限管理數(shù)據(jù)訪問層注入到權(quán)限業(yè)務管理接口實現(xiàn)類中參考代碼:二、集成Action請求處理層步驟一、將已經(jīng)實現(xiàn)好的用戶登錄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 /* * 隨機數(shù) */private String rand;/* * 用戶管理業(yè)務接口 */private IAdminManagementBiz adminbiz;/* * 權(quán)限管理業(yè)務接口 */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;/* * 響應異步請求活的用戶權(quán)限 * 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, 驗證碼不對!);步驟二、將已經(jīng)實現(xiàn)好的用戶登出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處理入口類,指定觸發(fā)action所需要的方法參考代碼: /global/login.jsp /index.jsp/global/login.jsp配置登出action處理入庫類,指定觸發(fā)action所需要的方法參考代碼: /global/error.jsp!- /global/login.jsp-/三、集成驗證碼生成步驟一、將已經(jīng)實現(xiàn)好的驗證碼生成類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;/* * 生成驗證碼執(zhí)行方法 */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. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會有圖紙預覽,若沒有圖紙預覽就沒有圖紙。
- 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
- 5. 人人文庫網(wǎng)僅提供信息存儲空間,僅對用戶上傳內(nèi)容的表現(xiàn)方式做保護處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負責。
- 6. 下載文件中如有侵權(quán)或不適當內(nèi)容,請與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準確性、安全性和完整性, 同時也不承擔用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- 對企業(yè)有利的加班合同(2篇)
- 二零二五年智能家電技術(shù)服務合同范本3篇
- 宜賓酒王二零二五年度800億控量保價市場占有率提升合同2篇
- 二零二五年度酒店會議住宿套餐定制合同2篇
- 2025年度電子信息產(chǎn)業(yè)設備采購與技術(shù)服務合同3篇
- 二零二五版工程款分期支付還款協(xié)議合同范本3篇
- 二零二五版碧桂園集團施工合同示范文本6篇
- 二零二五版豆腐出口貿(mào)易代理合同3篇
- 二零二五年度韻達快遞業(yè)務承包合同及綜合運營支持協(xié)議3篇
- 2024年物流運輸承包合同3篇
- 《文化苦旅》讀書分享 PPT
- 氧化鋁生產(chǎn)工藝教學拜耳法
- 2023年十八項醫(yī)療核心制度考試題與答案
- 氣管切開患者氣道濕化的護理進展資料 氣管切開患者氣道濕化
- 管理模板:某跨境電商企業(yè)組織結(jié)構(gòu)及部門職責
- 底架總組裝工藝指導書
- 簡單臨時工勞動合同模板(3篇)
- 聚酯合成反應動力學
- 自動控制原理全套課件
- 上??萍即髮W,面試
- 《五年級奧數(shù)總復習》精編課件
評論
0/150
提交評論