Exemplo n.º 1
0
        static public void Create(OrdenadoCabDTO ordenado, List <OrdenadoDetDTO> lineas)
        {
            OrdenadoSKUDTO sku;

            using (SqlTransaction tran = dao.IniciarTransaccion())
            {
                try
                {
                    ordenado.PautaId = SaveNextPautaId(tran).ToString();
                    ordenado         = dao.Create(ordenado, tran);

                    foreach (OrdenadoDetDTO linea in lineas)
                    {
                        linea.RecId     = 0;
                        linea.DatareaId = ordenado.DatareaId;
                        linea.PautaId   = ordenado.PautaId;

                        daoDetalle.Create(linea, tran);
                    }

                    var dtSKU = BuildAllSKU(lineas);
                    foreach (System.Data.DataRow dr in dtSKU.Rows)
                    {
                        sku = new OrdenadoSKUDTO();

                        sku.RecId     = 0;
                        sku.DatareaId = ordenado.DatareaId;
                        sku.PautaId   = ordenado.PautaId;

                        if (dr["Duracion"] != DBNull.Value)
                        {
                            sku.Duracion = Convert.ToDecimal(dr["Duracion"]);
                        }
                        else
                        {
                            sku.Duracion = null;
                        }

                        sku.CantSalidas  = Convert.ToDecimal(dr["CantSalidas"]);
                        sku.IdentifAviso = Convert.ToString(dr["IdentifAviso"]);
                        sku.IdentifSKU   = Convert.ToString(dr["IdentifSKU"]);

                        daoSKU.Create(sku, tran);
                    }

                    dao.CommitTransaccion(tran);
                }
                catch (Exception)
                {
                    dao.RollbackTransaccion(tran);
                    throw;
                }
            }
        }
Exemplo n.º 2
0
        public static void Update(OrdenadoCabDTO ordenado, List <OrdenadoDetDTO> lineas)
        {
            OrdenadoSKUDTO sku;

            using (SqlTransaction tran = dao.IniciarTransaccion())
            {
                try
                {
                    dao.Update(ordenado, ordenado.RecId, tran);

                    //Elimino toda las lineas del ordenado y las re-creo.
                    daoDetalle.Delete(
                        string.Format("PautaId = '{0}'",
                                      ordenado.PautaId),
                        tran);

                    foreach (OrdenadoDetDTO linea in lineas)
                    {
                        linea.RecId     = 0;
                        linea.DatareaId = ordenado.DatareaId;
                        linea.PautaId   = ordenado.PautaId;

                        daoDetalle.Create(linea, tran);
                    }

                    //Elimino toda las lineas del ordenado y las re-creo.
                    daoSKU.Delete(
                        string.Format("PautaId = '{0}'",
                                      ordenado.PautaId),
                        tran);

                    var dtSKU = BuildAllSKU(lineas);
                    foreach (System.Data.DataRow dr in dtSKU.Rows)
                    {
                        sku = new OrdenadoSKUDTO();

                        sku.RecId     = 0;
                        sku.DatareaId = ordenado.DatareaId;
                        sku.PautaId   = ordenado.PautaId;

                        if (dr["Duracion"] != DBNull.Value)
                        {
                            sku.Duracion = Convert.ToDecimal(dr["Duracion"]);
                        }
                        else
                        {
                            sku.Duracion = null;
                        }

                        sku.CantSalidas  = Convert.ToDecimal(dr["CantSalidas"]);
                        sku.IdentifAviso = Convert.ToString(dr["IdentifAviso"]);
                        sku.IdentifSKU   = Convert.ToString(dr["IdentifSKU"]);

                        daoSKU.Create(sku, tran);
                    }


                    dao.CommitTransaccion(tran);
                }
                catch (Exception)
                {
                    dao.RollbackTransaccion(tran);
                    throw;
                }
            }
        }