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); }
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); }