一个关于freemarker+webwork+spring+ibatis的demo文档

 
1 任务
1.背景
利用所学框架完成以下系统:
我公司需要对所有固定资产(包括电脑、桌椅、书籍等办公设备)分门别类进行登记管理。系统涉及角色包括:
系统管理员,固定资产管理员,办公室主任,普通员工,中层管理人员,高层管理人员。
2.功能
系统完成功能包括固定资产清单管理(可以按公司、部门、个人查看),
固定资产出借管理(可以按公司、部门、个人查看),
3.规则
固定资产净值管理(固定资产分5年分摊,每年递减最初的20%),
资产额度大于10000的出借需要办公室主任批准,其他出借只需资产管理员登记即可。普通员工借用数量不能大于5件,中层管理人员不能大于10件,高层管理人员无限制。
此处件数为累积数量
2 使用框架和环境
工具: eclipse 3.2 + jdk 1.5 + Maven 2.0 + jetty-5.1 + Mysql 5.0
框架: freemaker + webwork + spring + ibatis
3 数据库
1.数据库使用规范 V0.1 001
1. 数据库定义中所有标识符必须标识符以英文字母开头,由一个或多个英文单词构成,单词构成为名词或动宾结构,每个单词之间必须以"_"分隔(数字除外)。
如     field_name     col_name1
2. 每一个数据库字段必须定义缺省值(Blob等大字段除外)。
如     product_name [VARCHAR] (100) NULL default ''
product_type [INTEGER] NULL default 0,
product_date [DATETIME] NULL default sysdate,
3. 所有数据表中必须有id字段,id字段长度为10个字符(用户帐号表除外),id字段是该表的主键,且需要对id字段作索引。id字段内容由数字字母串构成,区分大小写。
4. 所有数据表中必须有flag字段,flag字段为integer型,flag取值含义:0表示该记录未经审核,1表示已经审核通过,2表示该记录已经被锁定(审核未通过),3表示该记录当前还没有被激活,10表示该记录已经被删除。
5. 所有实体表(如用户表、产品表等表示具体事务属性的表)中必须包含以下字段(关联表可以不包含):
modifier_id [varchar] (50) NULL default '',
modify_date [datetime]       NULL default sysdate,
creator_id    [varchar] (50) NULL default '',
create_date [datetime]       NULL default sysdate,
6. 所有实体表前必须加前缀tbl_,关联表前必须加前缀jnt_,索引加后缀_ndx,存储过程为sp_projectname_
CREATE INDEX fzpl.User_Corp__Corp_ID__ndx
ON fzpl.Jnt_User_Corp(Corp_ID)
TABLESPACE indx;
2.数据库设计
Mysql 区分大小写 
全部小写
Create database goods;
1. 固定资产 tbl_goods
Create table tbl_goods(
       Goods_id      varchar (20)   NOT NULL default '',
Goods_name     varchar (100)  NOT NULL default '',
Goods_value    long          ,
Goods_date      datetime,
Goods_number    int           default 1,
PRIMARY KEY (Goods_id )
)
2.物品分类 jnt_goods_type
Create table jnt_goods_type(
Goods_type     varchar (100)   NOT NULL default '',
Goods_id        varchar (20)   NOT NULL default '',
)
 
3. 角色  tbl_role
Create table tbl_role(
role_id       int            //NOT NULL default 0,
role_name    varchar (100)    NOT NULL default '',
PRIMARY KEY (role_id )
)
INSERT INTO tbl_role (role_id , role_name ) VALUES
 (1,'系统管理员 '),
 (2,’ 固定资产管理员 '),
 (3,'办公室主任 '),
 (4,'高层管理人员 '),
(5,'中层管理人员 '),
(6,'普通员工 ') ;
4.用户 tbl_user
Create table tbl_ user(
   User_id           varchar (20)    NOT NULL default '',
   User_name         varchar (20)    NOT NULL default '',
PRIMARY KEY (`User_id`)
)
5用户——角色 jnt_staff_manage
Create table jnt_ staff_manage(
User_id           varchar (20)    NOT NULL default '',
role_id             int          NOT NULL default 6,
User_company      varchar (100)  NOT NULL default '',
User_ department varchar (100)  NOT NULL default '',
)
6.规则 tbl_rule      
Create table tbl_ rule(
Rule_name       varchar (50)    NOT NULL default '',
Rule_value       varchar (50)    NOT NULL default ''
)
如:
固定资产净值管理(固定资产分5年分摊,每年递减最初的20%)
资产额度大于10000的出借需要办公室主任批准,其他出借只需资产管理员登记即可。
普通员工借用数量不能大于5件,中层管理人员不能大于10件,高层管理人员无限制。
7. 固定资产出借管理 jnt_goods_user
Create table jnt_goods_ user (
Goods_id           varchar (20)   NOT NULL default '',
User_id            varchar (20)    NOT NULL default '',
Lend_time           datetime,
Back_time          datetime,
Plan_time           datetime,         //计划归还时间
Goods_number       int            default 1,
Back_number        int ,           //default 0
Goods_status         int       //0:未归还 1:部分归还 2:全部归还    3 :等待办公室主任批准 
)
* 此表作为记录 不能有删除动作!
7. 固定资产出借管理临时表 jnt_goods_user_wait
同jnt_goods_ user  ,作为临时 记录使用
 
8.物品登记 jnt_goods_status (?)
Create table jnt_goods_status(
 Goods_id           varchar (20)    NOT NULL default '',
Goods_status        char           NOT NULL default '0' 
// Goods_status
//0 :没有借出 
//1 :已全部借出
//2 :部分借出
)
9.固定资产所属(公司、部门、个人) jnt_goods_belong
Create table jnt_goods_belong(
Goods_id          varchar (20)   NOT NULL default '',
User_id           varchar (20),
User_company      varchar (100),
User_ department varchar (100),
)
//固定资产属于(公司、部门、个人),以最小单位记,
//如 个人优于部门,部门优于公司
10.部门tbl_department
Create table tbl_department(
//------联合主键
Department_name varchar (100) not null default ‘’,
   Department_company varchar (100) not null default ‘’,
   //other message
)
11.公司tbl_company
Create table tbl_company(
//------主键
   Company_name varchar (100) not null default ‘’,
   //other message
)
 
4 业务逻辑
1.资产登记:
所有固定资产(包括电脑、桌椅、书籍等办公设备)分门别类进行登记管理
逻辑
目标
优先级
查看
详细信息
1
增加
信息
2
修改
 
2
删除
信息
3
2.固定资产出借管理:
固定资产出借管理(可以按公司、部门、个人查看),
逻辑
目标
优先级
租借信息查看
详细信息
1
信息
2
归还
数量
2
规则限制的租借处理
 
3
 
 
 
5 设计(以主要业务逻辑为例)
1.资产登记 
以GoodsService为主线
  • 0
    点赞
  • 3
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值