Пример #1
0
        public TblOrdenDeCompra InsertOrden(TblOrdenDeCompra orden)
        {
            decimal resta = 0;

            UXiModel.CuentaUsuario _CtaUsr = new UXiModel.CuentaUsuario();
            using (uxisolutionbdEntities context = new uxisolutionbdEntities())
            {
                var query = context.TblOrdenDeCompra.Add(orden);


                _CtaUsr = context.CuentaUsuario.First(i => i.IdUsuario == orden.IdUsuario);
                resta   = (decimal)_CtaUsr.SaldoAFavor - orden.Total.Value;


                _CtaUsr.SaldoAFavor = resta;
                context.SaveChanges();

                var saldo = context.HistorialSaldos.Add(new HistorialSaldos()
                {
                    Fecha            = DateTime.Now,
                    IdUsuario        = orden.IdUsuario,
                    UUM              = orden.IdUsuario,
                    Monto_Salida     = (decimal)orden.Total,
                    IDTipoMovimiento = 4
                });

                context.SaveChanges();
            }
            return(orden);
        }
        public bool GETUpdateODS(int id, int idStatus)
        {
            bool             resultado    = false;
            EnviarCorreo     objEnviaMail = new EnviarCorreo();
            TblOrdenDeCompra objVar       = new TblOrdenDeCompra();
            UXI_Usuarios     usuario      = new UXI_Usuarios();

            try
            {
                using (uxisolutionbdEntities context = new uxisolutionbdEntities())
                {
                    objVar = (from i in context.TblOrdenDeCompra
                              where i.IdOrdenCompra == id
                              select i).FirstOrDefault();

                    objVar.IdEstatusOC = idStatus;


                    usuario = (from o in context.UXI_Usuarios
                               where o.IdUsuario == objVar.IdUsuario
                               select o).FirstOrDefault();
                    if (idStatus == 5)
                    {
                        CancelacionController objcancel = new CancelacionController();
                        objcancel.Get(id);
                    }
                    context.SaveChanges();
                }

                if (objVar.IdEstatusOC == 4 && usuario.Email != "")
                {
                    p_correoE mail = new p_correoE()
                    {
                        sFrom    = "*****@*****.**",
                        sTo      = usuario.Email,
                        sToCC    = "*****@*****.**",
                        sSubject = "Orden Terminada",
                        sBody    = "Hola " + usuario.Nombre + " " + usuario.ApPaterno + Environment.NewLine + ", te notificamos que tu orden número" + id.ToString() + " ya se encuentra terminada"
                    };

                    objEnviaMail.EnviarEmail(mail);
                }

                //si cancela se hace un reembolso

                resultado = true;
            }

            catch
            {
                resultado = false;
            }
            return(resultado);
        }
Пример #3
0
        public OrdenDeCompra GenerarODC(TblOrdenDeCompra OrdenCompra)
        {
            OrdenDeCompra resultado = new OrdenDeCompra();

            using (uxisolutionbdEntities context = new uxisolutionbdEntities())
            {
                var query = context.TblOrdenDeCompra.Add(OrdenCompra);
                context.SaveChanges();
                //TODO:Actualizar saldo usuario
            }

            return(resultado);
        }
        //// GET: api/Cancelacion
        //public IEnumerable<string> Get()
        //{
        //    return new string[] { "value1", "value2" };
        //}

        // GET: api/Cancelacion/5
        public bool Get(int id)
        {
            bool             resultado    = false;
            TblOrdenDeCompra objOdcResult = new TblOrdenDeCompra();
            CuentaUsuario    usuariosII   = new CuentaUsuario();

            //obtener orden de servicio

            using (uxisolutionbdEntities context = new uxisolutionbdEntities())
            {
                objOdcResult = (from i in context.TblOrdenDeCompra
                                where i.IdOrdenCompra == id
                                select i).FirstOrDefault();

                if (objOdcResult.IdEstatusOC == 1)
                {
                    //cancelar
                    objOdcResult.IdEstatusOC = 5;


                    //context.SaveChanges();

                    //regresa saldo a favor
                    usuariosII = (from i in context.CuentaUsuario
                                  where i.IdUsuario == objOdcResult.IdUsuario
                                  select i).FirstOrDefault();

                    usuariosII.SaldoAFavor = usuariosII.SaldoAFavor + objOdcResult.Total;



                    //TODO:inserta movimiento  a favor
                    var saldo = context.HistorialSaldos.Add(new HistorialSaldos()
                    {
                        Fecha            = DateTime.Now,
                        IdUsuario        = usuariosII.IdUsuario,
                        UUM              = usuariosII.IdUsuario,
                        Monto_Entrada    = (decimal)objOdcResult.Total,
                        IDTipoMovimiento = 3
                    });
                    context.SaveChanges();
                    resultado = true;
                }
            }



            return(resultado);
        }
        /// <summary>
        /// Insertar orden de compra
        /// </summary>Generar orden de compra
        /// <param name="value"></param>
        // POST: api/OrdenService
        public OrdenDeCompra Post(OrdenDeCompra _objODC)
        {
            List <string>    request     = _objODC.Request.Split('|').ToList();
            TblOrdenDeCompra ordenCompra = new TblOrdenDeCompra(_objODC.Usuario.IdUsuario, request[0]);

            request.RemoveAt(0);
            ODC odc = new ODC();

            ordenCompra = odc.InsertOrden(ordenCompra);
            List <UXiModel.TblRelacionPedimento> detalle = request.Select(r => new UXiModel.TblRelacionPedimento(r, _objODC.Usuario.IdUsuario, ordenCompra.IdOrdenCompra)).ToList();

            odc.InsertAllOrderDetails(detalle);
            odc.SendMail(ordenCompra.IdOrdenCompra);
            return(_objODC);
        }