Диплом: Автоматизация регистрации и обработки заявок на комплектующие для ПК на ООО "Sumsung Electronics"

Внимание! Если размещение файла нарушает Ваши авторские права, то обязательно сообщите нам
92
34. Официальный сайт Битрикс24 [Электронный ресурс]. Режим доступа:
https://bitrix24.ru/
35. Официальный сайт Worksection [Электронный ресурс]. Режим доступа:
https://worksection.ru/
36. Официальный сайт Claris [Электронный ресурс]. Режим доступа:
https://claris.ru/
37. Официальный сайт WebAsyst [Электронный ресурс]. Режим доступа:
https://webasyst.ru/
38. Официальный сайт TeamTools [Электронный ресурс]. Режим доступа:
https://team-tools.ru/
39. Официальный сайт Планфикс [Электронный ресурс]. Режим доступа:
https://planfix.ru/
40. Сайт Embarcadero RAD Studio [Электронный ресурс], Режим доступа:
https://www.embarcadero.com/ru
41. Официальный сайт ООО «Samsung Electronics» [Электронный ресурс], Режим
доступа: https://www.samsung.com/ru
42. ООО «Samsung Electronics» [Электронный ресурс], Режим доступа:
https://ru.wikipedia.org/wiki/Samsung_Electronics
93
ПРИЛОЖЕНИЕ. Исходный код программы
Модуль авторизации
using System;
using System.Collections.Generic;
using System.ComponentModel;
using System.Data;
using System.Drawing;
using System.Linq;
using System.Text;
using System.Threading.Tasks;
using System.Windows.Forms;
namespace UchZayavka
{
public partial class FormAuth : Form
{
public FormAuth()
{
InitializeComponent();
}
private void button1_Click(object sender, EventArgs e)
{
BDDataSet.ПользователиDataTable dt =
пользователиTableAdapter.GetDataByЛогинПароль(textBox1.Text, textBox2.Text);
if (dt != null && dt.Rows.Count > 0)
{
BDDataSet.ПользователиRow p =
(BDDataSet.ПользователиRow)dt.Rows[0];
Form1 f = new Form1();
f.KodSotrud = p.КодСотрудника;
f.Show();
this.Hide();
}
}
private void FormAuth_Load(object sender, EventArgs e)
{
// TODO: данная строка кода позволяет загрузить данные в таблицу
"bDDataSet.Пользователи". При необходимости она может быть перемещена или
удалена.
this.пользователиTableAdapter.Fill(this.bDDataSet.Пользователи);
}
private void button3_Click(object sender, EventArgs e)
{
BDDataSet.ПользователиDataTable dt =
пользователиTableAdapter.GetDataByЛогинПароль(textBox1.Text, textBox2.Text);
if (dt != null && dt.Rows.Count > 0)
{
BDDataSet.ПользователиRow p =
(BDDataSet.ПользователиRow)dt.Rows[0];
Form1 f = new Form1();
f.KodSotrud = p.КодСотрудника;
f.isAdmin = true;
f.Show();
this.Hide();
}
}
private void button2_Click(object sender, EventArgs e)
{
BDDataSet.ПользователиDataTable dt =
пользователиTableAdapter.GetDataByЛогинПароль(textBox1.Text, textBox2.Text);
if (dt != null && dt.Rows.Count > 0)
{
94
BDDataSet.ПользователиRow p =
(BDDataSet.ПользователиRow)dt.Rows[0];
Form1 f = new Form1();
f.KodSotrud = p.КодСотрудника;
f.isIsp = true;
f.Show();
this.Hide();
}
}
}
}
Главный модель системы
using Microsoft.Office.Interop.Word;
using System;
using System.Collections.Generic;
using System.ComponentModel;
using System.Data;
using System.Diagnostics;
using System.Drawing;
using System.IO;
using System.Linq;
using System.Net;
using System.Net.Mail;
using System.Text;
using System.Threading.Tasks;
using System.Windows.Forms;
namespace UchZayavka
{
public partial class Form1 : Form
{
public Form1()
{
InitializeComponent();
}
private void FillTree()
{
foreach (BDDataSet.ВидОрганизацииRow v in
bDDataSet.ВидОрганизации)
{
TreeNode n = treeView1.Nodes.Add(v.Наименование);
BDDataSet.ОрганизацияDataTable dt =
организацияTableAdapter.GetDataByVid(v.КодВидаОрганизации);
foreach (BDDataSet.ОрганизацияRow o in dt.Rows)
{
TreeNode nn=n.Nodes.Add(o.Наименование);
dict.Add(nn, o);
}
}
treeView1.ExpandAll();
}
Dictionary<TreeNode, BDDataSet.ОрганизацияRow> dict = new
Dictionary<TreeNode, BDDataSet.ОрганизацияRow>();
private void Form1_Load(object sender, EventArgs e)
{
// TODO: данная строка кода позволяет загрузить данные в таблицу
"bDDataSet.Комплектующие". При необходимости она может быть перемещена или
удалена.
this.комплектующиеTableAdapter.Fill(this.bDDataSet.Комплектующие);
// TODO: данная строка кода позволяет загрузить данные в таблицу
"bDDataSet.СпецЗаявка". При необходимости она может быть перемещена или
удалена.
this.спецЗаявкаTableAdapter.Fill(this.bDDataSet.СпецЗаявка);
// TODO: данная строка кода позволяет загрузить данные в таблицу
"bDDataSet.КонтактныеДанные". При необходимости она может быть перемещена или
удалена.
95
this.контактныеДанныеTableAdapter.Fill(this.bDDataSet.КонтактныеДанные);
// TODO: данная строка кода позволяет загрузить данные в таблицу
"bDDataSet1.СтатусЗаявителя". При необходимости она может быть перемещена или
удалена.
this.статусЗаявителяTableAdapter.Fill(this.bDDataSet1.СтатусЗаявителя);
// TODO: данная строка кода позволяет загрузить данные в таблицу
"bDDataSet.Результаты". При необходимости она может быть перемещена или
удалена.
this.результатыTableAdapter.Fill(this.bDDataSet.Результаты);
// TODO: данная строка кода позволяет загрузить данные в таблицу
"bDDataSet.ВидОрганизации". При необходимости она может быть перемещена или
удалена.
this.видОрганизацииTableAdapter.Fill(this.bDDataSet.ВидОрганизации);
// TODO: данная строка кода позволяет загрузить данные в таблицу
"bDDataSet.РезультатыОбработки". При необходимости она может быть перемещена
или удалена.
this.результатыОбработкиTableAdapter.Fill(this.bDDataSet.РезультатыОбработки)
;
// TODO: данная строка кода позволяет загрузить данные в таблицу
"bDDataSet.Сотрудники". При необходимости она может быть перемещена или
удалена.
this.сотрудникиTableAdapter.Fill(this.bDDataSet.Сотрудники);
// TODO: данная строка кода позволяет загрузить данные в таблицу
"bDDataSet.СпособПолучения". При необходимости она может быть перемещена или
удалена.
this.способПолученияTableAdapter.Fill(this.bDDataSet.СпособПолучения);
// TODO: данная строка кода позволяет загрузить данные в таблицу
"bDDataSet.КодВидаЗаявки". При необходимости она может быть перемещена или
удалена.
this.кодВидаЗаявкиTableAdapter.Fill(this.bDDataSet.КодВидаЗаявки);
// TODO: данная строка кода позволяет загрузить данные в таблицу
"bDDataSet.Организация". При необходимости она может быть перемещена или
удалена.
this.организацияTableAdapter.Fill(this.bDDataSet.Организация);
// TODO: данная строка кода позволяет загрузить данные в таблицу
"bDDataSet.Заявитель". При необходимости она может быть перемещена или
удалена.
this.заявительTableAdapter.Fill(this.bDDataSet.Заявитель);
// TODO: данная строка кода позволяет загрузить данные в таблицу
"bDDataSet.Заявка". При необходимости она может быть перемещена или удалена.
this.заявкаTableAdapter.Fill(this.bDDataSet.Заявка);
if (isIsp)
{
panel1.Visible = false;
бланкиToolStripMenuItem.Visible = false;
отчетыToolStripMenuItem.Visible = false;
видыОрганизацийToolStripMenuItem.Visible = false;
организацииToolStripMenuItem.Visible = false;
группыЗаявокToolStripMenuItem.Visible = false;
статусыЗаявителейToolStripMenuItem.Visible = false;
пользователиToolStripMenuItem.Visible = false;
panel4.Enabled = false;
bindingNavigator2.Enabled = false;
bindingNavigator4.Enabled = false;
bindingNavigator1.Enabled = false;
заявкаBindingSource.Filter = "КомуОтправлена=" +
KodSotrud.ToString();
}
else
{
FillTree();
}
}
96
public bool isAdmin=false;
public bool isIsp= false;
private void toolStripButton1_Click(object sender, EventArgs e)
{
this.Validate();
this.заявкаBindingSource1.EndEdit();
BDDataSet.ЗаявкаDataTable deletedOrders =
(BDDataSet.ЗаявкаDataTable)
bDDataSet.Заявка.GetChanges(DataRowState.Deleted);
BDDataSet.ЗаявкаDataTable newOrders = (BDDataSet.ЗаявкаDataTable)
bDDataSet.Заявка.GetChanges(DataRowState.Added);
BDDataSet.ЗаявкаDataTable modifiedOrders =
(BDDataSet.ЗаявкаDataTable)
bDDataSet.Заявка.GetChanges(DataRowState.Modified);
if (deletedOrders != null)
{
заявкаTableAdapter.Update(deletedOrders);
}
if (newOrders != null)
{
заявкаTableAdapter.Update(newOrders);
}
if (modifiedOrders != null)
{
заявкаTableAdapter.Update(modifiedOrders);
}
bDDataSet.AcceptChanges();
}
private void toolStripButton2_Click(object sender, EventArgs e)
{
this.Validate();
this.заявительBindingSource.EndEdit();
BDDataSet.ЗаявительDataTable deletedOrders =
(BDDataSet.ЗаявительDataTable)
bDDataSet.Заявитель.GetChanges(DataRowState.Deleted);
BDDataSet.ЗаявительDataTable newOrders =
(BDDataSet.ЗаявительDataTable)
bDDataSet.Заявитель.GetChanges(DataRowState.Added);
BDDataSet.ЗаявительDataTable modifiedOrders =
(BDDataSet.ЗаявительDataTable)
bDDataSet.Заявитель.GetChanges(DataRowState.Modified);
if (deletedOrders != null)
{
заявительTableAdapter.Update(deletedOrders);
}
if (newOrders != null)
{
заявительTableAdapter.Update(newOrders);
}
97
if (modifiedOrders != null)
{
заявительTableAdapter.Update(modifiedOrders);
}
bDDataSet.AcceptChanges();
}
private void toolStripButton3_Click(object sender, EventArgs e)
{
this.Validate();
this.результатыОбработкиBindingSource.EndEdit();
BDDataSet.РезультатыОбработкиDataTable deletedOrders =
(BDDataSet.РезультатыОбработкиDataTable)
bDDataSet.РезультатыОбработки.GetChanges(DataRowState.Deleted);
BDDataSet.РезультатыОбработкиDataTable newOrders =
(BDDataSet.РезультатыОбработкиDataTable)
bDDataSet.РезультатыОбработки.GetChanges(DataRowState.Added);
BDDataSet.РезультатыОбработкиDataTable modifiedOrders =
(BDDataSet.РезультатыОбработкиDataTable)
bDDataSet.РезультатыОбработки.GetChanges(DataRowState.Modified);
if (deletedOrders != null)
{
результатыОбработкиTableAdapter.Update(deletedOrders);
}
if (newOrders != null)
{
результатыОбработкиTableAdapter.Update(newOrders);
}
if (modifiedOrders != null)
{
результатыОбработкиTableAdapter.Update(modifiedOrders);
}
bDDataSet.AcceptChanges();
}
private void организацииToolStripMenuItem_Click(object sender,
EventArgs e)
{
FormOrg f = new FormOrg();
f.Show();
}
private void dataGridView2_CellClick(object sender,
DataGridViewCellEventArgs e)
{
if (e.RowIndex < 0 ||
dataGridView2.Rows[e.RowIndex].DataBoundItem==null) return;
BDDataSet.ЗаявкаRow mod =
(BDDataSet.ЗаявкаRow)((DataRowView)dataGridView2.Rows[e.RowIndex].DataBoundIt
em).Row;
if (mod == null) return;
if (e.ColumnIndex == 11)
{
if (mod.IsДокументыNull())
98
{
MessageBox.Show("Документы не загружены");
return;
}
//открыть
string filename =
Path.ChangeExtension(Path.GetTempFileName(), mod.Расширение);
File.WriteAllBytes(filename, mod.Документы);
Process.Start(filename);
}
if (e.ColumnIndex == 10)
{
//загрузить
OpenFileDialog o = new OpenFileDialog();
if (o.ShowDialog() == DialogResult.OK)
{
mod.Расширение =
Path.GetExtension(o.FileName).Replace(".", "");
Byte[] byteArray = File.ReadAllBytes(o.FileName);
mod.Документы = byteArray;
заявкаTableAdapter.Update(mod);
bDDataSet.AcceptChanges();
}
}
}
public int Sotrudnik = 1;
private void button1_Click(object sender, EventArgs e)
{
FormNewZayavka z = new FormNewZayavka();
z.SposobPolush = 1;
z.KodSotrud = Sotrudnik;
z.txt = "Заявка по личному обращению";
z.KodOrganiz = org.КодОрганизации;
z.ShowDialog();
заявкаTableAdapter.Fill(bDDataSet.Заявка);
}
private void button2_Click(object sender, EventArgs e)
{
FormNewZayavka z = new FormNewZayavka();
z.SposobPolush = 2;
z.KodSotrud = Sotrudnik;
z.txt = "Заявка по электронной почте";
z.KodOrganiz = org.КодОрганизации;
z.ShowDialog();
заявкаTableAdapter.Fill(bDDataSet.Заявка);
}
private void button3_Click(object sender, EventArgs e)
{
FormNewZayavka z = new FormNewZayavka();
z.SposobPolush = 3;
z.KodSotrud = Sotrudnik;
z.txt = "Заявка по почте (письмо)";
z.KodOrganiz = org.КодОрганизации;
z.ShowDialog();
заявкаTableAdapter.Fill(bDDataSet.Заявка);
}
private void button4_Click(object sender, EventArgs e)
{
FormNewZayavka z = new FormNewZayavka();
z.SposobPolush = 4;
z.KodSotrud = Sotrudnik;
z.txt = "Заявка по телефону";
z.KodOrganiz = org.КодОрганизации;
z.ShowDialog();
заявкаTableAdapter.Fill(bDDataSet.Заявка);
}
99
BDDataSet.ОрганизацияRow org;
private void treeView1_AfterSelect(object sender, TreeViewEventArgs
e)
{
if (e.Node.Parent==null)
{
foreach (Control c in tabPage1.Controls)
{
c.Enabled = false;
dataGridView2.Visible = false;
dataGridView4.Visible = false;
dataGridView3.Visible = false;
}
}
else
{
org = dict[e.Node];
заявкаBindingSource.Filter = "КодОрганизации =" +
org.КодОрганизации.ToString();
//результатыОбработкиBindingSource.Filter = "КодОрганизации
=" + org.КодОрганизации.ToString();
bDDataSet.Заявка.КодОрганизацииColumn.DefaultValue =
org.КодОрганизации;
foreach (Control c in tabPage1.Controls)
{
c.Enabled = true;
dataGridView2.Visible = !false;
dataGridView4.Visible = !false;
dataGridView3.Visible = !false;
}
}
}
private void результатыОбработкиToolStripMenuItem_Click(object
sender, EventArgs e)
{
FormResult f = new FormResult();
f.Show();
}
static object oMissing = System.Reflection.Missing.Value;
private Microsoft.Office.Interop.Word.Document LoadTemplate(string
filePath)
{
object oTemplate = filePath;
Microsoft.Office.Interop.Word.Document oDoc =
wdApp.Documents.Add(ref oTemplate, ref oMissing, ref oMissing, ref oMissing);
return oDoc;
}
Microsoft.Office.Interop.Word.Application wdApp;
System.Data.DataTable inv = new System.Data.DataTable();
/// <summary>
///
/// </summary>
/// <param name="dt"></param>
/// <param name="tbl"></param>
/// <param name="title"></param>
private void ExpGridToWord(System.Data.DataTable dt,
Microsoft.Office.Interop.Word.Table tbl, string title)
{
int row = 1;
// Microsoft.Office.Interop.Word.WdParagraphAlignment alg =
Microsoft.Office.Interop.Word.WdParagraphAlignment.wdAlignParagraphCenter;
// tbl.Cell(row, 1).Range.Text = title;
//tbl.Rows[1].Cells.Merge();
//tbl.Rows[1].Range.Paragraphs[1].Alignment = alg;
100
row = 1;
for (int i = 0; i < dt.Columns.Count; i++)
{
tbl.Cell(row, i + 1).Range.Text = dt.Columns[i].Caption;
}
row = 2;
int col = 0;
for (int i = 0; i < dt.Rows.Count; i++)
{
col = 1;
for (int j = 0; j < dt.Columns.Count; j++)
{
tbl.Cell(row, col).Range.Text = dt.Rows[i][j].ToString();
col++;
}
row++;
}
}
private void Print(BDDataSet.ЗаявкаRow mod)
{
if (mod == null) return;
Microsoft.Office.Interop.Word.Document wdDoc;
wdApp = new Microsoft.Office.Interop.Word.Application();
wdApp.Visible = false;
BDDataSet.СпособПолученияRow sp =
bDDataSet.СпособПолучения.FindByКодСпособа(mod.КодСпособаПолучения);
BDDataSet.ЗаявительRow z =
bDDataSet.Заявитель.FindByКодЗаявителя(mod.КодЗаявителя);
BDDataSet.ОрганизацияRow org =
bDDataSet.Организация.FindByКодОрганизации(mod.КодОрганизации);
BDDataSet.СотрудникиRow sotr =
bDDataSet.Сотрудники.FindByКодСотрудника(mod.КодСотрудника);
wdDoc = LoadTemplate(Environment.CurrentDirectory +
@"\шаблоны\заявка.docx");
wdDoc.Bookmarks["з1"].Select();
wdApp.Selection.TypeText(z.IsФИОNull() ? "" : z.ФИО);
wdDoc.Bookmarks["фио"].Select();
wdApp.Selection.TypeText(z.IsФИОNull() ? "" : z.ФИО);
wdDoc.Bookmarks["зп"].Select();
wdApp.Selection.TypeText(z.IsОГРНNull() ? "" : z.ОГРН);
wdDoc.Bookmarks["за"].Select();
wdApp.Selection.TypeText(z.IsАдресNull() ? "" : z.Адрес);
wdDoc.Bookmarks["зт"].Select();
wdApp.Selection.TypeText(z.IsТелефонNull() ? "" : z.Телефон);
wdDoc.Bookmarks["зэ"].Select();
wdApp.Selection.TypeText(z.IsЭлектроннаяПочтаNull() ? "" :
z.ЭлектроннаяПочта);
wdDoc.Bookmarks["номер"].Select();
wdApp.Selection.TypeText(mod.IsНомерЗаявкиNull() ? "" :
mod.НомерЗаявки);
wdDoc.Bookmarks["дата"].Select();
101
wdApp.Selection.TypeText(mod.IsДатаЗаявкиNull() ? "" :
mod.ДатаЗаявки.ToShortDateString());
wdDoc.Bookmarks["орг"].Select();
wdApp.Selection.TypeText(org.IsНаименованиеNull() ? "" :
org.Наименование);
wdDoc.Bookmarks["способ"].Select();
wdApp.Selection.TypeText(sp.IsНаименованиеNull() ? "" :
sp.Наименование);
wdDoc.Bookmarks["сотр"].Select();
wdApp.Selection.TypeText(sotr.IsФИОNull() ? "" : sotr.ФИО);
StringBuilder sb = new StringBuilder();
if (!mod.IsРасширениеNull())
{
sb.Append("К заявлению приложены документы.");
}
else
{
sb.Append("К заявлению документы не приложены.");
}
wdDoc.Bookmarks["tabl"].Select();
// BindingSource bs = (BindingSource)dataGridView4.DataSource;
// System.Data.DataTable dt =
(System.Data.DataTable)((BDDataSet)bs.DataSource).Tables[18];
Microsoft.Office.Interop.Word.Table tbl1 =
wdApp.Selection.Tables.Add(wdApp.Selection.Range, 1,2);
//заголовки колонок
for (int i = 0; i <= 1; i++)
{
tbl1.Cell(1, i + 1).Range.Text =
dataGridView4.Columns[2+i].HeaderText;
tbl1.Cell(1, i +
1).Range.Borders[WdBorderType.wdBorderLeft].LineStyle =
WdLineStyle.wdLineStyleSingle;
tbl1.Cell(1, i +
1).Range.Borders[WdBorderType.wdBorderRight].LineStyle =
WdLineStyle.wdLineStyleSingle;
tbl1.Cell(1, i +
1).Range.Borders[WdBorderType.wdBorderTop].LineStyle =
WdLineStyle.wdLineStyleSingle;
tbl1.Cell(1, i +
1).Range.Borders[WdBorderType.wdBorderBottom].LineStyle =
WdLineStyle.wdLineStyleSingle;
}
//строки таблицы
for (int i = 0; i <= dataGridView4.Rows.Count - 1; i++)
{
tbl1.Rows.Add();
for (int j = 0; j <= 1; j++)
{
if (dataGridView4.Rows[i].Cells[2 + j].Value == null)
continue;
if (j == 0) tbl1.Cell(tbl1.Rows.Count, j + 1).Range.Text
=
bDDataSet.Комплектующие.FindByКодКомплект(Convert.ToInt32(dataGridView4.Rows[
i].Cells[2 + j].Value)).Наименование;
else
{
tbl1.Cell(tbl1.Rows.Count, j + 1).Range.Text =
dataGridView4.Rows[i].Cells[2 + j].Value == null ? "" :
dataGridView4.Rows[i].Cells[j].Value.ToString();

Смотрите также:

"Автоматизация обработки заявок ООО "Проектно-Строительная Компания"
"Автоматизация процесса аттестации персонала для ООО "Нэт Бай Нэт Холдинг"
"Анализ интернет-активности конкурентов ( на примере конкурентов "Газпром нефть")
"Бухгалтерский учёт и аудит расчётов с подотчётними лицами в организации на примере ООО "ЛОЦ 10""
«Психологическое сопровождение персонала в организации на примере ООО «Крокус»
Cовершенствование деловой оценки персонала в организации (на примере ООО "Даймонд кейтеринг развитие")
IPO - инструмент финансирования деятельности организации. На примере ПАО «Нефтяная компания «Лукойл»
PR как средство продвижения организации (на примере ПАО "Тамбовский завод "Комсомолец им. Н.С. Артемова")
PR-коммуникации в сфере общественного питания (на примере кафе-кондитерской «Cream Cheese»)
SMM как средство повышения эффективности работы учреждений социокультурной сферы (на примере Малого театра)