You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
 
 
 

257 lines
8.4 KiB

<template>
<div class="app-container">
<button-bar ref="btnbar" view-title="电站列表" :btndisabled="btndisabled" @btnhandle="btnHandle" />
<div class="main-content">
<div class="searchcon">
<div class="search" style="margin-top: 5px;">
<el-form ref="sform" :model="queryParams" :inline="true" class="tab-header">
<el-form-item label="录单日期"><el-date-picker
v-model="queryParams.params.search_time"
type="daterange"
align="right"
unlink-panels
range-separator="至"
start-placeholder="开始日期"
end-placeholder="结束日期"
value-format="yyyy-MM-dd"
:picker-options="pickerOptions"
/>
</el-form-item>
<el-form-item label="电站流程阶段">
<el-select v-model="queryParams.params.phase" placeholder="电站流程阶段" clearable class="addinputw">
<el-option v-for="item in phaseList" :key="item.value" :label="item.label" :value="item.value" />
</el-select>
</el-form-item>
<el-form-item label="区域项目">
<el-select v-model="queryParams.params.witch_group" multiple placeholder="数据分组" clearable class="addinputw">
<el-option v-for="item in witchgroupList" :key="item.value" :label="item.label" :value="item.value" />
</el-select>
</el-form-item>
<el-form-item label="代理商">
<el-select v-model="queryParams.params.agent_id" placeholder="请选择代理商" clearable class="addinputw">
<el-option v-for="item in agentList" :key="item.id" :label="item.name" :value="item.id" />
</el-select>
</el-form-item>
</el-form>
<div class="btn" style="text-align: center">
<el-button type="primary" size="small" icon="el-icon-search" @click="dosearch">查询</el-button>
<el-button type="primary" size="small" icon="el-icon-refresh" @click="resetQuery">重置</el-button>
</div>
</div>
</div>
<div class="listtop">
<div class="tit">电站列表</div>
<div style="margin-right: 50px;">电站数量:{{ queryParams.total }} <span style="margin-left: 30px;">{{ powerall }}</span></div>
</div>
<el-table v-loading="tableloading" :data="logList" style="width: 100%" border>
<el-table-column align="center" prop="id" label="电站id" width="90" />
<el-table-column align="center" prop="order_no" label="电站编码" width="150" />
<el-table-column align="center" prop="all_power" label="电站功率" width="100" />
<el-table-column align="center" prop="agent_name" label="代理商名称" />
<el-table-column align="center" prop="address" label="电站地址" width="160" />
<el-table-column align="center" prop="company_name" label="所属公司名称" width="200" />
<el-table-column align="center" prop="user_name" label="客户姓名" width="90" />
<el-table-column align="center" prop="user_phone" label="用户电话" width="90" />
<el-table-column align="center" prop="data_id" label="分组" width="90" />
<el-table-column align="center" prop="product_name" label="产品" width="100" />
<el-table-column align="center" prop="workflow_name" label="目前状态" width="100" />
<el-table-column align="center" prop="sign" label="是否签署合同" width="100">
<template slot-scope="scope">
<div>{{ scope.row.sign==1?'已经签署':'未签署' }}</div>
</template>
</el-table-column>
</el-table>
<div class="pages">
<div class="tit" />
<pagination
v-show="logList.length > 0"
:total="queryParams.total"
:page.sync="queryParams.current"
:limit.sync="queryParams.size"
class="pagination"
@pagination="loadLogList"
/>
</div>
</div>
</div>
</template>
<script>
import req from '@/api/gfApi'
import Pagination from '@/components/pagination'
import ButtonBar from '@/components/ButtonBar'
export default {
components: {
ButtonBar,
Pagination
},
data() {
return {
tableloading: false,
pickerOptions: {
shortcuts: [{
text: '最近一周',
onClick(picker) {
const end = new Date()
const start = new Date()
start.setTime(start.getTime() - 3600 * 1000 * 24 * 7)
picker.$emit('pick', [start, end])
}
}, {
text: '最近一个月',
onClick(picker) {
const end = new Date()
const start = new Date()
start.setTime(start.getTime() - 3600 * 1000 * 24 * 30)
picker.$emit('pick', [start, end])
}
}, {
text: '最近三个月',
onClick(picker) {
const end = new Date()
const start = new Date()
start.setTime(start.getTime() - 3600 * 1000 * 24 * 90)
picker.$emit('pick', [start, end])
}
}]
},
btndisabled: false,
btnList: [{
type: 'info',
size: 'small',
icon: 'cross',
btnKey: 'doClose',
btnLabel: '关闭'
}],
logList: [],
queryParams: {
current: 1,
size: 10,
total: 0,
params: {
agent_id: '',
search_time: [],
witch_data: '',
workflow: '',
witch_group: [],
phase: ''
}
},
agentList: [],
groupList: [],
workflowList: [],
witchgroupList: [{
value: '江西余干库',
label: '江西余干库'
},
{
value: '庄河荣名库',
label: '庄河荣名库'
},
{
value: '安阳荣名库',
label: '安阳荣名库'
},
{
value: '曲阜荣名库',
label: '曲阜荣名库'
}
],
phaseList: [{
value: '1',
label: '进件'
},
{
value: '2',
label: '签约'
},
{
value: '3',
label: '交货'
},
{
value: '4',
label: '完工'
},
{
value: '5',
label: '并网'
}
],
powerall: ''
}
},
mounted() {
// 初始化按钮
this.$refs['btnbar'].setButtonList(this.btnList)
},
created() {
// 初始化变量
this.init()
this.loadLogList()
},
methods: {
dosearch() {
this.loadLogList()
},
resetQuery() {
this.queryParams = {
current: 1,
size: 10,
total: 0,
params: {
agent_id: '',
search_time: [],
witch_data: '',
workflow: '',
witch_group: [],
phase: ''
}
}
this.loadLogList()
},
// 右上角点击事件
btnHandle(btnKey) {
switch (btnKey) {
case 'doClose': // 关闭
this.doClose()
break
default:
break
}
},
init() {
req.getAgentList().then((res) => {
this.agentList = res.data.data
})
req.groupDataidList().then((res) => {
this.groupList = res.data.data
})
req.workflowList().then((res) => {
this.workflowList = res.data.data
})
},
loadLogList() {
this.tableloading = true
req.listPageDzlb(this.queryParams).then((res) => {
this.tableloading = false
if (res.code == 200) {
console.log('======', res)
this.queryParams.total = res.data.pagging.total
this.logList = res.data.pagging.records
this.powerall = '总功率:' + res.data.power
}
}).catch(e => {
this.tableloading = false
})
},
doClose() {
this.$store.dispatch('tagsView/delView', this.$route)
this.$router.go(-1)
}
}
}
</script>
<style scoped>
</style>