Arreglado problema al listar usuarios con select

This commit is contained in:
imnavajas
2025-07-09 11:48:27 +02:00
parent c79ae6245c
commit 6c94858d8c

View File

@ -61,7 +61,9 @@ class ChatController extends BaseController
$this->chatService = service("chat"); $this->chatService = service("chat");
} }
public function index() {} public function index()
{
}
public function get_chat_departments(string $model, int $modelId) public function get_chat_departments(string $model, int $modelId)
{ {
@ -341,22 +343,26 @@ class ChatController extends BaseController
} }
public function get_chat_users_internal() public function get_chat_users_internal()
{ {
$query = $this->userModel->builder()->select( $builder = $this->userModel->builder();
[
"id", $builder->select([
"CONCAT(first_name,' ',last_name,'(',username,')') as name" 'users.id',
] "CONCAT(first_name, ' ', last_name, ' (', auth_identities.secret, ')') AS name"
)->where("cliente_id", null) ])
->where("deleted_at", null) ->join('auth_identities', 'auth_identities.user_id = users.id AND auth_identities.type = "email_password"')
->whereNotIn("id", [auth()->user()->id]); ->where('cliente_id', null)
if ($this->request->getGet("q")) { ->where('deleted_at', null)
$query->groupStart() ->whereNotIn('users.id', [auth()->user()->id]);
->orLike("users.username", $this->request->getGet("q"))
->orLike("CONCAT(first_name,' ',last_name)", $this->request->getGet("q")) if ($this->request->getGet('q')) {
$q = $this->request->getGet('q');
$builder->groupStart()
->orLike('auth_identities.secret', $q)
->orLike("CONCAT(first_name, ' ', last_name)", $q)
->groupEnd(); ->groupEnd();
} }
return $this->response->setJSON($query->get()->getResultObject()); return $this->response->setJSON($builder->get()->getResultObject());
} }
public function get_chat_users_all() public function get_chat_users_all()
{ {
@ -480,10 +486,16 @@ class ChatController extends BaseController
->edit('updated_at', fn($q) => $q->updated_at ? Time::createFromFormat('Y-m-d H:i:s', $q->updated_at)->format("d/m/Y H:i") : "") ->edit('updated_at', fn($q) => $q->updated_at ? Time::createFromFormat('Y-m-d H:i:s', $q->updated_at)->format("d/m/Y H:i") : "")
->add("viewed", fn($q) => $this->chatModel->isMessageChatViewed($q->chatMessageId)) ->add("viewed", fn($q) => $this->chatModel->isMessageChatViewed($q->chatMessageId))
->edit("creator", fn($q) => $q->userId == $auth_user_id ? '<span class="badge text-bg-success w-100">' . lang("App.me") . '</span>' : $q->creator) ->edit("creator", fn($q) => $q->userId == $auth_user_id ? '<span class="badge text-bg-success w-100">' . lang("App.me") . '</span>' : $q->creator)
->add("action", fn($q) => ["type" => "presupuesto", "modelId" => $q->id, "isAdmin" => $isAdmin,"chatMessageId" => $q->chatMessageId, "lang" => [ ->add("action", fn($q) => [
"type" => "presupuesto",
"modelId" => $q->id,
"isAdmin" => $isAdmin,
"chatMessageId" => $q->chatMessageId,
"lang" => [
"view_chat" => lang('Chat.view_chat'), "view_chat" => lang('Chat.view_chat'),
"view_by_alt_message" => lang('Chat.view_by_alt_message') "view_by_alt_message" => lang('Chat.view_by_alt_message')
]]) ]
])
->toJson(true); ->toJson(true);
} }
public function datatable_pedido_messages() public function datatable_pedido_messages()
@ -496,10 +508,16 @@ class ChatController extends BaseController
->edit('updated_at', fn($q) => $q->updated_at ? Time::createFromFormat('Y-m-d H:i:s', $q->updated_at)->format("d/m/Y H:i") : "") ->edit('updated_at', fn($q) => $q->updated_at ? Time::createFromFormat('Y-m-d H:i:s', $q->updated_at)->format("d/m/Y H:i") : "")
->edit("creator", fn($q) => $q->userId == $auth_user_id ? '<span class="badge text-bg-success w-100">' . lang("App.me") . '</span>' : $q->creator) ->edit("creator", fn($q) => $q->userId == $auth_user_id ? '<span class="badge text-bg-success w-100">' . lang("App.me") . '</span>' : $q->creator)
->add("viewed", fn($q) => $this->chatModel->isMessageChatViewed($q->chatMessageId)) ->add("viewed", fn($q) => $this->chatModel->isMessageChatViewed($q->chatMessageId))
->add("action", fn($q) => ["type" => "pedido", "modelId" => $q->id, "isAdmin" => $isAdmin,"chatMessageId" => $q->chatMessageId, "lang" => [ ->add("action", fn($q) => [
"type" => "pedido",
"modelId" => $q->id,
"isAdmin" => $isAdmin,
"chatMessageId" => $q->chatMessageId,
"lang" => [
"view_chat" => lang('Chat.view_chat'), "view_chat" => lang('Chat.view_chat'),
"view_by_alt_message" => lang('Chat.view_by_alt_message') "view_by_alt_message" => lang('Chat.view_by_alt_message')
]]) ]
])
->toJson(true); ->toJson(true);
} }
@ -513,10 +531,16 @@ class ChatController extends BaseController
->edit('updated_at', fn($q) => $q->updated_at ? Time::createFromFormat('Y-m-d H:i:s', $q->updated_at)->format("d/m/Y H:i") : "") ->edit('updated_at', fn($q) => $q->updated_at ? Time::createFromFormat('Y-m-d H:i:s', $q->updated_at)->format("d/m/Y H:i") : "")
->edit("creator", fn($q) => $q->userId == $auth_user_id ? '<span class="badge text-bg-success w-100">' . lang("App.me") . '</span>' : $q->creator) ->edit("creator", fn($q) => $q->userId == $auth_user_id ? '<span class="badge text-bg-success w-100">' . lang("App.me") . '</span>' : $q->creator)
->add("viewed", fn($q) => $this->chatModel->isMessageChatViewed($q->chatMessageId)) ->add("viewed", fn($q) => $this->chatModel->isMessageChatViewed($q->chatMessageId))
->add("action", fn($q) => ["type" => "factura", "modelId" => $q->id, "isAdmin" => $isAdmin,"chatMessageId" => $q->chatMessageId, "lang" => [ ->add("action", fn($q) => [
"type" => "factura",
"modelId" => $q->id,
"isAdmin" => $isAdmin,
"chatMessageId" => $q->chatMessageId,
"lang" => [
"view_chat" => lang('Chat.view_chat'), "view_chat" => lang('Chat.view_chat'),
"view_by_alt_message" => lang('Chat.view_by_alt_message') "view_by_alt_message" => lang('Chat.view_by_alt_message')
]]) ]
])
->toJson(true); ->toJson(true);
} }
@ -530,10 +554,16 @@ class ChatController extends BaseController
->edit('updated_at', fn($q) => $q->updated_at ? Time::createFromFormat('Y-m-d H:i:s', $q->updated_at)->format("d/m/Y H:i") : "") ->edit('updated_at', fn($q) => $q->updated_at ? Time::createFromFormat('Y-m-d H:i:s', $q->updated_at)->format("d/m/Y H:i") : "")
->edit("creator", fn($q) => $q->userId == $auth_user_id ? '<span class="badge text-bg-success w-100">' . lang("App.me") . '</span>' : $q->creator) ->edit("creator", fn($q) => $q->userId == $auth_user_id ? '<span class="badge text-bg-success w-100">' . lang("App.me") . '</span>' : $q->creator)
->add("viewed", fn($q) => $this->chatModel->isMessageChatViewed($q->chatMessageId)) ->add("viewed", fn($q) => $this->chatModel->isMessageChatViewed($q->chatMessageId))
->add("action", fn($q) => ["type" => "ot", "modelId" => $q->id, "isAdmin" => $isAdmin,"chatMessageId" => $q->chatMessageId, "lang" => [ ->add("action", fn($q) => [
"type" => "ot",
"modelId" => $q->id,
"isAdmin" => $isAdmin,
"chatMessageId" => $q->chatMessageId,
"lang" => [
"view_chat" => lang('Chat.view_chat'), "view_chat" => lang('Chat.view_chat'),
"view_by_alt_message" => lang('Chat.view_by_alt_message') "view_by_alt_message" => lang('Chat.view_by_alt_message')
]]) ]
])
->toJson(true); ->toJson(true);
} }
@ -547,10 +577,16 @@ class ChatController extends BaseController
->edit('updated_at', fn($q) => $q->updated_at ? Time::createFromFormat('Y-m-d H:i:s', $q->updated_at)->format("d/m/Y H:i") : "") ->edit('updated_at', fn($q) => $q->updated_at ? Time::createFromFormat('Y-m-d H:i:s', $q->updated_at)->format("d/m/Y H:i") : "")
->edit("creator", fn($q) => $q->userId == $auth_user_id ? '<span class="badge text-bg-success w-100">' . lang("App.me") . '</span>' : $q->creator) ->edit("creator", fn($q) => $q->userId == $auth_user_id ? '<span class="badge text-bg-success w-100">' . lang("App.me") . '</span>' : $q->creator)
->add("viewed", fn($q) => $this->chatModel->isMessageChatViewed($q->chatMessageId)) ->add("viewed", fn($q) => $this->chatModel->isMessageChatViewed($q->chatMessageId))
->add("action", fn($q) => ["type" => "direct", "modelId" => $q->id, "isAdmin" => $isAdmin,"chatMessageId" => $q->chatMessageId, "lang" => [ ->add("action", fn($q) => [
"type" => "direct",
"modelId" => $q->id,
"isAdmin" => $isAdmin,
"chatMessageId" => $q->chatMessageId,
"lang" => [
"view_chat" => lang('Chat.view_chat'), "view_chat" => lang('Chat.view_chat'),
"view_by_alt_message" => lang('Chat.view_by_alt_message') "view_by_alt_message" => lang('Chat.view_by_alt_message')
]]) ]
])
->toJson(true); ->toJson(true);
} }
@ -658,7 +694,8 @@ class ChatController extends BaseController
if ($user_id != $auth_user->id) { if ($user_id != $auth_user->id) {
$this->chatNotificationModel->insert(["chat_message_id" => $chat_message_id, "user_id" => $user_id]); $this->chatNotificationModel->insert(["chat_message_id" => $chat_message_id, "user_id" => $user_id]);
} }
}; }
;
$message = $this->chatMessageModel->get_chat_message($chat_message_id); $message = $this->chatMessageModel->get_chat_message($chat_message_id);
return $this->response->setJSON($message); return $this->response->setJSON($message);
} }