package goods import ( "spaceofcheng/services/models" "spaceofcheng/services/models/model" "spaceofcheng/services/utils" "strconv" "strings" "time" ) // GetGoodsTypeCount 获取商品类型总数 func (m *GoodsDAO) GetGoodsTypeCount(caseids string) (int, error) { var goodstype []model.TdGoodsType err := m.db.Where("status>" + strconv.Itoa(models.STATUS_DEL)).And("case_id in ('" + strings.Replace(caseids, ",", "','", -1) + "')").Find(&goodstype) return len(goodstype), err } func (m *GoodsDAO) GetGoodsTypeByCase(caseid string) ([]model.TdGoodsType, error) { var goodstype []model.TdGoodsType err := m.db.Where("status>"+strconv.Itoa(models.STATUS_DEL)).And("case_id=?", caseid).Find(&goodstype) return goodstype, err } // GetGoodsType 根据案场获取商品类型 func (m *GoodsDAO) GetGoodsType(caseids string, page int, pageSize int) ([]model.TdGoodsType, error) { var goodstype []model.TdGoodsType err := m.db.Where("status>"+strconv.Itoa(models.STATUS_DEL)).And("case_id in ('"+strings.Replace(caseids, ",", "','", -1)+"')").Desc("create_date").Limit(pageSize, (page-1)*pageSize).Desc("create_date").Find(&goodstype) return goodstype, err } // GetGoodsTypeByID 根据ID获取商品类型 func (m *GoodsDAO) GetGoodsTypeByID(typeid string) (*model.TdGoodsType, error) { var goodstype []model.TdGoodsType err := m.db.Where("status>"+strconv.Itoa(models.STATUS_DEL)).And("type_id=?", typeid).Find(&goodstype) if err != nil { return nil, err } if len(goodstype) > 0 { return &goodstype[0], nil } return nil, nil } // AddGoodsType 新增商品类型 func (m *GoodsDAO) AddGoodsType(goodsType *model.TdGoodsType) (*model.TdGoodsType, error) { goodsType.TypeId = utils.GetGUID() goodsType.CreateDate = time.Now() goodsType.Status = models.STATUS_NORMAL user := m.ctx.Get("user").(model.SysUser) goodsType.CreateUser = user.UserId _, err := m.db.Insert(goodsType) return goodsType, err } // UpdateGoodsType 修改商品类型 func (m *GoodsDAO) UpdateGoodsType(goodsType *model.TdGoodsType) error { var cols = []string{ "type_name", "case_id", "english_name", } _, err := m.db.Cols(cols...).Where("type_id=?", goodsType.TypeId).Update(goodsType) return err } // DelGoodsType 刪除商品类型 func (m *GoodsDAO) DelGoodsType(typeid string) error { var goodsType = model.TdGoodsType{ TypeId: typeid, Status: models.STATUS_DEL, } var cols = []string{ "status", } _, err := m.db.Cols(cols...).Where("type_id=?", typeid).Update(goodsType) return err }