|
|
|
@@ -12,26 +12,43 @@ import (
|
|
|
|
|
logapi "bridging-rssa/models/log_api"
|
|
|
|
|
"encoding/json"
|
|
|
|
|
"fmt"
|
|
|
|
|
"github.com/gin-gonic/gin"
|
|
|
|
|
"github.com/google/uuid"
|
|
|
|
|
"log"
|
|
|
|
|
"net/http"
|
|
|
|
|
"os"
|
|
|
|
|
"strings"
|
|
|
|
|
"time"
|
|
|
|
|
|
|
|
|
|
"github.com/gin-gonic/gin"
|
|
|
|
|
"github.com/google/uuid"
|
|
|
|
|
)
|
|
|
|
|
|
|
|
|
|
func InsertSuratKontrol(c *gin.Context) {
|
|
|
|
|
baseUrl := os.Getenv("BASEURL_BPJS")
|
|
|
|
|
endpoint := os.Getenv("SURAT_KONTROL_RS")
|
|
|
|
|
func InsertSuratkontrolNew(c *gin.Context) {
|
|
|
|
|
baseUrl := os.Getenv("BASEURL_BPJS_DEV")
|
|
|
|
|
endpoint := os.Getenv("VCLAIM_RS_DEV")
|
|
|
|
|
param := os.Getenv("INSERT_SURAT_KONTROL")
|
|
|
|
|
url := baseUrl + endpoint + param
|
|
|
|
|
|
|
|
|
|
conf := config.ConfigBpjs{}
|
|
|
|
|
|
|
|
|
|
header := cfg.SetHeaderDev(false, conf)
|
|
|
|
|
|
|
|
|
|
headers := map[string]string{
|
|
|
|
|
"X-cons-id": header.ConsID,
|
|
|
|
|
"X-timestamp": header.TimeStamp,
|
|
|
|
|
"X-signature": header.XSignature,
|
|
|
|
|
"user_key": header.UserKey,
|
|
|
|
|
"Content-Type": "Application/x-www-form-urlencoded",
|
|
|
|
|
}
|
|
|
|
|
log.Println("Headers : ", headers)
|
|
|
|
|
var headerStringBuilder strings.Builder
|
|
|
|
|
for key, value := range headers {
|
|
|
|
|
headerStringBuilder.WriteString(fmt.Sprintf("%s: %s; ", key, value))
|
|
|
|
|
}
|
|
|
|
|
headerString := strings.TrimSuffix(headerStringBuilder.String(), "; ")
|
|
|
|
|
|
|
|
|
|
uuid := uuid.New().String()
|
|
|
|
|
|
|
|
|
|
timeNow := time.Now().Format("2006-01-02 15:04:05")
|
|
|
|
|
|
|
|
|
|
var req sk.RequestInsertRencanaKontrol
|
|
|
|
|
|
|
|
|
|
err := c.Bind(&req)
|
|
|
|
|
if err != nil {
|
|
|
|
|
log.Println(err)
|
|
|
|
@@ -43,28 +60,6 @@ func InsertSuratKontrol(c *gin.Context) {
|
|
|
|
|
})
|
|
|
|
|
return
|
|
|
|
|
}
|
|
|
|
|
log.Println(req)
|
|
|
|
|
|
|
|
|
|
jadwalLibur, isLibur, errLibur := jadwal.GetJadwalLibur(req.TglRencanaKontrol)
|
|
|
|
|
if errLibur != nil {
|
|
|
|
|
log.Println(errLibur)
|
|
|
|
|
c.JSON(http.StatusOK, &sk.ResponseInsertSuratKontrol{
|
|
|
|
|
MetaData: sk.MetadataString{
|
|
|
|
|
Code: "203",
|
|
|
|
|
Message: errLibur.Error(),
|
|
|
|
|
},
|
|
|
|
|
})
|
|
|
|
|
return
|
|
|
|
|
} else if isLibur {
|
|
|
|
|
log.Println(jadwalLibur.KeteranganLiburPelayanan)
|
|
|
|
|
c.JSON(http.StatusOK, &sk.ResponseInsertSuratKontrol{
|
|
|
|
|
MetaData: sk.MetadataString{
|
|
|
|
|
Code: "203",
|
|
|
|
|
Message: jadwalLibur.NamaLiburPelayanan,
|
|
|
|
|
},
|
|
|
|
|
})
|
|
|
|
|
return
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
reqJson, err := json.Marshal(req)
|
|
|
|
|
if err != nil {
|
|
|
|
@@ -77,132 +72,7 @@ func InsertSuratKontrol(c *gin.Context) {
|
|
|
|
|
})
|
|
|
|
|
return
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
log.Println("Request: ", string(reqJson))
|
|
|
|
|
|
|
|
|
|
conf := config.ConfigBpjs{}
|
|
|
|
|
|
|
|
|
|
header := cfg.SetHeader(false, conf)
|
|
|
|
|
|
|
|
|
|
headers := map[string]string{
|
|
|
|
|
"X-cons-id": header.ConsID,
|
|
|
|
|
"X-timestamp": header.TimeStamp,
|
|
|
|
|
"X-signature": header.XSignature,
|
|
|
|
|
"user_key": header.UserKey,
|
|
|
|
|
"Content-Type": "Application/x-www-form-urlencoded",
|
|
|
|
|
}
|
|
|
|
|
log.Println("Headers : ", headers)
|
|
|
|
|
|
|
|
|
|
var headerStringBuilder strings.Builder
|
|
|
|
|
for key, value := range headers {
|
|
|
|
|
headerStringBuilder.WriteString(fmt.Sprintf("%s: %s; ", key, value))
|
|
|
|
|
}
|
|
|
|
|
headerString := strings.TrimSuffix(headerStringBuilder.String(), "; ")
|
|
|
|
|
|
|
|
|
|
kunjunganPasien, err := suratkontrol.GetDataKunjunganPasien(req.IDXDaftar)
|
|
|
|
|
if err != nil {
|
|
|
|
|
log.Println(err)
|
|
|
|
|
c.JSON(http.StatusOK, &sk.ResponseInsertSuratKontrol{
|
|
|
|
|
MetaData: sk.MetadataString{
|
|
|
|
|
Code: "203",
|
|
|
|
|
Message: err.Error(),
|
|
|
|
|
},
|
|
|
|
|
})
|
|
|
|
|
return
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
var idRuangan int
|
|
|
|
|
if kunjunganPasien.Ruangan != 0 {
|
|
|
|
|
idRuangan = kunjunganPasien.Ruangan
|
|
|
|
|
} else {
|
|
|
|
|
idRuangan, err = lokasiruang.GetDaftarLokasiRuang(req.Ruangan)
|
|
|
|
|
if err != nil {
|
|
|
|
|
log.Println(err)
|
|
|
|
|
c.JSON(http.StatusOK, &sk.ResponseInsertSuratKontrol{
|
|
|
|
|
MetaData: sk.MetadataString{
|
|
|
|
|
Code: "203",
|
|
|
|
|
Message: err.Error(),
|
|
|
|
|
},
|
|
|
|
|
})
|
|
|
|
|
return
|
|
|
|
|
}
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
uuid := uuid.New().String()
|
|
|
|
|
if req.TipeSurKon != "1" {
|
|
|
|
|
dataSurkon, err := suratkontrol.GetNomorSurKon(kunjunganPasien.ID)
|
|
|
|
|
if err != nil {
|
|
|
|
|
log.Println(err)
|
|
|
|
|
c.JSON(http.StatusOK, &sk.ResponseInsertSuratKontrol{
|
|
|
|
|
MetaData: sk.MetadataString{
|
|
|
|
|
Code: "203",
|
|
|
|
|
Message: err.Error(),
|
|
|
|
|
},
|
|
|
|
|
})
|
|
|
|
|
return
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
noUrut := "001"
|
|
|
|
|
if dataSurkon != "" {
|
|
|
|
|
noUrut, err = utils.GetNoUrut(dataSurkon)
|
|
|
|
|
if err != nil {
|
|
|
|
|
log.Println(err)
|
|
|
|
|
c.JSON(http.StatusOK, &sk.ResponseInsertSuratKontrol{
|
|
|
|
|
MetaData: sk.MetadataString{
|
|
|
|
|
Code: "203",
|
|
|
|
|
Message: err.Error(),
|
|
|
|
|
},
|
|
|
|
|
})
|
|
|
|
|
return
|
|
|
|
|
}
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
noSurKon := "SI/" + req.TipeRawat + "/" + kunjunganPasien.NomorRM + "/" + noUrut
|
|
|
|
|
reqInsert := &sk.DataSuratKontrol{
|
|
|
|
|
ID: uuid,
|
|
|
|
|
DateCreated: timeNow,
|
|
|
|
|
TglCetakSurKon: timeNow,
|
|
|
|
|
TglRencanaKontrol: req.TglRencanaKontrol,
|
|
|
|
|
NomorSurKon: noSurKon,
|
|
|
|
|
KunjunganPasien: kunjunganPasien.ID,
|
|
|
|
|
RuanganSurKon: idRuangan,
|
|
|
|
|
DPJPSurKon: req.IDDokter,
|
|
|
|
|
StatusSurKon: 1, // First Insert status always set to 1
|
|
|
|
|
UserCreatedSurKon: req.User,
|
|
|
|
|
TipeSurKon: req.TipeSurKon,
|
|
|
|
|
TipeRawat: req.TipeRawat,
|
|
|
|
|
}
|
|
|
|
|
err = suratkontrol.InsertDataSuratKontrol(reqInsert)
|
|
|
|
|
if err != nil {
|
|
|
|
|
log.Println(err)
|
|
|
|
|
c.JSON(http.StatusOK, &sk.ResponseInsertSuratKontrol{
|
|
|
|
|
MetaData: sk.MetadataString{
|
|
|
|
|
Code: "203",
|
|
|
|
|
Message: err.Error(),
|
|
|
|
|
},
|
|
|
|
|
})
|
|
|
|
|
return
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
err = suratkontrol.UpdateKunjunganPasien(req)
|
|
|
|
|
if err != nil {
|
|
|
|
|
log.Println(err)
|
|
|
|
|
c.JSON(http.StatusOK, &sk.ResponseInsertSuratKontrol{
|
|
|
|
|
MetaData: sk.MetadataString{
|
|
|
|
|
Code: "203",
|
|
|
|
|
Message: err.Error(),
|
|
|
|
|
},
|
|
|
|
|
})
|
|
|
|
|
return
|
|
|
|
|
}
|
|
|
|
|
c.JSON(http.StatusOK, &sk.ResponseInsertSuratKontrol{
|
|
|
|
|
MetaData: sk.MetadataString{
|
|
|
|
|
Code: "200",
|
|
|
|
|
Message: "Berhasil Insert Surat Kontrol",
|
|
|
|
|
},
|
|
|
|
|
})
|
|
|
|
|
return
|
|
|
|
|
}
|
|
|
|
|
log.Println("reqJson : ", string(reqJson))
|
|
|
|
|
|
|
|
|
|
reqSuratKontrol := &sk.RequestHeaderRencanaKontrol{
|
|
|
|
|
Request: &sk.ReqInsertRencanaKontrol{
|
|
|
|
@@ -214,8 +84,10 @@ func InsertSuratKontrol(c *gin.Context) {
|
|
|
|
|
},
|
|
|
|
|
}
|
|
|
|
|
logTimeStart := time.Now().Format("2006-01-02 15:04:05")
|
|
|
|
|
res, err := PostData(url, header, headers, reqSuratKontrol)
|
|
|
|
|
if err != nil {
|
|
|
|
|
res, errData := PostData(url, header, headers, reqSuratKontrol)
|
|
|
|
|
log.Println("res : ", res)
|
|
|
|
|
log.Println("error nya : ", errData)
|
|
|
|
|
if errData != nil {
|
|
|
|
|
responJson, err := json.Marshal(res)
|
|
|
|
|
if err != nil {
|
|
|
|
|
log.Println(err)
|
|
|
|
@@ -275,51 +147,6 @@ func InsertSuratKontrol(c *gin.Context) {
|
|
|
|
|
return
|
|
|
|
|
}
|
|
|
|
|
logTimeEnd := time.Now().Format("2006-01-02 15:04:05")
|
|
|
|
|
reqInsert := &sk.DataSuratKontrol{
|
|
|
|
|
ID: uuid,
|
|
|
|
|
DateCreated: timeNow,
|
|
|
|
|
TglCetakSurKon: timeNow,
|
|
|
|
|
TglRencanaKontrol: res.Response.TglRencanaKontrol,
|
|
|
|
|
NomorSurKon: res.Response.NoSuratKontrol,
|
|
|
|
|
KunjunganPasien: kunjunganPasien.ID,
|
|
|
|
|
RuanganSurKon: idRuangan,
|
|
|
|
|
DPJPSurKon: req.IDDokter,
|
|
|
|
|
StatusSurKon: 1, // First Insert status always set to 1
|
|
|
|
|
UserCreatedSurKon: req.User,
|
|
|
|
|
TipeSurKon: "1",
|
|
|
|
|
TipeRawat: req.TipeRawat,
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
err = suratkontrol.InsertDataSuratKontrol(reqInsert)
|
|
|
|
|
if err != nil {
|
|
|
|
|
log.Println(err)
|
|
|
|
|
c.JSON(http.StatusOK, &sk.ResponseInsertSuratKontrol{
|
|
|
|
|
MetaData: sk.MetadataString{
|
|
|
|
|
Code: "203",
|
|
|
|
|
Message: err.Error(),
|
|
|
|
|
},
|
|
|
|
|
})
|
|
|
|
|
return
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
if req.KodeDiagnosa == "" || req.NamaDiagnosa == "" {
|
|
|
|
|
diagnosa := strings.Split(res.Response.NamaDiagnosa, " - ")
|
|
|
|
|
req.KodeDiagnosa = diagnosa[0]
|
|
|
|
|
req.NamaDiagnosa = diagnosa[1]
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
err = suratkontrol.UpdateKunjunganPasien(req)
|
|
|
|
|
if err != nil {
|
|
|
|
|
log.Println(err)
|
|
|
|
|
c.JSON(http.StatusOK, &sk.ResponseInsertSuratKontrol{
|
|
|
|
|
MetaData: sk.MetadataString{
|
|
|
|
|
Code: "203",
|
|
|
|
|
Message: err.Error(),
|
|
|
|
|
},
|
|
|
|
|
})
|
|
|
|
|
return
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
reqInsertLog := &logapi.DataLogAPI{
|
|
|
|
|
ID: uuid,
|
|
|
|
|
DateCreated: logTimeEnd,
|
|
|
|
@@ -349,23 +176,402 @@ func InsertSuratKontrol(c *gin.Context) {
|
|
|
|
|
return
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
response := &sk.ResponseInsertSuratKontrol{
|
|
|
|
|
MetaData: res.MetaData,
|
|
|
|
|
Response: sk.ResponseData{
|
|
|
|
|
NoSuratKontrol: res.Response.NoSuratKontrol,
|
|
|
|
|
TglRencanaKontrol: res.Response.TglRencanaKontrol,
|
|
|
|
|
NamaDokter: res.Response.NamaDokter,
|
|
|
|
|
NoKartu: res.Response.NoKartu,
|
|
|
|
|
Nama: res.Response.Nama,
|
|
|
|
|
Kelamin: res.Response.Kelamin,
|
|
|
|
|
TglLahir: res.Response.TglLahir,
|
|
|
|
|
NamaDiagnosa: res.Response.NamaDiagnosa,
|
|
|
|
|
SubSpesialis: req.Subspesialis,
|
|
|
|
|
},
|
|
|
|
|
kunjunganPasien, err := suratkontrol.GetDataKunjunganPasien(req.IDXDaftar)
|
|
|
|
|
if err != nil {
|
|
|
|
|
log.Println(err)
|
|
|
|
|
c.JSON(http.StatusOK, &sk.ResponseInsertSuratKontrol{
|
|
|
|
|
MetaData: sk.MetadataString{
|
|
|
|
|
Code: "203",
|
|
|
|
|
Message: err.Error(),
|
|
|
|
|
},
|
|
|
|
|
})
|
|
|
|
|
return
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
log.Println("Response: ", response)
|
|
|
|
|
c.JSON(http.StatusOK, response)
|
|
|
|
|
var idRuangan int
|
|
|
|
|
if kunjunganPasien.Ruangan != 0 {
|
|
|
|
|
idRuangan = kunjunganPasien.Ruangan
|
|
|
|
|
} else {
|
|
|
|
|
idRuangan, err = lokasiruang.GetDaftarLokasiRuang(req.Ruangan)
|
|
|
|
|
if err != nil {
|
|
|
|
|
log.Println(err)
|
|
|
|
|
c.JSON(http.StatusOK, &sk.ResponseInsertSuratKontrol{
|
|
|
|
|
MetaData: sk.MetadataString{
|
|
|
|
|
Code: "203",
|
|
|
|
|
Message: err.Error(),
|
|
|
|
|
},
|
|
|
|
|
})
|
|
|
|
|
return
|
|
|
|
|
}
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
if req.TipeSurKon != "1" {
|
|
|
|
|
dataSurkon, err := suratkontrol.GetNomorSurKon(kunjunganPasien.ID)
|
|
|
|
|
if err != nil {
|
|
|
|
|
log.Println(err)
|
|
|
|
|
c.JSON(http.StatusOK, &sk.ResponseInsertSuratKontrol{
|
|
|
|
|
MetaData: sk.MetadataString{
|
|
|
|
|
Code: "203",
|
|
|
|
|
Message: err.Error(),
|
|
|
|
|
},
|
|
|
|
|
})
|
|
|
|
|
return
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
noUrut := "001"
|
|
|
|
|
if dataSurkon != "" {
|
|
|
|
|
noUrut, err = utils.GetNoUrut(dataSurkon)
|
|
|
|
|
if err != nil {
|
|
|
|
|
log.Println(err)
|
|
|
|
|
c.JSON(http.StatusOK, &sk.ResponseInsertSuratKontrol{
|
|
|
|
|
MetaData: sk.MetadataString{
|
|
|
|
|
Code: "203",
|
|
|
|
|
Message: err.Error(),
|
|
|
|
|
},
|
|
|
|
|
})
|
|
|
|
|
return
|
|
|
|
|
}
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
noSurKon := "SI/" + req.TipeRawat + "/" + req.NoRM + "/" + noUrut
|
|
|
|
|
reqInsert := &sk.DataSuratKontrol{
|
|
|
|
|
ID: uuid,
|
|
|
|
|
DateCreated: timeNow,
|
|
|
|
|
TglCetakSurKon: timeNow,
|
|
|
|
|
TglRencanaKontrol: req.TglRencanaKontrol,
|
|
|
|
|
NomorSurKon: noSurKon,
|
|
|
|
|
KunjunganPasien: kunjunganPasien.ID,
|
|
|
|
|
RuanganSurKon: idRuangan,
|
|
|
|
|
DPJPSurKon: req.IDDokter,
|
|
|
|
|
StatusSurKon: 1, // First Insert status always set to 1
|
|
|
|
|
UserCreatedSurKon: req.User,
|
|
|
|
|
TipeSurKon: req.TipeSurKon,
|
|
|
|
|
TipeRawat: req.TipeRawat,
|
|
|
|
|
}
|
|
|
|
|
err = suratkontrol.InsertDataSuratKontrol(reqInsert)
|
|
|
|
|
if err != nil {
|
|
|
|
|
log.Println(err)
|
|
|
|
|
c.JSON(http.StatusOK, &sk.ResponseInsertSuratKontrol{
|
|
|
|
|
MetaData: sk.MetadataString{
|
|
|
|
|
Code: "203",
|
|
|
|
|
Message: err.Error(),
|
|
|
|
|
},
|
|
|
|
|
})
|
|
|
|
|
return
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
err = suratkontrol.UpdateKunjunganPasien(req)
|
|
|
|
|
if err != nil {
|
|
|
|
|
log.Println(err)
|
|
|
|
|
c.JSON(http.StatusOK, &sk.ResponseInsertSuratKontrol{
|
|
|
|
|
MetaData: sk.MetadataString{
|
|
|
|
|
Code: "203",
|
|
|
|
|
Message: err.Error(),
|
|
|
|
|
},
|
|
|
|
|
})
|
|
|
|
|
return
|
|
|
|
|
}
|
|
|
|
|
c.JSON(http.StatusOK, &sk.ResponseInsertSuratKontrol{
|
|
|
|
|
MetaData: sk.MetadataString{
|
|
|
|
|
Code: "200",
|
|
|
|
|
Message: "Berhasil Insert Surat Kontrol",
|
|
|
|
|
},
|
|
|
|
|
})
|
|
|
|
|
return
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
func InsertSuratKontrol(c *gin.Context) {
|
|
|
|
|
baseUrl := os.Getenv("BASEURL_BPJS_DEV")
|
|
|
|
|
endpoint := os.Getenv("VCLAIM_RS_DEV")
|
|
|
|
|
param := os.Getenv("INSERT_SURAT_KONTROL")
|
|
|
|
|
url := baseUrl + endpoint + param
|
|
|
|
|
//timeNow := time.Now().Format("2006-01-02 15:04:05")
|
|
|
|
|
|
|
|
|
|
conf := config.ConfigBpjs{}
|
|
|
|
|
|
|
|
|
|
header := cfg.SetHeaderDev(false, conf)
|
|
|
|
|
|
|
|
|
|
headers := map[string]string{
|
|
|
|
|
"X-cons-id": header.ConsID,
|
|
|
|
|
"X-timestamp": header.TimeStamp,
|
|
|
|
|
"X-signature": header.XSignature,
|
|
|
|
|
"user_key": header.UserKey,
|
|
|
|
|
"Content-Type": "Application/x-www-form-urlencoded",
|
|
|
|
|
}
|
|
|
|
|
log.Println("Headers : ", headers)
|
|
|
|
|
var headerStringBuilder strings.Builder
|
|
|
|
|
for key, value := range headers {
|
|
|
|
|
headerStringBuilder.WriteString(fmt.Sprintf("%s: %s; ", key, value))
|
|
|
|
|
}
|
|
|
|
|
headerString := strings.TrimSuffix(headerStringBuilder.String(), "; ")
|
|
|
|
|
|
|
|
|
|
uuid := uuid.New().String()
|
|
|
|
|
|
|
|
|
|
var req sk.RequestInsertRencanaKontrol
|
|
|
|
|
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
|
|
|
|
|
}
|
|
|
|
|
reqJson, err := json.Marshal(req)
|
|
|
|
|
if err != nil {
|
|
|
|
|
log.Println(err)
|
|
|
|
|
c.JSON(http.StatusOK, &sk.ResponseInsertSuratKontrol{
|
|
|
|
|
MetaData: sk.MetadataString{
|
|
|
|
|
Code: "203",
|
|
|
|
|
Message: err.Error(),
|
|
|
|
|
},
|
|
|
|
|
})
|
|
|
|
|
return
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
reqSuratKontrol := &sk.RequestHeaderRencanaKontrol{
|
|
|
|
|
Request: &sk.ReqInsertRencanaKontrol{
|
|
|
|
|
NoSEP: req.NoSEP,
|
|
|
|
|
KodeDokter: req.KodeHFIS,
|
|
|
|
|
PoliKontrol: req.KodePoli,
|
|
|
|
|
TglRencanaKontrol: req.TglRencanaKontrol,
|
|
|
|
|
User: req.User,
|
|
|
|
|
},
|
|
|
|
|
}
|
|
|
|
|
logTimeStart := time.Now().Format("2006-01-02 15:04:05")
|
|
|
|
|
res, err := PostData(url, header, headers, reqSuratKontrol)
|
|
|
|
|
log.Println("respon bpjs :")
|
|
|
|
|
if err != nil {
|
|
|
|
|
responJson, Marshalerr := json.Marshal(res)
|
|
|
|
|
log.Println("hasil respon bpjs :")
|
|
|
|
|
if Marshalerr != nil {
|
|
|
|
|
log.Println(Marshalerr)
|
|
|
|
|
log.Println("hasil respon bpjs nothing:")
|
|
|
|
|
c.JSON(http.StatusOK, &sk.ResponseInsertSuratKontrol{
|
|
|
|
|
MetaData: sk.MetadataString{
|
|
|
|
|
Code: res.MetaData.Code,
|
|
|
|
|
Message: res.MetaData.Message,
|
|
|
|
|
},
|
|
|
|
|
})
|
|
|
|
|
return
|
|
|
|
|
}
|
|
|
|
|
log.Println("hasil respon bpjs menyimpanan log:")
|
|
|
|
|
logTimeEnd := time.Now().Format("2006-01-02 15:04:05")
|
|
|
|
|
reqInsertLog := &logapi.DataLogAPI{
|
|
|
|
|
ID: uuid,
|
|
|
|
|
DateCreated: logTimeEnd,
|
|
|
|
|
UserAgent: req.User,
|
|
|
|
|
IP: c.ClientIP(),
|
|
|
|
|
Parameter: "BPJS-VClaim-RencanaKontrol",
|
|
|
|
|
Header: headerString,
|
|
|
|
|
Method: "POST",
|
|
|
|
|
Url: url,
|
|
|
|
|
Request: reqJson,
|
|
|
|
|
Respon: responJson,
|
|
|
|
|
ResponCode: res.MetaData.Code,
|
|
|
|
|
ResponTimeStart: logTimeStart,
|
|
|
|
|
ResponTimeEnd: logTimeEnd,
|
|
|
|
|
Comment: res.MetaData.Message,
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
errInsert := log_api.InsertLogAPI(reqInsertLog)
|
|
|
|
|
if errInsert != nil {
|
|
|
|
|
log.Println(errInsert)
|
|
|
|
|
c.JSON(http.StatusOK, &sk.ResponseInsertSuratKontrol{
|
|
|
|
|
MetaData: sk.MetadataString{
|
|
|
|
|
Code: "203",
|
|
|
|
|
Message: errInsert.Error(),
|
|
|
|
|
},
|
|
|
|
|
})
|
|
|
|
|
return
|
|
|
|
|
}
|
|
|
|
|
log.Println(errInsert)
|
|
|
|
|
c.JSON(http.StatusOK, &sk.ResponseInsertSuratKontrol{
|
|
|
|
|
MetaData: sk.MetadataString{
|
|
|
|
|
Code: res.MetaData.Code,
|
|
|
|
|
Message: res.MetaData.Message,
|
|
|
|
|
},
|
|
|
|
|
})
|
|
|
|
|
return
|
|
|
|
|
}
|
|
|
|
|
log.Println("ojo di terusno :")
|
|
|
|
|
//responJson, err := json.Marshal(res)
|
|
|
|
|
//if err != nil {
|
|
|
|
|
// log.Println(err)
|
|
|
|
|
// c.JSON(http.StatusOK, &sk.ResponseInsertSuratKontrol{
|
|
|
|
|
// MetaData: sk.MetadataString{
|
|
|
|
|
// Code: "203",
|
|
|
|
|
// Message: err.Error(),
|
|
|
|
|
// },
|
|
|
|
|
// })
|
|
|
|
|
// return
|
|
|
|
|
//}
|
|
|
|
|
//logTimeEnd := time.Now().Format("2006-01-02 15:04:05")
|
|
|
|
|
//reqInsert := &sk.DataSuratKontrol{
|
|
|
|
|
// ID: uuid,
|
|
|
|
|
// DateCreated: timeNow,
|
|
|
|
|
// TglCetakSurKon: timeNow,
|
|
|
|
|
// TglRencanaKontrol: res.Response.TglRencanaKontrol,
|
|
|
|
|
// NomorSurKon: res.Response.NoSuratKontrol,
|
|
|
|
|
// KunjunganPasien: kunjunganPasien.ID,
|
|
|
|
|
// RuanganSurKon: idRuangan,
|
|
|
|
|
// DPJPSurKon: req.IDDokter,
|
|
|
|
|
// StatusSurKon: 1, // First Insert status always set to 1
|
|
|
|
|
// UserCreatedSurKon: req.User,
|
|
|
|
|
// TipeSurKon: "1",
|
|
|
|
|
// TipeRawat: req.TipeRawat,
|
|
|
|
|
//}
|
|
|
|
|
//
|
|
|
|
|
//err = suratkontrol.InsertDataSuratKontrol(reqInsert)
|
|
|
|
|
//if err != nil {
|
|
|
|
|
// log.Println(err)
|
|
|
|
|
// c.JSON(http.StatusOK, &sk.ResponseInsertSuratKontrol{
|
|
|
|
|
// MetaData: sk.MetadataString{
|
|
|
|
|
// Code: "203",
|
|
|
|
|
// Message: err.Error(),
|
|
|
|
|
// },
|
|
|
|
|
// })
|
|
|
|
|
// return
|
|
|
|
|
//}
|
|
|
|
|
//
|
|
|
|
|
//err = suratkontrol.UpdateKunjunganPasien(req)
|
|
|
|
|
//if err != nil {
|
|
|
|
|
// log.Println(err)
|
|
|
|
|
// c.JSON(http.StatusOK, &sk.ResponseInsertSuratKontrol{
|
|
|
|
|
// MetaData: sk.MetadataString{
|
|
|
|
|
// Code: "203",
|
|
|
|
|
// Message: err.Error(),
|
|
|
|
|
// },
|
|
|
|
|
// })
|
|
|
|
|
// return
|
|
|
|
|
//}
|
|
|
|
|
//
|
|
|
|
|
//reqInsertLog := &logapi.DataLogAPI{
|
|
|
|
|
// ID: uuid,
|
|
|
|
|
// DateCreated: logTimeEnd,
|
|
|
|
|
// UserAgent: req.User,
|
|
|
|
|
// IP: c.ClientIP(),
|
|
|
|
|
// Parameter: "BPJS-VClaim-RencanaKontrol",
|
|
|
|
|
// Header: headerString,
|
|
|
|
|
// Method: "POST",
|
|
|
|
|
// Url: url,
|
|
|
|
|
// Request: reqJson,
|
|
|
|
|
// Respon: responJson,
|
|
|
|
|
// ResponCode: res.MetaData.Code,
|
|
|
|
|
// ResponTimeStart: logTimeStart,
|
|
|
|
|
// ResponTimeEnd: logTimeEnd,
|
|
|
|
|
// Comment: res.MetaData.Message,
|
|
|
|
|
//}
|
|
|
|
|
//
|
|
|
|
|
//err = log_api.InsertLogAPI(reqInsertLog)
|
|
|
|
|
//if err != nil {
|
|
|
|
|
// log.Println(err)
|
|
|
|
|
// c.JSON(http.StatusOK, &sk.ResponseInsertSuratKontrol{
|
|
|
|
|
// MetaData: sk.MetadataString{
|
|
|
|
|
// Code: "203",
|
|
|
|
|
// Message: err.Error(),
|
|
|
|
|
// },
|
|
|
|
|
// })
|
|
|
|
|
// return
|
|
|
|
|
//}
|
|
|
|
|
//
|
|
|
|
|
//response := &sk.ResponseInsertSuratKontrol{
|
|
|
|
|
// MetaData: res.MetaData,
|
|
|
|
|
// Response: sk.ResponseData{
|
|
|
|
|
// NoSuratKontrol: res.Response.NoSuratKontrol,
|
|
|
|
|
// TglRencanaKontrol: res.Response.TglRencanaKontrol,
|
|
|
|
|
// NamaDokter: res.Response.NamaDokter,
|
|
|
|
|
// NoKartu: res.Response.NoKartu,
|
|
|
|
|
// Nama: res.Response.Nama,
|
|
|
|
|
// Kelamin: res.Response.Kelamin,
|
|
|
|
|
// TglLahir: res.Response.TglLahir,
|
|
|
|
|
// NamaDiagnosa: res.Response.NamaDiagnosa,
|
|
|
|
|
// SubSpesialis: req.Subspesialis,
|
|
|
|
|
// },
|
|
|
|
|
//}
|
|
|
|
|
//
|
|
|
|
|
//log.Println("Response: ", response)
|
|
|
|
|
//c.JSON(http.StatusOK, response)
|
|
|
|
|
|
|
|
|
|
//if req.TipeSurKon != "1" {
|
|
|
|
|
// dataSurkon, err := suratkontrol.GetNomorSurKon(kunjunganPasien.ID)
|
|
|
|
|
// if err != nil {
|
|
|
|
|
// log.Println(err)
|
|
|
|
|
// c.JSON(http.StatusOK, &sk.ResponseInsertSuratKontrol{
|
|
|
|
|
// MetaData: sk.MetadataString{
|
|
|
|
|
// Code: "203",
|
|
|
|
|
// Message: err.Error(),
|
|
|
|
|
// },
|
|
|
|
|
// })
|
|
|
|
|
// return
|
|
|
|
|
// }
|
|
|
|
|
//
|
|
|
|
|
// noUrut := "001"
|
|
|
|
|
// if dataSurkon != "" {
|
|
|
|
|
// noUrut, err = utils.GetNoUrut(dataSurkon)
|
|
|
|
|
// if err != nil {
|
|
|
|
|
// log.Println(err)
|
|
|
|
|
// c.JSON(http.StatusOK, &sk.ResponseInsertSuratKontrol{
|
|
|
|
|
// MetaData: sk.MetadataString{
|
|
|
|
|
// Code: "203",
|
|
|
|
|
// Message: err.Error(),
|
|
|
|
|
// },
|
|
|
|
|
// })
|
|
|
|
|
// return
|
|
|
|
|
// }
|
|
|
|
|
// }
|
|
|
|
|
//
|
|
|
|
|
// noSurKon := "SI/" + req.TipeRawat + "/" + kunjunganPasien.NomorRM + "/" + noUrut
|
|
|
|
|
// reqInsert := &sk.DataSuratKontrol{
|
|
|
|
|
// ID: uuid,
|
|
|
|
|
// DateCreated: timeNow,
|
|
|
|
|
// TglCetakSurKon: timeNow,
|
|
|
|
|
// TglRencanaKontrol: req.TglRencanaKontrol,
|
|
|
|
|
// NomorSurKon: noSurKon,
|
|
|
|
|
// KunjunganPasien: kunjunganPasien.ID,
|
|
|
|
|
// RuanganSurKon: idRuangan,
|
|
|
|
|
// DPJPSurKon: req.IDDokter,
|
|
|
|
|
// StatusSurKon: 1, // First Insert status always set to 1
|
|
|
|
|
// UserCreatedSurKon: req.User,
|
|
|
|
|
// TipeSurKon: req.TipeSurKon,
|
|
|
|
|
// TipeRawat: req.TipeRawat,
|
|
|
|
|
// }
|
|
|
|
|
// err = suratkontrol.InsertDataSuratKontrol(reqInsert)
|
|
|
|
|
// if err != nil {
|
|
|
|
|
// log.Println(err)
|
|
|
|
|
// c.JSON(http.StatusOK, &sk.ResponseInsertSuratKontrol{
|
|
|
|
|
// MetaData: sk.MetadataString{
|
|
|
|
|
// Code: "203",
|
|
|
|
|
// Message: err.Error(),
|
|
|
|
|
// },
|
|
|
|
|
// })
|
|
|
|
|
// return
|
|
|
|
|
// }
|
|
|
|
|
//
|
|
|
|
|
// err = suratkontrol.UpdateKunjunganPasien(req)
|
|
|
|
|
// if err != nil {
|
|
|
|
|
// log.Println(err)
|
|
|
|
|
// c.JSON(http.StatusOK, &sk.ResponseInsertSuratKontrol{
|
|
|
|
|
// MetaData: sk.MetadataString{
|
|
|
|
|
// Code: "203",
|
|
|
|
|
// Message: err.Error(),
|
|
|
|
|
// },
|
|
|
|
|
// })
|
|
|
|
|
// return
|
|
|
|
|
// }
|
|
|
|
|
// c.JSON(http.StatusOK, &sk.ResponseInsertSuratKontrol{
|
|
|
|
|
// MetaData: sk.MetadataString{
|
|
|
|
|
// Code: "200",
|
|
|
|
|
// Message: "Berhasil Insert Surat Kontrol",
|
|
|
|
|
// },
|
|
|
|
|
// })
|
|
|
|
|
// return
|
|
|
|
|
//}
|
|
|
|
|
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
func UpdateSuratKontrol(c *gin.Context) {
|
|
|
|
|