plat_tablecols_config.go 1.6 KB

12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455
  1. package plat
  2. import (
  3. "context"
  4. "database/sql"
  5. "github.com/gogf/gf/util/gconv"
  6. "dashoo.cn/micro/app/dao/plat"
  7. model "dashoo.cn/micro/app/model/plat"
  8. "dashoo.cn/micro/app/service"
  9. )
  10. type TableColsConfigService struct {
  11. *service.ContextService
  12. Dao *plat.PlatTablecolsConfigDao
  13. }
  14. func NewTableColsConfigService(ctx context.Context) (svc *TableColsConfigService, err error) {
  15. svc = new(TableColsConfigService)
  16. if svc.ContextService, err = svc.Init(ctx); err != nil {
  17. return nil, err
  18. }
  19. svc.Dao = plat.NewPlatTablecolsConfigDao(svc.Tenant)
  20. return svc, nil
  21. }
  22. func (s *TableColsConfigService) GetEntityByTable(req *model.SearchPlatTablecolsConfigReq) (config *model.PlatTablecolsConfig, err error) {
  23. config, err = s.Dao.Where(s.Dao.C.UserId, s.GetCxtUserId()).Where(s.Dao.C.Table, req.Table).OrderDesc(s.Dao.C.Id).One()
  24. return
  25. }
  26. func (s *TableColsConfigService) Save(req *model.PlatTablecolsConfigReq) (lastId int64, err error) {
  27. config := new(model.PlatTablecolsConfig)
  28. if err = gconv.Struct(req, config); err != nil {
  29. return
  30. }
  31. config.UserId = s.GetCxtUserId()
  32. // 填充创建信息
  33. service.SetCreatedInfo(config, s.GetCxtUserId(), s.GetCxtUserName())
  34. // 填充更新信息
  35. service.SetUpdatedInfo(config, s.GetCxtUserId(), s.GetCxtUserName())
  36. var result sql.Result
  37. if config.Id != 0 {
  38. updateFieldEx := append(service.UpdateFieldEx, s.Dao.C.UserId)
  39. result, err = s.Dao.FieldsEx(updateFieldEx...).WherePri(config.Id).Data(config).Update()
  40. } else {
  41. result, err = s.Dao.Data(config).Insert()
  42. }
  43. if err != nil {
  44. return
  45. }
  46. lastId, _ = result.LastInsertId()
  47. return
  48. }