Guest User

Untitled

a guest
Dec 17th, 2018
142
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 6.25 KB | None | 0 0
  1. import java.sql.*;
  2. import java.sql.Date;
  3. import java.sql.DriverManager;
  4. import java.text.DateFormat;
  5. import java.text.SimpleDateFormat;
  6. import java.util.*;
  7.  
  8. public class Logic extends Main {
  9. static ArrayList<Engineer> engList = new ArrayList<Engineer>();
  10. private static String myField; private static String myField2;
  11. private static int savedId; private static int savedId2;
  12. private static int savedCount; private static int savedCount2;
  13. private static int loopCounter = 0;
  14.  
  15. static Date todaysDate = new Date(new java.util.Date().getTime());
  16.  
  17. public static void createObjects() {
  18. try {
  19. Connection myConn = DriverManager.getConnection("jdbc:mysql://localhost:3306/engineer", "root", "");
  20.  
  21. Statement myStmt = myConn.createStatement();
  22.  
  23. ResultSet myRs = myStmt.executeQuery("select * from engineers");
  24.  
  25. while (myRs.next()) {
  26. // System.out.println(myRs.getString("id") + ", " + myRs.getString("name") + ", " + myRs.getString("count") + ", " + myRs.getDate("date"));
  27. engList.add(new Engineer(myRs.getString("name"), myRs.getInt("id"), myRs.getInt("count"), myRs.getDate("date"))); //Loop creates object then adds to list till database runs out
  28. }
  29.  
  30. } catch (Exception exc) {
  31. exc.printStackTrace();
  32. }
  33. // System.out.println(engList);
  34. }
  35.  
  36. public static String getMyField()
  37. {
  38. //include validation, logic, logging or whatever you like here
  39. return myField;
  40. }
  41. public static void setMyField(String value)
  42. {
  43. //include more logic
  44. myField = value;
  45. }
  46.  
  47. public static String getMyField2()
  48. {
  49. //include validation, logic, logging or whatever you like here
  50. return myField2;
  51. }
  52. public static void setMyField2(String value)
  53. {
  54. //include more logic
  55. myField2 = value;
  56. }
  57.  
  58.  
  59. public static void logic() {
  60.  
  61. Date date = new Date(new java.util.Date().getTime() - 86400 * 1000);
  62. DateFormat dateFormat = new SimpleDateFormat("yyyy-MM-dd");
  63.  
  64. int x = 0;
  65. while (x < 1) {
  66.  
  67. Random random = new Random();
  68.  
  69. int randomId = random.nextInt(10) + 1;
  70. int randomId2 = random.nextInt(10) + 1;
  71.  
  72. String strDate = dateFormat.format((engList.get(randomId - 1).getDate()));
  73. String strDate2 = dateFormat.format((engList.get(randomId2 - 1).getDate()));
  74. String yesterdayDate = dateFormat.format(date);
  75.  
  76. if (randomId == randomId2) { // Rerolling non unique id's
  77. randomId = random.nextInt(10) + 1;
  78. }
  79. else if (engList.get(randomId - 1).getCount() != 2 && (engList.get(randomId2 - 1).getCount() != 2) && (!strDate.equals(yesterdayDate) && (!strDate2.equals(yesterdayDate)))){
  80. System.out.println("Employee workings is: " + engList.get(randomId - 1).getName());
  81. System.out.println("Second employee workings is: " + engList.get(randomId2 - 1).getName());
  82. String tempo = engList.get(randomId - 1).getName(); setMyField(tempo);
  83. String tempo2 = engList.get(randomId2 - 1).getName(); setMyField2(tempo2);
  84. savedCount = engList.get(randomId - 1).getCount()+1; savedCount2 = engList.get(randomId2 - 1).getCount() + 1;
  85. savedId = engList.get(randomId - 1).getId(); savedId2 = engList.get(randomId2 - 1).getId();
  86. System.out.println(savedId);
  87. System.out.println(savedId2);
  88. System.out.println(savedCount);
  89. x = 1;
  90. }
  91. }
  92. }
  93.  
  94. public static void updateDatabase(){
  95.  
  96.  
  97. try {
  98. Connection myConn = DriverManager.getConnection("jdbc:mysql://localhost:3306/engineer", "root", "");
  99. Statement myStmt = myConn.createStatement();
  100. String sql = "UPDATE `engineers` SET `date` ='"+todaysDate+"', `count` = '"+savedCount+"' WHERE `engineers`.`id` = '"+savedId+"'";
  101. String sql2 = "UPDATE `engineers` SET `date` ='"+todaysDate+"', `count` = '"+savedCount2+"' WHERE `engineers`.`id` = '"+savedId2+"'";
  102. myStmt.executeUpdate(sql);
  103. myStmt.executeUpdate(sql2);
  104.  
  105. } catch (Exception exc) {
  106. exc.printStackTrace();
  107. }
  108. }
  109.  
  110. public static void hardReset(){
  111.  
  112.  
  113. try {
  114. Connection myConn = DriverManager.getConnection("jdbc:mysql://localhost:3306/engineer", "root", "");
  115. Statement myStmt = myConn.createStatement();
  116. ResultSet myRs = myStmt.executeQuery("select * from engineers");
  117.  
  118. while (myRs.next()) {
  119. String sql = "UPDATE `engineers` SET `date` = '"+todaysDate+"', `count` = '0' WHERE `engineers`.`id` = '"+loopCounter+"'";
  120. Statement myStmt2 = myConn.createStatement();
  121. myStmt2.executeUpdate(sql);
  122. loopCounter++;
  123. }
  124. int finalId = (loopCounter)+1;
  125. String sql = "UPDATE `engineers` SET `date` = '"+todaysDate+"', `count` = '0' WHERE `engineers`.`id` = '"+finalId+"'";
  126.  
  127. } catch (Exception exc) {
  128. exc.printStackTrace();
  129. }
  130. }
  131.  
  132.  
  133.  
  134. public static void main(String[] args) {
  135.  
  136. }
  137. }
  138.  
  139. import java.sql.Date;
  140.  
  141. public class Engineer extends Logic {
  142. String name;
  143. int id;
  144. int count;
  145. Date date;
  146.  
  147.  
  148. public Engineer(String name, int id, int count, Date date) { // Creating constructor for Engineer object
  149. // When Object is created do this
  150. this.name = name;
  151. this.id = id;
  152. this.count = count;
  153. this.date = date;
  154.  
  155. }
  156.  
  157. public int getId() {
  158. return id;
  159. }
  160.  
  161.  
  162. public int setId() {
  163. this.id = id;
  164. return id;
  165. }
  166.  
  167. public String getName() {
  168. return name;
  169. }
  170.  
  171. public String setName() {
  172. this.name = "jimbo";
  173. return name;
  174. }
  175.  
  176. public Date getDate() {
  177. String date1date;
  178. return date;
  179. }
  180.  
  181. public int getCount() {
  182. return count;
  183. }
  184.  
  185. @Override
  186. public String toString() { // Overrides default toString to include return values of objects.
  187. return this.getId() + " " + this.getName() + " " + this.getCount() + " " + this.getDate();
  188. }
  189.  
  190. }
Add Comment
Please, Sign In to add comment