Anda di halaman 1dari 7

JOBSHEET 6

(Source Code “service.java”)

package lelang.online;

import java.sql.*;
import java.text.ParseException;
import java.text.SimpleDateFormat;
import java.util.ArrayList;
import java.util.logging.Level;
import java.util.logging.Logger;
import javax.swing.JOptionPane;

/**
*
* @author mhaz0
*/
public class service {
String classForName = "com.mysql.cj.jdbc.Driver";
Connection connect = null;
Statement stat = null;

public void initDB(){


try {
Class.forName(classForName);
connect = DriverManager.getConnection("jdbc:mysql://localhost:3306/db_lelang","root","");
stat = connect.createStatement();
} catch (Exception e) {
e.printStackTrace();
}
}

//untuk mengambil data connection


public Connection conn(){
initDB();
return connect;
}

public Boolean insertLelang(String id_barang,java.util.Date tgl_lelang,String id_petugas,String


harga_awal){
Boolean result = false;
try{

String sql = "INSERT INTO tb_lelang(id_barang,tgl_lelang,harga_akhir,id_user,id_petugas,status)


VALUES (?,?,?,4,?,1)";
initDB();
PreparedStatement statement = connect.prepareStatement(sql);
statement.setString(1,id_barang);
statement.setDate(2,new Date(tgl_lelang.getTime()));
statement.setString(3,harga_awal);
statement.setString(4,id_petugas);
int rowsInserted = statement.executeUpdate();
if (rowsInserted > 0) {
System.out.println("Berhasil Menambahkan Lelang");
result = true;
}
}catch (SQLException e){
int input = JOptionPane.showConfirmDialog(null,
"Gagal Menginput Ke Dalam Database", "Terjadi Masalah", JOptionPane.DEFAULT_OPTION);
System.out.println(input);
// e.printStackTrace();
}

return result;
}

//update harga with trigger


public Boolean updateHarga(String id_lelang,String id_barang,String id_user,String penawaranHarga){
Boolean status = false;
try{
String sql = "INSERT INTO history_lelang(id_lelang,id_barang,id_user,penawaran_harga) VALUES
(?,?,?,?)";
initDB();
PreparedStatement statement = connect.prepareStatement(sql);
statement.setString(1,id_lelang);
statement.setString(2,id_barang);
statement.setString(3,id_user);
statement.setString(4,penawaranHarga);
int rowsInserted = statement.executeUpdate();
if (rowsInserted > 0) {
System.out.println("Berhasil Update Harga");
status = true;
}
}catch (Exception e){
e.printStackTrace();
}

return status;
}

//Register Petugas
public Boolean register(String username,String nama,String password,String level){
Boolean result = false;
try{
String sql = "INSERT INTO tb_petugas(id_level,nama_petugas,password,username) VALUES
(?,?,?,?)";
initDB();
PreparedStatement statement = connect.prepareStatement(sql);
statement.setString(1,level);
statement.setString(2,nama);
statement.setString(3,password);
statement.setString(4,username);
int rowsInserted = statement.executeUpdate();
if (rowsInserted > 0) {
System.out.println("Berhasil Menambahkan User");
result = true;
}
}catch (Exception e){
e.printStackTrace();
}

return result;
}

//Register Petugas
public void registerumum(String username,String nama,String password,String notelp){
try{
String sql = "INSERT INTO tb_masyarakat(nama_lengkap,user_name,password,telp) VALUES
(?,?,?,?)";
initDB();
PreparedStatement statement = connect.prepareStatement(sql);
statement.setString(1,nama);
statement.setString(2,username);
statement.setString(3,password);
statement.setString(4,notelp);
int rowsInserted = statement.executeUpdate();
if (rowsInserted > 0) {
System.out.println("Berhasil Menambahkan User");
int input = JOptionPane.showConfirmDialog(null,
"Berhasil Registrasi Data", "Selamat", JOptionPane.DEFAULT_OPTION);
System.out.println(input);
login lg = new login();
lg.setVisible(true);
}
}catch (Exception e){
e.printStackTrace();
}
}

public Boolean tambahBarang(String namaBarang,java.util.Date tanggal,int Harga,String deskripsi){


Boolean status = false;
try{
String sql = "INSERT INTO tb_barang(nama_barang,tgl,harga_awal,deskripsi_barang) VALUES
(?,?,?,?)";
initDB();
PreparedStatement statement = connect.prepareStatement(sql);
statement.setString(1,namaBarang);
statement.setDate(2, new Date(tanggal.getTime()));
statement.setInt(3,Harga);
statement.setString(4,deskripsi);
int rowsInserted = statement.executeUpdate();
if (rowsInserted > 0) {
System.out.println("Berhasil Menambahkan Barang");
status = true;
}
}catch(Exception e){
e.printStackTrace();
}

return status;
}

//hapusbarang
public Boolean hapusBarang(String id){
Boolean status = false;
try{
initDB();
String sql = "delete from tb_barang where id_barang=?";
PreparedStatement statement = connect.prepareStatement(sql);
statement.setString(1, id);
statement.executeUpdate();
status = true;
}catch(Exception e){
e.printStackTrace();
}
return status;
}

//hapus petugas
public Boolean hapusPetugas(String id){
Boolean status = false;
try{
initDB();
String sql = "delete from tb_petugas where id_petugas=?";
PreparedStatement statement = connect.prepareStatement(sql);
statement.setString(1, id);
statement.executeUpdate();
status = true;
}catch(Exception e){
e.printStackTrace();
}
return status;
}

//convert string to date


public static java.util.Date convertToDate(String dateString){
java.util.Date tanggal = null;
SimpleDateFormat df = new SimpleDateFormat("yyyy-MM-dd");
try{
tanggal = df.parse(dateString);
}catch(ParseException e){
e.printStackTrace();
}
return tanggal;
}

//update dataBarang
public Boolean updateBarang(String id,String namaBarang,java.util.Date tanggal,int Harga,String
deskripsi){
Boolean result = false;
try {
String sql = "UPDATE tb_barang SET nama_barang=?,tgl=?,harga_awal=?,deskripsi_barang=?
WHERE id_barang=?";
initDB();
PreparedStatement statement;
statement = connect.prepareStatement(sql);
statement.setString(1,namaBarang);
statement.setDate(2, new Date(tanggal.getTime()));
statement.setInt(3,Harga);
statement.setString(4,deskripsi);
statement.setString(5, id);
statement.executeUpdate();
result = true;
} catch (SQLException ex) {
ex.printStackTrace();
}

return result;
}

//updateStatus
public Boolean updatestatus(String id,int status){
Boolean result = false;
try {
String sql = "UPDATE tb_lelang SET status=? Where id_lelang=?";
initDB();
PreparedStatement statement = connect.prepareStatement(sql);
statement.setInt(1, status);
statement.setString(2, id);
statement.executeUpdate();
result = true;
} catch (SQLException ex) {
ex.printStackTrace();
}

return result;
}

//updatePetugas
public Boolean updatePetugas(String id,String namaPetugas,String level,String username){
Boolean result = false;
try {
String sql = "UPDATE tb_petugas SET nama_petugas=?,username=?,id_level=? WHERE
id_petugas=?";
initDB();
PreparedStatement statement = connect.prepareStatement(sql);
statement.setString(1,namaPetugas);
statement.setString(2,username);
statement.setString(3, level);
statement.setString(4, id);
statement.executeUpdate();
result = true;
} catch (SQLException ex) {
ex.printStackTrace();
}

return result;
}

//Mendapatkan level Petugas


public String getlevel(String level){
String id_level = "";
try{
initDB();
ResultSet resultSet = stat.executeQuery("select * from tb_level");
while(resultSet.next()){
if(resultSet.getString("level").toString().toLowerCase().equals(level.toString().toLowerCase())){
id_level = resultSet.getString("id_level");
}
}
}catch (Exception e){
e.printStackTrace();
}
return id_level;
}

//login petugas / admin


public ArrayList<String> login(String username, String password){
ArrayList<String> account = new ArrayList<>();
try{
String sql = "SELECT * FROM tb_masyarakat WHERE user_name=? AND password=?";
initDB();
PreparedStatement statement = connect.prepareStatement(sql);
statement.setString(1,username);
statement.setString(2,password);
ResultSet resultSet = statement.executeQuery();
if(resultSet.next() == false){
System.err.println("Bukan Umum");
sql = "SELECT * FROM tb_petugas INNER JOIN tb_level ON tb_petugas.id_level =
tb_level.id_level WHERE tb_petugas.username=? AND tb_petugas.password=?";
initDB();
statement = connect.prepareStatement(sql);
statement.setString(1,username);
statement.setString(2,password);
resultSet = statement.executeQuery();
while(resultSet.next()){
account.add(resultSet.getString("nama_petugas"));
account.add(resultSet.getString("username"));
account.add(resultSet.getString("level"));
account.add(resultSet.getString("id_petugas"));
}
}else{
System.err.println("Umum");
resultSet = statement.executeQuery();
while(resultSet.next()){
account.add(resultSet.getString("nama_lengkap"));
account.add(resultSet.getString("user_name"));
account.add(resultSet.getString("telp"));
account.add(resultSet.getString("id_user"));
System.out.println(account);
}
}
}catch (Exception e){
e.printStackTrace();
}
return account;
}
}

Anda mungkin juga menyukai