Example #1
0
        public IHttpActionResult Create([FromBody] KotaDTO kota)
        {
            ThrowIfUserHasNoRole(createRole);
            if (kota == null)
            {
                throw new KairosException("Missing model parameter");
            }

            if (kota.Kota_PK != 0)
            {
                throw new KairosException("Post method is not allowed because the requested primary key is must be '0' (zero) .");
            }
            using (var kotaCreateHandler = new KotaCreateHandler(Db, ActiveUser, new KotaValidator(), new KotaFactory(Db, ActiveUser), new KotaQuery(Db), AccessControl))
            {
                using (var transaction = new TransactionScope())
                {
                    var saveResult = kotaCreateHandler.Save(kotaDTO: kota, 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)));
                }
            }
        }
Example #2
0
 public void Update(KotaDTO kotaDTO, DateTime dateStamp)
 {
     if (kotaDTO == null)
     {
         throw new ArgumentNullException("Kota model is null.");
     }
     tblM_Kota kota = kotaFactory.CreateFromDbAndUpdateFromDTO(kotaDTO, dateStamp);
 }
Example #3
0
        public tblM_Kota Insert(KotaDTO kotaDTO, DateTime dateStamp)
        {
            if (kotaDTO == null)
            {
                throw new ArgumentNullException("Kota model is null.");
            }
            tblM_Kota kota = kotaFactory.CreateFromDTO(kotaDTO, dateStamp);

            return(Db.tblM_Kota.Add(kota));
        }
Example #4
0
        private KotaEntryModel GetCreateStateModel()
        {
            KotaEntryFormData formData     = new KotaEntryFormData();
            List <Control>    formControls = CreateFormControls(0);
            KotaDTO           kotaDTO      = new KotaDTO();

            return(new KotaEntryModel()
            {
                FormData = formData,
                FormControls = formControls,
                Model = new KotaDTO(),
            });
        }
Example #5
0
        private KotaEntryModel GetUpdateStateModel(int kotaPK)
        {
            KotaEntryFormData formData     = new KotaEntryFormData();
            List <Control>    formControls = CreateFormControls(kotaPK);
            KotaDTO           kotaDTO      = kotaQuery.GetByPrimaryKey(kotaPK);

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

            return(new KotaEntryModel()
            {
                FormData = formData,
                FormControls = formControls,
                Model = kotaDTO,
            });
        }
Example #6
0
        public SaveResult <KotaEntryModel> Save(KotaDTO kotaDTO, DateTime dateStamp)
        {
            ModelValidationResult validationResult = kotaValidator.Validate(kotaDTO);
            bool           success = false;
            KotaEntryModel model   = null;

            if (validationResult.IsValid)
            {
                success = true;
                Update(kotaDTO, dateStamp);
                Db.SaveChanges();
                model = kotaEntryDataProvider.Get(kotaDTO.Kota_PK);
            }

            return(new SaveResult <KotaEntryModel>
            {
                Success = success,
                Message = validationResult.IsValid ? "Data successfully updated." : "Validation error occured.",
                Model = model,
                ValidationResult = validationResult
            });
        }
        public async Task <GetKotasByProvinsiIDResponse> Handle(GetKotasByProvinsiIDRequest request, CancellationToken cancellationToken)
        {
            try
            {
                var records = await _context.Kotas
                              .AsNoTracking()
                              .Where(x => x.ProvinsiID == request.ProvinsiID)
                              .ToListAsync(cancellationToken);

                List <KotaDTO> listOfDTO = new List <KotaDTO>();

                if (records.Count > 0)
                {
                    foreach (var record in records)
                    {
                        var data = new KotaDTO
                        {
                            KotaID     = record.KotaID,
                            ProvinsiID = record.ProvinsiID,
                            Name       = record.Name
                        };

                        if (data != null)
                        {
                            listOfDTO.Add(data);
                        }
                    }
                }

                return(new GetKotasByProvinsiIDResponse
                {
                    Data = listOfDTO
                });
            }
            catch (Exception ex)
            {
                throw ex;
            }
        }
Example #8
0
        public KotaDTO GetByPrimaryKey(int primaryKey)
        {
            KotaDTO record = GetQuery().FirstOrDefault(kota => kota.Kota_PK == primaryKey);

            return(record);
        }