为什么: 1) 内容是创作者供的,必须有一条可管控的供给链路:创作者入驻要审、内容提交要审、 审核通过才能真正上架 —— 否则平台无法对内容和主体负责。 2) 审核不能绕过状态机。内容提交审核通过后,是顺着短剧状态机 SUBMIT → APPROVE → PUBLISH 推上去,而不是直接写 status 字段, 这样审核记录与操作日志都不会缺环。 3) 定时发布(publish_at 到点自动上线)同样走状态机,并且做成幂等任务: 重复执行不会把已上线的剧再推一次。 4) 定价落在 is_free / unlock_coin 上,与权益表解耦:改价立即影响播放与下载判定, 但已购用户的权益不受影响,不会因为改价把用户买过的东西收回去。 5) 补齐 PM 草稿未做的部分:5 个权限点 + 3 条后台菜单(含前端组件路径)+ 超管授权(幂等), 以及后台定价页需要的价格读取接口 GET /admin/prices。
71 lines
2.5 KiB
XML
71 lines
2.5 KiB
XML
<?xml version="1.0" encoding="UTF-8"?>
|
|
<project xmlns="http://maven.apache.org/POM/4.0.0"
|
|
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
|
|
xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 https://maven.apache.org/xsd/maven-4.0.0.xsd">
|
|
<modelVersion>4.0.0</modelVersion>
|
|
|
|
<parent>
|
|
<groupId>com.fruitshorts</groupId>
|
|
<artifactId>fruitshorts</artifactId>
|
|
<version>1.0.0-SNAPSHOT</version>
|
|
</parent>
|
|
|
|
<artifactId>fruitshorts-admin-api</artifactId>
|
|
<name>fruitshorts-admin-api</name>
|
|
<description>管理后台接入层:/admin/**</description>
|
|
|
|
<dependencies>
|
|
<dependency>
|
|
<groupId>com.fruitshorts</groupId>
|
|
<artifactId>fruitshorts-module-system</artifactId>
|
|
</dependency>
|
|
<dependency>
|
|
<groupId>com.fruitshorts</groupId>
|
|
<artifactId>fruitshorts-module-content</artifactId>
|
|
</dependency>
|
|
<dependency>
|
|
<groupId>com.fruitshorts</groupId>
|
|
<artifactId>fruitshorts-module-media</artifactId>
|
|
</dependency>
|
|
<dependency>
|
|
<groupId>com.fruitshorts</groupId>
|
|
<artifactId>fruitshorts-module-user</artifactId>
|
|
</dependency>
|
|
<dependency>
|
|
<groupId>com.fruitshorts</groupId>
|
|
<artifactId>fruitshorts-module-playback</artifactId>
|
|
</dependency>
|
|
<dependency>
|
|
<groupId>com.fruitshorts</groupId>
|
|
<artifactId>fruitshorts-module-interaction</artifactId>
|
|
</dependency>
|
|
<dependency>
|
|
<groupId>com.fruitshorts</groupId>
|
|
<artifactId>fruitshorts-module-commerce</artifactId>
|
|
</dependency>
|
|
<dependency>
|
|
<groupId>com.fruitshorts</groupId>
|
|
<artifactId>fruitshorts-module-creator</artifactId>
|
|
</dependency>
|
|
<dependency>
|
|
<groupId>org.springframework.boot</groupId>
|
|
<artifactId>spring-boot-starter-test</artifactId>
|
|
<scope>test</scope>
|
|
</dependency>
|
|
<dependency>
|
|
<groupId>org.springframework.security</groupId>
|
|
<artifactId>spring-security-test</artifactId>
|
|
<scope>test</scope>
|
|
</dependency>
|
|
</dependencies>
|
|
|
|
<build>
|
|
<plugins>
|
|
<plugin>
|
|
<groupId>org.springframework.boot</groupId>
|
|
<artifactId>spring-boot-maven-plugin</artifactId>
|
|
</plugin>
|
|
</plugins>
|
|
</build>
|
|
</project>
|