Хранилища Subversion OpenInventory

Редакция

Редакция 14 | К новейшей редакции | Содержимое файла | Сравнить с предыдущей | Последнее изменение | Открыть журнал | RSS

Редакция Автор № строки Строка
6 pingvin 1
#include "mainwindowimpl.h"
2
//
3
MainWindowImpl::MainWindowImpl( QWidget * parent, Qt::WFlags f)
4
        : QMainWindow(parent, f)
5
{
6
 
7
 
8
 
9
        setupUi(this);
10
        fEnable_component_add = false; //    
11
        fEnable_naznachit_otvetstv = false;
12
        curr_task = no_task;
13
        readSettings();
14
        lineEdit->insert(baseName);
15
        metaDataAction = new QAction(tr(""), treeWidget);
16
        addMemoryAction = new QAction(tr("  "), treeWidget);
17
        MB_na_skladAction = new QAction(tr("  "), treeWidget);
18
        new_sotrydnikAction = new QAction(tr(" "), treeWidget);
19
        novoe_oborydovanieAction = new QAction(tr(" "), treeWidget);
20
        pereimenovat_otdelAction = new QAction(tr(" "), treeWidget);
21
        perevesti_sotrydnika_v_drygo1_otdelAction = new QAction(tr("   "), treeWidget);
22
        yvolit_sotrydnikaAction = new QAction(tr(" "), treeWidget);
23
        SpliterAction = new QAction(tr(""), treeWidget);
24
        naznachit_otvetstvennim_za_oborydovanieAction = new QAction(tr("   "), treeWidget);
25
        ystanovit_novie_complektyushieAction = new QAction(tr("  "), treeWidget);
26
        sozdat_otdelAction = new QAction(tr("  "), treeWidget);
27
 
28
        novaya_SYSTEM_BLOCK_na_skladAction = new QAction(tr("     "), treeWidget);
29
        novaya_MB_na_skladAction = new QAction(tr("     "), treeWidget);
30
        novaya_RAM_na_skladAction = new QAction(tr("     "),  treeWidget);
31
        novaya_CPU_na_skladAction = new QAction(tr("    "),  treeWidget);
32
        novaya_HDD_na_skladAction = new QAction(tr("    "),  treeWidget);
33
        novaya_CD_DVD_na_skladAction = new QAction(tr("    "),  treeWidget);
34
        novaya_VIDEO_na_skladAction = new QAction(tr("    "),  treeWidget);
35
        novaya_SoundCard_na_skladAction = new QAction(tr("     "),  treeWidget);
36
        novaya_LAN_na_skladAction = new QAction(tr("     "),  treeWidget);
37
        peredat_sys_block_pod_otveystvennostAction = new QAction(tr("     "),  treeWidget);
38
 
39
 
40
//      novaya_SoundCard_na_skladAction = new QAction(tr("     "),  treeWidget);
41
//      novaya_LAN_na_skladAction = new QAction(tr("     "),  treeWidget);
42
 
43
        insert_MB_to_system_blockAction = new QAction(tr("   "), treeWidget);
44
 
45
        treeWidget->addAction(metaDataAction);
46
        treeWidget->addAction(addMemoryAction);
47
 
48
 
49
        connect(insert_MB_to_system_blockAction, SIGNAL(triggered()), SLOT(insert_MB_to_system_block()));
50
        connect(novaya_MB_na_skladAction, SIGNAL(triggered()), SLOT(novaya_MB_na_sklad()));
51
        connect(novaya_RAM_na_skladAction, SIGNAL(triggered()), SLOT(novaya_RAM_na_sklad()));
52
        connect(novaya_CPU_na_skladAction, SIGNAL(triggered()), SLOT(novaya_CPU_na_sklad()));
53
        connect(novaya_HDD_na_skladAction, SIGNAL(triggered()), SLOT(novaya_HDD_na_sklad()));
54
        connect(novaya_CD_DVD_na_skladAction, SIGNAL(triggered()), SLOT(novaya_CD_DVD_na_sklad()));
55
        connect(novaya_VIDEO_na_skladAction, SIGNAL(triggered()), SLOT(novaya_VIDEO_na_sklad()));
56
        connect(novaya_SoundCard_na_skladAction, SIGNAL(triggered()), SLOT(novaya_SoundCard_na_sklad()));
57
        connect(novaya_LAN_na_skladAction, SIGNAL(triggered()), SLOT(novaya_LAN_na_sklad()));
58
        connect(novaya_SYSTEM_BLOCK_na_skladAction, SIGNAL(triggered()), SLOT(novaya_SYSTEM_BLOCK_na_sklad()));
59
 
60
        connect(peredat_sys_block_pod_otveystvennostAction, SIGNAL(triggered()), SLOT(peredat_sys_block_pod_otveystvennost()));
61
 
62
        connect(sozdat_otdelAction, SIGNAL(triggered()), SLOT(addNewOtdel()));
63
 
64
 
65
        connect(metaDataAction, SIGNAL(triggered()), SLOT(editTreeWidget()));
66
        connect(addMemoryAction, SIGNAL(triggered()), SLOT(addNewMemory()));
67
        connect(MB_na_skladAction, SIGNAL(triggered()), SLOT(move_to_sklad()));
68
        connect(new_sotrydnikAction, SIGNAL(triggered()), SLOT(new_sotrydnik()));
69
        connect(novoe_oborydovanieAction, SIGNAL(triggered()), SLOT(novoe_oborydovanie()));
70
        connect(pereimenovat_otdelAction, SIGNAL(triggered()), SLOT(pereimenovft_otdel()));
71
        connect(yvolit_sotrydnikaAction, SIGNAL(triggered()), SLOT(yvolit_sotrydnika()));
72
        connect(naznachit_otvetstvennim_za_oborydovanieAction, SIGNAL(triggered()), SLOT(naznachit_otvetstvennim_za_oborydovanie()));
73
        connect(ystanovit_novie_complektyushieAction, SIGNAL(triggered()), SLOT(ystanovit_novie_complektyushie()));
74
        treeWidget->setContextMenuPolicy(Qt::ActionsContextMenu);      
75
        connect(openBaseAct, SIGNAL(triggered()), this, SLOT(openBase()));
76
        connect(openMemoryTableAct, SIGNAL(triggered()), this, SLOT(openMemoryTable()));
77
        connect(getsettingAct, SIGNAL(triggered()), this, SLOT(getSetting()));
78
        connect(addStringAct, SIGNAL(triggered()), this, SLOT(addString()));
79
        connect(delStringAct, SIGNAL(triggered()), this, SLOT(delString()));
80
        connect(FiltrButton, SIGNAL(clicked()), this, SLOT(filter()));
81
        connect(hiddenButton, SIGNAL(clicked()), this, SLOT(hiddenRow()));
82
        connect(showButton, SIGNAL(clicked()), this, SLOT(showRow()));
83
        connect(appyButton, SIGNAL(clicked()), this, SLOT(dbUpdate()));
84
        connect(treeWidget, SIGNAL(itemActivated(QTreeWidgetItem *item, int column)), this, SLOT(dblClick(QTreeWidgetItem *item, int column)));
85
        connect(&addmemFrm, SIGNAL(componentAdd()), this, SLOT(refreshTree()));//   addmemFrm  treeWidget
86
        connect(&addotdelFrm, SIGNAL(componentAdd()), this, SLOT(refreshTree()));//   addotdelFrm  treeWidget
87
        connect(&addsotrydnikFrm, SIGNAL(componentAdd()), this, SLOT(refreshTree()));//   addsotFrm  treeWidget
88
        connect(&addsysblockFrm, SIGNAL(componentAdd()), this, SLOT(refreshTree()));//   addsysblockFrm  treeWidget
89
 
90
        connect(&addmemFrm, SIGNAL(formClose()), this, SLOT(on_addmemoryForm_formClose()));
91
        connect(&addotdelFrm, SIGNAL(formClose()), this, SLOT(on_addmemoryForm_formClose()));
92
        connect(&addsotrydnikFrm, SIGNAL(formClose()), this, SLOT(on_addmemoryForm_formClose()));
93
        connect(&addsysblockFrm, SIGNAL(formClose()), this, SLOT(on_addmemoryForm_formClose()));
94
 
95
        connect(&process, SIGNAL(readyReadStandardOutput()), this, SLOT(readStandartProcessOutput()));
96
 
97
        comp_icon.addFile("./pc.png");
98
/////   hdd_icon.addFile("./gnome-dev-harddisk.png");
99
        hdd_icon.addFile("./hdd5.png");
100
        memory_icon.addFile("./memory1.png");
101
        cd_dvd_icon.addFile("./cd_dvd3.png");
102
//      memory_icon.addFile("./gnome-dev-memory.png");
103
        matheboard_icon.addFile("./icon_motherboard.png");
104
        cpu_icon.addFile("./cpu3.png");
105
        vidio_card_icon.addFile("./vidiocard2.png");
106
        sound_card_icon.addFile("./soundcard1.png");
107
        lan_card_icon.addFile("./lan1.png");
108
        appyButton->setIcon(comp_icon);
14 pingvin 109
        wmiFrm.show();
6 pingvin 110
/////    for (int i = 0; i < 10; ++i)
111
/////     items.append(new QTreeWidgetItem((QTreeWidget*)0, QStringList(QString("item: %1").arg(i))));
112
/////    treeWidget->insertTopLevelItems(0, items);
113
//////items.append(new QTreeWidgetItem((QTreeWidget*)0, QStringList(QString(tr(": %1")).arg(0))));
114
/////////items.append(new QTreeWidgetItem((QTreeWidget*)0, QStringList(QString(tr(":")))));
115
/////////items.append(new QTreeWidgetItem((QTreeWidget*)0, QStringList(QString(tr(":")))));
116
/////////treeWidget->insertTopLevelItems(0, items);
117
 
118
//->itm = new QTreeWidgetItem(treeWidget);
119
//->itm->setText(0, tr(""));
120
/////////itm->setText(1, "hello1");
121
//->QTreeWidgetItem *itm1 = new QTreeWidgetItem(itm);
122
//->itm1->setText(1, tr("M1"));
123
//->QTreeWidgetItem *itm1_1 = new QTreeWidgetItem(itm1);
124
//->itm1_1->setText(2, tr(""));
125
//->QTreeWidgetItem *itm1_2 = new QTreeWidgetItem(itm1);
126
//->itm1_2->setText(2, tr(""));
127
 
128
//->QTreeWidgetItem *itm2 = new QTreeWidgetItem(itm);
129
//->itm2->setText(1, tr("M2"));
130
//////treeWidget->insertTopLevelItem(new QTreeWidgetItem((QTreeWidget*)0, QStringList(QString(tr(":")))));
131
}
132
 
133
MainWindowImpl::~MainWindowImpl()
134
{
135
        db.close();
16 pingvin 136
        delete pdb;
6 pingvin 137
//      delete setFrm;
138
}
139
 
140
 
141
void MainWindowImpl::delString()
142
{
143
        QModelIndex index;
144
        int column, row;
145
        QSqlRecord record;
146
        index=view.currentIndex();
147
        column=view.currentIndex().column();
148
        row=view.currentIndex().row();
149
        record = model->record(row);
150
        int UserNameIndex = record.indexOf(tr(""));
151
        QString ls_UserName=record.value(UserNameIndex).toString();
152
        model->removeRows(row, 1);
153
}
154
 
155
//
156
void MainWindowImpl::openBase()
157
{
158
        lineEdit->insert(tr("  "));
159
//      db = new QSqlDatabase("QMYSQL");
160
        db = QSqlDatabase::addDatabase("QMYSQL");
161
        pdb = &db;
162
        raportFrm.pdb = &db;
163
//      db->addDatabase("QMYSQL");
164
//db = QSqlDatabase::addDatabase("QSQLITE");
165
        pdb->setHostName(hostName);
166
        pdb->setDatabaseName(baseName);
167
        pdb->setUserName(userName);
168
        pdb->setPassword(password);
169
        bool ok = pdb->open();
170
        if (!ok) {
171
                                QMessageBox::critical( //     .
172
                                                                                this,                      //  .
173
                                                                                QObject::tr("Database Error"),   // .  
174
                                                                                pdb->lastError().text());          //  .
175
                         }
176
        if (ok)  
177
        {lineEdit-> insert(tr("  "));
178
        }
179
        else {lineEdit-> insert(tr(" .  : "));
180
                  lineEdit-> insert(pdb->lastError().text());
181
                 }
182
//      QSqlQuery q;
183
//      q.prepare(tr("set NAMES cp1251"));
184
 
185
//      ok = q.exec();
186
        model = new QSqlTableModel();
187
        model->setTable(tableName);
188
 
189
        model->setEditStrategy(QSqlTableModel::OnFieldChange);
190
//      model->setEditStrategy(QSqlTableModel::OnManualSubmit);
191
        model->setSort(0, Qt::AscendingOrder);
192
        model->select();
193
//      model->setHeaderData(0, Qt::Horizontal,
194
//                              QObject::tr("\n"));
195
//      model->setHeaderData(1, Qt::Horizontal,
196
//                             QObject::tr(""));
197
//      model->setHeaderData(2, Qt::Horizontal,
198
//                             QObject::tr("IP "));
199
//      model->setHeaderData(3, Qt::Horizontal,
200
//                             QObject::tr("\n"));
201
//      model->setHeaderData(4, Qt::Horizontal,
202
//                             QObject::tr("\n"));
203
//      view = new QTableView();
204
        view.setModel(model);
205
        view.setAlternatingRowColors(true);
206
//      view->resizeRowsToContents();
207
        view.resizeColumnsToContents();
208
        view.show();
209
        initTreeWidget();
210
}
211
 
212
void MainWindowImpl::openMemoryTable()
213
{
214
        memory_model = new QSqlTableModel();
215
        memory_model->setTable(tr(""));
216
//      memory_model->setTable(tableName);
217
        memory_model->setEditStrategy(QSqlTableModel::OnFieldChange);
218
//      model->setEditStrategy(QSqlTableModel::OnManualSubmit);
219
        memory_model->setSort(0, Qt::AscendingOrder);
220
        memory_model->select();
221
        tableView->setModel(memory_model);
222
        tableView->setAlternatingRowColors(true);
223
        tableView->resizeColumnsToContents();
224
        tableView->show();
225
/////   memory_view.setModel(memory_model);
226
/////   memory_view.setAlternatingRowColors(true);
227
//      view->resizeRowsToContents();
228
/////           memory_view.resizeColumnsToContents();
229
/////   memory_view.show();
230
}
231
 
232
 
233
void MainWindowImpl::applySetting()
234
{
235
        int i;
236
        i=5;
237
        lineEdit->insert(tr(" !"));
238
        baseName = setFrm->lineEdit->text();
239
        userName = setFrm->lineEdit_2->text();
240
        password = setFrm->lineEdit_3->text();
241
        tableName = setFrm->lineEdit_4->text();
242
        hostName = setFrm->lineEdit_5->text();
243
        i+=1;
244
        writeSettings();
245
        setFrm->close();
246
        delete setFrm;
247
}
248
 
249
void MainWindowImpl::writeSettings()
250
{
251
        QSettings settings("Trolltech", "Application Example");
252
        settings.setValue("baseName", baseName);
253
        settings.setValue("userName", userName);
254
        settings.setValue("password", password);
255
        settings.setValue("tableName", tableName);
256
        settings.setValue("hostName", hostName);
257
}
258
 
259
 
260
void MainWindowImpl::readSettings()
261
{
262
        QSettings settings("Trolltech", "Application Example");
263
        baseName = settings.value("baseName", "an_db").toString();
264
        userName = settings.value("userName", "an").toString();
265
        password = settings.value("password", "393939").toString();
266
        tableName = settings.value("tableName", "inventar").toString();
267
        hostName = settings.value("hostName", "server").toString();
268
//     resize(size);
269
//     move(pos);tableName
270
}
271
 
272
void MainWindowImpl::getSetting()
273
{
274
        setFrm = new settingForm;
275
        connect(setFrm->pushButton, SIGNAL(clicked()), this, SLOT(applySetting()));
276
        setFrm->lineEdit->setText(baseName);
277
        setFrm->lineEdit_2->setText(userName);
278
        setFrm->lineEdit_3->setText(password);
279
        setFrm->lineEdit_4->setText(tableName);
280
        setFrm->lineEdit_5->setText(hostName);
281
        setFrm->show();
282
 
283
 
284
 
285
}
286
 
287
 
288
void MainWindowImpl::addString()
289
{
290
        QString query_begin=(tr("INSERT INTO "));
291
//      QString query_end=(tr(" VALUES(' ',' ',' ',' ',default)"));
292
        QString query_end=(tr(" VALUES()"));
293
        query_begin.append(tableName);
294
        query_begin.append(query_end);
295
        QSqlQuery query;
296
        query.prepare(query_begin);
297
//      query.prepare(tr("INSERT INTO inventar VALUES(' ',' ',' ',' ',default)"));
298
//      query.bindValue(":tab", "inventar");
299
//       if (!query.execBatch())
300
//              qDebug() << query.lastError();
301
        query.exec();
302
        model->select();
303
//      view->close();
304
        view.setModel(model);
305
        //view->show();
306
        lineEdit->insert(tr(" !"));
307
}
308
 
309
//   
310
void MainWindowImpl::filter()
311
{
312
//      int i;
313
//      i++;
314
        model->setFilter(tr("=''"));
315
        model->select();
316
//      view->close();
317
        view.setModel(model);
318
}
319
//TEST CVS gh
320
void MainWindowImpl::hiddenRow()
321
{
322
        int n;
323
        for(n=0;n<20;n++) view.setRowHidden(n,true);
324
}
325
 
326
 
327
void MainWindowImpl::showRow()
328
{
329
        int n;
330
        for(n=0;n<20;n++) view.setRowHidden(n,false);
331
}
332
 
333
void MainWindowImpl::dbUpdate()
334
{
335
        model->submitAll();
336
        addString();
337
}
338
 
339
 
340
void  MainWindowImpl::novaya_MB_na_sklad(){
341
        addmemFrm.tabWidget->setCurrentIndex(3);
342
        addmemFrm.pushButton->setEnabled(true);
343
        addmemFrm.show();
344
        addmemFrm.label_7->setText(tr(" "));
345
        addNewMemory(tr(" "));
346
 
347
 
348
}
349
 
350
void  MainWindowImpl::novaya_HDD_na_sklad(){
351
        addmemFrm.tabWidget->setCurrentIndex(1);
352
        addmemFrm.pushButton->setEnabled(true);
353
        addmemFrm.show();
354
        addmemFrm.label_7->setText(tr(" "));
355
        addNewMemory(tr(" "));
356
 
357
 
358
}
359
 
360
 
361
void  MainWindowImpl::novaya_CD_DVD_na_sklad(){
362
        addmemFrm.tabWidget->setCurrentIndex(4);
363
        addmemFrm.pushButton->setEnabled(true);
364
        addmemFrm.show();
365
        addmemFrm.label_7->setText(tr(" "));
366
        addNewMemory(tr(" "));
367
 
368
 
369
}
370
 
371
void  MainWindowImpl::novaya_VIDEO_na_sklad(){
372
        addmemFrm.tabWidget->setCurrentIndex(5);
373
        addmemFrm.pushButton->setEnabled(true);
374
        addmemFrm.show();
375
        addmemFrm.label_7->setText(tr(" "));
376
        addNewMemory(tr(" "));
377
 
378
 
379
}
380
 
381
 
382
void  MainWindowImpl::novaya_RAM_na_sklad(){
383
        addmemFrm.tabWidget->setCurrentIndex(0);
384
        addmemFrm.pushButton->setEnabled(true);
385
        addmemFrm.show();
386
        addmemFrm.label_7->setText(tr(" "));
387
        addNewMemory(tr(" "));
388
 
389
 
390
}
391
 
392
 
393
void  MainWindowImpl::novaya_SoundCard_na_sklad(){
394
        addmemFrm.tabWidget->setCurrentIndex(6);
395
        addmemFrm.pushButton->setEnabled(true);
396
        addmemFrm.show();
397
        addmemFrm.label_7->setText(tr(" "));
398
        addNewMemory(tr(" "));
399
 
400
 
401
}
402
 
403
void  MainWindowImpl::novaya_LAN_na_sklad(){
404
        addmemFrm.tabWidget->setCurrentIndex(7);
405
        addmemFrm.pushButton->setEnabled(true);
406
        addmemFrm.show();
407
        addmemFrm.label_7->setText(tr(" "));
408
        addNewMemory(tr(" "));
409
}
410
 
411
 
412
 
413
 
414
void  MainWindowImpl::novaya_CPU_na_sklad(){
415
        addmemFrm.tabWidget->setCurrentIndex(2);
416
        addmemFrm.pushButton->setEnabled(true);
417
        addmemFrm.show();
418
        addmemFrm.label_7->setText(tr(" "));
419
        addNewMemory(tr(" "));
420
 
421
 
422
}
423
 
424
void  MainWindowImpl::peredat_sys_block_pod_otveystvennost(){
425
 
426
        QMessageBox::information( //     .
427
                                                                                this,                      //  .
428
                                                                                QObject::tr("  "),   // .  
429
//                                                                              db.lastError().text());          //  .
430
                                                                                tr("   (  ),      ."));
431
        fEnable_naznachit_otvetstv = true;
432
        curr_sys_block_id = treeWidget-> currentItem ()->text(12);
433
}
434
 
435
 
436
 
437
void MainWindowImpl::on_treeWidget_itemClicked(QTreeWidgetItem *item, int column)
438
{
439
        QString tmp;
440
        tmp = item->text(3);
441
        if (tmp !=""){
442
                addmemFrm.pushButton->setEnabled(true);
443
                }
444
        else addmemFrm.pushButton->setEnabled(false);
445
        addmemFrm.label_7->setText(tmp);
446
}
447
 
448
 
449
 
450
void MainWindowImpl::editTreeWidget()
451
{
452
        QString inventar_num;
453
        QTreeWidgetItem * currItem;
454
        int currColomn;
455
        int top_item_index;
456
        lineEdit->insert(tr(""));
457
        currItem = treeWidget->currentItem ();
458
        top_item_index = treeWidget->indexOfTopLevelItem(currItem);
459
        currColomn = treeWidget->currentColumn();
460
        MainWindowImpl::on_treeWidget_itemClicked(currItem, 3); //    
461
//      inventar_num = tr(".: ");
462
        inventar_num.append(currItem ->text(3));
463
        if (currColomn == 1){
464
                addmemFrm.tabWidget->setCurrentIndex(4);
465
                addmemFrm.show();
466
        };
467
        if (inventar_num == "") return;
468
        lineEdit->insert(currItem ->text(currColomn));
469
        switch(currColomn)
470
        {
471
                case 1://
472
                {
473
                addmemFrm.tabWidget->setCurrentIndex(4);
474
                addmemFrm.show();
475
 
476
                }
477
                break;
478
 
479
 
480
                case 4: //
481
                {
482
                addmemFrm.tabWidget->setCurrentIndex(2);
483
                addmemFrm.show();
484
                }  
485
                break;
486
 
487
                case 5: // 
488
                {
489
                addmemFrm.tabWidget->setCurrentIndex(3);
490
                addmemFrm.show();
491
                }  
492
                break;
493
 
494
                case 6: //
495
                {
496
                addmemFrm.tabWidget->setCurrentIndex(0);
497
                addNewMemory(inventar_num);
498
//              addmemFrm.show();
499
                }  
500
                break;
501
 
502
                case 7: //
503
                {
504
                addmemFrm.tabWidget->setCurrentIndex(1);
505
                addmemFrm.show();      
506
                }
507
                break;
508
 
509
 
510
                case 2: break;
511
                defaul: break;
512
        }
513
        addmemFrm.treeWidget->clear();
514
//      addmemFrm.initTreeWidgrt();
515
}
516
 
517
void MainWindowImpl::initTreeWidget()// 
518
{
519
        QStringList treeHeaders;//  treeWidget
520
        treeWidget->setColumnCount(15);
521
        treeHeaders << tr("")                                     //0  
522
                                << tr("")                               //1  
523
                                << tr("")                       //2  
524
                                << tr("")                   //3  
525
                                << tr("")                                      //4  
526
                                << tr("")                                      //5  
527
                                << tr("")                                         //6  
528
                                << tr("")                                      //7  
529
                                << tr("")                                         //8  
530
                                << tr("")                                     //9  
531
                                << tr(" ")                         //10 
532
                                << tr(" ")                          //11 
533
                                << tr("")                          //12 
534
                                << tr("  ")  //13 
535
                                << tr("ID  "); //14 
536
        treeWidget->setHeaderLabels(QStringList (treeHeaders));
537
//      treeWidget->setColumnHidden(2, true);
538
//      treeWidget->setColumnHidden(12, true);
539
//      treeWidget->setColumnHidden(13, true);
540
        treeWidget->clear();
541
        addOtdels();
542
        treeWidget->sortItems(0, Qt::AscendingOrder);
543
}
544
 
545
void MainWindowImpl::addOtdels()
546
{
547
        int fieldName, fieldID;
548
        QTreeWidgetItem *otdelItem;
549
        QSqlQuery q(tr("select * from otdeli"));//   
550
        QString otdel, otdel_id;
551
        fieldName = q.record().indexOf(tr(""));
552
        fieldID = q.record().indexOf(tr(""));
553
        while (q.next()){
554
                otdel = q.value(fieldName).toString();
555
                otdel_id = q.value(fieldID).toString();
556
                otdelItem = new QTreeWidgetItem(treeWidget);
557
                if (otdel == tr("")) { otdelItem->setText(0, otdel);
558
                        otdelItem->setText(2, tr(""));
559
                        otdelItem->setText(12, otdel_id);
560
                        SotrydnikiOtdela(otdel_id, otdelItem);
561
                        continue;
562
                         }
563
                otdelItem->setText(0, otdel);
564
                otdelItem->setText(2, tr(""));
565
                otdelItem->setText(12, otdel_id);
566
                SotrydnikiOtdela(otdel_id, otdelItem);
567
        }
568
}
569
 
570
 
571
void MainWindowImpl::SotrydnikiOtdela(QString id_otdela, QTreeWidgetItem * itemOtdela) //    
572
{
573
        int field_fio_sotrydnika, field_id_sotrydnika;
574
        int kolichestvo_sotrudnikov=0;
575
        QString fio_sotrydnika_otdela, id_sotrydnika_otdela, oboryd;
576
        QSqlQuery qsotrydnikiOtdela;
577
        QString sqlQueryString;
578
        QTreeWidgetItem *treeItem_sotrydnika;
579
        sqlQueryString = tr("select ,  from sotrydniki where _=");
580
        sqlQueryString.append(id_otdela);
581
        qsotrydnikiOtdela.prepare(sqlQueryString);
582
        qsotrydnikiOtdela.exec();
583
        field_fio_sotrydnika = qsotrydnikiOtdela.record().indexOf(tr(""));
584
        field_id_sotrydnika = qsotrydnikiOtdela.record().indexOf(tr(""));
585
        while (qsotrydnikiOtdela.next())
586
        {
587
                fio_sotrydnika_otdela = qsotrydnikiOtdela.value(field_fio_sotrydnika).toString();
588
                id_sotrydnika_otdela = qsotrydnikiOtdela.value(field_id_sotrydnika).toString();
589
 
590
 
591
                treeItem_sotrydnika = new QTreeWidgetItem(itemOtdela);
592
                treeItem_sotrydnika->setText(1, fio_sotrydnika_otdela );
593
                treeItem_sotrydnika->setText(2, tr(""));
594
                treeItem_sotrydnika->setText(14, id_sotrydnika_otdela );
595
                if (id_sotrydnika_otdela == "1"){
596
                        itm_sklad_system_blocks = new QTreeWidgetItem(treeItem_sotrydnika);
597
                        itm_sklad_system_blocks->setText(2, tr(" "));
598
                        itm_sklad_orgtehnika = new QTreeWidgetItem(treeItem_sotrydnika);
599
                        itm_sklad_orgtehnika->setText(2, tr(""));
600
                        itm_sklad_orgtehnika_printers =  new QTreeWidgetItem(itm_sklad_orgtehnika);
601
                        itm_sklad_orgtehnika_printers->setText(2, tr(""));
602
                        itm_sklad_orgtehnika_mfy =   new QTreeWidgetItem(itm_sklad_orgtehnika);
603
                        itm_sklad_orgtehnika_mfy->setText(2, tr(""));
604
                        itm_sklad_komplectyushie = new QTreeWidgetItem(treeItem_sotrydnika);
605
                        itm_sklad_komplectyushie->setText(2, tr(""));
606
                        itm_sklad_orgtehnika_scaners = new QTreeWidgetItem(itm_sklad_orgtehnika);
607
                        itm_sklad_orgtehnika_scaners->setText(2, tr(""));
608
                        itm_sklad_rashodniki = new QTreeWidgetItem(treeItem_sotrydnika);
609
                        itm_sklad_rashodniki->setText(2, tr(" "));
610
                }
611
                oboryd = oborydovanie(id_sotrydnika_otdela, treeItem_sotrydnika);
612
//              treeItem_sotrydnika->setText(3, oboryd );
613
                ++kolichestvo_sotrudnikov;
614
        }
615
        itemOtdela->setText(13, QVariant(kolichestvo_sotrudnikov).toString());
616
}
617
 
618
QString MainWindowImpl::oborydovanie(QString id_sotrydnika, QTreeWidgetItem * itemSotrydnika){
619
        QString result, prResult;
620
        QString sqlQueryText;
621
        QString serial_num, inventar_num, proizvoditel, model, system_block_id;
622
        QSqlQuery quer;
623
        QString MB_information, Memory_information, CPU_information, HDD_information, CD_DVD_information, Vidio_information;
624
        QString Sound_card_information, Lan_card_information;
625
        int field_serialNum, field_inventarNum, field_proizvoditel, field_model, field_system_block_id;
626
//      QSqlQuery qns(tr("SET NAMES utf8"));//   
627
        QTreeWidgetItem *itemSysBlock;
628
//      sqlQueryText.reserve(300);
629
        sqlQueryText = tr("select system_blocks._, system_blocks._, system_blocks."
630
        " from system_blocks"
631
        " where system_blocks.__ =");
632
        sqlQueryText.append(id_sotrydnika);
633
//      sqlQueryText.append(tr(" AND _.__ = _."));
634
        quer.prepare(sqlQueryText);
635
//      quer.prepare(tr("select _._, _._,_., _. from _,_ where _.__ = 4 AND _.__ = _.;"));
636
        quer.exec();
637
        field_serialNum = quer.record().indexOf(tr("_"));
638
        field_inventarNum = quer.record().indexOf(tr("_"));
639
        field_system_block_id = quer.record().indexOf(tr(""));
640
//      field_proizvoditel = quer.record().indexOf(tr(""));
641
//      field_model = quer.record().indexOf(tr(""));
642
        while(quer.next()){
643
        system_block_id = quer.value(field_system_block_id).toString();                                 //  
644
        prResult = ""; 
645
        serial_num = quer.value(field_serialNum).toString();
646
        inventar_num = quer.value(field_inventarNum).toString();
647
////    if (serial_num != "") {prResult.append(tr("s/n: "));
648
////            prResult.append(serial_num);}
649
        if (inventar_num != "") {
650
////    prResult.append(tr(" .: "));
651
        prResult.append(inventar_num);
652
////    prResult.append(tr(" "));
653
}
654
 
655
//      result.append(q.value(field_proizvoditel).toString());
656
//      result.append(tr(" "));
657
//      result.append(q.value(field_model).toString());
658
 
659
 
660
 
661
 
662
 
663
//      if (id_sotrydnika == "1" & system_block_id == "1") itemSysBlock->setText(2, tr(""));//   
664
        if (id_sotrydnika == "1" && system_block_id == "1") itemSysBlock = itm_sklad_komplectyushie;//   
665
        else if (id_sotrydnika == "1" ){
666
                itemSysBlock = new QTreeWidgetItem(itm_sklad_system_blocks); //   
667
                itemSysBlock->setText(2, tr(" "));
668
                itemSysBlock->setIcon(3, comp_icon);
669
                if (system_block_id !="") itemSysBlock->setText(12, system_block_id);  
670
                if (id_sotrydnika !="") itemSysBlock->setText(14, id_sotrydnika);
671
        }
672
 
673
        else {
674
                itemSysBlock = new QTreeWidgetItem(itemSotrydnika);
675
                itemSysBlock->setText(2, tr(" "));
676
                itemSysBlock->setIcon(3, comp_icon);
677
                if (system_block_id !="") itemSysBlock->setText(12, system_block_id);  
678
                if (id_sotrydnika !="") itemSysBlock->setText(14, id_sotrydnika);
679
 
680
                }
681
 
682
        MB_information = addMatheBoardInformation (id_sotrydnika, system_block_id, itemSysBlock);               //    
683
////    prResult.append(MB_information);
684
        Memory_information = addMemoryInformation(id_sotrydnika, system_block_id, itemSysBlock);                //   
685
////    prResult.append(Memory_information);
686
        CPU_information = addCpuInformation(id_sotrydnika, system_block_id, itemSysBlock);
687
////    prResult.append(CPU_information);
688
        HDD_information = addHDDInformation(id_sotrydnika, system_block_id, itemSysBlock);
689
////    prResult.append(HDD_information);
690
        CD_DVD_information = add_CD_DVD_Information(id_sotrydnika, system_block_id, itemSysBlock);
691
////    prResult.append(CD_DVD_information);
692
        Vidio_information = add_Vidio_Information(id_sotrydnika, system_block_id, itemSysBlock);
693
        Sound_card_information = add_Sound_Card_Information(id_sotrydnika, system_block_id, itemSysBlock);
694
        Lan_card_information = add_Lan_Card_Information(id_sotrydnika, system_block_id, itemSysBlock);
695
        if (system_block_id != "1"){
696
 
697
                itemSysBlock->setText(3, prResult);      
698
                result.append(prResult);
699
}
700
 
701
 
702
        }
703
        return result;
704
}
705
 
706
QString MainWindowImpl::addMatheBoardInformation(QString id_otvetstvennogo_lica, QString id_systemBlock, QTreeWidgetItem * itemSysBlock)
707
{
708
        QString result, tmp;
709
        QString MB_proizvoditel, MB_model, MB_identifikator, MB_serial_num, MB_inventar_num;
710
        QString MatheBoardSqlQueryText;
711
        QSqlQuery MatheBoardQuery;
712
        int field_proizvoditel, field_model, field_identifikator, field_serial_num, field_inventar_num;
713
        QTreeWidgetItem *itemMB, *itmMB_block;
714
        MatheBoardSqlQueryText = tr("select * "
715
        " from matheboards where matheboards.__ = "
716
        );
717
        MatheBoardSqlQueryText.append(id_systemBlock);
718
        MatheBoardQuery.prepare(MatheBoardSqlQueryText);
719
        MatheBoardQuery.exec();
720
        field_identifikator = MatheBoardQuery.record().indexOf(tr(""));
721
        field_proizvoditel = MatheBoardQuery.record().indexOf(tr(""));
722
        field_model = MatheBoardQuery.record().indexOf(tr(""));
723
        field_serial_num = MatheBoardQuery.record().indexOf(tr("_"));
724
        field_inventar_num = MatheBoardQuery.record().indexOf(tr("_"));
725
 
726
        if (id_otvetstvennogo_lica == "1" && id_systemBlock == "1"){
727
                itmMB_block = new QTreeWidgetItem(itm_sklad_komplectyushie);
728
                itmMB_block->setText(2, tr(" "));
729
//              itmMB_block->setIcon(3, matheboard_icon);
730
                }
731
 
732
        while(MatheBoardQuery.next()){
733
                tmp = "";
734
                MB_identifikator = MatheBoardQuery.value(field_identifikator).toString();
735
                MB_proizvoditel = MatheBoardQuery.value(field_proizvoditel).toString();
736
                MB_model = MatheBoardQuery.value(field_model).toString();
737
                MB_serial_num = MatheBoardQuery.value(field_serial_num).toString();
738
                MB_inventar_num = MatheBoardQuery.value(field_inventar_num).toString();
739
 
740
        if (MB_proizvoditel != "") {
741
//              tmp.append(tr("MB: "));
742
                tmp.append(MB_proizvoditel);
743
                }
744
        if (MB_model != "") {tmp.append(tr(" "));
745
        tmp.append(MB_model);
746
        tmp.append(tr(" "));}
747
        result.append(tmp);
748
        if (id_otvetstvennogo_lica == "1" && id_systemBlock == "1") {itemMB = new QTreeWidgetItem(itmMB_block);
749
        }
750
        else itemMB = new QTreeWidgetItem(itemSysBlock);
751
        itemMB->setIcon(4, matheboard_icon);
752
        itemMB->setText(4, tmp);
753
        itemMB->setText(12, MB_identifikator);
754
        itemMB->setText(13, id_systemBlock);
755
        itemMB->setText(14, id_otvetstvennogo_lica);
756
        itemMB->setText(2, tr(" "));
757
        itemMB->setText(3, MB_inventar_num);
758
        if (id_systemBlock !="1") itemSysBlock->setText(5, tmp);
759
 
760
                }
761
        return result;
762
}
763
 
764
 
765
QString MainWindowImpl::addMemoryInformation(QString id_otvetstvennogo_lica, QString id_systemBlock, QTreeWidgetItem * itemSysBlock)
766
{
767
        QString result, tmp;
768
        QString Memiry_id, Memory_proizvoditel, Memory_type, Memory_obem, Memory_inventar_num, Memory_serial_num;
769
        QString MemorySqlQueryText;
770
        QSqlQuery MemoryQuery;
771
        int field_proizvoditel, field_type, field_obem, field_id, field_inventar_num, field_sereal_num;
772
        QTreeWidgetItem *itemMemory, *itemMemory_block;
773
        MemorySqlQueryText = tr("select memory.* "
774
        " from memory where memory.__ = "
775
        );
776
        MemorySqlQueryText.append(id_systemBlock);
777
        MemoryQuery.prepare(MemorySqlQueryText);
778
        MemoryQuery.exec();
779
        field_id = MemoryQuery.record().indexOf(tr(""));
780
        field_proizvoditel = MemoryQuery.record().indexOf(tr(""));
781
        field_type = MemoryQuery.record().indexOf(tr(""));
782
        field_obem = MemoryQuery.record().indexOf(tr(""));
783
        field_inventar_num = MemoryQuery.record().indexOf(tr("_"));
784
        field_sereal_num = MemoryQuery.record().indexOf(tr("_"));
785
                if (id_otvetstvennogo_lica == "1" && id_systemBlock == "1"){
786
                itemMemory_block = new QTreeWidgetItem(itm_sklad_komplectyushie);
787
                itemMemory_block->setText(2, tr(" "));
788
        }
789
        while(MemoryQuery.next()){
790
//              tmp = tr("RAM: ");
791
                tmp = tr("");
792
                Memiry_id = MemoryQuery.value(field_id).toString();
793
                Memory_proizvoditel = MemoryQuery.value(field_proizvoditel).toString();
794
                Memory_type = MemoryQuery.value(field_type).toString();
795
                Memory_obem = MemoryQuery.value(field_obem).toString();
796
                Memory_inventar_num = MemoryQuery.value(field_inventar_num).toString();
797
                Memory_serial_num = MemoryQuery.value(field_sereal_num).toString();
798
////    if (Memory_proizvoditel != "") {
799
////            tmp.append(Memory_proizvoditel);}
800
        if (Memory_type != "") {tmp.append(tr(" "));
801
        tmp.append(Memory_type);
802
        tmp.append(tr(" "));}
803
        if (Memory_obem != "") {tmp.append(tr(" "));
804
        tmp.append(Memory_obem);
805
        tmp.append(tr("MB; "));}
806
        result.append(tmp);
807
        if (id_otvetstvennogo_lica == "1" && id_systemBlock == "1"){
808
                itemMemory = new QTreeWidgetItem(itemMemory_block);
809
        }
810
        else itemMemory = new QTreeWidgetItem(itemSysBlock);
811
        itemMemory->setIcon(4, memory_icon);
812
        itemMemory->setText(4, tmp);
813
 
814
        itemMemory->setText(2, tr(" "));
815
        itemMemory->setText(12, Memiry_id);
816
        itemMemory->setText(13, id_systemBlock);
817
        itemMemory->setText(14, id_otvetstvennogo_lica);
818
        itemMemory->setText(3, Memory_inventar_num);
819
 
820
                }
821
        if (id_systemBlock !="1") itemSysBlock->setText(6, result);
822
        return result;
823
}
824
 
825
 
826
QString MainWindowImpl::addCpuInformation(QString id_otvetstvennogo_lica, QString id_systemBlock, QTreeWidgetItem * itemSysBlock)
827
{
828
        QString result, tmp;
829
        QString CPU_id, CPU_proizvoditel, CPU_slot, CPU_fqr, CPU_inventar_num, CPU_serial_num;
830
        QString CpuSqlQueryText;
831
        QSqlQuery CpuQuery;
832
        int field_id, field_proizvoditel, field_slot, field_fqr, field_inventar_num, field_serial_num;
833
        QTreeWidgetItem *itemCpu, *itemCpu_block;
834
        CpuSqlQueryText = tr("select processors.* "
835
        " from processors where processors.__ = "
836
        );
837
        CpuSqlQueryText.append(id_systemBlock);
838
        CpuQuery.prepare(CpuSqlQueryText);
839
        CpuQuery.exec();
840
        field_id = CpuQuery.record().indexOf(tr(""));
841
        field_proizvoditel = CpuQuery.record().indexOf(tr(""));
842
        field_slot = CpuQuery.record().indexOf(tr(""));
843
        field_fqr = CpuQuery.record().indexOf(tr(""));
844
        field_inventar_num = CpuQuery.record().indexOf(tr("_"));
845
        field_serial_num = CpuQuery.record().indexOf(tr("_"));
846
 
847
        if (id_otvetstvennogo_lica == "1" && id_systemBlock == "1"){
848
                itemCpu_block = new QTreeWidgetItem(itemSysBlock);
849
                itemCpu_block->setText(2, tr(""));
850
                itemCpu_block->setText(14, id_otvetstvennogo_lica);
851
        }
852
 
853
 
854
        while(CpuQuery.next()){
855
//              tmp = tr("CPU: ");
856
        tmp = tr("");
857
                CPU_id = CpuQuery.value(field_id).toString();
858
                CPU_proizvoditel = CpuQuery.value(field_proizvoditel).toString();
859
                CPU_slot = CpuQuery.value(field_slot).toString();
860
                CPU_fqr = CpuQuery.value(field_fqr).toString();
861
                CPU_inventar_num =  CpuQuery.value(field_inventar_num).toString();
862
                CPU_serial_num = CpuQuery.value(field_serial_num).toString();
863
 
864
        if (CPU_proizvoditel != "") {
865
                tmp.append(CPU_proizvoditel);}
866
//      if (CPU_slot != "") {tmp.append(tr(" "));
867
//      tmp.append(CPU_slot);
868
//      tmp.append(tr(" "));}
869
        if (CPU_fqr != "") {tmp.append(tr(" "));
870
        tmp.append(CPU_fqr);
871
        tmp.append(tr("MGz "));}
872
        result.append(tmp);
873
        if (id_otvetstvennogo_lica == "1" && id_systemBlock == "1"){
874
                itemCpu = new QTreeWidgetItem(itemCpu_block);
875
        }
876
        else itemCpu = new QTreeWidgetItem(itemSysBlock);
877
 
878
 
879
//      itemCpu = new QTreeWidgetItem(itemSysBlock);
880
        itemCpu->setText(2, tr(""));
881
        itemCpu->setText(12, CPU_id);
882
        itemCpu->setText(13, id_systemBlock);
883
        itemCpu->setText(14, id_otvetstvennogo_lica);
884
 
885
        itemCpu->setIcon(4, cpu_icon);
886
        itemCpu->setText(4, tmp);
887
 
888
        itemCpu->setText(3, CPU_inventar_num);
889
                }
890
        if (id_systemBlock !="1") itemSysBlock->setText(4, tmp);
891
        return result;
892
}
893
 
894
QString MainWindowImpl::addHDDInformation(QString id_otvetstvennogo_lica, QString id_systemBlock, QTreeWidgetItem * itemSysBlock)
895
{
896
        QString result, tmp;
897
        QString HDD_id, HDD_proizvoditel, HDD_interfeis, HDD_obem, HDD_inventar_num, HDD_serial_num;
898
        QString HDDSqlQueryText;
899
        QSqlQuery HDDQuery;
900
        int field_id, field_proizvoditel, field_interfeis, field_obem, field_inventar_num, field_serial_num;
901
        QTreeWidgetItem *itemHDD;
902
        QTreeWidgetItem *itemHDD_block;
903
        HDDSqlQueryText = tr("select harddiscs.* "
904
        " from harddiscs where harddiscs.__ = "
905
        );
906
        HDDSqlQueryText.append(id_systemBlock);
907
        HDDQuery.prepare(HDDSqlQueryText);
908
        HDDQuery.exec();
909
        field_id = HDDQuery.record().indexOf(tr(""));
910
        field_proizvoditel = HDDQuery.record().indexOf(tr(""));
911
        field_interfeis = HDDQuery.record().indexOf(tr(""));
912
        field_obem = HDDQuery.record().indexOf(tr(""));
913
        field_inventar_num = HDDQuery.record().indexOf(tr("_"));
914
        field_serial_num = HDDQuery.record().indexOf(tr("_"));
915
 
916
        if (id_otvetstvennogo_lica == "1" && id_systemBlock == "1"){
917
                itemHDD_block = new QTreeWidgetItem(itemSysBlock);
918
                itemHDD_block->setText(2, tr(""));
919
                itemHDD_block->setText(14, id_otvetstvennogo_lica);
920
        }
921
 
922
 
923
        while(HDDQuery.next()){
924
//              tmp = tr("HDD: ");
925
                tmp = tr("");
926
                HDD_id = HDDQuery.value(field_id).toString();
927
                HDD_proizvoditel = HDDQuery.value(field_proizvoditel).toString();
928
                HDD_interfeis = HDDQuery.value(field_interfeis).toString();
929
                HDD_obem = HDDQuery.value(field_obem).toString();
930
                HDD_inventar_num =  HDDQuery.value(field_inventar_num).toString();
931
                HDD_serial_num = HDDQuery.value(field_serial_num).toString();
932
        if (HDD_proizvoditel != "") {
933
                tmp.append(HDD_proizvoditel);}
934
        if (HDD_interfeis != "") {tmp.append(tr(" "));
935
        tmp.append(HDD_interfeis);
936
        tmp.append(tr(" "));}
937
        if (HDD_obem != "") {tmp.append(tr(" "));
938
        tmp.append(HDD_obem);
939
        tmp.append(tr("GB; "));}
940
        result.append(tmp);
941
 
942
        if (id_otvetstvennogo_lica == "1" && id_systemBlock == "1"){
943
                itemHDD  = new QTreeWidgetItem(itemHDD_block);
944
        }
945
        else itemHDD  = new QTreeWidgetItem(itemSysBlock);
946
 
947
 
948
//      itemHDD = new QTreeWidgetItem(itemSysBlock);
949
 
950
        itemHDD->setText(2, tr(" "));
951
        itemHDD->setText(12, HDD_id);
952
        itemHDD->setText(13, id_systemBlock);
953
        itemHDD->setText(14, id_otvetstvennogo_lica);
954
 
955
        itemHDD->setIcon(4, hdd_icon);
956
        itemHDD->setText(4, tmp);
957
        itemHDD->setText(3, HDD_inventar_num);
958
                }
959
//      if (result!="") itemSysBlock->setIcon(7, hdd_icon);
960
        if (id_systemBlock !="1") itemSysBlock->setText(7, result);
961
        return result;
962
}
963
 
964
QString MainWindowImpl::add_CD_DVD_Information(QString id_otvetstvennogo_lica, QString id_systemBlock, QTreeWidgetItem * itemSysBlock)
965
{
966
        QString result, tmp;
967
        QString CD_DVD_id, CD_DVD_proizvoditel, CD_DVD_type, CD_DVD_speed, CD_DVD_serial_num, CD_DVD_inventar_num;
968
        QString CD_DVD_SqlQueryText;
969
        QSqlQuery CD_DVD_Query;
970
        int field_id, field_proizvoditel, field_type, field_speed, field_serial_num, field_inventar_num;
971
        QTreeWidgetItem *item_CD_DVD;
972
        QTreeWidgetItem *item_CD_DVD_block;
973
        CD_DVD_SqlQueryText = tr("select cd_dvd.* "
974
        " from cd_dvd where cd_dvd.__ = "
975
        );
976
        CD_DVD_SqlQueryText.append(id_systemBlock);
977
        CD_DVD_Query.prepare(CD_DVD_SqlQueryText);
978
        CD_DVD_Query.exec();
979
        field_id = CD_DVD_Query.record().indexOf(tr(""));
980
        field_proizvoditel = CD_DVD_Query.record().indexOf(tr(""));
981
        field_type = CD_DVD_Query.record().indexOf(tr(""));
982
        field_speed = CD_DVD_Query.record().indexOf(tr(""));
983
        field_inventar_num = CD_DVD_Query.record().indexOf(tr("_"));
984
        field_serial_num = CD_DVD_Query.record().indexOf(tr("_"));
985
 
986
        if (id_otvetstvennogo_lica == "1" && id_systemBlock == "1"){
987
                item_CD_DVD_block = new QTreeWidgetItem(itemSysBlock);
988
                item_CD_DVD_block->setText(2, tr(""));
989
                item_CD_DVD_block->setText(14, id_otvetstvennogo_lica);
990
        }
991
 
992
 
993
        while(CD_DVD_Query.next()){
994
//              tmp = tr("CD/DVD: ");
995
        tmp = tr("");
996
                CD_DVD_id = CD_DVD_Query.value(field_id).toString();
997
                CD_DVD_proizvoditel = CD_DVD_Query.value(field_proizvoditel).toString();
998
                CD_DVD_type = CD_DVD_Query.value(field_type).toString();
999
                CD_DVD_speed = CD_DVD_Query.value(field_speed).toString();
1000
                CD_DVD_serial_num = CD_DVD_Query.value(field_serial_num).toString();
1001
                CD_DVD_inventar_num = CD_DVD_Query.value(field_inventar_num).toString();
1002
 
1003
        if (CD_DVD_type != "") {
1004
                tmp.append(CD_DVD_type);}
1005
        if (CD_DVD_proizvoditel != "") {tmp.append(tr(" "));
1006
        tmp.append(CD_DVD_proizvoditel);
1007
        tmp.append(tr(" "));}
1008
        if (CD_DVD_speed != "") {tmp.append(tr(" "));
1009
        tmp.append(CD_DVD_speed);
1010
        tmp.append(tr(" "));}
1011
        result.append(tmp);
1012
 
1013
if (id_otvetstvennogo_lica == "1" && id_systemBlock == "1"){
1014
                item_CD_DVD  = new QTreeWidgetItem(item_CD_DVD_block);
1015
        }
1016
        else item_CD_DVD = new QTreeWidgetItem(itemSysBlock);
1017
 
1018
        item_CD_DVD->setText(2, tr(""));
1019
        item_CD_DVD->setText(12, CD_DVD_id);
1020
        item_CD_DVD->setText(13, id_systemBlock);
1021
        item_CD_DVD->setText(14, id_otvetstvennogo_lica);
1022
        item_CD_DVD->setIcon(4, cd_dvd_icon);
1023
        item_CD_DVD->setText(4, tmp);
1024
        item_CD_DVD->setText(3, CD_DVD_inventar_num);
1025
                }
1026
        if (id_systemBlock !="1") itemSysBlock->setText(8, result);
1027
        return result;
1028
}
1029
 
1030
QString MainWindowImpl::add_Vidio_Information(QString id_otvetstvennogo_lica, QString id_systemBlock, QTreeWidgetItem * itemSysBlock){
1031
 
1032
        QString result, tmp;
1033
        QString Vidio_id, Vidio_proizvoditel, Vidio_model, Vidio_interfeis, Vidio_ram, Vidio_inventar_num, Vidio_sereal_num;
1034
        QString Vidio_SqlQueryText;
1035
        QSqlQuery Vidio_Query;
1036
        int field_id, field_proizvoditel, field_model, field_interfeis, field_ram, field_inventar_num, field_sereal_num;
1037
        QTreeWidgetItem *item_Vidio, *item_Vidio_block;
1038
        Vidio_SqlQueryText = tr("select videocards.* "
1039
        " from videocards where videocards.__ = "
1040
        );
1041
        Vidio_SqlQueryText.append(id_systemBlock);
1042
        Vidio_Query.prepare(Vidio_SqlQueryText);
1043
        Vidio_Query.exec();
1044
        field_id = Vidio_Query.record().indexOf(tr(""));
1045
        field_proizvoditel = Vidio_Query.record().indexOf(tr(""));
1046
        field_model = Vidio_Query.record().indexOf(tr(""));
1047
        field_interfeis  = Vidio_Query.record().indexOf(tr(""));
1048
        field_ram = Vidio_Query.record().indexOf(tr(""));
1049
        field_inventar_num = Vidio_Query.record().indexOf(tr("_"));
1050
        field_sereal_num = Vidio_Query.record().indexOf(tr("_"));
1051
 
1052
        if (id_otvetstvennogo_lica == "1" && id_systemBlock == "1"){
1053
                item_Vidio_block = new QTreeWidgetItem(itemSysBlock);
1054
                item_Vidio_block->setText(2, tr(""));
1055
                item_Vidio_block->setText(14, id_otvetstvennogo_lica);
1056
        }
1057
 
1058
 
1059
 
1060
        while(Vidio_Query.next()){
1061
//              tmp = tr("CD/DVD: ");
1062
        tmp = tr("");
1063
                Vidio_id = Vidio_Query.value(field_id).toString();
1064
                Vidio_proizvoditel = Vidio_Query.value(field_proizvoditel).toString();
1065
                Vidio_model = Vidio_Query.value(field_model).toString();
1066
                Vidio_interfeis = Vidio_Query.value(field_interfeis).toString();
1067
                Vidio_ram = Vidio_Query.value(field_ram).toString();
1068
                Vidio_inventar_num = Vidio_Query.value(field_inventar_num).toString();
1069
                Vidio_sereal_num =  Vidio_Query.value(field_sereal_num).toString();
1070
        if (Vidio_interfeis != "") {tmp.append(tr(" "));
1071
        tmp.append(Vidio_interfeis);}
1072
        if (Vidio_proizvoditel != "") {tmp.append(tr(" "));
1073
        tmp.append(Vidio_proizvoditel);}
1074
        if (Vidio_model != "") {tmp.append(tr(" "));
1075
                tmp.append(Vidio_model);}
1076
 
1077
        if (Vidio_ram !=""){tmp.append(tr(" "));
1078
        tmp.append(Vidio_ram);
1079
        tmp.append(tr(" Mb"));
1080
 
1081
        }
1082
        result.append(tmp);
1083
 
1084
        if (id_otvetstvennogo_lica == "1" && id_systemBlock == "1"){
1085
                item_Vidio  = new QTreeWidgetItem(item_Vidio_block);
1086
        }
1087
        else item_Vidio = new QTreeWidgetItem(itemSysBlock);
1088
 
1089
 
1090
//      item_Vidio = new QTreeWidgetItem(itemSysBlock);
1091
 
1092
        item_Vidio->setText(2, tr(""));
1093
        item_Vidio->setText(12, Vidio_id);
1094
        item_Vidio->setText(13, id_systemBlock);
1095
        item_Vidio->setText(14, id_otvetstvennogo_lica);
1096
        item_Vidio->setIcon(4, vidio_card_icon);
1097
        item_Vidio->setText(4, tmp);
1098
        item_Vidio->setText(3, Vidio_inventar_num);
1099
                }
1100
        if (id_systemBlock !="1") itemSysBlock->setText(9, result);
1101
        return result;
1102
}
1103
 
1104
 
1105
QString MainWindowImpl::add_Sound_Card_Information(QString id_otvetstvennogo_lica, QString id_systemBlock, QTreeWidgetItem * itemSysBlock){
1106
 
1107
 
1108
        QString result, tmp;
1109
        QString Sound_card_id, Sound_card_proizvoditel, Sound_card_model, Sound_card_inventar_num, Sound_card_serial_num;
1110
        QString Sound_card_SqlQueryText;
1111
        QSqlQuery Sound_card_Query;
1112
        int field_id, field_proizvoditel, field_model, field_inventar_num, field_serial_num;
1113
        QTreeWidgetItem *item_Sound_card, *item_Sound_card_block;
1114
        Sound_card_SqlQueryText = tr("select soundcards.* "
1115
        " from soundcards where soundcards.__ = "
1116
        );
1117
        Sound_card_SqlQueryText.append(id_systemBlock);
1118
        Sound_card_Query.prepare(Sound_card_SqlQueryText);
1119
        Sound_card_Query.exec();
1120
        field_id = Sound_card_Query.record().indexOf(tr(""));
1121
        field_proizvoditel = Sound_card_Query.record().indexOf(tr(""));
1122
        field_model = Sound_card_Query.record().indexOf(tr(""));
1123
        field_inventar_num =  Sound_card_Query.record().indexOf(tr("_"));
1124
        field_serial_num = Sound_card_Query.record().indexOf(tr("_"));
1125
 
1126
 
1127
        if (id_otvetstvennogo_lica == "1" && id_systemBlock == "1"){
1128
                item_Sound_card_block = new QTreeWidgetItem(itemSysBlock);
1129
                item_Sound_card_block->setText(2, tr(" "));
1130
                item_Sound_card_block->setText(14, id_otvetstvennogo_lica);
1131
        }
1132
 
1133
        while(Sound_card_Query.next()){
1134
//              tmp = tr("CD/DVD: ");
1135
        tmp = tr("");
1136
                Sound_card_id = Sound_card_Query.value(field_id).toString();
1137
                Sound_card_proizvoditel = Sound_card_Query.value(field_proizvoditel).toString();
1138
                Sound_card_model = Sound_card_Query.value(field_model).toString();
1139
                Sound_card_inventar_num = Sound_card_Query.value(field_inventar_num).toString();
1140
                Sound_card_serial_num = Sound_card_Query.value(field_serial_num).toString();
1141
 
1142
//              Vidio_interfeis = Vidio_Query.value(field_interfeis).toString();
1143
//              Vidio_ram = Vidio_Query.value(field_ram).toString();
1144
        if (Sound_card_proizvoditel != "") {tmp.append(tr(" "));
1145
        tmp.append(Sound_card_proizvoditel);}
1146
 
1147
        if (Sound_card_model != "") {tmp.append(tr(" "));
1148
                tmp.append(Sound_card_model);}
1149
 
1150
///     if (Vidio_ram !=""){tmp.append(tr(" "));
1151
///     tmp.append(Vidio_ram);
1152
///     tmp.append(tr(" Mb"));
1153
 
1154
///     }
1155
        result.append(tmp);
1156
 
1157
        if (id_otvetstvennogo_lica == "1" && id_systemBlock == "1"){
1158
                item_Sound_card  = new QTreeWidgetItem(item_Sound_card_block);
1159
        }
1160
        else item_Sound_card = new QTreeWidgetItem(itemSysBlock);
1161
 
1162
 
1163
//      item_Sound_card = new QTreeWidgetItem(itemSysBlock);
1164
 
1165
 
1166
        item_Sound_card->setText(2, tr(" "));
1167
        item_Sound_card->setText(12, Sound_card_id);
1168
        item_Sound_card->setText(13, id_systemBlock);
1169
        item_Sound_card->setText(14, id_otvetstvennogo_lica);
1170
        item_Sound_card->setIcon(4, sound_card_icon);
1171
        item_Sound_card->setText(4, tmp);
1172
        item_Sound_card->setText(3, Sound_card_inventar_num);
1173
                }
1174
        if (id_systemBlock !="1") itemSysBlock->setText(10, result);
1175
        return result; 
1176
 
1177
}
1178
 
1179
QString MainWindowImpl::add_Lan_Card_Information(QString id_otvetstvennogo_lica, QString id_systemBlock, QTreeWidgetItem * itemSysBlock){
1180
 
1181
 
1182
        QString result, tmp;
1183
        QString Lan_card_id, Lan_card_proizvoditel, Lan_card_model, Lan_speed, Lan_inventar_num, Lan_serial_num;
1184
        QString Lan_card_SqlQueryText;
1185
        QSqlQuery Lan_card_Query;
1186
        int field_id, field_proizvoditel, field_model, field_speed, field_serial_num, field_inventar_num;
1187
        QTreeWidgetItem *item_Lan_card, *item_Lan_card_block;
1188
        Lan_card_SqlQueryText = tr("select lancards.* "
1189
        " from lancards where lancards.__ = "
1190
        );
1191
        Lan_card_SqlQueryText.append(id_systemBlock);
1192
        Lan_card_Query.prepare(Lan_card_SqlQueryText);
1193
        Lan_card_Query.exec();
1194
        field_id = Lan_card_Query.record().indexOf(tr(""));
1195
        field_proizvoditel = Lan_card_Query.record().indexOf(tr(""));
1196
        field_model = Lan_card_Query.record().indexOf(tr(""));
1197
        field_speed = Lan_card_Query.record().indexOf(tr("__"));
1198
        field_serial_num = Lan_card_Query.record().indexOf(tr("_"));
1199
        field_inventar_num = Lan_card_Query.record().indexOf(tr("_"));
1200
 
1201
        if (id_otvetstvennogo_lica == "1" && id_systemBlock == "1"){
1202
                item_Lan_card_block = new QTreeWidgetItem(itemSysBlock);
1203
                item_Lan_card_block->setText(2, tr(" "));
1204
                item_Lan_card_block->setText(14, id_otvetstvennogo_lica);
1205
        }
1206
 
1207
        while(Lan_card_Query.next()){
1208
//              tmp = tr("CD/DVD: ");
1209
        tmp = tr("");
1210
                Lan_card_id = Lan_card_Query.value(field_id).toString();
1211
                Lan_card_proizvoditel = Lan_card_Query.value(field_proizvoditel).toString();
1212
                Lan_card_model = Lan_card_Query.value(field_model).toString();
1213
                Lan_speed = Lan_card_Query.value(field_speed).toString();
1214
                Lan_inventar_num =  Lan_card_Query.value(field_inventar_num).toString();
1215
                Lan_serial_num = Lan_card_Query.value(field_serial_num).toString();
1216
 
1217
 
1218
//              Vidio_interfeis = Vidio_Query.value(field_interfeis).toString();
1219
//              Vidio_ram = Vidio_Query.value(field_ram).toString();
1220
        if (Lan_card_proizvoditel != "") {tmp.append(tr(" "));
1221
        tmp.append(Lan_card_proizvoditel);}
1222
 
1223
        if (Lan_card_model != "") {tmp.append(tr(" "));
1224
                tmp.append(Lan_card_model);}
1225
 
1226
        if (Lan_speed != "") {tmp.append(tr(" "));
1227
                tmp.append(Lan_speed);
1228
                tmp.append(tr(" Mbit"));}
1229
 
1230
///     if (Vidio_ram !=""){tmp.append(tr(" "));
1231
///     tmp.append(Vidio_ram);
1232
///     tmp.append(tr(" Mb"));
1233
 
1234
///     }
1235
        result.append(tmp);
1236
 
1237
        if (id_otvetstvennogo_lica == "1" && id_systemBlock == "1"){
1238
                item_Lan_card  = new QTreeWidgetItem(item_Lan_card_block);
1239
        }
1240
        else item_Lan_card = new QTreeWidgetItem(itemSysBlock);
1241
 
1242
//      item_Lan_card = new QTreeWidgetItem(itemSysBlock);
1243
 
1244
 
1245
        item_Lan_card->setText(2, tr(" "));
1246
        item_Lan_card->setText(12, Lan_card_id);
1247
        item_Lan_card->setText(13, id_systemBlock);
1248
        item_Lan_card->setText(14, id_otvetstvennogo_lica);
1249
        item_Lan_card->setIcon(4, lan_card_icon);
1250
        item_Lan_card->setText(4, tmp);
1251
        item_Lan_card->setText(3, Lan_inventar_num);
1252
                }
1253
        if (id_systemBlock !="1") itemSysBlock->setText(11, result);
1254
        return result; 
1255
 
1256
}
1257
 
1258
void MainWindowImpl::refreshTree(){
1259
 
1260
        initTreeWidget();
1261
}
1262
 
1263
int MainWindowImpl::select_system_block(){
1264
        return 1;
1265
}
1266
 
1267