Beispiel #1
0
        public async Task <ActionResult> List(long?typeId, string mobile, string code, DateTime?startTime, DateTime?endTime, int pageIndex = 1)
        {
            JournalSearchResult result = await journalService.GetIntegralModelListAsync(typeId, mobile, code, startTime, endTime, pageIndex, pageSize);

            ListViewModel model = new ListViewModel();

            model.Journals     = result.Journals;
            model.JournalTypes = await journalTypeService.GetModelListAsync(true);

            model.GivingIntegralCount = result.GivingIntegrals == null?0: result.GivingIntegrals;
            model.UseIntegralCount    = result.UseIntegrals == null?0: result.UseIntegrals;
            model.PlatformIntegral    = result.PlatformIntegral;

            Pagination pager = new Pagination();

            pager.PageIndex  = pageIndex;
            pager.PageSize   = pageSize;
            pager.TotalCount = result.TotalCount;

            if (result.TotalCount <= pageSize)
            {
                model.PageHtml = "test";
            }
            else
            {
                model.PageHtml = pager.GetPagerHtml();
            }
            model.Pages     = pager.Pages;
            model.PageCount = pager.PageCount;
            return(Json(new AjaxResult {
                Status = 1, Data = model
            }));
        }
Beispiel #2
0
        public async Task <ActionResult> List(string mobile, DateTime?startTime, DateTime?endTime, int pageIndex = 1)
        {
            var user = await platformUserService.GetModelAsync("mobile", "PlatformUser201805051709360001");

            //long? typeId = await journalTypeService.GetIdByDescAsync("赠送");
            JournalSearchResult result = await journalService.GetModelListAsync("交易", mobile, null, startTime, endTime, pageIndex, pageSize);

            ListViewModel model = new ListViewModel();

            model.Journals            = result.Journals;
            model.GivingIntegralCount = result.GivingIntegralCount;
            model.UseIntegralCount    = result.UseIntegralCount;

            Pagination pager = new Pagination();

            pager.PageIndex  = pageIndex;
            pager.PageSize   = pageSize;
            pager.TotalCount = result.TotalCount;

            if (result.TotalCount <= pageSize)
            {
                model.PageHtml = "test";
            }
            else
            {
                model.PageHtml = pager.GetPagerHtml();
            }
            model.Pages     = pager.Pages;
            model.PageCount = pager.PageCount;
            return(Json(new AjaxResult {
                Status = 1, Data = model
            }));
            //return View(model);
        }
Beispiel #3
0
        public async Task <ActionResult> GetJournal(long id, int pageIndex = 1)
        {
            int    pageSize    = 8;
            string adminMobile = (await adminService.GetModelAsync(id)).Mobile;
            long   userId      = (await platformUserService.GetModelAsync("mobile", adminMobile)).Id;

            JournalSearchResult result = await journalService.GetAgencyModelListAsync(userId, null, null, null, null, pageIndex, pageSize);

            GetJournalViewModel model = new GetJournalViewModel();

            model.Journals            = result.Journals;
            model.GivingIntegralCount = result.GivingIntegralCount == null ? 0 : result.GivingIntegralCount;
            model.UseIntegralCount    = result.UseIntegralCount == null ? 0 : result.UseIntegralCount;

            Pagination pager = new Pagination();

            pager.PageIndex  = pageIndex;
            pager.PageSize   = pageSize;
            pager.TotalCount = result.TotalCount;
            pager.GetPagerHtml();

            model.Pages     = pager.Pages;
            model.PageCount = pager.PageCount;
            return(Json(new AjaxResult {
                Status = 1, Data = model
            }));
        }
        public async Task <JournalSearchResult> GetBonusModelListAsync(long?userId, string keyword, DateTime?startTime, DateTime?endTime, int pageIndex, int pageSize)
        {
            using (MyDbContext dbc = new MyDbContext())
            {
                JournalSearchResult result = new JournalSearchResult();
                var entities = dbc.GetAll <JournalEntity>().AsNoTracking().Where(j => j.IsEnabled == true && j.JournalTypeId > (int)JournalTypeEnum.佣金提现);
                if (userId != null)
                {
                    entities = entities.Where(a => a.UserId == userId);
                }
                if (!string.IsNullOrEmpty(keyword))
                {
                    entities = entities.Where(g => g.Remark.Contains(keyword) || g.User.Mobile.Contains(keyword) || g.User.NickName.Contains(keyword) || g.OrderCode.Contains(keyword));
                }
                if (startTime != null)
                {
                    entities = entities.Where(a => a.CreateTime >= startTime);
                }
                if (endTime != null)
                {
                    entities = entities.Where(a => SqlFunctions.DateDiff("day", endTime, a.CreateTime) <= 0);
                }
                result.PageCount = (int)Math.Ceiling((await entities.LongCountAsync()) * 1.0f / pageSize);
                var journalResult = await entities.Include(j => j.User).OrderByDescending(a => a.CreateTime).Skip((pageIndex - 1) * pageSize).Take(pageSize).ToListAsync();

                result.List = journalResult.Select(a => ToDTO(a)).ToArray();
                return(result);
            }
        }
        public async Task <ActionResult> Incomes(int pageIndex = 1)
        {
            long userId        = CookieHelper.GetLoginId();
            long journalTypeId = await idNameService.GetIdByNameAsync("任务转发");

            JournalSearchResult result = await journalService.GetModelListAsync(userId, journalTypeId, null, null, null, pageIndex, pageSize);

            return(Json(new AjaxResult {
                Status = 1, Data = result
            }));
        }
        public async Task <ActionResult> List(string keyword, DateTime?startTime, DateTime?endTime, int pageIndex = 1)
        {
            //await orderService.AutoConfirmAsync();
            long journalTypeId = await idNameService.GetIdByNameAsync("佣金收入");

            JournalSearchResult result = await journalService.GetModelListAsync(null, journalTypeId, keyword, startTime, endTime, pageIndex, pageSize);

            ListViewModel model = new ListViewModel();

            return(Json(new AjaxResult {
                Status = 1, Data = model
            }));
        }
Beispiel #7
0
        public async Task <JournalSearchResult> GetModelListAsync(long?id, long?typeId, string mobile, string code, DateTime?startTime, DateTime?endTime, int pageIndex, int pageSize)
        {
            using (MyDbContext dbc = new MyDbContext())
            {
                JournalSearchResult result = new JournalSearchResult();
                long journalTypeId         = dbc.GetAll <JournalTypeEntity>().SingleOrDefault(j => j.Description == "消费").Id;
                var  journals = dbc.GetAll <JournalEntity>();
                if (id != null)
                {
                    if (typeId == journalTypeId)
                    {
                        journals = journals.Where(j => j.PlatformUserId != j.ToPlatformUserId && j.ToPlatformUserId == id);
                    }
                }
                journals = journals.Where(j => j.JournalTypeId == journalTypeId && j.InIntegral == null);
                if (!string.IsNullOrEmpty(mobile))
                {
                    journals = journals.Where(j => j.PlatformUser.Mobile.Contains(mobile));
                }
                if (!string.IsNullOrEmpty(code))
                {
                    journals = journals.Where(j => j.PlatformUser.Code.Contains(code));
                }
                if (startTime != null)
                {
                    journals = journals.Where(j => j.CreateTime >= startTime);
                }
                if (endTime != null)
                {
                    journals = journals.Where(a => a.CreateTime.Year <= endTime.Value.Year && a.CreateTime.Month <= endTime.Value.Month && a.CreateTime.Day <= endTime.Value.Day);
                }
                long givingIntegralId = dbc.GetAll <IntegralTypeEntity>().SingleOrDefault(i => i.Name == "商家积分").Id;
                long useIntegralId    = dbc.GetAll <IntegralTypeEntity>().SingleOrDefault(i => i.Name == "消费积分").Id;
                result.TotalCount = await journals.LongCountAsync();

                var user = await dbc.GetAll <PlatformUserEntity>().SingleOrDefaultAsync(p => p.Mobile == "PlatformUser201805051709360001");

                if (user != null)
                {
                    long platformUserId = user.Id;
                    result.GivingIntegrals = await journals.Where(j => j.ToIntegralTypeId == givingIntegralId && j.PlatformUserId == platformUserId).SumAsync(j => j.OutIntegral);

                    result.UseIntegrals = await journals.Where(j => j.ToIntegralTypeId == useIntegralId && j.PlatformUserId == platformUserId).SumAsync(j => j.OutIntegral);
                }
                var journalResult = await journals.OrderByDescending(j => j.CreateTime).Skip((pageIndex - 1) * pageSize).Take(pageSize).ToListAsync();

                result.Journals = journalResult.Select(j => ToDTO(j)).ToArray();
                return(result);
            }
        }
Beispiel #8
0
        public async Task <JournalSearchResult> GetUserModelListAsync(long id, int pageIndex, int pageSize)
        {
            using (MyDbContext dbc = new MyDbContext())
            {
                JournalSearchResult result = new JournalSearchResult();
                var  journals = dbc.GetAll <JournalEntity>();
                long useId    = dbc.GetAll <JournalTypeEntity>().SingleOrDefault(j => j.Description == "消费").Id;
                journals          = journals.Where(j => (j.PlatformUserId == id && j.PlatformUserId == j.ToPlatformUserId) || (j.PlatformUserId == id && j.JournalTypeId == useId) || (j.ToPlatformUserId == id && j.ToPlatformUserId == j.FormPlatformUserId));
                result.TotalCount = await journals.LongCountAsync();

                var res = await journals.OrderByDescending(j => j.CreateTime).Skip((pageIndex - 1) * pageSize).Take(pageSize).ToListAsync();

                result.Journals = res.Select(j => ToDTO(j)).ToArray();
                return(result);
            }
        }
Beispiel #9
0
        public async Task <ActionResult> List(string keyword, DateTime?startTime, DateTime?endTime, int pageIndex = 1)
        {
            await orderService.AutoConfirmAsync();

            long journalTypeId = await idNameService.GetIdByNameAsync("佣金收入");

            JournalSearchResult result = await journalService.GetModelListAsync(null, journalTypeId, keyword, startTime, endTime, pageIndex, pageSize);

            CalcAmountResult res = await userService.CalcCount();

            ListViewModel model = new ListViewModel();

            model.Journals       = result.Journals;
            model.PageCount      = result.PageCount;
            model.TotalAmount    = res.TotalAmount;
            model.TotalTakeCash  = res.TotalTakeCash;
            model.TotalBuyAmount = res.TotalBuyAmount;
            return(Json(new AjaxResult {
                Status = 1, Data = model
            }));
        }
Beispiel #10
0
        public async Task <ActionResult> GetJournal(long id, int pageIndex = 1)
        {
            JournalSearchResult result = await journalService.GetMerchantModelListAsync(id, null, null, null, null, null, pageIndex, pageSize);

            GetJournalViewModel model = new GetJournalViewModel();

            model.Journals = result.Journals;

            Pagination pager = new Pagination();

            pager.PageIndex  = pageIndex;
            pager.PageSize   = pageSize;
            pager.TotalCount = result.TotalCount;
            pager.GetPagerHtml();

            model.Pages     = pager.Pages;
            model.PageCount = pager.PageCount;
            return(Json(new AjaxResult {
                Status = 1, Data = model
            }));
        }
Beispiel #11
0
        public async Task <JournalSearchResult> GetModelListAsync(string typeName, string mobile, string code, DateTime?startTime, DateTime?endTime, int pageIndex, int pageSize)
        {
            using (MyDbContext dbc = new MyDbContext())
            {
                JournalSearchResult result = new JournalSearchResult();
                var  journals = dbc.GetAll <JournalEntity>();
                long useId    = dbc.GetAll <JournalTypeEntity>().SingleOrDefault(j => j.Description == "消费").Id;
                long givingId = dbc.GetAll <JournalTypeEntity>().SingleOrDefault(j => j.Description == "赠送").Id;
                if (typeName == "交易")
                {
                    journals = journals.Where(j => j.PlatformUserId != j.ToPlatformUserId).Where(j => j.JournalTypeId == useId || j.JournalTypeId == givingId);
                }
                if (!string.IsNullOrEmpty(mobile))
                {
                    journals = journals.Where(j => j.ToPlatformUser.Mobile.Contains(mobile) || j.PlatformUser.Mobile.Contains(mobile));
                }
                if (!string.IsNullOrEmpty(code))
                {
                    journals = journals.Where(j => j.ToPlatformUser.Code.Contains(code) || j.PlatformUser.Code.Contains(code));
                }
                if (startTime != null)
                {
                    journals = journals.Where(j => j.CreateTime >= startTime);
                }
                if (endTime != null)
                {
                    journals = journals.Where(a => a.CreateTime.Year <= endTime.Value.Year && a.CreateTime.Month <= endTime.Value.Month && a.CreateTime.Day <= endTime.Value.Day);
                }
                result.TotalCount = await journals.LongCountAsync();

                result.GivingIntegralCount = await journals.Where(j => j.JournalTypeId == givingId).SumAsync(j => j.OutIntegral);

                result.UseIntegralCount = await journals.Where(j => j.JournalTypeId == useId).SumAsync(j => j.OutIntegral);

                var journalResult = await journals.OrderByDescending(j => j.CreateTime).Skip((pageIndex - 1) * pageSize).Take(pageSize).ToListAsync();

                result.Journals = journalResult.Select(j => ToDTO(j)).ToArray();
                return(result);
            }
        }
Beispiel #12
0
        public async Task <JournalSearchResult> GetModelListAsync(long?userId, long?journalTypeId, string keyword, DateTime?startTime, DateTime?endTime, int pageIndex, int pageSize)
        {
            using (MyDbContext dbc = new MyDbContext())
            {
                JournalSearchResult result = new JournalSearchResult();
                var entities = dbc.GetAll <JournalEntity>().AsNoTracking().Where(j => j.Enabled == 1);
                if (userId != null)
                {
                    entities = entities.Where(a => a.UserId == userId);
                }
                if (journalTypeId != null)
                {
                    entities = entities.Where(a => a.JournalTypeId == journalTypeId);
                }
                if (!string.IsNullOrEmpty(keyword))
                {
                    entities = entities.Where(g => g.Remark.Contains(keyword) || g.User.Mobile.Contains(keyword) || g.User.NickName.Contains(keyword));
                }
                if (startTime != null)
                {
                    entities = entities.Where(a => a.CreateTime >= startTime);
                }
                if (endTime != null)
                {
                    entities = entities.Where(a => a.CreateTime <= endTime);
                }
                result.PageCount = (int)Math.Ceiling((await entities.LongCountAsync()) * 1.0f / pageSize);
                decimal?totalInAmount = await entities.SumAsync(j => j.InAmount);

                decimal?totalOutAmount = await entities.SumAsync(j => j.OutAmount);

                result.TotalInAmount  = totalInAmount == null ? 0 : totalInAmount;
                result.TotalOutAmount = totalOutAmount == null ? 0 : totalOutAmount;
                var res = await entities.Include(j => j.User).OrderByDescending(a => a.CreateTime).Skip((pageIndex - 1) * pageSize).Take(pageSize).ToListAsync();

                result.List = res.Select(a => ToDTO(a)).ToArray();
                return(result);
            }
        }