Хранилища Subversion OpenInventory

Редакция

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