コード例 #1
0
 /// <summary>
 /// Llena el combo de Productos del Monedero electronico
 /// </summary>
 /// <history>
 /// [emoguel] created 08/07/2016
 /// </history>
 private async void LoadProductElectronicPurse()
 {
     try
     {
         cmbgiProductGiftCard.ItemsSource = await ClubesHelper.GetProductsBySystem();
     }
     catch (Exception ex)
     {
         UIHelper.ShowMessage(ex);
     }
 }
コード例 #2
0
        /// <summary>
        /// Llena el combo de Productos del Monedero electronico
        /// </summary>
        /// <history>
        /// [emoguel] created 04/07/2016
        /// </history>
        private async void LoadProductElectronicPurse()
        {
            try
            {
                var Products = await ClubesHelper.GetProductsBySystem();

                Products.Insert(0, new Services.ClubesService.Product {
                    DESCRIPCION = "ALL", IDPRODUCTO = "ALL"
                });
                Products.Insert(1, new Services.ClubesService.Product {
                    DESCRIPCION = "ANY", IDPRODUCTO = "ANY"
                });
                Products.Insert(2, new Services.ClubesService.Product {
                    DESCRIPCION = "NONE", IDPRODUCTO = "NONE"
                });
                cmbProdElecPurse.ItemsSource = Products;
            }
            catch (Exception ex)
            {
                UIHelper.ShowMessage(ex);
            }
        }
コード例 #3
0
        /// <summary>
        /// Obtiene un reporte de Equity
        /// </summary>
        /// <param name="membershipNum">numero de membresia</param>
        /// <param name="company">compania</param>
        /// <param name="clubAgency">agencia</param>
        /// <param name="clubGuest">club</param>
        /// <param name="owner">Ventana padre</param>
        /// <history>
        /// [ecanul] 06/04/2016 Created
        /// [ecanul] 07/04/2016 Modificated Agregado Validaciones y "show" del reporte
        /// [ecanul] 20/04/2016 Modificated Metodo Movido de frmInhouse a EquityHelpers
        /// [ecanul] 06/07/2016 Modified. Agregue subreporte RptEquityMembershipsPrevious
        /// [ecanul] 08/09/2016 Modified. Agregado nombre del web service y Club en el titulo del mensaje que genero un error.
        /// [wtorres] 06/09/2016 Modified. Agregue el parametro owner
        /// </history>
        public static void EquityReport(string membershipNum, Decimal company, int?clubAgency, int?clubGuest,
                                        Window owner)
        {
            EnumClub club;

            // si tiene membrecia
            if (membershipNum != null && membershipNum != "")
            {//si tiene permiso para el reporte de equity
                if (Context.User.HasPermission(EnumPermission.Equity, EnumPermisionLevel.ReadOnly))
                {
                    // // // ShowReport
                    // determinamos el club
                    if (clubAgency != null && clubAgency != 0)
                    {
                        club = (EnumClub)clubAgency;
                    }
                    else if (clubGuest != null && clubGuest != 0)
                    {
                        club = (EnumClub)clubGuest;
                    }
                    else
                    {
                        //Si no se encuentra un club en la tabla de agencies o en la tabla del guest se manda un error diciendo esto y se sale del metodo
                        UIHelper.ShowMessage("Agency Not Found", MessageBoxImage.Error, "Equity Report");
                        return;
                    }

                    Services.ClubesService.RptEquity rptClubes = null;

                    var clubesTitle     = $"Equity Report - Clubes - {EnumToListHelper.GetEnumDescription(club)}";
                    var callCenterTitle = $"Equity Report - Credito y Cobranza - {EnumToListHelper.GetEnumDescription(club)}";
                    try
                    {
                        //obtenemos los datos del reporte del servicio de Clubes
                        rptClubes = ClubesHelper.GetRptEquity(membershipNum, Convert.ToInt32(company), club);
                    }
                    catch (Exception ex)
                    {
                        UIHelper.ShowMessage(ex, clubesTitle);
                        return;
                    }


                    //si no se pudo generenar el reporte en clubes y nos salimos
                    if (rptClubes == null)
                    {
                        UIHelper.ShowMessage("This report did not return data", MessageBoxImage.Exclamation, clubesTitle);
                        return;
                    }
                    //si no encontramos la membrecia en clubles, nos salimos
                    if (rptClubes.Membership == null)
                    {
                        UIHelper.ShowMessage("Membership not found", MessageBoxImage.Exclamation, clubesTitle);
                        return;
                    }
                    Services.CallCenterService.RptEquity rptCallCenter = null;
                    try
                    {
                        //Obtenemos la membrecia en el servicio de Call Center
                        rptCallCenter = CallCenterHelper.GetRptEquity(membershipNum, Convert.ToInt32(company), club);
                    }
                    catch (Exception ex)
                    {
                        UIHelper.ShowMessage(ex, callCenterTitle);
                        return;
                    }

                    // si no se pudo generar reporte en Call Center nos salimos
                    if (rptCallCenter == null)
                    {
                        UIHelper.ShowMessage("This report did not return data", MessageBoxImage.Exclamation, callCenterTitle);
                        return;
                    }

                    // si no encontramos la membresia en Credito y Cobranza Reserva, nos salimos
                    if (rptCallCenter.Membership == null)
                    {
                        UIHelper.ShowMessage("Membership not found", MessageBoxImage.Exclamation, callCenterTitle);
                        return;
                    }

                    // indicamos que ciertas listas del reporte no tienen registros
                    RptEquityHeader header = new RptEquityHeader();
                    header.HasGolfFields = rptClubes.GolfFieldsDetail.Length > 0;
                    header.IsElite       = (club == EnumClub.PalaceElite);

                    var equity = new rptEquity();
                    //datos generales de equity
                    equity.Database.Tables["Membership"].SetDataSource(ObjectHelper.ObjectToList(rptClubes.Membership));
                    equity.Database.Tables["Member"].SetDataSource(ObjectHelper.ObjectToList(rptCallCenter.Membership));
                    //Si no tiene un Salesman  con OPC no se envia nada
                    Services.ClubesService.RptEquitySalesman[] salesmanOPC = rptClubes.Salesmen.Where(sm => sm.Title.Trim() == "OPC").ToArray();
                    if (salesmanOPC.Length > 0)
                    {
                        equity.Database.Tables["SalesmanOPC"].SetDataSource(salesmanOPC);
                    }
                    equity.Database.Tables["Hotel"].SetDataSource(ObjectHelper.ObjectToList(rptClubes.Hotels));
                    equity.Database.Tables["GolfFieldsHeader"].SetDataSource(ObjectHelper.ObjectToList(rptClubes.GolfFieldsHeader));
                    if (rptClubes.Verification != null)
                    {
                        rptClubes.Verification.VOLUMENGOLF = rptCallCenter.Membership.Golf - (rptClubes.Verification.VOLUMENGOLF / EquityHelpers.GetIVAByOffice(rptClubes.Membership.OFFICE));
                    }
                    equity.Database.Tables["Verification"].SetDataSource(ObjectHelper.ObjectToList(rptClubes.Verification));
                    //Subreportes
                    if (club == EnumClub.PalaceElite)
                    {
                        header.HasMembershipsPrevious = rptClubes.MembershipsPrevious.Length > 0;
                        if (header.HasMembershipsPrevious)
                        {
                            equity.Subreports["rptEquityMembershipsPrevious.rpt"].SetDataSource(rptClubes.MembershipsPrevious);
                        }
                    }
                    equity.Subreports["rptEquitySalesman.rpt"].SetDataSource(rptClubes.Salesmen);
                    equity.Subreports["rptEquityCoOwners.rpt"].SetDataSource(rptClubes.CoOwners);

                    equity.Subreports["rptEquityBeneficiaries.rpt"].Database.Tables["Reporte"].SetDataSource(rptClubes.Beneficiaries);
                    equity.Subreports["rptEquityBeneficiaries.rpt"].Database.Tables["Membership"].SetDataSource(ObjectHelper.ObjectToList(rptCallCenter.Membership));

                    equity.Subreports["rptEquityGolfFields.rpt"].SetDataSource(rptClubes.GolfFieldsDetail);
                    equity.Subreports["rptEquityRoomTypes.rpt"].SetDataSource(rptClubes.RoomTypes);

                    RptEquityProvision[] provisionsSNORM = rptCallCenter.Provisions.Where(p => p.IsSNORM == true).ToArray();
                    header.HasSNORM = provisionsSNORM.Length > 0;
                    if (header.HasSNORM)
                    {
                        equity.Subreports["rptEquityProvisionsSNORM.rpt"].SetDataSource(provisionsSNORM);
                    }

                    RptEquityProvision[] provisionsSAIRF = rptCallCenter.Provisions.Where(p => p.IsSAIRF == true).ToArray();
                    header.HasSAIRF = provisionsSAIRF.Length > 0;
                    equity.Subreports["rptEquityProvisionsSAIRF.rpt"].SetDataSource(provisionsSAIRF);

                    RptEquityProvision[] provisionsSRCI = rptCallCenter.Provisions.Where(p => p.IsSRCI == true).ToArray();
                    header.HasSRCI = provisionsSRCI.Length > 0;
                    equity.Subreports["rptEquityProvisionsSRCI.rpt"].SetDataSource(provisionsSRCI);

                    RptEquityProvision[] provisionsSCOMP = rptCallCenter.Provisions.Where(p => p.IsSCOMP == true).ToArray();
                    header.HasSCOMP = provisionsSCOMP.Length > 0;
                    equity.Subreports["rptEquityProvisionsSCOMP.rpt"].SetDataSource(provisionsSCOMP);

                    RptEquityProvision[] provisionsSCRG = rptCallCenter.Provisions.Where(p => p.IsSCRG == true).ToArray();
                    header.HasSCRG = provisionsSCRG.Length > 0;
                    equity.Subreports["rptEquityProvisionsSCRG.rpt"].SetDataSource(provisionsSCRG);

                    RptEquityProvision[] provisionsSIGR = rptCallCenter.Provisions.Where(p => p.IsSIGR == true).ToArray();
                    header.HasSIGR = provisionsSIGR.Length > 0;
                    equity.Subreports["rptEquityProvisionsSIGR.rpt"].SetDataSource(provisionsSIGR);

                    RptEquityProvision[] provisionsSVEC = rptCallCenter.Provisions.Where(p => p.IsSVEC == true).ToArray();
                    header.HasSVEC = provisionsSVEC.Length > 0;
                    equity.Subreports["rptEquityProvisionsSVEC.rpt"].SetDataSource(provisionsSVEC);

                    RptEquityProvision[] provisionsSREF = rptCallCenter.Provisions.Where(p => p.IsSREF == true).ToArray();
                    header.HasSREF = provisionsSREF.Length > 0;
                    equity.Subreports["rptEquityProvisionsSREF.rpt"].SetDataSource(provisionsSREF);

                    equity.Database.Tables["Header"].SetDataSource(ObjectHelper.ObjectToList(header));
                    if (rptCallCenter.Reservations.Length != 0)
                    {
                        equity.Subreports["rptEquityReservations.rpt"].SetDataSource(rptCallCenter.Reservations);
                    }

                    if (rptClubes.BalanceElectronicPurseHeaders.Length == 0)
                    {
                        equity.Subreports["rptEquityBalanceElectronicPurse.rpt"].ReportDefinition.Sections["GroupHeaderSection1"].SectionFormat.EnableSuppress = true;
                    }
                    equity.Subreports["rptEquityBalanceElectronicPurse.rpt"].Database.Tables["EquityBalanceElectronicPurseDetail"].SetDataSource(rptClubes.BalanceElectronicPurseDetails);
                    equity.Subreports["rptEquityBalanceElectronicPurse.rpt"].Database.Tables["BalanceElectronicPurseHeader"].SetDataSource(rptClubes.BalanceElectronicPurseHeaders);
                    var sum = rptCallCenter.Membership.Down - rptCallCenter.Membership.Down_escrow - rptCallCenter.Membership.Down_bal;
                    if (sum > 1)
                    {
                        equity.Subreports["rptEquityPaymentPromises.rpt"].SetDataSource(rptClubes.PaymentPromises);
                    }
                    if (club == EnumClub.PalaceElite)
                    {
                        equity.Subreports["rptEquityWeeksNights.rpt"].Database.Tables["WeeksNightsDetail"].SetDataSource(rptClubes.WeeksNightsDetails);
                        equity.Subreports["rptEquityWeeksNights.rpt"].Database.Tables["WeeksNightsHeader"].SetDataSource(rptClubes.WeeksNightsHeaders);
                    }
                    if (club == EnumClub.PalaceElite)
                    {
                        equity.Subreports["rptEquityGolfRCI.rpt"].SetDataSource(rptClubes.GolfRCI);
                    }
                    else
                    {
                        equity.ReportDefinition.ReportObjects["srptGolfRCI"].ObjectFormat.EnableSuppress = true;
                    }
                    if (club == EnumClub.PalaceElite)
                    {
                        equity.Subreports["rptEquityPromotions.rpt"].SetDataSource(rptClubes.Promotions);
                    }

                    if (club == EnumClub.PalaceElite)
                    {
                        if (rptClubes.MemberExtension != null)
                        {
                            if (rptClubes.MemberExtension.WHOLESALER)
                            {
                                equity.ReportDefinition.Sections["Section2"].SectionFormat.EnableSuppress = false;
                            }
                        }
                    }

                    var frm = new frmViewer(equity);
                    frm.Owner = owner;
                    frm.ShowDialog();
                }
                else
                {
                    UIHelper.ShowMessage("Access denied");
                }
            }
        }