where($map)->find(); if ($reslut) { return ['code' => 200, 'msg' => '房间已收藏', 'data' => null]; } else { return ['code' => 201, 'msg' => '房间未收藏', 'data' => null]; } } public function collect_room($uid, $rid) { $map = []; $map[] = ['rid', '=', $rid]; $map[] = ['is_delete', '=', 1]; $room_info = db::name('room')->field('rid,tid,room_micro,room_owner_uid,room_admin_uid')->where($map)->find(); if (empty($room_info)) { return ['code' => 201, 'msg' => '房间信息不存在', 'data' => null]; } Db::startTrans(); try { $data = []; $data['uid'] = $uid; $data['rid'] = $rid; $data['add_time'] = time(); $data['update_time'] = time(); $reslut = db::name('user_collect_room')->insert($data); if (!$reslut) { Db::rollback(); return ['code' => 201, 'msg' => '收藏失败', 'data' => null]; } $map = []; $map['rid'] = $rid; $reslut = db::name('room')->where($map)->setInc('collect_num', 1); if (!$reslut) { Db::rollback(); return ['code' => 201, 'msg' => '收藏失败', 'data' => null]; } Db::commit(); return ['code' => 200, 'msg' => "收藏成功", 'data' => null]; } catch (\Exception $e) { // 回滚事务 Db::rollback(); return ['code' => 201, 'msg' => "请重试", 'data' => null]; } } //取消收藏 public function un_collect_room($uid, $rid) { $map = []; $map[] = ['rid', '=', $rid]; $map[] = ['is_delete', '=', 1]; $room_info = db::name('room')->field('rid,tid,room_micro,room_owner_uid,room_admin_uid')->where($map)->find(); if (empty($room_info)) { return ['code' => 201, 'msg' => '房间信息不存在', 'data' => null]; } Db::startTrans(); try { $map = []; $map[] = ['uid', '=', $uid]; $map[] = ['rid', '=', $rid]; $reslut = db::name('user_collect_room')->where($map)->delete(); if (!$reslut) { Db::rollback(); return ['code' => 201, 'msg' => '收藏失败', 'data' => null]; } $map = []; $map['rid'] = $rid; $reslut = db::name('room')->where($map)->setDec('collect_num', 1); if (!$reslut) { Db::rollback(); return ['code' => 201, 'msg' => '收藏失败', 'data' => null]; } Db::commit(); return ['code' => 200, 'msg' => "收藏成功", 'data' => null]; } catch (\Exception $e) { // 回滚事务 Db::rollback(); return ['code' => 201, 'msg' => "请重试", 'data' => null]; } } }