public static void Create(LogsMoneyInfo info) { DataProvider.Instance().MoneyLogs_Insert(info.TienHVNop, info.TienBanGoi, info.NoteChuyenKhoan, info.NguoiTao, info.NgayThucThu, info.KieuThanhToan, info.DiaPhuong, info.CreateDate, info.ContactId, info.Code, info.ChuDuToan, info.TrangThai, info.HistoryId); }
public ActionResult FixedMoneyManagerConsulant(FormCollection forms) { var valueRow = Request["countRowTable"].ToInt32(); List <ContactFixedMoney> lstInfoCts = new List <ContactFixedMoney>(); AllDealMoney listDealSesssion = new AllDealMoney(); listDealSesssion.pricing = new List <ContactInfoMoney>(); listDealSesssion.deposit = new List <ContactInfoMoney>(); listDealSesssion.transfer = new List <ContactInfoMoneyTranfer>(); listDealSesssion.balance = new List <ContactInfoMoneyBalance>(); string notes = Request["NotesManagerConsulant"].ToString(); var userTVTS = UserContext.GetCurrentUser(); for (int i = 1; i <= valueRow; i++) { ContactInfoMoney infoCts = new ContactInfoMoney(); infoCts.ContactId = Request["CodeCts_" + i.ToString()].ToString(); infoCts.UserName = Request["NameCts_" + i.ToString()].ToString(); infoCts.UserPhone = forms.Get("MobileCts_" + i.ToString()).ToString(); infoCts.UserEmail = Request["EmailCts_" + i.ToString()].ToString(); infoCts.TransactionBy = "CRM"; infoCts.Reason = Request["NotesManagerConsulant"].ToString(); infoCts.OtherInfo = ""; infoCts.Time = DateTime.Now.ToString(); infoCts.DisableWarning = true; if (forms.Get("FeeEdu_" + i.ToString()).ToInt32() > forms.Get("FeeEduChange_" + i.ToString()).ToInt32()) { int feeEdu = forms.Get("FeeEdu_" + i.ToString()).ToInt32(); int feeEduChange = forms.Get("FeeEduChange_" + i.ToString()).ToInt32(); int feeReturn = forms.Get("FeeReturn_" + i.ToString()).ToInt32(); infoCts.Value = (forms.Get("FeeEdu_" + i.ToString()).ToInt32() - forms.Get("FeeEduChange_" + i.ToString()).ToInt32() - forms.Get("FeeReturn_" + i.ToString()).ToInt32()).ToString(); if (infoCts.Value != "0") { listDealSesssion.pricing.Add(infoCts); } } else if (forms.Get("FeeEdu_" + i.ToString()).ToInt32() < forms.Get("FeeEduChange_" + i.ToString()).ToInt32()) { infoCts.Value = (forms.Get("FeeEduChange_" + i.ToString()).ToInt32() - forms.Get("FeeEdu_" + i.ToString()).ToInt32() - forms.Get("FeeReturn_" + i.ToString()).ToInt32()).ToString(); listDealSesssion.deposit.Add(infoCts); } else { //nothing } if (forms.Get("FeeReturn_" + i.ToString()).ToInt32() > 0) { //tranfer ContactInfoMoneyTranfer infoCtsTranfer = new ContactInfoMoneyTranfer(); infoCtsTranfer.ContactId = Request["CodeCts_" + i.ToString()].ToString(); infoCtsTranfer.Value = Request["NameCts_" + i.ToString()].ToString(); infoCtsTranfer.UserPhone = forms.Get("MobileCts_" + i.ToString()).ToString(); infoCtsTranfer.UserEmail = Request["EmailCts_" + i.ToString()].ToString(); infoCtsTranfer.TransactionBy = "CRM"; infoCtsTranfer.Reason = Request["NotesManagerConsulant"].ToString(); infoCtsTranfer.OtherInfo = ""; infoCtsTranfer.Time = DateTime.Now.ToString(); infoCtsTranfer.DisableWarning = true; infoCtsTranfer.Value = forms.Get("FeeReturn_" + i.ToString()).ToString(); listDealSesssion.transfer.Add(infoCtsTranfer); //balance ContactInfoMoneyBalance infoCtsBalance = new ContactInfoMoneyBalance(); infoCtsBalance.ContactId = Request["CodeCts_" + i.ToString()].ToString(); infoCtsBalance.Value = Request["NameCts_" + i.ToString()].ToString(); infoCtsBalance.UserPhone = forms.Get("MobileCts_" + i.ToString()).ToString(); infoCtsBalance.UserEmail = Request["EmailCts_" + i.ToString()].ToString(); infoCtsBalance.Type = "-1"; infoCtsBalance.BillNumber = "0"; infoCtsBalance.TransactionBy = "CRM"; infoCtsBalance.Reason = Request["NotesManagerConsulant"].ToString(); infoCtsBalance.OtherInfo = ""; infoCtsBalance.Time = DateTime.Now.ToString(); infoCtsBalance.DisableWarning = true; infoCtsBalance.Value = forms.Get("FeeReturn_" + i.ToString()).ToString(); listDealSesssion.balance.Add(infoCtsBalance); } } JsonResult retVal = new JsonResult() { Data = listDealSesssion, JsonRequestBehavior = JsonRequestBehavior.AllowGet }; string sRetVal = JsonConvert.SerializeObject(retVal.Data); //===============Goi API LocMX =============// string username = "******"; string password = "******"; string linkApiPayment = ConfigurationManager.AppSettings["LinkAPIPayment"].ToString(); var client = new RestClient(linkApiPayment); client.Authenticator = new HttpBasicAuthenticator(username, password); var request = new RestRequest("Tcoin/CrmTransactionBatch", Method.POST); request.AddHeader("Accept", "application/json"); request.AddParameter("key", "6WxDCFTjlgjH6L6YLA03LNW1JbJbCZGCLHa0DIXT"); request.AddParameter("data", sRetVal); request.JsonSerializer.ContentType = "application/json; charset=utf-8"; IRestResponse response = client.Execute(request); string s = response.Content; ReturnApiCallFixedMoney output = JsonConvert.DeserializeObject <ReturnApiCallFixedMoney>(s); //Neu goi thanh cong tao log save lai giao dich trong bang LogFixedMoney if (output.status_code == "DONE_ALL") { SqlTransaction tran = null; try { string conString = getNewConnection; SqlConnection conn = new SqlConnection(conString); conn.Open(); tran = conn.BeginTransaction(); //Update FeeEdu, PackageSale for (int i = 1; i <= valueRow; i++) { var sCode = Request["CodeCts_" + i.ToString()].ToString(); var sFeeEdu = Request["FeeEduChange_" + i.ToString()].ToInt32(); ContactLevelInfoRepository.Update_FeeEdu_PackagePriceSale(sCode, sFeeEdu); } var log = new LogFixedMoney { Description = sRetVal, Notes = notes, UserConsulantCreate = userTVTS.UserName, CreateDate = DateTime.Now }; LogFixMoneyRepository.Create(log, tran); int idMax = GetIdentity("LogFixMoney", conn, tran); //lay ID max trong bang LogFixMoney foreach (var a in listDealSesssion.pricing) { var logmoney_pricing = new LogsMoneyInfo { TienHVNop = a.Value.ToInt32(), TienBanGoi = 0, //hoi lai NoteChuyenKhoan = a.Reason, NguoiTao = a.UserName, NgayThucThu = DateTime.Now, KieuThanhToan = 0, DiaPhuong = 1, CreateDate = DateTime.Now, ContactId = 0, Code = a.ContactId, ChuDuToan = 0, TrangThai = true, HistoryId = 0, IdFixMoney = idMax }; MoneyLogsRepository.Create(logmoney_pricing, tran); } foreach (var a in listDealSesssion.deposit) { var logmoney_deposit = new LogsMoneyInfo { TienHVNop = a.Value.ToInt32(), TienBanGoi = 0, //hoi lai NoteChuyenKhoan = a.Reason, NguoiTao = a.UserName, NgayThucThu = DateTime.Now, KieuThanhToan = 0, DiaPhuong = 1, CreateDate = DateTime.Now, ContactId = 0, Code = a.ContactId, ChuDuToan = 0, TrangThai = true, HistoryId = 0, IdFixMoney = idMax }; MoneyLogsRepository.Create(logmoney_deposit, tran); } foreach (var a in listDealSesssion.transfer) { var logmoney_transfer = new LogsMoneyInfo { TienHVNop = a.Value.ToInt32(), TienBanGoi = 0, //hoi lai NoteChuyenKhoan = a.Reason, NguoiTao = "", NgayThucThu = DateTime.Now, KieuThanhToan = 0, DiaPhuong = 1, CreateDate = DateTime.Now, ContactId = 0, Code = a.ContactId, ChuDuToan = 0, TrangThai = true, HistoryId = 0, IdFixMoney = idMax }; MoneyLogsRepository.Create(logmoney_transfer, tran); } tran.Commit(); ViewBag.Message = "Giao dịch chuyển tiền thành công"; return(FixedMoneyManagerConsulant()); } catch (Exception ex) { Console.WriteLine(ex.Message + " " + ex.Data); if (tran != null) { tran.Rollback(); } ViewBag.Message = "Có lỗi xảy ra, vui lòng thực hiện lại"; return(FixedMoneyManagerConsulant()); } } else { //return lỗi ko thành công. ViewBag.Message = "Giao dịch chuyển tiền không thành công: " + output.msg; return(FixedMoneyManagerConsulant()); } }