public async Task <IActionResult> GetCouponListByUserIdAsync(string userId)
        {
            if (string.IsNullOrWhiteSpace(userId))
            {
                _result.status     = (int)HttpStatusCode.BadRequest;
                _result.msg        = "userId is not null";
                _result.resultData = null;
                return(BadRequest(_result));
            }

            try
            {
                var query = new CouponQuery
                {
                    UserId = new Guid(userId)
                };
                var res = await _couponService.GetCouponsAsync(query);

                _result.status     = (int)HttpStatusCode.OK;
                _result.msg        = "success";
                _result.resultData = res?.ToList();
                return(Ok(_result));
            }
            catch (Exception ex)
            {
                _log.Error("GetCouponListByUserIdAsync method error:" + ex);
                _result.status     = (int)HttpStatusCode.InternalServerError;
                _result.msg        = "fail";
                _result.resultData = null;
                return(StatusCode(_result.status, _result));
            }
        }
Example #2
0
 public async Task <IEnumerable <CouponDto> > GetAsync(CouponQuery query, CancellationToken token)
 {
     return(await _statelessSession.Query <Coupon>()
            .Select(s => new CouponDto()
     {
         Value = s.Value,
         AmountOfUsers = _statelessSession.Query <UserCoupon>().Count(w => w.Coupon.Id == s.Id),
         Code = s.Code,
         CouponType = s.CouponType,
         TutorId = s.Tutor.Id,
         Description = s.Description,
         Owner = s.Owner
     }).ToListAsync(token));
 }
Example #3
0
        public QueryPageModel <CouponInfo> GetCouponList(CouponQuery query)
        {
            if (query.ShopId.HasValue)
            {
                if (query.ShopId <= 0)
                {
                    throw new HimallException("ShopId不能识别");
                }
            }
            int auditsuccess = (int)WXCardLogInfo.AuditStatusEnum.Audited;
            var coupon       = DbFactory.Default.Get <CouponInfo>();

            if (query.ShopId.HasValue)
            {
                coupon = coupon.Where(d => d.ShopId == query.ShopId);
            }
            if (query.IsShowAll != true)
            {
                coupon = coupon.Where(d => d.WXAuditStatus == auditsuccess);
            }
            if (query.ShowPlatform.HasValue)
            {
                var sett = DbFactory.Default
                           .Get <CouponSettingInfo>()
                           .Where <CouponInfo>((csi, ci) => ci.Id == csi.CouponID && csi.PlatForm == query.ShowPlatform.Value);
                coupon = coupon.Where(d => d.ExExists(sett));
            }
            if (query.IsOnlyShowNormal == true)
            {
                DateTime curMindate = DateTime.Now.Date;
                DateTime curMaxdate = curMindate.AddDays(1).Date;
                coupon = coupon.Where(d => d.EndTime >= curMaxdate && d.StartTime <= curMindate);
            }
            if (!string.IsNullOrWhiteSpace(query.CouponName))
            {
                coupon = coupon.Where(d => d.CouponName.Contains(query.CouponName));
            }
            var ret = coupon.OrderByDescending(o => o.EndTime).ToPagedList(query.PageNo, query.PageSize);
            QueryPageModel <CouponInfo> pageModel = new QueryPageModel <CouponInfo>()
            {
                Models = ret, Total = ret.TotalRecordCount
            };

            return(pageModel);
        }
Example #4
0
        public ObsoletePageModel <CouponInfo> GetCouponList(CouponQuery query)
        {
            if (query.ShopId.HasValue)
            {
                if (query.ShopId <= 0)
                {
                    throw new HimallException("ShopId不能识别");
                }
            }
            int total        = 0;
            int auditsuccess = (int)WXCardLogInfo.AuditStatusEnum.Audited;
            IQueryable <CouponInfo> coupon = Context.CouponInfo.AsQueryable();

            if (query.ShopId.HasValue)
            {
                coupon = coupon.Where(d => d.ShopId == query.ShopId);
            }
            if (query.IsShowAll != true)
            {
                coupon = coupon.Where(d => d.WXAuditStatus == auditsuccess);
            }
            if (query.ShowPlatform.HasValue)
            {
                coupon = coupon.Where(d => d.Himall_CouponSetting.Any(s => s.PlatForm == query.ShowPlatform.Value));
            }
            if (query.IsOnlyShowNormal == true)
            {
                DateTime curMindate = DateTime.Now.Date;
                DateTime curMaxdate = curMindate.AddDays(1).Date;
                coupon = coupon.Where(d => d.EndTime >= curMaxdate && d.StartTime <= curMindate);
            }
            if (!string.IsNullOrWhiteSpace(query.CouponName))
            {
                coupon = coupon.Where(d => d.CouponName.Contains(query.CouponName));
            }
            coupon = coupon.GetPage(out total, d => d.OrderByDescending(o => o.EndTime), query.PageNo, query.PageSize);
            ObsoletePageModel <CouponInfo> pageModel = new ObsoletePageModel <CouponInfo>()
            {
                Models = coupon, Total = total
            };

            return(pageModel);
        }
Example #5
0
        public JsonResult GetCouponList(int page, int rows, string couponName)
        {
            ICouponService couponService = ServiceHelper.Create <ICouponService>();
            CouponQuery    couponQuery   = new CouponQuery()
            {
                CouponName = couponName,
                ShopId     = new long?(base.CurrentSellerManager.ShopId),
                PageSize   = rows,
                PageNo     = page
            };
            PageModel <CouponInfo> couponList         = couponService.GetCouponList(couponQuery);
            IQueryable <long>      vShopCouponSetting =
                from item in ServiceHelper.Create <IVShopService>().GetVShopCouponSetting(base.CurrentSellerManager.ShopId)
                select item.CouponID;
            var array =
                from item in couponList.Models.ToArray()
                select new { Id = item.Id, StartTime = item.StartTime.ToString("yyyy-MM-dd"), EndTime = item.EndTime.ToString("yyyy-MM-dd"), Price = Math.Round(item.Price, 2), CouponName = item.CouponName, PerMax = (item.PerMax == 0 ? "不限张" : string.Concat(item.PerMax.ToString(), "张/人")), OrderAmount = (item.OrderAmount == new decimal(0) ? "不限制" : string.Concat("满", item.OrderAmount)), IsSelect = vShopCouponSetting.Contains(item.Id) };

            return(Json(new { rows = array, total = couponList.Total }));
        }
Example #6
0
        public JsonResult GetItemList(int page, int rows, string couponName)
        {
            ICouponService couponService = ServiceHelper.Create <ICouponService>();
            CouponQuery    couponQuery   = new CouponQuery()
            {
                CouponName = couponName,
                ShopId     = new long?(base.CurrentSellerManager.ShopId),
                IsShowAll  = new bool?(true),
                PageSize   = rows,
                PageNo     = page
            };
            PageModel <CouponInfo> couponList = couponService.GetCouponList(couponQuery);
            var list =
                from item in couponList.Models.ToList()
                select new { Id = item.Id, StartTime = item.StartTime.ToString("yyyy/MM/dd"), EndTime = item.EndTime.ToString("yyyy/MM/dd"), Price = Math.Round(item.Price, 2), CouponName = item.CouponName, PerMax = (item.PerMax == 0 ? "不限张" : string.Concat(item.PerMax.ToString(), "张/人")), OrderAmount = (item.OrderAmount == new decimal(0) ? "不限制" : string.Concat("满", item.OrderAmount)), Num = item.Num, ReceviceNum = item.Himall_CouponRecord.Count(), RecevicePeople = (
                                 from a in item.Himall_CouponRecord
                                 group a by a.UserId).Count <IGrouping <long, CouponRecordInfo> >(), Used = item.Himall_CouponRecord.Count((CouponRecordInfo a) => a.CounponStatus == CouponRecordInfo.CounponStatuses.Used), IsSyncWeiXin = item.IsSyncWeiXin, WXAuditStatus = (item.IsSyncWeiXin != 1 ? 1 : item.WXAuditStatus) };

            return(Json(new { rows = list, total = couponList.Total }));
        }
Example #7
0
        /// <summary>
        /// 根据查询条件获取设置信息
        /// </summary>
        /// <param name="query"></param>
        /// <returns></returns>
        public async Task <IEnumerable <Coupon> > GetCouponsAsync(CouponQuery query)
        {
            try
            {
                string sql = "SELECT * FROM Coupon WHERE 1=1";

                if (query.UserId != null)
                {
                    sql += " AND userId = @UserId";
                }

                var info = MapperManager.SetMapper <Coupon, CouponQuery>(query);
                return(await _mysqlRespository.QueryListAsync(sql, info));
            }
            catch (Exception ex)
            {
                _log.Error("GetCouponsAsync method error:" + ex);
                throw;
            }
        }
Example #8
0
        public PageModel <CouponInfo> GetCouponList(CouponQuery query)
        {
            long?shopId = query.ShopId;

            if ((shopId.GetValueOrDefault() > 0 ? false : shopId.HasValue))
            {
                throw new HimallException("ShopId不能识别");
            }
            int num  = 0;
            int num1 = 1;
            IQueryable <CouponInfo> wXAuditStatus = context.CouponInfo.FindBy((CouponInfo d) => d.ShopId == query.ShopId);
            bool?isShowAll = query.IsShowAll;

            if ((!isShowAll.GetValueOrDefault() ? true : !isShowAll.HasValue))
            {
                wXAuditStatus =
                    from d in wXAuditStatus
                    where d.WXAuditStatus == num1
                    select d;
            }
            if (!string.IsNullOrWhiteSpace(query.CouponName))
            {
                wXAuditStatus =
                    from d in wXAuditStatus
                    where d.CouponName.Contains(query.CouponName)
                    select d;
            }
            wXAuditStatus = wXAuditStatus.GetPage(out num, (IQueryable <CouponInfo> d) =>
                                                  from o in d
                                                  orderby o.EndTime descending
                                                  select o, query.PageNo, query.PageSize);
            return(new PageModel <CouponInfo>()
            {
                Models = wXAuditStatus,
                Total = num
            });
        }
Example #9
0
 /// <summary>
 /// 获取商家添加的优惠券列表
 /// </summary>
 /// <returns></returns>
 public static ObsoletePageModel <CouponInfo> GetCouponList(CouponQuery query)
 {
     return(_iCouponService.GetCouponList(query));
 }
Example #10
0
 public async Task <IActionResult> Page(CouponQuery couponQuery)
 {
     return(Success(await _couponService.PageAsync(couponQuery)));
 }
Example #11
0
 public async Task <IActionResult> Get(CouponQuery couponQuery)
 {
     return(Success(await _couponService.RetrieveAsync(couponQuery)));
 }
Example #12
0
 public async Task AdminCouponQuery_Ok()
 {
     var query = new CouponQuery();
     var _     = await _fixture.QueryBus.QueryAsync(query, default);
 }
Example #13
0
 /// <summary>
 /// 获取商家添加的优惠券列表
 /// </summary>
 /// <returns></returns>
 public static QueryPageModel <CouponInfo> GetCouponList(CouponQuery query)
 {
     return(Service.GetCouponList(query));
 }
        public async Task <IEnumerable <CouponDto> > GetAsync(CancellationToken token)
        {
            var query = new CouponQuery();

            return(await _queryBus.QueryAsync(query, token));
        }