|
@@ -0,0 +1,506 @@
|
|
|
+/**
|
|
|
+ * 任务管理定义引用的js
|
|
|
+ */
|
|
|
+
|
|
|
+var grid_selector = "#grid-table";
|
|
|
+var pager_selector = "#grid-pager";
|
|
|
+var currPNode = null;
|
|
|
+jQuery(function($) {
|
|
|
+ //初始化日期控件
|
|
|
+ initDateTime();
|
|
|
+ // 初始化Grid
|
|
|
+ initGrid();
|
|
|
+ // 初始化树
|
|
|
+ initTree();
|
|
|
+});
|
|
|
+
|
|
|
+/**
|
|
|
+ * 初始化Grid
|
|
|
+ */
|
|
|
+function initGrid() {
|
|
|
+ //resize to fit page size
|
|
|
+ $(window).on('resize.jqGrid', function() {
|
|
|
+ $(grid_selector).jqGrid('setGridWidth', $(".page-content").width()-1);
|
|
|
+ });
|
|
|
+ //resize on sidebar collapse/expand
|
|
|
+ var parent_column = $(grid_selector).closest('[class*="col-"]');
|
|
|
+ $(document).on(
|
|
|
+ 'settings.ace.jqGrid',
|
|
|
+ function(ev, event_name, collapsed) {
|
|
|
+ if (event_name === 'sidebar_collapsed'
|
|
|
+ || event_name === 'main_container_fixed') {
|
|
|
+ //setTimeout is for webkit only to give time for DOM changes and then redraw!!!
|
|
|
+ setTimeout(function() {
|
|
|
+ $(grid_selector).jqGrid('setGridWidth',
|
|
|
+ parent_column.width());
|
|
|
+ }, 0);
|
|
|
+ }
|
|
|
+ });
|
|
|
+
|
|
|
+ // 数据表格初始化
|
|
|
+ jQuery(grid_selector).jqGrid({
|
|
|
+ url : basePath + '/code/initCode',
|
|
|
+ mtype : "POST", //提交方式
|
|
|
+ datatype : "json",
|
|
|
+ autowidth: false,
|
|
|
+ height :"auto",
|
|
|
+ shrinkToFit: true,
|
|
|
+ sortname : "", //默认的排序列
|
|
|
+ sortorder : "", //默认的排序列
|
|
|
+ colNames : [ '','id','代码名称', '代码编码','是否有效','映射后名称','映射后编码','序号'],
|
|
|
+ colModel : [ {
|
|
|
+ name:'Edit',
|
|
|
+ index:'Edit',
|
|
|
+ width:30,
|
|
|
+ sortable : false,
|
|
|
+ fixed : true
|
|
|
+ },{
|
|
|
+ name : 'id',
|
|
|
+ index : 'id',
|
|
|
+ key : true,
|
|
|
+ hidden:true,
|
|
|
+ editable : false,
|
|
|
+ sortable : false
|
|
|
+ },{
|
|
|
+ name : 'name',
|
|
|
+ index : 'name',
|
|
|
+ editable : false,
|
|
|
+ sortable : true
|
|
|
+ ,formatter:function(cellvalue, options, rowObject){
|
|
|
+ return "<a onclick=\"viewInfo('"+rowObject["id"]+"')\" class='viewbtn'>"+cellvalue+"</a>";
|
|
|
+ }
|
|
|
+ },{
|
|
|
+ name : 'code',
|
|
|
+ index : 'code',
|
|
|
+ editable : false,
|
|
|
+ sortable : true
|
|
|
+ }, {
|
|
|
+ name : 'valid',
|
|
|
+ index : 'valid',
|
|
|
+ editable : false,
|
|
|
+ sortable : true
|
|
|
+ ,formatter:function(cellvalue, options, rowObject){
|
|
|
+ if(cellvalue == "0"){
|
|
|
+ return '否';
|
|
|
+ } else if(cellvalue == "1"){
|
|
|
+ return '是';
|
|
|
+ } else{
|
|
|
+ return '';
|
|
|
+ }
|
|
|
+ }
|
|
|
+ }, {
|
|
|
+ name : 'mapName',
|
|
|
+ index : 'mapName',
|
|
|
+ editable : false,
|
|
|
+ sortable : true
|
|
|
+ }, {
|
|
|
+ name : 'mapCode',
|
|
|
+ index : 'mapCode',
|
|
|
+ editable : false,
|
|
|
+ sortable : true
|
|
|
+ }, {
|
|
|
+ name : 'xh',
|
|
|
+ index : 'xh',
|
|
|
+ editable : false,
|
|
|
+ sortable : true
|
|
|
+ } ],
|
|
|
+ rowNum : _rowNum, //每页显示记录数
|
|
|
+ rowList : _rowList, //用于改变显示行数的下拉列表框的元素数组。
|
|
|
+ pager : pager_selector, //定义翻页用的导航栏
|
|
|
+ page : 1, //设置初始的页码,初始为1
|
|
|
+ pagerpos : 'right', //指定分页栏的位置
|
|
|
+ altRows : true, //设置为交替行表格,默认为false
|
|
|
+ multiselect : true, //可以多选
|
|
|
+ multiboxonly : true, //只有选择checkbox才会起作用
|
|
|
+ loadComplete : function() {
|
|
|
+ var table = this;
|
|
|
+ setTimeout(function() {
|
|
|
+ updatePagerIcons(table);
|
|
|
+ enableTooltips(table);
|
|
|
+ }, 0);
|
|
|
+ },
|
|
|
+ prmNames : {
|
|
|
+ oper : "oper",
|
|
|
+ page : "page",
|
|
|
+ rows : "rows",
|
|
|
+ sort : "sidx",
|
|
|
+ order : "sord"
|
|
|
+ },
|
|
|
+ postData :{
|
|
|
+ wldwCode : function(){ return ""; },//问题内容
|
|
|
+ wldwName : function(){ return ""; }//服务类型
|
|
|
+ },
|
|
|
+ jsonReader : {
|
|
|
+ root : "list", // json中代表实际模型数据的入口
|
|
|
+ page : "page", // json中代表当前页码的数据
|
|
|
+ total : "pages", // json中代表页码总数的数据
|
|
|
+ records : "total", // json中代表数据行总数的数据
|
|
|
+ repeatitems : false// 如果设为false,则jqGrid在解析json时,会根据name来搜索对应的数据元素
|
|
|
+ },
|
|
|
+ gridComplete: function () {
|
|
|
+ comGridComplete("grid-table", "editRecord");
|
|
|
+ },
|
|
|
+ onPaging: function(){
|
|
|
+ comGridPage("grid-table");
|
|
|
+ }
|
|
|
+ });
|
|
|
+
|
|
|
+ $(window).triggerHandler('resize.jqGrid');//trigger window resize to make the grid get the correct size
|
|
|
+ // 隐藏水平垂直滚动条
|
|
|
+ jQuery(grid_selector).closest(".ui-jqgrid-bdiv").css({ 'overflow-x' : 'hidden' ,'overflow-y':'hidden'});
|
|
|
+ //navButtons
|
|
|
+ jQuery(grid_selector).jqGrid(
|
|
|
+ 'navGrid',
|
|
|
+ pager_selector,
|
|
|
+ { //navbar options
|
|
|
+ edit : false,
|
|
|
+ editicon : 'ace-icon fa fa-pencil blue',
|
|
|
+ add : false,
|
|
|
+ addicon : 'ace-icon fa fa-plus-circle purple',
|
|
|
+ del : false,
|
|
|
+ delicon : 'ace-icon fa fa-trash-o red',
|
|
|
+ search : false,
|
|
|
+ searchicon : 'ace-icon fa fa-search orange',
|
|
|
+ refresh : false,
|
|
|
+ refreshicon : 'ace-icon fa fa-refresh green',
|
|
|
+ view : false,
|
|
|
+ viewicon : 'ace-icon fa fa-search-plus grey',
|
|
|
+ });
|
|
|
+ //初始化操作按钮
|
|
|
+ intOperButton();
|
|
|
+ $(document).one('ajaxloadstart.page', function(e) {
|
|
|
+ $(grid_selector).jqGrid('GridUnload');
|
|
|
+ $('.ui-jqdialog').remove();
|
|
|
+ });
|
|
|
+
|
|
|
+ setMulti();
|
|
|
+
|
|
|
+};
|
|
|
+
|
|
|
+/**
|
|
|
+ * 初始化操作按钮
|
|
|
+ */
|
|
|
+function intOperButton() {
|
|
|
+ jQuery(grid_selector).navButtonAdd(pager_selector, {
|
|
|
+ caption : "新增",
|
|
|
+ buttonicon : "ui-icon ui-icon btn-minier ace-icon fa fa-plus-circle",
|
|
|
+ onClickButton : function() {
|
|
|
+ comClearFormData("form");
|
|
|
+ // 隐藏校验图标
|
|
|
+ hideValidateTip();
|
|
|
+ $("#id").val("");
|
|
|
+ $("#btnSave").show();
|
|
|
+ // 启用元素
|
|
|
+ comEnableElements("modal-table");
|
|
|
+ $("#valid").val("1");
|
|
|
+ $("#modal-table #myModalLabel").text("新增任务");
|
|
|
+ $('#modal-table').modal('show');
|
|
|
+ },
|
|
|
+ position : "last"
|
|
|
+ });
|
|
|
+ jQuery(grid_selector).navButtonAdd(pager_selector, {
|
|
|
+ caption : "删除",
|
|
|
+ buttonicon : "ui-icon ui-icon ace-icon fa fa-trash-o red",
|
|
|
+ onClickButton : function() {
|
|
|
+ var idsStr = getMultiData();
|
|
|
+ if(idsStr.length >=1 ){
|
|
|
+ showMsgConfimDialog("确定删除吗?",function(){
|
|
|
+ $.ajax({
|
|
|
+ async : false,
|
|
|
+ type : 'POST',
|
|
|
+ dataType : "json",
|
|
|
+ data : {"ids":idsStr, opt:'QY'},
|
|
|
+ url : basePath + '/code/delCode',//请求的路径
|
|
|
+ success : function(data) {
|
|
|
+ refreshTree();
|
|
|
+ // 成功后刷新页面
|
|
|
+ if (data == "SUCCESS") {
|
|
|
+ showMsgDialog("数据已删除!");
|
|
|
+ }
|
|
|
+ jQuery(grid_selector).trigger("reloadGrid");
|
|
|
+ },
|
|
|
+ error: function (XMLHttpRequest, textStatus, errorThrown) {
|
|
|
+ showMsgDialog("error:" + errorThrown);
|
|
|
+ }
|
|
|
+ });
|
|
|
+ });
|
|
|
+ } else {
|
|
|
+ showMsgDialog("请至少选择一条记录");
|
|
|
+ }
|
|
|
+ },
|
|
|
+ position : "last"
|
|
|
+ });
|
|
|
+}
|
|
|
+
|
|
|
+/**
|
|
|
+ * 初始化日期控件
|
|
|
+ */
|
|
|
+function initDateTime() {
|
|
|
+ $('#startTime').datetimepicker({
|
|
|
+ format : 'yyyy-mm-dd hh:ii:ss',
|
|
|
+ minView: 1
|
|
|
+ }).next().on(ace.click_event, function(){
|
|
|
+ $(this).prev().focus();
|
|
|
+ });
|
|
|
+
|
|
|
+ $('#endTime').datetimepicker({
|
|
|
+ format : 'yyyy-mm-dd hh:ii:ss',
|
|
|
+ minView: 1
|
|
|
+ }).next().on(ace.click_event, function(){
|
|
|
+ $(this).prev().focus();
|
|
|
+ });
|
|
|
+};
|
|
|
+
|
|
|
+/**
|
|
|
+ * 编辑
|
|
|
+ * @param rid
|
|
|
+ */
|
|
|
+function editRecord(rid) {
|
|
|
+ var data = jQuery("#grid-table").jqGrid('getRowData', rid);
|
|
|
+ $("#btnSave").show();
|
|
|
+ // 隐藏校验图标
|
|
|
+ hideValidateTip();
|
|
|
+ // 启用元素
|
|
|
+ comEnableElements("modal-table");
|
|
|
+ $("#modal-table #myModalLabel").text("编辑任务");
|
|
|
+ initBaseInfo(rid);
|
|
|
+}
|
|
|
+
|
|
|
+/**
|
|
|
+ * 获取多行选中的id
|
|
|
+ */
|
|
|
+function getMultiData(opt){
|
|
|
+ var ids = "";
|
|
|
+ //获取选择行的id
|
|
|
+ var row = jQuery(grid_selector).jqGrid('getGridParam','selarrrow');
|
|
|
+ if (row.length >= 1) {
|
|
|
+ for (var i = 0; i < row.length; i++) {
|
|
|
+ //获取选择的行的数据,只要传入rowId即可
|
|
|
+ var data = jQuery(grid_selector).jqGrid('getRowData', row[i]);
|
|
|
+ ids += data.id +",";
|
|
|
+ }
|
|
|
+ ids = ids.substr(0, ids.length - 1);
|
|
|
+ }
|
|
|
+ return ids;
|
|
|
+}
|
|
|
+
|
|
|
+/**
|
|
|
+ * 查询事件
|
|
|
+ */
|
|
|
+function searchRecord() {
|
|
|
+
|
|
|
+ //$.extend(jQuery(grid_selector)[0].p.postData);
|
|
|
+ jQuery("#grid-table").trigger("reloadGrid", [{ page: 1 }]);
|
|
|
+};
|
|
|
+
|
|
|
+
|
|
|
+/**
|
|
|
+ * form提交事件
|
|
|
+ */
|
|
|
+function submitForm() {
|
|
|
+ $.ajax({
|
|
|
+ async:false,
|
|
|
+ type : "post",
|
|
|
+ url : basePath + '/code/save',
|
|
|
+ dataType:'json',
|
|
|
+ data : $.param({'pCode':currPNode.id}) + '&' + $('#form').serialize()
|
|
|
+ , //表单序列化,获取数据
|
|
|
+ success : function(data) {
|
|
|
+ // 成功删除后刷新页面
|
|
|
+ if (data) {
|
|
|
+ showMsgDialog("数据已成功保存!");
|
|
|
+ closeWin();
|
|
|
+ searchRecord();
|
|
|
+ refreshTree();
|
|
|
+ } else {
|
|
|
+ showMsgDialog("数据保存失败!");
|
|
|
+ }
|
|
|
+ }, //操作成功后的操作!data是后台传过来的值
|
|
|
+ error: function (XMLHttpRequest, textStatus, errorThrown) {
|
|
|
+ showMsgDialog("error:" + errorThrown);
|
|
|
+ }
|
|
|
+ });
|
|
|
+};
|
|
|
+
|
|
|
+// 关闭弹出窗口,刷新列表
|
|
|
+function closeWin(){
|
|
|
+ $('.layui-layer').hide();
|
|
|
+ $('#modal-table').modal('hide');
|
|
|
+}
|
|
|
+
|
|
|
+/**
|
|
|
+ * 根据id查询所有信息并赋值
|
|
|
+ */
|
|
|
+function initBaseInfo(rowid, flg){
|
|
|
+ // 后台获取
|
|
|
+ $.ajax({
|
|
|
+ async : true,
|
|
|
+ type : 'POST',
|
|
|
+ dataType : "json",
|
|
|
+ data : {id:rowid},
|
|
|
+ url : basePath + '/code/initEditCode', //请求的路径
|
|
|
+ success : function(data) {
|
|
|
+ // 填充信息
|
|
|
+ $('#id').val(data.id);
|
|
|
+ $('#name').val(data.name);
|
|
|
+ $('#code').val(data.code);
|
|
|
+ $('#mapName').val(data.mapName);
|
|
|
+ $('#mapCode').val(data.mapCode);
|
|
|
+ $('#valid').val(data.valid);
|
|
|
+ $('#xh').val(data.xh);
|
|
|
+ $('#remark').val(data.remark);
|
|
|
+ if(flg && flg=="VIEW") {
|
|
|
+ comDisableElements("modal-table");
|
|
|
+ }
|
|
|
+ },
|
|
|
+ error: function (XMLHttpRequest, textStatus, errorThrown) {
|
|
|
+ showMsgDialog("error:" + errorThrown);
|
|
|
+ }
|
|
|
+ });
|
|
|
+ $('#modal-table').modal('show');
|
|
|
+};
|
|
|
+
|
|
|
+/**
|
|
|
+ * 隐藏校验图标
|
|
|
+ */
|
|
|
+function hideValidateTip() {
|
|
|
+ $("#nameImageTip").css("display","none");
|
|
|
+ $("#codeImageTip").css("display","none");
|
|
|
+ $("#xhImageTip").css("display","none");
|
|
|
+}
|
|
|
+
|
|
|
+/**
|
|
|
+ * 查看
|
|
|
+ * @param rid
|
|
|
+ */
|
|
|
+function viewInfo(rid){
|
|
|
+ $("#btnSave").hide();
|
|
|
+ // 隐藏校验图标
|
|
|
+ hideValidateTip();
|
|
|
+ $("#modal-table #myModalLabel").text("查看代码");
|
|
|
+ initBaseInfo(rid,"VIEW");
|
|
|
+}
|
|
|
+
|
|
|
+/**
|
|
|
+ * 隐藏校验图标
|
|
|
+ */
|
|
|
+function getSetting() {
|
|
|
+ var setting = {
|
|
|
+ //check: {
|
|
|
+ // enable: true
|
|
|
+ //},
|
|
|
+ view: {
|
|
|
+ fontCss: getFontCss,
|
|
|
+ dblClickExpand: false,
|
|
|
+ showLine: true
|
|
|
+ },
|
|
|
+ data: {
|
|
|
+ key: {
|
|
|
+ title: "name"
|
|
|
+ },
|
|
|
+ simpleData: {
|
|
|
+ enable: true
|
|
|
+ //checked: true
|
|
|
+ }
|
|
|
+ },
|
|
|
+ callback: {
|
|
|
+ onClick: onClick
|
|
|
+ }
|
|
|
+ };
|
|
|
+ return setting;
|
|
|
+}
|
|
|
+
|
|
|
+/**
|
|
|
+ * 初始化树
|
|
|
+ */
|
|
|
+function setTreeData() {
|
|
|
+ //返回的数据格式
|
|
|
+ $.ajax({
|
|
|
+ async:false,
|
|
|
+ type : "post",
|
|
|
+ url : basePath + '/code/initTree',
|
|
|
+ dataType:'json',
|
|
|
+ data : {},
|
|
|
+ success : function(data) {
|
|
|
+ // 成功删除后刷新页面
|
|
|
+ if (data) {
|
|
|
+ $.fn.zTree.init($("#codeTree"), getSetting(), data);
|
|
|
+ var treeObj = $.fn.zTree.getZTreeObj("codeTree");
|
|
|
+ //返回一个根节点
|
|
|
+// var node = treeObj.getNodesByFilter(function (node) { return node.level == 0 }, true);
|
|
|
+// treeObj.selectNode(node);
|
|
|
+ if(null == currPNode) {
|
|
|
+ var nodes = treeObj.getNodesByParam("id", "00", null);
|
|
|
+ //treeObj.selectNode(nodes[0]);
|
|
|
+ currPNode = nodes[0];
|
|
|
+ } else {
|
|
|
+ treeObj.selectNode(currPNode);
|
|
|
+ treeObj.expandNode(currPNode, true, true, true);
|
|
|
+ }
|
|
|
+ }
|
|
|
+ }, //操作成功后的操作!data是后台传过来的值
|
|
|
+ error: function (XMLHttpRequest, textStatus, errorThrown) {
|
|
|
+ showMsgDialog("error:" + errorThrown);
|
|
|
+ }
|
|
|
+ });
|
|
|
+}
|
|
|
+
|
|
|
+/**
|
|
|
+ * 设置树的宽和高
|
|
|
+ */
|
|
|
+function setTreeWH() {
|
|
|
+ // 设置tree宽度和高度
|
|
|
+ var bodyHeight = $(window).height();
|
|
|
+ var navbarHeight = $("#navbar").height();
|
|
|
+ var breadcrumbsHeight = $("#breadcrumbs").height();
|
|
|
+ var treeHeight = bodyHeight - navbarHeight - breadcrumbsHeight - 90;
|
|
|
+ $("#codeTree").css('width',$("#leftDiv").width()-8);
|
|
|
+ $("#codeTree").css('height', treeHeight);
|
|
|
+}
|
|
|
+
|
|
|
+/**
|
|
|
+ * 初始化树
|
|
|
+ */
|
|
|
+function initTree() {
|
|
|
+ //请求树状数据,初始化树
|
|
|
+// var zNodes =[
|
|
|
+// { id:1, pId:0, name:"父节点1 - 展开", open:true},
|
|
|
+// { id:11, pId:1, name:"父节点11 - 折叠"}];
|
|
|
+// $.fn.zTree.init($("#codeTree"), setting, zNodes);
|
|
|
+ setTreeData();
|
|
|
+ setTreeWH();
|
|
|
+}
|
|
|
+
|
|
|
+//搜索变色
|
|
|
+function getFontCss(treeId, treeNode) {
|
|
|
+ return (!!treeNode.highlight) ?
|
|
|
+ { color: "#A60000", "font-weight": "bold" } :
|
|
|
+ { color: "#333", "font-weight": "normal" };
|
|
|
+}
|
|
|
+
|
|
|
+function onClick(e, treeId, treeNode) {
|
|
|
+ var treeObj = $.fn.zTree.getZTreeObj("codeTree");
|
|
|
+ var pId="";
|
|
|
+ if(treeNode.id != "00" && treeNode.pId !="00") {
|
|
|
+ return;
|
|
|
+ }
|
|
|
+ currPNode = treeNode;
|
|
|
+ // 刷新表格
|
|
|
+ $(grid_selector).jqGrid('setGridParam',{
|
|
|
+ datatype:'json',
|
|
|
+ postData:{'pCode':treeNode.id},
|
|
|
+ page:1
|
|
|
+ }).trigger("reloadGrid");
|
|
|
+}
|
|
|
+/**
|
|
|
+ * 刷新树
|
|
|
+ */
|
|
|
+function refreshTree() {
|
|
|
+ var treeObj = $.fn.zTree.getZTreeObj("codeTree");
|
|
|
+// treeObj.refresh();
|
|
|
+// treeObj.selectNode(currPNode);
|
|
|
+// treeObj.expandAll(false);//折叠全部节点,参数为true时表示展开全部节点
|
|
|
+ treeObj.removeChildNodes(currPNode);
|
|
|
+ setTreeData();//刷新zTree,实现不选中任何节点
|
|
|
+}
|
|
|
+
|