冲刺博客4

1.昨天的成就
完成检测计划管理和检测工单管理的开发
2.遇到的困难
设备状态选项无法随着用户的操作正常更新
3.今天的任务
对设备故障管理和维修工单管理添加语音助手
4.代码嵌入
package com.yunwei.servlet;

import com.yunwei.model.InspectionOrder;
import com.yunwei.util.DBUtil;
import com.yunwei.util.ImageUtil;

import jakarta.servlet.ServletException;
import jakarta.servlet.annotation.MultipartConfig;
import jakarta.servlet.annotation.WebServlet;
import jakarta.servlet.http.;
import java.io.File;
import java.io.IOException;
import java.sql.
;
import java.time.LocalDateTime;
import java.time.format.DateTimeFormatter;
import java.util.ArrayList;
import java.util.List;

@MultipartConfig(maxFileSize = 5 * 1024 * 1024, maxRequestSize = 20 * 1024 * 1024)
@WebServlet("/inspection/order/*")
public class InspectionOrderServlet extends HttpServlet {
private static final DateTimeFormatter DTF = DateTimeFormatter.ofPattern("yyyy-MM-dd HH:mm:ss");

@Override
protected void service(HttpServletRequest req, HttpServletResponse resp) throws ServletException, IOException {
String pathInfo = req.getPathInfo();
if (pathInfo == null) pathInfo = "/list";
switch (pathInfo) {
case "/list" -> list(req, resp);
case "/add" -> add(req, resp);
case "/edit" -> edit(req, resp);
case "/detail" -> detail(req, resp);
case "/accept" -> accept(req, resp);
case "/start" -> start(req, resp);
case "/complete" -> complete(req, resp);
case "/close" -> close(req, resp);
default -> list(req, resp);
}
}

private void add(HttpServletRequest req, HttpServletResponse resp) throws ServletException, IOException {
if ("GET".equalsIgnoreCase(req.getMethod())) {
req.getRequestDispatcher("/WEB-INF/jsp/inspection/orderForm.jsp").forward(req, resp);
return;
}
String orderNo = "XJ" + LocalDateTime.now().format(DateTimeFormatter.ofPattern("yyyyMMddHHmmss"));
String sql = "INSERT INTO inspection_order (order_no, plan_id, device_type, device_name, device_code, location, inspect_date, assign_to, status) VALUES (?, ?, ?, ?, ?, ?, ?, ?, ?)";
try (Connection conn = DBUtil.getConnection();
PreparedStatement ps = conn.prepareStatement(sql)) {
ps.setString(1, orderNo);
ps.setInt(2, req.getParameter("planId") != null && !req.getParameter("planId").isEmpty() ? Integer.parseInt(req.getParameter("planId")) : 0);
ps.setString(3, req.getParameter("deviceType"));
ps.setString(4, req.getParameter("deviceName"));
ps.setString(5, req.getParameter("deviceCode"));
ps.setString(6, req.getParameter("location"));
ps.setDate(7, Date.valueOf(req.getParameter("inspectDate")));
ps.setString(8, req.getParameter("assignTo"));
ps.setString(9, "待处理");
ps.executeUpdate();
resp.sendRedirect(req.getContextPath() + "/inspection/order/list");
} catch (SQLException e) {
e.printStackTrace();
req.setAttribute("error", "添加失败:" + e.getMessage());
req.getRequestDispatcher("/WEB-INF/jsp/inspection/orderForm.jsp").forward(req, resp);
}
}

private void list(HttpServletRequest req, HttpServletResponse resp) throws ServletException, IOException {
String keyword = req.getParameter("keyword");
String status = req.getParameter("status");
int page = 1; String pageStr = req.getParameter("page");
if (pageStr != null && !pageStr.isEmpty()) page = Integer.parseInt(pageStr);
int pageSize = 10;
StringBuilder sql = new StringBuilder("SELECT * FROM inspection_order WHERE 1=1");
List

posted @ 2026-05-19 20:29  lagranSun  阅读(3)  评论(0)    收藏  举报