예제 #1
0
        private AssigningsViewModel GetByAssigningID(int id)
        {
            BaseAssigningsBLL   AssigningBLL = BaseAssigningsBLL.GetByAssigningID(id);
            AssigningsViewModel AssigningVM  = new AssigningsViewModel();

            if (AssigningBLL != null)
            {
                AssigningVM.ExternalKSACity = new KSACitiesBLL()
                {
                    KSACityID = 0
                };                                                                  // set default to avoid Object reference error.

                if (AssigningBLL.AssigningType.AssigningTypeID == (Int32)AssigningsTypesEnum.Internal)
                {
                    if (((InternalAssigningBLL)AssigningBLL).Job != null)
                    {
                        AssigningVM.Job = new JobsViewModel()
                        {
                            JobID   = ((InternalAssigningBLL)AssigningBLL).Job.JobID,
                            JobName = ((InternalAssigningBLL)AssigningBLL).Job.JobName
                        };
                    }
                    AssigningVM.OrganizationStructure = new OrganizationStructureViewModel()
                    {
                        OrganizationID       = ((InternalAssigningBLL)AssigningBLL).Organization.OrganizationID,
                        OrganizationName     = ((InternalAssigningBLL)AssigningBLL).Organization.OrganizationName,
                        FullOrganizationName = ((InternalAssigningBLL)AssigningBLL).Organization.FullOrganizationName
                    };
                    if (((InternalAssigningBLL)AssigningBLL).Manager != null)
                    {
                        AssigningVM.Manager = new ParentOrganizationManagerViewModel()
                        {
                            ManagerCodeID = ((InternalAssigningBLL)AssigningBLL).Manager.EmployeeCodeID,
                            ManagerCodeNo = ((InternalAssigningBLL)AssigningBLL).Manager.EmployeeCodeNo,
                            ManagerNameAr = ((InternalAssigningBLL)AssigningBLL).Manager.Employee.EmployeeNameAr,
                        };
                    }
                }
                else if (AssigningBLL.AssigningType.AssigningTypeID == (Int32)AssigningsTypesEnum.External)
                {
                    AssigningVM.ExternalOrganization = ((ExternalAssigningBLL)AssigningBLL).ExternalOrganization;
                    AssigningVM.ExternalKSARegion    = ((ExternalAssigningBLL)AssigningBLL).ExternalKSACity.KSARegion;
                    AssigningVM.ExternalKSACity      = ((ExternalAssigningBLL)AssigningBLL).ExternalKSACity;
                    AssigningVM.Job = new JobsViewModel();
                    AssigningVM.OrganizationStructure = new OrganizationStructureViewModel();
                }
                AssigningVM.AssigningType      = AssigningBLL.AssigningType;
                AssigningVM.AssigningID        = AssigningBLL.AssigningID;
                AssigningVM.AssginingStartDate = AssigningBLL.AssigningStartDate;
                AssigningVM.AssginingEndDate   = AssigningBLL.AssigningEndDate;
                AssigningVM.IsFinished         = AssigningBLL.IsFinished;

                if (AssigningBLL.AssigningReason != null && AssigningBLL.AssigningReason.AssigningReasonID > 0)
                {
                    AssigningVM.AssigningReason      = AssigningBLL.AssigningReason;
                    AssigningVM.AssigningReasonOther = AssigningBLL.AssigningReasonOther;
                }
                AssigningVM.EmployeeCodeID = AssigningBLL.EmployeeCareerHistory.EmployeeCode.EmployeeCodeID;
                AssigningVM.Employee       = new EmployeesViewModel()
                {
                    EmployeeCodeID = AssigningBLL.EmployeeCareerHistory.EmployeeCode.EmployeeCodeID
                };
                AssigningVM.Employee    = AssigningVM.Employee.GetEmployee();
                AssigningVM.CreatedDate = AssigningBLL.CreatedDate;
                AssigningVM.CreatedBy   = AssigningVM.GetCreatedByDisplayed(AssigningBLL.CreatedBy);
            }
            return(AssigningVM);
        }