private void AddDocumentToRequest(AssociatedDoc assDoc, FaxRequest request) { var originalSelection = ImagesEventManager.Instance.CurrentSelected; var associatedDocsDto = originalSelection; bool wasChanged = false; try { if (originalSelection.DocsId != assDoc.Id || originalSelection.Type != ImagesDtoType.Associated) { associatedDocsDto = imagesDal.GetByDocId(assDoc.Id, ImagesDtoType.Associated); ImagesEventManager.Instance.Raise(new ImagesSelectedEventArgs(associatedDocsDto, false)); wasChanged = true; } var currentEditor = TifEditor.GetCurrentEditor(); var publishToBytes = currentEditor.PublishToBytes(); associatedDocsDto.MarkupImage = publishToBytes; imagesDal.Update(associatedDocsDto); vaulter.VaultAssociatedDoc(assDoc.Id, null); request.AddDocument(assDoc.FileName, currentEditor.TotalPages, publishToBytes); } finally { if (wasChanged) { ImagesEventManager.Instance.Raise(new ImagesSelectedEventArgs(originalSelection, false)); } } }
public static AssociatedDocsDto CreateAssociatedDocsDto(AssociatedDoc assDoc) { var assocDocsData = new AssociatedDocsDto(); assocDocsData.BrokerSn = assDoc.BrokerShortName; assocDocsData.CdtyGroupCode = assDoc.CdtyGroupCode; assocDocsData.CptySn = assDoc.CptyShortName; assocDocsData.FileName = assDoc.FileName; assocDocsData.Id = assDoc.Id; assocDocsData.InboundDocsId = assDoc.InboundDocsId; assocDocsData.IndexVal = Convert.ToInt16(assDoc.IndexVal); assocDocsData.TradeRqmtId = assDoc.TradeRqmtId; assocDocsData.TradeId = assDoc.TradeId; assocDocsData.DocTypeCode = assDoc.DocTypeCode; assocDocsData.SecValidateReqFlag = assDoc.SecondValidateReqFlag; return(assocDocsData); }
private void CopyDataToBeUpdated() { sumDataCacheCopy.Clear(); rqmtDataCacheCopy.Clear(); assDocDataCacheCopy.Clear(); inbDocViewCacheCopy.Clear(); tradeRqmtConfirmCacheCopy.Clear(); foreach (SummaryData data in sumDataCache) { SummaryData copyData = new SummaryData(); copyData = data; sumDataCacheCopy.Add(copyData); } foreach (RqmtData data in rqmtDataCache) { RqmtData copyData = new RqmtData(); copyData = data; rqmtDataCacheCopy.Add(copyData); } foreach (AssociatedDoc data in assDocDataCache) { AssociatedDoc copyData = new AssociatedDoc(); copyData = data; assDocDataCacheCopy.Add(copyData); } foreach (InboundDocsView data in inbDocViewCache) { InboundDocsView copyData = new InboundDocsView(); copyData = data; inbDocViewCacheCopy.Add(copyData); } foreach (TradeRqmtConfirm data in tradeRqmtConfirmCache) { TradeRqmtConfirm copyData = new TradeRqmtConfirm(); copyData = data; tradeRqmtConfirmCacheCopy.Add(copyData); } }
private void DetermineTransmitDestination(AssociatedDoc assDoc) { if (transmitDestination.IsValid) { if (!InboundSettings.IsProductionSystem && !transmitDestination.IsValidNonProdSendToAddress()) { throw new Exception(String.Format( "Unable to send to '{0}' from a non-production system.", transmitDestination.Value) + Environment.NewLine + "Error CNF-423 in " + FORM_NAME + ".DetermineTransmitDestination()."); } return; } using (var rqstForm = new frmAssignFaxNo()) { rqstForm.SetFaxNumbers("", assDoc.XmitValue ?? ""); rqstForm.SetIsAssociatedDoc(true); rqstForm.ShowDialog(); transmitDestination = rqstForm.TransmitDestination; } }
public void SendToGateway(AssociatedDoc assDoc, SummaryData sumData) { if (assDoc == null) { throw new Exception("Unable to find an associated doc to transmit." + Environment.NewLine + "Error CNF-421 in " + FORM_NAME + ".SendToGateway()."); } if (sumData == null) { throw new Exception("Unable to transmit an associated document without an attached summary data." + Environment.NewLine + "Error CNF-422 in " + FORM_NAME + ".SendToGateway()."); } DetermineTransmitDestination(assDoc); if (transmitDestination == null) { UserCanceled = true; return; } int xmitRequestId = xmitRequestDal.SaveAssociatedDocumentXmitRequest(assDoc.Id, transmitDestination.Type, transmitDestination.Value, InboundSettings.UserName); var callbackGen = new TransmitCallbackGenerator(xmitRequestId); var destinations = transmitDestination.Value.Split(';'); foreach (string destin in destinations) { var request = new FaxRequest { FaxNumber = destin, AppCode = PRODUCT_INB_APP_CODE }; request.AppSender = InboundSettings.UserName; request.ReceiptAction = new CallbackAction("http", callbackGen.GenerateUrl(TransmitCallbackAction.Queued)); request.Action.SuccessAction = new CallbackAction("http", callbackGen.GenerateUrl(TransmitCallbackAction.Success)); request.Action.FailureAction = new CallbackAction("http", callbackGen.GenerateUrl(TransmitCallbackAction.Failed)); request.AppReference = Convert.ToString(sumData.TradeSysTicket); request.Recipient = sumData.CptySn; AddDocumentToRequest(assDoc, request); var email = new Emailer(); if (transmitDestination.Type == TransmitDestinationType.EMAIL) { request.SendMethod = "EMAIL"; request.EmailAddress = request.FaxNumber; request.FaxNumber = ""; email.SendToFaxGateway(InboundSettings.EmailHost, InboundSettings.TransmissionGatewayEmailFromAddress, InboundSettings.TransmissionGatewayEmailToAddress, request, ""); } else { request.SendMethod = "FAX"; email.SendToFaxGateway(InboundSettings.EmailHost, InboundSettings.TransmissionGatewayEmailFromAddress, InboundSettings.TransmissionGatewayEmailToAddress, request, ""); } } }