钢铁现货交易系统的设计与实现.doc_第1页
钢铁现货交易系统的设计与实现.doc_第2页
钢铁现货交易系统的设计与实现.doc_第3页
钢铁现货交易系统的设计与实现.doc_第4页
钢铁现货交易系统的设计与实现.doc_第5页
免费预览已结束,剩余42页可下载查看

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

I 摘要摘要 随着技术的发展 人们开始使用互联网来完成商品的买卖 新一代的电子商 务浮出水面 取代目前简单地依托 网站 电子邮件 的方式 对于钢铁这类的现 货交易 传统的交易需要有一个市场 供方在市场内展销 而需方则去该市场查 找比较货物的品质 价格等各项因素 这种传统的交易浪费物力人力资源 且卖 家和买家的交易具有地域局限性 在这种情况下迫切需要一个电子交易平台 能 够让卖家能够发布货品的买卖信息 而买家能够通过这个平台买到自己所需要的 货品 使交易更快捷方便 高达钢铁现货交易平台的主要功能是卖方可以将自己的资源信息导入到平台 中进行挂牌销售 购买方通过该交易平台搜索需要购买的非监管资源并向卖方洽 谈价格 达成购买意向后 可以在平台上购买该资源 平台会自动生成该笔交易 的提单 作为购买方在提货时候的一个证明 本文简单介绍了电子商务平台的概念以及发展前景 对高达钢铁现货交易系 统的功能做了简要的介绍 其中 重点介绍与本课题相关的资源挂牌模块的说明 分析 设计和实现 关键词 电子商务平台 现货交易系统 钢铁 II ABSTRACT As technology advances people began to use the Internet to complete the sale and purchase of goods the new generation of e commerce emerge replacing the current based on a simple website e mail approach For iron and steel such as spot trading the traditional need for a market transaction for the sale in the market and demand side is compared to the market to find the quality of goods prices and other factors the traditional trading of human waste material resources and the sellers and buyers with the geographical limitations of the transaction In this case the urgent need for an electronic trading platform that enables the seller to release the sale of information goods and buyers can buy through the platform of the goods they need to make transactions more quickly and conveniently Golden spot trading platforms up to the iron and steel of the main functions of the seller you can speak on their own resources into the platform of information listed in the purchase through the trading platform will need to purchase the product search and price the seller to negotiate the purchase of resources and generate bills of lading for the purchase side proof of delivery This article briefly introduced the concept of e commerce platform Steel up to the spot on the trading system of modular analysis which focuses on issues related with the module description of the resources listed analysis design and realization Keywords E Business platform Spot Trading Steel III 目录 摘要 I ABSTRACT II 第1章 引言 1 1 1 背景 1 1 2 研究内容 2 第2章 系统相关技术简介 3 2 1 B S系统结构分析 3 2 1 1 浏览器 服务器结构 3 2 1 2 浏览器 服务器结构的优缺点 3 2 2 主要开发环境介绍 4 2 2 1 MYECLIPSE 4 2 2 2 SQL SERVER 2000 5 2 2 3 JAVASCRIPT脚本语言 6 2 2 4 JSP语言 6 第3章 高达钢铁现货交易系统需求描述 7 3 1 现货交易系统概述 7 3 2 总体业务流程描述 7 3 2 2 挂牌撤牌功能用例图 9 3 3 资源挂牌 撤牌功能 10 3 3 1 资源挂牌 撤牌功能概述 10 3 3 2 资源挂牌 撤牌模块结构 11 3 3 2 1 可挂牌资源列表 11 3 3 2 2 资源码单 11 3 3 2 3 修改挂牌信息 11 3 3 2 4 挂牌 12 3 3 2 5 撤牌 12 3 4 挂牌撤牌业务流程 12 3 4 1挂牌撤牌流程 12 IV 第4章 高达现货交易系统设计 16 4 1架构设计 16 4 2 数据库设计 18 4 2 1 未挂牌资源详细设计 18 4 2 2 已挂牌资源详细设计 19 4 2 3 数据库表单 20 第5章 详细设计及代码实现 21 5 1 主要业务流程和算法 21 5 1 1 可挂牌资源 21 5 1 2 统设 23 5 1 3 资源码单 26 5 1 4 挂牌 28 5 1 5 已挂牌资源列表 30 5 1 6 撤牌 32 附录 源代码 38 1 第第1章章 引言引言 1 1 背景背景 电子商务 E Business 将IT技术策略与企业商务策略整合起来 形成企业全新的组织构架 全新的商业模式 全新的业务流程 它是传统企业电子化的过程 即传统商务向 电子商务转型的过程 它运用万维网和信息技术 结合网络的标准性 简洁性 连通性的特点 形成企业电子化核心业务的流程 1 网上交易平台是现实生活交易市场的替代品 交易的整个流程 2 从选购商 品 商议价格 支付金额购买 到最终确定完成购买 都在网络上完成 因此交 易中未涉及到现金流动 在交易安全和规范性保证的前提下 网上交易具有比现 实交易更高的效率 在网络和电子商务快速发展的今天 利用网上交易平台代替现实中的各种交 易市场已经成为一个潜力很大的交易途径 许多门户网站纷纷推出自己的网上交 易平台 例如新浪 网易 腾讯等等 此外 一些专门从事网上交易的电子商务 门户平台也开始出现了 例如国内著名的相关网站 阿里巴巴 和 淘宝网 网上交易平台是现实生活交易市场的替代品 因为 Internet的飞速发展使得通过网络获取信息成为当今非常有效的途径 而经过十几 年的探索和发展 网络信息传递和安全技术已经有了很大的提高 具备了较高的 安全性和易操作性 而且数据库和网络编程工具的升级 保证了网上交易平台能 够成功模拟出现交易过程的即时性 互动性 与此同时 数据库和网络变成已经 能够实现销售者的数字化经营管理 2 1 2 研究内容研究内容 高达钢铁现货交易系统是一个面向钢铁卖家和买家的一个电子商务交易系统 通过该系统 卖家可以对手上的货物资源信息以交易中心指定的Excel格式文件 上传到交易系统中进行资源导入 对资源挂牌和撤牌 能够和买家洽谈 并能够 对销售合同进行管理 非监管合同在场外交收 场外结算合同的到款确认 生成 并打印提单以及对买家实施优惠等功能 买家则能够浏览卖家发布的资源 在线 选购非监管挂牌资源 与卖家进行价格的洽谈 从购物车重选择需要采购的资源 并制作订单 查看自己的网上采购合同列表和打印成交通知单 对已经到款确认 的合同可以生成提单并打印 以便买家提货 对卖家已到款确认或已开提单合同 进行到货确认 买家对非监管 场内结算合同做实提维护 从而使钢铁交易从 传统的市场买卖转为网上交易 方便买卖双方 高达钢铁现货交易系统主要基于J2EE技术 在MyEclipse开发环境下 采用 目前在项目中广泛使用的Struts Hibernate Spring三种开源框架来作为系统主 体架构 并应用了多种开源技术来辅助设计和开发 由于该系统是一个电子交易 平台 涉及到买卖双方的价格计算和金钱交易 这就要求系统具备良好的数据处 理能力 保证系统能够稳定 高效的运行 同时卖家的资源信息较多 如果每条 信息都需要在系统中导入 那么对卖家的资源及时发布会造成很大的困扰 因此 系统需要能够使用户将Excel中的多条资源信息直接导入到系统中 这就需要 解决Excel的导入问题 另外 为了用户的信息安全 需要对用户进行权限管理 不同的买家只能看到自己相应账户下的网上采购合同列表等信息 而且买家只 能看到卖家发布资源的挂牌价而不能够看到该资源的销售底价 3 第第2 2章章 系统相关技术简介系统相关技术简介 2 1 B S系统结构分析系统结构分析 2 1 1 浏览器 服务器结构浏览器 服务器结构 B S Browser Server 结构即浏览器和服务器结构 它是随着Internet技术的 兴起 对C S结构的一种变化或者改进的结构 在这种结构下 用户工作界面是 通过WWW浏览器来实现 极少部分事务逻辑在前端 Browser 实现 但是主要 事务逻辑在服务器端 Server 实现 形成所谓三层3 tier结构 这样就大大简化了客户端电脑载荷 减轻了系统维护与升级的成本和工 作量 降低了用户的总体成本 TCO 3 B S结构图如图2 1所示 防火墙 图图 WWW 应用服务器 企业内部客 户Browser 企业内部客户 图形用户界面 数据库访 问网关 数据库服务器 2 12 1 三层三层B SB S结构图结构图 2 1 2 浏览器 服务器结构的优缺点浏览器 服务器结构的优缺点 1 维护和升级方式简单 目前 软件系统的改进和升级越来越频繁 B S架构的产品明显体现着更为 方便的特性 对一个稍微大一点单位来说 系统管理人员如果需要在几百甚至上 千部电脑之间来回奔跑 效率和工作量是可想而知的 但B S架构的软件只需要 管理服务器就行了 所有的客户端只是浏览器 根本不需要做任何的维护 无论 普通 客户 4 用户的规模有多大 有多少分支机构都不会增加任何维护升级的工作量 所有的 操作只需要针对服务器进行 如果是异地 只需要把服务器连接专网即可 实现 远程维护 升级和共享 所以客户机越来越 瘦 而服务器越来越 胖 是将 来信息化发展的主流方向 今后 软件升级和维护会越来越容易 而使用起来会 越来越简单 这对用户人力 物力 时间 费用的节省是显而易见的 惊人的 因此 维护和升级革命的方式是 瘦 客户机 胖 服务器 2 成本降低 选择更多 大家都知道windows在桌面电脑上几乎一统天下 浏览器成为了标准配置 但在服务器操作系统上windows并不是处于绝对的统治地位 现在的趋势是凡使 用B S架构的应用管理软件 只需安装在Linux服务器上即可 而且安全性高 所 以服务器操作系统的选择是很多的 不管选用那种操作系统都可以让大部分人使 用windows作为桌面操作系统电脑不受影响 这就使的最流行免费的Linux操作系 统快速发展起来 Linux除了操作系统是免费的以外 连数据库也是免费的 这种 选择非常盛行 比如说很多人每天上 网易 只要安装了浏览器就可以了 并 不需要了解 网易 的服务器用的是什么操作系统 而事实上大部分网站确实没 有使用windows操作系统 但用户的电脑本身安装的大部分是windows操作系统 3 应用服务器运行数据负荷较重 由于B S架构管理软件只安装在服务器端 Server 上 网络管理人员只需要 管理服务器就行了 用户界面主要事务逻辑在服务器 Server 端完全通过WW W浏览器实现 极少部分事务逻辑在前端 Browser 实现 所有的客户端只有浏 览器 网络管理人员只需要做硬件维护 但是 应用服务器运行数据负荷较重 一旦发生服务器 崩溃 等问题 后果不堪设想 因此 许多单位都备有数据库 存储服务器 以防万一 2 2 主要开发环境介绍主要开发环境介绍 2 2 1 MyEclipse MyEclipse企业级工作平台 MyEclipse Enterprise Workbench 简称MyEclipse 是对Eclipse IDE的扩展 利用它我们可以在数据库和J2EE的开发 发布 以及应用程序服务 器的整合方面极大的提高工作效率 它是功能丰富的J2EE集成开发环境 包括了 5 完备的编码 调试 测试和发布功能 完整支持HTML Struts JSF CSS Javascript SQL Hibernate 在结构上 MyEclipse的特征可以被分为7类 1 J2EE模型 2 WEB开发工具 3 EJB开发工具 4 应用程序服务器的连接器 5 J2EE项目部署服务 6 数据库服务 7 MyEclipse整合帮助 对于以上每一种功能上的类别 在Eclipse中都有相应的功能部件 并通过一 系列的插件来实现它们 MyEclipse结构上的这种模块化 可以让我们在不影响其 他模块的情况下 对任一模块进行单独的扩展和升级 简单而言 MyEclipse是Eclipse的插件 也是一款功能强大的J2EE集成开发环 境 支持代码编写 配置 测试以及除错 2 2 2 SQL Server 2000 SQL是英文Structured Query Language的缩写 意思为结构化查询语言 SQL语言的主要功能就是同各种数据 库建立联系 进行沟通 按照ANSI 美国国家标准协会 的规定 SQL被作为关系 型数据库管理系统的标准语言 SQL语句可以用来执行各种各样的操作 例如更 新数据库中的数据 从数据库中提取数据等 目前 绝大多数流行的关系型数据 库管理系统 如Oracle Sybase Microsoft SQL Server Access等都采用了SQL语言标准 虽然很多数据库都对SQL语句进行了再开发和 扩展 但是包括Select Insert Update Delete Create 以及Drop在内的标准的SQL命令仍然可以被用来完成几乎所有的数据库操 作 SQL Server 是一个关系数据库管理系统 它最初是由Microsoft Sybase 和Ashton Tate三家公司共同开发的 于1988 年推出了第一个OS 2 版本 在Windows NT 推出后 Microsoft与Sybase 在SQL Server 6 的开发上就分道扬镳了 Microsoft 将SQL Server 移植到Windows NT系统上 专注于开发推广SQL Server 的Windows NT 版本 Sybase 则较专注于SQL Server在UNIX 操作系统上的应用 SQL Server 2000 是Microsoft 公司推出的SQL Server 数据库管理系统 该版本继承了SQL Server 7 0 版本的优点 同时又比它增加了许多更先进的功能 具有使用方便可伸缩性好与 相关软件集成程度高等优点 可跨越从运行Microsoft Windows 98 的膝上型电脑到运行Microsoft Windows 2000 的大型多处理器的服务器等多种平台使用 2 2 3 JavaScript脚本语言脚本语言 JavaScript是由Netscape公司开发并随Navigator导航者一起发布的 介于Java 与HTML之间 基于对象事件驱动的编程语言 通过 JavaScript 可以做到响应用户的需求事件 如表单的输入 这样当一位使用者输入一项信 息时 它不需要通过网络传送到服务器端进行处理再传回来的过程 而可以直接 在客户端进行事件的处理 因它的开发环境简单 不需要Java编译器 而是直接 运行在Web浏览器中 而因倍受Web设计者的所爱 2 2 4 JSP语言语言 JSP Java Server Pages 是由Sun Microsystems公司倡导 许多公司参与一起建立的一种动态网页技术标准 JSP技 术有点类似SAP技术 它是在传统的网页HTML文件 htm html 中插入JAVA程 序段 Scriptlet 和JSP标记 tag 从而形成JSP文件 jsp 用JSP开发的Web应用是跨平台的 即能在Linux下运行 也能在其他操作系统上 运行 JSP技术使用Java编程语言编写类XML的tags和scriptlets 来封装产生动态网 页的处理逻辑 网页还能通过tags和scriptlets访问存在于服务端的资源的应用逻辑 JSP将网页逻辑与网页设计和显示分离 支持可重用的基于组件的设计 使基 于Web的应用程序的开发变得迅速和容易 7 Web服务器在遇到访问JSP网页的请求时 首先执行其中的程序段 然后将执行结 果连同JSP文件中的HTML代码一起返回给客户 插入的Java程序段可以操作数据 库 重新定向网页等 以实现建立动态网页所需要的功能 JSP与Jave servlet一样 是在服务器端执行的 通常返回该客户端的就是一个HTML文本 因此客户端只要有浏览器就能浏览 第第3 3章章 高达钢铁现货交易系统需求描述高达钢铁现货交易系统需求描述 3 1 现货交易系统概述现货交易系统概述 本系统是在MyEclipse环境下进行B S架构的高达电子商务管理系统研究与开 发 主要功能是完成高达钢铁现货资源的交易 以及对非监管资源交易的有效管 理方法 完成高达电子商务管理系统之非监管资源的挂牌 结算 交收等部分的 内容 系统的主要功能模块分为为 资源导入 资源挂牌 撤牌 资源选购 卖家洽 谈管理 买家洽谈 生成订单 订单查询 采购 销售合同查询 货款支付 打印 通知单 生成提单 到款 到货确认 实提维护 审核 而我主要负责的功能模块 为资源挂牌模块 3 2 总体业务流程描述总体业务流程描述 1 卖家业务员将需要在网上销售的非监管资源系统 以交易中心规定的Excel 格式 组成Excel文件后将该资源上传到交易平台中 2 卖家业务员将资源通过Excel上传交易系统后 需要对资源的真实性以及资源信息 的正确性进行确认 并审核导入的资源基本信息 3 卖家业务员对导入的资源审核通过后 即可对导入的资源进行挂牌处理 挂牌时 卖家业务员需要设定资源销售的基本信息 如 挂牌价 挂牌量 销售底价 是否洽谈等 8 4 挂牌经确认后 买家业务员即可在交易系统中的我买钢材中查找到相应的资源 若买家业务员需要购买某笔资源 则可以将需要购买的资源放入购物车中 5 若买家业务员选购的资源为允许洽谈资源 则买家即可向卖家发送洽谈请求经双 方洽谈成交后 洽谈成交价即为本次成交价 若该资源卖家设定为不允许洽谈 或者洽谈没有成功 则洽谈成交价为挂牌价 6 确定价格后 买家业务员即可开始制作订单 制作订单时 系统自动锁 定订单中所包含的挂牌资源 7 在订单生成时 买家业务员需要确定合同的支付模式 对于非监管资源交易来说 我们提供了两种付款方式 即 场内结算和场外结算 8 若买家业务员选择场外结算的方式购买资源 则 买家需要打印成交通知单 并 到卖家公司支付货款 9 当卖家收到买家业务员的货款后 可以在交易系统中做到款确认 10 到款确认完成后 卖家可以立即打印提单并交由买家业务员 也可以暂不打印提 单而由买家业务员自行打印提单 11 若卖家选择了由买家业务员自行打印提单 则买家业务需要登陆交易系统生成并 打印提单 提单打印后 买家业务员即可凭此提单到指定的仓库提货 12 若买家业务员在生成订单的时候 选择的付款方式为场内结算 则此时买家财务 人员需要在交易中心规定的时间内将货款支付给卖家 此时 货款被冻结再卖家 帐户中 货款支付后 买家业务人员即可以在交易系统中生成并打印提单 然 后凭打印的提单到指定的仓库提货 13 买家业务员提货完成后 需要在交易系统中做到货确认 到货确认完成后 交易 中心再根据买家的指令 将货款由卖家的冻结帐户中释放成卖家的可用资金 14 非监管挂牌交易流程到此结束 9 其业务流程图如图3 1所示 资源挂牌 内部审核 审核通过 修改资源信息 N 资源相关信息必 须符合交易中心 规定的标准格式 Y 卖方交易平台买方 可购买资源选入购物车 会员入金 以挂牌价成交 是否洽谈 洽谈成交 Y N N 以洽谈价成交 Y 制作订单 支付货款 锁定挂牌资源 对合同进行CA签字确认 场内结算 Y 打印成交通知单N 到款确认 可选 立即打印提单 提单打印 生成提单 提单打印 买家打印提单 生成提单 场外提货 货款支付到卖家 二级帐户 并且 立即全额锁定 到货确认释放冻结款 Excel导入 对挂牌资源进行 CA签字确认 生成提货委托单 委托提货委托提货 自提 委托单确认 提单打印 场外交收场外结 算不需到款确认 图图3 13 1 总体业务流程图总体业务流程图 3 2 2 挂牌撤牌功能用例图挂牌撤牌功能用例图 卖家业务员已经登陆系统 进入资源挂牌模块后 按需选择查询条件进行查 询操作 用户可以点击未挂牌资源 未挂牌的资源信息进行修改 统设 挂牌 查看资源码单 同时 用户也可以选择已挂牌资源功能 对已挂牌的资源进行撤 牌 如图3 2所示 10 图图3 23 2 系统用例图系统用例图 3 3 资源挂牌资源挂牌 撤牌功能撤牌功能 3 3 1 资源挂牌资源挂牌 撤牌功能概述撤牌功能概述 资源挂牌功能模块后 在未挂牌资源列表下选中需要挂牌出售的资源 对其 进行参数设置 可修改的信息包括 挂牌价 销售底价 是否允许洽谈 自动接 受价差 自动拒绝价差 延迟交货天数 备注 卖家业务员可以选择统设 对选 中的资源进行统一设定 设置好资源参数后 系统判断挂牌信息是否符合要求 如通过 资源进入已挂牌资源信息列表中 若不通过 则会提示相应的错误信息 请卖家业务员核对挂牌资源信息参数 只有输入正确的信息 才能将资源进行 挂牌销售 11 同样 卖家业务员在进入资源挂牌功能模块后 选择已挂牌资源列表 选择 需要撤牌的资源 点击撤销 该资源信息会从已挂资源列表中删除 该记录被重 新放入到挂牌资源列表中 3 3 2 资源挂牌资源挂牌 撤牌模块结构撤牌模块结构 该模块的主要功能是卖家业务员可以将已经经过审核的但未挂牌的资源进行 挂牌出售和将已挂牌的资源进行撤牌 可以分为以下子模块 3 3 2 1 可挂牌资源列表可挂牌资源列表 显示当前卖家会员可挂牌资源的列表 包括该资源的品名 材质 规格 资源好 数量 挂牌重量 可挂量 挂牌价 销售底价 洽谈 接受价 拒绝 价 仓库 备注以及该资源的码单信息 3 3 2 2 资源码单资源码单 资源中存在多个码单 用户可以点击码单 展开资源明细下面的码单信息 并通过对码单信息的操作 确定该笔资源的挂牌量 且有以下特点 1 用户在未挂牌清单列表里点击码单显示已挂牌和未挂牌的码单列表 2 用户在已挂牌清单列表里点击码单只显示已挂牌码单列表 3 选择码单列表里码单信息 序号后面的checkBox 点击编辑按钮 可 对码单进行挂牌和撤牌操作 操作完成后 返回到未挂牌或已挂牌清单列表页 面 3 3 2 3 修改挂牌信息修改挂牌信息 对未挂牌资源进行参数设置 如 挂牌价 销售底价 是否允许洽谈 自 动接受价差 自动拒绝价差 延迟交货天数 备注等 用户在未挂牌资源清单页面中点击 编辑 后 弹出的资源修改页面 修改 资源需要验证以下几点 a 判断挂牌价 dj3 是否已经设置 若未设置 则不允许用户操作 b 若该资源允许洽谈 则需要判断 该资源的销售底价是否已经设置 若未 12 设置 则不允许用户操作 c 若用户设置的销售底价 0 则需要判断销售底价是否大于挂牌价 若大于 则 不允许用户操作 d 需要判断用户设置的挂牌价是否在系统设定的合理范围内 取系统设定的合理范 围 从表jy pzsz中获取 根据大类获取 若挂牌价低于系统设定的合理挂牌价 的最低值 则需要提示用户不合法 并不允许用户操作 若挂牌价高于系统设置 的合理的挂牌价的最高值 则需要提示用户不合法 并不允许用户操作 e 判断自动接受价差不允许大于自动拒绝价差 f 判断自动接受价差不能大于挂牌价 g 判断自动拒绝价差不能大于挂牌价 h 若未延期交货资源 则需要根据交易中心设定的最长延期交货天数 来判断用户 设定的交货天数是否大于交易中心的规定值 若用户设定的交货天数大于交易中 心规定的天数 则提示用户 并不允许用户继续操作 3 3 2 4 挂牌挂牌 对已经设置好的挂牌参数的资源进行销售处理 即将该资源挂到平台上进 行销售 买家业务员可以在购买的过程中看到该资源的销售状态 用户在未挂牌资源清单页面中先选中资源信息 序号后面的checkBox勾上 在点击 挂牌 按钮 系统首先判断这些资源是否符合挂牌 挂牌价 挂 牌数量 挂牌重量必须大于0 条件符合就进入挂牌确认页面 在挂牌确认页 面里 用户再选中资源 点击确认 挂牌成功后就进入已挂牌清单列表 3 3 2 5 撤牌撤牌 将销售中的资源撤牌 即该资源因为种种原因 由卖家业务员将它从在销 售的状态改为不被销售的状态 即将该资源下架 13 用户在已挂牌清单页面选择资源后 点击 撤牌 按钮对资源进行撤牌操 作 如果资源中有正在洽谈的信息 则不能撤牌 返回到已挂牌清单页面 撤牌 成功 进入提示信息页面 提示用户是继续撤牌还是挂牌 3 4 挂牌撤牌业务流程挂牌撤牌业务流程 3 4 1挂牌撤牌流程挂牌撤牌流程 挂牌流程描述说明 1 开始 2 卖家业务员点击 我卖钢材 资源挂牌 进入资源挂牌模块中 如图3 2所示 图图3 33 3资源挂牌界面资源挂牌界面 3 默认情况下 页面显示的内容为无查询条件的数据 系统只显示当 前货主 的未挂牌资源列表 数据以分页的形式显示 每页显示20行数据 4 在资源列表中 有的资源里记录了多个资源码单 卖家可以选择 以确定资源 如果卖家业务员只选择了部分资源码单 没有全选 在资源挂牌成 功后 该笔资源在 未挂牌资源列表 中的状态由 未挂牌 转变为 已部分挂 牌 在 已挂牌资源列表 中也可以看到该笔资源 如图3 3所示 图图3 43 4 已挂牌资源界面已挂牌资源界面 5 对未挂牌资源进行参数设置 可修改的信息包括 挂牌价 销售底 价 是否允许洽谈 自动接受价差 自动拒绝价差 延迟交货天数 备注 支持 对选择的资源进行统设 统设可以选择多个资源对选择的资源进行统一设定 如 14 下图 图图3 53 5 物资统设界面物资统设界面 6 选择资源点击挂牌 判断挂牌信息是否符合要求 挂牌通过 资源 进入已挂牌资源信息列表中 挂牌未通过则会提示相应的错误信息 请卖家对挂 牌资源信息参数进行核对 如图3 5所示 图图3 63 6 错误提示界面错误提示界面 挂牌要求 A 选择的资源里必须有一笔以上的资源码单 B 必须设定它的挂牌价 C 如果卖家业务员选择了 允许洽谈 那么销售底价必须设定 销售 底价不能大于挂牌价 7 结束 15 撤牌流程描述说明 1 开始 2 卖家业务员点击 我卖钢材 资源挂牌 进入资源挂牌模块中 3 选择已挂牌资源列表 数据以分页的形式显示 每页显示20行数据 4 选择资源点击撤牌 该资源信息从已挂牌资源列表中删除 该信息 重新放入到未挂牌资源列表中 5 结束 业务流程图如图3 7所示 开始 资源挂牌 可挂牌资源列表 资源码单 修改挂牌信息 卖家业务员可以通 过 统设 对所 选资源进行修改 挂牌 结束 YES NO 开始 资源挂牌 已挂牌资源列表 撤牌 是否正在洽谈 结束 YES NO 图图3 73 7 资源挂牌资源挂牌 撤牌流程撤牌流程 16 第第4章章 高达现货交易系统设计高达现货交易系统设计 4 14 1架构设计架构设计 本系统采用MVC分层设计思想 选择了目前在项目中广泛使用的Struts Hibe rnate Spring三种开源框架来作为系统主体架构 并应用了多种开源技术来辅助设 计和开发 整体架构介绍 在软件工程领域 为了降低模块耦合度 提高模块的可重用 性 分层一直是广为采纳的一个方法 分层可以使开发人员专注于某一层进行开 发 使得软件开发的分工变细 提高生产效率 一个企业级的java应用 通常分为以下几层 UI层 业务逻辑层 数据持久 层 域对象层 下面对这几层分别作简要介绍 1 UI层 负责与用户交互 包括 接受用户的请求 把处理结果返回给用户 这里 我们采用struts来UI层 虽然比起Tapestry以及JSF这些事件 驱动的表现层技术而言 Struts的设计显得有些老土 但它目前仍是表现层事实上 的标准 所以我们还是选用它 2 业务逻辑层 主要负责具体的业务处理 通过Spring的IOC以及AOP实现各个功能 的耦合相连 3 数据持久层 主要负责与底层的数据库打交道 这里我们采用Spring封装的Hiber nate操作来简化实际的编码 主要的操作为CRUD create read update delete 4 域对象层 具体的实体类 如会员 账户等等这些具体的类 与关系数据库中的 某一表或视图对应 这个框架都是经过实践和考验的而且使用的人也很多 质量和性能都有保障 这与自己写的代码相比 一定是这样比较好 而且利用这些框架可以进行快速开 发 层与层之间松藕合 增加代码的复用率 而且分层明确 便于开发 17 MVC MVC是三个单词的缩写 这三个单词分别为 模型 Model 视图 View 和控制 Controller MVC模式的目的就是实现Web系统的职能分工 Model 层实现系统中的业务逻辑 通常可以用JavaBean或EJB来实现 View层用于与用 户的交互 通常用JSP来实现 Controller层是Model与View之间沟通的桥梁 它可 以分派用户的请求并选择恰当的视图以用于显示 同时它也可以解释用户的输入 并将它们映射为模型层可执行的操作 Struts框架简介 Struts是Apache Jakarta项目的组成部分 该项目的目标是为建立Java Web 应用程序而提供的一个开源框架 通过使用Struts框架可以改进和提高Java Server Pages JSP Servlet 标签库以及面向对象技术在Web应用程序中的应用 Struts是MV C的一种实现 它很好地结合了Jsp Java Servlet JavaBean Taglib等技术 MVC即Model View Controller的缩写 它是Web应用中常用的设计模式 MVC减弱了业务逻辑接口和 数据接口之间的耦合 同时让视图层更富于变化 控制器 Controller 的作用是从客户端接受请求 并选择执行相应的业务逻 辑 然后把响应结果送回到客户端 在Struts中Controller由ActionServlet类和Actio n类实现 ActionServlet主要负责接受HTTP请求 Action类负责调用模型的方法 更新模型的状态 并帮助控制应用程序的流程 视图层主要是由JSP来实现页面显示 它接收到JavaBean和Action Form中的数据 利用html Taglib bean logic等标签显示数据 在Struts中 主要存在三种bean 分别是 Action ActionForm EJB或者Java Bean ActionForm用来封装客户请求信息 Action取得ActionForm中的数据 再 由EJB或者JavaBean进行处理 Spring框架 Spring是一个解决了许多在J2EE开发中常见的问题的强大框架 它提供了管理业务对象的一致方法并且鼓励对接口编程而不是对类编程的习惯 Spring的架构基础是基于使用JavaBean属性的Inversion of Control容器 数据访问架构集成了Hibernate和其他O R mapping解决方案 同时提供了对Struts的支持 Hibernate框架 Hibernate是一个开源的对象关系映射框架 它对JDBC进行了 轻量级的对象封装 18 Java程序员可以使用面向对象的方式来操作数据库 Hibernate可以应用在任何使 用JDBC的场合 既可以在Java的客户端的程序中使用 也可以在Servlet JSP的Web 应用中使用 Hibernate的目标是成为Java中管理持续性数据问题的一种完整的解 决方案 它协调应用与关系数据库的交互 让开发者解放出来专注于业务问题 4 2 数据库设计数据库设计 4 2 1 未挂牌资源详细设计未挂牌资源详细设计 未挂牌资源 需要包含的条件为 品名 材质 规格范围 仓库 产地 仓 库和产地选项可以以下拉框的形式供用户选择 具体如下表4 1所示 表表4 14 1 未挂牌资源输入项表未挂牌资源输入项表 项类型必须填写说明 品名varchar可选填 材质varchar可选填 规格范围dec 8 2 可选填厚 x x 宽 x x 仓库varchar可选填下拉列 从bd ck中读取 产地varchar可选填下拉列 从jy cdsz中读取 待挂牌资源 需要包含的条件为 品名 材质 规格 产地 挂牌数量 挂 牌重量 挂牌价 销售底价 允许洽谈 自动接受价差 自动拒绝价差 允许拆 分 延迟交货天数 备足 仓库 单位 资源号 计量方式 入库时间 采购合 同等元素组成 其中允许洽谈和允许拆分为可选项 具体如下表4 2所示 表表4 24 2 待挂牌资源信息表待挂牌资源信息表 字段名称类型格式化 pm 品名varchar cz 材质varchar gg 规格varchar cd 产地varchar gpsl1 挂牌数量dec 0 gpds 挂牌重量dec 0 000 dj3 挂牌价dec 0 00 dj4 销售底价dec 0 00 flag 允许洽谈intcheckbox dj1 自动接受价差dec 0 00 dj2 自动拒绝价差dec 0 00 flag1 允许拆分intcheckbox flag4 延迟交货天数int 19 bz 备注varchar ck 仓库varchar jjdw 单位varchar zyh 资源号varchar jlfs 计量方式varchar rkrq 入库日期datetimeyyyy MM dd cghthm 采购合同varchar 挂牌资源码单信息 需要包含的条件为 捆包号 生产日期 挂牌数量 挂 牌重量 可供数量 备注 具体如下表4 3所示 表表 4 3 4 3 挂牌资源码单信息挂牌资源码单信息 字段名称类型格式化 kbh 捆包号varchar cghtstr3 生产日期varchar sl1 挂牌数量dec 0 sl2 挂牌重量dec 0 000 kgds1可供数量dec 0 kgds2可供重量dec 0 000 bz 备注varchar 4 2 2 已挂牌资源详细设计已挂牌资源详细设计 已挂牌资源信息 需要包含的条件为 品名 材质 规格范围 仓库 产地 其中仓库和产地为下拉框 具体如下表4 4所示 表表4 44 4 已挂牌资源输入项表已挂牌资源输入项表 项类型必须填写说明 品名varchar可选填 材质varchar可选填 规格范围dec 8 2 可选填厚 x x 宽 x x 仓库varchar可选填下拉列 从bd ck中读取 产地varchar可选填下拉列 从jy cdsz中读取 已挂牌资源信息 需要包含的条件为 品名 材质 规格 产地 挂牌数量 挂牌重量 挂牌价 销售底价 允许洽谈 自动接受价差 自动拒接价差 允 许拆分 延迟交货天数 备注 仓库 单位 资源号 计量方式 入库时间 采 购合同 其中允许洽谈和允许拆分为可选项 具体如下表4 5所示 20 表表4 54 5 已挂牌资源内容已挂牌资源内容 字段名称类型格式化 pm 品名varchar cz 材质varchar gg 规格varchar cd 产地varchar gpsl1 挂牌数量dec 0 gpds 挂牌重量dec 0 000 dj3 挂牌价dec 0 00 dj4 销售底价dec 0 00 flag 允许洽谈intcheckbox dj1 自动接受价差dec 0 00 dj2 自动拒绝价差dec 0 00 flag1 允许拆分intcheckbox flag4 延迟交货天数int bz 备注varchar ck 仓库varchar jjdw 单位varchar zyh 资源号varchar jlfs 计量方式varchar rkrq 入库日期datetimeyyyy MM dd cghthm 采购合同varchar 4 2 3 数据库表单数据库表单 图图4 14 1数据库表单数据库表单 21 第第5章章 详细设计及代码实现详细设计及代码实现 5 1 主要业务流程和算法主要业务流程和算法 5 1 1 可挂牌资源可挂牌资源 默认情况下 用户进入资源挂牌模块后 显示的是当前卖家的未挂牌资源 用户也可以按需选择查询条件进行查询操作 数据以分页的形式显示 每页显示 20行数据 如图5 1所示 图图5 15 1可挂牌资源界面可挂牌资源界面 22 具体流程即实现见下表 表表5 15 1 显示未挂牌资源列表显示未挂牌资源列表 输 入 项 用户的查询条件 品名pm 材质cz 规格范围gg 仓库ck 产地cd 输 出 项 显示待挂牌资源信息内容 品名pm 材质cz 规格gg 产地cd 挂牌数量 gpsl1 挂牌重量gpds 挂牌价dj3 销售底价dj4 允许洽谈flag 自 动接受价差dj1 自动拒绝价差dj2 允许拆分flag1 延迟交货天数flag4 备注bz 仓库ck 单位jjdw 资源号zyh 计量方式hthm 入库日期rk rq 采购合同cghthm 关 键 算 法 Step 1 默认情况下 select from sys djsz where sh 0 and hz 当前会员 系统调用QuoResourceService queryQuoResource QuoResourceForm form 方法 Step2 有查询条件情况下 select from sys djsz where sh 0 and pm And cz And gg And ck And cd 系统调用 QuoResourceService queryQuoResourceForMemo QuoResourceForm form 涉 及 资 源 类 QuoResourceService java 表 sys djsz 关 键 代 码 段 显示已挂牌或未挂牌内容 brm quoResourceService queryQuoResourceForMemo form List list brm getResults if null list for int i 0 i list size i SysDjsz bean SysDjsz list get i if null bean getGpds if null bean getKgsl2 bean setZzl bean getKgsl2 bean getGpds else bean setZzl bean getGpds 23 else if null bean getKgsl2 bean setZzl bean getKgsl2 else bean setZzl 0 0 bean setZzlStr DoubleConvert convertToWeight bean getZzl if null bean getDj1 if null bean getDj2 if null bean getGpds bean setGpdsStr DoubleConvert convertToWeight bean getGpds 5 1 2 统设统设 用户进入选择多个资源 点击 统设 按钮 程序弹出挂牌参数修改窗口 如图所示 图图5 25 2 统设界面统设界面 24 具体实现见下表 表表5 35 3 统设业务描述统设业务描述 输 入 项 挂牌价 dj3 销售底价 dj4 是否允许洽谈 flag 自动接受价差 dj 1 自动拒绝价差 dj2 挂牌数量 gpsl1 其中的统一加减是在上原来的价格加减 输出 项 1 提示成功 显示修改后的挂牌资源信息 2 返回异常信息 提示失败 关 键 算 法 Step 1 判断修改信息是否正确 和 修改挂牌信息 的算法一样 Step 2 修改信息正确 修改数据 系统调用QuoResourceService setQuoResource BActionContext context 方法 涉及 资源 类 QuoResourceService java 表 sys djsz 关 键 代 码 段 HttpServletRequest request context getRequest 当前页面的资源记录数 String zyCount request getParameter rescount QuoResourceForm form QuoResourceForm context getForm BaseResultModel brm new BaseResultModel 得到原始数据列表记录 brm this getResource context form 判断更改数据 并更新list String selRes 资源主键gpls String resId 该资源是否被修改标志 String selUpdate 挂牌重量 String sh 25 码单 String mdxz String errorInfo int errorNum 0 遍历当前页面所有的资源记录 for int i 1 i new Integer zyCount intValue i selRes request getParameter check i 资源主键gpls resId request getParameter res i sh request getParameter sh i mdxz new String new Integer mdsl intValue for int j 1 j new Integer mdsl intValue j 码单是否被选中 if null request getParameter md i j SysDjsz djsz new SysDjsz if null selRes djsz setGpls resId 根据统设页面输入的数据放入到SysDjsz if nul

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

最新文档

评论

0/150

提交评论