/// <summary> /// Guarda el recibo de regalos exchange /// </summary> /// <history> /// [vipacheco] 27/Mayo/2016 Created /// </history> private async Task SaveReceiptExchange() { // obtenemos los datos del recibo GiftsReceipt _GRResult = await BRGiftsReceipts.GetGiftReceipt(_ReceiptID); // Construimos el nuevo GiftsReceipts GiftsReceipt _GiftsReceipt = new GiftsReceipt() { grNum = txtgrNum.Text, grD = frmHost.dtpServerDate, grgu = _GRResult.grgu, grExchange = true, grGuest = _GRResult.grGuest, grPax = _GRResult.grPax, grHotel = _GRResult.grHotel, grRoomNum = _GRResult.grRoomNum, grpe = _GRResult.grpe, grlo = _GRResult.grlo, grls = _GRResult.grls, grsr = _GRResult.grsr, grWh = _GRResult.grWh, grMemberNum = _GRResult.grMemberNum, grHost = _GRResult.grHost, grComments = txtgrComments.Text, grDeposit = 0, grDepositTwisted = 0, grcu = "US", grcxcPRDeposit = 0, grcucxcPRDeposit = "US", grCxCClosed = false, grExchangeRate = 0, grct = _GRResult.grct, grMaxAuthGifts = _GRResult.grMaxAuthGifts, grcxcGifts = 0, grcxcComments = null, grTaxiIn = 0, grTaxiOut = 0, grCancel = false, grClosed = false, grCxCAppD = null, grTaxiOutDiff = 0, grGuest2 = _GRResult.grGuest2, grcucxcTaxiOut = _GRResult.grcucxcTaxiOut, grpt = _GRResult.grpt }; // Guardamos el Gift Receipt ReceiptExchangeID = await BRGiftsReceipts.SaveGiftReceipt(_GiftsReceipt); // Guardamos el historico del recibo await BRGiftsReceiptLog.SaveGiftsReceiptsLog(ReceiptExchangeID, Context.User.User.peID); }
/// <summary> /// Obtiene el Gift y envie los datos modificados en el grid /// </summary> /// <param name="cxcData">Registro del grid modificado</param> /// <returns></returns> /// <history> /// [michan] 17/06/2016 Created /// </history> public async Task <GiftsReceipt> SetCxCDataToGiftsReceipt(CxCData cxcData) { GiftsReceipt giftsReceipt = await BRGiftsReceipts.GetGiftReceipt(cxcData.grID); //var cxcGR = lstCxCData.SingleOrDefault(cxc => cxc.grID == giftsReceipt.grID); giftsReceipt.grCxCAppD = cxcData.grCxCAppD; giftsReceipt.grAuthorizedBy = (String.IsNullOrEmpty(cxcData.grAuthorizedBy)) ? null : cxcData.grAuthorizedBy; giftsReceipt.grAmountToPay = cxcData.grAmountToPay; giftsReceipt.grup = cxcData.grup; giftsReceipt.grcxcAuthComments = cxcData.grcxcAuthComments; giftsReceipt.grBalance = cxcData.grBalance; return(giftsReceipt); }
/// <summary> /// Obtiene la información de un Gifts Receipt especifico. /// </summary> /// <param name="GiftReceiptID"></param> /// <returns> Gifts Receipt </returns> /// <history> /// [vipacheco] 06/04/2016 Created /// [vipacheco] 07/Julio/2016 Modified --> se agrego asincronia /// </history> public async static Task <GiftsReceipt> GetGiftReceipt(int GiftReceiptID) { GiftsReceipt giftReceipt = new GiftsReceipt(); await Task.Run(() => { using (var dbContext = new IMEntities(ConnectionHelper.ConnectionString())) { giftReceipt = dbContext.GiftsReceipts.Where(x => x.grID == GiftReceiptID).SingleOrDefault(); } }); return(giftReceipt); }
/// <summary> /// Guarda un nuevo Gift Receipt y retorna el ID asignado /// </summary> /// <param name="giftReceipt"></param> /// <returns></returns> /// <history> /// [vipacheco] 2/Mayo/2016 Created /// [vipacheco] 07/Julio/2016 Modified --> Se agregó asincronia /// [vipacheco] 05/Agosto/2016 Modified --> Se agregó estandarizacion del return /// </history> public async static Task <int> SaveGiftReceipt(GiftsReceipt giftReceipt) { return(await Task.Run(() => { using (var dbContext = new IMEntities(ConnectionHelper.ConnectionString())) { // Guardamos el Gift Receipt Nuevo dbContext.Entry(giftReceipt).State = System.Data.Entity.EntityState.Added; dbContext.SaveChanges(); return giftReceipt.grID; // Obtenemos el ID del nuevo Gift Receipt } })); }
/// <summary> /// Metodo para guardar los CxC Autorizados y Desautorizados /// </summary> /// <history> /// [michan] 18/06/2016 Created /// </history> public async Task SaveGiftsReceipts() { imgButtonSave.IsEnabled = false; StaStart("Saving changes... Please wait"); foreach (CxCData cxcData in dtgCxC.Items) { if (cxcData.Authorized.Value == !blnFilterAuthorized) { GiftsReceipt _giftsReceipt = await SetCxCDataToGiftsReceipt(cxcData); int nRes = await BREntities.OperationEntity(_giftsReceipt, EnumMode.Edit); await SaveGiftsReceiptsLog(_giftsReceipt.grID, strUserID); } } await GetCxCAuthorized(blnFilterAuthorized); UIHelper.ShowMessage("Saving Process Completed.", MessageBoxImage.Information, "CxC Authorized"); StaEnd(); imgButtonSave.IsEnabled = true; }
public frmCancelExternalProducts(EnumExternalProduct enumExternalProducts, int ReceiptID, int GuestID, string NameGuest, decimal MaxAuthGifts, decimal TotalGifts, decimal CurAdjustment, bool ValidateMaxAuthGifts, bool pUseCxCCost, bool Exchange, frmGiftsReceipts FrmGiftsReceipt, GiftsReceipt pGiftsDataContext, bool pIsExchangeReceipt) { _EnumExternalProduct = enumExternalProducts; _ReceiptID = ReceiptID; _MaxAuthGifts = MaxAuthGifts; _GuestID = GuestID; _ValidateMaxAuthGifts = ValidateMaxAuthGifts; useCxCCost = pUseCxCCost; _Exchange = Exchange; _isExchangeReceipt = pIsExchangeReceipt; _Cancelled = false; _FrmGiftsReceipt = FrmGiftsReceipt; _FrmCancelExternalProducts = this; _giftsDataContext = pGiftsDataContext; _CurAdjustment = CurAdjustment; _TotalGifts = TotalGifts; InitializeComponent(); // Si es monedero electronico if (_EnumExternalProduct == EnumExternalProduct.expElectronicPurse) { Title = "Cancel Electronic Purse"; _CancelField = "geCancelElectronicPurse"; geCancelPVPPromoColumn.Visibility = Visibility.Hidden; } // si son las promociones de Sistur else { Title = "Cancel Sistur Promotions"; _CancelField = "geCancelPVPPromo"; geCancelElectronicPurseColumn.Visibility = Visibility.Hidden; } }
/// <summary> /// guardamos los regalos cancelados /// </summary> /// <param name="pReceiptID"></param> /// <param name="pReceiptExchangeID"></param> /// <param name="pGiftsCancelled"></param> /// <param name="pUseCxCCost"></param> /// <returns></returns> /// <history> /// [vipacheco] 18/Julio/2016 Created /// </history> public async static Task Save(int pReceiptID, int pReceiptExchangeID, List <string> pGiftsCancelled, bool pUseCxCCost, GiftsReceipt pGiftsReceipt, ObservableCollection <GiftsReceiptDetail> pGiftsReceiptsDetail, ObservableCollection <GiftsReceiptDetailCancel> pGiftsCancel, bool pIsExchange, string pCancelFiel) { // obtenemos los regalos del recibo original para marcarlos como cancelados List <GiftsReceiptDetail> lstResult = await BRGiftsReceiptDetail.GetGiftsReceiptDetail(pReceiptID); // Recorremos los regalos cancelados foreach (string iGift in pGiftsCancelled) { // Localizamos los regalos cancelados GiftsReceiptDetail giftupdate = lstResult.Where(x => x.gegi == iGift).Single(); Gift gift = frmHost._lstGifts.Where(x => x.giID == giftupdate.gegi).Single(); // marcamos el regalo como cancelado en el recibo original giftupdate.GetType().GetProperty(pCancelFiel).SetValue(giftupdate, true, null); // si se debe generar un recibo exchange if (pIsExchange) { // agregamos el regalo en el recibo exchange await AddGiftExchange(pReceiptExchangeID, giftupdate, pGiftsCancelled); } } }
/// <summary> /// Agrega un recibo de regalos /// </summary> /// <param name="GuestID"></param> /// <returns></returns> /// <history> /// [vipacheco] 13/Mayo/2016 Created /// </history> private async Task <int> AddReceipt(int GuestID) { // Obtenemos los datos del huesped Guest _Guest = await BRGuests.GetGuest(GuestID); string _FullName = Common.GetFullName(_Guest.guLastName1 ?? "", _Guest.guFirstName1 ?? ""); string _FullName2 = Common.GetFullName(_Guest.guLastname2 ?? "", _Guest.guFirstName2 ?? ""); bool boolTemp = false; // Creamos el recibo de regalos GiftsReceipt _GiftsReceipt = new GiftsReceipt { grNum = null, grD = _frmGiftsReceipt.dtpgrD.Value.Value, grgu = _Guest.guID, grGuest = _FullName.Length > _frmGiftsReceipt.txtgrGuest.MaxHeight ? _FullName.Substring(0, 20) : _FullName, grPax = _Guest.guPax, grHotel = _Guest.guHotel, grRoomNum = _Guest.guRoomNum, grpe = (_frmGiftsReceipt.cmbgrpe.SelectedItem as PersonnelShort).peID, grlo = _frmGiftsReceipt.cmbgrlo.SelectedValue.ToString(), grls = _frmGiftsReceipt.cmbgrlo.SelectedValue.ToString(), grsr = _frmGiftsReceipt.cmbSalesRoom.SelectedValue.ToString(), grWh = _frmGiftsReceipt.cmbSalesRoom.SelectedValue.ToString(), grMemberNum = null, grHost = (_frmGiftsReceipt.cmbgrHost.SelectedItem as PersonnelShort).peID, grComments = null, grDeposit = 0, grDepositTwisted = 0, grcu = "US", grcxcPRDeposit = 0, grcucxcPRDeposit = "US", grCxCClosed = false, grExchangeRate = 0, grct = _frmGiftsReceipt.cmbgrct.SelectedValue.ToString(), grMaxAuthGifts = _frmGiftsReceipt.CalculateMaxAuthGifts(_frmGiftsReceipt.cmbgrct.SelectedValue.ToString(), _Guest.guls, ref boolTemp), grcxcGifts = 0, grcxcAdj = 0, grcxcComments = null, grTaxiIn = 0, grTaxiOut = 0, grCancel = false, grClosed = false, grCxCAppD = null, grTaxiOutDiff = 0, grGuest2 = _FullName2.Length > _frmGiftsReceipt.txtgrGuest2.MaxHeight ? _FullName2.Substring(0, 20) : _FullName2, grpt = "CS", grReimpresion = 0, grrm = null, grAuthorizedBy = null, grAmountToPay = null, grup = null, grcxcTaxiOut = 0, grcucxcTaxiOut = "US", grcxcAuthComments = null, grCancelD = null, grAmountPaid = 0, grBalance = 0 }; // Guardamos el ReceiptGifts y Obtenemos el ID generado. return(await BRGiftsReceipts.SaveGiftReceipt(_GiftsReceipt)); }