javainthinking

          XL的個性空間和java學(xué)習(xí)之旅

            BlogJava :: 首頁 :: 新隨筆 :: 聯(lián)系 :: 聚合  :: 管理 ::
            13 隨筆 :: 13 文章 :: 20 評論 :: 1 Trackbacks

          package park.jsp.reportfill;

          import javax.servlet.http.HttpServletRequest;
          import java.sql.ResultSet;
          import java.sql.Statement;
          import java.sql.Connection;
          import java.sql.SQLException;
          import park.jsp.main.ConnectDB;
          import park.jsp.common.TableNewId;
          import javax.servlet.http.HttpSession;
          import java.util.Date;
          import park.jsp.common.DateHandle;

          /**
           * <p>Title: </p>
           * <p>Description:修改和存儲登記卡相關(guān)信息 </p>
           * <p>Copyright: Copyright (c) 2005</p>
           * <p>Company: </p>
           * @author 熊煉
           * @version 1.0
           */

          public class Register_Refer
          {
              /**
               * 此程序需要在scope中額外獲取的參數(shù)有:type(對象類型)、message(操作類型)、f_emp_name(用戶名)
               * 特別:1.操作類型為modify,需要舊的t_bas_*表中所有可更改參數(shù)   2.對象類型為動植物,則需要f_k,f_s,f_classno,f_py
               * @param request
               * @return String(操作信息字段)
               */
              public static String main(HttpServletRequest request,HttpSession session)
              {
                  Connection conn = null;
                  Statement stmt = null;
                  ResultSet rs = null;
                  try
                  {
                      //連接數(shù)據(jù)庫
                      conn=ConnectDB.connect();
                      stmt=conn.createStatement();

          //            String f_name, f_k_classname,f_s_classname,f_s_ldm,f_j_classname,f_xx,f_cd,f_layer,
          //            f_ldm,f_bhc,f_fzcs,f_szxz ,f_ms,f_yt,f_area,f_yy,v_message,v_type,v_tablename;
                      String f_name, f_k,f_s,f_classno,f_xx,f_cd,f_layer,f_py,
                      f_ldm,f_bhc,f_fzcs,f_szxz ,f_ms,f_yt,f_area,f_yy,v_message,v_type,v_tablename;
                      v_message = request.getParameter("message"); //判斷消息字段,modify修改,create創(chuàng)建,delete刪除
                      v_type=(String)request.getAttribute("type");//判斷類型(plant植物,animal是動物...)

                      //植物不同字段
                      f_ms=request.getParameter("t_ms");
                      f_yt=request.getParameter("t_yt");
                      f_area=request.getParameter("t_area");
                      f_yy=request.getParameter("t_yy");

                      //執(zhí)行數(shù)據(jù)庫操作
                      String rrSql="";
                      int v_flag=0;//v_flag為數(shù)據(jù)操作是否成功的標(biāo)志,1為成功,0為失敗
                      StringBuffer sb=null;
                      //判斷對象類型
                      if("animal".equals(v_type))
                      {
                        //獲取t_bas_animal表中的所有字段(除f_id)
                        //獲得不能更改的字段
                        f_name=request.getParameter("t_name");
                        f_k=(String)request.getAttribute("f_k");
                        f_s=(String)request.getAttribute("f_s");
                        f_classno=(String) request.getAttribute("f_j");
                        f_py=(String)request.getAttribute("f_py");
                        f_ldm = request.getParameter("t_ldm");
                        f_xx = request.getParameter("t_xx");
                        f_cd = request.getParameter("t_cd");
                        f_layer = request.getParameter("t_layer");

                        //從form中獲取可以更改的字段,為字段新內(nèi)容
                        f_bhc = request.getParameter("t_bch");
                        f_fzcs = request.getParameter("t_fzcs");
                        f_szxz = request.getParameter("t_szxz");
                        float animal_f_id=0;

                        //判斷操作類型
                        if("create".equals(v_message))
                        {
                          //獲取t_rpt_modify報表操作表中的相關(guān)字段
                          String f_rpt_no,f_rpt_pid,f_emp_name,f_type,f_new_value,f_ref_date;
                          //獲取表中f_pid字段
                          float rpt_f_id=0;
                          try
                          {
                              rpt_f_id = TableNewId.getTableNewId(stmt,1,"t_rpt_modi",
                                      "f_pid");
                              if(rpt_f_id==0)
                              {
                                 return "<script language=javascript>window.alert('系統(tǒng)錯誤,創(chuàng)建失敗!');window.close();</script>";
                              }
                          }
                          catch(SQLException ex)
                          {
                              ex.printStackTrace();
                          }
                          //其余相關(guān)字段
                          f_emp_name=(String) session.getAttribute("f_emp_name");
                          f_type="0";
                          //以逗號分割連接所有屬性值
                          f_new_value=sb.append(f_name+","+f_k+","+f_s+","+f_classno+","+f_xx+","+f_cd+","+f_layer+","+f_py+","+f_ldm+","+f_bhc+","+f_fzcs+","+f_szxz).toString();
                          f_ref_date=new DateHandle().getDate();
                          //*************************************還有一些字段未獲取***************
                          rrSql="";//插入t_rpt_modi表中的sql語句
                          v_flag=stmt.executeUpdate(rrSql);
                        }
                        else if("modify".equals(v_message))
                        {
                          //獲取t_bas_animal中的f_id
                          animal_f_id=Integer.parseInt((String)request.getAttribute("animal_f_id"));
                          //獲取t_rpt_modify報表操作表中的相關(guān)字段
                          String f_rpt_no,f_rpt_pid,f_emp_name,f_type,f_old_value,f_new_value,f_ref_date,f_old_bhc,f_old_fzcs,f_old_szxz;
                          float rpt_f_id=0;
                          try
                          {
                            rpt_f_id = park.jsp.common.TableNewId.getTableNewId(stmt, 1, "t_rpt_modi",
                                                                "f_pid");
                            if (rpt_f_id == 0) {
                              return "<script language=javascript>window.alert('系統(tǒng)錯誤,創(chuàng)建失敗!');window.close();</script>";
                            }
                          }
                          catch (SQLException ex) {
                            ex.printStackTrace();
                          }
                          f_emp_name=(String) session.getAttribute("f_emp_name");
                          f_type="1";
                          //以逗號分割連接所有屬性值
                          f_new_value=sb.append(animal_f_id+","+f_name+","+f_k+","+f_s+","+f_classno+","+f_xx+","+f_cd+","+f_layer+","+f_py+","+f_ldm+","+f_bhc+","+f_fzcs+","+f_szxz).toString();
                          f_ref_date=new DateHandle().getDate();
                          //獲取舊動物對應(yīng)的t_bas_animal表中對應(yīng)的所有值,并以逗號分割連接,作為f_old_value字段
                          f_old_bhc=(String) request.getAttribute("f_bhc");
                          f_old_fzcs=(String)request.getAttribute("f_fzcs");
                          f_old_szxz=(String) request.getAttribute("f_szxz");
                          f_old_value=sb.append(animal_f_id+","+f_name+","+f_k+","+f_s+","+f_classno+","+f_xx+","+f_cd+","+f_layer+","+f_py+","+f_ldm+","+f_old_bhc+","+f_old_fzcs+","+f_old_szxz).toString();
                          //*************************************還有一些字段未獲取***************
                          rrSql = ""; //插入t_rpt_modi表中的sql語句
                          v_flag = stmt.executeUpdate(rrSql);
                        }
                      }
                      else if("plant".equals(v_type))
                      {

                      }

                      v_flag=stmt.executeUpdate(rrSql);
                       conn.commit();
                       if(v_flag==1)
                       {
                           return "<script language=javascript>window.alert('保存操作成功!');window.close();</script>";
                       }
                       else
                       {
                           return
                                   "<script language=javascript>window.alert('保存操作改失敗!');window.close();</script>";
                       }
                   }
                   catch(SQLException ex)
                   {
                       try
                       {
                           conn.rollback();
                       }
                       catch(SQLException ex1)
                       {}
                        return "<script language=javascript>window.alert('系統(tǒng)錯誤,不能修改!');</script>";
                   }
                   finally
                   {
                       try
                       {
                           if(rs != null)
                           {
                               rs.close();
                               rs = null;
                           }
                       }
                       catch(Exception ignore)
                       {}
                       try
                       {
                           if(stmt != null)
                           {
                               stmt.close();
                               stmt = null;
                           }
                       }
                       catch(Exception ignore)
                       {}
                       try
                       {
                           if(conn != null)
                           {
                               conn.rollback();
                               conn.close();
                               conn = null;
                           }
                       }
                       catch(Exception ignore)
                       {}
                   }

                  }
              }

          posted on 2005-08-12 17:30 XL的個性空間和java學(xué)習(xí)之旅 閱讀(1477) 評論(0)  編輯  收藏

          只有注冊用戶登錄后才能發(fā)表評論。


          網(wǎng)站導(dǎo)航:
           
          主站蜘蛛池模板: 吴旗县| 肥东县| 安阳市| 通榆县| 蒙自县| 林口县| 金华市| 河池市| 毕节市| 玉龙| 沙洋县| 颍上县| 石渠县| 仁化县| 黑水县| 平武县| 珠海市| 祁门县| 涿鹿县| 荔波县| 象山县| 浦江县| 宁蒗| 尼木县| 芜湖市| 江华| 淄博市| 河北区| 兰考县| 维西| 二连浩特市| 扎鲁特旗| 岫岩| 来安县| 兴安县| 喜德县| 墨竹工卡县| 山东| 台安县| 阿拉善左旗| 寿光市|