protected override void ExecuteMethod()
        {
            var tempModel = new EnterpriseWhiteList()
            {
                PayCenterCode         = this.Parameter.PayCenterCode,
                EnterpriseWhiteListID = this.Parameter.EnterpriseWhiteListID ?? 0,
                MonthStatue           = this.Parameter.MonthStatue ?? -1,
                BeginDate             = this.Parameter.StartDate,
                EndDate          = this.Parameter.EndDate,
                EnterpriseStatue = this.Parameter.EnterpriseStatue ?? -1
            };

            if (!string.IsNullOrEmpty(this.Parameter.IsPage) && this.Parameter.IsPage == "1")//不分页
            {
                var result          = enterpriseWhiteRep.GetEnterpriseWhiteAndBackMoneyList(tempModel);
                var CreditAmount    = result.Sum(r => r.CreditAmount);
                var AccountBalance  = result.Sum(r => r.AccountBalance);
                var EnterpriseCount = result.Count;
                var PayCenterName   = result.FirstOrDefault().PayCenterName;
                this.Result.Data = new
                {
                    PayCenterName       = PayCenterName,
                    CreditAmount        = CreditAmount,
                    AccountBalance      = AccountBalance,
                    MonthlyLimitBalance = CreditAmount - AccountBalance,
                    EnterpriseCount     = EnterpriseCount
                };
            }
            else
            {
                var result = enterpriseWhiteRep.GetEnterpriseWhiteAndBackMoneyPageList(tempModel, this.Parameter.Pageindex, this.Parameter.Pagesize);
                this.Result.Data = result;
            }
        }
        /// <summary>
        /// 业务逻辑
        /// </summary>
        protected override void ExecuteMethod()
        {
            var model = new EnterpriseWhiteList()
            {
                PayCenterCode = this.Parameter.PayCenterCode
            };
            var data = enterpriseWhiteRep.GetEnterpriseWhiteList(model);

            this.Result.Data = data;
        }
Exemplo n.º 3
0
        private string GetSqlData(EnterpriseWhiteList model)
        {
            #region sql
            string wherestr = string.Empty;

            if (!string.IsNullOrWhiteSpace(model.PayCenterCode))
            {
                wherestr += " AND b.PayCenterCode = @0";
            }
            if (model.EnterpriseWhiteListID > 0)
            {
                wherestr += " AND b.EnterpriseWhiteListID = @1";
            }
            if (model.EnterpriseStatue > -1)
            {
                wherestr += " AND b.EnterpriseStatue = @2";
            }
            if (model.FreezeWay > -1)
            {
                wherestr += " AND b.FreezeWay = @3";
            }
            if (model.BeginDate != null)
            {
                wherestr += " AND b.CreateTime >= @4";
            }
            if (model.EndDate != null)
            {
                wherestr += " AND b.CreateTime <= @5";
            }
            if (model.MonthStatue.HasValue && model.MonthStatue != -1)
            {
                wherestr += " AND b.MonthStatue=@6";
            }
            string sql = string.Format(@"
	SELECT b.*,TicketAmount FROM 
(SELECT   SUM(TicketAmount) AS TicketAmount ,
							EnterpriseWhiteListID
				   FROM     dbo.EnterpriseOrder WITH ( NOLOCK )
				   WHERE    1 = 1
							AND BackStatus = 1
							AND RepaymentStatus = 0
							AND BackTime BETWEEN @7 AND @8
				   GROUP BY EnterpriseWhiteListID) aa 
RIGHT JOIN (  SELECT   *
				   FROM     dbo.EnterpriseWhiteList ) b
ON aa.EnterpriseWhiteListID=b.EnterpriseWhiteListID
WHERE   1 = 1
{0} order by AccountBalance
            ", wherestr);

            #endregion

            return(sql);
        }
        /// <summary>
        /// 业务逻辑
        /// </summary>
        protected override void ExecuteMethod()
        {
            var model = new EnterpriseWhiteList()
            {
                PayCenterCode         = this.Parameter.PayCenterCode,
                EnterpriseWhiteListID = this.Parameter.EnterpriseWhiteListID ?? 0,
                EnterpriseStatue      = this.Parameter.EnterpriseStatue,
                FreezeWay             = this.Parameter.FreezeWay
            };
            var data = enterpriseWhiteRep.GetEnterpriseWhitePageList(model, Parameter.PageIndex, Parameter.PageSize);

            this.Result.Data = data;
        }
Exemplo n.º 5
0
        /// <summary>
        /// 获取企业白名单列表(分页)
        /// </summary>
        /// <param name="model">请求实体</param>
        /// <returns></returns>
        public Page <EnterpriseWhiteList> GetEnterpriseWhitePageList(EnterpriseWhiteList model, int PageIndex, int PageSize)
        {
            #region sql
            string wherestr = string.Empty;

            if (!string.IsNullOrWhiteSpace(model.PayCenterCode))
            {
                wherestr += " AND PayCenterCode = @0";
            }
            if (model.EnterpriseWhiteListID > 0)
            {
                wherestr += " AND EnterpriseWhiteListID = @1";
            }
            if (model.EnterpriseStatue > -1)
            {
                wherestr += " AND EnterpriseStatue = @2";
            }
            if (model.FreezeWay > -1)
            {
                wherestr += " AND FreezeWay = @3";
            }
            if (model.BeginDate != null)
            {
                wherestr += " AND CreateTime >= @4";
            }
            if (model.EndDate != null)
            {
                wherestr += " AND CreateTime <= @5";
            }
            if (model.MonthStatue.HasValue && model.MonthStatue != -1)
            {
                wherestr += " AND MonthStatue=@6";
            }
            string sql = string.Format(@"
SELECT  *
FROM    dbo.EnterpriseWhiteList
WHERE   1 = 1
{0}
            ", wherestr);

            #endregion

            return(CgtTravelDB.GetInstance().Page <EnterpriseWhiteList>(PageIndex, PageSize, sql,
                                                                        model.PayCenterCode, model.EnterpriseWhiteListID, model.EnterpriseStatue, model.FreezeWay,
                                                                        Convert.ToDateTime(model.BeginDate).ToString("yyyy-MM-dd HH:mm:ss"),
                                                                        Convert.ToDateTime(model.EndDate).ToString("yyyy-MM-dd") + " 23:59:59",
                                                                        model.MonthStatue
                                                                        ));
        }
Exemplo n.º 6
0
        /// <summary>
        /// 获取企业信息和当月返现总额列表(不分页)
        /// </summary>
        /// <param name="model"></param>
        /// <returns></returns>
        public List <EnterpriseWhiteList> GetEnterpriseWhiteAndBackMoneyList(EnterpriseWhiteList model)
        {
            //初始化当月第一天最后一天
            var date = DateTime.Now;
            var d1   = new DateTime(date.Year, date.Month, 1);
            var d2   = d1.AddMonths(1);
            var sql  = GetSqlData(model);

            return(CgtTravelDB.GetInstance().Fetch <EnterpriseWhiteList>(sql,
                                                                         model.PayCenterCode, model.EnterpriseWhiteListID, model.EnterpriseStatue, model.FreezeWay,

                                                                         Convert.ToDateTime(model.BeginDate).ToString("yyyy-MM-dd HH:mm:ss"),
                                                                         Convert.ToDateTime(model.EndDate).ToString("yyyy-MM-dd") + " 23:59:59",
                                                                         model.MonthStatue,
                                                                         d1,
                                                                         d2));
        }
Exemplo n.º 7
0
        /// <summary>
        /// 获取企业白名单列表
        /// </summary>
        /// <param name="model">请求实体</param>
        /// <returns></returns>
        public List <EnterpriseWhiteList> GetEnterpriseWhiteList(EnterpriseWhiteList model)
        {
            #region sql
            string wherestr = string.Empty;

            if (!string.IsNullOrWhiteSpace(model.PayCenterCode))
            {
                wherestr += " AND PayCenterCode = @0";
            }
            string sql = string.Format(@"
SELECT  *
FROM    dbo.EnterpriseWhiteList
WHERE   1 = 1
{0}
            ", wherestr);

            #endregion

            return(CgtTravelDB.GetInstance().Query <EnterpriseWhiteList>(sql,
                                                                         model.PayCenterCode).ToList());
        }
Exemplo n.º 8
0
 /// <summary>
 /// 修改企业冻结方式
 /// </summary>
 /// <param name="model"></param>
 /// <returns></returns>
 public int EditEnterpriseWhiteListFreezeWay(EnterpriseWhiteList model)
 {
     return(CgtTravelDB.GetInstance().Execute("update [EnterpriseWhiteList] set FreezeWay=@0,ModifiedName=@2,ModifiedTime=getdate() where EnterpriseWhiteListID=@1", model.FreezeWay, model.EnterpriseWhiteListID, model.ModifiedName));
 }
Exemplo n.º 9
0
 /// <summary>
 /// 修改月限额状态
 /// </summary>
 /// <param name="model"></param>
 /// <returns></returns>
 public int EditEnterpriseWhiteListMonthStatus(EnterpriseWhiteList model)
 {
     return(CgtTravelDB.GetInstance().Execute("update [EnterpriseWhiteList] set MonthStatue=@0 where EnterpriseWhiteListID=@1", model.MonthStatue, model.EnterpriseWhiteListID));
 }
Exemplo n.º 10
0
 /// <summary>
 /// 修改月限额金额
 /// </summary>
 /// <param name="model"></param>
 /// <returns></returns>
 public int EditEnterpriseWhiteListMonthAmount(EnterpriseWhiteList model)
 {
     return(CgtTravelDB.GetInstance().Execute("update [EnterpriseWhiteList] set CreditMonthAmount=@0 where EnterpriseWhiteListID=@1", model.CreditMonthAmount, model.EnterpriseWhiteListID));
 }
Exemplo n.º 11
0
 /// <summary>
 /// 业务逻辑
 /// </summary>
 protected override void ExecuteMethod()
 {
     if (Parameter.TravelRiskId == 0)
     {
         var model = new Entity.CgtTravelModel.TravelRisk()
         {
             CreateTime       = DateTime.Now,
             CreateUserId     = Parameter.CreateUserId,
             EnterpriseID     = Parameter.EnterpriseID,
             EtermFailRate    = Parameter.EtermFailRate,
             EtermSuccessRate = Parameter.EtermSuccessRate,
             TravelRiskState  = Parameter.TravelRiskState,
             TravelRiskType   = Parameter.TravelRiskType,
             WhiteFailRate    = Parameter.WhiteFailRate,
             WhiteSuccessRate = Parameter.WhiteSuccessRate,
             PayCenterCode    = Parameter.PayCenterCode,
             UploadLowCount   = Parameter.UploadLowCount,
             PayCenterName    = Parameter.PayCenterName,
             EtermType        = 2,
             TicketMultiple   = Parameter.TicketMultiple
         };
         //判断企业风控规则启动是否存在
         var travelRisk = travelRiskRep.GetTravelRiskByEnterpriseID(model);
         if (travelRisk != null && Parameter.TravelRiskState == 1)
         {
             throw new AggregateException("此企业已有开启风控规则!");
         }
         //批量添加
         if (Parameter.EnterpriseID <= 0)
         {
             var enterprisemodel = new EnterpriseWhiteList()
             {
                 PayCenterCode = this.Parameter.PayCenterCode
             };
             var data = enterpriseWhiteRep.GetEnterpriseWhiteList(enterprisemodel);
             foreach (var item in data)
             {
                 model.EnterpriseID = (int)item.EnterpriseWhiteListID;
                 var res = travelRiskRep.AddTravelRisk(model);
                 if (res > 0)
                 {
                     LoggerFactory.Instance.Logger_Info(JsonConvert.SerializeObject(model), "TravelRiskLog");
                     this.Result.Data = res;
                 }
                 else
                 {
                     throw new AggregateException("保存风控规则失败!");
                 }
             }
         }
         //单个添加
         else
         {
             var res = travelRiskRep.AddTravelRisk(model);
             if (res > 0)
             {
                 LoggerFactory.Instance.Logger_Info(JsonConvert.SerializeObject(model), "TravelRiskLog");
                 this.Result.Data = res;
             }
             else
             {
                 throw new AggregateException("保存风控规则失败!");
             }
         }
     }
     else
     {
         var model = new Entity.CgtTravelModel.TravelRisk()
         {
             ModifyUserId     = Parameter.ModifyUserId,
             ModifyTime       = DateTime.Now,
             EtermFailRate    = Parameter.EtermFailRate,
             EtermSuccessRate = Parameter.EtermSuccessRate,
             TravelRiskState  = Parameter.TravelRiskState,
             TravelRiskType   = Parameter.TravelRiskType,
             WhiteFailRate    = Parameter.WhiteFailRate,
             WhiteSuccessRate = Parameter.WhiteSuccessRate,
             TravelRiskId     = Parameter.TravelRiskId,
             UploadLowCount   = Parameter.UploadLowCount,
             EnterpriseID     = Parameter.EnterpriseID,
             PayCenterCode    = Parameter.PayCenterCode,
             TicketMultiple   = Parameter.TicketMultiple
         };
         //判断企业风控规则启动是否存在
         var travelRisk = travelRiskRep.GetTravelRiskByEnterpriseID(model);
         if (travelRisk != null && Parameter.TravelRiskState == 1 && travelRisk.TravelRiskId != Parameter.TravelRiskId)
         {
             throw new AggregateException("此企业已有开启风控规则!");
         }
         //修改风控规则
         var res = travelRiskRep.UpdateTravelRisk(model);
         if (res > 0)
         {
             LoggerFactory.Instance.Logger_Info(JsonConvert.SerializeObject(model), "TravelRiskLog");
             this.Result.Data = res;
         }
         else
         {
             throw new AggregateException("保存风控规则失败!");
         }
     }
 }
Exemplo n.º 12
0
        /// <summary>
        /// 更改状态为白名单
        /// </summary>
        /// <param name="idList"></param>
        /// <returns></returns>
        public dynamic UpdateEnterpriseTempoaryStatus(List <EnterpriseTempoary> list)
        {
            lock (locker)
            {
                using (var db = CgtTravelDB.GetInstance())
                {
                    int index = 0;
                    try
                    {
                        db.BeginTransaction();
                        foreach (var item in list)
                        {
                            var db_item = db.Single <EnterpriseTempoary>(item.ID);
                            if (item.AuditStatus == null)
                            {
                                if (item.CreditAmount > 0)
                                {
                                    var DistUser = db.FirstOrDefault <UserAccount>("select * from cgt.dbo.UserAccount where UserName=@0", item.DistributionAccount.Trim());
                                    if (DistUser != null)
                                    {
                                        var model = new EnterpriseWhiteList
                                        {
                                            EnterpriseName            = item.EnterpriseName,
                                            PayCenterCode             = DistUser.PayCenterCode,
                                            PayCenterName             = DistUser.UserCompanyName,
                                            AccountNumber             = item.AccountNumber,
                                            AccountPeriod             = item.AccountPeriod,
                                            TravelServiceAgreementURL = item.TravelServiceAgreementURL,
                                            CreditAmount     = item.CreditAmount != null ? (decimal)item.CreditAmount : 0,
                                            EnterpriseStatue = 1,
                                            CreateTime       = DateTime.Now,
                                            ModifiedTime     = DateTime.Now,
                                            TableId          = Guid.NewGuid(),
                                            AccountBalance   = item.CreditAmount,

                                            CreditMonthAmount = item.CreditAmount,
                                            MonthStatue       = 0,
                                            FreezeWay         = 1
                                        };
                                        db.Insert(model);
                                        if (model.EnterpriseWhiteListID > 0)
                                        {
                                            db.Update <EnterpriseTempoary>("set CreditAmount=@0 ,AuditStatus=1 where ID=@1", item.CreditAmount, item.ID);
                                        }
                                        index = index + 1;
                                    }
                                    else
                                    {
                                        continue;
                                    }
                                }
                                else
                                {
                                    db.Update <EnterpriseTempoary>("set CreditAmount=@0 ,AuditStatus=0 where ID=@1", item.CreditAmount, item.ID);
                                }
                            }
                            else
                            {
                                continue;
                            }
                        }
                        db.CompleteTransaction();
                        if (index > 0)
                        {
                            return(new { errorcode = 0, msg = "信息更新成功" });
                        }
                        else
                        {
                            return(new { errorcode = -1, msg = "信息更新失败" });
                        }
                    }
                    catch (Exception ex)
                    {
                        db.AbortTransaction();
                        return(new { errorcode = -2, msg = ex.Message });
                    }
                }
            }
        }