inOrderServiceImpl.java

branch_cwf
cwfeng 1 year ago
parent e0f677c9c9
commit e95c524ffd

@ -1,68 +1,62 @@
package com.lingnan.supermarket.dao.impl;
import java.sql.Connection;
import java.sql.PreparedStatement;
import java.sql.ResultSet;
import java.sql.SQLException;
import java.sql.Timestamp;
import java.util.Date;
import java.util.Vector;
import com.lingnan.supermarket.dao.inOrderService;
import com.lingnan.supermarket.dto.InOrder;
import com.lingnan.supermarket.utils.DateUtil;
import com.lingnan.supermarket.utils.JDBCUtil;
import java.sql.*;
import java.util.Vector;
public class inOrderServiceImpl implements inOrderService{
@Override
public Vector<InOrder> findAllInOrder (){
Vector<InOrder> inOrders = new Vector<InOrder>();
Connection conn = JDBCUtil.getConn();
PreparedStatement preparedStatement = null;
ResultSet resultSet=null;
public Vector<InOrder> findAllInOrder() {
Vector<InOrder> inOrders = new Vector<InOrder>(); // 创建一个向量用于存储InOrder对象
Connection conn = JDBCUtil.getConn(); // 获取数据库连接
PreparedStatement preparedStatement = null; // 声明预编译语句对象
ResultSet resultSet = null; // 声明结果集对象
// SQL查询语句选择未删除的订单并按入库日期降序排列
String SQL = "select * from inOrder where delmark=1 order by inDate desc";
try {
preparedStatement = conn.prepareStatement(SQL);
resultSet = preparedStatement.executeQuery();
while(resultSet.next()) {
InOrder inOrder = new InOrder();
preparedStatement = conn.prepareStatement(SQL); // 准备SQL语句
resultSet = preparedStatement.executeQuery(); // 执行查询
while (resultSet.next()) { // 遍历结果集
InOrder inOrder = new InOrder(); // 创建InOrder对象
// 从结果集中获取属性并设置到inOrder对象
inOrder.setiNumber(resultSet.getString("iNumber"));
inOrder.setAllInPrice(resultSet.getFloat("allInPrice"));
inOrder.setInDate(resultSet.getString("inDate"));
inOrder.setPrincipal(resultSet.getString("principal"));
inOrder.setStatus(resultSet.getInt("status"));
inOrder.setDelmark(resultSet.getInt("Delmark"));
inOrders.add(inOrder);
inOrders.add(inOrder); // 将InOrder对象添加到向量中
}
} catch (SQLException e) {
e.printStackTrace();
e.printStackTrace(); // 捕获并打印异常堆栈信息
} finally {
JDBCUtil.close(resultSet, preparedStatement, conn);
JDBCUtil.close(resultSet, preparedStatement, conn); // 关闭结果集、预编译语句和数据库连接
}
return inOrders;
return inOrders; // 返回存储所有InOrder对象的向量
}
@Override
public InOrder findByIdinOrder(String iNumber) {
InOrder inOrder = new InOrder();
Connection conn = JDBCUtil.getConn();
PreparedStatement preparedStatement = null;
ResultSet resultSet = null;
InOrder inOrder = new InOrder(); // 创建InOrder对象
Connection conn = JDBCUtil.getConn(); // 获取数据库连接
PreparedStatement preparedStatement = null; // 声明预编译语句对象
ResultSet resultSet = null; // 声明结果集对象
try {
// 准备SQL语句根据订单号查找特定的订单
preparedStatement = conn.prepareStatement("select * from inOrder where iNumber = ?");
preparedStatement.setString(1, iNumber);
resultSet = preparedStatement.executeQuery();
if (resultSet.next()) {
preparedStatement.setString(1, iNumber); // 设置订单号参数
resultSet = preparedStatement.executeQuery(); // 执行查询
if (resultSet.next()) { // 如果找到对应记录
// 从结果集中获取属性并设置到inOrder对象
inOrder.setiNumber(resultSet.getString("iNumber"));
inOrder.setAllInPrice(resultSet.getFloat("allInPrice"));
inOrder.setInDate(resultSet.getString("inDate"));
@ -70,205 +64,204 @@ public class inOrderServiceImpl implements inOrderService{
inOrder.setStatus(resultSet.getInt("status"));
} else {
return null; // 没有找到该订单或订单不存在返回null
}
}
} catch (SQLException e) {
e.printStackTrace();
e.printStackTrace(); // 捕获并打印异常堆栈信息
} finally {
JDBCUtil.close(resultSet, preparedStatement, conn);
JDBCUtil.close(resultSet, preparedStatement, conn); // 关闭结果集、预编译语句和数据库连接
}
return inOrder;
return inOrder; // 返回找到的InOrder对象
}
@Override
public int addInOrder(String iNumber, float allInPrice) {
int flag = 0;
Timestamp inDate = new Timestamp(System.currentTimeMillis());
//System.out.println(inDate);
Connection conn = JDBCUtil.getConn();
PreparedStatement preparedStatement = null;
int flag = 0; // 状态标志初始化为0
Timestamp inDate = new Timestamp(System.currentTimeMillis()); // 获取当前时间戳
Connection conn = JDBCUtil.getConn(); // 获取数据库连接
PreparedStatement preparedStatement = null; // 声明预编译语句对象
try {
preparedStatement = conn.prepareStatement
("insert into inOrder values (?,?,?,?)");
preparedStatement.setString(1, iNumber);
preparedStatement.setFloat(2, allInPrice);
preparedStatement.setTimestamp(3, inDate);
preparedStatement.setString(4, "a1");
preparedStatement.executeUpdate();
flag = 1;
// 准备SQL插入语句
preparedStatement = conn.prepareStatement("insert into inOrder values (?,?,?,?)");
preparedStatement.setString(1, iNumber); // 设置订单号参数
preparedStatement.setFloat(2, allInPrice); // 设置总价格参数
preparedStatement.setTimestamp(3, inDate); // 设置入库日期
preparedStatement.setString(4, "a1"); // 设置其他固定参数例如默认的负责人ID
preparedStatement.executeUpdate(); // 执行插入操作
flag = 1; // 标记插入成功
} catch (SQLException e) {
flag = -1;
e.printStackTrace();
flag = -1; // 插入失败时标记为-1
e.printStackTrace(); // 捕获并打印异常堆栈信息
} finally {
JDBCUtil.close(null,preparedStatement, conn);
JDBCUtil.close(null, preparedStatement, conn); // 关闭预编译语句和数据库连接
}
return flag;
}
return flag; // 返回插入结果标志
}
@Override
public int deleteInOrder(String iNumber) {
int flag = 0;
Connection conn = JDBCUtil.getConn();
PreparedStatement preparedStatement = null;
int flag = 0; // 状态标志初始化为0
Connection conn = JDBCUtil.getConn(); // 获取数据库连接
PreparedStatement preparedStatement = null; // 声明预编译语句对象
try {
preparedStatement = conn.prepareStatement
("update inOrder set delmark=0 where iNumber = ?");
preparedStatement.setString(1, iNumber);
preparedStatement.executeUpdate();
flag = 1;
// 准备SQL更新语句将delmark标记为0表示逻辑删除
preparedStatement = conn.prepareStatement("update inOrder set delmark=0 where iNumber = ?");
preparedStatement.setString(1, iNumber); // 设置订单号参数
preparedStatement.executeUpdate(); // 执行更新操作
flag = 1; // 标记删除成功
} catch (SQLException e) {
flag = -1;
e.printStackTrace();
flag = -1; // 删除失败时标记为-1
e.printStackTrace(); // 捕获并打印异常堆栈信息
} finally {
JDBCUtil.close(null,preparedStatement, conn);
JDBCUtil.close(null, preparedStatement, conn); // 关闭预编译语句和数据库连接
}
return flag;
return flag; // 返回删除结果标志
}
/*往订单表插入一条记录*/
public boolean InsertInOrder(String number,Float allPrice,String time,String username,int c){
boolean flag = false;
Connection conn = JDBCUtil.getConn();
PreparedStatement pstmt = null;
ResultSet resultSet = null;;
// 插入新的进货订单
public boolean InsertInOrder(String number, Float allPrice, String time, String username, int c) {
boolean flag = false; // 初始化标志为false
Connection conn = JDBCUtil.getConn(); // 获取数据库连接
PreparedStatement pstmt = null; // 声明预编译语句对象
ResultSet resultSet = null; // 声明结果集对象
try {
// 准备SQL插入语句
pstmt = conn.prepareStatement("insert into InOrder values(?,?,?,?,?,?)");
pstmt.setString(1, number);
pstmt.setFloat(2, allPrice);
pstmt.setString(3, time);
pstmt.setString(4, username);
pstmt.setInt(5, 2);
pstmt.setInt(6, 1);
if(pstmt.execute())
flag = true;
} catch (SQLException e) {
e.printStackTrace();
}finally {
pstmt.setString(1, number); // 设置订单号
pstmt.setFloat(2, allPrice); // 设置总价格
pstmt.setString(3, time); // 设置入库时间
pstmt.setString(4, username); // 设置负责人用户名
pstmt.setInt(5, 2); // 设置状态假设2代表某个特定状态
pstmt.setInt(6, 1); // 设置删除标记假设1表示未删除
// 执行插入操作
if (pstmt.execute())
flag = true; // 如果成功执行插入设置标志为true
JDBCUtil.close(resultSet, pstmt, conn);
} catch (SQLException e) {
e.printStackTrace(); // 捕获并打印异常堆栈信息
} finally {
JDBCUtil.close(resultSet, pstmt, conn); // 关闭结果集、预编译语句和数据库连接
}
return flag;
return flag; // 返回插入结果标志
}
/*更新状态*/
public boolean updateInOrderStatus(String iNumber,int status) {
boolean flag = false;
Connection conn = JDBCUtil.getConn();
PreparedStatement preparedStatement = null;
/* 更新状态 */
public boolean updateInOrderStatus(String iNumber, int status) {
boolean flag = false; // 初始化标志为false
Connection conn = JDBCUtil.getConn(); // 获取数据库连接
PreparedStatement preparedStatement = null; // 声明预编译语句对象
try {
// 准备SQL更新语句更新指定订单号的状态
preparedStatement = conn.prepareStatement("update inOrder set status=? where iNumber=?");
preparedStatement.setInt(1, status);
preparedStatement.setString(2,iNumber);
if(preparedStatement.executeUpdate()==1)
preparedStatement.setInt(1, status); // 设置状态
preparedStatement.setString(2, iNumber); // 设置订单号
// 如果更新操作影响了一行则设置标志为true
if (preparedStatement.executeUpdate() == 1)
flag = true;
} catch (SQLException e) {
e.printStackTrace();
e.printStackTrace(); // 捕获并打印异常堆栈信息
} finally {
JDBCUtil.close(null,preparedStatement, conn);
JDBCUtil.close(null, preparedStatement, conn); // 关闭预编译语句和数据库连接
}
return flag;
return flag; // 返回更新结果标志
}
//查找所有待入库订单*/待确认
public Vector<InOrder> findUnconfirmInOrder(){
Vector<InOrder> inOrders = new Vector<InOrder>();
Connection conn = JDBCUtil.getConn();
PreparedStatement preparedStatement = null;
ResultSet resultSet=null;
// 查找所有待入库订单(待确认)
public Vector<InOrder> findUnconfirmInOrder() {
Vector<InOrder> inOrders = new Vector<InOrder>(); // 创建一个向量用于存储InOrder对象
Connection conn = JDBCUtil.getConn(); // 获取数据库连接
PreparedStatement preparedStatement = null; // 声明预编译语句对象
ResultSet resultSet = null; // 声明结果集对象
// SQL查询语句选择状态为2并且未删除的订单
String SQL = "select * from inOrder where status=2 and delmark=1";
try {
preparedStatement = conn.prepareStatement(SQL);
resultSet = preparedStatement.executeQuery();
while(resultSet.next()) {
InOrder inOrder = new InOrder();
inOrder.setiNumber(resultSet.getString("iNumber"));
inOrder.setAllInPrice(resultSet.getFloat("allInPrice"));
inOrder.setInDate(resultSet.getString("inDate"));
inOrder.setPrincipal(resultSet.getString("principal"));
inOrder.setStatus(resultSet.getInt("status"));
inOrder.setDelmark(resultSet.getInt("Delmark"));
inOrders.add(inOrder);
preparedStatement = conn.prepareStatement(SQL); // 准备SQL语句
resultSet = preparedStatement.executeQuery(); // 执行查询
while (resultSet.next()) { // 遍历结果集
InOrder inOrder = new InOrder(); // 创建InOrder对象
// 从结果集中获取属性并设置到inOrder对象
inOrder.setiNumber(resultSet.getString("iNumber")); // 设置订单号
inOrder.setAllInPrice(resultSet.getFloat("allInPrice")); // 设置总价格
inOrder.setInDate(resultSet.getString("inDate")); // 设置入库日期
inOrder.setPrincipal(resultSet.getString("principal")); // 设置负责人
inOrder.setStatus(resultSet.getInt("status")); // 设置订单状态
inOrder.setDelmark(resultSet.getInt("Delmark")); // 设置删除标记
inOrders.add(inOrder); // 将InOrder对象添加到向量中
}
} catch (SQLException e) {
e.printStackTrace();
e.printStackTrace(); // 捕获并打印异常堆栈信息
} finally {
JDBCUtil.close(resultSet, preparedStatement, conn);
JDBCUtil.close(resultSet, preparedStatement, conn); // 关闭结果集、预编译语句和数据库连接
}
return inOrders;
return inOrders; // 返回存储待确认订单的向量
}
//获取今日进货金额
public Float TodayInPrice(String date) {
InOrder inOrder = new InOrder();
Connection conn = JDBCUtil.getConn();
PreparedStatement preparedStatement = null;
ResultSet resultSet = null;
Float allInPrice=(float) 0;
// 获取今日进货金额
public Float TodayInPrice(String date) {
InOrder inOrder = new InOrder(); // 创建InOrder对象
Connection conn = JDBCUtil.getConn(); // 获取数据库连接
PreparedStatement preparedStatement = null; // 声明预编译语句对象
ResultSet resultSet = null; // 声明结果集对象
Float allInPrice = (float) 0; // 初始化总进货金额为0
try {
// 准备SQL查询语句计算指定日期的进货金额总和
preparedStatement = conn.prepareStatement("select sum(allInPrice) from inOrder where inDate>=? and inDate<=date_add(?,interval 1 day)");
preparedStatement.setString(1, date);
preparedStatement.setString(2, date);
resultSet = preparedStatement.executeQuery();
if (resultSet.next()) {
allInPrice=resultSet.getFloat("sum(allInPrice)");
}
preparedStatement.setString(1, date); // 设置起始日期
preparedStatement.setString(2, date); // 设置结束日期(起始日期+1天
resultSet = preparedStatement.executeQuery(); // 执行查询
if (resultSet.next()) { // 如果有结果
allInPrice = resultSet.getFloat("sum(allInPrice)"); // 获取总进货金额
}
} catch (SQLException e) {
e.printStackTrace();
e.printStackTrace(); // 捕获并打印异常堆栈信息
} finally {
JDBCUtil.close(resultSet, preparedStatement, conn);
JDBCUtil.close(resultSet, preparedStatement, conn); // 关闭结果集、预编译语句和数据库连接
}
return allInPrice;
return allInPrice; // 返回总进货金额
}
//查找指定状态订单
public Vector<InOrder> FindStatus(int status){
Vector<InOrder> inOrders = new Vector<InOrder>();
Connection conn = JDBCUtil.getConn();
PreparedStatement preparedStatement = null;
ResultSet resultSet=null;
try {
// 查找指定状态订单
public Vector<InOrder> FindStatus(int status) {
Vector<InOrder> inOrders = new Vector<InOrder>(); // 创建一个向量用于存储InOrder对象
Connection conn = JDBCUtil.getConn(); // 获取数据库连接
PreparedStatement preparedStatement = null; // 声明预编译语句对象
ResultSet resultSet = null; // 声明结果集对象
try {
// 准备SQL查询语句根据状态查找订单
preparedStatement = conn.prepareStatement("select * from inOrder where status=? and delmark=1 order by inDate desc");
preparedStatement.setInt(1, status);
resultSet = preparedStatement.executeQuery();
while(resultSet.next()) {
InOrder inOrder = new InOrder();
inOrder.setiNumber(resultSet.getString("iNumber"));
inOrder.setAllInPrice(resultSet.getFloat("allInPrice"));
inOrder.setInDate(resultSet.getString("inDate"));
inOrder.setPrincipal(resultSet.getString("principal"));
inOrder.setStatus(resultSet.getInt("status"));
inOrder.setDelmark(resultSet.getInt("Delmark"));
inOrders.add(inOrder);
preparedStatement.setInt(1, status); // 设置状态参数
resultSet = preparedStatement.executeQuery(); // 执行查询
while (resultSet.next()) { // 遍历结果集
InOrder inOrder = new InOrder(); // 创建InOrder对象
// 从结果集中获取属性并设置到inOrder对象
inOrder.setiNumber(resultSet.getString("iNumber")); // 设置订单号
inOrder.setAllInPrice(resultSet.getFloat("allInPrice")); // 设置总价格
inOrder.setInDate(resultSet.getString("inDate")); // 设置入库日期
inOrder.setPrincipal(resultSet.getString("principal")); // 设置负责人
inOrder.setStatus(resultSet.getInt("status")); // 设置订单状态
inOrder.setDelmark(resultSet.getInt("Delmark")); // 设置删除标记
inOrders.add(inOrder); // 将InOrder对象添加到向量中
}
} catch (SQLException e) {
e.printStackTrace();
e.printStackTrace(); // 捕获并打印异常堆栈信息
} finally {
JDBCUtil.close(resultSet, preparedStatement, conn);
JDBCUtil.close(resultSet, preparedStatement, conn); // 关闭结果集、预编译语句和数据库连接
}
return inOrders;
return inOrders; // 返回指定状态的订单向量
}
}

Loading…
Cancel
Save