Komang Putra Ответов: 0

Дата цикла не отсортирована (android studio)


Когда-то давно я был постом с помощью петли..
пример :
сегодня 10/28/2020
затем я ввожу данные через 3 дня после этого...

так что выход есть
10/28/2020
10/29/2020
10/30/2020

вот мой код для поста с датой цикла :
private void khusus() throws ParseException {
        pDialog = new ProgressDialog(this);
        showDialog();
        pDialog.setContentView(R.layout.progress_dialog);
        pDialog.getWindow().setBackgroundDrawableResource(
                android.R.color.transparent
        );

        final int num3 = (int) Double.parseDouble(hari.getText().toString());
        int i;
        String date = edittext.getText().toString();
        final SimpleDateFormat sdf = new SimpleDateFormat("yyyy/MM/dd");
        final Calendar c = Calendar.getInstance();
            c.setTime(sdf.parse(date));
            for (i = 1; i <= num3; i++) {
                final String tanggal = sdf.format(c.getTime());
                c.add(Calendar.DATE, 1);
                System.out.println("Tanggal = " + tanggal);

                StringRequest stringRequest2 = new StringRequest(Request.Method.POST, "http://10.12.0.220/db_eis/cuti_khusus_insert.php",
                        new Response.Listener<String>() {
                            @Override
                            public void onResponse(String response) {
                                    hideDialog();
                                    Toast.makeText(getApplicationContext(), "data sudah dimasukkan", Toast.LENGTH_LONG).show();
                                    cutikhusus.this.finish();
                                }
                        },
                        new Response.ErrorListener() {
                            @Override
                            public void onErrorResponse(VolleyError error) {
                                hideDialog();
                                Toast.makeText(getApplicationContext(), error.getMessage(), Toast.LENGTH_LONG).show();

                            }

                        }) {


                    @Override
                    protected Map<String, String> getParams() throws AuthFailureError {

                        Map<String, String> params = new HashMap<String, String>();
                        sharedPreferences = getSharedPreferences("user_details", MODE_PRIVATE);

                        String pengajuan = nopengajuan.getText().toString();
                        String nik_baru = sharedPreferences.getString(KEY_NIK, null);
                        String jabatan = txt_nomor_jabatan.getText().toString();
                        String jenis = jeniscuti.getText().toString();

                        String kondisi = spinner.getSelectedItem().toString();
                        String keterangan_khusus = keterangan.getText().toString();
                        String gambar = imagetoString(bitmap);

                        params.put("no_pengajuan_khusus", pengajuan);
                        params.put("nik_cuti_khusus", nik_baru);
                        params.put("jabatan_cuti_khusus", jabatan);
                        params.put("jenis_cuti_khusus", jenis);
                        params.put("kondisi", kondisi);
                        params.put("start_cuti_khusus", tanggal);

                        params.put("ket_tambahan_khusus", keterangan_khusus);
                        params.put("status_cuti_khusus", "0");
                        params.put("status_cuti_khusus_2", "0");
                        params.put("dokumen_cuti_khusus", gambar);

                        return params;
                    }
                };
                stringRequest2.setRetryPolicy(new DefaultRetryPolicy(20 * 1000, 0,
                        DefaultRetryPolicy.DEFAULT_BACKOFF_MULT));
                RequestQueue requestQueue2 = Volley.newRequestQueue(this);
                requestQueue2.add(stringRequest2);
            }
        }


Что я уже пробовал:

в этом случае, когда я ввожу 5, все в порядке, потому что он хорошо сортируется в mysql
10/28/2020
10/29/2020
10/30/2020
10/31/2020
11/01/2020

но когда я ввожу более 20, это не очень хорошо сортируется в mysql

10/23/2020
10/29/2020
10/21/2020
11/01/2020
11/19/2020
|
|
|
и т.д...

Итак, это код, который я использовал для post with loop...
int i;
        String date = edittext.getText().toString();
        final SimpleDateFormat sdf = new SimpleDateFormat("yyyy/MM/dd");
        final Calendar c = Calendar.getInstance();
            c.setTime(sdf.parse(date));
            for (i = 1; i <= num3; i++) {
                final String tanggal = sdf.format(c.getTime());
                c.add(Calendar.DATE, 1);
                System.out.println("Tanggal = " + tanggal);


а это я использовал его для почты...
@Override
                    protected Map<String, String> getParams() throws AuthFailureError {

                        Map<String, String> params = new HashMap<String, String>();
                        sharedPreferences = getSharedPreferences("user_details", MODE_PRIVATE);

                        String pengajuan = nopengajuan.getText().toString();
                        String nik_baru = sharedPreferences.getString(KEY_NIK, null);
                        String jabatan = txt_nomor_jabatan.getText().toString();
                        String jenis = jeniscuti.getText().toString();

                        String kondisi = spinner.getSelectedItem().toString();
                        String keterangan_khusus = keterangan.getText().toString();
                        String gambar = imagetoString(bitmap);

                        params.put("no_pengajuan_khusus", pengajuan);
                        params.put("nik_cuti_khusus", nik_baru);
                        params.put("jabatan_cuti_khusus", jabatan);
                        params.put("jenis_cuti_khusus", jenis);
                        params.put("kondisi", kondisi);
                        params.put("start_cuti_khusus", tanggal);

                        params.put("ket_tambahan_khusus", keterangan_khusus);
                        params.put("status_cuti_khusus", "0");
                        params.put("status_cuti_khusus_2", "0");
                        params.put("dokumen_cuti_khusus", gambar);

                        return params;
                    }
                };

David Crow

"...это не очень хорошо сортируется в mysql"

Что делает ваш SELECT заявление выглядит так? Какой тип поля используется для даты?

Komang Putra

я использую дату, а затем преобразую ее в строку

David Crow

Разве это не должно быть настоящим DATE типаж? Если вы используете CHAR или TEXT вместо этого вам нужно будет сохранить свои значения даты в виде ГГГГММДД вместо.

Komang Putra

да, у меня уже есть это значение даты, но оно не сортируется

David Crow

- да, у меня уже есть это значение даты..."

Дата ценность и его визуальный формат это две разные вещи. На что вы намекаете?

"...но он продолжает не сортироваться"

Вы не показали никакого кода сортировки.

Komang Putra

визуальный формат

0 Ответов