wf_news.go 3.0 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112
  1. // ==========================================================================
  2. // 生成日期:2020-09-17 10:13:16
  3. // 生成人:gfast
  4. // ==========================================================================
  5. package admin
  6. import (
  7. wfNewsModel "gfast/app/model/admin/wf_news"
  8. wfNewsService "gfast/app/service/admin/flow_news_service"
  9. "gfast/app/service/admin/user_service"
  10. "gfast/app/service/common/work_flow_service"
  11. "gfast/library/response"
  12. "github.com/gogf/gf/frame/g"
  13. "github.com/gogf/gf/net/ghttp"
  14. "github.com/gogf/gf/util/gvalid"
  15. )
  16. //控制器
  17. type WfNews struct{}
  18. //列表页
  19. func (c *WfNews) List(r *ghttp.Request) {
  20. // 定义一个结构体存储请求参数
  21. var req *wfNewsModel.SelectPageReq
  22. // 获取参数
  23. err := r.Parse(&req)
  24. if err != nil {
  25. response.FailJson(true, r, err.(*gvalid.Error).FirstString())
  26. }
  27. userInfo := user_service.GetLoginAdminInfo(r)
  28. total, page, list, err := wfNewsService.SelectListByPage(req, userInfo.Id, userInfo.DeptId)
  29. if err != nil {
  30. response.FailJson(true, r, err.Error())
  31. }
  32. result := g.Map{
  33. "currentPage": page,
  34. "total": total,
  35. "list": list,
  36. }
  37. response.SusJson(true, r, "获取列表数据成功", result)
  38. }
  39. // 新增
  40. func (c *WfNews) Add(r *ghttp.Request) {
  41. if r.Method == "POST" {
  42. var req *wfNewsModel.AddReq
  43. // 通过Parse方法解析获取参数
  44. err := r.Parse(&req)
  45. if err != nil {
  46. response.FailJson(true, r, err.(*gvalid.Error).FirstString())
  47. }
  48. req.Uid = user_service.GetLoginID(r)
  49. // 调用service中的添加函数添加
  50. err = wfNewsService.AddSave(req)
  51. if err != nil {
  52. response.FailJson(true, r, err.Error())
  53. }
  54. response.SusJson(true, r, "添加成功")
  55. }
  56. }
  57. // 修改
  58. func (c *WfNews) Edit(r *ghttp.Request) {
  59. // 如果是post提交的请求就执行修改操作
  60. if r.Method == "POST" {
  61. var editReq *wfNewsModel.EditReq
  62. // 通过Parse方法解析获取参数
  63. err := r.Parse(&editReq)
  64. if err != nil {
  65. response.FailJson(true, r, err.(*gvalid.Error).FirstString())
  66. }
  67. err = wfNewsService.EditSave(editReq)
  68. if err != nil {
  69. response.FailJson(true, r, err.Error())
  70. }
  71. response.SusJson(true, r, "修改参数成功")
  72. }
  73. // 不是post提交的请求就到修改页面后查询出要修改的记录
  74. id := r.GetInt("id")
  75. params, err := wfNewsService.GetByID(int64(id))
  76. if err != nil {
  77. response.FailJson(true, r, err.Error())
  78. }
  79. response.SusJson(true, r, "ok", params)
  80. }
  81. // 删除
  82. func (c *WfNews) Delete(r *ghttp.Request) {
  83. var req *wfNewsModel.RemoveReq
  84. //获取参数
  85. if err := r.Parse(&req); err != nil {
  86. response.FailJson(true, r, err.(*gvalid.Error).FirstString())
  87. }
  88. err := wfNewsService.DeleteByIds(req.Ids)
  89. if err != nil {
  90. response.FailJson(true, r, "删除失败")
  91. }
  92. response.SusJson(true, r, "删除成功")
  93. }
  94. //审批日志
  95. func (c *WfNews) CheckLog(r *ghttp.Request) {
  96. id := r.GetUint("id")
  97. wfType := r.GetString("wf_type")
  98. //获取流程审批日志信息
  99. flowLogs, err := work_flow_service.FlowLog("logs", id, wfType)
  100. if err != nil {
  101. response.FailJson(true, r, err.Error())
  102. }
  103. response.SusJson(true, r, "ok", flowLogs)
  104. }