- 1、本文档共35页,可阅读全部内容。
- 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
- 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
MIS-POS系统系统详细设计.doc
MIS-POS系统V4.0系统详细设计
服务端系统设计
操作系统选型
操作系统:RedHat AS4.0
数据库:Oracle XE(4G数据库、1CPU、2G内存)
系统模块划分
系统模块划分及相互关系如下图所示:
系统主要包括接入管理进程(umsCliSrvX--X为编号,根据不同接口而定,4.0系统标准接口为0)、业务处理进程(umsMainSrv)、输出处理进程(umsExtSrvX—X为编号,代表不同的外部转接系统,银联接口为0)以及加密进程(umsPinSrv)。
输入管理进程负责接收来自收银终端的各类请求,是系统的业务发起端。来自收银端的交易分为两类,一类是业务类交易,输入管理进程负责解析报文,并将其转换为系统内部接口,将其转至业务处理进程进行具体的处理,并等待应答(同步通讯);另一类是管理类交易,由输入管理进程直接处理(如自动查错交易等)。
业务处理进程负责接受来自输入管理进程的任务,并根据不同的业务进行处理,包括具体的业务逻辑处理以及数据库操作等;当业务逻辑需要将交易发往银联或其它第三方外部机构进行处理时,该进程将通过内部接口将任务转至输出处理进程,并等待输出处理进程的应答(同步通讯)。
输出处理进程负责将内部通讯接口转换为外部标准接口,并按照外部系统的标准与协议规范将交易发往外部系统,完成相应的业务功能。
加密进程负责操作具体的加密设备,为上层应用逻辑提供必须的加密指令集,与外部通过消息队列或其它形式通讯(视加密机的类型而定)。
模块详细设计
输入管理进程设计
输入管理进程的处理流程如下图所示:
对于业务类交易,本进程仅负责接口转换及转发,无具体业务逻辑;对于管理类交易,由本进程直接处理,主要包括以下管理类交易:
自动查错交易:
前台系统提供自我诊断功能,其中一部分是检测服务端系统的状态及与外部系统的网络状态等,自动查错交易即用来诊断以上问题,具体业务流程如下图所示:
Step1:检测umsCliSrv。如建立连接,直接返回A0即可。
Step2:检测umsMainSrv。向该进程发测试交易,返回测试结果。
Step3:检测umsPinSrv及密钥设置情况。调用加密库,利用指定的WorkKey及密钥索引做加密运算,
… …
业务处理进程设计
输出处理进程设计
模块间交互控制
输出处理进程与外部系统一般采用TCP通讯,超时时间50秒。
业务处理进程与输出处理进程之间采用本地Socket方式通讯,超时时间53秒。
输入管理进程与业务处理进程之间采用本地Socket方式通讯,超时时间56秒。
前台系统与输入管理进程之间采用TCP通讯,超时时间60秒。
任何进程产生超时都将向上一级系统(进程)返回内部返回码E00
只有前台系统与业务处理进程能够发起冲正。业务处理进程在遇到接收应答超时、收到内部返回码E00时,将直接发起冲正,并返回内部返回码E00;当前台系统遇到接收应答超时或交易成功但后续操作失败(如打印签购单失败)时,将发起冲正交易,前台系统收到E00不需再发起冲正。
接口定义
前台接口定义
收银端接口报文由【报文长度+报文头+报文体+MAC】的结构构成。
【报文长度】为两个字节的网络字节序整数,具体定义如下:
#define u_int16 unsigned short
u_int16 iPackLen;
【报文头】采用结构体定义的定长格式,报文头为每个交易所必须的公共部分,具体定义如下:
typedef struct tagTUMS_CLIENT_PKGHEAD
{
char saVersion[2 + 1]; //主版本号1byte+副版本号1byte,如10
char saTransCode[4 + 1];//交易代码(功能号)
char saCrypt[2 + 1]; //加密方式1byte,0-不加密,1-DES,2-3DES,其它保留
char saOperNo[20 + 1];//收银员编号
char saMchtCode[20 + 1];//商户编号(系统内部编号,可以与银联的商户代码一致,也可自行分配,通过商户编号与收银台号对应一个机台,并在服务器端根据不同的应用映射真实的商户代码与终端号,如银联应用、储值卡应用等)
char saCounterNo[10 + 1]; //收银台号(前台统一设置收银台号,由后台自动映射终端编号)
char saSerial[20 + 1];//标识该笔交易的序列号,应答报文应原样返回,格式” YYYYMMDDHHMISS”,序列号+商户编号+终端号唯一标识一笔交易,后台应做校验,目前暂定14位,后补‘\0’
char saRecNum[4 + 1];//记录条数(报文体中含有多条信息时适用,一般报文填‘0001’)
char saNex
您可能关注的文档
- 百变发型任由你来装扮.doc
- 基于MATLAB的电容层析成像系统一种剖分方法的实现.doc
- 第章 与化妆品相关的皮肤科学.doc
- 企业资源计划管理技术文档(ERP管理技术文档).doc
- 毕业设计-基于三菱PLC的Z摇臂钻床电控系统设计.doc
- 2017年考前祝福语-2017年考前祝福语-2017年考前祝福语-.doc
- 鱼游到了纸上教学设计篇.doc
- 2017初中生寒假作业答案.doc
- 高校实验室安全考试题库要点.docx
- 【优秀WORD硕士论文】郭店《語叢四》集釋.doc
- 第18讲 第17课 西晋的短暂统一和北方各族的内迁.docx
- 第15讲 第14课 沟通中外文明的“丝绸之路”.docx
- 第13课时 中东 欧洲西部.doc
- 第17讲 第16 课三国鼎立.docx
- 第17讲 第16课 三国鼎立 带解析.docx
- 2024_2025年新教材高中历史课时检测9近代西方的法律与教化含解析新人教版选择性必修1.doc
- 2024_2025学年高二数学下学期期末备考试卷文含解析.docx
- 山西版2024高考政治一轮复习第二单元生产劳动与经营第5课时企业与劳动者教案.docx
- 第16讲 第15课 两汉的科技和文化 带解析.docx
- 第13课 宋元时期的科技与中外交通.docx
文档评论(0)