X-Git-Url: https://git.stg.codes/stg.git/blobdiff_plain/83cd74d5ee7b06fcc8f7f15eec5520ccc1633679..26b7dcb329abea46e11695c4df61e54c9cf9fd6c:/projects/stargazer/plugins/store/firebird/firebird_store_tariffs.cpp diff --git a/projects/stargazer/plugins/store/firebird/firebird_store_tariffs.cpp b/projects/stargazer/plugins/store/firebird/firebird_store_tariffs.cpp index aebfdb88..6f8177ca 100644 --- a/projects/stargazer/plugins/store/firebird/firebird_store_tariffs.cpp +++ b/projects/stargazer/plugins/store/firebird/firebird_store_tariffs.cpp @@ -160,10 +160,12 @@ try if (schemaVersion > 0) query += ", period = ?"; if (schemaVersion > 1) - query += ", change_policy = ?"; + query += ", change_policy = ?, \ + change_policy_timeout = ?"; query += " where pk_tariff = ?"; + unsigned num = 5; st->Prepare(query); st->Set(1, td.tariffConf.fee); st->Set(2, td.tariffConf.free); @@ -171,11 +173,21 @@ try st->Set(4, td.tariffConf.traffType); if (schemaVersion > 0) + { st->Set(5, TARIFF::PeriodToString(td.tariffConf.period)); + ++num; + } + if (schemaVersion > 1) + { st->Set(6, TARIFF::ChangePolicyToString(td.tariffConf.changePolicy)); + IBPP::Timestamp policyTimeout; + time_t2ts(td.tariffConf.changePolicyTimeout, &policyTimeout); + st->Set(7, policyTimeout); + num += 2; + } - st->Set(7, id); + st->Set(num, id); st->Execute(); st->Close(); @@ -278,7 +290,6 @@ try st->Get(3, td->tariffConf.fee); st->Get(4, td->tariffConf.free); st->Get(5, td->tariffConf.passiveCost); - //st->Get(6, td->tariffConf.traffType); td->tariffConf.traffType = TARIFF::IntToTraffType(Get(st, 6)); if (schemaVersion > 0) td->tariffConf.period = TARIFF::StringToPeriod(Get(st, 7));