@@ -56,7 +56,10 @@ bool StopTransactionReqConverter::fromJson(const rapidjson::Value& json,
5656 extract (json, " meterStop" , data.meterStop );
5757 bool ret = extract (json, " timestamp" , data.timestamp , error_message);
5858 extract (json, " transactionId" , data.transactionId );
59- data.reason = ReasonHelper.fromString (json[" reason" ].GetString ());
59+ if (json.HasMember (" reason" ))
60+ {
61+ data.reason = ReasonHelper.fromString (json[" reason" ].GetString ());
62+ }
6063 if (json.HasMember (" transactionData" ))
6164 {
6265 const rapidjson::Value& transactionData = json[" transactionData" ];
@@ -83,7 +86,10 @@ bool StopTransactionReqConverter::toJson(const StopTransactionReq& data, rapidjs
8386 fill (json, " meterStop" , data.meterStop );
8487 fill (json, " timestamp" , data.timestamp );
8588 fill (json, " transactionId" , data.transactionId );
86- fill (json, " reason" , ReasonHelper.toString (data.reason ));
89+ if (data.reason .isSet ())
90+ {
91+ fill (json, " reason" , ReasonHelper.toString (data.reason ));
92+ }
8793 if (!data.transactionData .empty ())
8894 {
8995 rapidjson::Value transactionData (rapidjson::kArrayType );
0 commit comments