Browse Source

Merge branch 'feature/v1.0.51' of https://jygit.jydev.jianyu360.cn/jianyu/web into feature/v1.0.51

zhangyuhan 1 year ago
parent
commit
8bfee59c75

+ 1 - 2
apps/bigmember_pc/src/assets/style/page/pdf.scss

@@ -33,8 +33,7 @@ body {
 }
 * {
   line-height: 22px;
-  font-family: 'Microsoft YaHei', '微软雅黑', sans-serif !important;
-  //font-family: SimSun, Tahoma, Arial, sans-serif !important;
+  font-family: SimSun, Tahoma, Arial, sans-serif !important;
   box-sizing: border-box !important;
   word-break: break-all;
 }

+ 6 - 3
apps/bigmember_pc/src/views/analysisReport/components/ReportDownloadDialog.vue

@@ -6,8 +6,9 @@
     lock-scroll
     center
     top="15%"
-    custom-class="self-report-download-dialog"
+    custom-class="market-report-download-dialog"
     width="1000px"
+    style="overflow: hidden"
   >
     <div class="content" v-loading="loading">
       <section class="report-effect-box">
@@ -149,6 +150,7 @@ export default {
           }
           ajaxExportPdf(params).then(response => {
             if(response.error_code === 0 && response.data) {
+              this.options.visible = false
               this.showConfirmDialog()
             }
           }).finally(() => {
@@ -191,7 +193,7 @@ export default {
 </script>
 
 <style lang="scss" scoped>
-  .self-report-download-dialog{
+  .market-report-download-dialog{
     section {
       margin-top:20px;
     }
@@ -342,7 +344,8 @@ export default {
       padding: 32px 32px 0 32px;
     }
     .el-dialog__body {
-      padding: 0 20px 32px 32px;
+      overflow-y: auto;
+      padding: 0 32px 20px 32px;
     }
     .el-dialog__footer{
       padding: 11px 32px;

+ 13 - 0
apps/bigmember_pc/src/views/analysisReport/index.vue

@@ -341,6 +341,13 @@ export default {
 }
 </script>
 <style lang="scss" scoped>
+@media (max-height: 600px) {
+  ::v-deep {
+    .market-report-download-dialog .el-dialog__body{
+      max-height: calc(90vh - 56px - 69px);
+    }
+  }
+}
 .in-app {
   .analysis-report {
     @extend .sub-page-container;
@@ -374,6 +381,12 @@ export default {
   .el-tabs__active-bar {
     background-color: #2cb7ca;
   }
+  .market-report-download-dialog.el-dialog {
+    margin-top: 10vh !important;
+    .el-dialog--center .el-dialog__body {
+      padding: 0 32px 20px 32px;
+    }
+  }
 }
 .analysis-report {
   .report-content {

+ 39 - 11
apps/bigmember_pc/src/views/portrayal/EntPortrayal.vue

@@ -45,7 +45,7 @@
       </div>
     </div>
     <div class="ent-content" v-loading="loading">
-      <div class="placeholderbox">
+      <div class="placeholderbox bg-white">
         <div
           class="tab-header"
           :class="{ 'fixed-nav': navFixed }"
@@ -78,14 +78,14 @@
           >
         </div>
       </div>
-      <div class="tab-content" style="padding-bottom: 40px">
-        <div id="entInfo" class="tab-content-item p-l-r-32">
+      <div class="tab-content" >
+        <div id="entInfo" class="tab-content-item p-l-r-32 bg-white">
           <!-- 工商信息 -->
           <!-- 标记滚动位置 默认浏览器顶端滚动位置为tab定位偏移量加tab高度-->
           <div class="markPosition gsxx">
             <div class="item"></div>
           </div>
-          <EntForm :id="eId" @entname="entname" @formData="formData"></EntForm>
+          <EntForm style="margin-top:0;padding-top:32px;" :id="eId" @entname="entname" @formData="formData"></EntForm>
           <!-- 工商变动 -->
           <div class="markPosition gsbd">
             <div class="item"></div>
@@ -131,15 +131,15 @@
             ></MaskCard>
           </div>
         </div>
-        <div class="partingLine"></div>
+<!--        <div class="partingLine"></div>-->
         <!-- 中标动态 中标分析 -->
-        <div id="chartInfo" class="tab-content-item">
+        <div id="chartInfo" class="tab-content-item bg-white">
           <div>
             <!-- 中标动态 -->
             <div class="markPosition zbdt">
               <div class="item"></div>
             </div>
-            <div class="bidcomp p-l-r-32" style="padding-top: 32px">
+            <div class="bidcomp p-l-r-32" >
               <!-- 筛选部分 -->
               <BidInfoActive
                 whichPor="entpor"
@@ -159,8 +159,7 @@
             </div>
             <div
               id="project-information"
-              class="p-l-16 p-r-32 p-b-32"
-              :style="{ margin: '32px 0 0' }"
+              class="p-l-16 p-r-32 p-b-32 p-t-32"
             >
               <!-- 列表部分 -->
               <Dynamic-list
@@ -906,12 +905,21 @@ export default {
     },
     // 开通超级订阅
     goVipBuy () {
-      window.open('/swordfish/page_big_pc/free/svip/buy?type=buy')
     }
   }
 }
 </script>
 <style lang="scss" scoped>
+@media (max-height: 840px) {
+  ::v-deep {
+    .short-dialog__body .ent-report-download-dialog .el-dialog__body{
+      height: auto;
+    }
+    .ent-report-download-dialog .el-dialog__body{
+      max-height: calc(90vh - 56px - 69px);
+    }
+  }
+}
 .markPosition {
   position: relative;
 
@@ -925,6 +933,10 @@ export default {
   height: 16px;
   // color: #F2F2F4;
   background-color: #f2f2f4;
+  position: relative;
+}
+.bg-white {
+  background: #fff;
 }
 .ent-portrayal {
   margin: 32px auto;
@@ -939,6 +951,12 @@ export default {
         line-height: 20px;
       }
     }
+    .ent-report-download-dialog.el-dialog {
+      margin-top: 10vh !important;
+      .el-dialog--center .el-dialog__body {
+        padding: 0 32px 20px 32px;
+      }
+    }
     .download-bottom-tip {
       width: calc(1200px - 280px);
       left: 50%;
@@ -953,6 +971,7 @@ export default {
     padding: 20px 40px 12px;
     background: #fff;
     line-height: 36px;
+    border-radius: 4px;
     .handle_option{
       display: flex;
       justify-content: right;
@@ -1016,6 +1035,7 @@ export default {
 
   .placeholderbox {
     height: 49px;
+    border-radius: 4px 4px 0 0;
   }
 
   .tab-header {
@@ -1070,7 +1090,7 @@ export default {
 
   .ent-content {
     margin-top: 16px;
-    background: #fff;
+    background: #f2f2f4;
 
     ::v-deep.el-tabs__header {
       margin: 0;
@@ -1209,6 +1229,14 @@ export default {
       height: 20px;
     }
   }
+  #entInfo{
+    border-radius: 0 0 4px 4px;
+    margin-bottom: 16px;
+  }
+  #chartInfo {
+    padding:32px 0;
+    border-radius: 4px;
+  }
 }
 
 .p-l-r-32 {

+ 37 - 10
apps/bigmember_pc/src/views/portrayal/EntSearchPortrayal.vue

@@ -62,7 +62,7 @@
       </div>
     </div>
     <div class="ent-content" v-loading="loading">
-      <div class="placeholderbox">
+      <div class="placeholderbox bg-white">
         <div
           class="tab-header bg-white"
           :class="{ 'fixed-nav': navFixed }"
@@ -105,6 +105,7 @@
             <div class="item"></div>
           </div>
           <EntSubVipForm
+            style="margin-top: 0;padding-top:32px;"
             :id="eId"
             @entname="entname"
             @formData="formData"
@@ -155,7 +156,7 @@
             ></MaskCard>
           </div>
         </div>
-        <div class="partingLine"></div>
+<!--        <div class="partingLine"></div>-->
         <!-- 中标分析 中标动态 -->
         <div id="chartInfo" class="tab-content-item bg-white">
           <div class="ent-tab2-content" v-if="showTab2Content" key="tab2">
@@ -278,7 +279,7 @@
             class="ent-vip-upgrade-group"
             v-else
             key="tab2"
-            style="margin-top: 40px"
+            style="padding-top:32px;"
           >
             <template>
               <div class="markPosition zbdt">
@@ -1380,6 +1381,16 @@ export default {
 }
 </script>
 <style lang="scss" scoped>
+@media (max-height: 840px) {
+  ::v-deep {
+    .short-dialog__body .ent-report-download-dialog .el-dialog__body{
+      height: auto;
+    }
+    .ent-report-download-dialog .el-dialog__body{
+      max-height: calc(90vh - 56px - 69px);
+    }
+  }
+}
 .markPosition {
   position: relative;
 
@@ -1396,6 +1407,7 @@ export default {
   background-color: #f2f2f4;
 }
 
+
 .before-give-text {
   position: relative;
 
@@ -1449,6 +1461,12 @@ export default {
         line-height: 20px;
       }
     }
+    .ent-report-download-dialog.el-dialog {
+      margin-top: 10vh !important;
+      .el-dialog--center .el-dialog__body {
+        padding: 0 32px 20px 32px;
+      }
+    }
     .download-bottom-tip {
       width: calc(1200px - 280px);
       left: 50%;
@@ -1463,6 +1481,7 @@ export default {
     padding: 20px 40px 12px;
     background: #fff;
     line-height: 36px;
+    border-radius: 4px;
     .handle_option{
       display: flex;
       justify-content: right;
@@ -1530,6 +1549,7 @@ export default {
     height: 48px;
     line-height: 48px;
     border-bottom: 1px solid #ececec;
+    border-radius: 4px 4px 0 0;
 
     a {
       text-decoration: none;
@@ -1578,12 +1598,13 @@ export default {
   }
 
   .ent-tab2-content {
-    margin: 40px 0 32px;
+    padding: 40px 0 32px;
+    //margin: 40px 0 32px;
   }
 
   .ent-content {
     margin-top: 16px;
-    background: #fff;
+    background: #f2f2f4;
 
     ::v-deep.el-tabs__header {
       margin: 0;
@@ -1707,13 +1728,18 @@ export default {
       }
     }
   }
-
+  #entInfo{
+    border-radius: 0 0 4px 4px;
+    margin-bottom: 16px;
+  }
+  #chartInfo {
+    border-radius: 4px;
+  }
   .tab-content {
     padding: 0 0 40px;
 
     & > #entInfo {
-      margin-left: 32px;
-      margin-right: 32px;
+      padding: 0 32px 32px;
     }
   }
 }
@@ -1837,6 +1863,7 @@ export default {
 }
 .placeholderbox {
   height: 49px;
+  border-radius: 4px 4px 0 0;
 }
 
 ::v-deep {
@@ -1859,8 +1886,8 @@ export default {
 
 .action-right-container {
   position: absolute;
-  top: 0;
-  right: 0;
+  top: 20px;
+  right: 40px;
   z-index: 99;
   border-radius: 4px;
 }

+ 16 - 3
apps/bigmember_pc/src/views/portrayal/UnitPortrayal.vue

@@ -213,7 +213,7 @@
             hasPower: !noBuyerAuth
           }"
           :filters="bidInfoParams"
-          style="padding: 32px 32px 24px 16px"
+          style="padding: 32px 32px 24px 16px;"
         ></Dynamic-list>
         <!-- <unit-list :noauth="noBuyerAuth" :usage="usageInfo" :bidparams="bidInfoParams" v-if="unitlistshow" @list="getList" @click="openCheckPop" @onClickUnlock="goEmitClick"></unit-list>-->
         <div class="partingLine"></div>
@@ -309,11 +309,11 @@
           :noStatesbarPower="true"
           :pagePowerInfo="usageInfo"
         ></Dynamic-list>
-        <div v-for="(item, k) in getnoLoginTipMap" :key="k">
+        <div v-for="(item, k) in getnoLoginTipMap" :key="k" >
           <div
             class="partingLine"
             v-if="k === '采购分析'"
-            style="margin-bottom: 32px"
+            style="margin-bottom: 32px;"
           ></div>
           <div
             class="markPosition"
@@ -1696,6 +1696,16 @@ export default {
 @include diy-icon('renling-01', 18, 18);
 @include diy-icon('renling-active', 18, 18);
 @include diy-icon('share', 18, 18);
+@media (max-height: 840px) {
+  ::v-deep {
+    .short-dialog__body .prop-report-download-dialog .el-dialog__body{
+      height: auto;
+    }
+    .prop-report-download-dialog .el-dialog__body{
+      max-height: calc(90vh - 56px - 69px);
+    }
+  }
+}
 ::v-deep {
   .el-dialog {
     margin-top: 30vh !important;
@@ -1805,6 +1815,7 @@ export default {
   padding-top: 32px;
   padding-bottom: 1px;
   background-color: #fff;
+  border-radius: 4px;
 
   .upgrade-mask-group:first-of-type {
     margin-top: 0;
@@ -1949,6 +1960,7 @@ export default {
   .buyer-phone-list-mask {
     padding: 32px;
     background: #fff;
+    border-radius: 0 0 4px 4px;
 
     .contact-mask-card {
       margin-top: 0;
@@ -1958,6 +1970,7 @@ export default {
   .unit-big-upgrade-group {
     padding: 10px 32px 32px 32px;
     background: #fff;
+    border-radius: 4px;
   }
 
   .unit-dialog-group {

+ 52 - 3
apps/bigmember_pc/src/views/portrayal/components/DownloadFilter.vue

@@ -2,7 +2,7 @@
   <section class="search-box">
     <div class="filter-row prop-name">
       <span class="row-label" :style="!hasPower ? 'width:80px': ''">
-        {{ type === 'procurementUnit' ? '目标业主' : '目标企业:' }}
+        {{ type === 'procurementUnit' ? '目标业主' : '目标企业:' }}
       </span>
       <span>{{ type === 'procurementUnit' ? buyerName : entName }}</span>
     </div>
@@ -79,7 +79,7 @@
       <div class="search-content">
         <el-collapse-transition>
           <div v-show="moreShow">
-            <div class="key-div">
+            <div class="key_comp">
               <el-input
                 class="keywords-input"
                 size="small"
@@ -87,6 +87,7 @@
                 maxlength="50"
                 show-word-limit
                 v-model="filter.match"
+                @input="getInput"
               >
                 <i
                   v-show="filter.match"
@@ -95,6 +96,10 @@
                   class="el-icon-error el-input__icon"
                   @click="clearClick('1')"></i>
               </el-input>
+              <div class="key_radio" v-show="optionModel">
+                <el-radio v-model="filter.exactMatch" label="0">模糊(包含其中1个关键词即可)</el-radio>
+                <el-radio v-model="filter.exactMatch" label="1">精准(同时包含所有关键词)</el-radio>
+              </div>
             </div>
             <div class="more">
               <!-- 搜索范围 -->
@@ -236,7 +241,8 @@ export default {
       // 采购单位类型
       subscribeBuyerClass: [],
       // 展开收起更多筛选条件
-      moreShow: false
+      moreShow: false,
+      optionModel: false
     }
   },
   watch: {
@@ -247,6 +253,11 @@ export default {
         }
       },
       deep: true
+    },
+    optionModel(newval) {
+      if (!newval) {
+        this.filter.exactMatch = '0'
+      }
     }
   },
   created() {
@@ -326,6 +337,8 @@ export default {
     clearClick(data) {
       if (data === '1') {
         this.filter.match = ''
+        this.optionModel = false
+        this.filter.exactMatch = '0'
       } else if (data === '2') {
         this.startYear = ''
       } else if (data === '3') {
@@ -357,6 +370,13 @@ export default {
       }
       // this.$emit('onScreenChange', this.ScreenParams)
     },
+    getInput() {
+      if (this.filter.match.indexOf(' ') !== -1) {
+        this.optionModel = true
+      } else {
+        this.optionModel = false
+      }
+    },
     // 地区选择
     saveAreaData(data) {
       let dataArr = []
@@ -601,6 +621,35 @@ export default {
     }
   }
 }
+.key_comp {
+  display: flex;
+  flex-direction: column;
+  width: 100%;
+  flex: 1;
+  .key_radio {
+    margin-top: 16px;
+    ::v-deep {
+      .el-radio__input.is-checked .el-radio__inner {
+        border-color: #2cb7ca;
+        background-color: #2cb7ca;
+      }
+      .el-radio__input.is-checked .el-radio__inner::after {
+        width: 12px;
+        height: 12px;
+        background: url('~@/assets/images/icon-checked.png') no-repeat;
+        background-size: contain;
+      }
+      .el-radio__inner:hover {
+        border-color: #2cb7ca;
+      }
+      .el-radio.is-checked {
+        .el-radio__label {
+          color: #2cb7ca;
+        }
+      }
+    }
+  }
+}
 ::v-deep {
   .more-item {
     display: flex;

+ 12 - 6
apps/bigmember_pc/src/views/portrayal/components/EntReportDownloadDialog.vue

@@ -5,8 +5,10 @@
     :close-on-click-modal="false"
     lock-scroll
     center
-    custom-class="prop-report-download-dialog"
+    custom-class="ent-report-download-dialog"
+    :class="{'short-dialog__body': emptyShow || options.projectCount === 0}"
     width="1000px"
+    style="overflow: hidden"
   >
     <div class="content" v-loading="pageLoading || sendLoading">
       <section class="report-effect-box">
@@ -201,6 +203,9 @@ export default {
         s_email: this.s_email,
         ...this.filterParams
       }
+      if(!this.hasPower) {
+        params.matchRange = ''
+      }
       this.sendLoading = true
       // 保存pdf的条件
       savePdfCondition(params).then(res => {
@@ -267,9 +272,9 @@ export default {
 </script>
 
 <style lang="scss" scoped>
-.prop-report-download-dialog{
+.ent-report-download-dialog{
   section {
-    margin-top:20px;
+    margin-top:12px;
     text-align: left;
   }
   .box-label{
@@ -317,8 +322,8 @@ export default {
     }
   }
   .download-notice-box, .search-box{
-    padding:20px;
-    background: linear-gradient(180deg, #F7F9FA 100%, #F7F9FA 0%);
+    padding:12px 20px;
+    background: linear-gradient(90deg, #F7F9FA 0%, #fff 100%);
     border-radius: 8px;
     border: 1px solid rgba(0,0,0, 0.05);
   }
@@ -429,7 +434,8 @@ export default {
     padding: 32px 32px 0 32px;
   }
   .el-dialog__body {
-    padding: 0 20px 32px 32px;
+    overflow-y:auto ;
+    padding: 0 32px 20px 32px;
   }
   .el-dialog__footer{
     padding: 11px 32px;

+ 5 - 8
apps/bigmember_pc/src/views/portrayal/components/UnitReportDownloadDialog.vue

@@ -7,6 +7,7 @@
     lock-scroll
     center
     custom-class="prop-report-download-dialog"
+    :class="{'short-dialog__body': emptyShow || totalInfo.project_count === 0}"
     width="1000px"
   >
     <div class="content" v-loading="pageLoading || sendLoading">
@@ -25,7 +26,7 @@
         :canSelect="canSelect"
         @changeFilter="changeFilter"
       ></download-filter>
-      <section class="empty" v-if="!hasPower && (emptyShow || this.totalInfo.project_count === 0)">
+      <section class="empty" v-if="!hasPower && (emptyShow || totalInfo.project_count === 0)">
         <div>该业主暂无采购项目,暂无法下载报告</div>
       </section>
       <section class="empty" v-if="hasPower && emptyShow">
@@ -206,6 +207,9 @@ export default {
         s_email: this.s_email,
         ...this.filterParams
       }
+      if(!this.hasPower) {
+        params.matchRange = ''
+      }
       this.sendLoading = true
       // 保存pdf的条件
       savePdfCondition(params).then(res => {
@@ -444,11 +448,4 @@ export default {
     border-radius: 6px !important;
   }
 }
-@media (max-height: 720px) {
-  ::v-deep {
-    .prop-report-download-dialog .el-dialog__body{
-      height: calc(90vh - 56px - 69px - 10px);
-    }
-  }
-}
 </style>