/// <summary> /// Получить последнюю позицию вагона по указоному id пути положения парка /// </summary> /// <param name="context"></param> /// <param name="id_park_state_way"></param> /// <returns></returns> public int GetLastPositionOfWay(ref EFDbContext context, int id_park_state_way) { try { // Проверка контекста if (context == null) { context = new EFDbContext(); } EFParkState_Wagon ef_pswag = new EFParkState_Wagon(context); ParkState_Wagon wagon = ef_pswag.Context.Where(w => w.id_park_state_way == id_park_state_way).OrderByDescending(c => c.position).FirstOrDefault(); return(wagon != null ? wagon.position : 0); } catch (Exception e) { e.ExceptionMethodLog(String.Format("GetLastPositionOfWay(context={0}, id_park_state_way={1})", context, id_park_state_way), servece_owner, this.eventID); return(-1); } }
/// <summary> /// Добавить вагон /// </summary> /// <param name="context"></param> /// <param name="id_park_state_way"></param> /// <param name="num"></param> /// <param name="position"></param> /// <param name="user"></param> /// <returns></returns> public int OperationUpdateWagonParkState(ref EFDbContext context, int id_park_state_way, int num, int position, string user) { try { // Проверка контекста if (context == null) { context = new EFDbContext(); } // Проверим и скорректируем пользователя if (String.IsNullOrWhiteSpace(user)) { user = System.Environment.UserDomainName + @"\" + System.Environment.UserName; } EFParkState_Way ef_psw = new EFParkState_Way(context); //EFParkState_Wagon ef_pswag = new EFParkState_Wagon(context); ParkState_Way way = ef_psw.Context.Where(w => w.id == id_park_state_way).FirstOrDefault(); if (way == null) { return((int)errors_base.not_way_park_station_station_of_db); // Ошибка, в базе данных нет строки положения парка по станции } ParkState_Wagon wagon = new ParkState_Wagon() { id = 0, id_park_state_way = id_park_state_way, num = num, position = position, note = null, create = DateTime.Now, create_user = user, }; way.ParkState_Wagon.Add(wagon); return(1); } catch (Exception e) { e.ExceptionMethodLog(String.Format("OperationDeleteParkState(context={0}, id_park_state_way={1}, num={2}, position={3}, user={4})", context, id_park_state_way, num, position, user), servece_owner, this.eventID); return((int)errors_base.global);// Ошибка } }