: 行政管理人员1 : submit()approvalUI : EvaluateCtrl : EvaluateBL : Administration : Application : Approval : ATDHRS_DAL 2 : getApplications()3 : getApplications()4 : getAppsInScope()5 : execute()68 : approval()9 : approval()10 : approval()11 : getResult()12 : execute()13 : changeState()14 : execute()7 : submit() 图4.13审批模块顺序图
Fig.4.13 Sequence diagram of approval
4.2.6系统管理
系统管理模块包括评审组织结构维护、专家库信息维护、资讯维护等功能。评审组织结构是审批流程的关键所在,其顺序图如图4.14所示。
: 系统管理员orgStructureMgtUI : SystemMgtCtrl : SystemMgtBL : Administration : Role : ATDHRS_DAL
1 : submit()2 : adminsMgt()3 : adminsMgt()4 : addAdminstration()5 : execute()6 : addRole()7 : execute()图4.14组织结构维护模块顺序图
Fig.4.14 Sequence diagram of organization structure management
— 40 —
4.3 类设计
本系统共有登录注册、获取资讯、技术推广、示范户申报、评审、系统管理等六个功能模块。按照高内聚、低耦合的设计原则,对实现六个模块的主要类进行了设计。
(1)注册、登录模块
本模块功能主要由四个类共同完成,各个类的作用说明如下:
类RegLoginCtrl,收集表示层页面提交的用户名及口令数据,或注册信息,封装后提交给业务逻辑层处理。并起到页面跳转控制的作用。
类RegLoginBL,负责登录、注册等业务逻辑处理,并利用User类和ATDHRS_DAL类所提供的服务,完成登录、注册等功能。
类User,在此处负责提供注册时添加用户的服务。
类ATDHRS_DAL,负责执行具体的SQL数据库操作。在本节中,各模块的类设计都有类ATDHRS_DAL,负责各个模块的数据访问最终的执行。后续模块中不再解释该类。
本模块类图如图4.15所示。
User-username-pwd-name-city-country-userid-state+addUser()+changeState()ATDHRS_DAL+execute()RegLoginCtrl+registerUser()+login()RegLoginBL+registerUser()+checkUser()
图4.15注册登录模块类图
Fig.4.15 Class diagram of register and login
(2)获取资讯模块
本模块功能主要由四个类共同完成,各个类的作用说明如下:
类NewsCtrl,收集表示层页面提交的资讯检索信息,封装后提交给业务逻辑层处理。并起到页面跳转控制的作用。
— 41 —
类NewsBL,负责检索资讯、浏览资讯等业务逻辑处理,并利用News类提供的服务,完成资讯检索浏览功能。
类News,在此处负责提供资讯检索、资讯列表的服务。 本模块类图如图4.16所示。
News-infoid-title-keyword-type-content-newsList+addNews()+getNewsByID()+queryByKeywords()+getNewsList()NewsBL+getNewsList()+getNews()+queryNews()NewsCtrl+getNewsList()+getNews()+queryNews()ATDHRS_DAL+execute()
图4.16获取资讯模块类图 Fig.4.16 Class diagram of news
(3)技术推广模块
本模块功能主要由七个类共同完成,各个类的作用说明如下:
类TecServiceCtrl,收集表示层页面提交的农技提问信息、农技问题解答信息、农技推广活动记录信息、发布农技应用典型案例信息,封装后提交给业务逻辑层处理。并起到页面跳转控制的作用。
类TecServiceBL,负责农技提问、农技问题解答、农技推广活动记录、发布农技应用典型案例等业务逻辑处理,并利用News、Problem、Answer、ServiceActivity等类提供的服务,完成各项功能。
类News,在此处负责提供农技应用典型案例添加的服务。 类Problem,在此处负责提供添加农技应用问题的服务。 类Answer,在此处负责提供添加农技应用问题解答的服务。 类ServiceActivity,在此处负责提供添加农技推广活动记录的服务。 本模块类图如图4.17所示。
— 42 —
TecServiceCtrlServiceActivity-act_id-user_id-theme-act_content-resolve-act_time-pay-pay_info+addTecServiceActivity()+submitQuestion()+answer()+submitSuccessfulCase()+recordTecService()ATDHRS_DAL+execute()TecServiceBL+addQuestion()+answer()+addSuccessfulCase()+recordTecService()News-infoid-title-keyword-type-content-newsList+addNews()+getNewsByID()+queryByKeywords()+getNewsList()Problem-pro_id-user_id-title-detail-resolve+addProblem()+getProblems()Answer-answer_id-pro_id-answer_content+addAnswer()+getAnswersByProid()10..*
图4.17技术推广模块类图
Fig.4.17 Class diagram of technology service
(4)示范户申报模块
本模块功能主要由六个类共同完成,各个类的作用说明如下:
类ApplicationCtrl,收集表示层页面提交的农业示范户申报信息,或查询申报进度和查询评审结果及专家建议的请求,封装后提交给业务逻辑层处理。并起到页面跳转控制的作用。
类ApplicationBL,负责申报材料提交、查询申报进度、查询评审结果及专家建议等业务逻辑处理,并利用Application、Advice、MaturityEvaluate等类提供的服务,完成各项功能。
类Application,在此处用于申报信息的封装。
类Advice,在此处负责提供获取专家评审建议的服务。
类MaturityEvaluate,在此处负责提供评审各维度指标得分的服务。 本模块类图如图4.18所示。
— 43 —