Exemplo n.º 1
0
        public static FileSaveVM SaveFile(FileSaveVM file)
        {
            try
            {
                //يجب حفظ الصور فى سيرفر الصور
                new NullReferenceException();

                string Extension = Path.GetExtension(file.File.FileName);

                file.IsSave = false;
                if (!file.Extensions.Any(c => c == Extension.ToLower()))
                {
                    return(file);
                }

                file.SavedPath = Path.GetFileName(file.File.FileName) + new Random().Next().ToString() + Extension;

                file.File.SaveAs(HttpContext.Current.Server.MapPath(file.ServerPathSave) + file.SavedPath);

                file.SavedPath = file.ServerPathSave + file.SavedPath;
                file.IsSave    = true;
                return(file);
            }
            catch (Exception ex)
            {
                file.IsSave = false;
                return(file);
            }
        }
Exemplo n.º 2
0
        internal object Category(Category rentalCategory)
        {
            //New
            if (db.Categories.Any(x => x.NameAr == rentalCategory.NameAr))
            {
                return(new ResponseVM(RequestTypeEnumVM.Error, Token.CanNotDuplicateRow + " : " + rentalCategory.NameAr));
            }
            if (db.Categories.Any(x => x.NameEn == rentalCategory.NameEn))
            {
                return(new ResponseVM(RequestTypeEnumVM.Warning, Token.CanNotDuplicateRow + " : " + rentalCategory.NameEn));
            }
            if (string.IsNullOrEmpty(rentalCategory.Image64))
            {
                return(new ResponseVM(RequestTypeEnumVM.Error, Token.FiledIsRequired + " : " + "Image"));
            }


            //Uplaod Image
            FileSaveVM ImageSaved = FileService.SaveFileBase64(new FileSaveVM
            {
                FileBase64 = rentalCategory.Image64,
            });

            //Check Image Saved
            if (!ImageSaved.IsSave)
            {
                return(new ResponseVM(RequestTypeEnumVM.Error, Token.CanNotSaveImage));
            }

            //Insert Image Url
            rentalCategory.AllFile = new AllFile()
            {
                FileUrl             = ImageSaved.SavedPath,
                FKAppInformation_Id = AppInformationEnumVM.ApiFiles,
                FkFileType_Id       = FileTypeEnumVM.Image
            };


            db.Categories.Add(rentalCategory);
            return(null);
        }
Exemplo n.º 3
0
        internal static FileSaveVM SaveFileBase64(FileSaveVM file)
        {
            try
            {
                if (file.FileBase64.StartsWith("data:image/jpeg;base64,"))
                {
                    file.FileBase64 = file.FileBase64.Replace("data:image/jpeg;base64,", string.Empty);
                    file.Extension  = ".jpg";
                }
                else if (file.FileBase64.StartsWith("data:image/png;base64,"))
                {
                    file.FileBase64 = file.FileBase64.Replace("data:image/png;base64,", string.Empty);
                    file.Extension  = ".png";
                }
                else if (file.FileBase64.StartsWith("data:image/jpg;base64,"))
                {
                    file.FileBase64 = file.FileBase64.Replace("data:image/jpg;base64,", string.Empty);
                    file.Extension  = ".jpg";
                }


                file.SavedPath = HttpService.PostFile(file);
                if (string.IsNullOrEmpty(file.SavedPath))
                {
                    file.IsSave = false;
                }
                else
                {
                    file.IsSave = true;
                }

                return(file);
            }
            catch (Exception ex)
            {
                file.IsSave = false;
                return(file);
            }
        }
Exemplo n.º 4
0
        internal object SubCategory(SubCategory rentalSubCategory)
        {


            if (db.SubCategories.Where(x => x.Id != rentalSubCategory.Id).Any(x => x.NameAr == rentalSubCategory.NameAr))
                return new ResponseVM(RequestTypeEnumVM.Warning, Token.CanNotDuplicateRow + " >> " + rentalSubCategory.NameAr);
            if (db.SubCategories.Where(x => x.Id != rentalSubCategory.Id).Any(x => x.NameEn == rentalSubCategory.NameEn))
                return new ResponseVM(RequestTypeEnumVM.Warning, Token.CanNotDuplicateRow + " >> " + rentalSubCategory.NameEn);

            var SubCategoryEdit = db.SubCategories.Find(rentalSubCategory.Id);

            //Upload New Image
            if (!string.IsNullOrEmpty(rentalSubCategory.Image64))
            {
                FileSaveVM ImageUpdate = FileService.SaveFileBase64(new FileSaveVM()
                {
                    FileBase64 = rentalSubCategory.Image64,
                });

                if (!ImageUpdate.IsSave)
                    return new ResponseVM(RequestTypeEnumVM.Error, Token.CanNotSaveImage);

                FilesRemove.Add(SubCategoryEdit.AllFile.FileUrl);

                //Add New Image Url
                SubCategoryEdit.AllFile.FileUrl = ImageUpdate.SavedPath;
            }




            //Update Now

            SubCategoryEdit.NameAr = rentalSubCategory.NameAr;
            SubCategoryEdit.NameEn = rentalSubCategory.NameEn;
            return null;
        }
Exemplo n.º 5
0
        public static string PostFile(FileSaveVM file)
        {
            try
            {
                string Path    = "/Tageer/Api/Files/Post",
                       BaseUrl = string.Empty;
                using (HttpClient HC = new HttpClient())
                {
                    BaseUrl = WebConfigurationManagerService.ApiFilesLink;

                    JavaScriptSerializer Serializer = new JavaScriptSerializer();

                    string ObjectJson = Serializer.Serialize(file);

                    var ObjectJsonBytes = System.Text.Encoding.UTF8.GetBytes(ObjectJson);
                    var ByteContent     = new ByteArrayContent(ObjectJsonBytes);

                    //Create Header
                    HC.DefaultRequestHeaders.Accept.Clear();
                    ByteContent.Headers.ContentType = new MediaTypeHeaderValue("application/json");
                    HC.DefaultRequestHeaders.Accept.Add(new MediaTypeWithQualityHeaderValue("application/json"));
                    HC.BaseAddress = new Uri(BaseUrl);

                    //Call Api
                    var    Respo   = HC.PostAsync(Path, ByteContent);
                    var    Content = Respo.Result.Content;
                    string Message = Content.ReadAsStringAsync().Result;

                    return(Message.Replace("\"", string.Empty));
                }
            }
            catch (Exception)
            {
                return(null);
            }
        }
Exemplo n.º 6
0
        internal object User(Address address, User user, UserRole[] userRoles, HttpPostedFileBase image)
        {
            if (db.Users.Any(x => x.UserName == user.UserName))
            {
                return new { RequestType = RequestTypeEnumVM.Error, Message = Token.UserName + " :" + Token.BeforeUsed }
            }
            ;
            if (db.Users.Any(x => x.Email == user.Email))
            {
                return new { RequestType = RequestTypeEnumVM.Error, Message = Token.Email + " :" + Token.BeforeUsed }
            }
            ;

            //Add Another Data
            user.CreateDate = DateTime.Now;
            user.Password   = user.NewPassword;

            //Add Address
            if (address != null)
            {
                user.Address = address;
            }
            //Add Role
            if (userRoles != null)
            {
                foreach (UserRole uRole in userRoles)
                {
                    if (!user.UserRoles.Any(c => c.FkRole_Id == uRole.FkRole_Id))
                    {
                        user.UserRoles.Add(uRole);
                    }
                }
            }
            else
            {
                user.UserRoles.Add(new UserRole()
                {
                    FkRole_Id = RoleEnumVM.Client
                });
            }

            //Add Image
            if (image == null)
            {
                user.AllFile = new AllFile()
                {
                    FKAppInformation_Id = AppInformationEnumVM.ControllPanelLink,
                    FkFileType_Id       = FileTypeEnumVM.Image,
                    FileUrl             = DefaultsVM.ImageDefult,
                }
            }
            ;
            else
            {
                //Save Image
                FileSaveVM FileSave = FileService.SaveFile(new FileSaveVM()
                {
                    File           = image,
                    ServerPathSave = "~/Files/Images/Users/Profile/",
                    Extensions     = DefaultsVM.ExtensionsImage,
                });

                if (!FileSave.IsSave)
                {
                    return new { RequestType = RequestTypeEnumVM.Error, Message = Token.CanNotSaveFile }
                }
                ;

                user.AllFile = new AllFile()
                {
                    FKAppInformation_Id = AppInformationEnumVM.ControllPanelLink,
                    FkFileType_Id       = FileTypeEnumVM.Image,
                    FileUrl             = FileSave.SavedPath,
                };
            }


            db.Users.Add(user);
            return(null);
        }
Exemplo n.º 7
0
        /// <summary>
        /// User Current User
        /// </summary>
        /// <param name="userInformation"></param>
        /// <param name="address"></param>
        /// <param name="user"></param>
        /// <param name="image"></param>
        /// <returns></returns>
        internal object User(Address address, User user, HttpPostedFileBase image)

        {
            /*
             -- language
            */

            User User = db.Users.Find(user.Id);

            //Check Email unic
            if (string.IsNullOrEmpty(user.Email))
                return new { RequestType = RequestTypeEnumVM.Error, Message = Token.Email + " " + Token.FiledIsRequired };
            if (db.Users.Where(x => x.Id != user.Id).Any(x => x.Email == user.Email))
                return new { RequestType = RequestTypeEnumVM.Error, Message = Token.Email + " " + Token.BeforeUsed };


            //Password
            if (!string.IsNullOrEmpty(user.NewPassword))
                User.Password = user.NewPassword;

            //user
            User.Email = user.Email;

            User.FullName = user.FullName;
            User.FKGender_Id = user.FKGender_Id;
            User.FKLanguage_Id = user.FKLanguage_Id;



            //Address
            if (User.Address == null)
            {
                var NewAddress = new Models.Address();
                if (address.FKCountry_Id > 0)
                    NewAddress.FKCountry_Id = address.FKCountry_Id;
                NewAddress.Street = address.Street;
                NewAddress.PostalCode = address.PostalCode;
                NewAddress.City = address.City;

                User.Address = NewAddress;
            }
            else
            {
                if (address.FKCountry_Id > 0)
                    User.Address.FKCountry_Id = address.FKCountry_Id;
                if (address.FkProvince_Id > 0)
                    User.Address.FkProvince_Id = address.FkProvince_Id;
                User.Address.Street = address.Street;
                User.Address.City = address.City;
                User.Address.PostalCode = address.PostalCode;
            }

            if (User.PhoneNumber != user.PhoneNumber)
            {
                if (db.Users.Where(c => c.Id != user.Id).Any(c => c.PhoneNumber == user.PhoneNumber))
                    return new ResponseVM(RequestTypeEnumVM.Error, $"{Token.Phone} : {Token.Duplicate}");
                User.PhoneNumber = user.PhoneNumber;
            }




            //Update Image 
            if (image != null)
            {
                //Save Image
                FileSaveVM FileSave = FileService.SaveFile(new FileSaveVM()
                {
                    File = image,
                    ServerPathSave = "/Files/Images/Users/Profile/",
                    Extensions = DefaultsVM.ExtensionsImage,
                });

                if (!FileSave.IsSave)

                    return new { RequestType = RequestTypeEnumVM.Error, Message = Token.CanNotSaveFile };

                if (User.AllFile == null)
                {
                    User.AllFile = new AllFile()
                    {
                        FKAppInformation_Id = AppInformationEnumVM.ApiFiles,
                        FkFileType_Id = FileTypeEnumVM.Image,
                        FileUrl = FileSave.SavedPath,
                    };
                }
                else
                {
                    User.OldImageUrl = User.AllFile.FileUrl;
                    User.AllFile.FileUrl = FileSave.SavedPath;
                }
            }


            return null;
        }
Exemplo n.º 8
0
        internal object UpdateUserData(UserDataVM userDataVM)
        {
            var UserDataUpdate = db.Users.Find(AccessToken.GetUserId());

            //Check Is Update Language
            if (userDataVM.IsUpdateLanguage)
            {
                if (userDataVM.LangId <= 0)
                {
                    return(new ResponseVM(RequestTypeEnumVM.Error, $"{Token.Language} : {Token.FiledIsRequired}"));
                }

                if (!db.LanguageTypes.Any(c => c.Id == userDataVM.LangId))
                {
                    return(new ResponseVM(RequestTypeEnumVM.Error, $"{Token.Language} : {Token.NotFound}"));
                }

                UserDataUpdate.
                FKLanguage_Id = userDataVM.LangId;
            }

            //Check Is Update Email
            else if (userDataVM.IsUpdateEmail)
            {
                if (string.IsNullOrEmpty(userDataVM.Email))
                {
                    return(new ResponseVM(RequestTypeEnumVM.Error, $"{Token.Email} : {Token.FiledIsRequired}"));
                }

                if (!CheckedS.EmailIsCorrect(userDataVM.Email))
                {
                    return(new ResponseVM(RequestTypeEnumVM.Error, $"{Token.Email} : {Token.InvalidData}"));
                }

                if (db.Users.Where(c => c.Id != UserDataUpdate.Id).Any(c => c.Email == userDataVM.Email))
                {
                    return(new ResponseVM(RequestTypeEnumVM.Error, $"{Token.Email} : {Token.BeforeUsed}"));
                }

                UserDataUpdate.Email = userDataVM.Email;
                return(null);
            }

            //Check Is Update Phone
            else if (userDataVM.IsUpdatePhone)
            {
                if (string.IsNullOrEmpty(userDataVM.Phone))
                {
                    return new { RequestType = RequestTypeEnumVM.Error, Message = Token.Phone + " >> " + Token.FiledIsRequired }
                }
                ;

                if (!CheckedS.NumberValid(userDataVM.Phone))
                {
                    return new { RequestType = RequestTypeEnumVM.Error, Message = Token.Phone + " >> " + Token.InvalidNumber }
                }
                ;



                if (userDataVM.Phone.Length > 15)
                {
                    return new { RequestType = RequestTypeEnumVM.Error, Message = Token.Phone + " >> " + Token.MaxLength + "= 15" }
                }
                ;


                UserDataUpdate.PhoneNumber = userDataVM.Phone;
            }
            //Check Is Update Password
            else if (userDataVM.IsUpdatePassword)
            {
                if (string.IsNullOrEmpty(userDataVM.Password))
                {
                    return new { RequestType = RequestTypeEnumVM.Error, Message = Token.Password + " >> " + Token.FiledIsRequired }
                }
                ;
                UserDataUpdate.Password = userDataVM.Password;
            }
            //Check Is Update UserName
            else if (userDataVM.IsUpdateUserName)
            {
                if (string.IsNullOrEmpty(userDataVM.UserName))
                {
                    return new { RequestType = RequestTypeEnumVM.Error, Message = Token.Password + " >> " + Token.FiledIsRequired }
                }
                ;

                if (db.Users.Where(c => c.Id != UserDataUpdate.Id).Any(c => c.UserName == userDataVM.UserName))
                {
                    return new { RequestType = RequestTypeEnumVM.Error, Message = Token.UserName + " >> " + Token.ErrorDuplicate }
                }
                ;

                UserDataUpdate.UserName = userDataVM.UserName;
            }
            //Check Is Update Full Name
            else if (userDataVM.IsUpdateFullName)
            {
                if (string.IsNullOrEmpty(userDataVM.FullName))
                {
                    return new { RequestType = RequestTypeEnumVM.Error, Message = Token.FullName + " >> " + Token.FiledIsRequired }
                }
                ;

                UserDataUpdate.FullName = userDataVM.FullName;
            }

            //Check Is Update Country
            else if (userDataVM.IsUpdateCountry)
            {
                if (userDataVM.CountryId <= 0)
                {
                    return new { RequestType = RequestTypeEnumVM.Error, Message = Token.Country + " >> " + Token.FiledIsRequired }
                }
                ;

                UserDataUpdate.Address.FKCountry_Id = userDataVM.CountryId;
            }
            //Check Is Update City
            else if (userDataVM.IsUpdateCity)
            {
                if (string.IsNullOrEmpty(userDataVM.City))
                {
                    return new { RequestType = RequestTypeEnumVM.Error, Message = Token.City + " >> " + Token.FiledIsRequired }
                }
                ;

                UserDataUpdate.Address.City = userDataVM.City;
            }
            //Check Is Update Province
            else if (userDataVM.IsUpdateProvince)
            {
                if (userDataVM.ProvinceId <= 0)
                {
                    return new { RequestType = RequestTypeEnumVM.Error, Message = Token.Province + " >> " + Token.FiledIsRequired }
                }
                ;

                UserDataUpdate.Address.FkProvince_Id = userDataVM.ProvinceId;
            }
            //Check Is Update Profile Image
            else if (userDataVM.IsUpdateImageProfile)
            {
                if (string.IsNullOrEmpty(userDataVM.FileBase64))
                {
                    return new { RequestType = RequestTypeEnumVM.Error, Message = Token.ImageProfile + " >> " + Token.FiledIsRequired }
                }
                ;

                //Uplaod Image
                FileSaveVM FileSave = FileService.SaveFileBase64(new FileSaveVM()
                {
                    FileBase64     = userDataVM.FileBase64,
                    ServerPathSave = "/Files/Images/Users/Profile/"
                });


                if (!FileSave.IsSave)
                {
                    return new { RequestType = RequestTypeEnumVM.Error, Message = Token.CanNotSaveFile }
                }
                ;

                UserDataUpdate.AllFile.FileUrl             = FileSave.SavedPath;
                UserDataUpdate.AllFile.FKAppInformation_Id = AppInformationEnumVM.ApiLink
                ;
            }

            return(null);
        }
Exemplo n.º 9
0
        /// <summary>
        /// Cereate New Ad
        /// </summary>
        /// <param name="adCereateVM"></param>
        /// <param name="pagesAllow"></param>
        /// <returns></returns>
        internal object Ad(AdCreateVM adCereateVM)
        {
            //Check Requierd
            if (string.IsNullOrEmpty(adCereateVM.Title))
            {
                return(ResponseVM.FieldIsRequierd(Token.Title));
            }
            if (string.IsNullOrEmpty(adCereateVM.Description))
            {
                return(ResponseVM.FieldIsRequierd(Token.Description));
            }
            if (adCereateVM.Price <= 0)
            {
                return(ResponseVM.FieldIsRequierd(Token.Price));
            }
            if (adCereateVM.CategoryId <= 0)
            {
                return(ResponseVM.FieldIsRequierd(Token.Category));
            }
            if (adCereateVM.SubCategoryId <= 0)
            {
                return(ResponseVM.FieldIsRequierd(Token.SubCategory));
            }
            if (adCereateVM.Images.Count <= 0)
            {
                return(ResponseVM.FieldIsRequierd(Token.Images));
            }

            Ad Ad = new Ad();


            //Add Ad Individual Field
            AdsService.ImportAdIndividualField(Ad, adCereateVM.AdIndividualField);
            //Add Ad Groups Field
            AdsService.ImportAdGroupsField(Ad, adCereateVM.AdGroupsField);
            //Add Ad Direct Field
            AdsService.ImportAdDirectField(Ad, adCereateVM.AdDirectField);



            //Save Images
            Album Album = new Album();

            foreach (var img in adCereateVM.Images)
            {
                FileSaveVM FileSave = FileService.SaveFileBase64(new FileSaveVM()
                {
                    FileBase64     = img.FileBase64,
                    ServerPathSave = "/Files/Images/"
                });

                if (!FileSave.IsSave)
                {
                    return(new ResponseVM(RequestTypeEnumVM.Error, $"{Token.CanNotSaveFile} {img.FileName}"));
                }

                Album.AlbumFiles.Add(new AlbumFile
                {
                    AllFile = new AllFile
                    {
                        FkFileType_Id       = FileTypeEnumVM.Image,
                        FileUrl             = FileSave.SavedPath,
                        FKAppInformation_Id = AppInformationEnumVM.ApiFiles
                    }
                });
            }
            Ad.Album = Album;



            Ad.CreateDateTime       = DateTime.Now;
            Ad.Title                = adCereateVM.Title;
            Ad.Description          = adCereateVM.Description;
            Ad.Price                = adCereateVM.Price;
            Ad.FkCategory_Id        = adCereateVM.CategoryId;
            Ad.FkSubCategory_Id     = adCereateVM.SubCategoryId;
            Ad.FkRentalTimesType_Id = adCereateVM.RentalTimeTypeId;
            Ad.FkUser_Id            = AccessToken.GetUserId();
            db.Ads.Add(Ad);
            return(null);
        }
Exemplo n.º 10
0
        /// <summary>
        /// Create User Calling From Api
        /// </summary>
        /// <param name="model"></param>
        /// <param name="pageAllow"></param>
        /// <returns></returns>
        internal object User(UserVM user)
        {
            if (user == null)
            {
                return new { RequestType = RequestTypeEnumVM.Error, Message = Token.DataNotFound }
            }
            ;

            //Check Required
            if (string.IsNullOrEmpty(user.Email))
            {
                return(new ResponseVM(RequestTypeEnumVM.Error, $"{Token.Email} : {Token.FiledIsRequired}"));
            }
            if (string.IsNullOrEmpty(user.UserName))
            {
                return(new ResponseVM(RequestTypeEnumVM.Error, $"{Token.UserName} : {Token.FiledIsRequired}"));
            }
            if (string.IsNullOrEmpty(user.Password))
            {
                return(new ResponseVM(RequestTypeEnumVM.Error, $"{Token.Password} : {Token.FiledIsRequired}"));
            }
            if (string.IsNullOrEmpty(user.PhoneNumber))
            {
                return(new ResponseVM(RequestTypeEnumVM.Error, $"{Token.Phone} : {Token.FiledIsRequired}"));
            }

            if (user.IsCompany && user.CompanyInfomration == null)
            {
                return(new ResponseVM(RequestTypeEnumVM.Error, Token.CompanyInformationIsRequired));
            }
            if (user.IsCompany && string.IsNullOrEmpty(user.CompanyInfomration.Description))
            {
                return(new ResponseVM(RequestTypeEnumVM.Error, $"{Token.CompanyDescription} : {Token.FiledIsRequired}"));
            }
            if (user.IsCompany && user.CompanyInfomration.ActivityId == 0)
            {
                return(new ResponseVM(RequestTypeEnumVM.Error, $"{Token.CompanyActivity} : {Token.FiledIsRequired}"));
            }
            if (user.IsCompany && !db.Activities.Any(c => c.Id == user.CompanyInfomration.ActivityId))
            {
                return(new ResponseVM(RequestTypeEnumVM.Error, $"{Token.CompanyActivity} : {Token.NotFound}"));
            }
            if (user.IsCompany && user.CompanyInfomration.Officess.Any(c => string.IsNullOrEmpty(c.Address)))
            {
                return(new ResponseVM(RequestTypeEnumVM.Error, LanguageService.IsEn?"There are some office addresses that don't have data": "هناك بعض عنوانين للمكاتب ليست بها بيانات"));
            }
            if (user.IsCompany && user.CompanyInfomration.Officess.Any(c => c.CountryId == 0))
            {
                return(new ResponseVM(RequestTypeEnumVM.Error, LanguageService.IsEn ? "There are some office countries that don't have data" : "هناك بعض الدول للمكاتب ليست بها بيانات"));
            }

            //Check   unic
            if (db.Users.Any(x => x.Email == user.Email))
            {
                return new { RequestType = RequestTypeEnumVM.Error, Message = Token.Email + "  : " + Token.BeforeUsed }
            }
            ;
            if (db.Users.Any(x => x.UserName == user.UserName))
            {
                return new { RequestType = RequestTypeEnumVM.Error, Message = Token.UserName + "  : " + Token.BeforeUsed }
            }
            ;
            if (db.Users.Any(x => x.PhoneNumber == user.PhoneNumber))
            {
                return new { RequestType = RequestTypeEnumVM.Error, Message = Token.Phone + "  : " + Token.BeforeUsed }
            }
            ;


            //Check  length
            if (user.Password.Length < 6)
            {
                return new { RequestType = RequestTypeEnumVM.Error, Message = Token.MinimumLength + "  : " + Token.For + "  : " + Token.Password + " 6" }
            }
            ;
            //Check UserName
            if (user.UserName.Length > 30)
            {
                return new { RequestType = RequestTypeEnumVM.Error, Message = Token.UserName + "  : " + Token.MaxLength + " 30" }
            }
            ;

            //Check Data Is Valid
            if (!CheckedS.EmailIsCorrect(user.Email))
            {
                return new { RequestType = RequestTypeEnumVM.Error, Message = Token.InvalidEmail }
            }
            ;

            List <UserRole> UserRoles = new List <UserRole>()
            {
                new UserRole()
                {
                    FkRole_Id = user.IsCompany?RoleEnumVM.Company:RoleEnumVM.Client,
                }
            };
            FileSaveVM           FileSave       = new FileSaveVM();
            List <CompanyOffice> CompanyOffices = new List <CompanyOffice>();

            if (!string.IsNullOrEmpty(user.Image))
            {
                FileSave = FileService.SaveFileBase64(new FileSaveVM
                {
                    FileBase64     = user.Image,
                    ServerPathSave = "/Files/Images/Users/",
                    Extension      = Path.GetExtension(user.ImageName)
                });

                if (!FileSave.IsSave)
                {
                    return(new ResponseVM(RequestTypeEnumVM.Error, Token.CanNotSaveFile));
                }
            }

            User User = new User()
            {
                Email            = user.Email,
                Password         = user.Password,
                UserName         = user.UserName,
                IsBlocked        = false,
                UserRoles        = UserRoles,
                CreateDate       = DateTime.Now,
                FullName         = "",
                FKLanguage_Id    = (int)LanguageEnum.Arabic,
                PhoneNumber      = user.PhoneNumber,
                PhoneActiveCode  = 4444,
                IsPhoneActivated = false,
                Address          = new Address(),
                AllFile          = new AllFile()
                {
                    FkFileType_Id       = FileTypeEnumVM.Image,
                    FKAppInformation_Id = AppInformationEnumVM.ApiFiles,
                    FileUrl             = FileSave.SavedPath == null?"":FileSave.SavedPath,
                },
            };

            if (user.IsCompany)
            {
                user.CompanyInfomration.Officess.ForEach(c =>
                {
                    CompanyOffices.Add(new CompanyOffice
                    {
                        Address = new Address
                        {
                            Street       = c.Address,
                            FKCountry_Id = c.CountryId
                        },
                        Location = new Location
                        {
                            Latitude  = "", //c.Latitude,
                            Longitude = "", // c.Longitude
                        }
                    });
                });
                User.Company = new Company
                {
                    Description    = user.CompanyInfomration.Description,
                    FKActivity_Id  = user.CompanyInfomration.ActivityId,
                    CompanyOffices = CompanyOffices
                };
            }

            db.Users.Add(User);
            return(null);
        }