|
@@ -2,7 +2,7 @@
|
|
|
<div class='flex flex-justify-start flex-col'>
|
|
<div class='flex flex-justify-start flex-col'>
|
|
|
<span class='font-16 bold full-width text-left'>各部分/乡镇投资完成情况总览</span>
|
|
<span class='font-16 bold full-width text-left'>各部分/乡镇投资完成情况总览</span>
|
|
|
<div class='full-width flex-justify-end flex'>
|
|
<div class='full-width flex-justify-end flex'>
|
|
|
- <el-select v-model="value" class="m-2" placeholder="请选择">
|
|
|
|
|
|
|
+ <el-select v-model="month" class="m-2" placeholder="请选择" ref='month' clearable @change='changeMonth'>
|
|
|
<el-option
|
|
<el-option
|
|
|
v-for="item in selectOption"
|
|
v-for="item in selectOption"
|
|
|
:key="item.value"
|
|
:key="item.value"
|
|
@@ -15,8 +15,7 @@
|
|
|
:option="option"
|
|
:option="option"
|
|
|
:data="data"
|
|
:data="data"
|
|
|
ref="crud"
|
|
ref="crud"
|
|
|
- v-model="form"
|
|
|
|
|
- @on-load="onLoad">
|
|
|
|
|
|
|
+ v-model="form">
|
|
|
</avue-crud>
|
|
</avue-crud>
|
|
|
</div>
|
|
</div>
|
|
|
</template>
|
|
</template>
|
|
@@ -28,6 +27,10 @@ export default {
|
|
|
type: {
|
|
type: {
|
|
|
type: Number,
|
|
type: Number,
|
|
|
default: 0
|
|
default: 0
|
|
|
|
|
+ },
|
|
|
|
|
+ deptId: {
|
|
|
|
|
+ type: String,
|
|
|
|
|
+ default: ''
|
|
|
}
|
|
}
|
|
|
},
|
|
},
|
|
|
watch: {
|
|
watch: {
|
|
@@ -36,10 +39,18 @@ export default {
|
|
|
this.initOption(val)
|
|
this.initOption(val)
|
|
|
},
|
|
},
|
|
|
immediate: true
|
|
immediate: true
|
|
|
|
|
+ },
|
|
|
|
|
+ deptId: {
|
|
|
|
|
+ handler (val) {
|
|
|
|
|
+ this.onLoad()
|
|
|
|
|
+ },
|
|
|
|
|
+ immediate: true
|
|
|
}
|
|
}
|
|
|
},
|
|
},
|
|
|
data () {
|
|
data () {
|
|
|
return {
|
|
return {
|
|
|
|
|
+ month: '',
|
|
|
|
|
+ quarter: '',
|
|
|
form: {},
|
|
form: {},
|
|
|
data: [],
|
|
data: [],
|
|
|
option: {
|
|
option: {
|
|
@@ -56,23 +67,23 @@ export default {
|
|
|
column: [
|
|
column: [
|
|
|
{
|
|
{
|
|
|
label: '部门/乡镇',
|
|
label: '部门/乡镇',
|
|
|
- prop: 'noticeType'
|
|
|
|
|
|
|
+ prop: 'deptName'
|
|
|
},
|
|
},
|
|
|
{
|
|
{
|
|
|
label: '责任目标',
|
|
label: '责任目标',
|
|
|
- prop: 'noticeType'
|
|
|
|
|
|
|
+ prop: 'planCompleteAmount'
|
|
|
},
|
|
},
|
|
|
{
|
|
{
|
|
|
label: '完成投资(万元)',
|
|
label: '完成投资(万元)',
|
|
|
- prop: 'noticeType'
|
|
|
|
|
|
|
+ prop: 'totalCompleteAmount'
|
|
|
},
|
|
},
|
|
|
{
|
|
{
|
|
|
label: '完成率',
|
|
label: '完成率',
|
|
|
- prop: 'noticeType'
|
|
|
|
|
|
|
+ prop: 'completionRate'
|
|
|
},
|
|
},
|
|
|
{
|
|
{
|
|
|
label: '计划入库',
|
|
label: '计划入库',
|
|
|
- prop: 'noticeType'
|
|
|
|
|
|
|
+ prop: 'storageNum'
|
|
|
}
|
|
}
|
|
|
]
|
|
]
|
|
|
},
|
|
},
|
|
@@ -81,9 +92,18 @@ export default {
|
|
|
},
|
|
},
|
|
|
methods: {
|
|
methods: {
|
|
|
onLoad () {
|
|
onLoad () {
|
|
|
- this.loading = true
|
|
|
|
|
|
|
+ this.$api.invest.list({
|
|
|
|
|
+ deptId: this.deptId === null ? '' : this.deptId,
|
|
|
|
|
+ month: this.month,
|
|
|
|
|
+ quarter: this.quarter
|
|
|
|
|
+ }).then(res => {
|
|
|
|
|
+ if (res.code === 200) {
|
|
|
|
|
+ this.data = res.data
|
|
|
|
|
+ }
|
|
|
|
|
+ })
|
|
|
},
|
|
},
|
|
|
initOption (res) {
|
|
initOption (res) {
|
|
|
|
|
+ this.month = ''
|
|
|
this.selectOption.length = 0
|
|
this.selectOption.length = 0
|
|
|
switch (res.value) {
|
|
switch (res.value) {
|
|
|
case 1:
|
|
case 1:
|
|
@@ -91,32 +111,43 @@ export default {
|
|
|
const item = { label: i + '月', value: i }
|
|
const item = { label: i + '月', value: i }
|
|
|
this.selectOption.push(item)
|
|
this.selectOption.push(item)
|
|
|
}
|
|
}
|
|
|
|
|
+ this.quarter = 1
|
|
|
break
|
|
break
|
|
|
case 2:
|
|
case 2:
|
|
|
for (let i = 4; i <= 6; i++) {
|
|
for (let i = 4; i <= 6; i++) {
|
|
|
const item = { label: i + '月', value: i }
|
|
const item = { label: i + '月', value: i }
|
|
|
this.selectOption.push(item)
|
|
this.selectOption.push(item)
|
|
|
}
|
|
}
|
|
|
|
|
+ this.quarter = 2
|
|
|
break
|
|
break
|
|
|
case 3:
|
|
case 3:
|
|
|
for (let i = 7; i <= 9; i++) {
|
|
for (let i = 7; i <= 9; i++) {
|
|
|
const item = { label: i + '月', value: i }
|
|
const item = { label: i + '月', value: i }
|
|
|
this.selectOption.push(item)
|
|
this.selectOption.push(item)
|
|
|
}
|
|
}
|
|
|
|
|
+ this.quarter = 3
|
|
|
break
|
|
break
|
|
|
case 4:
|
|
case 4:
|
|
|
for (let i = 10; i <= 12; i++) {
|
|
for (let i = 10; i <= 12; i++) {
|
|
|
const item = { label: i + '月', value: i }
|
|
const item = { label: i + '月', value: i }
|
|
|
this.selectOption.push(item)
|
|
this.selectOption.push(item)
|
|
|
}
|
|
}
|
|
|
|
|
+ this.quarter = 4
|
|
|
break
|
|
break
|
|
|
default:
|
|
default:
|
|
|
for (let i = 1; i <= 12; i++) {
|
|
for (let i = 1; i <= 12; i++) {
|
|
|
const item = { label: i + '月', value: i }
|
|
const item = { label: i + '月', value: i }
|
|
|
this.selectOption.push(item)
|
|
this.selectOption.push(item)
|
|
|
|
|
+ this.month = 1
|
|
|
|
|
+ this.quarter = ''
|
|
|
}
|
|
}
|
|
|
break
|
|
break
|
|
|
}
|
|
}
|
|
|
|
|
+ this.onLoad()
|
|
|
|
|
+ },
|
|
|
|
|
+ changeMonth (res) {
|
|
|
|
|
+ this.month = res
|
|
|
|
|
+ this.onLoad()
|
|
|
}
|
|
}
|
|
|
}
|
|
}
|
|
|
}
|
|
}
|