Exemplo n.º 1
0
        private async Task <ReferralCodeList> GetRecords(DateTime?startDate = null, DateTime?endDate = null, bool?allRecord = false, int?status = null)
        {
            List <ReferralCode> dbRec = new List <ReferralCode>();

            if (!startDate.HasValue || !endDate.HasValue)
            {
                dbRec = await _context.ReferralCode.Where(d => (allRecord.Value || (!allRecord.Value && d.CreatedBy == _userHandler.User.Id)) &&
                                                          (status == null || (status != null && (status.Value == -1 || status.Value == (int)d.ReferralCodeStatus)))).Include(s => s.User).OrderByDescending(m => m.ModifiedOn).Take(1000).ToListAsync();
            }
            else
            {
                dbRec = await _context.ReferralCode.Where(d => (allRecord.Value || (!allRecord.Value && d.CreatedBy == _userHandler.User.Id)) &&
                                                          d.CreatedOn.HasValue && d.CreatedOn.Value.Date >= startDate.Value.Date && d.CreatedOn.Value.Date <= endDate.Value.Date &&
                                                          (status == null || (status != null && (status.Value == -1 || status.Value == (int)d.ReferralCodeStatus)))).Include(s => s.User).OrderByDescending(m => m.ModifiedOn).ToListAsync();
            }
            ReferralCodeList recList = new ReferralCodeList
            {
                UserHandler = _userHandler,
                Records     = _mapper.Map <List <ReferralCode>, List <ReferralCodeModel> >(dbRec)
            };

            return(recList);
        }
Exemplo n.º 2
0
        public IActionResult GenerateCode(int quantity)
        {
            ReferralCodeList         codeList = new ReferralCodeList();
            List <ReferralCodeModel> records  = new List <ReferralCodeModel>();

            for (int i = 0; i < quantity; i++)
            {
                var code = new ReferralCode
                {
                    PINCode            = _codeGenerator.GeneratePINCode(),
                    SecutiryCode       = _codeGenerator.GenerateSecurityCode(),
                    ReferralCodeStatus = Enums.ReferralCodeStatus.Open
                };
                code.ReferralCode_Id = $"{code.PINCode}-{code.SecutiryCode}";
                _context.ReferralCode.Add(code);
                var affected = _context.SaveChanges();
                if (affected != 0)
                {
                    records.Add(_mapper.Map <ReferralCodeModel>(code));
                }
            }
            codeList.Records = records;
            return(PartialView("_GenerateCode", codeList));
        }