public ActionResult Create([Bind(Include = "CustomerId,FirstName,EmailID,CompanyName,CompanyAddress,AboutCompany,OtherInformation,SelectedEquiments,LocationLists,VisionMission,LogoPath,BusinessBrochureUrl")] CustomerModel CustomerModel, FormCollection form, HttpPostedFileBase file1, HttpPostedFileBase file2) { UserPermissionAction("vendor", RoleAction.create.ToString()); CheckPermission(); string CustomerID = "-1"; int UserID = 0; int CompanyID = 0; CustomerModel.CompanyAddress = "qq"; try { if (ModelState.IsValid) { //var Location = form["LocationLists"].ToString(); Mapper.CreateMap <Onlo.Models.CustomerModel, Onlo.Entity.Customer>(); Onlo.Entity.Customer Customer = Mapper.Map <Onlo.Models.CustomerModel, Onlo.Entity.Customer>(CustomerModel); Customer customerFound = _CustomerService.GetCustomers().Where(x => x.EmailId == Customer.EmailId).FirstOrDefault(); if (customerFound == null) { string EmailId = Customer.EmailId; string FirstName = CustomerModel.FirstName; string Password = CustomerModel.Password; if (CustomerModel.FirstName == "" || CustomerModel.FirstName == null) { FirstName = Customer.EmailId.Split('@')[0].Trim(); } Customer.CompanyID = 1; //There is no session in API Controller. So we will find solution in future Customer.Address = ""; Customer.MobileNo = ""; Customer.ZipCode = ""; Customer.PhotoPath = ""; //Insert User first Onlo.Entity.User user = new Onlo.Entity.User(); //user.UserId =0; //New Case user.FirstName = CustomerModel.FirstName; user.LastName = Customer.LastName; user.UserName = CustomerModel.FirstName;; user.Password = SecurityFunction.EncryptString(FirstName + "@123"); //user.Password = SecurityFunction.EncryptString(Password); user.UserEmailAddress = EmailId; user.CompanyID = Customer.CompanyID; user.CreatedOn = DateTime.Now; user.LastUpdatedOn = DateTime.Now; user.IsActive = true; _UserService.InsertUser(user); //End : Insert User firstss UserID = user.UserId; if (user.UserId > 0) { //Insert User Role Onlo.Entity.UserRole userRole = new Onlo.Entity.UserRole(); userRole.UserId = user.UserId; userRole.RoleId = 3; //By Default set new Customer/user role id=3 _UserRoleService.InsertUserRole(userRole); //End : Insert User Role //Insert the Customer Customer.FirstName = FirstName; Customer.UserId = user.UserId; Customer.MobileVerifyCode = CommonClass.GetNumericCode(); Customer.EmailVerifyCode = CommonClass.GetNumericCode(); if (CustomerModel.IsEmailVerified != null) { Customer.IsEmailVerified = CustomerModel.IsEmailVerified; } else { Customer.IsEmailVerified = false; } if ((CustomerModel.PhotoPath != null) && (CustomerModel.PhotoPath != "")) { if (!CustomerModel.PhotoPath.Contains('.')) { Customer.PhotoPath = CommonClass.SaveImage(CustomerModel.PhotoPath, "CustomerPhoto", ".png");//SaveImage(CustomerModel.PhotoPath); } } // Customer.RoleType = EnumValue.GetEnumDescription(EnumValue.RoleType.Manufacturer); Customer.IsActive = true; Customer.SubscriptionStartDate = DateTime.Now; Customer.SubscriptionEndDate = DateTime.UtcNow.AddMonths(1); _CustomerService.InsertCustomer(Customer); CustomerID = Convert.ToString(Customer.CustomerId); if (CustomerID != null) { var Customers = _CustomerService.GetCustomers().Where(x => x.CustomerId == Convert.ToInt32(CustomerID)); if (Customers != null) { Company Company = new Company(); Company.CompanyName = CustomerModel.CompanyName; Company.AboutCompany = CustomerModel.AboutCompany; Company.CompanyAddress = "aa"; Company.CityID = 0; Company.StateID = 0; Company.CountryID = 39; Company.OtherInformation = CustomerModel.OtherInformation; Company.VisionMission = CustomerModel.VisionMission; if (file1 != null) { var fileExt = Path.GetExtension(file1.FileName); string fileName = Guid.NewGuid() + fileExt; var subPath = Server.MapPath("~/CompanyLogo"); //Check SubPath Exist or Not if (!Directory.Exists(subPath)) { Directory.CreateDirectory(subPath); } //End : Check SubPath Exist or Not var path = Path.Combine(subPath, fileName); var shortPath = "~/CompanyLogo/" + fileName; file1.SaveAs(path); CommonClass.CreateThumbnail(shortPath, 218, 84, false); string URL = CommonClass.GetURL() + "/CompanyLogo/" + fileName; Company.LogoPath = URL; //Company.LogoPath = shortPath; //_CompanyService.UpdateCompany(Company); } if (file2 != null) { var fileExt = Path.GetExtension(file2.FileName); string fileName = Guid.NewGuid() + fileExt; var subPath = Server.MapPath("~/BusinessBrochure"); //Check SubPath Exist or Not if (!Directory.Exists(subPath)) { Directory.CreateDirectory(subPath); } //End : Check SubPath Exist or Not var path = Path.Combine(subPath, fileName); var shortPath = "~/BusinessBrochure/" + fileName; file2.SaveAs(path); CommonClass.CreateThumbnail(shortPath, 218, 84, false); string URL = CommonClass.GetURL() + "/BusinessBrochure/" + fileName; Company.BusinessBrochureUrl = URL; } Company.IsActive = true; _CompanyService.InsertCompany(Company); CompanyID = Convert.ToInt32(Company.CompanyID); //SAVE company// //Insert CompanyEquipments if (CustomerModel.SelectedEquiments != null) { //foreach (var ItemId in CustomerModel.SelectedEquiments) //{ // CompanyEquipment CompanyEquipments = new CompanyEquipment(); // CompanyEquipments.ItemId = Convert.ToInt32(ItemId); // CompanyEquipments.CompanyID = Convert.ToInt32(CompanyID); // _CompanyEquipmentService.InsertCompanyEquipment(CompanyEquipments); //} } //insert CompanyLocation if (CompanyID > 0) { if (CustomerModel.LocationLists != null) { foreach (var Locationlist in CustomerModel.LocationLists) { CompanyLocation companyLocation = new CompanyLocation(); var _location = GoogleOperation.GetLatLong(Locationlist); var lat = _location[0]; var log = _location[1]; var address = Locationlist;//latlong1[2]; companyLocation.CompanyID = CompanyID; companyLocation.Location = address.ToString();//"Latitude":30.71000000,"Longitude":76.69000000 companyLocation.Latitude = Convert.ToDecimal(lat); companyLocation.Longitude = Convert.ToDecimal(log); _CompanyLocationService.InsertCompanyLocation(companyLocation); } } } //End insert CompanyLocation //update company_id in customer table var customers = _CustomerService.GetCustomers().Where(x => x.CustomerId == Convert.ToInt32(CustomerID)); foreach (var custormer in customers) { var customer = _CustomerService.GetCustomer(custormer.CustomerId); customer.CompanyID = CompanyID; _CustomerService.UpdateCustomer(customer); } string UserPassword = SecurityFunction.DecryptString(user.Password); JobScheduler.Registration(Customer.FirstName, Customer.EmailId, UserPassword);// using Scheduler// } TempData["ShowMessage"] = "success"; TempData["MessageBody"] = "Manufacturer is saved successfully."; return(RedirectToAction("Index")); } } } else { TempData["ShowMessage"] = "error"; TempData["MessageBody"] = "vendors is already exists."; } } var errors = ModelState.Where(x => x.Value.Errors.Count > 0).Select(x => new { x.Key, x.Value.Errors }).ToArray(); var modelStateErrors = this.ModelState.Keys.SelectMany(key => this.ModelState[key].Errors); } catch (Exception ex) { var UserRole = _UserRoleService.GetUserRoles().Where(x => x.UserId == UserID).FirstOrDefault(); if (UserRole != null) { _UserRoleService.DeleteUserRole(UserRole); // delete user role } var User = _UserService.GetUsers().Where(x => x.UserId == UserID).FirstOrDefault(); if (User != null) { _UserService.DeleteUser(User); // delete user } string ErrorMsg = ex.Message.ToString(); // ErrorLogging.LogError(ex); } //var Equiment = _IItemService.GetItems(); //CustomerModel.EquimentList = Equiment.Select(x => new SelectListItem { Value = x.ItemId.ToString(), Text = x.ItemName }).ToList(); return(View(CustomerModel)); }
public ActionResult Edit([Bind(Include = "CustomerId,FirstName,EmailID,CompanyName,CompanyAddress,AboutCompany,OtherInformation,SelectedEquiments,LocationLists,VisionMission,LogoPath,BusinessBrochureUrl,CompanyID,UserId,CompanyLocationList")] CustomerModel CustomerModel, FormCollection form, HttpPostedFileBase file1, HttpPostedFileBase file2) { UserPermissionAction("vendor", RoleAction.edit.ToString()); CheckPermission(); //string CustomerID = "-1"; //int UserID = 0; //int CompanyID = 0; CustomerModel.CompanyAddress = "qq"; try { TempData["ShowMessage"] = "error"; TempData["MessageBody"] = "Please fill the required field with valid data"; if (ModelState.IsValid) { //var Location = form["LocationLists"].ToString(); Customer customerFound = _CustomerService.GetCustomers().Where(x => x.EmailId == CustomerModel.EmailID && x.CustomerId != CustomerModel.CustomerId).FirstOrDefault(); Mapper.CreateMap <Onlo.Models.CustomerModel, Onlo.Entity.Customer>(); Onlo.Entity.Customer Customer = Mapper.Map <Onlo.Models.CustomerModel, Onlo.Entity.Customer>(CustomerModel); Company Company = _CompanyService.GetCompanies().Where(x => x.CompanyID == CustomerModel.CompanyID).FirstOrDefault(); if (customerFound == null) { User User = _UserService.GetUsers().Where(x => x.UserEmailAddress == CustomerModel.EmailID && x.UserId != CustomerModel.UserId).FirstOrDefault(); if (User == null) { Customer Customers = _CustomerService.GetCustomers().Where(x => x.CustomerId == CustomerModel.CustomerId).FirstOrDefault(); Customers.FirstName = CustomerModel.FirstName; _CustomerService.UpdateCustomer(Customers); User user = _UserService.GetUsers().Where(x => x.UserId == CustomerModel.UserId).FirstOrDefault(); user.FirstName = CustomerModel.FirstName; _UserService.UpdateUser(user); Company.CompanyName = CustomerModel.CompanyName; Company.AboutCompany = CustomerModel.AboutCompany; Company.VisionMission = CustomerModel.VisionMission; Company.OtherInformation = CustomerModel.OtherInformation; _CompanyService.UpdateCompany(Company); } var shortPath1 = Company.LogoPath; if (file1 != null) { if (Company.LogoPath != null) { string pathDel = Server.MapPath("~/CompanyLogo"); //string pathDel = Server.MapPath(Company.LogoPath); FileInfo objfile = new FileInfo(pathDel); if (objfile.Exists) //check file exsit or not { objfile.Delete(); } } var fileExt = Path.GetExtension(file1.FileName); string fileName = Guid.NewGuid() + fileExt; var subPath = Server.MapPath("~/CompanyLogo"); //Check SubPath Exist or Not if (!Directory.Exists(subPath)) { Directory.CreateDirectory(subPath); } //End : Check SubPath Exist or Not var path = Path.Combine(subPath, fileName); var shortPath = "~/CompanyLogo/" + fileName; file1.SaveAs(path); CommonClass.CreateThumbnail(shortPath, 218, 84, false); string URL = CommonClass.GetURL() + "/CompanyLogo/" + fileName; //driver.PhotoPath = CommonClass.GetURL() + "/DriverPhoto/" + fileName; Company.LogoPath = URL; _CompanyService.UpdateCompany(Company); } var shortPathBrochure = Company.BusinessBrochureUrl; if (file2 != null) { if (Company.LogoPath != null) { string pathDel = Server.MapPath("~/BusinessBrochure"); //string pathDel = Server.MapPath(Company.LogoPath); FileInfo objfile = new FileInfo(pathDel); if (objfile.Exists) //check file exsit or not { objfile.Delete(); } } var fileExt = Path.GetExtension(file2.FileName); string fileName = Guid.NewGuid() + fileExt; var subPath = Server.MapPath("~/BusinessBrochure"); //Check SubPath Exist or Not if (!Directory.Exists(subPath)) { Directory.CreateDirectory(subPath); } //End : Check SubPath Exist or Not var path = Path.Combine(subPath, fileName); var shortPath = "~/BusinessBrochure/" + fileName; file2.SaveAs(path); CommonClass.CreateThumbnail(shortPath, 218, 84, false); string URL = CommonClass.GetURL() + "/BusinessBrochure/" + fileName; //driver.PhotoPath = CommonClass.GetURL() + "/DriverPhoto/" + fileName; Company.BusinessBrochureUrl = URL; _CompanyService.UpdateCompany(Company); } // Update CompanyEquipments //var CompanyEquipment = _CompanyEquipmentService.GetCompanyEquipments().Where(x => x.CompanyID == CustomerModel.CompanyID).AsEnumerable(); //if (CompanyEquipment != null) //{ // foreach (var CompanyEquipments in CompanyEquipment) // { // _CompanyEquipmentService.DeleteCompanyEquipment(CompanyEquipments); // } //} if (CustomerModel.SelectedEquiments != null) { //foreach (var ItemId in CustomerModel.SelectedEquiments) //{ // CompanyEquipment CompanyEquipments = new CompanyEquipment(); // CompanyEquipments.ItemId = Convert.ToInt32(ItemId); // CompanyEquipments.CompanyID = CustomerModel.CompanyID; // _CompanyEquipmentService.InsertCompanyEquipment(CompanyEquipments); //} } var _companyLocation = _CompanyLocationService.GetCompanyLocations().Where(x => x.CompanyID == CustomerModel.CompanyID).AsEnumerable(); if (_companyLocation != null) { foreach (var companyLocations in _companyLocation) { _CompanyLocationService.DeleteCompanyLocation(companyLocations); } } if (CustomerModel.CompanyLocationList != null) { foreach (var Locationlist in CustomerModel.CompanyLocationList) { CompanyLocation companyLocation = new CompanyLocation(); var _location = GoogleOperation.GetLatLong(Locationlist); var lat = _location[0]; var log = _location[1]; var address = Locationlist; //latlong1[2]; companyLocation.CompanyID = CustomerModel.CompanyID; companyLocation.Location = address.ToString(); //"Latitude":30.71000000,"Longitude":76.69000000 companyLocation.Latitude = Convert.ToDecimal(lat); companyLocation.Longitude = Convert.ToDecimal(log); _CompanyLocationService.InsertCompanyLocation(companyLocation); } } TempData["ShowMessage"] = "success"; TempData["MessageBody"] = " Manufacturer update successfully."; return(RedirectToAction("Index")); // end Update CompanyEquipments } else { TempData["ShowMessage"] = "error"; if (customerFound.EmailId.Trim().ToLower() == CustomerModel.EmailID.Trim().ToLower()) //Check User Name { TempData["MessageBody"] = customerFound.EmailId + " already exist."; } else { TempData["MessageBody"] = "Some unknown problem occured while proccessing save operation on "; } } } } catch (Exception ex) { string ErrorMsg = ex.Message.ToString();// ErrorLogging.LogError(ex); } //var companyEquiment = _CompanyEquipmentService.GetCompanyEquipments(); //var item = _IItemService.GetItems(); //var Equiment = _IItemService.GetItems(); //var selected = _CompanyEquipmentService.GetCompanyEquipments().Where(x => x.CompanyID == CustomerModel.CompanyID).Select(x => x.ItemId); //CustomerModel.EquimentList = _IItemService.GetItems().AsEnumerable().Select(c => new SelectListItem { Value = c.ItemId.ToString(), Text = c.ItemName, Selected = selected.Contains(c.ItemId) }).ToList(); return(View(CustomerModel)); }
public HttpResponseMessage SaveComment([FromBody] CommentModel CommentModel) { var taskAssignedToIds = new List <NotifyModel>(); string UserMessage = ""; string NotificationType = ""; string setFlag = ""; try { if (CommentModel.TaskId == 0) { return(Request.CreateResponse(HttpStatusCode.OK, CommonCls.CreateMessage("error", "Task Id is blank."), Configuration.Formatters.JsonFormatter)); } if (CommentModel.CustomerId == 0) { return(Request.CreateResponse(HttpStatusCode.OK, CommonCls.CreateMessage("error", "Customer Id is blank."), Configuration.Formatters.JsonFormatter)); } if (CommentModel.CommentMessage == null && CommentModel.CommentMessage == "") { return(Request.CreateResponse(HttpStatusCode.OK, CommonCls.CreateMessage("error", "Comment Message is blank."), Configuration.Formatters.JsonFormatter)); } Mapper.CreateMap <Onlo.Models.CommentModel, Onlo.Entity.Comment>(); Onlo.Entity.Comment Comment = Mapper.Map <Onlo.Models.CommentModel, Onlo.Entity.Comment>(CommentModel); Comment.CustomerId = CommentModel.CustomerId; Comment.CommentMessage = CommentModel.CommentMessage; Comment.TaskId = CommentModel.TaskId; _CommentService.InsertComment(Comment); var Task = _TasksService.GetTask(CommentModel.TaskId); var customer = _CustomerService.GetCustomer(CommentModel.CustomerId); Onlo.Entity.Customer CustomerBy = _CustomerService.GetCustomer(Convert.ToInt32(CommentModel.CustomerId)); if (CustomerBy.CustomerType == EnumValue.GetEnumDescription(EnumValue.CustomerType.Teacher)) { var taskAssignedToStudent = _TaskCustomerService.GetTaskCustomers().Where(t => t.TaskID == CommentModel.TaskId).ToList(); var ids = taskAssignedToStudent.Select(t => t.CustomerId).ToList(); foreach (var item in ids) { NotifyModel notify = new NotifyModel(); notify.AssignId = item; taskAssignedToIds.Add(notify); } foreach (var item in ids) { NotifyModel notifyy = new NotifyModel(); var taskAssignedToParent = _CustomerService.GetCustomers().Where(c => c.ParentId == item).FirstOrDefault(); if (taskAssignedToParent != null) { notifyy.AssignId = taskAssignedToParent.CustomerId; taskAssignedToIds.Add(notifyy); } } if (Task.TaskType == EnumValue.GetEnumDescription(EnumValue.DietType.Diet)) { UserMessage = "You have new comment on diet - " + Task.TaskName + "."; NotificationType = "Teacher_CommentDiet"; setFlag = "Teacher_DietComment"; } else { UserMessage = "You have new comment on task - " + Task.TaskName + "."; NotificationType = "Teacher_CommentTask"; setFlag = "Teacher_TaskComment"; } } else if (CustomerBy.CustomerType == EnumValue.GetEnumDescription(EnumValue.CustomerType.Student)) { NotifyModel notify = new NotifyModel(); var taskAssignedToParent1 = _CustomerService.GetCustomers().Where(c => c.ParentId == CommentModel.CustomerId).FirstOrDefault(); if (taskAssignedToParent1 != null) { notify.AssignId = taskAssignedToParent1.CustomerId; taskAssignedToIds.Add(notify); } NotifyModel notifyy = new NotifyModel(); var taskAssignedToTeacher1 = _CustomerService.GetCustomers().Where(c => c.CustomerId == customer.ParentId).FirstOrDefault(); notifyy.AssignId = taskAssignedToTeacher1.CustomerId; taskAssignedToIds.Add(notifyy); if (Task.TaskType == EnumValue.GetEnumDescription(EnumValue.DietType.Diet)) { UserMessage = "You have new comment on diet - " + Task.TaskName + "."; NotificationType = "Student_CommentDiet"; setFlag = "Student_DietComment"; } else { UserMessage = "You have new comment on task - " + Task.TaskName + "."; NotificationType = "Student_CommentTask"; setFlag = "Student_TaskComment"; } } else if (CustomerBy.CustomerType == EnumValue.GetEnumDescription(EnumValue.CustomerType.Parent)) { NotifyModel notify = new NotifyModel(); var taskAssignedToStudent2 = _CustomerService.GetCustomers().Where(c => c.CustomerId == customer.ParentId).FirstOrDefault(); notify.AssignId = taskAssignedToStudent2.CustomerId; taskAssignedToIds.Add(notify); NotifyModel notifyy = new NotifyModel(); var taskAssignedToTeacher = _CustomerService.GetCustomers().Where(c => c.CustomerId == taskAssignedToStudent2.ParentId).FirstOrDefault(); if (taskAssignedToTeacher != null) { notifyy.AssignId = taskAssignedToTeacher.CustomerId; taskAssignedToIds.Add(notifyy); } if (Task.TaskType == EnumValue.GetEnumDescription(EnumValue.DietType.Diet)) { UserMessage = "You have new comment on diet - " + Task.TaskName + "."; NotificationType = "Parent_CommentDiet"; setFlag = "Parent_DietComment"; } else { UserMessage = "You have new comment on task - " + Task.TaskName + "."; NotificationType = "Parent_CommentTask"; setFlag = "Parent_TaskComment"; } } foreach (var taskAssignedToId in taskAssignedToIds) { string ApplicationId = _CustomerService.GetCustomerApplicationIds(Convert.ToInt32(taskAssignedToId.AssignId), EnumValue.GetEnumDescription(EnumValue.DeviceType.Android)) + ","; if (ApplicationId != null && ApplicationId != "'',") { Notification Notification = new Notification(); Notification.CustomerId = taskAssignedToId.AssignId; Notification.TaskID = Task.TaskId; Notification.UserMessage = UserMessage; Notification.NotificationType = NotificationType; Notification.Flag = setFlag; Notification.DeviceType = EnumValue.GetEnumDescription(EnumValue.DeviceType.Android); _NotificationService.InsertNotification(Notification); string Message = ""; if (Task.TaskType == EnumValue.GetEnumDescription(EnumValue.DietType.Diet)) { Message = "{\"flag\":\"" + setFlag + "\",\"TaskId\":\"" + Task.TaskId + "\",\"DietName\":\"" + Task.TaskName + "\",\"CommentMsg\":\"" + CommentModel.CommentMessage + "\",\"Name\":\"" + CustomerBy.Name + "\",\"PhotoPath\":\"" + CustomerBy.PhotoPath + "\",\"Id\":\"" + CustomerBy.CustomerId + "\"}"; } else { Message = "{\"flag\":\"" + setFlag + "\",\"TaskId\":\"" + Task.TaskId + "\",\"CommentMsg\":\"" + CommentModel.CommentMessage + "\",\"DietName\":\"" + Task.TaskName + "\",\"Name\":\"" + CustomerBy.Name + "\",\"PhotoPath\":\"" + CustomerBy.PhotoPath + "\",\"Id\":\"" + CustomerBy.CustomerId + "\"}"; } CommonCls.SendGCM_Notifications(ApplicationId, Message, true); } } return(Request.CreateResponse(HttpStatusCode.OK, CommonCls.CreateMessage("success", "Comment added successfully."), Configuration.Formatters.JsonFormatter)); } catch (Exception ex) { string ErrorMsg = ex.Message.ToString(); ErrorLogging.LogError(ex); return(Request.CreateResponse(HttpStatusCode.OK, CommonCls.CreateMessage("error", "Please try later."), Configuration.Formatters.JsonFormatter)); } }