java项目开发-- 进销存管理系统1 - 图文(7)

2019-08-30 16:16

该方法将根据Item对象中封装的供应商ID编号和供应商名称获取指定供应商的数据,并将该供应商的数据封装到实体对象中,然后返回该实体对象。关键代码如下:

例程11 代码位置:光盘\\TM\\01\\JXCManager\\src\\com\\lzw\\dao\\Dao.java

1. 2. 3. 4. 5. 6. 7. 8. 9.

//读取指定供应商信息

public static TbGysinfo getGysInfo(Item item) {

String where = \ + item.getName() + \//默认的查询条件以供应商名称为主

if (item.getId() != null) //如果Item对象中存有ID编号

where = \ + item.getId() + \//则以ID编号为查询条件

TbGysinfo info = new TbGysinfo();

ResultSet set = findForResultSet(\tb_gysinfo where \ try {

if (set.next()) { //封装供应商数据到实体对象中

11. info.setAddress(set.getString(\ 12. info.setBianma(set.getString(\ 13. info.setFax(set.getString(\ 14. info.setJc(set.getString(\ 15. info.setLian(set.getString(\ 16. info.setLtel(set.getString(\ 17. info.setMail(set.getString(\ 18. info.setName(set.getString(\ 19. info.setTel(set.getString(\ 20. info.setYh(set.getString(\ 21. }

22. } catch (SQLException e) { 23. e.printStackTrace(); 24. }

25. return info;

//返回供应商实体对象 26. }

1.6.1 编写Dao公共类(2) 3.updateGys()方法

该方法用于更新供应商的基础信息,它接收供应商的实体类TbGysinfo作方法参数,在方法中直接解析供应商实体对象中的属性,并将这些属性更新到数据表中。关键代码如下:

10. info.setId(set.getString(\

例程12 代码位置:光盘\\TM\\01\\JXCManager\\src\\com\\lzw\\dao\\Dao.java

1. 2. 3. 4. 5. 6. 7. 8. 9.

//修改供应商信息的方法

public static int updateGys(TbGysinfo gysInfo) {

return update(\jc='\ + \address='\,bianma='\ + gysInfo.getBianma() + \tel='\ + \fax='\,lian='\tLian()

+ \ltel='\,mail='\ + gysInfo.getMail() + \yh='\ + \id='\\

10. }

4.insertRukuInfo()方法

该方法负责完成入库单信息的添加,涉及到库存表、入库主表和入库详细表等多个数据表的操作。为保证数据的完整性,该方法将入库信息的添加操作放在事务中完成,方法将接收入库主表的实体类TbRukuMain作参数,该实体类中包含了入库详细表的引用。关键代码如下:

例程13 代码位置:光盘\\TM\\01\\JXCManager\\src\\com\\lzw\\dao\\Dao.java

1. 2. 3. 4. 5. 6. 7. 8. 9.

public static boolean insertRukuInfo(TbRukuMain ruMain) { //在事务中添加入库信息 try {

boolean ?autoCommit = conn.getAutoCommit();

conn.setAutoCommit(false); ? //取消自动提交模式

insert(\//添加入库主表记录

+ \\

+ ruMain.getYsjl() + \','\

+ ruMain.getRkdate() + \'\

+ ruMain.getJsr() + \;

10. Set rkDetails = ruMain.getTabRukuDetails(); 11. for (Iterator iter = rkDetails.iterator(); ite

r.hasNext();) {

12. TbRukuDetail details = iter.next();

13. insert(\

ruMain.getRkId() //添加入库详细表记录

14. + \

+ details.getDj() + \ 15. Item item = new Item();

16. item.setId(details.getTabSpinfo()); 17. TbSpinfo spInfo = getSpInfo(item);

18. if (spInfo.getId() != null && !spInfo.getId().isEmpty())

{

19. TbKucun kucun = getKucun(item);

20. if (kucun.getId() == null || kucun.getId().

isEmpty()) { //添加或修改库存表记录

21. insert(\

spInfo.getId()

22. + \

\

23. + \

\

24. + \

\ 25. } else {

26. int sl = kucun.getKcsl() + details.getSl(); 27. update(\kcsl=\

\,dj=\ where id='\\ 28. } 29. } 30. }

31. conn.commit(); ?

//提交事务

32. conn.setAutoCommit(autoCommit);

//恢复自动提交模式

33. } catch (SQLException e) { 34. try {

35. conn.rollback(); ?

//如果出错,回退事务

36. } catch (SQLException e1) { 37. e1.printStackTrace(); 38. }

39. e.printStackTrace(); 40. }

41. return true; 42. } 代码贴士

getAutoCommit():该方法用于获取事务自动提交模式。

setAutoCommit():该方法用于设置事务的自动提交模式。 commit():该方法用于执行事务提交。

rollback ():该方法在事务执行失败时,执行回退操作。 5.getKucun()方法

该方法用于获取指定ID编号或名称的商品库存信息,它接收一个Item对象作参数,该对象中封装了商品的ID编号和商品名称信息,如果库存表中存在该商品的库存记录,就获取该记录并将记录中的数据封装到库存表的实体对象中,然后将该实体对象作为方法的返回值。关键代码如下: 例程14 代码位置:光盘\\TM\\01\\JXCManager\\src\\com\\lzw\\dao\\Dao.java

1. 2. 3. 4. 5. 6. 7. 8. 9.

//获取库存商品信息

public static TbKucun getKucun(Item item) {

String where = \ + item.getName() + \ if (item.getId() != null)

where = \ + item.getId() + \

ResultSet rs = findForResultSet(\+ where);

TbKucun kucun = new TbKucun(); try {

if (rs.next()) {

10. kucun.setId(rs.getString(\

11. kucun.setSpname(rs.getString(\ 12. kucun.setJc(rs.getString(\ 13. kucun.setBz(rs.getString(\ 14. kucun.setCd(rs.getString(\ 15. kucun.setDj(rs.getDouble(\ 16. kucun.setDw(rs.getString(\ 17. kucun.setGg(rs.getString(\ 18. kucun.setKcsl(rs.getInt(\ 19. }

20. } catch (SQLException e) { 21. e.printStackTrace(); 22. }

23. return kucun; 24. } 1.6.2 编写Item类

Item类是系统的公共类之一,主要用于封装和传递参数信息,这是典型命令模式的实现。在Dao类中经常使用该类作为方法参数;另外,在各个窗体界面中也经常使用该类作组件数据,其toString()方法将返回

name属性值,所以显示到各个组件上的内容就是Item类的对象所代表的商品、供应商或者客户等信息中的名称。定义该类的关键代码如下:

例程15 代码位置:光盘\\TM\\01\\JXCManager\\src\\internalFrame\\guanli\\Item.java

1. 2. 3. 4. 5. 6. 7. 8. 9.

public String id; //定义id属性 public String name; //定义名称属性

public String getId() { //定义暴露ID属性的方法 return id; }

public void setId(String id) { this.id = id; }

public String getName() { //定义暴露名称属性的方法

10. return name; 11. }

12. public void setName(String name) { 13. this.name = name; 14. }

15. public String toString() { //定义该类的字符串表现形式 16. return getName(); 17. } 18.

1.7 基础信息模块设计

基础信息模块用于管理企业进销存管理系统中的客户、商品和供应商信息,其功能主要是对这些基础信息进行添加、修改和删除。 1.7.1 基础信息模块概述

企业进销存管理系统中的基础信息模块主要包括客户管理、商品管理和供应商管理3部分。由于它们的实现方法基本相似,本节将以供应商管理部分为主,介绍基础信息模块对本系统的意义和实现的业务逻辑。 1.供应商添加

供应商添加功能主要负责为系统添加新的供应商记录。在企业进销存管理系统中,商品是主要的管理对象,而系统中所有的商品都由不同的供应商提供,这就需要把不同的供应商信息添加到系统中,在商品信息中会关联系统中对应的供应商信息。供应商添加功能的程序界面如图1.21所示。 2.供应商修改与删除

供应商的修改与删除功能主要用于维护系统中的供应商信息。在供应商的联系方式发生改变时,必须更新系统中的记录,以提供供应商的最新信息。另外,当不再与某家供应商合作时,需要从系统中删除供应商的记录信息。其程序运行界面如图1.22所示。


java项目开发-- 进销存管理系统1 - 图文(7).doc 将本文的Word文档下载到电脑 下载失败或者文档不完整,请联系客服人员解决!

下一篇:导游词(吴耀辉)

相关阅读
本类排行
× 注册会员免费下载(下载后可以自由复制和排版)

马上注册会员

注:下载文档有可能“只有目录或者内容不全”等情况,请下载之前注意辨别,如果您已付费且无法下载或内容有问题,请联系我们协助你处理。
微信: QQ: