Add other db tables

This commit is contained in:
Benjamin Sherriff
2023-10-03 12:11:48 -04:00
parent 6c8a7ceefc
commit 95ede3291e
38 changed files with 247 additions and 26 deletions

View File

@@ -12,8 +12,7 @@ use serenity::model::channel::Message;
use serenity::model::prelude::{ChannelType, PermissionOverwrite, PermissionOverwriteType};
use serenity::prelude::*;
use crate::db;
use crate::messages::{NewMessageDB, MessageDB};
use crate::db::{connection, NewMessageDB, MessageDB};
pub struct OAI {
pub client: reqwest::Client,
@@ -189,7 +188,7 @@ impl OAI {
pub async fn generate_response(ctx: &Context, msg: &Message, oai: &OAI) {
debug!("Generating response for message: {}", msg.content);
let mut connection = db::connection().unwrap();
let mut connection = connection().unwrap();
let guild_id = msg.guild_id.unwrap();
let channel_id = msg.channel_id;
@@ -200,13 +199,13 @@ pub async fn generate_response(ctx: &Context, msg: &Message, oai: &OAI) {
let parsed_content = msg.content.replace(bot_mention.as_str(), "");
// Setup the request messages
let result: Result<Vec<MessageDB>, diesel::result::Error> = crate::schema::messages::table
let result: Result<Vec<MessageDB>, diesel::result::Error> = crate::db::schema::messages::table
.select(MessageDB::as_select())
.filter((crate::schema::messages::guild_id.eq(guild_id.0 as i64))
.and(crate::schema::messages::channel_id.eq(channel_id.0 as i64))
.and(crate::schema::messages::user_id.eq(author_id.0 as i64))
.filter((crate::db::schema::messages::guild_id.eq(guild_id.0 as i64))
.and(crate::db::schema::messages::channel_id.eq(channel_id.0 as i64))
.and(crate::db::schema::messages::user_id.eq(author_id.0 as i64))
)
.order(crate::schema::messages::created.asc())
.order(crate::db::schema::messages::created.asc())
.limit(oai.max_context_questions)
.load(&mut connection);
@@ -284,7 +283,7 @@ pub async fn generate_response(ctx: &Context, msg: &Message, oai: &OAI) {
if !r.choices.is_empty() {
let res = r.choices[0].message.content.clone();
// Insert the message into the messages database table
if let Err(err) = insert_into(crate::schema::messages::table).values(NewMessageDB {
if let Err(err) = insert_into(crate::db::schema::messages::table).values(NewMessageDB {
id: &r.id,
guild_id: guild_id.0 as i64,
channel_id: response_channel.0 as i64,