using System;
using System.Collections.Generic;
using System.Text;
using System.Data;
using System.Data.SqlClient;
namespace Baza_Reklam
{
///
/// Klasa budująca ścieżki do plików JPG, EPS, CDR. Przepisana prawie bez zmian ze starej bazy.
///
class Produkcja
{
///
/// Zmienne wskazują, które pliki są nowe, a które w archiwum.
///
private const int Const_NoweNazwyPlikow = 0;
private const int Const_StareNazwyPlikow = 1;
private const int Const_ArchiwumPlikow = 2;
public static byte typNazwy(int rok)
{
if (rok >= 2005)
{
return 0;
}
return 1;
}
public static string BezPolskichZnakow(string s) {
s = s.Replace("ą", "a");
s = s.Replace("ę", "e");
s = s.Replace("ć", "c");
s = s.Replace("ś", "s");
s = s.Replace("ł", "l");
s = s.Replace("ż", "z");
s = s.Replace("ź", "z");
s = s.Replace("ó", "o");
s = s.Replace("ń", "n");
return s;
}
public static string GetF_ROZ(string idReklamy,int GRZBIET, string tyt)
{
switch (tyt)
{
case "AMT":
return idReklamy.Substring(0, 4);
case "GS":
//grzbiet śląski
if (GRZBIET == 9) return idReklamy.Substring(0, 4);
//grzbiet warszawski
if (GRZBIET == 7) return idReklamy.Substring(0, 4);
return idReklamy.Substring(0, 3);
default:
return idReklamy.Substring(0, 4);
}
return "";
}
public static string GetShortReklamaName(string idReklamy,int GRZBIET,string tyt){
switch (tyt)
{
case "AMT":
return idReklamy.Substring(0, 7);
case "GS":
//grzbiet ślaski
if (GRZBIET == 9) return idReklamy.Substring(0, 7);
//grzbiet warszawski
if (GRZBIET == 7) return idReklamy.Substring(0, 7);
return idReklamy.Substring(0, 6);
case "AGRO":
return idReklamy.Substring(0, 7);
case "EXPO":
return idReklamy.Substring(0, 7);
}
return "";
}
public static string GetReklamaFileName(string idReklamy,string TYTUL,int GRZBIET,string miasto,byte StaryNowyArchiwum,string FileRoz) {
string F_ROZ;
string PathName="";
string Reklama_PathName = "";
// if (costam) {Reklama_PathName = "G:\\ReklamaFiles\\"};
// Properties.Settings.Default.reklamaPath = "G:\\ReklamaFiles\\"
Reklama_PathName = Properties.Settings.Default.reklamaPath;
if (miasto.ToLower() == "słupsk") {miasto = "redakcja";}
if (miasto.ToLower() == "gdańsk") {miasto = "gdynia";}
F_ROZ = GetF_ROZ(idReklamy,GRZBIET,TYTUL);
if (StaryNowyArchiwum == Const_NoweNazwyPlikow)
{
idReklamy = GetShortReklamaName(idReklamy,GRZBIET,TYTUL);
}
//stare ścieżki do plików
if (StaryNowyArchiwum == Const_StareNazwyPlikow) {
if (FileRoz == "cdr"){PathName = "\\\\Home\\cc1\\DTP\\REKLAMY\\"; }
if (FileRoz == "eps"){PathName = "\\\\Home\\cc1\\DTP\\EPS\\"; }
if (FileRoz == "jpg"){PathName = "\\\\Home\\cc1\\DTP\\JPG\\"; }
if (FileRoz == "pdf") { PathName = "\\\\Home\\cc1\\DTP\\JPG\\"; }
switch (GRZBIET) {
case 5: //POMORSKI
miasto = "E_AUTO";
break;
case 7: //STOŁECZNY
miasto = "F_AUTO";
break;
case 9: //KATOWICKI
miasto = "G_AUTO";
break;
case 10: //SZCZECIŃSKI
miasto = "I_AUTO";
break;
}
switch (TYTUL){
case "GS":
TYTUL = "Gielda";
PathName = PathName + "_" + TYTUL + "\\" + miasto + "\\" + F_ROZ + "\\" + idReklamy + "." + FileRoz;
break;
case "AMT":
TYTUL = "Truck";
PathName = PathName + "_" + TYTUL + "\\" + miasto + "\\" + F_ROZ + "\\" + idReklamy + "." + FileRoz;
break;
case "PROMO":
TYTUL = "Promo";
PathName = PathName + "_" + TYTUL + "\\" + miasto + "\\" + F_ROZ + "\\" + idReklamy + "." + FileRoz;
break;
case "AGRO":
TYTUL = "agro";
PathName = PathName + "_" + TYTUL + "\\" + miasto + "\\" + F_ROZ + "\\" + idReklamy + "." + FileRoz;
break;
case "EXPO":
TYTUL = "expo";
PathName = PathName + "_" + TYTUL + "\\" + miasto + "\\" + F_ROZ + "\\" + idReklamy + "." + FileRoz;
break;
}
}//koniec starych
//nowe nazwy plików
if (StaryNowyArchiwum == Const_NoweNazwyPlikow) {
if (Reklama_PathName == "") {
Reklama_PathName = "\\\\HOME\\CC1\\DTP\\ReklamaFiles\\"; //zabezpieczenie na wypadek błędu w programie
}
PathName = Reklama_PathName; //wartość zmiennej Reklama_PathName ustalana jest w LoginModule
if (FileRoz == "pdf")
{
PathName = PathName + "JPG" + "\\" + TYTUL + "\\" + miasto + "\\" + F_ROZ + "\\" + idReklamy + "." + "pdf";
}
else {
PathName = PathName + FileRoz + "\\" + TYTUL + "\\" + miasto + "\\" + F_ROZ + "\\" + idReklamy + "." + FileRoz;
}
}
//ARCHIWUM
if (StaryNowyArchiwum == Const_ArchiwumPlikow) {
if (Reklama_PathName == "") {
Reklama_PathName = "\\\\HOME\\CC1\\DTP\\ReklamaFiles\\"; //zabezpieczenie na wypadek błędu w programie
}
PathName = Reklama_PathName + "_ARCHIWUM\\";
if (FileRoz == "pdf")
{
PathName = PathName + "JPG" + "\\" + TYTUL + "\\" + miasto + "\\" + F_ROZ + "\\" + idReklamy + "." + "pdf";
}
else
{
PathName = PathName + FileRoz + "\\" + TYTUL + "\\" + miasto + "\\" + F_ROZ + "\\" + idReklamy + "." + FileRoz;
}
}
PathName = BezPolskichZnakow(PathName.ToLower());
PathName = PathName.ToUpper();
return PathName;
}
public static void argumentyDoSciezki(int reklamaId ,string idReklamy,out string TYTUL, out int GRZBIET, out string miasto, out byte StaryNowyArchiwum){
TYTUL = "";
GRZBIET = 0;
miasto = "";
StaryNowyArchiwum = 1;
SqlCommand cmd = new SqlCommand();
cmd.CommandText = "select R.TYTUŁ,datepart(year,R.[DATA ZAMÓWIENIA]),R.GRZBIET,dbo.AGENCJE.miasto " +
" from REKLAMA R left join dbo.AGENCI on dbo.AGENCI.symbol = R.[SYMBOL AKWIZYTORA] left join dbo.AGENCJE " +
" on dbo.AGENCI.ID_AGENCJI=dbo.AGENCJE.Id_agencji where reklamaId=@rekID";
cmd.Parameters.AddWithValue("@rekId", reklamaId);
cmd.Connection = new SqlConnection(ConnString.getConnString().Value);
cmd.Connection.Open();
SqlDataReader reader = cmd.ExecuteReader();
while (reader.Read()) {
TYTUL = reader.IsDBNull(0) ? TYTUL : reader.GetValue(0).ToString();
StaryNowyArchiwum = reader.IsDBNull(1) ? StaryNowyArchiwum : Produkcja.typNazwy(Convert.ToInt32(reader.GetValue(1))); ;
GRZBIET = reader.IsDBNull(2) ? GRZBIET : Convert.ToInt32(reader.GetValue(2));
miasto = reader.IsDBNull(3) ? miasto : reader.GetValue(3).ToString();
}
cmd.Connection.Close();
}
}
}