Example #1
0
        public BusinessPartnerByConstructionSiteResponse Create(BusinessPartnerByConstructionSiteViewModel re)
        {
            BusinessPartnerByConstructionSiteResponse response = new BusinessPartnerByConstructionSiteResponse();

            try
            {
                BusinessPartnerByConstructionSite addedBusinessPartnerByConstructionSite = unitOfWork.GetBusinessPartnerByConstructionSiteRepository().Create(re.ConvertToBusinessPartnerByConstructionSite());
                unitOfWork.Save();

                response.BusinessPartnerByConstructionSite = addedBusinessPartnerByConstructionSite.ConvertToBusinessPartnerByConstructionSiteViewModel();
                response.Success = true;
            }
            catch (Exception ex)
            {
                response.BusinessPartnerByConstructionSite = new BusinessPartnerByConstructionSiteViewModel();
                response.Success = false;
                response.Message = ex.Message;
            }

            return(response);
        }
Example #2
0
        public BusinessPartnerByConstructionSiteResponse Delete(BusinessPartnerByConstructionSiteViewModel businessPartnerByConstructionSite)
        {
            BusinessPartnerByConstructionSiteResponse response = new BusinessPartnerByConstructionSiteResponse();

            try
            {
                // First remove all employees on that construction site and that company
                var employeesByConstructionSite = unitOfWork.GetEmployeeByConstructionSiteRepository().GetEmployeeByConstructionSitesAndBusinessPartner(
                    businessPartnerByConstructionSite.Company.Id, businessPartnerByConstructionSite.ConstructionSite.Id, businessPartnerByConstructionSite.BusinessPartner.Id);
                if (employeesByConstructionSite != null)
                {
                    foreach (var item in employeesByConstructionSite)
                    {
                        unitOfWork.GetEmployeeByConstructionSiteRepository().Delete(item);

                        Employee employee = unitOfWork.GetEmployeeRepository().GetEmployee((int)item.EmployeeId);
                        employee.ConstructionSiteCode = "";
                        employee.ConstructionSiteName = "";
                        employee.UpdatedAt            = DateTime.Now;
                    }
                }

                BusinessPartnerByConstructionSite deletedBusinessPartnerByConstructionSite = unitOfWork.GetBusinessPartnerByConstructionSiteRepository()
                                                                                             .Delete(businessPartnerByConstructionSite.ConvertToBusinessPartnerByConstructionSite());

                unitOfWork.Save();

                response.BusinessPartnerByConstructionSite = deletedBusinessPartnerByConstructionSite.ConvertToBusinessPartnerByConstructionSiteViewModel();
                response.Success = true;
            }
            catch (Exception ex)
            {
                response.BusinessPartnerByConstructionSite = new BusinessPartnerByConstructionSiteViewModel();
                response.Success = false;
                response.Message = ex.Message;
            }

            return(response);
        }