Charlie %!s(int64=9) %!d(string=hai) anos
pai
achega
aa359252a6

+ 66 - 4
www/protected/modules/o2o/controllers/UserController.php

@@ -9,9 +9,6 @@ class  UserController extends O2oBaseController{
     
     public function actionInfo(){
         $user_id = Yii::app()->getRequest()->getParam("user_id");
-        // 触宝电话用户处理
-        $from = Yii::app()->request->getParam('from', '');
-
 
         if(CommonFn::isMongoId($user_id)){
             $user = Service::factory('UserService')->getUser(new MongoId($user_id),false);
@@ -27,7 +24,6 @@ class  UserController extends O2oBaseController{
         }
     }
 
-
     //兑换码兑换优惠券
     public function actionExchangeCoupon(){
         $user_id = Yii::app()->getRequest()->getParam("user_id","");
@@ -76,4 +72,70 @@ class  UserController extends O2oBaseController{
         }
 
     }
+
+    //充值卡 支付
+    public function actionPayRecharge(){
+        $user_id = Yii::app()->getRequest()->getParam("user_id");
+        $pay_channel = Yii::app()->getRequest()->getParam("pay_channel");
+        $order_id = Yii::app()->getRequest()->getParam("order_id");
+        if(!$user_id || !$pay_channel || !$order_id || !CommonFn::isMongoId($order_id)){
+            CommonFn::requestAjax(false,CommonFn::getMessage('message','params_illegal'));
+        }
+        $user_obj = RUser::get(new MongoId($user_id));
+        $order = RechargeOrder::get(new MongoId($order_id));
+        if(!$order || !$user_obj){
+            CommonFn::requestAjax(false,CommonFn::getMessage('message','params_illegal'));
+        }
+        if($order && (string)$order->user != $user_id){
+            CommonFn::requestAjax(false,CommonFn::getMessage('message','params_illegal'));
+        }
+        if($order->charge_id){
+            CommonFn::requestAjax(false,'此订单已支付过',array('have_pay'=>1));
+        }
+
+        $str = '壹管家充值卡';
+        $amount = ceil($order->price*1000)/10;
+        $result = Service::factory('PayService')->Pay($pay_channel,$amount,(string)$order->_id,$str,$str,$user_obj->wx_pub_openid);
+        if($result === false){
+            CommonFn::requestAjax(false,'支付遇到点问题了,请稍候再试');
+        }else{
+            // 支付成功后用户余额/代金券  增加
+            //if (isset($user_obj->order_count)) {
+                //$user_obj->order_count += 1;
+            //}
+            $user_obj->save();
+            CommonFn::requestAjax(true,'success',json_decode($result),200,array();
+        }
+    }
+
+    //充值卡订单创建
+    public function actionAddRechargeorder(){
+        $user_id = Yii::app()->getRequest()->getParam("user_id");
+        $recharge_id = Yii::app()->getRequest()->getParam("recharge_id");
+
+        if(!$user_id||!$recharge_id){
+            CommonFn::requestAjax(false,CommonFn::getMessage('message','params_illegal'));
+        }
+        $user_obj = CommonFn::apigetObJ($user_id,'ZUser',CommonFn::getMessage('user','id_not_exist'),array(),201);
+
+        $recharge = Recharge::get(new MongoId($recharge_id));
+        if(!$recharge){
+            CommonFn::requestAjax(false,CommonFn::getMessage('message','params_illegal'));
+        }
+
+        $order = new RechargeOrder();
+        $order->time = time();
+
+        $order->price = $recharge->denomination;
+        $order->recharge = $recharge->_id;
+
+        $order->user = $user_obj->_id;
+
+        if($order->save()){
+            $data = ROrder::model()->parseRow($order);
+            CommonFn::requestAjax(true,CommonFn::getMessage('message','operation_success'),$data);
+        }else{
+            CommonFn::requestAjax(true,'未知错误,请稍候再试',array());
+        }
+    }
 }

+ 3 - 0
www/protected/modules/o2o/models/Recharge.php

@@ -16,6 +16,8 @@ class Recharge extends MongoAr
 
     public $cash_back;//返现的金额
 
+    public $desc;//介绍
+
     public $status=1;//充值卡状态  1 正常使用   0 暂停使用   -1 已删除
 
     public function __construct($scenario='insert'){
@@ -55,6 +57,7 @@ class Recharge extends MongoAr
         $newRow['id'] = (string)$row['_id'];
         $newRow['denomination'] = CommonFn::get_val_if_isset($row,'denomination',0);
         $newRow['cash_back'] = CommonFn::get_val_if_isset($row,'cash_back',0);
+        $newRow['desc'] = CommonFn::get_val_if_isset($row,'desc','');
 
         $coupons = array();
         if(isset($row['coupons'])&&is_array($row['coupons'])&&!empty($row['coupons'])){

+ 55 - 0
www/protected/modules/o2o/models/RechargeOrder.php

@@ -0,0 +1,55 @@
+<?php
+/**
+ * Created by PhpStorm.
+ * User: PHP
+ * Date: 2016/9/26
+ * Time: 11:57
+ * 充值卡 订单模型
+ */
+class RechargeOrder extends MongoAr
+{
+    public $_id;
+
+    public $user;//充值用户 mongoid
+
+    public $time;//充值时间
+
+    public $recharge;//充值卡  mongoid
+
+    public $charge_id;//ping++的chargeId,charge_id即为支付单号
+    public $pay_channel;//支付渠道
+
+    public $price;  //订单金额
+    public $status=0;//订单状态 0=>待支付  1=>已支付
+
+    public function __construct($scenario='insert'){
+        $this->setMongoDBComponent(Yii::app()->getComponent('mongodb_o2o'));
+        parent::__construct($scenario);
+    }
+
+    public static $status_option = array(
+        0 => array('name' => '待支付'),
+        1 => array('name' => '已支付'),
+    );
+
+    public static function model($className=__CLASS__)
+    {
+        return parent::model($className);
+    }
+
+    public function getCollectionName()
+    {
+        return 'recharge_order';
+    }
+
+    public static function get($_id) {
+        if(CommonFn::isMongoId($_id)){
+            $criteria = new EMongoCriteria();
+            $criteria->_id('==', $_id);
+            $model = self::model()->find($criteria);
+            return $model;
+        }else{
+            return false;
+        }
+    }
+}

+ 1 - 1
www/protected/services/PayService.php

@@ -7,7 +7,7 @@ require_once($path.'/vendors/pingpp/init.php');
 $api_key = Yii::app()->params['pingxx_api_key'];
 \Pingpp\Pingpp::setApiKey($api_key);
 class PayService extends Service{
-    public $app_id = 'app_PuvjDSirj18C4SeL';
+    public $app_id = 'app_DWzTOGyjD4eLGqfT';
     /**
      * @param $channel 第三方支付渠道,取值范围:
      * alipay:支付宝手机支付

+ 44 - 0
www/webapp/o2o/js/api.js

@@ -570,5 +570,49 @@ define(['config', 'base'], function(config, base) {
     });
   };
 
+  //创建充值卡订单
+	API.prototype.addRechargeorder = function(data, callback) {
+		var that = this;
+		$.signAjax({
+			url: config.apiPath + '/index.php?r=o2o/user/addRechargeorder',
+			data: data,
+			dataType: 'JSON',
+			success: function(res) {
+				that.isLoading = false;
+				if (callback) {
+					callback(res);
+				}
+			},
+			error: function(res) {
+				that.isLoading = false;
+				if (callback) {
+					callback(apiErrorResult);
+				}
+			}
+		});
+	};
+
+	//充值卡支付
+	API.prototype.payRecharge = function(data, callback) {
+		var that = this;
+		$.signAjax({
+			url: config.apiPath + '/index.php?r=o2o/user/payRecharge',
+			data: data,
+			dataType: 'JSON',
+			success: function(res) {
+				that.isLoading = false;
+				if (callback) {
+					callback(res);
+				}
+			},
+			error: function(res) {
+				that.isLoading = false;
+				if (callback) {
+					callback(apiErrorResult);
+				}
+			}
+		});
+	};
+
   return new API();
 })

+ 1 - 5
www/webapp/o2o/js/build/.cache/activities/cat.js

@@ -1,8 +1,4 @@
-<<<<<<< HEAD
-/*TMODJS:{"version":1,"md5":"9efdce7a7186728f819932cff6861b25"}*/
-=======
-/*TMODJS:{"version":1,"md5":"76d3210a0445aa14b80a2899ecd61f2c"}*/
->>>>>>> 6a8dc40e5b73c0033f48ec6511d8934fb74e8c42
+/*TMODJS:{"version":2,"md5":"5964da35399c610522126255640b3518"}*/
 template('activities/cat',function($data,$filename
 /**/) {
 'use strict';var $utils=this,$helpers=$utils.$helpers,showNavBar=$data.showNavBar,$escape=$utils.$escape,src=$data.src,$out='';if(showNavBar ){

A diferenza do arquivo foi suprimida porque é demasiado grande
+ 1 - 2
www/webapp/o2o/js/build/.cache/home/index.js


A diferenza do arquivo foi suprimida porque é demasiado grande
+ 0 - 374
www/webapp/o2o/js/build/template.js


+ 0 - 37
www/webapp/o2o/js/page/pay.js

@@ -28,42 +28,6 @@ define(['$', 'template', 'api', 'native', 'config', 'user'], function ($, templa
         var orderID = $view.data('orderID');
         var orderprice = $view.data('orderprice');
         var payChannel = $(this).attr('data-pay-channel');
-        if (config.isChubao) {
-          ctk.select({
-            tradeService: 'com.company.product', //服务商在触宝开放平台的标识,格式为com.公司.产品,用于获取优惠信息
-            totalFee: orderprice * 100, //支付的金额,单位为分
-            success: function(res) {
-              //用户点击支付页面支付按钮成功之后的回调函数
-              var tradeStr = res.tradeStr; //支付信息的字符串
-              ctk.show(); //获取加密字符串的同时显示加载提示,减少用户焦虑
-              api.getTradeStr({
-                from: 'chubao',
-                tradeStr: tradeStr,
-                user_id: user.id,
-                order_id: orderID
-              }, function(res) {
-                ctk.pay({
-                  payStr: res.data.payStr,
-                  finish: function(resCode) {
-                    ctk.dismiss();
-                    if (resCode == 4102) {
-                      $doc.trigger('spa:navigate', {
-                        hash: 'paySuccess'
-                      });
-                    } else {
-                      $doc.trigger('spa:openpanel', ['simpleAlert', {
-                        message: '支付失败'
-                      }]);
-                    }
-                  }
-                });
-              });
-            },
-            fail: function(res) {
-                //用户退出支付选择页面的回调函数
-            }
-          });
-        } else {
           if (config.isWX) {
             payChannel = 'wx_pub';
           }
@@ -99,7 +63,6 @@ define(['$', 'template', 'api', 'native', 'config', 'user'], function ($, templa
               }]);
             }
           });
-        }
       }, $view);
 
       //返回

Algúns arquivos non se mostraron porque demasiados arquivos cambiaron neste cambio