Ejemplo n.º 1
0
        //===================================== HELPER METHODS =====================================//

        private async Task <ServiceResponse <UpgradeKey> > UpdateSecureKey(UpdateUpgradeKeyDto keyDto)
        {
            var        response = new ServiceResponse <UpgradeKey>();
            UpgradeKey dalKey   = await _context.UpgradeKeys.FirstOrDefaultAsync(k => k.EMail == keyDto.EMail);

            if (dalKey != null)
            {
                dalKey.Key = keyDto.Key;
            }
            else
            {
                dalKey = await _context.UpgradeKeys.FirstOrDefaultAsync(k => k.Key == keyDto.Key);

                if (dalKey == null)
                {
                    return(response.Failure(NoKeyStr, HttpStatusCode.NotFound));
                }
                dalKey.EMail = keyDto.EMail;
            }

            dalKey.UserType = keyDto.UserType;

            await _context.SaveChangesAsync();

            return(response.Success(dalKey, KeyUpdatedStr));
        }
        //======================================= UPDATE =======================================//

        private static bool InvalidPollsterKey(UpdateAccountDto createAccountDto, UpgradeKey key, string eMail)
        {
            string dtoKey = createAccountDto.Key;

            if (dtoKey == null)
            {
                return(false);
            }
            return(key == null || key.EMail != eMail && key.EMail.Length > 0);
        }
        public async Task <IActionResult> AddUpgradeKey(UpgradeKey upgradeKey)
        {
            var keysResponse = await _keyService.AddUpgradeKey(upgradeKey);

            var response = new Response <UpgradeKey>(keysResponse);

            return(keysResponse.Code switch
            {
                HttpStatusCode.UnprocessableEntity => UnprocessableEntity(response),
                HttpStatusCode.Conflict => Conflict(response),
                _ => Ok(response)
            });
Ejemplo n.º 4
0
        public async Task <ServiceResponse <UpgradeKey> > AddUpgradeKey(UpgradeKey upgradeKey)
        {
            var response = new ServiceResponse <UpgradeKey>();

            if (upgradeKey.Key.Length < 4)
            {
                return(response.Failure(KeyLengthStr, HttpStatusCode.UnprocessableEntity));
            }
            var existingKey = await _context.UpgradeKeys.FirstOrDefaultAsync(
                u => u.Key == upgradeKey.Key || u.EMail == upgradeKey.EMail && u.EMail != ""
                );

            if (existingKey != null)
            {
                return(response.Failure(KeyExistsStr, HttpStatusCode.Conflict));
            }
            await _context.UpgradeKeys.AddAsync(upgradeKey);

            await _context.SaveChangesAsync();

            return(response.Success(upgradeKey, KeyAddedStr));
        }