From ebb341fef2d1bcfa76f4dc536e0e8ef566955d2a Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=E5=88=98=E5=8D=8E=E6=B8=85?= <18691022700@163.com> Date: Fri, 12 Dec 2025 23:11:10 +0800 Subject: [PATCH] =?UTF-8?q?cp=E4=BB=BB=E5=8A=A1?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- application/api/controller/Xintiao.php | 5 ++- application/api/model/UserCp.php | 46 +++++++++++++++++++++----- 2 files changed, 39 insertions(+), 12 deletions(-) diff --git a/application/api/controller/Xintiao.php b/application/api/controller/Xintiao.php index ac51d332..61ea8d77 100644 --- a/application/api/controller/Xintiao.php +++ b/application/api/controller/Xintiao.php @@ -85,8 +85,8 @@ class Xintiao extends BaseCom $createtime =Db::name('user_cp_zone')->where(['id' => $rees['id']])->value('createtime'); $days = floor((time() - $createtime) / 86400); if($days <= 7){ - $is_time = Db::name('vs_user_cp_task')->where(['user_id' => $rees['user_id1'],'status' => 0,'day' => date('Y-m-d', time())])->find(); - $is_time2 = Db::name('vs_user_cp_task')->where(['user_id' => $rees['user_id2'],'status' => 0,'day' => date('Y-m-d', time())])->find(); + $is_time = Db::name('vs_user_cp_task')->where(['user_id' => $rees['user_id1'],'status' => 0,'day' => date('Y-m-d', time()),'delete_time' => 0])->find(); + $is_time2 = Db::name('vs_user_cp_task')->where(['user_id' => $rees['user_id2'],'status' => 0,'day' => date('Y-m-d', time()),'delete_time' => 0])->find(); if($is_time && $is_time['need_time_value'] > $is_time['time_value']){ $exo_value = ($is_time['time_value'] + 0.5) >= $is_time['need_time_value'] ? $is_time['need_time_value'] : ($is_time['time_value'] + 0.5); $data_cp = [ @@ -102,7 +102,6 @@ class Xintiao extends BaseCom } } - return V(1, '成功', null); } diff --git a/application/api/model/UserCp.php b/application/api/model/UserCp.php index 895e1072..dc863e94 100644 --- a/application/api/model/UserCp.php +++ b/application/api/model/UserCp.php @@ -47,6 +47,16 @@ class UserCp extends Model //修改状态 Db::name('user_cp_find')->where(['id' => $res['id']])->update(['status' => 1]); + //先获取他连那个的原有cp + $zone1 = Db::name('user_cp_zone') + ->where(['status' => 1]) + ->where('(user_id1 = ' . $from_user_id . ' OR user_id2 = ' . $from_user_id . ')') + ->find(); + $zone2 = Db::name('user_cp_zone') + ->where(['status' => 1]) + ->where('(user_id1 = ' . $to_user_id . ' OR user_id2 = ' . $to_user_id . ')') + ->find(); + //创建Cp空间 $data = [ 'user_id1' => $from_user_id, @@ -97,19 +107,37 @@ class UserCp extends Model $this->assignCpDecoration([$from_user_id, $to_user_id], 10, $rights_icon_id); // 10为CP特效类型 } //创建cp任务 - //先查询她两用户有没有其他任务 - $tasks12 = Db::name('vs_user_cp_task')->where(['user_id' => $from_user_id,'delete_time' => 0])->select(); - if($tasks12){ - foreach ($tasks12 as $task){ - db::name('vs_user_cp_task')->where(['id' => $task['id']])->update(['delete_time' => time()]); + if($zone1){ + //先查询她两用户有没有其他任务 + $tasks12 = Db::name('vs_user_cp_task')->where(['user_id' => $zone1['user_id1'],'delete_time' => 0])->select(); + if($tasks12){ + foreach ($tasks12 as $task){ + db::name('vs_user_cp_task')->where(['id' => $task['id']])->update(['delete_time' => time()]); + } + } + $tasks122 = Db::name('vs_user_cp_task')->where(['user_id' => $zone1['user_id2'],'delete_time' => 0])->select(); + if($tasks122){ + foreach ($tasks122 as $task1){ + db::name('vs_user_cp_task')->where(['id' => $task1['id']])->update(['delete_time' => time()]); + } } } - $tasks13 = Db::name('vs_user_cp_task')->where(['user_id' => $to_user_id,'delete_time' => 0])->select(); - if($tasks13){ - foreach ($tasks13 as $task){ - db::name('vs_user_cp_task')->where(['id' => $task['id']])->update(['delete_time' => time()]); + if($zone2){ + //先查询她两用户有没有其他任务 + $tasks13 = Db::name('vs_user_cp_task')->where(['user_id' => $zone2['user_id1'],'delete_time' => 0])->select(); + if($tasks13){ + foreach ($tasks13 as $task2){ + db::name('vs_user_cp_task')->where(['id' => $task2['id']])->update(['delete_time' => time()]); + } + } + $tasks133 = Db::name('vs_user_cp_task')->where(['user_id' => $zone2['user_id2'],'delete_time' => 0])->select(); + if($tasks133){ + foreach ($tasks133 as $task3){ + db::name('vs_user_cp_task')->where(['id' => $task3['id']])->update(['delete_time' => time()]); + } } } + // 数据插入 循环插入7条数据 day 取值是今天开始连续七天 的每一天的值 到天 $tasks_data = []; for ($i = 0; $i < 7; $i++) {