diff options
author | Anton Tananaev <anton.tananaev@gmail.com> | 2016-06-18 11:56:59 +1200 |
---|---|---|
committer | GitHub <noreply@github.com> | 2016-06-18 11:56:59 +1200 |
commit | b3b0cd9d6f2d26cef2e64ef38e23203f1f3fa51a (patch) | |
tree | 2e8deb61d372095aebb8270f740501c8124ea8c4 /schema | |
parent | d801cba474cd05bb088348f04e8557ca638cd74f (diff) | |
parent | 82a78ff77a076231a8429f0dd84678d61c31d44a (diff) | |
download | traccar-server-b3b0cd9d6f2d26cef2e64ef38e23203f1f3fa51a.tar.gz traccar-server-b3b0cd9d6f2d26cef2e64ef38e23203f1f3fa51a.tar.bz2 traccar-server-b3b0cd9d6f2d26cef2e64ef38e23203f1f3fa51a.zip |
Merge pull request #2012 from Abyss777/master
Implement Geofences on server side
Diffstat (limited to 'schema')
-rw-r--r-- | schema/changelog-3.6.xml | 53 |
1 files changed, 53 insertions, 0 deletions
diff --git a/schema/changelog-3.6.xml b/schema/changelog-3.6.xml index e2fd72a61..13d4cae60 100644 --- a/schema/changelog-3.6.xml +++ b/schema/changelog-3.6.xml @@ -26,6 +26,7 @@ </column> <column name="deviceid" type="INT" /> <column name="positionid" type="INT" /> + <column name="geofenceid" type="INT" /> <column name="attributes" type="VARCHAR(4096)"> <constraints nullable="false" /> </column> @@ -37,5 +38,57 @@ <column name="motion" type="VARCHAR(128)" /> </addColumn> + <createTable tableName="geofences"> + <column name="id" type="INT" autoIncrement="true"> + <constraints primaryKey="true" /> + </column> + <column name="name" type="VARCHAR(128)"> + <constraints nullable="false" /> + </column> + <column name="description" type="VARCHAR(128)" /> + <column name="area" type="VARCHAR(4096)"> + <constraints nullable="false" /> + </column> + <column name="attributes" type="VARCHAR(4096)"> + <constraints nullable="false" /> + </column> + </createTable> + + <createTable tableName="user_geofence"> + <column name="userid" type="INT"> + <constraints nullable="false" /> + </column> + <column name="geofenceid" type="INT"> + <constraints nullable="false" /> + </column> + </createTable> + + <addForeignKeyConstraint baseTableName="user_geofence" baseColumnNames="userid" constraintName="fk_user_geofence_userid" referencedTableName="users" referencedColumnNames="id" onDelete="CASCADE" /> + <addForeignKeyConstraint baseTableName="user_geofence" baseColumnNames="geofenceid" constraintName="fk_user_geofence_geofenceid" referencedTableName="geofences" referencedColumnNames="id" onDelete="CASCADE" /> + + <createTable tableName="group_geofence"> + <column name="groupid" type="INT"> + <constraints nullable="false" /> + </column> + <column name="geofenceid" type="INT"> + <constraints nullable="false" /> + </column> + </createTable> + + <addForeignKeyConstraint baseTableName="group_geofence" baseColumnNames="groupid" constraintName="fk_group_geofence_groupid" referencedTableName="groups" referencedColumnNames="id" onDelete="CASCADE" /> + <addForeignKeyConstraint baseTableName="group_geofence" baseColumnNames="geofenceid" constraintName="fk_group_geofence_geofenceid" referencedTableName="geofences" referencedColumnNames="id" onDelete="CASCADE" /> + + <createTable tableName="device_geofence"> + <column name="deviceid" type="INT"> + <constraints nullable="false" /> + </column> + <column name="geofenceid" type="INT"> + <constraints nullable="false" /> + </column> + </createTable> + + <addForeignKeyConstraint baseTableName="device_geofence" baseColumnNames="deviceid" constraintName="fk_user_device_geofence_deviceid" referencedTableName="devices" referencedColumnNames="id" onDelete="CASCADE" /> + <addForeignKeyConstraint baseTableName="device_geofence" baseColumnNames="geofenceid" constraintName="fk_user_device_geofence_geofenceid" referencedTableName="geofences" referencedColumnNames="id" onDelete="CASCADE" /> + </changeSet> </databaseChangeLog> |