예제 #1
0
        public async Task <object> Insert(JObject body)
        {
            try
            {
                KategoriBahan        kategoriBahanRequest = body.Value <JObject>("KategoriBahan").ToObject <KategoriBahan>();
                List <KategoriBahan> listAllKategoriBahan = await kategoriBahanService.GetAllKategoriBahan();

                if (listAllKategoriBahan.Any(x => x.NamaKategoriBahan.ToLower().Trim() == kategoriBahanRequest.NamaKategoriBahan.ToLower().Trim()))
                {
                    throw new NotPermittedException("Nama kategori bahan yang sama sudah tersedia");
                }
                ExecuteResult result = await kategoriBahanService.InsertUpdate(kategoriBahanRequest);

                if (result.ReturnVariable <= 0)
                {
                    throw new InternalServerErrorException("An error has occured");
                }
                return(new
                {
                    Status = Models.APIResult.ResultSuccessStatus,
                    ReturnValue = result.ReturnVariable
                });
            }
            catch (NotPermittedException e)
            {
                throw e;
            }
            catch (Exception e)
            {
                throw new InternalServerErrorException(e.Message);
            }
        }
예제 #2
0
        public async Task <object> Update(JObject body)
        {
            try
            {
                KategoriBahan kategoriBahanRequest  = body.Value <JObject>("KategoriBahan").ToObject <KategoriBahan>();
                KategoriBahan kategoriBahanResponse = await kategoriBahanService.GetById(kategoriBahanRequest.IdKategoriBahan);

                if (kategoriBahanResponse == null)
                {
                    throw new NotFoundException("Kategori Bahan dengan ID tersebut tidak ditemukan");
                }
                ExecuteResult result = await kategoriBahanService.InsertUpdate(kategoriBahanRequest);

                if (result.ReturnVariable <= 0)
                {
                    throw new InternalServerErrorException("An error has occured");
                }
                return(new
                {
                    Status = Models.APIResult.ResultSuccessStatus,
                    ReturnValue = result.ReturnVariable
                });
            }
            catch (NotFoundException e)
            {
                throw e;
            }
            catch (Exception e)
            {
                throw new InternalServerErrorException(e.Message);
            }
        }
예제 #3
0
        public async Task <ActionResult> SelectKategoriBahanToEdit(int IdKategoriBahan)
        {
            string NamaKategoriBahan = "";

            if (IdKategoriBahan != 0)
            {
                KategoriBahan kategoriBahan = await kategoriBahanService.GetById(IdKategoriBahan);

                NamaKategoriBahan = kategoriBahan.NamaKategoriBahan;
            }
            return(Json(new { id = IdKategoriBahan, name = NamaKategoriBahan }));
        }
예제 #4
0
        public async Task <object> GetById(int id)
        {
            try
            {
                KategoriBahan kategoriBahan = await kategoriBahanService.GetById(id);

                return(new
                {
                    Status = Models.APIResult.ResultSuccessStatus,
                    KategoriBahan = kategoriBahan
                });
            }
            catch (Exception e)
            {
                throw new InternalServerErrorException(e.Message);
            }
        }
예제 #5
0
        public async Task <ExecuteResult> InsertUpdate(KategoriBahan kategoriBahan)
        {
            ExecuteResult          ReturnValue = new ExecuteResult();
            List <StoredProcedure> Data        = new List <StoredProcedure>();

            Data.Add(new StoredProcedure
            {
                SPName   = "KategoriBahan_InsertUpdate @IdKategoriBahan, @NamaKategoriBahan ",
                SQLParam = new SqlParameter[]
                {
                    new SqlParameter("@IdKategoriBahan", kategoriBahan.IdKategoriBahan),
                    new SqlParameter("@NamaKategoriBahan", kategoriBahan.NamaKategoriBahan),
                }
            });

            ReturnValue = await kategoriBahanRepository.ExecMultipleSPWithTransaction(Data);

            return(ReturnValue);
        }
        public async Task <KategoriBahan> GetById(int id)
        {
            HttpClient client = new APICall.HttpClientBuilder()
                                .SetBaseURL(ConfigurationManager.AppSettings["API_BASE_URL"])
                                .SetMediaTypeWithQualityHeaderValue(APICall.APPLICATIONJSON)
                                .Build();

            var result = (await new APICall().Execute($"KategoriBahan/{id}", client, HttpMethod.Get)).Data.ToString();

            if (result.GetStatusCode() == 200)
            {
                JObject       jObj             = JObject.Parse(result);
                string        kategoriBahanStr = jObj.SelectToken("KategoriBahan").ToString();
                KategoriBahan kategoriBahan    = JsonConvert.DeserializeObject <KategoriBahan>(kategoriBahanStr);
                return(kategoriBahan);
            }
            string errMsg = result.GetStatusCode() + " " + result.GetStatusMessage() + " : " + result.GetMessage();

            throw new Exception(errMsg);
        }
        public async Task <int> Update(KategoriBahan kategoriBahan)
        {
            HttpClient client = new APICall.HttpClientBuilder()
                                .SetBaseURL(ConfigurationManager.AppSettings["API_BASE_URL"])
                                .SetMediaTypeWithQualityHeaderValue(APICall.APPLICATIONJSON)
                                .Build();

            Dictionary <string, dynamic> Body = new Dictionary <string, dynamic>();

            Body.Add("KategoriBahan", kategoriBahan);

            var result = (await new APICall().Execute($"KategoriBahan", client, HttpMethod.Put, Body)).Data.ToString();

            if (result.GetStatusCode() == 200)
            {
                JObject jObj           = JObject.Parse(result);
                string  ReturnValueStr = jObj.SelectToken("ReturnValue").ToString();
                int     id             = JsonConvert.DeserializeObject <int>(ReturnValueStr);
                return(id);
            }
            string errMsg = result.GetStatusCode() + " " + result.GetStatusMessage() + " : " + result.GetMessage();

            throw new Exception(errMsg);
        }