package db import ( "errors" "leit.com/leit_seat_aps/common" "xorm.io/core" ) // 系统参数 type Spatab struct { Finr int `xorm:"pk"` Sid int `xorm:"pk"` Pid int `xorm:"pk"` Sachbearb string `xorm:"pk"` Dispvar string `xorm:"pk"` Paramname string Wertnum int Wertstring string Paramvaluetype string Beschr string Callfunction string Lastmodif string Lastuser string Credatuz string } func (t *Spatab) Clipped() { common.TrimStruct(t, *t) } func (t *Spatab) TableName() string { return "spatab" } //增 func (t *Spatab) Add() error { e := G_DbEngine spatab := new(Spatab) affw, err := e.Table("spatab").ID(core.PK{G_FINR, t.Sid, t.Pid, t.Sachbearb, t.Dispvar}).Count(spatab) if err != nil { return err } if affw > 0 { return errors.New("数据已经存在!") } _, err = e.Table("spatab").Insert(t) if err != nil { return err } return nil } //删 func (t *Spatab) Del() bool { e := G_DbEngine _, err := e.ID(core.PK{G_FINR, t.Sid, t.Pid, t.Sachbearb, t.Dispvar}).Delete(&Spatab{}) if err != nil { return false } return true } //改 func (t *Spatab) Update() bool { e := G_DbEngine _, err := e.ID(core.PK{G_FINR, t.Sid, t.Pid, t.Sachbearb, t.Dispvar}).Update(t) if err != nil { return false } return true } //查 func (t *Spatab) SelectOne() (data Spatab, err error) { e := G_DbEngine _, err = e.ID(core.PK{G_FINR, t.Sid, t.Pid, t.Sachbearb, t.Dispvar}).Get(&data) if err != nil { return data, err } data.Clipped() return data, nil } //基于模块 / 用户 / 参数名查询 func (t *Spatab) SelectByModuleUserParaname(imodule int, user, paraname string) (datalst []Spatab, err error) { var i int e := G_DbEngine if err = e.Where("finr = ? and sid = ? and sachbearb = ? and paramname = ?", G_FINR, imodule, user, paraname).OrderBy("sid").Find(&datalst); err != nil { return } for i = 0; i < len(datalst); i++ { datalst[i].Clipped() } return datalst, nil }