mirror of
https://gitlab.com/mbugroup/lti-api.git
synced 2026-05-20 13:31:56 +00:00
112 lines
4.3 KiB
Go
112 lines
4.3 KiB
Go
package dto
|
|
|
|
import "time"
|
|
|
|
type SapronakDetailDTO struct {
|
|
ProductID uint `json:"product_id"`
|
|
ProductName string `json:"product_name"`
|
|
Flag string `json:"flag"`
|
|
Tanggal *time.Time `json:"tanggal,omitempty"`
|
|
NoReferensi string `json:"no_referensi,omitempty"`
|
|
JenisTransaksi string `json:"jenis_transaksi,omitempty"`
|
|
QtyMasuk float64 `json:"qty_masuk"`
|
|
QtyKeluar float64 `json:"qty_keluar"`
|
|
Harga float64 `json:"harga"`
|
|
Nilai float64 `json:"nilai"`
|
|
}
|
|
|
|
type SapronakGroupDTO struct {
|
|
Flag string `json:"flag"`
|
|
Items []SapronakDetailDTO `json:"items"`
|
|
TotalMasuk float64 `json:"total_masuk"`
|
|
TotalKeluar float64 `json:"total_keluar"`
|
|
SaldoAkhir float64 `json:"saldo_akhir"`
|
|
TotalNilai float64 `json:"total_nilai"`
|
|
}
|
|
|
|
type SapronakItemDTO struct {
|
|
ProductID uint `json:"product_id"`
|
|
ProductName string `json:"product_name"`
|
|
Flag string `json:"flag"`
|
|
IncomingQty float64 `json:"incoming_qty"`
|
|
IncomingValue float64 `json:"incoming_value"`
|
|
UsageQty float64 `json:"usage_qty"`
|
|
UsageValue float64 `json:"usage_value"`
|
|
RemainingQty float64 `json:"remaining_qty"`
|
|
AveragePrice float64 `json:"average_price"`
|
|
}
|
|
|
|
type SapronakReportDTO struct {
|
|
ProjectFlockKandangID uint `json:"project_flock_kandang_id"`
|
|
ProjectFlockID uint `json:"project_flock_id"`
|
|
ProjectName string `json:"project_name"`
|
|
KandangID uint `json:"kandang_id"`
|
|
KandangName string `json:"kandang_name"`
|
|
Period int `json:"period"`
|
|
Status string `json:"status"`
|
|
StartDate *time.Time `json:"start_date,omitempty"`
|
|
EndDate *time.Time `json:"end_date,omitempty"`
|
|
TotalIncomingValue float64 `json:"total_incoming_value"`
|
|
TotalUsageValue float64 `json:"total_usage_value"`
|
|
Items []SapronakItemDTO `json:"items"`
|
|
Groups []SapronakGroupDTO `json:"groups,omitempty"`
|
|
}
|
|
|
|
// Simplified view for project-level sapronak response
|
|
type SapronakCategoryRowDTO struct {
|
|
ID int `json:"id"`
|
|
Date string `json:"date"`
|
|
ReferenceNumber string `json:"reference_number"`
|
|
QtyIn float64 `json:"qty_in"`
|
|
QtyOut float64 `json:"qty_out"`
|
|
QtyUsed float64 `json:"qty_used"`
|
|
Description string `json:"description"`
|
|
ProductCategory string `json:"product_category"`
|
|
UnitPrice float64 `json:"unit_price"`
|
|
TotalAmount float64 `json:"total_amount"`
|
|
Notes string `json:"notes"`
|
|
}
|
|
|
|
type SapronakCategoryTotalDTO struct {
|
|
Label string `json:"label"`
|
|
QtyIn float64 `json:"qty_in"`
|
|
QtyOut float64 `json:"qty_out"`
|
|
QtyUsed float64 `json:"qty_used"`
|
|
AvgUnitPrice float64 `json:"avg_unit_price"`
|
|
TotalAmount float64 `json:"total_amount"`
|
|
}
|
|
|
|
type SapronakCategoryDTO struct {
|
|
Rows []SapronakCategoryRowDTO `json:"rows"`
|
|
Total SapronakCategoryTotalDTO `json:"total"`
|
|
}
|
|
|
|
type SapronakProjectAggregatedDTO struct {
|
|
Doc *SapronakCategoryDTO `json:"doc,omitempty"`
|
|
Ovk *SapronakCategoryDTO `json:"ovk,omitempty"`
|
|
Pakan *SapronakCategoryDTO `json:"pakan,omitempty"`
|
|
}
|
|
|
|
type ClosingSapronakItemDTO struct {
|
|
Id uint64 `json:"id"`
|
|
Date string `json:"date"`
|
|
ReferenceNumber string `json:"reference_number"`
|
|
TransactionType string `json:"transaction_type"`
|
|
ProductName string `json:"product_name"`
|
|
ProductCategory string `json:"product_category"`
|
|
ProductSubCategory string `json:"product_sub_category"`
|
|
SourceWarehouse string `json:"source_warehouse"`
|
|
DestinationWarehouse string `json:"destination_warehouse,omitempty"`
|
|
// Destination string `json:"destination,omitempty"`
|
|
Quantity float64 `json:"quantity"`
|
|
Unit string `json:"unit"`
|
|
FormattedQuantity string `json:"formatted_quantity"`
|
|
Notes string `json:"notes"`
|
|
SortDate time.Time `json:"-"`
|
|
}
|
|
|
|
type ClosingSapronakDTO struct {
|
|
IncomingSapronak []ClosingSapronakItemDTO `json:"incoming_sapronak"`
|
|
OutgoingSapronak []ClosingSapronakItemDTO `json:"outgoing_sapronak"`
|
|
}
|