Hotline: 0975.023.626
Trang chủ / Hướng Dẫn / Hướng dẫn sử dụng hệ thống quản lý hoá điện tử Viettel / Tài liệu tích hợp api và webservice hợp đồng điện tử scontract

Tài liệu tích hợp api và webservice hợp đồng điện tử scontract


2

Thông số kĩ thuật

MỤC LỤC

  1. BẢNG GHI NHẬN THAY ĐỔI 2
  2. Thông tin chung. 2
  3. Danh sách api 4

3.1. Đăng nhập. 4

3.2. Tạo khách hàng. 5

3.3.       Lấy danh sách khách hàng của doanh nghiệp. 10

3.4. Lấy danh sách loại hợp đồng. 15

3.5. Lấy danh sách hợp đồng cha đã ký. 16

3.6. Tạo hợp đồng từ file chỉ có 1 khách hàng cá nhân ký. 17

3.7. API xem hợp đồng. 21

3.10. Lấy danh sách hợp đồng tôi lập. 25

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

1.      BẢNG GHI NHẬN THAY ĐỔI

 

*A – Tạo mới, M – Sửa đổi, D – Xóa bỏ

Ngày

thay đổi

Vị trí

thay đổi

A*

M, D

Nguồn gốc

Phiên

bản cũ

Mô tả thay đổi

Phiên

bản mới

02/03/2020

Toàn bộ

A

Tạo mới tài liệu

 

 

v2.0

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

2.      Thông tin chung

Response của server trả về ở dạng base64 , phải thực hiện decode base64 để chuyển thành dạng json

Hướng dẫn decode response

Bước 1. Lấy token hiện tại của tài khoản đăng nhập(nếu chưa đăng nhập bỏ qua bước này). Ví dụ token hiện tại: eyJhbGciOiJIUzUxMiJ9.eyJzdWIiOiIyMTA1MjAyMDM5LTEyMCIsInNhbHQiOiJAK15RSDFLX3J5IiwiZXhwIjoxNjIyNzM5NjAwLCJpYXQiOjE2MjE5MTAwODMsInVzZXJuYW1lIjoiMjEwNTIwMjAzOS0xMjAifQ.V2y0lPToUmiFNLTKQCYu2za88GqqqscQ6z1QBVsUwmk4U_BkbH2ZXdvKai_QFyfNyTK6lulZhza4HjkXkUJ-_w

Bước 2. Encode base64 token ở trên được chuỗi base64 mới.

Ví dụ với token trên: ZXlKaGJHY2lPaUpJVXpVeE1pSjkuZXlKemRXSWlPaUl5TVRBMU1qQXlNRE01TFRFeU1DSXNJbk5oYkhRaU9pSkFLMTVSU0RGTFgzSjVJaXdpWlhod0lqb3hOakl5TnpNNU5qQXdMQ0pwWVhRaU9qRTJNakU1TVRBd09ETXNJblZ6WlhKdVlXMWxJam9pTWpFd05USXdNakF6T1MweE1qQWlmUS5WMnkwbFBUb1VtaUZOTFRLUUNZdTJ6YTg4R3FxcXNjUTZ6MVFCVnNVd21rNFVfQmtiSDJaWGR2S2FpX1FGeWZOeVRLNmx1bFpoemE0SGprWGtVSi1fdw==

Bước 3. Giả sử response nhận được ở server như sau:

ZXlKaGJHY2lPaUpJVXpVeE1pSjkuZXlKemRXSWlPaUl5TVRBMU1qQXlNRE01TFRFeU1DSXNJbk5oYkhRaU9pSkFLMTVSU0RGTFgzSjVJaXdpWlhod0lqb3hOakl5TnpNNU5qQXdMQ0pwWVhRaU9qRTJNakU1TVRBd09ETXNJblZ6WlhKdVlXMWxJam9pTWpFd05USXdNakF6T1MweE1qQWlmUS5WMnkwbFBUb1VtaUZOTFRLUUNZdTJ6YTg4R3FxcXNjUTZ6MVFCVnNVd21rNFVfQmtiSDJaWGR2S2FpX1FGeWZOeVRLNmx1bFpoemE0SGprWGtVSi1fdw==eyJjb2RlIjoiMjAwIiwibWVzc2FnZSI6Ik9LIiwiZGF0YSI6IntcImlzUGFyZW50XCI6dHJ1ZSxcInVzZXJUeXBlXCI6MSxcInBlcm1pc3Npb25zXCI6WzAsMSwyLDMsNCw1LDZdfSIsInN1Y2Nlc3MiOnRydWV9

Phần bôi đỏ chính là token đã được encode base64(dấu hiệu nhận biết là đoạn ==eyj), Xoá phần bôi đỏ đi, phần còn lại decode base64 ta nhận được dữ liệu json mà server trả về

Ví dụ với response ở trên, response nhận được sau khi decode:

{

   "code":"200",

   "message":"OK",

   "data":"{\"isParent\":true,\"userType\":1,\"permissions\":[0,1,2,3,4,5,6]}",

   "success":true

}

 

Trong đó phải chú ý đến các trường data, success:

data:là dữ liệu nhận được từ server ở dạng string, cần parse về json để sử dụng

success: thể hiện có lỗi xảy ra hay không, success=true thành công, success=true lỗi.

Nếu response nhận được từ server KHÔNG chứa token thì có thể decode luôn để lấy data

 

3.      Danh sách api

3.1. Đăng nhập

Endpint: /auth/login

Method: POST

Request

Tên trường

Kiểu dữ liệu

IN

Mô tả

password

String

body

Mật khẩu

username

String

body

Username

captcha

String

body

Captcha: Khi đăng nhập sai quá 5 lần, hệ thống sẽ yêu cầu xác thực reCAPTCHA và bắt buộc phải gửi  captcha token lên server mới có thể đăng nhập được. Nếu chưa nhập sai mật khẩu 5 lần thì không phải gửi captcha

 

Response

Name

In

Type

Description

enterpriseId

enterpriseId

String

ID doanh nghiệp

fullName

 

fillName

String

Tên doang nghiệp

isParent

isParent

bool

Có phải doanh nghiệp cha hay không

permissions

permissions

Array<int>

Danh sách quyền

tenantId

tenantId

string

tenantId

token

 

string

Token để sử dụng cho những request sau

userId

 

string

User id

userType

 

number

Loại user

username

 

string

username

 

 

 

 Example

{

   "token":"eyJhbGciOiJIUzUxMiJ9.eyJzdWIiOiIxMjM0NTY3ODkwIiwic2FsdCI6InZnVmhKODFhY0EiLCJleHAiOjE2MjI3Mzk2MDAsImlhdCI6MTYyMTkxMTE3NiwidXNlcm5hbWUiOiIxMjM0NTY3ODkwIn0.bUpDvQZF8DZEsjvF86VbJ1KwBsDBY916mPwmj7HHvmYMBYsLnsqkcvb0FX50_VzBNTtZkZ95gMMP8HRQdR_Cyw",

   "tenantId":"NTRmJSMkc0EmKjEu003d",

   "userId":"NWE0ZmQkaHNBKjQwNAu003du003d",

   "enterpriseId":"NTRmc0EmKjMzNgu003du003d",

   "username":"1234567890",

   "fullName":"khách hàng test xem có gửi tài khoản không",

   "isParent":false,

   "userType":5,

   "permissions":[

      0,

      1,

      6

   ]

}

3.2. Tạo khách hàng

Tạo khách hàng gồm 2 bước

Bước 1. Upload danh sách tệp đính kèm lên và lấy lại đường dẫn

Bước 2. Đưa thông tin khác hàng lên

  1. API upload file đính kèm

Endpoint: file/upload/customer/

Method: POST

Request

Name

In

Type

Description

file

Formdata

binary

File upload qua form data. Có thể gửi nhiều file cùng 1 lúc, chỉ chấp nhập file pdf hoặc file ảnh

Authorization

header

String

Bearer <token>

Code ví dụ gửi file formdata javascript

var myHeaders = new Headers();

myHeaders.append("Authorization", "Bearer eyJhbGciOiJIUzUxMiJ9.eyJzdWIiOiIyMTA1MjAyMDM5LTEyMCIsInNhbHQiOiIqSCkzKkMxOWQ9IiwiZXhwIjoxNjIyNzM5NjAwLCJpYXQiOjE2MjE5MTIxOTYsInVzZXJuYW1lIjoiMjEwNTIwMjAzOS0xMjAifQ.9sDjRAwGvLJgNP4L8CbXzYDvTIhZuzMQA_h85_F5jukwOmR_63sTMCyRDdG1JdEQev4iS57SQemn7n70cjqnvQ");

 

var formdata = new FormData();

formdata.append("file", fileInput.files[0], "sample.pdf");

formdata.append("file", fileInput.files[0], "ky_lo.pdf");

 

var requestOptions = {

  method: 'POST',

  headers: myHeaders,

  body: formdata,

  redirect: 'follow'

};

 

fetch("http://10.60.156.247:8441/scontract-web-api-private/api/file/upload/customer/", requestOptions)

  .then(response => response.text())

  .then(result => console.log(result))

  .catch(error => console.log('error', error));

 

Response

Response

Description

[

   {

      "path":"3A5E01F061A4824426571281C957FFD46FF43846180C7752C37FBE2C01932DD7",

      "fileName":"sample.pdf",

      "fileSize":3028

   },

   {

      "path":"EBFA517A78DBDEE357292CC454F13E0099DDCDC729303E23D28BE8AE214C7C62",

      "fileName":"ky_lo.pdf",

      "fileSize":236374

   }

]

Trả về danh sách tương ứng với với file upload lên

 

path: đường dẫn tương đối trên server, dùng đường dẫn này cho bước tiếp theo

fileName: Tên file

fileSize:  dung lượng file

 

  1. API lưu thông tin hợp đồng

Endpoint: /customer/add

Method: POST

Request

Name

In

required

Type

Description

accountNumber

Body

No

String

Số tài khoản ngân hàng

address

Body

Yes

String

Địa chỉ

attachments

Body

No

array

Danh sách file đính kèm là danh sách lấy được

từ api upload file

bankBranch

Body

No

String

Tên chi nhánh ngân hàng

bankName

Body

No

Number

Tên ngân hàng

birthday

Body

No

Number

Ngày sinh

certificateId

Body

Yes

Number

Loại giấy tờ:

30000: CMTND

30001: Hộ chiếu

30002: Giấy tờ khác

certificateNo

Body

Yes

Number

Số giấy tờ

cityId

Body

Yes

Number

Id thành phố

customerType

Body

Yes

Number

Loại khách hàng:

10000 là khách hàng cá nhân

districtId

Body

Yes

String

Huyện id

email

Body

Yes

String

email

enterpriseId

Body

Yes

String

Id doanh nghiệp nhận được khi đăng nhập

fax

Body

No

String

fax

issuedAt

Body

Yes

String

Nơi cấp giấy tờ

issuedDate

Body

Yes

String

Ngày cấp giấy tờ

name

Body

Yes

String

Tên khách hàng

phone

Body

Yes

String

Số điện thoại khách hàng

representativeCertificateId

Body

 

Number

30000

 

sex

Body

No

Bool

Giới tính

True: nam

False: nữ

status

Body

 

Bool

true

wardId

Body

No

String

Xã id

 

Example

{

   "enterpriseId":"NTRmc0EmKjI5NQ==",

   "customerType":10000,

   "name":"tên kh",

   "status": true,

   "certificateId":30000,

   "certificateNo":"32323232",

   "issuedDate":"2021-05-24T17:00:00.000Z",

   "issuedAt":"543353",

   "representativeCertificateId":30000,

   "birthday":"2021-05-24T17:00:00.000Z",

   "sex":true,

   "accountNumber":"543534534",

   "bankName":"ngân hang abc",

   "bankBranch":"chi nhánh ngân hang",

   "phone":"0978610265",

   "fax":"4335545",

   "email":"muoinguyen01@viettel.com.vn",

   "address":"địa chỉ 1",

   "cityId":"A076",

   "wardId":"A076002001",

   "districtId":"A076002",

   "attachments":[

   {

      "path":"3A5E01F061A4824426571281C957FFD46FF43846180C7752C37FBE2C01932DD7",

      "fileName":"sample.pdf",

      "fileSize":3028

   },

   {

      "path":"EBFA517A78DBDEE357292CC454F13E0099DDCDC729303E23D28BE8AE214C7C62",

      "fileName":"ky_lo.pdf",

      "fileSize":236374

   }

]}

 

Response Parameters

Name

In

Type

Description

 

body

String

Mã khách hàng

 

 

Example

NWQ4NGYlZGhzQSYqMjg3

3.3.       Lấy danh sách khách hàng của doanh nghiệp

Endpoint:   /customer/filter

Method: POST

Request

Name

In

Type

Description

enterpriseId

Body

String

Id doanh nghiệp hiện tại

enterpriseTypeId

Body

Array<String>

Loại khách hàng:

Cá nhân: ["10000"]

Công ty tư nhân: ["10001”]

Cơ quan chính quyền: ["10002”]

Cơ quan chính phủ: [“10003”]

Doanh nghiệp nhà nước: [“10004”]

keyword

Body

String

Tìm theo email, điện thoại, tên khách hàng

page

Body

Number

Số trang: dùng để phân trang

pageSize

Body

Number

Số lượng bản ghi trong 1 trang: dùng để phân trang

taxCodeOrCertificateNo

Body

String

Tìm theo mã số thuế , CMTND, số giấy tờ

status

Body

Array<Int>

Để mặc định = [0, 1]

Authorization

header

String

Bearer <token>

Example

{

   "tenantId":"NTRmJSMkc0EmKjE=",

   "page":0,

   "pageSize":10,

   "enterpriseId":"NTRmc0EmKjI5NQ==",

   "taxCodeOrCertificateNo":"taxCodeOrCertificateNo",

   "keyword":"keyword",

   "status":[0, 1],

   "enterpriseTypeId":["10000"]

}

Response

Name

In

Type

Description

currentPage

body

Number

Trả về danh sách tương ứng với với file upload lên

 

path: đường dẫn tương đối trên server, dùng đường dẫn này cho bước tiếp theo

fileName: Tên file

fileSize:  dung lượng file

totalRow

body

Number

 

pageSize

body

Number

 

dataRow

 

[

{

         "id":String,

         "customerId”: String,

         "enterpriseId":String,

         "customerType":Number,

         "name":String,

         "status":Bool,

         "createdBy":String,

         "certificateId":Number,

         "certificateNo":String,

         "issuedDate": Date,

         "issuedAt":String,

         "representativeCertificateId":30000,

         "sex":Bool,

         "phone":String,

         "email": String,

         "address":String,

         "wardId":String,

         "cityId":String,

         "districtId":String,

         "isDeleted":Bool,

         "version":0,

         "isSkipVersion":false,

         "hasPermission":true,

         "attachments":[

         ]

      }

]

Id: Id bản ghi

customerId: id khách hàng

enterpriseId: id doanh nghiệp của khách hàng

customerType: Loại khách hàng

name: Tên khách hàng

status:

createdBy: Id của user tạo khách hàng

certificateId:Loại giấy tờ

certificateNo: Số giấy tờ

issuedDate: Ngày cấp giấy tờ

issuedAt: Nơi cấp giấy tờ

sex: giới tính

phone: Số điện thoại

email

address: Địa chỉ chi tiết

wardId: id xã

cityId: id tỉnh

districtId: id huyện

isDeleted: khách hàng đã bị xoá chưa

 

 

Example

{

   "currentPage":0,

   "pageSize":10,

   "totalRow":2,

   "dataRow":[

      {

         "id":"NWQ4NGYlZGhzQSYqMjg3",

         "customerId":"NTRmc0EmKjQ4Mgu003du003d",

         "enterpriseId":"NTRmc0EmKjI5NQu003du003d",

         "customerType":10000,

         "name":"fdfdfdfdfdfd",

         "status":true,

         "createdBy":"NWE0ZmQkaHNBKjM1Mwu003du003d",

         "certificateId":30000,

         "certificateNo":"dfdfđ",

         "issuedDate":"May 25, 2021 12:00:00 AM",

         "issuedAt":"fdfd",

         "representativeCertificateId":30000,

         "sex":true,

         "phone":"0978610265",

         "email":"muoinguyen01@viettel.com.vn",

         "address":"hfhfghgf",

         "wardId":"A076003002",

         "cityId":"A076",

         "districtId":"A076003",

         "isDeleted":false,

         "version":0,

         "isSkipVersion":false,

         "hasPermission":true,

         "attachments":[

           

         ]

      },

      {

         "id":"NWQ4NGYlZGhzQSYqMjg2",

         "customerId":"NTRmc0EmKjQ4MQu003du003d",

         "enterpriseId":"NTRmc0EmKjI5NQu003du003d",

         "customerType":10000,

         "name":"tên kh",

         "status":true,

         "createdBy":"NWE0ZmQkaHNBKjM1Mwu003du003d",

         "certificateId":30002,

         "certificateNo":"32323232",

         "issuedDate":"May 25, 2021 12:00:00 AM",

         "issuedAt":"543353",

         "representativeCertificateId":30000,

         "birthday":"May 25, 2021 12:00:00 AM",

         "sex":false,

         "accountNumber":"543534534",

         "bankName":"ngân hang abc",

         "bankBranch":"chi nhánh ngân hang",

         "phone":"0978610265",

         "fax":"4335545",

         "email":"muoinguyen01@viettel.com.vn",

         "address":"chân sai vặt",

         "wardId":"A076002001",

         "cityId":"A076",

         "districtId":"A076002",

         "isDeleted":false,

         "version":4,

         "isSkipVersion":false,

         "hasPermission":true,

         "attachments":[

            {

               "id":"NWQ4NGYlZGhzQSYqMTE0",

               "path":"20210525/243027BD0F920DD5497CB0CBCC652959C76761DB3810B44E7E717D7976ECD972.pdf",

               "fileName":"PL01_Checklist_Kiemsoat_scontract.pdf",

               "isDeleted":false,

               "fileSize":183294

            },

            {

               "id":"NWQ4NGYlZGhzQSYqMTE1",

               "path":"20210525/79082B3A3991EC8E5992DC66152D09F6123454A17EBEDE8AEB70EB410F4B38DF.pdf",

               "fileName":"BM01_PYC_Scontract_3710293_NFS-signed.pdf",

               "isDeleted":false,

               "fileSize":284164

            }

         ]

      }

   ]

}

 

3.4. Lấy danh sách loại hợp đồng

Endpoint: common/enterprise/service-type/<enterpriseId>

Method: GET

Request

Name

In

Type

Description

enterpriseId

Query

string

Id của doanh nghiệp muốn lấy danh sách loại hợp đồng

Authorization

header

String

Bearer <token>

Example

common/enterprise/service-type/ NTRmc0EmKjI5NQ==

Response

Name

Description

[

   {

      "id":242,

      "name":"điện",

      "nameAlias":"dien"

   },

   {

      "id":245,

      "name":"hợp đồng có mẫu sử dụng",

      "nameAlias":"hop dong co mau su dung"

   },

   {

      "id":243,

      "name":"Hợp đồng điện",

      "nameAlias":"hop dong dien"

   },

]

Trả về danh sách loại hợp đồng

id: id của serviceType

name: tên serviceType

nameAlias

 

3.5. Lấy danh sách hợp đồng cha đã ký

Endpoint: /contract/parent-by-name?filter=<keyword>

Method: GET

Request

Name

In

Type

Description

filter

Query

string

Keyword truyền vào để tìm kiếm hợp đồng cha

Authorization

header

String

Bearer <token>

Example

/contract/parent-by-name?filter=hopdongcha

Response

Response

Description

[

   {

      "id":"NTA0ZHMkZCNzQSYqJioxMDQ1MQu003du003d",

      "name":"đổi loại hđ 3",

      "code":"doiloaihd3",

      "serviceType":229,

      "filePath":"20210129/EEE974EED7423539D657BD2B2DC0DA3B8135CEB9451E45AD2498CB154EBA02CD.pdf"

   }

]

Trả về danh sách hợp đồng

id: id của hợp đồng

name: tên hợp đồng

code: Mã hợp đồng

serviceType: ServiceType id

filePath: đường dẫn file hợp đồng chính

 

3.6. Tạo hợp đồng từ file chỉ có 1 khách hàng cá nhân ký

Các bước tạo hợp đồng từ file

Bước 1: upload file hợp đồng lên server, nhận lại đường dẫn

Bước 2: upload file đính kèm hợp đồng(nếu có), nhận lại đường dẫn

Bước 3: Lưu thông tin chi tiết hợp đồng

 

  1. API upload file đính kèm

Endpoint: /contract/upload/file

Method: POST

Request

Name

In

Type

Description

file

Formdata

binary

Với file hợp đồng chính, chỉ upload 1 file

Authorization

header

String

Bearer <token>

Code ví dụ gửi file formdata javascript(Tương tự upload file đính kèm khách hàng, chỉ khác đường dẫn file)

Response

Response

Description

A5EBFC96407F03766F46729C84C48C6D1C1593B42E04D412755C3DE1D39063B7

Trả về đường dẫn file hợp đồng đã được mã hoá, dùng giá trị này cho các bước tiếp theo

 

  1. API upload file đính kèm

Endpoint: /file/upload/contractAttachment

Method: POST

Mô tả:

File đính kèm không bắt buộc, chỉ khi upload file đính kèm lên mới cần gọi api này

Request

Name

In

Type

Description

file

Formdata

binary

Với file hợp đồng chính, chỉ upload 1 file

Authorization

header

String

Bearer <token>

Code ví dụ gửi file formdata javascript(Tương tự upload file đính kèm khách hàng, chỉ khác đường dẫn file)

Response

Response

Description

[

   {

      "fileName":"sample.pdf",

      "fileSize":3028,

      "path":"A7D559822E70EB7DA5DED2A5C6045A45E34069A400FA055BF281834F09BD7C35"

   },

   {

      "fileName":"ky_lo.pdf",

      "fileSize":236374,

      "path":"1954FF558531A7BC082903595BF776A0FB174E4597550EB0769D70AD012D35EC"

   }

]

Trả về danh sách đường dẫn cho các file upload

filename: Tên file upload

fileSize: dung lượng file

path: đường dẫn của file đã được mã hoá

 

  1. API lưu thông tin chi tiết hợp đồng

Endpoint: /contract/file

Method: POST

Mô tả:

File đính kèm không bắt buộc, chỉ khi upload file đính kèm lên mới cần gọi api này

Request

Name

In

Required

Type

Description

code

body

Yes

String

Mã hợp đồng

name

body

Yes

String

Tên hợp đồng

parentId

body

No

String

Mã hợp đồng cha(nếu có)

enterpriseId

body

Yes

String

Mã doanh nghiệp tạo hợp đồng

filePath

body

Yes

String

Đường dẫn file hợp đồng chính  nhận được ở bước trên

expiredDate

body

No

Date

Ngày hết hạn hợp đồng

newUploadContractAttachments

body

No

Array<{

fileName: "sample.pdf"

fileSize: 3028

path: "A7D559822E70E”

}>

Danh sách file đính kèm nhận được ở bước trên

serviceType

body

Yes

Number

Service type id

enterpriseSign

body

Yes

Array<{

certificateNo: "1234567890"

customerId: "NWQ4NGYlZGhzQSYqMjQ2"

email: "muoinv@is.viettel.com.vn"

enterpriseId: "NTRmc0EmKjMzNg=="

enterpriseName: ""

isCreatedSide: false

isSignNoLogin: false

name: "khách hàng test xem có gửi tài khoản không"

order: 1

phone: "0978610265"

status: 1

useDataForTemplate: false

}>

Danh sách chủ thể ký,

Với Trường hợp chỉ có 1 khách hàng cá nhân ký thì danh sách này chỉ có 1 phần tử chứa thông tin của khách hàng cá nhân

certificateNo: Số giấy tờ Kh

customerId: Id khách hàng

email: email khách hàng

enterpriseId: enterprise id khách hàng

enterpriseName: enterpriseName của khách hàng

isCreatedSide: Có phải chủ thể tạo hay không

isSignNoLogin: có cho phép ký không đăng nhập hay không

name: tên khách hàng

order: Thứ tự ký, trường hợp này auto = 1

phone: Số điện thoại

status: 1 : Nháp

useDataForTemplate: Có fill thông tin vào mẫu hợp đồng hay khong

signPage

body

Yes

Number

Trang chứa chữ ký

userSign

body

No

Array

Danh sách người ký, với trường hợp chỉ có 1 khách hàng cá nhân ký thì danh sách này rỗng

Authorization

header

 

String

Bearer <token>

Response

Response

Description

{

   "code":"CREATED",

   "message":"Tạo mới thành công.",

   "success":true

}

 

 

 

3.7. API xem hợp đồng

  1. Xem thông tin hợp đồng

EndPoint: /contract/<contractId>

Method: GET

Request

Name

In

Type

Description

contractId

Query params

string

Id của hợp đồng

Authorization

header

String

Bearer <token>

 

Response

Response

Description

{

   "contractDTO":{

      "id":"NTA0ZHMkZCNzQSYqJioxMTc0OAu003du003d",

      "code":"mahopdong123456",

      "name":"tên hợp đồng",

      "parentId":"NTA0ZHMkZCNzQSYqJioxMDM5Ngu003du003d",

      "enterpriseId":"NTRmc0EmKjI5NQu003du003d",

      "documentTypeEnterpriseId":"NWFyNCNmQSYmKjEwMwu003du003d",

      "status":1,

      "filePath":"CD78860682F3B65B8EA82A97B6013337BC59EC44C7C6C5EE47CC80F683988792",

      "typeId":1,

      "isDeleted":false,

      "createdBy":"NWE0ZmQkaHNBKjM1Mwu003du003d",

      "expiredDate":"May 25, 2021 12:00:00 AM",

      "isSended":false,

      "version":0,

      "serviceType":232,

      "contractAttachments":[

        

      ],

      "newUploadContractAttachments":[

         {

            "id":"NTA0ZHMkZCNzQSYqJioxMzgw",

            "fileName":"sample.pdf",

            "fileSize":3028,

            "path":"A7D559822E70EB7DA5DED2A5C6045A45E34069A400FA055BF281834F09BD7C35",

            "isDeleted":false,

            "isNewUpload":true

         },

         {

            "id":"NTA0ZHMkZCNzQSYqJioxMzgx",

            "fileName":"ky_lo.pdf",

            "fileSize":236374,

            "path":"1954FF558531A7BC082903595BF776A0FB174E4597550EB0769D70AD012D35EC",

            "isDeleted":false,

            "isNewUpload":true

         }

      ],

      "isDifferentEnterprise":false,

      "signPage":1

   },

   "inMultiSignProgress":false,

   "creatorSide":true,

   "serviceType":{

      "id":232,

      "name":"loại hợp đồng 2"

   },

   "isBlockSign":false,

   "isAutoSign":false,

   "isCaSignExpire":false

}

Id: Mã hợp đồng

code: Mã hợp đồng

name: Tên hợp đồng

parentId: Mã hợp đồng cha

enterpriseId: id doanh nghiệp tạo hợp đồng

status: trạng thái hợp đồng

1: Nháp

2: Đang xử lý

3:

4:

5:

filePath: đường dẫn file pdf chính

isDeleted: Đã xoá hay chưa

createdBy: Id người tạo

expiredDate: Ngày hết hạn

serviceType: Mã loại hợp đồng

newUploadContractAttachments: Danh sách file đính kèm hợp đồng

inMultiSignProgress: hợp đồng có đang ký theo lô hay không

isDifferentEnterprise: Hợp đồng có đang được xem bởi khách hàng hay không

creatorSide: hợp đồng có được xem bởi

 

  1. API xem file pdf hợp đồng

EndPoint: /file/view/contract-by-path

Method: POST

 

Request

 

In

Type

Description

 

Body

{

   "mainContractId":"NTA0ZHMkZCNzQSYqJioxMTc0OQ==",

   "referenceContractId":null,

   "pdfFilePath":"CCC687C91E3F9CFFB0C39D64C02A4C561CE9DB167CC538192566DD6CF2589E87"

}

mainContractId : Id của hợp đồng

referenceContractId: id của hợp đồng liên kết, trong trường hợp này để null

pdfFilePath: đường dẫn file pdf hợp đông

Authorization

header

String

Bearer <token>

 

  1. Response

Response

Description

Byte array

File pdf hợp đồng ở dạng byte array

 

3.10. Lấy danh sách hợp đồng tôi lập

Endpoint: contract/filter-mine

Method: POST

 

Request

Type

Dữ liệu đầu vào

Bắt buộc

Mô tả

header

Bearer <token>

 

 

body

{

   "nameOrCode":"mã",

   "status":1,

   "customer":"email",

   "page":0,

   "pageSize":10,

   "createdTimeFrom":"2021-05-24T17:00:00.000Z",

   "createdTimeTo":"2021-05-25T17:00:00.000Z",

   "taxCode":null,

   "serviceType":242,

   "sorts":null

}

 

nameOrCode: tên hoặc mã hợp đồng

status: trạng thái hợp đồng

1: Nháp

2: Đang xử lý

3: Đã từ chối

4: Hoàn thành

5: Đã huỷ

customer: tìm theo tên hoặc email khách hàng

createdTimeFrom: thời gian tạo hợp đồng từ ngày

createdTimeTo: thời gian tạo hợp đồng đến ngày

serviceType: Id loại hợp đồng

 

 

Response

Response

Mô tả

{

  "code": "200",

  "message": "OK",

  "data": {

    "currentPage": 0,

    "pageSize": 10,

    "totalRow": 1,

    "dataRow": [

      {

        "id": "NTA0ZHMkZCNzQSYqJioxMTEyNw==",

        "name": "HDD22 - hợp đồng trao đổi tài sản",

        "createdUser": "test",

        "typeId": 1,

        "allName": "test",

        "receivedTime": "Apr 5, 2021 10:12:56 AM"

      }

    ]

  },

  "success": true

}

 

 

 

email : quipd@viettel.com.vn để lấy thông tin đầy đủ

Sản phẩm khác

Bộ 6 sản phẩm, dịch vụ của Smart Solutions giúp các doanh nghiệp khai thác dữ liệu hiệu quả

Bộ 6 sản phẩm, dịch vụ của Smart Solutions giúp các doanh nghiệp khai thác dữ liệu hiệu quả

CHI TIẾT
Các chuyên gia thường ví Dữ liệu là vàng, là dầu mỏ trong kỷ nguyên số. Nhưng nếu không tổ chức hệ thống dữ liệu để có thể phân tích được, thì không thể khai thác "mỏ vàng" này hiệu quả.
Smart Solutions đã nghiên cứu và triển khai bộ 6 giải pháp, dịch vụ có thể giải bài toán làm sao để khai thác dữ liệu số tạo ra giá trị.
1. Smart Data Platform: Nền tảng giúp doanh nghiệp dễ dàng triển khai một hệ thống Big Data nhanh chóng, đơn giản và tiết kiệm nguồn lực cho việc phát triển các sản phẩm dựa trên dữ liệu doanh nghiệp.
2. Smart Machine Learning Platform: Nền tảng được sử dụng trong các giải pháp triển khai các use case phân tích dữ liệu chuyên sâu.
3. Dịch vụ triển khai Customer 360: Dịch vụ tổng hợp, hợp nhất dữ liệu khách hàng và phân khúc khách hàng tìm ra những đặc điểm chung, gợi ý các sản phẩm phù hợp đến từng khách hàng.
4. Customer Data Platform Nền tảng hoàn chỉnh để thực hiện triển khai một hệ thống Customer 360 nhanh chóng, đơn giản và tiết kiệm cho doanh nghiệp.
5. Dịch vụ triển khai Data Lake: Tích hợp, chuẩn hóa, truy vấn khai thác khối lượng dữ liệu từ nhiều nguồn khác nhau (bao gồm có cấu trúc, phi cấu trúc và bán cấu trúc).
6. Dịch vụ phân tích dữ liệu: Phân tích dữ liệu chuyên sâu dựa trên nền tảng vMLP để mang lại giá trị từ khối dữ liệu từ khách hàng.

 

 

CẢNG HẢI PHÒNG CHIA SẺ KINH NGHIỆM ĐỂ CHUYỂN ĐỔI SỐ THÀNH CÔNG

CẢNG HẢI PHÒNG CHIA SẺ KINH NGHIỆM ĐỂ CHUYỂN ĐỔI SỐ THÀNH CÔNG

CHI TIẾT
CẢNG HẢI PHÒNG CHIA SẺ KINH NGHIỆM ĐỂ CHUYỂN ĐỔI SỐ THÀNH CÔNG
Tại Hội thảo “Chuyển đổi số ngành Cảng biển và Logistics” do Viettel Solutions đồng tổ chức với Sở Thông tin và Truyền thông (Sở TT&TT) thành phố Hải Phòng, đại diện Công ty Cổ phần Cảng Hải Phòng đã chia sẻ về kinh nghiệm triển khai thành công chuyển đổi số trong lĩnh vực vận chuyển & hậu cần, dựa trên chính hành trình của đơn vị.
Cảng Hải Phòng là một trong những đơn vị logistics tiên phong “mở đường” đổi mới trong điều hành, chuyển đổi số tại khu vực phía Bắc. Chuyển đổi số đã giúp cảng Hải Phòng nâng tỷ lệ khách hàng thực hiện dịch vụ cảng điện tử ePort đạt 91,78%, tỷ lệ khách hàng sử dụng cổng thông minh Smart gate là 94,5%, tương tác với gần 12.500 lái xe, 1.423 doanh nghiệp vận tải sử dụng và bỏ toàn bộ chứng từ giao nhận,...
Đại diện doanh nghiệp cho biết, muốn chuyển đổi số thành công, cần quan tâm đến những yếu tố sau:
Thống nhất chuyển đổi nhận thức, tăng cường vai trò lãnh đạo, chỉ đạo để thực hiện nhiệm vụ CĐS
Xây dựng chiến lược, đề án chuyển đổi số, kế hoạch phân kỳ thực hiện
Thay đổi quy trình, ban hành quy định, chính sách về chuyển đổi số
Phát triển hạ tầng, công nghệ số
Đầu tư, phát triển nền tảng số
Tạo niềm tin, bảo đảm an toàn, an ninh mạng
Truyền thông về chuyển đổi số
Xây dựng nguồn lực thực hiện chuyển đổi số
Chuẩn bị nguồn lực tài chính thực hiện chuyển đổi số
Hợp tác nghiên cứu, phát triển và đổi mới sáng tạo
Nhờ đó, cảng Hải Phòng đã chuyển đổi số thành công ở hầu hết các trụ cột chính của doanh nghiệp, như:
Chuyển đổi số tại tuyến đầu càu: Tự động chụp ảnh, nhân diện tình trạng vỏ container tại tuyến cầu tàu; Ứng dụng camera đầu cần phục vụ cho giám sát, ghi nhận hoạt điều hành, khai thác tại tuyến cầu tàu; Ứng dụng hệ thống định vị dẫn hướng tự động (D.GPS) lắp đặt trên các RTG/Reach Stacker…
Chuyển đổi số tại tuyến cổng cảng: Cổng thông minh (Smart gate) với công nghệ nhận dạng; Tích hợp với các phần mềm kiểm tra và giao nhận tự động
Chuyển đổi số lĩnh vực khách hàng và quản lý tập trung: Dịch vụ cảng điện tử (ePort); App Driver tương tác giữa cảng với doanh nghiệp vận tải và các lái xe; Phần mềm chăm sóc khách hàng (CRM)
 Cùng nhiều hoạt động chuyển đổi số đang và sẽ tiếp tục thực hiện: Đầu tư xây dựng các Bến số 3 và số 4 thuộc Cảng cửa ngõ Quốc tế Hải Phòng; Xây dựng mô hình cảng thông minh tại Bến số 3, số 4 cảng cửa ngõ quốc tế Hải Phòng…
-----
HAI PHONG PORT SHARES EXPERIENCE FOR SUCCESSFUL DIGITAL TRANSFORMATION
At the seminar "Digital Transformation in the Maritime Port and Logistics Industry" jointly organized by Viettel Solutions and the Department of Information and Communications (DoIT) of Hai Phong City, representatives from Hai Phong Port Joint Stock Company shared their successful experience in implementing digital transformation in the transportation and logistics sector, based on the unit's own journey.
Hai Phong Port has been a pioneering logistics entity leading the way in innovation in operations and digital transformation in the northern region. Digital transformation has enabled Hai Phong Port to achieve a customer service rate of 91.78% through the ePort electronic port service, a 94.5% utilization rate of the Smart Gate intelligent gate, interaction with nearly 12,500 drivers, and 1,423 transport businesses utilizing paperless documentation.
The enterprise representative highlighted that for successful digital transformation, attention should be given to the following factors:
 Unified awareness of digital transformation, strengthening leadership roles and guidance to carry out the digital transformation mission.
 Developing a digital transformation strategy, plan, and phased implementation schedule.
 Changing processes, issuing regulations, and policies on digital transformation.
 Developing digital infrastructure and technology.
 Investing in and developing digital platforms.
 Building trust, ensuring cybersecurity.
 Communication about digital transformation.
 Building resources for digital transformation implementation.
 Preparing financial resources for digital transformation.
 Collaborating in research, development, and innovative creativity.
As a result, Hai Phong Port has successfully digitized most of the key pillars of the business, including:
 Digitizing the front-line route: Automated image capture, container status identification on the rail route; Application of head cameras for monitoring and recording operational activities at the front line; Implementation of an automatic guiding navigation system (D.GPS) installed on RTG/Reach Stacker equipment.
 Digitizing the port gate route: Smart gate with recognition technology; Integration with automatic inspection and documentation systems.
 Digitizing customer service and centralized management: Electronic port service (ePort); Driver App facilitating interaction between the port, transport businesses, and drivers; Customer Relationship Management (CRM) software.
 Continued digital transformation activities: Investment in constructing Berths 3 and 4 at the International Gateway Port Hai Phong; Building a smart port model at Berths 3 and 4 of the International Gateway Port Hai Phong...

 

 

CẢNG HẢI PHÒNG CHIA SẺ KINH NGHIỆM ĐỂ CHUYỂN ĐỔI SỐ THÀNH CÔNG