Search in sources :

Example 6 with Place

use of com.example.alphatour.oggetti.Place in project AlphaTour by Frank99DG.

the class FileReceiverActivity method readCsv.

private void readCsv(Intent data) {
    if (data == null) {
        return;
    } else {
        Uri uri = data.getParcelableExtra(Intent.EXTRA_STREAM);
        Toast.makeText(FileReceiverActivity.this, uri.getPath(), Toast.LENGTH_SHORT).show();
        String path = uri.getPath();
        String filename = URLUtil.guessFileName(path, null, null);
        String downloadPath = Environment.getExternalStoragePublicDirectory(Environment.DIRECTORY_DOWNLOADS).getAbsolutePath();
        path = path.substring(path.lastIndexOf('/') + 1);
        File file = new File(downloadPath, filename);
        try {
            BufferedReader read = new BufferedReader(new FileReader(file));
            String line = "";
            Boolean isEmpty = true;
            while ((line = read.readLine()) != null) {
                isEmpty = false;
                String[] token = line.split(",");
                ReadCsv readCsv = new ReadCsv();
                boolean flag = false;
                for (int i = 0; i < token.length; i++) {
                    if (token[i] == null) {
                        flag = true;
                    }
                }
                if (!flag) {
                    if (!token[0].matches("namePlace")) {
                        Element elm = new Element();
                        Place place = new Place();
                        Zone zone = new Zone();
                        Constraint constraint = new Constraint();
                        if (listLineCsv.size() > 0) {
                            setDataToken(token, readCsv);
                            if (!token[0].isEmpty()) {
                                for (int i = 0; i < listPlace.size(); i++) {
                                    if (!listPlace.get(i).getName().matches(token[0]) && !listPlace.get(i).getCity().matches(token[1]) && !listPlace.get(i).getTypology().matches(token[2])) {
                                        idP++;
                                        place.setIdPlace(idP);
                                        place.setName(token[0]);
                                        place.setCity(token[1]);
                                        place.setTypology(token[2]);
                                        listPlace.add(place);
                                    }
                                }
                                for (int j = 0; j < listPlace.size(); j++) {
                                    if (!listZone.get(i).getName().matches(token[3])) {
                                        zone.setIdPl(idP);
                                        zone.setName(token[3]);
                                        idZ++;
                                        listZone.add(zone);
                                    }
                                }
                                elm.setIdZon(idZ);
                                elm.setTitle(readCsv.getTitleObject());
                                elm.setDescription(readCsv.getDescriptionObject());
                                elm.setQrData(readCsv.getQrDataObject());
                                elm.setPhoto(Uri.parse(readCsv.getLinkImageObject()));
                                String[] str = readCsv.getLinkImageObject().split("Objects_");
                                String[] st = str[1].split("\\?");
                                String idPh = st[0];
                                elm.setIdPhotoAndQrCodeString(idPh);
                                elm.setZoneRif(token[3]);
                                if (!token[8].isEmpty() && !!token[9].isEmpty()) {
                                    constraint.setFromZone(token[8]);
                                    constraint.setInZone(token[9]);
                                }
                                listElement.add(elm);
                                if (!token[8].isEmpty() && !token[9].isEmpty()) {
                                    constraint.setFromZone(token[8]);
                                    constraint.setInZone(token[9]);
                                    listConstranints.add(constraint);
                                }
                            }
                        } else {
                            setDataToken(token, readCsv);
                            if (!token[0].isEmpty()) {
                                elm.setTitle(readCsv.getTitleObject());
                                elm.setDescription(readCsv.getDescriptionObject());
                                elm.setQrData(readCsv.getQrDataObject());
                                elm.setPhoto(Uri.parse(readCsv.getLinkImageObject()));
                                String[] str = readCsv.getLinkImageObject().split("Objects_");
                                String[] st = str[1].split("\\?");
                                String idPh = st[0];
                                elm.setIdPhotoAndQrCodeString(idPh);
                                elm.setZoneRif(token[3]);
                                place.setName(token[0]);
                                place.setCity(token[1]);
                                place.setTypology(token[2]);
                                place.setIdPlace(idP);
                                zone.setIdPl(idP);
                                zone.setName(token[3]);
                                elm.setIdZon(idZ);
                                listPlace.add(place);
                                listZone.add(zone);
                                listElement.add(elm);
                            }
                            if (!token[8].isEmpty() && !token[9].isEmpty()) {
                                constraint.setFromZone(token[8]);
                                constraint.setInZone(token[9]);
                                listConstranints.add(constraint);
                            }
                        }
                    }
                } else {
                    Toast.makeText(FileReceiverActivity.this, "Errore duratnte l'importazione del file, alcuni" + "campi potrebbero essere vuoti", Toast.LENGTH_LONG).show();
                    line = null;
                }
            }
            if (isEmpty) {
                Toast.makeText(FileReceiverActivity.this, "Errore duratnte l'importazione del file, alcuni" + "campi potrebbero essere vuoti", Toast.LENGTH_LONG).show();
            } else {
                savePlace();
                saveConstraints();
                new Handler().postDelayed(new Runnable() {

                    @Override
                    public void run() {
                        if (success) {
                            Intent intent = new Intent(FileReceiverActivity.this, DashboardActivity.class);
                            startActivity(intent);
                            progressBar.setVisibility(View.GONE);
                        } else {
                            Toast.makeText(FileReceiverActivity.this, "Salvataggio Luogo non riuscito", Toast.LENGTH_LONG).show();
                            progressBar.setVisibility(View.GONE);
                        }
                    }
                }, 2000L);
            }
        } catch (FileNotFoundException e) {
            e.printStackTrace();
        } catch (IOException e) {
            e.printStackTrace();
        }
    }
}
Also used : Constraint(com.example.alphatour.oggetti.Constraint) Zone(com.example.alphatour.oggetti.Zone) Element(com.example.alphatour.oggetti.Element) FileNotFoundException(java.io.FileNotFoundException) Handler(android.os.Handler) Intent(android.content.Intent) ElementString(com.example.alphatour.oggetti.ElementString) IOException(java.io.IOException) Uri(android.net.Uri) ReadCsv(com.example.alphatour.ReadCsv) Constraint(com.example.alphatour.oggetti.Constraint) BufferedReader(java.io.BufferedReader) DashboardActivity(com.example.alphatour.DashboardActivity) FileReader(java.io.FileReader) File(java.io.File) Place(com.example.alphatour.oggetti.Place)

Example 7 with Place

use of com.example.alphatour.oggetti.Place in project AlphaTour by Frank99DG.

the class DashboardActivity method inputSearchClick.

private void inputSearchClick() {
    inputSearch.setOnItemClickListener(new AdapterView.OnItemClickListener() {

        @Override
        public void onItemClick(AdapterView<?> parent, View view, int position, long id) {
            TourItem clickedItem = (TourItem) parent.getItemAtPosition(position);
            String clickedTourText = clickedItem.getTourText();
            db.collection("Elements").get().addOnSuccessListener(new OnSuccessListener<QuerySnapshot>() {

                @Override
                public void onSuccess(QuerySnapshot queryDocumentSnapshots) {
                    if (!queryDocumentSnapshots.isEmpty()) {
                        // lista elementi
                        List<DocumentSnapshot> listDocument = queryDocumentSnapshots.getDocuments();
                        for (DocumentSnapshot d : listDocument) {
                            ElementString element = d.toObject(ElementString.class);
                            if (clickedTourText.equals(element.getTitle())) {
                                Intent intent = new Intent(DashboardActivity.this, ModifyObjectActivity.class);
                                intent.putExtra("data", element.getQrData());
                                String dashboardFlag = "1";
                                intent.putExtra("dashboardFlag", dashboardFlag);
                                startActivity(intent);
                                inputSearch.setText(null);
                                break;
                            }
                        }
                    }
                }
            });
            db.collection("Zones").get().addOnSuccessListener(new OnSuccessListener<QuerySnapshot>() {

                @Override
                public void onSuccess(QuerySnapshot queryDocumentSnapshots) {
                    if (!queryDocumentSnapshots.isEmpty()) {
                        // lista zone
                        List<DocumentSnapshot> listDocument = queryDocumentSnapshots.getDocuments();
                        for (DocumentSnapshot d : listDocument) {
                            Zone zone = d.toObject(Zone.class);
                            if (clickedTourText.equals(zone.getName())) {
                                Intent intent = new Intent(DashboardActivity.this, ModifyZoneActivity.class);
                                intent.putExtra("idPlace", zone.getIdPlace());
                                intent.putExtra("Zone", zone.getName());
                                String dashboardFlag = "1";
                                intent.putExtra("dashboardFlag", dashboardFlag);
                                startActivity(intent);
                                inputSearch.setText(null);
                                break;
                            }
                        }
                    }
                }
            });
            db.collection("Places").get().addOnSuccessListener(new OnSuccessListener<QuerySnapshot>() {

                @Override
                public void onSuccess(QuerySnapshot queryDocumentSnapshots) {
                    if (!queryDocumentSnapshots.isEmpty()) {
                        // lista luoghi
                        List<DocumentSnapshot> listDocument = queryDocumentSnapshots.getDocuments();
                        for (DocumentSnapshot d : listDocument) {
                            Place place = d.toObject(Place.class);
                            if (clickedTourText.equals(place.getName())) {
                                Intent intent = new Intent(DashboardActivity.this, ModifyPlaceActivity.class);
                                intent.putExtra("Place", place.getName());
                                String dashboardFlag = "1";
                                intent.putExtra("dashboardFlag", dashboardFlag);
                                startActivity(intent);
                                inputSearch.setText(null);
                                break;
                            }
                        }
                    }
                }
            });
        }
    });
}
Also used : Zone(com.example.alphatour.oggetti.Zone) Intent(android.content.Intent) ElementString(com.example.alphatour.oggetti.ElementString) View(android.view.View) AdapterView(android.widget.AdapterView) BottomNavigationView(com.google.android.material.bottomnavigation.BottomNavigationView) AutoCompleteTextView(android.widget.AutoCompleteTextView) TextView(android.widget.TextView) TourItem(com.example.alphatour.oggetti.TourItem) QuerySnapshot(com.google.firebase.firestore.QuerySnapshot) QueryDocumentSnapshot(com.google.firebase.firestore.QueryDocumentSnapshot) DocumentSnapshot(com.google.firebase.firestore.DocumentSnapshot) AdapterView(android.widget.AdapterView) OnSuccessListener(com.google.android.gms.tasks.OnSuccessListener) ElementString(com.example.alphatour.oggetti.ElementString) Place(com.example.alphatour.oggetti.Place)

Example 8 with Place

use of com.example.alphatour.oggetti.Place in project AlphaTour by Frank99DG.

the class ImportPhotoObjectActivity method savePlace.

private void savePlace() {
    for (i = 0; i < listPlace.size(); i++) {
        Place place = new Place(listPlace.get(i).getName(), listPlace.get(i).getCity(), listPlace.get(i).getTypology(), user.getUid());
        db.collection("Places").add(place).addOnSuccessListener(new OnSuccessListener<DocumentReference>() {

            @Override
            public void onSuccess(DocumentReference documentReference) {
                idPlace = documentReference.getId();
                saveZones(listZone, listPlace.get(i - 1).getIdPlace());
                success = true;
            }
        }).addOnFailureListener(new OnFailureListener() {

            @Override
            public void onFailure(@NonNull Exception e) {
                Toast.makeText(ImportPhotoObjectActivity.this, "Salvataggio Luogo non riuscito", Toast.LENGTH_LONG).show();
                progressBar.setVisibility(View.GONE);
            }
        });
    }
}
Also used : OnSuccessListener(com.google.android.gms.tasks.OnSuccessListener) Place(com.example.alphatour.oggetti.Place) DocumentReference(com.google.firebase.firestore.DocumentReference) OnFailureListener(com.google.android.gms.tasks.OnFailureListener) FileNotFoundException(java.io.FileNotFoundException) IOException(java.io.IOException)

Example 9 with Place

use of com.example.alphatour.oggetti.Place in project AlphaTour by Frank99DG.

the class ListPlacesActivity method onCreate.

@Override
protected void onCreate(Bundle savedInstanceState) {
    super.onCreate(savedInstanceState);
    setContentView(R.layout.activity_list_places);
    // istanza oggetti firebase
    db = FirebaseFirestore.getInstance();
    auth = FirebaseAuth.getInstance();
    user = auth.getCurrentUser();
    idUser = user.getUid();
    layout_list = findViewById(R.id.listPlacesLayout);
    db.collection("Places").whereEqualTo("idUser", idUser).get().addOnSuccessListener(new OnSuccessListener<QuerySnapshot>() {

        @Override
        public void onSuccess(QuerySnapshot queryDocumentSnapshots) {
            if (!queryDocumentSnapshots.isEmpty()) {
                List<DocumentSnapshot> listDocuments = queryDocumentSnapshots.getDocuments();
                for (DocumentSnapshot d : listDocuments) {
                    Place place = d.toObject(Place.class);
                    final View placeView = getLayoutInflater().inflate(R.layout.row_update, null, false);
                    TextView editablePlace = (TextView) placeView.findViewById(R.id.itemUpdateText);
                    editablePlace.setText(place.getName());
                    layout_list.addView(placeView);
                    editablePlace.setOnClickListener(new View.OnClickListener() {

                        @Override
                        public void onClick(View placeView) {
                            Intent intent = new Intent(ListPlacesActivity.this, ModifyPlaceActivity.class);
                            intent.putExtra("Place", editablePlace.getText().toString());
                            // per indicare a ModifyPlace che fa parte del Modifica Luogo
                            String dashboardFlag = "0";
                            intent.putExtra("dashboardFlag", dashboardFlag);
                            startActivity(intent);
                        }
                    });
                }
            }
        }
    });
}
Also used : DocumentSnapshot(com.google.firebase.firestore.DocumentSnapshot) List(java.util.List) TextView(android.widget.TextView) Intent(android.content.Intent) TextView(android.widget.TextView) View(android.view.View) QuerySnapshot(com.google.firebase.firestore.QuerySnapshot) Place(com.example.alphatour.oggetti.Place)

Aggregations

Place (com.example.alphatour.oggetti.Place)9 Intent (android.content.Intent)5 ElementString (com.example.alphatour.oggetti.ElementString)4 Zone (com.example.alphatour.oggetti.Zone)4 OnSuccessListener (com.google.android.gms.tasks.OnSuccessListener)4 FileNotFoundException (java.io.FileNotFoundException)4 IOException (java.io.IOException)4 View (android.view.View)3 TextView (android.widget.TextView)3 OnFailureListener (com.google.android.gms.tasks.OnFailureListener)3 DocumentReference (com.google.firebase.firestore.DocumentReference)3 DocumentSnapshot (com.google.firebase.firestore.DocumentSnapshot)3 QuerySnapshot (com.google.firebase.firestore.QuerySnapshot)3 Uri (android.net.Uri)2 Handler (android.os.Handler)2 AdapterView (android.widget.AdapterView)2 AutoCompleteTextView (android.widget.AutoCompleteTextView)2 Constraint (com.example.alphatour.oggetti.Constraint)2 Element (com.example.alphatour.oggetti.Element)2 BufferedReader (java.io.BufferedReader)2