Browse Source

解决冲突

hbchen 2 years ago
parent
commit
14f95c43b4

+ 1 - 0
package.json

@@ -17,6 +17,7 @@
     "js-base64": "^3.7.2",
     "js-md5": "^0.7.3",
     "lodash": "^4.17.21",
+    "moment": "^2.29.4",
     "nprogress": "^0.2.0",
     "vue": "^3.2.37",
     "vue-router": "^4.1.3",

+ 2 - 0
src/App.vue

@@ -1,5 +1,6 @@
 <script setup>
 import zhCn from 'element-plus/lib/locale/lang/zh-cn'
+import moment from 'moment'
 
 const isRouterAlive = ref(true)
 
@@ -11,6 +12,7 @@ const reload=()=>{
 }
 
 provide('reload',reload)
+provide('$moment',moment)
 </script>
 
 <template>

+ 1 - 1
src/api/financialMana.js

@@ -114,7 +114,7 @@ export function registerDetail(data) {
   * 
   * @param {
   * contract_register_id - 合同登记ID - 必填
-  * contract_status - 合同状态: 1-已审批; 2-单章寄出; 3-已签回 - 必填
+  * contract_status - 合同状态: 1-已审批; 2-单章寄出; 3-已签回 4-已终止 - 必填
   * } data 
   * @returns 
   */

+ 22 - 2
src/views/financialManagement/composition/IandPList.js

@@ -3,8 +3,11 @@ import {useRouter} from 'vue-router'
 import {getIandPList} from '@/api/financialMana'
 import { downloadByFlow } from '@/utils/common-methods'
 export default function getIandPListCom(type) {
+  const moment = inject('$moment')
   const router = useRouter()
 
+  const dateButtonData=[{text:'本月',tabId:1},{text:'上月',tabId:2},{text:'前月',tabId:3}]
+
   const placement=reactive({
     searchParams:{
       current:1,
@@ -21,7 +24,8 @@ export default function getIandPListCom(type) {
     tableData:[],
     total:0,
     amountTotal:0,
-    countryAmountList:[]
+    countryAmountList:[],
+    currentDateTab:0
   })
 
 
@@ -94,6 +98,19 @@ export default function getIandPListCom(type) {
       ElMessage.warning('开始金额不能大于结束金额')
     }
   }
+  // 切换日期 本月、上月、前月
+  const changeDateType=(tabId)=>{
+    if(placement.currentDateTab==tabId) return
+    placement.currentDateTab=tabId
+    if(tabId==1){
+      // 本月指 本月初 至 今天
+      placement.dateRange=[moment().subtract((tabId-1), 'months').startOf('month').format('YYYY-MM-DD'),
+      moment(new Date()).format('YYYY-MM-DD')]
+    }else{
+      placement.dateRange=[moment().subtract((tabId-1), 'months').startOf('month').format('YYYY-MM-DD'),
+      moment().subtract((tabId-1), 'months').endOf('month').format('YYYY-MM-DD')]
+    }
+  }
 
   // 切换每页的数量
   const changePageSize=(pageSize)=>{
@@ -114,8 +131,10 @@ export default function getIandPListCom(type) {
       downloadByFlow(res,'xlxs',fileName)
     })
   }
+
   return {
     data:placement,
+    dateButtonData,
     placementList,
     searchPlacement,
     moneyChange,
@@ -123,6 +142,7 @@ export default function getIandPListCom(type) {
     placementDetail,
     changePageNo,
     changePageSize,
-    checkMoney
+    checkMoney,
+    changeDateType
   }
 }

+ 1 - 1
src/views/financialManagement/contractProgress.vue

@@ -20,7 +20,7 @@
   const placementFormRef=ref(null)
 
   const contractSourceArray=['非CRM合同导入','CRM合同导入']
-  const contractStatusArray=[{id:1,label:"已审批"},{id:2,label:"单章寄出"},{id:3,label:"已签回"}]
+  const contractStatusArray=[{id:1,label:"已审批"},{id:2,label:"单章寄出"},{id:3,label:"已签回"},{id:4,label:"已终止"}]
   const contractTypeArray=[{id:1,label:"新签合同"},{id:2,label:"续约合同"},{id:3,label:"代付合同"},{id:4,label:"补充协议"}]
   const operationType=[{op_type:1,label:"合规登记"},{op_type:2,label:"开票登记"},{op_type:3,label:"到款登记"},
   {op_type:4,label:"修改合同状态"},{op_type:5,label:"删除合同登记"},{op_type:6,label:"合规编辑"}]

+ 1 - 1
src/views/financialManagement/financialList.vue

@@ -9,7 +9,7 @@ const router = useRouter()
 const route = useRoute()
 const changeStatusForm=ref(null)
 const contractTypeArray=[{id:1,label:"新签合同"},{id:2,label:"续约合同"},{id:3,label:"代付合同"},{id:4,label:"补充协议"}]
-const contractStatusArray=[{id:1,label:"已审批"},{id:2,label:"单章寄出"},{id:3,label:"已签回"}]
+const contractStatusArray=[{id:1,label:"已审批"},{id:2,label:"单章寄出"},{id:3,label:"已签回"},{id:4,label:"已终止"}]
 const statusArray=[{id:1,label:"进行中"},{id:2,label:"已完成"}]
 
   const financial=reactive({

+ 7 - 3
src/views/financialManagement/invoice/invoiceList.vue

@@ -17,9 +17,13 @@ invoice.placementList()
         <div class="iandP-search-box">
           <el-input v-model="data.searchParams.contract_code" placeholder="请输入合同编号/销售"
           style="width: 309px;margin-left: 40px;margin-bottom: 8px;" clearable @input="invoice.searchPlacement" ></el-input>
-          <el-date-picker v-model="data.dateRange" start-placeholder="起始日期"
-            end-placeholder="结束日期" style="margin-left: 40px;max-width: 321px;margin-bottom: 8px;"
-            value-format="YYYY-MM-DD" type="daterange" ></el-date-picker>
+          <div class="date-box">
+            <el-date-picker v-model="data.dateRange" start-placeholder="起始日期"
+            end-placeholder="结束日期" style="max-width: 321px;margin-right: 12px;"
+            value-format="YYYY-MM-DD" type="daterange" @change="data.currentDateTab=0"></el-date-picker>
+            <el-button v-for="item in invoice.dateButtonData" class="date-button"
+            :key="item.tabId" :class="data.currentDateTab==item.tabId?'selectTab':''" @click="invoice.changeDateType(item.tabId)">{{ item.text }}</el-button>
+          </div>
           <div style="margin-left: 40px;margin-bottom: 8px;">
             开票金额
             <el-input v-model.trim="data.searchParams.min_amount" @blur="invoice.checkMoney"

+ 7 - 3
src/views/financialManagement/placement/placementList.vue

@@ -19,9 +19,13 @@ placement.placementList()
         <div class="iandP-search-box">
           <el-input v-model="data.searchParams.contract_code" placeholder="请输入合同编号"
           style="width: 309px;margin-left: 40px;margin-bottom: 8px;" clearable @input="placement.searchPlacement" ></el-input>
-          <el-date-picker v-model="data.dateRange" start-placeholder="起始日期"
-            end-placeholder="结束日期" style="margin-left: 40px;max-width: 321px;margin-bottom: 8px;"
-            value-format="YYYY-MM-DD" type="daterange" ></el-date-picker>
+          <div class="date-box">
+            <el-date-picker v-model="data.dateRange" start-placeholder="起始日期"
+            end-placeholder="结束日期" style="max-width: 321px;margin-right: 12px;"
+            value-format="YYYY-MM-DD" type="daterange" @change="data.currentDateTab=0"></el-date-picker>
+            <el-button v-for="item in placement.dateButtonData" class="date-button"
+            :key="item.tabId" :class="data.currentDateTab==item.tabId?'selectTab':''" @click="placement.changeDateType(item.tabId)">{{ item.text }}</el-button>
+          </div>
           <div style="margin-left: 40px;margin-bottom: 8px;">
             到款金额
             <el-input v-model.trim="data.searchParams.min_amount" @blur="placement.checkMoney"

+ 14 - 14
src/views/financialManagement/style/iandPList.scss

@@ -6,6 +6,20 @@
       margin-left: -40px;
       display: flex;
       flex-wrap: wrap;
+      .date-box{
+        display: flex;
+        align-items: center;
+        margin: 0 0 8px 40px;
+        .date-button{
+          height: 40px;
+          color: $themeColor;
+          border: 1px solid $themeColor;
+        }
+        .selectTab{
+          color:white;
+          background-color: $themeColor;
+        }
+      }
     }
   }
   .iandP-table-container{
@@ -46,20 +60,6 @@
             }
           }
         }
-        // font-size: 14px;
-        // .iandP-top-amout-span{
-        //   color: $dangerColor;
-        // }
-        // .iandP-top-amout-box{
-        //   display: flex;
-        //   // align-items: center;
-        //   flex-wrap: nowrap;
-        //   .iandP-top-amout-row{
-        //     display: flex;
-        //     flex-wrap: wrap;
-        //     align-items: center;
-        //   }
-        // }
       }
     }
   }