Giter Site home page Giter Site logo

web-project's Introduction

合同签署功能后端实现

1.合同信息的增加

​ 数据库中增加一个合同表:contract,每一条合同字段主键为合同的id,外键为用户的id。其余信息包括:甲方与乙方的姓名,合同名称,合同有效期,合同状态(即除了URL外的基本信息)。具体参考下表:

字段名 类型 解释
contract_id varchar(20) 合同的ID,主码
唯一定义一个合同
user_id varcahr(20) 用户的id,参考user表
合同拥有者id
party_A varchar(30) 甲方的姓名
party_B varchar(30) 乙方的姓名
contract_name varchar(255) 合同名
URL varchar(255) URL
valid_period datetime 合同有效的截止日期
has_signed int(1) 枚举类型,表示是否签署:
1表示已经签署,0表示没有签署

合同部分完整模式图如下:

image-20220606090546395

2.三个接口

2.1 获得合同综述信息 /getallcontracts

功能描述:用户登录后,点击合同,返回与这个用户相关的所有的合同的概要信息。

接口信息:

  • url地址:服务器IP:端口/getallcontracts
  • 请求方式:get
  • 参数:user_id
  • 接口返回格式:json,具体格式如下:
{
    "contracts_info": [
        {
            "party_B_name": "林海音",
            "valid_period": "2022-07-14",
            "contract_id": "1",
            "has_sign": 0,
            "contract_name": "IPAD-2021销售合同",
            "party_A_name": "孙蕴琦"
        },
        {
            "party_B_name": "张欣",
            "valid_period": "2022-09-22",
            "contract_id": "2",
            "has_sign": 1,
            "contract_name": "西安电子科技大学家属区院11栋A211租赁合同",
            "party_A_name": "孙蕴琦"
        }
    ],
    "code": 0
}

其中code为0时表示操作成功,1时表示失败。后续接口相同,不再赘述。

2.2 获得某合同具体信息/getdetailcontracts

功能描述:用户登录后,点击合同,呈现出合同列表后展示点击具体的合同进行签署或者重新签署。

接口信息:

  • url地址:服务器IP:端口/getdetailcontract
  • 请求方式:get
  • 参数:contract_id
  • 接口返回格式:json,具体格式如下:
{
    "code": 0,
    "detail_info": {
        "party_B_name": "林海音",
        "valid_period": "2022-07-14",
        "contract_id": "1",
        "has_sign": 0,
        "contract_name": "IPAD-2021销售合同",
        "party_A_name": "孙蕴琦",
        "URL": "https://cdn.jsdelivr.net/gh/xinwuyun/facedec-SHOGOKI@main/src/assets/contracts/%E5%90%88%E5%90%8C1.pdf"
    }
}

2.3 修改合同签署状态/sign

功能描述:用户打开签署界面后签署完毕,需要通知后端修改合同状态==并上传新的URL==——未签署改为已签署

接口信息:

  • url地址:服务器IP:端口/sign
  • 请求方式:post
  • 参数:contract_idURL

请求格式如下:

{
    "contract_id" : "1",
    "URL" : <新的URL>
}

服务器根据contract_id修改合同的签署状态为已签署(修改has_sign为1),==并修改合同表中的URL字段==。返回为只含有code的JSON。

2.4 上传合同模板/uploadtemplate

接口信息:

  • url地址:服务器IP:端口/uploadtemplate
  • 请求方式:post
  • 参数:typeURL

这里需要给合同进行类别的编号:

  • 赠与合同:1 (int)
  • 借款合同:2 (int)
  • 租赁合同:3 (int)
  • 销售合同:4 (int)

全为int类型。

发送给后端的post请求格式如下:

{
    "type" : "3",
    "URL": "https://cdn.jsdelivr.net/gh/xinwuyun/facedecSHOGOKI@main/src/assets/contracts/%E5%90%88%E5%90%8C1.pdf",
    "template_name" : "一般销售合同"
}

web-project's People

Contributors

caoanjia avatar holmes233666 avatar liuguangbook avatar tianguang2525 avatar urnotwhj avatar wang-zerui avatar yangyunrui avatar zanejins avatar

Stargazers

 avatar

Watchers

 avatar  avatar

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.