Frogsoft CMS - Universal SaaS Content Management System

Overview

Frogsoft CMS

Frogsoft CMS - Universal SaaS Content Management System

文档和代码正在完善中......

未校对的开发规范文档、项目报告和测试报告等在 docs 目录下可供查阅(包括 ./docs/./backend/docs./frontend-admin/docs./frontend-user/docs

启动项目

  1. 安装 Dockerdocker-compose,确保良好的互联网访问
  2. 你可能需要检查环境变量中的设置(例如端口配置等),只需将对应的环境变量复制为 .env.<env_name>.local 修改其中的内容即可,避免直接修改仓库中的配置,以防泄露配置。例如复制 .env.prod.env.prod.local.env.prod.local 中的修改将会拥有更高优先级并生效。
  3. 运行 ./runner.sh start deploy 即可,在 user.localhostadmin.localhost 测试用户端和管理端(可选:使用 -d 参数后台运行,-v 显示 debug 消息)
Comments
  • [backend] DELETE /v1/articles/{id} 删除文章 数据库级联更新问题

    [backend] DELETE /v1/articles/{id} 删除文章 数据库级联更新问题

    问题1:ArticleServiceImpl.java 102行,应修改为:

    if (!Objects.equals(authenticateUser.getId(), article.getAuthor().getId())) {
            throw new ForbiddenException("无权限删除该文章");
          }
    

    image 注意:非java原生类型,请勿使用.equals函数进行等值判断 ———————————————— 问题2:当用户删除已有历史记录的文章时,由于history表中的含有其外键,SQL不允许父级删除。 请尝试修改为级联删除,或取消外键级联关系 image

    错误详情: java.sql.SQLIntegrityConstraintViolationException: Cannot delete or update a parent row: a foreign key constraint fails (frogsoft_cms_db.history, CONSTRAINTFK2vowuipf9ugvhyk8nwigfu6siFOREIGN KEY (article_id) REFERENCESarticle(id))

    bug 
    opened by Nick-bit233 2
  • [backend]自动化测试发现的一系列问题(留作提醒)

    [backend]自动化测试发现的一系列问题(留作提醒)

    1 用户访问自己被屏蔽的文章的问题

    用户应该可以访问 (接口AT0201)自己的 被屏蔽的 State=BLOCKED 的文章 前端可以显示为【该文章已被屏蔽,其他人无法查看,请联系管理员】 但目前用户自己(me)不能获取自己被屏蔽的文章 image @chaozuoye

    2 级联删除问题

    现在试图删除评论、文章仍然存在500数据库不允许删除的情况 删除文章仍有可能在数据库中连带删除文章作者的用户 (应该已经在想办法了,只是用作提醒) image

    @gjjjj0101

    3 空浏览记录获取

    【fixed】#109 如果用户的历史记录/收藏/发表列表为空,应该返回空的dtoList

    bug 
    opened by Nick-bit233 1
  • [backend] 数据库初始值

    [backend] 数据库初始值

    {
        "favicon": "http://dummyimage.com/100x100",
        "title": "Frogsoft CMS",
        "logo": "http://dummyimage.com/400x400",
        "email": {
            "password": "password",
            "account": "example@frogsoft",
            "body": "<h1>[[${verifyCode}]]</h1>",
            "title": "验证码",
            "host": "smtp.exmail.qq.com",
            "port": "465"
        },
        "header": {
            "logo": "http://dummyimage.com/400x200"
        },
        "footer": {
            "logo": "http://dummyimage.com/400x200"
        }
    }
    
    opened by FrogDar 1
  • [backend] 邮箱ssl

    [backend] 邮箱ssl

    没有开启ssl,导致一些邮箱不能用 必定要更改一些配置 参考链接

    至少让这个配置能发邮件

        "email": {
            "password": "BF3zBTA8E7wkFXCg",
            "account": "[email protected]",
            "body": "<h1>[[${verifyCode}]]</h1>",
            "title": "验证码",
            "host": "smtp.exmail.qq.com",
            "port": "465"
        }
    
    bug 
    opened by FrogDar 1
  • build(deps): bump minimist from 1.2.5 to 1.2.6 in /frontend-user

    build(deps): bump minimist from 1.2.5 to 1.2.6 in /frontend-user

    Bumps minimist from 1.2.5 to 1.2.6.

    Commits

    Dependabot compatibility score

    Dependabot will resolve any conflicts with this PR as long as you don't alter it yourself. You can also trigger a rebase manually by commenting @dependabot rebase.


    Dependabot commands and options

    You can trigger Dependabot actions by commenting on this PR:

    • @dependabot rebase will rebase this PR
    • @dependabot recreate will recreate this PR, overwriting any edits that have been made to it
    • @dependabot merge will merge this PR after your CI passes on it
    • @dependabot squash and merge will squash and merge this PR after your CI passes on it
    • @dependabot cancel merge will cancel a previously requested merge and block automerging
    • @dependabot reopen will reopen this PR if it is closed
    • @dependabot close will close this PR and stop Dependabot recreating it. You can achieve the same result by closing it manually
    • @dependabot ignore this major version will close this PR and stop Dependabot creating any more for this major version (unless you reopen the PR or upgrade to it yourself)
    • @dependabot ignore this minor version will close this PR and stop Dependabot creating any more for this minor version (unless you reopen the PR or upgrade to it yourself)
    • @dependabot ignore this dependency will close this PR and stop Dependabot creating any more for this dependency (unless you reopen the PR or upgrade to it yourself)
    • @dependabot use these labels will set the current labels as the default for future PRs for this repo and language
    • @dependabot use these reviewers will set the current reviewers as the default for future PRs for this repo and language
    • @dependabot use these assignees will set the current assignees as the default for future PRs for this repo and language
    • @dependabot use this milestone will set the current milestone as the default for future PRs for this repo and language

    You can disable automated security fix PRs for this repo from the Security Alerts page.

    dependencies 
    opened by dependabot[bot] 0
  • build(deps): bump minimist from 1.2.5 to 1.2.6 in /frontend-admin

    build(deps): bump minimist from 1.2.5 to 1.2.6 in /frontend-admin

    Bumps minimist from 1.2.5 to 1.2.6.

    Commits

    Dependabot compatibility score

    Dependabot will resolve any conflicts with this PR as long as you don't alter it yourself. You can also trigger a rebase manually by commenting @dependabot rebase.


    Dependabot commands and options

    You can trigger Dependabot actions by commenting on this PR:

    • @dependabot rebase will rebase this PR
    • @dependabot recreate will recreate this PR, overwriting any edits that have been made to it
    • @dependabot merge will merge this PR after your CI passes on it
    • @dependabot squash and merge will squash and merge this PR after your CI passes on it
    • @dependabot cancel merge will cancel a previously requested merge and block automerging
    • @dependabot reopen will reopen this PR if it is closed
    • @dependabot close will close this PR and stop Dependabot recreating it. You can achieve the same result by closing it manually
    • @dependabot ignore this major version will close this PR and stop Dependabot creating any more for this major version (unless you reopen the PR or upgrade to it yourself)
    • @dependabot ignore this minor version will close this PR and stop Dependabot creating any more for this minor version (unless you reopen the PR or upgrade to it yourself)
    • @dependabot ignore this dependency will close this PR and stop Dependabot creating any more for this dependency (unless you reopen the PR or upgrade to it yourself)
    • @dependabot use these labels will set the current labels as the default for future PRs for this repo and language
    • @dependabot use these reviewers will set the current reviewers as the default for future PRs for this repo and language
    • @dependabot use these assignees will set the current assignees as the default for future PRs for this repo and language
    • @dependabot use this milestone will set the current milestone as the default for future PRs for this repo and language

    You can disable automated security fix PRs for this repo from the Security Alerts page.

    dependencies 
    opened by dependabot[bot] 0
  • build(deps): bump follow-redirects from 1.14.2 to 1.14.9 in /frontend-admin

    build(deps): bump follow-redirects from 1.14.2 to 1.14.9 in /frontend-admin

    Bumps follow-redirects from 1.14.2 to 1.14.9.

    Commits
    • 13136e9 Release version 1.14.9 of the npm package.
    • 2ec9b0b Keep headers when upgrading from HTTP to HTTPS.
    • 5fc74dd Reduce nesting.
    • 3d81dc3 Release version 1.14.8 of the npm package.
    • 62e546a Drop confidential headers across schemes.
    • 2ede36d Release version 1.14.7 of the npm package.
    • 8b347cb Drop Cookie header across domains.
    • 6f5029a Release version 1.14.6 of the npm package.
    • af706be Ignore null headers.
    • d01ab7a Release version 1.14.5 of the npm package.
    • Additional commits viewable in compare view

    Dependabot compatibility score

    Dependabot will resolve any conflicts with this PR as long as you don't alter it yourself. You can also trigger a rebase manually by commenting @dependabot rebase.


    Dependabot commands and options

    You can trigger Dependabot actions by commenting on this PR:

    • @dependabot rebase will rebase this PR
    • @dependabot recreate will recreate this PR, overwriting any edits that have been made to it
    • @dependabot merge will merge this PR after your CI passes on it
    • @dependabot squash and merge will squash and merge this PR after your CI passes on it
    • @dependabot cancel merge will cancel a previously requested merge and block automerging
    • @dependabot reopen will reopen this PR if it is closed
    • @dependabot close will close this PR and stop Dependabot recreating it. You can achieve the same result by closing it manually
    • @dependabot ignore this major version will close this PR and stop Dependabot creating any more for this major version (unless you reopen the PR or upgrade to it yourself)
    • @dependabot ignore this minor version will close this PR and stop Dependabot creating any more for this minor version (unless you reopen the PR or upgrade to it yourself)
    • @dependabot ignore this dependency will close this PR and stop Dependabot creating any more for this dependency (unless you reopen the PR or upgrade to it yourself)
    • @dependabot use these labels will set the current labels as the default for future PRs for this repo and language
    • @dependabot use these reviewers will set the current reviewers as the default for future PRs for this repo and language
    • @dependabot use these assignees will set the current assignees as the default for future PRs for this repo and language
    • @dependabot use this milestone will set the current milestone as the default for future PRs for this repo and language

    You can disable automated security fix PRs for this repo from the Security Alerts page.

    dependencies 
    opened by dependabot[bot] 0
  • [backend]数据库 多对多中间表删除问题

    [backend]数据库 多对多中间表删除问题

    多对多删除解决方案: 实体A使用多对多关联(@ManyToMany)关联B,JPA自动生成第三张中间表C, 然后在需要删除实体并且级联删除中间表时,提前删除中间表C的关联数据。 目前需要按此方案修改的多对多表: (A) user-like-articles (B) (A) user-favorite-articles (B)

    bug 
    opened by Nick-bit233 0
Owner
Frog Software
A group of people writing code together at BUPT.
Frog Software
Tokenisation of contents in Magnolia CMS

Magnolia tokenizer magnolia-tokenizer-module is a module of Magnolia CMS that allows the tokenization of contents in NFT's. Contents can be assets and

Joaquin Alfaro 1 Nov 1, 2022
Apollo is a reliable configuration management system suitable for microservice configuration management scenarios.

English | 中文 Apollo - A reliable configuration management system Apollo is a reliable configuration management system. It can centrally manage the con

Apollo 27.6k Jan 5, 2023
RU-collab, expands endgame content

Prometheus Technologies Java mod for Mindustry, biggest RU megacollab Compiling JDK 8. Task dexify requires d8 from Android build-tools > 28.0.1. Plai

PixaxeOfPixie 12 Jul 12, 2021
A little of Java content every day for a hundred days.

100 Days of Java Table of Contents Day 1 - Generating a random number within a specific range. Day 2 - Formatting a LocalDateTime object. Day 3 - Sche

Helber Belmiro 164 Dec 27, 2022
Calef - CalEF (Calendar Entry Formatter) : Select an entry in Android-Kalender and send/share the entry's content as human readable text.

CalEF (Calendar Entry Formatter) Select an entry in Android-Kalender and send/share the entry's content as human readable text. Usually calendar entri

k3b 6 Aug 17, 2022
Features useful for Minecraft content developers.

Easy Development A mod to make Minecraft content development easier. Includes features primarily to assist with mod, resource pack, and datapack devel

null 2 Feb 15, 2022
Universal, flexible, high-performance distributed ID generator

CosId Universal, flexible, high-performance distributed ID generator 中文文档 Introduction CosId aims to provide a universal, flexible and high-performanc

Ahoo Wang 256 Dec 27, 2022
A Universal Resolver driver for did:dns identifiers.

Universal Resolver Driver: did:dns This is a Universal Resolver driver for did:dns identifiers. Specifications Decentralized Identifiers DID Method Sp

Danube Tech 0 Dec 14, 2022
Human Resource Management System (Java & React)

?? HumanResourceManagementSystem ?? Steps İş Arayanlar sisteme kayıt olabilmelidir. ✔️ İş verenler sisteme kayıt olabilmelidir. ✔️ ️ Sisteme genel iş

Furkan Paşaoğlu 5 Sep 12, 2022
Human Resources Management System

Human Resource Management System ( HRMS ) The following tools / languages will be used in this project; Java (Spring Boot based) - on the Backend side

Fatih Deniz 17 Dec 1, 2022
Human Resource Management System - Backend

Human Resource Management System - Backend File Structure ??️ Layered Architecture Entities - The package in which the assets are kept DataAcces - Pac

Tarık Kaan Koç 30 Jan 1, 2023
Human resource management system with java spring

Pair Programming This project developed with Emin Ümüt Erarslan a.k.a 8CA5F İnsan Kaynakları Yönetim Sistemi Bu proje Engin Demiroğ' un Java-React kam

Burak KALAYCI 45 Dec 26, 2022
Backend For Human Resource Management System

?? Presentation This is a hrms project. At the backend of this project I used Java(Spring Boot) and I used PostgreSQL as database management. At the f

Salih Bora Öztürk 13 Aug 5, 2022
A repository that contains the backend part of the Human Resources Management System.

Human Resources Management System Backend A human resources management system is a form of human resources (HR) software that combines several systems

Bulent Baris Kilic 24 Dec 26, 2022
Hotels Management System - JavaFX GUI Application

Hotels Management System Hotels Management System - JavaFX Application Does this repo deserve a star? I hope that. Let's talk about what can my progra

Samer Al-Sa'dawi 22 Aug 29, 2022
Human Resource Management System

hrms Human Resource Management System ?? Proje Hakkında N-Katmanlı Solid mimari yapısı ile hazırlanan, SpringBoot kullanılarak CRUD işlemlerinin yapıl

Atakan Reyhanioglu 16 Jun 6, 2022
N-Layer Architecture human resource management system project with Java.

HRMS Project Backend N-Layer Architecture human resource management system project with Java. Report Bug · Request Feature About The Project Built Wit

Ahmet Çetinkaya 78 Dec 26, 2022
Human Resources Management System Using React with Java

File Directory Main Adapters Abstract Concretes Business Abstract Concretes Core / Utilities Regex Results Upload Data Access Abstract Entities Concre

İbrahim Can Erdoğan 15 Jul 28, 2021
Java - Backend for Human Resource Management System

HRMS (Human Resource Management System) Main Directory PostgreSQL (Heroku)Live API Java(1.8) - Spring Boot based. Dependencies: Spring Boot DevTools S

Karcan Ozbal 61 Dec 26, 2022