crabatool 1.0.13 → 1.0.18

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (53) hide show
  1. package/.vscode/launch.json +17 -0
  2. package/{test/config.js → 8/craba.js} +41 -29
  3. package/8/package.json +17 -0
  4. package/8/readme.md +20 -0
  5. package/8/www/_Sys/UI/Grid/GridConfig.gspx +27 -0
  6. package/8/www/_Sys/UI/Grid/GridConfig.js +652 -0
  7. package/8/www/_Sys/UI/IFrame.gspx +7 -0
  8. package/8/www/_Sys/UI/IFrame.js +57 -0
  9. package/8/www/_Sys/UI/PanelConfig.gspx +55 -0
  10. package/8/www/_Sys/UI/PanelConfig.js +268 -0
  11. package/8/www/_Sys/UI/Print/ClientSelector.gspx +39 -0
  12. package/8/www/_Sys/UI/Print/ClientSelector.js +152 -0
  13. package/8/www/js/agency.js +2 -0
  14. package/8/www/js/craba.min.js +12 -0
  15. package/8/www/js/crabaEx.min.js +7 -0
  16. package/8/www/js/crabaNgp.js +1 -0
  17. package/8/www/js/echarts-all.js +1 -0
  18. package/8/www/js/math.min.js +10 -0
  19. package/8/www/skins/craba.min.css +174 -0
  20. package/8/www/skins/font/iconfont.eot +0 -0
  21. package/8/www/skins/font/iconfont.svg +1281 -0
  22. package/8/www/skins/font/iconfont.ttf +0 -0
  23. package/8/www/skins/font/iconfont.woff +0 -0
  24. package/8/www/skins/ui/icons/backTop.gif +0 -0
  25. package/8/www/skins/ui/icons/blank.gif +0 -0
  26. package/8/www/skins/ui/icons/browsers.jpg +0 -0
  27. package/8/www/skins/ui/icons/grid.png +0 -0
  28. package/8/www/skins/ui/icons/nodata.png +0 -0
  29. package/8/www/skins/ui/print/new.png +0 -0
  30. package/8/www/skins/ui/print/old.png +0 -0
  31. package/8/www/skins/ui/print/settings.gif +0 -0
  32. package/8/www/skins/ui/tree/first.gif +0 -0
  33. package/8/www/skins/ui/tree/firstNo.gif +0 -0
  34. package/8/www/skins/ui/tree/last.gif +0 -0
  35. package/8/www/skins/ui/tree/line.gif +0 -0
  36. package/8/www/skins/ui/tree/node.gif +0 -0
  37. package/8/www/skins/ui/tree/node0.gif +0 -0
  38. package/8/www/skins/ui/tree/none.gif +0 -0
  39. package/index.js +71 -28
  40. package/lib/config.js +19 -2
  41. package/lib/server.js +12 -10
  42. package/lib/utils.js +99 -21
  43. package/package.json +5 -3
  44. package/test/ngp.js +38 -3
  45. package/test/readme.md +10 -10
  46. package/test/test.js +38 -0
  47. package/tool/checkjs.js +93 -0
  48. package/{client → tool}/client.js +2 -2
  49. package/{merge → tool}/merge.js +11 -11
  50. package/{lib → tool}/ngptool.js +26 -26
  51. package/tool/progressbar.js +10 -6
  52. package/{lib → tool}/sockettool.js +9 -10
  53. package/tool/upgrade.js +121 -39
@@ -0,0 +1,7 @@
1
+ 
2
+ _Z_42=function(){throw Error.notImplemented()},_Z_42.prototype={normal:0,subtotl:1},_Z_42.registerEnum("_Z_42"),_Z_41=function(){throw Error.notImplemented()},_Z_41.prototype={normal:0,hover:1,selected:2,none:3},_Z_41.registerEnum("_Z_41"),_Z_250=function(){throw Error.notImplemented()},_Z_250.prototype={normal:0,notBind:1,asyncBind:2},_Z_250.registerEnum("_Z_250"),_Z_278=function(t){_Z_278.initializeBase(this),this._filter=t},_Z_278.prototype={get_filter:function(){return this._filter}},_Z_278.registerClass("_Z_278",_Z_152),_Z_269=function(t,e,i){this._grid=t,this._toBottom=e,this._direction=i},_Z_269.prototype={get_toBottom:function(){return this._toBottom},get_direction:function(){return this._direction},get_visibleColumns:function(){return this._grid.get_visibleColumns()}},_Z_269.registerClass("_Z_269",Sys.EventArgs),_Z_182=function(t,e,i,n,o,s){_Z_182.initializeBase(this),this._isHover=t,this._clientX=e,this._clientY=i,this._column=n,this._event=o,this._rowIndex=s},_Z_182.prototype={get_isHover:function(){return this._isHover},get_rowIndex:function(){return this._rowIndex},get_clientX:function(){return this._clientX},get_clientY:function(){return this._clientY},get_column:function(){return this._column},get_event:function(){return this._event}},_Z_182.registerClass("_Z_182",Sys.EventArgs),_Z_183=function(t,e){_Z_183.initializeBase(this),this._rowNo=t,this._rowFlag="",this._rowData=e,this._hasSetRowNo=!1},_Z_183.prototype={get_rowNo:function(){return this._rowNo},set_rowNo:function(t){this._rowNo=t,this._hasSetRowNo=!0},get_rowData:function(){return this._rowData}},_Z_183.registerClass("_Z_183",Sys.EventArgs),_Z_30=function(t,e,i,n){_Z_30.initializeBase(this),this._rowIndex=t,this._value=e,this._oldValue=i,this._valueChanged=!1,this._focusColumn=null,this._column=n},_Z_30.prototype={get_column:function(){return this._column},get_rowIndex:function(){return this._rowIndex},get_focusColumn:function(){return this._focusColumn},set_focusColumn:function(t){this._focusColumn=t},get_oldValue:function(){return this._oldValue},get_value:function(){return this._value},set_value:function(t){this._value=t,this._valueChanged=!0},get_valueChanged:function(){return this._valueChanged}},_Z_30.registerClass("_Z_30",_Z_152),_Z_184=function(t,e){_Z_184.initializeBase(this),this._width=t,this._height=e,this._caption=null},_Z_184.prototype={set_size:function(t,e){this._width=t,this._height=e},get_size:function(){return{width:this._width,height:this._height}},get_caption:function(){return this._caption},set_caption:function(t){this._caption=t}},_Z_184.registerClass("_Z_184",_Z_152),_Z_185=function(t,e,i){_Z_185.initializeBase(this,[t,e,i]),this._cancel=!1,this._pageUrl="",this._pageParams=null},_Z_185.prototype={set_cancel:function(t){return this._cancel=t},get_cancel:function(){return this._cancel},set_pageUrl:function(t){return this._pageUrl=t},get_pageUrl:function(){return this._pageUrl},set_pageParams:function(t){return this._pageParams=t},get_pageParams:function(){return this._pageParams},set_callBack:function(t){this._callBack=t},get_callBack:function(){return this._callBack}},_Z_185.registerClass("_Z_185",_Z_30),_Z_186=function(t,e,i){_Z_186.initializeBase(this),this._rowIndex=t,this._columnIndex=e,this._column=i},_Z_186.prototype={get_rowIndex:function(){return this._rowIndex},get_columnIndex:function(){return this._columnIndex},get_column:function(){return this._column}},_Z_186.registerClass("_Z_186",_Z_152),_Z_151=function(t,e){_Z_151.initializeBase(this),this._rowIndex=t,this._type=e},_Z_151.prototype={get_rowIndex:function(){return this._rowIndex},get_rowState:function(){return this._type},set_fontColor:function(t){this._fontColor=t},set_bgColor:function(t){this._bgColor=t},set_style:function(t){this._style=t},set_cssClass:function(t){this._cssClass=t}},_Z_151.registerClass("_Z_151",Sys.EventArgs),_Z_187=function(t,e,i,n){_Z_187.initializeBase(this,[t,n]),this._isSelected=e,this._rowNo=i,this._rowFlag="",this._rowNoSetted=!1},_Z_187.prototype={get_isSelected:function(){return this._isSelected},get_rowNo:function(){return this._rowNo},set_rowNo:function(t){this._rowNo=t,this._rowNoSetted=!0}},_Z_187.registerClass("_Z_187",_Z_151),_Z_188=function(t,e,i,n,o){_Z_188.initializeBase(this,[t,o]),this._columnIndex=e,this._column=i,this._cell=n},_Z_188.prototype={get_columnIndex:function(){return this._columnIndex},get_column:function(){return this._column},get_cell:function(){return this._cell}},_Z_188.registerClass("_Z_188",_Z_151),_Z_189=function(t){_Z_189.initializeBase(this),this._control=null,this._item=t},_Z_189.prototype={set_control:function(t){this._control=t},get_control:function(){return this._control},get_item:function(){return this._item},set_properties:function(t){this._properties=t},get_properties:function(){return this._properties}},_Z_189.registerClass("_Z_189",_Z_152),_Z_190=function(t,e){_Z_190.initializeBase(this),this._data=t,this._rowIndex=e},_Z_190.prototype={get_data:function(){return this._data},set_data:function(t){this._data=t},get_rowIndex:function(){return this._rowIndex},set_cancel:function(t){this._cancel=t}},_Z_190.registerClass("_Z_190",Sys.EventArgs),_Z_191=function(t,e,i,n,o){_Z_191.initializeBase(this),this._rowIndex=t,this._value=e,this._text=i,this._isPrint=n,this._isEditor=o},_Z_191.prototype={get_rowIndex:function(){return this._rowIndex},get_value:function(){return this._value},get_text:function(){return this._text},set_text:function(t){this._text=t},set_hint:function(t){this._hint=t},get_cssClass:function(){return this._cssClass},set_cssClass:function(t){this._cssClass=t},get_isPrint:function(){return this._isPrint},get_isEditor:function(){return this._isEditor}},_Z_191.registerClass("_Z_191",Sys.EventArgs),_Z_192=function(t,e,i){_Z_192.initializeBase(this),this._rowIndex=t,this._column=e,this.event=i},_Z_192.prototype={get_rowIndex:function(){return this._rowIndex},get_event:function(){return this.event},get_column:function(){return this._column}},_Z_192.registerClass("_Z_192",Sys.EventArgs),_Z_193=function(t){_Z_193.initializeBase(this),this._rowIndex=t},_Z_193.prototype={get_rowIndex:function(){return this._rowIndex}},_Z_193.registerClass("_Z_193",_Z_152),_Z_194=function(t,e,i){_Z_194.initializeBase(this),this._loadedItems=t,this._appendItemIndex=e,this._decimalField=i},_Z_194.prototype={modifyOrAppendItems:function(t,e){if(t){if(!e)throw Error.argumentNull("keyField");for(var i=this._loadedItems,n=i.length,o=function(t){for(var o=0;o<n;o++){var s=i[o];if(s){var r=s.data;if(r&&r[e]==t[e])return s}}return null},s=function(t,e){if(t&&e)for(var i in t)e[i]=t[i]},r=this._appendItemIndex,a=0,l=t.length;a<l;a++){var h=t[a];if(u=o(h))u.__isLoadedItem||(s(h,u.data),u.__isLoadedItem=!0);else{var d={};d.data=h,d.__isLoadedItem=!0,i[r]=d,r++}}var _=this._decimalField;if(_)for(var a=0,l=i.length;a<l;a++){var u=i[a];if(u){var c=u.data;c&&!u.__isLoadedItem&&(c[_]=null,u.__isLoadedItem=!0)}}}}},_Z_194.registerClass("_Z_194",Sys.EventArgs),_Z_195=function(t){_Z_195.initializeBase(this),this._column=t},_Z_195.prototype={get_column:function(){return this._column}},_Z_195.registerClass("_Z_195",_Z_152),_Z_150=function(t){_Z_150.initializeBase(this),this._column=t},_Z_150.prototype={get_column:function(){return this._column}},_Z_150.registerClass("_Z_150",_Z_152),_Z_149=function(t,e,i,n,o){_Z_149.initializeBase(this),this._rowIndex=t,this._buttonIndex=e,this._buttonValue=i,this._buttonText=n,this._event=o},_Z_149.prototype={get_rowIndex:function(){return this._rowIndex},get_buttonIndex:function(){return this._buttonIndex},get_buttonValue:function(){return this._buttonValue},get_buttonText:function(){return this._buttonText},get_event:function(){return this._event}},_Z_149.registerClass("_Z_149",Sys.EventArgs),_Z_148=function(t,e){_Z_148.initializeBase(this),this._column=t,this._oldCaptionElement=e,this._newCaptionElement=null},_Z_148.prototype={get_column:function(){return this._column},get_oldCaptionElement:function(){return this._oldCaptionElement},set_newCaptionElement:function(t){this._newCaptionElement=t},get_newCaptionElement:function(){return this._newCaptionElement}},_Z_148.registerClass("_Z_148",Sys.EventArgs),_Z_252=function(t,e){this._column=t,this._footer=e},_Z_252.prototype={get_column:function(){return this._column},set_footer:function(t){this._footer=t},get_footer:function(){return this._footer}},_Z_252.registerClass("_Z_252",Sys.EventArgs),Sys.UI.Controls.Grid=function(t){Sys.UI.Controls.Grid.initializeBase(this,[t]),this._visible=!0,this._readOnly=!0,this._reportRowNo=!0,this._changeDoFilter=$settings.GridChangeDoFilter,this._defaultRowCount=10,this._maxRowCount=-1,this._lazyPageSize=0,this._lazyIndex=0,this._pageSize=10,this._columnsParams=[],this._mergeRowColumns=[],this._showHeader=!0,this._maxHeaderLevel=1,this._showRowNo=!0,this._showLines=!0,this._checkEnabled=!0,this._allowMouseWheel=!0,this._defaultFrozenColumnCount=0,this._allowDelRow=$settings.GridDefaultAllowDelRow,this._tabOnNext=$settings.GridDefaultOnTabNext,this._autoPagerPageSize=$settings.GridDefaultAutoPagerPageSize,this._allowPopup=$settings.GridDefaultAllowPopup,this._allowConfig=$settings.GridDefaultAllowConfig,this._allowFrozen=$settings.GridDefaultAllowFrozen,this._allowCopy=$settings.GridDefaultAllowCopy,this._allowFilter=$settings.GridDefaultAllowFilter,this._allowResize=$settings.GridDefaultAllowResize,this._showRowIndicator=$settings.GridDefaultShowRowIndicator,this._useCustomScrollBar=$settings.UseCustomScrollBar,this._dropDownNumericButton=$settings.GridPagerDropDownNumericButton,this._scrollUsePageSize=$settings.GridDefaultScrollUsePageSize,this._lazyPageSize=$settings.GridLazyPageSize,this._rowNoColumnCaption=$settings.GridRowNoColumnCaption,this._saveConfig=!0,this._showScrollBar=!0,this._useEvenRowColor=!0,this._useHoverRowColor=!0,this._allColumnWidth=0,this._selectionDelayTimer=0,this._minHeight=100,this._maxHeight=0,this._autoMaxRowCount=0,this._rowNoColumnWidth=$gridExt.getRowNoColumnWidth(),this._mouseHoverTime=50,this._wordWrap=!1,this._scrollBarWidth=$settings.GridDefaultScrollBarWidth,this._strongFocus=!0,this._rowNoMaxWidth=$settings.GridDefaultRowNoMaxWidth,this._configID=0,this._enabled=!0,this.defaultShowEditor=$settings.GridDefaultShowEditor,this._showPrintSummaryText=!0,this._changedRowDatas=[],this._newRowDatas=[],this._deleteRowDatas=[],this._state=_Z_42.normal,this._subtotalRowFlag="__subtotal",this._primaryKey="",this._pagerPageSizeItems=$settings.GridPagerPageSizeItems,this._keyCode=null,this._sortNullColumn=$settings.GridRowNoColumnCaption},Sys.UI.Controls.Grid.prototype={initialize:function(){Sys.UI.Controls.Grid.callBaseMethod(this,"initialize"),this.get_form()._hasFlexBlock=!0,this.get_form()._hasGrid=!0,$craba._initEnabledlay(this),this._createFilterBar()},dispose:function(t){if(this._clearScrollTimer(),Sys.Browser.isFirefox&&this._gridScrollToStart(),$gridExt.closePopup(),delete this._columnsParams,delete this._designColumnsDisplayOrder,delete this._changedRowDatas,delete this._newRowDatas,delete this._deleteRowDatas,this._scrollBar&&this._scrollBar.dispose(),this._filterBar&&this._filterBar.dispose(),this._colGroup=null,this._header&&($clearHandlers(this._header),this._header=null,this._configCell&&($clearHandlers(this._configCell),this._configCell=null)),this._body&&($clearHandlers(this._body),this._body=null),this._footer&&($clearHandlers(this._footer),this._footer=null),this._documentKeyDownHandler&&($common.removeKeyDownHandler(document,this._documentKeyDownHandler),this._documentKeyDownHandler=null),this._processDragEvent(!1),this._disposeFrozen(!1),this._clearExpandRow(),this._focusedColumn=null,this._rowDeleteColumn=null,this._activeColumn=null,this._loadedItems&&(delete this._loadedItems,this._loadedItems=null,this._multiSelectColumn=null),this._columns){for(var e=0,i=this._columns.length;e<i;e++){var n=this._columns[e];n&&n.dispose()}delete this._columns}if(this._dataController&&(this._dataController.dispose(),this._dataController=null),this._clearMouseHoverTimer(),this._followPager=null,this._summaryItems=null,this._rowsEnabled&&delete this._rowsEnabled,this._preloadItems&&delete this._preloadItems,this._dataSource&&delete this._dataSource,this._cacheData&&delete this._cacheData,this._configDataChanged){var o=this.findForm();if(o){var s=!o.get_isAsync();try{this._internalSaveConfig(s)}catch(a){}}}if(delete this._configData,t){$removeNode(this.get_element().parentNode);var r=this.findPager();r&&this.findForm().removeControl(r,!0)}Sys.UI.Controls.Grid.callBaseMethod(this,"dispose")},_disposeFrozen:function(t){this._frozenColGroup=null,this._frozenHeaderBar&&($clearHandlers(this._frozenHeaderTable),this._frozenConfigCell&&($clearHandlers(this._frozenConfigCell),this._frozenConfigCell=null),t&&($removeNode(this._frozenHeaderBar),this._frozenHeaderBar=null)),this._frozenBody&&(this._frozenRowsTable=null,this._frozenRows=null,t&&($removeNode(this._frozenBody),this._frozenBody=null)),this._frozenFooterBar&&($clearHandlers(this._frozenFooter),this._frozenFooter=null,t&&($removeNode(this._frozenFooterBar),this._frozenFooterBar=null))},batchSet:function(t,e,i){"string"==typeof t&&(t=t.split(",")),Array.forEach(t,function(t){var n=this.findColumn(t);if(n){var o=n[e];"function"==typeof o&&o.apply(n,[i])}},this)},doFormInit:function(){if(this.get_visible()&&!this._body){var t=this.get_element(),e=$common.getChildrenByTagName(t,"div"),i=0,n=this.get_showScrollBar();if(this.get_showHeader()){var o=this._headerBar=e[i];i++;var s=this._header=$common.getFirstChildByTagName(o,"table");this._maxHeaderLevel>1&&(this._colGroup=$common.getFirstChildByTagName(s,"colgroup")),this._headerHeight=s.offsetHeight,$common.addResizeHandler(s,this._headerResize,this),this.get_allowConfig()&&$common.addContextMenuHandler(s,this._headerContextMenu,this);h=this._headerRow=$common.getTableFirstRow(s);if(n){d=this._headerSpacer=$common.getLastChildByTagName(h,"td");$dom.addCssClass(d,"CellSpacer")}this.get_showRowNo()&&(this._noTd=$common.getFirstChildByTagName(h,"td"),this.get_allowResize()&&$common.addMouseOverHandler(this._noTd,this._rowNoOver,this))}var r=this._body=e[i];if(r.tabIndex=0,i++,this.get_showFooter()){var a=this._footerBar=e[i],l=this._footer=$common.getFirstChildByTagName(a,"table");$common.addMouseOverHandler(l,this._footerMouseOver,this);var h=this._footerRow=$common.getTableFirstRow(l),d=this._footerSpacer=$common.getLastChildByTagName(h,"td");this.get_showRowNo()&&(this._footerNo=$common.getFirstChildByTagName(h,"td")),$dom.addCssClass(d,"CellSpacer")}var _=this._getFirstColumnExpandCount(),u=this.isFrozenGrid();u&&_<1&&(this._createFrozenHeader(),this._createFrozenFooter());var c=this._rowsTable=$common.createTable(0);c.className="GridTable";var g=this._allColumnWidth;c.style.width=n?_px(g>0?g:this._getAllColumnWidth()):"100%",this._createColumns(),this.resetColumnStretch(null,!0),this._initColumnSort();var f=this._rows=$common.createTBody();_>0&&(this._initColumnExpands(),u&&(this._createFrozenHeader(),this._createFrozenFooter(),this._resetColumnsElements())),c.appendChild(f),r.appendChild(c),u&&this._createFrozenBody(),this.get_afterCreateRows()||this._initDataRows(),0==_&&this._initColumnExpands(),this._refreshRowNoColumnCaption(),this._initGridShowMax(),this._refreshFrozenHeaderHeight(!0),this._initFilterBar(),this._bindGridBar(),this._initOverlaySize(),this._initGridEvents(),this._initAutoPageSize(),this._init=!0}},doFormLoaded:function(){if(this._init){if(this.get_dataBindType()==_Z_250.asyncBind){var t=this.findPager();t&&t.refresh()}this.get_afterCreateRows()&&this._initDataRows(),this._initPagerData(),this.isFrozenGrid()&&(this.initFrozenStyle(),this._initFrozenFilterBar())}},_initAutoPageSize:function(t){var e=this.findPager();if(e&&this._body&&this._autoPagerPageSize&&!(this.hasConfigPageSize()||this._body.clientHeight<=10)){var i=this.get_pageSize(),n=parseInt(this._body.clientHeight/this.getRowHeight());t&&e.updatePageSize(n),i!=n&&this.set_pageSize(n||1)}},get_sortNullColumn:function(){return this._sortNullColumn},set_sortNullColumn:function(t){this._sortNullColumn=t},get_changeDoFilter:function(){return this._changeDoFilter},set_changeDoFilter:function(t){this._changeDoFilter=t},_rowNoOver:function(t){0!=this.get_rowNoMaxWidth()&&$gridExt.bindColumnResizer(this.get_noColumn())},get_noColumn:function(){if(!this.get_showRowNo())return null;if(0==this.get_rowNoMaxWidth())return null;var t=this._noColumn;return t||(t=this._noColumn=new _Z_106(this)),t},get_rowNoMaxWidth:function(){return this._rowNoMaxWidth&&"string"==typeof this._rowNoMaxWidth&&(this._rowNoMaxWidth=parseInt(this._rowNoMaxWidth)),this._rowNoMaxWidth?this._rowNoMaxWidth:0},set_rowNoMaxWidth:function(t){this._rowNoMaxWidth=t},get_pagerPageSizeItems:function(){return this._pagerPageSizeItems},set_pagerPageSizeItems:function(t){this._pagerPageSizeItems=t},get_afterCreateRows:function(){return this._afterCreateRows||this._dataSource&&this._dataSource.length>500},set_afterCreateRows:function(t){this._afterCreateRows=t},get_dataBindType:function(){return this._dataBindType},set_dataBindType:function(t){this._dataBindType=t},_initPagerData:function(){var t=this.findPager();t&&(t.get_hasSummary()&&this._dataSource&&t.refreshSummary(),t.savePageItemCount())},get_needSummary:function(){return this._needSummary},set_needSummary:function(t){this._needSummary=t},_bindGridBar:function(){if(this._body&&this._useCustomScrollBar){var t=this.get_element();$dom.addCssClass(t.parentNode,"UserScrollBar");var e=this._scrollBar=Sys.ScrollBar.create(this._body,t,{onClick:$createDelegate(this,this._clickBar)});this._frozenBody&&$common.addTouchStartHandler(this._frozenBody,e._onTouchstart,e),e._allowMouseWheel=this._allowMouseWheel,e._mouseWheelScroll=!1,this._refreshFrozenBodyHeight(),this.refreshScrollBar()}},_clickBar:function(t){this.endEdit()},doFormResized:function(){this.resetColumnStretch(),this.isFrozenGrid()&&this.initFrozenStyle(),this.refreshScrollBar()},hasStretch:function(){return this._stretchColumns&&this._stretchColumns.length>0},resetColumnStretch:function(t,e){if(this.hasStretch()&&!(this._element.offsetWidth<5)){1==this._getMultiRows()&&$dom.addCssClass(this._element,"Stretch");for(var i=this._stretchColumns.length,n=[],o=0;o<i;o++){if((d=this._stretchColumns[o]).get_visible()){this._getColumnConfigWidth(d)>0||n.push(d)}}if(!((i=n.length)<1)){var s=this._useCustomScrollBar?0:this.get_scrollBarWidth(),r=this._element.clientWidth-this._getAllColumnWidth(!0)-s,a=Math.roundTo(r/i,2),l=parseInt(a),h=(a-l)*i;a=Math.max(l,90);for(o=0;o<i;o++){var d=n[o],_=Math.max(a,d.get_minWidth()),u=d.get_width();h>0&&(_++,h--),this._internalSetStretchColumnWidth(d,_,u,!1,t,e)}}}},_addStretchColumns:function(t){var e=this._stretchColumns;e||(e=this._stretchColumns=[]),e.push(t)},_removeStretchStyle:function(){this.hasStretch()&&this._element&&$craba.asyncFun(this,function(){$dom.removeCssClass(this._element,"Stretch")},10,"removeStretch")},_createFrozenBody:function(){if(!this._frozenRowsTable){var t=this._frozenRowsTable=$common.createTable(0),e=this._frozenRows=$common.createTBody();t.appendChild(e);var i=this._frozenBody;i||(i=this._frozenBody=$common.createClassDiv("GridBody Frozen"),this.get_element().insertBefore(i,$common.getNextSibling(this._body))),i.appendChild(t)}},_createFrozenHeader:function(){if(this._header){var t=this._frozenHeaderBar;t||(t=this._frozenHeaderBar=$common.createClassDiv("GridHeaderBar Frozen"),this.get_element().insertBefore(t,$common.getNextSibling(this._headerBar))),this._frozenHeaderTable&&($clearHandlers(this._frozenHeaderTable),$removeNode(this._frozenHeaderTable));var e=this._frozenHeaderTable=this._header.cloneNode(!0);if(e.style.height=_px(this._header.offsetHeight),this._bindRowNoEvent(e,!0),this._createFrozenColumn(),$common.addResizeHandler(e,this._headerResize,this),this.get_allowConfig()&&$common.addContextMenuHandler(e,this._headerContextMenu,this),t.appendChild(e),this.get_showRowNo()&&this.get_allowResize()){var i=$common.getTableFirstRow(e),n=this._frozenNoTd=i.firstChild;$common.addMouseOverHandler(n,this._rowNoOver,this)}}},_createFrozenFooter:function(){if(this._footer){var t=this._frozenFooterBar;t||(t=this._frozenFooterBar=$common.createClassDiv("GridFooterBar Frozen"),this.get_element().insertBefore(t,$common.getNextSibling(this._footerBar)));var e=$common.getFirstChildByTagName(t,"table");e&&$removeNode(e);for(var i=this._frozenFooter=this._footer.cloneNode(!0),n=this._frozenFooterRow=$common.getTableFirstRow(i),o=$common.getChildrenByTagName(n,"td"),s=this._getFrozenColumnRealCount(),r=o.length-1;r>s;r--)$removeNode(o[r]);this._frozenFooterNo=o[0],$common.addMouseOverHandler(i,this._footerMouseOver,this),t.appendChild(i)}},_bindRowNoEvent:function(t,e){if(this.get_allowConfig()){var i=$common.getFirstChildByClassName(t,"RowNoConfigIcon",!0);i&&(e?this._frozenConfigCell=i:this._configCell=i,i.title="列配置",$common.addClickHandler(i,this.config,this))}},get_configCell:function(){return this._frozenConfigCell?this._frozenConfigCell:this._configCell},_getMultiRows:function(){var t=$common.getTableBody(this._header),e=[];return t&&(e=$common.getChildrenByTagName(t,"tr")),e.length},_createFrozenColumn:function(){var t=0,e=[],i=this.get_frozenColumnCount(),n=[],o=$common.getTableBody(this._frozenHeaderTable),s=this.get_showRowNo(),r=[];o&&(r=$common.getChildrenByTagName(o,"tr"));for(v=0;v<r.length;v++){var a=r[v],l=$common.getChildrenByTagName(a,"td");if(0==v){$removeNode(l.pop()),s&&l.shift();for(var h=0,d=0;d<l.length;d++){p=l[d];if(d>=i)$removeNode(p);else{"none"==p.style.display&&n.push(d);var _=p.colSpan,u=p.rowSpan;_>1?h+=_:u<this._maxHeaderLevel&&h++}}e.push(h)}else{for(var h=e.pop(),c=0,g=0,d=0;d<l.length;d++){var _=(p=l[d]).colSpan,u=p.rowSpan;_>1&&(h-=_-1),d>=h?($removeNode(p),g++):_>1?c+=_:u<this._maxHeaderLevel-v&&c++}g==l.length&&($removeNode(a),t++),e.push(c)}}if(this._maxHeaderLevel>1){var f=this._frozenColGroup=$common.getFirstChildByTagName(this._frozenHeaderTable,"colgroup"),m=$common.getChildrenByTagName(f,"col"),C=this._getFrozenColumnRealCount();this.get_showRowNo()||C--;for(d=m.length-1;d>-1;d--)d>C&&$removeNode(m[d]),Array.indexOf(n,d)>-1&&$removeNode(m[d])}if(t>0){r=$common.getChildrenByTagName(o,"tr");for(var v=0;v<r.length;v++)for(var a=r[v],l=$common.getChildrenByTagName(a,"td"),d=0;d<l.length;d++){var p,u=(p=l[d]).rowSpan;p.style.height=_px(20*u-u-1)}}},initFrozenStyle:function(){var t=this._frozenBody,e=this.get_showScrollBar(),i=this._frozenHeaderBar?this._frozenHeaderBar.style:null,n=t.style,o=this._frozenFooterBar?this._frozenFooterBar.style:null,s=this._body.offsetWidth,r=this._getAllFrozenColumnWidth(),a=s>r?r:s,l=$dom._getCurrentStyle(this.get_element()),h=parseInt(l.paddingLeft),d=parseInt(l.paddingTop);if(h=h?parseInt(h):0,d=d?parseInt(d):0,i){i.top=_px(d),i.left=_px(h),i.display="block",i.width=_px(a),this._frozenHeaderTable.style.width=_px(r);var _=this._frozenHeaderBar.clientHeight;0==_&&(_=parseInt($dom._getCurrentStyle(this._frozenHeaderBar).height)),d+=_}this._filterBar&&(d+=this._filterBar.get_height(),this._filterBar.resetWidth()),n&&(n.top=_px(d),n.left=_px(h),n.width=_px(a),n.display="block",this._frozenRowsTable.style.width=e?_px(r):"100%",this._refreshFrozenBodyHeight()),o&&(o.bottom=0,o.left=_px(h),o.display="block",o.width=_px(a),this._frozenFooter.style.width=_px(r))},_setFrozenVisible:function(t){this._frozenBody&&this._getFrozenVisible()!=t&&($dom.setVisible(this._frozenBody,t),this._frozenHeaderBar&&$dom.setVisible(this._frozenHeaderBar,t),this._frozenFilterBar&&$dom.setVisible(this._frozenFilterBar,t),this._frozenFooterBar&&$dom.setVisible(this._frozenFooterBar,t))},_getFrozenVisible:function(){return!!this._frozenBody&&$dom.getVisible(this._frozenBody)},_refreshFrozenHeaderHeight:function(t){var e=this._frozenHeaderTable;if(e&&this._frozenBody){var i=this._header.offsetHeight;e.style.height=_px(i),this._frozenHeaderBar.style.height=_px(this._headerBar.offsetHeight),t||this.initFrozenStyle()}},_refreshFrozenBodyHeight:function(){if(this._frozenBody){var t=this._body.clientHeight;this._frozenBody.style.height=_px(t)}},_initGridEvents:function(){var t=this.get_element();$common.addMouseMoveHandler(t,this._tableMouseMove,this),$common.addMouseUpHandler(t,this._tableMouseUp,this),$common.addMouseDownHandler(t,this._tableMouseDown,this),$common.addDblClickHandler(t,this._tableDblClick,this),$common.addMouseWheelHandler(t,this._tableMouseWheel,this);var e=this._body;$common.addMouseLeaveHandler(e,this._bodyMouseOut,this),$common.addScrollHandler(e,this._bodyScroll,this),$common.addContextMenuHandler(t,this._gridContextMenu,this),this._documentKeyDownHandler=$common.addKeyDownHandler(document,this._documentKeyDown,this)},get_useBodyMenu:function(){return this._useBodyMenu},set_useBodyMenu:function(t){this._useBodyMenu=t},_initBeforeDrag:function(){if(!(this._dragDatas&&this._dragDatas.length>0)){var t=this.createDragDatas();if(this._dragDatas=t,this._dragField){for(var e=t.length,i="[",n=0;n<e&&n<2;n++){var o=t[n][this._dragField];n>0&&(i+=","),i+=o}e>2&&(i+="..."),this._dragTexts=i+"]"}}},createDragDatas:function(){var t=this._dragIndex=this.get_selectedRowIndex(),e=[];if(this._allowMultiSelectedRow)for(var i=0,n=this._multiRowIndexs.length;i<n;i++){var o=this._multiRowIndexs[i];this._appendDragData(o,e),this.setRowVisible(o,!1)}else this._appendDragData(t,e),this.setRowVisible(t,!1);return e},_appendDragData:function(t,e){var i=this.findRowData(t);i&&e.push(i)},_initDrag:function(t){this.get_dragOrSelect()&&(this._startPos={x:t.clientX,y:t.clientY},this._processDragEvent(!1),this._processDragEvent(!0))},_processDragEvent:function(t){this.get_dragOrSelect()&&(t?this._mouseMoveHandler||(this._mouseMoveHandler=$common.addMouseMoveHandler(document,this._dragMove,this),this._mouseUpHandler=$common.addMouseUpHandler(document,this._endDrag,this)):(this._mouseMoveHandler&&($common.removeMouseMoveHandler(document,this._mouseMoveHandler),$common.removeMouseUpHandler(document,this._mouseUpHandler),this._mouseMoveHandler=null,this._mouseUpHandler=null),this._hideDragBlock()))},_dragMove:function(t){var e={x:t.clientX,y:t.clientY};if(!(!$app.isDraging&&Math.abs(e.y-this._startPos.y)<10&&Math.abs(e.x-this._startPos.x)<10))if(t.cancel(),this.get_allowDrag()){this._initBeforeDrag();var i=this._dragDatas.length;if(!(i<1||(this._moveDragBlockByPos(e),this._isMouseMoving))){this._isMouseMoving=!0,$app.isDraging=!0,this._checkDrag=!1,$craba.innerHTMLs(this._moveDiv,String.format(Sys.Res.gridDragTip,i,this._dragTexts)),_Z_229.dragMove(t,this);var n=this;setTimeout(function(){n._isMouseMoving=!1},100)}}else this._dragSelectedRow(t)},_emitDragMove:function(t,e){e!=this&&(this._clearStyle(),e._clearScrollTimer&&e._clearScrollTimer());var i=this._getEventTargetRow(t);i&&null!=this._getRowIndex(i)&&this._setSelectedRow(i);var n=this._body,o=$common.getBounds(n),s=t.clientY,r=Math.abs(s-o.y-o.height)<30,a=Math.abs(s-o.y)<30;if(r||a){if(!this._scrollTimer){var l=this._body,h=a?-30:30;this._scrollTimer=setInterval(function(){l.scrollTop+=h},200)}}else this._clearScrollTimer()},_dragSelectedRow:function(t){if(o=this._getEventTargetRow(t)){var e=this._getRowIndex(o);if(!Object.isUndefinedOrNull(e)){this._clearStyle(!0),this._checkDrag=!1;var i=Math.min(this._startRowIndex,e),n=Math.max(this._startRowIndex,e);for(this._multiRowIndexs=[];i<=n;i++){this._multiRowIndexs.push(i);var o=this._getRow(i);this._setRowStyle(o,_Z_41.selected,!0)}}}},_clearScrollTimer:function(){this._scrollTimer&&(clearInterval(this._scrollTimer),this._scrollTimer=null)},_emitDragEnd:function(t,e){},_emitDragLeave:function(t,e){},_moveDragBlockByPos:function(t){var e=this._moveDiv;e||(e=this._moveDiv=$common.createClassDiv("GridDragDiv"),document.body.appendChild(e)),$dom.setVisible(e,!0);var i=getClientScrollPosition();e.style.left=_px(t.x+i.x+10),e.style.top=_px(t.y+i.y+20)},_dragClass:function(t,e){this._element&&$dom.setCssClass(t,this._element.parentNode,e)},cancelDrag:function(){if(this._dragClass(!1,"DropStyle"),!Object.isUndefinedOrNull(this._dragIndex)){var t=this._getRow(this._dragIndex);t&&(this._showAllDragRows(),this._setSelectedRow(t),this._dragDatas=null)}},_endDrag:function(t){this._clearScrollTimer(),$app.isDraging=!1,this._processDragEvent(!1),this.get_allowDrag()&&(this._checkCancelDrag(t)||(_Z_229.endDrag(t,this),this._showAllDragRows(),this._dragDatas=null))},_showAllDragRows:function(){this._allowMultiSelectedRow?(this._showDragRows(),this._clearStyle(),this._multiRowIndexs=[]):this.setRowVisible(this._dragIndex,!0)},_checkCancelDrag:function(t){if(!this._dragDatas||0==this._dragDatas.length)return this.cancelDrag(),!0;var e=this.get_selectedRowIndex();return _Z_229._prevDropTarget==this&&this._dragIndex==e&&(this.cancelDrag(),!0)},_showDragRows:function(){for(var t=0,e=this._multiRowIndexs.length;t<e;t++){var i=this._multiRowIndexs[t];this.setRowVisible(i,!0)}},_hideDragBlock:function(){this._moveDiv&&$dom.setVisible(this._moveDiv,!1)},getDragData:function(){return Object.clone(this._dragDatas)},_getDragIndex:function(t){return t?this.get_selectedRowIndex():this._dragIndex},add_drop:function(t){this.get_events().addHandler("_drop",t),this._allowDrop=!0},remove_drop:function(t){this.get_events().removeHandler("_drop",t),this._allowDrop=!1},get_visible:function(){return this._visible},set_visible:function(t){if(this._visible!=t){if(this._visible=t,this.get_isInitialized()){this.endEdit();var e=this.get_element().parentNode;this._setControlAndLabelVisible(e,t),$dom.setVisible(e,t,"flex"),Sys.UI.Controls.Grid.callBaseMethod(this,"set_visible",[t,"flex"]);var i=this.findPager();i&&i.set_visible(t),this._body||(this.doFormInit(),this.doFormLoaded()),t&&this._dataChanged&&this.dataChanged()}t&&(this._doAdjustRowsTableWidth(),this.resetColumnStretch())}},get_changedRowDatas:function(t){var e=Object.clone(this._changedRowDatas);return t&&this.clearChangedRowDatas(),e},clearChangedRowDatas:function(){this._changedRowDatas=[]},get_newRowDatas:function(t){var e=Object.clone(this._newRowDatas);return t&&this.clearNewRowDatas(),e},clearNewRowDatas:function(){this._newRowDatas=[]},get_deleteRowDatas:function(t){var e=Object.clone(this._deleteRowDatas);return t&&this.clearDeleteRowDatas(),e},clearDeleteRowDatas:function(){this._deleteRowDatas=[]},_appendChangeDatas:function(t){if(t){var e=this.get_dataKey();if(e)return Object.isUndefinedOrNull(t[e])?this._appendNewDatas(t):void Array.addByKey(this._changedRowDatas,t,e);Array.indexOf(this._changedRowDatas,t)>-1||Array.add(this._changedRowDatas,t)}},_appendNewDatas:function(t){t&&(Array.indexOf(this._newRowDatas,t)>-1||this._newRowDatas.push(t))},_appendDeleteDatas:function(t){if(t){var e=this.get_dataKey();e?(Array.addByKey(this._deleteRowDatas,t,e),Array.removeByKey(this._changedRowDatas,t,e)):(this._deleteRowDatas.push(t),Array.remove(this._changedRowDatas,t)),Array.remove(this._newRowDatas,t)}},get_parentElement:function(){return this.get_element().parentNode},set_width:function(t){if(this.get_visible()&&!(t<0)){this._gridScrollToStart();var e=this.get_element().parentNode;$common.setWidth(e,t),$dom.addCssClass(e,"Flex0"),this._doAdjustHeaderSpacer(),this._doAdjustFooterSpacer(),this._refreshFooterWidth(),this.refreshScrollBar(),this.resetColumnStretch(),this._filterBar&&this._filterBar.resetWidth(),this._initOverlaySize()}},set_height:function(t){if(this.get_visible()){var e=0;if(this._headerBar&&(e+=this._headerBar.offsetHeight),this._footerBar&&(e+=this._footerBar.offsetHeight),this._filterBar&&(e+=this._filterBar.get_height()),t>e){this.findPager()&&(t+=this.findPager().get_height()),this.hasXScroll()&&(t+=8),t+=2;var i=this.get_element().parentNode;$common.setHeight(i,t),$dom.addCssClass(i,"Flex0")}this.refreshScrollBar(),this._initOverlaySize()}},set_positionVisible:function(t){if(this._pvisible!==t){this._pvisible=t;var e=this.get_element().parentNode,i=e.parentNode;i&&"TD"==i.tagName&&(e=i),$dom.setVisibleByPosition(e,t),e!=i&&this.findPager()&&$dom.setVisibleByPosition(this.findPager().get_element(),t)}},doResized:function(t,e){if(!1!==this._pvisible&&this.get_visible()){if("height"==t&&this.isFrozenGrid()&&this.initFrozenStyle(),"width"==t){var i=this.findPager();i&&i.bindScrollBar()}e&&this.resetColumnStretch(),this.refreshScrollBar()}},getRowHeight:function(){return $settings.GridDefaultRowHeight?$settings.GridDefaultRowHeight:21},get_scrollBarWidth:function(){return this._scrollBarWidth},set_scrollBarWidth:function(t){this._scrollBarWidth=t},get_bindPagerDataSource:function(){return this._bindPagerDataSource},set_bindPagerDataSource:function(t){if(this._bindPagerDataSource=t,this.get_isInitialized()){var e=this.findPager();e&&(e.set_hasDataSource(!0),this._showFooter&&this._init&&e.set_hasSummary(!0))}},get_autoMaxRowCount:function(){return this._autoMaxRowCount},set_autoMaxRowCount:function(t){this._autoMaxRowCount=t,this._autoHeight=!0,this._minHeight=50},get_autoHeight:function(){return this._autoHeight},set_autoHeight:function(t){this._autoHeight=t},get_maxHeight:function(){var t=this._maxHeight;if(this._autoMaxRowCount>0){var e=this._autoMaxRowCount*this.getRowHeight()+this.getOtherHeight();t=Math.max(t,e)}return t},set_maxHeight:function(t){this._maxHeight=t},get_useCustomScrollBar:function(){return this._useCustomScrollBar},set_useCustomScrollBar:function(t){this._useCustomScrollBar=t},get_minHeight:function(){return this._minHeight},set_minHeight:function(t){this._minHeight=t},_headerResize:function(t){var e=this._header.offsetHeight;if(this._body&&e!=this._headerHeight){var i=e-this._headerHeight;$common.setHeight(this._body,this._body.offsetHeight-i),this._headerHeight=e}},_documentKeyDown:function(t){var e=this.get_form();if(e&&!$step._stepShow&&!$app._loadingPage&&this.get_enabled()&&!window.isTeemoPrinting&&!e._hasMDI){var i=$common.findFocusedGrid(e),n=window.focusedControl;if(e&&e.get_isActive()&&i==this||$app.PopupGrid==this){if(n&&n!=i)return;this._rowsKeyDown(t)}}},canFocus:function(){return!this.get_readOnly()||this.get_recordCount()>0},get_followPager:function(){return this._followPager},set_followPager:function(t){this._followPager=t},_getBorderSize:function(t){return $common._getDomCachePadding(this._element,t)},_getLineWidth:function(){return this.get_showLines()?1:0},_doAdjustHeaderSpacer:function(){this.get_showHeader()&&this.get_showScrollBar()&&this._doAdjustHeaderFooterSpacer(this._header,this._headerSpacer)},_doAdjustFooterSpacer:function(){this.get_showFooter()&&this.get_showScrollBar()&&this._doAdjustHeaderFooterSpacer(this._footer,this._footerSpacer)},_doAdjustHeaderFooterSpacer:function(t,e){if(t){var i=0==this.get_columnCount()?this._allColumnWidth:this._getAllColumnWidth();if(!(i<=0)){var n=i+this.get_scrollBarWidth();$common.setWidth(t,n)}}},get_rowNoColumnWidth:function(){var t=this.get_noColumn();if(t&&this._noTd)return t.get_width();var e=this._configData;if(e&&e.ColumnsWidth&&e.ColumnsWidth.rowNo){var i=e.ColumnsWidth.rowNo;return"string"==typeof i&&(i=Number(i)),i}return this._rowNoColumnWidth},set_rowNoColumnWidth:function(t){this._rowNoColumnWidth=t},get_rowNoColumnCaption:function(){var t=this._headerRow;if(t&&this.get_showRowNo()){var e=t.childNodes[0].firstChild.innerHTML;return $common.clearHTMLTag(e)}return""},set_rowNoColumnCaption:function(t){this._rowNoColumnCaption=t,this.get_isInitialized()&&this._refreshRowNoColumnCaption()},_refreshRowNoColumnCaption:function(){var t=this._headerRow,e=this._rowNoColumnCaption;t&&this.get_showRowNo()&&e&&"行号"!=e&&(!this.get_allowConfig()&&e&&e.indexOf("RowNoConfigIcon")>-1&&(e=$craba.getLangPro("行号")),$clearHandlers(this._configCell),$clearHandlers(this._frozenConfigCell),$craba.innerHTMLs(t.childNodes[0],e),this._frozenNoTd&&($craba.innerHTMLs(this._frozenNoTd,e),this._bindRowNoEvent(this._frozenHeaderTable,!0)),this._bindRowNoEvent(this._header))},get_columns:function(){var t=[];this._columns=this._columns?this._columns:[],t.length=this._columns.length;for(var e=j=0;e<t.length;){var i=this._columns[e++];i&&(i._noUse||(t[j++]=this._columns[e-1]))}return t.length=j,t},_createColumns:function(){var t=this._getTdCaches(),e=t.tdCache,i=t.footerTds,n=t.frozenTdCache,o=t.frozenFooterTds,s=this._getFirstColumnCellIndex(),r=!1,a=this._columnsParams,l=a.length,h=this.get_id()+"_column",d=null!=this.findPager(),_={};this._columns=new Array(l);for(var u=this._columnsGspxs?this._columnsGspxs:{},c=0;c<l;c++){var g=a[c],f=e?e[h+c]:null,m=i?i[s+c]:null,C=n?n[h+c]:null,v=o?o[s+c]:null,p=this._createColumn(c,g,f,m,C,v);$settings.AllowGspxPropertys&&u[p.get_name()]&&(p.gspxProp=u[p.get_name()]),this._columns[c]=p;var w=p.get_dataField();_[w]?null!=w&&$common.showError(String.format(Sys.Res.columnRepeat,this.get_id(),w)):_[w]=!0,!r&&p.get_isClientSum()&&(r=!0),p instanceof Sys.UI.Controls.MultiSelectColumn?(d&&(this._loadedItems=[]),this._multiSelectColumn=p):p instanceof Sys.UI.Controls.RowDeleteColumn?this._rowDeleteColumn=p:p instanceof Sys.UI.Controls.ExpandColumn&&(this._rowExpandColumn=p),!d||p.get_readOnly()||this._loadedItems||(this._loadedItems=[])}this._initColumnForzenIndex(),delete this._columnsParams,this._hasSummaryColumn=r,!this._dataGroupField&&this._mergeRowColumns.length>0&&(this._useEvenRowColor=!1)},_resetColumnsElements:function(){for(var t=this._getTdCaches(),e=t.tdCache,i=t.footerTds,n=t.frozenTdCache,o=t.frozenFooterTds,s=this._getFirstColumnCellIndex(),r=this._columns.length,a=this.get_id()+"_column",l=0;l<r;l++){var h=e?e[a+l]:null,d=i?i[s+l]:null,_=n?n[a+l]:null,u=o?o[s+l]:null,c=this._columns[l];this._setColumnElements(c,h,d,_,u),c._internalSetElements(c._elements)}},_disposeColumnsHeader:function(t,e){for(var i=t.length,n=0;n<i;n++){t[n]._internalDisposeHeader(e)}},_getTdCaches:function(){var t=this.get_showHeader(),e=this._footerRow,i=this._frozenFooterRow,n=this.isFrozenGrid(),o=null,s=null;t&&(o=this._getTdCache(this._header),n&&(s=this._getTdCache(this._frozenHeaderTable)));var r=null;e&&(r=$common.getChildrenByTagName(e,"td"));var a=null;return i&&(a=$common.getChildrenByTagName(i,"td")),{tdCache:o,frozenTdCache:s,footerTds:r,frozenFooterTds:a}},_initColumnForzenIndex:function(){var t=this._header;if(t){for(var e=$common.getTableBody(t).firstChild,i=$common.getChildrenByTagName(e,"td"),n={},o=this._getFirstColumnCellIndex(),s=0,r=0;o<i.length;o++){for(var a=i[o].colSpan,l=0;l<a;l++)n[s]=r,s++;r++}for(var h=this._columns,d=0,_=h.length;d<_;d++){h[d]._frozenIndex=n[d]}}},_getTdCache:function(t){var e={},i=$common.getTableBody(t).firstChild;if(this._maxHeaderLevel>1)for(;null!=i;)this._initTdCache(i,e),i=i.nextSibling;else this._initTdCache(i,e);return e},_initTdCache:function(t,e){for(var i=t.firstChild;null!=i;){var n=i.id;n&&(e[n]=i),i=i.nextSibling}},_createColumn:function(t,e,i,n,o,s,r){var a=e.type,l=e.properties;r&&(a=r.type,(l=r.properties)?l.designWidth||(l.designWidth=l.width||100):l={designWidth:100},e=r),a||(a=Sys.UI.Controls.Column,l.readOnly=!0);var h=new a;return this._setColumnElements(h,i,n,o,s),h._grid=this,h._params=e,h._allEvents=e.events,h._index=t,h instanceof Sys.UI.Controls.MultiSelectColumn&&(this._multiSelectColumn=h),_Z_233$_setProperties(h,l),h},_setColumnElements:function(t,e,i,n,o){var s=t._elements;s||(s=t._elements={}),s.header=e,s.footer=i,s.frozenHeader=n,s.frozenFooter=o},_getStartRecordIndex:function(){var t=this.findPager();return t?t.get_pageItemIndex():0},_internalAddCommandColumn:function(t){var e=this._commandColumns;e||(e=this._commandColumns=[]),Array.add(e,t)},_internalDoPagerBeforeRefresh:function(){this._loadedItems&&(this._refreshLoadedItems=!0)},clearLoadedItems:function(){return!!this._loadedItems&&(Array.clear(this._loadedItems),this._refreshLoadedItems=!1,!0)},_initLoadedItems:function(){if(!this._loadedItems)return!1;if(this._refreshLoadedItems)return Array.clear(this._loadedItems),this._refreshLoadedItems=!1,!1;for(var t=this._multiSelectColumn,e=t?t.get_dataField():null,i=this.get_recordCount(),n=this.get_dataController(),o=this._getStartRecordIndex(),s=0;s<i;s++){var r=this._loadedItems[s+o];r||(r={},this._loadedItems[s+o]=r),r.data=n.getRecord(s),r.recordIndex=s,r.data&&e&&(r.selected=!!this.getRowEnabled(s)&&r.data[e])}return!0},get_primaryKey:function(){return this._primaryKey},set_primaryKey:function(t){this._primaryKey=t},get_rowPrimaryKey:function(){return this._rowPrimaryKey},set_rowPrimaryKey:function(t){this._rowPrimaryKey=t},get_dataKey:function(){return this._rowPrimaryKey||this._primaryKey},get_dataGroupField:function(){return this._dataGroupField},set_dataGroupField:function(t){this._dataGroupField=t},_mergeLoadedItems:function(){var t=this.get_primaryKey(),e=this._multiSelectColumn?this._multiSelectColumn.get_dataField():null;if(t&&e){var i=this.get_dataSource(),n=this._loadedItems;if(i)for(var o=0,s=n.length;o<s;o++){var r=n[o];if(r!==undefined&&r.data[t]!==undefined)for(var a=0,l=i.length;a<l;a++){var h=i[a];r.data[t]==h[t]&&(h[e]=r.selected,r.data=h)}}}},_loadCacheDatas:function(){if(this._changedRowDatas&&0!=this._changedRowDatas.length&&this.get_primaryKey()){var t=this.get_primaryKey(),e=this.get_dataSource();e&&Array.forEach(this._changedRowDatas,function(i,n){var o=i[t];o!==undefined&&Array.forEach(e,function(e,n){e[t]==o&&Object.copyTo(i,e)},this)},this)}},_loadPreLoadedRow:function(t){var e=this._loadedItems;if(e&&!this._cachePager){var i=this.get_dataController(),n=this._getStartRecordIndex();this._mergeLoadedItems();if(this.get_events().getHandler("getLoadedItems")){for(o=0;o<t;o++){(s=e[o+n])||((s={}).data=i.getRecord(o),s.recordIndex=o,e[o+n]=s)}e=this._doGetLoadedItems()}for(var o=0;o<t;o++){var s=e[o+n];s&&i.modifyRecord(o,s.data)}}},_checkRelation:function(t,e,i){},_checkMultiSelectColumn:function(){var t=this._multiSelectColumn;t&&!t.get_readOnly()&&t.get_showHeaderCheckBox()&&t.get_visible()&&t._setMultiSelectColumn(this.hasSelectedAll(),this.hasSelected())},hasSelectedAll:function(t){var e=this.get_recordCount();if(0==e)return!1;for(var i=this._checkHasMultiSelectColumn(),n=!1,o=0;o<e;o++)if(!this.isEmptyRow(o)&&this.getRowEnabled(o)&&this._getMtCellEnabled(o)){var s=this.getRowData(o)[i];if(t){if(s)return!0}else{if(!s)return!1;n=!0}}return n},hasSelected:function(){return this.hasSelectedAll(!0)},_initFrozenDataRows:function(){var t=this.get_dataController().get_recordCount(),e=this.get_rowCount(),i=Math.max(t,e),n=new Sys.StringBuilder,o=this._frozenRowsTable;n.append('<table class="GridTable" border="0" cellpadding="0" style="'+o.style.cssText+'">'),n.append("<tbody>");for(var s=this.get_showRowNo(),r=s?this.get_events().getHandler("getRowNo"):null,a=this._getFrozenColumnRealCount(),l=this.get_allowCopy()?"":'unselectable="on" ',h=0;h<i;h++){var d=h<t;this._addRowFast(n,h,s,r,a,d,l,!0)}n.append("</tbody>"),n.append("</table>"),$removeNode(o);var _=this._frozenBody;$craba.innerHTMLs(_,n.toString());var u=this._frozenRowsTable=_.firstChild;this._frozenRows=u.firstChild},_initDataRows:function(){this._rowsTable&&(this._rowCreated=!1,this._multiRowIndexs=[],this._initRealDataRows(),this.isFrozenGrid()&&this._initFrozenDataRows(),this._refreshColumnInfo(),this._initRowDeleteColumn(),this._afterInitDataRows(),this._rowCreated=!0)},_initRowDeleteColumn:function(){var t=this.get_dataController().get_recordCount(),e=Math.max(t,this.get_defaultRowCount()),i=this._rowDeleteColumn;if(i&&t<e)for(var n=t;n<e;n++){var o=this._getRow(n);i.doInit(o,n)}},_refreshColumnInfo:function(){this._activeColumn&&(this._activeColumn._lastCell=null,this._activeColumn=null);for(var t=this.get_columns(),e=0;e<t.length;e++){t[e]._lastCell=null}},_initRealDataRows:function(){this._rowsEnabled&&delete this._rowsEnabled,this.doBeforeDataBind(),this._mergeGroupDatas(),this._setSelectedRow(null);var t=this.get_dataController().get_recordCount(),e=Math.max(t,this.get_defaultRowCount());this._isLazyPageSize()&&(e=this._lazyPageSize,this._lazyIndex=1),this.get_allowPageCache()?this._loadCacheDatas():this._loadPreLoadedRow(t);var i=new Sys.StringBuilder,n=this._rowsTable,o=n.style.cssText;i.append('<table class="GridTable" border="0" cellspacing="0" cellpadding="0" style="'+o+'">'),i.append("<tbody>");for(var s=this.get_showRowNo(),r=s?this.get_events().getHandler("getRowNo"):null,a=this.get_columnCount(),l=this.get_allowCopy()?"":'unselectable="on" ',h=0;h<e;h++){var d=h<t;this._addRowFast(i,h,s,r,a,d,l)}i.append("</tbody>"),i.append("</table>"),0==e?(this._hasScrollLine=!0,i.append('<div class="ScrollBarLine" style="height:1px;'+o+'"></div>')):this._hasScrollLine=!1,this._clearExpandRow(),$removeNode(n);var _=this._body;$craba.innerHTMLs(_,i.toString());var u=this._rowsTable=_.firstChild;if(this._rows=u.firstChild,this._isLazyPageSize()){var c=this._moreBtn=$common.createClassDiv("MoreText");c.innerText=String.format(Sys.Res.gridLazyMore,t),$common.addClickHandler(c,this.showNextMoreRows,this),_.appendChild(c)}this._initCellMerge(),this._initRowMerge(),this._calcColumnsSummary()},_afterInitDataRows:function(){this._activeCell=null,this._selectedRow=null,this._tempRow=null;this.get_dataController().get_recordCount()>0?(this.doAfterDataBind(),this.defaultShowEditor&&this._showFirstRowEditor(),this.doRemoveEmpty()):(this._dataSourceChanging&&this.doSelectionChanged(),this.doBindEmpty());var t=this;asyncCall(function(){t.get_isDisposed()||(t._initGridHeight(),t._internalFrozenRowsHeight(),t._doAdjustRowsTableWidth(),t.refreshScrollBar())}),this._checkMultiSelectColumn(),this._dataSourceChanging=!1},_addRowFast:function(t,e,i,n,o,s,r,a){var l=this.get_events().getHandler("cellRendering"),h=this._raiseRowRendering(null,!1,e,_Z_41.normal),d=this._getRowStyleFast(e,h,_Z_41.normal,!1);if(t.append('<tr class="'+d+'" _rowIndex="').append(e).append('"'),this._initRowVisible(t,e),t.append(">"),i){var _={rowNo:e},u=this._getRowNoHTMLFast(e,n,_);t.append('<td class="GridBodyRowNoCell" width="').append(this.get_rowNoColumnWidth()).append('">'),t.append(u),t.append("</td>")}for(var c=0;c<o;c++){var g=this.getColumnByIndex(c);if(g){var f=this._getCellStyleFast(e,g,c,!1,_Z_41.normal,s,l,null,h);t.append('<td class="'+f.className+'" ').append(r),t.append('width="').append(g.get_width()),g.get_textAlign()&&t.append('" align="').append(g.get_textAlign()),t.append('" _columnIndex="').append(c).append('"'),f.cssText&&t.append(' style="').append(f.cssText).append('"'),t.append(">"),t.append(g._initCellHTML(e,f.fontColor,s)),t.append("</td>")}}a||t.append('<td class="GridBodyCell CellSpacer"></td>'),t.append("</tr>")},_initRowVisible:function(t,e){},_raiseRowRendering:function(t,e,i,n){var o=null;if(t){o=$common.getChildrenByTagName(t,"td")[0]}var s=this._getStartRecordIndex()+i,r=null;this._isRowSelectableByIndex(i)&&(r=s+1);var a=this.get_events().getHandler("rowRendering");if(!a)return this.get_showRowNo()&&this._setDefaultRowNo(e,n,o,r,i),null;var l=new _Z_187(i,e,r,n);return a(this,l),r=l.get_rowNo(),o&&r&&this.get_showRowNo()&&(l._rowNoSetted?$craba.innerHTMLs(o,'<div class="GridBodyRowNoCellText">'+r+"</div>"):this._setDefaultRowNo(e,n,o,r,i)),l},_setDefaultRowNo:function(t,e,i,n,o){if((e==_Z_41.selected||e==_Z_41.none)&&i&&this.get_showRowIndicator()){var s=!1,r=this.get_events().getHandler("getRowNo");if(r&&n&&o<this.get_recordCount()){var a=new _Z_183(n,this.getRowData(o));r(this,a),(s=a._hasSetRowNo)&&(n=a.get_rowNo())}n||(n="&nbsp;"),t&&!s?i.innerHTML="<div class=\"GridBodyRowNoCellText\"><span class='NoArrow'>&#9658;</span></div>":$craba.innerHTMLs(i,'<div class="GridBodyRowNoCellText">'+n+"</div>")}},add_beforeDataBind:function(t,e){return this.get_events().addHandler("beforeDataBind",t,e)},remove_beforeDataBind:function(t){this.get_events().removeHandler("beforeDataBind",t)},add_bodyScroll:function(t,e){return this.get_events().addHandler("_bodyScroll",t,e)},remove_bodyScroll:function(t){this.get_events().removeHandler("_bodyScroll",t)},doBeforeDataBind:function(){var t=this.get_events().getHandler("beforeDataBind");t&&t(this)},add_afterDataBind:function(t){this.get_events().addHandler("afterDataBind",t)},remove_afterDataBind:function(t){this.get_events().removeHandler("afterDataBind",t)},add_empty:function(t){this.get_events().addHandler("empty",t)},remove_empty:function(t){this.get_events().removeHandler("empty",t)},add_lazyPageLoaded:function(t){this.get_events().addHandler("lazyPageLoaded",t)},remove_lazyPageLoaded:function(t){this.get_events().removeHandler("lazyPageLoaded",t)},_doLazyPageLoaded:function(t,e){var i=this.get_events().getHandler("lazyPageLoaded");i&&i(this,{startIndex:t,endIndex:e})},doAfterDataBind:function(){var t=this.get_events().getHandler("afterDataBind");t&&t(this)},doRemoveEmpty:function(){$dom.removeCssClass(this.get_element(),"NoData"),this._emptyControl&&(this._emptyControl.clear&&this._emptyControl.clear(!0),this._emptyControl.dispose(),delete this._emptyControl)},doBindEmpty:function(){this._autoHeight||0!=this.get_rowCount()||$dom.addCssClass(this.get_element(),"NoData");var t=this.get_events().getHandler("empty");if(t){var e={isRefresh:this._isRefresh};t(this,e),e.emptyControl&&(this._emptyControl=e.emptyControl,e.emptyControl.appendTo(this._body),delete this._isRefresh)}},add_focus:function(t){this.get_events().addHandler("_focus",t)},remove_focus:function(t){this.get_events().removeHandler("_focus",t)},add_change:function(t,e){this.get_events().addHandler("_change",t,e)},remove_change:function(t){this.get_events().removeHandler("_change",t)},add_columnChanged:function(t,e){this.get_events().addHandler("columnChanged",t,e)},remove_columnChanged:function(t){this.get_events().removeHandler("columnChanged",t)},doChange:function(t,e,i){if(!this._changing){var n=this.get_events().getHandler("_change");if(n){this._changing=!0;var o=new _Z_30(t,i,null,e);try{n(this,o)}catch(r){throw r}finally{this._changing=!1}}var s=this.get_form();s&&s.doChange(),$common.setTestState("gridChanged")}},get_columnCount:function(){var t=this._columns;return t?t.length:0},get_visibleColumnCount:function(){for(var t=0,e=0,i=this.get_columnCount();e<i;e++){this.getColumnByIndex(e).get_visible()&&t++}return t},_getColumnIndexByName:function(t,e){if(!t)return-1;t=t.toLowerCase();for(var i=this.get_columnCount(),n=0;n<i;n++){var o=this.getColumnByIndex(n),s=o.get_name(),r=o.get_dataField();if((s&&s.toLowerCase()==t||r&&r.toLowerCase()==t)&&(!e||o.get_visible()))return n}return-1},getColumn:function(t,e){var i=this.findColumn(t);if(!i&&!e)throw Error.invalidOperation(String.format("字段“{0}”不存在",t));return i},findColumn:function(t,e){var i=this._getColumnIndexByName(t,e);return i>=0?this.getColumnByIndex(i):null},getColumnByIndex:function(t){return this._columns[t]},_createNoTd:function(t,e){var i=$common.createTd();return i.className="GridBodyRowNoCell",e&&(i.width=e),t.appendChild(i),i},_createRow:function(t,e,i){var n=document.createElement("tr");n.className="GridBodyRow",this.get_showRowNo()&&this._createNoTd(n,this.get_rowNoColumnWidth());for(var o=0;o<e;o++){var s=this.getColumnByIndex(o),r=this._createCell(s);n.appendChild(r)}return i||n.appendChild(this._createTd()),n.setAttribute("_rowIndex",t),n},_createTd:function(t){var e=$common.createTd();return e.className=t?t.get_cellCssClass():"GridBodyCell",e},_createCell:function(t){var e=this._createTd(t);return t.get_visible()?t.get_nullDisplayText()&&$craba.innerHTMLs(e,t._getEmptyHTML(!0)):e.className+=" dnone",e.width=t.get_width(),e.align=t.get_textAlign(),e.setAttribute("_columnIndex",t.get_index()),e},_addRow:function(t){var e=this._createRow(t,this.get_columnCount());if(this._rows.appendChild(e),this._hasScrollLine){var i=$common.getFirstChildByClassName(this._body,"ScrollBarLine");$removeNode(i),this._hasScrollLine=!1,this.doRemoveEmpty()}if(this._frozenRows){var n=this._createRow(t,this._getFrozenColumnRealCount(),!0);this._frozenRows.appendChild(n)}return e},_getRow:function(t){var e=this._rows.childNodes;if(!this._rowExpandColumn||this._isTree)return e[t];for(var i=0,n=e.length;i<n;i++){var o=e[i];if(this._getRowIndex(o)==t)return o}return e[t]},get_rowCount:function(){return $common.getChildrenByTagName(this._rows,"tr").length},_appendRow:function(){var t=this.get_rowCount(),e=this._addRow(t);return this._initRowNo(e,t),this._rowDeleteColumn&&this._rowDeleteColumn.doInit(e,t),e},_getEventTargetRow:function(t,e){var i=this._getEventRealRow(t);if(!i)return null;var n=t.target;if(n==this._rowsTable)return null;var o=this.get_element();if(i==o){for(var s=0;s<4;s++){if("TD"==n.tagName){i=n.parentNode;break}if(!(n=n.parentNode))break}if(i==o)return null}if(e)return i;if(this.isFrozenGrid()){var r=this._getRowIndex(i);i=this._getRow(r)}return i},_getEventRealRow:function(t){var e=this.get_element(),i=t.target;if(this._rowExpandColumn)for(;i&&i!=e;){if("TR"==i.tagName&&i.getAttribute("_isExpandDetail"))return null;if($dom.hasClass(i,"GridExpandCell")&&i.parentNode)return i.parentNode.parentNode;i=i.parentNode}if(this._useCustomColumnPlugin)for(;i&&i!=e;){if("TR"==i.tagName)return null!=i.getAttribute("_rowIndex")?i:null;i=i.parentNode}return e},_getEventTargetCell:function(t,e){var i=e.target;if(i.parentNode&&"TD"==i.parentNode.tagName&&(i=i.parentNode),"TD"!=i.tagName&&(i=$common.getFirstParentByTagName(i,"td")),this.isFrozenGrid()){var n=this._getCellColumnIndex(i);if(n<=this._getFrozenColumnRealCount()){var o=$common.getChildrenByTagName(t,"td");this.get_showRowNo()&&n++,n<o.length&&(i=o[n])}}var s=$common.getChildrenByTagName(t,"td"),r=Array.indexOf(s,i);return this.get_showRowNo()&&r--,r>=0?i:null},_focusBody:function(){if(this.get_strongFocus()&&this.get_visible())try{this._body.focus()}catch(t){}},set_strongFocus:function(t){this._strongFocus=t},get_strongFocus:function(){return this._strongFocus},focus:function(t){if(!this.get_isDisposed()){this._focusBody();var e=this._selectedRow;if(!e&&this.get_rowCount()>0&&(e=this._getRow(0),this._setSelectedRow(e)),e)if(this.get_readOnly())this._focusRowsTable(t);else{this._focusRowFirstCell(e);var i=this._getEditingColumnIndex();if(i>=0)this._focusRowCell(e,i);else{this._focusRowFirstCell(e)||this._focusRowsTable()}}this._notifyFormFocusControl()}},_scrollToTop:function(){var t=this._body;t&&t.scrollTop>0&&(t.scrollTop=0)},_notifyFormFocusControl:function(){var t=this.get_form();if(t){var e=t.get_focusedControl();t.set_focusedControl(this),window.focusedControl=this;var i=this.get_events().getHandler("_focus");i&&e!=this&&i(this)}},setRowsHint:function(t){var e=this._rows;e&&(e.title=t)},setRowHint:function(t,e){this._checkRowIndex(t);this._getRow(t).title=$common.htmlDecode(e)},setRowBgColor:function(t,e){this._setRowCellColor(t,"_bgColor",e)},setRowFontColor:function(t,e){this._setRowCellColor(t,"_fontColor",e)},_setRowCellColor:function(t,e,i){this._checkRowIndex(t);for(var n=this._getRow(t),o=this._getFirstColumnCellIndex(),s=$common.getChildrenByTagName(n,"td"),r=this.get_columnCount(),a=0;a<r;a++){s[o+a][e]=i}this._setRowStyle(n,_Z_41.normal)},setRowColumnBgColor:function(t,e,i){this._checkRowIndex(t);var n=this._getRow(t),e=this._internalGetColumn(e),o=this._getRowCell(n,e.get_index());o._bgColor=i,o._columnBgColor=i,this._setRowStyle(n,_Z_41.normal)},setRowColumnEnabled:function(t,e,i){this._checkRowIndex(t);var n=this._getRow(t);if(!(e=this._internalGetColumn(e)).setEditable)throw Error.invalidOperation(String.format("列“{0}”不支持 setRowColumnEnabled",e.get_dataField()));var o=this._getRowCell(n,e.get_index());e.setEditable(i,o)},setRowColumnVisible:function(t,e,i){this._checkRowIndex(t);var n=this._getRow(t),e=this._internalGetColumn(e),o=this._getRowCell(n,e.get_index()).firstChild;o&&o.tagName&&$dom.setCssClass(!i,o,"dnone")},setRowVisible:function(t,e){this._checkRowIndex(t);var i=this._getRow(t);$dom.setVisible(i,e),this.isFrozenGrid()&&(i=this._getFrozenRow(t),$dom.setVisible(i,e))},add_rowMouseHover:function(t){this.get_events().addHandler("rowMouseHover",t)},remove_rowMouseHover:function(t){this.get_events().removeHandler("rowMouseHover",t)},get_mouseHoverRowData:function(){return this._getRowDataByRowElement(this._mouseHoverRow)},_getRowIndex:function(t){var e=t.getAttribute("_rowIndex");return"string"==typeof e?parseInt(e):e},get_mouseHoverRowIndex:function(){return this._mouseHoverRow?this._getRowIndex(this._mouseHoverRow):-1},get_activeRowData:function(){var t=this.get_mouseHoverRowData();return t||this.get_selectedRowData()},add_bodyMouseOut:function(t){this.get_events().addHandler("bodyMouseOut",t)},remove_bodyMouseOut:function(t){this.get_events().removeHandler("bodyMouseOut",t)},add_tableMouseOut:function(t){this.get_events().addHandler("tableMouseOut",t)},remove_tableMouseOut:function(t){this.get_events().removeHandler("tableMouseOut",t)},_gridScrollToStart:function(){this._noScrollToStart?delete this._noScrollToStart:this._body&&this._body.scrollLeft>0&&(this._body.scrollLeft=0,this._bodyScroll())},_gridScroll:function(){this._body.scrollLeft>0&&this._bodyScroll()},_bodyScroll:function(t){if(!this.get_isDisposed()){var e=this._body.scrollLeft;this._headerBar&&(this._headerBar.scrollLeft=e),this._footerBar&&(this._footerBar.scrollLeft=e),this._filterBar&&this._filterBar.scrollLeft(e),this.isFrozenGrid()&&(this._frozenBody.scrollTop=this._body.scrollTop,this._frozenBody.scrollWidth-2>this._frozenBody.clientWidth&&(this._frozenHeaderBar&&(this._frozenHeaderBar.scrollLeft=e),this._frozenBody.scrollLeft=e,this._frozenFooterBar&&(this._frozenFooterBar.scrollLeft=e)));var i=this._body.scrollTop+this._body.clientHeight==this._body.scrollHeight;i&&this.showNextMoreRows(),t&&this._doScroll(i)}},_doScroll:function(t){var e=this.get_events().getHandler("_bodyScroll");if(e){this._bodyScrollTimer&&(clearTimeout(this._bodyScrollTimer),delete this._bodyScrollTimer);var i="down";this._topV||(this._topV=this._body.scrollTop),this._leftV||(this._leftV=this._body.scrollLeft);var n=this._body.scrollTop,o=this._body.scrollLeft;n<this._topV?i="up":n>this._topV&&(i="down"),o<this._leftV?i="left":o>this._leftV&&(i="right"),this._topV=n,this._leftV=o;var s=this;this._bodyScrollTimer=setTimeout(function(){var n=new _Z_269(s,t,i);e(s,n)},100)}},get_visibleColumns:function(){if(!this._body)return this._columns;var t=this._body.scrollWidth,e=this._body.clientWidth,i=this._body.scrollLeft+e;if(i==t)return this._columns;for(var n=this.get_showRowNo()?this.get_rowNoColumnWidth():0,o=[],s=0,r=this._columns.length;s<r;s++){var a=this._columns[s];if(o.push(a),a.get_visible()&&(n+=a.get_width())>=i)break}return o},_tableMouseOut:function(t){if(this._mouseInTable){this._mouseInTable=!1,this._clearMouseOver(),this._rowsMouseOut();var e=this.get_events().getHandler("tableMouseOut");if(e){e(this,new _Z_182(!1,t.clientX,t.clientY,null,t))}}},_bodyMouseOut:function(t){if(!$app.isDraging){this._rowsMouseOut(),this._clearMouseOver();var e=this.get_events().getHandler("bodyMouseOut");if(e){e(this,new _Z_182(!1,t.clientX,t.clientY,null,t))}}},_tableMouseMove:function(t){if(!$app.isDraging)if(this._checkEventInTable(t))if(this._mouseInTable=!0,this._clearMouseOver(),this.isFrozenGrid())this._mouseMoveSync(t);else{var e=this;e._mouseHoverTimer=setTimeout(function(){e._mouseMoveSync(t)},e._mouseHoverTime)}else this._tableMouseOut(t)},_mouseMoveSync:function(t){if(!this.get_isDisposed()){var e=this._getEventTargetRow(t);this._rowsMouseOut(e),e&&(this._mouseHoverRow=e,this._rowsMouseOver(e,t))}},_rowsMouseOut:function(t){this._mouseHoverRow&&this._mouseHoverRow!==t&&(this._setRowStyle(this._mouseHoverRow,_Z_41.normal),delete this._mouseHoverRow)},_clearMouseOver:function(){this._mouseHoverTimer&&(clearTimeout(this._mouseHoverTimer),this._mouseHoverTimer=null)},_rowsMouseOver:function(t,e){this.doRowMouseHover(e,t),this._setRowStyle(t,_Z_41.hover);var i=this._getRowIndex(t);this.isEmptyRow(i)||this._doCellWordWrap(t,e)},_doCellWordWrap:function(t,e){if(!this.get_wordWrap()){var i=this._hoverColumn;if(!i){var n=this._getEventTargetCell(t,e);if(!n)return;i=this._getCellColumn(n)}i&&!i.getIsCommandColumn()&&Object.isUndefinedOrNull(i._type)&&this._handleNoWrapTextHint(e,i.get_hint())}},doRowMouseHover:function(t,e){var i=null,n=this._getEventTargetCell(e,t);n&&(i=this._getCellColumn(n));var o=this._getRowIndex(e);this._hoverColumn=i,i&&i.doMouseOver?i.doMouseOver(t,o):this.hasTips&&($common.hideToolTip(),delete this.hasTips);var s=this.get_events().getHandler("rowMouseHover");if(s){s(this,new _Z_182(!0,t.clientX,t.clientY,i,t,o))}},_handleNoWrapTextHint:function(t,e){var i=t.target,n=$common.getFirstParentByClassName(i,"GridBodyCell","GridBody");if(n&&!i.title&&!i["data-title"]){var o="",s=n.offsetWidth,r=window.__calcWidthDiv;r||(r=window.__calcWidthDiv=$common.createClassDiv("GridBodyCellText GridHintNoWrapCell"),document.body.appendChild(r)),r.innerText=i.innerText,r.offsetWidth>=s&&(o=i.innerText,o=$common.clearHTMLTag(o).replace(/&nbsp;/gi," ")),o||e?i["cell-title"]=o||e||"":delete i["cell-title"]}},_footerMouseOver:function(t){this._handleNoWrapTextHint(t)},get_mouseHoverTime:function(){return this._mouseHoverTime},set_mouseHoverTime:function(t){this._mouseHoverTime=t},_clearMouseHoverTimer:function(){this._mouseHoverTimer&&(this._mouseHoverTimer=null,clearTimeout(this._mouseHoverTimer),delete this._mouseHoverTimer)},_doShowEditorEvents:function(t){var e=t.target,i=this._getEventTargetRow(t);if(!this._curRow||this._curRow==i)if(i){this._activeRow=i;var n=this._getEventTargetCell(i,t);if(n){var o=this._getCellColumn(n);if(!this._activeColumn||o==this._activeColumn)if(this._activeColumn=o,o)if(o._activeElement=e,this._isRowSelectable(i)){i!=this._selectedRow&&this._setSelectedRow(i),!this.get_readOnly()&&o._isRowAllowEditor(i)?(this._showEditor(n,!1,o),this.setActiveCell(n,o)):(this.setActiveCell(n,o),this._doFocusColumnChange(o));var s=this._multiSelectColumn;s&&s.get_toggleByClickRow()&&!o.getIsCommandColumn()&&!s.get_readOnly()&&o.get_readOnly()&&s.get_visible()&&o!=s&&asyncCall($createDelegate(this,function(){this._toggleSelectedRowSelected()}))}else this.setActiveCell(n,o,!0);else this.setActiveCell(n,o,!0)}}else this._activeRow=null},_doRowClick:function(t,e,i){e=null!==e?e:this._activeRow?this._getRowIndex(this._activeRow):this._selectedRowIndex,this._activeColumn&&this._activeColumn.raiseClick&&this._activeColumn.raiseClick(e,i);var n=this.get_events().getHandler("rowClick");if(n){n(this,new _Z_192(e,t,i))}},_checkEventInTable:function(t,e){return e=e||[this._rowsTable,this._frozenRowsTable],$craba.contains(t.target,e)},_tableMouseWheel:function(t){if(this._allowMouseWheel&&this._checkEventInTable(t)){var e=0,i=t.wheelType,n=this.get_recordCount();i<0?e=this._scrollUsePageSize&&n>30?Sys.UI.Key.pageUp:Sys.UI.Key.up:i>0&&(e=this._scrollUsePageSize&&n>30?Sys.UI.Key.pageDown:Sys.UI.Key.down),e>0&&(t.keyCode=e,this._rowsKeyDown(t,!0))}},_tableMouseUp:function(t){this._checkEventInTable(t)&&(t.button==Sys.UI.MouseButton.leftButton?(this._checkDrag&&(this._clearStyle(),this._saveSelectRowIndex(),this._checkDrag=!1),$gridExt._isResizing||$app.isDraging||(this._processDragEvent(!1),this._doRowsMouseUp(t))):this._doRowsMouseUp(t))},_doHeaderClick:function(t){var e=this.get_events().getHandler("headerClick");if(e){var i=t.target;if($dom.hasClass(i,"GridHeaderCaptionText")){for(var n=i.parentNode,o=null,s=!1,r=0,a=this.get_columnCount();r<a;r++)if((o=this.get_columns()[r])._elements.header==n){s=!0;break}s&&(this._activeColumn=o,e(this,{column:o,event:t}))}}},_doRowsMouseUp:function(t){this.endEdit(),this._doShowEditorEvents(t),this._activeColumn&&this._doRowClick(this._activeColumn,null,t),this._prevCell=this._activeCell},_tableMouseDown:function(t){if(this._checkEventInTable(t,[this._headerBar,this._frozenHeaderBar]))this._doHeaderClick(t);else if(this._checkEventInTable(t)&&!$gridExt._isResizing){this._initDrag(t),this._clickTarget=t.target,this._activeColumn=null;var e=this._getEventTargetRow(t);if(e){this._checkMultiSelectedRows(t,e);var i=this._getEventTargetCell(e,t);i&&(this._activeColumn=this._getCellColumn(i)),e!=this._selectedRow?(this._setSelectedRow(e,!0),this._curRow=e):this._curRow=null,this._notifyFormFocusControl()}else this._curRow=null;var n=!0;Sys.Browser.isStandard&&(n=!this.get_allowCopy()),(n=n||this.get_allowDrag())&&t.cancel(),$craba.raiseMouseDown(t)}},_checkMultiSelectedRows:function(t,e){if(this._allowMultiSelectedRow){var i=this._getRowIndex(e);if(this._startRowIndex=i,t.ctrlKey)this._hasShift=!1,0==this._multiRowIndexs.length&&this._selectedRow!=e&&this._saveSelectRowIndex(),Array.contains(this._multiRowIndexs,i)||this._multiRowIndexs.push(i);else if(t.shiftKey&&this._selectedRow){this._hasShift||(this._firstRow=this._selectedRow),this._hasShift=!0;var n=this._getRowIndex(this._firstRow),o=Math.max(i,n),s=Math.min(i,n);this._clearStyle(),this._multiRowIndexs=[];for(var r=s;r<=o;r++){this._multiRowIndexs.push(r);e=this._getRow(r);this._setRowStyle(e,_Z_41.selected)}}else this._hasShift=!1,Array.contains(this._multiRowIndexs,i)?this._checkDrag=!0:(this._clearStyle(),this._multiRowIndexs=[i],this._checkDrag=!1)}},_saveSelectRowIndex:function(){this._selectedRow?this._multiRowIndexs=[this._selectedRowIndex]:this._multiRowIndexs=[]},_clearStyle:function(t){var e=this._multiRowIndexs.length;if(!(e<2)||t)for(var i=0;i<e;i++){var n=this._multiRowIndexs[i],o=this._getRow(n);this._setRowStyle(o,_Z_41.none,!0)}},get_dragField:function(){return this._dragField},set_dragField:function(t){this._dragField=t},set_tabOnNext:function(t){this._tabOnNext=t},get_tabOnNext:function(){return this._tabOnNext},get_allowDrag:function(){return this._allowDrag},set_allowDrag:function(t){this._allowDrag=t,this._allowMultiSelectedRow=t},get_dragOrSelect:function(){return this._allowDrag||this._allowMultiSelectedRow},get_allowMultiSelectedRow:function(){return this._allowMultiSelectedRow},set_allowMultiSelectedRow:function(t){this._allowMultiSelectedRow=t},get_allowDrop:function(){return this._allowDrop},set_allowDrop:function(t){this._allowDrop=t},_getCellColumnIndex:function(t){if(!t)return-1;var e=t.getAttribute("_columnIndex");return"string"==typeof e?parseInt(e):e},_getCellColumn:function(t){var e=this._getCellColumnIndex(t);return e>=0?this.getColumnByIndex(e):null},_tableDblClick:function(t){if(!t||this._checkEventInTable(t)){var e=this._selectedRow;if(e&&(!t||this._getEventTargetRow(t)==e)){var i=!0,n=null;if(t){this.isFrozenGrid()&&(e=this._getEventTargetRow(t,!0));var o=this._getEventTargetCell(e,t);if(o){if(!(n=this._getCellColumn(o)))return;n.CurrentCell=o,n&&(this.get_readOnly()||n.get_immediateEditor()&&(i=!1),i&&!n.get_isEditing()&&(i=!n.doReadOnlyDblClick(t)),n._hasPage&&(i=!1,delete n._hasPage))}}else{this.get_events().hasEvent("rowEnterPress")&&(this.doRowEnterPress(),i=!1)}i&&this.doRowDblClick(n,t)}}},add_headerClick:function(t){this.get_events().addHandler("headerClick",t)},remove_headerClick:function(t){this.get_events().removeHandler("headerClick",t)},add_rowEnterPress:function(t){this.get_events().addHandler("rowEnterPress",t)},remove_rowEnterPress:function(t){this.get_events().removeHandler("rowEnterPress",t)},doRowEnterPress:function(t){var e=this.get_events().getHandler("rowEnterPress");if(e){var i=new _Z_152,n=null;try{e(this,i)}catch(s){n=s}var o=i.get_cancel();if(o&&t&&t.cancel(),n)throw n;return o}return!1},add_rowDblClick:function(t){this.get_events().addHandler("rowDblClick",t)},remove_rowDblClick:function(t){this.get_events().removeHandler("rowDblClick",t)},doRowDblClick:function(t,e){$craba.raiseMouseDown(e);var i=this.get_events().getHandler("rowDblClick");i&&i(this,t)},get_selectedRowIndex:function(){return this._selectedRow?this._getRowIndex(this._selectedRow):-1},set_selectedRowIndex:function(t){this.get_form()&&!this.get_form().get_isDisposed()&&t>=0&&t<this.get_rowCount()&&(this._setSelectedRow(this._getRow(t)),this._clearStyle(!0))},add_selectionChanged:function(t,e){return this.get_events().addHandler("selectionChanged",t,e)},remove_selectionChanged:function(t){this.get_events().removeHandler("selectionChanged",t)},set_selectionDelayTimer:function(t){this._selectionDelayTimer=t},get_selectionDelayTimer:function(){return this._selectionDelayTimer},doSelectionChanged:function(){var t=this.get_events().getHandler("selectionChanged");if(t&&!this._cancelRowChangeHandler){if(this._selectionDelayTimer<=0)return t(this);var e=this;e._selectionDelayTool&&clearTimeout(e._selectionDelayTool),e._selectionDelayTool=setTimeout(function(){t(e),e._selectionDelayTool=null},this._selectionDelayTimer)}},get_selectedRowData:function(t,e){this._closeDropDown(!0);var i=this._getRowDataByRowElement(this._selectedRow);if(!i)return null;if(this.hasMergeRows()&&!t){var n=i[this._dataGroupField];if(!this._mergeGroupData)return i;if(!(a=this._mergeGroupData[n]))return e?Object.clone(i):i;if(!this._clickTarget)return i;var o=$common.getFirstParentByClassName(this._clickTarget,"GridBodyCell","GridBodyRow");if(!o)return i;var s=$common.getFirstChildByClassName(o,"MergeCell");if(!s)return i;var r=s.childNodes;return $dom.hasClass(this._clickTarget,"GridBodyCellText")||$dom.hasClass(this._clickTarget,"GridDynamicButtonBody")||(this._clickTarget=this._clickTarget.parentNode),index=Array.indexOf(r,this._clickTarget),index<=0?i:a[index-1]}if(t){var a=[];return a.push(i),this._addMergeRowData(i,a),e?Object.clone(a):a}return e?Object.clone(i):i},clearSelectedRowData:function(){var t=this._selectedRow;if(t){var e=this._getRowIndex(t),i=this.get_dataController().clearRecord(e);this.modifySelectedRowData(i)}this._checkMultiSelectColumn()},_getRowDataByRowElement:function(t){if(!t)return null;var e=this._getRowIndex(t);return this.get_dataController().getRecord(e)},_showFirstRowEditor:function(){var t=this._getRow(0);t&&(this._setSelectedRow(t,!0),this._checkShowImmediateEditor(t))},_checkShowImmediateEditor:function(t){if(!this.get_readOnly()&&!this.get_isDisposed()&&this.defaultShowEditor)for(var e=0,i=this.get_columnCount();e<i;e++){var n=this.getColumnByIndex(e);if(n.get_immediateEditor()){var o=this._getRowCell(t,e);o&&this._doCellBeginEdit(n,o,t,!1)&&n._doShowEditor(o,!1)}}},_setSelectedRow:function(t,e,i){return!(t&&!i&&!this._isRowSelectable(t))&&(this._selectedRow!=t&&(!this._beforeSelectedRow(t)&&(t&&(this._selectedRowIndex=this._getRowIndex(t)),this.refreshSelectedRowStyle(),this._doSelectedRow(t,e),!0)))},_beforeSelectedRow:function(t){if(this._selectedRow){if(this.get_readOnly()||this._hideEditor(),this._doSelectionBeforeChanged())return!0;if(!this._selectedRow)return;var e=this._selectedRow;this._selectedRow=t,this._setRowStyle(e,_Z_41.none)}this._selectedRow=t},_doSelectedRow:function(t,e){this._selectedRow&&(e&&!this.get_autoHeight()||this._isChildGrid()||this._scrollSelectedRowToView(),this.doSelectionChanged(),this._doImmediateEditor())},_doImmediateEditor:function(){for(var t=this._selectedRow,e=0,i=this.get_columnCount();e<i;e++){var n=this.getColumnByIndex(e);if(n.get_immediateEditor()){var o=this._getRowCell(t,e);this._doCellBeginEdit(n,o,t,!1)}}},_scrollSelectedRowToView:function(){this.get_showScrollBar()&&$common.scrollToView(this._selectedRow,this._body,this.get_element())},add_selectionBeforeChanged:function(t){this.get_events().addHandler("selectionBeforeChanged",t)},remove_selectionBeforeChanged:function(t){this.get_events().removeHandler("selectionBeforeChanged",t)},_doSelectionBeforeChanged:function(){var t=this.get_events().getHandler("selectionBeforeChanged");if(t&&!this._cancelRowChangeHandler){this._cancelRowChangeHandler=!0;var e=new _Z_152;if(t(this,e),e.get_cancel())return!0;this._cancelRowChangeHandler=!1}return!1},add_selectionColumnChanged:function(t){this.get_events().addHandler("selectionColumnChanged",t)},remove_selectionColumnChanged:function(t){this.get_events().removeHandler("selectionColumnChanged",t)},_blurFromColumn:function(){var t=this;setTimeout(function(){if(!t.get_isDisposed()){var e=!1,i=t.findForm();if(i)if(t.lastAltKey)delete t.lastAltKey;else{var n=i.get_focusedControl();if(n)if(n==t)e=!1;else if(n.get_owner){e=n.get_owner()!=t}else e=!0;else e=null==$common._lastDropDownEdit;if(e){var o=t.get_events().getHandler("selectionColumnChanged");t._hideEditor(),o&&o(t),n||(window.focusedControl=t,i.set_focusedControl(t))}}}},100)},get_owner:function(){return this._owner},set_owner:function(t){this._owner=t},add_pagerPageBeforeChanged:function(t){this.get_events().addHandler("pagerPageBeforeChanged",t)},remove_pagerPageBeforeChanged:function(t){this.get_events().removeHandler("pagerPageBeforeChanged",t)},_internalDoPagerPageBeforeChanged:function(t){this._initLoadedItems();var e=this.get_events().getHandler("pagerPageBeforeChanged");if(e){var i=new _Z_152;return i.pageIndex=t,e(this,i),!i.get_cancel()}return!0},refreshSelectedRowStyle:function(){this._selectedRow&&this._setRowStyle(this._selectedRow,_Z_41.selected)},refreshStyle:function(){for(var t=0,e=this.get_rowCount();t<e;t++){var i=this._getRow(t);this._setRowStyle(i,_Z_41.normal)}},_initRowStyle:function(t){t&&this._setRowStyle(t,_Z_41.normal)},get_activeColumn:function(){return this._activeColumn},get_prevCell:function(){return this._prevCell},get_activeCell:function(){return this._activeCell},setActiveCell:function(t,e,i){if(t!=this._activeCell&&(this._activeCell&&$dom.removeCssClass(this._activeCell,"active"),this._activeColumn=e,this._activeCell=t,$dom.addCssClass(t,"active"),!i)){var n=this.get_events().getHandler("activeCell");n&&n(this)}},add_activeCell:function(t,e){this.get_events().addHandler("activeCell",t,e)},remove_activeCell:function(t){this.get_events().removeHandler("activeCell",t)},add_rowClick:function(t,e){this.get_events().addHandler("rowClick",t,e)},remove_rowClick:function(t){this.get_events().removeHandler("rowClick",t)},get_pageSize:function(t){t&&this._initAutoPageSize(!0);var e=this.findPager();return e&&(this._pageSize=e.get_pageSize(t)),this._pageSize},set_pageSize:function(t){this._pageSize=t;var e=this.findPager();e&&e.set_pageSize(t)},_focusRowsTable:function(t){if(this.get_strongFocus()&&this._body){var e=this._rowsTable,i=this._body,n=i.scrollTop;asyncCall(function(){try{e.focus(),t?i.scrollTop=0:n>0&&i.scrollTop!=n&&(i.scrollTop=n)}catch(o){}})}},_doEnterKeyDown:function(t,e,i){e?this.doRowEnterPress(t)||this._hasEditor()||this._focusRowFirstCell(i):this._tableDblClick()},_rowsKeyDown:function(t,e){var i=t.keyCode,n=this.get_readOnly(),o=this._selectedRow,s=!1;!n&&o&&(s=!0);var r=o?this._getRowIndex(o):-1,a=this.get_rowCount(),l=this.get_recordCount(),h=r,d=this.findPager(),_=!1;this.lastAltKey=t.altKey;var u=!1;switch(i){case Sys.UI.Key.left:case Sys.UI.Key.right:break;case Sys.UI.Key.enter:this._doEnterKeyDown(t,s,o),_=!0;break;case Sys.UI.Key.esc:s&&this._hasEditor()&&(this._exitEdit(),_=!1);break;case Sys.UI.Key.up:r>=0&&(h=r-1),u=!0;break;case Sys.UI.Key.down:r>=0&&(h=r+1),u=!0;break;case Sys.UI.Key.pageUp:e||!d||d.get_showAll()?r>=0&&(h=r-this.get_pageSize())<0&&(h=s?0:r-1):(this.endEdit(),d.prevPage(),_=!0),u=!0;break;case Sys.UI.Key.pageDown:if(e||!d||d.get_showAll()){if(r>=0){var c=this.get_pageSize();c>l&&(c=parseInt(l/4)),(h=r+c)>=l&&(h=s?l-1:r+1)}}else this.endEdit(),d.nextPage(),_=!0;u=!0;break;case Sys.UI.Key.home:d&&this.get_readOnly()?(this.endEdit(),d.firstPage(),_=!0):n&&(h=0);break;case Sys.UI.Key.end:d&&this.get_readOnly()?(this.endEdit(),d.lastPage(),_=!0):n&&(h=l-1);break;case Sys.UI.Key.del:_=this._doDelKeyDown(t);break;case Sys.UI.Key.space:_=this._doSpaceKeyDown(t,o)}this._keyCode=i,(_=this._moveSelectedRow(h,r,a,l,s,d,_,t,u))?t.cancel():(this.doRowKeyDown(t),this._scrollBar&&e&&this._scrollBar._mouseWheelY(t))},_doDelKeyDown:function(t){if(this._allowDelRow&&(t.ctrlKey||t.altKey||t.shiftKey)){if(!this.get_readOnly()&&!this.get_modifyOnly())return this._checkDeleteSelectedRow(),this.focus(),!0}return!1},_doSpaceKeyDown:function(t,e){var i=this._multiSelectColumn;return!(!i||i.get_readOnly()||!i.get_visible()||!this._getHasNoOtherEditColumn())&&(e&&(t.cancel(),this._toggleSelectedRowSelected()),!0)},_getExpandRowIndex:function(t){return this._getRowIndex(t)},_getActiveColumnIndex:function(){var t=this._activeColumn;return t?t.get_index():-1},_moveSelectedRow:function(t,e,i,n,o,s,r,a,l){if(t==e)return r;var h=this._checkChildGrid(t,e,n);if(null!=h)return h;if(-1==t&&null==e?t=i-2:this._isExpandRow(t)?t++:e<0&&null!=e&&(t=0),$settings.GridDefaultChangePageByRecord&&(i=n),t>=0&&t<i){var d=-1;o&&(d=this._getEditingColumnIndex());var _=this._getRow(t),u=this._setSelectedRow(_,!1,!0);if(d>=0&&this.defaultShowEditor){this._focusRowCellWrap(_,d,null,l)||asyncCall($createDelegate(this,this._mustbeFocusNext))}r=u}else if(r||!s&&!this._isLazyPageSize(!0)){if(t>=i)return!1}else t<0?(this.endEdit(),s&&s.prevPage()):t>=n?(this.endEdit(),s&&s.nextPage()):t>=this._lazyIndex*this._lazyPageSize&&this.showNextMoreRows();return r},_isExpandRow:function(t){var e=this._getRow(t);return e&&e.getAttribute("_isExpandDetail")},_mustbeFocusNext:function(){var t=this._selectedRow;t&&(t.children[0].focus(),this._notifyFormFocusControl())},_hasChildGrid:function(){return!!this._expandChildForms&&Object.keys(this._expandChildForms).length>0},_checkChildGrid:function(t,e,i){if(this._hasChildGrid())return!0;if(!this._isChildGrid())return null;var n=this.get_form(),o=n._parentGrid;return-1==t&&0==e?!!this._isFirstTop&&(this._isFirstTop=!1,o.set_selectedRowIndex(n._parentGridRowIndex-1),!0):t>=i?(o.set_selectedRowIndex(n._parentGridRowIndex+1),!0):(this._isFirstTop=!0,this._isFirstBottom=!0,null)},_getHasNoOtherEditColumn:function(){for(var t=0,e=this.get_columnCount();t<e;t++){var i=this.getColumnByIndex(t);if(!(i instanceof Sys.UI.Controls.MultiSelectColumn)&&!i.get_readOnly())return!1}return!0},_exitEdit:function(){this._hideEditor(),this.refreshSelectedRowStyle(),this._focusRowsTable()},add_rowKeyDown:function(t,e){this.get_events().addHandler("rowKeyDown",t,e)},remove_rowKeyDown:function(t){this.get_events().removeHandler("rowKeyDown",t)},doRowKeyDown:function(t){var e=this.get_events().getHandler("rowKeyDown");return!!e&&(!!e(this,t)&&(t.cancel(),!0))},set_scrollUsePageSize:function(t){this._scrollUsePageSize=t},get_scrollUsePageSize:function(){return this._scrollUsePageSize},_headerContextMenu:function(t){this.get_enabled()&&(t.cancel(),this._initHeaderMenu(),this._initColumnVisibleItem(t),this._headerPopupMenu.popupAt(t.clientX-18,t.clientY+10),$common.hideToolTip(3))},_initHeaderMenu:function(){if(!this._headerPopupMenu){var t=[{properties:{text:$craba.getLangPro("列配置"),icon:"aicon-shezhi"},events:{click:$createDelegate(this,this._headerColumnConfigItemClick)}},{id:"hideColumn",properties:{text:$craba.getLangPro("隐藏此列"),icon:"aicon-yincang"},events:{click:$createDelegate(this,this._headerColumnVisibleItemClick)}},{id:"sort",properties:{text:$craba.getLangPro("取消排序"),icon:"aicon-paixu"},events:{click:$createDelegate(this,this.clearSortFlag)}}];this._headerPopupMenu=Sys.UI.Controls.Menu.create(this.get_form(),{id:this.get_idPart()+"_headerPopup",items:t})}},_initColumnVisibleItem:function(t){for(var e=t.target;!$dom.hasClass(e,"GridHeader")&&"TD"!=e.tagName;)e=e.parentNode;var i=this._headerPopupMenu.get_idPart(),n=this.get_form()[i+"_hideColumn"];n.set_visible(!1);var o=this.get_form()[i+"_sort"];o.set_visible(!1);var s=e.getAttribute("id");if(s){var r=this.get_id()+"_column",a=parseInt(s.replace(r,""));if(!(isNaN(a)||a>this._columns.length-1||a<0)){var l=this.getColumnByIndex(a);l.get_isSorted()&&o.set_visible(!0),l.get_allowConfig()&&this._checkColumnHide(l)&&(n._column=l,n.set_visible(!0))}}},_headerColumnConfigItemClick:function(t){this.config(!0)},_headerColumnVisibleItemClick:function(t){this._noScrollToStart=!0;var e=t._column;e.set_visible(!1,!0);var i=this.get_frozenColumnCount();i>0&&(e.get_frozenIndex()<i&&this.setFrozenColumnCount(--i),this._internalFrozenRowsHeight()),this._configDataChanged=!0},_checkColumnHide:function(t){for(var e=0,i=this._columns,n=0,o=i.length;n<o;n++){if((a=i[n]).get_visible()&&a.get_allowConfig()&&e++,e>2)break}if(e<=2)return!1;for(var s=t.get_bandIndex(),r=0,n=0,o=i.length;n<o;n++){var a=i[n];if(a.get_bandIndex()==s&&a.get_visible()&&r++,r>1)break}return!(r<=1)},_gridContextMenu:function(t){if(this._checkEventInTable(t)){var e=this.get_events().getHandler("contextMenu");if(e){var i=new _Z_152(t);if(i.event=t,e(this,i),i.menu&&(this._customMenu=i.menu),i.get_cancel())return void t.cancel()}if(t.target!=this._body||this._useBodyMenu){this._activeColumn&&this._activeColumn._rightClick(t);var n=this.get_popupMenu();if(n){var o=$craba.findControl(n,this.get_form());if(!o)throw Error.abort("Grid关联的PopupMenu属性缺少定义");o.TargetGrid=this,o.popupAt(t.clientX,t.clientY),t.cancel()}}}},_hideMenu:function(){this._customMenu&&!this._customMenu.get_isDisposed()&&this._customMenu.hide();var t=this.get_popupMenu();t&&this.get_form()[t]&&this.get_form()[t].hide()},add_contextMenu:function(t,e){this.get_events().addHandler("contextMenu",t,e)},remove_contextMenu:function(t){this.get_events().removeHandler("contextMenu",t)},add_multiSelecting:function(t,e){this.get_events().addHandler("multiSelecting",t,e)},remove_multiSelecting:function(t){this.get_events().removeHandler("multiSelecting",t)},add_multiSelected:function(t,e){this.get_events().addHandler("multiSelected",t,e)},remove_multiSelected:function(t){this.get_events().removeHandler("multiSelected",t)},focusSelectedRowColumn:function(t,e){var i=!0;if(this._body.scrollTop>0){i=$common.findFocusedGrid(this.get_form())!=this}i&&this._focusRowsTable(),this._focusRowColumn(this._selectedRow,t,e)},focusRowColumn:function(t,e){this.set_selectedRowIndex(t),this._focusRowColumn(this._getRow(t),e)},focusNextRowColumn:function(t){var e=this._selectedRow;if(e){var i=this._getNextRow(e);i&&(this._setSelectedRow(i),t=this._internalGetColumn(t),this._focusRowCell(i,t.get_index(),!1,!0))}},_focusRowColumn:function(t,e,i){if(t){var n=(e=this._internalGetColumn(e)).get_index();if(!this._focusRowCell(t,n,!1,!0,i)){var o=this._getNextRow(t);o&&(this._setSelectedRow(o),this._focusRowCell(o,n,!1,!0))}}},_focusNextCell:function(t,e){var i=e?e.parentNode:this._selectedRow;if(i){var n=t.get_index()+1;this._focusRowCellOrNextRow(i,n),this.refreshScrollBar()}},_focusRowCellOrNextRow:function(t,e){if(this.isFrozenGrid()&&e>=this._getFrozenColumnRealCount()){var i=this._getRowIndex(t);t=this._getRow(i)}if(!this._focusRowCell(t,e)){var n=this._getNextRow(t);n?(this._setSelectedRow(n),this._focusRowCell(n,0)):this.endEdit()}},_getNextRow:function(t){var e=this.get_rowCount(),i=!this.get_modifyOnly(),n=i?e:this.get_recordCount(),o=null,s=this._getRowIndex(t);if(s<n-1){if(o=this._getRow(s+1),s==n-2&&i){var r=this._checkAppendRow(e);r&&(this._setRowStyle(r,_Z_41.normal),this.get_showScrollBar()&&$common.scrollToView(r,this._body,this.get_element()))}}else i&&!(o=this._checkAppendRow(e))&&n>0&&(o=this._getRow(0));return o},_checkAppendRow:function(t){var e=this.get_maxRowCount();if(0==e||t<e){var i=this.doRowAdd(t);if("object"==typeof i&&i._cancel)return;var n=this._appendRow();return this._initGridHeight(),!0===i&&this._initRowData(n,t),n}return null},doRowAdd:function(t){var e=this.get_events().getHandler("rowAdd");if(!e)return!1;var i=new _Z_190(null,t);e(this,i);var n=i.get_data();return n?(this._appendNewDatas(n),this.get_dataController().modifyRecord(t,n),!0):i},_refreshPagerInc:function(){var t=this.findPager();if(t&&!t._hasDataSource){var e=this.get_recordCount();t.get_itemCount()!=e&&(t.set_itemCount(e),t._initSummary())}},checkCanAppend:function(){var t=this.get_recordCount(),e=this.get_maxRowCount();if(e>0&&t>=e)throw Error.abort("已达到最大数据行数 "+e)},_focusPrevCell:function(t){var e=t.parentNode,i=this._getCellColumnIndex(t)-1;if(this.isFrozenGrid()&&i==this._getFrozenColumnRealCount()-1){n=this._getRowIndex(e);e=this._getFrozenRow(n)}if(!this._focusRowCell(e,i,!0)){var n,o=null;(n=this._getRowIndex(e))>0&&(o=this._getRow(n-1)),o?(this._setSelectedRow(o),this._focusRowCell(o,this.get_columnCount()-1,!0)):this.focusPrevControl()}return!0},_focusRowCell:function(t,e,i,n,o){if(!this._isRowSelectable(t))return!0;if(!i)return this._doFocusRowCellNext(t,e,this.get_columnCount()-1,n,o);for(var s=this._getFirstColumnCellIndex(),r=$common.getChildrenByTagName(t,"td"),a=e;a>=0;a--){var l=r[s+a];if(this._showEditor(l,!n))return this._doScrollByIndex(a,l,!1),!0}return!1},_doScrollByIndex:function(t,e,i){if(this.refreshScrollBar(),this.isFrozenGrid()){var n=this._getFrozenColumnRealCount();if(i)t==n&&(this._body.scrollLeft="0px");else if(t>n){var o=$common.getBounds(e),s=this._frozenBody.offsetWidth,r=o.x-s;r<0&&(this._body.scrollLeft=-1*r)}}},scrollToColumn:function(t){var e=t.get_headerElement();this._body.scrollLeft=e.offsetLeft+2*e.offsetWidth-this._body.offsetWidth},_focusRowCellWrap:function(t,e,i,n){if(!this._isRowSelectable(t))return!0;var o=this._doFocusRowCellNext(t,e,this.get_columnCount()-1,n);return!o&&e>0&&(o=this._doFocusRowCellNext(t,0,e-1,n)),o},_doFocusRowCellNext:function(t,e,i,n,o){for(var s=this._getFirstColumnCellIndex(),r=$common.getChildrenByTagName(t,"td"),a=e;a<=i;a++){var l=s+a,h=r[l];if(!h)if(a<this._getFrozenColumnRealCount())h=this._getFrozenRowCell(t,a);else{var d=this._getRowIndex(t);t=this._getRow(d),h=this._getRowCell(t,a)}if(!h)return!1;var _=this.getColumnByIndex(l-s);if(_._isRowAllowEditor(t)&&this._showEditor(h,!n,_))return this._doScrollByIndex(a,h,!0),!0;if(!1===o)return!0}return!1},_focusRowFirstCell:function(t){return this._focusRowCell(t,0)},_internalFocusSelectedRowFirstCell:function(){if(this._multiSelectColumn)return!1;var t=this._selectedRow;return t?this._focusRowCell(t,0):void 0},_focusRowLastCell:function(){if(this._multiSelectColumn)return!1;var t=this._selectedRow;return t?this._focusRowCell(t,this.get_columnCount()-1,!0):void 0},add_cellBeginEdit:function(t){this.get_events().addHandler("cellBeginEdit",t)},remove_cellBeginEdit:function(t){this.get_events().removeHandler("cellBeginEdit",t)},add_afterResetConfig:function(t){this.get_events().addHandler("afterResetConfig",t)},remove_afterResetConfig:function(t){this.get_events().removeHandler("afterResetConfig",t)},add_rowRendering:function(t,e){return this.get_events().addHandler("rowRendering",t,e)},remove_rowRendering:function(t){this.get_events().removeHandler("rowRendering",t)},add_cellRendering:function(t,e){return this.get_events().addHandler("cellRendering",t,e)},remove_cellRendering:function(t){this.get_events().removeHandler("cellRendering",t)},_doCellBeginEdit:function(t,e,i,n){if(i||(i=e.parentNode),!i)return!1;!1!==n&&this.setActiveCell(e,t);var o=this._getRowIndex(i),s=this._rowsEnabled;if(s){var r=s[o];if(void 0!==r&&!r)return!1}if(t.getEditable&&!t.getEditable(e))return!1;var a=this.get_events().getHandler("cellBeginEdit");if(a){var l=new _Z_186(o,t.get_index(),t);a(this,l);var h=!l.get_cancel();return t.setEditable&&t.setEditable(h,e),h}return!0},getSelectedRowColumnAllowEdit:function(t){var e=t.column;if(e||(e=t),!e.get_enabled()||e.get_readOnly())return!1;var i=this._getSelectedRowCell(e.get_index());return!!i&&this._doCellBeginEdit(e,i)},add_focusedColumnChanged:function(t){this.get_events().addHandler("focusedColumnChanged",t)},remove_focusedColumnChanged:function(t){this.get_events().removeHandler("focusedColumnChanged",t)},_showEditor:function(t,e,i){if(!i){var n=this._getCellColumnIndex(t);i=this.getColumnByIndex(n)}return!(!i.get_visible()||i.get_readOnly()||e&&!i.get_tabStop())&&(this._activeCell!=t&&this.endEdit(),!!this._doCellBeginEdit(i,t)&&(this._hideMenu(),i._showEditor(t),this._doFocusColumnChange(i),this._notifyFormFocusControl(),!0))},_doFocusColumnChange:function(t){if(this._focusedColumn!=t){this._focusedColumn=t;var e=this.get_events().getHandler("focusedColumnChanged");e&&e(this)}},get_focusedColumn:function(){return this._focusedColumn},_hasEditor:function(){for(var t=this.get_columnCount(),e=0;e<t;e++){var i=this.getColumnByIndex(e);if(i&&i._hasEditor())return!0}return!1},_getEditingColumnIndex:function(){t=this.get_activeColumn();if(t)return t.get_readOnly()?-2:t.get_index();var t;return(t=this.get_focusedColumn())?t.get_index():-1},get_focusedColumn:function(){for(var t=this.get_columnCount(),e=0;e<t;e++){var i=this.getColumnByIndex(e);if(i.get_isEditing())return i}return null},endEdit:function(){this._hideEditor()},_postEditValue:function(){this._hideEditor(),this._selectedRow&&this._doSelectionBeforeChanged()},_closeDropDown:function(t){for(var e=this.get_columnCount(),i=0;i<e;i++){this.getColumnByIndex(i)._closeDropDown(t)}},_hideEditor:function(t){for(var e=this.get_columnCount(),i=0;i<e;i++){var n=this.getColumnByIndex(i);n&&(t&&n._clearChanged(),n._hideEditor())}this._selectedRow&&(this._selectedRow.style.height="")},_getFirstColumnCellIndex:function(){return this.get_showRowNo()?1:0},_getSelectedRowCell:function(t){return this._getRowCell(this._selectedRow,t)},getRowCellText:function(t,e){var i=this.getRowCell(t,e);return i?i.innerText:""},getRowCell:function(t,e){this._checkRowIndex(t);var i=this._getRow(t),e=this._internalGetColumn(e);return this._getRowCell(i,e.get_index())},_getRowCell:function(t,e){if(!t)return null;if(this._mergeRowColumns.length>0&&!this._dataGroupField){for(var i=0,n=t.childNodes.length;i<n;i++){var o=t.childNodes[i];if(this._getCellColumnIndex(o)==e)return o}return null}var s=this._getFirstColumnCellIndex()+e;return s>=0&&s<t.childNodes.length?t.childNodes[s]:void 0},_checkRowStyle:function(t,e){return!this._allowMultiSelectedRow||e==_Z_41.selected||!Array.contains(this._multiRowIndexs,t)},_setGroupRowStyle:function(t,e){if(t.__rowIndex!==undefined)for(var i=t.parentNode.childNodes,n=!1,o=0,s=i.length;o<s;o++){var r=i[o];if(r!=t){if(r.__rowIndex===t.__rowIndex)r.className=e;else if(n)break}else n=!0}},_setRowStyle:function(t,e,i){var n=this._getRowIndex(t);if(i||this._checkRowStyle(n,e)){var o=this.get_columnCount(),s=this._getFirstColumnCellIndex(),r=n<this.get_recordCount()||this._useCustomRendering,a=r?this.get_events().getHandler("cellRendering"):null,l=$common.getChildrenByTagName(t,"td"),h=(e==_Z_41.selected||t==this._selectedRow)&&!this.get_hideSelection(),d=this._getFrozenRow(n),_=d||t,u=this._raiseRowRendering(_,h,n,e),c=this._getRowStyleFast(n,u,e,h);if(t.className=c,this._setGroupRowStyle(t,c),t!=_&&(_.className=c,this._keyCode&&this._mouseHoverRow)){var g=this._mouseHoverRow;if(-1===g.className.indexOf("active")&&-1===g.className.indexOf("hover")){var f=this._getRowIndex(g),m=this._getFrozenRow(f);$dom.addCssClass(g,"hover"),$dom.addCssClass(m,"hover")}}for(var C=0,v=s;C<o;C++,v++){var p=l[v];!this._dataGroupField&&this._mergeRowColumns.length>0&&this._getCellColumnIndex(p)===C||this._setCellStyleFast(n,C,l[v],h,e,r,a,u)}this._keyCode=null}},_initCellStyle:function(t,e){var i=e.parentNode,n=this._getRowIndex(i);this.isFrozenGrid()&&(i=this._getRow(n),e=this._getRowCell(i,t));var o=i==this._selectedRow,s=this.get_events().getHandler("cellRendering");this._setCellStyleFast(n,t,e,o,0,!0,s,null)},_setCellStyleFast:function(t,e,i,n,o,s,r,a){if(i){var l=this.getColumnByIndex(e),h=this._getCellStyleFast(t,l,e,n,o,s,r,i,a);i.className!=h.className&&(i.className=h.className),i.style.cssText=h.cssText?h.cssText:"",this.isFrozenGrid()&&this._initFrozenCellStyle(t,e,h)}},_getFrozenRowCell:function(t,e){if(!t)return null;if(e>this._getFrozenColumnRealCount())return null;var i=$common.getChildrenByTagName(t,"td"),n=this._getFirstColumnCellIndex()+e;return n>=0&&n<i.length?i[n]:null},_getFrozenRow:function(t){if(!this._frozenRows)return null;return $common.getChildrenByTagName(this._frozenRows,"tr")[t]},_initFrozenCellStyle:function(t,e,i){if(!(e>this._getFrozenColumnRealCount())){var n=this._getFrozenRow(t);if(n){var o=this._getFrozenRowCell(n,e);o&&(o.className=i.className,o.style.cssText=i.cssText?i.cssText:"")}}},get_useEvenRowColor:function(){return this._useEvenRowColor},set_useEvenRowColor:function(t){this._useEvenRowColor=t},get_useEvenHeaderColor:function(){return this._useEvenHeaderColor},set_useEvenHeaderColor:function(t){this._useEvenHeaderColor=t},get_useHoverRowColor:function(){return this._useHoverRowColor},set_useHoverRowColor:function(t){this._useHoverRowColor=t},get_hoverRowColor:function(){return this._hoverRowColor},set_hoverRowColor:function(t){this._hoverRowColor=t},get_useMultiRowCaption:function(){return this._useMultiRowCaption},set_useMultiRowCaption:function(t){this._useMultiRowCaption=t},get_useCustomRendering:function(){return this._useCustomRendering},set_useCustomRendering:function(t){this._useCustomRendering=t},_getRowStyleFast:function(t,e,i,n){var o="GridBodyRow";if(n)o+=" active";else if(i==_Z_41.hover)this.isFrozenGrid()&&(o+=" hover");else if((i==_Z_41.normal||i==_Z_41.none||!this.get_useHoverRowColor())&&(this.get_readOnly()||this.get_modifyOnly())&&this.get_useEvenRowColor()){t%2==1&&(o+=" even")}return e&&e._cssClass&&(o+=" "+e._cssClass),o},_getCellStyleFast:function(t,e,i,n,o,s,r,a,l){var h={};if(h.className="",h.cssText="",e.renderRowCellSkin(t,a,h),!e.get_enabled()||!this.get_enabled())return h.className+=e.get_cellCssClass()+"disabled",e.get_visible()||(h.className+=" dnone"),h;s||(s=this._useCustomRendering);var d=!1;o!=_Z_41.normal&&o!=_Z_41.none&&this.get_useHoverRowColor()||(d=!0);var _=null;return this.get_showEditStyle()&&e.get_showEditStyle()&&!e.get_readOnly()&&(_=new _Z_188(t,i,e,a,o)).set_cssClass("DefaultEditor"),s&&r&&r(this,_=_||new _Z_188(t,i,e,a,o)),l&&this.setArgsStyle(h,l,d),_&&(this.setArgsStyle(h,_,d),_._cssClass&&(h.className+=" "+_._cssClass)),h.fontColor&&(h.cssText+=";color:"+h.fontColor),h.bgColor&&!n&&(h.cssText+=";background-color:"+h.bgColor),h.className=e.get_cellCssClass()+h.className,e.get_visible()||(h.className+=" dnone"),h},setArgsStyle:function(t,e,i){e._fontColor&&(t.fontColor=e._fontColor),i&&e._bgColor&&(t.bgColor=e._bgColor),e._style&&(t.cssText=e._style)},get_recordCount:function(){return this.get_dataController().get_recordCount()},get_showEditStyle:function(){return this._showEditStyle},set_showEditStyle:function(t){this._showEditStyle=t},_isRowSelectable:function(t){return this._isRowSelectableByIndex(this._getRowIndex(t))&&!t.getAttribute("_isExpandDetail")},_isRowSelectableByIndex:function(t){return!this.get_readOnly()&&!this.get_modifyOnly()||t<this.get_recordCount()},add_getRowNo:function(t,e){return this.get_events().addHandler("getRowNo",t,e)},remove_getRowNo:function(t){this.get_events().removeHandler("getRowNo",t)},_initRowNo:function(t,e){if(this.get_showRowNo()){var i=this.get_events().getHandler("getRowNo");this._initRowNoFast(t,e,i)}},_initRowNoFast:function(t,e,i){var n=this._getRowNoHTMLFast(e,i),o=$common.getChildrenByTagName(t,"td")[0];$craba.innerHTMLs(o,'<div class="GridBodyRowNoCellText">'+n+"</div>")},_getRowNoHTMLFast:function(t,e,i){var n,o=this._getStartRecordIndex()+t;if(this._isRowSelectableByIndex(t)){if(n=o+1,e&&t<this.get_recordCount()){var s=new _Z_183(n,this.findRowData(t));e(this,s),n=s.get_rowNo()}}else n="&nbsp;";return i?(i.rowNo=n,'<div class="GridBodyRowNoCellText">'+n+"</div>"):n},selectedRowColumnDataChanged:function(t){this._notifyColumnDataChanged(this._selectedRow,t)},_internalGetColumn:function(t,e){return"string"==typeof t&&(t=this.getColumn(t,e)),t},_notifyColumnDataChanged:function(t,e){e=this._internalGetColumn(e);var i=this._getRowCell(t,e.get_index());i&&(e._hideEditor(),e.initCellHTML(this._getRowIndex(t),i))},_initRowData:function(t,e){this._initRowDataFast(t,e,!1),this.isFrozenGrid()&&this._initRowDataFast(this._getFrozenRow(e),e,!0)},_initRowDataFast:function(t,e,i){var n=this.get_showRowNo(),o=n?this.get_events().getHandler("getRowNo"):null,s=this.get_dataController().get_recordCount()>0,r=i?this._getFrozenColumnRealCount():this.get_columnCount(),a=this._getFirstColumnCellIndex();n&&this._initRowNoFast(t,e,o);for(var l=this._columns,h=$common.getChildrenByTagName(t,"td"),d=0,_=a;d<r;d++,_++){var u=h[_],c=l[d];s?c.initCellHTML(e,u):u.innerHTML=c._getEmptyHTML(!0)}!s&&this._rowDeleteColumn&&this._rowDeleteColumn.doInit(t,e)},_checkRowIndex:function(t){var e=this.get_rowCount();if(t<0||t>=e)throw Error.invalidOperation(String.format("行索引范围应为 [0-{0}]",e-1))},_checkColumnIndex:function(t){var e=this.get_columnCount();if(t<-1||t>=e)throw Error.invalidOperation(String.format("列索引范围应为 -1 或 [0-{0}]",e-1))},setCellText:function(t,e,i){this._checkRowIndex(t),this._checkColumnIndex(e);var n,o=this._getRow(t);if((n=e<0?this.get_showRowNo()?0:-1:this._getFirstColumnCellIndex()+e)>=0){var s=$common.getChildrenByTagName(o,"td")[n];$craba.innerHTMLs(s,Sys.UI.Controls.Column.getHTML(i)),e>=0&&this._initCellStyle(e,s)}},_getAllColumnWidth:function(t){for(var e=0,i=this.get_columnCount(),n=0;n<i;n++){var o=this.getColumnByIndex(n);if(!(!o||t&&o.get_allowStretch())&&o.get_visible()){e+=o.get_width()}}return e+(this.get_showRowNo()?this.get_rowNoColumnWidth():0)},_getAllFrozenColumnWidth:function(t){for(var e=0,i=this._getFrozenColumnRealCount(t),n=0;n<i;n++){var o=this.getColumnByIndex(n);if(o.get_visible()){e+=o.get_width()}}return e+(this.get_showRowNo()?this.get_rowNoColumnWidth():0)},_getFrozenColumnRealCount:function(t){var e=this._headerRow,i=t||this.get_frozenColumnCount(),n=$common.getChildrenByTagName(e,"td"),o=n.length-1;this.get_showRowNo()&&o--;for(var s=0,r=0;r<i&&r<o;r++){s+=n[this.get_showRowNo()?r+1:r].colSpan}return this._columns&&(s=Math.min(s,this._columns.length-1)),s},get_dataController:function(){return this._dataController||(this._dataController=new _Z_73(this,this._dataSource),this._dataController.initialize()),this._dataController},get_guid:function(){return this._guid},set_guid:function(t){this._guid=t},get_label:function(){return this._label},set_label:function(t){this._label=t},get_readOnly:function(){return!this.get_enabled()||this._readOnly},set_readOnly:function(t){this._readOnly!=t&&(this._readOnly=t,this.get_isInitialized()&&(t&&this._hideEditor(),this._refreshRowNo(!0),this._internalRefreshNullText())),this._multiSelectColumn&&this._multiSelectColumn.set_readOnly(t),this._rowDeleteColumn&&this._rowDeleteColumn.set_readOnly(t)},get_allowDelRow:function(){return this._allowDelRow},set_allowDelRow:function(t){this._allowDelRow=t},get_modifyOnly:function(){return this._modifyOnly},set_modifyOnly:function(t){this._modifyOnly!=t&&(this._modifyOnly=t,this.get_isInitialized()&&this._refreshRowNo())},get_showHeader:function(){return this._showHeader},set_showHeader:function(t){this._showHeader=t},get_maxHeaderLevel:function(){return this._maxHeaderLevel},set_maxHeaderLevel:function(t){this._maxHeaderLevel=t},get_showFooter:function(){return this._showFooter},set_showFooter:function(t){if(this._showFooter!=t&&(this._showFooter=t,this.get_isInitialized())){if(!this._footerBar)throw Error.invalidOperation("Grid没有设置ShowFooter=true");var e=0;if(t||(e=this._footerBar.offsetHeight),$dom.setVisible(this._footerBar,t),t&&(e=this._footerBar.offsetHeight),this._body){var i=this._body.offsetHeight;i=t?i-e:i+e,$common.setHeight(this._body,i)}}},get_showRowNo:function(){return this._showRowNo},set_showRowNo:function(t){this._showRowNo!=t&&(this._showRowNo=t,this.get_isInitialized()&&(t?(this._addRowNoCells(),this._refreshRowNoColumnCaption(),this._refreshRowNo()):this._removeRowNoCells(),this.resetColumnStretch()))},_removeRowNoCells:function(){if(this._noTd){$clearHandlers(this._configCell),$clearHandlers(this._frozenConfigCell),$clearHandlers(this._noTd),$removeNode(this._noTd),delete this._noTd,this._frozenNoTd&&($clearHandlers(this._frozenNoTd),$removeNode(this._frozenNoTd)),this._filterBar&&this._filterBar.removeResetButton();for(var t=0,e=this.get_rowCount();t<e;t++){var i=this._getRow(t);$removeNode(i.firstChild)}this._footerNo&&$removeNode(this._footerNo)}},_addRowNoCells:function(){if(!this._noTd){var t=this.get_rowNoColumnWidth();if(this.get_showHeader()){(o=this._noTd=$common.createTd()).className="GridHeaderCaption",o.align="center",o.width=t,this._headerRow.insertBefore(o,this._headerRow.firstChild),$common.addMouseOverHandler(o,this._rowNoOver,this)}this._filterBar&&this._filterBar._initResetButton();for(var e=0,i=this.get_rowCount();e<i;e++){var n=this._getRow(e);(o=$common.createTd()).className="GridBodyRowNoCell",o.width=t,n.insertBefore(o,n.firstChild)}if(this.get_showFooter()){var o=this._footerNo=$common.createTd();o.className="GridFooterCell",o.width=t,this._footerRow.insertBefore(this._footerNo,this._footerRow.firstChild)}}},get_reportRowNo:function(){return this._reportRowNo},set_reportRowNo:function(t){this._reportRowNo=t},get_showPrintSummaryText:function(){return this._showPrintSummaryText},set_showPrintSummaryText:function(t){this._showPrintSummaryText=t},get_showLines:function(){return this._showLines},set_showLines:function(t){this._showLines=t},get_hideSelection:function(){return this._hideSelection},set_hideSelection:function(t){this._hideSelection=t},isFrozenGrid:function(){return this.get_frozenColumnCount()>0},get_frozenColumnCount:function(){return this._internalGetFrozenColumnCount()},set_frozenColumnCount:function(t){if(this.get_isInitialized())throw Error.invalidOperation("请调用setFrozenColumnCount接口!");this._defaultFrozenColumnCount=t},setFrozenColumnCount:function(t,e){e||this._saveFrozenColumnCount(t),this._disposeColumnsHeader(this._columns),t>0?(this._disposeFrozen(!1),this._setFrozenVisible(!0),this._createFrozenHeader(),this._createFrozenBody(),this._createFrozenFooter(),this._resetColumnsElements(),this._initFrozenDataRows(),this._internalFrozenRowsHeight(),this.initFrozenStyle(),this._scrollToTop(),this._selectedRow&&this._setRowStyle(this._selectedRow,_Z_41.none)):(this._disposeFrozen(!0),this._resetColumnsElements()),this._asyncFilterBar()},_saveFrozenColumnCount:function(t){this._configData||(this._configData={}),t==this._defaultFrozenColumnCount?delete this._configData.FrozenColumnCount:this._configData.FrozenColumnCount=t,this._configDataChanged=!0},_savePageSize:function(t){this._configData||(this._configData={}),t==this.get_pageSize()?delete this._configData.PageSize:this._configData.PageSize=t,this._configDataChanged=!0},hasConfigPageSize:function(){return!!this._configData&&!!this._configData.PageSize},get_allowConfig:function(){return this._allowConfig},set_allowConfig:function(t){this._allowConfig=t},get_allowPageCache:function(){return this._allowPageCache},set_allowPageCache:function(t){this._allowPageCache=t},get_saveConfig:function(){return this._saveConfig},set_saveConfig:function(t){this._saveConfig=t},get_allowFrozen:function(){var t=this._allowFrozen;if(t&&this._dataSource&&this._dataSource.length>$settings.MaxRecordCountToCloseFrozen&&(t=this._allowFrozen=!1,this._frozenBody&&!this._isBatch)){var e=this.get_form();$common.showWarn(String.format(Sys.Res.gridFrozenCount,e.get_caption(),this.get_idPart(),$settings.MaxRecordCountToCloseFrozen)),this.setFrozenColumnCount(0,!0)}return t},set_allowFrozen:function(t){this._allowFrozen=t},get_allowMouseWheel:function(){return this._allowMouseWheel},set_allowMouseWheel:function(t){this._allowMouseWheel=t,this._scrollBar&&(this._scrollBar._allowMouseWheel=t)},get_allowCopy:function(){return this._allowCopy},set_allowCopy:function(t){if(this._allowCopy=t,this.get_isInitialized()&&Sys.Browser.isIE&&t)for(var e=$common.getElementsByClassName(this._rowsTable,"GridBodyCellText"),i=0,n=e.length;i<n;i++){e[i].removeAttribute("unselectable")}},get_defaultShowEditor:function(){return this.defaultShowEditor},set_defaultShowEditor:function(t){this.defaultShowEditor=t},get_allowFilter:function(){return this._allowFilter},set_allowFilter:function(t){this._allowFilter=t,this.get_isInitialized()&&(this._createFilterBar(),this._initFilterBar(),this.isFrozenGrid()&&this.initFrozenStyle(),t||this.clearFilter())},clearFilter:function(t){this._filterBar&&(t?this._filterBar.clearValue():this._filterBar.doClearFilter())},_initFilterBar:function(){this._filterBar&&this._filterBar.init()},_initFrozenFilterBar:function(){this._filterBar&&this._filterBar._makeFrozenFilterBar()},_createFilterBar:function(){this._allowFilter&&this.get_showHeader()&&!this._filterBar&&(this._filterBar=new _Z_76(this))},get_allowSubtotal:function(){return this._allowSubtotal},set_allowSubtotal:function(t){this._allowSubtotal=t},set_state:function(t){this._state=t,t==_Z_42.normal&&this.remove_cellRendering(this._subtotlCellRendering),t==_Z_42.subtotl&&this.add_cellRendering(this._subtotlCellRendering,this)},_subtotlCellRendering:function(t,e){var i=e.get_rowIndex(),n=this.findRowData(i);n&&n[this._subtotalRowFlag]&&e.set_bgColor("#F7F5F5")},get_allowSort:function(){return!!this._allowSort&&!this._dataGroupField},set_allowSort:function(t){this._allowSort!=t&&(this.get_isInitialized()?(t||this.clearSortFlag(),this._allowSort=t,this._reInitColumnsHeader()):this._allowSort=t)},get_clientSort:function(){return this._clientSort},set_clientSort:function(t){this._clientSort=t},get_allowResize:function(){return this._allowResize},set_allowResize:function(t){this._allowResize!=t&&(this._allowResize=t,this.get_isInitialized()&&this._reInitColumnsHeader())},get_allowCollection:function(){return this._allowCollection},set_allowCollection:function(t){this._allowCollection=t},get_showRowIndicator:function(){return this._showRowIndicator},set_showRowIndicator:function(t){this._showRowIndicator=t},_reInitColumnsHeader:function(){for(var t=0,e=this.get_columnCount();t<e;t++){this.getColumnByIndex(t)._internalInitHeader()}},get_showScrollBar:function(){return this._showScrollBar},set_showScrollBar:function(t){this._showScrollBar=t},get_showHScrollBar:function(){return this._showHScrollBar},set_showHScrollBar:function(t){this._showHScrollBar=t},get_allColumnWidth:function(){return this._allColumnWidth},set_allColumnWidth:function(t){this._allColumnWidth=t},get_defaultRowCount:function(){return this._defaultRowCount},set_defaultRowCount:function(t){this._defaultRowCount=t},get_maxRowCount:function(){var t=this._maxRowCount;return t>=0?t:99999},set_maxRowCount:function(t){this._maxRowCount=t},get_lazyPageSize:function(){return this._lazyPageSize},set_lazyPageSize:function(t){this._lazyPageSize=t},_isLazyPageSize:function(t){if(this._cacheData)return!1;if(this._lazyPageSize<=0)return!1;var e=this.get_recordCount(),i=e>this._lazyPageSize;return t&&(i=i&&e>this._lazyIndex*this._lazyPageSize),i},showNextMoreRows:function(t){if(this._isLazyPageSize()){var e=index=this._lazyIndex*this._lazyPageSize,i=e;this._lazyIndex++;for(var n=this._lazyIndex*this._lazyPageSize,o=this.get_showRowNo(),s=o?this.get_events().getHandler("getRowNo"):null,r=this.get_columnCount(),a=this.get_allowCopy()?"":'unselectable="on" ',l=this.get_recordCount(),h=$common.createFragment();e<l&&e<n;e++){var d=e<l,_=new Sys.StringBuilder;this._addRowFast(_,e,o,s,r,d,a);var u=$common.createTBody();$craba.innerHTMLs(u,_.toString()),h.appendChild(u.firstChild),u=null}this._rows.appendChild(h),this.set_selectedRowIndex(i),$dom.setVisible(this._moreBtn,n<l),this._doLazyPageLoaded(index,e),this.refreshScrollBar(!0)}},get_textColor:function(){return this._textColor},set_textColor:function(t){this._textColor=t},get_popupMenu:function(){return this._popupMenu},set_popupMenu:function(t){this._popupMenu=t},get_needRowIndex:function(){return this._needRowIndex},set_needRowIndex:function(t){this._needRowIndex=t},get_wordWrap:function(){return this._wordWrap},set_wordWrap:function(t){this._wordWrap=t},get_columnsParams:function(){return this._columnsParams},set_columnsParams:function(t){this._columnsParams=t},get_columnsGspxs:function(){return this._columnsGspxs},set_columnsGspxs:function(t){this._columnsGspxs=t},_checkHasMultiSelectColumn:function(){var t=this._multiSelectColumn;if(!t)throw Error.invalidOperation("Grid没有选择列!");return t.get_dataField()},_checkHasExpandColumn:function(){var t=this._rowExpandColumn;if(!t)throw Error.invalidOperation("Grid没有折叠列!");return t.get_dataField()},get_selectedRowsData:function(t){for(var e=this.get_needRowIndex(),i=[],n=0,o=this._multiRowIndexs.length;n<o;n++){var s=this._multiRowIndexs[n],r=this.findRowData(s);r&&(e&&(r.__rowIndex=n),i.push(r))}return t?Object.clone(i):i},get_curSelectedItems:function(){for(var t=this._checkHasMultiSelectColumn(),e=this.get_needRowIndex(),i=this.get_recordCount(),n=[],o=0;o<i;o++)if(!this.isEmptyRow(o)){var s=this.getRowData(o);s[t]&&(e&&(s.__rowIndex=o),n.push(s))}return Object.clone(n)},get_selectedItems:function(t,e){this._checkHasMultiSelectColumn();var i=this.get_needRowIndex();if(!this._loadedItems){n=this._getSelectedItems(t);return e?Object.clone(n):n}this._initLoadedItems();for(var n=[],o=this._loadedItems.length,s=0;s<o;s++){var r=this._loadedItems[s];r&&r.selected&&(i&&(r.data.__rowIndex=s),n.push(r.data),t&&this._addMergeRowData(r.data,n))}return e?Object.clone(n):n},_getSelectedItems:function(t){for(var e=this._multiSelectColumn.get_dataField(),i=this.get_recordCount(),n=[],o=this.get_needRowIndex(),s=this.get_dataController(),r=0;r<i;r++){var a=s.getRecord(r);if(a&&e){!!this.getRowEnabled(r)&&a[e]&&(o&&(a.__rowIndex=r),n.push(a),t&&this._addMergeRowData(a,n))}}return n},_addMergeRowData:function(t,e){if(this._dataGroupField&&this._mergeGroupData){var i=t[this._dataGroupField];if(i!==undefined){var n=this._mergeGroupData[i];if(n)for(var o=0,s=n.length;o<s;o++)e.push(Object.clone(n[o]))}}},deleteSelectedItems:function(){var t=this.get_selectedItems(),e=this.findPager();if(e){for(var i=e.get_itemCount()-t.length,n=e.get_pageIndex(),o=e.get_pageSize();i<o*n+1&&n>0;n--);e.reloadPage(n)}else for(var s=t.length-1;s>-1;s--){var r=t[s];if(r.__rowIndex===undefined)throw Error.abort('删除勾选行的前提是需要设置<Grid NeedRowIndex="true"');this.deleteRow(r.__rowIndex)}},add_getLoadedItems:function(t){this.get_events().addHandler("getLoadedItems",t)},remove_getLoadedItems:function(t){this.get_events().removeHandler("getLoadedItems",t)},_setNeedPreloadItems:function(t){this._needPreloadItems=t},_getPagerPreloadItemDecimalField:function(t){var e=t.get_preloadItemFields();if(e){var i=e.split(",");return i[i.length-1].trim()}return null},_doGetLoadedItems:function(t){var e=this._loadedItems,i=this.findPager(),n=this.get_events().getHandler("getLoadedItems");if(e&&i&&(n||this._needPreloadItems)){e=Array.clone(this._loadedItems);var o=this._getPagerPreloadItemDecimalField(i);if(this._needPreloadItems){var s=this._preloadItems;s||(s=this._preloadItems=i._internalGetPreloadItems());for(var r=0,a=s.length;r<a;r++){var l=(d=s[r]).__rowIndex;if(!e[l]){var h={};h.data=d,e[l]=h}}}if(n){n(this,new _Z_194(e,i.get_itemCount(),o))}if(t&&o)for(r=(a=e.length)-1;r>=0;r--){var d=e[r];d&&d.data&&null==d.data[o]&&(e[r]=null)}}return e},get_allItems:function(){return this.findPager()?(this._loadedItems||(this._loadedItems=[]),this._needPreloadItems||(this._needPreloadItems=!0),this._getLoadedOrAllItems(!0)):this.getData()},resetLoadedItems:function(){var t=this._loadedItems;if(t)for(var e=0,i=t.length;e<i;e++){var n=t[e];n&&n.__isLoadedItem&&delete n.__isLoadedItem}},get_loadedItems:function(){return this._getLoadedOrAllItems(!1)},_getLoadedOrAllItems:function(t){if(!this._initLoadedItems())return null;for(var e=this._doGetLoadedItems(t),i=new Array(e.length),n=0,o=this.get_needRowIndex(),s=0,r=i.length;s<r;s++){var a=e[s];a&&a.data&&(o&&(a.data.__rowIndex=s),i[n]=a.data,n++)}return i.length=n,i},_toggleSelectedRowSelected:function(){var t=this.get_selectedRowIndex();if(this.getRowEnabled(t)&&!this.isEmptyRow(t)&&this._getMtCellEnabled(t)){var e=!this.getRowSelected(t);this._multiSelectColumn.set_value(e),this._internalSetRowSelected(t,e)}},_getMtCellEnabled:function(t){var e=this._multiSelectColumn,i=e.get_index(),n=this._getRow(t),o=this._getRowCell(n,i);return!!e.getEditable(o)},getSelectedRowSelected:function(){return this.getRowSelected(this.get_selectedRowIndex())},setSelectedRowSelected:function(t){this.setRowSelected(this.get_selectedRowIndex(),t)},getRowSelected:function(t){this._checkRowIndex(t);var e=this._checkHasMultiSelectColumn();return this.getRowData(t)[e]},_isColumnInFrozen:function(t){return t.get_index()<this._getFrozenColumnRealCount()},setRowSelected:function(t,e){this._internalSetRowSelected(t,e),this._checkMultiSelectColumn()},_internalSetRowSelected:function(t,e){var i=this._checkHasMultiSelectColumn();if(!this._multiSelectColumn.get_readOnly()){this._isColumnInFrozen(this._multiSelectColumn)?this._doSetFrozenRowSelected(t,e,i):this._doSetRowSelected(t,e,i)}},getRowEnabled:function(t){var e=this._rowsEnabled;if(!e)return!0;var i=e[t];return void 0===i||i},setRowEnabled:function(t,e){this._checkRowIndex(t);var i=this._multiSelectColumn;if(i&&!i.get_readOnly()){var n=this._getRow(t),o=this._getFirstColumnCellIndex()+i.get_index(),s=$common.getChildrenByTagName(n,"td")[o];if(s){var r=s.firstChild;r&&r.tagName&&($dom.setEnabled(r,e),r.firstChild.disabled=!e)}}var a=this._rowsEnabled;a||(a=this._rowsEnabled=[]),a[t]=e},_doSetFrozenRowSelected:function(t,e,i){var n=this.getRowData(t);if(n){var o=n[i];if(e!=o){var s=this._multiSelectColumn,r=s.get_index(),a=this._getFrozenRow(t);if(!a&&this._isLazyPageSize())return void s._setCellValue(t,e,!0);var l=this._getFrozenRowCell(a,r);this._raiseSetRowSelected(t,s,l,e,o);var h=this._getRow(t),d=this._getRowCell(h,r);d.firstChild.firstChild.checked=e,$common._changeCheckedStyle(d.firstChild,e)}}},_doSetRowSelected:function(t,e,i){var n=this.getRowData(t);if(n){var o=n[i];if(e!=o){var s=this._multiSelectColumn,r=this._getRow(t);if(!r&&this._isLazyPageSize())return void s._setCellValue(t,e,!0);var a=this._getRowCell(r,s.get_index());this._raiseSetRowSelected(t,s,a,e,o)}}},_raiseSetRowSelected:function(t,e,i,n,o){e._setCellValue(t,n,!0);i.firstChild.firstChild.checked=n,$common._changeCheckedStyle(i.firstChild,n),i==e._lastCell&&e.set_value(n),e._raiseChangeByRowIndex(i,t,n,o)},_doSelectAll:function(t){var e=this._multiSelectColumn;if(e&&!e.get_readOnly()){if(!this._isCheckFirstEditor){var i=this.defaultShowEditor;this.defaultShowEditor=!0,this._showFirstRowEditor(),this._isCheckFirstEditor=!0,this.defaultShowEditor=i}e._hideEditor();var n=this._checkHasMultiSelectColumn(),o=this.get_recordCount();e._isCheckAll=!0;if(this._isColumnInFrozen(e))for(s=0;s<o;s++)(!this._checkEnabled||this.getRowEnabled(s)&&this._getMtCellEnabled(s))&&this._doSetFrozenRowSelected(s,t,n);else for(var s=0;s<o;s++)(!this._checkEnabled||this.getRowEnabled(s)&&this._getMtCellEnabled(s))&&this._doSetRowSelected(s,t,n);e._isCheckAll=!1}},isCheckAllClicked:function(){var t=this._multiSelectColumn;return!!t&&t._isCheckAll},selectAll:function(){var t=this;asyncCall(function(){t._doSelectAll(!0),t._checkMultiSelectColumn()})},deselectAll:function(){this.clearLoadedItems(),this._doSelectAll(!1),this._checkMultiSelectColumn()},set_checkEnabled:function(t){this._checkEnabled=t},get_checkEnabled:function(){return this._checkEnabled},get_configID:function(){return this._configID},set_configID:function(t){this._configID=t},get_bands:function(){return this._bands},set_bands:function(t){this._bands=t},get_dataField:function(){return this._dataField},set_dataField:function(t){this._dataField=t},get_dataSource:function(t){return t?Object.clone(this._dataSource):this._dataSource},set_dataSource:function(t){var e=$craba._changeDataToList(t,this);this._saveDataSource(e,e==t)},_saveDataSource:function(t,e){this._dataSource!=t&&this._doBeforeDataSourceChanged(),this._dataSource=t;var i=this.get_dataController();i&&(i.set_supportsObjProp(e),i.clearEditBuffer())},get_columnExpands:function(){return this._columnExpands},set_columnExpands:function(t){this._columnExpands=t,this.get_isInitialized()&&this._initColumnExpands(),this._asyncFilterBar()},get_cellMergeItems:function(){return this._cellMergeItems},set_cellMergeItems:function(t){this._cellMergeItems=t},_doBeforeDataSourceChanged:function(){this._setSelectedRow(null),this._dataSourceChanging=!0},get_pagerId:function(){return this._pagerId},set_pagerId:function(t){this._pagerId=t},get_pagerClientId:function(){var t=this.findPager();return t?t.get_id():null},findPager:function(){var t=this.get_pagerId();return t?this.get_form()[t]:null},get_pager:function(){var t=this.findPager();if(!t)throw Error.invalidOperation("找不到Grid的默认Pager:"+this.get_pagerId());return t},dataBind:function(t,e){this._dataBinding=!0;var i=this._dataField,n=null,o=!1;if(void 0!==t?(n=t,o=!0):i&&(n=this.get_form().get_dataController().getValue(i),o=!0),e&&(this._prevRowIndex=this.get_selectedRowIndex(),this._prevActiveColumn=this.get_activeColumn(),this._prevRowIndex>-1&&(this.oldDefaultShowEditor=this.get_defaultShowEditor(),this.set_defaultShowEditor(!1))),o&&(this.clearLoadedItems(),this.set_dataSource(n),this.dataChanged(!0)),this.get_allowSort()&&i&&this.clearSortFlag(),this._dataBinding=!1,e&&this._prevRowIndex>-1){this.set_defaultShowEditor(this.oldDefaultShowEditor);var s=this;setTimeout(function(){s.get_isDisposed()||(s.set_selectedRowIndex(s._prevRowIndex),s._prevActiveColumn&&s._prevActiveColumn.focus())},1)}},clear:function(){this._dataBinding=!0,this.dataBind(null),this.refreshPager(!0),this.clearLoadedItems(),this._dataBinding=!1,this._checkMultiSelectColumn()},doSaveData:function(t){this._dataField&&this._internalSaveData(t)},_internalSaveData:function(t){return this._postEditValue(),this._internalControlData(t)},_internalControlData:function(t){var e=this.get_dataController().save();return this._internalSetData(e),t||this._validate(e),e},_internalSetData:function(t){var e=this._dataField;if(e){this.get_form().get_dataController().setValue(e,t)}},saveData:function(t,e){var i=this.get_form();t||i.setValidationControl(this),this._cancelRowChangeHandler=e;var n=this._internalSaveData(t);return delete this._cancelRowChangeHandler,t||i.get_validationManager().checkResults(),n},saveColumnsData:function(t){var e=this.cloneData();if(!e)return null;for(var i=[],n=0,o=e.length;n<o;n++){for(var s=e[n],r={},a=0,l=this.get_columns().length;a<l;a++){var h=this.get_columns()[a].get_dataField();h&&(t&&Array.contains(t,h)||(r[h]=s[h]))}i.push(r)}return i},cloneData:function(t){var e=this.saveData(t);return Object.clone(e)},getData:function(t){var e=this.get_readOnly()?this.get_dataSource():this.saveData(!0);return t?Object.clone(e):e},_revalidate:function(t,e,i){var n=this.get_form().get_validationManager(),o=this.get_recordCount();if(0!=o){for(var s=this.get_columnCount(),r=t,a=-1,l=n.getChildValidationNode(this._dataField),h=e;h<o;h++){var d=i?i[h].__rowIndex:h;for(h>e&&(r=0);r<s;r++)if(this._doValidateColumnByIndex(n,l,d,r),!n.get_isValid()&&-1==a){a=r;break}if(!n.get_isValid()){this.set_selectedRowIndex(d);break}}this._validateColumnIndex=a}},_validate:function(t){var e=this.get_form().get_validationManager(),i=this.get_label();i||(i="明细");var n=e.validate(this._dataField,t,i,null,this);this._validateColumnIndex=0,n&&e.get_isValid()&&this._revalidate(0,0,this.get_needRowIndex()?t:null)},_doValidateColumnByIndex:function(t,e,i,n){var o=this.getColumnByIndex(n),s=this.get_dataController().getCellValue(i,o);this._doValidateColumn(t,e,i,o,s)},_doValidateColumn:function(t,e,i,n,o){var s=n.get_dataField();if(s){var r=n.get_caption(),a="第"+(i+1)+"行 ";t.validate(s,o,r,a,this,e)}},_validateColumn:function(t,e,i){var n=this.get_form().get_validationManager(),o=n.getChildValidationNode(this._dataField);this._doValidateColumn(n,o,t,e,i)},dataChanged:function(t){this._dataChanged=!0,this.get_dataController()._dataSource=this._dataSource,this.get_isInitialized()&&this.get_visible()&&(this.get_allowPageCache()||(this.clearChangedRowDatas(),this.clearNewRowDatas(),this.clearDeleteRowDatas()),this._initDataRows(),(this._body&&this._body.scrollLeft>0||this._headerBar&&this._headerBar.scrollLeft>0)&&this._bodyScroll(),this._dataChanged=!1,this._scrollToTop(),this._initOverlaySize(),this.refreshPager(t))},isBinding:function(){return this._dataChanged||!this._init},_mergeGroupDatas:function(){if(this._dataGroupField&&this._dataSource&&!(this._mergeRowColumns.length<1)){delete this._mergeGroupData,this._beforeMergeData=[];for(var t=[],e=0;this._dataSource.length>0;){var i=this._dataSource.shift();i.__rowIndex=e,t.push(i),this._beforeMergeData.push(i),e++;var n=i[this._dataGroupField];if(n)for(var o=0;o<this._dataSource.length;o++){var s=this._dataSource[o];if(s[this._dataGroupField]===n){this._mergeGroupData||(this._mergeGroupData={}),s=this._dataSource.splice(o,1)[0],o--;var r=this._mergeGroupData[n];r||(r=this._mergeGroupData[n]=[]),r.push(s),this._beforeMergeData.push(s),s.__rowIndex=e,e++}}}this._dataSource=t,this.get_dataController()._dataSource=t}},hasMergeRows:function(){return!(!this._mergeRowColumns||0==this._mergeRowColumns.length)&&!!this._mergeGroupData},_breakGroupDatas:function(t,e,i){if(this._dataGroupField&&this._mergeGroupData){var n=e[this._dataGroupField],o=this._mergeGroupData[n];if(o&&0!=o.length)for(var s=this.get_columnCount(),r=0,a=o.length;r<a;r++){for(var l=o[r],h=Object.clone(l),d=0;d<s;d++){var _=this.getColumnByIndex(d),u=_.get_dataField();if(_.get_reportVisible()&&u){var c=l[u],g=l[u];h[u]=_.getDisplayText(c,g,i,!0)}}t.push(h)}}},refreshPager:function(t){var e=this.findPager();!e||e.get_hasDataSource()&&!t||e.init(this.get_recordCount())},refreshScrollBar:function(t){var e=this._scrollBar;e&&$craba.asyncFun(this,function(){e.get_isDisposed()||e._showBar(t)},50,"scrollBar")},_initGridHeight:function(){if(this.get_autoHeight()&&!$app.PopupGrid){var t=this;asyncCall(function(){if(!t.get_isDisposed()){var e=t._rowsTable.offsetHeight;if(0!=e){var i=(e+=t.getOtherHeight()+5)>t.get_minHeight()?e:t.get_minHeight(),n=t.get_maxHeight();n>0&&i>n&&(i=n),t.set_height(i)}}})}},getOtherHeight:function(){var t=0;return this._headerBar&&(t+=this._headerBar.offsetHeight),this._allowFilter&&(t+=this._filterBar.get_height()),this._footerBar&&(t+=this._footerBar.offsetHeight),t},refresh:function(t,e){delete this._cacheData,void 0!==t&&this.set_dataSource(t),this.dataChanged(!1!==e)},_refreshCache:function(t){this.set_dataSource(t),this.dataChanged(!0)},add_newRecord:function(t){this.get_events().addHandler("newRecord",t)},remove_newRecord:function(t){this.get_events().removeHandler("newRecord",t)},_internalNewRecord:function(t){var e=this.get_events().getHandler("newRecord");if(e){e(this,new _Z_190(t));for(var i in t){var n=this.findColumn(i);n&&(n._hasEditor()||this.selectedRowColumnDataChanged(n))}}},appendRowData:function(t,e){this._appendNewDatas(t);var i,n=this.findPager();if(n&&!n.get_isLastPage()?this._internalLastPageThenAppendRowData(n,t):n?n._hasDataSource&&this.get_dataController().get_recordCount()+1>n.get_pageSize()?this._internalLastPageThenAppendRowData(n,t):(i=this._internalAppendRowData(t),n.incItemCount()):i=this._internalAppendRowData(t,e),!this._isBatch)return i?this._getRowIndex(i):void 0},_internalLastPageThenAppendRowData:function(t,e){var i=e.__rowIndex;if(i>=0){t.incItemCount();var n=t.get_pageSize(),o=Math.floor(i/n);t.gotoPage(o,$createDelegate(this,function(){var t=this._getRow(i-o*n);this._setSelectedRow(t)}))}else t.lastPage($createDelegate(this,function(){var i=this.get_dataController().indexOfRecord(e);if(i<0)this._internalAppendRowData(e);else{t.incItemCount();var n=this._getRow(i);this._setSelectedRow(n)}}))},_internalAppendRowData:function(t,e){var i=this._doAppendRow();return this._initNewRowData(i,t,e),this._endBatch(null,"append"),i},_initNewRowData:function(t,e,i,n,o){var s=this._getRowIndex(t);if(i||n||this._hideEditor(),n||this.get_dataController().modifyRecord(s,e),this._initRowData(t,s),!i){this._initRowStyle(t),this._tempRow=t;var r=this;$craba.asyncFun(this,function(){r.get_isDisposed()||r._tempRow&&(r._setSelectedRow(r._tempRow),r._tempRow=null)},10,"__srow")}var a=this.findPager();a&&o&&a.incItemCount(),this._changeFrozenRowHeight(s,t)},_doAppendRow:function(){var t,e=this.get_recordCount(),i=this.get_rowCount();if(i>e){for(var n=0;n<i;n++)if(this.isEmptyRow(n))return this._getRow(n)}else t=this._appendRow();return t},appendRow:function(t){var e=this._appendRow();return this._setSelectedRow(e,t),this._getRowIndex(e)},insertRowData:function(t,e,i){if(0==this.get_rowCount())return this.appendRowData(e),0;this._appendNewDatas(e),this._checkRowIndex(t),this.get_dataController().insertRecord(t,e);var n=this._doInsertRow(t);return this._initNewRowData(n,e,this._isBatch,!0),this._isBatch?void 0:(this._setSelectedRow(n),this._endBatch(t,"insert"),this._getRowIndex(n))},batchDeleteRow:function(t){Array.removeRepeatString(t),t.length<1||(t.sort(function(t,e){return e-t}),this._isBatch=!0,Array.forEach(t,function(t){this.deleteRow(t),this._deletePagerRecord(t),this.doRowDeleted()},this),delete this._isBatch,this._resetRowIndex(t.pop()),this._gridScroll(),this._endBatch(null,"delete"))},batchInsertRowData:function(t,e,i){if(0!=e.length){var n=null==this.get_events().getHandler("cellRendering");this._isBatch=!0;for(var o=t,s=$common.createFragment(),r=0;r<e.length;r++){var a=e[r];this.get_dataController().insertRecord(t,a);var l=this._doInsertRow(t);s.appendChild(l),this._initNewRowData(l,a,n,!0,i),t++}var h=this._getRow(o);this._rows.insertBefore(s,h),this._resetOffsetRowIndex(t,!0),delete this._isBatch,this._endBatch(null,"batchInsert")}},batchAppendRowData:function(t,e){if(t&&!(t.length<1)){this._isBatch=!0;for(var i=0;i<t.length;i++)this.appendRowData(t[i],!1!==e);delete this._isBatch,this._endBatch(null,"batchAppend")}},batchModifyRowData:function(t,e,i){if(e&&!(e.length<1)){var n=Object.isUndefinedOrNull(t);$common.checkTips(n&&!this.get_primaryKey(),"按主键修改的时候Grid必须配置PrimaryKey属性"),this._isBatch=!0;for(var o=0;o<e.length;o++){var s=e[o];n&&(t=this._getKeyRowIndex(s))<0||(this._doModifyRowData(t,s,!1!==i),t++)}delete this._isBatch,this._endBatch(null,"batchModify")}},_getKeyRowIndex:function(t){var e=this.get_primaryKey(),i=t[e];if(Object.isUndefinedOrNull(i))return-1;for(var n=this.get_dataController().save(),o=0,s=n.length;o<s;o++){if(n[o][e]==i)return o}return-1},_endBatch:function(t,e){this._isBatch||(this._calcColumnsSummary(),this._checkMultiSelectColumn(),this.doChange(t,e),this._initGridHeight(),this._internalFrozenRowsHeight(),this.refreshScrollBar(),"batchModify"!=e&&this.clearLoadedItems())},insertRow:function(t){return this.get_recordCount()<=0?this.appendRowData({}):this.insertRowData(t,{})},_doInsertRow:function(t){var e=this._createRow(t,this.get_columnCount());if(!this._isBatch){var i=this._getRow(t);this._resetOffsetRowIndex(t),this._rows.insertBefore(e,i)}if(this._frozenRows){var n=this._createRow(t,this._getFrozenColumnRealCount(),!0);i=this._getFrozenRow(t),this._frozenRows.insertBefore(n,i)}return e},_isValidRecordIndex:function(t){var e=this.get_recordCount();return t>=0&&t<e},_checkRecordIndex:function(t){if(!this._isValidRecordIndex(t)){var e=this.get_recordCount();throw Error.invalidOperation(String.format("行记录索引范围应为 [0-{0}],当前:{1}",e-1,t))}},isEmptyRow:function(t){return $craba.isEmptyData(this.findGroupData(t))},findRowData:function(t,e){var i=null;return this._isValidRecordIndex(t)&&(i=this.get_dataController().getRecord(t)),e?Object.clone(i):i},getRowData:function(t,e){var i=null;return this._isValidRecordIndex(t)&&(this._checkRecordIndex(t),i=this.get_dataController().getRecord(t)),e?Object.clone(i):i},findGroupData:function(t){return this._beforeMergeData?Object.clone(this._beforeMergeData[t]):this.findRowData(t)},modifyCellValue:function(t,e,i){var n={};n[e]=i,this.modifyCellsValue(t,[e],n)},modifyCellsValue:function(t,e,i){this._checkRecordIndex(t);var n=this._getRow(t);Array.forEach(e,function(e){var o=this._internalGetColumn(e,!0),s=i?i[e]:null;o&&n?this._refreshCellValue(n,t,o,s):this.get_dataController().doSetCellValueByField(t,null,e,s)},this),this._calcColumnsSummary(e),this._checkMultiSelectColumn(),this.doChange(t,"modify"),this._internalFrozenRowsHeight()},modifyRowData:function(t,e,i){this.endEdit(),this._checkRecordIndex(t),this._doModifyRowData(t,e,i)},_doModifyRowData:function(t,e,i){this._setDefaultData(t,e),this._appendChangeDatas(e),this.get_dataController().modifyRecord(t,e);var n=this._getRow(t);n?(this._initRowData(n,t),i||this._setRowStyle(n,_Z_41.normal),this._endBatch(t,"modify")):this._endBatch(t,"modify")},_setDefaultData:function(t,e){if(!$craba.isEmptyData(e))for(var i=this.get_columnCount(),n=0;n<i;n++){var o=this.getColumnByIndex(n),s=o.get_dataField();if(s&&"undefined"==typeof e[s]){var r=o.getDefaultValue();r!=undefined&&(e[s]=r)}}},modifySelectedRowData:function(t){var e=this._selectedRow;if(!e)throw Error.invalidOperation("没有选中行");this._doModifyRowData(this._getRowIndex(e),t)},deleteSelectedRow:function(){var t=this._selectedRow;t&&this.deleteRow(this._getRowIndex(t))},_refreshRowNo:function(t){if(this.get_showRowNo())for(var e=0,i=this.get_rowCount();e<i;e++){var n=this._getRow(e);this._initRowNo(n,e),t&&this._setRowStyle(n,_Z_41.normal)}},_resetOffsetRowIndex:function(t,e){for(var i=this.get_rowCount()-1;i>=t;i--){var n=e?i:i+1;this._initRowIndex(this._getRow(i),n);var o=this._getFrozenRow(i);o&&this._initRowIndex(o,n)}},_resetRowIndex:function(t){for(var e=this.get_rowCount(),i=t;i<e;i++){this._initRowIndex(this._getRow(i),i);var n=this._getFrozenRow(i);n&&this._initRowIndex(n,i)}},_resetColumnIndex:function(t){for(var e=this.get_columnCount(),i=this.get_rowCount(),n=0;n<i;n++)for(var o=this._getRow(n),s=t;s<e;s++){var r=this._getRowCell(o,s);r&&r.setAttribute("_columnIndex",s)}},_initRowIndex:function(t,e){this._initRowNo(t,e),t.setAttribute("_rowIndex",e)},_checkDeleteSelectedRow:function(){var t=this._selectedRow;t&&this._internalCheckDeleteRow(this._getRowIndex(t))},_internalCheckDeleteRow:function(t){var e=this.get_events().getHandler("rowDeleting");if(e){var i=new _Z_193(t);if(e(this,i),i.get_cancel())return!1}return this._mergeRowColumns.length>0?(this.get_dataController().deleteRecord(t),this.doRowDeleted(),this.doChange(t,"delete"),this.refresh(this.getData())):this.deleteRow(t),!0},deleteRow:function(t,e){var i=this.isEmptyRow(t);this._deleteRowElement(t,e)&&(i?this._initGridHeight():(this._deletePagerRecord(t),this.doRowDeleted(),this._endBatch(t,"delete")))},_deleteRowElement:function(t,e){var i=null,n=this.get_rowCount();if((t>=0||t<n)&&(i=this._getRow(t)),!i)return!1;var o=this.get_dataController().getRecord(t);o&&this._appendDeleteDatas(o),this._hideEditor(),this.get_dataController().deleteRecord(t),n--,this._cancelRowChangeHandler=e,this._isBatch||this._setSelectedRow(null);var s=null,r=this.get_modifyOnly();if(n>0||r){$removeNode(i);var a=this._getFrozenRow(t);if(a&&$removeNode(a),this._isBatch)return;this._resetRowIndex(t);var l=this.get_readOnly()||r?this.get_recordCount():this.get_rowCount();if(l>0){h=t<l?t:t-1;s=this._getRow(h)}}else{var h=0;s=this._getRow(h),this._initRowData(s,h)}return this._gridScroll(),this._setSelectedRow(s),this._cancelRowChangeHandler=!1,!0},_deletePagerRecord:function(t){var e=this.findPager();e&&(e._hasSummaryLoaded=!1,e.deleteRecord(this._getStartRecordIndex()+t),e.get_pageCount()<=1?e.decItemCount():e.get_isLastPage()?this.get_recordCount()>0?e.decItemCount():e.prevPage():e.reloadPage(null,$createDelegate(this,function(){var e=this.get_recordCount();if(e>0){var i=Math.min(t,e-1);this.set_selectedRowIndex(i)}})))},add_rowDeleting:function(t){this.get_events().addHandler("rowDeleting",t)},remove_rowDeleting:function(t){this.get_events().removeHandler("rowDeleting",t)},add_rowAdd:function(t){this.get_events().addHandler("rowAdd",t)},remove_rowAdd:function(t){this.get_events().removeHandler("rowAdd",t)},add_rowDeleted:function(t){this.get_events().addHandler("rowDeleted",t)},remove_rowDeleted:function(t){this.get_events().removeHandler("rowDeleted",t)},doRowDeleted:function(){var t=this.get_events().getHandler("rowDeleted");t&&t(this)},findRow:function(t,e,i){var n=!1;this._prevName==t&&this._prevValue==e&&-1!==this._prevIndex&&(n=!0),this._prevName=t,this._prevValue=e;for(var o=0,s=this.get_recordCount();o<s;o++){var r=this.getRowData(o)[t];if(i){if(!Object.isUndefinedOrNull(r)&&r.toString().toLowerCase().indexOf(e.toString().toLowerCase())>-1){if(n&&this._prevIndex>=o)continue;return this._prevIndex=o}}else if(r==e)return this._prevIndex=o}return this._prevIndex=-1},filterRows:function(t){if(this._cacheData?this.get_dataController()._dataSource=this._cacheData:this._cacheData=this.get_dataSource(),!t||0==t.items.length)return this._refreshCache(this._cacheData),void delete this._cacheData;var e=[];this.locateRowToCache(e,t.items,!0);var i=Object.clone(e);this._refreshCache(i)},locateRow:function(t,e,i){var n=this.findRow(t,e,i);return n>=0&&this.set_selectedRowIndex(n),n},locateRowToCache:function(t,e,i){for(var n=0,o=this.get_recordCount();n<o;n++){for(var s=this.getRowData(n),r=!1,a=0,l=e.length;a<l;a++){var h=e[a],d=h.dataField,_=h.value,u=s[d];if(i&&h.type!=_Z_72.equals){if(Object.isUndefinedOrNull(u)||!(u.toString().toLowerCase().indexOf(_.toString().toLowerCase())>-1)){r=!1;break}r=!0}else{if(u!=_){r=!1;break}r=!0}}r&&t.push(s)}},moveUpSelectedRow:function(){var t=this.get_selectedRowIndex();if(!(t<=0)){var e=t-1;if(!this.isEmptyRow(t)&&!this.isEmptyRow(e)){var i=this.getRowData(t),n=this.getRowData(e);this.modifyRowData(e,i),this.modifyRowData(t,n),this.set_selectedRowIndex(e)}}},moveDownSelectedRow:function(){var t=this.get_selectedRowIndex();if(!(t>=this.get_recordCount()-1)){var e=t+1;if(!this.isEmptyRow(t)&&!this.isEmptyRow(e)){var i=this.getRowData(t),n=this.getRowData(e);this.modifyRowData(e,i),this.modifyRowData(t,n),this.set_selectedRowIndex(e)}}},_initRowMerge:function(){var t=this._mergeRowColumns;if(!(t.length<1||this._dataGroupField)){!function(){for(var e=0;e<t.length;e++)t[e].__prevCell=null}();for(var e=[],i=0,n=0;n<this.get_recordCount();n++){var o=this.findRowData(n),s=this.findRowData(n+1);if(!s)break;for(var r=this._getRow(n),a=this._getRow(n+1),l=0;l<t.length;l++){var h=t[l],d=h.__prevCell,_=h.get_dataField();if(o[_]==s[_]){c=null;d?c=d:(c=this._getRowCell(r,h.get_index()),(d=h.__prevCell=c).rowSpan=1),c.rowSpan=c.rowSpan+1;var u=this._getRowCell(a,h.get_index());e.push(u),r.__rowIndex=a.__rowIndex=i}else i++,h.__prevCell=null}}for(n=0;n<e.length;n++){var c=e[n];$removeNode(c)}}},_initCellMerge:function(t){if(this._cellMergeItems){this._rowsTable.style.tableLayout="";for(var e=this._cellMergeItems,i=0,n=e.length;i<n;i++){var o=e[i],s=o.rowIndex,r=this._getRow(s);if(r){var a=this.getColumn(o.fromColumn);if(!a.get_visible())throw Error.invalidOperation("列“"+o.fromColumn+"”不可见");for(var l=this.getColumn(o.toColumn),h=this.getColumn(o.displayColumn),d=0,_=0,u=a.get_index(),c=this.get_columnCount(),g=u;g<c;g++){if((f=this.getColumnByIndex(g)).get_visible()&&(_+=f.get_width(),d++),f==l)break}for(g=u;g<c;g++){var f=this.getColumnByIndex(g);if(g==u){if((C=this._getRowCell(r,g)).colSpan=d,C.width=_,!t){$craba.innerHTMLs(C,h.internalGetCellHTML(s)),o.textAlign&&(C.firstChild.style.textAlign=o.textAlign);var m=o.textBgColor;m&&(C._bgColor=m,C.style.backgroundColor=m)}}else if(f.get_visible()){var C=this._getRowCell(r,u+1);$removeNode(C)}if(f==l)break}}}}},add_summaryLoaded:function(t){this.get_events().addHandler("summaryLoaded",t)},remove_summaryLoaded:function(t){this.get_events().removeHandler("summaryLoaded",t)},getSummaryValue:function(t){var e=this._summaryItems;if(e){var i=e[t];if(i)return i.value}return null},set_summaryItems:function(t){this._summaryItems=t;var e=this._summaryItemPrefix;e||(e=this._summaryItemPrefix=["","最小 ","最大 ","平均 ","计数 ",""]);var i=!1;for(var n in t){var o=this.findColumn(n);if(o&&o.get_useServerSum()){var s=t[n],r=e[s.summaryKind],a=s.value,l=s.formatString;o._setHasServerSum(!0),this._setColumnSummary({column:o,value:a,formatString:l,prefix:r,isServerSum:!0}),i=!0}}i||this.clearAllSummary();var h=this.get_events().getHandler("summaryLoaded");h&&h(this)},clearAllSummary:function(){for(var t=this.get_columns(),e=0,i=t.length;e<i;e++){var n=t[e];n.set_summaryValue(""),n.set_footer("")}},_setColumnSummary:function(t){var e=t.column,i=t.value,n=t.formatString,o=t.prefix,s=t.digitDatas,r=!$settings.NumberColumnFormatNumber,a=Sys.UI.Controls.NumberColumn.isInstanceOfType(e);if(!a&&e.getIsNumberType&&(a=e.getIsNumberType()),a&&(r=!e.get_formatNumber()),!a||r)return e.set_summaryValue(i),void e.set_footer(i);var l=e.get_decimalDigits(!0);s&&!Object.isUndefinedOrNull(s[e.get_dataField()])&&(l=s[e.get_dataField()]);var h=!1;if(l<=0&&(h=!0,l=e.get_decimalScale()),null!=i&&$settings.UseBigNumber&&"undefined"!=typeof math)return i=math.round(i,l),e.set_summaryValue(i),void e.set_footer(i);var d="",_=!1;if(null!=i){var u=(d=i.toString()).indexOf(".");u<0||d.substring(u+1).length<9?(i=parseFloat(i),isNaN(i)?(i=d,a=!1):d=n?i.format(n,!!a&&e.get_displayThousandSeperator()):a?e.formatNumber(i):i.toString()):_=!0,d=(o=o||"")+d}a&&null!=i&&l>0&&(_?(i=i.toFixed(l),h&&(i=i.trimEndChar("0").trimEndChar("\\.")),"-0"==i&&(i="0"),d=i):i=Math.roundTo(i,l)),e.set_summaryValue(i),e.set_footer(d)},get_canSummary:function(){return this._hasSummaryColumn&&(this.get_showFooter()||this._hasSummaryChanged)},_calcColumnsSummary:function(t){if(this.get_canSummary()){for(var e={},i=this.get_columnCount(),n=0,o=[],s=0;s<i;s++){(d=(u=this.getColumnByIndex(s)).get_dataField())&&u.get_isClientSum()&&!u.get_useServerSum()&&(t&&!Array.contains(t,d)||(e[d]=null,Array.add(o,u),n++))}if(0!=n){this._calcLoadedItemsSummary(e,o);for(var r=$settings.NumberColumnFormatNumber?null:{},a=this.get_recordCount(),l=0;l<a;l++){var h=this.getRowData(l);h&&(this._calcRowSummary(h,e,o,r,l),this._calcMergeSummary(e,o,r,h))}for(var d in e){var _=e[d],u=this.getColumn(d);null!=_&&(0!=_||a>0)?this._setColumnSummary({column:u,value:_,digitDatas:r}):(u.set_summaryValue(0),u.set_footer(""))}this._summaryChanged()}}},_calcMergeSummary:function(t,e,i,n){if(this.hasMergeRows()){var o=n[this._dataGroupField],s=this._mergeGroupData[o];if(s)for(var r=0,a=s.length;r<a;r++){var l=s[r],h=l.__rowIndex;this._calcRowSummary(l,t,e,i,h)}}},_isValueNeedSum:function(t){return null!=t&&""!==t},_calcRowSummary:function(t,e,i,n,o){if(this.dataNeedSum(t)){var s=-1;for(var r in e){var a=this.get_dataController()._doGetObjProp(t,r);if(s++,this._isValueNeedSum(a)){null==e[r]&&(e[r]=0);var l=null;i&&(a=(l=i[s]).loadEditValue(a,o));var h=e[r],d=this.getColumnMath(l);if(d)h=d.eval(h+"+"+a).toString();else if(h+=parseFloat(a),n&&a&&l&&l.get_formatNumber&&l.get_formatNumber()){var _=n[r];Object.isUndefinedOrNull(_)&&(_=0),n[r]=Math.max(_,$craba.getDecimalDigits(a))}e[r]=h}}}},_calcLoadedItemsSummary:function(t,e){var i=this._doGetLoadedItems();if(i){var n=this._getStartRecordIndex(),o=n+this.get_recordCount(),s=0;for(var r in t){var a=e[s];if(a.get_summaryKind()!=_Z_146.sumPage){for(var l=this.getColumnMath(a),h=0,d=i.length;h<d;h++)if(!(h>=n&&h<o)){var _=i[h];if(_){var u=_.data;if(u&&this.dataNeedSum(u)){var c=this.get_dataController()._doGetObjProp(u,r);if(this._isValueNeedSum(c)){null==t[r]&&(t[r]=0);var g=t[r];l?g=l.eval(g+"+"+c).toString():g+=parseFloat(c),t[r]=g}}}}s++}}}},getColumnMath:function(t){var e=30;return t&&t.get_decimalPrecision&&(e=t.get_decimalPrecision()),$common.getBigMath(e)},add_getFooterHTML:function(t){this.get_events().addHandler("getFooterHTML",t)},remove_getFooterHTML:function(t){this.get_events().removeHandler("getFooterHTML",t)},add_summaryChanged:function(t){this.get_events().addHandler("summaryChanged",t),this._hasSummaryChanged=!0},remove_summaryChanged:function(t){this.get_events().removeHandler("summaryChanged",t),delete this._hasSummaryChanged},_summaryChanged:function(){var t=this.get_events().getHandler("summaryChanged");t&&t(this)},_calcColumnSummary:function(t){var e=t.get_dataField();if(e){var i=this._getPagerPreloadItemsSum(t),n=!0;-1==i&&(n=!1,i=0);for(var o=t.get_formatNumber&&t.get_formatNumber()?null:{},s=0,r=this.get_recordCount();s<r;s++){var a=this.getRowData(s);if(a&&this.dataNeedSum(a)){var l=this.get_dataController()._doGetObjProp(a,e);if(this._isValueNeedSum(l)){l=t.loadEditValue(l,s);var h=this.getColumnMath(t);if(h)i=h.eval(i+"+"+l).toString();else if(i+=parseFloat(l),o&&l){var d=o[e];Object.isUndefinedOrNull(d)&&(d=0),o[e]=Math.max(d,$craba.getDecimalDigits(l))}n=!0}}}0!=i||n||(i=null),this._setColumnSummary({column:t,value:i,digitDatas:o}),this._summaryChanged()}},_getPagerPreloadItemsSum:function(t){if(t.get_summaryKind()==_Z_146.sumPage)return-1;var e=this._doGetLoadedItems();if(!e)return-1;for(var i=0,n=!1,o=t.get_dataField(),s=this._getStartRecordIndex(),r=s+this.get_recordCount(),a=0,l=e.length;a<l;a++)if(!(a>=s&&a<r)){var h=e[a];if(h){var d=h.data;if(d&&this.dataNeedSum(d)){var _=d[o];this._isValueNeedSum(_)&&(i+=parseFloat(_),n=!0)}}}return n?i:-1},dataNeedSum:function(t){return!0},clearSortFlag:function(){this.get_allowSort()&&this._clearSort(null)},_clearSort:function(t){for(var e=this.get_columnCount(),i=0;i<e;i++){var n=this.getColumnByIndex(i);n!=t&&n._clearSort()}var o=this.findPager();o&&delete o._lastOrders},get_sortColumn:function(){return this._sortColumn},_initColumnSort:function(){!this.findPager()&&this._sortColumn&&this._doSortData(this._sortColumn)},_doSortData:function(t){var e=t.get_isSortAscending();this.get_dataController().sortBy(t,e)},_doSort:function(){var t=this.findPager();if(!t||this.get_clientSort())this._doClientSort();else{var e=this.getSortedOrders();t._internalRefreshSort(e)}},_doClientSort:function(){for(var t=this.get_columnCount(),e=0;e<t;e++){var i=this.getColumnByIndex(e);if(i.get_isSorted()){this._doSortBy(i);var n=this.get_events().getHandler("noPagerAfterSort");if(n){n(this,new _Z_150(i))}break}}},getSortedOrders:function(){for(var t=[],e=this.get_columnCount(),i=0;i<e;i++){var n=this.getColumnByIndex(i);if(n.get_isSorted()){var o={};o.dataField=n.get_sortField(!0),o.ascending=n.get_isSortAscending(),Array.add(t,o)}}return t},add_noPagerAfterSort:function(t,e){return this.get_events().addHandler("noPagerAfterSort",t,e)},remove_noPagerAfterSort:function(t){this.get_events().removeHandler("noPagerAfterSort",t)},_raisePagerBeforeSort:function(t){var e=this.get_events().getHandler("pagerBeforeSort");if(e){var i=new _Z_195(t);if(e(this,i),i.get_cancel())return!0}return!1},add_pagerBeforeSort:function(t,e){return this.get_events().addHandler("pagerBeforeSort",t,e)},remove_pagerBeforeSort:function(t){this.get_events().removeHandler("pagerBeforeSort",t)},add_columnSort:function(t,e){return this.get_events().addHandler("columnSort",t,e)},remove_columnSort:function(t){this.get_events().removeHandler("columnSort",t)},_doSortBy:function(t){this._postEditValue();var e=this.get_events().getHandler("columnSort");if(e){var i=new _Z_195(t);if(e(this,i),i.get_cancel())return}this._doSortData(t),this.refresh(this.get_dataController().save())},_internalGetColumnVisible:function(t){var e=t.get_designVisible();if(this._configData){var i=this._configData.ColumnsVisible;if(i){var n=i[t.get_name()];void 0!==n&&(e=n)}}return e},_internalSetColumnVisible:function(t,e,i){if(i){this._configData||(this._configData={});var n=this._configData.ColumnsVisible;n||(n=this._configData.ColumnsVisible={});n[t.get_name()]=e}else t.set_designVisible(e);this._gridScrollToStart(),this._refreshColumnVisible(t),this._filterBar&&this._filterBar.set_visible(t,e)},_getColumnVisibleIndex:function(t){for(var e=-1,i=0,n=this.get_columnCount();i<n;i++){var o=this.getColumnByIndex(i);if(o==t)break;o.get_visible()&&e++}return e+1},_adjustGroupColVisible:function(t,e){var i=this._colGroup;if(i){var n=this._getColumnVisibleIndex(t);this.get_showRowNo()&&n++;var o=$common.getChildrenByTagName(i,"col"),s=o[n],r=t.get_width();if(e){(l=document.createElement("col")).width=r,s?i.insertBefore(l,s):i.appendChild(l)}else $removeNode(s);var a=this._frozenColGroup;if(a&&n<=this._getFrozenColumnRealCount())if(o=$common.getChildrenByTagName(a,"col"),s=o[n],e){var l=document.createElement("col");l.width=r,s?a.insertBefore(l,s):a.appendChild(l)}else $removeNode(s)}},_refreshColumnVisible:function(t){var e=this._rowsTable?this._rowsTable.offsetWidth:0;this.get_readOnly()||this._hideEditor();var i=t.get_visible(),n=t.get_index(),o=t.get_width();o*=i?1:-1;var s=this.get_showScrollBar();if(this.get_showHeader()){if(s){var r=this._savedHeaderWidth;r?this._savedHeaderWidth=null:r=this._header.offsetWidth,this._setHeadTableWidth(this._header,r+o)}c=t.get_headerElement();$common.setDisplay(c,i);var a=t.get_frozenHeaderElement();a&&(this._refreshFrozenHeaderWidth(o),$common.setDisplay(a,i));var l=t.get_band();l&&this._refreshBand(l,i?1:-1,o),this._refreshFrozenBodyHeight()}if(this._adjustGroupColVisible(t,i),s)e>0?this._setRowsTableWidth(this._rowsTable,e+o):(this._allColumnWidth=this._allColumnWidth>0?this._allColumnWidth:this._getAllColumnWidth(),this._allColumnWidth+=i?t.get_designWidth():-t.get_designWidth(),this._allColumnWidth>0&&this._setRowsTableWidth(this._rowsTable,this._allColumnWidth));else{var h=this._header.offsetWidth,d=this.get_element();d.style.overflow="hidden",d.style.width=_px(h),this._rowsTable.style.width=this._body.style.width}if(this._setRealColumnVisible(n,i,t),this.isFrozenGrid()&&this._frozenRowsTable&&n+1<=this._getFrozenColumnRealCount()){var _=this._frozenRowsTable.offsetWidth+o,u=this._body.offsetWidth;this._frozenRowsTable.style.width=_px(_),_>u&&(_=u),this._frozenBody.style.width=_px(_),this._setFrozenColumnVisible(n,i,t)}if(s?this._doAdjustHeaderSpacer():this.get_element().style.overflow="",this.get_showFooter()){var c=t.get_footerElement();$common.setDisplay(c,i),this._refreshFooterWidth()}t._control||t.focus()},_setRealColumnVisible:function(t,e,i){for(var n=this.get_rowCount(),o=0;o<n;o++){var s=this._getRow(o);if(!s.getAttribute("_isExpandDetail")){var r=this._getRowCell(s,t);if(r){$dom.setCssClass(!e,r,"dnone");var a=o;this._rowExpandColumn&&!this._isTree&&(a=this._getRowIndex(s)),i.initCellHTML(a,r)}}}},_setFrozenColumnVisible:function(t,e,i){for(var n=this.get_rowCount(),o=0;o<n;o++){var s=this._getFrozenRow(o),r=this._getFrozenRowCell(s,t);$common.setDisplay(r,e),$craba.innerHTMLs(r,i._getCellHTML(o)),this._changeFrozenRowHeight(o)}},_refreshFooterWidth:function(){if(this.get_showFooter()){var t=this._header?this._header:this._rowsTable;$common.setWidth(this._footer,t.offsetWidth),this._frozenFooter&&($common.setWidth(this._frozenFooter,this._frozenHeaderTable.offsetWidth),$common.setWidth(this._frozenFooterBar,this._frozenHeaderBar.offsetWidth));for(var e=0,i=this.get_columnCount();e<i;e++){var n=this.getColumnByIndex(e);n&&n.refreshFooterCellWidth()}}},_refreshFrozenHeaderWidth:function(t){var e=this._frozenHeaderTable.offsetWidth+t;this._setHeadTableWidth(this._frozenHeaderTable,e);var i=this._headerBar.offsetWidth;$common.setWidth(this._frozenHeaderBar,e>i?i:e)},_refreshColumnWidth:function(t,e,i){t._hideEditor();var n=e-i;this._refreshColumnHeader(t,i,e),this._setRowsTableWidth(this._rowsTable,this._rowsTable.offsetWidth+n),this._adjustGroupColWidth(t,e);var o=t.get_index();if(this.isFrozenGrid()&&o+1<=this._getFrozenColumnRealCount()){var s=this._frozenRowsTable.offsetWidth+n;$common.setWidth(this._frozenRowsTable,s),this._setFrozenColumnWidth(o,e),this._doAdjustFrozenBodyWidth(s)}this._setRealColumnWidth(o,e),this._initCellMerge(!0),this._doAdjustHeaderSpacer(),this._refreshFooterWidth(),this._gridScroll()},_refreshColumnHeader:function(t,e,i){var n=i-e;if(this.get_showHeader()){this._setHeadTableWidth(this._header,this._header.offsetWidth+n);t.get_headerElement().width=i,t._bandTd&&(t._bandTd.width=t._bandTd.offsetWidth+n);var o=t.get_frozenHeaderElement();o&&(this._refreshFrozenHeaderWidth(n),o.width=i);var s=t.get_band();s&&this._refreshBand(s,2,n)}},_doAdjustFrozenBodyWidth:function(t){var e=this.get_element().offsetWidth-this._getBorderSize(!1);$common.setWidth(this._frozenBody,t>e?e:t)},_setFrozenColumnWidth:function(t,e){for(var i=this.get_rowCount(),n=0;n<i;n++){var o=this._getFrozenRow(n);if(o){var s=this._getFrozenRowCell(o,t);s&&(s.width=e)}}},_setRealColumnWidth:function(t,e){for(var i=this.get_rowCount(),n=0;n<i;n++){var o=this._getRow(n);if(!o.getAttribute("_isExpandDetail")){var s=this._getRowCell(o,t);s&&(s.width=e,this._changeFrozenRowHeight(n))}}this._refreshFrozenBodyHeight()},_internalFrozenRowsHeight:function(){if(this.isFrozenGrid()){for(var t=this.get_rowCount(),e=0;e<t;e++)this._changeFrozenRowHeight(e);this._refreshFrozenBodyHeight()}},_changeFrozenRowHeight:function(t,e){e=e||this._getRow(t);var i=this._getFrozenRow(t);i&&i.offsetHeight!=e.offsetHeight&&(i.style.height=_px(e.offsetHeight))},_adjustGroupColWidth:function(t,e){var i=this._colGroup;if(i&&(!t.get_visible||t.get_visible())){var n=$common.getChildrenByTagName(i,"col"),o=this._getColumnVisibleIndex(t),s=o;this.get_showRowNo()&&s++,t._getVisibleIndex&&(o=s=t._getVisibleIndex());var r=n[s];r.width=e;var a=this._frozenColGroup;a&&o+1<=this._getFrozenColumnRealCount()&&(r=(n=$common.getChildrenByTagName(a,"col"))[s])&&(r.width=e)}},_refreshBand:function(t,e,i){if(!t)throw Error.argumentNull("band");var n=t.element,o=n.style.display,s="none"==o;if("none"!=o||1==e){var r=t.columns,a=0,l=n.offsetWidth;i!==undefined&&(l+=i);var h=n.colSpan;"0"==n.getAttribute("ieSpan")&&(h=0,n.setAttribute("ieSpan",""));var d=(a=e<2?h+e:h)>0;if($common.setDisplay(n,d),d){if(n.colSpan=a,n.style.width=_px(l),this._setParentBand(t,a-h),s){h=0;for(var _=0,u=r.length;_<u;_++)t.columns[_].get_visible()&&h++;0==h?n.setAttribute("ieSpan",0):n.colSpan=h}}else n.setAttribute("ieSpan",0),this._setParentBand(t,a-h)}else n.setAttribute("ieSpan",0)},_setParentBand:function(t,e){if(t&&t.parentBands&&0!=e)for(var i=0,n=t.parentBands.length;i<n;i++){var o,s=t.parentBands[i];"0"==s.element.getAttribute("ieSpan")?(o=0,s.element.setAttribute("ieSpan","")):o=s.element.colSpan;var r=o+e;r<=0?(s.element.setAttribute("ieSpan",0),$common.setDisplay(s.element,!1)):$common.setDisplay(s.element,!0),s.element.colSpan=r<=0?1:r,this._setParentBand(s,e)}},_internalGetFrozenColumnCount:function(){if(!this.get_allowFrozen())return 0;var t=this._defaultFrozenColumnCount;if(this._configData){var e=this._configData.FrozenColumnCount;void 0!==e&&(t=e)}return t},_internalGetColumnCaption:function(t){var e=t.get_designCaption();if(!this._configData)return e;var i=this._configData.ColumnsCaption;if(!i)return e;var n=i[t.get_name()];return n?n.toString():e},_internalGetColumnWidth:function(t){var e=t.get_designWidth();if(t.get_allowResize()||t.get_allowStretch()){var i=this._getColumnConfigWidth(t);i>0&&(e=i)}return e},_getColumnConfigWidth:function(t){if(!this._configData)return 0;var e=this._configData.ColumnsWidth;return e?e[t.get_name()]:0},get_configData:function(){return this._configData},set_configData:function(t){this._configData=t},get_lazyPageItem:function(){return this._lazyPageItem},set_lazyPageItem:function(t){this._lazyPageItem=t},_internalSetColumnCaption:function(t,e,i){if(i){this._configData||(this._configData={});var n=this._configData.ColumnsCaption;n||(n=this._configData.ColumnsCaption={});var o=t.get_name();e==t.get_designCaption()?delete n[o]:n[o]=e}else t.set_designCaption(e);t._internalRefreshCaption()},_clearConfigColumnCaption:function(t){if(this._configData){var e=this._configData.ColumnsCaption;if(e){delete e[t.get_name()]}}},_internalSetStretchColumnWidth:function(t,e,i,n,o,s){if("number"!=typeof e&&(e=Number(e)),n?this._updateConfigData(t,e):t.set_designWidth(e),s)return this._refreshColumnHeader(t,i,e),this._adjustGroupColWidth(t,e),this._refreshFooterWidth(),void this._doAdjustRowsTableWidth();this._refreshColumnWidth(t,e,i),this._filterBar&&!o&&this._filterBar.set_width(t,e)},_internalSetColumnWidth:function(t,e,i,n,o){this._internalSetStretchColumnWidth(t,e,i,n,o),n&&(this._configDataChanged=!0)},_updateConfigData:function(t,e){this._configData||(this._configData={});var i=this._configData.ColumnsWidth;i||(i=this._configData.ColumnsWidth={});var n=t.get_name();e==t.get_designWidth()?delete i[n]:i[n]=e},_clearColumnWidth:function(t){var e=this._configData;if(e){var i=e.ColumnsWidth;i&&delete i[t]}},_internalSwapColumn:function(t,e){t._hideEditor(),e._hideEditor();var i=t._elements,n=e._elements,o=t.get_index(),s=e.get_index(),r=t.get_frozenIndex(),a=e.get_frozenIndex();t._internalDisposeHeader(!0),e._internalDisposeHeader(!0),t._internalSetElements(n,s,a,e),e._internalSetElements(i,o,r,t);var l=this._columns;l[o]=e,l[s]=t,this._changeColumnCellColor(t,e),this._refreshColumn(t),this._refreshColumn(e),this._saveColumnsDisplayOrder(),this._filterBar&&this._filterBar.swapColumn(t,e),this.updateColumnsIcon([t,e])},_saveColumnsDisplayOrder:function(){this._configData||(this._configData={});for(var t=[],e=this._columns,i=0,n=e.length;i<n;i++){var o=e[i];o._isExpandNew||Array.add(t,o.get_name())}this._configData.ColumnsDisplayOrder=t,this._configDataChanged=!0},updateColumnsIcon:function(t){t||(t=this._columns),t.forEach(function(t){t.updateIcon()})},_changeColumnCellColor:function(t,e){if(t&&e)for(var i=t.get_index(),n=e.get_index(),o=0,s=this.get_rowCount();o<s;o++){var r=this._getRow(o);if(!r.getAttribute("_isExpandDetail")){var a=this._getRowCell(r,i),l=this._getRowCell(r,n),h=a._fontColor;a._fontColor=l._fontColor,l._fontColor=h}}},_refreshColumn:function(t){var e=t.get_visible(),i=t.get_width();if(this.get_showHeader()){l=t.get_headerElement();$common.setDisplay(l,e),l.width=i,l.align=t.get_headerAlign(),this._adjustGroupColWidth(t,i)}t._internalRefreshCaption(),t._internalRefreshSortOrder();for(var n=t.get_index(),o=0,s=this.get_rowCount();o<s;o++){var r=this._getRow(o);if(!r.getAttribute("_isExpandDetail")){if(l=this._getRowCell(r,n)){$dom.setCssClass(!e,l,"dnone"),l._fontColor="",l.align=t.get_textAlign(),l.width=i,l.setAttribute("_columnIndex",n),this._initCellStyle(n,l);var a=o;this._rowExpandColumn&&!this._isTree&&(a=this._getRowIndex(r)),t.initCellHTML(a,l)}}}if(this.get_showFooter()){var l=t.get_footerElement();$common.setDisplay(l,e),l.width=i,t.doRefreshFooter(),this._refreshFooterWidth()}},_internalRefreshColumnContent:function(t){this._rowCreated&&(t._refreshColumnHTML(),t.doRefreshFooter())},_internalRefreshColumnStyle:function(t){for(var e=t.get_index(),i=0,n=this.get_rowCount();i<n;i++){var o=this._getRow(i),s=this._getRowCell(o,e);this._initCellStyle(e,s)}},_internalRefreshNullText:function(){for(var t=this.get_rowCount(),e=0,i=this.get_columnCount();e<i;e++){var n=this.getColumnByIndex(e);n.get_visible()&&n._nullDisplayText&&n._refreshColumnHTML(t)}},get_designColumnsDisplayOrder:function(){return this._designColumnsDisplayOrder},set_designColumnsDisplayOrder:function(t){this._designColumnsDisplayOrder=t},_internalResetConfig:function(){for(var t=0,e=this.get_columnCount();t<e;t++){var i=this.getColumnByIndex(t);i._isExpand||(i.set_caption(i.get_designCaption(),!0),i.set_width(i.get_designWidth(),!0),i.set_visible(i.get_designVisible(),!0))}this.get_noColumn()&&this.get_noColumn().set_width(this.get_noColumn().get_designWidth(),!0),this._configData&&delete this._configData.FrozenColumnCount;var n=this.get_designColumnsDisplayOrder();n&&this._resetColumnsDisplayOrder(n),this._configData&&(delete this._configData,this._configData=null),this._setFrozenVisible(!1),this.resetColumnStretch(!0);var o=this.get_events().getHandler("afterResetConfig");o&&o(this),this._filterBar&&!this.isFrozenGrid()&&this._filterBar.reset()},_resetColumnsDisplayOrder:function(t){for(var e={},i=0,n=t.length;i<n;i++){d=t[i];e[d]=i}for(var o=this._columns,i=0,n=o.length;i<n;i++){var s=o[i],r=e[s.get_name()];if(s._orderChange=r!=i,!(r>-1)){for(var a=s.get_index(),l=a,h=0;h<t.length;h++){var d=t[h];(r=e[d])<a||!e[d]||(l++,e[d]=l)}e[s.get_name()]=a}}for(var n=o.length,_=new Array(n),i=0;i<n;i++){s=o[i];_[i]=s._elements}o.sort(function(t,i){var n=e[t.get_name()];void 0===n&&(n=0);var o=e[i.get_name()];return void 0===o&&(o=0),n-o}),this._disposeColumnsHeader(this._columns,!0),this._initColumnForzenIndex();for(i=0;i<n;i++){var s=o[i],u=_[i];s._internalSetElements(u,i),s._orderChange&&this._refreshColumn(s)}},_checkConfigData:function(t,e){var i=t[e];return Object.isEmpty(i)?(delete t[e],null):i},_internalSaveConfig:function(t){if(this.get_saveConfig()){var e=this.get_configData();if(e){var i=this._checkConfigData(e,"ColumnsVisible"),n=this._checkConfigData(e,"ColumnsCaption"),o=this._checkConfigData(e,"ColumnsWidth"),s=this._checkConfigData(e,"FrozenColumnCount"),r=this._checkConfigData(e,"PageSize");null==i&&null==n&&null==o&&null==e.ColumnsDisplayOrder&&null==s&&null==r&&(e=null)}var a=this.get_guid()+"_"+this.get_configID();this._configDataChanged=!1,$craba.checkConfig("grid",a,e,this.get_form())||this._internalSaveConfigOld(a,e,t)}},_internalSaveConfigOld:function(t,e,i){var n=Craba.Web.Script.DataService.create(this.get_form());if(i)try{n.SaveGridConfig(t,e,!0)}catch(o){}else n.SaveGridConfig(t,e,Function.emptyMethod,Function.emptyMethod)},config:function(t){if(this.get_visible()){this._hideEditor(),this._setFrozenVisible(!1);var e=new Sys.UI.Form(this._grid);e._grid=this,e._hideNotAllowConfigColumns=t;var i=this;e.add_closed(function(){i._hideEditor()},e),e.showModal($common.getSysUIBaseURI(this.get_form())+"Grid/GridConfig.gspx")}else $common.showHint("亲,不允许对隐藏的表格进行列配置哦!",5)},filter:function(){if(!this.findPager())throw Error.invalidOperation("过滤暂时只支持有分页器的 Grid");var t=$common.getSysUIBaseURI()+"Grid/GridFilter.gspx",e=new Sys.UI.Form(this._grid);e._grid=this,e.showModal(t)},_findBand:function(t){var e=this._bands;if(!e||!t)return null;t=t.toLowerCase();for(var i=0,n=e.length;i<n;i++){var o=e[i],s=o.name;if(s&&s.toLowerCase()==t)return o}return null},_getFirstColumnExpandCount:function(){var t=this._columnExpands,e=t&&t.length>0?t[0]:null;return e&&e.captions?e.captions.length:-1},_initColumnExpands:function(){this._body.scrollLeft>0&&(this._body.scrollLeft=0),this._clearColumnHeadersHighlight();var t=this._columnExpands;if(t)for(var e=0,i=t.length;e<i;e++)this._initColumnExpand(t[e])},expandColumn:function(t,e,i){e||(e=[]),i||(i=[]);var n={name:t,dataFields:e,captions:i};this.set_columnExpands([n])},_initColumnExpand:function(t){var e=t?t.name:null;if(e){var i=this._findBand(e);if(i)this._expandBand(i,t);else{var n=this.findColumn(e);if(!n)throw Error.invalidOperation("列“"+e+"”不存在");var o=n._internalGetChangeHandler();o&&n.add_change(o),this._expandColumn(n,t)}}},_initBand:function(t){if(!t.element){t.element=$get(this.get_id()+"_band"+t.index);for(var e=t.index,i=t.columns=[],n=0,o=this.get_columnCount();n<o;n++){var s=this.getColumnByIndex(n);s.get_bandIndex()==e&&(s.set_groupName(t.caption),Array.add(i,s))}}},getBandByIndex:function(t){var e=this._bands;if(t>=0&&e&&t<e.length){var i=e[t];this._initBand(i);var n=i.parentBands;if(!n){n=i.parentBands=[];for(var o=i.parentBandIndex;o>-1;){var s=e[o];s?(s.element=$get(this.get_id()+"_band"+s.index),n.push(s),o=s.parentBandIndex):o=-1}}return i}return null},_expandBand:function(t,e){this._initBand(t);var i=e.captions,n=e.dataFields,o=e.reportFields;o||(o=[]);var s=i?i.length:0,r=t.expanded;if(!r){r=t.expanded=[t];for(var a=t.columns,l=0,h=a.length;l<h;l++){a[l].set_groupName(t.name)}}for(var d=t.expanded.length,l=0;l<d;l++){var _=l<s;this._initOldBand(r[l],_,l,i[l],n,o[l])}for(l=d;l<s;l++)r[l]=this._addNewBand(t,l,i[l],n,o[l])},_initOldBand:function(t,e,i,n,o,s){var r=t.element;this._savedHeaderWidth=this._header.offsetWidth,e?r.firstChild.innerText=n:$common.setDisplay(r,e),t.caption=n;for(var a=t.columns,l=a.length,h=0;h<l;h++){var d=a[h],_=e;this._maxHeaderLevel>1&&d.set_groupName(n),d.set_allowConfig(!1),d.set_visible(_,!1),d._isExpand=!0,d._bandVisible=e;var u=o[i*l+h];d.set_dataField(u),_?(d._noUse=!1,this._initColumnReportField(d,d,s,u)):d._noUse=!0}},_initColumnReportField:function(t,e,i,n){i?t.set_reportField(i+e.get_designCaption()):t.set_reportField(n)},_expandColumn:function(t,e){var i=e.captions,n=e.dataFields,o=e.reportFields;o||(o=[]);var s=i?i.length:0,r=t.expanded,a=t.get_band();r||(r=t.expanded=[t],this._maxHeaderLevel>1&&!a&&t.set_groupName(t.get_name()));for(var l=t.expanded.length,h=a?a.element:null,d=0;d<l;d++){var _=d<s;this._initOldColumn(r[d],_,i[d],n[d],o[d])}h&&(0==s&&h.setAttribute("ieSpan",0),h.colSpan=s<=l?s<=0?1:s:l);for(d=l;d<s;d++){var u=this._addNewColumn(t,d,i[d],n[d],o[d]);u._isExpandNew=!0,r[d]=u}},_initOldColumn:function(t,e,i,n,o){t.get_headerElement().style.overflow="hidden",t.set_visible(e,!0),this._clearConfigColumnCaption(t),e&&(t.set_caption(i,!0),t.set_designCaption(i),t.set_dataField(n),t.set_reportField(o))},_addNewColumn:function(t,e,i,n,o,s,r){var a=t._bandTd||t.get_headerElement();r&&t.get_band()&&(a=t.get_band().element,l--);var l=e,h=this._insertTd(a,l,i,!0);h.rowSpan=this._getMultiRows(),h.colSpan=1;var d=null,_=t.get_footerElement();_&&(d=this._insertTd(_,l,"",!1));var u=this._insertColumn(t.get_index()+e,t.get_params(),t.get_name(),n,h,d,s);u.set_caption(i),s&&s.properties&&s.properties.designCaption?u.set_designCaption(s.properties.designCaption):(this._clearConfigColumnCaption(u),u.set_designCaption(i)),u.set_reportField(o);var c=t._internalGetChangeHandler();return c&&u.add_change(c),r||this._initColumnBand(u,t,e),u.get_visible()||this._refreshColumnVisible(u),this._doAdjustRowsTableWidth(),u},_initColumnBand:function(t,e,i){if(this._maxHeaderLevel>1){var n=e.get_name(),o=e.get_groupName();t.set_groupName(o||n)}var s=e.get_bandIndex();if(s>=0){var r=this.getBandByIndex(s);t.set_bandIndex(s),t.set_band(r),r.columns[i]=t,this._refreshBand(r,1)}},_doAdjustRowsTableWidth:function(){var t=this;$craba.asyncFun(this,function(){t._doAsyncTableWidth()},50,"adjustWidth")},_doAsyncTableWidth:function(){if(!this.get_isDisposed()&&this._rowsTable){this._doAdjustHeaderSpacer(),this._doAdjustFooterSpacer();var t=this._headerRow?this._headerRow.offsetWidth:this.get_width();t<5||this._setRowsTableWidth(this._rowsTable,t)}},_createHeaderTd:function(t,e,i){var n=$common.createTd(),o=i?"GridHeaderCaption":"GridFooterCell";n.className=o,n.width=t.width,n.align=t.align,n.colSpan=t.colSpan,n.rowSpan=t.rowSpan;var s=$common.createClassDiv(o+"Text");return $craba.innerHTMLs(s,e),n.appendChild(s),n},_insertTd:function(t,e,i,n){var o=this._createHeaderTd(t,i,n),s=t.parentNode,r=$common.getChildrenByTagName(s,"td"),a=Array.indexOf(r,t)+e;return a==r.length?s.appendChild(o):s.insertBefore(o,r[a]),o},_addNewBand:function(t,e,i,n,o){var s=this.get_bands(),r=s&&s.length>0?s.length-1:0,a={},l=t.element,h=(l.offsetWidth,this._insertTd(l,e,i,!0));a.element=h,h.colSpan=t.columns.length,""!=i&&(a.caption=i);var d=0,_=t.columns,u=_.length;a.columns=new Array(u);for(var c=e*u,g=0;g<u;g++){var f=_[g],m=f.get_headerElement(),C=this._insertTd(m,c,f.get_designCaption(),!0),v=null,p=f.get_footerElement();p&&(v=this._insertTd(p,c,"",!1));var w=n[e*u+g];(S=this._insertColumn(f.get_index()+e*u,f.get_params(),f.get_name(),w,C,v)).set_groupName(t.name),this._initColumnReportField(S,f,o,w),S.set_bandIndex(r+e),S.set_band(a),S.set_allowConfig(!1),S.set_icon(f.get_icon()),S.set_headerCssClass(f.get_headerCssClass()),""!=i&&S.set_groupName(i),S._isExpand=!0,d+=S.get_width()+1,a.columns[g]=S}if(Sys.Browser.isIE8){var y=this._header;this._setHeadTableWidth(y,y.offsetWidth+d)}for(g=0;g<u;g++){var S=a.columns[g];S._internalRefreshCaption(),S.get_visible()||this._refreshColumnVisible(S)}return this._doAdjustRowsTableWidth(),a},_setHeadTableWidth:function(t,e){e<10||(Sys.Browser.isIE8?(t.style.tableLayout="auto",t.style.width=_px(e),t.style.tableLayout="fixed"):t.style.width=_px(e))},_setRowsTableWidth:function(t,e){if(t){var i=0==this.get_columnCount()?this._allColumnWidth:this._getAllColumnWidth();if(!(i<=0)){var n=i;if($common.setWidth(t,n),0==this.get_rowCount()){var o=$common.getNextSibling(t);o&&$common.setWidth(o,n)}}}},_insertColumn:function(t,e,i,n,o,s,r){for(var a=t,l=this.get_columnCount();a<l;a++){this.getColumnByIndex(a).set_index(a+1)}var h=this._createColumn(t,e,o,s,null,null,r);h.set_dataField(n),r&&r.name?h.set_name(r.name):h.set_name(i+t),h._isNew=!0,Array.insert(this._columns,t,h),h.set_index(t);var d=h.get_width();this._colGroup?this._adjustGroupColVisible(h,!0):o.width=d,s&&(s.width=d);for(var _=this.get_showRowNo()?1:0,a=0,l=this.get_rowCount();a<l;a++){var u=this._getRow(a),c=this._createCell(h),g=$common.getChildrenByTagName(u,"td");t==g.length-_?u.appendChild(c):u.insertBefore(c,g[t+_]),this._initCellStyle(t,c)}return this._initColumnForzenIndex(),h},_clearColumnHeadersHighlight:function(){this._lastHighlightRect&&this._lastHighlightColumn&&(this._doHighlightColumnHeaders(this._lastHighlightColumn,this._lastHighlightRect,!1),this._lastHighlightRect=null)},highlightColumnHeaders:function(t,e){this._lastHighlightRect&&this._doHighlightColumnHeaders(t,this._lastHighlightRect,!1),this._doHighlightColumnHeaders(t,e,!0),this._lastHighlightRect=e,this._lastHighlightColumn=t},_doHighlightColumnHeaders:function(t,e,i){for(var n=(_=this.getColumn(t).get_headerElement()).parentNode,o=$common.getChildrenByTagName(n,"td"),s=Array.indexOf(o,_),r=e.x,a=e.y,l=e.x+e.width-1,h=e.y+e.height-1,d=r;d<=l;d++)for(var _=o[s+d],u=$common.getFirstChildByTagName(_,"div").childNodes,c=a;c<=h;c++){u[c].style.backgroundColor=i?"#FFA535":""}},getRowExpanded:function(t){this._checkRowIndex(t);var e=this._checkHasExpandColumn();return this.getRowData(t)[e]},setExpandAllRows:function(t){if(this._rowExpandColumn){this._rowExpandColumn.set_expandAll(t);for(var e=this.get_recordCount(),i=0;i<e;i++)t?this.expandRow(i):this.collapseRow(i)}},setExpandButtonVisible:function(t,e){if(!(t<0||t>=this.get_recordCount())){this._checkHasExpandColumn();this.getRowEnabled(t)&&(this._rowExpandColumn._setCellValue(t,e?0:-1),this.setRowColumnVisible(t,this._rowExpandColumn,e))}},expandRow:function(t,e,i,n){if(!(t<0||t>=this.get_recordCount())){this.clearSortFlag(),null==this._saveAllowSort&&(this._saveAllowSort=this.get_allowSort()),this.set_allowSort(!1);var o=this._getRow(t);this._refreshCellValue(o,t,this._rowExpandColumn,1);var s=this.get_columnCount(),r=document.createElement("tr");r.setAttribute("_isExpandDetail",1),r.className="GridBodyRow",this.get_showRowNo()&&this._createNoTd(r);for(var a=this._rowExpandColumn.get_index(),l=0;l<=a;l++){this._createNoTd(r).className=this._rowExpandColumn.get_cellCssClass()}var h=this._createNoTd(r);if(h.colSpan=s-a,h.vAlign="top",h.className="GridDetailTd",this._rows.insertBefore(r,o.nextSibling),e){var d=new Sys.UI.Form(this);d._parentGridRowIndex=t,d._parentGrid=this,d._useEsc=!1,d._initClientSize(h,0),d.showPage($common.encodeUrlParams(e,i),h,i),this._appendChildForm(t,d),n&&n.get_callBack()&&n.get_callBack()(h,d)}else n&&n.get_callBack()&&n.get_callBack()(h,null)}},collapseRow:function(t){if(!(t<0||t>=this.get_recordCount())){var e=this._checkHasExpandColumn(),i=this.getRowData(t);if(i){if(1==i[e]){this._removeChildForm(t);var n=this._getRow(t);this._refreshCellValue(n,t,this._rowExpandColumn,0),$removeNode($common.getNextSibling(n)),this._resetSortFlag()}}}},_refreshCellValue:function(t,e,i,n){var o=this._getRowCell(t,i.get_index());i._getDataController().setCellValue(e,i,n),i.initCellHTML(e,o);var s=i.get_index();if(this.isFrozenGrid()&&s+1<=this._getFrozenColumnRealCount()){var r=this._getFrozenRow(e),a=this._getFrozenRowCell(r,s);i.initCellHTML(e,a)}},_isChildGrid:function(){return null!=this.get_form()._parentGrid},_resetSortFlag:function(){this._hasChildGrid()||this.set_allowSort(this._saveAllowSort)},getChildForms:function(){return this._expandChildForms},getChildForm:function(t){var e=this._expandChildForms;return e?e[t]:null},_appendChildForm:function(t,e){var i=this._expandChildForms;i||(i=this._expandChildForms={}),i[t]=e},_removeChildForm:function(t){var e=this._expandChildForms;if(e){var i=e[t];if(i){if(i.close)i.close();else{this.get_form().removeControl(i)}delete e[t]}}},_clearExpandRow:function(){var t=this._expandChildForms;if(t){var e=this.get_form();for(var i in t){var n=t[i];n&&(n.close?n.close():e.removeControl(n))}delete this._expandChildForms,this._resetSortFlag()}},showPopup:function(t,e,i){$gridExt.showPopup(this,t,e,i)},get_allowPopup:function(){return this._allowPopup},set_allowPopup:function(t){this._allowPopup=t},get_autoPagerPageSize:function(){return this._autoPagerPageSize},set_autoPagerPageSize:function(t){this._autoPagerPageSize=t},add_popuping:function(t){this.get_events().addHandler("_popuping",t)},remove_popuping:function(t){this.get_events().removeHandler("_popuping",t)},add_filter:function(t){this.get_events().addHandler("filter",t)},remove_filter:function(t){this.get_events().removeHandler("filter",t)},hasScroll:function(){var t=this._body;return!!t&&(t.scrollWidth>t.clientWidth||t.scrollHeight>t.clientHeight)},hasXScroll:function(){var t=this._body;return!!t&&t.scrollWidth>t.clientWidth},hasYScroll:function(){var t=this._body;return!!t&&t.scrollHeight>t.clientHeight},_initGridShowMax:function(){this._allowPopup&&$gridExt._initGridShowMax(this)},get_enabled:function(){return this._enabled},set_enabled:function(t){this._enabled!=t&&(this._enabled=t,this.get_isInitialized()&&($craba._initEnabledlay(this),this._multiSelectColumn&&this._multiSelectColumn.set_enabled(t),this._rowDeleteColumn&&this._rowDeleteColumn.set_enabled(t),this.refreshStyle()))},_initOverlaySize:function(){if(this._overlay)if(this.hasYScroll()?$common.setWidth(this._overlay,this.get_width()-this.get_scrollBarWidth()):this._overlay.style.width="100%",this.hasXScroll()){var t=this.get_height()-this.get_scrollBarWidth();this._footer&&(t-=this._footer.offsetHeight),$common.setHeight(this._overlay,t)}else this._overlay.style.height="100%"},removeColumn:function(t){var e;if(!(e="number"==typeof t?this._columns[t]:"string"==typeof t?this.findColumn(t):t))throw Error.abort(String.format("当前删除的列({0})不存在",t));for(var i=e.get_dataField(),n=(t=e.get_index())+1,o=this.get_columnCount();n<o;n++){this.getColumnByIndex(n).set_index(n-1)}var s=e.get_headerElement();s.parentNode.removeChild(s);var r=e.get_footerElement();r&&r.parentNode&&r.parentNode.removeChild(r);for(var n=0,o=this.get_rowCount();n<o;n++){var a=this._getRow(n),l=this._getRowCell(a,t);a.removeChild(l)}e.dispose(),this._allColumnWidth=1,Array.removeAt(this._columns,t),this._commandColumns&&Array.remove(this._commandColumns,e),this._mergeRowColumns&&Array.remove(this._mergeRowColumns,e),this._removeDisplayOrder(i),this._doAdjustRowsTableWidth(),this._resetColumnIndex(t),this._asyncFilterBar(),this.refreshScrollBar()},insertColumn:function(t,e,i){if("number"!=typeof t)throw Error.abort("第一个参数必须传入索引");e.inited||(e=this._initNewColumnParams(e)),!1!==i&&this._addDisplayOrder(t,e.dataField);var n=this._columns;e.configIndex!==undefined&&(t=Math.min(e.configIndex,n.length));var o=this._columns[t];if(!o)return this.appendColumn(e,!1);var s=this._insertColumnByParams(o,e);return this._resetColumnIndex(t),this._asyncFilterBar(),this.refreshScrollBar(),s.get_visible()&&e.refresh&&s._refreshColumnHTML(),s},_addDisplayOrder:function(t,e){var i=this.get_designColumnsDisplayOrder();i||(i=[]),Array.insert(i,t,e)},_removeDisplayOrder:function(t){var e=this.get_designColumnsDisplayOrder();e&&Array.remove(e,t)},appendColumn:function(t,e){t.inited||(t=this._initNewColumnParams(t));var i=this._columns;if(t.configIndex!==undefined){var n=Math.min(t.configIndex,i.length);return delete t.configIndex,this.insertColumn(n,t,!1)}!1!==e&&this._addDisplayOrder(i.length,t.dataField);var o;if(i.length>0){var s=i[i.length-1],r=!!s.get_band();"object"==typeof e&&(r=!e.child),o=this._addNewColumn(s,1,t.caption,t.dataField,t.reportField,t,r)}else o=this._insertColumnByParams(null,t);return this._asyncFilterBar(),this.refreshScrollBar(),o.get_visible()&&t.refresh&&o._refreshColumnHTML(),o},appendBand:function(t){if("object"==typeof t&&t.columnParams){var e=t.columnParams.length;if(0!=e){for(var i=0,n=0,o=t.columnParams.length;n<o;n++){x=t.columnParams[n];Object.isUndefinedOrNull(x.properties)&&(x.properties={}),Object.isUndefinedOrNull(x.properties.designWidth)&&(x.properties.designWidth=100),i+=x.properties.designWidth}var s=this._columns;if(0!=s.length){var r=!Object.isUndefinedOrNull(t.index),a=s[s.length-1];r&&(a=s[t.index]);var l=a.get_index(),h=a._bandTd?a._bandTd:a.get_headerElement();a.get_band()&&(h=a.get_band().element);var d=this._header,_=$common.getTableBody(d),u=_.firstChild,c=0;if(r)for(var g=$common.getPreviousSibling(h);g;)g.colSpan>1&&(c+=g.colSpan),g=$common.getPreviousSibling(g);var f=r?0:1,m=this._insertTd(h,f,t.caption,!0);m.align="center",m.width=i,m.colSpan=e,m.isBand=!0;for(var C=$common.getChildrenByTagName(u,"td"),n=0,o=C.length;n<o;n++){var v=C[n];v.colSpan>1||v.isBand?v.rowSpan=1:v.rowSpan=2}var p=null,w=this._getMultiRows()>1?_.lastChild:this._expandRow;w?r&&(p=w.childNodes[c]):((w=$common.createTr()).className="GridHeaderRow",_.appendChild(w),this._expandRow=w),this._bands||(this._bands=[]);var y=this._bands.length,S={index:y,name:t.caption,caption:t.caption,element:m};this._bands.push(S),this._maxHeaderLevel=2;for(var n=0,o=t.columnParams.length;n<o;n++){var x,R={width:(x=t.columnParams[n]).properties.designWidth,align:"center",colSpan:1,rowSpan:1},I=this._createHeaderTd(R,"",!0);p?w.insertBefore(I,p):w.appendChild(I);var D=null,b=a.get_footerElement();b&&(D=this._insertTd(b,f,"",!1));var B=this._insertColumn(l+f,x,x.dataField,x.dataField,I,D,x);B.set_caption(x.caption),B.set_designCaption(x.caption),B.set_reportField(x.reportField),B.set_index(l+f),B.set_allowConfig(!1),B.set_allowResize(!1),B._bandTd=m,B._bandName=t.name,B._groupName=t.caption,B._isExpand=!0,B._bandIndex=y,B.get_visible()||this._refreshColumnVisible(B),a=B,l++}this._resetColumnIndex(l),this._asyncFilterBar(),this._refreshFrozenHeaderHeight(),this._doAdjustRowsTableWidth()}}}},removeBand:function(t){for(var e=null,i=[],n=0,o=this._columns.length;n<o;n++){(s=this._columns[n])._bandName==t&&(e=s._bandTd,i.push(s))}if(0!=i.length){for(var n=0,o=i.length;n<o;n++){var s=i[n];this.removeColumn(s)}$removeNode(e);var r=this._header,a=$common.getTableBody(r),l=this._getMultiRows()>1?a.lastChild:this._expandRow;l&&0==l.childNodes.length&&($removeNode(l),delete this._expandRow,Array.forEach(this._headerRow.childNodes,function(t){t.rowSpan=1})),this._asyncFilterBar(),this._doAdjustRowsTableWidth()}},_asyncFilterBar:function(){if(this._filterBar){var t=this;t._filterTimer&&clearTimeout(t._filterTimer),t._filterTimer=setTimeout(function(){t._filterBar.reset(),t._filterTimer=null},50)}},_initNewColumnParams:function(t){var e=this._columns;e||(e=this._columns=[]),t&&"object"==typeof t||(t={type:Sys.UI.Controls.TextColumn,caption:"新增列",dataField:"dataField",name:"name",reportField:"reportField"}),Object.isUndefinedOrNull(t.properties)&&(t.properties={}),Object.isUndefinedOrNull(t.properties.visible)||(t.properties.designVisible=t.properties.visible),t.properties.designCaption=t.caption,t.properties.allowFrozen=!1,t.inited=!0;var i=t.dataField,n=this.findColumn(i);if(!n)return t.name=t.dataField,this._checkNewColumnConfig(t),t;for(var o=0,s=t.reportField,r=t.caption;n;)t.dataField=i+"_"+o,t.reportField=s+"_"+o,t.caption=r+"_"+o,t.properties.designCaption=r+"_"+o,t.name=i+"_"+o,n=this.findColumn(t.dataField),o++;return this._checkNewColumnConfig(t),t},_checkNewColumnConfig:function(t){var e=t.dataField,i=this.get_configData();if(i){var n=this._checkConfigData(i,"ColumnsCaption"),o=this._checkConfigData(i,"ColumnsVisible"),s=this._checkConfigData(i,"ColumnsDisplayOrder");if(n&&n[e]&&(t.caption=n[e]),o&&!Object.isUndefinedOrNull(o[e])&&(t.properties.visible=o[e]),s){var r=Array.indexOf(s,e);r>-1&&(r=this._checkExistIndex(s,r),t.configIndex=r)}}},_checkExistIndex:function(t,e){var i=0,n=0;for(t.length;n<e;n++){var o=t[n];this.findColumn(o)&&i++}return i},_insertColumnByParams:function(t,e){var i=this._headerRow.firstChild,n=1,o=0;t&&(n=0,o=t.get_index(),i=t._bandTd||t.get_headerElement());var s=this._insertTd(i,n,e.caption,!0);s.rowSpan=this._getMultiRows();var r=null,a=this._footerRow;return a&&(a=this._footerRow.firstChild,t&&(a=t.get_footerElement()),r=this._insertTd(a,n,"",!1)),Object.isUndefinedOrNull(e.properties)&&(e.properties={}),Object.isUndefinedOrNull(e.properties.designWidth)&&(e.properties.designWidth=100),newColumn=this._insertColumn(o,e,e.dataField,e.dataField,s,r,e),newColumn.set_caption(e.caption),e&&e.properties&&e.properties.designCaption?newColumn.set_designCaption(e.properties.designCaption):newColumn.set_designCaption(e.caption),newColumn.set_reportField(e.reportField),newColumn.set_index(o),this._initColumnBand(newColumn,t,1),newColumn.get_visible()||this._refreshColumnVisible(newColumn),this._doAdjustRowsTableWidth(),newColumn},get_expandColumn:function(){return this._rowExpandColumn},get_pagerInnerBlockID:function(){return this._pagerInnerBlockID},set_pagerInnerBlockID:function(t){this._pagerInnerBlockID=t},get_dropDownNumericButton:function(){return this._dropDownNumericButton},set_dropDownNumericButton:function(t){this._dropDownNumericButton=t}},Sys.UI.Controls.Grid.registerClass("Sys.UI.Controls.Grid",Sys.UI.Control),Sys.UI.Controls.Grid.create=function(t,e,i,n,o){var s=$common.createClassDiv("GridBlock"),r=e&&e.guid?"$"+e.guid.replace("_","$"):"",a=$common.createClassDiv("Grid");a.id=r,e.width&&(s.style.width=_px(e.width),$dom.addCssClass(s,"Flex0"),delete e.width),e.height&&(s.style.height=_px(e.height),$dom.addCssClass(s,"Flex0"),delete e.height);var l=e.columnsParams,h=l?l.length:0,d=e.showHeader;if(Object.isUndefined(d)&&(d=!0),d){var _=0,u=e.showRowNo;Object.isUndefined(u)&&(u=!0);for(w=0;w<h;w++){var c=(y=l[w]).properties.width;c>0?(y.properties.designWidth=c,delete y.properties.width):(c=y.properties.designWidth)||(c=120,y.properties.designWidth=120),_+=c}var g=$gridExt.getRowNoColumnWidth();u&&(_+=g);var f=document.createElement("div");f.className="GridHeaderBar Normal";var m=$common.createTable(0);m.className="GridHeader",m.style.tableLayout="fixed",m.width=_>0?_:1;var C=$common.createTBody(),v=$common.createTr();v.className="GridHeaderRow";var p=function(t,e,i,n){var o=$common.createTd();o.className="GridHeaderCaption",t&&(o.width=t),o.align=e,n&&(o.id=n);var s=document.createElement("div");s.className="GridHeaderCaptionText",s.innerText=i,o.appendChild(s),v.appendChild(o)};u&&p(g,"center","行号");for(var w=0;w<h;w++){var y=l[w];p(y.properties.width?y.properties.width:y.properties.designWidth,"",y.properties.caption?y.properties.caption:y.properties.designCaption,r+"_column"+w)}p(null,"","&nbsp;"),C.appendChild(v),m.appendChild(C),f.style.overflow="hidden",f.appendChild(m),a.appendChild(f)}var S=$common.createClassDiv("GridBlGridBody Normalock");e.hint&&(S.title=e.hint,delete e.hint),a.appendChild(S),s.appendChild(a),t.appendChild(s),o=o||Sys.UI.Controls.Grid;var x=$create(o,e,a,i,n);return x.doFormInit(),x},_Z_74=function(t,e){_Z_74.initializeBase(this,[e]),this._grid=t,this._editBuffer=null},_Z_74.prototype={dispose:function(){delete this._editBuffer,this._grid=null,_Z_74.callBaseMethod(this,"dispose")},get_grid:function(){return this._grid},getCellValue:function(t,e){return this.doGetCellValue(t,e.get_dataField())},getCellText:function(t,e,i){var n=e.get_displayField();return n?i=this.doGetCellValue(t,n):void 0===i&&(i=this.doGetCellValue(t,e.get_dataField())),null!=i?i:""},doGetCellValue:function(t,e){throw Error.notImplemented()},clearEditBuffer:function(){this._editBuffer&&delete this._editBuffer},_getEditBuffer:function(){var t=this._editBuffer;return t||(this._editBuffer=t={}),t},_isEquals:function(t,e,i){var n=e.indexOf(".");if(n>0){var o=e.substring(0,n);e=e.substr(n+1);var s=t[o];return s||(s={},t[o]=s),this._isEquals(s,e,i)}var r=t[e];return!(r&&!Type.isInstanceOfPrimitiveType(i))&&r==i},getRecordList:function(){return this._dataSource},setCellValue:function(t,e,i){this.doSetCellValue(t,e,i)&&this.get_grid().doChange(t,e,i)},doSetCellValue:function(t,e,i){throw Error.notImplemented()},get_hasRecord:function(){return null!=this._dataSource||null!=this._editBuffer},get_recordCount:function(){var t=this.getRecordList();return Math.max(t?t.length:0,this._getRecordCountInEditBuffer())},_getRecordCountInEditBuffer:function(){var t=0,e=this._editBuffer;if(e)for(var i in e)t=Math.max(t,parseInt(i)+1);return t},recordExists:function(t){return this.indexOfRecord(t)>=0},indexOfRecord:function(t){var e=this.getRecordList();if(e)for(var i=e.length,n=0;n<i;n++)if(this.recordEquals(t,e[n]))return n;return this._indexOfRecordInEditBuffer(t)},_indexOfRecordInEditBuffer:function(t){var e=this._editBuffer;if(e)for(var i in e)if(this.recordEquals(t,e[i]))return i;return-1},recordEquals:function(t,e){throw Error.notImplemented()},modifyRecord:function(t,e){var i=this.getRecordList();i&&t<i.length?i[t]=e:this._setRecordInEditBuffer(t,e)},_setRecordInEditBuffer:function(t,e){var i=this._getEditBuffer();if((n=i[t])||void 0!==e&&null!=e)if(n)i[t]=e;else{i[t]=e;var n={};this.doNewRecord(n);for(var o in n)"undefined"==typeof e[o]&&(e[o]=n[o])}},doNewRecord:function(t){for(var e=this.get_grid(),i=e.get_columnCount(),n=0;n<i;n++){e.getColumnByIndex(n).initNewRecord(t)}e._internalNewRecord(t)},getRecord:function(t){var e=this.getRecordList();return e&&t<e.length?e[t]:this._getRecordInEditBuffer(t)},clearRecord:function(t){var e=this.getRecord(t);for(var i in e)delete e[i];return e},_getRecordInEditBuffer:function(t){var e=this._editBuffer;return e?e[t]:null},deleteRecord:function(t){var e=this.getRecordList();if(e&&t<e.length)return Array.removeAt(e,t),void this._moveEditBuffer(t,-1);this._deleteRecordInEditBuffer(t)},_deleteRecordInEditBuffer:function(t){var e=this._editBuffer;e&&(delete e[t],this._moveEditBuffer(t,-1))},insertRecord:function(t,e){var i=this.getRecordList();if(i&&t<i.length)return Array.insert(i,t,e),void this._moveEditBuffer(t,1);this._insertRecordInEditBuffer(t,e)},_insertRecordInEditBuffer:function(t,e){this._moveEditBuffer(t,1),this._setRecordInEditBuffer(t,e)},_moveEditBuffer:function(t,e){var i=this._editBuffer;if(i){var n=[];for(var o in i){var s=parseInt(o);s>=t&&Array.add(n,s)}if(n.sort(function(t,e){return t-e}),e>0)for(r=n.length-1;r>=0;r--){a=i[o=n[r]];delete i[o],i[o+e]=a}else for(var r=0;r<n.length;r++){var a=i[o=n[r]];delete i[o],i[o+e]=a}}},save:function(){throw Error.notImplemented()},sortBy:function(t,e){for(var i=this.get_recordCount(),n=new Array(i),o=new Array(i),s=0,r=0;r<i;r++)o[s]=this.getRecord(r),n[s]=s,s++;o.length=s;var a=Sys.UI.Controls.NumberColumn.isInstanceOfType(t)||Sys.UI.Controls.ProgressColumn.isInstanceOfType(t),l=Sys.UI.Controls.CheckBoxColumn.isInstanceOfType(t),h=Sys.UI.Controls.ExpandColumn.isInstanceOfType(t),d=function(t){for(var e in t)return!1;return!0},_=!0,u=this.get_grid().get_sortNullColumn();if(n.sort($createDelegate(this,function(i,n){var o=this.getCellValue(i,t),s=this.getCellValue(n,t);if(!u){if(Object.isUndefinedOrNull(o))return 1;if(Object.isUndefinedOrNull(s))return-1}if(a){if(!o){r=this.getRecord(i);d(r)||(o=0)}if(!s){var r=this.getRecord(n);d(r)||(s=0)}return e?o-s:s-o}if(l)return o=o?1:0,s=s?1:0,e?o-s:s-o;if(o=t.getCellText(i),s=t.getCellText(n),h&&!u){if(Object.isEmpty(o))return 1;if(Object.isEmpty(s))return-1}return o?_=!1:o="",s?_=!1:s="",e?o.toString().localeCompare(s,"zh"):s.toString().localeCompare(o,"zh")})),l||a||!_)for(r=0;r<i;r++)if(r<s){var c=o[n[r]];this.modifyRecord(r,c)}else this.modifyRecord(r,null)}},_Z_74.registerClass("_Z_74",_Z_212),_Z_73=function(t,e){_Z_73.initializeBase(this,[t,e])},_Z_73.prototype={doGetCellValue:function(t,e){if(!e)return null;var i,n=this._editBuffer;if(n&&(i=n[t])){var o=this._doGetObjProp(i,e);if(void 0!==o)return o}var s=this._dataSource;return(i=s&&t<s.length?s[t]:null)?this._doGetObjProp(i,e):null},doSetCellValue:function(t,e,i){var n=e?e.get_dataField():null;return this.doSetCellValueByField(t,e,n,i)},doSetCellValueByField:function(t,e,i,n){if(!i)return!1;var o=!1,s=this._dataSource,r=null;if(s&&t<s.length)(r=s[t])?o=!this._isEquals(r,i,n):(r={},s[t]=r,this.doNewRecord(r),o=!0),this._doSetObjProp(r,i,n);else{var a=this._getEditBuffer();(r=a[t])?o=!this._isEquals(r,i,n):(o=null!=n)&&(r={},a[t]=r,t>=this._editBufferLength&&(this._editBufferLength=t+1),this.doNewRecord(r)),r&&this._doSetObjProp(r,i,n)}return o&&e&&e.doValueChanged&&e.doValueChanged(r),o},recordEquals:function(t,e){var i=t.id,n=e.id;if(i&&n)return i==n;for(var o in t){var s=t[o],r=e[o];if(s!=r)return!(!Date.isInstanceOfType(s)||!Date.isInstanceOfType(r))&&s.getTime()==r.getTime()}return!0},save:function(){var t=this._grid.get_needRowIndex(),e=this._dataSource;if(e)for(l=(e=Array.clone(e)).length-1;l>=0;l--){var i=e[l],n=!0;if(i)for(var o in i)if("__rowIndex"!=o){n=!1;break}n?Array.removeAt(e,l):t&&(i.__rowIndex=l)}else e=[];var s=this._editBuffer;if(s){var r=[];for(var a in s)Array.add(r,parseInt(a));r.sort(function(t,e){return t-e});for(var l=0;l<r.length;l++){var h=s[a=r[l]],d={},_=!1;for(var o in h){var u=h[o];d[o]=u,null==u||_||(_="string"!=typeof u||u.length>0)}_&&(t&&(d.__rowIndex=a),Array.add(e,d))}}return e}},_Z_73.registerClass("_Z_73",_Z_74),_Z_147=function(){throw Error.notImplemented()},_Z_147.prototype={none:0,ascending:1,descending:2},_Z_147.registerEnum("_Z_147"),_Z_146=function(){throw Error.notImplemented()},_Z_146.prototype={none:0,sum:1,sumPage:2},_Z_146.registerEnum("_Z_146"),_Z_72=function(){throw Error.notImplemented()},_Z_72.prototype={like:0,range:1,equals:2,expression:3},_Z_72.registerEnum("_Z_72"),Sys.UI.Controls.Column=function(){Sys.UI.Controls.Column.initializeBase(this),this._index=-1,this._enabled=!0,this._tabStop=!0,this._allowSort=!0,this._allowConfig=!0,this._allowResize=!0,this._sortOrder=_Z_147.none,this._bandIndex=-1,this._designWidth=85,this._designVisible=!0,this._reportShowFooter=!0,this._allowFilter=!0,this._filterType=_Z_72.like,this._dataSize=0,this._headerAlign="",this._textAlign="",this._valueType=_Z_58._default,this._summaryKind=_Z_146.none,this._useServerSum=!0,this._frozenIndex=-1,this._minWidth=0,this._allowFrozen=!0,this._cssClass="",this._delayInterval=100,this._showEditStyle=!0,this._maxLength=0,this._maxByteLength=0,this._caption="",this._designCaption="",this._allowDelIcon=$settings.DefaultAllowClearIcon},Sys.UI.Controls.Column.prototype={initialize:function(){Sys.UI.Controls.Column.callBaseMethod(this,"initialize"),this._initHeader(),this._initFooter(),this._initEvents()},dispose:function(){this._disposeControl(),this._disposeHeader(),delete this._elements,this._changeHandler=null,this._enterPressHandler=null,this._params=null,this._allEvents=null,Sys.UI.Controls.Column.callBaseMethod(this,"dispose"),this._grid=null},get_displayNull:function(){return this._displayNull},set_displayNull:function(t){this._displayNull=t},set_allowDelIcon:function(t){this._allowDelIcon=t},get_allowDelIcon:function(){return this._allowDelIcon},_createTextFilter:function(t,e,i){var n=this.createEdit();n.className="Edit",t.appendChild(n),$dom.addCssClass(t,"TextColumn aicon-chaxun");var o={tabOnEnter:!1,tag:this};$settings.GridFilterEditShowNullText&&(o.nullDisplayText="查询和筛选"),i&&(o.text=i.value),Object.copyTo(this._filterProperties,o);var s={change:$createDelegate(e,e.doFilter),enterPress:$createDelegate(e,e.doFilter)},r=$create(Sys.UI.Controls.TextEdit,o,n,s,this._grid.get_form(),!0);return r._allowDelIcon=!1,e.addControl(r),r},set_icon:function(t){if(this._icon=t,this.get_isInitialized()){var e=this.get_headerElement();if(e){var i=e.firstChild;$dom.addCssClass(i,t)}}},get_icon:function(){return this._icon},set_headerCssClass:function(t){if(this._headerCssClass=t,this.get_isInitialized()){var e=this.get_headerElement();e&&$dom.addCssClass(e,t)}},get_headerCssClass:function(){return this._headerCssClass},updateIcon:function(){var t=this.get_headerElement();if(t){t.firstChild.className="GridHeaderCaptionText",this._icon&&this.set_icon(this._icon),this._headerCssClass&&this.set_headerCssClass(this._headerCssClass)}},set_filter:function(t){this._filterValue=t,this.setFilterValue&&this.setFilterValue(t)},get_filter:function(){if(!this._filterControl)return this._filterValue;var t={};return t.dataField=this.get_dataField(),t.value=this._filterControl.get_value(),t.type=this.get_filterType(),this.getFilterValue&&this.getFilterValue(this._filterControl,t),t},setFilterValue:function(t){this._filterControl&&this._filterControl.set_value(t)},get_reportText:function(t){return t},_disposeControl:function(){var t=this._control;if(t){var e=t.get_element()._outerElement;e&&$clearHandlers(e),t.dispose(),this._control=null}this._columnEdit=null},_disposeHeader:function(){this._elements&&this._elements.header&&($clearHandlers(this._elements.header),this._elements.frozenHeader&&$clearHandlers(this._elements.frozenHeader),this._mouseOutAdded=!1,this._mouseOverAdded=!1)},_isEmptyCell:function(t,e){return!!this._grid.isEmptyRow(e)||!this._displayNull&&Object.isUndefinedOrNull(t)},get_nullDisplayText:function(){return this.get_readOnly()?"":this._nullDisplayText},set_nullDisplayText:function(t){this._nullDisplayText=$craba.getLangPro(t),this.get_isInitialized()&&this._refreshColumnHTML(this._grid.get_rowCount())},_rightClick:function(t){},get_maxLength:function(){return this._maxLength},set_maxLength:function(t){this._maxLength=t,this._control&&this._control.set_maxLength(t)},get_maxByteLength:function(){return this._maxByteLength},set_maxByteLength:function(t){this._maxByteLength=t,this._control&&this._control.set_maxByteLength(t)},get_cellCssClass:function(){var t=" GridBodyCell ";return this._actived&&(t+=" focus "),t},active:function(){this._active(!0)},deactive:function(){this._active(!1)},_active:function(t){this._actived=t;var e=this.get_headerElement();e&&$dom.setCssClass(t,e,"focus");for(var i=this._grid,n=this.get_index(),o=0,s=i.get_rowCount();o<s;o++){var r=i._getRow(o),a=i._getRowCell(r,n);$dom.setCssClass(t,a,"focus")}t&&i.scrollToColumn(this)},renderRowCellSkin:function(){return null},updated:function(){var t=this.get_langText();null!==t&&this.set_caption(t)},get_headerElement:function(){var t=this._elements;return t?t.header:null},get_frozenHeaderElement:function(){var t=this._elements;return t?t.frozenHeader:null},get_footerElement:function(){var t=this._elements;return t?t.footer:null},refreshFooterCellWidth:function(){var t=this.get_width();if(this._mergeFooterList)for(var e=0,i=this._mergeFooterList.length;e<i;e++){t+=this._mergeFooterList[e].get_width()}var n=this.get_footerElement();$common.setWidth(n,t),this.get_frozenFooterElement()&&$common.setWidth(this.get_frozenFooterElement(),t)},mergeFooters:function(){var t=this._grid;if(t.get_showFooter()){var e=arguments;this._mergeFooterList=[];for(var i=this.get_footerElement(),n=0,o=e.length;n<o;n++){var s=e[n];s=t._internalGetColumn(s),this._mergeFooterList.push(s),s._mergeToColumn=this;var r=s.get_footerElement();i.style.width=_px(s.get_width()+i.offsetWidth),$dom.setVisible(r,!1)}return $dom.addCssClass(i,"MergeFooter"),i}},get_frozenFooterElement:function(){var t=this._elements;return t?t.frozenFooter:null},add_redefineColumnHeader:function(t){this.get_events().addHandler("redefineColumnHeader",t)},remove_redefineColumnHeader:function(t){this.get_events().removeHandler("redefineColumnHeader",t)},_internalDisposeHeader:function(){this._disposeHeader()},_internalSetElements:function(t,e,i){this._elements=t,this._initHeader(),void 0!==e&&(this._index=e),void 0!==i&&(this._frozenIndex=i)},_initFooter:function(){var t=this.get_summaryText();t&&this.set_footer(t)},_initHeader:function(){var t=this.get_headerElement(),e=this.get_frozenHeaderElement();if(t){var i=$common.getFirstChildByTagName(t,"div");if(this.get_allowSort()||this.doRedefineColumnHeader(t,i),i&&i.className.indexOf("GridHeaderCaptionText")<0&&(i=i.firstChild),this._elements.captionElement=i,this._initCaptionHint(i),e){var n=$common.getFirstChildByTagName(e,"div");n&&n.className.indexOf("GridHeaderCaptionText")<0&&(n=n.firstChild),this._elements.frozenCaptionElement=n,this._initCaptionHint(n)}this.doInitHeaderElements(this._elements),this._doInitOrder(),this._internalInitHeader()}},_initCaptionHint:function(t){if(t){delete t["data-title"];var e=this.get_headerHint();e&&(t.title=e)}},_doInitOrder:function(){if(this.get_allowSort()){var t=this.get_sortOrder();t!=_Z_147.none&&this._setSortOrder(t)}},doRedefineColumnHeader:function(t,e){if(this._allEvents){var i=this._allEvents.redefineColumnHeader;if(i){var n=new _Z_148(this,e);i(this,n);var o=n.get_newCaptionElement();o&&(e.style.display="none",t.appendChild(o)),delete this._allEvents.redefineColumnHeader}}},doInitHeaderElements:function(t){},_internalInitHeader:function(){var t=this.get_headerElement(),e=this.get_frozenHeaderElement();if(t){var i=!1;this.get_allowSort()&&(i=!0,this._addMouseOutHandler(e||t)),this.get_allowResize()&&(i=!0),i&&this._addMouseOverHandler(e||t)}},_addMouseOutHandler:function(t){this._mouseOutAdded||($common.addMouseOutHandler(t,this._doHeaderMouseOut,this),$common.addMouseUpHandler(t,this._doHeaderMouseUp,this),this._mouseOutAdded=!0)},_addMouseOverHandler:function(t){this._mouseOverAdded||($common.addMouseOverHandler(t,this._doHeaderMouseOver,this),this._mouseOverAdded=!0)},_initEvents:function(){this.getIsCommandColumn()&&this._grid._internalAddCommandColumn(this)},getIsCommandColumn:function(){return!1},doReadOnlyDblClick:function(t){var e=this._allEvents;if(!e||!this.get_enabled())return!1;var i=e.dblClick;if(!i)return!1;var n=new _Z_152;return i(this,n),n.get_cancel()},fireEvent:function(t,e){if(!this._allEvents)return!1;var i=this._allEvents[t];e?!i&&this[t]&&(this._allEvents[t]=this[t],this._control&&this._control.add_dblClick(this[t]),delete this[t]):i&&(this._allEvents[t]=null,this[t]=i,this._control&&this._control.remove_dblClick(i))},_doHeaderMouseOver:function(t){$gridExt.bindColumnResizer(this),this.get_enabled()&&this._grid.get_enabled()&&this.get_allowSort()&&this._initHeaderActive(!1)},_hideResizer:function(){$gridExt.hideSizeGripper()},_doHeaderMouseOut:function(t){this.get_allowSort()&&!this.get_grid().get_useEvenHeaderColor()&&this._initHeaderNormal()},_doHeaderMouseUp:function(t){if("INPUT"!=t.target.tagName&&"IMG"!=t.target.tagName&&t.button==Sys.UI.MouseButton.leftButton&&(this._initHeaderActive(!1),!$gridExt._isResizing)){var e=this._sortOrder!=_Z_147.ascending?_Z_147.ascending:_Z_147.descending;this._doSort(e,t)}},_doSort:function(t,e){var i=this.get_grid();i.get_allowSort()&&this.get_dataField()&&(i._raisePagerBeforeSort(this)||(e&&e.ctrlKey&&this.get_isSorted()?this._setSortOrder(_Z_147.none):(i._clearSort(this),this._setSortOrder(t)),i._doSort()))},_initHeaderNormal:function(){var t=this.get_frozenHeaderElement();t||(t=this.get_headerElement());var e=this.get_grid(),i=!e.get_allowSort()||e.get_useEvenHeaderColor();$dom.removeCssClass(t,i?"NoActive":"ActiveColumn")},_initHeaderActive:function(t){var e=this.get_grid(),i=this.get_frozenHeaderElement();i||(i=this.get_headerElement());var n=!this.get_allowSort()||e.get_useEvenHeaderColor()?"NoActive":"ActiveColumn";$dom.addCssClass(i,n)},get_sortOrder:function(){return this._sortOrder},set_sortOrder:function(t){this._sortOrder!=t&&(this._sortOrder=t,this.get_isInitialized()&&this._doSort(t))},get_showEditStyle:function(){return this._showEditStyle},set_showEditStyle:function(t){this._showEditStyle=t},get_isSorted:function(){return this._sortOrder!=_Z_147.none},get_isSortAscending:function(){return this._sortOrder==_Z_147.ascending},_clearSort:function(){this.get_isSorted()&&this._setSortOrder(_Z_147.none)},_clearSortOrder:function(){this._clearSortOrderFast(),this._clearFrozenSortOrderFast(!0)},_clearSortOrderFast:function(t){this._elements.sortFlag&&($removeNode(this._elements.sortFlag),this._elements.sortFlag=null)},_clearFrozenSortOrderFast:function(){this.get_frozenHeaderElement()&&this._elements.frozenSortFlag&&($removeNode(this._elements.frozenSortFlag),this._elements.frozenSortFlag=null)},_internalRefreshSortOrder:function(){this._setSortOrder(this.get_sortOrder())},_createSortFlag:function(){var t=this._elements.sortFlag;if(t||!this.get_isSorted())return t;var e=this.get_headerElement(),i=$common.createClassDiv("SortShape");return e.appendChild(i),t=this._elements.sortFlag=i},_createFrozenFlag:function(t){var e=this._elements.frozenSortFlag,i=this.get_frozenHeaderElement();if(!i||e||!this.get_isSorted())return e;var n=$common.getFirstChildByClassName(i,"SortShape",!0);return n||(n=t.cloneNode(!0),i.appendChild(n)),this._elements.frozenSortFlag=n},_setSortOrder:function(t){this._grid._sortColumn=this,this._sortOrder=t;var e=this._createSortFlag(),i=this._createFrozenFlag(e),n="";switch(t){case _Z_147.none:return void this._clearSortOrder();case _Z_147.ascending:n=$common.getGlyphDivHTML("icon",1);break;case _Z_147.descending:n=$common.getGlyphDivHTML("icon",0)}$craba.innerHTMLs(e,n),i&&$craba.innerHTMLs(i,n),this._grid._refreshFrozenHeaderHeight()},get_minWidth:function(){return this._minWidth},set_minWidth:function(t){this._minWidth=t},get_mergeSameRow:function(){return this._mergeSameRow},set_mergeSameRow:function(t){this._mergeSameRow=t,this._grid._mergeRowColumns.push(this)},get_tag:function(){return this._tag},set_tag:function(t){this._tag=t},get_allowStretch:function(){return!(this._grid._getColumnConfigWidth(this)>0)&&this._allowStretch},set_allowStretch:function(t){this._allowStretch=t,t&&this._grid._addStretchColumns(this)},get_allowFrozen:function(){return this._allowFrozen},set_allowFrozen:function(t){this._allowFrozen=t},get_grid:function(){return this._grid},get_owner:function(){return this._grid},get_form:function(){return this.get_grid().get_form()},get_frozenIndex:function(){return this._frozenIndex},get_isFrozen:function(){var t=this._grid.get_frozenColumnCount();return this._frozenIndex<t},get_index:function(){return this._index},set_index:function(t){this._index=t;var e=this.get_headerElement();e&&(e.id=this._grid.get_id()+"_column"+t)},get_bandIndex:function(){return this._bandIndex},set_bandIndex:function(t){this._bandIndex=t},get_band:function(){var t=this._band;return t||this._grid.getBandByIndex(this.get_bandIndex())},set_band:function(t){this._band=t},get_designVisible:function(){return this._designVisible},set_designVisible:function(t){this._designVisible=t,this.get_isInitialized()&&(this._params.properties.designVisible=t)},get_visible:function(){var t=this._visible;return null==t&&(t=this._visible=this._grid._internalGetColumnVisible(this)),t},set_visible:function(t,e){if(t!=this.get_visible()&&(this._visible=t,this.get_isInitialized())){var i=this._grid;i._internalSetColumnVisible(this,t,e),t||this._hideResizer(),i.refreshScrollBar(),i._removeStretchStyle()}},set_visibleWithConfig:function(t){var e=this._grid;if(!e._configData)return this.set_visible(t);var i=e._configData.ColumnsVisible;if(!i)return this.set_visible(t);return void 0===i[this.get_name()]?this.set_visible(t):void 0},get_designCaption:function(){return this._designCaption},set_designCaption:function(t){this._designCaption=t},get_caption:function(){return this._grid._internalGetColumnCaption(this)},set_caption:function(t,e){this.get_isInitialized()&&t!=this.get_caption()&&this._grid._internalSetColumnCaption(this,$craba.getLangPro(t),e)},get_designReportCaption:function(){var t=this._designReportCaption;return t||(t=this._designCaption)||(t=this.get_caption()),t},set_designReportCaption:function(t){this._designReportCaption=t},get_reportCaption:function(){var t=this._designReportCaption;return t||this.get_caption()},get_reportVisible:function(t){var e=this._reportVisible;return null==e?!!t||this.get_visible():e},set_reportVisible:function(t){this._reportVisible=t},get_isReportFooterField:function(){return this._isReportFooterField},set_isReportFooterField:function(t){this._isReportFooterField=t},get_reportShowFooter:function(){return this._reportShowFooter},set_reportShowFooter:function(t){this._reportShowFooter=t},get_reportField:function(){var t=this._reportField;if(!t){t=this.get_designReportCaption();var e=this.get_bandIndex();if(e>=0){var i=this._grid.getBandByIndex(e);if(i){var n=i.reportField;n||(n=i.caption),t=n+t}else t+=(e+1).toString()}}return t},set_reportField:function(t){this._reportField=t},set_reportSection:function(t){this._reportSection=t},get_reportSection:function(){return this._reportSection},set_reportSelected:function(t){this._reportSelected=t},get_reportSelected:function(){return this._reportSelected},set_reportHidden:function(t){this._reportHidden=t},get_reportHidden:function(){return this._reportHidden},_internalRefreshCaption:function(){var t=this._elements.captionElement,e=this._elements.frozenCaptionElement;t&&this._refreshCaption(t),e&&this._refreshCaption(e)},get_actionElement:function(){return this._elements.frozenCaptionElement||this._elements.captionElement},_refreshCaption:function(t){var e=this.get_caption();this._grid.get_useMultiRowCaption()?(e=this._getMultiRowCaption(e),t.style.padding="0px"):t.style.padding="";var i=this._elements.captionTextElement;i?i.innerText=e||"":t.innerText=e||""},_getMultiRowCaption:function(t){for(var e="",i=t.split("|"),n=this._grid._skinColors.headerLine,o=0,s=i.length;o<s;o++){e+="<div"+(o!=s-1?' style="border-bottom: 1px solid '+n+'"':"")+">"+i[o]+"</div>"}return e},get_summaryValue:function(){return this._summaryValue},set_summaryValue:function(t){this._summaryValue=t},get_footer:function(t){var e=this.get_footerReplaceText();e||(e=this.get_replaceText());var i=Object.isEmpty(this._footer);if(i)return"";var n=i?"":this._footer;if(e){var o=this.get_grid();if(o.get_readOnly())return e;for(var s=0,r=o.get_rowCount();s<r;s++)if(this.getCellText(s)==e)return e;return n}return t?$common.clearHTMLTag(n).trim():n},set_footer:function(t){this._footer=t,this.doRefreshFooter()},doRefreshFooter:function(){this._setFooterText(this.get_footerElement()),this._setFooterText(this.get_frozenFooterElement())},_setFooterText:function(t){if(t){var e=t.firstChild;if(e){var i=this.get_footer(),n=this._grid,o=n.get_events().getHandler("getFooterHTML");if(o){var s=new _Z_252(this,i);o(n,s),i=s.get_footer()}$craba.innerHTMLs(e,"NaN"!=i?i:"")}}},get_readOnly:function(){return this._readOnly||this._grid.get_readOnly()||!this.get_enabled()},set_readOnly:function(t){this._readOnly=t},get_enabled:function(){return this._enabled},set_enabled:function(t){this._enabled=t,this.get_isInitialized()&&(t||this._hideEditor(),this._grid._internalRefreshColumnStyle(this))},get_tabStop:function(){return this._tabStop},set_tabStop:function(t){this._tabStop=t},get_allowSort:function(){var t=this.get_grid(),e=t.get_allowSort(),i=this._allowSort;return e&&i&&(0==t._mergeRowColumns.length||t._dataGroupField)},set_allowSort:function(t){this._allowSort=t},get_allowConfig:function(){return this._allowConfig},set_allowConfig:function(t){this._allowConfig=t},get_showImage:function(){return this._showImage},set_showImage:function(t){this._showImage=t},get_hint:function(){return this._hint},set_hint:function(t){this._hint=t,this.get_isInitialized()&&(this._hideEditor(),this._refreshColumnHTML())},get_allowResize:function(){return this.get_grid().get_allowResize()&&this._allowResize},set_allowResize:function(t){this._allowResize=t},get_filterType:function(){return this._filterType},set_filterType:function(t){this._filterType=t},get_params:function(){return this._params},get_control:function(){return this._control},get_name:function(){return this._name},set_name:function(t){this._name=t},get_groupName:function(){return this._groupName},set_groupName:function(t){this._groupName=t},get_sortField:function(t){return this._sortField&&t?this._sortField:this._dataField},set_sortField:function(t){this._sortField=t},get_dataField:function(){return this._dataField},set_dataField:function(t){this._dataField=t},get_displayField:function(){return this._displayField},set_displayField:function(t){this._displayField=t},get_dataSize:function(){return this._dataSize},set_dataSize:function(t){this._dataSize=t},get_designWidth:function(){return this._designWidth},set_designWidth:function(t){"number"!=typeof t&&(t=Number(t)),this._designWidth=t},get_width:function(){return this._grid._internalGetColumnWidth(this)},set_width:function(t,e){if(this.get_isInitialized()){var i=this.get_width();t!=i&&this._grid._internalSetColumnWidth(this,t,i,e)}},get_headerAlign:function(){return this._headerAlign},set_headerAlign:function(t){this._headerAlign=t},get_textAlign:function(){return this._textAlign},set_textAlign:function(t){this._textAlign=t},get_valueType:function(){return this._valueType},set_valueType:function(t){this._valueType=t},get_cssClass:function(){return this._cssClass},set_cssClass:function(t){this._cssClass=t},get_summaryKind:function(){return this._summaryKind},set_summaryKind:function(t){this._summaryKind=t,t!=_Z_146.none&&(this._useServerSum=!1),this._grid._init&&t!=_Z_146.none&&(this._grid._hasSummaryColumn=!0)},get_summaryText:function(){return this._summaryText},set_summaryText:function(t){this._summaryText=t},get_headerHint:function(){return this._headerHint},set_headerHint:function(t){this._headerHint=t,this.get_isInitialized()&&this._initHeader()},createEdit:function(){var t=$common.createInput();return t.type="text",t.setAttribute("spellcheck",!1),t.setAttribute("autocomplete","off"),t.id=this._grid.get_id()+"_"+this.get_name(),t},getControlType:function(){throw Error.notImplemented()},get_immediateEditor:function(){return!1},_hasEditor:function(){return null!=this._lastCell},get_isEditing:function(){return this._hasEditor()},_getCellRowIndex:function(t){var e=t.parentNode;return this._grid._getRowIndex(e)},_revalidate:function(t){var e=this._grid.get_form().get_validationManager();e.checkResultsVisible(this._grid)&&e.checkResultsVisible(this)&&(this._grid._revalidate(this.get_index(),t),this._hideEditor(),e.checkResults())},_refreshColumnHTML:function(t){var e=this._grid;if(e._init){var i=this.get_index(),n=t||e.get_recordCount();e._isLazyPageSize()&&(n=Math.min(n,e._lazyIndex*e._lazyPageSize));for(var o=0;o<n;o++){var s=e._getRow(o),r=e._getRowCell(s,i);this.initCellHTML(o,r)}}},_refreshRowHTML:function(){for(var t=this._grid,e=this.get_index(),i=t.get_rowCount(),n=0;n<i;n++){var o=t._getRow(n),s=t._getRowCell(o,e);this.initCellHTML(n,s)}},initCellHTML:function(t,e){if(!e||this._lastCell&&this._lastCell==e&&this._control){var i=this.doInitControlValue(t);this.doAfterInitControlValue(i)}else{var n=this._getCellHTML(t,e._fontColor);$craba.innerHTMLs(e,n)}},refreshCellHTML:function(t,e){this._lastCell&&this._lastCell==e||$craba.innerHTMLs(e,this._getCellHTML(t,e._fontColor))},doAfterInitControlValue:function(t){this._lastValue=t},_instantValidate:function(){var t=this._control;t&&t.doInstantValidate&&t.doInstantValidate()},_closeDropDown:function(t){var e=this._control;e&&e.get_droppedDown&&e.get_droppedDown()&&e.closeUp(!0,!0)},_raiseBrowserBlur:function(t){var e=this._control;e&&t&&"function"==typeof e.doBlur&&e.doBlur()},_removeCellEdit:function(t){try{$dom.empty(t)}catch(e){}},_hideEditor:function(){var t=this._lastCell;if(t&&(this._closeDropDown(),this._instantValidate(),this._raiseBrowserBlur(Sys.Browser.isIE||Sys.Browser.isFirefox),this._removeCellEdit(t),!this._hideMergeEdit()&&t.parentNode)){var e=this._grid;e._initCellStyle(this.get_index(),t);var i,n=this._changed,o=e._getRowIndex(t.parentNode);if(n)if(this._initArgs)n=this._hideCustomEditor(o);else{i=this._lastValue;var s;(s=this.getControlValue(this._control,o))!=i&&(s=this._saveCellValue(t,s,o)),"boolean"!=typeof s||i||(i=!1),n=s!=i}this._lastCell=null,this.initCellHTML(o,t),this._onHideEditor(o,t,s),n&&this._raiseChange(t,s,i),this._raiseBlur(),this._doEditorHideEvent(),t._rowIndex!=undefined&&this._grid._changeFrozenRowHeight(t._rowIndex)}},_hideMergeEdit:function(){return!this.notMergeEdit()&&($dom.removeCssClass(this._lastCell,"pd0"),this._doSetMergeCellValue(),delete this._curMergeIndex,delete this._lastCell,!0)},_doSetMergeCellValue:function(){var t=this._control.get_value(),e=t!=this._lastValue;$craba.innerHTMLs(this._lastCell,t),e&&(0===this._curMergeIndex?this._setCellValue(this._grid.get_selectedRowIndex(),t,!0):this._curMergeData[this.get_dataField()]=t,this._raiseChange(this._lastCell.parentNode.parentNode,t,this._lastValue),this._clearChanged()),this._lastValue=t},notMergeEdit:function(t){var e=Object.isUndefinedOrNull(this._curMergeIndex);return!(!t||0!==this._curMergeIndex)||e},_hideCustomEditor:function(t){var e=this.get_grid();if(!e.findRowData(t))return!1;var i=this._initArgs.control.saveData(),n=this._initArgs.oldData;e.modifyCellsValue(t,this._initArgs.dataFields,i);return!Object.isEqual(i,n,this._initArgs.dataFields)},_showEditor:function(t){this._doShowEditor(t,!0)},_doShowEditor:function(t,e){if(this.get_visible()&&(t=this._exchangeFrozenCell(t),t=this._exchangeMergeCell(t),this._checkLastCell(t))){this._refreshCell(t);var i=t.clientWidth?t.clientWidth:t.width,n=t.clientHeight;if(!i)throw Error.invalidOperation("取不到列的宽度: "+this.get_name());if(this._allEvents&&this._allEvents.editorInit){if(!this._doShowCustomEditor(t,i,n))return;this._doEditorShowEvent(t)}else{var o=this._createElement();this._initEditorElement(t,o,i,n),this._control||this._initEditorControl(o),this._initControlSize(i,n);var s=this._doEditorShowEvent(t);this._initControlValue(t,s),e&&this._doFocus()}this._lastCell=t,this._active=!0,this._changed=!0,t._rowIndex!=undefined&&this._grid._changeFrozenRowHeight(t._rowIndex)}},_doShowCustomEditor:function(t,e,i){var n;if(this._initArgs)n=this._initArgs.control,t.appendChild(n.get_element());else{var o={cellWidth:e,cellHeight:i,cell:t};if(!1===this._allEvents.editorInit(this,o))return!1;if(!(n=o.control)||!n.get_element)throw Error.invalidOperation("editorInit事件业务必须指定args.control");if(!n.saveData)throw Error.invalidOperation("editorInit事件中传递的args.control必须是容器控件");if(!o.dataFields)throw Error.invalidOperation("editorInit事件中必须传递编辑框DataField集合给平台完成数据绑定");this._initArgs=o,this._isCustomEditor=!0,this._stopEvent(n.get_element())}var s=this.get_grid(),r=s.findRowData(s.get_selectedRowIndex());return this._initArgs.oldData=Object.clone(r),n.dataBind(this._initArgs.oldData),!0},removeCustomEditor:function(){if(!this._initArgs)return!1;var t=this._initArgs.control;return this.get_form().removeControl(t,!0),delete this._initArgs,delete this._isCustomEditor,!0},_doEditorShowEvent:function(t){var e=this._editorShowHandler;if(e){var i={cell:t};return e(this,i),i.value}},_exchangeMergeCell:function(t){var e=this._grid;if(this.get_mergeSameRow()||!e.hasMergeRows())return t;if(!this._activeElement)return null;if(!$dom.hasClass(this._activeElement,"GridBodyCellText"))return null;var i=this._activeElement.parentNode;return this._curMergeIndex=Array.indexOf(i.childNodes,this._activeElement),$dom.addCssClass(this._activeElement,"pd0"),this._activeElement},_doEditorHideEvent:function(){var t=this._editorHideHandler;t&&t(this)},add_editorShow:function(t){this.get_events().addHandler("editorShow",t)},add_editorHide:function(t){this.get_events().addHandler("editorHide",t)},_checkLastCell:function(t){var e=this._lastCell;if(e){if(t==e)return this._doFocus(),!1;this._hideEditor()}return!!t},_refreshCell:function(t){var e=t.firstChild;e&&"INPUT"==e.tagName?(e.style.display="none",asyncCall(function(){$clearHandlers(e),$removeNode(e)})):$dom.empty(t)},_onHideEditor:function(t,e,i){},get_bounds:function(){var t=this._grid._getSelectedRowCell(this._index);return t?(t=this._exchangeFrozenCell(t),$dom.getBounds(t)):this._control?this._control.get_bounds():null},focus:function(){if(!this.get_readOnly()&&!this.getIsCommandColumn()&&this._index>=0){var t=this._grid._getSelectedRowCell(this._index);if(!t)return;if(this._hideEditor(),!this._grid._doCellBeginEdit(this,t))return;this._showEditor(t)}},_doFocus:function(){var t=this._control;t&&(asyncCall(function(){t.focus(!0)}),this._grid._notifyFormFocusControl())},_internalGetChangeHandler:function(){var t=this._changeHandler;if(!t){var e=this._allEvents;if(e&&(t=e.change),null==t&&this._events&&this.get_grid()._isDress){var i=this._events._list._change;i&&i.length>0&&(t=i[0])}}return t},_isRowAllowEditor:function(t){return!0},_initControlSize:function(t,e){var i=this._control.get_element();if(i._outerElement){t=(t-=this._getControlButtonWidth())<1?1:t,this._initControlWidth(i,t),$common.setHeight(i,e),$common.setLineHeight(i,e)}},_initControlWidth:function(t,e){$common.setWidth(t,e)},_getControlButtonWidth:function(){return $craba._editorButtonWidth},_initEditorElement:function(t,e,i,n){this._initControlWidth(e,i),$common.setHeight(e,n),$common.setLineHeight(e,n),t.appendChild(e)},_initEditorControl:function(t){var e={};e.tabOnEnter=!1,e.isInPlace=!0,this.initProps(e);var i=this._allEvents;i?(this._editorShowHandler=i.editorShow,this._editorHideHandler=i.editorHide,this._getDisplayTextHandler=i.getDisplayText,this._changeHandler=i.change,this.needHandleEnterPress()&&(this._enterPressHandler=i.enterPress,delete i.enterPress),delete i.change,delete i.getDisplayText,delete i.filterRendering,delete i.editorShow,delete i.editorHide):(i={},this._changeHandler=null,this._enterPressHandler=null),this._blurHandler=i.blur,i.blur=$createDelegate(this,this._blur),i.focus=$createDelegate(this,this._focus),this.needHandleKeyDown()&&(i.keyDown=$createDelegate(this,this.doKeyDown));var n=this._control=$create(this.getControlType(),e,t,i,this._grid.get_form(),!0),o=t._outerElement;this._columnEdit=t,o&&(this._columnEdit=o,$craba.cloneStyle(t,o,["height","lineHeight"])),this._setEditorActive(),n.column=this,this.handleControl(this._control),this._stopEvent(this._columnEdit)},_stopEvent:function(t){$common.addMouseOverHandler(t,this._stopPropagation),$common.addMouseOutHandler(t,this._stopPropagation),$common.addMouseDownHandler(t,this._stopPropagation),$common.addMouseUpHandler(t,this._stopPropagation)},_createElement:function(){if(this._columnEdit)return this._columnEdit;var t=this.createEdit();return"text"!=t.type&&"image"!=t.type?t:($dom.addCssClass(t,"CellEdit"),t)},_exchangeFrozenCell:function(t){var e=this._grid;if(!e.isFrozenGrid())return t;var i=t.parentNode,n=this.get_index(),o=e._getRowIndex(i),s=e._getFrozenRow(o);return n<e._getFrozenColumnRealCount()&&(t=e._getFrozenRowCell(s,n)),t._rowIndex=o,t},_stopPropagation:function(t){$app.isDraging||t.stopPropagation()},initProps:function(t){t.delayTime=this.get_delayTime(),t.nullDisplayText=this.get_nullDisplayText()},get_delayTime:function(){return this._delayInterval},set_delayTime:function(t){this._delayInterval=t},_setEditorActive:function(){$dom.addCssClass(this._columnEdit,"activeEditor")},handleControl:function(t){t.add_change($createDelegate(this,this._change))},focusNextCell:function(){this.get_isDisposed()||this._grid._focusNextCell(this,this._lastCell)},focusPrevCell:function(){return this._grid._focusPrevCell(this._lastCell)},doKeyDown:function(t){var e=!1,i=this._grid;i._activeColumn=this;switch(t.keyCode){case Sys.UI.Key.enter:i.doRowEnterPress(t)||this.doTabOnEnter(),e=!0;break;case Sys.UI.Key.tab:t.shiftKey&&this.focusPrevCell()?e=!0:i._tabOnNext&&this.focusNextCell()&&(e=!0);break;case Sys.UI.Key.right:this._grid.doRowKeyDown(t)||(e=this._handleLeftRight(!0,!1));break;case Sys.UI.Key.left:this._grid.doRowKeyDown(t)||(e=this._handleLeftRight(!1,!1));break;case Sys.UI.Key.end:e=this._handleLeftRight(!0,!0);break;case Sys.UI.Key.home:e=this._handleLeftRight(!1,!0)}e&&t.cancel()},_handleLeftRight:function(t,e){this._grid._isRightKey=t;var i=this._control;if(!i)return!1;var n=0,o=i.get_isTextEdit();if(o&&(n=i.get_caretPos()),i.get_droppedDown&&i.get_droppedDown())return!1;if(t){var s=0;if(o){i.get_selectionText()&&(n=0),s=i.get_text().length}if(!o||n==s||i.get_readOnly())return e?this._grid._focusRowLastCell():(this.focusNextCell(),!0)}else if(!o||0==n)return e?this._grid._internalFocusSelectedRowFirstCell():this.focusPrevCell();return!1},_raiseBlur:function(){this._blurHandler&&1==this._active&&this._blurHandler(this._control)},_focus:function(t){this._active||(this._active=!0,this._grid._activeColumn=this,this._changed=!0)},set_hasPopup:function(t){this._hasPopup=t},_blur:function(t){this._hasPopup?this._hasPopup=!1:(this._raiseBlur(),this._active=!1,this._grid._blurFromColumn())},_change:function(t,e){var i=this._lastCell;if(i)if(this.notMergeEdit()){this._instantValidate();var n=this._lastValue,o=this._grid._getRowIndex(i.parentNode),s=this._saveCellValue(i,undefined,o);s!=n&&this._lastCell&&this._raiseChange(i,s,n,e),this._cloneLastValue()}else this._doSetMergeCellValue()},add_change:function(t,e){this._mastAdd=!0===e,this.get_events().addHandler("_change",t)},remove_change:function(t){this.get_events().removeHandler("_change",t)},add_click:function(t){this.get_events().addHandler("_click",t)},remove_click:function(t){this.get_events().removeHandler("_click",t)},_bindClick:function(){var t=this._allEvents;if(t){var e=t.click;e&&this.add_click(e)}},_raiseChange:function(t,e,i,n){this._raiseChangeByRowIndex(t,null,e,i,n)},_raiseChangeByRowIndex:function(t,e,i,n,o){if(!this.get_isDisposed()){var s=this._grid,r=s.get_form();if(!r||!r.get_isDisposing()){null==e&&(e=t?this._getCellRowIndex(t):s.get_mouseHoverRowIndex());var a=new _Z_30(e,i,this._lastValueClone?this._lastValueClone:n,this);this._changeHandler&&this._changeHandler(this,a);var l=this.get_events().getHandler("_change");if(!l||!this._mastAdd&&this._changeHandler||l(this,a),a.get_cancel()){if(this._changed=!1,this._saveCellValue(t,n,e),this.initCellHTML(e,t),o&&o.set_cancel)return o.set_cancel(!0)}else{a.get_valueChanged()&&(i=a.get_value(),this._saveCellValue(t,i,e),this.initCellHTML(e,t)),t&&this._revalidate(e),this.doChanged(i,n,e,a),this._checkCalcSummary();var h=a.get_focusColumn();h&&asyncCall(function(){s.focusRowColumn(e,h)})}}}},doChanged:function(t,e,i,n){var o=this._grid,s=o.get_events().getHandler("columnChanged");s&&s(o,n)},_checkCalcSummary:function(){var t=this._grid;if(t.get_canSummary()){this.get_summaryKind()!=_Z_146.none&&(this._hasServerSum&&t._setNeedPreloadItems(!0),t._calcColumnSummary(this))}},get_useServerSum:function(){return this._useServerSum},set_useServerSum:function(t){this._useServerSum=t,!t&&this._hasServerSum&&(this._hasServerSum=!1,this._grid._setNeedPreloadItems(!1))},_setHasServerSum:function(t){this._hasServerSum=t},get_isClientSum:function(){return this.get_summaryKind()!=_Z_146.none},needHandleEnterPress:function(){return!0},needHandleKeyDown:function(){return!0},doTabOnEnter:function(){if(this.needHandleEnterPress()){var t=!0;if(this._enterPressHandler){var e=new _Z_164;this._enterPressHandler(this._control,e),t=e.get_focusNext()}t&&!this.get_isDisposed()&&this.focusNextCell()}},_getDataController:function(){return this._grid.get_dataController()},getCellValue:function(t){return this._getDataController().getCellValue(t,this)},getCellText:function(t,e,i){var n=this.getCellValue(t);return this._doGetCellText(t,n,e,i)},_initControlValue:function(t,e){var i=t.parentNode,n=this._grid,o=n._getRowIndex(i);Object.isUndefinedOrNull(o)&&(o=n.get_selectedRowIndex()),e=this.doInitControlValue(o,e),this._lastValue=e,this._cloneLastValue()},doInitControlValue:function(t,e){if(!this._control)return null;var i=this.notMergeEdit(!0)?this.getCellValue(t):this.getMergeCellvalue(t);if(i=Object.isUndefinedOrNull(e)?this.loadEditValue(i):e,this._control.set_value(i,!0),this.get_displayField()){var n=this.getCellText(t,!1,!0);this._control.set_text(n),this._lastText=n}return this._control.get_value()},getMergeCellvalue:function(t){var e=this._grid;t=e.get_selectedRowIndex();var i=this._getDataController().getRecord(t)[e.get_dataGroupField()],n=e._mergeGroupData[i],o=this._curMergeIndex-1;return this._curMergeData=n[o],this._curMergeData[this.get_dataField()]},get_footerReplaceText:function(){return this._footerReplaceText},set_footerReplaceText:function(t){this._footerReplaceText=t,this.get_isInitialized()&&this.doRefreshFooter()},get_replaceText:function(){return this._replaceText},set_replaceText:function(t,e){this._replaceText=t,this.get_isInitialized()&&!e&&this._grid._internalRefreshColumnContent(this)},_getHandler:function(t){var e=null;return this._allEvents&&(e=this._allEvents[t]),e||(e=this[t="_"+t+"Handler"]),e},_doGetCellText:function(t,e,i,n){var o=this.get_replaceText();if(o)null==e&&(o="");else{o=this._getDataController().getCellText(t,this,e),o=this.getDisplayText(e,o,t,i);var s=this._getHandler("getDisplayText");if(s){var r=new _Z_191(t,e,o,i,n);s(this,r),o=r.get_text()}}return i?$common.htmlDecode(o):o},_initCellHTML:function(t,e,i){return i?this._getCellHTML(t,e):this._getEmptyHTML(!0)},_getEmptyHTML:function(t){var e="&nbsp;";return t&&this.get_nullDisplayText()&&(e='<span class="nulltext ellipsis">'+this.get_nullDisplayText()+"</span>"),this._grid._useCustomRendering?'<div class="GridBodyCellText">'+e+"</div>":e},_getCellHTML:function(t,e){if(this.get_visible()){var i=t;if(this._grid._mergeGroupData){var n=this._getDataController().getRecord(t);n&&(i=n.__rowIndex)}var o=this.getCellValue(t),s=this._doGetCellText(i,o);if(Object.isEmpty(s)&&this.get_nullDisplayText())return this._getEmptyHTML(!0);var r=this.getHTML(o,s,t,e);return this._getMergeHtml(r,t)}return this._getEmptyHTML(!1)},_getMergeHtml:function(t,e){var i=this._grid;if(this.get_mergeSameRow()||!i.hasMergeRows())return t;var n=this._getDataController().getRecord(e);if(!n)return t;var o=n[i._dataGroupField],s=i._mergeGroupData[o];if(!s)return t;for(var r=this.get_dataField(),a=0,l=s.length;a<l;a++){var h=s[a],d=h.__rowIndex,_=$craba.getPropValue(h,r),u=this._doGetCellText(d,_);t+=this.getHTML(_,u,d)}return t='<div class="'+this._getMergeClass()+'">'+t+"</div>"},_getMergeClass:function(){return"MergeCell"},internalGetCellHTML:function(t){var e=this.getCellValue(t),i=this._doGetCellText(t,e);return this.getHTML(e,i,t)},getDisplayText:function(t,e){return e},set_textWrap:function(t){this._textWrap=t},get_textWrap:function(){return this._textWrap},_getHtml:function(t){var e=this._grid;return Sys.UI.Controls.Column.getHTML(t,e.get_textColor(),e.get_allowCopy(),this.get_hint(),this._textWrap,this._cssClass)},_getTextBlank:function(t,e){return"string"!=typeof t||this._allowTags||(t=$common.htmlEncode(t)),this._getHtml(t)},set_allowHTML:function(t){this._allowTags=t},get_allowHTML:function(){return this._allowTags},set_allowTags:function(t){this._allowTags=t},get_allowTags:function(){return this._allowTags},getHTML:function(t,e,i){return this._getHtml(e)},initNewRecord:function(t){var e=this.get_dataField();if(e){var i=this.getDefaultValue();void 0!==i&&(t[e]=i)}},getDefaultValue:function(){return undefined},loadEditValue:function(t){return t},saveEditValue:function(t){return t},_setCellValue:function(t,e,i){if(e=this.saveEditValue(e),this._getDataController().setCellValue(t,this,e),i){var n=this._grid,o=n.findRowData(t);o&&n._appendChangeDatas(o)}},_clearChanged:function(){this._changed=!1},getControlValue:function(t,e){return t.get_value()},_saveCellValue:function(t,e,i){var n=this._control;return n&&(e===undefined&&(e=this.getControlValue(n,i)),n.convertType&&(e=n.convertType(e,this.get_valueType()))),this._setCellValue(i,e,!0),this._grid._refreshPagerInc(),this._clearChanged(),this._lastValue=e,e},_cloneLastValue:function(){},get_value:function(){var t=this._control;return t?this.getControlValue(t,this._grid.get_selectedRowIndex()):this._lastValue},set_value:function(t,e){var i=this._control;i&&(this.get_displayField()?i.set_text(t):i.set_value(t)),e||(this._lastValue=t,this._changed=!1)},get_allowFilter:function(){return this._allowFilter},set_allowFilter:function(t){this._allowFilter=t},canFilter:function(){return this.get_allowFilter()},_doFilterRendering:function(t,e,i){var n=null;if(this._allEvents&&(n=this._allEvents.filterRendering),n||(n=this.get_events().getHandler("filterRendering")),!n)return!1;var o=new _Z_189(i);o.bar=e,n(this,o),this._filterProperties=o.get_properties();var s=o.get_control();return null!=s?(s.appendTo(t),t._isCustomer=!0,!0):o.get_cancel()},add_filterRendering:function(t,e){return this.get_events().addHandler("filterRendering",t,e)},remove_filterRendering:function(t){this.get_events().removeHandler("filterRendering",t)},add_editorInit:function(t,e){return this.get_events().addHandler("editorInit",t,e)},remove_editorInit:function(t){this.get_events().removeHandler("editorInit",t)},add_editorChanged:function(t,e){return this.get_events().addHandler("editorChanged",t,e)},remove_editorChanged:function(t){this.get_events().removeHandler("editorChanged",t)},get_filterControl:function(){return this._filterControl},createFilter:function(t,e){}},Sys.UI.Controls.Column.registerClass("Sys.UI.Controls.Column",_Z_233),Sys.UI.Controls.Column.getHTML=function(t,e,i,n,o,s){var r=!0;Object.isUndefinedOrNull(t)||""===t?(r=!1,t="&nbsp;"):t=t.toString();var a="";e&&(a=" style='color:"+e+";'");var l=i?"":" unselectable='on'",h=n&&r?" title='"+n+"'":"",d=t;if(o){var _=t.split("\r\n");d="";for(var u=0,c=_.length;u<c;u++)d+="<div>"+_[u]+"</div>"}var g="GridBodyCellText";return s&&(g+=" "+s),"<div class='"+g+"'"+l+a+h+">"+d+"</div>"},Sys.UI.Controls.TextColumn=function(){Sys.UI.Controls.TextColumn.initializeBase(this),this._filterChars=null},Sys.UI.Controls.TextColumn.prototype={getControlType:function(){return Sys.UI.Controls.TextEdit},createFilter:function(t,e,i){return this._createTextFilter(t,e,i)},get_dataSize:function(){var t=Sys.UI.Controls.TextColumn.callBaseMethod(this,"get_dataSize");return t>0?t:this.get_maxLength()},get_filterChars:function(){return this._filterChars},set_filterChars:function(t){this._filterChars=t},initProps:function(t){Sys.UI.Controls.TextColumn.callBaseMethod(this,"initProps",[t]),t.maxLength=this.get_maxLength(),t.maxByteLength=this.get_maxByteLength(),t.allowTags=this.get_allowTags(),t.allowDelIcon=this.get_allowDelIcon();var e=this.get_filterChars();e&&(t.filterChars=e)},raiseClick:function(t,e){var i=this._allEvents&&this._allEvents.click?this._allEvents.click:this.get_events().getHandler("_click");if(i){var n=new _Z_192(t,this);n.event=e,i(this,n)}},getHTML:function(t,e,i){return this._getTextBlank(e,i)}},Sys.UI.Controls.TextColumn.registerClass("Sys.UI.Controls.TextColumn",Sys.UI.Controls.Column),Sys.UI.Controls.NumberColumn=function(){Sys.UI.Controls.NumberColumn.initializeBase(this),this._numberType=Sys.UI.Controls.NumberType._float,this._decimalPrecision=$settings.DecimalPrecision,this._decimalScale=$settings.DecimalScale,this._decimalDigits=0,this._textAlign="right",this._headerAlign="center",this._filterType=_Z_72.range,this._showCalculator=$settings.NumberEditDefaultShowCalculator,this._displayZeroToDigits=$settings.DisplayZeroToDigits,this._summarySpliteChar=" ",this._formatNumber=$settings.NumberColumnFormatNumber},Sys.UI.Controls.NumberColumn.prototype={initialize:function(){Sys.UI.Controls.NumberColumn.callBaseMethod(this,"initialize"),this._stepButton&&(this._minWidth=80),this._bindClick(),this._allEvents&&this._allEvents.click&&(this._cssClass+=" HasClick")},renderRowCellSkin:function(t,e,i){i.className+=" Number"},get_summaryUseText:function(){return this._summaryUseText},set_summaryUseText:function(t){this._summaryUseText=t},loadEditValue:function(t,e){if(this._summaryUseText&&!Object.isUndefinedOrNull(e)){if(this._hasEditor()&&e==this._grid.get_selectedRowIndex())return t;if(!(t=this._grid.getRowCellText(e,this).trim()))return 0}return t},_getControlButtonWidth:function(){return this._stepButton?2*$craba._editorButtonWidth:$craba._editorButtonWidth},set_stepButton:function(t){this._stepButton=t},get_stepButton:function(){return this._stepButton},getControlType:function(){return Sys.UI.Controls.NumberEdit},_initControlWidth:function(t,e){this._stepButton?$common.setWidth(t,e-10):Sys.UI.Controls.NumberColumn.callBaseMethod(this,"_initControlWidth",[t,e])},raiseClick:function(t,e){this._stepButton&&!this.get_readOnly()&&this.get_enabled()&&($dom.hasClass(e.target,"jian")?this._control.decValue():$dom.hasClass(e.target,"add")&&this._control.incValue());var i=this.get_events().getHandler("_click");if(i){var n=new _Z_192(t,this);n.event=e,i(this,n)}},createFilter:function(t,e,i){var n=$common.createClassDiv("IntervalBlock");t.appendChild(n);var o=this.createEdit();o.title="起始值",n.appendChild(o);var s;i&&(s=i.value1);var r=this._createFilterControl(o,e,s,1),a=$common.createSpan();a.className="GridFilterLineSpacer",a.innerText="-",n.appendChild(a);var l=this.createEdit();l.title="结束值",n.appendChild(l);var h;i&&(h=i.value2);var d=this._createFilterControl(l,e,h,2);return r._next=d,d._prev=r,r},_createFilterControl:function(t,e,i,n){t.className="Edit",t.style.width="38%";var o={};this.initProps(o);var s={tabOnEnter:!1,tag:this,showCalculator:!1,value:i};$settings.GridFilterEditShowNullText&&(o.nullDisplayText=1==n?"区间":"过滤"),Object.copyTo(s,o,["defaultvalue","stepbutton","showempty"]),Object.copyTo(this._filterProperties,o);var r={change:$createDelegate(e,e.doFilter),enterPress:$createDelegate(e,e.doFilter)},a=$create(this.getControlType(),o,t,r,this._grid.get_form(),!0);return a.set_enabled(e._enabled),e.addControl(a),a},getFilterValue:function(t,e){var i=t,n=t;i._prev?i=i._prev:n=i._next,e.value1=i.get_value(),e.value2=n.get_value()},setFilterValue:function(t){if(this._filterControl){var e=this._filterControl,i=this._filterControl;e._prev?e=e._prev:i=e._next,e.set_value(t.value1),i.set_value(t.value2)}},set_defaultValue:function(t){this._defaultValue=t},get_defaultValue:function(){return this._defaultValue},get_showEmpty:function(){return this._showEmpty},set_showEmpty:function(t){this._showEmpty=t},get_numberType:function(){return this._numberType},set_numberType:function(t){this._numberType=t,this._control&&this._control.set_numberType(t)},get_preFlagDataField:function(){return this._preFlagDataField},set_preFlagDataField:function(t){this._preFlagDataField=t},get_summarySpliteChar:function(){return this._summarySpliteChar},set_summarySpliteChar:function(t){this._summarySpliteChar=t},get_preFlagData:function(t){var e=this.get_preFlagDataField(),i=this._grid.findRowData(t);return i?Object.isUndefinedOrNull(i[e])||""===i[e]?null:i[e]:null},get_currencyMarker:function(){return this._currencyMarker},set_currencyMarker:function(t){this._currencyMarker=t,this._grid._initialized&&this._refreshColumnHTML()},get_decimalDigits:function(){return this._decimalDigits},set_decimalDigits:function(t){this._decimalDigits=t},get_decimalPrecision:function(){return this._decimalPrecision},set_decimalPrecision:function(t){this._decimalPrecision=t},get_decimalScale:function(){return this._decimalScale},set_decimalScale:function(t){this._decimalScale=t},get_showCalculator:function(){return this._showCalculator},set_showCalculator:function(t){this._showCalculator=t},get_maxValue:function(){return this._maxValue},set_maxValue:function(t){this._maxValue=t,this.get_isInitialized()&&this._control&&this._control.set_maxValue(t)},get_minValue:function(){return this._minValue},set_minValue:function(t){this._minValue=t},initProps:function(t){Sys.UI.Controls.NumberColumn.callBaseMethod(this,"initProps",[t]),t.numberType=this.get_numberType(),t.decimalDigits=this.get_decimalDigits(),t.decimalPrecision=this.get_decimalPrecision(),t.decimalScale=this.get_decimalScale(),t.showCalculator=this.get_showCalculator(),t.defaultValue=this.get_defaultValue(),t.showEmpty=this.get_showEmpty(),t.minValue=this.get_minValue(),t.maxValue=this.get_maxValue(),t.stepButton=this.get_stepButton(),t.formatNumber=this.get_formatNumber(),t.useSpin=!1,t.stepButton&&(t.clickOnly=!0)},handleControl:function(t){t.add_change($createDelegate(this,this._change)),t.add_enterPress($createDelegate(this,this._doEnterPress))},_doEnterPress:function(t){var e=this.get_minValue();e!=undefined&&parseFloat(this.get_value())<parseFloat(e)&&this.set_value(e);var i=this.get_maxValue();i!=undefined&&parseFloat(this.get_value())>parseFloat(i)&&this.set_value(i)},get_displayThousandSeperator:function(){return this._displayThousandSeperator},set_displayThousandSeperator:function(t){this._displayThousandSeperator=t},get_displayEmptyForZero:function(){return this._displayEmptyForZero},set_displayEmptyForZero:function(t){this._displayEmptyForZero=t},get_displayZeroToDigits:function(){return this._displayZeroToDigits},set_displayZeroToDigits:function(t){this._displayZeroToDigits=t},set_formatNumber:function(t){this._formatNumber=t},get_formatNumber:function(){return this._formatNumber},formatNumber:function(t,e){return $common.formatNumber({value:t,decimalDigits:this.get_decimalDigits(),decimalScale:this.get_decimalScale(),displayThousandSeperator:this.get_displayThousandSeperator(),displayEmptyForZero:this.get_displayEmptyForZero(),displayZeroToDigits:this.get_displayZeroToDigits(),isPrint:e})},getHTML:function(t,e,i){if(!this._stepButton)return Sys.UI.Controls.NumberColumn.callBaseMethod(this,"getHTML",arguments);return'<div class="EditBlock stepBlock"><div class="SkinButton aicon-jian jian stepNum"></div><div class="Edit">'+e+'</div><div class="SkinButton aicon-zengjia add stepNum"></div></div>'},getDisplayText:function(t,e,i,n){var o=this._grid,s=this._getFlag(i);if(this.get_formatNumber()&&(t=this.formatNumber(t,n)),Object.isUndefinedOrNull(t)||""===t)return this._displayEmptyForZero?"":o.isEmptyRow(i)?"":this._defaultValue!==undefined?this._defaultValue:"";if(!this.get_formatNumber()){if(0==t&&this._displayEmptyForZero)return"";var r=t.toString(),a=$common._checkENumber(r);r!=a&&(t=a),4==n&&(t=t.toString())}return s?s+" "+t:t},getControlValue:function(t,e){var i=this._preFlagDataField||this._currencyMarker,n=this._getFlag(e),o=this.get_reportField(),s=Sys.UI.Controls.NumberColumn.callBaseMethod(this,"getControlValue",[t,e]);if(i&&o&&n){this._grid.getRowData(e)[o]=n+" "+s}return s},_getFlag:function(t){var e=this.get_preFlagData(t);return null==e&&(e=this.get_currencyMarker()),e}},Sys.UI.Controls.NumberColumn.registerClass("Sys.UI.Controls.NumberColumn",Sys.UI.Controls.Column),Sys.UI.Controls.FiscalColumn=function(){Sys.UI.Controls.FiscalColumn.initializeBase(this),this._captionsText="万千百十亿千百十万千百十元角分",this._maxValueLength=11,this._activeIndex=0,this._minWidth=200},Sys.UI.Controls.FiscalColumn.prototype={initialize:function(){for(var t=new Sys.StringBuilder,e=0;e<this._maxValueLength;e++){var i=this._maxValueLength-1-e,n='<div class="FiscalBlock #" index="%">{%}</div>'.replace("#","fc"+i).replace(/\%/gi,e);t.append(n)}this._templateHtml=t.toString(),Sys.UI.Controls.FiscalColumn.callBaseMethod(this,"initialize")},dispose:function(){Sys.UI.Controls.FiscalColumn.callBaseMethod(this,"dispose"),delete this._fiscalControl},get_displayThousandSeperator:function(){return!1},renderRowCellSkin:function(t,e,i){i.className+=" FiscalCell"},get_maxValueLength:function(){return this._maxValueLength},set_maxValueLength:function(t){this._maxValueLength=t},get_fullInput:function(){return this._fullInput},set_fullInput:function(t){this._fullInput=t},_internalDisposeHeader:function(t){t&&$dom.removeCssClass(this._elements.captionElement,"FiscalCaption"),Sys.UI.Controls.FiscalColumn.callBaseMethod(this,"_internalDisposeHeader")},doInitHeaderElements:function(t){var e=this.get_headerElement();if(e){$dom.addCssClass(t.captionElement,"FiscalCaption");var i=this.fiscalBlock;i||(i=this.fiscalBlock=$common.createClassDiv("FiscalHeader"),$craba.innerHTMLs(i,this._formatHTML(this._captionsText.substr(this._captionsText.length-this._maxValueLength)))),e.appendChild(i)}},_createSortFlag:function(){var t=Sys.UI.Controls.FiscalColumn.callBaseMethod(this,"_createSortFlag");return t&&t.parentNode.appendChild(this.fiscalBlock),t},_clearSortOrderFast:function(t){if(this._elements.sortFlag){Sys.UI.Controls.FiscalColumn.callBaseMethod(this,"_clearSortOrderFast",[t]);var e=t?this.get_frozenHeaderElement():this.get_headerElement(),i=t?this.frozenFiscalBlocks:this.fiscalBlock;e.appendChild(i)}},initProps:function(t){Sys.UI.Controls.FiscalColumn.callBaseMethod(this,"initProps",[t]),this._fullInput?(t.showCalculator=!0,t.decimalPrecision=this._maxValueLength,t.decimalScale=2):(t.showCalculator=!1,t.maxValue=9,t.maxLength=1,t.decimalPrecision=0)},_setFooterText:function(t){if(t){var e=t.firstChild;if(e){var i=this.get_footer();e.style.padding=0,i||(i=""),(i=i.toString()).startsWith("-")?$dom.addCssClass(e,"LessNumber"):$dom.removeCssClass(e,"LessNumber"),$craba.innerHTMLs(e,'<div class="FiscalFooter">'+this.getDisplayText(i)+"</div>")}}},_formatHTML:function(t){for(var e=t.split(""),i=this._templateHtml,n=0;n<this._maxValueLength;n++){var o=e[n];o&&"-"!=o||(o=""),i=i.replace("{"+n+"}",o)}return i},getHTML:function(t,e){this._activeElement=null,this._prevActiveElement=null;var i="GridBodyFiscalText";return t<0&&(i+=" LessNumber"),'<div class="'+i+'">'+e+"</div>"},_doGetCellText:function(t,e,i){return i?e:Sys.UI.Controls.FiscalColumn.callBaseMethod(this,"_doGetCellText",[t,e,i])},get_decimalDigits:function(t){return t?this._decimalDigits:this._fullInput?2:0},getDisplayText:function(t,e,i){e=this._formatValue(t,this.get_decimalDigits(!0),this.get_decimalScale(),this.get_displayEmptyForZero(),this.get_displayZeroToDigits());return this._formatHTML(e)},_initCellHTML:function(t,e,i){return this._getCellHTML(t,e)},_removeCellEdit:function(t){try{var e=this._columnEdit.parentNode;e&&e.removeChild(this._columnEdit)}catch(i){}},_checkLastCell:function(t){return this._fullInput?Sys.UI.Controls.FiscalColumn.callBaseMethod(this,"_checkLastCell",[t]):(this._saveActiveIndex(),this._activeElement?this._activeElement.className.indexOf("FiscalBlock")>-1:(this._activeElement=t.firstChild.childNodes[this._activeIndex],!0))},_refreshCell:function(t){this._fiscalControl||(this._fiscalControl=new _Z_71(this)),this._fiscalControl.refreshCell(t)},_initEditorElement:function(t,e,i,n){var o=t;t.firstChild&&(this._fullInput?$dom.setVisible(t.firstChild,!1):o=this._activeElement,i=o.clientWidth,$common.setWidth(e,i),e.style.height=_px(n),e.style.lineHeight=_px(n),o.appendChild(e))},doInitControlValue:function(t,e){e=Sys.UI.Controls.FiscalColumn.callBaseMethod(this,"doInitControlValue",[t,e]);return this._fiscalControl.setValue(),e},getControlValue:function(t,e){return this._fiscalControl.getValue()},focusPrevCell:function(){if(this._fullInput)return Sys.UI.Controls.FiscalColumn.callBaseMethod(this,"focusPrevCell");if(this._activeElement){var t=$common.getPreviousSibling(this._activeElement);if(t)return this._removeCellEdit(this._lastCell),this._activeElement=t,void this._showEditor(this._lastCell)}Sys.UI.Controls.FiscalColumn.callBaseMethod(this,"focusPrevCell")},focusNextCell:function(){if(this._fullInput)return Sys.UI.Controls.FiscalColumn.callBaseMethod(this,"focusNextCell");if(this._activeElement){var t=$common.getNextSibling(this._activeElement);if(t)return this._removeCellEdit(this._lastCell),this._activeElement=t,void this._showEditor(this._lastCell)}Sys.UI.Controls.FiscalColumn.callBaseMethod(this,"focusNextCell")},doKeyDown:function(t){if(this._fullInput)return Sys.UI.Controls.FiscalColumn.callBaseMethod(this,"doKeyDown",[t]);var e=t.keyCode;switch(e){case Sys.UI.Key.backspace:this._control.set_text(""),this.focusPrevCell();break;case Sys.UI.Key.del:this._control.set_text(""),this.focusNextCell()}if(e==Sys.UI.Key.space||e>47&&e<58){var i=this;asyncCall(function(){i.focusNextCell()})}Sys.UI.Controls.FiscalColumn.callBaseMethod(this,"doKeyDown",[t])},_saveActiveIndex:function(){if(this._activeElement)this._activeIndex=parseInt(this._activeElement.getAttribute("index"));else{var t=this.get_grid()._activeColumn;if(t==this||!t)return;this._activeIndex=t.get_index()>this.get_index()?this._maxValueLength-1:0}},_formatValue:function(t,e,i,n,o){if(null==t)return"";var s=t.toString();if("number"!=typeof t&&(t=Number(t)),isNaN(t)||""==s)return"";if(t=Math.abs(t),s=t.toString(),0==t&&n)return"".padLeft(this._maxValueLength-2," ")+" ";e>0?(e>2&&(e=2),s=Math.roundTo(t,e,!1).format("n"+e)):i>0&&(i>2&&(i=2),s=Math.roundTo(t,i,!1).toString());var r=s.split(/e/i);if(r.length>1){var a=parseInt(r[1]);if(a<0){h=r[0].replace(".","");s="0."+Sys.StringUtils.repeat("0",-1*a-1)+h}else if(a>0){s=(h=r[0].split(".")).join("");var l=h.length>1?h[1].length:0;if(l<a)s+=Sys.StringUtils.repeat("0",a-l);else if(l>a){var h;s=(h=s.substring(0,a+1))+"."+s.substring(a+1,s.length)}}}var d=s.split(".");return s=d.length>1?d[0].padLeft(this._maxValueLength-2," ")+d[1].padRight(2," "):s.padLeft(this._maxValueLength-2," ")+" "}},Sys.UI.Controls.FiscalColumn.registerClass("Sys.UI.Controls.FiscalColumn",Sys.UI.Controls.NumberColumn),_Z_71=function(t){this._column=t},_Z_71.prototype={refreshCell:function(t){var e=this._column;if(!e.get_fullInput()){var i=e._activeElement;if(this._activeValue=i.innerText,e._control&&e._prevActiveElement){var n=e._control.get_value();null!==n&&(e._prevActiveElement.innerText=n)}e._prevActiveElement=i,i.innerText=""}},setValue:function(){if(!this._column.get_fullInput()){this._column._control.set_value(this._activeValue)}},getValue:function(){var t=this._column,e=t._control.get_value();if(t.get_fullInput())return e;null!==e&&(t._activeElement.innerText=e);for(var i=t._activeElement.parentNode,n=$dom.hasClass(i,"LessNumber"),o=i.childNodes,s="",r=!1,a=!1,l=o.length,h=l-2,d=0;d<l;d++){var _=o[d];_==t._activeElement&&r&&null===e&&(_.innerText=0);var u=_.innerText;d<h?u?(r=!0,s+=u):r&&(s+="0"):d==h?u&&(a=!0,s=s+"."+u):u&&(a?s+=u:s=s+".0"+u)}return this._toNumber(s,n)},_toNumber:function(t,e){return t.length>0?e?-1*Number(t):Number(t):0}},Sys.UI.Controls.PercentColumn=function(){Sys.UI.Controls.PercentColumn.initializeBase(this)},Sys.UI.Controls.PercentColumn.prototype={get_readOnly:function(){return!0},getDisplayText:function(t,e){return(e=$common.formatNumber(t,this.get_decimalDigits(),this.get_decimalScale()))?e+"%":e}},Sys.UI.Controls.PercentColumn.registerClass("Sys.UI.Controls.PercentColumn",Sys.UI.Controls.NumberColumn),Sys.UI.Controls.DateColumn=function(){Sys.UI.Controls.DateColumn.initializeBase(this),this._formater="yyyy-MM-dd",this._filterType=_Z_72.range,this._useTime=!0},Sys.UI.Controls.DateColumn.prototype={_closeDropDown:function(t){t||Sys.UI.Controls.DateColumn.callBaseMethod(this,"_closeDropDown")},set_selectOnly:function(t){this._selectOnly=t},get_selectOnly:function(){return this._selectOnly},getControlType:function(){if(this._formater.indexOf(" ")>-1)return Sys.UI.Controls.DateTimeEdit;var t=this._formater.indexOf("yyyy")>-1,e=this._formater.indexOf("MM")>-1,i=this._formater.indexOf("dd")>-1;return t||e||i?Sys.UI.Controls.DateEdit:Sys.UI.Controls.TimeEdit},createFilter:function(t,e,i){var n=this.createEdit();n.className="ButtonEdit Edit SelectOnly",t.appendChild(n);var o={tabOnEnter:!1,selectOnly:!0,tag:this};$settings.GridFilterEditShowNullText&&(o.nullDisplayText="按日期过滤"),i&&(o.value=i.value);var s={change:$createDelegate(e,e.doFilter),enterPress:$createDelegate(e,e.doFilter)};this._formater.indexOf(" ")>-1||(o.editKind=_Z_48.date),Object.copyTo(this._filterProperties,o);var r=$create(Sys.UI.Controls.DateRangeEdit,o,n,s,this._grid.get_form(),!0);return e.addControl(r),t._control=r,r},getFilterValue:function(t,e){var i=t.get_date();e.value1=i[0],e.value2=i[1]},setFilterValue:function(t){this._filterControl&&this._filterControl.set_date(t.value1,t.value2)},initProps:function(t){Sys.UI.Controls.DateColumn.callBaseMethod(this,"initProps",[t]),t.valueType=this.get_valueType(),t.selectOnly=this.get_selectOnly(),t.minValue=this.get_minValue(),t.maxValue=this.get_maxValue(),t.useTime=this.get_useTime()},set_useTime:function(t){this._useTime=t},get_useTime:function(){return this._useTime},get_minValue:function(){return this._minValue},set_minValue:function(t){this._minValue=t,this.get_isInitialized()&&($craba._initMinMaxDateValue(this),this._control&&this._control.set_minValue(t))},get_maxValue:function(){return this._maxValue},set_maxValue:function(t){this._maxValue=t,this.get_isInitialized()&&($craba._initMinMaxDateValue(this),this._control&&this._control.set_maxValue(t))},getDisplayText:function(t){return"string"==typeof t?t=t.indexOf(" ")>5||t.indexOf("T")>5?Date.strToDateTime(t):Date.strToDate(t):"number"==typeof t&&(t=new Date(t)),t?t._format(this._formater):""},get_formater:function(){return this._formater},set_formater:function(t){this._formater=t}},Sys.UI.Controls.DateColumn.registerClass("Sys.UI.Controls.DateColumn",Sys.UI.Controls.Column),Sys.UI.Controls.DateTimeColumn=function(){Sys.UI.Controls.DateTimeColumn.initializeBase(this),this._showSecond=!0,this._formater="yyyy-MM-dd HH:mm:ss"},Sys.UI.Controls.DateTimeColumn.prototype={initProps:function(t){Sys.UI.Controls.DateTimeColumn.callBaseMethod(this,"initProps",[t]),t.showSecond=this._showSecond},set_showSecond:function(t){this._showSecond=t,this._formater=t?"yyyy-MM-dd HH:mm:ss":"yyyy-MM-dd HH:mm"},get_showSecond:function(){return this._showSecond}},Sys.UI.Controls.DateTimeColumn.registerClass("Sys.UI.Controls.DateTimeColumn",Sys.UI.Controls.DateColumn),Sys.UI.Controls.SelectorColumn=function(){Sys.UI.Controls.SelectorColumn.initializeBase(this),this._selectorWidth=0,this._selectorHeight=0,this._selectOnly=!1,this._allowHandInput=!1,this._shortcut=0,this._buttonVisible=!0,this._showHoverButton=!0},Sys.UI.Controls.SelectorColumn.prototype={createFilter:function(t,e,i){return this._createTextFilter(t,e,i)},getControlType:function(){return Sys.UI.Controls.SelectorEdit},get_showMDI:function(){return this._showMDI},set_showMDI:function(t){this._showMDI=t},get_selectorPage:function(){return this._selectorPage},set_selectorPage:function(t){this._selectorPage=t,this._control&&this._control.set_selectorPage(t)},get_clickNotFocus:function(){return this._clickNotFocus},set_clickNotFocus:function(t){this._clickNotFocus=t},get_selectorText:function(){return this._selectorText},set_selectorText:function(t){this._selectorText=t,this.get_isInitialized()&&this._refreshColumnHTML(this._grid.get_rowCount())},get_buttonVisible:function(){return this._buttonVisible},set_buttonVisible:function(t){this._buttonVisible=t},get_selectorWidth:function(){return this._selectorWidth},set_selectorWidth:function(t){this._selectorWidth=t},get_selectorHeight:function(){return this._selectorHeight},set_selectorHeight:function(t){this._selectorHeight=t},get_selectorType:function(){return this._selectorType},set_selectorType:function(t){this._selectorType=t},get_selectOnly:function(){return this._selectOnly},set_selectOnly:function(t){this._selectOnly=t,this._control&&this._control.set_selectOnly(t)},get_allowHandInput:function(){return this._allowHandInput},set_allowHandInput:function(t){this._allowHandInput=t,this._control&&this._control.set_allowHandInput(t)},get_shortcut:function(){return this._shortcut},set_shortcut:function(t){this._shortcut=t},add_buttonClick:function(t,e){return this.get_events().addHandler("buttonClick",t,e)},remove_buttonClick:function(t){this.get_events().removeHandler("buttonClick",t)},doAfterInitControlValue:function(t){},needHandleEnterPress:function(){return!1},doButtonClick:function(){var t=this.get_events().getHandler("buttonClick");t&&t(this)},add_selectorInit:function(t,e){return this.get_events().addHandler("selectorInit",t,e)},remove_selectorInit:function(t){this.get_events().removeHandler("selectorInit",t)},doSelectorInit:function(t){var e=this.get_events().getHandler("selectorInit");e&&e(this,t)},add_selectorLoaded:function(t,e){return this.get_events().addHandler("selectorLoaded",t,e)},remove_selectorLoaded:function(t){this.get_events().removeHandler("selectorLoaded",t)},doSelectorLoaded:function(t){var e=this.get_events().getHandler("selectorLoaded");e&&e(this,t)},add_selectorSelected:function(t,e){return this.get_events().addHandler("selectorSelected",t,e)},remove_selectorSelected:function(t){this.get_events().removeHandler("selectorSelected",t)},doSelectorSelected:function(t){var e=this.get_events().getHandler("selectorSelected");e&&e(this,t)},add_selectorBeforeSelected:function(t,e){return this.get_events().addHandler("selectorBeforeSelected",t,e)},remove_selectorBeforeSelected:function(t){this.get_events().removeHandler("selectorBeforeSelected",t)},doSelectorBeforeSelected:function(t){var e=this.get_events().getHandler("selectorBeforeSelected");e&&e(this,t)},add_getSelectorPage:function(t,e){return this.get_events().addHandler("getSelectorPage",t,e)},remove_getSelectorPage:function(t){this.get_events().removeHandler("getSelectorPage",t)},initProps:function(t){Sys.UI.Controls.SelectorColumn.callBaseMethod(this,"initProps",[t]),Sys.UI.Controls.SelectorColumn.copyProps(this,t)},get_filterChars:function(){return this._filterChars},set_filterChars:function(t){this._filterChars=t},get_showHoverButton:function(){return this._showHoverButton},set_showHoverButton:function(t){this._showHoverButton=t},getControlValue:function(t,e){var i=t.get_value();return Object.isUndefinedOrNull(i)?null:i},getInputAction:function(){return"选择"},getHTML:function(t,e,i){var n=this._getTextBlank(e,i);return this._toButtonHtml(n)},_initCellHTML:function(t,e,i){return i||this._selectorText?this._getCellHTML(t,e):this._getEmptyHTML(!0)},_toButtonHtml:function(t){if(!this._showHoverButton)return t;var e=!this.get_readOnly();return e&&this._selectorText?t+='<div class="Button SelectorButton">'+this._selectorText+"</div>":e&&(t+='<div class="SelectorButton icon aicon-gengduotianchong"></div>'),t},_getEmptyHTML:function(t){var e=Sys.UI.Controls.SelectorColumn.callBaseMethod(this,"_getEmptyHTML",[t]);return this._toButtonHtml(e)},renderRowCellSkin:function(t,e,i){i.className+=" SelectorCell"},raiseClick:function(t,e){var i=this._grid._clickTarget||e.target;this._control&&this._lastCell&&i.tagName&&$dom.hasClass(i,"SelectorButton")&&this._control.doButtonClick()},doValueChanged:function(t){var e=this.get_dataField();t&&this.get_displayField()&&null===t[e]&&(t[this.get_displayField()]="")}},Sys.UI.Controls.SelectorColumn.registerClass("Sys.UI.Controls.SelectorColumn",Sys.UI.Controls.Column),Sys.UI.Controls.SelectorColumn.copyProps=function(t,e){e.displayField=t.get_displayField(),e.selectorPage=t.get_selectorPage(),e.selectorType=t.get_selectorType(),e.selectorWidth=t.get_selectorWidth(),e.selectorHeight=t.get_selectorHeight(),e.buttonVisible=t.get_buttonVisible(),e.clickNotFocus=t.get_clickNotFocus(),e.maxLength=t.get_maxLength(),e.showMDI=t.get_showMDI(),e.allowDelIcon=t.get_allowDelIcon();var i=t.get_selectOnly();e.selectOnly=i,i&&(e.readOnly=!0),e.allowHandInput=t.get_allowHandInput(),e.shortcut=t.get_shortcut();var n=t.get_maxByteLength();n>0&&(e.maxByteLength=n),e.allowTags=t.get_allowTags();var o=t.get_filterChars();o&&(e.filterChars=o)},_Z_70=function(){_Z_70.initializeBase(this),this._items=null,this._dropDownStyle=_Z_24.dropDown,this._dataValueField="value",this._dataTextField="text"},_Z_70.prototype={set_selectOnly:function(t){this._selectOnly=t},get_selectOnly:function(){return this._selectOnly},createFilter:function(t,e,i){var n=this.createEdit();n.className="ButtonEdit Edit",t.appendChild(n);var o={};this.initProps(o);var s={tabOnEnter:!1,tag:this};$settings.GridFilterEditShowNullText&&(s.nullDisplayText="下拉过滤"),i&&(s.value=i.value),Object.copyTo(s,o),Object.copyTo(this._filterProperties,o);var r=$create(this.getControlType(),o,n,this._getFilterEvents(e),this._grid.get_form(),!0);return e.addControl(r),t._control=r,r},_getFilterEvents:function(t){return{change:$createDelegate(t,t.doFilter),enterPress:$createDelegate(t,t.doFilter)}},get_dropDownStyle:function(){return this._dropDownStyle},set_dropDownStyle:function(t){this._dropDownStyle=t},initProps:function(t){_Z_70.callBaseMethod(this,"initProps",[t]),t.items=this.get_items(),t.dataValueField=this.get_dataValueField(),t.dataTextField=this.get_dataTextField(),t.dropDownStyle=this.get_dropDownStyle(),t.selectOnly=this.get_selectOnly(),t.valueType=this.get_valueType(),this._enabledField&&(t.enabledField=this._enabledField)},getDefaultValue:function(){return this._defaultValue},get_defaultValue:function(){return this._defaultValue},set_defaultValue:function(t){this._defaultValue=t},get_items:function(){return this._items},set_items:function(t,e){if(this._items=t,this.get_isInitialized()){if(this._hasEditor()&&!e&&this._hideEditor(),this.get_control()){var i=this.get_control(),n=i.get_value();i.set_items(t),i.set_value(n)}this._filterControl&&this._filterControl.set_items(Object.clone(t))}},refreshItems:function(t){this.set_items(t),this._refreshColumnHTML()},get_itemData:function(){var t=this.get_items();if(!t)return null;for(var e=this.get_dataValueField(),i=this.get_dataTextField(),n={},o=0,s=t.length;o<s;o++){var r=t[o],a=r[e],l=this._getItemText(r[i]);n[a]=l}return n},_getItemText:function(t){return t},get_hasItems:function(){var t=this.get_items();return t&&t.length>0},get_dataValueField:function(){return this._dataValueField},set_dataValueField:function(t){this._dataValueField=t},get_dataTextField:function(){return this._dataTextField},set_dataTextField:function(t){this._dataTextField=t},get_enabledField:function(){return this._enabledField},set_enabledField:function(t){this._enabledField=t},add_dropDown:function(t){this.get_events().addHandler("dropDown",t)},remove_dropDown:function(t){this.get_events().removeHandler("dropDown",t)},doDropDown:function(){var t=this.get_events().getHandler("dropDown");t&&t(this)},getInputAction:function(){return"选择"}},_Z_70.registerClass("_Z_70",Sys.UI.Controls.Column),Sys.UI.Controls.DropDownColumn=function(){Sys.UI.Controls.DropDownColumn.initializeBase(this),this._filterType=_Z_72.equals},Sys.UI.Controls.DropDownColumn.prototype={getControlType:function(){return Sys.UI.Controls.DropDownEdit},doTabOnEnter:function(){this._control&&this._control.get_droppedDown()||Sys.UI.Controls.DropDownColumn.callBaseMethod(this,"doTabOnEnter")},initProps:function(t){Sys.UI.Controls.DropDownColumn.callBaseMethod(this,"initProps",[t]),t.maxLength=this.get_maxLength()},getFilterValue:function(t,e){var i=t.get_value();e.value1=i,e.value2=i},_change:function(t,e){Sys.UI.Controls.DropDownColumn.callBaseMethod(this,"_change",[t,e]),this._hideEditor()},getDisplayText:function(t,e){return this.get_dropDownStyle()==_Z_24.dropDownEdit||this._valueType==_Z_58.string?e:$craba.getItemTextByValue(this.get_items(),this.get_dataValueField(),this.get_dataTextField(),t)},getCellValue:function(t){var e=Sys.UI.Controls.DropDownColumn.callBaseMethod(this,"getCellValue",[t]);return void 0===e?this.getDefaultValue():e}},Sys.UI.Controls.DropDownColumn.registerClass("Sys.UI.Controls.DropDownColumn",_Z_70),Sys.UI.Controls.DropDownCheckColumn=function(){Sys.UI.Controls.DropDownCheckColumn.initializeBase(this)},Sys.UI.Controls.DropDownCheckColumn.prototype={getControlType:function(){return Sys.UI.Controls.DropDownCheckBoxList},_cloneLastValue:function(){this._lastValueClone=Object.clone(this._lastValue)},_getFilterEvents:function(t){return{changed:$createDelegate(t,t.doFilter),enterPress:$createDelegate(t,t.doFilter)}},initProps:function(t){Sys.UI.Controls.DropDownCheckColumn.callBaseMethod(this,"initProps",[t]),t.layoutDirection=Sys.UI.Controls.LayoutDirection.vert,t.columnSplit=1},handleControl:function(t){t.add_changed($createDelegate(this,this._change))},getDisplayText:function(t,e){if(this.get_dropDownStyle()==_Z_24.dropDownEdit)return e;if(!t)return"";if(t.toString().indexOf(",")>0&&(t=t.toString().split(",")),t instanceof Array){for(var i=[],n=0,o=t.length;n<o;n++){(e=$craba.getItemTextByValue(this.get_items(),this.get_dataValueField(),this.get_dataTextField(),t[n]))&&i.push(e)}return i.join(",")}return $craba.getItemTextByValue(this.get_items(),this.get_dataValueField(),this.get_dataTextField(),t)},getCellValue:function(t){var e=Sys.UI.Controls.DropDownCheckColumn.callBaseMethod(this,"getCellValue",[t]);return void 0===e?this.getDefaultValue():e}},Sys.UI.Controls.DropDownCheckColumn.registerClass("Sys.UI.Controls.DropDownCheckColumn",_Z_70),Sys.UI.Controls.ColorDropDownColumn=function(){Sys.UI.Controls.ColorDropDownColumn.initializeBase(this),this._color="#ffffff",this._level=0},Sys.UI.Controls.ColorDropDownColumn.prototype={createFilter:function(){},getControlType:function(){return this._dropDownStyle==_Z_24.dropDown?Sys.UI.Controls.ColorEdit:Sys.UI.Controls.ColorDropDownEdit},get_level:function(){return this._level},set_level:function(t){this._level=t},get_color:function(){return this._color},set_color:function(t){this._color=t},initProps:function(t){this._dropDownStyle==_Z_24.dropDownList?Sys.UI.Controls.ColorDropDownColumn.callBaseMethod(this,"initProps",[t]):_Z_70.callBaseMethod(this,"initProps",[t]),t.level=this._level,t.defaultValue=this._color},getHTML:function(t,e,i){return'<div class="GridBodyCellText" style="background-color:'+t+';">&nbsp;</div>'}},Sys.UI.Controls.ColorDropDownColumn.registerClass("Sys.UI.Controls.ColorDropDownColumn",_Z_70),Sys.UI.Controls.ImageDropDownColumn=function(){Sys.UI.Controls.ImageDropDownColumn.initializeBase(this),this._imageHeight=0,this._allowFilter=!1,this._allowFilter=!1},Sys.UI.Controls.ImageDropDownColumn.prototype={get_imageHeight:function(){return this._imageHeight},set_imageHeight:function(t){this._imageHeight=t},createEdit:function(){return $common.createClassDiv("ImageEdit")},getControlType:function(){return Sys.UI.Controls.ImageDropDownEdit},initProps:function(t){Sys.UI.Controls.ImageDropDownColumn.callBaseMethod(this,"initProps",[t]),t.imageHeight=this.get_imageHeight()},getDisplayText:function(t,e){var i=$craba.getItemTextByValue(this.get_items(),this.get_dataValueField(),this.get_dataTextField(),t);return $craba.getImage(i,this._imageWidth,this._imageHeight)},getHTML:function(t,e,i){return e||e.toString()?"<div class='ImageCell'>"+e+"</div>":'<div class="GridBodyCellText">&nbsp;</div>'},getCellText:function(t,e){var i=Sys.UI.Controls.ImageDropDownColumn.callBaseMethod(this,"getCellText",[t]);if(!e)return i;var n=this.getCellValue(t),o=$craba.getItemTextByValue(this.get_items(),this.get_dataValueField(),this.get_dataTextField(),n);return $common.getHostUrl(o)},_getItemText:function(t){return $common.getHostUrl(t)}},Sys.UI.Controls.ImageDropDownColumn.registerClass("Sys.UI.Controls.ImageDropDownColumn",_Z_70),Sys.UI.Controls.CheckBoxColumn=function(){Sys.UI.Controls.CheckBoxColumn.initializeBase(this),this._textChecked=null,this._textUnchecked=null,this._skinImage=null,this._displayNull=!0,this._checks={},this._filterType=_Z_72.equals,this._showEditStyle=!1},Sys.UI.Controls.CheckBoxColumn.prototype={_setEditorActive:function(){},get_reportText:function(t){return t?"√":"×"},_checkCalcSummary:function(){},getIsCommandColumn:function(){return!0},_refreshCell:function(t){var e=t.firstChild;e&&e.tagName?(e.style.display="none",asyncCall(function(){$clearHandlers(e.firstChild),$removeNode(e)})):t.innerText=""},getControlType:function(){return Sys.UI.Controls.CheckBox},getControlValue:function(t,e){return this._isEmptyCell(this._lastValue,e)?this._lastValue:Sys.UI.Controls.CheckBoxColumn.callBaseMethod(this,"getControlValue",[t])},_initEditorElement:function(t,e){var i=$common.createClassDiv("ChkBoxStyle OnlyChk");i.appendChild(e),t.appendChild(i)},get_textChecked:function(){return this._textChecked},set_textChecked:function(t){this._textChecked=t},get_textUnchecked:function(){return this._textUnchecked},set_textUnchecked:function(t){this._textUnchecked=t},get_immediateEditor:function(){return this.get_visible()&&!this.get_readOnly()},createEdit:function(){return $common.createCheckBox()},getEditable:function(t){if(t){var e=t.firstChild;if(e&&e.tagName)return e=e.firstChild,$dom.getEnabled(e)}return!0},setEditable:function(t,e){if(this._lastCell==e&&this._hideEditor(),e){var i=e.firstChild;i&&i.tagName&&($dom.setEnabled(i,t),$dom.setEnabled(i.firstChild,t))}},_isRowAllowEditor:function(t){if(this.get_readOnly())return!1;var e=this._grid._getRowIndex(t);return!this._grid.isEmptyRow(e)&&this._getRowCellEditable(t)},_getRowCellEditable:function(t){var e=this._grid._getRowCell(t,this.get_index());return e=this._exchangeFrozenCell(e),this._getCellEditable(e)},_getCellEditable:function(t){if(t){var e=t.firstChild;if(e&&e.tagName)return e=e.firstChild,$dom.getEnabled(e)&&$dom.getVisible(e)}return!0},getHTML:function(t,e,i){if(this.get_readOnly()){if(this._isEmptyCell(t,i))return"";var n=(t=Boolean.convert(t))?1:0,o=this._checks[n];if(!o){var s=this.get_textChecked(),r=this.get_textUnchecked();o=t&&s?this._getHtml(s):!t&&r?this._getHtml(r):$common.getGlyphDivHTML("checkShape",n),this._checks[n]=o}return o}var a=this._grid.getRowEnabled(i)&&this.get_enabled(),l="",h="ChkBoxStyle OnlyChk";this._isEmptyCell(t,i)&&(h+=" dnone");var d=2==t||"2"==t;return(t=Boolean.convert(t))&&(l+=" checked",h+=" checked"),a||(l+=" disabled",h+=" disabled"),this.get_readOnly()&&(h+=" readonly"),d&&(h+=" half"),'<div class="'+h+'"><input type="checkbox"'+l+"/></div>"},_checkTarget:function(t){return"INPUT"==t.target.tagName},raiseClick:function(t,e){if(e.button==Sys.UI.MouseButton.leftButton&&!this.get_readOnly()&&this.get_enabled()&&!this._grid.isEmptyRow(t)&&this._checkTarget(e)){var i=this._grid._getRow(t);if(this._lastCell||this._getRowCellEditable(i)){var n=o=this.getCellValue(t),o=this._getRealValue(t,o,e);this._setCellValue(t,o);var s=this._grid,r=this._control;r?(s._mouseHoverRow=this._grid._activeRow,t!=s.get_selectedRowIndex()&&s.set_selectedRowIndex(t),$craba.asyncFun(this,function(){r._changeChecked(o)})):(this._lastValue=o,this._raiseChange(null,o,n))}}},_getRealValue:function(t,e,i){return!e},set_readOnly:function(t){Sys.UI.Controls.CheckBoxColumn.callBaseMethod(this,"set_readOnly",[t]),this.get_isInitialized()&&(t&&this._hideEditor(),this._refreshColumnHTML())},set_enabled:function(t){this._enabled=t,this.get_isInitialized()&&(t||this._hideEditor(),this._refreshColumnHTML())},createFilter:function(t,e,i){var n=$common.createInput();n.type="text",n.id=this._grid.get_id()+"_"+this.get_name(),n.className="ButtonEdit Edit",t.appendChild(n);var o={tabOnEnter:!1,tag:this,items:this._getFilterItems(),dataValueField:"value",dataTextField:"text"};$settings.GridFilterEditShowNullText&&(o.nullDisplayText="下拉过滤"),i&&(o.value=i.value),Object.copyTo(this._filterProperties,o);var s={change:$createDelegate(e,e.doFilter),enterPress:$createDelegate(e,e.doFilter)},r=$create(Sys.UI.Controls.DropDownEdit,o,n,s,this._grid.get_form(),!0);return e.addControl(r),t._control=r,r},_getFilterItems:function(){return[{text:"是",value:1},{text:"否",value:0}]}},Sys.UI.Controls.CheckBoxColumn.registerClass("Sys.UI.Controls.CheckBoxColumn",Sys.UI.Controls.Column);var $_multiColumn=Sys.UI.Controls.MultiSelectColumn=function(){$_multiColumn.initializeBase(this),this._isCheckAll=!1,this._toggleByClickRow=!1,this._strongFocus=!0,this._showHeaderCheckBox=$settings.GridMultiSelectColumnDefaultShowHeaderCheckBox};$_multiColumn.prototype={initialize:function(){$_multiColumn.callBaseMethod(this,"initialize"),this._changeHandler=this._internalGetChangeHandler()},dispose:function(){var t=$_multiColumn._getCheckBoxElement(this);t&&($clearHandlers(t),this._elements.checkBoxElement=null),$_multiColumn.callBaseMethod(this,"dispose")},_internalSetElements:function(t,e,i){if(t!=this._elements){var n=this._grid._multiSelectColumn._elements;t.checkBoxElement=n.checkBoxElement,t.checkBoxCaptionElement=n.checkBoxCaptionElement,t.frozenCaptionElement=n.frozenCaptionElement,t.frozenCheckBoxElement=n.frozenCheckBoxElement,t.captionTable=n.captionTable}$_multiColumn.callBaseMethod(this,"_internalSetElements",[t,e,i])},get_strongFocus:function(){return this._strongFocus},set_strongFocus:function(t){this._strongFocus=t},get_isCheckAll:function(){return this._isCheckAll},get_toggleByClickRow:function(){return this._toggleByClickRow},set_toggleByClickRow:function(t){this._toggleByClickRow=t},set_readOnly:function(t){if(t!=this._readOnly&&($_multiColumn.callBaseMethod(this,"set_readOnly",[t]),this.get_isInitialized()&&this.get_showHeaderCheckBox())){var e=$_multiColumn._getCheckBoxElement(this);e||($_multiColumn._createHeaderCheckBox(this,this._elements),e=$_multiColumn._getCheckBoxElement(this)),e.style.display=t?"none":""}},get_showHeaderCheckBox:function(){return this._showHeaderCheckBox},set_showHeaderCheckBox:function(t){this._showHeaderCheckBox=t},_refreshCaption:function(t){$_multiColumn._refreshCaption(this,t)},_initCellHTML:function(t,e,i){return this._getCellHTML(t,e)},_onHideEditor:function(t,e,i){this._grid._isTree&&this.get_visible()&&(i==undefined&&(i=this._lastValue),this._grid._checkCellindeterminate(t,e,i))},_initControlValue:function(t,e){if($_multiColumn.callBaseMethod(this,"_initControlValue",[t,e]),this._grid._isTree){var i=t.parentNode,n=this._grid._getRowIndex(i),o=this._columnEdit;o.indeterminate=!this._lastValue&&this._grid.hasSelectedChild(n),$common._changeCheckedHalfStyle(o.parentNode,this._lastValue,o.indeterminate)}},doInitHeaderElements:function(t){this.get_readOnly()?$_multiColumn.callBaseMethod(this,"doInitHeaderElements",[t]):$_multiColumn._createHeaderCheckBox(this,this._elements)},_internalDisposeHeader:function(t){t&&(this._elements.captionElement.style.lineHeight=""),$_multiColumn.callBaseMethod(this,"_internalDisposeHeader")},doChanged:function(t,e,i){if($_multiColumn.callBaseMethod(this,"doChanged",arguments),!this._isCheckAll){var n=this.get_grid();n._checkRelation(i,t,!0),n._checkMultiSelectColumn()}},_checkBoxClick:function(t){var e=$_multiColumn._getCheckBoxElement(this);if(e){e._indeterminate?(e.checked=!0,e._indeterminate=!1,$common._changeCheckedHalfStyle(e.parentNode,!0,!1)):$common._changeCheckedHalfStyle(e.parentNode,e.checked,!1),this._initHeaderCheckBoxHint(e);var i=e.checked;this._isCheckAll=i;var n=this.get_grid(),o=this._elements.checkBoxElement;o!=e&&(o.checked=i,$common._changeCheckedHalfStyle(o.parentNode,i,!1));var s=n.get_events().getHandler("multiSelecting");if(s){var r=new _Z_30(-1,i,!i);if(s(n,r),r.get_cancel())return void this._setMultiSelectColumn(!i,!1)}n._doSelectAll(i),(s=n.get_events().getHandler("multiSelected"))&&s(n)}},isChecked:function(){var t=$_multiColumn._getCheckBoxElement(this);return!!t&&t.checked},_initHeaderCheckBoxHint:function(t){t.title=t.checked?"取消本页全选":"本页全选"},_setMultiSelectColumn:function(t,e){var i=$_multiColumn._getCheckBoxElement(this);if(i&&(i.indeterminate=!t&&e,i._indeterminate=i.indeterminate,$common._changeCheckedHalfStyle(i.parentNode,t,i.indeterminate),i.checked!=t)){var n=this._elements.checkBoxElement;n!=i&&(n.checked=t,n.indeterminate=!t&&e,this._initHeaderCheckBoxHint(n),$common._changeCheckedHalfStyle(n.parentNode,t,n.indeterminate)),i.checked=t,this._initHeaderCheckBoxHint(i)}}},$_multiColumn.registerClass("Sys.UI.Controls.MultiSelectColumn",Sys.UI.Controls.CheckBoxColumn),$_multiColumn._createHeaderCheckBox=function(t,e){if(t.get_headerElement()&&t.get_showHeaderCheckBox()){if(e.checkBoxElement){var i=e.checkBoxElement._table;$removeNode(i,!1),e.captionElement.innerText="",e.captionElement.appendChild(i)}else{var n=e.captionElement,o=$_multiColumn._getCheckBox(t,e,n,!1);$clearHandlers(e.checkBoxElement),$removeNode(e.checkBoxElement),$common.addClickHandler(o,t._checkBoxClick,t),e.checkBoxElement=o}var s=t.get_frozenHeaderElement(),r=e.frozenCaptionElement;if(s&&r){var a=$_multiColumn._getCheckBox(t,e,r,!0);$clearHandlers(e.frozenCheckBoxElement),$removeNode(e.frozenCheckBoxElement),$common.addClickHandler(a,t._checkBoxClick,t),e.frozenCheckBoxElement=a,t._grid._rows&&t._grid._checkMultiSelectColumn()}else $clearHandlers(e.frozenCheckBoxElement),e.frozenCheckBoxElement=null,e.frozenCaptionElement=null}},$_multiColumn._getCheckBox=function(t,e,i,n){var o=$common.createTable();o.cellPadding="2";var s=$common.createTBody(),r=$common.createTr(),a=$common.createCheckBox(),l=$common.createTd();l.className="ChkBoxStyle OnlyChk",l.appendChild(a),r.appendChild(l);var h=t.get_caption(),d=i.innerHTML;if(d&&"&nbsp;"!=d&&h&&""!=h&&h!=t.get_dataField()){(l=$common.createTd()).innerText=h,r.appendChild(l),e.checkBoxCaptionElement=l}return i.innerText="",s.appendChild(r),o.appendChild(s),i.appendChild(o),i.style.padding=0,a._table=o,a},$_multiColumn._refreshCaption=function(t,e){var i=t.get_caption();if(t._grid.get_useMultiRowCaption()?(i=t._getMultiRowCaption(i),e.style.padding="0px"):e.style.padding="",t.get_showHeaderCheckBox){var n=t._elements.checkBoxCaptionElement;n&&i!=t.get_dataField()&&(n.innerText=i),e.style.lineHeight="0px"}else{var o=t._elements.captionTextElement;o?o.innerText=i:e.innerText=i}},$_multiColumn._getCheckBoxElement=function(t){var e=t._elements;if(!e)return null;var i=e.checkBoxElement;if(!t.get_isFrozen())return i;var n=e.frozenCheckBoxElement;return n||i},Sys.UI.Controls.MultiCheckBoxColumn=function(){Sys.UI.Controls.MultiCheckBoxColumn.initializeBase(this),this._textField=""},Sys.UI.Controls.MultiCheckBoxColumn.prototype={getHTML:function(t,e,i){if(""==this._textField||""==t||""==e)return"";var n="<div>";try{for(var o=this._grid.getRowData(i)[this._textField].split(","),s=t.split(","),r=0,a=o.length;r<a;r++){var l=parseInt(s[r]);n+='<div style="float:left;">',this.get_readOnly()?n+=$common.getGlyphDivHTML("checkShape FloatLeft",l)+o[r]+"&nbsp;&nbsp;":n+='<input tag="'+r+'" type="checkbox" '+(l?" checked":"")+">"+o[r]+"&nbsp;&nbsp;</input>",n+="</div>"}}catch(h){n+="多复选列解析出错"}return n+="</div>"},_isEmptyCell:function(t,e){return!this._displayNull&&Object.isUndefinedOrNull(t)},get_textField:function(){return this._textField},set_textField:function(t){this._textField=t},_getRealValue:function(t,e,i){var n=i.target,o=n.getAttribute("tag");if(o==undefined)return e;for(var s=parseInt(o),r=e.split(","),a="",l=n.checked?1:0,h=0,d=r.length;h<d;h++)""!=r[h]&&(a+=s==h?l+",":r[h]+",");return a},_doShowEditor:function(t,e){var i=this._allEvents;i?this._changeHandler=i.change:(i={},this._changeHandler=null,this._enterPressHandler=null)}},Sys.UI.Controls.MultiCheckBoxColumn.registerClass("Sys.UI.Controls.MultiCheckBoxColumn",Sys.UI.Controls.MultiSelectColumn),Sys.UI.Controls.SwitchButtonColumn=function(){Sys.UI.Controls.SwitchButtonColumn.initializeBase(this),this._filterType=_Z_72.equals,this._displayNull=!1,this._checkedValue=$settings.SwitchButtonCheckedValue},Sys.UI.Controls.SwitchButtonColumn.prototype={_getFilterItems:function(){var t={text:"是",value:this._checkedValue},e={text:"否",value:!this._checkedValue};if(this._text){var i=this._text.split(",");t.text=i[1],e.text=i[0]}return[t,e]},get_itemData:function(){for(var t=this._getFilterItems(),e={},i=0,n=t.length;i<n;i++){var o=t[i],s=o.value,r=o.text;e[s]=r}return e},set_checkedValue:function(t){this._checkedValue=t},get_checkedValue:function(){return this._checkedValue},get_reportText:function(t){if(!this._text)return t==this._checkedValue?"√":"×";var e=this._text.split(",");return t==this._checkedValue?e[1]:e[0]},set_text:function(t){this._text=t,this.get_isInitialized()&&this._refreshColumnHTML()},get_text:function(){return this._text},initProps:function(t){t.text=this._text,t.checkedValue=this._checkedValue},get_immediateEditor:function(){return!1},getControlType:function(){return Sys.UI.Controls.SwitchButton},createEdit:function(){return $common.createDiv()},_initEditorElement:function(t,e,i,n){var o="SwitchButton";this._text&&(o+=" hasText"),e.className=o,$dom.addCssClass(e,this._cssClass),t.appendChild(e)},_getCellEditable:function(t){if(t){var e=t.firstChild;if(e&&e.tagName)return $dom.getEnabled(e)&&$dom.getVisible(e)}return!0},getEditable:function(t){if(t){var e=t.firstChild;if(e&&e.tagName)return $dom.getEnabled(e)}return!0},setEditable:function(t,e){if(this._lastCell==e&&this._hideEditor(),e){var i=e.firstChild;i&&i.tagName&&$dom.setEnabled(i,t)}},getControlValue:function(t,e){return Sys.UI.Controls.CheckBoxColumn.callBaseMethod(this,"getControlValue",[t])},_checkTarget:function(t){return t.target.className.indexOf("Switch")>-1},getHTML:function(t,e,i){var n="SwitchButton";this._cssClass&&(n+=" "+this._cssClass),this._isEmptyCell(t,i)&&(n+=" dnone"),Object.isUndefinedOrNull(t)&&(t=!!t);var o=t==this._checkedValue;o&&(n+=" checked");this._grid.getRowEnabled(i)&&this.get_enabled()||(n+=" disabled"),this.get_readOnly()&&(n+=" readonly");var s="";if(this._text&&this._text.indexOf(",")>0){var r=this._text.split(",");s="<span class='SwitchText'>"+(o?r[1]:r[0])+"</span>",n+=" hasText"}return"<div class='"+n+"'>"+s+"<div class='SwitchBlock'></div></div>"}},Sys.UI.Controls.SwitchButtonColumn.registerClass("Sys.UI.Controls.SwitchButtonColumn",Sys.UI.Controls.CheckBoxColumn),Sys.UI.Controls.ExpandColumn=function(){Sys.UI.Controls.ExpandColumn.initializeBase(this)},Sys.UI.Controls.ExpandColumn.prototype={initialize:function(){this._grid._isTree&&(this.set_dataField(this._grid._expandColumnDataField),this.set_name(this._displayField||this._dataField),this.set_allowMultiExpand(!0)),Sys.UI.Controls.ExpandColumn.callBaseMethod(this,"initialize")},createFilter:function(t,e,i){var n=this.createEdit();n.className="Edit",t.appendChild(n);var o={tabOnEnter:!1,tag:this};i&&(o.text=i.value),Object.copyTo(this._filterProperties,o);var s={change:$createDelegate(e,e.doFilter),enterPress:$createDelegate(e,e.doFilter)},r=$create(this.getControlType(),o,n,s,this._grid.get_form(),!0);return e.addControl(r),r},getControlType:function(){return Sys.UI.Controls.TextEdit},get_allowMultiExpand:function(){return this._allowMultiExpand},set_allowMultiExpand:function(t){this._allowMultiExpand=t},get_expandAll:function(){return this._expandAll},set_expandAll:function(t){this._expandAll=t},get_showHeaderExpand:function(){return this._showHeaderExpand},set_showHeaderExpand:function(t){this._showHeaderExpand=t},get_sortField:function(t){return this._sortField&&t?this._sortField:this._displayField?this._displayField:this._dataField},get_dataTextField:function(){return this._displayField},set_dataTextField:function(t){this._displayField=t},get_readOnly:function(){return this._readOnly||!this._displayField},get_textAlign:function(){return this._displayField?"left":"center"},getIsCommandColumn:function(){return!0},_setCellValue:function(t,e){this._getDataController().doSetCellValueByField(t,this,this.get_sortField(),e)},get_designCaption:function(){return this._designCaption==this._dataField||"__expand"==this._designCaption?"":this._designCaption},getHTML:function(t,e,i){var e="",n="",o=this._grid.isEmptyRow(i);this._displayField&&(e=this._getDataController().doGetCellValue(i,this._displayField),null!=(n=this._getDataController().doGetCellValue(i,"__expandLevel"))||o||(n=0,this._getDataController().doSetCellValueByField(i,this,"__expandLevel",0)));var s=this.get_hint(),r=this._getHandler("getDisplayText");if(r){var a=new _Z_191(i,e,e);r(this,a),e=a.get_text(),a._hint&&(s=a._hint)}if(s||(s=""),-1===t||this._grid._isTree&&Object.isUndefinedOrNull(t))return e?this._getText("",n,e,s):"";if(o)return"";!t||this._grid._rowCreated||this._expandAll||(t=0,this._getDataController().doSetCellValueByField(i,this,this._dataField,t));var l=t?"aicon-xiaojiantou":"collapsed aicon-xiaojiantou";return this._getText(l,n,e,s)},_getText:function(t,e,i,n){var o=t+" arrow level"+e;return i||(i="",o+=" margin0"),i.length>6&&(n=$common.clearHTMLTag(i)),"<div class='GridExpandCell' title='"+n+"'><span class='"+o+"'></span><div class='text'>"+i+"</div></div>"},raiseClick:function(t,e){var i=e.target;i.parentNode&&$dom.hasClass(i,"arrow")&&(this._isExpanding||(this._isExpanding=!0,this.expandRow(t,e)))},expandRow:function(t,e){var i=this.getCellValue(t),n=i?0:1,o=this.doChangeHandler(t,n,i);if(o){o.get_valueChanged()&&(n=o.get_value());var s=this._grid;1!=n||i?0==n&&1==i&&($dom.addCssClass(e.target,"collapsed"),s.collapseRow(t,!0)):(this.get_allowMultiExpand()||s.setExpandAllRows(!1),s._isTree?($dom.removeCssClass(e.target,"collapsed"),s.expandRow(t,!0)):s.expandRow(t,o.get_pageUrl(),o.get_pageParams(),o)),this._clearExpandingFlag()}},doChangeHandler:function(t,e,i){var n;this._allEvents&&(n=this._allEvents.change),n||(n=this.get_events().getHandler("_change"));var o=new _Z_185(t,e,i);return n&&n(this,o),o.get_cancel()?(this._clearExpandingFlag(),null):o},_clearExpandingFlag:function(){var t=this;setTimeout(function(){t._isExpanding=!1},300)}},Sys.UI.Controls.ExpandColumn.registerClass("Sys.UI.Controls.ExpandColumn",Sys.UI.Controls.Column),Sys.UI.Controls.HyperLinkColumn=function(){Sys.UI.Controls.HyperLinkColumn.initializeBase(this),this._allowFilter=!1},Sys.UI.Controls.HyperLinkColumn.prototype={initialize:function(){Sys.UI.Controls.HyperLinkColumn.callBaseMethod(this,"initialize"),this._bindClick()},createFilter:function(){},_setEditorActive:function(){},get_dataTextField:function(){return this._dataTextField},set_dataTextField:function(t){this._dataTextField=t},getIsCommandColumn:function(){return!0},getHTML:function(t,e,i){var n=!1;if("string"==typeof e&&(n=e.toLowerCase().startsWith("http")),n||this._dataTextField){var o=e;return this._dataTextField&&(e=this._getDataController().doGetCellValue(i,this._dataTextField)),'<div class="GridBodyCellText"><a class="LinkColumn" href="'+o+'" target="_blank">'+e+"</a></div>"}return'<div class="GridBodyCellText"><span class="LinkColumn">'+e+"</span></div>"},raiseClick:function(t,e){var i=e.target;if(i.parentNode){if($common.getFirstParentByClassName(i,"LinkColumn","GridBodyCellText")){var n=this.get_events().getHandler("_click");n&&n(this,e)}}}},Sys.UI.Controls.HyperLinkColumn.registerClass("Sys.UI.Controls.HyperLinkColumn",Sys.UI.Controls.TextColumn),Sys.UI.Controls.ImageColumn=function(){Sys.UI.Controls.ImageColumn.initializeBase(this),this._useResource=!0,this._preview=$settings.ImageColumnPreivew,this._allowFilter=!1,this._imageUrl=$settings.ImageColumnImageSrc},Sys.UI.Controls.ImageColumn.prototype={initialize:function(){Sys.UI.Controls.ImageColumn.callBaseMethod(this,"initialize"),this._bindClick(),this._bindPreivew()},_bindPreivew:function(){var t=this._allEvents;if(t){var e=t.preview;e&&this.add_preview(e)}},add_preview:function(t){this.get_events().addHandler("_preview",t)},remove_preview:function(t){this.get_events().removeHandler("_preview",t)},getIsCommandColumn:function(){return!0},getCellText:function(t,e){var i=Sys.UI.Controls.ImageColumn.callBaseMethod(this,"getCellText",[t]);if(!e||!i)return i;var n=$common.getHostUrl();return i.startsWith("http")||i.indexOf("data:image")>-1?i:(i=this._useResource?$common.getResourceUrl(i,this):this.get_form().convertUrl(i),n+"/"+i)},_makeHtml:function(t){return"<div class='GridBodyCellData ImgData'>"+t+"</div>"},getHTML:function(t,e,i){if(this._grid.isEmptyRow(i))return this._makeHtml("");var n=this.get_imageUrl();if(t&&(n=t.startsWith("data:image/")||t.startsWith("http")?t:this._useResource?$common.getResourceUrl(t,this):this.get_form().convertUrl(t)),!n)return this._makeHtml("");var o=this.get_hint()||"";o&&(o=" title='"+o+"'");var s=this._imageWidth,r=s>0?" width='"+s+"'":"",a=this._imageHeight,l=a>0?" height='"+a+"'":"";return this._makeHtml("<img style='cursor:pointer' referrerPolicy='no-referrer' src=\""+n+'"'+r+l+o+"/>")},get_imageUrl:function(){return this._imageUrl},set_imageUrl:function(t){this._imageUrl=t},get_hoverImageUrl:function(){return this._hoverImageUrl},set_hoverImageUrl:function(t){this._hoverImageUrl=t},get_imageWidth:function(){return this._imageWidth},set_imageWidth:function(t){this._imageWidth=t},get_imageHeight:function(){return this._imageHeight},set_imageHeight:function(t){this._imageHeight=t},get_useResource:function(){return this._useResource},set_useResource:function(t){this._useResource=t},get_preview:function(){return this._preview},set_preview:function(t){this._preview=t},raiseClick:function(t,e){if(e.button==Sys.UI.MouseButton.leftButton){var i=this.get_events().getHandler("_click");i&&i(this,e);if("IMG"==e.target.tagName&&"click"===this._preview){new Sys.ImageViewer({className:"AbsViewer",autoPlay:!0,srcField:this.get_dataField(),autoTimer:3e3,index:"number"==typeof t?t:0}).showImages(this._grid.get_dataController().save())}}},doMouseOver:function(t,e){var i=t.target;if("IMG"==i.tagName){if(!i.hasEvent){var n=this.get_events().getHandler("_preview");if(n){var o=new _Z_30(e,null,null,this);if(n(this,o),o.get_cancel())return}var s=this.get_hoverImageUrl(),r=!1;if(i&&s&&(i.src=s,r=!0),"hover"==this._preview){var a=$skin.joinCssClass("GridPreviewImg",this.get_cssClass()),l="<img src='"+i.src+"' class='"+a+"'></img>";$common.showToolTip({x:t.clientX,offset:20},t.clientY-200,l),r=!0}r&&($common.addMouseLeaveHandler(i,this.doMouseOut,this),i.hasEvent=!0,this.get_grid().hasTips=!0)}}else"hover"==this._preview&&$common.hideToolTip()},doMouseOut:function(t){var e=t.target;delete e.hasEvent,$clearHandlers(e);var i=this.get_hoverImageUrl();e&&i&&(e.src=this.get_imageUrl()),"hover"==this._preview&&$common.hideToolTip()}},Sys.UI.Controls.ImageColumn.registerClass("Sys.UI.Controls.ImageColumn",Sys.UI.Controls.Column),_Z_199=function(t,e,i){_Z_199.initializeBase(this),this._rowIndex=t,this._value=e,this._imageIndex=i},_Z_199.prototype={get_rowIndex:function(){return this._rowIndex},get_value:function(){return this._value},get_imageIndex:function(){return this._imageIndex}},_Z_199.registerClass("_Z_199",Sys.EventArgs),Sys.UI.Controls.ImageListColumn=function(){Sys.UI.Controls.ImageListColumn.initializeBase(this),this._imageWidth=0,this._imageHeight=0,this._allowFilter=!1},Sys.UI.Controls.ImageListColumn.prototype={initialize:function(){Sys.UI.Controls.ImageListColumn.callBaseMethod(this,"initialize"),this._bindClick()},createFilter:function(){},getIsCommandColumn:function(){return!0},getHTML:function(t,e,i){if(!t)return"";var n=Array.isInstanceOfType(t)?t:t.split(","),o=this._dataHintField,s=[];if(o){var r=this._getDataController().doGetCellValue(i,o);s=Array.isInstanceOfType(r)?r:r.split(",")}for(var a="<div>",l=this._items,h=this._dataValueField,d=this._dataTextField,_=0,u=n.length;_<u;_++){var t=n[_],c=$craba.getItemTextByValue(l,h,d,t);c&&(a+=this._getImageHTML(c,s[_]))}return a+="</div>"},_getImageHTML:function(t,e){var i=this._imageWidth,n=i>0?' width="'+i+'"':null,o=this._imageHeight;return e=e?' title="'+e+'"':"",'<img src="'+t+'"'+n+(o>0?' height="'+o+'"':null)+e+" />"},get_items:function(){return this._items},set_items:function(t){this._items=t},get_hasItems:function(){var t=this.get_items();return t&&t.length>0},get_dataValueField:function(){return this._dataValueField},set_dataValueField:function(t){this._dataValueField=t},get_dataTextField:function(){return this._dataTextField},set_dataTextField:function(t){this._dataTextField=t},get_dataHintField:function(){return this._dataHintField},set_dataHintField:function(t){this._dataHintField=t},get_imageWidth:function(){return this._imageWidth},set_imageWidth:function(t){this._imageWidth=t},get_imageHeight:function(){return this._imageHeight},set_imageHeight:function(t){this._imageHeight=t},raiseClick:function(t,e){var i=this.get_events().getHandler("_click");if(i){var n=e.target;if("IMG"==n.tagName){var o=n.parentNode,s=Array.indexOf(o.childNodes,n),r=this.get_items()[s][this.get_dataValueField()];i(this,new _Z_199(t,r,s))}}}},Sys.UI.Controls.ImageListColumn.registerClass("Sys.UI.Controls.ImageListColumn",Sys.UI.Controls.TextColumn),_Z_77=function(){_Z_77.initializeBase(this),this._allowFilter=!1,this._readOnly=!0,this._layoutDirection=Sys.UI.Controls.LayoutDirection.horz},_Z_77.prototype={getIsCommandColumn:function(){return!0},_isRowAllowEditor:function(t){return!1},set_listItems:function(t){this._items=t},get_listItems:function(){return this._items},set_layoutDirection:function(t){this._layoutDirection=t},get_layoutDirection:function(){return this._layoutDirection},_rightClick:function(t){this.get_grid()._checkEventInTable(t)&&this.raiseClick(this._grid.get_selectedRowIndex(),t)}},_Z_77.registerClass("_Z_77",Sys.UI.Controls.Column),Sys.UI.Controls.ButtonColumn=function(){Sys.UI.Controls.ButtonColumn.initializeBase(this)},Sys.UI.Controls.ButtonColumn.prototype={getControlType:function(){return Sys.UI.Controls.ButtonEdit},add_buttonClick:function(t,e){return this.get_events().addHandler("buttonClick",t,e)},remove_buttonClick:function(t){this.get_events().removeHandler("buttonClick",t)},getIsCommandColumn:function(){return!1},raiseClick:function(t,e){var i=this.get_events().getHandler("buttonClick");i&&i(this)}},Sys.UI.Controls.ButtonColumn.registerClass("Sys.UI.Controls.ButtonColumn",_Z_77),Sys.UI.Controls.DynamicButtonColumn=function(){Sys.UI.Controls.DynamicButtonColumn.initializeBase(this)},Sys.UI.Controls.DynamicButtonColumn.prototype={get_readOnly:function(){return!0},_initCellHTML:function(t,e,i){return i||!0===this._displayNull?this._getCellHTML(t,e):"&nbsp;"},get_itemData:function(){return this.getCellText()},_getItems:function(){var t;if(this._items&&(t=this._items.split(",")),!t||0==t.length)return null;for(var e=[],i=0,n=t.length;i<n;i++){var o=t[i].split("="),s=o[0],r=o[1],a={};a[s]=r,e.push(a)}return e},getHTML:function(t,e,i,n){var o;if(null==e||""==e){if(!(o=this._getItems()))return""}else{if((e=e.toString()).search(/^\[.*\]$/gi)>-1)try{o=$crabaJSON.deserialize(e)}catch(c){}null==o&&(o=[{0:e}])}var s=this.get_layoutDirection()==Sys.UI.Controls.LayoutDirection.vert?"_vert":"_horz";"center"==this._textAlign?s+=" FlexCenter":"right"==this._textAlign&&(s+=" FlexRight");for(var r=new Sys.StringBuilder,a=0,l=o.length;a<l;a++){var h=o[a],d=s+" item"+a;for(var _ in h){var u=h[_];1==u.indexOf("icon-")?(d+=" "+u,r.append("<div _buttonValue='"+_+"' _buttonIndex='"+a+"' class='aicon "+d+"'></div>")):Object.isUndefinedOrNull(u)||("/t"==u.substring(0,2)?r.append("<span class='"+d+"'>"+u.substring(2)+"</span>"):"<a"==u.substring(0,2)?r.append(u):(r.append("<a onclick='return false' _buttonValue='"+_+"' _buttonIndex='"+a+"' class='"+d+"'"),n&&r.append(" style='color:"+n+"'"),r.append(">"+u+"</a>")))}}return s="GridDynamicButtonBody "+s,this._cssClass&&(s+=" "+this._cssClass),"<div class='"+s+"'>"+r.toString()+"</div>"},raiseClick:function(t,e){if(this._allEvents&&this._allEvents.buttonClick&&this.get_enabled()&&this._grid.get_enabled()&&e.button==Sys.UI.MouseButton.leftButton){var i=e.target;if(!$dom.hasClass(i,"GridBodyCell")&&!$dom.hasClass(i,"GridDynamicButtonBody")){for(;i&&!$dom.hasClass(i.parentNode,"GridDynamicButtonBody");)i=i.parentNode;if(i){var n=e.target;if(("A"!=n.tagName||n==i)&&!$dom.hasClass(n,"disabled")&&!$dom.hasClass(i,"disabled")&&$craba._checkFastClick(this)){var o=this._grid,s=i.parentNode.parentNode,t=o._getRowIndex(s.parentNode),r=i.getAttribute("_buttonIndex"),a=i.getAttribute("_buttonValue");if(null!=r){var l=i.innerText;!l&&$dom.hasClass(i,"btnIcon")&&(l="");var h=new _Z_149(t,r,a,l,e);this._allEvents.buttonClick(this,h)}}}}}},getCellText:function(t,e){var i=this.getCellValue(t);if(i){var n;try{n=$crabaJSON.deserialize(i)}catch(d){}n||(n=[{0:i}])}else n=this._getItems();if(!n)return"";for(var o=[],s=0,r=n.length;s<r;s++){var a=n[s];for(var l in a){var h=a[l];(h=$common.clearHTMLTag(h))&&("/t"==h.substring(0,2)&&(h=h.substring(2)),o.push(h))}}return o.join(",")}},Sys.UI.Controls.DynamicButtonColumn.registerClass("Sys.UI.Controls.DynamicButtonColumn",_Z_77),Sys.UI.Controls.IconColumn=function(){Sys.UI.Controls.IconColumn.initializeBase(this)},Sys.UI.Controls.IconColumn.prototype={get_readOnly:function(){return!0},_initCellHTML:function(t,e,i){return i||!0===this._displayNull?this._getCellHTML(t,e):"&nbsp;"},getHTML:function(t,e,i){var n="";this._grid.getRowEnabled(i)&&this.get_enabled()||(n=" disabled");var o="";this._cssClass&&(o+=" "+this._cssClass);var s;if(t){if(!(t.indexOf(",")>-1||t.indexOf("=")>-1))return"<div class='"+(o+=" "+t+n)+"' index='0'></div>";s=t.split(",")}else this._items&&(s=this._items.split(","));if(!s||0==s.length)return"";for(var r="<div class='CellIcons "+o+n+"'>",a=0,l=s.length;a<l;a++){var h=s[a].split("="),d=h[1],_=h[0];(d+=n).indexOf("disabled")>-1&&(_=""),r+="<div class='"+(d+=" index"+a)+"' title='"+_+"' index='"+a+"'></div>"}return r+="</div>"},raiseClick:function(t,e){if(e.button==Sys.UI.MouseButton.leftButton&&this.get_enabled()&&this._grid.get_enabled()){var i=e.target,n=i.getAttribute("index");if(n&&!$dom.hasClass(i,"disabled")){var o=$common.getFirstParentByTagName(i,"tr"),s=this._grid;if(o&&(t=s._getRowIndex(o)),!(t<0)){var r=this._allEvents;if(r){var a=r.click||r.buttonClick;if(a){var l=i.title||i["data-title"],h=parseInt(n),d=new _Z_149(t,h,l,l,e);Object.copyTo({buttonIndex:h,title:l,rowIndex:t},d),a(this,d)}}}}}}},Sys.UI.Controls.IconColumn.registerClass("Sys.UI.Controls.IconColumn",_Z_77),Sys.UI.Controls.CheckBoxListColumn=function(){Sys.UI.Controls.CheckBoxListColumn.initializeBase(this),this._readOnly=!1,this._dataValueField="id",this._dataTextField="text",this._showHeaderCheckBox=$settings.GridMultiSelectColumnDefaultShowHeaderCheckBox},Sys.UI.Controls.CheckBoxListColumn.prototype={initialize:function(){Sys.UI.Controls.CheckBoxListColumn.callBaseMethod(this,"initialize"),this._changeHandler=this._internalGetChangeHandler(),this._initList()},_initList:function(){if(this._items&&!this._listItems){this._listItems=[];for(var t=this._items.split(","),e=0,i=t.length;e<i;e++){var n=t[e].split("="),o={};o[this._dataValueField]=n[0],o[this._dataTextField]=n[1],this._listItems.push(o)}}},setEditable:function(t,e){if(this._lastCell==e&&this._hideEditor(),e){var i=e.firstChild;i&&i.tagName&&$common.setDomEnabled(i,!1)}},getCellText:function(t,e){var i=Sys.UI.Controls.CheckBoxListColumn.callBaseMethod(this,"getCellText",arguments);return i&&0!=i.length?this.getRowText(t):""},get_showHeaderCheckBox:function(){return this._showHeaderCheckBox},set_showHeaderCheckBox:function(t){this._showHeaderCheckBox=t},doInitHeaderElements:function(t){this.get_readOnly()?Sys.UI.Controls.CheckBoxListColumn.callBaseMethod(this,"doInitHeaderElements",[t]):$_multiColumn._createHeaderCheckBox(this,t)},_checkBoxClick:function(t){var e=$_multiColumn._getCheckBoxElement(this);if(e){e._indeterminate?(e.checked=!0,e._indeterminate=!1,$common._changeCheckedHalfStyle(e.parentNode,!0,!1)):$common._changeCheckedHalfStyle(e.parentNode,e.checked,!1);var i=e.checked,n=this._elements.checkBoxElement;n!=e&&(n.checked=i,$common._changeCheckedHalfStyle(n.parentNode,i,!1)),this.setChecked(i)}},_refreshCaption:function(t){$_multiColumn._refreshCaption(this,t)},getIsCommandColumn:function(){return!0},getHTML:function(t,e,i){if(this._grid.isEmptyRow(i))return"";var n=this._getItems(i);if(!n||0==n.length)return"";var o="",s="",r=this._grid.getRowEnabled(i)&&this.get_enabled()&&!this.get_readOnly();if(this._dataEnabledField){var a=this._getDataController().doGetCellValue(i,this._dataEnabledField);Object.isUndefinedOrNull(a)||(r=r&&a)}r||(o=" disabled",s+=' disabled="true"');var l=this.get_layoutDirection()==Sys.UI.Controls.LayoutDirection.vert?"vert":"horz";this._cssClass&&(l+=" "+this._cssClass);for(var h="<div class='CellChk "+l+o+"'>",d=0,_=n.length;d<_;d++){var u=n[d],c=u[this._dataValueField],e=u[this._dataTextField],g=[this._grid.get_id(),this.get_name(),i,c].join("_"),f="ChkBoxStyle"+o,m=s;this._checkValue(c,t)&&(f+=" checked",m+=" checked"),h+="<div class='"+f+"'><input type='checkbox' _id='"+c+"' id='"+g+"' "+m+"/><label for='"+g+"'>"+e+"</label></div>"}return h+="</div>"},_checkValue:function(t,e){if(!e)return!1;return(","+e+",").indexOf(","+t+",")>-1},raiseClick:function(t,e){if(this.get_enabled()&&!this.get_readOnly()&&this._grid.get_enabled()){var i=this;asyncCall(function(){i._click(t,e)})}},_click:function(t,e){if(!this.get_isDisposed()){var i=e.target;"LABEL"==i.tagName&&(i=$common.getPreviousSibling(i));var n=null;if("INPUT"==i.tagName&&(n=i),n&&$dom.getEnabled(n)){var o=$common.getFirstParentByTagName(n,"td"),t=o.parentNode.getAttribute("_rowIndex");t=parseInt(t);var s=this.getCellValue(t),r=this._getRealValue(t,n);this._setCellValue(t,r),$common._changeCheckedStyle(n.parentNode,n.checked),this._raiseChangeByRowIndex(o,t,r,s)}}},_getRealValue:function(t,e){for(var i=$common.getFirstParentByClassName(e,"CellChk").childNodes,n="",o=0,s=i.length;o<s;o++){var r=i[o].firstChild;r.checked&&(n.length>0&&(n+=","),n+=r.getAttribute("_id"))}return n},_getItems:function(t){var e=null;return this._listItems?e=this._listItems:this._dataSourceField&&(e=this._getDataController().doGetCellValue(t,this._dataSourceField)),e},getRowText:function(t){var e=this.getRowValue(t),i=this._getItems(t);if(!i)return"";for(var n=[],o=0,s=i.length;o<s;o++){var r=i[o],a=r[this._dataValueField],l=r[this._dataTextField];this._checkValue(a,e)&&n.push(l)}return n.join(",")},getRowValue:function(t){return this._getDataController().doGetCellValue(t,this._dataField)},setRowChecked:function(t,e){var i=this._getItems(t);if(i){var n="";if(e)for(var o=0,s=i.length;o<s;o++){var r=i[o];o>0&&(n+=","),n+=r[this._dataValueField]}this._grid.modifyCellValue(t,this,n)}},setChecked:function(t){for(var e=this._grid.get_recordCount(),i=0;i<e;i++)this.setRowChecked(i,t)},get_dataEnabledField:function(){return this._dataEnabledField},set_dataEnabledField:function(t){this._dataEnabledField=t},set_dataValueField:function(t){this._dataValueField=t},set_dataTextField:function(t){this._dataTextField=t},set_dataSourceField:function(t){this._dataSourceField=t},get_dataValueField:function(){return this._dataValueField},get_dataTextField:function(){return this._dataTextField},get_dataSourceField:function(){return this._dataSourceField}},Sys.UI.Controls.CheckBoxListColumn.registerClass("Sys.UI.Controls.CheckBoxListColumn",_Z_77),Sys.UI.Controls.RowDeleteColumn=function(){Sys.UI.Controls.RowDeleteColumn.initializeBase(this),this._allowFilter=!1,this._displayNull=!0,this._readOnly=!0,this._normalHtml=$common.getGlyphDivHTML("delShape",0)},Sys.UI.Controls.RowDeleteColumn.prototype={set_readOnly:function(t){this.get_isInitialized()&&this._refreshRowHTML()},set_enabled:function(t){Sys.UI.Controls.RowDeleteColumn.callBaseMethod(this,"set_enabled",[t]),this.get_isInitialized()&&this._refreshRowHTML()},getIsCommandColumn:function(){return!0},get_allowSort:function(){return!1},_noClick:function(t){return!this._displayNull&&this._grid.isEmptyRow(t)||this._grid.get_readOnly()},getHTML:function(t,e,i){return this._noClick(i)?"":this._normalHtml},doInit:function(t,e){var i=this._grid,n=this.get_index(),o=i._getRowCell(t,n);o&&Sys.UI.Controls.RowDeleteColumn.callBaseMethod(this,"initCellHTML",[e,o])},raiseClick:function(t,e){if(e.button==Sys.UI.MouseButton.leftButton&&!this._noClick(t)&&$dom.hasClass(e.target,"delShape")){var i=new _Z_152,n=this._allEvents;n&&n.click&&n.click(this,i),i.get_cancel()||this._grid._internalCheckDeleteRow(t)}}},Sys.UI.Controls.RowDeleteColumn.registerClass("Sys.UI.Controls.RowDeleteColumn",Sys.UI.Controls.Column),Sys.UI.Controls.ProgressColumn=function(){Sys.UI.Controls.ProgressColumn.initializeBase(this),this._maxValue=100,this._allowFilter=!1},Sys.UI.Controls.ProgressColumn.prototype={get_readOnly:function(){return!0},set_unitText:function(t){this._unitText=t},get_unitText:function(){return this._unitText},set_maxValue:function(t){this._maxValue=t},get_maxValue:function(){return this._maxValue},set_showText:function(t){this._showText=t},get_showText:function(){return this._showText},_setEditorActive:function(){},_getPercentValue:function(t,e){t=Math.roundTo(100*t/this._maxValue,2);return e?Math.min(100,t):t},_initCellHTML:function(t,e,i){return i||!0===this._displayNull?this._getCellHTML(t,e):"&nbsp;"},getHTML:function(t,e,i){if(this._isEmptyCell(t,i))return"";var n="ProgressBar radius14";this._cssClass&&(n+=" "+this._cssClass);var o="ProgressValue transition2";t>=this._maxValue&&(o+=" ok");var s=(t=this._getPercentValue(e,!0))+"%",r=this._getPercentValue(e)+"%";this._showText&&(r=String.format("{0}{1}({2})",e,this._unitText,r));var a='<div class="'+n+'">';return a+='<div class="'+o+'" style="width:'+s+';"></div>',a+='<span class="'+(t>=this._maxValue/2?"ProgressHighText":"ProgressText")+'">'+r+"</span></div>"}},Sys.UI.Controls.ProgressColumn.registerClass("Sys.UI.Controls.ProgressColumn",Sys.UI.Controls.Column),Type.registerNamespace("Craba.Web.Script"),Craba.Web.Script.DataService=function(t){Craba.Web.Script.DataService.initializeBase(this,[t])},Craba.Web.Script.DataService.prototype={GetPagerData:function(t,e,i,n,o,s,r,a){var l=this._getData(t,e,i,n,o,s);return this._invokeBindData("GetPagerData",l,r,a)},GetPartialPagerData:function(t,e,i,n,o,s,r,a){var l=this._getData(t,e,i,n,o,s);return this._invokeBindData("GetPartialPagerData",l,r,a)},SetQueryState:function(t,e,i,n,o,s,r,a,l){var h={pagerId:t,state:e,queryParams:i,getData:n,first:o,count:s,filter:null};return this._invokeBindData("SetQueryState",h,a,l)},GetPagerSummary:function(t,e,i){return this._invokeBindData("GetPagerSummary",{pagerId:t},e,i)},GetRealPagerSize:function(t,e,i){return this._invokeBindData("GetRealPagerSize",{pagerId:t},e,i)},GetPagerPreloadItems:function(t,e,i,n){return this._invokeBindData("GetPagerPreloadItems",{pagerId:t,fields:e},i,n)},SaveGridConfig:function(t,e,i,n){return this._invokeBindData("SaveGridConfig",{gridId:t,data:e},i,n)}},Craba.Web.Script.DataService.registerClass("Craba.Web.Script.DataService",_Z_1),Craba.Web.Script.DataService.create=function(t,e){var i=new Craba.Web.Script.DataService(e);return i.set_enableShowWaiting(!1),i.set_form(t),i},Sys.UI.Controls.Pager=function(t){Sys.UI.Controls.Pager.initializeBase(this,[t]),this._showItemCount=!0,this._autoFocus=!0,this._showGotoButton=$settings.GridPagerDefaultShowGotoButton,this._showRefreshButton=$settings.GridPagerDefaultShowRefreshButton,this._pageItemCountData={}},Sys.UI.Controls.Pager.prototype={initialize:function(){Sys.UI.Controls.Pager.callBaseMethod(this,"initialize"),this._getTargetControl()&&this._getTargetControl().get_bindPagerDataSource()&&this.set_hasDataSource(!0),this._service=Craba.Web.Script.DataService.create(this.get_form(),this),this._selectedRowIndex=-1,this._hasDataSource&&this.get_form().addRemoveSessionControls(this)},dispose:function(t){this._service&&(this._service._pager=null,this._service=null),this._refreshButton&&$clearHandlers(this._refreshButton),this._scrollBar&&(this._scrollBar.dispose(),this._scrollBar=null),this._summary=null,this._target=null,this._gotoNumberEdit&&(this._gotoNumberEdit.dispose(),this._gotoNumberEdit=null),this._dataSource=null,Sys.UI.Controls.Pager.callBaseMethod(this,"dispose")},doFormInit:function(){var t=this._spring=$common.createClassDiv("Flex1");this.get_element().appendChild(t);var e=this._getTargetControl();e||(this._hasDataSource=!0);var i=e&&e.get_lazyPageItem&&e.get_lazyPageItem()&&this._hasDataSource,n="PagerContent";i&&(n+=" LazyPager");var o=this._contentBlock=$common.createClassDiv(n);this.get_element().appendChild(o),this._createRefreshButton(o),this._createSummary(o),this._createPageSizeEditButton(o),e&&e.get_dropDownNumericButton()?this._initDropPager(o,i):this._initPager(o,i),this._formInit=!0,this._initNavButtons(),i?this.refreshRealPageSize():this._initSummary();var s=this.get_follow(),r=s?this.get_form()[s]:null;r&&(this.followControl=r,r.set_followPager(this)),this._dataChanged(),this._initInnerBlock()},doFormLoaded:function(){this.bindScrollBar()},bindScrollBar:function(){if(!this._scrollBar&&Sys.Browser.isIE){var t=this.get_element();t.scrollWidth-t.offsetWidth<2||(this._scrollBar=Sys.ScrollBar.create(t,t.parentNode),this._scrollBar.set_xbarOnly(!0),this._scrollBar.set_xbarClass("PagerXBar"),this._scrollBar._showBar())}},_initDropPager:function(t,e){this._homePageButton=this._createClassBtn(t,"homePage",this._homePage),this._prevPageButton=this._createClassBtn(t,"prevPage",this._prevPage),this._createPageDrpEdit(t),e||this._createNumericButtons(),this._nextPageButton=this._createClassBtn(t,"nextPage",this._nextPage),this._lastPageButton=this._createClassBtn(t,"lastPage",this._lastPage)},_initPager:function(t,e){this._homePageButton=this._createClassBtn(t,"homePage",this._homePage),this._prevPageButton=this._createClassBtn(t,"prevPage",this._prevPage);var i=this._pagesCell=$common.createClassDiv("PagerButtons");t.appendChild(i),$common.addClickHandler(i,this._onPageButtonClick,this),e||this._createNumericButtons(),this._nextPageButton=this._createClassBtn(t,"nextPage",this._nextPage),this._lastPageButton=this._createClassBtn(t,"lastPage",this._lastPage),this._createGotoEditButton(t)},_createRefreshButton:function(t){this.get_showRefreshButton()&&this.get_target()&&this._hasDataSource&&(this._refreshButton=this._createClassBtn(t,"refresh",this._refreshPage))},_initInnerBlock:function(){var t=this._getTargetControl(),e=t&&t.get_pagerInnerBlockID?t.get_pagerInnerBlockID():"";if(e){var i=this.get_form()[e];if(i){var n=i.get_element();this.get_element().insertBefore(n,this._spring),n.removeAttribute("style")}else $common.showError("Grid找不到PagerInnerBockID="+e+"的控件.")}},get_height:function(){return this.get_element().offsetHeight},refreshPageSize:function(){var t=this._getTargetControl(),e=t.getRowHeight(),i=t._body.clientHeight,n=this.get_pageSize(),o=parseInt(i/e);if(o!=n){this.set_pageSize(o);var s=0,r=t.get_selectedRowIndex(),a=this.get_pageIndex()*n+1+r;s=parseInt(a/o),this._selectedRowIndex=a-s*o-1,this.gotoPage(s)}},get_isRefresh:function(){return this._selectedRowIndex>-1},set_selectedRowIndex:function(t){this._selectedRowIndex=t},get_follow:function(){return this._follow},set_follow:function(t){this._follow=t},get_service:function(){return this._service},get_hasDataSource:function(){return this._hasDataSource},set_hasDataSource:function(t){this._hasDataSource=t},_getTargetControl:function(){var t=this.get_target();return t?this.get_form()[t]:null},_dataChanged:function(){var t=this.get_itemList();if(t){var e=this._getTargetControl();e&&(e._isRefresh=!0,e.refresh(t,!1),this.savePageItemCount())}},_doGotoPageButonClick:function(t){var e=this._gotoNumberEdit.get_value();null!=e?(e!=this.get_pageIndex()+1&&(e<1||e>this.get_pageCount()?$common.showError("输入的页数超出了范围!"):this._gotoPageOnClick(e-1)),this._gotoNumberEdit.focus()):$common.showHint("请输入要跳转的页码",this._gotoNumberEdit)},_doGotoEditEnterPress:function(t){this._doGotoPageButonClick(t)},_checkSetGotoEditButtonVisible:function(){if(this._gotoNumberEdit){var t=this.get_pageCount(),e=t>this.get_numericButtonCount()||this.get_showGotoButton();e=e&&!this._showAll&&t>1,$dom.setVisible(this._gotoBlock,e,"flex")}},_createGotoEditButton:function(t){var e=this.findForm();if(e){var i=this._gotoBlock=$common.createClassDiv("GotoBlock");t.appendChild(i);s=$common.createSpan();s.innerText=$settings.GotoPageButtonText||"跳转",i.appendChild(s);var n=$common.createInput();n.className="Edit GotoEdit",i.appendChild(n);var o=$create(Sys.UI.Controls.NumberEdit,{showCalculator:!1},n,null,e,!0);o.set_tabOnEnter(!1),o.set_numberType(Sys.UI.Controls.NumberType.positiveInt),o.add_enterPress($createDelegate(this,this._doGotoPageButonClick)),this._gotoNumberEdit=o;var s;(s=$common.createSpan()).innerText="页",i.appendChild(s),this._checkSetGotoEditButtonVisible()}},get_showItemCount:function(t){return this._showItemCount},set_showItemCount:function(t){return this._showItemCount=t},get_showGotoButton:function(){return this._showGotoButton},set_showGotoButton:function(t){this._showGotoButton=t},get_showRefreshButton:function(){return this._showRefreshButton},set_showRefreshButton:function(t){this._showRefreshButton=t},get_showAll:function(){return this._showAll},set_showAll:function(t,e){this._showAll=t,this.get_isInitialized()&&!e&&this.refresh()},get_summaryLabel:function(){return this._summaryLabel},set_summaryLabel:function(t){this._summaryLabel=t,this.get_isInitialized()&&this._initSummary()},_initSummary:function(){if(this._summary){var t=this.get_showItemCount()?String.format(Sys.Res.pagerTotal,this.get_itemCount()):"",e=this.get_summaryLabel();e=e?e+" ":"";this._summary.innerText=e+""+t}},_initNavButtons:function(){if(this._formInit){var t=this.get_pageIndex(),e=this.get_pageCount(),i=this.get_itemCount(),n=t>0,o=t<e-1,s=this._hasDataSource,r=e>0&&s;if($dom.setEnabled(this._prevPageButton,n),$dom.setEnabled(this._nextPageButton,o),this._pageSizeEdit){var a=i>1&&!this._showAll;this._pageSizeEdit.set_visible(r&&a)}r=e>1&&s,this._pageDrpEdit&&this._pageDrpEdit.set_visible(r),this._pagesCell&&$dom.setVisible(this._pagesCell,r);var l=!this._showAll&&e>1&&s;$dom.setVisible(this._prevPageButton,l),$dom.setVisible(this._nextPageButton,l),this._homePageButton&&($dom.setVisible(this._homePageButton,l),$dom.setVisible(this._lastPageButton,l),$dom.setEnabled(this._homePageButton,n),$dom.setEnabled(this._lastPageButton,o))}},get_hasSummary:function(){return this._hasSummary},set_hasSummary:function(t){this._hasSummary=t},get_autoFocus:function(){return this._autoFocus},set_autoFocus:function(t){this._autoFocus=t},get_itemList:function(){return this._itemList},set_itemList:function(t){this._itemList=t},incItemCount:function(){return this.set_itemCount(this._itemCount+1),this._initSummary(),this._itemCount},decItemCount:function(){if(0!=this._itemCount)return this._itemCount--,this._initSummary(),0==this._itemCount&&this._clearNumericButtons(),this._refreshSummary(),this._itemCount},get_pageCount:function(){return this._hasDataSource?this.get_showAll()?this._itemCount>0?1:0:Math.ceil(this._itemCount/this._pageSize):1},get_pageItemIndex:function(){return this.get_pageIndex()*this.get_pageSize()},get_dynamicPageItemIndex:function(){var t=0,e=this._pageItemCountData;for(var i in e){parseInt(i.replace("index_",""))>=this.get_pageIndex()||(t+=e[i])}return t},savePageItemCount:function(){var t=this._getTargetControl();if(t._isTree){var e=t.get_dataSource();if(e){this._pageItemCountData["index_"+this.get_pageIndex()]=e.length}}},get_isFirstPage:function(){return 0==this.get_pageIndex()},get_isLastPage:function(){var t=this.get_pageCount();return 0==t||this.get_pageIndex()==t-1},firstPage:function(t){this.get_isFirstPage()||this.gotoPage(0,t)},lastPage:function(t){if(this.get_isLastPage())t&&t();else{var e=this.get_pageCount();this.gotoPage(e>0?e-1:0,t)}},prevPage:function(t){this.get_isFirstPage()||this.gotoPage(this.get_pageIndex()-1,t)},nextPage:function(t){this.get_isLastPage()||this.gotoPage(this.get_pageIndex()+1,t)},gotoPage:function(t,e){this._loadPage(t,null,null,this._savedFilter,null,e)},refresh:function(t,e){this._savedFilter=null,t=this._beforeRefresh(t),this._doRefresh(t,null,null,null,e)},filter:function(t,e){this._hasSummaryLoaded=!1,this._doPagerBeforeRefresh(),this._savedFilter=t,this._doRefresh(null,null,t,null,e)},refreshFilter:function(t,e){var i=this.getLastFilter();t=this._beforeRefresh(t),this._doRefresh(t,null,i,null,e)},getLastFilter:function(){var t=this._lastFilter,e=this._getTargetControl();return e&&e._filterBar&&(t=this._lastFilter=e._filterBar.getFilter(!0)),t},getLastSort:function(){return this._lastOrders||null},refreshPage:function(t,e,i,n){Object.isUndefinedOrNull(e)&&(e=this.get_pageIndex()),this._savedFilter=null,t=this._beforeRefresh(t),this._loadPage(e,t,null,n,null,i)},refreshPageRowIndex:function(t,e,i,n){var o=this._getTargetControl();if(o){if(o.get_isDisposed())return;this.set_selectedRowIndex(Object.isUndefinedOrNull(i)?o.get_selectedRowIndex():i)}this.refreshPage(t,e,n)},refreshPageWithLastFilter:function(t,e,i){Object.isUndefinedOrNull(e)&&(e=this.get_pageIndex()),t=this._beforeRefresh(t);var n=this._getTargetControl(),o=n?n._lastFilter:null,s=null;o&&(s={items:[o],append:!1}),this._loadPage(e,t,null,s,null,i)},reloadPage:function(t,e){Object.isUndefinedOrNull(t)&&(t=this.get_pageIndex()),this._doPagerBeforeRefresh(),this.gotoPage(t,e)},partialRefresh:function(t,e){var i=this._getTargetControl();if(i){var n=i.get_primaryKey();$common.checkTips(0==t.length,"部分刷新items参数长度必须大于0"),$common.checkTips(!n,"Grid必须配置PrimaryKey属性"),this._savedPartRefreash(e);var o=this.get_pageIndex(),s={};s[n]=t,this._loadPage(o,s,null,null,null,this.__partSuccessHandler,!0)}},_savedPartRefreash:function(t){this.__onPartSuccess=t,this.__initPartHandler||(this.__partSuccessHandler=$createDelegate(this,this._loadedPartSuccess),this.__initPartHandler=!0)},_loadedPartSuccess:function(t){if(t){var e,i=-1,n=this._getTargetControl(),o=n.get_primaryKey(),s=!1,r=t.fields;if(t.length==undefined){e=t.rows;for(var a=0,l=r.length;a<l;a++)if(r[a]==o){i=a;break}if(-1==i)return $common.showError("请确认返回的数据集字段有对应的primaryKey值");s=!0}else e=t,i=o;if(e&&0!=e.length){var h=!1,d=-1,_=n._dataSource;n._isBatch=!0;for(var u=0,c=e.length;u<c;u++){var g=e[u];if(-1!=(d=this._getKeyRowIndex(o,g[i],_,d))){h=!0;var f={};if(s)for(var m=0,C=r.length;m<C;m++)f[r[m]]=g[m];else f=g;n.modifyRowData(d,f),this.__onPartSuccess&&this.__onPartSuccess(f,d)}else d=-1}delete n._isBatch,h&&n._endBatch(null,"batchModify")}}},_getKeyRowIndex:function(t,e,i,n){for(var o=n+1,s=i.length;o<s;o++){if((r=i[o])[t]==e)return o}for(o=0;o<=n;o++){var r=i[o];if(r[t]==e)return o}return-1},_doRefresh:function(t,e,i,n,o){this._loadPage(0,t,e,i,n,o)},_internalRefreshSort:function(t){this._doPagerBeforeRefresh(),this._lastOrders=t,this._doRefresh(null,t,null,null,null)},_internalRefreshFilter:function(t,e){this._hasSummaryLoaded=!1,this._doPagerBeforeRefresh(),this._savedFilter=t,this._lastFilter=t,this._doRefresh(null,null,t,null,e)},_internalRefreshState:function(t){this._hasSummaryLoaded=!1,this._doRefresh(null,null,null,t,null)},add_pageIndexChanged:function(t){this.get_events().addHandler("pageIndexChanged",t)},remove_pageIndexChanged:function(t){this.get_events().removeHandler("pageIndexChanged",t)},_doPageIndexChanged:function(t){this._pageIndex=t,this._initSummary(),this._initNavButtons(),this._initNumericButtons();var e=this.get_events().getHandler("pageIndexChanged");e&&e(this)},_getDataItemCount:function(t){return t&&t.dataType&&1==t.dataType?t.rows.length:t.length},get_isLoading:function(){return this._loading},set_serviceOwner:function(t){this._serviceOwner=t},_loadPage:function(t,e,i,n,o,s,r){if(!this._loading&&(this._hasDataSource||this._showAll)){var a=this.findForm();if(!this.get_target()||a&&!a.get_isDisposed()){var l=this._getTargetControl();if(l)if(l._internalDoPagerPageBeforeChanged(t)){this._beginLoading(l),void 0===e&&(e=null),void 0===i&&(i=null),void 0===n&&(n=null);var h=this.get_id(),d=this.get_showAll()?-1:l.get_pageSize(!0),_=t*d;this._savedRefreshDatas(t,e,i,n,o,d,s,r);var u=this._dataSource;if(!u){var c=this._initService();return r?void c.GetPartialPagerData(h,e,i,n,_,d,this.__successHandler,this.__faildHandler):o?void c.SetQueryState(h,o,e,!0,_,d,null,this.__successHandler,this.__faildHandler):void c.GetPagerData(h,e,i,n,_,d,this.__successHandler,this.__faildHandler)}for(var g=u.length,f=Math.min(d,g-_),m=[],C=0,v=_;C<f;C++,v++)m[C]=u[v];var p={};p.itemCount=g,p.itemList=m,this.__successHandler(p)}else this._loading=!1;else this._doPageIndexChanged(t)}}},_initService:function(){var t=this._service,e=this.get_form().get_pageTimeout();return e>0&&0==t.get_timeout()&&t.set_timeout(e),this._serviceOwner&&t.set_owner(this._serviceOwner),t},_savedRefreshDatas:function(t,e,i,n,o,s,r,a){this._pageIndex=t,this.__params=e,this.__orders=i,this.__filter=n,this.__state=o,this.__onSuccess=r,this.__partial=a,this.__count=s,this.__initHandler||(this.__successHandler=$createDelegate(this,this._dataSuccessd),this.__faildHandler=$createDelegate(this,this._dataFailed),this.__reloadHandler=$createDelegate(this,this._reloadPage),this.__initHandler=!0)},_dataSuccessd:function(t){if(!this.get_isDisposed()){var e=this._pageIndex,i=this.__onSuccess,n=this.__partial,o=this.__count;if(n)return i(t.itemList),void this.endLoading();var s=i?function(t){this._dataLoaded(t),i()}:this._dataLoaded;if(0==this._getDataItemCount(t.itemList)&&e>0){for(var r=e;e*o>=t.itemCount&&e>0;e--);if(this.endLoading(),e<1||r==e){if(this._pageLoaded)return void $common.alert("服务端数据源已发生改变,请刷新或重新查询!");this._pageLoaded=!0}this._pageIndex=e,asyncCall(this.__reloadHandler)}else this._pageLoaded=!1,$createDelegate(this,s)(t)}},_dataLoaded:function(t){if(this.get_isDisposed())this.endLoading();else{var e=null;try{this.set_itemCount(t.itemCount),this.set_itemList(t.itemList),t.pageIndex&&!isNaN(parseInt(t.pageIndex))&&this.get_pageCount()>t.pageIndex&&(this._pageIndex=t.pageIndex),delete t.itemList;var i=this._getTargetControl();if(i){var n=t.columnExpands;n&&(i._cancelRowChangeHandler=!0,i.refresh(null,!1),i._cancelRowChangeHandler=!1,i.set_columnExpands(n),delete t.columnExpands);var o=t.cellMergeItems;o&&(i.set_cellMergeItems(o),delete t.cellMergeItems),i.set_sizeInfoListCache&&t.sizeInfoList&&(i.set_sizeInfoListCache(t.sizeInfoList),delete t.sizeInfoList)}this._initSummary(),this._initNavButtons(),this._beforeRefreshGrid(),this._dataChanged(),this._checkSetGotoEditButtonVisible(),this._initNumericButtons(),this._checkSelectedRowIndex(),this._refreshSummary(),!this.__filter&&!this.__orders&&this.get_autoFocus()&&i&&i.focus&&i==i.get_form().get_focusedControl()&&(i.canFocus&&!i.canFocus()||i.focus(!0))}catch(s){e=s}if(this.endLoading(),$common.setTestState("pagerDataLoaded"),e)throw e}},_refreshSummary:function(){this._hasSummary&&!this._hasSummaryLoaded&&this.refreshSummary()},_reloadPage:function(){this._doPagerBeforeRefresh(),this._loadPage(this._pageIndex,this.__params,this.__orders,this.__filter,this.__state,this.__onSuccess)},get_preloadItemFields:function(){return this._preloadItemFields},set_preloadItemFields:function(t){this._preloadItemFields=t},_internalGetPreloadItems:function(){var t=this.get_preloadItemFields();if(!t)throw Error.invalidOperation("Pager 没有调用 set_preloadItemFields 指定预加载字段表");var e=this.get_id();window.status="正在加载数据 ...";var i=this._service.GetPagerPreloadItems(e,t,!1);return window.status="",i},get_dataSource:function(){return this._dataSource},dataBind:function(t){void 0!==t&&(this._dataSource=t,t?this.refresh():this.init(0))},deleteRecord:function(t){var e=this._dataSource;e&&Array.removeAt(e,t)},_beforeRefreshGrid:function(){var t=this._getTargetControl();!t||this._selectedRowIndex<0||(t.oldDefaultShowEditor=t.get_defaultShowEditor(),t.set_defaultShowEditor(!1))},_checkSelectedRowIndex:function(){var t=this._getTargetControl();if(t&&this._selectedRowIndex>-1){this._selectedRowIndex>=t.get_rowCount()&&(this._selectedRowIndex=0);var e=this,i=this.get_autoFocus();this.set_autoFocus(!1),t.set_defaultShowEditor(t.oldDefaultShowEditor),asyncCall(function(){t.set_selectedRowIndex(e._selectedRowIndex),e._selectedRowIndex=-1,e.set_autoFocus(i)})}},init:function(t){if(!(t>=0))throw Error.argumentOutOfRange("itemCount",t);this.set_itemCount(t),this._initSummary(),this._initNavButtons(),this._checkSetGotoEditButtonVisible(),this._initNumericButtons()},refreshSummary:function(){var t=this._getTargetControl();if(!t._hasSummaryColumn||t._needSummary){var e=this.get_id();this._hasSummaryLoaded=!0,this._service.GetPagerSummary(e,$createDelegate(this,this._summaryLoaded),$createDelegate(this,this._summaryFailed))}},_summaryLoaded:function(t){var e=this._getTargetControl();e&&e.set_summaryItems(t)},_summaryFailed:function(t){var e=this._getTargetControl();if(e){var i=e.get_form(),n="<p>取合计失败:"+t.get_message()+"</p><p style='display:none'>"+this.get_id()+"</p>";$app.showError(Sys.ErrorType.other,n,!1,i)}},refreshRealPageSize:function(){this._summary.innerText="页数正在加载,请稍等……";var t=this.get_id();this._clearNumericButtons(),this._service.GetRealPagerSize(t,$createDelegate(this,this._pageSizeLoaded),$createDelegate(this,this._pageSizeFailed))},_pageSizeLoaded:function(t){this._getTargetControl()&&(this._clearLazyPager(),this.set_itemCount(t),this._initSummary(),this._createNumericButtons(),this._initNavButtons(),this.bindScrollBar())},_pageSizeFailed:function(t){this._getTargetControl()&&(this._clearLazyPager(),$common.alert("取真实行数失败:"+t.get_message()))},_clearLazyPager:function(){this._contentBlock&&$dom.removeCssClass(this._contentBlock,"LazyPager")}},Sys.UI.Controls.Pager.registerClass("Sys.UI.Controls.Pager",_Z_80),_Z_101=function(){_Z_101.initializeBase(this),this._mouseDownHandler=$createDelegate(this,this._doMouseDown),this._mouseMoveHandler=$createDelegate(this,this._drag),this._mouseUpHandler=$createDelegate(this,this._doMouseUp),this._keyPressHandler=$createDelegate(this,this._doKeyPress),this._mouseDblClickHandler=$createDelegate(this,this._doDblClick),this._draging=!1},_Z_101.prototype={initialize:function(){_Z_101.callBaseMethod(this,"initialize");var t=this._sizeGripper=this._createDiv("ColResizer");document.body.appendChild(t),$common.addMouseDownHandler(t,this._mouseDownHandler),$common.addDblClickHandler(t,this._mouseDblClickHandler),$common.addContextMenuHandler(t,this._doResizerContext,this)},_createDiv:function(t){var e=$common.createClassDiv(t);return Sys.Browser.isIE&&(e.unselectable="on"),e},_getZIndex:function(t){var e=Sys.Application.getLastPopup();if(e&&e.popupAt)return e.get_zIndex()+t;var i=this._column._grid.get_rootForm(!0);return i?i.get_zIndex()+t:this._column.get_form().get_zIndex()+t},_doResizerContext:function(t){t.cancel()},dispose:function(){var t=this._sizeGripper;t&&($clearHandlers(t),$removeNode(t),this._sizeGripper=null),this._sizeSplitter&&($removeNode(this._sizeSplitter),this._sizeSplitter=null),this._mouseDownHandler=null,this._column=null,_Z_101.callBaseMethod(this,"dispose")},initSizeGripper:function(t){this._column=t;var e=this._sizeGripper;e&&(e.style.zIndex=this._getZIndex(2),this._initSizeGripperPosition(e))},_hideSizeGripper:function(){var t=this._sizeGripper;t&&$common.setDisplay(t,!1)},_initSizeGripperPosition:function(t){var e=this._column,i=e.get_frozenHeaderElement(),n=i||e.get_headerElement(),o=$dom.getBounds(n),s=o.x+o.width-6,r=o.y-1,a=o.height+2,l=e.get_grid().get_bounds();s<l.x+l.width?($common.setPosition(t,s,r,12,a),$common.setDisplay(t,!0)):$common.setDisplay(t,!1),this.clearTimer(),this._showTimer=setTimeout(function(){t&&$common.setDisplay(t,!1)},1e3)},_doDblClick:function(t){this._columnAutoWidth(),t.cancel()},clearTimer:function(){this._showTimer&&(clearTimeout(this._showTimer),this._showTimer=null)},_doMouseDown:function(t){this.clearTimer(),this._gripperStartLocation=$common.getLocation(this._sizeGripper),this._mouseStartLocation={x:t.clientX,y:t.clientY},t.preventDefault(),this._startDrag()},_startDrag:function(){this._draging=!0;if(t=this._sizeSplitter)this._initSizeSplitterPosition(t),this._setSizeSplitterVisible(!0);else{var t=this._sizeSplitter=this._createDiv("ColSplitter");this._initSizeSplitterPosition(t),document.body.appendChild(t)}t.style.zIndex=this._getZIndex(1),this._splitterStartLocation=$common.getLocation(this._sizeSplitter),$common.addMouseMoveHandler(document,this._mouseMoveHandler),$common.addMouseUpHandler(document,this._mouseUpHandler),$common.addKeyPressHandler(document,this._keyPressHandler),this._notifyGridResizing(!0)},_notifyGridResizing:function(t){$gridExt._isResizing=t},_initSizeSplitterPosition:function(t){var e=this._column,i=e.get_frozenHeaderElement(),n=i||e.get_headerElement(),o=$dom.getBounds(n),s=o.x+o.width,r=e.get_grid().get_bounds(),a=r.y+4,l=r.height-8;s<0||a<0||l<0||($common.setPosition(t,s,a,1,l),this._columnLeft=o.x,this._columnNewWidth=0)},_setSizeSplitterVisible:function(t){var e=this._sizeSplitter;e&&$common.setDisplay(e,t)},_drag:function(t){if(this._draging&&!this.get_isDisposed()){var e=t.clientX-this._mouseStartLocation.x,i=this._gripperStartLocation.x+e,n=this._gripperStartLocation.y+t.clientY-this._mouseStartLocation.y;$dom.setLocation(this._sizeGripper,i,n),i=this._splitterStartLocation.x+e,n=this._splitterStartLocation.y;var o=i-this._columnLeft,s=getClientBounds();o>23&&i<s.width&&(this._columnNewWidth=o,$dom.setLocation(this._sizeSplitter,i,n)),t.preventDefault()}},_doMouseUp:function(t){this._endDrag(!1)},_doKeyPress:function(t){27==(t.keyCode?t.keyCode:t.rawEvent.keyCode)&&this._endDrag(!0)},_columnAutoWidth:function(){var t=this._column,e=t.get_grid().get_recordCount();if(e>1e3)$common.alert("记录数大于 1000 后不能自动调整列宽");else{window.status="正在计算列宽 ...";for(var i=0,n=0;n<e;n++){var o=t.getCellText(n),s=String.getByteLength(o);i=Math.max(s,i)}var r=6*i+8,a=6*String.getByteLength(t.get_caption())+10,l=6*String.getByteLength(t.get_footer())+10,h=Math.max(a,l,23);r=Math.max(r,h),r=Math.min(r,512),this._setColumnWidth(r),window.status=""}},_setColumnWidth:function(t){var e=this._column,i=e.get_minWidth();e.set_width(t>i?t:i,!0),e._grid._refreshFrozenHeaderHeight(),e._grid._removeStretchStyle()},_endDrag:function(t){if(!this.get_isDisposed()){this._notifyGridResizing(!1);var e=this._sizeGripper;if(t)$common.setLocation(e,this._gripperStartLocation);else{var i=this._columnNewWidth;i>0&&(i=parseInt(i),this._setColumnWidth(i))}this._setSizeSplitterVisible(!1),$common.removeMouseMoveHandler(document,this._mouseMoveHandler),$common.removeMouseUpHandler(document,this._mouseUpHandler),$common.removeKeyPressHandler(document,this._keyPressHandler),this._draging=!1}}},_Z_101.registerClass("_Z_101",_Z_233),Sys.UI.Controls.TreeGrid=function(t){Sys.UI.Controls.TreeGrid.initializeBase(this,[t]),this._expandIDField="id",this._expandParentIDField="pid",this._expandRootValue=0,this._expandColumnDataField="__haschild",this._expandColumnLevelField="__expandLevel",this._isTree=!0,this._cacheKey="__cache",this._allowCheckRelation=!0,this._dblExpand=!0,this._childLazyPageSize=$settings.TreeGridLazyPageSize},Sys.UI.Controls.TreeGrid.prototype={get_expandIDField:function(){return this._expandIDField},set_expandIDField:function(t){this._expandIDField=t},get_expandParentIDField:function(){return this._expandParentIDField},set_expandParentIDField:function(t){this._expandParentIDField=t},get_expandRootValue:function(){return this._expandRootValue},set_expandRootValue:function(t){this._expandRootValue=t},get_allowCheckRelation:function(){return this._allowCheckRelation},set_allowCheckRelation:function(t){this._allowCheckRelation=t},_initRowVisible:function(t,e){if(this._rowExpandColumn&&!this._rowExpandColumn.get_expandAll()){var i=this.get_dataController().save();if(i){var n=i[e];n&&0!=n[this._expandColumnLevelField]&&t.append(' style="display:none" ')}}},set_dataSource:function(t){this._isTree&&(this._cachePager&&this._cachePager.set_visible(!1),t&&t.dataType&&1==t.dataType&&(t=$craba._changeDataToList(t,this)),t=this._reBuildData(t)),Sys.UI.Controls.TreeGrid.callBaseMethod(this,"set_dataSource",[t])},_reBuildData:function(t){if(this._expandDataIndexs={},!t)return null;this._createIndex(t);var e=[];return this._buildIndexDatas(this._expandDataIndexs,e,this._expandRootValue,null),0==this._childLazyPageSize&&(this._expandDataIndexs=null),e},set_childLazyPageSize:function(t){this._childLazyPageSize=t},get_childLazyPageSize:function(){return this._childLazyPageSize},_createIndex:function(t){var e=this._expandDataIndexs;e[this._cacheKey]={};for(var i={},n=0,o=t.length;n<o;n++){i[a=(s=t[n])[this._expandIDField]]=a}for(var n=0,o=t.length;n<o;n++){var s=t[n],r=s[this._expandParentIDField],a=s[this._expandIDField];i[r]===undefined&&(r=this._expandRootValue);var l=e[r];l||(l=e[r]=[]),l.push(s)}t=null},_buildIndexDatas:function(t,e,i,n){var o=t[i];if(!o)return!1;var s=o.length,r=s,a=this._childLazyPageSize;this._expandDataIndexs||(this._expandDataIndexs={});var l=this._expandDataIndexs[this._cacheKey];n&&a>0&&s>a&&(s=a,l[i]={});for(var h=0;h<s;h++){var d=o[h];d[this._expandColumnDataField]===undefined&&(d[this._expandColumnDataField]=-1),e.push(d),n?(d[this._expandColumnLevelField]=n[this._expandColumnLevelField]+1,n[this._expandColumnDataField]=1):d[this._expandColumnLevelField]=0;var _=d[this._expandIDField];if(d[this._expandParentIDField]!=_&&(""!==_&&_!=this._expandRootValue)){this._buildIndexDatas(t,e,d[this._expandIDField],d)&&s!=r&&(s=r,delete l[i])}}return!0},_doSortBy:function(t){if(!this._isTree)return Sys.UI.Controls.TreeGrid.callBaseMethod(this,"_doSortBy",[t]);this._postEditValue();var e=t.get_isSortAscending();this.get_dataController().sortBy(t,e);var i=this.get_dataController().save(),n=this._reBuildData(i);this.get_dataController()._dataSource=n,Sys.UI.Controls.TreeGrid.callBaseMethod(this,"refresh",[n])},_afterInitDataRows:function(){Sys.UI.Controls.TreeGrid.callBaseMethod(this,"_afterInitDataRows"),this._isTree&&this._initCheckRelation()},setFrozenColumnCount:function(t){Sys.UI.Controls.TreeGrid.callBaseMethod(this,"setFrozenColumnCount",[t]),this._isTree&&(this._rowExpandColumn.get_expandAll()||this.setExpandAllRows(!1))},_initCheckRelation:function(){if(this._allowCheckRelation&&this._multiSelectColumn&&this._multiSelectColumn.get_visible()&&!this._multiSelectColumn.get_readOnly()&&!this.get_readOnly()){var t=this._multiSelectColumn.get_dataField();if(t)for(var e=this.get_dataController(),i=this.get_recordCount(),n=0;n<i;n++){var o=e.getRecord(n);o&&(o[t]&&this._checkRelation(n,!0))}}},toggleExpanded:function(t){var e=this._rowExpandColumn;if(!e)throw Error.abort("TreeGrid下必须包含ExpandColumn列.");var i=this.findRowData(t);if(i){var n=i[this._expandColumnDataField];Object.isUndefinedOrNull(n)||-1==n||e.doChangeHandler(t,!n,n)&&(1==n?this.collapseRow(t):this.expandRow(t))}},expandRows:function(t){this._expandParentRows(t,!0)&&this.expandRow(t)},expandRow:function(t,e){if(this._expandedRows(t,!0)){if(e)this.get_dataController().setCellValue(t,this._rowExpandColumn,1);else{var i=this._getRow(t);this._refreshCellValue(i,t,this._rowExpandColumn,1)}this._initGridHeight(),this.checkShowCachePager(t)}},collapseRow:function(t,e){if(this._expandedRows(t,!1)){if(e)this.get_dataController().setCellValue(t,this._rowExpandColumn,0);else{var i=this._getRow(t);this._refreshCellValue(i,t,this._rowExpandColumn,0)}this._initGridHeight(),this.setCachePagerVisible(!1)}},_doRowClick:function(t,e,i){e=this._activeRow?this._getRowIndex(this._activeRow):this._selectedRowIndex,Sys.UI.Controls.TreeGrid.callBaseMethod(this,"_doRowClick",[t,e,i]),this._isTree&&this.checkShowCachePager(e)},checkShowCachePager:function(t){if(0!=this._childLazyPageSize&&this._expandDataIndexs){var e=this._expandDataIndexs[this._cacheKey];if(e){var i=this.findRowData(t);if(i){var n=i[this._expandIDField],o=i[this._expandParentIDField];if(e[n]||e[o]){var s=this.findParentRowIndex(t),r=this.findRowData(s);if(r||(r=i,s=t),0!=r[this._expandColumnDataField]){var a=e[n],l=null,h=0;this._hasChildPager?(a||(n=o,a=e[o]),h=a.itemCount):((l=this._expandDataIndexs[n])||(n=o,l=this._expandDataIndexs[o],a=e[o]),h=l.length),e.curId=n;var d=0;a.rowIndex=s,a.pageIndex!==undefined?d=a.pageIndex:a.pageIndex=0,a.text||(a.text=r[this._rowExpandColumn.get_displayField()]);var _="";a.text&&(_="【"+a.text+"】"),this._createCachePager(),this.setCachePagerVisible(!0);var u=this._cachePager;u.set_summaryLabel(_+"子级分页器 "),u.init(h),u.set_pageIndex(d)}else this.setCachePagerVisible(!1)}else this.setCachePagerVisible(!1)}else this.setCachePagerVisible(!1)}else this.setCachePagerVisible(!1)}},setCachePagerVisible:function(t){this._cachePager?(this._cachePager.set_visible(t),this._internalFrozenRowsHeight()):this._internalFrozenRowsHeight()},_createCachePager:function(t){if(!this._cachePager){var e=this.get_form(),i=this.get_idPart()+"_cachePager",n=$createControl("Pager",{ID:i,CssClass:"PagerBottom",PageSize:this._childLazyPageSize,SummaryLabel:"子级分页器"},e);this.findPager()?n.appendTo(this.get_element()):n.appendTo(this.get_element().parentNode);var o=this._cachePager=e[i];o._cacheHandle=t,o.add_pageIndexChanged($createDelegate(this,this.doNextChildPage))}},doNextChildPage:function(t){var e=t.get_pageIndex(),i=t.get_pageSize(),n=this._expandDataIndexs[this._cacheKey],o=n.curId,s=n[o];if(s.pageIndex!=e){s.pageIndex=e;var r=e*i,a=r+i;if(t._cacheHandle){s.startIndex=r,s.endIndex=a;var l=this;t._cacheHandle(t,s,function(t){l._modifyChildRowData(s.rowIndex,0,i,t)})}else{var h=this._expandDataIndexs[o];this._modifyChildRowData(s.rowIndex,r,a,h)}}},_modifyChildRowData:function(t,e,i,n){for(var o=e;o<i;o++){t++;var s=this._getRow(t),r=null;this.isFrozenGrid()&&(r=this._getFrozenRow(t));var a=n[o];a?(this.modifyRowData(t,a),s.style.display="",r&&(r.style.display="")):(s.style.display="none",r&&(r.style.display="none"))}},initChildPager:function(t,e,i){if(e<=this._childLazyPageSize)return null;this._createCachePager(i);return this._expandDataIndexs[this._cacheKey][t]={pid:t,pageSize:this._childLazyPageSize,itemCount:e},this._hasChildPager=!0,this._cachePager},findParentRowIndex:function(t,e){var i=this.findRowData(t);return i?(e=e!==undefined?e:i[this._expandParentIDField],i[this._expandIDField]==e?t:t>-1?(t--,this.findParentRowIndex(t,e)):-1):t},getChildDatas:function(t,e){for(var i=[],n=this.findRowData(t),o=n[this._expandColumnLevelField];n&&(n=this.findRowData(++t))&&n[this._expandColumnLevelField]>o;)i.push(n);return e?i:Object.clone(i)},_expandParentRows:function(t,e){var i=this.findRowData(t);if(!i)return!1;for(var n=i[this._expandColumnLevelField],o=n;0!=o&&t>-1;)(o=(i=this.findRowData(--t))[this._expandColumnLevelField])<n&&this.expandRow(t);return!0},_expandedRows:function(t,e){this._reStart=!0;var i=t,n=this.findRowData(i);if(!n||-1==n[this._expandColumnDataField])return!1;var o=n[this._expandColumnLevelField];n=this.findRowData(++i);for(var s=[];n&&n[this._expandColumnLevelField]>o;){var r=this._getRow(i),a=null;this.isFrozenGrid()&&(a=this._getFrozenRow(i)),0==n[this._expandColumnDataField]&&(i+=this._getChildCount(i)),n=this.findRowData(++i),e?(s.push(r),a&&(a.style.display="")):(r.style.display="none",a&&(a.style.display="none"))}return s.length>0&&(s.length>1e3&&$common.showWarn(Sys.Res.gridLazyTips),this._reStart=!1,this._doLoopExpandRows(s,500)),!0},_doLoopExpandRows:function(t,e){for(var i=0;t.length>0&&!this._reStart&&!this.get_isDisposed();){if(t.shift().style.display="",i>e){var n=this;setTimeout(function(){n._doLoopExpandRows(t,e)},100);break}i++}0==t.length&&$common.hideTips()},_getChildCount:function(t){return this.getChildDatas(t,!0).length},selectChilds:function(t){this._selectChilds(t,!0,!0)},deselectChilds:function(t){this._selectChilds(t,!1,!0)},_selectChilds:function(t,e,i){var n=this.findRowData(t);if(n&&(i&&this._internalSetRowSelected(t,e),-1!=n[this._expandColumnDataField])){var o=t,s=n[this._expandColumnLevelField];for(n=this.findRowData(++o);n&&n[this._expandColumnLevelField]>s;)(!this._checkEnabled||this.getRowEnabled(o)&&this._getMtCellEnabled(o))&&this._internalSetRowSelected(o,e),n=this.findRowData(++o)}},get_selectedItems:function(t){var e=Sys.UI.Controls.TreeGrid.callBaseMethod(this,"get_selectedItems");return this._isTree&&t?0==e.length?e:(Array.addRange(e,this.get_indeterItems()),e):e},get_indeterItems:function(){this._checkHasMultiSelectColumn();for(var t=[],e=this._multiSelectColumn,i=0,n=this.get_recordCount();i<n;i++){var o=this._getRow(i);if(this._getRowCell(o,e.get_index()).firstChild.firstChild.indeterminate){var s=this.findRowData(i);if(!s)continue;t.push(s)}}return t},hasSelectedAllChild:function(t,e){if(0==this.get_recordCount())return!1;for(var i=this._checkHasMultiSelectColumn(),n=!1,o=t+1,s=t+this._getChildCount(t);o<=s;o++)if(!this.isEmptyRow(o)&&this.getRowEnabled(o)&&this._getMtCellEnabled(o)){var r=this.getRowData(o)[i];if(e){if(r)return!0}else{if(!r)return!1;n=!0}}return n},hasSelectedChild:function(t){return this.hasSelectedAllChild(t,!0)},_selectParents:function(t){var e=this._getParentIndex(t);if(!(e<0)){var i=this.hasSelectedAllChild(e);this._internalSetRowSelected(e,i);var n=this._multiSelectColumn,o=this._getRow(e),s=this._getRowCell(o,n.get_index());this._checkCellindeterminate(e,s,i),this._selectParents(e)}},_checkCellindeterminate:function(t,e,i){if(this._allowCheckRelation){var n=e.firstChild.firstChild;n.indeterminate=!i&&this.hasSelectedChild(t),$common._changeCheckedHalfStyle(n.parentNode,n.checked,n.indeterminate)}},set_columnIndeterminate:function(t,e){this._checkRowIndex(t);var i=this._getRow(t);this._checkHasMultiSelectColumn();var n=this._getRowCell(i,this._multiSelectColumn.get_index()).firstChild.firstChild;n.indeterminate=e,$common._changeCheckedHalfStyle(n.parentNode,n.checked,n.indeterminate)},_getParentIndex:function(t){var e=this.findRowData(t);if(!e)return-1;var i=e[this._expandColumnLevelField];if(i<1)return-1;for(var n=i;0!=n&&t>-1;){if(!(e=this.findRowData(--t)))return-1;if((n=e[this._expandColumnLevelField])<i)return t}return-1},_raiseSetRowSelected:function(t,e,i,n,o){if(!this._isTree)return Sys.UI.Controls.TreeGrid.callBaseMethod(this,"_raiseSetRowSelected",arguments);e._setCellValue(t,n,!0);var s=i.firstChild.firstChild;s.checked=n,n&&(s.indeterminate=!1),i==e._lastCell&&e.set_value(n),$common._changeCheckedHalfStyle(s.parentNode,s.checked,s.indeterminate),e._raiseChangeByRowIndex(i,t,n,o)},_doModifyRowData:function(t,e){if(Sys.UI.Controls.TreeGrid.callBaseMethod(this,"_doModifyRowData",arguments),this._isTree&&this._multiSelectColumn){var i=e[this._multiSelectColumn.get_dataField()];this._checkRelation(t,i)}},_checkRelation:function(t,e,i){if(this._isTree){if(i&&e&&this._multiSelectColumn._columnEdit){var n=this._multiSelectColumn._columnEdit;n.indeterminate=!1,$common._changeCheckedHalfStyle(n.parentNode,n.checked,n.indeterminate)}this._allowCheckRelation&&(Object.isUndefinedOrNull(this._startIndex)&&(this._startIndex=t),this._startParent||this._selectChilds(t,e),this._startIndex==t&&(delete this._startIndex,this._startParent=!0,this._selectParents(t),this._startParent=!1))}},_moveSelectedRow:function(t,e,i,n,o,s,r,a,l){if(!this._isTree)return Sys.UI.Controls.TreeGrid.callBaseMethod(this,"_moveSelectedRow",arguments);for(var h=t>e,d=this._getRow(t),_=!0;d&&_;)(_=!$dom.getVisible(d))&&(d=h?$common.getNextSibling(d):$common.getPreviousSibling(d));return _||(t=this._getRowIndex(d)),Sys.UI.Controls.TreeGrid.callBaseMethod(this,"_moveSelectedRow",arguments)},_setDefaultData:function(t,e){if(!this._isTree)return Sys.UI.Controls.TreeGrid.callBaseMethod(this,"_setDefaultData",arguments);if(!$craba.isEmptyData(e)){var i=this.findRowData(t);null!=i&&i[this._expandColumnDataField]!=undefined&&i[this._expandColumnLevelField]!=undefined||((i={})[this._expandColumnLevelField]=0,i[this._expandColumnDataField]=-1),"undefined"==typeof e[this._expandColumnLevelField]&&(e[this._expandColumnLevelField]=i[this._expandColumnLevelField]),"undefined"==typeof e[this._expandColumnDataField]&&(e[this._expandColumnDataField]=i[this._expandColumnDataField]),Sys.UI.Controls.TreeGrid.callBaseMethod(this,"_setDefaultData",[t,e])}},_getStartRecordIndex:function(){if(!this._isTree)return Sys.UI.Controls.TreeGrid.callBaseMethod(this,"_getStartRecordIndex");var t=this.findPager();return t?t.get_dynamicPageItemIndex():0},dataNeedSum:function(t){if(!this._isTree)return Sys.UI.Controls.TreeGrid.callBaseMethod(this,"dataNeedSum",arguments);var e=t[this._expandColumnLevelField];return e==undefined||0==e},set_dblExpand:function(t){this._dblExpand=t},get_dblExpand:function(){return this._dblExpand},doRowDblClick:function(t,e){this._isTree&&this._dblExpand&&this.toggleExpanded(this.get_selectedRowIndex()),Sys.UI.Controls.TreeGrid.callBaseMethod(this,"doRowDblClick",[t,e])},batchInsertRowData:function(t,e,i){if(!this._isTree)return Sys.UI.Controls.TreeGrid.callBaseMethod(this,"batchInsertRowData",arguments);for(var n={},o=0,s=e.length;o<s;o++){var r=e[o];(l=r[this._expandParentIDField])||(l=i?i[this._expandIDField]:this._expandRootValue);var a=n[l];a||(a=n[l]=[]),a.push(r)}e=[];l=this._expandRootValue;if(i&&(l=i[this._expandIDField]),this._buildIndexDatas(n,e,l,i),0==this._childLazyPageSize&&(this._expandDataIndexs=null),this._expandDataIndexs)for(var l in n)this._expandDataIndexs[l]||(this._expandDataIndexs[l]=[]),Array.addRange(this._expandDataIndexs[l],n[l]);Sys.UI.Controls.TreeGrid.callBaseMethod(this,"batchInsertRowData",[t+1,e,l==this._expandRootValue]),i&&this.modifyCellValue(t,this._rowExpandColumn,1)},deleteChilds:function(t,e){var i=this.findRowData(t);if(e&&Sys.UI.Controls.TreeGrid.callBaseMethod(this,"deleteRow",[t,!0]),i){for(var n=i[this._expandColumnLevelField],o=(i[this._expandParentIDField],e?t:t+1),s=!1,r=this.findRowData(o);r&&r[this._expandColumnLevelField]>n;)s=!0,Sys.UI.Controls.TreeGrid.callBaseMethod(this,"deleteRow",[o,!0]),r=this.findRowData(o);!e&&s&&this.modifyCellValue(t,this._rowExpandColumn,-1)}},deleteRow:function(t,e){var i=this.findRowData(t);if(!this._isTree||!i)return Sys.UI.Controls.TreeGrid.callBaseMethod(this,"deleteRow",arguments);this.expandRow(t);var n=t,o=i[this._expandColumnLevelField],s=i[this._expandParentIDField];for(i=this.findRowData(++n);i&&i[this._expandColumnLevelField]>o;)i[this._expandParentIDField]=s,i[this._expandColumnLevelField]--,this.modifyRowData(n,i),i=this.findRowData(++n);Sys.UI.Controls.TreeGrid.callBaseMethod(this,"deleteRow",arguments)}},Sys.UI.Controls.TreeGrid.registerClass("Sys.UI.Controls.TreeGrid",Sys.UI.Controls.Grid),Sys.UI.Controls.TreeGrid.create=function(t,e,i,n){return Sys.UI.Controls.Grid.create(t,e,i,n,Sys.UI.Controls.TreeGrid)},_Z_76=function(t){this._grid=t,this._barHeight=30,this._blocks=[],this._filterEditors=[],this._isFirst=!0,this._enabled=!0},_Z_76.prototype={dispose:function(){this._disposed||(this._disposed=!0,this._clear())},_clear:function(){for(o=0;o<this._blocks.length;o++){var t=this._blocks[o];if(t._isCustomer){var e=$common.getElementChildControls(t);Array.addRange(this._filterEditors,e)}}for(var i=this._filterEditors.length<1,n=this._grid.get_form(),o=0;o<this._filterEditors.length;o++){var s=this._filterEditors[o];s._enabled&&(i=!0),n.removeControl(s,!0)}this._enabled=i,this.removeResetButton(),$clearHandlers(this._element),delete this._blocks,delete this._filterEditors},reset:function(){this._disposed||(this._filters=this.getFilter(),this._clear(),this._frozenFilterBar&&($removeNode(this._frozenFilterBar),this._frozenFilterBar=null,$removeNode(this._resetButtonBak),this._resetButtonBak=null),$removeNode(this._element),this._blocks=[],this._filterEditors=[],this._inited=!1,this._isFirst=!1,this.init())},get_height:function(){return this._element?this._element.offsetHeight:this._barHeight},scrollLeft:function(t){this._element.scrollLeft=t},addControl:function(t){this._filterEditors.push(t),t.doFormLoaded&&!t.__loaded&&t.doFormLoaded()},set_width:function(t,e){var i=t._block;if(i){var n=this._grid,o=n._header.offsetWidth;if(this._xBar.style.width=_px(o),this._setBlockWidth(i,e),this._setBlockWidth(t._block2,e),this._frozenFilterBar&&n._isColumnInFrozen(t)){var s=n._frozenHeaderBar.offsetWidth;this._frozenFilterBar.style.width=_px(s)}}},_setBlockWidth:function(t,e){t&&(t.style.width=_px(e),t._control&&t._control.set_width(e-34))},resetWidth:function(){if(this._inited){var t=this._grid;if(this._frozenFilterBar){var e=t._frozenHeaderBar,i=this._frozenFilterBar;i.style.width=_px(e.offsetWidth),i.style.top=_px(e.offsetTop+e.offsetHeight)}}},set_visible:function(t,e){var i=t._block;if(i){var n=e?"":"none";if(i.style.display=n,t._block2&&(t._block2.style.display=n),this._xBar.style.width=_px(this._grid._header.offsetWidth),e&&t.get_allowFilter()&&"none"==t._createFilterType){if(t._doFilterRendering(i,this))return void(t._createFilterType="ok");t._filterControl=t.createFilter(i,this),t._createFilterType="ok"}}},swapColumn:function(t,e){var i=t._block,n=e._block;if(i&&n){var o=n.parentNode;if(t.get_index()<e.get_index()){s=$common.getNextSibling(i);o.insertBefore(i,n),s?o.insertBefore(n,s):o.appendChild(n)}else{var s=$common.getNextSibling(n);o.insertBefore(n,i),s?o.insertBefore(i,s):o.appendChild(i)}}},hide:function(){this._isShow&&(this._isShow=!1,this._element&&$dom.setVisible(this._element,!1))},show:function(){this._isShow||(this._isShow=!0,this._element&&($dom.setVisible(this._element,!0),this._element.scrollLeft=this._grid._body.scrollLeft))},removeResetButton:function(){var t=this._resetButton;$clearHandlers(t),$removeNode(t),delete this._resetButton},_initResetButton:function(){if(!this._resetButton){var t=this._grid;if(t.get_showRowNo()){var e=this._resetButton=this.createBlock();$dom.addCssClass(e,"GridBodyRowNoCell"),e.style.width=_px(t.get_rowNoColumnWidth()),this._xBar.insertBefore(e,this._xBar.firstChild),$common.addClickHandler(e,this._doFilterIconClick,this);var i=$common.createClassSpan("GridFilterIcon SpeedButton icononly aicon-qingkong1");i.title=$craba.getLangPro("重置筛选条件"),e.appendChild(i),t.get_noColumn()&&(t.get_noColumn()._block=e)}}},init:function(){var t=this._grid;if(!t.get_allowFilter())return this.hide();if(this.show(),!this._inited){this._inited=!0;var e=t._body,i=t.get_element(),n=this._element=$common.createClassDiv("GridFilterBar Normal");$common.addScrollHandler(n,this._filterBarScroll,this),i.insertBefore(n,e);var o=this._xBar=$common.createClassDiv("GridFilterXBar");$common.setWidth(o,t._header.offsetWidth),n.appendChild(o),this._initResetButton();for(var s=t.get_columns(),r=0;r<s.length;r++){var a=s[r],l=this.createBlock();if(l.style.width=_px(a.get_width()),o.appendChild(l),this._blocks.push(l),a._block=l,l.style.display=a.get_visible()?"":"none",a._createFilterType="none",a.get_visible()){var h=a.get_dataField(),d=this._getFilterData(h);a._doFilterRendering(l,this,d)?a._createFilterType="ok":a.createFilter&&a.get_allowFilter()&&h&&(a._filterControl=a.createFilter(l,this,d),a._filterControl&&a._filterControl.set_enabled(this._enabled),a._createFilterType="ok")}}this._makeFrozenFilterBar(),this._grid._bodyScroll()}},_filterBarScroll:function(){if(!this._grid.get_isDisposed()){var t=this._element.scrollLeft;this._grid._body&&(this._grid._body.scrollLeft=t),this._grid.refreshScrollBar()}},_getFilterData:function(t){if(!t||!this._filters)return null;var e=this._filters.items;if(!e||e.length<1)return null;for(var i=0,n=e.length;i<n;i++){var o=e[i];if(o.dataField===t)return o}return null},_makeFrozenFilterBar:function(){var t=this._grid;if(t.isFrozenGrid()&&t._getFrozenVisible()){var e=t._frozenBody,i=t.get_element(),n=t._frozenHeaderBar,o=this._frozenFilterBar=t._frozenFilterBar=$common.createClassDiv("GridFilterBar Frozen");if(o.style.top=_px(n.offsetTop+n.offsetHeight),o.style.left=e.style.left,o.style.width=_px(e.offsetWidth),i.insertBefore(o,$common.getNextSibling(this._element)),this._resetButton){var s=this._resetButtonBak=this._resetButton.cloneNode(!0);this._xBar.insertBefore(s,this._resetButton),o.appendChild(this._resetButton)}for(var r=t.get_columns(),a=0,l=t._getFrozenColumnRealCount();a<l;a++){var h=r[a],d=h._block,_=d.cloneNode(!0);h._block2=_;var u=$common.getNextSibling(d);o.appendChild(d),u?this._xBar.insertBefore(_,u):this._xBar.appendChild(_)}}},_doFilterIconClick:function(t){this.doClearFilter()},clearValue:function(){for(var t=0,e=this._filterEditors.length;t<e;t++){this._filterEditors[t].set_value("",!0)}delete this._filters},doClearFilter:function(t){this.clearValue();if(!this._doFilterHandler(null)){var e=this._grid,i=e.findPager();if(e.get_lazyPageSize()>0)e._cacheData&&(e.refresh(e._cacheData),delete e._cacheData);else if(i){if(!i._savedFilter)return;delete i._lastFilter,delete i._savedFilter,i._internalRefreshFilter(null)}}},_doFilterHandler:function(t){var e=this._grid,i=e.get_events().getHandler("filter");if(i){var n=new _Z_278(t);if(i(e,n),n.get_cancel())return!0}return!1},doFilter:function(t,e){var i=this._grid,n=e&&"change"==e.type;if(n){if(!i.get_changeDoFilter())return;if(t.isdoFilter)return void(t.isdoFilter=!1)}else t.isdoFilter=!0;var o=this.getFilter();if(!this._doFilterHandler(o)){0==o.items.length&&(o=null);var s=(i=this._grid).findPager();i.get_lazyPageSize()>0?this.doFilterRowsToCache(o):s?s._internalRefreshFilter(o,function(){asyncCall(function(){t.focus()})}):n||this.doSelectRowByFilter(o)}},getFilter:function(t){for(var e={append:!1,items:[]},i=[],n=0;n<this._filterEditors.length;n++){var o=this._filterEditors[n],s=o.get_value();if(void 0!==s&&null!==s&&""!==s&&!(s instanceof Array&&0==s.length)){var r=o.get_tag(),a=r.get_sortField(!0);if(!a)return void $common.showWarn(String.format(Sys.Res.columnFilter,r.get_caption()));if(!(Array.indexOf(i,a)>-1)){i.push(a);var l={};l.dataField=a,l.value=s,l.type=r.get_filterType(),r.getFilterValue&&r.getFilterValue(o,l),e.items.push(l)}}}return t&&this._doFilterHandler(e),e},doSelectRowByFilter:function(t){if(t)for(var e=t.items,i=0,n=e.length;i<n;i++){var o=e[i];if(this._grid.locateRow(o.dataField,o.value,!0)>-1)break}},doFilterRowsToCache:function(t){$common.addStep({control:this._resetButton,html:Sys.Res.stepTips.filter},!0);this._grid.filterRows(t)},createBlock:function(){return $common.createClassDiv("GridFilterBlock")}},_Z_105=function(){},_Z_105.prototype={bindColumnResizer:function(t){if(this._checkInitResizer(t,!0),t._index>0){var e=t._grid.getColumnByIndex(t._index-1);e&&this._checkInitResizer(e)}},hideSizeGripper:function(){this._resizer1&&this._resizer1._hideSizeGripper(),this._resizer2&&this._resizer2._hideSizeGripper()},_checkInitResizer:function(t,e){if(t.get_allowResize()&&!$gridExt._isResizing){var i;e?(i=this._resizer1,this._resizer1||(i=this._resizer1=this._createResizer())):(i=this._resizer2,this._resizer2||(i=this._resizer2=this._createResizer())),i.initSizeGripper(t)}},_createResizer:function(){var t=new _Z_101;return t.initialize(),t},getRowNoColumnWidth:function(){return 40},_initGridShowMax:function(t){this._createMaxBtn(t)},_createMaxBtn:function(t){if(!t._maxBtn){var e=t._headerRow;if(e&&t.get_showRowNo()){var i=t._maxBtn=$common.createClassDiv("maxShape iconfont");i._grid=t,e.childNodes[0].appendChild(i),$common.addClickHandler(i,this._doMaxBtnClick,this)}}},_doMaxBtnClick:function(t){var e=t.target._grid;this.showPopup(e,"表格预览")},showMaxButton:function(t,e){t._maxBtn&&$dom.setVisible(t._maxBtn,e)},closePopup:function(){this._popupForm&&(this.showMaxButton(this._curGrid,!0),this._popupForm.dispose(),delete $app.PopupGrid,this._popupForm=null)},showPopup:function(t,e,i,n){if(!$app.PopupGrid)if($app.PopupGrid=t,t.get_visible()){this._curGrid=t,this.showMaxButton(t,!1),t._hideEditor(),t._hideMenu();var o=t.get_element(),s=t._body,r=o.parentNode;this._gridParent=r.parentNode,this._gridNext=r.nextSibling;var a=t.findPager(),l=o.offsetWidth,h=o.offsetHeight,d=0;if(a){h+=d=a.get_element().offsetHeight}var _=t.get_events().getHandler("_popuping");if(_){var u=new _Z_184(i||l,n||h);if(_(t,u),u.get_cancel())return;var c=u.get_size();u.get_caption()&&(e=u.get_caption()),i=c.width,n=c.height}(void 0===i||i<100)&&(i=l+(s.scrollWidth-s.clientWidth)),(void 0===n||n<100)&&(n=h+(s.scrollHeight-s.clientHeight));var g=getClientBounds();i>g.width-30&&(i=g.width-30);var f=d+20+30+20;n>g.height-f&&(n=g.height-f),n<g.height/2&&(n=g.height/2);var m=this._popupForm=new Sys.UI.Form(t);m._hasFlexBlock=!0,m.set_id((new Date).getTime()),e&&m.set_caption(e),m.addHotkey({keyCode:Sys.UI.Key.esc},m.close,m),m.showModal(),m.add_close($createDelegate(this,this._doPopupClose)),$app.addForm(m);var C=m.get_contentElement();$dom.addCssClass(C,"MaxContent"),C.appendChild(r),m.set_width(i),m.set_height(n),m.doHideProgressor()}else $common.showWarn("不支持对隐藏grid的放大功能")},_doPopupClose:function(t){var e=this._curGrid,i=this._gridNext,n=this._gridParent,o=e.get_element().parentNode;delete $app.PopupGrid,n.insertBefore(o,i),e._hideEditor(),e._hideMenu(),this.showMaxButton(e,!0)}},$gridExt=new _Z_105,_Z_106=function(t){this._grid=t,this._minWidth=40,this.init()},_Z_106.prototype={init:function(){var t=this._grid;t._filterBar&&(this._block=t._filterBar._resetButton)},focus:function(){},initCellHTML:function(){},get_allowResize:function(){return!0},get_grid:function(){return this._grid},get_frozenHeaderElement:function(){return this._grid._frozenNoTd},get_headerElement:function(){return this._grid._noTd},get_minWidth:function(){return this._minWidth},get_width:function(){var t=this._grid._noTd,e=t.offsetWidth;return 0==e&&(e=parseInt(t.width)),e},get_name:function(){return"rowNo"},get_designWidth:function(){return this._minWidth},set_width:function(t){var e=this._grid;if(t>e.get_rowNoMaxWidth()){t=e.get_rowNoMaxWidth();var i=e._frozenNoTd?e._frozenNoTd:e._noTd;$common.showHint(String.format(Sys.Res.gridRowNoWidth,t),i)}var n=this.get_width();t!=n&&(e._internalSetColumnWidth(this,t,n,!0),e._filterBar&&e._filterBar._resetButtonBak&&(e._filterBar._resetButtonBak.style.width=_px(t)),e._footerNo&&(e._footerNo.width=t),e._frozenFooterNo&&(e._frozenFooterNo.width=t))},_hideEditor:function(){},getCellText:function(){return"11111"},get_caption:function(){return"行号"},get_footer:function(){return"行号"},get_index:function(){return-1},get_band:function(){return null},_getVisibleIndex:function(){return 0}};
3
+ _Z_79=function(t,e){_Z_79.initializeBase(this,[e]),this._requireMouseEnter=!0,this._requireMouseLeave=!0,this._requireMouseDown=!0,this._requireDblClick=!0,this._requireKeyDown=!0,this._requireMouseUp=!0,this._tabPage=t},_Z_79.prototype={initialize:function(){_Z_79.callBaseMethod(this,"initialize"),this._initButton()},dispose:function(){this._closeButton&&(this._closeButton.dispose(),this._closeButton=null),this._captionElement=null,_Z_79.callBaseMethod(this,"dispose")},_initButton:function(){var t=this.get_tabPage(),e=this.get_element(),i=e.innerText;e.innerText="",this._addCaptionElement(e,i),t.get_showTabCloseButton()&&this._initCloseButton(e)},get_isMDITab:function(){return this._isMDITab},set_isMDITab:function(t){this._isMDITab=t},_addCaptionElement:function(t,e){var i=this._captionElement=$common.createClassDiv("TabCaptionText");$craba.innerHTMLs(i,e),t.appendChild(i)},_initCloseButton:function(t){var e=this._closeButton=new _Z_23(t,"TabCloseButton aicon-close1",!1);e.initialize(),e.add_mouseDown(this._doButtonMouseDown,this),e.add_click(this._doClose,this),e.__form=this.__form,this._initNormal()},get_tabPage:function(){return this._tabPage},get_selected:function(){return this.get_tabPage().get_selected()},set_selected:function(t){t?this._initSelected():this._initNormal()},get_text:function(){return this._captionElement.innerText},set_text:function(t){this._captionElement.innerText!=t&&$craba.innerHTMLs(this._captionElement,t)},doMouseEnter:function(t){this.get_selected()||this._initHover()},_doButtonMouseDown:function(t){t.cancel()},_doClose:function(t,e){this.get_tabPage().close()},doDblClick:function(t){_Z_79.callBaseMethod(this,"doDblClick",[t]),this._doClose()},doMouseLeave:function(t){this.get_selected()||this._initNormal()},doMouseDown:function(t){if(!this.get_selected()){var e=this.get_tabPage();e.get_pageControl().set_selectedTab(e)}},doMouseUp:function(t){if(2==t.button){t.cancel();var e=this.get_tabPage();if(e){var i=e.get_pageControl();if(i){var s=i.get_mdiPanel();if(s){var n=s.get_events().getHandler("tabItemRightClick");n&&n(this,t)}}}}},doKeyDown:function(t){t.keyCode==Sys.UI.Key.enter&&(this.get_selected()||(this.doMouseDown(),t.cancel()))},_showCloseButton:function(t){this._closeButton&&this._closeButton.set_visible(t)},_initNormal:function(){this._internalInit(!1),$settings.TabButtonNormalShowCloseButton?this._showCloseButton(!0):this._showCloseButton(!1)},_initHover:function(){this._showCloseButton(!0)},_initSelected:function(){this._internalInit(!0),this._showCloseButton(!0)},_internalInit:function(t){$dom.setCssClass(t,this._element,"active")}},_Z_79.registerClass("_Z_79",Sys.UI.Controls.Container),Sys.UI.Controls.TabPage=function(t){Sys.UI.Controls.TabPage.initializeBase(this,[t]),this._selected=!1,this._allowClose=!0,this._isMDITab=!1,this._visible=!0,this._enabled=!0},Sys.UI.Controls.TabPage.prototype={initialize:function(){Sys.UI.Controls.TabPage.callBaseMethod(this,"initialize");var t=this._buttonElement;t||(t=this._buttonElement=$get(this.get_id()+"_button")),t&&$dom.getVisible(t)&&this._initTabButton(),this._initEnabled(),this.get_pageControl().addTab(this)},doFormResized:function(){},doResized:function(){$craba.doResized.apply(this,arguments)},get_tabForm:function(){return this._form},_initTabButton:function(){var t=this._tabButton=new _Z_79(this,this._buttonElement);t.set_form(this.get_form()),t.set_isMDITab(this.get_isMDITab()),t.initialize()},dispose:function(){this._tabButton&&(this._tabButton.dispose(),this._tabButton=null),this._buttonElement=null,this._pageControl=null,Sys.UI.Controls.TabPage.callBaseMethod(this,"dispose")},_refreshFrozen:function(t){if(t||(t=$craba._checkTabFrozen(this.get_name())),this._isFrozen=t,t){var e=this._tabButton.get_element();$dom.addCssClass(e,"aicon-suoding1"),this._form&&this._form._icon&&$dom.removeCssClass(e,this._form._icon)}},updated:function(){var t=this.get_langText();null!==t&&this.set_caption(t)},doMDIResize:function(t,e,i,s){var n=this._form;n.get_allowResize()&&n._doResizeHandler(t,e,i,s,!0)},get_activeControl:function(){return this._activeControl},set_activeControl:function(t){this._activeControl=t},get_textColor:function(){return this._textColor},set_textColor:function(t){this._textColor=t},get_isMDITab:function(){return this._isMDITab},set_isMDITab:function(t){this._isMDITab=t},get_pageControl:function(){var t=this._pageControl;return t||this.get_form()[this._pageControlId]},set_pageControl:function(t){this._pageControl=t},get_buttonElement:function(t){return this._buttonElement},set_buttonElement:function(t){this._buttonElement=t},get_tabButton:function(){return this._tabButton},get_caption:function(){var t=this.get_tabButton();return t?t.get_text():""},set_caption:function(t){var e=this.get_tabButton();if(e){e.set_text(t);var i=this.get_events().getHandler("captionChanged");i&&i(this)}},add_captionChanged:function(t){this.get_events().addHandler("captionChanged",t)},remove_captionChanged:function(t){this.get_events().removeHandler("captionChanged",t)},get_tabPosition:function(){return this.get_pageControl().get_tabPosition()},get_allowClose:function(){return this._allowClose},set_allowClose:function(t){this._allowClose=t;var e=this.get_tabButton();e&&!t&&e._closeButton&&(e._showCloseButton(!1),e._closeButton.dispose(),e._closeButton=null)},get_showTabCloseButton:function(){return!!this.get_allowClose()&&this.get_pageControl().get_showTabCloseButton()},close:function(t){(this.get_allowClose()||t)&&this.get_pageControl().doTabClose(this)},get_pageControlId:function(){return this._pageControlId},set_pageControlId:function(t){this._pageControlId=t},get_tabIndex:function(){return this.get_pageControl().indexOfTab(this)},get_name:function(){return this._name},set_name:function(t){t||(t="null"),this._name=$common.removeUrlParam(t,$settings.StaticVersionName)},get_visible:function(){return this._visible},set_visible:function(t){if(this._visible=t,!this._tabButton&&t&&this._buttonElement&&($dom.setVisible(this._buttonElement,!0),this._initTabButton()),this._tabButton&&this._tabButton.set_visible(t),this.get_isInitialized()){$dom.setVisible(this.get_element(),t,"flex");var e=this.get_pageControl();if(t&&(this._selected||!e.get_selectedTab()))e.set_selectedTab(this);else{var i=this.get_tabIndex();this._initActiveTab(!1),this._selected&&(e._selectedTab=null,this.set_selected(!1),this._selectedOtherTab(i))}}},_initEnabled:function(){var t=this._enabled;this._tabButton&&this._tabButton.set_enabled(t)},set_enabled:function(t){this._enabled=t,this.get_isInitialized()&&this._initEnabled()},get_enabled:function(){return this._enabled},_selectedOtherTab:function(t){for(var e=this.get_pageControl(),i=e.get_tabs(),s=this;0==s.get_visible()&&(--t<0&&(t=e.get_tabCount()-1),(s=i[t])!=this););s!=this&&e.set_selectedTab(s)},get_selected:function(){return this._selected},set_selected:function(t){this._initFrozenPage(),this._selected=t,this._selectedChanged()},_initFrozenPage:function(){if(this._cacheInfo){this.get_pageControl().get_mdiPanel()._initTabPageForm(this,this._cacheInfo.url,this._cacheInfo.caption,this._cacheInfo.params,null),delete this._cacheInfo}},_selectedChanged:function(){var t=this.get_selected();this._tabButton&&this._tabButton.set_selected(t),this._initActiveTab(t)},_initActiveTab:function(t){var e=this.get_element();$dom.setCssClass(!t,e,"Hided"),t&&$step.popHideStep()},getControls:function(){return this.get_controls()},get_controls:function(){return $common.getElementChildControls(this.get_element())}},Sys.UI.Controls.TabPage.registerClass("Sys.UI.Controls.TabPage",Sys.UI.Control),Sys.UI.Controls.TabContainer=function(t){Sys.UI.Controls.TabContainer.initializeBase(this,[t])},Sys.UI.Controls.TabContainer.prototype={initialize:function(){Sys.UI.Controls.TabContainer.callBaseMethod(this,"initialize"),this.get_pageControl().set_tabContainer(this)},get_pageControl:function(){var t=this._pageControl;return t||this.get_form()[this._pageControlId]},get_pageControlId:function(){return this._pageControlId},set_pageControlId:function(t){this._pageControlId=t}},Sys.UI.Controls.TabContainer.registerClass("Sys.UI.Controls.TabContainer",Sys.UI.Control),_Z_170=function(t,e,i){_Z_170.initializeBase(this),this._oldTab=t,this._newTab=e,this._activeControl=i},_Z_170.prototype={get_oldTab:function(){return this._oldTab},get_newTab:function(){return this._newTab},get_oldTabIndex:function(){var t=this.get_oldTab();return t?t.get_tabIndex():-1},get_newTabIndex:function(){var t=this.get_newTab();return t?t.get_tabIndex():-1},get_activeControl:function(){return this._activeControl},set_activeControl:function(t){this._activeControl=t}},_Z_170.registerClass("_Z_170",_Z_152),_Z_57=function(){throw Error.notImplemented()},_Z_57.prototype={top:0,bottom:1,right:2,left:3},_Z_57.registerEnum("_Z_57"),Sys.UI.Controls.PageControl=function(t){Sys.UI.Controls.PageControl.initializeBase(this,[t]),this._tabs=[],this._showTabHeader=!0,this._tabPosition=_Z_57.top,this._autoFocus=!0},Sys.UI.Controls.PageControl.prototype={initialize:function(){Sys.UI.Controls.PageControl.callBaseMethod(this,"initialize");var t=this.get_element();this._header=$common.getFirstChildByClassName(t,"TabHeader",!1);var e=this.get_showTabHeader()?"TabBody":"TabBodyNoHeader";this._tabBody=$common.getFirstChildByClassName(t,e,!1),this.get_form()._hasPageControl=!0,this.get_form()._hasFlexBlock=!0,this._initHeaderBar(this._header)},dispose:function(){Sys.UI.Controls.PageControl.callBaseMethod(this,"dispose"),this._tabs=null,this._tabButtons=null,this._selectedTab=null,this._header=null,this._tabBody=null,this._tabLeftButton&&(this._tabLeftButton.dispose(),this._tabLeftButton=null),this._tabRightButton&&(this._tabRightButton.dispose(),this._tabRightButton=null),this._mdiPanel=null},doResized:function(){if(this.get_visible()&&!$dom.isAbsolute(this.get_element())){var t=this.get_selectedTab();t&&t.doResized.apply(t,arguments)}},_initHeaderBar:function(t){t&&$settings.DefaultMDIMouseWheel&&$common.addMouseWheelHandler(t,this._doMouseWheelHandler,this)},doFormInit:function(){null!=this._initTabIndex&&this._initTabIndex<this.get_tabCount()&&this._internalSetSelectedTabIndex(this._initTabIndex)},_doMouseWheelHandler:function(t){this._tabScroll(t.wheelType)},_tabScroll:function(t){for(var e=this.get_tabCount(),i=this.get_selectedTabIndex()+t;!this.get_tabVisible(i);)(i+=t)<0?i=e-1:i>=e&&(i=0);this.set_selectedTabIndex(i)},get_showTabHeader:function(){return this._showTabHeader},set_showTabHeader:function(t){this._showTabHeader=t,this.get_isInitialized()&&$dom.setCssClass(!t,this._header,"dnone")},get_autoFocus:function(){return this._autoFocus},set_autoFocus:function(t){this._autoFocus=t},get_mdiPanel:function(){return this._mdiPanel},set_mdiPanel:function(t){this._mdiPanel=t},get_tabHeaderHidden:function(){return this._tabHeaderHidden},set_tabHeaderHidden:function(t){this._tabHeaderHidden=t,this.get_isInitialized()&&(this._header.style.visibility=t?"hidden":"")},get_showTabCloseButton:function(){return this._showTabCloseButton},set_showTabCloseButton:function(t){this._showTabCloseButton=t},get_tabPosition:function(){return this._tabPosition},set_tabPosition:function(t){this._tabPosition=t},get_tabs:function(){return this._tabs},get_tabCount:function(){return this._tabs.length},getTab:function(t){return this._tabs[t]},findTabByName:function(t,e){for(var i=0,s=this.get_tabCount();i<s;i++){var n=this.getTab(i),o=n.get_name();if(e&&(o=$common.removeUrlParam(o,"__Params")),o==t)return n}return null},indexOfTab:function(t){return Array.indexOf(this._tabs,t)},addTab:function(t){var e=this._tabs.length;return Array.add(this._tabs,t),e},removeTab:function(t){var e=this.indexOfTab(t),i=e==this.get_tabCount()-1,s=t.get_selected(),n=t.get_element();$removeNode(n);var o=t.get_tabButton();if(o){var a=o.get_element(),r=o._closeButton;r&&(r.get_element().style.backgroundImage=""),$removeNode(a)}if(Array.remove(this._tabs,t),t.dispose(),s){this._selectedTab=null;var l=this.indexOfTab(this._prevTab);l>-1?this.set_selectedTabIndex(l):this.set_selectedTabIndex(i?e-1:e)}},get_selectedTab:function(){return this._selectedTab},set_selectedTab:function(t){if(-1==this.indexOfTab(t))throw Error.argumentOutOfRange("value",t);this._internalSetSelectedTab(t)},_internalSetSelectedTab:function(t){var e=this._selectedTab;if(e!=t){if(null!=e){this.get_autoFocus()&&this._deactivateControls(e);if(o=this.get_events().getHandler("selecting")){if(o(this,a=new _Z_170(e,t,null)),a.get_cancel())return}e.set_selected(!1),this._prevTab=e}var i=this.get_form();if(this._selectedTab=t,t){if(t.set_selected(!0),e&&(!t.isShown||t._hasResized))if(this.get_mdiPanel())t._isSilent&&(t.get_tabForm().raiseResize(),delete t._hasResized,delete t._isSilent);else{var s=$common.getElementChildControls(t.get_element());i.raiseResize(s,!0),delete t._hasResized}t.isShown=!0}this._scrollTabToVisible(t);var n=i[t.get_activeControl()],o=this.get_events().getHandler("selected");if(o){var a=new _Z_170(e,t,n);o(this,a),n=a.get_activeControl()}n?i._checkFocusControl(n):this.get_autoFocus()&&null!=e&&this._activateControls(t),$common.hideHint("tabChanged")}},_scrollTabToVisible:function(t){if(!this.get_mdiPanel()&&t){var e=t.get_buttonElement(),i=this._getTabCaptions();e.offsetTop>i.offsetHeight?i.scrollTop=e.offsetHeight:i.scrollTop=0}},_deactivateControls:function(t){for(var e=t.get_controls(),i=0,s=e.length;i<s;i++){var n=e[i];n.doFormDeactivate&&n.doFormDeactivate()}},_activateControls:function(t){for(var e=t.get_controls(),i=0,s=e.length;i<s;i++){(n=e[i]).doFormActivate&&n.doFormActivate()}for(var i=0,s=e.length;i<s;i++){var n=e[i];if(Sys.UI.Control.canFocus(n)){asyncCall(function(){n.focus()});break}}},get_selectedTabIndex:function(){var t=this.get_selectedTab();return t?t.get_tabIndex():-1},set_selectedTabIndex:function(t){this._initTabIndex=t,this.get_isInitialized()&&this._internalSetSelectedTabIndex(t)},_internalSetSelectedTabIndex:function(t){if(t<-1||t>=this.get_tabCount())throw Error.argumentOutOfRange("value");this._internalSetSelectedTab(this.getTab(t))},get_tabVisible:function(t){var e=this.getTab(t);return e&&e.get_visible()},set_tabVisible:function(t,e){this.getTab(t).set_visible(e)},add_selecting:function(t,e){return this.get_events().addHandler("selecting",t,e)},remove_selecting:function(t){this.get_events().removeHandler("selecting",t)},add_selected:function(t,e){return this.get_events().addHandler("selected",t,e)},remove_selected:function(t){this.get_events().removeHandler("selected",t)},add_tabClose:function(t,e){return this.get_events().addHandler("tabClose",t,e)},remove_tabClose:function(t){this.get_events().removeHandler("tabClose",t)},doTabClose:function(t){var e=this.get_events().getHandler("tabClose");e&&e(this,t)},set_tabContainer:function(t){this._tabContainer=t},get_tabContainer:function(){return this._tabContainer},_getTabSpace:function(){return this._tabSpace||(this._tabSpace=$common.getFirstChildByClassName(this._header,"TabSpace",!0)),this._tabSpace},_getTabCaptions:function(){return this._tabCaptionsContainer||(this._tabCaptionsContainer=$common.getFirstChildByClassName(this._header,"TabCaptions",!0)),this._tabCaptionsContainer}},Sys.UI.Controls.PageControl.registerClass("Sys.UI.Controls.PageControl",_Z_40),_Z_94=function(t){_Z_94.initializeBase(this,[t])},_Z_94.prototype={initialize:function(){_Z_94.callBaseMethod(this,"initialize"),this.add_selectStart(this._selectStart),this.add_contextMenu(this._contextMenu)},_selectStart:function(t){t.cancel()},_contextMenu:function(t){t.cancel()}},_Z_94.registerClass("_Z_94",_Z_240),Sys.UI.Controls.MenuBar=function(t){Sys.UI.Controls.MenuBar.initializeBase(this,[t]),this._roots=[],this._layoutMode=Sys.LayoutMode.normal,this._groupDirection=Sys.UI.Controls.LayoutDirection.vert,this._layoutDirection=Sys.UI.Controls.LayoutDirection.horz},Sys.UI.Controls.MenuBar.prototype={initialize:function(){Sys.UI.Controls.MenuBar.callBaseMethod(this,"initialize"),this._rootDom=$common.getElementsByClassName(this._element,"MenuRoots",!0)[0],this._rootSpacer=$common.getElementsByClassName(this._element,"MenuRootSpacer",!0)[0]},dispose:function(t){if(this._scrollBar&&this._scrollBar.dispose(),t)for(var e=this.get_form(),i=0,s=this._roots.length;i<s;i++)e.removeControl(this._roots[i],t);delete this._roots,delete this._menuMap,this._menus=null;var n=this._menuItemMap;if(n){for(var o in n){n[o].dispose()}delete this._menuItemMap}Sys.UI.Controls.MenuBar.callBaseMethod(this,"dispose")},refresh:function(t){var e=this.get_form(),i=this.get_element(),s=this.get_idPart(),n=$createControl("MenuBar",{ID:s,CssClass:i.className.replace("MenuBar","").replace("TreeBar","").replace("vert","").trim(),MenuCssClass:this.get_menuCssClass(),MouseHoverShow:this.get_mouseHoverShow(),LayoutMode:this.get_layoutMode(),GroupDirection:this.get_groupDirection(),MenuShowArrow:this.get_menuShowArrow(),ShowScrollBar:this.get_showScrollBar(),LayoutDirection:this.get_layoutDirection()},e);$createControl("DynamicMenu",{DataSource:t},e,n);var o=i.parentNode,a=$common.getNextSibling(i);e.removeControl(this,!0),a?n.insertBefore(a):n.appendTo(o),$notify.emit("craba.menubar.refresh",e[s])},set_menuShowArrow:function(t){this._menuShowArrow=t},get_menuShowArrow:function(){return this._menuShowArrow},get_layoutDirection:function(){return this._layoutDirection},set_layoutDirection:function(t){this._layoutDirection=t},get_layoutMode:function(){return this._layoutMode},set_layoutMode:function(t){var e=this._activeMenu;e&&e.hideMenu(),this._layoutMode=t,this.get_isInitialized()&&($dom.setCssClass(this.get_showTree(),this.get_element(),"TreeBar"),this._bindScrollBar())},get_activeMenu:function(){return this._activeMenu},get_showTree:function(){return this._layoutMode==Sys.LayoutMode.tree||this._layoutMode==Sys.LayoutMode.treeOnly},get_showTreeOnly:function(){return this._layoutMode==Sys.LayoutMode.treeOnly},get_mouseHoverShow:function(){return this._hoverShow},set_mouseHoverShow:function(t){this._hoverShow=t},get_menuCssClass:function(){return this._menuCssClass},set_menuCssClass:function(t){this._menuCssClass=t},get_menus:function(){return this._menus},set_menus:function(t){this._menus=t},get_groupDirection:function(){return this._groupDirection},set_groupDirection:function(t){this._groupDirection=t},doFormInit:function(t){var e=this._menus;if(e){for(var i=this._menuItemMap={},s="$"+t.get_id()+"$",n=0,o=e.length;n<o;n++)for(var a=e[n].items,r=0,l=a.length;r<l;r++){var h=a[r];if(h.properties.shortcut>0){var _=s+h.id,d=$common.createHiddenDiv();d.id=_;var u=$createFromParams(h,d,t,!0);u.doFormInit(t),i[_]=u,u.properties=h.properties}}this._bindScrollBar()}},_bindScrollBar:function(){this._scrollBar&&(this._scrollBar.dispose(),this._scrollBar=null),(this._showScrollBar||this.get_showTree()&&Sys.Browser.isIE)&&(this._scrollBar=Sys.ScrollBar.create(this._rootDom,this.get_element()),this._scrollBar._hoverShow=!0,this._scrollBar._showBar(),$dom.addCssClass(this._element,"hasScroll"))},set_showScrollBar:function(t){this._showScrollBar=t},get_showScrollBar:function(){return this._showScrollBar},_removeOldMenuItem:function(t){var e=this._menuItemMap;if(e){var i=this.get_form(),s=e[t];if(s){s.get_element();s.doFormUninit(i),i.removeControl(s,!0),delete e[t]}}},_getMenuParams:function(t){var e=this._menuMap;if(!e){e=this._menuMap={};for(var i=this._menus,s=0,n=i.length;s<n;s++){var o=i[s];e[o.id]=o}}var a=e[t];if(!a)throw Error.invalidOperation("找不到菜单 "+t);return a},_getMenu:function(t,e){var i=this._getMenuParams(t),s=this.get_form(),n=new _Z_92($createDelegate(this,this._removeOldMenuItem)),o=e!==undefined?e:this._groupDirection;return n.createFromParams(i,s,"RootMenu",o)},setMenuItemProperty:function(t,e,i){var s=this.get_form()[t];if(s){return s["set_"+e].apply(s,i),!0}var n=this._menus;if(!n)return!1;for(var o=0,a=n.length;o<a;o++)for(var r=n[o].items,l=0,h=r.length;l<h;l++){var _=r[l];if(_.id==t){_.properties[e]=i;break}}},addRoot:function(t){this._roots.push(t)}},Sys.UI.Controls.MenuBar.registerClass("Sys.UI.Controls.MenuBar",_Z_94),_Z_92=function(t){this.onCreateItem=t},_Z_92.prototype={createFromParams:function(t,e,i,s){return s==Sys.UI.Controls.LayoutDirection.horz?this.createFromParamsHorz(t,e,i):this.createFromParamsVert(t,e,i)},createFromParamsHorz:function(t,e,i){var s=new Sys.StringBuilder;this._renderMenuHorz(s,t,e,i);var n=$common.createHiddenDiv();$craba.innerHTMLs(n,s.toString());var o=n.firstChild;n.removeChild(o);var a=$createFromParams(t,o,e);$removeNode(n);for(var r=o.childNodes,l=0,h=0,_=r.length;h<_;h++)l=this.createMenuItem(r[h],t,e,l,a);return a},createFromParamsVert:function(t,e,i){var s=new Sys.StringBuilder;this._renderMenuVert(s,t,e,i);var n=$common.createHiddenDiv();$craba.innerHTMLs(n,s.toString());var o=n.firstChild;n.removeChild(o);var a=$createFromParams(t,o,e);return $removeNode(n),this.createMenuItem(o,t,e,0,a),a},createMenuItem:function(t,e,i,s,n){for(var o=t.firstChild,a=e.items,r=this.onCreateItem;null!=o;){var l=o.id;if(l){var h=a[s];h.properties.shortcut>0&&r&&r(l);var _=$createFromParams(h,o,i);_.doFormInit(i),_._icon=h.renderProps.icon,n.addItem(_),s++}o=$common.getNextSibling(o)}return s},_renderMenuVert:function(t,e,i,s){var n="$"+i.get_id()+"$",o=n+e.id;e.properties&&(s=$skin.joinCssClass(s,e.properties.cssClass)),t.append('<div class="Menu Vert ').append(s).append('" id="').append(o).append('">'),this._renderMenuHeadFoot(t,"thead");for(var a=e.items,r=0,l=a.length;r<l;r++){var h=a[r];this._renderMenuItemVert(t,h,n)}this._renderMenuHeadFoot(t,"tfoot"),t.append("</div>")},_renderMenuHeadFoot:function(t,e){t.append('<div class="').append(e).append('"></div>')},_renderMenuItemVert:function(t,e,i){var s=e.renderProps;s.beginGroup&&(t.append('<div class="MenuSeperator"'),s.hidden&&t.append(' style="display:none"'),t.append("></div>")),this._renderMenuItem(t,e,i)},_renderMenuHorz:function(t,e,i,s){var n="$"+i.get_id()+"$",o=n+e.id;e.properties&&(s=$skin.joinCssClass(s,e.properties.cssClass)),t.append('<div class="Menu Horz ').append(s).append('" id="').append(o).append('">'),this._renderMenuBlockStart(t);for(var a=e.items,r=0,l=a.length;r<l;r++){var h=a[r];this._renderMenuItemHorz(t,h,n)}this._renderMenuBlockEnd(t),t.append("</div>")},_renderMenuBlockStart:function(t){t.append('<div class="ChildBlock">'),this._renderMenuHeadFoot(t,"thead")},_renderMenuBlockEnd:function(t){this._renderMenuHeadFoot(t,"tfoot"),t.append("</div>")},_renderMenuItemHorz:function(t,e,i){e.renderProps.beginGroup&&(this._renderMenuBlockEnd(t),this._renderMenuBlockStart(t)),this._renderMenuItem(t,e,i)},_renderMenuItem:function(t,e,i){var s=e.renderProps,n=i+e.id,o=e.properties,a="MenuItem"+(s.disabled?" disabled":"");o.cssClass&&(a+=" "+o.cssClass),t.append('<div class="').append(a).append('" id="').append(n).append('"'),s.hidden&&t.append(' style="display:none"'),s.disabled&&t.append(' disabled="true"'),t.append(">"),t.append('<span class="MenuSpacerLeft"></span>');var r="MenuImage",l=s.icon,h=$craba.isIconfont(l);h&&(r+=" "+l),t.append('<span class="'+r+'">'),!h&&l&&t.append($craba.createIcon(l,null,this).outerHTML),t.append("</span>"),t.append('<span class="MenuCaption"'),o.hint&&t.append(' title="').append(o.hint).append('"'),t.append(">").append(o.text).append("</span>");var _,d=o.subMenu,u=s.shortcut,a=d?"MenuMore aicon-children":u?"MenuShortcut":"MenuNoMore";d||(_=u?s.shortcut:"&nbsp;"),t.append('<span class="').append(a).append('">').append(_).append("</span>"),t.append('<span class="MenuSpacerRight"></span>'),t.append("</div>")}},_Z_92.registerClass("_Z_92"),_Z_93=function(t){_Z_93.initializeBase(this,[t]),this._requireClick=!0},_Z_93.prototype={doClick:function(t){var e=this.get_showPage(),i=this.get_navigateUrl();if($craba._curMenuItem=this,e){var s=$common.getPathParam(e,"closeType");s&&(e=$common.removeUrlParam(e,"closeType"));var n=$common.showPage(this,e,this.get_text(),s);$settings.MDITabCaptionShowIcon&&this._icon&&!n._icon&&n.set_icon(this._icon)}else i&&$common.navigateUrl(i,"_blank","get");_Z_93.callBaseMethod(this,"doClick",[t])},get_icon:function(){return this._icon},get_hasAction:function(){return this._showPage||this._navigateUrl},updated:function(){var t=this.get_langText();null!==t&&this.set_text(t)},get_groupDirection:function(){return this._groupDirection},set_groupDirection:function(t){this._groupDirection=t},get_text:function(){return this._text},set_text:function(t){if(this.properties)this.properties.text=t;else if(this._text=t,this.get_isInitialized()){var e=this.get_element();if(e){var i=$common.getFirstChildByClassName(e,"MenuCaption");i||(i=$common.getFirstChildByClassName(e,"MenuRootCaption")),$craba.innerHTMLs(i,t)}}},set_cssClass:function(t){},get_cssClass:function(){},get_param:function(){return this._param},set_param:function(t){this._param=t},get_showPage:function(){return this._showPage},set_showPage:function(t){this._showPage=t},set_visible:function(t){this.properties?this.properties.visible=t:this.get_element().style.display=t?"":"none"},get_navigateUrl:function(){return this._navigateUrl},set_navigateUrl:function(t){this._navigateUrl=t},raiseSubMenu:function(t){var e=this.get_events().getHandler("subMenu");e&&e(this,t)},add_subMenu:function(t){this.get_events().addHandler("subMenu",t)},remove_subMenu:function(t){this.get_events().removeHandler("subMenu",t)}},_Z_93.registerClass("_Z_93",_Z_240),Sys.UI.Controls.MenuRoot=function(t){Sys.UI.Controls.MenuRoot.initializeBase(this,[t]),this._requireMouseEnter=!0,this._requireMouseLeave=!0,this._requireMouseDown=!0,this._isActive=!1},Sys.UI.Controls.MenuRoot.prototype={initialize:function(){Sys.UI.Controls.MenuRoot.callBaseMethod(this,"initialize"),this.get_menu()&&(this._documentClickHandler=$createDelegate(this,this._documentClick),this._onFocusoutHandler=$createDelegate(this,this._focusout))},dispose:function(t){Sys.UI.Controls.MenuRoot.activeMenu=null,this._clearEvents();var e=this.get_menu();if(e){var i=this.get_form()[e];i&&(t?this.get_form().removeControl(i,!0):i.dispose())}Sys.UI.Controls.MenuRoot.callBaseMethod(this,"dispose")},get_icon:function(){if(this._icon)return this._icon;for(var t=$common.getFirstChildByClassName(this.get_element(),"MenuRootImage").className.split(" "),e=0,i=t.length;e<i;e++){var s=t[e];if(s&&s.indexOf("icon-")>0)return this._icon=s,s}return null},doFormInit:function(){this.get_menuBar().addRoot(this)},get_menu:function(){return this._menu},set_menu:function(t){this._menu=t},_getEventTargetMenu:function(t){for(var e=t.target,i=0;i<3;){if(e==this._element)return e;if(!e||!e.tagName)return null;if("BODY"==e.tagName)return null;e=e.parentNode,i++}return null},get_menuBar:function(){var t=this.get_parent();return this._parent||this.set_parent(t),t},get_isActive:function(){return this._isActive},doMouseEnter:function(t){var e=this.get_menuBar();e.get_showTree()||this._isActive||this.get_enabled()&&(this._checkHideOtherMenu()?this.showMenu():this._isActive||e.get_mouseHoverShow()&&this.showMenu())},doMouseLeave:function(t){this.get_menuBar().get_showTree()||this.get_enabled()&&this._isActive&&this._showNormal()},doMouseDown:function(t){Sys.UI.Controls.MenuRoot.callBaseMethod(this,"doMouseDown",[t]);if(this._getEventTargetMenu(t)&&this.get_enabled()&&t.button==Sys.UI.MouseButton.leftButton){var e=this.get_menuBar();e.get_showTree()||!this._isActive?(this._showActive(),this.showMenu()):e.get_mouseHoverShow()||(this.hideMenu(),this._showOver())}},doClick:function(t){Sys.UI.Controls.MenuRoot.callBaseMethod(this,"doClick",[t]);this.get_menuBar().get_showTree()||!this.get_hasAction()&&this.get_menu()||(this._isActive?this.hideMenu():this._showNormal())},_checkHideOtherMenu:function(){var t=this.get_menuBar()._activeMenu;return t!=this&&(t&&t.hideMenu(),null!=t)},_getMenuCaption:function(){return this.get_element().firstChild},_showNormal:function(){this._isActive=!1,this.removeCssClass("MenuRootActive")},_setHoverOrDown:function(t){Sys.UI.Controls.MenuRoot.activeMenu&&Sys.UI.Controls.MenuRoot.activeMenu._showNormal(),Sys.UI.Controls.MenuRoot.activeMenu=this,this.addCssClass("MenuRootActive")},_showOver:function(){this._setHoverOrDown(!1)},_showActive:function(){this._setHoverOrDown(!0)},_getMenuControl:function(){var t=this.get_menu();if(t){var e=this.get_form()[t],i=this.get_menuBar();if(!(e=e||i._getMenu(t))._newInited){var s=i.get_menuCssClass();e._newInited=!0,e._menuCssClass=s,e.addCssClass(s),e.menuBar=i}return e}return null},showMenu:function(){var t=this.get_menuBar(),e=t.get_showTree();$craba._checkHideOtherBar(t),t.activeItem&&$dom.removeCssClass(t.activeItem.get_element(),"active"),t.get_showTree()?t._activeMenu!==this&&t.get_showTreeOnly()&&this._checkHideOtherMenu():this._isActive=!0,t._activeMenu=this;var i=this._getMenuControl();if(i){if(i.menuItem=this,$dom.addCssClass(this.get_element(),"Show"),$dom.setCssClass(!e,i.get_element(),"ShowPopup"),e)return i._expanded||this.raiseSubMenu(i),i.showTree(this);var s=i.get_element();t._menuShowArrow&&!i._arrow&&(i._arrow=$common.createClassDiv("Arrow",s),$dom.addCssClass(s,"hasArrow")),this.raiseSubMenu(i),s.parentNode!==document.body&&(document.body.appendChild(s),$dom.setVisible(s,!0),i._expanded=!1);var n=this.get_bounds(),o=n.x,a=n.y+n.height-2,r=t.get_layoutDirection()==Sys.UI.Controls.LayoutDirection.vert||e;r?(o+=n.width,a-=n.height-2,$dom.addCssClass(s,"vert")):$dom.removeCssClass(s,"vert"),i.layoutVert=r,i.showAt(o,a),this._bindEvents()}},hideMenu:function(){this._isActive=!1,$dom.removeCssClass(this.get_element(),"Show");var t=this.get_menuBar();t._activeMenu=null;var e=this._getMenuControl();if(e){if(t.get_showTree())return e.hideTree(this),void this._showNormal();e.hide(),this._showNormal(),this._clearEvents()}},_bindEvents:function(){this._isBindEvents||(this._isBindEvents=!0,$common.addClickHandler(document,this._documentClickHandler),document.attachEvent?document.attachEvent("onfocusout",this._onFocusoutHandler):$common.addBlurHandler(window,this._onFocusoutHandler))},_clearEvents:function(){this._isBindEvents&&(this._isBindEvents=!1,$common.removeClickHandler(document,this._documentClickHandler),document.attachEvent?document.detachEvent("onfocusout",this._onFocusoutHandler):$removeHandler(window,"blur",this._onFocusoutHandler))},_focusout:function(t){Sys.Browser.isIE?t&&t.toElement&&"IFRAME"==t.toElement.tagName&&this.hideMenu():this.hideMenu()},_documentClick:function(t){if(!this.get_isDisposed()){var e=this._getEventTargetMenu(t);if(!e||!$dom.hasClass(e,"MenuRoot")){var i=Sys.UI.Controls.MenuItem._getEventTargetMenuItem(t);i&&i.get_hasSubMenu()||(this.hideMenu(),t.cancel())}}}},Sys.UI.Controls.MenuRoot.registerClass("Sys.UI.Controls.MenuRoot",_Z_93),Sys.UI.Controls.Menu=function(t){Sys.UI.Controls.Menu.initializeBase(this,[t]),this._requireMouseOver=!0,this._requireMouseLeave=!0,this._requireClick=!0,this._items=[]},Sys.UI.Controls.Menu.prototype={dispose:function(){this._clearClickHandler(),this._inited&&(this.get_isPopup()&&this._documentClick(),$removeNode(this.get_element())),Sys.UI.Controls.Menu.callBaseMethod(this,"dispose"),delete this._items},get_controls:function(){return $common.getElementChildControls(this.get_element())},addItem:function(t){this._items.push(t)},set_selected:function(t){t&&(this._prevItem&&this._prevItem.removeCssClass("selected"),t.addCssClass("selected"),this._prevItem=t)},get_cssClass:function(){},set_cssClass:function(){},removeChilds:function(t){this._initChildControls();for(var e=this._controls,i=0;i<e.length;i++){var s=e[i];if(s.get_subMenu&&s.get_subMenu()){var n=t[s.get_subMenu()];n&&t.removeControl(n,!0)}t.removeControl(s,!0)}},_initChildControls:function(){this._controls||(this._controls=$common.getElementChildControls(this.get_element()))},_init:function(){this._inited||(document.body.appendChild(this._element),this._inited=!0)},doMouseOver:function(t){if(Sys.UI.Controls.Menu.callBaseMethod(this,"doMouseOver",[t]),!this.menuBar||!this.menuBar.get_showTree()){var e=$common.getFirstParentByClassLevel(t.target,"MenuItem",2);e&&$dom.getEnabled(e)&&e.control!=this._curItem&&(this._curItem=e.control,this._deactivate(),this._showMenuItemSubMenu(e))}},doMouseLeave:function(t){if(this.menuBar&&this.menuBar.get_mouseHoverShow()&&!this._activeSubMenu&&!this.parentMenu){var e=t.rawEvent;e&&e.relatedTarget&&$dom.hasClass(e.relatedTarget,"TitleHint")||this._documentClick(t)}},doClick:function(t,e){var i=$common.getFirstParentByClassLevel(t.target,"MenuItem",2);if(!i||$dom.getEnabled(i)){if(i){var s=this.get_events().getHandler("_click");s&&s(this,[t,i.control])}$dom.hasClass(i,"MenuText")?t.cancel():i&&this.menuBar&&this.menuBar.get_showTree()&&(this._curItem=i.control,this._showMenuItemSubMenu(i,e))}else t.cancel()},_calcPopupPosition:function(t,e,i,s,n){var o=getClientBounds(),a=getClientScrollPosition(),r=this.layoutVert,l=e;if(e+2>=o.height?(l=o.height+a.y-s,this.menuItem&&!r&&(l-=this.menuItem.get_height())):e+s>o.height+a.y&&(l=o.height+a.y-s-10),(l=Math.max(l,0))>o.height+a.y&&(l=o.height+a.y-s-10),r&&this._arrow&&l<e){var h=10;this.menuItem&&(h=this.menuItem.get_height()/2-5),this._arrow.style.top=_px(e-l+h)}else this._arrow&&this._arrow.removeAttribute("style");return{x:this._getNewX(t,i,o,n,r,l),y:l}},_getNewX:function(t,e,i,s,n,o){var a=t;return t+e>i.width&&(s>0?a=t+s-e:this.menuItem&&n?a=i.width-e-this.menuItem.get_width()-2:(a=i.width-e-2,o<0&&(a-=15))),a},add_popup:function(t){this.get_events().addHandler("popup",t)},remove_popup:function(t){this.get_events().removeHandler("popup",t)},popup:function(t,e,i){if(t){var s=$common.getBounds(t.target);0==t.clientX&&0==t.clientY&&(e=!1);var n=!1===e?s.x:t.clientX,o=!1===e?s.y+s.height:s.y+s.height/2,a=!1===i?o:Math.max(o,t.clientY);this.popupAt(n,a),t.stopPropagation()}},popupAt:function(t,e,i,s){var n=this.get_events().getHandler("popup");if(n){var o=new _Z_152;if(n(this,o),o.get_cancel())return}$craba._checkHideOtherPopup(this),this._inited||(this._init(),this._isPopup=!0);var a=this.get_element();0!=a.offsetWidth&&0!=a.offsetHeight||this.show(-2e3,-2e3);var r=this._calcPopupPosition(t,e,a.offsetWidth,a.offsetHeight,i);e!=r.y&&s&&(r.y=r.y-s),r.y<0&&(r.y=0),this.show(r.x,r.y),asyncCall($createDelegate(this,this._bindClickHandler))},_bindClickHandler:function(){this._documentClickHandler||(this._documentClickHandler=$common.addClickHandler(document,this._documentClick,this))},_clearClickHandler:function(){this._documentClickHandler&&($common.removeClickHandler(document,this._documentClickHandler),this._documentClickHandler=null)},_documentClick:function(t){this._clearClickHandler(),this.hide(),window.__lastMenu=null},showTree:function(t){if(this._expanded)return t.hideMenu();this._expanded=!0,this._init();var e=this.get_element(),i=t.get_element();e.parentNode!==i.parentNode&&i.parentNode.insertBefore(e,$common.getNextSibling(i)),$dom.setVisible(e,!0),window.__lastMenu=this},hideTree:function(t){this._expanded=!1,this._deactivate(),this.get_element()&&$dom.setVisible(this.get_element(),!1)},showAt:function(t,e){this._init();var i=this.get_element();i.style.height="auto";var s=this._calcPopupPosition(t,e,i.offsetWidth,i.offsetHeight,0);this.show(s.x,s.y)},show:function(t,e){this._init();var i=this.get_element(),s=i.style,n=getClientBounds();s.left=_px(t),s.top=_px(e),s.zIndex=this.menuItem?$app.MenuMaxIndex:$app.MenuMaxIndex-1,s.overflow="",s.height="",s.width="";var o=e+i.scrollHeight;if(o>n.height&&o>n.height+getClientScrollPosition().y){s.overflow="auto";var a=e,r=this.layoutVert;0==a&&this.menuItem&&!r&&(a=this.menuItem.get_height()),s.height=_px(n.height-a);var l=Math.min(i.scrollWidth+10,n.width);$common.setWidth(i,l),r&&this._arrow&&i.scrollHeight-20<i.offsetHeight&&s.removeProperty("overflow");var h=this._getNewX(t,i.offsetWidth,n,0,r,e);h!=t&&(s.left=_px(h))}window.__lastMenu=this,$craba.hideDropPopup()},_deactivate:function(){null!=this._activeSubMenu&&(this._activeSubMenu.hide(),this._activeSubMenu=null)},hide:function(t){window.__lastMenu==this&&(window.__lastMenu=null),this._curItem=null,this._deactivate(),this._clearClickHandler();var e=this.get_events().getHandler("hide");e&&e(this),this.menuItem&&this.menuItem.removeCssClass("Show"),this.get_element()&&(this.get_element().style.top="-10000px",t&&this.parentMenu&&this.parentMenu.hide&&this.parentMenu.hide(t))},get_isPopup:function(){return this._isPopup},set_isPopup:function(t){this._isPopup=t},_getSubMenu:function(t,e){var i=this.get_form()[e];if(this.get_isPopup())return i;if(i)return i;if(this.menuBar)return this.menuBar._getMenu(e,t.get_groupDirection());var s=t.get_menuRoot();if(!s)return null;var n=s.get_menuBar();return n?n._getMenu(e,t.get_groupDirection()):null},_showMenuItemSubMenu:function(t,e){var i=t.control;if(i.menuBar=this.menuBar,this.menuBar&&this.menuBar.get_showTree()){if(this.menuBar.activeItem&&$dom.removeCssClass(this.menuBar.activeItem.get_element(),"active"),this.menuBar.activeItem=i,$dom.addCssClass(t,"active"),e)return;this.menuItem&&this.menuItem._showActive()}var s=i?i.get_subMenu():null;if(s){this.beforeSubMenuHandler(i,s);var n=this._activeSubMenu=this._getSubMenu(i,s);if(n){n._isShow||i.raiseSubMenu(n),n.menuBar=this.menuBar,n.menuItem=this.menuItem,n.parentMenu=this,this._menuCssClass&&n.addCssClass(this._menuCssClass),n._init();var o=n.get_element();if(this.menuBar&&this.menuBar.get_showTree())return o.parentNode===document.body&&t.parentNode.insertBefore(o,$common.getNextSibling(t)),$dom.setVisible(o,!n._isShow),$dom.setCssClass(!n._isShow,t,"Show"),void(n._isShow=!n._isShow);o.parentNode!==document.body&&($dom.setVisible(o,!0),document.body.appendChild(o));var a=$dom.getBounds(t),r=a.x+a.width,l=a.y;n.showAt(r,l),i.raiseSubMenu(n);var h=$dom.getBounds(o),_=$dom.getBounds(document.body);r+h.width>_.width&&(r=a.x-h.width),(l=h.y)+h.height>_.height&&(l=a.y-h.height+a.height),l<0&&(l=0),n.show(r,l);var d=parseInt($dom._getCurrentStyle(this.get_element()).zIndex);isNaN(d)&&(d=0),o.style.zIndex=d+1}}},beforeSubMenuHandler:function(t,e){var i=this.get_events().getHandler("beforeSubMenu");i&&i(this,[t,e])},add_hide:function(t){this.get_events().addHandler("hide",t)},add_beforeSubMenu:function(t,e){this.get_events().addHandler("beforeSubMenu",t,e)}},Sys.UI.Controls.Menu.registerClass("Sys.UI.Controls.Menu",_Z_94),Sys.UI.Controls.Menu.create=function(t,e,i){if(!t)throw Error.argumentNull("form");if(!e)throw Error.argumentNull("properties");if(!e.id)throw Error.argumentNull("properties.id");if(!e.items||0==e.items.length)throw Error.argumentNull("properties.items");var s=e.id;delete e.id;var n=e.items;delete e.items;var o={};o.type=Sys.UI.Controls.Menu,o.properties=e,o.events=i,o.id=s,o.items=n;for(var a=0,r=n.length;a<r;a++){var l=n[a];l.type=Sys.UI.Controls.MenuItem;var h=a;l.id!==undefined&&(h=l.id,delete l.id),l.id=s+"_"+h;var _=l.renderProps={},d=l.properties;d&&d.icon&&(_.icon=d.icon,delete d.icon)}return(new _Z_92).createFromParams(o,t,"NormalMenu")},Sys.UI.Controls.MenuItem=function(t){Sys.UI.Controls.MenuItem.initializeBase(this,[t]),this._subMenu=null,this._shortcut=0},Sys.UI.Controls.MenuItem.prototype={doFormInit:function(t){t.addShortcut(this.get_shortcut(),this.click,this)},doFormUninit:function(t){this.get_enabled()&&t.removeShortcut(this.get_shortcut())},get_menuRoot:function(){var t=this.get_id(),e=t.indexOf("_");if(e>0){var i=t.substr(0,e),s=$find(i);return s&&Sys.UI.Controls.MenuRoot.isInstanceOfType(s)?s:null}return null},doClick:function(t){if(!this.get_hasSubMenu()){var e=this.get_menuRoot();e&&e.get_isActive()&&e.hideMenu()}Sys.UI.Controls.MenuItem.callBaseMethod(this,"doClick",[t,"item"]),window.__lastMenu&&window.__lastMenu.doClick(t,!0)},get_subMenu:function(){return this._subMenu},set_subMenu:function(t){this._subMenu=t},get_cssClass:function(){return this._cssClass},set_cssClass:function(t){this._cssClass=t},get_hasSubMenu:function(){return null!=this._subMenu},get_shortcut:function(){return this._shortcut},set_shortcut:function(t){this._shortcut=t},set_icon:function(t,e){this.setIcon(t,e)},setIcon:function(t,e){var i=$common.getFirstChildByClassName(this.get_element(),"MenuImage");$craba.isIconfont(t)?($dom.removeCssClass(i,e),$dom.addCssClass(i,t),this._icon=t):!t&&i.className.indexOf("aicon-")>-1?i.className="MenuImage":$craba.createIcon(t,i,this)}},Sys.UI.Controls.MenuItem.registerClass("Sys.UI.Controls.MenuItem",_Z_93),Sys.UI.Controls.MenuItem._getEventTargetMenuItem=function(t){var e=$common.getFirstParentByClassLevel(t.target,"MenuItem",2);if(e){var i=e.control;return i&&Sys.UI.Controls.MenuItem.isInstanceOfType(i)?i:null}},_Z_91=function(t){_Z_91.initializeBase(this,[t]),this._windowTitle=document.title},_Z_91.prototype={_internalShowStartPage:function(){var t=this.get_locationUrl();this._savedShowPage=this._showPage,t&&(this._showPage=t),this._showPage&&(this._isShowingStartPage=this._showPage==this._savedShowPage,this.doShowStartPage())},get_locationUrl:function(){var t=location.hash;return t?(t.length>0&&"#"==t.charAt(0)&&(t=t.substr(1)),(t=decodeURIComponent(t))||null):this._savedShowPage},doShowStartPage:function(){var t=this._showPage;if(this._isShowingStartPage){this.doBeginShowStartPage();var e=t.split(","),i=e.length;if(1==i)this.showPage(t),this.doEndShowStartPage();else{var s=0,n=$createDelegate(this,function(){var t=e[s].trim();this.showPage(t).add_loaded(function(){++s<i?n():this.doEndShowStartPage()},this)});n()}}else{var o=t.indexOf("__Params="),a=null;if(o>0){var r=t.substring(o+"__Params=".length);if(r){(o=r.indexOf("&"))>0&&(r=r.substr(0,o)),r=unescape(r),a=$crabaJSON.deserialize(r,!0)}}this.showPage(t,null,a)}this._showPage=null,this._isShowingStartPage=!1},doBeginShowStartPage:function(){},doEndShowStartPage:function(){},_internalShowPage:function(t,e,i,s,n,o){var a=new t;return a._parentForm=this.get_form(),a.set_pageTimeout(n>0?n:$webManager.get_defaultTimeout()),a.set_clientSize(o),a._loadingElement=this.get_element(),a.showPage(e,i,s),a},_internalSaveLocation:function(t){if(t){var e=t?encodeURIComponent(t):"#";if(!(Sys.Browser.isIE&&Sys.Browser.version>=7&&e.length>2046))if($settings.EnableSaveMDIPageLocation)try{location.hash=e,document.title=this._windowTitle}catch(i){}else $common._MDIPageLocation=e}},get_showPage:function(){return this._showPage},set_showPage:function(t){this._showPage=t}},_Z_91.registerClass("_Z_91",Sys.UI.Control),Sys.UI.Controls._MDIChild=function(){Sys.UI.Controls._MDIChild.initializeBase(this),this._isMDIForm=!0},Sys.UI.Controls._MDIChild.prototype={dispose:function(){var t=(new Date).getTime();this._tabPage=null,Sys.UI.Controls._MDIChild.callBaseMethod(this,"dispose"),$debug.log("表单释放时间: "+((new Date).getTime()-t))},get_caption:function(){return this._caption},set_caption:function(t,e){this._caption=t,this._tabPage&&this._tabPage.set_caption(t)},set_icon:function(t){if(this._icon=t,this._tabPage&&!this._tabPage._isFrozen){var e=this._tabPage.get_buttonElement();e&&(t?($dom.removeCssClass(e,$settings.DefaultMDITabIcon),$dom.addCssClass(e,t)):e.className=this._tabPage._getCaptionClass())}},get_element:function(){return this._tabPage?this._tabPage.get_element():null},canClose:function(){if(this._forceClose)return!0;var t=new _Z_167("tab");return this.doClose(t),t.get_canClose()},get_isActive:function(t){var e=this._tabPage;return t?!!e&&e.get_selected():!this.get_form()._hasMDI&&(!$app.get_hasModalPopup()&&!!e&&e.get_selected())},set_isActive:function(t){var e=this._tabPage;t&&e&&e.get_pageControl().set_selectedTab(e)},doCancel:function(){this.close()},close:function(t){this._forceClose=t,this._tabPage&&this._tabPage.close(t)},doLoadedControls:function(t){Sys.UI.Controls._MDIChild.callBaseMethod(this,"doLoadedControls",arguments)}},Sys.UI.Controls._MDIChild.registerClass("Sys.UI.Controls._MDIChild",Sys.UI.CustomForm),Sys.UI.Controls.MDIPanel=function(t){Sys.UI.Controls.MDIPanel.initializeBase(this,[t]),this._pageAllowClose=!0,this._showPageAllowClose=!0,this._showTabHeader=!0,this._activeGroupIndex=0,this._offsetWidth=0},Sys.UI.Controls.MDIPanel.prototype={initialize:function(){Sys.UI.Controls.MDIPanel.callBaseMethod(this,"initialize"),this._removeHistory(),this.get_form().__mainPanel=this,this.get_form()._hasFlexBlock=!0,$settings.CrabaServer&&$dom.addCssClass(document.body.parentNode,"MDIDocument"),this._tabCaptionChangedHandler=$createDelegate(this,this._tabCaptionChanged),this._windowKeyDownHandler=$common.addKeyDownHandler(document,this._doWindowKeyDown,this),this._initElements()},dispose:function(){this._windowResizeHandler&&($common.removeResizeHandler(this._getResizeElement(),this._windowResizeHandler),this._windowResizeHandler=null),this._windowKeyDownHandler&&($common.removeKeyDownHandler(document,this._windowKeyDownHandler),this._windowKeyDownHandler=null),$clearHandlers(this._barElement);var t=this._pageControl;if(t){for(var e=t.get_tabCount()-1;e>=0;e--){var i=t.getTab(e),s=i._form;s&&(s._tabPage=null),i._form=null,i.dispose()}t.dispose(),this._pageControl=null}this._tabNav&&(this._tabNav.dispose(),this._tabNav=null),this._tabsBlock=null,this._statusBars=null,this._tabCaptionChangedHandler=null,this._pageCache=null,Sys.UI.Controls.MDIPanel.callBaseMethod(this,"dispose")},_removeHistory:function(){history.pushState&&(history.pushState(null,null,document.URL),$addHandler(window,"popstate",function(){history.pushState(null,null,document.URL)}))},doFormInit:function(){this._pageGroups&&this._pageGroups.length>0?(this._pageCache={},this._showActivePageGroup()):this._internalShowStartPage(),this.initFrozenTab()},doFormLoaded:function(){this._initInnerBlock()},_initInnerBlock:function(){var t=this.get_innerBlockID();if(t){var e=this.get_form()[t];if(e){var i=e.get_element();$dom.addCssClass(i,"MDIInnerBlock"),this._barElement.appendChild(i),i.removeAttribute("style")}else $common.showError(String.format(Sys.Res.mdiInner,t))}},initFrozenTab:function(){var t=$userCache.get($craba._frozenTabCacheName);if(t&&0!=t.length)if($settings.FrozenTabMaxCount<1)$userCache.deleteCache($craba._frozenTabCacheName);else{var e=this._tabNav;e||(e=this._tabNav=new _Z_104(this)),e.showFrozenTab(t,this.get_locationUrl())}},addStatusBar:function(t){this._statusBars||(this._statusBars=[]),Array.add(this._statusBars,t)},_initElements:function(){var t=this.get_element(),e=t.parentNode;"TD"==e.tagName&&(e.style.padding="0px");var i=$common.getChildrenByTagName(t,"div"),s=this._barElement=i[0],n=this._childsElement=i[1];this._tabsBar=$common.getElementsByClassName(s,"MDITabBar",!0)[0],this._tabsBlock=$common.getFirstChildByTagName(this._barElement,"div");var o=$dom._getCurrentStyle(n);this._childsPaddingTopBottom=parseInt(o.paddingTop)+parseInt(o.paddingBottom),this._childsPaddingLeftRight=parseInt(o.paddingLeft)+parseInt(o.paddingRight),this._windowResizeHandler=$common.addResizeHandler(this._getResizeElement(),this.raiseResize,this),this._bindBarEvents();var a=this._pageControl=$create(Sys.UI.Controls.PageControl,{showTabCloseButton:!0,autoFocus:!1,mdiPanel:this},n,null,this.get_form(),!0);a.add_selecting(this._doTabSelecting,this),a.add_selected(this._doTabSelected,this),a.add_tabClose(this._doTabClose,this),a._initHeaderBar(s)},_bindBarEvents:function(){$settings.DefaultMDITabContextMenu&&$common.addContextMenuHandler(this._barElement,this._doContextHandler,this),$settings.DefaultMDIContextMenu||$common.addContextMenuHandler(document,this._doDocumentContextHandler,this)},_doDocumentContextHandler:function(t){if(!window._testing&&(!t.target||"INPUT"!=t.target.tagName&&"TEXTAREA"!=t.target.tagName)){var e=window.getSelection?window.getSelection():document.selection.createRange().text;e&&e.toString()||t.cancel()}},_doContextHandler:function(t){var e=this._tabNav;e||(e=this._tabNav=new _Z_104(this)),e.raiseContextMenu(t)},_getResizeElement:function(){return window},_doWindowKeyDown:function(t){var e=t.keyCode;if(122==e)return $common.toggleFullScreen(),void t.cancel();var i=t.target;if(e==Sys.UI.Key.tab&&$craba.asyncFun(this,function(){$craba.activeTab(i.control)},50,"activeTab"),e==Sys.UI.Key.backspace){var s=i.type||i.getAttribute("type");if("text"==s||"number"==s||"textarea"==s||"password"==s){var n=s.readOnly!==undefined&&s.readOnly,o=s.disabled!==undefined&&s.disabeld;(n||o)&&t.preventDefault()}else{i.getAttribute("contenteditable")||t.preventDefault()}}},raiseResize:function(t){if(t){var e=this._childsElement.offsetWidth,i=this._childsElement.offsetHeight;this._resizeCurForm(e,i,0,0);var s=$common.isFullScreen();$dom.setCssClass(s,document.body,"fullscreen"),$craba.raiseMouseDown(t)}},_resizeCurForm:function(t,e,i,s){var n=this._pageControl;if(n){var o=n.get_selectedTab();if(o)for(var a=0,r=n.get_tabCount();a<r;a++){var l=n.getTab(a);l==o?l.doMDIResize(t,e,i,s):l.hasResized=!0}}},add_selected:function(t,e){return this.get_events().addHandler("selected",t,e)},remove_selected:function(t){this.get_events().removeHandler("selected",t)},add_beforeShowPage:function(t,e){return this.get_events().addHandler("_beforeShowPage",t,e)},remove_beforeShowPage:function(t){this.get_events().removeHandler("_beforeShowPage",t)},doBeforeShowPage:function(t){var e=this.get_events().getHandler("_beforeShowPage");if(!e)return t;var i={url:t};return e(this,i),i.url},add_tabItemRightClick:function(t,e){return this.get_events().addHandler("tabItemRightClick",t,e)},remove_tabItemRightClick:function(t){this.get_events().removeHandler("tabItemRightClick",t)},get_offsetWidth:function(){return this._offsetWidth},set_offsetWidth:function(t){this._offsetWidth=t,this.get_isInitialized()&&this.raiseResize(!0)},get_pageAllowClose:function(){return this._pageAllowClose},set_pageAllowClose:function(t){this._pageAllowClose=t},get_showPageAllowClose:function(){return this._showPageAllowClose},set_showPageAllowClose:function(t){this._showPageAllowClose=t},get_pageGroups:function(){return this._pageGroups},set_pageGroups:function(t){this._pageGroups=t},set_showTabHeader:function(t){this._showTabHeader=t,this.get_isInitialized()&&($dom.setVisible(this._barElement,t),this.raiseResize(!0))},get_showTabHeader:function(){return this._showTabHeader},get_activeGroupIndex:function(){return this._activeGroupIndex},set_activeGroupIndex:function(t){this._activeGroupIndex!=t&&(this._activeGroupIndex=t,this.get_isInitialized()&&this._refreshPageGroup())},get_innerBlockID:function(){return this._innerBlockID},set_innerBlockID:function(t){this._innerBlockID=t},doBeginShowStartPage:function(){this.get_showPageAllowClose()||(this._disableStartPageClose=!0)},doEndShowStartPage:function(){this._disableStartPageClose=!1},doInitNewTabPage:function(t){this._pageAllowClose&&!this._disableStartPageClose||(t.allowClose=!1)},_refreshPageGroup:function(){for(var t=this._pageControl.get_tabs(),e=0,i=t.length;e<i;e++){var s=t[e];s.set_selected(!1);var n=s.get_tabButton();if(n){var o=n.get_element();this._tabsBlock.removeChild(o)}}Array.clear(t),this._showActivePageGroup()},_showActivePageGroup:function(){var t=this.get_pageGroups(),e=this.get_activeGroupIndex();if(t&&!(e<0)){var i=t[e];if(0!=i.length){this.set_showPageAllowClose(!1),this.doBeginShowStartPage();for(var s=this._pageCache,n=this._pageControl,o=0,a=i.length;o<a;o++){var r=i[o],l=r.url,h=$common.encodeUrlParams(l,r.params),_=s[h];_?(this._restoreTabPage(_),0==o&&n.set_selectedTab(_)):(0==o?(this.showPage(l,r.caption,null,r.pageTimeout),_=n.get_selectedTab()):(_=this._createTabPage(l,r.caption))._pageInfo=r,_._fullUrl=h,s[h]=_)}this.doEndShowStartPage()}}},_restoreTabPage:function(t){var e=t.get_tabButton();if(e){var i=e.get_element();this._tabsBlock.appendChild(i)}this._pageControl.addTab(t)},_findTabPage:function(t,e){t||(t="null");var i=this.get_form().convertUrl(t);return i=$common.removeUrlParam(i,$settings.StaticVersionName),this._pageControl.findTabByName(i,e)},_getTabPage:function(t,e){var i=this._findTabPage(t);return i?this._pageControl.set_selectedTab(i):i=this._createTabPage(t,e),i},get_pageCount:function(){return this._pageControl.get_tabCount()},set_activeForm:function(t){for(var e=this._pageControl,i=e.get_tabCount(),s=0;s<i;s++){var n=e.getTab(s);if(n._form==t){e.set_selectedTab(n);break}}},get_activeTab:function(){return this._pageControl.get_selectedTab()},get_activeForm:function(){var t=this._pageControl.get_selectedTab();return t?t._form:null},get_tabs:function(){return this._pageControl.get_tabs()},get_forms:function(){for(var t=this._pageControl,e=t.get_tabCount(),i=new Array(e),s=0;s<e;s++)i[s]=t.getTab(s)._form;return i},_createTabPage:function(t,e){var i=this._pageControl,s=$common.createClassDiv("MDIChild Hided");this._childsElement.appendChild(s);var n=$common.createClassDiv(this._getCaptionClass());n.innerText=e||"...",this._tabsBlock.appendChild(n);var o={pageControl:i,buttonElement:n,isMDITab:!0};this.doInitNewTabPage(o);var a=this.get_form(),r=$create(Sys.UI.Controls.TabPage,o,s,null,a,!0),l=a.convertUrl(t);return r.set_name(l),r},_getCaptionClass:function(){var t="MDITabCaption";return $settings.MDITabCaptionShowIcon&&(t+=" "+$settings.DefaultMDITabIcon),t},showContent:function(t,e,i){var s=this._getTabPage(t,e);$craba.innerHTMLs(s.get_element(),i),this._pageControl.set_selectedTab(s)},showPage:function(t,e,i,s){var n={};t&&"object"==typeof t&&(t=(n=t).url);var o=this._findTabPage(t),a=this._pageControl;if(o)return a.set_selectedTab(o),o._form;var r=$settings.MaxMDIPageCount;$common.checkError(a.get_tabCount()>r,String.format(Sys.Res.mdiTabMax,r)),!1===n.allowClose&&(this._disableStartPageClose=!0);var l="silent"===n.openType;(o=this._createTabPage(t,e))._isSilent=!0;var h=this._initTabPageForm(o,t,e,i,s,l);return this.doEndShowStartPage(),h},_initTabPageForm:function(t,e,i,s,n,o){var a=this._showPageInTabPage(t,e,i,s,n);return this._internalSaveLocation(e),t.add_captionChanged(this._tabCaptionChangedHandler),this._scrollNewTabToVisible(),o||this._pageControl.set_selectedTab(t),t._refreshFrozen(),a},_showPageInTabPage:function(t,e,i,s,n){var o="ClientHeight="+(this._childsElement.offsetHeight-18);o+=",ClientWidth="+(this._childsElement.offsetWidth-30),i||(i="&nbsp;……&nbsp;");var a=this._internalShowPage(Sys.UI.Controls._MDIChild,e,t.get_element(),s,n,o);return t.set_caption(i),t._form=a,a._tabPage=t,a},_tabsSizeChanged:function(){var t=this._tabNavVisible=$settings.DefaultMDIShowNavButtons&&this._pageControl&&this._pageControl.get_tabCount()>1,e=this._tabNav;t&&!e&&(e=this._tabNav=new _Z_104(this)),e&&e.setBarVisible(t),t&&e.refreshButtons()},_tabCaptionChanged:function(t){this._scrollNewTabToVisible()},_scrollNewTabToVisible:function(){this._tabsSizeChanged();var t=this._tabsBlock;t.scrollLeft=t.scrollWidth,this._tabNav&&this._tabNavVisible&&this._tabNav.refreshButtons()},_calScrollLeft:function(t){for(var e=0,i=this._pageControl,s=0;s<t;s++){e+=i.getTab(s).get_buttonElement().offsetWidth}return e},closePage:function(t){var e=this._findTabPage(t,!0);e&&e.close()},_doTabSelecting:function(t,e){var i=e.get_oldTab()._form;i&&i.blur()},_doTabSelected:function(t,e){var i=e.get_newTab(),s=i._form;if(s){this._internalSaveLocation(s.get_url()),i.hasResized&&(delete i.hasResized,i.doMDIResize());var n=this;return asyncCall(function(){if(s.focus(),n._tabNav&&n._tabNavVisible){var t=n._pageControl.get_selectedTabIndex();n._tabsBlock.scrollLeft=n._calScrollLeft(t),n._tabNav.refreshButtons()}}),void this._doEvent(s,e)}var o=i._pageInfo;if(o){var a=$common.encodeUrlParams(o.url,o.params);this._showPageInTabPage(i,a,o.caption,null,o.pageTimeout)}this._doEvent(i._form,e)},_doEvent:function(t,e){var i=this.get_events().getHandler("selected");i&&i(this,e),t.doActive(),$app.hideBlockPopups()},_doTabClose:function(t,e){var i=e._form;if(!i||!i.get_isLoading()&&!i.get_isDisposed()){var s=!0;if(i){if(s=i.canClose(),i.get_isDisposed())return;s&&(i._tabPage=null,i.dispose(),e._form=null)}s&&(e.remove_captionChanged(this._tabCaptionChangedHandler),t.removeTab(e),this._tabsSizeChanged(),e._fullUrl&&Array.remove(this._pageCache,e._fullUrl))}}},Sys.UI.Controls.MDIPanel.registerClass("Sys.UI.Controls.MDIPanel",_Z_91),_Z_104=function(t){this._mdi=t,this._pageControl=t._pageControl,this._tabsBar=t._barElement,this._captionBar=t._tabsBlock,this.__form=t.__form,this.initialize()},_Z_104.prototype={initialize:function(){var t=this._navBar=$common.createClassDiv("MDINavIcons dnone");this._mdiLeftButton=this._createTabNavButton(t,"aicon-left",this._tabLeft),this._mdiRightButton=this._createTabNavButton(t,"aicon-right",this._tabRight),this._mdiMenuButton=this._createTabNavButton(t,"aicon-shezhi",this._showPopupMenu),this._tabsBar.insertBefore(t,$common.getNextSibling(this._captionBar)),$common.addMouseDownHandler(this._captionBar,this._doMouseDown,this)},dispose:function(){this._mdiLeftButton&&(this._mdiLeftButton.dispose(),this._mdiLeftButton=null),this._mdiRightButton&&(this._mdiRightButton.dispose(),this._mdiRightButton=null),this._mdiMenuButton&&(this._mdiMenuButton.dispose(),this._mdiMenuButton=null),$clearHandlers(this._captionBar),this._clearDragEvents()},_doMouseDown:function(t){if(0==t.button){var e=t.target;e!=this._captionBar&&($craba._checkHideOtherPopup(),this._cur=$common.getFirstParentByClassLevel(e,"MDITabCaption",2),this._startPos={x:t.clientX,y:t.clientY},this._mouseMoveHandler||(this._mouseMoveHandler=$common.addMouseMoveHandler(document,this._moveDrag,this),this._mouseUpHandler=$common.addMouseUpHandler(document,this._endDrag,this),this._mouseSelect=$common.addSelectStartHandler(document,this._onTextSelectStart,this)),this._insertDiv||(this._insertDiv=$common.createClassDiv("InsertSpacer")))}},_moveDrag:function(t){var e={x:t.clientX,y:t.clientY};if(!(Math.abs(e.x-this._startPos.x)<10)){var i=this._cur;$app.isDraging||($app.isDraging=!0,this._startX=i.offsetLeft,this._outX=$dom.getBounds(this._captionBar).x,i.unselectable="on",i.style.position="absolute",this.showSpacer(i));var s=e.x-this._startPos.x,n=this._startX+s,o=document.elementFromPoint(n+this._outX-10,this._startPos.y);o&&o!=this._insertDiv&&((o=$common.getFirstParentByClassLevel(o,"MDITabCaption",2))==i?this.target=null:o?o!=this.target&&(this.target=o,this.showSpacer(this.target)):(this.target=null,$removeNode(this._insertDiv))),i.style.left=_px(n),i.style.bottom=0}},showSpacer:function(t){var e=this._insertDiv;e.style.width=0,t.parentNode.insertBefore(e,t);var i=this;setTimeout(function(){e.style.height=_px(i._cur.offsetHeight),e.style.width=_px(i._cur.offsetWidth)},10)},_endDrag:function(t){if($app.isDraging){var e=this._insertDiv.parentNode;e?e.insertBefore(this._cur,this._insertDiv):this._captionBar.appendChild(this._cur);var i=this._cur.style;i.removeProperty("position"),i.removeProperty("left"),i.removeProperty("bottom"),this._cur.removeAttribute("unselectable")}this._clearDragEvents()},_onTextSelectStart:function(t){t.cancel()},_clearDragEvents:function(){$app.isDraging=!1,$removeNode(this._insertDiv),this._mouseMoveHandler&&($common.removeMouseMoveHandler(document,this._mouseMoveHandler),$common.removeMouseUpHandler(document,this._mouseUpHandler),$common.removeSelectStartHandler(document,this._mouseSelect),this._mouseMoveHandler=this._mouseUpHandler=null)},showFrozenTab:function(t,e){var i=this._mdi;Array.forEach(t,function(t){if(!e||t.url!=e&&!t.url.endsWith(e)){var s=i._createTabPage(t.url,t.caption);s._refreshFrozen(!0),s._cacheInfo=t}})},setBarVisible:function(t){$dom.removeCssClass(this._navBar,"dnone"),$dom.setVisible(this._navBar,t,"flex"),this._mdiMenuButton.set_visible(t)},refreshButtons:function(){var t=this._pageControl,e=t.get_tabCount(),i=t.get_selectedTabIndex(),s=i>0,n=i<e-1,o=this._pageControl.get_tabCount()>10;this._showHelp(o),this._mdiLeftButton.set_visible(o),this._mdiRightButton.set_visible(o),this._mdiLeftButton.set_enabled(s),this._mdiRightButton.set_enabled(n)},_showHelp:function(t){t&&$common.addSteps([{group:"craba",control:{tipsId:"_MDIBar_TabCount",control:this._tabsBar},html:Sys.Res.stepTips.mdiTab},{group:"craba",control:{tipsId:"_MDIBar_TabMenu",control:this._mdiMenuButton},html:Sys.Res.stepTips.mdiConfig}])},_createTabNavButton:function(t,e,i){var s="Button SpeedButton icononly "+e,n=new _Z_23(t,s,!1);return n.initialize(),n.__form=this.__form,n.add_click(i,this),n.set_visible(!1),n},raiseContextMenu:function(t){if(0!=this._pageControl.get_tabCount()){this._initMdiMenu(),this._refreshMenuText();var e=$dom.getBounds(t.target);this._mdiTabmenu.popupAt(t.clientX+15,e.y+e.height)}},_showPopupMenu:function(t,e){this._initMdiMenu(),this._refreshMenuText();var i=$dom.getBounds(e.target);this._mdiTabmenu.popupAt(i.x,i.y+i.height,i.width,i.height),e.stopPropagation()},_refreshMenuText:function(){var t=this._mdi,e=t.get_activeTab();if(e){var i=e.get_caption(),s=e.get_name(),n=e.get_allowClose(),o=$craba._checkTabFrozen(s);e.frozen=o;var a=e.get_tabForm();a&&!Object.isUndefinedOrNull(a._allowClose)&&(n=a._allowClose);var r=$userCache.get($craba._frozenTabCacheName),l=r&&r.length>1,h=t.get_form(),_=this._mdiTabmenu.get_idPart(),d=h[_+"_closeTab"],u=h[_+"_frozenTab"],c=h[_+"_refreshTab"];n?(d.set_visible(!0),d.set_text($craba.getLangPro("关闭当前页")+"("+i+")"),u.set_visible(!0),u.set_text((o?$craba.getLangPro("解锁"):$craba.getLangPro("锁定"))+$craba.getLangPro("当前页")+"("+i+")"),u.setIcon(o?"aicon-08":"aicon-suoding1",o?"aicon-suoding1":"aicon-08"),c.set_visible(!0),c.set_text($craba.getLangPro("刷新当前页")+"("+i+")")):(d.set_visible(!1),u.set_visible(!1),c.set_visible(!1)),h[_+"_frozenAll"].set_visible(l)}},_initMdiMenu:function(){if(!this._mdiTabmenu){var t=[{properties:{text:$craba.getLangPro("全屏切换"),visible:!Sys.Browser.isIE,cssClass:"fullscreenItem",icon:"aicon-fullscreen"},events:{click:$createDelegate($common,$common.toggleFullScreen)}},{id:"frozenTab",properties:{cssClass:"forzenItem",visible:$settings.FrozenTabMaxCount>0,text:$craba.getLangPro("锁定当前页"),icon:"aicon-suoding1"},events:{click:$createDelegate(this,this._frozenTab)}},{id:"frozenAll",properties:{cssClass:"unfrozenItem",visible:!1,text:$craba.getLangPro("全部解锁"),icon:"aicon-08"},events:{click:$createDelegate(this,this._frozenAll)}},{id:"closeTab",properties:{cssClass:"closeSelfItem",text:$craba.getLangPro("关闭当前页"),icon:"aicon-close"},events:{click:$createDelegate(this,this._closeNow)}},{id:"refreshTab",properties:{cssClass:"refreshItem",text:$craba.getLangPro("刷新当前页"),icon:"aicon-refresh_icon"},events:{click:$createDelegate(this,this._refreshNow)}},{properties:{cssClass:"closeOtherItem",text:$craba.getLangPro("关闭其它页"),icon:"aicon-wendang4"},events:{click:$createDelegate(this,this._closeOther)}},{properties:{cssClass:"closeAllItem",text:$craba.getLangPro("关闭所有"),icon:"aicon-close-circle"},events:{click:$createDelegate(this,this._closeAll)}}];this._mdiTabmenu=Sys.UI.Controls.Menu.create(this._mdi.get_form(),{id:this._mdi.get_idPart()+"_contextPopup",cssClass:"mdiMenu",items:t})}},_closeOther:function(t){var e=this._mdi.get_activeForm();$common.closeAllMDIForms(t,function(t){return t!=e},null,!0),e.set_isActive(!0)},_closeAll:function(t){$common.closeAllMDIForms(t,function(t){return!0},null,!0)},_frozenAll:function(t){$userCache.deleteCache($craba._frozenTabCacheName);var e=this._pageControl.get_tabs();Array.forEach(e,function(t){var e=t.get_tabButton().get_element();$dom.removeCssClass(e,"aicon-suoding1");var i=t._form;i&&i._icon&&$dom.addCssClass(e,i._icon)})},_frozenTab:function(t){var e=this._mdi.get_activeTab();if(e){var i=this._mdi.get_activeForm();if(i){var s=e.get_name(),n=e._form,o=e.get_tabButton().get_element(),a=$userCache.get($craba._frozenTabCacheName);if(a||(a=[]),e.frozen){for(var r=0,l=a.length;r<l;r++){if((h=a[r]).url==s){Array.removeAt(a,r);break}}$dom.removeCssClass(o,"aicon-suoding1"),n._icon&&$dom.addCssClass(o,n._icon)}else{if(a.length>=$settings.FrozenTabMaxCount)return void $common.alert(String.format(Sys.Res.frozenTabTips,$settings.FrozenTabMaxCount));var h={url:s,caption:i.get_caption(),params:i.get_pageParams()};a.push(h),n._icon&&$dom.removeCssClass(o,n._icon),$dom.addCssClass(o,"aicon-suoding1")}$userCache.set($craba._frozenTabCacheName,a)}}},_refreshNow:function(t){var e=this._mdi.get_activeForm();e&&e.refresh()},_closeNow:function(t){$common.closeAllMDIForms(t,function(t){return t.get_isActive()})},_tabLeft:function(t){this._pageControl._tabScroll(-1)},_tabRight:function(t){this._pageControl._tabScroll(1)}},Sys.UI.Controls.StatusBar=function(t){Sys.UI.Controls.StatusBar.initializeBase(this,[t])},Sys.UI.Controls.StatusBar.prototype={doFormInit:function(t){var e=t.__mainPanel;if(!e)throw Error.abort("没有 MDIPanel 的页面不能用 StatusBar");e.addStatusBar(this)},canFocus:function(){return!1},doAdjustWidth:function(t){}},Sys.UI.Controls.StatusBar.registerClass("Sys.UI.Controls.StatusBar",Sys.UI.Controls.Container),_Z_171=function(t,e){_Z_171.initializeBase(this),this._index=t,this._target=e},_Z_171.prototype={get_index:function(){return this._index},get_checked:function(){return this._target.checked},set_checked:function(t){this._target.checked=t},get_target:function(){return this._target}},_Z_171.registerClass("_Z_171",Sys.EventArgs),_Z_90=function(t){_Z_90.initializeBase(this,[t]),this._tabIndex=-1,this._selectedIndex=-1,this._items=[]},_Z_90.prototype={set_dataSource:function(t){this.set_items(t)},get_dataSource:function(){return this.get_items()},get_dataValueField:function(){return this._dataValueField},set_dataValueField:function(t){this._dataValueField=t},get_dataTextField:function(){return this._dataTextField},set_dataTextField:function(t){this._dataTextField=t},get_enabledField:function(){return this._enabledField},set_enabledField:function(t){this._enabledField=t},get_imgField:function(){return this._imgField},set_imgField:function(t){this._imgField=t},get_iconField:function(){return this._iconField},set_iconField:function(t){this._iconField=t},get_cssClassField:function(){return this._cssClassField},set_cssClassField:function(t){this._cssClassField=t},get_selectedField:function(){return this._selectedField},set_selectedField:function(t){this._selectedField=t},set_rows:function(t){this._rows=t},get_rows:function(){return this._rows},get_items:function(t){if(t)return this._items;var e=this._selectedField;if(this._elementList&&e)for(var i=this.get_itemCount(),s=0;s<i;s++){var n=this._items[s];"object"==typeof n&&(n[e]=this.getSelected(s))}return this._items},getItemEnabled:function(t){if(!this._elementList){if(this._enabledField){var e=this.get_items()[t];return"object"!=typeof e||e[this._enabledField]}return!0}var i=this._getEnabledElement(t);return!!i&&$dom.getEnabled(i)},setItemEnabled:function(t,e){if(this._elementList){var i=this._getEnabledElement(t);i&&$common.setDomEnabled(i,e,!0,!0)}},doInitItemEnabled:function(t,e){if(this._enabledField){var i=this._items[t];if("object"==typeof i){!1===i[this._enabledField]&&$common.setDomEnabled(e,!1,!0,!0)}}},_checkItemIndex:function(t){var e=this.get_itemCount();if(t<0||t>=e)throw Error.invalidOperation(String.format("{0} 值索引范围应为 [0-{1}],现在是 {2}",this.get_id(),e-1,t))},_getEnabledElement:function(t){},get_itemCount:function(){return this._items?this._items.length:0},_refreshEditHint:function(){}},_Z_90.registerClass("_Z_90",_Z_223),_Z_286=function(t,e,i){this._index=t,this._text=e,this._data=i},_Z_286.prototype={get_index:function(){return this._index},get_text:function(){return this._text},set_text:function(t){this._text=t},get_data:function(){return this._data}},_Z_286.registerClass("_Z_286",Sys.EventArgs),_Z_224=function(t){_Z_224.initializeBase(this,[t]),this._layoutDirection=Sys.UI.Controls.LayoutDirection.vert,this._columnSplit=1,this._itemWidth=0},_Z_224.prototype={initialize:function(){_Z_224.callBaseMethod(this,"initialize"),this._items?this.doInitItems():this._items=[]},dispose:function(){this._clearItemList(),delete this._items,_Z_224.callBaseMethod(this,"dispose")},_getFlex:function(){return"inline-flex"},doFormInit:function(){this._inited=!0,this.initEnabled()},initEnabled:function(){this.get_enabled()||$common.setDomEnabled(this.get_element(),this.get_enabled(),!0,!0)},set_enabled:function(t){this.get_enabled()!=t&&(_Z_224.callBaseMethod(this,"set_enabled",[t]),this._inited&&$common.setDomEnabled(this.get_element(),t,!0,!0))},_addTr:function(t){var e=$common.createClassDiv("clear");t.appendChild(e)},doCreateItems:function(){this._elementList=[];var t=this.get_element();t.style.height="auto";var e=this._items.length;if(this._layoutDirection==Sys.UI.Controls.LayoutDirection.vert)for(s=0;s<e;s++)this.doAddVertItem(t,s);else{var i=this.get_columnSplit();if(i<=1)for(s=0;s<e;s++)this.doAddHorzItem(t,s);else for(var s=0;s<e;s++){0==s%i&&s>0&&this._addTr(t),this.doAddVertItem(t,s)}}},doItemClick:function(t){var e=this._elementList,i=t.target,s=this._selectedIndex=Array.indexOf(e,i);if(this.getItemEnabled(s)){this._changeMuitiSelect();var n=new _Z_171(s,i);this.doChange(n)}},_changeMuitiSelect:function(){},_clearItemList:function(){if(this._elementList){for(var t=this.get_itemCount(),e=0;e<t;e++){i=this._elementList[e];$clearHandlers(i)}delete this._elementList}var i;(i=this.get_element()).innerText=""},set_items:function(t){this._value=null,this._selectedIndex=-1,this._items=t,this.get_isInitialized()&&(this._clearItemList(),t&&this.doInitItems(),this.initEnabled())},get_layoutDirection:function(){return this._layoutDirection},set_layoutDirection:function(t){this._layoutDirection=t},get_itemWidth:function(){return this._itemWidth},set_itemWidth:function(t){this._itemWidth=t},get_columnSplit:function(){return this._columnSplit},set_columnSplit:function(t){this._columnSplit=t},getSelected:function(t){this._checkItemIndex(t);var e=this._elementList;if(e)return e[t].checked},setSelected:function(t,e){this._checkItemIndex(t);var i=this._elementList;if(i){var s=i[t];this._selectedIndex=t,s.checked=e,this._selectOne=s,this._changeCheckedStyle(s)}},doChange:function(t){_Z_224.callBaseMethod(this,"doChange",[t]),$common._changeCheckedStyle(t.get_target().parentNode,t.get_target().checked)},_changeCheckedStyle:function(t){$common._changeCheckedStyle(t.parentNode,value)},_getEnabledElement:function(t){var e=this._elementList[t];return e?e.parentNode:null},_doGetItemText:function(t){var e=$craba._getItemText(this,t),i=this.get_events().getHandler("getDisplayText");if(i){var s=this.get_items(!0)[t],n=new _Z_286(t,e,s);i(this,n),e=n.get_text()}return e},_addItem:function(t,e,i,s){var n=this.get_id(),o=n+s+i,a=this._doGetItemText(i),r=$common.createClassDiv(e+" ChkBoxStyle");this._itemWidth>0&&(r.style.width=_px(this._itemWidth));var l="radio"==s?$common.createRadioButton(n):$common.createCheckBox();l.id=o,r.appendChild(l);var h=document.createElement("label");return h.className="ellipsis _labelHint",$craba.innerHTMLs(h,a),h.htmlFor=o,r.appendChild(h),t.appendChild(r),this._elementList.push(l),$common.addClickHandler(l,this.doItemClick,this),this.doInitItemEnabled(i,r),r},add_getDisplayText:function(t){this.get_events().addHandler("getDisplayText",t)},remove_getDisplayText:function(t){this.get_events().removeHandler("getDisplayText",t)}},_Z_224.registerClass("_Z_224",_Z_90),Sys.UI.Controls.CheckBoxList=function(t){Sys.UI.Controls.CheckBoxList.initializeBase(this,[t]),this._multiSelect=!0},Sys.UI.Controls.CheckBoxList.prototype={set_multiSelect:function(t){this._multiSelect=t},get_multiSelect:function(){return this._multiSelect},_changeMuitiSelect:function(){if(!this._multiSelect)for(var t=this.get_itemCount(),e=0;e<t;e++)if(e!=this._selectedIndex){var i=this._elementList[e];i.checked=!1,$common._changeCheckedStyle(i.parentNode,i.checked)}},doAddVertItem:function(t,e){this._addItem(t,"VertItem",e,"check")},doAddHorzItem:function(t,e){this._addItem(t,"HorzItem",e,"check")},doInitItems:function(){this.doCreateItems(),this._initItemsChecked()},_initItemsChecked:function(){for(var t=this.get_itemCount(),e=0;e<t;e++){var i=$craba._getItemValue(this,e),s=this._elementList[e];this._value&&Array.contains(this._value,i)||this._selectedField&&this._items[e][this._selectedField]?s.checked=!0:s.checked=!1,$common._changeCheckedStyle(s.parentNode,s.checked)}},_clearSelectedFieldData:function(){if(this._selectedField)for(var t=this._items.length,e=0;e<t;e++)this._items[e][this._selectedField]=!1},_doSelectAll:function(t){for(var e=this.get_itemCount(),i=0;i<e;i++)this.setSelected(i,t)},selectAll:function(){this._doSelectAll(!0)},deselectAll:function(){this._doSelectAll(!1)},get_isAllSelected:function(){for(var t=this.get_itemCount(),e=0;e<t;e++)if(!this.getSelected(e))return!1;return!0},get_value:function(){for(var t=this.get_itemCount(),e=[],i=0;i<t;i++)if(this.getSelected(i)){var s=$craba._getItemValue(this,i);Array.add(e,s)}return this._valueType==_Z_58.string?e.join(this._getSplitChar()):e},_getSplitChar:function(){return","},get_noConvert:function(){return this._noConvert},set_noConvert:function(t){this._noConvert=t},set_value:function(t,e){if(this._noConvert&&e==undefined&&(e=!0),"string"==typeof t?t=t.split(this._getSplitChar()):"number"==typeof t&&(t=[t]),t instanceof Array){for(var i=[],s=0,n=t.length;s<n;s++){var o=t[s];if(e)i.push(o);else{var a=parseInt(o);isNaN(a)?i.push(o):i.push(a)}}t=i}this._value=t,this._elementList&&(this._clearSelectedFieldData(),this._initItemsChecked())},get_text:function(){for(var t=this.get_itemCount(),e=new Array,i=0;i<t;i++)if(this.getSelected(i)){var s=$craba._getItemText(this,i);Array.add(e,s)}return e}},Sys.UI.Controls.CheckBoxList.registerClass("Sys.UI.Controls.CheckBoxList",_Z_224),Sys.UI.Controls.RadioButtonList=function(t){Sys.UI.Controls.RadioButtonList.initializeBase(this,[t])},Sys.UI.Controls.RadioButtonList.prototype={doItemClick:function(t){var e=t.target;this._selectOne!=e&&(this._selectOne=e,Sys.UI.Controls.RadioButtonList.callBaseMethod(this,"doItemClick",[t]))},doChange:function(t){_Z_224.callBaseMethod(this,"doChange",[t]),$common._resetRadioGroupChecked(t.get_target())},_changeCheckedStyle:function(t){$common._resetRadioGroupChecked(t)},doAddVertItem:function(t,e){this._addItem(t,"VertItem",e,"radio")},doAddHorzItem:function(t,e){this._addItem(t,"HorzItem",e,"radio")},doInitItems:function(){this.doCreateItems();for(var t=this.get_itemCount(),e=0;e<t;e++){var i=$craba._getItemValue(this,e);if(this._value==i||this._selectedIndex==e){var s=this._elementList[e];s.checked=!0,this._selectOne=s,$common._changeCheckedStyle(s.parentNode,!0);break}}},get_text:function(){var t=this.get_selectedIndex();return t>=0?$craba._getItemText(this,t):null},get_value:function(){var t=this.get_selectedIndex();return t>=0?$craba._getItemValue(this,t):null},set_value:function(t){if(this._value=t,this._elementList){for(var e=-1,i=this.get_itemCount(),s=0;s<i;s++){if(t==$craba._getItemValue(this,s)){e=s;break}}this.set_selectedIndex(e)}},get_selectedItem:function(){return this._items[this.get_selectedIndex()]},get_selectedIndex:function(){if(this._elementList){for(var t=this.get_itemCount(),e=0;e<t;e++)if(this.getSelected(e))return e;return-1}return this._selectedIndex},set_selectedIndex:function(t){t<0&&this._selectedIndex>=0&&this.setSelected(this._selectedIndex,!1),this._selectedIndex=t,this._elementList&&t>=0&&this.setSelected(t,!0)},getInputAction:function(){return"选择"}},Sys.UI.Controls.RadioButtonList.registerClass("Sys.UI.Controls.RadioButtonList",_Z_224),Sys.UI.Controls.ListBox=function(t){Sys.UI.Controls.ListBox.initializeBase(this,[t]),this._shiftSelectedIndex=-1,this._requireMouseDown=!0,this._requireKeyDown=!1,this._requireDblClick=!0},Sys.UI.Controls.ListBox.prototype={initialize:function(){Sys.UI.Controls.ListBox.callBaseMethod(this,"initialize"),this._items&&(this._initValueBySelectedIndex(),this._initItems())},_initValueBySelectedIndex:function(){var t=this._selectedIndex;t>=0&&(this._value=$craba._getItemValue(this,t))},getInputAction:function(){return"选择"},_initItems:function(){var t=this.get_element();t.innerText="";var e=this.get_itemCount();this._selectedIndex=-1,this._isSelectedArray=new Array(e),this._elementList=[];for(var i=0;i<e;i++){var s=$common.createClassDiv("BoxItem"),n=$common.textToHtml($craba._getItemText(this,i));this._imgField&&(n+="<img src='"+this._getItemImg(i)+"'/>"),$dom.addCssClass(s,$craba._getItemCssClass(this,i)),$dom.addCssClass(s,$craba._getItemIcon(this,i)),$craba.innerHTMLs(s,n),t.appendChild(s),this._elementList.push(s)}this._refreshSelected()},_refreshSelected:function(){for(var t=this._value,e=0,i=this.get_itemCount();e<i;e++){var s,n=$craba._getItemValue(this,e);this.get_multiSelect()?(s=$craba._getItemSelected(this,e),s=t&&Array.contains(t,n)||s):s=t==n,this._doSetSelected(e,s)}},_findRow:function(t){var e=t.target;return e==this._element?null:e},_indexOfRow:function(t){return Array.indexOf(this._elementList,t)},_isRowEnabled:function(t){if(!t||!this.get_enabled())return!1;var e=this._indexOfRow(t);return this.getItemEnabled(e)},doDblClick:function(t){var e=this._findRow(t);if(this._isRowEnabled(e)){var i=this.get_events().getHandler("_dblClick");i&&i(this,t)}},doMouseDown:function(t){var e=this._findRow(t);if(this._isRowEnabled(e)){var i=this._indexOfRow(e),s=this.get_multiSelect(),n=t.shiftKey||t.ctrlKey;if(s&&n){if(t.shiftKey)this._shiftSelectedIndex<0&&(this._shiftSelectedIndex=this._selectedIndex),this._selectTo(i);else if(t.ctrlKey){this._shiftSelectedIndex=-1;var o=this.getSelected(i);this.setSelected(i,!o)}}else s&&this._doDeselectAll(),this._selectedIndex>=0&&this._doSetSelected(this._selectedIndex,!1),this._shiftSelectedIndex=-1,this.setSelected(i,!0)}},set_items:function(t){this._items=t,this.get_isInitialized()&&t&&this._initItems()},getSelected:function(t){this._checkItemIndex(t);var e=this._isSelectedArray;return!!e&&e[t]},_doSetSelected:function(t,e){if(this.getItemEnabled(t)){this._checkItemIndex(t),this._isSelectedArray[t]=e;var i=this._elementList[t];$dom.setCssClass(e,i,"active"),e&&(this._selectedIndex=t)}},setSelected:function(t,e){this._doSetSelected(t,e),this.doChange()},get_selectedIndex:function(){return this._selectedIndex},set_selectedIndex:function(t){this._selectedIndex=t,this.get_isInitialized()&&(this._initValueBySelectedIndex(),this._refreshSelected())},get_multiSelect:function(){return this._multiSelect},set_multiSelect:function(t){this._multiSelect=t},_doSelectAll:function(t,e){for(var i=this.get_itemCount(),s=0;s<i;s++)this._doSetSelected(s,t);e&&this.doChange()},_doDeselectAll:function(){this._doSelectAll(!1,!1)},selectAll:function(){this._doSelectAll(!0,!0)},deselectAll:function(){this._doSelectAll(!1,!0)},get_isAllSelected:function(){for(var t=this.get_itemCount(),e=0;e<t;e++)if(!this.getSelected(e))return!1;return!0},get_value:function(){return this._getSelectedData(!0)},set_value:function(t){this._value=t,this.get_isInitialized()&&this._refreshSelected()},get_text:function(){return this._getSelectedData(!1)},get_selectedItems:function(){for(var t=this.get_itemCount(),e=[],i=0;i<t;i++)this.getSelected(i)&&e.push(this.get_items(!0)[i]);return Object.clone(e)},_getSelectedData:function(t){var e=this.get_itemCount();if(this.get_multiSelect()){for(var i=[],s=0;s<e;s++)if(this.getSelected(s)){var n=t?$craba._getItemValue(this,s):$craba._getItemText(this,s);Array.add(i,n)}return i}for(s=0;s<e;s++)if(this.getSelected(s))return t?$craba._getItemValue(this,s):$craba._getItemText(this,s);return null},_selectTo:function(t){var e=this.get_itemCount();if(0!=e){t<0?t=0:t>=e&&(t=e-1),this._doDeselectAll();for(var i=this._shiftSelectedIndex,s=Math.min(i,t),n=Math.max(i,t),o=s;o<=n;o++)this._doSetSelected(o,!0);this.doChange()}},_getEnabledElement:function(t){var e=this._elementList[t];return e||null}},Sys.UI.Controls.ListBox.registerClass("Sys.UI.Controls.ListBox",_Z_90),Sys.UI.Controls.NavBar=function(t){Sys.UI.Controls.NavBar.initializeBase(this,[t])},Sys.UI.Controls.NavBar.registerClass("Sys.UI.Controls.NavBar",_Z_240),Sys.UI.Controls.NavBarGroup=function(t){Sys.UI.Controls.NavBarGroup.initializeBase(this,[t]),this._expanded=!0},Sys.UI.Controls.NavBarGroup.prototype={initialize:function(){Sys.UI.Controls.NavBarGroup.callBaseMethod(this,"initialize");var t=this.get_element(),e=this._headerElement=$common.getFirstChildByClassName(t,"NBGroupHeader");$common.addClickHandler(e,this._doHeaderClick,this),this._contentElement=$common.getFirstChildByClassName(t,"NBGroupBody"),this._iconElement=$common.getFirstChildByClassName(e,"NBIcon")},dispose:function(){this._headerElement&&($clearHandlers(this._headerElement),this._headerElement=null),Sys.UI.Controls.NavBarGroup.callBaseMethod(this,"dispose")},set_expanded:function(t){if(this.get_isInitialized()){if(t!=this._expanded){var e=this.get_groupName();e&&t&&this._collapseOther(e),$dom.setCssClass(t,this._iconElement,"expand");var i=this.getAutoHeight(),s=this._contentElement;if(s.style.height=t?i:0,$dom.setCssClass(!t,s,"collapsed"),$dom.setCssClass(t,this._element,"expand"),this._expanded=t,t&&!this._autoHeight){var n=this;setTimeout(function(){n.get_isDisposed()||(s.style.height="auto")},110)}}}else this._expanded=t},getAutoHeight:function(){return this._autoHeight?"auto":_px(this._contentElement.scrollHeight)},set_autoHeight:function(t){this._autoHeight=t},get_autoHeight:function(){return this._autoHeight},get_expanded:function(){return this._expanded},get_groupName:function(){return this._groupName},set_groupName:function(t){this._groupName=t},_collapseOther:function(t){for(var e=this.get_element().parentNode.childNodes,i=0,s=e.length;i<s;i++){var n=e[i].control;n&&n!=this&&n.get_groupName()==t&&n.set_expanded(!1)}},_doHeaderClick:function(t){this._enabled&&this.set_expanded(!this._expanded)}},Sys.UI.Controls.NavBarGroup.registerClass("Sys.UI.Controls.NavBarGroup",_Z_240),Sys.UI.Controls.NavBarItem=function(t){Sys.UI.Controls.NavBarItem.initializeBase(this,[t]),this._requireClick=!0;var e=this._tdElement=$common.getFirstChildByTagName(t,"td"),i=$dom._getCurrentStyle(e);this._paddingLeft=parseInt(i.paddingLeft),this._paddingRight=parseInt(i.paddingRight),this._paddingTop=parseInt(i.paddingTop),this._paddingBottom=parseInt(i.paddingBottom)},Sys.UI.Controls.NavBarItem.prototype={doClick:function(t){Sys.UI.Controls.NavBarItem.callBaseMethod(this,"doClick",[t])},get_param:function(){return this._param},set_param:function(t){this._param=t}},Sys.UI.Controls.NavBarItem.registerClass("Sys.UI.Controls.NavBarItem",_Z_240),Sys.UI.Controls.ECharts=function(t){Sys.UI.Controls.ECharts.initializeBase(this,[t])},Sys.UI.Controls.ECharts.prototype={initialize:function(){if(Sys.UI.Controls.ECharts.callBaseMethod(this,"initialize"),"undefined"==typeof echarts)throw Error.invalidOperation("创建图表失败,echarts组件还没加载");var t=this._echart=echarts.init(this.get_element());"2.2.7"==echarts.version&&t.setTheme("macarons")},dispose:function(){Sys.UI.Controls.ECharts.callBaseMethod(this,"dispose"),this._echart&&this._echart.dispose()},doFormResized:function(){this.get_echart().resize()},get_echart:function(){return this._echart},get_dataSource:function(){return this._dataSource},set_dataSource:function(t){this._dataSource=t,this.get_isInitialized()&&this._bindData()},add_beforeDataBind:function(t,e){this.get_events().addHandler("beforeDataBind",t,e)},remove_beforeDataBind:function(t){this.get_events().removeHandler("beforeDataBind",t)},doFormLoaded:function(){this._bindData()},_bindData:function(){var t=this.get_events().getHandler("beforeDataBind");t&&t(this)},get_width:function(){var t=this.get_element(),e=t.firstChild;return e.tagName?e.offsetWidth:t.offsetWidth},set_width:function(t){$common.setWidth(this.get_element(),t),this.get_echart().resize()},get_height:function(){var t=this.get_element(),e=t.firstChild;return e.tagName?e.offsetHeight:t.offsetHeight},set_height:function(t){$common.setHeight(this.get_element(),t),this.get_echart().resize()},set_title:function(t){this.get_echart().setOption({title:t})},set_itemStyle:function(t){for(var e=this.get_echart(),i=e.getOption(),s=i.series,n=0,o=s.length;n<o;n++){s[n].itemStyle=t}e.setOption(i,!0)},get_defaultOption:function(){return Object.clone({title:{},tooltip:{trigger:"axis"},toolbox:{show:!0,feature:{mark:{show:!1},dataView:{show:!1,readOnly:!1},magicType:{show:!0,type:["line","bar"]},restore:{show:!0},saveAsImage:{show:!0}}},calculable:!0,xAxis:[],yAxis:[{type:"value"}],series:[]})}},Sys.UI.Controls.ECharts.registerClass("Sys.UI.Controls.ECharts",Sys.UI.Control),Sys.UI.Controls.Player=function(t){Sys.UI.Controls.Player.initializeBase(this,[t]),this._src=null,this._url=null,this._playing=!0},Sys.UI.Controls.Player.prototype={initialize:function(){Sys.UI.Controls.Player.callBaseMethod(this,"initialize"),$addHandler(this.get_element(),"play",$createDelegate(this,this._onPlay)),$addHandler(this.get_element(),"pause",$createDelegate(this,this._onPause)),$addHandler(this.get_element(),"ended",$createDelegate(this,this._onStop))},get_src:function(){return this._src},set_src:function(t){this._src=t,this._changed()},get_url:function(){return this._url},set_url:function(t){this._url=t,this._changed()},_changed:function(){if(this.get_isInitialized()){var t=this._src;this._url&&(t=$common.getResourceUrl(this._url,this)),t=this.get_form().convertUrl(t),this.get_element().src=t}},play:function(){!1!==$cache.get("MusicPlayer.AutoPlay")&&(this._playing=!0,this.get_element().play())},stop:function(t){this._playing=!1;var e=this.get_element();e.currentTime=0,e.pause()},pause:function(){this.get_element().pause()},_onStop:function(){var t=this.get_events().getHandler("stop");t&&t(this)},_onPause:function(){var t=this.get_events().getHandler("pause");t&&t(this)},_onPlay:function(){var t=this.get_events().getHandler("play");t&&t(this)},add_play:function(t){this.get_events().addHandler("play",t)},remove_play:function(t){this.get_events().removeHandler("play",t)},add_stop:function(t){this.get_events().addHandler("stop",t)},remove_stop:function(t){this.get_events().removeHandler("stop",t)},add_pause:function(t){this.get_events().addHandler("pause",t)},remove_pause:function(t){this.get_events().removeHandler("pause",t)}},Sys.UI.Controls.Player.registerClass("Sys.UI.Controls.Player",_Z_240),Sys.UI.Controls.IFrame=function(t){Sys.UI.Controls.IFrame.initializeBase(this,[t])},Sys.UI.Controls.IFrame.prototype={initialize:function(){Sys.UI.Controls.IFrame.callBaseMethod(this,"initialize");try{$addHandler(this.get_element().contentWindow,"keydown",function(t){t.keyCode==Sys.UI.Key.esc&&$app._doHotkey(t)})}catch(t){}},set_src:function(t){this.get_element().setAttribute("src",t)}},Sys.UI.Controls.IFrame.registerClass("Sys.UI.Controls.IFrame",_Z_240),_Z_27=function(){throw Error.notImplemented()},_Z_27.prototype={hideLeft:0,hideRight:1,none:2},_Z_27.registerEnum("_Z_27"),_Z_26=function(){throw Error.notImplemented()},_Z_26.prototype={hideDown:0,hideUp:1,none:2},_Z_26.registerEnum("_Z_26"),_Z_176=function(t,e){_Z_176.initializeBase(this),this._oldValue=e,this._newValue=t},_Z_176.prototype={get_oldValue:function(){return this._oldValue},get_newValue:function(){return this._newValue},set_newValue:function(t){this._newValue=t}},_Z_176.registerClass("_Z_176",_Z_152),_Z_46=function(t){_Z_46.initializeBase(this,[t]),this._isExpanded=!0,this._allowDrag=!0,this._requireMouseDown=!0,this._requireDblClick=!0,this._saveConfig=!0},_Z_46.prototype={initialize:function(){_Z_46.callBaseMethod(this,"initialize"),this.initShape()},dispose:function(){this._shapeElement&&($clearHandlers(this._shapeElement),this._shapeElement=null),_Z_46.callBaseMethod(this,"dispose")},set_showText:function(t){this._showText=t},get_showText:function(){return this._showText},get_saveConfig:function(){return this._saveConfig},set_saveConfig:function(t){this._saveConfig=t},initShape:function(){var t=this._shapeElement=$common.createClassSpan("Shape"),e=this.get_element();e.appendChild(t);var i=e.title;this.set_hint(""),this._hasShape()&&(t.title=i,$dom.addCssClass(t,"aicon-zhankaishouqi"),$common.addClickHandler(t,this.doClick,this))},_hasShape:function(){return this._mode!=_Z_27.none},set_text:function(t){},get_text:function(){},get_mode:function(){return this._mode},set_mode:function(t){this._mode=t},get_isExpanded:function(){return this._isExpanded},set_isExpanded:function(t,e){if(!e&&this._isLoaded&&this.get_form()._allLoaded)return this._animateExpand(t);this._isExpanded!=t&&(this._isExpanded=t,this._isLoaded&&this._initExpanded())},_setExpanded:function(t){t||this._initExpanded()},doPageLoaded:function(t){this._isLoaded=!0,this._hasShape()&&!$settings.GspxResolveCache&&this._setExpanded(this._isExpanded),this.setMDIPanelScroll(!0);var e=this._getTargetControl();if(e){var i=this._getTargetElt();$dom.addCssClass(i,"transition2"),this._oldWidth||this._oldHeight||0!=i.offsetWidth&&0!=i.offsetHeight||this.set_visible(!1),e.wraper("set_visible",this.set_visible,this)}},doClick:function(t){var e=this.get_isExpanded(),i=!e,s=new _Z_176(i,e),n=this.get_events().getHandler("_toggle");if((!n||(n(this,s),i=s.get_newValue(),!s.get_cancel()&&e!=i))&&(this._animateExpand(i),this._saveConfig)){var o={AdjustOffset:this.adjustOffset,IsExpanded:i};this.get_form()._internalSaveControlConfig(this.get_idPart(),o)}},add_toggle:function(t){this.get_events().addHandler("_toggle",t)},remove_toggle:function(t){this.get_events().removeHandler("_toggle",t)},add_dragEnd:function(t){this.get_events().addHandler("_dragEnd",t)},remove_dragEnd:function(t){this.get_events().removeHandler("_dragEnd",t)},get_allowDrag:function(){return this._allowDrag},set_allowDrag:function(t){this._allowDrag=t,t?$dom.removeCssClass(this.get_element(),"nodrag"):$dom.addCssClass(this.get_element(),"nodrag")},setMDIPanelScroll:function(t){$common.hideEditEx(),$dom.setCssClass(!t,document.body,"draging");var e=$common.getMainForm().__mainPanel;if(e){e._childsElement.style.overflow=t?"":"hidden"}},_bindEvent:function(t,e){this._isTimeout=!0,$app.isDraging=!0,this._mouseMoveHandler||(this._mouseMoveHandler=$common.addMouseMoveHandler(document,this._startDrag,this),this._mouseUpHandler=$common.addMouseUpHandler(document,this._endDrag,this),this.setMDIPanelScroll(!1),$dom.addCssClass(this.get_element(),"hover"),document.body.style.cursor=e)},_clearEvent:function(){document.body.style.cursor="",this.setMDIPanelScroll(!0),$dom.removeCssClass(this.get_element(),"hover"),this._isTimeout=!0,$app.isDraging=!1,this._mouseMoveHandler&&($common.removeMouseMoveHandler(document,this._mouseMoveHandler),$common.removeMouseUpHandler(document,this._mouseUpHandler),this._mouseMoveHandler=null),$craba._cursorDiv&&$dom.setVisible($craba._cursorDiv,!1)},_moveCursor:function(t){var e=$craba._cursorDiv;e||((e=$craba._cursorDiv=$common.createClassDiv("posabs")).style.zIndex="9999999",$common.setBounds(e,300,300),document.body.appendChild($craba._cursorDiv)),$dom.setVisible(e,!0),e.style.left=_px(t.clientX-150),e.style.top=_px(t.clientY-150)},_endDrag:function(t,e){if(this._saveConfig){var i=null;0==e||isNaN(e)||(i={AdjustOffset:e,IsExpanded:this._isExpanded},this.adjustOffset=e),this.get_form()._internalSaveControlConfig(this.get_idPart(),i);var s=this.get_events().getHandler("_dragEnd");s&&s(this),$step.addSteps([{group:"craba",control:{tipsId:"_Splitter",control:this},html:Sys.Res.stepTips.splitterDrag}])}},_doOtherResize:function(t,e){var i=this;$craba.asyncFun(this,function(){if(!i.get_isDisposed()){var s=i._getOtherControl(),n=i._getTargetControl(),o=i._getTargetElt();$dom.hasClass(o,"Flex0")||$dom.addCssClass(o,"Flex0"),e||(e="width"==t),"function"==typeof n.doResized&&n.doResized(t,e),"function"==typeof s.doResized&&s.doResized(t,e)}},200,"resize")},_getTargetElt:function(){var t=this._getTargetControl();return t.get_parentElement?t.get_parentElement():t.get_element()},set_saveOffset:function(t){this._saveOffset=t},get_saveOffset:function(){return this._saveOffset}},_Z_46.registerClass("_Z_46",_Z_240),Sys.UI.Controls.VSplitter=function(t){Sys.UI.Controls.VSplitter.initializeBase(this,[t]),this._minWidth=this._minWidth2=$settings.VSplitterMinWidth,this._mode=_Z_27.hideLeft},Sys.UI.Controls.VSplitter.prototype={get_forLeft:function(){return this._forLeft},set_forLeft:function(t){this._forLeft=t},get_forRight:function(){return this._forRight},set_forRight:function(t){this._forRight=t},get_minWidth:function(){return this._minWidth},set_minWidth:function(t){"string"==typeof t&&(t=t.split(",")),this._minWidth=this._minWidth2=Number(t[0]),2==t.length&&(this._minWidth2=Number(t[1]))},_getIsHideLeft:function(){return this.get_mode()!=_Z_27.hideRight},_getTarget:function(){return this._getIsHideLeft()?this._leftControl.get_element():this._rightControl.get_element()},_getTargetControl:function(){return this._getIsHideLeft()?this._leftControl:this._rightControl},_getOtherControl:function(){return this._getIsHideLeft()?this._rightControl:this._leftControl},_checkControl:function(t){if(!t)throw Error.argumentNull("VSplitter的ForLeft或ForRight指定的控件不存在");return t.get_width&&t.set_width||(t._fixedSize=!0,this.set_allowDrag(!1)),t},doPageLoaded:function(t){var e=this.get_forLeft(),i=this.get_forRight();if(!e)throw Error.argumentNull("ForLeft");if(!i)throw Error.argumentNull("ForRight");this.setMDIPanelScroll(!1),this._leftControl=this._checkControl(t[e]),this._rightControl=this._checkControl(t[i]);var s=0,n=this._saveConfig?t._internalGetControlConfig(this.get_idPart()):null;n&&(s=n.AdjustOffset,isNaN(s)&&(s=0),!1===n.IsExpanded&&(this._isExpanded=!1)),this._isExpanded||(this._oldWidth=this._getTargetElt().offsetWidth,this._getTargetElt().style.width=0),this.adjustOffset=s;var o=this._getTargetControl();$settings.GspxResolveCache?o.saveWidth=this._saveOffset||this._oldWidth||o.get_width():this._doControlWidth(o,s),Sys.UI.Controls.VSplitter.callBaseMethod(this,"doPageLoaded")},_animateExpand:function(t){var e=this._getTargetElt();Object.isUndefinedOrNull(this._oldWidth)&&(this._oldWidth=e.offsetWidth),t?(e.style.position="inherit",e.style.width=_px(this._oldWidth)):e.style.width=0;var i=this;setTimeout(function(){i.get_isDisposed()||i.set_isExpanded(t,!0)},200)},_initExpanded:function(){var t=this.get_isExpanded(),e=this._getTarget();t?(this._resetTargetVisible(e,!0),this.removeCssClass("collapsed")):(this._resetTargetVisible(e,!1),this.addCssClass("collapsed")),this._doOtherResize("width",!0)},_resetTargetVisible:function(t,e){t.control&&t.control.set_positionVisible?t.control.set_positionVisible(e):("TD"==t.parentNode.tagName&&(t=t.parentNode),$dom.setVisibleByPosition(t,e))},doMouseDown:function(t){this._allowDrag&&this.get_form()._allLoaded&&(this._stop=0,this._clearEvent(),this._mouseStartX=t.clientX,this._saveControlWidth(this._getTargetControl()),this._isExpanded&&(this._hasShape()&&"SPAN"==t.target.tagName||(this._leftWidth=this._leftControl.get_width(),this._rightWidth=this._rightControl.get_width(),this._bindEvent(t,"ew-resize"))))},_startDrag:function(t){if(t.cancel(),this._isTimeout&&!this.get_isDisposed()){var e=t.clientX-this._mouseStartX,i=this._rightWidth-e<this._minWidth2,s=this._leftWidth+e<this._minWidth;if(!(Math.abs(e)<2)){if(this._moveCursor(t),s||i){var n=this._stop;if(s&&e<0?($common.showInfo("不能继续拖动,左侧最小宽度为:"+this._minWidth),this._stop=1,e=this._minWidth-this._leftWidth):i&&e>0&&($common.showInfo("不能继续拖动,右侧最小宽度为:"+this._minWidth2),this._stop=1,e=this._rightWidth-this._minWidth2),1==n)return}1==this._stop&&(this._stop=0),$common.hideTips(),this._draging=!0,$common.hideToolTip(),this._isTimeout=!1,this._changeControlWidth(this._getTargetControl(),this._getIsHideLeft()?e:-1*e);var o=this;setTimeout(function(){o._isTimeout=!0},50)}}},_endDrag:function(t){if(this._clearEvent(),this._draging&&!this.get_isDisposed()){this._draging=!1;var e=this._getTargetControl();if(e){var i=e.get_width()-e.saveWidth;Sys.UI.Controls.VSplitter.callBaseMethod(this,"_endDrag",[t,i])}}},doDblClick:function(t){var e=this._getTargetControl();if(this._allowDrag&&this._isExpanded&&e){var i=-1*(e.get_width()-e.saveWidth);0!=i&&(this.setMDIPanelScroll(!1),this._changeControlWidth(e,i),this.setMDIPanelScroll(!0),this._saveConfig&&this.get_form()._internalSaveControlConfig(this.get_idPart(),null),this.adjustOffset=0)}},_saveControlWidth:function(t){t.oldWidth=t.get_realWidth?t.get_realWidth():t.get_width(),t.cachePadding=this._getIsHideLeft()?0:$common._getDomCachePadding(t.get_element(),!0)},_changeControlWidth:function(t,e){var i=this._getControlSaveWidth(t)+e;i<=10||t._fixedSize||(t.set_realWidth?t.set_realWidth(i):t.set_width(i+t.cachePadding),this._doOtherResize("width"))},_doControlWidth:function(t,e){if(this.get_allowDrag()){var i=t.get_width();t.saveWidth=i,0==e||t._fixedSize||(t.set_width(i+e),this._doOtherResize("width"))}},_getControlSaveWidth:function(t){return t.oldWidth?t.oldWidth:t.get_width()}},Sys.UI.Controls.VSplitter.registerClass("Sys.UI.Controls.VSplitter",_Z_46),Sys.UI.Controls.HSplitter=function(t){Sys.UI.Controls.HSplitter.initializeBase(this,[t]),this._minHeight=this._minHeight2=$settings.HSplitterMinHeight,this._mode=_Z_26.hideDown},Sys.UI.Controls.HSplitter.prototype={get_forUp:function(){return this._forUp},set_forUp:function(t){this._forUp=t},get_forDown:function(){return this._forDown},set_forDown:function(t){this._forDown=t},get_minHeight:function(){return this._minHeight},set_minHeight:function(t){"string"==typeof t&&(t=t.split(",")),this._minHeight=this._minHeight2=Number(t[0]),2==t.length&&(this._minHeight2=Number(t[1]))},_getIsHideDown:function(){return this.get_mode()!=_Z_26.hideUp},_getTarget:function(){return this._getIsHideDown()?this._downControl.get_element():this._upControl.get_element()},_getTargetControl:function(){return this._getIsHideDown()?this._downControl:this._upControl},_getOtherControl:function(){return this._getIsHideDown()?this._upControl:this._downControl},_checkControl:function(t){if(!t)throw Error.argumentNull("HSplitter的ForUp或ForDown指定的控件不存在");return t.get_height&&t.set_height||(t._fixedSize=!0,this.set_allowDrag(!1)),t},doPageLoaded:function(t){var e=this.get_forUp(),i=this.get_forDown();if(!e)throw Error.argumentNull("ForUp");if(!i)throw Error.argumentNull("ForDown");this.setMDIPanelScroll(!1),this._upControl=this._checkControl(t[e]),this._downControl=this._checkControl(t[i]);var s=0,n=this._saveConfig?t._internalGetControlConfig(this.get_idPart()):null;n&&(s=n.AdjustOffset,isNaN(s)&&(s=0),!1===n.IsExpanded&&(this._isExpanded=!1)),this._isExpanded||(this._oldHeight=this._getTargetElt().offsetHeight,this._getTargetElt().style.height=0),this.adjustOffset=s;var o=this._getTargetControl();$settings.GspxResolveCache?o.saveHeight=this._saveOffset||this._oldHeight||o.get_height():this._doControlHeight(o,s),Sys.UI.Controls.HSplitter.callBaseMethod(this,"doPageLoaded")},_animateExpand:function(t){var e=this._getTargetElt();Object.isUndefinedOrNull(this._oldHeight)&&(this._oldHeight=e.offsetHeight),t?(e.style.position="inherit",e.style.height=_px(this._oldHeight)):e.style.height=0;var i=this;setTimeout(function(){i.get_isDisposed()||i.set_isExpanded(t,!0)},200)},_initExpanded:function(){var t=this.get_isExpanded(),e=this._getTarget();t?(this._resetTargetVisible(e,!0),this.removeCssClass("collapsed")):(this._resetTargetVisible(e,!1),this.addCssClass("collapsed")),this._doOtherResize("height",!0)},_resetTargetVisible:function(t,e){t.control&&t.control.set_positionVisible?t.control.set_positionVisible(e):("TD"==t.parentNode.tagName&&(t=t.parentNode),$dom.setVisibleByPosition(t,e))},doMouseDown:function(t){this._allowDrag&&(this._stop=0,this._clearEvent(),this._mouseStartY=t.clientY,this._saveControlsHeight(this._getTargetControl()),this._isExpanded&&(this._hasShape()&&"SPAN"==t.target.tagName||(this._upHeight=this._upControl.get_height(),this._downHeight=this._downControl.get_height(),this._bindEvent(t,"ns-resize"))))},_startDrag:function(t){if(t.cancel(),this._isTimeout&&!this.get_isDisposed()){var e=t.clientY-this._mouseStartY,i=this._upHeight+e<this._minHeight,s=this._downHeight-e<this._minHeight2;if(!(Math.abs(e)<2)){if(this._moveCursor(t),i||s){var n=this._stop;if(i&&e<0?($common.showInfo("不能继续拖动,上方最小高度为:"+this._minHeight),this._stop=1,e=this._minHeight-this._upHeight):s&&e>0&&($common.showInfo("不能继续拖动,下方最小高度为:"+this._minHeight2),this._stop=1,e=this._downHeight-this._minHeight2),1==n)return}1==this._stop&&(this._stop=0),$common.hideTips(),this._draging=!0,$common.hideToolTip(),this._isTimeout=!1,this._changeControlHeight(this._getTargetControl(),this._getIsHideDown()?-1*e:e);var o=this;setTimeout(function(){o._isTimeout=!0},50)}}},_endDrag:function(t){if(this._clearEvent(),this._draging&&!this.get_isDisposed()){this._draging=!1;var e=this._getTargetControl();if(e){var i=e.get_height()-e.saveHeight;Sys.UI.Controls.HSplitter.callBaseMethod(this,"_endDrag",[t,i])}}},doDblClick:function(t){var e=this._getTargetControl();if(this._allowDrag&&this._isExpanded&&e){var i=-1*(e.get_height()-e.saveHeight);0!=i&&(this.setMDIPanelScroll(!1),this._changeControlHeight(e,i),this.setMDIPanelScroll(!0),this._saveConfig&&this.get_form()._internalSaveControlConfig(this.get_idPart(),null),this.adjustOffset=0)}},_saveControlsHeight:function(t){t&&(t.oldHeight=t.get_realHeight?t.get_realHeight():t.get_height(),t.cachePadding=this._getIsHideDown()?$common._getDomCachePadding(t.get_element(),!0):0)},_changeControlHeight:function(t,e){var i=this._getControlSaveHeight(t)+e;i<=10||t._fixedSize||(t.set_realHeight?t.set_realHeight(i):t.set_height(i+t.cachePadding),this._doOtherResize("height"))},_doControlHeight:function(t,e){if(this.get_allowDrag()){var i=t.get_height();t.saveHeight=i,0==e||t._fixedSize||(t.set_height(i+e),this._doOtherResize("height"))}},_getControlSaveHeight:function(t){return t.oldHeight?t.oldHeight:t.get_height()}},Sys.UI.Controls.HSplitter.registerClass("Sys.UI.Controls.HSplitter",_Z_46),Sys.UI.Controls.ProgressBar=function(t){Sys.UI.Controls.ProgressBar.initializeBase(this,[t]),this._value=0,this._showValue=!0,this._maxValue=100},Sys.UI.Controls.ProgressBar.prototype={initialize:function(){Sys.UI.Controls.ProgressBar.callBaseMethod(this,"initialize"),this._createValueBar(),this._refreshItems();var t=this;setTimeout(function(){t._refreshBar()},1)},_createValueBar:function(){var t=this.get_element(),e=this._valueBar=$common.createClassDiv("ProgressValue transition2");t.appendChild(e);var i=this._textBar=$common.createClassSpan("ProgressText");t.appendChild(i)},_refreshBar:function(){var t=this._getPercentValue(),e=t+"%";if(this._valueBar.style.width=e,this._items&&this._items.length>0){var i=100/this._items.length,s=this._textBar.childNodes;Array.forEach(s,function(e,s){$dom.setCssClass(t>s*i,e,"active")})}else{var n=this._textBar;n.innerText=this._getText(),n.className=t>=this._maxValue/2?"ProgressHighText":"ProgressText",$dom.hasClass(this.get_element(),"ValueFloat")&&(n.style.left=Math.max(0,t-5)+"%");var o=t==this._maxValue;$dom.setCssClass(o,this._valueBar,"ok"),o&&this._owner&&this._owner.set_enabled&&(this._owner.set_enabled(!0),this._owner=null)}},_getPercentValue:function(){return Math.roundTo(100*this._value/this._maxValue,2)},set_items:function(t){this._items=t,this.get_isInitialized()&&this._refreshItems()},_refreshItems:function(){if(this._items&&0!=this._items.length){var t=this.get_element();$dom.addCssClass(t,"hasItems hasText");var e=this._textBar;e.innerText="",Array.forEach(this._items,function(t){var i=t[this.get_dataTextField()],s=$common.createClassDiv("Item");s.innerText=i,e.appendChild(s)},this)}},get_text:function(){return this._text},set_text:function(t){this._text=t,this.get_isInitialized()&&(this._textBar.innerText=this._getText())},_getText:function(){var t="";return this._text&&(t=this._text),this._showValue&&(t+=" "+this._getPercentValue()+"%"),t},set_showValue:function(t){this._showValue=t,this.get_isInitialized()&&this._refreshBar()},get_showValue:function(){return this._showValue},set_value:function(t){Object.isUndefinedOrNull(t)&&(t=0),t>this._maxValue?t=this._maxValue:t<0&&(t=0),this._value=t,this.get_isInitialized()&&this._refreshBar()},get_value:function(){return this._value},set_maxValue:function(t){this._maxValue=t},get_maxValue:function(){return this._maxValue},set_owner:function(t){this._owner=t,t.set_enabled&&t.set_enabled(!1)}},Sys.UI.Controls.ProgressBar.registerClass("Sys.UI.Controls.ProgressBar",_Z_90);
4
+ _Z_285=function(e){_Z_285.initializeBase(this),this._node=e,this._text=e?e.get_text():""},_Z_285.prototype={get_node:function(){return this._node},get_text:function(){return this._text},set_text:function(e){this._text=e}},_Z_285.registerClass("_Z_285",Sys.EventArgs),_Z_21=function(e){_Z_21.initializeBase(this),this._node=e,this._allowModifyChild=!0,this._allowAddChild=!0,this._allowDeleteChild=!0,this._buttons={}},_Z_21.prototype={get_node:function(){return this._node},set_allowAddChild:function(e){this._allowAddChild=e},get_allowAddChild:function(){return this._allowAddChild},set_allowDeleteChild:function(e){this._allowDeleteChild=e},get_allowDeleteChild:function(){return this._allowDeleteChild},set_allowModify:function(e){this._allowModifyChild=e},get_allowModify:function(){return this._allowModifyChild},add_button:function(e,t){this._buttons[e]=t},remove_button:function(e){this._buttons[e]=!0}},_Z_21.registerClass("_Z_21",_Z_152),_Z_22=function(e,t,i){_Z_22.initializeBase(this),this._node=e,this._newText=t,this._oldText=i},_Z_22.prototype={get_node:function(){return this._node},get_newText:function(){return this._newText},get_oldText:function(){return this._oldText}},_Z_22.registerClass("_Z_22",_Z_152),_Z_172=function(e){_Z_172.initializeBase(this),this._node=e},_Z_172.prototype={get_node:function(){return this._node}},_Z_172.registerClass("_Z_172",_Z_152),_Z_173=function(e,t,i){_Z_173.initializeBase(this),this._insertNode=t,this._targetNode=e,this._flag=i},_Z_173.prototype={get_insertNode:function(){return this._insertNode},get_targetNode:function(){return this._targetNode},get_flag:function(){return this._flag}},_Z_173.registerClass("_Z_173",_Z_152),_Z_174=function(e,t,i,n){_Z_174.initializeBase(this),this._parentNode=e,this._prevNode=t,this._nextNode=i,this._text=n,this._data=null},_Z_174.prototype={get_parentNode:function(){return this._parentNode},get_prevNode:function(){return this._prevNode},get_nextNode:function(){return this._nextNode},get_text:function(){return this._text},set_text:function(e){this._text=e},set_data:function(e){this._data=e},get_data:function(){return this._data}},_Z_174.registerClass("_Z_174",_Z_152),_Z_175=function(e){_Z_175.initializeBase(this),this._curNode=e,this._defaultValue=""},_Z_175.prototype={get_curNode:function(){return this._curNode},set_defaultValue:function(e){this._defaultValue=e},get_defaultValue:function(){return this._defaultValue}},_Z_175.registerClass("_Z_175",_Z_152),Sys.UI.Controls.TreeView=function(e){Sys.UI.Controls.TreeView.initializeBase(this,[e]),this._requireKeyDown=!0,this._rootNodeText=$craba.getLangPro("根"),this._readOnly=!0,this._tipText=$craba.getLangPro("节点"),this._addFlag=0,this._searchNodeList=[],this._nodeTextMaxLength=20,this._expandLevel=100,this._nodeCount=0,this._maxLevel=0,this._showLevel=0,this._showDragLine=!0},Sys.UI.Controls.TreeView.prototype={initialize:function(){this._rootNode=this._getRootNodeType(),this._rootNode._treeView=this,this.get_form()._hasFlexBlock=!0,Sys.UI.Controls.TreeView.callBaseMethod(this,"initialize");this.get_element();this._dataSource&&this._rootNode._bindData(this._dataSource),this._rootNode.initialize(!0),this._initDrag(),this._initToolBar()},set_showLevel:function(e){this._showLevel=e},get_showLevel:function(){return this._showLevel},set_showDragLine:function(e){this._showDragLine=e},get_showDragLine:function(){return this._showDragLine},set_showColumns:function(e){this._showColumns=e,e&&(this._selectedNodes=[])},get_showColumns:function(){return this._showColumns},set_rootNodeText:function(e){this._showRootNode=!0,this._rootNodeText=$craba.getLangPro(e)},get_rootNodeText:function(){return this._rootNodeText},get_showToolBar:function(){return this._showToolBar},set_showToolBar:function(e){if(this._showToolBar=e,this.get_isInitialized()){var t=this.get_element().parentNode;$dom.removeCssClass(t,"ShowEditor"),$dom.removeCssClass(t,"ShowToolBar"),$dom.removeCssClass(t,"ShowEditor_parent"),$dom.removeCssClass(t,"ShowToolBar_parent"),this._initToolBar()}},addCssClass:function(e){var t=this.get_element();"ShowEditor"!=e&&"ShowToolBar"!=e||(t=this.get_element().parentNode),$dom.addCssClass(t,e)},_initToolBar:function(){(this._toolBar||this._showToolBar)&&(this._toolBar||(this._toolBar=new _Z_254(this)),this._toolBar.set_visible(this._showToolBar))},get_toolBar:function(){return this._toolBar},get_outerElement:function(){return this._element},_getRootNodeType:function(){return new Sys.UI.Controls.TreeNode(this._rootNodeText)},dispose:function(e){this.set_readOnly(!0),this._rootNode&&(this._rootNode.dispose(),this._rootNode=null),this._toolBar&&(this._toolBar.dispose(),this._toolBar=null),this._disposeDragEvents(),e&&$removeNode(this.get_element().parentNode),Sys.UI.Controls.TreeView.callBaseMethod(this,"dispose")},canTabOnEnter:function(){return!1},get_parentElement:function(){return this.get_element().parentNode},set_width:function(e){$common.setWidth(this.get_element().parentNode,e)},set_height:function(e){$common.setHeight(this.get_element().parentNode,e)},get_rootNode:function(){return this._rootNode},get_showRootNode:function(){return this._showRootNode},set_showRootNode:function(e){this._showRootNode=e},get_hintDataField:function(){return this._hintField},set_hintDataField:function(e){this._hintField=e},get_dataHintField:function(){return this._hintField},set_dataHintField:function(e){this._hintField=e},get_showCheckBoxes:function(){return this._showCheckBoxes},set_showCheckBoxes:function(e){this._showCheckBoxes=e},get_allowDoubleClickEvent:function(){return this._allowDoubleClickEvent},set_allowDoubleClickEvent:function(e){this._allowDoubleClickEvent=e},get_notUpdateParentCheck:function(){return this._notUpdateParentCheck},set_notUpdateParentCheck:function(e){this._notUpdateParentCheck=e},get_icon:function(){return this._icon},set_icon:function(e){this._icon=e},get_tipText:function(){return this._tipText},set_tipText:function(e){this._tipText=$craba.getLangPro(e)},get_showIcon:function(){return this._icon},get_selectedNode:function(){return this._selectedNode},set_selectedNode:function(e,t,i){if(this._selectedNode!=e||t){this._deSelectedNode(e),this._selectedNode=e;var n=!1!==t;if(e&&e.set_selected(!0,n),i)return;this._doSelectionChanged()}},_deSelectedNode:function(e){var t=this._selectedNode;t&&(this.get_showColumns()?this.clearSelect():t.set_selected(!1))},clearSelect:function(e){for(var t=this.get_selectedNodes(),i=t.length-1;i>-1;i--)t[i].set_selected(!1),e&&t[i].collapse();this._selectedNodes=[]},get_dataSource:function(e){var t=null;t=this.get_readOnly()?this._dataSource:this._dataSource=this._rootNode._getData([]);var i=Object.clone(t);return e?this.toList(i):i},set_dataSource:function(e){this._dataSource=e,this.get_isInitialized()&&this.refresh(e)},toList:function(e){var t=e||this.get_dataSource(),i=[];if(!t)return i;var n=function(e){e.forEach(function(e,t){e instanceof Array?n(e):i.push(e._data)})};return n(t),i},refresh:function(e,t){this._lastEditorNode=null,this._selectedNode=null,this._nodeCount=0,this._removeBtns(),Object.isUndefinedOrNull(e)||(this._dataSource=e);var i=this._rootNode;i.hasChildren()&&$removeNode(i.getChild(0)._getParentElement()),i.dispose();(i=this._rootNode=this._getRootNodeType())._treeView=this,i._bindData(this._dataSource),i.initialize(),t&&t()},locateNodes:function(e,t,i){var n=[];return this._doLocates(n,this.get_rootNode(),e,t,i),n},locateNode:function(e,t,i){var n=t;"string"==typeof t&&(n=t=t?t.toString():t,t&&t.indexOf("<")>=0&&(n=n.replace("<","&lt;")),t&&t.indexOf(">")>=0&&(n=n.replace(">","&gt;"))),this._searchText=n;var s=this._searchText==this._prevSearchText;s||Array.clear(this._searchNodeList);var o=this._doLocate(this.get_rootNode(),e,n,i);return null==o&&s?(Array.clear(this._searchNodeList),this._doLocate(this.get_rootNode(),e,n,i)):(this._prevSearchText=n,o)},_doLocate:function(e,t,i,n){if(this._compareText(e,t,i,n,!0))return this._searchNodeList.push(e),this.set_selectedNode(e,!0),e;for(var s=0,o=e.get_count();s<o;s++){var r=e.getChild(s),d=this._doLocate(r,t,i,n);if(null!=d)return d}return null},_doLocates:function(e,t,i,n,s){this._compareText(t,i,n,s,!1)&&e.push(t);for(var o=0,r=t.get_count();o<r;o++){var d=t.getChild(o);this._doLocates(e,d,i,n,s)}},_compareText:function(e,t,i,n,s){if(s&&this._searchText==this._prevSearchText&&Array.contains(this._searchNodeList,e))return!1;if(!(t instanceof Array))return this._compareText2(e,t,i,n);if(t.length!=i.length)throw Error.abort("locateNode的参数中names和values集合长度不相等");for(var o=0,r=t.length;o<r;o++)if(!this._compareText2(e,t[o],i[o],n))return!1;return!0},_compareText2:function(e,t,i,n){if("function"==typeof t)return t(e,i);var s=e.get_data(),o=s&&"object"==typeof s?s[t]:e.get_text();return n&&void 0!==o&&void 0!==i?o.toLowerCase()==i.toLowerCase():o==i},hasSelectedNode:function(){return null!=this._selectedNode},_internalTreeNodeCheckedChanged:function(){if(this.get_selectedNode()){var e=this.get_events().getHandler("treeNodeCheckedChanged");e&&e(this)}},add_treeNodeCheckedChanged:function(e){this.get_events().addHandler("treeNodeCheckedChanged",e)},remove_treeNodeCheckedChanged:function(e){this.get_events().removeHandler("treeNodeCheckedChanged",e)},doTreeNodeClick:function(e){},add_selectionChanged:function(e){this.get_events().addHandler("selectionChanged",e)},remove_selectionChanged:function(e){this.get_events().removeHandler("selectionChanged",e)},_doSelectionChanged:function(){var e=this.get_events().getHandler("selectionChanged");e&&e(this)},add_treeNodeClick:function(e){this.addCssClass("AllowClick"),this.get_events().addHandler("treeNodeClick",e)},remove_treeNodeClick:function(e){this.get_events().removeHandler("treeNodeClick",e)},_internalTreeNodeClick:function(e){if(this.get_enabled()){var t=this.get_selectedNode();if(t){this.doTreeNodeClick(t);var i=this.get_events().getHandler("treeNodeClick");i&&i(this),e&&e.cancel()}}},add_treeNodeDblClick:function(e){this.get_events().addHandler("treeNodeDblClick",e)},remove_treeNodeDblClick:function(e){this.get_events().removeHandler("treeNodeDblClick",e)},_internalTreeNodeDblClick:function(){var e=this.get_selectedNode();if(e){this.doTreeNodeDblClick(e);var t=this.get_events().getHandler("treeNodeDblClick");t&&t(this)}},doTreeNodeDblClick:function(e){},doKeyDown:function(e){if(this.get_enabled()){var t=!0;switch(e.keyCode){case Sys.UI.Key.left:if(this.hasSelectedNode()){if((s=this.get_selectedNode()).get_expanded())s.collapse();else{(n=s.get_parent())&&(n.isRoot()&&!this.get_showRootNode()&&(n=null),n&&this.set_selectedNode(n))}t=!1}break;case Sys.UI.Key.right:if(this.hasSelectedNode()){if((s=this.get_selectedNode()).get_expanded()){var i=s.get_first();i&&this.set_selectedNode(i)}else s.expand();t=!1}break;case Sys.UI.Key.up:if(this.hasSelectedNode()){var n=(s=this.get_selectedNode()).get_previousSibling();n&&(this.set_selectedNode(n),t=!1)}break;case Sys.UI.Key.down:if(this.hasSelectedNode()){var s=this.get_selectedNode(),o=s.get_nextSibling();o&&(this.set_selectedNode(o),t=!1)}break;case Sys.UI.Key.home:case Sys.UI.Key.pageUp:break;case Sys.UI.Key.end:case Sys.UI.Key.pageDown:break;case Sys.UI.Key.space:this.get_showCheckBoxes()&&this.hasSelectedNode()&&this.get_selectedNode().get_enabled()&&(this.get_selectedNode().toggleChecked(),t=!1),e.stopPropagation();break;case Sys.UI.Key.enter:this._internalTreeNodeClick()}t?Sys.UI.Controls.TreeView.callBaseMethod(this,"doKeyDown",[e]):e.cancel()}},add_getNodeDisplayText:function(e,t){this.get_events().addHandler("getNodeDisplayText",e,t)},remove_getNodeDisplayText:function(e){this.get_events().removeHandler("getNodeDisplayText",e)},_internalGetNodeDisplayText:function(e){var t=this.get_events().getHandler("getNodeDisplayText");if(t){var i=new _Z_285(e);return t(this,i),i.get_text()}return e.get_text()},get_checkedNodes:function(e,t){if(!this.get_showCheckBoxes())return[];var i=[];return this._getCheckedNodes(this._rootNode,i,e,t),i},_getCheckedNodes:function(e,t,i,n){if(e){var s=e.get_children();if(s)for(var o=0,r=s.length;o<r;o++)this._getCheckedNodes(s[o],t,i,n);this._rootNode!=e&&e.get_checked()&&(n&&s||(i?e.get_partialChecked()||t.push(e):t.push(e)))}},get_selectedNodes:function(){return this._selectedNodes?(this._selectedNodes.sort(function(e,t){return e.get_level()-t.get_level()}),this._selectedNodes):[]},get_readOnly:function(){return this._readOnly},set_readOnly:function(e){e&&this.hideEditor(),this._readOnly=e,this._processMouseEvent()},get_nodeTextMaxLength:function(){return this._nodeTextMaxLength},set_nodeTextMaxLength:function(e){this._nodeTextMaxLength=e,this._nodeEdit&&this._nodeEdit.set_maxLength(e)},set_addFlag:function(e){this._addFlag=e},showDefaultEditor:function(e,t){var i=this.get_selectedNode();if(i||(i=this._rootNode.get_nextSibling()),i){for(var n=i.get_parent();n;)n.expand(),n=n.get_parent();asyncCall(function(){i.showEditor()})}},_processMouseEvent:function(){this._readOnly&&(this._disposeControl("_nodePopup"),this._disposeControl("_nodeBtns"))},_disposeControl:function(e){var t=this[e];t&&(t.tagName?$disposeNode(t):(t.clear&&t.clear(!0),t.dispose()),delete this[e])},_getBtnsBlock:function(){if(this._readOnly)return null;if(this._nodeBtns)return this._nodeBtns;var e=this._nodeBtns=$common.createClassDiv("EditorBlock");return this._nodeBtnAdd=this._createButton(e,"aicon-plus",$createDelegate(this,this.doAdd),"add"),this._nodeBtnModify=this._createButton(e,"aicon-bianji6",$createDelegate(this,this.doAdd),"modify"),this._nodeBtnDel=this._createButton(e,"aicon-shanchu1",$createDelegate(this,this.doDelChild)),e},_createButton:function(e,t,i,n){var s=new _Z_23(e,t,!1);return s.initialize(),s.add_click(i),s.set_tag(n),s.__form=this.__form,s},_createEdit:function(e){var t=$common.createInput();return t.type="text",t.className="Edit NodeEdit",e.appendChild(t),t},hideEditor:function(e){this._editorNode&&(e&&e.target&&$dom.hasClass(e.target,"ExpandBlock")||this._editorNode.hideEditor())},_hideEditPopup:function(){this._lastEditorNode=null,this._nodePopup&&this._nodePopup.hide()},get_editPopup:function(){return this._nodePopup},doAdd:function(e,t){if(t&&t.cancel(),this._editorNode){this._lastEditorNode=this._editorNode,this._lastText=this._lastEditorNode.get_text(),this._isModify=e.get_tag&&"modify"==e.get_tag();var i=this._lastEditorNode,n=new _Z_175(i),s=this.get_events().getHandler("_nodeAddBeforePopup");if(s){if(s(this,n),n.get_cancel())return;this._initEditPopup(n.get_defaultValue())}else this._initEditPopup("");this.set_selectedNode(i,!1,!0),this._initEditPopupEnabled(),e.get_visible()||(e=i),this._nodePopup.popupAt(e),this._nodeEdit.asyncFocus()}},_initEditPopupEnabled:function(){var e=this._nodeRadio,t="添加";if(this._isModify)t="修改",this._nodeEdit.set_text(this._lastEditorNode.get_text());else{var i=!0,n=e.get_value();1==this._addFlag?(i=!1,n=0):2==this._addFlag&&(i=!1,n=1),e.set_value(n),e.set_enabled(i)}e.set_visible(!this._isModify),this._captionLabel.set_text($craba.getLangPros(t,this._tipText))},_initEditPopup:function(e){if(this._nodePopup)this._nodeEdit.set_text(e);else{var t=this.get_form(),i=this.get_idPart(),n=i+"_editPopup",s=i+"_radio",o=i+"_edit",r=i+"_caption",d=$createControl("PopupBlock",{ID:n,CssClass:"NodeEditPopup"},t,null,!0);$createControl("Label",{ID:r,CssClass:"Caption"},t,d);var a=$createControl("FlowPanel",{LayoutDirection:"Vert"},t,d);$createControl("TextEdit",{ID:o,Label:$craba.getLangPro("名称"),CssClass:"FlexAuto",Text:e,TabOnEnter:!1,OnEnterPress:$createDelegate(this,this._doOkClick),MaxLength:this._nodeTextMaxLength},t,a),$createControl("RadioButtonList",{ID:s,Label:$craba.getLangPro("层级"),ShowBorder:!1,DataSource:[{id:0,text:$craba.getLangPros("同级",this._tipText)},{id:1,text:$craba.getLangPros("子级",this._tipText)}],DataValueField:"id",DataTextField:"text",LayoutDirection:"Horz",Value:0},t,a);var h=$createControl("HBlock",{HAlign:"Right"},t,d);$createControl("Button",{Text:$craba.getLangPro("确定"),OnClick:$createDelegate(this,this._doOkClick),CssClass:"SpecialButton"},t,h),$createControl("Button",{CssClass:"mr0",OnClick:$createDelegate(this,this._removeBtns),Text:$craba.getLangPro("取消")},t,h),d.appendTo(document.body),this._nodePopup=t[n],this._nodeRadio=t[s],this._captionLabel=t[r],this._nodeEdit=t[o]}},_doOkClick:function(e,t){var i=this._nodeEdit.get_value();if(""!=i){var n=this._lastEditorNode;if(this._isModify){if((_=this._nodeEdit.get_value())==this._lastText||""==_)return;var s=this.get_events().getHandler("_change");if(s){if(s(this,l=new _Z_22(n,_,this._lastText)),l.get_cancel())return}this._removeBtns();var o=n.get_value();return"string"==typeof o?o=_:o._text=_,void $craba.innerHTMLs(n._textElement,n.get_text(!0))}var r=1==this._nodeRadio.get_value(),d=r?n:n.get_parent(),a=r?n.get_first():n.get_next(),h=r?null:n,l=this._raiseAddNodeEvent(d,h,a,i);if(l){this._removeBtns();var _=l.get_text(),c=l.get_data(),u={_text:_||i,_data:c},g=new Sys.UI.Controls.TreeNode(u);d.expand(),h?(g.applyParent(d),g.initialize(),h._afterInsert(g)):a?(g.applyParent(d),g.initialize(),a._beforeInsert(g)):(d.appendChild(g,!0),this.set_selectedNode(g)),this._nodeEdit.set_value("")}}else $common.showHint($craba.getLangPro("名称不能为空"),this._nodeEdit)},_raiseAddNodeEvent:function(e,t,i,n){var s=new _Z_174(e,t,i,n),o=this.get_events().getHandler("_nodeAdd");return o?(o(this,s),s.get_cancel()?null:s):s},doDelChild:function(e,t){t&&t.cancel();var i=this._editorNode;i&&i.get_parent()&&(this.set_selectedNode(i,!1,!0),this._lastEditorNode=i,this._raiseDelNodeEvent(i)&&this.removeCurNode())},getEditorNode:function(){return this._editorNode},removeCurNode:function(){var e=this._lastEditorNode;e&&e.get_parent()&&(this._removeBtns(),e.get_parent().removeNode(e),this._lastEditorNode=null,this._selectedNode==e&&(this._selectedNode=null))},_raiseDelNodeEvent:function(e){var t=this.get_events().getHandler("_nodeDeleted");if(!t)return!0;var i=new _Z_172(e);return i.button=this._nodeBtnDel,t(this,i),!i.get_cancel()},_removeBtns:function(){var e=this._getBtnsBlock();e&&e.parentNode&&e.parentNode.removeChild(e),this._hideEditPopup()},get_allowDrag:function(){return this._allowDrag},set_allowDrag:function(e){this._allowDrag=e,this._allowDrop=e,this.get_isInitialized()&&(e?this._initDrag():this._disposeDragEvents())},get_allowDrop:function(){return this._allowDrop},set_allowDrop:function(e){this._allowDrop=e},get_isDraging:function(){return this._draging},_disposeDragEvents:function(){this._clearEvent(),this._mouseDownHandler&&($common.removeMouseDownHandler(this.get_element(),this._mouseDownHandler),this._mouseDownHandler=null),this._dragBlock&&($removeNode(this._dragBlock),$removeNode(this._dragLine),this._dragBlock=null)},_initDrag:function(){this._allowDrag&&(this._mouseDownHandler=$common.addMouseDownHandler(this.get_element(),this.doTreeMouseDown,this),this._initDragElement())},_initDragElement:function(){if(!this._dragBlock){var e=this._dragBlock=$common.createClassDiv("TreeDragBlock");e.style.zIndex=$app.getPopupElementZIndex(),document.body.appendChild(e);var t=this._dragLine=$common.createClassDiv("TreeDragLine");t.style.zIndex=$app.getPopupElementZIndex(),document.body.appendChild(t)}},doTreeMouseDown:function(e){if(this.get_enabled()){this._insertNode=null,this._targetNode=null;var t=e.target;t&&t.tagName&&$dom.hasClass(t,"TextBlock")&&(this._insertNode=t._node,this._startX=e.clientX,this._startY=e.clientY,this._isTimeout=!0,e.cancel(),this.set_selectedNode(this._insertNode),this._mouseMoveHandler||(this._mouseMoveHandler=$common.addMouseMoveHandler(document,this._startDrag,this),this._mouseUpHandler=$common.addMouseUpHandler(document,this._endDrag,this)))}},_startDrag:function(e){e.cancel();var t=e.clientX-this._startX;if(!this._draging&&(Math.abs(t)>12||Math.abs(e.clientY-this._startY)>12)){this._draging=!0,$app.isDraging=!0,this._dragBlock.innerText="",this.hideEditor(),this._hideEditPopup();var i=this._insertNode._nodeElement;this._dragBlock.appendChild(i.cloneNode(!0)),this.get_allowDrop()&&this._insertNode.set_visible(!1)}if(this._isTimeout&&this._draging&&!this.get_isDisposed()){var n=this;n._isTimeout=!1,setTimeout(function(){n._isTimeout=!0},50),this._moveDragBlockByPos(e),_Z_229.dragMove(e,this)}},_moveDragBlockByPos:function(e){var t=this._dragBlock;t&&(t.style.display="block",t.style.left=e.clientX+5+"px",t.style.top=e.clientY+5+"px")},_dragMove:function(e){if(this._draging=!0,this._allowDrop){var t=$dom.getLocation(this.get_element());this._startX||(this._startX=t.x);var i=e.clientX-this._startX,n=e.clientY,s=t.y+this.get_element().offsetHeight;n<t.y+9?(n=t.y+9,this.get_element().scrollTop-=12):n>s-11&&(n=s-11,this.get_element().scrollTop+=12);var o=this._dragLine,r=document.elementFromPoint(t.x+5,n);if("DIV"==r.tagName){for(var d=r.parentNode;d&&!d._node;)d=d.parentNode;if(!d)return void this._refreshWidth(e,t.x);var a=this._targetNode=d._node;this.set_selectedNode(a)}else if(null==this._targetNode)return;var h=this._targetNode._nodeElement,l=$common.getBounds(h),_=$common.getBounds(this._targetNode._textElement);o.style.display=this.get_showDragLine()?"block":"none",this._insertBefore=!1;var c=l.y+l.height;n<l.y+l.height/2&&(c=l.y,this._insertBefore=!0),o.style.top=c+"px";var u=_.x-8;this._insertChild=!1,i>100&&!this._insertBefore&&(u+=_.width/2,this._insertChild=!0),o.style.left=u+"px",this._refreshWidth(e,u,l)}},_refreshWidth:function(e,t,i){if(this._dragLine)if(i)this._dragLine.style.width=i.x+i.width-t+"px";else{var n=e.clientX-t;n=Math.max(100,n),n=Math.min(n,this.get_width()),this._dragLine.style.width=n-10+"px"}},_endDrag:function(e){$app.isDraging=!1,this._dragBlock&&(this._dragBlock.style.display="none",this._dragLine.style.display="none"),this._clearEvent(),this._draging&&!this.get_isDisposed()&&(this._draging=!1,_Z_229.endDrag(e,this)&&(this._dragClass(!1,"DropStyle"),this._insertNode&&this._targetNode&&(this._insertBefore?this._targetNode.beforeInsert(this._insertNode):this._insertChild?(this._targetNode.expand(),this._targetNode.insertChild(0,this._insertNode)):this._targetNode.afterInsert(this._insertNode)),this._showDragNode()))},_dragClass:function(e,t){$dom.setCssClass(e,this._element.parentNode,t)},getDragData:function(){var e=this._insertNode,t=this.saveDatas(e);return Object.clone(t)},_getDragIndex:function(){return null},get_insertFlag:function(){return this._insertBefore?"before":this._insertChild?"child":"after"},_emitDragMove:function(e,t){this._dragMove(e)},_emitDragEnd:function(e,t){this._draging=!1,this._dragBlock&&(this._dragBlock.style.display="none",this._dragLine.style.display="none")},_emitDragLeave:function(e,t){this._dragLine&&(this._dragLine.style.display="none")},cancelDrag:function(){this._draging=!1,this._dragClass(!1,"DropStyle"),this._showDragNode()},_showDragNode:function(){this._insertNode&&($dom.setVisible(this._insertNode._nodeElement,!0),this._insertNode._expanded&&$dom.setVisible(this._insertNode._childrenElement,!0))},_clearEvent:function(){this._mouseMoveHandler&&($common.removeMouseMoveHandler(document,this._mouseMoveHandler),$common.removeMouseUpHandler(document,this._mouseUpHandler),this._mouseMoveHandler=null)},saveDatas:function(e){e||(e=this._rootNode);var t=[];return this._saveDatas(e,t),Object.clone(t)},_saveDatas:function(e,t){t.push(e.get_data());for(var i=e.get_children(),n=0,s=i.length;n<s;n++){var o=i[n];this._saveDatas(o,t)}return t},get_defaultCheckDataField:function(){return this._defaultCheckDataField},set_defaultCheckDataField:function(e){e&&(this._defaultCheckDataField=e)},get_expandLevel:function(){return this._expandLevel},set_expandLevel:function(e){this._expandLevel=e,this.get_isInitialized()&&this.refreshLevel()},refreshLevel:function(e){e||(e=this._rootNode);for(var t=e.get_children(),i=0,n=t.length;i<n;i++){var s=t[i];this.refreshLevel(s),s.refreshLevel()}},set_enabled:function(e){Sys.UI.Controls.TreeView.callBaseMethod(this,"set_enabled",[e]);var t=this.get_selectedNode();t&&t.set_selected(!0)},add_change:function(e,t){return this.get_events().addHandler("_change",e,t)},remove_change:function(e){this.get_events().removeHandler("_change",e)},add_nodeBeginEdit:function(e,t){return this.get_events().addHandler("_nodeBeginEdit",e,t)},remove_nodeBeginEdit:function(e){this.get_events().removeHandler("_nodeBeginEdit",e)},add_nodeAdd:function(e,t){return this.get_events().addHandler("_nodeAdd",e,t)},remove_nodeAdd:function(e){this.get_events().removeHandler("_nodeAdd",e)},add_nodeDeleted:function(e,t){return this.get_events().addHandler("_nodeDeleted",e,t)},remove_nodeDeleted:function(e){this.get_events().removeHandler("_nodeDeleted",e)},add_nodeAddBeforePopup:function(e,t){return this.get_events().addHandler("_nodeAddBeforePopup",e,t)},remove_nodeAddBeforePopup:function(e){this.get_events().removeHandler("_nodeAddBeforePopup",e)},add_exchange:function(e,t){return this.get_events().addHandler("_exchange",e,t)},remove_exchange:function(e){this.get_events().removeHandler("_exchange",e)},add_drop:function(e){this.get_events().addHandler("_drop",e),this._allowDrop=!0},remove_drop:function(e){this.get_events().removeHandler("_drop",e),this._allowDrop=!1},add_toolClick:function(e){this.get_events().addHandler("_toolClick",e)},remove_toolClick:function(e){this.get_events().removeHandler("_toolClick",e)},add_toolSearch:function(e){this.get_events().addHandler("_toolSearch",e)},remove_toolSearch:function(e){this.get_events().removeHandler("_toolSearch",e)},set_visible:function(e){this.get_isInitialized()&&($dom.setVisible(this.get_element().parentNode,e,""),Sys.UI.Controls.TreeView.callBaseMethod(this,"set_visible",[e,""]))},set_toolBarItems:function(e){this._toolBarItems=e,this.get_isInitialized()&&this._toolBar&&this._toolBar.set_items(e)},get_toolBarItems:function(){return this._toolBarItems},set_positionVisible:function(e){this._pvisible!==e&&(this._pvisible=e,$dom.setVisibleByPosition(this.get_element().parentNode,e))}},Sys.UI.Controls.TreeView.registerClass("Sys.UI.Controls.TreeView",Sys.UI.Controls.Container),_Z_253=function(e,t){this._node=e,this._buttonName=t},_Z_253.prototype={get_node:function(){return this._node},get_buttonName:function(){return this._buttonName}},_Z_253.registerClass("_Z_253",Sys.EventArgs),_Z_254=function(e){this.tree=e,this.initialize()},_Z_254.prototype={initialize:function(){var e=this.tree,t=e.get_element();$dom.addCssClass(t.parentNode,"hasTool");var i=e.get_idPart()+"_toolBar",n=e.get_form(),s=$createControl("Block",{ID:i,CssClass:"TreeToolBar"},n);$createControl("Buttons",{ID:i+"btn",DataCssField:"icon",DataHintField:"hint",DataValueField:"type"},n,s);var o=$createControl("Block",{CssClass:"SearchBar"},n,s);$createControl("TextEdit",{ID:i+"edit",CssClass:"FlexAuto",TabStop:!1,TabOnEnter:!1,Hint:"",NullDisplayText:$craba.getLangPros("搜索",e._tipText)},n,o),$createControl("Label",{ID:i+"search",CssClass:"aicon-chaxun"},n,o),s.appendTo(t),s=this._toolBar=n[i],t.parentNode.insertBefore(s.get_element(),t);var r=this.tree.get_toolBarItems()||$settings.TreeToolBarItems,d=this._buttons=n[i+"btn"];d.set_items(r),d.add_click($createDelegate(this,this.doClick));(this._edit=n[i+"edit"]).add_enterPress($createDelegate(this,this.doSearch)),n[i+"search"].add_click($createDelegate(this,this.doSearch))},set_items:function(e){this._buttons.set_items(e)},dispose:function(){},get_element:function(){return this._toolBar.get_element()},doClick:function(e,t,i){var n=t.get_data();"drag"==n.type&&this.doDrag();var s=this.tree.get_events().getHandler("_toolClick");if(s){var o=this.tree,r=o.get_selectedNode();r||"add"!=n.type||(r=o._rootNode.get_nextSibling());s(o,t=new _Z_253(r,n.type))}},doSearch:function(e){var t=this.tree.get_events().getHandler("_toolSearch");if(t){var i=this._edit;t(this.tree,i.get_text()),i.asyncFocus()}},set_visible:function(e){this._toolBar.set_visible(e)},set_text:function(e){this._edit.set_text(e)},doDrag:function(){var e=this.tree.get_allowDrag();this.tree.set_allowDrag(!e)}},Sys.UI.Controls.TreeNode=function(e,t){this._value=e,this._children=[],this._level=0,this._defaultCheckState=t,this._expanded=!0,this._checkState=0,this._enabled=!0,this._childrenExpanded=!0},Sys.UI.Controls.TreeNode.prototype={initialize:function(e){this._treeView.get_showColumns()?e?this.doInitColumn():this._initNode():this.doInit()},dispose:function(){this._expandElement&&($clearHandlers(this._expandElement),this._expandElement=null),this._checkElement&&($clearHandlers(this._checkElement),this._checkElement=null),this._textElement&&($clearHandlers(this._textElement),this._textElement=null);for(var e=this.get_count(),t=0;t<e;t++){this.getChild(t).dispose()}this._childrenElement=null,this._nodeElement=null,this._children=[]},get_nodeElement:function(){return this._nodeElement},doInit:function(){this.isRoot()&&!this._treeView.get_showRootNode()||this._initNode(),this.doInitChild()},doInitChild:function(){var e=this.get_count(),t=this._treeView.get_expandLevel()<this._level,i="dselect ChildrenBlock Children"+this._level,n=this._childrenElement=$common.createClassDiv(i);t&&(n.style.display="none",this._expanded=!1,this._childrenExpanded=!1);for(var s=0;s<e;s++)this.getChild(s).initialize();this._getParentElement().appendChild(n),this._expanded||this._initNodeExpand()},doInitColumn:function(){var e=this.get_count();if(0!=e){for(var t="ChildrenBlock Children"+this._level,i=this._childrenElement=$common.createClassDiv(t),n=0;n<e;n++){this.getChild(n).initialize()}if(!(this._level>0)){var s=this._treeView,o=s.get_element();o.appendChild(i),s._levelDivs={};for(n=1;n<s._maxLevel;n++)s._levelDivs[n]=div=$common.createClassDiv("Children0 dnone"),o.appendChild(div)}}},_showColumnChilds:function(e){if(this._childrenElement||this.doInitColumn(),this._childrenElement){var t=this._treeView,i=this._level,n=t._levelDivs[i];if(n){$dom.empty(n),$dom.setCssClass(!e,n,"dnone"),n.appendChild(this._childrenElement);for(var s=i+1;s<t._maxLevel;s++){var o=t._levelDivs[s];$dom.addCssClass(o,"dnone"),$dom.empty(o)}}}},refreshLevel:function(){this._treeView.get_expandLevel()<this._level?this.collapse():this.expand()},_initNode:function(){var e=this._nodeElement=$common.createClassDiv("TreeNode");e._node=this;var t=this._treeView._showColumns;if(!t){var i=this._levelElement=$common.createClassDiv();this._initNodeLevel(),e.appendChild(i);var n=this._expandElement=$common.createDiv();this._initNodeExpand(),e.appendChild(n),$common.addMouseDownHandler(n,this._onExpandMouseDown,this),this._createCheckBox(e)}var s=this._textElement=$common.createClassDiv("TextBlock");s._node=this,s.tabIndex=0,e.appendChild(s),t&&this._createCheckBox(e),$common.addClickHandler(e,this.onNodeClick,this),$common.addDblClickHandler(e,this._onTextDblClick,this),$common.addSelectStartHandler(s,this._onTextSelectStart,this),$common.addMouseOverHandler(s,this._onTextMouseOver,this),$common.addMouseEnterHandler(e,this._onNodeMouseOver,this),$common.addMouseLeaveHandler(e,this._onNodeMouseLeave,this),this._getParentElement().appendChild(e),this.refreshDisplayText(),this._treeView.get_showCheckBoxes()&&(1==this._defaultCheckState&&this.check(!0),2==this._defaultCheckState&&this.togglePartialChecked())},_createCheckBox:function(e){this._treeView.get_showCheckBoxes()&&(this._checkElement=$common.createDiv(),e.appendChild(this._checkElement),this._initNodeCheck(),$common.addClickHandler(this._checkElement,this._onCheckClick,this))},_initExpandElement:function(){},get_textPrefix:function(){return this._textPrefix},set_textPrefix:function(e){this._textPrefix=e,this._textElement&&$craba.innerHTMLs(this._textElement,this.get_text(!0))},get_treeView:function(){return this._treeView},get_parent:function(){return this._parent},addNode:function(e,t){var i={_text:e,_data:t},n=new Sys.UI.Controls.TreeNode(i),s=this.get_parent();return s?(n.applyParent(s),n.initialize(),this._afterInsert(n),n):this.addChild(e,t,!0,!0)},addChild:function(e,t,i,n){var s={_text:e,_data:t},o=new Sys.UI.Controls.TreeNode(s);return this.expand(),!i&&this.get_first()?(o.applyParent(this),o.initialize(),this.get_first()._beforeInsert(o,n)):(this.appendChild(o,!0),n||this._treeView.set_selectedNode(o)),o},get_previousSibling:function(){if(this.isRoot())return null;for(var e=this.get_parent(),t=e.get_count(),i=0;i<t&&this!=e.getChild(i);i++);if(0==i)return e.isRoot()&&!e._treeView.get_showRootNode()?null:e;var n=e.getChild(--i),s=n.get_lastVisible();return s||n},get_nextSibling:function(e){if(this.isRoot())return this.get_firstVisible();for(var t=this.get_parent(),i=t.get_count(),n=0;n<i&&this!=t.getChild(n);n++);if(++n==i){if(t.isRoot())return this.get_firstVisible();return(s=e?null:this.get_firstVisible())||t.get_nextSibling(!0)}var s=e?null:this.get_firstVisible();return s||t.getChild(n)},get_value:function(){return this._value},set_value:function(e){e&&(this._value=e,$craba.innerHTMLs(this._textElement,this.get_text(!0)))},get_text:function(e){var t=this.get_value();return"string"!=typeof t&&(t=t._text),e&&this._textPrefix?this._textPrefix+t:t},set_text:function(e){$craba.innerHTMLs(this._textElement,e)},get_data:function(){var e=this.get_value();return"string"==typeof e?null:e._data},set_data:function(e){var t=this.get_value();Object.isUndefinedOrNull(t)&&(t=this._value={}),"string"!=typeof t&&(t._data=e)},set_enabled:function(e){this._enable!=e&&(this._enabled=e,this.hideEditor(),$dom.setCssClass(!e,this._nodeElement,"disabled"))},get_enabled:function(){return this._enabled&&this._treeView.get_enabled()},get_count:function(){return this._children.length},getChild:function(e){return this._children[e]},get_children:function(){return this._children},get_first:function(){return this.hasChildren()?this.getChild(0):null},get_firstVisible:function(){return this.get_expanded()?this.get_first():null},get_next:function(){for(var e=this.get_parent(),t=e.get_count(),i=0;i<t&&this!=e.getChild(i);i++);return++i==t?null:e.getChild(i)},get_last:function(){return this.hasChildren()?this.getChild(this.get_count()-1):null},get_lastVisible:function(){return this.get_expanded()?this.get_last():null},hasChildren:function(){return this._children.length>0},appendChild:function(e,t){if(this.hasChildren()){var i=this._children[this._children.length-1];i._next=e,e._prev=i,e._next=null}if(this._children[this._children.length]=e,e.applyParent(this),t){e.initialize(),this._expanded=!1,this.expand();var n=e.get_previousSibling();n&&n!=this&&n.get_parent()._refreshNode()}return e},removeNode:function(e){var t=this;e||(t=this.get_parent(),e=this);var i=e._prev,n=e._next;i&&(i._next=n),n&&(n._prev=i);for(var s=0;s<e.get_count();s++)e.removeNode(e.getChild(s));Array.remove(t._children,e),$removeNode(e._nodeElement),$removeNode(e._childrenElement),t._refreshNode(),e.dispose(),e==this._treeView._selectedNode&&(this._treeView._selectedNode=null)},isRoot:function(){return null==this._parent},applyParent:function(e){if(!e)return!1;this._treeView=e._treeView,this._parent=e,this._level=e._level+1,this._treeView._maxLevel=Math.max(this._level,this._treeView._maxLevel);for(var t=0,i=this._children.length;t<i;t++)this._children[t].applyParent(this);return!0},get_level:function(){var e=this._level;return this._treeView.get_showRootNode()||e--,e},getAncestor:function(e){if(e>=this.get_level()||e<0)return null;for(var t=this.get_parent();t.get_level()>e;)t=t.get_parent();return t},_bindData:function(e){for(var t=0;t<e.length;t++)this._bindOneData(e[t])},_bindOneData:function(e){var t=this._treeView;if(!(t._showLevel>0&&t._showLevel<=this._level)){var i=e[0],n=t.get_defaultCheckDataField(),s=this._treeView&&n&&i._data?i._data[n]:null;this._treeView._nodeCount++;var o=new Sys.UI.Controls.TreeNode(i,s);t.get_showColumns()&&(o._expanded=!1),this.appendChild(o);for(var r=1;r<e.length;r++)o._bindOneData(e[r])}},_getData:function(e){for(var t=0;t<this.get_count();t++){var i=[];this._children[t]._getOneData(i),e.push(i)}return e},_getOneData:function(e){e.push(this.get_value());for(var t=0;t<this.get_count();t++){var i=[];this._children[t]._getOneData(i),e.push(i)}},_refreshNode:function(e){this._initNodeLevel(),this._initNodeExpand();for(var t=this.get_count(),i=0;i<t;i++)this.getChild(i)._refreshNode();$dom.setCssClass(t>0,this._nodeElement,"hasChild"),e&&this.refreshDisplayText()},_getChildrenElement:function(){return this._childrenElement},_getParentElement:function(){var e=this.get_parent();return e?e._getChildrenElement():this.get_treeView().get_element()},_raiseBeginEditNodeEvent:function(){var e=this._treeView,t=new _Z_21(this),i=e.get_events().getHandler("_nodeBeginEdit");return i&&i(e,t),t},showEditor:function(e){if(!this.get_enabled())return!1;if(!$app.isDraging){var t=this._treeView,i=t._getBtnsBlock();if(!i)return!1;var n=!1,s=this._raiseBeginEditNodeEvent(),o=t._nodeBtnAdd;s.get_allowAddChild()?(o.set_visible(!0),n=!0):o.set_visible(!1),o=t._nodeBtnModify,s.get_allowModify()&&!s.get_cancel()?(o.set_visible(!0),n=!0):o.set_visible(!1),o=t._nodeBtnDel,s.get_allowDeleteChild()?(o.set_visible(!0),n=!0):o.set_visible(!1);for(var r in s._buttons){var o=$common.getFirstChildByClassName(i,r),d=s._buttons[r];!0!==d?(o||t._createButton(i,r,d,r),n=!0):o&&$disposeNode(o)}return!!n&&(this.get_nodeElement().appendChild(i),t._editorNode=this,t._documentClickHander||(t._documentClickHander=$common.addClickHandler(document,t.hideEditor,t)),!0===e?t.doAdd(t._nodeBtnAdd):!1===e&&t.doAdd(t._nodeBtnModify),!0)}},hideEditor:function(){if(this._textElement){var e=this._treeView,t=e._nodeBtns;t&&(e._documentClickHander&&($common.removeClickHandler(document,e._documentClickHander),e._documentClickHander=null),$removeNode(t,!1))}},refreshDisplayText:function(){var e=this._textElement;if(e){var t=this._treeView,i=t._internalGetNodeDisplayText(this);$craba.innerHTMLs(e,i);var n=t.get_hintDataField();if(n)if("true"!==n.toString().toLowerCase()){var s=this.get_data();s&&(i=s[n])&&(e.title=$common.clearHTMLTag(i))}else e.title=$common.clearHTMLTag(i)}},_refreshExpanded:function(){if(!this._expanded){var e=this;asyncCall(function(){var t=e._childrenElement;t&&(t.style.display="none")})}},isParent:function(e){for(var t=e.get_parent();t;){if(t==this)return!0;t=t.get_parent()}return!1},set_visible:function(e){$dom.setVisible(this._nodeElement,e),$dom.setVisible(this._childrenElement,e)},get_index:function(){return Array.indexOf(this.get_parent()._children,this)},exchange:function(e){if(!e)throw Error.abort("node1.exchange(node2) 两个节点交换必须传入另外一个节点参数");if(this._raiseExchange(this,e,"exchange")){var t=this.isParent(e),i=e.isParent(this);if(t||i){var n=this.get_value();return this.set_value(e.get_value()),void e.set_value(n)}var s=e._childrenElement,o=e._nodeElement,r=this._childrenElement,d=this._nodeElement;o.parentNode.insertBefore(r,o),d.parentNode.insertBefore(s,d),r.parentNode.insertBefore(d,r),s.parentNode.insertBefore(o,s),o._parent=e.get_parent(),d._parent=this.get_parent(),e._exchangeParent(this),this._exchangeParent(e),e._refreshNode(),this._refreshNode()}},beforeInsert:function(e){this._raiseExchange(this,e,"before")&&this._beforeInsert(e)},_beforeInsert:function(e,t){if(this._nodeElement){var i=this._nodeElement.parentNode;i.insertBefore(e._nodeElement,this._nodeElement),i.insertBefore(e._childrenElement,this._nodeElement),this._processNodeRelation(e);var n=this.get_parent();if(index=Array.indexOf(n._children,this),0==index)e._prev=null,e._next=this,this._prev=e;else{var s=n._children[index-1];s&&(s._next=e),e._prev=s,e._next=this,this._prev=e}Array.insert(n._children,index,e),e.applyParent(n),e._refreshNode(),this._refreshNode(),e._refreshExpanded(),t||this._treeView.set_selectedNode(e)}},afterInsert:function(e){this._raiseExchange(this,e,"after")&&this._afterInsert(e)},_afterInsert:function(e){var t=this._nodeElement.parentNode,i=this._childrenElement.nextSibling;i!=e._nodeElement&&(t.insertBefore(e._nodeElement,i),t.insertBefore(e._childrenElement,i)),this._processNodeRelation(e);var n=this.get_parent();index=Array.indexOf(n._children,this);var s=n._children.length;if(e._prev=this,index==s-1)e._next=null,this._next=e;else{var o=n._children[index+1];o._prev=e,e._next=o}Array.insert(n._children,index+1,e),e.applyParent(n),e._refreshNode(),e._refreshExpanded(),this._refreshNode(),this._treeView.set_selectedNode(e)},insertChild:function(e,t){t&&this._raiseExchange(this,t,"child")&&this._insertChild(e,t)},_insertChild:function(e,t){this._processNodeRelation(t);var i=this._childrenElement;if(this.hasChildren()){var n=this._children[0],s=n._nodeElement;i.insertBefore(t._nodeElement,s),i.insertBefore(t._childrenElement,s),t._next=n,n._prev=t}else i.appendChild(t._nodeElement),i.appendChild(t._childrenElement),t._prev=null,t._next=null;Array.insert(this._children,e,t),t.applyParent(this),t._refreshNode(),this._refreshNode(!0),t._refreshExpanded(),this._treeView.set_selectedNode(t)},_processNodeRelation:function(e){var t=e.get_parent();if(t){var i=Array.indexOf(t._children,e);i<0||(e._next&&(e._next._prev=e._prev),e._prev&&(e._prev._next=e._next),Array.removeAt(t._children,i),t._refreshNode(!0))}},_raiseExchange:function(e,t,i){var n=this._treeView.get_events().getHandler("_exchange");if(n){var s=new _Z_173(e,t,i);if(n(this,s),s.get_cancel())return!1}return!0},get_form:function(){return this._treeView.get_form()},_exchangeParent:function(e){var t=e._nodeElement._parent,i=Array.indexOf(t._children,e);if(0==i)if(t._children.length>1){var n=t._children[1];n&&(n._prev=this),this._next=n}else this._prev=null,this._next=null;else{var s=t._children[i-1];s&&(s._next=this),this._prev=s,i==t._children.length-1?this._next=null:(this._next=t._children[i+1],this._next._prev=this)}Array.removeAt(t._children,i),Array.insert(t._children,i,this),this.applyParent(t)},get_expanded:function(){return this._expanded},toggleChildrenExpanded:function(){this.hasChildren()&&(this._childrenExpanded?(this.childrenCollapse(),this._childrenExpanded=!1):(this.childrenExpand(),this._childrenExpanded=!0))},toggleExpanded:function(e){(this.hasChildren()||this._haschild)&&(this._expanded?this.collapse(e):this.expand(e))},childrenCollapse:function(){for(var e=0,t=this.get_count();e<t;e++){var i=this.getChild(e);i.childrenCollapse(),i.collapse()}},collapse:function(e){this._expanded&&(this._showChildren(!1,e),this._expanded=!1,this._initNodeExpand())},childrenExpand:function(){for(var e=0,t=this.get_count();e<t;e++){var i=this.getChild(e);i.expand(),i.childrenExpand()}},expand:function(e){!this._expanded||this._treeView.get_showColumns()?(this._expanded=!0,this._initNodeExpand(),this.expandParent(),this._showChildren(!0,e)):this.expandParent()},expandParent:function(){var e=this.get_parent();e&&(e.expand(),this._treeView.get_showColumns()&&this.set_selected(!0,!0))},get_selected:function(){return this._selected},set_selected:function(e,t){if($dom.setCssClass(e,this._nodeElement,"selected"),this._selected!=e&&(this._selected=e,e&&(this._treeView._selectedNodes&&this._treeView._selectedNodes.push(this),this.expandParent(),t))){if(this._treeView.get_showColumns()&&this._nodeElement){var i=this._nodeElement;setTimeout(function(){i&&i.scrollIntoView(!1)},10)}this.focus()}},focus:function(){if(this._textElement&&$dom.getVisible(this._textElement))try{this._textElement.focus()}catch(e){}},fadeIn:function(e,t){if($dom.setVisible(e,!0),$dom.setOpacity(e,100),t&&!$dom.hasClass(e,"DrpOrange")){$dom.addCssClass(e,"NodeFadeIn DrpOrange"),setTimeout(function(){e&&($dom.removeCssClass(e,"NodeFadeIn DrpOrange"),$dom.setOpacity(e,100))},200)}},fadeOut:function(e,t){if(!t||$dom.hasClass(e,"DrpOrange"))return e.style.display="none";$dom.addCssClass(e,"NodeFadeOut DrpOrange"),setTimeout(function(){e&&(e.style.display="none",$dom.removeCssClass(e,"NodeFadeOut DrpOrange"),$dom.setOpacity(e,0))},200)},_showChildren:function(e,t){var i=this._treeView;i.get_showColumns()?this._showColumnChilds(e):(i._nodeCount>500&&(t=!1),e?this.fadeIn(this._childrenElement,t):this.fadeOut(this._childrenElement,t))},_onExpandMouseDown:function(e){this.toggleExpanded(!0)},_onCheckClick:function(e){var t=this._treeView;t.set_selectedNode(this,!1),this.get_enabled()&&(this.toggleChecked(),t._internalTreeNodeCheckedChanged(this))},toggleChecked:function(e){if(e)if(e){if(1==this._checkState)return;this.check()}else{if(0==this._checkState)return;this.uncheck()}else 0==this._checkState?this.check():this.uncheck()},togglePartialChecked:function(){2!=this._checkState&&(this._checkState=2,this._initNodeCheck())},get_partialChecked:function(){return 2==this._checkState},get_checked:function(){return this._checkState>0},check:function(e){this._checkState=1,e||this._treeView._notUpdateParentCheck||this.checkChilds(),this._initNodeCheck(),this._updateParentCheckState()},uncheck:function(e){if(this._checkState=0,!e)for(var t=0,i=this.get_count();t<i;t++)this.getChild(t).uncheck();this._initNodeCheck(),this._updateParentCheckState()},checkChilds:function(){for(var e=0,t=this.get_count();e<t;e++)this.getChild(e).check()},_initNodeCheck:function(){if(this._checkElement){var e="ChkBoxStyle";1==this._checkState?e=$skin.joinCssClass(e,"checked"):2==this._checkState&&(e=$skin.joinCssClass(e,"half")),this._checkElement.className=e}},_initNodeExpand:function(){this._expandElement&&(this._expandElement.className=this._getNodeExpandCss())},_getNodeExpandCss:function(){var e="ExpandBlock iconfont";if(this.hasChildren()||this._haschild){e+=" "+(this._expanded?"expand":"collapsed")}return e},_initNodeLevel:function(){this._levelElement&&(this._levelElement.className="LevelBlock NodeLevel"+this.get_level())},_updateParentCheckState:function(){var e=this.get_parent();if(e&&!this._treeView._notUpdateParentCheck){for(var t=!1,i=!1,n=0,s=e.get_count();n<s;n++){var o=e.getChild(n);o.get_checked()?(t=!0,2==o._checkState&&(i=!0)):i=!0}e._checkState=t?i?2:1:0,e._initNodeCheck(),e._updateParentCheckState()}},_onTextDblClick:function(e){if(e.target==this._nodeElement||e.target==this._textElement){if(!this._treeView._showColumns){var t=this._treeView;if(t.set_selectedNode(this,!1),this.get_enabled()){var i=t.get_allowDoubleClickEvent();this.hasChildren()&&!i&&this.toggleExpanded(!0),t._internalTreeNodeDblClick()}}}},_onTextSelectStart:function(e){e.cancel()},_onTextMouseOver:function(e){this._textElement.scrollWidth>this._textElement.clientWidth&&(this._textElement.title=this._textElement.innerText)},_onNodeMouseOver:function(e){this.showEditor()},_onNodeMouseLeave:function(e){this.hideEditor()},onNodeClick:function(e){var t=this._treeView;e&&e.target==this._expandElement||(t._hideEditPopup(),t.set_selectedNode(this,!1),this.get_enabled()&&(t.get_showColumns()&&this._showChildren(!0),e&&(e.cancel(),$craba.raiseMouseDown(e)),t._internalTreeNodeClick(e),t._lastEditorNode=this))},get_element:function(){return this._textElement}},Sys.UI.Controls.TreeNode.registerClass("Sys.UI.Controls.TreeNode"),Sys.UI.Controls.NavTreeView=function(e){Sys.UI.Controls.NavTreeView.initializeBase(this,[e]),this._defaultTarget="__mainPanel"},Sys.UI.Controls.NavTreeView.prototype={doTreeNodeClick:function(e){var t=e.get_value(),i=t.target;i||(i=this.get_defaultTarget());var n=t.navUrl;if(i&&n)if("_top"==i){(window.parent?window.parent:window).location=n}else if("_blank"==i)$common.navigateUrl(n);else{var s=window.parent.frames[i];s&&(s.location=n)}},get_defaultTarget:function(){return this._defaultTarget},set_defaultTarget:function(e){this._defaultTarget=e}},Sys.UI.Controls.NavTreeView.registerClass("Sys.UI.Controls.NavTreeView",Sys.UI.Controls.TreeView),Sys.UI.Controls.LazyTree=function(e){Sys.UI.Controls.LazyTree.initializeBase(this,[e]),this._parentNodeShowCheckBox=!0},Sys.UI.Controls.LazyTree.prototype={_getRootNodeType:function(){var e=new Sys.UI.Controls.XTreeNode(this._rootNodeText);return e._expanded=!0,e},get_parentNodeShowCheckBox:function(){return this._parentNodeShowCheckBox},set_parentNodeShowCheckBox:function(e){this._parentNodeShowCheckBox=e},add_nodeExpandedClick:function(e){this.get_events().addHandler("nodeExpandedClick",e)},remove_nodeExpandedClick:function(e){this.get_events().removeHandler("nodeExpandedClick",e)},_internalnodeExpandedClick:function(e){if(e){var t=this.get_events().getHandler("nodeExpandedClick");t&&t(e)}},add_treeNodeCheckBoxClick:function(e){this.get_events().addHandler("treeNodeCheckBoxClick",e)},remove_treeNodeCheckBoxClick:function(e){this.get_events().removeHandler("treeNodeCheckBoxClick",e)},_internaltreeNodeCheckBoxClick:function(e){if(e){var t=this.get_events().getHandler("treeNodeCheckBoxClick");t&&t(e)}}},Sys.UI.Controls.LazyTree.registerClass("Sys.UI.Controls.LazyTree",Sys.UI.Controls.TreeView),Sys.UI.Controls.XTreeNode=function(e){Sys.UI.Controls.XTreeNode.initializeBase(this,[e]),this._haschild=!1,this._expanded=!1},Sys.UI.Controls.XTreeNode.prototype={initialize:function(){Sys.UI.Controls.XTreeNode.callBaseMethod(this,"initialize");var e=this.get_parent();e&&1==e._checkState&&(this._checkState=1,this._initNodeCheck())},_initNode:function(){var e=this.get_data();e&&null!=e.haschild&&(this._haschild=e.haschild),Sys.UI.Controls.XTreeNode.callBaseMethod(this,"_initNode")},_createCheckBox:function(e){var t=this._treeView.get_showCheckBoxes(),i=this._treeView.get_parentNodeShowCheckBox();if(t){var n=this.get_data();t=i||!n.haschild}t&&(this._checkElement=$common.createDiv(),e.appendChild(this._checkElement),this._initNodeCheck(),$common.addClickHandler(this._checkElement,this._onCheckClick,this))},_bindOneData:function(e){var t=new Sys.UI.Controls.XTreeNode(e[0]);e.length>1&&(t._haschild=!0,t._expanded=!0),null!=t._value._data.haschild&&(t._haschild=t._value._data.haschild),null!=t._value._data.checked&&(t._checkState=1==t._value._data.checked?1:0),this.appendChild(t);for(var i=1;i<e.length;i++)t._bindOneData(e[i])},_showChildren:function(e,t){e?this.fadeIn(this._childrenElement,t):this.fadeOut(this._childrenElement,t),this._haschild&&!this.hasChildren()&&this._treeView._internalnodeExpandedClick(this)},_onExpandMouseDown:function(e){this._treeView._internalnodeExpandedClick(this),this.toggleExpanded(!0)},_onCheckClick:function(e){var t=this._treeView;t.set_selectedNode(this,!1),this.get_enabled()&&(this._value._data.is_used?t._internalTreeNodeCheckedChanged(this):(this.toggleChecked(),t._internalTreeNodeCheckedChanged(this)))},toggleChecked:function(){0==this._checkState?this.check():this.uncheck()},check:function(){for(var e=0,t=this.get_count();e<t;e++)if(this.getChild(e)._value._data.is_used)return;this._checkState=1;for(var e=0,t=this.get_count();e<t;e++)this.getChild(e).check();this._initNodeCheck(),this._updateParentCheckState()},uncheck:function(){for(var e=0,t=this.get_count();e<t;e++)if(this.getChild(e)._value._data.is_used)return;this._checkState=0;for(var e=0,t=this.get_count();e<t;e++)this.getChild(e).uncheck();this._initNodeCheck(),this._updateParentCheckState()},initChildren:function(){for(var e=0,t=this.get_count();e<t;e++)this.getChild(e).initialize()}},Sys.UI.Controls.XTreeNode.registerClass("Sys.UI.Controls.XTreeNode",Sys.UI.Controls.TreeNode);
5
+ var $export=Sys.UI._Exporter=function(){};$export.findMasterField=function(t,e){for(var i=0,r=t.length;i<r;i++){var n=t[i];if(n.dataField==e)return n}return null},$export.initMasterFields=function(t,e,i,r,n,s){s||((s={}).isFooter=!1);var o=t.get_controls();if(!n&&r&&r.get_tab()){o=[];var a=r.get_tab().split(",");Array.forEach(a,function(e){var i=$common.getElementChildControls(t[e].get_element());Array.addRange(o,i)})}for(var l=[],c=null,d=0,p=o.length;d<p;d++){var h=o[d];if(h.customForm){var u=h.customForm;$export.initMasterFields(u,e,i,r,!0,s)}else if(s.isFooter||h!=e)if(n&&_Z_99.isInstanceOfType(h)&&h._onlyReport)c=h;else{var _=r&&r.get_isGetAll()||h.get_visible&&h.get_visible();if(h&&_&&h.get_dataField&&h.get_label&&h.get_reportField&&h.get_text){if(h.get_reportVisible&&!h.get_reportVisible())continue;var m=h.get_reportField(),g=h.get_dataField(),f=h.get_label();if(Object.isUndefinedOrNull(f)||(f=f.toString()),f&&(f=f.replace(/&nbsp;/g," ")),m&&(f=m),f&&!g&&(g=f),!g||!f)continue;x={};n?l.push(x):(x=$export.findMasterField(i,g))||(x={},Array.add(i,x)),x.section=h.get_reportSection(),x.selected=h.get_reportSelected(),x.hidden=h.get_reportHidden(),x.dataField=g,x.name=f,x.value=h.get_reportText?h.get_reportText():h.get_text(),x.hasValue=!0,x.isFooter=s.isFooter,$export._initMasterFieldType(h,x),r&&r._printReplaceText&&h.get_replaceText&&(x.value=h.get_replaceText()||x.value)}}else s.isFooter=!0}if(n){if(c&&!c._getMasterData(l))return;Array.addRange(i,l)}if(e&&!n){var y=e.get_columnExpands();if(y)for(var v=0,S=y.length;v<S;v++){var P=y[v],C=P.reportFields,D=P.captions;if(C&&!D)for(var d=0,p=C.length;d<p;d++){var m=C[d],I=D[d];if(m&&!I){m="_"+m;var x;(x=$export.findMasterField(i,m))||(x={},Array.add(i,x)),x.name=m,x.dataField=m,x.value=I,x.hidden=!0}}}}},$export.initColumnExpands=function(t,e){var i=t.get_columnExpands();if(i){for(var r=null,n=0,s=i.length;n<s;n++){var o=i[n],a=o?o.name:null;if(a){var l=t._findBand(a);if(l){var c=l.columns;if(c){for(var d=[],p=0,h=c.length;p<h;p++){var u=c[p],_={};_.caption=u.get_designCaption(),$export._initDetailFieldType(u,_),Array.add(d,_)}r||(r={}),r[a]=d}}}}r&&(e.columnExpands=r)}},$export.normalizeReportField=function(t){return"string"!=typeof t&&(t=t.toString()),t.replace(/(#|@|`|\^|!|~|\*|\/|\\|\|)/g,"_")},$export.initDetailFields=function(t,e,i,r,n,s){for(var o=t.get_columnCount(),a={},l=0;l<o;l++){y=(f=t.getColumnByIndex(l)).get_dataField();if(f.get_visible()&&y){var c=f.get_dataSize();c>0&&(a[y]=c)}}for(var d={},p=e.length,l=0;l<p;l++){d[y=(v=e[l]).dataField]=v;var h=a[y];h>0&&(v.size=h)}var u=$craba.getLangPro("行号");if(t.get_showRowNo()&&t.get_reportRowNo()&&!d[u]&&!0!==s){(v={}).name=u,v.caption=t.get_rowNoColumnCaption(),v.dataField=v.name,v.size=0,v.columnWidth=t.get_rowNoColumnWidth(),v.headerAlign="center",v.textAlign="center",Array.insert(e,0,v)}for(var _=1,m=!1,g=n&&n.get_isGetAll(),l=0;l<o;l++){var f=t.getColumnByIndex(l),y=f.get_dataField();if(f.get_reportVisible(g)&&y){var v=d[y];v||(v={},Array.insert(e,_,v),_++);var S=$export.get_reportFieldName(f);v.name=$export.normalizeReportField(S);var P=f.get_reportCaption();if(r)if(v.name!=S){C={name:"_"+v.name,value:S,hidden:!0};Array.add(r,C)}else if(v.name!=P&&!f.get_groupName()&&f.get_bandIndex()<0){var C={name:"_"+v.name,value:P,hidden:!0};Array.add(r,C)}v.caption=P,v.dataField=y,v.size=f.get_dataSize();var D=f.get_width();t._dressGrid&&y&&y.startsWith(t._qtyExpandName)&&(m?D+=1:m=!0),v.columnWidth=D,v.mergeSameRow=f.get_mergeSameRow(),v.headerAlign=f.get_headerAlign(),v.textAlign=f.get_textAlign(),v.section=f.get_reportSection(),v.selected=f.get_reportSelected(),v.hidden=f.get_reportHidden(),f.get_showImage()&&(v.dataType=_Z_43.image),i&&f.get_reportShowFooter()&&t.get_showPrintSummaryText()&&(v.footer=f.get_footer(!0)),f.get_isReportFooterField&&f.get_isReportFooterField()&&(v.isFooter=!0),$export._initDetailFieldType(f,v),"Number"==v.columnType&&f.get_preFlagDataField()&&(v.dataField=f._reportField?f._reportField:y,v.summarySpliteChar=f.get_summarySpliteChar()),v.groupName=f.get_groupName()||""}}},$export.get_reportFieldName=function(t){var e=t.get_reportCaption(),i=t.get_band();if(i){var r=i.caption;r&&(e=r+"_"+t.get_reportCaption())}return e},$export.get_reportField=function(t){var e=t.get_reportField(),i=t.get_band();if(i){var r=i.caption;r&&(e=r+"_"+t.get_caption())}return e},$export._initDetailFieldType=function(t,e){var i=!1;t instanceof Sys.UI.Controls.PercentColumn?(e.columnType="Percent",i=!0):Sys.UI.Controls.NumberColumn.isInstanceOfType(t)?(e.columnType="Number",i=!0):Sys.UI.Controls.DropDownColumn.isInstanceOfType(t)||Sys.UI.Controls.SwitchButtonColumn.isInstanceOfType(t)?(e.columnType="DropDown",e.itemData=t.get_itemData()):Sys.UI.Controls.DateTimeColumn.isInstanceOfType(t)?e.columnType="DateTime":Sys.UI.Controls.DateColumn.isInstanceOfType(t)?e.columnType="Date":Sys.UI.Controls.CheckBoxColumn.isInstanceOfType(t)?e.columnType="Boolean":Sys.UI.Controls.ExpandColumn.isInstanceOfType(t)?e.dataField=t.get_sortField():Sys.UI.Controls.ImageColumn.isInstanceOfType(t)?e.columnType="Image":Sys.UI.Controls.ImageDropDownColumn.isInstanceOfType(t)?(e.columnType="DropImage",e.itemData=t.get_itemData()):Sys.UI.Controls.DynamicButtonColumn.isInstanceOfType(t)&&(e.columnType="Dynamic",e.itemText=t.get_itemData()),i&&(e.decimalDigits=t.get_decimalDigits(),e.decimalScale=t.get_decimalScale(),e.formatNumber=t.get_formatNumber());var r=t.get_replaceText();e.replaceText=r||""},$export._initMasterFieldType=function(t,e){var i=!1;Sys.UI.Controls.NumberEdit.isInstanceOfType(t)?(e.fieldType="Number",i=!0):Sys.UI.Controls.DateTimeEdit.isInstanceOfType(t)?e.fieldType="DateTime":Sys.UI.Controls.DateEdit.isInstanceOfType(t)&&(e.fieldType="Date"),i&&(e.decimalDigits=t.get_decimalDigits(),e.decimalScale=t.get_decimalScale(),e.formatNumber=t.get_formatNumber())},$export.getGridsData=function(t,e,i,r,n){for(var s=r._saveAction||!0,o=t.length,a=o>=2,l=0;l<o;l++){(S=t[l]).endEdit()}var c=[],d=1==o,p=null;if(!d){for(var h={},l=0,u=n.length;l<u;l++){var _=n[l];_.hidden&&(h[_.dataField]=!0)}p={};for(y=0;y<o;y++)for(var m=(S=t[y]).get_columnCount(),g=0;g<m;g++){if(x=(b=S.getColumnByIndex(g)).get_dataField()){var f=b.get_visible();!f&&h[x]?p[x]=!0:"undefined"==typeof p[x]?p[x]=f:p[x]=p[x]&&f}}}for(var y=0,v=0;y<o;y++){for(var S=t[y],P=S.get_recordCount(),m=S.get_columnCount(),l=0;l<P;l++,v++)if(!S.isEmptyRow(l)){for(var C={},g=0;g<m;g++){x=(b=S.getColumnByIndex(g)).get_dataField();if(b.get_reportVisible()&&x){var D=b.getCellText(l,s);("boolean"==typeof D||Sys.UI.Controls.CheckBoxColumn.isInstanceOfType(b))&&(D=b.get_reportText?b.get_reportText(D):D),C[x]=D}}var I=S.getRowData(l);for(var x in I)"undefined"==typeof C[x]&&(d||p[x]||"undefined"==typeof p[x])&&(C[x]=I[x]);if(e){e(r,$=new $export.InitDetailDataEventArgs(S,C)),C=$.get_data()}i&&(C.__grid=S.get_idPart()),c.push(C),S._breakGroupDatas(c,C,l)}if(a&&S.get_showFooter()&&S.get_showPrintSummaryText()){for(var C={},l=0;l<m;l++){var b=S.getColumnByIndex(l),x=b.get_dataField();b.get_reportVisible()&&x&&(C[x]=b.get_footer())}c.push(C)}}if(i){var $=new $export.InitDetailListEventArgs(S,c,n);i(r,$),c=$.get_list()}var A={};return A.itemCount=c.length,A.itemList=c,A},$export.InitDetailDataEventArgs=function(t,e){$export.InitDetailDataEventArgs.initializeBase(this),this._grid=t,this._data=e},$export.InitDetailDataEventArgs.prototype={get_grid:function(){return this._grid},set_grid:function(t){this._grid=t},get_data:function(){return this._data},set_data:function(t){this._data=t}},$export.InitDetailDataEventArgs.registerClass("Sys.UI._Exporter.InitDetailDataEventArgs",Sys.EventArgs),$export.InitDetailListEventArgs=function(t,e,i){$export.InitDetailListEventArgs.initializeBase(this),this._grid=t,this._list=e,this._detailFields=i},$export.InitDetailListEventArgs.prototype={get_list:function(){return this._list},set_list:function(t){this._list=t},get_grid:function(){return this._grid},set_grid:function(t){this._grid=t},get_detailFields:function(){return this._detailFields},clearDetailFields:function(){Array.clear(this._detailFields)},removeDetailField:function(t){for(var e=this._detailFields,i=0,r=e.length;i<r;i++){var n=e[i];if(n.name==t||n.dataField==t){Array.removeAt(e,i);break}}},addDetailField:function(t,e,i){var r={name:t,dataField:e};return i||(r.hidden=!0),Array.add(this._detailFields,r),r},insertDetailField:function(t,e,i,r){var n={name:e,dataField:i};return r||(n.hidden=!0),Array.insert(this._detailFields,t,n),n}},$export.InitDetailListEventArgs.registerClass("Sys.UI._Exporter.InitDetailListEventArgs",Sys.EventArgs),_Z_4=function(t){_Z_4.initializeBase(this),this._request=null,this._target=t,this._enableUnsafeHeader=!1,this._enableClientLog=!1,this._isPrintService=!0,this._queryStr="?",this._exePath="D:\\Grasp\\Print\\GraspReportSrv.exe",this._timeout=-1},_Z_4.prototype={get_port:function(){return $app.get_printPort()},set_port:function(t){$app.set_printPort(t)},get_path:function(){if($app.porting)throw $app.lookPortTime=0,$app.hasPrint=!0,Error.abort();return"http://127.0.0.1:"+this.get_port()+"/"+this._queryStr},_createUrl:function(t,e,i){return t+e},_jsonSerialize:function(t){return"string"==typeof t?t:_Z_4.callBaseMethod(this,"_jsonSerialize",[t])},set_httpVerb:function(t){this._request=t,t._isPrint=!0,t.notCheck=!0,t.set_httpVerb("POST"),t.set_notThrowError(!0),t.set_withCredentials(!1)},get_request:function(){return this._request},isPrinting:function(t,e){$cache.get("isPrintMenu")&&($cache.set("isPrintMenu",!1),this.endPrint());var i="get=IsPrinting";null!=t&&(i="type="+t+"&"+i);var r=0!=this.invokeCommand(i);return r&&e&&$common.alert(Sys.Res.printTips.isPrinting),r},isPrintingSync:function(t,e){var i="get=IsPrinting";null!=t&&(i="type="+t+"&"+i),this.invokeCommandSync(i,null,e)},beginPrint:function(t){var e="method=BeginPrint";null!=t&&(e="type="+t+"&"+e),this.invokeCommand(e)},endPrint:function(t,e){if(!$cache.get("isPrintMenu")){var i="method=EndPrint";null!=t&&(i="type="+t+"&"+i),this.invokeCommand(i,null,e)}},_makeParams:function(t,e){if(e)return e;var i=t.indexOf(":")+1;return i>0&&(e=unescape(t.substring(i))),e},invokeCommandSync:function(t,e,i){e=this._makeParams(t,e),this._invoke(t,e,i,this._reqFailed)},invokeCommand:function(t,e,i){$debug.log("方法:"+t),e=this._makeParams(t,e);try{return this._invoke(t,e,!1,this._reqFailed)}catch(r){$print._showPrintError(r.message,t,e,i,this)}},_reqFailed:function(t,e,i){var r="<p>服务形式打印出错啦,错误详情如下:</p><p>调用接口:<font color=blue>"+i+"</font></p><p>出错信息:<font color=red>"+t+"</font></p><p>如果重复出现类似问题,请您联系我们客服.</p>";$app.showError(Sys.ErrorType.servicePrint,r,!0)},_invoke:function(){if(!$settings.AllPrintUseSocket)return _Z_4.callBaseMethod(this,"_invoke",arguments);$print.getPrintSocket().send(arguments)}},_Z_4.registerClass("_Z_4",Sys.Net.WebServiceProxy),_Z_4.create=function(t){var e=new _Z_4(t);return e.set_enableShowWaiting(!1),e},Craba.Web.Script.PrintSocket=function(){this.socket=new Sys.WebSocket("ws://127.0.0.1:9090"),this.socket.add_open($createDelegate(this,this.onOpen)),this.socket.add_message($createDelegate(this,this.onMsg)),this.socket.add_close($createDelegate(this,this.onClose)),this.socket.add_error($createDelegate(this,this.onError))},Craba.Web.Script.PrintSocket.prototype={get_socket:function(){return this.socket},send:function(){var t=arguments[0],e=t[0],i=t[1],r=t[2],n=this.getTimeId();"function"==typeof r&&$notify.bindOnce(n,r);var s={action:e,id:n,data:i};this.socket.send(s)},onOpen:function(t){console.log("打印socket连接成功",t)},onMsg:function(t){var e=t.data;if(e){var i={};try{i=JSON.parse(e)}catch(r){return}if(!i.id)throw Error.abort("Socket打印客户端返回的数据没有id字段");$notify.emit(i.id,i.data)}},onClose:function(t){console.log("打印socket连接关闭",t)},onError:function(t){console.log("打印socket连接失败",t)},getTimeId:function(){return(new Date).getTime()}},Craba.Web.Script.PrintSocket.registerClass("Craba.Web.Script.PrintSocket"),$print=function(){},$print.get_printTimeout=function(){return Sys.Browser.isIE?.3:.1},$print.getPrintSocket=function(){if(this.socket)return this.socket;var t=new Craba.Web.Script.PrintSocket;return this.socket=t},$print.lookForPrintPort=function(t,e){if($settings.AllPrintUseSocket&&$print.getPrintSocket(),$app.lookPortTime>19){r=Sys.Res.printTips.portError;return console.log(r),$app.porting=!1,$app.lookPortTime=0,$app.hasPrint&&($common.hideWaiting(),r+='<a href="'+$print._getDownloadUrl()+'" target="_blank">'+$craba.getLangPro("点击下载")+"</a>",$common.alertError(r)),void delete $app.hasPrint}0==$app.lookPortTime&&(t=null),$app.lookPortTime++;var i=$app.get_printPort();$app.porting=!0,t?((t=Number(t))<9009?t+=1:t=8989,2==$app.lookPortTime&&8990!=t&&($app.lookPortTime=1,t=8989)):t=i;var r=String.format(Sys.Res.printTips.lookforPort,t,$app.lookPortTime,20-$app.lookPortTime);console.log(r),$app.hasPrint&&$common.showWaiting(document.body,r);var n="GetVersion";e&&(n="?get=Version");var s="http://127.0.0.1:"+t+"/"+n,o=t==i?.6:$print.get_printTimeout();try{$common.ajax({url:s,timeout:o,complete:function(i){if(!i.get_responseAvailable())return $print.lookForPrintPort(t);var r=!1,n=i.get_statusCode();if(n>=200&&n<300){var s=null;try{s=i.get_object()}catch(a){if(e){var o=i.get_responseData();o&&4==o.split(".").length&&(s={success:!0})}else r=!0}s&&s.success?(console.log("匹配打印端口成功:"+t),$app.porting=!1,$app.lookPortTime=0,$app.set_printPort(t),$app.hasPrint&&(delete $app.hasPrint,$common.hideWaiting(),$common.alertOk(t+Sys.Res.printTips.portOk))):(r&&!e&&t--,$print.lookForPrintPort(t,r))}else $print.lookForPrintPort(t)}})}catch(a){console.log("https->http,失败",a)}},$print.uploadAllStyle=function(t){this._checkToken("uploadAllStyle");var e=!1,i=null,r=_Z_4.create();r._queryStr="";try{(s=r._invoke("GetVersion",{},!1,r._reqFailed))&&"object"==typeof s||(e=!0),e?i=$common.alert(String.format(Sys.Res.printTips.old,$print._getDownloadUrl())):$print._compareVersion(s.data,"1.1.0.12")<0&&(i=String.format(Sys.Res.printTips.uploadStyleErr,s.data))}catch(o){i=Sys.Res.printTips.installClient}$common.checkError(null!=i,i);var n={printType:"Command",appName:$settings.CloudPrintAppName,method:"UploadAllStyle",methodParams:""},s=$print._localRequest(n,"uploadAllStyle");return!!s.success||(s.msg&&$common.alert(s.msg),!1)},$print.getPrintStyles=function(t,e,i,r){var n={tokenType:0,requestor:"craba",productType:i,templateName:t,styleName:"",styleType:0,getStyleFormatType:e,accessToken:$common.__cloudPrintAccessToken},s=this._request("GetReportStyleList",n,null,!0);return Object.isUndefinedOrNull(s)&&($print.showCloundTips(),r._printMode=0,console.log("云样式获取失败,已切换为本地打印")),s},$print.getAccessCode=function(t){var e={tokenType:0,requestor:"craba",accessToken:$common.__cloudPrintAccessToken};return $print._request("GetAccessCode",e,t)},$print.getPrintClients=function(t){var e={tokenType:0,requestor:"craba",accessToken:$common.__cloudPrintAccessToken};return $print._request("GetClientOptions",e,t)},$print.getLocalClients=function(t){var e=$print._localRequest({get:"PrinterNames",printType:"express"},"getLocalClients"),i=$print._getResult(e,1);return $print._toPrinters(i)},$print.getLocalPrinters=function(t){var e=$print.getVersion();if(!e||$print._compareVersion(e,"1.2.0.6")<0){var i=$print.getLocalClients();return $print._toPrinterList(i,"","")}try{var r=_Z_4.create();r._queryStr="";var n=r._invoke("GetClientParams",null,!1,Function.emptyMethod);return n&&n.data?this._toPrinterList(n.data.printers,n.data.clientId,n.data.clientTagName):[]}catch(s){return r.get_request()&&r.get_request().abort(),$print._showPrintError(s.message,"GetClientParams",null,!0),[]}},$print.convertAndNewStyle=function(t,e){var i={tokenType:0,accessToken:$common.__cloudPrintAccessToken,styles:[{action:t.actionName||"clone",templateName:t.templateName,styleName:t.styleName,productType:t.productType,styleType:t.styleType||3,desStyleType:t.desStyleType||3,defaultStyle:0,ignoreDuplicate:t.ignoreDuplicate,bizStyleId:t.bizStyleId,srcBizStyleId:t.srcBizStyleId}]};return $print._request("ConvertAndNewStyle",i,e)},$print.showRemoteConfig=function(t){var e=new Sys.UI.Form($common.getMainPanel());e.add_ok($createDelegate(this,function(e){t&&t(e.result)})),e.showModal($common.getSysUIBaseURI()+"Print/ClientSelector.gspx")},$print._saveRemoteClients=function(t){$craba.checkConfig("print","remoteClients",t)},$print._getRemoteClients=function(){return window.userConfigData,window.userConfigData.remoteClients},$print.get_masterDetailData=function(t){var e={itemCount:0,itemList:[]};return t&&(e.itemCount=t.length,e.itemList=t),e},$print.getServerUrl=function(){var t=$common.__cloudPrintServiceUrl;return t?(t.startsWith("//")&&(t=location.protocol+t),t.trimEndChar("/")+"/ReportService.gspx"):""},$print._getExpressDetailData=function(t){var e="",i=[],r=t,n=function(t,r){for(var n in t)if("物流公司"!=n){var s={name:n,caption:n,dataField:n,columnWidth:2e3,section:r};i.push(s)}else e=t[n]};return t instanceof Array?(r={},Array.forEach(t,function(t){var e=t.section;delete t.section,Object.copyTo(t,r),n(t,e)})):n(t),{name:e,detailFields:i,printData:r}},$print._getDetailData=function(t,e,i){for(var r=[],n=[],s={},o=t.length,a=0;a<o;a++){var l="field"+a,c={name:t[a],caption:t[a],dataField:l,columnWidth:e[a]};s[l]=null,r.push(c)}for(var a=0,d=i.length/o;a<d;a++){i[a];var p=a*o,h=Object.clone(s);for(var u in h)h[u]=i[p++];n.push(h)}return{detailFields:r,detailData:n}},$print._hasServicePrint=function(){return $settings.AllPrintUseService},$print.checkClient=function(t){var e=$print.getVersion();if($print._compareVersion(e,t.v)<0)throw Error.message(t.tips)},$print.checkVersion=function(t,e,i){var r=_Z_4.create();try{return r._invoke("type=Command&method=CheckVersion:"+t+","+e+","+i,null,!1,r._reqFailed),!0}catch(n){return r.get_request()&&r.get_request().abort(),!1}},$print._getDownloadUrl=function(){var t=$common.getSysUIBaseURI()+"Report/SetupDownload.gspx",e=$settings.ReportConfig;return $print.LastPrint&&$print.LastPrint._reportConfig&&(e=$print.LastPrint._reportConfig),e&&e.DownloadUrl&&(t=e.DownloadUrl,$print.LastPrint&&(t=$craba.makeHost($print.LastPrint.__form,t))),t},$print._getPrintPopupMenu=function(t){$print.LastPrint=t;var e=$common.getMainForm(),i=$print._printPopupMenu;if(i)return e.__exportBtn.set_visible(t._showExport),i;var r=$createControl("PopupBlock",{ID:"__PrintPopup",CssClass:"PrintMenuPopup",OnHide:"__doEndPrint"},e);return $createControl("Button",{Text:$craba.getLangPro(Sys.Res.printTips.print),CssClass:"PrimaryButton aicon-dayin",OnClick:"__doPrint"},e,r),$createControl("Button",{Text:$craba.getLangPro(Sys.Res.printTips.preview),CssClass:"PrimaryButton aicon-yulan",OnClick:"__doPreview"},e,r),$createControl("Button",{Text:$craba.getLangPro(Sys.Res.printTips.design),OnClick:"__doDesign",CssClass:"aicon-bianji1"},e,r),$createControl("Button",{Text:$craba.getLangPro(Sys.Res.printTips.style),ID:"__changeStyleBtn",OnClick:"__changeStyle",OnRightIconClick:"__changeStyle"},e,r),$createControl("Button",{ID:"__exportBtn",Text:$craba.getLangPro(Sys.Res.printTips.exportBtn),Visible:t._showExport,CssClass:"aicon-daochu",OnClick:"__doExport"},e,r),$createControl("Button",{Text:$craba.getLangPro(Sys.Res.printTips.manage),CssClass:"aicon-dayinhetong",OnClick:"__doStyleManage"},e,r),$createControl("Button",{Text:$craba.getLangPro(Sys.Res.printTips.quit),CssClass:"DangerButton aicon-tuichu",OnClick:"__cancelPrint"},e,r),$createControl("CheckBox",{Text:$craba.getLangPro(Sys.Res.printTips.autoHide),Checked:!1!==$cache.get("printCloseStatus"),ID:"chkPrintStatus",OnChange:"__doChangeStatus"},e,r),e.get_action().__doPrint=function(t){$print.LastPrint.__doPrint(t),$print.LastPrint._hidePrintPopup()},e.get_action().__doPreview=function(t){$print.LastPrint.__doPreview(t),$print.LastPrint._hidePrintPopup()},e.get_action().__doDesign=function(t){$print.LastPrint.__doDesign(t),$print.LastPrint._hidePrintPopup()},e.get_action().__changeStyle=function(t,e){var i=$dom.getBounds(t._rightBtn);($print.LastPrint._oldPrinter?$print.LastPrint._oldPrinter._styleMenu:$print.LastPrint._styleMenu).popupAt(i.x,i.y+i.height,i.width,i.height),e.stopPropagation()},e.get_action().__doExport=function(t){$print.LastPrint.__doExport(t),$print.LastPrint._hidePrintPopup()},e.get_action().__doStyleManage=function(t){$print.LastPrint.__doStyleManage(t),$print.LastPrint._hidePrintPopup()},e.get_action().__cancelPrint=function(t){$print.LastPrint._hidePrintPopup(!0,"cancel")},e.get_action().__doChangeStatus=function(t){$cache.set("printCloseStatus",t.get_checked())},e.get_action().__doEndPrint=function(t){$print.LastPrint.__doEndPrint(t),delete $print.__hideType},r.appendTo(document.body),i=$print._printPopupMenu=e.__PrintPopup},$print._showPrintServicePortForm=function(t){var e=$app.get_forms()[0];if(!this._portPopup){var i=$createControl("PopupBlock",{ID:"portPopup",CssStyle:"padding:20px;"},e),r=$createControl("HPanel",null,e,i);$createControl("NumberEdit",{ID:"portEdit",Required:"true",Label:"端口号:",NumberType:"PositiveInt",ShowCalculator:!1,MaxValue:999999},e,r),$createControl("Button",{Text:"确定",ID:"portButton"},e,r),i.appendTo(document.body),this._portPopup=e.portPopup,btn=e.portButton,$common.addClickHandler(btn.get_element(),function(i){var r=e.portEdit.get_value();if(r<1e3||r>9999)$common.showHint(Sys.Res.printTips.portTips,e.portEdit);else{if(r!=$print.LastPrint.get_port()){$print.LastPrint.set_port(r),$common.showOk(String.format(Sys.Res.printTips.portSet,r));for(var n=t.target.parentNode.parentNode.parentNode,s=$common.getElementsByClassName(n,"port"),o=0;o<s.length;o++)s[o].innerText=r}e.portPopup.hide()}})}e.portEdit.set_value($print.LastPrint.get_port());var n=$app.getPopupElementZIndex()+1;this._portPopup.popupAt(t.target),this._portPopup.get_popup()._zIndex=n,this._portPopup.get_popup().get_element().style.zIndex=n},$print.getVersion=function(){var t=_Z_4.create();t._queryStr="";try{var e=t._invoke("GetVersion",null,!1,Function.emptyMethod);return!!e&&e.data}catch(i){return!1}},$print.checkRun=function(t,e){var i=_Z_4.create();i._queryStr="";try{return i._invoke("GetVersion",null,!1),t&&($common.alertOk(Sys.Res.printTips.clientOk),$print._lastForm&&$print._lastForm.close()),!0}catch(r){return t&&$common.alertError(3==e?Sys.Res.printTips.kefu:Sys.Res.printTips.nextStep),!1}},$print._startPrintClient=function(t){location.href="grasp://message/?method=_Restart",$common.showInfo(Sys.Res.printTips.runClient)},$print._compareVersion=function(t,e){if(!t||!e)return-1;var i=function(t){for(var e=t.split("."),i=[],r=0,n=e.length;r<n;r++)Array.add(i,parseInt(e[r]));return i},r=i(t),n=i(e),s=r[0]-n[0];return 0==s&&0==(s=r[1]-n[1])&&0==(s=r[2]-n[2])&&(s=r[3]-n[3]),s},$print._writeNewServiceData=function(t,e,i,r,n,s){var o=$print.toJsonData(i,r,n,s);t.invokeCommand("type="+e+"&method=AddData",o)},$print.toJsonData=function(t,e,i,r){for(var n={tableName:t,dataFields:[],dataList:{itemCount:1,itemList:[]}},s=!1,o=e.length,a=0;a<o;a++){var l=i[a]?parseInt(i[a]):256,c=e[a],d="nPrintBarCount"==c;d&&(s=!0);var p={name:c,caption:c,dataField:c,width:l,hidden:d};n.dataFields.push(p)}var h=r.length/o;n.dataList.itemCount=h;for(var a=0,u=h;a<u;a++){var _={};n.dataList.itemList.push(_);for(var m=0;m<o;m++){var g=e[m];_[g]="nPrintBarCount"==g?r[a*o+m]||1:r[a*o+m]}}return 0==h&&s&&(n.dataList.itemCount=1,n.dataList.itemList=[{nPrintBarCount:0}]),n},$print._writeServiceData=function(t,e,i,r,n,s,o){if("billprint"==e&&$print._compareVersion(o,"1.8.8.1051")>0)return $print._writeNewServiceData(t,e,i,r,n,s);if("barcode"==e&&$print._compareVersion(o,"1.8.8.1054")>0)return $print._writeNewServiceData(t,e,i,r,n,s);var a=r.length;t.invokeCommand("type="+e+"&method=AddDataTable");for(l=0;l<a;l++){p=r[l]+","+(n[l]?n[l]:256);t.invokeCommand("type="+e+"&method=AddDataColumn:"+p)}for(var l=0,c=s.length/a;l<c;l++){t.invokeCommand("type="+e+"&method=AddDataRow");for(var d=0;d<a;d++){var p=d+","+s[l*a+d];p=escape(p),t.invokeCommand("type="+e+"&method=SetRowStr:"+p)}}t.invokeCommand("type="+e+"&method=SaveDataTable:"+i)},$print.isRemotePrint=function(t){if(!$settings.ReportConfig)return!1;var e=t.get_printMode();return e==_Z_28.remote||e==_Z_28.remoteAndManageStyle},$print._checkToken=function(t,e){e&&!$print.cloudInitOk||$common.checkTips(!$common.__cloudPrintAccessToken,String.format(Sys.Res.printTips.tokenError,t))},$print._localRequest=function(t,e){var i=t;t.serverUrl||(i={tokenType:0,accessToken:$common.__cloudPrintAccessToken,printMode:$settings.ReportConfig.PrintMode,serverUrl:$print.getServerUrl(),params:t});try{var r=_Z_4.create();r._queryStr="";return r._invoke("ExecutePrint",i,!1,r._reqFailed)}catch(n){r.get_request()&&r.get_request().abort(),$print._showPrintError(n.message,e,null,!0)}},$print._toPrinterList=function(t,e,i){var r=[];return t.forEach(function(t){r.push({clientId:e,clientTagName:i,printerName:t})}),r},$print._toPrinters=function(t){for(var e=t.split("\r\n"),i=[],r=0;r<e.length;r++)""!=e[r]&&i.push(e[r]);return i},$print._getResult=function(t,e){var i="";if(!t||"string"==typeof t)return i;30001==t.code&&($common.hideWaiting(),$common.checkError(!0,t.msg));try{var r=$craba.getLangPro("打印异常");if(!t.success)return $common.alertWarn(t.msg,{title:r}),i;if(!(t=JSON.parse(t.data)).success)return $common.alertWarn(t.msg,{title:r}),i;var n=t.params.results;if(!n)return i;i=n[e=e||0].result}catch(s){console.log(s)}return i},$print._request=function(t,e,i,r){this._checkToken(t);var n=_Z_5.create();try{var s=n._invoke(t,e,!!i&&function(t){return t&&"object"==typeof t&&t.success?void i(t.params):i(null)},n._reqFailed);if(!i)return s&&"object"==typeof s&&s.success?s.params:null}catch(o){return n.get_request()&&n.get_request().abort(),r||$common.showError(String.format(Sys.Res.printTips.apiError,t)),null}},$print._checkPorting=function(){if(!$app.porting)return $app.hasPrint=!0,$print.lookForPrintPort(),!1;$app.lookPortTime=0},$print._showPrintError=function(t,e,i,r,n){if(!t)throw Error.abort();if(n){if(n.get_request()&&n.get_request().abort(),$print.LastPrint=n._target,$print.LastPrint.isShowError)return}else $print.LastPrint=new Sys.UI.Actions.ReportPrintService,$print.LastPrint._showExport=!1;if($print.LastPrint.doAfterExecute&&r&&($print.LastPrint.isShowError=!0,$print.LastPrint.doAfterExecute(),$print.LastPrint.isShowError=!1),$print._printErrorForm)throw Error.abort();$debug._lastPrintErrorLog="打印错误信息如下:\r\n调用方法:"+e+"\r\n调用参数:"+(n?n._jsonSerialize(i):"")+"\r\n错误消息:"+t;var s=String.format(Sys.Res.printTips.printErrorHtml,$print._getDownloadUrl(),$print.LastPrint.get_port());if(s+='<div class="_Progress"><div class="icon cur">1</div><div class="icon">2</div><div class="icon">3</div></div>',s+='<div class="_Bottom">',$settings.CustomHelpQQ&&(s+='<button class="Button BButton aicon-kefu3"><a href="'+$settings.CustomHelpQQ+'" target="_blank">'+$craba.getLangPro("联系客服")+"</a></button>"),$print.LastPrint&&$print.LastPrint._showError&&($print.LastPrint._showError(Sys.ErrorType.servicePrint,s,r),!$print.LastPrint.get_isDisposed()&&$print.LastPrint._showExport&&(s+='<button class="Button BButton aicon-daochu" onclick="$common.exportServiceToExcel();">'+$craba.getLangPro("导出数据")+"</button>")),s+="</div>",$print._errorIndex=0,$common.hideLoading(),$app.closeLoadingForm(),!1===r)throw s;throw $print._printErrorForm=!0,Error.abort(s,{boxClass:"PrintErrorBox",iconVisible:!1,handler:function(){$print._printErrorForm=!1},onLoad:function(t){$print._lastForm=t}})},$print._pullData=function(t,e,i,r,n,s){if(!t||"null"==t)return!s&&e.params.data.detailData&&(e.params.data.detailData.itemList=convertGridData(e,e.params.data.detailData.itemList,n,!0)),!s&&e.params.data.detailData1&&(e.params.data.detailData1.itemList=convertGridData(e,e.params.data.detailData1.itemList,n,!0,e.params.data.detailFields1)),i(e);var o=0==r?e.params.data.detailParams:e.params.data.detailParams1;$common.ajax({url:t,data:o,owner:document.body,waiting:$craba.getLangPro("正在获取数据"),headers:{reporting:!0,__IsReporting:!0},success:function(s){s.itemList?s=$craba._changeDataToList(s.itemList,this):(s.code&&200!=s.code&&$common.checkError("打印前拉取grid数据失败,请检查:"+t),s=s.data?s.data.list||[]:[]),0==r?(e.params.data.detailParams={},e.params.data.detailDataUrl="",e.params.data.detailData={itemCount:s.length,itemList:convertGridData(e,s,n)}):(e.params.data.detailParams1={},e.params.data.detailDataUrl1="",e.params.data.detailData1={itemCount:s.length,itemList:convertGridData(e,s,n)}),$print._pullData(e.params.data.detailDataUrl1,e,i,1,n,!0)},error:function(t,e){t?$common.alert(t.message||t.Message||e.get_responseData()):$common.alert($craba.getLangPro("打印数据获取失败"))}})},$print._checkLoadTeemoJs=function(t){"undefined"==typeof $TeemoApp&&t._useWebTool&&$settings.ReportConfig.TeemoJsUrl&&($print._loadingTeemo||($print._loadingTeemo=!0,$common.loadScript($settings.ReportConfig.TeemoJsUrl,null,function(){$print._loadingTeemo=!1,$print._checkTeemoJs()})))},$print._checkTeemoJs=function(){$common.checkTips(!$settings.ReportConfig.TeemoJsUrl,Sys.Res.printTips.teemoJs2),$common.checkTips("undefined"==typeof $TeemoApp,Sys.Res.printTips.teemoJs1)},$print.showCloundTips=function(){$print.cloudInitOk=!1,delete $common.__cloudPrintAccessToken,delete $common.__cloudPrintServiceUrl,$settings.ReportConfig||($settings.ReportConfig={}),$settings.ReportConfig.PrintMode=0,$settings.PrintDefaultUsePDF=!1,$settings.PrintDefaultDisabledPDF=!0,console.log('云打印初始化失败,为了不影响打印功能,系统已自动切换到【本地打印模式】<p>本地打印仅云样式无法使用,但其他一切服务不受影响,如果您急需使用云打印请反馈<a href="http://www.wsgjp.com.cn/" target="_blank">官网客服</a></p>')},Type.registerNamespace("Sys.UI.Actions"),_Z_177=function(t){_Z_177.initializeBase(this),this._action=t},_Z_177.prototype={get_printTimes:function(){return this._action.get_printTimes()},get_exportTimes:function(){return this._action.get_exportTimes()}},_Z_177.registerClass("_Z_177",Sys.EventArgs),_Z_274=function(t){_Z_274.initializeBase(this),this._report=t,this._styleNames=[]},_Z_274.prototype={get_styleNames:function(){return this._styleNames},set_styleNames:function(t){this._styleNames=t},get_reportName:function(){return this._report.get_reportName()},get_report:function(){return this._report}},_Z_274.registerClass("_Z_274",Sys.EventArgs),Sys.UI.Actions.ReportMode=function(){throw Error.notImplemented()},Sys.UI.Actions.ReportMode.prototype={_default:0,defaultReport:0,currentPage:1,fullData:2},Sys.UI.Actions.ReportMode.registerEnum("Sys.UI.Actions.ReportMode"),_Z_29=function(){throw Error.notImplemented()},_Z_29.prototype={_default:0,printer:1,pdf:2},_Z_29.registerEnum("_Z_29"),_Z_28=function(){throw Error.notImplemented()},_Z_28.prototype={local:0,remote:1,localAndCloudStyle:2,localAndManageStyle:3,remoteAndManageStyle:4},_Z_28.registerEnum("_Z_28"),_Z_45=function(){throw Error.notImplemented()},_Z_45.prototype={_default:-1,pdf:1,printer:0,web:2},_Z_45.registerEnum("_Z_45"),_Z_44=function(){throw Error.notImplemented()},_Z_44.prototype={report:0,express:1,bill:2,barcode:3},_Z_44.registerEnum("_Z_44"),Sys.UI.Actions.PrintType=function(){throw Error.notImplemented()},Sys.UI.Actions.PrintType.prototype={print:1,design:2,preview:3,"export":4,pdf:5,style:8},Sys.UI.Actions.PrintType.registerEnum("Sys.UI.Actions.PrintType"),_Z_43=function(){throw Error.notImplemented()},_Z_43.prototype={string:0,number:1,image:2},_Z_43.registerEnum("_Z_43"),_Z_178=function(t){_Z_178.initializeBase(this),this._masterFields=t,this._data=null},_Z_178.prototype={get_masterFields:function(){return this._masterFields},clearMasterFields:function(){Array.clear(this._masterFields)},addMasterField:function(t,e,i,r,n,s){var o={name:t,dataField:e,isFooter:!!r,hidden:!!i,value:s};n&&(o.dataType=n),Array.add(this._masterFields,o)},addField:function(t){Array.add(this._masterFields,t)},get_data:function(){return this._data},set_data:function(t){this._data=t}},_Z_178.registerClass("_Z_178",_Z_152),_Z_179=function(t){_Z_179.initializeBase(this),this._dataObj=t,this._detailFields=t?t.detailFields:null,this._masterFields=t?t.masterFields:null,this._detailData=t?t.detailData:null},_Z_179.prototype={get_detailFields:function(){return this._detailFields},set_detailFields:function(t){this._detailFields=t,this._detailFieldsChanged=!0},get_masterFields:function(){return this._masterFields},set_masterFields:function(t){this._masterFields=t,this._masterFieldsChanged=!0},get_detailData:function(){return this._detailData},set_detailData:function(t){this._detailData=t,this._detailDataChanged=!0},get_data:function(){return this._dataObj},get_detailSumTexts:function(){return this._dataObj.datailSumTexts},set_detailSumTexts:function(t){this._dataObj.datailSumTexts=t,this._detailSumTextsChanged=!0}},_Z_179.registerClass("_Z_179",_Z_152),_Z_283=function(t){_Z_283.initializeBase(this),this._dataObj=t,this._detailFields=t?t.params.data.detailFields:null,this._masterFields=t?t.params.data.masterFields:null,this._detailData=t?t.params.data.detailData:null},_Z_283.prototype={},_Z_283.registerClass("_Z_283",_Z_179),_Z_180=function(t,e,i,r){_Z_180.initializeBase(this),this._reportAction=t,this._masterFields=i,this._detailFields=r,this._fieldMap=[],this._expandItem=null,this._grid=e},_Z_180.prototype={dispose:function(){this._expandItem=null},get_expandItem:function(){return this._expandItem},get_detailFields:function(){return this._detailFields},get_masterFields:function(){return this._masterFields},addFieldMap:function(t,e,i){var r={dataField:e,caption:i,name:i};Array.add(this._fieldMap,r)},expandColumn:function(t,e){this._checkParams(t,e);var i=this._clearGroupExpandInfoAndReturnIndex(t);if(-1==i)throw Error.invalidOperation("没有找到需要扩展的组信息");this._addMasterFields(e,e,"");var r=this._addDetailFields(i,t,e);this._expandItem={expandNameList:r,groupName:t,groupCaption:e}},_checkParams:function(t,e){if(!t)throw Error.invalidOperation("扩展名组名错误");if(!e)throw Error.invalidOperation("组全名错误");if(!this._fieldMap||0==this._fieldMap)throw Error.invalidOperation("请调用addFieldMap设置扩展信息")},_clearGroupExpandInfoAndReturnIndex:function(t){for(var e=-1,i=0,r=this._detailFields.length;i<r;i++)this._detailFields[i].groupName==t&&(-1!=e?(Array.remove(this._detailFields,this._detailFields[i]),r--,i--):e=i);return e},_addMasterFields:function(t,e,i){var r={name:t,dataField:e,isFooter:!1,hidden:!1,value:i};Array.add(this._masterFields,r)},_addDetailFields:function(t,e,i){var r=[],n=this._detailFields[t];Array.remove(this._detailFields,n);p={name:i,caption:i,footer:n.footer,calcSum:n.calcSum,replaceText:n.replaceText,decimalDigits:n.decimalDigits,decimalScale:n.decimalScale,displayThousandseperator:n.displayThousandseperator,columnWidth:n.columnWidth,headerAlign:n.headerAlign,textAlign:n.textAlign,groupName:n.groupName,isDynamic:n.isDynamic,displayEmptyForZero:n.displayEmptyForZero};Array.insert(this._detailFields,t,p),t++;for(var s=0,o=this._fieldMap.length;s<o;s++){var a=this._fieldMap[s],l=a.caption,c=a.caption;this._grid.get_columnRealCaption&&(l=this._grid.get_columnRealCaption(s,l)),c="expandqtysize"+s.toString();var d=n.columnWidth;s>0&&(d+=1);var p={name:c,dataField:a.dataField,caption:l,footer:n.footer,calcSum:n.calcSum,replaceText:n.replaceText,decimalDigits:n.decimalDigits,decimalScale:n.decimalScale,displayThousandseperator:n.displayThousandseperator,columnWidth:d,headerAlign:n.headerAlign,textAlign:n.textAlign,groupName:n.groupName,isDynamic:n.isDynamic,displayEmptyForZero:n.displayEmptyForZero};Array.insert(this._detailFields,t,p),Array.add(r,p.name),this._addMasterFields(c,p.dataField,l),t++}return r}},_Z_180.registerClass("_Z_180",Sys.EventArgs),_Z_181=function(){_Z_181.initializeBase(this),this._params={}},_Z_181.prototype={get_params:function(){return this._params},set_params:function(t){this._params=t},get_callBackUrl:function(){return this._url},set_callBackUrl:function(t){this._url=t}},_Z_181.registerClass("_Z_181",Sys.EventArgs),Sys.UI.Actions.PrintBase=function(){Sys.UI.Actions.PrintBase.initializeBase(this),this._printMode=$settings.ReportConfig.PrintMode,this._useWebTool=$settings.AllPrintUseWebTool,this._copies=1,this._styleName="",this._templateName=""},Sys.UI.Actions.PrintBase.prototype={_doGetPrintData:function(t){var e=this.get_events().getHandler("getPrintData");if(!e)return!0;var i=new _Z_283(t);return e(this,i),!i.get_cancel()&&(i._detailFieldsChanged&&(t.params.data.detailFields=i.get_detailFields()),i._masterFieldsChanged&&(t.params.data.masterFields=i.get_masterFields()),i._detailDataChanged&&(t.params.data.detailData=i.get_detailData()),!0)},add_getPrintData:function(t){this.get_events().addHandler("getPrintData",t)},remove_getPrintData:function(t){this.get_events().removeHandler("getPrintData",t)},set_pageSize:function(t){return this._pageSize=t},get_pageSize:function(){return this._pageSize},set_useWebTool:function(t){this._useWebTool=t},get_useWebTool:function(){return this._useWebTool},set_copies:function(t){this._copies=t},get_copies:function(){return this._copies},addPrintSetting:function(t){this._printSetting||(this._printSetting={}),Object.copyTo(t,this._printSetting)},removePrintSetting:function(t){this._printSetting&&$craba.setPropValue(this._printSetting,t)},set_bizStyleId:function(t,e){this._bizStyleId=t,this._sysStyle=e},get_bizStyleId:function(){return this._bizStyleId},get_printMode:function(){return $print.cloudInitOk?this._printMode:0},set_printMode:function(t){this._printMode=t},get_masterFields:function(){return this._masterFields},set_masterFields:function(t){this._masterFields=t},get_detailFields:function(){return this._detailFields},get_masterDetailKeyFields:function(){return this._masterDetailKeyFields},set_masterDetailKeyFields:function(t){this._masterDetailKeyFields=t},get_sheetField:function(){return this._sheetField},set_sheetField:function(t){this._sheetField=t},set_detailFields:function(t){this._detailFields=t},set_masterData:function(t){this._masterData=t},set_detailData:function(t){this._detailData=t},get_templateName:function(){return this._templateName},set_templateName:function(t){this._templateName=t},set_styleName:function(t){this._styleName=t},get_styleName:function(){return this._styleName},setPrinter:function(t){this._printerName=t},get_printer:function(t){return this._printerName},set_printer:function(t){this._printerName=t}},Sys.UI.Actions.PrintBase.registerClass("Sys.UI.Actions.PrintBase",_Z_233),_Z_99=function(){_Z_99.initializeBase(this),this._event="click",this._useService=$settings.AllPrintUseService,this._reportConfig=$settings.ReportConfig,this._showExport=$settings.ShowExportButton},_Z_99.prototype={initialize:function(){_Z_99.callBaseMethod(this,"initialize"),this._styleMenuId=this.get_idPart()+"_stylePopup"},dispose:function(){this._doExecute=null,_Z_99.callBaseMethod(this,"dispose")},get_printReplaceText:function(){return this._printReplaceText},set_printReplaceText:function(t){this._printReplaceText=t},get_useService:function(){return this._useService},set_useService:function(t){this._useService=t},set_tab:function(t){this._tab=t},get_tab:function(){return this._tab},doFormInit:function(){var t=this.get_control();if(t&&t._isButton){var e=this._event;t["add_"+e]instanceof Function&&(this._doExecute=$createDelegate(this,this._internalExecute),t["add_"+e](this._doExecute),t.set_reportAction&&t.set_reportAction(this))}},add_beforeExecute:function(t,e){return this.get_events().addHandler("beforeExecute",t,e)},remove_beforeExecute:function(t){this.get_events().removeHandler("beforeExecute",t)},add_afterExecute:function(t){this.get_events().addHandler("afterExecute",t)},remove_afterExecute:function(t){this.get_events().removeHandler("afterExecute",t)},_internalExecute:function(t,e){var i=this.get_control(),r=i&&i.isPrintButton&&i.isPrintButton();this._isNormalButton=!r,this._method&&"function"==typeof this[this._method]?this[this._method].apply(this):(r=r||1==this._directPrint||this.get_enabledPDF(),this._beforeExecute(t,r?Sys.UI.Actions.PrintType.print:null))},doBeforeExecute:function(t){delete $print.__hideType;var e=new _Z_152;e.executeAction=t;var i=this.get_events().getHandler("beforeExecute");i&&i(this,e);var r=e.get_cancel();return r&&($print.__hideType="cancel"),r},doAfterExecute:function(t){if("cancel"!=$print.__hideType&&"esc"!=$print.__hideType){var e=this.get_events().getHandler("afterExecute");if(e){var i=new _Z_177(this);i.type=t,e(this,i)}}},doExecute:function(t){var e=this.get_events().getHandler("execute");e&&e(this,t)},add_execute:function(t){this.get_events().addHandler("execute",t)},remove_execute:function(t){this.get_events().removeHandler("execute",t)},add_popupInit:function(t){this.get_events().addHandler("popupInit",t)},remove_popupInit:function(t){this.get_events().removeHandler("popupInit",t)},get_control:function(){return this.findControl()},findControl:function(){var t=null,e=this._controlId;if(e){(t=this.get_form()[e])||(this._onlyReport=!0)}return t},get_controlId:function(){return this._controlId},set_controlId:function(t){this._controlId=t},get_event:function(){return this._event},set_event:function(t){this._event=t},get_method:function(){return this._method},set_method:function(t){this._method=t},_initPrintMenu:function(t){if(!this._popupMenuID){var e=this._makePrintItems(!0),i=this.get_events().getHandler("popupInit");i&&i(this,{items:e});var r=this._popupMenuID=t._popupMenu=t.get_idPart()+"_printPopup",n=this._menu=Sys.UI.Controls.Menu.create(t.get_form(),{id:r,cssClass:"PrintMenu",items:e});n.btn=t,n.add_beforeSubMenu(this._onClickMenu,this)}},_makePrintItems:function(t){return[{id:"dyyl",properties:{text:$craba.getLangPro(Sys.Res.printTips.preview),icon:"aicon-yulan",visible:t},events:{click:$createDelegate(this,this._preview)}},{id:"dysj",properties:{text:$craba.getLangPro(Sys.Res.printTips.design),icon:"aicon-bianji1",visible:t},events:{click:$createDelegate(this,this._design)}},{id:"dyys",properties:{text:$craba.getLangPro(Sys.Res.printTips.style),icon:"aicon-yangshi",subMenu:this._styleMenuId}},{id:"ysgl",properties:{text:$craba.getLangPro(Sys.Res.printTips.manage),icon:"aicon-shezhi2",visible:t},events:{click:$createDelegate(this,this._styleManage)}},{id:"dcsj",properties:{visible:this._showExport,text:$craba.getLangPro(Sys.Res.printTips.exportBtn),icon:"aicon-daochu"},events:{click:$createDelegate(this,this._export)}}]},_onClickMenu:function(t,e){var i=e[0].get_subMenu();if(i&&i==this._styleMenuId)try{this._createStyleMenu()}catch(r){t.hide()}},_createStyleMenu:function(t){var e=this.get_form()[this._popupMenuID+"_dyys"];this._createStylePopupMenu(e,t)},_clearStyleMenu:function(){if(this._styleMenu){for(var t=this.get_form(),e=this._styleMenu.get_idPart(),i=0;i<this._styleMenu.itemCount;i++){var r=t[e+"_"+i];t.removeControl(r)}t.removeControl(this._styleMenu,!0),this._styleMenu=null}},_checkStyleItemEnabled:function(t){if(t){t.setIcon("aicon-check");var e=this.get_form()[this._styleMenu.get_idPart()+"_"+this._styleIndex];e&&t!=e&&e.setIcon(null)}},_preview:function(t,e){this._menu.hide(),this.preview()},_design:function(t,e){this._menu.hide(),this.design()},_export:function(t,e){this._menu&&this._menu.hide(),this.exportData()},_styleManage:function(t,e){this._menu.hide(),this.styleManage()},_pdfPrint:function(t,e){this._menu.hide(),this.pdfPrint()},get_showExport:function(){return this._showExport},set_showExport:function(t){this._showExport=t}},_Z_99.registerClass("_Z_99",Sys.UI.Actions.PrintBase),_Z_100=function(){_Z_100.initializeBase(this),this._formWidth=197,this._formHeight=235,this._styleIndex=0,this._showModal=!0,this._reportNumber=-1,this._showMasterFields=!0,this._showDetailHeader=!0,this._isGetAll=$settings.PrintAllFields,this._createReport=$settings.PrintDefaultCreateReport,this._directPrint=!1,this._ajaxMode=!1,this._reportMode=Sys.UI.Actions.ReportMode.defaultReport,this._usePrintPopup=$settings.DefaultUsePrintPopup,this._requiredVersion=$settings.RequiredCPrintVersion||"10.2.0.410",this._batchPrint=!1,this._allowExport=!1,this._defaultUseNewDesignForm=!0,this._printTimesLimit=-1,this._cloudStoreVersion="10.3.0.102",this._mergePrintVersion="10.3.0.151",this._printTimesCallBackVersion="10.3.0.156",this._styleManageVersion="10.3.0.165",this._pageWidth=0,this._expandedHeaderInfo={},this._enabledPDF=$settings.PrintDefaultUsePDF&&!$settings.PrintDefaultDisabledPDF,this._disabledPDF=$settings.PrintDefaultDisabledPDF},_Z_100.prototype={initialize:function(){_Z_100.callBaseMethod(this,"initialize"),this._disabledPDF||(this._printOutDevice==_Z_29.printer?this._enabledPDF=!1:this._printOutDevice==_Z_29.pdf&&(this._enabledPDF=!0)),this._printOutDevice=_Z_29._default,$print._checkLoadTeemoJs(this)},set_otherFields:function(t){this._otherFields=t},get_otherFields:function(){return this._otherFields},set_createStyle:function(t){this._createStyle=t},get_createStyle:function(){return this._createStyle},set_disabledPDF:function(t){this._disabledPDF=t},get_disabledPDF:function(){return this._disabledPDF},get_enabledPDF:function(){return!!$print.cloudInitOk&&this._enabledPDF},_showError:function(t,e,i){var r=this.get_events().getHandler("_error");if(r&&r(this),!1===i)throw e},get_printOutDevice:function(){return this._printOutDevice},set_printOutDevice:function(t){this._printOutDevice=t},get_formUrl:function(){return this._formUrl},set_formUrl:function(t){this._formUrl=t},get_formWidth:function(){return this._formWidth},set_formWidth:function(t){this._formWidth=t},get_formHeight:function(){return this._formHeight},set_formHeight:function(t){this._formHeight=t},get_gridId:function(){return this._gridId},set_gridId:function(t){this._gridId=t},get_showModal:function(){return this._showModal},set_showModal:function(t){this._showModal=t},_skipExtensionGroup:function(t){return t.hidden||this._expandItem&&t.name==this._expandItem.groupCaption},get_reportName:function(t){if(!t||!$settings.CPrintUseClound||!this.isSupportCloudStore())return this._reportName;var e=this._getDataService().GetCloundPrintInfo(this._reportName,!1,Function.emptyMethod);if(Object.isEmpty(e))return this._reportName;if(e.templatename=this._reportName,delete e.PrintTimes,delete e.ExportTimes,delete e.ClientParams,delete e.ReportName,!e.Token)throw new Error.abort("服务打印获取云样式Token失败,方法:GetCloundPrintInfo");this.doGetReportName(e);return $crabaJSON.serialize(e)},doGetReportName:function(t,e){var i=this.get_events().getHandler("getReportName");if(!i||!this.isSupportPrintTimes())return!1;var r=new _Z_181;i(this,r);var n=r.get_callBackUrl()||$common.getHostUrl()+$getRootURI()+"Craba.Web/Craba.Web.Script.DataService.ajax/Printing";return e?(t.url=n,t.cookie=this.get_cookie(),t.clientParams=r.get_params(),!0):(t.CallBackUrl=n,t.Cookie=this.get_cookie(),t.ClientParams=r.get_params(),!0)},_getDataService:function(){var t=this._dataService;return t||(t=this._dataService=_Z_2.create(this.get_form())),t},set_reportName:function(t){this._reportName=t},isSupportCloudStore:function(){var t=this.getVersion();return $print._compareVersion(t,this._cloudStoreVersion)>=0},isSupportMergePrint:function(){var t=this.getVersion();return $print._compareVersion(t,this._mergePrintVersion)>=0},isSupportPrintTimes:function(){var t=this.getVersion();return $print._compareVersion(t,this._printTimesCallBackVersion)>=0},isSupportStyleManage:function(){var t=this.getVersion();return $print._compareVersion(t,this._styleManageVersion)>=0},get_reportNumber:function(){return this._reportNumber},set_reportNumber:function(t){this._reportNumber=t},get_expandFields:function(){return this._expandFields},set_expandFields:function(t){this._expandFields=t},get_printTimesLimit:function(){return this._printTimesLimit},set_printTimesLimit:function(t){this._printTimesLimit=t},appendCookie:function(t){t.cookie=this.get_cookie()},get_cookie:function(){var t=this._cookie,e=$common.getCookie("SERVERID");return""!=e&&(t=t+";SERVERID="+e),t},set_cookie:function(t){this._cookie=t},get_setupUrl:function(){return this._setupUrl},set_setupUrl:function(t){this._setupUrl=t},get_requiredVersion:function(){var t=this._requiredVersion,e=this._reportConfig;return e&&e.RequiredVersion&&(t=e.RequiredVersion),t},get_showMasterFields:function(){return this._showMasterFields},set_showMasterFields:function(t){this._showMasterFields=t},get_showDetailHeader:function(){return this._showDetailHeader},set_showDetailHeader:function(t){this._showDetailHeader=t},get_createReport:function(){return this._createReport},set_createReport:function(t){this._createReport=t},get_directPrint:function(){return this._directPrint},set_directPrint:function(t){this._directPrint=t},get_ajaxMode:function(){return this._ajaxMode},set_ajaxMode:function(t){this._ajaxMode=t},get_reportMode:function(){return this._reportMode},set_reportMode:function(t){this._reportMode=t},get_rowNoExpr:function(){return this._rowNoExpr},set_rowNoExpr:function(t){this._rowNoExpr=t},get_productName:function(){return this._productName},set_productName:function(t){this._productName=t},get_allowPrint:function(t){return this._allowPrint},set_allowPrint:function(t){this._allowPrint=t},get_allowExport:function(t){return this._allowExport},set_allowExport:function(t){this._allowExport=t},get_defaultUseNewDesignForm:function(t){return this._defaultUseNewDesignForm},set_defaultUseNewDesignForm:function(t){this._defaultUseNewDesignForm=t},doPopupHide:function(){var t=this.get_events().getHandler("popupHide");t&&t(this,{type:$print.__hideType?$print.__hideType:"esc"})},get_usePrintPopup:function(){return this._usePrintPopup},set_usePrintPopup:function(t){this._usePrintPopup=t},add_popupHide:function(t){this.get_events().addHandler("popupHide",t)},remove_popupHide:function(t){this.get_events().removeHandler("popupHide",t)},add_getStyleNames:function(t){this.get_events().addHandler("getStyleNames",t)},remove_getStyleNames:function(t){this.get_events().removeHandler("getStyleNames",t)},add_getMasterData:function(t){this.get_events().addHandler("getMasterData",t)},remove_getMasterData:function(t){this.get_events().removeHandler("getMasterData",t)},add_getReportName:function(t){this.get_events().addHandler("getReportName",t)},remove_getReportName:function(t){this.get_events().removeHandler("getReportName",t)},add_error:function(t){this.get_events().addHandler("_error",t)},remove_error:function(t){this.get_events().removeHandler("_error",t)},add_getDetailData:function(t){this.get_events().addHandler("getDetailData",t)},remove_getDetailData:function(t){this.get_events().removeHandler("getDetailData",t)},add_interceptorBeforePrint:function(t){this.get_events().addHandler("interceptorBeforePrint",t)},remove_interceptorBeforePrint:function(t){this.get_events().removeHandler("interceptorBeforePrint",t)},add_initDetailData:function(t){this.get_events().addHandler("initDetailData",t)},remove_initDetailData:function(t){this.get_events().removeHandler("initDetailData",t)},add_initDetailList:function(t){this.get_events().addHandler("initDetailList",t)},remove_initDetailList:function(t){this.get_events().removeHandler("initDetailList",t)},get_grids:function(){var t=[],e=this._gridId,i=this.get_form();if(e&&i)for(var r=e.split(","),n=0,s=r.length;n<s;n++){var o=r[n].trim();o&&Array.add(t,$craba.findControl(o,i))}return t},get_grid:function(){var t=this.get_grids();return t.length>0?t[0]:null},getGridByIndex:function(t){var e=this.get_grids();return e.length>t?e[t]:null},_internalExportXls:function(){if(this.get_isDisposed())$common.showError("窗体已经关闭,不能导出数据.");else try{$common._internalExportXls(this.getReportData(!0,!0))}catch(t){handleError(t)}},_adjustFieldsOrder:function(t,e,i){for(var r=null,n=null,s=function(t,e){for(var i=0,r=t.length;i<r;i++){var n=t[i];if(n.name==e||n.dataField==e)return i}return-1},o=0,a=e.length;o<a;o++){var l=e[o];if(l.hidden)i||Array.removeByKey(t,l,"dataField");else{var c=l.after;if(c?(r=c,n=l.name):r&&(r=c=n,n=l.name),c){for(var d=0,p=t.length;d<p;d++){if(t[d].dataField===l.dataField){Array.removeAt(t,d);break}}var h=Object.clone(l),u=s(t,c);u<0?Array.add(t,h):u==t.length-1?Array.add(t,h):Array.insert(t,u+1,h)}}}},_initDetailHeader:function(t,e){var i=t._header;if(i){var r=null!=t._headerSpacer,n=$common.getTableBody(i).childNodes,s=e.rowCount=n.length,o=e.rowsCells=[];e.rowColCount=[],e.colCount=0;for(var a=0,l=0;l<s;l++){var c=0,d=n[l].childNodes,p=d.length;0==l&&r&&p--;for(var h=0;h<p;){var u=d[h];if($dom.getVisible(u)){var _=u.firstChild,m="";m=_.firstChild&&_.firstChild.tagName?"TABLE"==_.firstChild.tagName?_.firstChild.innerText:_.firstChild.innerHTML:_.innerHTML,m=1==l&&this._expandItem&&this._isExpandColumnCell(u,t)?this._expandItem.groupCaption:m;u._colSpan,h+=1;var g=1;u.rowSpan&&(g=parseInt(u.rowSpan));var f=u.align||"",y=u.offsetWidth;u._colSpan&&(y=y*parseInt(u._colSpan)+u._colSpan-1),this._addDetailHeaderCells(o,l,g,1,m,y,f),c+=1}else h++}e.rowColCount[l]=c,a=Math.max(c,a)}e.colCount=a}},_isExpandColumnCell:function(t,e){if(!this._hasColumnExpand())return!1;for(var i=e.get_columns(),r=0,n=i.length;r<n;r++){var s=i[r];if(s.expanded&&0!=s.expanded.length&&s.expanded[0]._elements){if(s.expanded[0]._elements.header==t)return t._colSpan=s.expanded.length,!0;for(var o=1;o<s.expanded.length&&s.expanded[o]._elment;o++)if(s.expanded[o]._elment.header==t)return!1}}return!1},_addDetailHeaderCells:function(t,e,i,r,n,s,o){for(var a=0;a<r;a++)for(var l,c=e,d=0;d<i;d++,c++){var p=t[c];void 0===p&&(p=t[c]=[]);var h={};if(0==d&&0==a?((i>1||r>1)&&(h.rowSpan=i,h.colSpan=r),h.text=n):h.text="",h.width=1==r?s:(s-r+1)/r,h.align=o,h.rowIndex=e,0==d){l=0;for(var u=0,_=p.length;u<_&&"undefined"!=typeof p[l];u++)l++}p[l]=h,h.colIndex=l}},_toReportHAlign:function(t){return"center"==t?1:"right"==t?2:0},_subByteStr:function(t,e,i){var r=t.length;if(e>=r)return"";for(var n=e,s=0;n<r&&s<i;){if((s+=t.charCodeAt(n)>127?2:1)>i)break;n++}return n==e?"":t.substr(e,n-e)},_getFieldName:function(t){return this._subByteStr(t,0,29)},_setEnabled:function(t,e){t&&t.set_enabled&&t.set_enabled(e)},set_dataUrl:function(t){this._dataUrl=t},get_dataUrl:function(t){return this._dataUrl?this._dataUrl:t?location.protocol+"//"+$craba.joinPath(location.host,t.get_service().get_path())+"/GetPagerData":null},getMasterSlaveData:function(t,e){for(var i=t.detailFields,r=t.masterFields,n=this.get_grids(),s=n.length,o=this.get_events().getHandler("initDetailData"),a=this.get_events().getHandler("initDetailList"),l=0;l<s;l++){var c=this.getGridByIndex(l);if(c){var d={};d.itemCount=0,d.itemList=[];var p=c.findPager(),h={};h.pagerId=p?p.get_id():0;var u=p?Object.clone(p.get_queryParams()):[];u||(u={}),h.queryParams=u,h.orders=null,h.filter=null,h.first=0,h.count=p?p.get_itemCount():0,0==l?($export.initDetailFields(n[l],i,!0,r,this,!0),$export.initColumnExpands(n[l],t),t.detailDataUrl=p?this.get_dataUrl(p):"",t.detailData=$export.getGridsData([c],o,a,this,i),t.detailParams=h):($export.initDetailFields(n[l],e,!0,r,this),$export.initColumnExpands(n[l],t),t.detailDataUrl1=p?location.protocol+"//"+location.host+p.get_service().get_path()+"/GetPagerData":"",t.detailData1=$export.getGridsData([c],o,a,this,e),t.detailParams1=h);var _=this.get_reportMode();t.fullDataMode=_==Sys.UI.Actions.ReportMode.fullData,t.fullDataMode&&(h.count=-1)}}return this._doGetDetailData(t)?(t.rowNoExpr=this.get_rowNoExpr()||"",$debug.log(t),t):null},getMasterFields:function(){var t=this.get_grid(),e=this.get_masterFields(),i=e?Object.clone(e):[];if(!this.get_showMasterFields())return i;if($export.initMasterFields(this.get_rootForm(),t,i,this),!e)return i;this._adjustFieldsOrder(i,e,!1);for(var r=0;r<i.length;r++){var n=i[r];if(n.after&&r>0){i[r-1].isFooter&&(n.isFooter=!0)}}return i},getReportData:function(t,e){var i={};if(this.appendCookie(i),this._masterData&&this._masterFields&&this._detailFields&&this._detailData)return i.reportName=this.get_reportName(!e),i.reportNumber=this.get_reportNumber(),i.masterFields=this._masterFields,i.detailFields=this._detailFields,i.exportSheetField=this._sheetField,this._expandFields&&(i.expandFields=this._expandFields),this._masterDetailKeyFields&&(i.masterDetailKeyFields=this._masterDetailKeyFields),i.detailData={itemCount:this._detailData.length,itemList:this._detailData},i.masterData={itemCount:this._masterData.length,itemList:this._masterData},i;var r=this.get_grid(),n=this.getMasterFields();if(!this._getMasterData(n))return null;i.zone=$common.getLocalUtc(),i.reportName=this.get_reportName(!e),i.reportNumber=this.get_reportNumber(),i.exportSheetField=this.get_sheetField(),$settings.CPrintDataDirName&&(i.dataDirName=$settings.CPrintDataDirName),i.masterFields=n;var s=this.get_detailFields(),o=s?Object.clone(s):[];i.detailFields=o,r&&r.get_showPrintSummaryText()?i.datailSumTexts=this.get_datailSumTexts(r):i.datailSumTexts=[];var a=this.get_masterDetailKeyFields();if(null!=a){var l=s?Object.clone(s):[];return i.detailFields1=l,i.masterDetailKeyFields=a,this.getMasterSlaveData(i,l)}return this.buildGridDatas(i,t),s&&this._adjustFieldsOrder(o,s,!0),i.rowNoExpr=this.get_rowNoExpr()||"",this._doGetDetailData(i)?(this._buildExpandFields(i),$debug.log(i),i):null},_buildExpandFields:function(t){var e=this.get_grid();if(this._printer&&e&&e.get_displayMode&&1==e.get_displayMode()){var i=this.get_masterDetailKeyFields()||t.masterDetailKeyFields,r=e.getExpandName(),n={};t.expandFields=n;var s=-1;if(!i){var o=e.getField("SizeNameField"),a=n[o]=[],l=[];t.detailFields.forEach(function(t,e){var i=t.dataField;i?i!=o&&(i.startsWith(r)?(s<0&&(s=e),a.push(t)):l.push(t)):l.push(t)});var c={caption:"尺码",name:"尺码",dataField:o,columnType:"Expand"};return Array.insert(l,s,c),void(t.detailFields=l)}}},buildGridDatas:function(t,e){var i=t.detailFields,r=t.masterFields,n=this.get_grid();if(!n){if(t.detailDataUrl="",0==i.length){var s={};s.name="行号",s.caption=s.name,s.dataField=s.name,s.hidden=!0,Array.add(i,s)}return t.detailData={itemCount:0,itemList:[]},t}var o=this.get_reportMode(),a=o==Sys.UI.Actions.ReportMode.currentPage,l=o==Sys.UI.Actions.ReportMode.fullData,c=o!=Sys.UI.Actions.ReportMode.fullData,d=n.findPager();t.detailDataUrl=d?this.get_dataUrl(d):"",d&&e&&d.get_showAll()&&c&&(e=!1);var p,h=!1;!d||a?p=!0:l?(p=!1,h=!0):p=d.get_pageCount()<2;var u=this.get_grids(),_=u.length;if(1==_)t.dataGroupField=u[0].get_dataGroupField(),$export.initDetailFields(u[0],i,!0,r,this),$export.initColumnExpands(u[0],t);else{var m=Array.clone(u);if(2==_&&m[1].get_visibleColumnCount()>m[0].get_visibleColumnCount()){var g=m[1];m[1]=m[0],m[0]=g}for(var f=0;f<_;f++)$export.initDetailFields(m[f],i,!1,r,this)}if(n.get_maxHeaderLevel()>=2){var y=this.get_events().getHandler("interceptorBeforePrint");if(y){var v=new _Z_180(this,n,t.masterFields,t.detailFields);y(this,v),this._expandItem=v.get_expandItem()}var S=t._detailHeaders={};this._initDetailHeader(n,S)}else this._expandItem=null;if(p){var P=this.get_events().getHandler("initDetailData"),C=this.get_events().getHandler("initDetailList");t.detailData=$export.getGridsData(u,P,C,this,i),t.detailDataUrl=""}if(d&&!p){var D={};e?(t.detailPagerId=n.get_pagerClientId(),o==Sys.UI.Actions.ReportMode.fullData&&(t.fullDataMode=!0)):(t.detailParams=this._buildDetailParams(D,d,h,p,t),D=t.detailParams),t.fullDataMode&&(D.count=-1)}return t},getReportFields:function(){return this.getReportData()},_buildDetailParams:function(t,e,i,r,n){t.pagerId=e.get_id();var s=null;return i&&((s=Object.clone(e.get_queryParams()))||(s={}),n.fullDataMode=!0),t.queryParams=s,t.orders=null,t.filter=null,t.first=0,t.count=e.get_itemCount(),t},_getMasterData:function(t){var e=this.get_events().getHandler("getMasterData");if(!e)return!0;var i=new _Z_178(t);if(e(this,i),i.get_cancel())return!1;var r=i.get_data();if(!r)return!0;for(var n=0;n<t.length;n++){var s=t[n],o=s.dataField;if(o){var a=r[o];s.hasValue||null==a||(s.value=a)}}return!0},_doGetDetailData:function(t){var e=this.get_events().getHandler("getDetailData");if(!e)return!0;var i=new _Z_179(t);if(e(this,i),i.get_cancel())return!1;if(i._detailFieldsChanged&&(t.detailFields=i.get_detailFields()),i._masterFieldsChanged&&(t.masterFields=i.get_masterFields()),i._detailDataChanged&&(t.detailData=i.get_detailData()),i._detailSumTextsChanged)for(var r=t.datailSumTexts,n=t.detailFields,s=0;s<r.length;s++){var o=r[s];o.sumText=o.sumText.toString();for(var a=0;a<n.length;a++){var l=n[a];if(l.name==o.name){l.footer=o.sumText;break}}}return!0},_checkGroupWidth:function(t,e,i,r,n){if(null==t.qtyExpandName){t.widthSum=0,t.groupWidthSum=0,t.groupSum=0;var s=this.get_grid();t.qtyExpandName=s&&s._qtyExpandName?s._qtyExpandName:""}var o=0;if(n==i-1)o=this.get_pageWidth()-t.widthSum;else if(o=Math.round(e.columnWidth*r),e.dataField&&e.dataField.startsWith(t.qtyExpandName)||e.groupName&&this._expandItem&&e.groupName==this._expandItem.groupName){if(t.groupSum+=1,this._expandItem&&this._expandItem.expandNameList&&this._expandItem.expandNameList.length==t.groupSum){var a=this.get_expandedHeaderInfo()[this._expandItem.groupCaption];a&&(o=a-t.groupWidthSum)}t.groupWidthSum+=o}return t.widthSum+=o,o},_hasColumnExpand:function(){return this._expandItem&&this._expandItem.groupName&&this._expandItem.expandNameList&&this._expandItem.expandNameList.length>0},get_datailSumTexts:function(t){if(!t||0===t.get_columnCount()||!t.get_showFooter())return[];for(var e=[],i=t.get_columns(),r=0,n=i.length;r<n;r++){var s=i[r],o=s.get_footer(!0);if(""!=o&&s.get_reportVisible()&&s.get_visible()){var a=$export.get_reportField(s),l={dataField:s.get_dataField(),name:a,sumText:o};e.push(l)}}return e},execute:function(t,e){this._beforeExecute(t,e),this._directPrint=0},print:function(){this.directPrint()},directPrint:function(){this._beforeExecute(null,Sys.UI.Actions.PrintType.print)},design:function(){this._beforeExecute(null,Sys.UI.Actions.PrintType.design)},preview:function(){this._beforeExecute(null,Sys.UI.Actions.PrintType.preview)},exportData:function(){this._beforeExecute(null,Sys.UI.Actions.PrintType["export"])},pdfPrint:function(){this._beforeExecute(null,Sys.UI.Actions.PrintType.pdf)},styleManage:function(){if(!this.isSupportStyleManage())return $msg.alert(String.format('<div class="StyleCheckContent"><p class="Title">请升级打印客户端版本后才能使用该功能</p><p>当前版本:{0}</p><p>支持该功能的版本为:{1}</p></div>',this.getVersion(),this._styleManageVersion));this._beforeExecute(null,Sys.UI.Actions.PrintType.style)},_isInstalledOk:function(t){$print.version=null;var e=this.getVersion();return $print._compareVersion(e,this.get_requiredVersion())>=0},checkInstall:function(t){return!!this._isInstalledOk(t)||(!1!==t&&$print._showPrintError("检查是否安装打印管理器","checkInstall",null,!0),!1)},getPrintType:function(){return this._saveAction},_beforeExecute:function(t,e){if(!this._reportName)throw new Error.abort("ReportAction的ReportName不能为空");(e==Sys.UI.Actions.PrintType["export"]||this.checkInstall(!0))&&(this._saveAction=e,Object.isUndefinedOrNull(e)||!this.doBeforeExecute(e)?this.doReport(t,1==this._directPrint?1:e):delete $print.__hideType)},doReport:function(t,e){var i=new Sys.EventArgs;if(i.executeAction=e,"execute"!=this._event)try{this.doExecute(i)}catch(r){if(r.isAbort)return;throw r}this._execute(t,e)},showPrintMenu:function(){var t=$print._getPrintPopupMenu(this);$print.LastPrint._createStylePopupMenu($common.getMainForm().__changeStyleBtn),t.popupAt(document.body,!0,!1)},__doPrint:function(t){this.doBeforeExecute(Sys.UI.Actions.PrintType.print)||this._command("method=PrintWithoutDialog")},__doPreview:function(t){this.doBeforeExecute(Sys.UI.Actions.PrintType.preview)||this._command("method=Preview")},__doDesign:function(t){this.doBeforeExecute(Sys.UI.Actions.PrintType.design)||this._command("method=Design")},__doExport:function(t){this.doBeforeExecute(Sys.UI.Actions.PrintType["export"])||this._command("method=ExportData")},__doStyleManage:function(t){this.doBeforeExecute(Sys.UI.Actions.PrintType.style)||this._command("method=StyleManage")},__doEndPrint:function(t){$cache.set("isPrintMenu",!1);try{$print.LastPrint._service.endPrint(null,!1),$print.LastPrint.doAfterExecute()}catch(e){}finally{$print.LastPrint.doPopupHide()}},_hidePrintPopup:function(t,e){($common.getMainForm().chkPrintStatus.get_checked()||t)&&(e||(e=$print.__hideType||"print"),$print.__hideType=e,$print._printPopupMenu.hide(),delete $print.__hideType)},_throwReportError:function(t){var e="不能打印,请检查打印管理器是否正确安装:"+(t.message?t.message:t),i=Sys.UI.Actions.Report.isInstanceOfType(this);$app.showError(i?Sys.ErrorType.ocxPrint:Sys.ErrorType.servicePrint,e,!0,null,{iconVisible:!1})},_processReportColumnExpand:function(t){this._hasColumnExpand()&&this._expandPageRow(t)},_mergeCellDetail:function(t,e,i){if(this._expandItem&&this._expandItem.expandNameList){var r=this._expandItem.expandNameList.length;if(!(r<=1)){var n=t,s=e,o=t,a=e+r-1;i?i.MergeCell(n,s,o,a):this._command("method=MergeCell:"+n+","+s+","+o+","+a)}}},_expandPageRow:function(t){if(this._expandItem){for(var e="",i=this._expandItem.expandNameList,r=0,n=i.length;r<n;r++)e.length>0?e+=","+i[r]:e=i[r];t?t.ExpandPageRow(this._expandItem.groupCaption,e,!0,!0,!0):this._command("method=ExpandPageRow:"+this._expandItem.groupCaption+","+e+",true,true,true")}},_getMultiDetailHeaderRowStartIndex:function(t,e){var i=e._header;if(!i)return 0;var r=$common.getTableBody(i).childNodes;if(r.length<=t)throw Error.abort("准备打印获取多表头开始索引时出错");var n=r[t].childNodes;return 0==n.length?0:this._getHeaderCellIndex(n[0],e)},_getHeaderCellIndex:function(t,e){for(var i=e.get_columns(),r=0,n=i.length;r<n;r++){var s=i[r];if(s.expanded&&0!=s.expanded.length&&s.expanded[0]._elements&&s.expanded[0]._elements.header==t)return r}return 0},get_pageWidth:function(){return this._pageWidth},set_pageWidth:function(t){this._pageWidth=t},get_expandedHeaderInfo:function(){return this._expandedHeaderInfo},set_expandedHeaderInfo:function(t){this._expandedHeaderInfo=t},_doCreateReport:function(t){var e=this.get_masterDetailKeyFields(),i=t.detailFields;null!=e&&(i=t.detailFields1);var r=i.length,n=0,s=0;if(r>0)for(D=0;D<r;D++){A=i[D];this._skipExtensionGroup(A)||(s++,A.columnWidth||(A.columnWidth=A.size?12*(A.size+1):60),n+=A.columnWidth)}var o=Math.round(96/25.4*190),a=Math.round(96/25.4*277),l=n<2*o;this._command("method=CreateReport:"+escape(t.reportName)+","+(l?0:1)),this._command("method=SetReportMargin:10,10,10,10");var c=l?o:a;this.set_pageWidth(c);var d=0;this._command("method=AddLine:2");var p=Math.round(c/2);this._command("method=AddCell:"+escape("`日期")+","+p+",9,0,1,0,1,0,1,0,1,1,-1,0,1"),this._command("method=AddCell:"+escape("`总页码")+","+p+",9,0,1,0,1,0,1,0,1,1,-1,2,1"),this._command("method=EndLine"),d++;var h=this.get_reportName();this._command("method=AddLine:1"),this._command("method=AddCell:"+escape(h)+","+c+", 20, 0, 1, 0, 1, 0, 1, 0, 1, 1, -1, 1, 1"),this._command("method=SetCellFont:宋体, 20, 1, 0, 0, 0"),this._command("method=EndLine"),d++,this._addEmptyLine(c),d++;var u=t.masterFields;null!=e&&(u=t.detailFields);var _=[],m=[],g=u.length,f=null;if(g>0){f=new Array(g);for(D=0;D<g;D++){(A=u[D]).hidden?Array.add(f,A.name):A.isFooter?Array.add(m,A):Array.add(_,A)}}if(_.length>0){d+=this._addHeaderFooter(c,_,f),this._addEmptyLine(c,18),d++}if(s>0){var y=c/(n>0?n:1);if(this.get_showDetailHeader()){var v=t._detailHeaders;v?(this._addMultiDetailHeader(y,d,v),delete t._detailHeaders):this._addSingleDetailHeader(y,r,s,i,u)}this._command("method=AddLine:"+s),d+=2;var S=new Array;S.length=r;for(var P=-1,C={},D=0;D<r;D++){if(!(A=i[D]).hidden){T=-1;"Number"==A.columnType&&A.decimalDigits>0&&(T=A.decimalDigits);var I=this._getFieldName(A.name);S[D]=I;for(var x=0,b=0;b<D;b++)S[b]==I&&x++;if(x>=99)throw Error.create("截短后明细重名字段“"+I+"”不能超过99个");x>0&&(I+=x+1),A.newName=I,A.groupName&&this._expandItem&&A.groupName==this._expandItem.groupName&&-1==P&&(P=D,I=this._expandItem.groupCaption,A.columnWidth=A.columnWidth,D++);E=this._checkGroupWidth(C,A,r,y,D);this._command("method=AddCell:"+escape("#"+I)+","+E+", 9, 1, 1, 1, 1, 1, 1, 1, 1, 1, "+T+", "+this._toReportHAlign(A.textAlign)+", 1")}}this._command("method=EndLine"),this._mergeCellDetail(d,P),this._processReportColumnExpand();for(var $=!1,D=0;D<r;D++){if(!(A=i[D]).hidden&&A.footer){$=!0;break}}if($){this._command("method=AddLine:"+s),d+=1,C.widthSum=0,C.groupWidthSum=0,C.groupSum=0;for(D=0;D<r;D++){var A=i[D];if(!this._skipExtensionGroup(A)){var T=-1,U=A.footer||"";if(U&&A.name){var w=!isNaN(parseFloat(U));"Number"==A.columnType||"Percent"==A.columnType?w?(U="@"+(A.newName?A.newName:A.name),A.decimalDigits>0&&(T=A.decimalDigits)):U="":w&&(U="")}var E=this._checkGroupWidth(C,A,r,y,D);this._command("method=AddCell:"+escape(U)+","+E+", 9, 1, 1, 1, 1, 1, 1, 1, 1, 1, "+T+", "+this._toReportHAlign(A.textAlign)+", 1")}}this._command("method=EndLine"),this._mergeCellDetail(d,P)}}m.length>0&&(this._addEmptyLine(c,18),this._addHeaderFooter(c,m,f)),this._endReport()},_endReport:function(){this._command("method=EndReport")},_command:function(t,e,i){if(!this._startMerge)return this._service.invokeCommand(t,e,i);var r=t.split(":"),n={method:r[0].split("=")[1],data:unescape(r[1])};this._methods.push(n)},_addEmptyLine:function(t,e){this._command("method=AddLine:1"),e||(e=15),this._command("method=AddCell:,"+t+","+(e-7)+", 0, 1, 0, 1, 0, 1, 0, 1, 1, -1, 1, 1"),this._command("method=EndLine")},_addMultiDetailHeader:function(t,e,i){for(var r=i.rowCount,n=i.colCount,s=i.rowColCount,o=i.rowsCells,a=0;a<r;a++){h=o[a];this._command("method=AddLine:"+n);for(var l=0,c=0;c<n;c++){if(_=h[c]){var d=0;if(d=c==n-1?this.get_pageWidth()-l:Math.round(_.width*t),l+=d,this._expandItem&&a>0&&_.text==this._expandItem.groupCaption){this.get_expandedHeaderInfo()[_.text]=d,_.text="@"+_.text}this._command("method=AddCell:"+escape(_.text)+","+d+",9, 1, 1, 1, 1, 1, 1, 1, 1, 1, -1, "+this._toReportHAlign(_.align)+", 1"),this._command("method=SetCellFont:宋体, 9, 1,0, 0, 0")}}this._command("method=EndLine")}for(var p=this.get_grid(),a=0;a<r;a++){var h=o[a],u=s[a],c=0;for(this._hasColumnExpand()&&(u+=c=this._getMultiDetailHeaderRowStartIndex(a,p));c<u;c++){var _=h[c];if(_){var m=_.rowIndex,g=_.colIndex,f=_.rowSpan,y=_.colSpan;if(f>1||y>1){var v=e+m,S=g,P=e+m+f-1,C=g+y-1;this._command("method=MergeCell:"+v+","+S+","+P+","+C)}}}}},_addHeaderFooter:function(t,e,i){var r=0,n=!0,s=Math.round(t/4),o=e.length;if(1==o)return this._command("method=AddLine:2"),this._addHeaderFooterField(e[0].name,e[0].name,2*s),this._command("method=EndLine"),1;for(var a=0;a<o;a++){var l=e[a];if(!(this._expandItem&&this._expandItem.expandNameList&&(Array.indexOf(this._expandItem.expandNameList,l.name)>=0||this._expandItem.groupCaption==l.name))){a%2==0&&(r++,this._command("method=AddLine:4"),n=!1);for(var c=this._getFieldName(l.name),d=0,p=0,h=i.length;p<h;p++)i[p]==c&&d++;if(Array.add(i,c),d>=99)throw Error.create("截短后主表重名字段“"+c+"”不能超过99个");d>0&&(c+=d+1),this._addHeaderFooterField(l.name,c,s),a%2==1&&(this._command("method=EndLine"),n=!0)}}return n||(this._command("method=AddCell:,"+s+",9, 1, 1, 1, 1, 1, 1, 1, 1, 1, -1, 0, 1"),this._command("method=AddCell:,"+s+",9, 1, 1, 1, 1, 1, 1, 1, 1, 1, -1, 0, 1"),this._command("method=EndLine")),r},_addHeaderFooterField:function(t,e,i){this._command("method=AddCell:"+escape(t)+","+i+",9, 1, 1, 1, 1, 1, 1, 1, 1, 1, -1, 0, 1"),this._command("method=SetCellFont:宋体, 9, 1,0, 0, 0"),this._command("method=AddCell:"+escape("@"+e)+","+i+",9, 1, 1, 1, 1, 1, 1, 1, 1, 1, -1, 0, 1")},_addSingleDetailHeader:function(t,e,i,r,n){this._command("method=AddLine:"+i);for(var s=0,o=0;o<e;o++){var a=r[o];if(!a.hidden){var l=a.caption;l||(l=a.name);var c=$export.findMasterField(n,"_"+a.name);c&&c.value&&(l="@_"+a.name);var d=0;s+=d=o==e-1?this.get_pageWidth()-s:Math.round(a.columnWidth*t);this._command("method=AddCell:"+escape(l)+","+d+",9, 1, 1, 1, 1, 1, 1, 1, 1, 1, -1, "+this._toReportHAlign(a.headerAlign)+", 1"),this._command("method=SetCellFont:宋体, 9, 1,0, 0, 0")}}this._command("method=EndLine")}},_Z_100.registerClass("_Z_100",_Z_99),Sys.UI.Actions.ReportPrintService=function(){Sys.UI.Actions.ReportPrintService.initializeBase(this),this._servicePrint=!0,this._service=_Z_4.create(this),this._showExport=$settings.CrabaServer&&$settings.ShowExportButton},Sys.UI.Actions.ReportPrintService.prototype={get_port:function(){return this._service.get_port()},set_port:function(t){this._service.set_port(t)},_createStylePopupMenu:function(t,e){var i=[],r=this.getStyleNames();if(r&&0!=r.split(",").length&&!r.startsWith("<HTML")){var n=this._styleIndex=this.get_styleIndex(),s=-1===r.indexOf(":");-1==n&&(n=this._styleIndex=0),r=r.split(",");for(var o=0;o<r.length;o++){var a=r[o].split(":"),l="",c=0;1===a.length?(l=a[0],s&&(c=o)):(c=a[0],l=a[1]);var d={text:l,param:c};c==n&&(d.icon="aicon-check");var p={properties:d,events:{click:$createDelegate(this,this._clickStyle)}};i.push(p)}this._makeStyleMenu(i,e)}else this._makeStyleMenu(i,e)},_makeStyleMenu:function(t,e){var i=this.get_form();this._clearStyleMenu(),0==t.length&&(t=[{properties:{text:"(无)",param:-1},events:{click:$createDelegate(this,this._clickStyle)}}]);(this._styleMenu=Sys.UI.Controls.Menu.create(i,{id:this._styleMenuId,items:t})).itemCount=t.length},_clickStyle:function(t,e){var i=t.get_param();-1!=i&&this._styleIndex!=i&&(this._checkStyleItemEnabled(t),this._styleIndex=i,this.set_styleIndex(i),this._popupMenuID&&e.cancel())},_setTemplateCommand:function(){this._command("set=TemplateName:"+escape(this.get_reportName()),null)},_startMergeMethods:function(){this.isSupportMergePrint()&&(this._methods=[],this._startMerge=!0)},_postMergeMethods:function(){this._startMerge&&(this._startMerge=!1,this._command("method=CreateStyle",this._methods),this._methods=null)},get_service:function(){return this._service},getVersion:function(){if($print.version)return $print.version;var t=this._service.invokeCommand("get=Version");return/\d+\.\d+\.\d+\.\d+/.test(t)&&($print.version=t),$print.version},getClientInfo:function(t){return this._command("method=GetClientInfo",t)},getStyleNames:function(){return this._setTemplateCommand(),this._command("get=StyleNames")},get_styleIndex:function(){return this._setTemplateCommand(),this._command("get=StyleIndex")},set_styleIndex:function(t){return this._setTemplateCommand(),this._command("set=StyleIndex:"+t)},get_printTimes:function(){return this._command("get=PrintTimes")},get_exportTimes:function(){return this._command("get=ExportTimes")},_execute:function(t,e){var i=!1;t&&t.get_enabled&&(i=t.get_enabled()),i&&this._setEnabled(t,!1);var r=null;try{if(!1===this._executeReport(t,e))return}catch(n){r=!0,n.message?$common.alert(n.message):"string"==typeof n&&$common.alert(n)}finally{!this.get_ajaxMode()&&i&&this._setEnabled(t,!0)}if(r)throw Error.abort();Object.isUndefinedOrNull(e)||this.doAfterExecute()},_executeReport:function(t,e){if(this._service.isPrinting(null,!0))return!1;try{this._service.beginPrint();var i=this.getReportData();if(!i)return!1;if(this.get_ajaxMode()){var r=this.get_grid();r.findPager()&&this._ajaxShowReport(t,r,i)}else this._showReport(i,e)}catch(n){throw n}finally{this._service.endPrint()}return!0},_ajaxShowReport:function(t,e,i){$common.showLoading(e.get_element());var r=e.get_pager();r.get_service().GetPagerData(r.get_id(),null,null,null,0,r.get_itemCount(),$createDelegate(this,function(e){i.detailData=e,$common.hideLoading(),this._showReport(i),this._setEnabled(t,!0),this._command("method=EndPrint")}),$createDelegate(this,function(e){$common.hideLoading(),$common.alert(Sys.Net.WebServiceProxy.formatWebServiceFailedServerError(e.get_message())),this._setEnabled(t,!0),this._command("method=EndPrint")}))},_showReport:function(t,e){this._command("set=DefaultUseNewDesignForm:"+this._defaultUseNewDesignForm),this._allowPrint?this._command("set=AllowPrint:"+!0):"undefined"!=typeof $settings.reportPrintButtonVisible&&this._command("set=AllowPrint:"+$settings.reportPrintButtonVisible),this._allowExport&&this._command("set=AllowExport:"+!0);var i=0==this._command("method=LoadDataFromCarpa3",t);if(i&&this.get_createReport())try{this._startMergeMethods(),this._doCreateReport(t)}catch(r){throw r}finally{this._postMergeMethods(),this.get_printTimesLimit()>-1&&(this._command("set=PrintTimesLimit:"+this.get_printTimesLimit()),this._printTimesLimit=-1)}i&&($settings.CPrintExecuteDirectPreview||e==Sys.UI.Actions.PrintType.design?this._command("method=Design"):e==Sys.UI.Actions.PrintType.print||this.get_directPrint()?this._command("method=PrintWithoutDialog"):e==Sys.UI.Actions.PrintType.preview?this._command("method=Preview"):e==Sys.UI.Actions.PrintType["export"]?this._command("method=ExportData"):e==Sys.UI.Actions.PrintType.style?this._command("method=StyleManage"):!e&&this.get_usePrintPopup()?(this.showPrintMenu(),$cache.set("isPrintMenu",!0)):this._command("method=Execute"))},beginBatchPrint:function(){if(this._service.isPrinting())throw Error.abort("批量打印已启动,禁止连续操作");try{this._service.beginPrint();var t=!0;try{t=0==this._command("method=BeginBatchPrint")}catch(e){this._throwReportError(e)}if(!t)throw Error.abort();this._batchPrint=!0,this._lastDataObj=null}finally{this._service.endPrint()}},batchPrint:function(){if(!this._batchPrint)throw Error.abort("还没有调用 beginBatchPrint()");var t=this.getReportData(),e=!0;try{e=0==this._command("method=LoadDataFromCarpa3",t)}catch(i){this._throwReportError(i)}if(!e)throw Error.abort();this._lastDataObj=t},endBatchPrint:function(){if(!this._batchPrint)throw Error.abort("还没有调用 beginBatchPrint()");var t=this._lastDataObj;this._batchPrint=!1,this._lastDataObj=null;try{t&&(this._doCreateReport(t),this._command("set=TemplateName:"+escape(t.reportName)),this._command("method=EndBatchPrint"))}catch(e){this._throwReportError(e)}finally{this._command("method=EndPrint")}},get_isGetAll:function(){return!1}},Sys.UI.Actions.ReportPrintService.registerClass("Sys.UI.Actions.ReportPrintService",_Z_100),_Z_5=function(t,e,i){_Z_5.initializeBase(this),this._request=null,this._target=t,this._isLocalPrint=e,this._deviceType=i,this._queryStr="",this._exePath="D:\\Grasp\\TeemoClient\\Teemo.Client.exe",this._form=t?t.get_form():null},_Z_5.prototype={get_path:function(t){if(!this._isLocalPrint){var e=$print.getServerUrl()+"?method="+t+"&accessToken="+$common.__cloudPrintAccessToken;return this._deviceType&&(e+="&device="+this._deviceType),e}return _Z_5.callBaseMethod(this,"get_path")},_createUrl:function(t,e){return this._isLocalPrint?t+e:t},_invokeMethod:function(t,e,i,r){try{return this._invoke(t,e,i,this._reqFailed,!1)}catch(n){$print._showPrintError(n.message,t,e,r,this)}},getVersion:function(t){return this._invokeMethod("GetVersion",{},!1,t)},executePrint:function(t,e){var i=t.params.data,r=i.detailDataUrl,n=i.masterDetailKeyFields?i.masterDetailKeyFields.split(","):[];if(i.dataGroupField&&n.push(i.dataGroupField),this._otherFields){var s=this._otherFields.split(",");Array.addRange(n,s)}var o=this,a=this._target;$print._pullData(r,t,function(){a._doGetPrintData(t)&&o._invokeMethod("ExecutePrint",t,e)},0,n)},getStyleNames:function(t,e){this._invokeMethod("ExecutePrint",{tokenType:0,printMode:this._target.get_printMode(),params:{printType:"reportv10",templateName:t,appName:$settings.CloudPrintAppName,get:"StyleNames"}},$createDelegate(this,function(t){var i=this._dealStyleResult(t);e(i)}))},_dealStyleResult:function(t){var e=[],i=!1;if(t&&t.success&&t.data)for(var r=JSON.parse(t.data),n=0;n<r.params.results.length;n++){var s=r.params.results[n];if("get=StyleNames"==s.cmd){if(!s.result)continue;for(var o=s.result.split(","),a=0;a<o.length;a++)"基本样式"===o[a]&&(i=!0),e.push({styleName:o[a],styleFomatType:_Z_45.printer})}}return i||0!=e.length||e.push({styleName:"(无)",styleFomatType:_Z_45.printer}),e},_reqFailed:function(t,e,i){var r="<p>服务形式打印出错啦,错误详情如下:</p><p>调用接口:<font color=blue>"+i+"</font></p><p>出错信息:<font color=red>"+t+"</font></p><p>如果重复出现类似问题,请您联系我们客服.</p>";$app.showError(Sys.ErrorType.cloudPrint,r,!0,null,{iconVisible:!1})}},_Z_5.registerClass("_Z_5",_Z_4),_Z_5.create=function(t,e,i){var r=new _Z_5(t,e,i);return r.set_enableShowWaiting(!1),t||(r._queryStr=""),r},Sys.UI.Actions.ReportPrintClound=function(){Sys.UI.Actions.ReportPrintClound.initializeBase(this),this._cloundService=!0,this._pageSetting=null,this._styleIndex=0,this._styleNames=[],this._printTimes=0,this._exportTimes=0,this._pluginName=""},Sys.UI.Actions.ReportPrintClound.prototype={dispose:function(){Sys.UI.Actions.ReportPrintClound.callBaseMethod(this,"dispose"),this._oldPrinter&&(this._oldPrinter.dispose(),this._oldPrinter=null)},doFormInit:function(){Sys.UI.Actions.ReportPrintClound.callBaseMethod(this,"doFormInit"),this._enabledPDF=$cache.get(this._getCacheId("pdf"),{defaultValue:this.get_enabledPDF()}),this._initStyleName()},_initStyleName:function(){this._styleName=$cache.get(this._getCacheId("style"),{defaultValue:"基本样式"})},set_reportName:function(t){Sys.UI.Actions.ReportPrintClound.callBaseMethod(this,"set_reportName",arguments),this.get_isInitialized()&&this._initStyleName()},set_styleName:function(t){this._styleName=t,this._styleInfo={},this._isSetStyle=!0},print:function(){this.directPrint()},get_port:function(){return this._getLocalService().get_port()},set_port:function(t){this._getLocalService().set_port(t)},setPageSetting:function(t){this._pageSetting=t},__doPrint:function(t){this.execute(t,Sys.UI.Actions.PrintType.print)},__doPreview:function(t){this.execute(t,Sys.UI.Actions.PrintType.preview)},__doDesign:function(t){this.execute(t,Sys.UI.Actions.PrintType.design)},__doExport:function(t){if(this._isOldClient)return this._initOldPrinter(),void this._oldPrinter._export(t);this.execute(t,Sys.UI.Actions.PrintType["export"])},__doStyleManage:function(t){this.execute(t,Sys.UI.Actions.PrintType.style)},__doEndPrint:function(t){$cache.set("isPrintMenu",!1),$print.LastPrint.doPopupHide()},_internalExportXls:function(){$settings.UseServiceExport||!$settings.CrabaServer?this._doPrint(!1,null,"excel"):Sys.UI.Actions.ReportPrintClound.callBaseMethod(this,"_internalExportXls")},_getCacheId:function(t){return t+(this._reportName||"styleNameCache")},get_printTimes:function(){return this._printTimes},get_exportTimes:function(){return this._exportTimes},isSupportPrintTimes:function(){return!0},_execute:function(t,e){if(this._printTimes=0,this._exportTimes=0,this._saveAction=e,e!=Sys.UI.Actions.PrintType["export"]){var i=this.get_printMode();i!==_Z_28.local||this.get_enabledPDF()?$common.__cloudPrintServiceUrl&&$common.__cloudPrintAccessToken?this.get_enabledPDF()?this._doPrint(!1,null,"pdf"):i!==_Z_28.remote||e!==Sys.UI.Actions.PrintType.print?this._doLocalPrint(t,e):this._doRemotePrint(t):$app.showError(Sys.ErrorType.cloudPrint,Sys.Res.printTips.noService,!0,null,{iconVisible:!1}):this._doLocalPrint(t,e)}else this._goExport(t)},_doRemotePrint:function(t){this._directPrint=0;var e=new Sys.UI.Form(t);e.PanelContainer=this,e.add_ok($createDelegate(this,this._executeReport)),e.add_close($createDelegate(this,this._clientClose)),e.showModal($common.getSysUIBaseURI(this.get_form())+"Print/ClientSelector.gspx")},_doLocalPrint:function(t,e){var i=!1,r=this.get_printMode()==_Z_28.remote||this.get_printMode()==_Z_28.remoteAndManageStyle,n=!(this._isNormalButton&&Object.isUndefinedOrNull(e));try{i=this.isNewClient(n)}catch(s){return void(n||this.showPrintMenu())}if(n||!this._isOldClient){if(i)return e?(this._printTimes=1,void this._doPrint(!0)):void this.showPrintMenu();if(r||$settings.ReportConfig.MustNewClient&&this._isOldClient)return this.doAfterExecute(),void $common.alert(String.format(Sys.Res.printTips.old,$print._getDownloadUrl()));console.log("老客户端打印"),this._initOldPrinter();this._oldPrinter._execute(t,e)}else this.showPrintMenu()},_initOldPrinter:function(){var t=["gridId","reportName","tab","dataUrl","reportMode","masterFields","masterDetailKeyFields","showMasterFields","detailFields","createReport","allowPrint","allowExport","defaultUseNewDesignForm","useService","cookie"],e=this._oldPrinter;this._oldPrinter||((e=this._oldPrinter=new Sys.UI.Actions.ReportPrintService).set_idPart(this.get_idPart()),e.set_form(this.get_form()),e._events=this._events,e.initialize());for(var i=0,r=t.length;i<r;i++){var n=t[i],s=e["set_"+n],o=this["get_"+n].apply(this);s.apply(e,[o])}},_doPrint:function(t,e,i){var r=this._getCloudData(e,t,i);if(!r)return this.doAfterExecute();this._getPrintService(t,i).executePrint(r,$createDelegate(this,this._doPrintCompleted))},_clientClose:function(t,e){this.doAfterExecute("remoteCancel")},_doPrintCompleted:function(t){return t?t.success?("pdf"===t.type?(this._printTimes=1,$common.openwin(t.base+"/render?key="+t.key)):"excel"===t.type&&(this._downloadExcel(t),this._exportTimes=1),void this.doAfterExecute()):(this.doAfterExecute(),void $common.alert(t.msg||t.Message||String.format(Sys.Res.printTips.apiError,""))):(this.doAfterExecute(),void $common.alert(String.format(Sys.Res.printTips.apiError,"")))},_downloadExcel:function(t){var e=this,i=t.base+"/state?key="+t.key+"&t="+(new Date).getTime(),r=$common.showProgress({className:"ValueFloat",opacity:50});r.set_value(Math.min(r.get_value()+10,95)),r.set_text("导出进度"),$common.ajax({url:i,type:"GET",error:function(){$common.hideProgress(),$common.showError("导出失败")},success:function(i,n){if(!i.success)return $common.hideProgress(),void $common.alert(i.msg);if(202!==i.status){var s=Math.floor(11*Math.random())+5;return r.set_value(Math.min(r.get_value()+s,95)),void setTimeout(function(){e._downloadExcel(t)},500)}r.set_value(98),r.set_text("下载进度..");var o=(new Date)._format("yyyyMMddHHmmss"),a=e.get_reportName(!1)+"_"+o+".xlsx",l=t.base+"/file?key="+t.key;$common.ajax({type:"get",complete:function(){$common.hideProgress()},responseType:"blob",fileName:a,url:l})}})},_isInstalledOk:function(t){if($settings.AllPrintUseSocket)return!0;if(this.get_enabledPDF()||this.get_printMode()==_Z_28.remote||this.get_printMode()==_Z_28.remoteAndManageStyle)return!0;try{this.isNewClient(t)}catch(e){if(!1===t)return!1;throw e}return!0},getVersion:function(t){return t&&this._version?this._version:this._version=this._getLocalService().getVersion().data},getVersionResult:function(t){return this._getLocalService().getVersion(t)},isNewClient:function(t){if($settings.AllPrintUseSocket)return!0;var e=this.getVersionResult(t);if(!e||"object"!=typeof e)return this._isOldClient=!0,!1;this._isOldClient=!1;var i=this._version=e.data;return $print._compareVersion(i,"1.1.0.8")>=0},_getPrintService:function(t,e){return _Z_5.create(this,t,e)},_getLocalService:function(){return this._localService?this._localService:this._localService=_Z_5.create(this,!0)},_executeReport:function(t){this._doPrint(!1,t.result)},get_reportName:function(){return this._reportName},get_isGetAll:function(){return this._saveAction!==Sys.UI.Actions.PrintType["export"]&&$settings.PrintAllFields},_getCloudData:function(t,e,i){var r=this.getReportData();return r?(this._pageSetting&&(r.pageSetting=this._pageSetting),this._cloudRequestData(r,t)):null},_makeStyle:function(t){if(this._isSetStyle)delete this._isSetStyle;else if(!this._bizStyleId){t||this._saveAction===Sys.UI.Actions.PrintType.style||(this._styleNames=this.getStyleNames());var e=this._isExistStyleName(this._styleName);!e&&t&&this._saveAction!==Sys.UI.Actions.PrintType.style&&(this._styleNames=this.getStyleNames(),e=this._isExistStyleName(this._styleName)),e?this._styleInfo=e:(this._styleName="基本样式",this._styleInfo={})}},_cloudRequestData:function(t,e){var i=this.get_printMode()==_Z_28.localAndManageStyle,r=!this.get_enabledPDF()&&(this.get_printMode()==_Z_28.local||i),n=this._saveAction!=Sys.UI.Actions.PrintType["export"];n&&this._makeStyle(r);var s=$common.__cloudPrintAccessToken;r&&!i&&n&&(s="");var o={};this.doGetReportName(o,!0);var a=[];n&&(a=this._createStyleMethods(t));var l={resultMode:1,tokenType:0,accessToken:s,clientTokenList:e||[],printMode:this.get_printMode(),serverUrl:$print.getServerUrl(),pluginName:this._pluginName,params:{printType:"reportv10",printerName:e?"":this._printerName,appName:$settings.CloudPrintAppName,templateName:this._customStyle?this._styleInfo.templateName:t?t.reportName:this.get_reportName(),styleName:this._customStyle?this._styleInfo.styleName:this._styleName,bizStyleId:this._customStyle?this._styleInfo.styleId:this._bizStyleId||"",defaultUseNewDesignForm:this.get_defaultUseNewDesignForm(),printTimesLimt:this.get_printTimesLimit(),allowExport:this.get_allowExport(),allowPrint:this.get_allowPrint(),method:this._getMethodName(this._saveAction),methodParams:"",createStyleAction:a,data:t,styleInfo:r?{}:this._styleInfo,callBack:o,copies:this._copies}};return $debug.log(l),l},_createStyleMethods:function(t){try{this._methods=[],this._startMerge=!0,this._doCreateReport(t)}catch(e){throw e}finally{this._startMerge=!1}return this._methods},_endReport:function(){this._command("method=SetReplace:"+(this._createStyle?1:0)),this._command("method=EndReport")},_isExistStyleName:function(t){if(!this._styleNames||0===this._styleNames.length)return!1;for(var e=0;e<this._styleNames.length;e++){var i=this._styleNames[e];if(i.styleName===t)return i}return!1},_getMethodName:function(t){switch(t){case Sys.UI.Actions.PrintType.print:return"PrintWithoutDialog";case Sys.UI.Actions.PrintType.design:return"Design";case Sys.UI.Actions.PrintType.preview:return"Preview";case Sys.UI.Actions.PrintType["export"]:return"ExportData";case Sys.UI.Actions.PrintType.style:return"StyleManage";default:return"Execute"}},_getLocalStyleNames:function(t){var e=this.get_printMode();if(!this.get_enabledPDF()&&(e==_Z_28.local||e==_Z_28.localAndManageStyle)&&this.isNewClient()){return this._getLocalService().getStyleNames(this._reportName,t)}return!!this._isOldClient&&t(null)},getStyleNames:function(t){t||(t=function(t){return t});var e=this.get_events().getHandler("getStyleNames");if(e){this._customStyle=!0;var i=new _Z_274(this);return e(this,i),t(i.get_styleNames())}if(!1===this._getLocalStyleNames(t)){var r=this.get_printOutDevice()===_Z_29.pdf||this.get_enabledPDF()?_Z_45.pdf:_Z_45.printer,n=$print.getPrintStyles(this._reportName,r,_Z_44.report,this);if(Object.isUndefinedOrNull(n))return this._getLocalStyleNames(t);var s=!1;if(n instanceof Array)for(var o=0;o<n.length;o++)"基本样式"===n[o].styleName&&(s=!0);else n=[];return s||0!=n.length||Array.insert(n,0,{templateName:"",styleName:"(无)",styleFomatType:r}),t(n)}},_export:function(t,e){this._menu.hide(),this._saveAction=Sys.UI.Actions.PrintType["export"],this.doBeforeExecute(Sys.UI.Actions.PrintType["export"])||this._goExport(t)},_goExport:function(t){if(this.get_enabledPDF()||this._isInstalledOk(!0),this._isOldClient)return this._initOldPrinter(),void this._oldPrinter._execute(t,this._saveAction);var e=!$settings.UseServiceExport&&!this.get_enabledPDF()&&!this._printer;this._doPrint(e,null,"excel")},_styleManage:function(t,e){this._menu.hide(),this._beforeExecute(null,Sys.UI.Actions.PrintType.style)},_makePrintItems:function(t){var t=!this.get_enabledPDF(),e=Sys.UI.Actions.ReportPrintClound.callBaseMethod(this,"_makePrintItems",[t]);return e.push({id:"qypdf",properties:{visible:!this._disabledPDF,text:$craba.getLangPro(Sys.Res.printTips.pdf)},events:{click:$createDelegate(this,this._clickEnabledPDF)}}),this.get_enabledPDF()&&(e[e.length-1].properties.icon="aicon-check"),e},_clickEnabledPDF:function(t,e){this._enabledPDF=!this.get_enabledPDF();var i=null,r=this._popupMenuID,n=r+"_dyyl",s=r+"_dysj",o=r+"_ysgl",a=this.get_form();a[n].set_visible(!this.get_enabledPDF()),a[s].set_visible(!this.get_enabledPDF()),a[o].set_visible(!this.get_enabledPDF()),this.get_enabledPDF()&&(i="aicon-check"),t.setIcon(i),$cache.set(this._getCacheId("pdf"),this.get_enabledPDF()),this._createStyleMenu(),e.cancel();var l=this._menu,c=l.btn.get_element(),d=$dom.getBounds(c);l.popupAt(d.x,d.y+d.height,d.width,d.height)},_createStylePopupMenu:function(t){var e=$createDelegate(this,function(e){this._styleNames=e;var i=this.get_printMode(),r=!this.get_enabledPDF()&&i!=_Z_28.remoteAndManageStyle&&i!=_Z_28.remote;if(this._isOldClient&&r)return this._clearStyleMenu(),this._initOldPrinter(),void this._oldPrinter._createStylePopupMenu(t);this._oldPrinter&&this._oldPrinter._clearStyleMenu(),this._styleIndex=0,this._clearStyleMenu();for(var n=null,s=[],o=0;o<e.length;o++){var a=e[o],l=this._customStyle?a.templateName:a.styleName,c={properties:{text:l,param:{index:o,info:a}},events:{click:$createDelegate(this,this._clickStyle)}};l===this._styleName&&(this._styleIndex=o,this._styleInfo=a,n=c),s.push(c)}if(!n){if(0==e.length){c={properties:{text:"(无)"}};this._styleName="(无)",this._styleInfo={},s.push(c),n=s[0]}else{n=s[0];"(无)"==(a=this._styleInfo=e[0]).styleName&&(a.styleName="基本样式"),this._styleName=a.styleName}$cache.set(this._getCacheId("style"),this._styleName)}n.properties.icon="aicon-check",t.set_visible(!0);var d=this.get_form();(this._styleMenu=Sys.UI.Controls.Menu.create(d,{id:this._styleMenuId,items:s})).itemCount=s.length});this.getStyleNames(e)},_clickStyle:function(t,e){var i=t.get_param().index;-1!=i&&this._styleIndex!=i&&(this._styleName=t.get_text(),$cache.set(this._getCacheId("style"),this._styleName),this._styleInfo=t.get_param().style,this._checkStyleItemEnabled(t),this._styleIndex=i,e.cancel())}},Sys.UI.Actions.ReportPrintClound.registerClass("Sys.UI.Actions.ReportPrintClound",_Z_100),Sys.UI.Actions.ReportPrintWeb=function(){Sys.UI.Actions.ReportPrintWeb.initializeBase(this),this._printer=new _Z_282(this),this._printer._printType="reportv10"},Sys.UI.Actions.ReportPrintWeb.prototype={checkInstall:function(t){return!!t||Sys.UI.Actions.ReportPrintWeb.callBaseMethod(this,"checkInstall",[t])},print:function(){this.directPrint()},_execute:function(t,e){this._saveAction=e,e==Sys.UI.Actions.PrintType.print?(this._printer._checkPrint(),this._printer.exec("Print")):e==Sys.UI.Actions.PrintType.preview?(this._printer._checkPrint(),this._printer.exec("Preview"),this.doAfterExecute()):e==Sys.UI.Actions.PrintType.design?(this._printer._checkPrint(),this._printer.exec("Design"),this.doAfterExecute()):e==Sys.UI.Actions.PrintType["export"]&&(this._doPrint(!1,null,"excel"),this.doAfterExecute())},get_data:function(){var t=this.getReportData();return this.convertNewData(t),this._styleName=t.reportName,this._templateName=t.reportName,t},_callBackParams:function(t){var e={};this.doGetReportName(e,!0)&&(t.callBack=e)},convertNewData:function(t){if(t.detailData1)t.masterData=t.detailData,t.detailData=t.detailData1,t.masterFields=t.detailFields,t.detailFields=t.detailFields1,delete t.detailFields1,delete t.detailData1;else if(t.masterData)t.masterFields&&Array.forEach(t.masterFields,function(t){t.caption=t.name});else{t.masterData={itemCount:1,itemList:[]};var e={};t.masterData.itemList.push(e),Array.forEach(t.masterFields,function(t){t.caption=t.name,e[t.dataField]=t.value})}}},Sys.UI.Actions.ReportPrintWeb.registerClass("Sys.UI.Actions.ReportPrintWeb",Sys.UI.Actions.ReportPrintClound),_Z_281=function(t){_Z_281.initializeBase(this,[t])},_Z_281.prototype={initialize:function(){_Z_281.callBaseMethod(this,"initialize"),$print._checkLoadTeemoJs(this)},checkInstall:function(){return $print.checkRun()},set_masterFields:function(t){this._masterFields=t,Array.forEach(t,function(t){t.name||(t.name=t.caption)})},set_detailFields:function(t){this._detailFields=t,Array.forEach(t,function(t){t.name||(t.name=t.caption)})}},_Z_281.registerClass("_Z_281",Sys.UI.Actions.PrintBase),_Z_282=function(t){this._target=t},_Z_282.prototype={_checkPrint:function(){$print._checkTeemoJs(),$print._checkToken("Web打印",!0),this._checkBizStyleId()},_checkBizStyleId:function(){$common.checkTips(!this._target._bizStyleId,"调用web设计器前业务必须设置BizStyleId")},_getProp:function(t){return this._target[t]},_setProp:function(t,e){this._target[t]=e},_getPrintData:function(t){var e=this.get_data(),i=this._templateName||this._getProp("_templateName"),r={printType:this._printType,appName:$settings.CloudPrintAppName,printerName:this._getProp("_printerName"),method:t,templateName:this._styleName||this._getProp("_styleName")||i,styleName:i,bizStyleId:this._getProp("_bizStyleId")||"",copies:this._getProp("_copies")||1,styleInfo:{},dataVersion:1,data:e};"Print"==t&&this._target._callBackParams&&this._target._callBackParams(r);var n=this._getProp("_pageSize");n&&(r.pageWidth=n.width,r.pageHeight=n.height);var s={resultMode:1,tokenType:0,clientTokenList:$print._getRemoteClients(),accessToken:$common.__cloudPrintAccessToken,printMode:this._getProp("_printMode"),serverUrl:$print.getServerUrl(),pluginName:"tmprint",params:r};return this._target._sysStyle&&(s.settingOption={isSys:!0}),Object.copyTo(this._target._printSetting,s),s},get_data:function(){return this._target.get_data()},_checkRemotePrint:function(t,e){if("Print"==t&&$print.isRemotePrint(this._target)&&!$print._getRemoteClients()){var e=$createDelegate(this,function(t){this.exec("Print")}),i={title:"授权提示",buttons:["立即授权","下次再说"],handler:function(t){1!=t&&$print.showRemoteConfig(e)}};$common.checkError(!0,"第一次远程打印需要先授权打印机哟!",i)}},exec:function(t){var e=function(){var e=this._getPrintData(t),i=e.params.data,r=i.masterDetailKeyFields?i.masterDetailKeyFields.split(","):[];if(i.dataGroupField&&r.push(i.dataGroupField),this._otherFields){var n=this._otherFields.split(",");Array.addRange(r,n)}var s=this,o=this._target;$print._pullData(i.detailDataUrl,e,function(){o._doGetPrintData&&!o._doGetPrintData(e)||s._invokeMethod(t,e)},0,r)};this._checkRemotePrint(t,e)||e.apply(this)},doRequestPrint:function(t,e){if("Print"!=t)return!1;if(console.log(e),$print.isRemotePrint(this._target))$print._request("ExecutePrint",e);else{var i=$print._localRequest(e,"Web打印");$print._getResult(i)}return this._target.doAfterExecute&&this._target.doAfterExecute.apply(this._target),!0},_invokeMethod:function(t,e){if(!this.doRequestPrint(t,e)){var i="Design"==t?"打印设计":"打印预览";$TeemoApp.form&&$TeemoApp.form.close(!0);var r=$common.getMainPanel().showPage(null,i),n="__webdesigndom";r._contentElement.innerText="",r._contentElement.id=n,r._allowClose=!1,e.designId=n,e.hiddenQuitButton=!0,r.add_closed(function(){$TeemoApp.isModify=!1,$TeemoApp.form=null,window.isTeemoPrinting=!1}),r.add_close(function(t,e){$TeemoApp.isModify&&(e.set_cancel(!0),$msg.confirm("有更新未保存,请确认是否关闭?",function(t){t&&r.close(!0)}))}),r._id=n,r.addHotkey({keyCode:Sys.UI.Key.esc},r.doCancel,r),$app.addForm(r),$TeemoApp.form=r,$TeemoApp.ShowPage(e),window.isTeemoPrinting=!1}}},_Z_282.registerClass("_Z_282",Sys.UI.Control),_Z_6=function(t,e){_Z_6.initializeBase(this),this._request=null,this._isLocalPrint=e,this._target=t,this._form=t.get_form(),this._queryStr="",this._exePath="D:\\Grasp\\TeemoClient\\Teemo.Client.exe"},_Z_6.prototype={get_path:function(){return this._isLocalPrint?_Z_6.callBaseMethod(this,"get_path"):$print.getServerUrl()+"?method=ExecutePrint&accessToken="+$common.__cloudPrintAccessToken},_createUrl:function(t,e){return this._isLocalPrint?t+e:t},_invokeMethod:function(t,e,i){try{return this._invoke("ExecutePrint",t,e,this._reqFailed,!1)}catch(r){$print._showPrintError(r.message,"ExecutePrint",t,i,this)}},_reqFailed:function(t,e,i){var r="云打印出错啦,错误详情如下:&nbsp;&nbsp;&nbsp;<br/><br/>调用接口:<font color=blue>"+i+"</font><br/><br/>出错信息:<font color=red>"+t+"</font><br/><br/>如果重复出现类似问题,请您联系我们客服.";$app.showError(Sys.ErrorType.cloudPrint,r,!0,null,{iconVisible:!1})}},_Z_6.registerClass("_Z_6",_Z_4),_Z_6.create=function(t,e){var i=new _Z_6(t,e);return i.set_enableShowWaiting(!1),i},_Z_7=function(t,e){this._service=_Z_6.create(t,e),this.version="",this.printType="",this._target=t},_Z_7.prototype={getService:function(){return this._service},_getProp:function(t){return this._target._target[t]},get_port:function(){return this.getService().get_port()},invoke:function(t,e,i){return this.getService()._invokeMethod(t,e,i)},invokeParams:function(t,e,i,r){var n={resultMode:1,tokenType:0,clientTokenList:e||[],bizStyleId:this._getProp("_bizStyleId")||"",printMode:this._getProp("_printMode"),clientTagName:e?e.clientTagName:"",accessToken:this.getAccessToken(),serverUrl:$print.getServerUrl(),requestor:"craba",pluginName:this._getProp("_useWebTool")?"tmprint":"",params:t};return this.invoke(n,i,r)},invokeSync:function(t,e,i){var r=this.invokeParams(t,e,!1);if(!r.success)throw Error.abort(r.msg);return $print._getResult(r,i||1)},getVersion:function(t){var e=this.invoke({params:{printType:this.printType,get:"Version"}},!1,t);return this.version=$print._getResult(e),this.setVersion(),this.version},getNewVersion:function(){try{return this.getService()._invoke("GetVersion",{},!1)}catch(t){return 0}},setVersion:function(t){},getAccessToken:function(){return this._getProp("_printMode")===_Z_28.local?"":$common.__cloudPrintAccessToken},getAppName:function(){return $settings.CloudPrintAppName},_getDataService:function(){var t=this._dataService;return t||(t=this._dataService=_Z_2.create(this._target.get_form())),t},_getStyleInfo:function(t,e,i){if(this._getProp("_bizStyleId"))return{};var r=this._getProp("_printMode");if(r==_Z_28.local||r==_Z_28.localAndManageStyle)return{};var n=_Z_45.printer,s=$print.getPrintStyles(e,n,i,this._target),o={};if(s instanceof Array&&s.length>0)for(var a=0,l=s.length;a<l;a++){var c=s[a];if(c.styleName==e){o=c;break}}return o}},_Z_7.registerClass("_Z_7"),_Z_8=function(t,e){this._newClientVersion="1.1.0.8",this.serviceImplement=e,_Z_8.initializeBase(this,[t]),this._target=t,this._printMode=$settings.ReportConfig.PrintMode,this.printMethod="Print",this.dependPrintService=!0},_Z_8.prototype={_getProp:function(t){return this._target[t]},_checkError:function(){this.checkInstall(!0)||$common.checkError(!0,String.format(Sys.Res.printTips.old,$print._getDownloadUrl()))},isNewClient:function(){if(this.get_printMode()===_Z_28.remote)return!0;var t=this.getLocalService().getNewVersion();if(!t||"object"!=typeof t)return!1;var e=t.data;return $print._compareVersion(e,this._newClientVersion)>=0},checkInstall:function(t){if(this.get_printMode()==_Z_28.remote&&!t)return!0;return!!this.getLocalService().getVersion(t)},get_printMode:function(){return $print.cloudInitOk?this._printMode:0},set_printMode:function(t){this._printMode=t},get_port:function(){return this.getLocalService().get_port()},getLocalService:function(t){return this._localService||(this._localService=new this.serviceImplement(this,!0,!0,t)),this._localService},getCloudService:function(){if(!this._cloudService){var t=!(this.get_printMode()==_Z_28.remote||this.get_printMode()==_Z_28.remoteAndManageStyle);this._cloudService=new this.serviceImplement(this,t)}return this._cloudService},execute:function(t,e){var i=this.get_printMode(),r=null;if(i===_Z_28.local)return r=this.getLocalService(),t(r);if($common.__cloudPrintServiceUrl&&$common.__cloudPrintAccessToken){if(i===_Z_28.localAndCloudStyle||i===_Z_28.localAndManageStyle)return r=this.getLocalService(),t(r);if(this.dependPrintService)return r=this.getLocalService(),t(r);var n=new Sys.UI.Form(this);n.PanelContainer=this,n.add_ok($createDelegate(this,function(e){r=this.getCloudService(),t(r,e.result)})),e=e||"ClientSelector.gspx",n.showModal($common.getSysUIBaseURI(this.get_form())+"Print/"+e),this.dependPrintService=!0}else $app.showError(Sys.ErrorType.cloudPrint,Sys.Res.printTips.noService,!0,null,{iconVisible:!1})}},_Z_8.registerClass("_Z_8",Sys.UI.Control),Sys.UI.Controls.BarcodePrint=function(){Sys.UI.Controls.BarcodePrint.initializeBase(this);var t=null;t=$settings.AllPrintUseService&&!$print.isRemotePrint(this)?new _Z_11(this):new _Z_10(this),this._printProvider=t},Sys.UI.Controls.BarcodePrint.prototype={initialize:function(){Sys.UI.Controls.BarcodePrint.callBaseMethod(this,"initialize"),this._printProvider.__form=this.__form},preview:function(t,e,i){this.config.apply(this,[t,e,i,!0])},design:function(t,e,i){this.config.apply(this,arguments)},config:function(t,e,i,r){e&&(this._styleName=e),i&&(this._templateName=i),this._getProvider(!0).config(t,e,i,r)},writeData:function(t,e,i){if(i.length%t.length!=0||t.length!=e.length)throw Error.abort("条码打印数据格式不正确:\n\n1、标题数据源与列宽数据源长度不匹配.\n\n2、条码数据源长度不是标题长度的整数倍");this._getProvider(!0).writeData(t,e,i)},print:function(t,e,i,r){"number"==typeof t&&(e=t,t=null),i&&(this._styleName=i),r&&(this._templateName=r),this._getProvider(!0).print(t,e||this._copies,i,r)},getNDIV:function(){return this._getProvider().getNDIV()},_getProvider:function(t){if(this._useWebTool&&t)return this._webProvider||(this._webProvider=new Sys.UI.Controls.BarcodePrintWeb(this)),this._webProvider;var e=this._printProvider;return this._printProvider.isNewClient&&!this._printProvider.isNewClient()&&((e=new _Z_11(this)).__form=this.__form),e}},Sys.UI.Controls.BarcodePrint.registerClass("Sys.UI.Controls.BarcodePrint",_Z_281),Sys.UI.Controls.BarcodePrintWeb=function(t){Sys.UI.Controls.BarcodePrintWeb.initializeBase(this,[t]),this._printType="barcode"},Sys.UI.Controls.BarcodePrintWeb.prototype={writeData:function(t,e,i){var r=$print.toJsonData("table_m.cds",t,e,i);r.detailFields=r.dataFields,r.detailData=r.dataList,delete r.dataFields,delete r.dataList,delete r.tableName,this._data=r},print:function(t,e,i,r){this._checkPrint(),t&&this.writeData(["条码"],[256],t),this.exec("Print")},config:function(t,e,i,r){this._checkPrint(),t&&this.writeData(["条码"],[256],t),r?this.exec("Preview"):this.exec("Design")},get_data:function(){if(!this._data){return{reportName:-1,reportNumber:-1,masterDetailKeyFields:this._target._masterDetailKeyFields,masterFields:this._target._masterFields,masterData:$print.get_masterDetailData(this._target._masterData),detailFields:this._target._detailFields,detailData:$print.get_masterDetailData(this._target._detailData)}}return this._data}},Sys.UI.Controls.BarcodePrintWeb.registerClass("Sys.UI.Controls.BarcodePrintWeb",_Z_282),_Z_11=function(){_Z_11.initializeBase(this,[this]),this._enableShowWaiting=!1},_Z_11.prototype={getVersion:function(){return $print.barcodeVersion?$print.barcodeVersion:$print.barcodeVersion=this.invokeCommand("type=barcode&method=Version")},config:function(t){try{t&&this._writeData(t),this.beginPrint("barcode");this.invokeCommand("type=barcode&method=BarConfigCds:table_m.cds")}catch(e){throw e}finally{this.endPrint("barcode")}},print:function(t,e){t&&this._writeData(t);try{this.beginPrint("barcode"),this.invokeCommand("type=barcode&method=PrintBarOutEx:"+e)}catch(i){throw i}finally{this.endPrint("barcode")}},_writeData:function(t){this.writeData(["条码"],[256],t)},writeData:function(t,e,i){if(this.isPrinting("barcode",!0))return null;$print._writeServiceData(this,"barcode","table_m.cds",t,e,i,this.getVersion())},getNDIV:function(){return this.invokeCommand("type=barcode&method=getNDIV")}},_Z_11.registerClass("_Z_11",_Z_4),_Z_10=function(t){_Z_10.initializeBase(this,[t,_Z_9])},_Z_10.prototype={config:function(t,e,i,r){t&&this.writeData(["条码"],[256],t),this._checkError(),this.getLocalService().design(this.get_data(),e,i,r)},writeData:function(t,e,i){this.printData=this.getCloudService().getData(t,e,i)},print:function(t,e,i,r){t&&this.writeData(["条码"],[256],t);var n=this.get_data();this.get_printMode();this.dependPrintService=!1,this.execute(function(t,s){s?t.print(n,e,i,r,s):(t.getVersion(),t.print(n,e,i,r))})},get_data:function(){if(this.printData)return this.printData;return{tableName:"table_m.cds",dataFields:this._target._detailFields,dataList:$print.get_masterDetailData(this._target._detailData)}},getNDIV:function(){return this.getLocalService().getNDIV()}},_Z_10.registerClass("_Z_10",_Z_8),_Z_9=function(t,e){_Z_9.initializeBase(this,[t,e]),this.printType="barcode",this.version=$print.barcodeVersion},_Z_9.prototype={setVersion:function(){$print.barcodeVersion=this.version},design:function(t,e,i,r){e=e||"基本样式",i=i||"默认模板";var n=this._getStyleInfo(e,i,_Z_44.barcode),s={printType:this.printType,printerName:this._getProp("_printerName"),appName:this.getAppName(),templateName:i,styleName:e,bizStyleId:this._getProp("_bizStyleId")||"",copies:this._getProp("_copies")||1,method:r?"Preview":"Design",data:t||{},styleInfo:n};this.invokeParams(s,null,function(t){t.success||(console.log(t),$common.alert(t.msg))})},getData:function(t,e,i){return $print.toJsonData("table_m.cds",t,e,i)},print:function(t,e,i,r,n){e=e||1,i=i||"基本样式",r=r||"默认模板";var s=this._getStyleInfo(i,r,_Z_44.barcode),o={printType:this.printType,printerName:this._getProp("_printerName"),appName:this.getAppName(),templateName:r,styleName:i,bizStyleId:this._getProp("_bizStyleId")||"",copies:e,method:"Print",data:t,styleInfo:s};this.invokeParams(o,n,function(t){t.success||(console.log(t),$common.alert(t.msg))})},getNDIV:function(){if($print._compareVersion(this.getVersion(),"1.8.8.1054")<0)return null;var t=this.invoke({params:{printType:"barcode",method:"GetNDIV"}},!1);return $print._getResult(t)}},_Z_9.registerClass("_Z_9",_Z_7),Sys.UI.Controls.PosPrint=function(){Sys.UI.Controls.PosPrint.initializeBase(this);var t=null;t=$settings.AllPrintUseService&&!$print.isRemotePrint(this)?new _Z_12(this):new _Z_14(this),this._printProvider=t,this._title=-1,this._headData=[],this._endData=[],this._colTitles=[],this._colWidths=[],this._rowData=[],this._writeTimes=0},Sys.UI.Controls.PosPrint.prototype={initialize:function(){Sys.UI.Controls.PosPrint.callBaseMethod(this,"initialize"),this._printProvider.__form=this.__form},_getProvider:function(t){if(this._useWebTool&&t)return this._webProvider||(this._webProvider=new Sys.UI.Controls.PosPrintWeb(this)),this._webProvider;var e=this._printProvider;return this._printProvider.isNewClient&&!this._printProvider.isNewClient()&&((e=new _Z_12(this)).__form=this.__form),e},preview:function(t){this.posBillPrint(t,"Preview")},design:function(){this.config()},config:function(){this._getProvider(!0).showPosCfg()},print:function(){this.posBillPrint(null,"Print")},posBillPrint:function(t,e,i){this._useWebTool||1!=this._writeTimes||(this._writeTimes++,this._writeData()),this._getProvider(!0).posBillPrint(t,e,i||this._copies)},writeMasterData:function(t,e){this._headData=t,this._endData=e,this._writeData()},writeDetailData:function(t,e,i){if(e.length<1||t.length!=e.length)throw Error.abort("小票打印数据格式不正确:\n\n1、标题数据源与列宽数据源长度不匹配.");this._colTitles=t,this._colWidths=e,this._rowData=i,this._writeData()},_writeData:function(){this._writeTimes++,this._writeTimes<2||(this._writeTimes=0,this._getProvider(!0).writeDetailData(this._colTitles,this._colWidths,this._rowData,this._headData,this._endData))},hideConfigPage:function(t){this._getProvider().hideConfigPage(t)},openCashBox:function(){this._getProvider().openCashBox()},screenOut:function(t,e){this._getProvider().screenOut(t,e)}},Sys.UI.Controls.PosPrint.registerClass("Sys.UI.Controls.PosPrint",_Z_281),Sys.UI.Controls.PosPrintWeb=function(t){Sys.UI.Controls.PosPrintWeb.initializeBase(this,[t]),this._printType="billprint"},Sys.UI.Controls.PosPrintWeb.prototype={showPosCfg:function(){this.posBillPrint(null,"Design")},posBillPrint:function(t,e){this._checkPrint(),t&&(this._templateName=t),this.exec(e)},get_data:function(){if(!this._data){return{reportName:-1,reportNumber:-1,masterDetailKeyFields:this._target._masterDetailKeyFields,masterFields:this._target._masterFields,masterData:$print.get_masterDetailData(this._target._masterData),detailFields:this._target._detailFields,detailData:$print.get_masterDetailData(this._target._detailData)}}return this._data}},Sys.UI.Controls.PosPrintWeb.registerClass("Sys.UI.Controls.PosPrintWeb",_Z_282),_Z_12=function(){_Z_12.initializeBase(this,[this]),this._enableShowWaiting=!1},_Z_12.prototype={getVersion:function(){return $print.posVersion?$print.posVersion:$print.posVersion=this.invokeCommand("type=billprint&method=Version")},showPosCfg:function(){this.hideConfigPage(1);try{this.beginPrint("billprint"),this.invokeCommand("type=posdriver&method=ShowPosCfg")}catch(t){throw t}finally{this.endPrint("billprint")}},hideConfigPage:function(t){this.invokeCommand("type=posdriver&method=HidePage:"+t)},posBillPrint:function(t,e){try{this.beginPrint("billprint"),this.invokeCommand("type=billprint&method=PosBillPrint:"+escape(t)+","+!!e+",1")}catch(i){throw i}finally{this.endPrint("billprint")}},writeDetailData:function(t,e,i,r,n){this._writeTableData(r,e,0),$print._writeServiceData(this,"billprint","billdetail.cds",t,e,i,this.getVersion()),this._writeTableData(n,e,2)},_writeTableData:function(t,e,i){var r=0==i?"表头":"表尾";if(!t||0==t.length)throw Error.abort("小票打印,["+r+"]数据不能为空");for(var n=[],s=[],o=0;o<t.length;o++){var a=t[o],l=a.indexOf(":");if(l<0)throw Error.abort("小票打印,["+r+"]数据格式不正确");n.push(a.substring(0,l)),s.push(a.substring(l+1))}var c=0==i?"billhead.cds":"billtail.cds";$print._writeServiceData(this,"billprint",c,n,e,s,this.getVersion())},openCashBox:function(){this.invokeCommand("type=posdriver&method=PosOpenCashBox")},screenOut:function(t,e){this.invokeCommand("type=posdriver&method=PosScreenOut:"+t+","+e)}},_Z_12.registerClass("_Z_12",_Z_4),_Z_13=function(t,e){_Z_13.initializeBase(this,[t,e]),this.printType="billprint",this.version=$print.posVersion},_Z_13.prototype={setVersion:function(){$print.posVersion=this.version},showPosCfg:function(){this.getVersion();var t=this.invoke({tokenType:0,accessToken:this.getAccessToken(),serverUrl:$print.getServerUrl(),params:{printType:"posdriver",displayBarScale:!1,method:"ShowPosCfg",pageIndex:1}},!1);if(!t.success)throw Error.abort(t.msg)},hideConfigPage:function(t){this.getVersion();var e=this.invoke({tokenType:0,accessToken:this.getAccessToken(),serverUrl:$print.getServerUrl(),params:{printType:"posdriver",method:"HidePage",pageIndex:t}},!1);if(!e.success)throw Error.abort(e.msg)},openCashBox:function(t){var e=this.invoke({resultMode:1,tokenType:0,printMode:t?0:1,clientTagName:t?t.clientTagName:"",accessToken:this.getAccessToken(),serverUrl:$print.getServerUrl(),requestor:"",params:{printType:"posdriver",printerName:t?t.printerName:this._getProp("_printerName"),appName:this.getAppName(),method:"PosOpenCashBox"}},!1);e.success||(console.log(e),$common.alert(e.msg))},screenOut:function(t,e,i){var r=this.invoke({resultMode:1,tokenType:0,printMode:i?0:1,clientTagName:i?i.clientTagName:"",accessToken:this.getAccessToken(),serverUrl:$print.getServerUrl(),requestor:"",params:{printType:"posdriver",printerName:i?i.printerName:this._getProp("_printerName"),appName:this.getAppName(),method:"PosScreenOut",data:t+","+e}},!1);r.success||(console.log(r),$common.alert(r.msg))},posBillPrint:function(t,e,i,r,n){e&&this.getVersion();var s=e?!0===e?"Design":"Preview":"Print",o=this._getStyleInfo("",t,_Z_44.bill),a={printType:this.printType,appName:this.getAppName(),method:s,templateName:t,copies:n,bizStyleId:this._getProp("_bizStyleId")||"",printerName:r?r.printerName:this._getProp("_printerName"),styleInfo:o,data:i};this.invokeParams(a,r,function(t){t.success||(console.log(t),$common.alert(t.msg))})}},_Z_13.registerClass("_Z_13",_Z_7),_Z_14=function(t){_Z_14.initializeBase(this,[t,_Z_13]),this._title=-1,this._headData=[],this._endData=[],this._colTitles=[],this._colWidths=[],this._rowData=[],this._writeTimes=0},_Z_14.prototype={showPosCfg:function(){this._checkError(),this.getLocalService().showPosCfg()},hideConfigPage:function(t){this._checkError(),this.getLocalService().hideConfigPage(t)},openCashBox:function(){this._checkError(),this.execute(function(t,e){t.openCashBox(e)})},screenOut:function(t,e){this._checkError(),this.execute(function(i,r){i.screenOut(t,e,r)})},_getData:function(){return{headData:this._checkData(this._headData,0),detailData:$print.toJsonData("billdetail.cds",this._colTitles,this._colWidths,this._rowData),tailData:this._checkData(this._endData,1)}},_checkData:function(t,e){var i=0==e?"表头":"表尾";if(!t||0==t.length)throw Error.abort("小票打印,["+i+"]数据不能为空");for(var r=[],n=[],s=0;s<t.length;s++){var o=t[s],a=o.indexOf(":");if(a<0)throw Error.abort("小票打印,["+i+"]数据格式不正确");r.push(o.substring(0,a)),n.push(o.substring(a+1))}var l=0==e?"billhead.cds":"billtail.cds";return $print.toJsonData(l,r,this._colWidths,n)},posBillPrint:function(t,e,i){var r=this._getData();if(e)return this._checkError(),void this.getLocalService().posBillPrint(t,e,r,null,i);this.dependPrintService=!1,this.execute(function(n,s){n.posBillPrint(t,e,r,s,i)})},writeDetailData:function(t,e,i,r,n){if(e.length<1||t.length!=e.length)throw Error.abort("小票打印数据格式不正确:\n\n1、标题数据源与列宽数据源长度不匹配.");this._colTitles=t,this._colWidths=e,this._rowData=i,this._headData=r,this._endData=n}},_Z_14.registerClass("_Z_14",_Z_8),Sys.UI.Controls.ExpressPrint=function(){Sys.UI.Controls.ExpressPrint.initializeBase(this);var t=null;t=$settings.AllPrintUseService&&!$print.isRemotePrint(this)?new _Z_15(this):new _Z_17(this),this._printProvider=t},Sys.UI.Controls.ExpressPrint.prototype={initialize:function(){Sys.UI.Controls.ExpressPrint.callBaseMethod(this,"initialize"),this._printProvider.__form=this.__form},getPrinters:function(){return this._getProvider().getPrinters()},getCurPrinter:function(t){return this._getProvider().getCurPrinter(t)},writeData:function(t,e){this._getProvider(!0).writeData(t,e)},design:function(t,e,i){return this.designReport(t,e,i)},designReport:function(t,e,i){return this._getProvider(!0).designReport(t,e,i)},print:function(t,e){return this._getProvider(!0).print(t,e)},batchPrint:function(t,e,i,r){return this._getProvider(!0).batchPrint(t,e,i,r)},preview:function(t,e){return this._getProvider(!0).preview(t,e)},getPrinterDriver:function(t,e){return this._getProvider().getPrinterDriver(t,e)},_getProvider:function(t){if(this._useWebTool&&t)return this._webProvider||(this._webProvider=new Sys.UI.Controls.ExpressPrintWeb(this)),this._webProvider;var e=this._printProvider;return this._printProvider.isNewClient&&!this._printProvider.isNewClient()&&((e=new _Z_15(this)).__form=this.__form),e},get_freightName:function(){return this._freightName},set_freightName:function(t){this._freightName=t,this._templateName=t},checkInstall:function(){try{return this._getProvider().checkInstall()}catch(t){return!1}},isSupportCloudStore:function(){return this._getProvider().isSupportCloudStore()},modifyFields:function(t,e,i){this._getProvider().modifyFields(t,e,i)},checkTemplateExist:function(t){return this._getProvider().checkTemplateExist(t)},createNewTemplate:function(t,e,i){return this._getProvider().createNewTemplate(t,e,i)},_writeData:function(t,e,i){var r={};r.reportName=-1,r.reportNumber=-1,r.masterFields=null,r.detailFields=t,r.detailDataUrl="http://",r.detailData={itemCount:e.length,itemList:e},i._data=r},_getTemplateName:function(t,e){if("string"==typeof t)return t;if(!t)return this._freightName||this._templateName||this._styleName;var i=$print._getExpressDetailData(t);return this._writeData(i.detailFields,[i.printData],e),this._freightName?this._freightName:i.name}},Sys.UI.Controls.ExpressPrint.registerClass("Sys.UI.Controls.ExpressPrint",_Z_281),Sys.UI.Controls.ExpressPrintWeb=function(t){Sys.UI.Controls.ExpressPrintWeb.initializeBase(this,[t]),this._printType="express"},Sys.UI.Controls.ExpressPrintWeb.prototype={batchPrint:function(t,e,i){this.print(t[0])},print:function(t,e){this._checkBizStyleId(),this._target._templateName=this._target._getTemplateName(t,this),this.exec("Print")},writeData:function(t,e){this._target._writeData(t,e,this)},preview:function(t,e){this._checkPrint(),this._target._templateName=this._target._getTemplateName(t,this),this.exec("Preview")},designReport:function(t,e,i){this._checkPrint(),this._target._templateName=this._target._getTemplateName(e,this),this.exec("Design")},get_data:function(){if(!this._data){return t={reportName:-1,reportNumber:-1,masterDetailKeyFields:this._target._masterDetailKeyFields,masterFields:this._target._masterFields,masterData:$print.get_masterDetailData(this._target._masterData),detailFields:this._target._detailFields,detailData:$print.get_masterDetailData(this._target._detailData)}}var t=this._data;return t.masterFields=t.detailFields,t.masterData=t.detailData,t.masterDetailKeyFields=this._target._masterDetailKeyFields,this._target._detailData?(t.detailFields=this._target._detailFields,t.detailData=$print.get_masterDetailData(this._target._detailData)):(delete t.detailFields,delete t.detailData),delete t.detailDataUrl,delete this._data,t}},Sys.UI.Controls.ExpressPrintWeb.registerClass("Sys.UI.Controls.ExpressPrintWeb",_Z_282),_Z_15=function(t){_Z_15.initializeBase(this,[this]),this._enableShowWaiting=!1,this._control=t,this._dataVersion="1.0.1.97",this._cloudStoreVersion="1.0.1.118"},_Z_15.prototype={checkInstall:function(){return this.invokeCommand("type=express&get=Version"),!0},getPrinters:function(){var t=this.invokeCommand("type=express&method=GetPrinterNames");return $print._toPrinters(t)},getCurPrinter:function(t,e){var i=this.invokeCommand("type=express&method=GetCurPrinter:"+escape(t));return e?e(i):i},writeData:function(t,e){var i=this.invokeCommand("type=express&get=Version");if($print._compareVersion(i,this._dataVersion)>=0){var r={};r.reportName=-1,r.reportNumber=-1,r.masterFields=null,r.detailFields=t,r.detailDataUrl="http://",r.detailData={itemCount:e.length,itemList:e};var n=Sys.Serialization.JavaScriptSerializer.serialize(r);this.invokeCommand("type=express&method=LoadDataFromJson",n)||$common.alert("服务形式-快递单打印写数据出错")}else{for(var s=[],o=[],a=[],l=0,c=t.length;l<c;l++){var d=t[l];s.push(d.name),o.push(d.columnWidth)}for(var l=0,c=e.length;l<c;l++){var p=e[l];for(var h in p)"物流公司"!=h&&a.push(p[h])}$print._writeServiceData(this,"express","table_m.cds",s,o,a)}},isSupportCloudStore:function(){var t=this.invokeCommand("type=express&get=Version");return $print._compareVersion(t,this._cloudStoreVersion)>=0},getPrinterDriver:function(t){return this.invokeCommand("type=express&method=GetPrinterDriver:"+escape(t))},modifyFields:function(t,e){this.invokeCommand("type=express&set=DisplayFields:"+t),this.invokeCommand("type=express&set=DataFields:"+e)},checkTemplateExist:function(t){return this.invokeCommand("type=express&method=CheckTemplateExist:"+escape(t))},setPrinter:function(t){this.invokeCommand("type=express&method=SetPrinter:"+escape(t))},createNewTemplate:function(t,e){return this.invokeCommand("type=express&method=CreateNewTemplate:"+escape(t)+","+escape(e))},print:function(t){if(this.isPrinting("express",!0))return null;try{this.beginPrint("express");var e=this._createDataAndSelectModal(t,!0);return this.invokeCommand("type=express&method=Print:"+escape(e))}catch(i){throw i}finally{this.endPrint("express")}},batchPrint:function(t,e,i){if(!this.isPrinting("express",!0))try{this.beginPrint("express");var r=$print._getExpressDetailData(t[0]);e&&this.setPrinter(e),this.writeData(r.detailFields,r.printData);var n=i||r.name;return this.invokeCommand("type=express&method=Print:"+escape(n))}catch(s){throw s}finally{this.endPrint("express")}},preview:function(t){if(this.isPrinting("express",!0))return null;try{this.beginPrint("express");var e=this._createDataAndSelectModal(t,!0);return this.invokeCommand("type=express&method=Preview:"+escape(e))}catch(i){throw i}finally{this.endPrint("express")}},designReport:function(t,e,i){if(t=this.getTemplateName(t),!this.isPrinting("express",!0))try{this.beginPrint("express"),e&&this._createDataAndSelectModal(e);var r=this.invokeCommand("type=express&method=DesignReport:"+escape(t));if(!i)return r;i(r)}catch(n){throw n}finally{this.endPrint("express")}},_createDataAndSelectModal:function(t,e){if("string"==typeof t)return e?this.getTemplateName(t):t;if(!t)return"";var i=$print._getExpressDetailData(t),r=[];return r.push(i.printData),this.writeData(i.detailFields,r),e?this.getTemplateName(i.name):i.name},getTemplateName:function(t){if($settings.CPrintUseClound&&this.isSupportCloudStore()){var e=this._dataService;e||(e=this._dataService=_Z_2.create());var i=e.GetCloundPrintInfo(t,!1,Function.emptyMethod);if(Object.isEmpty(i))return t;this._control.get_freightName()?(i.templatename=this._control.get_freightName(),i.stylename=t):i.templatename=t;return Sys.Serialization.JavaScriptSerializer.serialize(i)}return t}},_Z_15.registerClass("_Z_15",_Z_4),_Z_16=function(t,e){_Z_16.initializeBase(this,[t,e]),this.printType="express",this.version=$print.expressVersion},_Z_16.prototype={setVersion:function(){$print.expressVersion=this.version},getPrinterDriver:function(t,e){var i={printType:this.printType,printerName:t,appName:this.getAppName(),get:"PrinterDriver"};return this.invokeSync(i,e)},checkTemplateExist:function(t){var e={printType:this.printType,appName:this.getAppName(),method:"CheckTemplateExist",templateName:t};return this.invokeSync(e,null,2)},getCurPrinter:function(t){var e={printType:this.printType,appName:this.getAppName(),get:"CurPrinterName",templateName:t};return this.invokeSync(e,null,2)},createNewTemplate:function(t,e,i){var r={printType:this.printType,appName:this.getAppName(),method:"CreateNewTemplate",templateName:e,oldTemplateName:t};return this.invokeSync(r,i,2)},executePrint:function(t,e,i,r,n,s){var o=this._getStyleInfo("",i,_Z_44.express),a={printType:this.printType,appName:this.getAppName(),method:t,templateName:i,bizStyleId:this._getProp("_bizStyleId")||"",printerName:r,styleInfo:o,data:e};this.invokeParams(a,n,function(t){if(s)s(t);else if(!t.success)throw Error.abort(t.msg)})}},_Z_16.registerClass("_Z_16",_Z_7),_Z_17=function(t){_Z_17.initializeBase(this,[t,_Z_16]),this.dependPrintService=!0},_Z_17.prototype={_initData:function(){if(!this._data){var t={};t.reportName=-1,t.reportNumber=-1,t.masterFields=null,t.detailFields=this._target._detailFields,t.detailDataUrl="http://",t.detailData={itemCount:this._target._detailData.length,itemList:this._target._detailData},this._data=t}},getPrinters:function(){return $print.getLocalClients()},writeData:function(t,e){this._target._writeData(t,e,this)},getCurPrinter:function(t,e){return this.getLocalService().getCurPrinter(t)},designReport:function(t,e,i){this._checkError(),this._printMethod="Design";var r=this;this.execute(function(n,s){if(e){var o=$print._getExpressDetailData(e);r._target._writeData(o.detailFields,[o.printData],r),t=t||o.name}else r._initData();n.executePrint(r._printMethod,r._data,t||r._getProp("_templateName"),r._getProp("_printerName"),s,i)})},preview:function(t,e){this._checkError(),this._printMethod="Preview";var i=this;this.execute(function(r,n){var s=i._target._getTemplateName(t,i);r.executePrint(i._printMethod,i._data,s,i._getProp("_printerName"),n,e)})},isSupportCloudStore:function(){return!0},getPrinterDriver:function(t,e){this.execute(function(i,r){var n=i.getPrinterDriver(t,r);e(n)},"OnlyClientSelector.gspx")},modifyFields:function(t,e){},checkTemplateExist:function(t){return this.getLocalService().checkTemplateExist(t)},createNewTemplate:function(t,e,i){this.execute(function(r,n){var s=r.createNewTemplate(t,e,n);i(s)},"OnlyClientSelector.gspx")},print:function(t,e){this._printMethod="Print",this.dependPrintService=!1;var i=this,r=i._getProp("_printerName");this.execute(function(n,s){if(s&&s.length>0){var o=s[0];r=o.printerName}var a=i._target._getTemplateName(t,i);n.executePrint(i._printMethod,i._data,a,r,s,e)})},batchPrint:function(t,e,i,r){if(0!==t.length){this._printMethod="Print",this.dependPrintService=!1;var n=this;this.execute(function(s,o){var a=$print._getExpressDetailData(t[0]),l=i||a.name;n._target._writeData(a.detailFields,[a.printData],n),s.executePrint(n._printMethod,n._data,l,e,o,r)})}}},_Z_17.registerClass("_Z_17",_Z_8),Sys.UI.Controls.BarScale=function(){Sys.UI.Controls.BarScale.initializeBase(this),this._scaleProvider=new _Z_18(this)},Sys.UI.Controls.BarScale.prototype={checkInstall:function(){return $print.checkRun()},dhConfig:function(){this._scaleProvider.dhConfig()},khConfig:function(){this._scaleProvider.khConfig()},dhSendPlu:function(){this._scaleProvider.dhSendPlu()},khSendPlu:function(){this._scaleProvider.khSendPlu()},loadPlu:function(t){this._scaleProvider.loadPlu(t)}},Sys.UI.Controls.BarScale.registerClass("Sys.UI.Controls.BarScale",Sys.UI.Actions.PrintBase),_Z_18=function(t){_Z_18.initializeBase(this,[this]),this._enableShowWaiting=!1,this._control=t},_Z_18.prototype={dhConfig:function(){this.invokeCommand("type=BarScale&method=Config:dhbarscale")},khConfig:function(){this.invokeCommand("type=BarScale&method=Config:khbarscale")},dhSendPlu:function(){this.invokeCommand("type=BarScale&method=SendPlu:dhbarscale")},khSendPlu:function(){this.invokeCommand("type=BarScale&method=SendPlu:khbarscale")},loadPlu:function(t){this.invokeCommand("type=BarScale&method=LoadPlu",t)}},_Z_18.registerClass("_Z_18",_Z_4),Sys.UI.Controls.EScanAction=function(){Sys.UI.Controls.EScanAction.initializeBase(this),this._defaultPort="com1",this._defaultInterval=10,this._hasPrintService=!0,this._isStart=!1;var t=null;t=$settings.AllPrintUseService&&!$print.isRemotePrint(this)?new _Z_19(this):new Sys.UI.Controls.EScanActionClound(this),this._printProvider=t},Sys.UI.Controls.EScanAction.prototype={initialize:function(){Sys.UI.Controls.EScanAction.callBaseMethod(this,"initialize"),this._printProvider.__form=this.__form},dispose:function(){if(this._isStart)try{this.stop()}catch(t){}Sys.UI.Controls.EScanAction.callBaseMethod(this,"dispose")},checkInstall:function(){return $print.checkRun()},config:function(){this._printProvider.config()},start:function(t,e){e==undefined&&(e=this._defaultInterval),t==undefined&&(t=this._defaultPort),this._printProvider.start(t,e),this._isStart=!0},stop:function(){this._printProvider.stop(),this._isStart=!1},getData:function(){return this._printProvider.getData()},startByConfig:function(t){t==undefined&&(t=this._defaultInterval),this._printProvider.startByConfig(t)}},Sys.UI.Controls.EScanAction.registerClass("Sys.UI.Controls.EScanAction",Sys.UI.Actions.PrintBase),Sys.UI.Controls.EScanActionClound=function(t){Sys.UI.Controls.EScanActionClound.initializeBase(this,[t,Sys.UI.Controls.EScanCloundService]),this._control=t,this._port="com1"},Sys.UI.Controls.EScanActionClound.prototype={config:function(){this.execute(function(t){t.config()})},start:function(t,e){this.execute(function(i){i.start(t,e)})},stop:function(){this.execute(function(t){t.stop()})},getData:function(){return this.execute(function(t){return t.getData()})},startByConfig:function(t){return this.execute(function(e){return e.startByConfig(t)})}},Sys.UI.Controls.EScanActionClound.registerClass("Sys.UI.Controls.EScanActionClound",_Z_8),Sys.UI.Controls.EScanCloundService=function(t,e){Sys.UI.Controls.EScanCloundService.initializeBase(this,[t,e]),this.printType="EScan"},Sys.UI.Controls.EScanCloundService.prototype={config:function(){var t=this.invoke({tokenType:0,accessToken:this.getAccessToken(),serverUrl:$print.getServerUrl(),params:{printType:this.printType,method:"Config"}},!1);if(!t.success)throw Error.abort(t.msg)},start:function(t,e){var i=this.invoke({tokenType:0,accessToken:this.getAccessToken(),serverUrl:$print.getServerUrl(),params:{printType:this.printType,method:"Start",data:t+","+e}},!1);if(!i.success)throw Error.abort(i.msg)},stop:function(){var t=this.invoke({tokenType:0,accessToken:this.getAccessToken(),serverUrl:$print.getServerUrl(),params:{printType:this.printType,method:"Stop"}},!1);if(!t.success)throw Error.abort(t.msg)},getData:function(){var t=this.invoke({tokenType:0,accessToken:this.getAccessToken(),serverUrl:$print.getServerUrl(),params:{printType:this.printType,method:"GetData"}},!1);if(!t.success)throw Error.abort(t.msg);return $print._getResult(t)},startByConfig:function(t){var e=this.invoke({tokenType:0,accessToken:this.getAccessToken(),serverUrl:$print.getServerUrl(),params:{printType:this.printType,method:"StartByConfig",data:t}},!1);if(!e.success)throw Error.abort(e.msg);return $print._getResult(e)}},Sys.UI.Controls.EScanCloundService.registerClass("Sys.UI.Controls.EScanCloundService",_Z_7),_Z_19=function(t){_Z_19.initializeBase(this,[this]),this._enableShowWaiting=!1,this._control=t,this._port="com1"},_Z_19.prototype={config:function(){this.invokeCommand("type=EScan&method=Config")},start:function(t,e){this.invokeCommand("type=EScan&method=Start:"+t+","+e)},stop:function(){this.invokeCommand("type=EScan&method=Stop")},getData:function(){return this.invokeCommand("type=EScan&method=GetData")},startByConfig:function(t){return this.invokeCommand("type=EScan&method=StartByConfig:"+t)}},_Z_19.registerClass("_Z_19",_Z_4),function(){function t(t){return null===t||t===undefined||""===t}function e(t){return s(t,"decimalDigits")}function i(t){return s(t,"decimalScale")}function r(t){return n(t,"displayThousandSeperator")}function n(t,e){var i=a(t,e);return null!==i&&Boolean.convert(i)}function s(t,e){var i=a(t,e);return null!==i?parseInt(i):-1}function o(t,e){var i=a(t,e);return null!==i?i.toString():null}function a(t,e){var i=t[e];return i!=undefined&&null!==i?i:null}window.convertGridData=function(t,g,f,y,v){f=Array.removeRepeatString(f),v||(v=t.params.data.detailFields),detailFields=Object.clone(v);var S=t.params.data.expandFields,P=function(t,e){if(t)for(var i in t){var r=t[i];Array.isArray(r)?r.forEach(function(t){Array.addByKey(e,t,"dataField")}):P(r,e)}};P(S,detailFields);var C=t.params.method;if(!g||0==g.length)return g;if(!detailFields||0==detailFields.length)return g;for(var D=detailFields.length,I=[],x=[],b=0;b<D;b++){var $=detailFields[b];I.push(o($,"dataField")),x.push(function(t,g,f){var y=null,v=o(t,"replaceText");if(v)y=new l(v);else switch(o(t,"columnType")){case"Number":var S=e(t),P=i(t),C=s(t,"upperCaseKind"),D=n(t,"formatNumber");y=C<=0?new p(S,P,r(t),!1,D,g):new d(S>0?S:P,C,D,g);break;case"Percent":D=n(t,"formatNumber"),y=new p(e(t),i(t),r(t),!0,D,g);break;case"Date":y=new c(!0);break;case"DateTime":y=new c(!1);break;case"Boolean":y=new h;break;case"DropDown":y=new _(a(t,"itemData"));break;case"Dynamic":y=new m(a(t,"itemText"));break;default:y=new u}return y.clientData=f,y}($,C,y))}for(var A=[],T=g.length,b=0;b<T;b++){for(var U=g[b],w={},E=0;E<D;E++){var F=I[E],N=x[E],k=$craba.getPropValue(U,F);w[F]=N?N.Format(k):k}Array.forEach(f,function(t){t&&(w[t]=$craba.getPropValue(U,t))}),A.push(w)}return A};var l=function(t){this.replaceText=t};l.prototype={Format:function(t){return this.clientData?t:this.replaceText}};var c=function(t){this.isDate=t};c.prototype={Format:function(e){if(this.clientData)return e;if(t(e))return"";if(!(e instanceof Date)){var i=/^\/Date\((-?[\d.]+?)\)\/$/.exec(e);e=i?new Date(Number(i[1])):new Date(e)}return this.isDate?Date.dateToStr(e):Date.dateTimeToStr(e)}};var d=function(t,e){this.decimalDigits=t,this.upperCaseKind=e};d.prototype={Format:function(t){return t}};var p=function(t,e,i,r,n,s){this.decimalDigits=t,this.decimalScale=e,this.displayThousandSeperator=i,this.isPercent=r,this.formatNumber=n,this.method=s};p.prototype={Format:function(t){if(this.clientData&&this.formatNumber)return t;if(this.formatNumber){var e=Number(t);if(isNaN(e))return t;t=$common.formatNumber({value:t,decimalDigits:this.decimalDigits,decimalScale:this.decimalScale,displayThousandSeperator:this.displayThousandSeperator,isPrint:!0})}else"ExportData"==this.method&&(t=Object.isUndefinedOrNull(t)?"":t.toString());return this.isPercent&&(t+="%"),t}};var h=function(t){this.replaceText=t};h.prototype={Format:function(e){return this.clientData?e:t(e)?"×":(e=Boolean.convert(e))?"√":"×"}};var u=function(){};u.prototype={Format:function(t){return this.clientData?t:"string"!=typeof t?t:$common.htmlDecode(t)}};var _=function(t){this.itemData=t};_.prototype={Format:function(e){if(this.clientData)return e;if(t(e))return"";var i=e.toString();return this.itemData?this.itemData[i]!==undefined?this.itemData[i]:("boolean"==typeof e&&(i=e?1:0),this.itemData[i]!==undefined?this.itemData[i]:e):e}};var m=function(t){this.itemText=t};m.prototype={Format:function(e){if(this.itemText)return this.itemText;if(t(e))return"";var i;try{i=$crabaJSON.deserialize(e)}catch(c){}i||(i=[{0:e}]);for(var r=[],n=0,s=i.length;n<s;n++){var o=i[n];for(var a in o){var l=o[a];(l=$common.clearHTMLTag(l))&&("/t"==l.substring(0,2)&&(l=l.substring(2)),r.push(l))}}return r.join(",")}}}();
6
+ Sys.WorkMode=function(){throw Error.notImplemented()},Sys.WorkMode.prototype={normal:0,design:1},Sys.WorkMode.registerEnum("Sys.WorkMode"),_Z_255=function(t,e,i,s,n){this._options=e,this._work=t,this._source=i,this._addType=s,this._prevItem=n},_Z_255.prototype={get_addType:function(){return this._addType},get_options:function(){return this._options},set_left:function(t){this._options.x=t},get_left:function(){return this._options.x},set_top:function(t){this._options.y=t},get_top:function(){return this._options.y},set_distance:function(t){this._options.distance=t},get_source:function(){return this._source},get_data:function(){return this._options.data},set_data:function(t){this._options.data=t},set_text:function(t){this._options.text=t},get_text:function(){return this._options.text},set_cssClass:function(t){this._options.cssClass=t},get_prevData:function(){return this._prevItem?this._prevItem.get_data(!0):null},getItem:function(){return this._item},addItem:function(){return Object.isUndefinedOrNull(this._options.self)&&(this._options.self=!1),this._item=this._work.addItem(this._options),this.callback&&this.callback(this._item),this._item}},_Z_255.registerClass("_Z_255",Sys.EventArgs),_Z_256=function(t){this._item=t},_Z_256.prototype={get_data:function(){return Object.clone(this._item.options.data)},set_data:function(t){this._item.options.data=t},get_type:function(){return this._item.get_type()},set_text:function(t){this._item.set_text(t)},set_cssClass:function(t){this._item.options.cssClass=t;this._item.get_element().className=$skin.joinCssClass(this._item.defaultCssName(),t)},get_options:function(){return this._item.options},get_text:function(){return this._item.get_text()},get_item:function(){return this._item},modifyItem:function(t,e){this.set_data(e),this._item.set_text(t)},set_lineColor:function(t){t&&(this._item.options.lineColor=t,this._item._lineColor=this._item._defaultLineColor=t)},set_arrowType:function(t){Object.isUndefinedOrNull(t)||(this._item.options.arrowType=t,this._item._arrowType=this._item.defaultArrowType=t)},set_dash:function(t){this._item.options.dash=t}},_Z_256.registerClass("_Z_256",Sys.EventArgs),_Z_258=function(t){this._line=t},_Z_258.prototype={get_prevData:function(){return this._line.get_item().options.data},get_nextData:function(){var t=this._line.get_nextItem();return t?t.options.data:null}},_Z_258.registerClass("_Z_258",_Z_256),_Z_257=function(t){this._item=t},_Z_257.prototype={get_item:function(){return this._item},get_data:function(){return Object.clone(this._item.options.data)},set_data:function(t){this._item.options.data=t},set_text:function(t){this._item.set_text(t)},get_text:function(){return this._item.get_text()},get_type:function(){return this._item.get_type()}},_Z_257.registerClass("_Z_257",Sys.EventArgs),Craba.UI.Workflow=function(t){Craba.UI.Workflow.initializeBase(this,[t]),this._hAlign=-1,this._vAlign=-1,this._mode=Sys.WorkMode.normal,this._allowDrag=!1,this._allowDrop=!1,this._allowResize=!1,this._allowDraw=!1,this._useFragment=!0,this._isDash=!1},Craba.UI.Workflow.prototype={get_cssClass:function(){var t="FlexBlock Workflow";return this._allowResize||(t+=" NoResize"),this._allowDraw||(t+=" NoLine"),t},endRender:function(t){t.writeEnd()},initScript:function(){Craba.UI.Workflow.callBaseMethod(this,"initScript"),this.addProp("hAlign",this._hAlign,-1),this.addProp("vAlign",this._vAlign,-1),this.addProp("mode",this._mode,Sys.WorkMode.normal)},typeName:function(){return"Workflow"},set_mode:function(t){this._mode=this.get_enumTypeValue(Sys.WorkMode,t)},set_hAlign:function(t){this._hAlign=this.get_enumTypeValue(_Z_241,t)},set_vAlign:function(t){this._vAlign=this.get_enumTypeValue(_Z_242,t)}},Craba.UI.Workflow.registerClass("Craba.UI.Workflow",Craba.UI.WebControl),Sys.UI.Controls.Workflow=function(t){Sys.UI.Controls.Workflow.initializeBase(this,[t]),this._allowDrop=!1,this._allowDrag=!1,this._allowResize=!1,this._useFragment=!0,this._enabled=!0,this._items=[],this._selectedItems=[],this._mode=Sys.WorkMode.normal,this._vAlign=-1,this._hAlign=-1,this._index=1,this._lineColor="#999",this._itemDistanse=60},Sys.UI.Controls.Workflow.prototype={initialize:function(){Sys.UI.Controls.Workflow.callBaseMethod(this,"initialize"),this.bindEvent()},dispose:function(){this.dragBlock&&(this.dragBlock.dispose(),this.dragBlock=null),Array.forEach(this._items,function(t,e){t.dispose()}),delete this._selectedItems,delete this._items,Sys.UI.Controls.Workflow.callBaseMethod(this,"dispose")},set_enabled:function(t){this._enabled=t,$dom.setCssClass(!t,this._element,"disabled"),t||this.hideResizer()},get_enabled:function(){return this._enabled},set_lineColor:function(t){this._lineColor=t},get_lineColor:function(){return this._lineColor},set_isDash:function(t){this._isDash=t},get_isDash:function(){return this._isDash},set_useFragment:function(t){this._useFragment=t},get_useFragment:function(){return this._useFragment},bindEvent:function(){this._mode==Sys.WorkMode.design&&this.fireEvent(),this._bindOtherEnvet()},fireEvent:function(){var t=this.get_element();if(this._mode==Sys.WorkMode.design){if(this._binded)return;this._binded=!0,t.unselectable="on",$common.addMouseDownHandler(t,this._doMouseDown,this),$common.addMouseMoveHandler(t,this._doMouseMove,this),$common.addContextMenuHandler(t,this._doMenu,this)}else this._binded=!1,$clearHandlers(t),t.unselectable="",this._bindOtherEnvet();Array.forEach(this._items,function(t,e){t.fireEvent()})},_bindOtherEnvet:function(){var t=this.get_element();$common.addMouseUpHandler(t,this._doMouseUp,this),$common.addDblClickHandler(t,this._doDblClick,this)},get_allowDrag:function(){return this._allowDrag},set_allowDrag:function(t){this._allowDrag=t},get_allowDraw:function(){return this._allowDraw},set_allowDraw:function(t){this._allowDraw=t},get_allowResize:function(){return this._allowResize},set_allowResize:function(t){this._allowResize=t},set_hAlign:function(t){this._hAlign=t},get_hAlign:function(){return this._hAlign},set_vAlign:function(t){this._vAlign=t},get_vAlign:function(){return this._vAlign},set_showGrid:function(t){$Dom.setCssClass(t,this.get_element(),"ShowGrid")},get_showGrid:function(t){return $Dom.hasClass(this.get_element(),"ShowGrid")},set_menuCssClass:function(t){this._menuCssClass=t},get_menuCssClass:function(){return this._menuCssClass},doFormLoaded:function(t){this.get_form().get_fullWindow()||(this._isBinded=!0,this.refresh(this._dataSource))},doFormResized:function(){if(!this._isBinded)return this._isBinded=!0,this.refresh(this._dataSource);this.alignItems()},addItem:function(t){var e=new _Z_260(t);return e.__form=this.__form,this._items.push(e),e.set_flow(this),e.paint(),e},saveData:function(t){var e=[];return Array.forEach(this._items,function(i,s){e.push(i.saveData(!1,t))}),e.length>0&&(e=Object.clone(e)),e},findItem:function(t){if(!this._dataKeyField)throw Error.abort("必须先设置DataKeyField主键字段");for(var e=0,i=this._items.length;e<i;e++){var s=this._items[e];if(s.options.data&&s.options.data[this._dataKeyField]==t)return s;for(var n=0,o=s._lines.length;n<o;n++){var r=s._lines[n];if(r.options.data&&r.options.data[this._dataKeyField]==t)return r}}return null},modifyItem:function(t){if(!this._dataKeyField)throw Error.abort("必须先设置DataKeyField主键字段");var e=t[this._dataKeyField];if(e===undefined)throw Error.abort("主键值不能为空");var i=this.findItem(e);if(!i)return!1;if(i.set_data(t),this._dataTextField){var s=t[this._dataTextField];i.set_text(s)}return i},set_dataTextField:function(t){this._dataTextField=t},get_dataTextField:function(){return this._dataTextField},set_dataKeyField:function(t){this._dataKeyField=t},get_dataKeyField:function(){return this._dataKeyField},get_selectedItems:function(){var t=this.getItemsData(this._selectedItems);return this._curLine&&t.push(this._curLine.saveData()),t},getItemsData:function(t){var e=[];return Array.forEach(t,function(t,i){e.push(t.saveData())}),Object.clone(e)},refresh:function(t){this.clear(),t&&(this._convertListAlign(t),this._useFragment&&(this.fragment=$common.createFragment()),Array.forEach(t,function(t,e){this.addItem(t)},this),this.fragment&&this.get_element().appendChild(this.fragment),delete this.fragment,delete this._relationLines)},isBinding:function(){return this.fragment!==undefined},clear:function(){Array.forEach(this._items,function(t,e){t.dispose()}),this._crossLineV=null,this.get_element().innerHTML="",this._items=[],this._selectedItems=[]},hideResizer:function(t){Array.forEach(this._selectedItems,function(e,i){t!=e&&e.hideResizer(!0)}),this._selectedItems=[]},changeLocation:function(t,e,i){i&&this._moveCrossLine(i),Array.forEach(this._selectedItems,function(s,n){i!=s&&(s._startPos||(s._startPos=$Dom.getLocation(s.get_element())),s.location(s._startPos.x+t,s._startPos.y+e))})},removeSelectedItems:function(){if(this.removeItems(this._selectedItems),this._curLine){var t=this._curLine;t.get_item().removeLine(t),t.dispose(!0),delete this._curLine}this._selectedItems=[]},removeItems:function(t){if(this._showAddIcon()){var e=t[0],i=e._lines[0],s=e._rlines[0];if(i){var n=i._nextItem;n&&(n.removeRLine(i),s&&(n.addRLine(s),s._nextItem=n,s.dragResizerEnd()),this.locationNext(e,!1)),e._rlines=[]}else s&&(s.get_item().removeLine(s),s.dispose(!0))}return Array.forEach(t,function(t,e){Array.remove(this._items,t),t.dispose(!0)},this),!0},textAlign:function(t,e){Array.forEach(t,function(t,i){t.textAlign(e)})},itemColor:function(t,e,i){Array.forEach(t,function(t,s){t.setColor(e,i)})},_checkMouseLine:function(t,e,i){for(var s=!1,n=0,o=this._items.length;n<o;n++)for(var r=this._items[n],h=0,a=r._lines.length;h<a;h++){var l=r._lines[h];if(s)l.setBottom();else{var _=this.convertPos(t,e,l);(s=l._checkMouseLine(_,i))?l.setTop():l.setBottom()}}},_buildIndex:function(){return this._index++},_addRelation:function(t,e){if(this._relationLines||(this._relationLines=[]),t)for(var i=0,s=this._relationLines.length;i<s;i++){(e=this._relationLines[i]).options.next==t.options.index&&(t.addRLine(e,!0),e._nextItem=t)}else{for(var n=e.options.next,i=0,s=this._items.length;i<s;i++){if(n==(t=this._items[i]).options.index){t.addRLine(e,!0),e._nextItem=t;break}}this._relationLines.push(e)}},_doMenu:function(t){if(this._enabled){var e=this._menu;e||(e=this._careateMenu()),e.popupAt(t.clientX,t.clientY),t.cancel()}},_showAddIcon:function(){return $Dom.hasClass(this.get_element(),"Radius")},_doMouseDown:function(t){if(this._enabled)if(this._startSelectPos)this._doMouseUp(t);else{var e=t.target;this._curLine&&this._curLine.set_selected(!1),e._item?e._item._doMouseDown(t):0==t.button&&this.hideResizer(),0==t.button&&e==this.get_element()?this._startSelectPos={x:t.clientX,y:t.clientY}:delete this._startSelectPos,this._colorBlock&&this._colorBlock.set_visible(!1)}},_doMouseMove:function(t){if(this._enabled){var e=t.target;if(this._startSelectPos){var i={x:t.clientX,y:t.clientY};this._renderRect(this._startSelectPos,i)}else this.eventTarget?this.eventTarget._doMouseMove(t):e._item&&e._item._doMouseMove(t)}},_doMouseUp:function(t){if(this._enabled){this._startSelectPos&&(this._selectRectDom&&(this._doSelectItems(),$Dom.setVisible(this._selectRectDom,!1)),delete this._startSelectPos),this.eventTarget&&(this.eventTarget._doMouseUp(t),delete this.eventTarget);var e=t.target;if(!e.noclick){var i=e._item;if(i){if(!i.get_type){if(!i.get_item)return;i=i.get_item()}this.doItemClick(i,t)}}}},doItemClick:function(t,e){var i=this.get_events().getHandler("itemClick");if(i){var s=new _Z_257(t);s.event=e,i(this,s)}},_createRectDom:function(){return this._selectRectDom?$Dom.setVisible(this._selectRectDom,!0):this._selectRectDom=$common.createClassDiv("SelectRect"),this.get_element().appendChild(this._selectRectDom),this._selectRectDom},_doSelectItems:function(){var t=this._selectRectDom.style,e=parseFloat(t.left),i=parseFloat(t.top),s={x1:e,y1:i,x2:e+this._selectRectDom.offsetWidth,y2:i+this._selectRectDom.offsetHeight};Array.forEach(this._items,function(t){var e=t.getBounds();(e.x>=s.x1||e.x+e.width>=s.x1)&&e.x<=s.x2&&(e.y>=s.y1||e.y+e.height>=s.y1)&&e.y<=s.y2&&t.showResizer()},this)},_renderRect:function(t,e){var i=this._createRectDom(),s=Math.abs(t.x-e.x),n=Math.abs(t.y-e.y),o=Math.min(t.x,e.x),r=Math.min(t.y,e.y),h=this.convertPos(o,r);i.style.cssText=$common.styleToCssText({left:$common.pix(h.x),top:$common.pix(h.y),width:$common.pix(s),height:$common.pix(n)})},_doDblClick:function(t){this._enabled&&t.target._item&&t.target._item._doDblClick(t)},_careateMenu:function(){var t=this.get_id();window[t]=this;var e=this.get_form(),i=this.get_idPart()+"_menu",s=$createControl("PopupMenu",{ID:i,CssClass:$skin.joinCssClass("WorkflowMenu",this._menuCssClass),OnPopup:t+"._menuPopup"},e);$createControl("MenuItem",{Text:"新建",Icon:"aicon-add",CssClass:"item_xj",Visible:this._allowDrag,OnClick:t+"._itemCreate"},e,s),$createControl("MenuItem",{ID:"workItemDel",Text:"删除",CssClass:"item_sc",Icon:"aicon-shanchu",OnClick:t+"._itemDel"},e,s),$createControl("MenuItem",{ID:"workItemModify",Text:"修改",CssClass:"item_xg",Icon:"aicon-bianji1",OnClick:t+"._itemModify"},e,s),$createControl("MenuItem",{ID:"workItemCopy",Text:"复制",CssClass:"item_fz",Icon:"aicon-iconset0121",Visible:this._allowDrag,OnClick:t+"._itemCopy"},e,s),$createControl("MenuItem",{ID:"workItemPaste",Text:"粘贴",CssClass:"item_zt",Visible:this._allowDrag,Icon:"aicon-zhuanru",OnClick:t+"._itemPaste"},e,s);var n=$createControl("MenuItem",{ID:"workItemAlign",Text:"元素对齐",CssClass:"item_ysdq",BeginGroup:!0,Visible:this._allowDrag,Icon:"aicon-menu"},e,s);$createControl("MenuItem",{Text:"相同大小",Param:"size",Icon:"aicon-fenlei",OnClick:t+"._itemAlign"},e,n),$createControl("MenuItem",{Text:"相同宽度",Param:"width",Icon:"aicon-fenlei",OnClick:t+"._itemAlign"},e,n),$createControl("MenuItem",{Text:"相同高度",Param:"height",Icon:"aicon-fenlei",OnClick:t+"._itemAlign"},e,n),$createControl("MenuItem",{Text:"左对齐",Param:"left",Icon:"aicon-verticalright",BeginGroup:!0,OnClick:t+"._itemAlign"},e,n),$createControl("MenuItem",{Text:"水平均分",Param:"horzAvg",Icon:"aicon-column-width",OnClick:t+"._itemAlign"},e,n),$createControl("MenuItem",{Text:"右对齐",Param:"right",Icon:"aicon-verticalleft",OnClick:t+"._itemAlign"},e,n),$createControl("MenuItem",{Text:"顶部对齐",Param:"top",Icon:"aicon-vertical-align-top",OnClick:t+"._itemAlign",BeginGroup:!0},e,n),$createControl("MenuItem",{Text:"垂直均分",Param:"vertAvg",Icon:"aicon-colum-height",OnClick:t+"._itemAlign"},e,n),$createControl("MenuItem",{Text:"底部对齐",Param:"bottom",Icon:"aicon-vertical-align-botto",OnClick:t+"._itemAlign"},e,n);var o=$createControl("MenuItem",{ID:"workTextAlign",Text:" 文本对齐 ",CssClass:"item_wbdq",Enabled:!1,Visible:this._allowDrag,Icon:"aicon-align-left"},e,s);$createControl("MenuItem",{Icon:"aicon-align-left",Text:"文本左对齐",Param:"flex-start",OnClick:t+"._textAlign"},e,o),$createControl("MenuItem",{Text:"文本居中",Icon:"aicon-align-center",Param:"center",OnClick:t+"._textAlign"},e,o),$createControl("MenuItem",{Text:"文本右对齐",Icon:"aicon-align-right",Param:"flex-end",OnClick:t+"._textAlign"},e,o),$createControl("MenuItem",{Text:"文本竖向",Icon:"aicon-line-height",BeginGroup:!0,Param:"vert",OnClick:t+"._textAlign"},e,o),$createControl("MenuItem",{Text:"文本横向",Icon:"aicon-column-width",Param:"horz",OnClick:t+"._textAlign"},e,o);var r=$createControl("MenuItem",{ID:"workItemStyle",Text:"样式",CssClass:"item_ys",Enabled:!1,Visible:this._allowDrag,Icon:"aicon-bg-colors",OnSubMenu:t+"._stylePopup"},e,s);return $createControl("MenuItem",{Text:"文本色",Icon:"aicon-font-colors",Param:"color",OnClick:t+"._itemStyle"},e,r),$createControl("MenuItem",{Text:"背景色",Icon:"aicon-bg-colors",Param:"backgroundColor",OnClick:t+"._itemStyle"},e,r),$createControl("MenuItem",{Text:"边框色",Icon:"aicon-number",Param:"borderColor",OnClick:t+"._itemStyle"},e,r),$createControl("MenuItem",{ID:"workItemLineStyle",Text:"线条和箭头色",Icon:"aicon-rise",Param:"lineColor",Enabled:!1,OnClick:t+"._itemStyle"},e,r),r=$createControl("MenuItem",{Text:"另存为图片",CssClass:"item_lcwtp",Icon:"aicon-image-fill",Visible:this._allowDrag,BeginGroup:!0},e,s),$createControl("MenuItem",{Text:"带网格的图片",Param:"grid",OnClick:t+"._saveImg"},e,r),$createControl("MenuItem",{Text:"白色背景的图片",Param:"white",OnClick:t+"._saveImg"},e,r),$createControl("MenuItem",{Text:"透明背景的图片",Param:"transparent",OnClick:t+"._saveImg"},e,r),$createControl("MenuItem",{Text:"切换网格",CssClass:"item_qhwg",Visible:this._allowDrag,Icon:"aicon-number",OnClick:t+"._showGridBg"},e,s),$createControl("MenuItem",{Text:"清空画布",CssClass:"item_qkhb",Icon:"aicon-close",OnClick:t+".clear"},e,s),s.appendTo(document.body),this._menu=e[i]},_menuPopup:function(t,e){this._doMenuEvent(window.event);var i=this.get_form(),s=this._selectedItems.length;i.workItemDel.set_enabled(s>0||this._curLine),i.workItemModify.set_enabled(1==s),i.workItemAlign.set_enabled(s>1),i.workTextAlign.set_enabled(s>0),i.workItemStyle.set_enabled(s>0||this._curLine),i.workItemCopy.set_enabled(s>0),i.workItemPaste.set_enabled(this._copyItems!=undefined)},_stylePopup:function(t,e){this.get_form().workItemLineStyle.set_enabled(!!this._curLine)},_doMenuEvent:function(t){if((t=window.event)&&t.target){this._savePos={x:t.clientX,y:t.clientY};var e=t.target.control;e&&_Z_260.isInstanceOfType(e)&&(e.isResizer()||(this.hideResizer(e),e.showResizer()))}},_itemCreate:function(t,e){var i=this._savePos?this._savePos:{x:e.clientX,y:e.clientY};this._doBeforeAdd(e,i,this,"menu")},_emitDragLeave:function(t,e){this._draging=!1},_doBeforeAdd:function(t,e,i,s,n,o){var r=this.get_events().getHandler("beforeAdd");if(!r){var h=this.addItem(e);return o&&o(h),h}var a=new _Z_255(this,e,i,s,n);return a.event=t,a.callback=o,r(this,a),a.getItem()},set_viewPoint:function(t,e){this._startX=t,this._startY=e},get_item:function(t){return this._items[t]},alignItems:function(){if(!(this._items.length<1)){var t=this._calcNewPoint();if(t){$Dom.addCssClass(this.get_element(),"Ani"),Array.forEach(this._items,function(e,i){e.changeOffset(t.x,t.y),Array.forEach(e._lines,function(e,i){e.changeOffset(t.x,t.y)})});var e=this.get_element();setTimeout(function(){$Dom.removeCssClass(e,"Ani")},300)}}},_convertListAlign:function(t){if(0!=this.get_element().offsetWidth){var e=this._calcNewPoint(t);e&&Array.forEach(t,function(t,i){t.x-=e.x,t.y-=e.y,Array.forEach(t.lines,function(t,i){t.x-=e.x,t.y-=e.y})})}},_calcNewPoint:function(t){if(this.get_mode()==Sys.WorkMode.design)return null;if(-1==this._hAlign&&-1==this._vAlign)return null;var e=!t,i=this.get_element(),s=e?i.offsetWidth:i.scrollWidth,n=e?i.offsetHeight:i.scrollHeight;if(0==s||0==n)return null;e&&(t=this.saveData());var o=this._calcViewBounds(t),r=0;this._hAlign==_Z_241.left?r=o.x:this._hAlign==_Z_241.center?(r=Math.max(0,(s-o.width)/2),r=o.x-r):this._hAlign==_Z_241.right&&(r=Math.max(0,s-o.width),r=o.x-r);var h=0;return this._vAlign==_Z_242.top?h=o.y:this._vAlign==_Z_242.middle?(h=Math.max(0,(n-o.height)/2),h=o.y-h):this._vAlign==_Z_242.bottom&&(h=Math.max(0,n-o.height),h=o.y-h),{x:r,y:h}},_toViewportBounds:function(t){var e=this.get_element();if(t.width=e.scrollWidth,t.height=e.scrollHeight,!(Object.isUndefinedOrNull(this._startX)&&Object.isUndefinedOrNull(this._startY)||0==t.length)){var i=this._calcViewBounds(t);Array.forEach(t,function(t,e){t.x-=i.x,t.y-=i.y,Array.forEach(t.lines,function(t,e){t.x-=i.x,t.y-=i.y})}),t.width=i.width,t.height=i.height}},_calcViewBounds:function(t){var e=99999999,i=99999999,s=0,n=0;return Array.forEach(t,function(t,o){e=Math.min(t.x,e),i=Math.min(t.y,i),s=Math.max(t.x+t.width,s),n=Math.max(t.y+t.height,n)},this),n+=10,s+=10,e-=10,i-=10,{x:e,y:i,width:s-e,height:n-i}},_saveImg:function(t,e){var i=t.get_param();this["export"](i)},"export":function(t){var e=this._toCanvas(t),i=this.get_events().getHandler("saveImage"),s={};i&&i(this,s);var n=".jpg",o="image/jpeg";if("transparent"==t&&(n=".png",o="image/png"),s.fileName)s.fileName=s.fileName+n;else{var r=new Date;s.fileName=r._format("yyyyMMddHHmmss")+n}var h=e.toDataURL(o);$common.saveImage(h,s.fileName)},_toCanvas:function(t){var e=document.createElement("canvas"),i=(this.get_element(),this.saveData(!0));this._toViewportBounds(i);var s=i.width,n=i.height;e.width=s,e.height=n;var o=e.getContext("2d");if("transparent"!=t&&(o.fillStyle="#fff",o.fillRect(0,0,s,n)),"grid"==t){o.beginPath();for(r=15;r<n-15;r+=15)o.moveTo(0,r),o.lineTo(s,r);for(var r=15;r<s-15;r+=15)o.moveTo(r,0),o.lineTo(r,n);o.lineWidth=.8,o.lineJoin="round",o.strokeStyle="#eee",o.stroke()}return Array.forEach(i,function(t,e){o.beginPath(),o.rect(t.x,t.y,t.width,t.height),o.strokeStyle=t.borderColor,o.lineWidth=1,o.stroke(),o.beginPath(),o.fillStyle=t.backgroundColor,o.fillRect(t.x,t.y,t.width,t.height),o.font="normal 12px 微软雅黑",o.textAlign="center",o.textBaseline="middle",o.fillStyle=t.color,o.fillText(t.text,t.x+t.width/2,t.y+t.height/2);var i=t.lines;Array.forEach(i,function(e,i){o.beginPath(),$craba.paintLine(o,e.points,e.x,e.y),o.lineWidth=1,o.lineJoin="round",o.strokeStyle="#999",o.stroke(),o.beginPath(),$craba.paintLine(o,e.arrowPoints,e.x,e.y),o.fillStyle="#999",o.fill(),o.font="normal 12px 微软雅黑",o.textAlign="left",o.textBaseline="top",o.fillStyle=t.color,o.fillText(e.text,e.textPos.x+e.x,e.textPos.y+10+e.y)},this)},this),e},_itemDel:function(t,e){this._doRemove(this._selectedItems)},_doRemove:function(t){var e=this.get_events().getHandler("beforeDelete");if(!e)return this.removeItems(t);var i=new _Z_152;return i.data=this.getItemsData(t),e(this,i),!i.get_cancel()&&this.removeItems(t)},locationNext:function(t,e){if(!(t._lines.length<1)){var i=t._lines[0];i.dragResizerEnd();var s=i._nextItem;if(s){var n=t.getBounds(),o=s.getBounds(),r=n.height+this._itemDistanse;e||(r*=-1),s.location(o.x,o.y+r,!0),this.locationNext(s,e)}}},_itemModify:function(t,e){this._selectedItems[0].doModify()},_itemCopy:function(t,e){this._copyItems=this._selectedItems},_itemPaste:function(t,e){this.hideResizer(),Array.forEach(this._copyItems,function(t,e){var i=t.saveData(!0);i.x+=10,i.y+=10,i.notSelected=!0;this.addItem(i).showResizer()},this),delete this._copyItems},_itemAlign:function(t,e){var i=this._selectedItems[0],s=i.getBounds();i._isSelf=!0;var n=t.get_param();if("size"==n)Array.forEach(this._selectedItems,function(t,e){t!=i&&t.setBounds(s.width,s.height)});else if("height"==n)Array.forEach(this._selectedItems,function(t,e){t!=i&&t.setBounds(null,s.height)});else if("width"==n)Array.forEach(this._selectedItems,function(t,e){t!=i&&t.setBounds(s.width,null)});else if("left"==n)Array.forEach(this._selectedItems,function(t,e){t!=i&&t.location(s.x,null,!0)});else if("horzAvg"==n){h=[];Array.addRange(h,this._selectedItems),h.sort(function(t,e){var i=t.getBounds(),s=e.getBounds();return i.x>s.x}),i=h[0];a=h[h.length-1];s=i.getBounds();var o=(l=a.getBounds().x-s.x)/(h.length-1),r=s.x;Array.forEach(h,function(t,e){t!=i&&t!=a&&(r+=o,t.location(r,null,!0))})}else if("right"==n)Array.forEach(this._selectedItems,function(t,e){if(t!=i){var n=t.getBounds(),o=s.x+s.width-n.width;t.location(o,null,!0)}});else if("top"==n)Array.forEach(this._selectedItems,function(t,e){t!=i&&t.location(null,s.y,!0)});else if("vertAvg"==n){var h=[];Array.addRange(h,this._selectedItems),h.sort(function(t,e){var i=t.getBounds(),s=e.getBounds();return i.y>s.y}),i=h[0];var a=h[h.length-1];s=i.getBounds();var l=a.getBounds().y-s.y,o=l/(h.length-1),_=s.y;Array.forEach(h,function(t,e){t!=i&&t!=a&&(_+=o,t.location(null,_,!0))})}else"bottom"==n&&Array.forEach(this._selectedItems,function(t,e){if(t!=i){var n=t.getBounds(),o=s.y+s.height-n.height;t.location(null,o,!0)}});delete i._isSelf},_textAlign:function(t,e){var i=t.get_param();this.textAlign(this._selectedItems,i)},_itemStyle:function(t,e){var i=t.get_param(),s=this._colorPopup();s.set_visible(!0);var n=getClientBounds(),o=s.get_element();$Dom.setLocation(o,n.width/2-150,n.height/2-100),this._styleName=i},_colorPopup:function(){var t=this._colorBlock;if(t)return this._colorBlock;var e=this.get_id(),i=this.get_idPart()+"_colorBlock",s=this.get_form();$createControl("ColorBlock",{ID:i,Width:300,OnChange:e+"._selectColor",CssClass:"WorkColorPopup",CssStyle:"z-index:"+$app.getPopupElementZIndex()},s).appendTo(document.body),t=this._colorBlock=s[i],this.dragBlock=new Sys.DragBlock({self:!0,cachePos:!1,id:i+"drag",control:t});var n=$common.createDiv();return n.style.cssText="color:#aaa;padding:5px;text-align:center;",n.innerText="双击任意色块或点击空白处可关闭取色器",t.get_element().appendChild(n),$common.addDblClickHandler(t.get_element(),this._selectColor,this),t},_selectColor:function(t){var e=this._colorBlock;t.get_text||e.set_visible(!1),this._curLine?this._curLine.setColor(this._styleName,e.get_text()):this.itemColor(this._selectedItems,this._styleName,e.get_text())},_showGridBg:function(t,e){$Dom.toggleCssClass(this.get_element(),"ShowGrid")},_itemSelected:function(t,e){Array.remove(this._selectedItems,t),e&&Array.add(this._selectedItems,t)},_itemEndDrag:function(t,e){Array.forEach(this._selectedItems,function(t,e){delete t._startPos}),this._hideCrossLine()},_appendDom:function(t){if(!this.fragment)return this.get_element().appendChild(t);this.fragment.appendChild(t)},_dragClass:function(t,e){$Dom.setCssClass(t,this._element,e)},_emitDragMove:function(t,e){},_emitDragEnd:function(t,e){var i={x:t.clientX,y:t.clientY};this._doBeforeAdd(t,i,e,"drag")},_hideCrossLine:function(){$Dom.removeCssClass(this.get_element(),"ShowLine")},_showCrossLine:function(){$Dom.addCssClass(this.get_element(),"ShowLine"),this._crossLineV||(this._crossLineV=this._createLine("CrossLine Vert"),this._crossLineV2=this._createLine("CrossLine Vert"),this._crossLineH=this._createLine("CrossLine Horz"),this._crossLineH2=this._createLine("CrossLine Horz"))},_createLine:function(t){var e=$common.createClassDiv(t);return this.get_element().appendChild(e),e},_moveCrossLine:function(t){if(this._crossLineV){var e=t.getBounds(),i=this.get_element();this._crossLineV.style.left=e.x+"px",this._crossLineV.style.top=i.scrollTop+"px",this._crossLineH.style.top=e.y+"px",this._crossLineH.style.left=i.scrollLeft+"px",this._crossLineV2.style.left=e.x+e.width-1+"px",this._crossLineV2.style.top=i.scrollTop+"px",this._crossLineH2.style.top=e.y+e.height-1+"px",this._crossLineH2.style.left=i.scrollLeft+"px"}},convertPos:function(t,e,i){i=i||this;var s=$Dom.getLocation(i.get_element());return t-=s.x,e-=s.y,{x:t,y:e}},doLineDragEnd:function(t){var e=this.get_events().getHandler("lineDragEnd");if(e){e(this,new _Z_258(t))}},set_mode:function(t){this._mode=t,this.get_isInitialized()&&this.fireEvent()},get_mode:function(){return this._mode},set_dataSource:function(t){this._dataSource=t},get_dataSource:function(){return this._dataSource},get_allowDrop:function(){return this._allowDrop},set_allowDrop:function(t){this._allowDrop=t},add_itemClick:function(t){this.get_events().addHandler("itemClick",t)},remove_itemClick:function(t){this.get_events().removeHandler("itemClick",t)},add_itemRendering:function(t){this.get_events().addHandler("itemRendering",t)},remove_itemRendering:function(t){this.get_events().removeHandler("itemRendering",t)},add_beforeAdd:function(t){this.get_events().addHandler("beforeAdd",t)},remove_beforeAdd:function(t){this.get_events().removeHandler("beforeAdd",t)},add_lineDragEnd:function(t){this.get_events().addHandler("lineDragEnd",t)},remove_lineDragEnd:function(t){this.get_events().removeHandler("lineDragEnd",t)},add_beforeDelete:function(t){this.get_events().addHandler("beforeDelete",t)},remove_beforeDelete:function(t){this.get_events().removeHandler("beforeDelete",t)},add_beforeModify:function(t){this.get_events().addHandler("beforeModify",t)},remove_beforeModify:function(t){this.get_events().removeHandler("beforeModify",t)},add_saveImage:function(t){this.get_events().addHandler("saveImage",t)},remove_saveImage:function(t){this.get_events().removeHandler("saveImage",t)}},Sys.UI.Controls.Workflow.registerClass("Sys.UI.Controls.Workflow",Sys.UI.Control),_Z_259=function(t){_Z_259.initializeBase(this),this.options=t},_Z_259.prototype={dispose:function(t){this._resizer&&this._resizer.dispose(),this._dragHelper&&this._dragHelper.dispose(),this._element&&$clearHandlers(this._element),t&&$removeNode(this.get_element()),_Z_259.callBaseMethod(this,"dispose")},setPos:function(t,e){var i=this.get_element();null!==t&&(i.style.left=(t>=0?t:2)+"px"),null!==e&&(i.style.top=(e>=0?e:2)+"px")},setColor:function(t,e){this.options[t]=e,this.initStyle(!0)},get_index:function(){return this._index?this._index:this._index=this.get_flow()._buildIndex()},set_flow:function(t){this._flow=t},get_flow:function(){return this._flow},get_element:function(){return this._element},get_textElement:function(){return this.get_element().textNode},get_text:function(){return this.get_textElement().innerHTML},set_text:function(t){var e;if(this._inited&&"item"==this.get_type()&&this.get_flow()._showAddIcon()&&(e=this.getBounds()),this.options.text=t,this.get_textElement().innerHTML=t,e){var i=this.getBounds(),s=i.x+(e.width-i.width)/2;this.setPos(s,e.y)}},set_data:function(t){this.options.data=t},get_data:function(t){return t?Object.clone(this.options.data):this.options.data},getBounds:function(t){var t=t||this.get_element(),e={};return e.width=t.offsetWidth,e.height=t.offsetHeight,e.x=parseInt(t.style.left),e.y=parseInt(t.style.top),e},changeOffset:function(t,e){var i=this.get_element();i.style.left=parseInt(i.style.left)-t+"px",i.style.top=parseInt(i.style.top)-e+"px"},_doMouseMove:function(t){},_doDblClick:function(t){this.doModify()},doModify:function(){var t=this.get_flow(),e=t.get_events().getHandler("beforeModify");if(e){e(t,new _Z_256(this))}},_doSaveItemText:function(t){if(null!==t)return""==t?$common.showError("修改无效,不能输入空值",{dispose:!1}):void(t!=this.get_text()&&this.set_text(t))},doItemRender:function(){var t=this.get_flow().get_events().getHandler("itemRendering");if(t){t(this,new _Z_257(this))}}},_Z_259.registerClass("_Z_259",_Z_233),_Z_260=function(t){this.options=Object.copyTo(t,{text:"新建节点",self:!0,x:20,y:20}),this._lines=[],this._rlines=[],_Z_260.initializeBase(this,[this.options])},_Z_260.prototype={dispose:function(t){Array.forEach(this._lines,function(e,i){e.dispose(t)}),Array.forEach(this._rlines,function(t,e){t._nextItem=null}),this._lines=null,this._rlines=null,_Z_260.callBaseMethod(this,"dispose",[t])},get_type:function(){return"item"},saveData:function(t,e){this.get_element();var i=this.getBounds(),s={},n=this._domStyle(e);return Object.copyTo(i,s),s.type=this.get_type(),s.text=this.get_text(),s.textAlign=this.options.textAlign,s.textVert=this.options.textVert,n.backgroundColor&&(s.backgroundColor=n.backgroundColor),n.borderColor&&(s.borderColor=n.borderColor),n.color&&(s.color=n.color),s.radius=n.radius,s.index=this.get_index(),s.data=this.options.data,s.cssClass=this.options.cssClass,t?Object.clone(s):(s.lines=this.saveLines(),s)},_domStyle:function(t){if(!t)return{backgroundColor:this.options.backgroundColor||"",borderColor:this.options.borderColor||"",color:this.options.color||"",radius:4};var e=$Dom._getCurrentStyle(this.get_element());return{backgroundColor:e.backgroundColor,borderColor:e.borderColor,color:e.color,radius:e.borderRadius}},defaultCssName:function(){return"WorkItem"},paint:function(){if(!this._inited){var t=this.get_flow()._showAddIcon()&&this.options.lines&&this.options.lines.length>0?"HasNext":null,e=$skin.joinCssClass(this.defaultCssName(),this.options.cssClass,t),i=this._element=$common.createClassDiv(e);i.control=this,i._item=this;var s=$common.createClassDiv("ItemText");s.innerHTML=this.options.text,s.control=this,i.textNode=s,i.textNode._item=this,i.appendChild(s),this.initTextAlign(),this.initStyle(),(this.get_flow().get_allowResize()||$dom.hasClass(i,"Group"))&&(this.options.width&&$common.setWidth(i,this.options.width),this.options.height&&$common.setHeight(i,this.options.height)),this.setPos(this.options.x,this.options.y);var n=this.get_flow();n._appendDom(i),this.options.index&&n._addRelation(this),this.drawLines(),n.isBinding()||n.get_mode()!=Sys.WorkMode.design||this.options.notSelected||(n.hideResizer(this),this.showResizer()),this.fireEvent(),this.doItemRender(),this._inited=!0}},fireEvent:function(){if(this.get_flow().get_mode()==Sys.WorkMode.design){if(this._dragHelper)return;if(!this.get_flow().get_allowDrag())return;var t=this.get_element(),e=this._dragHelper=_Z_51.create(t,t);e.add_beforeDrag(this._beforeDrag,this),e.add_startDrag(this._startDrag,this),e.add_moveDrag(this._moveDrag,this),e.add_endDrag(this._endDrag,this)}else this._dragHelper&&(this._dragHelper.dispose(),delete this._dragHelper,this.hideResizer())},locationItem:function(t,e,i){if(i)this._isSelf=!0;else{var s=this.get_flow().convertPos(t,e);t=s.x,e=s.y,delete this._isSelf,this._beforeMoveLine()}this.setPos(t,e),i&&this._beforeMoveLine()},location:function(t,e,i){this.locationItem(t,e,i),this._moveLine()},drawLines:function(){var t=this.options.lines;t&&Array.forEach(t,function(t,e){this.createLine(t)},this)},createLine:function(t,e){t&&(e=t.dot);var i=new _Z_261(this,e);return i.set_flow(this.get_flow()),i.init(t),this.addLine(i),i},setBounds:function(t,e){var i=this.get_element();t&&$common.setWidth(i,t),e&&$common.setHeight(i,e)},textAlign:function(t){"vert"==t?this.options.textVert=!0:"horz"==t?this.options.textVert=!1:this.options.textAlign=t,this.initTextAlign()},initTextAlign:function(){var t=this.get_element();this.options.textVert?t.textNode.style.width="18px":t.textNode.style.width="auto",this.options.textAlign&&(t.style.justifyContent=this.options.textAlign)},initStyle:function(){var t=this.get_element();this.options.backgroundColor&&(t.style.backgroundColor=this.options.backgroundColor),this.options.borderColor&&(t.style.borderColor=this.options.borderColor),this.options.color&&(t.style.color=this.options.color)},addLine:function(t){this._lines.push(t),this.get_flow()._showAddIcon()&&this._checkLineCss(t)},addRLine:function(t,e){this.removeRLine(t),this._rlines.push(t),e&&this.get_flow()._showAddIcon()&&$Dom.addCssClass(this.get_element(),"HasPrev")},removeLine:function(t){if(Array.remove(this._lines,t),this.get_flow()._showAddIcon()){$Dom.setCssClass(this._lines.length>0,this.get_element(),"HasNext");var e=!1,i=!1;Array.forEach(this._lines,function(t,s){"right"==t._startPosType?e=!0:"bottom"==t._startPosType&&(i=!0)},this),$Dom.setCssClass(e,this.get_element(),"HasRight"),$Dom.setCssClass(i,this.get_element(),"HasBottom")}},_checkLineCss:function(t,e){var i="";"right"==t._startPosType?i="HasRight":"bottom"==t._startPosType&&(i="HasBottom"),$Dom.addCssClass(this.get_element(),i)},removeRLine:function(t){Array.remove(this._rlines,t),this.get_flow()._showAddIcon()&&$Dom.setCssClass(this._rlines.length>0,this.get_element(),"HasPrev")},saveLines:function(){var t=[];return Array.forEach(this._lines,function(e,i){t.push(e.saveData())}),t},_beforeDrag:function(t,e){this.get_flow().get_enabled()?e.target._isWorkResizer&&(e.hasCancel=!0):e.hasCancel=!0},_startDrag:function(t){this.get_flow().get_enabled()&&this.get_flow()._showCrossLine()},_moveDrag:function(t,e){this.get_flow().get_enabled()&&(this.location(e.elementPos.x+e.offsetX,e.elementPos.y+e.offsetY),this.isResizer()&&this.get_flow().changeLocation(e.offsetX,e.offsetY,this),e.event.preventDefault())},_moveLine:function(){Array.forEach(this._lines,function(t,e){t.isLock()||t.move()}),Array.forEach(this._rlines,function(t,e){t.move()})},_beforeMoveLine:function(){Array.forEach(this._lines,function(t,e){t.isLock()||t.beforeMove()}),Array.forEach(this._rlines,function(t,e){t.beforeMove(!0)})},_endDrag:function(t){this.get_flow()._itemEndDrag()},_doMouseDown:function(t){this.isResizer()||(t.ctrlKey||this.get_flow().hideResizer(this),this.showResizer())},hideResizer:function(t){this._resizer&&(this._resizer.hide(),!0!==t&&this.get_flow()._itemSelected(this,!1))},isResizer:function(){return!!this._resizer&&this._resizer.isShow()},showResizer:function(){if(this.get_flow().get_enabled()){var t=this._resizer;this._resizer||(t=this._resizer=new _Z_262(this)),this.get_flow()._itemSelected(this,!0),t.show()}},doAddNext:function(t,e,i){var s={x:100,y:100,self:!0},n=this.getBounds(),o=this.get_flow(),r=o._itemDistanse;"right"==e?(s.x=n.x+n.width+r,s.distance=r,s.y=n.y):"bottom"==e&&(s.x=n.x,s.y=n.y+n.height+r,s.distance=r),o._doBeforeAdd(t,s,o,e,this,i)}},_Z_260.registerClass("_Z_260",_Z_259),_Z_261=function(t,e){_Z_261.initializeBase(this),this._item=t,this._startPosType=e,this._nextDot,this._selected=!1,this._lineWidth=1,this._minHeight=20,this._minWidth=20,this._startWidth=20,this._arrowHeight=8,this._startXY=5,this._selectedLineColor="#666",this._defaultLineColor=t.get_flow().get_lineColor(),this._lineColor=this._defaultLineColor,this._arrowType=0,this.points=[],this.arrowPoints=[],this.options={dash:t.get_flow().get_isDash()}},_Z_261.prototype={dispose:function(t){t&&this._nextItem&&this._nextItem.removeRLine(this),_Z_261.callBaseMethod(this,"dispose",[t])},setTop:function(){this.get_element().style.zIndex=4},setBottom:function(){this.get_element().style.zIndex=3},set_item:function(t){this._item=t},get_type:function(){return"line"},set_text:function(t){_Z_261.callBaseMethod(this,"set_text",[t]);var e=this.get_textElement();$Dom.setCssClass(!t,e,"dnone")},defaultCssName:function(){return"WorkLine"},saveData:function(t){this.get_element();var e=this.getBounds(),i={};return Object.copyTo(e,i),i.type=this.get_type(),i.text=this.get_text(),i.dot=this._startPosType,i.points=this.points,i.arrowPoints=this.arrowPoints,i.textPos=this.getTextPos(),i.data=this.options.data,i.index=this.get_index(),i.lineColor=this.options.lineColor,i.cssClass=this.options.cssClass,i.arrowType=this.options.arrowType,i.textX=parseInt(this.get_textElement().style.left),i.textY=parseInt(this.get_textElement().style.top),i.next=this.get_nextItem()?this.get_nextItem().get_index():null,i.dash=this.options.dash,t?Object.clone(i):i},initStyle:function(t){var e=this.get_textElement();this.options.backgroundColor&&(e.style.backgroundColor=this.options.backgroundColor),this.options.borderColor&&(e.style.borderColor=this.options.borderColor),this.options.color&&(e.style.color=this.options.color),this.options.lineColor&&(this._lineColor=this._defaultLineColor=this.options.lineColor),this.options.arrowType&&(this._arrowType=this.options.arrowType),t&&this.paint(this.getBounds())},getTextPos:function(){var t={};return t.x=parseInt(this.get_textElement().style.left),t.y=parseInt(this.get_textElement().style.top),t},init:function(t){if(!this._inited){var e=$skin.joinCssClass(this.defaultCssName(),this.options.cssClass),i=this._element=$common.createClassDiv(e);i.unselectable="on";var s=this._line=document.createElement("canvas");s.className="Line",i.appendChild(s),s._item=this;var n=i.textNode=$common.createClassDiv("Text dnone");n._item=this,i.appendChild(n),this.ctx=s.getContext("2d"),this.get_flow()._appendDom(i),this.initStartPos(),this.renderByOptions(t),this.doItemRender(),this._inited=!0}},renderByOptions:function(t){if(t){t.cssClass&&$Dom.addCssClass(this.get_element(),t.cssClass),this.options=t,this.points=t.points,this.arrowPoints=t.arrowPoints,this._startWidth=this._calcStartWidth();var e={};e.x=t.x,e.y=t.y,e.width=t.width,e.height=t.height,this.initStyle(),this.set_text(t.text),this.set_width(e.width),this.set_height(e.height),this.paint(e),t.next&&this.get_flow()._addRelation(null,this)}else this.options={}},_doDblClick:function(t){var e=this._cursor;e&&"inherit"!=e&&this.get_flow().get_allowDrag()&&this.doModify()},_doMouseDown:function(t){var e=this.get_flow();this.set_selected(this._cursor&&"inherit"!=this._cursor&&!e._showAddIcon()),this._spliting=!1,this._draging=!1,this._textDraging=!1,"grab"==this._cursor?(this._textDraging=!0,e.eventTarget=this,this.initTextPos(t)):"move"==this._cursor?(this._draging=!0,e.get_element().style.cursor="move",this.initStartPos(),e.eventTarget=this):"ew-resize"!=this._cursor&&"ns-resize"!=this._cursor||(this._spliting=!0,this._splitValue=this._isVert()?t.clientY:t.clientX,e.eventTarget=this),e.hideResizer()},_isVert:function(){return"top"==this._startPosType||"bottom"==this._startPosType},_doMouseMove:function(t){if(this._spliting){this._splitingOk=!0;var e=this.getBounds();if("bottom"==this._startPosType){i=t.clientY-this._splitValue;i=this._startWidth+i,i=Math.max(15,i),i=Math.min(e.height-15,i),this.points[1].y=i,this.points[2].y=i}else if("right"==this._startPosType){i=t.clientX-this._splitValue;i=this._startWidth+i,i=Math.max(15,i),i=Math.min(e.width-15,i),this.points[1].x=i,this.points[2].x=i}else if("top"==this._startPosType){i=t.clientY-this._splitValue;i=e.height-this._startWidth+i,i=Math.max(15,i),i=Math.min(e.height-15,i),this.points[1].y=i,this.points[2].y=i}else if("left"==this._startPosType){var i=t.clientX-this._splitValue;i=e.width-this._startWidth+i,i=Math.max(15,i),i=Math.min(e.width-15,i),this.points[1].x=i,this.points[2].x=i}this.paint(e)}else if(this._draging){!this._startDrag&&this._nextItem&&(this._startDrag=!0,this._nextItem.removeRLine(this),delete this._nextItem);var s=this.get_flow().convertPos(t.clientX,t.clientY);this.repaint(this._startPos,s)}else{if(this._textDraging){var n=t.clientX-this._startTextPos.x,o=t.clientY-this._startTextPos.y,r=this._startTextPos.bounds.x+n,h=this._startTextPos.bounds.y+o;return this.options.textX=r,this.options.textY=h,void this.locationText(this.options.textX,this.options.textY)}this._timer&&(clearTimeout(this._timer),this._timer=null);var a={x:t.offsetX,y:t.offsetY},l=this;this._timer=setTimeout(function(){l._checkMouseLine(a,t)||l.get_flow()._checkMouseLine(t.clientX,t.clientY,t)},50)}},_checkMouseLine:function(t,e){var i="inherit",s={};return this._checkMouseInText(e)?i="grab":this._checkMouseInArrow(t)?i="move":(e&&e.target==this.get_textElement()||this._checkMouseInLine(t,s))&&(i=s.split?this._isVert()?"ns-resize":"ew-resize":"pointer"),this._cursor=i,this.get_element().style.cursor=i,"inherit"!=i},_calcStartWidth:function(){return this._isVert()?Math.abs(this.points[0].y-this.points[1].y):Math.abs(this.points[0].x-this.points[1].x)},_doMouseUp:function(t){delete this.get_flow().eventTarget,this._spliting&&(delete this._spliting,this._splitingOk&&(delete this._splitingOk,this._startWidth=this._calcStartWidth())),this._textDraging&&(this._textDraging=!1,this.get_flow().get_element().style.cursor=""),this._draging&&(this.get_flow().get_element().style.cursor="",this._draging=!1,this.dragResizerEnd())},set_selected:function(t){var e=this.get_flow()._curLine;e&&e!=this&&e.set_selected(!1),t!=this._selected&&(this._selected=t,t?(this._lineColor=this._selectedLineColor,this.get_flow()._curLine=this):(this._lineColor=this._defaultLineColor,delete this.get_flow()._curLine),this.paint(this.getBounds()))},_checkMouseInText:function(t){return t.target==this.get_textElement()},_checkMouseInArrow:function(t){var e=this.arrowPoints[0],i=this.arrowPoints[1],s=this.arrowPoints[2],n=(i.y-s.y)*(e.x-s.x)+(s.x-i.x)*(e.y-s.y),o=((i.y-s.y)*(t.x-s.x)+(s.x-i.x)*(t.y-s.y))/n,r=((s.y-e.y)*(t.x-s.x)+(e.x-s.x)*(t.y-s.y))/n,h=1-o-r;return o>=0&&o<=1&&r>=0&&r<=1&&h>=0&&h<=1},_checkMouseInLine:function(t,e){for(var i=!1,s=0,n=this.points.length;s+1<n;s++){var o=this.points[s],r=this.points[s+1],h=Math.abs(o.y-r.y),a=Math.abs(o.x-r.x),l=Math.abs(t.y-r.y),_=Math.abs(t.x-r.x);if(_<=a&&l<=h||_<=a+4&&l<=h+4){i=!0;break}}return 1==s&&i&&(e.split=!0),i},set_width:function(t){$common.setWidth(this._element,t),this._line.width=t},set_height:function(t){$common.setHeight(this._element,t),this._line.height=t},initTextPos:function(t){var e=this.getBounds(this.get_textElement());this._startTextPos={x:t.clientX,y:t.clientY,bounds:e}},initStartPos:function(){var t=this.get_item().getBounds(),e=t.x,i=t.y;this._startPos={left:e,top:i},"top"==this._startPosType?e+=t.width/2-this._lineWidth:"right"==this._startPosType?(e+=t.width,i+=t.height/2-this._lineWidth):"bottom"==this._startPosType?(e+=t.width/2-this._lineWidth,i+=t.height):i+=t.height/2-this._lineWidth,this._startPos.x=e,this._startPos.y=i,this._itemHeight=t.height,this._itemWidth=t.width},dragResizerEnd:function(){this.get_flow().doLineDragEnd(this),this.get_flow()._showAddIcon()&&$Dom.addCssClass(this.get_item().get_element(),"HasNext"),this._nextItem&&(this.get_flow()._showAddIcon()&&$Dom.setCssClass(this._nextItem._rlines.length>0,this._nextItem.get_element(),"HasPrev"),this.beforeMove(!0),this.move())},isLock:function(){return this._nextItem&&this._nextItem.isResizer()&&this.get_item().isResizer()&&!this._nextItem._isSelf&&!this.get_item()._isSelf},move:function(){if(this.isLock())return this.moveLocation();this.initStartPos(),this.repaint(this._startPos,this._lastPos,!0)},moveLocation:function(){var t=this.getBounds(),e=this.get_nextItem().getBounds(),i=e.x-(this._lastPos.x0!==undefined?this._lastPos.x0:this._lastPos.x),s=e.y-(this._lastPos.y0!==undefined?this._lastPos.y0:this._lastPos.y);this.location(t.x+i,t.y+s)},beforeMove:function(t){if(t||this._nextItem){var e=this.get_nextItem().getBounds();"right"==this._startPosType?this._lastPos={x:e.x,y:e.y+e.height/2+this._arrowHeight/2*(this._startPos.y>e.y?-2:1),x0:e.x,y0:e.y}:"bottom"==this._startPosType?this._lastPos={x:e.x+e.width/2-this._lineWidth,y:e.y,x0:e.x,y0:e.y}:"left"==this._startPosType?this._lastPos={x:e.x+e.width,y:e.y+e.height/2+this._arrowHeight/2*(this._startPos.y>e.y?-2:1),x0:e.x,y0:e.y}:"top"==this._startPosType&&(this._lastPos={x:e.x+e.width/2-this._lineWidth,y:e.y+e.height,x0:e.x,y0:e.y})}else this._lastPos||this.initLastPos()},initLastPos:function(){this.initStartPos();var t=this._startPos,e=this.getBounds(),i={},s=e.x+e.width;t.x<s?i.x=s:i.x=e.x;var n=e.y+e.height;t.y+2*this._lineWidth>=n?i.y=e.y:i.y=n,this._lastPos=i},get_item:function(){return this._item},get_nextItem:function(){return this._nextItem},_searchNext:function(t){var e=this._getEventItem();if(!e)return this._nextItem&&this._nextItem.removeRLine(this),this._nextItem=null;this._nextItem=e,e.addRLine(this)},_getEventItem:function(){for(var t=null,e=window.event.target;e&&"BODY"!=e.tagName;){if(e.control&&$Dom.hasClass(e,"WorkItem")){t=e.control;break}e=e.parentNode}return t},repaint:function(t,e,i){this.points=[],this.arrowPoints=[],i||this._searchNext(e);var s;"right"==this._startPosType?s=this._caclRight(t,e):"bottom"==this._startPosType?s=this._caclBottom(t,e):"left"==this._startPosType?s=this._caclLeft(t,e):"top"==this._startPosType&&(s=this._caclTop(t,e)),s&&(this.calcArrow(s),this.paint(s))},_caclRight:function(t,e){var i=this._startWidth,s=this._startXY,n=this._lineWidth,o=this._arrowHeight,r=Math.max(this._minHeight,Math.abs(t.x-e.x)),h=Math.max(this._minHeight,Math.abs(t.y-e.y));i>r&&(i=this._startWidth=this._minWidth);var a,l,_,c,d,u,g,m,f,y,p=t.y>e.y,x=t.x+i>e.x,C=this._startPos.x,v=this._startPos.y;if(!x&&h<=this._minHeight)h=this._minHeight,v=v-o+this._lineWidth,a=i,l=n=o,_=r-o,c=n;else if(x&&p){if(r+=i,s=r-i+s,n=h-this._lineWidth,a=r-this._lineWidth,l=n,_=a,c=o/2,h<this._itemHeight/2+i){w=h;n=(h=Math.max(h,this._itemHeight/2+i))-this._lineWidth,l=h-this._lineWidth,m=c,f=g=Math.max(0,_-this._itemWidth-2*i),d=o,u=y=h-w+o/2,v=v-h+2*this._lineWidth}else d=o,u=o/2,v=v-h+2*this._lineWidth;C-=s}else if(x&&!p)if(r+=i,s=r-i+s,C-=s,a=r-this._lineWidth,l=this._lineWidth,_=a,c=h-o/2,h<this._itemHeight/2+i){var w=h;c=this._itemHeight/2+i-this._lineWidth,h=Math.max(h,this._itemHeight/2+i),m=c,f=g=Math.max(0,_-this._itemWidth-2*i),d=o,u=y=w-o/2}else d=o,u=h-o/2;else p&&!x?(n=h-this._lineWidth,v=v-h+2*this._lineWidth,a=i,l=n,_=i,c=o/2,d=r-o,u=o/2):(a=i,l=this._lineWidth,_=a,c=h-o/2,d=r-o,u=h-o/2);this.set_width(r),this.set_height(h),this.points.push({x:s,y:n}),this.points.push({x:a,y:l}),this.points.push({x:_,y:c}),null!=g&&this.points.push({x:g,y:m}),null!=f&&this.points.push({x:f,y:y}),null!=d&&this.points.push({x:d,y:u});return{x:C,y:v,width:r,height:h}},_caclBottom:function(t,e){var i,s,n,o,r,h,a,l,_,c,d=this._startWidth,u=this._lineWidth,g=this._startXY,m=this._arrowHeight,f=Math.max(this._minHeight,Math.abs(t.x-e.x)),y=Math.max(this._minHeight,Math.abs(t.y-e.y)),p=t.y>e.y,x=t.x>e.x,C=this._startPos.x,v=this._startPos.y;if(!p&&f<=this._minHeight)f=this._minHeight,C=C-m+this._lineWidth,i=u=m,s=d,n=u,o=y-m;else if(x&&p){if(g=y-m-this._lineWidth,s=g+m,n=m,o=s,f<this._itemWidth/2+d){w=f;i=u=(f=Math.max(f,this._itemWidth/2+d))-this._lineWidth,a=n,c=l=Math.max(0,o-this._itemHeight-2*d),r=_=f-w+m/2,h=m}else i=u=f-this._lineWidth,r=m,h=m/2;C=C-u+this._lineWidth,v=v-y+m+this._lineWidth}else if(x&&!p)u=(f+=m/2+this._lineWidth)-this._lineWidth,C=C-f+2*this._lineWidth-.5,i=u,o=s=d,r=n=m/2,h=y-m;else if(p&&!x){if(u=this._lineWidth,g=y-m-this._lineWidth,i=u,s=g+m,o=s,f<this._itemWidth/2+d){var w=f;a=n=(f=Math.max(f,this._itemWidth/2+d))-m/2,c=l=Math.max(0,o-this._itemHeight-2*d),r=_=w-m/2,h=m}else r=n=f-m/2,h=m/2;v=v-y+m+this._lineWidth}else i=u,o=s=d,r=n=(f+=m/2+this._lineWidth)-m/2,h=y-m;this.set_width(f),this.set_height(y),this.points.push({x:u,y:g}),this.points.push({x:i,y:s}),this.points.push({x:n,y:o}),null!=a&&this.points.push({x:a,y:l}),null!=_&&this.points.push({x:_,y:c}),null!=r&&this.points.push({x:r,y:h});var I={x:C,y:v,width:f,height:y};return console.log(I),I},_caclLeft:function(t,e){var i,s,n,o,r,h,a,l,_,c,d=this._startWidth,u=this._lineWidth,g=this._arrowHeight,m=Math.max(this._minHeight,Math.abs(t.x-e.x)),f=Math.max(this._minHeight,Math.abs(t.y-e.y)),y=m,p=t.y>e.y,x=t.x>e.x,C=this._startPos.x-m,v=this._startPos.y-f;if(x&&f<=this._minHeight)f=this._minHeight,v=v+g+this._lineWidth,i=m-d,s=u=g,n=g,o=u;else if(x&&p)u=f-this._lineWidth,v+=2*this._lineWidth,s=u,n=i=m-d,o=g/2,r=g,h=g/2;else if(x||p)if(p&&!x){if(m+=d,C=C+m-2*d,y=d,i=this._lineWidth,n=i,o=g/2,f<this._itemHeight/2+d){w=f;v+=f,v-=f=Math.max(f,this._itemHeight/2+d),l=o,_=a=Math.min(m-g/2,n+this._itemWidth+2*d),r=m-g,h=c=f-w+g/2}else r=m-g,h=g/2;s=u=f-this._lineWidth,v+=2*this._lineWidth}else v+=f,i=m-d,s=this._lineWidth,n=i,r=g,h=o=f-g/2;else if(m+=d,y=d,C=C+m-2*d,v+=f,i=this._lineWidth,s=u,n=i,o=f-g/2,f<this._itemHeight/2+d){var w=f;o=this._itemHeight/2+d-this._lineWidth,f=Math.max(f,this._itemHeight/2+d),l=o,_=a=Math.min(m-g/2,n+this._itemWidth+2*d),r=m-g,h=c=w-g/2}else r=m-g,h=f-g/2;this.set_width(m),this.set_height(f),this.points.push({x:y,y:u}),this.points.push({x:i,y:s}),this.points.push({x:n,y:o}),null!=a&&this.points.push({x:a,y:l}),null!=_&&this.points.push({x:_,y:c}),null!=r&&this.points.push({x:r,y:h});return{x:C,y:v,width:m,height:f}},_caclTop:function(t,e){var i,s,n,o,r,h,a,l,_,c,d=this._startWidth,u=this._lineWidth,g=this._arrowHeight,m=Math.max(this._minHeight,Math.abs(t.x-e.x)),f=Math.max(this._minHeight,Math.abs(t.y-e.y)),y=f,p=t.y>e.y,x=t.x>e.x,C=this._startPos.x,v=this._startPos.y-f;if(p&&m<=this._minHeight)m=this._minHeight,C=C-g+this._lineWidth,i=u=g,s=d,n=u,o=0;else if(x||p)if(x&&p)C=C-(m+=g/2)+2*this._lineWidth,i=u=m-this._lineWidth,o=s=f-d,r=n=g/2,h=0;else if(!p&&x){if(u=m-this._lineWidth,y=d,i=u,s=this._lineWidth,o=s,m<this._itemWidth/2+d){w=m;m=Math.max(m,this._itemWidth/2+d),a=n=g/2,c=l=o+this._itemHeight+2*d,r=_=w-g/2,h=f-g}else r=n=g/2,h=f-g;C=C-u+this._lineWidth,v=v+f-d-this._lineWidth}else i=u,o=s=f-d,r=n=(m+=g/2)-g/2,h=0;else{if(y=d,u=this._lineWidth,i=u,s=this._lineWidth,o=s,h=f-g,m<this._itemWidth/2+d){var w=m;a=n=(m=Math.max(m,this._itemWidth/2+d))-g,c=l=Math.min(f,o+this._itemHeight+2*d),r=_=g/2}else r=n=m-g/2;C=C-u+this._lineWidth,v=v+f-d-this._lineWidth}this.set_width(m),this.set_height(f),this.points.push({x:u,y:y}),this.points.push({x:i,y:s}),this.points.push({x:n,y:o}),null!=a&&this.points.push({x:a,y:l}),null!=_&&this.points.push({x:_,y:c}),null!=r&&this.points.push({x:r,y:h});return{x:C,y:v,width:m,height:f}},calcArrow:function(t){var e,i,s,n,o,r,h=this.points[0],a=this.points[this.points.length-1],l=this._arrowHeight,_=l/2,c=8;"bottom"==this._startPosType||"top"==this._startPosType?(h.y>a.y&&(c*=-1),e=a.x-_,i=a.y-c,h.y>a.y?(n=a.y-l-c,t.top-=l):n=a.y+l-c,s=a.x,o=a.x+_,r=i):"right"!=this._startPosType&&"left"!=this._startPosType||(h.x>a.x&&(c*=-1),e=a.x-c,i=a.y-_,s=h.x>a.x?a.x-l-c:a.x+l-c,n=a.y,o=e,r=a.y+_),this.arrowPoints.push({x:e,y:i}),this.arrowPoints.push({x:s,y:n}),this.arrowPoints.push({x:o,y:r})},location:function(t,e){this.setPos(t,e)},paint:function(t){this.location(t.x,t.y),this.paintText();var e=this.ctx;if(e.clearRect(0,0,t.width,t.height),e.closePath(),e.beginPath(),$craba.paintLine(e,this.points),this.options.dash&&e.setLineDash([8,8]),e.lineWidth=this._lineWidth,e.lineJoin="round",e.strokeStyle=this._lineColor,e.stroke(),e.beginPath(),e.setLineDash([]),1==this._arrowType)$craba.paintLine(e,this.arrowPoints),e.lineWidth=this._lineWidth,e.strokeStyle=this._lineColor,e.stroke();else if(2==this._arrowType){var i=this.arrowPoints[1].x-3,s=this.arrowPoints[1].y;e.arc(i,s,3,0,2*Math.PI),e.lineWidth=this._lineWidth,e.strokeStyle=this._lineColor,e.stroke(),e.beginPath(),e.arc(i,s,2,0,2*Math.PI),e.fillStyle="#fff",e.fill()}else $craba.paintLine(e,this.arrowPoints),e.fillStyle=this._lineColor,e.fill()},paintText:function(){if(Object.isUndefinedOrNull(this.options.textX)){var t=this.points[0],e=this.points[1],i=this.points[2],s=e.x,n=i.y,o=(this._lineWidth,this.get_textElement());s=t.x<i.x?t.y==i.y?e.x:i.x:i.x-o.offsetWidth,n=i.y-o.offsetHeight,this.locationText(s,n)}else this.locationText(this.options.textX,this.options.textY)},locationText:function(t,e){this.get_textElement().style.left=t+"px",this.get_textElement().style.top=e+"px"}},_Z_261.registerClass("_Z_261",_Z_259),_Z_262=function(t){_Z_262.initializeBase(this),this._item=t,this._draging=!1,this._minWidth=30,this._minHeight=20,this.initialize()},_Z_262.prototype={initialize:function(){_Z_262.callBaseMethod(this,"initialize"),this.createResizer()},dispose:function(){this._element&&$clearHandlers(this._element),_Z_262.callBaseMethod(this,"dispose")},get_element:function(){return this._element},get_item:function(){return this._item},get_flow:function(){return this.get_item().get_flow()},createResizer:function(){this._frag=$common.createFragment(),this._createDot("FLeftTop FResizer DotResizer","nw-resize"),this._createDot("FRightTop FResizer DotResizer","ne-resize"),this._createDot("FLeftBottom FResizer DotResizer","sw-resize"),this._createDot("FRightBottom FResizer DotResizer","se-resize"),this._createDot("FLeft FResizer LineResizer","crosshair","left"),this._createDot("FRight FResizer LineResizer","crosshair","right"),this._createDot("FTop FResizer LineResizer","crosshair","top"),this._createDot("FBottom FResizer LineResizer","crosshair","bottom"),this.get_flow()._showAddIcon()&&(this._createDot("Add bottom aicon-add","pointer","bottom","新增竖直方向的下级",!0),this._createDot("Add del aicon-shanchu6","pointer","del","删除下级",!0));var t=this._element=$common.createClassDiv("WorkResizer");t._item=this,t.appendChild(this._frag),this.get_item().get_element().appendChild(t)},_createDot:function(t,e,i,s,n){var o=$common.createClassDiv(t);return o._isWorkResizer=!0,o.style.cursor=e,s&&(o.title=s),o.type=i,o._item=this,o.noclick=n,this._frag.appendChild(o),o},show:function(){$Dom.setVisible(this._element,!0)},hide:function(){$Dom.setVisible(this._element,!1)},isShow:function(){return $Dom.getVisible(this._element)},toggle:function(){this.isShow()?this.hide():this.show()},_doMouseDown:function(t){var e=t.target;if(e._isWorkResizer){this.get_flow().eventTarget=this,this._curResizer=e;"pointer"!=e.style.cursor&&(this._draging=!0,this._startPos={x:t.clientX,y:t.clientY},this._startSize=$Dom.getBounds(this.get_item().get_element()))}},_doMouseMove:function(t){if(this._draging&&!this.get_isDisposed()){var e={x:t.clientX,y:t.clientY};if(!(Math.abs(e.x-this._startPos.x)<5&&Math.abs(e.y-this._startPos.y)<5)){var i=this._curResizer.style.cursor;if("crosshair"==i)return this._curLine||(this._curLine=this.get_item().createLine(null,this._curResizer.type)),this._doPaintLine(this._startPos,e);var s=e.x-this._startPos.x,n=e.y-this._startPos.y,o=this._startSize.x-1,r=this._startSize.y-1;"nw-resize"==i?(o=s+o,r=n+r,s*=-1,n*=-1):"sw-resize"==i?(o=s+o,s*=-1):"ne-resize"==i&&(r=n+r,n*=-1),s=this._startSize.width+s,n=this._startSize.height+n,s=Math.max(s,this._minWidth),n=Math.max(n,this._minHeight);var h=this.get_item().get_element();$common.setWidth(h,s),$common.setHeight(h,n),this.get_item().location(o,r)}}},_doMouseUp:function(t){this.get_isDisposed()||(this._draging=!1,"pointer"!=this._curResizer.style.cursor?this._curLine&&(this._curLine.dragResizerEnd(),delete this._curLine):this._doButtonClick(t))},_doButtonClick:function(t){var e=this._curResizer.type;if("del"!=e){var i=this.get_item(),s=i.getBounds(),n=s.x+s.width/2,o=s.y+s.height/2,r=this.get_flow();i.doAddNext(t,e,function(t){var s;i._lines.length>0&&(s=i._lines.pop(),t.addLine(s),s.set_item(t),s.dragResizerEnd());var h=i.createLine(null,e);h._nextItem=t,t.addRLine(h),h.dragResizerEnd();var a=i.getBounds(),l=t.getBounds(),_=a.x,c=a.y,d=l.x,u=l.y;"right"==e?(c=o-a.height/2,u=o-l.height/2,d=a.x+a.width+t.options.distance):"bottom"==e&&(_=n-a.width/2,d=n-l.width/2,u=a.y+a.height+t.options.distance),i.location(_,c,!0),t.location(d,u,!0),r.locationNext(t,!0)})}else this.get_flow()._doRemove([this.get_item()])},_doPaintLine:function(t,e){this._curLine.repaint(t,e)},_doDblClick:function(t){this.get_item()._doDblClick(t)}},_Z_262.registerClass("_Z_262",_Z_233),Craba.UI.WorkChart=function(t){Craba.UI.WorkChart.initializeBase(this,[t])},Craba.UI.WorkChart.prototype={get_cssClass:function(){var t="FlexBlock Workflow WorkChart";return this._allowResize||(t+=" NoResize"),this._allowDraw||(t+=" NoLine"),t},endRender:function(t){t.writeEnd()},initScript:function(){Craba.UI.WorkChart.callBaseMethod(this,"initScript")},typeName:function(){return"WorkChart"}},Craba.UI.WorkChart.registerClass("Craba.UI.WorkChart",Craba.UI.Workflow),Sys.UI.Controls.WorkChart=function(t){Sys.UI.Controls.WorkChart.initializeBase(this,[t])},Sys.UI.Controls.WorkChart.prototype={initialize:function(){Sys.UI.Controls.WorkChart.callBaseMethod(this,"initialize"),this.render()},dispose:function(){Sys.UI.Controls.WorkChart.callBaseMethod(this,"dispose")},set_dataSource:function(t){this._dataSource=t,this.get_isInitialized()&&(this.clear(),this.render())},get_dataSource:function(){return this._dataSource},doFormLoaded:function(t){},doFormResized:function(){},refresh:function(t){this.set_dataSource(t)},clear:function(){this.get_element().innerHTML=""},_convertDataSource:function(){if(!this._dataSource||0==this._dataSource.length)return{};var t={},e=this._dataIdField,i=this._dataChildsField,s=0,n=function(i,n,r){for(var h=i.length-1;h>-1;h--){var a=i[h];a[e]==n&&(Array.removeAt(i,h),t[r]||(t[r]=[]),t[r].push(a))}r>s||(s=r,o(i,r))},o=function(e,r){var h=t[r];if(h){var a=r+1;h.forEach(function(t){t[i].forEach(function(t){n(e,t,a)})}),s=a,o(e,a)}};return n(Object.clone(this._dataSource),this._dataRootValue,0),t},render:function(){var t=this._convertDataSource(),e=this.get_element(),i=this._dataIdField,s=this._dataChildsField,n=this;this.items={};for(var o in t){(r=t[o]).forEach(function(t,s){var r=t[i],h=n._getFieldValue(t,n._dataCssField),a=n._getFieldValue(t,n._dataTextField),l=$common.createClassDiv($skin.joinCssClass("ellipsis WorkChartItem",h));l.setAttribute("_id",r),n.items[r]=l,l.innerText=a,l.style.left=$common.pix(250*o+50),l.style.top=$common.pix(100*s+50),e.appendChild(l)})}for(var o in t){var r=t[o];r.forEach(function(t,e){var o=t[s],r=t[i];o.forEach(function(t){n._buildLine(r,t)})})}},_buildLine:function(t,e){var i=this.items[t],s=this.items[e],n=this._getDomBounds(i),o=this._getDomBounds(s),r={isRight:n.x<o.x,isBottom:n.y<o.y};n.x==o.x?(r.x=n.x+n.width/2-5,r.width=10):n.x<o.x?(r.x=n.x+n.width,r.width=o.x-n.x-n.width):(r.x=o.x+o.width,r.width=n.x-o.x-o.width),n.y==o.y?(r.y=n.y+n.height/2,r.height=10):n.y<o.y?n.x==o.x?(r.y=n.y+n.height,r.height=o.y-n.y-n.height):(r.y=n.y+n.height/2,r.height=o.y+o.height/2-(n.y+n.height/2)):(r.down=!0,n.x==o.x?(r.y=o.y+o.height,r.height=n.y-o.y-o.height):(r.y=o.y+o.height/2,r.height=n.y+n.height/2-(o.y+o.height/2))),this._paintLine(r)},_paintLine:function(t){var e=document.createElement("canvas");e.className="WorkChartLine",$common.setPosition(e,t.x,t.y,t.width,t.height),e.width=t.width,e.height=t.height,this.get_element().appendChild(e);var i=e.getContext("2d");i.clearRect(0,0,t.width,t.height),i.closePath();var s=[{x:5,y:5},{x:10==t.width?5:t.width-5,y:10==t.height?5:t.height-5}];t.down&&(s[0].y=t.height-5,s[1].y=5);var n={x:0,y:0};10==t.width?n.x=s[0].x+3:n.x=s[1].x+3,10==t.height?n.y=s[0].y:n.y=s[1].y,i.beginPath(),$craba.paintLine(i,s),i.lineWidth=1,i.lineJoin="round",i.strokeStyle="#bbb",i.stroke(),i.beginPath(),i.setLineDash([]),i.arc(n.x-3,n.y,3,0,2*Math.PI),i.lineWidth=1,i.strokeStyle="#aaa",i.stroke(),i.beginPath(),i.arc(n.x-3,n.y,2,0,2*Math.PI),i.fillStyle="#fff",i.fill()},_getDomBounds:function(t){return{width:t.offsetWidth,height:t.offsetHeight,x:parseInt(t.style.left),y:parseInt(t.style.top)}},_doMouseUp:function(t){this._enabled&&this.doItemClick(t)},doItemClick:function(t){var e=this.get_events().getHandler("itemClick");if(e){var i=t.target;if($dom.hasClass(i,"WorkChartItem")&&!$dom.hasClass(i,"disabled")){var s=i.getAttribute("_id"),n={};n[this._dataIdField]=s;var o=Array.findByKey(this._dataSource,n,this._dataIdField);e(this,{event:t,data:n=this._dataSource[o]})}}},_getFieldValue:function(t,e){return e?t[e]:""},get_dataRootValue:function(){return this._dataRootValue},set_dataRootValue:function(t){this._dataRootValue=t},get_dataIdField:function(){return this._dataIdField},set_dataIdField:function(t){this._dataIdField=t},get_dataChildsField:function(){return this._dataChildsField},set_dataChildsField:function(t){this._dataChildsField=t},get_dataTextField:function(){return this._dataTextField},set_dataTextField:function(t){this._dataTextField=t},get_dataCssField:function(){return this._dataCssField},set_dataCssField:function(t){this._dataCssField=t}},Sys.UI.Controls.WorkChart.registerClass("Sys.UI.Controls.WorkChart",Sys.UI.Controls.Workflow);
7
+ Craba.UI.FzDressGrid=function(e){Craba.UI.FzDressGrid.initializeBase(this,[e])},Craba.UI.FzDressGrid.prototype={typeName:function(){return"FzDressGrid"},initScript:function(){Craba.UI.FzDressGrid.callBaseMethod(this,"initScript"),this.addProp("displayMode",this._displayMode,Sys.Dress.DressDisplayMode.detail)},set_displayMode:function(e){this._displayMode=this.get_enumTypeValue(Sys.Dress.DressDisplayMode,e)}},Craba.UI.FzDressGrid.registerClass("Craba.UI.FzDressGrid",Craba.UI.Grid),Craba.UI.FzDressTreeGrid=function(e){Craba.UI.FzDressTreeGrid.initializeBase(this,[e])},Craba.UI.FzDressTreeGrid.prototype={typeName:function(){return"FzDressTreeGrid"}},Craba.UI.FzDressTreeGrid.registerClass("Craba.UI.FzDressTreeGrid",Craba.UI.FzDressGrid),Type.registerNamespace("Sys.Dress"),Sys.Dress.DressDisplayMode=function(){throw Error.notImplemented()},Sys.Dress.DressDisplayMode.prototype={master:0,standard:1,detail:2},Sys.Dress.DressDisplayMode.registerEnum("Sys.Dress.DressDisplayMode"),_Z_280=function(e){_Z_280.initializeBase(this),this._sizes=e},_Z_280.prototype={get_sizes:function(){return this._sizes},set_sizes:function(e){this._sizes=e}},_Z_280.registerClass("_Z_280",Sys.EventArgs),Sys.Dress.MergeEventArgs=function(){Sys.Dress.MergeEventArgs.initializeBase(this),this._mergeFields=[]},Sys.Dress.MergeEventArgs.prototype={get_mergeFields:function(){return this._mergeFields},add_mergeField:function(e){e&&Array.add(this._mergeFields,e)}},Sys.Dress.MergeEventArgs.registerClass("Sys.Dress.MergeEventArgs",Sys.EventArgs),_Z_279=function(e,t){_Z_279.initializeBase(this),this._mergedRowData=e,this._items=t},_Z_279.prototype={get_mergedRowData:function(){return this._mergedRowData},get_items:function(){return this._items}},_Z_279.registerClass("_Z_279",Sys.EventArgs),Sys.UI.Controls.FzDressGrid=function(e){Sys.UI.Controls.FzDressGrid.initializeBase(this,[e]),this._qtyExpandName="qtyExpand",this._displayMode=Sys.Dress.DressDisplayMode.detail,this._maxSizeCount=0,this._sizeInfoListCache={},this._isDress=!0,this._isTree=!1,this._modeReadOnly={},this._gridSetting={PtypeIdField:"ptypeid",SizeIdField:"sizeid",SizeNameField:"sizename",ColorIdField:"colorid",ColorNameField:"colorname",SizeGroupFieId:"sizegroup",QtyField:"qty",PriceField:"price",TotalField:"total"}},Sys.UI.Controls.FzDressGrid.prototype={initialize:function(){Sys.UI.Controls.FzDressGrid.callBaseMethod(this,"initialize")},dispose:function(){Sys.UI.Controls.FzDressGrid.callBaseMethod(this,"dispose")},_refreshDisplay:function(e){try{this._displayModeChanged=!0;var t=this.findPager();if(t){this.clearSortFlag(),this._doExpandColumn();var i={};i.Command="UpdateMode",i.Data=e,t._internalRefreshState(i)}else this._refreshExpand()}catch(s){throw s}finally{this._displayModeChanged=!1}},_refreshExpand:function(){this.clearSortFlag(),this._doExpandData(),this._doExpandColumn(),this.dataChanged()},_doExpandData:function(){this._doInitSizeCache();var e=this._doExpandDataSource();this._saveDataSource(e,!0)},_doExpandColumn:function(){this._gridSetting&&(this._displayMode==Sys.Dress.DressDisplayMode.master?(this.set_maxHeaderLevel(1),this._showSizeColorColumn(!1)):this._displayMode==Sys.Dress.DressDisplayMode.standard?(this.set_maxHeaderLevel(2),this._showSizeColorColumn(!0),this._doStandardColumn()):(this.set_maxHeaderLevel(1),this._showSizeColorColumn(!0)))},_showStandardColumn:function(e){var t=this._header,i=$common.getTableBody(t),s=$common.getChildrenByTagName(i,"tr")[1];if(s&&(s.style.height=e?"":"0px",this._standardTdBand)){this._standardTdBand.style.display=e?"":"none";var a=this._standardTdBand.expandColumn,r=a.expanded,n=this.get_realMaxSizeCount()-r.length;if(n>0){for(o=r.length;n>0;n--){var d=this._addNewColumn(a,o,"",this.getExpandFieldName(o),o+"");d._isExpandNew=!0,r[o]=d,o++}this._set_standardTdBandWidth(r.length)}for(var o=0,h=r.length;o<h;o++){var l=r[o];l.set_visible(e),e&&h+n<=o&&l.set_visible(!1)}this._set_standardTdBandWidth(Math.min(h,h+n))}},_set_standardTdBandWidth:function(e){var t=65*e;this._standardTdBand.style.width=t+"px";try{this._standardTdBand.colSpan=e}catch(i){}},_doInitSizeCache:function(){if(this._prevMode==Sys.Dress.DressDisplayMode.detail||this.get_displayMode()==Sys.Dress.DressDisplayMode.standard){var e=this._getSizeData();this._sizeInfoListCache={};for(var t=e?e.length:0,i=0;i<t;i++){var s=e[i];if(s[this._gridSetting.SizeNameField]){var a=s[this._gridSetting.PtypeIdField],r=s[this._gridSetting.SizeNameField],n=s[this._gridSetting.SizeIdField];this._sizeInfoListCache[a]||(this._sizeInfoListCache[a]=[]),Array.contains(this._sizeInfoListCache[a],r)||Array.add(this._sizeInfoListCache[a],r),this._sizeIdCache||(this._sizeIdCache={}),this._sizeIdCache[r]||(this._sizeIdCache[r]=n)}}this._doSizeSortEvent()}},_doExpandDataSource:function(){return this._gridSetting?this._displayMode==Sys.Dress.DressDisplayMode.master?this._doMasterData():this._displayMode==Sys.Dress.DressDisplayMode.standard?this._doStandardData():this._doDetailData():[]},_doDetailData:function(){var e=this.getDetails();return this._doMergingEvent("detailMerging",e,[]),e},_changeColumnCaption:function(){if(this._displayMode==Sys.Dress.DressDisplayMode.standard&&this._standardTdBand){var e=this._dataCache;if(e&&0!=e.length)for(var t=this.get_selectedRowData(),i=(t=t||e[0])[this._gridSetting.PtypeIdField],s=this.getSizeCacheById(i,!1)||[],a=this._standardTdBand.expandColumn.expanded,r=0,n=a.length;r<n;r++)a[r].set_caption(r<s.length?s[r]:" ")}},_getPtypeId:function(e,t,i){var s=e;return Array.forEach(t,function(e,t){s+="_"+i[e]}),s},_doStandardData:function(){for(var e=this.getDetails(!0),t=[],i=[],s=[],a=this._doBeforeMergeEvent("standardMerge"),r=0,n=e.length;r<n;r++){var d=e[r],o=d[this._gridSetting.PtypeIdField]+"_"+d[this._gridSetting.ColorIdField],h=this._getPtypeId(o,a,d);if(Array.contains(i,h)){var l=Array.indexOf(i,h);Array.add(s[l],d)}else{var _=[];Array.add(_,d),Array.add(s,_),Array.add(i,h),t.push(d)}}return Array.forEach(t,function(e,t){var i=e[this._gridSetting.PtypeIdField],a=this.getSizeCacheById(i,!1),r=s[t];if(!a){var n=0;return Array.forEach(r,function(e){var t=e[this._gridSetting.QtyField];t&&(n+=Number(t))},this),void(e[this._gridSetting.QtyField]=n)}e.temp_qty=0,Array.forEach(a,function(t,i){var s=0;Array.forEach(r,function(e){if(e[this._gridSetting.SizeNameField]==t){var i=e[this._gridSetting.QtyField];i&&(s+=Number(i))}},this),e[this.getExpandFieldName(i)]=s,e.temp_qty+=s},this),e[this._gridSetting.QtyField]=e.temp_qty,delete e.temp_qty,this._validateNumberColumnData(e)},this),this._doMergingEvent("standardMerging",t,s),t},_doMasterData:function(){for(var e=this.getDetails(!0),t=[],i=[],s=[],a=this._doBeforeMergeEvent("masterMerge"),r=0,n=e.length;r<n;r++){var d=e[r],o=d[this._gridSetting.PtypeIdField],h=this._getPtypeId(o,a,d);if(Array.contains(i,h)){var l=Array.indexOf(i,h);Array.add(s[l],d)}else{var _=[];Array.add(_,d),Array.add(s,_),Array.add(i,h),t.push(d)}}return Array.forEach(t,function(e,t){var i=0,a=s[t];Array.forEach(a,function(e){var t=e[this._gridSetting.QtyField];t&&(i+=Number(t))},this),e[this._gridSetting.QtyField]=i},this),this._doMergingEvent("masterMerging",t,s),t},_getSizeData:function(){if(!this.get_isInitialized())return[];var e=this.getData();if(e=e||[],!this._displayModeChanged&&this._displayMode==Sys.Dress.DressDisplayMode.standard){for(var t=[],i=0,s=e.length;i<s;i++){var a=e[i],r=a[this._gridSetting.PtypeIdField];if(this._sizeInfoListCache[r])for(var n=this._sizeInfoListCache[r],d=0,o=n.length;d<o;d++){var h=Object.clone(a);if(t.push(h),"undefined"==typeof a[this.getExpandFieldName(d)])break;h[this._gridSetting.SizeNameField]=n[d],h[this._gridSetting.SizeIdField]=this._getSizeIdByName(n[d])}else t.push(Object.clone(e[i]))}return t}return this._prevMode==Sys.Dress.DressDisplayMode.master&&(e=this.getDetails(!0)),e},_clearQtyExpandItem:function(e){for(var t in e)t.startsWith(this._qtyExpandName)&&delete e[t]},_showSizeColorColumn:function(e){this._showColorColumn(e),this._showSizeColumn(e),this._prevMode==Sys.Dress.DressDisplayMode.standard&&this._showStandardColumn(!1)},_validateNumberColumnData:function(e){this._validateFieldData(this._gridSetting.QtyField,e),this._validateFieldData(this._gridSetting.PriceField,e),this._validateFieldData(this._gridSetting.TotalField,e)},_validateFieldData:function(e,t){return!(!t||"undefined"==typeof t[e]||"undefined"==typeof t[this._gridSetting.PtypeIdField])&&(isNaN(t[e])&&(t[e]=0),!0)},_showSizeColumn:function(e){var t=this._gridSetting.SizeIdField,i=this._gridSetting.SizeNameField,s=this.findColumn(t);s&&(s.set_visible(e),s.set_allowConfig(e));var a=this.findColumn(i);a&&(a.set_visible(e),a.set_allowConfig(e))},_showColorColumn:function(e){var t=this._gridSetting.ColorIdField,i=this._gridSetting.ColorNameField,s=this.findColumn(t);s&&(s.set_visible(e),s.set_allowConfig(e));var a=this.findColumn(i);a&&(a.set_visible(e),a.set_allowConfig(e))},_doStandardColumn:function(){var e=this._dataCache;e&&0!=e.length&&(this._showColorColumn(!0),this._showSizeColumn(!1),this._standardTdBand?this._showStandardColumn(!0):this._expandQtyColumns())},getExpandFieldName:function(e){return this._qtyExpandName+"_"+e},getSizeCacheById:function(e,t){return this._sizeInfoListCache&&(this._sizeInfoListCache[e]||!1===t)||this._doInitSizeCache(),this._sizeInfoListCache[e]},_expandQtyColumns:function(){var e=this.findColumn(this._gridSetting.SizeNameField);if(!e)throw new Error.message("服装grid必须指定尺码列");var t=e.get_index(),i=e.get_headerElement(),s=this._header,a=$common.getTableBody(s),r=a.firstChild,n=this.get_maxSizeCount();if(0!=n){var d=this._insertTd(i,0,i.innerText,!0);d.align="center",d.width=65*n,d.colSpan=n,this._standardTdBand=d;for(var o=$common.getChildrenByTagName(r,"td"),h=0,l=o.length;h<l;h++){var _=o[h];_!=d&&(_.rowSpan=2)}var g=$common.createTr();g.className="GridHeaderRow",a.appendChild(g);var c={width:65,align:"center",colSpan:1,rowSpan:1},u=this._createHeaderTd(c,"",!0);g.appendChild(u);var y=null,f=e.get_footerElement();f&&(y=this._insertTd(f,0,"",!1));var C=Sys.UI.Controls.NumberType._float,p=$settings.DecimalPrecision,S=$settings.DecimalScale,m=this.findColumn(this._gridSetting.QtyField);m&&(C=m.get_numberType(),p=m.get_decimalPrecision(),S=m.get_decimalScale());var D={type:Sys.UI.Controls.NumberColumn,properties:{name:"size_0",dataField:"size_0",allowResize:!1,allowConfig:!1,allowSort:!this._sizeCacheCurPage,allowFilter:!this._sizeCacheCurPage,numberType:C,decimalPrecision:p,decimalScale:S,designCaption:"",designWidth:65,headerAlign:"center",textAlign:"right",filterType:1}},z=this._insertColumn(t,D,"","size_0",u,y);z.set_minValue(0);var v={};v.name="sizeband",v.captions=[],v.dataFields=[],v.reportFields=[];for(h=0;h<n;h++)Array.add(v.captions,""),Array.add(v.dataFields,this.getExpandFieldName(h)),Array.add(v.reportFields,"尺码"+h);this._expandColumn(z,v),this._standardTdBand.expandColumn=z}},_getSizeIdByName:function(e){return this._sizeIdCache[e]},_initCache:function(){this._prevMode==Sys.Dress.DressDisplayMode.detail&&(this._dataCache=this.getData())},get_displayMode:function(){return this._displayMode},set_displayMode:function(e){this._displayMode!=e&&(this._prevMode=this._displayMode,this._displayMode=e,this.get_isInitialized()&&(this._initCache(),this._refreshDisplay(e)))},set_gridSetting:function(e){Object.copyTo(e,this._gridSetting)},get_gridSetting:function(){return this._gridSetting},getField:function(e){return this._gridSetting[e]},getCacheData:function(){return this._dataCache},saveData:function(){return this.getDetails(!0)},getData:function(){return this._dataBinding?this._dataCache:Object.clone(this.get_dataController().save())},getDetails:function(e){return this._displayModeChanged||this._displayMode!=Sys.Dress.DressDisplayMode.detail||(this._dataCache=this.getData()),this._dataCache?e?Object.clone(this._dataCache):this._dataCache:[]},getExpandName:function(){return this._qtyExpandName},get_maxSizeCount:function(){var e=this._maxSizeCount;if(0==e){for(var t in this._sizeInfoListCache){var i=this._sizeInfoListCache[t];i.length>e&&(e=i.length)}this._maxSizeCount=e}return e},set_maxSizeCount:function(e){this._maxSizeCount=e},get_realMaxSizeCount:function(){return this.set_maxSizeCount(0),this.get_maxSizeCount()},get_sizeInfoListCache:function(){return this._sizeInfoListCache},set_sizeInfoListCache:function(e){this._sizeInfoListCache=e},get_sizeInfoListCurPage:function(){return this._sizeInfoListCache},set_sizeInfoListCurPage:function(e){this._sizeInfoListCache=e,this._sizeCacheCurPage=!0,this.get_isInitialized()&&(this._sizeCacheChanged=!0)},set_sizeCacheCurPage:function(e){this._sizeCacheCurPage=e},get_sizeCacheCurPage:function(){return this._sizeCacheCurPage},set_modeReadOnly:function(e,t){this._modeReadOnly[e]=t},_doCellBeginEdit:function(e,t,i){if(this._modeReadOnly[this._displayMode])return!1;var s=i?this._getRowIndex(i):this.get_selectedRowIndex(),a=this.isEmptyRow(s),r=e.get_dataField();if(r&&r.startsWith(this._qtyExpandName)&&!a){if(r.length<this._qtyExpandName.length+1)return!1;var n=r.substr(this._qtyExpandName.length+1),d=this.getRowData(s);if(Object.isUndefinedOrNull(d[r]))return!1;var o=d[this._gridSetting.PtypeIdField],h=this.getSizeCacheById(o);if(parseInt(n)>=h.length)return!1}return Sys.UI.Controls.FzDressGrid.callBaseMethod(this,"_doCellBeginEdit",[e,t,i])},doSelectionChanged:function(){this._changeColumnCaption(),Sys.UI.Controls.FzDressGrid.callBaseMethod(this,"doSelectionChanged")},set_dataSource:function(e){Sys.UI.Controls.FzDressGrid.callBaseMethod(this,"set_dataSource",[e]),this._dataCache=this._dataSource},_initDataRows:function(){(this._init||this._displayMode==Sys.Dress.DressDisplayMode.detail)&&Sys.UI.Controls.FzDressGrid.callBaseMethod(this,"_initDataRows")},doFormLoaded:function(){this._displayMode!=Sys.Dress.DressDisplayMode.detail&&this._refreshExpand(),Sys.UI.Controls.FzDressGrid.callBaseMethod(this,"doFormLoaded")},add_standardSizeSort:function(e){this.get_events().addHandler("standardSizeSort",e)},remove_standardSizeSort:function(e){this.get_events().removeHandler("standardSizeSort",e)},_doSizeSortEvent:function(){if(this.get_displayMode()==Sys.Dress.DressDisplayMode.standard){var e=this.get_events().getHandler("standardSizeSort");if(e){var t=new _Z_280(this._sizeInfoListCache);e(this,t),this._sizeInfoListCache=t.get_sizes()}}},add_masterMerge:function(e){this.get_events().addHandler("masterMerge",e)},remove_masterMerge:function(e){this.get_events().removeHandler("masterMerge",e)},add_standardMerge:function(e){this.get_events().addHandler("standardMerge",e)},remove_standardMerge:function(e){this.get_events().removeHandler("standardMerge",e)},_doBeforeMergeEvent:function(e){var t=this.get_events().getHandler(e);if(!t)return[];var i=new Sys.Dress.MergeEventArgs;return t(this,i),i.get_mergeFields()||[]},add_detailMerging:function(e){this.get_events().addHandler("detailMerging",e)},remove_detailMerging:function(e){this.get_events().removeHandler("detailMerging",e)},add_masterMerging:function(e){this.get_events().addHandler("masterMerging",e)},remove_masterMerging:function(e){this.get_events().removeHandler("masterMerging",e)},add_standardMerging:function(e){this.get_events().addHandler("standardMerging",e)},remove_standardMerging:function(e){this.get_events().removeHandler("standardMerging",e)},_doMergingEvent:function(e,t,i){var s=this.get_events().getHandler(e);if(s)for(var a=0,r=t.length;a<r;a++){s(this,new _Z_279(t[a],i[a]))}}},Sys.UI.Controls.FzDressGrid.registerClass("Sys.UI.Controls.FzDressGrid",Sys.UI.Controls.TreeGrid),Sys.UI.Controls.FzDressTreeGrid=function(e){Sys.UI.Controls.FzDressTreeGrid.initializeBase(this,[e]),this._isTree=!0},Sys.UI.Controls.FzDressTreeGrid.prototype={initialize:function(){Sys.UI.Controls.FzDressTreeGrid.callBaseMethod(this,"initialize")},dispose:function(){Sys.UI.Controls.FzDressTreeGrid.callBaseMethod(this,"dispose")}},Sys.UI.Controls.FzDressTreeGrid.registerClass("Sys.UI.Controls.FzDressTreeGrid",Sys.UI.Controls.FzDressGrid);