|
- package hdl
-
- import (
- "applet/app/admin/lib/validate"
- svc2 "applet/app/admin/svc/enterprise_manage"
- "applet/app/customer/md"
- "applet/app/customer/svc"
- "applet/app/db"
- "applet/app/db/model"
- "applet/app/e"
- "applet/app/enum"
- svc3 "applet/app/svc"
- "context"
- "github.com/chromedp/chromedp"
- "github.com/chromedp/chromedp/device"
- "github.com/gin-gonic/gin"
- "github.com/wechatpay-apiv3/wechatpay-go/core"
- "github.com/wechatpay-apiv3/wechatpay-go/services/certificates"
- "github.com/wechatpay-apiv3/wechatpay-go/services/partnerpayments/jsapi"
- "io/ioutil"
- "strconv"
- "time"
- )
-
- func CurlAlipayPlanetEcocampusApiRosterSignUpInfo(c *gin.Context) {
- var req md.CurlAlipayPlanetEcocampusApiRosterSignUpInfoReq
- err := c.ShouldBindJSON(&req)
- if err != nil {
- err = validate.HandleValidateErr(err)
- err1 := err.(e.E)
- e.OutErr(c, err1.Code, err1.Error())
- return
- }
- err, resp := svc.CurlAlipayPlanetEcocampusApiRosterSignUpInfo(req)
- if err != nil {
- e.OutErr(c, e.ERR, err.Error())
- return
- }
- e.OutSuc(c, resp, nil)
- return
- }
-
- func DownloadCertificates(c *gin.Context) {
- client, err := svc3.NewWxPayClient(c)
- if err != nil {
- e.OutErr(c, e.ERR, err.Error())
- return
- }
- // 发送请求,以下载微信支付平台证书为例
- apiSvc := certificates.CertificatesApiService{Client: client}
- resp, result, err := apiSvc.DownloadCertificates(c)
- if err != nil {
- e.OutErr(c, e.ERR, err.Error())
- return
- }
-
- println("status=%d resp=%s", result.Response.StatusCode, resp)
- e.OutSuc(c, map[string]interface{}{
- "resp": resp,
- }, nil)
- return
- }
-
- func WxPay(c *gin.Context) {
- client, err := svc3.NewWxPayClient(c)
- if err != nil {
- e.OutErr(c, e.ERR, err.Error())
- return
- }
- wxSvc := jsapi.JsapiApiService{Client: client}
- sysCfgDb := db.SysCfgDb{}
- sysCfgDb.Set()
- sysCfg := sysCfgDb.SysCfgFindWithDb(enum.WxSpAppId, enum.WxSpMchId, enum.WxAppletAppId, enum.WxMchId)
-
- resp, result, err := wxSvc.Prepay(c,
- jsapi.PrepayRequest{
- SpAppid: core.String(sysCfg[enum.WxSpAppId]),
- SpMchid: core.String(sysCfg[enum.WxSpMchId]),
- SubAppid: core.String(sysCfg[enum.WxAppletAppId]),
- SubMchid: core.String(sysCfg[enum.WxMchId]),
- Description: core.String("Image形象店-深圳腾大-QQ公仔"),
- OutTradeNo: core.String(strconv.FormatInt(time.Now().Unix(), 10)),
- TimeExpire: core.Time(time.Now()),
- Attach: core.String("自定义数据说明"),
- NotifyUrl: core.String("https://www.weixin.qq.com/wxpay/pay.php"),
- Amount: &jsapi.Amount{
- Currency: core.String("CNY"),
- Total: core.Int64(100),
- },
- Payer: &jsapi.Payer{
- //SpOpenid: core.String("oUpF8uMuAJO_M2pxb1Q9zNjWeS6o"),
- SubOpenid: core.String("o0mnM4nlX9W5HXbagffM9eTDHaPo"),
- },
- },
- )
- if err != nil {
- // 处理错误
- e.OutErr(c, e.ERR, err.Error())
- return
- } else {
- // 处理返回结果
- println("status=%d resp=%s", result.Response.StatusCode, resp)
- }
- return
- }
-
- func Demo(c *gin.Context) {
- sysCfgDb := db.SysCfgDb{}
- sysCfgDb.Set()
- sysCfg := sysCfgDb.SysCfgFindWithDb(enum.OpenAppletAppid, enum.OpenAppletAppPrivateKey, enum.OpenAppletPublicKey)
- err, info := svc.CurlEducateSceneTokenQueryV2(md.CurlEducateSceneTokenReq{
- Config: struct {
- AliAppId string `json:"ali_app_id" label:"支付宝开放平台-小程序-appid"`
- AliPrivateKey string `json:"ali_private_key" label:"支付宝开放平台-小程序-应用私钥"`
- AliPublicKey string `json:"ali_public_key" label:"支付宝开放平台-小程序-支付宝公钥"`
- }{
- AliAppId: sysCfg[enum.OpenAppletAppid],
- AliPrivateKey: sysCfg[enum.OpenAppletAppPrivateKey],
- AliPublicKey: sysCfg[enum.OpenAppletPublicKey],
- },
- CertType: "A",
- CertNo: "440881201010205523",
- StudentName: "龙佩滢",
- OutUserId: "1001",
- SchoolStdCode: "12440403MB2D752515",
- }, &model.UserIdentity{}, "", "")
- if err != nil {
- e.OutErr(c, e.ERR, err.Error())
- return
- }
- e.OutSuc(c, info, nil)
- return
- ordNo := c.DefaultQuery("ord_no", "")
- svc2.JudgePackageOrdOrdState(ordNo)
- e.OutSuc(c, nil, nil)
- return
- }
-
- func SanHu(c *gin.Context) { //实现网页截图
- url := c.DefaultQuery("url", "")
- if url == "" {
- e.OutErr(c, e.ERR_NO_DATA, "网址不能为空")
- return
- }
- ctx, cancel := chromedp.NewContext(context.Background())
- defer cancel()
- var b1, b2 []byte
- if err := chromedp.Run(ctx,
- // emulate iPhone 7 landscape
- chromedp.Emulate(device.IPhone8Plus),
- chromedp.Navigate(url),
- chromedp.CaptureScreenshot(&b1),
-
- // reset
- chromedp.Emulate(device.Reset),
-
- // set really large viewport
- chromedp.EmulateViewport(1920, 2000),
- chromedp.Navigate(url),
- chromedp.CaptureScreenshot(&b2),
- ); err != nil {
- e.OutErr(c, e.ERR, err.Error())
- return
- }
-
- if err := ioutil.WriteFile("./static/template/sanHu/IPhone8Plus.png", b1, 0777); err != nil {
- e.OutErr(c, e.ERR, err.Error())
- return
- }
- if err := ioutil.WriteFile("./static/template/sanHu/Pc.png", b2, 0777); err != nil {
- e.OutErr(c, e.ERR, err.Error())
- return
- }
- e.OutSuc(c, map[string]interface{}{
- "iphone8_plus": "https://zs.zehaochi.net/template/sanHu/IPhone8Plus.png",
- "Pc": "https://zs.zehaochi.net/template/sanHu/Pc.png",
- }, nil)
- return
- }
|