public async Task Add(Wsmy647 entity) { try { await _context.Wsmy647.AddAsync(entity); } catch (Exception e) { var msg = e.InnerException.Message; throw; } }
public void Update(Wsmy647 entity) { _context.Wsmy647.Update(entity).Property(x => x.Recnum).IsModified = false; }
public async Task <ApiResponse <Wsmy647> > ActivarWORKFLOW(string cotizacion, int renglon, int propuesta, string usuarioConectado, AppDetailQuotes appDetailQuotes) { Wsmy647 resultDto = new Wsmy647(); Metadata metadata = new Metadata { IsValid = true, Message = "" }; ApiResponse <Wsmy647> response = new ApiResponse <Wsmy647>(resultDto); try { // HdId.Value IdSoicitud wsmy515, // HdRuta.Value // HdRuta.Value = Wsmy649.BuscarRuta(HdSubCategoria.Value, HdIdOficina.Value) //HdIdNextEst.Value //Wsmy649.BuscarAprobador(HdRuta.Value, HdSubCategoria.Value, HdIdOficina.Value, PuntosPorcDebajo, PuntosPorcArriba) //IdEstacion var cotizacionObject = await _unitOfWork.CotizacionRepository.GetByCotizacion(cotizacion); var renglonObject = await _unitOfWork.RenglonRepository.GetByCotizacionRenglon(cotizacion, renglon); var propuestaObject = await _unitOfWork.PropuestaRepository.GetByCotizacionRenglonPropuesta(cotizacion, renglon, propuesta); var cliente = _unitOfWork.MtrClienteRepository.GetById(cotizacionObject.CodCliente); var producto = await _unitOfWork.Csmy036Repository.GetByCode(renglonObject.CodProducto); var ruta = await _unitOfWork.Wsmy649Repository.BuscarRuta((short)producto.Idsubcategoria, short.Parse(cliente.OficinaVenta)); var idEstacion = await _unitOfWork.Wsmy649Repository.BuscarAprobador((short)producto.Idsubcategoria, short.Parse(cliente.OficinaVenta), ruta.IdRuta); var aprobacion = await GetByCotizacionRenglonPrpopuesta(cotizacion, renglon, propuesta); //Flujo Aprobación CYPJ = 1 var IdTipoFlujo = 1; var wsmy647 = await _unitOfWork.Wsmy647Repository.Get(aprobacion.Id, ruta.IdRuta, idEstacion); if (wsmy647 == null) { //AGREGAMOS LAS OBSERVACIONES Wsmy655 wsmy655New = new Wsmy655(); wsmy655New.IdCalculo = aprobacion.Id; wsmy655New.IdEstacion = short.Parse(idEstacion.ToString()); wsmy655New.IdUsuario = usuarioConectado; wsmy655New.Observaciones = appDetailQuotes.ObsSolicitud; wsmy655New.Fecha = DateTime.Now; await _unitOfWork.Wsmy655Repository.Add(wsmy655New); await _unitOfWork.SaveChangesAsync(); Wsmy647 wsmy647New = new Wsmy647(); wsmy647New.IdCalculo = aprobacion.Id; wsmy647New.IdRuta = ruta.IdRuta; wsmy647New.IdEstacion = short.Parse(idEstacion.ToString()); wsmy647New.IdUsuario = usuarioConectado; var wsmy645 = await _unitOfWork.Wsmy645Repository.EstatusPendiente(); wsmy647New.IdEstatus = wsmy645.IdEstatus; wsmy647New.FechaEntrada = DateTime.Now; await _unitOfWork.Wsmy647Repository.Add(wsmy647New); await _unitOfWork.SaveChangesAsync(); //ACTUALIZAMOS SOLICITUD var solicitud = await _unitOfWork.AprobacionesRepository.GetByCotizacionRenglonPropuesta(cotizacion, renglon, propuesta); solicitud.FlagEnviado = true; _unitOfWork.AprobacionesRepository.Update(solicitud); await _unitOfWork.SaveChangesAsync(); metadata.IsValid = true; metadata.Message = "Solicitud enviada con éxito!!"; response.Data = null; response.Meta = metadata; return(response); } else { wsmy647.IdCalculo = aprobacion.Id; //AGREGAMOS LAS OBSERVACIONES Wsmy655 wsmy655New = new Wsmy655(); wsmy655New.IdCalculo = aprobacion.Id; wsmy655New.IdEstacion = short.Parse(idEstacion.ToString()); wsmy655New.IdUsuario = usuarioConectado; wsmy655New.Observaciones = appDetailQuotes.ObsSolicitud; wsmy655New.Fecha = DateTime.Now; await _unitOfWork.Wsmy655Repository.Add(wsmy655New); await _unitOfWork.SaveChangesAsync(); metadata.IsValid = true; metadata.Message = "Solicitud enviada con éxito!!"; response.Data = null; response.Meta = metadata; return(response); } } catch (Exception ex) { metadata.IsValid = false; metadata.Message = ex.InnerException.Message; response.Data = null; response.Meta = metadata; return(response); } }