Browse Source

Merge branch 'master' into olym

olym 7 years ago
parent
commit
65d07f65bf

+ 1 - 1
public/web/tree_sheet/tree_sheet_helper.js

@@ -336,7 +336,7 @@ var TREE_SHEET_HELPER = {
                 $(this._toolTipElement).show("fast");
             }
         };
-        TipCellType.prototype.processMouseLeave = function (hininfo) {
+        TipCellType.prototype.processMouseLeave = function (hitinfo) {
             if (this._toolTipElement) {
                 document.body.removeChild(this._toolTipElement);
                 this._toolTipElement = null;

+ 1 - 1
web/building_saas/complementary_glj_lib/js/components.js

@@ -110,7 +110,7 @@ let componentOprObj = {
         let that = repositoryGljObj, me = componentOprObj;
         $('#searchGlj').val('');//恢复搜索文本
         //初始化组成物列表
-        me.selectedList = that.currentComponent;
+        me.selectedList = [].concat(that.currentComponent);
         //默认radio所有工料机
         if(typeof $("input[name='glj']:checked")[0] !== 'undefined'){
             $("input[name='glj']:checked")[0].checked = false;

+ 6 - 11
web/building_saas/complementary_glj_lib/js/glj.js

@@ -296,6 +296,7 @@ let repositoryGljObj = {
             sheetOpr.cleanSheet(that.workBook.getSheet(0), that.setting, -1);
             me.workBook.focus(true);
             me.currentComponent = [];
+            that.workBook.getSheet(0).setRowCount(5);
             if(row < me.currentCache.length){
                 //标记当前工料机
                 me.currentGlj = me.currentCache[row];
@@ -382,17 +383,10 @@ let repositoryGljObj = {
                         me.workBook.getSheet(0).suspendPaint();
                         me.workBook.getSheet(0).suspendEvent();
                         for(let col=0; col<me.setting.header.length; col++){
-                            let field = me.setting.header[col].dataCode;
-                            if(field === 'gljType'){
-                                me.workBook.getSheet(0).getCell(me.editingRowIdx, col).value(
-                                    typeof me.currentEditingGlj[field] !== 'undefined'?
-                                    me.distTypeTree.distTypes[me.distTypeTree.prefix + me.currentEditingGlj[field]].data.fullName
-                                    : '');
-                            }
-                            else{
+                            if(col === 0){
                                 me.workBook.getSheet(0).getCell(me.editingRowIdx, 0).formatter("@");
-                                me.workBook.getSheet(0).getCell(me.editingRowIdx, col).value(me.currentEditingGlj[me.setting.header[col].dataCode]);
                             }
+                            me.workBook.getSheet(0).getCell(me.editingRowIdx, col).value('');
                         }
                         me.workBook.getSheet(0).setActiveCell(me.editingRowIdx, 0);
                         me.workBook.getSheet(0).resumePaint();
@@ -445,7 +439,7 @@ let repositoryGljObj = {
                                 if(me.componentGljType.indexOf(me.currentEditingGlj.gljType) !== -1 &&
                                     !(me.currentEditingGlj.gljType === 302 && rObj.gljType === 303) && !(me.currentEditingGlj.gljType === 303 && rObj.gljType === 302)){//修改了原本是组成物的工料机
                                     //寻找所有引用了此组成物的工料机,并从组成物中删去此工料机,并重算单价
-                                    let updateGljs = me.getUpdateGljs(rObj);
+                                    let updateGljs = me.getUpdateGljs(rObj, true);
                                     if(updateGljs.updateArr.length > 0 || updateGljs.updateBasePrcArr.length > 0){
                                         for(let i = 0; i < updateGljs.updateArr.length; i++){
                                             updateArr.push(updateGljs.updateArr[i]);
@@ -455,6 +449,8 @@ let repositoryGljObj = {
                                         }
                                     }
                                 }
+                            sheetOpr.cleanData(that.workBook.getSheet(0), that.setting, 5);
+                            that.isLocked = me.allowComponent.indexOf(rObj.gljType) !== -1 ? false : true;
                         }
                         else if(rObj.basePrice !== me.currentEditingGlj.basePrice){//修改了单价,可修改单价的必为可成为组成物的
                             //寻找所有引用了此组成物的工料机,并从组成物中删去此工料机,并重算单价
@@ -474,7 +470,6 @@ let repositoryGljObj = {
                     }
                     else{
                         if(me.setting.header[args.col].dataCode === 'gljType'){
-                            console.log(me.distTypeTree);
                             let distTypeVal =  me.distTypeTree.distTypes[me.distTypeTree.prefix + me.currentEditingGlj[me.setting.header[args.col].dataCode]].data.fullName;
                             args.sheet.setValue(args.row, args.col, distTypeVal);
                         }

+ 3 - 2
web/building_saas/css/main.css

@@ -305,6 +305,7 @@ body {
   background:#fff;
   border-bottom:1px solid #ddd
 }
-.gc-column-header-cell{
-    text-align: center!important;
+.navbar-crumb span{
+  max-width: 200px;
+  display: inline-block;
 }

+ 10 - 14
web/building_saas/js/global.js

@@ -21,11 +21,11 @@ function autoFlashHeight(){
 $(window).resize(autoFlashHeight);
 /*全局自适应高度结束*/
 $(function(){
-    /*侧滑*/
-    $(".open-sidebar").click(function(){
-        $(".slide-sidebar").animate({width:"800"}).addClass("open");
-    });
-    $("body").click(function(event){
+/*侧滑*/
+$(".open-sidebar").click(function(){
+    $(".slide-sidebar").animate({width:"800"}).addClass("open");
+});
+$("body").click(function(event){
         var e = event || window.event; //浏览器兼容性
         if(!$(event.target).is('a')) {
             var elem = event.target || e.srcElement;
@@ -39,13 +39,9 @@ $(function(){
         }
 
     });
-    /*侧滑*/
-    /*工具提示*/
-    $(function () {
-        $('[data-toggle="tooltip"]').tooltip()
-    });
-    /*工具提示*/
-    $(function () {
-        $('[data-toggle="popover"]').popover()
-    });
+/*侧滑*/
+/*工具提示*/
+$(function () {
+  $('[data-toggle="tooltip"]').tooltip()
+});
 });

+ 5 - 12
web/building_saas/main/html/main.html

@@ -16,8 +16,6 @@
     <link rel="stylesheet" href="/lib/spreadjs/views/gc.spread.views.dataview.10.0.0.css">
     <!-- jquery.contextmenu -->
     <link rel="stylesheet" href="/lib/jquery-contextmenu/jquery.contextMenu.css" type="text/css">
-    <script src="/lib/jquery/jquery.min.js"></script>
-    <script src="/web/building_saas/js/global.js"></script>
     <script>
         // 这里的变量供页面调用
         var userAccount = '<%- userAccount %>';
@@ -480,7 +478,7 @@
                                         <select class="col-4 form-control form-control-sm"><option>渝建[2016]71号</option><option>渝建[2017]78号</option></select>
                                     </div>
                                     <div style="height:8px;"></div>
-                                    <div class="modal-auto-height" id="labourCoeSpread" />
+                                    <div class="modal-auto-height" id="labourCoeSpread"></div>
                                 </div>
                             </div>
                         </div>
@@ -512,19 +510,19 @@
         </div>
     </div>
     <!-- JS. -->
+    <script src="/lib/jquery/jquery.min.js"></script>
+    <script src="/lib/tether/tether.min.js"></script>
+    <script src="/lib/bootstrap/bootstrap.min.js"></script>
+    <script src="/web/building_saas/js/global.js"></script>
     <script type="text/javascript">
         autoFlashHeight();
     </script>
-
-    <script src="/lib/tether/tether.min.js"></script>
-    <script src="/lib/bootstrap/bootstrap.min.js"></script>
     <!--expression calculate-->
     <script src="/lib/JSExpressionEval_src/Date.js"></script>
     <script src="/lib/JSExpressionEval_src/Stack.js"></script>
     <script src="/lib/JSExpressionEval_src/Tokanizer.js"></script>
     <script src="/lib/JSExpressionEval_src/Evaluator.js"></script>
     <!--end expression calculate-->
-    <!--<script type="text/javascript" src="/lib/bootstrap/bootstrap-select.min.js"></script>-->
     <script type="text/javascript" src="/lib/jquery-contextmenu/jquery.contextMenu.js"></script>
     <script type="text/javascript" src="/lib/jquery-contextmenu/jquery.ui.position.js"></script>
     <script type="text/javascript" src="/lib/lodash/lodash.js"></script>
@@ -569,11 +567,6 @@
     <script type="text/javascript" src="/public/web/tree_sheet/tree_sheet_helper.js"></script>
     <script type="text/javascript" src="/public/web/sheet/sheet_data_helper.js"></script>
 
-    <!-- Test Data -->
-    <script type="text/javascript" src="/test/tmp_data/bills_grid_setting.js"></script>
-    <!--<script type="text/javascript" src="/test/tmp_data/test_bills_calc/bills_grid_setting_test_calc.js"></script>
-    <script type="text/javascript" src="/test/tmp_data/test_bills_calc/bills_data_15690.js"></script>
-    <script type="text/javascript" src="/test/tmp_data/test_bills_calc/drawing_data_10268.js"></script>-->
     <!-- view -->
     <script type="text/javascript" src="/web/building_saas/main/js/views/main_tree_col.js"></script>
     <script type="text/javascript" src="/web/building_saas/main/js/views/project_info.js"></script>

+ 2 - 2
web/building_saas/main/js/views/main_tree_col.js

@@ -40,10 +40,10 @@ let MainTreeCol = {
         },
         forCalcBase: function (node) {
             // to do according to billsParentType
-            return MainTreeCol.readOnly.billsParent(node) && MainTreeCol.readOnly.non_bills(node);
+            return MainTreeCol.readOnly.billsParent(node) || MainTreeCol.readOnly.non_bills(node);
         },
         forUnitFee: function (node) {
-            return MainTreeCol.readOnly.ration(node) && MainTreeCol.readOnly.billsParent(node);
+            return MainTreeCol.readOnly.ration(node) || MainTreeCol.readOnly.billsParent(node);
         }
     },
     cellType: {

+ 9 - 3
web/building_saas/main/js/views/project_info.js

@@ -5,13 +5,19 @@
 var projectInfoObj = {
     projectInfo: null,
     getFullPathHtml: function (proj) {
-        var fullPath = [], i, pm = '<a href="/pm">项目管理</a>', angleRight = '<i class="fa fa-angle-right fa-fw"></i>';
+        let fullPath = [], i, pm = '<span class="text-truncate"><a href="/pm">项目管理</a></span>', angleRight = '<span class="text-truncate"><i class="fa fa-angle-right fa-fw"></i></span>';
         fullPath.push(pm);
         if (proj && proj.fullFolder) {
             for (i = 0; i < proj.fullFolder.length; i++) {
-                fullPath.push(angleRight, proj.fullFolder[i]);
+                if (i <= proj.fullFolder.length - 3) {
+                    fullPath.push(angleRight, '<span class="text-truncate" data-toggle="tooltip" data-placement="bottom" title="', proj.fullFolder[i], '"><i class="fa fa-folder-open-o"></i></span>');
+                } else if (i === proj.fullFolder.length - 2) {
+                    fullPath.push(angleRight, '<span class="text-truncate" data-toggle="tooltip" data-placement="bottom" title="' + proj.fullFolder[i] + '"><i class="fa fa-cubes"></i>' + proj.fullFolder[i] + '</span>');
+                } else if (i === proj.fullFolder.length - 1) {
+                    fullPath.push(angleRight, '<span class="text-truncate" data-toggle="tooltip" data-placement="bottom" title="' + proj.fullFolder[i] + '"><i class="fa fa-cube"></i>' + proj.fullFolder[i] + '</span>');
+                }
             }
-            fullPath.push(angleRight, proj.name);
+            fullPath.push(angleRight, '<span class="text-truncate" data-toggle="tooltip" data-placement="bottom" title="' + proj.name + '"><i class="fa fa-sticky-note-o"></i>' + proj.name + '</span>');
         }
         return fullPath.join('');
     },

+ 2 - 2
web/common/html/header.html

@@ -1,8 +1,8 @@
 <nav class="navbar navbar-toggleable-lg navbar-light bg-faded p-0 justify-content-between">
     <span class="header-logo px-2">Smartcost</span>
-    <div class="navbar-text" id="fullpath">
+    <div class="navbar-text navbar-crumb p-0" id="fullpath">
         <% if (action !== 'index' || controller !== 'pm') {%>
-        <a href="/pm">项目管理</a>
+        <span class="text-truncate"><a href="/pm">项目管理</a></span>
         <% } %>
     </div>
     <div class="float-lg-right navbar-text pt-0">