Compare commits

...

4 Commits

3 changed files with 33 additions and 2 deletions

View File

@@ -17,8 +17,8 @@ import "time"
// Indexes: Id, ConversationId, RequestedAt
type DBAmendment struct {
Id int `gorm:"primaryKey;autoIncrement"`
ConversationId string `gorm:"index"`
AmendmentColumn string
ConversationId string `gorm:"uniqueIndex:idx_amendment_conv_column"`
AmendmentColumn string `gorm:"uniqueIndex:idx_amendment_conv_column"`
AmendmentValue string
Requestor string
RequestedAt time.Time `gorm:"index"`

View File

@@ -37,6 +37,7 @@ type CrmInterpreter struct {
PinViaSMS *bool `gorm:"column:pin_via_sms" json:"pin_via_sms"`
VaxFluCheck *bool `gorm:"column:vax_flu_check" json:"vax_flu_check"`
WorkingWithChildren *bool `gorm:"column:working_with_children" json:"working_with_children"`
InternalInterpreter *bool `gorm:"column:internal_interpreter" json:"internal_interpreter"`
LastContactAttempt *time.Time `gorm:"column:last_contact_attempt" json:"last_contact_attempt"`
MigrationYear *time.Time `gorm:"column:migration_year" json:"migration_year"`
FirstName *string `gorm:"column:first_name" json:"first_name"`

View File

@@ -1,9 +1,25 @@
package models
import (
"encoding/json"
"math"
"time"
)
func (c DBClientProcessed) MarshalJSON() ([]byte, error) {
type alias DBClientProcessed // avoid recursion
sanitize := func(f float64) float64 {
if math.IsNaN(f) || math.IsInf(f, 0) {
return 0
}
return f
}
a := alias(c)
a.ClientRate = sanitize(a.ClientRate)
a.PartnerRate = sanitize(a.PartnerRate)
return json.Marshal(a)
}
type DBClientProcessed struct {
// CALL DETAILS
@@ -69,6 +85,19 @@ func (DBClientProcessed) TableName() string {
return "gc_client_processed"
}
func (i DBInterpreterProcessed) MarshalJSON() ([]byte, error) {
type alias DBInterpreterProcessed // avoid recursion
sanitize := func(f float64) float64 {
if math.IsNaN(f) || math.IsInf(f, 0) {
return 0
}
return f
}
a := alias(i)
a.InterpreterRate = sanitize(a.InterpreterRate)
return json.Marshal(a)
}
type DBInterpreterProcessed struct {
// CALL DETAILS
@@ -80,6 +109,7 @@ type DBInterpreterProcessed struct {
BookingReference *int
BillableInterpreter bool
BillableTpa bool
BillableInternal bool
// FLAGS / METADATA:
// ---