private IEnumerable <PartnerTranWithLevel> GetPartnerTransWithLevel(int level) { var partners = PayDAO.GetAllPartners(); var partnerTrans = PayDAO.GetAllAgencyTransactions(); var partnerTransByLevel = from a in partnerTrans from b in partners.Where(p => (p.GameAccountId == a.SenderID) || p.GameAccountId == a.RecvID) .DefaultIfEmpty() select new PartnerTranWithLevel() { ID = a.ID, CreatedTime = a.CreatedTime, Amount = a.Amount, Fee = a.Fee, Sender = a.Sender, SenderID = a.SenderID, Recv = a.Recv, RecvID = a.RecvID, Description = a.Description, Note = a.Note, CreateTimeInt = a.CreateTimeInt, State = a.State, Level = b.Level }; return(partnerTransByLevel.Where(x => x.Level == level)); }
public ActionResult PayLogData(int day = 0, int month = 0, int year = 0, int pay = 0, int type = 0, int page = 1, int total = 100) // thống kê nạp thẻ { if (page < 1) { return(new EmptyResult()); } day = day == 0 ? DateTime.Now.Day : day; month = month == 0 ? DateTime.Now.Month : month; year = year == 0 ? DateTime.Now.Year : year; var payLogs = PayDAO.GetAllPayLogs(); var filter = payLogs.Where(x => x.CreatedTime.Month == month && x.CreatedTime.Year == year && x.CreatedTime.Day == day); if (pay != 0) { filter = filter.Where(x => x.PayId == pay); } if (type != 0) { filter = filter.Where(x => x.CardType == type); } ViewBag.CurrentPage = page; ViewBag.TotalPage = Math.Ceiling(filter.Count() * 1.0 / total); // tổng số trang filter = filter.Skip((page - 1) * total).Take(total).OrderByDescending(x => x.CreatedTime); return(View(filter)); }
public int AddMoney(string accountName, long amount, int type, string reason) { try { if (type <= 0 || type > 4) { return(-99); } var user = UserDAO.GetInfo(accountName); if (user == null) { return(-1); } long reference = PayDAO.AddLog(user.AccountID, user.DisplayName, type, amount, reason, UserContext.UserInfo.AccountID, UserContext.UserInfo.FullName); PayDAO.AddGold(user.AccountID, amount, "Nạp tiền", reference, 1004, 1); return(1); } catch (Exception ex) { NLogManager.PublishException(ex); } return(-99); }
// GET: Admin/Pay public ActionResult Index() { GetViewBag_Session(); ViewBag.System = new SystemConfigDAO().GetDetail(1); var model = new PayDAO().ViewDetail(); return(View(model)); }
public ActionResult BalanceStatistics() // Thống kê số dư { var data = PayDAO.GetAllBalanceStatitics(); data = data.OrderByDescending(x => x.Date); ViewBag.TotalAllUserBalance = data.Sum(x => x.TotalUserBalance); ViewBag.TotalAllPartnerBalance = data.Sum(x => x.TotalPartnerBalance); return(View(data)); }
public ActionResult GoldTransferStatisticsData(int month = 0) { var aTrans = PayDAO.GetAllAgencyTransactions(); month = month == 0 ? DateTime.Now.Month : month; var soldByOwner = aTrans.Where(x => (x.SenderID == 860000 || x.SenderID == 860001) && (x.RecvID != 860000 && x.RecvID != 860001) && x.CreatedTime.Month == month).OrderByDescending(x => x.CreatedTime); var soldByPartner = aTrans.Where(x => (x.RecvID == 860000 || x.RecvID == 860001) && (x.SenderID != 860000 && x.SenderID != 860001) && x.CreatedTime.Month == month).OrderByDescending(x => x.CreatedTime); var ownerGroupByDate = soldByOwner.GroupBy(x => x.CreatedTime.Date); var parnerGroupByDate = soldByPartner.GroupBy(x => x.CreatedTime.Date); var ownerList = new List <AgencyTranByDate>(); var partnerList = new List <AgencyTranByDate>(); foreach (var date in ownerGroupByDate) { ownerList.Add(new AgencyTranByDate() { DateString = date.Key.ToString("dd/MM/yyyy"), TotalGold = date.Sum(x => x.Amount), TotalMoney = (long)(date.Sum(x => x.Amount) * 0.82), TotalTrans = date.Count() }); } foreach (var date in parnerGroupByDate) { partnerList.Add(new AgencyTranByDate() { DateString = date.Key.ToString("dd/MM/yyyy"), TotalGold = date.Sum(x => x.Amount), TotalMoney = (long)(date.Sum(x => x.Amount) * 0.82), TotalTrans = date.Count() }); } var totalOwnerGold = ViewBag.TotalOwnerGold = soldByOwner.Sum(x => x.Amount); ViewBag.TotalOwnerMoney = totalOwnerGold * 0.82; ViewBag.TotalOwnerTrans = soldByOwner.Count(); // by partner var totalPartnerGold = ViewBag.TotalPartnerGold = soldByPartner.Sum(x => x.Amount); ViewBag.TotalPartnerMoney = totalPartnerGold * 0.82; ViewBag.TotalPartnerTrans = soldByPartner.Count(); var allDate = ownerList.Select(x => x.DateString).Union((partnerList.Select(x => x.DateString))); //NLogManager.LogMessage($"ownerList:{JsonConvert.SerializeObject(ownerList)}\npartnerList:{JsonConvert.SerializeObject(partnerList)}\nAlLDate:{JsonConvert.SerializeObject(allDate)}"); ViewData["OwnerList"] = ownerList; ViewData["PartnerList"] = partnerList; ViewData["AllDate"] = allDate; return(PartialView()); }
// Update YagamiRaito public ActionResult CardInGameStatistics() // thống kê nạp thẻ { var cardConfigs = PayDAO.GetCards(); var numOfPays = cardConfigs.FirstOrDefault().PayOrderConfig.Split('|').Length; var types = cardConfigs.GroupBy(x => x.Type).Select(x => x.Key).ToList(); ViewBag.Types = types; ViewBag.NumOfPays = numOfPays; return(View()); }
public JsonResult SaveData(string data) { JavaScriptSerializer js = new JavaScriptSerializer(); Pay model = js.Deserialize <Pay>(data); var res = new PayDAO().Update(model); return(Json(new { status = res })); }
public dynamic GetErrorCardTransaction() { try { return(PayDAO.GetErrorCardTransaction()); } catch (Exception ex) { NLogManager.PublishException(ex); } return(null); }
public dynamic DeleteCardInBank(long cardId) { try { return(PayDAO.DeleteCardInBank(cardId)); } catch (Exception ex) { NLogManager.PublishException(ex); } return(false); }
public dynamic GetCardInBank() { try { return(PayDAO.GetCardInBank()); } catch (Exception ex) { NLogManager.PublishException(ex); } return(null); }
public bool DeleteCard(long cardId) { try { return(PayDAO.DeleteCard(cardId)); } catch (Exception ex) { NLogManager.PublishException(ex); } return(false); }
public dynamic GetUnverifyPayment() { try { return(PayDAO.GetUnverifyPayment()); } catch (Exception ex) { NLogManager.PublishException(ex); } return(null); }
public dynamic SearchCard(int searchType, string serial, string pin) { try { return(PayDAO.SearchCard(searchType, serial, pin)); } catch (Exception ex) { NLogManager.PublishException(ex); } return(null); }
public dynamic GetCurrentLog() { try { return(PayDAO.GetLog(UserContext.UserInfo.AccountID)); } catch (Exception ex) { NLogManager.PublishException(ex); } return(null); }
public dynamic GetLog(int start, int end, int page) { try { var skip = page * 30; return(PayDAO.GetLog(start, end, skip, 30)); } catch (Exception ex) { NLogManager.PublishException(ex); } return(null); }
public ActionResult PayLogByDate(int month = 0, int year = 0, int pay = 0, int type = 0) { //if (page < 1) //{ // return new EmptyResult(); //} month = month == 0 ? DateTime.Now.Month : month; year = year == 0 ? DateTime.Now.Year : year; var payLogs = PayDAO.GetAllPayLogs(); var filter = payLogs.Where(x => x.CreatedTime.Month == month && x.CreatedTime.Year == year); if (pay != 0) { filter = filter.Where(x => x.PayId == pay); } if (type != 0) { filter = filter.Where(x => x.CardType == type); } var dateGroups = filter.GroupBy(x => x.CreatedTime.Date).OrderByDescending(x => x.Key); var datePayLogs = new List <DatePayLog>(); foreach (var dateGroup in dateGroups) { datePayLogs.Add(new DatePayLog() { DateString = dateGroup.Key.ToString("dd/MM/yyyy"), TotalSuccessTran = dateGroup.Count(x => x.Status == 1), TotalFailTran = dateGroup.Count(x => x.Status < 0), TotalPendingTran = dateGroup.Count(x => x.Status == 0), TotalTopup = dateGroup.Where(x => x.Status == 1).Sum(x => x.Amount) }); } ViewBag.TotalTopup = filter.Where(x => x.Status == 1).Sum(x => x.Amount); ViewBag.TotalSuccessTran = filter.Count(x => x.Status == 1); ViewBag.TotalFailTran = filter.Count(x => x.Status < 0); ViewBag.TotalPendingTran = filter.Count(x => x.Status == 0); //ViewBag.CurrentPage = page; //ViewBag.TotalPage = Math.Ceiling(datePayLogs.Count() * 1.0 / total); // tổng số trang //datePayLogs = datePayLogs.Skip((page - 1) * total).Take(total).ToList(); return(PartialView(datePayLogs)); }
public dynamic GetCashoutBilling(int month, int year) { try { int start = int.Parse($"{year.ToString("D4")}{month.ToString("D2")}01"); DateTime _end = new DateTime(year, month, 1).AddMonths(1).AddDays(-1); int end = int.Parse($"{year.ToString("D4")}{month.ToString("D2")}{_end.Day.ToString("D2")}"); return(PayDAO.GetCashoutBilling(start, end)); } catch (Exception ex) { NLogManager.PublishException(ex); } return(null); }
public ActionResult Update(Pay entity) { if (ModelState.IsValid) { var res = new PayDAO().Update(entity); if (res) { return(RedirectToAction("Index", "Pay")); } else { ModelState.AddModelError("", "Không thể cập nhật cấu hình thanh toán"); } } return(RedirectToAction("Index", "Pay")); }
public JsonResult GetPay(int id) { bool status = false; var model = new PayDAO().GetDetail(id); if (model != null) { status = true; } return(Json(new { status = status, data = model }, JsonRequestBehavior.AllowGet)); }
public ActionResult AgencyTransactionLevel1Statistics(DateTime from, DateTime to, List <int> filterId = null) // Thống kê giao dịch đại lý cấp 1 { var partnerTransLevel = GetPartnerTransWithLevel(1); var partners = PayDAO.GetAllPartners(); var level1Partners = partners.Where(x => x.Level == 1); partnerTransLevel = partnerTransLevel.Where(x => x.CreatedTime >= from && x.CreatedTime <= to); // filter by date if (filterId != null) { partnerTransLevel.Where(x => filterId.Any(y => y == x.SenderID || y == x.RecvID)); // filter by ids partners.Where(x => filterId.Any(y => y == x.GameAccountId)); // filter by ids } var data = new List <PartnerTranWithLevel>(); return(View()); }
// GET: Pay public ActionResult Index() { User user = Session["User"] as User; var btndh = Session["btndh"]; if (user != null && btndh != null) { List <CartProductUser> listCPU = PayDAO.LoadDataPay(user.ID_ACCOUNT); ArrayList model = new ArrayList(); model.Add(listCPU); var totalMoney = PayDAO.TotalMoneyOder(user.ID_ACCOUNT); model.Add(totalMoney); return(View(model)); } else { return(RedirectToAction("Index", "Home")); } }
public dynamic Analytic(int month, int year) { try { int start = int.Parse($"{year.ToString("D4")}{month.ToString("D2")}01"); DateTime _end = new DateTime(year, month, 1).AddMonths(1).AddDays(-1); int end = int.Parse($"{year.ToString("D4")}{month.ToString("D2")}{_end.Day.ToString("D2")}"); var sum = PayDAO.Sumary(start, end); List <dynamic> objs = new List <dynamic>(); if (sum != null) { var groupByDay = ((IEnumerable)sum).Cast <dynamic>().GroupBy(x => x.CreatedTimeInt); foreach (var d in groupByDay) { var momo = d.FirstOrDefault(x => x.Type == 2)?.Total; var card = d.FirstOrDefault(x => x.Type == 1)?.Total; var agency = d.FirstOrDefault(x => x.Type == 3)?.Total; var err = d.FirstOrDefault(x => x.Type == 4)?.Total; objs.Add(new { Days = d.FirstOrDefault().CreatedTimeInt, Momo = momo == null ? 0 : momo, Card = card == null ? 0 : card, Agency = agency == null ? 0 : agency, ErrGame = err == null ? 0 : err, }); } return(objs); } } catch (Exception ex) { NLogManager.PublishException(ex); } return(null); }
public bool Update([FromBody] List <Models.Bussiness.ConfigCard.CardConfig> configs) { try { StringBuilder query = new StringBuilder(); foreach (var c in configs) { string payConfig = c.Pay1 + "|" + c.Pay2 + "|" + c.Pay3 + "|" + c.Pay4 + "|" + c.Pay5; query.AppendLine($"update dbo.CardConfig set Enable = '{c.Enable}', Promotion = {c.Promotion}, CashoutRate = {c.CashoutRate}, EnableCashout = '{c.EnableCashout}', TopupRate = {c.TopupRate}" + $", PromotionCashout = {c.PromotionCashout}, PayOrderConfig = N'{payConfig}' WHERE ID = {c.ID}"); } PayDAO.Update(query.ToString()); return(true); } catch (Exception ex) { NLogManager.PublishException(ex); } return(false); }
public ActionResult GoldTransferDetails(string date, bool isSelling, int month = 0) //xem chi tiết giao dịch đại lý và nph { var aTrans = PayDAO.GetAllAgencyTransactions(); var currentDate = DateTime.ParseExact(date, "dd/MM/yyyy", CultureInfo.InvariantCulture); month = month == 0 ? DateTime.Now.Month : month; aTrans = aTrans.Where(x => x.CreatedTime.Month == month); aTrans = aTrans.Where(x => x.CreatedTime.Date == currentDate); // xem trong ngày chỉ định var transferDetails = new List <AgencyTransaction>(); if (isSelling) { transferDetails = aTrans.Where(x => (x.RecvID == 860000 || x.RecvID == 860001) && (x.SenderID != 860000 && x.SenderID != 860001)).OrderByDescending(x => x.CreatedTime).ToList(); } else { transferDetails = aTrans.Where(x => (x.SenderID == 860000 || x.SenderID == 860001) && (x.RecvID != 860000 && x.RecvID != 860001)).OrderByDescending(x => x.CreatedTime).ToList(); } ViewBag.IsSelling = isSelling; // đại lý bán return(View(transferDetails)); }
public IEnumerable <Models.Bussiness.ConfigCard.CardConfig> GetCards() { return(PayDAO.GetCards()); }
public dynamic Charge(int cardType, int amount, int total) { try { if (cardType != 1 && cardType != 2 && cardType != 3) { return(null); } int successtransaction = 0; int errortransaction = 0; try { string serviceCode = string.Empty; if (cardType == 1) { serviceCode = "VTT"; } else if (cardType == 2) { serviceCode = "VMS"; } else if (cardType == 3) { serviceCode = "VNP"; } for (int i = 0; i < total; i++) { long transactionId = DateTime.Now.Ticks; int outRes = 0; string requestId = string.Empty; var service = new muathe24h.MechantServicesSoapClient(); string email = "*****@*****.**"; string pass = "******"; var res = service.BuyCards(new muathe24h.UserCredentials { userName = email, pass = pass } , transactionId.ToString(), serviceCode, amount, 1); NLogManager.LogMessage(JsonConvert.SerializeObject(res)); string resultCode = res?.RepCode.ToString(); if (res != null && res.RepCode == 0) { var seri = JsonConvert.DeserializeObject <List <CardObject> >(res.Data.ToString()); if (PayDAO.InsertCard(seri[0].PinCode, seri[0].Serial, amount, string.Empty, cardType, serviceCode, "muathe24h", DateTime.Now, transactionId.ToString(), resultCode, true)) { successtransaction++; } else { PayDAO.InsertCard(string.Empty, string.Empty, amount, string.Empty, cardType, serviceCode, "muathe24h", DateTime.Now, requestId, resultCode, false); errortransaction++; } } else { PayDAO.InsertCard(string.Empty, string.Empty, amount, string.Empty, cardType, serviceCode, "muathe24h", DateTime.Now, requestId, resultCode, false); errortransaction++; } } return(new { suc = successtransaction, err = errortransaction }); } catch (Exception ex) { NLogManager.PublishException(ex); } } catch (Exception ex) { NLogManager.PublishException(ex); } return(null); }
public ActionResult LoadDataIntoCart(FormPay formPay) { User user = Session["User"] as User; string status; if (user != null) { var ten = formPay.HO_TEN; var diaChi = formPay.DIA_CHI; var sdt = formPay.SDT; if (ten == null || diaChi == null || sdt == null || ten == "" || diaChi == "" || sdt == "") { status = "fail"; var mess = "Vui Lòng Nhập Đây Đủ Thông Tin"; return(new JsonResult { Data = new { status = status, mess } }); } else if (Tools.IsNumberPhone(sdt) == false) { status = "fail"; var mess = "Vui Lòng Nhập Đúng Số Điện Thoại"; return(new JsonResult { Data = new { status = status, mess } }); } else { List <CartProductUser> listCPU = PayDAO.LoadDataPay(user.ID_ACCOUNT); listCPU[0].HO_TEN = ten; listCPU[0].DIA_CHI = diaChi; listCPU[0].SDT = sdt; if (PayDAO.CreateNewOder(listCPU) == true) { HttpContext.Session.Remove("btndh"); if (PayDAO.deteleProductInCart(user.ID_ACCOUNT) == true) { status = "success"; return(new JsonResult { Data = new { status = status } }); } else { status = "fail"; var mess = "Lỗi Ngoại Lệ"; return(new JsonResult { Data = new { status = status, mess } }); } } else { status = "fail"; var mess = "Lỗi Ngoại Lệ"; return(new JsonResult { Data = new { status = status, mess } }); } } } else { status = "home"; return(new JsonResult { Data = new { status = status, url = Url.Action("Index", "Home") } }); } }