Browse Source

新增项目

duy 2 months ago
parent
commit
dccd139f92
1 changed files with 98 additions and 21 deletions
  1. 98 21
      src/renderer/src/views/project/data/addAndEdit.vue

+ 98 - 21
src/renderer/src/views/project/data/addAndEdit.vue

@@ -355,37 +355,76 @@ watch(() => stageYearOptions.value, (newOptions) => {
         // 更新 yearFuns 的年份
         yearFuns.value = yearFuns.value.map(item => ({
             ...item,
-            year: item.year || newOptions[0].value,
+            year: item.year.toString() || newOptions[0].value.toString(),
         }))
-        const isExist = yearFuns.value.some(item => item.year === stageYearVal.value)
-        console.log(isExist, 'isExist')
+        selectIndex.value = 0
+        console.log(yearFuns.value, 111111)
+        console.log(stageYearOptions.value, 33333333)
         
-            if (!isExist) {
-            selectIndex.value = 0
+             // 遍历stageYearOptions,检查yearFuns中是否缺少对应年份的数据
+             stageYearOptions.value.forEach(option => {
+            const existingYear = yearFuns.value.find(item => item.year === option.value)
+            if (!existingYear) {
+                yearFuns.value.push({
+                    year: option.value,
+                    inflowTotal:'',
+                    tollInflow: '',
+                    outflowTotal:'',
+                    costTotal:'',
+                    otherInflow: '',
+                    constructInvestOutflow: '',
+                    constructProportionOutflow: '',
+                    borrowPrincipalOutflow: '',
+                    borrowInterestOutflow: '',
+                    operateMaintainOutflow: '',
+                    operateOverhaulOutflow: '',
+                    operateCapitalOutflow: '',
+                    operateOperationOutflow: '',
+                    operateOtherOutflow: '',
+                    operationTaxesOutflow: '',
+                    otherOutflow: '',
+                })
             }
-        // 更新 carList 的年份
-        // carList.value = carList.value.map(item => ({
-        //     ...item,
-        //     year: item.year || newOptions[0].value,
-        // }))
+        })
+        
+        // 按年份排序
+        yearFuns.value.sort((a, b) => a.year - b.year)
+      
     }
 }, { immediate: true })
 
 
 // 添加 watch 来监听 stageYearOptions 的变化
 watch(() => stageYearOptions1.value, (newOptions) => {
+    console.log(newOptions, 'newOptions')
+
     if (newOptions && newOptions.length > 0) {
         // 更新 yearFuns 的年份
         // yearFuns.value = yearFuns.value.map(item => ({
         //     ...item,
         //     year: item.year || newOptions[0].value,
         // }))
-        
+        carSelectIndex.value = 0
         // 更新 carList 的年份
         carList.value = carList.value.map(item => ({
             ...item,
             year: item.year || newOptions[0].value,
         }))
+        console.log(yearFuns.value, 6666)
+        console.log(stageYearOptions.value, 8888)
+           // 遍历stageYearOptions,检查yearFuns中是否缺少对应年份的数据
+           stageYearOptions1.value.forEach(option => {
+            const existingYear = carList.value.find(item => item.year === option.value)
+            if (!existingYear) {
+                carList.value.push({
+                    year: option.value,
+                    numbers: Array(12).fill(''), // 初始化12个月份的数据,默认值为0
+                })
+            }
+        })
+        
+        // 按年份排序
+        carList.value.sort((a, b) => a.year - b.year)
     }
 }, { immediate: true })
 
@@ -413,6 +452,8 @@ watch(() => props.data, (data) => {
     year: '',
     numbers: Array(12).fill(''), // 初始化12个月份的数据,默认值为0
 }]
+console.log(carSelectIndex.value, 'carSelectIndex')
+    
     yearFuns.value = [
 {
 
@@ -445,7 +486,23 @@ stageYearOptions.value = [{
   }
   
     baseForm.value = data
-    carList.value = data.list
+    // carList.value = data.list
+    if (data.list.length > 0) {
+        console.log(2222222222)
+        carList.value = data.list
+    } else {
+        console.log(111111111)
+        carList.value = [{
+            year: stageYearOptions1.value?.[0]?.value || '', // 设置默认年份
+            numbers: Array(12).fill(''), 
+        }]
+        
+    }
+    console.log(stageYearVal.value, 'stageYearVal.value')
+    if (!stageYearVal.value) {
+        stageYearVal.value = '1'
+    }
+    
     yearFuns.value = data.funds
  
     if (data['constructStartTime'] && data['constructEndTime']) {
@@ -531,7 +588,7 @@ const betweenTimeUpdate1 = ({ arr, val, query }) => {
             const years = []
             for (let year = startYear; year <= endYear; year++) {
                 years.push({
-                    value: year,
+                    value: year.toString(),
                     label: `${year}年`,
                 })
             }
@@ -667,7 +724,11 @@ const stageYearClick = async (val) => {
     }
 
     console.log(val, 'val11111')
- 
+    let index1 = arrIndex(yearFuns.value, 'year', val)
+ console.log(yearFuns.value, '  yearFuns.value33333333333')
+ console.log(index1, 'index17777777777')
+
+
     stageYearVal.value = val
     // await nextTick()
     selectIndex.value = arrIndex(stageYearOptions.value, 'value', val)
@@ -695,13 +756,13 @@ const stageYearClick = async (val) => {
             otherOutflow: '',
         }
     } else {
-        // yearFuns.value[selectIndex.value].year = val
+        yearFuns.value[selectIndex.value].year = val
     
         
         // yearFuns.value = baseForm.value.funds
-        if (baseForm.value.id) {
-           yearFuns.value = baseForm.value.funds
-        }
+        // if (baseForm.value.id) {
+        //    yearFuns.value = baseForm.value.funds
+        // }
     }
 }
 
@@ -711,11 +772,13 @@ const carYearVal = ref('')
 
 const carSelectIndex = ref(0)// ... existing code ...
 const carYearClick = (year) => {
+    carYearVal.value = year
     if (carList.value[carSelectIndex]) {
         carList.value[carSelectIndex].year = year
     }
     
-     carSelectIndex.value = arrIndex(stageYearOptions1.value, 'value', year)
+    //  carSelectIndex.value = arrIndex(stageYearOptions1.value, 'value', year)
+    carSelectIndex.value = arrIndex(carList.value, 'value', year)
   
     if (!carList.value[carSelectIndex.value]) {
         // 如果当前索引位置没有数据,初始化一个新对象
@@ -819,11 +882,18 @@ if (!carList.value[i]) {
   
 
 
+    let list1 = yearFuns.value.filter(fund => 
+            stageYearOptions.value.some(option => option.value === fund.year),
+        )
+        let list2 = carList.value.filter(fund => 
+            stageYearOptions1.value.some(option => option.value === fund.year),
+        )
     
+        
     const params = {
         ...baseForm.value,
-        list: carList.value,
-        funds: yearFuns.value,
+        list: list2,
+        funds:list1,
     }
     
   if (!baseForm.value.id) {
@@ -906,6 +976,13 @@ carList.value = [{
     year: '',
     numbers: Array(12).fill(''), // 初始化12个月份的数据,默认值为0
 }]
+stageYearOptions.value = [
+    
+{ value: '1',
+label: '建设期' },
+]
+stageYearOptions1.value = []
+    // baseForm.value = {}
     // baseForm.value = {}