Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Bug/error: Tidak bisa input kode lembaga yang sudah digunakan di kelompok #5322

Closed
andifahruddinakas opened this issue Jul 3, 2022 · 3 comments
Assignees
Labels

Comments

@andifahruddinakas
Copy link
Member

andifahruddinakas commented Jul 3, 2022

Jelaskan error yg dialami

Saat melakukan input data lembaga dengan kode yang sudah digunakan di data kelompok akan menampilkan notif gagal simpan karena kode lembaga sudah digunakan.

Cara untuk mereplikasi errornya

  1. Buat terlebih dahulu data kelompok.
  2. Buat data lembaga menggunakan data kode kelompok tsb.
  3. Simpan, dan akan tampil notif bahwa kode lembaga sudah digunakan.

Hasil yg diharapkan

Bisa gunakan kode yg belum terdaftar di lembaga

Tangkapan layar dan log error

lembaga

Rilis Versi OpenSID

Rilis Premium

Versi OpenSID

v22.07-premium

Tema Yang Digunakan

bawaan

Informasi tambahan

SOLUSI :

  • Gunakan unique 2 kolom (tipe dan kode)
@agungsugiarto
Copy link
Member

issue ini tidak bisa diterapkan, karena kelompok dan anggota menggunakan table yg sama sementara field yg ada didatabase harus unique.

@agungsugiarto agungsugiarto self-assigned this Jul 6, 2022
@agungsugiarto agungsugiarto added this to the OpenSID 22.08 M1 milestone Jul 7, 2022
@andifahruddinakas
Copy link
Member Author

issue ini tidak bisa diterapkan, karena kelompok dan anggota menggunakan table yg sama sementara field yg ada didatabase harus unique.

Tahapan :

  1. Gunakan uniq 2 tabel, yakni tipe dan kolom (seperti penjelasan issue di atas)
    Contoh yg pernah digunakan :
// Tambahkan index pada program_id dan kartu_id_pend
if (! $this->cek_indeks('program_peserta', 'program_peserta_program_id_kartu_id_pend_unique')) {
    Schema::table('program_peserta', static function (Blueprint $table) {
        $table->unique(['program_id', 'kartu_id_pend']);
    });
}
  1. Untuk insert dan update, bisa cek dlu sebelum di proses.
    Contoh yg pernah digunakan :
public function add_peserta($program_id = 0)
{
    $this->redirect_hak_akses('u');

    $cek = BantuanPeserta::where('program_id', $program_id)->where('kartu_id_pend', $this->input->post('kartu_id_pend'))->first();

    if ($cek) {
        $this->session->success = -2;
    } else {
        $this->program_bantuan_model->add_peserta($program_id);
    }

    $redirect = ($this->session->userdata('aksi') != 1) ? $_SERVER['HTTP_REFERER'] : "program_bantuan/detail/{$program_id}";

    $this->session->unset_userdata('aksi');

    redirect($redirect);
}

@vickyrolanda
Copy link
Contributor

Sudah diselesaikan di PR https://github.com/OpenSID/premium/pull/1114

@devrakapriyo devrakapriyo mentioned this issue Aug 3, 2022
@andifahruddinakas andifahruddinakas mentioned this issue Jan 4, 2023
65 tasks
@agungsugiarto agungsugiarto mentioned this issue Feb 23, 2023
82 tasks
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
Projects
None yet
Development

No branches or pull requests

3 participants