public IActionResult UpdateSimGroup(Guid id, PutSimGroupParam param)
        {
            var simGroup = _userRepository.GetSimGroup(id);

            simGroup.Name = param.Name;
            simGroup.Apn  = param.Apn;
            simGroup.IsolatedNw1IpPool       = param.IsolatedNw1IpPool;
            simGroup.IsolatedNw1IpRange      = param.IsolatedNw1IpRange;
            simGroup.IsolatedNw1SecondaryDns = param.IsolatedNw1SecondaryDns;
            simGroup.IsolatedNw1PrimaryDns   = param.IsolatedNw1PrimaryDns;
            simGroup.PrimaryDns             = param.PrimaryDns;
            simGroup.SecondaryDns           = param.SecondaryDns;
            simGroup.AuthenticationServerIp = param.AuthenticationServerIp;
            simGroup.NasIp          = param.NasIp;
            simGroup.UserNameSuffix = param.UserNameSuffix;
            try
            {
                _userRepository.Update(simGroup);
                return(Ok(_userRepository.GetSimGroup(id)));
            }
            catch (DbUpdateException)
            {
                if (_context.SimGroup.Any(a => a.Id != id && a.Organization.Code == simGroup.Organization.Code && a.Name == simGroup.Name))
                {
                    ModelState.AddModelError(nameof(SimGroup), Messages.Duplicate);
                    return(ValidationProblem(ModelState));
                }
                if (_context.SimGroup.Any(a => a.Id != id && a.Organization.Code == simGroup.Organization.Code && a.IsolatedNw1IpPool == simGroup.IsolatedNw1IpPool))
                {
                    ModelState.AddModelError(nameof(SimGroup), Messages.Duplicate);
                    return(ValidationProblem(ModelState));
                }
                throw;
            }
        }
        public IActionResult UpdateSimGroupMine(Guid id, PutSimGroupParam param)
        {
            var simGroup = _userRepository.GetSimGroup(id);
            var user     = _userRepository.GetEndUser(Guid.Parse(User.Identity.Name));

            if (simGroup.Organization.Code != user.Domain.Organization.Code)
            {
                ModelState.AddModelError("Role", Messages.InvalidRole);
                return(ValidationProblem(modelStateDictionary: ModelState, statusCode: StatusCodes.Status403Forbidden));
            }
            return(UpdateSimGroup(id, param));
        }