예제 #1
0
        public async Task UpdateAsync(DetailBeli obj)
        {
            var data = await getbyid(obj.DetailBeliId);

            if (data != null)
            {
                try
                {
                    data.Tanggal    = obj.Tanggal;
                    data.IdBarang   = obj.IdBarang;
                    data.Qty        = obj.Qty;
                    data.Harga      = obj.Harga;
                    data.TotalHarga = obj.Qty * obj.Harga;
                    await _context.SaveChangesAsync();
                }
                catch (Exception ex)
                {
                    throw new Exception($"{ex.Message} {ex.InnerException.Message}");
                }
            }
            else
            {
                throw new Exception("Data tidak ditemukan");
            }
        }
예제 #2
0
        public async Task CreateAsync(DetailBeli obj)
        {
            try
            {
                if (obj.Tanggal == DateTime.Today)
                {
                    obj.TotalHarga = obj.Harga * obj.Qty;
                    _context.Add(obj);
                    //perlu looping
                    //search idbeli then dapet value total e berapa ?
                    Beli datapembelian = new Beli();
                    datapembelian = await _Beli.GetById(obj.IdBeli);

                    datapembelian.TotalHarga = datapembelian.TotalHarga + obj.TotalHarga;
                    var update = _Beli.UpdateAsync(datapembelian);
                    //mendapatkan data barang berdasarkan input ID
                    //ketika data barang ada maka stok nya di update dengan stok awal + qty yang akan dinput
                    var data = await _Barang.GetById(obj.IdBarang);

                    data.Stok = Convert.ToInt16(obj.Qty + data.Stok);
                    await _Barang.UpdateAsync(data);
                }
                else
                {
                    throw new Exception("Data di input di tanggal pembelian yang berbeda");
                }
            }
            catch (Exception ex)
            {
                throw new Exception(ex.InnerException.Message);
            }
            await _context.SaveChangesAsync();
        }
예제 #3
0
        public async Task <IActionResult> Post([FromBody] DetailBeli DetailBeli)
        {
            try
            {
                await _DetailBeli.CreateAsync(DetailBeli);

                return(Ok("Tambah Data Berhasil"));
            }
            catch (Exception ex)
            {
                return(BadRequest(ex.Message));
            }
        }
예제 #4
0
        public async Task <IActionResult> Put([FromBody] DetailBeli detailBeli)
        {
            try
            {
                var data = await _Barang.GetById(detailBeli.IdBarang);

                data.Stok = Convert.ToInt16(detailBeli.Qty + data.Stok);
                await _DetailBeli.UpdateAsync(detailBeli);

                await _Barang.UpdateAsync(data);

                return(Ok("Data berhasil diupdate"));
            }
            catch (Exception ex)
            {
                return(BadRequest(ex.Message));
            }
        }
 public ActionResult TambahEditDataDetailBeli(string Id)
 {
     using (HttpClient client = new HttpClient())
     {
         client.BaseAddress = new Uri(Helpers.RestAPIAddress.GetUrl());
         if (Id == null)
         {
             return(View(new DetailBeli()));
         }
         else
         {
             client.DefaultRequestHeaders.Authorization =
                 new AuthenticationHeaderValue("Bearer",
                                               HttpContext.Session.GetString("JWTtoken"));
             var token = HttpContext.Session.GetString("JWTtoken");
             HttpResponseMessage response = client.GetAsync("/api/DetailBeli/" + Id).Result;
             string     stringData        = response.Content.ReadAsStringAsync().Result;
             DetailBeli data = JsonConvert.DeserializeObject <DetailBeli>(stringData);
             HttpContext.Session.SetInt32("idbarang", data.IdBarang);
             TempData["Pesan"] = "Saved Successfully";
             return(View(data));
         }
     }
 }
        public ActionResult TambahEditDataDetailBeli(DetailBeli obj)
        {
            obj.IdBeli = Convert.ToInt32(HttpContext.Session.GetString("idBeli"));
            //if (ModelState.IsValid)
            //{
            using (HttpClient client = new HttpClient())
            {
                client.BaseAddress = new Uri(Helpers.RestAPIAddress.GetUrl());
                if (obj.DetailBeliId == null)
                {
                    client.DefaultRequestHeaders.Authorization =
                        new AuthenticationHeaderValue("Bearer",
                                                      HttpContext.Session.GetString("JWTtoken"));
                    var token = HttpContext.Session.GetString("JWTtoken");

                    string stringData            = JsonConvert.SerializeObject(obj);
                    var    contentData           = new StringContent(stringData, System.Text.Encoding.UTF8, "application/json");
                    HttpResponseMessage response = client.PostAsync("/api/DetailBeli", contentData).Result;
                    if (response.IsSuccessStatusCode)
                    {
                        TempData["success"] = "success";
                        TempData["Pesan"]   = response.Content.ReadAsStringAsync().Result;
                    }
                    else
                    {
                        TempData["error"] = "error";
                        TempData["Pesan"] = response.Content.ReadAsStringAsync().Result;
                    }
                    //var data1 = response.Content.ReadAsStringAsync().Result.ToList().ToString();
                }
                else
                {
                    if (obj.IdBarang == 0)
                    {
                        obj.IdBarang = (int)HttpContext.Session.GetInt32("idbarang");
                    }

                    client.DefaultRequestHeaders.Authorization = new AuthenticationHeaderValue("Bearer",
                                                                                               HttpContext.Session.GetString("JWTtoken"));
                    //var token = HttpContext.Session.GetString("JWTtoken");
                    obj.IdBeli = Convert.ToInt32(HttpContext.Session.GetString("idBeli"));
                    string stringData            = JsonConvert.SerializeObject(obj);
                    var    contentData           = new StringContent(stringData, System.Text.Encoding.UTF8, "application/json");
                    HttpResponseMessage response = client.PutAsync("/api/DetailBeli/" + obj, contentData).Result;
                    if (response.IsSuccessStatusCode)
                    {
                        TempData["success"] = "success";
                        TempData["Pesan"]   = response.Content.ReadAsStringAsync().Result;
                        HttpContext.Session.Remove("idbarang");
                    }
                    else
                    {
                        TempData["error"] = "error";
                        TempData["Pesan"] = response.Content.ReadAsStringAsync().Result;
                    }
                }
            }


            return(Redirect("/DetailBeli/Index/" + HttpContext.Session.GetString("idBeli")));
        }