苏宁连锁发展业务需求中共通模块的概要设计说明书Word格式文档下载.docx
- 文档编号:17884983
- 上传时间:2022-12-11
- 格式:DOCX
- 页数:16
- 大小:840.86KB
苏宁连锁发展业务需求中共通模块的概要设计说明书Word格式文档下载.docx
《苏宁连锁发展业务需求中共通模块的概要设计说明书Word格式文档下载.docx》由会员分享,可在线阅读,更多相关《苏宁连锁发展业务需求中共通模块的概要设计说明书Word格式文档下载.docx(16页珍藏版)》请在冰豆网上搜索。
GT0203
提交域检查
检查text,textarea,redio,checkbox,select内容。
包括:
必输项,类型。
5.画面迁移图
无
6.画面功能说明
6.1.GT0101附件上传
图GT0101_1附件上传
图GT0101_2附件浏览
I.动作描述
动作
动作描述
关联数据表
初期化(init)
●根据传入的参数初始化附件分类和已上传附件列表。
参数一览:
1.附件主类型编号
参数:
form.attMainType
2.关联主键(最多5个)
form.referenceKey,以逗号分隔
3.附件子类型编号(可选)
form.attSubType
4.编辑模式(可选)
参数:
form.viewMode
值:
true:
查看模式;
false:
编辑模式(默认值:
false)
附件表,附件分类明细表
上传(upload)
●判断必须输入项
●前台判断文件大小,如果操作1M(配置文件配置),报错。
●检查文件类型
判断上传的附件的后缀名与该附件类型都应的类型是否一致,如果不一致,报错。
●利用Struts2的文件上传机制,上传文件,保存数据库。
1.保存文件到服务器目录
文件路径:
文件基本路径+关键主键
文件名:
”F”+系统时间.后缀(如:
F20100825021311870.bmp)
2.如果是图片文件(如:
gif,jpg,png,bmp),利用jdk中的rt.jar包中的Image包生成缩略图。
缩略图的路径同上。
文件名:
”B”+系统时间+”PNG”。
(如:
B20100825021311870.PNG)
3.保存数据库。
附件表
返回
●关闭窗口
删除(delete)
●删除选择的文件。
●如果有缩略图,需要删除缩略图。
●删除DB中相应的数据。
文件名链接
●调用GT0102下载附件功能
6.2.GT0102附件下载
I.功能描述
功能
功能描述
●下载页面:
根据附件表的主键下载附件。
利用Struts2的下载机制。
地址:
GT0102_download.do
form.rowId
6.3.GT0103图片浏览
初期化
●根据传入的参数取得附件值并显示第一张图片。
1.附件类型(主)编号
2.关联主键(最多5个)
排序规则:
附件名称
显示内容:
图片,附件名,文件描述
左侧图片链接
●显示选择的图片及该图片对应的附件名,文件描述
使用说明
6.4.GT0201动态表单
利用JS实现表格的TR域的新增和内容的复制。
增加行
●函数:
functionaddLine(tableId)
内容:
1.根据传入的表格编号,取得表格对象。
2.新增一个表格行并拷贝第一行的所有单元格到该行。
删除行
functiondeleteLine(tableId,checkboxName)
1.根据checkbox名取得checkboxlist的值。
2.遍历该list,删除选中的行。
保存
●利用Struts2的表单上传。
动态表单JS:
根目录\resource\js\autoTr.js
项目中引用时放在body中
<
body>
......
scriptlanguage="
javascript"
src="
%=basePath%>
resource/jsautoTr.js"
>
/script>
/body>
//添加行操作
functionaddLine(a,b,c,d,e){
具体实现省略,JS中有完备注解
}
为了方法更全面,灵活性更高,参数需要设定5个a:
需要被插入table对象的ID;
b:
需要插入的数据(数据按照”,”作为分隔符。
);
c:
子checkbox的name;
d:
主checkbox的ID号;
e:
每行SELECT标签的个数
//删除行操作
functiondeleteLine(a,b,c){
a:
table对象的ID;
子checkbox的name;
c:
主checkbox的ID号
//全选行
functioncheckAllbox(a,b,c){
//置换select方法
functionselect_id(a,b){
具体实现省略,JS中有完备注解
定义第一数字参数项目的select数目;
table对象的ID
selectid改写标准select_[同行同数]_[同行唯一数]
建议使用时参阅示例程序,示例程序在目录SUNINGLF2\SVNSUNINGLF2_DOC\02DesignDoc\02BasicDesign\共通和系统框架下
6.5.GT0203提交域检查
通过配置输入表单的属性,检查表单内容是否符合规范。
支持表单:
text,textarea,redio,checkbox,select
检查输入域规范
●增加表单的属性
canNull
1:
可空;
0:
不可空。
typeValue
1:
数字;
2:
浮点型;
3:
英文;
4:
英文和数字;
messageName
表单名称(报错时使用)
●遍历整个document,根据各个表单域的属性配置,检查必输项,类型。
如果不符合规范,更改表单的class为错误样式并报第一个表单域的错误信息。
Message内容如下:
必输项:
表单域(表单名称)是必须填写项,请确认是否填写。
类型:
表单域(表单名称)只能输入英文,请确认是否填写正确。
以上蓝色内容,请换成属性配置内容。
注意:
后一次检查正确时,需要把前一次错误的class恢复。
(1).对于Text,TextArea表单,canNull,messageName,typeValue均有效。
(2).对于redio,checkbox,select表单,只有canNull,messageName有效。
并且,这3个表单的上级表单,必须为<
div>
,且同组的redio,checkbox必须处于同一DIV下。
另外,属性配置需要配置在DIV中。
例如:
<
divcanNull=0messageName='
选择项'
inputtype="
radio"
name="
payStyle"
AA
BB
CC
/div>
6.6.导航栏
导航栏是通过JS实现导航栏的初始化,增加链接等操作。
初始化
函数:
functioninitNavigation(navigList)
功能说明:
1.遍历参数navigList,取得画面编号,画面名,URL并存入导航栏数组中
2.生成导航栏。
增加
functionaddNavigation(navig)
1.遍历导航栏数组,查找传入的画面是否存在。
如果存在,则删除该数组后面的所有值。
如果不存在,则增加传入参数到导航栏数组最后。
生成导航栏
functionmakeNavigation()
1.遍历导航栏数组,拼出导航栏的HTML代码。
2.将拼出的导航栏HTML代码射到导航栏的Table域中。
在jsp页面添加以下代码:
1.导入js
src="
%=request.getContextPath()%>
/resource/js/guide.js"
2.初始化navigation,方法名可自定义,方法体必须调用updateNavigation(),传入4个参数,前两个为固定值,navigat,navigatStr,第三个为该页面中文名,第四个访问改页面的url,例如以下:
//初始化Navigation
functioninitKF0511Navigation(){
updateNavigation('
navigat'
'
navigatStr'
备选址信息编辑'
'
KF0511_init.do'
);
}
3.添加页面隐含域
s:
hiddenname="
form.navigatStr"
id="
navigatStr"
/>
4.添加以下table
tablewidth="
99%"
border="
0"
cellpadding="
cellspacing="
style="
margin-top:
5px"
align="
center"
tr>
tdid="
navigat"
class="
navigationBar"
divid="
/td>
/tr>
/table>
6.7.字典表数据加载
该功能要求系统启动时,字典表里的数据就自动加载,
●随着用户系统的启动,加载字典表里的数据信息
在web.xml中的servlet配置项中,增加关于加载字典表数据的信息,调用字典表数据加载类,以便系统一启动时关于字典表数据的信息可以立即加载。
●如果处理失败,系统后台出现错误信息
数据字典表
6.8.Log机制
本项目log处理采用的是log4j。
共分为5个等级,分别如下:
Error:
发生错误。
如:
页面加载失败,文件上传下载失败,程序发生异常等。
Info:
系统运行,页面加载,页面动作。
系统启动,系统结束等。
Debug:
调试信息。
本次log,按照log等级来分文件输出。
单个文件最大大小为10M,备份次数为100次。
Log输出格式为:
[等级]时间输出类(行数)-log内容。
[info]20100722112201000com.snlf2.biz.develop.action.KF0501Action(30)-页面初始化开始。
6.9.异常处理机制
本项目采用Struts2的异常处理机制。
利用拦截器对所有页面及操作进行拦截,在发生异常时,输出log并迁移到错误画面。
捕捉的异常主要分为下面几类:
异常种类
异常说明
java.sql.SQLException
SQL异常
com.webpump.sdk.exception.FwSessionException
Session异常
com.webpump.sdk.exception.FwSystemException
URL异常
org.Smon.exception.DataNotExistException
数据不存在异常
java.lang.Exception
其他异常
错误页面
●根据异常,取得相应的错误Message并输出
Message配置文件
重新登陆
●跳转到登陆页面
6.10.权限机制
本项目权限管理涉及系统菜单控制和业务数据控制两个部分。
本共通针对系统菜单控制权限进行说明,业务数据权限控制在各个页面的业务中进行描述。
页面加载
●根据用户角色编号检索角色菜单表和菜单表,取得该角色所拥有的所有菜单。
●按照菜单表定义的菜单顺序加载菜单。
角色菜单表,菜单表
6.11.POPUP共通
POPUP共通分父页面与子页面两个部分。
本共通针对如何使用POPUP共通进行说明。
备注
父页面调用
●引用共通js:
common.js
●书写回调函数:
functionXXX(paramResult){};
参数paramResult为子页面的返回值。
●实装POPUP:
varurl="
jsp/hr/hrsearch.jsp"
;
//设定URL
setCallBackFunName('
XXX'
//设定回调函数名
varpopupWindow=popup(url);
//POPUP子页面
popupWindow.focus();
//子页面focus
Popup的参数:
URL,弹出窗口名,弹出窗口宽度,弹出窗口高度
除URL外,其它参数默认值在common.js内定义
子页面调用
●在初始化js中追加:
getParentCallBackName();
//获得回调函数名
●实装事件js:
varparam=newPopupResult();
//初始化返回值
param.staffInfo.add("
"
//Arry类型的追加
param.staffNo="
//普通类型的设定
param.callBack();
//回调
PopupResult中的项目需要在common.js内定义。
注:
详细可参见jsp_snlf2/develop/KF0101.jsp与jsp/hr/hrsearch.jsp
7.接口一览
8.接口详细
各页面与FW工作流的接口,由FW的工作流驱动业务流。
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 连锁 发展 业务 需求 共通 模块 概要 设计 说明书