Ejemplo n.º 1
0
        /// <summary>
        /// جلب الحقول المباشرة التى وضعت مع الفئة عمتا
        /// ولاكن بشرط ان لا يكون هناك فئة فرعية آخرى
        /// </summary>
        /// <param name="category"></param>
        /// <returns></returns>
        public RentalDirectFieldVM GetRentalDirectFieldsByCategory(Category category, int subCategoryId)
        {
            RentalDirectFieldVM RentalDirectField = new RentalDirectFieldVM();

            //Get Objects
            var Country     = category.RentalDirectFields.SingleOrDefault(c => !c.FkSubCategory_Id.HasValue && c.FkDirectField_Id == DirectFieldsEnumVM.Country);
            var Province    = category.RentalDirectFields.SingleOrDefault(c => !c.FkSubCategory_Id.HasValue && c.FkDirectField_Id == DirectFieldsEnumVM.Province);
            var Size        = category.RentalDirectFields.SingleOrDefault(c => !c.FkSubCategory_Id.HasValue && c.FkDirectField_Id == DirectFieldsEnumVM.Size);
            var Area        = category.RentalDirectFields.SingleOrDefault(c => !c.FkSubCategory_Id.HasValue && c.FkDirectField_Id == DirectFieldsEnumVM.Area);
            var Location    = category.RentalDirectFields.SingleOrDefault(c => !c.FkSubCategory_Id.HasValue && c.FkDirectField_Id == DirectFieldsEnumVM.Location);
            var Mark        = category.RentalDirectFields.SingleOrDefault(c => !c.FkSubCategory_Id.HasValue && c.FkDirectField_Id == DirectFieldsEnumVM.Mark);
            var Material    = category.RentalDirectFields.SingleOrDefault(c => !c.FkSubCategory_Id.HasValue && c.FkDirectField_Id == DirectFieldsEnumVM.Materials);
            var Nationality = category.RentalDirectFields.SingleOrDefault(c => !c.FkSubCategory_Id.HasValue && c.FkDirectField_Id == DirectFieldsEnumVM.Nationality);

            //Country Setting
            if (Country != null)
            {
                RentalDirectField.IsCountry         = true;
                RentalDirectField.IsCountryRequierd = Country.IsRequired;
            }
            //Province Setting
            if (Province != null)
            {
                RentalDirectField.IsProvince         = true;
                RentalDirectField.IsProvinceRequierd = Province.IsRequired;
            }
            //Size Setting
            if (Size != null)
            {
                RentalDirectField.IsSize         = true;
                RentalDirectField.IsSizeRequierd = Size.IsRequired;
            }
            //Area Setting
            if (Area != null)
            {
                RentalDirectField.IsArea         = true;
                RentalDirectField.IsAreaRequierd = Area.IsRequired;
            }
            //Location Setting
            if (Location != null)
            {
                RentalDirectField.IsLocation         = true;
                RentalDirectField.IsLocationRequierd = Location.IsRequired;
            }
            //Mark Setting
            if (Mark != null)
            {
                RentalDirectField.IsMark         = true;
                RentalDirectField.IsMarkRequierd = Mark.IsRequired;
            }
            //Material Setting
            if (Material != null)
            {
                RentalDirectField.IsMaterial         = true;
                RentalDirectField.IsMaterialRequierd = Material.IsRequired;
            }
            //Nationality Setting
            if (Nationality != null)
            {
                RentalDirectField.IsNationality         = true;
                RentalDirectField.IsNationalityRequierd = Nationality.IsRequired;
            }

            //Load Items
            if (RentalDirectField.IsSize)
            {
                RentalDirectField.SizeItems = SizesItems();
            }
            if (RentalDirectField.IsMark)
            {
                RentalDirectField.MarkItems = RentalMarksItems(category.Id, subCategoryId);
            }
            if (RentalDirectField.IsMaterial)
            {
                RentalDirectField.MaterialItems = RentalMaterialsItems(category.Id, subCategoryId);
            }
            if (RentalDirectField.IsNationality)
            {
                RentalDirectField.NationalityItems = NationalitiesItems();
            }

            return(RentalDirectField);
        }
Ejemplo n.º 2
0
        /// <summary>
        /// جلب الحقول المباشرة التى وضعت مع هذة الفئة الفرعية
        /// واذا لم يكن مع الفئة الفرعية حقول سوف نقوم بجلب الحقول مع الفئة الرئيسية
        /// </summary>
        /// <param name="subCategory"></param>
        /// <returns></returns>
        public RentalDirectFieldVM GetRentalDirectFieldsBySubCategory(SubCategory subCategory)
        {
            //نتحقق اذا لم يكن هناك اى حقول مع هذة الفئة الفرعية .. نقوم بارجاع الحقول التى مع الفئة العامة
            if (subCategory.RentalDirectFields.Count == 0)
            {
                return(GetRentalDirectFieldsByCategory(subCategory.Category, subCategory.Id));
            }

            RentalDirectFieldVM RentalDirectField = new RentalDirectFieldVM();

            //Get Objects
            var Country     = subCategory.RentalDirectFields.SingleOrDefault(c => c.FkSubCategory_Id.HasValue && c.FkDirectField_Id == DirectFieldsEnumVM.Country);
            var Province    = subCategory.RentalDirectFields.SingleOrDefault(c => c.FkSubCategory_Id.HasValue && c.FkDirectField_Id == DirectFieldsEnumVM.Province);
            var Size        = subCategory.RentalDirectFields.SingleOrDefault(c => c.FkSubCategory_Id.HasValue && c.FkDirectField_Id == DirectFieldsEnumVM.Size);
            var Area        = subCategory.RentalDirectFields.SingleOrDefault(c => c.FkSubCategory_Id.HasValue && c.FkDirectField_Id == DirectFieldsEnumVM.Area);
            var Location    = subCategory.RentalDirectFields.SingleOrDefault(c => c.FkSubCategory_Id.HasValue && c.FkDirectField_Id == DirectFieldsEnumVM.Location);
            var Mark        = subCategory.RentalDirectFields.SingleOrDefault(c => c.FkSubCategory_Id.HasValue && c.FkDirectField_Id == DirectFieldsEnumVM.Mark);
            var Material    = subCategory.RentalDirectFields.SingleOrDefault(c => c.FkSubCategory_Id.HasValue && c.FkDirectField_Id == DirectFieldsEnumVM.Materials);
            var Nationality = subCategory.RentalDirectFields.SingleOrDefault(c => c.FkSubCategory_Id.HasValue && c.FkDirectField_Id == DirectFieldsEnumVM.Nationality);

            //Country Setting
            if (Country != null)
            {
                RentalDirectField.IsCountry         = true;
                RentalDirectField.IsCountryRequierd = Country.IsRequired;
            }
            //Province Setting
            if (Province != null)
            {
                RentalDirectField.IsProvince         = true;
                RentalDirectField.IsProvinceRequierd = Province.IsRequired;
            }
            //Size Setting
            if (Size != null)
            {
                RentalDirectField.IsSize         = true;
                RentalDirectField.IsSizeRequierd = Size.IsRequired;
            }
            //Area Setting
            if (Area != null)
            {
                RentalDirectField.IsArea         = true;
                RentalDirectField.IsAreaRequierd = Area.IsRequired;
            }
            //Location Setting
            if (Location != null)
            {
                RentalDirectField.IsLocation         = true;
                RentalDirectField.IsLocationRequierd = Location.IsRequired;
            }
            //Mark Setting
            if (Mark != null)
            {
                RentalDirectField.IsMark         = true;
                RentalDirectField.IsMarkRequierd = Mark.IsRequired;
            }
            //Material Setting
            if (Material != null)
            {
                RentalDirectField.IsMaterial         = true;
                RentalDirectField.IsMaterialRequierd = Material.IsRequired;
            }
            //Nationality Setting
            if (Nationality != null)
            {
                RentalDirectField.IsNationality         = true;
                RentalDirectField.IsNationalityRequierd = Nationality.IsRequired;
            }


            //Load Items
            if (RentalDirectField.IsSize)
            {
                RentalDirectField.SizeItems = SizesItems();
            }
            if (RentalDirectField.IsMark)
            {
                RentalDirectField.MarkItems = RentalMarksItems(subCategory.FKCategory_Id, subCategory.Id);
            }
            if (RentalDirectField.IsMaterial)
            {
                RentalDirectField.MaterialItems = RentalMaterialsItems(subCategory.FKCategory_Id, subCategory.Id);
            }
            if (RentalDirectField.IsNationality)
            {
                RentalDirectField.NationalityItems = NationalitiesItems();
            }

            return(RentalDirectField);
        }