Browse Source

合规登记页面 登记流程样式修改、sessionStorage记住表格所选筛选列

hbchen 2 năm trước cách đây
mục cha
commit
1e38d85056

+ 2 - 0
src/layout/headerBar/index.vue

@@ -20,6 +20,8 @@
   const logout = ()=>{
     localStorage.removeItem('fsms_token')
     localStorage.removeItem('userInfo')
+    // 财务列表页面所保存的表格选中项
+    sessionStorage.removeItem('financialListColumn')
     location.reload()
   }
   const gotoCrmSystem=()=>{

+ 7 - 8
src/views/financialManagement/components/serviceVarietyDia.vue

@@ -342,7 +342,7 @@ const varietyAllChecked=(e)=>{
   });
   e.check_list = e.checked ? arr : [];
   e.indeterminate = false;
-  // 需求更改,合同类型为补充协议时不默认勾选宏观经济
+  // 宏观经济默认勾选
   if(e.classify_name==='宏观经济'){
     e.check_list.push(1)
   }
@@ -388,7 +388,6 @@ const varietiesSelect=()=>{
       }
     })
   }
-  
 
   rowIndexarr.forEach(index=>{
     params.tableData[index].forEach((item) => {
@@ -440,11 +439,11 @@ const validateData=()=>{
       if(item2.Value==='数据点评'||
         item2.Value==='FICC周报'||
         item2.Value==='商品双周报+线上电话会讨论会<br/>(由弘则的研究员主持线上讨论)'){
-          item.forEach(item3=>{
-            if (item3.HeadName === "品种") {
-              arr3.push(...item3.ValueId);
-            }
-          })
+        item.forEach(item3=>{
+          if (item3.HeadName === "品种") {
+            arr3.push(...item3.ValueId);
+          }
+        })
       }
     })
   })
@@ -563,7 +562,7 @@ const serviceClose=()=>{
     </div>
     <!-- 新增列填写表头弹窗 -->
     <el-dialog v-model="params.showInputHead" width="560px" top="20vh" title="添加列">
-      <el-form :model="params.form" ref="headTitleForm" label-width="100px" @submit.native.prevent>
+      <el-form :model="params.form" ref="headTitleForm" label-width="100px">
         <el-form-item label="表格名称" prop="title" :rules="{ required: true, message: '请填写名称', trigger: 'blur' }">
           <el-input v-model="params.form.title"></el-input>
         </el-form-item>

+ 92 - 70
src/views/financialManagement/contractProgress.vue

@@ -346,11 +346,11 @@
         // 有金额才进行删除后的运算
         if(tempArr[index].amount!=''){
           tempArr.splice(index,1)
+          let money=0
           tempArr.map(item =>{
             money+=parseFloat(item.amount) || 0
             // console.log(money);
           })
-          let money=0
           // 保留两位小数、防止计算时精度丢失
           money=Math.round(money*100)/100
           if(type=='invoice'){
@@ -574,11 +574,11 @@
         services:res.data.service_list
       }
       contractInfo.contractValidityDate=[res.data.start_date,res.data.end_date]
-      contractInfo.checkedService=res.data.service_list.map(item => item.service_template_id)
-      contractInfo.checkedService.map(serviceId=>{
+      contractInfo.checkedService=res.data.service_list.map(item => {
+        let serviceId=item.service_template_id
         // 大套餐或者小套餐
-        if(serviceId==1 || serviceId==2)
-        serciveChange(true,serviceId,false)
+        if(serviceId==1 || serviceId==2) serciveChange(true,serviceId,false)
+        return serviceId
       })
       // 开票
       contractInfo.moneyData.allInvoiceMoney = contractInfo.moneyData.allPlacementMoney=res.data.contract_amount
@@ -622,15 +622,13 @@
             }
             return rowArr;
           });
-        let paramsTemp={
-          tableHeadData:temarr[0],
-          tableData:temarr.slice(1),
-          service_template_id:samllService.service_template_id,
-          Value:samllService.value,
-          chart_permission_ids:samllService.chart_permission_ids
-        }
-          paramsTemp.tableHeadData = temarr[0];
-          paramsTemp.tableData = temarr.slice(1);
+          let paramsTemp={
+            tableHeadData:temarr[0],
+            tableData:temarr.slice(1),
+            service_template_id:samllService.service_template_id,
+            Value:samllService.value,
+            chart_permission_ids:samllService.chart_permission_ids
+          }
         if(contractInfo.serviceArray.length==0){
           let timer=setInterval(()=>{
             if(contractInfo.serviceArray.length>0){
@@ -858,7 +856,7 @@
                       <template #default="{row,$index}">
                         <el-form-item :prop="`placementData.${$index}.invoice_date`" :show-message="false"
                         :rules="{required:true,message:()=>{ ElMessage.error('请选择到款日期')},trigger:'change'}">             
-                          <el-date-picker v-model="row.invoice_date" style="width: 124px;" :clearable="false"
+                          <el-date-picker v-model="row.invoice_date" type="month" style="width: 124px;" :clearable="false"
                           placeholder="请选择月份" value-format="YYYY-MM" format="YYYY-MM"></el-date-picker>
                         </el-form-item>
                       </template>
@@ -880,25 +878,29 @@
             </div>
           </div>
         </div>
-        <div class="contract-progress-aside">
-          <p class="progress-aside-title">登记流程</p>
+        <div class="contract-progress-aside"></div>
+      </div>
+      <!-- 登记流程 -->
+      <div class="contract-progress-detail">
+        <p class="progress-aside-title">登记流程</p>
+        <el-scrollbar style="height: calc(100% - 110px);">
           <div class="progress-box">
-            <el-timeline>
-              <el-timeline-item color="var(--themeColor)" v-for="item in contractInfo.progressList" 
-              :key="item.name" size="large" placement="top" hide-timestamp>
-                <template #dot>
-                  <div class="customize-circle-outside">
-                    <div class="customize-circle-inside"></div>
-                  </div>
-                </template>
-                <div class="progress-item-title">{{operationType[item.op_type-1]?.label}}</div>
-                <div class="progress-item-info">{{item.admin_name}}</div>
-                <div class="progress-item-info">{{item.create_time}}</div>
-                <div class="progress-item-info" v-show="item.remark">备注:{{item.remark}}</div>
-              </el-timeline-item>
-            </el-timeline>
+              <el-timeline>
+                <el-timeline-item color="var(--themeColor)" v-for="item in contractInfo.progressList" 
+                :key="item.name" size="large" placement="top" hide-timestamp>
+                  <template #dot>
+                    <div class="customize-circle-outside">
+                      <div class="customize-circle-inside"></div>
+                    </div>
+                  </template>
+                  <div class="progress-item-title">{{operationType[item.op_type-1]?.label}}</div>
+                  <div class="progress-item-info">{{item.admin_name}}</div>
+                  <div class="progress-item-info">{{item.create_time}}</div>
+                  <div class="progress-item-info" v-show="item.remark">备注:{{item.remark}}</div>
+                </el-timeline-item>
+              </el-timeline>
           </div>
-        </div>
+        </el-scrollbar>
       </div>
       <!-- 小套餐选择品种弹窗 -->
       <service-variety-dia v-model:visible="contractInfo.varietyDiaShow" @selectFinish="getVarieties" 
@@ -1009,51 +1011,71 @@
         }
       }
       .contract-progress-aside{
-        background-color: white;
-        flex: 1;
+        // background-color: white;
+        width: 26vw;
         min-width: 300px;
-        .progress-aside-title{
-          font-size: 18px;
-          font-weight: bold;
-          margin: 30px;
-        }
-        .progress-box{
-          padding:0 20px 20px 70px;
-          .customize-circle-outside{
-            display: flex;
-            justify-content: center;
-            align-items: center;
-            background-color: rgba($color: $themeColor, $alpha: 0.4);
-            width: 14px;
-            left: -2px;
-            top: -4px;
-            height: 14px;
+      }
+    }
+    .contract-progress-detail{
+      background-color: white;
+      width: 26vw;
+      position: fixed;
+      right: 30px;
+      top: 90px;
+      min-width: 300px;
+      border: 1px solid #E8E8E8;
+      height: calc(100vh - 120px);
+      z-index: 2;
+      .progress-aside-title{
+        font-size: 18px;
+        font-weight: bold;
+        margin: 30px 30px 20px;
+      }
+      .progress-box{
+        margin-top: 10px;
+        padding:0 20px 20px 70px;
+        .customize-circle-outside{
+          display: flex;
+          justify-content: center;
+          align-items: center;
+          background-color: rgba($color: $themeColor, $alpha: 0.4);
+          width: 14px;
+          left: -2px;
+          top: -4px;
+          height: 14px;
+          border-radius: 50%;
+          position: absolute;
+          .customize-circle-inside{
+            background-color:$themeColor;
+            width: 6px;
+            height: 6px;
             border-radius: 50%;
-            position: absolute;
-            .customize-circle-inside{
-              background-color:$themeColor;
-              width: 6px;
-              height: 6px;
-              border-radius: 50%;
-            }
-          }
-          .progress-item-title{
-            font-weight: bold;
-            font-size: 16px;
-            color: #333;
-            margin-bottom: 8px;
           }
-          .progress-item-info{
-            font-size: 14px;
-            color:#666;
-            margin-bottom: 8px;
-            &:last-child{
-              margin-bottom: 0;
-            }
+        }
+        .progress-item-title{
+          font-weight: bold;
+          font-size: 16px;
+          color: #333;
+          margin-bottom: 8px;
+        }
+        .progress-item-info{
+          font-size: 14px;
+          color:#666;
+          margin-bottom: 8px;
+          &:last-child{
+            margin-bottom: 0;
           }
         }
       }
     }
+    @media screen and (max-width:1023px) {
+      .contract-progress-aside{
+        display: none;
+      }
+      .contract-progress-detail{
+        position: sticky;
+      }
+    } 
     .contract-operation{
       text-align: center;
       padding: 100px 30px 30px;

+ 4 - 0
src/views/financialManagement/financialList.vue

@@ -98,6 +98,8 @@ const statusArray=[{id:1,label:"进行中"},{id:2,label:"已完成"}]
   // 确认筛选操作
   const checkedConfirm=()=>{
     financial.tabelColumnShowArr = financial.tabelColumnCheckedArr
+    // 保存 选中的表格列,在退出登录的时候清除掉
+    sessionStorage.setItem('financialListColumn',financial.tabelColumnShowArr)
     financial.showColumnCheck=false
   }
 
@@ -165,6 +167,8 @@ const statusArray=[{id:1,label:"进行中"},{id:2,label:"已完成"}]
   //  ---------------------created
   getServiceListFun()
   financialList()
+  // 获取sessionStorage里面储存的表格选中列项
+  financial.tabelColumnShowArr=sessionStorage.getItem('financialListColumn')?sessionStorage.getItem('financialListColumn').split(','):[]
 </script>
 
 <template>