八大恶心的网站制作,上海网站设计服务商,苏州建设培训中心 官网,手机网站打不开百货店是生活中不可缺少的一部分#xff0c;为了给顾客提供更方便的服务平台以及更好的服务质量#xff0c;而设计了POS积分管理系统。百货店通过点积分的管理获得顾客更好的信誉#xff0c;增加客户流量#xff0c;获得更多的利益。在百货店经营的过程中#xff0c;每天的… 百货店是生活中不可缺少的一部分为了给顾客提供更方便的服务平台以及更好的服务质量而设计了POS积分管理系统。百货店通过点积分的管理获得顾客更好的信誉增加客户流量获得更多的利益。在百货店经营的过程中每天的交易次数成千上万所以对顾客使用积分卡信息的查询是很重要的。根据这一点设计了积分更新生成及通票回收处理的功能。积分点更新生成是指将顾客交易情况生成更新查询文件通票回收处理是指对一定时间后没有使用过的通票进行回收处理以及保存相关信息。涉及到的技术主要是对文件的读和写操作、对数据库的查询和插入以及简单计算编程等等。是基于日文操作系统Windows 2000采用Java开发语言并使用SQL server 2000数据库JDBC驱动器来完成积分点更新生成以及通票回收处理的功能。 引 言
21世纪的今天人类已步入一个高速发展的信息时代。随着科学技术的不断发展日益更新计算机技术的发展更是突飞猛进并在人们的生活当中起着重要的作用。运用计算机技术可以开发各式各样的产品如积分管理系统等等。
积分管理它的概念在人们的记忆中并不陌生它属于各大企业经营管理中的一种方式也是提高管理效率的一种手段。随着WTO的步伐加快国际化竞争必然加剧国际国内市场将面临更为激烈的争夺。参与市场竞争更多的要靠先进超前的经营管理观念和方法、系统的战略规划、科学的市场分析、规范的管理运作、入微的客户服务、优秀的员工队伍等综合实力。经营绩效是公司管理的重心建立先进的管理系统对推动公司战略实现、提高经营业绩是非常重要的。因此POS积分管理系统就是在具备先进科学技术条件下以先进超前的经营管理理念为基础而设计的一套先进的管理系统。
POS积分管理系统的先进性是要经过详细的需求分析和精心的设计才能实现的。一个公司的管理系统是否先进、完善是由公司的管理制度管理理念来决定的。然而一个公司的管理系统的先进性、完善性直接体现了该公司的管理制度和管理理念。因此具有先进和完善的管理系统对各大企业的管理和发展都起着非常重要的作用。但是怎样才能体现一个管理系统是否真正的先进和完善呢这在我们开发该POS积分管理系统时首要涉及考虑的问题。比如在积分管理系统中会员的基本信息是否完整店铺的基本信息是否完整系统的积分更新是否准确及时管理系统的性能是否稳定管理系统的利用是否节约系统资源降低成本等等都是必须考虑的问题。
为了满足某百货店的需求我们设计出具有以下优点的POS积分管理系统。如检索迅速可靠性高稳定性强更新方便保密性好成本低使用方便等等。有了这些优点各大企业可以利用积分管理系统通过积分的手段提高经营绩效达到增加利润的目的增加各个企业之间的竞争从而促进社会经济的发展。
总的来说开发一套POS积分管理系统是很重要的。在这个POS积分管理系统中主要负责积分更新生成和通票回收处理这两个模块的分析、设计和实现。结合所学的知识基于日文系统Windows 2000,采用Java开发语言并使用SQL server 2000的数据库来实现积分点更新生成以及通票回收处理的功能。下面将介绍开发过程中实现该模块的具体内容。 模块需求分析
各企业或百货店为了在激烈竞争的商场中立于不败之地就必须与客户建立良好的关系这就要求在各企业或百货店中拥有一套管理完善的、先进的、稳定的、功能齐全的POS积分管理系统。这里的POS积分管理系统是面向最终客户的因此这里所谓的客户是指个人。
在每个店铺中拥有很多个客户而客户又可能拥有旧店铺编码和旧会员编码但是店铺与客户的关系却不是多对多的关系而是一对多的关系。通过对客户基本资料与店铺基本信息的管理从而增加企业或百货店与客户的交易信誉度使得客户在购买商品时买的放心买的开心以至于提高客户的满意度吸引和保持更多的客户。
积分点更新生成模块该模块是查询所需要更新的信息将所需要更新的信息存在DAT文件中。通票回收处理是将符合某种条件的信息在CSV文件中显示。 模块功能需求
积分卡所包含的基本资料 会员基本资料包括会员编码姓名出生年月日联系电话可登记多个电话会员种类分为三个种类一般法人社员性别邮编联系地址入会的店铺编码无效区分分为两种有效无效。店铺基本资料包括店铺编码店铺名称店铺邮编店铺地址联系电话。积分点基本资料包括会员编码旧会员编码优惠等级各种积分点分为六种积分点现时积分点累计积分点输出的累计积分点增加的累计积分点基本累计积分点奖金积分累计积分点最新一次使用积分卡的日期使用积分卡的次数购买金额会员打折金额系统更新日期。其它资料会员状态包括会员编码店铺编码更新种类分为三种类型登陆修改删除处理日表包括营业日处理日登陆日期更新时间。
处理功能需求
积分点更新生成查询会员状态中的会员编码按条件检索会员基本资料店铺基本资料积分点基本资料以及其它将符合条件的数据取出存在内存中然后再根据积分点更新生成的条件将符合的结果保存在DAT文件中以方便更新查询。通票回收处理该模块主要针对通票回收和通票存储CSV文件进行处理将符合日期条件的数据重新写入通票存储CSV文件中方便查询。 客户对该模块的期望 实现该模块的所有功能稳定性强可调用性强 模块其他需求
开发环境需求
硬件需求计算机一台。操作系统Windows 2000(日文)。开发语言Java(版本号jdk1.5.0_06 eclipse 3.2)。数据库Microsoft SQL Server 2000。其他软件需求Microsoft SQL Server 2000 Driver for JDBC Service。
人力资源需求
积分点更新生成和通票回收处理这两个模块需要一个人完成。
时间需求
完成积分点更新生成和通票回收处理的功能需要3个月的时间。 可行性研究 技术可行性
Java技术的特点
以Java作为该模块的开发工具是因为它是目前使用最为广泛的网络编程语言之一并且具有简单、面向对象、稳定、与平台无关、解释型、多线程、安全、动态等特点。
简单Java语言简单是指这门语言既易学又好用而且Java中不再使用指针的概念。面向对象基于对象的编程更符合人的思维模式使人们更容易编写程序。与平台无关这一点是Java语言最大的优点。即用Java编写的程序可以在任何安装了Java虚拟机JVM的计算机上正确运行。解释型Java不针对特定的CPU芯片进行编译而是把程序编译为叫做自解码的一种“中间代码”。字节码是很接近机器码的文件可以在提供了Java虚拟机JVM的任何系统上被解释执行。多线程Java还有一特点就是内置对多线程的支持。多线程支持完成多个任务。安全当使用支持Java的浏览器时可以放心地运行Java的小应用程序Java Applet不必担心病毒的感染和恶意企图。动态Java程序的基本组成单元是类有些类是自己编写的有些是从类库中引入的而类又是运行时动态装载的这就使得Java可以在分布环境中动态地维护程序即类库。
Microsoft SQL Server 2000的可行性分析
选择以Microsoft SQL Server 2000作为该模块的数据库SQL Server 2000数据库学起来较为简单容易使用因此使用数据库查询语句条件查询语句以及写入语句对数据库进行查询取值并向数据库里写入数据。
在技术难度方面,由于有指导老师的指导和相关的参考文献,特别是网上众多的网友所提供的资料,使得在开发过程中所遇到的困难都能够一一得到解决。 经济可行性
随着科学技术的发展特别是计算机技术的飞跃发展使得计算机在人们的生活使用中越来越普遍。计算机的普遍使用说明人们的生活水平提高了从而也说明了计算机的价格越来越被众多人所接受。然而价格的低廉并不是说产品的质量不好是因为技术的飞跃发展使得产品的成本降低。因此开发POS积分管理系统所需要的成本也是该百货店所能接受的并且通过POS积分管理系统的管理使得客户获得相应的好处从而使百货店获得更高的利益。除此之外它还具有很多优点例如
可以随时获得客户的基本资料以及店铺的基本资料通过这些可以增加客户与百货店之间的相互信任度。保证交易中的安全性。方便百货店对客户积分的管理以及更新以便让客户在符合条件的情况下享受某种特别优惠待遇从而增加客户对百货店的满意度吸引更多的客户。
根据以上分析实现积分点更新生成以及通票回收处理的功能是可行的。 数据库设计 数据流程图 通票回收处理数据流程图
如图1通票回收处理数据流程图 通票回收处理数据流程图说明:
通票回收处理数据流程涉及两个文件通票回收数据文件只是输出文件通票回收储蓄文件既是输出也是输入文件。
通票回收数据文件所存放的数据是每次交易时使用积分卡所存放的交易时间以及其它数据信息。
通票回收储蓄文件所存放的数据是每次通票处理时所存放的最新数据。
所存放的内容和通票回收数据文件一样。 积分点更新生成数据流程图
如图2积分点更新生成数据流程图 积分点更新生成数据流程图说明
积分点更新生成数据流程处理时需要用到7种数据和一个文件从这7个数据表中取出数据将符合条件的数据存放在文件中做成积分更新生成文件即积分更新数据文件。
会员数据包括会员的基本信息数据入会日期会员编码姓名住址联系电话出生年月日会员种类入会店铺编码等等
积分数据包括积分卡的基本信息数据会员编码现在积分点累计积分点输出累计积分点增加累计积分点基本累计积分点购买次数购买累计金额等等
店铺数据包括店铺基本信息数据店铺编码店铺名称优先级编码住址联系电话等等
会员状态数据记录是否曾经办理过积分卡的信息数据会员编码旧会员编码店铺编码旧店铺编码优先级编码等等
优先数据记录优先级信息数据优先级编码优先级名称更新日期等等
奖励积分数据记录会员获奖信息数据处理日期会员编码每月消费金额奖励积分点系统更新日期等等
处理日数据记录所有处理的日期数据营业日期处理日期登陆日期更新日期等等 数据库表结构设计
数据库表结构的设计在每一个开发项目中都是非常重要的一个部分数据库表设计的好坏直接关系到开发过程中代码实现的功能强大与否是否包含齐备客户所需求的功能。因此下面介绍该模块所用到的数据库表的详细设计
表名定义
表1数据库表名一览 序号 表参数名 说明 1 FSPTB_MEMBER 记录会员基本信息 2 FSPTB_POINT 记录积分卡的基本信息 3 FSPTB_TENPO 记录店铺基本信息 4 FSPTB_MEMBER_STATUS 记录会员状态信息 5 FSPTB_DOMINANT 记录优先级别信息 6 FSPTB_POINT_BONUS 记录会员获奖信息 7 FSPTB_COMM_CONT 记录处理的日期信息
数据库表设计
表2会员表 主键 列属性名 中文名称 类型 宽度 是否允许为空 ◎ MEMBER_CODE 会员编码 Char 13 NOT NULL NYUKAI_YMD 入会年月日 Char 8 NULL SHIMEI_KANA_S 日语假名的姓 Char 16 NOT NULL SHIMEI_KANA_N 日语假名的名 Char 16 NOT NULL SHIMEI_KANJI_S 中文姓 Char 32 NOT NULL SHIMEI_KANJI_N 中文名 Char 32 NOT NULL BIRTH_DAY 出生年月日 Char 8 NULL MEMBER_KBN 会员种类 Char 1 NULL FM_KBN 性别 Char 1 NULL NYUKAI_TENPO 入会的店铺编码 Char 6 NULL MUKOU_KBN 起效种类 Char 1 NULL ADD_YMDHMS 注册时间 Char 14 NULL ADD_TANTOU 注册负责人ID Char 6 NULL UPD_YMDHMS 更新时间 Char 14 NULL UPD_TANTOU 更新负责人ID Char 6 NULL
表3会员状态表 主键 列属性名 中文名称 类型 宽度 是否允许为空 ◎ MEMBER_CODE 会员编码 Char 13 NOT NULL OLD_MEMBER_CODE 旧会员编码 Char 13 NULL DOMINANT_CODE 优先级别编码 Char 3 NOT NULL TENPO_CODE 店铺编码 Char 6 NOT NULL OLD_DOMINANT_CODE 旧优先级别编码 Char 3 NOT NULL OLD_TENPO_CODE 旧店铺编码 Char 6 NOT NULL UPD_KBN 更新种类 Char 1 NULL MSTS_AUTO_ID 记录番号 Numeric 15 NULL
表4积分表 主键 列属性名 中文名称 类型 宽度 是否允许为空 ◎ MEMBER_CODE 会员编码 Char 13 NOT NULL OLD_MEMBER_CODE 旧会员编码 Char 13 NULL YUTAI_RANK 优惠等级 Char 2 NULL NOW_POINT 现在积分点 9 8 NULL RUIKEI_POINT 累计积分点 9 8 NULL OUT_RUIKEI_POINT 输出的累计积分点 9 8 NULL ADD_RUIKEI_POINT 增加的累计积分点 9 8 NULL KIHON_RUIKEI_POINT 基本累计积分点 9 8 NULL BONUS_RUIKEI_POINT 奖励累计积分点 9 8 NULL KAIAGE_R 最后交易时间 Char 8 NULL TUKI_KAIAGE_M 每月交易金额 9 10 NULL BEFORE_TUKI_KAIAGE_M 前月交易金额 9 10 NULL KAIAGE_F 交易次数 9 5 NULL KAIAGE_M 交易金额 9 10 NULL MEMBER_WARIBIKI_M 打折累计金额 9 10 NULL KOUNYU_M 购买金额 9 10 NULL MUKOU_KBN 起效种类 Char 1 NULL ADD_YMDHMS 登陆时间 Char 14 NULL UPD_TANTOU 更新负责人ID Char 6 NULL
表5优先级别表 主键 列属性名 中文名称 类型 宽度 是否允许为空 ◎ DOMINANT_CODE 优先级别编码 Char 3 NOT NULL DOMINANT_KANA 日文名称 Char 20 NULL DOMINANT_KANJI 中文名称 Char 30 NULL UPD_YMDHMS 更新时间 Char 14 NULL UPD_TANTOU 更新负责人ID Char 6 NULL
表6店铺表 主键 列属性名 中文名称 类型 宽度 是否允许为空 ◎ TENPO_CODE 店铺编码 Char 6 NOT NULL TENPO_KANA 日语名称 Char 20 NULL TENPO_KANJI 中文名称 Char 30 NULL DOMINANT_CODE 优先级别编码 Char 3 NULL TENPO_ZIP 邮政编码 Char 7 NULL TENPO_ADDR 地址 Char 100 NULL TENCYO_MEI 店长名 Char 20 NULL UPD_YMDHMS 更新时间 Char 14 NULL UPD_TANTOU 更新负责人ID Char 6 NULL
表7积分奖励表 主键 列属性名 中文名称 类型 宽度 是否允许为空 ◎ SHORI_YM 处理月 Char 6 NOT NULL ◎ MEMBER_CODE 会员编码 Char 13 NOT NULL TUKI_KAIAGE_M 每月交易金额 9 10 NULL BONUS_POINT 奖励积分点 9 8 NULL BONUS_KUBN 奖励种类 9 4 NULL SYSTEM_UPD_YMDHMS 系统更新时间 Char 14 NULL
表8处理日表 主键 列属性名 中文名称 类型 宽度 是否允许为空 EIGYO_YMD 营业日期 Char 8 NOT NULL SYORI_YMD 处理日期 Char 8 NOT NULL ADD_YMD 登陆日期 Char 8 NOT NULL ADD_HMS 登陆时间 Char 6 NOT NULL UPD_YMD 更新日期 Char 8 NOT NULL UPD_HMS 更新时间 Char 6 NOT NULL 环境搭建 安装jdk1.5.0_06软件
jdk1.5.0_06软件的安装和一般软件的安装一样没有需要特别注意的地方只需按步骤依次安装即可。安装完成后在所选安装目录下存在jdk1.5.0_06文件。
如图3jdk1.5.0_06文件 安装Eclipse3.2
Eclipse 3.2只要解压就可以使用解压时可以设置或选择项目程序所在目录在这里所编写的程序放在D:\FSP中如图4 Eclipse3.2创建 安装Microsoft SQL Server 2000 Driver for JDBC Service
Microsoft SQL Server 2000 Driver for JDBC Service安装软件在安装过程中没有什么特别的要求即可安装成功。如图5JDBC安装 Microsoft SQL Server 2000安装
开发某百货店POS积分管理系统时共同使用一个服务器因此Microsoft SQL Server 2000的安装是在服务器上进行的这里的模块不涉及数据库Microsoft SQL Server 2000的安装只是使用而已。 设置数据源
为了与该系统的数据库建立连接首先需要配置一个ODBC数据源步骤
打开Windows中的控制面板后双击“管理工具”接着双击“数据源ODBC”图标出现界面
单击界面中“System DSN”选项卡出现对话框此对话框用于设置系统数据源的名称和对应的驱动程序单击“Add”按钮出现对话框选择对话框中“SQL Server”条目单击“完了 ”按钮出现界面在界面中的第一个文件编辑框中键入连接的数据库的名称例如
“ tokyosuper” 接着从服务器下拉框中选择服务器名字例如SK-XUFENG但是如果使用本机的数据库即已安装了相应的SQL Server数据库软件时选择“Local(本地) ”就可以了。出现界面
选择由用户名和密码来连接服务器的单选按钮在Login ID中填写用户名例如“sa”在Password中填写密码出现界面选中“chang the default database to”按钮从服务器下拉框中选择“ tokyosuper”点击下一步接着点击完成最后点击ok就可以了。
如图6数据源 模块功能代码实现过程
在这里负责的2个模块是积分更新生成模块和通票回收处理模块详细实现过程如下 共同类或方法的代码实现建立JDBC-ODBC桥接器如下实现代码 建立JDBC-ODBC桥接器实现代码中s可用sun.jdbc.odbc.JdbcOdbcDriver来替换即可实现JDBC-ODBC桥接器建立的功能。
INI文件的获取
在这里的INI文件是系统中所公用的文件里面存放了所有文件的存放路径信息。此功能实现代码省略。
数据库日志输出实现
在这些模块中需要输出消息日志开始日志和结束日志实现代码如下 日志输出实现代码中str表示数据库插入语句INSERT插入数据库表FSPTB_LOG中的内容。p_Sel,p_Msg,p_AppNM,p_FuncNM, p_JobNM, p_ErrDetail,p_InIFile这些列名分别表示日志种类日志信息程序名函数名工作名错误信息INI文件名。
重新设置内容
在积分更新生成模块中需要对从数据库中取出的内容按照某中条件进行重新设置有三种不同的情况,实现代码如下 重新设置内容代码实现中有参数的构造函数Reset(String s1){…}是对现在积分点和累计积分点的重新设值它的实现功能是如果取出的值为null或者小于0的情况下就将那个值重新设置为“00000000” 方法public String resetKingaku(String s2){…}是对每月购买金额重新设值它的实现功能是如果取出的值为null或者小于0的情况下就将那个值重新设置为“0000000000”方法public String resetBonusKubn(String s3){…}是对奖励种类重新设值如果所取的值不为空则返回所取得值其它情况下都设置为“0001”。其中的两个方法由空构造函数Reset(){}的对象来调用。 在写入文件实现的代码中有三个参数filepath, filename, cotents分别表示文件的路径文件名以及向文件中写入数据的内容。这里需要注意当我们对文件进行操作时一定要记得在每操作完以后要关闭文件以便释放系统资源否则造成不必要的资源浪费。