business_apply.go 5.2 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149
  1. package business_trip
  2. import (
  3. "github.com/beego/beego/v2/client/orm"
  4. "github.com/rdlucklib/rdluck_tools/paging"
  5. "time"
  6. )
  7. type BusinessApply struct {
  8. BusinessApplyId int `orm:"column(business_apply_id);pk;auto" description:"ID"`
  9. ApplyAdminId int `description:"申请人id"`
  10. ApplyRealName string `description:"申请人姓名"`
  11. ArriveDate string `description:"到达日期"`
  12. ReturnDate string `description:"返程日期"`
  13. Province string `description:"目的地省"`
  14. City string `description:"目的地市"`
  15. Reason string `description:"出差事由"`
  16. Transportation string `description:"交通工具"`
  17. PeerPeopleId string `description:"同行人id"`
  18. PeerPeopleName string `description:"同行人"`
  19. Status string `description:"状态:'待审批','已审批','已驳回','已撤回','已过期'"`
  20. ApproveId int `description:"审批人id"`
  21. ApproveName string `description:"审批人姓名"`
  22. RefuseReason string `description:"拒绝理由"`
  23. RefuseTime time.Time `description:"拒绝时间"`
  24. ApproveTime time.Time `description:"审批时间"`
  25. CreateTime time.Time `description:"创建时间"`
  26. ModifyTime time.Time `description:"修改时间"`
  27. }
  28. // 添加出差申请
  29. func AddBusinessApply(item *BusinessApply) (applyId int64, err error) {
  30. o := orm.NewOrm()
  31. applyId, err = o.Insert(item)
  32. if err != nil {
  33. return
  34. }
  35. return
  36. }
  37. type BusinessApplyReq struct {
  38. ArriveDate string `description:"到达日期"`
  39. ReturnDate string `description:"返程日期"`
  40. Province string `description:"目的地省"`
  41. City string `description:"目的地市"`
  42. Reason string `description:"出差事由"`
  43. Transportation string `description:"交通工具"`
  44. PeerPeopleId string `description:"同行人id"`
  45. PeerPeopleName string `description:"同行人"`
  46. }
  47. type BusinessApplyView struct {
  48. BusinessApplyId int `description:"出差申请id"`
  49. ApplyAdminId int `description:"申请人id"`
  50. ApplyRealName string `description:"申请人姓名"`
  51. ArriveDate string `description:"到达日期"`
  52. ReturnDate string `description:"返程日期"`
  53. Province string `description:"目的地省"`
  54. City string `description:"目的地市"`
  55. Reason string `description:"出差事由"`
  56. Transportation string `description:"交通工具"`
  57. PeerPeopleId string `description:"同行人id"`
  58. PeerPeopleName string `description:"同行人"`
  59. Status string `description:"状态:'待审批','已审批','已驳回','已撤回','已过期'"`
  60. ApproveId int `description:"审批人id"`
  61. ApproveName string `description:"审批人姓名"`
  62. RefuseReason string `description:"拒绝理由"`
  63. RefuseTime string `description:"拒绝时间"`
  64. ApproveTime string `description:"审批时间"`
  65. CreateTime string `description:"创建时间"`
  66. ModifyTime string `description:"修改时间"`
  67. IsApprove bool `description:"是否审批人,true:是,false:否"`
  68. }
  69. func GetBusinessApplyListCount(condition string, pars []interface{}) (count int, err error) {
  70. o := orm.NewOrm()
  71. sql := `SELECT COUNT(1) AS count FROM business_apply AS a WHERE 1=1 `
  72. if condition != "" {
  73. sql += condition
  74. }
  75. err = o.Raw(sql, pars).QueryRow(&count)
  76. return
  77. }
  78. func GetBusinessApplyList(condition string, pars []interface{}, startSize, pageSize int) (list []*BusinessApplyView, err error) {
  79. o := orm.NewOrm()
  80. sql := `SELECT * FROM business_apply AS a WHERE 1=1 `
  81. if condition != "" {
  82. sql += condition
  83. }
  84. sql += ` ORDER BY a.create_time ASC LIMIT ?,? `
  85. _, err = o.Raw(sql, pars, startSize, pageSize).QueryRows(&list)
  86. return
  87. }
  88. type BusinessApplyListResp struct {
  89. Paging *paging.PagingItem
  90. List []*BusinessApplyView
  91. }
  92. type BusinessApplyDeleteReq struct {
  93. BusinessApplyId int `description:"出差申请id"`
  94. }
  95. func GetBusinessApplyById(businessApplyId int) (item *BusinessApplyView, err error) {
  96. o := orm.NewOrm()
  97. sql := `SELECT * FROM business_apply WHERE business_apply_id=? `
  98. err = o.Raw(sql, businessApplyId).QueryRow(&item)
  99. return
  100. }
  101. // 删除
  102. func DeleteBusinessApply(businessApplyId int) (err error) {
  103. o := orm.NewOrm()
  104. sql := ` DELETE FROM business_apply WHERE business_apply_id=? `
  105. _, err = o.Raw(sql, businessApplyId).Exec()
  106. if err != nil {
  107. return err
  108. }
  109. return err
  110. }
  111. type BusinessApplyBackReq struct {
  112. BusinessApplyId int `description:"出差申请id"`
  113. }
  114. // 更新
  115. func UpdateBusinessApply(where, updateParams map[string]interface{}) error {
  116. o := orm.NewOrm()
  117. ptrStructOrTableName := "business_apply"
  118. qs := o.QueryTable(ptrStructOrTableName)
  119. for expr, exprV := range where {
  120. qs = qs.Filter(expr, exprV)
  121. }
  122. _, err := qs.Update(updateParams)
  123. return err
  124. }
  125. type BusinessApplyEditReq struct {
  126. BusinessApplyId int `description:"出差申请id"`
  127. ArriveDate string `description:"到达日期"`
  128. ReturnDate string `description:"返程日期"`
  129. Province string `description:"目的地省"`
  130. City string `description:"目的地市"`
  131. Reason string `description:"出差事由"`
  132. Transportation string `description:"交通工具"`
  133. PeerPeopleId string `description:"同行人id"`
  134. PeerPeopleName string `description:"同行人"`
  135. }