|
@@ -0,0 +1,113 @@
|
|
|
+package shanghu
|
|
|
+
|
|
|
+import (
|
|
|
+ "duoduo/apis/shanghu/models"
|
|
|
+ "duoduo/models/shanghu"
|
|
|
+ "duoduo/tools/app"
|
|
|
+ "encoding/json"
|
|
|
+ "github.com/gin-gonic/gin"
|
|
|
+ "time"
|
|
|
+)
|
|
|
+
|
|
|
+func CreateMerchantRechargeConfig(c *gin.Context) {
|
|
|
+ var inData models.CreateMerchantRechargeRequest
|
|
|
+ var project []int64
|
|
|
+ var merchantProjectList []shanghu.MerchantRechargeProject
|
|
|
+ err := c.ShouldBindJSON(&inData)
|
|
|
+ if err != nil {
|
|
|
+ app.Error(c, 400, err, err.Error())
|
|
|
+ return
|
|
|
+ }
|
|
|
+
|
|
|
+ var merchantRecharge shanghu.MerchantRecharge
|
|
|
+ merchantRecharge.MerchantRechargeName = inData.MerchantRechargeName
|
|
|
+ merchantRecharge.CardProjectData = inData.CardProjectData
|
|
|
+ merchantRecharge.MerchantOpenID = inData.MerchantOpenID
|
|
|
+ merchantRecharge.CreatedAt = time.Now()
|
|
|
+ merchantRecharge.UpdatedAt = time.Now()
|
|
|
+
|
|
|
+ err = json.Unmarshal([]byte(inData.CardProjectData), &project)
|
|
|
+ if err != nil {
|
|
|
+ app.Error(c, 400, err, err.Error())
|
|
|
+ return
|
|
|
+ }
|
|
|
+
|
|
|
+ for _, v := range project {
|
|
|
+ var sql shanghu.MerchantRechargeProject
|
|
|
+ sql.ID = v
|
|
|
+ merchantProject, err := sql.GetMerchantRechargeProjectById()
|
|
|
+ if err != nil {
|
|
|
+ app.Error(c, 400, err, err.Error())
|
|
|
+ return
|
|
|
+ }
|
|
|
+ merchantProjectList = append(merchantProjectList, merchantProject)
|
|
|
+
|
|
|
+ }
|
|
|
+ list, err := json.Marshal(merchantProjectList)
|
|
|
+ if err != nil {
|
|
|
+ app.Error(c, 400, err, err.Error())
|
|
|
+ return
|
|
|
+ }
|
|
|
+ merchantRecharge.CardProjectData = string(list)
|
|
|
+
|
|
|
+ _, err = merchantRecharge.Create()
|
|
|
+ if err != nil {
|
|
|
+ app.Error(c, 400, err, err.Error())
|
|
|
+ return
|
|
|
+ }
|
|
|
+
|
|
|
+ app.OK(c, nil, app.Success)
|
|
|
+
|
|
|
+}
|
|
|
+
|
|
|
+func DelMerchantRechargeConfig(c *gin.Context) {
|
|
|
+ var inData models.DelMerchantRechargeRequest
|
|
|
+ var sql shanghu.MerchantRecharge
|
|
|
+
|
|
|
+ err := c.ShouldBindJSON(&inData)
|
|
|
+ if err != nil {
|
|
|
+ app.Error(c, 400, err, err.Error())
|
|
|
+ return
|
|
|
+ }
|
|
|
+
|
|
|
+ sql.ID = inData.Id
|
|
|
+ err = sql.DelMerchantRecharge()
|
|
|
+ if err != nil {
|
|
|
+ app.Error(c, 400, err, err.Error())
|
|
|
+ return
|
|
|
+ }
|
|
|
+
|
|
|
+ app.OK(c, nil, app.Success)
|
|
|
+
|
|
|
+}
|
|
|
+
|
|
|
+func MerchantRechargeConfigList(c *gin.Context) {
|
|
|
+ var inData models.MerchantRechargeListRequest
|
|
|
+ var sqlData shanghu.MerchantRecharge
|
|
|
+
|
|
|
+ err := c.ShouldBindJSON(&inData)
|
|
|
+ if err != nil {
|
|
|
+ app.Error(c, 400, err, err.Error())
|
|
|
+ return
|
|
|
+ }
|
|
|
+
|
|
|
+ var pageSize = 10
|
|
|
+ var pageIndex = 1
|
|
|
+
|
|
|
+ if inData.PageSize != 0 {
|
|
|
+ pageSize = inData.PageSize
|
|
|
+ }
|
|
|
+ if inData.PageIndex != 0 {
|
|
|
+ pageIndex = inData.PageIndex
|
|
|
+ }
|
|
|
+
|
|
|
+ sqlData.MerchantOpenID = inData.OpenId
|
|
|
+
|
|
|
+ cashOutList, count, err := sqlData.MerchantRechargeList(pageSize, pageIndex)
|
|
|
+ if err != nil {
|
|
|
+ app.Error(c, 500, err, err.Error())
|
|
|
+ return
|
|
|
+ }
|
|
|
+
|
|
|
+ app.PageOK(c, cashOutList, count, pageIndex, pageSize, app.Success)
|
|
|
+}
|