public RSmartTicketService() { _scaleLib = new ScaleLibrary(ConfigurationHelper.GetsmARTDBContextConnectionString()); _scaleDetailLib = new ScaleDetailsLibrary(ConfigurationHelper.GetsmARTDBContextConnectionString()); _scaleAttachmentLib = new ScaleAttachmentsLibrary(ConfigurationHelper.GetsmARTDBContextConnectionString()); _leadLogLib = new LeadLogLibrary(ConfigurationHelper.GetsmARTDBContextConnectionString()); }
public JsonResult _SavePartyLicenceID(string scaleId, string licenseImageRefId) { try { bool result = false; if (!string.IsNullOrEmpty(licenseImageRefId)) { ScaleAttachmentsLibrary scaleAttOps = new ScaleAttachmentsLibrary(ConfigurationHelper.GetsmARTDBContextConnectionString()); ScaleAttachments scaleAttachment = scaleAttOps.GetScaleAttachmentByRefId(new Guid(licenseImageRefId)); if (scaleAttachment != null) { FilelHelper fileHelper = new FilelHelper(); string imagePath = fileHelper.GetFilePathByFileRefId(licenseImageRefId); byte[] imageBytes = fileHelper.GetBytesFromFile(imagePath); SaveScaleIDCardAttachment(Convert.ToInt32(scaleId), imageBytes); result = true; } } var data = new { Success = result }; return(Json(data, JsonRequestBehavior.AllowGet)); } catch (Exception ex) { string message = ex.Message; Common.MessageLogger.Instance.LogMessage(ex, ex.Message, Common.Priority.High, 0, System.Diagnostics.TraceEventType.Critical, "Scanner Error", "Scanner"); throw ex; } }
protected override void DeleteChildEntities(string[] childEntityList, string parentID) { foreach (string ChildEntity in childEntityList) { switch (ChildEntity) { #region /* Case Statements - All child grids */ case "ScaleDetails": if (Convert.ToInt32(parentID) > 0) { ScaleDetailsLibrary ScaleDetailsLibrary = new ScaleDetailsLibrary(ConfigurationHelper.GetsmARTDBContextConnectionString()); IEnumerable <ScaleDetails> resultList = ScaleDetailsLibrary.GetAllByParentID(Convert.ToInt32(parentID)); foreach (ScaleDetails scaleDetails in resultList) { ScaleDetailsLibrary.Delete(scaleDetails.ID.ToString()); } } break; case "ScaleNotes": if (Convert.ToInt32(parentID) > 0) { ScaleNotesLibrary ScaleNotesLibrary = new ScaleNotesLibrary(ConfigurationHelper.GetsmARTDBContextConnectionString()); IEnumerable <ScaleNotes> resultList = ScaleNotesLibrary.GetAllByParentID(Convert.ToInt32(parentID)); foreach (ScaleNotes ScaleNote in resultList) { ScaleNotesLibrary.Delete(ScaleNote.ID.ToString()); } } break; case "ScaleAttachments": if (Convert.ToInt32(parentID) > 0) { ScaleAttachmentsLibrary ScaleLibrary = new ScaleAttachmentsLibrary(ConfigurationHelper.GetsmARTDBContextConnectionString()); IEnumerable <ScaleAttachments> resultList = ScaleLibrary.GetAllByParentID(Convert.ToInt32(parentID)); foreach (ScaleAttachments scaleAttachment in resultList) { ScaleLibrary.Delete(scaleAttachment.ID.ToString()); } } break; //case "ScaleIDCardAttachments": // if (Convert.ToInt32(parentID) > 0) { // ScaleIDCardAttachmentsLibrary ScaleLibrary = new ScaleIDCardAttachmentsLibrary(ConfigurationHelper.GetsmARTDBContextConnectionString()); // IEnumerable<ScaleIDCardAttachments> resultList = ScaleLibrary.GetAllByParentID(Convert.ToInt32(parentID)); // foreach (ScaleIDCardAttachments scaleAttachment in resultList) { // ScaleLibrary.Delete(scaleAttachment.ID.ToString()); // } // } //break; #endregion } } }
public Guid SaveScaleIDCardAttachment(int Id, byte[] data) { Guid guid = SaveFile(data); ScaleAttachments attachments = new ScaleAttachments(); attachments.Document_Name = "LicenceID-Image.jpeg"; attachments.Document_RefId = guid; attachments.Document_Size = data.LongLength; attachments.Document_Title = "LicenceID-Image"; attachments.Document_Type = "jpeg"; attachments.Updated_By = User.Identity.Name; attachments.Created_By = User.Identity.Name; attachments.Created_Date = DateTime.Now; attachments.Last_Updated_Date = DateTime.Now; attachments.Parent = new Scale { ID = Id }; string destinationPath; string sourcePath; FilelHelper fileHelper = new FilelHelper(); destinationPath = fileHelper.GetSourceDirByFileRefId(attachments.Document_RefId.ToString()); // Path.Combine(Configuration.GetsmARTDocPath(), Scale.Document_RefId.ToString()); sourcePath = fileHelper.GetTempSourceDirByFileRefId(attachments.Document_RefId.ToString()); // Path.Combine(Configuration.GetsmARTTempDocPath(), Scale.Document_RefId.ToString()); attachments.Document_Path = fileHelper.GetFilePath(sourcePath); if (Id > 0) { fileHelper.MoveFile(attachments.Document_Name, sourcePath, destinationPath); ScaleAttachmentsLibrary ScaleLibrary = new ScaleAttachmentsLibrary(ConfigurationHelper.GetsmARTDBContextConnectionString()); ScaleLibrary.Add(attachments); } else { if (Session["ScaleAttachments"] == null) { Session["ScaleAttachments"] = new List <ScaleAttachments>(); } IList <ScaleAttachments> iList = (IList <ScaleAttachments>)Session["ScaleAttachments"]; iList.Add(attachments); } return(guid); }
private void SaveAttachment(int Id, byte[] data, string fileName, EnumAttachmentRefType refType, FileFormat fileFormat) { Guid guid = SaveFile(data, fileName); ScaleAttachments attachments = new ScaleAttachments(); attachments.Document_Name = fileName;// "Thumb-Image.jpeg"; attachments.Document_RefId = guid; attachments.Document_Size = data.LongLength; attachments.Document_Title = fileName; attachments.Document_Type = fileFormat.ToString(); attachments.Ref_Type = (int)refType; attachments.Updated_By = User.Identity.Name; attachments.Created_By = User.Identity.Name; attachments.Created_Date = DateTime.Now; attachments.Last_Updated_Date = DateTime.Now; attachments.Parent = new Scale { ID = Id }; string destinationPath; string sourcePath; FilelHelper fileHelper = new FilelHelper(); destinationPath = fileHelper.GetSourceDirByFileRefId(attachments.Document_RefId.ToString()); // Path.Combine(Configuration.GetsmARTDocPath(), Scale.Document_RefId.ToString()); sourcePath = fileHelper.GetTempSourceDirByFileRefId(attachments.Document_RefId.ToString()); // Path.Combine(Configuration.GetsmARTTempDocPath(), Scale.Document_RefId.ToString()); attachments.Document_Path = fileHelper.GetFilePath(sourcePath); if (Id > 0) { fileHelper.MoveFile(attachments.Document_Name, sourcePath, destinationPath); ScaleAttachmentsLibrary ScaleLibrary = new ScaleAttachmentsLibrary(ConfigurationHelper.GetsmARTDBContextConnectionString()); attachments.Document_Name = fileName; ScaleAttachments scaleAttachment = ScaleLibrary.Add(attachments); } else { if (Session["ScaleAttachments"] == null) { Session["ScaleAttachments"] = new List <ScaleAttachments>(); } IList <ScaleAttachments> iList = (IList <ScaleAttachments>)Session["ScaleAttachments"]; iList.Add(attachments); } }
//private void AddNewMakeAndModel(Scale entity) //{ // LOVLibrary lib = new LOVLibrary(ConfigurationHelper.GetsmARTDBContextConnectionString()); // if (!string.IsNullOrEmpty(entity.Make)) // { // // Make does not exists in database. // LOV makeLOV = lib.GetByValue(entity.Make); // if (makeLOV == null) // { // LOVTypeLibrary libType = new LOVTypeLibrary(ConfigurationHelper.GetsmARTDBContextConnectionString()); // LOVType modelLOVType = libType.GetByLOVType("Make"); // makeLOV = new LOV() // { // Active_Ind = true, // LOV_Active = true, // Parent_Type_ID = modelLOVType.ID, // LOV_Value = entity.Make, // LOV_Display_Value = entity.Make, // LOVType = modelLOVType, // Parent = new LOV() // }; // lib.Add(makeLOV); // } // } // if (!string.IsNullOrEmpty(entity.Model) && !string.IsNullOrEmpty(entity.Make)) // { // // Model does not exists in database. // LOV modelLOV = lib.GetByValueAndParent(entity.Model, entity.Make); // if (modelLOV == null) // { // LOVTypeLibrary libType = new LOVTypeLibrary(ConfigurationHelper.GetsmARTDBContextConnectionString()); // LOVType modelLOVType = libType.GetByLOVType("Model"); // LOV parentModelLOV = lib.GetByValue(entity.Make); // modelLOV = new LOV() // { // Active_Ind = true, // LOV_Active = true, // Parent_Type_ID = modelLOVType.ID, // LOV_Value = entity.Model, // LOV_Display_Value = entity.Model, // LOVType = modelLOVType, // Parent = parentModelLOV // }; // lib.Add(modelLOV); // } // } //} public bool GetCustomerImageRefIds(int scaleId, out string thumbImage1, out string thumbImage2, out string photo, out string signatureImage, out string licenseImage, out string vehicleImageRefId, out string cashCardImageRefId) { thumbImage1 = thumbImage2 = photo = signatureImage = licenseImage = vehicleImageRefId = cashCardImageRefId = string.Empty; ScaleAttachments thumb1Attach = null; ScaleAttachments thumb2Attach = null; ScaleAttachments photoAttach = null; ScaleAttachments signatureAttach = null; ScaleAttachments dlLicenseAttach = null; ScaleAttachments vehicleImageAttach = null; ScaleAttachments cashCardImageAttach = null; if (scaleId > 0) { ScaleAttachmentsLibrary lib = new ScaleAttachmentsLibrary(ConfigurationHelper.GetsmARTDBContextConnectionString()); thumb1Attach = lib.GetAttachmentsByRefTypeAndParentId(EnumAttachmentRefType.Thumbprint1, scaleId).FirstOrDefault(); thumb2Attach = lib.GetAttachmentsByRefTypeAndParentId(EnumAttachmentRefType.Thumbprint2, scaleId).FirstOrDefault(); photoAttach = lib.GetAttachmentsByRefTypeAndParentId(EnumAttachmentRefType.Customer, scaleId).FirstOrDefault(); signatureAttach = lib.GetAttachmentsByRefTypeAndParentId(EnumAttachmentRefType.Signature, scaleId).FirstOrDefault(); dlLicenseAttach = lib.GetAttachmentsByRefTypeAndParentId(EnumAttachmentRefType.DriverLicense, scaleId).FirstOrDefault(); vehicleImageAttach = lib.GetAttachmentsByRefTypeAndParentId(EnumAttachmentRefType.Vehicle, scaleId).FirstOrDefault(); cashCardImageAttach = lib.GetAttachmentsByRefTypeAndParentId(EnumAttachmentRefType.CashCard, scaleId).FirstOrDefault(); } else { if (Session["ScaleAttachments"] != null) { IEnumerable <ScaleAttachments> resultList = (IList <ScaleAttachments>)Session["ScaleAttachments"]; thumb1Attach = resultList.FirstOrDefault(a => a.Ref_Type == (int)EnumAttachmentRefType.Thumbprint1); thumb2Attach = resultList.FirstOrDefault(a => a.Ref_Type == (int)EnumAttachmentRefType.Thumbprint2); photoAttach = resultList.FirstOrDefault(a => a.Ref_Type == (int)EnumAttachmentRefType.Customer); signatureAttach = resultList.FirstOrDefault(a => a.Ref_Type == (int)EnumAttachmentRefType.Signature); dlLicenseAttach = resultList.FirstOrDefault(a => a.Ref_Type == (int)EnumAttachmentRefType.DriverLicense); vehicleImageAttach = resultList.FirstOrDefault(a => a.Ref_Type == (int)EnumAttachmentRefType.Vehicle); cashCardImageAttach = resultList.FirstOrDefault(a => a.Ref_Type == (int)EnumAttachmentRefType.CashCard); } } if (thumb1Attach != null) { thumbImage1 = thumb1Attach.Document_RefId.ToString(); } if (thumb2Attach != null) { thumbImage2 = thumb2Attach.Document_RefId.ToString(); } if (photoAttach != null) { photo = photoAttach.Document_RefId.ToString(); } if (signatureAttach != null) { signatureImage = signatureAttach.Document_RefId.ToString(); } if (dlLicenseAttach != null) { licenseImage = dlLicenseAttach.Document_RefId.ToString(); } if (vehicleImageAttach != null) { vehicleImageRefId = vehicleImageAttach.Document_RefId.ToString(); } if (cashCardImageAttach != null) { cashCardImageRefId = cashCardImageAttach.Document_RefId.ToString(); } return(true); }
protected override void SaveChildEntities(string[] childEntityList, Scale entity) { foreach (string ChildEntity in childEntityList) { switch (ChildEntity) { #region /* Case Statements - All child grids */ case "ScaleDetails": if (Session[ChildEntity] != null) { ScaleDetailsLibrary ScaleDetailsLibrary = new ScaleDetailsLibrary(ConfigurationHelper.GetsmARTDBContextConnectionString()); IEnumerable <ScaleDetails> resultList = (IList <ScaleDetails>)Session[ChildEntity]; foreach (ScaleDetails scaleDetails in resultList) { scaleDetails.Scale = new Scale { ID = entity.ID }; ScaleDetailsLibrary.Add(scaleDetails); } } break; case "ScaleNotes": if (Session[ChildEntity] != null) { ScaleNotesLibrary ScaleNotesLibrary = new ScaleNotesLibrary(ConfigurationHelper.GetsmARTDBContextConnectionString()); IEnumerable <ScaleNotes> resultList = (IList <ScaleNotes>)Session[ChildEntity]; foreach (ScaleNotes ScaleNote in resultList) { ScaleNote.Parent = new Scale { ID = entity.ID }; //itemNote.Notes = System.Web.HttpUtility.HtmlDecode(itemNote.Notes); ScaleNotesLibrary.Add(ScaleNote); } } break; case "ScaleAttachments": if (Session[ChildEntity] != null) { ScaleAttachmentsLibrary ScaleLibrary = new ScaleAttachmentsLibrary(ConfigurationHelper.GetsmARTDBContextConnectionString()); IEnumerable <ScaleAttachments> resultList = (IList <ScaleAttachments>)Session[ChildEntity]; string destinationPath; string sourcePath; FilelHelper fileHelper = new FilelHelper(); foreach (ScaleAttachments Scale in resultList) { destinationPath = fileHelper.GetSourceDirByFileRefId(Scale.Document_RefId.ToString()); // Path.Combine(Configuration.GetsmARTDocPath(), Scale.Document_RefId.ToString()); sourcePath = fileHelper.GetTempSourceDirByFileRefId(Scale.Document_RefId.ToString()); // Path.Combine(Configuration.GetsmARTTempDocPath(), Scale.Document_RefId.ToString()); Scale.Document_Path = fileHelper.GetFilePath(sourcePath); fileHelper.MoveFile(Scale.Document_Name, sourcePath, destinationPath); Scale.Parent = new Scale { ID = entity.ID }; ScaleLibrary.Add(Scale); } } break; //case "ScaleIDCardAttachments": // if (Session[ChildEntity] != null) { // ScaleIDCardAttachmentsLibrary ScaleLibrary = new ScaleIDCardAttachmentsLibrary(ConfigurationHelper.GetsmARTDBContextConnectionString()); // IEnumerable<ScaleIDCardAttachments> resultList = (IList<ScaleIDCardAttachments>) Session[ChildEntity]; // string destinationPath; // string sourcePath; // FilelHelper fileHelper = new FilelHelper(); // foreach (ScaleIDCardAttachments Scale in resultList) { // destinationPath = fileHelper.GetSourceDirByFileRefId(Scale.Document_RefId.ToString());// Path.Combine(Configuration.GetsmARTDocPath(), Scale.Document_RefId.ToString()); // sourcePath = fileHelper.GetTempSourceDirByFileRefId(Scale.Document_RefId.ToString()); // Path.Combine(Configuration.GetsmARTTempDocPath(), Scale.Document_RefId.ToString()); // Scale.Document_Path = fileHelper.GetFilePath(sourcePath); // fileHelper.MoveFile(Scale.Document_Name, sourcePath, destinationPath); // Scale.Parent = new Scale { // ID = entity.ID // }; // ScaleLibrary.Add(Scale); // } // } // break; case "ScaleExpense": if (Session[ChildEntity] != null) { ScaleExpenseLibrary lib = new ScaleExpenseLibrary(ConfigurationHelper.GetsmARTDBContextConnectionString()); IEnumerable <ExpensesRequest> resultList = (IList <ExpensesRequest>)Session[ChildEntity]; foreach (ExpensesRequest exp in resultList) { exp.Reference = new Invoice { ID = entity.ID }; exp.Reference_Table = entity.GetType().Name; exp.Reference_ID = entity.ID; lib.Add(exp); } } break; #endregion } } }
private void SaveThumbScannerAttachment(int Id, byte[] data, string fileName, EnumAttachmentRefType refType, FileFormat fileFormat, bool updateParty = true) { Guid guid = SaveFile(data, string.Format("{0}.{1}", fileName, fileFormat.ToString())); ScaleAttachments attachments = new ScaleAttachments(); attachments.Document_Name = string.Format("{0}.{1}", fileName, fileFormat.ToString());// "Thumb-Image.jpeg"; attachments.Document_RefId = guid; attachments.Document_Size = data.LongLength; attachments.Document_Title = "Thumb-Image"; attachments.Document_Type = "jpeg"; attachments.Ref_Type = (int)refType; attachments.Updated_By = User.Identity.Name; attachments.Created_By = User.Identity.Name; attachments.Created_Date = DateTime.Now; attachments.Last_Updated_Date = DateTime.Now; attachments.Parent = new Scale { ID = Id }; string destinationPath; string sourcePath; FilelHelper fileHelper = new FilelHelper(); destinationPath = fileHelper.GetSourceDirByFileRefId(attachments.Document_RefId.ToString()); // Path.Combine(Configuration.GetsmARTDocPath(), Scale.Document_RefId.ToString()); sourcePath = fileHelper.GetTempSourceDirByFileRefId(attachments.Document_RefId.ToString()); // Path.Combine(Configuration.GetsmARTTempDocPath(), Scale.Document_RefId.ToString()); attachments.Document_Path = fileHelper.GetFilePath(sourcePath); if (Id > 0) { fileHelper.MoveFile(attachments.Document_Name, sourcePath, destinationPath); ScaleAttachmentsLibrary ScaleLibrary = new ScaleAttachmentsLibrary(ConfigurationHelper.GetsmARTDBContextConnectionString()); attachments.Document_Name = string.Format("{0}.{1}", fileName, "jpg"); ScaleAttachments scaleAttachment = ScaleLibrary.Add(attachments); if (updateParty) { Scale scale = new ScaleLibrary(ConfigurationHelper.GetsmARTDBContextConnectionString()).GetByID(Id.ToString(), new string[] { "Party_ID" }); PartyLibrary partyLib = new PartyLibrary(ConfigurationHelper.GetsmARTDBContextConnectionString()); Party party = partyLib.GetByID(scale.Party_ID.ID.ToString()); if (party != null) { party.PhotoRefId = scaleAttachment.Document_RefId.ToString(); partyLib.Modify(party); } } } else { if (Session["ScaleAttachments"] == null) { Session["ScaleAttachments"] = new List <ScaleAttachments>(); } IList <ScaleAttachments> iList = (IList <ScaleAttachments>)Session["ScaleAttachments"]; iList.Add(attachments); } }
public HttpResponseMessage SaveTicket([FromBody] Ticket value) { try { if (value.Scale == null) { return(Request.CreateResponse(HttpStatusCode.BadRequest)); } // Start transaction. using (TransactionScope scope = new TransactionScope(TransactionScopeOption.Required, new TransactionOptions { IsolationLevel = IsolationLevel.ReadCommitted })) { smART.ViewModel.Scale newScale = new Scale(); // Add new party if already exists if (!string.IsNullOrEmpty(value.Scale.License_No)) { PartyLibrary partyLib = new PartyLibrary(ConString); Party party = partyLib.GetByLicenseNo(value.Scale.License_No); if (party != null) { newScale.Party_ID = party; } else { // Add new party party = new Party(); party.Party_Name = value.Scale.Customer_Name; party.Party_Short_Name = value.Scale.Customer_Name; party.License_No = value.Scale.License_No; party.Party_Type = "Individual"; party.Created_By = value.Scale.Created_By; party.Updated_By = value.Scale.Created_By; party.Created_Date = value.Scale.Created_Date; party.Last_Updated_Date = value.Scale.Created_Date; party.Active_Ind = true; party.IsActive = true; party.State = !string.IsNullOrEmpty(value.Scale.Customer_State) ? value.Scale.Customer_State.ToString().Trim() : ""; party.ACLicense_ID = value.Scale.Customer_ACLicense_ID; party.Party_DOB = value.Scale.Customer_DOB; //string dobString = value.Scale.Customer_DOB; //DateTime dobDt; //if (smART.Common.DateTimeHelper.IsValidDate(dobString, out dobDt)) // party.Party_DOB = dobDt; party = partyLib.Add(party); newScale.Party_ID = party; // Add new Address AddressBook address = new AddressBook(); address.Address1 = value.Scale.Customer_Address; address.City = value.Scale.Customer_City; address.State = value.Scale.Customer_State; address.Country = value.Scale.Customer_Country; address.Party = party; address.Created_By = value.Scale.Created_By; address.Updated_By = value.Scale.Created_By; address.Created_Date = value.Scale.Created_Date; address.Last_Updated_Date = value.Scale.Created_Date; address.Primary_Flag = true; address.Active_Ind = true; address.Zip_Code = value.Scale.Customer_Zip; AddressBookLibrary addressLib = new AddressBookLibrary(ConString); addressLib.Add(address); } } // Save Scale ScaleLibrary lib = new ScaleLibrary(ConString); newScale.Ticket_Status = "Open"; newScale.QScale = true; newScale.Gross_Weight = value.ScaleDetails.Sum(s => s.GrossWeight); newScale.Tare_Weight = value.ScaleDetails.Sum(s => s.TareWeight);; newScale.Net_Weight = value.ScaleDetails.Sum(s => s.NetWeight); value.Scale.MapServiceEntityToServerEntity(newScale); smART.ViewModel.Scale scale = lib.Add(newScale); // Save scale detail if (value.ScaleDetails != null) { ScaleDetailsLibrary libScaleDetail = new ScaleDetailsLibrary(ConfigurationHelper.GetsmARTDBContextConnectionString()); ItemLibrary libItem = new ItemLibrary(ConfigurationHelper.GetsmARTDBContextConnectionString()); foreach (var item in value.ScaleDetails) { smART.ViewModel.ScaleDetails newScaleDetails = new smART.ViewModel.ScaleDetails(); newScaleDetails.Apply_To_Item = libItem.GetByID(item.Item_ID.ToString()); newScaleDetails.Item_Received = libItem.GetByID(item.Item_ID.ToString()); newScaleDetails.Scale = scale; item.MapServiceEntityToServerEntity(newScaleDetails); ScaleDetails scaleDetails = libScaleDetail.Add(newScaleDetails); // Set docuent related id if document is related to item if (value.ScaleAttachments != null && value.ScaleAttachments.Count > 0) { Model.ScaleAttachments modelAttach = value.ScaleAttachments.Where(w => w.Document_RelatedID == item.ID).FirstOrDefault(); if (modelAttach != null && modelAttach.Document_RelatedTo == 1) { modelAttach.Document_RelatedID = scaleDetails.ID; } } } } // Save Max Ticket ID in Device Settings DeviceSettingLibrary deviceLib = new DeviceSettingLibrary(ConString); DeviceSettings deviceSettings = deviceLib.GetByUniueID(scale.Unique_ID.Value); deviceSettings.MaxTicket_ID = value.Scale.ID; deviceLib.Modify(deviceSettings); // Save Attachments if (value.ScaleAttachments != null) { ScaleAttachmentsLibrary libAttach = new ScaleAttachmentsLibrary(ConfigurationHelper.GetsmARTDBContextConnectionString()); FilelHelper fileHelper = new FilelHelper(); foreach (var item in value.ScaleAttachments) { smART.ViewModel.ScaleAttachments newScaleAttachment = new smART.ViewModel.ScaleAttachments(); // Save file Guid docRefId = Guid.NewGuid(); string destinationPath = fileHelper.GetSourceDirByFileRefId(docRefId.ToString()); fileHelper.MoveFile(item.Document_Title, fileHelper.GetTempSourceDirByFileRefId(item.Document_Path), destinationPath); // Save attachment newScaleAttachment.Parent = scale; newScaleAttachment.Document_RefId = docRefId; newScaleAttachment.Document_Path = Path.Combine(destinationPath, item.Document_Title); item.MapServiceEntityToServerEntity(newScaleAttachment); libAttach.Add(newScaleAttachment); } } // Complete transaction. scope.Complete(); } return(Request.CreateResponse(HttpStatusCode.OK)); } catch (Exception ex) { ExceptionHandler.HandleException(ex, "An error occured in SaveTicket."); //string details = string.Format("Method: {1} {0} Message: {2} {0} Stack Trace: {3}", System.Environment.NewLine, "SaveTicket", ex.Message, ex.StackTrace.ToString()); //smART.Common.MessageLogger.Instance.LogMessage(ex, details, Common.Priority.High, 0, System.Diagnostics.TraceEventType.Error, "Service Error", "Service"); return(Request.CreateResponse(HttpStatusCode.InternalServerError)); } }
public string SaveTicketImage(String scaleId, string documentType) { var docfiles = new List <string>(); try { int intScaleId = Convert.ToInt32(scaleId); if (intScaleId <= 0) { throw new Exception("Invalid ticket id."); } int intDocType = Convert.ToInt32(documentType); string fileName = CommonHelper.GetFileNameByDocType(intDocType); if (string.IsNullOrEmpty(fileName)) { throw new Exception("Invalid document type."); } var httpRequest = HttpContext.Current.Request; if (httpRequest.Files.Count > 0) { // Get scale Scale scale = new ScaleLibrary(ConfigurationHelper.GetsmARTDBContextConnectionString()).GetByID(scaleId, new string[] { "Party_ID" }); if (scale == null) { throw new Exception("Given scale id not found in database."); } FilelHelper fileHelper = new FilelHelper(); foreach (string file in httpRequest.Files) { // Save file string docRefID = Guid.NewGuid().ToString(); var destinationPath = fileHelper.GetSourceDirByFileRefId(docRefID); // Path.Combine(Configuration.GetsmARTTempDocPath(), docRefID); fileHelper.CreateDirectory(destinationPath); var postedFile = httpRequest.Files[file]; postedFile.SaveAs(Path.Combine(destinationPath, fileName)); docfiles.Add(docRefID); // Add attachment ScaleAttachments attachments = new ScaleAttachments(); attachments.Document_Name = fileName; attachments.Document_RefId = new Guid(docRefID); attachments.Document_Size = 0; attachments.Document_Title = fileName; attachments.Document_Type = "jpeg"; attachments.Ref_Type = intDocType; attachments.Updated_By = User.Identity.Name; attachments.Created_By = User.Identity.Name; attachments.Created_Date = DateTime.Now; attachments.Last_Updated_Date = DateTime.Now; attachments.Parent = new Scale { ID = intScaleId }; attachments.Document_Path = destinationPath; ScaleAttachmentsLibrary ScaleLibrary = new ScaleAttachmentsLibrary(ConfigurationHelper.GetsmARTDBContextConnectionString()); attachments.Document_Name = fileName; ScaleAttachments scaleAttachment = ScaleLibrary.Add(attachments); // Update file ref in party master if (scale.Party_ID != null && scale.Party_ID.ID > 0) { PartyLibrary partyLib = new PartyLibrary(ConfigurationHelper.GetsmARTDBContextConnectionString()); Party party = partyLib.GetByID(scale.Party_ID.ID.ToString()); if (party != null) { SetPartyImageRefByDocType(intDocType, scaleAttachment.Document_RefId.ToString(), party); partyLib.Modify(party); } } } } } catch (Exception ex) { //string details = string.Format("Method: {1} {0} Message: {2} {0} Stack Trace: {3}", System.Environment.NewLine, "SaveTicketImage", ex.Message, ex.StackTrace.ToString()); ExceptionHandler.HandleException(ex, "An error occured in SaveTicketImage utils."); //smART.Common.MessageLogger.Instance.LogMessage(ex, details, Common.Priority.High, 0, System.Diagnostics.TraceEventType.Error, "Service Error", "Service"); } return(docfiles.FirstOrDefault()); }
public ActionResult SendEmail(string id) { string destinationFilePath = string.Empty; FilelHelper fileHelper = new FilelHelper(); try { if (string.IsNullOrEmpty(id)) { throw new Exception("Email send failed due to Container# not found."); } ContainerLibrary containerLib = new ContainerLibrary(ConfigurationHelper.GetsmARTDBContextConnectionString()); Container container = containerLib.GetByID(id, new string[] { "Booking.Sales_Order_No.Party" }); if (container == null || container.Booking == null || container.Booking.Sales_Order_No == null || container.Booking.Sales_Order_No.Party == null) { throw new Exception("Email send failed."); } IEnumerable <Contact> contacts = Helpers.ContactHelper.GetEmailContactsByPartyId(container.Booking.Sales_Order_No.Party.ID); if (contacts.Count() <= 0) { throw new Exception("There is no email contact exists."); } NotificationDefinition notDef = new NotificationDefinition(); notDef.ToRecipients = new System.Net.Mail.MailAddressCollection(); foreach (var item in contacts) { notDef.ToRecipients.Add(new System.Net.Mail.MailAddress(item.Email, item.ListText)); } EmployeeHelper employeeHelper = new EmployeeHelper(); Employee employee = employeeHelper.GetEmployeeByUsername(System.Web.HttpContext.Current.User.Identity.Name); if (employee == null || string.IsNullOrEmpty(employee.Email) || string.IsNullOrEmpty(employee.Email_Password)) { throw new Exception("Sender email and password is required."); } ScaleLibrary scaleLib = new ScaleLibrary(ConfigurationHelper.GetsmARTDBContextConnectionString()); Scale scale = scaleLib.GetScalesByContainerId(container.ID); ScaleAttachmentsLibrary scaleAttachLib = new ScaleAttachmentsLibrary(ConfigurationHelper.GetsmARTDBContextConnectionString()); IEnumerable <ScaleAttachments> scaleAttachments = scaleAttachLib.GetAllByParentID(scale.ID); if (scaleAttachments == null || scaleAttachments.Count() <= 0) { throw new Exception("There is no attachment found."); } destinationFilePath = Path.Combine(Path.GetTempPath(), container.ID.ToString()); fileHelper.CreateDirectory(destinationFilePath); fileHelper.DeleteFiles(destinationFilePath); string imageFilePath = Path.Combine(destinationFilePath, "Images"); fileHelper.CreateDirectory(imageFilePath); string zipFilePath = Path.Combine(destinationFilePath, container.ID.ToString() + ".zip"); foreach (var item in scaleAttachments) { string sourceFilePath = fileHelper.GetFilePathByFileRefId(item.Document_RefId.ToString()); string imageFileFullPath = Path.Combine(imageFilePath, item.Document_Name); System.IO.File.Copy(sourceFilePath, imageFileFullPath); } new smART.Common.FilelHelper().CreateZip(imageFilePath, zipFilePath); if (!fileHelper.FileExits(zipFilePath)) { throw new Exception("There is no attachment found."); } string xslPath = Path.Combine(ConfigurationHelper.GetsmARTXslPath(), "ContainerEmailBody.xslt"); string smtpAddress = ConfigurationHelper.GetsmARTSMTPServer(); notDef.Attachments = new List <System.Net.Mail.Attachment>(); notDef.Attachments.Add(new System.Net.Mail.Attachment(zipFilePath)); notDef.DeliveryType = EnumNotificationDeliveryType.Email; notDef.FormatType = EnumFormatType.HTML; notDef.Sender = new System.Net.Mail.MailAddress(employee.Email, employee.Emp_Name); notDef.SMTPServer = smtpAddress; notDef.SMTPServerCredentialID = employee.Email; notDef.SMTPServerCredentialPwd = employee.Email_Password; notDef.Subject = "Booking#/Container#: " + container.Booking.Booking_Ref_No + "/" + container.Container_No; NotificationHelper.StartNotificationWF(id, container.Booking.Sales_Order_No.Party.Party_Name, PartyHelper.GetOrganizationName(), employee.Emp_Name, notDef, xslPath, NotificationWFCompleted, container.Booking.Booking_Ref_No, container.Booking.Sales_Order_No.ID.ToString()); //return Display(command, container); if (_sendMail == true) { return(Json(new { Sucess = "Email send sucessfully." }, JsonRequestBehavior.AllowGet)); } else { return(Json(new { Sucess = "Email send failed." }, JsonRequestBehavior.AllowGet)); } //return Json(new { Sucess = "Email send sucessfully." }, JsonRequestBehavior.AllowGet); } catch (Exception ex) { //var script = @"ShowAlertMessage(""Send mail failed"");"; //return JavaScript(script); return(Json(new { Sucess = ex.Message }, JsonRequestBehavior.AllowGet)); } finally { //fileHelper.DeleteDirectory(destinationFilePath); } }