public static int Save(DAO.Analyse analyse) { int executeResult = 0; executeResult = DAL.Barcodestore.P_Barcode_Upsert(analyse.AnalyseId, analyse.TimeStamp, analyse.InformationSet.ParserIOVersion, analyse.Barcode, analyse.InformationSet.SymbologyID, analyse.InformationSet.Type, analyse.InformationSet.SubType, analyse.InformationSet.NaSIdParamName, analyse.InformationSet.ContainsOrMayContainId, analyse.InformationSet.Identifiers, analyse.InformationSet.ACL, analyse.InformationSet.ADDITIONALID, analyse.InformationSet.BESTBEFORE, analyse.InformationSet.CIP, analyse.InformationSet.CONTENT, analyse.InformationSet.COUNT, analyse.InformationSet.CUSTPARTNO, analyse.InformationSet.EAN, analyse.InformationSet.Expiry, analyse.InformationSet.Family, analyse.InformationSet.GTIN, analyse.InformationSet.INTERNAL_90, analyse.InformationSet.INTERNAL_91, analyse.InformationSet.INTERNAL_92, analyse.InformationSet.INTERNAL_93, analyse.InformationSet.INTERNAL_94, analyse.InformationSet.INTERNAL_95, analyse.InformationSet.INTERNAL_96, analyse.InformationSet.INTERNAL_97, analyse.InformationSet.INTERNAL_98, analyse.InformationSet.INTERNAL_99, analyse.InformationSet.LIC, analyse.InformationSet.Lot, analyse.InformationSet.LPP, analyse.InformationSet.NaS7, analyse.InformationSet.NormalizedBESTBEFORE, analyse.InformationSet.NormalizedExpiry, analyse.InformationSet.NormalizedPRODDATE, analyse.InformationSet.PCN, analyse.InformationSet.PRODDATE, analyse.InformationSet.Quantity, analyse.InformationSet.Reference, analyse.InformationSet.Serial, analyse.InformationSet.SSCC, analyse.InformationSet.StorageLocation, analyse.InformationSet.UDI, analyse.InformationSet.UoM, analyse.InformationSet.UPN, analyse.InformationSet.VARCOUNT, analyse.InformationSet.VARIANT, analyse.InformationSet.AdditionalInformation, analyse.Commentary); return(executeResult); }
public static List <Variance> DetailedCompare <T>(this T master, T toCheck, int analyseId) { List <Variance> variances = new List <Variance>(); PropertyInfo[] pi = master.GetType().GetProperties(); DAO.Analyse temp = new DAO.Analyse(); foreach (PropertyInfo f in pi) { Variance v = new Variance(); v.analyseId = analyseId; v.propertyName = f.Name; v.masterValue = f.GetValue(master); v.checkedValue = f.GetValue(toCheck); if (!v.masterValue.Equals(v.checkedValue)) { variances.Add(v); } } return(variances); }
static void Main(string[] args) { string workingFolder = "C:\\ParserIO\\"; string dateTime = DateTime.Now.ToString("yyyymmddhhmmss"); string masterFileName = workingFolder + "Barcodestore_master_20160926155425.xml"; string sourceFileName = workingFolder + "Barcodestore_dll_20165426035448.xml"; string outputFileName = workingFolder + "BenchmarkCompare_" + dateTime + ".txt"; DAO.Barcodestore result = new DAO.Barcodestore(); XmlSerializer deserializer = new XmlSerializer(typeof(DAO.Barcodestore)); TextReader reader = new StreamReader(masterFileName); object obj = deserializer.Deserialize(reader); DAO.Barcodestore bcs = (DAO.Barcodestore)obj; reader.Close(); reader = new StreamReader(sourceFileName); obj = deserializer.Deserialize(reader); DAO.Barcodestore toCompare = (DAO.Barcodestore)obj; reader.Close(); StreamWriter writetext = new StreamWriter(outputFileName); writetext.WriteLine("ParserIO.Benchmark.Compare"); writetext.WriteLine(DateTime.Now.ToString()); writetext.WriteLine(masterFileName); writetext.WriteLine(sourceFileName); writetext.WriteLine("Id" + "\t" + "Property" + "\t" + "MasterValue" + "\t" + "CheckedValue"); int analysesVarianceCount = 0; foreach (DAO.Analyse masterItem in bcs.Analyses) { int analyseIdMaster = masterItem.AnalyseId; DAO.Analyse toCompareAnalyse = (from x in toCompare.Analyses where x.AnalyseId == analyseIdMaster select x).FirstOrDefault(); List <Variance> varianceList = new List <Variance>(); varianceList = Common.DetailedCompare(masterItem.InformationSet, toCompareAnalyse.InformationSet, analyseIdMaster); if (varianceList.Count != 0) { analysesVarianceCount++; foreach (Variance var in varianceList) { writetext.WriteLine(var.analyseId.ToString() + "\t" + analyseIdMaster.ToString() + "\t" + var.propertyName + "\t" + var.masterValue + "\t" + var.checkedValue); } writetext.WriteLine(""); } } writetext.WriteLine("MasterFile Quantity Analyses : " + bcs.Analyses.Count.ToString()); writetext.WriteLine("Variance Quantity Analyses : " + analysesVarianceCount.ToString()); writetext.WriteLine("End"); writetext.Flush(); }
public static List <DAO.Analyse> List() { List <DAO.Analyse> result = new List <DAO.Analyse>(); DataSet dsResult = new DataSet(); dsResult = DAL.Barcodestore.P_Barcode_List(); DataTable dtResult = new DataTable(); dtResult = dsResult.Tables[0]; foreach (DataRow dr in dtResult.Rows) { DAO.Analyse item = new DAO.Analyse(); item.AnalyseId = Convert.ToInt32(dr["AnalyseId"]); item.TimeStamp = Convert.ToDateTime(dr["TimeStamp"]); item.InformationSet.ParserIOVersion = dr["ParserIOVersion"].ToString(); item.Barcode = dr["Barcode"].ToString(); item.Commentary = dr["Commentary"].ToString(); item.InformationSet.SymbologyID = dr["SymbologyID"].ToString(); item.InformationSet.SymbologyIDDesignation = dr["SymbologyIDDesignation"].ToString(); item.InformationSet.Type = dr["Type"].ToString(); item.InformationSet.SubType = dr["SubType"].ToString(); item.InformationSet.ContainsOrMayContainId = Convert.ToBoolean(Convert.ToInt32(dr["containsOrMayContainId"])); // Convert.ToBoolean(Convert.ToInt32("1")); // item.InformationSet.ACL = dr["ACL"].ToString(); item.InformationSet.ADDITIONALID = dr["ADDITIONALID"].ToString(); item.InformationSet.BESTBEFORE = dr["BESTBEFORE"].ToString(); item.InformationSet.CIP = dr["CIP"].ToString(); item.InformationSet.Company = ""; // dr["Company"].ToString(); //Obsolete item.InformationSet.CONTENT = dr["CONTENT"].ToString(); item.InformationSet.COUNT = dr["COUNT"].ToString(); item.InformationSet.CUSTPARTNO = dr["CUSTPARTNO"].ToString(); item.InformationSet.EAN = dr["EAN"].ToString(); item.InformationSet.Expiry = dr["Expiry"].ToString(); item.InformationSet.Family = dr["Family"].ToString(); item.InformationSet.GTIN = dr["GTIN"].ToString(); item.InformationSet.INTERNAL_90 = dr["INTERNAL_90"].ToString(); item.InformationSet.INTERNAL_91 = dr["INTERNAL_91"].ToString(); item.InformationSet.INTERNAL_92 = dr["INTERNAL_92"].ToString(); item.InformationSet.INTERNAL_93 = dr["INTERNAL_93"].ToString(); item.InformationSet.INTERNAL_94 = dr["INTERNAL_94"].ToString(); item.InformationSet.INTERNAL_95 = dr["INTERNAL_95"].ToString(); item.InformationSet.INTERNAL_96 = dr["INTERNAL_96"].ToString(); item.InformationSet.INTERNAL_97 = dr["INTERNAL_97"].ToString(); item.InformationSet.INTERNAL_98 = dr["INTERNAL_98"].ToString(); item.InformationSet.INTERNAL_99 = dr["INTERNAL_99"].ToString(); item.InformationSet.LIC = dr["LIC"].ToString(); item.InformationSet.Lot = dr["Lot"].ToString(); item.InformationSet.LPP = dr["LPP"].ToString(); item.InformationSet.NaS7 = dr["NaS7"].ToString(); item.InformationSet.NaSIdParamName = dr["NaSIdParamName"].ToString(); item.InformationSet.NormalizedBESTBEFORE = dr["NormalizedBESTBEFORE"].ToString(); item.InformationSet.NormalizedExpiry = dr["NormalizedExpiry"].ToString(); item.InformationSet.NormalizedPRODDATE = dr["NormalizedPRODDATE"].ToString(); item.InformationSet.PCN = dr["PCN"].ToString(); item.InformationSet.PRODDATE = dr["PRODDATE"].ToString(); item.InformationSet.Product = ""; // dr["Product"].ToString(); //Obsolete item.InformationSet.Quantity = dr["Quantity"].ToString(); item.InformationSet.Reference = dr["Reference"].ToString(); item.InformationSet.Serial = dr["Serial"].ToString(); item.InformationSet.SSCC = dr["SSCC"].ToString(); item.InformationSet.StorageLocation = dr["StorageLocation"].ToString(); item.InformationSet.UDI = dr["UDI"].ToString(); item.InformationSet.UoM = dr["UoM"].ToString(); item.InformationSet.UPN = dr["UPN"].ToString(); item.InformationSet.VARCOUNT = dr["VARCOUNT"].ToString(); item.InformationSet.VARIANT = dr["VARIANT"].ToString(); item.InformationSet.AdditionalInformation = dr["AdditionalInformation"].ToString(); //Identifiers string IdentifiersRawList = dr["Identifiers"].ToString(); if (IdentifiersRawList.Length > 0) { int count = IdentifiersRawList.Split('@').Length; string[] IdentifiersSplitList = new string[count]; IdentifiersSplitList = IdentifiersRawList.Split('@'); foreach (string x in IdentifiersSplitList) { item.InformationSet.Identifiers.Add(new Identifier { Value = x }); } } result.Add(item); } return(result); }
static void Main(string[] args) { Provider value = Provider.dll; string workingFolder = "C:\\ParserIO\\"; string sourceFileName = workingFolder + "Barcodestore_master_20160926155425.xml"; string outputFileName = workingFolder + "Barcodestore_" + value + "_" + DateTime.Now.ToString("yyyymmddhhmmss") + ".xml"; StreamReader source; XmlDocument document; XmlNodeList analyses; source = new StreamReader(sourceFileName, Encoding.UTF8); document = new XmlDocument(); document.Load(source); DAO.Barcodestore bcs = new DAO.Barcodestore(); bcs.Version = DateTime.Now.ToString("yyyymmddhhmm"); bcs.ProviderName = value.ToString(); bcs.Analyses = new List <DAO.Analyse>(); analyses = document.GetElementsByTagName("Analyse"); foreach (XmlElement sourceAnalyse in analyses) { DAO.Analyse x = new DAO.Analyse(); DAO.InformationSet targetAnalyse = new DAO.InformationSet(); x.AnalyseId = Convert.ToInt32(sourceAnalyse.GetElementsByTagName("AnalyseId")[0].InnerText); x.TimeStamp = Convert.ToDateTime(sourceAnalyse.GetElementsByTagName("TimeStamp")[0].InnerText); x.Barcode = sourceAnalyse.GetElementsByTagName("Barcode")[0].InnerText; x.Commentary = sourceAnalyse.GetElementsByTagName("Commentary")[0].InnerText; if (value == Provider.dll) { Core.Functions client = new Core.Functions(); targetAnalyse = client.GetFullInformationSet(x.Barcode); } else if (value == Provider.ws) { //todo } else if (value == Provider.wcf) { //todo } else if (value == Provider.webapi) { targetAnalyse = Tools.Common.Wrapper(x.Barcode); } else if (value == Provider.fdagudid) { //todo } x.InformationSet.Type = targetAnalyse.Type; x.InformationSet.SubType = targetAnalyse.SubType; x.InformationSet.executeResult = targetAnalyse.executeResult; x.InformationSet.ACL = targetAnalyse.ACL; x.InformationSet.ADDITIONALID = targetAnalyse.ADDITIONALID; x.InformationSet.BESTBEFORE = targetAnalyse.BESTBEFORE; x.InformationSet.CIP = targetAnalyse.CIP; x.InformationSet.Company = targetAnalyse.Company; x.InformationSet.ContainsOrMayContainId = targetAnalyse.ContainsOrMayContainId; x.InformationSet.CONTENT = targetAnalyse.CONTENT; x.InformationSet.COUNT = targetAnalyse.COUNT; x.InformationSet.EAN = targetAnalyse.EAN; x.InformationSet.Expiry = targetAnalyse.Expiry; x.InformationSet.Family = targetAnalyse.Family; x.InformationSet.GTIN = targetAnalyse.GTIN; x.InformationSet.INTERNAL_91 = targetAnalyse.INTERNAL_91; x.InformationSet.INTERNAL_92 = targetAnalyse.INTERNAL_92; x.InformationSet.INTERNAL_93 = targetAnalyse.INTERNAL_93; x.InformationSet.INTERNAL_94 = targetAnalyse.INTERNAL_94; x.InformationSet.INTERNAL_95 = targetAnalyse.INTERNAL_95; x.InformationSet.INTERNAL_96 = targetAnalyse.INTERNAL_96; x.InformationSet.INTERNAL_97 = targetAnalyse.INTERNAL_97; x.InformationSet.INTERNAL_98 = targetAnalyse.INTERNAL_98; x.InformationSet.INTERNAL_99 = targetAnalyse.INTERNAL_99; x.InformationSet.LIC = targetAnalyse.LIC; x.InformationSet.Lot = targetAnalyse.Lot; x.InformationSet.LPP = targetAnalyse.LPP; x.InformationSet.NaS7 = targetAnalyse.NaS7; x.InformationSet.NaSIdParamName = targetAnalyse.NaSIdParamName; x.InformationSet.NormalizedBESTBEFORE = targetAnalyse.NormalizedBESTBEFORE; x.InformationSet.NormalizedExpiry = targetAnalyse.NormalizedExpiry; x.InformationSet.NormalizedPRODDATE = targetAnalyse.NormalizedPRODDATE; x.InformationSet.PCN = targetAnalyse.PCN; x.InformationSet.PRODDATE = targetAnalyse.PRODDATE; x.InformationSet.Product = targetAnalyse.Product; x.InformationSet.Quantity = targetAnalyse.Quantity; x.InformationSet.Reference = targetAnalyse.Reference; x.InformationSet.Serial = targetAnalyse.Serial; x.InformationSet.SSCC = targetAnalyse.SSCC; x.InformationSet.SymbologyID = targetAnalyse.SymbologyID; x.InformationSet.UDI = targetAnalyse.UDI; x.InformationSet.UoM = targetAnalyse.UoM; x.InformationSet.UPN = targetAnalyse.UPN; x.InformationSet.VARCOUNT = targetAnalyse.VARCOUNT; x.InformationSet.VARIANT = targetAnalyse.VARIANT; x.InformationSet.AdditionalInformation = targetAnalyse.AdditionalInformation; bcs.Analyses.Add(x); Console.WriteLine(x.AnalyseId); } using (StreamWriter myWriter = new StreamWriter(outputFileName, false)) { XmlSerializer mySerializer = new XmlSerializer(typeof(DAO.Barcodestore), new XmlRootAttribute("Barcodestore")); mySerializer.Serialize(myWriter, bcs); } }