/// <summary>
        /// Builds a country site in the Sitecore Master database. Performs clean up if the creation fails.
        /// </summary>
        /// <param name="data">Contains parameters to configure the construction. See Lookup.Parameters for detailed information.</param>
        /// <returns>A message indicating the status of the action</returns>
        public override void CoreExecute()
        {
            string   siteName = InputData.Get <string>(Constants.Keys.Site);
            SiteInfo SiteItem = Factory.GetSiteInfo(siteName);

            IEnumerable <ListItem> langs         = InputData.Get <IEnumerable <ListItem> >(Constants.Keys.Languages);
            IEnumerable <Language> selectedLangs = (from val in MasterDB.Languages
                                                    where langs.Any(a => a.Value.Equals(val.Name))
                                                    select val);

            string pageID   = InputData.Get <string>(Constants.Keys.Page);
            Item   PageItem = MasterDB.GetItem(pageID);

            //status
            SetStatus(1, "Building extranet pages.");

            //create extranet pages from branch
            Item extranetFolder = BuildExtranetPages(SiteItem, selectedLangs);

            //status
            SetStatus(2, "Configuring Security.");

            //create role
            CreateRole(SiteItem);

            //move login page to child of secure page
            Item LoginPage = ConfigureLoginPage(extranetFolder, PageItem, siteName);

            //update site login settings and attributes
            SetupSiteAttributes(SiteItem, LoginPage);
        }
Example #2
0
        public MasterResponse GetAllRoles()
        {
            MasterResponse masterResponse = new MasterResponse();

            try
            {
                //WebRequestLogManager objWebRequestLogManager = new WebRequestLogManager();
                //decimal requestId = objWebRequestLogManager.AddRequest(string.Format("Project {0}, Page {1}, Method {2}, currentCulture {3}, clientID {4}, statusids {5}, partnertypecodes {6}", "ELSBackendBLL", "masterManager.cs", "GetAllPartners", culture, clientId, statusids, partnertypecodes), 0, CommonFunctions.RequestSource.WEB.ToString());
                MasterDB masterDB = new MasterDB();
                masterResponse = masterDB.GetAllRoles();
                //objWebRequestLogManager.AddResponse(masterResponse.Status.ToString(), requestId, 0);
            }
            //catch (CustomException ex)
            //{
            //    masterResponse = new MasterResponse(ex.ResponseStatus);
            //}
            catch (Exception ex)
            {
                //var Error = "Exception : " + ex.Message + ", Inner Exception : " + (ex.InnerException == null ? "" : ex.InnerException.Message);
                //ExceptionLogDB.LogException("ELSBAL", "MasterManager.cs", "GetAllRoles", CommonFunctions.RequestSource.WEB.ToString(), Error);
                masterResponse = new MasterResponse(BaseResponse.ResponseStatus.Error);
            }

            return(masterResponse);
        }
        protected void RemoveSiteAttributes(SiteInfo siteInfo)
        {
            Item sFolder = MasterDB.GetItem(Constants.Paths.Sites);

            if (sFolder != null)
            {
                Item siteItem = sFolder.Axes.GetChild(siteInfo.Name);
                //set login url on the site node
                using (new EditContext(siteItem)) {
                    siteItem[Sitecore.Extranet.Core.Constants.ExtranetAttributes.LoginPage] = string.Empty;
                }

                IEnumerable <Item> atts = siteItem.Axes.GetDescendants().Where(a => a.Template.IsID(Constants.TemplateIDs.SiteAttribute) && Sitecore.Extranet.Core.Constants.ExtranetAttributes.Keys.Contains(a.Key));
                if (atts != null && atts.Any())
                {
                    foreach (Item a in atts)
                    {
                        a.Recycle();
                    }
                }

                SitecoreUtility.PublishContent(siteItem, true);
            }
            else
            {
                FileUtility.RemoveFile(string.Format(Sitecore.Extranet.Core.Wizards.ExtranetSetupWizard.Constants.FilePatterns.ExtranetSiteConfig, siteInfo.Name));
            }
        }
Example #4
0
        private bool ValidateBranch()
        {
            bool          valid = true;
            StringBuilder sb    = new StringBuilder();

            string eID = ExtranetBranch.Value;

            if (!string.IsNullOrEmpty(eID) && Sitecore.Data.ID.IsID(eID))               // Content Branch
            {
                Item ci = MasterDB.GetItem(eID);
                if (ci == null)
                {
                    valid = false;
                    sb.Append("The extranet branch item you chose is null.").Append("<br/>");
                }
                else if (!ci.TemplateName.Equals("Branch"))
                {
                    valid = false;
                    sb.Append("Please select a extranet branch item whose template type is a branch.").Append("<br/>");
                }
            }
            else
            {
                valid = false;
                sb.Append("The extranet branch selected is producing an empty string or bad ID.").Append("<br/>");
            }

            if (!valid)
            {
                BranchErrorMessage.Text = sb.ToString();
            }

            return(valid);
        }
        protected void SetupSiteAttributes(SiteInfo siteInfo, Item loginPage)
        {
            string siteName    = siteInfo.Name;
            string loginUrl    = string.Format("{0}.aspx", loginPage.Paths.ContentPath.Replace(string.Format("/{0}/Home", siteName), ""));
            string secProvider = "sitecore";
            string fromEmail   = InputData.Get <string>(Sitecore.Extranet.Core.Constants.ExtranetAttributes.FromEmail);
            string loginCount  = InputData.Get <string>(Sitecore.Extranet.Core.Constants.ExtranetAttributes.LoginCount);

            //if you've got the multisite manager installed then you'll handle this differently
            Item sFolder = MasterDB.GetItem(Constants.Paths.Sites);

            if (sFolder != null)
            {
                //setup site drop downs
                IEnumerable <Item> siteRes = sFolder.GetChildren().Where(a => a.DisplayName.Equals(siteName));
                if (!siteRes.Any())
                {
                    return;
                }
                Item siteItem = siteRes.First();

                using (new EditContext(siteItem))                 //set login url on the site node
                    siteItem[Sitecore.Extranet.Core.Constants.ExtranetAttributes.LoginPage] = loginUrl;

                //set extranet user prefix attributes on site node: ExtranetUserPrefix and ExtranetRole
                TemplateItem sa = GetItem(Constants.TemplateIDs.SiteAttribute);
                if (sa != null)
                {
                    Item uPrefix = siteItem.Add(Sitecore.Extranet.Core.Constants.ExtranetAttributes.UserPrefix, sa);
                    SetValue(uPrefix, string.Format("{0}_", siteName));
                    Item roleName = siteItem.Add(Sitecore.Extranet.Core.Constants.ExtranetAttributes.Role, sa);
                    SetValue(roleName, string.Format("{0} Extranet", siteName));
                    Item fEmail = siteItem.Add(Sitecore.Extranet.Core.Constants.ExtranetAttributes.FromEmail, sa);
                    SetValue(fEmail, fromEmail);
                    Item lCount = siteItem.Add(Sitecore.Extranet.Core.Constants.ExtranetAttributes.LoginCount, sa);
                    SetValue(lCount, loginCount);
                }
            }
            else
            {
                StringBuilder fc = new StringBuilder();
                fc.AppendLine("<configuration xmlns:patch=\"http://www.sitecore.net/xmlconfig/\">");
                fc.AppendLine("	<sitecore>");
                fc.AppendLine("		<sites>");
                fc.AppendFormat("		<site name=\"{0}\">", siteName).AppendLine();
                fc.AppendFormat("			<patch:attribute name=\"{0}\">{1}</patch:attribute>", Sitecore.Extranet.Core.Constants.ExtranetAttributes.LoginPage, loginUrl).AppendLine();
                fc.AppendFormat("			<patch:attribute name=\"{0}\">{1}_</patch:attribute>", Sitecore.Extranet.Core.Constants.ExtranetAttributes.UserPrefix, siteName).AppendLine();
                fc.AppendFormat("			<patch:attribute name=\"{0}\">{1} Extranet</patch:attribute>", Sitecore.Extranet.Core.Constants.ExtranetAttributes.Role, siteName).AppendLine();
                fc.AppendFormat("			<patch:attribute name=\"{0}\">{1}</patch:attribute>", Sitecore.Extranet.Core.Constants.ExtranetAttributes.FromEmail, fromEmail).AppendLine();
                fc.AppendFormat("			<patch:attribute name=\"{0}\">{1}</patch:attribute>", Sitecore.Extranet.Core.Constants.ExtranetAttributes.LoginCount, loginCount).AppendLine();
                fc.AppendLine("			</site>");
                fc.AppendLine("		</sites>");
                fc.AppendLine("	</sitecore>");
                fc.AppendLine("</configuration>");

                FileUtility.MakeFile(string.Format(Constants.FilePatterns.ExtranetSiteConfig, siteName), fc.ToString());
            }
        }
        protected Item BuildExtranetPages(SiteInfo siteItem, IEnumerable <Language> selectedLangs)
        {
            LangCur   = 1;
            LangTotal = selectedLangs.Count();
            Item extranetFolder = null;

            foreach (Language targetLang in selectedLangs)
            {
                using (new LanguageSwitcher(targetLang)) {
                    //get content and media branch and branch ancestor info
                    BranchItem extranetBranch = MasterDB.GetItem(InputData.Get <string>(Constants.Keys.ExtranetBranch));

                    //if adding multiple languages, determines if this is the first language added or not
                    bool firstRun = (LangCur == 1);

                    if (firstRun)                       // if adding multiple languages you only want to do this once
                    //status
                    {
                        BuildJob.Status.Messages.Add(string.Format("Building {0} content from branch.", targetLang.CultureInfo.DisplayName));

                        Item HomeItem = MasterDB.GetItem(string.Format("{0}{1}", siteItem.RootPath, siteItem.StartItem));
                        extranetFolder = HomeItem.Add("extranet", extranetBranch);

                        CleanupList.Add(extranetFolder);                         // Register website for cleanup if creation fails.
                    }
                    else
                    {
                        // All content items including website item
                        IEnumerable <Item> contentItems = new Item[] { extranetFolder }.Concat(extranetFolder.Axes.GetDescendants());

                        //add new version for language and update referential links
                        ItemCur   = 1;
                        ItemTotal = contentItems.Count();
                        foreach (Item newItem in contentItems)
                        {
                            BuildJob.Status.Messages.Add(string.Format("Language {0} of {1}<br/>Item {2} of {3}", LangCur, LangTotal, ItemCur, ItemTotal));

                            //create a version of the current language for all the content under website
                            Item langVersion = MasterDB.GetItem(newItem.ID, targetLang);
                            langVersion = langVersion.Versions.AddVersion();

                            ItemCur++;
                        }
                    }
                }
                LangCur++;
            }
            return(extranetFolder);
        }
        protected Item GetItem(string IDstr)
        {
            string saIDstr = Constants.TemplateIDs.SiteAttribute;

            if (!Sitecore.Data.ID.IsID(saIDstr))
            {
                return(null);
            }
            ID saID = null;

            if (!ID.TryParse(saIDstr, out saID))
            {
                return(null);
            }
            return(MasterDB.GetItem(saID));
        }
Example #8
0
        protected override void OnCreate(Bundle savedInstanceState)
        {
            base.OnCreate(savedInstanceState);

            // Create your application here
            SupportActionBar.SetHomeAsUpIndicator(Resource.Drawable.ic_arrow_back_white_24dp);

            this.Title = "Filter";

            OutletTaskHeaderCode = FindViewById <TextView>(Resource.Id.outlettask_header_code);
            OutletTaskHeaderName = FindViewById <TextView>(Resource.Id.outlettask_header_name);
            OutletTaskHeaderDesc = FindViewById <TextView>(Resource.Id.outlettask_header_desc);

            OutletTaskHeaderCode.Text = "Code";
            OutletTaskHeaderName.Text = "Name";
            OutletTaskHeaderDesc.Text = "Task Description";

            string dbPath = new FileUtil().GetMasterDBPath();

            if (File.Exists(dbPath))
            {
                masterDB        = new MasterDB();
                masterDB.dbPath = dbPath;

                if (GlobalsAndroid.FilterProjectCode == "")
                {
                    outletTask = masterDB.GetAllOutletTaskList();
                }
                else
                {
                    outletTask = masterDB.GetOutletTaskListByProjectCode(GlobalsAndroid.FilterProjectCode);
                }
            }

            recyclerView = (RecyclerView)FindViewById(Resource.Id.recyclerview_outlet_task);

            // Plug in the linear layout manager:
            var layoutManager = new LinearLayoutManager(this);

            recyclerView.SetLayoutManager(layoutManager);

            // Plug in my adapter:
            var adapter = new OutletTaskAdapter(outletTask);

            recyclerView.SetAdapter(adapter);
        }
        protected void RemoveExtranetPages(SiteInfo siteItem)
        {
            Item HomeItem            = MasterDB.GetItem(string.Format("{0}{1}", siteItem.RootPath, siteItem.StartItem));
            IEnumerable <Item> pages = HomeItem.Axes.GetDescendants().Where(a => a.Template.IsID(Constants.TemplateIDs.ExtranetFolder) || a.Template.Is(Constants.TempateName.ExtranetLogin));

            if (pages == null || !pages.Any())
            {
                return;
            }
            foreach (Item p in pages)
            {
                Item par = p.Parent;
                p.Recycle();

                SitecoreUtility.PublishContent(par, true);
            }
        }
        private bool ValidatePage()
        {
            bool          valid = true;
            StringBuilder sb    = new StringBuilder();

            string cID = PageTree.Value;

            if (!string.IsNullOrEmpty(cID) && Sitecore.Data.ID.IsID(cID))               // Content Branch
            {
                Item ci = MasterDB.GetItem(cID);
                if (ci == null)
                {
                    valid = false;
                    sb.Append("The item you selected is null.").Append("<br/>");
                }
            }
            else
            {
                valid = false;
                sb.Append("The item selected is producing an empty string or bad ID.").Append("<br/>");
            }

            if (string.IsNullOrEmpty(FromEmail.Value))
            {
                valid = false;
                sb.Append("You need to provide a 'From' email address.").Append("<br/>");
            }

            int count = -1;

            if (string.IsNullOrEmpty(LoginCount.Value) || !int.TryParse(LoginCount.Value, out count))
            {
                valid = false;
                sb.Append("You need to provide a number for the login count.").Append("<br/>");
            }

            if (!valid)
            {
                PageErrorMessage.Text = sb.ToString();
            }

            return(valid);
        }
        private void buildImageList(string listType, string query, Literal targetControl, string activeId)
        {
            MediaUrlOptions options = new MediaUrlOptions();

            options.AlwaysIncludeServerUrl = true;
            Item[]        images = MasterDB.SelectItems(query);
            StringBuilder bldr   = new StringBuilder();

            foreach (var _image in images)
            {
                bldr.AppendLine(string.Format(iconImageHtml,
                                              _image.Name,                                          //AltText
                                              MediaManager.GetMediaUrl((MediaItem)_image, options), //Image URL
                                              _image.ID.ToString(),                                 //Image ID for javascript
                                              listType,                                             //Type i.e. image or badge
                                              _image.ID.ToString() == activeId ? "selected" : ""
                                              ));
            }

            targetControl.Text = bldr.ToString();
        }
Example #12
0
        public static MasterDB GetMasterDBInstance()
        {
            string masterDBPath = new FileUtil().GetMasterDBPath();

            if (File.Exists(masterDBPath))
            {
                if (masterDB == null)
                {
                    masterDB = new MasterDB();
                }

                masterDB.dbPath = masterDBPath;

                return(masterDB);
            }
            else
            {
                masterDB = null;
                return(null);
            }
        }
Example #13
0
        public static Staff GetIgrejas()
        {
            MasterDB context = new MasterDB();

            var model = new Staff();

            var nameIgrejas = context.Database.SqlQuery <Igreja>("SELECT * FROM Igreja").ToList();

            List <SelectListItem> items = new List <SelectListItem>();

            foreach (var i in nameIgrejas)
            {
                items.Add(new SelectListItem()
                {
                    Text = i.Localidade, Value = i.Id.ToString()
                });
            }

            model.Igrejas = new SelectList(items, "Value", "Text");

            return(model);
        }
Example #14
0
 public MasterCore(MasterService masterService)
 {
     _db = new MasterDB("master.xml", false);
     this.masterService = masterService;
 }
Example #15
0
        private async Task DownloadDBFiles()
        {
            Stopwatch sw = new Stopwatch();

            Core.Globals.GetFileNameResult      = GetFileNameResultType.None;
            Core.Globals.DownloadMasterDBResult = DownloadDBResultType.None;
            Core.Globals.DownloadAuditDBResult  = DownloadDBResultType.None;

            string UserName = Core.Globals.LoginUsername;

            DateTime Today = DateTime.Now;

            sw.Start();
            bool filenameRetrieved = await serviceManager.GetFileName(UserName, Core.Globals.AppID, Core.Globals.OSType).ConfigureAwait(false);

            sw.Stop();

            int elapsed = sw.Elapsed.Seconds;

            if (filenameRetrieved && Core.Globals.GetFileNameResult == GetFileNameResultType.Success)
            {
                // Successful
                Console.WriteLine("GetFileName call success");

                // Store DB Information into the App Preferences
                var appPreferences = new AppPreferences(this.ApplicationContext);
                appPreferences.SaveMasterDBInfoFileName(Core.Globals.MasterDBInfo.FileName);
                appPreferences.SaveMasterDBInfoFileSize(Core.Globals.MasterDBInfo.FileSize);
                appPreferences.SaveMasterDBInfoFileType(Core.Globals.MasterDBInfo.FileType);
                appPreferences.SaveMasterDBInfoIsComplete(Core.Globals.MasterDBInfo.IsComplete);
                appPreferences.SaveMasterDBInfoPathHttp(Core.Globals.MasterDBInfo.PathHTTP);
                appPreferences.SaveMasterDBInfoVersion(Core.Globals.MasterDBInfo.Version);

                // Clean database
                MasterDB masterDB = null;
                string   dbPath   = new FileUtil().GetMasterDBPath();
                if (File.Exists(dbPath))
                {
                    masterDB        = new MasterDB();
                    masterDB.dbPath = dbPath;
                    masterDB.CleanDatabase();
                }

                // Start downloading databases
                sw.Start();
                bool downloaded = await serviceManager.DownloadFile().ConfigureAwait(false);

                sw.Stop();

                elapsed += sw.Elapsed.Seconds;

                if (downloaded)
                {
                    // Successful
                    Console.WriteLine("DownloadFile call success");

                    // Add Download Log
                    var DownloadDate = Today.ToString("yyyy-MM-dd HH:mm:ss.fff");
                    var LoginID      = Core.Globals.LoginUsername;
                    var Status       = "OK";
                    if (Core.Globals.DownloadMasterDBResult == DownloadDBResultType.Success)
                    {
                        Status = "OK";
                    }
                    else if (Core.Globals.DownloadMasterDBResult == DownloadDBResultType.NotFoundError || Core.Globals.DownloadMasterDBResult == DownloadDBResultType.BadRequestError)
                    {
                        Status = "Error 404 File Not Found";
                    }
                    var FilePath   = Core.Globals.MasterDBInfo.PathHTTP + Core.Globals.MasterDBInfo.FileName;
                    var TotalTime  = sw.Elapsed.TotalSeconds.ToString("F3");
                    var AppVersion = Core.Globals.AppVersion;
                    var OSType     = Core.Globals.OSType;
                    var OSVersion  = Core.Globals.OSVersion;
                    var MacAddr    = Core.Globals.MACAddress;

                    Task.Run(() => serviceManager.AddDownloadLog(DownloadDate, LoginID, Status, FilePath, TotalTime, AppVersion, OSType, OSVersion, MacAddr));
                }
                else
                {
                    // There might be some error with the internet connection.
                    // Unexpected error
                    Console.WriteLine("DownloadFile call failure");
                }
            }
            else
            {
                // There might be some error with the internet connection.
                // Unexpected error
                Console.WriteLine("GetFileName call failure");
            }

            if (elapsed <= timeLimit)
            {
                //Do Nothing
                //As CheckLoginStatus would be called later to do the stuff
            }
            else
            {
                CheckDownloadResult(null);
            }
        }
Example #16
0
        private void ContinuousExport()
        {
            string   key      = ProgramSettings.Key;
            MasterDB masterDB = null;

            try
            {
                masterDB = new MasterDB(Paths.DbPath, key);
            }
            catch (FileNotFoundException e)
            {
                Messages.ErrorMessage(e.Message);
                Messages.ErrorMessage("Exiting program...");
                this.Close();
            }
            Helpers h = new Helpers(masterDB);

            while (!IsDisposed && !stopExport)
            {
                LastTrack lt = h.GetLastTrack();
                if (lt != null)
                {
                    OBSExport.ExportLastTrack(lt);
                    txtArtist.Invoke((Action) delegate
                    {
                        txtArtist.Text = lt.Artist;
                    });
                    txtTitle.Invoke((Action) delegate
                    {
                        txtTitle.Text = lt.Title;
                    });

                    lnkFilename.Invoke((Action) delegate
                    {
                        lnkFilename.Text = lt.FolderPath;
                    });


                    picArtwork.Invoke((Action) delegate
                    {
                        if (!string.IsNullOrEmpty(lt.ImagePath))
                        {
                            picArtwork.Image = Image.FromFile(Paths.AnalysisDataRootPath + lt.ImagePath);
                        }
                        else
                        {
                            if (!string.IsNullOrEmpty(ProgramSettings.DefaultArtwork))
                            {
                                picArtwork.Image = Image.FromFile(ProgramSettings.DefaultArtwork);
                            }
                            else
                            {
                                picArtwork.Image = null;
                            }
                        }
                    }
                                      );

                    txtHistory.Invoke((Action) delegate
                    {
                        txtHistory.Text = lt.created_at.ToString();
                    });

                    txtLastExport.Invoke((Action) delegate
                    {
                        txtLastExport.Text = OBSExport.PreviousUpdate.ToString();
                    });
                }
                Thread.Sleep(ProgramSettings.Timer * 1000);
            }

            // Allow the process to be restarted now it's been stopped
            stopExport = false;
        }
Example #17
0
        public void EnterPeriod()
        {
            try
            {
                ((MainForm)GlobalCache.Instance().MainForm).showProgressBar();
                GlobalCache.Instance().IsCostSummary = true;
                ObjectCriteria crit = new ObjectCriteria();
                crit.AddEqCriteria("EmployeeMoneyPK.WorkingDay", DateUtility.ZeroTime(DateTime.Now));
                crit.AddEqCriteria("EmployeeMoneyPK.DepartmentId", CurrentDepartment.Get().DepartmentId);
                IList list = EmployeeMoneyLogic.FindAll(crit);

                if (list != null && list.Count == 1)
                {

                }
                else
                {
                    DateTime toDay = DateUtility.ZeroTime(DateTime.Now);
                    DateTime startToday = toDay.AddHours(3);

                    // get total of yesterday
                    MasterDB masterDB = new MasterDB();
                    DepartmentSumCostReportTableAdapter adapter = new DepartmentSumCostReportTableAdapter();
                    adapter.ClearBeforeFill = true;
                    adapter.Fill(masterDB.DepartmentSumCostReport,
                                 (int)CurrentDepartment.Get().DepartmentId,
                                 startToday.Subtract(new TimeSpan(1, 0, 0, 0)),
                                 startToday
                        );

                    int rowCount = masterDB.DepartmentSumCostReport.Rows.Count;
                    long prevAmount = 0;
                    if (rowCount > 0)
                    {
                        prevAmount = Int64.Parse(masterDB.DepartmentSumCostReport.Rows[0][3].ToString());
                    }

                    EmployeeMoney fixEmplMoney = new EmployeeMoney();
                    fixEmplMoney.WorkingDay = toDay;
                    fixEmplMoney.CreateDate = startToday;
                    fixEmplMoney.UpdateDate = startToday;
                    fixEmplMoney.CreateId = ClientInfo.getInstance().LoggedUser.Name;
                    fixEmplMoney.UpdateId = ClientInfo.getInstance().LoggedUser.Name;
                    fixEmplMoney.DateLogin = startToday;
                    fixEmplMoney.DateLogout = startToday;
                    fixEmplMoney.InMoney = prevAmount;
                    //fixEmplMoney.OutMoney = 0;
                    EmployeeMoneyPK fixTimelinePK = new EmployeeMoneyPK
                    {
                        DepartmentId = CurrentDepartment.Get().DepartmentId,
                        EmployeeId = ClientInfo.getInstance().LoggedUser.Name,
                        WorkingDay = toDay
                    };

                    fixEmplMoney.EmployeeMoneyPK = fixTimelinePK;
                    EmployeeMoneyLogic.Add(fixEmplMoney);

                    // update last day
                    ObjectCriteria lastDayCrit = new ObjectCriteria();
                    lastDayCrit.AddEqCriteria("EmployeeMoneyPK.WorkingDay", DateUtility.ZeroTime(toDay.Subtract(new TimeSpan(1, 0, 0, 0))));
                    lastDayCrit.AddEqCriteria("EmployeeMoneyPK.DepartmentId", CurrentDepartment.Get().DepartmentId);
                    IList lastList = EmployeeMoneyLogic.FindAll(lastDayCrit);
                    if (lastList != null && lastList.Count > 0)
                    {
                        EmployeeMoney lastDayMoney = (EmployeeMoney)lastList[0];
                        lastDayMoney.OutMoney = prevAmount;
                        lastDayMoney.UpdateDate = startToday;
                        lastDayMoney.UpdateId = ClientInfo.getInstance().LoggedUser.Name;
                        lastDayMoney.DateLogout = startToday;
                        EmployeeMoneyLogic.Update(lastDayMoney);
                    }

                }
                GlobalCache.Instance().IsCostSummary = true;
            }
            catch (Exception exception)
            {
                GlobalCache.Instance().IsCostSummary = false;
            }
            finally
            {
                ((MainForm)GlobalCache.Instance().MainForm).stopProgressBar();
                GlobalCache.Instance().IsCostSummary = false;
            }
        }
Example #18
0
        static void Main(string[] args)

        {
            // var dbx = new AzureTablesDb("");
            var dbx = new InMemoryStorage();

            var db = new  MasterDB(dbx);

            MasterDB.TurnOnEventualConsistencyReloading   = true;
            MasterDB.EventualConsistencyReloadingInterval = TimeSpan.FromSeconds(30);
            var iddd = db.CreateNewAsync(new Testatav()
            {
                My1Name2 = DateTime.UtcNow
            }).Result;

            //while (true)
            //{
            //    System.Threading.Thread.Sleep(5000);
            //    Console.Clear();
            //    Console.WriteLine(db.GetById<Testatav>(iddd)?.My1Name2);
            //}


            var allr2 = db.LoadAll <Testatav>();

            foreach (var testatav in allr2)
            {
                var tttt = db.DeleteAsync <Testatav>(testatav).Result;
                Assert.IsTrue(tttt.IsSuccessful);
            }

            Parallel.ForEach(Enumerable.Range(0, 1), (testata) => {
                var yyy = db.CreateNewAsync(new Testatav()).Result;
            });

            var id1 = db.CreateNewAsync(new Testatav()).Result;

            var data1 = db.GetById <Testatav>(id1);

            var id2   = db.CreateNewAsync(new Testatav()).Result;
            var data2 = db.GetById <Testatav>(id2);

            var all   = db.LoadAll <Testatav>();
            var timer = Stopwatch.StartNew();

            Enumerable.Range(0, 1).AsParallel().ForAll(x =>
            {
                Parallel.ForEach(all, (testata) => {
                    var data    = db.GetById <Testatav>(testata.Id);
                    data.MyName = "sam-" + testata.Id + "g" + x;
                    db.UpdateAsync <Testatav>(data).Wait();
                });
            });
            timer.Stop();

            Console.WriteLine("get and update " + timer.ElapsedMilliseconds);
            var all22e = db.LoadAll <Testatav>();


            var timer1 = Stopwatch.StartNew();

            Enumerable.Range(0, 1000).AsParallel().ForAll(x =>
            {
                foreach (var testata in all)
                {
                    var data = db.GetById <Testatav>(testata.Id);
                }
            });
            timer1.Stop();

            Console.WriteLine("Gets 1000 times : " + timer1.ElapsedMilliseconds);
            var timer11 = Stopwatch.StartNew();

            Enumerable.Range(0, 1000).AsParallel().ForAll(x =>
            {
                var all22 = db.LoadAll <Testatav>();
            });
            timer11.Stop();

            Console.WriteLine("Load all 1000 times : " + timer11.ElapsedMilliseconds);



            Console.WriteLine("Gets 1000 times : " + timer1.ElapsedMilliseconds);
            var timer1w1 = Stopwatch.StartNew();

            Enumerable.Range(0, 1000).AsParallel().ForAll(x =>
            {
                var all22 = db.LoadAll <Testatav>().ToList();
            });
            timer1w1.Stop();

            Console.WriteLine("Load all 1000 times tolist: " + timer1w1.ElapsedMilliseconds);


            Console.WriteLine("Gets 1000 times : " + timer1.ElapsedMilliseconds);
            var timer111 = Stopwatch.StartNew();

            Enumerable.Range(0, 1000).AsParallel().ForAll(x =>
            {
                var all22 = db.LoadAll <Testatav>().Where(xx => xx.MyName != null).ToList();
            });
            timer111.Stop();

            Console.WriteLine("Query all 1000 times : " + timer111.ElapsedMilliseconds);

            var rr = db.UpdateAsync <Testatav>(data1).Result;

            Assert.IsFalse(rr.IsSuccessful);

            var data11  = db.GetById <Testatav>(id1);
            var data111 = db.GetById <Testatav>(id1);

            data11.MyName = "xxxxxxxxxxx";
            var t11 = db.UpdateAsync <Testatav>(data11).Result;

            Assert.IsTrue(t11.IsSuccessful);

            data111.MyName = "kkkkkkkk";
            var t111 = db.UpdateAsync <Testatav>(data111).Result;

            Assert.IsFalse(t111.IsSuccessful);
            //foreach (var testata in all)
            //{
            //    db.DeleteById<Testatav>(testata.Id);
            //}
            var all2 = db.LoadAll <Testatav>();

            foreach (var testatav in all2)
            {
                var tttt = db.DeleteAsync <Testatav>(testatav).Result;
                Assert.IsTrue(tttt.IsSuccessful);
            }
        }
Example #19
0
 public LastTrackHelper(MasterDB MasterDB)
 {
     _MasterDB = MasterDB;
 }