]> git.stg.codes - stg.git/blobdiff - stglibs/srvconf.lib/parsers/chg_tariff.cpp
Ticket. if(!data.tariffConf.changePolicyTimeout.empty()) construction
[stg.git] / stglibs / srvconf.lib / parsers / chg_tariff.cpp
index 8a1c56a414db3a444cb9596a0c046e1863561f5e..ca4ceb956d95fa0ef1012d4fd8f3b0fa8be52581 100644 (file)
@@ -55,9 +55,9 @@ std::string CHG_TARIFF::Serialize(const TARIFF_DATA_RES & data, const std::strin
 {
 std::ostringstream stream;
 
-appendResetable(stream, "fee", data.tariffConf.fee);
-appendResetable(stream, "passiveCost", data.tariffConf.passiveCost);
-appendResetable(stream, "free", data.tariffConf.free);
+appendResetableTag(stream, "fee", data.tariffConf.fee);
+appendResetableTag(stream, "passiveCost", data.tariffConf.passiveCost);
+appendResetableTag(stream, "free", data.tariffConf.free);
 
 if (!data.tariffConf.traffType.empty())
     stream << "<traffType value=\"" + TARIFF::TraffTypeToString(data.tariffConf.traffType.data()) + "\"/>";
@@ -69,6 +69,18 @@ if (!data.tariffConf.period.empty())
         case TARIFF::MONTH: stream << "<period value=\"month\"/>"; break;
         }
 
+if (!data.tariffConf.changePolicy.empty())
+    switch (data.tariffConf.changePolicy.data())
+        {
+        case TARIFF::ALLOW: stream << "<changePolicy value=\"allow\"/>"; break;
+        case TARIFF::TO_CHEAP: stream << "<changePolicy value=\"to_cheap\"/>"; break;
+        case TARIFF::TO_EXPENSIVE: stream << "<changePolicy value=\"to_expensive\"/>"; break;
+        case TARIFF::DENY: stream << "<changePolicy value=\"deny\"/>"; break;
+        }
+
+if (!data.tariffConf.changePolicyTimeout.empty())
+    stream << "<changePolicyTimeout value=\"" + formatTime(data.tariffConf.changePolicyTimeout.data()) + "\"/>";
+
 for (size_t i = 0; i < DIR_NUM; ++i)
     if (!data.dirPrice[i].hDay.empty() &&
         !data.dirPrice[i].mDay.empty() &&