private void PopulateWorks()
 {
     Works = new ObservableCollection <WorkTileViewModel>();
     foreach (var work in LocalCache.Instance.Works)
     {
         var worktile = new WorkTileViewModel(this)
         {
             Id                  = work.Id,
             Name                = work.Name,
             Cost                = work.Cost,
             Percent             = work.Percent,
             IncludedINFinancial = work.IncludedINFinancial
         };
         worktile.WorkTypeTileList = new WorkTypeTileListViewModel(worktile);
         foreach (var workType in work.WorkTypes)
         {
             worktile.WorkTypeTileList.WorkTypes.Add(new WorkTypeTileViewModel(worktile.WorkTypeTileList)
             {
                 Id      = workType.Id,
                 Name    = workType.Name,
                 Cost    = workType.Cost,
                 Percent = workType.Percent
             });
         }
         Works.Add(worktile);
     }
     SeenWorks  = Works;
     WasChanged = false;
 }
        private void OnAddWork()
        {
            var newWork = new WorkTileViewModel(this);

            Works.Add(newWork);
            newWork.OnEdit();
            WasChanged = true;
        }
 public void RemoveItem(WorkTileViewModel workToRemove)
 {
     Works.Remove(workToRemove);
     if (workToRemove.Id != 0)
     {
         worksToDeleteIds.Add(workToRemove.Id);
     }
     WasChanged = true;
 }
        public static LocalWork ToLocalWork(this WorkTileViewModel workTileViewModel)
        {
            var work = new LocalWork();

            work.Name                = workTileViewModel.Name;
            work.Cost                = workTileViewModel.Cost.HasValue?workTileViewModel.Cost.Value:0;
            work.Percent             = workTileViewModel.Percent.HasValue?workTileViewModel.Percent.Value:0;
            work.IncludedINFinancial = workTileViewModel.IncludedINFinancial;
            work.WorkTypes           = new List <LocalWorkType>();
            foreach (var workTypeTileViewModel in workTileViewModel.WorkTypeTileList.WorkTypes)
            {
                work.WorkTypes.Add(workTypeTileViewModel.ToLocalWorkType());
            }
            return(work);
        }
        public static LocalWork ToLocalWork(this WorkTileViewModel workTile)
        {
            var localWork = new LocalWork();

            localWork.Id                  = workTile.Id;
            localWork.Name                = workTile.Name;
            localWork.Cost                = workTile.Cost.HasValue?workTile.Cost.Value:0;
            localWork.Percent             = workTile.Percent.HasValue?workTile.Percent.Value:0;
            localWork.IncludedINFinancial = workTile.IncludedINFinancial;
            localWork.WorkTypes           = new List <LocalWorkType>();
            if (workTile.WorkTypeTileList != null)
            {
                foreach (var workTypeTileViewModel in workTile.WorkTypeTileList.WorkTypes)
                {
                    localWork.WorkTypes.Add(workTypeTileViewModel.ToLocalWorkType());
                }
            }
            return(localWork);
        }
 public WorkTypeTileListViewModel(WorkTileViewModel parent)
 {
     AddWorkTypeButton = new ActionButtonViewModel("Adaugă Tip", new DelegateCommand(OnAddWorkType), ImagePath.AddPatientPath);
     Parent            = parent;
 }