company_service_record.go 4.9 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155
  1. package company
  2. import (
  3. "fmt"
  4. "github.com/beego/beego/v2/client/orm"
  5. "github.com/rdlucklib/rdluck_tools/paging"
  6. "strings"
  7. "time"
  8. )
  9. // CompanyServiceRecord 客户-服务记录表
  10. type CompanyServiceRecord struct {
  11. CompanyServiceRecordId int `orm:"column(company_service_record_id);pk" description:"服务记录ID"`
  12. CompanyId int `description:"客户ID"`
  13. Content string `description:"内容"`
  14. SysAdminId int `description:"创建人ID"`
  15. SysAdminName string `description:"创建人姓名"`
  16. CreateTime time.Time `description:"创建时间"`
  17. ModifyTime time.Time `description:"修改时间"`
  18. Mark int `description:"是否标记 0不是 1是"`
  19. }
  20. var CompanyServiceRecordColumns = struct {
  21. CompanyServiceRecordId string
  22. CompanyId string
  23. Content string
  24. SysAdminId string
  25. SysAdminName string
  26. CreateTime string
  27. ModifyTime string
  28. }{
  29. CompanyServiceRecordId: "company_service_record_id",
  30. CompanyId: "company_id",
  31. Content: "content",
  32. SysAdminId: "sys_admin_id",
  33. SysAdminName: "sys_admin_name",
  34. CreateTime: "create_time",
  35. ModifyTime: "modify_time",
  36. }
  37. func (m *CompanyServiceRecord) TableName() string {
  38. return "company_service_record"
  39. }
  40. func (m *CompanyServiceRecord) Create() (err error) {
  41. o := orm.NewOrm()
  42. id, err := o.Insert(m)
  43. if err != nil {
  44. return
  45. }
  46. m.CompanyServiceRecordId = int(id)
  47. return
  48. }
  49. func (m *CompanyServiceRecord) Update(cols []string) (err error) {
  50. o := orm.NewOrm()
  51. _, err = o.Update(m, cols...)
  52. return
  53. }
  54. func (m *CompanyServiceRecord) Del() (err error) {
  55. o := orm.NewOrm()
  56. sql := `DELETE FROM company_service_record WHERE company_service_record_id = ? LIMIT 1`
  57. _, err = o.Raw(sql, m.CompanyServiceRecordId).Exec()
  58. return
  59. }
  60. func (m *CompanyServiceRecord) GetItemById(id int) (err error) {
  61. o := orm.NewOrm()
  62. sql := `SELECT * FROM company_service_record WHERE company_service_record_id = ? LIMIT 1`
  63. err = o.Raw(sql, id).QueryRow(&m)
  64. return
  65. }
  66. func (m *CompanyServiceRecord) GetItemByCondition(condition string, pars []interface{}) (err error) {
  67. o := orm.NewOrm()
  68. sql := `SELECT * FROM company_service_record WHERE 1=1 `
  69. sql += condition
  70. sql += ` LIMIT 1`
  71. err = o.Raw(sql, pars).QueryRow(&m)
  72. return
  73. }
  74. func (m *CompanyServiceRecord) GetCountByCondition(condition string, pars []interface{}) (count int, err error) {
  75. o := orm.NewOrm()
  76. sql := fmt.Sprintf(`SELECT COUNT(1) FROM %s WHERE 1=1 %s`, m.TableName(), condition)
  77. err = o.Raw(sql, pars).QueryRow(&count)
  78. return
  79. }
  80. func (m *CompanyServiceRecord) GetItemsByCondition(condition string, pars []interface{}, fieldArr []string, orderRule string) (items []*CompanyServiceRecord, err error) {
  81. o := orm.NewOrm()
  82. fields := strings.Join(fieldArr, ",")
  83. if len(fieldArr) == 0 {
  84. fields = `*`
  85. }
  86. order := `ORDER BY create_time DESC`
  87. if orderRule != "" {
  88. order = ` ORDER BY ` + orderRule
  89. }
  90. sql := fmt.Sprintf(`SELECT %s FROM %s WHERE 1=1 %s %s`, fields, m.TableName(), condition, order)
  91. _, err = o.Raw(sql, pars).QueryRows(&items)
  92. return
  93. }
  94. func (m *CompanyServiceRecord) GetPageItemsByCondition(startSize, pageSize int, condition string, pars []interface{}, fieldArr []string, orderRule string) (total int, items []*CompanyServiceRecord, err error) {
  95. o := orm.NewOrm()
  96. fields := strings.Join(fieldArr, ",")
  97. if len(fieldArr) == 0 {
  98. fields = `*`
  99. }
  100. order := `ORDER BY create_time DESC`
  101. if orderRule != "" {
  102. order = ` ORDER BY ` + orderRule
  103. }
  104. sql := fmt.Sprintf(`SELECT %s FROM %s WHERE 1=1 %s %s`, fields, m.TableName(), condition, order)
  105. totalSql := `SELECT COUNT(1) total FROM (` + sql + `) z`
  106. if err = o.Raw(totalSql, pars).QueryRow(&total); err != nil {
  107. return
  108. }
  109. sql += ` LIMIT ?,?`
  110. _, err = o.Raw(sql, pars, startSize, pageSize).QueryRows(&items)
  111. return
  112. }
  113. type CompanyServiceRecordAddReq struct {
  114. CompanyId int `description:"客户ID"`
  115. Content string `description:"内容"`
  116. }
  117. type CompanyServiceRecordDelReq struct {
  118. CompanyServiceRecordId int `description:"服务记录ID"`
  119. }
  120. type CompanyServiceRecordPageListResp struct {
  121. List []*CompanyServiceRecordItem
  122. Paging *paging.PagingItem `description:"分页数据"`
  123. }
  124. type CompanyServiceRecordItem struct {
  125. CompanyServiceRecordId int `description:"文档ID"`
  126. Content string `description:"服务描述"`
  127. SysAdminId int `description:"创建人ID"`
  128. SysAdminName string `description:"创建人姓名"`
  129. CreateTime string `description:"创建时间"`
  130. Mark int `description:"是否标记 0不是 1是"`
  131. }
  132. // 更新备注标记
  133. func UpdateCompanyServiceRecordMark(remarkId, mark int) (err error) {
  134. o := orm.NewOrm()
  135. sql := `UPDATE company_service_record SET mark=? WHERE company_service_record_id=? `
  136. _, err = o.Raw(sql, mark, remarkId).Exec()
  137. return
  138. }