public Responce <List <AppUsersDTO> > GetUsersList() { Responce <List <AppUsersDTO> > responce = new Responce <List <AppUsersDTO> >(); List <AppUsersDTO> appUsersDTO = new List <AppUsersDTO>(); try { responce.Success = true; using (SSCEntities db = new SSCEntities()) { appUsersDTO = db.UserDetailWithRole?.Select(a => new AppUsersDTO() { Id = a.Id, Name = a.Name, Email = a.Email, City = a.City, Phone = a.Phonenumber, RoleId = a.RoleId, UserRole = a.UserRole }).ToList(); responce.ResponeContent = appUsersDTO; } } catch (Exception ex) { responce.Success = false; responce.Message = $"ERROR GetUsersList : {ex.InnerException}"; responce.ResponeContent = appUsersDTO; } return(responce); }
public Responce <List <AppRolesDTO> > GetRoles() { Responce <List <AppRolesDTO> > responce = new Responce <List <AppRolesDTO> >(); List <AppRolesDTO> appRolesDTOs = new List <AppRolesDTO>(); try { responce.Success = true; using (SSCEntities db = new SSCEntities()) { appRolesDTOs = db.AspNetRoles.Select(a => new AppRolesDTO() { Id = a.Id, Name = a.Name }).ToList(); responce.ResponeContent = appRolesDTOs; } } catch (Exception ex) { responce.Success = false; responce.Message = $"ERROR GetRoles :{ex.InnerException}"; responce.ResponeContent = appRolesDTOs; } return(responce); }
public async Task <Responce <bool> > UpdateCityMail(ChnageCityMailRequest chnageCityMailRequest) { Responce <bool> Responce = new Responce <bool>(); Responce.Success = true; try { using (var db = new SSCEntities()) { Citys citys = db.Citys.Find(chnageCityMailRequest.Cityid); citys.MCEmail = chnageCityMailRequest.MCEmail; citys.FcciEmail = chnageCityMailRequest.FCCIEmail; db.Entry(citys).State = System.Data.Entity.EntityState.Modified; await db.SaveChangesAsync(); Responce.ResponeContent = true; } } catch (Exception ex) { Responce.Success = false; Responce.ResponeContent = false; Responce.Message = $"ERROR UpdateCityMail :{ex.InnerException}"; } return(Responce); }
public HttpResponseMessage GetComplaintlist() { var SSCEntities = new SSCEntities(); DataTable dt = SSCEntities.ComplaintList.OrderByDescending(item => item.CreateDate).ToList().ToDataTable(); //Convert the rendering of the gridview to a string representation StringWriter sw = new StringWriter(); HtmlTextWriter htw = new HtmlTextWriter(sw); GridView gv = new GridView(); gv.DataSource = dt; gv.DataBind(); PrepareGridViewForExport(gv); gv.RenderControl(htw); //Open a memory stream that you can use to write back to the response byte[] byteArray = Encoding.ASCII.GetBytes(sw.ToString()); HttpResponseMessage response = Request.CreateResponse(HttpStatusCode.OK); response.Content = new ByteArrayContent(byteArray); response.Content.Headers.ContentDisposition = new System.Net.Http.Headers.ContentDispositionHeaderValue("attachment"); response.Content.Headers.ContentDisposition.FileName = "Complaints-" + DateTime.Now.ToString("yyyyMMddHHmm") + ".xls"; response.Content.Headers.ContentType = new MediaTypeHeaderValue("application/vnd.ms-excel"); return(response); }
public static AspNetUsers GetUserName(string UserId) { using (SSCEntities db = new SSCEntities()) { var user = db.AspNetUsers.Find(UserId); return(user); } }
public ActionResult ComplaintEmail(int Id) { SSCEntities = new SSCEntities(); var complaints = SSCEntities.Complaints.Find(Id); if (complaints != null) { return(View(complaints)); } return(RedirectToAction("Error", "Home")); }
public async Task <IHttpActionResult> UpdateUserInfo(UpdateUserInfoRequest model) { Responce <UserInfoViewModel> responce = new Responce <UserInfoViewModel>(); responce.Success = true; try { string City = ""; string UserId = ""; #pragma warning disable CS0219 // The variable 'CityId' is assigned but its value is never used string CityId = ""; #pragma warning restore CS0219 // The variable 'CityId' is assigned but its value is never used string Name = ""; string PhoneNumber = ""; var UserRole = await UserManager.GetRolesAsync(User.Identity.GetUserId()); //IdentityUser user = await UserManager.FindByIdAsync(model.UserId); using (SSCEntities db = new SSCEntities()) { var AspNetUser = db.AspNetUsers.Find(model.UserId); AspNetUser.City = model.City; AspNetUser.Name = model.Name; AspNetUser.PhoneNumber = model.PhoneNumber; AspNetUser.CityId = model.CityId; db.Entry(AspNetUser).State = System.Data.Entity.EntityState.Modified; await db.SaveChangesAsync(); City = AspNetUser.City; UserId = AspNetUser.Id; PhoneNumber = AspNetUser.PhoneNumber; Name = AspNetUser.Name; responce.ResponeContent = new UserInfoViewModel { Email = AspNetUser.Email, City = City, UserId = UserId, PhoneNumber = PhoneNumber, Name = Name, UserRole = UserRole.FirstOrDefault() }; } return(Ok(responce)); } catch (Exception ex) { return(BadRequest(ex.Message)); } }
public Responce <List <AppUsersDTO> > GetUsersListByCity(MobileRequest mobileRequest) { Responce <List <AppUsersDTO> > responce = new Responce <List <AppUsersDTO> >(); List <AppUsersDTO> appUsersDTO = new List <AppUsersDTO>(); try { responce.Success = true; using (SSCEntities db = new SSCEntities()) { List <UserDetailWithRole> UserList = new List <UserDetailWithRole>(); var Users = db.AspNetUsers.Find(mobileRequest.UserId); var UserRoles = db.GetUserRole(mobileRequest.UserId).FirstOrDefault().UserRole; bool UsersCityAdded = false; foreach (Citys city in db.Citys.Where(a => a.AdminEmail == Users.UserName || UserRoles.Equals("Site Admin")).ToList()) { if (Users.City.ToLower() == city.CityName.ToLower()) { UsersCityAdded = true; } UserList = UserList.Concat(db.UserDetailWithRole.Where(a => a.City.ToLower() == city.CityName.ToLower()).ToList()).ToList(); } if (!UsersCityAdded) { UserList = UserList.Concat(db.UserDetailWithRole.Where(a => a.City.ToLower() == Users.City.ToLower()).ToList()).ToList(); } appUsersDTO = UserList?.Select(a => new AppUsersDTO() { Id = a.Id, Name = a.Name, Email = a.Email, City = a.City, Phone = a.Phonenumber, RoleId = a.RoleId, UserRole = a.UserRole }).ToList(); //var Users = db.AspNetUsers.Find(mobileRequest.UserId); //appUsersDTO = db.UserDetailWithRole.Where(a => a.City.ToLower() == Users.City.ToLower())?.Select(a => new AppUsersDTO() { Id = a.Id, Name = a.Name, Email = a.Email, City = a.City, Phone = a.Phonenumber, RoleId = a.RoleId, UserRole = a.UserRole }).ToList(); responce.ResponeContent = appUsersDTO; } } catch (Exception ex) { responce.Success = false; responce.Message = $"ERROR GetUsersList : {ex.InnerException}"; responce.ResponeContent = appUsersDTO; } return(responce); }
public async Task <IHttpActionResult> SendMail(MobileRequest mobileRequest) { Boolean EmailTest = false; string EmailTestTo = "*****@*****.**"; if (ConfigurationManager.AppSettings.AllKeys.Contains("EmailTest")) { EmailTest = Convert.ToBoolean(ConfigurationManager.AppSettings["EmailTest"].ToString()); } if (ConfigurationManager.AppSettings.AllKeys.Contains("EmailTestTo")) { EmailTestTo = ConfigurationManager.AppSettings["EmailTestTo"].ToString(); } Responce <List <bool> > responce = new Responce <List <bool> >(); responce.Success = true; try { using (var SSCEntities = new SSCEntities()) { var complaints = SSCEntities.Complaints.Find(mobileRequest.Id); if (complaints != null && complaints.IsEmailSend == false) { await SendMailMethod(complaints, EmailTest?EmailTestTo : complaints.Citys.FcciEmail); await SendMailMethod(complaints, EmailTest?EmailTestTo : complaints.Citys.MCEmail); complaints.IsEmailSend = true; complaints.ComplainStatus = (int)ComplaintStatusEnum.Registered; SSCEntities.Entry(complaints).State = System.Data.Entity.EntityState.Modified; await SSCEntities.SaveChangesAsync(); } } } #pragma warning disable CS0168 // The variable 'ex' is declared but never used catch (Exception ex) #pragma warning restore CS0168 // The variable 'ex' is declared but never used { responce.Success = false; } return(Ok(responce)); }
public async Task <UserInfoViewModel> GetUserInfoAsync() { ExternalLoginData externalLogin = ExternalLoginData.FromIdentity(User.Identity as ClaimsIdentity); string City = ""; string UserId = ""; #pragma warning disable CS0219 // The variable 'CityId' is assigned but its value is never used string CityId = ""; #pragma warning restore CS0219 // The variable 'CityId' is assigned but its value is never used string Name = ""; string PhoneNumber = ""; var Email = User.Identity.GetUserName(); var UserRole = await UserManager.GetRolesAsync(User.Identity.GetUserId()); using (SSCEntities db = new SSCEntities()) { var User = db.AspNetUsers.Where(a => a.UserName == Email)?.FirstOrDefault(); if (User != null) { City = User.City; UserId = User.Id; PhoneNumber = User.PhoneNumber; Name = User.Name; } } return(new UserInfoViewModel { Email = User.Identity.GetUserName(), HasRegistered = externalLogin == null, LoginProvider = externalLogin != null ? externalLogin.LoginProvider : null, City = City, UserId = UserId, PhoneNumber = PhoneNumber, Name = Name, UserRole = UserRole.FirstOrDefault() }); }
public Responce <bool> UpdateUserRole(UpdateUserRoleRequest request) { Responce <bool> responce = new Responce <bool>(); responce.Success = true; try { responce.Success = true; using (SSCEntities db = new SSCEntities()) { db.UpdateUserRole(request.RoleId, request.UserId); responce.ResponeContent = true; } } catch (Exception ex) { responce.Success = false; responce.Message = $"ERROR UpdateUserRole : {ex.InnerException}"; responce.ResponeContent = false; } return(responce); }
#pragma warning disable CS1998 // This async method lacks 'await' operators and will run synchronously. Consider using the 'await' operator to await non-blocking API calls, or 'await Task.Run(...)' to do CPU-bound work on a background thread. public async Task <Responce <List <ComplaintsDTO> > > GetComplaint(MobileRequest mobileRequest) #pragma warning restore CS1998 // This async method lacks 'await' operators and will run synchronously. Consider using the 'await' operator to await non-blocking API calls, or 'await Task.Run(...)' to do CPU-bound work on a background thread. { Responce <List <ComplaintsDTO> > Responce = new Responce <List <ComplaintsDTO> >(); Responce.Success = true; try { List <ComplaintsDTO> Complaints = new List <ComplaintsDTO>(); List <Complaints> ComplaintsList = new List <Complaints>(); using (SSCEntities db = new SSCEntities()) { if (mobileRequest.Id != 0) { var Getcomplaintbyid = db.Complaints.Find(mobileRequest.Id); if (Getcomplaintbyid != null) { ComplaintsList.Add(Getcomplaintbyid); } } else { var UserCity = db.AspNetUsers.Find(mobileRequest.Username).City; var UserName = db.AspNetUsers.Find(mobileRequest.Username).UserName; var CityId = db.Citys.Where(a => a.CityName.ToLower().Equals(UserCity.ToLower()))?.FirstOrDefault().Id; var UserRoles = db.GetUserRole(mobileRequest.Username).FirstOrDefault().UserRole; switch (UserRoles) { case "Volunteer": ComplaintsList = db.Complaints.Where(a => a.UserId.Trim().ToLower() == mobileRequest.Username.Trim().ToLower()).ToList(); break; case "Controller": ComplaintsList = db.Complaints.Where(a => a.City == CityId).ToList(); break; case "Admin": foreach (Citys city in db.Citys.Where(a => a.AdminEmail == UserName || a.Id == CityId).ToList()) { ComplaintsList = ComplaintsList.Concat(db.Complaints.Where(a => a.City == city.Id).ToList()).ToList(); } break; case "Site Admin": ComplaintsList = db.Complaints.ToList(); break; } //if (UserRoles.Equals("Volunteer")) //{ //ComplaintsList = db.Complaints.Where(a=>a.City==CityId && a.UserId.Trim().ToLower()== mobileRequest.Username.Trim().ToLower()).ToList(); //} //else //{ // ComplaintsList = db.Complaints.Where(a => a.City == CityId).ToList(); //} } Complaints = ComplaintsList?.Select(a => a.MapComplaintsToDTO()).OrderByDescending(a => a.ModifiedDate).OrderBy(a => a.ComplainStatus).ToList(); Responce.ResponeContent = Complaints; } } catch (Exception ex) { Responce.Success = false; Responce.Message = $"ERROR GetComplaint :{ex.ToString()}"; } return(Responce); }
public CityService() { SSCEntities = new SSCEntities(); }
public async Task <Responce <bool> > UpsertCity(CityDTO model) { Responce <bool> Responce = new Responce <bool>(); Responce.Success = true; try { using (var db = new SSCEntities()) { if (model.IsCreate) { } else { } var IsAdminEmailExist = db.AspNetUsers.Where(a => a.Email.ToLower() == model.AdminEmail.ToLower())?.ToList(); if (IsAdminEmailExist.Count > 0) { DateTime dateTime = DateTime.UtcNow; Citys citys = db.Citys.Find(model.Id) ?? new Citys(); citys.MCEmail = model.MCEmail; citys.FcciEmail = model.FcciEmail; citys.CityName = model.CityName; citys.IsActive = model.IsActive; citys.AdminEmail = model.AdminEmail; if (citys.Id == 0) { citys.CreatedBy = model.CreatedBy; citys.CreatedDate = dateTime; citys.ModifiedBy = model.ModifiedBy; citys.ModifiedDate = dateTime; db.Entry(citys).State = System.Data.Entity.EntityState.Added; await db.SaveChangesAsync(); } else { citys.ModifiedBy = model.ModifiedBy; citys.ModifiedDate = dateTime; citys.ModifiedBy = model.ModifiedBy; citys.ModifiedDate = DateTime.UtcNow; db.Entry(citys).State = System.Data.Entity.EntityState.Modified; await db.SaveChangesAsync(); } Responce.ResponeContent = true; } else { Responce.ResponeContent = false; Responce.Success = false; Responce.Message = "Admin email is not register"; } } } catch (Exception ex) { Responce.Success = false; Responce.ResponeContent = false; Responce.Message = $"ERROR UpsertCity :{ex.InnerException}"; } return(Responce); }
public async Task <IHttpActionResult> CreateCity(CityDTO citydto) { Responce <bool> responce = new Responce <bool>(); try { var IsUserExist = await UserManager.FindByNameAsync(citydto.AdminEmail); if (IsUserExist != null) { var Errors = "User email already registered."; responce.Fail(Errors); responce.ResponeContent = false; return(Content(HttpStatusCode.BadRequest, responce)); } using (var db = new SSCEntities()) { var CheckCity = db.Citys.Where(a => a.CityName.ToLower() == citydto.CityName.ToLower())?.ToList() ?? new List <Citys>(); if (CheckCity.Count > 0) { responce.ResponeContent = false; responce.Success = false; responce.Message = "City already added"; return(Content(HttpStatusCode.BadRequest, responce)); } DateTime dateTime = DateTime.UtcNow; Citys citys = new Citys(); citys.MCEmail = citydto.MCEmail; citys.FcciEmail = citydto.FcciEmail; citys.CityName = citydto.CityName; citys.IsActive = citydto.IsActive; citys.AdminEmail = citydto.AdminEmail; citys.CreatedBy = citydto.CreatedBy; citys.CreatedDate = dateTime; citys.ModifiedBy = citydto.ModifiedBy; citys.ModifiedDate = dateTime; db.Entry(citys).State = System.Data.Entity.EntityState.Added; await db.SaveChangesAsync(); var lows = db.Lows.ToList(); SSCEntities sscEntities = new SSCEntities(); foreach (var item in lows) { CityLows cityLows = new CityLows(); cityLows.Id = citys.Id; cityLows.LowId = item.Id; sscEntities.Entry(cityLows).State = System.Data.Entity.EntityState.Added; await sscEntities.SaveChangesAsync(); } var user = new ApplicationUser() { UserName = citydto.AdminEmail, Email = citydto.AdminEmail, City = citydto.CityName, PhoneNumber = citydto.MobileNo, Name = citydto.UserName, IsDefaultAdmin = true, CityId = citys.Id }; IdentityResult result = await UserManager.CreateAsync(user, citydto.Password); if (!result.Succeeded) { var Errors = GetIdentityErrorResult(result); responce.Fail(Errors); responce.ResponeContent = false; return(Content(HttpStatusCode.BadRequest, responce)); } db.UpdateUserRole("989D2937-0FC5-497D-980C-B2E8583602B9", user.Id); responce.ResponeContent = true; responce.Success = true; } return(Ok(responce)); } catch (Exception ex) { return(BadRequest(ex.Message)); } }
public async Task <IHttpActionResult> Register(RegisterRequest model) { Responce <RegistrationDTO> responce = new Responce <RegistrationDTO>(); int CityId = 0; responce.Success = true; RegistrationDTO registrationDTO = new RegistrationDTO(); if (!ModelState.IsValid) { var Errors = GetModelStateError(ModelState); responce.Fail(Errors); return(Content(HttpStatusCode.BadRequest, responce)); } SSCEntities db = new SSCEntities(); if (model.Cityid == 0) { var UserCity = db.Citys.Where(a => a.CityName.ToLower() == model.City.ToLower()).FirstOrDefault(); CityId = UserCity.Id; } else { CityId = model.Cityid; } //var UserCity = db.Citys.Where(a => a.CityName.ToLower() == model.City.ToLower()).FirstOrDefault(); var user = new ApplicationUser() { UserName = model.Email, Email = model.Email, City = model.City, PhoneNumber = model.PhoneNumber, Name = model.Name, CityId = CityId }; IdentityResult result = await UserManager.CreateAsync(user, model.Password); if (!result.Succeeded) { var Errors = GetIdentityErrorResult(result); responce.Fail(Errors); return(Content(HttpStatusCode.BadRequest, responce)); } else { IdentityResult assignroleresult = await UserManager.AddToRoleAsync(user.Id, "Volunteer"); if (!assignroleresult.Succeeded) { var Errors = GetIdentityErrorResult(assignroleresult); responce.Fail(Errors); return(Content(HttpStatusCode.BadRequest, responce)); } else { registrationDTO.Name = user.Name; registrationDTO.Email = user.Email; registrationDTO.City = user.City; registrationDTO.PhoneNumber = user.PhoneNumber; registrationDTO.Password = model.Password; responce.ResponeContent = registrationDTO; } } return(Ok(responce)); }
public async Task <IHttpActionResult> UpdateCity(CityDTO citydto) { Responce <bool> responce = new Responce <bool>(); try { using (var db = new SSCEntities()) { var CheckCity = db.Citys.Find(citydto.Id); if (CheckCity == null) { responce.ResponeContent = false; responce.Success = false; responce.Message = "This city should not exist"; return(Content(HttpStatusCode.BadRequest, responce)); } var GetDefaultCityAdminUser = db.AspNetUsers.Where(a => a.IsDefaultAdmin == true && a.CityId == citydto.Id)?.FirstOrDefault(); if (GetDefaultCityAdminUser != null) { var appUser = await UserManager.FindByNameAsync(GetDefaultCityAdminUser.UserName); if (appUser != null) { if (appUser.UserName.ToLower() != citydto.AdminEmail.ToLower()) { appUser.UserName = citydto.AdminEmail; appUser.Email = citydto.AdminEmail; //appUser.City = citydto.CityName; //appUser.CityId = citydto.Id; IdentityResult result = await UserManager.UpdateAsync(appUser); if (!result.Succeeded) { var Errors = GetIdentityErrorResult(result); responce.Fail(Errors); responce.ResponeContent = false; return(Content(HttpStatusCode.BadRequest, responce)); } } } } DateTime dateTime = DateTime.UtcNow; Citys citys = CheckCity; citys.MCEmail = citydto.MCEmail; citys.FcciEmail = citydto.FcciEmail; citys.CountryId = citydto.CountryId ?? 1; citys.CityName = citydto.CityName; citys.IsActive = citydto.IsActive; citys.AdminEmail = citydto.AdminEmail; citys.ModifiedBy = citydto.ModifiedBy; citys.ModifiedDate = dateTime; db.Entry(citys).State = System.Data.Entity.EntityState.Modified; await db.SaveChangesAsync(); List <AspNetUsers> aspNetUsers = new List <AspNetUsers>(); aspNetUsers = db.AspNetUsers.Where(a => a.CityId == citys.Id).ToList(); foreach (var item in aspNetUsers) { item.City = citys.CityName; db.Entry(item).State = System.Data.Entity.EntityState.Modified; await db.SaveChangesAsync(); } responce.Success = true; responce.ResponeContent = true; } return(Ok(responce)); } catch (Exception ex) { return(BadRequest(ex.Message)); } }
public LowService() { SSCEntities = new SSCEntities(); }
public ComplaintService() { SSCEntities = new SSCEntities(); }
public SpeciesService() { SSCEntities = new SSCEntities(); }
public async Task <Responce <ComplaintsDTO> > SaveComplaint(HttpRequest complaintRequest, string UserName) { Responce <ComplaintsDTO> Responce = new Responce <ComplaintsDTO>(); Responce.Success = true; try { using (SSCEntities = new SSCEntities()) { Complaints complaints = new Complaints(); int Id = Convert.ToInt32(complaintRequest.Form["Id"]); var Cityid = Convert.ToInt32(complaintRequest.Form["Cityid"]); var SpeciesId = Convert.ToInt32(complaintRequest.Form["SpeciesId"]); complaints.City = Cityid; complaints.Id = Id; if (complaints.Id != 0) { complaints = SSCEntities.Complaints.Find(Id); var ComplaintLows = complaints.ComplaintsLows; var ComplaintImages = complaints.ComplaintImages; SSCEntities.ComplaintsLows.RemoveRange(ComplaintLows); SSCEntities.ComplaintImages.RemoveRange(ComplaintImages); await SSCEntities.SaveChangesAsync(); } complaints.SpeciesId = SpeciesId; complaints.ShopName = Convert.ToString(complaintRequest.Form["ShopName"]); complaints.ShopAddress = Convert.ToString(complaintRequest.Form["ShopAddress"]); complaints.DateOfInspection = Convert.ToDateTime(complaintRequest.Form["DateOfInspection"]); complaints.Comments = Convert.ToString(complaintRequest.Form["Comments"]); complaints.Violations = Convert.ToString(complaintRequest.Form["Violations"]); complaints.GpsLocations = Convert.ToString(complaintRequest.Form["GpsLocations"]); complaints.UserId = Convert.ToString(complaintRequest.Form["UserId"]); complaints.ComplainStatus = Convert.ToInt32(complaintRequest.Form["ComplainStatus"]); complaints.GroupName = Convert.ToString(complaintRequest.Form["GroupName"]); complaints.IsDelete = Convert.ToBoolean(complaintRequest.Form["IsDelete"]); complaints.IsActive = Convert.ToBoolean(complaintRequest.Form["IsActive"]); complaints.ModifiedBy = UserName ?? Convert.ToString(complaintRequest.Form["UserId"]); complaints.ModifiedDate = DateTime.UtcNow; complaints.IsRejecet = Convert.ToBoolean(complaintRequest.Form["IsRejecet"]); complaints.CommentForRejection = Convert.ToString(complaintRequest.Form["CommentForRejection"]); complaints.RegistrationDate = Convert.ToDateTime(complaintRequest.Form["RegistrationDate"]); complaints.IsRegister = Convert.ToBoolean(complaintRequest.Form["IsRegister"]); complaints.IsEmailSend = Convert.ToBoolean(complaintRequest.Form["IsEmailSend"]); if (complaints.Id != 0) { SSCEntities.Entry(complaints).State = EntityState.Modified; } else { complaints.CreatedBy = UserName ?? Convert.ToString(complaintRequest.Form["UserId"]); complaints.CreatedDate = DateTime.UtcNow; SSCEntities.Complaints.Add(complaints); } await SSCEntities.SaveChangesAsync(); var LowsIds = Convert.ToString(complaintRequest.Form["LowIds"]).Split(','); if (LowsIds.Count() > 0) { foreach (var item in LowsIds) { ComplaintsLows complaintsLows = new ComplaintsLows(); complaintsLows.LowId = Convert.ToInt32(item); complaintsLows.ComplaintId = complaints.Id; SSCEntities.ComplaintsLows.Add(complaintsLows); await SSCEntities.SaveChangesAsync(); } } if (complaintRequest.Files != null) { if (complaintRequest.Files.Count > 0) { for (int i = 0; i < complaintRequest.Files.Count; i++) { if (complaintRequest.Files[i].ContentLength > 0) { ComplaintImages complaintsImages = new ComplaintImages(); string extension = Path.GetExtension(complaintRequest.Files[i].FileName); bool isImage = Functions.IsImage(complaintRequest.Files[i].FileName); string ContentType = complaintRequest.Files[i].ContentType; string[] bloburi = AzureStore.UploadFile(complaintRequest.Files[i].InputStream, complaintRequest.Files[i].FileName, ContentType, isImage, extension); complaintsImages.ComplaintId = complaints.Id; complaintsImages.Imagetype = extension; complaintsImages.ImageUrl = bloburi[0]; complaintsImages.CreatedDate = DateTime.UtcNow; complaintsImages.ModifiedDate = DateTime.UtcNow; complaintsImages.CreatedBy = UserName; complaintsImages.ModifiedBy = UserName; SSCEntities.ComplaintImages.Add(complaintsImages); await SSCEntities.SaveChangesAsync(); } } //foreach (string item in complaintRequest.Files) //{ // var postedFile = complaintRequest.Files[item]; // if (!string.IsNullOrEmpty(postedFile.FileName)) // { // ComplaintImages complaintsImages = new ComplaintImages(); // string extension = Path.GetExtension(postedFile.FileName); // } // i = i + 1; //} } } ComplaintsDTO complaintsdto = new ComplaintsDTO(); SSCEntities db = new SSCEntities(); var saveComplaintobj = db.Complaints.Find(complaints.Id); complaintsdto = saveComplaintobj.MapComplaintsToDTO(); Responce.ResponeContent = complaintsdto; } } catch (Exception ex) { Responce.Success = false; Responce.Message = $"ERROR SaveComplaint :{ex.ToString()}"; } return(Responce); }
public ActionResult SendEmail(int Id) { SSCEntities = new SSCEntities(); var complaints = SSCEntities.Complaints.Find(Id); if (complaints != null) { WebClient client = new WebClient(); string EmailBodyURL = Url.Action("ComplaintEmail", "Home", new { Id = Id }); EmailBodyURL = new Uri(Request.Url, Url.Content("~/" + EmailBodyURL)).ToString(); string EmailBody = client.DownloadString(EmailBodyURL); string EmailSubject = $"Immediate action required against illegal meat shops in {complaints.ShopAddress}"; //string ToAddress = "*****@*****.**"; string ToAddress = "*****@*****.**"; string FromAddress = "*****@*****.**"; string CCAddress = ""; string smtp = ConfigurationManager.AppSettings["smtp"].ToString(); string smtplogin = ConfigurationManager.AppSettings["smtplogin"].ToString(); string smtppwd = ConfigurationManager.AppSettings["smtppwd"].ToString(); int port = Convert.ToInt16(ConfigurationManager.AppSettings["smtpport"].ToString()); MailMessage mail = new MailMessage(); mail.IsBodyHtml = true; mail.From = new MailAddress(FromAddress); foreach (string address in ToAddress.Split(';')) { mail.To.Add(address); } if (CCAddress != "") { foreach (string address in CCAddress.Split(';')) { mail.CC.Add(address); } } mail.Subject = EmailSubject; mail.Body = EmailBody; mail.Priority = MailPriority.High; try { int cnt = 1; foreach (var item in complaints.ComplaintImages) { WebRequest req = WebRequest.Create(item.ImageUrl); string Contanttype = ".jpg"; string Extension = common.GetMimeType(Contanttype); WebResponse response = req.GetResponse(); Stream stream = response.GetResponseStream(); mail.Attachments.Add(new Attachment(stream, "File" + cnt + Contanttype, Extension)); cnt++; } } #pragma warning disable CS0168 // The variable 'ex' is declared but never used catch (Exception ex) #pragma warning restore CS0168 // The variable 'ex' is declared but never used { } SmtpClient Smtpclient = new SmtpClient(smtp, port); Smtpclient.UseDefaultCredentials = false; Smtpclient.Credentials = new System.Net.NetworkCredential(smtplogin, smtppwd); Smtpclient.DeliveryMethod = SmtpDeliveryMethod.Network; Smtpclient.Send(mail); return(RedirectToAction("ComplaintEmail", new { Id = complaints.Id })); } return(RedirectToAction("Error", "Home")); }