|
@@ -0,0 +1,346 @@
|
|
|
+<template>
|
|
|
+ <div class="app-container organization-index">
|
|
|
+ <div class="title-container">
|
|
|
+ <breadcrumb id="breadcrumb-container" class="breadcrumb-container" />
|
|
|
+ </div>
|
|
|
+ <div>
|
|
|
+ <y-page-list-layout :get-page-list="getMajorLedger" :page-list="pageData" :page-para="listQuery">
|
|
|
+ <template slot="left">
|
|
|
+ <el-date-picker style="margin-right: 20px;float: left;" v-model="selectDate" type="daterange"
|
|
|
+ :picker-options="pickerOptions" format="yyyy 年 MM 月 dd 日" value-format="yyyy-MM-dd"
|
|
|
+ range-separator="至" start-placeholder="开始日期" end-placeholder="结束日期" align="right">
|
|
|
+ </el-date-picker>
|
|
|
+ <el-input v-model="listQuery.keyWord" placeholder="项目编号/项目名称" clearable
|
|
|
+ style="width: 200px;margin-right: 20px;float: left;">
|
|
|
+ </el-input>
|
|
|
+ <el-select v-model="listQuery.principalId" filterable placeholder="项目负责人(可搜索)" clearable
|
|
|
+ style="width: 200px;margin-right: 20px;float: left;">
|
|
|
+ <el-option v-for="(u, id) in allUsers" :label="u.name" :value="u.id"></el-option>
|
|
|
+ </el-select>
|
|
|
+ <el-select v-model="listQuery.clientManagerId" filterable placeholder="客户经理(可搜索)"
|
|
|
+ style=" width: 200px;margin-left: 10px;float: left;">
|
|
|
+ <el-option v-for="(u, id) in allUsers" :label="u.name" :value="u.id"></el-option>
|
|
|
+ </el-select>
|
|
|
+ <el-select v-model="listQuery.memberId" filterable placeholder="项目参与人(可搜索)"
|
|
|
+ style=" width: 200px;margin-left: 10px;float: left;">
|
|
|
+ <el-option v-for="(u, id) in allUsers" :label="u.name" :value="u.id"></el-option>
|
|
|
+ </el-select>
|
|
|
+ <el-select v-model="listQuery.departmentId" filterable placeholder="接单部门"
|
|
|
+ style=" width: 200px;margin-left: 10px;float: left;">
|
|
|
+ <el-option v-for="(d, id) in allotDepartment" :label="d.name" :value="d.id"></el-option>
|
|
|
+ </el-select>
|
|
|
+ <el-button class="filter-item" style="margin-left: 10px;float: left;" type="primary"
|
|
|
+ @click="searchList()" round>搜索
|
|
|
+ </el-button>
|
|
|
+ <el-button class="filter-item" round type="success" @click="resetParams()">重置
|
|
|
+ </el-button>
|
|
|
+ <el-button class="filter-item" round type="info" @click="exportMajorLedger()"
|
|
|
+ :disabled="exportStatus">导出
|
|
|
+ </el-button>
|
|
|
+ </template>
|
|
|
+ <parentTable ref="table" v-loading="listLoading" :data="pageData.records" slot="table" style="width: 100%;" class="tableFull">
|
|
|
+ <el-table-column label="项目流水号" width="120" align="center">
|
|
|
+ <template slot-scope="{row}">
|
|
|
+ <span>{{ row.orderId }}</span>
|
|
|
+ </template>
|
|
|
+ </el-table-column>
|
|
|
+ <el-table-column label="报告号" width="120" align="center">
|
|
|
+ <template slot-scope="{row}">
|
|
|
+ <span>{{ row.reportNo }}</span>
|
|
|
+ </template>
|
|
|
+ </el-table-column>
|
|
|
+ <el-table-column label="项目部名称" width="120" align="center">
|
|
|
+ <template slot-scope="{row}">
|
|
|
+ <span>{{ row.departmentName }}</span>
|
|
|
+ </template>
|
|
|
+ </el-table-column>
|
|
|
+ <el-table-column label="项目名称" width="120" align="center">
|
|
|
+ <template slot-scope="{row}">
|
|
|
+ <span>{{ row.projectName }}</span>
|
|
|
+ </template>
|
|
|
+ </el-table-column>
|
|
|
+ <el-table-column label="客户名称" width="120" align="center">
|
|
|
+ <template slot-scope="{row}">
|
|
|
+ <span>{{ row.customerName }}</span>
|
|
|
+ </template>
|
|
|
+ </el-table-column>
|
|
|
+ <el-table-column label="业务来源" width="120" align="center">
|
|
|
+ <template slot-scope="{row}">
|
|
|
+ <span>{{ row.customerSubName }}</span>
|
|
|
+ </template>
|
|
|
+ </el-table-column>
|
|
|
+ <el-table-column label="客户经理" width="120" align="center">
|
|
|
+ <template slot-scope="{row}">
|
|
|
+ <span>{{ row.clientManagerName }}</span>
|
|
|
+ </template>
|
|
|
+ </el-table-column>
|
|
|
+ <el-table-column label="项目负责人" width="120" align="center">
|
|
|
+ <template slot-scope="{row}">
|
|
|
+ <span>{{ row.principalName }}</span>
|
|
|
+ </template>
|
|
|
+ </el-table-column>
|
|
|
+ <el-table-column label="项目参与人" width="120" align="center">
|
|
|
+ <template slot-scope="{row}">
|
|
|
+ <span>{{ row.members }}</span>
|
|
|
+ </template>
|
|
|
+ </el-table-column>
|
|
|
+ <el-table-column label="产权人" width="120" align="center">
|
|
|
+ <template slot-scope="{row}">
|
|
|
+ <span>{{ row.owner }}</span>
|
|
|
+ </template>
|
|
|
+ </el-table-column>
|
|
|
+ <el-table-column label="委托方名称" width="120" align="center">
|
|
|
+ <template slot-scope="{row}">
|
|
|
+ <span>{{ row.bailor }}</span>
|
|
|
+ </template>
|
|
|
+ </el-table-column>
|
|
|
+ <el-table-column label="委托方电话" width="120" align="center">
|
|
|
+ <template slot-scope="{row}">
|
|
|
+ <span>{{ row.bailorContactTel }}</span>
|
|
|
+ </template>
|
|
|
+ </el-table-column>
|
|
|
+ <el-table-column label="委托方地址" width="120" align="center">
|
|
|
+ <template slot-scope="{row}">
|
|
|
+ <span>{{ row.bailorAddress }}</span>
|
|
|
+ </template>
|
|
|
+ </el-table-column>
|
|
|
+ <el-table-column label="估价目的" width="120" align="center">
|
|
|
+ <template slot-scope="{row}">
|
|
|
+ <span>{{ row.evaluateAim }}</span>
|
|
|
+ </template>
|
|
|
+ </el-table-column>
|
|
|
+ <el-table-column label="价值时点" width="120" align="center">
|
|
|
+ <template slot-scope="{row}">
|
|
|
+ <span>{{ row.valueTiming }}</span>
|
|
|
+ </template>
|
|
|
+ </el-table-column>
|
|
|
+ <el-table-column label="估价对象地址" width="120" align="center">
|
|
|
+ <template slot-scope="{row}">
|
|
|
+ <span>{{ row.located }}</span>
|
|
|
+ </template>
|
|
|
+ </el-table-column>
|
|
|
+ <el-table-column label="用途" width="120" align="center">
|
|
|
+ <template slot-scope="{row}">
|
|
|
+ <span>{{ row.landUse }}</span>
|
|
|
+ </template>
|
|
|
+ </el-table-column>
|
|
|
+ <el-table-column label="建筑面积(㎡)" width="120" align="center">
|
|
|
+ <template slot-scope="{row}">
|
|
|
+ <span>{{ row.buildAcreage }}</span>
|
|
|
+ </template>
|
|
|
+ </el-table-column>
|
|
|
+ <el-table-column label="土地面积(㎡)" width="120" align="center">
|
|
|
+ <template slot-scope="{row}">
|
|
|
+ <span>{{ row.landAcreage }}</span>
|
|
|
+ </template>
|
|
|
+ </el-table-column>
|
|
|
+ <el-table-column label="实勘时间" width="120" align="center">
|
|
|
+ <template slot-scope="{row}">
|
|
|
+ <span>{{ row.reconnaissanceDate }}</span>
|
|
|
+ </template>
|
|
|
+ </el-table-column>
|
|
|
+ <el-table-column label="单价(元/㎡)" width="120" align="center">
|
|
|
+ <template slot-scope="{row}">
|
|
|
+ <span>{{ row.evaluatePrice }}</span>
|
|
|
+ </template>
|
|
|
+ </el-table-column>
|
|
|
+ <el-table-column label="评估总价(万元)" width="120" align="center">
|
|
|
+ <template slot-scope="{row}">
|
|
|
+ <span>{{ row.evaluateAmount }}</span>
|
|
|
+ </template>
|
|
|
+ </el-table-column>
|
|
|
+ <el-table-column label="评估收入(万元)" width="120" align="center">
|
|
|
+ <template slot-scope="{row}">
|
|
|
+ <span>{{ row.productionRealAmount }}</span>
|
|
|
+ </template>
|
|
|
+ </el-table-column>
|
|
|
+ <el-table-column label="出库时间" width="120" align="center">
|
|
|
+ <template slot-scope="{row}">
|
|
|
+ <span>{{ row.repertoryOutTime }}</span>
|
|
|
+ </template>
|
|
|
+ </el-table-column>
|
|
|
+ <el-table-column label="第一报告人" width="120" align="center">
|
|
|
+ <template slot-scope="{row}">
|
|
|
+ <span>{{ row.firstReporter }}</span>
|
|
|
+ </template>
|
|
|
+ </el-table-column>
|
|
|
+ <el-table-column label="第二报告人" width="120" align="center">
|
|
|
+ <template slot-scope="{row}">
|
|
|
+ <span>{{ row.secReporter }}</span>
|
|
|
+ </template>
|
|
|
+ </el-table-column>
|
|
|
+ <el-table-column label="意见书二审人" width="120" align="center">
|
|
|
+ <template slot-scope="{row}">
|
|
|
+ <span>{{ row.secStatementChecker }}</span>
|
|
|
+ </template>
|
|
|
+ </el-table-column>
|
|
|
+ <el-table-column label="意见书三审人" width="120" align="center">
|
|
|
+ <template slot-scope="{row}">
|
|
|
+ <span>{{ row.thirdStatementChecker }}</span>
|
|
|
+ </template>
|
|
|
+ </el-table-column>
|
|
|
+ <el-table-column label="报告二审人" width="120" align="center">
|
|
|
+ <template slot-scope="{row}">
|
|
|
+ <span>{{ row.secReportChecker }}</span>
|
|
|
+ </template>
|
|
|
+ </el-table-column>
|
|
|
+ <el-table-column label="报告三审人" width="120" align="center">
|
|
|
+ <template slot-scope="{row}">
|
|
|
+ <span>{{ row.thirdReportReChecker }}</span>
|
|
|
+ </template>
|
|
|
+ </el-table-column>
|
|
|
+ <el-table-column label="特殊情况说明" width="120" align="center">
|
|
|
+ <template slot-scope="{row}">
|
|
|
+ <span>{{ row.comment }}</span>
|
|
|
+ </template>
|
|
|
+ </el-table-column>
|
|
|
+ </parentTable>
|
|
|
+ </y-page-list-layout>
|
|
|
+ </div>
|
|
|
+ </div>
|
|
|
+</template>
|
|
|
+
|
|
|
+<script>
|
|
|
+import Breadcrumb from '@/components/Breadcrumb'
|
|
|
+import YPageListLayout from '@/components/YPageListLayout'
|
|
|
+
|
|
|
+export default {
|
|
|
+ name: 'majorLedgerList',
|
|
|
+ components: {
|
|
|
+ Breadcrumb,
|
|
|
+ YPageListLayout
|
|
|
+ },
|
|
|
+ data() {
|
|
|
+ return {
|
|
|
+ evaluationMethods: null,
|
|
|
+ pageData: { records: [] },
|
|
|
+ listLoading: false,
|
|
|
+ // 时间
|
|
|
+ selectDate: '',
|
|
|
+ listQuery: {
|
|
|
+ page: 1,
|
|
|
+ size: 10,
|
|
|
+ current: 1,
|
|
|
+ // 开始时间
|
|
|
+ startTime: null,
|
|
|
+ // 结束时间
|
|
|
+ endTime: null,
|
|
|
+ // 关键字信息
|
|
|
+ keyWord: null,
|
|
|
+ // 客户经理id
|
|
|
+ clientManagerId: null,
|
|
|
+ // 项目负责人id
|
|
|
+ pricipalId: null,
|
|
|
+ // departmentId
|
|
|
+ departmentId: null,
|
|
|
+ // 节点code
|
|
|
+ nodeCode: null,
|
|
|
+ // 参与人id
|
|
|
+ memberId: null
|
|
|
+ },
|
|
|
+ // 用户下拉列表
|
|
|
+ allUsers: [],
|
|
|
+ // 接单部门
|
|
|
+ allotDepartment: [],
|
|
|
+ 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]);
|
|
|
+ }
|
|
|
+ }]
|
|
|
+ },
|
|
|
+ exportStatus: true
|
|
|
+ }
|
|
|
+ },
|
|
|
+ created() {
|
|
|
+ this.getAllUser();
|
|
|
+ this.getAllotDepartment();
|
|
|
+ this.getMajorLedger();
|
|
|
+ },
|
|
|
+ methods: {
|
|
|
+ // 获取所有用户下拉列表
|
|
|
+ getAllUser() {
|
|
|
+ this.$api.user.simpleAll().then(res => {
|
|
|
+ if (res.code === 200) {
|
|
|
+ this.allUsers = res.data;
|
|
|
+ }
|
|
|
+ })
|
|
|
+ },
|
|
|
+ // 条件查询
|
|
|
+ searchList() {
|
|
|
+ // 重置分页
|
|
|
+ this.listQuery.page = 1
|
|
|
+ this.listQuery.size = 10
|
|
|
+ this.getMajorLedger()
|
|
|
+ },
|
|
|
+ // 重置搜索条件
|
|
|
+ resetParams() {
|
|
|
+ this.exportStatus = true;
|
|
|
+ this.selectDate = '';
|
|
|
+ this.$router.push({ query: {} });
|
|
|
+ this.listQuery = {
|
|
|
+ current: 1,
|
|
|
+ size: 10,
|
|
|
+ }
|
|
|
+ this.getMajorLedger();
|
|
|
+ },
|
|
|
+ getMajorLedger() {
|
|
|
+ if (this.selectDate) {
|
|
|
+ this.listQuery.startTime = this.selectDate[0] + ' 00:00:00';
|
|
|
+ this.listQuery.endTime = this.selectDate[1] + ' 23:59:59';
|
|
|
+ }
|
|
|
+ this.$api.statistical.getMajorLedger(this.listQuery).then(res => {
|
|
|
+ if (res.code === 200) {
|
|
|
+ this.pageData = res.data;
|
|
|
+ if (this.listQuery.startTime !== null && this.listQuery.endTime !== null && res.data.records.length > 0) {
|
|
|
+ this.exportStatus = false;
|
|
|
+ } else {
|
|
|
+ this.exportStatus = true;
|
|
|
+ }
|
|
|
+ }
|
|
|
+ })
|
|
|
+ },
|
|
|
+ exportMajorLedger() {
|
|
|
+ this.$utils.exportUtil(
|
|
|
+ "major/statisticalStatement/getMajorLedgerVO/export", this.listQuery,
|
|
|
+ "导出"
|
|
|
+ );
|
|
|
+ },
|
|
|
+ // 获取部门下拉列表
|
|
|
+ getAllotDepartment() {
|
|
|
+ this.$api.department.allot('MAJOR_BUSINESS').then(res => {
|
|
|
+ if (res.code === 200) {
|
|
|
+ this.allotDepartment = res.data;
|
|
|
+ }
|
|
|
+ })
|
|
|
+ }
|
|
|
+ }
|
|
|
+}
|
|
|
+</script>
|
|
|
+<style scoped lang="scss">
|
|
|
+/* el-table 列数据为空自动显示 - */
|
|
|
+.tableFull :empty::before{
|
|
|
+ content:'-';
|
|
|
+ color:gray;
|
|
|
+}
|
|
|
+</style>
|