YC科技资讯网

OpenSpec实践:在现有项目上创建新变更-4

本文在前面示例项目的基础上进行业务需求变更。当前用户删除采用物理删除,会导致用户数据不可追溯,不利于审计与业务回滚。同时

本文在前面示例项目的基础上进行业务需求变更。

当前用户删除采用物理删除,会导致用户数据不可追溯,不利于审计与业务回滚。同时用户资料缺少 title(头衔)字段,无法满足展示与管理需求。需要将删除语义调整为软删除,并扩展用户信息模型。

一、启动应用进行验证

下面给你一组可直接执行的 curl 示例(基于当前接口)。

1) 创建用户(不传 status,默认会写入 0)

curl -X POST "http://localhost:8080/api/v1/users" \
-H "Content-Type: application/json" \
-d '{
"username": "alice-1",
"email": "alice-1@example.com",
"phone": "13800000003",
"title": "Architect",
"gender": 1,
"birthday": "1998-06-01",
"province": "Jiangsu",
"address": "Nanjing"
}'

2) 按 ID 查询

curl -X GET "http://localhost:8080/api/v1/users/1" \
-H "Accept: application/json"

curl -X GET "http://localhost:8080/api/v1/users/10" \
-H "Accept: application/json"

3) 删除用户(软删除,实际是 status 置为 -1)

curl -X DELETE "http://localhost:8080/api/v1/users/1" \
-H "Accept: application/json"

二、执行归档操作

使用 /opsx:archive user-soft-delete-and-title 归档。

先同步规范,然后执行归档,如图所示:

至此,我们完成了将删除改为软删除(status 语义升级)并新增 title 字段。