manage.go 2.7 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103
  1. package survey_mechanism
  2. import (
  3. "surveyService/response"
  4. "surveyService/service/survey_mechanism"
  5. "github.com/gin-gonic/gin"
  6. )
  7. // 开始创建问卷授权
  8. func CreateForManage(c *gin.Context) {
  9. type Validator struct {
  10. SurveyId string `json:"surveyId" form:"surveyId" binding:"required"`
  11. MechanismIds []string `json:"mechanismIds" form:"mechanismIds" binding:"required"`
  12. }
  13. var validator Validator
  14. validateErr := c.ShouldBind(&validator)
  15. if validateErr != nil {
  16. response.FailValidator(c, validateErr)
  17. return
  18. }
  19. err := survey_mechanism.Create(validator.SurveyId, validator.MechanismIds)
  20. if err != nil {
  21. response.Fail(c, err)
  22. return
  23. }
  24. response.Success(c, map[string]any{})
  25. }
  26. // 获取某个问卷已被授权的机构列表
  27. func ListMechanismIdsForSurveyForManage(c *gin.Context) {
  28. type Validator struct {
  29. SurveyId string `json:"surveyId" form:"surveyId" binding:"required"`
  30. }
  31. var validator Validator
  32. validateErr := c.ShouldBindQuery(&validator)
  33. if validateErr != nil {
  34. response.FailValidator(c, validateErr)
  35. return
  36. }
  37. mechanismIds, err := survey_mechanism.ListMechanismIdsForSurvey(validator.SurveyId)
  38. if err != nil {
  39. response.Fail(c, err)
  40. return
  41. }
  42. response.Success(c, map[string]any{
  43. "list": mechanismIds,
  44. })
  45. }
  46. // 获取授权列表
  47. func PaginateForManage(c *gin.Context) {
  48. type Validator struct {
  49. Page int `json:"page" form:"page" binding:"omitempty,min=1"`
  50. PageSize int `json:"pageSize" form:"pageSize" binding:"omitempty,min=1"`
  51. Key string `json:"key" form:"key" binding:"omitempty"`
  52. MechanismId string `json:"mechanismId" form:"mechanismId" binding:"omitempty"`
  53. SurveyId string `json:"surveyId" form:"surveyId" binding:"omitempty"`
  54. }
  55. var validator Validator
  56. validateErr := c.ShouldBindQuery(&validator)
  57. if validateErr != nil {
  58. response.FailValidator(c, validateErr)
  59. return
  60. }
  61. surveyMechanisms, total, err := survey_mechanism.Paginate(validator.Page, validator.PageSize, validator.Key, validator.MechanismId, validator.SurveyId)
  62. if err != nil {
  63. response.Fail(c, err)
  64. return
  65. }
  66. response.Success(c, map[string]any{
  67. "list": survey_mechanism.ListFormat(surveyMechanisms),
  68. "total": total,
  69. })
  70. }
  71. // 修改授权状态
  72. func UpdateAuthorizeStatusForManage(c *gin.Context) {
  73. type Validator struct {
  74. ID string `json:"id" form:"id" binding:"required"`
  75. Status int `json:"status" form:"status" binding:"required"`
  76. }
  77. var validator Validator
  78. validateErr := c.ShouldBind(&validator)
  79. if validateErr != nil {
  80. response.FailValidator(c, validateErr)
  81. return
  82. }
  83. err := survey_mechanism.UpdateAuthorizeStatus(validator.ID, validator.Status)
  84. if err != nil {
  85. response.Fail(c, err)
  86. return
  87. }
  88. response.Success(c, map[string]any{})
  89. }