Commit 05eef4b4 authored by jiangpeng's avatar jiangpeng Committed by vipwzw

modify privacy createTx param

parent c9d494d8
......@@ -124,7 +124,7 @@ func createPub2PrivTx(cmd *cobra.Command, args []string) {
return
}
params := types.ReqCreateTransaction{
params := pty.ReqCreatePrivacyTx{
Tokenname: tokenname,
Type: types.PrivacyTypePublic2Privacy,
Amount: amount,
......@@ -186,7 +186,7 @@ func createPriv2PrivTx(cmd *cobra.Command, args []string) {
return
}
params := types.ReqCreateTransaction{
params := pty.ReqCreatePrivacyTx{
Tokenname: tokenname,
Type: types.PrivacyTypePrivacy2Privacy,
Amount: amount,
......@@ -250,7 +250,7 @@ func createPriv2PubTx(cmd *cobra.Command, args []string) {
return
}
params := types.ReqCreateTransaction{
params := pty.ReqCreatePrivacyTx{
Tokenname: tokenname,
Type: types.PrivacyTypePrivacy2Public,
Amount: amount,
......
......@@ -4,7 +4,6 @@ package types;
import "common.proto";
import "transaction.proto";
import "wallet.proto";
//////////////////////////////////////////////////////////////////////////////
// message for Privacy
......@@ -408,6 +407,26 @@ message WalletAccountPrivacy {
bytes spendPrivKey = 4;
}
// 创建隐私交易请求
message ReqCreatePrivacyTx {
string tokenname = 1;
// 构建交易类型
// 1:隐私交易 公开->隐私
// 2:隐私交易 隐私->隐私
// 3:隐私交易 隐私->公开
int32 type = 2;
int64 amount = 3;
string note = 4;
// 普通交易的发送方
string from = 5;
// 普通交易的接收方
string to = 6;
// 隐私交易,接收方的公钥对
string pubkeypair = 10;
int32 mixcount = 11;
int64 expire = 12;
}
service privacy {
// Privacy Trading
// 显示指定地址的公钥对信息,可以作为后续交易参数
......@@ -419,5 +438,5 @@ service privacy {
// 使能隐私账户
rpc EnablePrivacy(ReqEnablePrivacy) returns (RepEnablePrivacy) {}
// 创建隐私交易
rpc CreateRawTransaction(ReqCreateTransaction) returns (Transaction) {}
}
\ No newline at end of file
rpc CreateRawTransaction(ReqCreatePrivacyTx) returns (Transaction) {}
}
......@@ -51,7 +51,7 @@ func (g *channelClient) EnablePrivacy(ctx context.Context, in *pty.ReqEnablePriv
return data.(*pty.RepEnablePrivacy), nil
}
func (g *channelClient) CreateRawTransaction(ctx context.Context, in *types.ReqCreateTransaction) (*types.Transaction, error) {
func (g *channelClient) CreateRawTransaction(ctx context.Context, in *pty.ReqCreatePrivacyTx) (*types.Transaction, error) {
data, err := g.ExecWalletFunc(pty.PrivacyX, "CreateTransaction", in)
if err != nil {
return nil, err
......@@ -145,7 +145,7 @@ func (c *Jrpc) EnablePrivacy(in *pty.ReqEnablePrivacy, result *json.RawMessage)
}
// CreateRawTransaction create raw trasaction for json rpc
func (c *Jrpc) CreateRawTransaction(in *types.ReqCreateTransaction, result *interface{}) error {
func (c *Jrpc) CreateRawTransaction(in *pty.ReqCreatePrivacyTx, result *interface{}) error {
reply, err := c.cli.CreateRawTransaction(context.Background(), in)
if err != nil {
return err
......
This diff is collapsed.
......@@ -39,7 +39,7 @@ func (policy *privacyPolicy) On_CreateUTXOs(req *privacytypes.ReqCreateUTXOs) (t
return reply, err
}
func (policy *privacyPolicy) On_CreateTransaction(req *types.ReqCreateTransaction) (types.Message, error) {
func (policy *privacyPolicy) On_CreateTransaction(req *privacytypes.ReqCreatePrivacyTx) (types.Message, error) {
ok, err := policy.getWalletOperate().CheckWalletStatus()
if !ok {
bizlog.Error("createTransaction", "CheckWalletStatus cause error.", err)
......
......@@ -562,7 +562,7 @@ func (policy *privacyPolicy) buildInput(privacykeyParirs *privacy.Privacy, build
return privacyInput, utxosInKeyInput, realkeyInputSlice, selectedUtxo, nil
}
func (policy *privacyPolicy) createTransaction(req *types.ReqCreateTransaction) (*types.Transaction, error) {
func (policy *privacyPolicy) createTransaction(req *privacytypes.ReqCreatePrivacyTx) (*types.Transaction, error) {
switch req.Type {
case types.PrivacyTypePublic2Privacy:
return policy.createPublic2PrivacyTx(req)
......@@ -574,7 +574,7 @@ func (policy *privacyPolicy) createTransaction(req *types.ReqCreateTransaction)
return nil, types.ErrInvalidParam
}
func (policy *privacyPolicy) createPublic2PrivacyTx(req *types.ReqCreateTransaction) (*types.Transaction, error) {
func (policy *privacyPolicy) createPublic2PrivacyTx(req *privacytypes.ReqCreatePrivacyTx) (*types.Transaction, error) {
viewPubSlice, spendPubSlice, err := parseViewSpendPubKeyPair(req.GetPubkeypair())
if err != nil {
bizlog.Error("createPublic2PrivacyTx", "parse view spend public key pair failed. err ", err)
......@@ -621,7 +621,7 @@ func (policy *privacyPolicy) createPublic2PrivacyTx(req *types.ReqCreateTransact
return tx, nil
}
func (policy *privacyPolicy) createPrivacy2PrivacyTx(req *types.ReqCreateTransaction) (*types.Transaction, error) {
func (policy *privacyPolicy) createPrivacy2PrivacyTx(req *privacytypes.ReqCreatePrivacyTx) (*types.Transaction, error) {
//需要燃烧的utxo
utxoBurnedAmount := privacytypes.PrivacyTxFee
......@@ -708,7 +708,7 @@ func (policy *privacyPolicy) createPrivacy2PrivacyTx(req *types.ReqCreateTransac
return tx, nil
}
func (policy *privacyPolicy) createPrivacy2PublicTx(req *types.ReqCreateTransaction) (*types.Transaction, error) {
func (policy *privacyPolicy) createPrivacy2PublicTx(req *privacytypes.ReqCreatePrivacyTx) (*types.Transaction, error) {
//需要燃烧的utxo
utxoBurnedAmount := privacytypes.PrivacyTxFee
......
......@@ -119,7 +119,7 @@ func (mock *PrivacyMock) CreateUTXOs(sender string, pubkeypair string, amount in
privacyInfo, _ := mock.policy.getPrivacyKeyPairs()
dbbatch := mock.store.NewBatch(true)
for n := 0; n < count; n++ {
tx := mock.createPublic2PrivacyTx(&types.ReqCreateTransaction{
tx := mock.createPublic2PrivacyTx(&ty.ReqCreatePrivacyTx{
Tokenname: mock.tokenName,
Type: 1,
Amount: amount,
......@@ -188,7 +188,7 @@ func (mock *PrivacyMock) CreateUTXOs(sender string, pubkeypair string, amount in
dbbatch.Write()
}
func (mock *PrivacyMock) createPublic2PrivacyTx(req *types.ReqCreateTransaction) *types.Transaction {
func (mock *PrivacyMock) createPublic2PrivacyTx(req *ty.ReqCreatePrivacyTx) *types.Transaction {
viewPubSlice, spendPubSlice, err := parseViewSpendPubKeyPair(req.GetPubkeypair())
if err != nil {
return nil
......
......@@ -375,7 +375,7 @@ func Test_CreateTransaction(t *testing.T) {
mock.setBlockChainHeight(10020)
testCases := []struct {
req *types.ReqCreateTransaction
req *ty.ReqCreatePrivacyTx
needReply *types.Transaction
needError error
}{
......@@ -383,7 +383,7 @@ func Test_CreateTransaction(t *testing.T) {
needError: types.ErrInvalidParam,
},
{ // 公对私测试
req: &types.ReqCreateTransaction{
req: &ty.ReqCreatePrivacyTx{
Tokenname: types.BTY,
Type: 1,
Amount: 100 * types.Coin,
......@@ -393,7 +393,7 @@ func Test_CreateTransaction(t *testing.T) {
//needError:types.ErrAddrNotExist,
},
{ // 私对私测试
req: &types.ReqCreateTransaction{
req: &ty.ReqCreatePrivacyTx{
Tokenname: types.BTY,
Type: 2,
Amount: 10 * types.Coin,
......@@ -403,7 +403,7 @@ func Test_CreateTransaction(t *testing.T) {
needError: types.ErrAddrNotExist,
},
{ // 私对公测试
req: &types.ReqCreateTransaction{
req: &ty.ReqCreatePrivacyTx{
Tokenname: types.BTY,
Type: 3,
Amount: 10 * types.Coin,
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment