using System;
using System.Collections.Generic;
using System.ComponentModel;
using System.Data;
using System.Data.SqlClient;
using System.Drawing;
using System.Windows.Forms;
using System.IO;
using System.Text;
using Baza_Reklam.Classes;
namespace Baza_Reklam
{
public partial class ProductionForm : Form
{
//Nr wydań wg których generowane są listy do klientów
private static ProductionForm productionForm;
private SqlCommand command;
private short nrAMT;
private short nrGS1;
private short nrGS2;
private short nrWyd;
private string query = "select * from dbo.PRODUKCJA where 1=1 ";
//zapytanie wybierające projekty będące w stanie produkcji
private string queryDzisiaj;
private SqlDataAdapter sqlDataAdapter;
private string tyt;
private ProductionForm(MDIBazaReklam parent)
{
InitializeComponent();
MdiParent = parent;
gRZBIETYTableAdapter.Connection.ConnectionString = ConnString.getConnString().Value;
aGENCJETableAdapter.Connection.ConnectionString = ConnString.getConnString().Value;
aGENCITableAdapter.Connection.ConnectionString = ConnString.getConnString().Value;
lISTA_TYTULOWTableAdapter.Connection.ConnectionString = ConnString.getConnString().Value;
reklamaTableAdapter.Connection.ConnectionString = ConnString.getConnString().Value;
pRODUKCJATableAdapter.Connection.ConnectionString = ConnString.getConnString().Value;
listaReklamDoWydaniaNrTableAdapter.Connection.ConnectionString = ConnString.getConnString().Value;
aGENCJETableAdapter.Connection.ConnectionString = ConnString.getConnString().Value;
aGENCITableAdapter.Connection.ConnectionString = ConnString.getConnString().Value;
listyTableAdapter.Connection.ConnectionString = ConnString.getConnString().Value;
listyPodsumowanieTableAdapter.Connection.ConnectionString = ConnString.getConnString().Value;
klienciTableAdapter1.Connection.ConnectionString = ConnString.getConnString().Value;
zwrotToolStripButton.Enabled = false;
doDTPToolStripButton.Enabled = false;
proToolStripButton.Enabled = false;
doKorektyToolStripButton.Enabled = false;
doDTP2ToolStripButton.Enabled = false;
doKorekty2ToolStripButton.Enabled = false;
doAgentaToolStripButton.Enabled = false;
produkcjaDataGridView.Sort(zAMAWIAMNADataGridViewTextBoxColumn, ListSortDirection.Descending);
queryDzisiaj = buildQuery();
uprawnienia();
nrAMTToolStripTextBox.Text = Global.getGlobal().NrAMT.ToString();
nrGS1ToolStripTextBox.Text = Global.getGlobal().NrGS1.ToString();
nrGS2ToolStripTextBox.Text = Global.getGlobal().NrGS2.ToString();
dateTimePicker1.Value = DateTime.Today;
if (!ConnString.getConnString().Value.Contains("truck"))
{
//w Sampressie w tej kolumnie jest zapisana wersja językowa projektu/ w bazie CT niewykorzystywane
szkic.Visible = false;
}
}
public static ProductionForm getProductionForm(MDIBazaReklam parent)
{
if (productionForm == null)
{
productionForm = new ProductionForm(parent);
}
return productionForm;
}
private void ProductionForm_Load(object sender, EventArgs e)
{
aGENCJETableAdapter.Fill(sLOWNIKDataSet.AGENCJE);
aGENCITableAdapter.Fill(sLOWNIKDataSet.AGENCI);
gRZBIETYTableAdapter.Fill(sLOWNIKDataSet.GRZBIETY);
lISTA_TYTULOWTableAdapter.Fill(sLOWNIKDataSet.LISTA_TYTULOW);
tytulComboBox.SelectedIndex = 1;
tytulComboBox.SelectedIndex = 0;
SqlConnection conn = new SqlConnection(ConnString.getConnString().Value);
sqlDataAdapter = new SqlDataAdapter();
command = new SqlCommand();
command.CommandText = queryDzisiaj;
command.CommandType = CommandType.Text;
command.Connection = conn;
sqlDataAdapter.SelectCommand = command;
sqlDataAdapter.Fill(rEKLAMADataSet.PRODUKCJA);
}
private void dataGridView1_SelectionChanged(object sender, EventArgs e)
{
if (pRODUKCJABindingSource.Current != null)
{
DataRowView row = (DataRowView) pRODUKCJABindingSource.Current;
plikToolStripTextBox.Text = Convert.ToString(row["PLIK"]);
}
zablokujButtony();
}
private void zwrotToolStripButton_Click(object sender, EventArgs e)
{
if (pRODUKCJABindingSource.Current != null)
{
wylaczSortowanieGrida();
DataRowView row = (DataRowView) pRODUKCJABindingSource.Current;
row["PRODUKCJA"] = User.getUser().Login;
row["DATA_PRODUKCJA"] = DateTime.Now;
// na koncu,bo moze byc sortowanie po stanie
row["stan"] = "ZWROT Z PRODUKCJI";
pRODUKCJABindingSource.EndEdit();
pRODUKCJATableAdapter.Update(rEKLAMADataSet.PRODUKCJA);
zablokujButtony();
wlaczSortowanieGrida();
}
}
private void doDTPToolStripButton_Click(object sender, EventArgs e)
{
if (pRODUKCJABindingSource.Current != null)
{
wylaczSortowanieGrida();
DataRowView row = (DataRowView) pRODUKCJABindingSource.Current;
row["PRODUKCJA"] = User.getUser().Login;
row["DATA_PRODUKCJA"] = DateTime.Now;
// na koncu,bo moze byc sortowanie po stanie
row["stan"] = "DO DTP";
pRODUKCJABindingSource.EndEdit();
pRODUKCJATableAdapter.Update(rEKLAMADataSet.PRODUKCJA);
zablokujButtony();
wlaczSortowanieGrida();
}
}
private void proToolStripButton_Click(object sender, EventArgs e)
{
if (pRODUKCJABindingSource.Current != null)
{
wylaczSortowanieGrida();
DataRowView row = (DataRowView) pRODUKCJABindingSource.Current;
REKLAMADataSet.PRODUKCJADataTable t = pRODUKCJATableAdapter.GetDataById(Convert.ToInt32(row["ID"]));
if (!t[0].IsDTPNull())
{
if (
MessageBox.Show("Zlecenie jest już w DTP. Czy chcesz je przejąć ?", "", MessageBoxButtons.YesNo) ==
DialogResult.No)
{
return;
}
}
row["DTP"] = User.getUser().Login;
row["DATA_DTP"] = DateTime.Now;
// na koncu,bo moze byc sortowanie po stanie
row["stan"] = "W DTP";
pRODUKCJABindingSource.EndEdit();
pRODUKCJATableAdapter.Update(rEKLAMADataSet.PRODUKCJA);
zablokujButtony();
wlaczSortowanieGrida();
}
}
private void doKorektyToolStripButton_Click(object sender, EventArgs e)
{
if (pRODUKCJABindingSource.Current != null)
{
wylaczSortowanieGrida();
DataRowView row = (DataRowView) pRODUKCJABindingSource.Current;
row["stan"] = "DO KOREKTY";
pRODUKCJABindingSource.EndEdit();
pRODUKCJATableAdapter.Update(rEKLAMADataSet.PRODUKCJA);
zablokujButtony();
wlaczSortowanieGrida();
}
}
private void doDTP2ToolStripButton_Click(object sender, EventArgs e)
{
if (pRODUKCJABindingSource.Current != null)
{
wylaczSortowanieGrida();
DataRowView row = (DataRowView) pRODUKCJABindingSource.Current;
row["KOREKTA"] = User.getUser().Login;
row["DATA_KOREKTA"] = DateTime.Now;
// na koncu,bo moze byc sortowanie po stanie
row["stan"] = "PO KOREKCIE";
pRODUKCJABindingSource.EndEdit();
pRODUKCJATableAdapter.Update(rEKLAMADataSet.PRODUKCJA);
zablokujButtony();
wlaczSortowanieGrida();
}
}
private void doKorekty2ToolStripButton_Click(object sender, EventArgs e)
{
if (pRODUKCJABindingSource.Current != null)
{
wylaczSortowanieGrida();
DataRowView row = (DataRowView) pRODUKCJABindingSource.Current;
row["DTP_PO_KOR"] = User.getUser().Login;
row["DATA_DTP_PO_KOR"] = DateTime.Now;
// na koncu,bo moze byc sortowanie po stanie
row["stan"] = "W 2 KOREKCIE";
pRODUKCJABindingSource.EndEdit();
pRODUKCJATableAdapter.Update(rEKLAMADataSet.PRODUKCJA);
zablokujButtony();
wlaczSortowanieGrida();
}
}
private void doAgentaToolStripButton_Click(object sender, EventArgs e)
{
if (pRODUKCJABindingSource.Current != null)
{
wylaczSortowanieGrida();
DataRowView row = (DataRowView) pRODUKCJABindingSource.Current;
row["DTP_PO_KOR"] = User.getUser().Login;
row["DATA_DTP_PO_KOR"] = DateTime.Now;
//row["DATA_AKCEPTACJI"] = DateTime.Now;
row["stan"] = "DO AKCEPTACJI";
pRODUKCJABindingSource.EndEdit();
pRODUKCJATableAdapter.Update(rEKLAMADataSet.PRODUKCJA);
zablokujButtony();
wlaczSortowanieGrida();
}
}
private void akceptToolStripButton_Click(object sender, EventArgs e)
{
if (ocenaToolStripComboBox.SelectedIndex == -1)
{
MessageBox.Show("Oceń projekt");
}
else
{
if (pRODUKCJABindingSource.Current != null)
{
wylaczSortowanieGrida();
DataRowView row = (DataRowView) pRODUKCJABindingSource.Current;
row["DATA_AKCEPTACJI"] = DateTime.Now;
row["ocena"] = ocenaToolStripComboBox.Items[ocenaToolStripComboBox.SelectedIndex];
// na koncu,bo moze byc sortowanie po stanie
row["stan"] = "ZAAKCEPTOWANE";
pRODUKCJABindingSource.EndEdit();
pRODUKCJATableAdapter.Update(rEKLAMADataSet.PRODUKCJA);
zablokujButtony();
wlaczSortowanieGrida();
}
}
}
private void nieakceptToolStripButton_Click(object sender, EventArgs e)
{
if (pRODUKCJABindingSource.Current != null)
{
wylaczSortowanieGrida();
DataRowView row = (DataRowView) pRODUKCJABindingSource.Current;
row["DATA_AKCEPTACJI"] = DateTime.Now;
row["ocena"] = -1;
// na koncu,bo moze byc sortowanie po stanie
row["stan"] = "NIEZAAKCEPTOWANE";
pRODUKCJABindingSource.EndEdit();
pRODUKCJATableAdapter.Update(rEKLAMADataSet.PRODUKCJA);
zablokujButtony();
wlaczSortowanieGrida();
}
}
private void produkcjaDataGridView_CellLeave(object sender, DataGridViewCellEventArgs e)
{
pRODUKCJABindingSource.CancelEdit();
}
private void szukajToolStripButton_Click(object sender, EventArgs e)
{
if (stanToolStripComboBox.SelectedIndex != -1)
{
Cursor = Cursors.WaitCursor;
command.CommandText = query;
command.Parameters.Clear();
string status = stanToolStripComboBox.SelectedItem.ToString();
if (status == "*W PRODUKCJI*")
{
command.CommandText +=
" AND STAN!='ZAAKCEPTOWANE' AND STAN!='NIEZAAKCEPTOWANE' AND STAN!='DO AKCEPTACJI' AND STAN!='ZWROT Z PRODUKCJI'";
}
else
{
command.CommandText += " AND STAN=@stan ";
command.Parameters.AddWithValue("@stan", status);
//wybieramy z ostatnich 3 miesiecy
if (status == "NIEZAAKCEPTOWANE" || status == "ZAAKCEPTOWANE" || status == "ZWROT Z PRODUKCJI")
{
command.CommandText += "AND datediff(month,DATA_AGENT,getdate()) <= 3 ";
}
}
command.CommandText += "order by DATA_AGENT desc";
rEKLAMADataSet.PRODUKCJA.Clear();
sqlDataAdapter.Fill(rEKLAMADataSet.PRODUKCJA);
Cursor = Cursors.Default;
}
}
private void dzisiajToolStripButton_Click(object sender, EventArgs e)
{
Cursor = Cursors.WaitCursor;
command.CommandText = queryDzisiaj;
sqlDataAdapter.SelectCommand = command;
rEKLAMADataSet.PRODUKCJA.Clear();
sqlDataAdapter.Fill(rEKLAMADataSet.PRODUKCJA);
Cursor = Cursors.Default;
}
///
/// Wczytuje listę reklam na wskazane wydanie i sprawdza czy istnieją pliki do reklam
///
private void button1_Click(object sender, EventArgs e)
{
Cursor = Cursors.WaitCursor;
listaReklamDoWydaniaNrBindingSource.Filter = "";
grzbietyComboBox.SelectedIndex = -1;
if ((tytulComboBox.Text.Trim() != "") && (nrWydaniaTextBox.Text.Trim() != ""))
{
short nr = Convert.ToInt16(nrWydaniaTextBox.Text);
nrWyd = nr;
tyt = tytulComboBox.Text;
listaReklamDoWydaniaNrTableAdapter.Fill2Produkcja(rEKLAMADataSet.ListaReklamDoWydaniaNr,
tytulComboBox.Text, nr);
sprawdzPlikiDlaWszystkichReklam();
}
spisPlikowDataGridView.Refresh();
Cursor = Cursors.Default;
}
///
/// Otwiera plik xtg. Zczytuje z niego reklamy do listy obiektów Reklama.
/// Wpisuje znalezione strony do tabeli.
///
private void XTGbutton_Click(object sender, EventArgs e)
{
openFileDialog.InitialDirectory = "R:\\MAKIETY\\QUARK\\" + tyt + nrWyd;
openFileDialog.DefaultExt = "xtg";
if (openFileDialog.ShowDialog() == DialogResult.OK)
{
xtgTextBox.Text = openFileDialog.FileName;
XTGFile xtgfile = new XTGFile();
List lista = xtgfile.zczytajStronyZplikuXTG(openFileDialog.FileName);
wpiszStronyDoTabeli(lista);
spisPlikowDataGridView.Sort(IdReklamyColumn, ListSortDirection.Ascending);
StringBuilder message = new StringBuilder();
message.AppendLine("Wczytywanie stron z pliku " + openFileDialog.FileName + " zakończone. ");
message.AppendLine("Niewczytane reklamy: ");
foreach (Reklama r in lista)
{
if (!r.wpisana)
{
message.AppendLine(r.nrRek);
}
}
MessageBox.Show(message.ToString());
}
}
public void wpiszStronyDoTabeli(List lista)
{
Cursor = Cursors.WaitCursor;
foreach (DataRowView r in listaReklamDoWydaniaNrBindingSource.List)
{
foreach (Reklama reklama in lista)
{
if (r["id reklamy"].ToString().ToLower().Contains(reklama.nrRek.ToLower()))
{
short test;
bool result = Int16.TryParse(reklama.costam[1], out test);
// r["strona"] = Convert.ToInt16();
if (result)
{
r["strona"] = test;
reklama.wpisana = true;
}
}
}
}
rEKLAMADataSet.ListaReklamDoWydaniaNr.AcceptChanges();
Cursor = Cursors.Default;
}
///
/// Usuwa poprzednie informacje o stronach i zapisuje nowe strony. W tabeli strona nie ma
/// kolumny wyznaczającej tytuł, więc sprawdza grzbiet.
///
private void zapiszStronyButton_Click(object sender, EventArgs e)
{
Cursor = Cursors.WaitCursor;
SqlCommand command = new SqlCommand();
command.Connection = new SqlConnection(ConnString.getConnString().Value);
if (listaReklamDoWydaniaNrBindingSource.Filter == "")
{
command.CommandText = "delete from dbo.REKLAMA_STRONA where nr_wydania=@nrWyd" +
" and ID_GRZBIETU in (select ID from dbo.GRZBIETY where Nazwa like '%'+ @tytul + '%')";
command.Parameters.Clear();
command.Parameters.AddWithValue("@nrWyd", nrWyd);
command.Parameters.AddWithValue("@tytul", tyt);
}
else
{
command.CommandText = "delete from dbo.REKLAMA_STRONA where nr_wydania=@nrWyd" +
" and ID_GRZBIETU = @idGrzbietu";
command.Parameters.Clear();
command.Parameters.AddWithValue("@nrWyd", nrWyd);
command.Parameters.AddWithValue("@tytul", tyt);
command.Parameters.AddWithValue("@idGrzbietu", grzbietyComboBox.SelectedValue);
}
command.Connection.Open();
command.ExecuteNonQuery();
command.Connection.Close();
command.CommandText = "insert into reklama_strona values(@idRek,@nrWyd,@idGrzbiet,@nrStrony);";
command.Connection.Open();
foreach (DataGridViewRow row in spisPlikowDataGridView.Rows)
{
//reklam bez stron i dla autosalonu nie zapisuje w bazie
if ((row.Cells["strona"].Value != null) & (Convert.ToInt32(row.Cells["grzbiet"].Value) != 9))
{
command.Parameters.Clear();
command.Parameters.AddWithValue("@idRek", row.Cells["reklamaId"].Value);
command.Parameters.AddWithValue("@nrWyd", row.Cells["NR"].Value);
command.Parameters.AddWithValue("@idGrzbiet", row.Cells["Grzbiet"].Value);
command.Parameters.AddWithValue("@nrStrony", row.Cells["strona"].Value);
try
{
command.ExecuteNonQuery();
}
catch (Exception e1)
{
MessageBox.Show(e1.Message);
}
}
}
command.Connection.Close();
Cursor = Cursors.Default;
MessageBox.Show("Zapisano strony");
}
private void spisPlikowDataGridView_SelectionChanged(object sender, EventArgs e)
{
if (listaReklamDoWydaniaNrBindingSource.Current != null)
{
DataRowView row = (DataRowView) listaReklamDoWydaniaNrBindingSource.Current;
pobierzSciezki(row);
}
}
///
/// Sprawdza ścieżki do plików JPG (PDF), CDR, EPS dla danego projektu.
/// Jeżeli pliki istnieją uzupełnia informację o datach.
///
private void pobierzSciezki(DataRowView row)
{
string idReklamy = row["id reklamy"].ToString();
string tytul = row["TYTUŁ"].ToString();
int idGrzbietu = Convert.ToInt32(row["GRZBIET"]);
string miasto = row["miasto"].ToString();
byte staryNowyArchiwum = 0;
string plikJPG = Produkcja.GetReklamaFileName(idReklamy, tytul, idGrzbietu, miasto, staryNowyArchiwum, "jpg");
string plikPDF = Produkcja.GetReklamaFileName(idReklamy, tytul, idGrzbietu, miasto, staryNowyArchiwum, "pdf");
string plikEPS = Produkcja.GetReklamaFileName(idReklamy, tytul, idGrzbietu, miasto, staryNowyArchiwum, "eps");
string plikCDR = Produkcja.GetReklamaFileName(idReklamy, tytul, idGrzbietu, miasto, staryNowyArchiwum, "cdr");
if (File.Exists(plikCDR))
{
DateTime data = File.GetLastWriteTime(plikCDR);
CDRTextBox.Text = plikCDR;
CDRdataTextBox.Text = data.ToString();
CDRbutton.Enabled = true;
}
else
{
CDRTextBox.Text = "";
CDRdataTextBox.Text = "";
CDRbutton.Enabled = false;
}
if (File.Exists(plikEPS))
{
DateTime data = File.GetLastWriteTime(plikEPS);
EPSTextBox.Text = plikEPS;
EPSdataTextBox.Text = data.ToString();
EPSbutton.Enabled = true;
}
else
{
EPSTextBox.Text = "";
EPSdataTextBox.Text = "";
EPSbutton.Enabled = false;
}
if (File.Exists(plikJPG))
{
DateTime data = File.GetLastWriteTime(plikJPG);
JPGTextBox.Text = plikJPG;
JPGdataTextBox.Text = data.ToString();
JPGbutton.Enabled = true;
}
else if (File.Exists(plikPDF))
{
DateTime data = File.GetLastWriteTime(plikPDF);
JPGTextBox.Text = plikPDF;
JPGdataTextBox.Text = data.ToString();
JPGbutton.Enabled = true;
}
else
{
JPGTextBox.Text = "";
JPGdataTextBox.Text = "";
JPGbutton.Enabled = false;
}
}
///
/// Sprawdza dla wszytskich reklam czy istnieją pliki JPG,CDR, EPS.
///
private void sprawdzPlikiDlaWszystkichReklam()
{
CDRColumn.SortMode = DataGridViewColumnSortMode.NotSortable;
EPSColumn.SortMode = DataGridViewColumnSortMode.NotSortable;
JPGColumn.SortMode = DataGridViewColumnSortMode.NotSortable;
foreach (DataRowView row in listaReklamDoWydaniaNrBindingSource.List)
{
if (row["id reklamy"] != DBNull.Value)
{
string idReklamy = row["Id Reklamy"].ToString();
string tytul = row["TYTUŁ"].ToString();
int idGrzbietu = 0;
if (row["GRZBIET"] != DBNull.Value)
{
idGrzbietu = Convert.ToInt32(row["GRZBIET"]);
}
string miasto = row["miasto"].ToString();
byte staryNowyArchiwum = 0;
string plikJPG = Produkcja.GetReklamaFileName(idReklamy, tytul, idGrzbietu, miasto,
staryNowyArchiwum, "jpg");
string plikPDF = Produkcja.GetReklamaFileName(idReklamy, tytul, idGrzbietu, miasto,
staryNowyArchiwum, "pdf");
string plikEPS = Produkcja.GetReklamaFileName(idReklamy, tytul, idGrzbietu, miasto,
staryNowyArchiwum, "eps");
string plikCDR = Produkcja.GetReklamaFileName(idReklamy, tytul, idGrzbietu, miasto,
staryNowyArchiwum, "cdr");
if (File.Exists(plikCDR))
{
row["jestCDR"] = true;
}
if (File.Exists(plikEPS))
{
row["jestEPS"] = true;
}
if (File.Exists(plikJPG) || File.Exists(plikPDF))
{
row["jestJPG"] = true;
}
}
}
CDRColumn.SortMode = DataGridViewColumnSortMode.Automatic;
EPSColumn.SortMode = DataGridViewColumnSortMode.Automatic;
JPGColumn.SortMode = DataGridViewColumnSortMode.Automatic;
}
private void uprawnienia()
{
usunToolStripButton.Enabled = User.getUser().St_kierownik | User.getUser().St_produkcja;
zamowienieToolStripButton.Visible = User.getUser().St_produkcja | User.getUser().St_handlowiec |
User.getUser().St_subhandlowiec | User.getUser().St_kierownik;
klientToolStripButton.Visible = User.getUser().St_produkcja | User.getUser().St_handlowiec |
User.getUser().St_subhandlowiec | User.getUser().St_kierownik;
zwrotToolStripButton.Enabled = User.getUser().St_produkcja | User.getUser().St_korekta |
User.getUser().St_dtp;
doDTPToolStripButton.Enabled = User.getUser().St_produkcja;
proToolStripButton.Enabled = User.getUser().St_dtp;
doKorektyToolStripButton.Enabled = User.getUser().St_dtp;
doDTP2ToolStripButton.Enabled = User.getUser().St_korekta;
doKorekty2ToolStripButton.Enabled = User.getUser().St_dtp;
doAgentaToolStripButton.Enabled = User.getUser().St_korekta | User.getUser().St_dtp;
akceptToolStripButton.Enabled = User.getUser().St_handlowiec | User.getUser().St_subhandlowiec |
User.getUser().St_kierownik;
nieakceptToolStripButton.Enabled = User.getUser().St_handlowiec | User.getUser().St_subhandlowiec |
User.getUser().St_kierownik;
if (!(User.getUser().St_produkcja | User.getUser().St_kierownik | User.getUser().St_dtp))
{
tabControl1.TabPages.Remove(spisTabPage);
tabControl1.TabPages.Remove(listyDoKlientowTabPage);
}
zapiszStronyButton.Enabled = User.getUser().St_produkcja | User.getUser().St_kierownik;
}
///
/// Blokuje buttony w zależności od uprawnień i stanu projektu.
///
private void zablokujButtony()
{
if (pRODUKCJABindingSource.Current != null)
{
DataRowView row = (DataRowView) pRODUKCJABindingSource.Current;
uprawnienia();
string agent = row["agent"].ToString();
switch (row["stan"].ToString())
{
case "ZAMAWIAM":
zwrotToolStripButton.Enabled = zwrotToolStripButton.Enabled & true;
doDTPToolStripButton.Enabled = doDTPToolStripButton.Enabled & true;
proToolStripButton.Enabled = proToolStripButton.Enabled & false;
doKorektyToolStripButton.Enabled = doKorektyToolStripButton.Enabled & false;
doDTP2ToolStripButton.Enabled = doDTP2ToolStripButton.Enabled & false;
doKorekty2ToolStripButton.Enabled = doKorekty2ToolStripButton.Enabled & false;
doAgentaToolStripButton.Enabled = doAgentaToolStripButton.Enabled & false;
akceptToolStripButton.Enabled = false;
nieakceptToolStripButton.Enabled = false;
break;
case "DO DTP":
zwrotToolStripButton.Enabled = zwrotToolStripButton.Enabled & true;
doDTPToolStripButton.Enabled = false;
proToolStripButton.Enabled = proToolStripButton.Enabled & true;
doKorektyToolStripButton.Enabled = doKorektyToolStripButton.Enabled & false;
doDTP2ToolStripButton.Enabled = doDTP2ToolStripButton.Enabled & false;
doKorekty2ToolStripButton.Enabled = doKorekty2ToolStripButton.Enabled & false;
doAgentaToolStripButton.Enabled = doAgentaToolStripButton.Enabled & false;
akceptToolStripButton.Enabled = false;
nieakceptToolStripButton.Enabled = false;
break;
case "W DTP":
zwrotToolStripButton.Enabled = zwrotToolStripButton.Enabled & true;
doDTPToolStripButton.Enabled = false;
proToolStripButton.Enabled = proToolStripButton.Enabled & true;
doKorektyToolStripButton.Enabled = doKorektyToolStripButton.Enabled & true;
doDTP2ToolStripButton.Enabled = doDTP2ToolStripButton.Enabled & false;
doKorekty2ToolStripButton.Enabled = doKorekty2ToolStripButton.Enabled & false;
doAgentaToolStripButton.Enabled = doAgentaToolStripButton.Enabled & false;
akceptToolStripButton.Enabled = false;
nieakceptToolStripButton.Enabled = false;
break;
case "DO KOREKTY":
zwrotToolStripButton.Enabled = zwrotToolStripButton.Enabled & true;
doDTPToolStripButton.Enabled = false;
proToolStripButton.Enabled = false;
doKorektyToolStripButton.Enabled = false;
doDTP2ToolStripButton.Enabled = doDTP2ToolStripButton.Enabled & true;
doKorekty2ToolStripButton.Enabled = false;
doAgentaToolStripButton.Enabled = doAgentaToolStripButton.Enabled & false;
akceptToolStripButton.Enabled = false;
nieakceptToolStripButton.Enabled = false;
break;
case "PO KOREKCIE":
zwrotToolStripButton.Enabled = zwrotToolStripButton.Enabled & true;
doDTPToolStripButton.Enabled = false;
proToolStripButton.Enabled = false;
doKorektyToolStripButton.Enabled = false;
doDTP2ToolStripButton.Enabled = false;
doKorekty2ToolStripButton.Enabled = doKorekty2ToolStripButton.Enabled & true;
doAgentaToolStripButton.Enabled = doAgentaToolStripButton.Enabled & true;
akceptToolStripButton.Enabled = false;
nieakceptToolStripButton.Enabled = false;
break;
case "W 2 KOREKCIE":
zwrotToolStripButton.Enabled = zwrotToolStripButton.Enabled & true;
doDTPToolStripButton.Enabled = false;
proToolStripButton.Enabled = false;
doKorektyToolStripButton.Enabled = false;
doDTP2ToolStripButton.Enabled = doDTP2ToolStripButton.Enabled & true;
doKorekty2ToolStripButton.Enabled = false;
doAgentaToolStripButton.Enabled = false;
akceptToolStripButton.Enabled = false;
nieakceptToolStripButton.Enabled = false;
break;
case "NIEZAAKCEPTOWANE":
zwrotToolStripButton.Enabled = false;
doDTPToolStripButton.Enabled = false;
proToolStripButton.Enabled = false;
doKorektyToolStripButton.Enabled = false;
doDTP2ToolStripButton.Enabled = false;
doKorekty2ToolStripButton.Enabled = false;
doAgentaToolStripButton.Enabled = false;
if ((User.getUser().St_handlowiec) && (!User.getUser().St_kierownik))
{
//handlowiec moze akceptowac tylko swoje projekty
bool ok = agent.ToLower() == User.getUser().Symbol_agenta.ToLower() ? true : false;
akceptToolStripButton.Enabled = akceptToolStripButton.Enabled & true & ok;
nieakceptToolStripButton.Enabled = nieakceptToolStripButton.Enabled & true & ok;
}
else
{
akceptToolStripButton.Enabled = akceptToolStripButton.Enabled & true;
nieakceptToolStripButton.Enabled = nieakceptToolStripButton.Enabled & true;
}
break;
case "DO AKCEPTACJI":
zwrotToolStripButton.Enabled = false;
doDTPToolStripButton.Enabled = false;
proToolStripButton.Enabled = false;
doKorektyToolStripButton.Enabled = false;
doDTP2ToolStripButton.Enabled = false;
doKorekty2ToolStripButton.Enabled = false;
doAgentaToolStripButton.Enabled = false;
if ((User.getUser().St_handlowiec) && (!User.getUser().St_kierownik))
{
//handlowiec moze akceptowac tylko swoje projekty
bool ok = agent.ToLower() == User.getUser().Symbol_agenta.ToLower() ? true : false;
akceptToolStripButton.Enabled = akceptToolStripButton.Enabled & true & ok;
nieakceptToolStripButton.Enabled = nieakceptToolStripButton.Enabled & true & ok;
}
else
{
akceptToolStripButton.Enabled = akceptToolStripButton.Enabled & true;
nieakceptToolStripButton.Enabled = nieakceptToolStripButton.Enabled & true;
}
break;
case "ZAAKCEPTOWANE":
zwrotToolStripButton.Enabled = false;
doDTPToolStripButton.Enabled = false;
proToolStripButton.Enabled = false;
doKorektyToolStripButton.Enabled = false;
doDTP2ToolStripButton.Enabled = false;
doKorekty2ToolStripButton.Enabled = false;
doAgentaToolStripButton.Enabled = false;
if ((User.getUser().St_handlowiec) && (!User.getUser().St_kierownik))
{
//handlowiec moze akceptowac tylko swoje projekty
bool ok = agent.ToLower() == User.getUser().Symbol_agenta.ToLower() ? true : false;
akceptToolStripButton.Enabled = akceptToolStripButton.Enabled & true & ok;
nieakceptToolStripButton.Enabled = nieakceptToolStripButton.Enabled & true & ok;
}
else
{
akceptToolStripButton.Enabled = akceptToolStripButton.Enabled & true;
nieakceptToolStripButton.Enabled = nieakceptToolStripButton.Enabled & true;
}
break;
case "ZWROT Z PRODUKCJI":
zwrotToolStripButton.Enabled = false;
doDTPToolStripButton.Enabled = false;
proToolStripButton.Enabled = false;
doKorektyToolStripButton.Enabled = false;
doDTP2ToolStripButton.Enabled = false;
doKorekty2ToolStripButton.Enabled = false;
doAgentaToolStripButton.Enabled = false;
akceptToolStripButton.Enabled = false;
nieakceptToolStripButton.Enabled = false;
break;
default:
zwrotToolStripButton.Enabled = false;
doDTPToolStripButton.Enabled = false;
proToolStripButton.Enabled = false;
doKorektyToolStripButton.Enabled = false;
doDTP2ToolStripButton.Enabled = false;
doKorekty2ToolStripButton.Enabled = false;
doAgentaToolStripButton.Enabled = false;
akceptToolStripButton.Enabled = false;
nieakceptToolStripButton.Enabled = false;
break;
}
}
}
private void EPSbutton_Click(object sender, EventArgs e)
{
System.Diagnostics.Process.Start(EPSTextBox.Text);
}
private void JPGbutton_Click(object sender, EventArgs e)
{
System.Diagnostics.Process.Start(JPGTextBox.Text);
}
private void CDRbutton_Click(object sender, EventArgs e)
{
System.Diagnostics.Process.Start(CDRTextBox.Text);
}
private void spisPlikowDataGridView_CellLeave(object sender, DataGridViewCellEventArgs e)
{
if (e.ColumnIndex == 0)
{
listaReklamDoWydaniaNrBindingSource.CancelEdit();
}
}
private void podgladToolStripButton_Click(object sender, EventArgs e)
{
if (pRODUKCJABindingSource.Current != null)
{
Cursor = Cursors.WaitCursor;
DataRowView row = (DataRowView) pRODUKCJABindingSource.Current;
int reklamaId = Convert.ToInt32(row["reklamaId"]);
string idReklamy = row["NAZWA_ZAMOWIENIA"].ToString();
string tytul;
int grzbiet;
string miasto;
byte staryNowyArchiwum;
Produkcja.argumentyDoSciezki(reklamaId, idReklamy, out tytul, out grzbiet, out miasto,
out staryNowyArchiwum);
string sciezka = Produkcja.GetReklamaFileName(idReklamy, tytul, grzbiet, miasto, staryNowyArchiwum,
"pdf");
if (File.Exists(sciezka))
{
System.Diagnostics.Process.Start(sciezka);
}
else
{
MessageBox.Show("Nie znaleziono pliku: " + sciezka);
}
Cursor = Cursors.Default;
}
}
private void podgladJPGToolStripButton_Click(object sender, EventArgs e)
{
if (pRODUKCJABindingSource.Current != null)
{
Cursor = Cursors.WaitCursor;
DataRowView row = (DataRowView) pRODUKCJABindingSource.Current;
int reklamaId = Convert.ToInt32(row["reklamaId"]);
string idReklamy = row["NAZWA_ZAMOWIENIA"].ToString();
string tytul;
int grzbiet;
string miasto;
byte staryNowyArchiwum;
Produkcja.argumentyDoSciezki(reklamaId, idReklamy, out tytul, out grzbiet, out miasto,
out staryNowyArchiwum);
string sciezka = Produkcja.GetReklamaFileName(idReklamy, tytul, grzbiet, miasto, staryNowyArchiwum,
"jpg");
if (File.Exists(sciezka))
{
System.Diagnostics.Process.Start(sciezka);
}
else
{
MessageBox.Show("Nie znaleziono pliku: " + sciezka);
}
Cursor = Cursors.Default;
}
}
private void produkcjaDataGridView_Leave(object sender, EventArgs e)
{
ukrytyLabel.Select();
}
private void zamowienieToolStripButton_Click(object sender, EventArgs e)
{
if (pRODUKCJABindingSource.Current != null)
{
DataRowView row = (DataRowView) pRODUKCJABindingSource.Current;
int idRek = Convert.ToInt32(row["ReklamaId"]);
reklamaTableAdapter.FillByReklamaId(rEKLAMADataSet.REKLAMA, idRek);
OrderDetails.getOrderDetails().pokazSzczegolyZamowienia(idRek);
OrderDetails.getOrderDetails().ShowDialog();
}
}
private void projektToolStripButton_Click(object sender, EventArgs e)
{
if (pRODUKCJABindingSource.Current != null)
{
DataRowView row = (DataRowView) pRODUKCJABindingSource.Current;
int idRek = Convert.ToInt32(row["ReklamaId"]);
int idPro = Convert.ToInt32(row["ID"]);
ProjectForm pf = new ProjectForm(idRek, idPro);
if (pf.ShowDialog() == DialogResult.OK)
{
rEKLAMADataSet.PRODUKCJA.Clear();
sqlDataAdapter.Fill(rEKLAMADataSet.PRODUKCJA);
}
}
}
private void wczytajPlikButton_Click(object sender, EventArgs e)
{
if (projektOpenFileDialog.ShowDialog() == DialogResult.OK)
{
if (pRODUKCJABindingSource.Current != null)
{
DataRowView row = (DataRowView) pRODUKCJABindingSource.Current;
row["PLIK"] = projektOpenFileDialog.FileName;
pRODUKCJABindingSource.EndEdit();
pRODUKCJATableAdapter.Update(rEKLAMADataSet.PRODUKCJA);
}
}
}
private void drukujToolStripButton_Click(object sender, EventArgs e)
{
PrintDGV.Print_DataGridView(produkcjaDataGridView, 50);
}
private void wyczyscPolaToolStripButton_Click(object sender, EventArgs e)
{
stanToolStripComboBox.SelectedIndex = -1;
symbolToolStripTextBox.Clear();
}
private void tytulComboBox_SelectedIndexChanged(object sender, EventArgs e)
{
switch (tytulComboBox.Text)
{
case "AMT":
gRZBIETYBindingSource.Filter = "Nazwa like '%AMT%'";
grzbietyComboBox.SelectedIndex = -1;
break;
case "GS":
gRZBIETYBindingSource.Filter = "Nazwa like '%GS%'";
grzbietyComboBox.SelectedIndex = -1;
break;
case "adMot":
gRZBIETYBindingSource.Filter = "Nazwa like '%adM%'";
grzbietyComboBox.SelectedIndex = -1;
break;
default:
gRZBIETYBindingSource.Filter = "";
grzbietyComboBox.SelectedIndex = -1;
break;
}
}
private void szukajToolStripButton2_Click(object sender, EventArgs e)
{
if (symbolToolStripTextBox.Text.Trim() != "")
{
Cursor = Cursors.WaitCursor;
command.Parameters.Clear();
command.CommandText =
" select top 100 * from dbo.PRODUKCJA where NAZWA_ZAMOWIENIA like '%' + @symbol + '%' order by DATA_AGENT desc ";
command.Parameters.AddWithValue("@symbol", symbolToolStripTextBox.Text);
rEKLAMADataSet.PRODUKCJA.Clear();
sqlDataAdapter.Fill(rEKLAMADataSet.PRODUKCJA);
Cursor = Cursors.Default;
}
}
///
/// Buduje zapytanie filtrujace projekty wg uprawnien
///
private string buildQuery()
{
string str =
"select * from dbo.PRODUKCJA where STAN!='ZAAKCEPTOWANE' AND STAN!='NIEZAAKCEPTOWANE' AND STAN!='ZWROT Z PRODUKCJI'";
if (User.getUser().St_produkcja)
{
str =
"select * from dbo.PRODUKCJA where STAN!='ZAAKCEPTOWANE' AND STAN!='NIEZAAKCEPTOWANE' AND STAN!='ZWROT Z PRODUKCJI'";
return str;
}
if (User.getUser().St_kierownik)
{
str = "select dbo.PRODUKCJA.* from dbo.PRODUKCJA left join dbo.AGENCI " +
" on dbo.PRODUKCJA.AGENT = dbo.AGENCI.Symbol left join dbo.AGENCJE " +
" on dbo.AGENCJE.Id_agencji = dbo.AGENCI.ID_AGENCJI where STAN!='ZAAKCEPTOWANE' " +
" AND STAN!='NIEZAAKCEPTOWANE' AND STAN!='ZWROT Z PRODUKCJI' AND dbo.AGENCJE.Id_agencji=" +
User.getUser().IdAgencji;
return str;
}
if (User.getUser().St_handlowiec | User.getUser().St_subhandlowiec)
{
str =
"select * from dbo.PRODUKCJA where STAN!='ZAAKCEPTOWANE' AND STAN!='NIEZAAKCEPTOWANE' AND datediff(day,DATA_AGENT,getdate()) <= 30 ";
str += " AND AGENT='" + User.getUser().Symbol_agenta + "'";
return str;
}
if (User.getUser().St_dtp)
{
str = "select * from dbo.PRODUKCJA where STAN='DO DTP' OR STAN='W DTP' OR STAN='PO KOREKCIE' ";
return str;
}
if (User.getUser().St_korekta)
{
str = "select * from dbo.PRODUKCJA where STAN='DO KOREKTY' OR STAN='W 2 KOREKCIE' ";
return str;
}
return str;
}
private void wczytajPlikToolStripButton_Click(object sender, EventArgs e)
{
if (projektOpenFileDialog.ShowDialog() == DialogResult.OK)
{
if (pRODUKCJABindingSource.Current != null)
{
DataRowView row = (DataRowView) pRODUKCJABindingSource.Current;
row["PLIK"] = projektOpenFileDialog.FileName;
pRODUKCJABindingSource.EndEdit();
pRODUKCJATableAdapter.Update(rEKLAMADataSet.PRODUKCJA);
plikToolStripTextBox.Text = Convert.ToString(row["PLIK"]);
}
}
}
private void otworzPlikToolStripButton_Click(object sender, EventArgs e)
{
if (pRODUKCJABindingSource.Current != null)
{
DataRowView row = (DataRowView) pRODUKCJABindingSource.Current;
if (row["PLIK"] != DBNull.Value)
{
string plik = Convert.ToString(row["PLIK"]);
if (File.Exists(plik))
{
System.Diagnostics.Process.Start(plik);
}
else
{
MessageBox.Show("Nie można odnależć pliku");
}
}
else
{
MessageBox.Show("Podaj ścieżkę do pliku.");
}
}
}
private void spisPlikowDataGridView_DataError(object sender, DataGridViewDataErrorEventArgs e)
{
spisPlikowDataGridView.CancelEdit();
}
private void grzbietyComboBox_SelectedIndexChanged(object sender, EventArgs e)
{
if (grzbietyComboBox.SelectedIndex != -1)
{
listaReklamDoWydaniaNrBindingSource.Filter = "GRZBIET=" + grzbietyComboBox.SelectedValue;
}
}
private void znajdzKlientowToolStripButton_Click(object sender, EventArgs e)
{
Cursor = Cursors.WaitCursor;
Int16.TryParse(nrAMTToolStripTextBox.Text.Trim(), out nrAMT);
Int16.TryParse(nrGS1ToolStripTextBox.Text.Trim(), out nrGS1);
Int16.TryParse(nrGS2ToolStripTextBox.Text.Trim(), out nrGS2);
listyTableAdapter.Fill(rEKLAMADataSet.Listy, nrAMT, nrGS1, nrGS2);
listyPodsumowanieTableAdapter.Fill(rEKLAMADataSet.ListyPodsumowanie, nrAMT, nrGS1, nrGS2);
Cursor = Cursors.Default;
}
private void podgladListuToolStripButton_Click(object sender, EventArgs e)
{
listyDataGridView.EndEdit();
if (listyBindingSource.Current != null)
{
Cursor = Cursors.WaitCursor;
DataRowView row = (DataRowView) listyBindingSource.Current;
int custId = Convert.ToInt32(row["custId"]);
LetterViewer lv = new LetterViewer(custId, nrAMT, nrGS1, nrGS2, dateTimePicker1.Value);
lv.ShowDialog();
Cursor = Cursors.Default;
}
}
private void toolStripButton1_Click(object sender, EventArgs e)
{
listyDataGridView.EndEdit();
foreach (DataRowView r in listyBindingSource.List)
{
r["drukuj"] = !Convert.ToBoolean(r["drukuj"]);
}
listyBindingSource.ResetBindings(false);
}
///
/// Ustawia kolejność do druku.
///
private void ustawKolejnoscToolStripButton_Click(object sender, EventArgs e)
{
if (listyDataGridView.SortedColumn != null)
{
DataGridViewColumn c = listyDataGridView.SortedColumn;
listyDataGridView.SortedColumn.SortMode = DataGridViewColumnSortMode.NotSortable;
listyBindingSource.Sort = "suma DESC, ilosc DESC";
c.SortMode = DataGridViewColumnSortMode.Automatic;
}
}
private void toolStripButton2_Click(object sender, EventArgs e)
{
listyDataGridView.EndEdit();
if (listyBindingSource.List.Count != 0)
{
List klienci = new List();
int custId;
foreach (DataRowView r in listyBindingSource.List)
{
if (Convert.ToBoolean(r["drukuj"]))
{
custId = Convert.ToInt32(r["custId"]);
klienci.Add(custId);
}
}
Cursor = Cursors.WaitCursor;
LetterViewer lv = new LetterViewer(klienci, nrAMT, nrGS1, nrGS2, dateTimePicker1.Value);
lv.ShowDialog();
}
Cursor = Cursors.Default;
}
private void klientToolStripButton_Click(object sender, EventArgs e)
{
if (pRODUKCJABindingSource.Current != null)
{
DataRowView row = (DataRowView) pRODUKCJABindingSource.Current;
int idRek = Convert.ToInt32(row["ReklamaId"]);
int custId = Utils.customerId(idRek);
ClientsForm.getClientsForm((MDIBazaReklam) MdiParent).pokazKlienta(custId);
Hide();
ClientsForm.getClientsForm((MDIBazaReklam) MdiParent).Show();
}
}
private void wyslijProMailemToolStripButton_Click(object sender, EventArgs e)
{
if (pRODUKCJABindingSource.Current != null)
{
Cursor = Cursors.WaitCursor;
DataRowView row = (DataRowView) pRODUKCJABindingSource.Current;
string idReklamy = row["NAZWA_ZAMOWIENIA"].ToString();
int reklamaId = Convert.ToInt32(row["reklamaId"]);
string tytul;
int grzbiet;
string miasto;
byte staryNowyArchiwum;
Produkcja.argumentyDoSciezki(reklamaId, idReklamy, out tytul, out grzbiet, out miasto,
out staryNowyArchiwum);
string sciezka = Produkcja.GetReklamaFileName(idReklamy, tytul, grzbiet, miasto, staryNowyArchiwum,
"jpg");
if (File.Exists(sciezka))
{
int custId = Utils.customerId(Convert.ToInt32(row["reklamaId"]));
string temat = "Projekt do zamówienia: " + idReklamy;
MailForm mf = new MailForm(custId, temat, sciezka);
mf.ShowDialog();
}
else
{
MessageBox.Show("Nie znaleziono pliku: " + sciezka);
}
Cursor = Cursors.Default;
}
}
private void usunToolStripButton_Click(object sender, EventArgs e)
{
if (pRODUKCJABindingSource.Current != null)
{
if (MessageBox.Show("Czy na pewno chcesz usunąć rekord?", "", MessageBoxButtons.YesNo) ==
DialogResult.Yes)
{
pRODUKCJABindingSource.RemoveCurrent();
pRODUKCJABindingSource.EndEdit();
pRODUKCJATableAdapter.Update(rEKLAMADataSet.PRODUKCJA);
}
}
}
private void wylaczSortowanieGrida()
{
foreach (DataGridViewColumn c in produkcjaDataGridView.Columns)
{
c.SortMode = DataGridViewColumnSortMode.Programmatic;
}
}
private void wlaczSortowanieGrida()
{
foreach (DataGridViewColumn c in produkcjaDataGridView.Columns)
{
c.SortMode = DataGridViewColumnSortMode.Automatic;
}
}
private void fullInfoToolStripButton_Click(object sender, EventArgs e)
{
if (pRODUKCJABindingSource.Current != null)
{
DataRowView row = (DataRowView) pRODUKCJABindingSource.Current;
int id = Convert.ToInt32(row["id"]);
FullInfoProjectForm fipf = new FullInfoProjectForm(id);
fipf.ShowDialog();
}
}
private void produkcjaDataGridView_CellFormatting(object sender, DataGridViewCellFormattingEventArgs e)
{
if (produkcjaDataGridView["PRIORYTET", e.RowIndex].Value.ToString() == "PILNY")
{
e.CellStyle.ForeColor = Color.Red;
}
else
{
e.CellStyle.ForeColor = Color.Black;
}
}
}
}