refactoring added customer fragment

This commit is contained in:
yb 2022-06-27 00:28:11 +02:00
parent 633d2094c1
commit 9433d0acbe
13 changed files with 296 additions and 91 deletions

View File

@ -1,133 +1,137 @@
<?xml version="1.0" encoding="utf-8"?>
<manifest xmlns:android="http://schemas.android.com/apk/res/android"
xmlns:tools="http://schemas.android.com/tools"
package="eu.csc.vehown">
xmlns:tools="http://schemas.android.com/tools"
package="eu.csc.vehown">
<uses-permission android:name="android.permission.WAKE_LOCK"/>
<uses-permission android:name="android.permission.INTERNET"/>
<uses-permission android:name="android.permission.WAKE_LOCK" />
<uses-permission android:name="android.permission.INTERNET" />
<!--
uses-permission android:name="android.permission.WRITE_EXTERNAL_STORAGE" android:maxSdkVersion="18"
tools:ignore="ScopedStorage"/
-->
<uses-permission android:name="android.permission.FOREGROUND_SERVICE"/>
<uses-permission android:name="android.permission.ACCESS_WIFI_STATE"/>
<uses-permission android:name="android.permission.FOREGROUND_SERVICE" />
<uses-permission android:name="android.permission.ACCESS_WIFI_STATE" />
<uses-feature
android:name="android.hardware.camera"
android:required="false"/>
android:name="android.hardware.camera"
android:required="false" />
<application
android:allowBackup="true"
android:icon="@mipmap/ic_launcher"
android:allowBackup="true"
android:icon="@mipmap/ic_launcher"
android:label="@string/app_name"
android:networkSecurityConfig="@xml/network_security_config"
android:roundIcon="@mipmap/ic_launcher_round"
android:supportsRtl="true"
android:theme="@style/Theme.VehicleOwner"
android:usesCleartextTraffic="true"
tools:targetApi="n">
<activity android:name=".ui.content.ActivityLocalContentNavigation"></activity>
<activity
android:name=".ui.content.LocalContentNavigationActivity"
android:label="@string/title_activity_local_content_navigation"
android:theme="@style/Theme.VehicleOwner.NoActionBar"></activity>
<activity
android:name=".ui.base.BaseRegistrationActivity"
android:exported="true"
android:label="@string/title_activity_base_registration" />
<activity
android:name=".ui.md.ItemDetailHostActivity"
android:exported="true"
android:label="@string/title_activity_item_detail_host"
android:resizeableActivity="true"
tools:targetApi="24" />
<activity
android:name=".ui.login.CustomerRegistrationActivity"
android:exported="true"
android:label="@string/title_activity_customer_registration" />
<activity
android:name=".ui.svi.DashboardActivity"
android:theme="@style/Theme.VehicleOwner.NoActionBar"></activity>
<activity
android:name=".ui.main.MainActivity"
android:label="@string/app_name"
android:networkSecurityConfig="@xml/network_security_config"
android:roundIcon="@mipmap/ic_launcher_round"
android:supportsRtl="true"
android:theme="@style/Theme.VehicleOwner"
android:usesCleartextTraffic="true"
tools:targetApi="n">
<activity
android:name=".ui.base.BaseRegistrationActivity"
android:exported="true"
android:label="@string/title_activity_base_registration"/>
<activity
android:name=".ui.md.ItemDetailHostActivity"
android:exported="true"
android:label="@string/title_activity_item_detail_host"
android:resizeableActivity="true"
tools:targetApi="24"/>
<activity
android:name=".ui.login.CustomerRegistrationActivity"
android:exported="true"
android:label="@string/title_activity_customer_registration"/>
<activity
android:name=".ui.svi.DashboardActivity"
android:theme="@style/Theme.VehicleOwner.NoActionBar">
</activity>
<activity
android:name=".ui.main.MainActivity"
android:label="@string/app_name"
android:theme="@style/Theme.VehicleOwner.NoActionBar">
android:theme="@style/Theme.VehicleOwner.NoActionBar">
<intent-filter>
<action android:name="android.intent.action.MAIN"/>
<action android:name="android.intent.action.MAIN" />
<category android:name="android.intent.category.LAUNCHER"/>
<category android:name="android.intent.category.LAUNCHER" />
</intent-filter>
</activity>
<activity
android:name=".ui.svi.RegisterSVIActivity"
android:label="@string/register_svi"
android:theme="@style/Theme.VehicleOwner.NoActionBar"/>
android:name=".ui.svi.RegisterSVIActivity"
android:label="@string/register_svi"
android:theme="@style/Theme.VehicleOwner.NoActionBar" />
<activity
android:name=".ui.reportEvent.ReportEventActivity"
android:theme="@style/Theme.VehicleOwner.NoActionBar"/>
android:name=".ui.reportEvent.ReportEventActivity"
android:theme="@style/Theme.VehicleOwner.NoActionBar" />
<activity
android:name=".ui.reportEvent.SelectEventsActivity"
android:theme="@style/Theme.VehicleOwner.NoActionBar"/>
android:name=".ui.reportEvent.SelectEventsActivity"
android:theme="@style/Theme.VehicleOwner.NoActionBar" />
<activity
android:name=".ui.reportEvent.SelectRepairShopActivity"
android:theme="@style/Theme.VehicleOwner.NoActionBar"/>
android:name=".ui.reportEvent.SelectRepairShopActivity"
android:theme="@style/Theme.VehicleOwner.NoActionBar" />
<activity
android:name=".ui.tp.TreatmentPlanActivity"
android:theme="@style/Theme.VehicleOwner.NoActionBar"/>
android:name=".ui.tp.TreatmentPlanActivity"
android:theme="@style/Theme.VehicleOwner.NoActionBar" />
<activity
android:name=".ui.FailureEvent.FailureEventActivity"
android:label="@string/title_activity_failure_event"
android:theme="@style/Theme.VehicleOwner.NoActionBar"/>
android:name=".ui.FailureEvent.FailureEventActivity"
android:label="@string/title_activity_failure_event"
android:theme="@style/Theme.VehicleOwner.NoActionBar" />
<activity
android:name=".ui.register.RegisterCustomerActivity"
android:label="@string/title_activity_register_customer"
android:theme="@style/Theme.VehicleOwner.NoActionBar"/>
android:name=".ui.register.RegisterCustomerActivity"
android:label="@string/title_activity_register_customer"
android:theme="@style/Theme.VehicleOwner.NoActionBar" />
<activity
android:name=".ui.registration.ui.login.CustomerRegistrationActivity"
android:label="@string/title_activity_register_customer"
android:theme="@style/Theme.VehicleOwner.NoActionBar"/>
android:name=".ui.registration.ui.login.CustomerRegistrationActivity"
android:label="@string/title_activity_register_customer"
android:theme="@style/Theme.VehicleOwner.NoActionBar" />
<activity
android:name=".ui.register.RegisterVehicleActivity"
android:label="@string/title_activity_register_vehicle"
android:theme="@style/Theme.VehicleOwner.NoActionBar"/>
android:name=".ui.register.RegisterVehicleActivity"
android:label="@string/title_activity_register_vehicle"
android:theme="@style/Theme.VehicleOwner.NoActionBar" />
<activity
android:name=".ui.login.LoginActivity"
android:label="@string/app_name"/>
android:name=".ui.login.LoginActivity"
android:label="@string/app_name" />
<activity
android:name=".ui.settings.SettingsActivity"
android:label="@string/title_activity_settings"/>
android:name=".ui.settings.SettingsActivity"
android:label="@string/title_activity_settings" />
<provider
android:name="androidx.core.content.FileProvider"
android:authorities="eu.csc.app.fileprovider"
android:exported="false"
android:grantUriPermissions="true">
android:name="androidx.core.content.FileProvider"
android:authorities="eu.csc.app.fileprovider"
android:exported="false"
android:grantUriPermissions="true">
<meta-data
android:name="android.support.FILE_PROVIDER_PATHS"
android:resource="@xml/file_paths"/>
android:name="android.support.FILE_PROVIDER_PATHS"
android:resource="@xml/file_paths" />
</provider>
<receiver android:name=".broadcast.VehicleEventReceivedReceiver">
<intent-filter>
<action android:name="eu.csc.vehown.EVENTINTENT"/>
<action android:name="eu.csc.vehown.EVENTINTENT" />
</intent-filter>
</receiver>
<receiver
android:name=".broadcast.StartupReceiver"
android:enabled="true"
android:exported="true">
android:name=".broadcast.StartupReceiver"
android:enabled="true"
android:exported="true">
<intent-filter>
<action android:name="android.intent.action.MAIN"/>
<action android:name="android.intent.action.MAIN" />
<category android:name="android.intent.category.LAUNCHER"/>
<category android:name="android.intent.category.LAUNCHER" />
</intent-filter>
</receiver>
<service
android:name=".ugp.UGPService"
android:enabled="true"
android:exported="true"/>
android:name=".ugp.UGPService"
android:enabled="true"
android:exported="true" />
<service
android:name=".services.rest.UploadFileService"
android:enabled="true"
android:exported="true"/>
<service android:name=".services.DataServiceIntent"/>
android:name=".services.rest.UploadFileService"
android:enabled="true"
android:exported="true" />
<service android:name=".services.DataServiceIntent" />
</application>
</manifest>

View File

@ -0,0 +1,93 @@
package eu.csc.vehown.ui.content;
import androidx.annotation.NonNull;
import androidx.appcompat.app.ActionBarDrawerToggle;
import androidx.appcompat.app.AppCompatActivity;
import android.os.Bundle;
import androidx.appcompat.app.AppCompatActivity;
import androidx.appcompat.widget.Toolbar;
import androidx.drawerlayout.widget.DrawerLayout;
import androidx.navigation.NavController;
import androidx.navigation.Navigation;
import androidx.navigation.ui.AppBarConfiguration;
import androidx.navigation.ui.NavigationUI;
import android.content.Intent;
import android.os.Bundle;
import android.view.Menu;
import android.view.MenuItem;
import com.google.android.material.navigation.NavigationView;
import eu.csc.vehown.R;
import eu.csc.vehown.ui.md.CustomerVehicleDetailFragment;
import eu.csc.vehown.ui.md.ItemDetailHostActivity;
public class ActivityLocalContentNavigation extends AppCompatActivity {
ActionBarDrawerToggle actionBarDrawerToggle;
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_local_content_navigation);
// Toolbar toolbar = findViewById(R.id.toolbar);
//setSupportActionBar(toolbar);
DrawerLayout drawer = findViewById(R.id.drawer_layout);
// NavigationView navigationView = findViewById(R.id.nav_view_local_content);
// Passing each menu ID as a set of Ids because each
// menu should be considered as top level destinations.
actionBarDrawerToggle = new ActionBarDrawerToggle(this, drawer, R.string.nav_open, R.string.nav_close);
// pass the Open and Close toggle for the drawer layout listener
// to toggle the button
drawer.addDrawerListener(actionBarDrawerToggle);
actionBarDrawerToggle.syncState();
// to make the Navigation drawer icon always appear on the action bar
getSupportActionBar().setDisplayHomeAsUpEnabled(true);
}
@Override
public boolean onOptionsItemSelected(@NonNull MenuItem item) {
if (actionBarDrawerToggle.onOptionsItemSelected(item)) {
return true;
}
return super.onOptionsItemSelected(item);
}
public void menuItemOnClicked(MenuItem item) {
Intent intent = null;
Bundle bundle = new Bundle();
switch (item.getItemId()) {
case R.id.menu_item_vehicles:
intent = new Intent(this, ItemDetailHostActivity.class );
//bundle.putString(ItemDetailHostActivity.ARG_ITEM_TYPE, ItemDetailHostActivity.ITEM_TYPE_VEHICLE);
break;
case R.id.menu_item_devices:
intent = new Intent(this, ItemDetailHostActivity.class );
break;
// bundle.putString(ItemDetailHostActivity.ARG_ITEM_TYPE, ItemDetailHostActivity.ITEM_TYPE_DEVICE);
default:
return;
}
startActivity(intent, bundle);
}
/*
@Override
public boolean onCreateOptionsMenu(Menu menu) {
// Inflate the menu; this adds items to the action bar if it is present.
getMenuInflater().inflate(R.menu.main, menu);
return true;
}
*/
}

View File

@ -27,6 +27,7 @@ import eu.csc.vehown.services.notifications.NotificationService;
import eu.csc.vehown.services.rest.vehownserver.VehOwnApiClientFactory;
import eu.csc.vehown.ugp.WifiConnectedReceiver;
import eu.csc.vehown.ui.base.BaseRegistrationActivity;
import eu.csc.vehown.ui.content.ActivityLocalContentNavigation;
import eu.csc.vehown.ui.md.ItemDetailHostActivity;
import eu.csc.vehown.ui.register.RegisterCustomerActivity;
import eu.csc.vehown.ui.register.RegisterVehicleActivity;
@ -109,6 +110,12 @@ public class MainActivity extends AppCompatActivity {
Intent intent = null;
switch (item.getItemId()) {
case R.id.nav_list_content:
;
intent = new Intent(this, ActivityLocalContentNavigation.class);
break;
case R.id.nav_register_base:
Log.d("MainA", "Starting Base Activity")
;

View File

@ -0,0 +1,5 @@
<vector android:height="24dp" android:tint="#000000"
android:viewportHeight="24" android:viewportWidth="24"
android:width="24dp" xmlns:android="http://schemas.android.com/apk/res/android">
<path android:fillColor="@android:color/white" android:pathData="M21.81,12.74l-0.82,-0.63c0,-0.09 0,-0.13 0,-0.22l0.8,-0.63c0.16,-0.12 0.2,-0.34 0.1,-0.51l-0.85,-1.48c-0.07,-0.13 -0.21,-0.2 -0.35,-0.2c-0.05,0 -0.1,0.01 -0.15,0.03l-0.95,0.38c-0.08,-0.05 -0.11,-0.07 -0.19,-0.11l-0.15,-1.01C19.22,8.15 19.05,8 18.85,8h-1.71c-0.2,0 -0.37,0.15 -0.4,0.34L16.6,9.35c-0.03,0.02 -0.07,0.03 -0.1,0.05c-0.03,0.02 -0.06,0.04 -0.09,0.06l-0.95,-0.38c-0.05,-0.02 -0.1,-0.03 -0.15,-0.03c-0.14,0 -0.27,0.07 -0.35,0.2l-0.85,1.48c-0.1,0.17 -0.06,0.39 0.1,0.51l0.8,0.63c0,0.09 0,0.13 0,0.23l-0.8,0.63c-0.16,0.12 -0.2,0.34 -0.1,0.51l0.85,1.48c0.07,0.13 0.21,0.2 0.35,0.2c0.05,0 0.1,-0.01 0.15,-0.03l0.95,-0.37c0.08,0.05 0.12,0.07 0.2,0.11l0.15,1.01c0.03,0.2 0.2,0.34 0.4,0.34h1.71c0.2,0 0.37,-0.15 0.4,-0.34l0.15,-1.01c0.03,-0.02 0.07,-0.03 0.1,-0.05c0.03,-0.02 0.06,-0.04 0.09,-0.06l0.95,0.38c0.05,0.02 0.1,0.03 0.15,0.03c0.14,0 0.27,-0.07 0.35,-0.2l0.85,-1.48C22.01,13.08 21.97,12.86 21.81,12.74zM18,13.5c-0.83,0 -1.5,-0.67 -1.5,-1.5c0,-0.83 0.67,-1.5 1.5,-1.5s1.5,0.67 1.5,1.5C19.5,12.83 18.83,13.5 18,13.5zM17,18H7V6h10v1h2V3c0,-1.1 -0.9,-2 -2,-2H7C5.9,1 5,1.9 5,3v18c0,1.1 0.9,2 2,2h10c1.1,0 2,-0.9 2,-2v-4h-2V18zM7,3h10v1H7V3zM17,21H7v-1h10V21z"/>
</vector>

View File

@ -0,0 +1,5 @@
<vector android:height="24dp" android:tint="#000000"
android:viewportHeight="24" android:viewportWidth="24"
android:width="24dp" xmlns:android="http://schemas.android.com/apk/res/android">
<path android:fillColor="@android:color/white" android:pathData="M3,5v14h17L20,5L3,5zM7,7v2L5,9L5,7h2zM5,13v-2h2v2L5,13zM5,15h2v2L5,17v-2zM18,17L9,17v-2h9v2zM18,13L9,13v-2h9v2zM18,9L9,9L9,7h9v2z"/>
</vector>

View File

@ -0,0 +1,22 @@
<?xml version="1.0" encoding="utf-8"?>
<androidx.drawerlayout.widget.DrawerLayout xmlns:android="http://schemas.android.com/apk/res/android"
xmlns:app="http://schemas.android.com/apk/res-auto"
xmlns:tools="http://schemas.android.com/tools"
android:id="@+id/drawer_layout"
android:layout_width="match_parent"
android:layout_height="match_parent"
android:fitsSystemWindows="true"
tools:openDrawer="start">
<include layout="@layout/content_main"
android:layout_width="match_parent"
android:layout_height="match_parent"
/>
<com.google.android.material.navigation.NavigationView
android:layout_width="wrap_content"
android:layout_height="match_parent"
android:layout_gravity="start"
app:menu="@menu/menu_activity_local_content" />
</androidx.drawerlayout.widget.DrawerLayout>

View File

@ -0,0 +1,9 @@
<?xml version="1.0" encoding="utf-8"?>
<androidx.constraintlayout.widget.ConstraintLayout xmlns:android="http://schemas.android.com/apk/res/android"
xmlns:app="http://schemas.android.com/apk/res-auto"
xmlns:tools="http://schemas.android.com/tools"
android:layout_width="match_parent"
android:layout_height="match_parent"
tools:context=".ui.content.ActivityLocalContentNavigation">
</androidx.constraintlayout.widget.ConstraintLayout>

View File

@ -0,0 +1,10 @@
<?xml version="1.0" encoding="utf-8"?>
<menu xmlns:android="http://schemas.android.com/apk/res/android"
xmlns:app="http://schemas.android.com/apk/res-auto">
<item android:id="@+id/action_settings"
android:title="@string/action_settings"
android:orderInCategory="100"
app:showAsAction="never" />
</menu>

View File

@ -6,11 +6,17 @@
<group android:checkableBehavior="single"
>
<item
android:id="@+id/nav_list_vehicles"
android:icon="@drawable/ic_baseline_dashboard_24"
android:title="@string/menu_list_vehicles"
android:onClick="menuItemOnClicked"
/>
android:id="@+id/nav_list_content"
android:icon="@drawable/ic_baseline_dashboard_24"
android:title="@string/menu_list_content"
android:onClick="menuItemOnClicked"
/>
<item
android:id="@+id/nav_list_vehicles"
android:icon="@drawable/ic_baseline_dashboard_24"
android:title="@string/menu_list_vehicles"
android:onClick="menuItemOnClicked"
/>
</group>
<group android:checkableBehavior="single">
<item

View File

@ -0,0 +1,8 @@
<?xml version="1.0" encoding="utf-8"?>
<menu xmlns:android="http://schemas.android.com/apk/res/android"
xmlns:app="http://schemas.android.com/apk/res-auto">
<item android:id="@+id/action_settings"
android:title="@string/action_settings"
android:orderInCategory="100"
app:showAsAction="never" />
</menu>

View File

@ -0,0 +1,8 @@
<?xml version="1.0" encoding="utf-8"?>
<menu xmlns:android="http://schemas.android.com/apk/res/android"
xmlns:app="http://schemas.android.com/apk/res-auto">
<item android:id="@+id/action_settings"
android:title="@string/action_settings"
android:orderInCategory="100"
app:showAsAction="never" />
</menu>

View File

@ -0,0 +1,17 @@
<?xml version="1.0" encoding="utf-8"?>
<menu xmlns:android="http://schemas.android.com/apk/res/android"
xmlns:tools="http://schemas.android.com/tools"
tools:showIn="navigation_view">
<item
android:id="@+id/menu_item_vehicles"
android:icon="@drawable/ic_baseline_dashboard_24"
android:onClick="menuItemOnClicked"
android:title="Vehicles" />
<item
android:id="@+id/menu_item_devices"
android:icon="@drawable/ic_baseline_dashboard_24"
android:onClick="menuItemOnClicked"
android:title="Devices" />
</menu>

View File

@ -159,6 +159,17 @@
<string name="title_register_device">Device</string>
<string name="btn_registration">Register</string>
<string name="title_register_customer">Customer</string>
<string name="menu_list_content">Content</string>
<string name="title_activity_local_content_navigation">LocalContentNavigationActivity</string>
<string name="nav_header_title">Android Studio</string>
<string name="nav_header_subtitle">android.studio@android.com</string>
<string name="nav_header_desc">Navigation header</string>
<string name="menu_home">Home</string>
<string name="menu_gallery">Gallery</string>
<string name="menu_slideshow">Slideshow</string>
<string name="nav_open">Open</string>
<string name="nav_close">Close</string>
<!--string-array name="languages">
<item>english</item>