Esempio n. 1
0
        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));
        }
Esempio n. 2
0
        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));
        }