From e7b143ab57bdb14e2d363b691c2c31490144e740 Mon Sep 17 00:00:00 2001
From: guosheng <gs@bronet.cn>
Date: Mon, 25 Nov 2019 10:47:01 +0800
Subject: [PATCH] 修改视频购买次数

---
 .idea/workspace.xml                | 52 ++++++++++++++++++++++++++++++----------------------
 application/api/controller/Pay.php | 23 +++++++++++++++++++++++
 2 files changed, 53 insertions(+), 22 deletions(-)

diff --git a/.idea/workspace.xml b/.idea/workspace.xml
index bca4bab..47ccd31 100644
--- a/.idea/workspace.xml
+++ b/.idea/workspace.xml
@@ -2,8 +2,8 @@
 <project version="4">
   <component name="ChangeListManager">
     <list default="true" id="e93f11c2-a7d9-4d35-8b1c-8dd18e7f5fef" name="Default" comment="">
+      <change type="MODIFICATION" beforePath="$PROJECT_DIR$/.idea/workspace.xml" afterPath="$PROJECT_DIR$/.idea/workspace.xml" />
       <change type="MODIFICATION" beforePath="$PROJECT_DIR$/application/api/controller/Pay.php" afterPath="$PROJECT_DIR$/application/api/controller/Pay.php" />
-      <change type="MODIFICATION" beforePath="$PROJECT_DIR$/application/api/controller/User.php" afterPath="$PROJECT_DIR$/application/api/controller/User.php" />
     </list>
     <option name="EXCLUDED_CONVERTED_TO_IGNORED" value="true" />
     <option name="TRACKING_ENABLED" value="true" />
@@ -81,8 +81,8 @@
       <file leaf-file-name="Pay.php" pinned="false" current-in-tab="true">
         <entry file="file://$PROJECT_DIR$/application/api/controller/Pay.php">
           <provider selected="true" editor-type-id="text-editor">
-            <state relative-caret-position="549">
-              <caret line="502" column="21" lean-forward="false" selection-start-line="502" selection-start-column="21" selection-end-line="502" selection-end-column="21" />
+            <state relative-caret-position="475">
+              <caret line="138" column="5" lean-forward="true" selection-start-line="138" selection-start-column="5" selection-end-line="138" selection-end-column="5" />
               <folding>
                 <element signature="e#450#569#0#PHP" expanded="false" />
                 <element signature="e#575#888#0#PHP" expanded="false" />
@@ -90,12 +90,16 @@
                 <element signature="e#2944#3264#0#PHP" expanded="false" />
                 <element signature="e#3269#5320#0#PHP" expanded="false" />
                 <element signature="e#5326#5744#0#PHP" expanded="false" />
-                <element signature="e#9966#10386#0#PHP" expanded="false" />
-                <element signature="e#10391#14250#0#PHP" expanded="false" />
-                <element signature="e#14277#17979#0#PHP" expanded="false" />
-                <element signature="e#18009#20953#0#PHP" expanded="false" />
-                <element signature="e#22268#23101#0#PHP" expanded="false" />
-                <element signature="e#23124#23341#0#PHP" expanded="false" />
+                <element signature="e#5749#10343#0#PHP" expanded="false" />
+                <element signature="e#8532#10276#0#PHP" expanded="false" />
+                <element signature="e#10349#10769#0#PHP" expanded="false" />
+                <element signature="e#10774#15443#0#PHP" expanded="false" />
+                <element signature="e#13629#15375#0#PHP" expanded="false" />
+                <element signature="e#15470#19172#0#PHP" expanded="false" />
+                <element signature="e#19202#22146#0#PHP" expanded="false" />
+                <element signature="e#22175#23432#0#PHP" expanded="false" />
+                <element signature="e#23461#24747#0#PHP" expanded="false" />
+                <element signature="e#24770#24987#0#PHP" expanded="false" />
               </folding>
             </state>
           </provider>
@@ -175,8 +179,8 @@
   </component>
   <component name="PhpWorkspaceProjectConfiguration" backward_compatibility_performed="true" />
   <component name="ProjectFrameBounds" extendedState="1">
-    <option name="x" value="134" />
-    <option name="y" value="56" />
+    <option name="x" value="50" />
+    <option name="y" value="55" />
     <option name="width" value="1806" />
     <option name="height" value="972" />
   </component>
@@ -281,7 +285,7 @@
       <workItem from="1574382087071" duration="22007000" />
       <workItem from="1574410294356" duration="15863000" />
       <workItem from="1574469667436" duration="25235000" />
-      <workItem from="1574641631900" duration="5454000" />
+      <workItem from="1574641631900" duration="6361000" />
     </task>
     <task id="LOCAL-00001" summary="调试">
       <created>1574145133364</created>
@@ -294,7 +298,7 @@
     <servers />
   </component>
   <component name="TimeTrackingManager">
-    <option name="totallyTimeSpent" value="208499000" />
+    <option name="totallyTimeSpent" value="209406000" />
   </component>
   <component name="TodoView">
     <todo-panel id="selected-file">
@@ -306,7 +310,7 @@
     </todo-panel>
   </component>
   <component name="ToolWindowManager">
-    <frame x="134" y="56" width="1806" height="972" extended-state="1" />
+    <frame x="50" y="55" width="1806" height="972" extended-state="1" />
     <editor active="true" />
     <layout>
       <window_info id="Project" active="false" anchor="left" auto_hide="false" internal_type="DOCKED" type="DOCKED" visible="true" show_stripe_button="true" weight="0.1517755" sideWeight="0.5" order="1" side_tool="false" content_ui="combo" />
@@ -760,8 +764,8 @@
     </entry>
     <entry file="file://$PROJECT_DIR$/application/api/controller/Pay.php">
       <provider selected="true" editor-type-id="text-editor">
-        <state relative-caret-position="549">
-          <caret line="502" column="21" lean-forward="false" selection-start-line="502" selection-start-column="21" selection-end-line="502" selection-end-column="21" />
+        <state relative-caret-position="475">
+          <caret line="138" column="5" lean-forward="true" selection-start-line="138" selection-start-column="5" selection-end-line="138" selection-end-column="5" />
           <folding>
             <element signature="e#450#569#0#PHP" expanded="false" />
             <element signature="e#575#888#0#PHP" expanded="false" />
@@ -769,12 +773,16 @@
             <element signature="e#2944#3264#0#PHP" expanded="false" />
             <element signature="e#3269#5320#0#PHP" expanded="false" />
             <element signature="e#5326#5744#0#PHP" expanded="false" />
-            <element signature="e#9966#10386#0#PHP" expanded="false" />
-            <element signature="e#10391#14250#0#PHP" expanded="false" />
-            <element signature="e#14277#17979#0#PHP" expanded="false" />
-            <element signature="e#18009#20953#0#PHP" expanded="false" />
-            <element signature="e#22268#23101#0#PHP" expanded="false" />
-            <element signature="e#23124#23341#0#PHP" expanded="false" />
+            <element signature="e#5749#10343#0#PHP" expanded="false" />
+            <element signature="e#8532#10276#0#PHP" expanded="false" />
+            <element signature="e#10349#10769#0#PHP" expanded="false" />
+            <element signature="e#10774#15443#0#PHP" expanded="false" />
+            <element signature="e#13629#15375#0#PHP" expanded="false" />
+            <element signature="e#15470#19172#0#PHP" expanded="false" />
+            <element signature="e#19202#22146#0#PHP" expanded="false" />
+            <element signature="e#22175#23432#0#PHP" expanded="false" />
+            <element signature="e#23461#24747#0#PHP" expanded="false" />
+            <element signature="e#24770#24987#0#PHP" expanded="false" />
           </folding>
         </state>
       </provider>
diff --git a/application/api/controller/Pay.php b/application/api/controller/Pay.php
index dd78c94..63ac147 100644
--- a/application/api/controller/Pay.php
+++ b/application/api/controller/Pay.php
@@ -163,6 +163,7 @@ class Pay extends Api
             }
             $data = Db::name('order')->where('id',$order_id)->find();
             $pic_id = explode(',',$data['pic_id']);
+            $video_id = unserialize($data['video_id']);
             if($type == 1){
                 if($data){
                     if($data['status'] == 2){
@@ -182,6 +183,10 @@ class Pay extends Api
                                 $pic = Db::name('pic')->field('id,buy_num')->where('id',$v)->find();
                                 Db::name('pic')->where('id',$pic['id'])->update(['buy_num'=>$pic['buy_num']+1]);
                             }
+                            foreach ($video_id as $key => $val){
+                                $video = Db::name('video')->field('id,buy_num')->where('id',$val['id'])->find();
+                                Db::name('video')->where('id',$video['id'])->update(['buy_num'=>$video['buy_num']+1]);
+                            }
                             $arr = Db::name('user')->where('id',$data['user_id'])->update(['money'=>$money]);
                             $res = Db::name('order')->where('id',$order_id)->update(['status'=>2,'paytime'=>time()]);
                             if($res && $arr){
@@ -258,6 +263,9 @@ class Pay extends Api
             if(empty($openid)){
                 $this->error(['code'=>2,'msg'=>'openid不能为空']);
             }
+            $data = Db::name('order')->where('id',$order_id)->find();
+            $pic_id = explode(',',$data['pic_id']);
+            $video_id = unserialize($data['video_id']);
             $type = $this->request->post('type');
             if(empty($type)){
                 $this->error(['code'=>2,'msg'=>'缺少必要参数']);
@@ -278,6 +286,14 @@ class Pay extends Api
                         // 启动事务
                         Db::startTrans();
                         try{
+                            foreach ($pic_id as $key => $v){
+                                $pic = Db::name('pic')->field('id,buy_num')->where('id',$v)->find();
+                                Db::name('pic')->where('id',$pic['id'])->update(['buy_num'=>$pic['buy_num']+1]);
+                            }
+                            foreach ($video_id as $key => $val){
+                                $video = Db::name('video')->field('id,buy_num')->where('id',$val['id'])->find();
+                                Db::name('video')->where('id',$video['id'])->update(['buy_num'=>$video['buy_num']+1]);
+                            }
                             $arr = Db::name('user')->where('id',$data['user_id'])->update(['money'=>$money]);
                             $res = Db::name('order')->where('id',$order_id)->update(['status'=>2,'paytime'=>time()]);
                             if($res && $arr){
@@ -525,6 +541,13 @@ class Pay extends Api
                     //支付成功,更新订单状态
                     $toporder['status'] = 2;
                     $toporder['paytime'] = time();
+
+                    $data = Db::name('order')->where('id',$message['out_trade_no'])->find();
+                    $video_id = unserialize($data['video_id']);
+                    foreach ($video_id as $key => $val){
+                        $video = Db::name('video')->field('id,buy_num')->where('id',$val['id'])->find();
+                        Db::name('video')->where('id',$video['id'])->update(['buy_num'=>$video['buy_num']+1]);
+                    }
                 }else{
                     //支付失败
                     $toporder['status'] = 1;
--
libgit2 0.24.0