49 lines
2.1 KiB
Go
49 lines
2.1 KiB
Go
package domain
|
|
|
|
import (
|
|
"encoding/xml"
|
|
|
|
"go.mongodb.org/mongo-driver/bson/primitive"
|
|
)
|
|
|
|
type WorkInfo struct {
|
|
EmployeeNumber int `xml:"EmployeeNumber" json:"employee_number" bson:"employee_number"`
|
|
Date string `xml:"Date" json:"date" bson:"date"`
|
|
Shifts []Shift `xml:"Shifts>Shift" json:"shifts" bson:"shifts"`
|
|
}
|
|
|
|
type Shift struct {
|
|
Start string `xml:"Start" json:"start" bson:"start"`
|
|
End string `xml:"End" json:"end" bson:"end"`
|
|
ShiftCode string `xml:"ShiftCode" json:"shift_code" bson:"shift_code"`
|
|
ActualStart string `xml:"ActualStart" json:"actual_start" bson:"actual_start"`
|
|
ActualEnd string `xml:"ActualEnd" json:"actual_end" bson:"actual_end"`
|
|
RoleCode string `xml:"RoleCode" json:"role_code" bson:"role_code"`
|
|
ShiftCategoryCode string `xml:"ShiftCategoryCode" json:"shift_category_code" bson:"shift_category_code"`
|
|
CustomFields []CustomField `xml:"CustomFields>CustomField" json:"custom_fields" bson:"custom_fields"`
|
|
}
|
|
|
|
type Baseline struct {
|
|
BaselineType string `xml:"BaselineType,attr" json:"baseline_type" bson:"baseline_type"`
|
|
Shifts []Shift `xml:"Shifts>Shift" json:"shifts" bson:"shifts"`
|
|
}
|
|
|
|
type CustomField struct {
|
|
Name string `xml:"Name" json:"name" bson:"name"`
|
|
Value string `xml:"Value" json:"value" bson:"value"`
|
|
}
|
|
|
|
type EmployeeWorkInformation struct {
|
|
ID primitive.ObjectID `json:"id" bson:"_id"`
|
|
EmployeeNumber int `xml:"EmployeeNumber" json:"employee_number" bson:"employee_number"`
|
|
Date string `xml:"Date" json:"date"`
|
|
WorkInformation WorkInfo `xml:"WorkInformation" json:"work_information" bson:"work_information"`
|
|
Baselines []Baseline `json:"baselines" bson:"baselines"`
|
|
CustomFields []CustomField `json:"custom_fields" bson:"custom_fields"`
|
|
}
|
|
|
|
type ArrayOfEmployeeWorkInformation struct {
|
|
XMLName xml.Name `xml:"ArrayOfEmployeeWorkInformation"`
|
|
EmployeeWorkInfos []EmployeeWorkInformation `xml:"EmployeeWorkInformation"`
|
|
}
|