1. 程式人生 > >ajax提交資料(修改、新增)到資料庫並重新整理資料

ajax提交資料(修改、新增)到資料庫並重新整理資料

<%@ page language="java" contentType="text/html; charset=UTF-8"
 pageEncoding="UTF-8"%>
<%@ include file="/WEB-INF/pages/commons/taglibs.jsp"%>
<html>
<head>
<base href="${basePath}" />
<%@ include file="/WEB-INF/pages/commons/meta.jsp"%>
<link rel="stylesheet" type="text/css" href="scripts/jqueryEasyUI/themes/default/easyui.css">
<link rel="stylesheet" type="text/css" href="scripts/jqueryEasyUI/themes/icon.css">
<link rel="stylesheet" type="text/css" href="scripts/jqueryEasyUI/themes/main.css">
<script type="text/javascript" src="scripts/jqueryEasyUI/src/jquery-1.4.2.min.js"></script>
<script type="text/javascript" src="scripts/jqueryEasyUI/src/jquery.easyui.min1.js"></script>
<script type="text/javascript" src="scripts/jqueryEasyUI/src/jquery.easyui.min.js"></script>
<script type="text/javascript" src="scripts/jqueryEasyUI/src/jquery.datagrid.js"></script>
<script type="text/javascript" src="scripts/jqueryEasyUI/src/jgxLoader.js"></script>
<title>修改客戶資訊</title>
<style >
    body{ font-family:Arial, Helvetica, sans-serif;}
    a{text-decoration: none;}
   
</style>
<style type="text/css">
<!--
a:link {
 color: #3764a0;
 text-decoration: none;
 font-weight: bold;
}

a:visited {
 text-decoration: none;
 color: #3764a0;
 font-weight: bold;
}

a:hover {
 text-decoration: none;
 color: #999;
}

a:active {
 text-decoration: none;
}
-->
</style>
<!--
<script type="text/javascript">
 //遮蔽右鍵單擊
 $(document).ready(function(){ 
     $(document).bind("contextmenu",function(e){  
           return false;  
     });
 });
</script>

 <script>

 function isuse(){
  var mark=$('#clMark').val();
  if(mark.length<6){
   document.getElementById("xs").innerHTML="<img src='scripts//jqueryEasyUI//themes//icons//no.png'//>  企業號長度必須大於6位字!";
   $('#stat').value='0';
   return;
  }
  if(mark!="${client.clMark}"){
   zhanshi(mark);
  }else{
   $('#stat').value='1';
  }
 }

 function zhanshi(mark){
  $.post("client/json/clMarkIsUse.json",{clMark:mark}, function(data) {//url中的方法路徑必須有/json/
   var count = data.count;
   if(count>0){
    document.getElementById("xs").innerHTML="<img src='scripts//jqueryEasyUI//themes//icons//no.png'//> 此號已被使用!";
    $('#stat').val('0');
   }else{
    document.getElementById("xs").innerHTML="<img src='scripts//jqueryEasyUI//themes//icons//ok.png'//>  可以使用!";
    $('#stat').val('1');
   }

  });
  
 }
 
  function xianshi(aa){
  var khn=document.getElementById(aa);
  if(khn.style.display==''){
   khn.style.display='none';
  }else{
   khn.style.display='';
  }
 }
 function changepas(){
  $.post("client/json/getclAgents.json",{agname:$("#agname").val()}, function(data) {//url中的方法路徑必須有/json/
   var a = data.list;
   var newPas=document.getElementById("sel");
   newPas.options.length=0;
   for(var i in a){
    var loption=document.createElement("OPTION");
    loption.text=a[i].agName;
    loption.value=a[i].agId;
    newPas.options.add(loption);
   }

  });
 }
 function dc(){
  var newPas=document.getElementById("sel");
  var selectop=newPas.options[newPas.selectedIndex];
  // $("#clName").val(selectop.text);
  // $("clientId").va(id[0]);
  $("#clAgent").val(selectop.text);
  $("#clAgents").val(selectop.value);
 }
 
 function edit(){
  var row =  $('#linkman').datagrid('getSelected');
      $("#lmName").val(row.lmName);
      $("#lmPhone").val(row.lmPhone);
      $("#lmQQ").val(row.lmQQ);
      $("#lmID").val(row.lmID);
      if(row.isSendCM!=null&&row.isSendCM!=''){
       $("#isSendCM").val(row.isSendCM);
        }else{
         $("#isSendCM").val('0');
        }
      if(row.isSendOBM!=null&&row.isSendOBM!=''){
       $("#isSendOBM").val(row.isSendOBM);
        }else{
         $("#isSendOBM").val('0');
        }
      $("#spo").val('edit');//判斷是那種操作,新增、修改、刪除
     $('#showAssLm').dialog({
   title:'修改聯絡人',
   closed:false,
   showType:null,   //'show'
   autoOpen:true
  });
 }

 function del(id){
  $.messager.confirm('提示', '您確定要刪除嗎?', function(r){
   if (r){
    $("#lmID").val(id);
        $("#spo").val('del');
        update();
        $('#showAssLm').dialog({
     closed:true
    });
        $("#spo").val('');
   }
  });
 }

 function cancel(){
     $('#showAssLm').dialog({
   closed:true
  });
 }
 
 function add(){
      if($("#lmName").val()==''){
    alert("請填寫客戶名稱!");
    return ;
         }if($("#lmPhone").val()==''){
           alert("請填寫客戶電話 !");
    return ;
         }
         update();
         $('#showAssLm').dialog({
    closed:true
   });
         $("#spo").val('');
 }

 function goMain(){
  $("#ff").attr('action','adRemote/editClients');
  $("#ff").submit();
 }
 
  function sub(){
   if($('#stat').val()!='1'&&$('#clMark').val()!="${client.clMark}"){
   alert("請正確填寫企業號!");
   return;
  }if($("#clProType").val()==""){
   alert("請選擇產品型別!");
   return;
  }if($("#clChannel").val()==""){
   alert("請選擇成單渠道!");
   return;
  }if($("#clTrade").val()==""){
   alert("請選擇客戶行業!");
   return;
  }if($("#cliType").val()==""){
   alert("請選擇客戶型別!");
   return;
  }if($("#clSelUsers").val()==""){
   alert("請選擇客戶經理!");
   return;
  }if($("#clSevUsers").val()==""){
   alert("請選擇客服專員!");
   return;
  }if($("#clMark").val()==""){
   alert("請填寫序列號!");
   return;
  }if($("#clName").val()==""){
   alert("請填寫客戶名稱!");
   return;
  }if($("#clAgents").val()==""){
   alert("請填寫代理商 !");
   return;
  }

  $("#clProTypeText").val($("#clProType").find("option:selected").text());
  $("#clChannelText").val($("#clChannel").find("option:selected").text());
  $("#clTradeText").val($("#clTrade").find("option:selected").text());
  $("#cliTypeText").val($("#cliType").find("option:selected").text());
  $("#clSelUsersText").val($("#clSelUsers").find("option:selected").text());
  $("#clSevUsersText").val($("#clSevUsers").find("option:selected").text());
  
  $("#ff").submit();
  alert("客戶儲存成功!");
  }
</script>
<script type="text/javascript">
  $(function(){
      //$("#clTrade").val("${client.clTrade}");//全天通道策略
      //$("#cliType").val("${client.cliType}");//工作時間
      //$("#clProType").val("${client.clProType}");//業餘時間
      //$("#clChannel").val("${client.clChannel}");//本移動
      // $("#clSelUsers").val("${client.clSelUsers}");//全國移動
      //$("#clSevUsers").val("${client.clSevUsers}");//全國聯通
    });
</script>
 -->

<script type="text/javascript">
function test11(){
 var params=$("#test1").serialize()+"&"+$("#test2").serialize()+"&"+$("#test3").serialize();

 $.ajax({
  url:"busTrack/json/addClientTest.json",
  data:params,
  type:"post",
  async:false,
  success:function(returnValue){
   var rv = eval("("+returnValue+")");//獲取返回值
   if($("#clientID").val()==''){
    $("#reloadID").val(rv.clientID);
   }else{
    $("#reloadID").val($("#clientID").val());
   }
   $("#relff").submit();
  }
  });
}
</script>
<script type="text/javascript">
 $(function(){
  $('body').layout();
 });
</script>

</head>
<body style=" padding:0; margin:0">
<div region="center" style="height:90%;width:100%;">
 <div  class="tabs-container" fit="true" border="false" title="基本資訊">
    <div title="基本資訊"  style="display:none;" fit="true">
    <form name = "test1" id = "test1" action="busTrack/addClientTest">
       <input type="hidden" name="clientID" size="65" id="clientID" value="${client.clientID}"/>
       <input type="hidden" name="stat" id="stat"/>
     <div class="subbg">
      <input type="hidden" name="clTradeText" size="65" id="clTradeText"/>
      客戶行業:<select name="clTrade" id="clTrade" style="width:100">
             <option value="0">請選擇</option>
              <c:forEach var="ps" items="${clTrade}" varStatus="i">
            <option value="${ps.id}">${ps.name}</option>  
           </c:forEach>
         </select>
      <input type="hidden" name="cliTypeText" size="65" id="cliTypeText"/>  
      客戶型別:<select name="cliType" id="cliType" style="width:100">
             <option value="0">請選擇</option>
              <c:forEach var="ps" items="${cliType}" varStatus="i">
            <option value="${ps.id}">${ps.name}</option>  
           </c:forEach>
         </select>
     </div>
     <div class="subbg">
      <input type="hidden" name="clProTypeText" size="65" id="clProTypeText"/>
      產品型別:<select name="clProType" id="clProType" style="width:100">
           <option value="0">請選擇</option>
              <c:forEach var="ps" items="${clProType}" varStatus="i">
            <option value="${ps.id}">${ps.name}</option> 
           </c:forEach>
          </select>
      <input type="hidden" name="clChannelText" size="65" id="clChannelText"/>
      客戶來源:<select name="clChannel" id="clChannel" style="width:100">
              <option value="0">請選擇</option>
              <c:forEach var="ps" items="${clChannel}" varStatus="i">
             <option value="${ps.id}">${ps.name}</option> 
           </c:forEach>
         </select>
     </div>
     <div class="subbg">
       經營品牌:<input type="text" name="clBrand" size="12"  value="${client.clBrand}"  id="clBrand" />
       所屬集團:<input type="text" name = "clGroup" id = "clGroup" size="15" value="${client.clGroup}"></input><br>
     </div>
     <div class="subbg">
        單位名稱:<input type="text" name="clName" size="45" id="clName" value="${client.clName}"/>
     </div>
     <div class="subbg">
        企業程式碼:<input type="text" name = "clMark" id = "clMark" size="12" value="${client.clMark}" onblur="isuse()"></input>
        最後聯絡時間:<input type="text" name="clLastTractime" size="13"  id="clLastTractime" value="${client.clLastTractime}"/>
     </div>
     <div class="subbg">
        業務進展:<select name="clBusprogress" id="clBusprogress" style="width:108">
              <option value="0">請選擇</option>
              <c:forEach var="ps" items="${progress}" varStatus="i">
             <option value="${ps.id}">${ps.name}</option> 
           </c:forEach>
           </select>
        資金信用等級 &nbsp;&nbsp;:<select name="clFunCreditgrade" id="clFunCreditgrade" style="width:70">
               <option value="0">請選擇</option>
               <c:forEach var="ps" items="${grade}" varStatus="i">
              <option value="${ps.id}">${ps.name}</option> 
            </c:forEach>
           </select>
        
     </div>
     <div class="subbg">
        郵政編碼:<input type="text" name="clYouBian" size="12"  id="clYouBian" value="${client.clYouBian}"/>
        規範度信用等級:<select name="clStaCreditgrade" id="clStaCreditgrade" style="width:70">
                <option value="0">請選擇</option>
                <c:forEach var="ps" items="${grade}" varStatus="i">
               <option value="${ps.id}">${ps.name}</option> 
             </c:forEach>
              </select>
     </div>
     <div class="subbg">
        公司主頁:<input type="text" name="clWWW" size="45"  id="clWWW" value="${client.clWWW}"/>
     </div>
     <div class="subbg">
        備 &nbsp;&nbsp;注:&nbsp;&nbsp;&nbsp;&nbsp;<textarea name="clRemark" style="width: 50%" id="clRemark"  rows="6">${client.clRemark}</textarea>
     </div>
     </form>
     <div align="left" style="width:50%">
        <input type="button" value="儲存" name = "tj1" onclick = "test11()"/>&nbsp;&nbsp;
        <input type="button" value="關閉" name = "btn" onclick = "cancel11()"/>
     </div>
    </div>
    <div title="開戶行資訊"  style="display:none;" fit="true">
    <form name = "test2" id = "test2" action="busTrack/addClientTest">
     <div class="subbg">
      票據擡頭:<input type="text" name="clOrderCheck"  size="45" id="clOrderCheck" value="${client.clOrderCheck}"/>
     </div>
     <div class="subbg">
      票據型別:<select name="clBillType" id="clBillType" style="width:90">
                <option value="0">請選擇</option>
                <c:forEach var="ps" items="${clBillType}" varStatus="i">
               <option value="${ps.id}">${ps.name}</option> 
             </c:forEach>
              </select>
     </div>
     <div class="subbg">
       快遞地址:<input type="text" name = "clExpAddress" id = "clExpAddress" size="45" value="${client.clExpAddress}" onblur="isuse()"></input><br>
     </div>
                 <div class="subbg">
      開戶銀行:<input type="text" name="clOpenBank" size="45" id="clOpenBank" value="${client.clOpenBank}"/>
     </div>
     <div class="subbg">
      開戶賬號:<input type="text" name="clAccNumber" size="45" id="clAccNumber" value="${client.clAccNumber}"/>  
     </div>
     <div class="subbg">
      開戶電話:<input type="text" name="clAccPhone" size="20" id="clAccPhone" value="${client.clAccPhone}"/>
     </div>
     <div class="subbg">
      開戶地址:<input type="text" name="clAccAddress" size="45" id="clAccAddress" value="${client.clAccAddress}"/>
     </div>
     </form>
     <div align="left" style="width:50%">
        <input type="button" value="儲存" name = "tj1" onclick = "test11()"/>&nbsp;&nbsp;
        <input type="button" value="關閉" name = "btn" onclick = "cancel11()"/>
     </div>
    </div>
    <div title="地址資訊"  style="display:none;" fit="true">
    <form name = "test3" id = "test3" action="busTrack/addClientTest">
     <div class="subbg">
      1、標準地址:
     </div>
     <div class="subbg">
      國家<select name="clCountry" id="clCountry" style="width:90">
                <option value="0">請選擇</option>
                <c:forEach var="ps" items="${clChannel}" varStatus="i">
               <option value="${ps.id}">${ps.name}</option> 
             </c:forEach>
              </select>
      省份<select name="clProvince" id="clProvince" style="width:90">
                <option value="0">請選擇</option>
                <c:forEach var="ps" items="${clChannel}" varStatus="i">
               <option value="${ps.id}">${ps.name}</option> 
             </c:forEach>
              </select>
      城市<select name="clCity" id="clCity" style="width:90">
                <option value="0">請選擇</option>
                <c:forEach var="ps" items="${clChannel}" varStatus="i">
               <option value="${ps.id}">${ps.name}</option> 
             </c:forEach>
              </select>
      區(縣)<select name="clArea" id="clArea" style="width:90">
                <option value="0">請選擇</option>
                <c:forEach var="ps" items="${clChannel}" varStatus="i">
               <option value="${ps.id}">${ps.name}</option> 
             </c:forEach>
              </select>
     </div>
     <div class="subbg">
      <input type="hidden" name="clStaAddress"   id="clStaAddress" />
      詳細地址:<input type="text" name="detail"  size="45" id="detail" />
     </div>
     <div class="subbg">
      <input type="hidden" name="clAddress"   id="clAddress" />
      2、描述地址:(請參照例子:中華大街與裕華路交叉口東行200米路南金立方大廈)
     </div>
     <div class="subbg">
        請填寫:<input type="text" name="clAddress"  size="80" id="clAddress" value=" 與  交叉口 行 米路 " />
     </div>
     </form>
     <div align="left" style="width:50%">
        <input type="button" value="儲存" name = "tj1" onclick = "test11()"/>&nbsp;&nbsp;
        <input type="button" value="關閉" name = "btn" onclick = "cancel11()"/>
     </div>
    </div>
    <div title="聯絡人資訊" style="display:none;" fit="true">
                 <!--  <iframe src="busTrack/toLinkManManage?clientID=${client.clientID}" id="frc1" name="frc1" height = "100%" width="100%" class="frame_inner1"frameborder="0"></iframe>
     -->
     <iframe src="busTrack/toLinkManManage?clientID='175'" id="frc1" name="frc1" height = "100%" width="100%" class="frame_inner1"frameborder="0"></iframe>
    </div>
 </div>
 <form id = "relff" name = "relff" action="busTrack/addClient" method="post">
  <input type="hidden" name = "clientID" id = "reloadID"/>
 </form>
</div>
</body>
</html>

後臺程式碼:

/**
  * 客戶新增、修改  lz 20121022
  * @param c
  * @param request
  * @return
  */
 @RequestMapping("/json/addClientTest")
 public void addClient(Client c, HttpServletRequest request,HttpServletResponse response){
  User u=(User)request.getSession().getAttribute("user");
  request.getSession().setAttribute("user", u);
  
  try{
   if(c.getClientID()!=null&&!"".equals(c.getClientID())){
    busTrackManager.updateClient(c);
   }else{
    c.setClAgents(Long.valueOf(1));
    c.setClSigEndTime(getDateTime());
    c.setClSelUsers(u.getUserId());
    System.out.println(c.getClSelUsers()+"----------"+c.getClTrade()+"---"+c.getCliType()+"-"+c.getClProType()+"-"+c.getClChannel()+"---");
    busTrackManager.savaClient(c);
    c = busTrackManager.searchClientBySigEndTime(c.getClSigEndTime());
   }
   PrintWriter out = response.getWriter();
   out.write("{clientID:"+c.getClientID()+"}");
   out.flush();
   out.close();
  }catch(Exception e){
   // TODO Auto-generated catch block
   e.printStackTrace();
   //return "{clientID:''}";
  }
  
  //return "{clientID:"+c.getClientID()+"}";
 }