Esempio n. 1
0
        public async Task <int> UpdateByIdAsync(int alarmMessageId, AlarmMessageUpdateModel mAlarmMessage)
        {
            var alarmMessage = _context.AlarmMessages.FirstOrDefault(c => c.AlarmMessageId == alarmMessageId);

            if (alarmMessage == null)
            {
                throw new ExpectException("Could not find data which AlarmMessageId equal to " + alarmMessageId);
            }

            //ErrorCode must be unique
            var checkData = await _context.AlarmMessages
                            .Where(c => c.ErrorCode == mAlarmMessage.ErrorCode &&
                                   c.AlarmMessageId != alarmMessageId).ToListAsync();

            if (checkData.Count > 0)
            {
                throw new ExpectException("The data which ErrorCode equal to " + mAlarmMessage.ErrorCode + " already exist in system");
            }



            alarmMessage.ErrorCode = mAlarmMessage.ErrorCode;
            alarmMessage.Message   = mAlarmMessage.Message;

            await _context.SaveChangesAsync();

            return(alarmMessage.AlarmMessageId);
        }
        public async Task <IActionResult> UpdateAsync(int id, [FromBody] AlarmMessageUpdateModel mAlarmMessage)
        {
            if (!ModelState.IsValid)
            {
                return(HttpBadRequest(ModelStateError()));
            }

            var alarmMessageId = await _alarmMessageRepository.UpdateByIdAsync(id, mAlarmMessage);

            return(CreatedAtRoute("GetByAlarmMessageIdAsync", new { controller = "AlarmMessages", alarmMessageId = alarmMessageId }, mAlarmMessage));
        }