ticket fomattage
This commit is contained in:
@@ -1,7 +1,9 @@
|
||||
package com.example.quiz;
|
||||
|
||||
import android.annotation.SuppressLint;
|
||||
import android.content.Context;
|
||||
import android.content.pm.PackageManager;
|
||||
import android.graphics.Rect;
|
||||
import android.os.Build;
|
||||
import android.os.Bundle;
|
||||
|
||||
@@ -17,7 +19,9 @@ import androidx.recyclerview.widget.RecyclerView;
|
||||
import android.provider.Settings;
|
||||
import android.text.Editable;
|
||||
import android.text.TextWatcher;
|
||||
import android.util.Log;
|
||||
import android.view.LayoutInflater;
|
||||
import android.view.MotionEvent;
|
||||
import android.view.View;
|
||||
import android.view.ViewGroup;
|
||||
|
||||
@@ -41,6 +45,7 @@ import java.net.NetworkInterface;
|
||||
import java.util.Collections;
|
||||
import java.util.Enumeration;
|
||||
import java.util.List;
|
||||
import java.util.Objects;
|
||||
|
||||
import dagger.hilt.android.AndroidEntryPoint;
|
||||
|
||||
@@ -61,6 +66,8 @@ public class ServerConfig extends Fragment {
|
||||
|
||||
PointDeVenteAdapter pointDeVenteAdapter;
|
||||
|
||||
TpeResponse existingTpe;
|
||||
|
||||
PointDeVente pdv = null;
|
||||
|
||||
private PointDeVenteViewModel pointDeVenteViewModel;
|
||||
@@ -100,9 +107,66 @@ public class ServerConfig extends Fragment {
|
||||
toolbar.setTitle("Configuration du terminal");
|
||||
toolbar.setBackgroundColor( getResources().getColor(R.color.primary_green));
|
||||
}
|
||||
if(sharedPrefsHelper.get("terminalId") != null){
|
||||
viewModel.getTpeById(sharedPrefsHelper.get("terminalId")).observe(getViewLifecycleOwner(), new Observer<Result<TpeResponse>>() {
|
||||
@Override
|
||||
public void onChanged(Result<TpeResponse> tpeResult) {
|
||||
switch (tpeResult.status){
|
||||
case LOADING:
|
||||
loader.show("Chargement du TPE");
|
||||
break;
|
||||
case SUCCESS:
|
||||
loader.dismiss();
|
||||
existingTpe = tpeResult.data;
|
||||
if( existingTpe != null && Objects.equals(sharedPrefsHelper.get("terminalId"), String.valueOf(existingTpe.getId()))){
|
||||
_checkPdv(existingTpe);
|
||||
return;
|
||||
}else{
|
||||
MessageDialog.showError(getContext(), "Ce TPE n'est pas encore configuré");
|
||||
_startAutocomplete();
|
||||
break;
|
||||
}
|
||||
case ERROR:
|
||||
loader.dismiss();
|
||||
MessageDialog.showError(getContext(), "Erreur lors du chargement du TPE");
|
||||
break;
|
||||
}
|
||||
}
|
||||
});
|
||||
}
|
||||
_startAutocomplete();
|
||||
super.onViewCreated(view, savedInstanceState);
|
||||
}
|
||||
|
||||
|
||||
@SuppressLint("ClickableViewAccessibility")
|
||||
void _startAutocomplete(){
|
||||
pointDeVenteAdapter = new PointDeVenteAdapter();
|
||||
RecyclerView recyclerView = binding.pointRecyclerView;
|
||||
recyclerView.setLayoutManager(new LinearLayoutManager(getContext()));
|
||||
binding.getRoot().setOnTouchListener((v, event) -> {
|
||||
if (event.getAction() == MotionEvent.ACTION_DOWN) {
|
||||
// Vérifier si le clic est en dehors de l'autocomplete
|
||||
if (binding.autocompleteContainer.getVisibility() == View.VISIBLE && !binding.pointDeVente.isEnabled()) {
|
||||
int[] location = new int[2];
|
||||
binding.autocompleteContainer.getLocationOnScreen(location);
|
||||
Rect rect = new Rect(
|
||||
location[0],
|
||||
location[1],
|
||||
location[0] + binding.autocompleteContainer.getWidth(),
|
||||
location[1] + binding.autocompleteContainer.getHeight()
|
||||
);
|
||||
|
||||
int x = (int) event.getRawX();
|
||||
int y = (int) event.getRawY();
|
||||
|
||||
if (!rect.contains(x, y)) {
|
||||
binding.autocompleteContainer.setVisibility(View.GONE);
|
||||
}
|
||||
}
|
||||
}
|
||||
return false;
|
||||
});
|
||||
binding.pointDeVente.addTextChangedListener(new TextWatcher() {
|
||||
@Override
|
||||
public void beforeTextChanged(CharSequence charSequence, int i, int i1, int i2) {
|
||||
@@ -112,7 +176,7 @@ public class ServerConfig extends Fragment {
|
||||
@Override
|
||||
public void onTextChanged(CharSequence charSequence, int i, int i1, int i2) {
|
||||
if(!isUserTap) return;
|
||||
if(charSequence.toString().isEmpty() || charSequence.toString().length()==0){
|
||||
if(charSequence.toString().isEmpty() || !binding.pointDeVente.isEnabled()){
|
||||
recyclerView.setVisibility(View.GONE);
|
||||
binding.autocompleteContainer.setVisibility(View.GONE);
|
||||
return;
|
||||
@@ -157,7 +221,34 @@ public class ServerConfig extends Fragment {
|
||||
|
||||
}
|
||||
});
|
||||
super.onViewCreated(view, savedInstanceState);
|
||||
}
|
||||
|
||||
void _checkPdv(Tpe eTpe){
|
||||
binding.numeroSerie.setText(eTpe.getNumeroSerie());
|
||||
binding.brand.setText(eTpe.getTypeTerminal());
|
||||
binding.model.setText(eTpe.getModeleAppareil());
|
||||
binding.type.setText(eTpe.getTypeTerminal());
|
||||
pointDeVenteViewModel.getPointDeVenteById(String.valueOf(eTpe.getPointDeVenteId())).observe(getViewLifecycleOwner(), new Observer<Result<PointDeVente>>() {
|
||||
@Override
|
||||
public void onChanged(Result<PointDeVente> pointDeVenteResult) {
|
||||
switch (pointDeVenteResult.status){
|
||||
case LOADING:
|
||||
loader.show("Chargement du point de vente");
|
||||
break;
|
||||
case SUCCESS:
|
||||
loader.dismiss();
|
||||
binding.pointDeVente.setEnabled(false);
|
||||
binding.pointDeVente.setText(pointDeVenteResult.data.getNom());
|
||||
binding.validate.setClickable(false);
|
||||
MessageDialog.showSuccess(getContext(), "Ce tpe est déjà configuré");
|
||||
break;
|
||||
case ERROR:
|
||||
loader.dismiss();
|
||||
MessageDialog.showError(getContext(), "Erreur lors du chargement du point de vente");
|
||||
break;
|
||||
}
|
||||
}
|
||||
});
|
||||
}
|
||||
|
||||
@Override
|
||||
|
||||
Reference in New Issue
Block a user