浏览代码

bugs fixed 查找定位初步

zhangweicheng 6 年之前
父节点
当前提交
f3bcc950fa

+ 1 - 0
config/gulpConfig.js

@@ -157,6 +157,7 @@ module.exports = {
         'web/building_saas/main/js/views/sub_fee_rate_views.js',
         'web/building_saas/main/js/views/calc_base_view.js',
         'web/building_saas/main/js/views/project_property_labour_coe_view.js',
+        'web/building_saas/main/js/views/locate_view.js',
         'web/building_saas/complementary_ration_lib/js/main.js',
         'public/web/storageUtil.js'
     ],

+ 3 - 18
modules/main/facade/ration_facade.js

@@ -172,7 +172,7 @@ async function getDefaultProgramID(data) {
     let searchDao = new SearchDao();
     let programID;
     let std = await searchDao.getRationItem(data.userID,data.compilationId,[data.libID],data.code, null);
-    if(std.feeType == undefined || std.feeType == null || std.feeType ==''){//定额取费专业为空的情况下,取项目属性中的定额取费专业ID
+    if(std && (std.feeType == undefined || std.feeType == null || std.feeType =='')){//定额取费专业为空的情况下,取项目属性中的定额取费专业ID
         programID = await getProgramForProject(data.projectID);
     }else {
         programID = std.feeType;
@@ -326,22 +326,7 @@ async function getCustomerCoe(projectID,rationID,seq,compilation){//取自定义
 
 //对于多单价,多组成物消耗量的编办,通过这个方法获取单价、组成物消耗量的字段,
 function getExtendData(property,compilation) {
-    let ext = {};
-    let region = property.region;
-    let taxType = property.taxType;
-    if(compilation.priceProperties && compilation.priceProperties.length > 0){//如果是具有多单价的编办,取单价对应的字段
-          let priceProperty  = _.find(compilation.priceProperties,{region:region,taxModel:parseInt(taxType)});
-          if(priceProperty){
-              ext['priceField'] =  priceProperty.price.dataCode;
-          }
-    }
-    if(compilation.consumeAmtProperties && compilation.consumeAmtProperties.length > 0){
-          let  consumeAmt =   _.find(compilation.consumeAmtProperties,{region:region,taxModel:parseInt(taxType)});
-          if(consumeAmt){
-              ext['quantityField'] =  consumeAmt.consumeAmt.dataCode;
-          }
-    }
-    return _.isEmpty(ext)?null:ext;
+    return projectDao.getExtendData(property,compilation);
 }
 
 
@@ -415,7 +400,7 @@ async function addRationGLJ(std,newRation,compilation) {
                 newGLJ.materialType = std_glj.materialType;
                 newGLJ.materialCoe = std_glj.materialCoe;
                 newGLJ.createType = 'normal';
-                let info =  await  ration_glj_facade.getInfoFromProjectGLJ(newGLJ,unitPriceFileId,ext);
+                let info =  await ration_glj_facade.getInfoFromProjectGLJ(newGLJ,unitPriceFileId,ext);
                 newGLJ = ration_glj_facade.createNewRecord(info);
                 newRationGLJList.push(newGLJ);
                 rationGLJShowList.push(info);

+ 19 - 0
modules/pm/models/project_model.js

@@ -695,6 +695,25 @@ ProjectsDAO.prototype.getProjectProperty = async function (projectId) {
     return projectData.property;
 };
 
+ProjectsDAO.prototype.getExtendData = function(property,compilation) {
+    let ext = {};
+    let region = property.region;
+    let taxType = property.taxType;
+    if(compilation.priceProperties && compilation.priceProperties.length > 0){//如果是具有多单价的编办,取单价对应的字段
+        let priceProperty  = _.find(compilation.priceProperties,{region:region,taxModel:parseInt(taxType)});
+        if(priceProperty){
+            ext['priceField'] =  priceProperty.price.dataCode;
+        }
+    }
+    if(compilation.consumeAmtProperties && compilation.consumeAmtProperties.length > 0){
+        let  consumeAmt =   _.find(compilation.consumeAmtProperties,{region:region,taxModel:parseInt(taxType)});
+        if(consumeAmt){
+            ext['quantityField'] =  consumeAmt.consumeAmt.dataCode;
+        }
+    }
+    return _.isEmpty(ext)?null:ext;
+}
+
 
 /**
  * 获取当前用户的建设项目数据

+ 69 - 0
web/building_saas/main/html/main.html

@@ -118,6 +118,9 @@
                   <div class="side-tabs">
                       <ul class="nav nav-tabs" role="tablist">
                           <li class="nav-item">
+                              <a class="nav-link px-3" href="javascript:void(0)" id = 'locateTab' relaPanel="#locate">查找定位</a>
+                          </li>
+                          <li class="nav-item">
                               <a class="nav-link px-3" href="javascript:void(0)" id = 'stdBillsGuidanceTab' relaPanel="#zy">清单指引</a>
                           </li>
                          <!-- <li class="nav-item">
@@ -307,6 +310,71 @@
                       <div class="main-side" style="display: inline-block">
                           <div class="resize" id="sideResize" style="width: 1%; height: 100%; resize:horizontal; cursor: w-resize; float: left; background: #F1F1F1"></div>
                           <div class="tab-content" style="width: 99%; height: 100%; float: left">
+                              <!--查找定位-->
+                              <div class="tab-pane" id="locate">
+                                  <div class="sidebar-tools-bar container-fluid tools-bar-height-y">
+                                      <div class="p-1 row">
+                                          <div class="input-group input-group-sm col-12">
+                                              <input type="text" class="form-control form-control-sm" placeholder="查找内容" value="">
+                                              <div class="input-group-append">
+                                                  <button class="btn btn-secondary btn-sm" type="button"><i class="fa fa-search" aria-hidden="true"></i></button>
+                                              </div>
+                                          </div>
+                                          <div class="form-group col-12 mb-1">
+                                              <div class="form-check form-check-inline">
+                                                  <input class="form-check-input" type="radio" name="content_type" id="bills" value="option1">
+                                                  <label class="form-check-label" for="bills">分项/清单</label>
+                                              </div>
+                                              <div class="form-check form-check-inline">
+                                                  <input class="form-check-input" type="radio" name="content_type" id="ration" value="option2">
+                                                  <label class="form-check-label" for="ration">定额</label>
+                                              </div>
+                                              <div class="form-check form-check-inline">
+                                                  <input class="form-check-input" type="radio" name="content_type" id="raion_glj" value="option3">
+                                                  <label class="form-check-label" for="raion_glj">人材机</label>
+                                              </div>
+                                              <!--<div class="form-check form-check-inline">
+                                                  <input class="form-check-input" type="radio" name="inlineRadioOptions" id="bookmark" value="option4">
+                                                  <label class="form-check-label" for="bookmark">书签标注</label>
+                                              </div>-->
+                                          </div>
+                                          <!--搜索分项/清单 出现-->
+                                          <div class="col-12"  id="outstandingOptions">
+                                              <div class="form-group form-check mb-0">
+                                                  <input type="checkbox" class="form-check-input" id ="outstanding">
+                                                  <label class="form-check-label" for="outstanding">超 <input type="number" style="width:50px"> % 时突出显示</label>
+                                              </div>
+                                          </div>
+                                      </div>
+                                  </div>
+                                  <!--上下结构-->
+                                  <div class="top-content" style="overflow: hidden">
+                                      <div class="" id="locate_result" >
+                                      </div>
+                                  </div>
+                                  <div class="resize" id="locate_resize" style="background: #F1F1F1"></div>
+                                  <div class="bottom-content">
+                                      <div class="" id="locate_sub"></div>
+                                  </div>
+                                <!--  <div class="main-data-side-y">
+                                      <table class="table table-sm table-bordered">
+                                          <tr><th>编码</th><th>项目名称</th><th>工程量</th><th>单位</th><th>综合单价</th><th>综合合价</th></tr>
+                                      </table>
+                                  </div>
+                                  <div class="sidebar-bottom container-fluid">
+                                      <div class="row">
+                                          <div class="col-lg-12">
+                                              <table class="table table-sm table-bordered">
+                                                  <tr><th>定额编号</th><th>定额名称</th></tr>
+                                                  <tr><td>AA0047</td><td>人工沟槽 较硬岩 槽深4m以内</td></tr>
+                                                  <tr><td>AA0005</td><td>人工挖沟槽土方 槽深4m以内</td></tr>
+                                              </table>
+                                          </div>
+                                      </div>
+                                  </div>-->
+
+                              </div>
+
                               <!--清单指引-->
                               <div class="tab-pane" id="zy">
                                   <div class="sidebar-tools-bar container-fluid tools-bar-height-z">
@@ -1702,6 +1770,7 @@
     <script type="text/javascript" src="/web/building_saas/main/js/views/sub_fee_rate_views.js"></script>
     <script type="text/javascript" src="/web/building_saas/main/js/views/calc_base_view.js"></script>
     <script type="text/javascript" src="/web/building_saas/main/js/views/project_property_labour_coe_view.js"></script>
+    <script type="text/javascript" src="/web/building_saas/main/js/views/locate_view.js"></script>
     <script type="text/javascript" src="/web/building_saas/complementary_ration_lib/js/main.js"></script>
     <script type="text/javascript" src="/public/web/storageUtil.js"></script>
     <!-- endinject -->

+ 38 - 0
web/building_saas/main/js/views/locate_view.js

@@ -0,0 +1,38 @@
+/**
+ * Created by zhang on 2018/11/16.
+ */
+let locateObject={
+
+
+    init:function () {
+        let tab_content = $('#locate').parent();
+        $('#locate_result').height(tab_content.height()*0.6);
+        $('#locate_sub').height(tab_content.height()*0.4);
+
+
+    },
+
+    onshow:function () {
+
+        locateObject.init();
+        console.log('#locate is now visible');
+        console.log($("#locate").is(':visible'))
+    }
+
+}
+
+
+
+
+/*
+$("input[name='install_setting_radios']").each(function(){
+    $(this).click(function(){
+        var settingVal = $(this).val();
+        let installSetting = projectInfoObj.projectInfo.property.installSetting;
+        if(installSetting==settingVal){
+            return;
+        }
+        projectObj.project.installation_fee.updateInstallSetting(settingVal);
+        installationFeeObj.cleanPositionIfNeed(settingVal);
+    });
+});*/

+ 3 - 1
web/building_saas/main/js/views/side_tools.js

@@ -103,7 +103,7 @@ var sideToolsObj = {
                 sideResizeEles.farElement.css('width', '33.333333%');
             }
             $('.main-side .tab-pane').hide();
-            tabPanel.show();
+            id === 'locateTab'?tabPanel.show(locateObject.onshow):tabPanel.show();//locateTab要等div显示后才执行刷新操作
             loadSize(sideResizeEles, 'width', function(){
                 if(id === 'stdBillsGuidanceTab'){//清单指引
                     loadSize(billsGuidanceLibResizeEles, 'height', function(){
@@ -116,6 +116,8 @@ var sideToolsObj = {
                 else if(id === 'blockLibTab'){//定额库
                     loadSize(blockLibResizeEles, 'height', function(){
                     });
+                }else if(id == "locateTab"){
+
                 }
                 else{//清单库
                     loadSize(billsLibResizeEles, 'height', function(){