procInstHistoryService.go 2.3 KB

12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758596061626364656667
  1. package service
  2. import (
  3. "errors"
  4. "github.com/go-workflow/go-workflow/workflow-engine/model"
  5. "github.com/mumushuiding/util"
  6. )
  7. // FindProcHistory 查询我的审批
  8. func FindProcHistory(receiver *ProcessPageReceiver) (string, error) {
  9. datas, count, err := findAllProcHistory(receiver)
  10. if err != nil {
  11. return "", err
  12. }
  13. return util.ToPageJSON(datas, count, receiver.PageIndex, receiver.PageSize)
  14. }
  15. // FindProcHistoryByToken 查询我的审批纪录
  16. func FindProcHistoryByToken(token string, receiver *ProcessPageReceiver) (string, error) {
  17. userinfo, err := GetUserinfoFromRedis(token)
  18. if err != nil {
  19. return "", err
  20. }
  21. if len(userinfo.Company) == 0 {
  22. return "", errors.New("保存在redis中的【用户信息 userinfo】字段 company 不能为空")
  23. }
  24. if len(userinfo.ID) == 0 {
  25. return "", errors.New("保存在redis中的【用户信息 userinfo】字段 ID 不能为空")
  26. }
  27. receiver.Company = userinfo.Company
  28. receiver.UserID = userinfo.ID
  29. // receiver.Username = userinfo.Username
  30. return FindProcHistory(receiver)
  31. }
  32. func findAllProcHistory(receiver *ProcessPageReceiver) ([]*model.ProcInstHistory, int, error) {
  33. var page = util.Page{}
  34. page.PageRequest(receiver.PageIndex, receiver.PageSize)
  35. return model.FindProcHistory(receiver.UserID, receiver.Company, receiver.PageIndex, receiver.PageSize)
  36. }
  37. // DelProcInstHistoryByID DelProcInstHistoryByID
  38. func DelProcInstHistoryByID(id int) error {
  39. return model.DelProcInstHistoryByID(id)
  40. }
  41. // StartHistoryByMyself 查询我发起的流程
  42. func StartHistoryByMyself(receiver *ProcessPageReceiver) (string, error) {
  43. var page = util.Page{}
  44. page.PageRequest(receiver.PageIndex, receiver.PageSize)
  45. datas, count, err := model.StartHistoryByMyself(receiver.UserID, receiver.Company, receiver.PageIndex, receiver.PageSize)
  46. if err != nil {
  47. return "", err
  48. }
  49. return util.ToPageJSON(datas, count, receiver.PageIndex, receiver.PageSize)
  50. }
  51. // FindProcHistoryNotify 查询抄送我的流程
  52. func FindProcHistoryNotify(receiver *ProcessPageReceiver) (string, error) {
  53. var page = util.Page{}
  54. page.PageRequest(receiver.PageIndex, receiver.PageSize)
  55. datas, count, err := model.FindProcHistoryNotify(receiver.UserID, receiver.Company, receiver.Groups, receiver.PageIndex, receiver.PageSize)
  56. if err != nil {
  57. return "", err
  58. }
  59. return util.ToPageJSON(datas, count, receiver.PageIndex, receiver.PageSize)
  60. }