示例#1
0
        public OOB.Resultado.Ficha ClienteZona_Editar(OOB.Maestro.Zona.Editar.Ficha ficha)
        {
            var rt = new OOB.Resultado.Ficha();

            var fichaDTO = new DtoLibPos.ClienteZona.Editar.Ficha()
            {
                auto   = ficha.auto,
                nombre = ficha.nombre,
                codigo = ficha.codigo,
            };
            var r01 = MyData.ClienteZona_Editar(fichaDTO);

            if (r01.Result == DtoLib.Enumerados.EnumResult.isError)
            {
                rt.Mensaje = r01.Mensaje;
                rt.Result  = OOB.Resultado.Enumerados.EnumResult.isError;
                return(rt);
            }

            return(rt);
        }
 public DtoLib.Resultado ClienteZona_Editar(DtoLibPos.ClienteZona.Editar.Ficha ficha)
 {
     return(ServiceProv.ClienteZona_Editar(ficha));
 }
        public DtoLib.Resultado ClienteZona_Editar(DtoLibPos.ClienteZona.Editar.Ficha ficha)
        {
            var result = new DtoLib.Resultado();

            try
            {
                using (var ctx = new PosEntities(_cnPos.ConnectionString))
                {
                    using (var ts = new TransactionScope())
                    {
                        var ent = ctx.clientes_zonas.Find(ficha.auto);
                        if (ent == null)
                        {
                            result.Mensaje = "[ ID ] ZONA NO ENCONTRADA";
                            result.Result  = DtoLib.Enumerados.EnumResult.isError;
                            return(result);
                        }

                        ent.codigo = ficha.codigo;
                        ent.nombre = ficha.nombre;
                        ctx.SaveChanges();
                        ts.Complete();
                    }
                }
            }
            catch (DbUpdateException ex)
            {
                var dbUpdateEx = ex as DbUpdateException;
                var sqlEx      = dbUpdateEx.InnerException;
                if (sqlEx != null)
                {
                    var exx = (MySql.Data.MySqlClient.MySqlException)sqlEx.InnerException;
                    if (exx != null)
                    {
                        if (exx.Number == 1062)
                        {
                            result.Mensaje = "CAMPO DUPLICADO" + Environment.NewLine + exx.Message;
                            result.Result  = DtoLib.Enumerados.EnumResult.isError;
                            return(result);
                        }
                    }
                }
                result.Mensaje = ex.Message;
                result.Result  = DtoLib.Enumerados.EnumResult.isError;
            }
            catch (DbEntityValidationException dbEx)
            {
                var msg = "";
                foreach (var validationErrors in dbEx.EntityValidationErrors)
                {
                    foreach (var validationError in validationErrors.ValidationErrors)
                    {
                        msg += string.Format("Property: {0} Error: {1}", validationError.PropertyName, validationError.ErrorMessage) + Environment.NewLine;
                    }
                }
                result.Mensaje = msg;
                result.Result  = DtoLib.Enumerados.EnumResult.isError;
            }
            catch (Exception e)
            {
                result.Mensaje = e.Message;
                result.Result  = DtoLib.Enumerados.EnumResult.isError;
            }

            return(result);
        }