public static string InsertVendor(ContactedVendorViewModel[] item, string RequestType, decimal?RequestTypeCode) { SOURCING_CONTACTEDVENDOR _item = new SOURCING_CONTACTEDVENDOR(); SOURCING_REF_TEMP_LINK _refTempLink = new SOURCING_REF_TEMP_LINK(); string ReferenceNumber = ""; try { var TempId = HttpContext.Current.Session["TempId"].ToString(); decimal _tempId = Convert.ToDecimal(TempId); foreach (var vendor in item) { using (var context = new Entities()) { _item.TEMP_NO = _tempId; _item.VENDOR_ID = vendor.VENDOR_ID; _item.AUTO_EMAIL = vendor.AUTO_EMAIL; _item.VENDOR_NAME = vendor.VENDOR_NAME; _item.STATUS = "NEW REQUEST"; context.SOURCING_CONTACTEDVENDOR.Add(_item); context.SaveChanges(); } } //generate reference number and ensure its unique. do { string _ReferenceNumber = GenerateReferenceNumber(RequestType); ReferenceNumber = CheckReferenceNum(_ReferenceNumber); } while (ReferenceNumber == null); if (!string.IsNullOrWhiteSpace(ReferenceNumber)) { _refTempLink.REF_NO = ReferenceNumber; _refTempLink.REQ_TYPE = RequestTypeCode; _refTempLink.TEMP_NO = _tempId; using (var db = new Entities()) { db.SOURCING_REF_TEMP_LINK.Add(_refTempLink); db.SaveChanges(); } } return(TempId); } catch (Exception ex) { Logger.Log("Error inserting into Contacted Vendors Table table. Error: " + ex.Message + "------------------------------------------------" + ex.StackTrace, "error"); return(null); } }
public static string InsertVendorForUpdate(ContactedVendorViewModel[] item, string RequestType, decimal?RequestTypeCode) { SOURCING_CONTACTEDVENDOR _item = new SOURCING_CONTACTEDVENDOR(); SOURCING_REF_TEMP_LINK _refTempLink = new SOURCING_REF_TEMP_LINK(); var TempId = HttpContext.Current.Session["TempId"].ToString(); decimal _tempId = Convert.ToDecimal(TempId); var context = new Entities(); try { if (item != null) { foreach (var vendor in item) { if (vendor.ID == 0) { _item.TEMP_NO = _tempId; _item.VENDOR_ID = vendor.VENDOR_ID; _item.AUTO_EMAIL = vendor.AUTO_EMAIL; _item.VENDOR_NAME = vendor.VENDOR_NAME; _item.STATUS = "NEW REQUEST"; context.SOURCING_CONTACTEDVENDOR.Add(_item); context.SaveChanges(); } } } } catch (Exception ex) { Logger.Log("Error inserting into Contacted Vendors Table table. Error: " + ex.Message + "------------------------------------------------" + ex.StackTrace, "error"); } finally { context.Dispose(); } return(TempId); }