Browse Source

feat:资源包流水记录

wangshan 3 years ago
parent
commit
46a5496b27

+ 0 - 2
src/jfw/modules/subscribepay/src/a/init.go

@@ -72,8 +72,6 @@ func init() {
 	xweb.AddRouter("/subscribepay", &service.DataExportPack{})
 	xweb.AddRouter("/subscribepay", &service.DataExportPack{})
 	//省份流量包
 	//省份流量包
 	xweb.AddRouter("/jypay", &service.AreaPack{})
 	xweb.AddRouter("/jypay", &service.AreaPack{})
-	// 所有“包”
-	xweb.AddRouter("/subscribepay", &service.BaskPack{})
 	//公共资源包
 	//公共资源包
 	xweb.AddRouter("/jypay", &service.ResourcePack{})
 	xweb.AddRouter("/jypay", &service.ResourcePack{})
 }
 }

+ 5 - 5
src/jfw/modules/subscribepay/src/baseApi.json

@@ -1,11 +1,11 @@
 {
 {
   "appId": "10000",
   "appId": "10000",
   "apiList": {
   "apiList": {
-    "buyBalance": "http://127.0.0.1:8124/resources/purchaseUserBalance",
-    "useBalance": "http://127.0.0.1:8124/resources/useUserDetailed",
-    "findPreview": "http://127.0.0.1:8124/resources/findPreview",
-    "findBalance": "http://127.0.0.1:8124/resources/findBalance",
-    "findRecord": "http://127.0.0.1:8124/resources/findRecord",
+    "buyBalance": "http://127.0.0.1:8889/resources/purchaseUserBalance",
+    "useBalance": "http://127.0.0.1:8889/resources/useUserDetailed",
+    "findPreview": "http://127.0.0.1:8889/resources/findPreview",
+    "findBalance": "http://127.0.0.1:8889/resources/findBalance",
+    "findRecord": "http://127.0.0.1:8889/resources/findRecord",
     "entdedupUrl": "http://127.0.0.1:8888/data/deduplication"
     "entdedupUrl": "http://127.0.0.1:8888/data/deduplication"
   }
   }
 }
 }

+ 127 - 127
src/jfw/modules/subscribepay/src/entity/basePack.go

@@ -2,7 +2,6 @@ package entity
 
 
 import (
 import (
 	"config"
 	"config"
-	"encoding/json"
 	"fmt"
 	"fmt"
 	"log"
 	"log"
 	qutil "qfw/util"
 	qutil "qfw/util"
@@ -12,79 +11,23 @@ import (
 	"util"
 	"util"
 )
 )
 
 
-//剑鱼数据流量包 消费记录
-type baskPackStruct struct {
-	UserId      string                 //用户身份
-	Month       int                    //查询月份
-	Year        int                    //查询年份
-	PageSize    int                    //每页多少条
-	PageNo      int                    //当前页
-	ProductName string                 //产品名称
-	State       int                    // 0 查消耗记录 1 查充值记录
-	Platform    string                 //平台:PC;APP;WX
-	Remarks     map[string]interface{} //备注信息
-}
-
-var JyBaskPack baskPackStruct
-
-//new
-func GetNewJyBaskPack(userId, productName, platform string, month, year, pageSize, pageNo, state int, remarks map[string]interface{}) *baskPackStruct {
-	if pageSize == 0 {
-		pageSize = 10
-	}
-	if pageNo == 0 {
-		pageNo = 1
-	}
-	if platform == "" {
-		platform = "PC"
-	}
-	return &baskPackStruct{
-		UserId:      userId,
-		Month:       month,
-		Year:        year,
-		PageSize:    pageSize,
-		PageNo:      pageNo,
-		ProductName: productName,
-		State:       state,
-		Platform:    platform,
-		Remarks:     remarks,
-	}
-}
-
-//消费
-func (this *baskPackStruct) ConsumePack() (r map[string]interface{}, m string) {
-	switch this.ProductName {
-	case "附件下载包":
-		r, m = this.fileConsume()
-	default:
-		r, m = this.defaultConsume()
-	}
-	return
-}
-
 // 默认消费
 // 默认消费
-func (this *baskPackStruct) defaultConsume() (r map[string]interface{}, m string) {
-	rb, rm := this.consumePackApi()
-	if !rb {
-		m = fmt.Sprintf("消费异常:%s", rm)
-	}
-	r = map[string]interface{}{
-		"success": rb,
-		"msg":     rm,
+func (this *UseBalanceStruct) defaultConsume() (r map[string]interface{}, m string) {
+	r, rerr := this.UseBalance()
+	if rerr != nil {
+		m = fmt.Sprintf("消费异常:%s", rerr.Error())
 	}
 	}
 	return
 	return
 }
 }
 
 
 //附件下载消费 fui:免费赠送已使用次数;pui:付费权限已使用次数
 //附件下载消费 fui:免费赠送已使用次数;pui:付费权限已使用次数
-func (this *baskPackStruct) fileConsume() (r map[string]interface{}, m string) {
+func (this *UseBalanceStruct) fileConsume() (r map[string]interface{}, m string) {
 	_fileName := this.Remarks["fileName"].(string)
 	_fileName := this.Remarks["fileName"].(string)
 	_id := this.Remarks["id"].(string)
 	_id := this.Remarks["id"].(string)
-	// _downUrl := ""
-	// _size := ""
 	BaseMsg := jy.GetBigVipUserBaseMsg(this.UserId, util.Mysql, util.MQFW)
 	BaseMsg := jy.GetBigVipUserBaseMsg(this.UserId, util.Mysql, util.MQFW)
 	if BaseMsg.Status > 0 && BaseMsg.PowerMap[3] {
 	if BaseMsg.Status > 0 && BaseMsg.PowerMap[3] {
 		r = fileAttachRpc(_fileName, _id)
 		r = fileAttachRpc(_fileName, _id)
-		go func(this *baskPackStruct, r map[string]interface{}) {
+		go func(this *UseBalanceStruct, r map[string]interface{}) {
 			data := make(map[string]interface{})
 			data := make(map[string]interface{})
 			data["p_type"] = "大会员用户附件下载"
 			data["p_type"] = "大会员用户附件下载"
 			data["p_userid"] = this.UserId
 			data["p_userid"] = this.UserId
@@ -98,31 +41,13 @@ func (this *baskPackStruct) fileConsume() (r map[string]interface{}, m string) {
 			}
 			}
 		}(this, r)
 		}(this, r)
 	} else if BaseMsg.VipStatus > 0 {
 	} else if BaseMsg.VipStatus > 0 {
-		//查询当月附件下载历史记录-如是已下载过的附件不再扣除次数
-		this.Month = jy.GetMonth(time.Now().Month().String())
-		this.Year = time.Now().Year()
-		_, retList, _ := this.perPackRechargeApi()
 		isExists := false
 		isExists := false
-		for _, item := range retList {
-			itemData := qutil.ObjToMap(item)
-			if itemData == nil || len(*itemData) == 0 {
-				continue
-			}
-			remarks_str := qutil.ObjToString((*itemData)["remarks"])
-			if remarks_str == "" {
-				continue
-			}
-			remarks := make(map[string]interface{})
-			err := json.Unmarshal([]byte(remarks_str), remarks)
-			if err != nil {
-				fmt.Printf("Unmarshal err")
-				continue
-			}
-			if remarks["fileName"] == _fileName && remarks["id"] == _id {
-				r = remarks
-				isExists = true
-				break
-			}
+		//查询当月附件下载历史记录-如是已下载过的附件不再扣除次数
+		if this.FindJyConsumePackRecord() && this.Remarks["downUrl"] != nil {
+			delete(this.Remarks, "id")
+			delete(this.Remarks, "title")
+			r = this.Remarks
+			isExists = true
 		}
 		}
 		//当月未有消费记录
 		//当月未有消费记录
 		if !isExists {
 		if !isExists {
@@ -138,21 +63,23 @@ func (this *baskPackStruct) fileConsume() (r map[string]interface{}, m string) {
 			}
 			}
 			if isCanConsume_f || isCanConsume_p {
 			if isCanConsume_f || isCanConsume_p {
 				r = fileAttachRpc(_fileName, _id)
 				r = fileAttachRpc(_fileName, _id)
-				if len(r) > 0 {
-					rb, rm := this.consumePackApi()
-					if !rb {
-						m = fmt.Sprintf("消费异常:%s", rm)
-					} else {
-						r = this.Remarks
-						if isCanConsume_f {
-							//下载后自增一次 免费权限默认存储31d
-							if fui == 0 {
-								redis.Put(jy.PowerCacheDb, mon, 1, 60*60*24*31)
-							} else {
-								redis.Incr(jy.PowerCacheDb, mon)
-							}
+				if r["downurl"] != nil {
+					this.Remarks["downUrl"] = r["downurl"]
+					this.Remarks["size"] = r["size"]
+					if isCanConsume_p {
+						//中台消费记录
+						rb, err := this.UseBalance()
+						if err != nil || (rb != nil && qutil.IntAll(rb["code"]) == 0) {
+							m = fmt.Sprintf("消费记录保存异常:%s", qutil.ObjToString(rb["message"]))
+						}
+					} else if isCanConsume_f { //下载后自增一次 免费权限默认存储31d
+						if fui == 0 {
+							redis.Put(jy.PowerCacheDb, mon, 1, 60*60*24*31)
+						} else {
+							redis.Incr(jy.PowerCacheDb, mon)
 						}
 						}
 					}
 					}
+					go this.saveJyConsumePackList(qutil.If(isCanConsume_p, true, false).(bool))
 				} else {
 				} else {
 					m = "获取附件异常"
 					m = "获取附件异常"
 				}
 				}
@@ -172,11 +99,53 @@ func (this *baskPackStruct) fileConsume() (r map[string]interface{}, m string) {
 	return
 	return
 }
 }
 
 
-//
+var jyCC = "jy_consumepack"
+
+//查询jy 消费日志记录
+func (this *UseBalanceStruct) FindJyConsumePackRecord() bool {
+	query := map[string]interface{}{
+		"s_id":      this.Remarks["id"],
+		"s_userId":  this.UserId,
+		"s_product": this.Name,
+		"s_month":   time.Now().Format("2006-01"),
+	}
+	res, ok := util.MQFW.FindOne(jyCC, query)
+	if ok && res != nil {
+		if (*res)["s_downUrl"] != nil {
+			this.Remarks["downUrl"] = (*res)["s_downUrl"]
+			this.Remarks["size"] = (*res)["s_fileSize"]
+		}
+	} else {
+		log.Println("查询附件下载日志异常:", this.UserId)
+	}
+	return ok
+}
+
+//保存日志
+func (this *UseBalanceStruct) saveJyConsumePackList(b bool) {
+	saveMap := map[string]interface{}{
+		"s_id":       this.Remarks["id"],
+		"s_userId":   this.UserId,
+		"s_product":  this.Name,
+		"l_date":     time.Now().Unix(),
+		"s_month":    time.Now().Format("2006-01"),
+		"s_fileName": this.Remarks["fileName"],
+		"s_downUrl":  this.Remarks["downUrl"],
+		"s_fileSize": this.Remarks["size"],
+		"s_title":    this.Remarks["title"],
+		"b_isPay":    b,
+		"s_platform": this.Platform,
+	}
+	if util.MQFW.Save(jyCC, saveMap) == "" {
+		log.Println("保存附件下载日志异常:", this.UserId)
+	}
+}
+
+//调rpc 获取附件信息
 func fileAttachRpc(fileName, id string) (r map[string]interface{}) {
 func fileAttachRpc(fileName, id string) (r map[string]interface{}) {
 	r = make(map[string]interface{})
 	r = make(map[string]interface{})
 	// 调用rpc 获取附件信息
 	// 调用rpc 获取附件信息
-	req := util.JyFileRequest{qutil.DecodeArticleId2ByCheck(id)[0]}
+	req := util.JyFileRequest{id}
 	rep, err := util.Attachment(&req)
 	rep, err := util.Attachment(&req)
 	if err != nil {
 	if err != nil {
 		log.Println("attachment  rpc调用失败")
 		log.Println("attachment  rpc调用失败")
@@ -186,7 +155,7 @@ func fileAttachRpc(fileName, id string) (r map[string]interface{}) {
 			for _, v := range rep.Rep {
 			for _, v := range rep.Rep {
 				if qutil.ObjToString(v["filename"]) == fileName {
 				if qutil.ObjToString(v["filename"]) == fileName {
 					r = map[string]interface{}{
 					r = map[string]interface{}{
-						"downurl":  qutil.ObjToString(v["downUrl"]),
+						"downurl":  qutil.ObjToString(v["downurl"]),
 						"filename": qutil.ObjToString(v["filename"]),
 						"filename": qutil.ObjToString(v["filename"]),
 						"size":     qutil.ObjToString(v["size"]),
 						"size":     qutil.ObjToString(v["size"]),
 					}
 					}
@@ -198,45 +167,76 @@ func fileAttachRpc(fileName, id string) (r map[string]interface{}) {
 	return
 	return
 }
 }
 
 
-//记录
-func (this *baskPackStruct) GetBaseRecordList() (list []map[string]interface{}, total int, err error) {
-	retTotal, retList, _ := this.perPackRechargeApi()
-	log.Println(retTotal, retList)
-	switch this.ProductName {
+//消费
+func JyConsumePack(userId, product, platform string, remarks map[string]interface{}) (r map[string]interface{}, m string) {
+	CStruct := InitUseBalance(userId, product, product, "", "", nil, remarks, 1, platform)
+	switch product {
 	case "附件下载包":
 	case "附件下载包":
-		list = this.FileUploadData(retList)
+		r, m = CStruct.fileConsume()
 	default:
 	default:
-		list = this.DefaultData(retList)
+		r, m = CStruct.defaultConsume()
 	}
 	}
 	return
 	return
 }
 }
 
 
+//流水
+func JyFindRecordPack(userId, productName, queryTime, platform string, pageSize, pageNum int) (list []map[string]interface{}, total int, err error) {
+	RStruct := InitFindRecord(userId, productName, queryTime, platform, pageSize, pageNum, 0)
+	switch productName {
+	case "附件下载包":
+		list, total = RStruct.FindJyConsumePackAllRecord()
+	default:
+		list, total = RStruct.DefaultData()
+	}
+	return list, total, nil
+}
+
 //数据处理-附件下载包
 //数据处理-附件下载包
-func (this *baskPackStruct) FileUploadData(retList []interface{}) []map[string]interface{} {
+func (this *FindRecordStruct) FindJyConsumePackAllRecord() ([]map[string]interface{}, int) {
 	var articleAddMap = map[string]string{
 	var articleAddMap = map[string]string{
 		"PC":  "/article/content/%s",
 		"PC":  "/article/content/%s",
 		"WX":  "/article/content/%s",
 		"WX":  "/article/content/%s",
 		"APP": "/jyapp/article/content/%s",
 		"APP": "/jyapp/article/content/%s",
 	}
 	}
-	returnMapArr := make([]map[string]interface{}, 0, len(retList))
-	for _, item := range retList {
-		itemData := qutil.ObjToMap(item)
-		if itemData == nil || len(*itemData) == 0 {
-			continue
-		}
-		jyid := qutil.ObjToString((*itemData)["jyid"])
-		parsMap := map[string]interface{}{
-			"resourceType": (*itemData)["resourceType"],
-			"number":       (*itemData)["number"],
-			"articleUrl":   fmt.Sprintf(articleAddMap[this.Platform], qutil.EncodeArticleId2ByCheck(jyid)),
+	query := map[string]interface{}{
+		"s_userId":  this.UserId,
+		"s_product": this.Name,
+		"s_month":   this.QueryTime,
+	}
+	total := util.MQFW.Count(jyCC, query)
+	list, ok := util.MQFW.Find(jyCC, query, `{"l_date":-1}`, `{"s_id":1,"s_fileName":1,"s_downUrl":1,"l_date":1,"s_title":1}`, false, (this.Page-1)*this.PageSize, this.PageSize)
+	if ok && list != nil {
+		if len(*list) >= 1 {
+			for _, item := range *list {
+				itemData := qutil.ObjToMap(item)
+				if itemData == nil || len(*itemData) == 0 {
+					continue
+				}
+				l_date := (*itemData)["l_date"]
+				(*itemData)["l_date"] = qutil.FormatDateWithObj(&l_date, "2006/01/02")
+				(*itemData)["articleUrl"] = fmt.Sprintf(articleAddMap[this.Platform], qutil.EncodeArticleId2ByCheck((*itemData)["s_id"].(string)))
+				delete((*itemData), "_id")
+				delete((*itemData), "s_id")
+			}
+		} else {
+			log.Println("暂无附件下载记录:", this.UserId)
 		}
 		}
-		returnMapArr = append(returnMapArr, parsMap)
+	} else {
+		log.Println("查询附件下载记录异常:", this.UserId)
 	}
 	}
-	return returnMapArr
+
+	return *list, total
 }
 }
 
 
 //数据处理-default
 //数据处理-default
-func (this *baskPackStruct) DefaultData(retList []interface{}) []map[string]interface{} {
-
-	return qutil.ObjArrToMapArr(retList)
+func (this *FindRecordStruct) DefaultData() ([]map[string]interface{}, int) {
+	returnList, total, err := this.FindBalance()
+	if err != nil {
+		log.Println("默认资源包流水异常:", err)
+		return nil, 0
+	}
+	if total == 0 {
+		log.Println(fmt.Sprintf("暂无%s资源包流水", this.Name))
+	}
+	return qutil.ObjArrToMapArr(returnList), total
 }
 }

+ 5 - 50
src/jfw/modules/subscribepay/src/entity/basePackAPI.go

@@ -2,7 +2,6 @@ package entity
 
 
 import (
 import (
 	"config"
 	"config"
-	"encoding/json"
 	"fmt"
 	"fmt"
 	"log"
 	"log"
 	"net/url"
 	"net/url"
@@ -10,13 +9,13 @@ import (
 )
 )
 
 
 //账户信息
 //账户信息
-func (this *baskPackStruct) accountPack() (payCount int) {
+func (this *UseBalanceStruct) accountPack() (payCount int) {
 	resMap, err := commonPost(config.JyApiConfig.ApiList.FindBalance, url.Values{
 	resMap, err := commonPost(config.JyApiConfig.ApiList.FindBalance, url.Values{
-		"accountId":    []string{this.UserId},      //账户标识*
-		"resourceType": []string{this.ProductName}, //产品名称
+		"accountId":    []string{this.UserId}, //账户标识*
+		"resourceType": []string{this.Name},   //产品名称
 	})
 	})
 	if err != nil {
 	if err != nil {
-		log.Println(fmt.Sprintf("查看账户信息异常:%s,%s"), this.UserId, this.ProductName)
+		log.Println(fmt.Sprintf("查看账户信息异常:%s,%s"), this.UserId, this.Name)
 		payCount = -1
 		payCount = -1
 		return
 		return
 	}
 	}
@@ -32,7 +31,7 @@ func (this *baskPackStruct) accountPack() (payCount int) {
 			if packMap == nil || len(*packMap) == 0 {
 			if packMap == nil || len(*packMap) == 0 {
 				continue
 				continue
 			}
 			}
-			if packType := qutil.ObjToString((*packMap)["name"]); packType != this.ProductName {
+			if packType := qutil.ObjToString((*packMap)["name"]); packType != this.Name {
 				continue
 				continue
 			}
 			}
 			payCount = qutil.IntAll((*packMap)["number"]) //总量
 			payCount = qutil.IntAll((*packMap)["number"]) //总量
@@ -40,47 +39,3 @@ func (this *baskPackStruct) accountPack() (payCount int) {
 	}
 	}
 	return
 	return
 }
 }
-
-// api 消费
-func (this *baskPackStruct) consumePackApi() (B bool, Msg string) {
-	remarkBytes, err := json.Marshal(this.Remarks)
-	if err != nil {
-		Msg = fmt.Sprintf("remark pase error")
-		return
-	}
-	resMap, err := commonPost(config.JyApiConfig.ApiList.UseBalance, url.Values{
-		"accountId":        []string{this.UserId},          //账户标识
-		"name":             []string{this.ProductName},     //资源名称
-		"resourceType":     []string{this.ProductName},     //资源类型
-		"number":           []string{fmt.Sprintf("%d", 1)}, //扣除数量
-		"ruleId":           []string{""},                   //规则标识
-		"userId":           []string{this.UserId},          //用户标识
-		"remarks":          []string{string(remarkBytes)},  //备注
-		"duplicateRemoval": []string{fmt.Sprintf("%d", 0)}, //是否去重0不去1去重
-	})
-	if err != nil {
-		return
-	}
-	B = qutil.IntAll(resMap["code"]) > 0
-	Msg = qutil.ObjToString(resMap["message"])
-	return
-}
-
-// api记录
-func (this *baskPackStruct) perPackRechargeApi() (int, []interface{}, error) {
-	resMap, err := commonPost(config.JyApiConfig.ApiList.FindRecord, url.Values{
-		"accountId": []string{this.UserId},                      //账户标识
-		"userId":    []string{this.UserId},                      //用户标识
-		"pageSize":  []string{fmt.Sprintf("%d", this.PageSize)}, //每页多少条
-		"page":      []string{fmt.Sprintf("%d", this.PageNo)},   //当前页
-		"state":     []string{fmt.Sprintf("%d", this.State)},    // 0 查消耗记录 1 查充值记录
-		"month":     []string{fmt.Sprintf("%d", this.State)},    // 月份
-		"year":      []string{fmt.Sprintf("%d", this.State)},    // 月份
-	})
-	if err != nil {
-		return -1, nil, err
-	}
-	total := qutil.IntAll(resMap["count"])
-	list, _ := resMap["data"].([]interface{})
-	return total, list, nil
-}

+ 17 - 2
src/jfw/modules/subscribepay/src/entity/commonApi.go

@@ -96,10 +96,11 @@ type UseBalanceStruct struct {
 	Remarks          map[string]interface{} //备注
 	Remarks          map[string]interface{} //备注
 	DuplicateRemoval string                 //是否去重0不去1去重【数据流量包用到】
 	DuplicateRemoval string                 //是否去重0不去1去重【数据流量包用到】
 	InfoId           []string               //数据Id,多个以逗号隔开【数据流量包用到】
 	InfoId           []string               //数据Id,多个以逗号隔开【数据流量包用到】
+	Platform         string                 //平台:PC;APP;WX
 }
 }
 
 
 //
 //
-func InitUseBalance(userId, product, resourceType, ruleId, duplicateRemoval string, infoId []string, remarks map[string]interface{}, num int) *UseBalanceStruct {
+func InitUseBalance(userId, product, resourceType, ruleId, duplicateRemoval string, infoId []string, remarks map[string]interface{}, num int, platform string) *UseBalanceStruct {
 	return &UseBalanceStruct{
 	return &UseBalanceStruct{
 		AccountId:        userId,
 		AccountId:        userId,
 		Name:             product,
 		Name:             product,
@@ -111,6 +112,7 @@ func InitUseBalance(userId, product, resourceType, ruleId, duplicateRemoval stri
 		Remarks:          remarks,          //备注
 		Remarks:          remarks,          //备注
 		DuplicateRemoval: duplicateRemoval, //是否去重0不去1去重【数据流量包用到】
 		DuplicateRemoval: duplicateRemoval, //是否去重0不去1去重【数据流量包用到】
 		InfoId:           infoId,
 		InfoId:           infoId,
+		Platform:         platform,
 	}
 	}
 }
 }
 
 
@@ -150,11 +152,21 @@ type FindRecordStruct struct {
 	State        int    // 0 查消耗记录 1 查充值记录
 	State        int    // 0 查消耗记录 1 查充值记录
 	ResourceType string //资源类型
 	ResourceType string //资源类型
 	QueryTime    string //查询时间 格式2022-01
 	QueryTime    string //查询时间 格式2022-01
+	Platform     string //平台:PC;APP;WX
 
 
 }
 }
 
 
 //定义结构体
 //定义结构体
-func InitFindRecord(userId, resourceType, queryTime string, pageSize, pageNum, state int) *FindRecordStruct {
+func InitFindRecord(userId, resourceType, queryTime, platform string, pageSize, pageNum, state int) *FindRecordStruct {
+	if pageSize == 0 {
+		pageSize = 10
+	}
+	if pageNum == 0 {
+		pageNum = 1
+	}
+	if platform == "" {
+		platform = "PC"
+	}
 	return &FindRecordStruct{
 	return &FindRecordStruct{
 		AccountId:    userId,
 		AccountId:    userId,
 		UserId:       userId,
 		UserId:       userId,
@@ -162,7 +174,9 @@ func InitFindRecord(userId, resourceType, queryTime string, pageSize, pageNum, s
 		Page:         pageNum,
 		Page:         pageNum,
 		State:        state, //0 查消耗记录 1 查充值记录
 		State:        state, //0 查消耗记录 1 查充值记录
 		ResourceType: resourceType,
 		ResourceType: resourceType,
+		Name:         resourceType,
 		QueryTime:    queryTime,
 		QueryTime:    queryTime,
+		Platform:     platform,
 	}
 	}
 }
 }
 
 
@@ -170,6 +184,7 @@ func InitFindRecord(userId, resourceType, queryTime string, pageSize, pageNum, s
 // @Param  &FindRecordStruct
 // @Param  &FindRecordStruct
 // @return list列表 , int数量 , error
 // @return list列表 , int数量 , error
 func (this *FindRecordStruct) FindBalance() ([]interface{}, int, error) {
 func (this *FindRecordStruct) FindBalance() ([]interface{}, int, error) {
+	log.Println("----", this.UserId, this.PageSize, this.Page, this.State, this.ResourceType, this.QueryTime)
 	resMap, err := commonPost(config.JyApiConfig.ApiList.FindRecord, url.Values{
 	resMap, err := commonPost(config.JyApiConfig.ApiList.FindRecord, url.Values{
 		"accountId":    []string{this.UserId},                      //账户标识
 		"accountId":    []string{this.UserId},                      //账户标识
 		"userId":       []string{this.UserId},                      //用户标识
 		"userId":       []string{this.UserId},                      //用户标识

+ 20 - 19
src/jfw/modules/subscribepay/src/service/basePack.go

@@ -9,31 +9,30 @@ import (
 	"qfw/util/jy"
 	"qfw/util/jy"
 	"time"
 	"time"
 	"util"
 	"util"
-
-	"github.com/go-xweb/xweb"
 )
 )
 
 
-type BaskPack struct {
-	*xweb.Action
-	recordList  xweb.Mapper `xweb:"/basePack/recordList"`  //“资源包”使用记录
-	consumePack xweb.Mapper `xweb:"/basePack/consumePack"` //“资源包”消费
-}
-
 //“包”的消费
 //“包”的消费
-func (this *BaskPack) ConsumePack() {
+func (this *ResourcePack) ConsumePack() {
 	userId, _ := this.GetSession("userId").(string)
 	userId, _ := this.GetSession("userId").(string)
 	productName := this.GetString("productName")
 	productName := this.GetString("productName")
 	rData, errMsg := func() (interface{}, string) {
 	rData, errMsg := func() (interface{}, string) {
+		if this.Method() != "POST" {
+			return nil, "请求方式有误"
+		}
 		platform := this.GetString("platform")
 		platform := this.GetString("platform")
+		if productName == "" {
+			return nil, "参数有误"
+		}
 		vipMsg := jy.GetBigVipUserBaseMsg(userId, util.Mysql, util.MQFW)
 		vipMsg := jy.GetBigVipUserBaseMsg(userId, util.Mysql, util.MQFW)
 		if vipMsg.VipStatus <= 0 {
 		if vipMsg.VipStatus <= 0 {
 			return nil, "无权限,请联系管理员"
 			return nil, "无权限,请联系管理员"
 		}
 		}
 		remarks := map[string]interface{}{
 		remarks := map[string]interface{}{
+			"title":    this.GetString("title"),                                //详情页标题
 			"fileName": this.GetString("fileName"),                             //附件名称
 			"fileName": this.GetString("fileName"),                             //附件名称
 			"id":       qutil.DecodeArticleId2ByCheck(this.GetString("id"))[0], //详情页id
 			"id":       qutil.DecodeArticleId2ByCheck(this.GetString("id"))[0], //详情页id
 		}
 		}
-		Ret, Msg := entity.GetNewJyBaskPack(userId, productName, platform, -1, -1, 0, 0, 0, remarks).ConsumePack()
+		Ret, Msg := entity.JyConsumePack(userId, productName, platform, remarks)
 		if Msg != "" {
 		if Msg != "" {
 			return nil, fmt.Sprintf("%s 使用异常:%s", productName, Msg)
 			return nil, fmt.Sprintf("%s 使用异常:%s", productName, Msg)
 		}
 		}
@@ -49,27 +48,29 @@ func (this *BaskPack) ConsumePack() {
 }
 }
 
 
 //“包”的使用记录
 //“包”的使用记录
-func (this *BaskPack) RecordList() {
+func (this *ResourcePack) RecordList() {
 	userId, _ := this.GetSession("userId").(string)
 	userId, _ := this.GetSession("userId").(string)
 	productName := this.GetString("productName")
 	productName := this.GetString("productName")
 	rData, errMsg := func() (interface{}, error) {
 	rData, errMsg := func() (interface{}, error) {
 		pageSize, _ := this.GetInteger("pageSize")
 		pageSize, _ := this.GetInteger("pageSize")
 		pageNum, _ := this.GetInteger("pageNum")
 		pageNum, _ := this.GetInteger("pageNum")
-		year, _ := this.GetInteger("year")
-		month, _ := this.GetInteger("month")
+		queryTime := this.GetString("queryTime")
 		platform := this.GetString("platform")
 		platform := this.GetString("platform")
+		if this.Method() != "POST" {
+			return "请求方式有误", nil
+		}
+		if productName == "" || platform == "" {
+			return "参数有误", nil
+		}
 		vipMsg := jy.GetBigVipUserBaseMsg(userId, util.Mysql, util.MQFW)
 		vipMsg := jy.GetBigVipUserBaseMsg(userId, util.Mysql, util.MQFW)
 		if vipMsg.VipStatus <= 0 {
 		if vipMsg.VipStatus <= 0 {
 			return "无权限,请联系管理员", nil
 			return "无权限,请联系管理员", nil
 		}
 		}
-		if month == 0 {
-			month = jy.GetMonth(time.Now().Month().String())
-		}
-		if year == 0 {
-			year = time.Now().Year()
+		if queryTime == "" {
+			queryTime = time.Now().Format("2006-01")
 		}
 		}
 		total := 0
 		total := 0
-		returnList, total, err := entity.GetNewJyBaskPack(userId, productName, platform, month, year, pageNum, pageSize, 0, nil).GetBaseRecordList()
+		returnList, total, err := entity.JyFindRecordPack(userId, productName, queryTime, platform, pageSize, pageNum)
 		if err != nil {
 		if err != nil {
 			return nil, err
 			return nil, err
 		}
 		}

+ 4 - 2
src/jfw/modules/subscribepay/src/service/resourcePack.go

@@ -23,6 +23,8 @@ type ResourcePack struct {
 	tes         xweb.Mapper `xweb:"/tes"`                      //测试
 	tes         xweb.Mapper `xweb:"/tes"`                      //测试
 	createOrder xweb.Mapper `xweb:"/resourcePack/createOrder"` //线上自助数据包充值-创建订单
 	createOrder xweb.Mapper `xweb:"/resourcePack/createOrder"` //线上自助数据包充值-创建订单
 	account     xweb.Mapper `xweb:"/resourcePack/account"`     //个人账户
 	account     xweb.Mapper `xweb:"/resourcePack/account"`     //个人账户
+	recordList  xweb.Mapper `xweb:"/resourcePack/recordList"`  //“资源包”使用记录
+	consumePack xweb.Mapper `xweb:"/resourcePack/consumePack"` //“资源包”消费
 }
 }
 
 
 const (
 const (
@@ -31,7 +33,7 @@ const (
 
 
 func (this *ResourcePack) Tes() {
 func (this *ResourcePack) Tes() {
 	userId := qu.ObjToString(this.GetSession("userId"))
 	userId := qu.ObjToString(this.GetSession("userId"))
-	a, b, c := entity.InitFindRecord(userId, entity.ATTACHMENT, "2022-01", 10, 1, 0).FindBalance()
+	a, b, c := entity.InitFindRecord(userId, entity.ATTACHMENT, "2022-01", "PC", 10, 1, 0).FindBalance()
 	this.ServeJson(map[string]interface{}{
 	this.ServeJson(map[string]interface{}{
 		"a": a,
 		"a": a,
 		"b": b,
 		"b": b,
@@ -39,7 +41,7 @@ func (this *ResourcePack) Tes() {
 	})
 	})
 	//
 	//
 	qwewqe := []string{}
 	qwewqe := []string{}
-	q := entity.InitUseBalance(userId, entity.ATTACHMENT, entity.ATTACHMENT, "", "", qwewqe, map[string]interface{}{"remark": 1}, 1)
+	q := entity.InitUseBalance(userId, entity.ATTACHMENT, entity.ATTACHMENT, "", "", qwewqe, map[string]interface{}{"remark": 1}, 1, "PC")
 	r, errss := q.UseBalance()
 	r, errss := q.UseBalance()
 	log.Println(r, errss)
 	log.Println(r, errss)
 }
 }