where($where)->page($page, $limit)->select(); $list = collection($list)->toArray(); return $list; } public function getCount($where = []) { return $this->where($where)->count(); } public function getOne($where = []) { $one = $this->where($where)->find(); return $one; } public function add($data) { $res = $this->save($data); if (!$res) { return false; } $guild_id = $this->id; return $guild_id; } public function edit($where = [], $data = []) { $res = $this->where($where)->update($data); return $res; } public function del($where = []) { $res = $this->where($where)->delete(); return $res; } //软删除 public function setDel($where = []){ $res = $this->where($where)->setField('delete_time',time()); if(!$res){ return false; } return $res; } //靓号处理 public function getGuildSpecialId(){ $code = $this->order('guild_special_id desc')->value('guild_special_id'); if(empty($code)){ $code = 10000; } $code = $code + 1; $vip_code = db::name('vip_code')->where(['type' => 3, 'status' => 1,'is_use' => 1])->field('code')->select(); if (empty($vip_code)) { return $code; } if (in_array($code, (array)$vip_code)) { return $code + 2; } return $code; } /* * 通过用户ID 获取公会信息 * */ public function getGuildByUserId($user_id){ $guild = db::name('vs_guild_user') ->alias('g') ->join('vs_guild gg','g.guild_id = gg.id') ->field('gg.*') ->where(['g.user_id' => $user_id,'g.status' => 1,'g.delete_time' => 0]) ->find(); return $guild; } /* * *工会当日流水 */ public function getTodayMoney($guild_id,$stoday="",$etoday=""){ //获取所有工会房间ID $guild_user_data = db::name('vs_guild_user')->where('guild_id', $guild_id)->field('room_id,createtime,quit_time')->select(); $transaction = 0; foreach ($guild_user_data as $k => $v) { if(empty($stoday) && empty($etoday)){ $stoday_seach = strtotime(date('Y-m-d 00:00:00',time())); $etoday_seach = strtotime(date('Y-m-d 23:59:59',time())); }else{ $stoday_seach = strtotime($stoday); $etoday_seach = strtotime($etoday); } if($v['createtime'] && $stoday_seach < $v['createtime']){ $stoday_seach = $v['createtime']; } if($v['quit_time'] && ($etoday > $v['quit_time'])){ $etoday_seach = $v['quit_time']; } $transaction_one = db::name('vs_give_gift') ->where('from_id',$v['room_id']) ->where(['from'=>['in',[2,3,6]],'createtime' => ['between', [$stoday_seach, $etoday_seach]]]) ->sum('total_price'); $transaction += $transaction_one; } return $transaction; } /* * 工会个人流水 */ public function getUserMoney($guild_id,$user_id,$stoday="",$etoday=""){ if(empty($stoday)){ $stoday = strtotime(date('Y-m-d 00:00:00')); } if(empty($etoday)){ $etoday = strtotime(date('Y-m-d 23:59:59')); } //获取所有工会房间ID $room_ids = db::name('vs_guild_user')->where('guild_id', $guild_id)->field('room_id')->select(); $room_ids = array_column($room_ids, 'room_id'); $transaction =0; $transaction = db::name('vs_give_gift') ->whereIn('from_id',$room_ids) ->where(['from'=>['in',[2,3,6]],'createtime' => ['between', [$stoday, $etoday]]]) ->sum('total_price'); return $transaction; } }