public IHttpActionResult Create([FromBody] IssueTypeDTO issueType)
        {
            ThrowIfUserHasNoRole(createRole);
            if (issueType == null)
            {
                throw new KairosException("Missing model parameter");
            }

            if (issueType.IssueType_PK != 0)
            {
                throw new KairosException("Post method is not allowed because the requested primary key is must be '0' (zero) .");
            }
            using (var issueTypeCreateHandler = new IssueTypeCreateHandler(Db, ActiveUser, new IssueTypeValidator(), new IssueTypeFactory(Db, ActiveUser), new IssueTypeQuery(Db), AccessControl))
            {
                using (var transaction = new TransactionScope())
                {
                    var saveResult = issueTypeCreateHandler.Save(issueTypeDTO: issueType, 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)));
                }
            }
        }
Beispiel #2
0
 public void Update(IssueTypeDTO issueTypeDTO, DateTime dateStamp)
 {
     if (issueTypeDTO == null)
     {
         throw new ArgumentNullException("IssueType model is null.");
     }
     tblM_IssueType issueType = issueTypeFactory.CreateFromDbAndUpdateFromDTO(issueTypeDTO, dateStamp);
 }
Beispiel #3
0
        public tblM_IssueType Insert(IssueTypeDTO issueTypeDTO, DateTime dateStamp)
        {
            if (issueTypeDTO == null)
            {
                throw new ArgumentNullException("IssueType model is null.");
            }
            tblM_IssueType issueType = issueTypeFactory.CreateFromDTO(issueTypeDTO, dateStamp);

            return(Db.tblM_IssueType.Add(issueType));
        }
        private IssueTypeEntryModel GetCreateStateModel()
        {
            IssueTypeEntryFormData formData     = new IssueTypeEntryFormData();
            List <Control>         formControls = CreateFormControls(0);
            IssueTypeDTO           issueTypeDTO = new IssueTypeDTO();

            return(new IssueTypeEntryModel()
            {
                FormData = formData,
                FormControls = formControls,
                Model = issueTypeDTO,
            });
        }
        private IssueTypeEntryModel GetUpdateStateModel(int issueTypePK)
        {
            IssueTypeEntryFormData formData     = new IssueTypeEntryFormData();
            List <Control>         formControls = CreateFormControls(issueTypePK);
            IssueTypeDTO           issueTypeDTO = issueTypeQuery.GetByPrimaryKey(issueTypePK);

            if (issueTypeDTO == null)
            {
                throw new KairosException($"Record with primary key '{issueTypeDTO.IssueType_PK}' is not found.");
            }

            return(new IssueTypeEntryModel()
            {
                FormData = formData,
                FormControls = formControls,
                Model = issueTypeDTO,
            });
        }
Beispiel #6
0
        public SaveResult <IssueTypeEntryModel> Save(IssueTypeDTO issueTypeDTO, DateTime dateStamp)
        {
            ModelValidationResult validationResult = issueTypeValidator.Validate(issueTypeDTO);
            bool success = false;
            IssueTypeEntryModel model = null;

            if (validationResult.IsValid)
            {
                success = true;
                Update(issueTypeDTO, dateStamp);
                Db.SaveChanges();
                model = issueTypeEntryDataProvider.Get(issueTypeDTO.IssueType_PK);
            }

            return(new SaveResult <IssueTypeEntryModel>
            {
                Success = success,
                Message = validationResult.IsValid ? "Data successfully updated." : "Validation error occured.",
                Model = model,
                ValidationResult = validationResult
            });
        }
        public CustomerRequestModule(IBus bus)
        {
            Post("/api/issue-request/request-type", _ =>
            {
                IssueTypeDTO arg = this.Bind <MockedIssueTypeDTOImp>();

                bus.Publish(arg);

                return(HttpStatusCode.OK);
            });

            Post("/api/issue-request/issue-location", _ =>
            {
                IssueLocationDTO arg = this.Bind <MockedIssueLocationDTOImp>();

                bus.Publish(arg);

                return(HttpStatusCode.OK);
            });

            Post("/api/issue-request/issue-details", _ =>
            {
                IssueDetailsDTO arg = this.Bind <MockedIssueDetailsDTOImp>();

                bus.Publish(arg);

                return(HttpStatusCode.OK);
            });

            Post("/api/customer-request/request-submit", _ =>
            {
                RequestSubmitDTO arg = this.Bind <MockedRequestSubmitDTOImp>();

                bus.Publish(arg);

                return(HttpStatusCode.OK);
            });
        }
        public IssueTypeDTO GetByPrimaryKey(int primaryKey)
        {
            IssueTypeDTO record = GetQuery().FirstOrDefault(issueType => issueType.IssueType_PK == primaryKey);

            return(record);
        }