コード例 #1
0
 public void InsertData()
 {
     try
     {
         List      oListData = ClientContext.Web.Lists.GetByTitle("Centrets lokaler i tal");
         CamlQuery camlQuery = new CamlQuery();
         camlQuery.ViewXml = "<View Scope='RecursiveAll'><Query></Query><ViewFields><FieldRef Name='Title' /><FieldRef Name='Author' /><FieldRef Name='Editor' /><FieldRef Name='MaxPeopleAtTable' /><FieldRef Name='MaxPeopleAtUTable' /><FieldRef Name='MaxPeopleAtSchoolBoard' /><FieldRef Name='Created' /><FieldRef Name='Modified' /><FieldRef Name='MaxPeopleByIsland' /><FieldRef Name='MaxPeopleInOneRoom' /><FieldRef Name='DivideRoom' /><FieldRef Name='Remarks' /><FieldRef Name='SiteCIIDLookup' /></ViewFields></View>";
         ListItemCollection oListDataItem = oListData.GetItems(camlQuery);
         ClientContext.Load(oListDataItem);
         ClientContext.ExecuteQuery();
         var contentStatusId = Extension.GetApprovedConentStatusId(DKBSDbContext);
         foreach (ListItem oItem in oListDataItem)
         {
             CRMPartner partner = DKBSDbContext.CRMPartner.FirstOrDefault(p => p.AccountId == oItem.GetLookupId("SiteCIIDLookup"));
             if (partner == null)
             {
                 ErrorCount += 1;
                 log.Error($"Partner not found SharepointId:{oItem.Id}");
                 continue;
             }
             try
             {
                 log.Info($"Partner room info started. Partner Id: {partner.AccountId} SharepointId:{oItem.Id}");
                 PartnerCenterRoomInfo pRoom = new PartnerCenterRoomInfo()
                 {
                     RoomName                 = oItem["Title"].ToSharepointString(),
                     SharepointId             = oItem.GetId(),
                     MaxPersonsAtMeetingTable = oItem["MaxPeopleAtTable"].ToInt(),
                     MaxPersonsAtRowOfChairs  = oItem["MaxPeopleInOneRoom"].ToInt(),
                     MaxPersonsAtSchoolTable  = oItem["MaxPeopleAtSchoolBoard"].ToInt(),
                     MaxPersonsAtUTable       = oItem["MaxPeopleAtUTable"].ToInt(),
                     MaxPersonsAtIslands      = oItem["MaxPeopleByIsland"].ToInt(),
                     IsRoomdividetosmallroom  = oItem["DivideRoom"].ToBoolean(),
                     Remark          = oItem["Remarks"].ToSharepointString(),
                     CreatedDate     = oItem.GetCreateDate(),
                     LastModifiedBY  = oItem.GetEditor(),
                     CreatedBy       = oItem.GetAuthor(),
                     LastModified    = oItem.GetModifiedDate(),
                     ContentStatusId = contentStatusId,
                     CRMPartnerId    = partner.CRMPartnerId
                 };
                 DKBSDbContext.Add(pRoom);
                 DKBSDbContext.SaveChanges();
                 log.Info($"Partner room info completed. Partner Id: {partner.AccountId} SharepointId:{oItem.Id}");
             }
             catch (Exception ex)
             {
                 ErrorCount += 1;
                 log.Error($"Partner room info unable to process. Partner Id: {partner.AccountId} SharepointId:{oItem.Id}", ex);
             }
         }
     }
     catch (Exception)
     {
         log.Error($"Unable to load Centrets lokaler i tal");
     }
     log.Info($"Total ErrorCount:{ErrorCount}");
 }
コード例 #2
0
        public void InsertData()
        {
            try
            {
                List      oList     = ClientContext.Web.Lists.GetByTitle("Partnere");
                CamlQuery camlQuery = new CamlQuery();
                camlQuery.ViewXml = "<View Scope='RecursiveAll'><Query></Query></View>";
                ListItemCollection collListItem = oList.GetItems(camlQuery);
                ClientContext.Load(collListItem);
                ClientContext.ExecuteQuery();
                var contentStatusId = Extension.GetApprovedConentStatusId(DKBSDbContext);
                foreach (ListItem oListItem in collListItem)
                {
                    try
                    {
                        var hyperLink = ((FieldUrlValue)(oListItem["CISite"]));
                        if (hyperLink != null)
                        {
                            var           hLink   = ((FieldUrlValue)(oListItem["CISite"])).Url;
                            ClientContext Context = new ClientContext(hLink);
                            Context.AuthenticationMode           = ClientAuthenticationMode.FormsAuthentication;
                            Context.FormsAuthenticationLoginInfo = new FormsAuthenticationLoginInfo("CRM Automation", "9LEkTny4");
                            Context.ExecuteQuery();
                            List oListData = Context.Web.Lists.GetByTitle("Aktiviteter");
                            camlQuery.ViewXml = "<View Scope='RecursiveAll'><Query></Query></View>";
                            ListItemCollection oListDataItem = oListData.GetItems(camlQuery);
                            Context.Load(oListDataItem);
                            Context.ExecuteQuery();

                            CRMPartner partner = DKBSDbContext.CRMPartner.Where(p => p.AccountId == oListItem.Id.ToString()).Single();
                            foreach (ListItem oItem in oListDataItem)
                            {
                                try
                                {
                                    log.Info($"PartnerInspirationCategoriesDK started. Partner Id: {partner.AccountId} SharepointId:{oItem.Id}");
                                    PartnerInspirationCategoriesDK dk = new PartnerInspirationCategoriesDK();
                                    dk.CRMPartnerId    = partner.CRMPartnerId;
                                    dk.ContentStatusId = contentStatusId;
                                    dk.Heading         = oItem["Headline"].ToSharepointString();
                                    dk.Description     = oItem["Description"].ToSharepointString();
                                    dk.SharepointId    = oItem.GetId();
                                    dk.CreatedBy       = oItem.GetAuthor();
                                    dk.LastModifiedBY  = oItem.GetEditor();
                                    dk.CreatedDate     = oItem.GetCreateDate();
                                    dk.LastModified    = oItem.GetModifiedDate();
                                    dk.Price           = oItem["Price"].ToDecimal();
                                    dk.Sorting         = oItem["Position"].ToInt();
                                    DKBSDbContext.PartnerInspirationCategoriesDK.Add(dk);
                                    DKBSDbContext.SaveChanges();
                                    log.Info($"PartnerInspirationCategoriesDK completed. Partner Id: {partner.AccountId} SharepointId:{oItem.Id}");
                                }
                                catch (Exception ex)
                                {
                                    ErrorCount += 1;
                                    log.Error($"PartnerInspirationCategoriesDK unable to process. Partner Id: {partner.AccountId} SharepointId:{oItem.Id}", ex);
                                }
                            }
                        }
                    }
                    catch (Exception ex)
                    {
                        ErrorCount += 1;
                        log.Error($"PartnerInspirationCategoriesDK unable to process. Partner Id: {oListItem.GetId()}", ex);
                    }
                }
            }
            catch (Exception)
            {
                ErrorCount += ErrorCount;
                log.Error($"Unable to load Centrets lAktiviteter");
            }
            log.Info($"Total ErrorCount:{ErrorCount}");
        }
コード例 #3
0
 public void SetPartner(CRMPartner newlyCreatedPartner)
 {
     _dbContext.CRMPartner.Add(newlyCreatedPartner);
 }
コード例 #4
0
        public void InsertData()
        {
            try
            {
                List      oList     = ClientContext.Web.Lists.GetByTitle("Partnere");
                CamlQuery camlQuery = new CamlQuery();
                //<Where><Eq><FieldRef Name='ID' /><Value Type='Text'>49</Value></Eq>
                camlQuery.ViewXml = "<View Scope='RecursiveAll'><Query></Where></Query></View>";
                ListItemCollection collListItem = oList.GetItems(camlQuery);
                ClientContext.Load(collListItem);
                ClientContext.ExecuteQuery();
                //get content status Id.
                var contentStatusId = Extension.GetApprovedConentStatusId(DKBSDbContext);
                foreach (ListItem oListItem in collListItem)
                {
                    var hyperLink = ((FieldUrlValue)(oListItem["CISite"]));
                    if (hyperLink != null)
                    {
                        try
                        {
                            var           hLink   = ((FieldUrlValue)(oListItem["CISite"])).Url;
                            ClientContext Context = new ClientContext(hLink);
                            Context.AuthenticationMode           = ClientAuthenticationMode.FormsAuthentication;
                            Context.FormsAuthenticationLoginInfo = new FormsAuthenticationLoginInfo(Configuration["SharePointUserName"], Configuration["SharePointPassword"]);
                            Context.ExecuteQuery();
                            List oListData = Context.Web.Lists.GetByTitle("Kursuspakke");
                            camlQuery.ViewXml = "<View Scope='RecursiveAll'><Query></Query></View>";
                            ListItemCollection oListDataItem = oListData.GetItems(camlQuery);
                            Context.Load(oListDataItem);
                            Context.ExecuteQuery();

                            foreach (ListItem oItem in oListDataItem)
                            {
                                log.Info($"Partner course package data process started Partner Id: {oItem.Id}");
                                try
                                {
                                    log.Info($"Partner course package data process started Kursuspakke: {oItem.Id} Service Catalog Id { oItem["KursuspakkeID"].ToInt(true, 0)}");
                                    CoursePackage        coursePackage  = DKBSDbContext.CoursePackage.Where(p => p.SharepointId == oItem["KursuspakkeID"].ToInt(true, 0)).Single();
                                    CRMPartner           partner        = DKBSDbContext.CRMPartner.Where(p => p.AccountId == oListItem.Id.ToString()).Single();
                                    PartnerCoursePackage partnerPackage = new PartnerCoursePackage();
                                    partnerPackage.CRMPartnerId    = partner.CRMPartnerId;
                                    partnerPackage.SharepointId    = oItem.Id;
                                    partnerPackage.CoursePackageId = coursePackage.CoursePackageId;
                                    partnerPackage.ContentStatusId = contentStatusId;
                                    partnerPackage.Offered         = oItem["Offered"].ToBoolean();
                                    partnerPackage.Price           = oItem["Price"].ToDecimal();
                                    partnerPackage.CreatedDate     = oItem.GetCreateDate();
                                    partnerPackage.LastModified    = oItem.GetModifiedDate();
                                    partnerPackage.LastModifiedBy  = oItem.GetEditor();
                                    partnerPackage.CreatedBy       = oItem.GetAuthor();

                                    var includedPriceDetails = oItem["IncludedInPriceDefault"].ParseString();
                                    var additionalIncluded   = oItem["IncludedInPriceAdditional"].ParseString();
                                    var optionalPurchages    = oItem["OptionalPurchases"].ParseString();
                                    var pricePerYear         = oItem["PricePerYear"].ParseString();

                                    // Included in price
                                    foreach (var item in includedPriceDetails)
                                    {
                                        var packageItem = DKBSDbContext.PackageIncludedItem.First(p => p.CoursePackageId == coursePackage.CoursePackageId && p.DK == item[0]);
                                        PartnerPackageIncludedItem ppi = new PartnerPackageIncludedItem()
                                        {
                                            PartnerCoursePackageId = partnerPackage.PartnerCoursePackageId,
                                            CreatedDate            = oItem.GetCreateDate(),
                                            LastModified           = oItem.GetModifiedDate(),
                                            LastModifiedBy         = oItem.GetEditor(),
                                            CreatedBy             = oItem.GetAuthor(),
                                            PackageIncludedItemId = packageItem.PackageIncludedItemId,
                                            Offered = item[2].IsChecked(),
                                        };
                                        partnerPackage.PartnerPackageIncludedItems.Add(ppi);
                                    }

                                    // additional included
                                    foreach (var item in additionalIncluded)
                                    {
                                        PartnerPackageAdditionalItem ppai = new PartnerPackageAdditionalItem()
                                        {
                                            PartnerCoursePackageId = partnerPackage.PartnerCoursePackageId,
                                            CreatedDate            = oItem.GetCreateDate(),
                                            LastModified           = oItem.GetModifiedDate(),
                                            LastModifiedBy         = oItem.GetEditor(),
                                            CreatedBy = oItem.GetAuthor(),
                                            DK        = item[0],
                                            UK        = item[1]
                                        };
                                        partnerPackage.PartnerPackageAdditionalItems.Add(ppai);
                                    }

                                    // optional purchages in price
                                    foreach (var item in optionalPurchages)
                                    {
                                        PartnerPackageAdditionalItem ppai = new PartnerPackageAdditionalItem()
                                        {
                                            PartnerCoursePackageId = partnerPackage.PartnerCoursePackageId,
                                            CreatedDate            = oItem.GetCreateDate(),
                                            LastModified           = oItem.GetModifiedDate(),
                                            LastModifiedBy         = oItem.GetEditor(),
                                            CreatedBy = oItem.GetAuthor(),
                                            DK        = item[0],
                                            UK        = item[1],
                                            Price     = item[2].ToDecimal(defaultData: true, defaultDataValue: 0).Value
                                        };
                                        partnerPackage.PartnerPackageAdditionalItems.Add(ppai);
                                    }

                                    // Price next year
                                    foreach (var item in pricePerYear)
                                    {
                                        PartnerPackageYear pny = new PartnerPackageYear()
                                        {
                                            PartnerCoursePackageId = partnerPackage.PartnerCoursePackageId,
                                            CreatedDate            = oItem.GetCreateDate(),
                                            LastModified           = oItem.GetModifiedDate(),
                                            LastModifiedBy         = oItem.GetEditor(),
                                            CreatedBy      = oItem.GetAuthor(),
                                            Year           = item[0].ToInt(true, 0).Value,
                                            PricePerPerson = item[1].ToDecimal(true, 0).Value,
                                        };
                                        partnerPackage.PartnerPackageYears.Add(pny);
                                    }
                                    DKBSDbContext.Add(partnerPackage);
                                    DKBSDbContext.SaveChanges();
                                    log.Info($"Partner course package data process completed Kursuspakke: {oItem.Id} Service Catalog Id { oItem["KursuspakkeID"].ToInt(true, 0)}");
                                }
                                catch (Exception ex)
                                {
                                    ErrorCount += 1;
                                    log.Error($"Error:Unable to insert Course package Kursuspakke Id: {oItem.Id} Service Catalog Id { oItem["KursuspakkeID"].ToInt(true, 0)}", ex);
                                }
                            }
                            log.Info($"Partner course package data process completed Partner Id: {oListItem.Id}");
                        }
                        catch (Exception ex)
                        {
                            ErrorCount += 1;
                            log.Error($"Error:Unable to pull Kursuspakke. PartnerId:{oListItem.Id}", ex);
                        }
                    }
                }
            }
            catch (Exception ex)
            {
                log.Error($"Error:Unable to pull Partnere.", ex);
            }
            log.Info($"Total ErrorCount:{ErrorCount}");
        }
コード例 #5
0
ファイル: PictureService.cs プロジェクト: lulzzz/Dkbs-Booking
        public async void InsertData()
        {
            var       oList     = ClientContext.Web.Lists.GetByTitle("Partnere");
            CamlQuery camlQuery = new CamlQuery();

            camlQuery.ViewXml = "<View Scope='Recursive'><Query><ViewFields><FieldRef Name='ID'/><FieldRef Name='ID'/><FieldRef Name='Title'/><FieldRef Name='CISite'/><FieldRef Name='CISiteShortUrl'/></ViewFields></Query></View>";
            ListItemCollection collListItem = oList.GetItems(camlQuery);

            ClientContext.Load(collListItem);
            ClientContext.ExecuteQuery();
            log.Info($"Partnere & dokumenter List data pulled successfully.");
            foreach (ListItem oListItem in collListItem)
            {
                try
                {
                    var hyperLink = ((FieldUrlValue)(oListItem["CISite"]));
                    log.Info($"Partner CISite Partner Id {oListItem.Id} Title :{oListItem["Title"]}");
                    if (hyperLink != null)
                    {
                        CRMPartner crmPartner = DKBSDbContext.CRMPartner.FirstOrDefault(p => p.SharePointId == int.Parse(oListItem["ID"].ToString()));
                        if (crmPartner == null)
                        {
                            log.Error($"Partner not found in dkbs sql database Sharepoint Id:{oListItem.GetId()}");
                            continue;
                        }

                        log.Info($"Started Partner Id {oListItem.Id} Title :{oListItem["Title"]}");
                        var           hLink   = ((FieldUrlValue)(oListItem["CISite"])).Url;
                        ClientContext Context = new ClientContext(hLink);
                        Context.AuthenticationMode           = ClientAuthenticationMode.FormsAuthentication;
                        Context.FormsAuthenticationLoginInfo = new FormsAuthenticationLoginInfo(Configuration["SharePointUserName"], Configuration["SharePointPassword"]);
                        Context.ExecuteQuery();
                        var oListData = Context.Web.Lists.GetByTitle("Billeder");
                        camlQuery.ViewXml = "<View Scope='RecursiveAll'><Query></Query></View>";
                        ListItemCollection oListDataItem = oListData.GetItems(camlQuery);
                        Context.Load(oListDataItem);
                        Context.ExecuteQuery();
                        log.Info($"Pictures/Billeder List data pulled successfully. Partner Id {oListItem.GetId()}");

                        foreach (ListItem oItem in oListDataItem)
                        {
                            try
                            {
                                if (oItem.FileSystemObjectType == FileSystemObjectType.Folder)
                                {
                                    Microsoft.SharePoint.Client.Folder ifolder = oItem.Folder;
                                    Context.Load(ifolder);
                                    Context.ExecuteQuery();
                                    if (!string.IsNullOrWhiteSpace(ifolder.Name.ToLower()))
                                    {
                                        var pictureFolder = DKBSDbContext.PictureFolder.FirstOrDefault(p => p.FolderName.ToLower() == ifolder.Name.ToLower());
                                        if (pictureFolder == null)
                                        {
                                            pictureFolder = new PictureFolder
                                            {
                                                CreatedBy      = oItem.GetAuthor(),
                                                CreatedDate    = oItem.GetCreateDate(),
                                                LastModifiedBy = oItem.GetEditor(),
                                                LastModified   = oItem.GetModifiedDate(),
                                                FolderName     = ifolder.Name
                                            };
                                            DKBSDbContext.PictureFolder.Add(pictureFolder);
                                            DKBSDbContext.SaveChanges();
                                        }
                                    }
                                }
                                if (oItem.FileSystemObjectType == FileSystemObjectType.File)
                                {
                                    PictureFolder pictureFolder            = null;
                                    Microsoft.SharePoint.Client.File lfile = oItem.File;
                                    Context.Load(lfile);
                                    Context.ExecuteQuery();
                                    try
                                    {
                                        //get the folder

                                        var tempArray  = lfile.ServerRelativeUrl.Replace(@"/" + lfile.Name, "").Split('/');
                                        var folderName = tempArray.ToList().Last();
                                        pictureFolder = DKBSDbContext.PictureFolder.FirstOrDefault(p => p.FolderName.ToLower() == folderName.ToLower());
                                        if (pictureFolder == null)
                                        {
                                            log.Error($"Unable to find folder for picture. Id:{oItem["ID"]} Picture Name :{lfile.Name} Path : {lfile.ServerRelativeUrl}");
                                            throw new ArgumentNullException($"Unable to find folder for picture. Id:{oItem.GetId()} Picture Name :{lfile.Name} Path : {lfile.ServerRelativeUrl}");
                                        }
                                        log.Info($"Picture Name :{lfile.Name} upload started.");
                                        var fileInfo = Microsoft.SharePoint.Client.File.OpenBinaryDirect(Context, lfile.ServerRelativeUrl);
                                        await _storageService.SavePictureAsync(fileInfo.Stream, lfile.Name, crmPartner.CRMPartnerId, pictureFolder.PictureFolderId);
                                    }
                                    catch (Exception ex)
                                    {
                                        log.Error($"Unable to upload picture. Id:{oItem.GetId()} Picture Name :{lfile.Name}", ex);
                                        throw ex;
                                    }

                                    var picture = new Picture()
                                    {
                                        CreatedBy       = oItem.GetAuthor(),
                                        CreatedDate     = oItem.GetCreateDate(),
                                        LastModifiedBy  = oItem.GetEditor(),
                                        LastModified    = oItem.GetModifiedDate(),
                                        CRMPartnerId    = crmPartner.CRMPartnerId,
                                        PictureFolderId = pictureFolder.PictureFolderId,
                                        PictureName     = lfile.Name,
                                        Title           = lfile.Title
                                    };
                                    picture.Description = oItem["Description"].ToSharepointString();
                                    picture.Position    = oItem["ImagePosition"].ToInt();
                                    DKBSDbContext.Picture.Add(picture);
                                    DKBSDbContext.SaveChanges();

                                    log.Info($"Picture Name :{lfile.Name} uploaded successfully.");
                                }
                            }
                            catch (Exception ex)
                            {
                                ErrorCount += 1;
                                log.Error($"Unable to upload picture. Id:{oItem.GetId()}", ex);
                            }
                        }
                    }
                }
                catch (Exception ex)
                {
                    ErrorCount += 1;
                    log.Error($"Partner pictures unable to load Id:{oListItem.GetId()}", ex);
                }
            }
        }
コード例 #6
0
ファイル: CrmController.cs プロジェクト: lulzzz/Dkbs-Booking
        // Later move it seperate class
        private void CreatePartnerRelatedTablesDefaultEntries(CRMPartner newlyCreatedPartner)
        {
            //===========Create Partner Center Description=================================

            List <PartnerCenterDescription> partnerCenterDescriptions = new List <PartnerCenterDescription>(3);

            partnerCenterDescriptions.Add(new PartnerCenterDescription()
            {
                Language = "UK", CRMPartnerId = newlyCreatedPartner.CRMPartnerId, CreatedDate = DateTime.UtcNow, LastModified = DateTime.UtcNow, ContentStatusId = 1
            });
            partnerCenterDescriptions.Add(new PartnerCenterDescription()
            {
                Language = "DK", CRMPartnerId = newlyCreatedPartner.CRMPartnerId, CreatedDate = DateTime.UtcNow, LastModified = DateTime.UtcNow, ContentStatusId = 1
            });
            partnerCenterDescriptions.Add(new PartnerCenterDescription()
            {
                Language = "Ger", CRMPartnerId = newlyCreatedPartner.CRMPartnerId, CreatedDate = DateTime.UtcNow, LastModified = DateTime.UtcNow, ContentStatusId = 1
            });

            foreach (var item in partnerCenterDescriptions)
            {
                _choiceRepoistory.Add <PartnerCenterDescription>(item);
            }

            //===========Create Partner Course Package=================================

            foreach (var item in _choiceRepoistory.GetAll <CoursePackage>())
            {
                PartnerCoursePackage partnerCoursePackage = new PartnerCoursePackage();
                partnerCoursePackage.CoursePackageId = item.CoursePackageId;
                partnerCoursePackage.CRMPartnerId    = newlyCreatedPartner.CRMPartnerId;
                _choiceRepoistory.Add <PartnerCoursePackage>(partnerCoursePackage);

                PartnerPackageIncludedItem partnerPackageIncludedItem = new PartnerPackageIncludedItem();
                partnerPackageIncludedItem.PartnerCoursePackageId = partnerCoursePackage.PartnerCoursePackageId;
                // partnerPackageIncludedItem.PackageIncludedItemId = _choiceRepoistory.GetById<PackageIncludedItem>(x => x.CoursePackageId == partnerCoursePackage.CoursePackageId).PackageIncludedItemId;
                var res = _choiceRepoistory.GetById <PackageIncludedItem>(x => x.CoursePackageId == partnerCoursePackage.CoursePackageId);
                partnerPackageIncludedItem.PackageIncludedItemId = res != null ? (int?)res.PackageIncludedItemId : null;
                _choiceRepoistory.Add <PartnerPackageIncludedItem>(partnerPackageIncludedItem);

                PartnerPackageAdditionalItem partnerPackageAdditionalItem = new PartnerPackageAdditionalItem();
                partnerPackageAdditionalItem.PartnerCoursePackageId = partnerCoursePackage.PartnerCoursePackageId;
                _choiceRepoistory.Add <PartnerPackageAdditionalItem>(partnerPackageAdditionalItem);

                PartnerPackageYear partnerPackageYear = new PartnerPackageYear();
                partnerPackageYear.PartnerCoursePackageId = partnerCoursePackage.PartnerCoursePackageId;
                _choiceRepoistory.Add <PartnerPackageYear>(partnerPackageYear);
            }


            //===========Create PartnerCenterInfo=================================

            PartnerCenterInfo partnerCenterInfo = new PartnerCenterInfo();

            partnerCenterInfo.CRMPartnerId = newlyCreatedPartner.CRMPartnerId;
            _choiceRepoistory.Add <PartnerCenterInfo>(partnerCenterInfo);


            //===========Create PartnerCenterRoomInfo=================================

            //PartnerCenterRoomInfo partnerCenterRoomInfo = new PartnerCenterRoomInfo();
            //partnerCenterRoomInfo.CRMPartnerId = newlyCreatedPartner.CRMPartnerId;
            //_choiceRepoistory.Add<PartnerCenterRoomInfo>(partnerCenterRoomInfo);

            //===========Create PartnerInspirationCategoriesDK=================================

            //PartnerInspirationCategoriesDK partnerInspirationCategoriesDK = new PartnerInspirationCategoriesDK();
            //partnerInspirationCategoriesDK.CRMPartnerId = newlyCreatedPartner.CRMPartnerId;
            //_choiceRepoistory.Add<PartnerInspirationCategoriesDK>(partnerInspirationCategoriesDK);


            //===========Create PartnerInspirationCategoriesUK=================================

            //PartnerInspirationCategoriesUK partnerInspirationCategoriesUK = new PartnerInspirationCategoriesUK();
            //partnerInspirationCategoriesUK.CRMPartnerId = newlyCreatedPartner.CRMPartnerId;
            //_choiceRepoistory.Add<PartnerInspirationCategoriesUK>(partnerInspirationCategoriesUK);
        }
コード例 #7
0
ファイル: CrmController.cs プロジェクト: lulzzz/Dkbs-Booking
        public async Task <IActionResult> CreatePartner([FromBody] CRMPartnerDTO dto)
        {
            try
            {
                if (string.IsNullOrEmpty(dto.AccountId))
                {
                    ModelState.AddModelError("AccountId", "AccountId can't be null");
                    return(BadRequest(ModelState));
                }

                if (dto == null)
                {
                    ModelState.AddModelError("Partner", "Partner object can't be null");
                    return(BadRequest(ModelState));
                }

                if (!ModelState.IsValid)
                {
                    return(BadRequest(ModelState));
                }

                var partner = _choiceRepoistory.GetById <CRMPartner>(c => c.AccountId == dto.AccountId);

                if (partner != null)
                {
                    ModelState.AddModelError("Partner", $"Partner entry already exist for AccountId {dto.AccountId}.");
                    return(BadRequest(ModelState));
                }

                // if partner type is "partner then assign membershiptype.
                if (!string.IsNullOrWhiteSpace(dto.Partnertype) && dto.Partnertype.ToLower() == "partner")
                {
                    dto.Partnertype = dto.MembershipType;
                }

                CRMPartner newlyCreatedPartner = _mapper.Map <CRMPartnerDTO, CRMPartner>(dto);
                newlyCreatedPartner.CreatedBy      = User.GetUserName();;
                newlyCreatedPartner.CreatedDate    = DateTime.UtcNow;
                newlyCreatedPartner.LastModified   = DateTime.UtcNow;
                newlyCreatedPartner.LastModifiedBy = User.GetUserName();;
                _choiceRepoistory.Add <CRMPartner>(newlyCreatedPartner);
                if (bool.Parse(_configuration["SharePointIntegrationEnabled"].ToString()))
                {
                    var sharePointId = await _sharePointService.InsertPartnerAsync(newlyCreatedPartner);

                    if (sharePointId <= 0)
                    {
                        return(StatusCode(500, "An error occurred while creating sharepoint partner. Please try again or contact adminstrator"));
                    }
                    newlyCreatedPartner.SharePointId = sharePointId;
                }

                #region All related fileds
                CreatePartnerRelatedTablesDefaultEntries(newlyCreatedPartner);

                #endregion

                _choiceRepoistory.Complete();

                return(CreatedAtRoute("GetPartnerByAccountId", new { newlyCreatedPartner.AccountId }, dto));
            }
            catch (Exception ex)
            {
                // TODO : Add logging and decide on showing ex.message
                return(StatusCode(500, "An error occurred while creating partner. Please try again or contact adminstrator"));
            }
        }