zTree使用总结

一、引入css js
<link rel="stylesheet" href="js/ztree/css/ztree.css" type="text/css">
	<link rel="stylesheet" href="js/ztree/css/zTreeStyle/zTreeStyle.css" type="text/css">
    <script type="text/javascript" src="js/ztree/js/jquery.ztree.core.js"></script>
添加div
<%@ page language="java" import="java.util.*" pageEncoding="UTF-8" isELIgnored="false" session="true" %>

<%@taglib prefix="s" uri="http://www.springframework.org/tags" %>

<%
	String path = request.getContextPath();

	String basePath = request.getScheme() + "://" + request.getServerName() + ":" + request.getServerPort() + path + "/";
%>


<!DOCTYPE html>

<html>

<head>
	<base href="<%=basePath%>">
	<title><s:message code="M_6800_TOOL_MANAGEMENT_TAG"/></title>
	<%@ include file="/page/comPage/comCSS.html" %>
	<%@ include file="/page/comPage/navbar.html" %>
	<link rel="stylesheet" href="js/ztree/css/ztree.css" type="text/css">
	<link rel="stylesheet" href="js/ztree/css/zTreeStyle/zTreeStyle.css" type="text/css">
	<style>
		body {
			padding-top: 60px;
			/* 60px to make the container go all the way to the bottom of the topbar */
		}

		.keyClass {
			color: blue;
			font-weight: bold;
		}

		#toolDetailForm {
			margin-top: 30px;
		}

		#leftDiv {
			margin-top: 20px;
		}

		#tabDiv {
			margin-top: 10px;
		}

		#tabPane_toolPt {
			margin-top: 20px;
			margin-left: 15px;
		}

		input[type="text"] {
			text-transform: uppercase;
		}

		.ztree li span.button.pIcon01_ico_open {
			margin-right: 2px;
			background: url(js/ztree/css/zTreeStyle/img/diy/1_open.png) no-repeat scroll 0 0 transparent;
			vertical-align: top;
			*vertical-align: middle
		}

		.ztree li span.button.pIcon01_ico_close {
			margin-right: 2px;
			background: url(js/ztree/css/zTreeStyle/img/diy/1_close.png) no-repeat scroll 0 0 transparent;
			vertical-align: top;
			*vertical-align: middle
		}

		.ztree li span.button.pIcon02_ico_open {
			margin-right: 2px;
			background: url(js/ztree/css/zTreeStyle/img/diy/14.png) no-repeat 1px -1px;
			vertical-align: top;
			*vertical-align: middle
		}

		.ztree li span.button.pIcon02_ico_close {
			margin-right: 2px;
			background: url(js/ztree/css/zTreeStyle/img/diy/14.png) no-repeat 1px -1px;
			vertical-align: top;
			*vertical-align: middle
		}

		.ztree li span.button.icon01_ico_docu {
			margin-right: 2px;
			background: url(js/ztree/css/zTreeStyle/img/diy/14.png) no-repeat 1px -1px;
			vertical-align: top;
			*vertical-align: middle
		}

		.ztree li span.button.icon02_ico_docu {
			margin-right: 2px;
			background: url(js/ztree/css/zTreeStyle/img/diy/13.png) no-repeat scroll 0 0 transparent;
			vertical-align: top;
			*vertical-align: middle
		}

		ul.ztree {
			margin-top: 10px;
			border: none;
			background: none;
			width: 330px;
			overflow-y: auto;
			overflow-x: auto;
			left: 50%;
			position: absolute;
			margin-left: -180px;
		}

		/* Turn on a 13x13 scrollbar */
		::-webkit-scrollbar {
			width: 5px;
			height: 13px;
			-webkit-border-radius: 2.5px;
			-moz-border-radius: 2.5px;
			border-radius: 2.5px;
			transition: all 0.8s;
			opacity: 0.8;
		}

		::-webkit-scrollbar-button:vertical {
			background: none;
			border: none;
		}

		/* Turn on single button up on top, and down on bottom */
		::-webkit-scrollbar-button:start:decrement, ::-webkit-scrollbar-button:end:increment {
			display: block;
		}

		/* Turn off the down area up on top, and up area on bottom */
		::-webkit-scrollbar-button:vertical:start:increment, ::-webkit-scrollbar-button:vertical:end:decrement {
			display: none;
		}

		/* Place The scroll down button at the bottom */
		::-webkit-scrollbar-button:vertical:increment {
			background: none;
			border: none;
		}

		/* Place The scroll up button at the up */
		::-webkit-scrollbar-button:vertical:decrement {
			background: none;
			border: none;
		}

		::-webkit-scrollbar-track:vertical {
			background: none;
			border: none;
		}

		/* Top area above thumb and below up button */
		::-webkit-scrollbar-track-piece:vertical:start {
			border: none;
		}

		/* Bottom area below thumb and down button */
		::-webkit-scrollbar-track-piece:vertical:end {
			border: none;
		}

		/* Track below and above */
		::-webkit-scrollbar-track-piece {
			background: none;
		}

		/* The thumb itself */
		::-webkit-scrollbar-thumb:vertical {
			height: 50px;
			background-color: #424242;
			width: 5px;
		}

		/* Corner */
		::-webkit-scrollbar-corner:vertical {
			background: none;
		}

		/* Resizer */
		::-webkit-scrollbar-resizer:vertical {
			background: none;
		}
	</style>
</head>

<body>

<div class="container-fluid">
	<div class="col-lg-12 col-md-12 col-sm-12 btnDivCss">
		<button class="btn btn-info" id="query_btn"><s:message code="QUERY_TAG"/></button>

		<button class="btn btn-primary" id="add_btn"><s:message code="ADD_TAG"/></button>

		<button class="btn btn-warning" id="update_btn"><s:message code="UPDATE_TAG"/></button>

		<button class="btn btn-primary" id="copy_btn"><s:message code="COPY_TAG"/></button>

		<button class="btn btn-danger" id="delete_btn"><s:message code="DELETE_TAG"/></button>

		<button class="btn btn-success" id="save_btn"><s:message code="SAVE_TAG"/></button>

		<button class="btn btn-warning" id="rollback_btn"><s:message code="ROLLBACK_TAG"/></button>

		<button class="btn btn-primary" id="clear_btn"><s:message code="CLEAR_TAG"/></button>
	</div>
	<div class="col-lg-4 col-md-4 col-sm-4" id="leftDiv">
		<fieldset>
			<legend><s:message code="TOOL_LIST_TAG"/></legend>
		</fieldset>
		<%--<div id="toolListDiv" class="col-lg-8 col-md-8 col-sm-8">
            <table id="toolListGrd"></table>
            <div id="toolListPg"></div>
        </div>--%>
		<div class="content_wrap">
			<div class="zTreeDemoBackground left">
				<ul id="treeDiv" class="ztree"></ul>
			</div>
		</div>
	</div>
	<div id="tabDiv" class="col-md-8">
		<ul id="mytab" class="nav nav-tabs">
			<li class="active"><a id="tab1" href="#tabPane_toolDetail" data-toggle="tab"> <s:message
					code="TOOL_DETAIL_INFO_TAG"/>
			</a></li>
			<li><a id="tab2" href="#tabPane_toolPt" data-toggle="tab"> <s:message code="TOOL_PT_INFO"/>
			</a></li>
		</ul>
		<div class="tab-content">
			<div class="tab-pane active" id="tabPane_toolDetail">
				<form id="toolDetailForm" class="form-horizontal">
					<div class="form-group col-lg-6 col-md-6 col-sm-6">
						<label class="control-label col-sm-4 col-lg-4 col-md-4 keyCss" for="toolIDTxt">
							<s:message code="TOOL_ID_TAG"/>
						</label>
						<div class="col-sm-7 col-md-7 col-lg-7">
							<input type="text" id="toolIDTxt" class="form-control">
						</div>
					</div>

					<div class="form-group col-lg-6 col-md-6 col-sm-6">
						<label class="control-label col-sm-4 col-lg-4 col-md-4" for="rootToolIDSel">
							<s:message code="ROOT_TOOL_ID_TAG"/>
						</label>
						<div class="col-sm-7 col-md-7 col-lg-7">
							<select id="rootToolIDSel" class="form-control" style="width: 100%"></select>
						</div>
					</div>

					<div class="form-group col-lg-6 col-md-6 col-sm-6">
						<label class="control-label col-sm-4 col-lg-4 col-md-4 keyCss" for="toolDscTxt">
							<s:message code="TOOL_DSC_TAG"/>
						</label>
						<div class="col-sm-7 col-md-7 col-lg-7">
							<input type="text" id="toolDscTxt" class="form-control lowerCaseCss" style="text-transform: none"/>
						</div>
					</div>

					<div class="form-group col-lg-6 col-md-6 col-sm-6">
						<label class="control-label col-sm-4 col-lg-4 col-md-4" for="bayIDSel">
							<s:message code="BAY_ID_TAG"/>
						</label>
						<div class="col-sm-7 col-md-7 col-lg-7">
							<select id="bayIDSel" class="form-control" style="width: 100%;"></select>
						</div>
					</div>

					<div class="form-group col-lg-6 col-md-6 col-sm-6">
						<label class="control-label col-sm-4 col-lg-4 col-md-4 keyCss" for="UnitTypeSel">
							<s:message code="UNIT_TYPE_TAG"/>
						</label>
						<div class="col-sm-7 col-md-7 col-lg-7">
							<select id="UnitTypeSel" class="form-control" style="width: 100%;"></select>
						</div>
					</div>

					<div class="form-group col-lg-6 col-md-6 col-sm-6">
						<label class="control-label col-sm-4 col-lg-4 col-md-4" for="fabIdSel">
							<s:message code="FAB_ID_TAG"/>
						</label>
						<div class="col-sm-7 col-md-7 col-lg-7">
							<select id="fabIdSel" class="form-control" style="width: 100%;"></select>
						</div>
					</div>

					<div class="form-group col-lg-6 col-md-6 col-sm-6">
						<label class="control-label col-sm-4 col-lg-4 col-md-4 keyCss" for="toolCateSel">
							<s:message code="TOOL_CATE_TAG"/>
						</label>
						<div class="col-sm-7 col-md-7 col-lg-7">
							<select id="toolCateSel" class="form-control" style="width: 100%;"></select>
						</div>
					</div>

					<div class="form-group col-lg-6 col-md-6 col-sm-6">
						<label class="control-label col-sm-4 col-lg-4 col-md-4" for="floorCodeTxt">
							楼层
						</label>
						<div class="col-sm-7 col-md-7 col-lg-7">
							<input type="text" id="floorCodeTxt" class="form-control"/>
						</div>
					</div>

					<div class="form-group col-lg-6 col-md-6 col-sm-6">
						<label class="control-label col-sm-4 col-lg-4 col-md-4" for="toolRunModeSel">
							<s:message code="TOOL_RUN_MODE_TAG"/>
						</label>
						<div class="col-sm-7 col-md-7 col-lg-7">
							<select id="toolRunModeSel" class="form-control" style="width: 100%;"></select>
						</div>
					</div>

					<div class="form-group col-lg-6 col-md-6 col-sm-6"hidden>
						<label class="control-label col-sm-4 col-lg-4 col-md-4" for="toolCodeTxt">
							设备别名
						</label>
						<div class="col-sm-7 col-md-7 col-lg-7">
							<input type="text" id="toolCodeTxt" class="form-control"/>
						</div>
					</div>

					<div class="form-group col-lg-6 col-md-6 col-sm-6">
						<label class="control-label col-sm-4 col-lg-4 col-md-4" for="toolIP">
							<s:message code="TOOL_IP_TAG"/>
						</label>
						<div class="col-sm-7 col-md-7 col-lg-7">
							<input type="text" id="toolIP" class="form-control"/>
						</div>
					</div>

					<div class="form-group col-lg-6 col-md-6 col-sm-6">
						<label class="control-label col-sm-4 col-lg-4 col-md-4" for="toolTrnsCateSel">
							<s:message code="TOOL_TRNS_CATE_TAG"/>
						</label>
						<div class="col-sm-7 col-md-7 col-lg-7">
							<select id="toolTrnsCateSel" class="form-control" style="width: 100%;"></select>
						</div>
					</div>
				</form>
			</div>

			<div class="tab-pane" id="tabPane_toolPt">
				<div id="toolPtListDiv" class="row">
					<button id="toolPt_addBtn" class="btn btn-primary">
						<s:message code="ADD_TAG"/>
					</button>
					<button id="toolPt_updateBtn" class="btn btn-warning">
						<s:message code="UPDATE_TAG"/>
					</button>
					<button id="toolPt_delBtn" class="btn btn-danger">
						<s:message code="DELETE_TAG"/>
					</button>
					<button id="toolPt_copyBtn" class="btn btn-info">
						<s:message code="COPY_TAG"/>
					</button>
					<div id="toolPortListDiv" class="row col-md-12">
						<table id="toolPortListGrd"></table>
						<div id="toolPortListPg"></div>
					</div>
				</div>
			</div>
		</div>
	</div>
</div>

<!-- 添加或修改pt项目-->
<div id="ptItemDialog" class="modal fade" tabindex="-1" role="dialog" aria-labelledby="title" aria-hidden="true">
	<div class="modal-dialog">
		<div class="modal-content">
			<div class="modal-header">
				<button type="button" class="close" data-dismiss="modal" aria-hidden="true">&times;</button>
				<h4 class="modal-title" id="title">
					<s:message code="ADD_UPDATE_TAG" />
				</h4>
			</div>
			<div class="modal-body">
				<form id="dialogPtItemForm" class="row form-horizontal">
					<div class="control-group">
						<label class="control-label col-sm-4 keyCss" for="portIdTxt">
							<s:message code="TOOL_PORT_ID_TAG"></s:message>
						</label>
						<div class="col-sm-5">
							<input type="text" id="portIdTxt" class="form-control dialog-input" />
						</div>
					</div>

					<div class="control-group">
						<label class="control-label col-sm-4" for="portTypSel">
							<s:message code="TOOL_PORT_TYPE_TAG"></s:message>
						</label>
						<div class="col-sm-5">
							<select id="portTypSel" class="form-control dialog-select" style="width: 100%"></select>
						</div>
					</div>

					<div class="control-group">
						<label class="control-label col-sm-4" for="portNgSel">
							<s:message code="TOOL_PORT_NG_TAG"></s:message>
						</label>
						<div class="col-sm-5">
							<select id="portNgSel" class="form-control dialog-select" style="width: 100%;"></select>
						</div>
					</div>

					<div class="control-group">
						<label class="control-label col-sm-4" for="fromStkIdSel">
							<s:message code="SUPPLY_STOCKER_ID_TAG"></s:message>
						</label>
						<div class="col-sm-5">
							<select id="fromStkIdSel" class="form-control dialog-select" style="width: 100%;"></select>
						</div>
					</div>

					<div class="control-group">
						<label class="control-label col-sm-4" for="toStkIdSel">
							<s:message code="TO_STOCKER_ID_TAG"></s:message>
						</label>
						<div class="col-sm-5">
							<select id="toStkIdSel" class="form-control dialog-select" style="width: 100%;"></select>
						</div>
					</div>

					<div class="control-group">
						<label class="control-label col-sm-4" for="xfrNodeTxt">
							<s:message code="TRANSFER_NODE_TAG"></s:message>
						</label>
						<div class="col-sm-5">
							<select id="xfrNodeTxt" class="form-control dialog-input" style="width: 100%;"></select>
						</div>
					</div>

					<div class="control-group">
						<label class="control-label col-sm-4" for="xfrIdTxt">
							<s:message code="TRANSFER_ID_TAG"></s:message>
						</label>
						<div class="col-sm-5">
							<input type="text" id="xfrIdTxt" class="form-control dialog-input" />
						</div>
					</div>

					<div class="control-group">
						<label class="control-label col-sm-4" for="portActFlgSel">
							<s:message code="PORT_ACTIVE_FLG"></s:message>
						</label>
						<div class="col-sm-5">
							<select id="portActFlgSel" class="form-control dialog-select" style="width: 100%;"></select>
						</div>
					</div>
				</form>
			</div>
			<!--Modal body-->
			<div class="modal-footer">
				<a id="ptItemDialog_cancelBtn" class="btn" data-dismiss="modal"> <s:message code="CANCEL_TAG" />
				</a> <a id="ptItemDialog_saveBtn" class="btn btn-primary"> <s:message code="SURE_TAG" />
			</a>
			</div>
		</div>
	</div>
</div>
<!-- 查询对话框 -->
<div id="queryToolDialog" class="modal fade" tabindex="-1" role="dialog" aria-labelledby="title" aria-hidden="true">
	<div class="modal-dialog">
		<div class="modal-content">
			<div class="modal-header">
				<button type="button" class="close" data-dismiss="modal" aria-hidden="true">&times;</button>
				<h4 class="modal-title" id="title">
					<s:message code="QUERY_CONDITION_TAG" />
				</h4>
			</div>
			<!--Modal header-->
			<div class="modal-body">
				<div class="row">
					<form id="queryToolDialog_mdlDefForm" class="row form-horizontal">
						<div class="control-group ">
							<label class="control-label col-sm-3" for="queryToolDialog_toolIDTxt"> <s:message code="TOOL_ID_TAG" />
							</label>
							<div class="col-sm-4">
								<input type="text" id="queryToolDialog_toolIDTxt" class="form-control">
							</div>
							<div class="col-sm-5">
								<label id="queryToolDialog_helpLineSpn" class="help-inline control-label"> 模糊查询请使用<span style="color: red; font-weight: bold;">*</span>
								</label>
							</div>
						</div>
					</form>
				</div>
			</div>
			<!--Modal body-->
			<div class="modal-footer">
				<a id="queryToolDialog_cancelBtn" class="btn" data-dismiss="modal"> <s:message code="CANCEL_TAG" />
				</a> <a id="queryToolDialog_queryBtn" class="btn btn-primary"> <s:message code="QUERY_BTN_TAG" />
			</a>
			</div>
		</div>
	</div>
</div>
</body>
<%@ include file="/page/comPage/comJS.html" %>
<script src="lib/bootstrap/assets/js/bootstrap-tooltip.js"></script>
<script src="lib/bootstrap/assets/js/bootstrap-tab.js"></script>
<script src="js/com/SelectDom.js"></script>
<script src="js/com/TimestampUtil.js"></script>
<script type="text/javascript" src="js/ztree/js/jquery.ztree.core.js"></script>
<script type="text/javascript" src="js/nicescroll/jquery.nicescroll.min.js"></script>
<script type="text/javascript" src="js/page/6000/6800.js"></script>
</html>
js
$(document).ready(function() {
	var inObj_Query;
	var YNBean={
		Value : ['Y','N'],
		Text:{
			Y : 'Y:YES',
			N : 'N:NO'
		}
	};
	var domObj = {
		$toolIDTxt : $("#toolIDTxt"),
		$UnitTypeSel : $("#UnitTypeSel"),
		$toolDscTxt  : $("#toolDscTxt"),
		$toolTrnsCateSel : $("#toolTrnsCateSel"),
		$rootToolIDSel:$("#rootToolIDSel"),
		$toolCateSel : $("#toolCateSel"),
		$bayIDSel  : $("#bayIDSel"),
		$toolRunModeSel : $("#toolRunModeSel"),
		$fabIdSel :$("#fabIdSel"),
		$floorCodeTxt :$("#floorCodeTxt"),
		$toolIP :$("#toolIP"),
		$toolCodeTxt: $("#toolCodeTxt"),
		grids : {
			$toolListGrd : $("#toolListGrd"),
			toolListGrd : "#toolListGrd",
			$toolListDiv : $("#toolListDiv"),
			toolListPg : "#toolListPg",
			$toolPortListGrd : $("#toolPortListGrd"),
			$toolPortListDiv : $("#toolPortListDiv"),
			$toolPortListPg  : $("#toolPortListPg")
		},
		buttons : {
			$query_btn : $("#query_btn"),
			$delete_btn : $("#delete_btn"),
			$update_btn : $("#update_btn"),
			$add_btn : $("#add_btn"),
			$save_btn : $("#save_btn"),
			$clear_btn : $("#clear_btn"),
			$copy_btn : $("#copy_btn"),
			$rollback_btn : $("#rollback_btn"),
			$toolPt_addBtn : $("#toolPt_addBtn"),
			$toolPt_updateBtn : $("#toolPt_updateBtn"),
			$toolPt_delBtn : $("#toolPt_delBtn"),
            $toolPt_copyBtn : $('#toolPt_copyBtn')
		},
		dialogs : {
			$queryToolDialog : $("#queryToolDialog"),
			$queryToolDialog_queryBtn : $("#queryToolDialog_queryBtn"),
			$queryToolDialog_toolIDTxt : $("#queryToolDialog_toolIDTxt")
		}
	}
  var VAL = {
	  DISABLED_ATTR : {
		'disabled' : true
	  },
	  ENABLED_ATTR : {
		'disabled' : false
	  },
	  NORMAL : "0000000",
	  T_FBPBISTOL:"FBPBISTOL",
	  T_FBPBISSTK:"FBPBISSTK",
      T_FBPBISDAT : "FBPBISDAT"
  };
   $("form").submit(function(){
       return false;
   });
  $("#tabDiv").tab('show');
  
  var itemInfoCM = [
    {name: 'tool_id'        , index: 'tool_id'     , label: TOOL_ID_TAG     , width: 160 },
    {name: 'tool_dsc'       , index: 'tool_dsc'    , label: TOOL_DSC_TAG    , width: 230 }
  ];

  
  $("#toolListGrd").jqGrid({
      url:"",
      datatype:"local",
      mtype:"POST",
      height:400,//TODO:需要根据页面自适应,要相对很高
      width:350,
      shrinkToFit:false,
      scroll:false,
      resizable : true,
      loadonce:true,
      fixed: true,
      viewrecords : true, //显示总记录数
      pager : '#toolListPg',
      rownumbers  :true ,//显示行号
      rowNum:20,         //每页多少行,用于分页
      rownumWidth : 20,  //行号列宽度
      emptyrecords :true ,
      colModel: itemInfoCM,
      gridComplete:function(){
          var gridPager,
              pageLen;
          gridPager = $(this).jqGrid("getGridParam","pager");
          if(gridPager.length<2){
             return false;
          }
          $("#sp_1_"+gridPager.substr(1,pageLen-1) ).hide();
          $(".ui-pg-input").hide();
          $('td[dir="ltr"]').hide(); 
          $(gridPager+"_left").hide();
          $(gridPager+"_center").css({width:0});
      },
      onSelectRow:function(id){
    	  if(domObj.$toolDscTxt.attr("disabled") != "disabled"){
    		  showErrorDialog("", "目前处于编辑中,请勿进行其它操作");
    		  return false;
    	  }
        $("input").val("");
        $("input").attr({'disabled':true});
        $("select").attr({'disabled':true});
        var rowData = $(this).jqGrid("getRowData",id);
        var tool_id  = rowData.tool_id;
        var unit_typ="",root_tool_id="", tool_cate="", bay_id="", 
            tool_run_mode="", fab_id_fk="", tool_trns_cate="",tool_code="";
        var iary = {
          tool_id:tool_id
        };
        var inTrxObj ={
          trx_id : VAL.T_FBPBISTOL,
          action_flg:"I",
          iary   : [iary],
          tbl_cnt: 1
        };
        var  outTrxObj = comTrxSubSendPostJson(inTrxObj);
        if(  outTrxObj.rtn_code == VAL.NORMAL ) {
          var oary = outTrxObj.oary[0];
          $("#toolIDTxt").val(oary.tool_id);
          $("#toolDscTxt").val(oary.tool_dsc);
          domObj.$toolIP.val(oary.tool_ip);
          // $("#floorCodeTxt").val(oary.floor_code);
          domObj.$toolCodeTxt.val(oary.tool_code);
          if(oary.unit_typ!=undefined){
        	  unit_typ = oary.unit_typ;
          }
          SelectDom.setSelect(domObj.$UnitTypeSel, unit_typ);
          
          if(oary.root_tool_id!=undefined){
        	  root_tool_id = oary.root_tool_id.trim();
          }
          SelectDom.setSelect(domObj.$rootToolIDSel, root_tool_id);
          
          if(oary.tool_cate!=undefined){
        	  tool_cate = oary.tool_cate.trim();
          }
          SelectDom.setSelect(domObj.$toolCateSel, tool_cate);
          
          if(oary.bay_id!=undefined){
        	  bay_id = oary.bay_id;
          }
          SelectDom.setSelect(domObj.$bayIDSel, bay_id);
          
          if(oary.tool_run_mode!=undefined){
            tool_run_mode = oary.tool_run_mode;
          }
          SelectDom.setSelect(domObj.$toolRunModeSel, tool_run_mode);
          
          if(oary.tool_trns_cate!=undefined){
        	  tool_trns_cate = oary.tool_trns_cate;
          }
          SelectDom.setSelect(domObj.$toolTrnsCateSel, tool_trns_cate);
          
          if(oary.fab_id_fk!=undefined){
        	  fab_id_fk = oary.fab_id_fk.trim();
          }
          SelectDom.setSelect(domObj.$fabIdSel,fab_id_fk);
          
          setGridInfo(outTrxObj.oaryB, "#toolPortListGrd");
        }
      } 
  })


  var toolPortInfoCM = [
    {name: 'port_id'     , index: 'tool_port_id'    , label: "Port ID"        , width: 120 },
    {name: 'port_typ'    , index: 'tool_port_typ'  , label: "Port Type",      width: 150 },
    {name: 'port_ng_flg' , index: 'port_ng_flg'     , label: "Port NG Flag"      , width: 80 },
    {name: 'from_stk_id' , index: 'from_stk_id'     , label: "SUPPLY Stocker ID"     , width: 120 },
    {name: 'to_stk_id'   , index: 'to_stk_id'       , label: "Return Stocker ID"     , width: 120 },
    {name: 'xfr_node'    , index: 'xfr_node'        , label: "Transfer Node"         , width: 120 },
    {name: 'xfr_id'      , index: 'xfr_id'          , label: "Transfer ID"           , width: 120 },
    {name: 'port_active_flg', index: 'port_active_flg', label: "Port Active Flag"    , width: 80 },
  ];
  
  $("#toolPortListGrd").jqGrid({
      url:"",
      datatype:"local",
      mtype:"POST",
      height:$("#toolPortListDiv").height(),
      height:350,
      width:$("#toolPortListDiv").width(),
      autowidth:true,//宽度根据父元素自适应:true
      shrinkToFit:false,
      scroll:false,
      resizable : true,
      loadonce:true,
      fixed: true,
      viewrecords : true, //显示总记录数
      pager : '#toolPortListPg',
      rownumbers  :true ,//显示行号
      rowNum:23,         //每页多少行,用于分页
      rownumWidth : 40,  //行号列宽度
      emptyrecords :true ,
//      pginput  : true ,//可以输入跳转页数
//      rowList:[10,15,20], //每页多少行
      colModel: toolPortInfoCM,
      gridComplete:function(){

      }
  })
  
  //页面高度变化时,自动调整Grid大小
  var resetJqgrid = function(){
      $(window).unbind("onresize"); 
      $("#toolListGrd").setGridWidth($("#toolListDiv").width()*0.95); 
      $("#toolListGrd").setGridHeight($("#toolListDiv").height()*0.80); 
      $("#toolPortListGrd").setGridHeight($("#toolPortListPg").height()*0.80); 
      $(window).bind("onresize", this);  
  };
  function getAddRowID($grid){
	  var rowIds = $grid.jqGrid("getDataIDs");
	  return rowIds.length > 0 ? (rowIds[rowIds.length - 1]) + 1 : "1";
  }

    function diaLogQueryFnc(){
        $("#toolListGrd").jqGrid("clearGridData");
        $("#toolPortListGrd").jqGrid("clearGridData");
        $("#toolPmListGrd").jqGrid("clearGridData");
        var tool_id = $("#queryToolDialog_toolIDTxt").val();

        initFnc();
        var iary = {};

        if( tool_id != "" ){
            iary.tool_id = tool_id
        }
        inObj_Query ={
            trx_id     : VAL.T_FBPBISTOL ,
            action_flg : 'Q'        ,
            iary       : [iary]       ,
            tbl_cnt    : 1
        };
        var  outTrxObj = comTrxSubSendPostJson(inObj_Query);
        if(  outTrxObj.rtn_code == VAL.NORMAL ) {
            setGridInfo(outTrxObj.oary,"#toolListGrd");
            //ztree显示
            var setting = {
                data: {
                    key: {
                        title: "title"
                    },
                    simpleData: {
                        enable: true
                    }
                },
                callback: {
                    onClick: zTreeOnClick,
                    beforeClick : function () {
                        if (domObj.$toolDscTxt.attr("disabled") != "disabled") {
                            showErrorDialog("", "目前处于编辑中,请勿进行其它操作");
                            return false;
                        }
                    }
                    // onExpand: zTreeOnExpand
                }
            };
            var jsonTree = outTrxObj.oary;
            var zNodes = [{
                id: 1,
                pId: 0,
                title: "id=1",
                name: "设备信息列表",
                open: true,
                iconSkin: "pIcon01"
            }];
            //获取jsonTree数组中不重复的bay
            /*var bayJson = {};
             for(var i in jsonTree){
             if (!bayJson[jsonTree[i].bay_id]) {
             bayJson[jsonTree[i].bay_id] = jsonTree[i].bay_id;
             }
             }*/

            //遍历bay层
            /*for(var i in bayJson){
             var bayObj = {
             id: bayJson[i]==""?"BANK":bayJson[i],
             pId: 1,
             name: bayJson[i]==""?"BANK":bayJson[i]
             };
             zNodes.push(bayObj);
             }*/

            var bayJson = {};
            for (var i in jsonTree) {
                if (!bayJson[jsonTree[i].bay_id]) {
                    bayJson[jsonTree[i].bay_id] = jsonTree[i].bay_id;
                }
            }

            for (var j in jsonTree) {
                //遍历sub层
                if (jsonTree[j].unit_typ == "SUB" || jsonTree[j].unit_typ == "UNIT") {
                    var subunitObj = {
                        id: jsonTree[j].tool_id,
                        pId: jsonTree[j].root_tool_id,
                        title: "id=" + jsonTree[j].tool_id,
                        name: jsonTree[j].tool_id + ":" + jsonTree[j].tool_dsc
                    }
                    zNodes.push(subunitObj);
                }
            }

            for (var j in jsonTree) {
                //遍历main层
                if (jsonTree[j].unit_typ == "MAIN") {
                    var mainObj = {
                        id: jsonTree[j].tool_id,
                        pId: 1,
                        title: "id=" + jsonTree[j].tool_id,
                        name: jsonTree[j].tool_id + ":" + jsonTree[j].tool_dsc,
                    }
                    zNodes.push(mainObj);
                }
            }

            //遍历BANK层
            for (var i in bayJson) {
                if (bayJson[i] == "") {
                    var bayObj = {
                        id: "BANK",
                        pId: 1,
                        title: "id=BANK",
                        name: "BANK"
                    };
                    zNodes.push(bayObj);
                }
            }

            for (var j in jsonTree) {
                //遍历bank层
                if (jsonTree[j].unit_typ == "BANK") {
                    var bankObj = {
                        id: jsonTree[j].tool_id,
                        pId: "BANK",
                        title: "id=" + jsonTree[j].tool_id,
                        name: jsonTree[j].tool_id + ":" + jsonTree[j].tool_dsc,
                    }
                    zNodes.push(bankObj);
                }
            }


            //点击时出发此事件进行查询
            function zTreeOnClick(event, treeId, treeNode) {
                // alert(treeNode.tId + ", " + treeNode.name);
                // alert(treeNode.name);
                if (domObj.$toolDscTxt.attr("disabled") != "disabled") {
                    showErrorDialog("", "目前处于编辑中,请勿进行其它操作");
                    return false;
                }
                $("input").val("");
                $("input").attr({'disabled': true});
                $("select").attr({'disabled': true});
                treeNodeId = treeNode.id;
                treeNodeTid = treeNode.tId;
                if (treeNodeId == "BANK" || treeNodeId == "1") {
                    showErrorDialog("", "请选择子节点");

                    $("#toolIDTxt").val("");
                    $("#toolDscTxt").val("");
                    domObj.$toolIP.val("");
                    $("#floorCodeTxt").val("");
                    domObj.$toolCodeTxt.val("");
                    SelectDom.setSelect(domObj.$UnitTypeSel, "");
                    SelectDom.setSelect(domObj.$rootToolIDSel, "");
                    SelectDom.setSelect(domObj.$toolCateSel, "");
                    SelectDom.setSelect(domObj.$bayIDSel, "");
                    SelectDom.setSelect(domObj.$toolRunModeSel, "");
                    SelectDom.setSelect(domObj.$toolTrnsCateSel, "");
                    SelectDom.setSelect(domObj.$fabIdSel, "");

                    setGridInfo("", "#toolPortListGrd");

                    return false;
                } else {
                    var unit_typ = "", root_tool_id = "", tool_cate = "", bay_id = "",
                        tool_run_mode = "", fab_id_fk = "", tool_trns_cate = "", tool_code = "";
                    var iary = {
                        tool_id: treeNode.id
                    };
                    var inTrxObj = {
                        trx_id: VAL.T_FBPBISTOL,
                        action_flg: "I",
                        iary: [iary],
                        tbl_cnt: 1
                    };
                    var outTrxObj = comTrxSubSendPostJson(inTrxObj);
                    console.log(outTrxObj);
                    if (outTrxObj.rtn_code == VAL.NORMAL) {
                        var oary = outTrxObj.oary[0];
                        $("#toolIDTxt").val(oary.tool_id);
                        $("#toolDscTxt").val(oary.tool_dsc);
                        domObj.$toolIP.val(oary.tool_ip);
                        $("#floorCodeTxt").val(oary.floor_code);
                        domObj.$toolCodeTxt.val(oary.tool_code);
                        if (oary.unit_typ != undefined) {
                            unit_typ = oary.unit_typ;
                        }
                        SelectDom.setSelect(domObj.$UnitTypeSel, unit_typ);

                        if (oary.root_tool_id != undefined) {
                            root_tool_id = oary.root_tool_id.trim();
                        }
                        SelectDom.setSelect(domObj.$rootToolIDSel, root_tool_id);

                        if (oary.tool_cate != undefined) {
                            tool_cate = oary.tool_cate.trim();
                        }
                        SelectDom.setSelect(domObj.$toolCateSel, tool_cate);

                        if (oary.bay_id != undefined) {
                            bay_id = oary.bay_id;
                        }
                        SelectDom.setSelect(domObj.$bayIDSel, bay_id);

                        if (oary.tool_run_mode != undefined) {
                            tool_run_mode = oary.tool_run_mode;
                        }
                        SelectDom.setSelect(domObj.$toolRunModeSel, tool_run_mode);

                        if (oary.tool_trns_cate != undefined) {
                            tool_trns_cate = oary.tool_trns_cate;
                        }
                        SelectDom.setSelect(domObj.$toolTrnsCateSel, tool_trns_cate);

                        if (oary.fab_id_fk != undefined) {
                            fab_id_fk = oary.fab_id_fk;
                        }
                        SelectDom.setSelect(domObj.$fabIdSel, fab_id_fk);

                        setGridInfo(outTrxObj.oaryB, "#toolPortListGrd");
                    }
                }
            }

            $('#queryToolDialog').modal("hide");
            $(document).ready(function () {
                $.fn.zTree.init($("#treeDiv"), setting, zNodes);
            });
            /*function zTreeOnExpand(){
             // alert(1);
             // getScrollStyle();
             if($("#treeDiv_1").height> $("#treeDiv").height){
             $("ul.ztree").height(($(window).height() - $("#tabDiv").offset().top) * 0.99 - 81);
             }
             }*/

        }
    }

    function query_func(){
        if (domObj.$toolDscTxt.attr("disabled") != "disabled") {
            showErrorDialog("", "目前处于编辑中,请勿进行其它操作");
            return false;
        }
    function queryToolDialogShowFnc(){
        
    }
    $('#queryToolDialog').modal({
        backdrop : 'static',
        keyboard:false,
        show:false
    });
    $('#queryToolDialog').unbind('shown.bs.modal');
    $("#queryToolDialog_queryBtn").unbind('click');
    $("#queryToolDialog_toolIDTxt").unbind('keyup');

    $('#queryToolDialog').bind('shown.bs.modal',queryToolDialogShowFnc);
    $('#queryToolDialog').modal("show");
    $("#queryToolDialog_queryBtn").bind('click',diaLogQueryFnc);
    $("#queryToolDialog_toolIDTxt").bind('keyup',function(event){
      if(event.keyCode==13){
        diaLogQueryFnc();
      }
    })
    // $("#queryMdlDefDialog_mdlIDTxt")attr({'disabled':true});
    $("#queryToolDialog_toolIDTxt").attr({'disabled':false});
    $("#queryToolDialog_toolIDTxt").val("");
    $("#queryToolDialog_toolIDTxt").focus();
  }

  +
  //显示输入提醒
  $('[rel=tooltip]').tooltip({
    placement:"bottom",
    trigger:"focus",
    animation:true

  });

    domObj.$UnitTypeSel.change(function() {
        getMainTool();
    });
  function getMainTool(){
    var toolg_id = $("#rootToolIDSel").val();
      var type =domObj.$UnitTypeSel.val();
      var unitTyp="";
      if(type=='UNIT'){
          unitTyp="SUB"
      }else if (type=='SUB'){
          unitTyp="MAIN"
      }
    var iary={
      unit_typ:unitTyp
    };
    var inTrxObj = {
          trx_id     : VAL.T_FBPBISTOL ,
          action_flg : 'Q' ,
          iary       : [iary]       ,
          tbl_cnt    : 1
    }
    var outTrxObj = comTrxSubSendPostJson(inTrxObj);
    if(outTrxObj.rtn_code == VAL.NORMAL) {
      var tbl_cnt= comParseInt(outTrxObj.tbl_cnt);
      var oary = outTrxObj.oary;
      $("#rootToolIDSel").empty();
      $("#rootToolIDSel").append("<option value="+ ""  +">"+ ""+"</option>")
      for(var i=0;i<tbl_cnt;i++){
          $("#rootToolIDSel").append("<option value="+ oary[i].tool_id  +">"+ oary[i].tool_id+"</option>")
      }
      $("#rootToolIDSel").val(toolg_id).trigger("change");
    }
  }
  function add_func(){
	  if(domObj.$toolDscTxt.attr("disabled") != "disabled"){
		  showErrorDialog("", "目前处于编辑中,请勿进行其它操作");
		  return false;
	  }
      var treeObj = $.fn.zTree.getZTreeObj("treeDiv");
      /**
       * 获取父节点
       */
      parentNode = treeObj.getNodesByParam('id', 1);
      // var node = treeObj.getNodeByParam("id", treeNodeId);
      // var sObj = $("#" + treeNodeTid + "_span");
      // if(!node.isParent){
      //     node.iconSkin= "pIcon04";
      // }
      // else{
      //     node.iconSkin= "pIcon04";
      // }
      var new_code = {id:100, pId:1, name:"New Tool",iconSkin:"icon01"};
      treeObj.addNodes(parentNode[0], new_code);
      /**
       * 设定被选中
       */
      var selNode = treeObj.getNodesByParam('id', new_code.id);
      treeObj.selectNode(selNode[0],false);
      // treeObj.moveNode(new_code,parentNode, "prev");

    $("input").attr({'disabled':false});
    $("select").attr({'disabled':false});
    SelectDom.setSelect($("select"),"","");
    $("input").val("");
//    $("select").empty();
    domObj.$floorCodeTxt.attr({'disabled':true});
    button_enabled();
	hidSelValFnc();
    domObj.$toolIDTxt.focus();
    $("#toolPortListGrd").jqGrid("clearGridData");
    $("#save_btn").data("save_flg","A");
  }

  function update_func(){
      if(domObj.$toolDscTxt.attr("disabled") != "disabled"){
          showErrorDialog("", "目前处于编辑中,请勿进行其它操作");
          return false;
      }
      var treeObj = $.fn.zTree.getZTreeObj("treeDiv");
      var nodes = treeObj.getSelectedNodes();
      if (nodes.length<=0) {
          showErrorDialog("", "请选择需要修改的设备信息");
          return false;
      }
      var node = treeObj.getNodeByParam("id", treeNodeId);

      $("input").attr({'disabled': false});
      $("#toolIDTxt").attr({'disabled': true});
      $("select").attr({'disabled': false});
      domObj.$floorCodeTxt.attr({'disabled': true});
      // domObj.$toolRunModeSel.attr({'disabled': true});

      if(!node.isParent){
          node.iconSkin= "icon01";
      }
      else{
          node.iconSkin= "pIcon02";
      }
      treeObj.updateNode(node);
      console.log(node);

      button_enabled();
      $("#save_btn").data("save_flg", "U");
  }

  function hidSelValFnc(){
	  $("#toolCateSel option[value ='STOC']").remove();
	}

  domObj.$fabIdSel.change(function(){
      var floor_code = "";
	  // domObj.$floorCodeTxt.val(domObj.$fabIdSel.find("option:selected").text());
      var inObj,outObj;
      var fabId = domObj.$fabIdSel.val();
      inObj={
          trx_id : VAL.T_FBPBISDAT,
          action_flg : "Q",
          iary:[{
              data_cate : "FBID",
              data_ext : fabId
          }]
      }
      outObj = comTrxSubSendPostJson(inObj);
      if(outObj.rtn_code == VAL.NORMAL){
          if(outObj.oary.length>0){
              floor_code = outObj.oary[0].data_item;
              domObj.$floorCodeTxt.val(floor_code)
              //domObj.$fabIdSel.val(floor_code);
          }
      }
  })

  function delete_func(){
      var treeObj = $.fn.zTree.getZTreeObj("treeDiv");
      if (domObj.$toolDscTxt.attr("disabled") != "disabled") {
          showErrorDialog("", "目前处于编辑中,请勿进行其它操作");
          return false;
      }
      // var rowid = domObj.grids.$toolListGrd.jqGrid('getGridParam', 'selrow');
      var nodes = treeObj.getSelectedNodes();
      // var rowid = treeNodeId;
      var treeNodeId = nodes[0].id;
      if (nodes.length == 0) {
          showErrorDialog("", "请选择需要复制的设备信息!");
          return false;
      }
	if(domObj.$toolDscTxt.attr("disabled") != "disabled"){
	   showErrorDialog("", "目前处于编辑中,请勿进行其它操作");
	   return false;
    }
    var tool_id = treeNodeId;
    if( tool_id == ""|| tool_id == undefined ){
       showErrorDialog("003","请选择需要删除的设备");
       return false;
    }
    domObj.buttons.$delete_btn.showCallBackWarnningDialog({
      errMsg  : "是否删除设备,请确认!!!!",
      callbackFn : function(data) {
        if(data.result==true){
          var iary = {
            tool_id:tool_id
          };
          var inTrxObj = {
            trx_id     : VAL.T_FBPBISTOL ,
            action_flg : 'D' ,
            iary       : [iary]       ,
            tbl_cnt    : 1
          }
          var outTrxObj = comTrxSubSendPostJson(inTrxObj);
          if(outTrxObj.rtn_code == VAL.NORMAL) {
        	  SelectDom.setSelect($("select"), "", "");
              $("input").val("");
              //$("select").val("");

              showSuccessDialog("删除设备成功");


              var treeObj = $.fn.zTree.getZTreeObj("treeDiv");
              var node = treeObj.getNodeByParam("id", treeNodeId);
              var sObj = $("#" + treeNodeTid + "_span");
              if(!node.isParent){
                  node.iconSkin= "pIcon04";
              }
              else{
                  node.iconSkin= "pIcon04";
              }
              var tempNode = treeObj.getNodeByParam("id", treeNodeId);
              treeObj.removeNode(tempNode, false);
              treeObj.updateNode(tempNode);

            $("#toolPortListGrd").jqGrid("clearGridData");
            $("#toolPmListGrd").jqGrid("clearGridData");
          }
        }
      }
    })

  }
  function rollback_func(){
      var treeObj = $.fn.zTree.getZTreeObj("treeDiv");
      var nodes = treeObj.getSelectedNodes();
      var node = treeObj.getNodeByParam("id", treeNodeId);
      if(!node.isParent){
          node.iconSkin= "";
      }
      else{
          node.iconSkin= "";
      }
      treeObj.updateNode(node);
      if (domObj.$toolDscTxt.attr("disabled") == "disabled") {
          showErrorDialog("", "没有编辑,无需撤回");
          return false;
      }
      $("#toolDetailForm input").attr(VAL.DISABLED_ATTR);
      $("#toolDetailForm select").attr(VAL.DISABLED_ATTR);
      var outObj="";
      if(inObj_Query!=undefined){
          outObj = comTrxSubSendPostJson(inObj_Query);
          if (outObj.rtn_code === VAL.NORMAL) {
              setGridInfo(outObj.oary, "#toolListGrd");
//			  $("input").val("");
//			  $("select").empty();
              initFnc();
          }
      }
      if($("#save_btn").data("save_flg") == "A"){
          var treeObj = $.fn.zTree.getZTreeObj("treeDiv");
          var nodes = treeObj.getSelectedNodes();
          treeObj.removeNode(nodes[0], false);
      }
      button_disabled();
  }
  function clear_func(){
      if (domObj.$toolDscTxt.attr("disabled") != "disabled") {
          showErrorDialog("", "目前处于编辑中,请勿进行其它操作");
          return false;
      }
     $("input").val("");
//    $("select").empty();
     SelectDom.setSelect($("select"), "", "");
     $("#toolListGrd").jqGrid("clearGridData");
     $("#toolPortListGrd").jqGrid("clearGridData");
  }

  function copy_func(){
      var treeObj = $.fn.zTree.getZTreeObj("treeDiv");
      if (domObj.$toolDscTxt.attr("disabled") != "disabled") {
          showErrorDialog("", "目前处于编辑中,请勿进行其它操作");
          return false;
      }
      // var rowid = domObj.grids.$toolListGrd.jqGrid('getGridParam', 'selrow');
      var nodes = treeObj.getSelectedNodes();
      // var rowid = treeNodeId;
      var treeNodeId = nodes[0].id;
      if (nodes.length == 0) {
          showErrorDialog("", "请选择需要复制的设备信息!");
          return false;
      }
      $("input").attr({'disabled': false});
      $("select").attr({'disabled': false});
      domObj.$floorCodeTxt.attr({'disabled': true});
      domObj.$toolIDTxt.focus();
      hidSelValFnc();
      // setStocker_func();
      button_enabled();
      //新增节点

      var node = treeObj.getNodeByParam("id", treeNodeId);
      var sObj = $("#" + treeNodeTid + "_span");
      if(!node.isParent){
          node.iconSkin= "pIcon04";
      }
      else{
          node.iconSkin= "pIcon04";
      }
      var new_node = {id:100, pId:treeNodeTid, name:"New Tool",iconSkin:"icon01"};
      treeObj.addNodes(node, new_node);
      /**
       * 设定被选中
       */
      var selNode = treeObj.getNodesByParam('id', new_node.id);
      treeObj.selectNode(selNode[0],false);
      // treeObj.updateNode(node);

      if(domObj.$UnitTypeSel.val()=="MAIN"){
          SelectDom.setSelect(domObj.$rootToolIDSel,"","");
      }
      $("#save_btn").data("save_flg", "A");
  }
  function save_func(){
      var treeObj = $.fn.zTree.getZTreeObj("treeDiv");
      var nodes = treeObj.getSelectedNodes();
      var node = treeObj.getNodeByParam("id", nodes[0].id);
      if(!node.isParent){
          node.iconSkin= "";
      }
      else{
          node.iconSkin= "";
      }
      treeObj.updateNode(node);

      var action_flg = $("#save_btn").data("save_flg");

      if (action_flg == undefined) {
          return false;
      }

      var iary = {
          tool_id: $("#toolIDTxt").val().trim(),
          tool_dsc: $("#toolDscTxt").val().trim(),
          unit_typ: $("#UnitTypeSel").find("option:selected").val(),
          root_tool_id: $("#rootToolIDSel").find("option:selected").text(),
          tool_cate: $("#toolCateSel").find("option:selected").val(),
          bay_id: $("#bayIDSel").find("option:selected").text(),
          floor_code: $("#floorCodeTxt").val(),
          tool_trns_cate: $("#toolTrnsCateSel").find("option:selected").text(),
          tool_ip: domObj.$toolIP.val(),
          fab_id_fk: domObj.$fabIdSel.find("option:selected").text(),
          tool_code: domObj.$toolCodeTxt.val(),
      };
      if (!$("#toolIDTxt").val().trim()) {
          showErrorDialog("", "请输入设备代码!");
          return false;
      }
      if (!$("#toolDscTxt").val().trim()) {
          showErrorDialog("", "请输入设备描述!");
          return false;
      }
      if (!$("#UnitTypeSel").find("option:selected").val()) {
          showErrorDialog("", "请选择设备类型!");
          return false;
      }
      if (!$("#toolCateSel").find("option:selected").val()) {
          showErrorDialog("", "请选择设备属性!");
          return false;
      }
      if ($("#toolRunModeSel").find("option:selected").val()) {
          iary.tool_run_mode = $("#toolRunModeSel").find("option:selected").val();
      }
      if ($("#UnitTypeSel").find("option:selected").val().trim() != "BANK") {
          if (!$("#toolTrnsCateSel").find("option:selected").text()) {
              showErrorDialog("", "请选择设备变更代码!");
              return false;
          }
          // if (!$("#bayIDSel").find("option:selected").text()) {
          //     showErrorDialog("", "请选择区域代码!");
          //     return false;
          // }
//    	if(!domObj.$toolCodeTxt.val().trim()){
//        	showErrorDialog("", "请输入设备别名!");
//    		  return false;
//        }
      }
      if($("#UnitTypeSel").find("option:selected").val().trim() == "MAIN"){
          iary.root_tool_id = $("#toolIDTxt").val().trim();
      }
      if($("#UnitTypeSel").find("option:selected").val().trim() == "SUB" ||
          $("#UnitTypeSel").find("option:selected").val().trim() == "UNIT"){
          if(!$("#rootToolIDSel").find("option:selected").text()){
              showErrorDialog("", "请选择上级区域代码!");
              return false;
          }
      }
      var iaryB = new Array();
      var rowIds = $("#toolPortListGrd").jqGrid('getDataIDs');
      for(var i =0;i<rowIds.length;i++){
          var portData = $("#toolPortListGrd").jqGrid('getRowData', rowIds[i]);
          var port_info={
              port_id : portData.port_id,
              port_typ: portData.port_typ,
              port_ng_flg : portData.port_ng_flg,
              from_stk_id : portData.from_stk_id,
              to_stk_id   : portData.to_stk_id,
              xfr_node    : portData.xfr_node,
              xfr_id      : portData.xfr_id,
              port_active_flg : portData.port_active_flg
          }
          iaryB.push(port_info);
      }
      var inTrxObj = {
          trx_id     : VAL.T_FBPBISTOL ,
          action_flg : action_flg ,
          iary       : [iary]     ,
          iaryB      : iaryB,
          evt_user   : $("#userId").text(),
          tbl_cnt    : 1
      };
      var outTrxObj = comTrxSubSendPostJson(inTrxObj);
      if(outTrxObj.rtn_code == VAL.NORMAL) {
          $("input").attr({'disabled':true});
          $("select").attr({'disabled':true});
          if(action_flg=="A"){
              showSuccessDialog("新增设备信息成功");
              var newRowID = getGridNewRowID("#toolListGrd");
              $("#toolListGrd").jqGrid('addRowData',newRowID,iary);
              $("#toolListGrd").setSelection(newRowID, true);
              //set ztree
              var treeObj = $.fn.zTree.getZTreeObj("treeDiv");
              var nodes = treeObj.getSelectedNodes();
              var node = treeObj.getNodeByParam("id", nodes[0].id);
              var sObj = $("#" + nodes[0].id + "_span");
              if(!node.isParent){
                  node.iconSkin= "pIcon04";
              }
              else{
                  node.iconSkin= "pIcon04";
              }
              var newNode = treeObj.getNodeByParam("id", iary.root_tool_id);
              if(!newNode.isParent){
                  newNode.iconSkin= "icon02";
              }
              else{
                  newNode.iconSkin= "pIcon04";
              }
              var tempNode = treeObj.getNodeByParam("id", 100);
              treeObj.removeNode(tempNode, false);
              treeObj.addNodes(newNode, {id:iary.tool_id, pId:treeNodeTid, name:(iary.tool_id + ":" +iary.tool_dsc).toUpperCase(),iconSkin:"icon02"});
              treeObj.updateNode(newNode);

          }else if(action_flg=="U"){
              showSuccessDialog("设备信息更新成功");
          }
          button_disabled();
      }
  };

  function setStocker_func(){
	  var inObj, outObj;
	  inObj={
	     trx_id : VAL.T_FBPBISSTK,
	     action_flg : "Q",
	     iary:[]
	  }
	  outObj = comTrxSubSendPostJson(inObj);
	  if(outObj.rtn_code == VAL.NORMAL){
		  SelectDom.addSelectArr($("#fromStkIdSel"), outObj.oary,"stocker_id", "stocker_id","",true);
		  SelectDom.addSelectArr($("#toStkIdSel"), outObj.oary,"stocker_id", "stocker_id","",true);
		  SelectDom.addSelectArr($("#bayIDSel"), outObj.oary,"stocker_id", "stocker_id","",true);
	  }
  }
  function showPortDialog(action,id,data){
    $('#ptItemDialog').modal({
        backdrop : 'static',
        keyboard:false,
        show:false
    });
    $(".dialog-input").val("");
    // $(".dialog-select").empty();
    $(".dialog-input").attr({'disabled':false});
    $(".dialog-select").attr({'disabled':false});
    SelectDom.SelectBean($("#portNgSel"),YNBean.Value,YNBean.Text,true);
    comAddValueByDataCateFnc("#portTypSel","PTTY","data_ext","data_desc",true);
    comAddValueByDataCateFnc("#xfrNodeTxt","RTDM","data_ext","data_desc",true);
    SelectDom.SelectBean($("#portActFlgSel"),YNBean.Value,YNBean.Text,true);
      SelectDom.setSelect($("#fromStkIdSel"),"","");
      SelectDom.setSelect($("#toStkIdSel"),"","");
    // setStocker_func();
    if(action=="U"){
    	$("#portIdTxt").attr({'disabled':true});
    	$("#portIdTxt").val(data.port_id);
    	SelectDom.setSelect($("#portTypSel"),data.port_typ);
    	SelectDom.setSelect($("#portNgSel"),data.port_ng_flg);
    	SelectDom.setSelect($("#portActFlgSel"),data.port_active_flg);
    	SelectDom.setSelect($("#fromStkIdSel"),data.from_stk_id);
    	SelectDom.setSelect($("#toStkIdSel"),data.to_stk_id);
    	SelectDom.setSelect($("#xfrNodeTxt"),data.xfr_node);
    	$("#xfrIdTxt").val(data.xfr_id);
    }else if (action==="C"){
        $("#portIdTxt").attr({'disabled':false});
        $("#portIdTxt").val(data.port_id);
        SelectDom.setSelect($("#portTypSel"),data.port_typ);
        SelectDom.setSelect($("#portNgSel"),data.port_ng_flg);
        SelectDom.setSelect($("#portActFlgSel"),data.port_active_flg);
        SelectDom.setSelect($("#fromStkIdSel"),data.from_stk_id);
        SelectDom.setSelect($("#toStkIdSel"),data.to_stk_id);
        SelectDom.setSelect($("#xfrNodeTxt"),data.xfr_node);
        $("#xfrIdTxt").val(data.xfr_id);
    }

    $('#ptItemDialog').unbind('shown.bs.modal');
    $("#ptItemDialog_saveBtn").unbind('click');

    $('#ptItemDialog').modal("show");
    $("#ptItemDialog_saveBtn").bind('click',dialogSaveFunc);
  }
  function dialogSaveFunc(){
	  var actionFlg = $("#portIdTxt").attr("disabled") === "disabled" ? "U" : "A";
	  var rowIds = domObj.grids.$toolPortListGrd.jqGrid('getDataIDs');
	  var rowData_save={
			port_id : $("#portIdTxt").val().trim(),
			port_typ: $("#portTypSel").find("option:selected").val(),
			port_ng_flg : $("#portNgSel").val(),
			from_stk_id : $("#fromStkIdSel").val(),
			to_stk_id   : $("#toStkIdSel").val(),
			xfr_node    : $("#xfrNodeTxt").val(),
			xfr_id      : $("#xfrIdTxt").val(),
			port_active_flg : $("#portActFlgSel").val()
	  }
	  $('#ptItemDialog').modal("hide");
	  if(actionFlg=="A"){
		  if(rowIds.length>0){
			  for(var i=0;i<rowIds.length;i++){
				  var rowData = domObj.grids.$toolPortListGrd.jqGrid("getRowData",rowIds[i]);
				  if(rowData.port_id.trim() == $("#portIdTxt").val().trim()){
					  showErrorDialog("", "端口代码已存在,请勿重复添加!");
						return false;
				  }
			  }
		  }
		  var newRowId = getAddRowID(domObj.grids.$toolPortListGrd);
		  domObj.grids.$toolPortListGrd.jqGrid("addRowData", newRowId,rowData_save);
	  }else{
		  var rowid = domObj.grids.$toolPortListGrd.jqGrid('getGridParam','selrow');
		  domObj.grids.$toolPortListGrd.jqGrid('setRowData', rowid, rowData_save) ;
	  }
  }
  function delPtItemFnc(){
		var selectRowID = $("#toolPortListGrd").jqGrid("getGridParam","selrow");
		var rowData = $("#toolPortListGrd").jqGrid("getRowData",selectRowID)

		if(selectRowID==null){
			  showErrorDialog("003","请选择要删除的端口信息!");
		       return false;
		}
		domObj.buttons.$toolPt_delBtn.showCallBackWarnningDialog({
			errMsg : "是否删除端口信息,请确认!!!!",
			callbackFn : function(data) {
				if (data.result == true) {
					$("#toolPortListGrd").jqGrid('delRowData', selectRowID);
				}
			}
		})
  }
  function initFnc(){
     $("input").attr(VAL.DISABLED_ATTR);
	 $("select").attr(VAL.DISABLED_ATTR);
	 $("input").val("");
	 $("select").empty();
	 button_disabled();
	 setStocker_func();
	 comAddValueByDataCateFnc("#UnitTypeSel","EQTP","data_ext","data_desc",true);
	 comAddValueByDataCateFnc("#toolCateSel","EQCT","data_ext","data_desc",true);
	 hidSelValFnc();
	 comAddValueByDataCateFnc("#toolTrnsCateSel","TTCT","data_ext","data_ext",true);
	 comAddValueByDataCateFnc("#fabIdSel","FBID","data_ext","data_ext",true);
	 comAddValueByDataCateFnc("#toolRunModeSel","TRMD","data_ext","data_ext",true);
     getMainTool();
  }
  function button_disabled(){
	 domObj.buttons.$rollback_btn.fadeTo("fast",0.25);
	 domObj.buttons.$toolPt_addBtn.fadeTo("fast",0.25);
	 domObj.buttons.$toolPt_updateBtn.fadeTo("fast",0.25);
	 domObj.buttons.$toolPt_delBtn.fadeTo("fast",0.25);
     domObj.buttons.$toolPt_copyBtn.fadeTo("fast",0.25);
	 domObj.buttons.$rollback_btn.attr(VAL.DISABLED_ATTR);
	 domObj.buttons.$toolPt_addBtn.attr(VAL.DISABLED_ATTR);
	 domObj.buttons.$toolPt_updateBtn.attr(VAL.DISABLED_ATTR);
	 domObj.buttons.$toolPt_delBtn.attr(VAL.DISABLED_ATTR);
	 domObj.buttons.$toolPt_copyBtn.attr(VAL.DISABLED_ATTR);
  }
  function button_enabled(){
	 domObj.buttons.$rollback_btn.fadeTo("fast",1.00);
	 domObj.buttons.$rollback_btn.attr(VAL.ENABLED_ATTR);
	 domObj.buttons.$toolPt_addBtn.fadeTo("fast",1.00);
	 domObj.buttons.$toolPt_addBtn.attr(VAL.ENABLED_ATTR);
	 domObj.buttons.$toolPt_updateBtn.fadeTo("fast",1.00);
	 domObj.buttons.$toolPt_updateBtn.attr(VAL.ENABLED_ATTR);
	 domObj.buttons.$toolPt_delBtn.fadeTo("fast",1.00);
	 domObj.buttons.$toolPt_delBtn.attr(VAL.ENABLED_ATTR);
     domObj.buttons.$toolPt_copyBtn.fadeTo("fast",1.00);
     domObj.buttons.$toolPt_copyBtn.attr(VAL.ENABLED_ATTR);
  }
  domObj.buttons.$update_btn.click(update_func);
  domObj.buttons.$add_btn.click(add_func);
  domObj.buttons.$delete_btn.click(delete_func);
  domObj.buttons.$clear_btn.click(clear_func);
  domObj.buttons.$query_btn.click(query_func);
  domObj.buttons.$save_btn.click(save_func);
  domObj.buttons.$rollback_btn.click(rollback_func);
  domObj.buttons.$copy_btn.click(copy_func);

  domObj.buttons.$toolPt_addBtn.click(function(){
	  showPortDialog("A");
  });
  domObj.buttons.$toolPt_updateBtn.click(function(){
	  var rowid = domObj.grids.$toolPortListGrd.jqGrid('getGridParam','selrow');
	  if(rowid==null){
		  showErrorDialog("", "请选择需要更改的端口信息!");
		  return false;
	  }

	  var rowData = domObj.grids.$toolPortListGrd.jqGrid("getRowData",rowid);
	  showPortDialog("U",rowid,rowData);
  });
  domObj.buttons.$toolPt_delBtn.click(function(){
	  delPtItemFnc();
  });
  domObj.buttons.$toolPt_copyBtn.click(function(){
      var rowid = domObj.grids.$toolPortListGrd.jqGrid('getGridParam','selrow');
      if(rowid==null){
          showErrorDialog("", "请选择需要复制的端口信息!");
          return false;
      }

      var rowData = domObj.grids.$toolPortListGrd.jqGrid("getRowData",rowid);
      showPortDialog("C",rowid,rowData);
  });


    /**
     * All controls's jquery object/text
     * @type {Object}
     */
    var domObjs = {
        W                   : $(window)       ,
        grids : {
            $leftDiv         : $("#leftDiv"),
            $tabDiv : $("#tabDiv"),
            $toolListDiv : $("#toolListDiv"),
            $toolListGrd : $("#toolListGrd")
        }
    };


    //jqGrid表格自适应
    function resizeFnc(){
        var grdDivHeight,grdDivWidth,offsetBottom1, grdDivWidth1;
        grdDivWidth = domObjs.W.width() - 120 - domObjs.grids.$tabDiv.width();
        grdDivHeight = domObjs.W.height() - domObjs.grids.$leftDiv.offset().top;

        domObjs.grids.$leftDiv.height(grdDivHeight);
        domObjs.grids.$toolListDiv.width(grdDivWidth);
        domObjs.grids.$toolListDiv.height(grdDivHeight*0.99 - 51);
        domObjs.grids.$toolListGrd.setGridWidth(grdDivWidth*0.99);
        domObjs.grids.$toolListGrd.setGridHeight(grdDivHeight*0.95 - 51 - 35);

        grdDivWidth1 = domObjs.W.width() - 60 - domObjs.grids.$leftDiv.width();
        offsetBottom1 = $(window).height() - $("#tabDiv").offset().top;

        $("#toolPtListDiv").width(grdDivWidth1);
        $("#toolPtListDiv").height(offsetBottom1*0.99 - 80);
        $("#toolPortListGrd").setGridWidth(grdDivWidth1*0.97);
        $("#toolPortListGrd").setGridHeight(offsetBottom1*0.95-51 - 80);
        $("#treeDiv").height(offsetBottom1*0.99 - 80);
    };

    resizeFnc();
    domObjs.W.resize(function() {
        resizeFnc();
    });
    $("#treeDiv").hover(
        function () {
            $(this).css({"overflow-y": "auto", "overflow-x": "auto"});
        },
        function () {
            $(this).css({"overflow-y": "auto", "overflow-x": "auto"});
        }
    );

    //初始化查询data
    diaLogQueryFnc();
    initFnc();
    // function getScrollStyle(){
    //     //重写滚动条样式
    //     $("#treeDiv").niceScroll({
    //         cursorcolor: "#424242", // 改变滚动条颜色,使用16进制颜色值
    //         /*cursoropacitymin: 0, // 当滚动条是隐藏状态时改变透明度, 值范围 1 到 0
    //         cursoropacitymax: 1, // 当滚动条是显示状态时改变透明度, 值范围 1 到 0
    //         cursorwidth: "5px", // 滚动条的宽度,单位:便素
    //         cursorborder: "1px solid #fff", // CSS方式定义滚动条边框
    //         cursorborderradius: "5px", // 滚动条圆角(像素)
    //         zindex: "auto", // 改变滚动条的DIV的z-index值
    //         scrollspeed: 60, // 滚动速度
    //         mousescrollstep: 40, // 鼠标滚轮的滚动速度 (像素)
    //         touchbehavior: false, // 激活拖拽滚动
    //         hwacceleration: true, // 激活硬件加速
    //         boxzoom: false, // 激活放大box的内容
    //         dblclickzoom: true, // (仅当 boxzoom=true时有效)双击box时放大
    //         gesturezoom: true, // (仅 boxzoom=true 和触屏设备时有效) 激活变焦当out/in(两个手指外张或收缩)
    //         grabcursorenabled: true, // (仅当 touchbehavior=true) 显示“抓住”图标display "grab" icon
    //         autohidemode: true, // 隐藏滚动条的方式
    //         scroll:true, // 仅在滚动时显示
    //         background: "", // 轨道的背景颜色
    //         iframeautoresize: true, // 在加载事件时自动重置iframe大小
    //         cursorminheight: 32, // 设置滚动条的最小高度 (像素)
    //         preservenativescrolling: true, // 你可以用鼠标滚动可滚动区域的滚动条和增加鼠标滚轮事件
    //         railoffset: false, // 可以使用top/left来修正位置
    //         bouncescroll: false, // (only hw accell) 启用滚动跳跃的内容移动
    //         spacebarenabled: true, // 当按下空格时使页面向下滚动
    //         railpadding: { top: 0, right: 0, left: 0, bottom: 0 }, // 设置轨道的内间距
    //         disableoutline: true, // 当选中一个使用nicescroll的div时,chrome浏览器中禁用outline
    //         horizrailenabled: true, // nicescroll可以管理水平滚动
    //         enabletranslate3d: true, // nicescroll 可以使用CSS变型来滚动内容
    //         enablemousewheel: true, // nicescroll可以管理鼠标滚轮事件
    //         enablekeyboard: true, // nicescroll可以管理键盘事件
    //         smoothscroll: true, // ease动画滚动
    //         sensitiverail: true, // 单击轨道产生滚动
    //         enablemouselockapi: true, // 可以用鼠标锁定API标题 (类似对象拖动)
    //         cursorfixedheight: false, // 修正光标的高度(像素)
    //         hidecursordelay: 400, // 设置滚动条淡出的延迟时间(毫秒)
    //         directionlockdeadzone: 6, // 设定死区,为激活方向锁定(像素)
    //         nativeparentscrolling: true, // 检测内容底部便于让父级滚动
    //         enablescrollonselection: true, // 当选择文本时激活内容自动滚动
    //         cursordragspeed: 0.3, // 设置拖拽的速度
    //         rtlmode: "auto", // DIV的水平滚动从左边开始
    //         cursordragontouch: false, // 使用触屏模式来实现拖拽
    //         oneaxismousemode: "auto", // 当只有水平滚动时可以用鼠标滚轮来滚动,如果设为false则不支持水平滚动,如果设为auto支持双轴滚动
    //         scriptpath: "", // 为boxmode图片自定义路径 ("" => same script path)
    //         preventmultitouchscrolling: true // 防止多触点事件引发滚动*/
    //     })
    // }
    //
    // getScrollStyle();
})

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值