public async Task <IActionResult> Put(int id, MeasureDeviceView view) { var device = await db.MeasureDevices.GetAsync(id); if (device == null) { return(NotFound(id)); } var measurementType = await db.MeasurementTypes.GetAsync(view.MeasurementTypeId); if (measurementType == null) { return(NotFound(view.MeasurementTypeId)); } var measureDeviceType = await db.MeasureDeviceTypes.GetAsync(view.MeasureDeviceTypeId); if (measureDeviceType == null) { return(NotFound(view.MeasureDeviceTypeId)); } var mapper = new MapperConfiguration(cfg => cfg.CreateMap <MeasureDeviceView, MeasureDevice>() .ForMember("Id", opt => opt.Ignore()) ).CreateMapper(); var deviceUp = mapper.Map <MeasureDeviceView, MeasureDevice>(view); db.MeasureDevices.Update(deviceUp); await db.SaveAsync(); return(Ok(deviceUp)); }
public async Task <IActionResult> Post(MeasureDeviceView view) { if (!ModelState.IsValid) { return(BadRequest(ModelState)); } var measurementType = await db.MeasurementTypes.GetAsync(view.MeasurementTypeId); if (measurementType == null) { return(NotFound(view.MeasurementTypeId)); } var measureDeviceType = await db.MeasureDeviceTypes.GetAsync(view.MeasureDeviceTypeId); if (measureDeviceType == null) { return(NotFound(view.MeasureDeviceTypeId)); } var device = new MeasureDevice() { AllowedByCat = view.AllowedByCat, AllowedByClass = view.AllowedByClass, AllowedByRandom = view.AllowedByRandom, MDProducer = view.MDProducer, MDProductionDate = view.MDProductionDate, MeasureDeviceTypeId = view.MeasureDeviceTypeId, MeasurementTypeId = view.MeasurementTypeId, MeasurmentRange = view.MeasurmentRange, Name = view.Name, Number = view.Number, QualifiedName = view.QualifiedName, VerificationGap = view.VerificationGap, VerificationProc = view.VerificationProc }; await db.MeasureDevices.AddAsync(device); await db.SaveAsync(); return(CreatedAtAction("Get", new { id = device.Id }, device)); }