Пример #1
0
        public async Task <IActionResult> PostMemberFollowAsync([FromHeader] String source,
                                                                [FromRoute] RouteIdInt route,
                                                                [FromBody] MemberFollowPost item)
        {
            var response = new Response <Object>();

            try {
                if (item.OType == 1)
                {
                    response.Code = await _IMemberFollowRepository.BatchRemoveAsync(a => a.MemberId == route.id && a.SourceId == item.SourceId);
                }
                else
                {
                    await _IMemberFollowRepository.AddAsync(new MemberFollow()
                    {
                        MemberId   = route.id,
                        SourceId   = item.SourceId,
                        FollowTime = System.DateTime.Now,
                        IsEnable   = 1
                    });

                    await _IMemberFollowRepository.SaveChangesAsync();
                }
            }
            catch (Exception ex) {
                response.SetError(ex, this._ILogger);
            }
            return(response.ToHttpResponse());
        }
Пример #2
0
        public async Task <IActionResult> GetDictionaryAsync([FromHeader] String source,
                                                             [FromRoute] RouteIdInt route)
        {
            var response = new Response <Object>();

            try {
                var dictionary = await _ISystemDictionaryRepository.Query(a => a.DictionaryId == route.id && a.IsEnable == 1)
                                 .Select(a => new {
                    a.DictionaryId,
                    a.TypeKey,
                    a.DistKey,
                    a.DistName,
                    a.DistValue
                })
                                 .SingleOrDefaultAsync();

                if (dictionary != null)
                {
                    response.Data = dictionary;
                }
                else
                {
                    return(NotFound());
                }
            }
            catch (Exception ex) {
                response.SetError(ex, this._ILogger);
            }
            return(response.ToHttpResponse());
        }
Пример #3
0
        public async Task <IActionResult> GetMemberWeekIncomesAsync([FromHeader] String source,
                                                                    [FromRoute] RouteIdInt route)
        {
            var response = new Response <Object>();

            try {
                var day    = Convert.ToDateTime(System.DateTime.Now.AddDays(-6).ToString("yyyy-MM-dd 00:00:00"));
                var result = await _IMemberIncomeRepository.Query(a => a.MemberId == route.id && a.CreateTime >= day && a.Status == 0)
                             .GroupBy(a => a.CreateTime.Value.ToString("yyyy-MM-dd"))
                             .OrderByDescending(a => a.First().CreateTime.Value.ToString("yyyy-MM-dd"))
                             .Select(a => new {
                    CreateTime = a.Key,
                    Beans      = a.Sum(b => b.Beans)
                }).ToListAsync();

                if (result.Count > 0)
                {
                    response.Code = true;
                    response.Data = result;
                }
                else
                {
                    return(NoContent());
                }
            }
            catch (Exception ex) {
                response.SetError(ex, this._ILogger);
            }
            return(response.ToHttpResponse());
        }
Пример #4
0
        public async Task <IActionResult> GetMemberFollowAsync([FromHeader] String source,
                                                               [FromRoute] RouteIdInt route,
                                                               [FromQuery] MemberFollowGet item)
        {
            var response = new Response <Object>();

            try {
                var result = await _IMemberFollowRepository.Query(a => a.MemberId == route.id && a.IsEnable == 1,
                                                                  a => new MemberFollow(),
                                                                  true)
                             .ToPager(item.PageIndex.Value, item.PageSize.Value)
                             .ToListAsync();

                if (result.Count > 0)
                {
                    response.Code = true;
                    response.Data = result;
                }
                else
                {
                    return(NoContent());
                }
            }
            catch (Exception ex) {
                response.SetError(ex, this._ILogger);
            }
            return(response.ToHttpResponse());
        }
Пример #5
0
        public async Task <IActionResult> PostCommentUpAsync([FromHeader] String source,
                                                             [FromRoute] RouteIdInt route)
        {
            var response = new Response <Object>();

            try {
                if (await _IMemberCommentUpRepository.IsExistAsync(a => a.CommentId == route.id && a.MemberId == MemberId))
                {
                    return(BadRequest("已赞,无需再次点赞!"));
                }
                var result = await _IMemberCommentUpRepository.AddAsync(new MemberCommentUp()
                {
                    CommentId = route.id,
                    MemberId  = MemberId
                });

                await _IMemberCommentRepository.IncrementUp(route.id);

                await _IMemberCommentRepository.SaveChangesAsync();
            }
            catch (Exception ex) {
                response.SetError(ex, this._ILogger);
            }
            return(response.ToHttpResponse());
        }
Пример #6
0
        public async Task <IActionResult> PostMemberInfoAsync([FromHeader] String source,
                                                              [FromRoute] RouteIdInt route,
                                                              [FromBody] MemberInfoPost item)
        {
            var response = new Response <Object>();

            try {
                if (await _IMemberInfoRepository.IsExistAsync(a => a.MemberId == route.id && a.IsEnable == 1))
                {
                    var entity = await _IMemberInfoRepository.FirstOrDefaultAsync(a => a.MemberId == route.id);

                    if (!string.IsNullOrEmpty(item.NickName))
                    {
                        entity.NickName = item.NickName;
                    }
                    if (item.Sex.HasValue)
                    {
                        entity.Sex = item.Sex;
                    }
                    if (!string.IsNullOrEmpty(item.Phone))
                    {
                        entity.Phone = item.Phone;
                    }
                    if (!string.IsNullOrEmpty(item.Name))
                    {
                        entity.Name = item.Name;
                    }
                    if (!string.IsNullOrEmpty(item.Alipay))
                    {
                        entity.Alipay = item.Alipay;
                        await _ITaskInfoApp.AddTasks("T0004", new TaskItem()
                        {
                            MemberId  = entity.MemberId,
                            InvitedId = 0,
                            FromMark  = 0
                        });
                    }
                    //注销账号
                    entity.IsEnable = item.IsEnable;//注销
                    _IMemberInfoRepository.Update(entity);
                    response.Code = await _IMemberInfoRepository.SaveChangesAsync() > 0;

                    response.Message = "修改成功";
                }
                else
                {
                    return(NotFound());
                }
            }
            catch (Exception ex) {
                response.SetError(ex, this._ILogger);
            }
            return(response.ToHttpResponse());
        }
Пример #7
0
        public async Task <IActionResult> GetMemberIncomesAsync([FromHeader] String source,
                                                                [FromRoute] RouteIdInt route,
                                                                [FromQuery] RoutePageCode item)
        {
            var response = new Response <Object>();

            try {
                Expression <Func <MemberIncome, bool> > expression;
                if (!string.IsNullOrEmpty(item.code))
                {
                    //查询不同code
                    expression = a => a.MemberId == route.id && a.TaskCode == item.code && a.Status == 0 && a.IsDisplay == 1 && a.CreateTime.Value.ToString("yyyy-MM-dd") == System.DateTime.Now.ToString("yyyy-MM-dd");
                }
                else if (item.todayFlag)
                {
                    //查询今日
                    expression = a => a.MemberId == route.id && a.Status == 0 && a.IsDisplay == 1 && a.CreateTime.Value.ToString("yyyy-MM-dd") == System.DateTime.Now.ToString("yyyy-MM-dd");
                }
                else
                {
                    expression = a => a.MemberId == route.id && a.Status == 0 && a.IsDisplay == 1;//查询所有
                }
                var result = await _IMemberIncomeRepository.Query(expression)
                             .OrderByDescending(a => a.CreateTime)
                             .ToPager(item.PageIndex.Value, item.PageSize.Value)
                             .Select(a => new {
                    a.IncomeId,
                    a.TaskName,
                    a.CategoryDay,
                    a.CategoryFixed,
                    a.BeansText,
                    a.Title,
                    a.CreateTime
                })
                             .ToListAsync();

                if (result.Count > 0)
                {
                    response.Code = true;
                    response.Data = result;
                }
                else
                {
                    return(NoContent());
                }
            }
            catch (Exception ex) {
                response.SetError(ex, this._ILogger);
            }
            return(response.ToHttpResponse());
        }
Пример #8
0
        public async Task <IActionResult> GetMemberBeansSumsAsync([FromHeader] String source,
                                                                  [FromRoute] RouteIdInt route)
        {
            var response = new Response <object>();

            try {
                response.Code = true;
                response.Data = await _IMemberIncomeRepository.Query(a => a.MemberId == route.id &&
                                                                     a.CreateTime.Value.ToString("yyyy-MM-dd") == System.DateTime.Now.ToString("yyyy-MM-dd") &&
                                                                     a.Status == 0)
                                .SumAsync(a => a.Beans);
            }
            catch (Exception ex) {
                response.SetError(ex, this._ILogger);
            }
            return(response.ToHttpResponse());
        }
Пример #9
0
        public async Task <IActionResult> GetCommentAsync([FromHeader] String source,
                                                          [FromRoute] RouteIdInt route,
                                                          [FromQuery] CommentGet item)
        {
            var response = new Response <Object>();

            try {
                var express = Express.Begin <MemberComment>(true);
                express = express.And(a => a.ParentId == route.id && a.IsEnable == 1);

                var result = await _IMemberCommentRepository.Query(express)
                             .Select(a => new {
                    CommentId   = a.CommentId,
                    NewsId      = a.NewsId,
                    ParentId    = a.ParentId,
                    MemberId    = a.MemberId,
                    MemberName  = a.MemberName,
                    CommentBody = a.CommentBody,
                    CommentTime = a.CommentTime,
                    QuoteId     = a.QuoteId,
                    QuoteName   = a.QuoteName,
                    Up          = a.Up,
                    IsUp        = item.MemberId > 0 ? a.MemberCommentUps.Any(b => b.MemberId == item.MemberId) : false
                })
                             .OrderBy(a => a.CommentTime)
                             .ToPager(item.PageIndex.Value, item.PageSize.Value)
                             .ToListAsync();

                if (result.Count <= 0)
                {
                    return(NoContent());
                }
                else
                {
                    response.Code = true;
                    response.Data = result;
                }
            }
            catch (Exception ex) {
                response.SetError(ex, this._ILogger);
            }
            return(response.ToHttpResponse());
        }
Пример #10
0
        public async Task <IActionResult> PostMemberInfoAvatarAsync([FromHeader] String source,
                                                                    [FromRoute] RouteIdInt route,
                                                                    [FromBody] String avatar)
        {
            var response = new Response <Object>();

            try {
                if (string.IsNullOrEmpty(avatar))
                {
                    return(BadRequest("请传递头像文件!"));
                }
                else
                {
                }
            }
            catch (Exception ex) {
                response.SetError(ex, this._ILogger);
            }
            return(response.ToHttpResponse());
        }
Пример #11
0
        public async Task <IActionResult> GetMemberInfoAsync([FromHeader] String source,
                                                             [FromRoute] RouteIdInt route)
        {
            var response = new Response <MemberAppDto>();

            try {
                var entity = await _IMemberInfoRepository.GetAppInfo(route.id);

                if (entity != null)
                {
                    entity.TodayRead = await _IMemberIncomeRepository.Query(a => a.MemberId == route.id &&
                                                                            a.TaskCode == "T0007" &&
                                                                            a.CreateTime.Value.ToString("yyyy-MM-dd") == System.DateTime.Now.ToString("yyyy-MM-dd") &&
                                                                            a.Status == 0)
                                       .SumAsync(a => a.ReadTime) / 60;

                    entity.TodayBeans = await _IMemberIncomeRepository.Query(a => a.MemberId == route.id &&
                                                                             a.CreateTime.Value.ToString("yyyy-MM-dd") == System.DateTime.Now.ToString("yyyy-MM-dd") &&
                                                                             a.Status == 0)
                                        .SumAsync(a => a.Beans);

                    var before = Convert.ToDecimal(_IConfiguration["ExchangeRatio:Before"]);
                    var after  = Convert.ToInt32(_IConfiguration["ExchangeRatio:After"]);
                    entity.Ratio      = $"{before}/{after}";
                    entity.RatioValue = after / before;
                    response.Code     = true;
                    response.Data     = entity;
                }
                else
                {
                    return(NotFound());
                }
            }
            catch (Exception ex) {
                response.SetError(ex, this._ILogger);
            }
            return(response.ToHttpResponse());
        }