Ejemplo n.º 1
0
        public int Payment(Cms_HistoryPayment model)
        {
            var deciResult = SqlHelper.ExecuteScalar(SqlConnection, CommonHelper.Config.GetFullyQualifiedName("Cms_HistoryPayment_Insert")
                                                     , CommonHelper.Null.GetNull(model.IdGuid), model.Code, CommonHelper.Null.GetNull(model.FromUser), CommonHelper.Null.GetNull(model.ToUser)
                                                     , CommonHelper.Null.GetNull(model.BCoin), CommonHelper.Null.GetNull(model.Summary),
                                                     model.CreatedDate, CommonHelper.Null.GetNull(model.IsShow), CommonHelper.Null.GetNull(model.IsActive));

            return(1);
        }
Ejemplo n.º 2
0
        public ActionResult Payment(int userId, int type, int money)
        {
            string sWhere    = "1=1";
            var    modelUser = new SysUserAction().GetById(userId);

            if (AuthorizeUser.IsHost())
            {
                if (type == 1)
                {
                    new SysAdminAction <SysUser>().Updates("BCoin=BCoin+" + money, "UserId=" + userId);
                    #region +Thêm vào lịch sử giao dịch
                    new SysAdminAction <Cms_HistoryPayment>().Payment(new Cms_HistoryPayment
                    {
                        IdGuid      = Guid.NewGuid().ToString(),
                        FromUser    = Ultity.Constant.userIdAdmin,
                        Code        = string.Empty,
                        ToUser      = userId,
                        BCoin       = money,
                        Summary     = Ultity.Constant.NapTien,
                        CreatedDate = DateTime.Now,
                        IsShow      = true,
                        IsActive    = true,
                    });
                    #endregion
                }
                else
                {
                    if (modelUser.BCoin < money)
                    {
                        return(Json(new { status = "money", Message = Ultity.Constant.Ajax_Fail }));
                    }
                    new SysAdminAction <SysUser>().Updates("BCoin=BCoin-" + money, "UserId=" + userId);
                    #region +Thêm vào lịch sử giao dịch
                    new SysAdminAction <Cms_HistoryPayment>().Payment(new Cms_HistoryPayment
                    {
                        IdGuid      = Guid.NewGuid().ToString(),
                        FromUser    = Ultity.Constant.userIdAdmin,
                        Code        = string.Empty,
                        ToUser      = userId,
                        BCoin       = money,
                        Summary     = Ultity.Constant.AdminRutTien,
                        CreatedDate = DateTime.Now,
                        IsShow      = true,
                        IsActive    = true,
                    });
                    #endregion
                }
                #region Gửi mail thông báo giao dịch thành công
                var model = new SysUserAction().GetById(userId);
                if (type == 1)
                {
                    Models.THelper.SendMail(model.Email, model.FullName, String.Format("{0:0,0}", money), "Nạp tiền");
                }
                else
                {
                    Models.THelper.SendMail(model.Email, model.FullName, String.Format("{0:0,0}", money), "Rút tiền");
                }
                #endregion
            }
            else
            {
                if (WebSecurity.CurrentUserId > 0 && type == -1)
                {
                    if (modelUser.BCoin < money)
                    {
                        return(Json(new { status = "money", Message = Ultity.Constant.Ajax_Fail }));
                    }
                    #region +Thêm vào lịch sử giao dịch
                    var modelHis = new Cms_HistoryPayment
                    {
                        IdGuid      = Guid.NewGuid().ToString(),
                        FromUser    = WebSecurity.CurrentUserId,
                        Code        = string.Empty,
                        ToUser      = WebSecurity.CurrentUserId,
                        BCoin       = money,
                        Summary     = Ultity.Constant.DeXuatRutTien,
                        CreatedDate = DateTime.Now,
                        IsShow      = false,
                        IsActive    = false,
                    };
                    new SysAdminAction <Cms_HistoryPayment>().Payment(modelHis);
                    #endregion

                    #region Gửi thông báo cho Giáo viên và Admin
                    var lstUserInClass = new List <Cms_HistoryPayment>();

                    lstUserInClass.Add(modelHis);
                    lstUserInClass.ForEach(x =>
                    {
                        x.CreatedDateStr = Convert.ToDateTime(x.CreatedDate).ToString("dd/MM/yyy HH:mm");
                        x.FromUserStr    = modelUser.FullName;
                    });
                    IHubContext     contextall = GlobalHost.ConnectionManager.GetHubContext <NotificationHub>();
                    NotificationHub hub        = new NotificationHub();
                    //Gửi cho Admin
                    var           userAd    = new SysAdminAction <SysUser>().GetById((Convert.ToInt32(Ultity.Constant.userIdAdmin)));
                    UserHubModels userAdmin = hub.GetUser(userAd.UserName);
                    if (userAdmin != null)
                    {
                        List <string> connectIds = userAdmin.ConnectionIds.ToList <string>();
                        connectIds.ForEach(x =>
                        {
                            contextall.Clients.Client(x).recieveNotificationFirstTime(lstUserInClass);
                        });
                    }
                    #endregion
                }
            }

            return(Json(new { status = "success", Message = Ultity.Constant.Ajax_Success }));
        }