public IActionResult delete(long CashInId) { using (var transaction = db.Database.BeginTransaction()) { try { var userId = this.help.GetCurrentUser(HttpContext); if (userId <= 0) { transaction.Rollback(); return(StatusCode(401, "الرجاء الـتأكد من أنك قمت بتسجيل الدخول")); } var CashInData = (from p in db.CashIn where p.CashInId == CashInId && (p.Status == 1) select p).SingleOrDefault(); if (CashInData == null) { transaction.Rollback(); return(NotFound("!خــطأ : العملية النقدية غير موجوده او مرفوضه مسبقا")); } CashInData.Status = 0; db.SaveChanges(); BanksysBankActions BA = new BanksysBankActions(); BA.ActionType = 6; BA.Description = "رفض عملية نقدية"; BA.UserId = userId; BA.CashInId = CashInData.CashInId; BA.BranchId = this.help.GetCurrentBranche(HttpContext); BA.UserType = this.help.GetCurrentUserType(HttpContext); BA.ActionDate = DateTime.Now; db.BanksysBankActions.Add(BA); db.SaveChanges(); transaction.Commit(); return(Ok("تم رفض العملية النقدية")); } catch (Exception e) { transaction.Rollback(); return(StatusCode(500, e.Message)); } } }
public IActionResult Confirm(long CashInId) { using (var trans = db.Database.BeginTransaction()) { var userId = this.help.GetCurrentUser(HttpContext); if (userId <= 0) { trans.Rollback(); return(StatusCode(401, "الرجاء الـتأكد من أنك قمت بتسجيل الدخول")); } try { var UserInfov1 = from x in db.BanksysBankActions where x.CashInId == (int)CashInId select x; if (UserInfov1.Count() <= 0) { trans.Rollback(); return(StatusCode(401, "لاتوجد بيانات للعملية النقدية")); } if (UserInfov1.Where(x => x.CashIn.Status == 2).Count() > 0) { trans.Rollback(); return(StatusCode(401, "خطأ لقد قمت بتعبئة مرتين لهذاالرقم")); } var UserInfo = (from t in UserInfov1 orderby t.ActionDate descending select new { t.User.FullName, t.CashIn.Valuedigits, t.CashIn.NumInvoiceDep, t.CashInId, t.CashIn.Description, t.Branch, t.Branch.Bank, t.CashIn.Status, t.ActionDate, FName = t.CashIn.Personal.Name, t.CashIn.Personal.FatherName, t.CashIn.Personal.SurName, t.CashIn.Personal.GrandName, t.CashIn.Personal.Nid, t.CashIn.Personal.Phone, PerId = t.CashIn.PersonalId, t.CashIn }).SingleOrDefault(); int personId = (int)UserInfo.CashIn.PersonalId; if (personId < 0) { return(StatusCode(403, "خطأ لايمكن الايداع الرجاء الاتصال بالمشغل")); } var PersonalInfo = (from p in db.PersonalInfo where p.Id == personId select p).SingleOrDefault(); if (PersonalInfo == null) { return(StatusCode(403, "خطأ هذا المستخدم غير موجود")); } string MSISDN = PersonalInfo.Phone.Substring(PersonalInfo.Phone.Length - 9); if (MSISDN == null || MSISDN.Length < 9) { return(StatusCode(405, "الرجاء تعبئة رقم الهاتف")); } string UserNameUpdateBy = UserInfo.FullName; if (UserNameUpdateBy == null) { return(StatusCode(406, "الرجاء تسجيل الدخول اولا")); } var nid = PersonalInfo.Nid; if (nid == null || nid.Length < 12) { return(StatusCode(405, "الرجاء تعبئة الرقم الوطني")); } // Created by String ShopeId = ""; var LRM = "/"; var RM = ((char)0x200E).ToString(); ShopeId = String.Format("{0}" + LRM + "" + RM + "{1}" + LRM + "{2}" + LRM + "" + RM + "{3}" + LRM + "" + RM + "{4}" + LRM + "" + RM + "{5}" + LRM + "" + RM + "{6}", UserInfo.CashIn.DepositType.ToString(), ((UserInfo.CashIn.CheckNum.ToString() == "") ? "Empty" : UserInfo.CashIn.CheckNum.ToString()), ((UserInfo.CashIn.NumInvoiceDep.ToString() == "") ? "Empty" : UserInfo.CashIn.NumInvoiceDep.ToString()), ((UserInfo.CashIn.CardNumber.ToString() == "") ? "Empty" : UserInfo.CashIn.CardNumber.ToString()), UserInfo.Branch.BankId, ((UserInfo.CashIn.Item == "") ? "Empty" : UserInfo.CashIn.Item), ((UserInfo.CashIn.BanckAccountNumber == "") ? "Empty" : UserInfo.CashIn.BanckAccountNumber)); var result = CashInWalletAsync("00218" + MSISDN, (double)UserInfo.CashIn.Valuedigits, ShopeId, UserInfo.FullName); if (result.responseString != "Success") { var CashInUpdatev1 = (from p in db.CashIn where p.CashInId == CashInId && (p.Status == 1) select p).SingleOrDefault(); if (CashInUpdatev1 == null) { trans.Rollback(); return(BadRequest("خطأ بيانات التعبئة غير موجودة")); } CashInUpdatev1.Status = 0; CashInUpdatev1.LastModifiedOn = DateTime.Now; CashInUpdatev1.LastModifiedBy = (int)userId; db.SaveChanges(); BanksysBankActions BAv1 = new BanksysBankActions(); BAv1.ActionType = 4; BAv1.Description = "رفض عملية نقدية - تم الرفض من النظام السبب : " + result.responseString; BAv1.UserId = userId; BAv1.CashInId = CashInId; BAv1.BranchId = this.help.GetCurrentBranche(HttpContext); BAv1.UserType = this.help.GetCurrentUserType(HttpContext); BAv1.ActionDate = DateTime.Now; db.BanksysBankActions.Add(BAv1); db.SaveChanges(); trans.Commit(); return(StatusCode(405, result.responseString)); } var CashInUpdate = (from p in db.CashIn where p.CashInId == CashInId && (p.Status == 1) select p).SingleOrDefault(); if (CashInUpdate == null) { trans.Rollback(); return(BadRequest("خطأ بيانات التعبئة غير موجودة")); } CashInUpdate.Status = 2; CashInUpdate.LastModifiedOn = DateTime.Now; CashInUpdate.LastModifiedBy = (int)userId; CashInUpdate.RefrenceNumber = result.refernceWallet; db.SaveChanges(); BanksysBankActions BA = new BanksysBankActions(); BA.ActionType = 4; BA.Description = "إنشاء عملية نقدية - تأكيد نهائي"; BA.UserId = userId; BA.CashInId = CashInId; BA.BranchId = this.help.GetCurrentBranche(HttpContext); BA.UserType = this.help.GetCurrentUserType(HttpContext); BA.ActionDate = DateTime.Now; db.BanksysBankActions.Add(BA); db.SaveChanges(); trans.Commit(); return(Ok("تم تعديل بينات المشترك بنجاح")); } catch (Exception e) { var CashInUpdatev1 = (from p in db.CashIn where p.CashInId == CashInId && (p.Status == 1) select p).SingleOrDefault(); if (CashInUpdatev1 == null) { trans.Rollback(); return(BadRequest("خطأ بيانات التعبئة غير موجودة")); } CashInUpdatev1.Status = 0; CashInUpdatev1.LastModifiedOn = DateTime.Now; CashInUpdatev1.LastModifiedBy = (int)userId; db.SaveChanges(); BanksysBankActions BAv1 = new BanksysBankActions(); BAv1.ActionType = 4; BAv1.Description = "رفض عملية نقدية - تم الرفض من النظام السبب : " + e.InnerException; BAv1.UserId = userId; BAv1.CashInId = CashInId; BAv1.BranchId = this.help.GetCurrentBranche(HttpContext); BAv1.UserType = this.help.GetCurrentUserType(HttpContext); BAv1.ActionDate = DateTime.Now; db.BanksysBankActions.Add(BAv1); db.SaveChanges(); trans.Commit(); trans.Rollback(); return(StatusCode(500, e.Message)); } } }
public IActionResult AddCashIn([FromBody] CashInObj CashInData) { using (var transaction = db.Database.BeginTransaction()) { try { if (CashInData == null) { transaction.Rollback(); return(BadRequest("حذث خطأ في ارسال البيانات الرجاء إعادة الادخال")); } var userId = this.help.GetCurrentUser(HttpContext); if (userId <= 0) { transaction.Rollback(); return(StatusCode(401, "الرجاء الـتأكد من أنك قمت بتسجيل الدخول")); } var UserType = this.help.GetCurrentUserType(HttpContext); if (UserType == 1) { transaction.Rollback(); return(StatusCode(401, "عفوا لايمكن اضافة قيمة نقدية الا عن طريق المصرف")); } CashIn Cash = new CashIn(); Cash.Status = 1; Cash.Refrence = 3; Cash.Valuedigits = CashInData.Valuedigits; Cash.DepositType = 3; Cash.Description = CashInData.description; Cash.NumInvoiceDep = CashInData.NumInvoiceDep; Cash.PersonalId = CashInData.PersonalId; //Cash.BankId =(int) db.BanksysBranch.Where(x => x.BranchId == this.help.GetCurrentBranche(HttpContext)).SingleOrDefault().BankId; db.CashIn.Add(Cash); db.SaveChanges(); BanksysBankActions BA = new BanksysBankActions(); BA.ActionType = 3; BA.Description = "إنشاء عملية نقدية - تأكيد مبدئي"; BA.UserId = userId; BA.CashInId = Cash.CashInId; BA.BranchId = this.help.GetCurrentBranche(HttpContext); BA.UserType = UserType; BA.ActionDate = DateTime.Now; db.BanksysBankActions.Add(BA); db.SaveChanges(); transaction.Commit(); return(Ok("لقد قمت بتسـجيل بيانات العملية النقدية")); } catch (Exception e) { transaction.Rollback(); return(StatusCode(500, e.Message)); } } }