예제 #1
0
 public frmBrowse(string tabel)
 {
     InitializeComponent();
     this.tabel = tabel;
     if (tabel == "barang")
     {
         dgvBrowse.DataSource = Barang.FindAll();
     }
     else if (tabel == "customer")
     {
         dgvBrowse.DataSource = Customer.FindAll();
     }
     else if (tabel == "supplier")
     {
         dgvBrowse.DataSource = Supplier.FindAll();
     }
     else if (tabel == "penjualan")
     {
         dgvBrowse.DataSource = Penjualan.FindAll();
     }
     else if (tabel == "pembelian")
     {
         dgvBrowse.DataSource = Pembelian.FindAll();
     }
     dgvBrowse.Refresh();
     data = new Dictionary <string, string> {
     };
     dt   = (DataTable)dgvBrowse.DataSource;
 }
예제 #2
0
        private void btnHapus_Click(object sender, EventArgs e)
        {
            if (lvwListPembelian.SelectedItems.Count > 0)
            {
                var konfirmasi = MessageBox.Show("Apakah data barang ingin dihapus?", "Konfirmasi",
                                                 MessageBoxButtons.YesNo, MessageBoxIcon.Exclamation);

                if (konfirmasi == DialogResult.Yes)
                {
                    // ambil objek mhs yang mau dihapus dari collection
                    Pembelian pbl = listPembelian[lvwListPembelian.SelectedIndices[0]];

                    // panggil operasi CRUD
                    var result = pblController.Delete(pbl);
                    if (result > 0)
                    {
                        LoadPembelian();
                    }
                }
            }
            else // data belum dipilih
            {
                MessageBox.Show("Data mahasiswa belum dipilih !!!", "Peringatan",
                                MessageBoxButtons.OK, MessageBoxIcon.Exclamation);
            }
        }
예제 #3
0
        public int Delete(Pembelian pbl)
        {
            int result = 0;

            // deklarasi perintah SQL
            string sql = @"delete from pembelian
                           where kd_pembelian = @kd_pembelian";

            // membuat objek command menggunakan blok using
            using (MySqlCommand cmd = new MySqlCommand(sql, _conn))
            {
                // mendaftarkan parameter dan mengeset nilainya
                cmd.Parameters.AddWithValue("@kd_pembelian", pbl.KdPembelian);

                try
                {
                    // jalankan perintah DELETE dan tampung hasilnya ke dalam variabel result
                    result = cmd.ExecuteNonQuery();
                }
                catch (Exception ex)
                {
                    System.Diagnostics.Debug.Print("Delete error: {0}", ex.Message);
                }
            }

            return(result);
        }
예제 #4
0
        public int Create(Pembelian pbl)
        {
            int result = 0;

            string sql = @"insert into pembelian (kd_pembelian, nama_barang, tgl_pembelian, harga_beli, kd_detail, kd_barang, kd_produsen, kd_admin, jumlah_barang, sub_total) 
                        values (@kd_pembelian, @nama_barang, @tgl_pembelian, @harga_beli, @kd_detail, @kd_barang, @kd_produsen, @kd_admin, @jumlah_barang, @sub_total)";

            using (MySqlCommand cmd = new MySqlCommand(sql, _conn))
            {
                cmd.Parameters.AddWithValue("@kd_pembelian", pbl.KdPembelian);
                cmd.Parameters.AddWithValue("@nama_barang", pbl.NamaBarang);
                cmd.Parameters.AddWithValue("@tgl_pembelian", pbl.TglPembelian);
                cmd.Parameters.AddWithValue("@harga_beli", pbl.HargaBeli);
                cmd.Parameters.AddWithValue("@kd_detail", pbl.KdPesanan);
                cmd.Parameters.AddWithValue("@kd_barang", pbl.KdBarang);
                cmd.Parameters.AddWithValue("@kd_produsen", pbl.KdProdusen);
                cmd.Parameters.AddWithValue("@kd_admin", pbl.KdAdmin);
                cmd.Parameters.AddWithValue("@jumlah_barang", pbl.Jumlah);
                cmd.Parameters.AddWithValue("@sub_total", pbl.SubTotal);

                try
                {
                    result = cmd.ExecuteNonQuery();
                }
                catch (Exception ex)
                {
                    System.Diagnostics.Debug.Print("Create error : {0}", ex.Message);
                }
            }

            return(result);
        }
예제 #5
0
        public int Create(Pembelian pembelian)
        {
            int result = 0;

            string sql = @"insert into pembelian (kd_pembelian, TglPembelian, NamaBarang, HargaBeli, kdProdusen, kdBarang, kdPesanan, kdAdmin) values
        (@kd_pembelian, @TglPembelian, @NamaBarang, @HargaBeli, @kdProdusen, @kdBarang, @kdPesanan, @kdAdmin)";

            using (MySqlCommand cmd = new MySqlCommand(sql, _conn))
            {
                cmd.Parameters.AddWithValue("@kd_pembelian", pembelian.KdPembelian);
                cmd.Parameters.AddWithValue("@TglPembelian", pembelian.TglPembelian);
                cmd.Parameters.AddWithValue("@NamaBarang", pembelian.NamaBarang);
                cmd.Parameters.AddWithValue("@HargaBeli", pembelian.HargaBeli);
                cmd.Parameters.AddWithValue("@kdProdusen", pembelian.KdProdusen);
                cmd.Parameters.AddWithValue("@kdBarang", pembelian.KdBarang);
                cmd.Parameters.AddWithValue("@kdPesanan", pembelian.KdPesanan);
                cmd.Parameters.AddWithValue("@kdAdmin", pembelian.KdAdmin);

                try
                {
                    result = cmd.ExecuteNonQuery();
                }
                catch (Exception ex)
                {
                    System.Diagnostics.Debug.Print("Create error : {0}", ex.Message);
                }
            }

            return(result);
        }
예제 #6
0
        public async Task <IActionResult> Edit(int id, [Bind("UmkmId,Name,Phone,Email,Address,Amount,AccountNumber,Status,Id")] Pembelian pembelian)
        {
            if (id != pembelian.Id)
            {
                return(NotFound());
            }

            if (ModelState.IsValid)
            {
                try
                {
                    _context.Update(pembelian);
                    await _context.SaveChangesAsync();
                }
                catch (DbUpdateConcurrencyException)
                {
                    if (!PembelianExists(pembelian.Id))
                    {
                        return(NotFound());
                    }
                    else
                    {
                        throw;
                    }
                }
                return(RedirectToAction(nameof(Index)));
            }
            ViewData["UmkmId"] = new SelectList(_context.Umkm, "Id", "Description", pembelian.UmkmId);
            return(View(pembelian));
        }
예제 #7
0
        public int Delete(Pembelian pbl)
        {
            int result = 0;

            // Validavsi kode pembelian tidak boleh NULL
            if (string.IsNullOrEmpty(pbl.KdPembelian))
            {
                MessageBox.Show("Kode pembelian harus diisi !!!", "Peringatan",
                                MessageBoxButtons.OK, MessageBoxIcon.Exclamation);
                return(0);
            }

            // membuat objek context menggunakan blok using
            using (DbContext context = new DbContext())
            {
                // membuat objek dari class repository
                _repository = new PembelianRepository(context);

                // panggil method Delete class repository untuk menghapus data
                result = _repository.Delete(pbl);
            }

            if (result > 0)
            {
                MessageBox.Show("Data pembelian berhasil dihapus !", "Informasi",
                                MessageBoxButtons.OK, MessageBoxIcon.Information);
            }
            else
            {
                MessageBox.Show("Data pembelian gagal dihapus !!!", "Peringatan",
                                MessageBoxButtons.OK, MessageBoxIcon.Exclamation);
            }

            return(result);
        }
예제 #8
0
        public int Update(Pembelian pbl)
        {
            int result = 0;

            // deklarasi perintah SQL

            string sql = @"update pembelian set tgl_pembelian = @tgl_pembelian,   jumlah_barang = @jumlah_barang, harga_beli = @harga_beli, 
                            kd_produsen = @kd_produsen, kd_barang = @kd_barang, kd_admin = @kd_admin
                           where kd_pembelian = @kd_pembelian";

            // membuat objek command menggunakan blok using
            using (MySqlCommand cmd = new MySqlCommand(sql, _conn))
            {
                // mendaftarkan parameter dan mengeset nilainya
                cmd.Parameters.AddWithValue("@tgl_pembelian", pbl.TglPembelian);
                cmd.Parameters.AddWithValue("@jumlah_barang", pbl.Jumlah);
                cmd.Parameters.AddWithValue("@harga_beli", pbl.HargaBeli);
                cmd.Parameters.AddWithValue("@kd_produsen", pbl.KdProdusen);
                cmd.Parameters.AddWithValue("@kd_barang", pbl.KdBarang);
                cmd.Parameters.AddWithValue("@kd_admin", pbl.KdAdmin);
                cmd.Parameters.AddWithValue("@kd_pembelian", pbl.KdPembelian);

                try
                {
                    // jalankan perintah UPDATE dan tampung hasilnya ke dalam variabel result
                    result = cmd.ExecuteNonQuery();
                }
                catch (Exception ex)
                {
                    System.Diagnostics.Debug.Print("Update error: {0}", ex.Message);
                }
            }

            return(result);
        }
예제 #9
0
        public Task <Pembelian> UpdatePembelian(int pembelianId, Pembelian order)
        {
            var trans = dbContext.Database.BeginTransaction();

            try
            {
                var lastOrder = dbContext.Pembelian.Where(x => x.Id == pembelianId).Include(x => x.OrderPembelian).FirstOrDefault();

                if (lastOrder == null)
                {
                    throw new SystemException("Pembelian Not Found  !");
                }

                lastOrder.OrderPembelian.Status = OrderStatus.Diproses;
                dbContext.Entry(lastOrder).CurrentValues.SetValues(order);

                foreach (var item in order.Items)
                {
                    if (item.Id <= 0)
                    {
                        dbContext.PembelianItem.Add(item);
                    }
                    else
                    {
                        var oldItem = dbContext.PembelianItem.SingleOrDefault(x => x.Id == item.Id);
                        if (oldItem == null)
                        {
                            throw new SystemException("Item Pembelian Tidak Ditemukan !");
                        }
                        dbContext.Entry(oldItem).CurrentValues.SetValues(item);
                    }
                }


                //remove

                foreach (var item in lastOrder.Items)
                {
                    var existsDb = order.Items.Where(x => x.Id == item.Id).FirstOrDefault();
                    if (existsDb == null)
                    {
                        dbContext.PembelianItem.Remove(existsDb);
                    }
                }


                dbContext.SaveChanges();
                trans.Commit();
                return(Task.FromResult(order));
            }
            catch (Exception ex)
            {
                _logger.LogError(ex.Message);
                trans.Rollback();
                throw new SystemException(ex.Message);
            }
        }
예제 #10
0
        private void btnTambahPbl_Click_1(object sender, EventArgs e)
        {
            // jika data baru, inisialisasi objek mahasiswa
            if (isNewData)
            {
                pbl = new Pembelian();
            }

            datePesananPbl.Format       = DateTimePickerFormat.Custom;
            datePesananPbl.CustomFormat = "yyyy-MM-dd";

            // set nilai property objek mahasiswa yg diambil dari TextBox
            pbl.KdPembelian  = txtKdPembelian.Text;
            pbl.NamaBarang   = txtNamaBrg.Text;
            pbl.TglPembelian = datePesananPbl.Text;
            pbl.HargaBeli    = Convert.ToInt32(txtHargaPbl.Text);
            pbl.KdPesanan    = txtKdPesanan.Text;
            pbl.KdBarang     = txtKdBarang.Text;
            pbl.KdProdusen   = txtKDprodusen.Text;
            pbl.KdAdmin      = txtADMIN.Text;
            pbl.Jumlah       = Convert.ToInt32(txtQtyPbl.Text);
            pbl.SubTotal     = Convert.ToInt32(txtSubPbl.Text);

            int result = 0;

            if (isNewData) // tambah data baru, panggil method Create
            {
                // panggil operasi CRUD
                result = pblController.Create(pbl);

                if (result > 0) // tambah data berhasil
                {
                    // reset form input, utk persiapan input data berikutnya
                    txtKdPembelian.Clear();
                    txtNamaBrg.Clear();
                    txtKDprodusen.Clear();
                    txtKdBarang.Clear();
                    txtKdPesanan.Clear();
                    txtHargaPbl.Clear();
                    txtQtyPbl.Clear();
                    txtSubPbl.Clear();

                    txtKdPembelian.Focus();
                }
            }
            else // edit data, panggil method Update
            {
                // panggil operasi CRUD
                result = pblController.Update(pbl);

                if (result > 0)
                {
                    PembelianUpdate(pbl); // panggil event OnUpdate
                    this.Close();
                }
            }
        }
예제 #11
0
        public void AddPembelian(PembelianCreateEditViewModel model)
        {
            var pembelian = new Pembelian()
            {
                ID = model.ID,
                TanggalPembelian = model.Tanggal
            };

            context.Add(pembelian);
            context.SaveChanges();
        }
예제 #12
0
 public async Task <IActionResult> Put(int id, Pembelian pembelian)
 {
     try
     {
         return(Ok(await service.UpdatePembelian(id, pembelian)));
     }
     catch (Exception ex)
     {
         return(BadRequest(new ErrorMessage(ex.Message)));
     }
 }
예제 #13
0
        public async Task <IActionResult> Create([Bind("UmkmId,Name,Phone,Email,Address,Amount,AccountNumber,Status,Id")] Pembelian pembelian)
        {
            if (ModelState.IsValid)
            {
                _context.Add(pembelian);
                await _context.SaveChangesAsync();

                return(RedirectToAction(nameof(Index)));
            }
            ViewData["UmkmId"] = new SelectList(_context.Umkm, "Id", "Description", pembelian.UmkmId);
            return(View(pembelian));
        }
예제 #14
0
        public void Post(Pembelian pembelian)
        {
            var pembelianDetails = pembelian.PembelianDetails;

            foreach (var detail in pembelianDetails)
            {
                var shu = shuRepository.FindByBarangIdAndUkuran(detail.BarangId, detail.Ukuran);
                shu.Stock = shu.Stock + detail.Jumlah;
                shuRepository.Put(shu);
            }

            pembelianRepository.Post(pembelian);
        }
예제 #15
0
        public List <Pembelian> ReadByNama(string nama)
        {
            // membuat objek collection untuk menampung objek mahasiswa
            List <Pembelian> list = new List <Pembelian>();

            try
            {
                // deklarasi perintah SQL
                string sql = @"select kd_pembelian, tgl_pembelian, nama_barang, jumlah_barang, harga_beli, kd_produsen, kd_barang, kd_pesanan, kd_admin
                               from pembelian 
                               where kd_pembelian like @kd_pembelian
                               order by kd_pembelian";

                // membuat objek command menggunakan blok using
                using (MySqlCommand cmd = new MySqlCommand(sql, _conn))
                {
                    // mendaftarkan parameter dan mengeset nilainya
                    cmd.Parameters.AddWithValue("@kd_pembelian", "%" + nama + "%");

                    // membuat objek dtr (data reader) untuk menampung result set (hasil perintah SELECT)
                    using (MySqlDataReader dtr = cmd.ExecuteReader())
                    {
                        // panggil method Read untuk mendapatkan baris dari result set
                        while (dtr.Read())
                        {
                            // proses konversi dari row result set ke object
                            Pembelian pbl = new Pembelian();
                            pbl.KdPembelian  = dtr["kd_pembelian"].ToString();
                            pbl.TglPembelian = dtr["tgl_pembelian"].ToString();
                            pbl.NamaBarang   = dtr["nama_barang"].ToString();
                            pbl.NamaBarang   = dtr["jumlah_barang"].ToString();
                            pbl.HargaBeli    = Convert.ToInt32(dtr["harga_beli"].ToString());
                            pbl.KdProdusen   = dtr["kd_produsen"].ToString();
                            pbl.KdBarang     = dtr["kd_barang"].ToString();
                            pbl.KdPesanan    = dtr["kd_pesanan"].ToString();
                            pbl.KdAdmin      = dtr["kd_admin"].ToString();

                            // tambahkan objek mahasiswa ke dalam collection
                            list.Add(pbl);
                        }
                    }
                }
            }
            catch (Exception ex)
            {
                System.Diagnostics.Debug.Print("ReadByNama error: {0}", ex.Message);
            }

            return(list);
        }
 private void NewAction(object obj)
 {
     try
     {
         Selected             = new Pembelian();
         Selected.NomorFaktur = context.GetNewFaktur();
         Selected.Tanggal     = DateTime.Now;
         Selected.JatuhTempo  = DateTime.Now.AddMonths(1);
         Selected.User        = AppState.UserLogin;
         SelectedItem         = null;
     }
     catch (Exception ex)
     {
         Message.Error(ex.Message);
     }
 }
        private void frmLihatTransaksi_Shown(object sender, EventArgs e)
        {
            mtcDaftarTransaksi.SelectTab(0);
            dgvPembelian.DataSource = Pembelian.FindAll();
            dgvPembelian.Refresh();
            dgvPembelianDetail.DataSource = PembelianDetail.FindAll();
            dgvPembelianDetail.Refresh();
            dgvPenjualan.DataSource = Penjualan.FindAll();
            dgvPenjualan.Refresh();
            dgvPenjualanDetail.DataSource = PenjualanDetail.FindAll();
            dgvPenjualanDetail.Refresh();

            dtPembelian       = (DataTable)dgvPembelian.DataSource;
            dtPembelianDetail = (DataTable)dgvPembelianDetail.DataSource;
            dtPenjualan       = (DataTable)dgvPenjualan.DataSource;
            dtPenjualanDetail = (DataTable)dgvPenjualanDetail.DataSource;
        }
예제 #18
0
        // constructor untuk inisialisasi data ketika mengedit data
        public FormPembelian(string title, Pembelian pblDit, PembelianController pblController) : this()
        {
            // ganti text/judul form
            this.Text          = title;
            this.pblController = pblController;

            isNewData = false;  // set status edit data
            pbl       = pblDit; // set objek mhs yang akan diedit

            // untuk edit data, tampilkan data lama
            txtKdPembelian.Text = pbl.KdPembelian;
            txtKDprodusen.Text  = pbl.KdProdusen;
            txtADMIN.Text       = pbl.KdAdmin;
            txtNamaBrg.Text     = pbl.NamaBarang;
            datePesananPbl.Text = pbl.TglPembelian;
            txtHargaPbl.Text    = pbl.HargaBeli.ToString();
            txtQtyPbl.Text      = pbl.Jumlah;
            txtSubPbl.Text      = pbl.SubTotal;
        }
예제 #19
0
        private void UpdatePembelianEventHandler(Pembelian pbl)
        {
            // ambil index data mhs yang edit
            int index = lvwListPembelian.SelectedIndices[0];

            // update informasi mhs di listview
            ListViewItem itemRow = lvwListPembelian.Items[index];

            itemRow.SubItems[1].Text  = pbl.KdProdusen;
            itemRow.SubItems[2].Text  = pbl.NamaBarang;
            itemRow.SubItems[3].Text  = pbl.TglPembelian;
            itemRow.SubItems[4].Text  = pbl.HargaBeli.ToString();
            itemRow.SubItems[5].Text  = pbl.KdProdusen;
            itemRow.SubItems[6].Text  = pbl.KdBarang;
            itemRow.SubItems[7].Text  = pbl.KdPesanan;
            itemRow.SubItems[8].Text  = pbl.KdAdmin;
            itemRow.SubItems[9].Text  = pbl.Jumlah.ToString();
            itemRow.SubItems[10].Text = pbl.SubTotal.ToString();
        }
예제 #20
0
        public async void CreateAction(Pembelian obj)
        {
            try
            {
                await Task.Delay(1);

                Items.Clear();
                Source = await IncomingService.CreateNew(obj.Id);

                Model = Source.Model;
                foreach (var item in Source.Datas)
                {
                    item.UpdateEvent += Item_UpdateEvent;
                    Items.Add(item);
                }
            }
            catch (Exception ex)
            {
                await MessageHelper.ErrorAsync(ex.Message);
            }
        }
예제 #21
0
        private void btnPerbaiki_Click(object sender, EventArgs e)
        {
            if (lvwListPembelian.SelectedItems.Count > 0)
            {
                // ambil objek mhs yang mau diedit dari collection
                Pembelian pbl = listPembelian[lvwListPembelian.SelectedIndices[0]];

                // buat objek form entry data mahasiswa
                FormPembelian frmPbl = new FormPembelian(pbl, pblController, "Edit Data Produsen");

                // mendaftarkan method event handler untuk merespon event OnUpdate
                frmPbl.PembelianUpdate += UpdatePembelianEventHandler;

                // tampilkan form entry mahasiswa
                frmPbl.ShowDialog();
            }
            else // data belum dipilih
            {
                MessageBox.Show("Data belum dipilih", "Peringatan", MessageBoxButtons.OK,
                                MessageBoxIcon.Exclamation);
            }
        }
예제 #22
0
        internal bool Delete(Pembelian selected)
        {
            try
            {
                var saved = true;
                if (saved)
                {
                    var existData = Source.Where(x => x.PembelianId == selected.PembelianId).FirstOrDefault();
                    if (existData != null)
                    {
                        Source.Remove(selected);
                    }
                    return(true);
                }

                throw new SystemException("Data Tidak Terhapus");
            }
            catch (Exception ex)
            {
                throw new SystemException(ex.Message);
            }
        }
예제 #23
0
        public List <Pembelian> ReadAllPembelian()
        {
            List <Pembelian> list = new List <Pembelian>();

            try
            {
                string sql = @"select kd_pembelian, tgl_pembelian, nama_barang, jumlah_barang, harga_beli, kd_produsen, kd_barang, kd_detail, kd_admin,sub_total
                from pembelian order by kd_pembelian";

                using (MySqlCommand cmd = new MySqlCommand(sql, _conn))
                {
                    using (MySqlDataReader dtr = cmd.ExecuteReader())
                    {
                        while (dtr.Read())
                        {
                            Pembelian pbl = new Pembelian();
                            pbl.KdPembelian  = dtr["kd_pembelian"].ToString();
                            pbl.TglPembelian = dtr["tgl_pembelian"].ToString();
                            pbl.NamaBarang   = dtr["nama_barang"].ToString();
                            pbl.Jumlah       = Convert.ToInt16(dtr["jumlah_barang"]);
                            pbl.HargaBeli    = Convert.ToInt16(dtr["harga_beli"]);
                            pbl.KdProdusen   = dtr["kd_produsen"].ToString();
                            pbl.KdBarang     = dtr["kd_barang"].ToString();
                            pbl.KdPesanan    = dtr["kd_detail"].ToString();
                            pbl.KdAdmin      = dtr["kd_admin"].ToString();
                            pbl.SubTotal     = Convert.ToInt16(dtr["sub_total"]);

                            list.Add(pbl);
                        }
                    }
                }
            }
            catch (Exception ex)
            {
                System.Diagnostics.Debug.Print("Read All error : {0}", ex.Message);
            }
            return(list);
        }
예제 #24
0
        public List <Pembelian> ReadAll()
        {
            List <Pembelian> list = new List <Pembelian>();

            try
            {
                string sql = @"select kd_pembelian, TglPembelian, Namabarang, HargaBeli, kdProdusen, kdBarang, kdPesanan, kdAdmin
                from pembelian order by kd_pembelian";

                using (MySqlCommand cmd = new MySqlCommand(sql, _conn))
                {
                    using (MySqlDataReader dtr = cmd.ExecuteReader())
                    {
                        while (dtr.Read())
                        {
                            Pembelian pmb = new Pembelian();

                            pmb.KdPembelian  = dtr["kd_pembelian"].ToString();
                            pmb.TglPembelian = dtr["TglPembelian"].ToString();
                            pmb.NamaBarang   = dtr["NamaBarang"].ToString();
                            pmb.HargaBeli    = Convert.ToInt32(dtr["HargaBeli"].ToString());
                            pmb.KdProdusen   = dtr["kdProdusen"].ToString();
                            pmb.KdBarang     = dtr["kdBarang"].ToString();
                            pmb.KdPesanan    = dtr["kdPesanan"].ToString();
                            pmb.KdAdmin      = dtr["kdAdmin"].ToString();

                            list.Add(pmb);
                        }
                    }
                }
            }
            catch (Exception ex)
            {
                System.Diagnostics.Debug.Print("Read All error : {0}", ex.Message);
            }
            return(list);
        }
예제 #25
0
        internal bool Save(Pembelian selected)
        {
            using (var db = new OcphDbContext())
            {
                var trans = db.BeginTransaction();
                try
                {
                    selected.User = AppState.UserLogin;
                    var pembelianDTO = Mapper.Map <PembelianDto>(selected);
                    pembelianDTO.UserId     = AppState.UserLogin.UserId;
                    pembelianDTO.SupplierId = selected.Supplier.SupplierId;
                    if (selected.PembelianId == null)
                    {
                        var Id = db.Pembelians.InsertAndGetLastID(pembelianDTO);
                        if (Id > 0)
                        {
                            pembelianDTO.PembelianId = Id;
                            foreach (var item in selected.Details)
                            {
                                item.PembelianId = Id;
                                var itemPembelian = Mapper.Map <ItemPembelianDto>(item);
                                var detailSaved   = db.DetailPembelian.Insert(itemPembelian);
                                if (detailSaved)
                                {
                                    db.Barangs.PlusStock(item, item.Jumlah);
                                }
                            }

                            Source.Add(selected);
                            trans.Commit();
                            return(true);
                        }
                    }
                    else
                    {
                        var saved = true;
                        if (saved)
                        {
                            var existData = Source.Where(x => x.PembelianId == selected.PembelianId).FirstOrDefault();
                            if (existData != null)
                            {
                                existData = Mapper.Map <Pembelian>(selected);
                            }
                            return(true);
                        }
                    }

                    throw new SystemException("Data Tidak Tersimpan");
                }
                catch (Exception ex)
                {
                    trans.Rollback();
                    if (ex.Message == "Data Duplikat")
                    {
                        throw new SystemException($"Nomor Faktur {selected.NomorFaktur} Sudah Ada");
                    }
                    else
                    {
                        throw new SystemException(ex.Message);
                    }
                }
            }
        }
예제 #26
0
        public int Update(Pembelian pbl)
        {
            int result = 0;

            // cek npm yang diinputkan tidak boleh kosong
            if (string.IsNullOrEmpty(pbl.KdPembelian))
            {
                MessageBox.Show("Kode pembelian harus diisi !!!", "Peringatan",
                                MessageBoxButtons.OK, MessageBoxIcon.Exclamation);
                return(0);
            }

            // cek nama yang diinputkan tidak boleh kosong
            if (string.IsNullOrEmpty(pbl.NamaBarang))
            {
                MessageBox.Show("Nama harus diisi !!!", "Peringatan",
                                MessageBoxButtons.OK, MessageBoxIcon.Exclamation);
                return(0);
            }

            // cek angkatan yang diinputkan tidak boleh kosong
            if (string.IsNullOrEmpty(Convert.ToString(pbl.HargaBeli)))
            {
                MessageBox.Show("Harga harus diisi !!!", "Peringatan",
                                MessageBoxButtons.OK, MessageBoxIcon.Exclamation);
                return(0);
            }

            if (string.IsNullOrEmpty(Convert.ToString(pbl.Jumlah)))
            {
                MessageBox.Show("Harga harus diisi !!!", "Peringatan",
                                MessageBoxButtons.OK, MessageBoxIcon.Exclamation);
                return(0);
            }

            if (string.IsNullOrEmpty(pbl.Jumlah))
            {
                MessageBox.Show("Jumlah harus diisi !!!", "Peringatan",
                                MessageBoxButtons.OK, MessageBoxIcon.Exclamation);
                return(0);
            }

            if (string.IsNullOrEmpty(pbl.KdBarang))
            {
                MessageBox.Show("Kode Barang harus diisi !!!", "Peringatan",
                                MessageBoxButtons.OK, MessageBoxIcon.Exclamation);
                return(0);
            }

            // membuat objek context menggunakan blok using
            using (DbContext context = new DbContext())
            {
                // membuat objek class repository
                _repository = new PembelianRepository(context);

                // panggil method Create class repository untuk menambahkan data
                result = _repository.Update(pbl);
            }

            if (result > 0)
            {
                MessageBox.Show("Data pembelian disimpan !", "Informasi",
                                MessageBoxButtons.OK, MessageBoxIcon.Information);
            }
            else
            {
                MessageBox.Show("Data pembelian gagal disimpan !!!", "Peringatan",
                                MessageBoxButtons.OK, MessageBoxIcon.Exclamation);
            }

            return(result);
        }
예제 #27
0
        public int Create(Pembelian pbl)
        {
            int result = 0;

            // Validavsi kode pembelian tidak boleh NULL
            if (string.IsNullOrEmpty(pbl.KdPembelian))
            {
                MessageBox.Show("Kode pembelian harus diisi !!!", "Peringatan",
                                MessageBoxButtons.OK, MessageBoxIcon.Exclamation);
                return(0);
            }

            // Validasi nama barang tidak boleh NULL
            if (string.IsNullOrEmpty(pbl.NamaBarang))
            {
                MessageBox.Show("Nama barang harus diisi !!!", "Peringatan",
                                MessageBoxButtons.OK, MessageBoxIcon.Exclamation);
                return(0);
            }

            // Validasi Tanggal pembelian tidak boleh NULL
            if (string.IsNullOrEmpty(pbl.TglPembelian))
            {
                MessageBox.Show("Tanggal Pembelian harus diisi !!!", "Peringatan",
                                MessageBoxButtons.OK, MessageBoxIcon.Exclamation);
                return(0);
            }

            // Validasi Harga pembelian tidak boleh NULL
            if (string.IsNullOrEmpty(Convert.ToString(pbl.HargaBeli)))
            {
                MessageBox.Show("Harga harus diisi !!!", "Peringatan",
                                MessageBoxButtons.OK, MessageBoxIcon.Exclamation);
                return(0);
            }

            // Validasi jumlah tidak boleh NULL
            if (string.IsNullOrEmpty(Convert.ToString(pbl.Jumlah.ToString())))
            {
                MessageBox.Show("Kuantitas harus diisi !!!", "Peringatan",
                                MessageBoxButtons.OK, MessageBoxIcon.Exclamation);
                return(0);
            }

            // Validasi Kode pesanan tidak boleh NULL
            if (string.IsNullOrEmpty(pbl.KdPesanan))
            {
                MessageBox.Show("Kode pesanan harus diisi !!!", "Peringatan",
                                MessageBoxButtons.OK, MessageBoxIcon.Exclamation);
                return(0);
            }

            // Validasi Kode barang tidak boleh NULL
            if (string.IsNullOrEmpty(pbl.KdBarang))
            {
                MessageBox.Show("Kode barang harus diisi !!!", "Peringatan",
                                MessageBoxButtons.OK, MessageBoxIcon.Exclamation);
                return(0);
            }

            // Validasi Kode produsen tidak boleh NULL
            if (string.IsNullOrEmpty(pbl.KdProdusen))
            {
                MessageBox.Show("Kode produsen harus diisi !!!", "Peringatan",
                                MessageBoxButtons.OK, MessageBoxIcon.Exclamation);
                return(0);
            }

            // Validasi Kode admin tidak boleh NULL
            if (string.IsNullOrEmpty(pbl.KdAdmin))
            {
                MessageBox.Show("Kode admin harus diisi !!!", "Peringatan",
                                MessageBoxButtons.OK, MessageBoxIcon.Exclamation);
                return(0);
            }

            // membuat objek menggunakan blok using
            using (DbContext context = new DbContext())
            {
                // buat clas repo
                _repository = new PembelianRepository(context);

                // manggil method repo biar nambah data
                result = _repository.Create(pbl);
            }

            if (result > 0)
            {
                MessageBox.Show("Data pembelian berhasil ditambah !!!", "Peringatan",
                                MessageBoxButtons.OK, MessageBoxIcon.Information);
            }
            else
            {
                MessageBox.Show("Data pembelian gagal ditambah !!!", "Peringatan",
                                MessageBoxButtons.OK, MessageBoxIcon.Exclamation);
            }
            return(result);
        }
        public int Create(Pembelian pmb)
        {
            int result = 0;

            // kode pembelian wajib diisi
            if (string.IsNullOrEmpty(pmb.KdPembelian))
            {
                MessageBox.Show("Kode pembelian harus diisi !!!", "Peringatan",
                                MessageBoxButtons.OK, MessageBoxIcon.Exclamation);
                return(0);
            }

            // nama barang wajib diisi
            if (string.IsNullOrEmpty(pmb.NamaBarang))
            {
                MessageBox.Show("Nama barang haru diisi !!!", "Peringatan",
                                MessageBoxButtons.OK, MessageBoxIcon.Exclamation);
                return(0);
            }

            // Harga pembelian wajib diisi
            if (string.IsNullOrEmpty(Convert.ToString(pmb.HargaBeli)))
            {
                MessageBox.Show("Harga harus diisi !!!", "Peringatan",
                                MessageBoxButtons.OK, MessageBoxIcon.Exclamation);
                return(0);
            }

            // produsen
            if (string.IsNullOrEmpty(pmb.KdProdusen))
            {
                MessageBox.Show("Kode produsen harus diisi !!!", "Peringatan",
                                MessageBoxButtons.OK, MessageBoxIcon.Exclamation);
                return(0);
            }

            // Barang
            if (string.IsNullOrEmpty(pmb.KdBarang))
            {
                MessageBox.Show("Kode barang harus diisi !!!", "Peringatan",
                                MessageBoxButtons.OK, MessageBoxIcon.Exclamation);
                return(0);
            }

            // Pesanan
            if (string.IsNullOrEmpty(pmb.KdPesanan))
            {
                MessageBox.Show("Kode pesanan harus diisi !!!", "Peringatan",
                                MessageBoxButtons.OK, MessageBoxIcon.Exclamation);
                return(0);
            }

            // Admin
            if (string.IsNullOrEmpty(pmb.KdAdmin))
            {
                MessageBox.Show("Kode barang harus diisi !!!", "Peringatan",
                                MessageBoxButtons.OK, MessageBoxIcon.Exclamation);
                return(0);
            }

            // membuat objek menggunakan blok using
            using (DbContext context = new DbContext())
            {
                // buat clas repo
                _repository = new PembelianRepository(context);

                // manggil method repo biar nambah data
                result = _repository.Create(pmb);
            }

            if (result > 0)
            {
                MessageBox.Show("Data pembelian berhasil disimpan !!!", "Peringatan",
                                MessageBoxButtons.OK, MessageBoxIcon.Information);
            }
            else
            {
                MessageBox.Show("Data pembelian gagal disimpan !!!", "Peringatan",
                                MessageBoxButtons.OK, MessageBoxIcon.Exclamation);
            }
            return(result);
        }
예제 #29
0
        private void treeNavigate_Click(object sender, EventArgs e)
        {
            GlobalVar.TabSelected = treeNavigate.FocusedNode[treeNavigate.Columns[1]].ToString();
            switch (treeNavigate.FocusedNode[treeNavigate.Columns[1]].ToString())
            {
            case "Dashboard":
                if (_Dashboard == null)
                {
                    _Dashboard           = new Dashboard();
                    _Dashboard.MdiParent = this;
                }
                splashScreenManager1.ShowWaitForm();
                _Dashboard.WindowState = System.Windows.Forms.FormWindowState.Maximized;
                _Dashboard.Show();
                splashScreenManager1.CloseWaitForm();

                break;

            case "Barang":
                if (_Barang == null)
                {
                    _Barang           = new Barang();
                    _Barang.MdiParent = this;
                }
                splashScreenManager1.ShowWaitForm();
                _Barang.WindowState = System.Windows.Forms.FormWindowState.Maximized;
                _Barang.Show();
                splashScreenManager1.CloseWaitForm();

                break;

            case "Supplier":
                if (_Supplier == null)
                {
                    _Supplier           = new Supplier();
                    _Supplier.MdiParent = this;
                }
                splashScreenManager1.ShowWaitForm();
                _Supplier.WindowState = System.Windows.Forms.FormWindowState.Maximized;
                _Supplier.Show();
                splashScreenManager1.CloseWaitForm();

                break;

            case "Pelanggan":
                if (_Pelanggan == null)
                {
                    _Pelanggan           = new Pelanggan();
                    _Pelanggan.MdiParent = this;
                }
                splashScreenManager1.ShowWaitForm();
                _Pelanggan.WindowState = System.Windows.Forms.FormWindowState.Maximized;
                _Pelanggan.Show();
                splashScreenManager1.CloseWaitForm();

                break;

            case "Pembelian":
                if (_Pembelian == null)
                {
                    _Pembelian           = new Pembelian();
                    _Pembelian.MdiParent = this;
                }
                splashScreenManager1.ShowWaitForm();
                _Pembelian.WindowState = System.Windows.Forms.FormWindowState.Maximized;
                _Pembelian.Show();
                splashScreenManager1.CloseWaitForm();

                break;
            }
        }
예제 #30
0
        public Task <Pembelian> CreatePembelian(int orderid, int gudangid)
        {
            var trans = dbContext.Database.BeginTransaction();

            try
            {
                var gudang = dbContext.Gudang.Where(x => x.Id == gudangid).FirstOrDefault();
                if (gudang == null)
                {
                    throw new SystemException("Gudang tidak ditemukan !");
                }

                var lastOrder = dbContext.OrderPembelian.Where(x => x.Id == orderid)
                                .Include(x => x.Items).ThenInclude(x => x.Product)
                                .Include(x => x.Items).ThenInclude(x => x.Unit)
                                .Include(x => x.Supplier)
                                .FirstOrDefault();

                if (lastOrder == null)
                {
                    throw new SystemException("Order Tidak Ditemukan !");
                }


                dbContext.Set <Pembelian>().AsNoTracking();
                var pembelian = new Pembelian {
                    Gudang      = gudang, OrderPembelianId = orderid, OrderPembelian = lastOrder,
                    CreatedDate = DateTime.Now, Items = new List <PembelianItem>()
                };

                foreach (var item in lastOrder.Items)
                {
                    var data = new PembelianItem
                    {
                        Amount  = item.Quntity,
                        Price   = item.Price,
                        Product = item.Product,
                        Unit    = item.Unit
                    };
                    pembelian.Items.Add(data);
                }


                dbContext.Pembelian.Add(pembelian);
                lastOrder.Status = OrderStatus.Diproses;
                dbContext.SaveChanges();
                trans.Commit();
                return(Task.FromResult(pembelian));
            }
            catch (Exception ex)
            {
                try
                {
                    _logger.LogError(ex.Message);
                    trans.Rollback();
                    throw new SystemException(ex.Message);
                }
                catch (System.Exception exx)
                {
                    throw new SystemException(exx.Message);
                }
            }
        }