public ActionResult RegistryAgency(int Id) { Models.UserModel model = new Models.UserModel(); LoadDataPersonalInfo(Id, ref model); // Lấy số vùng hoạt động. var role = roleService.GetByCode("AgencyOnline"); ListUserInRegionModel listUir = new ListUserInRegionModel(); // Lấy thông tin vùng gửi listUir.regionNum = role.SendRegionNum; listUir.ListUserInRegion = GetListUserInRegion(model.Id, role.SendRegionNum, 1); listUir.region_city = listUir.ListUserInRegion.Select(x => x.CityId).ToArray(); listUir.region_district = listUir.ListUserInRegion.Select(x => x.DistrictId).ToArray(); listUir.region_ward = listUir.ListUserInRegion.Select(x => x.WardId).ToArray(); model.ListUserInRegionSend = listUir; listUir = new ListUserInRegionModel(); // Lấy thông tin vùng nhận. listUir.regionNum = role.ResiveRegionNum; listUir.ListUserInRegion = GetListUserInRegion(model.Id, role.ResiveRegionNum, 2); listUir.region_city = listUir.ListUserInRegion.Select(x => x.CityId).ToArray(); listUir.region_district = listUir.ListUserInRegion.Select(x => x.DistrictId).ToArray(); listUir.region_ward = listUir.ListUserInRegion.Select(x => x.WardId).ToArray(); model.ListUserInRegionReceive = listUir; return(View(model)); }
public ActionResult RegistryAgency(Models.UserModel model) { // Cập nhật trạng thái môi giới var role = roleService.GetByCode("AgencyOnline"); if (ModelState.IsValid) { // Kiểm tra vùng đăng ký môi giới. if (!CheckRegionAgency(model)) { LoadDataPersonalInfo(model.Id, ref model); return(View("RegistryAgency", model)); } // Cập nhật thông tin cá nhân. UpdatePersional(model); // Cập nhật vùng. UpdateRegionAgency(model); // Xóa trạng thái hiện tại userInRoleService.Delete(model.Id); UserInRole uir = new UserInRole(); uir.UserId = model.Id; uir.RolesId = role.Id; uir.State = true; userInRoleService.Insert(uir); // Send email Uri uri = Request.Url; string urlHost = uri.GetLeftPart(UriPartial.Authority); Entities.User u = userService.GetById(model.Id); if (MailHelper.MailRegisterAgency(u, urlHost, u.CodeActive)) { UserInRole userInRole = new UserInRole(); userInRole.UserId = u.Id; userInRole.State = false; userInRole.RolesId = (int)Roles.Agency_Online; userInRoleService.Insert(userInRole); return(View("RegistrySuccess")); } LoadDataPersonalInfo(model.Id, ref model); ListUserInRegionModel listUir = new ListUserInRegionModel(); // Lấy thông tin vùng gửi listUir.regionNum = role.SendRegionNum; listUir.ListUserInRegion = GetListUserInRegion(model.Id, role.SendRegionNum, 1); listUir.region_city = listUir.ListUserInRegion.Select(x => x.CityId).ToArray(); listUir.region_district = listUir.ListUserInRegion.Select(x => x.DistrictId).ToArray(); listUir.region_ward = listUir.ListUserInRegion.Select(x => x.WardId).ToArray(); model.ListUserInRegionSend = listUir; listUir = new ListUserInRegionModel(); // Lấy thông tin vùng nhận. listUir.regionNum = role.ResiveRegionNum; listUir.ListUserInRegion = GetListUserInRegion(model.Id, role.ResiveRegionNum, 2); listUir.region_city = listUir.ListUserInRegion.Select(x => x.CityId).ToArray(); listUir.region_district = listUir.ListUserInRegion.Select(x => x.DistrictId).ToArray(); listUir.region_ward = listUir.ListUserInRegion.Select(x => x.WardId).ToArray(); model.ListUserInRegionReceive = listUir; } else { var errors = ModelState.Values.SelectMany(v => v.Errors).Select(x => x.ErrorMessage); ModelState.AddModelError(string.Empty, string.Join(", ", errors)); TempData[AdminConfigs.TEMP_MESSAGE] = "Có lỗi trong quá trình cập nhật! Vui lòng xem lại các thông tin bắt buộc nhập!"; LoadDataPersonalInfo(model.Id, ref model); } ListUserInRegionModel listUirTemp = new ListUserInRegionModel(); // Lấy thông tin vùng gửi listUirTemp.regionNum = role.SendRegionNum; listUirTemp.ListUserInRegion = GetListUserInRegion(model.Id, role.SendRegionNum, 1); listUirTemp.region_city = listUirTemp.ListUserInRegion.Select(x => x.CityId).ToArray(); listUirTemp.region_district = listUirTemp.ListUserInRegion.Select(x => x.DistrictId).ToArray(); listUirTemp.region_ward = listUirTemp.ListUserInRegion.Select(x => x.WardId).ToArray(); model.ListUserInRegionSend = listUirTemp; listUirTemp = new ListUserInRegionModel(); // Lấy thông tin vùng nhận. listUirTemp.regionNum = role.ResiveRegionNum; listUirTemp.ListUserInRegion = GetListUserInRegion(model.Id, role.ResiveRegionNum, 2); listUirTemp.region_city = listUirTemp.ListUserInRegion.Select(x => x.CityId).ToArray(); listUirTemp.region_district = listUirTemp.ListUserInRegion.Select(x => x.DistrictId).ToArray(); listUirTemp.region_ward = listUirTemp.ListUserInRegion.Select(x => x.WardId).ToArray(); model.ListUserInRegionReceive = listUirTemp; return(View("RegistryAgency", model)); }