| 1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859606162636465666768 |
- package godown
- import (
- "server/global"
- )
- type Goods struct {
- global.GVA_MODEL
- Name string `json:"name" gorm:"comment:名称"`
- GoodsGenreId int `json:"goodsGenreId" gorm:"comment:类型"`
- GoodsGenre GoodsGenre `json:"goodsGenre" gorm:"foreignKey:GoodsGenreId;"`
- Characteristic string `json:"characteristic" gorm:"comment:特性"`
- Specifications string `json:"specifications" gorm:"comment:规格"`
- Unit string `json:"unit" gorm:"comment:单位"`
- Number int `json:"number" gorm:"comment:数量"`
- Position string `json:"position" gorm:"comment:位置"`
- }
- func (Goods) TableName() string {
- return "goods"
- }
- func QueryAllGoods() (goods []Goods, err error) {
- err = global.GVA_DB.Model(&Goods{}).Find(&goods).Error
- return
- }
- func QueryGoodsList(limit, offset, genre int, name, characteristic, specifications string) (goods []Goods, total int64, err error) {
- // 创建db
- db := global.GVA_DB.Model(&Goods{}).Debug()
- // 如果有条件搜索 下方会自动创建搜索语句
- if name != "" {
- db = db.Where("name LIKE ?", "%"+name+"%")
- }
- if characteristic != "" {
- db = db.Where("characteristic LIKE ?", "%"+characteristic+"%")
- }
- if specifications != "" {
- db = db.Where("specifications LIKE ?", "%"+specifications+"%")
- }
- if genre > 0 {
- db = db.Where("goods_genre_id = ?", genre)
- }
- err = db.Count(&total).Error
- if err != nil {
- return
- }
- err = db.Order("id desc").Limit(limit).Offset(offset).Preload("GoodsGenre").Find(&goods).Error
- return goods, total, err
- }
- func QueryGoodsByGenre(genreId int) (goods []Goods, err error) {
- err = global.GVA_DB.Model(&Goods{}).Where("goods_genre_id = ?", genreId).Find(&goods).Error
- return goods, err
- }
- func (g Goods) CreateGoods() error {
- return global.GVA_DB.Create(&g).Error
- }
- func (g Goods) UpdateGoods() error {
- return global.GVA_DB.Where("id = ?", g.ID).Updates(&g).Error
- }
- func DeleteGoods(id int) error {
- return global.GVA_DB.Where("id = ?", id).Unscoped().Delete(&Goods{}).Error
- }
|