|
@@ -12,7 +12,7 @@
|
|
<div class="form">
|
|
<div class="form">
|
|
<span class="formSpan">行政区:</span>
|
|
<span class="formSpan">行政区:</span>
|
|
<el-tree-select
|
|
<el-tree-select
|
|
- v-model="formData.xzqdm"
|
|
|
|
|
|
+ v-model="queryParams.xzqdm"
|
|
node-key="id"
|
|
node-key="id"
|
|
check-strictly
|
|
check-strictly
|
|
filterable
|
|
filterable
|
|
@@ -24,7 +24,7 @@
|
|
</div>
|
|
</div>
|
|
<div class="form">
|
|
<div class="form">
|
|
<span class="formSpan">行业:</span>
|
|
<span class="formSpan">行业:</span>
|
|
- <el-select v-model="formData.hyId" class="m-2" placeholder="请选择行业" size="large">
|
|
|
|
|
|
+ <el-select v-model="queryParams.hyId" class="m-2" placeholder="请选择行业" size="large">
|
|
<el-option
|
|
<el-option
|
|
v-for="item in industryList"
|
|
v-for="item in industryList"
|
|
:key="item.value"
|
|
:key="item.value"
|
|
@@ -36,7 +36,7 @@
|
|
<div class="form">
|
|
<div class="form">
|
|
<span class="formSpan">立项时间:</span>
|
|
<span class="formSpan">立项时间:</span>
|
|
<el-date-picker
|
|
<el-date-picker
|
|
- v-model="queryParams.lxsj"
|
|
|
|
|
|
+ v-model="lxsjObj"
|
|
type="daterange"
|
|
type="daterange"
|
|
unlink-panels
|
|
unlink-panels
|
|
range-separator="To"
|
|
range-separator="To"
|
|
@@ -46,25 +46,25 @@
|
|
</div>
|
|
</div>
|
|
<div class="form">
|
|
<div class="form">
|
|
<span class="formSpan">合同:</span>
|
|
<span class="formSpan">合同:</span>
|
|
- <el-checkbox-group v-model="queryParams.htList">
|
|
|
|
- <el-checkbox label="全部" />
|
|
|
|
- <el-checkbox label="已签订" />
|
|
|
|
- <el-checkbox label="未签订" />
|
|
|
|
- </el-checkbox-group>
|
|
|
|
|
|
+ <el-radio-group v-model="queryParams.isSign">
|
|
|
|
+ <el-radio>全部</el-radio>
|
|
|
|
+ <el-radio label="1">已签订</el-radio>
|
|
|
|
+ <el-radio label="0">未签订</el-radio>
|
|
|
|
+ </el-radio-group>
|
|
</div>
|
|
</div>
|
|
<div class="form">
|
|
<div class="form">
|
|
<span class="formSpan">项目状态:</span>
|
|
<span class="formSpan">项目状态:</span>
|
|
<el-radio-group v-model="queryParams.xmzt">
|
|
<el-radio-group v-model="queryParams.xmzt">
|
|
- <el-radio :label="0">进行中(10)</el-radio>
|
|
|
|
- <el-radio :label="1">已验收(7)</el-radio>
|
|
|
|
|
|
+ <el-radio :label="1">进行中(10)</el-radio>
|
|
|
|
+ <el-radio :label="4">已验收(7)</el-radio>
|
|
<el-radio :label="2">已结项(1)</el-radio>
|
|
<el-radio :label="2">已结项(1)</el-radio>
|
|
- <el-radio :label="3">已终止(0)</el-radio>
|
|
|
|
- <el-radio :label="4">全部(19)</el-radio>
|
|
|
|
|
|
+ <el-radio :label="9">已终止(0)</el-radio>
|
|
|
|
+ <el-radio>全部(19)</el-radio>
|
|
</el-radio-group>
|
|
</el-radio-group>
|
|
</div>
|
|
</div>
|
|
<div class="from">
|
|
<div class="from">
|
|
<div class="btnBox">
|
|
<div class="btnBox">
|
|
- <el-button type="primary" style="background: #3485ff">
|
|
|
|
|
|
+ <el-button type="primary" style="background: #3485ff" @click="searchHandle">
|
|
<img src="@/assets/imgs/OA/search.png" class="mr-8px" alt="" />
|
|
<img src="@/assets/imgs/OA/search.png" class="mr-8px" alt="" />
|
|
查询</el-button
|
|
查询</el-button
|
|
>
|
|
>
|
|
@@ -125,7 +125,7 @@
|
|
</div>
|
|
</div>
|
|
<div class="pageBox">
|
|
<div class="pageBox">
|
|
<el-pagination
|
|
<el-pagination
|
|
- v-model:current-page="pageNo"
|
|
|
|
|
|
+ v-model:current-page="queryParams.pageNo"
|
|
:page-size="100"
|
|
:page-size="100"
|
|
background
|
|
background
|
|
layout="total, prev, pager, next, jumper"
|
|
layout="total, prev, pager, next, jumper"
|
|
@@ -137,6 +137,7 @@
|
|
</div>
|
|
</div>
|
|
</template>
|
|
</template>
|
|
<script setup lang="ts">
|
|
<script setup lang="ts">
|
|
|
|
+import moment from 'moment'
|
|
import { useRouter } from 'vue-router'
|
|
import { useRouter } from 'vue-router'
|
|
import request from '@/config/axios'
|
|
import request from '@/config/axios'
|
|
import { getAssetURL } from '@/utils/auth'
|
|
import { getAssetURL } from '@/utils/auth'
|
|
@@ -145,26 +146,32 @@ const xmztMap: any = { 0: '立项申请中', 1: '进行中', 2: '已结项', 3:
|
|
const router = useRouter()
|
|
const router = useRouter()
|
|
const tableRef: any = ref(null)
|
|
const tableRef: any = ref(null)
|
|
const tableHeight: any = ref(0)
|
|
const tableHeight: any = ref(0)
|
|
-const formData = ref<{
|
|
|
|
- xmmc: string
|
|
|
|
|
|
+const queryParams = reactive<{
|
|
xmbh: string
|
|
xmbh: string
|
|
- xzqdm: string
|
|
|
|
|
|
+ xmmc: string
|
|
|
|
+ xmlbId: string
|
|
|
|
+ lxsjOn: string
|
|
|
|
+ lxsjOff: string
|
|
|
|
+ pageNo: number
|
|
|
|
+ xzqdm: number | string
|
|
|
|
+ pageSize: number
|
|
|
|
+ isSign: any
|
|
|
|
+ xmzt: any
|
|
hyId: string
|
|
hyId: string
|
|
}>({
|
|
}>({
|
|
- xmmc: '',
|
|
|
|
xmbh: '',
|
|
xmbh: '',
|
|
- xzqdm: '',
|
|
|
|
- hyId: ''
|
|
|
|
-})
|
|
|
|
-const queryParams: any = reactive({
|
|
|
|
xmmc: '',
|
|
xmmc: '',
|
|
- xmbh: '',
|
|
|
|
- xzqmc: '',
|
|
|
|
- hymc: '',
|
|
|
|
- lxsj: '',
|
|
|
|
- htList: [],
|
|
|
|
- xmzt: 0
|
|
|
|
|
|
+ xmlbId: '15',
|
|
|
|
+ lxsjOn: '',
|
|
|
|
+ lxsjOff: '',
|
|
|
|
+ pageNo: 1,
|
|
|
|
+ xzqdm: '',
|
|
|
|
+ pageSize: 10,
|
|
|
|
+ isSign: '',
|
|
|
|
+ xmzt: '',
|
|
|
|
+ hyId: '4'
|
|
})
|
|
})
|
|
|
|
+const lxsjObj = ref()
|
|
const infoList: any = ref([
|
|
const infoList: any = ref([
|
|
{
|
|
{
|
|
icon: 'xmzx/xmzcz',
|
|
icon: 'xmzx/xmzcz',
|
|
@@ -190,7 +197,6 @@ const operateClick = (row: any) => {
|
|
query: { id: row.id }
|
|
query: { id: row.id }
|
|
})
|
|
})
|
|
}
|
|
}
|
|
-const pageNo = ref<number>(1)
|
|
|
|
const tableData = ref<Array<any>>([])
|
|
const tableData = ref<Array<any>>([])
|
|
const total = ref<number>()
|
|
const total = ref<number>()
|
|
const industryList = ref([
|
|
const industryList = ref([
|
|
@@ -200,25 +206,30 @@ const industryList = ref([
|
|
},
|
|
},
|
|
{
|
|
{
|
|
label: '政府行业',
|
|
label: '政府行业',
|
|
- value: ''
|
|
|
|
|
|
+ value: '3'
|
|
},
|
|
},
|
|
{
|
|
{
|
|
label: 'IT行业',
|
|
label: 'IT行业',
|
|
- value: ''
|
|
|
|
|
|
+ value: '2'
|
|
},
|
|
},
|
|
{
|
|
{
|
|
label: '公司内部项目',
|
|
label: '公司内部项目',
|
|
- value: ''
|
|
|
|
|
|
+ value: '1'
|
|
},
|
|
},
|
|
{
|
|
{
|
|
label: '其他',
|
|
label: '其他',
|
|
- value: ''
|
|
|
|
|
|
+ value: '4'
|
|
}
|
|
}
|
|
])
|
|
])
|
|
|
|
+const searchHandle: () => void = () => {
|
|
|
|
+ queryProjectListAjax()
|
|
|
|
+}
|
|
const queryProjectListAjax = async (): Promise<void> => {
|
|
const queryProjectListAjax = async (): Promise<void> => {
|
|
const urlApi = `/project/page`
|
|
const urlApi = `/project/page`
|
|
|
|
+ // queryParams.lxsjOn = moment(lxsjObj[0]).format('YYYY-MM-DD')
|
|
|
|
+ // queryParams.lxsjOff = moment(lxsjObj[1]).format('YYYY-MM-DD')
|
|
const sendData = {
|
|
const sendData = {
|
|
- pageNo: pageNo.value,
|
|
|
|
|
|
+ ...queryParams,
|
|
pageSize: 10
|
|
pageSize: 10
|
|
}
|
|
}
|
|
const result = await request.get({ url: urlApi, params: sendData }, '/business')
|
|
const result = await request.get({ url: urlApi, params: sendData }, '/business')
|
|
@@ -227,6 +238,9 @@ const queryProjectListAjax = async (): Promise<void> => {
|
|
}
|
|
}
|
|
queryProjectListAjax()
|
|
queryProjectListAjax()
|
|
|
|
|
|
|
|
+/**
|
|
|
|
+ * 获取行政区tree结构数据
|
|
|
|
+ */
|
|
const areaTree = ref<Array<any>>()
|
|
const areaTree = ref<Array<any>>()
|
|
const filterNodeMethod = (value, data) => {
|
|
const filterNodeMethod = (value, data) => {
|
|
return data.name.includes(value)
|
|
return data.name.includes(value)
|