Compare commits
5 Commits
| Author | SHA1 | Date | |
|---|---|---|---|
| 3fb4f8ccc4 | |||
| ff9287b826 | |||
| 10c8754732 | |||
| cd8bbde1af | |||
| 36885d23ce |
@@ -17,6 +17,12 @@ type WriteoffResponse struct {
|
||||
Result string `json:"result"` // 回覆明細
|
||||
Checksum string `json:"checksum"` // 校驗碼
|
||||
ReturnSeq string `json:"rtnSeq"` // 回覆序號
|
||||
Message string `json:"message"` // 回覆訊息
|
||||
}
|
||||
|
||||
type FeeAuditInfo struct {
|
||||
WriteoffYYYYMM string `json:"writeoff_yyyymm"` // 支審年月
|
||||
TransNo string `json:"trans_no"` // 交易序號
|
||||
}
|
||||
|
||||
// FeeApplyUpload 是 FeeApply 的傳送資料
|
||||
@@ -26,12 +32,11 @@ type FeeApplyUpload struct {
|
||||
|
||||
// ApplyInfo 是 FeeApplyUpload 的單筆資料
|
||||
type ApplyInfo struct {
|
||||
WriteoffYYYYMM string `json:"writeoff_yyyymm"` // 支審年月
|
||||
TransNo string `json:"trans_no"` // 交易序號
|
||||
FeeAuditInfo
|
||||
Records int `json:"records"` // 服務記錄筆數
|
||||
Amount int `json:"amount"` // 服務記錄金額
|
||||
Cases int `json:"cases"` // 申請個案數
|
||||
CaseSvceRecords []CaseSvceRecord `json:"case_svc_records"` // 個案服務記錄
|
||||
CaseSvcRecords []CaseSvcRecord `json:"case_svc_records"` // 個案服務記錄
|
||||
}
|
||||
|
||||
// CaseSvcRecord 是個案服務記錄
|
||||
@@ -97,10 +102,9 @@ type ObjDelUpload struct {
|
||||
|
||||
// SvcDelInfo 是刪除資料
|
||||
type SvcDelInfo struct {
|
||||
WriteoffYYYYMM string `json:"writeoff_yyyymm"` // 支審年月
|
||||
TransNo string `json:"trans_no"` // 交易序號
|
||||
FeeAuditInfo
|
||||
Records int `json:"records"` // 服務記錄筆數
|
||||
CaseSvceRecords []CaseSvceRecord `json:"case_svc_records"` // 個案服務記錄
|
||||
CaseSvcRecords []CaseSvcRecord `json:"case_svc_records"` // 個案服務記錄
|
||||
}
|
||||
|
||||
// AppCompletionNoticeUpload 是 AppCompletionNotice 的傳送資料
|
||||
@@ -110,13 +114,11 @@ type AppCompletionNoticeUpload struct {
|
||||
|
||||
// FinishInfo 是申報確認資料
|
||||
type FinishInfo struct {
|
||||
WriteoffYYYYMM string `json:"writeoff_yyyymm"` // 支審年月
|
||||
TransNo string `json:"trans_no"` // 交易序號
|
||||
CityInfos []CityInfo `json:"city_info"` // 縣市案號資訊
|
||||
FeeAuditInfo
|
||||
FinishCityInfos []FinishCityInfo `json:"city_info"` // 縣市案號資訊
|
||||
}
|
||||
|
||||
// CityInfo 是縣市案號資訊
|
||||
type CityInfo struct {
|
||||
type FinishCityInfo struct {
|
||||
CityCode string `json:"city_cd"` // 縣市代碼
|
||||
CaseNoInfos []CaseNoInfo `json:"case_no_info"` // 案件資訊
|
||||
}
|
||||
@@ -124,6 +126,16 @@ type CityInfo struct {
|
||||
// CaseNoInfo 是案件資訊
|
||||
type CaseNoInfo struct {
|
||||
CaseNo string `json:"case_no"` // 案件編號
|
||||
}
|
||||
|
||||
// CityInfo 是縣市案號資訊
|
||||
type CityInfo struct {
|
||||
CityCode string `json:"city_cd"` // 縣市代碼
|
||||
CaseInfos []CaseInfo `json:"case_info"` // 案件資訊
|
||||
}
|
||||
|
||||
type CaseInfo struct {
|
||||
CaseNo string `json:"case_no"` // 案件編號
|
||||
Status string `json:"status,omitempty"` // 核銷狀況
|
||||
DocVer string `json:"doc_ver,omitempty"` // 總表版次
|
||||
AccNum string `json:"acc_num,omitempty"` // 簽證編號
|
||||
@@ -136,8 +148,7 @@ type AppResultQueryUpload struct {
|
||||
|
||||
// AppResultQueryInfo 是查詢輸入資訊
|
||||
type AppResultQueryInfo struct {
|
||||
WriteoffYYYYMM string `json:"writeoff_yyyymm"` // 支審年月
|
||||
TransNo string `json:"trans_no"` // 交易序號
|
||||
FeeAuditInfo
|
||||
QueryType string `json:"query_type"` // 查詢類別
|
||||
CityCode string `json:"city_cd,omitempty"` // 縣市代碼
|
||||
CaseNo string `json:"case_no,omitempty"` // 核銷案號
|
||||
@@ -228,10 +239,9 @@ type AppCancelUpload struct {
|
||||
|
||||
// CancelInfo 是服務單位撤回資料
|
||||
type CancelInfo struct {
|
||||
WriteoffYYYYMM string `json:"writeoff_yyyymm"` // 支審年月
|
||||
FeeAuditInfo
|
||||
CityCode string `json:"city_cd,omitempty"` // 縣市代碼
|
||||
CaseNo string `json:"case_no,omitempty"` // 核銷案號
|
||||
TransNo string `json:"trans_no"` // 交易序號
|
||||
}
|
||||
|
||||
// CancelResultResponseUpload 是 CancelResultResponse 的傳送資料
|
||||
@@ -241,7 +251,6 @@ type CancelResultResponseUpload struct {
|
||||
|
||||
// CancelResultResponseInfo 是取消交易單結果回報資料
|
||||
type CancelResultResponseInfo struct {
|
||||
WriteoffYYYYMM string `json:"writeoff_yyyymm"` // 支審年月
|
||||
TransNo string `json:"trans_no"` // 交易序號
|
||||
FeeAuditInfo
|
||||
CancelTransNo string `json:"cancel_trans_no"` // 所要取消結果回報之交易序號
|
||||
}
|
||||
|
||||
@@ -78,7 +78,7 @@ func (f *FeeAuditUtils) getChecksum(apData string) string {
|
||||
}
|
||||
|
||||
// httpsPost 用來上傳 WriteoffResponse
|
||||
func (f *FeeAuditUtils) httpsPost(funcName string, writeoffRequest WriteoffRequest) (writeoffResponse WriteoffResponse, err error) {
|
||||
func (f *FeeAuditUtils) httpsPost(funcName string, writeoffRequest WriteoffRequest) (responseData []byte, err error) {
|
||||
data, err := json.Marshal(&writeoffRequest)
|
||||
if err != nil {
|
||||
return
|
||||
@@ -108,14 +108,7 @@ func (f *FeeAuditUtils) httpsPost(funcName string, writeoffRequest WriteoffReque
|
||||
}
|
||||
defer response.Body.Close()
|
||||
|
||||
responseData, err := io.ReadAll(response.Body)
|
||||
if err != nil {
|
||||
return
|
||||
}
|
||||
|
||||
err = json.Unmarshal(responseData, &writeoffResponse)
|
||||
|
||||
return
|
||||
return io.ReadAll(response.Body)
|
||||
}
|
||||
|
||||
// NewRequest 用來産生 WirteoffRequest
|
||||
@@ -134,62 +127,31 @@ func (f *FeeAuditUtils) NewRequest(data []byte) WriteoffRequest {
|
||||
}
|
||||
|
||||
// SendFeeApply 傳送服務記錄申報
|
||||
func (f *FeeAuditUtils) SendFeeApply(writeoffRequest WriteoffRequest) (feeApplyResult FeeApplyResult, err error) {
|
||||
//uploadData, err := json.Marshal(&feeApply)
|
||||
//if err != nil {
|
||||
// return
|
||||
//}
|
||||
|
||||
writeoffResponse, err := f.httpsPost("FeeApply", writeoffRequest)
|
||||
if err != nil {
|
||||
return
|
||||
}
|
||||
|
||||
resultData, err := base64.StdEncoding.DecodeString(writeoffResponse.Result)
|
||||
|
||||
err = json.Unmarshal(resultData, &feeApplyResult)
|
||||
|
||||
return
|
||||
func (f *FeeAuditUtils) SendFeeApply(writeoffRequest WriteoffRequest) (responseData []byte, err error) {
|
||||
return f.httpsPost("FeeApply", writeoffRequest)
|
||||
}
|
||||
|
||||
// SendObjDel 傳送服務紀錄刪除
|
||||
func (f *FeeAuditUtils) SendObjDel(writeoffRequest WriteoffRequest) (err error) {
|
||||
_, err = f.httpsPost("ObjDel", writeoffRequest)
|
||||
|
||||
return
|
||||
func (f *FeeAuditUtils) SendObjDel(writeoffRequest WriteoffRequest) (responseData []byte, err error) {
|
||||
return f.httpsPost("ObjDel", writeoffRequest)
|
||||
}
|
||||
|
||||
// SendAppCompletionNotice 傳送申報確認通知
|
||||
func (f *FeeAuditUtils) SendAppCompletionNotice(writeoffRequest WriteoffRequest) (err error) {
|
||||
_, err = f.httpsPost("appCompletionNotice", writeoffRequest)
|
||||
|
||||
return
|
||||
func (f *FeeAuditUtils) SendAppCompletionNotice(writeoffRequest WriteoffRequest) (responseData []byte, err error) {
|
||||
return f.httpsPost("appCompletionNotice", writeoffRequest)
|
||||
}
|
||||
|
||||
// SendAppResultQuery 傳送「服務單位各分案審核狀態查詢」或「分案審核明細查詢」
|
||||
func (f *FeeAuditUtils) SendAppResultQuery(writeoffRequest WriteoffRequest) (appResultQueryResult AppResultQueryResult, err error) {
|
||||
writeoffResponse, err := f.httpsPost("appResultQuery", writeoffRequest)
|
||||
if err != nil {
|
||||
return
|
||||
}
|
||||
|
||||
resultData, err := base64.StdEncoding.DecodeString(writeoffResponse.Result)
|
||||
|
||||
err = json.Unmarshal(resultData, &appResultQueryResult)
|
||||
|
||||
return
|
||||
func (f *FeeAuditUtils) SendAppResultQuery(writeoffRequest WriteoffRequest) (responseData []byte, err error) {
|
||||
return f.httpsPost("appResultQuery", writeoffRequest)
|
||||
}
|
||||
|
||||
// SendAppCancel 傳送撤回服務記錄
|
||||
func (f *FeeAuditUtils) SendAppCancel(writeoffRequest WriteoffRequest) (err error) {
|
||||
_, err = f.httpsPost("appCancel", writeoffRequest)
|
||||
|
||||
return
|
||||
func (f *FeeAuditUtils) SendAppCancel(writeoffRequest WriteoffRequest) (responseData []byte, err error) {
|
||||
return f.httpsPost("appCancel", writeoffRequest)
|
||||
}
|
||||
|
||||
// SendCancelResultResponse 傳送取消交易單處理結果回報
|
||||
func (f *FeeAuditUtils) SendCancelResultResponse(writeoffRequest WriteoffRequest) (err error) {
|
||||
_, err = f.httpsPost("CancelResultResponse", writeoffRequest)
|
||||
|
||||
return
|
||||
func (f *FeeAuditUtils) SendCancelResultResponse(writeoffRequest WriteoffRequest) (responseData []byte, err error) {
|
||||
return f.httpsPost("CancelResultResponse", writeoffRequest)
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user