public static function storeKarmacirclesRelation($giver, $receiver) { //echo 'here';die; if (!empty($giver) && !empty($receiver)) { $checkKarmacircleCount = DB::table('user_karmacircles')->where('user_karmacircles.user_id', '=', $giver)->where('user_karmacircles.peer_id', '=', $receiver)->count(); if ($checkKarmacircleCount < 1) { $karmaCircleUser = new Userskarmacircle(); $karmaCircleUser->user_id = $giver; $karmaCircleUser->peer_id = $receiver; $karmaCircleUser->receiver = 1; $karmaCircleUser->receiver_date = Carbon::now(); $karmaCircleUser->save(); } else { $checkKarmacircleReceiverFlag = DB::table('user_karmacircles')->where('user_karmacircles.user_id', '=', $giver)->where('user_karmacircles.peer_id', '=', $receiver)->first(); if (!empty($checkKarmacircleReceiverFlag)) { $currentTime = Carbon::now(); $result = DB::table('user_karmacircles')->where('user_karmacircles.user_id', '=', $giver)->where('user_karmacircles.peer_id', '=', $receiver)->update(array('receiver' => '1', 'receiver_date' => $currentTime)); } } } if (!empty($giver) && !empty($receiver)) { $karmacircleCount = DB::table('user_karmacircles')->where('user_karmacircles.user_id', '=', $receiver)->where('user_karmacircles.peer_id', '=', $giver)->count(); if ($karmacircleCount < 1) { $karmaCircleUserData = new Userskarmacircle(); $karmaCircleUserData->user_id = $receiver; $karmaCircleUserData->peer_id = $giver; $karmaCircleUserData->giver = 1; $karmaCircleUserData->giver_date = Carbon::now(); $karmaCircleUserData->save(); } else { $checkKarmacircleReceiverFlag = DB::table('user_karmacircles')->where('user_karmacircles.user_id', '=', $receiver)->where('user_karmacircles.peer_id', '=', $giver)->first(); if (!empty($checkKarmacircleReceiverFlag)) { $currentTime = Carbon::now(); $result = DB::table('user_karmacircles')->where('user_karmacircles.user_id', '=', $receiver)->where('user_karmacircles.peer_id', '=', $giver)->update(array('giver' => '1', 'giver_date' => $currentTime)); } } } return true; }
public static function storeKarmacirclesRelationCron() { $giver = 1288; $receiver = 1395; $currentDate = Carbon::now(); $giverReceiverData = DB::select(DB::raw("SELECT DISTINCT user_idgiver As giver,user_idreceiver As receiver FROM karmanotes WHERE created_at > DATE_SUB(NOW(), INTERVAL 2 DAY)")); echo '<pre>'; print_r($giverReceiverData); die; //All the karmanotes sends by the users. if (!empty($giverReceiverData)) { $giversGiver = DB::select(DB::raw("select peer_id as Id from user_karmacircles where user_id=" . $giver . " AND giver='1' AND Id NOT IN (select peer_id from user_karmacircles where user_id=" . $receiver . " AND givers_giver='1')")); //Fetch the list of all Peers where User is A and Giver flag is set and not in (all Peers where User is B and GiversGiver flag is is set) //echo '<pre>';print_r($giversGiver);die; foreach ($giversGiver as $key => $value) { $value = $value->Id; $checkGiverData = DB::select(DB::raw("select count(id) as rowCount from user_karmacircles where user_id=" . $receiver . " AND peer_id=" . $value)); $checkGiverData = $checkGiverData[0]->rowCount; //Insert a row with B as User, P as Peer and GiversGiver flag = True all other flags zero with GG_Date updated if ($checkGiverData < 1) { $peerId = $value; $karmaCircle = new Userskarmacircle(); $karmaCircle->user_id = $receiver; $karmaCircle->peer_id = $peerId; $karmaCircle->givers_giver = 1; $karmaCircle->givers_giver_date = Carbon::now(); $karmaCircle->save(); } else { $checkGiversFlag = DB::select(DB::raw("select count(id) as rowCount from user_karmacircles where user_id=" . $receiver . " AND peer_id=" . $value . " AND givers_giver=1")); $checkGiversFlag = $checkGiversFlag[0]->rowCount; //set givers_giver flag. if ($checkGiversFlag < 1) { $result = DB::table('user_karmacircles')->where('user_id', '=', $receiver)->where('peer_id', '=', $value)->update(array('givers_giver' => '1', 'givers_giver_date' => $currentDate)); } } $checkReceiverData = DB::select(DB::raw("select count(*) as rowCount from user_karmacircles where user_id=" . $value . " AND peer_id=" . $receiver)); $checkReceiverData = $checkReceiverData[0]->rowCount; if ($checkReceiverData < 1) { $peerId = $value; $karmaCircle = new Userskarmacircle(); $karmaCircle->user_id = $peerId; $karmaCircle->peer_id = $receiver; $karmaCircle->receivers_receiver = 1; $karmaCircle->receivers_receiver_date = Carbon::now(); $karmaCircle->save(); } else { $checkReceiversFlag = DB::select(DB::raw("select count(*) as rowCount from user_karmacircles where user_id=" . $value . " AND peer_id=" . $receiver . " And receivers_receiver=1")); $checkReceiversFlag = $checkReceiversFlag[0]->rowCount; if ($checkReceiversFlag < 1) { $result = DB::table('user_karmacircles')->where('peer_id', '=', $receiver)->where('user_id', '=', $value)->update(array('receivers_receiver' => '1', 'receivers_receiver_date' => $currentDate)); } } } } $receiversReceiver = DB::select(DB::raw("select peer_id as Id from user_karmacircles where user_id=" . $receiver . " AND receiver='1' AND Id NOT IN (select peer_id from user_karmacircles where user_id=" . $giver . " AND receivers_receiver='1')")); foreach ($receiversReceiver as $key => $value) { $value = $value->Id; $checkReceiverData = DB::select(DB::raw("select count(*) as rowCount from user_karmacircles where user_id=" . $value . " AND peer_id=" . $giver)); $checkReceiverData = $checkReceiverData[0]->rowCount; if ($checkReceiverData < 1) { $peerId = $value; $karmaCircle = new Userskarmacircle(); $karmaCircle->user_id = $peerId; $karmaCircle->peer_id = $giver; $karmaCircle->givers_giver = 1; $karmaCircle->givers_giver_date = Carbon::now(); $karmaCircle->save(); } else { $checkReceiversCount = DB::select(DB::raw("select count(id) as rowCount from user_karmacircles where user_id=" . $value . " AND peer_id=" . $giver . " And givers_giver=1")); $checkReceiversCount = $checkReceiversCount[0]->rowCount; if ($checkReceiversCount < 1) { $result = DB::table('user_karmacircles')->where('user_id', '=', $value->Id)->where('peer_id', '=', $giver)->update(array('givers_giver' => '1', 'givers_giver_date' => $currentDate)); } } $checkGiverData = DB::select(DB::raw("select count(*) as rowCount from user_karmacircles where user_id=" . $giver . " AND peer_id=" . $value)); $checkGiverData = $checkGiverData[0]->rowCount; if ($checkGiverData < 1) { $peerId = $value; $karmaCircle = new Userskarmacircle(); $karmaCircle->user_id = $giver; $karmaCircle->peer_id = $peerId; $karmaCircle->receivers_receiver = 1; $karmaCircle->receivers_receiver_date = Carbon::now(); $karmaCircle->save(); } else { $checkGiversCount = DB::select(DB::raw("select count(id) as rowCount from user_karmacircles where user_id=" . $giver . " AND peer_id=" . $value . " And receivers_receiver=1")); $checkGiversCount = $checkGiversCount[0]->rowCount; if ($checkGiversCount < 1) { $result = DB::table('user_karmacircles')->where('peer_id', '=', $value)->where('user_id', '=', $giver)->update(array('receivers_receiver' => '1', 'receivers_receiver_date' => $currentDate)); } } } }