|
@@ -11,8 +11,75 @@
|
|
|
v-model="visible">
|
|
|
<div v-if="isShow">
|
|
|
<el-radio v-model="checkType" label="1" style="margin-right: 20px">项目</el-radio>
|
|
|
- <el-radio v-model="checkType" label="2" style="margin-right: 20px">其他</el-radio>
|
|
|
+ <el-radio v-model="checkType" label="2" style="margin-right: 20px">报告</el-radio>
|
|
|
+ <el-radio v-if="hasPermission('cw_finance:invoice:add:report')" v-model="checkType" label="3" style="margin-right: 20px">其他</el-radio>
|
|
|
</div>
|
|
|
+ <!--报告 -->
|
|
|
+ <div v-if="checkType === '2'" style="height: calc(100% - 80px);">
|
|
|
+ <el-form :inline="true" class="query-form" ref="searchForm" :model="searchForm"
|
|
|
+ @submit.native.prevent>
|
|
|
+ <!-- 搜索框-->
|
|
|
+ <el-form-item label="项目名称" prop="projectName">
|
|
|
+ <el-input v-model="searchForm.projectName" placeholder="请输入项目名称" clearable></el-input>
|
|
|
+ </el-form-item>
|
|
|
+ <el-form-item label="报告编号" prop="reportNo">
|
|
|
+ <el-input v-model="searchForm.reportNo" placeholder="请输入报告号" clearable></el-input>
|
|
|
+ </el-form-item>
|
|
|
+ <el-form-item label="报告创建时间" prop="createDates">
|
|
|
+ <el-date-picker
|
|
|
+ placement="bottom-start"
|
|
|
+ format="YYYY-MM-DD HH:mm:ss"
|
|
|
+ value-format="YYYY-MM-DD HH:mm:ss"
|
|
|
+ v-model="searchForm.createDates"
|
|
|
+ type="datetimerange"
|
|
|
+ range-separator="至"
|
|
|
+ start-placeholder="开始日期"
|
|
|
+ end-placeholder="结束日期">
|
|
|
+ </el-date-picker>
|
|
|
+ </el-form-item>
|
|
|
+
|
|
|
+ <el-form-item>
|
|
|
+ <el-button type="primary" @click="list1()" icon="el-icon-search">查询</el-button>
|
|
|
+ <el-button @click="resetSearch1()" icon="el-icon-refresh-right">重置</el-button>
|
|
|
+ </el-form-item>
|
|
|
+ </el-form>
|
|
|
+
|
|
|
+ <vxe-table
|
|
|
+ border="inner"
|
|
|
+ auto-resize
|
|
|
+ resizable
|
|
|
+ height="400px"
|
|
|
+ :loading="loading"
|
|
|
+ ref="projectTable1"
|
|
|
+ show-header-overflow
|
|
|
+ show-overflow
|
|
|
+ highlight-hover-row
|
|
|
+ :menu-config="{}"
|
|
|
+ :print-config="{}"
|
|
|
+ :sort-config="{remote:true}"
|
|
|
+ :data="dataList1"
|
|
|
+ :row-config="{isCurrent: true}"
|
|
|
+ :checkbox-config="{trigger: 'row'}"
|
|
|
+ >
|
|
|
+ <vxe-column type="seq" width="60" title="序号"></vxe-column>
|
|
|
+ <vxe-column type="checkbox" width="40px"></vxe-column>
|
|
|
+ <vxe-column min-width="230" align="center" title="项目名称" field="projectName"></vxe-column>
|
|
|
+ <vxe-column min-width="160" align="center" title="报告文号" field="reportNo"></vxe-column>
|
|
|
+ <vxe-column min-width="160" align="center" title="合同名称" field="contractName"></vxe-column>
|
|
|
+ <vxe-column min-width="160" align="center" title="报告创建人" field="userName"></vxe-column>
|
|
|
+ <vxe-column min-width="160" align="center" title="报告创建时间" field="createTime"></vxe-column>
|
|
|
+
|
|
|
+ </vxe-table>
|
|
|
+ <vxe-pager
|
|
|
+ background
|
|
|
+ :current-page="tablePage1.currentPage"
|
|
|
+ :page-size="tablePage1.pageSize"
|
|
|
+ :total="tablePage1.total"
|
|
|
+ :page-sizes="[10, 20, 100, 1000, {label: '全量数据', value: 1000000}]"
|
|
|
+ :layouts="['PrevPage', 'JumpNumber', 'NextPage', 'FullJump', 'Sizes', 'Total']"
|
|
|
+ @page-change="currentChangeHandle1">
|
|
|
+ </vxe-pager>
|
|
|
+ </div>
|
|
|
<div v-if="checkType === '1'" style="height: calc(100% - 80px);">
|
|
|
<el-form :inline="true" class="query-form" ref="searchForm" :model="searchForm" @submit.native.prevent>
|
|
|
<!-- 搜索框-->
|
|
@@ -25,8 +92,8 @@
|
|
|
<el-form-item label="创建时间" prop="createDates">
|
|
|
<el-date-picker
|
|
|
placement="bottom-start"
|
|
|
- format="yyyy-MM-dd HH:mm:ss"
|
|
|
- value-format="yyyy-MM-dd HH:mm:ss"
|
|
|
+ format="YYYY-MM-DD HH:mm:ss"
|
|
|
+ value-format="YYYY-MM-DD HH:mm:ss"
|
|
|
v-model="searchForm.createDates"
|
|
|
type="datetimerange"
|
|
|
range-separator="至"
|
|
@@ -77,7 +144,7 @@
|
|
|
@page-change="currentChangeHandle">
|
|
|
</vxe-pager>
|
|
|
</div>
|
|
|
- <div style="height: 500px;" v-if="checkType === '2'">
|
|
|
+ <div style="height: 500px;" v-if="checkType === '3'">
|
|
|
<el-form label-width="80px" class="query-form" ref="searchForm" :model="searchForm" @keyup.enter.native="refreshList()" @submit.native.prevent>
|
|
|
<el-row :gutter="15">
|
|
|
<el-col :span="21">
|
|
@@ -114,7 +181,14 @@
|
|
|
pageSize: 10,
|
|
|
orders: []
|
|
|
},
|
|
|
+ tablePage1: {
|
|
|
+ total: 0,
|
|
|
+ currentPage: 1,
|
|
|
+ pageSize: 10,
|
|
|
+ orders: []
|
|
|
+ },
|
|
|
dataList: [],
|
|
|
+ dataList1: [],
|
|
|
searchForm: {
|
|
|
name: '',
|
|
|
no: '',
|
|
@@ -123,6 +197,7 @@
|
|
|
projectNumber: '',
|
|
|
projectName: '',
|
|
|
createDates: [],
|
|
|
+ reportNo: '',
|
|
|
status: ''
|
|
|
},
|
|
|
checkType: '',
|
|
@@ -151,17 +226,23 @@
|
|
|
this.isShow = true
|
|
|
this.checkType = '1'
|
|
|
} else {
|
|
|
- if (isShow === false || isShow === 'false') {
|
|
|
- this.isShow = false
|
|
|
- this.checkType = '1'
|
|
|
- this.$message({message: '第一条为项目后面新增只能选择项目', type: 'warning', customClass: 'messageZindex'})
|
|
|
- } else if (isShow === '1') {
|
|
|
- this.isShow = false
|
|
|
- this.checkType = '1'
|
|
|
- } else {
|
|
|
- this.isShow = false
|
|
|
- this.checkType = '2'
|
|
|
- }
|
|
|
+ if (isShow === false || isShow === 'false') {
|
|
|
+ if (this.checkType === '1') {
|
|
|
+ this.isShow = false
|
|
|
+ this.checkType = '1'
|
|
|
+ this.$message({message: '第一条为项目后面新增只能选择项目', type: 'warning', customClass: 'messageZindex'})
|
|
|
+ } else if (this.checkType === '2') {
|
|
|
+ this.isShow = false
|
|
|
+ this.checkType = '2'
|
|
|
+ this.$message({message: '第一条为报告后面新增只能选择报告', type: 'warning', customClass: 'messageZindex'})
|
|
|
+ }
|
|
|
+ } else if (isShow === '1') {
|
|
|
+ this.isShow = false
|
|
|
+ this.checkType = '1'
|
|
|
+ } else {
|
|
|
+ this.isShow = false
|
|
|
+ this.checkType = '3'
|
|
|
+ }
|
|
|
}
|
|
|
if (this.commonJS.isEmpty(num) || num === true) {
|
|
|
this.num = true // num为true是多选,false是单选
|
|
@@ -186,12 +267,25 @@
|
|
|
}
|
|
|
}
|
|
|
rows = this.$refs.projectTable.getCheckboxRecords()
|
|
|
- } else {
|
|
|
+ } else if (this.checkType === '2') {
|
|
|
+ if (this.commonJS.isEmpty(this.$refs.projectTable1.getCheckboxRecords())) {
|
|
|
+ this.$message.error('请至少选择一条数据')
|
|
|
+ return
|
|
|
+ }
|
|
|
+ if (this.num === false) {
|
|
|
+ if (this.$refs.projectTable1.getCheckboxRecords().length > 1) {
|
|
|
+ this.$message.error('最多选择一条数据')
|
|
|
+ return
|
|
|
+ }
|
|
|
+ }
|
|
|
+ rows = this.$refs.projectTable1.getCheckboxRecords()
|
|
|
+ } else {
|
|
|
if (this.commonJS.isEmpty(this.detail)) {
|
|
|
this.$message.error('请填写开票详情')
|
|
|
return
|
|
|
}
|
|
|
rows = [{projectName: this.detail}]
|
|
|
+ rows.bj1 = 'bj1'
|
|
|
}
|
|
|
this.close()
|
|
|
this.$emit('getProgram', rows)
|
|
@@ -210,6 +304,20 @@
|
|
|
this.loading = false
|
|
|
})
|
|
|
},
|
|
|
+ list1 () {
|
|
|
+ this.loading = true
|
|
|
+ this.searchForm.status = '5'
|
|
|
+ this.projectRecordsService.list1({
|
|
|
+ 'current': this.tablePage1.currentPage,
|
|
|
+ 'size': this.tablePage1.pageSize,
|
|
|
+ 'orders': this.tablePage1.orders,
|
|
|
+ ...this.searchForm
|
|
|
+ }).then((data) => {
|
|
|
+ this.dataList1 = data.records
|
|
|
+ this.tablePage1.total = data.total
|
|
|
+ this.loading = false
|
|
|
+ })
|
|
|
+ },
|
|
|
// 当前页
|
|
|
currentChangeHandle ({currentPage, pageSize}) {
|
|
|
this.tablePage.currentPage = currentPage
|
|
@@ -220,6 +328,15 @@
|
|
|
this.$refs.searchForm.resetFields()
|
|
|
this.list()
|
|
|
},
|
|
|
+ resetSearch1 () {
|
|
|
+ this.$refs.searchForm.resetFields()
|
|
|
+ this.list1()
|
|
|
+ },
|
|
|
+ currentChangeHandle1 ({currentPage, pageSize}) {
|
|
|
+ this.tablePage1.currentPage = currentPage
|
|
|
+ this.tablePage1.pageSize = pageSize
|
|
|
+ this.list1()
|
|
|
+ },
|
|
|
close () {
|
|
|
this.detail = ''
|
|
|
this.visible = false
|