Zbiór zmian 704 dla branches/Abonament

Pokaż
Ignoruj:
Data:
2009-06-15 17:46:47 (17 years ago)
Autor:
marek
Opis:

re #184 - abonamenty - mozna dodawac do zamowienia

Lokalizacja:
branches/Abonament/BazaReklam
Pliki:
2 dodane
7 zmodyfikowane

Legenda:

Bez zmian
Dodane
Usunięte
  • branches/Abonament/BazaReklam/Baza Reklam.csproj

    r703 r704  
    142142    <Compile Include="Classes\Interfaces\IForm.cs" /> 
    143143    <Compile Include="Classes\Interfaces\IProduct.cs" /> 
     144    <Compile Include="Classes\Model\Enums\ProductType.cs" /> 
    144145    <Compile Include="Classes\Model\Product.cs" /> 
    145146    <Compile Include="Classes\Model\Agent.cs" /> 
  • branches/Abonament/BazaReklam/Classes/Interfaces/IProduct.cs

    r703 r704  
    11using System; 
     2using Baza_Reklam.Classes.Model.Enums; 
    23 
    34namespace Baza_Reklam.Classes.Interfaces 
     
    67    { 
    78        int Id { get; set; } 
     9        ProductType ProductType { get; set; } 
    810        string Type { get; set; } 
    911        string ShortName { get; set; } 
     
    1416        string Currency { get; set; } 
    1517        bool IsActivated { get; set; } 
     18        int? OrderId { get; set; } 
     19        bool HasInvoice { get; set; } 
    1620    } 
    1721} 
  • branches/Abonament/BazaReklam/Classes/Model/Product.cs

    r703 r704  
    11using System; 
    22using Baza_Reklam.Classes.Interfaces; 
     3using Baza_Reklam.Classes.Model.Enums; 
    34 
    45namespace Baza_Reklam.Classes.Model 
     
    78    { 
    89        private int _id; 
     10        private ProductType _productType; 
    911        private string _type; 
    1012        private string _shortName; 
     
    1517        private string _currency; 
    1618        private bool _isActivated; 
     19        private int? _orderId; 
     20        private bool _hasInvoice; 
     21 
    1722        public int Id 
    1823        { 
    1924            get { return _id; } 
    2025            set { _id = value; } 
     26        } 
     27 
     28        public ProductType ProductType 
     29        { 
     30            get { return _productType; } 
     31            set { _productType = value; } 
    2132        } 
    2233 
     
    6879            set { _isActivated = value; } 
    6980        } 
     81 
     82        public int? OrderId 
     83        { 
     84            get { return _orderId; } 
     85            set { _orderId = value; } 
     86        } 
     87 
     88        public bool HasInvoice 
     89        { 
     90            get { return _hasInvoice; } 
     91            set { _hasInvoice = value; } 
     92        } 
    7093    } 
    7194} 
  • branches/Abonament/BazaReklam/Classes/Repositories/CustomerRepository.cs

    r703 r704  
    55using Baza_Reklam.Classes.Interfaces; 
    66using Baza_Reklam.Classes.Model; 
     7using Baza_Reklam.Classes.Model.Enums; 
    78 
    89namespace Baza_Reklam.Classes.Repositories 
     
    177178                        product.Id = _reader.GetInt32(0); 
    178179                        product.Type = _reader.GetString(1); 
    179                         product.ShortName = _reader.GetString(2); 
    180                         product.StartDate = _reader.GetDateTime(3); 
    181                         product.Price = _reader.GetDecimal(4); 
    182                         product.TotalPrice = _reader.GetDecimal(5); 
    183                         product.Vat = _reader.GetDecimal(6); 
    184                         product.Currency = _reader.GetString(7); 
    185                         product.IsActivated = _reader.GetBoolean(8); 
    186                          
     180                        product.ProductType = (ProductType)_reader.GetInt32(2); 
     181                        product.ShortName = _reader.GetString(3); 
     182                        product.StartDate = _reader.GetDateTime(4); 
     183                        product.Price = _reader.GetDecimal(5); 
     184                        product.TotalPrice = _reader.GetDecimal(6); 
     185                        product.Vat = _reader.GetDecimal(7); 
     186                        product.Currency = _reader.GetString(8); 
     187                        product.IsActivated = _reader.GetBoolean(9); 
     188                        product.HasInvoice = _reader.GetBoolean(10); 
     189 
    187190                        products.Add(product); 
    188191                    } 
     
    196199            return products; 
    197200        } 
     201 
     202        public List<IProduct> FindProductsWithOrders(int clientId) 
     203        { 
     204 
     205            List<IProduct> products = new List<IProduct>(); 
     206 
     207            const string query = "sp_GetProductsWithOrder"; 
     208 
     209            try 
     210            { 
     211                _connection.Open(); 
     212                _command = new SqlCommand(query, _connection); 
     213                _command.Parameters.AddWithValue("@clientId", clientId); 
     214                _command.CommandType = CommandType.StoredProcedure; 
     215 
     216                _reader = _command.ExecuteReader(); 
     217                if (_reader != null) 
     218                { 
     219                    while (_reader.Read()) 
     220                    { 
     221                        Product product = new Product(); 
     222                        product.Id = _reader.GetInt32(0); 
     223                        product.Type = _reader.GetString(1); 
     224                        product.ProductType = (ProductType) _reader.GetInt32(2); 
     225                        product.ShortName = _reader.GetString(3); 
     226                        product.StartDate = _reader.GetDateTime(4); 
     227                        product.Price = _reader.GetDecimal(5); 
     228                        product.TotalPrice = _reader.GetDecimal(6); 
     229                        product.Vat = _reader.GetDecimal(7); 
     230                        product.Currency = _reader.GetString(8); 
     231                        product.IsActivated = _reader.GetBoolean(9); 
     232                        if (_reader[10] != DBNull.Value) 
     233                            product.OrderId = _reader.GetInt32(10); 
     234                        product.HasInvoice = _reader.GetBoolean(11); 
     235 
     236                        products.Add(product); 
     237                    } 
     238                } 
     239            } 
     240            finally 
     241            { 
     242                CleanUp(); 
     243            } 
     244 
     245            return products; 
     246        } 
     247 
     248        public void RemoveProductFromOrder(IProduct product) 
     249        { 
     250            const string query = "sp_RemoveProductFromOrder"; 
     251            try 
     252            { 
     253                _connection.Open(); 
     254                _command = new SqlCommand(query, _connection); 
     255                _command.Parameters.AddWithValue("@productId", product.Id); 
     256                _command.Parameters.AddWithValue("@productType", product.ProductType); 
     257                _command.CommandType = CommandType.StoredProcedure; 
     258 
     259                _command.ExecuteNonQuery(); 
     260            } 
     261            finally 
     262            { 
     263                CleanUp(); 
     264            } 
     265        } 
     266 
     267        public void AddProductToOrder(IProduct product) 
     268        { 
     269            const string query = "sp_AddProductToOrder"; 
     270            try 
     271            { 
     272                _connection.Open(); 
     273                _command = new SqlCommand(query, _connection); 
     274                _command.Parameters.AddWithValue("@productId", product.Id); 
     275                _command.Parameters.AddWithValue("@productType", product.ProductType); 
     276                _command.Parameters.AddWithValue("@orderId", product.OrderId); 
     277                _command.CommandType = CommandType.StoredProcedure; 
     278 
     279                _command.ExecuteNonQuery(); 
     280            } 
     281            finally 
     282            { 
     283                CleanUp(); 
     284            } 
     285        } 
     286 
    198287    } 
    199288} 
  • branches/Abonament/BazaReklam/ZamowieniaForm.Designer.cs

    r703 r704  
    3333            System.Windows.Forms.DataGridViewCellStyle dataGridViewCellStyle2 = new System.Windows.Forms.DataGridViewCellStyle(); 
    3434            System.Windows.Forms.DataGridViewCellStyle dataGridViewCellStyle3 = new System.Windows.Forms.DataGridViewCellStyle(); 
    35             System.Windows.Forms.DataGridViewCellStyle dataGridViewCellStyle4 = new System.Windows.Forms.DataGridViewCellStyle(); 
    3635            System.Windows.Forms.DataGridViewCellStyle dataGridViewCellStyle5 = new System.Windows.Forms.DataGridViewCellStyle(); 
    3736            System.Windows.Forms.DataGridViewCellStyle dataGridViewCellStyle6 = new System.Windows.Forms.DataGridViewCellStyle(); 
    3837            System.ComponentModel.ComponentResourceManager resources = new System.ComponentModel.ComponentResourceManager(typeof(ZamowieniaForm)); 
     38            System.Windows.Forms.DataGridViewCellStyle dataGridViewCellStyle9 = new System.Windows.Forms.DataGridViewCellStyle(); 
     39            System.Windows.Forms.DataGridViewCellStyle dataGridViewCellStyle4 = new System.Windows.Forms.DataGridViewCellStyle(); 
     40            System.Windows.Forms.DataGridViewCellStyle dataGridViewCellStyle7 = new System.Windows.Forms.DataGridViewCellStyle(); 
    3941            System.Windows.Forms.DataGridViewCellStyle dataGridViewCellStyle8 = new System.Windows.Forms.DataGridViewCellStyle(); 
    40             System.Windows.Forms.DataGridViewCellStyle dataGridViewCellStyle7 = new System.Windows.Forms.DataGridViewCellStyle(); 
    4142            this.zamowieniaDataGridView = new System.Windows.Forms.DataGridView(); 
    4243            this.dataGridViewCheckBoxColumn1 = new System.Windows.Forms.DataGridViewCheckBoxColumn(); 
     
    4849            this.rEKLAMADataSet = new Baza_Reklam.REKLAMADataSet(); 
    4950            this.rEKLAMADataGridView = new System.Windows.Forms.DataGridView(); 
    50             this.dataGridViewTextBoxColumn9 = new System.Windows.Forms.DataGridViewTextBoxColumn(); 
    51             this.TYP = new System.Windows.Forms.DataGridViewTextBoxColumn(); 
    52             this.dataGridViewTextBoxColumn27 = new System.Windows.Forms.DataGridViewTextBoxColumn(); 
    53             this.VAT = new System.Windows.Forms.DataGridViewTextBoxColumn(); 
    54             this.Brutto_Euro_Miano = new System.Windows.Forms.DataGridViewTextBoxColumn(); 
    55             this.ZATWIERDZONO_DO_DRUKU = new System.Windows.Forms.DataGridViewCheckBoxColumn(); 
    5651            this.rEKLAMABindingSource = new System.Windows.Forms.BindingSource(this.components); 
    5752            this.rEKLAMADataGridView1 = new System.Windows.Forms.DataGridView(); 
     
    9489            this.toolTip = new System.Windows.Forms.ToolTip(this.components); 
    9590            this.KlientLabel = new System.Windows.Forms.Label(); 
     91            this.TYP = new System.Windows.Forms.DataGridViewTextBoxColumn(); 
     92            this.ShortName = new System.Windows.Forms.DataGridViewTextBoxColumn(); 
     93            this.VAT = new System.Windows.Forms.DataGridViewTextBoxColumn(); 
     94            this.Brutto_Euro_Miano = new System.Windows.Forms.DataGridViewTextBoxColumn(); 
     95            this.ZATWIERDZONO_DO_DRUKU = new System.Windows.Forms.DataGridViewCheckBoxColumn(); 
    9696            this.Data1Emisji = new System.Windows.Forms.DataGridViewTextBoxColumn(); 
     97            this.ShortName1 = new System.Windows.Forms.DataGridViewTextBoxColumn(); 
    9798            this.dataGridViewTextBoxColumn1 = new System.Windows.Forms.DataGridViewTextBoxColumn(); 
    9899            this.dataGridViewTextBoxColumn43 = new System.Windows.Forms.DataGridViewTextBoxColumn(); 
     
    202203            this.rEKLAMADataGridView.AllowUserToAddRows = false; 
    203204            this.rEKLAMADataGridView.AllowUserToDeleteRows = false; 
    204             this.rEKLAMADataGridView.AutoGenerateColumns = false; 
    205205            this.rEKLAMADataGridView.AutoSizeColumnsMode = System.Windows.Forms.DataGridViewAutoSizeColumnsMode.Fill; 
    206206            this.rEKLAMADataGridView.BackgroundColor = System.Drawing.Color.White; 
     
    215215            this.rEKLAMADataGridView.ColumnHeadersDefaultCellStyle = dataGridViewCellStyle3; 
    216216            this.rEKLAMADataGridView.Columns.AddRange(new System.Windows.Forms.DataGridViewColumn[] { 
    217             this.dataGridViewTextBoxColumn9, 
    218217            this.TYP, 
    219             this.dataGridViewTextBoxColumn27, 
     218            this.ShortName, 
    220219            this.VAT, 
    221220            this.Brutto_Euro_Miano, 
    222221            this.ZATWIERDZONO_DO_DRUKU}); 
    223             this.rEKLAMADataGridView.DataSource = this.rEKLAMABindingSource; 
    224222            this.rEKLAMADataGridView.Location = new System.Drawing.Point(6, 33); 
    225223            this.rEKLAMADataGridView.MultiSelect = false; 
     
    230228            this.rEKLAMADataGridView.Size = new System.Drawing.Size(379, 173); 
    231229            this.rEKLAMADataGridView.TabIndex = 1; 
    232             //  
    233             // dataGridViewTextBoxColumn9 
    234             //  
    235             this.dataGridViewTextBoxColumn9.DataPropertyName = "ID REKLAMY"; 
    236             this.dataGridViewTextBoxColumn9.HeaderText = "Symbol"; 
    237             this.dataGridViewTextBoxColumn9.Name = "dataGridViewTextBoxColumn9"; 
    238             this.dataGridViewTextBoxColumn9.ReadOnly = true; 
    239             //  
    240             // TYP 
    241             //  
    242             this.TYP.AutoSizeMode = System.Windows.Forms.DataGridViewAutoSizeColumnMode.None; 
    243             this.TYP.DataPropertyName = "TYP"; 
    244             this.TYP.HeaderText = "TYP"; 
    245             this.TYP.Name = "TYP"; 
    246             this.TYP.ReadOnly = true; 
    247             this.TYP.Width = 50; 
    248             //  
    249             // dataGridViewTextBoxColumn27 
    250             //  
    251             this.dataGridViewTextBoxColumn27.DataPropertyName = "NETTO"; 
    252             this.dataGridViewTextBoxColumn27.HeaderText = "NETTO"; 
    253             this.dataGridViewTextBoxColumn27.Name = "dataGridViewTextBoxColumn27"; 
    254             this.dataGridViewTextBoxColumn27.ReadOnly = true; 
    255             //  
    256             // VAT 
    257             //  
    258             this.VAT.DataPropertyName = "VAT"; 
    259             dataGridViewCellStyle4.Alignment = System.Windows.Forms.DataGridViewContentAlignment.MiddleCenter; 
    260             dataGridViewCellStyle4.Format = "P"; 
    261             this.VAT.DefaultCellStyle = dataGridViewCellStyle4; 
    262             this.VAT.HeaderText = "VAT"; 
    263             this.VAT.Name = "VAT"; 
    264             this.VAT.ReadOnly = true; 
    265             //  
    266             // Brutto_Euro_Miano 
    267             //  
    268             this.Brutto_Euro_Miano.DataPropertyName = "Brutto_Euro_Miano"; 
    269             this.Brutto_Euro_Miano.HeaderText = "Waluta"; 
    270             this.Brutto_Euro_Miano.Name = "Brutto_Euro_Miano"; 
    271             this.Brutto_Euro_Miano.ReadOnly = true; 
    272             //  
    273             // ZATWIERDZONO_DO_DRUKU 
    274             //  
    275             this.ZATWIERDZONO_DO_DRUKU.AutoSizeMode = System.Windows.Forms.DataGridViewAutoSizeColumnMode.None; 
    276             this.ZATWIERDZONO_DO_DRUKU.DataPropertyName = "ZATWIERDZONO DO DRUKU"; 
    277             this.ZATWIERDZONO_DO_DRUKU.HeaderText = "ZD"; 
    278             this.ZATWIERDZONO_DO_DRUKU.Name = "ZATWIERDZONO_DO_DRUKU"; 
    279             this.ZATWIERDZONO_DO_DRUKU.ReadOnly = true; 
    280             this.ZATWIERDZONO_DO_DRUKU.Width = 25; 
    281230            //  
    282231            // rEKLAMABindingSource 
     
    304253            this.rEKLAMADataGridView1.Columns.AddRange(new System.Windows.Forms.DataGridViewColumn[] { 
    305254            this.Data1Emisji, 
     255            this.ShortName1, 
    306256            this.dataGridViewTextBoxColumn1, 
    307257            this.dataGridViewTextBoxColumn43, 
     
    385335            this.fAKTURYDataGridView.AllowUserToAddRows = false; 
    386336            this.fAKTURYDataGridView.AllowUserToDeleteRows = false; 
    387             dataGridViewCellStyle8.BackColor = System.Drawing.Color.MintCream; 
    388             this.fAKTURYDataGridView.AlternatingRowsDefaultCellStyle = dataGridViewCellStyle8; 
     337            dataGridViewCellStyle9.BackColor = System.Drawing.Color.MintCream; 
     338            this.fAKTURYDataGridView.AlternatingRowsDefaultCellStyle = dataGridViewCellStyle9; 
    389339            this.fAKTURYDataGridView.AutoGenerateColumns = false; 
    390340            this.fAKTURYDataGridView.AutoSizeColumnsMode = System.Windows.Forms.DataGridViewAutoSizeColumnsMode.Fill; 
     
    708658            this.KlientLabel.Text = "----"; 
    709659            //  
     660            // TYP 
     661            //  
     662            this.TYP.AutoSizeMode = System.Windows.Forms.DataGridViewAutoSizeColumnMode.None; 
     663            this.TYP.DataPropertyName = "Type"; 
     664            this.TYP.HeaderText = "Typ"; 
     665            this.TYP.Name = "TYP"; 
     666            this.TYP.ReadOnly = true; 
     667            this.TYP.Width = 50; 
     668            //  
     669            // ShortName 
     670            //  
     671            this.ShortName.DataPropertyName = "ShortName"; 
     672            this.ShortName.HeaderText = "Symbol"; 
     673            this.ShortName.Name = "ShortName"; 
     674            this.ShortName.ReadOnly = true; 
     675            //  
     676            // VAT 
     677            //  
     678            this.VAT.DataPropertyName = "Vat"; 
     679            dataGridViewCellStyle4.Alignment = System.Windows.Forms.DataGridViewContentAlignment.MiddleCenter; 
     680            dataGridViewCellStyle4.Format = "P"; 
     681            this.VAT.DefaultCellStyle = dataGridViewCellStyle4; 
     682            this.VAT.HeaderText = "Vat"; 
     683            this.VAT.Name = "VAT"; 
     684            this.VAT.ReadOnly = true; 
     685            //  
     686            // Brutto_Euro_Miano 
     687            //  
     688            this.Brutto_Euro_Miano.DataPropertyName = "Currency"; 
     689            this.Brutto_Euro_Miano.HeaderText = "Waluta"; 
     690            this.Brutto_Euro_Miano.Name = "Brutto_Euro_Miano"; 
     691            this.Brutto_Euro_Miano.ReadOnly = true; 
     692            //  
     693            // ZATWIERDZONO_DO_DRUKU 
     694            //  
     695            this.ZATWIERDZONO_DO_DRUKU.AutoSizeMode = System.Windows.Forms.DataGridViewAutoSizeColumnMode.None; 
     696            this.ZATWIERDZONO_DO_DRUKU.DataPropertyName = "IsActivated"; 
     697            this.ZATWIERDZONO_DO_DRUKU.HeaderText = "ZD"; 
     698            this.ZATWIERDZONO_DO_DRUKU.Name = "ZATWIERDZONO_DO_DRUKU"; 
     699            this.ZATWIERDZONO_DO_DRUKU.ReadOnly = true; 
     700            this.ZATWIERDZONO_DO_DRUKU.Width = 25; 
     701            //  
    710702            // Data1Emisji 
    711703            //  
    712704            this.Data1Emisji.DataPropertyName = "StartDate"; 
     705            dataGridViewCellStyle7.Format = "d"; 
     706            dataGridViewCellStyle7.NullValue = null; 
     707            this.Data1Emisji.DefaultCellStyle = dataGridViewCellStyle7; 
    713708            this.Data1Emisji.HeaderText = "1 Emisja"; 
    714709            this.Data1Emisji.Name = "Data1Emisji"; 
    715710            this.Data1Emisji.ReadOnly = true; 
     711            //  
     712            // ShortName1 
     713            //  
     714            this.ShortName1.DataPropertyName = "ShortName"; 
     715            this.ShortName1.HeaderText = "Symbol"; 
     716            this.ShortName1.Name = "ShortName1"; 
     717            this.ShortName1.ReadOnly = true; 
    716718            //  
    717719            // dataGridViewTextBoxColumn1 
     
    727729            //  
    728730            this.dataGridViewTextBoxColumn43.DataPropertyName = "Vat"; 
    729             dataGridViewCellStyle7.Alignment = System.Windows.Forms.DataGridViewContentAlignment.MiddleCenter; 
    730             dataGridViewCellStyle7.Format = "P"; 
    731             this.dataGridViewTextBoxColumn43.DefaultCellStyle = dataGridViewCellStyle7; 
     731            dataGridViewCellStyle8.Alignment = System.Windows.Forms.DataGridViewContentAlignment.MiddleCenter; 
     732            dataGridViewCellStyle8.Format = "P"; 
     733            this.dataGridViewTextBoxColumn43.DefaultCellStyle = dataGridViewCellStyle8; 
    732734            this.dataGridViewTextBoxColumn43.HeaderText = "Vat"; 
    733735            this.dataGridViewTextBoxColumn43.Name = "dataGridViewTextBoxColumn43"; 
     
    816818        private System.Windows.Forms.Button reklama2Button; 
    817819        private System.Windows.Forms.Button reklama1Button; 
    818         private System.Windows.Forms.DataGridViewTextBoxColumn dataGridViewTextBoxColumn9; 
    819         private System.Windows.Forms.DataGridViewTextBoxColumn TYP; 
    820         private System.Windows.Forms.DataGridViewTextBoxColumn dataGridViewTextBoxColumn27; 
    821         private System.Windows.Forms.DataGridViewTextBoxColumn VAT; 
    822         private System.Windows.Forms.DataGridViewTextBoxColumn Brutto_Euro_Miano; 
    823         private System.Windows.Forms.DataGridViewCheckBoxColumn ZATWIERDZONO_DO_DRUKU; 
    824820        private System.Windows.Forms.Button usunFaktureButton; 
    825821        private System.Windows.Forms.DateTimePicker dtpZmianaDaty; 
     
    841837        private System.Windows.Forms.DataGridViewTextBoxColumn kodAgenta; 
    842838        private System.Windows.Forms.Button proformaButton; 
     839        private System.Windows.Forms.DataGridViewTextBoxColumn TYP; 
     840        private System.Windows.Forms.DataGridViewTextBoxColumn ShortName; 
     841        private System.Windows.Forms.DataGridViewTextBoxColumn VAT; 
     842        private System.Windows.Forms.DataGridViewTextBoxColumn Brutto_Euro_Miano; 
     843        private System.Windows.Forms.DataGridViewCheckBoxColumn ZATWIERDZONO_DO_DRUKU; 
    843844        private System.Windows.Forms.DataGridViewTextBoxColumn Data1Emisji; 
     845        private System.Windows.Forms.DataGridViewTextBoxColumn ShortName1; 
    844846        private System.Windows.Forms.DataGridViewTextBoxColumn dataGridViewTextBoxColumn1; 
    845847        private System.Windows.Forms.DataGridViewTextBoxColumn dataGridViewTextBoxColumn43; 
  • branches/Abonament/BazaReklam/ZamowieniaForm.cs

    r703 r704  
    44using System.Data.SqlClient; 
    55using System.Drawing; 
     6using System.Text; 
    67using System.Windows.Forms; 
    78using Baza_Reklam.Classes.Helpers; 
    89using Baza_Reklam.Classes.Interfaces; 
    9 using Baza_Reklam.Classes.Model; 
     10using Baza_Reklam.Classes.Model.Enums; 
    1011using Baza_Reklam.Classes.Repositories; 
    1112 
     
    1415    public partial class ZamowieniaForm : Form 
    1516    { 
     17        private CustomerRepository customerRepository; 
     18        private List<IProduct> productsWithOrder = new List<IProduct>(); 
     19        private List<IProduct> productsWithoutOrder = new List<IProduct>(); 
     20         
    1621        private REKLAMADataSet.KLIENCIRow klient; 
    1722 
     
    5762        { 
    5863            InitializeComponent(); 
    59             InitTableAdatpers(); 
     64            InitTableAdatpers(klient.CustomerID); 
    6065 
    6166            this.klient = klient; 
     
    6570        { 
    6671            InitializeComponent(); 
    67             InitTableAdatpers(); 
     72            InitTableAdatpers(idKlienta); 
    6873 
    6974            klient = klienciTableAdapter.GetDataByCustomerId(idKlienta)[0]; 
     
    7378        { 
    7479            InitializeComponent(); 
    75             InitTableAdatpers(); 
     80            InitTableAdatpers(idKlienta); 
    7681 
    7782            klient = klienciTableAdapter.GetDataByCustomerId(idKlienta)[0]; 
     
    8085        } 
    8186 
    82         private void InitTableAdatpers() 
    83         { 
     87        private void InitTableAdatpers(int customerId) 
     88        { 
     89            customerRepository = new CustomerRepository(ConnString.getConnString().Value); 
     90 
     91            productsWithOrder = customerRepository.FindProductsWithOrders(customerId); 
     92            productsWithoutOrder = customerRepository.FindProductsWithoutOrders(customerId); 
     93 
    8494            rEKLAMABindingSource1.DataSource = ReklamyBezZamowienia; 
    8595            zamowieniaTableAdapter.Connection.ConnectionString = ConnString.getConnString().Value; 
     
    96106        } 
    97107 
     108        private void BindProductsWithoutOrders() 
     109        { 
     110            rEKLAMADataGridView1.AutoGenerateColumns = false; 
     111            rEKLAMADataGridView1.DataSource = null; 
     112            rEKLAMADataGridView1.DataSource = productsWithoutOrder; 
     113        } 
     114 
     115        private void BindProductsWithOrders(int orderId) 
     116        { 
     117            rEKLAMADataGridView.AutoGenerateColumns = false; 
     118            rEKLAMADataGridView.DataSource = null; 
     119            rEKLAMADataGridView.DataSource = productsWithOrder.FindAll(delegate(IProduct p) { return p.OrderId == orderId; }); 
     120        } 
     121 
    98122        private void ZamowieniaForm_Load(object sender, EventArgs e) 
    99123        { 
    100             CustomerRepository customerRepository = new CustomerRepository(ConnString.getConnString().Value); 
    101  
    102              
    103             rEKLAMADataGridView1.AutoGenerateColumns = false; 
    104             rEKLAMADataGridView1.DataSource = customerRepository.FindProductsWithoutOrders(klient.CustomerID); 
    105              
     124            BindProductsWithoutOrders(); 
    106125             
    107126            usunFaktureButton.Enabled = User.Instance().IsKierownik; 
     
    119138            { 
    120139                zamowieniaBindingSource.Position = zamowieniaBindingSource.Find("idZamowienia", idZamowienia); 
    121                 rEKLAMATableAdapter.FillByIdZamowienia(rEKLAMADataSet.REKLAMA, idZamowienia); 
     140 
     141                BindProductsWithOrders(idZamowienia); 
     142                 
    122143                fAKTURYTableAdapter.FillByIdZamowienia(rEKLAMADataSet.FAKTURY, idZamowienia); 
    123144            } 
     
    182203        private void dodajDoZamButton_Click(object sender, EventArgs e) 
    183204        { 
    184             if (zamowieniaBindingSource.Current != null) 
    185             { 
    186                 if (rEKLAMADataGridView1.SelectedRows.Count > 0) 
    187                 { 
    188                     DataRowView z = (DataRowView)zamowieniaBindingSource.Current; 
    189                     REKLAMADataSet.zamowieniaRow zamowienie = (REKLAMADataSet.zamowieniaRow)z.Row; 
    190  
    191                     REKLAMADataSet.REKLAMARow row = (REKLAMADataSet.REKLAMARow)((DataRowView)rEKLAMADataGridView1.SelectedRows[0].DataBoundItem).Row; 
    192  
    193                     string s = string.Empty; 
    194  
    195                     s = CzyMoznaDodacDoZam(zamowienie,rEKLAMADataSet.REKLAMA, row, s); 
    196  
    197                     if (s != string.Empty) 
     205            if (zamowieniaBindingSource.Current == null || rEKLAMADataGridView1.SelectedRows.Count <= 0) return; 
     206 
     207            DataRowView z = (DataRowView) zamowieniaBindingSource.Current; 
     208            REKLAMADataSet.zamowieniaRow zamowienie = (REKLAMADataSet.zamowieniaRow) z.Row; 
     209 
     210            IProduct product = (IProduct) rEKLAMADataGridView1.SelectedRows[0].DataBoundItem; 
     211             
     212            string s = string.Empty; 
     213            if (!CanAddProductToOrder(product, productsWithOrder, zamowienie, out s)) 
     214            { 
     215                MessageBox.Show(s, "Baza Reklam - Zamówienia i faktury", MessageBoxButtons.OK, MessageBoxIcon.Error); 
     216                return; 
     217            } 
     218 
     219            //TODO: move that piece to separate method 
     220            if (product.ProductType == ProductType.Advertisment) 
     221            { 
     222                if (zamowienie.IsidKontaNull()) 
     223                { 
     224                    // zmiana domyœlnego konta do faktury dla EUR 
     225                    if (User.Instance().IdAgencji != 4 && product.Currency == "EUR") 
    198226                    { 
    199                         s += "\n Reklamy nie mog¹ byæ w obrêbie jednego zamówienia"; 
    200                         MessageBox.Show(s, "", MessageBoxButtons.OK, MessageBoxIcon.Error); 
    201                         return; 
     227                        if (User.Instance().IdAgencji == 1223940396 || User.Instance().IdAgencji == 1223940398) 
     228                            zamowienie.idKonta = 3; 
     229                        else 
     230                            zamowienie.idKonta = 5; 
     231 
     232                        zamowieniaTableAdapter.Update(rEKLAMADataSet.zamowienia); 
    202233                    } 
    203  
    204                     row.idZamowienia = zamowienie.idZamowienia; 
    205  
    206                     if (zamowienie.IsidKontaNull() && !row.IsBrutto_Euro_MianoNull()) 
    207                     { 
    208                         // zmiana domyœlnego konta do faktury dla EUR 
    209                         if (User.Instance().IdAgencji != 4 & (row.Brutto_Euro_Miano == "EUR")) 
    210                         { 
    211                             if (User.Instance().IdAgencji == 1223940396 | User.Instance().IdAgencji == 1223940398) 
    212                             { 
    213                                 zamowienie.idKonta = 3; 
    214                             } 
    215                             else 
    216                             { 
    217                                 zamowienie.idKonta = 5; 
    218                             } 
    219                         } 
    220                     } 
    221  
    222                     rEKLAMADataSet.REKLAMA.ImportRow(row); 
    223                     ReklamyBezZamowienia.Rows.Remove(row); 
    224                     rEKLAMATableAdapter.Update(rEKLAMADataSet.REKLAMA); 
    225                     zamowieniaTableAdapter.Update(rEKLAMADataSet.zamowienia); 
    226                 } 
    227             } 
    228         } 
    229  
    230         private string CzyMoznaDodacDoZam(REKLAMADataSet.zamowieniaRow zamowienie, 
    231             REKLAMADataSet.REKLAMADataTable reklamyWZamowieniu, 
    232             REKLAMADataSet.REKLAMARow row, string s) 
    233         { 
    234             if (zamowienie.zafakturowanoWszystko || zamowienie.zafakturowano) 
    235             { 
    236                 s += "Zamówienie jest ju¿ zafakturowane."; 
    237             } 
    238  
    239             //sprawdzenie waluty i VAT 
    240             if (reklamyWZamowieniu.Count > 0) 
    241             { 
    242                 REKLAMADataSet.REKLAMARow rek = reklamyWZamowieniu[0]; 
    243  
    244                 if (rek.IsBrutto_Euro_MianoNull() ^ row.IsBrutto_Euro_MianoNull()) 
    245                 { 
    246                     if ((rek.IsBrutto_Euro_MianoNull() || row.IsBrutto_Euro_MianoNull()) 
    247                         || 
    248                         (rek.Brutto_Euro_Miano != row.Brutto_Euro_Miano)) 
    249                     { 
    250                         s += "Reklamy s¹ w ró¿nych walutach. \n"; 
    251                     } 
    252                 } 
    253  
    254                 REKLAMADataSet.DatyWydanDataTable t = datyWydanTableAdapter.GetDataByPierwszaEmisjaWZamowieniu(zamowienie.idZamowienia); 
    255  
    256                 if (t.Rows.Count == 0) 
    257                 { 
    258                     s += "Reklama nie ma wybranych emisji. \n"; 
    259                 } 
    260                 else 
    261                 { 
    262                     if (!zamowienie.IsdataOstatniejZafakturowanejEmisjiNull()) 
    263                     { 
    264                         if (t[0].DATA_W < zamowienie.dataOstatniejZafakturowanejEmisji) 
    265                         { 
    266                             s += "Reklama zawiera emisjê na okres, który ju¿ zosta³ zafakturowany"; 
    267                         } 
    268                     } 
    269                 } 
    270  
    271                 if (rek.VAT != row.VAT) 
    272                 { 
    273                     s += "Reklamy maj¹ ró¿ne stawki VAT. \n"; 
    274                 } 
    275             } 
    276             return s; 
     234                } 
     235            } 
     236 
     237            product.OrderId = zamowienie.idZamowienia; 
     238            customerRepository.AddProductToOrder(product); 
     239 
     240            productsWithoutOrder.Remove(product); 
     241            productsWithOrder.Add(product); 
     242 
     243            BindProductsWithOrders(zamowienie.idZamowienia); 
     244            BindProductsWithoutOrders(); 
     245        } 
     246 
     247        private bool CanAddProductToOrder(IProduct product, List<IProduct> products, REKLAMADataSet.zamowieniaRow order, out string errorMessage) 
     248        { 
     249            StringBuilder sb = new StringBuilder(); 
     250            bool canAddProduct = true; 
     251             
     252            if (order.zafakturowanoWszystko || order.zafakturowano) 
     253            { 
     254                sb.AppendLine("Zamówienie jest ju¿ zafakturowane."); 
     255                canAddProduct = false; 
     256            } 
     257             
     258            if (products.FindAll(delegate(IProduct p) { return p.Currency != product.Currency && p.OrderId == order.idZamowienia; }).Count > 0) 
     259            { 
     260                sb.AppendLine("Produkt jest w innej walucie ni¿ pozosta³e produkty w zamówieniu."); 
     261                canAddProduct = false; 
     262            } 
     263            if (products.FindAll(delegate(IProduct p) { return p.Vat != product.Vat && p.OrderId == order.idZamowienia; }).Count > 0) 
     264            { 
     265                sb.AppendLine("Produkt ma inn¹ stawkê VAT ni¿ pozosta³e produkty w zamówieniu."); 
     266                canAddProduct = false; 
     267            } 
     268 
     269            if(canAddProduct && product.ProductType == ProductType.Advertisment) 
     270            { 
     271                if (datyWydanTableAdapter.GetDataByPierwszaEmisjaWReklamie(product.Id).Rows.Count <= 0) 
     272                { 
     273                    sb.AppendLine("Reklama nie ma wybranych emisji."); 
     274                    canAddProduct = false; 
     275                } 
     276            } 
     277 
     278            errorMessage = sb.ToString(); 
     279            return canAddProduct; 
    277280        } 
    278281 
    279282        private void usunZZamButton_Click(object sender, EventArgs e) 
    280283        { 
    281             if (zamowieniaBindingSource.Current != null && rEKLAMADataGridView.SelectedRows.Count != 0) 
    282             { 
    283                 DataRowView row = (DataRowView)rEKLAMADataGridView.SelectedRows[0].DataBoundItem; 
    284  
    285                 if (Convert.ToBoolean(row["FAKTURA WYSTAWIONO"])) 
    286                 { 
    287                     MessageBox.Show("Reklama ma zafakturowane emisje. Nie mo¿na usun¹æ reklamy."); 
    288                     return; 
    289                 } 
    290  
    291                 row["idZamowienia"] = DBNull.Value; 
    292                 row.EndEdit(); 
    293  
    294                 ReklamyBezZamowienia.ImportRow(row.Row); 
    295                 rEKLAMADataSet.REKLAMA.Rows.Remove(row.Row); 
    296  
    297                 rEKLAMATableAdapter.Update(ReklamyBezZamowienia); 
    298                 zamowieniaTableAdapter.Update(rEKLAMADataSet.zamowienia); 
    299             } 
     284            if (zamowieniaBindingSource.Current == null || rEKLAMADataGridView.SelectedRows.Count == 0) return; 
     285 
     286            IProduct product = (IProduct) rEKLAMADataGridView.SelectedRows[0].DataBoundItem; 
     287 
     288            if (product.HasInvoice) 
     289            { 
     290                MessageBox.Show("Wybrany produkt posiada ju¿ zafakturowane elementy. Nie mo¿na go usun¹æ.",  
     291                                "Baza Reklam - Zamówienia i faktury"); 
     292                return; 
     293            } 
     294 
     295            customerRepository.RemoveProductFromOrder(product); 
     296             
     297            productsWithOrder.Remove(product); 
     298            int orderId = product.OrderId.Value; 
     299            product.OrderId = null; 
     300            productsWithoutOrder.Add(product); 
     301             
     302            BindProductsWithOrders(orderId); 
     303            BindProductsWithoutOrders(); 
    300304        } 
    301305 
     
    11281132        private void reklama1Button_Click(object sender, EventArgs e) 
    11291133        { 
    1130             if (rEKLAMABindingSource.Current != null) 
    1131             { 
    1132                 DataRowView row = (DataRowView)rEKLAMABindingSource.Current; 
    1133                 REKLAMADataSet.REKLAMARow reklama = (REKLAMADataSet.REKLAMARow)row.Row; 
    1134                 int id = reklama.ReklamaID; 
    1135  
    1136                 OrderDetails.getOrderDetails().pokazSzczegolyZamowienia(id); 
    1137  
    1138                 if (OrderDetails.getOrderDetails().ShowDialog() == DialogResult.OK) 
    1139                 { 
    1140                     rEKLAMATableAdapter.FillByIdZamowienia(rEKLAMADataSet.REKLAMA, reklama.idZamowienia); 
    1141                     rEKLAMABindingSource.Position = rEKLAMABindingSource.Find("reklamaId", id); 
    1142                 } 
    1143             } 
     1134            if (rEKLAMADataGridView.SelectedRows.Count <= 0) return; 
     1135 
     1136            IProduct product = (IProduct) rEKLAMADataGridView.SelectedRows[0].DataBoundItem; 
     1137            if (product.ProductType != ProductType.Advertisment) return; 
     1138 
     1139            OrderDetails.getOrderDetails().pokazSzczegolyZamowienia(product.Id); 
     1140 
     1141            if (OrderDetails.getOrderDetails().ShowDialog() != DialogResult.OK) return; 
     1142 
     1143            //refresh items 
     1144            productsWithOrder = customerRepository.FindProductsWithOrders(klient.CustomerID); 
     1145            BindProductsWithOrders(product.OrderId.Value); 
    11441146        } 
    11451147 
    11461148        private void reklama2Button_Click(object sender, EventArgs e) 
    11471149        { 
    1148             if (rEKLAMABindingSource1.Current != null) 
    1149             { 
    1150                 DataRowView row = (DataRowView)rEKLAMABindingSource1.Current; 
    1151                 REKLAMADataSet.REKLAMARow reklama = (REKLAMADataSet.REKLAMARow)row.Row; 
    1152                 int id = reklama.ReklamaID; 
    1153  
    1154                 OrderDetails.getOrderDetails().pokazSzczegolyZamowienia(id); 
    1155                 if (OrderDetails.getOrderDetails().ShowDialog() == DialogResult.OK) 
    1156                 { 
    1157                     ReklamyBezZamowienia = rEKLAMATableAdapter.GetDataByCustomerIdandIdZamowienia(klient.CustomerID); 
    1158                     rEKLAMABindingSource1.DataSource = ReklamyBezZamowienia; 
    1159                     rEKLAMABindingSource1.Position = rEKLAMABindingSource1.Find("reklamaId", id); 
    1160                 } 
    1161             } 
     1150            if (rEKLAMADataGridView1.SelectedRows.Count <= 0) return; 
     1151 
     1152            IProduct product = (IProduct)rEKLAMADataGridView1.SelectedRows[0].DataBoundItem; 
     1153            if (product.ProductType != ProductType.Advertisment) return; 
     1154 
     1155            OrderDetails.getOrderDetails().pokazSzczegolyZamowienia(product.Id); 
     1156 
     1157            if (OrderDetails.getOrderDetails().ShowDialog() != DialogResult.OK) return; 
     1158 
     1159            //refresh items 
     1160            productsWithoutOrder = customerRepository.FindProductsWithoutOrders(klient.CustomerID); 
     1161            BindProductsWithoutOrders(); 
    11621162        } 
    11631163 
     
    11711171        private void zamowieniaBindingSource_CurrentChanged(object sender, EventArgs e) 
    11721172        { 
    1173             if (zamowieniaBindingSource.Current != null) 
    1174             { 
    1175                 DataRowView z = (DataRowView)zamowieniaBindingSource.Current; 
    1176                 REKLAMADataSet.zamowieniaRow zamowienie = (REKLAMADataSet.zamowieniaRow)z.Row; 
     1173            if (zamowieniaBindingSource.Current == null) return; 
     1174             
     1175             
     1176            DataRowView z = (DataRowView)zamowieniaBindingSource.Current; 
     1177            REKLAMADataSet.zamowieniaRow zamowienie = (REKLAMADataSet.zamowieniaRow)z.Row; 
    11771178                 
    1178                 rEKLAMATableAdapter.FillByIdZamowienia(rEKLAMADataSet.REKLAMA, zamowienie.idZamowienia); 
    1179                 fAKTURYTableAdapter.FillByIdZamowienia(rEKLAMADataSet.FAKTURY, zamowienie.idZamowienia); 
    1180  
    1181                 dodajDoZamButton.Enabled = !zamowienie.zafakturowanoWszystko; 
    1182                 usunZZamButton.Enabled = !zamowienie.zafakturowanoWszystko; 
    1183                 fakturujButton.Enabled = !zamowienie.zafakturowanoWszystko; 
    1184  
    1185                 if (!zamowienie.IsdataOstatniejZafakturowanejEmisjiNull()) 
    1186                 { 
    1187                     DateTime data = zamowienie.dataOstatniejZafakturowanejEmisji; 
    1188                     DateTime dzis = DateTime.Today; 
    1189  
    1190                     if ((dzis.Year > data.Year) || 
    1191                         (dzis.Year == data.Year & dzis.Month > data.Month)) 
    1192                     { 
    1193                         fakturujButton.Enabled = true; 
    1194                     } 
    1195                     else 
    1196                     { 
    1197                         fakturujButton.Enabled = false; 
    1198                     } 
     1179            //rEKLAMATableAdapter.FillByIdZamowienia(rEKLAMADataSet.REKLAMA, zamowienie.idZamowienia); 
     1180            BindProductsWithOrders(zamowienie.idZamowienia); 
     1181 
     1182            fAKTURYTableAdapter.FillByIdZamowienia(rEKLAMADataSet.FAKTURY, zamowienie.idZamowienia); 
     1183 
     1184            dodajDoZamButton.Enabled = !zamowienie.zafakturowanoWszystko; 
     1185            usunZZamButton.Enabled = !zamowienie.zafakturowanoWszystko; 
     1186            fakturujButton.Enabled = !zamowienie.zafakturowanoWszystko; 
     1187 
     1188            if (!zamowienie.IsdataOstatniejZafakturowanejEmisjiNull()) 
     1189            { 
     1190                DateTime data = zamowienie.dataOstatniejZafakturowanejEmisji; 
     1191                DateTime dzis = DateTime.Today; 
     1192 
     1193                if ((dzis.Year > data.Year) || 
     1194                    (dzis.Year == data.Year & dzis.Month > data.Month)) 
     1195                { 
     1196                    fakturujButton.Enabled = true; 
     1197                } 
     1198                else 
     1199                { 
     1200                    fakturujButton.Enabled = false; 
    11991201                } 
    12001202            } 
  • branches/Abonament/BazaReklam/ZamowieniaForm.resx

    r703 r704  
    139139    <value>True</value> 
    140140  </metadata> 
     141  <metadata name="ShortName.UserAddedColumn" type="System.Boolean, mscorlib, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089"> 
     142    <value>True</value> 
     143  </metadata> 
    141144  <metadata name="VAT.UserAddedColumn" type="System.Boolean, mscorlib, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089"> 
    142145    <value>True</value> 
     
    152155  </metadata> 
    153156  <metadata name="Data1Emisji.UserAddedColumn" type="System.Boolean, mscorlib, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089"> 
     157    <value>True</value> 
     158  </metadata> 
     159  <metadata name="ShortName1.UserAddedColumn" type="System.Boolean, mscorlib, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089"> 
    154160    <value>True</value> 
    155161  </metadata> 
     
    540546  </data> 
    541547  <metadata name="$this.TrayHeight" type="System.Int32, mscorlib, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089"> 
    542     <value>183</value> 
     548    <value>87</value> 
    543549  </metadata> 
    544550</root>