zoukankan      html  css  js  c++  java
  • 文件传输系统设计文档

    文件传输系统方案

    一:界面框架

           采用单文档多视图结构,即目前RMS等客户端界面框架。提供以下视图:

    1. 上传中

    该视图提供元素:开始,暂停,删除

    1. 下载中
    2. 该视图提供元素:开始,暂停,删除
    3. 已上传

    该视图提供元素:清空

    1. 已下载

    该视图提供元素:清空

     

    二:文件传输协议

           为了增加传输可靠性,支持断点续传等功能,将采用客户端与服务器之间逐包确认的方式,客户端记录下当前各上传中或下载中文件的读写位置,便于再次发送或请求。

    客户端和服务器之间交互的数据格式定义:

    message HpSvrPathBean{

       optional bytes     ORGID =  1;

       optional bytes     SMCLASS =    2;

       optional bytes     BGCLASS  = 3;

       optional bytes     BIZID = 4;

    }

     

    message HpSvrListBean{

       optional int32 FILESIZE            =1;    //文件大小

        optional bytes CRDID                =2;    //业务流水

        optional bytes FILENAME             =3;    //文件名称

        optional bytes CREATEUSER           =4;    //文件上传人

        optional bytes CREATEDATE           =5;    //文件上传时间

    }

     

    message HpFileBean{

     

       optional bytes           FILEID      = 1;        // 文件ID,唯一标示一个文件,客户端生成。

       optional HpSvrPathBean      SVRPATH         = 2;            // 目的文件夹目录

       optional bytes           LOCALPATH   = 3;        // 本地文件目录

       optional uint64          FILESIZE    = 4;        // 文件大小

       optional uint64          RDPTR       = 5 [default = 0];       // 文件的读开始指针位置

       optional uint64          WTPTR       = 6 [default = 0];       // 文件写开始指针位置

       optional uint64          DONESIZE    = 7;        // 已完成大小

       optional uint32          DOINGSIZE   = 8[default = 1024];        // 本次操作大小

       optional bytes           BEGINTIME   = 9;        // 开始时间

       optional bytes           ENDTIME         = 10;       // 结束时间

       optional uint32          STATE       = 11[default = 0];       // 当前状态 0 操作中,1 完成,-1 暂停

       optional bytes           USERID      = 12;       // 操作用户账户

       optional bytes           CLIENTIP    = 13;       // 客户端IP

       repeated int32          FILEDATA   = 14;       // 文件内容

       optional uint32          NEEDREFRESH     = 15[default = 0];       // 上传完成后是否需要刷新已上传列表 1需要,0不需要

       optional uint32          NEEDTIP         = 16[default = 1];       // 设置是否需要弹气泡提示 1需要,0 不需要

    }

     

    // 业务系统附件下载消息定义

    message HpDownFileMsg {

      //请求体定义

       message Request {

          repeated HpFileBean   DOWNFILE = 1;

     

       }

      //响应体定义

       message Response {

          optional bytes     FILEID      = 1;        // 文件ID,唯一标示一个文件,客户端生成。

          optional uint64    FILESIZE    = 2;

          optional uint32    PROCSTATE   = 3[default = 0];        // 处理状态 0 下载中 ,1 已完成

          optional uint64    WTPTR       = 4;        // 客户端开始写指针的位置

          optional bytes    FILEDATA   = 5;        // 文件内容

     

      }

       optional Request   REQUEST = 1;

      optional Response RESPONSE = 2;

    }

     

    // 业务系统附件上传消息定义

    message HpUpFileMsg {

      //请求体定义

       message Request {

          repeated HpFileBean   UPFILE      = 1;        // 文件信息

       }

      //响应体定义

       message Response {

     

          optional bytes     FILEID      = 1;        // 文件ID,唯一标示一个文件,客户端生成。

          optional uint64    RDPTR       = 2;        // 服务器返回的客户端代上传文件的读指针偏移量

          optional uint32    PROCSTATE   = 3;        // 处理状态 1 成功,0 上传中

          optional uint32    NEEDREFRESH     = 4;        // 客户端收到后是否需要刷新服务器文件列表

      }

       optional Request   REQUEST = 1;

      optional Response RESPONSE = 2;

    }

     

    // 业务系统附件列表查看消息定义

    message HpFileListMsg {

      //请求体定义

       message Request {

          optional HpSvrPathBean   SVRPATH = 1; // 服务器路径信息

          optional uint32    FUNCID   = 2;  // 功能ID

          optional uint32    ISAPPLY     = 3;  // 是否为受理

          optional uint32    ISOTHER     = 4;  // 是否为其他环节

     

      }

      //响应体定义

       message Response {

          repeated HpSvrListBean FILELIST = 1;    //文件大小

      }

       optional Request   REQUEST = 1;

      optional Response RESPONSE = 2;

    }

    // 业务系统附件列表查看消息定义

    message HpFileDelMsg {

      //请求体定义

       message Request {

          optional HpSvrPathBean      SVRPATH     = 1;     // 目的文件夹目录

          repeated bytes     FILENAMES       = 2;

          optional uint32    FUNCID          = 3;     // 业务流水

          optional uint32    ISCORP          = 4;     //

     

      }

      //响应体定义

       message Response {

          optional int32 RESULT          =1;    // 1:成功,0:失败

      }

       optional Request   REQUEST = 1;

      optional Response RESPONSE = 2;

    }

    // 附件同步

    message  SyncAttachMsg{

        message Request{

            optional bytes      ORGID          = 1; // 管理公司ID

            optional bytes      BIGID         = 2; // 附件大类ID

            optional bytes      SMLID          = 3; // 附件小类ID

            optional bytes      CUSTID        = 4; // 客户ID

            optional bytes      CRDID         = 5; // 受理流水号

        }

     

        message Response{

            optional uint32     CODE        = 1; // 响应消息bean

        }

     

        optional Request   REQUEST     = 1;

        optional Response  RESPONSE    = 2;

    }

    三:本地文件数据格式定义

           已上传,已下载文件列表需保存为本地文件,格式为XML格式,定义如下:

    <?xml version="1.0" encoding="UTF-8" ?>

    <HPFILE xmlns="http://www.hpce.cn/HPFILE/1.0">

        <FileList>

            <File>

                <FileID>20151225151255782</FileID>

                <LocalPath>D:projectͼƬ1.jpg</LocalPath>

                <SvrPath>30/35010001/3501/715/</SvrPath>

                <WtPtr>31220</WtPtr>

                <RdPtr>31220</RdPtr>

                <FileSize>31220</FileSize>

                <DoneSize>0</DoneSize>

                <DoingSize>1024</DoingSize>

                <BeginTime>2015-12-25 15:12:55</BeginTime>

                <EndTime>2015-12-25 15:12:55</EndTime>

                <State>1</State>

            </File>

         

        </FileList>

    </HPFILE>

    四:系统设计图

    4.1 系统逻辑架构图

     

    4.2传输客户端类图

     

    4.3 上传业务流程图

     

    4.4 下载业务流程图

     

  • 相关阅读:
    课堂作业04 2017.10.27
    课程作业 03 动手动脑 2017.10.20
    课程作业 03 2017.10.20
    HDU 3974 Assign the task
    POJ 2155 Matrix
    POJ 2481 Cows
    HDU 3038 How Many Answers Are Wrong
    CS Academy Array Removal
    POJ_1330 Nearest Common Ancestors LCA
    CF Round 427 D. Palindromic characteristics
  • 原文地址:https://www.cnblogs.com/spplus/p/5077745.html
Copyright © 2011-2022 走看看