|
123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110 |
- package svc
-
- import (
- "applet/app/comm/e"
- "applet/app/comm/svc"
- "applet/app/comm/utils"
- "applet/app/store/md"
- "code.fnuoos.com/go_rely_warehouse/zyos_model.git/src/models"
- "github.com/gin-gonic/gin"
- "time"
- )
-
- func AlipayCallBack(c *gin.Context) {
- // 统一处理回调参数
- data, OrderType, _ := CheckAllCallbackParams(c)
- if data == nil {
- e.OutErr(c, e.ERR_INVALID_ARGS)
- return
- }
- c.Set("callback", data)
- CallBack(c, OrderType)
- }
- func MoneyOrderState(c *gin.Context) {
- var args map[string]string
- if err := c.ShouldBindJSON(&args); err != nil {
- e.OutErr(c, 200, e.ERR_INVALID_ARGS)
- return
- }
- var data models.CampTaskStoreUserAmountOrder
- svc.MasterDb(c).Where("oid=?", args["oid"]).Get(&data)
- if data.Id == 0 {
- e.OutErr(c, 400, e.NewErr(400, "订单不存在"))
- return
- }
- res := map[string]string{
- "state": utils.IntToStr(data.State),
- }
- e.OutSuc(c, res, nil)
- return
- }
- func MoneyOrderCreate(c *gin.Context) {
- var args map[string]string
- if err := c.ShouldBindJSON(&args); err != nil {
- e.OutErr(c, 200, e.ERR_INVALID_ARGS)
- return
- }
- if utils.StrToFloat64(args["money"]) <= 0 {
- e.OutErr(c, 400, e.NewErr(400, "金额不正确"))
- return
- }
- storeId := svc.GetCampStoreId(c)
- var ord = models.CampTaskStoreUserAmountOrder{
- Oid: utils.StrToInt64(utils.OrderUUID(storeId)),
- StoreId: storeId,
- Money: args["money"],
- CreateTime: time.Now(),
- PayChannel: 2,
- }
- _, err := svc.MasterDb(c).Insert(&ord)
- if err != nil {
- e.OutErr(c, 400, e.NewErr(400, "下单失败"))
- return
- }
- c.Set("page_url", "http://"+c.Request.Host+"/#/pay-state-page")
- var param = &md.AliPayPayParams{
- Subject: "预存款充值",
- Amount: args["money"],
- OrderType: "money",
- OrdId: utils.Int64ToStr(ord.Oid),
- }
- pcUrl, err := AlipayPc(c, param)
- if err != nil {
- e.OutErr(c, 400, e.NewErr(400, err.Error()))
- return
- }
- res := map[string]string{
- "oid": utils.Int64ToStr(ord.Oid),
- "url": pcUrl,
- }
-
- e.OutSuc(c, res, nil)
- return
- }
- func MoneyOrderList(c *gin.Context) {
- var args md.MoneyOrderList
- if err := c.ShouldBindJSON(&args); err != nil {
- e.OutErr(c, 200, e.ERR_INVALID_ARGS)
- return
- }
- storeId := svc.GetCampStoreId(c)
- list := make([]map[string]string, 0)
- var data = make([]models.CampTaskStoreUserAmountOrder, 0)
- sess := svc.MasterDb(c).Where("store_id=? and state=1", storeId)
- count, _ := sess.Limit(utils.StrToInt(args.Size), (utils.StrToInt(args.P)-1)*utils.StrToInt(args.Size)).OrderBy("id desc").FindAndCount(&data)
- for _, v := range data {
- tmp := map[string]string{
- "money": v.Money,
- "channel": "支付宝",
- "create_time": v.CreateTime.Format("2006-01-02 15:04:05"),
- "oid": utils.Int64ToStr(v.Oid),
- }
- list = append(list, tmp)
- }
- res := map[string]interface{}{
- "list": list,
- "total": count,
- }
- e.OutSuc(c, res, nil)
- return
- }
|