-
Notifications
You must be signed in to change notification settings - Fork 0
/
autozakaz.cpp
122 lines (101 loc) · 3.71 KB
/
autozakaz.cpp
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
#include "autozakaz.h"
#include "ui_autozakaz.h"
autozakaz::autozakaz(QWidget *parent) :
QWizard(parent),
ui(new Ui::autozakaz)
{
ui->setupUi(this);
line1 = qFindChild<QLineEdit*>(this, "lineEdit");
line2 = qFindChild<QLineEdit*>(this, "lineEdit_2");
line3 = qFindChild<QLineEdit*>(this, "lineEdit_3");
line4 = qFindChild<QLineEdit*>(this, "lineEdit_4");
line5 = qFindChild<QLineEdit*>(this, "lineEdit_5");
cal1 = qFindChild<QCalendarWidget*>(this, "calendarStart");
cal2 = qFindChild<QCalendarWidget*>(this, "calendarStop");
calPost = qFindChild<QCalendarWidget*>(this, "calendarPost");
ui_check_today_box = qFindChild<QCheckBox*>(this, "check_today_box");
cal1->setSelectedDate(QDate::currentDate().addDays(-4));
cal2->setSelectedDate(QDate::currentDate().addDays(4));
}
void autozakaz::set_config(autozakaz_config cfg) {
cal1->setSelectedDate(cfg.dateStart);
cal2->setSelectedDate(cfg.dateStop);
calPost->setSelectedDate(QDate::currentDate().addDays(1));
line1->setText(cfg.ostat_magazin);
line2->setText(cfg.ostat_sklad);
line3->setText(cfg.assort);
line4->setText(cfg.kol_v_korob);
line5->setText(cfg.korob_quantum);
//флаг "Проверять сегодняшние продажи"
// устанавливаем, если время больше 9:05 утра (типа магазин открылся)
QTime tm2 = QTime::currentTime();
QTime tm1 = QTime(9, 5);
ui_check_today_box->setChecked(tm2>tm1);
}
autozakaz_config autozakaz::get_config() {
autozakaz_config cfg;
cfg.dateStart = cal1->selectedDate();
cfg.dateStop = cal2->selectedDate();
cfg.datePost = calPost->selectedDate();
cfg.ostat_magazin = line1->text();
cfg.ostat_sklad = line2->text();
cfg.assort = line3->text();
cfg.kol_v_korob = line4->text();
cfg.korob_quantum = line5->text();
cfg.check_today_sell = ui_check_today_box->isChecked();
return cfg;
}
autozakaz::~autozakaz()
{
delete ui;
}
QString autozakaz::get_filter_file_name(QLineEdit *line) {
QString file = line->text();
QString txt = "";
QFileInfo fi(file);
if (fi.exists()) {
txt = file;
} else {
txt = QApplication::applicationDirPath();
}
QString fopen = QFileDialog::getOpenFileName(this, tr("Open filter settings"), txt, tr("Filter settings (*.fli)"));
if (fopen == "") {
return line->text();
}
return fopen;
}
void autozakaz::on_pushButton_clicked()
{
//выбор файла настроек фильтра остатков магазина
QString fileName = get_filter_file_name(line1);
line1->setText(fileName);
}
void autozakaz::on_pushButton_2_clicked()
{
//выбор файла настроек фильтра остатков товара на складе
QString fileName = get_filter_file_name(line2);
line2->setText(fileName);
}
void autozakaz::on_pushButton_3_clicked()
{
//выбор файла настроек фильтра обязательного ассортимента
QString fileName = get_filter_file_name(line3);
line3->setText(fileName);
}
void autozakaz::on_pushButton_4_clicked()
{
//выбор файла настроек фильтра количества товара в коробках
QString fileName = get_filter_file_name(line4);
line4->setText(fileName);
}
void autozakaz::on_pushButton_5_clicked()
{
//выбор файла настроек фильтра квантования коробок
QString fileName = get_filter_file_name(line5);
line5->setText(fileName);
}
int autozakaz::get_days_for_zakaz() {
QDate dt2 = cal2->selectedDate();
int days = QDate::currentDate().daysTo(dt2);
return days;
}