作者 郭盛
1 个管道 的构建 通过 耗费 7 秒

短信接口

... ... @@ -4,6 +4,7 @@
<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$/public/api.html" afterPath="$PROJECT_DIR$/public/api.html" />
</list>
<option name="EXCLUDED_CONVERTED_TO_IGNORED" value="true" />
<option name="TRACKING_ENABLED" value="true" />
... ... @@ -17,7 +18,7 @@
<file leaf-file-name="User.php" pinned="false" current-in-tab="false">
<entry file="file://$PROJECT_DIR$/application/api/controller/User.php">
<provider selected="true" editor-type-id="text-editor">
<state relative-caret-position="544">
<state relative-caret-position="614">
<caret line="1584" column="5" lean-forward="true" selection-start-line="1584" selection-start-column="5" selection-end-line="1584" selection-end-column="5" />
<folding>
<element signature="e#365#484#0#PHP" expanded="false" />
... ... @@ -92,34 +93,37 @@
<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="457">
<caret line="182" column="46" lean-forward="false" selection-start-line="182" selection-start-column="46" selection-end-line="182" selection-end-column="46" />
<state relative-caret-position="2214">
<caret line="720" column="25" lean-forward="true" selection-start-line="720" selection-start-column="25" selection-end-line="720" selection-end-column="25" />
<folding>
<element signature="e#450#569#0#PHP" expanded="false" />
<element signature="e#575#888#0#PHP" expanded="false" />
<element signature="e#893#2938#0#PHP" expanded="false" />
<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#9535#11279#0#PHP" expanded="false" />
<element signature="e#11352#11772#0#PHP" expanded="false" />
<element signature="e#11777#16446#0#PHP" expanded="false" />
<element signature="e#14632#16378#0#PHP" expanded="false" />
<element signature="e#16473#20175#0#PHP" expanded="false" />
<element signature="e#20205#23149#0#PHP" expanded="false" />
<element signature="e#23178#24435#0#PHP" expanded="false" />
<element signature="e#24464#25750#0#PHP" expanded="false" />
<element signature="e#25773#25990#0#PHP" expanded="false" />
<element signature="e#38#68#0#PHP" expanded="true" />
<element signature="e#472#591#0#PHP" expanded="false" />
<element signature="e#597#910#0#PHP" expanded="false" />
<element signature="e#915#2960#0#PHP" expanded="false" />
<element signature="e#2966#3286#0#PHP" expanded="false" />
<element signature="e#3291#5342#0#PHP" expanded="false" />
<element signature="e#5348#5766#0#PHP" expanded="false" />
<element signature="e#5771#12687#0#PHP" expanded="false" />
<element signature="e#10876#12620#0#PHP" expanded="false" />
<element signature="e#12704#13001#0#PHP" expanded="false" />
<element signature="e#13007#13402#0#PHP" expanded="false" />
<element signature="e#13408#13828#0#PHP" expanded="false" />
<element signature="e#13833#20820#0#PHP" expanded="false" />
<element signature="e#19006#20752#0#PHP" expanded="false" />
<element signature="e#20847#24549#0#PHP" expanded="false" />
<element signature="e#24579#27523#0#PHP" expanded="false" />
<element signature="e#27552#30975#0#PHP" expanded="false" />
<element signature="e#34764#34981#0#PHP" expanded="false" />
</folding>
</state>
</provider>
</entry>
</file>
<file leaf-file-name="verify.php" pinned="false" current-in-tab="false">
<entry file="file://$PROJECT_DIR$/application/extra/verify.php">
<file leaf-file-name="Backend.php" pinned="false" current-in-tab="false">
<entry file="file://$PROJECT_DIR$/application/common/controller/Backend.php">
<provider selected="true" editor-type-id="text-editor">
<state relative-caret-position="100">
<caret line="4" column="55" lean-forward="true" selection-start-line="4" selection-start-column="55" selection-end-line="4" selection-end-column="55" />
<state relative-caret-position="125">
<caret line="5" column="17" lean-forward="true" selection-start-line="5" selection-start-column="17" selection-end-line="5" selection-end-column="17" />
<folding />
</state>
</provider>
... ... @@ -186,6 +190,7 @@
<option value="$PROJECT_DIR$/application/admin/controller/Order.php" />
<option value="$PROJECT_DIR$/application/extra/verify.php" />
<option value="$PROJECT_DIR$/application/api/controller/User.php" />
<option value="$PROJECT_DIR$/application/nsms/nsms.php" />
<option value="$PROJECT_DIR$/application/api/controller/Pay.php" />
</list>
</option>
... ... @@ -204,11 +209,11 @@
<sorting>DEFINITION_ORDER</sorting>
</component>
<component name="PhpWorkspaceProjectConfiguration" backward_compatibility_performed="true" />
<component name="ProjectFrameBounds" extendedState="7">
<option name="x" value="-489" />
<option name="y" value="26" />
<option name="width" value="1938" />
<option name="height" value="966" />
<component name="ProjectFrameBounds" extendedState="1">
<option name="x" value="148" />
<option name="y" value="49" />
<option name="width" value="1776" />
<option name="height" value="1014" />
</component>
<component name="ProjectView">
<navigator currentView="ProjectPane" proportions="" version="1">
... ... @@ -241,20 +246,7 @@
<item name="areial" type="b2602c69:ProjectViewProjectNode" />
<item name="areial" type="2a2b976b:PhpTreeStructureProvider$1" />
<item name="application" type="2a2b976b:PhpTreeStructureProvider$1" />
<item name="api" type="2a2b976b:PhpTreeStructureProvider$1" />
</path>
<path>
<item name="areial" type="b2602c69:ProjectViewProjectNode" />
<item name="areial" type="2a2b976b:PhpTreeStructureProvider$1" />
<item name="application" type="2a2b976b:PhpTreeStructureProvider$1" />
<item name="api" type="2a2b976b:PhpTreeStructureProvider$1" />
<item name="controller" type="2a2b976b:PhpTreeStructureProvider$1" />
</path>
<path>
<item name="areial" type="b2602c69:ProjectViewProjectNode" />
<item name="areial" type="2a2b976b:PhpTreeStructureProvider$1" />
<item name="application" type="2a2b976b:PhpTreeStructureProvider$1" />
<item name="extra" type="2a2b976b:PhpTreeStructureProvider$1" />
<item name="nsms" type="2a2b976b:PhpTreeStructureProvider$1" />
</path>
</expand>
<select />
... ... @@ -269,16 +261,16 @@
<property name="last_opened_file_path" value="$PROJECT_DIR$/../project/zhaozhao" />
</component>
<component name="RecentsManager">
<key name="MoveFile.RECENT_KEYS">
<recent name="D:\htdocs\areial\public\uploads\20191118" />
<recent name="D:\htdocs\areial\public\uploads" />
</key>
<key name="CopyFile.RECENT_KEYS">
<recent name="D:\htdocs\areial\application" />
<recent name="D:\htdocs\areial\extend" />
<recent name="D:\htdocs\areial\public\uploads\20191118" />
<recent name="D:\htdocs\areial\vendor\overtrue\wechat\src" />
<recent name="D:\htdocs\areial\application\api\controller" />
<recent name="D:\htdocs\areial\public" />
<recent name="D:\htdocs\areial" />
</key>
<key name="MoveFile.RECENT_KEYS">
<recent name="D:\htdocs\areial\public\uploads\20191118" />
<recent name="D:\htdocs\areial\public\uploads" />
</key>
</component>
<component name="RunDashboard">
... ... @@ -318,7 +310,7 @@
<workItem from="1574469667436" duration="25235000" />
<workItem from="1574641631900" duration="15479000" />
<workItem from="1574669596135" duration="11747000" />
<workItem from="1574727687281" duration="10250000" />
<workItem from="1574727687281" duration="15410000" />
</task>
<task id="LOCAL-00001" summary="调试">
<created>1574145133364</created>
... ... @@ -331,7 +323,7 @@
<servers />
</component>
<component name="TimeTrackingManager">
<option name="totallyTimeSpent" value="240521000" />
<option name="totallyTimeSpent" value="245681000" />
</component>
<component name="TodoView">
<todo-panel id="selected-file">
... ... @@ -343,17 +335,16 @@
</todo-panel>
</component>
<component name="ToolWindowManager">
<frame x="-8" y="-8" width="1936" height="1056" extended-state="7" />
<editor active="true" />
<frame x="148" y="49" width="1776" height="1014" extended-state="1" />
<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.12953092" sideWeight="0.5" order="1" side_tool="false" content_ui="combo" />
<window_info id="Project" active="false" anchor="left" auto_hide="false" internal_type="DOCKED" type="DOCKED" visible="true" show_stripe_button="true" weight="0.14160839" sideWeight="0.5" order="1" side_tool="false" content_ui="combo" />
<window_info id="TODO" active="false" anchor="bottom" auto_hide="false" internal_type="DOCKED" type="DOCKED" visible="false" show_stripe_button="true" weight="0.32912987" sideWeight="0.5" order="9" side_tool="false" content_ui="tabs" />
<window_info id="Event Log" active="false" anchor="bottom" auto_hide="false" internal_type="DOCKED" type="DOCKED" visible="false" show_stripe_button="true" weight="0.33" sideWeight="0.5" order="0" side_tool="true" content_ui="tabs" />
<window_info id="Database" active="false" anchor="right" auto_hide="false" internal_type="DOCKED" type="DOCKED" visible="false" show_stripe_button="true" weight="0.33" sideWeight="0.5" order="0" side_tool="false" content_ui="tabs" />
<window_info id="Run" active="false" anchor="bottom" auto_hide="false" internal_type="DOCKED" type="DOCKED" visible="false" show_stripe_button="true" weight="0.33" sideWeight="0.5" order="5" side_tool="false" content_ui="tabs" />
<window_info id="Version Control" active="false" anchor="bottom" auto_hide="false" internal_type="DOCKED" type="DOCKED" visible="false" show_stripe_button="true" weight="0.33" sideWeight="0.5" order="1" side_tool="false" content_ui="tabs" />
<window_info id="Structure" active="false" anchor="left" auto_hide="false" internal_type="DOCKED" type="DOCKED" visible="false" show_stripe_button="true" weight="0.25" sideWeight="0.5" order="2" side_tool="false" content_ui="tabs" />
<window_info id="Terminal" active="false" anchor="bottom" auto_hide="false" internal_type="DOCKED" type="DOCKED" visible="false" show_stripe_button="true" weight="0.12948857" sideWeight="0.5" order="2" side_tool="false" content_ui="tabs" />
<window_info id="Terminal" active="true" anchor="bottom" auto_hide="false" internal_type="DOCKED" type="DOCKED" visible="true" show_stripe_button="true" weight="0.12884834" sideWeight="0.5" order="2" side_tool="false" content_ui="tabs" />
<window_info id="Debug" active="false" anchor="bottom" auto_hide="false" internal_type="DOCKED" type="DOCKED" visible="false" show_stripe_button="true" weight="0.4" sideWeight="0.5" order="6" side_tool="false" content_ui="tabs" />
<window_info id="Favorites" active="false" anchor="left" auto_hide="false" internal_type="DOCKED" type="DOCKED" visible="false" show_stripe_button="true" weight="0.33" sideWeight="0.5" order="0" side_tool="true" content_ui="tabs" />
<window_info id="Cvs" active="false" anchor="bottom" auto_hide="false" internal_type="DOCKED" type="DOCKED" visible="false" show_stripe_button="true" weight="0.25" sideWeight="0.5" order="7" side_tool="false" content_ui="tabs" />
... ... @@ -401,41 +392,6 @@
<watches-manager />
</component>
<component name="editorHistoryManager">
<entry file="file://$PROJECT_DIR$/application/common/library/Auth.php">
<provider selected="true" editor-type-id="text-editor">
<state relative-caret-position="585">
<caret line="105" column="38" lean-forward="true" selection-start-line="105" selection-start-column="38" selection-end-line="105" selection-end-column="38" />
<folding />
</state>
</provider>
</entry>
<entry file="file://$PROJECT_DIR$/application/api/controller/Demo.php" />
<entry file="file://$PROJECT_DIR$/application/api/controller/Ems.php" />
<entry file="file://$PROJECT_DIR$/application/api/controller/Index.php" />
<entry file="file://$PROJECT_DIR$/vendor/overtrue/wechat/composer.json">
<provider selected="true" editor-type-id="text-editor">
<state relative-caret-position="0">
<caret line="0" column="0" lean-forward="false" selection-start-line="0" selection-start-column="0" selection-end-line="0" selection-end-column="0" />
</state>
</provider>
</entry>
<entry file="file://$PROJECT_DIR$/vendor/overtrue/wechat/README.md">
<provider selected="true" editor-type-id="split-provider[text-editor;markdown-preview-editor]">
<state split_layout="SPLIT">
<first_editor relative-caret-position="-825">
<caret line="0" column="0" lean-forward="false" selection-start-line="0" selection-start-column="0" selection-end-line="0" selection-end-column="0" />
</first_editor>
<second_editor />
</state>
</provider>
</entry>
<entry file="file://$PROJECT_DIR$/composer.json">
<provider selected="true" editor-type-id="text-editor">
<state relative-caret-position="566">
<caret line="26" column="33" lean-forward="false" selection-start-line="26" selection-start-column="33" selection-end-line="26" selection-end-column="33" />
</state>
</provider>
</entry>
<entry file="file://$PROJECT_DIR$/vendor/overtrue/wechat/src/Factory.php">
<provider selected="true" editor-type-id="text-editor">
<state relative-caret-position="297">
... ... @@ -735,6 +691,14 @@
</state>
</provider>
</entry>
<entry file="file://$USER_HOME$/Desktop/Index.php">
<provider selected="true" editor-type-id="text-editor">
<state relative-caret-position="-17250">
<caret line="0" column="0" lean-forward="false" selection-start-line="0" selection-start-column="0" selection-end-line="0" selection-end-column="0" />
<folding />
</state>
</provider>
</entry>
<entry file="file://$PROJECT_DIR$/application/extra/verify.php">
<provider selected="true" editor-type-id="text-editor">
<state relative-caret-position="100">
... ... @@ -743,9 +707,33 @@
</state>
</provider>
</entry>
<entry file="file://$USER_HOME$/Desktop/助通短信平台账号/php_Nsms_demo.php">
<provider selected="true" editor-type-id="text-editor">
<state relative-caret-position="0">
<caret line="0" column="0" lean-forward="false" selection-start-line="0" selection-start-column="0" selection-end-line="0" selection-end-column="0" />
<folding />
</state>
</provider>
</entry>
<entry file="file://$USER_HOME$/Desktop/助通短信平台账号/php_HY_demo.php">
<provider selected="true" editor-type-id="text-editor">
<state relative-caret-position="-311">
<caret line="19" column="0" lean-forward="true" selection-start-line="19" selection-start-column="0" selection-end-line="19" selection-end-column="0" />
<folding />
</state>
</provider>
</entry>
<entry file="file://$USER_HOME$/Desktop/助通短信平台账号/PHP_G_DEMO.php">
<provider selected="true" editor-type-id="text-editor">
<state relative-caret-position="414">
<caret line="67" column="0" lean-forward="true" selection-start-line="67" selection-start-column="0" selection-end-line="67" selection-end-column="0" />
<folding />
</state>
</provider>
</entry>
<entry file="file://$PROJECT_DIR$/application/api/controller/User.php">
<provider selected="true" editor-type-id="text-editor">
<state relative-caret-position="544">
<state relative-caret-position="614">
<caret line="1584" column="5" lean-forward="true" selection-start-line="1584" selection-start-column="5" selection-end-line="1584" selection-end-column="5" />
<folding>
<element signature="e#365#484#0#PHP" expanded="false" />
... ... @@ -816,26 +804,57 @@
</state>
</provider>
</entry>
<entry file="file://$PROJECT_DIR$/extend/nsms/nsms.php">
<provider selected="true" editor-type-id="text-editor">
<state relative-caret-position="350">
<caret line="14" column="13" lean-forward="false" selection-start-line="14" selection-start-column="13" selection-end-line="14" selection-end-column="13" />
<folding />
</state>
</provider>
</entry>
<entry file="file://$PROJECT_DIR$/application/common/controller/Backend.php">
<provider selected="true" editor-type-id="text-editor">
<state relative-caret-position="125">
<caret line="5" column="17" lean-forward="true" selection-start-line="5" selection-start-column="17" selection-end-line="5" selection-end-column="17" />
<folding />
</state>
</provider>
</entry>
<entry file="file://$PROJECT_DIR$/application/nsms/nsms.php">
<provider selected="true" editor-type-id="text-editor">
<state relative-caret-position="388">
<caret line="61" column="20" lean-forward="false" selection-start-line="61" selection-start-column="20" selection-end-line="61" selection-end-column="20" />
<folding>
<element signature="e#294#455#0#PHP" expanded="false" />
<element signature="e#461#1049#0#PHP" expanded="false" />
<element signature="e#1055#2041#0#PHP" expanded="false" />
</folding>
</state>
</provider>
</entry>
<entry file="file://$PROJECT_DIR$/application/api/controller/Pay.php">
<provider selected="true" editor-type-id="text-editor">
<state relative-caret-position="457">
<caret line="182" column="46" lean-forward="false" selection-start-line="182" selection-start-column="46" selection-end-line="182" selection-end-column="46" />
<state relative-caret-position="2214">
<caret line="720" column="25" lean-forward="true" selection-start-line="720" selection-start-column="25" selection-end-line="720" selection-end-column="25" />
<folding>
<element signature="e#450#569#0#PHP" expanded="false" />
<element signature="e#575#888#0#PHP" expanded="false" />
<element signature="e#893#2938#0#PHP" expanded="false" />
<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#9535#11279#0#PHP" expanded="false" />
<element signature="e#11352#11772#0#PHP" expanded="false" />
<element signature="e#11777#16446#0#PHP" expanded="false" />
<element signature="e#14632#16378#0#PHP" expanded="false" />
<element signature="e#16473#20175#0#PHP" expanded="false" />
<element signature="e#20205#23149#0#PHP" expanded="false" />
<element signature="e#23178#24435#0#PHP" expanded="false" />
<element signature="e#24464#25750#0#PHP" expanded="false" />
<element signature="e#25773#25990#0#PHP" expanded="false" />
<element signature="e#38#68#0#PHP" expanded="true" />
<element signature="e#472#591#0#PHP" expanded="false" />
<element signature="e#597#910#0#PHP" expanded="false" />
<element signature="e#915#2960#0#PHP" expanded="false" />
<element signature="e#2966#3286#0#PHP" expanded="false" />
<element signature="e#3291#5342#0#PHP" expanded="false" />
<element signature="e#5348#5766#0#PHP" expanded="false" />
<element signature="e#5771#12687#0#PHP" expanded="false" />
<element signature="e#10876#12620#0#PHP" expanded="false" />
<element signature="e#12704#13001#0#PHP" expanded="false" />
<element signature="e#13007#13402#0#PHP" expanded="false" />
<element signature="e#13408#13828#0#PHP" expanded="false" />
<element signature="e#13833#20820#0#PHP" expanded="false" />
<element signature="e#19006#20752#0#PHP" expanded="false" />
<element signature="e#20847#24549#0#PHP" expanded="false" />
<element signature="e#24579#27523#0#PHP" expanded="false" />
<element signature="e#27552#30975#0#PHP" expanded="false" />
<element signature="e#34764#34981#0#PHP" expanded="false" />
</folding>
</state>
</provider>
... ...
... ... @@ -12,6 +12,7 @@ use fast\Http;
use think\Validate;
use Exception;
use function EasyWeChat\Kernel\Support\generate_sign;
use app\nsms\sendAPI;
/**
* 支付接口
*/
... ... @@ -168,24 +169,6 @@ class Pay extends Api
$user = Db::name('user')->where('id',$data['user_id'])->find();
$mobile = $user['mobile'];
$str = "【仁甲看见】";
if(!empty($pic_id)){
foreach ($pic_id as $key => $v){
$pic = Db::name('pic')->field('id,title,url,code')->where('id',$v)->find();
$str .= "图片标题:$pic[title],云盘地址:$pic[url],提取码:$pic[code]";
}
}
if(!empty($video_id)){
foreach ($video_id as $key => $val){
$video = Db::name('video')->field('id,title,two_url,two_code,four_url,four_code,eight_url,eight_code')->where('id',$val['id'])->find();
if($val['attr'] == 1){
$video['attr'] = '2k';
}elseif ($val['attr'] == 2){
$video['attr'] = '4k';
}
$str .= "图片标题:$video[title],云盘地址:$pic[url],提取码:$pic[code]";
}
}
if($type == 1){
if($data){
... ... @@ -200,11 +183,41 @@ class Pay extends Api
}
$money = $res['money'] - $data['total'];
// 启动事务
Db::startTrans();
try{
if(!empty($pic_id)){
foreach ($pic_id as $key => $v){
$pic = Db::name('pic')->field('id,title,url,code')->where('id',$v)->find();
$str .= "图片标题:$pic[title],云盘地址:$pic[url],提取码:$pic[code],";
}
}
if(!empty($video_id)){
foreach ($video_id as &$val){
if($val['attr'] == 1){
$val['attr'] = '2k';
}elseif ($val['attr'] == 2){
$val['attr'] = '4k';
}else{
$val['attr'] = '8k';
}
}
foreach ($video_id as $k=>$v){
if($v['attr'] == '4k'){
$video = Db::name('video')->field('id,title,four_url,four_code')->where('id',$v['id'])->find();
$str .= "视频标题:$video[title],云盘地址:$video[four_url],提取码:$video[four_code]";
}elseif ($v['attr'] == '2k'){
$video = Db::name('video')->field('id,title,two_url,two_code')->where('id',$v['id'])->find();
$str .= "视频标题:$video[title],云盘地址:$video[two_url],提取码:$video[two_code]";
}elseif ($v['attr'] == '8k'){
$video = Db::name('video')->field('id,title,eight_url,eight_code')->where('id',$v['id'])->find();
$str .= "视频标题:$video[title],云盘地址:$video[eight_url],提取码:$video[eight_code]";
}
}
}
if(!empty($mobile)){
$result = $this->sms($mobile,$str);
}
foreach ($pic_id as $key => $v){
$pic = Db::name('pic')->field('id,buy_num')->where('id',$v)->find();
... ... @@ -271,6 +284,30 @@ class Pay extends Api
}
}
//发送短信
public function sms($mobile,$content){
$note = array(
'content' => $content,//短信内容
'mobile' => $mobile,//手机号码
'productid' => '676767',//产品id
'xh' => ''//小号
);
$result = $this->send_sms($note);
return $result;
}
function send_sms($data){
//todo 短信账号密码
// require_once EXTEND_PATH . 'nsms/nsms.php';
$url = "http://www.ztsms.cn/sendNSms.do";
$username = 'hangpai';
$password = 'Cxz307312';
$sendAPI = new sendAPI($url, $username, $password);
$sendAPI->data = $data;/*初始化数据包*/
$return = $sendAPI->sendSMS('GET');
return $return;
}
/**
* @ApiTitle (视频购买支付)
* @ApiSummary (视频购买支付)
... ... @@ -293,6 +330,9 @@ 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']);
$user = Db::name('user')->where('id',$data['user_id'])->find();
$mobile = $user['mobile'];
$str = "【仁甲看见】";
$type = $this->request->post('type');
if(empty($type)){
$this->error(['code'=>2,'msg'=>'缺少必要参数']);
... ... @@ -313,6 +353,38 @@ class Pay extends Api
// 启动事务
Db::startTrans();
try{
if(!empty($pic_id)){
foreach ($pic_id as $key => $v){
$pic = Db::name('pic')->field('id,title,url,code')->where('id',$v)->find();
$str .= "图片标题:$pic[title],云盘地址:$pic[url],提取码:$pic[code],";
}
}
if(!empty($video_id)){
foreach ($video_id as &$val){
if($val['attr'] == 1){
$val['attr'] = '2k';
}elseif ($val['attr'] == 2){
$val['attr'] = '4k';
}else{
$val['attr'] = '8k';
}
}
foreach ($video_id as $k=>$v){
if($v['attr'] == '4k'){
$video = Db::name('video')->field('id,title,four_url,four_code')->where('id',$v['id'])->find();
$str .= "视频标题:$video[title],云盘地址:$video[four_url],提取码:$video[four_code]";
}elseif ($v['attr'] == '2k'){
$video = Db::name('video')->field('id,title,two_url,two_code')->where('id',$v['id'])->find();
$str .= "视频标题:$video[title],云盘地址:$video[two_url],提取码:$video[two_code]";
}elseif ($v['attr'] == '8k'){
$video = Db::name('video')->field('id,title,eight_url,eight_code')->where('id',$v['id'])->find();
$str .= "视频标题:$video[title],云盘地址:$video[eight_url],提取码:$video[eight_code]";
}
}
}
if(!empty($mobile)){
$result = $this->sms($mobile,$str);
}
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]);
... ... @@ -540,9 +612,45 @@ class Pay extends Api
$data = Db::name('order')->where('id',$message['out_trade_no'])->find();
$pic_id = explode(',',$data['pic_id']);
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]);
$video_id = unserialize($data['video_id']);
$user = Db::name('user')->where('id',$data['user_id'])->find();
$mobile = $user['mobile'];
$str = "【仁甲看见】";
if(!empty($pic_id)){
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 ($pic_id as $key => $v){
$pic = Db::name('pic')->field('id,title,url,code')->where('id',$v)->find();
$str .= "图片标题:$pic[title],云盘地址:$pic[url],提取码:$pic[code],";
}
}
if(!empty($video_id)){
foreach ($video_id as &$val){
if($val['attr'] == 1){
$val['attr'] = '2k';
}elseif ($val['attr'] == 2){
$val['attr'] = '4k';
}else{
$val['attr'] = '8k';
}
}
foreach ($video_id as $k=>$v){
if($v['attr'] == '4k'){
$video = Db::name('video')->field('id,title,four_url,four_code')->where('id',$v['id'])->find();
$str .= "视频标题:$video[title],云盘地址:$video[four_url],提取码:$video[four_code]";
}elseif ($v['attr'] == '2k'){
$video = Db::name('video')->field('id,title,two_url,two_code')->where('id',$v['id'])->find();
$str .= "视频标题:$video[title],云盘地址:$video[two_url],提取码:$video[two_code]";
}elseif ($v['attr'] == '8k'){
$video = Db::name('video')->field('id,title,eight_url,eight_code')->where('id',$v['id'])->find();
$str .= "视频标题:$video[title],云盘地址:$video[eight_url],提取码:$video[eight_code]";
}
}
}
if(!empty($mobile)){
$result = $this->sms($mobile,$str);
}
}else{
//支付失败
... ... @@ -568,12 +676,52 @@ class Pay extends Api
//支付成功,更新订单状态
$toporder['status'] = 2;
$toporder['paytime'] = time();
$data = Db::name('order')->where('id',$message['out_trade_no'])->find();
$pic_id = explode(',',$data['pic_id']);
$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]);
$user = Db::name('user')->where('id',$data['user_id'])->find();
$mobile = $user['mobile'];
$str = "【仁甲看见】";
if(!empty($pic_id)){
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 ($pic_id as $key => $v){
$pic = Db::name('pic')->field('id,title,url,code')->where('id',$v)->find();
$str .= "图片标题:$pic[title],云盘地址:$pic[url],提取码:$pic[code],";
}
}
if(!empty($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]);
}
foreach ($video_id as &$val){
if($val['attr'] == 1){
$val['attr'] = '2k';
}elseif ($val['attr'] == 2){
$val['attr'] = '4k';
}else{
$val['attr'] = '8k';
}
}
foreach ($video_id as $k=>$v){
if($v['attr'] == '4k'){
$video = Db::name('video')->field('id,title,four_url,four_code')->where('id',$v['id'])->find();
$str .= "视频标题:$video[title],云盘地址:$video[four_url],提取码:$video[four_code]";
}elseif ($v['attr'] == '2k'){
$video = Db::name('video')->field('id,title,two_url,two_code')->where('id',$v['id'])->find();
$str .= "视频标题:$video[title],云盘地址:$video[two_url],提取码:$video[two_code]";
}elseif ($v['attr'] == '8k'){
$video = Db::name('video')->field('id,title,eight_url,eight_code')->where('id',$v['id'])->find();
$str .= "视频标题:$video[title],云盘地址:$video[eight_url],提取码:$video[eight_code]";
}
}
}
if(!empty($mobile)){
$result = $this->sms($mobile,$str);
}
}else{
//支付失败
... ...
此 diff 太大无法显示。