merchant.recharge.client.account.log.go 5.8 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224
  1. package shanghu
  2. import (
  3. "duoduo/apis/shanghu/models"
  4. "duoduo/models/shanghu"
  5. "duoduo/tools/app"
  6. "github.com/gin-gonic/gin"
  7. "strconv"
  8. "time"
  9. )
  10. func GetClientRechargeLog(c *gin.Context) {
  11. var inData models.MerchantRechargeClientAccountLogRequest
  12. var sqlData shanghu.MerchantRechargeClientAccountLog
  13. var outDataList []models.MerchantRechargeClientAccountLogReply
  14. var countData int
  15. err := c.ShouldBindJSON(&inData)
  16. if err != nil {
  17. app.Error(c, 400, err, err.Error())
  18. return
  19. }
  20. var pageSize = 10
  21. var pageIndex = 1
  22. if inData.PageSize != 0 {
  23. pageSize = inData.PageSize
  24. }
  25. if inData.PageIndex != 0 {
  26. pageIndex = inData.PageIndex
  27. }
  28. if inData.Type == 1 { //充值核销
  29. sqlData.ClientOpenID = inData.ClientOpenId
  30. cashOutList, count, err := sqlData.MerchantRechargeClientAccountLogListByClient(pageSize, pageIndex)
  31. if err != nil {
  32. app.Error(c, 500, err, err.Error())
  33. return
  34. }
  35. countData = count
  36. for _, v := range cashOutList {
  37. var merchant shanghu.Merchant
  38. var user shanghu.MerchantUser
  39. var outData models.MerchantRechargeClientAccountLogReply
  40. merchant.OpenId = v.MerchantOpenID
  41. merchantData, err := merchant.GetMerchant()
  42. if err != nil {
  43. app.Error(c, 500, err, err.Error())
  44. return
  45. }
  46. user.OpenID = v.Operator
  47. operator, err := user.GetUserInfo()
  48. if err != nil {
  49. app.Error(c, 500, err, err.Error())
  50. return
  51. }
  52. outData.MerchantOpenName = merchantData.MerchantName
  53. outData.CancelAmount = v.Amount.String()
  54. outData.CancelAmountAfter = v.AmountAfter.String()
  55. outData.CancelAmountPre = v.AmountPre.String()
  56. outData.Operator = operator.Code
  57. outData.CancelTime = v.CreatedAt.Format(time.DateTime)
  58. outDataList = append(outDataList, outData)
  59. }
  60. } else if inData.Type == 2 { //卡券核销
  61. var recharge shanghu.RechargeCancelLog
  62. recharge.ClientOpenID = inData.ClientOpenId
  63. cashOutList, count, err := recharge.RechargeCancelLogByClientList(pageSize, pageIndex)
  64. if err != nil {
  65. app.Error(c, 500, err, err.Error())
  66. return
  67. }
  68. countData = count
  69. for _, v := range cashOutList {
  70. var merchant shanghu.Merchant
  71. var user shanghu.MerchantUser
  72. var outData models.MerchantRechargeClientAccountLogReply
  73. merchant.OpenId = v.MerchantOpenID
  74. merchantData, err := merchant.GetMerchant()
  75. if err != nil {
  76. app.Error(c, 500, err, err.Error())
  77. return
  78. }
  79. user.OpenID = v.Operator
  80. operator, err := user.GetUserInfo()
  81. if err != nil {
  82. app.Error(c, 500, err, err.Error())
  83. return
  84. }
  85. outData.MerchantOpenName = merchantData.MerchantName
  86. outData.CancelAmount = strconv.FormatInt(int64(v.Quantity), 10)
  87. outData.CancelAmountAfter = strconv.FormatInt(int64(v.QuantityAfter), 10)
  88. outData.CancelAmountPre = strconv.FormatInt(int64(v.QuantityPre), 10)
  89. outData.Operator = operator.Code
  90. outData.CancelTime = v.CreatedAt.Format(time.DateTime)
  91. outDataList = append(outDataList, outData)
  92. }
  93. }
  94. app.PageOK(c, outDataList, countData, pageIndex, pageSize, app.Success)
  95. }
  96. func GetMerchantRechargeLog(c *gin.Context) {
  97. var inData models.MerchantRechargeAccountLogRequest
  98. var sqlData shanghu.MerchantRechargeClientAccountLog
  99. var outDataList []models.MerchantRechargeAccountLogReply
  100. var countData int
  101. err := c.ShouldBindJSON(&inData)
  102. if err != nil {
  103. app.Error(c, 400, err, err.Error())
  104. return
  105. }
  106. var pageSize = 10
  107. var pageIndex = 1
  108. if inData.PageSize != 0 {
  109. pageSize = inData.PageSize
  110. }
  111. if inData.PageIndex != 0 {
  112. pageIndex = inData.PageIndex
  113. }
  114. if inData.Type == 1 { //充值核销
  115. sqlData.MerchantOpenID = inData.MerchantOpenId
  116. cashOutList, count, err := sqlData.MerchantRechargeAccountLogList(pageSize, pageIndex)
  117. if err != nil {
  118. app.Error(c, 500, err, err.Error())
  119. return
  120. }
  121. countData = count
  122. for _, v := range cashOutList {
  123. var client shanghu.MerchantClientUser
  124. var user shanghu.MerchantUser
  125. //var merchant shanghu.Merchant
  126. var outData models.MerchantRechargeAccountLogReply
  127. client.ClientOpenID = v.ClientOpenID
  128. clientInfo, err := client.GetUserInfo()
  129. if err != nil {
  130. app.Error(c, 500, err, err.Error())
  131. return
  132. }
  133. user.OpenID = v.Operator
  134. operator, err := user.GetUserInfo()
  135. if err != nil {
  136. app.Error(c, 500, err, err.Error())
  137. return
  138. }
  139. outData.ClientCode = clientInfo.Code
  140. outData.CancelAmount = v.Amount.String()
  141. outData.CancelAmountAfter = v.AmountAfter.String()
  142. outData.CancelAmountPre = v.AmountPre.String()
  143. outData.Operator = operator.Code
  144. outData.CancelTime = v.CreatedAt.Format(time.DateTime)
  145. outDataList = append(outDataList, outData)
  146. }
  147. } else if inData.Type == 2 { //卡券核销
  148. var recharge shanghu.RechargeCancelLog
  149. recharge.MerchantOpenID = inData.MerchantOpenId
  150. cashOutList, count, err := recharge.RechargeCancelLogByMerchantList(pageSize, pageIndex)
  151. if err != nil {
  152. app.Error(c, 500, err, err.Error())
  153. return
  154. }
  155. countData = count
  156. for _, v := range cashOutList {
  157. var client shanghu.MerchantClientUser
  158. var user shanghu.MerchantUser
  159. //var merchant shanghu.Merchant
  160. var outData models.MerchantRechargeAccountLogReply
  161. client.ClientOpenID = v.ClientOpenID
  162. clientData, err := client.GetUserInfo()
  163. if err != nil {
  164. app.Error(c, 500, err, err.Error())
  165. return
  166. }
  167. user.OpenID = v.Operator
  168. operator, err := user.GetUserInfo()
  169. if err != nil {
  170. app.Error(c, 500, err, err.Error())
  171. return
  172. }
  173. outData.ClientCode = clientData.Code
  174. outData.CancelAmount = strconv.FormatInt(int64(v.Quantity), 10)
  175. outData.CancelAmountAfter = strconv.FormatInt(int64(v.QuantityAfter), 10)
  176. outData.CancelAmountPre = strconv.FormatInt(int64(v.QuantityPre), 10)
  177. outData.Operator = operator.Code
  178. outData.CancelTime = v.CreatedAt.Format(time.DateTime)
  179. outDataList = append(outDataList, outData)
  180. }
  181. }
  182. app.PageOK(c, outDataList, countData, pageIndex, pageSize, app.Success)
  183. }