前文《在Windows环境下使用命令行控制Mysql(二,报销表单初始化建立)》和《jeesite代码生成器的使用(实例:报销表)》中创建了两个表,由于博主很菜,这两个表的设计十分不科学,今天又对它们进行了改善。
【环境】windows 10专业版,jdk+eclipse+tomcat+mysql+maven+jeesite环境
【工具】Mysql+命令指示符,谷歌浏览器+jeesite快速开发平台
【任务】设计两张报销用表,一张报销表,一张报销项表
表单设计
报销表
ID | Project_name | create_by | create_date | update_by | update_date | remarks | del_flag |
---|---|---|---|---|---|---|---|
1 | 清明节扫墓 | ||||||
2 | 购置实习生用品 | ||||||
3 | …… |
报销项表
ID | Project_ID | Class | Total | create_by | create_date | update_by | update_date | remarks | del_flag |
---|---|---|---|---|---|---|---|---|---|
1 | 1 | 交通费 | 100.00 | ||||||
2 | 1 | 餐费 | 100.00 | ||||||
3 | 2 | 办公用品 | 100.00 | ||||||
4 | 3 | 其他 | 100.00 |
代码设计
//报销记录表
create table ExpenseClaimRecords(
ID varchar(64) NOT NULL,
Project_name nvarchar(30) NOT NULL,
create_by nvarchar(64) NOT NULL,
create_date timestamp NOT NULL,
update_by nvarchar(64) NOT NULL,
update_date timestamp NOT NULL,
remarks nvarchar(255),
del_flag char(1) NOT NULL,
CONSTRAINT id_PK PRIMARY KEY(ID)
);
//报销项记录表
create table ExpenseClaimDetails(
ID varchar(64) NOT NULL,
Project_ID varchar(64) NOT NULL,
Classes nvarchar(64) NOT NULL,
Total decimal(6,2) NOT NULL,
create_by nvarchar(64) NOT NULL,
create_date timestamp NOT NULL,
update_by nvarchar(64) NOT NULL,
update_date timestamp NOT NULL,
remarks nvarchar(255),
del_flag char(1) NOT NULL
);
业务表配置
生成方案配置
添加字典
因为我的报销项记录表使用了下拉选项,所以这里还要添加字典。字典名称可以自己起,只要和上面一致就可以了,我这里是叫做classes。
生成代码
生成代码、导入和添加菜单的过程请参考我的前文《jeesite代码生成器的使用(实例:报销表)》。
创建实例