public IHttpActionResult GetPriceProtocolComponentByProtocolId(string protocolId) { var result = ProtocolBL.GetProtocolComponentByProtocolId(protocolId); float resp = 0; if (result.ListProtocolComponents != null) { if (result.ListProtocolComponents.Count > 0) { resp = result.ListProtocolComponents.Sum(x => x.Price); } } return(Ok(resp)); }
public IHttpActionResult GetProtocolComponentByProtocolId(string protocolId) { var result = ProtocolBL.GetProtocolComponentByProtocolId(protocolId); return(Ok(result)); }
public static MessageCustom GenerateServiceOrderReport(BoardServiceOrder data, int userId, string FechaEmision) { MessageCustom msg = new MessageCustom(); try { var MedicalCenter = ServiceBl.GetInfoMedicalCenterSede(); var pEmpresaCliente = data.EntityserviceOrder.v_OrganizationName; //var _DataService = ProtocolBL.GetProtocolById(ProtocolId); List <ProtocolComponentCustom> ListaComponentes = new List <ProtocolComponentCustom>(); List <ServiceOrderPdf> Lista = new List <ServiceOrderPdf>(); foreach (var objServiceOrder in data.ListEntityServiceOrder) { ServiceOrderPdf objSerOrdPdf = new ServiceOrderPdf(); var oProtocolo = ProtocolBL.GetProtocolById(objServiceOrder.v_ProtocolId); objSerOrdPdf.v_ServiceOrderId = data.EntityserviceOrder.v_ServiceOrderId; objSerOrdPdf.EmpresaCliente = oProtocolo.v_OrganizationInvoice + " / " + oProtocolo.v_GroupOccupation + " / " + oProtocolo.v_EsoType; var board = ProtocolBL.GetProtocolComponentByProtocolId(objServiceOrder.v_ProtocolId); ListaComponentes = board.ListProtocolComponents; List <ServiceOrderDetailPdf> ListaServiceOrderDetailPdf = new List <ServiceOrderDetailPdf>(); foreach (var Componente in ListaComponentes) { ServiceOrderDetailPdf oServiceOrderDetailPdf = new ServiceOrderDetailPdf(); oServiceOrderDetailPdf.v_ServiceOrderDetailId = data.ListEntityServiceOrder.Find(p => p.v_ProtocolId == oProtocolo.v_ProtocolId).v_ServiceOrderDetailId; oServiceOrderDetailPdf.v_ServiceOrderId = data.EntityserviceOrder.v_ServiceOrderId; oServiceOrderDetailPdf.v_ComponentId = Componente.ComponentId; oServiceOrderDetailPdf.Componente = Componente.ComponentName; oServiceOrderDetailPdf.v_Precio = Componente.Price; ListaServiceOrderDetailPdf.Add(oServiceOrderDetailPdf); } objSerOrdPdf.DetalleServiceOrder = ListaServiceOrderDetailPdf; objSerOrdPdf.TotalProtocolo = ListaServiceOrderDetailPdf.Sum(s => s.v_Precio); Lista.Add(objSerOrdPdf); } var oSystemUserList = new SecurityDal().GetSystemUserAndProfesional(userId); string ruta = HttpContext.Current.Server.MapPath("~/" + System.Configuration.ConfigurationManager.AppSettings["rutaCotizacion"]); string path = ruta + "/" + data.EntityserviceOrder.v_ServiceOrderId + ".pdf"; if (data.EntityserviceOrder.i_EsProtocoloEspecial == (int)SiNo.Si) { OrdenServicioPromocion.CrearOrdenServicio(data.EntityserviceOrder.i_MostrarPrecio == (int)SiNo.Si ? true : false, Lista, MedicalCenter, pEmpresaCliente, DateTime.Parse(FechaEmision).ToString("dd 'd'e MMMM 'd'e yyyy"), oSystemUserList == null ? "" : oSystemUserList.Profesion + ". " + oSystemUserList.v_PersonName, path); } else { OrdenServicio.CrearOrdenServicio(data.EntityserviceOrder.i_MostrarPrecio == (int)SiNo.Si ? true : false, Lista, MedicalCenter, pEmpresaCliente, data.EntityserviceOrder.v_ServiceOrderId, DateTime.Parse(FechaEmision).ToString("dd 'd'e MMMM 'd'e yyyy"), oSystemUserList == null ? "" : oSystemUserList.Profesion + ". " + oSystemUserList.v_PersonName, path); } msg.Error = false; msg.Id = data.EntityserviceOrder.v_ServiceOrderId + ".pdf"; msg.Status = (int)HttpStatusCode.Accepted; return(msg); } catch (Exception ex) { msg.Error = true; msg.Status = (int)HttpStatusCode.BadRequest; msg.Message = ex.InnerException != null ? ex.InnerException.Message : ex.Message; return(msg); } }