12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758596061626364656667686970717273747576777879808182 |
- package excel
- import (
- "eta/eta_api/utils"
- "github.com/beego/beego/v2/client/orm"
- "time"
- )
- type ExcelWorker struct {
- ExcelWorkerId int `orm:"column(excel_worker_id);pk"`
- ExcelInfoId int `description:"表格id"`
- SysUserId int `description:"创建人"`
- SysUserRealName string `description:"创建人姓名"`
- ModifyTime time.Time `description:"修改时间"`
- CreateTime time.Time `description:"创建时间"`
- }
- func (e *ExcelWorker) TableName() string {
- return "excel_worker"
- }
- // 新增 协作人
- func (e *ExcelWorker) AddWorker(excelInfoId int, addWorkers []*ExcelWorker, notDeleteWorkers []string) (err error) {
- o, err := orm.NewOrmUsingDB("data").Begin()
- if err != nil {
- return
- }
- defer func() {
- if err != nil {
- _ = o.Rollback()
- } else {
- _ = o.Commit()
- }
- }()
- if len(notDeleteWorkers) > 0 {
- sql := `delete from excel_worker where excel_info_id = ? and sys_user_id not in (` + utils.GetOrmInReplace(len(notDeleteWorkers)) + `)`
- _, err = o.Raw(sql, excelInfoId, notDeleteWorkers).Exec()
- if err != nil {
- return
- }
- } else if len(notDeleteWorkers) == 0 { // 清空协作人
- sql := `delete from excel_worker where excel_info_id = ? `
- _, err = o.Raw(sql, excelInfoId).Exec()
- if err != nil {
- return
- }
- }
- if len(addWorkers) > 0 {
- _, err = o.InsertMulti(len(addWorkers), addWorkers)
- }
- return
- }
- // 修改
- func (e *ExcelWorker) Update(cols []string) (err error) {
- o := orm.NewOrmUsingDB("data")
- _, err = o.Update(e, cols...)
- return
- }
- // 删除
- func (e *ExcelWorker) Delete() (err error) {
- o := orm.NewOrmUsingDB("data")
- _, err = o.Delete(e)
- return
- }
- // 查询
- func (e *ExcelWorker) GetByExcelInfoId(excelInfoId int) (items []*ExcelWorker, err error) {
- o := orm.NewOrmUsingDB("data")
- sql := `select * from excel_worker where excel_info_id = ? `
- _, err = o.Raw(sql, excelInfoId).QueryRows(&items)
- return
- }
- // 查询
- func (e *ExcelWorker) GetBySysUserId(sysUserId int) (items []*ExcelWorker, err error) {
- o := orm.NewOrmUsingDB("data")
- sql := `select * from excel_worker where sys_user_id = ? `
- _, err = o.Raw(sql, sysUserId).QueryRows(&items)
- return
- }
|