mirror of
https://gitlab.com/mbugroup/lti-api.git
synced 2026-05-24 07:15:43 +00:00
FIX[BE]: name duplicate flock,projectflock category change,menerapkan dto seperti warehouse di projectflock
This commit is contained in:
@@ -4,75 +4,66 @@ import (
|
||||
"time"
|
||||
|
||||
entity "gitlab.com/mbugroup/lti-api.git/internal/entities"
|
||||
areaDTO "gitlab.com/mbugroup/lti-api.git/internal/modules/master/areas/dto"
|
||||
fcrDTO "gitlab.com/mbugroup/lti-api.git/internal/modules/master/fcrs/dto"
|
||||
flockDTO "gitlab.com/mbugroup/lti-api.git/internal/modules/master/flocks/dto"
|
||||
kandangDTO "gitlab.com/mbugroup/lti-api.git/internal/modules/master/kandangs/dto"
|
||||
locationDTO "gitlab.com/mbugroup/lti-api.git/internal/modules/master/locations/dto"
|
||||
userDTO "gitlab.com/mbugroup/lti-api.git/internal/modules/users/dto"
|
||||
)
|
||||
|
||||
type ProjectFlockBaseDTO struct {
|
||||
Id uint `json:"id"`
|
||||
// FlockId uint `json:"flock_id"`
|
||||
// AreaId uint `json:"area_id"`
|
||||
// ProductCategoryId uint `json:"product_category_id"`
|
||||
// FcrId uint `json:"fcr_id"`
|
||||
// LocationId uint `json:"location_id"`
|
||||
Period int `json:"period"`
|
||||
Id uint `json:"id"`
|
||||
Period int `json:"period"`
|
||||
Category string `json:"category"`
|
||||
Flock *flockDTO.FlockBaseDTO `json:"flock"`
|
||||
Area *areaDTO.AreaBaseDTO `json:"area"`
|
||||
Fcr *fcrDTO.FcrBaseDTO `json:"fcr"`
|
||||
Location *locationDTO.LocationBaseDTO `json:"location"`
|
||||
}
|
||||
|
||||
func ToProjectFlockBaseDTO(e entity.ProjectFlock) ProjectFlockBaseDTO {
|
||||
return ProjectFlockBaseDTO{
|
||||
Id: e.Id,
|
||||
// FlockId: e.FlockId,
|
||||
// AreaId: e.AreaId,
|
||||
// ProductCategoryId: e.ProductCategoryId,
|
||||
// FcrId: e.FcrId,
|
||||
// LocationId: e.LocationId,
|
||||
Period: e.Period,
|
||||
var flock *flockDTO.FlockBaseDTO
|
||||
if e.Flock.Id != 0 {
|
||||
mapped := flockDTO.ToFlockBaseDTO(e.Flock)
|
||||
flock = &mapped
|
||||
}
|
||||
}
|
||||
|
||||
type FlockSummaryDTO struct {
|
||||
Id uint `json:"id"`
|
||||
Name string `json:"name"`
|
||||
}
|
||||
var area *areaDTO.AreaBaseDTO
|
||||
if e.Area.Id != 0 {
|
||||
mapped := areaDTO.ToAreaBaseDTO(e.Area)
|
||||
area = &mapped
|
||||
}
|
||||
|
||||
type AreaSummaryDTO struct {
|
||||
Id uint `json:"id"`
|
||||
Name string `json:"name"`
|
||||
}
|
||||
var fcr *fcrDTO.FcrBaseDTO
|
||||
if e.Fcr.Id != 0 {
|
||||
mapped := fcrDTO.ToFcrBaseDTO(e.Fcr)
|
||||
fcr = &mapped
|
||||
}
|
||||
|
||||
type ProductCategorySummaryDTO struct {
|
||||
Id uint `json:"id"`
|
||||
Name string `json:"name"`
|
||||
Code string `json:"code"`
|
||||
}
|
||||
var location *locationDTO.LocationBaseDTO
|
||||
if e.Location.Id != 0 {
|
||||
mapped := locationDTO.ToLocationBaseDTO(e.Location)
|
||||
location = &mapped
|
||||
}
|
||||
|
||||
type FcrSummaryDTO struct {
|
||||
Id uint `json:"id"`
|
||||
Name string `json:"name"`
|
||||
}
|
||||
|
||||
type LocationSummaryDTO struct {
|
||||
Id uint `json:"id"`
|
||||
Name string `json:"name"`
|
||||
Address string `json:"address"`
|
||||
}
|
||||
|
||||
type KandangSummaryDTO struct {
|
||||
Id uint `json:"id"`
|
||||
Name string `json:"name"`
|
||||
Status string `json:"status"`
|
||||
return ProjectFlockBaseDTO{
|
||||
Id: e.Id,
|
||||
Period: e.Period,
|
||||
Category: e.Category,
|
||||
Flock: flock,
|
||||
Area: area,
|
||||
Fcr: fcr,
|
||||
Location: location,
|
||||
}
|
||||
}
|
||||
|
||||
type ProjectFlockListDTO struct {
|
||||
ProjectFlockBaseDTO
|
||||
Flock *FlockSummaryDTO `json:"flock,omitempty"`
|
||||
Area *AreaSummaryDTO `json:"area,omitempty"`
|
||||
ProductCategory *ProductCategorySummaryDTO `json:"product_category,omitempty"`
|
||||
Fcr *FcrSummaryDTO `json:"fcr,omitempty"`
|
||||
Location *LocationSummaryDTO `json:"location,omitempty"`
|
||||
Kandangs []KandangSummaryDTO `json:"kandangs,omitempty"`
|
||||
CreatedUser *userDTO.UserBaseDTO `json:"created_user"`
|
||||
CreatedAt time.Time `json:"created_at"`
|
||||
UpdatedAt time.Time `json:"updated_at"`
|
||||
Kandangs []kandangDTO.KandangBaseDTO `json:"kandangs,omitempty"`
|
||||
CreatedUser *userDTO.UserBaseDTO `json:"created_user"`
|
||||
CreatedAt time.Time `json:"created_at"`
|
||||
UpdatedAt time.Time `json:"updated_at"`
|
||||
}
|
||||
|
||||
type ProjectFlockDetailDTO struct {
|
||||
@@ -80,8 +71,8 @@ type ProjectFlockDetailDTO struct {
|
||||
}
|
||||
|
||||
type FlockPeriodSummaryDTO struct {
|
||||
Flock FlockSummaryDTO `json:"flock"`
|
||||
NextPeriod int `json:"next_period"`
|
||||
Flock flockDTO.FlockBaseDTO `json:"flock"`
|
||||
NextPeriod int `json:"next_period"`
|
||||
}
|
||||
|
||||
func ToProjectFlockListDTO(e entity.ProjectFlock) ProjectFlockListDTO {
|
||||
@@ -91,62 +82,16 @@ func ToProjectFlockListDTO(e entity.ProjectFlock) ProjectFlockListDTO {
|
||||
createdUser = &mapped
|
||||
}
|
||||
|
||||
var flockSummary *FlockSummaryDTO
|
||||
if e.Flock.Id != 0 {
|
||||
summary := ToFlockSummaryDTO(e.Flock)
|
||||
flockSummary = &summary
|
||||
}
|
||||
|
||||
var areaSummary *AreaSummaryDTO
|
||||
if e.Area.Id != 0 {
|
||||
areaSummary = &AreaSummaryDTO{
|
||||
Id: e.Area.Id,
|
||||
Name: e.Area.Name,
|
||||
}
|
||||
}
|
||||
|
||||
var categorySummary *ProductCategorySummaryDTO
|
||||
if e.ProductCategory.Id != 0 {
|
||||
categorySummary = &ProductCategorySummaryDTO{
|
||||
Id: e.ProductCategory.Id,
|
||||
Name: e.ProductCategory.Name,
|
||||
Code: e.ProductCategory.Code,
|
||||
}
|
||||
}
|
||||
|
||||
var fcrSummary *FcrSummaryDTO
|
||||
if e.Fcr.Id != 0 {
|
||||
fcrSummary = &FcrSummaryDTO{
|
||||
Id: e.Fcr.Id,
|
||||
Name: e.Fcr.Name,
|
||||
}
|
||||
}
|
||||
|
||||
var locationSummary *LocationSummaryDTO
|
||||
if e.Location.Id != 0 {
|
||||
locationSummary = &LocationSummaryDTO{
|
||||
Id: e.Location.Id,
|
||||
Name: e.Location.Name,
|
||||
Address: e.Location.Address,
|
||||
}
|
||||
}
|
||||
|
||||
kandangSummaries := make([]KandangSummaryDTO, len(e.Kandangs))
|
||||
for i, kandang := range e.Kandangs {
|
||||
kandangSummaries[i] = KandangSummaryDTO{
|
||||
Id: kandang.Id,
|
||||
Name: kandang.Name,
|
||||
Status: kandang.Status,
|
||||
var kandangSummaries []kandangDTO.KandangBaseDTO
|
||||
if len(e.Kandangs) > 0 {
|
||||
kandangSummaries = make([]kandangDTO.KandangBaseDTO, len(e.Kandangs))
|
||||
for i, kandang := range e.Kandangs {
|
||||
kandangSummaries[i] = kandangDTO.ToKandangBaseDTO(kandang)
|
||||
}
|
||||
}
|
||||
|
||||
return ProjectFlockListDTO{
|
||||
ProjectFlockBaseDTO: ToProjectFlockBaseDTO(e),
|
||||
Flock: flockSummary,
|
||||
Area: areaSummary,
|
||||
ProductCategory: categorySummary,
|
||||
Fcr: fcrSummary,
|
||||
Location: locationSummary,
|
||||
Kandangs: kandangSummaries,
|
||||
CreatedAt: e.CreatedAt,
|
||||
UpdatedAt: e.UpdatedAt,
|
||||
@@ -168,16 +113,9 @@ func ToProjectFlockDetailDTO(e entity.ProjectFlock) ProjectFlockDetailDTO {
|
||||
}
|
||||
}
|
||||
|
||||
func ToFlockSummaryDTO(e entity.Flock) FlockSummaryDTO {
|
||||
return FlockSummaryDTO{
|
||||
Id: e.Id,
|
||||
Name: e.Name,
|
||||
}
|
||||
}
|
||||
|
||||
func ToFlockPeriodSummaryDTO(flock entity.Flock, next int) FlockPeriodSummaryDTO {
|
||||
return FlockPeriodSummaryDTO{
|
||||
Flock: ToFlockSummaryDTO(flock),
|
||||
Flock: flockDTO.ToFlockBaseDTO(flock),
|
||||
NextPeriod: next,
|
||||
}
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user