public ActionResult RenewalNewSeason()
        {
            HttpResponseMessage      response        = null;
            GenerateRenewalViewModel modelReturnJSON = new GenerateRenewalViewModel();
            renewalDetailsModel      model           = new renewalDetailsModel();

            try
            {
                model.userID     = Convert.ToInt16(Session["user.id"]);
                model.userName   = Session["user.name"].ToString();
                model.psnID      = Session["user.psnID"].ToString();
                model.actionUser = "******";

                modelReturnJSON.renewalModel = model;
                modelReturnJSON.actionUser   = model.actionUser;
                response        = GlobalVariables.WebApiClient.PostAsJsonAsync("GenerateRenewal", modelReturnJSON).Result;
                modelReturnJSON = response.Content.ReadAsAsync <GenerateRenewalViewModel>().Result;

                switch (response.StatusCode)
                {
                case HttpStatusCode.Created:
                    if (modelReturnJSON.returnMessage == "GenerateRenewalSuccessfully")
                    {
                        return(View(modelReturnJSON.renewalModel));
                    }
                    else
                    {
                        //ModelState.AddModelError("", "Senha Atual inválida! Favor tentar novamente.");
                        TempData["returnMessage"] = "Ocorreu algum erro na exibição da tela de renovação para a próxima temporda - todas as modalidades. (" + modelReturnJSON.returnMessage + ")";
                        return(View(model));
                    }

                default:
                    TempData["returnMessage"] = "Ocorreu algum erro na exibição da tela de renovação para a próxima temporda - todas as modalidades. (" + response.StatusCode + ")";
                    ModelState.AddModelError("", "application error.");
                    return(View(model));
                }
            }
            catch (Exception ex)
            {
                TempData["returnMessage"] = "Erro interno - renovação próxima temporada - todas as modalidades: (" + ex.Message + ")";
                ModelState.AddModelError("", "application error.");
                return(View(model));
            }
            finally
            {
                response        = null;
                modelReturnJSON = null;
                model           = null;
            }
        }
Exemplo n.º 2
0
        public ActionResult GenerateRenewal(FormCollection formHTML)
        {
            HttpResponseMessage      response        = new HttpResponseMessage();
            GenerateRenewalViewModel modelReturnJSON = new GenerateRenewalViewModel();
            GenerateRenewalViewModel modelReturnView = new GenerateRenewalViewModel();

            string actionForm = "summary";

            if (formHTML["actionForm"] != null)
            {
                actionForm = formHTML["actionForm"].ToLower();
            }

            setViewBagVariables();

            try
            {
                if (TempData["FullModel"] != null)
                {
                    modelReturnView = (GenerateRenewalViewModel)TempData["FullModel"];
                }
                modelReturnJSON.inRenewalWithWorldCup = Convert.ToInt16(ConfigurationManager.AppSettings["renewal.h2h.worldcup"].ToString());
                modelReturnJSON.inRenewalWithEuro     = Convert.ToInt16(ConfigurationManager.AppSettings["renewal.h2h.uefaeuro"].ToString());

                if (actionForm == "summary")
                {
                    modelReturnJSON.actionUser = "******";
                    response        = GlobalVariables.WebApiClient.PostAsJsonAsync("GenerateRenewal", modelReturnJSON).Result;
                    modelReturnJSON = response.Content.ReadAsAsync <GenerateRenewalViewModel>().Result;
                }
                else if (actionForm == "prepare-database-before")
                {
                    modelReturnJSON              = modelReturnView;
                    modelReturnJSON.actionUser   = "******";
                    modelReturnJSON.dataBaseName = GlobalVariables.DATABASE_NAME_STAGING;
                    response        = GlobalVariables.WebApiClient.PostAsJsonAsync("GenerateRenewal", modelReturnJSON).Result;
                    modelReturnJSON = response.Content.ReadAsAsync <GenerateRenewalViewModel>().Result;
                }
                else if (actionForm == "generate-renewal")
                {
                    modelReturnJSON              = modelReturnView;
                    modelReturnJSON.actionUser   = "******";
                    modelReturnJSON.dataBaseName = GlobalVariables.DATABASE_NAME_STAGING;
                    response        = GlobalVariables.WebApiClient.PostAsJsonAsync("GenerateRenewal", modelReturnJSON).Result;
                    modelReturnJSON = response.Content.ReadAsAsync <GenerateRenewalViewModel>().Result;
                }
                else if (actionForm == "cancel-renewal")
                {
                    modelReturnJSON              = modelReturnView;
                    modelReturnJSON.actionUser   = "******";
                    modelReturnJSON.dataBaseName = GlobalVariables.DATABASE_NAME_STAGING;
                    response        = GlobalVariables.WebApiClient.PostAsJsonAsync("GenerateRenewal", modelReturnJSON).Result;
                    modelReturnJSON = response.Content.ReadAsAsync <GenerateRenewalViewModel>().Result;
                }
                else if (actionForm == "create-spooler")
                {
                    modelReturnJSON              = modelReturnView;
                    modelReturnJSON.actionUser   = "******";
                    modelReturnJSON.dataBaseName = GlobalVariables.DATABASE_NAME_STAGING;
                    modelReturnJSON.userActionID = Convert.ToInt32(Session["user.id"]);
                    response        = GlobalVariables.WebApiClient.PostAsJsonAsync("GenerateRenewal", modelReturnJSON).Result;
                    modelReturnJSON = response.Content.ReadAsAsync <GenerateRenewalViewModel>().Result;
                }
                else if (actionForm == "cancel-spooler")
                {
                    modelReturnJSON              = modelReturnView;
                    modelReturnJSON.actionUser   = "******";
                    modelReturnJSON.dataBaseName = GlobalVariables.DATABASE_NAME_STAGING;
                    response        = GlobalVariables.WebApiClient.PostAsJsonAsync("GenerateRenewal", modelReturnJSON).Result;
                    modelReturnJSON = response.Content.ReadAsAsync <GenerateRenewalViewModel>().Result;
                }
                else
                {
                    modelReturnJSON.returnMessage = "GenerateRenewalSuccessfully";
                    modelReturnJSON.actionUser    = actionForm.ToUpper();
                    response.StatusCode           = HttpStatusCode.Created;
                }

                switch (response.StatusCode)
                {
                case HttpStatusCode.Created:
                    if (modelReturnJSON.returnMessage == "GenerateRenewalSuccessfully")
                    {
                        if (actionForm == "prepare-database-before")
                        {
                            TempData["actionSuccessfully"] = "Staging Database was prepared successfully";
                        }
                        else if (actionForm == "generate-renewal")
                        {
                            TempData["actionSuccessfully"] = "The renewals were generated successfully";
                        }
                        else if (actionForm == "cancel-renewal")
                        {
                            TempData["actionSuccessfully"] = "All renewal processes were cancelled successfully";
                        }
                        else if (actionForm == "cancel-spooler")
                        {
                            TempData["actionSuccessfully"] = "The email spooler for renewal was cancelled successfully";
                        }
                        else if (actionForm == "create-spooler")
                        {
                            TempData["actionSuccessfully"] = "The email spooler for renewal was created successfully";
                        }
                    }
                    else
                    {
                        TempData["returnMessage"] = "Some error occurred when the system was trying to show the view: Generate Renewal - Summary. (" + modelReturnJSON.returnMessage + ")";
                    }
                    return(View(modelReturnJSON));

                default:
                    TempData["returnMessage"] = "Some error occurred when the system was trying to show the view: Generate Renewal - Summary. (" + response.StatusCode + ")";
                    ModelState.AddModelError("", "application error.");
                    return(View(modelReturnView));
                }
            }
            catch (Exception ex)
            {
                TempData["returnMessage"] = "Internal error - when the system was trying to show the view: Generate Renewal - Summary. (" + ex.Message + ")";
                ModelState.AddModelError("", "application error.");
                return(View(modelReturnView));
            }
            finally
            {
                response        = null;
                modelReturnJSON = null;
                modelReturnView = null;
            }
        }
        private void getSummaryDetails(ref GenerateRenewalViewModel model, connectionMySQL db, Boolean bOpenConection = false)
        {
            DataTable       dt            = null;
            string          returnMessage = String.Empty;
            connectionMySQL dbNew         = new DBConnection.connectionMySQL();

            if (bOpenConection == true)
            {
                dbNew.openConnection(GlobalVariables.DATABASE_NAME_ONLINE);
            }
            else
            {
                dbNew = db;
            }

            try
            {
                paramName  = new string[] { };
                paramValue = new string[] { };
                dt         = dbNew.executePROC("spGetSummaryGenerateRenwal", paramName, paramValue);

                model.seasonH2HID   = Convert.ToInt16(dt.Rows[0]["seasonH2HID"].ToString());
                model.seasonH2HName = dt.Rows[0]["seasonH2HName"].ToString();

                model.seasonFUTID   = Convert.ToInt16(dt.Rows[0]["seasonFUTID"].ToString());
                model.seasonFUTName = dt.Rows[0]["seasonFUTName"].ToString();

                model.seasonPROID   = Convert.ToInt16(dt.Rows[0]["seasonPROID"].ToString());
                model.seasonPROName = dt.Rows[0]["seasonPROName"].ToString();

                model.totalUsersBcoOnLine  = Convert.ToInt16(dt.Rows[0]["totalUsersBcoOnLine"].ToString());
                model.totalUsersBcoStaging = Convert.ToInt16(dt.Rows[0]["totalUsersBcoStaging"].ToString());

                model.lastSeasonH2HID   = Convert.ToInt16(dt.Rows[0]["lastSeasonH2HID"].ToString());
                model.lastSeasonH2HName = dt.Rows[0]["lastSeasonH2HName"].ToString();

                model.lastSeasonFUTID   = Convert.ToInt16(dt.Rows[0]["lastSeasonFUTID"].ToString());
                model.lastSeasonFUTName = dt.Rows[0]["lastSeasonFUTName"].ToString();

                model.lastSeasonPROID   = Convert.ToInt16(dt.Rows[0]["lastSeasonPROID"].ToString());
                model.lastSeasonPROName = dt.Rows[0]["lastSeasonPROName"].ToString();

                model.totalUserRenewalForNextSeason = Convert.ToInt16(dt.Rows[0]["totalUsersRenewal"].ToString());
                model.totalEmailSpoolerForRenewal   = Convert.ToInt16(dt.Rows[0]["totalEmailsRenewal"].ToString());

                if (dt.Rows[0]["totalSpoolerEmails"].ToString() == "1")
                {
                    model.emailsSent = true;
                }
                else
                {
                    model.emailsSent = false;
                }

                if (dt.Rows[0]["totalRenewals"].ToString() != "0")
                {
                    model.renewalNewSeasonGenerated = true;
                }
                else
                {
                    model.renewalNewSeasonGenerated = false;
                }

                if (dt.Rows[0]["isPreparedBefore"].ToString() == "1")
                {
                    model.databaseStagingPrepared = true;
                }
                else
                {
                    model.databaseStagingPrepared = false;
                }

                model.returnMessage = "GenerateRenewalSuccessfully";
            }
            catch (Exception ex)
            {
                model = new GenerateRenewalViewModel();
                model.returnMessage = "error_" + ex.Message;
            }
            finally
            {
                dt = null;
                if (bOpenConection == true)
                {
                    dbNew.closeConnection();
                }
                dbNew = null;
            }
        }
        public IHttpActionResult hallOfFame(GenerateRenewalViewModel model)
        {
            if (String.IsNullOrEmpty(model.dataBaseName))
            {
                model.dataBaseName = GlobalVariables.DATABASE_NAME_ONLINE;
            }
            db.openConnection(model.dataBaseName);
            DataTable dt = null;

            try
            {
                if (model.actionUser == "summary")
                {
                    getSummaryDetails(ref model, db);
                    return(CreatedAtRoute("DefaultApi", new { id = 0 }, model));
                }
                else if (model.actionUser == "prepareDatabaseBefore")
                {
                    paramName  = new string[] { };
                    paramValue = new string[] { };
                    db.executePROCNonResult("spDeleteAllRecords", paramName, paramValue);
                    db.executePROCNonResult("spTransferDataFromOnlineDtb", paramName, paramValue);

                    getSummaryDetails(ref model, db, true);
                    return(CreatedAtRoute("DefaultApi", new { id = 0 }, model));
                }
                else if (model.actionUser == "generateRenewal")
                {
                    string inWorldCup_Euro = "0";
                    if (model.inRenewalWithEuro == 1 || model.inRenewalWithWorldCup == 1)
                    {
                        inWorldCup_Euro = "1";
                    }
                    paramName  = new string[] { "pInWorldCupNextSeason" };
                    paramValue = new string[] { inWorldCup_Euro };
                    db.executePROCNonResult("spGenerateRenewalsForNextSeason", paramName, paramValue);

                    getSummaryDetails(ref model, db, true);
                    return(CreatedAtRoute("DefaultApi", new { id = 0 }, model));
                }
                else if (model.actionUser == "createSpooler")
                {
                    paramName  = new string[] { "pIdUsuAction" };
                    paramValue = new string[] { model.userActionID.ToString() };
                    db.executePROCNonResult("spCreateRenewalSpoolerForNextSeason", paramName, paramValue);

                    getSummaryDetails(ref model, db, true);
                    return(CreatedAtRoute("DefaultApi", new { id = 0 }, model));
                }
                else if (model.actionUser == "cancelRenewal")
                {
                    paramName  = new string[] { };
                    paramValue = new string[] { };
                    db.executePROCNonResult("spCancelRenewalsForNextSeason", paramName, paramValue);

                    getSummaryDetails(ref model, db, true);
                    return(CreatedAtRoute("DefaultApi", new { id = 0 }, model));
                }
                else if (model.actionUser == "cancelSpooler")
                {
                    paramName  = new string[] { };
                    paramValue = new string[] { };
                    db.executePROCNonResult("spCancelRenewalSpoolerForNextSeason", paramName, paramValue);

                    getSummaryDetails(ref model, db, true);
                    return(CreatedAtRoute("DefaultApi", new { id = 0 }, model));
                }
                else if (model.actionUser == "getDetailsRenewalHome")
                {
                    paramName  = new string[] { "pIdUser" };
                    paramValue = new string[] { model.renewalModel.userID.ToString() };
                    dt         = db.executePROC("spGetAllDetailsRenewalHome", paramName, paramValue);


                    model.renewalModel.seasonID = Convert.ToInt16(dt.Rows[0]["temporadaID"].ToString());
                    if (!String.IsNullOrEmpty(dt.Rows[0]["confirmH2H"].ToString()))
                    {
                        if (dt.Rows[0]["confirmH2H"].ToString() == "1")
                        {
                            model.renewalModel.checkYESH2H = true;
                        }
                        else if (dt.Rows[0]["confirmH2H"].ToString() == "0")
                        {
                            model.renewalModel.checkNOH2H = true;
                        }
                    }
                    if (!String.IsNullOrEmpty(dt.Rows[0]["confirmFUT"].ToString()))
                    {
                        if (dt.Rows[0]["confirmFUT"].ToString() == "1")
                        {
                            model.renewalModel.checkYESFUT = true;
                        }
                        else if (dt.Rows[0]["confirmFUT"].ToString() == "0")
                        {
                            model.renewalModel.checkNOFUT = true;
                        }
                    }
                    if (!String.IsNullOrEmpty(dt.Rows[0]["confirmPRO"].ToString()))
                    {
                        if (dt.Rows[0]["confirmPRO"].ToString() == "1")
                        {
                            model.renewalModel.checkYESPRO = true;
                        }
                        else if (dt.Rows[0]["confirmPRO"].ToString() == "0")
                        {
                            model.renewalModel.checkNOPRO = true;
                        }
                    }
                    if (!String.IsNullOrEmpty(dt.Rows[0]["confirmWC"].ToString()))
                    {
                        if (dt.Rows[0]["confirmWC"].ToString() == "1")
                        {
                            model.renewalModel.checkYESWDC = true;
                        }
                        else if (dt.Rows[0]["confirmWC"].ToString() == "0")
                        {
                            model.renewalModel.checkNOWDC = true;
                        }
                    }

                    if (!String.IsNullOrEmpty(dt.Rows[0]["nmTimeFUT"].ToString()))
                    {
                        model.renewalModel.teamNameFUT = dt.Rows[0]["nmTimeFUT"].ToString();
                    }

                    if (!String.IsNullOrEmpty(dt.Rows[0]["nmTimePRO"].ToString()))
                    {
                        model.renewalModel.teamNamePRO = dt.Rows[0]["nmTimePRO"].ToString();
                    }

                    if (!String.IsNullOrEmpty(dt.Rows[0]["mobile"].ToString()))
                    {
                        model.renewalModel.ddd    = dt.Rows[0]["ddd"].ToString();
                        model.renewalModel.mobile = dt.Rows[0]["mobile"].ToString();
                    }

                    model.returnMessage = "GenerateRenewalSuccessfully";
                    return(CreatedAtRoute("DefaultApi", new { id = 0 }, model));
                }
                else if (model.actionUser == "saveRenewalNewSeasonHome")
                {
                    int confirmH2H = -1;
                    int confirmFUT = -1;
                    int confirmPRO = -1;
                    int confirmWC  = -1;

                    if (model.renewalModel.checkYESH2H)
                    {
                        confirmH2H = 1;
                    }
                    else if (model.renewalModel.checkYESH2H)
                    {
                        confirmH2H = 0;
                    }

                    if (model.renewalModel.checkYESFUT)
                    {
                        confirmFUT = 1;
                    }
                    else if (model.renewalModel.checkNOFUT)
                    {
                        confirmFUT = 0;
                    }

                    if (model.renewalModel.checkYESPRO)
                    {
                        confirmPRO = 1;
                    }
                    else if (model.renewalModel.checkNOPRO)
                    {
                        confirmPRO = 0;
                    }

                    if (model.renewalModel.checkYESWDC)
                    {
                        confirmWC = 1;
                    }
                    else if (model.renewalModel.checkNOWDC)
                    {
                        confirmWC = 0;
                    }


                    paramName  = new string[] { "pIdTemporada", "pIdUsu", "pInConfirmH2H", "pInConfirmFUT", "pInConfirmPRO", "pInConfirmWC", "pNmTeamFUT", "pNmTeamPRO", "pDDD", "pMobile" };
                    paramValue = new string[] { model.renewalModel.seasonID.ToString(), model.renewalModel.userID.ToString(), confirmH2H.ToString(),
                                                                                        confirmFUT.ToString(), confirmPRO.ToString(), confirmWC.ToString(), model.renewalModel.teamNameFUT,
                                                                                        model.renewalModel.teamNamePRO, model.renewalModel.ddd, model.renewalModel.mobile };
                    db.executePROCNonResult("spControlConfirmacaoTemporada", paramName, paramValue);

                    model.returnMessage = "GenerateRenewalSuccessfully";
                    return(CreatedAtRoute("DefaultApi", new { id = 0 }, model));
                }
                else
                {
                    return(StatusCode(HttpStatusCode.NotAcceptable));
                }
            }
            catch (Exception ex)
            {
                model.returnMessage = "error_" + ex.Message;
                return(CreatedAtRoute("DefaultApi", new { id = 0 }, model));
            }
            finally
            {
                db.closeConnection();
                dt = null;
            }
        }
        public ActionResult ValidateRenewalNewSeason(renewalDetailsModel model, FormCollection formHTML)
        {
            HttpResponseMessage      response        = new HttpResponseMessage();;
            GenerateRenewalViewModel modelReturnJSON = new GenerateRenewalViewModel();
            Boolean executeProcSaveRenewal           = false;
            string  messageReturnERROR = String.Empty;
            string  nameFieldViewERROR = string.Empty;

            try
            {
                model.userID   = Convert.ToInt16(Session["user.id"]);
                model.userName = Session["user.name"].ToString();
                model.psnID    = Session["user.psnID"].ToString();
                modelReturnJSON.returnMessage = "GenerateRenewalSuccessfully";
                response.StatusCode           = HttpStatusCode.Created;

                if (!String.IsNullOrEmpty(formHTML["rdoModeH2H"]))
                {
                    if (formHTML["rdoModeH2H"] == "1")
                    {
                        model.checkYESH2H = true; model.checkNOH2H = false;
                    }
                    else
                    {
                        model.checkYESH2H = false; model.checkNOH2H = true;
                    }
                }
                if (!String.IsNullOrEmpty(formHTML["rdoModeWC"]))
                {
                    if (formHTML["rdoModeWC"] == "1")
                    {
                        model.checkYESWDC = true; model.checkNOWDC = false;
                    }
                    else
                    {
                        model.checkYESWDC = false; model.checkNOWDC = true;
                    }
                }
                if (!String.IsNullOrEmpty(formHTML["rdoModeFUT"]))
                {
                    if (formHTML["rdoModeFUT"] == "1")
                    {
                        model.checkYESFUT = true; model.checkNOFUT = false;
                    }
                    else
                    {
                        model.checkYESFUT = false; model.checkNOFUT = true;
                    }
                }
                if (!String.IsNullOrEmpty(formHTML["rdoModePRO"]))
                {
                    if (formHTML["rdoModePRO"] == "1")
                    {
                        model.checkYESPRO = true; model.checkNOPRO = false;
                    }
                    else
                    {
                        model.checkYESPRO = false; model.checkNOPRO = true;
                    }
                }


                if (formHTML["rdoModeFUT"] == "1" && formHTML["teamNameFUT"] == String.Empty)
                {
                    messageReturnERROR = "O  campo 'Nome do Time FUT' é obrigatório porque a modalidade FUT foi selecionada";
                    nameFieldViewERROR = "teamNameFUT";
                }
                else if (formHTML["rdoModePRO"] == "1" && formHTML["teamNamePRO"] == String.Empty)
                {
                    messageReturnERROR = "O  campo 'Nome do Clube' é obrigatório porque a modalidade PRO CLUB foi selecionada";
                    nameFieldViewERROR = "teamNamePRO";
                }
                else if ((formHTML["ddd"] == String.Empty && formHTML["mobile"] != String.Empty) || (formHTML["ddd"] != String.Empty && formHTML["mobile"] == String.Empty))
                {
                    messageReturnERROR = "O  campo 'Celular (DDD & Numero)' está inválido, ambos os números devem ser informados";
                    nameFieldViewERROR = "mobile";
                }
                else if (formHTML["rdoModeH2H"] == null && formHTML["rdoModeWC"] == null &&
                         formHTML["rdoModeFUT"] == null && formHTML["rdoModePRO"] == null)
                {
                    messageReturnERROR = "Não foi possível executar o processo de renovação pois NENHUMA modalidade foi selecionada";
                }
                else
                {
                    executeProcSaveRenewal       = true;
                    model.actionUser             = "******";
                    modelReturnJSON.renewalModel = model;
                    modelReturnJSON.actionUser   = model.actionUser;
                    response        = GlobalVariables.WebApiClient.PostAsJsonAsync("GenerateRenewal", modelReturnJSON).Result;
                    modelReturnJSON = response.Content.ReadAsAsync <GenerateRenewalViewModel>().Result;
                }

                if (!String.IsNullOrEmpty(messageReturnERROR))
                {
                    TempData["returnMessage"] = messageReturnERROR;
                    if (!String.IsNullOrEmpty(nameFieldViewERROR))
                    {
                        ModelState.AddModelError(nameFieldViewERROR, messageReturnERROR);
                    }
                }

                switch (response.StatusCode)
                {
                case HttpStatusCode.Created:
                    if (modelReturnJSON.returnMessage == "GenerateRenewalSuccessfully")
                    {
                        if (executeProcSaveRenewal)
                        {
                            return(RedirectToAction("RenewalNewSeasonConfirmation", "Home", modelReturnJSON.renewalModel));
                        }
                        else
                        {
                            return(View("RenewalNewSeason", model));
                        }
                    }
                    else
                    {
                        //ModelState.AddModelError("", "Senha Atual inválida! Favor tentar novamente.");
                        TempData["returnMessage"] = "Ocorreu algum erro na inscrição do banco de Reservas H2H e/ou FUT. (" + modelReturnJSON.returnMessage + ")";
                        return(View("RenewalNewSeason", model));
                    }

                default:
                    TempData["returnMessage"] = "Ocorreu algum erro na inscrição do banco de Reservas H2H e/ou FUT. (" + response.StatusCode + ")";
                    ModelState.AddModelError("", "application error.");
                    return(View("RenewalNewSeason", model));
                }
            }
            catch (Exception ex)
            {
                TempData["returnMessage"] = "Erro interno - inscrevendo-se no banco - H2H e/ou FUT: (" + ex.Message + ")";
                ModelState.AddModelError("", "application error.");
                return(View("RenewalNewSeason", model));
            }
            finally
            {
                response        = null;
                modelReturnJSON = null;
            }
        }