四个用例顺序图

main
XinqiQin 7 months ago
parent 3ac7cdc383
commit b2b7e1c431

@ -248,8 +248,171 @@ deactivate user
4.百度翻译顺序图: 4.百度翻译顺序图:
@startuml
title Minote BaiDuTranslate
skinparam sequenceParticipant underline
skinparam stereotypePosition top
hide footbox
actor User as user
participant "NoteEditActivity" as translate<<Control>>
participant "BaiduTranslateService" as service<<Entity>>
participant "MD5Utils" as md5<<Entity>>
participant "RespondBean" as bean<<Entity>>
participant "Retrofit" as retrofit<<Entity>>
activate user
== 初始化阶段 ==
user -> translate : 输入待翻译文本
activate translate
== 参数准备阶段 ==
translate -> translate : 生成随机数salt
translate -> translate : 准备appid
translate -> md5 : getMD5Code(appid + q + salt + 密钥)
activate md5
md5 -->> translate : 返回sign签名
deactivate md5
== 翻译请求阶段 ==
translate -> service : translate(q, from, to, appid, salt, sign)
activate service
service -> retrofit : 发起POST请求
activate retrofit
retrofit -->> service : 返回JSON响应
deactivate retrofit
service -> bean : 解析JSON响应
activate bean
bean -->> service : 返回RespondBean对象
deactivate bean
service -->> translate : 返回翻译结果
deactivate service
== 结果显示阶段 ==
translate -> translate : 处理翻译结果
translate -->> user : 显示翻译结果
alt 翻译出错
translate -->> user : 显示错误信息
end
deactivate translate
deactivate user
@enduml
5.登陆界面顺序图
@startuml
title Minote Iflytek Tts
skinparam sequenceParticipant underline
skinparam stereotypePosition top
hide footbox
actor User as user
participant "LoginActivity" as login<<Boundary>>
participant "SplashActivity" as splash<<Entity>>
participant "NotesListActivity" as list<<Control>>
participant "SetPassword" as setpwd<<Boundary>>
participant "DeletePassword" as delpwd<<Boundary>>
participant "SharedPreferences" as prefs<<Entity>>
activate user
== 应用启动流程 ==
user -> login : 启动应用
activate login
login -> prefs : getBoolean("user")
activate prefs
prefs -->> login : 返回密码设置状态
deactivate prefs
alt 未设置密码
login -> splash : startActivity()
activate splash
splash -> list : 延时3秒后跳转
deactivate splash
activate list
else 已设置密码
login -->> user : 显示登录界面
user -> login : 输入密码
login -> prefs : getString("password")
activate prefs
prefs -->> login : 返回存储的密码
deactivate prefs
alt 密码正确
login -> splash : startActivity()
activate splash
splash -> list : 延时3秒后跳转
deactivate splash
else 密码错误
login -->> user : 显示"密码错误"提示
login -->> user : 清空密码输入框
end
end
deactivate login
== 设置密码流程 ==
user -> list : 选择设置密码
list -> setpwd : startActivity()
activate setpwd
setpwd -->> user : 显示密码设置界面
user -> setpwd : 输入密码和确认密码
alt 密码为空
setpwd -->> user : 显示"密码不能为空"提示
else 两次密码不匹配
setpwd -->> user : 显示"密码不匹配"提示
setpwd -->> user : 清空确认密码框
else 密码设置成功
setpwd -> prefs : putBoolean("user", true)
setpwd -> prefs : putString("password", pwd)
activate prefs
prefs -->> setpwd : 保存成功
deactivate prefs
setpwd -->> user : 显示"设置密码成功"提示
setpwd -->> list : startActivity()
end
deactivate setpwd
== 删除密码流程 ==
user -> list : 选择删除密码
list -> delpwd : startActivity()
activate delpwd
delpwd -->> user : 显示密码验证界面
user -> delpwd : 输入当前密码
alt 密码为空
delpwd -->> user : 显示"密码不能为空"提示
else 密码错误
delpwd -->> user : 显示"密码错误"提示
delpwd -->> user : 清空密码输入框
else 密码正确
delpwd -> prefs : putBoolean("user", false)
activate prefs
delpwd -> prefs : putString("password", "")
prefs -->> delpwd : 保存成功
deactivate prefs
delpwd -->> user : 显示"已经删除登录密码"提示
delpwd -->> list : startActivity()
end
deactivate delpwd
deactivate user
@enduml

Binary file not shown.

After

Width:  |  Height:  |  Size: 142 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 61 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 28 KiB

Loading…
Cancel
Save