fittingqueryAction.java
上传用户:flow_meter
上传日期:2022-03-21
资源大小:40k
文件大小:4k
源码类别:

MySQL数据库

开发平台:

SQL

  1. package sql_lab;
  2. import java.sql.ResultSet;
  3. import java.sql.SQLException;
  4. import org.eclipse.jface.action.Action;
  5. import org.eclipse.jface.dialogs.IInputValidator;
  6. import org.eclipse.jface.dialogs.InputDialog;
  7. import org.eclipse.jface.window.Window;
  8. import org.eclipse.swt.widgets.Display;
  9. import org.eclipse.swt.widgets.Text;
  10. import sql_lab.salequeryAction.saleValidator;
  11. public class fittingqueryAction extends Action {
  12. public fittingqueryAction(){
  13. super();
  14. this.setText("配件信息查询(&P)");
  15. this.setToolTipText("配件信息查询");
  16. }
  17. public void run(){
  18. if(MainWindow.log==false){
  19. Text content=MainWindow.getApp().getContent();
  20. content.append("请您先登陆n");
  21. return ;
  22. }
  23. InputDialog inputDialog=new InputDialog(Display.getCurrent().getActiveShell(),"请输入配件代号",
  24.  "配件代号","",new fittingValidator() );//这个是自定义验证有效性的对象
  25. int result=inputDialog.open();
  26. if(result==Window.OK){//对数据库进行查询
  27. int saleNumber=Integer.parseInt(inputDialog.getValue());//得到售货单号
  28. String str1="call proc_1("+saleNumber+")";
  29. sqlManager sql=sqlManager.getSqlManager();
  30. sql.executeQuery(str1);
  31. String str2="select "+
  32. sqlManager.tb_produce+"."+sqlManager.row_produce_id+", "+// 选择配件id
  33. sqlManager.tb_produce+"."+sqlManager.row_produce_name+", "+//配件名称
  34. sqlManager.tb_produce+"."+sqlManager.row_produce_funtion+", "+//配件介绍
  35. sqlManager.tb_produce+"."+sqlManager.row_produce_price+", "+//配件价格
  36. sqlManager.tb_produce+"."+sqlManager.row_produce_sort+", "+//配件类别
  37. sqlManager.tb_producer+"."+sqlManager.row_producer_name+", "+//厂家名称
  38. sqlManager.tb_producer+"."+sqlManager.row_producer_address+", "+//厂家地址
  39. sqlManager.tb_producer+"."+sqlManager.row_producer_call+", "+//厂家电话
  40. sqlManager.tb_producer+"."+sqlManager.row_producer_describe+"  "+//厂家介绍
  41. "from "+sqlManager.tb_fitting_result+" , "+sqlManager.tb_produce+", "+sqlManager.tb_producer+"  "+
  42. "where "+sqlManager.tb_fitting_result+"."+sqlManager.row_result_id+"="+sqlManager.tb_produce+"."+
  43. sqlManager.row_produce_id+"  and "+sqlManager.tb_produce+"."+sqlManager.row_produce_producer_id+"="+
  44. sqlManager.tb_producer+"."+sqlManager.row_producer_id+
  45. "  ";
  46. ResultSet set=sql.executeQuery(str2);
  47. Text content=MainWindow.getApp().getContent();
  48. boolean flag=false;
  49. String s="***********************************配件信息查询查询结果**********************************n";
  50. content.append(s);
  51. try{
  52. while(set.next()){
  53. flag=true;
  54. //content.append(s);
  55. if(saleNumber==set.getInt(1))
  56. content.append("您要查的产品ID为:"+saleNumber+"n");
  57. else content.append("配件ID:"+set.getInt(1)+"n");
  58. content.append("名称: "+set.getString(2)+"n");
  59. content.append("介绍: "+set.getString(3)+"n");
  60. content.append("价格: "+set.getDouble(4)+"n");
  61. content.append("类别: "+set.getString(5)+"n");
  62. content.append("厂家信息n");
  63. content.append("生产厂家: "+set.getString(6)+"n");
  64. content.append("厂家地址: "+set.getString(7)+"n");
  65. content.append("厂家电话: "+set.getString(8)+"n");
  66. content.append("厂家介绍: "+set.getString(9)+"n");
  67. }
  68. }
  69. catch(SQLException e){
  70. e.printStackTrace();
  71. }
  72. content.append(s);
  73. if(flag==false)content.append("查询结果为空n");
  74. }
  75. else{
  76. System.out.println("input cancel");
  77. }
  78. }
  79. public class fittingValidator implements IInputValidator{
  80. public String isValid(String newText){
  81. try{
  82. Integer.parseInt(newText);
  83. }
  84. catch(NumberFormatException ne){
  85. return "输入错误,请输入有效的配件代号";
  86. }
  87. return null;
  88. }
  89. }
  90. }