예제 #1
0
        private bool DoAdd()
        {
            Rain.Model.users model1 = new Rain.BLL.users().GetModel(this.txtUserName.Text.Trim());
            if (model1 == null)
            {
                return(false);
            }
            bool flag = false;

            Rain.Model.user_recharge model2       = new Rain.Model.user_recharge();
            Rain.BLL.user_recharge   userRecharge = new Rain.BLL.user_recharge();
            model2.user_id       = model1.id;
            model2.user_name     = model1.user_name;
            model2.recharge_no   = "R" + this.txtRechargeNo.Text.Trim();
            model2.payment_id    = Utils.StrToInt(this.ddlPaymentId.SelectedValue, 0);
            model2.amount        = Utils.StrToDecimal(this.txtAmount.Text.Trim(), new Decimal(0));
            model2.status        = 1;
            model2.add_time      = DateTime.Now;
            model2.complete_time = new DateTime?(DateTime.Now);
            if (userRecharge.Recharge(model2))
            {
                this.AddAdminLog(DTEnums.ActionEnum.Add.ToString(), "给会员:" + model2.user_name + ",充值:" + (object)model2.amount + "元");
                flag = true;
            }
            return(flag);
        }
예제 #2
0
파일: user_recharge.cs 프로젝트: Hcq/Rain
        public int Add(Rain.Model.user_recharge model)
        {
            int maxId;

            using (OleDbConnection oleDbConnection = new OleDbConnection(DbHelperOleDb.connectionString))
            {
                oleDbConnection.Open();
                using (OleDbTransaction trans = oleDbConnection.BeginTransaction())
                {
                    try
                    {
                        StringBuilder stringBuilder = new StringBuilder();
                        stringBuilder.Append("insert into " + this.databaseprefix + "user_recharge(");
                        stringBuilder.Append("user_id,user_name,recharge_no,payment_id,amount,status,add_time,complete_time)");
                        stringBuilder.Append(" values (");
                        stringBuilder.Append("@user_id,@user_name,@recharge_no,@payment_id,@amount,@status,@add_time,@complete_time)");
                        OleDbParameter[] oleDbParameterArray = new OleDbParameter[8]
                        {
                            new OleDbParameter("@user_id", OleDbType.Integer, 4),
                            new OleDbParameter("@user_name", OleDbType.VarChar, 100),
                            new OleDbParameter("@recharge_no", OleDbType.VarChar, 100),
                            new OleDbParameter("@payment_id", OleDbType.Integer, 4),
                            new OleDbParameter("@amount", OleDbType.Decimal, 5),
                            new OleDbParameter("@status", OleDbType.Integer, 4),
                            new OleDbParameter("@add_time", OleDbType.Date),
                            new OleDbParameter("@complete_time", OleDbType.Date)
                        };
                        oleDbParameterArray[0].Value = (object)model.user_id;
                        oleDbParameterArray[1].Value = (object)model.user_name;
                        oleDbParameterArray[2].Value = (object)model.recharge_no;
                        oleDbParameterArray[3].Value = (object)model.payment_id;
                        oleDbParameterArray[4].Value = (object)model.amount;
                        oleDbParameterArray[5].Value = (object)model.status;
                        oleDbParameterArray[6].Value = (object)model.add_time;
                        if (model.complete_time.HasValue)
                        {
                            oleDbParameterArray[7].Value = (object)model.complete_time;
                        }
                        else
                        {
                            oleDbParameterArray[7].Value = (object)DBNull.Value;
                        }
                        DbHelperOleDb.ExecuteSql(oleDbConnection, trans, stringBuilder.ToString(), oleDbParameterArray);
                        maxId = this.GetMaxId(oleDbConnection, trans);
                        trans.Commit();
                    }
                    catch
                    {
                        trans.Rollback();
                        return(-1);
                    }
                }
            }
            return(maxId);
        }
예제 #3
0
파일: user_recharge.cs 프로젝트: Hcq/Rain
 public Rain.Model.user_recharge DataRowToModel(DataRow row)
 {
     Rain.Model.user_recharge userRecharge = new Rain.Model.user_recharge();
     if (row != null)
     {
         if (row["id"] != null && row["id"].ToString() != "")
         {
             userRecharge.id = int.Parse(row["id"].ToString());
         }
         if (row["user_id"] != null && row["user_id"].ToString() != "")
         {
             userRecharge.user_id = int.Parse(row["user_id"].ToString());
         }
         if (row["user_name"] != null)
         {
             userRecharge.user_name = row["user_name"].ToString();
         }
         if (row["recharge_no"] != null)
         {
             userRecharge.recharge_no = row["recharge_no"].ToString();
         }
         if (row["payment_id"] != null && row["payment_id"].ToString() != "")
         {
             userRecharge.payment_id = int.Parse(row["payment_id"].ToString());
         }
         if (row["amount"] != null && row["amount"].ToString() != "")
         {
             userRecharge.amount = Decimal.Parse(row["amount"].ToString());
         }
         if (row["status"] != null && row["status"].ToString() != "")
         {
             userRecharge.status = int.Parse(row["status"].ToString());
         }
         if (row["add_time"] != null && row["add_time"].ToString() != "")
         {
             userRecharge.add_time = DateTime.Parse(row["add_time"].ToString());
         }
         if (row["complete_time"] != null && row["complete_time"].ToString() != "")
         {
             userRecharge.complete_time = new DateTime?(DateTime.Parse(row["complete_time"].ToString()));
         }
     }
     return(userRecharge);
 }
예제 #4
0
파일: user_recharge.cs 프로젝트: Hcq/Rain
        public bool Update(Rain.Model.user_recharge model)
        {
            StringBuilder stringBuilder = new StringBuilder();

            stringBuilder.Append("update " + this.databaseprefix + "user_recharge set ");
            stringBuilder.Append("user_id=@user_id,");
            stringBuilder.Append("user_name=@user_name,");
            stringBuilder.Append("recharge_no=@recharge_no,");
            stringBuilder.Append("payment_id=@payment_id,");
            stringBuilder.Append("amount=@amount,");
            stringBuilder.Append("status=@status,");
            stringBuilder.Append("add_time=@add_time,");
            stringBuilder.Append("complete_time=@complete_time");
            stringBuilder.Append(" where id=@id");
            OleDbParameter[] oleDbParameterArray = new OleDbParameter[9]
            {
                new OleDbParameter("@user_id", OleDbType.Integer, 4),
                new OleDbParameter("@user_name", OleDbType.VarChar, 100),
                new OleDbParameter("@recharge_no", OleDbType.VarChar, 100),
                new OleDbParameter("@payment_id", OleDbType.Integer, 4),
                new OleDbParameter("@amount", OleDbType.Decimal, 5),
                new OleDbParameter("@status", OleDbType.Integer, 4),
                new OleDbParameter("@add_time", OleDbType.Date),
                new OleDbParameter("@complete_time", OleDbType.Date),
                new OleDbParameter("@id", OleDbType.Integer, 4)
            };
            oleDbParameterArray[0].Value = (object)model.user_id;
            oleDbParameterArray[1].Value = (object)model.user_name;
            oleDbParameterArray[2].Value = (object)model.recharge_no;
            oleDbParameterArray[3].Value = (object)model.payment_id;
            oleDbParameterArray[4].Value = (object)model.amount;
            oleDbParameterArray[5].Value = (object)model.status;
            oleDbParameterArray[6].Value = (object)model.add_time;
            if (model.complete_time.HasValue)
            {
                oleDbParameterArray[7].Value = (object)model.complete_time;
            }
            else
            {
                oleDbParameterArray[7].Value = (object)DBNull.Value;
            }
            oleDbParameterArray[8].Value = (object)model.id;
            return(DbHelperOleDb.ExecuteSql(stringBuilder.ToString(), oleDbParameterArray) > 0);
        }
예제 #5
0
 public bool Recharge(Rain.Model.user_recharge model)
 {
     return(this.dal.Recharge(model));
 }
예제 #6
0
 public bool Update(Rain.Model.user_recharge model)
 {
     return(this.dal.Update(model));
 }
예제 #7
0
 public int Add(Rain.Model.user_recharge model)
 {
     return(this.dal.Add(model));
 }
예제 #8
0
파일: notify_url.aspx.cs 프로젝트: Hcq/Rain
        protected void Page_Load(object sender, EventArgs e)
        {
            TenpayUtil      tenpayUtil      = new TenpayUtil();
            ResponseHandler responseHandler = new ResponseHandler(this.Context);

            responseHandler.setKey(tenpayUtil.key);
            if (responseHandler.isTenpaySign())
            {
                string         parameter1     = responseHandler.getParameter("notify_id");
                RequestHandler requestHandler = new RequestHandler(this.Context);
                requestHandler.init();
                requestHandler.setKey(tenpayUtil.key);
                requestHandler.setGateUrl("https://gw.tenpay.com/gateway/simpleverifynotifyid.xml");
                requestHandler.setParameter("partner", tenpayUtil.partner);
                requestHandler.setParameter("notify_id", parameter1);
                TenpayHttpClient tenpayHttpClient = new TenpayHttpClient();
                tenpayHttpClient.setTimeOut(5);
                tenpayHttpClient.setReqContent(requestHandler.getRequestURL());
                if (tenpayHttpClient.call())
                {
                    ClientResponseHandler clientResponseHandler = new ClientResponseHandler();
                    clientResponseHandler.setContent(tenpayHttpClient.getResContent());
                    clientResponseHandler.setKey(tenpayUtil.key);
                    if (clientResponseHandler.isTenpaySign())
                    {
                        string upper      = responseHandler.getParameter("out_trade_no").ToUpper();
                        string parameter2 = responseHandler.getParameter("transaction_id");
                        string parameter3 = responseHandler.getParameter("total_fee");
                        responseHandler.getParameter("discount");
                        string parameter4 = responseHandler.getParameter("trade_state");
                        string parameter5 = responseHandler.getParameter("trade_mode");
                        if ("0".Equals(clientResponseHandler.getParameter("retcode")))
                        {
                            if ("1".Equals(parameter5))
                            {
                                if ("0".Equals(parameter4))
                                {
                                    if (upper.StartsWith("R"))
                                    {
                                        Rain.BLL.user_recharge   userRecharge = new Rain.BLL.user_recharge();
                                        Rain.Model.user_recharge model        = userRecharge.GetModel(upper);
                                        if (model == null)
                                        {
                                            this.Response.Write("该订单号不存在");
                                            return;
                                        }
                                        if (model.status == 1)
                                        {
                                            this.Response.Write("success");
                                            return;
                                        }
                                        if (model.amount != Decimal.Parse(parameter3) / new Decimal(100))
                                        {
                                            this.Response.Write("订单金额和支付金额不相符");
                                            return;
                                        }
                                        if (!userRecharge.Confirm(upper))
                                        {
                                            this.Response.Write("修改订单状态失败");
                                            return;
                                        }
                                    }
                                    else if (upper.StartsWith("B"))
                                    {
                                        Rain.BLL.orders   orders = new Rain.BLL.orders();
                                        Rain.Model.orders model  = orders.GetModel(upper);
                                        if (model == null)
                                        {
                                            this.Response.Write("该订单号不存在");
                                            return;
                                        }
                                        if (model.payment_status == 2)
                                        {
                                            this.Response.Write("success");
                                            return;
                                        }
                                        if (model.order_amount != Decimal.Parse(parameter3) / new Decimal(100))
                                        {
                                            this.Response.Write("订单金额和支付金额不相符");
                                            return;
                                        }
                                        if (!orders.UpdateField(upper, "trade_no='" + parameter2 + "',status=2,payment_status=2,payment_time='" + (object)DateTime.Now + "'"))
                                        {
                                            this.Response.Write("修改订单状态失败");
                                            return;
                                        }
                                        if (model.point < 0)
                                        {
                                            new Rain.BLL.user_point_log().Add(model.user_id, model.user_name, model.point, "换购扣除积分,订单号:" + model.order_no, false);
                                        }
                                    }
                                    this.Response.Write("success");
                                }
                                else
                                {
                                    this.Response.Write("即时到账支付失败");
                                }
                            }
                            else if ("2".Equals(parameter5))
                            {
                                if ("0".Equals(parameter4))
                                {
                                    if (upper.StartsWith("R"))
                                    {
                                        Rain.BLL.user_recharge   userRecharge = new Rain.BLL.user_recharge();
                                        Rain.Model.user_recharge model        = userRecharge.GetModel(upper);
                                        if (model == null)
                                        {
                                            this.Response.Write("该订单号不存在");
                                            return;
                                        }
                                        if (model.status == 1)
                                        {
                                            this.Response.Write("success");
                                            return;
                                        }
                                        if (model.amount != Decimal.Parse(parameter3) / new Decimal(100))
                                        {
                                            this.Response.Write("订单金额和支付金额不相符");
                                            return;
                                        }
                                        if (!userRecharge.Confirm(upper))
                                        {
                                            this.Response.Write("修改订单状态失败");
                                            return;
                                        }
                                    }
                                    else if (upper.StartsWith("B"))
                                    {
                                        Rain.BLL.orders   orders = new Rain.BLL.orders();
                                        Rain.Model.orders model  = orders.GetModel(upper);
                                        if (model == null)
                                        {
                                            this.Response.Write("该订单号不存在");
                                            return;
                                        }
                                        if (model.payment_status == 2)
                                        {
                                            this.Response.Write("success");
                                            return;
                                        }
                                        if (model.order_amount != Decimal.Parse(parameter3) / new Decimal(100))
                                        {
                                            this.Response.Write("订单金额和支付金额不相符");
                                            return;
                                        }
                                        if (!orders.UpdateField(upper, "trade_no='" + parameter2 + "',status=2,payment_status=2,payment_time='" + (object)DateTime.Now + "'"))
                                        {
                                            this.Response.Write("修改订单状态失败");
                                            return;
                                        }
                                        if (model.point < 0)
                                        {
                                            new Rain.BLL.user_point_log().Add(model.user_id, model.user_name, model.point, "换购扣除积分,订单号:" + model.order_no, false);
                                        }
                                    }
                                }
                                else if ("5".Equals(parameter4) && upper.StartsWith("B"))
                                {
                                    Rain.BLL.orders   orders = new Rain.BLL.orders();
                                    Rain.Model.orders model  = orders.GetModel(upper);
                                    if (model == null)
                                    {
                                        this.Response.Write("该订单号不存在");
                                        return;
                                    }
                                    if (model.status > 2)
                                    {
                                        this.Response.Write("success");
                                        return;
                                    }
                                    if (model.order_amount != Decimal.Parse(parameter3))
                                    {
                                        this.Response.Write("订单金额和支付金额不相符");
                                        return;
                                    }
                                    if (!orders.UpdateField(upper, "status=3,complete_time='" + (object)DateTime.Now + "'"))
                                    {
                                        this.Response.Write("修改订单状态失败");
                                        return;
                                    }
                                    if (model.user_id > 0 && model.point > 0)
                                    {
                                        new Rain.BLL.user_point_log().Add(model.user_id, model.user_name, model.point, "购物获得积分,订单号:" + model.order_no, true);
                                    }
                                }
                                this.Response.Write("success");
                            }
                        }
                        else
                        {
                            this.Response.Write("查询验证签名失败或id验证失败");
                        }
                    }
                    else
                    {
                        this.Response.Write("通知ID查询签名验证失败");
                    }
                }
                else
                {
                    this.Response.Write("后台调用通信失败");
                }
            }
            else
            {
                this.Response.Write("签名验证失败");
            }
            this.Response.End();
        }
예제 #9
0
        protected void payment_Init(object sender, EventArgs e)
        {
            this.action   = DTRequest.GetString("action");
            this.order_no = DTRequest.GetString("order_no");
            if (this.order_no.ToUpper().StartsWith("R"))
            {
                this.order_type = DTEnums.AmountTypeEnum.Recharge.ToString().ToLower();
            }
            else if (this.order_no.ToUpper().StartsWith("B"))
            {
                this.order_type = DTEnums.AmountTypeEnum.BuyGoods.ToString().ToLower();
            }
            switch (this.action)
            {
            case "confirm":
                if (string.IsNullOrEmpty(this.action) || string.IsNullOrEmpty(this.order_no))
                {
                    HttpContext.Current.Response.Redirect(this.linkurl("error", (object)("?msg=" + Utils.UrlEncode("出错啦,URL传输参数有误!"))));
                    break;
                }
                this.userModel = new BasePage().GetUserInfo();
                if (this.orderConfig.anonymous == 0 || this.order_no.ToUpper().StartsWith("R"))
                {
                    if (this.userModel == null)
                    {
                        HttpContext.Current.Response.Redirect(this.linkurl(nameof(payment), (object)"?action=login"));
                        break;
                    }
                }
                else if (this.userModel == null)
                {
                    this.userModel = new Rain.Model.users();
                }
                if (this.order_no.ToUpper().StartsWith("R"))
                {
                    this.rechargeModel = new Rain.BLL.user_recharge().GetModel(this.order_no);
                    if (this.rechargeModel == null)
                    {
                        HttpContext.Current.Response.Redirect(this.linkurl("error", (object)("?msg=" + Utils.UrlEncode("出错啦,订单号不存在或已删除!"))));
                        break;
                    }
                    if (this.rechargeModel.status == 1)
                    {
                        HttpContext.Current.Response.Redirect(this.linkurl(nameof(payment), (object)("?action=succeed&order_no=" + this.rechargeModel.recharge_no)));
                        break;
                    }
                    this.payModel = new Rain.BLL.payment().GetModel(this.rechargeModel.payment_id);
                    if (this.payModel == null)
                    {
                        HttpContext.Current.Response.Redirect(this.linkurl("error", (object)("?msg=" + Utils.UrlEncode("出错啦,支付方式不存在或已删除!"))));
                        break;
                    }
                    if (this.payModel.type == 2)
                    {
                        HttpContext.Current.Response.Redirect(this.linkurl("error", (object)("?msg=" + Utils.UrlEncode("出错啦,账户充值不允许线下支付!"))));
                        break;
                    }
                    this.order_amount = this.rechargeModel.amount;
                    break;
                }
                if (this.order_no.ToUpper().StartsWith("B"))
                {
                    this.orderModel = new Rain.BLL.orders().GetModel(this.order_no);
                    if (this.orderModel == null)
                    {
                        HttpContext.Current.Response.Redirect(this.linkurl("error", (object)("?msg=" + Utils.UrlEncode("出错啦,订单号不存在或已删除!"))));
                        break;
                    }
                    if (this.orderModel.payment_status == 2)
                    {
                        HttpContext.Current.Response.Redirect(this.linkurl(nameof(payment), (object)("?action=succeed&order_no=" + this.orderModel.order_no)));
                        break;
                    }
                    this.payModel = new Rain.BLL.payment().GetModel(this.orderModel.payment_id);
                    if (this.payModel == null)
                    {
                        HttpContext.Current.Response.Redirect(this.linkurl("error", (object)("?msg=" + Utils.UrlEncode("出错啦,支付方式不存在或已删除!"))));
                        break;
                    }
                    if (this.orderModel.payment_status == 0)
                    {
                        HttpContext.Current.Response.Redirect(this.linkurl(nameof(payment), (object)("?action=succeed&order_no=" + this.orderModel.order_no)));
                        break;
                    }
                    if (this.orderModel.order_amount == new Decimal(0))
                    {
                        if (!new Rain.BLL.orders().UpdateField(this.orderModel.order_no, "status=2,payment_status=2,payment_time='" + (object)DateTime.Now + "'"))
                        {
                            HttpContext.Current.Response.Redirect(this.linkurl(nameof(payment), (object)"?action=error"));
                            break;
                        }
                        HttpContext.Current.Response.Redirect(this.linkurl(nameof(payment), (object)("?action=succeed&order_no=" + this.orderModel.order_no)));
                        break;
                    }
                    this.order_amount = this.orderModel.order_amount;
                    break;
                }
                HttpContext.Current.Response.Redirect(this.linkurl("error", (object)("?msg=" + Utils.UrlEncode("出错啦,找不到您要提交的订单类型!"))));
                break;

            case "succeed":
                if (this.order_no.ToUpper().StartsWith("R"))
                {
                    this.rechargeModel = new Rain.BLL.user_recharge().GetModel(this.order_no);
                    if (this.rechargeModel != null)
                    {
                        break;
                    }
                    HttpContext.Current.Response.Redirect(this.linkurl("error", (object)("?msg=" + Utils.UrlEncode("出错啦,订单号不存在或已删除!"))));
                    break;
                }
                if (this.order_no.ToUpper().StartsWith("B"))
                {
                    this.orderModel = new Rain.BLL.orders().GetModel(this.order_no);
                    if (this.orderModel != null)
                    {
                        break;
                    }
                    HttpContext.Current.Response.Redirect(this.linkurl("error", (object)("?msg=" + Utils.UrlEncode("出错啦,订单号不存在或已删除!"))));
                    break;
                }
                HttpContext.Current.Response.Redirect(this.linkurl("error", (object)("?msg=" + Utils.UrlEncode("出错啦,找不到您要提交的订单类型!"))));
                break;
            }
        }
예제 #10
0
        protected void Page_Load(object sender, EventArgs e)
        {
            SortedDictionary <string, string> requestPost = this.GetRequestPost();

            if (requestPost.Count > 0)
            {
                if (new Notify().Verify(requestPost, DTRequest.GetString("notify_id"), DTRequest.GetString("sign")))
                {
                    string trade_no = DTRequest.GetString("trade_no");
                    string upper    = DTRequest.GetString("out_trade_no").ToUpper();
                    string s        = DTRequest.GetString("total_fee");
                    string str      = DTRequest.GetString("trade_status");
                    if (Config.Type == "1")
                    {
                        if (str == "TRADE_FINISHED" || str == "TRADE_SUCCESS")
                        {
                            if (upper.StartsWith("R"))
                            {
                                Rain.BLL.user_recharge   userRecharge = new Rain.BLL.user_recharge();
                                Rain.Model.user_recharge model        = userRecharge.GetModel(upper);
                                if (model == null)
                                {
                                    this.Response.Write("该订单号不存在");
                                    return;
                                }
                                if (model.status == 1)
                                {
                                    this.Response.Write("success");
                                    return;
                                }
                                if (model.amount != Decimal.Parse(s))
                                {
                                    this.Response.Write("订单金额和支付金额不相符");
                                    return;
                                }
                                if (!userRecharge.Confirm(upper))
                                {
                                    this.Response.Write("修改订单状态失败");
                                    return;
                                }
                            }
                            else if (upper.StartsWith("B"))
                            {
                                Rain.BLL.orders   orders = new Rain.BLL.orders();
                                Rain.Model.orders model  = orders.GetModel(upper);
                                if (model == null)
                                {
                                    this.Response.Write("该订单号不存在");
                                    return;
                                }
                                if (model.payment_status == 2)
                                {
                                    this.Response.Write("success");
                                    return;
                                }
                                if (model.order_amount != Decimal.Parse(s))
                                {
                                    this.Response.Write("订单金额和支付金额不相符");
                                    return;
                                }
                                if (!orders.UpdateField(upper, "trade_no='" + trade_no + "',status=2,payment_status=2,payment_time='" + (object)DateTime.Now + "'"))
                                {
                                    this.Response.Write("修改订单状态失败");
                                    return;
                                }
                                if (model.point < 0)
                                {
                                    new Rain.BLL.user_point_log().Add(model.user_id, model.user_name, model.point, "换购扣除积分,订单号:" + model.order_no, false);
                                }
                            }
                        }
                    }
                    else if (str == "WAIT_SELLER_SEND_GOODS")
                    {
                        if (upper.StartsWith("R"))
                        {
                            Rain.BLL.user_recharge   userRecharge = new Rain.BLL.user_recharge();
                            Rain.Model.user_recharge model        = userRecharge.GetModel(upper);
                            if (model == null)
                            {
                                this.Response.Write("该订单号不存在");
                                return;
                            }
                            if (model.status == 1)
                            {
                                this.Response.Write("success");
                                return;
                            }
                            if (model.amount != Decimal.Parse(s))
                            {
                                this.Response.Write("订单金额和支付金额不相符");
                                return;
                            }
                            if (!userRecharge.Confirm(upper))
                            {
                                this.Response.Write("修改订单状态失败");
                                return;
                            }
                            if (!new Service().Send_goods_confirm_by_platform(trade_no, "EXPRESS", "", "DIRECT"))
                            {
                                this.Response.Write("自动发货失败");
                                return;
                            }
                        }
                        else if (upper.StartsWith("B"))
                        {
                            Rain.BLL.orders   orders = new Rain.BLL.orders();
                            Rain.Model.orders model  = orders.GetModel(upper);
                            if (model == null)
                            {
                                this.Response.Write("该订单号不存在");
                                return;
                            }
                            if (model.payment_status == 2)
                            {
                                this.Response.Write("success");
                                return;
                            }
                            if (model.order_amount != Decimal.Parse(s))
                            {
                                this.Response.Write("订单金额和支付金额不相符");
                                return;
                            }
                            if (!orders.UpdateField(upper, "trade_no='" + trade_no + "',status=2,payment_status=2,payment_time='" + (object)DateTime.Now + "'"))
                            {
                                this.Response.Write("修改订单状态失败");
                                return;
                            }
                            if (model.point < 0)
                            {
                                new Rain.BLL.user_point_log().Add(model.user_id, model.user_name, model.point, "换购扣除积分,订单号:" + model.order_no, false);
                            }
                        }
                    }
                    else if (str == "TRADE_FINISHED" && upper.StartsWith("B"))
                    {
                        Rain.BLL.orders   orders = new Rain.BLL.orders();
                        Rain.Model.orders model  = orders.GetModel(upper);
                        if (model == null)
                        {
                            this.Response.Write("该订单号不存在");
                            return;
                        }
                        if (model.status > 2)
                        {
                            this.Response.Write("success");
                            return;
                        }
                        if (model.order_amount != Decimal.Parse(s))
                        {
                            this.Response.Write("订单金额和支付金额不相符");
                            return;
                        }
                        if (!orders.UpdateField(upper, "status=3,complete_time='" + (object)DateTime.Now + "'"))
                        {
                            this.Response.Write("修改订单状态失败");
                            return;
                        }
                        if (model.user_id > 0 && model.point > 0)
                        {
                            new Rain.BLL.user_point_log().Add(model.user_id, model.user_name, model.point, "购物获得积分,订单号:" + model.order_no, true);
                        }
                    }
                    this.Response.Write("success");
                }
                else
                {
                    this.Response.Write("fail");
                }
            }
            else
            {
                this.Response.Write("无通知参数");
            }
        }
예제 #11
0
파일: user_recharge.cs 프로젝트: Hcq/Rain
 public bool Confirm(string recharge_no)
 {
     Rain.Model.user_recharge model = this.GetModel(recharge_no);
     if (model == null)
     {
         return(false);
     }
     using (OleDbConnection connection = new OleDbConnection(DbHelperOleDb.connectionString))
     {
         connection.Open();
         using (OleDbTransaction trans = connection.BeginTransaction())
         {
             try
             {
                 StringBuilder stringBuilder1 = new StringBuilder();
                 stringBuilder1.Append("insert into " + this.databaseprefix + "user_amount_log(");
                 stringBuilder1.Append("user_id,user_name,[value],[remark],add_time)");
                 stringBuilder1.Append(" values (");
                 stringBuilder1.Append("@user_id,@user_name,@value,@remark,@add_time)");
                 OleDbParameter[] oleDbParameterArray1 = new OleDbParameter[5]
                 {
                     new OleDbParameter("@user_id", OleDbType.Integer, 4),
                     new OleDbParameter("@user_name", OleDbType.VarChar, 100),
                     new OleDbParameter("@value", OleDbType.Decimal, 5),
                     new OleDbParameter("@remark", OleDbType.VarChar, 500),
                     new OleDbParameter("@add_time", OleDbType.Date)
                 };
                 oleDbParameterArray1[0].Value = (object)model.user_id;
                 oleDbParameterArray1[1].Value = (object)model.user_name;
                 oleDbParameterArray1[2].Value = (object)model.amount;
                 oleDbParameterArray1[3].Value = (object)("在线充值,单号:" + recharge_no);
                 oleDbParameterArray1[4].Value = (object)DateTime.Now;
                 DbHelperOleDb.ExecuteSql(connection, trans, stringBuilder1.ToString(), oleDbParameterArray1);
                 StringBuilder stringBuilder2 = new StringBuilder();
                 stringBuilder2.Append("update " + this.databaseprefix + "users set amount=amount+" + (object)model.amount);
                 stringBuilder2.Append(" where id=@id");
                 OleDbParameter[] oleDbParameterArray2 = new OleDbParameter[1]
                 {
                     new OleDbParameter("@id", OleDbType.Integer, 4)
                 };
                 oleDbParameterArray2[0].Value = (object)model.user_id;
                 DbHelperOleDb.ExecuteSql(connection, trans, stringBuilder2.ToString(), oleDbParameterArray2);
                 StringBuilder stringBuilder3 = new StringBuilder();
                 stringBuilder3.Append("update " + this.databaseprefix + "user_recharge set ");
                 stringBuilder3.Append("status=@status,");
                 stringBuilder3.Append("complete_time=@complete_time");
                 stringBuilder3.Append(" where recharge_no=@recharge_no");
                 OleDbParameter[] oleDbParameterArray3 = new OleDbParameter[3]
                 {
                     new OleDbParameter("@status", OleDbType.Integer, 4),
                     new OleDbParameter("@complete_time", OleDbType.Date),
                     new OleDbParameter("@recharge_no", OleDbType.VarChar, 100)
                 };
                 oleDbParameterArray3[0].Value = (object)1;
                 oleDbParameterArray3[1].Value = (object)DateTime.Now;
                 oleDbParameterArray3[2].Value = (object)recharge_no;
                 DbHelperOleDb.ExecuteSql(connection, trans, stringBuilder3.ToString(), oleDbParameterArray3);
                 trans.Commit();
             }
             catch
             {
                 trans.Rollback();
                 return(false);
             }
         }
     }
     return(true);
 }
예제 #12
0
파일: user_recharge.cs 프로젝트: Hcq/Rain
 public bool Recharge(Rain.Model.user_recharge model)
 {
     using (OleDbConnection connection = new OleDbConnection(DbHelperOleDb.connectionString))
     {
         connection.Open();
         using (OleDbTransaction trans = connection.BeginTransaction())
         {
             try
             {
                 StringBuilder stringBuilder1 = new StringBuilder();
                 stringBuilder1.Append("insert into " + this.databaseprefix + "user_amount_log(");
                 stringBuilder1.Append("user_id,user_name,[value],[remark],add_time)");
                 stringBuilder1.Append(" values (");
                 stringBuilder1.Append("@user_id,@user_name,@value,@remark,@add_time)");
                 OleDbParameter[] oleDbParameterArray1 = new OleDbParameter[5]
                 {
                     new OleDbParameter("@user_id", OleDbType.Integer, 4),
                     new OleDbParameter("@user_name", OleDbType.VarChar, 100),
                     new OleDbParameter("@value", OleDbType.Decimal, 5),
                     new OleDbParameter("@remark", OleDbType.VarChar, 500),
                     new OleDbParameter("@add_time", OleDbType.Date)
                 };
                 oleDbParameterArray1[0].Value = (object)model.user_id;
                 oleDbParameterArray1[1].Value = (object)model.user_name;
                 oleDbParameterArray1[2].Value = (object)model.amount;
                 oleDbParameterArray1[3].Value = (object)("在线充值,单号:" + model.recharge_no);
                 oleDbParameterArray1[4].Value = (object)DateTime.Now;
                 DbHelperOleDb.ExecuteSql(connection, trans, stringBuilder1.ToString(), oleDbParameterArray1);
                 StringBuilder stringBuilder2 = new StringBuilder();
                 stringBuilder2.Append("update " + this.databaseprefix + "users set amount=amount+" + (object)model.amount);
                 stringBuilder2.Append(" where id=@id");
                 OleDbParameter[] oleDbParameterArray2 = new OleDbParameter[1]
                 {
                     new OleDbParameter("@id", OleDbType.Integer, 4)
                 };
                 oleDbParameterArray2[0].Value = (object)model.user_id;
                 DbHelperOleDb.ExecuteSql(connection, trans, stringBuilder2.ToString(), oleDbParameterArray2);
                 StringBuilder stringBuilder3 = new StringBuilder();
                 stringBuilder3.Append("insert into " + this.databaseprefix + "user_recharge(");
                 stringBuilder3.Append("user_id,user_name,recharge_no,payment_id,amount,status,add_time,complete_time)");
                 stringBuilder3.Append(" values (");
                 stringBuilder3.Append("@user_id,@user_name,@recharge_no,@payment_id,@amount,@status,@add_time,@complete_time)");
                 OleDbParameter[] oleDbParameterArray3 = new OleDbParameter[8]
                 {
                     new OleDbParameter("@user_id", OleDbType.Integer, 4),
                     new OleDbParameter("@user_name", OleDbType.VarChar, 100),
                     new OleDbParameter("@recharge_no", OleDbType.VarChar, 100),
                     new OleDbParameter("@payment_id", OleDbType.Integer, 4),
                     new OleDbParameter("@amount", OleDbType.Decimal, 5),
                     new OleDbParameter("@status", OleDbType.Integer, 4),
                     new OleDbParameter("@add_time", OleDbType.Date),
                     new OleDbParameter("@complete_time", OleDbType.Date)
                 };
                 oleDbParameterArray3[0].Value = (object)model.user_id;
                 oleDbParameterArray3[1].Value = (object)model.user_name;
                 oleDbParameterArray3[2].Value = (object)model.recharge_no;
                 oleDbParameterArray3[3].Value = (object)model.payment_id;
                 oleDbParameterArray3[4].Value = (object)model.amount;
                 oleDbParameterArray3[5].Value = (object)model.status;
                 oleDbParameterArray3[6].Value = (object)model.add_time;
                 if (model.complete_time.HasValue)
                 {
                     oleDbParameterArray3[7].Value = (object)model.complete_time;
                 }
                 else
                 {
                     oleDbParameterArray3[7].Value = (object)DBNull.Value;
                 }
                 DbHelperOleDb.ExecuteSql(connection, trans, stringBuilder3.ToString(), oleDbParameterArray3);
                 trans.Commit();
             }
             catch
             {
                 trans.Rollback();
                 return(false);
             }
         }
     }
     return(true);
 }