public UserData GetUserData(string networkDomain, string networkAlias) { if (userData != null && userData.networkDomain == networkDomain && userData.networkAlias == networkAlias) { return(userData); } serviceLIV.UseDefaultCredentials = true; WebOutlookCrm.smmActivities.USERDATADataTable userDataTable = serviceLIV.GetUserData(networkDomain, networkAlias); if (userDataTable.Count != 0) { userData = new UserData(); userData.OUTLOOKCALENDAROUTLOOKENTRYID = userDataTable[0].OUTLOOKCALENDAROUTLOOKENTRYID; userData.OUTLOOKCALENDAROUTLOOKSTOREID = userDataTable[0].OUTLOOKCALENDAROUTLOOKSTOREID; userData.COMPANY = userDataTable[0].COMPANY; userData.EMPLID = userDataTable[0].EMPLID; userData.smmSynchronizeDaysBack = userDataTable[0].smmSynchronizeDaysBack; userData.smmSynchronizeDaysForward = userDataTable[0].smmSynchronizeDaysForward; userData.CompanyCountryId = userDataTable[0].LANGUAGEID; isTest = false; } else { serviceSTG.UseDefaultCredentials = true; WebOutlookCrmST.smmActivities.USERDATADataTable userDataTableST = serviceSTG.GetUserData(networkDomain, networkAlias); if (userDataTableST.Count == 0) { return(null); } userData = new UserData(); userData.OUTLOOKCALENDAROUTLOOKENTRYID = userDataTableST[0].OUTLOOKCALENDAROUTLOOKENTRYID; userData.OUTLOOKCALENDAROUTLOOKSTOREID = userDataTableST[0].OUTLOOKCALENDAROUTLOOKSTOREID; userData.COMPANY = userDataTableST[0].COMPANY; userData.EMPLID = userDataTableST[0].EMPLID; userData.smmSynchronizeDaysBack = userDataTableST[0].smmSynchronizeDaysBack; userData.smmSynchronizeDaysForward = userDataTableST[0].smmSynchronizeDaysForward; userData.CompanyCountryId = userDataTableST[0].LANGUAGEID; isTest = true; } userData.networkDomain = networkDomain; userData.networkAlias = networkAlias; return(userData); }
public bool Sync() { service.UseDefaultCredentials = true; this.log = service.IsLog(); WindowsIdentity wi = WindowsIdentity.GetCurrent(); string domainUserName = wi.Name; networkDomain = domainUserName.Split('\\')[0] + ".Local"; networkAlias = domainUserName.Split('\\')[1]; if (service.IsTestMode()) { networkAlias = service.GetNetworkAlias(); } WebOutlookCrm.smmActivities.USERDATADataTable userDataTable = service.GetUserData(networkDomain, networkAlias); //Csak egy sor lesz if (userDataTable.Count != 0) { //foreach (WebOutlookCrm.smmActivities.USERDATADataTable item in userDataTable) // { if (log) { service.WriteInfo("++++++WebService: userDataTable.Count != 0"); } this.outlookCalendarID = userDataTable[0].OUTLOOKCALENDAROUTLOOKENTRYID; this.outlookCalendarStoreID = (userDataTable[0].OUTLOOKCALENDAROUTLOOKSTOREID == null) ? string.Empty : userDataTable[0].OUTLOOKCALENDAROUTLOOKSTOREID.ToString(); this.comapny = userDataTable[0].COMPANY; this.empId = userDataTable[0].EMPLID; //} this.rangeDateBack = service.FilterDateBack(); this.rangeDateNext = service.FilterDateNext(); if (string.IsNullOrEmpty(outlookCalendarID) || string.IsNullOrEmpty(outlookCalendarStoreID)) { if (log) { service.WriteInfo("++++++WebService: string.IsNullOrEmpty(outlookCalendarID) || string.IsNullOrEmpty(outlookCalendarStoreID"); } Outlook.NameSpace ns = outlookApp.GetNamespace("MAPI"); Outlook.MAPIFolder folder = ns.GetDefaultFolder(Outlook.OlDefaultFolders.olFolderCalendar); List <DropDownItem> calendarItemList = new List <DropDownItem>(); DropDownItem calendarItem = new DropDownItem(folder.Name, folder.EntryID, folder.StoreID); calendarItemList.Add(calendarItem); foreach (Outlook.MAPIFolder subFolder in folder.Folders) { DropDownItem calendarItemAdd = new DropDownItem(subFolder.Name, subFolder.EntryID, subFolder.StoreID); calendarItemList.Add(calendarItemAdd); } DropDownItem returnedItem = null; returnedItem = ShowDialog("Calendars:", "Please choose from calendars", calendarItemList); if (returnedItem == null) { ///System.Windows.Forms.MessageBox.Show("Plase chose calendar!"); throw new Exception("Please choose from calendars!"); //return false; } else { this.outlookCalendarID = returnedItem.OutlookCalendarID; this.outlookCalendarStoreID = returnedItem.OutlookCalendarStoreID; if (!string.IsNullOrEmpty(comapny) && !string.IsNullOrEmpty(empId) && !string.IsNullOrEmpty(this.outlookCalendarID) && !string.IsNullOrEmpty(this.outlookCalendarStoreID)) { service.UpdateEmplTable(empId, outlookCalendarID, outlookCalendarStoreID, comapny); } else { //System.Windows.Forms.MessageBox.Show("The user data table is not set (empty empId or company or OutlookCalendarStoreID or OutlookCalendarID)!"); throw new Exception("The user data table is not set (empty empId or company or OutlookCalendarStoreID or OutlookCalendarID)!"); //return false; } } } if (!string.IsNullOrEmpty(comapny) && !string.IsNullOrEmpty(empId) && !string.IsNullOrEmpty(this.outlookCalendarID) && !string.IsNullOrEmpty(this.outlookCalendarStoreID)) { if (log) { service.WriteInfo("++++++WebService: SetAppointment"); } SetAppointment(comapny, empId); smmActivitiList = null; } else { //System.Windows.Forms.MessageBox.Show("The user data table is not set (empty empId or company or OutlookCalendarStoreID or OutlookCalendarID)!"); //return false; throw new Exception("The user data table is not set (empty empId or company or OutlookCalendarStoreID or OutlookCalendarID, DoaminUser: "******"Domain: " + networkDomain + ")!"); } } else { //System.Windows.Forms.MessageBox.Show("The user data table is not set!"); //return false; throw new Exception("The user data table is not set!"); } return(true);; //SetAppointment("BDT", "LWIEGAARD"); }