Melcor
Основной смарт-контракт платформы.
Функции
addAllowedToken
function addAllowedToken(address _token, uint256 _fee) external
Добавляет токен, который можно использовать в расчетах на платформе.
Параметры:
Название | Тип | Описание |
---|---|---|
_token | address | Адрес токена |
_fee | uint256 | Комиссия при использовании токена |
createProductCategory
function createProductCategory(string memory _metadata) external
Добавляет категорию товаровю
Параметры:
Название | Тип | Описание |
---|---|---|
_metadata | string memory | IPFS CID |
createStore
function createStore(string memory _metadata) external
Добавляет магазин.
Параметры:
Название | Тип | Описание |
---|---|---|
_metadata | string memory | IPFS CID |
changeStoreVendorStatus
function changeStoreVendorStatus(
uint256 _storeId,
address _vendor,
bool _status
) external
Делает указанного пользователя продавцом магазина.
Параметры:
Название | Тип | Описание |
---|---|---|
_storeId | uint256 | Store ID |
_vendor | address | Vendor Address |
_status | bool | 'true' добавляет, 'false' удаляет |
createProduct
function createProduct(
uint256 _storeId,
string memory _metadata,
uint256 _price,
uint256 _tokenId,
uint256 _productCategoryId
) external
Создает товар.
Параметры:
Название | Тип | Описание |
---|---|---|
_storeId | uint256 | ID Магазина |
_metadata | string memory | IPFS CID |
_price | uint256 | Цена товара |
_tokenId | uint256 | ID Токена |
_productCategoryId | uint256 | ID категории товара |
createOrder
function createOrder(uint256 _productId) external returns (uint256 orderId)
Создает заказ.
Параметры:
Название | Тип | Описание |
---|---|---|
_productId | uint256 | ID Товара |
Возвращает:
Название | Тип | Описание |
---|---|---|
orderId | uint256 | ID Заказа |
acceptOrder
function acceptOrder(
uint256 _orderId,
address _guarantor,
string memory _vendorKey,
string memory _customerKey,
string memory _guarantorKey
) external
Позволяет продавцу принять предложение о покупке продукта.
Параметры:
Название | Тип | Описание |
---|---|---|
_orderId | uint256 | ID Заказа |
_guarantor | address | Адрес гаранта |
_vendorKey | string memory | Ключ шифрования |
_customerKey | string memory | Ключ шифрования |
_guarantorKey | string memory | Ключ шифрования |
Дополнительные сведения о шифровании см. Система сообщений.
depositOrder
function depositOrder(uint256 _orderId) external
Вносит средства от клиента на смарт-контракт условного депонирования.
Параметры:
Название | Тип | Описание |
---|---|---|
_orderId | uint256 | ID Заказа |
deliveryOrder
function deliveryOrder(uint256 _orderId) external
Изменяет статус заказа на SHIPPED.
Параметры:
Название | Тип | Описание |
---|---|---|
_orderId | uint256 | ID Заказа |
confirmOrder
function confirmOrder(
uint256 _orderId,
uint8 _productGrade,
uint8 _vendorGrade,
uint8 _guarantorGrade,
string memory _metadata
) external
Переводит средства со смарт-контракта условного депонирования на счет продавца.
Параметры:
Название | Тип | Описание |
---|---|---|
_orderId | uint256 | I Заказа |
_productGrade | uint8 | Оценка товара |
_vendorGrade | uint8 | Оценка продавца |
_guarantorGrade | uint8 | Оценка гарантаe |
_metadata | string memory | IPFS CID |
setPubKey
function setPubKey(bytes memory _publicKey) external
Устанавливает открытый ключ шифрования для адреса.
Параметры:
Название | Тип | Описание |
---|---|---|
_publicKey | uint256 | ID Заказа |
registerGuarantor
function registerGuarantor() external
Позволяет зарегистрироваться в качестве гаранта.
updateReview
function updateReview(
uint256 _orderId,
uint8 _productGrade,
uint8 _vendorGrade,
uint8 _guarantorGrade,
string memory _metadata
) external
Позволяет обновить отзыв на продукт.
Параметры:
Название | Тип | Описание |
---|---|---|
_orderId | uint256 | ID Заказа |
_productGrade | uint8 | Оценка товара |
_vendorGrade | uint8 | Оценка продавца |
_guarantorGrade | uint8 | Оценка гаранта |
_metadata | string memory | IPFS CID |
dispute
function dispute(uint256 _orderId) external
Открывает спор.
Параметры:
Название | Тип | Описание |
---|---|---|
_orderId | uint256 | ID Заказа |
resolveDispute
function resolveDispute(uint256 _orderId, bool _isCustomerWin) external
Разрешает спор.
Параметры:
Название | Тип | Описание |
---|---|---|
_orderId | uint256 | ID Заказа |
_isCustomerWin | bool | 'true' если покупатель прав, иначе 'false' |