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

修改同种商品不能购买两次

... ... @@ -4,7 +4,6 @@
<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/User.php" afterPath="$PROJECT_DIR$/application/api/controller/User.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" />
... ... @@ -18,8 +17,8 @@
<file leaf-file-name="User.php" pinned="false" current-in-tab="true">
<entry file="file://$PROJECT_DIR$/application/api/controller/User.php">
<provider selected="true" editor-type-id="text-editor">
<state relative-caret-position="294">
<caret line="1061" column="9" lean-forward="true" selection-start-line="1061" selection-start-column="9" selection-end-line="1061" selection-end-column="9" />
<state relative-caret-position="175">
<caret line="1020" column="17" lean-forward="true" selection-start-line="1020" selection-start-column="17" selection-end-line="1020" selection-end-column="17" />
<folding>
<element signature="e#365#484#0#PHP" expanded="false" />
<element signature="e#490#1228#0#PHP" expanded="false" />
... ... @@ -61,15 +60,19 @@
<element signature="e#30043#30577#0#PHP" expanded="false" />
<element signature="e#30582#31496#0#PHP" expanded="false" />
<element signature="e#31502#32156#0#PHP" expanded="false" />
<element signature="e#36083#36914#0#PHP" expanded="false" />
<element signature="e#36920#37340#0#PHP" expanded="false" />
<element signature="e#37345#37828#0#PHP" expanded="false" />
<element signature="e#37834#38640#0#PHP" expanded="false" />
<element signature="e#38645#41799#0#PHP" expanded="false" />
<element signature="e#41814#43142#0#PHP" expanded="false" />
<element signature="e#43158#44185#0#PHP" expanded="false" />
<element signature="e#44192#44950#0#PHP" expanded="false" />
<element signature="e#44955#47342#0#PHP" expanded="false" />
<element signature="e#32315#32401#0#PHP" expanded="false" />
<element signature="e#32490#32578#0#PHP" expanded="false" />
<element signature="e#34173#34933#0#PHP" expanded="false" />
<element signature="e#34938#36539#0#PHP" expanded="false" />
<element signature="e#36565#37396#0#PHP" expanded="false" />
<element signature="e#37402#37822#0#PHP" expanded="false" />
<element signature="e#37827#38310#0#PHP" expanded="false" />
<element signature="e#38316#39122#0#PHP" expanded="false" />
<element signature="e#39127#42281#0#PHP" expanded="false" />
<element signature="e#42296#43624#0#PHP" expanded="false" />
<element signature="e#43640#44667#0#PHP" expanded="false" />
<element signature="e#44674#45432#0#PHP" expanded="false" />
<element signature="e#45437#47824#0#PHP" expanded="false" />
</folding>
</state>
</provider>
... ... @@ -173,9 +176,9 @@
<sorting>DEFINITION_ORDER</sorting>
</component>
<component name="PhpWorkspaceProjectConfiguration" backward_compatibility_performed="true" />
<component name="ProjectFrameBounds">
<option name="x" value="245" />
<option name="y" value="68" />
<component name="ProjectFrameBounds" extendedState="1">
<option name="x" value="58" />
<option name="y" value="95" />
<option name="width" value="1806" />
<option name="height" value="981" />
</component>
... ... @@ -274,7 +277,7 @@
<workItem from="1574336957891" duration="1350000" />
<workItem from="1574382087071" duration="22007000" />
<workItem from="1574410294356" duration="15863000" />
<workItem from="1574469667436" duration="3209000" />
<workItem from="1574469667436" duration="10601000" />
</task>
<task id="LOCAL-00001" summary="调试">
<created>1574145133364</created>
... ... @@ -287,7 +290,7 @@
<servers />
</component>
<component name="TimeTrackingManager">
<option name="totallyTimeSpent" value="181019000" />
<option name="totallyTimeSpent" value="188411000" />
</component>
<component name="TodoView">
<todo-panel id="selected-file">
... ... @@ -299,7 +302,7 @@
</todo-panel>
</component>
<component name="ToolWindowManager">
<frame x="245" y="68" width="1806" height="981" extended-state="0" />
<frame x="58" y="95" width="1806" height="981" 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.15005727" 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" />
... ... @@ -705,8 +708,8 @@
</entry>
<entry file="file://$PROJECT_DIR$/application/api/controller/User.php">
<provider selected="true" editor-type-id="text-editor">
<state relative-caret-position="294">
<caret line="1061" column="9" lean-forward="true" selection-start-line="1061" selection-start-column="9" selection-end-line="1061" selection-end-column="9" />
<state relative-caret-position="175">
<caret line="1020" column="17" lean-forward="true" selection-start-line="1020" selection-start-column="17" selection-end-line="1020" selection-end-column="17" />
<folding>
<element signature="e#365#484#0#PHP" expanded="false" />
<element signature="e#490#1228#0#PHP" expanded="false" />
... ... @@ -748,15 +751,19 @@
<element signature="e#30043#30577#0#PHP" expanded="false" />
<element signature="e#30582#31496#0#PHP" expanded="false" />
<element signature="e#31502#32156#0#PHP" expanded="false" />
<element signature="e#36083#36914#0#PHP" expanded="false" />
<element signature="e#36920#37340#0#PHP" expanded="false" />
<element signature="e#37345#37828#0#PHP" expanded="false" />
<element signature="e#37834#38640#0#PHP" expanded="false" />
<element signature="e#38645#41799#0#PHP" expanded="false" />
<element signature="e#41814#43142#0#PHP" expanded="false" />
<element signature="e#43158#44185#0#PHP" expanded="false" />
<element signature="e#44192#44950#0#PHP" expanded="false" />
<element signature="e#44955#47342#0#PHP" expanded="false" />
<element signature="e#32315#32401#0#PHP" expanded="false" />
<element signature="e#32490#32578#0#PHP" expanded="false" />
<element signature="e#34173#34933#0#PHP" expanded="false" />
<element signature="e#34938#36539#0#PHP" expanded="false" />
<element signature="e#36565#37396#0#PHP" expanded="false" />
<element signature="e#37402#37822#0#PHP" expanded="false" />
<element signature="e#37827#38310#0#PHP" expanded="false" />
<element signature="e#38316#39122#0#PHP" expanded="false" />
<element signature="e#39127#42281#0#PHP" expanded="false" />
<element signature="e#42296#43624#0#PHP" expanded="false" />
<element signature="e#43640#44667#0#PHP" expanded="false" />
<element signature="e#44674#45432#0#PHP" expanded="false" />
<element signature="e#45437#47824#0#PHP" expanded="false" />
</folding>
</state>
</provider>
... ...
... ... @@ -1001,13 +1001,24 @@ class User extends Api
$a = [];
$a[0]['id'] = $video_id;
$a[0]['attr'] = $video_attr;
$param['video_id'] = serialize($a);
$where['user_id'] = ['eq',$param['user_id']];
$where['video_id'] = ['eq',$param['video_id']];
$where['status'] = ['eq',2];
$res = Db::name('order')->where($where)->find();
if(!empty($res)){
$this->error(['code'=>2,'msg'=>'该属性视频您已经购买过了']);
$res = Db::name('order')
->field('video_id')
->where($where)
->select();
foreach ($res as &$v){
$v['video_id'] = unserialize($v['video_id']);
if(!empty($v['video_id'])){
foreach ($v['video_id'] as $v1){
if($v1['id'] == $video_id && $v1['attr'] == $video_attr){
$this->error(['code'=>2,'msg'=>'该属性的视频已经购买过了','video_id'=>$v1['id']]);
}else{
$param['video_id'] = serialize($a);
}
}
}
}
$param['createtime'] = time();
$param['num'] = date('Ymd').substr(implode(NULL, array_map('ord', str_split(substr(uniqid(), 7, 13), 1))), 0, 8);
... ... @@ -1020,7 +1031,9 @@ class User extends Api
}
}
/**
/**
* @ApiTitle (创建组合订单)
* @ApiSummary (创建组合订单)
* @ApiMethod (POST)
... ... @@ -1050,18 +1063,20 @@ class User extends Api
$key = ['id','attr'];
$a = $this->array_merge_more($key,$video_id,$video_attr);
// print_r($a);die;
foreach ($a as &$v){
$param['video_id'] = serialize($v);
$where['user_id'] = ['eq',$param['user_id']];
$where['video_id'] = ['eq',$param['video_id']];
$where['video_id'] = ['Like',"%$param[video_id]%"];
$where['status'] = ['eq',2];
$res = Db::name('order')->where($where)->find();
if(!empty($res)){
$this->error(['code'=>2,'msg'=>'该属性视频您已经购买过了','order_id'=>$res['id']]);
}else{
$param['video_id'] = serialize($a);
}
}
$param['video_id'] = serialize($a);
die;
$param['pic_id'] = $this->request->post('pic_id');
$param['total'] = $this->request->post('total');
... ...
... ... @@ -5529,7 +5529,7 @@
<div class="row mt0 footer">
<div class="col-md-6" align="left">
Generated on 2019-11-23 09:34:33 </div>
Generated on 2019-11-23 11:44:50 </div>
<div class="col-md-6" align="right">
<a href="https://www.fastadmin.net" target="_blank">FastAdmin</a>
</div>
... ...