reciproka/contracts/account.sol
contracts/account.solRaw
1pragma solidity ^0.4.23;
2
3contract Accounts {
4
5 mapping(address => Account) accounts;
6
7 struct Account {
8 address ID;
9 int64 Balance;
10 bytes32[] History;
11 }
12
13 event BalanceUpdated(address sender, address receiver, int64 value);
14
15 function updateBalance(address _receiver, int64 _value) public {
16 // get Account of _sender
17 // check if balance of _sender is under the limit
18 // substract _value from _sender account
19 accounts[msg.sender].Balance = accounts[msg.sender].Balance - _value;
20 // add _value to _receiver account
21 accounts[_receiver].Balance = accounts[_receiver].Balance + _value;
22
23 // add transaction to history of sender and receiver accounts
24
25 // emit BalanceUpdated
26 emit BalanceUpdated(msg.sender, _receiver, _value);
27
28 }
29 function getBalance(address _address) public view returns (int64) {
30 return accounts[_address].Balance;
31 }
32}