public List <Partner> GetAll()
 {
     try
     {
         return(partnerRepository.GetAll());
     }
     catch (Exception ex)
     {
         throw ex;
     }
 }
        public ActionResult <IEnumerable <Partner> > Get([FromQuery] string q)
        {
            var partners = _partnerRepository.GetAll();

            if (!string.IsNullOrEmpty(q))
            {
                var query = q.ToLower();
                partners = partners.Where(partner =>
                {
                    var name = partner.Vorname.ToLower() + ' ' + partner.Name.ToLower();
                    return(name.Contains(query) || partner.PartnerId.ToString().Contains(query));
                });
            }
            return(Ok(partners));
        }
Beispiel #3
0
        public async Task <DefaultDataResponse> GetAll()
        {
            var result = await partnerRepository.GetAll();

            return(SuccessResponse(result));
        }
Beispiel #4
0
        public bool SaveProduct(Models.Publisher.CreateProductModel _createModel, string UserIdentity, Models.Core.FileUpload fileUpload)
        {
            //Creamos los repositorios
            SiteRepository        siteRepository        = new SiteRepository();
            AspNetUserRepository  aspNetUserRepository  = new AspNetUserRepository();
            ProductTypeRepository productTypeRepository = new ProductTypeRepository();
            PartnerRepository     partnerRepository     = new PartnerRepository();
            ProductRepository     productRepository     = new ProductRepository();

            //Obtenemos los conjuntos
            List <SiteEntity>        sites        = siteRepository.GetAll().ToList();
            List <AspNetUserEntity>  users        = aspNetUserRepository.GetAll().ToList();
            List <ProductTypeEntity> productstype = productTypeRepository.GetAll().ToList();
            List <PartnerEntity>     partners     = partnerRepository.GetAll().ToList();

            //Obtenemos las entidades deseadas.
            SiteEntity site = (from s in sites
                               where s.IdSite == _createModel.SiteTypeSelecc
                               select s).FirstOrDefault();
            AspNetUserEntity user = (from u in users
                                     where u.Id == UserIdentity
                                     select u).FirstOrDefault();

            ProductTypeEntity productType = (from pr in productstype
                                             where pr.IdProductType == _createModel.ProductTypeSelect
                                             select pr).FirstOrDefault();
            PartnerEntity partner = (from p in partners
                                     where p.IdPartner == _createModel.ParterTypeSelect
                                     select p).FirstOrDefault();

            ProductEntity product = new ProductEntity
            {
                //AspNetUser = user,
                AspNetUsers_Id             = UserIdentity,
                IdProduct                  = Guid.NewGuid(),
                Price                      = _createModel.PriceSelecc,
                ShortDescription           = _createModel.Name,
                FullDescription            = string.Empty,
                StartTime                  = Helpers.DateTimeHelper.GetCurrentDateString(),
                EndTime                    = Helpers.DateTimeHelper.GetCurrentDateString(0, 30),
                RegistrationDate           = DateTime.Now,
                SITE_IdSite                = site.IdSite,
                PRODUCT_TYPE_IdProductType = productType.IdProductType,
                PARTNER_IdPartner          = partner.IdPartner,
                Image                      = string.Empty,
                IsActive                   = true,
                IsPremium                  = _createModel.IsPremium
            };

            if (fileUpload != null)
            {
                product.Image = Helpers.AzureStorageHelper.CreateBlobImageFile(fileUpload.FileData, fileUpload.Filextension);
            }
            else
            {
                product.Image = Helpers.AzureStorageHelper.CreateBlobImageFile(getImageFromUrl(""), ".png");
            }


            productRepository.Add(product);

            if (_createModel.ParterTypeSelect.Equals(new Guid(Utils.Constants.PROVIDER_SUBSCRIBERS)) ||
                _createModel.ParterTypeSelect.Equals(new Guid(Utils.Constants.PROVIDER_PUSH_CREW)) ||
                _createModel.ParterTypeSelect.Equals(new Guid(Utils.Constants.PROVIDER_PUSH_ENGAGE)))
            {
                AddProductSettingEntity(product, "pushApiToken", _createModel.Token);
            }
            else if (_createModel.ParterTypeSelect.Equals(new Guid(Utils.Constants.PROVIDER_MAIL_CHIMP)))
            {
                AddProductSettingEntity(product, "mailChimpApiToken", _createModel.Token);
                AddProductSettingEntity(product, "mailChimpList", _createModel.ListMCSelecc);
                AddProductSettingEntity(product, "mailChimpTemplate", Convert.ToString(_createModel.TemplateMCSelecc));
            }
            else if (_createModel.ParterTypeSelect.Equals(new Guid(Utils.Constants.PROVIDER_CAMPAIGN_MONITOR)))
            {
                AddProductSettingEntity(product, "campaignMonitorApiToken", _createModel.Token);
                AddProductSettingEntity(product, "campaignMonitorList", _createModel.ListCMSelecc);
                AddProductSettingEntity(product, "campaignMonitorClient", Convert.ToString(_createModel.ClientCMSelecc));
                AddProductSettingEntity(product, "campaignMonitorSegment", Convert.ToString(_createModel.SegmentCMSelecc));
            }
            else if (_createModel.ParterTypeSelect.Equals(new Guid(Utils.Constants.PROVIDER_AWEBER)))
            {
                AddProductSettingEntity(product, "aweberApiToken", _createModel.Token);
                AddProductSettingEntity(product, "aweberList", _createModel.ListAWSelecc);
                AddProductSettingEntity(product, "aweberApplicationKey", _createModel.providerAWeberApiResult.ApplicationKey);
                AddProductSettingEntity(product, "aweberApplicationSecret", _createModel.providerAWeberApiResult.ApplicationSecret);
                AddProductSettingEntity(product, "aweberOAuthToken", _createModel.providerAWeberApiResult.OAuthToken);
                AddProductSettingEntity(product, "aweberOAuthTokenSecret", _createModel.providerAWeberApiResult.OAuthTokenSecret);
                AddProductSettingEntity(product, "aweberOauthVerifier", _createModel.providerAWeberApiResult.OauthVerifier);
                AddProductSettingEntity(product, "aweberCallbackURL", _createModel.providerAWeberApiResult.CallbackURL);
            }
            else if (_createModel.ParterTypeSelect.Equals(new Guid(Utils.Constants.PROVIDER_SEND_GRID)))
            {
                AddProductSettingEntity(product, "sendGridApiToken", _createModel.Token);
                AddProductSettingEntity(product, "sendGridList", _createModel.ListSGSelecc);
                AddProductSettingEntity(product, "sendGridSender", _createModel.SenderSGSelecc);
                AddProductSettingEntity(product, "sendGridUnsubscribeGroup", _createModel.UnsubscribeGroupSGSelecc);
            }
            else if (_createModel.ParterTypeSelect.Equals(new Guid(Utils.Constants.PROVIDER_ACTIVE_CAMPAIGN)))
            {
                AddProductSettingEntity(product, "activeCampaignApiToken", _createModel.Token);
                AddProductSettingEntity(product, "activeCampaignList", _createModel.ListACSelecc);
                AddProductSettingEntity(product, "activeCampaignUrl", _createModel.URLACSelecc);
            }
            else if (_createModel.ParterTypeSelect.Equals(new Guid(Utils.Constants.PROVIDER_GETRESPONSE)))
            {
                AddProductSettingEntity(product, "getResponseApiToken", _createModel.Token);
                AddProductSettingEntity(product, "getResponseList", _createModel.ListGRSelecc);
                AddProductSettingEntity(product, "getResponseFromField", _createModel.FromFieldGRSelecc);
            }
            else if (_createModel.ParterTypeSelect.Equals(new Guid(Utils.Constants.PROVIDER_ICONTACT)))
            {
                // Crear campaign y guardar el Id
                string IdCampaign = string.Empty;

                AddProductSettingEntity(product, "icontactIdCampaign", _createModel.IContact.IdCampaign);
                AddProductSettingEntity(product, "icontactApiAppId", _createModel.IContact.ApiAppId);
                AddProductSettingEntity(product, "icontactUserName", _createModel.IContact.ApiUserName);
                AddProductSettingEntity(product, "icontactUserPassword", _createModel.IContact.ApiUserPassword);
                AddProductSettingEntity(product, "icontactAccountId", _createModel.IContact.AccountId);
                AddProductSettingEntity(product, "icontactClientFolderId", _createModel.IContact.ClientFolderId);
                AddProductSettingEntity(product, "icontactIdList", _createModel.IContact.ListId);
            }
            else if (_createModel.ParterTypeSelect.Equals(new Guid(Utils.Constants.PROVIDER_SENDINBLUE)))
            {
                //Store product settings
                AddProductSettingEntity(product, "sendinBlueApiKey", _createModel.Token);
                AddProductSettingEntity(product, "sendinBlueCategory", _createModel.SendinBlue.Category);
                AddProductSettingEntity(product, "sendinBlueFromEmail", _createModel.SendinBlue.FromEmail);
                AddProductSettingEntity(product, "sendinBlueListId", _createModel.SendinBlue.ListIds[0].ToString());
            }
            else if (_createModel.ParterTypeSelect.Equals(new Guid(Utils.Constants.PROVIDER_ONE_SIGNAL)))
            {
                AddProductSettingEntity(product, "oneSignalApiKey", _createModel.Token);
                AddProductSettingEntity(product, "oneSignalAppId", _createModel.ListAppOSSelecc);
                AddProductSettingEntity(product, "oneSignalAppKey", _createModel.AuthAppOSSelecc);
            }
            else if (_createModel.ParterTypeSelect.Equals(new Guid(Utils.Constants.PROVIDER_MAILJET)))
            {
                AddProductSettingEntity(product, "mailJetApiKey", _createModel.Token);
                AddProductSettingEntity(product, "mailJetList", _createModel.ListMJSelecc);
                AddProductSettingEntity(product, "mailJetSegment", _createModel.SegmentMJSelecc);
                AddProductSettingEntity(product, "mailJetSecretKey", _createModel.SecretKeyMJ);
            }

            return(true);
        }