Beispiel #1
0
        public IActionResult PostTblLeague(ConfirmLeague confrimLeague)
        {
            _context.Database.ExecuteSqlCommand("use Gambling_App; TRUNCATE Table tbl_confirmLeague;");
            _context.Database.ExecuteSqlCommand("use Gambling_App; TRUNCATE Table tbl_preUpcomingEvent;");

            foreach (var item in confrimLeague.LeagueList)
            {
                TblConfirmLeague confirmLeague = new TblConfirmLeague()
                {
                    LeagueId      = item.LeagueId,
                    RapidLeagueId = item.RapidLeagueId,
                    Active        = true
                };
                _context.TblConfirmLeague.Add(confirmLeague);
                _context.SaveChanges();

                var result = _context.TblUpcomingEvent.Find(item.LeagueId);
                TblPreUpcomingEvent preUpcomingEvent = new TblPreUpcomingEvent
                {
                    RapidEventId = result.RapidEventId,
                    LeagueId     = result.LeagueId,
                    HomeTeamId   = result.HomeTeamId,
                    AwayTeamId   = result.AwayTeamId,
                    EventDate    = result.EventDate,
                    EventTime    = result.EventTime,
                    Active       = result.Active
                };
                _context.TblPreUpcomingEvent.Add(preUpcomingEvent);
                _context.SaveChanges();
            }
            return(Ok(new { message = "Successfully Inserted" }));
        }
        public IActionResult Lock(decimal id)
        {
            TblUser tblUser = _context.TblUser.Find(id);

            tblUser.Username          = tblUser.Username;
            tblUser.Password          = tblUser.Password;
            tblUser.Lock              = true;
            tblUser.RoleId            = tblUser.RoleId;
            tblUser.Mobile            = tblUser.Mobile;
            tblUser.SharePercent      = tblUser.SharePercent;
            tblUser.BetLimitForMix    = tblUser.BetLimitForMix;
            tblUser.BetLimitForSingle = tblUser.BetLimitForSingle;
            tblUser.CreatedBy         = tblUser.CreatedBy;
            tblUser.CreatedDate       = tblUser.CreatedDate;
            _context.SaveChanges();

            return(Ok(new { Message = "Successfully locked" }));
        }
        public IActionResult BettingPost(UserBetting userBetting)
        {
            var         user_id     = User.FindFirst("userId")?.Value;
            TblGambling tblGambling = new TblGambling
            {
                PostingNo         = userBetting.PostingNo,
                TransactionTypeId = 10,
                GamblingTypeId    = userBetting.GamblingTypeId,
                EventId           = userBetting.EventId,
                RapidEventId      = userBetting.RapidEventId,
                TeamCount         = userBetting.TeamCount,
                Amount            = userBetting.Amount,
                UserId            = userBetting.UserId,
                Active            = true
            };

            _context.TblGambling.Add(tblGambling);
            _context.SaveChanges();
            var gamblingId = tblGambling.GamblingId;

            foreach (var item in userBetting.Details)
            {
                TblGamblingDetails gamblingDetails = new TblGamblingDetails
                {
                    GamblingId     = gamblingId,
                    LeagueId       = item.LeagueId,
                    FootballTeamId = item.FootballTeamId,
                    Under          = item.Under,
                    Overs          = item.Overs,
                    BodyOdd        = item.BodyOdd,
                    GoalOdd        = item.GoalOdd
                };
                _context.TblGamblingDetails.Add(gamblingDetails);
                _context.SaveChanges();
            }

            TblUserPosting userPosting = new TblUserPosting()
            {
                PostingNo         = userBetting.PostingNo,
                TransactionTypeId = 10,
                UserId            = userBetting.UserId,
                Inward            = 0,
                Outward           = userBetting.Amount,
                Active            = true,
                CreatedBy         = Decimal.Parse(user_id),
                CreatedDate       = DateTime.Now
            };

            _context.TblUserPosting.Add(userPosting);
            _context.SaveChanges();

            var            parentId           = _context.TblUser.Where(a => a.UserId == userBetting.UserId).First().CreatedBy;
            TblUserPosting parent_userPosting = new TblUserPosting()
            {
                PostingNo         = userBetting.PostingNo,
                TransactionTypeId = 9,
                UserId            = parentId,
                Inward            = userBetting.Amount,
                Outward           = 0,
                Active            = true,
                CreatedBy         = Decimal.Parse(user_id),
                CreatedDate       = DateTime.Now
            };

            _context.TblUserPosting.Add(parent_userPosting);
            _context.SaveChanges();

            return(Ok(new
            {
                message = "Betting Successfully"
            }));
        }
        public IActionResult PutTblUser(decimal id, Commission tblUser)
        {
            if (id != tblUser.UserId)
            {
                return(BadRequest());
            }
            var userRole = User.FindFirst("roleId")?.Value;
            var userId   = User.FindFirst("userId")?.Value;

            if (!TblUserExists(id))
            {
                return(NotFound());
            }
            else
            {
                //Update user information
                //Admin
                if (Convert.ToInt32(userRole) == 1)
                {
                    TblUser editUser = _context.TblUser.Find(id);
                    editUser.Username       = tblUser.Username;
                    editUser.Mobile         = tblUser.Mobile;
                    editUser.Password       = tblUser.Password;
                    editUser.RoleId         = tblUser.RoleId;
                    editUser.Lock           = false;
                    editUser.SharePercent   = tblUser.SharePercent;
                    editUser.BetLimitForMix = tblUser.BetLimitForMix;
                    editUser.CreatedBy      = Decimal.Parse(userId);
                    editUser.CreatedDate    = DateTime.Now;
                    _context.SaveChanges();

                    //Find commissions of current logged user and its created user
                    var tblUser1 = _context.TblUserCommission.Where(a => a.UserId == Decimal.Parse(userId) && a.SubUserId == id)
                                   .Select(a => a.UserCommissionId)
                                   .ToList();

                    //Delete previous user commissions
                    foreach (var item in tblUser1)
                    {
                        TblUserCommission editUser1 = _context.TblUserCommission.Find(item);
                        _context.TblUserCommission.Remove(editUser1);
                        _context.SaveChanges();
                    }

                    //Created new user commissions
                    foreach (var s in tblUser.commission)
                    {
                        TblUserCommission userCommission = new TblUserCommission();
                        userCommission.UserCommissionTypeId = s.CommissionTypeId;
                        userCommission.UserId            = Decimal.Parse(userId);
                        userCommission.UserCommission    = 0;
                        userCommission.SubUserId         = id;
                        userCommission.SubUserCommission = s.SubUserCommission;
                        _context.TblUserCommission.Add(userCommission);
                    }
                    _context.SaveChanges();
                }//admin

                //Other user(seniorMaster,Master,Agent)
                else
                {
                    TblUser editUser = _context.TblUser.Find(id);
                    editUser.Username       = tblUser.Username;
                    editUser.Mobile         = tblUser.Mobile;
                    editUser.Password       = tblUser.Password;
                    editUser.RoleId         = tblUser.RoleId;
                    editUser.Lock           = false;
                    editUser.SharePercent   = tblUser.SharePercent;
                    editUser.BetLimitForMix = tblUser.BetLimitForMix;
                    editUser.CreatedBy      = Decimal.Parse(userId);
                    editUser.CreatedDate    = DateTime.Now;
                    _context.SaveChanges();

                    //Find commissions of current logged user and its created user
                    var tblUser1 = _context.TblUserCommission.Where(a => a.UserId == Decimal.Parse(userId) && a.SubUserId == id)
                                   .Select(a => a.UserCommissionId)
                                   .ToList();

                    //Delete previous user commissions
                    foreach (var item in tblUser1)
                    {
                        TblUserCommission editUser1 = _context.TblUserCommission.Find(item);
                        _context.TblUserCommission.Remove(editUser1);
                        _context.SaveChanges();
                    }

                    //Get previous user commissions
                    var prevCommission = _context.TblUserCommission.Where(a => a.SubUserId == Decimal.Parse(userId))
                                         .Select(c => new { c.UserCommissionTypeId, c.SubUserCommission })
                                         .ToDictionary(c => c.UserCommissionTypeId, c => c.SubUserCommission);

                    //Create new user commissions
                    foreach (var s in tblUser.commission)
                    {
                        TblUserCommission userCommission = new TblUserCommission();
                        userCommission.UserCommissionTypeId = s.CommissionTypeId;
                        userCommission.UserId            = Decimal.Parse(userId);
                        userCommission.UserCommission    = prevCommission.ElementAt(1).Value - s.SubUserCommission;
                        userCommission.SubUserId         = id;
                        userCommission.SubUserCommission = s.SubUserCommission;
                        _context.TblUserCommission.Add(userCommission);
                    }
                    _context.SaveChanges();
                } //other
            }     //user id exists
            return(Ok());
        }
        public IActionResult AddBalance(decimal id, [FromBody] Balance balance)
        {
            //Created user's balance
            var            user_id     = User.FindFirst("userId")?.Value;
            DateTime       moment      = DateTime.Now;
            TblUserPosting userPosting = new TblUserPosting();
            var            role        = _context.TblUser.Where(a => a.UserId == id).First().RoleId;
            var            year        = moment.Year;
            var            month       = moment.Month;
            var            day         = moment.Day;
            var            hour        = moment.Hour;
            var            minute      = moment.Minute;
            var            second      = moment.Second;
            var            str         = "UB" + id.ToString() + role.ToString() + year.ToString() + month.ToString() + day.ToString() +
                                         hour.ToString() + minute.ToString() + second.ToString();

            userPosting.UserId            = id;
            userPosting.PostingNo         = str;
            userPosting.TransactionTypeId = 1;
            userPosting.Inward            = balance.Amount;
            userPosting.Outward           = 0;
            userPosting.Active            = true;
            userPosting.CreatedBy         = Decimal.Parse(user_id);
            userPosting.CreatedDate       = DateTime.Now;
            _context.TblUserPosting.Add(userPosting);
            _context.SaveChanges();

            //Created user' balance
            TblUserBalance userBalance = new TblUserBalance();

            userBalance.PostingNo         = str;
            userBalance.TransactionTypeId = 1;
            userBalance.UserId            = id;
            userBalance.Inward            = Convert.ToInt32(balance.Amount);
            userBalance.Outward           = 0;
            userBalance.CreatedDate       = DateTime.Now;
            _context.TblUserBalance.Add(userBalance);
            _context.SaveChanges();

            //Current logged user's balance
            DateTime       parent_moment      = DateTime.Now;
            TblUserPosting parent_userPosting = new TblUserPosting();
            var            parent_role        = _context.TblUser.Where(a => a.UserId == Decimal.Parse(user_id)).First().RoleId;
            var            parent_year        = parent_moment.Year;
            var            parent_month       = parent_moment.Month;
            var            parent_day         = parent_moment.Day;
            var            parent_hour        = parent_moment.Hour;
            var            parent_minute      = parent_moment.Minute;
            var            parent_second      = parent_moment.Second;
            var            parent_str         = "UB" + id.ToString() + parent_role.ToString() + parent_year.ToString() + parent_month.ToString() + parent_day.ToString() +
                                                parent_hour.ToString() + parent_minute.ToString() + parent_second.ToString();

            parent_userPosting.UserId            = Decimal.Parse(user_id);
            parent_userPosting.PostingNo         = parent_str;
            parent_userPosting.TransactionTypeId = 2;
            parent_userPosting.Inward            = 0;
            parent_userPosting.Outward           = balance.Amount;
            parent_userPosting.Active            = true;
            parent_userPosting.CreatedBy         = Decimal.Parse(user_id);
            parent_userPosting.CreatedDate       = DateTime.Now;
            _context.TblUserPosting.Add(parent_userPosting);
            _context.SaveChanges();

            //Current logged user's balance
            TblUserBalance parent_userBalance = new TblUserBalance();

            parent_userBalance.PostingNo         = parent_str;
            parent_userBalance.TransactionTypeId = 2;
            parent_userBalance.UserId            = Decimal.Parse(user_id);
            parent_userBalance.Inward            = 0;
            parent_userBalance.Outward           = Convert.ToInt32(balance.Amount);
            parent_userBalance.CreatedDate       = DateTime.Now;
            _context.TblUserBalance.Add(parent_userBalance);
            _context.SaveChanges();
            return(Ok(new { message = "Deposit Successfully" }));
        }