create new Date entry

correct pop ups on create.
added some city delete warnings
This commit is contained in:
2019-12-06 16:45:25 +01:00
parent f132ca9602
commit 7748aa58bd
8 changed files with 335 additions and 104 deletions

View File

@ -3,10 +3,7 @@ package com.wasteinformationserver.db;
import com.wasteinformationserver.basicutils.Log;
import java.io.IOException;
import java.sql.Connection;
import java.sql.PreparedStatement;
import java.sql.ResultSet;
import java.sql.SQLException;
import java.sql.*;
public class JDCB {
static Connection conn;
@ -68,14 +65,9 @@ public class JDCB {
return null;
}
public int executeUpdate(String sql) {
try {
public int executeUpdate(String sql) throws SQLException {
PreparedStatement stmt = conn.prepareStatement(sql);
return stmt.executeUpdate();
} catch (SQLException e) {
e.printStackTrace();
}
return -1;
}
}

View File

@ -7,6 +7,7 @@ import com.wasteinformationserver.website.basicrequest.PostRequest;
import java.io.IOException;
import java.sql.ResultSet;
import java.sql.SQLException;
import java.sql.SQLIntegrityConstraintViolationException;
import java.util.HashMap;
public class DataRequest extends PostRequest {
@ -42,7 +43,12 @@ public class DataRequest extends PostRequest {
if (size == 0) {
//doesnt exist
System.out.println("doesnt exist");
int status = jdcb.executeUpdate("INSERT INTO `cities`(`userid`, `name`, `wastetype`, `zone`) VALUES ('0','" + params.get("cityname") + "','" + params.get("wastetype") + "','" + params.get("wastezone") + "');");
int status = 0;
try {
status = jdcb.executeUpdate("INSERT INTO `cities`(`userid`, `name`, `wastetype`, `zone`) VALUES ('0','" + params.get("cityname") + "','" + params.get("wastetype") + "','" + params.get("wastezone") + "');");
} catch (SQLException e) {
e.printStackTrace();
}
System.out.println(status);
if (status == 1) {
sb.append("\"status\" : \"inserted\"");
@ -95,20 +101,27 @@ public class DataRequest extends PostRequest {
//DELETE FROM `cities` WHERE `id`=0
StringBuilder sbb = new StringBuilder(); // TODO: 06.12.19 better naming and sb for all
Log.debug(params.get("id"));
int status= jdcb.executeUpdate("DELETE FROM `cities` WHERE `id`='" + params.get("id")+"'");
Log.debug(status);
sbb.append("{");
if (status == 1){
//success
sbb.append("\"status\" : \"success\"");
}else {
Log.debug(params.get("id"));
int status = 0;
try{
status= jdcb.executeUpdate("DELETE FROM `cities` WHERE `id`='" + params.get("id")+"'");
if (status == 1){
//success
sbb.append("\"status\" : \"success\"");
}else {
sbb.append("\"status\" : \"error\"");
}
}catch (SQLIntegrityConstraintViolationException e){
Log.warning("dependencies of deletion exist");
sbb.append("\"status\" : \"dependenciesnotdeleted\"");
} catch (SQLException e) {
Log.error("sql exception: "+e.getMessage());
sbb.append("\"status\" : \"error\"");
}
Log.debug(status);
sbb.append(",\"query\":\"ok\"");
sbb.append("}");
result = sbb.toString();

View File

@ -28,13 +28,13 @@ public class NewDateRequest extends PostRequest {
try {
String prev = "";
while (sett.next()) {
if (prev.equals(sett.getString("name"))){
if (prev.equals(sett.getString("name"))) {
}else {
sb.append("{\"cityname\":\"" + sett.getString("name") + "\"}");
if (!sett.isLast()) {
} else {
if (!sett.isFirst()) {
sb.append(",");
}
sb.append("{\"cityname\":\"" + sett.getString("name") + "\"}");
}
prev = sett.getString("name");
}
@ -44,24 +44,24 @@ public class NewDateRequest extends PostRequest {
sb.append("]");
sb.append(",\"query\":\"ok\"");
sb.append("}");
Log.debug(sb.toString());
break;
case "getzones":
ResultSet set = jdcb.executeQuery("select * from cities WHERE `name`='"+params.get("cityname")+"' ORDER BY zone ASC");
ResultSet set = jdcb.executeQuery("select * from cities WHERE `name`='" + params.get("cityname") + "' ORDER BY zone ASC");
Log.debug(set.toString());
sb.append("{\"data\":[");
try {
int prev = 42;
while (set.next()) {
if (prev == set.getInt("zone")){
if (prev == set.getInt("zone")) {
}else {
} else {
sb.append("{\"zone\":\"" + set.getInt("zone") + "\"}");
if (!set.isLast()) {
sb.append(",");
}
}
prev = set.getInt("zone");
System.out.println(prev);
}
} catch (SQLException e) {
e.printStackTrace();
@ -70,6 +70,32 @@ public class NewDateRequest extends PostRequest {
sb.append(",\"query\":\"ok\"");
sb.append("}");
break;
case "newdate":
sb.append("{");
Log.debug(params);
ResultSet seti = jdcb.executeQuery("select * from cities WHERE `name`='" + params.get("cityname") + "' AND `zone`='" + params.get("zone") + "' AND `wastetype`='" + params.get("wastetype") + "'");
try {
seti.last();
if (seti.getRow() == 1) {
Log.debug(seti.getInt("id"));
int status = jdcb.executeUpdate("INSERT INTO `pickupdates`(`citywastezoneid`, `pickupdate`) VALUES ('" + seti.getInt("id") + "','" + params.get("date") + "')");
if (status == 1) {
sb.append("\"status\" : \"success\"");
} else {
sb.append("\"status\" : \"error\"");
}
} else {
Log.warning("city doesnt exist!");
sb.append("\"status\" : \"citydoesntexist\"");
}
} catch (SQLException e) {
e.printStackTrace();
}
sb.append(",\"query\":\"ok\"");
sb.append("}");
break;
}
return sb.toString();
}

View File

@ -6,6 +6,7 @@ import com.wasteinformationserver.website.HttpTools;
import com.wasteinformationserver.website.basicrequest.PostRequest;
import java.io.IOException;
import java.sql.SQLException;
import java.util.HashMap;
public class RegisterRequest extends PostRequest {
@ -22,7 +23,11 @@ public class RegisterRequest extends PostRequest {
e.printStackTrace();
}
//new JDCB("users", "kOpaIJUjkgb9ur6S", "wasteinformation");
int s = myjd.executeUpdate("INSERT INTO `user` (`username`, `firstName`, `secondName`, `password`, `email`, `logindate`) VALUES ('"+params.get("username")+"', '"+params.get("firstname")+"', '"+params.get("lastname")+"', '"+passhash+"', '"+params.get("email")+"', current_timestamp());");
try {
int s = myjd.executeUpdate("INSERT INTO `user` (`username`, `firstName`, `secondName`, `password`, `email`, `logindate`) VALUES ('"+params.get("username")+"', '"+params.get("firstname")+"', '"+params.get("lastname")+"', '"+passhash+"', '"+params.get("email")+"', current_timestamp());");
} catch (SQLException e) {
e.printStackTrace();
}
// TODO: 27.09.19 detect if register process was successful and reply right json
return "{\"accept\": true}";