package models import ( "errors" "zhiyuan/pkg/db" ) type DesignType struct { ID int `json:"id"` Name string `json:"name"` CreatedAt int `json:"created_at"` UpdatedAt int `json:"updated_at"` } func (DesignType) TableName() string { return "zy_design_type" } func (a DesignType) GetOne(where map[string]interface{}, fields []string, retVal interface{}) (*DesignType, error) { if retVal == nil { var design_type *DesignType err := db.GetOne(a.TableName(), where, fields, &design_type) return design_type, err } else { err := db.GetOne(a.TableName(), where, fields, retVal) return nil, err } } func (a DesignType) GetMulti(where map[string]interface{}, fields []string, retVal interface{}) ([]*DesignType, error) { if retVal == nil { var design_type []*DesignType err := db.GetMulti(a.TableName(), where, fields, &design_type) return design_type, err } else { err := db.GetMulti(a.TableName(), where, fields, retVal) return nil, err } } func (a DesignType) GetOneRaw(where map[string]string, param map[string]interface{}, retVal interface{}) (*DesignType, error) { design_type, err := a.GetMultiRaw(where, param, retVal) if err != nil { return nil, err } if len(design_type) == 0 { return nil, errors.New("empty record2") } return design_type[0], nil } func (a DesignType) GetMultiRaw(where map[string]string, param map[string]interface{}, retVal interface{}) ([]*DesignType, error) { field := "SELECT * FROM zy_design_type " if retVal == nil { var design_type []*DesignType err := db.GetMultiRaw(field, where, param, &design_type) return design_type, err } else { err := db.GetMultiRaw(field, where, param, retVal) return nil, err } }