收藏 分销(赏)

进销存管理系统设计与实现_终稿_学生.docx

上传人:pc****0 文档编号:8799570 上传时间:2025-03-02 格式:DOCX 页数:74 大小:2.18MB
下载 相关 举报
进销存管理系统设计与实现_终稿_学生.docx_第1页
第1页 / 共74页
进销存管理系统设计与实现_终稿_学生.docx_第2页
第2页 / 共74页
点击查看更多>>
资源描述
本 科 毕 业 论 文 论 文 题 目 :进销存管理系统设计与实现 指 导 老 师 :xxx 学 生 姓 名 :xxx 学 号 :xxx 院 系 :网络教育学院 专 业 :计算机科学与技术 写 作 批 次 : 2014秋 原 创 承 诺 书 我承诺所呈交的毕业论文是本人在老师指导下进行的研究工作及取得的研究成果。据我查证,除了文中特别加以标注和致谢的地方外,论文中不包含其他人已经发表或撰写过的研究成果。若本论文及资料与以上承诺内容不符,本人愿意承担一切责任。 毕业论文作者签名:___xxx_____ 日期:2014 年 10月 18 日 目 录 摘要 I Abstract II 1 概述 1 2 总体设计 2 2.1 项目规划 2 2.2 系统功能结构图 3 2.3 开发及运行环境 3 2.4 编码设计 3 2.5 系统流程图 4 2.6 数据库表设计 5 3 系统详细设计 7 3.1系统需求分析 7 3.2系统角色说明 8 3.3系统主要功能模块 8 3.3.1客户信息 8 3.3.2 销售订单 12 3.3.3 生产通知单 21 3.4主要程序清单 30 4 测试与运行 30 5 结束语 33 5.1论文主要工作与结果 33 5.2问题与展望 33 6 致谢 34 参考文献 34 附录一 客户信息 34 附录二 销售订单 40 附录三 生产通知单 57 摘要 中小企业在我国经济发展中具有重要地位,目前我国的中小企业数量多,地区分布广泛,行业分布跨度大。我国中小企业的信息化水平还很低,相比国外企业,还只处于刚开始始用的阶段。随着技术发展,电脑操作及管理日趋简化,电脑知识日趋普及,同时市场经济快速多变,竞争激烈,企业采用电脑管理进货、库存、销售等诸多环节也已成为趋势及必然。 从系统开发的实际情况出发,经过对采购、销售、物管部门需求调研分析,以及大数据的分析,确立了本系统采用C/S架构,外部访问用VPN,数据库:SQL Server 2008R2,服务器:Jboos4.2,开发工具:NetBeans IDE 6.9.1,开发技术:JDK1.6+Swing+EJB3.0。本文概括了总体设计、项目规划、系统功能结构图、开发及运行环境、编码设计、系统流程图、数据库表设计、详细设计。实现客户的资料管理,销售订单管理,生产通知单管理。开通系统权限的用户可以通过客户端输入用户名、密码进入系统,实现时时查看到客户的资料联系人信息,客户的合同订单信息、客户的产品生产信息,生产进度查询和统计打印。测试表明,该系统运转正常,能使客户资料、合同管理、生产管理工作清晰简单,极大提高工作效率。 关键词:进销存管理系统、产品采购、产品销售、产品库存 Abstract Small and medium-sized enterprises in our country has the important status in the economic development, the number of small and medium-sized enterprises at present in our country, region are widely distributed, industry distribution span.Information level of small and medium-sized enterprises in our country is still very low, compared with foreign enterprises, still only at the first beginning with the stage.With the development of technology, the computer operation and management of increasingly simplified, increasingly popularization of computer knowledge, at the same time, fast changing market economy, the competition is intense, enterprise use computer manage stock, inventory, sales, and many other link also has become a trend and necessity. Starting from the actual situation of system development, through the tube department of procurement, sales, demand analysis, research and data analysis, established this system USES C/S architecture, external access to use VPN, database, SQL Server 2008 r2, Server: Jboos4.2, development tools: NetBeans IDE 6.9.1, development technology: JDK1.6 + EJB3.0 +Swing.This article summarizes the overall design, project planning, system function structure, the development and running environment design, coding, system flow chart, database table design, detailed design.To reach the customer information management, sales order management, order management.Opened system permissions users can through the client input user name and password to enter system, implementation always check the information to the customer contact information, customer order information of the contract, the customer product information, print production schedule query and statistics.Tests show that the system operating normally, can make the customer information, contract management, production management work clear and simple, greatly improve work efficiency. 1 概述 经济大环境的变化使得规模经济的优势不再突出。固定的硬设备、人员数量、大量资金等资源投入占企业效益的比重变少,而软投入如管理、人力资源价值、服务、品牌附加值、渠道等要素资源的投入却能增加企业的效益。“速度冲击规模”的速度经济概念已经向企业提出,目前,我国中小企业的信息化水平还很低,相比国外企业,还只处于发展阶段。 那么对于日益发展壮大的企业集团,怎样才能找到一套功能强大\可任意拓展、低运行成本、安全可靠的管理解决方案,来跟上企业的发展,跟上时代的发展呢? 我们认为最好的办法是利用Internet这个工具,架构自己的供需链管理平台,使无处不在的互联网为你所用,实现无处不在的管理目标。让Internet像电一样融入到企业的管理之中,提高企业在新经济时代的核心竞争力,通过对Internet的高效率使用,在激烈的市场竞争中,首先打赢第一仗“信息战”。正是基于对Internet的这种深刻认识,针对中国企业特点提出了基于Internet的网络商务管理解决方案——企业进销存管理系统。 2 总体设计 2.1 项目规划 企业进销存管理系统是一个典型的数据库开发应用程序,由基础信息模块、采购管理模块、库存管理模块、产品销售模块、查询统计模块、系统设置模块等部分组成,规划系统功能模块如下: q 基础信息模块 该模块主要管理产品信息、客户信息、供应商信息、出入库类型、行业类型、地区管理、 销售类型、部门、员工资料。 q 采购管理模块 该模块主要管理请购单、采购订单、采购报验、采购退货、供应商价格对照表。 q 库存管理模块 该模块主要管理库存查询、调拨管理、期初入库、采购入库、其它入库、领料出库、销售出库、其它出库。 q 产品销售模块 该模块主要管理销售订单、生产通知单、发货通知单、销售退货报验、销售价格对照表。 q 查询统计模块 该模块主要管理销售订单明细查询、销售订单跟踪查询、出入库明细查询、采购退货明细查询、采购订单跟踪。 q 系统设置模块 该模块主要管理模块管理、角色管理、工作流、单据类型、功作流角色、公司信息设置、修改密码。 2.2 系统功能结构图 企业进销存管理系统功能结构如图1所示。 图1 系统功能结构图 2.3 开发及运行环境 硬件平台: q CPU:P41.8GHz。 q 内存:256MB以上。 软件平台: q 操作系统:Windows 7/Windows XP/ Windows 2000。 q 数据库:SQL Server 2008R2。 q 服务器:Jboos4.2。 q NetBeans IDE 6.9.1 q JDK1.6+Swing+EJB3.0 q VPN q 分辨率:最佳效果1024×768像素。 2.4 编码设计 编码设计是数据库系统开发的前提条件,是系统不可缺少的重要内容。编码是指与原来名称对应的编号、符号或记号。它是进行信息交换、处理、传输和实现信息资源共享的关键。编码也用于指定数据的处理方法、区别数据类型,并指定计算机处理的内容等。 本系统内部信息编码采用了统一的编码方式情况。 (1)采购编号为字母“C”、单据分类(两位)+年(后两位)+月+日+4位流水号。例如,C011205010001。 (2)入库单据编号为字母“W”、单据分类(两位)+年(后两位)+月+日+4位流水号。例如,W011205010001。 (3)出库单据编号为字母“W”、单据分类(两位)+年(后两位)+月+日+4位流水号。例如,W021205010001。 (4)销售单据编号为字母“X”、单据分类(两位)+年(后两位)+月+日+4位流水号。例如,X011205010001。 2.5 系统流程图 销售流程图 图2 销售流程 2.6 数据库表设计 表1:客户信息表(bi_client) 字段名 类型(长度) 允许空 默认值 说明 id numeric(19,0) N   id code VARCHAR(100) N   客户编号 fullName VARCHAR(255) N   客户全称 shortName VARCHAR(255) N   客户简称 address VARCHAR(500) N   地址 tel VARCHAR(50) Y   电话 fax VARCHAR(50) Y   传真 contact VARCHAR(50) Y   联系人 mobilePhone VARCHAR(20) Y   手机 natureOfFirms VARCHAR(50) Y   企业性质 area_id numeric(19,0) N 区域 dataDict VARCHAR(100) Y   行业信息 salesPerson_id numeric(19,0) Y   销售人 clientCategory VARCHAR(100) N   客户类别 memo NUMBER(18,2) Y   备注 deleteFlag tinyint N   假删除 表2:客户联系人表(bi_clientcontact) 字段名 类型(长度) 允许空 默认值 说明 Client_id numeric(19,0) N   客户ID name VARCHAR(20) N   联系人 tel VARCHAR(15) Y   固定电话 mobile VARCHAR(11) Y   手机 departement VARCHAR(50) Y   部门 position VARCHAR(50) Y   职位 email VARCHAR(100) Y   Email 表3:销售订单表(so_salesOrder) 字段名 类型(长度) 允许空 默认值 说明 id numeric(19,0) N   id docCode VARCHAR(20) N   单据编号 Creator_id numeric(19,0) N   制单人id createDate datetime N   制单日期 Client_id numeric(19,0) N   客户 Area_id numeric(19,0) Y   区域 orderDate datetime Y   订单日期 deliveryDate datetime Y   交货日期 salesPerson_id numeric(19,0) Y   销售人员id Department_id numeric(19,0) Y   部门id area_id numeric(19,0) N 区域 discount numeric(12,2) Y   折扣 deposit numeric(12,2) Y   定金 moneyName VARCHAR(100) N   货币名称 moneyIdentifying VARCHAR(100) N 原币标识 exchangeRate numeric(12,2) N 原币与本币汇率 taxRate numeric(12,2) N 税率 contractNo VARCHAR(100) N 合同号 orderCategory VARCHAR(100) N 销售类型 craftClaim VARCHAR(100) N 工艺要求 memo NUMBER(18,2) Y   备注 deleteFlag tinyint N   假删除 表4:销售订单明细表(so_salesOrderItem) 字段名 类型(长度) 允许空 默认值 说明 id numeric(19,0) N   id salesOrder_id numeric(19,0) N   销售订单id Part_id datetime N   产品id quantity float N   销售数量 originalCurrencyPrice float N   原币单价 unitPrice float N   本币单价 taxRate float N   税率 discountPercent float N   折扣率 memo NUMBER(18,2) Y   备注 deleteFlag tinyint N   假删除 表5:生产通知单表(pp_productionInformOrder) 字段名 类型(长度) 允许空 默认值 说明 id numeric(19,0) N   id docCode VARCHAR(20) N   单据编号 Creator_id numeric(19,0) N   制单人id createDate datetime N   制单日期 parentDocCode VARCHAR(20) N   被引用单据编号 part_id numeric(19,0) N   产品 quantity float N   数量 completeDate datetime N   发货日期 salesPerson_id numeric(19,0) Y   销售人员id contractNo VARCHAR(100) N 合同号 orderCategory VARCHAR(100) N 销售类型 craftClaim VARCHAR(100) N 工艺要求 specialRequire VARCHAR(1000) Y 特殊要求 cardInformation VARCHAR(1000) Y 贴牌信息 colorClaim VARCHAR(1000) Y 颜色要求 packInformation VARCHAR(1000) Y 包装信息 sendMachineState VARCHAR(100) Y 发机状态 memo NUMBER(18,2) Y   备注 deleteFlag tinyint N   假删除 表6:生产通知单配置明细表(pp_productionInformOrderItem) 字段名 类型(长度) 允许空 默认值 说明 id numeric(19,0) N   id productionInformOrder_id numeric(19,0) N   生产通知id dataDict1 VARCHAR(100) N 配置名称 dataDict2 VARCHAR(100) N 配置选项 memo NUMBER(18,2) Y   备注 deleteFlag tinyint N   假删除 3 系统详细设计 3.1系统需求分析 通过调查,要求系统需要具有以下功能: q 由于操作人员的计算机知识普遍较差,要求有良好的人机界面。 q 由于该系统的使用对象多,要求有较好的权限管理。 q 方便的数据查询,支持多条件查询。 q 基础信息管理与查询(包括产品信息、客户信息、供应商信息)。 q 通过计算机,能够直接“透视”仓库存储情况。 q 完善的产品采购信息、产品销售信息进行管理。 q 方便、健全的结账功能。 q 产品销售统计。 q 当外界环境(停电、网络病毒)干扰本系统时,系统可以自动保护原始数据的安全。 q 数据计算自动完成,尽量减少人工干预。 q 系统退出。 3.2系统角色说明 系统使用者角色定义,并说明其工作内容、注意事项、以及能够通过系统获得的数据与相关信息。 1) 系统管理员:负责系统模块、角色、单据类型、工作流、公司信息、销售管理模块、所有相关模块、审批流程定义。 2) 订单文员:负责销售管理模块的客户信息、销售订单、生产通知单、发货通知单的录入、修改、删除、查询。 3.3系统主要功能模块 3.3.1客户信息 操作人员:订单文员 描述:订单文员通过业务员提供的成交客户录入客户信息,客户信息添加会验证客户是否存在。 操作界面:基础资料/客户信息 客户信息列表:可按客户名、客户编码、联系人信息、地址查询。 图3 客户信息列表 客户信息新增:点击新增按钮,系统出现如下输入栏目,客户编码以C+6位流水号自动生成,客户全称、简称、企业性质、客户类型、行业类别、联系人、联系电话等红色字体必填。 图4 客户信息新增 客户信息新增:添加联系人界面,可添加多个联系人,填写完后按保存按钮。 图5 客户信息新增添加联系人 客户信息列表查询,较完整代码请参见“附录”: /** * 客户列表管理 * @author agh */ public class ClientList_Panel extends WorkSpaceBase_Panel { private FreeTableModel tableModel = null;//表模型 private List<Client> list = null; //客户列表 private HashMap keywords = new HashMap(); private DefaultTreeModel dtm = null; //所在地区树模型 private DefaultMutableTreeNode currentNode = null;//所在地区树模节点 private User selectEmp = null; //销售员 public ClientList_Panel() {//构造方法 initComponents(); setupTable(); } private void setupTable() {//设置表模型 this.tableModel = new FreeTableModel(Pub.tableConfigDir + "baseinfo/Client.xml", "Client", this.jTable_list); } public void refreshToolbar() {//权限控制 AppMain.enableForwardButton(false); AppMain.enablePrintButton(false); if (AppMain.isInPower("/BaseInfoModule/ClientManager/Create", false)) {//新增权限 AppMain.enableCreateButton(true); } else { AppMain.enableCreateButton(false); } if (AppMain.isInPower("/BaseInfoModule/ClientManager/Delete", false)) {//删除权限 AppMain.enableDeleteButton(true); } else { AppMain.enableDeleteButton(false); } AppMain.setForwardButtonText("前进"); AppMain.enableBackButton(false); AppMain.enableReloadButton(true); AppMain.enableSaveButton(false); AppMain.enableSearchButton(true); AppMain.enableCloseButton(true); } //查询方法 public void loadFromDB() { this.keywords = new HashMap(); String keyword = this.jTextField_keyword.getText().trim(); if (!"".equals(keyword)) { this.keywords.put("keyword", keyword); } this.list= EJBClientRemote.getClientSessionRemote().getClientList(keywords); } public void load() {//加载方法 int i = 1; if (this.list != null) { List newItems = new ArrayList();//设置序列号 for (Client bean : list) { bean.setSerNum(i); i++; newItems.add(bean); } this.tableModel.load(newItems); } } @Override public boolean beforeDelDocument() {//删除方法前提示是否删除 return (this.tableModel.confirmRemove(AppMain.getMainFaceFrame().getFrame())); } @Override public boolean delDocFromDB() {//删除方法 List dellist = this.tableModel.getPendingRemovalItemList(); List removalList = new ArrayList(); for (Iterator it = dellist.iterator(); it.hasNext();) { Object obj = it.next(); removalList.add(Long.valueOf(((Client) obj).getId())); } //调用EJB3.0远程方法删除 EJBClientRemote.getClientSessionRemote().removeClients(removalList); AppMain.refreshCurrent(); return true; } } 3.3.2 销售订单 操作人员:订单文员 描述:订单文员通过业务员提供的成交销售合同录入销售订单,审核结案后会生成生产通知单。 操作界面:销售管理/销售订单 销售订单列表:可按签单日期、发货日期、单号、合同号、销售员、客户名查询。 图6 销售订单列表 销售订单新增:点击新增按钮,系统出现如下输入栏目,单据信息(单据编号、制单人、制单日期、审批人、审批日期、单据状态)保存后自动生成,下单日期、合同号、销售类型、发机日期、工艺要求、客户、联系人、付款方式、办事处、所属区域销售员等红色字体必填。 图7 销售订单新增 销售订单明细新增:添加订单明细界面,可添加多条明细,填写完后按保存按钮。 图8 销售订单明细新增 销售订单列表查询,较完整代码请参见“附录”: /** * 销售订单列表 * @author agh<agh_alan@> */ public class SaleOrderList_Panel extends WorkSpaceBase_Panel implements SaveButton_Interface, SelectSingleObject_Interface { private FreeTableModel tableModel = null;//表模型 private List<SalesOrder> itemList = null; //销售订单列表 private DataSet dataSet = null; //通用查询集合 private QueryConditionSetting querySetting = null;//查询条件设定 private int state = 0;//0为待审核,1为已审核 /** Creates new form RoleList_Panel */ public SaleOrderList_Panel() { initComponents(); this.jInputDatePanel_endDate.setParentFrame(this);//申请日期 this.jInputDatePanel_startDate.setParentFrame(this);//申请日期 setupTable(); //单据类型 vouchType = EJBClientRemote.getWorkflowSessionBeanRemote().getVouchTypeName("销售订单"); if (vouchType != null) {//审批工作流 AuditWorkflow auditWorkflow = EJBClientRemote.getWorkflowSessionBeanRemote().getAuditWorkflowId(vouchType.getAuditWorkflow().getId()); //单据状态:下拉菜单设值 for (AuditWorkflowItem auditWorkflowItem : auditWorkflow.getAuditWorkflowItems()) { jComboBox_state.addItem(auditWorkflowItem.getDocQueryStatus()); } } } private void setupTable() { String configFile = Pub.tableConfigDir + "/sale/SalesOrder.xml"; this.tableModel = new FreeTableModel(configFile, "SalesOrder", this.jTable_Part); } //权限处理 public void refreshToolbar() { AppMain.enableForwardButton(false); //AppMain.enablePrintButton(false); AppMain.enableBackButton(false); if (AppMain.isInPower("/SaleModule/SalesOrder/Create", false)) {//新增权限 AppMain.enableCreateButton(true); } else { AppMain.enableCreateButton(false); } if (AppMain.isInPower("/SaleModule/SalesOrder/Delete", false)) {//删除权限 AppMain.enableDeleteButton(true); } else { AppMain.enableDeleteButton(false); } AppMain.getDeleteButton().setText("作废"); AppMain.enableReloadButton(true); AppMain.enableSaveButton(false); AppMain.enablePrintButton(false); AppMain.enableSearchButton(true); AppMain.enableCloseButton(true); AppMain.enableWorkflowButton(false); } public void clear() { throw new UnsupportedOperationException("Not supported yet."); } public void beforeLoad() { if (querySetti
展开阅读全文

开通  VIP会员、SVIP会员  优惠大
下载10份以上建议开通VIP会员
下载20份以上建议开通SVIP会员


开通VIP      成为共赢上传
相似文档                                   自信AI助手自信AI助手

当前位置:首页 > 包罗万象 > 大杂烩

移动网页_全站_页脚广告1

关于我们      便捷服务       自信AI       AI导航        抽奖活动

©2010-2025 宁波自信网络信息技术有限公司  版权所有

客服电话:4009-655-100  投诉/维权电话:18658249818

gongan.png浙公网安备33021202000488号   

icp.png浙ICP备2021020529号-1  |  浙B2-20240490  

关注我们 :微信公众号    抖音    微博    LOFTER 

客服