Example #1
0
        public async Task <ViewResult> Update(int id)
        {
            PlaceFormModel model = new PlaceFormModel
            {
                IsSuperAdmin = (base.CurrentUser.Role == UserRole.SuperAdmin)
            };

            try
            {
                Result <PlaceDTO> result = await _placeService.GetPlaceAsync(id);

                if (result.IsSuccess)
                {
                    model = Mapper.Map <PlaceDTO, PlaceFormModel>(result.Data);
                }
                else
                {
                    model.FormMessage = result.FormMessage;
                }
                return(this.View((object)model));
            }
            catch (Exception ex)
            {
                LoggerExtensions.LogError(_logger, ex, "GET Update Error {0}", new object[1]
                {
                    id
                });
                model.FormMessage = "İşleminiz gerçekleştirilemedi.";
                return(this.View((object)model));
            }
        }
Example #2
0
        public async Task <IActionResult> Create(PlaceFormModel model)
        {
            if (this.ModelState.IsValid)
            {
                try
                {
                    PlaceDTO placeDTO = Mapper.Map <PlaceFormModel, PlaceDTO>(model);
                    if (base.CurrentUser.Role != UserRole.SuperAdmin)
                    {
                        placeDTO.CompanyId = base.CurrentUser.CompanyId;
                    }
                    Result <Place> result = await _placeService.AddPlaceAsync(placeDTO);

                    model.FormMessage = result.FormMessage;
                    model.IsSuccess   = result.IsSuccess;
                    if (model.IsSuccess)
                    {
                        model.FormMessage = "İşleminiz başarılı bir şekilde gerçekleştirildi.";
                    }
                    return(this.View((object)model));
                }
                catch (Exception ex)
                {
                    LoggerExtensions.LogError(_logger, ex, "Create Error", Array.Empty <object>());
                    model.IsSuccess   = false;
                    model.FormMessage = "İşleminiz gerçekleştirilemedi.";
                    return(this.View((object)model));
                }
            }
            return(this.View((object)model));
        }
Example #3
0
        public IActionResult Create()
        {
            PlaceFormModel placeFormModel = new PlaceFormModel
            {
                IsSuperAdmin = (base.CurrentUser.Role == UserRole.SuperAdmin)
            };

            return(this.View((object)placeFormModel));
        }
Example #4
0
        public async Task <IActionResult> GetCoordinates([FromBody] PlaceFormModel model)
        {
            CoordinatesDataModel data = await _googleCoordinates.GetCoordByPlace(model);

            if (data.Location == null)
            {
                data.Location  = "Error";
                data.Latitude  = 0;
                data.Longitude = 0;
            }

            return(Ok(data));
        }
        public async Task <CoordinatesDataModel> GetCoordByPlace(PlaceFormModel model)
        {
            string apiUrl = _configuration["GeocodingApiUrl"];
            string apiKey = _configuration["GeocodingApiKey"];

            try
            {
                string url = $"{apiUrl}?address={model.Place}" + (string.IsNullOrEmpty(model.City) ? "" : $"+{model.City}") + $"&key={apiKey}";

                string data;
                var    dataModel = new CoordinatesDataModel();

                HttpWebRequest request = (HttpWebRequest)WebRequest.Create(url);
                WebResponse    resp    = await request.GetResponseAsync();

                HttpWebResponse response = (HttpWebResponse)resp;
                if (response.StatusCode == HttpStatusCode.OK)
                {
                    using (Stream stream = response.GetResponseStream())
                    {
                        using (StreamReader reader = new StreamReader(stream))
                        {
                            data = reader.ReadToEnd();
                        }
                    }
                    if (JsonConvert.DeserializeObject <dynamic>(data).status == "OK")
                    {
                        string lat = JsonConvert.DeserializeObject <dynamic>(data).results[0].geometry.location.lat.ToString();
                        string lng = JsonConvert.DeserializeObject <dynamic>(data).results[0].geometry.location.lng.ToString();
                        dataModel.Location  = JsonConvert.DeserializeObject <dynamic>(data).results[0].formatted_address.ToString();
                        dataModel.Latitude  = double.Parse(lat);
                        dataModel.Longitude = double.Parse(lng);
                    }
                }
                response.Close();

                return(dataModel);
            }
            catch
            {
                return(new CoordinatesDataModel());
            }
        }
Example #6
0
        public async Task <ViewResult> Update(int id, PlaceFormModel model)
        {
            if (this.ModelState.IsValid)
            {
                try
                {
                    PlaceDTO placeDTO = Mapper.Map <PlaceFormModel, PlaceDTO>(model);
                    placeDTO.CompanyId = ((base.CurrentUser.Role != UserRole.SuperAdmin) ? base.CurrentUser.CompanyId : 0);
                    Result result = await _placeService.UpdatePlaceAsync(id, placeDTO);

                    model.FormMessage = result.FormMessage;
                    model.IsSuccess   = result.IsSuccess;
                    if (model.IsSuccess)
                    {
                        model.FormMessage = "İşleminiz başarılı bir şekilde gerçekleştirildi.";
                    }


                    if (result.Messages != null && result.Messages.Any())
                    {
                        var temp = result.Messages.FirstOrDefault(x => string.Equals(x, "Demo", StringComparison.InvariantCultureIgnoreCase));
                        if (temp != null)
                        {
                            using (yetkilimDBContext db = new yetkilimDBContext())
                            {
                                var listMail = new List <string>();

                                //var userPlaces = db.PanelUser.AsNoTracking().Where(x => x.PlaceId == feedback.PlaceId).ToList();
                                //if (userPlaces != null && userPlaces.Any())
                                //{
                                //    listMail.AddRange(userPlaces.Where(x => !string.IsNullOrWhiteSpace(x.Email)).Select(x => x.Email));
                                //}

                                //var place = db.Places.First(x => x.Id == feedback.PlaceId);

                                var placeUsers = db.PanelUser.Where(x => x.PlaceId == id && !x.IsDeleted).ToList();

                                for (int i = 0; i < placeUsers.Count; i++)
                                {
                                    try
                                    {
                                        string pass = PasswordHelper.GeneratePassword(6);
                                        placeUsers[i].Password        = PasswordHelper.MD5Hash(pass);
                                        db.Entry(placeUsers[i]).State = EntityState.Modified;
                                        db.SaveChanges();
                                        await _emailSender.Send(new string[] { placeUsers[i].Email }, "Yeni şireniz", pass);
                                    }
                                    catch (Exception ex)
                                    {
                                    }
                                }


                                // if (userCompanies != null && userCompanies.Any())
                                // {
                                //     listMail.AddRange(userCompanies.Where(x => !string.IsNullOrWhiteSpace(x.Email)).Select(x => x.Email));
                                // }

                                // foreach (var item in listMail)
                                // {
                                //     ;
                                // }
                            }
                        }
                    }



                    model.IsSuperAdmin = (base.CurrentUser.Role == UserRole.SuperAdmin);
                    return(this.View((object)model));
                }
                catch (Exception ex)
                {
                    LoggerExtensions.LogError(_logger, ex, "POST Update Error {0}", new object[1]
                    {
                        id
                    });
                    model.FormMessage  = "İşleminiz gerçekleştirilemedi.";
                    model.IsSuperAdmin = (base.CurrentUser.Role == UserRole.SuperAdmin);
                    return(this.View((object)model));
                }
            }
            model.IsSuperAdmin = (base.CurrentUser.Role == UserRole.SuperAdmin);
            return(this.View((object)model));
        }