public void Search(string text)
 {
     JobsList.Clear();
     RaisePropertyChanged("JobsList");
     JobsList = RFRepo.SearchForJobs(text, SelectedStatus);
     RaisePropertyChanged("JobsList");
 }
        public TimeCardViewModel()
        {
            EmployeeList = RFRepo.GetEmployees();
            //JobsList = RFRepo.GetJobs();
            if (DateTime.Now.DayOfWeek == DayOfWeek.Monday)
            {
                StartDate = DateTime.Now;
            }
            else if (DateTime.Now.DayOfWeek == DayOfWeek.Tuesday)
            {
                StartDate = DateTime.Now.AddDays(-1);
            }
            else if (DateTime.Now.DayOfWeek == DayOfWeek.Wednesday)
            {
                StartDate = DateTime.Now.AddDays(-2);
            }
            else if (DateTime.Now.DayOfWeek == DayOfWeek.Thursday)
            {
                StartDate = DateTime.Now.AddDays(-3);
            }
            else if (DateTime.Now.DayOfWeek == DayOfWeek.Friday)
            {
                StartDate = DateTime.Now.AddDays(-4);
            }
            else if (DateTime.Now.DayOfWeek == DayOfWeek.Saturday)
            {
                StartDate = DateTime.Now.AddDays(-5);
            }
            else if (DateTime.Now.DayOfWeek == DayOfWeek.Sunday)
            {
                StartDate = DateTime.Now.AddDays(-6);
            }

            EndDate = StartDate.AddDays(5);
        }
Esempio n. 3
0
        public void Refresh()
        {
            InvoiceCosts = "";
            InvoiceItems = "";
            TotalCost    = 0;
            Hours        = 0;
            LaborList    = RFRepo.GetJobLabors(jobModel.ID);
            HourlyCost   = 0;
            decimal workCost = 0;

            foreach (var labor in LaborList)
            {
                Hours += labor.Hours;
                var employeeRate = RFRepo.GetEmployeeRate(labor.EmployeeName);
                HourlyCost += labor.Hours * employeeRate;
            }
            SqFtCost = jobModel.SqFt ?? new decimal(0.0);
            SqFtCost = SqFtCost * jobModel.SqFtRate ?? new decimal(0.0);
            RaisePropertyChanged("HourlyCost");
            if (JobModel.BillByHour)
            {
                InvoiceItems += "Labor: " + Hours + " hours\n\n";
                InvoiceCosts += "$" + HourlyCost.ToString() + "\n\n";
                workCost      = HourlyCost ?? new decimal(0.0);
            }
            else if (JobModel.BillBySqFt)
            {
                InvoiceItems += JobModel.SqFt + " total square ft at $" + JobModel.SqFtRate + "/ sq ft\n\n";
                InvoiceCosts += "$" + SqFtCost.ToString() + "\n\n";
                workCost      = SqFtCost ?? new decimal(0.0);
            }
            SqFtCost = jobModel.SqFt * jobModel.SqFtRate;
            RaisePropertyChanged("SqFtCost");
            MaterialsList = RFRepo.GetJobMaterials(jobModel.ID);
            decimal invoiceMaterialsCost = 0;

            foreach (var material in MaterialsList)
            {
                InvoiceItems += material.MaterialName + "\t Qty: " + material.Quantity + "\n";
                var totalMaterialCost = material.Cost * material.Quantity;
                InvoiceCosts         += "$" + totalMaterialCost + "\n";
                invoiceMaterialsCost += totalMaterialCost;
                if (!(string.IsNullOrEmpty(material.Description)))
                {
                    InvoiceItems += "\t Description: " + material.Description + "\n";
                    InvoiceCosts += "\n";
                }
            }
            TotalCost = workCost + invoiceMaterialsCost;
            var cityString = new StringBuilder(jobModel.City);

            cityString.Append(",");
            cityString.Append(jobModel.State);
            cityString.Append(" " + jobModel.ZipCode);
            CityLine = cityString.ToString();
        }
Esempio n. 4
0
 public void LoadJob(int jobID)
 {
     JobModel = RFRepo.GetJob(jobID);
     RaisePropertyChanged("JobModel");
     Refresh();
     if (SelectedStatus != null)
     {
         SelectedStatus = RFRepo.GetStatusType(jobModel.StatusID);
     }
 }
Esempio n. 5
0
 public void RefreshJobs()
 {
     if (SearchAllJobs)
     {
         JobsList = RFRepo.GetJobs(0);
     }
     else
     {
         JobsList = RFRepo.GetJobs(RFRepo.JobStatusInProgress);
     }
 }
Esempio n. 6
0
 public AddLaborViewModel()
 {
     EmployeeList = RFRepo.GetEmployees();
     if (SearchAllJobs)
     {
         JobsList = RFRepo.GetJobs(0);
     }
     else
     {
         JobsList = RFRepo.GetJobs(RFRepo.JobStatusInProgress);
     }
     LaborModel = new Labor();
 }
Esempio n. 7
0
        public void Save()
        {
            if (!(RFRepo.InMaterials(NewMaterial)))
            {
                RFRepo.AddMaterial(NewMaterial, Model.CostPerItem);
                SelectedMaterial = RFRepo.GetMaterial(NewMaterial);
            }

            Model.EmployeeID = SelectedEmployee.ID;
            Model.ItemID     = SelectedMaterial.ID;
            Model.JobID      = SelectedJob.ID;
            RFRepo.AddMaterialHistory(Model);
        }
Esempio n. 8
0
 public AddMaterialViewModel()
 {
     EmployeeList = RFRepo.GetEmployees();
     MaterialList = RFRepo.GetMaterials();
     if (SearchAllJobs)
     {
         JobList = RFRepo.GetJobs(0);
     }
     else
     {
         JobList = RFRepo.GetJobs(RFRepo.JobStatusInProgress);
     }
     Model = new MaterialHistory();
 }
 public void Refresh()
 {
     if (SelectedSort.Contains("Name"))
     {
         SortByName();
     }
     else if (SelectedSort.Contains("City"))
     {
         SortByCity();
     }
     else
     {
         _JobsList = RFRepo.GetJobs(SelectedStatus);
         RaisePropertyChanged("JobsList");
     }
 }
Esempio n. 10
0
 public void SaveJob()
 {
     RFRepo.AddJob(JobModel);
 }
Esempio n. 11
0
 public void AddLabor()
 {
     RFRepo.AddLabor(LaborModel);
     MessageBox.Show("Labor added");
 }
 private void btnLabor_Click(object sender, RoutedEventArgs e)
 {
     MainWindow.PageControl.SelectedIndex = AddLaborPage.ID;
     AddLaborPage._viewModel.SelectedJob  = RFRepo.GetJob(_viewModel.JobModel.ID).Name;
 }
 public static void Refresh()
 {
     _viewModel.LoadJob(_viewModel.JobModel.ID);
     _viewModel.SelectedStatus = RFRepo.GetStatusType(_viewModel.JobModel.StatusID);
 }
Esempio n. 14
0
 public EditJobViewModel()
 {
     StatusList = RFRepo.GetJobStatusList();
 }
 public void SortByName()
 {
     JobsList = RFRepo.SortJobsByName(SelectedStatus);
     RaisePropertyChanged("JobsList");
 }
 public JobsViewModel()
 {
     _JobsList = RFRepo.GetJobs(0);
     RaisePropertyChanged("JobsList");
     SelectedSort = "";
 }