/// <summary>
        /// this method creates the association bet to bet number
        /// </summary>
        /// <param name="objRouletteXNumber">object whith the bet id and bet number</param>
        /// <returns>int value, indicate the identifier of the record</returns>

        public async Task <int> createAsync(betRouletteXNumber objRouletteXNumber)
        {
            int idBetRouletteXNumber = 0;

            try
            {
                string _Result = "";
                Dictionary <string, object> lstParametros = new Dictionary <string, object>();
                lstParametros.Add("@idBetRoulette", objRouletteXNumber.idBetRoulette);
                lstParametros.Add("@betRouletteNumber", objRouletteXNumber.betRouletteNumber);
                lstParametros.Add("@createType", 1);
                _Result = await commandExecuteDBAsync("SP_BETROULETTEXNUMBER_CREATE", lstParametros, new SqlParameter()
                {
                    ParameterName = "@Result", Value = _Result
                });

                if (Convert.ToInt32(_Result) > 0)
                {
                    idBetRouletteXNumber = Convert.ToInt32(_Result);
                }
                else
                {
                    throw new Exception("No se obtuvo un identificador valido para la apuesta por número.");
                }
            }
            catch (Exception ex)
            {
                throw new Exception(string.Format("Se presentó un error  {0} al intentar crear la apuesta por número de la ruleta. ", ex.Message));
            }

            return(idBetRouletteXNumber);
        }
Beispiel #2
0
        /// <summary>
        /// procedure to enter a bet
        /// </summary>
        /// <param name="objbetRoulette">object with the bet information</param>
        /// <returns></returns>
        public async Task <int> createAsync(betRoulette objbetRoulette)
        {
            int idBetRoulette = 0;

            try
            {
                if (ObjectValidate(objbetRoulette))
                {
                    if (_dbAcces._repository.Roulette.ValidateRouletteStatus(objbetRoulette.idRoulette))
                    {
                        if (!_dbAcces._repository.Roulette.ValidateExistance(objbetRoulette.idRoulette))
                        {
                            throw new Exception("No se encontró una ruleta creada con el identificador asociado. Por favor valide e intente nuevamente.");
                        }
                        objbetRoulette.idOpeningClosingRoulette = _dbAcces._repository.Roulette.getOpenigHandle(objbetRoulette.idRoulette);
                        Dictionary <string, object> lstParametros = new Dictionary <string, object>();
                        lstParametros.Add("@idOpeningClosingRoulette", objbetRoulette.idOpeningClosingRoulette);
                        lstParametros.Add("@betRouletteValue", objbetRoulette.betRouletteValue);
                        lstParametros.Add("@betUser", objbetRoulette.betUser);
                        lstParametros.Add("@createType", 1);
                        string _Result = string.Empty;
                        _Result = await commandExecuteDBAsync("SP_BETROULETTE_CREATE", lstParametros, new SqlParameter()
                        {
                            ParameterName = "@Result", Value = _Result
                        });

                        if (Convert.ToInt32(_Result) > 0)
                        {
                            idBetRoulette = Convert.ToInt32(_Result);
                            if (!string.IsNullOrEmpty(objbetRoulette.betRouletteColour))
                            {
                                betRouletteXColour objBetRouletteColour = new betRouletteXColour();
                                objBetRouletteColour.BetRouletteColourCode = getBetColorCode(objbetRoulette.betRouletteColour);
                                objBetRouletteColour.idBetRoulette         = idBetRoulette;
                                int idBetRoulettexColour = await _dbAcces._repository.betRouletteXColour.createAsync(objBetRouletteColour);
                            }
                            else
                            {
                                betRouletteXNumber objBetRouletteNumber = new betRouletteXNumber();
                                objBetRouletteNumber.betRouletteNumber = objbetRoulette.betRouletteNumber;
                                objBetRouletteNumber.idBetRoulette     = idBetRoulette;
                                int idBetRouletteXNumber = await _dbAcces._repository.betRouletteXNumber.createAsync(objBetRouletteNumber);
                            }
                            _dbAcces.SaveChange();
                        }
                        else
                        {
                            throw new Exception("No se obtuvo un identificador válido para la apuesta.");
                        }
                    }
                    else
                    {
                        throw new Exception("La ruleta se encuentra cerrada, no se puede realizar la apuesta. Por favor valide e intente nuevamente.");
                    }
                }
            }
            catch (Exception ex)
            {
                _dbAcces.DiscardChange();
                throw new Exception(string.Format("Se presentó un error {0} al intentar crear la apuesta. ", ex.Message));
            }

            return(idBetRoulette);
        }