diff --git a/chaincode/controller/bid/bid_controller.go b/chaincode/controller/bid/bid_controller.go index e1f1d3ae20ae3127d6b56483dda6be166300fbd9..beb64276c4eb64d734c00013e64bcc5b4cba2ee0 100644 --- a/chaincode/controller/bid/bid_controller.go +++ b/chaincode/controller/bid/bid_controller.go @@ -234,6 +234,10 @@ func (c BidDecisionController) _acceptBid(stub shared.LedgerBuildrStubInterface splitParams.SplitConfig.ChildCount = 2 splitParams.SplitConfig.BaseAsset.AssetType = biddableAsset.AssetType + // Don't add original bids to children + delete(biddableAsset.ArbitraryDataFields, "bids") + splitParams.SplitConfig.BaseAsset.ArbitraryDataFields = biddableAsset.ArbitraryDataFields + subAssets, err := split.SplitAsset(c.TraceblockBaseController, stub, biddableAsset, *splitParams) if err != nil { return nil, err @@ -242,8 +246,6 @@ func (c BidDecisionController) _acceptBid(stub shared.LedgerBuildrStubInterface newStock := subAssets[0] newStock.Quantity = biddableAsset.Quantity - bid.Quantity newStock.Units = biddableAsset.Units - newStock.ArbitraryDataFields = biddableAsset.ArbitraryDataFields - delete(newStock.ArbitraryDataFields, "bids") respNewStock:= c.SaveAbstractAsset(stub, &newStock) if respNewStock.Status != shared.OK { @@ -251,9 +253,9 @@ func (c BidDecisionController) _acceptBid(stub shared.LedgerBuildrStubInterface } soldStock = &subAssets[1] - soldStock.Quantity = bid.Quantity soldStock.Units = biddableAsset.Units + soldStock.Add("name", "Sold batch") } soldStock.ArbitraryDataFields["status"] = "sold" diff --git a/chaincode/controller/discard/controller.go b/chaincode/controller/discard/controller.go index d8e24d709fb639c37bbe7ceeca791196cc121c33..ec760fe3fa161eb1e3c419f0784260ec4500ec8e 100644 --- a/chaincode/controller/discard/controller.go +++ b/chaincode/controller/discard/controller.go @@ -103,18 +103,20 @@ func (c DiscardController) _discardAsset(stub shared.LedgerBuildrStubInterface, } discardedStock = &subAssets[1] - discardedStock.Quantity = params.Quantity discardedStock.Units = discardableAsset.Units + discardedStock.Add("name", " Discarded") } - discardedStock.ArbitraryDataFields["status"] = "discarded" - err := stats.RegisterDiscard(stub, discardedStock.Quantity, discardedStock.Units) if err != nil { return nil, err } + + discardedStock.Add("status", "discarded") + // Already marked as modified + discardedStock.MarkAsDeleted() respDiscarted := c.SaveAbstractAsset(stub, discardedStock) if respDiscarted.Status != shared.OK { return &respDiscarted, nil diff --git a/chaincode/go.mod b/chaincode/go.mod index 3a23efc67e8b821bae35aa20183f4f5d81128e59..a43b720a9d13e63d5a1ab2affc653aaf394ac3d9 100644 --- a/chaincode/go.mod +++ b/chaincode/go.mod @@ -4,7 +4,7 @@ go 1.15 require ( git.code.tecnalia.com/ledgerbuilder/sdk v1.4.1 - git.code.tecnalia.com/traceblock/sdk v1.0.1-0.20211202114544-efbebd83c1d2 + git.code.tecnalia.com/traceblock/sdk v1.0.1-0.20220308162114-1a900e794740 github.com/mitchellh/mapstructure v1.4.2 github.com/stretchr/testify v1.7.0 ) diff --git a/chaincode/go.sum b/chaincode/go.sum index fb602d22c38184ba53c579b4f0663dc2939fce72..b2ed95acb2b973d8fdfbe4cf11ec148e7e997b9a 100644 --- a/chaincode/go.sum +++ b/chaincode/go.sum @@ -1,8 +1,8 @@ cloud.google.com/go v0.26.0/go.mod h1:aQUYkXzVsufM+DwF1aE+0xfcU+56JwCaLick0ClmMTw= git.code.tecnalia.com/ledgerbuilder/sdk v1.4.1 h1:XK0VH1OWqv9G1XeTM3NMvuxJYTBFStSJ6FLlcp3lhO0= git.code.tecnalia.com/ledgerbuilder/sdk v1.4.1/go.mod h1:lzlMPHixE7XouwzF3UY21z40uQNxeBGhzmjd3KZk2cQ= -git.code.tecnalia.com/traceblock/sdk v1.0.1-0.20211202114544-efbebd83c1d2 h1:ttMw4p5mOZi3Qed7Y9c1bj7o4F6+9yegd0Q5ehPIQMI= -git.code.tecnalia.com/traceblock/sdk v1.0.1-0.20211202114544-efbebd83c1d2/go.mod h1:uzEfDKIa+Kb6FIRSQlD4bKcbUhvvXDZ3SKDVIl9COJA= +git.code.tecnalia.com/traceblock/sdk v1.0.1-0.20220308162114-1a900e794740 h1:cRE2qGRBJozlhpWMvTkvQ3soyjmciKE1w0OpX8C6JkI= +git.code.tecnalia.com/traceblock/sdk v1.0.1-0.20220308162114-1a900e794740/go.mod h1:1+VF+RqzmkMTqhqkvp8Z/t9/LONNr1vBoEkttT8oOVo= github.com/BurntSushi/toml v0.3.1/go.mod h1:xHWCNGjB5oqiDr8zfno3MHue2Ht5sIBksp03qcyfWMU= github.com/RoaringBitmap/roaring v0.5.1/go.mod h1:D0gp8kJQgE1A4LQ5wFLggQEyvDi06Mq5mKs52e1TwOo= github.com/armon/consul-api v0.0.0-20180202201655-eb2c6b5be1b6/go.mod h1:grANhF5doyWs3UAsr3K4I6qtAmlQcZDesFNEHPZAzj8=