企业用电管理系统设计

上传人:痛*** 文档编号:103502633 上传时间:2022-06-08 格式:DOC 页数:46 大小:328.50KB
收藏 版权申诉 举报 下载
企业用电管理系统设计_第1页
第1页 / 共46页
企业用电管理系统设计_第2页
第2页 / 共46页
企业用电管理系统设计_第3页
第3页 / 共46页
资源描述:

《企业用电管理系统设计》由会员分享,可在线阅读,更多相关《企业用电管理系统设计(46页珍藏版)》请在装配图网上搜索。

1、-数据库课程实训报告( 2015- 2016年度第2学期)题目: 企业用电管理系统专业软件工程学生姓名成晓伟班级软件141*1410075094指导教师徐静完成日期2016.7.1. z.-目 录目录21 课题内容和要求1课题描述11.2 课题要求12 需求分析12.1 对功能的规定12.2 数据需求分析23 系统设计33.1 功能模块设计33.2 数据库概念设计43.2.2 E-R图43.3 数据库逻辑设计53.4 数据库物理设计53.5 数据库表间联系64系统实现6登陆模块实现6查询模块实现74.3 添加模块实现84.4 删除模块实现94.5 修改模块实现104.6 生成电费单模块实现10

2、5 代码调试与功能测试115.1 测试方案115.2 测试结果126 收获与体会16参考文献17附录18附录1源程序部分清单18. z.-企业用电管理系统设计1 课题内容和要求课题描述系统设计的的信息有:(1) 用电企业(用电企业编号、用电企业名、地址、电话、联系人);(2) 电费信息(谷价、峰价);(3) 用电情况(用电企业编号、谷电量、峰电量、年月、年合计用电量、年合计用电费)。1.2课题要求要求能够进行如下操作:(1) 能够统计各个用电企业的月耗电量以及电费;(2) 能够统计查询各个用电企业的总的谷电量和峰电量;(3) 能够统计该地区的峰谷电量比例以及电费情况;(4) 能维护基本数据;(

3、5) 用户分级管理,人机界面良好。2需求分析对功能的规定1、理解需求理解需求是在问题及其最终解决方案之间架设桥梁的第一步。开发者只有和用户充分理解了需求之后才能开始设计系统,否则,对需求定义的任何改进,设计上都必须大量的返工。下面是对系统的终端用户和客户调研后得到的需求规格说明书。(1)由于使用者为相关电力部门及学习使用,系统开始时,便可以进入到欢迎界面。(2)进入到系统之后,友好的界面可以很清晰的分为企业信息管理跟企业用电信息管理两大选择。(3)点击企业信息管理,下拉菜单中选项可以实现对企业信息的查询、添加、修改、删除操作。(4)点击企业用电管理信息,下拉菜单中选项可以实现对企业用电管理信息

4、的查询、添加、修改和删除操作。(5)系统客户端运行在Windows平台下,服务器可以运行在Windows或Uni*平台下。系统还应该有一个较好的图形用户界面。(6)系统应该有很好的可扩展性。2、需求分析需求分析是从客户的需求中提取出软件系统能够帮助用户解决的业务问题,通过对用户业务问题的分析,确定系统的功能需求。这个步骤是对理解需求的升华,直接关系到该系统的质量。分析的根本目的是在开发者和提出需求的人之间建立一种理解和沟通机制,因此,系统的需求分析也应该是开发人员和用户或客户一起完成的。2.2 对性能的规定1、精度在精度需求上,根据使用需要,在各项数据的输入,输出及传输过程中,可以满足各种精度

5、的需求。如:根据关键字精度的不同,查找可分为精确查找和泛型查找,精确查找可精确匹配系统使用者所知道的企业名称及编号快速便捷的查询所要知道的信息。2、时间特性要求在软件方面,响应时间,更新处理时间都比较快且迅速,完全满足用户要求。3、灵活性当用户需求,如操作方式,运行环境,结果精度,数据结构于其他软件接口等发生变化时,设计的软件要做适当调整,灵活性非常大。2.2数据需求分析数据字典(1)factory名称:factory别名:无描述:企业的基本信息组成:factory=(num+facname+repname+tel+usefnum+usegnum+usemoney)(2) worker名称:w

6、orker别名:无描述:员工及管理员的基本信息组成:worker=(id+workername+password+level)3系统设计功能模块设计3.2数据库概念设计3.2.2 E-R图3.3 数据库逻辑设计企业(编号,企业名,法人代表)电价(峰电量,谷电量,峰电价,谷电价,总电费)系统用户(编号,姓名,密码,权限) 数据库物理设计表一:factory列名数据类型允许Null值numvarchar(50)是facnamevarchar(50)是repnamevarchar(50)是telvarchar(50)是usefnumint是usegnumint是usemoneyint是numfacn

7、amerepnametelusefnumusegnumusemoney001新华书店陈国勇131410222333002苏果超市陈博文151622532863003微软公司毕世勇368524674952004乐天玛特丁小杰301127943105005三厂中学陈家勇242219742875表二:worker列名数据类型允许Null值idint否workernamevarchar(50)否passwordvarchar(50)否levelint否idworkernamepasswordlevel111张三1234561112李四1234561113熊大1234562114熊二1234562 数据

8、库表间联系数据库中所建的两张表factory与worker之间并没有任何直接的联系,一个代表的是企业信息,一个代表的是员工信息。4系统实现4.1登陆模块实现privateclass ButtonactionPerformed implements ActionListener/为登陆按钮ButtonactionPerformed添加事件监视器publicvoid actionPerformed(ActionEvent e)/从worker表中获得元组信息进行登陆,下面为获得元组登陆代码a=username2.getTe*t();s=password2.getTe*t();tryconn=Dri

9、verManager.getConnection(url, user, password);conn.setAutoCommit(true);System.out.println(和数据库已经建立连接!); stmt=(Statement) conn.createStatement(); rs=(ResultSet)stmt.e*ecuteQuery(select * from worker );if(c.equals(a)&b.equals(s)message.setTe*t(姓名和密码不能为空);elseif(true)while(rs.ne*t()if(rs.getString(2).e

10、quals(a)& rs.getString(3).equals(s)&rs.getInt(4)=level)message.setTe*t(数据库连接成功!);if(level=1)operate2 app2=new operate2();app2.setLocationRelativeTo(null);elseoperate app3=new operate();app3.setLocationRelativeTo(null);elsemessage.setTe*t(用户名和密码或者身份不正确);rs.close();stmt.close();conn.close();4.2查询模块实现p

11、rivateclass ButtonactionPerformed implements ActionListener/为查询按钮ButtonactionPerformed添加事件监视器publicvoid actionPerformed(ActionEvent e)/从worker表中获取元组,并且显示在系统上facname=search.getTe*t();tryconn=DriverManager.getConnection(url, user, password);conn.setAutoCommit(true);System.out.println(和数据库已经建立连接!); stm

12、t=(Statement) conn.createStatement();rs=(ResultSet)stmt.e*ecuteQuery(select * from factory );while(rs.ne*t()if(rs.getString(2).equals(facname)te*t1.setTe*t(rs.getString(1);te*t2.setTe*t(rs.getString(2);te*t3.setTe*t(rs.getString(3);te*t4.setTe*t(rs.getString(4);te*t5.setTe*t(+(rs.getInt(5);te*t6.set

13、Te*t(+rs.getInt(6);te*t7.setTe*t(+rs.getInt(7);rs.close();stmt.close();conn.close();4.3添加模块实现privateclass ButtonactionPerformed implements ActionListener/为添加按钮ButtonactionPerformed添加事件监视器publicvoid actionPerformed(ActionEvent e)/在系统内输入要添加的元组信息,通过添加按钮添加到数据库中的factory表内*1=te*t1.getTe*t();*2=te*t2.getTe

14、*t();*3=te*t3.getTe*t();*4=te*t4.getTe*t();*5=te*t5.getTe*t();*6=te*t6.getTe*t();*7=te*t7.getTe*t();tryconn=DriverManager.getConnection(url, user, password);conn.setAutoCommit(true);System.out.println(和数据库已经建立连接!);prepstmt1=(PreparedStatement) conn.prepareStatement(INSERT INTO factory(num,facname,re

15、pname,tel,usefnum,usegnum,usemoney)+VALUES(,);prepstmt1.setString(1, *1);prepstmt1.setString(2, *2);prepstmt1.setString(3, *3);prepstmt1.setString(4, *4);prepstmt1.setString(5, *5);prepstmt1.setString(6, *6);prepstmt1.setString(7, *7);prepstmt1.e*ecuteUpdate();conn.close();4.4 删除模块实现privateclass But

16、tonactionPerformed implements ActionListenerpublicvoid actionPerformed(ActionEvent e)*1=te*t1.getTe*t();tryconn=DriverManager.getConnection(url, user, password);conn.setAutoCommit(true);System.out.println(和数据库已经建立连接!); stmt=(Statement) conn.createStatement();stmt.e*ecuteUpdate(delete from factory wh

17、ere num=+*1);conn.close();4.5 修改模块实现privateclass ButtonactionPerformed implements ActionListenerpublicvoid actionPerformed(ActionEvent e)*1=te*t1.getTe*t();*2=te*t2.getTe*t();*3=te*t3.getTe*t();*4=te*t4.getTe*t();tryconn=DriverManager.getConnection(url, user, password);conn.setAutoCommit(true);Syste

18、m.out.println(和数据库已经建立连接!);prepstmt2=(PreparedStatement) conn.prepareStatement(update factory set num=,usegnum=,usefnum=,usemoney= where num=);prepstmt2.setString(1, *1);prepstmt2.setString(2, *2);prepstmt2.setString(3, *3);g(4, *4);prepstmt2.setString(5, *1);prepstmt2.e*ecuteUpdate();prepstmt2.clos

19、e();conn.close();4.6 生成电费单模块实现privateclass ButtonactionPerformed implements ActionListenerpublicvoid actionPerformed(ActionEvent e)facname=search.getTe*t();tryconn=DriverManager.getConnection(url, user, password);conn.setAutoCommit(true);System.out.println(和数据库已经建立连接!); stmt=(Statement) conn.createS

20、tatement();rs=(ResultSet)stmt.e*ecuteQuery(select * from factory );while(rs.ne*t()if(rs.getString(2).equals(facname)*1=rs.getString(5);*2=rs.getString(6);*3=rs.getString(7);te*t1.setTe*t(rs.getString(5);te*t2.setTe*t(rs.getString(6);te*t3.setTe*t(rs.getString(7);rs.close();stmt.close();conn.close();

21、5代码调试与功能测试5.1 测试方案(1)分别输入用户、管理员查看登陆进去后的界面(2)分别用用户和管理员查询企业用电信息(3)添加企业用电信息(4)修改企业用电信息(5)删除企业用电信息(6)生成电费单5.2 测试结果 管理员登陆 管理员登陆后的界面 管理员登陆后查询的界面 用户登陆后查询的界面 点击添加后的界面 输入数据添加成功 点击修改进行修改信息 修改成功 点击删除后出现的界面 删除成功 点击生成电费单出现的界面在桌面生成的电费单6 收获与体会一、这次课程设计的心得体会通过实践我的收获如下:一开始接触数据结构课程设计真的挺难的,好多都不会,不是逻辑方面的问题,而不具备动手能力,脑子里总

22、有一团火,比如对于这个题目,一开始有很多的想法,想到了从逻辑上怎么实现他,要编写哪些程序,但是一到需要编写了就开始为难了,可以说是几乎不知道从哪里入手,参考了书本里的程序,仿照他的结构一步一步做下来,现在对于单链表的各种操作已经算是比较熟练了,但我知道光有理论知识还远远不够,需要多动手,写的多了自然就能手到擒来。二、根据我在实习中遇到得问题,我将在以后的学习过程中注意以下几点:1、认真上好专业实验课,多在实践中锻炼自己。2、写程序的过程中要考虑周到,严密。3、在做设计的时候要有信心,有耐心,切勿浮躁。4、认真的学习课本知识,掌握课本中的知识点,并在此基础上学会灵活运用。5、在课余时间里多写程序

23、,熟练掌握在调试程序的过程中所遇到的常见错误,以便能节省调试程序的时间。. z.-参考文献1钱雪忠,王燕玲,林挺.数据库原理及技术M.北京:清华大学出版社,2011.2钱雪忠,罗海驰,陈国俊.数据库原理及技术课程设计M.北京:清华大学出版社,2014.附录附录1源程序部分清单record代码import java.awt.*;import java.awt.event.*;import java.sql.Connection;importManager;import java.sql.SQLE*ception;import java.sql.ResultSet;import java.sql.

24、Statement;import java*.swing.*;publicclass Record e*tends JFrameprivatestaticfinallongserialVersionUID = 1L;private JLabel username,password;private JTe*tField username2;private JTe*tField password2,message;private JButton button;private JRadioButton bo*1,bo*2;private ButtonGroup buttongroup;private

25、 String a,s;private String c=;private String b=;privateint level=2;/private String juzi; public Record()super(Record);setSize(300,300);tryUIManager.setLookAndFeel(UIManager.getSystemLookAndFeelClassName();catch(E*ception e)Container container=getContentPane();container.setBackground(Color.lightGray)

26、;container.setLayout(null);username=new JLabel(用户名:,JLabel.RIGHT);password=new JLabel( 密码: ,JLabel.RIGHT);buttongroup=new ButtonGroup();bo*1=new JRadioButton(员工,true);bo*2=new JRadioButton(管理员);username2=new JTe*tField(20);password2=new JTe*tField(20);message=new JTe*tField(欢迎使用企业用电管理系统);message.set

27、HorizontalAlignment(JTe*tField.CENTER);button=new JButton(登录);username.setBounds(50, 50, 50, 25);username2.setBounds(100, 50, 120, 25);password.setBounds(50, 85, 50, 25);password2.setBounds(100,85, 120, 25);message.setBounds(55,160, 190, 25);bo*1.setBounds(50,120,50,25);bo*2.setBounds(110,120,70,25)

28、;button.setBounds(190, 120, 60, 25);buttongroup.add(bo*1);buttongroup.add(bo*2);ButtonactionPerformed buttoner=new ButtonactionPerformed();button.addActionListener(buttoner);RadioButtonHandler handler = new RadioButtonHandler();bo*1.addItemListener(handler);bo*2.addItemListener(handler);container.ad

29、d(username);container.add(username2);container.add(password);container.add(password2);container.add(bo*1);container.add(bo*2);container.add(button);container.add(message);setVisible(true);setDefaultCloseOperation(JFrame.E*IT_ON_CLOSE);publicstaticvoid main(String args)Record app=new Record();app.set

30、LocationRelativeTo(null);privateclass RadioButtonHandler implements ItemListenerpublicvoid itemStateChanged(ItemEvent event) if(bo*1.isSelected()message.setTe*t(员工登录);level=2;elseif(bo*2.isSelected()message.setTe*t(管理员登录);level=1;privateclass ButtonactionPerformed implements ActionListenerpublicvoid

31、 actionPerformed(ActionEvent e)/登录etTe*t();s=password2.getTe*t();tryClass.forName(driver);catch(ClassNotFoundE*ception arg0)System.out.print(class not find e*ception occur. message is:);tryClass.forName(driver);/加载驱动catch(ClassNotFoundE*ception event)System.out.print(class not find e*ception occur.

32、message is:);Statement stmt;ResultSet rs;String url=jdbc:sqlserver:/localhost:1433; DatabaseName=企业用电;String driverc.SQLServerDriver;String user=sa;String password=123456;Connection conn=null;tryconn=DriverManager.getConnection(url, user, password);conn.setAutoCommit(true);System.out.println(和数据库已经建

33、立连接!); stmt=(Statement) conn.createStatement(); rs=(ResultSet)stmt.e*ecuteQuery(select * from worker );if(c.equals(a)&b.equals(s)message.setTe*t(姓名和密码不能为空);elseif(true)while(rs.ne*t()if(rs.getString(2).equals(a)& rs.getString(3).equals(s)&rs.getInt(4)=level)message.setTe*t(数据库连接成功!);if(level=1)opera

34、te2 app2=new operate2();app2.setLocationRelativeTo(null);elseoperate app3=new operate();app3.setLocationRelativeTo(null);elsemessage.setTe*t(用户名和密码或者身份不正确);rs.close();stmt.close();conn.close();catch(SQLE*ception eb)System.out.print(SQL e*ception occur. message is:);System.out.print(eb.getMessage();附

35、录1.2 operate代码import java.awt.Color;import java.awt.Container;import java.awt.event.ActionEvent;import java.awt.event.ActionListener;import java.sql.Connection;importnager;import java.sql.SQLE*ception;import java*.swing.JButton;import java*.swing.JFrame;import java*.swing.JLabel;import java*.swing.J

36、Te*tField;import java*.swing.UIManager;import java.sql.ResultSet;import java.sql.Statement;publicclass operate e*tends JFrameprivatestaticfinallongserialVersionUID = 1L;private JButton b1,b2,b3,b4,b5,b6;private JLabel c1,c2,c3,c4,c5,c6,c7;private JTe*tField te*t1,te*t2,te*t3,te*t4,te*t5,te*t6,te*t7;

37、private JTe*tField search;private JLabel name;private String facname; public operate()super(operate);setSize(700,400);tryUIManager.setLookAndFeel(UIManager.getSystemLookAndFeelClassName();catch(E*ception e)Container container=getContentPane();name=new JLabel(输入企业名:,JLabel.RIGHT);c1=new JLabel(企业编号:,

38、JLabel.RIGHT);c2=new JLabel(企业名称:,JLabel.RIGHT);c3=new JLabel(企业代表人:,JLabel.RIGHT);c4=new JLabel(企业联系电话:,JLabel.RIGHT);c5=new JLabel(企业谷电量:,JLabel.RIGHT);c6=new JLabel(企业峰电量:,JLabel.RIGHT);c7=new JLabel(企业用电费:,JLabel.RIGHT);b1=new JButton(查询);b2=new JButton(取消);b3=new JButton(添加);b4=new JButton(删除);

39、b5=new JButton(修改);b6=new JButton(生成电费单);te*t1=new JTe*tField(200);te*t2=new JTe*tField(200);te*t3=new JTe*tField(200);te*t4=new JTe*tField(200);te*t5=new JTe*tField(200);te*t6=new JTe*tField(200);te*t7=new JTe*tField(200);search=new JTe*tField(60);name.setBounds(80, 50, 100, 30);c1.setBounds(80, 10

40、0, 100, 30);c2.setBounds(80, 130, 100, 30);c3.setBounds(80, 160, 100, 30);c4.setBounds(80, 190, 100, 30);c5.setBounds(80, 220, 100, 30);c6.setBounds(80, 250, 100, 30);c7.setBounds(80, 280, 100, 30);search.setBounds(200, 50, 100, 25);b1.setBounds(370, 52,60,25);b2.setBounds(500,52,60,25);b3.setBounds

41、(150, 330,60,25);b4.setBounds(250, 330,60,25);b5.setBounds(350, 330,60,25);b6.setBounds(450, 330,100,25);te*t1.setBounds(200,100,350,30);te*t2.setBounds(200,130,350,30);te*t3.setBounds(200,160,350,30);te*t4.setBounds(200,190,350,30);te*t5.setBounds(200,220,350,30);te*t6.setBounds(200,250,350,30);te*

42、t7.setBounds(200,280,350,30);ButtonactionPerformed buttoner=new ButtonactionPerformed();ButtonactionPerformed2 buttoner2=new ButtonactionPerformed2();ButtonactionPerformed3 buttoner3=new ButtonactionPerformed3();ButtonactionPerformed4 buttoner4=new ButtonactionPerformed4();ButtonactionPerformed5 but

43、toner5=new ButtonactionPerformed5();ButtonactionPerformed6 buttoner6=new ButtonactionPerformed6();b1.addActionListener(buttoner);b2.addActionListener(buttoner2);b3.addActionListener(buttoner3);b4.addActionListener(buttoner4);b5.addActionListener(buttoner5);b6.addActionListener(buttoner6);container.a

44、dd(b1);container.add(b2);container.add(b3);container.add(b4);container.add(b5);container.add(b6);container.add(search);container.add(te*t1);container.add(te*t2);container.add(te*t3);container.add(te*t4);container.add(te*t5);container.add(te*t6);container.add(te*t7);container.add(name);container.add(

45、c1);container.add(c2);container.add(c3);container.add(c4);container.add(c5);container.add(c6);container.add(c7);container.setBackground(Color.lightGray);container.setLayout(null);setVisible(true);setDefaultCloseOperation(JFrame.E*IT_ON_CLOSE);privateclass ButtonactionPerformed implements ActionListe

46、nerpublicvoid actionPerformed(ActionEvent e)facname=search.getTe*t();tryClass.forName(driver);catch(ClassNotFoundE*ception arg0)System.out.print(class not find e*ception occur. message is:);tryClass.forName(driver);/加载驱动catch(ClassNotFoundE*ception event)System.out.print(class not find e*ception occ

47、ur. message is:);Statement stmt;ResultSet rs;String url=jdbc:sqlserver:/localhost:1433; DatabaseName=企业用电;String driver.sqlserver.jdbc.SQLServerDriver;String user=sa;String password=123456;Connection conn=null;tryconn=DriverManager.getConnection(url, user, password);conn.setAutoCommit(true);System.o

48、ut.println(和数据库已经建立连接!); stmt=(Statement) conn.createStatement();rs=(ResultSet)stmt.e*ecuteQuery(select * from factory );while(rs.ne*t()if(rs.getString(2).equals(facname)te*t1.setTe*t(rs.getString(1);te*t2.setTe*t(rs.getString(2);te*t3.setTe*t(rs.getString(3);te*t4.setTe*t(rs.getString(4);te*t5.setT

49、e*t(+(rs.getInt(5);te*t6.setTe*t(+rs.getInt(6);te*t7.setTe*t(+rs.getInt(7);rs.close();stmt.close();conn.close();catch(SQLE*ception eb)System.out.print(SQL e*ception occur. message is:);System.out.print(eb.getMessage();privateclass ButtonactionPerformed2 implements ActionListenerpublicvoid actionPerf

50、ormed(ActionEvent event)System.e*it(0);privateclass ButtonactionPerformed3 implements ActionListenerpublicvoid actionPerformed(ActionEvent event)insert app3=new insert();app3.setLocationRelativeTo(null);privateclass ButtonactionPerformed4 implements ActionListenerpublicvoid actionPerformed(ActionEve

51、nt event)delect app4=new delect();app4.setLocationRelativeTo(null);privateclass ButtonactionPerformed5 implements ActionListenerpublicvoid actionPerformed(ActionEvent event)update app5=new update();app5.setLocationRelativeTo(null);privateclass ButtonactionPerformed6 implements ActionListenerpublicvo

52、id actionPerformed(ActionEvent event)create app6=new create();app6.setLocationRelativeTo(null);publicstaticvoid main(String args)operate app=new operate();app.setLocationRelativeTo(null);附录1.3 operate2代码import java.awt.Color;import java.awt.Container;import java.awt.event.ActionEvent;import java.awt

53、.event.ActionListener;import java.sql.Connection;import java.sql.DriverManager;import java.sql.SQLE*ception;import java*.swing.JButton;import java*.swing.JFrame;import java*.swing.JLabel;import java*.swing.JTe*tField;import java*.swing.UIManager;import java.sql.ResultSet;import java.sql.Statement;pu

54、blicclass operate2 e*tends JFrameprivatestaticfinallongserialVersionUID = 1L;private JButton b1,b2,b3,b4;private JLabel c1,c2,c3,c4,c5,c6,c7,d1,d2,d3,d4;private JTe*tField te*t1,te*t2,te*t3,te*t4,te*t5,te*t6,te*t7,ce1,ce2,ce3,ce4;private JTe*tField search1,search2;private JLabel name,name2,action1,action2;private String facname1,facname2; public operate2()super(op

展开阅读全文
温馨提示:
1: 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
2: 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
3.本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
5. 装配图网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
关于我们 - 网站声明 - 网站地图 - 资源地图 - 友情链接 - 网站客服 - 联系我们

copyright@ 2023-2025  zhuangpeitu.com 装配图网版权所有   联系电话:18123376007

备案号:ICP2024067431-1 川公网安备51140202000466号


本站为文档C2C交易模式,即用户上传的文档直接被用户下载,本站只是中间服务平台,本站所有文档下载所得的收益归上传人(含作者)所有。装配图网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。若文档所含内容侵犯了您的版权或隐私,请立即通知装配图网,我们立即给予删除!