natsio/model/supplier_response.go

136 lines
4.6 KiB
Go

package model
// ResponseSupplierInfo ...
type ResponseSupplierInfo struct {
ID string `json:"id"`
Name string `json:"name"`
BusinessType string `json:"businessType"`
Statistic SupplierStatistic `json:"statistic"`
Rating float64 `json:"rating"`
Inventories []*SKUCommonInfo `json:"inventories"`
Active bool `json:"active"`
IsSellyMall bool `json:"isSellyMall"`
}
// SupplierStatistic ...
type SupplierStatistic struct {
TotalInventory int64 `json:"totalInventory"`
TotalQuantitySale int64 `json:"totalQuantitySale"`
TotalProduct int64 `json:"totalProduct"`
TotalHasOrderSeller int64 `json:"totalHasOrderSeller"`
TotalFollower int64 `json:"totalFollower"`
SalesTotal float64 `json:"salesTotal"`
SalesWeekTotal float64 `json:"salesWeekTotal"`
SalesMonthTotal float64 `json:"salesMonthTotal"`
SalesTwoMonthTotal float64 `json:"salesTwoMonthTotal"`
SalesYearTotal float64 `json:"salesYearTotal"`
SalesSuccess float64 `json:"salesSuccess"`
SalesPending float64 `json:"salesPending"`
SalesCancelled float64 `json:"salesCancelled"`
}
// SKUCommonInfo ...
type SKUCommonInfo struct {
Code int `json:"id,omitempty" bson:"id,omitempty"`
ID string `json:"_id" bson:"_id"`
Name string `json:"name" bson:"name"`
SearchString string `json:"-" bson:"searchString,omitempty"`
Location *LocationInventory `json:"location,omitempty" bson:"location,omitempty"`
MinimumValue float64 `json:"minimumValue,omitempty" bson:"-"`
}
// LocationInventory ...
type LocationInventory struct {
Address string `bson:"address" json:"address"`
Province string `bson:"province" json:"province"`
ProvinceName string `bson:"provinceName,omitempty" json:"provinceName,omitempty"`
District string `bson:"district" json:"district"`
Ward string `bson:"ward" json:"ward"`
FullAddress string `bson:"fullAddress,omitempty" json:"fullAddress,omitempty"`
Location *MongoLocation `bson:"location" json:"location"`
}
// MongoLocation ...
type MongoLocation struct {
Type string `bson:"type"`
Coordinates []float64 `bson:"coordinates"`
}
// ResponseSupplierContract ...
type ResponseSupplierContract struct {
ID string `json:"id"`
Supplier string `json:"supplier"`
Name string `json:"name"`
Status string `json:"status"`
}
// SupplierBrief ...
type SupplierBrief struct {
ID string `json:"_id"`
Name string `json:"name"`
Status string `json:"status"`
BusinessType string `json:"businessType"`
CreatedAt string `json:"createdAt"`
UpdatedAt string `json:"updatedAt"`
}
type SupplierAll struct {
Suppliers []SupplierBrief `json:"suppliers"`
Total int64 `json:"total"`
}
type SupplierListWarehouseFreeShipResponse struct {
Warehouses []string `json:"warehouses"`
}
type SupplierCashflowCreateResponse struct {
ID string `json:"id"`
}
type FreeShip struct {
ID string `json:"_id"`
ShortName string `json:"shortName"`
ListMilestoneText []string `json:"milestoneText"`
Order int `json:"-"`
}
type SupplierFreeShipInfoResponse struct {
SupplierID string `json:"supplierId"`
FreeShips []FreeShip `json:"freeShips"`
}
type SupplierShort struct {
ID string `json:"_id"`
Name string `json:"name"`
Logo interface{} `json:"logo"`
}
type SupplierUpdateBalanceRes struct {
CurrentCash float64 `json:"currentCash"`
TotalPendingCash float64 `json:"totalPendingCash"`
OrderPendingCash float64 `json:"orderPendingCash"`
OrderWaitingForReconcileCash float64 `json:"orderWaitingForReconcileCash"`
OrderReconciledCash float64 `json:"orderReconciledCash"`
WithdrawPendingCash float64 `json:"withdrawPendingCash"`
WithdrawSuccessCash float64 `json:"withdrawSuccessCash"`
WithdrawRejectCash float64 `json:"withdrawRejectCash"`
ChangeBalanceRequestApproved float64 `json:"changeBalanceRequestApproved"`
UpdatedAt string `json:"updatedAt"`
}
type SupplierGetCurrentBalanceRes struct {
CurrentCash float64 `json:"currentCash"`
}
type SyncSupplierWarehousePayload struct {
Supplier string `json:"supplier"`
Warehouse string `json:"warehouse"`
ProvinceCode int `json:"provinceCode"`
DistrictCode int `json:"districtCode"`
WardCode int `json:"wardCode"`
}
type SupplierCountRes struct {
Total int64 `json:"total"`
}