|
@@ -16,34 +16,27 @@
|
|
|
|
|
|
<!-- 每周 -->
|
|
|
<el-form-item prop="frequency_week" v-if="item.frequency==='week'">
|
|
|
- <el-select v-model="item.frequency_week" multiple class="full-input" key="week">
|
|
|
+ <el-select v-model="item.frequency_week" class="full-input" key="week">
|
|
|
<el-option v-for="i in weekList" :key="i.key"
|
|
|
:label="i.label" :value="i.key"/>
|
|
|
</el-select>
|
|
|
</el-form-item>
|
|
|
|
|
|
<!-- 每旬、月、季、半年、年 -->
|
|
|
- <el-form-item prop="frequency_last" v-if="!['day','eday','week',''].includes(item.frequency)">
|
|
|
+ <el-form-item prop="frequency_last" v-if="!item.frequency.includes('日')&&!item.frequency.includes('月')">
|
|
|
<el-select v-model="item.frequency_last" :key="item.key" key="option">
|
|
|
<el-option v-for="i in timeOptionList" :key="i.key"
|
|
|
:label="i.label" :value="i.key"/>
|
|
|
</el-select>
|
|
|
</el-form-item>
|
|
|
- <el-form-item prop="frequency_n" v-if="item.frequency_last==='n'&&!['day','eday','week',''].includes(item.frequency)">
|
|
|
+ <el-form-item prop="frequency_n" v-if="item.frequency_last==='n'&&!item.frequency.includes('日')&&!item.frequency.includes('月')">
|
|
|
<el-input v-model="item.frequency_n">
|
|
|
<template slot="prefix">N=</template>
|
|
|
</el-input>
|
|
|
</el-form-item>
|
|
|
</el-form-item>
|
|
|
<el-form-item class="item" label="时间">
|
|
|
- <!-- 非周度时可多选 -->
|
|
|
- <el-form-item prop="times" v-if="item.frequency!=='week'">
|
|
|
- <el-select v-model="item.times" multiple class="full-input" key="multiple">
|
|
|
- <el-option v-for="i in timeList" :key="i"
|
|
|
- :label="i" :value="i"/>
|
|
|
- </el-select>
|
|
|
- </el-form-item>
|
|
|
- <el-form-item prop="time" v-if="item.frequency==='week'">
|
|
|
+ <el-form-item prop="time">
|
|
|
<el-select v-model="item.time" class="full-input" key="single">
|
|
|
<el-option v-for="i in timeList" :key="i"
|
|
|
:label="i" :value="i"/>
|
|
@@ -65,21 +58,16 @@
|
|
|
|
|
|
<script>
|
|
|
const config = {
|
|
|
- frequency:'',//刷新频率
|
|
|
- frequency_week:[],//频率为每周时,选择
|
|
|
+ frequency:'',//刷新频率:
|
|
|
+ frequency_week:'',//频率为每周时,选择
|
|
|
frequency_last:'',//第N天或最后一天
|
|
|
- frequency_n:0,
|
|
|
+ frequency_n:1,
|
|
|
time:'',//时间
|
|
|
- times:[],
|
|
|
num:3,//刷新单元格数
|
|
|
isAll:false,//全部刷新
|
|
|
}
|
|
|
export default {
|
|
|
props:{
|
|
|
- isDefault:{//是否是设置默认操作时间
|
|
|
- type:Boolean,
|
|
|
- default:false
|
|
|
- },
|
|
|
defaultForm:{
|
|
|
type:Object
|
|
|
}
|
|
@@ -92,18 +80,17 @@ export default {
|
|
|
...config,
|
|
|
key:0
|
|
|
}
|
|
|
-
|
|
|
]
|
|
|
},
|
|
|
frequencyType:[
|
|
|
- {label:'每自然日',key:'day'},
|
|
|
- {label:'每交易日',key:'eday'},
|
|
|
- {label:'每周',key:'week'},
|
|
|
- {label:'每旬',key:'tenday'},
|
|
|
- {label:'每月',key:'month'},
|
|
|
- {label:'每季',key:'season'},
|
|
|
- {label:'每半年',key:'halfyear'},
|
|
|
- {label:'每年',key:'year'},
|
|
|
+ {label:'每自然日',key:'每自然日'},
|
|
|
+ {label:'每交易日',key:'每交易日'},
|
|
|
+ {label:'每周',key:'每周'},
|
|
|
+ {label:'每旬',key:'每旬'},
|
|
|
+ {label:'每月',key:'每月'},
|
|
|
+ {label:'每季',key:'每季'},
|
|
|
+ {label:'每半年',key:'每半年'},
|
|
|
+ {label:'每年',key:'每年'},
|
|
|
],
|
|
|
//每周,可多选
|
|
|
weekList:[
|
|
@@ -122,10 +109,12 @@ export default {
|
|
|
],
|
|
|
//时间选项,仅整点
|
|
|
timeList:[
|
|
|
- '00:00','01:00','02:00','03:00','04:00','05:00','06:00',
|
|
|
- '07:00','08:00','09:00','10:00','11:00','12:00','13:00',
|
|
|
- '14:00','15:00','16:00','17:00','18:00','19:00','20:00',
|
|
|
- '21:00','22:00','23:00',
|
|
|
+ '00:00','00:30','01:00','01:30','02:00','02:30','03:00','03:30',
|
|
|
+ '04:00','04:30','05:00','05:30','06:00','06:30','07:00','07:30',
|
|
|
+ '08:00','08:30','09:00','09:30','10:00','10:30','11:00','11:30',
|
|
|
+ '12:00','12:30','13:00','13:30','14:00','14:30','15:00','15:30',
|
|
|
+ '16:00','16:30','17:00','17:30','18:00','18:30','19:00','19:30',
|
|
|
+ '20:00','20:30','21:00','21:30','22:00','22:30','23:00','23:30'
|
|
|
],
|
|
|
//N 范围 1-~
|
|
|
n_limit_map:{
|
|
@@ -138,20 +127,11 @@ export default {
|
|
|
};
|
|
|
},
|
|
|
watch:{
|
|
|
- isDefault:{
|
|
|
+ defaultForm:{
|
|
|
handler(newVal){
|
|
|
- if(newVal){ //若为默认操作时间,则重新赋值dynamicForm
|
|
|
- this.dynamicForm = _.cloneDeep(this.defaultForm)
|
|
|
- }else{
|
|
|
- this.dynamicForm = {
|
|
|
- configList:[{
|
|
|
- ...config,
|
|
|
- key:0
|
|
|
- }]
|
|
|
- }
|
|
|
- }
|
|
|
+ this.dynamicForm = this.formatForm(newVal)
|
|
|
},
|
|
|
- immediate:true
|
|
|
+ deep:true
|
|
|
}
|
|
|
},
|
|
|
methods: {
|
|
@@ -163,6 +143,58 @@ export default {
|
|
|
},
|
|
|
deleteSetting(index){
|
|
|
this.dynamicForm.configList.splice(index,1)
|
|
|
+ },
|
|
|
+ //将接口数据转换成form支持的格式
|
|
|
+ formatForm(form){
|
|
|
+ const {configList=[]} = form
|
|
|
+ if(!configList.length){
|
|
|
+ return {
|
|
|
+ configList:[{
|
|
|
+ ...config,
|
|
|
+ key:0
|
|
|
+ }]
|
|
|
+ }
|
|
|
+ }
|
|
|
+ const formatList = configList.map((item)=>{
|
|
|
+ let isOther = false
|
|
|
+ if(!item.RefreshFrequency.includes("周")&&!item.RefreshFrequency.includes("日")){
|
|
|
+ isOther = true
|
|
|
+ }
|
|
|
+ return {
|
|
|
+ frequency:item.RefreshFrequency,
|
|
|
+ frequency_week:item.RefreshFrequency.includes("周")?item.RefreshFrequencyNum:'',
|
|
|
+ frequency_last:isOther?(item.RefreshFrequencyNum===0?'last':'n'):'',
|
|
|
+ frequency_n:item.RefreshFrequencyNum,
|
|
|
+ time:item.RefreshTime,
|
|
|
+ num:item.RefreshDataNum,
|
|
|
+ isAll:false
|
|
|
+ }
|
|
|
+ })
|
|
|
+ return {
|
|
|
+ configList:formatList
|
|
|
+ }
|
|
|
+ },
|
|
|
+ //将数据转换成接口形式
|
|
|
+ getFormList(){
|
|
|
+ const list = this.dynamicForm.configList.map((item)=>{
|
|
|
+ //RefreshFrequencyDay: 每自然日、每交易日传0;每周传1~7;其他传n,最后一天n=0
|
|
|
+ let FrequencyDay = 0
|
|
|
+ if(item.frequency.includes("日")){
|
|
|
+ FrequencyDay = 0
|
|
|
+ }else if(item.frequency.includes("周")){
|
|
|
+ FrequencyDay = item.frequency_week
|
|
|
+ }else{
|
|
|
+ FrequencyDay = item.frequency_last==='last'?0:item.frequency_n
|
|
|
+ }
|
|
|
+ return {
|
|
|
+ RefreshFrequency:item.frequency,
|
|
|
+ RefreshFrequencyDay:FrequencyDay,
|
|
|
+ RefreshTime:item.time,
|
|
|
+ RefreshAllData:Number(item.isAll),
|
|
|
+ RefreshDataNum:item.num,
|
|
|
+ }
|
|
|
+ })
|
|
|
+ return list
|
|
|
}
|
|
|
},
|
|
|
};
|