private void GetTags(LawSyncDocumentDetail lawDocument, List <LawMetadataBEO> metaDataList, out bool isError) { isError = false; if (_jobParameter.MappingTags == null || !_jobParameter.MappingTags.Any()) { return; } var documentTag = GetDocumentTags(lawDocument.DocumentReferenceId, _datasetCollectionId, out isError); foreach (var lawMappingTag in _jobParameter.MappingTags) { var docTag = documentTag.FirstOrDefault( f => f.TagId.ToString(CultureInfo.InvariantCulture) .Equals(lawMappingTag.MappingTagId)); var metaData = new LawMetadataBEO { Name = lawMappingTag.Name, Id = lawMappingTag.Id, //Not Required Value = (docTag != null), IsTag = true }; metaDataList.Add(metaData); } }
private static LawMetadataBEO CloneLawMetadata(LawMetadataBEO o) { var ret = new LawMetadataBEO() { Id = o.Id, IsTag = o.IsTag, Name = o.Name, Type = o.Type, Value = o.Value }; return(ret); }
private List <LawMetadataBEO> GetFields(LawSyncDocumentDetail lawDocument, List <LawMetadataBEO> metaDataList, out bool isError) { isError = false; if (_jobParameter.MappingFields == null || !_jobParameter.MappingFields.Any()) { return(metaDataList); } var document = GetDocumentDetails(lawDocument.DocumentReferenceId, _datasetCollectionId, out isError); foreach (var lawMappingField in _jobParameter.MappingFields) { var docField = document.FieldList.FirstOrDefault( f => f.FieldId.ToString(CultureInfo.InvariantCulture) .Equals(lawMappingField.MappingFieldId)); if (docField == null) { continue; } var datasetField = _dataset.DatasetFieldList.FirstOrDefault(f => f.ID.ToString(CultureInfo.InvariantCulture) .Equals(lawMappingField.MappingFieldId)); var format = string.Empty; if (datasetField != null) { format = datasetField.FieldType.DataFormat; } var metaData = new LawMetadataBEO { Name = lawMappingField.Name, Id = lawMappingField.Id, //Not Required Type = lawMappingField.FieldType, Value = ConvertFieldValueIntoLawType(docField.FieldValue, lawMappingField.FieldType, format) }; metaDataList.Add(metaData); } return(metaDataList); }
void SetMetadataForDcoument(LawSyncDocumentDetail lawDocument) { try { var metaDataList = new List <LawMetadataBEO>(); //1) Get Fields bool isErrorInGetFields; metaDataList = GetFields(lawDocument, metaDataList, out isErrorInGetFields); //2) Get Tag bool isErrorInGetTags; GetTags(lawDocument, metaDataList, out isErrorInGetTags); //3) Law sync Tag var lawSyncTag = new LawMetadataBEO { Name = _jobParameter.LawSyncTagName, Value = true, IsTag = true }; metaDataList.Add(lawSyncTag); lawDocument.MetadataList = metaDataList; if (isErrorInGetFields || isErrorInGetTags) { ConstructLog(lawDocument.LawDocumentId, lawDocument.CorrelationId, lawDocument.DocumentControlNumber, Constants.LawSyncFailureinGetMetadataMessage); _documentProcessStateList.Add(GetDocumentProcessStateInformation(lawDocument, (int)LawSyncProcessState.Failed)); lawDocument.IsErrorOnGetMetadata = true; } } catch (Exception ex) { ConstructLog(lawDocument.LawDocumentId, lawDocument.CorrelationId, lawDocument.DocumentControlNumber, Constants.LawSyncFailureinGetMetadataMessage); _documentProcessStateList.Add(GetDocumentProcessStateInformation(lawDocument, (int)LawSyncProcessState.Failed)); lawDocument.IsErrorOnGetMetadata = true; ex.AddDbgMsg("Law Document Id:{0}", lawDocument.LawDocumentId); ex.Trace().Swallow(); ReportToDirector(ex); } }
protected void btnSyncMetadata_Click(object sender, EventArgs e) { try { string lawIniFile = txtLawIniFile.Text; List<string> fieldNames = SplitStr(txtFieldNames.Text); List<string> fieldTypes = SplitStr(txtFieldTypes.Text); List<string> fieldValues = SplitStr(txtFieldValues.Text); List<string> tagNames = SplitStr(txtTagNames.Text); List<string> tagValues = SplitStr(txtTagValues.Text); IEVLawAdapter adapter = EVLawAdapterFactory.NewEVLawAdapter(lawIniFile, "law_user", "law32sql"); string[] range = txtLawDocIDRange.Text.Split(" -".ToCharArray(), StringSplitOptions.RemoveEmptyEntries); int lawDocIdBegin = Convert.ToInt32(range[0]); int lawDocIdEnd = Convert.ToInt32(range[1]); int fieldCount = fieldNames.Count; int tagCount = tagNames.Count; int i; List<LawMetadataBEO> metadatas = new List<LawMetadataBEO>(); for (i = 0; i < fieldCount; i++) { string inputFieldValue = fieldValues[i]; LawFieldTypeBEO lawFieldType; Object fieldValue; bool isFieldValueNull = "null".Equals(inputFieldValue, StringComparison.InvariantCultureIgnoreCase); switch (fieldTypes[i]) { case "string": lawFieldType = LawFieldTypeBEO.String; fieldValue = isFieldValueNull ? null : inputFieldValue; break; case "int": lawFieldType = LawFieldTypeBEO.Numeric; fieldValue = isFieldValueNull ? null : (Object) Convert.ToInt32(inputFieldValue); break; case "date": lawFieldType = LawFieldTypeBEO.DateTime; fieldValue = isFieldValueNull ? null : (Object) DateTime.ParseExact(inputFieldValue, "yyyy-MM-dd HH:mm:ss", CultureInfo.CurrentCulture); break; default: throw new Exception("Invalid fieldType: " + fieldTypes[i]); } var metadata = new LawMetadataBEO { IsTag = false, Name = fieldNames[i], Type = lawFieldType, Value = fieldValue }; metadatas.Add(metadata); adapter.CreateField(fieldNames[i], lawFieldType); } for (i = 0; i < tagCount; i++) { var metadata = new LawMetadataBEO { IsTag = true, Name = tagNames[i], Value = tagValues[i].Equals("true", StringComparison.OrdinalIgnoreCase) ? true : false }; metadatas.Add(metadata); adapter.CreateTag(tagNames[i]); } var lawDocs = new List<LawDocumentBEO>(); for (int docId = lawDocIdBegin; docId <= lawDocIdEnd; docId++) { var lawDoc = new LawDocumentBEO() { LawDocId = docId, LawMetadatas = CloneLawMetadataList(metadatas) }; lawDocs.Add(lawDoc); } List<string> metadataNames = new List<string>(); metadataNames.AddRange(fieldNames); metadataNames.AddRange(tagNames); // fieldNames.SafeForEach(o => adapter.CreateField(o, LawFieldTypeBEO.Numeric)); // tagNames.SafeForEach(o => adapter.CreateTag(o)); adapter.UpdateLawMetadata(lawDocs, metadataNames); ltlResult.Text = "Law Sync Success"; } catch (Exception ex) { ltlResult.Text = string.Format("Error Code: {0}\r\nUser Message: {1}\r\nDebug Message: {2}\r\n{3}", ex.GetErrorCode(), ex.ToUserString(), ex.ToDebugString(), ex.ToString()); } }
private static LawMetadataBEO CloneLawMetadata(LawMetadataBEO o) { var ret = new LawMetadataBEO() { Id = o.Id, IsTag = o.IsTag, Name = o.Name, Type = o.Type, Value = o.Value }; return ret; }
void SetMetadataForDcoument(LawSyncDocumentDetail lawDocument) { try { var metaDataList = new List<LawMetadataBEO>(); //1) Get Fields bool isErrorInGetFields; metaDataList = GetFields(lawDocument, metaDataList, out isErrorInGetFields); //2) Get Tag bool isErrorInGetTags; GetTags(lawDocument, metaDataList, out isErrorInGetTags); //3) Law sync Tag var lawSyncTag = new LawMetadataBEO { Name = _jobParameter.LawSyncTagName, Value = true, IsTag = true }; metaDataList.Add(lawSyncTag); lawDocument.MetadataList = metaDataList; if (isErrorInGetFields || isErrorInGetTags) { ConstructLog(lawDocument.LawDocumentId, lawDocument.CorrelationId, lawDocument.DocumentControlNumber, Constants.LawSyncFailureinGetMetadataMessage); _documentProcessStateList.Add(GetDocumentProcessStateInformation(lawDocument, (int)LawSyncProcessState.Failed)); lawDocument.IsErrorOnGetMetadata = true; } } catch (Exception ex) { ConstructLog(lawDocument.LawDocumentId, lawDocument.CorrelationId, lawDocument.DocumentControlNumber, Constants.LawSyncFailureinGetMetadataMessage); _documentProcessStateList.Add(GetDocumentProcessStateInformation(lawDocument, (int)LawSyncProcessState.Failed)); lawDocument.IsErrorOnGetMetadata = true; ex.AddDbgMsg("Law Document Id:{0}", lawDocument.LawDocumentId); ex.Trace().Swallow(); ReportToDirector(ex); } }
private List<LawMetadataBEO> GetFields(LawSyncDocumentDetail lawDocument, List<LawMetadataBEO> metaDataList, out bool isError) { isError = false; if (_jobParameter.MappingFields == null || !_jobParameter.MappingFields.Any()) return metaDataList; var document = GetDocumentDetails(lawDocument.DocumentReferenceId, _datasetCollectionId, out isError); foreach (var lawMappingField in _jobParameter.MappingFields) { var docField = document.FieldList.FirstOrDefault( f => f.FieldId.ToString(CultureInfo.InvariantCulture) .Equals(lawMappingField.MappingFieldId)); if (docField == null) continue; var datasetField= _dataset.DatasetFieldList.FirstOrDefault(f => f.ID.ToString(CultureInfo.InvariantCulture) .Equals(lawMappingField.MappingFieldId)); var format=string.Empty; if (datasetField != null) { format = datasetField.FieldType.DataFormat; } var metaData = new LawMetadataBEO { Name = lawMappingField.Name, Id = lawMappingField.Id, //Not Required Type = lawMappingField.FieldType, Value = ConvertFieldValueIntoLawType(docField.FieldValue, lawMappingField.FieldType, format) }; metaDataList.Add(metaData); } return metaDataList; }
private void GetTags(LawSyncDocumentDetail lawDocument, List<LawMetadataBEO> metaDataList, out bool isError) { isError = false; if (_jobParameter.MappingTags == null || !_jobParameter.MappingTags.Any()) return; var documentTag = GetDocumentTags(lawDocument.DocumentReferenceId, _datasetCollectionId, out isError); foreach (var lawMappingTag in _jobParameter.MappingTags) { var docTag = documentTag.FirstOrDefault( f => f.TagId.ToString(CultureInfo.InvariantCulture) .Equals(lawMappingTag.MappingTagId)); var metaData = new LawMetadataBEO { Name = lawMappingTag.Name, Id = lawMappingTag.Id, //Not Required Value = (docTag != null), IsTag = true }; metaDataList.Add(metaData); } }
protected void btnSyncMetadata_Click(object sender, EventArgs e) { try { string lawIniFile = txtLawIniFile.Text; List <string> fieldNames = SplitStr(txtFieldNames.Text); List <string> fieldTypes = SplitStr(txtFieldTypes.Text); List <string> fieldValues = SplitStr(txtFieldValues.Text); List <string> tagNames = SplitStr(txtTagNames.Text); List <string> tagValues = SplitStr(txtTagValues.Text); IEVLawAdapter adapter = EVLawAdapterFactory.NewEVLawAdapter(lawIniFile, "law_user", "law32sql"); string[] range = txtLawDocIDRange.Text.Split(" -".ToCharArray(), StringSplitOptions.RemoveEmptyEntries); int lawDocIdBegin = Convert.ToInt32(range[0]); int lawDocIdEnd = Convert.ToInt32(range[1]); int fieldCount = fieldNames.Count; int tagCount = tagNames.Count; int i; List <LawMetadataBEO> metadatas = new List <LawMetadataBEO>(); for (i = 0; i < fieldCount; i++) { string inputFieldValue = fieldValues[i]; LawFieldTypeBEO lawFieldType; Object fieldValue; bool isFieldValueNull = "null".Equals(inputFieldValue, StringComparison.InvariantCultureIgnoreCase); switch (fieldTypes[i]) { case "string": lawFieldType = LawFieldTypeBEO.String; fieldValue = isFieldValueNull ? null : inputFieldValue; break; case "int": lawFieldType = LawFieldTypeBEO.Numeric; fieldValue = isFieldValueNull ? null : (Object)Convert.ToInt32(inputFieldValue); break; case "date": lawFieldType = LawFieldTypeBEO.DateTime; fieldValue = isFieldValueNull ? null : (Object)DateTime.ParseExact(inputFieldValue, "yyyy-MM-dd HH:mm:ss", CultureInfo.CurrentCulture); break; default: throw new Exception("Invalid fieldType: " + fieldTypes[i]); } var metadata = new LawMetadataBEO { IsTag = false, Name = fieldNames[i], Type = lawFieldType, Value = fieldValue }; metadatas.Add(metadata); adapter.CreateField(fieldNames[i], lawFieldType); } for (i = 0; i < tagCount; i++) { var metadata = new LawMetadataBEO { IsTag = true, Name = tagNames[i], Value = tagValues[i].Equals("true", StringComparison.OrdinalIgnoreCase) ? true : false }; metadatas.Add(metadata); adapter.CreateTag(tagNames[i]); } var lawDocs = new List <LawDocumentBEO>(); for (int docId = lawDocIdBegin; docId <= lawDocIdEnd; docId++) { var lawDoc = new LawDocumentBEO() { LawDocId = docId, LawMetadatas = CloneLawMetadataList(metadatas) }; lawDocs.Add(lawDoc); } List <string> metadataNames = new List <string>(); metadataNames.AddRange(fieldNames); metadataNames.AddRange(tagNames); // fieldNames.SafeForEach(o => adapter.CreateField(o, LawFieldTypeBEO.Numeric)); // tagNames.SafeForEach(o => adapter.CreateTag(o)); adapter.UpdateLawMetadata(lawDocs, metadataNames); ltlResult.Text = "Law Sync Success"; } catch (Exception ex) { ltlResult.Text = string.Format("Error Code: {0}\r\nUser Message: {1}\r\nDebug Message: {2}\r\n{3}", ex.GetErrorCode(), ex.ToUserString(), ex.ToDebugString(), ex.ToString()); } }