public List <List <string> > dataTrm(List <FileInfo> filesInfo, string _status, string _rev, string _date) { //путь к VDR string pathToVDR = new GetPathsToTemplates().getPathsToTemplates()[0]; List <List <string> > dataTrm = new List <List <string> >(); WritterReader writterReader = new WritterReader(); List <List <string> > vdrData = writterReader.Read(pathToVDR, "VDR"); foreach (FileInfo fn in filesInfo) { string packageCode = fn.shortName.Split('-')[4]; string docTypeCode = fn.shortName.Split('-')[5]; List <string> vdrDataRow = vdrData.FirstOrDefault(x => x[28].Contains(fn.shortName)); //Rev string Rev; if (_rev != null && _rev.Trim() != "") { Rev = _rev; } else { Rev = fn.rev; } //Status string Status = null; if (_status != null && _status.Trim() != "") { Status = _status; } else if (vdrDataRow != null) { Status = vdrDataRow[33]; } //Date string Date = null; if (_date != null && _date.Trim() != "") { Date = _date; } else if (vdrDataRow != null) { Date = vdrDataRow[40]; } string docNumber = null; if (fn.electronicFilename.Contains("_CKL")) { docTypeCode = null; } string docTitleRu = null; string docTitleEn = null; if (fn.electronicFilename.Contains("_CKL")) { docTitleRu = "Контрольный перечень проверки дублирования"; docTitleEn = "Duplication Review Checklist"; } List <string> trmRow = new List <string>(); if (vdrDataRow != null) { if (!fn.electronicFilename.Contains("_CKL")) { docTitleRu = vdrDataRow[30]; docTitleEn = vdrDataRow[29]; docNumber = vdrDataRow[27]; } trmRow.Add(vdrDataRow[35]); // PO NO trmRow.Add(null); //Tag No trmRow.Add(null); //supplier doc number trmRow.Add(docNumber); // doc No trmRow.Add(fn.lang); // language trmRow.Add(docTitleRu); // doc title RU trmRow.Add(docTitleEn); // doc title EN trmRow.Add(vdrDataRow[24]); // dics trmRow.Add(packageCode); // package Code trmRow.Add(Status); // status trmRow.Add(Date); // doc date trmRow.Add(vdrDataRow[15]); // doc class trmRow.Add(Rev); // rev trmRow.Add(docTypeCode); // doc type code trmRow.Add(fn.countSheets); // count of sheets trmRow.Add(fn.formatPages); // format trmRow.Add(fn.fileExtension); // file format trmRow.Add(fn.electronicFilename); //filename } else { trmRow.Add(null); // PO NO trmRow.Add(null); //Tag No trmRow.Add(null); //supplier doc number trmRow.Add(docNumber); //doc No trmRow.Add(fn.lang); // language trmRow.Add(docTitleRu); // doc title RU trmRow.Add(docTitleEn); // doc title EN trmRow.Add(null); // dics trmRow.Add(packageCode); // package Code trmRow.Add(Status); // status trmRow.Add(Date); // doc date trmRow.Add(null); // doc class trmRow.Add(Rev); // rev trmRow.Add(docTypeCode); // doc type code trmRow.Add(fn.countSheets); // count of sheets trmRow.Add(fn.formatPages); // format trmRow.Add(fn.fileExtension); // file format trmRow.Add(fn.electronicFilename); //filename } dataTrm.Add(trmRow); } return(dataTrm); }
public List <List <string> > dataTrmCsv(List <FileInfo> filesInfo, string transmitNumber, string _status, string _rev) { //путь к VDR string pathToVDR = new GetPathsToTemplates().getPathsToTemplates()[0]; List <List <string> > dataTrmCsv = new List <List <string> >(); WritterReader writterReader = new WritterReader(); List <List <string> > vdrCsvData = writterReader.Read(pathToVDR, "VDR CSV"); List <List <string> > vdrData = writterReader.Read(pathToVDR, "VDR"); foreach (FileInfo fn in filesInfo) { string docTypeCode = fn.shortName.Split('-')[5]; string docTypeCodeRu = null; string docTypeCodeEn = null; if (!docTypesDictRu.ContainsKey(docTypeCode) || !docTypesDictEn.ContainsKey(docTypeCode)) { string AlertMsg = String.Format("Неправильное наименование типа документа в имени файла:\n{0} ({1})", fn.electronicFilename, docTypeCode); MessageBox.Show(AlertMsg, "Предупреждение"); Environment.Exit(0); } else { docTypeCodeRu = docTypesDictRu[docTypeCode]; docTypeCodeEn = docTypesDictEn[docTypeCode]; } List <string> vdrCsvDataRow = vdrCsvData.FirstOrDefault(x => x[0].Contains(fn.docNameForCSV)); List <string> vdrDataRow = vdrData.FirstOrDefault(x => x[28].Contains(fn.shortName)); //Rev string Rev; if (_rev != null && _rev.Trim() != "") { Rev = _rev; } else { Rev = fn.rev; } //Status string Status = null; if (_status != null && _status.Trim() != "" && statusDict.ContainsKey(_status)) { Status = statusDict[_status]; } else if (vdrDataRow != null) { Status = statusDict[vdrDataRow[33]]; } string[] sectionDescriptions = DataDictionaries.GetSectionDescriptions(fn.section); string sectionRu = sectionDescriptions[0]; string sectionEn = sectionDescriptions[1]; string docNumber = null; string docTitleRu = null; string docTitleEn = null; if (fn.electronicFilename.Contains("_CKL")) { docTitleRu = "Контрольный перечень проверки дублирования"; docTitleEn = "Duplication Review Checklist"; docTypeCode = null; docTypeCodeRu = null; docTypeCodeEn = null; Rev = null; Status = null; } List <string> trmCsvRow = new List <string>(); if (vdrCsvDataRow != null && vdrDataRow != null) { if (!fn.electronicFilename.Contains("_CKL")) { docTitleRu = vdrDataRow[30]; docTitleEn = vdrDataRow[29]; docNumber = vdrDataRow[27]; } trmCsvRow.Add(null); //Row Status trmCsvRow.Add(docNumber); //doc No trmCsvRow.Add(null); //Vendor doc no trmCsvRow.Add(docTitleRu); // doc title RU trmCsvRow.Add(docTitleEn); // doc title EN trmCsvRow.Add(docTypeCode); // doc type code trmCsvRow.Add(docTypeCodeRu); // doc type code RU trmCsvRow.Add(docTypeCodeEn); // doc type code EN trmCsvRow.Add(vdrDataRow[40]); // doc date trmCsvRow.Add(Rev); // rev trmCsvRow.Add(Status); // status trmCsvRow.Add("CPECC"); // originator trmCsvRow.Add("0055"); // contract number trmCsvRow.Add("Joint-Stock Company\"ARMO - GROUP\""); //vendor trmCsvRow.Add(vdrDataRow[35]); // PO NO trmCsvRow.Add("4 - ГПЗ"); // work phase trmCsvRow.Add(fn.subPhase); // work sub-phase trmCsvRow.Add(vdrCsvDataRow[1]); // subproject code trmCsvRow.Add(vdrCsvDataRow[2]); // operation complex RU trmCsvRow.Add(vdrCsvDataRow[3]); // operation complex EN trmCsvRow.Add(vdrCsvDataRow[4]); // start complex RU trmCsvRow.Add(vdrCsvDataRow[5]); // start complex EN trmCsvRow.Add(vdrCsvDataRow[6]); // title object RU trmCsvRow.Add(vdrCsvDataRow[7]); // title object EN trmCsvRow.Add(vdrCsvDataRow[8]); // title number RU trmCsvRow.Add(vdrCsvDataRow[9]); // title number EN trmCsvRow.Add(sectionRu); // package name RU trmCsvRow.Add(sectionEn); // package name EN trmCsvRow.Add(null); //sequence number trmCsvRow.Add(vdrCsvDataRow[13]); // doc class code trmCsvRow.Add(vdrCsvDataRow[14]); // discip RU trmCsvRow.Add(vdrCsvDataRow[15]); // discip EN trmCsvRow.Add(null); //construction contractor trmCsvRow.Add(vdrCsvDataRow[17]); // construction type trmCsvRow.Add(fn.countSheets); // count of sheets trmCsvRow.Add("1"); //sheet number trmCsvRow.Add(null); //number of copies trmCsvRow.Add(null); //ACRS trmCsvRow.Add(null); //status ACRS trmCsvRow.Add(null); //PEM trmCsvRow.Add(null); //equipment tag trmCsvRow.Add(fn.lang); // language trmCsvRow.Add(fn.formatPages); // format trmCsvRow.Add(null); //review code trmCsvRow.Add(transmitNumber); // incomming transmittal N trmCsvRow.Add(null); //old transmittal N trmCsvRow.Add("Latest"); // doc status trmCsvRow.Add("00.Holding Folder"); //storage path trmCsvRow.Add(fn.electronicFilename); //content trmCsvRow.Add(fn.nativeStatus); //rendition name trmCsvRow.Add(fn.nativeName); //rendition file trmCsvRow.Add(null); //link to trmCsvRow.Add(null); //stamped for construction } else { trmCsvRow.Add(null); //Row Status trmCsvRow.Add(docNumber); //doc No trmCsvRow.Add(null); //Vendor doc no trmCsvRow.Add(docTitleRu); // doc title RU trmCsvRow.Add(docTitleEn); // doc title EN trmCsvRow.Add(docTypeCode); // doc type code trmCsvRow.Add(docTypeCodeRu); // doc type code RU trmCsvRow.Add(docTypeCodeEn); // doc type code EN trmCsvRow.Add(null); // doc date trmCsvRow.Add(Rev); // rev trmCsvRow.Add(Status); // status trmCsvRow.Add("CPECC"); // originator trmCsvRow.Add("0055"); // contract number trmCsvRow.Add("Joint-Stock Company\"ARMO - GROUP\""); //vendor trmCsvRow.Add(null); // PO NO trmCsvRow.Add("4 - ГПЗ"); // work phase trmCsvRow.Add(fn.subPhase); // work sub-phase trmCsvRow.Add(null); // subproject code trmCsvRow.Add(null); // operation complex RU trmCsvRow.Add(null); // operation complex EN trmCsvRow.Add(null); // start complex RU trmCsvRow.Add(null); // start complex EN trmCsvRow.Add(null); // title object RU trmCsvRow.Add(null); // title object EN trmCsvRow.Add(null); // title number RU trmCsvRow.Add(null); // title number EN trmCsvRow.Add(sectionRu); // package name RU trmCsvRow.Add(sectionEn); // package name EN trmCsvRow.Add(null); //sequence number trmCsvRow.Add(null); // doc class code trmCsvRow.Add(null); // discip RU trmCsvRow.Add(null); // discip EN trmCsvRow.Add(null); //construction contractor trmCsvRow.Add(null); // construction type trmCsvRow.Add(fn.countSheets); // count of sheets trmCsvRow.Add("1"); //sheet number trmCsvRow.Add(null); //number of copies trmCsvRow.Add(null); //ACRS trmCsvRow.Add(null); //status ACRS trmCsvRow.Add(null); //PEM trmCsvRow.Add(null); //equipment tag trmCsvRow.Add(fn.lang); // language trmCsvRow.Add(fn.formatPages); // format trmCsvRow.Add(null); //review code trmCsvRow.Add(transmitNumber); // incomming transmittal N trmCsvRow.Add(null); //old transmittal N trmCsvRow.Add("Latest"); // doc status trmCsvRow.Add("00.Holding Folder"); //storage path trmCsvRow.Add(fn.electronicFilename); //content trmCsvRow.Add(fn.nativeStatus); //rendition name trmCsvRow.Add(fn.nativeName); //rendition file trmCsvRow.Add(null); //link to trmCsvRow.Add(null); //stamped for construction } dataTrmCsv.Add(trmCsvRow); } return(dataTrmCsv); }
public List <List <string> > dataCrs(List <FileInfo> filesInfo, string _status, string _rev) { List <List <string> > dataCrs = new List <List <string> >(); WritterReader writterReader = new WritterReader(); //путь к VRD string pathToVDR = new GetPathsToTemplates().getPathsToTemplates()[0]; List <List <string> > vdrData = writterReader.Read(pathToVDR, "VDR"); foreach (FileInfo fn in filesInfo) { //string excelDocName = Regex.Replace(f[0], ".pdf", "_CRS.xlsx", RegexOptions.IgnoreCase); string excelDocName = String.Format("{0}_{1}_{2}_CRS.xlsx", fn.shortName, fn.rev, fn.lang); List <string> vdrDataRow = vdrData.FirstOrDefault(x => x[28].Contains(fn.shortName)); //Rev string Rev; if (_rev != null && _rev.Trim() != "") { Rev = _rev; } else { Rev = fn.rev; } //Status string Status = null; if (_status != null && _status.Trim() != "") { Status = _status; } else if (vdrDataRow != null) { Status = vdrDataRow[33]; } List <string> crsRow = new List <string>(); if (vdrDataRow != null) { string docTitle = String.Format("{0} / {1}", vdrDataRow[30], vdrDataRow[29]); crsRow.Add(excelDocName); // excel name crsRow.Add(Status); // status crsRow.Add(vdrDataRow[27]); // doc No crsRow.Add(vdrDataRow[15]); // doc class crsRow.Add(docTitle); // doc title RU/EN crsRow.Add(Rev); // rev } else { crsRow.Add(excelDocName); // excel name crsRow.Add(Status); // status crsRow.Add(fn.gcDocN); // doc No crsRow.Add(null); // doc class crsRow.Add(null); // doc title RU/EN crsRow.Add(Rev); // rev } dataCrs.Add(crsRow); } return(dataCrs); }