예제 #1
0
        public IActionResult Regbot(BotRegisterModel model)
        {
            if (!ModelState.IsValid)
            {
                return(NotFound());
            }

            return(Json(""));
        }
        public async Task <JsonResult> RegbotAsync([FromBody] BotRegisterModel model)
        {
            if (!ModelState.IsValid)
            {
                return(Json(new { success = false, result = "Invalid Model" }));
            }

#if (!DEBUG)
            // Release
            appsettingsModel JsonString = JsonConvert.DeserializeAnonymousType(ServerFileManager.FileReader(GetPathes.Get_SolutionMainPath() + "/appsettings.json"), new appsettingsModel());
#else
            // Debug
            appsettingsModel JsonString = JsonConvert.DeserializeAnonymousType(ServerFileManager.FileReader(GetPathes.Get_SolutionMainPath() + "/Alduin.Web/appsettings.json"), new appsettingsModel());
#endif
            if (JsonString.Stump.KeyCertified != model.KeyCertified)
            {
                return(Json(new { success = false, result = "Key does not match" }));
            }
            var Keyquery = new GetBotByKeyUniqueQuery {
                KeyUnique = model.KeyUnique
            };
            var botresult = _mediator.Send(Keyquery);
            if (botresult.Result == null)
            {
                var command = new RegbotCommand
                {
                    UserName        = model.UserName,
                    Domain          = model.Domain,
                    City            = model.City,
                    CountryCode     = model.CountryCode,
                    KeyUnique       = model.KeyUnique,
                    LastIPAddress   = model.LastIPAddress,
                    CreationDateUTC = DateTime.Now,
                    LastLoggedInUTC = DateTime.Now
                };
                var result = await _mediator.Send(command);

                if (result.Suceeded)
                {
                    return(Json(new { success = true, result = "Work" }));
                }
            }
            else
            {
                var BotUpdateCommand = new UpdateBotStatusCommand
                {
                    id = botresult.Result.Id
                };
                var result = await _mediator.Send(BotUpdateCommand);

                return(Json(new { success = true, result = "Updated" }));
            }
            return(Json(new { success = false, result = "Registration not success" }));
        }