public HttpResponseMessage GetBrokerWithdraw(EnumBrokerWithdrawSearchOrderBy orderByAll = EnumBrokerWithdrawSearchOrderBy.State, bool isDes = true, int page = 1, int pageSize = 10)
 {
     var condition = new BrokerWithdrawSearchCondition
     {
         OrderBy = orderByAll,
         Page = Convert.ToInt32(page),
         PageCount = pageSize,
         isDescending =isDes 
     };
     var list = _brokerwithdrawService.GetBrokerWithdrawsByCondition(condition).Select(p => new
     {
         Id = p.Id,
         bankname = p.BankCard.Bank.Codeid,
         banknumber = p.BankCard.Num,
         brokername = p.Broker.Brokername,
         withdrawnum = p.WithdrawTotalNum,
         state = p.State,
         accacount = p.AccAccountantId.Brokername,
         WithdrawTime = p.WithdrawTime
     }).ToList().Select(p => new
     {
         Id = p.Id,
         bankname = p.bankname,
         banknumber = p.banknumber,
         withdrawnum = p.withdrawnum,
         brokername = p.brokername,
         state = p.state,
         accacount = p.accacount,
         WithdrawTime = p.WithdrawTime.ToString("yyyy-MM-dd")
     });
     var Count = _brokerwithdrawService.GetBrokerWithdrawCount(condition);
     return PageHelper.toJson(new { List = list, Condition = condition, totalCount = Count });
 }
        public HttpResponseMessage GetAllBrokerWithdrawByUser()
        {
              var user = (UserBase)_workContext.CurrentUser;
              if (user != null)
              {
                  var broker = _brokerService.GetBrokerByUserId(user.Id);//获取当前经纪人
                  if (broker == null)
                  {
                      return PageHelper.toJson(PageHelper.ReturnValue(false, "获取用户失败,请检查是否登陆"));
                  }
                    
            var condition = new BrokerWithdrawSearchCondition
            {             
                Brokers=broker
            };
             object list = null;
             if(_brokerwithdrawService.GetBrokerWithdrawCount(condition)>0)
             {
                 list = _brokerwithdrawService.GetBrokerWithdrawsByCondition(condition).Select(p => new
                 {
                     Id = p.Id,
                     bankname = p.BankCard.Bank.Codeid,
                     withdrawnum = p.WithdrawTotalNum,
                     state = p.State == 0 ? "处理中" : p.State == 1 ? "已打款" : "",
                     WithdrawTime = p.WithdrawTime
                 }).ToList();

             }            
                return PageHelper.toJson(new { List = list });

              }
              return PageHelper.toJson(PageHelper.ReturnValue(false, "获取用户失败,请检查是否登陆"));     
        }
        public int GetBrokerWithdrawCount(BrokerWithdrawSearchCondition condition)
        {
            var query = _brokerwithdrawRepository.Table;
            try
            {
                if (condition.WithdrawtimeBegin.HasValue)
                {
                    query = query.Where(q => q.WithdrawTime >= condition.WithdrawtimeBegin.Value);
                }
                if (condition.WithdrawtimeEnd.HasValue)
                {
                    query = query.Where(q => q.WithdrawTime < condition.WithdrawtimeEnd.Value);
                }
                if (condition.AddtimeBegin.HasValue)
                {
                    query = query.Where(q => q.Addtime >= condition.AddtimeBegin.Value);
                }
                if (condition.AddtimeEnd.HasValue)
                {
                    query = query.Where(q => q.Addtime < condition.AddtimeEnd.Value);
                }
                if (condition.UptimeBegin.HasValue)
                {
                    query = query.Where(q => q.Uptime >= condition.UptimeBegin.Value);
                }

                if (condition.State!=null)
                {
                query = query.Where(q => q.State == condition.State);
                }
                if (condition.UptimeEnd.HasValue)
                {
                    query = query.Where(q => q.Uptime < condition.UptimeEnd.Value);
                }
                if (condition.WithdrawTotalNum.HasValue)
                {
                    query = query.Where(q => q.WithdrawTotalNum == condition.WithdrawTotalNum.Value);
                }
                if (condition.Ids != null && condition.Ids.Any())
                {
                    query = query.Where(q => condition.Ids.Contains(q.Id));
                }
                if (condition.Brokers != null)
                {
                    query = query.Where(q => q.Broker.Id==condition.Brokers.Id);
                }
                if (condition.BankCards != null && condition.BankCards.Any())
                {
                    query = query.Where(q => condition.BankCards.Contains(q.BankCard));
                }
                if (condition.Addusers != null && condition.Addusers.Any())
                {
                    query = query.Where(q => condition.Addusers.Contains(q.Adduser));
                }
                if (condition.Upusers != null && condition.Upusers.Any())
                {
                    query = query.Where(q => condition.Upusers.Contains(q.Upuser));
                }
                return query.Count();
            }
            catch (Exception e)
            {
                _log.Error(e, "数据库操作出错");
                return -1;
            }
        }
        public IQueryable<BrokerWithdrawEntity> GetBrokerWithdrawsByCondition(BrokerWithdrawSearchCondition condition)
        {
            var query = _brokerwithdrawRepository.Table;
            try
            {
                if (condition.WithdrawtimeBegin.HasValue)
                {
                    query = query.Where(q => q.WithdrawTime >= condition.WithdrawtimeBegin.Value);
                }
                if (condition.WithdrawtimeEnd.HasValue)
                {
                    query = query.Where(q => q.WithdrawTime < condition.WithdrawtimeEnd.Value);
                }
                if (condition.AddtimeBegin.HasValue)
                {
                    query = query.Where(q => q.Addtime >= condition.AddtimeBegin.Value);
                }
                if (condition.AddtimeEnd.HasValue)
                {
                    query = query.Where(q => q.Addtime < condition.AddtimeEnd.Value);
                }
                if (condition.UptimeBegin.HasValue)
                {
                    query = query.Where(q => q.Uptime >= condition.UptimeBegin.Value);
                }
                if (condition.UptimeEnd.HasValue)
                {
                    query = query.Where(q => q.Uptime < condition.UptimeEnd.Value);
                }
                if (condition.WithdrawTotalNum.HasValue)
                {
                    query = query.Where(q => q.WithdrawTotalNum == condition.WithdrawTotalNum.Value);
                }
                if (condition.Ids != null && condition.Ids.Any())
                {
                    query = query.Where(q => condition.Ids.Contains(q.Id));
                }
                if (condition.Brokers != null)
                {
                    query = query.Where(q => (q.Broker.Id == condition.Brokers.Id));
                }
                if (condition.BankCards != null && condition.BankCards.Any())
                {
                    query = query.Where(q => condition.BankCards.Contains(q.BankCard));
                }
                if (condition.Addusers != null && condition.Addusers.Any())
                {
                    query = query.Where(q => condition.Addusers.Contains(q.Adduser));
                }

                if (condition.State!=null)
                {
                    query = query.Where(q => q.State == condition.State);
                }

                if (condition.Upusers != null && condition.Upusers.Any())
                {
                    query = query.Where(q => condition.Upusers.Contains(q.Upuser));
                }
                if (condition.OrderBy.HasValue)
                {
                    switch (condition.OrderBy.Value)
                    {
                        case EnumBrokerWithdrawSearchOrderBy.OrderById:
                            query = condition.isDescending ? query.OrderByDescending(q => q.Id) : query.OrderBy(q => q.Id);
                            break;
                        case EnumBrokerWithdrawSearchOrderBy.State:
                            query = condition.isDescending ? query.OrderByDescending(q => q.State) : query.OrderBy(q => q.State);
                            break;
                        case EnumBrokerWithdrawSearchOrderBy.OrderByBrokername:
                            query = condition.isDescending ? query.OrderByDescending(q => q.Broker.Brokername) : query.OrderBy(q => q.Broker.Brokername);
                            break;
                        case EnumBrokerWithdrawSearchOrderBy.OrderByWithdrawTime:
                            query = condition.isDescending ? query.OrderByDescending(q => q.WithdrawTime) : query.OrderBy(q => q.WithdrawTime);
                            break;
                        case EnumBrokerWithdrawSearchOrderBy.OrderByaccacount:
                            query = condition.isDescending ? query.OrderByDescending(q => q.AccAccountantId.Brokername) : query.OrderBy(q => q.AccAccountantId.Brokername);
                            break;
                        case EnumBrokerWithdrawSearchOrderBy.OrderByState:
                            query = condition.isDescending ? query.OrderByDescending(q => q.State) : query.OrderBy(q => q.State);
                            break;
                          
                    }

                }
                else
                {
                    query = query.OrderBy(q => q.Id);
                }

                if (condition.Page.HasValue && condition.PageCount.HasValue)
                {
                    query = query.Skip((condition.Page.Value - 1) * condition.PageCount.Value).Take(condition.PageCount.Value);
                }
                return query;
            }
            catch (Exception e)
            {
                _log.Error(e, "数据库操作出错");
                return null;
            }
        }
Esempio n. 5
0
        public HttpResponseMessage DeleteBankCard([FromBody] string id)
        {
            if (!string.IsNullOrEmpty(id) && id!="0")
           {
             int Id;
             if (!Int32.TryParse(id, out Id))
             {
                 return PageHelper.toJson(PageHelper.ReturnValue(false, "数据异常"));
             }
             var user = (UserBase)_workContext.CurrentUser;
             if (user != null)
             {
                 var broker = _brokerService.GetBrokerByUserId(user.Id);//获取当前经纪人
                 if (broker == null)
                 {

                     return PageHelper.toJson(PageHelper.ReturnValue(false, "获取用户失败,请检查是否登陆"));
                 }
                 else
                 {
                      
                     
                     int [] ids={Id};                 
                     var bankcardSearchCon = new BankCardSearchCondition
                     {
                         Brokers = broker,
                         Ids=ids
                     };
                    if( _bankcardService.GetBankCardCount(bankcardSearchCon)>0)//判断是否是自己的卡
                    {
                        var Bank=_bankcardService.GetBankCardById(Id);
                        if (Bank==null)
                        {
                          return PageHelper.toJson(PageHelper.ReturnValue(false, "数据异常"));
                        }
                        BankCardEntity[] banks={Bank};
                      BrokerWithdrawSearchCondition bwithSearchCon=new BrokerWithdrawSearchCondition{
                           Brokers=broker,
                           BankCards=banks
                      };
                      if (_brokerwithdrawService.GetBrokerWithdrawCount(bwithSearchCon) > 0)//判断用户提现表是否使用此卡
                    {
                        return PageHelper.toJson(PageHelper.ReturnValue(false, "有该银行相关提现数据不能删除"));
                    }
                      _bankcardService.Delete(Bank);
                      return PageHelper.toJson(PageHelper.ReturnValue(true, "删除成功"));

                    }
                    else
                    {
                        return PageHelper.toJson(PageHelper.ReturnValue(false, "数据异常"));
                    }
                                     
                 }
             }
           
           }
           return PageHelper.toJson(PageHelper.ReturnValue(false, "数据异常"));
        }