Przeglądaj źródła

Merge branch 'sess_0306' of 121.43.114.153:/home/git/repositories/shopnc into sess_0306

stanley-king 9 lat temu
rodzic
commit
0e0a565c76

+ 0 - 8
.idea/Z.iml

@@ -1,8 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<module type="WEB_MODULE" version="4">
-  <component name="NewModuleRootManager">
-    <content url="file://Z:/" />
-    <orderEntry type="inheritedJdk" />
-    <orderEntry type="sourceFolder" forTests="false" />
-  </component>
-</module>

+ 9 - 0
.idea/codeStyleSettings.xml

@@ -0,0 +1,9 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<project version="4">
+  <component name="ProjectCodeStyleSettingsManager">
+    <option name="PER_PROJECT_SETTINGS">
+      <value />
+    </option>
+    <option name="PREFERRED_PROJECT_CODE_STYLE" value="12" />
+  </component>
+</project>

+ 0 - 8
.idea/modules.xml

@@ -1,8 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<project version="4">
-  <component name="ProjectModuleManager">
-    <modules>
-      <module fileurl="file://Z:/.idea/Z.iml" filepath="Z:/.idea/Z.iml" />
-    </modules>
-  </component>
-</project>

Plik diff jest za duży
+ 497 - 438
data/model/refund_return.model.php


+ 59 - 16
helper/umeng.php

@@ -19,6 +19,19 @@ class msg_type extends SplEnum
     const file_id = "file_id";
 }
 
+class status_code extends SplEnum
+{
+    const __default = self::OK;
+    const OK = 200;
+    const CREATED = 201;
+    const ACCEPTED = 202;
+    const BAD_REQUEST = 400;
+    const UNAUTHORIZED = 401;
+    const FORBIDDEN = 403;
+    const NOT_FOUND = 404;
+    const INTERNAL_SERVICE_ERROR = 500;
+}
+
 class display_type extends SplEnum
 {
     const __default = self::notification;
@@ -26,19 +39,40 @@ class display_type extends SplEnum
     const message = "message";
 }
 
-
+/**
+ * Class upush
+ *
+ * 友盟推送内容
+ */
 class upush
 {
     const PUSH_URL = "http://msg.umeng.com/api/send";
-    const METHOD = "POST";
     const APP_MASTER_SECRET = "r6w2a8z9x8zonh7qmk8ds2fvypu02wpj";
     const APPKEY = "5631efd4e0f55a8770000027";
 
+    private $type;
+    private $alias_type;
+    private $alias;
+    private $ticker;
+    private $title;
+    private $text;
+
+
     public function __construct()
     {
+        $type = msg_type::unicast;
+        $ticker = "ticker";
+        $title = "title";
+        $text = "text";
     }
 
-    // post 请求发送
+    /**
+     * post发送数据
+     *
+     * @param $url
+     * @param $data_string
+     * @return array
+     */
     public function http_post_data($url, $data_string)
     {
         $ch = curl_init();
@@ -57,13 +91,27 @@ class upush
         return array($return_code, $return_content);
     }
 
+    /**
+     * 生成签名
+     *
+     * @param $http_method
+     * @param $url
+     * @param $post_body
+     * @param $app_master_secret
+     * @return string
+     */
+    private function make_sign($http_method, $url, $post_body, $app_master_secret)
+    {
+        return strtolower(md5($http_method . $url . json_encode($post_body) . self::APP_MASTER_SECRET));
+    }
+
     // android 打包
     private function android_pack()
     {
         $pack = array();
-        $pack['appkey'] = "5631efd4e0f55a8770000027";
+        $pack['appkey'] = self::APPKEY;
         $pack['timestamp'] = time();
-        $pack['type'] = msg_type::unicast;
+        $pack['type'] = $this->type;
         $pack['device_tokens'] = "Aj9AympPsCha5zmPhrV0DbnOZJYF0pqKY5jdKvFy_Hbu";
         $pack['alias_type'] = "";
         $pack['alias'] = "";
@@ -71,9 +119,9 @@ class upush
         $pack['filter'] = "";
         $payload = array();
         $body = array();
-        $body['ticker'] = "通知栏提示文字";
-        $body['title'] = "通知图标";
-        $body['text'] = "通知文字描述";
+        $body['ticker'] = $this->ticker;
+        $body['title'] = $this->title;
+        $body['text'] = $this->text;
         $body['icon'] = "";
         $body['largeIcon'] = "";
         $body['img'] = "";
@@ -114,19 +162,14 @@ class upush
     // ios 打包
     private function ios_pack()
     {
-
-    }
-
-    private function make_sign(){
-
-        return strtolower(md5(self::METHOD.self::PUSH_URL.json_encode(self::android_pack()).self::APP_MASTER_SECRET));
     }
 
     // android 推送
     public function android_push()
     {
-//        $sign = strtolower(md5(self::METHOD.self::PUSH_URL.self::android_pack().self::APP_MASTER_SECRET,false));
-        return $this->http_post_data(self::PUSH_URL.'?sign='.$this->make_sign(), json_encode(self::android_pack()));
+        $pack_body = self::android_pack();
+        $url = self::PUSH_URL . '?sign=' . self::make_sign("POST", self::PUSH_URL, $pack_body, self::APP_MASTER_SECRET);
+        return $this->http_post_data($url, json_encode($pack_body));
     }
 
     // ios 推送

+ 60 - 27
mobile/control/member_refund.php

@@ -13,10 +13,10 @@
 defined('InShopNC') or exit('Access Invalid!');
 
 
-
 class member_refundControl extends mbMemberControl
 {
-    static private $refund_type = array('1','2');
+    static private $refund_type = array('1', '2');
+
     public function __construct()
     {
         parent::__construct();
@@ -37,11 +37,12 @@ class member_refundControl extends mbMemberControl
         $order = $model_refund->getRightOrderList(array('buyer_id' => $_SESSION['member_id'], 'order_id' => $order_id));
 
         $order_amount = $order['order_amount'];//订单金额
-        $condition = array(); {
+        $condition = array();
+        {
             $condition['buyer_id'] = $order['buyer_id'];
             $condition['order_id'] = $order['order_id'];
             $condition['goods_id'] = '0';
-            $condition['seller_state'] = array('lt','3'); //状态:1为待审核,2为同意,3为不同意
+            $condition['seller_state'] = array('lt', '3'); //状态:1为待审核,2为同意,3为不同意
         }
 
         $refund_list = $model_refund->getRefundReturnList($condition);
@@ -53,7 +54,7 @@ class member_refundControl extends mbMemberControl
         $order_paid = $model_trade->getOrderState('order_paid');//订单状态20:已付款
         $payment_code = $order['payment_code'];//支付方式
         if ($refund['refund_id'] > 0 || $order['order_state'] != $order_paid || $payment_code == 'offline') {//检查订单状态,防止页面刷新不及时造成数据错误
-            return self::outerr(errcode::ErrOrderState,"只有付完款尚未发货的时才能退款。");
+            return self::outerr(errcode::ErrOrderState, "只有付完款尚未发货的时才能退款。");
         }
 
         $refund_array = array();
@@ -72,13 +73,13 @@ class member_refundControl extends mbMemberControl
         $pic_array = array();
         $pic_array['buyer'] = array();
         $refund_array['pic_info'] = serialize($pic_array);
-        $state = $model_refund->addRefundReturn($refund_array,$order);
+        $state = $model_refund->addRefundReturn($refund_array, $order);
 
         if ($state) {
             $model_refund->editOrderLock($order_id);
             return self::outsuccess(array("ret" => 1));
         } else {
-            return self::outerr(errcode::ErrOrderRefundError,"退款失败.");
+            return self::outerr(errcode::ErrOrderRefundError, "退款失败.");
         }
     }
 
@@ -92,12 +93,16 @@ class member_refundControl extends mbMemberControl
         $order_id = intval($order_info['order_id']);
         $order_goods_id = intval($_GET['order_goods_id']);//订单商品表编号
         if ($order_id < 1 || $order_goods_id < 1) {       //参数验证
-            return self::outerr(errcode::ErrParamter,"商品参数错误.");
+            return self::outerr(errcode::ErrParamter, "商品参数错误.");
         }
 
         $model_refund = Model('refund_return');
         $condition = array();
-        $reason_list = $model_refund->getReasonList($condition);//退款退货原因
+        $reason_data = $model_refund->getReasonList($condition, '', '', 'reason_id,reason_info');//退款退货原因
+        foreach ($reason_data as $data) {
+            $reason_list[] = $data;
+        }
+        array_push($reason_list, array('reason_id' => 0, 'reason_info' => '其他'));
 
         $condition = array();
         $condition['buyer_id'] = $_SESSION['member_id'];
@@ -118,7 +123,7 @@ class member_refundControl extends mbMemberControl
         $condition['buyer_id'] = $order['buyer_id'];
         $condition['order_id'] = $order['order_id'];
         $condition['order_goods_id'] = $goods_id;
-        $condition['seller_state'] = array('lt','3');
+        $condition['seller_state'] = array('lt', '3');
         $refund_list = $model_refund->getRefundReturnList($condition);
         $refund = array();
         if (!empty($refund_list) && is_array($refund_list)) {
@@ -127,27 +132,27 @@ class member_refundControl extends mbMemberControl
         $refund_state = $model_refund->getRefundState($order);//根据订单状态判断是否可以退款退货
 
         if ($refund['refund_id'] > 0) {
-            return self::outerr(errcode::ErrOrderRefundError,"不能重复退货.");
+            return self::outerr(errcode::ErrOrderRefundError, "不能重复退货.");
         }
-        if($refund_state != 1) {
-            return self::outerr(errcode::ErrOrderState,'请确认订单状态,在已经付款后才能退款,已经发货后才能退货.');
+        if ($refund_state != 1) {
+            return self::outerr(errcode::ErrOrderState, '请确认订单状态,在已经付款后才能退款,已经发货后才能退货.');
         }
 
         $goods['goods_image'] = cthumb($goods['goods_image'], 360, $order_info['store_id']);
         $goods['order_goods_id'] = $order_goods_id;
 
-        return self::outsuccess(array('ret' => 1, 'reason_list' => $reason_list,'goods' => $goods));
+        return self::outsuccess(array('ret' => 1, 'reason_list' => (array)$reason_list, 'goods' => $goods));
     }
 
     //已经付款,未发货时退款,退货。只能单品退款
     public function add_refund_oneOp()
     {
-        if(!isset($_GET['refund_type']) || empty($_GET['refund_type'])
-            || !in_array($_GET['refund_type'],self::$refund_type))
-        {
-            return self::outerr(errcode::ErrParamter,"请使用正确的退款类型,1:退款,2:退货.");
-        }
-        $refund_type = $_GET['refund_type'];
+        // if(!isset($_GET['refund_type']) || empty($_GET['refund_type'])
+        //     || !in_array($_GET['refund_type'],self::$refund_type))
+        // {
+        //    return self::outerr(errcode::ErrParamter,"请使用正确的退款类型,1:退款,2:退货.");
+        //}
+        //$refund_type = $_GET['refund_type'];
 
         $order_info = Model('order')->getOrderInfo(array('order_sn' => $_GET['order_sn']));
         if (empty($order_info)) {
@@ -156,7 +161,7 @@ class member_refundControl extends mbMemberControl
         $order_id = $order_info['order_id'];
         $order_goods_id = intval($_GET['order_goods_id']);//订单商品表编号
         if ($order_id < 1 || $order_goods_id < 1) {       //参数验证
-            return self::outerr(errcode::ErrParamter,"商品参数错误.");
+            return self::outerr(errcode::ErrParamter, "商品参数错误.");
         }
         $buyer_msg = isset($_GET['buyer_msg']) ? $_GET['buyer_msg'] : '';
 
@@ -193,7 +198,7 @@ class member_refundControl extends mbMemberControl
         $condition['buyer_id'] = $order['buyer_id'];
         $condition['order_id'] = $order['order_id'];
         $condition['order_goods_id'] = $goods_id;
-        $condition['seller_state'] = array('lt','3');
+        $condition['seller_state'] = array('lt', '3');
         $refund_list = $model_refund->getRefundReturnList($condition);
         $refund = array();
         if (!empty($refund_list) && is_array($refund_list)) {
@@ -222,7 +227,7 @@ class member_refundControl extends mbMemberControl
         if ($order['order_state'] == $order_shipped) {
             $refund_array['order_lock'] = '2';//锁定类型:1为不用锁定,2为需要锁定
         }
-        $refund_array['refund_type'] = $refund_type;//类型:1为退款,2为退货
+        $refund_array['refund_type'] = 2;//类型:1为退款,2为退货
         $refund_array['return_type'] = '2';//退货类型:1为不用退货,2为需要退货
         if ($refund_array['refund_type'] != '2') {
             $refund_array['refund_type'] = '1';
@@ -233,16 +238,44 @@ class member_refundControl extends mbMemberControl
         $refund_array['goods_num'] = $goods_num;
         $refund_array['buyer_message'] = $buyer_msg;
         $refund_array['add_time'] = time();
-        $state = $model_refund->addRefundReturn($refund_array,$order,$goods);
+        $state = $model_refund->addRefundReturn($refund_array, $order, $goods);
 
-        if ($state)
-        {
+        if ($state) {
             if ($order['order_state'] == $order_shipped) {
                 $model_refund->editOrderLock($order_id);
             }
             return self::outsuccess(array('ret' => 1));
         } else {
-            return self::outerr(errcode::ErrOrderRefundError,"退货失败.");
+            return self::outerr(errcode::ErrOrderRefundError, "退货失败.");
         }
     }
+
+    /**
+     * 退款或退货退款记录详情
+     */
+    public function refund_viewOp()
+    {
+        if (!isset($_GET['refund_id']) || empty($_GET['refund_id'])) {
+            return self::outerr(errcode::ErrParamter, "记录参数有误");
+        }
+        $model_refund = Model('refund_return');
+        $condition = array();
+        $condition['buyer_id'] = $_SESSION['member_id'];
+        $condition['refund_id'] = intval($_GET['refund_id']);
+        $refund_fields = 'refund_id,order_id,order_sn,order_goods_id,add_time,refund_type,return_type,seller_time,ship_time,admin_time';
+        $refund_list = $model_refund->getRefundReturnList($condition, '', $refund_fields);
+        $refund = $refund_list[0];
+        $refund['refund_state'] = $model_refund->getRefundStatueApp($refund);
+        unset($refund['return_type']);
+        unset($refund['seller_time']);
+        unset($refund['ship_time']);
+        unset($refund['admin_time']);
+        $model_order = Model('order');
+        $condition = array();
+        $condition['order_id'] = $refund['order_id'];
+        $condition['rec_id'] = $refund['order_goods_id'];
+        $good_fields = 'goods_id,goods_name,goods_price,goods_num,goods_image,goods_pay_price,goods_type,commis_rate,gc_id,goods_spec';
+        $refund['good_list'] = $model_order->getOrderGoodsList($condition, $good_fields);
+        return self::outsuccess(array('refund' => $refund));
+    }
 }