public void DisplayBusinessPartnersOnConstructionSiteData()
        {
            BusinessPartnerOnConstructionSiteDataLoading = true;

            BusinessPartnerByConstructionSiteListResponse response = new BusinessPartnerByConstructionSiteSQLiteRepository()
                                                                     .GetByConstructionSite(CurrentConstructionSite.Identifier, "", currentPageBP, itemsPerPageBP);

            if (response.Success)
            {
                BusinessPartnersOnConstructionSiteFromDB = new ObservableCollection <BusinessPartnerByConstructionSiteViewModel>(response?.BusinessPartnerByConstructionSites ?? new List <BusinessPartnerByConstructionSiteViewModel>());
                totalItemsBP = response.TotalItems;
            }
            else
            {
                BusinessPartnersOnConstructionSiteFromDB = new ObservableCollection <BusinessPartnerByConstructionSiteViewModel>();
                totalItemsBP            = 0;
                MainWindow.ErrorMessage = response.Message;
            }

            int itemFrom = totalItemsBP != 0 ? (currentPageBP - 1) * itemsPerPageBP + 1 : 0;
            int itemTo   = currentPageBP * itemsPerPageBP < totalItemsBP ? currentPageBP * itemsPerPageBP : totalItemsBP;

            PaginationDisplayBP = itemFrom + " - " + itemTo + " od " + totalItemsBP;

            BusinessPartnerOnConstructionSiteDataLoading = false;
        }
コード例 #2
0
        private void btnAdd_Click(object sender, RoutedEventArgs e)
        {
            #region Validation

            if (CurrentBusinessPartner == null)
            {
                MainWindow.WarningMessage = ((string)Application.Current.FindResource("Obavezno_poljeDvotačka_Firma_bez_gradilišta"));
                return;
            }

            #endregion

            Thread th = new Thread(() =>
            {
                BusinessPartnerByConstructionSiteViewModel businessPartnerByConstructionSite = new BusinessPartnerByConstructionSiteViewModel()
                {
                    Identifier        = Guid.NewGuid(),
                    BusinessPartner   = CurrentBusinessPartner,
                    ConstructionSite  = CurrentConstructionSite,
                    StartDate         = CurrentBusinessPartner.ContractStartDate,
                    EndDate           = CurrentBusinessPartner.ContractEndDate,
                    MaxNumOfEmployees = CurrentBusinessPartner.MaxNumOfEmployees,
                    Company           = new CompanyViewModel()
                    {
                        Id = MainWindow.CurrentCompanyId
                    },
                    CreatedBy = new UserViewModel()
                    {
                        Id = MainWindow.CurrentUserId
                    }
                };

                BusinessPartnerByConstructionSiteResponse response = new BusinessPartnerByConstructionSiteSQLiteRepository().Create(businessPartnerByConstructionSite);
                if (!response.Success)
                {
                    MainWindow.ErrorMessage = ((string)Application.Current.FindResource("Greška_kod_lokalnog_čuvanjaUzvičnik"));
                    return;
                }

                response = businessPartnerByConstructionSiteService.Create(businessPartnerByConstructionSite);
                if (!response.Success)
                {
                    MainWindow.ErrorMessage = ((string)Application.Current.FindResource("Podaci_su_sačuvani_u_lokaluUzvičnikTačka_Greška_kod_čuvanja_na_serveruUzvičnik"));
                    return;
                }

                MainWindow.SuccessMessage = ((string)Application.Current.FindResource("Podaci_su_uspešno_unetiUzvičnik"));

                DisplayBusinessPartnersOnConstructionSiteData();

                //ConstructionSiteBusinessPartnerUpdated();
            });
            th.IsBackground = true;
            th.Start();
        }
コード例 #3
0
        private void btnDelete_Click(object sender, RoutedEventArgs e)
        {
            #region Validation

            if (CurrentBusinessPartnerOnConstructionSite == null)
            {
                MainWindow.WarningMessage = ((string)Application.Current.FindResource("Obavezno_poljeDvotačka_Poslovni_partner_na_odabranom_gradilištu"));
                return;
            }

            #endregion

            Thread th = new Thread(() =>
            {
                // Remove business partner on construction site
                BusinessPartnerByConstructionSiteResponse response = businessPartnerByConstructionSiteService.Delete(CurrentBusinessPartnerOnConstructionSite);
                if (!response.Success)
                {
                    MainWindow.ErrorMessage = ((string)Application.Current.FindResource("Greška_kod_brisanja_sa_serveraUzvičnik"));
                    return;
                }

                // Remove employees on that construction site from that business partner
                EmployeeByConstructionSiteListResponse employeesResponse = new EmployeeByConstructionSiteSQLiteRepository()
                                                                           .GetByConstructionSiteAndBusinessPartner(
                    CurrentBusinessPartnerOnConstructionSite.ConstructionSite.Identifier,
                    CurrentBusinessPartnerOnConstructionSite.BusinessPartner.Identifier);

                foreach (var item in employeesResponse.EmployeeByConstructionSites)
                {
                    item.RealEndDate = CurrentBusinessPartnerOnConstructionSite.RealEndDate;
                    EmployeeByConstructionSiteResponse employeeResponse = employeeByConstructionSiteService.Delete(item);
                    new EmployeeByConstructionSiteSQLiteRepository().Delete(item.Identifier);
                }


                response = new BusinessPartnerByConstructionSiteSQLiteRepository().Delete(CurrentBusinessPartnerOnConstructionSite.BusinessPartner.Identifier, CurrentConstructionSite.Identifier);
                if (!response.Success)
                {
                    MainWindow.ErrorMessage = ((string)Application.Current.FindResource("Greška_kod_lokalnog_brisanjaUzvičnik"));
                    return;
                }

                DisplayBusinessPartnersOnConstructionSiteData();

                ConstructionSiteBusinessPartnerUpdated();
            });
            th.IsBackground = true;
            th.Start();
        }