companyhandler.go 3.1 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142
  1. // 模块控制接口-公司
  2. // 秒寻科技
  3. // zt 2024-02-01
  4. package companyhandler
  5. import (
  6. "ipsomc/core/company/companyapi"
  7. "ipsomc/core/company/companylogic"
  8. "ipsomc/core/company/companymodel"
  9. "ipsomc/core/dao/mysql/mysqlmodel"
  10. "ipsomc/core/gin/bind"
  11. "ipsomc/core/gin/resp"
  12. "github.com/gin-gonic/gin"
  13. )
  14. type CompanyHand struct {
  15. companyLgc companylogic.CompanyLgc
  16. companyApi companyapi.CompanyApi
  17. bindApi bind.BindApi
  18. }
  19. // 公司注册,包括注册公司资料、系统管理员和管理员角色
  20. func (obj *CompanyHand) CompanyRegisterHan(c *gin.Context) {
  21. dataModel := new(companymodel.Company)
  22. //把前端数据绑定到模型
  23. if err := obj.bindApi.Bind2Model(c, dataModel); err != nil {
  24. resp.RespFail(c, err.Error())
  25. return
  26. }
  27. //注册
  28. if err := obj.companyLgc.CompanyRegister(dataModel); err != nil {
  29. resp.RespFail(c, err.Error())
  30. return
  31. }
  32. //返回数据
  33. resp.RespOk(c)
  34. }
  35. // 新增公司
  36. func (obj *CompanyHand) AddCompanyHan(c *gin.Context) {
  37. dataModel := new(companymodel.Company)
  38. //把前端数据绑定到模型
  39. if err := obj.bindApi.Bind2Model(c, dataModel); err != nil {
  40. resp.RespFail(c, err.Error())
  41. return
  42. }
  43. //新增
  44. if err := obj.companyApi.AddCompany(dataModel); err != nil {
  45. resp.RespFail(c, err.Error())
  46. return
  47. }
  48. //返回数据
  49. resp.RespId(c, dataModel.ID)
  50. }
  51. // 修改
  52. func (obj *CompanyHand) UpdateCompanyHan(c *gin.Context) {
  53. dataModel := new(companymodel.Company)
  54. dataMap := make(map[string]interface{})
  55. //把前端数据绑定到模型
  56. if err := obj.bindApi.Bind2Map(c, dataModel, dataMap); err != nil {
  57. resp.RespFail(c, err.Error())
  58. return
  59. }
  60. //保存数据
  61. if err := obj.companyApi.UpdateCompany(dataModel, dataMap); err != nil {
  62. resp.RespFail(c, err.Error())
  63. return
  64. }
  65. //返回数据
  66. resp.RespOk(c)
  67. }
  68. // 删除
  69. func (obj *CompanyHand) DeleteCompanyHan(c *gin.Context) {
  70. dataModel := new(companymodel.Company)
  71. //把前端数据绑定到模型
  72. if err := obj.bindApi.Bind2Model(c, dataModel); err != nil {
  73. resp.RespFail(c, "数据解析错误")
  74. return
  75. }
  76. if err := obj.companyLgc.DeleteCompanyLgc(dataModel); err != nil {
  77. resp.RespFail(c, err.Error())
  78. return
  79. }
  80. //返回数据
  81. resp.RespOk(c)
  82. }
  83. // 查询单条记录
  84. func (obj *CompanyHand) GetCompanyByIdHan(c *gin.Context) {
  85. dataModel := new(companymodel.Company)
  86. //把前端数据绑定到模型
  87. if err := obj.bindApi.Bind2Model(c, dataModel); err != nil {
  88. resp.RespFail(c, "数据解析错误")
  89. return
  90. }
  91. if err := obj.companyApi.GetCompanyById(dataModel); err != nil {
  92. resp.RespFail(c, err.Error())
  93. return
  94. }
  95. //返回数据
  96. resp.RespData(c, dataModel)
  97. }
  98. // 分页查询
  99. func (obj *CompanyHand) GetCompanyPageListHan(c *gin.Context) {
  100. pageListParam := new(mysqlmodel.PageListParam)
  101. dataModel := new(companymodel.Company)
  102. dataList := []companymodel.Company{}
  103. //把前端数据绑定到模型
  104. if err := obj.bindApi.Bind2PageQuery(c, pageListParam); err != nil {
  105. resp.RespFail(c, "数据解析错误")
  106. return
  107. }
  108. pageListData, err := obj.companyApi.GetCompanyPageList(dataModel, pageListParam, &dataList)
  109. if err != nil {
  110. resp.RespFail(c, err.Error())
  111. return
  112. }
  113. resp.RespList(c, pageListData)
  114. }