dict.go 5.4 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211
  1. package handler
  2. import (
  3. "context"
  4. "dashoo.cn/common_definition/comm_def"
  5. "dashoo.cn/micro/app/model"
  6. "dashoo.cn/micro/app/service"
  7. "dashoo.cn/opms_libary/myerrors"
  8. "github.com/gogf/gf/frame/g"
  9. "github.com/gogf/gf/util/gvalid"
  10. )
  11. type DictHandler struct{}
  12. // GetDictTypeList 分页查询字典分类列表信息
  13. func (h *DictHandler) GetDictTypeList(ctx context.Context, req *model.ListSysDictTypeReq, rsp *comm_def.CommonMsg) error {
  14. // 参数校验
  15. dictService, err := service.NewDictTypeService(ctx)
  16. if flag, err, _, _ := myerrors.CheckError(err); flag {
  17. return err
  18. }
  19. total, list, err := dictService.GetList(req)
  20. _, err, rsp.Code, rsp.Msg = myerrors.CheckError(err)
  21. if err != nil {
  22. return err
  23. }
  24. rsp.Data = g.Map{"list": list, "total": total}
  25. return nil
  26. }
  27. // GetDictTypeEntity 根据id获取字典分类详情信息
  28. func (h *DictHandler) GetDictTypeEntity(ctx context.Context, req *comm_def.IdReq, rsp *comm_def.CommonMsg) error {
  29. // 参数校验
  30. if req.Id == 0 {
  31. return NoParamsErr
  32. }
  33. dictService, err := service.NewDictTypeService(ctx)
  34. if flag, err, _, _ := myerrors.CheckError(err); flag {
  35. return err
  36. }
  37. data, err := dictService.GetDictById(req.Id)
  38. _, err, rsp.Code, rsp.Msg = myerrors.CheckError(err)
  39. if err != nil {
  40. return err
  41. }
  42. rsp.Data = data
  43. return nil
  44. }
  45. // CreateDictType 添加字典分类
  46. func (h *DictHandler) CreateDictType(ctx context.Context, req *model.SysDictTypeAddReq, rsp *comm_def.CommonMsg) error {
  47. // 参数校验
  48. if err := gvalid.CheckStruct(ctx, req, nil); err != nil {
  49. return err
  50. }
  51. dictService, err := service.NewDictTypeService(ctx)
  52. if flag, err, _, _ := myerrors.CheckError(err); flag {
  53. return err
  54. }
  55. err = dictService.Create(req)
  56. _, err, rsp.Code, rsp.Msg = myerrors.CheckError(err)
  57. return err
  58. }
  59. // UpdateDictType 更新字典分类信息
  60. func (h *DictHandler) UpdateDictType(ctx context.Context, req *model.SysDictTypeEditReq, rsp *comm_def.CommonMsg) error {
  61. // 参数校验
  62. if err := gvalid.CheckStruct(ctx, req, nil); err != nil {
  63. return err
  64. }
  65. dictService, err := service.NewDictTypeService(ctx)
  66. if flag, err, _, _ := myerrors.CheckError(err); flag {
  67. return err
  68. }
  69. err = dictService.UpdateById(req)
  70. _, err, rsp.Code, rsp.Msg = myerrors.CheckError(err)
  71. return err
  72. }
  73. // DeleteDictTypeByIds 删除字典分类 支持批量删除
  74. func (h *DictHandler) DeleteDictTypeByIds(ctx context.Context, req *comm_def.IdsReq, rsp *comm_def.CommonMsg) error {
  75. // 参数校验
  76. if len(req.Ids) == 0 {
  77. return NoParamsErr
  78. }
  79. dictService, err := service.NewDictTypeService(ctx)
  80. if err != nil {
  81. return err
  82. }
  83. err = dictService.Delete(req.Ids)
  84. _, err, rsp.Code, rsp.Msg = myerrors.CheckError(err)
  85. return err
  86. }
  87. // 字典明细数据相关
  88. // GetDictDataList 分页查询字典明细列表信息
  89. func (h *DictHandler) GetDictDataList(ctx context.Context, req *model.SelectDictPageReq, rsp *comm_def.CommonMsg) error {
  90. dictService, err := service.NewDictDataService(ctx)
  91. if err != nil {
  92. return err
  93. }
  94. total, list, err := dictService.GetDictDataList(req)
  95. _, err, rsp.Code, rsp.Msg = myerrors.CheckError(err)
  96. if err != nil {
  97. return err
  98. }
  99. rsp.Data = g.Map{"list": list, "total": total}
  100. return nil
  101. }
  102. // GetDictDataEntity 根据id获取字典明细详情信息
  103. func (h *DictHandler) GetDictDataEntity(ctx context.Context, req *comm_def.IdReq, rsp *comm_def.CommonMsg) error {
  104. // 参数校验
  105. if req.Id == 0 {
  106. return NoParamsErr
  107. }
  108. dictService, err := service.NewDictDataService(ctx)
  109. if err != nil {
  110. return err
  111. }
  112. data, err := dictService.GetDictDataById(req.Id)
  113. _, err, rsp.Code, rsp.Msg = myerrors.CheckError(err)
  114. if err != nil {
  115. return err
  116. }
  117. rsp.Data = data
  118. return nil
  119. }
  120. // GetDictDataByType 根据字典类型获取字典项明细
  121. func (h *DictHandler) GetDictDataByType(ctx context.Context, req *model.GetDictReq, rsp *comm_def.CommonMsg) error {
  122. dictService, err := service.NewDictDataService(ctx)
  123. if err != nil {
  124. return err
  125. }
  126. list, err := dictService.GetDictWithDataByType(req)
  127. _, err, rsp.Code, rsp.Msg = myerrors.CheckError(err)
  128. if err != nil {
  129. return err
  130. }
  131. rsp.Data = list
  132. return nil
  133. }
  134. // CreateDictData 添加字典明细
  135. func (h *DictHandler) CreateDictData(ctx context.Context, req *model.DictDataAddReq, rsp *comm_def.CommonMsg) error {
  136. // 参数校验
  137. if err := gvalid.CheckStruct(ctx, req, nil); err != nil {
  138. return err
  139. }
  140. dictService, err := service.NewDictDataService(ctx)
  141. if err != nil {
  142. return err
  143. }
  144. _, err = dictService.Create(req)
  145. _, err, rsp.Code, rsp.Msg = myerrors.CheckError(err)
  146. if err != nil {
  147. return err
  148. }
  149. return nil
  150. }
  151. // UpdateDictData 更新字典明细信息
  152. func (h *DictHandler) UpdateDictData(ctx context.Context, req *model.EditDictDataReq, rsp *comm_def.CommonMsg) error {
  153. // 参数校验
  154. if err := gvalid.CheckStruct(ctx, req, nil); err != nil {
  155. return err
  156. }
  157. dictService, err := service.NewDictDataService(ctx)
  158. if err != nil {
  159. return err
  160. }
  161. err = dictService.UpdateByDict(req)
  162. _, err, rsp.Code, rsp.Msg = myerrors.CheckError(err)
  163. if err != nil {
  164. return err
  165. }
  166. return nil
  167. }
  168. // DeleteDictDataByIds 删除字典明细 支持批量删除
  169. func (h *DictHandler) DeleteDictDataByIds(ctx context.Context, req *comm_def.IdsReq, rsp *comm_def.CommonMsg) error {
  170. // 参数验证
  171. if len(req.Ids) == 0 {
  172. return NoParamsErr
  173. }
  174. dictService, err := service.NewDictDataService(ctx)
  175. if err != nil {
  176. return err
  177. }
  178. err = dictService.DeleteDictDataByIds(req.Ids)
  179. _, err, rsp.Code, rsp.Msg = myerrors.CheckError(err)
  180. if err != nil {
  181. return err
  182. }
  183. return nil
  184. }