|
|
|
@ -420,6 +420,51 @@ deactivate user
|
|
|
|
|
|
|
|
|
|
///////////////////////////////////////////////////////////////////////////////////////////////
|
|
|
|
|
|
|
|
|
|
架构包图:
|
|
|
|
|
@startuml
|
|
|
|
|
title Software Architecture Package Diagram
|
|
|
|
|
|
|
|
|
|
package "Interface Layer" {
|
|
|
|
|
package "ui" {
|
|
|
|
|
class "UIController" as UI
|
|
|
|
|
}
|
|
|
|
|
package "widget" {
|
|
|
|
|
class "WidgetManager" as Widget
|
|
|
|
|
}
|
|
|
|
|
package "res" {
|
|
|
|
|
class "ResourceLoader" as Res
|
|
|
|
|
}
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
package "Business Layer" {
|
|
|
|
|
package "etask.remote" {
|
|
|
|
|
class "RemoteTask" as Remote
|
|
|
|
|
}
|
|
|
|
|
package "tool" {
|
|
|
|
|
class "ToolUtils" as Tool
|
|
|
|
|
}
|
|
|
|
|
package "exception" {
|
|
|
|
|
class "ExceptionHandler" as Exception
|
|
|
|
|
}
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
package "Model Layer" {
|
|
|
|
|
class "BusinessModel" as Model
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
package "Data Layer" {
|
|
|
|
|
class "DataAccessObject" as Data
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
UI --> Widget : uses
|
|
|
|
|
UI --> Res : uses
|
|
|
|
|
Widget --> Remote : interacts with
|
|
|
|
|
Tool --> Exception : handles
|
|
|
|
|
Remote --> Model : processes
|
|
|
|
|
Model --> Data : stores
|
|
|
|
|
|
|
|
|
|
@enduml
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
Speech版本语音听写:
|
|
|
|
|