Exemple #1
0
        public Respbase <OpenInfUeoDto> BuySvc(BuyReq req)
        {
            CZMFacade facade = new CZMFacade();
            var       result = facade.BuySvc(req);

            return(new Respbase <OpenInfUeoDto> {
                Result = facade.PromptInfo.Result, Message = facade.PromptInfo.Message, Data = result
            });
        }
        public Respbase <Pingpp.Models.Charge> Recharge(RechargeReq req)
        {
            var facade = new CZMFacade();
            var result = facade.BuyUV(req);

            return(new Respbase <Pingpp.Models.Charge>()
            {
                Data = result, Message = facade.PromptInfo.Message, Result = facade.PromptInfo.Result
            });
        }
Exemple #3
0
        public Respbase CancelRelease(CancelReleaseReq req)
        {
            CZMFacade facade = new CZMFacade();

            if (!facade.CancelRelease(req))
            {
                return(new Respbase {
                    Result = -1, Message = "失败"
                });
            }
            return(new Respbase {
                Result = 1, Message = "成功"
            });
        }
Exemple #4
0
        public Respbase BuySvcCode(BuySvcCodeReq req)
        {
            CZMFacade facade = new CZMFacade();

            if (!facade.BuySvcCode(req))
            {
                return(new Respbase {
                    Result = -1, Message = "失败"
                });
            }
            return(new Respbase {
                Result = 1, Message = "成功"
            });
        }
Exemple #5
0
        public Respbase FrozenSvc(FrozenSvcReq req)
        {
            CZMFacade facade = new CZMFacade();

            if (!facade.FrozenSvc(req))
            {
                return(new Respbase {
                    Result = -1, Message = "失败"
                });
            }
            return(new Respbase {
                Result = 1, Message = "成功"
            });
        }
Exemple #6
0
        public Respbase RecoverySvc(RecoveryReq req)
        {
            CZMFacade facade = new CZMFacade();
            var       result = facade.RecoverySvc(req);

            if (result)
            {
                return(new Respbase {
                    Result = 1, Message = "成功"
                });
            }
            return(new Respbase {
                Result = facade.PromptInfo.Result, Message = facade.PromptInfo.Message
            });
        }
Exemple #7
0
        public Respbase <List <SvcByGroupbyAmountDto> > GetSvcByGroupbyAmount(SvcByGroupbyAmountReq req)
        {
            CZMFacade facade = new CZMFacade();
            var       result = facade.GetSvcByGroupbyAmount(req);

            if (result != null)
            {
                return(new Respbase <List <SvcByGroupbyAmountDto> > {
                    Result = 1, Message = "获取成功", Data = result
                });
            }
            return(new Respbase <List <SvcByGroupbyAmountDto> > {
                Result = facade.PromptInfo.Result, Message = facade.PromptInfo.Message, Data = null
            });
        }
Exemple #8
0
        public Respbase Success(SuccessReq req)
        {
            CZMFacade facade = new CZMFacade();

            if (!facade.PingppPaySuccess_SVC(req.Orderno))
            {
                return(new Respbase <SVUserInfoDto> {
                    Result = -1, Message = "失败"
                });
            }

            return(new Respbase <SVUserInfoDto> {
                Result = 1, Message = "成功"
            });
        }
Exemple #9
0
        public Respbase <List <ConfigList> > GetSvcConfig(Reqbase req)
        {
            CZMFacade facade = new CZMFacade();
            var       result = facade.GetSvcConfig(req);

            if (result != null)
            {
                return(new Respbase <List <ConfigList> > {
                    Result = 1, Message = "成功", Data = result
                });
            }
            return(new Respbase <List <ConfigList> > {
                Result = facade.PromptInfo.Result, Message = facade.PromptInfo.Message, Data = null
            });
        }
Exemple #10
0
        public Respbase <SVUserInfoDto> GetUserInfo(SVUserInfoReq req)
        {
            CZMFacade facade = new CZMFacade();
            var       result = facade.GetUserInfo(req);

            if (result != null)
            {
                return(new Respbase <SVUserInfoDto> {
                    Result = 1, Message = "获取成功", Data = result
                });
            }
            return(new Respbase <SVUserInfoDto> {
                Result = facade.PromptInfo.Result, Message = facade.PromptInfo.Message, Data = null
            });
        }
Exemple #11
0
        public Respbase <SvcStatisDto> GetMySvcStatis(Reqbase req)
        {
            CZMFacade facade = new CZMFacade();
            var       result = facade.GetMySvcStatis(req);

            if (result != null)
            {
                return(new Respbase <SvcStatisDto> {
                    Result = 1, Message = "获取成功", Data = result
                });
            }
            return(new Respbase <SvcStatisDto> {
                Result = facade.PromptInfo.Result, Message = facade.PromptInfo.Message, Data = null
            });
        }
Exemple #12
0
        public Respbase SvToSvcCard(SvToSvcCardReq req)
        {
            CZMFacade facade = new CZMFacade();
            var       result = facade.SvToSvcCard(req);

            if (result)
            {
                return(new Respbase {
                    Result = 1, Message = "成功"
                });
            }
            return(new Respbase {
                Result = facade.PromptInfo.Result, Message = facade.PromptInfo.Message
            });
        }
Exemple #13
0
        public Respbase SvcToSvByOwner(UseByOwnerReq req)
        {
            CZMFacade facade = new CZMFacade();
            var       result = facade.SvcToSvByOwner(req);

            if (result)
            {
                return(new Respbase {
                    Result = 1, Message = facade.PromptInfo.Message
                });
            }
            return(new Respbase {
                Result = facade.PromptInfo.Result, Message = facade.PromptInfo.Message
            });
        }
Exemple #14
0
        public ActionResult Success()
        {
            if (Request.RequestType.ToUpper() == "POST")
            {
                JToken type     = null;
                string metadata = "";
                string orderno  = "";
                if (Request.Url.ToString().IndexOf("localhost") > 0)
                {
                    #region 测试注释
                    orderno  = Request["orderno"];
                    type     = "charge.succeeded";
                    metadata = Request["metadata"];
                    #endregion
                }
                else
                {
                    Log log = new Log("Webhooks");
                    log.Info("-----------------Ping++ 回调 Webhooks Begin-------------------------");

                    //获取 post 的 event对象
                    string inputData = ReadStream(Request.InputStream);
                    log.Info(inputData);
                    //获取 header 中的签名
                    string sig = Request.Headers.Get("x-pingplusplus-signature");
                    log.Info("----sig---:" + sig);

                    JObject jObject = JObject.Parse(inputData);
                    type = jObject.SelectToken("type");

                    log.Info("----type----:" + type.ToString());
                    log.Info("----order_no----:" + jObject.SelectToken("data.object.order_no").ToString());
                    log.Info("----metadata----:" + jObject.SelectToken("data.object.metadata.type").ToString());
                    string sid = string.Empty;
                    try
                    {
                        sid = jObject.SelectToken("data.object.metadata.sid").ToString();
                        log.Info("----metadata.sid----:" + sid);
                    }
                    catch
                    {
                    }

                    metadata = jObject.SelectToken("data.object.metadata.type").ToString();

                    orderno = jObject.SelectToken("data.object.order_no").ToString();

                    //公钥路径(请检查你的公钥 .pem 文件存放路径)
                    string path = Server.MapPath("/Key/key.pem");

                    //验证签名
                    string result = VerifySignedHash(inputData, sig, path);

                    log.Info("验证签名结果:" + result);

                    if (result != "verify success")
                    {
                        log.Info("pingpp验证签名失败,处理流程结束:" + inputData);
                        return(Content("Failed"));
                    }
                }

                if (type.ToString() == "charge.succeeded" || type.ToString() == "refund.succeeded")
                {
                    if (metadata.Equals("svc", StringComparison.OrdinalIgnoreCase))
                    {
                        CZMFacade facade = new CZMFacade();
                        if (!facade.PingppPaySuccess_SVC(orderno))
                        {
                            log.Info(facade.PromptInfo.ToString());
                            log.Info("--------购买SVC充值码支付失败-------");
                            Response.StatusCode = 500;
                            log.Info("-----------------Ping++ 回调 Webhooks End-------------------------");
                            return(Content("Failed"));
                        }
                        log.Info("--------购买SVC充值码支付成功-------");
                    }
                    else if (metadata.Equals("uvcharge", StringComparison.OrdinalIgnoreCase))
                    {
                        CZMFacade facade = new CZMFacade();
                        if (!facade.PingppPaySuccess_UV(orderno))
                        {
                            log.Info(facade.PromptInfo.ToString());
                            log.Info("--------购买UV充值码支付失败-------");
                            Response.StatusCode = 500;
                            log.Info("-----------------Ping++ 回调 Webhooks End-------------------------");
                            return(Content("Failed"));
                        }
                        log.Info("--------购买UV充值码支付成功-------");
                    }
                    else
                    {
                        log.Info(metadata + ",未知业务回调,没有处理");
                        Response.StatusCode = 500;
                        log.Info("-----------------Ping++ 回调 Webhooks End-------------------------");
                        return(Content("Failed"));
                    }
                    // TODO what you need do
                }
                else
                {
                    log.Info("--------支付失败-------");
                    log.Info("-----------------Ping++ 回调 Webhooks End-------------------------");
                    Response.StatusCode = 500;
                    return(Content("Failed"));
                }

                log.Info("-----------------Ping++ 回调 Webhooks End-------------------------");
                Response.StatusCode = 200;
                return(Content("ok"));
            }

            Response.StatusCode = 500;
            return(Content("Failed"));
        }