12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455 |
- package aftersale
- import (
- "errors"
- "zhiyuan/models"
- "zhiyuan/pkg/app"
- "zhiyuan/pkg/db"
- "zhiyuan/services/form"
- )
- var ASQa models.ASQa
- func GetQaList(where map[string]interface{}, fields []string, page app.Page, retVal interface{}) ([]*models.ASQa, error) {
- if page.PageNum > 0 && page.PageSize > 0 {
- where["_limit"] = db.GetOffset(uint(page.PageNum), uint(page.PageSize))
- }
- return ASQa.GetMulti(where, fields, retVal)
- }
- func CountQa(where map[string]interface{}) (int64, error) {
- return db.Count(ASQa.TableName(), where)
- }
- func GetQaOne(where map[string]interface{}, fields []string, dest interface{}) (*models.ASQa, error) {
- return ASQa.GetOne(where, fields, dest)
- }
- func AddQa(form form.ASQaAdd) (int64, error) {
- qaMap := map[string]interface{}{
- "title": form.Title,
- "content": form.Content,
- }
- return db.InsertOne(ASQa.TableName(), qaMap)
- }
- func EditQa(form form.ASQaAdd, id int) (int64, error) {
- qaInfo, _ := GetQaOne(map[string]interface{}{"id": id}, nil, nil)
- if qaInfo.Title != form.Title && CheckQaDuplicate(form.Title) {
- return 0, errors.New("类别已存在")
- }
- qaMap := map[string]interface{}{
- "title": form.Title,
- "content": form.Content,
- }
- return db.Update(ASQa.TableName(), map[string]interface{}{"id": id}, qaMap)
- }
- func CheckQaDuplicate(name string) bool {
- typeInfo, err := GetQaOne(map[string]interface{}{"title": name}, nil, nil)
- return typeInfo != nil && err == nil
- }
- func DelQa(id int) (int64, error) {
- return db.DeleteSoft(ASQa.TableName(), map[string]interface{}{"id": id})
- }
|