InvoiceController.go 2.9 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105
  1. package api
  2. import (
  3. "encoding/json"
  4. "entity"
  5. "fmt"
  6. "github.com/gin-gonic/gin"
  7. "io/ioutil"
  8. "net/http"
  9. "service"
  10. "spirit/model"
  11. "strconv"
  12. "strings"
  13. )
  14. type InvoiceController struct {
  15. Data interface{}
  16. }
  17. var (
  18. InvoiceService = &service.InvoiceService{}
  19. )
  20. func (u *InvoiceController) Router(router *gin.Engine) {
  21. eleGroup := router.Group("/Invoice")
  22. {
  23. eleGroup.POST("/Add", InvoiceAdd) // 发票开具
  24. eleGroup.POST("/Download", InvoiceDownload) // 发票下载
  25. eleGroup.GET("/See", InvoiceSee) // 查看发票
  26. eleGroup.POST("/RedSubmit", InvoiceRedSubmit) // 退票
  27. eleGroup.POST("/Replace", InvoiceReplace) // 换票
  28. }
  29. }
  30. func InvoiceAdd(context *gin.Context) {
  31. result := &model.BaseResult{}
  32. data, _ := ioutil.ReadAll(context.Request.Body)
  33. var dat *entity.Invoice
  34. if err := json.Unmarshal([]byte(data), &dat); err == nil {
  35. fmt.Println("==============json str 转map=======================")
  36. }
  37. msg,code,dataMap:= InvoiceService.InvoiceAdd(dat)
  38. result.Msg=msg
  39. result.Code=code
  40. result.Data=dataMap
  41. context.JSON(http.StatusOK, result)
  42. }
  43. func InvoiceDownload(context *gin.Context) {
  44. result := &model.BaseResult{}
  45. data, _ := ioutil.ReadAll(context.Request.Body)
  46. dat := make(map[string]interface{})
  47. if err := json.Unmarshal([]byte(data), &dat); err == nil {
  48. fmt.Println("==============json str 转map=======================")
  49. }
  50. fmt.Println(dat["model"])
  51. fmt.Println(dat["model"].(string))
  52. Modelint, _ := strconv.Atoi(dat["model"].(string))
  53. dataMap,code,msg:=InvoiceService.InvoiceDownload(strings.Replace(fmt.Sprintln(dat["swno"]), "\n", "", -1),strings.Replace(fmt.Sprintln(dat["saleTax"]), "\n", "", -1),Modelint)
  54. result.Data=dataMap
  55. result.Code=code
  56. result.Msg=msg
  57. context.JSON(http.StatusOK, result)
  58. }
  59. func InvoiceSee(context *gin.Context) {
  60. result := &model.BaseResult{}
  61. swno := context.Request.FormValue("swno")
  62. code,path,msg:=InvoiceService.InvoiceSee(swno,entity.SaleTax)
  63. result.Data=path
  64. result.Msg=msg
  65. result.Code=code
  66. context.JSON(http.StatusOK, result)
  67. }
  68. //退票
  69. func InvoiceRedSubmit(context *gin.Context) {
  70. result := &model.BaseResult{}
  71. data, _ := ioutil.ReadAll(context.Request.Body)
  72. var dat *entity.RedSubmitJson
  73. if err := json.Unmarshal([]byte(data), &dat); err == nil {
  74. fmt.Println("==============json str 转map=======================")
  75. }
  76. msg,code,dataMap:=InvoiceService.InvoiceRedSubmit(dat.Fpdm,dat.Fphm)
  77. result.Data=dataMap
  78. result.Msg=msg
  79. result.Code=code
  80. context.JSON(http.StatusOK, result)
  81. }
  82. //换票
  83. func InvoiceReplace(context *gin.Context) {
  84. result := &model.BaseResult{}
  85. data, _ := ioutil.ReadAll(context.Request.Body)
  86. var dat *entity.Invoice
  87. if err := json.Unmarshal([]byte(data), &dat); err == nil {
  88. fmt.Println("==============json str 转map=======================")
  89. }
  90. msg,code,dataMap:=InvoiceService.InvoiceReplace(dat)
  91. result.Data=dataMap
  92. result.Msg=msg
  93. result.Code=code
  94. context.JSON(http.StatusOK, result)
  95. }