Дипломная работа: Создание программного обеспечения для автоматизации деятельности компании

Внимание! Если размещение файла нарушает Ваши авторские права, то обязательно сообщите нам

DateFormatter.FORMATTER.parse(resultSet.getString(3)),

resultSet.getString(4),

getPerformerWithName(resultSet.getString(6)),

getCustomerWithName(resultSet.getString(5))

);

JobWrapper wrapper = new JobWrapper(job);

result.add(wrapper);

}

} catch (SQLException e) {

e.printStackTrace();

} catch (ParseException e) {

e.printStackTrace();

}

return result;

}

@Nullable

public Customer getCustomerWithName(String string) {

Customer customer = null;

String query = "SELECT * FROM " + TABLE_CUSTOMERS + " WHERE " + COLUMN_CUSTOMERS_NAME + " = '" + string + "';";

try (Connection connection = connect()) {

ResultSet resultSet = connection.createStatement().executeQuery(query);

while (resultSet.next()) {

customer = new Customer(

resultSet.getString(2),

resultSet.getString(3)

);

}

} catch (SQLException e) {

e.printStackTrace();

}

return customer;

}

@Nullable

public Performer getPerformerWithName(String string) {

Performer performer = null;

String query = "SELECT * FROM " + TABLE_PERFORMERS + " WHERE " + COLUMN_PERFORMERS_NAME + " = '" + string + "';";

try (Connection connection = connect()) {

ResultSet resultSet = connection.createStatement().executeQuery(query);

while (resultSet.next()) {

performer = new Performer(

resultSet.getString(2),

resultSet.getString(3)

);

}

} catch (SQLException e) {

e.printStackTrace();

}

return performer;

}

private Db() {

createTableIfNotExists();

}

public static Db getInstance() {

if (sManager == null) {

sManager = new Db();

}

return sManager;

}

private Connection connect() {

try {

Class.forName(JDBCDriver);

Connection connection = DriverManager.getConnection(urlPart + filePath);

return connection;

} catch (ClassNotFoundException e) {

System.err.println("Не удалось найти драйвер для подключения к базе данных: " + e.getMessage());

e.printStackTrace();

return null;

} catch (SQLException e) {

System.err.println("Не удалось подключиться: " + e.getMessage());

e.printStackTrace();

return null;

}

}

private void createTableIfNotExists() {

String query =

"CREATE TABLE IF NOT EXISTS " + TABLE_JOBS + "(_ID INTEGER PRIMARY KEY AUTOINCREMENT, " +

COLUMN_JOB_CREATING_DATE + " TEXT, " +

COLUMN_JOB_DEADLINE_DATE + " TEXT, " +

COLUMN_JOB_THEME + " TEXT, " +

COLUMN_JOB_CUSTOMER_NAME + " TEXT, " +

COLUMN_JOB_PERFORMER_NAME + " TEXT);";

try(Connection connect = connect()) {

Statement statement = connect.createStatement();

statement.executeUpdate(query);

} catch (SQLException e) {

System.err.println("ERROR IN QUERY: " + query);

e.printStackTrace();

}

String customersQuery =

"CREATE TABLE IF NOT EXISTS " + TABLE_CUSTOMERS + "(_ID INTEGER PRIMARY KEY AUTOINCREMENT, " +

COLUMN_CUSTOMERS_NAME + " TEXT, " +

COLUMN_CUSTOMERS_PASS + " TEXT);";

try(Connection connect = connect()) {

Statement statement = connect.createStatement();

statement.executeUpdate(customersQuery);

} catch (SQLException e) {

System.err.println("ERROR IN QUERY: " + customersQuery);

e.printStackTrace();

}

String performersQuery =

"CREATE TABLE IF NOT EXISTS " + TABLE_PERFORMERS + "(_ID INTEGER PRIMARY KEY AUTOINCREMENT, " +

COLUMN_PERFORMERS_NAME + " TEXT, " +

COLUMN_PERFORMERS_PASS + " TEXT);";

try(Connection connect = connect()) {

Statement statement = connect.createStatement();

statement.executeUpdate(performersQuery);

} catch (SQLException e) {

System.err.println("ERROR IN QUERY: " + performersQuery);

e.printStackTrace();

}

String initialQueryC1 = "INSERT INTO " + TABLE_CUSTOMERS + " (" +

COLUMN_CUSTOMERS_NAME + ", " +

COLUMN_CUSTOMERS_PASS + ") VALUES ('c1', 'c1p');";

try(Connection connect = connect()) {

Statement statement = connect.createStatement();

statement.executeUpdate(initialQueryC1);

} catch (SQLException e) {

System.err.println("ERROR IN QUERY: " + initialQueryC1);

e.printStackTrace();

}

String initialQueryC2 = "INSERT INTO " + TABLE_CUSTOMERS + " (" +

COLUMN_CUSTOMERS_NAME + ", " +

COLUMN_CUSTOMERS_PASS + ") VALUES ('c2', 'c2p');";

try(Connection connect = connect()) {

Statement statement = connect.createStatement();

statement.executeUpdate(initialQueryC2);

} catch (SQLException e) {

System.err.println("ERROR IN QUERY: " + initialQueryC2);

e.printStackTrace();

}

String initialQueryP1 = "INSERT INTO " + TABLE_PERFORMERS + " (" +

COLUMN_PERFORMERS_NAME + ", " +

COLUMN_PERFORMERS_PASS + ") VALUES ('p1', 'p1p');";

try(Connection connect = connect()) {

Statement statement = connect.createStatement();

statement.executeUpdate(initialQueryP1);

} catch (SQLException e) {

System.err.println("ERROR IN QUERY: " + initialQueryP1);

e.printStackTrace();

}

String initialQueryP2 = "INSERT INTO " + TABLE_PERFORMERS + " (" +

COLUMN_PERFORMERS_NAME + ", " +

COLUMN_PERFORMERS_PASS + ") VALUES ('p2', 'p2p');";

try(Connection connect = connect()) {

Statement statement = connect.createStatement();

statement.executeUpdate(initialQueryP2);

} catch (SQLException e) {

System.err.println("ERROR IN QUERY: " + initialQueryP2);

e.printStackTrace();

}

}

}

public class Job {

private Date mCreatingDate;

private Date mDeadlineDate;

private String mTheme;

private Performer mPerformer;

private Customer mCustomer;

public Job(Date creatingDate, Date deadlineDate, String theme, Performer performer, Customer customer) {

setCreatingDate(creatingDate);

setDeadlineDate(deadlineDate);

setTheme(theme);

setPerformer(performer);

setCustomer(customer);

}

public Date getCreatingDate() {

return mCreatingDate;

}

public void setCreatingDate(Date creatingDate) {

mCreatingDate = creatingDate;

}

public Date getDeadlineDate() {

return mDeadlineDate;

}

public void setDeadlineDate(Date deadlineDate) {

mDeadlineDate = deadlineDate;

}

public String getTheme() {

return mTheme;

}

public void setTheme(String theme) {

mTheme = theme;

}

public Performer getPerformer() {

return mPerformer;

}

public void setPerformer(Performer performer) {

mPerformer = performer;

}

public Customer getCustomer() {

return mCustomer;

}

ublic void setCustomer(Customer customer) {

mCustomer = customer;

}

}

public class JobWrapper {

private SimpleStringProperty creatingTimestamp;

private SimpleStringProperty theme;

private SimpleStringProperty customerName;

private SimpleStringProperty deadline;

private Job mJob;

public JobWrapper(Job job) {

creatingTimestamp = new SimpleStringProperty(DateFormatter.FORMATTER.format(job.getCreatingDate()));

theme = new SimpleStringProperty(job.getTheme());

customerName = new SimpleStringProperty(job.getCustomer().getName());

deadline = new SimpleStringProperty(DateFormatter.FORMATTER.format(job.getDeadlineDate()));

mJob = job;

}

public String getCreatingTimestamp() {

return creatingTimestamp.get();

}

public void setCreatingTimestamp(String newValue) {

creatingTimestamp.set(newValue);

}

public String getTheme() {

return theme.get();

}

public void setTheme(String newValue) {

theme.set(newValue);

}

public String getCustomerName() {

return customerName.get();

}

public void setCustomerName(String newValue) {

customerName.set(newValue);

}

public String getDeadline() {

return deadline.get();

}

public void setDeadline(String newValue) {

deadline.set(newValue);

}

public Job getJob() {

return mJob;

}

}

public class Main extends Application {

@Override

public void start(Stage primaryStage) throws Exception{

Parent root = FXMLLoader.load(getClass().getResource("Authorization.fxml"));

primaryStage.setTitle("Задачи 2.0");

primaryStage.setScene(new Scene(root, 300, 275));

primaryStage.show();

}

public static void main(String[] args) {

launch(args);

}

}

public class Performer extends User {

public Performer(String name, String password) {

super(name, password);

}

}

public abstract class User {

private String mName;

private String mPassword;

public User(String name, String password) {

mName = name;

mPassword = password;

}

public String getName() {

return mName;

}

public void setName(String name) {

this.mName = name;

}

public String getPassword() {

return mPassword;

}

public void setPassword(String password) {

this.mPassword = password;

}

@Override

public boolean equals(Object obj) {

if (obj instanceof User) {

User user = (User) obj;

return mName.equals(user.mName) && mPassword.equals(user.mPassword);

}

return false;

}

@Override

public int hashCode() {

return mName.hashCode() + mPassword.hashCode();

}

}

Источник: https://otherreferats.allbest.ru/download/1094307/