public IHttpActionResult Create([FromBody] BTSStatusDTO btsStatus) { string accessType = ""; ThrowIfUserHasNoRole(accessType); if (btsStatus == null) { throw new KairosException("Missing model parameter"); } if (btsStatus.BTSStatus_PK != 0) { throw new KairosException("Post method is not allowed because the requested primary key is must be '0' (zero) ."); } using (var btsStatusCreateHandler = new BTSStatusCreateHandler(Db, ActiveUser, new BTSStatusValidator(), new BTSStatusFactory(Db, ActiveUser), new BTSStatusQuery(Db), AccessControl)) { using (var transaction = new TransactionScope()) { var saveResult = btsStatusCreateHandler.Save(btsStatusDTO: btsStatus, dateStamp: DateTime.Now); transaction.Complete(); if (saveResult.Success) { return(Ok(new SuccessResponse(saveResult.Model, saveResult.Message))); } return(Ok(new ErrorResponse(ServiceStatusCode.ValidationError, saveResult.ValidationResult, saveResult.Message))); } } }
public void Update(BTSStatusDTO btsStatusDTO, DateTime dateStamp) { if (btsStatusDTO == null) { throw new ArgumentNullException("BTSStatus model is null."); } tblM_BTSStatus btsStatus = btsStatusFactory.CreateFromDbAndUpdateFromDTO(btsStatusDTO, dateStamp); }
public tblM_BTSStatus Insert(BTSStatusDTO btsStatusDTO, DateTime dateStamp) { if (btsStatusDTO == null) { throw new ArgumentNullException("BTSStatus model is null."); } tblM_BTSStatus btsStatus = btsStatusFactory.CreateFromDTO(btsStatusDTO, dateStamp); return(Db.tblM_BTSStatus.Add(btsStatus)); }
private BTSStatusEntryModel GetCreateStateModel() { BTSStatusEntryFormData formData = new BTSStatusEntryFormData(); List <Control> formControls = CreateFormControls(0); BTSStatusDTO btsStatusDTO = new BTSStatusDTO(); return(new BTSStatusEntryModel() { FormData = formData, FormControls = formControls, Model = new BTSStatusDTO(), }); }
private BTSStatusEntryModel GetUpdateStateModel(int btsStatusPK) { BTSStatusEntryFormData formData = new BTSStatusEntryFormData(); List <Control> formControls = CreateFormControls(btsStatusPK); BTSStatusDTO btsStatusDTO = btsStatusQuery.GetByPrimaryKey(btsStatusPK); if (btsStatusDTO == null) { throw new KairosException($"Record with primary key '{btsStatusDTO.BTSStatus_PK}' is not found."); } return(new BTSStatusEntryModel() { FormData = formData, FormControls = formControls, Model = btsStatusDTO, }); }
public SaveResult <BTSStatusEntryModel> Save(BTSStatusDTO btsStatusDTO, DateTime dateStamp) { ModelValidationResult validationResult = btsStatusValidator.Validate(btsStatusDTO); bool success = false; BTSStatusEntryModel model = null; if (validationResult.IsValid) { success = true; Update(btsStatusDTO, dateStamp); Db.SaveChanges(); model = btsStatusEntryDataProvider.Get(btsStatusDTO.BTSStatus_PK); } return(new SaveResult <BTSStatusEntryModel> { Success = success, Message = validationResult.IsValid ? "Data successfully updated." : "Validation error occured.", Model = model, ValidationResult = validationResult }); }
public BTSStatusDTO GetByPrimaryKey(int?primaryKey) { BTSStatusDTO record = GetQuery().FirstOrDefault(btsStatus => btsStatus.BTSStatus_PK == (int)primaryKey); return(record); }