2024/2/28日 日志 第一次测试案例分析(5)--物资类别方面
新增物资类别:需要验证物资分类编码唯一,不同的物资名称、规格、材质的物资不能设立相同的物资编码两个条件,满足才可添加
删除物资类别信息:删除物资类别基本信息时,验证物资台账明细表中是否存在该类物资,如果存在提示用户不允许删除。
修改物资类别基本信息:物资类别编号唯一不允许修改,并且验证物资台账明细表中是否存在该类物资,如果存在不允许修改该物资类别信息。
MaterialMapper
点击查看代码
package com.Moonbeams.mapper;
import com.Moonbeams.pojo.Material;
import org.apache.ibatis.annotations.Delete;
import org.apache.ibatis.annotations.Insert;
import org.apache.ibatis.annotations.Param;
import org.apache.ibatis.annotations.ResultMap;
import org.apache.ibatis.annotations.Select;
import org.apache.ibatis.annotations.Update;
import java.util.List;
public interface MaterialMapper {
/**
* 添加物资类别
* @param material
*/
@Insert("insert into ft_material values(null,#{materialName},#{description},#{materialType}) ")
@ResultMap("MaterialResultMap")
void addMaterial(Material material);
/**
* 删除物资类别
* @param id
*/
@Delete("delete from ft_material where id=#{id}")
@ResultMap("MaterialResultMap")
void deleteMaterialById(@Param("id") int id);
/**
* 修改物资类别基本信息
* @param material
*/
@Update("update ft_material set materialName=#{materialName},materialType=#{materialType},description=#{description} where id=#{id}")
@ResultMap("MaterialResultMap")
void modifyMaterial(Material material);
@Select("select *from ft_material where id=#{id}")
@ResultMap("MaterialResultMap")
Material getMaterialById(@Param("id") int id);
@Select("select *from ft_material")
@ResultMap("MaterialResultMap")
List<Material> getAllMaterials();
}
insertMaterial.jsp
点击查看代码
<%@ page import="java.util.Date" %>
<%@ page import="java.text.SimpleDateFormat" %>
<%@ page import="com.Moonbeams.pojo.User" %>
<%@ page import="java.util.List" %>
<%@ page import="com.Moonbeams.service.AdministratorService" %>
<%@ page contentType="text/html;charset=UTF-8" language="java" %>
<%@page isELIgnored="false" %>
<%
User currentUser = (User) session.getAttribute("user");
if (currentUser == null) {
response.sendRedirect("login.jsp");
return;
}
AdministratorService service = new AdministratorService();
%>
<html>
<head>
<title>新增物资类别</title>
<link rel="stylesheet" type="text/css" href="css/styles.css"> <!-- 可选的样式文件 -->
</head>
<body>
<h1>新增物资类别</h1>
<form action="administratorServlet" method="post">
<input type="hidden" name="action" value="addMaterial">
<input type="hidden" id="id" name="id">
<label for="materialName">物资名称:</label><input type="text" id="materialName" name="materialName"required><br><br>
<label for="description">规格:</label><input type="text" id="description" name="description"required><br><br>
<label for="materialType">材质:</label><input type="text" id="materialType" name="materialType"required><br><br>
<input type="submit" value="提交">
</form>
<div class="transparent-box">
<a href="personalHome.jsp">返回主界面</a>
</div>
</body>
</html>
点击查看代码
<%@ page import="java.util.Date" %>
<%@ page import="java.text.SimpleDateFormat" %>
<%@ page import="com.Moonbeams.pojo.User" %>
<%@ page import="java.util.List" %>
<%@ page import="com.Moonbeams.service.AdministratorService" %>
<%@ page import="com.Moonbeams.pojo.Material" %>
<%@ page contentType="text/html;charset=UTF-8" language="java" %>
<%@page isELIgnored="false" %>
<%
User currentUser = (User) session.getAttribute("user");
if (currentUser == null) {
response.sendRedirect("login.jsp");
return;
}
AdministratorService service = new AdministratorService();
Material material = service.getMaterialById(Integer.parseInt(request.getParameter("id")));
%>
<html>
<head>
<title>修改物资类别信息</title>
<link rel="stylesheet" type="text/css" href="css/styles.css"> <!-- 可选的样式文件 -->
</head>
<body>
<h1>修改物资类别信息</h1>
<form action="administratorServlet" method="post">
<input type="hidden" name="action" value="modifyMaterial">
<input type="hidden" id="id" name="id" value="<%= material.getId() %>">
<label for="materialName">物资名称:</label><input type="text" id="materialName" name="materialName" value="<%= material.getMaterialName() %>" required><br><br>
<label for="description">规格:</label><input type="text" id="description" name="description" value="<%= material.getDescription() %>" required><br><br>
<label for="materialType">材质:</label><input type="text" id="materialType" name="materialType" value="<%= material.getMaterialType() %>" required><br><br>
<input type="submit" value="提交">
</form>
<div class="transparent-box">
<a href="personalHome.jsp">返回主界面</a>
</div>
</body>
</html>
MaterialList.jsp
点击查看代码
<%@ page language="java" contentType="text/html; charset=UTF-8" pageEncoding="UTF-8"%>
<%@ page import="java.util.List" %>
<%@ page import="com.Moonbeams.pojo.User" %>
<%@ page import="java.util.ArrayList" %>
<%@ page import="com.Moonbeams.service.AdministratorService" %>
<%@ page import="com.Moonbeams.pojo.Storehouse" %>
<%@ page import="com.Moonbeams.pojo.Material" %>
<%@ page isELIgnored="false" %>
<%
User currentUser = (User) session.getAttribute("user");
if (currentUser == null) {
response.sendRedirect("login.jsp");
return;
}
AdministratorService service = new AdministratorService();
List<Material>materials = service.getAllMaterial();
List<Integer>MaterialIds = service.getAllMaterialId();
%>
<!DOCTYPE html>
<html>
<head>
<link rel="stylesheet" type="text/css" href="css/styles.css">
<meta charset="UTF-8">
<title>物资类别列表</title>
</head>
<body>
<h1>物资类别列表</h1>
<table id="dailyReportsTable" border="1">
<tr>
<th>物资类别ID</th>
<th>物资名称</th>
<th>规格</th>
<th>材质</th>
</tr>
<%
if (materials != null) {
for (Material material : materials) {
boolean flag = true;
for(Integer MaterialId : MaterialIds) {
if (material.getId().equals(MaterialId)) {
flag = false;
break;
}
}
String rowClass = "row"; // Add this line
if (flag) {
rowClass = "row-unapproved"; // Add this line
}
%>
<tr class="<%= rowClass %>">
<%-- <tr>--%>
<td><%= material.getId() %></td>
<td><%= material.getMaterialName() %></td>
<td><%= material.getDescription() %></td>
<td><%= material.getMaterialType() %></td>
<td>
<%if(flag){%>
<form action="modifyMaterial.jsp" method="post">
<input type="hidden" name="id" value="<%= material.getId() %>">
<input type="submit" value="修改">
</form>
<form action="administratorServlet" method="post">
<input type="hidden" name="action" value="deleteMaterial">
<input type="hidden" name="id" value="<%= material.getId() %>">
<input type="submit" value="删除">
</form>
<%}%>
</td>
</tr>
<% }
}
%>
</table>
<br>
<div class="transparent-box">
<a href="insertMaterial.jsp">新增物资信息</a>
</div>
<div class="transparent-box">
<a href="personalHome.jsp">返回主界面</a>
</div>
</body>
</html>
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· 【自荐】一款简洁、开源的在线白板工具 Drawnix
· 没有Manus邀请码?试试免邀请码的MGX或者开源的OpenManus吧
· 无需6万激活码!GitHub神秘组织3小时极速复刻Manus,手把手教你使用OpenManus搭建本
· C#/.NET/.NET Core优秀项目和框架2025年2月简报
· DeepSeek在M芯片Mac上本地化部署