report_approve_message.go 6.0 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185
  1. package report_approve
  2. import (
  3. "eta/eta_api/utils"
  4. "fmt"
  5. "github.com/beego/beego/v2/client/orm"
  6. "strings"
  7. "time"
  8. )
  9. // ReportApproveMessage 报告审批消息表
  10. type ReportApproveMessage struct {
  11. Id int `orm:"column(id);pk"`
  12. SendUserId int `description:"发送人ID"`
  13. ReceiveUserId int `description:"接收者ID"`
  14. Content string `description:"消息内容"`
  15. Remark string `description:"备注信息"`
  16. ReportApproveId int `description:"审批ID"`
  17. ApproveState int `description:"审批状态:1-待审批;2-已审批;3-已驳回;4-已撤回"`
  18. IsRead int `description:"是否已读:0-未读;1-已读"`
  19. CreateTime time.Time `description:"创建时间"`
  20. ModifyTime time.Time `description:"修改时间"`
  21. }
  22. var ReportApproveMessageCols = struct {
  23. Id string
  24. SendUserId string
  25. ReceiveUserId string
  26. Content string
  27. Remark string
  28. ReportApproveId string
  29. ApproveState string
  30. IsRead string
  31. CreateTime string
  32. ModifyTime string
  33. }{
  34. Id: "id",
  35. SendUserId: "send_user_id",
  36. ReceiveUserId: "receive_user_id",
  37. Content: "content",
  38. Remark: "remark",
  39. ReportApproveId: "report_approve_id",
  40. ApproveState: "approve_state",
  41. IsRead: "is_read",
  42. CreateTime: "create_time",
  43. ModifyTime: "modify_time",
  44. }
  45. func (m *ReportApproveMessage) TableName() string {
  46. return "report_approve_message"
  47. }
  48. func (m *ReportApproveMessage) PrimaryId() string {
  49. return ReportApproveMessageCols.Id
  50. }
  51. func (m *ReportApproveMessage) Create() (err error) {
  52. o := orm.NewOrmUsingDB("rddp")
  53. id, err := o.Insert(m)
  54. if err != nil {
  55. return
  56. }
  57. m.Id = int(id)
  58. return
  59. }
  60. func (m *ReportApproveMessage) CreateMulti(items []*ReportApproveMessage) (err error) {
  61. if len(items) == 0 {
  62. return
  63. }
  64. o := orm.NewOrmUsingDB("rddp")
  65. _, err = o.InsertMulti(len(items), items)
  66. return
  67. }
  68. func (m *ReportApproveMessage) Update(cols []string) (err error) {
  69. o := orm.NewOrmUsingDB("rddp")
  70. _, err = o.Update(m, cols...)
  71. return
  72. }
  73. func (m *ReportApproveMessage) Del() (err error) {
  74. o := orm.NewOrmUsingDB("rddp")
  75. sql := fmt.Sprintf(`DELETE FROM %s WHERE %s = ? LIMIT 1`, m.TableName(), m.PrimaryId())
  76. _, err = o.Raw(sql, m.Id).Exec()
  77. return
  78. }
  79. func (m *ReportApproveMessage) MultiDel(menuIds []int) (err error) {
  80. if len(menuIds) == 0 {
  81. return
  82. }
  83. o := orm.NewOrmUsingDB("rddp")
  84. sql := fmt.Sprintf(`DELETE FROM %s WHERE %s IN (%s)`, m.TableName(), m.PrimaryId(), utils.GetOrmInReplace(len(menuIds)))
  85. _, err = o.Raw(sql, menuIds).Exec()
  86. return
  87. }
  88. func (m *ReportApproveMessage) GetItemById(id int) (item *ReportApproveMessage, err error) {
  89. o := orm.NewOrmUsingDB("rddp")
  90. sql := fmt.Sprintf(`SELECT * FROM %s WHERE %s = ? LIMIT 1`, m.TableName(), m.PrimaryId())
  91. err = o.Raw(sql, id).QueryRow(&item)
  92. return
  93. }
  94. func (m *ReportApproveMessage) GetItemByCondition(condition string, pars []interface{}, orderRule string) (item *ReportApproveMessage, err error) {
  95. o := orm.NewOrmUsingDB("rddp")
  96. order := ``
  97. if orderRule != "" {
  98. order = ` ORDER BY ` + orderRule
  99. }
  100. sql := fmt.Sprintf(`SELECT * FROM %s WHERE 1=1 %s %s LIMIT 1`, m.TableName(), condition, order)
  101. err = o.Raw(sql, pars).QueryRow(&item)
  102. return
  103. }
  104. func (m *ReportApproveMessage) GetCountByCondition(condition string, pars []interface{}) (count int, err error) {
  105. o := orm.NewOrmUsingDB("rddp")
  106. sql := fmt.Sprintf(`SELECT COUNT(1) FROM %s WHERE 1=1 %s`, m.TableName(), condition)
  107. err = o.Raw(sql, pars).QueryRow(&count)
  108. return
  109. }
  110. func (m *ReportApproveMessage) GetItemsByCondition(condition string, pars []interface{}, fieldArr []string, orderRule string) (items []*ReportApproveMessage, err error) {
  111. o := orm.NewOrmUsingDB("rddp")
  112. fields := strings.Join(fieldArr, ",")
  113. if len(fieldArr) == 0 {
  114. fields = `*`
  115. }
  116. order := `ORDER BY create_time DESC`
  117. if orderRule != "" {
  118. order = ` ORDER BY ` + orderRule
  119. }
  120. sql := fmt.Sprintf(`SELECT %s FROM %s WHERE 1=1 %s %s`, fields, m.TableName(), condition, order)
  121. _, err = o.Raw(sql, pars).QueryRows(&items)
  122. return
  123. }
  124. func (m *ReportApproveMessage) GetPageItemsByCondition(condition string, pars []interface{}, fieldArr []string, orderRule string, startSize, pageSize int) (items []*ReportApproveMessage, err error) {
  125. o := orm.NewOrmUsingDB("rddp")
  126. fields := strings.Join(fieldArr, ",")
  127. if len(fieldArr) == 0 {
  128. fields = `*`
  129. }
  130. order := `ORDER BY create_time DESC`
  131. if orderRule != "" {
  132. order = ` ORDER BY ` + orderRule
  133. }
  134. sql := fmt.Sprintf(`SELECT %s FROM %s WHERE 1=1 %s %s LIMIT ?,?`, fields, m.TableName(), condition, order)
  135. _, err = o.Raw(sql, pars, startSize, pageSize).QueryRows(&items)
  136. return
  137. }
  138. // ReportApproveMessageItem 报告审批消息信息
  139. type ReportApproveMessageItem struct {
  140. Id int
  141. SendUserId int `description:"发送人ID"`
  142. ReceiveUserId int `description:"接收者ID"`
  143. Content string `description:"消息内容"`
  144. Remark string `description:"备注信息"`
  145. ReportApproveId int `description:"审批ID"`
  146. ApproveState int `description:"审批状态:1-待审批;2-已审批;3-已驳回;4-已撤回"`
  147. IsRead int `description:"是否已读:0-未读;1-已读"`
  148. CreateTime string `description:"创建时间"`
  149. ModifyTime string `description:"修改时间"`
  150. }
  151. // FormatReportApproveMessage2Item 格式化报告审批消息
  152. func FormatReportApproveMessage2Item(origin *ReportApproveMessage) (item *ReportApproveMessageItem) {
  153. item = new(ReportApproveMessageItem)
  154. if origin == nil {
  155. return
  156. }
  157. item.Id = origin.Id
  158. item.SendUserId = origin.SendUserId
  159. item.ReceiveUserId = origin.ReceiveUserId
  160. item.Content = origin.Content
  161. item.Remark = origin.Remark
  162. item.ReportApproveId = origin.ReportApproveId
  163. item.ApproveState = origin.ApproveState
  164. item.IsRead = origin.IsRead
  165. item.CreateTime = utils.TimeTransferString(utils.FormatDateTime, origin.CreateTime)
  166. item.ModifyTime = utils.TimeTransferString(utils.FormatDateTime, origin.ModifyTime)
  167. return
  168. }