Browse Source

项目管理,文件夹、项目缩进调整等

MaiXinRong 8 years ago
parent
commit
c083a3192b
5 changed files with 46 additions and 67 deletions
  1. 0 1
      modules/pm/routes/pm_route.js
  2. 14 7
      web/css/main.css
  3. 1 1
      web/main/html/main.html
  4. 16 10
      web/pm/js/pm_main.js
  5. 15 48
      web/scripts/tree_table.js

+ 0 - 1
modules/pm/routes/pm_route.js

@@ -4,7 +4,6 @@
 
 var express = require('express');
 var pmRouter = express.Router();
-var htmlPath = require('path').join(__dirname,'../../','web/pm/html/');
 var pmController = require('./../controllers/pm_controller');
 
 pmRouter.get('/pm', function(req, res){

+ 14 - 7
web/css/main.css

@@ -26,12 +26,12 @@ body {
   width:100%;
   z-index: 999
 }
-.in-1{padding-left:0rem!important}
-.in-2{padding-left:1rem!important}
-.in-3{padding-left:1.5rem!important}
-.in-4{padding-left:2rem!important}
-.in-5{padding-left:2.5rem!important}
-.in-6{padding-left:3rem!important}
+.in-1{padding-left:0px!important}
+.in-2{padding-left:21px!important}
+.in-3{padding-left:42px!important}
+.in-4{padding-left:63px!important}
+.in-5{padding-left:84px!important}
+.in-6{padding-left:105px!important}
 .main {
     position: relative;
     background: #f7f7f9;
@@ -62,6 +62,9 @@ body {
     background: #fff;
     color: #333
 }
+.main-nav .nav-tabs{
+  border-bottom: none
+}
 .content {
     border-left: 1px solid #ccc;
     margin-left: 29px;
@@ -219,9 +222,13 @@ body {
     overflow: auto;
 }
 .poj-list span.poj-icon {
-  padding-right:10px;
+  padding-right:7px;
   color:#ccc
 }
+.poj-list a.tree-open,.poj-list a.tree-close{
+  width:15px;
+  display: inline-block;
+}
 .print-toolsbar{
   padding:5px
 }

+ 1 - 1
web/main/html/main.html

@@ -44,7 +44,7 @@
                 <span class="btn btn-link btn-sm new-msg">
                   <i class="fa fa-envelope-o" aria-hidden="true"></i>&nbsp;2
                 </span>
-                <button class="btn btn-link btn-sm">注销</button>
+                <a class="btn btn-link btn-sm" href="/logout">注销</a>
             </div>
         </nav>
         <nav class="navbar navbar-toggleable-lg justify-content-between navbar-light p-0">

+ 16 - 10
web/pm/js/pm_main.js

@@ -8,19 +8,27 @@ var ProjTreeSetting = {
         {
             head: '',
             data: '',
-            static: true,
             width: '40',
             event: {}
         },
         {
             head: '工程列表',
             data: 'name',
-            static: false,
             width: '78%',
             event: {
-                getUrl: function (node) {
+                getText: function (html, node, text) {
+                    html.push((node && node.data && node.data.projType === 'Folder') ? '&nbsp;' : '');
+                    html.push('<a ');
                     if (node && node.data && node.data.projType === 'Tender') {
-                        return '/main?project='+node.id();
+                        html.push('href="/main?project=', node.id(), '"');
+                    }
+                    html.push('>', text, '<a>');
+                },
+                getIcon: function (html, node) {
+                    if (node.data.projType === 'Folder') {
+                        html.push('<i class ="tree-icon fa fa-folder-open-o"></i>');
+                    } else {
+                        html.push('<span class="poj-icon">└</span>');
                     }
                 }
             }
@@ -28,22 +36,20 @@ var ProjTreeSetting = {
         {
             head: '最近使用',
             data: 'lastDateTime',
-            static: false,
             width: '10%',
             event: {
-                textFormat: function (date) {
-                    return date ? new Date(date).Format('yyyy-MM-dd') : '';
+                getText: function (html, node, text) {
+                    html.push(text ? new Date(text).Format('yyyy-MM-dd') : '');
                 }
             }
         },
         {
             head: '创建日期',
             data: 'createDateTime',
-            static: false,
             width: '10%',
             event: {
-                textFormat: function (date) {
-                    return date ? new Date(date).Format('yyyy-MM-dd') : '';
+                getText: function (html, node, text) {
+                    html.push(text ? new Date(text).Format('yyyy-MM-dd') : '');
                 }
             }
         }

+ 15 - 48
web/scripts/tree_table.js

@@ -18,7 +18,10 @@
  			data: 'name',
  			static: false,
  			width: '100%',
-            event: {}
+            event: {
+                getText: null,
+                getIcon: null
+            }
  		}
  		],
  		dataTemp: {
@@ -423,67 +426,31 @@
  			obj.append(tbody);
  			return tbody;
  		},
-		/*_makeTreeExpandBtn: function (obj, node){
- 			var span = $('<a href="#" class="tree-open" title="收起"><i class="fa fa-minus-square-o mr-1"></i></a>'),
- 				btn = $('i', span);
- 			obj.append(span);
- 			node.expandBtn = span;
- 			btn.bind('click', {node: node}, function(e){
- 				e.data.node.expand(!e.data.proj.expand());
- 			});
- 			if (node.children.length === 0) {
- 				span.hide();
- 			} else {
- 				span.show();
- 			}
- 			return span;
- 		},*/
  		_makeTableRowCell: function (obj, node, columns, index) {
  			var html = [], td, i, url;
 
  			html.push('<td ');
  			if (index === node.setting.tree.btnColumn){
  				html.push('class=', 'in-', node.depth().toString(), '>');
-                // to Do 此部分中Folder与Tender的区别应由外部控制
- 				if (node.children.length !== 0) {
- 					html.push('<a href="#" class="tree-open" title="收起"><i class="fa fa-minus-square-o mr-1"></i></a>');
- 				} else if (node.data.projType === 'Folder') {
- 					html.push('<a href="#" class="tree-open" title="收起"><i class="in-2"></i></a>');
- 				} else {
-                    if (node.parent === node.tree._root) {
-                        html.push('<span class="in-1 poj-icon">└</span>');
-                    } else {
-                        html.push('<span class="in-3 poj-icon">└</span>');
-                    }
-                }
-                if (node.data.projType === 'Folder') {
-     				html.push('<i class="tree-icon fa fa-folder-open-o"></i>');
+                if (node.children.length !== 0) {
+                    html.push('<a href="#" class="tree-open" title="收起"><i class="fa fa-minus-square-o mr-1"></i></a>');
                 } else {
-         			html.push('<i class="tree-icon"></i>');
+                    html.push('<a href="#" class="tree-open" title="收起"><i></i></a>');
                 }
  			} else {
  				html.push('>');
  			}
 
- 			if (!columns.static) {
- 				//html.push('&nbsp;', node.data[columns.data]);
-                if (node.data.projType === 'Folder') {
-    				html.push('&nbsp;');
-                }
-				html.push('<a ');
-                if (columns.event.getUrl) {
-                    url = columns.event.getUrl(node);
-                    if (url) {
-                        html.push('href="', url, '"')
-                    }
-                }
-				html.push('>');
-                if (columns.event.textFormat) {
-                    html.push(columns.event.textFormat(node.data[columns.data]));
+            if (columns.event.getIcon) {
+                columns.event.getIcon(html, node);
+            }
+
+ 			if (columns.name !== '') {
+                if (columns.event.getText) {
+                    columns.event.getText(html, node, node.data[columns.data]);
                 } else {
-                    html.push(node.data[columns.data]);
+                    html.push(node.data[columns.name]);
                 }
-				html.push('</a>');
  			}
  			html.push('</td>');