示例#1
0
        public static CustomerEntity Save(CustomerEntity customer)
        {

            if (CustomerDAL.Exists(customer.CustomerId))
                return CustomerDAL.Update(customer);
            else
                return CustomerDAL.Create(customer);
  
        }
示例#2
0
        public static CustomerEntity Create(CustomerEntity customer)
        {
            using (SqlConnection conn = new SqlConnection(ConfigurationManager.ConnectionStrings["default"].ToString()))
            {
                string sql = @"INSERT INTO Customer (FirstName, LastName, Company, Address, Email) 
                                    VALUES (@firstName, @lastName, @company, @address, @email)
                               SELECT SCOPE_IDENTITY()";

                SqlCommand cmd = new SqlCommand(sql, conn);

                cmd.Parameters.AddWithValue("@firstName", customer.FirstName);
                cmd.Parameters.AddWithValue("@lastName", customer.LastName);
                cmd.Parameters.AddWithValue("@company", customer.Address);
                cmd.Parameters.AddWithValue("@address", customer.Company);
                cmd.Parameters.AddWithValue("@email", customer.Email);

                customer.CustomerId = Convert.ToInt32(cmd.ExecuteScalar());
            }

            return customer;
        }
示例#3
0
        private static CustomerEntity LoadCustomer(IDataReader reader)
        {
            CustomerEntity customer = new CustomerEntity();

            customer.CustomerId = Convert.ToInt32(reader["CustomerId"]);
            customer.FirstName = Convert.ToString(reader["FirstName"]);
            customer.LastName = Convert.ToString(reader["LastName"]);
            customer.Company = Convert.ToString(reader["Company"]);
            customer.Address = Convert.ToString(reader["Address"]);
            customer.Email = Convert.ToString(reader["Email"]);

            return customer;
        }
示例#4
0
        public static CustomerEntity Update(CustomerEntity customer)
        {
            using (SqlConnection conn = new SqlConnection(ConfigurationManager.ConnectionStrings["default"].ToString()))
            {
                conn.Open();

                string sql = @"UPDATE Customer SET  
                                            FirstName = @firstName, 
                                            LastName = @lastName, Company = @company, 
                                            Address = @address,
                                            Email = @email
                                    WHERE CustomerId = @customerid";

                SqlCommand cmd = new SqlCommand(sql, conn);

                cmd.Parameters.AddWithValue("@firstName", customer.FirstName);
                cmd.Parameters.AddWithValue("@lastName", customer.LastName);
                cmd.Parameters.AddWithValue("@company", customer.Address);
                cmd.Parameters.AddWithValue("@address", customer.Company);
                cmd.Parameters.AddWithValue("@email", customer.Email);
                cmd.Parameters.AddWithValue("@customerid", customer.CustomerId);


                cmd.ExecuteNonQuery();

            }

            return customer;
        }
示例#5
0
        /// <summary>
        /// Inicializa el formulario dejandolo preparado para un nuevo pedido
        /// </summary>
        private void InicializarControles()
        {
            //
            // Limpia las lineas del pedido anterior, pero deja preparada
            // una nueva linea lista para seleccionar el item
            //
            List<DGVLine> list = dgvLineaCompra.DataSource as  List<DGVLine>;
            list.Clear();
            
            NuevaLinea();

            cliente = null;

            txtId.Text = string.Empty;
            txtNombre.Text = string.Empty;
            txtApellido.Text = string.Empty;
            txtDireccion.Text = string.Empty;
            txtCompañia.Text = string.Empty;
            txtEmail.Text = string.Empty;
        }
示例#6
0
        private void btnConfirmar_Click(object sender, EventArgs e)
        {
            if (!Validaciones())
                return;


            #region Creo\Actualizo la informacion del cliente

            //
            // si el cliente se ha seleccionado lo actualizo, sino se crea uno nuevo
            //
            if (cliente == null)
                cliente = new CustomerEntity();

            cliente.FirstName = txtNombre.Text;
            cliente.LastName = txtApellido.Text;
            cliente.Company = txtCompañia.Text;
            cliente.Address = txtDireccion.Text;
            cliente.Email = txtEmail.Text;

            cliente = CustomerBO.Save(cliente);

            #endregion

            #region Creo el Encabezado\Linea de la Factura

            InvoiceEntity invoice = new InvoiceEntity();

            invoice.CustomerId = cliente.CustomerId;
            invoice.InvoiceDate = DateTime.Now.Date;
            invoice.BillingAddress = txtDireccion.Text;


            foreach (DataGridViewRow row in dgvLineaCompra.Rows)
            {
                InvoiceLinesEntity invoiceLine = new InvoiceLinesEntity();

                invoiceLine.TrackId = Convert.ToInt32(row.Cells["Track"].Value);
                invoiceLine.UnitPrice = Convert.ToDecimal(row.Cells["PrecioUnitario"].Value);
                invoiceLine.Quantity = Convert.ToInt32(row.Cells["Cantidad"].Value);

                invoice.Lineas.Add(invoiceLine);
            }

            InvoiceBO.RegistrarFacturacion(invoice);

            #endregion
                
   
            InicializarControles();

        }
示例#7
0
        private void btnBuscarCliente_Click(object sender, EventArgs e)
        {
            frmBuscarCliente frm = new frmBuscarCliente();

            if (frm.ShowDialog() == DialogResult.OK)
            {
                //
                // Mantengo la entidad cliente seleccionada global al formulario
                //
                cliente = CustomerBO.GetById(frm.IdCliente); 

                //
                // muestro en pantalla la info del cliente
                //
                txtId.Text = Convert.ToString(cliente.CustomerId);
                txtNombre.Text = cliente.FirstName;
                txtApellido.Text = cliente.LastName;
                txtDireccion.Text = cliente.Address;
                txtCompañia.Text = cliente.Company;
                txtEmail.Text = cliente.Email; 
            }

        }