From 82f24126318d2e91f1bd9f0fe4d7bc3d132919df Mon Sep 17 00:00:00 2001
From: Eilert Tunheim <emtunhei@stud.ntnu.no>
Date: Fri, 25 Mar 2022 14:31:09 +0100
Subject: [PATCH] Updated constants and database dynamic coding

---
 .../java/com/application/DB/Constants.java    |  16 ++++++++++++----
 src/main/java/com/application/DB/DB.java      |   9 +++++++--
 .../com/application/DB/Constants.class        | Bin 1430 -> 1635 bytes
 target/classes/com/application/DB/DB.class    | Bin 10234 -> 10382 bytes
 4 files changed, 19 insertions(+), 6 deletions(-)

diff --git a/src/main/java/com/application/DB/Constants.java b/src/main/java/com/application/DB/Constants.java
index 4ac1ab3..f579213 100644
--- a/src/main/java/com/application/DB/Constants.java
+++ b/src/main/java/com/application/DB/Constants.java
@@ -28,7 +28,7 @@ public final class Constants {
     // Database ID/name
     public static final String PROJECT_ID = "sf-drying-optimization";
 
-    /*
+
     // Location Valasen(124)
     // Project settings
     public static final int LOCATION_ID = 124;
@@ -41,16 +41,19 @@ public final class Constants {
     public static final String START_DRYING_NAME = "DryingStarted";
     public static final String STOP_DRYING_NAME = "CalculatedStop";
     public static final String KILIN_NAME = "KilnName";
-    public static final int KILIN_ID = 5;
+    public static int KILIN_ID = 5;
 
     // Winccsensordata
     public static final String KWH_NAME = "VariantValue";
     public static final String TIMESTAMP_NAME = "Timestamp";
     public static final String VALUE_ID_NAME = "ValueID";
     public static final int VALUE_ID = 51;
-*/
+    public static final int LIMIT = 1000;
+
 
 
+
+/*
     // Location Arjang(174)
     // Project settings
     public static final int LOCATION_ID = 174;
@@ -63,13 +66,18 @@ public final class Constants {
     public static final String START_DRYING_NAME = "DryingStarted";
     public static final String STOP_DRYING_NAME = "DryingCompleted";
     public static final String KILIN_NAME = "KilinId";
-    public static final int KILIN_ID = 16;
+    public static int KILIN_ID = 17;
 
     // Swappconsensordata
     public static final String KWH_NAME = "RealValue";
     public static final String TIMESTAMP_NAME = "Timestamp";
     public static final String VALUE_ID_NAME = "ValueID";
     public static final int VALUE_ID = 19;
+    public static final int LIMIT = 1000;
+
+ */
+
+
 
 
 
diff --git a/src/main/java/com/application/DB/DB.java b/src/main/java/com/application/DB/DB.java
index 44df77c..7a59c47 100644
--- a/src/main/java/com/application/DB/DB.java
+++ b/src/main/java/com/application/DB/DB.java
@@ -173,6 +173,7 @@ public class DB {
                     "WHERE " + TIMESTAMP_NAME + " BETWEEN " + '"'+ entry.getKey() + '"' +
                     " AND " + '"' + entry.getValue() + '"' +
                     " AND " + VALUE_ID_NAME + " = " + VALUE_ID + " " +
+                    " AND " + KWH_NAME + " <> 0 " +
                     " ORDER BY " + TIMESTAMP_NAME + " ASC";
 
 
@@ -275,7 +276,10 @@ public class DB {
         // Defining extra parameters if required
         String extraInputParameter = "";
         if(LOCATION_ID == 124){
-            extraInputParameter = "AND CalculatedStart BETWEEN \"1990-01-01 00:00:00\" AND \"" + TODAYS_DATE + "\" ";
+            extraInputParameter += "AND CalculatedStart BETWEEN \"1990-01-01 00:00:00\" AND \"" + TODAYS_DATE + "\" ";
+        }
+        if(LOCATION_ID == 174){
+            KILIN_ID -= 1;
         }
 
         // Sqlstatement for ValÄsen(124)
@@ -287,7 +291,8 @@ public class DB {
                         "AND "+STOP_DRYING_NAME+" BETWEEN \"1990-01-01 00:00:00\" AND \"" + TODAYS_DATE + "\" " +
                                 extraInputParameter +
                         "Group by "+ START_DRYING_NAME + " " +
-                        "Order by "+ START_DRYING_NAME + " ASC ";
+                        "Order by "+ START_DRYING_NAME + " ASC " +
+                        "LIMIT " + LIMIT;
 
         System.out.println(sqlStatement);
 
diff --git a/target/classes/com/application/DB/Constants.class b/target/classes/com/application/DB/Constants.class
index 14407c07cc72e24209bd8991a9fb98f2be5d84fb..ee6bb5b8f6913b4ea14d678801b18091462f88b2 100644
GIT binary patch
delta 1027
zcmbQn{g}t>)W2Q(7#J8#7^1ltxEO3X80@$h>=_(588{gnxfq-noIzX{5Z4t%xUn<1
zvom;1Gz_ih2?=s_jSmiRb@p@(W@O-X&d)0@Nz5w=OUx-v<zVn+WZ)0?bP4f@ck%Rf
z^$YRz_hV!b@No5X_Xt52VheT*4|WY<WZ?Dn_Y4jR4RVcl_jmMRWMK4UW?*1oU}WG5
z2=e!Gbq<O5bm3s|Vr1a<@ppC%;r8_Ri}!Q^si~Q`Te9Apk%2G7(aFa(-p|q3HQqbi
zgM-0`kwMfy#KScxKEN@^(bqM^H7FP?&B5Ty$RHRT;usVX?-CU0>E{j=2Dvdf#6JL4
z)Sr=o%iGh((+{dDfRTX%!uNCmF~dFLy+O8eFa&~J;pyud9OCF30975t$iN%s=o9K1
z@96>+3T9;BfC+(oV9dzC>f`C_8N$rK!2DwJG{y<G#tbHm48oO_m6f`_zPc$X3LYL-
zxw%%w#q10rJPe@>VLS}n3_R=%;XDix43QvC6b}P010N5A27}n-I3^QDhRG9{q!|?^
zuVIoEiZ3%_WDv{DD~T^oi7(I0OHQ7An@L%P&p9zCxilxSBsC?tB)<UUm&}|zzr@^B
zMh2d+#G=f^ypqlG%q)!coD5tH3=E<S93Wd67#Ji$c7bVr20jKx1_1^J1||kU21y1X
zG`=tzUj&UW${+^UFU}yzAb}(=$soxf1(L6aS|H6J$smKIK$bz0K@N#8&mhU5fW%j1
zkYrFo;wv*qGN>T&RT(51)R6e<44k0w1A9ypNxWW*L6SimNkE4|l0g@Vug4(Cpbv5>
z)S(6pk_?7Od?N-X1||k$1``HG22%zG24e<B21W)323D=@42&DWfoI0Rz`(`8#K6G7
z$H2lMz+le6z`z4h#1Lk|V9CJ1z`<YzH^CCDlz~A~h-n7{^JWH?O$;nM7+AM4ux(~w
k=h)1^0Wy`50c0v411OR4FmNykGl($gFfcM$gKe|{0KI~h%>V!Z

delta 859
zcmaFNGmYEu)W2Q(7#J8#7y`H$I2lYh7)-es%oxl$88{d$xEL%MtUz3A5Z8vC!IquD
zZlYOeJy$@Gzn80XNW7;DBLlB<eqM1&VqQsDVoqr)2ZKE$1GkUAvtx*-zaLluqbD;1
z1H(E-29Xd)Cm+{%KSy8J_%KHwU&jzn=U@&72Sx@yBpL5;4-N)LMg~#;5D(X&_yETs
zM_<<v*PvjqMh*ri#>w%FqV>*<3<AL+{sHkWL6M$*?ode=Mg}f#PajV|DBqQlfdj(#
zbOE_S0K^aXfXcctGH`@B`h>d1Lu7?PF7fnr4GwYi4S=d~XJp`oseuZ4Ffy=B{>|8H
zt;L|t$RJ!<Sy`#;>#LiRqTu0Sm78l-T+Ghk$;05q;LXFp#lX$Z;KRe<%iss%`13IE
zFz_-m$V_%%l9~L3Np$ibCP@R?%)FBLl<fGj#GKs3lFa1dl%mSay!52RlH`okVnzl@
zkbH4Ud~tbVK|ykU-egy1Wkr4$up;OD+=86clGGGN26pevoXkAW6h;Qlpwz^i%{|O4
zjP)E0oD2*M{0tl*r!X)uNP-*yrui6n85kM(85kIt7z7w383Y-G;Cx{QNd^%lc~J&Q
z1~DYQID;gE1QK78L6SiVi7(9{$shyb*F!CkWsqc$0|`L+@(hv;3P=_zGDtEgA;~K<
zNHVA($*VF*GN>WRt20P4Xdv-58JHND7_=C)85kLK7#J9g85kKD85kH!S+%w^Fm42U
zQkQ{&fs28Ofq{XKfrUYUL63offd{OLl|i4ufPsO5gTWAPf+1KX1B0j#(+&pa%?vD?
i7+7{Nux?{u+swcYGLVr0VIU6!2ZJyJBZCpxB4Ysce}xGE

diff --git a/target/classes/com/application/DB/DB.class b/target/classes/com/application/DB/DB.class
index 930d3bfeb7876cbc25bd0d07360ce2a8b11756f1..6b2a20d0bbb3a84153fc114c22d49e9754330191 100644
GIT binary patch
delta 3889
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
JW%$Y<2>`G2ZHfQ@

delta 3685
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

-- 
GitLab