public async Task <IActionResult> EditSetting([FromBody] AddSettingRequest request) { string method = nameof(EditSetting); LogHandler.LogMethod(LogHandler.EventType.Call, Logger, method, request); SingleResponse <object> response = new SingleResponse <object>(); try { if (!request.CheckValidation(response)) { return(response.ToHttpResponse(Logger, method)); } var entity = request.ToEntity(true); var existingEntity = await DbContext.GetSetting(entity); if (existingEntity == null) { response.ErrorCode = (int)ErrorHandler.ErrorCode.NoContent; return(response.ToHttpResponse(Logger, method)); } existingEntity.type = entity.type; existingEntity.key = entity.key; existingEntity.value = entity.value; existingEntity.status = entity.status; int save = await DbContext.SaveChangesAsync(); if (save == 0) { response.ErrorCode = (int)ErrorHandler.ErrorCode.DbSaveNotDone; return(response.ToHttpResponse(Logger, method)); } var entity_list = new List <Setting> { entity } .Select(x => new { x.id, x.create_date, x.creator_id, x.type, x.key, x.value, x.status }).First(); response.Model = entity_list; response.ErrorCode = (int)ErrorHandler.ErrorCode.OK; } catch (Exception ex) { LogHandler.LogError(Logger, response, method, ex); } return(response.ToHttpResponse(Logger, method)); }
public async Task <IActionResult> AddSetting([FromBody] AddSettingRequest request) { string method = nameof(AddSetting); LogHandler.LogMethod(LogHandler.EventType.Call, Logger, method, request); SingleResponse <object> response = new SingleResponse <object>(); try { if (!request.CheckValidation(response)) { return(response.ToHttpResponse(Logger, method)); } var user = request.ToEntity(); if (user.type == SettingType.AnnualProfit) { var existingEntity = DbContext.GetSettings(null, user.type); if (existingEntity?.Count() > 0) { response.ErrorCode = (int)ErrorHandler.ErrorCode.AddRepeatedEntity; return(response.ToHttpResponse(Logger, method)); } } DbContext.Add(user); int save = await DbContext.SaveChangesAsync(); if (save == 0) { response.ErrorCode = (int)ErrorHandler.ErrorCode.DbSaveNotDone; return(response.ToHttpResponse(Logger, method)); } var entity_list = new List <Setting> { user } .Select(x => new { x.id, x.create_date, x.creator_id, x.type, x.key, x.value, x.status }).First(); response.Model = entity_list; response.ErrorCode = (int)ErrorHandler.ErrorCode.OK; } catch (Exception ex) { LogHandler.LogError(Logger, response, method, ex); } return(response.ToHttpResponse(Logger, method)); }