Advertisement
rezaaprilyas96

Dao

Jan 23rd, 2020
119
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
Java 3.01 KB | None | 0 0
  1. package com.websekolah.projekwebsekolah.dao;
  2.  
  3. import java.io.IOException;
  4. import java.nio.file.Files;
  5. import java.nio.file.Path;
  6. import java.nio.file.Paths;
  7. import java.util.Date;
  8. import java.util.List;
  9.  
  10. import javax.persistence.EntityManager;
  11. import javax.persistence.EntityManagerFactory;
  12.  
  13. import com.websekolah.projekwebsekolah.model.Barang;
  14. import com.websekolah.projekwebsekolah.repository.RepositoryBarang;
  15.  
  16. import org.springframework.beans.factory.annotation.Autowired;
  17. import org.springframework.stereotype.Service;
  18. import org.springframework.web.multipart.MultipartFile;
  19.  
  20. /**
  21.  * BarangDao
  22.  */
  23. @Service
  24. public class BarangDao implements RepositoryBarang {
  25.  
  26.     private EntityManagerFactory emf;
  27.  
  28.     @Autowired
  29.     public void setemf(EntityManagerFactory emf) {
  30.         this.emf = emf;
  31.     }
  32.  
  33.     @Override
  34.     public List<Barang> baranglist() {
  35.         // TODO Auto-generated method stub
  36.         EntityManager entityManager = emf.createEntityManager();
  37.         return entityManager.createQuery("from Barang", Barang.class).getResultList();
  38.     }
  39.  
  40.     @Override
  41.     public Barang saveOrUpdate(MultipartFile imagefile, Barang barang) throws IOException {
  42.         // TODO Auto-generated method stub
  43.         // Instantiate a Date object
  44.        
  45.         //membuat tgl
  46.         Date date = new Date();
  47.         String tgl = String.format("%1$s %2$tB %2$td, %2$tY", "", date);
  48.        
  49.         //membuat direktory foto dan penyimpanan fotonya
  50.         Path absolutePath = Paths.get(".");
  51.         byte[] bytes = imagefile.getBytes();
  52.         Path path = Paths.get(absolutePath + "/src/main/resources/static/img/" + imagefile.getOriginalFilename());
  53.         //Path path = Paths.get("D:/java/gambar/" + imagefile.getOriginalFilename());
  54.         Files.write(path, bytes);
  55.         barang.setFoto(imagefile.getOriginalFilename());
  56.        
  57.         EntityManager entityManager = emf.createEntityManager();
  58.         int harga = Integer.parseInt(barang.getHargabarang());
  59.         int jumlahbarang = Integer.parseInt(barang.getJumlahbarang());
  60.         int hasil = harga * jumlahbarang;
  61.         barang.setTotalharga(Integer.toString(hasil));
  62.         barang.setNotifikasi(false);
  63.         barang.setDate(tgl);
  64.        
  65.         entityManager.getTransaction().begin();
  66.         /*
  67.          * merge akan mengecek ke idnya jika datanya ada maka akan update, dan jika
  68.          * datanya tidak ada maka dia akan melakukan insert
  69.          */
  70.         Barang saved = entityManager.merge(barang);
  71.         entityManager.getTransaction().commit();
  72.         return saved;
  73.     }
  74.  
  75.     @Override
  76.     public Barang getIdBarang(Integer idbarang) {
  77.         EntityManager em = emf.createEntityManager();
  78.         return em.find(Barang.class, idbarang);
  79.     }
  80.  
  81.     @Override
  82.     public void hapus(Integer id) {
  83.         // TODO Auto-generated method
  84.         EntityManager em = emf.createEntityManager();
  85.         em.getTransaction().begin();
  86.         em.remove(em.find(Barang.class, id));
  87.         em.getTransaction().commit();
  88.     }
  89. }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement