excel_worker.go 2.9 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111
  1. package excel
  2. import (
  3. "eta_gn/eta_api/global"
  4. "eta_gn/eta_api/utils"
  5. "time"
  6. )
  7. type ExcelWorker struct {
  8. ExcelWorkerId int `orm:"column(excel_worker_id);pk" gorm:"primaryKey" `
  9. ExcelInfoId int `description:"表格id"`
  10. SysUserId int `description:"创建人"`
  11. SysUserRealName string `description:"创建人姓名"`
  12. ModifyTime time.Time `description:"修改时间"`
  13. CreateTime time.Time `description:"创建时间"`
  14. }
  15. func (e *ExcelWorker) TableName() string {
  16. return "excel_worker"
  17. }
  18. // 新增 协作人
  19. func (e *ExcelWorker) AddWorker(excelInfoId int, addWorkers []*ExcelWorker, notDeleteWorkers []string) (err error) {
  20. //o, err := orm.NewOrmUsingDB("data").Begin()
  21. //if err != nil {
  22. // return
  23. //}
  24. //defer func() {
  25. // if err != nil {
  26. // _ = o.Rollback()
  27. // } else {
  28. // _ = o.Commit()
  29. // }
  30. //}()
  31. to := global.DmSQL["data"].Begin()
  32. defer func() {
  33. if err != nil {
  34. _ = to.Rollback()
  35. } else {
  36. _ = to.Commit()
  37. }
  38. }()
  39. if len(notDeleteWorkers) > 0 {
  40. sql := `delete from excel_worker where excel_info_id = ? and sys_user_id not in (` + utils.GetOrmInReplace(len(notDeleteWorkers)) + `)`
  41. err = to.Exec(sql, excelInfoId, notDeleteWorkers).Error
  42. if err != nil {
  43. return
  44. }
  45. } else if len(notDeleteWorkers) == 0 { // 清空协作人
  46. //sql := `delete from excel_worker where excel_info_id = ? `
  47. //_, err = o.Raw(sql, excelInfoId).Exec()
  48. //if err != nil {
  49. // return
  50. //}
  51. sql := `delete from excel_worker where excel_info_id = ? `
  52. err = to.Exec(sql, excelInfoId).Error
  53. if err != nil {
  54. return
  55. }
  56. }
  57. if len(addWorkers) > 0 {
  58. //_, err = o.InsertMulti(len(addWorkers), addWorkers)
  59. err = to.CreateInBatches(addWorkers, utils.MultiAddNum).Error
  60. }
  61. return
  62. }
  63. // 修改
  64. func (e *ExcelWorker) Update(cols []string) (err error) {
  65. //o := orm.NewOrmUsingDB("data")
  66. //_, err = o.Update(e, cols...)
  67. err = global.DmSQL["data"].Select(cols).Updates(e).Error
  68. return
  69. }
  70. // 删除
  71. func (e *ExcelWorker) Delete() (err error) {
  72. //o := orm.NewOrmUsingDB("data")
  73. //_, err = o.Delete(e)
  74. sql := ` DELETE FROM excel_worker WHERE excel_worker_id=? `
  75. err = global.DmSQL["data"].Exec(sql, e.ExcelWorkerId).Error
  76. return
  77. }
  78. // 查询
  79. func (e *ExcelWorker) GetByExcelInfoId(excelInfoId int) (items []*ExcelWorker, err error) {
  80. //o := orm.NewOrmUsingDB("data")
  81. //sql := `select * from excel_worker where excel_info_id = ? `
  82. //_, err = o.Raw(sql, excelInfoId).QueryRows(&items)
  83. sql := `select * from excel_worker where excel_info_id = ? `
  84. err = global.DmSQL["data"].Raw(sql, excelInfoId).Find(&items).Error
  85. return
  86. }
  87. // 查询
  88. func (e *ExcelWorker) GetBySysUserId(sysUserId int) (items []*ExcelWorker, err error) {
  89. //o := orm.NewOrmUsingDB("data")
  90. //sql := `select * from excel_worker where sys_user_id = ? `
  91. //_, err = o.Raw(sql, sysUserId).QueryRows(&items)
  92. sql := `select * from excel_worker where sys_user_id = ? `
  93. err = global.DmSQL["data"].Raw(sql, sysUserId).Find(&items).Error
  94. return
  95. }