dict.go 5.6 KB

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