JAVA仓库管理系统(附源码+调试)

这篇具有很好参考价值的文章主要介绍了JAVA仓库管理系统(附源码+调试)。希望对大家有所帮助。如果存在错误或未考虑完全的地方,请大家不吝赐教,您也可以点击"举报违法"按钮提交疑问。

JAVA仓库管理系统——三只松鼠仓库管理系统

功能描述

(1)登录模块:登录信息等存储在数据库中
(2)基本档案管理模块:供货商管理,销售商管理,货品档案管理,仓库管理
(3)采购订货模块:用户可以通过查询条件(客户、订单号、订货日期)进行查询
(4)仓库入出库模块:可以对入出库商品信息进行增删改查等数据操作
(5)人员管理模块:对员工基本信息,联系方式进行增删改查等数据操作
(6)部门管理模块:对部门信息进行增删改查等数据操作

整体功能如此,本仓库系统以三只松鼠仓库管理系统为案例,进行相应界面上的优化,保证界面整洁干练,功能切合实际。

代码链接:https://pan.baidu.com/s/1F7dEBfny5aAU_AKpLpwCiA
提取码:3pxo

功能截图

1、登录模块
JAVA仓库管理系统(附源码+调试)

2、基本档案管理
JAVA仓库管理系统(附源码+调试)

3、采购订货模块
JAVA仓库管理系统(附源码+调试)

4、仓库入出库模块
JAVA仓库管理系统(附源码+调试)
JAVA仓库管理系统(附源码+调试)

5、人员管理模块
JAVA仓库管理系统(附源码+调试)

6、部门管理模块
JAVA仓库管理系统(附源码+调试)

部分关键代码

1、数据库链接

package com.szss.dao;
import java.sql.*;
public class GetConnection {	
private Connection con;			//定义数据库连接类对象
private PreparedStatement pstm;	
private String user="sa";		//连接数据库用户名
private String password="123456";		//连接数据库密码
private String className="com.microsoft.sqlserver.jdbc.SQLServerDriver";	//数据库驱动
private String url="jdbc:sqlserver://localhost:1433;DatabaseName=db_supermarket";		//连接数据库的URL
public GetConnection(){
	try{
		Class.forName(className);
	}catch(ClassNotFoundException e){
		System.out.println("加载数据库驱动失败!");
		e.printStackTrace();
	}
}
/**创建数据库连接*/
public Connection getCon(){
	try {
		con=DriverManager.getConnection(url,user,password);		//获取数据库连接
	} catch (SQLException e) {
		System.out.println("创建数据库连接失败!");
		con=null;
		e.printStackTrace();
	}
	return con;					//返回数据库连接对象
}	
	public void doPstm(String sql,Object[] params){
		if(sql!=null&&!sql.equals("")){
			if(params==null)
				params=new Object[0];			
			getCon();
			if(con!=null){
				try{		
					System.out.println(sql);
					pstm=con.prepareStatement(sql,ResultSet.TYPE_SCROLL_INSENSITIVE,ResultSet.CONCUR_READ_ONLY);
					for(int i=0;i<params.length;i++){
						pstm.setObject(i+1,params[i]);
					}
					pstm.execute();
				}catch(SQLException e){
					System.out.println("doPstm()方法出错!");
					e.printStackTrace();
				}				
			}			
		}
	}	
	public ResultSet getRs() throws SQLException{
		return pstm.getResultSet();		
	}
	public int getCount() throws SQLException{
		return pstm.getUpdateCount();		
	}
	public void closed(){
		try{
			if(pstm!=null)
				pstm.close();			
		}catch(SQLException e){
			System.out.println("关闭pstm对象失败!");
			e.printStackTrace();
		}
		try{
			if(con!=null){
				con.close();
			}
		}catch(SQLException e){
			System.out.println("关闭con对象失败!");
			e.printStackTrace();
		}
	}
}

2、主菜单设计文章来源地址https://www.toymoban.com/news/detail-510324.html

package com.szss.mainFrame;
import static javax.swing.BorderFactory.createTitledBorder;
import java.awt.Color;
import java.awt.EventQueue;
import java.awt.Font;
import javax.swing.JFrame;
import javax.swing.JPanel;
import javax.swing.SwingConstants;
import javax.swing.SwingUtilities;
import javax.swing.UIManager;
import javax.swing.border.EmptyBorder;
import javax.swing.border.TitledBorder;
import javax.swing.event.TreeSelectionEvent;
import javax.swing.event.TreeSelectionListener;
import javax.swing.tree.DefaultMutableTreeNode;
import javax.swing.tree.TreePath;
import javax.swing.tree.TreeSelectionModel;

import com.sun.java.swing.plaf.nimbus.NimbusLookAndFeel;
import com.szss.bean.User;
import com.szss.panel.DepotPanel;
import com.szss.panel.DeptPanel;
import com.szss.panel.FeelWarePanel;
import com.szss.panel.JoinDepotPanel;
import com.szss.panel.MyJPanel;
import com.szss.panel.OutDepotPanel;
import com.szss.panel.PersonnelPanel;
import com.szss.panel.SellPanel;
import com.szss.panel.StockPanel;
import com.szss.panel.WarePanel;
import com.szss.util.Session;
import com.szss.widget.BGPanel;
import com.szss.widget.GlassButton;
import com.szss.widget.SmallScrollPanel;

import java.awt.Dimension;
import java.awt.GridLayout;
import javax.swing.ButtonGroup;
import javax.swing.ImageIcon;
import javax.swing.JLabel;
import javax.swing.JTree;
import javax.swing.JScrollPane;
import java.awt.event.ActionListener;
import java.awt.event.ActionEvent;
public class RemoveButtomFrame extends JFrame {
	private MyJPanel contentPane;
	private BGPanel backPanel;
	private SmallScrollPanel moduleButtonGroup = null;
	private JTree tree;
	private JPanel panel;
	FeelWarePanel panelFeel = new FeelWarePanel();
	JPanel panel_1 = new JPanel();
	JLabel fristLabel = new JLabel("基本档案管理");
	private BGPanel jPanel = null;
	private ButtonGroup buttonGroup = null;
	private GlassButton workSpaceButton = null;
	private GlassButton progressButton = null;
	private GlassButton bookProjectButton = null;
	private GlassButton chukuButton = null;
	private GlassButton personnelManagerButton = null;
	private GlassButton deptManagerButton = null;
	JLabel label_1 = new JLabel("您当前的位置是:");
	/**
	 * Create the frame.
	 */
	public RemoveButtomFrame() {
		setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
		setBounds(100, 100, 934, 625);
		contentPane = new MyJPanel();
		contentPane.setBorder(new EmptyBorder(5, 5, 5, 5));
		setContentPane(contentPane);
		contentPane.add(getModuleButtonGroup());
		setTitle("三只松鼠管理系统");
		contentPane.setLayout(null);
		setResizable(false);
		JPanel clockpanel = new JPanel();
		clockpanel.setBackground(new Color(255,175,175));
		clockpanel.setBounds(10, 120, 248, 130);
		contentPane.add(clockpanel);
		clockpanel.setLayout(null);

		JPanel panel_1 = new JPanel();
		panel_1.setBounds(0, 210, 276, 1);
		clockpanel.add(panel_1);
		panel_1.setLayout(null);
		User user =	Session.getUser();				//获取登录用户对象		
		String info = "<html><body>" + "<font color=#FFFFFF>你 好:</font>"
				+ "<font color=yellow><b>" + user.getUserName() + "</b></font>"
				+ "<font color=#FFFFFF>                欢 迎 登 录</font>" + "</body></html>";	//定义窗体显示内容
		
		JLabel label = new JLabel(info);			//定义显示指定内容的标签对象
		label.setBackground(Color.yellow);
		label.setBounds(70, 30, 128, 35);
		clockpanel.add(label);


		
		contentPane.add(getContentPanel()); // 在主窗体中添加

	}

	private BGPanel getContentPanel() {
		if (backPanel == null) {
			backPanel = new BGPanel();
			backPanel.setBackground(new Color(255,175,175));
			backPanel.setSize(629, 416); // 内容显示区主面板
			backPanel.setLocation(279, 149);
			backPanel.setLayout(null);

			label_1.setHorizontalAlignment(SwingConstants.RIGHT);
			label_1.setVerticalAlignment(SwingConstants.BOTTOM);
			label_1.setBounds(38, 38, 96, 15);
			backPanel.setBorder(createTitledBorder(null, "基本档案管理",
					TitledBorder.DEFAULT_JUSTIFICATION,
					TitledBorder.TOP, new Font("sansserif", Font.BOLD,
							12), new Color(59, 59, 59)));
			backPanel.add(label_1);
			fristLabel.setBounds(133, 38, 123, 15);
			backPanel.add(fristLabel);
			panel_1.setBounds(10, 63, 611, 343);
			panel_1.setLayout(null);
			backPanel.add(panel_1);
			JScrollPane scrollPane = new JScrollPane();
			panel_1.add(scrollPane);
			JScrollPane scrollPane_1 = new JScrollPane();
			scrollPane_1.setBackground(new Color(255,175,175));
			scrollPane_1.setBounds(0, 0, 138, 334);
			panel_1.add(scrollPane_1);
			DefaultMutableTreeNode rootNode = new DefaultMutableTreeNode(
					"基本档案管理");
			DefaultMutableTreeNode childNode1 = new DefaultMutableTreeNode(
					"供货商管理");
			DefaultMutableTreeNode childNode2 = new DefaultMutableTreeNode(
					"销售商管理");
			DefaultMutableTreeNode childNode3 = new DefaultMutableTreeNode(
					"货品档案管理");
			DefaultMutableTreeNode childNode4 = new DefaultMutableTreeNode(
					"仓库管理");
			rootNode.add(childNode1);
			rootNode.add(childNode2);
			rootNode.add(childNode3);
			rootNode.add(childNode4);
			tree = new JTree(rootNode);
			scrollPane_1.setColumnHeaderView(tree);
			final JPanel sellPanel = new JPanel();
			sellPanel.setBackground(new Color(255,175,175));
			sellPanel.setBounds(138, 0, 473, 343);
			sellPanel.setLayout(null);
			panel_1.add(sellPanel);

			tree.getSelectionModel().setSelectionMode(
					TreeSelectionModel.SINGLE_TREE_SELECTION);
			TreeSelectionModel treeSelectionModel = tree.getSelectionModel();
			treeSelectionModel
			.setSelectionMode(TreeSelectionModel.CONTIGUOUS_TREE_SELECTION);
			tree.addTreeSelectionListener(new TreeSelectionListener() {
				@Override
				public void valueChanged(TreeSelectionEvent e) {
					if (!tree.isSelectionEmpty()) {
						TreePath selectionPaths = tree.getSelectionPath();
						Object path = selectionPaths.getLastPathComponent();
						DefaultMutableTreeNode node = (DefaultMutableTreeNode) path;
						String userObject = (String) node.getUserObject();
						repaint();
						if (userObject.equals("供货商管理")) {
							fristLabel.setText("供货商管理");
							sellPanel.removeAll();
							sellPanel.add(panelFeel.getMessage());

						} else if (userObject.equals("销售商管理")) {
							fristLabel.setText("销售商管理");
							sellPanel.removeAll();
							SellPanel sell = new SellPanel();
							sellPanel.add(sell.getMessage());
							repaint();
						} else if (userObject.equals("货品档案管理")) {
							fristLabel.setText("货品档案管理");
							sellPanel.removeAll();
							WarePanel warePanel = new WarePanel();
							sellPanel.add(warePanel.getMessage());
							repaint();
						} else if (userObject.equals("仓库管理")) {
							fristLabel.setText("仓库管理");
							sellPanel.removeAll();
							DepotPanel depotPanel = new DepotPanel();
							sellPanel.add(depotPanel.getMessage());
							repaint();
						}
					}
				}
			});

		}
		return backPanel;
	}

	private SmallScrollPanel getModuleButtonGroup() {
		if (moduleButtonGroup == null) {
			moduleButtonGroup = new SmallScrollPanel();// 创建移动面板
			moduleButtonGroup.setBounds(250, 20, 434, 68);
			moduleButtonGroup.setOpaque(false);
			// 将按钮组面板作为移动面板的视图
			moduleButtonGroup.setViewportView(getJPanel());
			moduleButtonGroup.getAlphaScrollPanel()
			.setViewportView(getJPanel());
			// 添加鼠标事件监听器
		}
		return moduleButtonGroup;
	}

	

	public BGPanel getJPanel() {
		if (jPanel == null) {
			GridLayout gridLayout = new GridLayout();	//定义网格布局管理器
			gridLayout.setRows(1);						//设置网格布局管理器的行数
			gridLayout.setHgap(0);						//设置组件间水平间距
			gridLayout.setVgap(0);						//设置组件间垂直间距
			jPanel = new BGPanel();						//
			// 设置布局管理器
			jPanel.setLayout(gridLayout);
			// 设置初始大小
			jPanel.setPreferredSize(new Dimension(400, 50));
			jPanel.setOpaque(false);
			// 添加按钮
			jPanel.add(getWorkSpaceButton(), null);
			jPanel.add(getProgressButton(), null);
			jPanel.add(getrukuButton(), null);
			jPanel.add(getchukuButton(), null);
			jPanel.add(getPersonnelManagerButton(), null);
			jPanel.add(getDeptManagerButton(), null);
			if (buttonGroup == null) {
				buttonGroup = new ButtonGroup();
			}
			// 把所有按钮添加到一个组控件中
			buttonGroup.add(getProgressButton());
			buttonGroup.add(getWorkSpaceButton());
			buttonGroup.add(getrukuButton());
			buttonGroup.add(getchukuButton());
			buttonGroup.add(getPersonnelManagerButton());
			buttonGroup.add(getDeptManagerButton());
		}
		return jPanel;
	}

	// 基本档案管理按钮
	private GlassButton getWorkSpaceButton() {
		if (workSpaceButton == null) {
			workSpaceButton = new GlassButton();
			workSpaceButton.setActionCommand("基本档案管理");		//设置按钮的动作命令
			workSpaceButton.setIcon(new ImageIcon(getClass().getResource(
					"/com/szss/frame/buttonIcons/myWorkSpace.png")));	//定义按钮的初始化背景
			ImageIcon icon = new ImageIcon(getClass().getResource(
					"/com/szss/frame/buttonIcons/myWorkSpace2.png"));	//创建图片对象
			workSpaceButton.setRolloverIcon(icon);		//设置按钮的翻转图片
			workSpaceButton.setSelectedIcon(icon);		//设置按钮被选中时显示图片
			workSpaceButton.setSelected(true);			
			workSpaceButton.addActionListener(new toolsButtonActionAdapter());	//按钮的监听器
		}
		return workSpaceButton;
	}

	// 采购进货管理按钮
	private GlassButton getProgressButton() {
		if (progressButton == null) {
			progressButton = new GlassButton();
			progressButton.setActionCommand("采购进货");
			progressButton.setText("");
			progressButton.setIcon(new ImageIcon(getClass().getResource(
					"/com/szss/frame/buttonIcons/caigou1.png")));
			ImageIcon icon = new ImageIcon(getClass().getResource(
					"/com/szss/frame/buttonIcons/caigou2.png"));
			progressButton.setRolloverIcon(icon);
			progressButton.setSelectedIcon(icon);
			progressButton.addActionListener(new toolsButtonActionAdapter());
		}
		return progressButton;
	}

	// 仓库管理
	private GlassButton getrukuButton() {
		if (bookProjectButton == null) {
			bookProjectButton = new GlassButton();
			bookProjectButton.setActionCommand("仓库入库");
			// bookProjectButton.setText("图书计划");
			ImageIcon icon = new ImageIcon(getClass().getResource(
					"/com/szss/frame/buttonIcons/ruku2.png"));
			bookProjectButton.setSelectedIcon(icon);
			bookProjectButton.setRolloverIcon(icon);
			bookProjectButton.setIcon(new ImageIcon(getClass().getResource(
					"/com/szss/frame/buttonIcons/ruku1.png")));
			bookProjectButton.addActionListener(new toolsButtonActionAdapter());
		}
		return bookProjectButton;
	}

	// 仓库出库管理
	private GlassButton getchukuButton() {
		if (chukuButton == null) {
			chukuButton = new GlassButton();
			chukuButton.setActionCommand("仓库出库");
			ImageIcon icon = new ImageIcon(getClass().getResource(
					"/com/szss/frame/buttonIcons/chuku1.png"));
			chukuButton.setSelectedIcon(icon);
			chukuButton.setRolloverIcon(icon);
			chukuButton.setIcon(new ImageIcon(getClass().getResource(
					"/com/szss/frame/buttonIcons/chuku2.png")));
			chukuButton.addActionListener(new toolsButtonActionAdapter());
		}
		return chukuButton;
	}

	// 人员管理系统
	private GlassButton getPersonnelManagerButton() {
		if (personnelManagerButton == null) {
			personnelManagerButton = new GlassButton();
			// personnelManagerButton.setText("人员管理");
			personnelManagerButton.setActionCommand("查询及统计系统");
			// personnelManagerButton.setCursor(new
			// Cursor(Cursor.DEFAULT_CURSOR));
			ImageIcon imageIcon = new ImageIcon(getClass().getResource(
					"/com/szss/frame/buttonIcons/person2.png"));
			personnelManagerButton.setIcon(imageIcon);
			ImageIcon icon = new ImageIcon(getClass().getResource(
					"/com/szss/frame/buttonIcons/person1.png"));
			personnelManagerButton.setRolloverIcon(icon);
			personnelManagerButton.setSelectedIcon(icon);
			personnelManagerButton.setFocusPainted(false);
			personnelManagerButton
			.addActionListener(new toolsButtonActionAdapter());
		}
		return personnelManagerButton;
	}

	// 部门管理系统
	private GlassButton getDeptManagerButton() {
		if (deptManagerButton == null) {
			deptManagerButton = new GlassButton();

			deptManagerButton.setActionCommand("查询及统计系统");
			// personnelManagerButton.setCursor(new
			// Cursor(Cursor.DEFAULT_CURSOR));
			ImageIcon imageIcon = new ImageIcon(getClass().getResource(
					"/com/szss/frame/buttonIcons/deptButton.png"));
			deptManagerButton.setIcon(imageIcon);
			ImageIcon icon = new ImageIcon(getClass().getResource(
					"/com/szss/frame/buttonIcons/deptButton2.png"));
			deptManagerButton.setRolloverIcon(icon);
			deptManagerButton.setSelectedIcon(icon);
			deptManagerButton.setFocusPainted(false);
			deptManagerButton.addActionListener(new toolsButtonActionAdapter());
		}
		return deptManagerButton;
	}

	class toolsButtonActionAdapter implements ActionListener {

		@Override
		public void actionPerformed(ActionEvent e) {
			if (e.getSource() == workSpaceButton) {
				backPanel.removeAll();
				backPanel.add(label_1);
				fristLabel.setBounds(133, 38, 123, 15);
				backPanel.add(fristLabel);
				panel_1.setBounds(10, 63, 611, 376);
				backPanel.add(panel_1);
				fristLabel.setText("基本档案管理");
				repaint();
			}
			if (e.getSource() == progressButton) {
				backPanel.removeAll();
				backPanel.add(label_1);
				fristLabel.setBounds(133, 38, 123, 15);
				backPanel.add(fristLabel);
				panel_1.setBounds(10, 63, 611, 386);
				StockPanel stockPanl = new StockPanel();
				fristLabel.setText("采购订货");
				backPanel.add(stockPanl);
				repaint();
			}
			if (e.getSource() == bookProjectButton) {
				backPanel.removeAll();
				backPanel.add(label_1);
				fristLabel.setBounds(133, 38, 123, 15);
				backPanel.add(fristLabel);
				panel_1.setBounds(10, 63, 611, 386);
				JoinDepotPanel joinPanel = new JoinDepotPanel();
				backPanel.add(joinPanel);
				fristLabel.setText("仓库入库");
				repaint();
			}
			if (e.getSource() == chukuButton) {
				backPanel.removeAll();
				backPanel.add(label_1);
				fristLabel.setBounds(133, 38, 123, 15);
				backPanel.add(fristLabel);
				panel_1.setBounds(10, 63, 611, 386);
				OutDepotPanel outPanel = new OutDepotPanel();
				backPanel.add(outPanel);
				fristLabel.setText("仓库出库");
				repaint();
			}
			if (e.getSource() == deptManagerButton) {
				backPanel.removeAll();
				backPanel.add(label_1);
				fristLabel.setBounds(133, 38, 123, 15);
				backPanel.add(fristLabel);
				panel_1.setBounds(10, 63, 611, 386);
				DeptPanel outPanel = new DeptPanel();
				backPanel.add(outPanel);
				fristLabel.setText("部门管理");
				repaint();
			}
			if (e.getSource() == personnelManagerButton) {
				backPanel.removeAll();			
				panel_1.setBounds(10, 63, 611, 386);
				PersonnelPanel panel = new PersonnelPanel();
				backPanel.add(panel);				
				repaint();
			}
		}

	}

}

到了这里,关于JAVA仓库管理系统(附源码+调试)的文章就介绍完了。如果您还想了解更多内容,请在右上角搜索TOY模板网以前的文章或继续浏览下面的相关文章,希望大家以后多多支持TOY模板网!

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处: 如若内容造成侵权/违法违规/事实不符,请点击违法举报进行投诉反馈,一经查实,立即删除!

领支付宝红包 赞助服务器费用

相关文章

  • (附源码)springboot仓库管理系统的开发毕业设计260931

    随着科学技术的飞速发展,社会的方方面面、各行各业都在努力与现代的先进技术接轨,通过科技手段来提高自身的优势,仓库管理系统当然也不能排除在外。仓库管理系统是以实际运用为开发背景,运用软件工程原理和开发方法,采用java技术构建的一个管理系统。整个开发

    2024年02月05日
    浏览(32)
  • Java-仓库管理系统

    该文档旨在定义并描述一个仓库管理系统的功能和特性,系统使用MySQL数据库,并采用SpringBoot+Vue的前后端分离开发模式。本文档将涵盖系统的主要功能、用户权限管理、数据结构和交互流程。 2.1. 用户管理 系统应该支持用户注册和登录功能,包括身份验证机制。 系统应该有

    2024年02月12日
    浏览(24)
  • 基于PHP的原生酒店预定管理系统(源码 调试 文档)

    摘要 本文介绍了一种基于PHP的原生酒店预定管理系统的设计与实现。该系统分为管理员和注册会员两种用户角色,分别具有不同的功能。管理员主要负责会员管理、房型管理、房间管理和系统管理等;注册会员则可以进行注册登录、分类筛选、房型搜索、房型查看、在线预定

    2024年02月05日
    浏览(36)
  • [附源码]计算机毕业设计基于springBoot仓库管理系统

    项目运行 环境配置: Jdk1.8 + Tomcat7.0 + Mysql + HBuilderX(Webstorm也行)+ Eclispe(IntelliJ IDEA,Eclispe,MyEclispe,Sts都支持)。 项目技术: SSM + mybatis + Maven + Vue 等等组成,B/S模式 + Maven管理等等。 环境需要 1.运行环境:最好是java jdk 1.8,我们在这个平台上运行的。其他版本理论上也可以

    2024年02月06日
    浏览(46)
  • 毕业设计 stm32 RFID智能仓库管理系统(源码+硬件+论文)

    🔥 这两年开始毕业设计和毕业答辩的要求和难度不断提升,传统的毕设题目缺少创新和亮点,往往达不到毕业答辩的要求,这两年不断有学弟学妹告诉学长自己做的项目系统达不到老师的要求。 为了大家能够顺利以及最少的精力通过毕设,学长分享优质毕业设计项目,今天

    2024年02月03日
    浏览(38)
  • springboot数字物流仓库管理系统 计算机毕设源码33014

                                                              目  录 摘要 1 绪论 1.1 研究背景 1.2 研究意义 1.3 系统开发技术的特色 1. 4 springboot框架介绍 2   数字物流仓库管理系统 分析 2.1 可行性分析 2.2 系统流程分析 2.2.1 数据 增加 流程 2 . 2 .2 数据 修改 流程 5 2 . 2 .

    2024年02月03日
    浏览(28)
  • springboot(ssm仓库管理系统 wms智能仓储管理系统Java系统

    springboot(ssm仓库管理系统 wms智能仓储管理系统Java系统 开发语言:Java 框架:ssm/springboot + vue JDK版本:JDK1.8(或11) 服务器:tomcat 数据库:mysql 5.7(或8.0) 数据库工具:Navicat 开发软件:eclipse//idea 依赖管理包:Maven 如需了解更多代码细节或修改代码功能界面,本人都能提供技

    2024年01月18日
    浏览(35)
  • java 实训课程设计:仓库管理系统

    实现配送中心管理系统的基本功能:针对产品实现该配送中心的货物的初始化处理,完成对货物的进仓、出仓、报废等管理,实现货物的库存统计等操作。 基本要求: 货物的初始化处理 货物的进仓 货物的出仓 货物的报废 零状态和满仓预警处理 6、必须要用面向对象设计思

    2024年02月03日
    浏览(28)
  • 点可云进销存开源系统V6.0.1 ERP系统进销存源码仓库管理

    介绍 点可云进销存系统,基于thinkphp+layui开发。 功能包含:采购、销售、零售、多仓库管理、财务管理等功能 和超详细的报表功能(采购报表、销售报表、零售报表、仓库报表、资金报表等) 软件架构 thinkphp+layui 功能概览 购货 -购货单 -购货退货单 采购 -采购订单 -采购入

    2024年02月10日
    浏览(52)
  • 嵌入式毕设分享 stm32 RFID智能仓库管理系统(源码+硬件+论文)

    🔥 这两年开始毕业设计和毕业答辩的要求和难度不断提升,传统的毕设题目缺少创新和亮点,往往达不到毕业答辩的要求,这两年不断有学弟学妹告诉学长自己做的项目系统达不到老师的要求。 为了大家能够顺利以及最少的精力通过毕设,学长分享优质毕业设计项目,今天

    2024年02月20日
    浏览(51)

觉得文章有用就打赏一下文章作者

支付宝扫一扫打赏

博客赞助

微信扫一扫打赏

请作者喝杯咖啡吧~博客赞助

支付宝扫一扫领取红包,优惠每天领

二维码1

领取红包

二维码2

领红包