|
@@ -1,206 +1,281 @@
|
|
|
<%@ page contentType="text/html;charset=UTF-8" %>
|
|
|
-<script type="text/javascript">
|
|
|
- $(document).ready(function() {
|
|
|
- //zTree初始化
|
|
|
- $.getJSON("${ctx}/sg/managementCenter/constructionProject/bootstrapTreeTable",function(data){
|
|
|
- jstree(data);
|
|
|
- dateTimeValue('1');
|
|
|
- });
|
|
|
- $('#selectId').click(function () {
|
|
|
- var object = $('#jstree').treeview('getChecked');
|
|
|
- if (object.length<1){
|
|
|
- jp.error("请选择项目!")
|
|
|
- return false;
|
|
|
- }
|
|
|
- var str = "";
|
|
|
- for (var i = 0; i < object.length; i++) {
|
|
|
- str+=object[i].id+",";
|
|
|
- }
|
|
|
- var sureStr = str.substring(0,str.length-1);
|
|
|
- $("#parentIds").val(sureStr);
|
|
|
- add(sureStr);
|
|
|
- });
|
|
|
- //搜索
|
|
|
- var findSearchableNodes = function() {
|
|
|
- return $('#jstree').treeview('search', [ $.trim($('#input-search').val()), { ignoreCase: false, exactMatch: false } ]);
|
|
|
- };
|
|
|
- var search = function(e) {
|
|
|
- var pattern = $.trim($('#input-search').val());
|
|
|
- var options = {
|
|
|
- ignoreCase: $('#chk-ignore-case').is(':checked'),
|
|
|
- exactMatch: $('#chk-exact-match').is(':checked'),
|
|
|
- revealResults: $('#chk-reveal-results').is(':checked')
|
|
|
- };
|
|
|
- $('#jstree').treeview('search', [ $.trim($('#input-search').val()), { ignoreCase: false, exactMatch: false } ]);
|
|
|
- var results = $('#jstree').treeview('search', [ pattern, options ]);
|
|
|
- }
|
|
|
- $('#btn-search').on('click', search);
|
|
|
- $('#btn-clear-search').on('click', function (e) {
|
|
|
- $('#jstree').treeview('clearSearch');
|
|
|
- $('#input-search').val('');
|
|
|
- $('#jstree').treeview('collapseAll', {
|
|
|
- silent : false//设置初始化节点关闭
|
|
|
- });
|
|
|
- });
|
|
|
- $.getJSON("${ctx}/sg/managementCenter/constructionProject/treeData",function(data){
|
|
|
- jstreeTime(data)
|
|
|
- });
|
|
|
- //搜索
|
|
|
- var search1 = function(e) {
|
|
|
- var pattern = $.trim($('#input-search1').val());
|
|
|
- var options = {
|
|
|
- ignoreCase: $('#chk-ignore-case').is(':checked'),
|
|
|
- exactMatch: $('#chk-exact-match').is(':checked'),
|
|
|
- revealResults: $('#chk-reveal-results').is(':checked')
|
|
|
- };
|
|
|
- $('#jstreeTime').treeview('search', [ $.trim($('#input-search1').val()), { ignoreCase: false, exactMatch: false } ]);
|
|
|
- var results = $('#jstreeTime').treeview('search', [ pattern, options ]);
|
|
|
+<script>
|
|
|
+$(document).ready(function() {
|
|
|
+ $('#projectTable').bootstrapTable({
|
|
|
+ //请求方法
|
|
|
+ method: 'post',
|
|
|
+ //类型json
|
|
|
+ dataType: "json",
|
|
|
+ contentType: "application/x-www-form-urlencoded",
|
|
|
+ //显示检索按钮
|
|
|
+ showSearch: true,
|
|
|
+ //显示刷新按钮
|
|
|
+ showRefresh: true,
|
|
|
+ //显示切换手机试图按钮
|
|
|
+ showToggle: true,
|
|
|
+ //显示 内容列下拉框
|
|
|
+ showColumns: true,
|
|
|
+ //显示到处按钮
|
|
|
+ showExport: true,
|
|
|
+ //显示切换分页按钮
|
|
|
+ showPaginationSwitch: true,
|
|
|
+ //最低显示2行
|
|
|
+ minimumCountColumns: 2,
|
|
|
+ //是否显示行间隔色
|
|
|
+ striped: true,
|
|
|
+ //是否使用缓存,默认为true,所以一般情况下需要设置一下这个属性(*)
|
|
|
+ cache: false,
|
|
|
+ //是否显示分页(*)
|
|
|
+ pagination: false,
|
|
|
+ //排序方式
|
|
|
+ sortOrder: "asc",
|
|
|
+ //初始化加载第一页,默认第一页
|
|
|
+ pageNumber:1,
|
|
|
+ //每页的记录行数(*)
|
|
|
+ pageSize: 5,
|
|
|
+ //可供选择的每页的行数(*)
|
|
|
+ pageList: [5,10, 25, 50, 100],
|
|
|
+ //这个接口需要处理bootstrap table传递的固定参数,并返回特定格式的json数据
|
|
|
+ url: "${ctx}/sg/managementCenter/constructionProject/data",
|
|
|
+ //默认值为 'limit',传给服务端的参数为:limit, offset, search, sort, order Else
|
|
|
+ //queryParamsType:'',
|
|
|
+ ////查询参数,每次调用是会带上这个参数,可自定义
|
|
|
+ queryParams : function(params) {
|
|
|
+ var searchParam = $("#searchForm").serializeJSON();
|
|
|
+ searchParam.pageNo = params.limit === undefined? "1" :params.offset/params.limit+1;
|
|
|
+ searchParam.pageSize = params.limit === undefined? -1 : params.limit;
|
|
|
+ searchParam.orderBy = params.sort === undefined? "" : params.sort+ " "+ params.order;
|
|
|
+ return searchParam;
|
|
|
+ },
|
|
|
+ //分页方式:client客户端分页,server服务端分页(*)
|
|
|
+ sidePagination: "server",
|
|
|
+ contextMenuTrigger:"right",//pc端 按右键弹出菜单
|
|
|
+ contextMenuTriggerMobile:"press",//手机端 弹出菜单,click:单击, press:长按。
|
|
|
+ contextMenu: '#context-menu',
|
|
|
+ onContextMenuItem: function(row, $el){
|
|
|
+ if($el.data("item") == "edit"){
|
|
|
+ edit(row.id);
|
|
|
+ }else if($el.data("item") == "view"){
|
|
|
+ view(row.id);
|
|
|
+ } else if($el.data("item") == "delete"){
|
|
|
+ jp.confirm('确认要删除该表单记录吗?', function(){
|
|
|
+ jp.loading();
|
|
|
+ jp.get("${ctx}/sg/managementcenter/project/delete?id="+row.id, function(data){
|
|
|
+ if(data.success){
|
|
|
+ $('#projectTable').bootstrapTable('refresh');
|
|
|
+ jp.success(data.msg);
|
|
|
+ }else{
|
|
|
+ jp.error(data.msg);
|
|
|
+ }
|
|
|
+ })
|
|
|
+
|
|
|
+ });
|
|
|
+
|
|
|
+ }
|
|
|
+ },
|
|
|
+
|
|
|
+ onClickRow: function(row, $el){
|
|
|
+ },
|
|
|
+ onShowSearch: function () {
|
|
|
+ $("#search-collapse").slideToggle();
|
|
|
+ },
|
|
|
+ columns: [{
|
|
|
+ checkbox: true
|
|
|
+
|
|
|
+ }
|
|
|
+ ,{
|
|
|
+ field: 'projectNumber',
|
|
|
+ title: '项目定义号',
|
|
|
+ width:160
|
|
|
+
|
|
|
}
|
|
|
- $('#btn-search1').on('click', search1);
|
|
|
- $('#btn-clear-search1').on('click', function (e) {
|
|
|
- $('#jstreeTime').treeview('clearSearch');
|
|
|
- $('#input-search1').val('');
|
|
|
- $('#jstreeTime').treeview('collapseAll', {
|
|
|
- silent : false//设置初始化节点关闭
|
|
|
- });
|
|
|
- });
|
|
|
- $('#selectId1').click(function () {
|
|
|
- var object = $('#jstreeTime').treeview('getChecked');
|
|
|
- if (object.length<1){
|
|
|
- jp.error("请选择项目!");
|
|
|
- return false;
|
|
|
- }
|
|
|
- var str = "";
|
|
|
- for (var i = 0; i < object.length; i++) {
|
|
|
- str+=object[i].id+",";
|
|
|
- }
|
|
|
- var sureStr = str.substring(0,str.length-1);
|
|
|
- minus(sureStr);
|
|
|
- })
|
|
|
- })
|
|
|
- //安排计划时间
|
|
|
- function add(ids){
|
|
|
- var dateTimeId = $("#dateTimeId").val();
|
|
|
- if (null!=dateTimeId && dateTimeId !=""){
|
|
|
- jp.post("${ctx}/sg/managementCenter/constructionProject/unplanned",{'ids':ids,'time':dateTimeId},function(data){
|
|
|
- if(data.success){
|
|
|
- jstreeTime(data.mapList);
|
|
|
- refreshjstree();
|
|
|
- }else{
|
|
|
- jp.error(data.message);
|
|
|
- }
|
|
|
- })
|
|
|
- }
|
|
|
- }
|
|
|
- //取消计划时间
|
|
|
- function minus(ids) {
|
|
|
- var dateTimeId = $("#dateTimeId").val();
|
|
|
- if (null!=dateTimeId && dateTimeId !=""){
|
|
|
- jp.post("${ctx}/sg/managementCenter/constructionProject/unplannedMinus",{'ids':ids,'time':dateTimeId},function(data){
|
|
|
- if(data.success){
|
|
|
- refreshjstree();
|
|
|
- jstreeTime(data.mapList);
|
|
|
- }else{
|
|
|
- jp.error(data.message);
|
|
|
- }
|
|
|
- })
|
|
|
- }
|
|
|
- }
|
|
|
- function getIds() {
|
|
|
- return $("#parentIds").val();
|
|
|
- }
|
|
|
- function refreshjstreeTime() {
|
|
|
- $.getJSON("${ctx}/sg/managementCenter/constructionProject/treeData",function(data){
|
|
|
- $('#jstreeTime').treeview({
|
|
|
- data: data,
|
|
|
- levels: 1,
|
|
|
- highlightSelected:false,
|
|
|
- // multiSelect:true,
|
|
|
- // showCheckbox:true,
|
|
|
- color:'blue',
|
|
|
- onNodeSelected: function(event, treeNode) {
|
|
|
- var id = treeNode.id;
|
|
|
- jp.openSaveDialog('编辑安排计划项目', "${ctx}/sg/managementCenter/constructionProject/formPlan?id=" + id, '800px', '500px');
|
|
|
- },
|
|
|
- });
|
|
|
+ ,{
|
|
|
+ field: 'projectName',
|
|
|
+ title: '项目名称',
|
|
|
+ width:110
|
|
|
+
|
|
|
+ }
|
|
|
+ ,{
|
|
|
+ field: 'projectNote',
|
|
|
+ title: '停电范围',
|
|
|
+ width:110
|
|
|
+
|
|
|
+ }
|
|
|
+ ,{
|
|
|
+ field: 'instructions',
|
|
|
+ title: '是否停电/带电',
|
|
|
+ width:110
|
|
|
+
|
|
|
+ }
|
|
|
+ ,{
|
|
|
+ field: 'arrangeTime',
|
|
|
+ title: '月份',
|
|
|
+ width:110
|
|
|
+
|
|
|
+ }
|
|
|
+ ,{
|
|
|
+ field: 'specificTime',
|
|
|
+ title: '具体时间',
|
|
|
+ width:110
|
|
|
+
|
|
|
+ }
|
|
|
+ ]
|
|
|
+
|
|
|
+ });
|
|
|
+
|
|
|
+
|
|
|
+ if(navigator.userAgent.match(/(iPhone|iPod|Android|ios)/i)){//如果是移动端
|
|
|
+
|
|
|
+
|
|
|
+ $('#projectTable').bootstrapTable("toggleView");
|
|
|
+ }
|
|
|
+
|
|
|
+ $('#projectTable').on('check.bs.table uncheck.bs.table load-success.bs.table ' +
|
|
|
+ 'check-all.bs.table uncheck-all.bs.table', function () {
|
|
|
+ $('#remove').prop('disabled', ! $('#projectTable').bootstrapTable('getSelections').length);
|
|
|
+ $('#view,#edit').prop('disabled', $('#projectTable').bootstrapTable('getSelections').length!=1);
|
|
|
});
|
|
|
- }
|
|
|
- function refreshjstree() {
|
|
|
- $.getJSON("${ctx}/sg/managementCenter/constructionProject/bootstrapTreeTable",function(data){
|
|
|
- $('#jstree').treeview({
|
|
|
- data: data,
|
|
|
- levels: 1,
|
|
|
- highlightSelected:false,
|
|
|
- // multiSelect:true,
|
|
|
- showCheckbox:true
|
|
|
- });
|
|
|
+
|
|
|
+ $("#search").click("click", function() {// 绑定查询按扭
|
|
|
+ $('#projectTable').bootstrapTable('refresh');
|
|
|
+ });
|
|
|
+
|
|
|
+ $("#reset").click("click", function() {// 绑定查询按扭
|
|
|
+ $("#searchForm input").val("");
|
|
|
+ $("#searchForm select").val("");
|
|
|
+ $("#searchForm .select-item").html("");
|
|
|
+ $('#projectTable').bootstrapTable('refresh');
|
|
|
+ });
|
|
|
+
|
|
|
+ $('#beginBeginDate').datetimepicker({
|
|
|
+ format: "YYYY-MM-DD"
|
|
|
+ });
|
|
|
+ $('#endBeginDate').datetimepicker({
|
|
|
+ format: "YYYY-MM-DD"
|
|
|
+ });
|
|
|
+ $('#endDate').datetimepicker({
|
|
|
+ format: "YYYY-MM-DD"
|
|
|
+ });
|
|
|
+
|
|
|
+ });
|
|
|
+
|
|
|
+ function getIdSelections() {
|
|
|
+ return $.map($("#projectTable").bootstrapTable('getSelections'), function (row) {
|
|
|
+ return row.id
|
|
|
});
|
|
|
}
|
|
|
- function jstree(date) {
|
|
|
- $('#jstree').treeview({
|
|
|
- data: date,
|
|
|
- levels: 1,
|
|
|
- highlightSelected:false,
|
|
|
- // multiSelect:true,
|
|
|
- showCheckbox:true,
|
|
|
- // onNodeChecked : function(event, data) {
|
|
|
- // selected(data);
|
|
|
- // },
|
|
|
- // onNodeUnchecked : function(event, node){
|
|
|
- // unSelected(node);
|
|
|
- // },
|
|
|
+ //刷新列表
|
|
|
+ function refresh(){
|
|
|
+ $('#projectTable').bootstrapTable('refresh');
|
|
|
+ }
|
|
|
+
|
|
|
+ function add(){
|
|
|
+ jp.openSaveDialog('新增项目计划安排', "${ctx}/sg/managementCenter/constructionProject/formDateMonth",'800px', '500px');
|
|
|
+ }
|
|
|
+
|
|
|
+ function addDate() {
|
|
|
+ top.layer.open({
|
|
|
+ type: 2,
|
|
|
+ area: ['900px', '500px'],
|
|
|
+ title: '设计项目时间',
|
|
|
+ maxmin: true, //开启最大化最小化按钮
|
|
|
+ content: "${ctx}/sg/managementCenter/constructionProjectTemporaryController/list" ,
|
|
|
+ btn: ['确定', '关闭'],
|
|
|
+ yes: function(index, layero){
|
|
|
+ var iframeWin = layero.find('iframe')[0]; //得到弹出的窗口对象,执行窗口内iframe页的方法:iframeWin.method();
|
|
|
+ var flag = iframeWin.contentWindow.save();
|
|
|
+ if (flag){
|
|
|
+ jp.post("${ctx}/sg/managementCenter/constructionProject/save",function(data){
|
|
|
+ if(data.success){
|
|
|
+ // jp.success("安排计划成功");
|
|
|
+ }else{
|
|
|
+ jp.error(data.msg);
|
|
|
+ }
|
|
|
+ })
|
|
|
+ top.layer.close(index);
|
|
|
+ refresh();
|
|
|
+ }
|
|
|
+ },
|
|
|
+ btn2: function(index){
|
|
|
+ jp.post("${ctx}/sg/managementCenter/constructionProjectTemporaryController/deleteProject",function(data){
|
|
|
+ })
|
|
|
+ top.layer.close(index);
|
|
|
+ },
|
|
|
+ cancel:function (index) {
|
|
|
+ jp.post("${ctx}/sg/managementCenter/constructionProjectTemporaryController/deleteProject",function(data){
|
|
|
+ })
|
|
|
+ top.layer.close(index);
|
|
|
+ }
|
|
|
+ });
|
|
|
+ }
|
|
|
+ function addPowerFlag() {
|
|
|
+ top.layer.open({
|
|
|
+ type: 2,
|
|
|
+ area: ['900px', '500px'],
|
|
|
+ title: '人工选择是否带电',
|
|
|
+ maxmin: true, //开启最大化最小化按钮
|
|
|
+ content: "${ctx}/sg/managementCenter/constructionProjectTemporaryController/listPower",
|
|
|
+ btn: ['检验','确定','关闭'],
|
|
|
+ btn1:function(index,layero){
|
|
|
+ // alert("1");
|
|
|
+ var iframeWin = layero.find('iframe')[0]; //得到弹出的窗口对象,执行窗口内iframe页的方法:iframeWin.method();
|
|
|
+ iframeWin.contentWindow.save();//调用保存事件,在 弹出页内,需要定义save方法。处理保存事件。s
|
|
|
+ },
|
|
|
+ btn2: function(index,layero){
|
|
|
+ var iframeWin = layero.find('iframe')[0]; //得到弹出的窗口对象,执行窗口内iframe页的方法:iframeWin.method();
|
|
|
+ var flag = iframeWin.contentWindow.saveSure();
|
|
|
+ return false;
|
|
|
+ },
|
|
|
+ btn3: function(index){
|
|
|
+ jp.post("${ctx}/sg/managementCenter/constructionProjectTemporaryController/deleteProject",function(data){
|
|
|
+ })
|
|
|
+ top.layer.close(index);
|
|
|
+ },
|
|
|
+ cancel:function (index) {
|
|
|
+ jp.post("${ctx}/sg/managementCenter/constructionProjectTemporaryController/deleteProject",function(data){
|
|
|
+ })
|
|
|
+ top.layer.close(index);
|
|
|
+ }
|
|
|
});
|
|
|
}
|
|
|
- function jstreeTime(date) {
|
|
|
- $('#jstreeTime').treeview({
|
|
|
- data: date,
|
|
|
- levels: 1,
|
|
|
- highlightSelected:false,
|
|
|
- showCheckbox:true,
|
|
|
- onNodeSelected: function(event, treeNode) {
|
|
|
- var id = treeNode.id;
|
|
|
- jp.openSaveDialog('编辑安排计划项目', "${ctx}/sg/managementCenter/constructionProject/formPlan?id=" + id, '800px', '500px');
|
|
|
+ function addList(projectNumber,arrangeTime) {
|
|
|
+ top.layer.open({
|
|
|
+ type: 2,
|
|
|
+ area: ['900px', '500px'],
|
|
|
+ title: '项目计划安排',
|
|
|
+ maxmin: true, //开启最大化最小化按钮
|
|
|
+ content: "${ctx}/sg/managementCenter/constructionProject/form?projectNumber="+projectNumber+"&arrangeTime="+arrangeTime,
|
|
|
+ btn: ['确定', '关闭'],
|
|
|
+ yes: function(index, layero){
|
|
|
+ top.layer.close(index);
|
|
|
+ addPowerFlag();
|
|
|
},
|
|
|
-
|
|
|
+ btn2: function(index){
|
|
|
+ jp.post("${ctx}/sg/managementCenter/constructionProjectTemporaryController/deleteProject",function(data){
|
|
|
+ })
|
|
|
+ top.layer.close(index);
|
|
|
+ },
|
|
|
+ cancel:function (index) {
|
|
|
+ jp.post("${ctx}/sg/managementCenter/constructionProjectTemporaryController/deleteProject",function(data){
|
|
|
+ })
|
|
|
+ top.layer.close(index);
|
|
|
+ }
|
|
|
});
|
|
|
}
|
|
|
- function dateTimeValue(value) {
|
|
|
- if (value != '1'){
|
|
|
- $("#dateTimeId").val(value);
|
|
|
- }else {
|
|
|
- var date = new Date();
|
|
|
- var str = date.toISOString();
|
|
|
- $("#dateTimeId").val( str.substring(0,7));
|
|
|
- }
|
|
|
- }
|
|
|
+ function edit(id){//没有权限时,不显示确定按钮
|
|
|
+ if(id == undefined){
|
|
|
+ id = getIdSelections();
|
|
|
+ }
|
|
|
+ jp.openSaveDialog('编辑项目管理表单', "${ctx}/sg/managementcenter/project/form?id=" + id, '800px', '500px');
|
|
|
+ }
|
|
|
|
|
|
- function selected(data){
|
|
|
- if(data.nodeId == undefined){
|
|
|
- for (var i = 0; i < data.nodes.length; i++) {
|
|
|
- $("#jstree").treeview('checkNode', [ data.nodes[i], {silent: true}]);
|
|
|
- }
|
|
|
- }else{
|
|
|
- var parentNode = $('#jstree').treeview('getParent', data.nodeId);
|
|
|
- $("#jstree").treeview('checkNode', [ parentNode, {silent: true}]);
|
|
|
- }
|
|
|
- }
|
|
|
- function unSelected(node){
|
|
|
- if(node.id == undefined){
|
|
|
- for (var i = 0; i < node.nodes.length; i++) {
|
|
|
- $("#jstree").treeview('uncheckNode', [ node.nodes[i], {silent: true}]);
|
|
|
- }
|
|
|
- }else{
|
|
|
- var parentNode = $('#jstree').treeview('getParent', node.nodeId);
|
|
|
- var num;
|
|
|
- for (var i = 0; i < parentNode.nodes.length; i++) {
|
|
|
- if(parentNode.nodes[i].state.checked == true){
|
|
|
- num=1;
|
|
|
- }
|
|
|
- }
|
|
|
- if(num!=1){
|
|
|
- $("#jstree").treeview('uncheckNode', [ parentNode, {silent: true}]);
|
|
|
- }
|
|
|
- console.log(parentNode);
|
|
|
- }
|
|
|
- }
|
|
|
-</script>
|
|
|
+ function view(id){//没有权限时,不显示确定按钮
|
|
|
+ if(id == undefined){
|
|
|
+ id = getIdSelections();
|
|
|
+ }
|
|
|
+ jp.openViewDialog('查看项目管理表单', "${ctx}/sg/managementcenter/project/form?id=" + id, '800px', '500px');
|
|
|
+ }
|
|
|
+
|
|
|
+
|
|
|
+
|
|
|
+</script>
|