public string TreatyConfirm(int id = 0, string code = "") { int ubkId = 100009; var result = MasgetDepository.TreatyConfirm(id, code, 1, Logic.ChannelType.荣邦科技积分); return(JsonConvert.SerializeObject(result)); }
public string BankCardSubmitActivateCode(int cid = 0, int UserId = 0, int BankID = 0, int ChannelType = 0, string Code = "") { //Thread.Sleep(3000); //return ApiReturnStr.getError(-100, "开通失败,测试终点"); var result = MasgetDepository.TreatyConfirm(BankID, Code, cid, (Logic.ChannelType)ChannelType); userEventDao.BankCardSubmitActivateCode(cid, UserId, Ip.GetClientIp(), result.backState == 0 ? 1 : 0, TQuery.GetString("version"), BankID, ChannelType, Code); return(ApiReturnStr.getError(result.backState == 0 ? 0 : -100, result.message)); }
public string ssss() { int[] aa = new int[] { 100058 , 100060 , 100063 , 100067 , 100080 }; foreach (var item in aa) { MasgetDepository.SamenameUpdate(item, 1, Logic.ChannelType.荣邦科技积分, Logic.VipType.顶级代理); } return(""); }
public string masfee() { var list = masgetUserDao.GetQuery(" State=1 AND TypeId=4 "); foreach (var item in list) { var user = usersDao.Single(item.UserId); Logic.VipType vip = (Logic.VipType)user.VipType; decimal[] r = Constant.GetRate((int)Logic.PayType.积分, vip); var result = MasgetDepository.SamenameUpdate(item.UserId, 1, (Logic.ChannelType)item.TypeId, vip); } return("masfee"); }
public ActionResult Cashier(int payid, string code) { var payCashier = payCashierDao.Single(payid); respBackPayModel model = JsonConvert.DeserializeObject <respBackPayModel>(payCashier.Value); UserBankCard ubk = userBankCardDao.Single(payCashier.UbkId); JObject data = new JObject(); data["respBackPay"] = JObject.FromObject(model); data["ubk"] = JObject.FromObject(ubk); ResultModel result = new ResultModel(data); if (!ITOrm.Utility.StringHelper.TypeParse.IsNumeric(code)) { result.backState = -100; result.message = "验证码必须为数字"; return(View(result)); } if (payCashier.State == 1) { result.backState = -200; result.message = "订单已支付完成"; return(View(result)); } else if (payCashier.State == -1) { result.backState = -200; result.message = "订单已过期"; return(View(result)); } var payResult = MasgetDepository.PayConfirmpay(payid, code, (int)Logic.Platform.系统, (Logic.ChannelType)payCashier.ChannelType); userEventDao.UserEventInit((int)Logic.Platform.系统, payCashier.UserId, Ip.GetClientIp(), payResult.backState == 0 ? 1 : 0, "Pay", "Cashier", $"{{payid:{payid},code:{code}}}"); if (payResult.backState == 0) { result.backState = -200; result.message = "支付成功"; return(new RedirectResult("/itapi/pay/success?backState=0&message=支付成功")); } else { result.backState = -100; result.message = payResult.message; return(View(result)); } }
public ActionResult PaymentjournalGet() { respMasgetModel <respPaymentjournalGetModel> result = new respMasgetModel <respPaymentjournalGetModel>(); result.ret = -100; int requestId = TQuery.GetInt("requestId"); int ChannelType = TQuery.GetInt("ChannelType"); if (requestId == 0) { return(View(result)); } result = MasgetDepository.PaymentjournalGet(requestId, 1, (Logic.ChannelType)ChannelType); return(View(result)); }
public ActionResult TreatyQuery() { respMasgetModel <respTreatyQueryModel> result = new respMasgetModel <respTreatyQueryModel>(); result.ret = -100; string BankCard = TQuery.GetString("BankCard"); int ChannelType = TQuery.GetInt("ChannelType"); if (string.IsNullOrEmpty(BankCard)) { return(View(result)); } result = MasgetDepository.TreatyQuery(1, (Logic.ChannelType)ChannelType, BankCard); return(View(result)); }
public ActionResult SubcompanyGet() { respMasgetModel <respSubcompanyGetModel> result = new respMasgetModel <respSubcompanyGetModel>(); result.ret = -100; int UserId = TQuery.GetInt("UserId"); int ChannelType = TQuery.GetInt("ChannelType"); if (UserId == 0) { return(View(result)); } result = MasgetDepository.SubcompanyGet(UserId, 1, (Logic.ChannelType)ChannelType); return(View(result)); }
public string aaadsfadsf() { var list = usersDao.GetQuery(" UserId=100063 "); if (list.Count > 0) { foreach (var item in list) { var result1 = YeepayDepository.FeeSetApi(item.UserId, 1, Payment.Yeepay.Enums.YeepayType.设置费率1, "0.0048"); //var result3 = YeepayDepository.FeeSetApi(item.UserId, 1, Payment.Yeepay.Enums.YeepayType.设置费率3, "2"); var result2 = MasgetDepository.SamenameUpdate(item.UserId, 1, Logic.ChannelType.荣邦科技积分, Logic.VipType.VIP); item.VipType = (int)Logic.VipType.VIP; item.UTime = DateTime.Now; usersDao.Update(item); } } return(""); }
public ActionResult UpdateBankCard(string Mobile, string BankCard, string BankCode, string CVN2, string ExpiresYear, string ExpiresMouth, int ID) { int backState = -100; string msg = string.Empty; UserBankCard bank = new UserBankCard(); string ubcurl = ""; if (ID > 0) { bank = userBankCardDao.Single(ID); ubcurl = "/users/info/" + bank.UserId; if (bank.TypeId == 0 && bank.BankCard != BankCard && bank.BankCode != BankCode) { return(new RedirectResult($"/Prompt?state=-100&msg=结算卡不支持修改卡号和所属银行&url={url}")); } bank.Mobile = Mobile; bank.BankCard = BankCard; bank.BankCode = BankCode; bank.CVN2 = CVN2; bank.ExpiresYear = ExpiresYear; bank.ExpiresMouth = ExpiresMouth; var list = bankTreatyApplyDao.GetQuery(" State=2 And UbkID=@ID", new { ID }); if (list != null && list.Count > 0) { foreach (var item in list) { MasgetDepository.TreatyModify(ID, CVN2, ExpiresYear, ExpiresMouth, (int)Logic.Platform.系统, (Logic.ChannelType)item.ChannelType); } } var result = userBankCardDao.Update(bank); backState = result ? 0 : -100; msg = result ? "修改成功" :"修改失败"; } return(new RedirectResult($"/Prompt?state={backState}&msg={msg}&url={ubcurl}")); }
private bool WithDrawHandle() { bool flag = false; if (listViewPayRecord != null && listViewPayRecord.Count > 0) { while (listViewPayRecord.Count > 0) { var item = listViewPayRecord[0]; Logic.ChannelType Channel = (Logic.ChannelType)item.ChannelType; ResultModel result = new ResultModel(); result.backState = -100; string msg = ""; switch (Channel) { case Logic.ChannelType.易宝: msg = "支付失败"; var yeepayResult = YeepayDepository.TradeReviceQuery(item.RequestId.ToString(), (int)Logic.Platform.系统); if (yeepayResult.backState == 0 && yeepayResult.tradeReceives.Count > 0 && yeepayResult.tradeReceives[0].status == "SUCCESS") { result.backState = 0; msg = "支付成功"; } break; case Logic.ChannelType.荣邦科技积分: case Logic.ChannelType.荣邦3: msg = "支付失败"; var masgettResult = MasgetDepository.PaymentjournalGet(item.RequestId, (int)Logic.Platform.系统, Channel); if (masgettResult.backState == 0 && masgettResult.data.respcode == 2) { result.backState = 0; msg = "支付成功"; } break; case Logic.ChannelType.荣邦科技无积分: break; case Logic.ChannelType.腾付通: var TengResult = TengDepository.PayDebitQuery(item.RequestId, (int)Logic.Platform.系统); if (TengResult.backState == 0 && TengResult.status == "3") { result.backState = 0; msg = "支付成功"; } else { msg = TengResult.respMsg; } break; case Logic.ChannelType.米刷: var mishuaResult = MiShuaDepository.CheckDzero(item.RequestId, Logic.Platform.系统); if (mishuaResult.backState == 0 && mishuaResult.Data.status == "00" && mishuaResult.Data.qfStatus == "SUCCESS") { result.backState = 0; msg = "支付成功"; } break; default: break; } bool f = false; //Logs.WriteLog($"处理数据:{JsonConvert.SerializeObject(result)}", "d:\\Log\\自动处理", "资金队列"); //处理数据 f = payRecordDao.UpdateState(item.ID, result.backState == 0 ? 10 : -1, msg); if (f) { //交易成功回调 UsersDepository.NoticeSuccess(item.ID, item.UserId); int num = Convert.ToInt32(_tbxWithDrawSuccess.Text); num++; _tbxWithDrawSuccess.Text = num.ToString(); } else { int num = Convert.ToInt32(_tbxWithDrawFail.Text); num++; _tbxWithDrawFail.Text = num.ToString(); } listViewPayRecord.Remove(item); Thread.Sleep(ConfigInfo.theadTime); } } else { //两小时前的数据被处理 listViewPayRecord = viewPayRecordDao.GetQuery(10, " State not in(10,-1) and DATEDIFF(HOUR,CTime,GETDATE())>2 ", null, "order by id asc"); if (listViewPayRecord != null && listViewPayRecord.Count > 0) { return(WithDrawHandle()); } } return(flag); }
//1.0.0 public string ReceiveApi2(int cid = 0, int UserId = 0, decimal Amount = 0m, int BankID = 0, int PayType = 0) { Logs.WriteLog($"ReceiveApi2,cid:{cid},UserId:{UserId},Amount:{Amount},BankID:{BankID},PayType:{PayType}", "d:\\Log\\Yeepay", "ReceiveApi2"); userEventDao.UserReceiveApi2(cid, UserId, Ip.GetClientIp(), 0, TQuery.GetString("version"), Amount, BankID, PayType); #region 参数验证 if (UserId <= 0) { return(ApiReturnStr.getError(-100, "UserId参数错误")); } if (Amount < 500) { return(ApiReturnStr.getError(-100, "收款金额不能小于500元")); } var ubk = userBankCardDao.Single(BankID); if (ubk == null) { return(ApiReturnStr.getError(-100, "卡记录不存在")); } //卡数据验证 var validateBankResult = userBankCardDao.ValidateBank(ubk); if (validateBankResult.backState != 0) { return(ApiReturnStr.getError(-100, validateBankResult.message)); } var model = userDao.Single(UserId); if (model == null || model.UserId <= 0) { return(ApiReturnStr.getError(-100, "用户不存在")); } JObject data = new JObject(); data["PayUrl"] = ""; string msg = ""; #region 测试通道 //Thread.Sleep(3000); //int ChannelType = 4; //data["ChannelType"] = ChannelType; //data["BankID"] = BankID; //return ApiReturnStr.getApiData(-200, $"快捷协议未开通(03-{ChannelType})", data); #endregion #region 择通道 int ChannelType = 0; //data["ChannelType"] = ChannelType; data["BankID"] = BankID; var option = SelectOptionChannel.Optimal(Amount, BankID, PayType); if (option.backState == 0) { ChannelType = option.Data; data["ChannelType"] = ChannelType; } else { if (option.Data == 2) { return(ApiReturnStr.getError(-100, "通道升级中,敬请期待")); } return(ApiReturnStr.getError(-100, option.message)); } data["ChannelType"] = option.Data; #endregion if (Amount > 20000) { return(ApiReturnStr.getError(-100, "收款金额不能超过20000元")); } Logic.ChannelType ct = (Logic.ChannelType)ChannelType; switch (ct) { case Logic.ChannelType.易宝: #region 易宝逻辑 var yeepayUser = yeepayUserDao.Single(" UserId=@UserId ", new { UserId }); if (yeepayUser == null || model.UserId <= 0) { return(ApiReturnStr.getError(-100, "未开通子商户功能")); } if (yeepayUser.RateState1 == 0 || yeepayUser.RateState3 == 0 || yeepayUser.RateState4 == 0 || yeepayUser.RateState5 == 0) { return(ApiReturnStr.getError(-100, "费率未设置")); } if (yeepayUser.IsAudit == 0) { return(ApiReturnStr.getError(-100, "子商户未审核通过")); } var result = YeepayDepository.ReceiveApi(UserId, Amount, cid, BankID); if (result.backState == 0) { data["PayUrl"] = result.urlAES; return(ApiReturnStr.getApiData(data)); } msg = result.message; #endregion break; case Logic.ChannelType.荣邦科技积分: case Logic.ChannelType.荣邦科技无积分: case Logic.ChannelType.荣邦3: if (ChannelType == 2) { return(ApiReturnStr.getError(-100, "通道升级中,敬请期待")); } #region 荣邦逻辑 #region 验证 if (Amount < 500) { return(ApiReturnStr.getError(-100, "此通道要求支付金额不得小于500元!")); } //验证是否开户 if (!masgetUserDao.QueryIsExist(UserId, ChannelType)) { return(ApiReturnStr.getApiData(-200, $"快捷协议未开通(01-{ChannelType})", data)); //通道未开户 } if (!masgetUserDao.QueryIsOpen(UserId, ChannelType)) { return(ApiReturnStr.getApiData(-200, $"快捷协议未开通(02-{ChannelType})", data)); //通道未入驻 } //验证快捷协议是否开通 if (!bankTreatyApplyDao.QueryTreatycodeIsOpen(BankID, ChannelType)) { return(ApiReturnStr.getApiData(-200, $"快捷协议未开通(03-{ChannelType})", data)); } #endregion //执行请求 var resultBackPay = MasgetDepository.BackPay(BankID, Amount, cid, ct); if (resultBackPay.backState == 0) { data["PayUrl"] = resultBackPay.url; return(ApiReturnStr.getApiData(0, "请求成功,待确认支付", data)); } else if (resultBackPay.backState == 8401) { return(ApiReturnStr.getError(-8401, "通道暂无额度")); } else { return(ApiReturnStr.getError(-100, resultBackPay.message)); } #endregion case Logic.ChannelType.腾付通: var resultTeng = TengDepository.CreatePayCashier(UserId, cid, Amount, BankID); msg = resultTeng.message; if (resultTeng.backState == 0) { data["PayUrl"] = resultTeng.Data["url"]; return(ApiReturnStr.getApiData(data)); } break; case Logic.ChannelType.米刷: var resultMi = MiShuaDepository.PayDzero(BankID, cid, Amount); msg = resultMi.message; if (resultMi.backState == 0 && resultMi.Data.status == "00") { data["PayUrl"] = resultMi.Data.tranStr; return(ApiReturnStr.getApiData(data)); } break; default: break; } #endregion return(ApiReturnStr.getError(-100, msg)); }
public string SamenameOpen() { var result = MasgetDepository.SamenameOpen(100058, 1, Logic.ChannelType.荣邦科技积分); return(JsonConvert.SerializeObject(result)); }
public string BankCardActivate(int cid = 0, int UserId = 0, int BankID = 0, int ChannelType = 0) { userEventDao.BankCardActivate(cid, UserId, Ip.GetClientIp(), 0, TQuery.GetString("version"), BankID, ChannelType); Logic.ChannelType ct = (Logic.ChannelType)ChannelType; var ubk = userBankCardDao.Single(BankID); //Thread.Sleep(3000); //return ApiReturnStr.getError(0, "验证码发送成功"); if (ubk == null) { return(ApiReturnStr.getError(-100, "银行卡不存在")); } if (ubk.UserId != UserId) { return(ApiReturnStr.getError(-100, "此卡不属于该用户")); } switch (ct) { case Logic.ChannelType.易宝: return(ApiReturnStr.getError(-100, "易宝通道无需激活")); case Logic.ChannelType.荣邦科技积分: case Logic.ChannelType.荣邦科技无积分: case Logic.ChannelType.荣邦3: //进件 if (!masgetUserDao.QueryIsExist(UserId, ChannelType)) { var resultSubcompany = MasgetDepository.SubcompanyAdd(UserId, cid, ct); if (resultSubcompany.backState != 0) { return(ApiReturnStr.getError(-100, $"开户失败({resultSubcompany.message},ct={ChannelType})")); } } //入驻 if (!masgetUserDao.QueryIsOpen(UserId, ChannelType)) { var resultSamenameOpen = MasgetDepository.SamenameOpen(UserId, cid, ct); if (resultSamenameOpen.backState != 0) { return(ApiReturnStr.getError(-100, $"入驻失败({resultSamenameOpen.message},ct={ChannelType})")); } } if (bankTreatyApplyDao.QueryTreatycodeIsOpen(BankID, ChannelType)) { return(ApiReturnStr.getError(-100, "此通道已开通快捷协议")); } //发送验证码 var resultTreatyApply = MasgetDepository.TreatyApply(BankID, cid, ct); if (resultTreatyApply.backState != 0) { return(ApiReturnStr.getError(-100, $"申请开通快捷协议失败({resultTreatyApply.message})")); } else { return(ApiReturnStr.getError(0, "验证码发送成功")); } default: break; } return(ApiReturnStr.getError(-100, "参数错误")); }
public string BankBind(int cid = 0, int UserId = 0, string mobile = "", string bankcard = "", string bankcode = "", int typeid = 0, string cvn2 = "", string expiresYear = "", string expiresMouth = "", string OpeningBank = "", string OpeningSerialBank = "", int BankID = 0) { Logs.WriteLog($"Action:User,Cmd:BankBind,UserId:{UserId},mobile:{mobile},bankcard:{bankcard},bankcode:{bankcode},typeid:{typeid},cvn2:{cvn2},expiresYear:{expiresYear},expiresMouth:{expiresMouth},OpeningBank:{OpeningBank},OpeningSerialBank:{OpeningSerialBank}", "d:\\Log\\ITOrm", "BankBind"); userEventDao.UserBankBind(cid, UserId, Ip.GetClientIp(), mobile, bankcard, bankcode, typeid, cvn2, expiresYear, expiresMouth, OpeningBank, OpeningSerialBank, BankID); var version = TQuery.GetString("version"); if (cid == 3 && version == "1.0.0") { string temp = expiresYear; expiresYear = expiresMouth; expiresMouth = temp; } #region 验证 if (!TypeParse.IsMobile(mobile)) { return(ApiReturnStr.getError(-100, "预留手机号格式验证失败")); } if (!(bankcard.Length > 13 && bankcard.Length < 21)) { return(ApiReturnStr.getError(-100, "银行卡参数错误")); } if (string.IsNullOrEmpty(bankcode)) { return(ApiReturnStr.getError(-100, "银行编号不能为空")); } Users user = userDao.Single(UserId); if (user == null || user.UserId <= 0) { return(ApiReturnStr.getError(-100, "用户不存在")); } if (user.IsRealState != 1) { return(ApiReturnStr.getError(-100, "用户未实名认证,无法绑卡")); } if (typeid == 1)//如果是结算卡 { if (string.IsNullOrEmpty(cvn2) || string.IsNullOrEmpty(expiresYear) || string.IsNullOrEmpty(expiresMouth)) { return(ApiReturnStr.getError(-100, "支付卡参数有误")); } if (BankID == 0) { UserBankCard ubc = userBankCardDao.Single(" UserId=@UserId and BankCard=@bankcard and TypeId=1 ", new { UserId, bankcard }); if (ubc != null && ubc.ID > 0) { return(ApiReturnStr.getError(-100, "该支付卡已经绑定过,不能重复绑定")); } } } else { UserBankCard ubc = userBankCardDao.Single(" UserId=@UserId and TypeId=0 and State=1 ", new { UserId }); if (ubc != null && ubc.ID > 0) { return(ApiReturnStr.getApiData(-100, "结算卡只能绑定一张")); } } UserBankCard model = null; if (BankID > 0) { model = userBankCardDao.Single(BankID); if (model == null) { return(ApiReturnStr.getApiData(-100, "BankID记录不存在")); } if (model.State == 1) { return(ApiReturnStr.getApiData(-100, "该银行卡已通过验证,不可修改信息")); } } else { model = new UserBankCard(); } #endregion #region 绑卡 var result = BankCardBindHelper.Bind(typeid, user.RealName, user.IdCard, bankcard, mobile, cvn2, expiresYear, expiresMouth); model.BankCard = result.bankCard; model.BankCode = bankcode; model.BankName = bankDao.QueryBankName(bankcode); model.CVN2 = cvn2; model.ExpiresYear = expiresYear; model.ExpiresMouth = expiresMouth; model.UTime = DateTime.Now; model.Mobile = mobile; model.TypeId = typeid; model.OpeningBank = OpeningBank; model.OpeningSerialBank = OpeningSerialBank; model.State = 0;// result.backState ? 1 : 0;//默认为0 model.RelationId = ",0,"; bool flag = false; if (BankID == 0) { model.UserId = UserId; model.IP = Ip.GetClientIp(); model.CTime = DateTime.Now; model.Platform = cid; int num = userBankCardDao.Insert(model); flag = num > 0; return(ApiReturnStr.getError(flag ? 0 : -100, flag ? "绑定成功" : "绑定失败")); } else { var list = bankTreatyApplyDao.GetQuery(" State=2 And UbkID=@BankID", new { BankID }); if (list != null && list.Count > 0) { foreach (var item in list) { MasgetDepository.TreatyModify(BankID, cvn2, expiresYear, expiresMouth, cid, (Logic.ChannelType)item.ChannelType); } } flag = userBankCardDao.Update(model); return(ApiReturnStr.getError(flag ? 0 : -100, flag ? "修改成功" : "修改失败")); } #endregion }
public string SubcompanyAdd() { var result = MasgetDepository.SubcompanyAdd(100058, 1, Logic.ChannelType.荣邦科技积分); return(JsonConvert.SerializeObject(result)); }
public string TreatyApply(int id) { var result = MasgetDepository.TreatyApply(id, 1, Logic.ChannelType.荣邦科技积分); return(JsonConvert.SerializeObject(result)); }
public string SamenameUpdate(int UserId) { var result = MasgetDepository.SamenameUpdate(UserId, 1, Logic.ChannelType.荣邦科技积分, Logic.VipType.顶级代理); return(JsonConvert.SerializeObject(result)); }
public string PayConfirmpay(int payId = 0, string code = "") { var result = MasgetDepository.PayConfirmpay(payId, code, 1, Logic.ChannelType.荣邦科技积分); return(JsonConvert.SerializeObject(result)); }
public string BackPay(int ubkid) { var result = MasgetDepository.BackPay(ubkid, 500, 1, Logic.ChannelType.荣邦科技积分); return(JsonConvert.SerializeObject(result)); }