public JsonResult NewEntry(AttachmentData data) { if (!Utils.Utils.GetPermission("SHOW_SELL_ATTACHMENTS")) { return(Json(0)); } using (DataContext _db = new DataContext()) { using (DbContextTransaction tran = _db.Database.BeginTransaction(IsolationLevel.Snapshot)) { try { if (data.code != null && data.code != "") { Customer cust = _db.Customers.Where(c => c.Code == data.code).FirstOrDefault(); //if (user_id != 0) //{ // cust.UserId = user_id; // _db.Entry(cust).State = EntityState.Modified; //} if (cust != null) { if (!_db.CustomerSellAttachments.Any(a => a.CustomerID == cust.Id)) { List <CustomerSellAttachments> new_attachments = new List <CustomerSellAttachments>(); foreach (var item in data.attachmentVals) { if (item.count > 0) { new_attachments.Add(new CustomerSellAttachments { AttachmentID = item.id, Count = item.count, CustomerID = cust.Id }); } } if (new_attachments.Count > 0) { _db.CustomerSellAttachments.AddRange(new_attachments); _db.SaveChanges(); tran.Commit(); return(Json(1)); } } } } } catch (Exception ex) { tran.Rollback(); return(Json(0)); } } } return(Json(0)); }
public JsonResult NewEntryEdit(AttachmentData data, int diler_id) { if (!Utils.Utils.GetPermission("SHOW_SELL_ATTACHMENTS")) { return(Json(0)); } using (DataContext _db = new DataContext()) { using (DbContextTransaction tran = _db.Database.BeginTransaction(IsolationLevel.Snapshot)) { try { if (data.code != null && data.code != "") { Customer cust = _db.Customers.Where(c => c.Code == data.code).FirstOrDefault(); DateTime dateTo = new DateTime(); dateTo = dateTo = Utils.Utils.GetRequestDate(Request["dt_to"], false); var datefrom = _db.CustomerSellAttachments.Where(a => a.CustomerID == cust.Id && a.Diler_Id == diler_id).Select(s => s.Tdate).FirstOrDefault(); if (datefrom.ToString("dd-MM-yyy") == dateTo.ToString("dd-MM-yyy")) { return(Json(0)); } if (cust != null) { List <CustomerSellAttachments> new_attachments = new List <CustomerSellAttachments>(); foreach (var item in data.attachmentVals) { if (item.count > 0) { short verify_status = 0; var attachment = 0; if (_db.CustomerSellAttachments.Any(a => a.CustomerID == cust.Id && a.Diler_Id == diler_id)) { verify_status = _db.CustomerSellAttachments.Where(a => a.CustomerID == cust.Id && a.Diler_Id == diler_id).FirstOrDefault().VerifyStatus; verify_status = verify_status == 2 || verify_status == 1 ? (short)1 : (short)0; var attachments = _db.CustomerSellAttachments.Where(a => a.CustomerID == cust.Id && a.Diler_Id == diler_id).ToList(); attachments.ForEach(a => a.VerifyStatus = verify_status); attachments.ForEach(a => _db.Entry(a).State = EntityState.Modified); } new_attachments.Add(new CustomerSellAttachments { AttachmentID = item.id, Count = item.count, CustomerID = cust.Id, Diler_Id = diler_id, VerifyStatus = verify_status }); } } var promo = _db.Database.SqlQuery <int>(@"Select sp.package_id from book.Cards as c inner join book.Customers as cu on cu.id=c.customer_id inner join doc.Subscribes as s on s.card_id=c.id inner join doc.SubscriptionPackages as sp on sp.subscription_id=s.id where cu.code='" + data.code + "' and sp.package_id=304086").FirstOrDefault(); if (data.temporarily == 1) { new_attachments.ToList().ForEach(a => a.VerifyStatus = 6); new_attachments.ToList().ForEach(a => a.status = SellAttachmentStatus.temporary_use); } if (promo == 304086) { new_attachments.ToList().ForEach(a => a.VerifyStatus = 5); new_attachments.ToList().ForEach(a => a.status = SellAttachmentStatus.temporary_use); } if (new_attachments.Count > 0) { _db.CustomerSellAttachments.AddRange(new_attachments); _db.SaveChanges(); //if (data.temporarily == 1) //{ // CustomerSellAttachments customerSell = _db.CustomerSellAttachments.Where(c => c.CustomerID == _db.Customers.Where(cc => cc.Code == data.code).FirstOrDefault().Id).FirstOrDefault(); // customerSell.status = SellAttachmentStatus.temporary_use; // customerSell.VerifyStatus = 5; // _db.Entry(customerSell).State = EntityState.Modified; // _db.SaveChanges(); //} tran.Commit(); return(Json(1)); } //} } } } catch (Exception ex) { tran.Rollback(); return(Json(0)); } } } return(Json(0)); }
public JsonResult UpdateEntryEdit(AttachmentData data, string date) { if (!Utils.Utils.GetPermission("SHOW_SELL_ATTACHMENTS")) { return(Json(0)); } using (DataContext _db = new DataContext()) { using (DbContextTransaction tran = _db.Database.BeginTransaction(IsolationLevel.Snapshot)) { try { if (data.customer_id == 0) { Customer cust = _db.Customers.Where(c => c.Code == data.code).FirstOrDefault(); data.customer_id = cust.Id; } if (data.temporarily == 1) { Customer cust_temp = _db.Customers.Where(c => c.Code == data.code).FirstOrDefault(); cust_temp.temporary_use = 1; } if (data.code != null && data.code != "") { //Customer cust = _db.Customers.Where(c => c.Code == data.code).FirstOrDefault(); List <CustomerSellAttachments> cur_attachs_date = _db.CustomerSellAttachments.Where(a => a.CustomerID == data.customer_id && a.Diler_Id == data.diller_id).ToList(); List <CustomerSellAttachments> cur_attachs = new List <CustomerSellAttachments>(); foreach (var item in cur_attachs_date) { if (item.Tdate.ToString("dd-MM-yyy") == date && item.CustomerID == data.customer_id && item.Diler_Id == data.diller_id) { cur_attachs.Add(item); } } var customerSellAttachs = from custAttachs in cur_attachs group custAttachs by custAttachs.AttachmentID into cGroup select new { Key = cGroup.Key, customerAttachs = cGroup }; foreach (var item in data.attachmentVals) { if (cur_attachs.Any(a => a.AttachmentID == item.id)) { foreach (var group in customerSellAttachs) { if (group.customerAttachs.FirstOrDefault().AttachmentID == item.id && group.customerAttachs.Select(a => a.Count).Sum() == item.count) { continue; } if (group.customerAttachs.FirstOrDefault().AttachmentID == item.id) { short verify_status = cur_attachs.FirstOrDefault().VerifyStatus == 2 || cur_attachs.FirstOrDefault().VerifyStatus == (short)1 ? (short)1 : (short)0; if (item.count > 0) { _db.CustomerSellAttachments.Add(new CustomerSellAttachments() { Tdate = DateTime.Now, AttachmentID = group.customerAttachs.FirstOrDefault().AttachmentID, Count = item.count, CustomerID = group.customerAttachs.FirstOrDefault().CustomerID, Diler_Id = group.customerAttachs.FirstOrDefault().Diler_Id, VerifyStatus = verify_status, status = group.customerAttachs.FirstOrDefault().status }); cur_attachs.ToList().ForEach(a => a.VerifyStatus = verify_status); cur_attachs.ToList().ForEach(a => _db.Entry(a).State = EntityState.Modified); cur_attachs.Remove(group.customerAttachs.Select(s => s).FirstOrDefault()); _db.CustomerSellAttachments.RemoveRange(group.customerAttachs); _db.SaveChanges(); } else if (item.count == 0) { cur_attachs.ToList().ForEach(a => a.VerifyStatus = verify_status); cur_attachs.ToList().ForEach(a => _db.Entry(a).State = EntityState.Modified); cur_attachs.Remove(group.customerAttachs.Select(s => s).FirstOrDefault()); _db.CustomerSellAttachments.RemoveRange(group.customerAttachs); _db.SaveChanges(); } } } } else { if (item.count > 0) { var status = customerSellAttachs.Select(s => s.customerAttachs.Where(a => a.CustomerID == data.customer_id).Select(ss => ss.status).FirstOrDefault()).FirstOrDefault(); short verify_status = 0; //if (cur_attachs.Any(a => a.AttachmentID == item.id)) { verify_status = cur_attachs.FirstOrDefault().VerifyStatus == 2 || cur_attachs.FirstOrDefault().VerifyStatus == (short)1 ? (short)1 : (short)0; cur_attachs.ToList().ForEach(a => a.VerifyStatus = verify_status); cur_attachs.ToList().ForEach(a => _db.Entry(a).State = EntityState.Modified); } _db.CustomerSellAttachments.Add(new CustomerSellAttachments() { Tdate = DateTime.ParseExact(date, "dd-MM-yyyy", CultureInfo.InvariantCulture), AttachmentID = item.id, Count = item.count, CustomerID = data.customer_id, Diler_Id = data.diller_id, VerifyStatus = verify_status, status = status }); _db.SaveChanges(); } } } if (data.temporarily == 1) { CustomerSellAttachments customerSell = _db.CustomerSellAttachments.Where(c => c.CustomerID == data.customer_id).FirstOrDefault(); customerSell.status = SellAttachmentStatus.temporary_use; customerSell.VerifyStatus = 6; _db.Entry(customerSell).State = EntityState.Modified; _db.SaveChanges(); } _db.SaveChanges(); tran.Commit(); return(Json(1)); } } catch (Exception ex) { tran.Rollback(); return(Json(0)); } } } return(Json(0)); }
public JsonResult UpdateEntry(AttachmentData data) { if (!Utils.Utils.GetPermission("SHOW_SELL_ATTACHMENTS")) { return(Json(0)); } using (DataContext _db = new DataContext()) { using (DbContextTransaction tran = _db.Database.BeginTransaction(IsolationLevel.Snapshot)) { try { //if (data.customer_id == 0) //{ // Customer cust = _db.Customers.Where(c => c.Code == data.code).FirstOrDefault(); // data.customer_id = cust.Id; //} if (data.code != null && data.code != "") { //Customer cust = _db.Customers.Where(c => c.Code == data.code).FirstOrDefault(); List <CustomerSellAttachments> cur_attachs = _db.CustomerSellAttachments.Where(a => a.CustomerID == data.customer_id && a.Diler_Id == data.diller_id).ToList(); var customerSellAttachs = from custAttachs in cur_attachs group custAttachs by custAttachs.AttachmentID into cGroup select new { Key = cGroup.Key, customerAttachs = cGroup }; foreach (var item in data.attachmentVals) { if (cur_attachs.Any(a => a.AttachmentID == item.id)) { foreach (var group in customerSellAttachs) { if (group.customerAttachs.FirstOrDefault().AttachmentID == item.id && group.customerAttachs.Select(a => a.Count).Sum() == item.count) { continue; } if (group.customerAttachs.FirstOrDefault().AttachmentID == item.id) { short verify_status = cur_attachs.FirstOrDefault().VerifyStatus == 2 || cur_attachs.FirstOrDefault().VerifyStatus == (short)1 ? (short)1 : (short)0; if (item.count > 0) { _db.CustomerSellAttachments.Add(new CustomerSellAttachments() { Tdate = DateTime.Now, AttachmentID = group.customerAttachs.FirstOrDefault().AttachmentID, Count = item.count, CustomerID = group.customerAttachs.FirstOrDefault().CustomerID, Diler_Id = group.customerAttachs.FirstOrDefault().Diler_Id, VerifyStatus = verify_status }); cur_attachs.ToList().ForEach(a => a.VerifyStatus = verify_status); cur_attachs.ToList().ForEach(a => _db.Entry(a).State = EntityState.Modified); _db.CustomerSellAttachments.RemoveRange(group.customerAttachs); _db.SaveChanges(); } else if (item.count == 0) { cur_attachs.ToList().ForEach(a => a.VerifyStatus = verify_status); cur_attachs.ToList().ForEach(a => _db.Entry(a).State = EntityState.Modified); _db.CustomerSellAttachments.RemoveRange(group.customerAttachs); _db.SaveChanges(); } } } } else { if (item.count > 0) { short verify_status = 0; //if (cur_attachs.Any(a => a.AttachmentID == item.id)) { verify_status = cur_attachs.FirstOrDefault().VerifyStatus == 2 || cur_attachs.FirstOrDefault().VerifyStatus == (short)1 ? (short)1 : (short)0; cur_attachs.ToList().ForEach(a => a.VerifyStatus = verify_status); cur_attachs.ToList().ForEach(a => _db.Entry(a).State = EntityState.Modified); } _db.CustomerSellAttachments.Add(new CustomerSellAttachments() { Tdate = DateTime.Now, AttachmentID = item.id, Count = item.count, CustomerID = data.customer_id, Diler_Id = data.diller_id, VerifyStatus = verify_status }); _db.SaveChanges(); } } } _db.SaveChanges(); tran.Commit(); return(Json(1)); } } catch (Exception ex) { tran.Rollback(); return(Json(0)); } } } return(Json(0)); }