Skip to content

Commit

Permalink
capsule/new web3
Browse files Browse the repository at this point in the history
  • Loading branch information
lsg1213 committed Aug 1, 2019
1 parent e2c9da2 commit 11448be
Show file tree
Hide file tree
Showing 9 changed files with 16,274 additions and 208 deletions.
16 changes: 16 additions & 0 deletions app.js
Original file line number Diff line number Diff line change
Expand Up @@ -4,6 +4,22 @@ var path = require('path');
var bodyParser = require('body-parser');
var cookieParser = require('cookie-parser');
var logger = require('morgan');
const Tx = require('ethereumjs-tx');
const initConfig = require('./init');
const LogicHelloWorldJSON = require('../build/contracts/manage.json');
const web3 = initConfig.web3;
const user_address = initConfig.user_address;
const user_pk = initConfig.user_pk;
const logic_ledger = initConfig.logic_leger;
const proxy_ledger = initConfig.proxy_ledger;
const registed_user_address = initConfig.registed_user_address;
const gasPrice = initConfig.gas_price;

let hash = '0x011111'; // ipfs 구현 후 수정
var server_address = user_address;
let manage_contract = '0x13FcDeD35083D926f2BC6d64028a8A643B835c3f'
let manage = new web3.eth.Contract(LogicHelloWorldJSON.abi, manage_contract);


const session = require('express-session'); // 세션 설정
const passport = require('passport');
Expand Down
9,492 changes: 9,492 additions & 0 deletions build/contracts/Capsule.json

Large diffs are not rendered by default.

5,243 changes: 5,243 additions & 0 deletions build/contracts/Manage.json

Large diffs are not rendered by default.

1,392 changes: 1,392 additions & 0 deletions build/contracts/Migrations.json

Large diffs are not rendered by default.

58 changes: 58 additions & 0 deletions init.js
Original file line number Diff line number Diff line change
@@ -0,0 +1,58 @@
/**
* .env 설정파일을 참고해 web3를 초기화 한 후, export 한다.
*/

const Web3 = require('web3');

let rpcEndpointURL = '';
let user_address = '';
let user_pk = '';
let proxy_ledger = '';
let logic_ledger = '';
let registed_user_address = '';
let gas_price;
console.log(process.env.KALEIDO);
// if(process.env.QUORUM.toString() == 'true'){
// gas_price = 0;
// }else {
// gas_price = 0x11;
// }


// if(process.env.KALEIDO.toString() == 'true'){
// rpcEndpointURL = `https://${process.env.KALEIDO_USER}:${process.env.KALEIDO_PASS}@${process.env.KALEIDO_RPC_ENDPOINT}`;
// registed_user_address = `${process.env.KALEIDO_NODE1_ACCOUNT}`;
// user_address = `${process.env.EXTERNAL_ACCOUNT}`;
// user_pk = Buffer.from(`${process.env.EXTERNAL_ACCOUNT_PK}`, 'hex');
// proxy_ledger = `${process.env.KALEIDO_PROXY_LEDGER}`;
// logic_ledger = `${process.env.KALEIDO_LOGIC_LEDGER}`;
// } else if(process.env.GANACHE.toString() == 'true'){
// rpcEndpointURL = `http://${process.env.GANACHE_RPC_ENDPINT}`;
// user_address = `${process.env.GANACHE_ACCOUNT}`;
// user_pk = Buffer.from(`${process.env.GANACHE_ACCOUNT_PK}`, 'hex');
// registed_user_address = user_address;
// proxy_ledger = `${process.env.GANACHE_PROXY_LEDGER}`;
// logic_ledger = `${process.env.GANACHE_LOGIC_LEDGER}`;
// } else {
rpcEndpointURL = `http://127.0.0.1:7545`;
user_address = `0x215ac3b8c1516BB050Fbe3A20B2474F8c2a42f61`;
user_pk = Buffer.from(`abea22d8f685e499b2222bf32df43868d32b6dec92eae3388eb5c054dcfa59ab`,'hex');
proxy_ledger = `null`;
logic_ledger = `null`;
// }

console.log(`Check rpcEndpointURL : ${rpcEndpointURL} `);

let provider = new Web3.providers.HttpProvider(rpcEndpointURL);
let web3 = new Web3(provider);


module.exports = {
web3 : web3,
user_address : user_address,
user_pk : user_pk,
proxy_ledger : proxy_ledger,
logic_leger : logic_ledger,
registed_user_address : registed_user_address,
gas_price : gas_price
};
16 changes: 0 additions & 16 deletions routes/capsules/capsulelist.js

This file was deleted.

7 changes: 0 additions & 7 deletions routes/capsules/index.js

This file was deleted.

77 changes: 73 additions & 4 deletions routes/capsules/new.js
Original file line number Diff line number Diff line change
@@ -1,6 +1,21 @@
var express = require('express');
var mysql = require('mysql');
var router = express.Router();
const Tx = require('ethereumjs-tx');
const initConfig = require('../../init.js');
const LogicHelloWorldJSON = require('../../build/contracts/manage.json');
const web3 = initConfig.web3;
const user_address = initConfig.user_address;
const user_pk = initConfig.user_pk;
const logic_ledger = initConfig.logic_leger;
const proxy_ledger = initConfig.proxy_ledger;
const registed_user_address = initConfig.registed_user_address;
const gasPrice = initConfig.gas_price;

let hash = '0x011111'; // ipfs 구현 후 수정
var server_address = user_address;
let manage_contract = '0x13FcDeD35083D926f2BC6d64028a8A643B835c3f'
let manage = new web3.eth.Contract(LogicHelloWorldJSON.abi, manage_contract);

const utils = require('../../utils/format');
const resMessage = require('../../utils/response-message');
Expand All @@ -11,15 +26,15 @@ conn.connect();
function validateForm(form) {
if(!form.private_key) {
return 'private key 값이 없습니다.';
}
}

if(!form.capsule_address) {
return 'capsule address 값이 없습니다.';
}
}

if(!form.money) {
return '예치금 값이 없습니다.';
}
}

return null;
}
Expand All @@ -34,6 +49,59 @@ router.post('/', async(req, res, next) => {
const end_date = req.body.end_date;
// end_date를 초로 만들어줘야 함, 아래 end_seconds
const end_seconds = 10;
var hash = '0x1343'

web3.eth.getTransactionCount(server_address).then((nonce) => {
manage.methods.Bury(end_seconds, req.body.wallet_address, latitude, longitude, 86400, hash)
.send({
nonce: nonce,
from: server_address,
to: manage_contract,
gasPrice: 20000000000,
gasLimit: 6721975,
value: 0
}, (err, txhash) => {
if (err) {
console.log(err);
}
return txhash;
}).then((res) => {
return manage.methods.CheckLastCapsule().call({
from: server_address,
gasPrice: 20000000000,
gasLimit: 6721975
}).then((newAddress) => {
console.log(newAddress);
});
});
})
web3.eth.getTransactionCount(server_address)
.then(function (nonce) {
manage.methods.Bury(10, '0x6cd3a93c7110cF79fF50979430e9FF2D4DE315F7', 11, 11, 86400, hash)
.send({
nonce: nonce,
from: server_address,
to: manage_contract,
gasPrice: 20000000000,
gasLimit: 6721975,
value: 11
}, (err, txhash) => {
if (err) {
console.log(err);
}

return txhash;
}).then((res) => {
return manage.methods.CheckLastCapsule().call({
from: server_address,
gasPrice: 20000000000,
gasLimit: 6721975
}).then((newAddress) => {
console.log(newAddress);
//주소 받음.
});
});
})
});

router.post('/money', async(req, res, next) => {
Expand All @@ -50,6 +118,7 @@ router.post('/money', async(req, res, next) => {
} else {
const insertInvitationQuery = 'INSERT INTO capsule (idx, capsule_address, money) VALUES (?, ?, ?)';
conn.query(insertInvitationQuery, [findResult[0].idx, req.body.capsule_address, req.body.money], function(err, insertResult) {

if (insertResult) {
return res.json({code: 200});
} else {
Expand All @@ -65,4 +134,4 @@ router.post('/money', async(req, res, next) => {
});


module.exports = router;
module.exports = router;
Loading

0 comments on commit 11448be

Please sign in to comment.