Beispiel #1
0
		public async Task<HttpResponseMessage> UpdateMiscValue(Misc misc)
		{
			if (!ModelState.IsValid)
			{
				return Request.CreateErrorResponse(HttpStatusCode.BadRequest, ModelState);
			}

			if (_repMisc.GetAll().Any(m => m.MiscValue == misc.MiscValue && m.MiscId == misc.MiscId))
			{
				return Request.CreateErrorResponse(HttpStatusCode.BadRequest, "В этом словаре уже используется данное значение.");
			}

			var miscDb = await _repMisc.FindAsync(m => m.Id == misc.Id);

			if (miscDb == null)
			{
				return Request.CreateResponse(HttpStatusCode.NotFound);
			}

			miscDb.MiscValue = misc.MiscValue;

			await _repMisc.UpdateAsync(miscDb);

			return Request.CreateResponse(HttpStatusCode.NoContent);
		}
Beispiel #2
0
 private Misc GetOrCreateMisc(MiscName miskName, string value)
 {
     var misc = _db.Misc.SingleOrDefault(m => m.MiscId == miskName.Id && m.MiscValue == value);
     if (misc == null)
     {
         misc = new Misc
         {
             MiscId = miskName.Id,
             MiscValue = value
         };
         _db.Misc.Add(misc);
         _db.SaveChanges();
     }
     return misc;
 }
Beispiel #3
0
		public async Task<HttpResponseMessage> CreateMiscValue(Misc misc)
		{
			if (!ModelState.IsValid)
			{
				return Request.CreateErrorResponse(HttpStatusCode.BadRequest, ModelState);
			}

			if (!_repMiscNames.GetAll().Any(m => m.Id == misc.MiscId))
			{
				return Request.CreateErrorResponse(HttpStatusCode.NotFound, "Родительский словарь не найден.");
			}

			if (_repMisc.GetAll().Any(m => m.MiscValue == misc.MiscValue && m.MiscId == misc.MiscId))
			{
				return Request.CreateErrorResponse(HttpStatusCode.BadRequest, "В этом словаре уже используется данное значение.");
			}

			await _repMisc.AddAsync(misc);

			return Request.CreateResponse(HttpStatusCode.OK, misc);
		}
Beispiel #4
0
        private Misc GetOrCreateMisc(int? miskParentId, string value)
        {
            value = NormalizeString(value, false);

            var misc = _db.Misc.SingleOrDefault(m => m.MiscId == miskParentId && m.MiscValue == value);
            if (misc == null)
            {
                misc = new Misc
                {
                    MiscId = (int)miskParentId,
                    MiscValue = value
                };
                _db.Misc.Add(misc);
                _db.SaveChanges();
            }
            return misc;
        }