Getting undefined typecheck go lint with custom struct that are in different files

2.5k views Asked by At

This is my main file

package datamodels

import "time"

type Training struct {
    Id                 string       `param:"id" json:"id,omitempty" firestore:"id"`
    Image              string       `json:"image,omitempty" firestore:"image" validate:"required"`
    AccountId          string       `json:"accountId,omitempty" firestore:"accountId" validate:"required"`
    Type               string       `json:"type,omitempty" firestore:"type" validate:"required"`
    DogRating          float64      `json:"dogRating,omitempty" firestore:"dogRating" validate:"required"`
    TrainedByRating    float64      `json:"trainedByRating,omitempty" firestore:"trainedByRating" validate:"required"`
    Dog                *TrainingDog `json:"dog,omitempty" firestore:"dog" validate:"required"`
    TrainingTime       int          `json:"trainingTime,omitempty" firestore:"trainingTime" validate:"required"`
    DateTime           *time.Time   `json:"dateTime,omitempty" firestore:"dateTime" validate:"required"`
    Data               *[]Data      `json:"data,omitempty" firestore:"data" validate:"required"`
    UnitsOfMeasurement string       `json:"unitsOfMeasurement,omitempty" firestore:"unitsOfMeasurement" validate:"required"`
    TrainedBy          *DogHandler  `json:"trainedBy,omitempty" firestore:"trainedBy" validate:"required"`
    Team               *TeamInfo    `json:"team,omitempty" firestore:"team" validate:"required"`
    Location           *Location    `json:"location,omitempty" firestore:"location"`
    TimesOfDay         string       `json:"timesOfDay,omitempty" firestore:"timesOfDay"`
    Notes              string       `json:"notes,omitempty" firestore:"notes"`
    CreatedAt          *time.Time   `json:"createdAt,omitempty" firestore:"createdAt,serverTimestamp"`
}

I'm getting undefined: DogHandler (typecheck)go-golangci-lint but and I have that set in the dog model

    type Dog struct {
    Id                string           `param:"id" json:"id,omitempty" firestore:"id"`
    Image             string           `json:"image,omitempty" firestore:"image" validate:"required"`
    AccountId         string           `json:"accountId,omitempty" firestore:"accountId" validate:"required"`
    Teams             []DogTeam        `json:"teams,omitempty" firestore:"teams" validate:"required"`
    Name              string           `json:"name,omitempty" firestore:"name" validate:"required"`
    Breed             *DogBreed        `json:"breed,omitempty" firestore:"breed" validate:"required"`
    Birthday          *time.Time       `json:"birthday,omitempty" firestore:"birthday"`
    Weight            float64          `json:"weight,omitempty" firestore:"weight" validate:"required"`
    Gender            *DogGender       `json:"gender,omitempty" firestore:"gender" validate:"required"`
    DogType           *[]DogType       `json:"type,omitempty" firestore:"type" validate:"required"`
    Status            *DogStatus       `json:"status,omitempty" firestore:"status" validate:"required"`
    Registered        *bool            `json:"registered,omitempty" firestore:"registered" validate:"required"`
    Stats             *DogStats        `json:"stats,omitempty" firestore:"stats" validate:"required"`
    UnitOfMeasurement *MeasurementUnit `json:"unitOfMeasurement,omitempty" firestore:"unitOfMeasurement" validate:"required"`
    CreatedBy         string           `json:"createdBy,omitempty" firestore:"createdBy"`
    Note              string           `json:"note,omitempty" firestore:"note"`
    Handler           *DogHandler      `json:"handler,omitempty" firestore:"handler"`
    ChipId            string           `json:"chipId,omitempty" firestore:"chipId"`
    CreatedAt         *time.Time       `json:"createdAt,omitempty" firestore:"createdAt,serverTimestamp"`
    UpdatedAt         *time.Time       `json:"updatedAt,omitempty" firestore:"updatedAt"`
}

type DogImage struct {
    DogId string `json:"dogId" firestore:"dogId" validate:"required"`
    Url   string `json:"url" firestore:"url" validate:"required"`
}

type DogTeam struct {
    Id   string `json:"id" firestore:"id" validate:"required"`
    Name string `json:"name" firestore:"name" validate:"required"`
}

type DogBreed struct {
    BreedId int    `json:"breedId" firestore:"breedId" validate:"required"`
    Country string `json:"country" firestore:"country" validate:"required"`
    Name    string `json:"name" firestore:"name" validate:"required"`
    Type    string `json:"type" firestore:"type" validate:"required"`
}

type DogHandler struct {
    Name  string   `json:"name" firestore:"name" validate:"required"`
    Id    string   `json:"id" firestore:"id" validate:"required"`
    Utype UserType `json:"type,omitempty" firestore:"type,omitempty"`
}
0

There are 0 answers