vetlog:SpringBoot宠物管理系统源码案例

让您的宠物的历史记录井井有条。
特征

  • 您可以在平台上注册成为用户

  • 您可以注册您的宠物,以便维护兽医就诊日志

  • 您可以领养一些宠物

  • 你可以领养宠物

宠物登记
作为用户, 我想注册我的宠物 ,以便获得宠物记录
验收标准
宠物记录必须包含:

  • 爱称

  • 出生日期

  • 类型(猫、狗、鸟、啮齿动物、蜘蛛、蛇)

  • 品种(应按类型分类)

  • 如果已驱虫

  • 如果已经消毒了

  • 它已接种疫苗

  • 宠物的形象

除了:

  • 宠物需要一个唯一的ID

品种目录
作为一名兽医, 我想注册新品种 ,以便我可以从目录中获取品种
验收标准
宠物记录必须包含:

  • 姓名

  • 类型(猫、狗、鸟、啮齿动物、蜘蛛、蛇)

除了:

  • 兽医可以注册新品种
  • 兽医可以去除任何品种
  • 品种列表应显示为目录

用户注册
作为访客, 我想注册自己, 以便在平台中获得身份
验收标准
用户必须包含:

  • 电子邮件

  • 密码

除了:

  • 根据标准,电子邮件必须是有效的
  • 电子邮件应该是唯一的
  • 用户名应该是唯一的
  • 密码长度应至少为 8 个字符

用户验证
作为用户, 我想验证我的电子邮件 ,以便我知道 vetlog 可以联系我
验收标准
用户验证应该:

  • 注册后发送邮件给用户

  • 在确认电子邮件之前用户将无法登录

除了:

  • 电子邮件正文将包含验证链接

恢复密码链接
作为用户, 我希望收到恢复密码链接 ,以便我可以更改密码
验收标准
用户验证应该:

  • 登录页面中带有标签的链接:忘记密码?
  • 用户应在文本框中输入他的电子邮件
  • 用户将收到用于更改密码的 URL。

宠物日志登记
作为宠物主人, 我想注册我的宠物日志 ,以便我可以获得兽医就诊宠物的历史记录
验收标准
宠物记录必须包含:

  • 宠物症状
  • 宠物诊断
  • 处方药
  • 参观日期
  • 兽医的名字

列出宠物
作为宠物主人, 我想列出我的宠物 ,以便我可以看到它们的数据
验收标准
宠物清单必须包含:

  • 宠物的名字
  • 出生日期
  • 类型(猫、狗、鸟、啮齿动物、蜘蛛、蛇)
  • 品种(应按类型分类)
  • 如果已驱虫
  • 如果已经消毒了
  • 它已接种疫苗
  • 宠物的形象

列出要收养宠物
作为宠物主人, 我想列出我的宠物 ,以便我可以选择收养宠物
验收标准
宠物清单必须包含:

  • 宠物的名字
  • 出生日期
  • 品种(应按类型分类)
  • 如果已驱虫
  • 如果已经消毒了
  • 它已接种疫苗
  • 宠物的形象
  • 带有标签的按钮:供采用

添加领养宠物描述
作为宠物主人, 我想在收养时为我的宠物添加描述 ,以便我有更多机会为我的宠物找到家庭
验收标准
宠物清单必须包含:

  • 宠物的名字
  • 出生日期
  • 品种(应按类型分类)
  • 如果已驱虫
  • 如果已经消毒了
  • 它已接种疫苗
  • 宠物的形象
  • 用于添加描述的 1000 个字符的文本区域

收养宠物
作为收养宠物的用户, 我想知道其他用户是否有兴趣收养我的宠物 ,以便我可以联系其他用户并收养我的宠物
验收标准
宠物收养必须包含:

  • 致谢领养者的一封信

  • 宠物的形象

  • 宠物的名字

  • 用户的采用者手机

  • 带有标签的按钮:做吧!

除了
在此过程结束时,将向收养宠物的用户发送一封电子邮件,通知其他用户对该宠物及其电话感兴趣。

列出宠物日志
作为宠物主人, 我想查看我的宠物日志 ,以便我可以查看我的兽医就诊历史
验收标准
宠物日志记录必须包含:

  • 宠物症状
  • 宠物诊断
  • 处方药
  • 参观日期
  • 兽医的名字

编辑宠物信息
作为用户, 我想编辑我的宠物的信息 ,以便我可以根据需要进行修改
验收标准
编辑宠物信息必须包含:

  • 宠物的名字
  • 出生日期
  • 类型(猫、狗、鸟、啮齿动物、蜘蛛、蛇)
  • 品种(应按类型分类)
  • 如果已驱虫
  • 如果已经消毒了
  • 它已接种疫苗
  • 宠物的形象

添加宠物医生
作为Vetlog 平台,我希望有两种用户类型,一个用户和一个兽医,以便用户可以注册宠物,兽医可以列出用户的宠物。
验收标准

  • 兽医应该能够在文本框中输入用户名,然后单击“搜索”按钮
  • 兽医应该能够列出该用户的所有注册宠物
  • 兽医应该能够注册其他用户的宠物日志

删除宠物
作为用户,我想删除宠物,以便我可以从我的宠物列表中删除任何宠物
验收标准

  • 用户可以列出宠物
  • 用户可以在列表中的每只宠物下方看到删除按钮
  • 用户可以点击删除按钮并得到系统的确认请求
  • 用户确认后应删除宠物

配置
在计算机的主目录: 中${home},创建一个名为: 的目录,然后在其中创建一个包含以下内容的.vetlog文件:application-development.yml

spring:
datasource:
url:  jdbc:mysql://localhost:3306/vetlog username:  username
password:  password
driverClassName: com.mysql.jdbc.Driver
maxActive:  50
maxIdle: 5
minIdle: 25
initialSize: 10
validationQuery: SELECT 1
testOnBorrow: true
testOnReturn: false
testWhileIdle: true
timeBetweenEvictionRunsMillis: 5000
minEvictableIdleTimeMillis: 60000
maxWait: 10000
template:
cache: false
jpa:
generateDdl: true
hibernate:
DdlAuto: update
profiles:
include: development
messages:
basename: i18n/messages
servlet:
multipart:
maxFileSize: 10MB
maxRequestSize: 10MB
cloud:
gcp:
projectId: vetlog-357216
core:
enabled: true
credentials:
location: classpath:vetlog.json
message: Hello Vetlog!
jmailer:
url: https://jmailer.josdem.io/emailer/ path: message
baseUrl: https://vetlog.org/
template:
register:
name: register.ftl
path: recovery/activate/
forgot:
name: forgotPassword.ftl
path: recovery/forgot/
adoption:
name: adoption.ftl
breedsByTypeUrl: https://vetlog.org/breed/list
imageBucket: vetlog-bucket
prescriptionBucket: prescription-bucket
gcpUrl: https://storage.googleapis.com/defaultImage: default-image.png
token: jmailer-user-token
management:
endpoints:
web:
exposure:
include: "health,info"

运行:
确保您有 NodeJS 依赖项:

cd ${PROJECT_HOME}/src/main/resources/static/assets/servizi-dog-theme
npm install

然后要运行该项目,您需要执行以下 Gradle 命令:

gradle -Dspring.config.location=$HOME/.vetlog/application-development.yml -Dflyway.user=${username} -Dflyway.password=${password} bootRun

${username}您是 MySQL vetlog 数据库用户吗
${password}你是MySQL vetlog数据库密码吗
注意:如果这是您第一次创建数据库,请确保运行此命令
gradle -Dflyway.user=${username} -Dflyway.password=${password} -Dflyway.baselineOnMigrate=true flywayMigrate -i` 

运行测试
gradle -Dspring.config.location=$HOME/.vetlog/application-development.yml jacocoTestReport sonarqube test

运行特定测试
gradle -Dspring.config.location=$HOME/.vetlog/application-development.yml test --tests ${testName}

${testName}是您要运行的测试名称

ER图

这是一个实体关系模型,描述 Vetlog 业务领域中相互关联的实体。
vetlog:SpringBoot宠物管理系统源码案例_第1张图片

监视健康端点
https://vetlog.org/actuator/health

预期输出:

{
"status": "UP"
}

信息端点
https://vetlog.org/actuator/info

预期输出:

{
"build": { "artifact": "vetlog-spring-boot", "name": "vetlog-spring-boot", "time": "${timeStamp}", "version": "${currentVersion}", "group": "com.jos.dem.vetlog" }
}

  • ${timeStamp}是建设时间
  • ${version}是最新版本

https://www.jdon.com/71347.html

你可能感兴趣的:(javascript,reactjs)