public static cashUnit.wfsCmdCimCashIn parseCmdCimCashInObject(Form1.spLogBuff spLogLine) { cashUnit.wfsCmdCimCashIn wfsCmdCimCashInObject = new cashUnit.wfsCmdCimCashIn(); cashUnit.lppNoteNumber lppNoteNumberObject = new cashUnit.lppNoteNumber(); List <cashUnit.lppNoteNumber> lppNoteNumberObjectList = new List <cashUnit.lppNoteNumber>(); cashUnit.lppNoteNumberList lppNoteNumberList = new cashUnit.lppNoteNumberList(); string[] stringSeparators = new string[] { "\r\n" }; char[] charSeperators = new char[] { ':', ',', '\t', '[', ']' }; string[] cuParsedArray = spLogLine.csInfo.Split(stringSeparators, StringSplitOptions.None); int index = 0; foreach (string str in cuParsedArray) { if (str.Contains("usNumOfNoteNumbers = [")) { lppNoteNumberList.usNumOfNoteNumbers = Convert.ToInt16(str.Split(charSeperators)[1]); } else if (str.Contains("lppNoteNumber[")) { lppNoteNumberObject.usNoteID = cuParsedArray[index + 2].Split(charSeperators)[1]; lppNoteNumberObject.ulCount = Convert.ToInt16(cuParsedArray[index + 3].Split(charSeperators)[1]); lppNoteNumberObjectList.Add(lppNoteNumberObject); } index++; } cashUnit.lppNoteNumber[] lppNoteMuberArray = lppNoteNumberObjectList.ToArray(); lppNoteNumberList.lppNoteNumberStructArray = lppNoteMuberArray; wfsCmdCimCashInObject.lppNoteNumberListStruct = lppNoteNumberList; return(wfsCmdCimCashInObject); }
public static List <cashUnit.lppCashIn> parseStringCashInEnd(Form1.spLogBuff cdmCULine) { List <cashUnit.lppCashIn> lppCashInObjectArray = new List <cashUnit.lppCashIn>(); string[] stringSeparators = new string[] { "\r\n" }; string[] cuParsedArray = cdmCULine.csInfo.Split(stringSeparators, StringSplitOptions.None); //usCount - kaç tane lppCashIn objesi olduğu, kaç tane kasetin sayacı değişti string usNumberFromcdmCULine = parseOperations.extractFromCdmCuLine(cuParsedArray, "usCount"); short usCountValue = Convert.ToInt16(splitString(usNumberFromcdmCULine)); //lppCashIn cashUnit.lppCashIn lppCashInObject = new cashUnit.lppCashIn(); int lppCashInIndex = 0; List <int> indexLppCashIn = new List <int>(); foreach (string str in cuParsedArray) { if (str.Contains("lppCashIn[")) { indexLppCashIn.Add(lppCashInIndex + 2); } else { } lppCashInIndex++; } //cashUnitCIM.lppPhysical lppPhysicalObject = new cashUnitCIM.lppPhysical(); //List<cashUnitCIM.lppPhysical> lppPhysicalObjectList = new List<cashUnitCIM.lppPhysical>(); //foreach (string str in cuParsedArray) //{ // if (str.Contains("lppCashIn[")) // { // indexLppCashIn.Add(lppCashInIndex + 2); // } // lppCashInIndex++; //} //how many lppNoteNumber are there, and create a lppNoteNumberArray with length List <string> usNumberListcdmCULine = parseOperations.extractFromCdmCuLineArray(cuParsedArray, "usNumOfNoteNumbers = ["); List <int> usNumberListValue = new List <int>(); foreach (string str in usNumberListcdmCULine) { usNumberListValue.Add(Convert.ToInt16(splitString(str))); } int usNumOfNotesTotal = 0; foreach (int i in usNumberListValue) { usNumOfNotesTotal += i; } cashUnit.lppNoteNumber[] lppNoteNumberArray = new cashUnit.lppNoteNumber[usNumOfNotesTotal]; int usNumOfNoteNumbersIndex = 0; List <int> indexUsNumOfNoteNumbers = new List <int>(); foreach (string str in cuParsedArray) { if (str.Contains("lppNoteNumber[")) { indexUsNumOfNoteNumbers.Add(usNumOfNoteNumbersIndex + 2); } usNumOfNoteNumbersIndex++; } for (int i = 0; i < indexLppCashIn.Count; i++) { int index = indexLppCashIn[i]; string[] croppedArray = new string[17]; Array.Copy(cuParsedArray, index, croppedArray, 0, 17); lppCashInObject.usNumber = Convert.ToInt16(splitString(croppedArray[0])); lppCashInObject.fwType = splitString(croppedArray[1]); lppCashInObject.fwItemType = splitString(croppedArray[2]); lppCashInObject.cUnitID = splitString(croppedArray[3]); lppCashInObject.cUnitIDHex = splitStringHexArray(croppedArray[4]); lppCashInObject.cCurrencyID = splitString(croppedArray[5]); lppCashInObject.cCurrencyIDHex = splitStringHexArray(croppedArray[6]); lppCashInObject.ulValues = Convert.ToUInt16(splitString(croppedArray[7])); lppCashInObject.ulCashInCount = Convert.ToUInt16(splitString(croppedArray[8])); lppCashInObject.ulCount = Convert.ToUInt16(splitString(croppedArray[9])); lppCashInObject.ulMaximum = Convert.ToUInt16(splitString(croppedArray[10])); lppCashInObject.usStatus = splitString(croppedArray[11]); lppCashInObject.bAppLock = Convert.ToBoolean(splitString(croppedArray[12])); lppCashInObject.requestId = requestIdOperations.findRequestID(cdmCULine); lppCashInObject.lppNoteNumberListStruct.usNumOfNoteNumbers = Convert.ToInt16(splitString(croppedArray[15])); lppCashInObject.lppCashInDateTime = parseOperations.extractDateTimeFromSpLogLine(cdmCULine); //for (int numOfNotesIndexValue = 0; numOfNotesIndexValue < lppCashInObject.lppNoteNumberListStruct.usNumOfNoteNumbers; numOfNotesIndexValue++) //{ //lppNoteNumber[] noteDetail = returnNoteDetails(index + 21, lppCashInObject.lppNoteNumberListStruct.usNumOfNoteNumbers, cuParsedArray, indexUsNumOfNoteNumbers); lppCashInObject.lppNoteNumberListStruct.lppNoteNumberStructArray = cashUnit.returnNoteDetails(index + 21, lppCashInObject.lppNoteNumberListStruct.usNumOfNoteNumbers, cuParsedArray, indexUsNumOfNoteNumbers); //} lppCashInObjectArray.Add(lppCashInObject); } return(lppCashInObjectArray); }