示例#1
0
        public bool RechargeInfoAdd(RechargeInfo recharge)
        {
            string sql = "RECHARGE_ADD";

            try
            {
                SqlParameter[] para = new SqlParameter[]
                {
                    new SqlParameter("@VIPID", SqlDbType.Int),
                    new SqlParameter("@ISVIP", SqlDbType.Bit),
                    new SqlParameter("@CHARGEMONEY", SqlDbType.Money),
                    new SqlParameter("@DEPARTMENTID", SqlDbType.Int),
                    new SqlParameter("@USERID", SqlDbType.Int)
                };
                para[0].Value = recharge.VipId;
                para[1].Value = recharge.IsVip;
                para[2].Value = recharge.ChargeMoney;
                para[3].Value = recharge.DepartId;
                para[4].Value = recharge.UserId;
                int result = SqlHelper.ExecuteNonQuery(SqlHelper.ConnectionStringShop, CommandType.StoredProcedure, sql, para);
                return(result > 0 ? true : false);
            }
            catch (Exception ex)
            {
                except.ExceptionInsert("添加会员充值记录出错:" + ex.Message, "RechargeInfoAdd", DateTime.Now);
                return(false);
            }
        }
示例#2
0
 private void btnVNOKClick(object vipMoney)
 {
     this.BeginInvoke(new Action(() =>
     {
         RechargeInfo vipMoneyTemp = vipMoney as RechargeInfo;
         double Integral           = -1;
         bool result = moneyBLL.Recharge(rechargeInfo, Integral);
         if (result)
         {
             SelectMoneyLeft(vipMoneyTemp.VipId, false);
             LogInfo logInfo    = new LogInfo();
             logInfo.UserId     = StaticData.userLocal.UserId;
             logInfo.Content    = "为非会员'" + cmbVipNoId.SelectedText + "'充值" + txtVipNoMoney.Text + "元";
             logInfo.LogTime    = DateTime.Now;
             logInfo.DpId       = StaticData.departLocal.DpId;
             bool b             = new LogBLL().LogInsert(logInfo);
             txtVipNoMoney.Text = "";
             MessageBox.Show("充值成功!");
             this.Close();
         }
         else
         {
             MessageBox.Show("系统故障,充值失败!");
         }
         btnVNOK.Enabled = true;
     }));
 }
示例#3
0
        /// <summary>
        ///
        /// </summary>
        /// <param name="ds"></param>
        /// <returns></returns>
        public static RechargeInfo GetModelFromDs(DataSet ds)
        {
            RechargeInfo model = new RechargeInfo();

            if (ds.Tables[0].Rows.Count > 0)
            {
                if (ds.Tables[0].Rows[0]["id"] != null && ds.Tables[0].Rows[0]["id"].ToString() != "")
                {
                    model.id = int.Parse(ds.Tables[0].Rows[0]["id"].ToString());
                }
                if (ds.Tables[0].Rows[0]["userid"] != null && ds.Tables[0].Rows[0]["userid"].ToString() != "")
                {
                    model.userid = int.Parse(ds.Tables[0].Rows[0]["userid"].ToString());
                }
                if (ds.Tables[0].Rows[0]["orderno"] != null && ds.Tables[0].Rows[0]["orderno"].ToString() != "")
                {
                    model.orderno = ds.Tables[0].Rows[0]["orderno"].ToString();
                }
                if (ds.Tables[0].Rows[0]["rechargeAmt"] != null && ds.Tables[0].Rows[0]["rechargeAmt"].ToString() != "")
                {
                    model.rechargeAmt = decimal.Parse(ds.Tables[0].Rows[0]["rechargeAmt"].ToString());
                }
                if (ds.Tables[0].Rows[0]["balance"] != null && ds.Tables[0].Rows[0]["balance"].ToString() != "")
                {
                    model.balance = decimal.Parse(ds.Tables[0].Rows[0]["balance"].ToString());
                }
                if (ds.Tables[0].Rows[0]["addtime"] != null && ds.Tables[0].Rows[0]["addtime"].ToString() != "")
                {
                    model.addtime = DateTime.Parse(ds.Tables[0].Rows[0]["addtime"].ToString());
                }
                if (ds.Tables[0].Rows[0]["status"] != null && ds.Tables[0].Rows[0]["status"].ToString() != "")
                {
                    model.status = int.Parse(ds.Tables[0].Rows[0]["status"].ToString());
                }
                if (ds.Tables[0].Rows[0]["paytime"] != null && ds.Tables[0].Rows[0]["paytime"].ToString() != "")
                {
                    model.paytime = DateTime.Parse(ds.Tables[0].Rows[0]["paytime"].ToString());
                }
                if (ds.Tables[0].Rows[0]["transNo"] != null && ds.Tables[0].Rows[0]["transNo"].ToString() != "")
                {
                    model.transNo = ds.Tables[0].Rows[0]["transNo"].ToString();
                }
                if (ds.Tables[0].Rows[0]["remark"] != null && ds.Tables[0].Rows[0]["remark"].ToString() != "")
                {
                    model.remark = ds.Tables[0].Rows[0]["remark"].ToString();
                }
                return(model);
            }
            else
            {
                return(null);
            }
        }
示例#4
0
 public bool IsFirstRecharge(int id)
 {
     if (this.RechargeDic != null)
     {
         RechargeInfo rechargeInfo = null;
         if (this.RechargeDic.TryGetValue(id, ref rechargeInfo))
         {
             return(rechargeInfo.num <= 0);
         }
     }
     return(true);
 }
示例#5
0
        /// <summary>
        /// 生成订单号
        /// </summary>
        /// <param name="payType">充值类型</param>
        /// <param name="merId">商户号</param>
        /// <param name="money">金额(单位:分)</param>
        /// <param name="orderId">订单号</param>
        /// <param name="feeConfigId">资费配置Id(赠送)</param>
        /// <param name="brief">备注</param>
        /// <param name="userType"></param>
        /// <returns></returns>
        protected virtual bool GetOrderId(int payType, string merId, int money, out string orderId, int feeConfigId = 0, string brief = "", int userType = 0)
        {
            orderId = string.Empty;

            string name = string.Empty;
            int    fee  = 0;

            if (!string.IsNullOrEmpty(merId) && payType > 0 &&
                GetOrderFee(payType, money, out name, out fee, userType))
            {
                try
                {
                    RechargeInfo model = new RechargeInfo();
                    model                  = GetLogInfo(model) as RechargeInfo;
                    model.MerchantId       = merId;
                    model.FOrderId         = "";
                    model.Name             = name;
                    model.UserId           = 0;
                    model.UserName         = currentUser.UserName;
                    model.NickName         = "";
                    model.Fee              = fee;
                    model.RebateFee        = 0;
                    model.RebateExpression = "";
                    model.Balance          = 0;
                    model.Cash             = fee;
                    model.Integral         = 0;
                    model.PayType          = payType;
                    model.PayMobile        = "";
                    model.SpNumber         = "";
                    model.SMSOrder         = "";
                    model.MerchantPrivate  = "";
                    model.MerchantExpand   = "";
                    model.Brief            = brief;
                    model.Status           = (int)Constants.Status.no;
                    model.CompleteTime     = DateTime.Now;
                    model.AddTime          = DateTime.Now;
                    model.PromotionCode    = HeaderInfo.PromotionCode;

                    int          result       = 0;
                    RechargeInfo rechargeInfo = _rechargeService.Generate(model, (userType == 0 ? feeConfigId : 0), (int)Constants.PayType.sms, out result);
                    if (result == (int)ErrorMessage.成功 && rechargeInfo != null)
                    {
                        orderId = rechargeInfo.OrderId;
                    }
                }
                catch (Exception ex)
                {
                    Log(ex, "");
                }
            }

            return(!string.IsNullOrEmpty(orderId));
        }
示例#6
0
        /// <summary>
        /// 生成订单
        /// </summary>
        /// <param name="model">订单</param>
        /// <param name="feeConfigId">计费点ID</param>
        /// <param name="smsPayType">短信支付方式(int)Constants.PayType.sms</param>
        /// <param name="result">成功 = 1,失败 = 0...</param>
        /// <returns></returns>
        public RechargeInfo Generate(RechargeInfo model, int feeConfigId, int smsPayType, out int result)
        {
            string spName = "Wap.Recharge_Generate";

            var p = new DynamicParameters();

            p.Add("@MerchantId", model.MerchantId);
            p.Add("@FOrderId", model.FOrderId);
            p.Add("@ClientID", model.ClientId);
            p.Add("@Name", model.Name);
            p.Add("@UserId", model.UserId);
            p.Add("@UserName", model.UserName);
            p.Add("@NickName", model.NickName);
            p.Add("@Fee", model.Fee);
            p.Add("@RebateFee", model.RebateFee);
            p.Add("@RebateExpression", model.RebateExpression);
            p.Add("@Balance", model.Balance);
            p.Add("@Cash", model.Cash);
            p.Add("@Integral", model.Integral);
            p.Add("@PayType", model.PayType);
            p.Add("@PayMobile", model.PayMobile);
            p.Add("@SpNumber", model.SpNumber);
            p.Add("@SMSOrder", model.SMSOrder);
            p.Add("@MerchantPrivate", model.MerchantPrivate);
            p.Add("@MerchantExpand", model.MerchantExpand);
            p.Add("@Brief", model.Brief);
            p.Add("@Version", model.Version);
            p.Add("@Province", model.Province);
            p.Add("@City", model.City);
            p.Add("@ReferUrl", model.ReferUrl);
            p.Add("@UserAgent", model.UserAgent);
            p.Add("@IMEI", model.IMEI);
            p.Add("@IMSI", model.IMSI);
            p.Add("@IPAddress", model.IPAddress);
            p.Add("@RemoteHost", model.RemoteHost);
            p.Add("@Mobile", model.Mobile);
            p.Add("@NetType", model.NetType);
            p.Add("@ChannelId", model.ChannelId);
            p.Add("@SourceType", model.SourceType);
            p.Add("@Status", model.Status);
            p.Add("@CompleteTime", model.CompleteTime);
            p.Add("@AddTime", model.AddTime);
            p.Add("@FeeConfigId", feeConfigId);
            p.Add("@SMSPayType", smsPayType);
            p.Add("@PromotionCode", model.PromotionCode);
            p.Add("@ROut", dbType: DbType.Int32, direction: ParameterDirection.Output);

            RechargeInfo rechargeInfo = DbManage.Query <RechargeInfo>(spName, p, CommandType.StoredProcedure).FirstOrDefault();

            result = p.Get <int>("@ROut");

            return(rechargeInfo);
        }
示例#7
0
        /// <summary>
        /// 会员与非会员充值
        /// </summary>
        /// <param name="vipMoney"></param>
        /// <returns></returns>
        public bool Recharge(RechargeInfo vipMoney, double Integral)
        {
            VipMoney money = new VipMoney();

            money.IsVip     = vipMoney.IsVip;
            money.VipId     = vipMoney.VipId;
            money.VmBalance = vipMoney.ChargeMoney;
            money.Integral  = Integral;
            ///先去记录充值信息
            vipMoneyDal.RechargeInfoAdd(vipMoney);
            //这里去充值
            return(vipMoneyDal.Recharge(money));
        }
示例#8
0
        public RechargeInfo Generate(RechargeInfo model, int feeConfigId, int smsPayType, out int result)
        {
            result = 0;
            if (model == null)
            {
                return(null);
            }

            using (var conn = DbConnection(DbOperation.Write))
            {
                var repo = new Repository.RechargeRepo(conn);
                return(repo.Generate(model, feeConfigId, smsPayType, out result));
            }
        }
示例#9
0
        public int Completed(RechargeInfo model, out int result)
        {
            result = 0;
            if (model == null)
            {
                return(0);
            }

            using (var conn = DbConnection(DbOperation.Write))
            {
                var repo = new Repository.RechargeRepo(conn);
                return(repo.Completed(model, out result));
            }
        }
示例#10
0
        private void btnOk_Click(object sender, EventArgs e)
        {
            progressBar1.Visible = true;
            btnOk.Enabled        = false;
            UserInfo user = new UserInfo();

            dpid = int.Parse(cmbDepart.SelectedValue.ToString());
            int departId = Int32.Parse(cmbDepart.SelectedValue.ToString());

            startTime             = dtpBegin.Value.Date;
            endTime               = dtpEnd.Value.Date.AddDays(1);
            rechargeInfo          = new RechargeInfo();
            rechargeInfo.DepartId = departId;
            backgroundWorker1.RunWorkerAsync();
        }
示例#11
0
        public IncomeBorrow(bool isAdmin)
        {
            InitializeComponent();

            bg.DoWork             += new DoWorkEventHandler(bg_DoWork);                         //异步操作时要做的操作,一般去查列表,这个列表在本页面内先声明,然后在这个dowork方法里去取数填充他
            bg.RunWorkerCompleted += new RunWorkerCompletedEventHandler(bg_RunWorkerCompleted); //这个是取数完成后进行的操作,去到数后,这里取用去到的列表绑定到控件

            departBLL    = new DepartBLL();
            vipMoneyBLL  = new VipMoneyBLL();
            userBLL      = new UserBLL();
            vipBLL       = new VipBLL();
            vipNoBLL     = new VipNoBLL();
            IsAdmin      = isAdmin;
            rechargeInfo = new RechargeInfo();
        }
示例#12
0
 private void btnOKClick(object vipMoney)
 {
     this.BeginInvoke(new Action(() =>
     {
         RechargeInfo vipMoneyTemp = vipMoney as RechargeInfo;
         //if (vipMoneyTemp .ID <1)
         //{
         //    MessageBox.Show("请查出用户信息");
         //    return;
         //}
         double Integarl = -1;
         if (txtIntegral.TextLength > 0)
         {
             Integarl = double.Parse(txtIntegral.Text.Trim());
         }
         bool result = moneyBLL.Recharge(vipMoneyTemp, Integarl);
         if (result)
         {
             LogInfo logInfo = new LogInfo();
             logInfo.UserId  = StaticData.userLocal.UserId;
             if (Integarl >= 0)
             {
                 logInfo.Content = "为会员‘" + txtVipName.Text + "'充值" + vipMoneyTemp.ChargeMoney + "元,积分由" + txtIntegralLeft.Text + "更改为" + Integarl.ToString();
             }
             logInfo.Content = "为会员‘" + txtVipName.Text + "'充值" + vipMoneyTemp.ChargeMoney + "元";
             logInfo.LogTime = DateTime.Now;
             logInfo.DpId    = StaticData.departLocal.DpId;
             bool b          = new LogBLL().LogInsert(logInfo);
             SelectMoneyLeft(vipMoneyTemp.VipId, true);
             if (int.Parse(txtMoney.Text.Trim()) < 0)
             {
                 MessageBox.Show("扣费成功!");
             }
             else
             {
                 MessageBox.Show("充值成功!");
                 chargeMoney = vipMoneyTemp.ChargeMoney;
             }
             txtMoney.Text    = "";
             txtIntegral.Text = "";
             this.Close();
         }
         else
         {
             MessageBox.Show("系统故障,充值失败!");
         }
     }));
 }
示例#13
0
        public JsonResult Result(string orderId)
        {
            string       url          = "";
            bool         flag         = false;
            RechargeInfo rechargeInfo = _rechargeService.GetOrder(orderId, currentUser.UserName);

            if (rechargeInfo != null && rechargeInfo.Id > 0)
            {
                if (rechargeInfo.Status == 1)
                {
                    flag = true;
                    url  = "/recentread/index".GetChannelRouteUrl(RouteChannelId);
                }
            }
            return(Json(new SimpleResponse <object>(flag, new { returnUrl = url })));
        }
示例#14
0
        private void btnVNOK_Click(object sender, EventArgs e)
        {
            try
            {
                if (txtVipNoCard.Text == "")
                {
                    MessageBox.Show("请选择非会员");
                    return;
                }
                DialogResult result = MessageBox.Show("充值" + txtVipNoMoney.Text + "元?", "提示", MessageBoxButtons.YesNo, MessageBoxIcon.Question);
                if (result == DialogResult.No)
                {
                    return;
                }
                int vipId = Int32.Parse(cmbVipNoId.SelectedValue.ToString());
                rechargeInfo          = new RechargeInfo();
                rechargeInfo.VipId    = vipId;
                rechargeInfo.DepartId = StaticData.departLocal.DpId;
                rechargeInfo.UserId   = StaticData.userLocal.UserId;
                if (txtVipNoMoney.Text.Trim() == "" || txtVipNoMoney.Text.Trim() == null)
                {
                    epMessage.SetError(txtVipNoMoney, "请输入充值金额");
                    btnVNOK.Enabled = false;
                    return;
                }
                double money = double.Parse(txtVipNoMoney.Text.Trim());
                if (money > 5000)
                {
                    MessageBox.Show("充值金额不得超过5000元");
                    btnVNOK.Enabled = false;
                    return;
                }

                btnVNOK.Enabled          = false;
                rechargeInfo.ChargeMoney = money;
                rechargeInfo.IsVip       = false;

                Thread th = new Thread(new ParameterizedThreadStart(btnVNOKClick));
                th.IsBackground = true;
                th.Start(rechargeInfo);
            }
            catch (Exception)
            {
                MessageBox.Show("充值失败");
            }
        }
示例#15
0
        /// <summary>
        ///  更新一条数据
        /// </summary>
        public bool Update(RechargeInfo model)
        {
            try
            {
                int            rowsAffected = 0;
                SqlParameter[] parameters   =
                {
                    new SqlParameter("@id",          SqlDbType.Int,        4),
                    new SqlParameter("@userid",      SqlDbType.Int,        4),
                    new SqlParameter("@orderno",     SqlDbType.NVarChar,  30),
                    new SqlParameter("@rechargeAmt", SqlDbType.Decimal,    9),
                    new SqlParameter("@balance",     SqlDbType.Decimal,    9),
                    new SqlParameter("@addtime",     SqlDbType.DateTime),
                    new SqlParameter("@status",      SqlDbType.TinyInt,    1),
                    new SqlParameter("@paytime",     SqlDbType.DateTime),
                    new SqlParameter("@transNo",     SqlDbType.NVarChar,  50),
                    new SqlParameter("@remark",      SqlDbType.NVarChar, 200)
                };
                parameters[0].Value = model.id;
                parameters[1].Value = model.userid;
                parameters[2].Value = model.orderno;
                parameters[3].Value = model.rechargeAmt;
                parameters[4].Value = model.balance;
                parameters[5].Value = model.addtime;
                parameters[6].Value = model.status;
                parameters[7].Value = model.paytime;
                parameters[8].Value = model.transNo;
                parameters[9].Value = model.remark;

                rowsAffected = DataBase.ExecuteNonQuery(CommandType.StoredProcedure, "proc_recharge_Update", parameters);
                if (rowsAffected > 0)
                {
                    return(true);
                }
                else
                {
                    return(false);
                }
            }
            catch (Exception ex)
            {
                ExceptionHandler.HandleException(ex);
                return(false);
            }
        }
示例#16
0
        /// <summary>
        /// 充值完成
        /// </summary>
        /// <param name="model"></param>
        /// <param name="result"></param>
        /// <returns></returns>
        public int Completed(RechargeInfo model, out int result)
        {
            string spName = "Wap.Recharge_Completed";

            var p = new DynamicParameters();

            p.Add("@OrderId", model.OrderId);
            p.Add("@FOrderId", model.FOrderId);
            p.Add("@Cash", model.Cash);
            p.Add("@PayMobile", model.PayMobile);
            p.Add("@Brief", model.Brief);
            p.Add("@ROut", dbType: DbType.Int32, direction: ParameterDirection.Output);

            var value = DbManage.Execute(spName, p, CommandType.StoredProcedure);

            result = p.Get <int>("@ROut");

            return(value);
        }
示例#17
0
        public List <RechargeInfo> RechargeInfoSelect(DateTime begin, DateTime end, RechargeInfo rechargeInfo)
        {
            string sql = "RECHARGE_SELECT_BY_DEPART";
            List <RechargeInfo> rechargeList = new List <RechargeInfo>();

            dt = new DataTable();
            try
            {
                SqlParameter[] para = new SqlParameter[]
                {
                    new SqlParameter("@beginTime", SqlDbType.DateTime),
                    new SqlParameter("@endTime", SqlDbType.DateTime),
                    new SqlParameter("@DepartId", SqlDbType.Int)
                };
                para[0].Value = begin;
                para[1].Value = end;
                para[2].Value = rechargeInfo.DepartId;
                RechargeInfo rechargeTemp;
                using (SqlDataReader dr = SqlHelper.ExecuteReader(SqlHelper.ConnectionStringShop, CommandType.StoredProcedure, sql, para))
                {
                    dt.Load(dr);
                }
                for (int i = 0; i < dt.Rows.Count; i++)
                {
                    rechargeTemp              = new RechargeInfo();
                    rechargeTemp.DepartId     = Convert.ToInt32(dt.Rows[i]["DEPARTMENTID"]);
                    rechargeTemp.ChargeMoney  = Convert.ToDouble(dt.Rows[i]["CHARGEMONEY"]);
                    rechargeTemp.Balance      = Convert.ToDouble(dt.Rows[i]["BALANCE"]);
                    rechargeTemp.ID           = Convert.ToInt32(dt.Rows[i]["ID"]);
                    rechargeTemp.IsVip        = Convert.ToBoolean(dt.Rows[i]["ISVIP"]);
                    rechargeTemp.VipId        = Convert.ToInt32(dt.Rows[i]["VIPID"]);
                    rechargeTemp.UserId       = Convert.ToInt32(dt.Rows[i]["USERID"]);
                    rechargeTemp.RechargeTime = Convert.ToDateTime(dt.Rows[i]["CHARGETIME"]);
                    rechargeList.Add(rechargeTemp);
                }
                return(rechargeList);
            }
            catch (Exception ex)
            {
                except.ExceptionInsert("查询会员或非会员充值记录出错:" + ex.Message, "RechargeInfoSelect", DateTime.Now);
                return(null);
            }
        }
示例#18
0
 private void OnRechargeInfosLoginPush(short state, RechargeInfosLoginPush down = null)
 {
     if (state != 0)
     {
         StateManager.Instance.StateShow(state, 0);
         return;
     }
     if (down != null && down.rechargeInfos != null)
     {
         FirstPayManager.Instance.FirstPayRechargeInfo = down.info;
         FirstPayManager.Instance.AllRechargeDiamond   = down.rechargeDiamond;
         this.RechargeDic.Clear();
         for (int i = 0; i < down.rechargeInfos.get_Count(); i++)
         {
             RechargeInfo rechargeInfo = down.rechargeInfos.get_Item(i);
             this.RechargeDic.set_Item(rechargeInfo.id, rechargeInfo);
         }
         this.CheckBoxTips();
     }
 }
示例#19
0
    public int GetTodayRechargeCount(int id)
    {
        List <RechargeGoodsInfo> listRechargeGoodsInfo = RechargeManager.Instance.listRechargeGoodsInfo;
        int sDKType = SDKManager.Instance.GetSDKType();

        for (int i = 0; i < listRechargeGoodsInfo.get_Count(); i++)
        {
            if (id == listRechargeGoodsInfo.get_Item(i).ID&& sDKType == listRechargeGoodsInfo.get_Item(i).channel)
            {
                id = listRechargeGoodsInfo.get_Item(i).indexes;
            }
        }
        if (this.RechargeDic != null)
        {
            RechargeInfo rechargeInfo = null;
            if (this.RechargeDic.TryGetValue(id, ref rechargeInfo))
            {
                return(rechargeInfo.dayNum);
            }
        }
        return(0);
    }
示例#20
0
 private void OnRechargeInfoChangeNty(short state, RechargeInfoChangeNty down = null)
 {
     if (state != 0)
     {
         StateManager.Instance.StateShow(state, 0);
         return;
     }
     if (down != null && down.rechargeInfos != null)
     {
         for (int i = 0; i < down.rechargeInfos.get_Count(); i++)
         {
             RechargeInfo rechargeInfo = down.rechargeInfos.get_Item(i);
             if (this.RechargeIds.Contains(rechargeInfo.id))
             {
                 this.RechargeDic.set_Item(rechargeInfo.id, rechargeInfo);
             }
         }
     }
     if (PrivilegeUIViewModel.Instance != null)
     {
         PrivilegeUIViewModel.Instance.RefreshRechargePages();
     }
 }
示例#21
0
        public void NowPayNotify()
        {
            string errorMessage = "fail";

            try
            {
                string appKey = NowPayConfig.AppKey;

                SortedDictionary <string, string> sPara = GetRequestPost();
                if (sPara.Count > 0)
                {
                    if (string.Compare(GetSign(appKey, sPara), sPara["signature"], true) == 0)
                    {
                        string  mhtOrderNo  = sPara["mhtOrderNo"];
                        decimal mhtOrderAmt = StringHelper.ToDecimal(sPara["mhtOrderAmt"]);
                        string  tradeStatus = sPara["tradeStatus"];
                        if (string.Compare(tradeStatus, "A001", true) == 0)
                        {
                            int          result = 0;
                            RechargeInfo model  = new RechargeInfo();
                            model.OrderId   = mhtOrderNo;
                            model.FOrderId  = "";
                            model.Cash      = mhtOrderAmt;
                            model.PayMobile = "";
                            _rechargeService.Completed(model, out result);     //1:成功 0:失败
                            if (result == (int)ErrorMessage.成功)
                            {
                                errorMessage = "success";
                            }
                        }
                    }
                }
            }
            catch { }

            Response.Write(errorMessage);
        }
示例#22
0
        public override void ProcessNotify(out WxPayData data)
        {
            if (GetNotifyData(out data))
            {
                //Log.Info(this.GetType().ToString(), "ProcessNotify() out_trade_no = " + data.GetValue("out_trade_no").ToString());
                //Log.Info(this.GetType().ToString(), "ProcessNotify() isset openid = " + data.IsSet("openid"));
                //Log.Info(this.GetType().ToString(), "ProcessNotify() openid = " + data.GetValue("openid").ToString());
                //Log.Info(this.GetType().ToString(), "ProcessNotify() isset product_id = " + data.IsSet("product_id"));
                //Log.Info(this.GetType().ToString(), "ProcessNotify() product_id = " + data.GetValue("product_id").ToString());

                //检查openid和product_id是否返回
                if (!data.IsSet("openid") || !data.IsSet("product_id"))
                {
                    data = new WxPayData();
                    data.SetValue("return_code", "FAIL");
                    data.SetValue("return_msg", "回调数据异常");

                    Log.Info(this.GetType().ToString(), "The data WeChat post is error : " + data.ToXml());

                    return;
                }

                //调统一下单接口,获得下单结果
                string    openid             = data.GetValue("openid").ToString();
                string    product_id         = data.GetValue("product_id").ToString();
                WxPayData unifiedOrderResult = new WxPayData();
                try
                {
                    unifiedOrderResult = UnifiedOrder(openid, product_id);
                }
                catch   //若在调统一下单接口时抛异常,立即返回结果给微信支付后台
                {
                    data = new WxPayData();
                    data.SetValue("return_code", "FAIL");
                    data.SetValue("return_msg", "统一下单失败");

                    Log.Error(this.GetType().ToString(), "UnifiedOrder failure : " + data.ToXml());

                    return;
                }

                //若下单失败,则立即返回结果给微信支付后台
                if (!unifiedOrderResult.IsSet("appid") || !unifiedOrderResult.IsSet("mch_id") || !unifiedOrderResult.IsSet("prepay_id"))
                {
                    data = new WxPayData();
                    data.SetValue("return_code", "FAIL");
                    data.SetValue("return_msg", "统一下单失败");

                    Log.Error(this.GetType().ToString(), "UnifiedOrder failure : " + data.ToXml());

                    return;
                }

                #region

                string  mhtOrderNo = data.GetValue("out_trade_no").ToString();
                decimal total_fee  = StringHelper.ToDecimal(data.GetValue("total_fee"));
                if (!string.IsNullOrEmpty(mhtOrderNo))
                {
                    int          result = 0;
                    RechargeInfo model  = new RechargeInfo();
                    model.OrderId   = mhtOrderNo;
                    model.FOrderId  = "";
                    model.Cash      = total_fee;
                    model.PayMobile = "";
                    _rechargeService.Completed(model, out result);     //1:成功 0:失败
                    if (result != (int)ErrorMessage.成功)
                    {
                        data = new WxPayData();
                        data.SetValue("return_code", "FAIL");
                        data.SetValue("return_msg", "统一下单失败");

                        Log.Error(this.GetType().ToString(), "UnifiedOrder failure : " + data.ToXml());

                        return;
                    }
                }

                #endregion

                //统一下单成功,则返回成功结果给微信支付后台
                data = new WxPayData();
                data.SetValue("return_code", "SUCCESS");
                data.SetValue("return_msg", "OK");
                data.SetValue("appid", WxPayConfig.APPID);
                data.SetValue("mch_id", WxPayConfig.MCHID);
                data.SetValue("nonce_str", WxPayApi.GenerateNonceStr());
                data.SetValue("prepay_id", unifiedOrderResult.GetValue("prepay_id"));
                data.SetValue("result_code", "SUCCESS");
                data.SetValue("err_code_des", "OK");
                data.SetValue("sign", data.MakeSign());

                Log.Info(this.GetType().ToString(), "UnifiedOrder success , send data to WeChat : " + data.ToXml());
            }
        }
示例#23
0
        private void btnOK_Click(object sender, EventArgs e)
        {
            if (txtVipName.Text == "")
            {
                MessageBox.Show("请选择会员!");
                return;
            }
            rechargeInfo          = new RechargeInfo();
            rechargeInfo.VipId    = vipId;
            rechargeInfo.DepartId = StaticData.departLocal.DpId;
            rechargeInfo.UserId   = StaticData.userLocal.UserId;
            if (txtMoney.Text.Trim() == "")
            {
                epMessage.SetError(txtMoney, "请输入存入金额");
                return;
            }
            else
            {
                double a = 0;
                if (!double.TryParse(txtMoney.Text.Trim(), out a))
                {
                    epMessage.SetError(txtMoney, "请输入正确金额");
                    return;
                }
                epMessage.SetError(txtMoney, "");
            }
            double money = double.Parse(txtMoney.Text.Trim());

            if (money > 500)
            {
                MessageBox.Show("充值金额不得操作500元");
                return;
            }
            if (txtIntegral.Text.Trim().Length > 0)
            {
                double a = 0;
                if (!double.TryParse(txtIntegral.Text.Trim(), out a))
                {
                    epMessage.SetError(txtIntegral, "请输入正确积分");
                    return;
                }
                if (double.Parse(txtIntegral.Text) < 0)
                {
                    epMessage.SetError(txtIntegral, "请输入正确积分");
                    return;
                }
                epMessage.SetError(txtIntegral, "");
                DialogResult result1 = MessageBox.Show("要修改积分为" + txtIntegral.Text + "?", "提示", MessageBoxButtons.YesNo, MessageBoxIcon.Question);
                if (result1 == DialogResult.No)
                {
                    return;
                }
            }
            if (money < 0)
            {
                CheckPassWord checkPW = new CheckPassWord(vipTemp.VipName, txtMoney.Text, vipTemp.VipPWD);
                checkPW.ShowDialog();
                if (!checkPW.IsTrue)
                {
                    MessageBox.Show("密码错误,无法扣除费用");
                    return;
                }
            }
            else
            {
                DialogResult result = MessageBox.Show("充值" + txtMoney.Text + "元?", "提示", MessageBoxButtons.YesNo, MessageBoxIcon.Question);
                if (result == DialogResult.No)
                {
                    return;
                }
            }

            rechargeInfo.ChargeMoney = money;
            rechargeInfo.IsVip       = true;
            Thread th = new Thread(new ParameterizedThreadStart(btnOKClick));

            th.IsBackground = true;
            th.Start(rechargeInfo);
        }
示例#24
0
 /// <summary>
 /// 转换充值信息
 /// </summary>
 /// <param name="listRechargeRecord"></param>
 /// <returns></returns>
 List<RechargeInfo> getRechargeInfo(List<RechargeRecord_rcr_Info> listRechargeRecord)
 {
     List<RechargeInfo> listRechargeInfo = null;
     try
     {
         if (listRechargeRecord != null)
         {
             listRechargeInfo = new List<RechargeInfo>();
             listRechargeRecord = listRechargeRecord.OrderByDescending(x => x.rcr_dRechargeTime).ToList();
             for (int i = 0; i < listRechargeRecord.Count; i++)
             {
                 try
                 {
                     RechargeInfo info = new RechargeInfo();
                     info.ID = i + 1;
                     info.RecordID = listRechargeRecord[i].rcr_cRecordID;
                     info.RechargeType = Common.DefineConstantValue.GetMoneyFlowDesc(listRechargeRecord[i].rcr_cRechargeType);
                     info.RechargeTime = listRechargeRecord[i].rcr_dRechargeTime;
                     info.RechargeMoney = listRechargeRecord[i].rcr_fRechargeMoney;
                     listRechargeInfo.Add(info);
                 }
                 catch (Exception exx)
                 { base.MessageDialog("提示", exx.Message); }
             }
         }
     }
     catch (Exception ex)
     { base.MessageDialog("提示", ex.Message); }
     return listRechargeInfo;
 }
示例#25
0
 public List <RechargeInfo> RechargeInfoSelect(DateTime begin, DateTime end, RechargeInfo rechargeInfo)
 {
     return(vipMoneyDal.RechargeInfoSelect(begin, end, rechargeInfo));
 }
示例#26
0
        public override void ProcessNotify(out WxPayData data)
        {
            if (GetNotifyData(out data))
            {
                //检查支付结果中transaction_id是否存在
                if (!data.IsSet("transaction_id"))
                {
                    //若transaction_id不存在,则立即返回结果给微信支付后台
                    data = new WxPayData();
                    data.SetValue("return_code", "FAIL");
                    data.SetValue("return_msg", "支付结果中微信订单号不存在");

                    Log.Error(this.GetType().ToString(), "The Pay result is error : " + data.ToXml());

                    return;
                }

                string transaction_id = data.GetValue("transaction_id").ToString();

                //查询订单,判断订单真实性
                if (!QueryOrder(transaction_id))
                {
                    //若订单查询失败,则立即返回结果给微信支付后台
                    data = new WxPayData();
                    data.SetValue("return_code", "FAIL");
                    data.SetValue("return_msg", "订单查询失败");

                    Log.Error(this.GetType().ToString(), "Order query failure : " + data.ToXml());
                }
                //查询订单成功
                else
                {
                    string  mhtOrderNo = data.GetValue("out_trade_no").ToString();
                    decimal total_fee  = StringHelper.ToDecimal(data.GetValue("total_fee"));
                    if (!string.IsNullOrEmpty(mhtOrderNo))
                    {
                        int          result = 0;
                        RechargeInfo model  = new RechargeInfo();
                        model.OrderId   = mhtOrderNo;
                        model.FOrderId  = "";
                        model.Cash      = total_fee;
                        model.PayMobile = "";
                        _rechargeService.Completed(model, out result);     //1:成功 0:失败
                        if (result != (int)ErrorMessage.成功)
                        {
                            //失败
                            data = new WxPayData();
                            data.SetValue("return_code", "FAIL");
                            data.SetValue("return_msg", "订单查询失败");

                            Log.Error(this.GetType().ToString(), "Order query failure : " + data.ToXml());

                            return;
                        }
                    }

                    //成功
                    data.SetValue("return_code", "SUCCESS");
                    data.SetValue("return_msg", "OK");

                    Log.Info(this.GetType().ToString(), "order query success : " + data.ToXml());
                }
            }
        }
示例#27
0
        private void backgroundWorker1_RunWorkerCompleted(object sender, RunWorkerCompletedEventArgs e)
        {
            lvMsg.BeginUpdate();
            lvMsg.Groups.Clear();
            lvMsg.Items.Clear();

            #region 新办会员收入
            ListViewItem  addVipSum = new ListViewItem();
            ListViewGroup newGroup  = new ListViewGroup();
            newGroup.Header          = "新办会员收入";
            newGroup.HeaderAlignment = HorizontalAlignment.Center;
            lvMsg.Groups.Add(newGroup);
            if (vipList != null)
            {
                for (int i = 0; i < vipList.Count; i++)
                {
                    UserInfo user = new UserInfo();
                    user.UserId = vipList[i].UserId;
                    user        = userBLL.SelectUserById(user);
                    ListViewItem vi = new ListViewItem();
                    vi.SubItems[0].Text = vipList[i].VipName;
                    vi.SubItems.Add("10");
                    vi.SubItems.Add("新会员");
                    vi.SubItems.Add(vipList[i].AddDate.ToString());
                    vi.SubItems.Add(user.UserName);
                    newGroup.Items.Add(vi);
                    lvMsg.Items.Add(vi);
                }
                addVipSum.SubItems[0].Text = "新办会员总计:";
                addVipSum.SubItems.Add((vipList.Count * 10).ToString());
                addVipSum.ForeColor = Color.Red;
            }
            else
            {
                addVipSum.SubItems[0].Text = "新办会员总计:";
                addVipSum.SubItems.Add("0");
                addVipSum.ForeColor = Color.Red;
            }

            #endregion


            #region 充值收入

            ListViewItem  vipChargeSum = new ListViewItem();
            ListViewGroup chargeGroup  = new ListViewGroup();
            chargeGroup.Header          = "充值收入";
            chargeGroup.HeaderAlignment = HorizontalAlignment.Center;
            RechargeInfo rechargeInfo = new RechargeInfo();
            rechargeInfo.DepartId = departId;
            List <RechargeInfo> rechargeList = vipMoneyBLL.RechargeInfoSelect(beginTime, endTime, rechargeInfo);
            if (rechargeList != null)
            {
                double money = 0;
                for (int i = 0; i < rechargeList.Count; i++)
                {
                    UserInfo user = new UserInfo();
                    user.UserId = rechargeList[i].UserId;
                    user        = userBLL.SelectUserById(user);
                    ListViewItem vi = new ListViewItem();
                    if (rechargeList[i].IsVip)
                    {
                        VIPInfo vip = new VIPInfo();
                        vip.VipId           = rechargeList[i].VipId;
                        vip                 = vipBLL.VipSelectById(vip);
                        vi.SubItems[0].Text = vip.VipName;
                    }
                    else
                    {
                        VipNoInfo vipNo = new VipNoInfo();
                        vipNo.VipId         = rechargeList[i].VipId;
                        vipNo               = new VipNoBLL().VipNoSelectByVIPNoId(vipNo);
                        vi.SubItems[0].Text = vipNo.VipName;
                    }
                    money += rechargeList[i].ChargeMoney;
                    vi.SubItems.Add(rechargeList[i].ChargeMoney.ToString());
                    if (rechargeList[i].ChargeMoney < 0)
                    {
                        vi.SubItems.Add("扣费");
                    }
                    else
                    {
                        vi.SubItems.Add("充值");
                    }
                    vi.SubItems.Add(rechargeList[i].RechargeTime.ToString());
                    vi.SubItems.Add(user.UserName);
                    chargeGroup.Items.Add(vi);
                    lvMsg.Items.Add(vi);
                }
                vipChargeSum.SubItems[0].Text = "充值总计:";
                vipChargeSum.SubItems.Add(money.ToString());
                vipChargeSum.ForeColor = Color.Red;

                // lvMsg.Items[rechargeList.Count].ForeColor = Color.Red;
            }
            else
            {
                vipChargeSum.SubItems[0].Text = "充值总计:";
                vipChargeSum.SubItems.Add("0");
                vipChargeSum.ForeColor = Color.Red;
            }
            lvMsg.Groups.Add(chargeGroup);

            #endregion

            #region 会员租车收入
            /////会员租车收入
            ListViewItem  vipBorrowSum = new ListViewItem();
            ListViewGroup vipGroup     = new ListViewGroup();
            vipGroup.Header          = "会员租车收入";
            vipGroup.HeaderAlignment = HorizontalAlignment.Center;
            BikeReturn brTemp = new BikeReturn();
            brTemp.DpId  = departId;
            brTemp.IsVip = true;
            List <BikeReturn> bikeReturnList = brBLL.BikeReturnSelectByDpIdAndTime(brTemp, beginTime, endTime);
            if (bikeReturnList != null)
            {
                double money = 0;
                for (int i = 0; i < bikeReturnList.Count; i++)
                {
                    ListViewItem vi   = new ListViewItem();
                    VIPInfo      vip  = new VIPInfo();
                    UserInfo     user = new UserInfo();
                    user.UserId         = bikeReturnList[i].BBUserId;
                    user                = userBLL.SelectUserById(user);
                    vip.VipId           = bikeReturnList[i].VipId;
                    vip                 = vipBLL.VipSelectById(vip);
                    vi.SubItems[0].Text = vip.VipName;
                    vi.SubItems.Add(bikeReturnList[i].BuCost.ToString());
                    vi.SubItems.Add("会员租车");
                    vi.SubItems.Add(bikeReturnList[i].BBTime.ToString());
                    vi.SubItems.Add(user.UserName);
                    money += bikeReturnList[i].BuCost;
                    vipGroup.Items.Add(vi);
                    lvMsg.Items.Add(vi);
                }
                vipBorrowSum.SubItems[0].Text = "会员租车总计:";
                vipBorrowSum.SubItems.Add(money.ToString());
                vipBorrowSum.ForeColor = Color.Red;
            }
            else
            {
                vipBorrowSum.SubItems[0].Text = "会员租车总计:";
                vipBorrowSum.SubItems.Add("0");
                vipBorrowSum.ForeColor = Color.Red;
            }
            lvMsg.Groups.Add(vipGroup);
            lvMsg.ShowGroups = true;
            #endregion



            #region 非会员租车
            ListViewItem  vipNoBorrowSum = new ListViewItem();
            ListViewGroup vipNoGroup     = new ListViewGroup();
            vipNoGroup.Header          = "非会员租车收入";
            vipNoGroup.HeaderAlignment = HorizontalAlignment.Center;
            brTemp.IsVip   = false;
            bikeReturnList = brBLL.BikeReturnSelectByDpIdAndTime(brTemp, beginTime, endTime);
            if (bikeReturnList != null)
            {
                double money = 0;
                for (int i = 0; i < bikeReturnList.Count; i++)
                {
                    ListViewItem vi    = new ListViewItem();
                    VipNoInfo    vipNo = new VipNoInfo();
                    UserInfo     user  = new UserInfo();
                    user.UserId         = bikeReturnList[i].BBUserId;
                    user                = userBLL.SelectUserById(user);
                    vipNo.VipId         = bikeReturnList[i].VipId;
                    vipNo               = new VipNoBLL().VipNoSelectByVIPNoId(vipNo);
                    vi.SubItems[0].Text = vipNo.VipName;
                    vi.SubItems.Add(bikeReturnList[i].BuCost.ToString());
                    vi.SubItems.Add("非会员租车");
                    vi.SubItems.Add(bikeReturnList[i].BBTime.ToString());
                    try
                    {
                        vi.SubItems.Add(user.UserName);
                    }
                    catch (Exception)
                    {
                    }
                    money += bikeReturnList[i].BuCost;
                    vipNoGroup.Items.Add(vi);
                    lvMsg.Items.Add(vi);
                }
                vipNoBorrowSum.SubItems[0].Text = "非会员租车总计:";
                vipNoBorrowSum.SubItems.Add(money.ToString());
                vipNoBorrowSum.ForeColor = Color.Red;
            }
            else
            {
                vipNoBorrowSum.SubItems[0].Text = "非会员租车总计:";
                vipNoBorrowSum.SubItems.Add("0");
                vipNoBorrowSum.ForeColor = Color.Red;
            }
            lvMsg.Groups.Add(vipNoGroup);
            lvMsg.ShowGroups = true;
            #endregion

            #region 会员租车余额
            /////会员租车余额
            ListViewItem vipp = new ListViewItem();
            vipp.SubItems[0].Text = "会员余额";
            string DpId = cmbDepart.SelectedValue.ToString();
            string s    = vipMoneyBLL.vipSumMoneyBalanceByDpId(DpId).ToString();
            vipp.SubItems.Add(s);
            vipp.ForeColor = Color.Red;

            #endregion

            #region 非会员租车余额
            /////非会员租车余额
            ListViewItem vippNot = new ListViewItem();
            vippNot.SubItems[0].Text = "非会员余额";
            vippNot.SubItems.Add(vipMoneyBLL.vipNoSumMoneyBalanceByDpId(DpId).ToString());
            vippNot.ForeColor = Color.Red;
            #endregion

            #region 总计
            ListViewGroup AllMoney = new ListViewGroup();
            AllMoney.Header          = "各项总计";
            AllMoney.HeaderAlignment = HorizontalAlignment.Center;
            AllMoney.Items.Add(addVipSum);
            lvMsg.Items.Add(addVipSum);
            AllMoney.Items.Add(vipChargeSum);
            lvMsg.Items.Add(vipChargeSum);
            AllMoney.Items.Add(vipBorrowSum);
            lvMsg.Items.Add(vipBorrowSum);
            AllMoney.Items.Add(vipNoBorrowSum);
            lvMsg.Items.Add(vipNoBorrowSum);
            AllMoney.Items.Add(vipp);
            lvMsg.Items.Add(vipp);
            AllMoney.Items.Add(vippNot);
            lvMsg.Items.Add(vippNot);

            lvMsg.Groups.Add(AllMoney);
            lvMsg.ShowGroups = true;
            #endregion


            lvMsg.EndUpdate();
            btnOk.Enabled        = true;
            progressBar1.Visible = false;
        }
示例#28
0
        public void Notify()
        {
            string errorMessage = "fail";

            Dictionary <string, string> sPara = GetParamPost();

            if (sPara.Count > 0)//判断是否有带返回参数
            {
                Com.Alipay.Notify aliNotify = new Com.Alipay.Notify();
                bool verifyResult           = aliNotify.VerifyNotify(sPara, Request.Form["sign"]);

                if (verifyResult)//验证成功
                {
                    //解密(如果是RSA签名需要解密,如果是MD5签名则下面一行清注释掉)
                    sPara = aliNotify.Decrypt(sPara);

                    //XML解析notify_data数据
                    try
                    {
                        XmlHelper xmlHelper = new XmlHelper(sPara["notify_data"]);
                        if (xmlHelper != null)
                        {
                            //商户订单号
                            string out_trade_no = xmlHelper.GetNodeString("/notify/out_trade_no");
                            //支付宝交易号
                            string trade_no = xmlHelper.GetNodeString("/notify/trade_no");
                            //交易状态
                            string trade_status = xmlHelper.GetNodeString("/notify/trade_status");

                            string buyer_email = xmlHelper.GetNodeString("/notify/buyer_email");

                            string seller_id = xmlHelper.GetNodeString("/notify/seller_id");

                            decimal total_fee = xmlHelper.GetNodeDecimal("/notify/total_fee");

                            if (string.Compare(Com.Alipay.Config.Partner, seller_id, true) == 0 && (string.Compare(trade_status, "TRADE_FINISHED", true) == 0 || string.Compare(trade_status, "TRADE_SUCCESS", true) == 0))
                            {
                                int          result = 0;
                                RechargeInfo model  = new RechargeInfo();
                                model.OrderId   = out_trade_no;
                                model.FOrderId  = trade_no;
                                model.Cash      = total_fee * 100;
                                model.PayMobile = "";
                                _rechargeService.Completed(model, out result);     //1:成功 0:失败
                                if (result == (int)ErrorMessage.成功)
                                {
                                    errorMessage = "success";
                                }
                            }
                            else
                            {
                                errorMessage = trade_status;
                            }
                        }
                    }
                    catch
                    {
                    }
                }
            }
            else
            {
                errorMessage = "无通知参数";
            }

            this.Response.Write(errorMessage);
        }