public void WriteToXml(XmlTextWriter xw) { XmlHelper.WriteIfNotEmpty(xw, "CustomerTransactionIdentifier", _CustomerTransactionIdentifier); XmlHelper.WriteIfNotEmpty(xw, "AccountNumber", _AccountNumber); XmlHelper.WriteIfNotEmpty(xw, "MeterNumber", _MeterNumber); XmlHelper.WriteIfNotEmpty(xw, "CarrierCode", _CarrierCode.ToString()); }
public override string ToString() { var sb = new StringBuilder("DeviceInfo("); bool __first = true; if (DeviceName != null && __isset.deviceName) { if (!__first) { sb.Append(", "); } __first = false; sb.Append("DeviceName: "); DeviceName.ToString(sb); } if (SystemName != null && __isset.systemName) { if (!__first) { sb.Append(", "); } __first = false; sb.Append("SystemName: "); SystemName.ToString(sb); } if (SystemVersion != null && __isset.systemVersion) { if (!__first) { sb.Append(", "); } __first = false; sb.Append("SystemVersion: "); SystemVersion.ToString(sb); } if (Model != null && __isset.model) { if (!__first) { sb.Append(", "); } __first = false; sb.Append("Model: "); Model.ToString(sb); } if (__isset.carrierCode) { if (!__first) { sb.Append(", "); } __first = false; sb.Append("CarrierCode: "); CarrierCode.ToString(sb); } if (CarrierName != null && __isset.carrierName) { if (!__first) { sb.Append(", "); } __first = false; sb.Append("CarrierName: "); CarrierName.ToString(sb); } if (__isset.applicationType) { if (!__first) { sb.Append(", "); } __first = false; sb.Append("ApplicationType: "); ApplicationType.ToString(sb); } sb.Append(")"); return(sb.ToString()); }
public override VufindDoc CreateVufindDocument(object Record)//здесь принимаем int { int ID_BJ = (int)Record; BJBookLoader loader = new Books.BJBooks.Loaders.BJBookLoader(this.Fund); DataTable record = loader.GetBJRecord(ID_BJ); if (record.Rows.Count == 0) { return(null); } int currentIDMAIN = (int)record.Rows[0]["IDMAIN"]; if (!SpecialFilter(currentIDMAIN, record)) { return(null); } string level = record.Rows[0]["Level"].ToString(); string level_id = record.Rows[0]["level_id"].ToString(); int lev_id = int.Parse(level_id); if (lev_id < 0) { return(null); } StringBuilder allFields = new StringBuilder(); AuthoritativeFile AF_all = new AuthoritativeFile(); bool wasTitle = false; //встречается ошибка: два заглавия в одном пине bool wasAuthor = false; //был ли автор. если был, то сортировочное поле уже заполнено string description = ""; //все 3хх поля string Annotation = ""; int CarrierCode; VufindDoc result = new VufindDoc(); string add = string.Empty; #region field analyse //BJBookInfo book = new BJBookInfo(); foreach (DataRow r in record.Rows) { allFields.AppendFormat(" {0}", r["PLAIN"].ToString()); switch (r["code"].ToString()) { //=======================================================================Родные поля вуфайнд======================= case "200$a": if (wasTitle) { break; } result.title.Add(r["PLAIN"].ToString()); result.title_short.Add(r["PLAIN"].ToString()); result.title_sort.Add(r["SORT"].ToString()); wasTitle = true; break; case "700$a": result.author.Add(r["PLAIN"].ToString()); if (!wasAuthor) { //AddField("author_sort", r["SORT"].ToString()); result.author_sort.Add(r["SORT"].ToString()); } wasAuthor = true; //забрать все варианты написания автора из авторитетного файла и вставить в скрытое, но поисковое поле break; case "701$a": result.author2.Add(r["PLAIN"].ToString()); break; case "710$a": result.author_corporate.Add(r["PLAIN"].ToString()); break; case "710$4": result.author_corporate_role.Add(r["PLAIN"].ToString()); break; case "700$4": result.author_role.Add(r["PLAIN"].ToString()); break; case "701$4": result.author2_role.Add(r["PLAIN"].ToString()); break; case "921$a": CarrierCode = KeyValueMapping.CarrierNameToCode.GetValueOrDefault(r["PLAIN"].ToString(), 3001); result.format.Add(CarrierCode.ToString()); break; case "922$e": result.genre.Add(r["PLAIN"].ToString()); result.genre_facet.Add(r["PLAIN"].ToString()); break; case "10$a": add = BJLoader.Clarify_10a((int)r["IDDATA"], r["PLAIN"].ToString()); result.isbn.Add(add); break; case "11$a": result.issn.Add(r["PLAIN"].ToString()); break; case "101$a": add = BJLoader.Clarify_101a((int)r["IDINLIST"], r["PLAIN"].ToString()); result.language.Add(add); break; case "2100$d": result.publishDate.Add(r["PLAIN"].ToString()); break; case "210$c": result.publisher.Add(r["PLAIN"].ToString()); break; case "517$a": add = BJLoader.Clarify_517a((int)r["IDDATA"], r["PLAIN"].ToString()); result.title_alt.Add(add); break; //=======================================================================добавленные поля в Вуфайнд======================= case "210$a": result.PlaceOfPublication.Add(r["PLAIN"].ToString()); break; case "200$6": result.Title_another_chart.Add(r["PLAIN"].ToString()); break; case "200$b": result.Title_same_author.Add(r["PLAIN"].ToString()); break; case "200$d": result.Parallel_title.Add(r["PLAIN"].ToString()); break; case "200$e": result.Info_pertaining_title.Add(r["PLAIN"].ToString()); break; case "200$f": result.Responsibility_statement.Add(r["PLAIN"].ToString()); break; case "200$h": result.Part_number.Add(r["PLAIN"].ToString()); break; case "200$i": result.Part_title.Add(r["PLAIN"].ToString()); break; case "200$z": result.Language_title_alt.Add(r["PLAIN"].ToString()); break; case "500$a": result.Title_unified.Add(r["PLAIN"].ToString()); break; case "500$3": //$3 is deprecated!!! AF_all = BJLoader.GetAFAll((int)r["AFLINKID"], "AFHEADERVAR"); result.Title_unified.Add(AF_all.ToString()); allFields.AppendFormat(" {0}", AF_all); break; case "517$e": result.Info_title_alt.Add(r["PLAIN"].ToString()); break; case "517$z": result.Language_title_alt.Add(r["PLAIN"].ToString()); break; case "700$3": AF_all = GetAFAll((int)r["AFLINKID"], "AFNAMESVAR"); foreach (string av in AF_all.AFValues) { result.author_variant.Add(av); } allFields.AppendFormat(" {0}", AF_all); break; case "701$3": AF_all = GetAFAll((int)r["AFLINKID"], "AFNAMESVAR"); result.Another_author_AF_all.Add(AF_all.ToString()); //хранить но не отображать allFields.AppendFormat(" {0}", AF_all); break; case "501$a": result.Another_title.Add(r["PLAIN"].ToString()); break; case "501$3": AF_all = GetAFAll((int)r["AFLINKID"], "AFHEADERVAR"); result.Another_title_AF_All.Add(AF_all.ToString()); allFields.AppendFormat(" {0}", AF_all); break; case "503$a": result.Unified_Caption.Add(r["PLAIN"].ToString()); break; case "503$3": AF_all = GetAFAll((int)r["AFLINKID"], "AFHEADERVAR"); result.Unified_Caption_AF_All.Add(AF_all.ToString()); allFields.AppendFormat(" {0}", AF_all); break; case "700$6": result.Author_another_chart.Add(r["PLAIN"].ToString()); break; case "702$a": result.Editor.Add(r["PLAIN"].ToString()); break; case "702$3": AF_all = GetAFAll((int)r["AFLINKID"], "AFNAMESVAR"); result.Editor_AF_all.Add(AF_all.ToString()); allFields.AppendFormat(" {0}", AF_all); break; case "702$4": result.Editor_role.Add(r["PLAIN"].ToString()); break; case "710$3": AF_all = GetAFAll((int)r["AFLINKID"], "AFORGSVAR"); result.Collective_author_all.Add(AF_all.ToString()); allFields.AppendFormat(" {0}", AF_all); break; case "710$9": result.Organization_nature.Add(r["PLAIN"].ToString()); break; case "11$9": result.Printing.Add(r["PLAIN"].ToString()); break; case "205$a": string PublicationInfo = BJLoader.Clarify_205a((int)r["IDDATA"], r["PLAIN"].ToString()); result.Publication_info.Add(PublicationInfo); break; case "921$b": result.EditionType.Add(r["PLAIN"].ToString()); break; case "102$a": result.Country.Add(r["PLAIN"].ToString()); break; case "210$3": AF_all = GetAFAll((int)r["AFLINKID"], "AFORGSVAR"); result.PlaceOfPublication_AF_All.Add(AF_all.ToString()); allFields.AppendFormat(" {0}", AF_all); break; case "2110$g": result.PrintingHouse.Add(r["PLAIN"].ToString()); break; case "2110$3": AF_all = GetAFAll((int)r["AFLINKID"], "AFORGSVAR"); result.PrintingHouse_AF_All.Add(AF_all.ToString()); allFields.AppendFormat(" {0}", AF_all); break; case "2111$e": result.GeoNamePlaceOfPublication.Add(r["PLAIN"].ToString()); break; case "2111$3": AF_all = GetAFAll((int)r["AFLINKID"], "AFGEOVAR"); result.GeoNamePlaceOfPublication_AF_All.Add(AF_all.ToString()); allFields.AppendFormat(" {0}", AF_all); break; case "10$z": result.IncorrectISBN.Add(r["PLAIN"].ToString()); break; case "11$z": result.IncorrectISSN.Add(r["PLAIN"].ToString()); break; case "11$y": result.CanceledISSN.Add(r["PLAIN"].ToString()); break; case "101$b": result.IntermediateTranslateLanguage.Add(r["PLAIN"].ToString()); break; case "101$d": result.SummaryLanguage.Add(r["PLAIN"].ToString()); break; case "101$e": result.TableOfContentsLanguage.Add(r["PLAIN"].ToString()); break; case "101$f": result.TitlePageLanguage.Add(r["PLAIN"].ToString()); break; case "101$g": result.BasicTitleLanguage.Add(r["PLAIN"].ToString()); break; case "101$i": result.AccompayingMaterialLanguage.Add(r["PLAIN"].ToString()); break; case "215$a": result.Volume.Add(r["PLAIN"].ToString()); break; case "215$b": result.Illustrations.Add(r["PLAIN"].ToString()); break; case "215$c": result.Dimensions.Add(r["PLAIN"].ToString()); break; case "215$d": result.AccompayingMaterial.Add(r["PLAIN"].ToString()); break; case "225$a": if (r["PLAIN"].ToString() == "") { break; } if (r["PLAIN"].ToString() == "-1") { break; } //AddHierarchyFields(Convert.ToInt32(r["PLAIN"]), Convert.ToInt32(r["IDMAIN"]), result); break; case "225$h": result.NumberInSeries.Add(r["PLAIN"].ToString()); break; case "225$v": result.NumberInSubseries.Add(r["PLAIN"].ToString()); break; case "300$a": case "301$a": case "316$a": case "320$a": case "326$a": case "336$a": case "337$a": description += r["PLAIN"].ToString() + " ; "; break; case "327$a": case "330$a": Annotation += r["PLAIN"].ToString() + " ; "; break; case "830$a": result.CatalogerNote.Add(r["PLAIN"].ToString()); break; case "831$a": result.DirectoryNote.Add(r["PLAIN"].ToString()); break; case "924$a": result.AdditionalBibRecord.Add(r["PLAIN"].ToString()); break; case "940$a": result.HyperLink.Add(r["PLAIN"].ToString()); break; case "606$a": //"""""" • """""" add = Clarify606a(r["SORT"].ToString()); result.topic.Add(add); result.topic_facet.Add(add); break; case "3000$a": result.OwnerPerson.Add(r["PLAIN"].ToString()); break; case "3000$3": AF_all = GetAFAll((int)r["AFLINKID"], "AFNAMESVAR"); result.OwnerPerson_AF_All.Add(AF_all.ToString()); allFields.AppendFormat(" {0}", AF_all); break; case "3001$a": result.OwnerOrganization.Add(r["PLAIN"].ToString()); break; case "3001$3": AF_all = GetAFAll((int)r["AFLINKID"], "AFORGSVAR"); result.OwnerOrganization_AF_All.Add(AF_all.ToString()); allFields.AppendFormat(" {0}", AF_all); break; case "3002$a": result.Ownership.Add(r["PLAIN"].ToString()); break; case "3003$a": result.OwnerExemplar.Add(r["PLAIN"].ToString()); break; case "3200$a": result.IllustrationMaterial.Add(r["PLAIN"].ToString()); break; } } #endregion result.id = this.Fund + "_" + currentIDMAIN; string rusFund = GetFundId(this.Fund); result.fund = rusFund; result.allfields = allFields.ToString(); result.Level = level; result.Level_id = level_id; result.Annotation.Add(Annotation); if (description != "") { result.description.Add(description); } if (int.Parse(result.Level_id) < 0) { return(result); } AddExemplarFields(currentIDMAIN, result, this.Fund); if ((result.Exemplars.Count == 0))//все экземпляры отсеялись сами собой. { return(null); } return(result); }