diff --git a/db/.sqlx/query-ec5dfa3b6bcc1cc70d34287e1405c0a6e2c15d92e6e8f259b4d1e06d93ed55e7.json b/db/.sqlx/query-1b519beaaddbe12cfe06a47f052d46f39029fdd565f4ae82c4b42452f5c965ca.json similarity index 64% rename from db/.sqlx/query-ec5dfa3b6bcc1cc70d34287e1405c0a6e2c15d92e6e8f259b4d1e06d93ed55e7.json rename to db/.sqlx/query-1b519beaaddbe12cfe06a47f052d46f39029fdd565f4ae82c4b42452f5c965ca.json index fe5ea3b2..b6c32fe6 100644 --- a/db/.sqlx/query-ec5dfa3b6bcc1cc70d34287e1405c0a6e2c15d92e6e8f259b4d1e06d93ed55e7.json +++ b/db/.sqlx/query-1b519beaaddbe12cfe06a47f052d46f39029fdd565f4ae82c4b42452f5c965ca.json @@ -1,6 +1,6 @@ { "db_name": "PostgreSQL", - "query": "SELECT\n availability.id,\n availability.userId,\n availability.startTimestamp,\n availability.endTimestamp,\n availability.comment\nFROM availability\nWHERE\n availability.userId = $1\n AND availability.starttimestamp::date = $2\nORDER BY availability.starttimestamp;\n", + "query": "SELECT\n availability.id,\n availability.userId,\n availability.startTimestamp,\n availability.endTimestamp,\n availability.comment,\n availability.crossAreal\nFROM availability\nWHERE\n availability.userId = $1\n AND availability.starttimestamp::date >= $2\n AND availability.endtimestamp::date <= $3\nORDER BY availability.starttimestamp;\n", "describe": { "columns": [ { @@ -27,11 +27,17 @@ "ordinal": 4, "name": "comment", "type_info": "Text" + }, + { + "ordinal": 5, + "name": "crossareal", + "type_info": "Bool" } ], "parameters": { "Left": [ "Int4", + "Date", "Date" ] }, @@ -40,8 +46,9 @@ false, false, false, - true + true, + false ] }, - "hash": "ec5dfa3b6bcc1cc70d34287e1405c0a6e2c15d92e6e8f259b4d1e06d93ed55e7" + "hash": "1b519beaaddbe12cfe06a47f052d46f39029fdd565f4ae82c4b42452f5c965ca" } diff --git a/db/.sqlx/query-2288f64f63f07e7dd947c036e5c2be4c563788b3b988b721bd12797fd19a7a95.json b/db/.sqlx/query-4fd374644a1a098e80aa026d62bac76ed60871d96f7034d8e055e9e830de48de.json similarity index 64% rename from db/.sqlx/query-2288f64f63f07e7dd947c036e5c2be4c563788b3b988b721bd12797fd19a7a95.json rename to db/.sqlx/query-4fd374644a1a098e80aa026d62bac76ed60871d96f7034d8e055e9e830de48de.json index 64e0abcc..966a88ce 100644 --- a/db/.sqlx/query-2288f64f63f07e7dd947c036e5c2be4c563788b3b988b721bd12797fd19a7a95.json +++ b/db/.sqlx/query-4fd374644a1a098e80aa026d62bac76ed60871d96f7034d8e055e9e830de48de.json @@ -1,6 +1,6 @@ { "db_name": "PostgreSQL", - "query": "\n SELECT\n availability.id,\n availability.userId,\n availability.startTimestamp,\n availability.endTimestamp,\n availability.comment\n FROM availability\n WHERE availability.userId = $1\n AND (availability.endtimestamp = $2\n OR availability.starttimestamp = $3)\n AND (availability.id <> $4 OR $4 IS NULL);\n ", + "query": "\n SELECT\n availability.id,\n availability.userId,\n availability.startTimestamp,\n availability.endTimestamp,\n availability.comment,\n availability.crossAreal\n FROM availability\n WHERE availability.userId = $1\n AND (availability.endtimestamp = $2\n OR availability.starttimestamp = $3)\n AND (availability.id <> $4 OR $4 IS NULL);\n ", "describe": { "columns": [ { @@ -27,6 +27,11 @@ "ordinal": 4, "name": "comment", "type_info": "Text" + }, + { + "ordinal": 5, + "name": "crossareal", + "type_info": "Bool" } ], "parameters": { @@ -42,8 +47,9 @@ false, false, false, - true + true, + false ] }, - "hash": "2288f64f63f07e7dd947c036e5c2be4c563788b3b988b721bd12797fd19a7a95" + "hash": "4fd374644a1a098e80aa026d62bac76ed60871d96f7034d8e055e9e830de48de" } diff --git a/db/.sqlx/query-686a344fde1d9d3d7cfb431b30cd455f37854d8b728a7aac679e5c60f84cb08c.json b/db/.sqlx/query-686a344fde1d9d3d7cfb431b30cd455f37854d8b728a7aac679e5c60f84cb08c.json index 634cfacd..90e128d1 100644 --- a/db/.sqlx/query-686a344fde1d9d3d7cfb431b30cd455f37854d8b728a7aac679e5c60f84cb08c.json +++ b/db/.sqlx/query-686a344fde1d9d3d7cfb431b30cd455f37854d8b728a7aac679e5c60f84cb08c.json @@ -27,6 +27,11 @@ "ordinal": 4, "name": "endtimestamp", "type_info": "Timestamptz" + }, + { + "ordinal": 5, + "name": "crossareal", + "type_info": "Bool" } ], "parameters": { @@ -39,6 +44,7 @@ false, true, false, + false, false ] }, diff --git a/db/.sqlx/query-79daa9585c09f2f98db217067d7bd634440dfff960c34404fe7acc16fbc9b0fc.json b/db/.sqlx/query-753fe13e53c2a9e52c2b7bbe3d2b21e27dab198f91ef487160424a64d6ccfa84.json similarity index 73% rename from db/.sqlx/query-79daa9585c09f2f98db217067d7bd634440dfff960c34404fe7acc16fbc9b0fc.json rename to db/.sqlx/query-753fe13e53c2a9e52c2b7bbe3d2b21e27dab198f91ef487160424a64d6ccfa84.json index 4ddd3c9f..3aa0b4ed 100644 --- a/db/.sqlx/query-79daa9585c09f2f98db217067d7bd634440dfff960c34404fe7acc16fbc9b0fc.json +++ b/db/.sqlx/query-753fe13e53c2a9e52c2b7bbe3d2b21e27dab198f91ef487160424a64d6ccfa84.json @@ -1,6 +1,6 @@ { "db_name": "PostgreSQL", - "query": "SELECT\n availability.id,\n availability.userId,\n availability.startTimestamp,\n availability.endTimestamp,\n availability.comment,\n user_.name,\n user_.email,\n user_.password,\n user_.salt,\n user_.role AS \"role: Role\",\n user_.function AS \"function: UserFunction\",\n user_.areaId,\n user_.locked,\n user_.lastLogin,\n user_.receiveNotifications\nFROM availability\nJOIN\n user_ ON availability.userId = user_.id\nWHERE\n availability.id = $1;\n", + "query": "SELECT\n availability.id,\n availability.userId,\n availability.startTimestamp,\n availability.endTimestamp,\n availability.comment,\n availability.crossAreal,\n user_.name,\n user_.email,\n user_.password,\n user_.salt,\n user_.role AS \"role: Role\",\n user_.function AS \"function: UserFunction\",\n user_.areaId,\n user_.locked,\n user_.lastLogin,\n user_.receiveNotifications,\n area.name AS areaName\nFROM availability\nJOIN\n user_ ON availability.userId = user_.id\nJOIN\n area ON user_.areaId = area.id\nWHERE\n user_.areaId = $1\n AND availability.starttimestamp::date >= $2\n AND availability.starttimestamp::date <= $3;\n", "describe": { "columns": [ { @@ -30,26 +30,31 @@ }, { "ordinal": 5, + "name": "crossareal", + "type_info": "Bool" + }, + { + "ordinal": 6, "name": "name", "type_info": "Text" }, { - "ordinal": 6, + "ordinal": 7, "name": "email", "type_info": "Text" }, { - "ordinal": 7, + "ordinal": 8, "name": "password", "type_info": "Text" }, { - "ordinal": 8, + "ordinal": 9, "name": "salt", "type_info": "Text" }, { - "ordinal": 9, + "ordinal": 10, "name": "role: Role", "type_info": { "Custom": { @@ -65,7 +70,7 @@ } }, { - "ordinal": 10, + "ordinal": 11, "name": "function: UserFunction", "type_info": { "Custom": { @@ -88,29 +93,36 @@ } }, { - "ordinal": 11, + "ordinal": 12, "name": "areaid", "type_info": "Int4" }, { - "ordinal": 12, + "ordinal": 13, "name": "locked", "type_info": "Bool" }, { - "ordinal": 13, + "ordinal": 14, "name": "lastlogin", "type_info": "Timestamptz" }, { - "ordinal": 14, + "ordinal": 15, "name": "receivenotifications", "type_info": "Bool" + }, + { + "ordinal": 16, + "name": "areaname", + "type_info": "Text" } ], "parameters": { "Left": [ - "Int4" + "Int4", + "Date", + "Date" ] }, "nullable": [ @@ -121,6 +133,7 @@ true, false, false, + false, true, true, false, @@ -128,8 +141,9 @@ false, false, true, + false, false ] }, - "hash": "79daa9585c09f2f98db217067d7bd634440dfff960c34404fe7acc16fbc9b0fc" + "hash": "753fe13e53c2a9e52c2b7bbe3d2b21e27dab198f91ef487160424a64d6ccfa84" } diff --git a/db/.sqlx/query-604c4d56e84c5b36a0c217a4b6fd6920d845b62bf05249e4f5fb4acad79fe2b2.json b/db/.sqlx/query-805beba484999648862eb541beb15dc9245601ff55e23eb97a8795b8a4380682.json similarity index 78% rename from db/.sqlx/query-604c4d56e84c5b36a0c217a4b6fd6920d845b62bf05249e4f5fb4acad79fe2b2.json rename to db/.sqlx/query-805beba484999648862eb541beb15dc9245601ff55e23eb97a8795b8a4380682.json index 73a84e1d..37ef1ec3 100644 --- a/db/.sqlx/query-604c4d56e84c5b36a0c217a4b6fd6920d845b62bf05249e4f5fb4acad79fe2b2.json +++ b/db/.sqlx/query-805beba484999648862eb541beb15dc9245601ff55e23eb97a8795b8a4380682.json @@ -1,6 +1,6 @@ { "db_name": "PostgreSQL", - "query": "SELECT\n availability.id,\n availability.userId,\n availability.startTimestamp,\n availability.endTimestamp,\n availability.comment,\n user_.name,\n user_.email,\n user_.password,\n user_.salt,\n user_.role AS \"role: Role\",\n user_.function AS \"function: UserFunction\",\n user_.areaId,\n user_.locked,\n user_.lastLogin,\n user_.receiveNotifications,\n area.name AS areaName\nFROM availability\nJOIN\n user_ ON availability.userId = user_.id\nJOIN\n area ON user_.areaId = area.id\nWHERE\n user_.areaId = $1\n AND availability.starttimestamp::date >= $2\n AND availability.starttimestamp::date <= $3;\n", + "query": "SELECT\n availability.id,\n availability.userId,\n availability.startTimestamp,\n availability.endTimestamp,\n availability.comment,\n availability.crossAreal,\n user_.name,\n user_.email,\n user_.password,\n user_.salt,\n user_.role AS \"role: Role\",\n user_.function AS \"function: UserFunction\",\n user_.areaId,\n user_.locked,\n user_.lastLogin,\n user_.receiveNotifications\nFROM availability\nJOIN\n user_ ON availability.userId = user_.id\nWHERE\n availability.starttimestamp::date = $1\n AND user_.areaId = $2\n AND availability.startTimestamp <= $3\n AND availability.endTimestamp >= $4;\n", "describe": { "columns": [ { @@ -30,26 +30,31 @@ }, { "ordinal": 5, + "name": "crossareal", + "type_info": "Bool" + }, + { + "ordinal": 6, "name": "name", "type_info": "Text" }, { - "ordinal": 6, + "ordinal": 7, "name": "email", "type_info": "Text" }, { - "ordinal": 7, + "ordinal": 8, "name": "password", "type_info": "Text" }, { - "ordinal": 8, + "ordinal": 9, "name": "salt", "type_info": "Text" }, { - "ordinal": 9, + "ordinal": 10, "name": "role: Role", "type_info": { "Custom": { @@ -65,7 +70,7 @@ } }, { - "ordinal": 10, + "ordinal": 11, "name": "function: UserFunction", "type_info": { "Custom": { @@ -88,36 +93,32 @@ } }, { - "ordinal": 11, + "ordinal": 12, "name": "areaid", "type_info": "Int4" }, { - "ordinal": 12, + "ordinal": 13, "name": "locked", "type_info": "Bool" }, { - "ordinal": 13, + "ordinal": 14, "name": "lastlogin", "type_info": "Timestamptz" }, { - "ordinal": 14, + "ordinal": 15, "name": "receivenotifications", "type_info": "Bool" - }, - { - "ordinal": 15, - "name": "areaname", - "type_info": "Text" } ], "parameters": { "Left": [ - "Int4", "Date", - "Date" + "Int4", + "Timestamptz", + "Timestamptz" ] }, "nullable": [ @@ -128,6 +129,7 @@ true, false, false, + false, true, true, false, @@ -135,9 +137,8 @@ false, false, true, - false, false ] }, - "hash": "604c4d56e84c5b36a0c217a4b6fd6920d845b62bf05249e4f5fb4acad79fe2b2" + "hash": "805beba484999648862eb541beb15dc9245601ff55e23eb97a8795b8a4380682" } diff --git a/db/.sqlx/query-996b63cfc4e08c874f24286c2467e63fc1c981807dfa25b42a9d52124f3096e6.json b/db/.sqlx/query-89ca3e15e8c4e2d986f103505e97d9e2d8dc3404b78dfb7dca84f5ab02e3a03a.json similarity index 67% rename from db/.sqlx/query-996b63cfc4e08c874f24286c2467e63fc1c981807dfa25b42a9d52124f3096e6.json rename to db/.sqlx/query-89ca3e15e8c4e2d986f103505e97d9e2d8dc3404b78dfb7dca84f5ab02e3a03a.json index 317799ba..f8a5d8f4 100644 --- a/db/.sqlx/query-996b63cfc4e08c874f24286c2467e63fc1c981807dfa25b42a9d52124f3096e6.json +++ b/db/.sqlx/query-89ca3e15e8c4e2d986f103505e97d9e2d8dc3404b78dfb7dca84f5ab02e3a03a.json @@ -1,6 +1,6 @@ { "db_name": "PostgreSQL", - "query": "SELECT\n availability.id,\n availability.userId,\n availability.startTimestamp,\n availability.endTimestamp,\n availability.comment\nFROM availability\nWHERE\n availability.userId = $1\n AND availability.starttimestamp::date >= $2\n AND availability.endtimestamp::date <= $3\nORDER BY availability.starttimestamp;\n", + "query": "SELECT\n availability.id,\n availability.userId,\n availability.startTimestamp,\n availability.endTimestamp,\n availability.comment,\n availability.crossAreal\nFROM availability\nWHERE\n availability.userId = $1\n AND availability.starttimestamp::date = $2\nORDER BY availability.starttimestamp;\n", "describe": { "columns": [ { @@ -27,12 +27,16 @@ "ordinal": 4, "name": "comment", "type_info": "Text" + }, + { + "ordinal": 5, + "name": "crossareal", + "type_info": "Bool" } ], "parameters": { "Left": [ "Int4", - "Date", "Date" ] }, @@ -41,8 +45,9 @@ false, false, false, - true + true, + false ] }, - "hash": "996b63cfc4e08c874f24286c2467e63fc1c981807dfa25b42a9d52124f3096e6" + "hash": "89ca3e15e8c4e2d986f103505e97d9e2d8dc3404b78dfb7dca84f5ab02e3a03a" } diff --git a/db/.sqlx/query-1881e09cead57f5bc1888b41d0a52afcf0f97afd335ddc70fe11cb5e7d9e978a.json b/db/.sqlx/query-b4c12f4c03e4d6d2ddd5a9cff006389c20b6b09caaaacc1a93e52702e999f3ca.json similarity index 79% rename from db/.sqlx/query-1881e09cead57f5bc1888b41d0a52afcf0f97afd335ddc70fe11cb5e7d9e978a.json rename to db/.sqlx/query-b4c12f4c03e4d6d2ddd5a9cff006389c20b6b09caaaacc1a93e52702e999f3ca.json index 68585594..fd941755 100644 --- a/db/.sqlx/query-1881e09cead57f5bc1888b41d0a52afcf0f97afd335ddc70fe11cb5e7d9e978a.json +++ b/db/.sqlx/query-b4c12f4c03e4d6d2ddd5a9cff006389c20b6b09caaaacc1a93e52702e999f3ca.json @@ -1,6 +1,6 @@ { "db_name": "PostgreSQL", - "query": "SELECT\n availability.id,\n availability.userId,\n availability.startTimestamp,\n availability.endTimestamp,\n availability.comment,\n user_.name,\n user_.email,\n user_.password,\n user_.salt,\n user_.role AS \"role: Role\",\n user_.function AS \"function: UserFunction\",\n user_.areaId,\n user_.locked,\n user_.lastLogin,\n user_.receiveNotifications\nFROM availability\nJOIN\n user_ ON availability.userId = user_.id\nWHERE\n availability.starttimestamp::date = $1\n AND user_.areaId = $2\n AND availability.startTimestamp <= $3\n AND availability.endTimestamp >= $4;\n", + "query": "SELECT\n availability.id,\n availability.userId,\n availability.startTimestamp,\n availability.endTimestamp,\n availability.comment,\n availability.crossAreal,\n user_.name,\n user_.email,\n user_.password,\n user_.salt,\n user_.role AS \"role: Role\",\n user_.function AS \"function: UserFunction\",\n user_.areaId,\n user_.locked,\n user_.lastLogin,\n user_.receiveNotifications\nFROM availability\nJOIN\n user_ ON availability.userId = user_.id\nWHERE\n availability.startTimestamp::date = $1\n AND user_.areaId = $2;\n", "describe": { "columns": [ { @@ -30,26 +30,31 @@ }, { "ordinal": 5, + "name": "crossareal", + "type_info": "Bool" + }, + { + "ordinal": 6, "name": "name", "type_info": "Text" }, { - "ordinal": 6, + "ordinal": 7, "name": "email", "type_info": "Text" }, { - "ordinal": 7, + "ordinal": 8, "name": "password", "type_info": "Text" }, { - "ordinal": 8, + "ordinal": 9, "name": "salt", "type_info": "Text" }, { - "ordinal": 9, + "ordinal": 10, "name": "role: Role", "type_info": { "Custom": { @@ -65,7 +70,7 @@ } }, { - "ordinal": 10, + "ordinal": 11, "name": "function: UserFunction", "type_info": { "Custom": { @@ -88,22 +93,22 @@ } }, { - "ordinal": 11, + "ordinal": 12, "name": "areaid", "type_info": "Int4" }, { - "ordinal": 12, + "ordinal": 13, "name": "locked", "type_info": "Bool" }, { - "ordinal": 13, + "ordinal": 14, "name": "lastlogin", "type_info": "Timestamptz" }, { - "ordinal": 14, + "ordinal": 15, "name": "receivenotifications", "type_info": "Bool" } @@ -111,9 +116,7 @@ "parameters": { "Left": [ "Date", - "Int4", - "Timestamptz", - "Timestamptz" + "Int4" ] }, "nullable": [ @@ -124,6 +127,7 @@ true, false, false, + false, true, true, false, @@ -134,5 +138,5 @@ false ] }, - "hash": "1881e09cead57f5bc1888b41d0a52afcf0f97afd335ddc70fe11cb5e7d9e978a" + "hash": "b4c12f4c03e4d6d2ddd5a9cff006389c20b6b09caaaacc1a93e52702e999f3ca" } diff --git a/db/.sqlx/query-14fbf5259ce8c783177fbdc7304ce12bd9b31ef0e805427e5e48142ab2189a9f.json b/db/.sqlx/query-f8c9036b3eba00150f26a7b1e8b2d654f64c78f00ded76789a7dc04df5525925.json similarity index 81% rename from db/.sqlx/query-14fbf5259ce8c783177fbdc7304ce12bd9b31ef0e805427e5e48142ab2189a9f.json rename to db/.sqlx/query-f8c9036b3eba00150f26a7b1e8b2d654f64c78f00ded76789a7dc04df5525925.json index 3ebb832b..14e00c1b 100644 --- a/db/.sqlx/query-14fbf5259ce8c783177fbdc7304ce12bd9b31ef0e805427e5e48142ab2189a9f.json +++ b/db/.sqlx/query-f8c9036b3eba00150f26a7b1e8b2d654f64c78f00ded76789a7dc04df5525925.json @@ -1,6 +1,6 @@ { "db_name": "PostgreSQL", - "query": "SELECT\n availability.id,\n availability.userId,\n availability.startTimestamp,\n availability.endTimestamp,\n availability.comment,\n user_.name,\n user_.email,\n user_.password,\n user_.salt,\n user_.role AS \"role: Role\",\n user_.function AS \"function: UserFunction\",\n user_.areaId,\n user_.locked,\n user_.lastLogin,\n user_.receiveNotifications\nFROM availability\nJOIN\n user_ ON availability.userId = user_.id\nWHERE\n availability.startTimestamp::date = $1\n AND user_.areaId = $2;\n", + "query": "SELECT\n availability.id,\n availability.userId,\n availability.startTimestamp,\n availability.endTimestamp,\n availability.comment,\n availability.crossAreal,\n user_.name,\n user_.email,\n user_.password,\n user_.salt,\n user_.role AS \"role: Role\",\n user_.function AS \"function: UserFunction\",\n user_.areaId,\n user_.locked,\n user_.lastLogin,\n user_.receiveNotifications\nFROM availability\nJOIN\n user_ ON availability.userId = user_.id\nWHERE\n availability.id = $1;\n", "describe": { "columns": [ { @@ -30,26 +30,31 @@ }, { "ordinal": 5, + "name": "crossareal", + "type_info": "Bool" + }, + { + "ordinal": 6, "name": "name", "type_info": "Text" }, { - "ordinal": 6, + "ordinal": 7, "name": "email", "type_info": "Text" }, { - "ordinal": 7, + "ordinal": 8, "name": "password", "type_info": "Text" }, { - "ordinal": 8, + "ordinal": 9, "name": "salt", "type_info": "Text" }, { - "ordinal": 9, + "ordinal": 10, "name": "role: Role", "type_info": { "Custom": { @@ -65,7 +70,7 @@ } }, { - "ordinal": 10, + "ordinal": 11, "name": "function: UserFunction", "type_info": { "Custom": { @@ -88,29 +93,28 @@ } }, { - "ordinal": 11, + "ordinal": 12, "name": "areaid", "type_info": "Int4" }, { - "ordinal": 12, + "ordinal": 13, "name": "locked", "type_info": "Bool" }, { - "ordinal": 13, + "ordinal": 14, "name": "lastlogin", "type_info": "Timestamptz" }, { - "ordinal": 14, + "ordinal": 15, "name": "receivenotifications", "type_info": "Bool" } ], "parameters": { "Left": [ - "Date", "Int4" ] }, @@ -122,6 +126,7 @@ true, false, false, + false, true, true, false, @@ -132,5 +137,5 @@ false ] }, - "hash": "14fbf5259ce8c783177fbdc7304ce12bd9b31ef0e805427e5e48142ab2189a9f" + "hash": "f8c9036b3eba00150f26a7b1e8b2d654f64c78f00ded76789a7dc04df5525925" } diff --git a/db/migrations/20250724150759_availability_cross_areal.sql b/db/migrations/20250724150759_availability_cross_areal.sql new file mode 100644 index 00000000..ffe1ff80 --- /dev/null +++ b/db/migrations/20250724150759_availability_cross_areal.sql @@ -0,0 +1,2 @@ +ALTER TABLE availability + ADD COLUMN crossAreal BOOLEAN NOT NULL DEFAULT false; diff --git a/db/sql/availability/read_all_by_date_and_area_including_user.sql b/db/sql/availability/read_all_by_date_and_area_including_user.sql index fd0e8c70..6a2e90d3 100644 --- a/db/sql/availability/read_all_by_date_and_area_including_user.sql +++ b/db/sql/availability/read_all_by_date_and_area_including_user.sql @@ -4,6 +4,7 @@ SELECT availability.startTimestamp, availability.endTimestamp, availability.comment, + availability.crossAreal, user_.name, user_.email, user_.password, diff --git a/db/sql/availability/read_all_by_daterange_and_area_including_user_for_event_planning.sql b/db/sql/availability/read_all_by_daterange_and_area_including_user_for_event_planning.sql index 4a929e27..05a40cff 100644 --- a/db/sql/availability/read_all_by_daterange_and_area_including_user_for_event_planning.sql +++ b/db/sql/availability/read_all_by_daterange_and_area_including_user_for_event_planning.sql @@ -4,6 +4,7 @@ SELECT availability.startTimestamp, availability.endTimestamp, availability.comment, + availability.crossAreal, user_.name, user_.email, user_.password, diff --git a/db/sql/availability/read_all_by_daterange_and_area_including_user_for_export.sql b/db/sql/availability/read_all_by_daterange_and_area_including_user_for_export.sql index 1dd8bd95..a81bbca5 100644 --- a/db/sql/availability/read_all_by_daterange_and_area_including_user_for_export.sql +++ b/db/sql/availability/read_all_by_daterange_and_area_including_user_for_export.sql @@ -4,6 +4,7 @@ SELECT availability.startTimestamp, availability.endTimestamp, availability.comment, + availability.crossAreal, user_.name, user_.email, user_.password, diff --git a/db/sql/availability/read_all_by_user_and_date.sql b/db/sql/availability/read_all_by_user_and_date.sql index 149f09b5..feaab2bb 100644 --- a/db/sql/availability/read_all_by_user_and_date.sql +++ b/db/sql/availability/read_all_by_user_and_date.sql @@ -3,7 +3,8 @@ SELECT availability.userId, availability.startTimestamp, availability.endTimestamp, - availability.comment + availability.comment, + availability.crossAreal FROM availability WHERE availability.userId = $1 diff --git a/db/sql/availability/read_all_by_user_and_daterange.sql b/db/sql/availability/read_all_by_user_and_daterange.sql index 6cf731b9..0215831e 100644 --- a/db/sql/availability/read_all_by_user_and_daterange.sql +++ b/db/sql/availability/read_all_by_user_and_daterange.sql @@ -3,7 +3,8 @@ SELECT availability.userId, availability.startTimestamp, availability.endTimestamp, - availability.comment + availability.comment, + availability.crossAreal FROM availability WHERE availability.userId = $1 diff --git a/db/sql/availability/read_including_user.sql b/db/sql/availability/read_including_user.sql index 24e86baf..e2f7e7b8 100644 --- a/db/sql/availability/read_including_user.sql +++ b/db/sql/availability/read_including_user.sql @@ -4,6 +4,7 @@ SELECT availability.startTimestamp, availability.endTimestamp, availability.comment, + availability.crossAreal, user_.name, user_.email, user_.password, diff --git a/db/src/models/availability.rs b/db/src/models/availability.rs index 2b59e247..488bbee5 100644 --- a/db/src/models/availability.rs +++ b/db/src/models/availability.rs @@ -11,6 +11,7 @@ pub struct Availability { pub start: NaiveDateTime, pub end: NaiveDateTime, pub comment: Option, + pub cross_areal: bool, } impl Availability { @@ -67,6 +68,7 @@ impl Availability { start: r.starttimestamp.naive_utc(), end: r.endtimestamp.naive_utc(), comment: r.comment.clone(), + cross_areal: r.crossareal, }) .collect(); @@ -111,6 +113,7 @@ impl Availability { start: r.starttimestamp.naive_utc(), end: r.endtimestamp.naive_utc(), comment: r.comment.clone(), + cross_areal: r.crossareal, }) .collect(); @@ -142,6 +145,7 @@ impl Availability { start: r.starttimestamp.naive_utc(), end: r.endtimestamp.naive_utc(), comment: r.comment.clone(), + cross_areal: r.crossareal, }); Ok(availability) @@ -159,6 +163,7 @@ impl Availability { start: record.starttimestamp.naive_utc(), end: record.endtimestamp.naive_utc(), comment: record.comment.clone(), + cross_areal: record.crossareal, }); Ok(availability) @@ -203,6 +208,7 @@ impl Availability { start: r.starttimestamp.naive_utc(), end: r.endtimestamp.naive_utc(), comment: r.comment.clone(), + cross_areal: r.crossareal, }) .collect(); @@ -231,6 +237,7 @@ impl Availability { start: r.starttimestamp.naive_utc(), end: r.endtimestamp.naive_utc(), comment: r.comment.clone(), + cross_areal: r.crossareal, }) .collect(); @@ -260,6 +267,7 @@ impl Availability { start: r.starttimestamp.naive_utc(), end: r.endtimestamp.naive_utc(), comment: r.comment.clone(), + cross_areal: r.crossareal, }) .collect(); @@ -280,7 +288,8 @@ impl Availability { availability.userId, availability.startTimestamp, availability.endTimestamp, - availability.comment + availability.comment, + availability.crossAreal FROM availability WHERE availability.userId = $1 AND (availability.endtimestamp = $2 @@ -302,6 +311,7 @@ impl Availability { start: r.starttimestamp.naive_utc(), end: r.endtimestamp.naive_utc(), comment: r.comment.clone(), + cross_areal: r.crossareal, }); Ok(adjacent_avaialability)