-
Notifications
You must be signed in to change notification settings - Fork 1
Expand file tree
/
Copy pathCommand.js
More file actions
38 lines (25 loc) · 21.4 KB
/
Command.js
File metadata and controls
38 lines (25 loc) · 21.4 KB
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
const Web3 = require('web3');
const web3 = new Web3(new Web3.providers.HttpProvider("http://localhost:8545"));
web3.personal.unlockAccount(web3.eth.accounts[0], "1234");
const abi = '[{\"constant\":false,\"inputs\":[],\"name\":\"trustScoreFeedback\",\"outputs\":[],\"payable\":true,\"stateMutability\":\"payable\",\"type\":\"function\"},{\"constant\":true,\"inputs\":[],\"name\":\"sumOfVerifyingGroupTrustScore\",\"outputs\":[{\"name\":\"\",\"type\":\"uint256\"}],\"payable\":false,\"stateMutability\":\"view\",\"type\":\"function\"},{\"constant\":true,\"inputs\":[],\"name\":\"lastOfVerifyingGroup\",\"outputs\":[{\"name\":\"\",\"type\":\"uint256\"}],\"payable\":false,\"stateMutability\":\"view\",\"type\":\"function\"},{\"constant\":true,\"inputs\":[{\"name\":\"\",\"type\":\"uint256\"}],\"name\":\"employees\",\"outputs\":[{\"name\":\"empNum\",\"type\":\"uint256\"},{\"name\":\"empName\",\"type\":\"string\"},{\"name\":\"empScore\",\"type\":\"uint256\"},{\"name\":\"empTrustScore\",\"type\":\"uint256\"}],\"payable\":false,\"stateMutability\":\"view\",\"type\":\"function\"},{\"constant\":false,\"inputs\":[],\"name\":\"trustScoreMinusFeedback\",\"outputs\":[],\"payable\":true,\"stateMutability\":\"payable\",\"type\":\"function\"},{\"constant\":false,\"inputs\":[],\"name\":\"setEmp\",\"outputs\":[{\"name\":\"\",\"type\":\"uint256\"}],\"payable\":false,\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"constant\":true,\"inputs\":[],\"name\":\"sumOfVerifyingGroupScore\",\"outputs\":[{\"name\":\"\",\"type\":\"uint256\"}],\"payable\":false,\"stateMutability\":\"view\",\"type\":\"function\"},{\"constant\":true,\"inputs\":[],\"name\":\"sumOfVerifyingScore\",\"outputs\":[{\"name\":\"\",\"type\":\"uint256\"}],\"payable\":false,\"stateMutability\":\"view\",\"type\":\"function\"},{\"constant\":true,\"inputs\":[{\"name\":\"_empNum\",\"type\":\"uint256\"}],\"name\":\"getEmpScore\",\"outputs\":[{\"name\":\"\",\"type\":\"uint256\"}],\"payable\":false,\"stateMutability\":\"view\",\"type\":\"function\"},{\"constant\":true,\"inputs\":[],\"name\":\"trustScoreAdapted\",\"outputs\":[{\"name\":\"\",\"type\":\"bool\"}],\"payable\":false,\"stateMutability\":\"view\",\"type\":\"function\"},{\"constant\":true,\"inputs\":[],\"name\":\"isVerified\",\"outputs\":[{\"name\":\"\",\"type\":\"bool\"}],\"payable\":false,\"stateMutability\":\"view\",\"type\":\"function\"},{\"constant\":false,\"inputs\":[{\"name\":\"_numOfVerifyingGroup\",\"type\":\"uint256\"}],\"name\":\"verify\",\"outputs\":[{\"name\":\"\",\"type\":\"bool\"}],\"payable\":true,\"stateMutability\":\"payable\",\"type\":\"function\"},{\"constant\":true,\"inputs\":[],\"name\":\"cmdScore\",\"outputs\":[{\"name\":\"\",\"type\":\"uint256\"}],\"payable\":false,\"stateMutability\":\"view\",\"type\":\"function\"},{\"constant\":false,\"inputs\":[{\"name\":\"_empNum\",\"type\":\"uint256\"}],\"name\":\"plusEmpTrustScore\",\"outputs\":[],\"payable\":false,\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"constant\":false,\"inputs\":[],\"name\":\"trustScorePlusFeedback\",\"outputs\":[],\"payable\":true,\"stateMutability\":\"payable\",\"type\":\"function\"},{\"constant\":true,\"inputs\":[],\"name\":\"doubleOfCmdScore\",\"outputs\":[{\"name\":\"\",\"type\":\"uint256\"}],\"payable\":false,\"stateMutability\":\"view\",\"type\":\"function\"},{\"constant\":false,\"inputs\":[{\"name\":\"_issuingCmdEmpNum\",\"type\":\"uint256\"}],\"name\":\"setIssuingEmp\",\"outputs\":[],\"payable\":false,\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"constant\":true,\"inputs\":[{\"name\":\"_empNum\",\"type\":\"uint256\"}],\"name\":\"getEmpTrustScore\",\"outputs\":[{\"name\":\"\",\"type\":\"uint256\"}],\"payable\":false,\"stateMutability\":\"view\",\"type\":\"function\"},{\"constant\":false,\"inputs\":[{\"name\":\"_empNum\",\"type\":\"uint256\"}],\"name\":\"minusEmpTrustScore\",\"outputs\":[],\"payable\":false,\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"constant\":false,\"inputs\":[{\"name\":\"_empNum\",\"type\":\"uint256\"}],\"name\":\"issueCmd_1\",\"outputs\":[],\"payable\":true,\"stateMutability\":\"payable\",\"type\":\"function\"},{\"constant\":true,\"inputs\":[{\"name\":\"\",\"type\":\"uint256\"}],\"name\":\"randomNumList\",\"outputs\":[{\"name\":\"\",\"type\":\"uint256\"}],\"payable\":false,\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[],\"payable\":true,\"stateMutability\":\"payable\",\"type\":\"constructor\"}]'
const bin = '0x60806040526005600155600a60025561014060405190810160405280600060ff168152602001600160ff168152602001600260ff168152602001600360ff168152602001600460ff168152602001600560ff168152602001600660ff168152602001600760ff168152602001600860ff168152602001600960ff16815250600390600a6200008f92919062000b75565b506000600860006101000a81548160ff0219169083151502179055506000600860016101000a81548160ff021916908315150217905550620000e16003620000e7640100000000026401000000009004565b62000c7b565b60008060008062000106620002e4640100000000026401000000009004565b50600093505b6003805490508410156200023c57836003805490500342604051602001808281526020019150506040516020818303038152906040526040518082805190602001908083835b60208310151562000179578051825260208201915060208101905060208303925062000152565b6001836020036101000a038019825116818451168082178552505050505050905001915050604051809103902060019004811515620001b457fe5b0684019250600383815481101515620001c957fe5b90600052602060002001549150600384815481101515620001e657fe5b90600052602060002001546003848154811015156200020157fe5b9060005260206000200181905550816003858154811015156200022057fe5b906000526020600020018190555083806001019450506200010c565b620002596001860362000afc640100000000026401000000009004565b600090505b6005811015620002b9576200029c6003828154811015156200027c57fe5b906000526020600020015462000b4b640100000000026401000000009004565b60046000828254019250508190555080806001019150506200025e565b600254600454101515620002d5576004600681905550620002dd565b600680819055505b5050505050565b60008060806040519081016040528060016000805490500181526020016040805190810160405280600781526020017fec82acec9b9031000000000000000000000000000000000000000000000000008152508152602001600181526020016000815250908060018154018082558091505090600182039060005260206000209060040201600090919290919091506000820151816000015560208201518160010190805190602001906200039b92919062000bcc565b506040820151816002015560608201518160030155505050600060806040519081016040528060016000805490500181526020016040805190810160405280600781526020017fec82acec9b9032000000000000000000000000000000000000000000000000008152508152602001600281526020016001815250908060018154018082558091505090600182039060005260206000209060040201600090919290919091506000820151816000015560208201518160010190805190602001906200046992919062000bcc565b506040820151816002015560608201518160030155505050600060806040519081016040528060016000805490500181526020016040805190810160405280600781526020017feb8c80eba6ac31000000000000000000000000000000000000000000000000008152508152602001600281526020016002815250908060018154018082558091505090600182039060005260206000209060040201600090919290919091506000820151816000015560208201518160010190805190602001906200053792919062000bcc565b506040820151816002015560608201518160030155505050600060806040519081016040528060016000805490500181526020016040805190810160405280600781526020017feb8c80eba6ac32000000000000000000000000000000000000000000000000008152508152602001600381526020016002815250908060018154018082558091505090600182039060005260206000209060040201600090919290919091506000820151816000015560208201518160010190805190602001906200060592919062000bcc565b506040820151816002015560608201518160030155505050600060806040519081016040528060016000805490500181526020016040805190810160405280600781526020017fecb0a8ec9ea53100000000000000000000000000000000000000000000000000815250815260200160038152602001600381525090806001815401808255809150509060018203906000526020600020906004020160009091929091909150600082015181600001556020820151816001019080519060200190620006d392919062000bcc565b506040820151816002015560608201518160030155505050600060806040519081016040528060016000805490500181526020016040805190810160405280600781526020017fecb0a8ec9ea53200000000000000000000000000000000000000000000000000815250815260200160048152602001600381525090806001815401808255809150509060018203906000526020600020906004020160009091929091909150600082015181600001556020820151816001019080519060200190620007a192919062000bcc565b506040820151816002015560608201518160030155505050600060806040519081016040528060016000805490500181526020016040805190810160405280600681526020017feab3bcec9ea500000000000000000000000000000000000000000000000000008152508152602001600581526020016003815250908060018154018082558091505090600182039060005260206000209060040201600090919290919091506000820151816000015560208201518160010190805190602001906200086f92919062000bcc565b506040820151816002015560608201518160030155505050600060806040519081016040528060016000805490500181526020016040805190810160405280600681526020017fed8c80ec9ea500000000000000000000000000000000000000000000000000008152508152602001600681526020016005815250908060018154018082558091505090600182039060005260206000209060040201600090919290919091506000820151816000015560208201518160010190805190602001906200093d92919062000bcc565b506040820151816002015560608201518160030155505050600060806040519081016040528060016000805490500181526020016040805190810160405280600981526020017febb680ec82acec9ea5000000000000000000000000000000000000000000000081525081526020016007815260200160048152509080600181540180825580915050906001820390600052602060002090600402016000909192909190915060008201518160000155602082015181600101908051906020019062000a0b92919062000bcc565b506040820151816002015560608201518160030155505050600060806040519081016040528060016000805490500181526020016040805190810160405280600681526020017fec82acec9ea5000000000000000000000000000000000000000000000000000081525081526020016009815260200160088152509080600181540180825580915050906001820390600052602060002090600402016000909192909190915060008201518160000155602082015181600101908051906020019062000ad992919062000bcc565b506040820151816002015560608201518160030155505050600080549050905090565b6000808281548110151562000b0d57fe5b9060005260206000209060040201600201819055506000808281548110151562000b3357fe5b90600052602060002090600402016003018190555050565b6000808281548110151562000b5c57fe5b9060005260206000209060040201600201549050919050565b82805482825590600052602060002090810192821562000bb9579160200282015b8281111562000bb8578251829060ff1690559160200191906001019062000b96565b5b50905062000bc8919062000c53565b5090565b828054600181600116156101000203166002900490600052602060002090601f016020900481019282601f1062000c0f57805160ff191683800117855562000c40565b8280016001018555821562000c40579182015b8281111562000c3f57825182559160200191906001019062000c22565b5b50905062000c4f919062000c53565b5090565b62000c7891905b8082111562000c7457600081600090555060010162000c5a565b5090565b90565b6113bc8062000c8b6000396000f30060806040526004361061011d576000357c0100000000000000000000000000000000000000000000000000000000900463ffffffff1680630282cbdc146101225780631c85d9781461012c5780632b1e0a33146101575780634739326b1461018257806358ef35551461023d5780635ec027a2146102475780636194813c1461027257806371e2e5e41461029d57806373022d1e146102c8578063762ce4171461030957806380007e83146103385780638753367f146103675780638d084c171461039f57806399282767146103ca5780639d82a2f5146103f7578063a71b684f14610401578063b5cf5d491461042c578063b8b934d014610459578063bb2bcb1c1461049a578063bf6239fe146104c7578063ce9a4baa146104e7575b600080fd5b61012a610528565b005b34801561013857600080fd5b5061014161055c565b6040518082815260200191505060405180910390f35b34801561016357600080fd5b5061016c610562565b6040518082815260200191505060405180910390f35b34801561018e57600080fd5b506101ad60048036038101908080359060200190929190505050610568565b6040518085815260200180602001848152602001838152602001828103825285818151815260200191508051906020019080838360005b838110156101ff5780820151818401526020810190506101e4565b50505050905090810190601f16801561022c5780820380516001836020036101000a031916815260200191505b509550505050505060405180910390f35b61024561063f565b005b34801561025357600080fd5b5061025c610681565b6040518082815260200191505060405180910390f35b34801561027e57600080fd5b50610287610e85565b6040518082815260200191505060405180910390f35b3480156102a957600080fd5b506102b2610e8b565b6040518082815260200191505060405180910390f35b3480156102d457600080fd5b506102f360048036038101908080359060200190929190505050610e91565b6040518082815260200191505060405180910390f35b34801561031557600080fd5b5061031e610eba565b604051808215151515815260200191505060405180910390f35b34801561034457600080fd5b5061034d610ecd565b604051808215151515815260200191505060405180910390f35b61038560048036038101908080359060200190929190505050610ee0565b604051808215151515815260200191505060405180910390f35b3480156103ab57600080fd5b506103b4610fe4565b6040518082815260200191505060405180910390f35b3480156103d657600080fd5b506103f560048036038101908080359060200190929190505050610fea565b005b6103ff61101c565b005b34801561040d57600080fd5b5061041661105e565b6040518082815260200191505060405180910390f35b34801561043857600080fd5b5061045760048036038101908080359060200190929190505050611064565b005b34801561046557600080fd5b50610484600480360381019080803590602001909291905050506110b1565b6040518082815260200191505060405180910390f35b3480156104a657600080fd5b506104c5600480360381019080803590602001909291905050506110da565b005b6104e56004803603810190808035906020019092919050505061110c565b005b3480156104f357600080fd5b50610512600480360381019080803590602001909291905050506112c8565b6040518082815260200191505060405180910390f35b60011515600860019054906101000a900460ff16151514156105515761054c61101c565b61055a565b61055961063f565b5b565b60075481565b60065481565b60008181548110151561057757fe5b9060005260206000209060040201600091509050806000015490806001018054600181600116156101000203166002900480601f0160208091040260200160405190810160405280929190818152602001828054600181600116156101000203166002900480156106295780601f106105fe57610100808354040283529160200191610629565b820191906000526020600020905b81548152906001019060200180831161060c57829003601f168201915b5050505050908060020154908060030154905084565b60008090505b60065481101561067e5761067160038281548110151561066157fe5b90600052602060002001546110da565b8080600101915050610645565b50565b60008060806040519081016040528060016000805490500181526020016040805190810160405280600781526020017fec82acec9b9031000000000000000000000000000000000000000000000000008152508152602001600181526020016000815250908060018154018082558091505090600182039060005260206000209060040201600090919290919091506000820151816000015560208201518160010190805190602001906107369291906112eb565b506040820151816002015560608201518160030155505050600060806040519081016040528060016000805490500181526020016040805190810160405280600781526020017fec82acec9b9032000000000000000000000000000000000000000000000000008152508152602001600281526020016001815250908060018154018082558091505090600182039060005260206000209060040201600090919290919091506000820151816000015560208201518160010190805190602001906108029291906112eb565b506040820151816002015560608201518160030155505050600060806040519081016040528060016000805490500181526020016040805190810160405280600781526020017feb8c80eba6ac31000000000000000000000000000000000000000000000000008152508152602001600281526020016002815250908060018154018082558091505090600182039060005260206000209060040201600090919290919091506000820151816000015560208201518160010190805190602001906108ce9291906112eb565b506040820151816002015560608201518160030155505050600060806040519081016040528060016000805490500181526020016040805190810160405280600781526020017feb8c80eba6ac320000000000000000000000000000000000000000000000000081525081526020016003815260200160028152509080600181540180825580915050906001820390600052602060002090600402016000909192909190915060008201518160000155602082015181600101908051906020019061099a9291906112eb565b506040820151816002015560608201518160030155505050600060806040519081016040528060016000805490500181526020016040805190810160405280600781526020017fecb0a8ec9ea53100000000000000000000000000000000000000000000000000815250815260200160038152602001600381525090806001815401808255809150509060018203906000526020600020906004020160009091929091909150600082015181600001556020820151816001019080519060200190610a669291906112eb565b506040820151816002015560608201518160030155505050600060806040519081016040528060016000805490500181526020016040805190810160405280600781526020017fecb0a8ec9ea53200000000000000000000000000000000000000000000000000815250815260200160048152602001600381525090806001815401808255809150509060018203906000526020600020906004020160009091929091909150600082015181600001556020820151816001019080519060200190610b329291906112eb565b506040820151816002015560608201518160030155505050600060806040519081016040528060016000805490500181526020016040805190810160405280600681526020017feab3bcec9ea50000000000000000000000000000000000000000000000000000815250815260200160058152602001600381525090806001815401808255809150509060018203906000526020600020906004020160009091929091909150600082015181600001556020820151816001019080519060200190610bfe9291906112eb565b506040820151816002015560608201518160030155505050600060806040519081016040528060016000805490500181526020016040805190810160405280600681526020017fed8c80ec9ea50000000000000000000000000000000000000000000000000000815250815260200160068152602001600581525090806001815401808255809150509060018203906000526020600020906004020160009091929091909150600082015181600001556020820151816001019080519060200190610cca9291906112eb565b506040820151816002015560608201518160030155505050600060806040519081016040528060016000805490500181526020016040805190810160405280600981526020017febb680ec82acec9ea50000000000000000000000000000000000000000000000815250815260200160078152602001600481525090806001815401808255809150509060018203906000526020600020906004020160009091929091909150600082015181600001556020820151816001019080519060200190610d969291906112eb565b506040820151816002015560608201518160030155505050600060806040519081016040528060016000805490500181526020016040805190810160405280600681526020017fec82acec9ea50000000000000000000000000000000000000000000000000000815250815260200160098152602001600881525090806001815401808255809150509060018203906000526020600020906004020160009091929091909150600082015181600001556020820151816001019080519060200190610e629291906112eb565b506040820151816002015560608201518160030155505050600080549050905090565b60045481565b60055481565b60008082815481101515610ea157fe5b9060005260206000209060040201600201549050919050565b600860009054906101000a900460ff1681565b600860019054906101000a900460ff1681565b600080600481905550610f0b600383815481101515610efb57fe5b9060005260206000200154610e91565b600560008282540192505081905550610f3c600383815481101515610f2c57fe5b90600052602060002001546110b1565b60076000828254019250508190555060025460075410158015610f72575060001515600860009054906101000a900460ff161515145b15610fa45760016005600082825401925050819055506001600860006101000a81548160ff0219169083151502179055505b600154600554101515610fcd576001600860016101000a81548160ff0219169083151502179055505b600860019054906101000a900460ff169050919050565b60015481565b6001600082815481101515610ffb57fe5b90600052602060002090600402016003016000828254019250508190555050565b60008090505b60065481101561105b5761104e60038281548110151561103e57fe5b9060005260206000200154610fea565b8080600101915050611022565b50565b60025481565b6000808281548110151561107457fe5b9060005260206000209060040201600201819055506000808281548110151561109957fe5b90600052602060002090600402016003018190555050565b600080828154811015156110c157fe5b9060005260206000209060040201600301549050919050565b60016000828154811015156110eb57fe5b90600052602060002090600402016003016000828254039250508190555050565b60008060008061111a610681565b50600093505b60038054905084101561124757836003805490500342604051602001808281526020019150506040516020818303038152906040526040518082805190602001908083835b60208310151561118a5780518252602082019150602081019050602083039250611165565b6001836020036101000a0380198251168184511680821785525050505050509050019150506040518091039020600190048115156111c457fe5b06840192506003838154811015156111d857fe5b906000526020600020015491506003848154811015156111f457fe5b906000526020600020015460038481548110151561120e57fe5b90600052602060002001819055508160038581548110151561122c57fe5b90600052602060002001819055508380600101945050611120565b61125360018603611064565b600090505b600581101561129f5761128360038281548110151561127357fe5b9060005260206000200154610e91565b6004600082825401925050819055508080600101915050611258565b6002546004541015156112b95760046006819055506112c1565b600680819055505b5050505050565b6003818154811015156112d757fe5b906000526020600020016000915090505481565b828054600181600116156101000203166002900490600052602060002090601f016020900481019282601f1061132c57805160ff191683800117855561135a565b8280016001018555821561135a579182015b8281111561135957825182559160200191906001019061133e565b5b509050611367919061136b565b5090565b61138d91905b80821115611389576000816000905550600101611371565b5090565b905600a165627a7a723058206ed307c8e8f97ed8d9ca94f701678bf6916fba217bd57ae8b9048efbbf640f7c0029'
const CommandContractFactory = web3.eth.contract(JSON.parse(abi));
console.log("\n\n컨트랙트 배포를 시도합니다... ~~\n\n")
const startTime = Date.now();
const CommandContractInstance = CommandContractFactory.new({
from: web3.eth.accounts[0],
data : bin,
gas: '300000000'
},
function (e,contract) {
if(e) {
console.log("this is e~~~ : \n\n " + e);
}
if(typeof contract.address !== 'undefined') {
const endTime = Date.now();
console.log('Contract mined! address: ' + contract.address + ' transactionHash: ' + contract.transactionHash)
console.log("제안 시스템 소요 시간 --> 배포시작: " + startTime + " 배포 마무리: " + endTime + " : "+ (endTime - startTime)+"ms");
console.log("총 소요시간 : " + ((endTime - startTime) / 1000) + "s")
}
}
)