Остались только сетчики и проверить оплату банковской картой

This commit is contained in:
Dmitriy 2025-05-16 01:19:43 +03:00
parent fb903130dc
commit 6e230142d1
9 changed files with 2149 additions and 2040 deletions

View File

@ -477,10 +477,12 @@ int PayTypeTermEnabled(void)
///
int PayTypeCashEnabled(void)
{
CPU_INT32U validator_en, coin_en;
CPU_INT32U validator_en, coin_en, abonement_en;
GetData(&EnableValidatorDesc, &validator_en, 0, DATA_FLAG_SYSTEM_INDEX);
GetData(&EnableCoinDesc, &coin_en, 0, DATA_FLAG_SYSTEM_INDEX);
return validator_en | coin_en;
GetData(&EnableAbonementDesc, &abonement_en, 0, DATA_FLAG_SYSTEM_INDEX);
return validator_en | coin_en | abonement_en;
}
///
@ -827,15 +829,46 @@ void AppVladEventProcess(CPU_INT32U event)
mifaredata_t* data = get_mifare_data();
uint32_t pay = 0, bonus = 0, best_before = 0;
uint32_t counter_money = 0, counter_bonus = 0, counter_runs = 0;
uint32_t counter_money_sum = 0, counter_bonus_sum = 0, counter_runs_sum = 0;
uint32_t all_counter_money = 0;
GetData(&AbonementMoneyDesc, &pay, app_state.current_abonement, DATA_FLAG_DIRECT_INDEX);
GetData(&AbonementBonusDesc, &bonus, app_state.current_abonement, DATA_FLAG_DIRECT_INDEX);
GetData(&AbonementBestBeforeDesc, &best_before, app_state.current_abonement, DATA_FLAG_DIRECT_INDEX);
GetData(&CounterMoneyAbonementDesc, &counter_money, app_state.current_abonement, DATA_FLAG_DIRECT_INDEX);
GetData(&CounterBonusAbonementDesc, &counter_bonus, app_state.current_abonement, DATA_FLAG_DIRECT_INDEX);
GetData(&CounterRunsAbonementDesc, &counter_runs, app_state.current_abonement, DATA_FLAG_DIRECT_INDEX);
GetData(&CounterMoneyAbonementDesc, &counter_money_sum, 2, DATA_FLAG_DIRECT_INDEX);
GetData(&CounterBonusAbonementDesc, &counter_bonus_sum, 2, DATA_FLAG_DIRECT_INDEX);
GetData(&CounterRunsAbonementDesc, &counter_runs_sum, 2, DATA_FLAG_DIRECT_INDEX);
GetData(&CounterAbonementMoneyDesc, &all_counter_money, 0, DATA_FLAG_DIRECT_INDEX);
counter_money += pay;
counter_bonus += bonus;
counter_runs++;
counter_money_sum += pay;
counter_bonus_sum += bonus;
counter_runs_sum++;
all_counter_money += pay;
SetData(&CounterMoneyAbonementDesc, &counter_money, app_state.current_abonement, DATA_FLAG_DIRECT_INDEX);
SetData(&CounterBonusAbonementDesc, &counter_bonus, app_state.current_abonement, DATA_FLAG_DIRECT_INDEX);
SetData(&CounterRunsAbonementDesc, &counter_runs, app_state.current_abonement, DATA_FLAG_DIRECT_INDEX);
SetData(&CounterMoneyAbonementDesc, &counter_money_sum, 2, DATA_FLAG_DIRECT_INDEX);
SetData(&CounterBonusAbonementDesc, &counter_bonus_sum, 2, DATA_FLAG_DIRECT_INDEX);
SetData(&CounterRunsAbonementDesc, &counter_runs_sum, 2, DATA_FLAG_DIRECT_INDEX);
SetData(&CounterAbonementMoneyDesc, &all_counter_money, 0, DATA_FLAG_DIRECT_INDEX);
uint32_t SystemTime = GetTimeSec() + best_before * 24L * 60L;
data->money += pay;
data->bonus += bonus;
data->bonus = bonus;
data->best_before = SystemTime;
if(!write_mifare_card())
@ -1058,10 +1091,10 @@ void AppVladEventProcess(CPU_INT32U event)
RefreshMenu();
// temporally
SetAcceptedMoney(app_state.abonementtopay);
SaveEventRecord(app_state.current_abonement, JOURNAL_EVENT_CARD_ACCEPTED, app_state.abonementtopay);
app_state.user_menu = USER_MENU_INSERT_BONUS_CARD;
PostUserEvent(EVENT_FINISH_PAYMENT_ABONEMENT);
//SetAcceptedMoney(app_state.abonementtopay);
//SaveEventRecord(app_state.current_abonement, JOURNAL_EVENT_CARD_ACCEPTED, app_state.abonementtopay);
//app_state.user_menu = USER_MENU_INSERT_BONUS_CARD;
//PostUserEvent(EVENT_FINISH_PAYMENT_ABONEMENT);
}
}
else if (app_state.user_menu == USER_MENU_SHOW_THANKS)
@ -1562,8 +1595,8 @@ void AppVladEventProcess(CPU_INT32U event)
break;
case EVENT_FINISH_PAYMENT_ABONEMENT:
{
CPU_INT32U price, accmoney;
CPU_INT32U min_time;
//CPU_INT32U price, accmoney;
//CPU_INT32U min_time;
if (app_state.user_menu != USER_MENU_INSERT_BONUS_CARD)
{
@ -1689,7 +1722,7 @@ void AppVladEventProcess(CPU_INT32U event)
{
if (AppCanStart())
{
app_state.current_abonement = (app_state.current_abonement + 1) & 0x03;
app_state.current_abonement = (app_state.current_abonement + 1) & 0x01;
PrintMenuAllPrice(app_state.blink_ctr >= 500);
RefreshMenu();
}
@ -1749,7 +1782,7 @@ void AppVladEventProcess(CPU_INT32U event)
{
if (AppCanStart())
{
app_state.current_abonement = (app_state.current_abonement + 1) & 0x03;
app_state.current_abonement = (app_state.current_abonement + 1) & 0x01;
PrintMenuAllPrice(app_state.blink_ctr >= 500);
RefreshMenu();
}
@ -2338,8 +2371,8 @@ void PrintMenuAllPrice(CPU_INT08U blink)
char str[32];
uint32_t pay_silver = 0, bonus_silver = 0;
uint32_t pay_gold = 0, bonus_gold = 0;
uint32_t pay_plat = 0, bonus_plat = 0;
uint32_t pay_diamond = 0, bonus_diamond = 0;
//uint32_t pay_plat = 0, bonus_plat = 0;
//uint32_t pay_diamond = 0, bonus_diamond = 0;
GetData(&AbonementMoneyDesc, &pay_silver, 0, DATA_FLAG_DIRECT_INDEX);
GetData(&AbonementBonusDesc, &bonus_silver, 0, DATA_FLAG_DIRECT_INDEX);
@ -2347,11 +2380,11 @@ void PrintMenuAllPrice(CPU_INT08U blink)
GetData(&AbonementMoneyDesc, &pay_gold, 1, DATA_FLAG_DIRECT_INDEX);
GetData(&AbonementBonusDesc, &bonus_gold, 1, DATA_FLAG_DIRECT_INDEX);
GetData(&AbonementMoneyDesc, &pay_plat, 2, DATA_FLAG_DIRECT_INDEX);
GetData(&AbonementBonusDesc, &bonus_plat, 2, DATA_FLAG_DIRECT_INDEX);
//GetData(&AbonementMoneyDesc, &pay_plat, 2, DATA_FLAG_DIRECT_INDEX);
//GetData(&AbonementBonusDesc, &bonus_plat, 2, DATA_FLAG_DIRECT_INDEX);
GetData(&AbonementMoneyDesc, &pay_diamond, 3, DATA_FLAG_DIRECT_INDEX);
GetData(&AbonementBonusDesc, &bonus_diamond, 3, DATA_FLAG_DIRECT_INDEX);
//GetData(&AbonementMoneyDesc, &pay_diamond, 3, DATA_FLAG_DIRECT_INDEX);
//GetData(&AbonementBonusDesc, &bonus_diamond, 3, DATA_FLAG_DIRECT_INDEX);
if(app_state.current_abonement == SILVER_ABONEMENT)
{
@ -2359,19 +2392,19 @@ void PrintMenuAllPrice(CPU_INT08U blink)
PrintUserMenuStr(" ", 0);
sprintf(str, "ÇÎËÎÒ-%d ð %d áîí", pay_gold, bonus_gold);
PrintUserMenuStr(str, 1);
sprintf(str, "ÏËÀÒ.-%d ð %d áîí", pay_plat, bonus_plat);
PrintUserMenuStr(str, 2);
sprintf(str, "ÀËÌÀÇ-%d ð %d áîí", pay_diamond, bonus_diamond);
PrintUserMenuStr(str, 3);
//sprintf(str, "ÏËÀÒ.-%d ð %d áîí", pay_plat, bonus_plat);
//PrintUserMenuStr(str, 2);
//sprintf(str, "ÀËÌÀÇ-%d ð %d áîí", pay_diamond, bonus_diamond);
//PrintUserMenuStr(str, 3);
} else {
sprintf(str, "ÑÅÐÅÁ-%d ð %d áîí", pay_silver, bonus_silver);
PrintUserMenuStr(str, 0);
sprintf(str, "ÇÎËÎÒ-%d ð %d áîí", pay_gold, bonus_gold);
PrintUserMenuStr(str, 1);
sprintf(str, "ÏËÀÒ.-%d ð %d áîí", pay_plat, bonus_plat);
PrintUserMenuStr(str, 2);
sprintf(str, "ÀËÌÀÇ-%d ð %d áîí", pay_diamond, bonus_diamond);
PrintUserMenuStr(str, 3);
//sprintf(str, "ÏËÀÒ.-%d ð %d áîí", pay_plat, bonus_plat);
//PrintUserMenuStr(str, 2);
//sprintf(str, "ÀËÌÀÇ-%d ð %d áîí", pay_diamond, bonus_diamond);
//PrintUserMenuStr(str, 3);
}
}
else if(app_state.current_abonement == GOLD_ABONEMENT)
@ -2380,23 +2413,23 @@ void PrintMenuAllPrice(CPU_INT08U blink)
sprintf(str, "ÑÅÐÅÁ-%d ð %d áîí", pay_silver, bonus_silver);
PrintUserMenuStr(str, 0);
PrintUserMenuStr(" ", 1);
sprintf(str, "ÏËÀÒ.-%d ð %d áîí", pay_plat, bonus_plat);
PrintUserMenuStr(str, 2);
sprintf(str, "ÀËÌÀÇ-%d ð %d áîí", pay_diamond, bonus_diamond);
PrintUserMenuStr(str, 3);
//PrintUserMenuStr(" ", 1);
//sprintf(str, "ÏËÀÒ.-%d ð %d áîí", pay_plat, bonus_plat);
//PrintUserMenuStr(str, 2);
//sprintf(str, "ÀËÌÀÇ-%d ð %d áîí", pay_diamond, bonus_diamond);
//PrintUserMenuStr(str, 3);
} else {
sprintf(str, "ÑÅÐÅÁ-%d ð %d áîí", pay_silver, bonus_silver);
PrintUserMenuStr(str, 0);
sprintf(str, "ÇÎËÎÒ-%d ð %d áîí", pay_gold, bonus_gold);
PrintUserMenuStr(str, 1);
sprintf(str, "ÏËÀÒ.-%d ð %d áîí", pay_plat, bonus_plat);
PrintUserMenuStr(str, 2);
sprintf(str, "ÀËÌÀÇ-%d ð %d áîí", pay_diamond, bonus_diamond);
PrintUserMenuStr(str, 3);
//sprintf(str, "ÏËÀÒ.-%d ð %d áîí", pay_plat, bonus_plat);
//PrintUserMenuStr(str, 2);
//sprintf(str, "ÀËÌÀÇ-%d ð %d áîí", pay_diamond, bonus_diamond);
//PrintUserMenuStr(str, 3);
}
}
else if(app_state.current_abonement == PLATINUM_ABONEMENT)
/*else if(app_state.current_abonement == PLATINUM_ABONEMENT)
{
if(blink) {
sprintf(str, "ÑÅÐÅÁ-%d ð %d áîí", pay_silver, bonus_silver);
@ -2439,7 +2472,7 @@ void PrintMenuAllPrice(CPU_INT08U blink)
sprintf(str, "ÀËÌÀÇ-%d ð %d áîí", pay_diamond, bonus_diamond);
PrintUserMenuStr(str, 3);
}
}
}*/
}
void PrintSilverMenu(void)

View File

@ -665,6 +665,35 @@ TDataDescStruct const EnableCoinDesc = {
0
};
/*************************************
Âêëþ÷åíèå àáîíåìåíòà
*************************************/
TRangeValueULONG const EnableAbonementRange = {0, 1};
CPU_INT08U const EnableAbonementName[] = "Àáîíåìåíò";
CPU_INT08U const *EnableAbonementList[] = {OnOffList_str0, OnOffList_str1};
void OnchangeEnableAbonement(void)
{
}
TDataDescStruct const EnableAbonementDesc = {
DATA_DESC_EDIT, // òèï äåñêðèïòîðà
DATA_TYPE_ULONG, // òèï ïàðàìåòðà
DATA_LOC_FRAM, // ðàñïîëîæåíèå ïàðàìåòðà
DATA_NO_ARRAY, // ïðèçíàê ìàññèâà
0, // ðàçìåð ìàññèâà
0, // óêàçàòåëü íà äåñêðèïòîð èíäåêñà ìàññèâà
(void*)offsetof(TFramMap, DeviceConfig.EnableAbonementAcceptor), // óêàçàòåëü íà ïåðåìåííóþ èëè àäðåñ FRAM
(void*)&EnableAbonementRange, // óêàçàòåëü íà ãðàíèöû ïàðàìåòðà
OnchangeEnableAbonement, // ôóíêöèÿ ïî èçìåíåíèþ
sizeof(CPU_INT32U), // ñìåùåíèå ìåæäó ýëåìåíòàìè â ìàññèâå
EnableAbonementName, // óêàçàòåëü íà ñòðîêó íàçâàíèÿ ïàðàìåòðà
DATA_IS_INDEX, // ïðèçíàê èíäåêñíîãî ïàðàìåòðà (ñïèñîê ñòðîê)
EnableAbonementList, // óêàçàòåëü íà ñïèñîê ñòðîê äëÿ èíäåêñíîãî ïàðàìåòðà
DATA_INIT_DISABLE,
0
};
/*************************************
Öåíà èìïóëüñà ìîíåòîïðèåìíèêà
*************************************/
@ -1540,6 +1569,19 @@ void OnChangeInitByDefault(void)
temp32 = 2;
SetData(&SolarControlChannelDesc, &temp32, 2, DATA_FLAG_DIRECT_INDEX);
temp32 = 3000;
SetData(&AbonementMoneyDesc, &temp32, 0, DATA_FLAG_DIRECT_INDEX);
temp32 = 600;
SetData(&AbonementBonusDesc, &temp32, 0, DATA_FLAG_DIRECT_INDEX);
temp32 = 45;
SetData(&AbonementBestBeforeDesc, &temp32, 0, DATA_FLAG_DIRECT_INDEX);
temp32 = 6000;
SetData(&AbonementMoneyDesc, &temp32, 1, DATA_FLAG_DIRECT_INDEX);
temp32 = 1800;
SetData(&AbonementBonusDesc, &temp32, 1, DATA_FLAG_DIRECT_INDEX);
temp32 = 90;
SetData(&AbonementBestBeforeDesc, &temp32, 1, DATA_FLAG_DIRECT_INDEX);
#endif
@ -4979,7 +5021,7 @@ CPU_INT08U const AbonementIndexHour_str0[] = "
CPU_INT08U const AbonementIndexHour_str1[] = "ÇÎËÎÒÎé";
CPU_INT08U const AbonementIndexHour_str2[] = "ÏËÀÒÈÍÎÂÛé";
CPU_INT08U const AbonementIndexHour_str3[] = "ÀËÌÀÇÍÛé";
CPU_INT08U const *AbonementIndexHourList[] = {AbonementIndexHour_str0, AbonementIndexHour_str1, AbonementIndexHour_str2, AbonementIndexHour_str3};
CPU_INT08U const *AbonementIndexHourList[] = {AbonementIndexHour_str0, AbonementIndexHour_str1/*, AbonementIndexHour_str2, AbonementIndexHour_str3*/};
CPU_INT32U abonement_index;
@ -5014,7 +5056,7 @@ TDataDescStruct const AbonementMoneyDesc = {
DATA_TYPE_ULONG, // òèï ïàðàìåòðà
DATA_LOC_FRAM, // ðàñïîëîæåíèå ïàðàìåòðà
DATA_IS_ARRAY, // ïðèçíàê ìàññèâà
4, // ðàçìåð ìàññèâà
2, // ðàçìåð ìàññèâà
&AbonementIndexDesc, // óêàçàòåëü íà äåñêðèïòîð èíäåêñà ìàññèâà
(void*)offsetof(TFramMap, AbonementMoney), // óêàçàòåëü íà ïåðåìåííóþ èëè àäðåñ FRAM
(void*)&AbonementMoneyRange, // óêàçàòåëü íà ãðàíèöû ïàðàìåòðà
@ -5037,7 +5079,7 @@ CPU_INT08U const AbonementIndex_str1[] = "
CPU_INT08U const AbonementIndex_str2[] = "ÏËÀÒÈÍÎÂÛé";
CPU_INT08U const AbonementIndex_str3[] = "ÀËÌÀÇÍÛé";
CPU_INT08U const AbonementIndex_str4[] = "ÈÒÎÃÎ";
CPU_INT08U const *AbonementIndexList[] = {AbonementIndex_str0, AbonementIndex_str1, AbonementIndex_str2, AbonementIndex_str3, AbonementIndex_str4};
CPU_INT08U const *AbonementIndexList[] = {AbonementIndex_str0, AbonementIndex_str1/*, AbonementIndex_str2, AbonementIndex_str3*/, AbonementIndex_str4};
TDataDescStruct const AbonementCounterIndexDesc = {
DATA_DESC_EDIT, // òèï äåñêðèïòîðà
@ -5069,7 +5111,7 @@ TDataDescStruct const CounterMoneyAbonementDesc = {
DATA_TYPE_ULONG, // òèï ïàðàìåòðà
DATA_LOC_FRAM, // ðàñïîëîæåíèå ïàðàìåòðà
DATA_IS_ARRAY, // ïðèçíàê ìàññèâà
4, // ðàçìåð ìàññèâà
3, // ðàçìåð ìàññèâà
&AbonementCounterIndexDesc, // óêàçàòåëü íà äåñêðèïòîð èíäåêñà ìàññèâà
(void*)offsetof(TFramMap, solar_counters.abonement[0].card_money), // óêàçàòåëü íà ïåðåìåííóþ èëè àäðåñ FRAM
NULL, // óêàçàòåëü íà ãðàíèöû ïàðàìåòðà
@ -5094,7 +5136,7 @@ TDataDescStruct const CounterBonusAbonementDesc = {
DATA_TYPE_ULONG, // òèï ïàðàìåòðà
DATA_LOC_FRAM, // ðàñïîëîæåíèå ïàðàìåòðà
DATA_IS_ARRAY, // ïðèçíàê ìàññèâà
4, // ðàçìåð ìàññèâà
3, // ðàçìåð ìàññèâà
&AbonementCounterIndexDesc, // óêàçàòåëü íà äåñêðèïòîð èíäåêñà ìàññèâà
(void*)offsetof(TFramMap, solar_counters.abonement[0].card_bonus), // óêàçàòåëü íà ïåðåìåííóþ èëè àäðåñ FRAM
NULL, // óêàçàòåëü íà ãðàíèöû ïàðàìåòðà
@ -5119,7 +5161,7 @@ TDataDescStruct const CounterRunsAbonementDesc = {
DATA_TYPE_ULONG, // òèï ïàðàìåòðà
DATA_LOC_FRAM, // ðàñïîëîæåíèå ïàðàìåòðà
DATA_IS_ARRAY, // ïðèçíàê ìàññèâà
4, // ðàçìåð ìàññèâà
3, // ðàçìåð ìàññèâà
&AbonementCounterIndexDesc, // óêàçàòåëü íà äåñêðèïòîð èíäåêñà ìàññèâà
(void*)offsetof(TFramMap, solar_counters.abonement[0].runs), // óêàçàòåëü íà ïåðåìåííóþ èëè àäðåñ FRAM
NULL, // óêàçàòåëü íà ãðàíèöû ïàðàìåòðà
@ -5143,7 +5185,7 @@ TDataDescStruct const AbonementBonusDesc = {
DATA_TYPE_ULONG, // òèï ïàðàìåòðà
DATA_LOC_FRAM, // ðàñïîëîæåíèå ïàðàìåòðà
DATA_IS_ARRAY, // ïðèçíàê ìàññèâà
4, // ðàçìåð ìàññèâà
2, // ðàçìåð ìàññèâà
&AbonementIndexDesc, // óêàçàòåëü íà äåñêðèïòîð èíäåêñà ìàññèâà
(void*)offsetof(TFramMap, AbonementBonus), // óêàçàòåëü íà ïåðåìåííóþ èëè àäðåñ FRAM
(void*)&AbonementBonusRange, // óêàçàòåëü íà ãðàíèöû ïàðàìåòðà
@ -5167,7 +5209,7 @@ TDataDescStruct const AbonementBestBeforeDesc = {
DATA_TYPE_ULONG, // òèï ïàðàìåòðà
DATA_LOC_FRAM, // ðàñïîëîæåíèå ïàðàìåòðà
DATA_IS_ARRAY, // ïðèçíàê ìàññèâà
4, // ðàçìåð ìàññèâà
2, // ðàçìåð ìàññèâà
&AbonementIndexDesc, // óêàçàòåëü íà äåñêðèïòîð èíäåêñà ìàññèâà
(void*)offsetof(TFramMap, AbonementBestBefore), // óêàçàòåëü íà ïåðåìåííóþ èëè àäðåñ FRAM
(void*)&AbonementBestBeforeRange, // óêàçàòåëü íà ãðàíèöû ïàðàìåòðà

View File

@ -76,6 +76,7 @@ typedef struct{
typedef struct{
CPU_INT32U EnableValidator;
CPU_INT32U EnableCoinAcceptor;
CPU_INT32U EnableAbonementAcceptor;
CPU_INT32U EnableModem;
CPU_INT32U EnableFiscal;
CPU_INT32U EnableFiscalDayClear;
@ -140,6 +141,7 @@ extern TDataDescStruct const T_End_WeekendDesc;
extern TDataDescStruct const EnableFiscalDesc;
extern TDataDescStruct const EnableCoinDesc;
extern TDataDescStruct const EnableAbonementDesc;
extern TDataDescStruct const EnableModemDesc;
extern TDataDescStruct const EnableValidatorDesc;
extern TDataDescStruct const CoinPerPulseDesc;

View File

@ -1199,6 +1199,7 @@ const CPU_INT08U str_DeviceMenu_6[] = "
#endif
#if defined(BOARD_SOLARIUM_VLAD)
const CPU_INT08U str_DeviceMenu_7[] = "Òàáëî";
const CPU_INT08U str_DeviceMenu_9[] = "Àáîíåìåíò";
#endif
#if defined(CONFIG_RELAY_ENABLE)
const CPU_INT08U str_DeviceMenu_8[] = "Ðåëå";
@ -1262,6 +1263,13 @@ const TMenuLine line_DeviceMenu_7 = {
(void*)str_DeviceMenu_7, // óêàçàòåëü íà òåêñòîâóþ ñòðîêó èëè äåñêðèïòîð
(void*)&ScoreSettingsPanel // ïàíåëü äëÿ ïåðåõîäà
};
const TMenuLine line_DeviceMenu_9 = {
MENU_LINE_GOTO_MENU, // òèï ïóíêòà ìåíþ
0, // äîï. ôëàãè
(void*)str_DeviceMenu_7, // óêàçàòåëü íà òåêñòîâóþ ñòðîêó èëè äåñêðèïòîð
(void*)&AbonementSetupPanel // ïàíåëü äëÿ ïåðåõîäà
};
#endif
#if defined(CONFIG_RELAY_ENABLE)
@ -1283,6 +1291,7 @@ const TMenuLineArray arr_DeviceMenuArray[] = {&line_DeviceMenu_0, &line_DeviceMe
#endif
#if defined(BOARD_SOLARIUM_VLAD)
&line_DeviceMenu_7,
&line_DeviceMenu_9,
#endif
#if defined(CONFIG_RELAY_ENABLE)
&line_DeviceMenu_8,
@ -1297,7 +1306,7 @@ const TMenuPanel DeviceMenuPanel[] = {arr_DeviceMenuArray, NULL,
+ 1
#endif
#if defined(BOARD_SOLARIUM_VLAD)
+ 1
+ 2
#endif
#if defined(CONFIG_RELAY_ENABLE)
+ 1
@ -1535,6 +1544,28 @@ const TMenuLine line_CoinMenu_5 = {
const TMenuLineArray arr_CoinMenuArray[] = {&line_CoinMenu_0, &line_CoinMenu_1, &line_CoinMenu_2, &line_CoinMenu_3, &line_CoinMenu_4, &line_CoinMenu_5, NULL};
const TMenuPanel CoinSetupPanel[] = {arr_CoinMenuArray, NULL, 6, MENU_PANEL_STANDARD};
/***********************************
ÌÅÍÞ ÍÀÑÒÐÎÉÊÀ ÌÎÍÅÒÎÏÐÈÅÌÍÈÊÀ
***********************************/
const CPU_INT08U str_AbonementMenuSet_0[] = "ÍÀÑÒÐÎéÊÈ ÌÎÍÅÒÎÏÐ.";
const TMenuLine line_AbonementMenuSet_0 = {
MENU_LINE_STRING, // òèï ïóíêòà ìåíþ
MENU_FIXED_LINE, // äîï. ôëàãè
(void*)str_AbonementMenuSet_0, // óêàçàòåëü íà òåêñòîâóþ ñòðîêó èëè äåñêðèïòîð
NULL // ïàíåëü äëÿ ïåðåõîäà
};
const TMenuLine line_AbonementMenuSet_1 = {
MENU_LINE_SHOW_DESC, // òèï ïóíêòà ìåíþ
0, // äîï. ôëàãè
(void*)&EnableCoinDesc, // óêàçàòåëü íà òåêñòîâóþ ñòðîêó èëè äåñêðèïòîð
NULL // ïàíåëü äëÿ ïåðåõîäà
};
const TMenuLineArray arr_AbonementMenuArray[] = {&line_AbonementMenuSet_0, &line_AbonementMenuSet_1, NULL};
const TMenuPanel AbonementSetupPanel[] = {arr_AbonementMenuArray, NULL, 2, MENU_PANEL_STANDARD};
/***********************************
ÌÅÍÞ ÍÀÑÒÐÎÉÊÀ ÌÎÄÅÌÀ
***********************************/
@ -2903,7 +2934,7 @@ void OnEnterAbonementMenu(void)
}
const TMenuLineArray arr_AbonementArray[] = {&line_AbonementMenu_0, &line_AbonementMenu_1, &line_AbonementMenu_2, &line_AbonementMenu_3, NULL};
const TMenuPanel AbonementMenuPanel[] = {arr_AbonementArray, OnEnterAbonementMenu, 3, MENU_PANEL_STANDARD};
const TMenuPanel AbonementMenuPanel[] = {arr_AbonementArray, OnEnterAbonementMenu, 4, MENU_PANEL_STANDARD};
/***********************************
ÌÅÍÞ ÑÊÈÄÊÈ ÏÎ ×ÀÑÀÌ

View File

@ -20,6 +20,7 @@ extern const TMenuPanel CommonCountersLongPanel[];
extern const TMenuPanel BillCountersPanel[];
extern const TMenuPanel ModemSetupPanel[];
extern const TMenuPanel CoinSetupPanel[];
extern const TMenuPanel AbonementSetupPanel[];
extern const TMenuPanel JournalIsReset[];
extern const TMenuPanel ClearJournalMenuPanel[];
extern const TMenuPanel StatIsReset[];

View File

@ -263,7 +263,7 @@
<item>app_state.user_menu</item>
<item>str</item>
<item>str1</item>
<item></item>
<item />
</expressions>
<col-names>
<item>Expression</item>

View File

@ -50,7 +50,7 @@
<MemConfigValue>C:\Program Files\IAR Systems\Embedded Workbench 9.0\arm\CONFIG\debugger\NXP\LPC2368.ddf</MemConfigValue>
</PlDriver>
<DebugChecksum>
<Checksum>2148628426</Checksum>
<Checksum>2586745689</Checksum>
</DebugChecksum>
<Exceptions>
<StopOnUncaught>_ 0</StopOnUncaught>
@ -65,12 +65,12 @@
</CallStack>
<JLinkDriver>
<WatchCond>_ 0</WatchCond>
<Watch0>_ 0 "0x00000000" 4294967295 "0xFFFFFFFF" 0 "0x00000000" 4294967295 "0xFFFFFFFF" 3 0 0 0</Watch0>
<Watch1>_ 0 "0x00000000" 4294967295 "0xFFFFFFFF" 0 "0x00000000" 4294967295 "0xFFFFFFFF" 3 0 0 0</Watch1>
<LeaveTargetRunning>_ 0</LeaveTargetRunning>
<CStepIntDis>_ 0</CStepIntDis>
<Watch0>_ 0 "" 0 "" 0 "" 0 "" 0 0 0 0</Watch0>
<Watch1>_ 0 "" 0 "" 0 "" 0 "" 0 0 0 0</Watch1>
<jlinkResetStyle>12</jlinkResetStyle>
<jlinkResetStrategy>0</jlinkResetStrategy>
<LeaveTargetRunning>_ 0</LeaveTargetRunning>
<CStepIntDis>_ 0</CStepIntDis>
</JLinkDriver>
<ArmDriver>
<EnableCache>0</EnableCache>
@ -85,19 +85,6 @@
<watch_formats>
<Fmt0>{W}1:app_state.user_menu 3 0</Fmt0>
</watch_formats>
<Trace2>
<Enabled>0</Enabled>
<ShowSource>0</ShowSource>
</Trace2>
<TermIOLog>
<LoggingEnabled>_ 0</LoggingEnabled>
<LogFile>_ ""</LogFile>
</TermIOLog>
<LogFile>
<LoggingEnabled>_ 0</LoggingEnabled>
<LogFile>_ ""</LogFile>
<Category>_ 0</Category>
</LogFile>
<DriverProfiling>
<Enabled>0</Enabled>
<Mode>1</Mode>
@ -110,6 +97,19 @@
<CallStackStripe>
<ShowTiming>1</ShowTiming>
</CallStackStripe>
<TermIOLog>
<LoggingEnabled>_ 0</LoggingEnabled>
<LogFile>_ ""</LogFile>
</TermIOLog>
<Trace2>
<Enabled>0</Enabled>
<ShowSource>0</ShowSource>
</Trace2>
<LogFile>
<LoggingEnabled>_ 0</LoggingEnabled>
<LogFile>_ ""</LogFile>
<Category>_ 0</Category>
</LogFile>
<DisassembleMode>
<mode>0</mode>
</DisassembleMode>

File diff suppressed because one or more lines are too long

File diff suppressed because it is too large Load Diff