void Control::initTime() { QSqlQuery query; QDateTime start_date_time; query.exec("select min(DATE),min(TIME) from DATAS"); if(query.next()){ int min_date = query.value(0).toInt(); int min_time = query.value(1).toInt(); int year = min_date / 10000; int month = min_date % 10000 / 100; int day = min_date % 100; int h = min_time / 10000; QTime start_time(h,0); QDate start_date(2000 +year,month,day); start_date_time = QDateTime(start_date,start_time); } query.exec("select max(DATE),max(TIME) from DATAS"); QDateTime end_date_time; if(query.next()){ int max_date = query.value(0).toInt(); int max_time = query.value(1).toInt(); int year = max_date / 10000; int month = max_date % 10000 / 100; int day = max_date % 100; int h = max_time / 10000; QTime end_time(h,0); QDate end_date(2000 +year,month,day); end_date_time = QDateTime(end_date,end_time); } ui->startDateTimeEdit->setDisplayFormat("yyyy-M-d HH"); ui->endDateTimeEdit->setDisplayFormat("yyyy-M-d HH"); ui->startDateTimeEdit->setMinimumDateTime(start_date_time); ui->startDateTimeEdit->setMaximumDateTime(end_date_time); ui->endDateTimeEdit->setMinimumDateTime(start_date_time); ui->endDateTimeEdit->setMaximumDateTime(end_date_time); ui->startDateTimeEdit_2->setDisplayFormat("yyyy-M-d HH"); ui->endDateTimeEdit_2->setDisplayFormat("yyyy-M-d HH"); ui->startDateTimeEdit_2->setMinimumDateTime(start_date_time); ui->startDateTimeEdit_2->setMaximumDateTime(end_date_time); ui->endDateTimeEdit_2->setMinimumDateTime(start_date_time); ui->endDateTimeEdit_2->setMaximumDateTime(end_date_time); ui->startDateTimeEdit_3->setDisplayFormat("yyyy-M-d HH"); ui->endDateTimeEdit_3->setDisplayFormat("yyyy-M-d HH"); ui->startDateTimeEdit_3->setMinimumDateTime(start_date_time); ui->startDateTimeEdit_3->setMaximumDateTime(end_date_time); ui->endDateTimeEdit_3->setMinimumDateTime(start_date_time); ui->endDateTimeEdit_3->setMaximumDateTime(end_date_time); ui->startDateTimeEdit_4->setDisplayFormat("yyyy-M-d HH"); ui->endDateTimeEdit_4->setDisplayFormat("yyyy-M-d HH"); ui->startDateTimeEdit_4->setMinimumDateTime(start_date_time); ui->startDateTimeEdit_4->setMaximumDateTime(end_date_time); ui->endDateTimeEdit_4->setMinimumDateTime(start_date_time); ui->endDateTimeEdit_4->setMaximumDateTime(end_date_time); }
int Chain::Chain_Data::last_day_weekday() const { return end_date().dayOfWeek(); }
int Chain::Chain_Data::weekdays_after_end() const { return 7 - end_date().dayOfWeek(); }