penambahan log dalam internal

This commit is contained in:
2025-07-30 13:36:24 +07:00
parent 5ac6fa1e40
commit 24a3e7039c
4 changed files with 308 additions and 148 deletions
+141 -141
View File
@@ -1,141 +1,141 @@
// Package docs Code generated by swaggo/swag. DO NOT EDIT
package docs
import "github.com/swaggo/swag"
const docTemplate = `{
"schemes": {{ marshal .Schemes }},
"swagger": "2.0",
"info": {
"description": "{{escape .Description}}",
"title": "{{.Title}}",
"contact": {},
"version": "{{.Version}}"
},
"host": "{{.Host}}",
"basePath": "{{.BasePath}}",
"paths": {
"/api/user": {
"get": {
"description": "returs list of all users from the database",
"tags": [
"Users"
],
"summary": "return list of all",
"responses": {
"200": {
"description": "OK",
"schema": {
"$ref": "#/definitions/models.User"
}
}
}
}
},
"/api/user/create": {
"post": {
"description": "Insert Data User",
"tags": [
"Users"
],
"summary": "Insert Data User",
"responses": {
"200": {
"description": "OK",
"schema": {
"$ref": "#/definitions/models.Response"
}
}
}
}
},
"/api/user/delete/:id": {
"delete": {
"description": "Delete Data User",
"tags": [
"Users"
],
"summary": "Delete Data User",
"responses": {
"200": {
"description": "OK",
"schema": {
"$ref": "#/definitions/models.Response"
}
}
}
}
},
"/api/user/update/:id": {
"put": {
"description": "Update Data User",
"tags": [
"Users"
],
"summary": "Update Data User",
"responses": {
"200": {
"description": "OK",
"schema": {
"$ref": "#/definitions/models.Response"
}
}
}
}
}
},
"definitions": {
"models.Response": {
"type": "object",
"properties": {
"response_code": {
"type": "string"
},
"response_message": {
"type": "string"
}
}
},
"models.User": {
"type": "object",
"properties": {
"agama": {
"type": "string"
},
"alamat": {
"type": "string"
},
"id": {
"type": "string"
},
"jenis_kelamin": {
"type": "string"
},
"nama": {
"type": "string"
},
"umur": {
"type": "integer"
}
}
}
}
}`
// SwaggerInfo holds exported Swagger Info so clients can modify it
var SwaggerInfo = &swag.Spec{
Version: "1",
Host: "localhost:8080",
BasePath: "",
Schemes: []string{},
Title: "Crud User",
Description: "Rest API CRUD User",
InfoInstanceName: "swagger",
SwaggerTemplate: docTemplate,
LeftDelim: "{{",
RightDelim: "}}",
}
func init() {
swag.Register(SwaggerInfo.InstanceName(), SwaggerInfo)
}
// Package docs Code generated by swaggo/swag. DO NOT EDIT
package docs
import "github.com/swaggo/swag"
const docTemplate = `{
"schemes": {{ marshal .Schemes }},
"swagger": "2.0",
"info": {
"description": "{{escape .Description}}",
"title": "{{.Title}}",
"contact": {},
"version": "{{.Version}}"
},
"host": "{{.Host}}",
"basePath": "{{.BasePath}}",
"paths": {
"/api/user": {
"get": {
"description": "returs list of all users from the database",
"tags": [
"Users"
],
"summary": "return list of all",
"responses": {
"200": {
"description": "OK",
"schema": {
"$ref": "#/definitions/models.User"
}
}
}
}
},
"/api/user/create": {
"post": {
"description": "Insert Data User",
"tags": [
"Users"
],
"summary": "Insert Data User",
"responses": {
"200": {
"description": "OK",
"schema": {
"$ref": "#/definitions/models.Response"
}
}
}
}
},
"/api/user/delete/:id": {
"delete": {
"description": "Delete Data User",
"tags": [
"Users"
],
"summary": "Delete Data User",
"responses": {
"200": {
"description": "OK",
"schema": {
"$ref": "#/definitions/models.Response"
}
}
}
}
},
"/api/user/update/:id": {
"put": {
"description": "Update Data User",
"tags": [
"Users"
],
"summary": "Update Data User",
"responses": {
"200": {
"description": "OK",
"schema": {
"$ref": "#/definitions/models.Response"
}
}
}
}
}
},
"definitions": {
"models.Response": {
"type": "object",
"properties": {
"response_code": {
"type": "string"
},
"response_message": {
"type": "string"
}
}
},
"models.User": {
"type": "object",
"properties": {
"agama": {
"type": "string"
},
"alamat": {
"type": "string"
},
"id": {
"type": "string"
},
"jenis_kelamin": {
"type": "string"
},
"nama": {
"type": "string"
},
"umur": {
"type": "integer"
}
}
}
}
}`
// SwaggerInfo holds exported Swagger Info so clients can modify it
var SwaggerInfo = &swag.Spec{
Version: "1",
Host: "localhost:8080",
BasePath: "",
Schemes: []string{},
Title: "Crud User",
Description: "Rest API CRUD User",
InfoInstanceName: "swagger",
SwaggerTemplate: docTemplate,
LeftDelim: "{{",
RightDelim: "}}",
}
func init() {
swag.Register(SwaggerInfo.InstanceName(), SwaggerInfo)
}
+153 -1
View File
@@ -23,6 +23,34 @@ import (
"github.com/google/uuid"
)
func Parse(c *gin.Context) {
var req sk.Parse
err := c.Bind(&req)
if err != nil {
log.Println(err)
c.JSON(http.StatusOK, &sk.ResponseInsertSuratKontrol{
MetaData: sk.MetadataString{
Code: "203",
Message: err.Error(),
},
})
return
}
NamaDiagnosaString := strings.TrimSpace("C61 - Malignant neoplasm of prostate")
parts := strings.SplitN(NamaDiagnosaString, " - ", 2)
var kodeICD, diagnosa string
if len(parts) == 2 {
kodeICD = parts[0]
diagnosa = parts[1]
} else {
kodeICD = req.Diagnosa
diagnosa = ""
}
log.Println("belum di parse:", req.Diagnosa)
log.Println("kodeICD : ", kodeICD)
log.Println("diagnosa : ", diagnosa)
}
func InsertSuratkontrolNew(c *gin.Context) {
baseUrl := os.Getenv("BASEURL_BPJS")
endpoint := os.Getenv("SURAT_KONTROL_RS")
@@ -296,6 +324,7 @@ func InsertSuratkontrolNew(c *gin.Context) {
log.Println("Response: ", response)
c.JSON(http.StatusOK, response)
} else {
logTimeStart := time.Now().Format("2006-01-02 15:04:05")
dataSurkon, err := suratkontrol.GetNomorSurKon(kunjunganPasien.ID)
if err != nil {
log.Println(err)
@@ -345,6 +374,89 @@ func InsertSuratkontrolNew(c *gin.Context) {
}
log.Println("INI SURAT INTERNAL", reqInsert)
err = suratkontrol.InsertDataSuratKontrol(reqInsert)
if err != nil {
log.Println(err)
c.JSON(http.StatusCreated, &sk.MetadataString{
Code: "201",
Message: err.Error(),
})
reqJsoninternal, err := json.Marshal(reqInsert)
if err != nil {
log.Println(err)
c.JSON(http.StatusOK, &sk.ResponseInsertSuratKontrol{
MetaData: sk.MetadataString{
Code: "203",
Message: err.Error(),
},
})
return
}
log.Println("reqJson : ", string(reqJsoninternal))
logTimeEnd := time.Now().Format("2006-01-02 15:04:05")
reqInsertLog := &logapi.DataLogAPI{
ID: uuid,
DateCreated: logTimeEnd,
UserAgent: req.User,
IP: c.ClientIP(),
Parameter: "Surat Kontrol Internal",
Header: headerString,
Method: "POST",
Url: url,
Request: reqJsoninternal,
Respon: reqJsoninternal,
ResponCode: "200",
ResponTimeStart: logTimeStart,
ResponTimeEnd: logTimeEnd,
Comment: "",
}
err = log_api.InsertLogAPI(reqInsertLog)
if err != nil {
log.Println(err)
c.JSON(http.StatusCreated, &sk.MetadataString{
Code: "201",
Message: err.Error(),
})
return
}
return
}
reqJsoninternal, err := json.Marshal(reqInsert)
if err != nil {
log.Println(err)
c.JSON(http.StatusOK, &sk.ResponseInsertSuratKontrol{
MetaData: sk.MetadataString{
Code: "203",
Message: err.Error(),
},
})
return
}
log.Println("reqJson : ", string(reqJsoninternal))
logTimeEnd := time.Now().Format("2006-01-02 15:04:05")
reqInsertLog := &logapi.DataLogAPI{
ID: uuid,
DateCreated: logTimeEnd,
UserAgent: req.User,
IP: c.ClientIP(),
Parameter: "Surat Kontrol Internal",
Header: headerString,
Method: "POST",
Url: url,
Request: reqJsoninternal,
Respon: reqJsoninternal,
ResponCode: "200",
ResponTimeStart: logTimeStart,
ResponTimeEnd: logTimeEnd,
Comment: "Berhasil Insert SuratKontrol",
}
err = log_api.InsertLogAPI(reqInsertLog)
if err != nil {
log.Println(err)
c.JSON(http.StatusCreated, &sk.MetadataString{
@@ -1269,7 +1381,7 @@ func UpdateSuratKontrolnew(c *gin.Context) {
bpjs.HandleResponse(c, res)
} else {
logTimeStart := time.Now().Format("2006-01-02 15:04:05")
dataSurkon, err := suratkontrol.GetNomorSurKon(kunjunganPasien.ID)
if err != nil {
log.Println(err)
@@ -1337,6 +1449,46 @@ func UpdateSuratKontrolnew(c *gin.Context) {
})
return
}
logTimeEnd := time.Now().Format("2006-01-02 15:04:05")
reqJsoninternal, err := json.Marshal(reqInsert)
if err != nil {
log.Println(err)
c.JSON(http.StatusOK, &sk.ResponseInsertSuratKontrol{
MetaData: sk.MetadataString{
Code: "203",
Message: err.Error(),
},
})
return
}
log.Println("reqJson : ", string(reqJsoninternal))
reqInsertLog := &logapi.DataLogAPI{
ID: uuid,
DateCreated: logTimeEnd,
UserAgent: req.User,
IP: c.ClientIP(),
Parameter: "Surat Kontrol Internal",
Header: headerString,
Method: "POST",
Url: url,
Request: reqJsoninternal,
Respon: reqJsoninternal,
ResponCode: "200",
ResponTimeStart: logTimeStart,
ResponTimeEnd: logTimeEnd,
Comment: "Berhasil Update SuratKontrol",
}
err = log_api.InsertLogAPI(reqInsertLog)
if err != nil {
log.Println(err)
c.JSON(http.StatusCreated, &sk.MetadataString{
Code: "201",
Message: err.Error(),
})
return
}
c.JSON(http.StatusOK, &sk.MetadataString{
Code: "200",
+10 -6
View File
@@ -7,6 +7,8 @@ import (
"bridging-rssa/handlers/bpjs/jadwal_dokter"
suratkontrol "bridging-rssa/handlers/bpjs/surat_kontrol"
"github.com/gin-contrib/cors"
swaggerFiles "github.com/swaggo/files"
ginSwagger "github.com/swaggo/gin-swagger"
"log"
_ "bridging-rssa/docs"
@@ -14,8 +16,6 @@ import (
"github.com/gin-gonic/gin"
"github.com/joho/godotenv"
cron "github.com/robfig/cron/v3"
swaggerFiles "github.com/swaggo/files"
ginSwagger "github.com/swaggo/gin-swagger"
)
// @title Crud User
@@ -39,6 +39,12 @@ func main() {
AllowHeaders: []string{"Origin", "Content-Type"},
AllowCredentials: true,
}))
r.GET("/swagger/*any", ginSwagger.WrapHandler(swaggerFiles.Handler))
r.POST("/swagger/*any", ginSwagger.WrapHandler(swaggerFiles.Handler))
r.PUT("/swagger/*any", ginSwagger.WrapHandler(swaggerFiles.Handler))
r.DELETE("/swagger/*any", ginSwagger.WrapHandler(swaggerFiles.Handler))
scheduler := cron.New()
defer scheduler.Stop()
@@ -105,6 +111,8 @@ func main() {
suratKontrol.POST("/insertsurkon", suratkontrol.InsertSuratkontrolNew)
suratKontrol.PUT("/updatesurkon", suratkontrol.UpdateSuratKontrolnew)
suratKontrol.POST("/deletesurkon", suratkontrol.DeleteSuratKontrolNew)
suratKontrol.POST("/parse", suratkontrol.Parse)
}
iCare := v1.Group("/icare")
@@ -119,10 +127,6 @@ func main() {
Spri.PUT("/update", suratkontrol.UpdateSpri)
Spri.DELETE("/delete", suratkontrol.DeleteSpri)
}
r.GET("/swagger/*any", ginSwagger.WrapHandler(swaggerFiles.Handler))
r.POST("/swagger/*any", ginSwagger.WrapHandler(swaggerFiles.Handler))
r.PUT("/swagger/*any", ginSwagger.WrapHandler(swaggerFiles.Handler))
r.DELETE("/swagger/*any", ginSwagger.WrapHandler(swaggerFiles.Handler))
log.Println("JALAN DI PORT : 8080")
err = r.Run(":8080")
@@ -439,3 +439,7 @@ type Created struct {
UserCreate string `json:"User_created_surat_kontrol"`
DataCreate string `json:"date_created"`
}
type Parse struct {
Diagnosa string `json:"diagnosa"`
}