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; }
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; }
/// <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 )); }
/// <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)); }
/// <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()); }
/// <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)); }
/// <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)); }
/// <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)); }
/// <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("保存风控规则失败!"); } } }
/// <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 }); } } } }