功能要求:
为某公司开发一套采购管理系统,用来管理公司采购物品,提供以下需求,该项目主要需要实现:
1、打开浏览器输入IP地址+项目名字+访问路径,则进入全查列表,如果没有添加过数据,则只显示标题,如下页面(图-1)。
图-1
2、点击“新增采购”超链接时,跳转到采购新增页面如下页面(图-2)。
采购类型为下拉框,可以设置办公用品,生产材料,其它等。其它
的为输入的文本框。
图-2
3、点击“保存”超链接时,新增成功,并自动跳转到采购列表,如下页面(图-3-1),把该采购信息以列表形式显示出来(图-3-2)
图-3-1
4、点击“审批”超链接时,针对当前采购的商品进行审批,在这里审批通过后,则记录审批时间以及当前审批的状态。最后如图-3-2
图-3-2
5、当点击“删除”按钮时,则删除当前记录,则跳转到列表页面,图-1。
6、在列表上面有一个模糊的查询,它可以进行模糊的查询,当输入笔记本,则查询的结果如下图-3-3
图-3-3
代码展示:
创建数据库:
DROP TABLE IF EXISTS `tbl_purchase`;
CREATE TABLE `tbl_purchase` (
`pId` int(11) NOT NULL AUTO_INCREMENT,
`pType` varchar(20) CHARACTER SET utf8 COLLATE utf8_general_ci NULL DEFAULT NULL,
`pName` varchar(50) CHARACTER SET utf8 COLLATE utf8_general_ci NULL DEFAULT NULL,
`pUnit` varchar(10) CHARACTER SET utf8 COLLATE utf8_general_ci NULL DEFAULT NULL,
`pNum` int(11) NULL DEFAULT NULL,
`pPerson` varchar(20) CHARACTER SET utf8 COLLATE utf8_general_ci NULL DEFAULT NULL,
PRIMARY KEY (`pId`) USING BTREE
) ENGINE = InnoDB AUTO_INCREMENT = 4 CHARACTER SET = utf8 COLLATE = utf8_general_ci ROW_FORMAT = Dynamic;
INSERT INTO `tbl_purchase` VALUES (1, '办公用品', '联想笔记本', '台', 5, '张三');
INSERT INTO `tbl_purchase` VALUES (2, '生活用品', '牙刷', '只', 6, '李四');
INSERT INTO `tbl_purchase` VALUES (3, '学习用品', '毛笔', '支', 4, '王五');
SET FOREIGN_KEY_CHECKS = 1;
-- Table structure for tbl_pur_approval
-- ----------------------------
DROP TABLE IF EXISTS `tbl_pur_approval`;
CREATE TABLE `tbl_pur_approval` (
`paId` int(11) NOT NULL AUTO_INCREMENT,
`pId` int(11) NULL DEFAULT NULL,
`paDate` date NOT NULL,
`paState` varchar(10) CHARACTER SET utf8 COLLATE utf8_general_ci NULL DEFAULT '未审批',
PRIMARY KEY (`paId`) USING BTREE
) ENGINE = InnoDB AUTO_INCREMENT = 5 CHARACTER SET = utf8 COLLATE = utf8_general_ci ROW_FORMAT = Dynamic;
INSERT INTO `tbl_pur_approval` VALUES (1, 1, '2020-07-30', '已审批');
INSERT INTO `tbl_pur_approval` VALUES (3, 2, '2020-07-29', default);
INSERT INTO `tbl_pur_approval` VALUES (4, 3, '2020-07-24',default);
SET FOREIGN_KEY_CHECKS = 1;
搭建工程:
创建实体类:
public class Purchase {
Integer pId;
String pType;
String pName;
String pUnit;
Integer pNum;
String pPerson;
public Purchase(Integer pId, String pType, String pName, String pUnit, Integer pNum, String pPerson) {
super();
this.pId = pId;
this.pType = pType;
this.pName = pName;
this.pUnit = pUnit;
this.pNum = pNum;
this.pPerson = pPerson;
}
public Purchase() {
super();
}
@Override
public String toString() {
return "Purchase [pId=" + pId + ", pType=" + pType + ", pName=" + pName + ", pUnit=" + pUnit + ", pNum=" + pNum
+ ", pPerson=" + pPerson + "]";
}
public Integer getpId() {
return pId;
}
public void setpId(Integer pId) {
this.pId = pId;
}
public String getpType() {
return pType;
}
public void setpType(String pType) {
this.pType = pType;
}
public String getpName() {
return pName;
}
public void setpName(String pName) {
this.pName = pName;
}
public String getpUnit() {
return pUnit;
}
public void setpUnit(String pUnit) {
this.pUnit = pUnit;
}
public Integer getpNum() {
return pNum;
}
public void setpNum(Integer pNum) {
this.pNum = pNum;
}
public String getpPerson() {
return pPerson;
}
public void setpPerson(String pPerson) {
this.pPerson = pPerson;
}
public class Approval {
Integer paId;
Date paDate;
String paState;
Purchase purchase;
public Approval(Integer paId, Date paDate, String paState, Purchase purchase) {
super();
this.paId = paId;
this.paDate = paDate;
this.paState = paState;
this.purchase