294 lines
11 KiB
C#
294 lines
11 KiB
C#
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 Mip
|
|
{
|
|
public partial class frmVybratTypVyhodnotenia : Form
|
|
{
|
|
DataTable dopyty;
|
|
public frmVybratTypVyhodnotenia()
|
|
{
|
|
InitializeComponent();
|
|
string cmd = "";
|
|
|
|
cmd = $@"select `Zakaznik` as 'Zákazník',
|
|
`IdVyrobok` as 'ID výrobok',
|
|
`NazovVyrobku` as 'Názov výrobku',
|
|
`Material` as 'Materiál',
|
|
`Pocetkusov` as 'Počet',
|
|
`CenaOBJ` as 'Cena',
|
|
`ZakCislo` as 'Zákazkové číslo',
|
|
'0' as 'ID naceňovanie'
|
|
from `pohladdopyty`
|
|
where ((`pohladdopyty`.TypDopytu = 'Objednávka' or `pohladdopyty`.TypDopytu = 'Objednávka do kontraktu') and `pohladdopyty`.`StatusDopytu` = 'Odoslaná')
|
|
union select `tabvyrobok`.Zakaznik as 'Zákazník',
|
|
`tab-nacenovanie`.IdVyrobokNac as 'ID výrobok',
|
|
`tabvyrobok`.NazovVyrobku as 'Názov výrobku',
|
|
`Material1` as 'Materiál',
|
|
`PocetNacenovanychKusov` as 'Počet',
|
|
`myNuD71` as 'Cena',
|
|
'0' as 'Zákazkové číslo',
|
|
`tab-nacenovanie`.IDNacenovanie as 'ID naceňovanie'
|
|
from `tab-nacenovanie`
|
|
left join `tabvyrobok` on `tab-nacenovanie`.IdVyrobokNac = `tabvyrobok`.IdVyrobok
|
|
left join `tab-nacenovanie-nacenovanie` on `tab-nacenovanie`.IDNacenovanie = `tab-nacenovanie-nacenovanie`.IDNacenovanie
|
|
where `tab-nacenovanie-nacenovanie`.myNuD71 > 0";
|
|
classSQL.SQL(cmd, out dopyty);
|
|
refreshZoznamTypVyhodnotenia();
|
|
}
|
|
|
|
private void refreshZoznamTypVyhodnotenia()
|
|
{
|
|
DataTable dataTable = new DataTable();
|
|
if (checkBox3.Checked)
|
|
{
|
|
dataTable = null;
|
|
}
|
|
else
|
|
if (checkBox1.Checked)
|
|
{
|
|
if (checkBox2.Checked)
|
|
{
|
|
try
|
|
{
|
|
dataTable = dopyty.AsEnumerable()
|
|
.Where(row =>
|
|
row.Field<String>("Zákazkové číslo").ToLower().Contains(textBox1.Text.ToLower())
|
|
&& row.Field<String>("Zákazník").ToLower().Contains(textBox4.Text.ToLower())
|
|
&& row.Field<String>("Názov výrobku").ToLower().Contains(textBox2.Text.ToLower())
|
|
).CopyToDataTable();
|
|
}
|
|
catch
|
|
{
|
|
dataTable = null;
|
|
}
|
|
}
|
|
else
|
|
{
|
|
try
|
|
{
|
|
dataTable = dopyty.AsEnumerable()
|
|
.Where(row =>
|
|
row.Field<String>("Zákazkové číslo").ToLower().Contains(textBox1.Text.ToLower())
|
|
&& row.Field<String>("Zákazník").ToLower().Contains(textBox4.Text.ToLower())
|
|
&& row.Field<String>("Názov výrobku").ToLower().Contains(textBox2.Text.ToLower())
|
|
&& row.Field<String>("Zákazkové číslo") != "0"
|
|
).CopyToDataTable();
|
|
}
|
|
catch
|
|
{
|
|
dataTable = null;
|
|
}
|
|
}
|
|
|
|
}
|
|
else
|
|
{
|
|
if (checkBox2.Checked)
|
|
{
|
|
try
|
|
{
|
|
dataTable = dopyty.AsEnumerable()
|
|
.Where(row =>
|
|
row.Field<String>("Zákazkové číslo").ToLower().Contains(textBox1.Text.ToLower())
|
|
&& row.Field<String>("Zákazník").ToLower().Contains(textBox4.Text.ToLower())
|
|
&& row.Field<String>("Názov výrobku").ToLower().Contains(textBox2.Text.ToLower())
|
|
&& row.Field<String>("ID naceňovanie") != "0"
|
|
).CopyToDataTable();
|
|
}
|
|
catch
|
|
{
|
|
dataTable = null;
|
|
}
|
|
}
|
|
else
|
|
{
|
|
try
|
|
{
|
|
dataTable = dopyty.AsEnumerable()
|
|
.Where(row =>
|
|
row.Field<String>("Zákazkové číslo").ToLower().Contains(textBox1.Text.ToLower())
|
|
&& row.Field<String>("Zákazník").ToLower().Contains(textBox4.Text.ToLower())
|
|
&& row.Field<String>("Názov výrobku").ToLower().Contains(textBox2.Text.ToLower())
|
|
&& row.Field<String>("Zákazkové číslo") == "0"
|
|
&& row.Field<String>("ID naceňovanie") == "0"
|
|
).CopyToDataTable();
|
|
}
|
|
catch
|
|
{
|
|
dataTable = null;
|
|
}
|
|
}
|
|
}
|
|
|
|
if(dataTable == null) label9.Text = "0";
|
|
else label9.Text = dataTable.Rows.Count.ToString();
|
|
dataGridView2.DataSource = dataTable;
|
|
dataGridView2.ClearSelection();
|
|
|
|
}
|
|
|
|
private void textBox1_TextChanged(object sender, EventArgs e)
|
|
{
|
|
refreshZoznamTypVyhodnotenia();
|
|
}
|
|
|
|
private void textBox4_TextChanged(object sender, EventArgs e)
|
|
{
|
|
refreshZoznamTypVyhodnotenia();
|
|
}
|
|
|
|
private void textBox2_TextChanged(object sender, EventArgs e)
|
|
{
|
|
refreshZoznamTypVyhodnotenia();
|
|
}
|
|
|
|
private void checkBox1_CheckedChanged(object sender, EventArgs e)
|
|
{
|
|
refreshZoznamTypVyhodnotenia();
|
|
}
|
|
|
|
private void checkBox2_CheckedChanged(object sender, EventArgs e)
|
|
{
|
|
refreshZoznamTypVyhodnotenia();
|
|
}
|
|
|
|
private void checkBox3_CheckedChanged(object sender, EventArgs e)
|
|
{
|
|
if (checkBox1.Enabled == true)
|
|
{
|
|
checkBox1.Enabled = false;
|
|
checkBox2.Enabled = false;
|
|
label7.Enabled = true;
|
|
label8.Enabled = true;
|
|
label10.Enabled = true;
|
|
label11.Enabled = true;
|
|
numericUpDown1.Enabled = true;
|
|
numericUpDown1.Value = 0;
|
|
numericUpDown2.Enabled = true;
|
|
numericUpDown2.Value = 1;
|
|
textBox5.Enabled = true;
|
|
textBox5.Text = "";
|
|
textBox3.Text = "";
|
|
loadTextBox5();
|
|
}
|
|
else
|
|
{
|
|
checkBox1.Enabled = true;
|
|
checkBox2.Enabled = true;
|
|
label7.Enabled = false;
|
|
label8.Enabled = false;
|
|
label10.Enabled = false;
|
|
label11.Enabled = false;
|
|
numericUpDown1.Enabled = false;
|
|
numericUpDown1.Value = 0;
|
|
numericUpDown2.Enabled = false;
|
|
numericUpDown2.Value = 1;
|
|
textBox5.Enabled = false;
|
|
textBox5.Text = "";
|
|
textBox3.Text = "";
|
|
}
|
|
refreshZoznamTypVyhodnotenia();
|
|
}
|
|
|
|
private void loadTextBox5()
|
|
{
|
|
if(textBox5.Enabled == true)
|
|
{
|
|
string[] postSourceZakaznik = dopyty
|
|
.AsEnumerable()
|
|
.GroupBy(x => x.Field<String>("Zákazník"))
|
|
.Select(x => x.First())
|
|
.CopyToDataTable()
|
|
.AsEnumerable()
|
|
.Select<DataRow, String>(x => x.Field<String>("Zákazník"))
|
|
.ToArray();
|
|
|
|
var source2 = new AutoCompleteStringCollection();
|
|
source2.AddRange(postSourceZakaznik);
|
|
|
|
textBox5.AutoCompleteCustomSource = source2;
|
|
textBox5.AutoCompleteMode = AutoCompleteMode.SuggestAppend;
|
|
textBox5.AutoCompleteSource = AutoCompleteSource.CustomSource;
|
|
}
|
|
else
|
|
{
|
|
textBox5.AutoCompleteCustomSource = null;
|
|
textBox5.AutoCompleteMode = AutoCompleteMode.None;
|
|
textBox5.AutoCompleteSource = AutoCompleteSource.None;
|
|
}
|
|
loadTextBox3();
|
|
}
|
|
|
|
private void loadTextBox3()
|
|
{
|
|
if (textBox3.Enabled == true)
|
|
{
|
|
try
|
|
{
|
|
string[] postSourceVyrobok = dopyty
|
|
.AsEnumerable()
|
|
.GroupBy(x => x.Field<String>("Názov výrobku"))
|
|
.Select(x => x.First())
|
|
.Where(y => y.Field<String>("Zákazník").ToLower().Contains(textBox5.Text.ToLower()))
|
|
.CopyToDataTable()
|
|
.AsEnumerable()
|
|
.Select<DataRow, String>(x => x.Field<String>("Názov výrobku"))
|
|
.ToArray();
|
|
|
|
var source = new AutoCompleteStringCollection();
|
|
source.AddRange(postSourceVyrobok);
|
|
|
|
textBox3.AutoCompleteCustomSource = source;
|
|
textBox3.AutoCompleteMode = AutoCompleteMode.SuggestAppend;
|
|
textBox3.AutoCompleteSource = AutoCompleteSource.CustomSource;
|
|
}
|
|
catch
|
|
{
|
|
|
|
}
|
|
}
|
|
else
|
|
{
|
|
textBox3.AutoCompleteCustomSource = null;
|
|
textBox3.AutoCompleteMode = AutoCompleteMode.None;
|
|
textBox3.AutoCompleteSource = AutoCompleteSource.None;
|
|
|
|
}
|
|
}
|
|
|
|
private void textBox5_TextChanged(object sender, EventArgs e)
|
|
{
|
|
if(textBox5.Text != "" && textBox5.Enabled == true) { label5.Enabled = true; textBox3.Enabled = true; }
|
|
else { label5.Enabled = false; textBox3.Enabled = false; }
|
|
loadTextBox3();
|
|
}
|
|
|
|
private void dataGridView2_CellClick(object sender, DataGridViewCellEventArgs e)
|
|
{
|
|
textBox5.Text = dataGridView2.SelectedRows[0].Cells["Zákazník"].Value.ToString();
|
|
textBox3.Text = dataGridView2.SelectedRows[0].Cells["Názov výrobku"].Value.ToString();
|
|
numericUpDown2.Value = Int32.Parse(dataGridView2.SelectedRows[0].Cells["Počet"].Value.ToString());
|
|
numericUpDown1.Value = Decimal.Parse(dataGridView2.SelectedRows[0].Cells["Cena"].Value.ToString());
|
|
}
|
|
|
|
private void numericUpDown1_ValueChanged(object sender, EventArgs e)
|
|
{
|
|
if (numericUpDown1.Value > 0 && textBox3.Text != "") button2.Enabled = true;
|
|
else button2.Enabled = false;
|
|
}
|
|
|
|
private void frmVybratTypVyhodnotenia_Load(object sender, EventArgs e)
|
|
{
|
|
dataGridView2.ClearSelection();
|
|
}
|
|
}
|
|
}
|