示例#1
0
        protected void Page_Load(object sender, EventArgs e)
        {
            //TODO 暂停充值临时
            throw new ArgumentNullException("您暂时无法充值:安广融合平台正在切换第三方资金托管,具体全面开放请留意官网公告!");

            Model.users model = HttpContext.Current.Session[DTKeys.SESSION_USER_INFO] as Model.users;
            if (model == null)
            {
                throw new ArgumentNullException("用户信息为空!");
            }

            string bankCode = DTRequest.GetQueryString("bankcode");
            string amount   = DTRequest.GetQueryString("amount");

            decimal amountD = 0;

            if (!decimal.TryParse(amount, out amountD))
            {
                throw new ArgumentNullException("请输入正确的金额!");
            }

            //创建充值订单
            var context      = new Agp2pDataContext();
            var charge_order = context.Charge(model.id, amountD,
                                              bankCode == "NOCARD" ? Agp2pEnums.PayApiTypeEnum.EcpssQ : Agp2pEnums.PayApiTypeEnum.Ecpss);
            //跳转到汇潮支付页面
            Service server    = new Service(bankCode == "NOCARD");
            string  sHtmlText = server.BuildFormHtml(charge_order.no_order, charge_order.create_time.ToString("yyyyMMddHHmmss"), amount, bankCode);

            Response.Write(sHtmlText);
        }
示例#2
0
        public static void MakeSureHaveIdleMoney(string userName, decimal amount)
        {
            var context = new Agp2pDataContext();
            var wallet  = context.li_wallets.Single(w => w.dt_users.user_name == userName);

            if (wallet.idle_money < amount)
            {
                Debug.WriteLine($"为用户 {wallet.dt_users.GetFriendlyUserName()} 充值 {amount - wallet.idle_money}");
                var btr = context.Charge(wallet.user_id, amount - wallet.idle_money, Agp2pEnums.PayApiTypeEnum.ManualAppend);
                context.ConfirmBankTransaction(btr.id, null);
            }
        }
示例#3
0
        protected void Page_Load(object sender, EventArgs e)
        {
            string strPayID = Request.Params["PayID"];

            int    user_id = 1;
            string amount  = DTRequest.GetFormString("OrderMoney");
            //创建充值订单
            var context      = new Agp2pDataContext();
            var charge_order = context.Charge(user_id, decimal.Parse(amount), Agp2pEnums.PayApiTypeEnum.Baofoo, "");

            Service server    = new Service();
            string  sHtmlText = server.BuildFormHtml(charge_order.no_order, charge_order.create_time.ToString("yyyyMMddHHmmss"), amount, strPayID);

            Response.Write(sHtmlText);
        }
 private bool DoAdd()
 {
     try
     {
         var bankTransaction = context.Charge(userId, Math.Abs(Convert.ToDecimal(txtValue.Text)),
                                              Agp2pEnums.PayApiTypeEnum.ManualAppend,
                                              string.IsNullOrWhiteSpace(txtRemarks.Text) ? null : txtRemarks.Text.Trim());
         AddAdminLog(DTEnums.ActionEnum.Add.ToString(), string.Format("{0} 添加用户 {1} 充值记录: {2} 备注: {3}", lblUser.Text, bankTransaction.dt_users.user_name, txtValue.Text, txtRemarks.Text)); //记录日志
         return(true);
     }
     catch (Exception ex)
     {
         JscriptMsg(ex.Message, "", "Error");
         return(false);
     }
 }
示例#5
0
        protected void Page_Load(object sender, EventArgs e)
        {
            string action = DTRequest.GetFormString("action");

            if (action.Equals("recharge") || action.Equals("bankgateway") || action.Equals("wap"))//测试充值
            {
                int    user_id = Utils.StrToInt(DTRequest.GetFormString("user_id"), 0);
                string amount  = DTRequest.GetFormString("amount");
                //创建充值订单
                var context      = new Agp2pDataContext();
                var charge_order = context.Charge(user_id, decimal.Parse(amount), Agp2pEnums.PayApiTypeEnum.Lianlianpay);

                //请求连连快捷支付接口
                var    service   = new LianlianpayService();
                string sHtmlText = "";
                if (action.Equals("recharge"))
                {
                    var sParaTemp = getParamDict(user_id);
                    sHtmlText = service.BuildReChargeFormHtml(sParaTemp, charge_order.no_order, charge_order.create_time.ToString("yyyyMMddHHmmss"), amount, user_id.ToString(), Request.UserHostAddress);
                }
                else if (action.Equals("wap"))
                {
                    //手机端wap支付
                    var sParaTemp = getParamDict(user_id);
                    sHtmlText = service.BuildReChargeFormWapHtml(charge_order.no_order, charge_order.create_time.ToString("yyyyMMddHHmmss"), amount, user_id.ToString(), sParaTemp["id_no"], sParaTemp["acct_name"]);
                }
                else
                {
                    //获取银行编号
                    string bankName = DTRequest.GetFormString("bankcode");
                    int    bankCode = (int)(Agp2pEnums.LianlianpayBankCodeEnum)Enum.Parse(typeof(Agp2pEnums.LianlianpayBankCodeEnum), bankName);

                    SortedDictionary <string, string> sParaTemp = new SortedDictionary <string, string>();
                    sHtmlText = service.BuildReChargeFormBankGateWayHtml(sParaTemp, charge_order.no_order, charge_order.create_time.ToString("yyyyMMddHHmmss"), amount, user_id.ToString(), Request.UserHostAddress, "0" + bankCode);
                }
                Response.Write(sHtmlText);
            }
            else//测试查询支付订单
            {
                var    service    = new LianlianpayService();
                string returnText = service.PostQueryOrder(DTRequest.GetFormString("no_order"), DTRequest.GetFormString("dt_order"));
            }
        }
示例#6
0
        /// <summary>
        /// 请求前台接口
        /// </summary>
        /// <param name="msg"></param>
        private static void DoFrontEndRequest(FrontEndReqMsg msg)
        {
            Agp2pDataContext context = new Agp2pDataContext();
            var requestLog           = new li_pay_request_log
            {
                id              = msg.RequestId,
                user_id         = msg.UserId,
                project_id      = msg.ProjectCode,
                api             = msg.Api,
                status          = (int)Agp2pEnums.SumapayRequestEnum.Waiting,
                request_time    = DateTime.Now,
                remarks         = msg.Remarks,
                request_content = ""
            };

            try
            {
                //创建交易流水
                switch (requestLog.api)
                {
                case (int)Agp2pEnums.SumapayApiEnum.WeRec:
                case (int)Agp2pEnums.SumapayApiEnum.CeRec:
                    //网银充值
                    context.Charge((int)requestLog.user_id, Utils.StrToDecimal(((WebRechargeReqMsg)msg).Sum, 0),
                                   Agp2pEnums.PayApiTypeEnum.Sumapay, "丰付网银支付", msg.RequestId);
                    break;

                case (int)Agp2pEnums.SumapayApiEnum.WhRec:
                case (int)Agp2pEnums.SumapayApiEnum.WhReM:
                    //快捷充值
                    context.Charge((int)requestLog.user_id, Utils.StrToDecimal(((WhRechargeReqMsg)msg).Sum, 0),
                                   Agp2pEnums.PayApiTypeEnum.SumapayQ, "丰付一键支付", msg.RequestId);
                    break;

                case (int)Agp2pEnums.SumapayApiEnum.Wdraw:
                case (int)Agp2pEnums.SumapayApiEnum.Cdraw:
                case (int)Agp2pEnums.SumapayApiEnum.WdraM:
                    //提现
                    var withdrawReqMsg = (WithdrawReqMsg)msg;
                    requestLog.remarks = withdrawReqMsg.BankId;
                    //context.Withdraw(Utils.StrToInt(withdrawReqMsg.BankId, 0),
                    //    Utils.StrToDecimal(withdrawReqMsg.Sum, 0), withdrawReqMsg.RequestId);
                    break;

                //债权转让
                case (int)Agp2pEnums.SumapayApiEnum.CreAs:
                case (int)Agp2pEnums.SumapayApiEnum.CreAM:
                    var creditAssignmentReqMsg = (CreditAssignmentReqMsg)msg;
                    //通过债权找出对应的投资信息
                    var claim = context.li_claims.SingleOrDefault(c => c.id == creditAssignmentReqMsg.ClaimId);
                    creditAssignmentReqMsg.AssignmentSum =
                        (claim.principal + claim.keepInterest.GetValueOrDefault(0)).ToString();
                    creditAssignmentReqMsg.ProjectCode        = claim.projectId;
                    creditAssignmentReqMsg.ProjectDescription = claim.li_projects.title;
                    requestLog.project_id = claim.projectId;
                    //计算手续费
                    var staticWithdrawCostPercent = ConfigLoader.loadCostConfig().static_withdraw;
                    var finalCost =
                        Math.Round(
                            Utils.StrToDecimal(creditAssignmentReqMsg.UndertakeSum, 0) * staticWithdrawCostPercent, 2);
                    //父债权才有原投资流水号
                    var rooClaim = claim.GetRootClaim();
                    creditAssignmentReqMsg.OriginalOrderSum =
                        rooClaim.li_project_transactions_invest.principal.ToString("f");
                    creditAssignmentReqMsg.OriginalRequestId = rooClaim.li_project_transactions_invest.no_order;
                    creditAssignmentReqMsg.SetSubledgerList(finalCost, claim.userId.ToString());
                    break;

                case (int)Agp2pEnums.SumapayApiEnum.MaBid:
                case (int)Agp2pEnums.SumapayApiEnum.MaBiM:
                    //投资
                    var manualBidReqMsg = (ManualBidReqMsg)msg;
                    //TransactionFacade.Invest((int)requestLog.user_id, Utils.StrToInt(manualBidReqMsg.ProjectCode, 0), Utils.StrToDecimal(manualBidReqMsg.Sum, 0), manualBidReqMsg.RequestId);
                    var jiaxiquan = new li_jiaxiquan_transaction
                    {
                        userId    = (int)msg.UserId,
                        type      = (int)Agp2pEnums.InvestInterestRateTypeEnum.Invest,
                        requestId = msg.RequestId,
                        remarks   = msg.Remarks
                    };
                    context.li_jiaxiquan_transaction.InsertOnSubmit(jiaxiquan);

                    context.InvestConfirm((int)requestLog.user_id, manualBidReqMsg.ProjectCode,
                                          Utils.StrToDecimal(manualBidReqMsg.Sum, 0), manualBidReqMsg.RequestId);

                    context.SubmitChanges();

                    break;
                }
                //生成发送报文
                msg.RequestContent         = BuildFormHtml(msg.GetSubmitPara(), msg.ApiInterface);
                requestLog.request_content = msg.RequestContent;
                //保存日志
                context.li_pay_request_log.InsertOnSubmit(requestLog);
                context.SubmitChanges();
            }
            catch (Exception ex)
            {
                requestLog.remarks = ex.Message;
                context.li_pay_request_log.InsertOnSubmit(requestLog);
                context.SubmitChanges();
            }
        }