Merge pull request #17 from ebivibe/DBBranch

Fixed 0 start time bug
This commit is contained in:
FunwithaPorpoise 2018-11-15 15:19:48 -05:00 committed by GitHub
commit c44539c59d
3 changed files with 224 additions and 32 deletions

View file

@ -256,8 +256,8 @@ public class DBHelper extends SQLiteOpenHelper {
values.put(COLUMN_COMPANY, company);
}
boolean licensed = serviceProvider.isLicensed();
values.put(COLUMN_LICENSED, Boolean.toString(licensed));
String licensed = String.valueOf(serviceProvider.isLicensed());
values.put(COLUMN_LICENSED, licensed);
}
@ -338,7 +338,7 @@ public class DBHelper extends SQLiteOpenHelper {
if (address != null && !address.equals(""))values.put(COLUMN_ADDRESS, address);
if (phonenumber != null && !phonenumber.equals(""))values.put(COLUMN_PHONE, phonenumber);
if (companyname != null && !companyname.equals(""))values.put(COLUMN_COMPANY, companyname);
if (licensed != null)values.put(COLUMN_LICENSED, Boolean.toString(licensed));
if (licensed != null)values.put(COLUMN_LICENSED, String.valueOf(licensed));
return writeDB.update(TABLE_LOGIN, values, COLUMN_USERNAME+" = ?",
@ -353,8 +353,32 @@ public class DBHelper extends SQLiteOpenHelper {
* @return whether a user was deleted
*/
public boolean deleteUser(String username) {
return writeDB.delete(TABLE_LOGIN, COLUMN_USERNAME+" = ?",
new String[]{username}) > 0;
if (username == null) return false;
Cursor cursor = readDB.rawQuery("SELECT * FROM " + TABLE_LOGIN
+ " WHERE " + COLUMN_USERNAME + " = ?",
new String[]{username});
if (!cursor.moveToFirst()) return false;
boolean deleted;
if (cursor.getString(4).equals("ServiceProvider")) {
deleted = writeDB.delete(TABLE_LOGIN, COLUMN_USERNAME+" = ?",
new String[]{username}) > 0;
if (deleted) {
writeDB.delete(TABLE_SERVICEPROVIDERS, COLUMN_SERVICEPROVIDERNAME + " = ?",
new String[]{username});
writeDB.delete(TABLE_AVAILABILITY, COLUMN_AVAILABILITYNAME + " = ?",
new String[]{username});
}
cursor.close();
return deleted;
} else {
cursor.close();
return writeDB.delete(TABLE_LOGIN, COLUMN_USERNAME+" = ?",
new String[]{username}) > 0;
}
}
/**
@ -487,22 +511,13 @@ public class DBHelper extends SQLiteOpenHelper {
boolean deleted;
String nullify = null;
service = service.toLowerCase().trim();
ContentValues contentValues = new ContentValues();
contentValues.put(COLUMN_SERVICEPROVIDERSERVICE, nullify);
writeDB.update(TABLE_SERVICEPROVIDERS, contentValues, COLUMN_SERVICEPROVIDERSERVICE+" = ?",
new String[]{service});
deleted = writeDB.delete(TABLE_SERVICES, COLUMN_SERVICE+" = ?",
new String[]{service}) > 0;
if (deleted) {
writeDB.delete(TABLE_SERVICEPROVIDERS, COLUMN_SERVICEPROVIDERSERVICE+" = ?",
writeDB.delete(TABLE_SERVICEPROVIDERS, COLUMN_SERVICEPROVIDERSERVICE + " = ?",
new String[]{service});
} else {
ContentValues restoreContentValues = new ContentValues();
restoreContentValues.put(COLUMN_SERVICEPROVIDERSERVICE, service);
writeDB.update(TABLE_SERVICEPROVIDERS, restoreContentValues, COLUMN_SERVICEPROVIDERSERVICE+" = ?",
null);
}
return deleted;
}
@ -543,7 +558,7 @@ public class DBHelper extends SQLiteOpenHelper {
new String[]{serviceProviderUsername, serviceName},
null, null, null,
"1");
//If cursor has 1+ elements in it, username already exists in table
//If cursor has 1+ elements in it, username/service combination already exists in table
if (cursor != null && cursor.getCount() > 0){
cursor.close();
return false;
@ -629,6 +644,7 @@ public class DBHelper extends SQLiteOpenHelper {
addAvailabilityToContentValues(contentValues, COLUMN_FRISTART, COLUMN_FRIEND, availabilities[4]);
addAvailabilityToContentValues(contentValues, COLUMN_SATSTART, COLUMN_SATEND, availabilities[5]);
addAvailabilityToContentValues(contentValues, COLUMN_SUNSTART, COLUMN_SUNEND, availabilities[6]);
if (!cursor.moveToFirst()){
contentValues.put(COLUMN_AVAILABILITYNAME, serviceProvider.getUsername());
writeDB.insert(TABLE_AVAILABILITY, null, contentValues);
@ -648,7 +664,7 @@ public class DBHelper extends SQLiteOpenHelper {
} else {
int startTime = startAndEndTimes[0]*60+startAndEndTimes[1];
int endTime = startAndEndTimes[2]*60+startAndEndTimes[3];
if (endTime - startTime <=0 || startTime > 1439 || startTime <= 0
if (endTime - startTime <=0 || startTime > 1439 || startTime < 0
|| endTime > 1439 || endTime <= 0) {
contentValues.put(startColumn, 0);
contentValues.put(endColumn, 0);
@ -674,6 +690,8 @@ public class DBHelper extends SQLiteOpenHelper {
serviceProvider.setAvailabilities(i, start/60, start%60,
end/60, end%60);
}
} else {
return new int[7][4];
}
return serviceProvider.getAvailabilities();
}