Browse Source

计算指标新增日均值

Karsa 1 year ago
parent
commit
6fd00e8b72

+ 10 - 3
src/views/dataEDB/calculate/BatchDetail.vue

@@ -41,6 +41,7 @@ function getCalculateBtnText(){
 		[62,'累计值计算'],
 		[62,'累计值计算'],
 		[63,'年初至今计算'],
 		[63,'年初至今计算'],
         [72,'指数修匀计算'],
         [72,'指数修匀计算'],
+        [75,'日均值计算'],
 	])
 	])
     str=btnTextMap.get(source.value)
     str=btnTextMap.get(source.value)
 
 
@@ -160,7 +161,7 @@ function handleConfirmSelectEDB(e){
     edbList.value[currentEdbInfoIndex.value].unit=obj.unit
     edbList.value[currentEdbInfoIndex.value].unit=obj.unit
     edbList.value[currentEdbInfoIndex.value].frequency=obj.frequency
     edbList.value[currentEdbInfoIndex.value].frequency=obj.frequency
 
 
-    if([72].includes(source.value)){//指数修匀设置默认指标目录为选择的指标目录
+    if([72,75].includes(source.value)){//指数修匀设置默认指标目录为选择的指标目录
         selectEDBClassifyINS.value?.getSelectClassifyOpt(e.ClassifyId)//获取选择的分类目录
         selectEDBClassifyINS.value?.getSelectClassifyOpt(e.ClassifyId)//获取选择的分类目录
     }
     }
 }
 }
@@ -244,6 +245,12 @@ function setBaseInfo(obj,list){
                 unit: obj.Unit,
                 unit: obj.Unit,
 				frequency: obj.Frequency
 				frequency: obj.Frequency
             }
             }
+        case 75:
+            return {
+                targetName: `${obj.EdbName}日均值`,
+                unit: obj.Unit,
+                frequency: obj.Frequency
+            }
     }
     }
 }
 }
 
 
@@ -484,7 +491,7 @@ function handleShowEDBHistory(item){
                     right-icon="arrow"
                     right-icon="arrow"
                     required
                     required
                     @click-input="showSelectUnit=true"
                     @click-input="showSelectUnit=true"
-                    :disabled="[6,7,32,33].includes(source)"
+                    :disabled="[6,7,32,33,75].includes(source)"
                 />
                 />
                 <van-field 
                 <van-field 
                     :modelValue="edbList[currentEdbInfoIndex].classifyName"
                     :modelValue="edbList[currentEdbInfoIndex].classifyName"
@@ -505,7 +512,7 @@ function handleShowEDBHistory(item){
                     right-icon="arrow"
                     right-icon="arrow"
                     required
                     required
                     @click-input="showSelectFrequency=true"
                     @click-input="showSelectFrequency=true"
-                    :disabled="[6,7,32,33,5,42,61,64,63,66].includes(source)"
+                    :disabled="[6,7,32,33,5,42,61,64,63,66,75].includes(source)"
                 />
                 />
                 <van-field
                 <van-field
                     v-if="[8,12,13,39,43,44].includes(source)"
                     v-if="[8,12,13,39,43,44].includes(source)"

+ 1 - 1
src/views/dataEDB/calculate/Detail.vue

@@ -31,7 +31,7 @@ if(['edit','preview'].includes(route.query.type)){
     <!-- 指标运算 -->
     <!-- 指标运算 -->
     <FormulaCalculate v-if="['4'].includes(source)" :edbInfo="edbInfo"/>
     <FormulaCalculate v-if="['4'].includes(source)" :edbInfo="edbInfo"/>
     <!-- 其他的运算 编辑时toMonthSeason=5\61 accumulate=62\63 -->
     <!-- 其他的运算 编辑时toMonthSeason=5\61 accumulate=62\63 -->
-    <OtherCalculate v-if="['toMonthSeason','5','6','7','8','12','13','14','22','35','51','52','61','62','63','accumulate','72'].includes(source)" :edbInfo="edbInfo"/>
+    <OtherCalculate v-if="['toMonthSeason','5','6','7','8','12','13','14','22','35','51','52','61','62','63','accumulate','72','75'].includes(source)" :edbInfo="edbInfo"/>
     <!-- 拼接计算 编辑时则为 23\24 -->
     <!-- 拼接计算 编辑时则为 23\24 -->
     <JointCalculate v-if="['joint','23','24'].includes(source)" :edbInfo="edbInfo"/>
     <JointCalculate v-if="['joint','23','24'].includes(source)" :edbInfo="edbInfo"/>
     <!-- 拟合残差计算 -->
     <!-- 拟合残差计算 -->

+ 6 - 4
src/views/dataEDB/calculate/components/OtherCalculate.vue

@@ -94,6 +94,7 @@ function getCalculateBtnText(){
 		[62,'累计值计算'],
 		[62,'累计值计算'],
 		[63,'年初至今计算'],
 		[63,'年初至今计算'],
         [72,'指数修匀计算'],
         [72,'指数修匀计算'],
+        [75,'日均值计算'],
 	])
 	])
     str=btnTextMap.get(source.value)
     str=btnTextMap.get(source.value)
 
 
@@ -160,12 +161,13 @@ function updateBaseInfoData(data){
 		62:  data.EdbName,
 		62:  data.EdbName,
 		63:  data.EdbName,
 		63:  data.EdbName,
         72: `${data.EdbName}指数修匀`,
         72: `${data.EdbName}指数修匀`,
+        75: `${data.EdbName}日均值`
 	}
 	}
     baseInfo.name=name_map[source.value]||''
     baseInfo.name=name_map[source.value]||''
-    baseInfo.unit=[5,8,14,7,35,72].includes(source.value) ? data.Unit : '无',
+    baseInfo.unit=[5,8,14,7,35,72,75].includes(source.value) ? data.Unit : '无',
     baseInfo.frequency=source.value === 14 ? '日度' : source.value === 61 ? '季度' : source.value === 62 ? '' : data.Frequency
     baseInfo.frequency=source.value === 14 ? '日度' : source.value === 61 ? '季度' : source.value === 62 ? '' : data.Frequency
 
 
-    if(source.value===72){//指数修匀目录默认和选择的指标在同一个目录
+    if([72,75].includes(source.value)){//指数修匀目录默认和选择的指标在同一个目录
         selectEDBClassifyINS.value?.getSelectClassifyOpt(data.ClassifyId)//获取选择的分类目录
         selectEDBClassifyINS.value?.getSelectClassifyOpt(data.ClassifyId)//获取选择的分类目录
     }
     }
     
     
@@ -449,7 +451,7 @@ function handleShowEDBHistory(data){
                 :right-icon="!isPreview?'arrow':''"
                 :right-icon="!isPreview?'arrow':''"
                 required
                 required
                 @click-input="showSelectUnit=true"
                 @click-input="showSelectUnit=true"
-                :disabled="!editEdbInfoId&&[6,7].includes(source)||isPreview"
+                :disabled="!editEdbInfoId&&[6,7,75].includes(source)||isPreview"
             />
             />
             <van-field 
             <van-field 
                 :modelValue="classifyStr"
                 :modelValue="classifyStr"
@@ -471,7 +473,7 @@ function handleShowEDBHistory(data){
                 :right-icon="!isPreview?'arrow':''"
                 :right-icon="!isPreview?'arrow':''"
                 required
                 required
                 @click-input="showSelectFrequency=true"
                 @click-input="showSelectFrequency=true"
-                :disabled="[5,14,61,63].includes(source)||(!editEdbInfoId&&[6,7].includes(source))||isPreview"
+                :disabled="[5,14,61,63].includes(source)||(!editEdbInfoId&&[6,7,75].includes(source))||isPreview"
             />
             />
             <van-field
             <van-field
                 v-if="[8,12,13,35].includes(source)"
                 v-if="[8,12,13,35].includes(source)"

+ 16 - 1
src/views/dataEDB/util/config.js

@@ -220,7 +220,14 @@ export const calculateTypeTipsMap=new Map([
 	[72,`指数修匀计算公式:<br>
 	[72,`指数修匀计算公式:<br>
 	1、设定指数修匀值序列的初始值=原来时间序列的初始值 <br>
 	1、设定指数修匀值序列的初始值=原来时间序列的初始值 <br>
 	2、选择平滑系数alpha值:在0-1之间,开区间 <br>
 	2、选择平滑系数alpha值:在0-1之间,开区间 <br>
-	3、本期指数修匀值=alpha*本期实际值+(1-alpha)*上期指数修匀值`]
+	3、本期指数修匀值=alpha*本期实际值+(1-alpha)*上期指数修匀值`],
+	[75,`日均值计算公式:<br>
+	1、年度值转日均值=年度值/对应年份天数 <br>
+	2、半年度值转日均值=半年度值/对应半年度天数 <br>
+	3、季度值转日均值=季度值/对应季度天数 <br>
+	4、月度值转日均值=月度值/对应月度天数 <br>
+	5、旬度值转日均值=旬度值/对应旬度天数 <br>
+	6、周度值转日均值=周度值/7]`]
 ])
 ])
 
 
 // 常规计算类型
 // 常规计算类型
@@ -293,6 +300,10 @@ export const calculateType=[
 		name: '指数修匀',
 		name: '指数修匀',
 		type: 72
 		type: 72
 	},
 	},
+	{
+		name: '日均值',
+		type: 75
+	},
 ]
 ]
 
 
 // 批量计算类型
 // 批量计算类型
@@ -333,4 +344,8 @@ export const calculateBatchType=[
 		name: '指数修匀',
 		name: '指数修匀',
 		type: 72
 		type: 72
 	},
 	},
+	{
+		name: '日均值',
+		type: 75
+	},
 ]
 ]