/// <summary> /// Procesa un mensaje de tipo Receipt /// </summary> /// <param name="msg">El mensaje Receipt</param> public void ProcessReceipt(ReceiptType receipt) { decimal?price = null; if (receipt.ReceiptCode == receiptCodeType.Item0 && receipt.ReferenceId.Length > 0) { //Era un recibo correspondiente a un REQUERIMIENTO? var sprm = new ShipPositionRequestDataAccess(); if (sprm.RequestExists(receipt.ReferenceId) == true) { var pman = new PricingManager(); price = pman.GetPriceForRequest(receipt.ReferenceId, receipt.Originator); if (price == null) { log.Warn(string.Format("ProcessReceipt: Se recibio un receipt codigo 0 {0}, no podemos poner precio", receipt.MessageId)); } } else { log.Warn(string.Format("ProcessReceipt: recibo 0 {0} no referido a Requerimiento", receipt.MessageId)); } } using (var dao = new ReceiptDataAccess()) { dao.Create(TypeHelper.Map2DB(receipt), 0, price); } log.Info(string.Format("Receipt successfully processed: price {0}", price)); }
/// <summary> /// Envia un mensaje de tipo Receipt al IDE /// </summary> /// <param name="msg">Mensaje Receipt</param> private string SendReceipt(Message msg) { DataCenterLogic.DataCenterTypesIDE.ReceiptType receipt = (DataCenterLogic.DataCenterTypesIDE.ReceiptType)(msg.Body); //Send to IDE if (System.Configuration.ConfigurationManager.AppSettings["send2servers"] != "False") { receipt.test = DataCenterLogic.DataCenterTypesIDE.testType.Item0; ideClient.Receipt(receipt); log.Info("SendReceipt: receipt sent to IDE"); } //Get price for receipt //El codigo 0 dice todo, si es codigo 0 quiere decir que este recibo se esta mandando por que no se pudo mandar una posicion //Por lo tanto el request debe existir o sino fue de una standing order. decimal?price = null; if (receipt.ReceiptCode == 0) { var pman = new PricingManager(); price = pman.GetPriceForRequest(receipt.ReferenceId, receipt.Originator); if (price == null) { log.Warn(string.Format("SendReceipt: Se manda un receipt codigo 0 {0} sin precio", receipt.MessageId)); } } //Guarda el mensaje en la base de datos using (var dao = new ReceiptDataAccess()) { dao.Create(TypeHelper.Map2DB(receipt), 1, price); } log.Info(string.Format("Receipt stored: price {0}", price)); return(receipt.MessageId); }
public ReceiptService() { this.dataAccess = new ReceiptDataAccess(); }
public ActionResult GridData(int page, int rows, string[] _search, string sidx, string sord, int msgInOut) { //var ReceiptDescriptionDic = new Dictionary<int, string>(); //ReceiptDescriptionDic.Add(0, "No titulado para recibir información"); //ReceiptDescriptionDic.Add(1, "No hay barcos en en área SARSURPIC"); //ReceiptDescriptionDic.Add(2, "IDE no disponible"); //ReceiptDescriptionDic.Add(3, "DC no disponible"); //ReceiptDescriptionDic.Add(4, "PSC no disponible"); //ReceiptDescriptionDic.Add(5, "El barco no responde"); //ReceiptDescriptionDic.Add(6, "El barco no está disponible"); //ReceiptDescriptionDic.Add(7, "Falla en el sistema"); //ReceiptDescriptionDic.Add(8, "No se pudo cargar DDP"); //ReceiptDescriptionDic.Add(9, "Version de DDP incorrecta, mensaje descartado"); string[] ReqParams = { "MessageId", "ReferenceId", "ReceiptCode", "ReceiptDescription", "Destination", "Originator", "Message", "TimeStamp" }; List <string> columns = new List <string>(); List <string> querys = new List <string>(); string tstamp = "-"; var fromDate = new DateTime(2000, 1, 1); var toDate = new DateTime(2200, 1, 1); for (int i = 0; i < ReqParams.Count(); i++) { if (ReqParams[i].Contains("TimeStamp")) { tstamp = Request.Params[ReqParams[i]]; if (tstamp != null) { var dates = tstamp.Split('-'); fromDate = DateTime.Parse(dates[0]); if (dates.Length == 1) { toDate = fromDate.AddDays(1); } else { toDate = DateTime.Parse(dates[1]); } } continue; } var tempValue = Request.Params[ReqParams[i]]; if (tempValue != null) { columns.Add(ReqParams[i]); querys.Add(tempValue); } } var rda = new ReceiptDataAccess(context); var receipts = rda.GetAllBetween(msgInOut, fromDate, toDate); var model = from entity in receipts.OrderBy(sidx + " " + sord) select new { MessageId = entity.MessageId, ReferenceId = entity.ReferenceId, ReceiptCode = entity.ReceiptCode, Destination = entity.Destination, Originator = entity.Originator, Message = entity.Message, TimeStamp = entity.TimeStamp.ToString(), }; return(Json(model.ToJqGridData(page, rows, null, querys.ToArray(), columns.ToArray()))); }
public static Task<Receipt> Add(Employee employee, Receipt receipt) { receipt.Bill = receipt.Bill.GetManaged(); receipt.Employee = employee; return ReceiptDataAccess.Add(receipt); }
public static IEnumerable<Receipt> Get() => ReceiptDataAccess.Get();
public static Receipt Get(int receiptId) => ReceiptDataAccess.Get(receiptId);