package dao import ( "git.rosy.net.cn/jx-callback/business/model" "github.com/astaxie/beego/orm" ) func GetPlaceByCode(db *DaoDB, code int) (place *model.Place, err error) { if db == nil { db = GetDB() } place = &model.Place{ Code: code, } err = GetEntity(db, place, "Code") return place, err } func GetPlaceByName(db *DaoDB, name string, level int, parentCode int) (place *model.Place, err error) { if db == nil { db = GetDB() } cols := []string{ "Name", "Level", } place = &model.Place{ Name: name, Level: int8(level), } if parentCode != 0 { cols = append(cols, "ParentCode") place.ParentCode = parentCode } if err = GetEntity(db, place, cols...); err == orm.ErrNoRows { err = db.db.Raw("SELECT * FROM place WHERE parent_code = ? AND level = ? AND name LIKE ?", parentCode, level, "%"+name+"%").QueryRow(place) } return place, err } func GetPlaceByJdCode(db *DaoDB, jdCode int) (place *model.Place, err error) { if db == nil { db = GetDB() } place = &model.Place{ JdCode: jdCode, } err = db.db.Read(place, "JdCode") return place, err }