perbaiikan api
This commit is contained in:
No files matched your search
+3
-7
@@ -1,16 +1,12 @@
|
|||||||
FROM golang:1.23-alpine AS builder
|
FROM golang:1.23-alpine AS builder
|
||||||
|
|
||||||
# Set timezone ke Asia/Jakarta
|
|
||||||
ENV TZ=Asia/Jakarta
|
|
||||||
|
|
||||||
WORKDIR /app
|
WORKDIR /app
|
||||||
|
|
||||||
COPY go.mod go.sum ./
|
COPY go.mod ./
|
||||||
|
COPY go.sum ./
|
||||||
RUN go mod tidy
|
RUN go mod download
|
||||||
|
|
||||||
COPY . .
|
COPY . .
|
||||||
|
|
||||||
RUN CGO_ENABLED=0 GOOS=linux go build -a -installsuffix cgo -o main ./cmd/api
|
RUN CGO_ENABLED=0 GOOS=linux go build -a -installsuffix cgo -o main ./cmd/api
|
||||||
# RUN CGO_ENABLED=0 GOOS=linux go build -a -installsuffix cgo -o app .
|
# RUN CGO_ENABLED=0 GOOS=linux go build -a -installsuffix cgo -o app .
|
||||||
|
|
||||||
|
|||||||
@@ -237,6 +237,7 @@ golang.org/x/sync v0.0.0-20190911185100-cd5d95a43a6e/go.mod h1:RxMgew5VJxzue5/jJ
|
|||||||
golang.org/x/sync v0.0.0-20201020160332-67f06af15bc9/go.mod h1:RxMgew5VJxzue5/jJTE5uejpjVlOe/izrB70Jof72aM=
|
golang.org/x/sync v0.0.0-20201020160332-67f06af15bc9/go.mod h1:RxMgew5VJxzue5/jJTE5uejpjVlOe/izrB70Jof72aM=
|
||||||
golang.org/x/sync v0.10.0 h1:3NQrjDixjgGwUOCaF8w2+VYHv0Ve/vGYSbdkTa98gmQ=
|
golang.org/x/sync v0.10.0 h1:3NQrjDixjgGwUOCaF8w2+VYHv0Ve/vGYSbdkTa98gmQ=
|
||||||
golang.org/x/sync v0.10.0/go.mod h1:Czt+wKu1gCyEFDUtn0jG5QVvpJ6rzVqr5aXyt9drQfk=
|
golang.org/x/sync v0.10.0/go.mod h1:Czt+wKu1gCyEFDUtn0jG5QVvpJ6rzVqr5aXyt9drQfk=
|
||||||
|
golang.org/x/sync v0.12.0 h1:MHc5BpPuC30uJk597Ri8TV3CNZcTLu6B6z4lJy+g6Jw=
|
||||||
golang.org/x/sync v0.12.0/go.mod h1:1dzgHSNfp02xaA81J2MS99Qcpr2w7fw1gpm99rleRqA=
|
golang.org/x/sync v0.12.0/go.mod h1:1dzgHSNfp02xaA81J2MS99Qcpr2w7fw1gpm99rleRqA=
|
||||||
golang.org/x/sys v0.0.0-20190215142949-d0b11bdaac8a/go.mod h1:STP8DvDyc/dI5b8T5hshtkjS+E42TnysNCUPdjciGhY=
|
golang.org/x/sys v0.0.0-20190215142949-d0b11bdaac8a/go.mod h1:STP8DvDyc/dI5b8T5hshtkjS+E42TnysNCUPdjciGhY=
|
||||||
golang.org/x/sys v0.0.0-20190412213103-97732733099d/go.mod h1:h1NjWce9XRLGQEsW7wpKNCjG9DtNlClVuFLEZdDNbEs=
|
golang.org/x/sys v0.0.0-20190412213103-97732733099d/go.mod h1:h1NjWce9XRLGQEsW7wpKNCjG9DtNlClVuFLEZdDNbEs=
|
||||||
|
|||||||
@@ -36,8 +36,9 @@ func (s *Server) RegisterRoutes() http.Handler {
|
|||||||
admin.POST("/delete", dataretribusiHandler.DeleteDataRetribusi)
|
admin.POST("/delete", dataretribusiHandler.DeleteDataRetribusi)
|
||||||
}
|
}
|
||||||
|
|
||||||
data_retribusi.GET("/getdataall/Limit/:limit/Offset/:offset", dataretribusiHandler.GetAllDataRetribusi)
|
data_retribusi.GET("/getdata/Limit/:limit/Offset/:offset", dataretribusiHandler.GetAllDataRetribusi)
|
||||||
data_retribusi.GET("/getdata/Kodetarif/:kodetarif/Limit/:limit/Offset/:offset", dataretribusiHandler.Dataretribusiget)
|
data_retribusi.GET("/kodetarif/:kodetarif", dataretribusiHandler.Dataretribusiget)
|
||||||
|
data_retribusi.GET("/kelompokobyek/:kelompok", dataretribusiHandler.DataretribusigetbyKel)
|
||||||
}
|
}
|
||||||
|
|
||||||
return r
|
return r
|
||||||
|
|||||||
@@ -51,10 +51,10 @@ func (s *DatabaseService) GetAlldataretribusi(Limit, Offset string) ([]*satudata
|
|||||||
}
|
}
|
||||||
|
|
||||||
/* *todo get data by kode tarif*/
|
/* *todo get data by kode tarif*/
|
||||||
func (s *DatabaseService) Getdataretribusi(Kodetarif, Limit, Offset string) ([]*satudata_models.DataRetribusiGet, error) {
|
func (s *DatabaseService) Getdataretribusi(Kodetarif string) ([]*satudata_models.DataRetribusiGet, error) {
|
||||||
var dataretribusi []*satudata.DataRetribusiGet
|
var dataretribusi []*satudata.DataRetribusiGet
|
||||||
query := `select * from data_retribusi where "Kode_tarif" = ? LIMIT ? Offset ? `
|
query := `select * from data_retribusi where "Kode_tarif" = ? `
|
||||||
errQuery := s.DB.Debug().Raw(query, Kodetarif, Limit, Offset).Scan(&dataretribusi).Error
|
errQuery := s.DB.Debug().Raw(query, Kodetarif).Scan(&dataretribusi).Error
|
||||||
if errQuery != nil {
|
if errQuery != nil {
|
||||||
if errors.Is(errQuery, gorm.ErrRecordNotFound) {
|
if errors.Is(errQuery, gorm.ErrRecordNotFound) {
|
||||||
errMsg := errors.New("Data Tidak Ditemukan")
|
errMsg := errors.New("Data Tidak Ditemukan")
|
||||||
@@ -67,6 +67,46 @@ func (s *DatabaseService) Getdataretribusi(Kodetarif, Limit, Offset string) ([]*
|
|||||||
return dataretribusi, nil
|
return dataretribusi, nil
|
||||||
}
|
}
|
||||||
|
|
||||||
|
/* *todo get data by kelompok obyek*/
|
||||||
|
func (s *DatabaseService) GetdataretribusibyKelompok(kel string) ([]*satudata_models.DataRetribusiGet, error) {
|
||||||
|
var dataretribusi []*satudata.DataRetribusiGet
|
||||||
|
query := `select * from data_retribusi where "Kelompok_obyek" = ? `
|
||||||
|
errQuery := s.DB.Debug().Raw(query, kel).Scan(&dataretribusi).Error
|
||||||
|
if errQuery != nil {
|
||||||
|
if errors.Is(errQuery, gorm.ErrRecordNotFound) {
|
||||||
|
errMsg := errors.New("Data Tidak Ditemukan")
|
||||||
|
log.Println(errMsg)
|
||||||
|
return nil, errMsg
|
||||||
|
}
|
||||||
|
log.Println(errQuery)
|
||||||
|
return nil, errQuery
|
||||||
|
}
|
||||||
|
return dataretribusi, nil
|
||||||
|
}
|
||||||
|
|
||||||
|
/* *todo get data kelompok obyek*/
|
||||||
|
func (s *DatabaseService) Validasikelompok(kel string) (bool, error) {
|
||||||
|
var count int
|
||||||
|
query := `SELECT COUNT(DISTINCT "Kelompok_obyek") FROM data_retribusi WHERE "Kelompok_obyek" = ?`
|
||||||
|
errQuery := s.DB.Debug().Raw(query, kel).Scan(&count).Error
|
||||||
|
if errQuery != nil {
|
||||||
|
log.Println(errQuery)
|
||||||
|
return false, errQuery
|
||||||
|
}
|
||||||
|
return count > 0, nil
|
||||||
|
}
|
||||||
|
|
||||||
|
func (s *DatabaseService) Validasikode(kodetarif string) (bool, error) {
|
||||||
|
var count int
|
||||||
|
query := `SELECT COUNT(DISTINCT "Kode_tarif") FROM data_retribusi WHERE "Kode_tarif" = ?`
|
||||||
|
errQuery := s.DB.Debug().Raw(query, kodetarif).Scan(&count).Error
|
||||||
|
if errQuery != nil {
|
||||||
|
log.Println(errQuery)
|
||||||
|
return false, errQuery
|
||||||
|
}
|
||||||
|
return count > 0, nil
|
||||||
|
}
|
||||||
|
|
||||||
func (s *DatabaseService) Putdataretribusi(req *satudata_models.DataRetribusiPut) error {
|
func (s *DatabaseService) Putdataretribusi(req *satudata_models.DataRetribusiPut) error {
|
||||||
query := ` update data_retribusi set "status" = ?,"Jenis"=?,"Pelayanan" = ?,"Dinas"=?,"Kelompok_obyek"=? ,"Kode_tarif"=? ,"Uraian_1"=? ,"Uraian_2"=? ,"Uraian_3"=? ,"Tarif"=? ,"Satuan"=?,"Tarif_overtime"=?,"Satuan_overtime"=? ,"Rekening_pokok"=? ,"Rekening_denda"=? where "id" = ? `
|
query := ` update data_retribusi set "status" = ?,"Jenis"=?,"Pelayanan" = ?,"Dinas"=?,"Kelompok_obyek"=? ,"Kode_tarif"=? ,"Uraian_1"=? ,"Uraian_2"=? ,"Uraian_3"=? ,"Tarif"=? ,"Satuan"=?,"Tarif_overtime"=?,"Satuan_overtime"=? ,"Rekening_pokok"=? ,"Rekening_denda"=? where "id" = ? `
|
||||||
errUpdate := s.DB.Debug().Exec(query,
|
errUpdate := s.DB.Debug().Exec(query,
|
||||||
|
|||||||
@@ -53,16 +53,61 @@ func GetAllDataRetribusi(c *gin.Context) {
|
|||||||
}
|
}
|
||||||
c.JSON(http.StatusOK, dataallretribusi)
|
c.JSON(http.StatusOK, dataallretribusi)
|
||||||
}
|
}
|
||||||
|
func DataretribusigetbyKel(c *gin.Context) {
|
||||||
|
db := database.New().GetDB("satudata")
|
||||||
|
satudata := connDatabase.NewDatabaseService(db)
|
||||||
|
kel := c.Param("kelompok")
|
||||||
|
|
||||||
|
log.Println("REQUEST", kel)
|
||||||
|
|
||||||
|
validasi, err := satudata.Validasikelompok(kel)
|
||||||
|
if err != nil {
|
||||||
|
log.Println("Error validating kelompok_obyek:", err)
|
||||||
|
c.JSON(http.StatusInternalServerError, gin.H{
|
||||||
|
"message": "Failed to validate kelompok_obyek",
|
||||||
|
})
|
||||||
|
return
|
||||||
|
}
|
||||||
|
if !validasi {
|
||||||
|
c.JSON(http.StatusBadRequest, gin.H{
|
||||||
|
"message": "Tidak di Temukan Kelompok Obyek",
|
||||||
|
})
|
||||||
|
return
|
||||||
|
}
|
||||||
|
|
||||||
|
dataRetribusi, errData := satudata.GetdataretribusibyKelompok(kel)
|
||||||
|
if errData != nil {
|
||||||
|
log.Println(errData)
|
||||||
|
c.JSON(http.StatusBadRequest, gin.H{
|
||||||
|
"message": errData.Error(),
|
||||||
|
})
|
||||||
|
return
|
||||||
|
}
|
||||||
|
c.JSON(http.StatusOK, dataRetribusi)
|
||||||
|
}
|
||||||
|
|
||||||
func Dataretribusiget(c *gin.Context) {
|
func Dataretribusiget(c *gin.Context) {
|
||||||
db := database.New().GetDB("satudata")
|
db := database.New().GetDB("satudata")
|
||||||
satudata := connDatabase.NewDatabaseService(db)
|
satudata := connDatabase.NewDatabaseService(db)
|
||||||
kodetarif := c.Param("kodetarif")
|
kodetarif := c.Param("kodetarif")
|
||||||
limit := c.Param("limit")
|
|
||||||
offset := c.Param("offset")
|
|
||||||
|
|
||||||
log.Println("REQUEST", kodetarif)
|
log.Println("REQUEST", kodetarif)
|
||||||
dataRetribusi, errData := satudata.Getdataretribusi(kodetarif, limit, offset)
|
validasi, err := satudata.Validasikode(kodetarif)
|
||||||
|
if err != nil {
|
||||||
|
log.Println("Error validating kodetarif:", err)
|
||||||
|
c.JSON(http.StatusInternalServerError, gin.H{
|
||||||
|
"message": "Failed to validate kodetarif",
|
||||||
|
})
|
||||||
|
return
|
||||||
|
}
|
||||||
|
if !validasi {
|
||||||
|
c.JSON(http.StatusBadRequest, gin.H{
|
||||||
|
"message": "Tidak di Temukan Kode Tarif",
|
||||||
|
})
|
||||||
|
return
|
||||||
|
}
|
||||||
|
|
||||||
|
dataRetribusi, errData := satudata.Getdataretribusi(kodetarif)
|
||||||
if errData != nil {
|
if errData != nil {
|
||||||
log.Println(errData)
|
log.Println(errData)
|
||||||
c.JSON(http.StatusBadRequest, gin.H{
|
c.JSON(http.StatusBadRequest, gin.H{
|
||||||
|
|||||||
Reference in New Issue
Block a user