




已阅读5页,还剩4页未读, 继续免费阅读
版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
对于主细表的操作总结(商品入库)一、程序界面如下一、主表类及属性声明:public class TbRukuMain implements java.io.Serializable private String rkId;private String pzs;private String je;private String ysjl;private String gysname;private String rkdate;private String czy;private String jsr;private String jsfs;private Set tabRukuDetails = new HashSet(0);/声明明显表的集合对象 public TbRukuMain() public TbRukuMain(String rkId, String pzs, String je, String ysjl, String gysname, String rkdate, String czy, String jsr, String jsfs) this.rkId = rkId; this.pzs = pzs; this.je = je; this.ysjl = ysjl; this.gysname = gysname; this.rkdate = rkdate; this.czy = czy; this.jsr = jsr; this.jsfs = jsfs; public String getRkId() return this.rkId; public void setRkId(String rkId) this.rkId = rkId; public String getPzs() return this.pzs; public void setPzs(String pzs) this.pzs = pzs; public String getJe() return this.je; public void setJe(String je) this.je = je; public String getYsjl() return this.ysjl; public void setYsjl(String sf) this.ysjl = sf; public String getGysname() return this.gysname; public void setGysname(String gysname) this.gysname = gysname; public String getRkdate() return this.rkdate; public void setRkdate(String rkdate) this.rkdate = rkdate; public String getCzy() return this.czy; public void setCzy(String czy) this.czy = czy; public String getJsr() return this.jsr; public void setJsr(String jsr) this.jsr = jsr; public String getJsfs() return this.jsfs; public void setJsfs(String jsfs) this.jsfs = jsfs; public Set getTabRukuDetails() return this.tabRukuDetails; public void setTabRukuDetails(Set tabRukuDetails) this.tabRukuDetails = tabRukuDetails; 二、明细表的类及属性public class TbRukuDetail implements java.io.Serializable private String id;private String tbSpinfo;private String tbRukuMain;/和主表关联的外键private Double dj;private Integer sl;public TbRukuDetail() public TbRukuDetail(String tbSpinfo, String tbRukuMain, Double dj,Integer sl) this.tbSpinfo = tbSpinfo;this.tbRukuMain = tbRukuMain;this.dj = dj;this.sl = sl;public String getId() return this.id;public void setId(String lsh) this.id = lsh;public String getTabSpinfo() return this.tbSpinfo;public void setTabSpinfo(String tbSpinfo) this.tbSpinfo = tbSpinfo;public String getTabRukuMain() return this.tbRukuMain;public void setTabRukuMain(String tbRukuMain) this.tbRukuMain = tbRukuMain;public Double getDj() return this.dj;public void setDj(Double dj) this.dj = dj;public Integer getSl() return this.sl;public void setSl(Integer sl) this.sl = sl;三、ITEM类及对象(用于查询明细表条目中对应的商品、商品针对的库存时用,具体可以看第七部的调用)public class Item public String id;public String name;public String getId() return id;public void setId(String id) this.id = id;public String getName() return name;public void setName(String name) = name;public String toString() return getName();四、获取该明细所对应的商品信息的方法public static TbSpinfo getSpInfo(Item item) String where = spname= + item.getName() + ;if (item.getId() != null)where = id= + item.getId() + ;ResultSet rs = findForResultSet(select * from tb_spinfo where + where);TbSpinfo spInfo = new TbSpinfo();try if (rs.next() spInfo.setId(rs.getString(id).trim();spInfo.setBz(rs.getString(bz).trim();spInfo.setCd(rs.getString(cd).trim();spInfo.setDw(rs.getString(dw).trim();spInfo.setGg(rs.getString(gg).trim();spInfo.setGysname(rs.getString(gysname).trim();spInfo.setJc(rs.getString(jc).trim();spInfo.setMemo(rs.getString(memo).trim();spInfo.setPh(rs.getString(ph).trim();spInfo.setPzwh(rs.getString(pzwh).trim();spInfo.setSpname(rs.getString(spname).trim(); catch (SQLException e) e.printStackTrace();return spInfo;五、获取该商品对应的库存信息public static TbKucun getKucun(Item item) String where = spname= + item.getName() + ;if (item.getId() != null)where = id= + item.getId() + ;ResultSet rs = findForResultSet(select * from tb_kucun where + where);TbKucun kucun = new TbKucun();try if (rs.next() kucun.setId(rs.getString(id);kucun.setSpname(rs.getString(spname);kucun.setJc(rs.getString(jc);kucun.setBz(rs.getString(bz);kucun.setCd(rs.getString(cd);kucun.setDj(rs.getDouble(dj);kucun.setDw(rs.getString(dw);kucun.setGg(rs.getString(gg);kucun.setKcsl(rs.getInt(kcsl); catch (SQLException e) e.printStackTrace();return kucun;六、给主表和明细表赋值操作public void actionPerformed(ActionEvent e) / 结束表格中没有编写的单元stopTableCellEditing();/ 清除空行clearEmptyRow();String hpzsStr = hpzs.getText(); / 货品总数String pzsStr = pzs.getText(); / 品种数String jeStr = hjje.getText(); / 合计金额String jsfsStr = jsfs.getSelectedItem().toString(); / 结算方式String jsrStr = jsr.getText().trim(); / 经手人String czyStr = czy.getText(); / 操作员/String rkDate = jhsjDate.toLocaleString(); / 入库时间 SimpleDateFormat sdf = new SimpleDateFormat( yyyy-MM-dd ); String rkDate = sdf.format(jhsjDate);String ysjlStr = ysjl.getText().trim(); / 验收结论String id = piaoHao.getText(); / 票号String gysName = gys.getSelectedItem().toString();/ 供应商名字if (jsrStr = null | jsrStr.isEmpty() JOptionPane.showMessageDialog(JinHuoDan.this, 请填写经手人);return;if (ysjlStr = null | ysjlStr.isEmpty() JOptionPane.showMessageDialog(JinHuoDan.this, 填写验收结论);return;if (table.getRowCount() = 0) JOptionPane.showMessageDialog(JinHuoDan.this, 填加入库商品);return;TbRukuMain ruMain = new TbRukuMain(id, pzsStr, jeStr, ysjlStr,gysName, rkDate, czyStr, jsrStr, jsfsStr);Set set = ruMain.getTabRukuDetails();int rows = table.getRowCount();for (int i = 0; i rows; i+) TbSpinfo spinfo = (TbSpinfo) table.getValueAt(i, 0);String djStr = (String) table.getValueAt(i, 6);String slStr = (String) table.getValueAt(i, 7);Double dj = Double.valueOf(djStr);Integer sl = Integer.valueOf(slStr);TbRukuDetail detail = new TbRukuDetail();detail.setTabSpinfo(spinfo.getId();detail.setTabRukuMain(ruMain.getRkId();detail.setDj(dj);detail.setSl(sl);set.add(detail);boolean rs = Dao.insertRukuInfo(ruMain);if (rs) JOptionPane.showMessageDialog(JinHuoDan.this, 入库完成);DefaultTableModel dftm = new DefaultTableModel();table.setModel(dftm);initTable();pzs.setText(0);hpzs.setText(0);hjje.setText(0);七、对数据库主表和明细表以及商品对应的库存表进行事物操作public static boolean insertRukuInfo(TbRukuMain ruMain) try boolean autoCommit = conn.getAutoCommit();conn.setAutoCommit(false);/ 锟斤拷锟斤拷锟斤拷锟斤拷锟斤拷锟铰insert(insert into tb_ruku_main values( + ruMain.getRkId()+ , + ruMain.getPzs() + , + ruMain.getJe() + ,+ ruMain.getYsjl() + , + ruMain.getGysname() + ,+ ruMain.getRkdate() + , + ruMain.getCzy() + ,+ ruMain.getJsr() + , + ruMain.getJsfs() + );Set rkDetails = ruMain.getTabRukuDetails();for (Iterator iter = rkDetails.iterator(); iter.hasNext();) TbRukuDetail details = iter.next();/ 锟斤拷锟斤拷锟斤拷锟斤拷细锟斤拷锟铰insert(insert into tb_ruku_detail values(+details.getId()+, + ruMain.getRkId()+ , + details.getTabSpinfo() + ,+ details.getDj() + , + details.getSl() + );/ 锟斤拷踊锟斤拷薷目锟斤拷锟斤拷录Item item = new Item()
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 2025人民医院医疗资源调配考核
- 沧州市人民医院急诊配血专项考核
- 2025内蒙古赤峰市元宝山区事业单位通过“绿色通道”引进高层次人才10人模拟试卷及答案详解(夺冠)
- 2025北京市公园管理中心所属事业单位第一批高层次人才招聘2人模拟试卷附答案详解(考试直接用)
- 2025河南新乡学院诚聘高层次人才100人模拟试卷及答案详解参考
- 2025北京市海淀区锦秋学校招聘考前自测高频考点模拟试题附答案详解
- 2025广西玉林市玉州区城北供销合作社招聘行政工作人员3人考前自测高频考点模拟试题附答案详解
- 2025北京大学中国社会科学调查中心招聘3名劳动合同制工作人员模拟试卷及完整答案详解一套
- 2025内蒙古锡林浩特市内蒙古北方人才集团招聘10人模拟试卷含答案详解
- 2025河南郑州大学第三附属医院招聘160名考前自测高频考点模拟试题带答案详解
- 人工牛黄甲硝唑胶囊课件
- 全产业链视角下我国低空经济保险发展研究
- 核心素养下初中数学符号意识的培养
- 淮北矿业安全管理办法
- 诊所日常运营管理规范流程
- 法国文学课件
- 2025年止血技术理论知识考试试题及答案
- ECMO护理进修汇报
- 2025年(完整版)(高级)政工师理论考试题库与答案
- 首钢职务职级管理办法
- 建筑施工职业健康与安全防护指南
评论
0/150
提交评论