add condition hari libur:
This commit is contained in:
21
database/satu_data/jadwal/jadwal_libur.go
Normal file
21
database/satu_data/jadwal/jadwal_libur.go
Normal file
@@ -0,0 +1,21 @@
|
||||
package jadwal
|
||||
|
||||
import (
|
||||
"bridging-rssa/config"
|
||||
"bridging-rssa/models/jadwal"
|
||||
"log"
|
||||
)
|
||||
|
||||
func GetJadwalLibur(date string) (*jadwal.DaftarJadwalLiburPelayanan, bool, error) {
|
||||
var jadwalLibur *jadwal.DaftarJadwalLiburPelayanan
|
||||
query := `select * from daftar_jadwal_libur_pelayanan where "Tanggal_libur_pelayanan" = ?`
|
||||
q := config.SatuDataDB.Debug().Raw(query, date).Scan(&jadwalLibur)
|
||||
if q.Error != nil {
|
||||
log.Println(q.Error)
|
||||
return nil, false, q.Error
|
||||
} else if q.RowsAffected == 0 {
|
||||
log.Println("Tidak pada hari libur")
|
||||
return jadwalLibur, false, nil
|
||||
}
|
||||
return jadwalLibur, true, nil
|
||||
}
|
||||
@@ -2,6 +2,7 @@ package suratkontrol
|
||||
|
||||
import (
|
||||
cfg "bridging-rssa/config"
|
||||
"bridging-rssa/database/satu_data/jadwal"
|
||||
log_api "bridging-rssa/database/satu_data/log_api"
|
||||
lokasiruang "bridging-rssa/database/satu_data/lokasi_ruang"
|
||||
suratkontrol "bridging-rssa/database/satu_data/surat_kontrol"
|
||||
@@ -43,6 +44,27 @@ func InsertSuratKontrol(c *gin.Context) {
|
||||
return
|
||||
}
|
||||
|
||||
jadwalLibur, isLibur, errLibur := jadwal.GetJadwalLibur(req.TglRencanaKontrol)
|
||||
if errLibur != nil {
|
||||
log.Println(errLibur)
|
||||
c.JSON(http.StatusPreconditionFailed, &sk.ResponseInsertSuratKontrol{
|
||||
MetaData: sk.MetadataString{
|
||||
Code: "203",
|
||||
Message: errLibur.Error(),
|
||||
},
|
||||
})
|
||||
return
|
||||
} else if isLibur {
|
||||
log.Println(jadwalLibur.KeteranganLiburPelayanan)
|
||||
c.JSON(http.StatusPreconditionFailed, &sk.ResponseInsertSuratKontrol{
|
||||
MetaData: sk.MetadataString{
|
||||
Code: "203",
|
||||
Message: jadwalLibur.NamaLiburPelayanan,
|
||||
},
|
||||
})
|
||||
return
|
||||
}
|
||||
|
||||
reqJson, err := json.Marshal(req)
|
||||
if err != nil {
|
||||
log.Println(err)
|
||||
@@ -361,6 +383,23 @@ func UpdateSuratKontrol(c *gin.Context) {
|
||||
return
|
||||
}
|
||||
|
||||
jadwalLibur, isLibur, errLibur := jadwal.GetJadwalLibur(req.TglRencanaKontrol)
|
||||
if errLibur != nil {
|
||||
log.Println(errLibur)
|
||||
c.JSON(http.StatusInternalServerError, &sk.MetadataString{
|
||||
Code: "",
|
||||
Message: err.Error(),
|
||||
})
|
||||
return
|
||||
} else if isLibur {
|
||||
log.Println(jadwalLibur.KeteranganLiburPelayanan)
|
||||
c.JSON(http.StatusInternalServerError, &sk.MetadataString{
|
||||
Code: "",
|
||||
Message: jadwalLibur.NamaLiburPelayanan,
|
||||
})
|
||||
return
|
||||
}
|
||||
|
||||
reqJson, err := json.Marshal(req)
|
||||
if err != nil {
|
||||
log.Println(err)
|
||||
|
||||
7
models/jadwal/jadwal_libur.go
Normal file
7
models/jadwal/jadwal_libur.go
Normal file
@@ -0,0 +1,7 @@
|
||||
package jadwal
|
||||
|
||||
type DaftarJadwalLiburPelayanan struct {
|
||||
NamaLiburPelayanan string `gorm:"column:Nama_libur_pelayanan" json:"Nama_libur_pelayanan"`
|
||||
KeteranganLiburPelayanan string `gorm:"column:Keterangan_libur_pelayanan" json:"Keterangan_libur_pelayanan"`
|
||||
TanggalLiburPelayanan string `gorm:"column:Tanggal_libur_pelayanan" json:"Tanggal_libur_pelayanan"`
|
||||
}
|
||||
Reference in New Issue
Block a user