/// <summary> /// Записать код ж.д. в указаный диапазон станций Code_InternalRailroad.StationsCodes /// </summary> /// <param name="cir"></param> private void SetInternalRailroad(Code_InternalRailroad cir) { string[] arrayCodes = cir.StationsCodes.Split(';'); foreach (string Codes in arrayCodes) { if (!String.IsNullOrWhiteSpace(Codes)) { string[] arraywhere = Codes.Replace("–", "-").Split('-'); switch (arraywhere.Count()) { case 0: break; case 1: SetIRToStation(cir.IDInternalRailroad, int.Parse(arraywhere[0])); break; case 2: SetIRToStation(cir.IDInternalRailroad, int.Parse(arraywhere[0]), int.Parse(arraywhere[1])); break; default: break; } } } }
protected int GetResultZHI_XDS(string codes, string result) { result = GetResultString(result); int n = 0; string[] codeArr2 = GetCodeString2(codes); foreach (string item in codeArr2) { if (item.Equals(result)) { if (Change) { bool ChangeOk = true; int temp = int.Parse(codeArr2[0]); string tempcode = string.Empty; do { temp++; int flag = result.Length - temp.ToString().Length; if (flag == 0) { tempcode = temp.ToString(); } if (flag > 0) { string sflag = string.Empty; for (int i = 0; i < flag; i++) { sflag += "0"; } tempcode = sflag + temp.ToString(); } if (flag < 0) { ChangeOk = false; break; } }while (codeArr2.Contains(tempcode)); if (false == ChangeOk) { ChangeOk = true; temp = int.Parse(codeArr2[0]); do { temp--; int flag = result.Length - temp.ToString().Length; if (flag == 0) { tempcode = temp.ToString(); } if (flag > 0) { string sflag = string.Empty; for (int i = 0; i < flag; i++) { sflag += "0"; } tempcode = sflag + temp.ToString(); } if (temp == -1) { ChangeOk = false; break; } }while (codeArr2.Contains(tempcode)); } if (ChangeOk) { string[] changeCodeTemp = GetCodeString2(Codes.Replace(item, tempcode)); CodeChange = string.Empty; foreach (var item2 in changeCodeTemp.OrderBy(p => p)) { CodeChange += item2 + "&"; } CodeChange = CodeChange.Substring(0, CodeChange.Length - 1); UserCode = UserCode.Split(' ')[0] + " " + CodeChange.Replace('&', '|'); } else { return(1); } return(0); } else { n++; } } } return(n); }
protected virtual string GetCodeString() { return(Codes.Replace("&", string.Empty)); }