Blockchain : Pharmaceutical SupplyChain
/contracts/SupplyChain.sol

Kamal Kishor Mehra

constructor

SupplyChain

event

MadicineNewBatch 3279bc96

inputs0addressBatchId
inputs1addressManufacturer
inputs2addressshipper
inputs3addressReceiver
event

MadicineStatus 7e0150eb

inputs0addressBatchID
inputs1addressPharma
inputs2uint256status
event

RawSupplyInit 9dbe7d9f

inputs0addressProductID
inputs1addressSupplier
inputs2addressShipper
inputs3addressReceiver
event

UserRegister 33a7170f

inputs0addressEthAddress
inputs1bytes32Name
event

UserRoleRessigne 4c8b3f61

inputs0addressEthAddress
inputs1bytes32Name
inputs2uint256Role
event

UserRoleRevoked b5f04dfc

inputs0addressEthAddress
inputs1bytes32Name
inputs2uint256Role
function, constant

Owner b4a99a4e

function

createRawPackage d40da967

@dev Create new raw package by Supplier

inputs0bytes32Des

Transporter Ethereum Network Address

inputs1bytes32FN
inputs2bytes32Loc
inputs3uint256Quant
inputs4addressShpr
inputs5addressRcvr

Manufacturer Ethereum Network Address

function, constant

getBatchIdByIndexDP f05bcd4e

@dev Get Madicine BatchID by indexed value of stored data

inputs0uint256index

Index Number

outputs0addresspackageID
function, constant

getBatchIdByIndexM 986c9139

@dev Get Madicine BatchID by indexed value of stored data

inputs0uint256index

Indexed Number

outputs0addresspackageID
function, constant

getBatchIdByIndexP e5bff92a

@dev Get Madicine BatchID by indexed value of stored data

inputs0uint256index

Index Number

outputs0addressBatchID
function, constant

getBatchIdByIndexWD 9af035a3

@dev Get Madicine BatchID by indexed value of stored data

inputs0uint256index

Indexed Number

outputs0addresspackageID
function, constant

getBatchesCountDP 884b9c52

@dev Get Madicine BatchID Count

outputs0uint256count
function, constant

getBatchesCountM 3d66f86d

@dev Get Madicine Batch Count

outputs0uint256count
function, constant

getBatchesCountP e581762e

@dev Get Madicine Batch count

outputs0uint256count
function, constant

getBatchesCountWD 9f696b35

@dev Get Madicine Batch Count

outputs0uint256count
function, constant

getPackageIDByIndexM 0bcc7568

@dev Get PackageID by Indexed value of stored data

inputs0uint256index

Indexed Value

outputs0addressBatchID
function, constant

getPackageIdByIndexS 5e33cea4

@dev Get PackageID by Indexed value of stored data

inputs0uint256index

Indexed Value

outputs0addresspackageID
function, constant

getPackagesCountM 9fb3a903

@dev Get Package Count at Manufacturer

outputs0uint256count
function, constant

getPackagesCountS 2becfd04

@dev Get Count of created package by supplier(caller)

outputs0uint256count
function, constant

getSubContractDP b6c022f5

@dev Get SubContract ID of Madicine Batch Transfer in between Distributer to Pharma

inputs0addressBatchID

Madicine BatchID

outputs0addressSubContractDP
function, constant

getSubContractWD 34759016

@dev Get Sub Contract ID of Madicine Batch Transfer in between Wholesaler to Distributer

inputs0addressBatchID

Madicine BatchID

outputs0addressSubContractWD
function, constant

getUserInfo 6386c1c7

@dev Get User Information/ Profile

inputs0addressUser

User Ethereum Network Address

outputs0bytes32name
outputs1bytes32location
outputs2addressethAddress
outputs3uint8role
function, constant

getUserbyIndex 108329f8

@dev Get User by Index value of stored data

inputs0uint256index

Indexed Number

outputs0bytes32name
outputs1bytes32location
outputs2addressethAddress
outputs3uint8role
function, constant

getUsersCount a4a1e263

@dev Get Number of registered Users

outputs0uint256count
function

loadConsingment 73f08eb3

@dev Load Consingment fot transport one location to another.

inputs0addresspid

PackageID or MadicineID

inputs1uint256transportertype

Transporter Type on the basic of tx between Roles

inputs2addresscid

Sub Contract ID for Consingment transaction

function

madicineReceived 2246e4d4

@dev Madicine Batch Received

inputs0addressbatchid

Madicine BatchID

inputs1addresscid

Sub Contract ID for Madicine (if transaction Wholesaler to Distributer)

function

madicineRecievedAtPharma 0cd48d81

@dev Madicine Batch Recieved

inputs0addressbatchid

Madicine BatchID

inputs1addresscid

SubContract ID

function

manufacturMadicine 9856f6b3

@dev Create Madicine Batch

inputs0bytes32Des

Description of madicine batch

inputs1bytes32RM

RawMatrials Information

inputs2uint256Quant

Number of Units

inputs3addressShpr

Transporter Ethereum Network Address

inputs4addressRcvr

Receiver Ethereum Network Address

inputs5uint256RcvrType

Receiver Type Ethier Wholesaler(1) or Distributer(2)

function

rawPackageReceived bc8c5b1c

@dev Update Package / Madicine batch recieved status by ethier Manufacturer or Distributer

inputs0addresspid

PackageID or MadicineID

function

reassigneRole 373d5c18

@dev Reassigne new role to User

inputs0addressuserAddress

User Ethereum Network Address

inputs1uint256Role

Role to assigne

function

registerUser 923f645a

@dev Register New user by Owner

inputs0addressEthAddress

Ethereum Network Address of User

inputs1bytes32Name

User name

inputs2bytes32Location

User Location

inputs3uint256Role

User Role

function

revokeRole 80e52e3f

@dev Revoke users role

inputs0addressuserAddress

User Ethereum Network Address

function, constant

salesInfo bb8ee1c5

@dev Get Madicine Batch status

inputs0addressBatchID

Madicine BatchID

outputs0uint256Status
function

transferMadicineDtoP f9723eb6

@dev Transfer Madicine BatchID in between Distributer to Pharma

inputs0addressBatchID

Madicine BatchID

inputs1addressShipper

Transporter Ethereum Network Address

inputs2addressReceiver

Pharma Ethereum Network Address

function

transferMadicineWtoD e95690aa

@dev Sub Contract for Madicine Transfer from Wholesaler to Distributer

inputs0addressBatchID

Madicine BatchID

inputs1addressShipper

Transporter Ethereum Network Address

inputs2addressReceiver

Distributer Ethereum Network Address

function

updateSaleStatus eae3c207

@dev Update Madicine Batch status

inputs0addressBatchID

Madicine BatchID

inputs1uint256Status

Madicine Batch Status ( sold, expire etc.)