项目管理页面优化

This commit is contained in:
LHD_HY 2025-12-30 15:24:14 +08:00
parent fffb0c0f36
commit 7030ff9bd5
1 changed files with 29 additions and 116 deletions

View File

@ -44,18 +44,18 @@
</el-button
>
</el-col>
<!-- <el-col :span="1.5">
<el-button
type="warning"
plain
icon="el-icon-download"
size="mini"
@click="handleExport"
v-hasPermi="['basic:project:export']"
>导出
</el-button
>
</el-col>-->
<!-- <el-col :span="1.5">
<el-button
type="warning"
plain
icon="el-icon-download"
size="mini"
@click="handleExport"
v-hasPermi="['basic:project:export']"
>导出
</el-button
>
</el-col>-->
<right-toolbar :showSearch.sync="showSearch" @queryTable="getList"></right-toolbar>
</el-row>
@ -64,7 +64,6 @@
<el-table-column label="项目名称" align="center" prop="proName"/>
<el-table-column label="层级配置" align="center" prop="level"/>
<el-table-column label="项目类型" align="center" prop="proType"/>
<el-table-column label="业主单位" align="center" prop="unit"/>
<el-table-column label="负责人" align="center" prop="chargePerson"/>
<el-table-column label="备注" align="center" prop="remark" width="180"/>
<el-table-column label="操作" align="center" class-name="small-padding fixed-width">
@ -116,27 +115,8 @@
</el-select>
</el-form-item>
<el-form-item label="项目类型" prop="proType">
<el-select v-model="form.proType" placeholder="请选择项目类型" style="width: 100%">
<el-option
:key="item.id"
:value="item.id"
:label="item.name"
v-for="item in proTypeList"
/>
</el-select>
</el-form-item>
<el-form-item label="业主单位" prop="unit">
<el-select v-model="form.unit" placeholder="请选择业主单位" style="width: 100%">
<el-option
:key="item.id"
:value="item.id"
:label="item.unitName"
v-for="item in unitList"
/>
</el-select>
<el-input maxlength="26" v-model="form.proType" placeholder="请输入项目类型" style="width: 100%"/>
</el-form-item>
<el-form-item label="负责人" prop="chargePerson">
@ -150,11 +130,6 @@
</div>
</el-form-item>
<!-- <el-form-item label="经纬度" prop="longitude">
<el-input disabled style="width: 48%" v-model="form.longitude" />
<el-input disabled style="width: 48%; margin-left: 4%" v-model="form.latitude" />
</el-form-item> -->
<el-row :gutter="10">
<el-col :span="12">
<el-form-item label="经度" prop="longitude">
@ -162,7 +137,7 @@
</el-form-item>
</el-col>
<el-col :span="12">
<el-form-item prop="longitude" label="纬度">
<el-form-item prop="latitude" label="纬度">
<el-input disabled v-model="form.latitude"/>
</el-form-item>
</el-col>
@ -196,73 +171,12 @@
<div style="text-align: right; margin-top: 10px">
<el-button type="primary" size="small" @click="findLocation">确定</el-button>
</div>
<!-- <div style="margin-bottom: 10px">
<label>关键词<input v-model="keyword" class="lineinput" style="width: 200px" size="mini" /></label>
<label>地区<input v-model="location2" class="lineinput" style="width: 200px" size="mini" /></label>
</div>
<baidu-map
class="map"
:center="center"
:zoom="zoom"
@ready="handler"
:scroll-wheel-zoom="true"
@click="clickEvent"
ak="你的ak"
>
<bm-navigation anchor="BMAP_ANCHOR_TOP_RIGHT"></bm-navigation>
<bm-city-list anchor="BMAP_ANCHOR_TOP_LEFT"></bm-city-list>
<bm-geolocation
anchor="BMAP_ANCHOR_BOTTOM_RIGHT"
:showAddressBar="true"
:autoLocation="true"
@locationSuccess="getLoctionSuccess"
></bm-geolocation>
<bm-view :style="{ width: '100%', height: '300px', flex: 1, marginTop: '0px' }"></bm-view>
<bm-local-search
:keyword="keyword"
:auto-viewport="false"
:location="location2"
style="height: 150px; overflow-y: scroll; margin: 2px 0"
></bm-local-search>
</baidu-map>
<div class="demo-input-suffix" style="margin-top: 2vh">
<el-link type="info">经度</el-link
><el-input
class="lineinput"
style="width: 200px"
size="mini"
v-model.number="form.longitude"
:disabled="true"
></el-input>
<el-link type="info"> 纬度</el-link
><el-input
class="lineinput"
style="width: 200px"
size="mini"
v-model.number="form.latitude"
:disabled="true"
></el-input>
<el-link type="info"> 位置</el-link
><el-input
class="lineinput"
style="width: 200px"
size="mini"
v-model="form.location"
:disabled="true"
></el-input>
</div>
<div slot="footer" class="dialog-footer" style="margin-top: -30px">
<el-button type="warning" size="small" icon="el-icon-close" @click.native="mapVisible = false"
>取消</el-button
>
<el-button type="primary" size="small" icon="el-icon-check" @click="findLocation">确定</el-button>
</div> -->
</el-dialog>
</div>
</template>
<script>
import {listProject, getProject, delProject, addProject, updateProject,getProTypeListApi,getUnitListApi} from '@/api/basic/project'
import {listProject, getProject, delProject, addProject, updateProject, getProTypeListApi,getUnitListApi} from '@/api/basic/project'
import {getLevelListApi} from '@/api/basic/level-manage.js'
export default {
@ -299,28 +213,24 @@ export default {
pageNum: 1,
pageSize: 10,
proName: undefined,
unit: undefined,
chargePerson: undefined,
},
//
form: {
proName: '', //
level: '', //
proType:'', //
unit:'', // id
proType: '', //
chargePerson: '', //
location: '', //
longitude: '', //
latitude: '', //
remark: '', //
},
//
addOrEditRules: {
proName: [{required: true, message: '项目名称不能为空', trigger: 'blur'}],
level: [{required: true, message: '请选择层级配置', trigger: 'change'}],
proType: [{required: true, message: '请选择项目类型', trigger: 'change'}],
unit: [{required: true, message: '请选择业主单位', trigger: 'change'}],
proType: [],
chargePerson: [{required: true, message: '请输入负责人', trigger: 'blur'}],
location: [{required: true, message: '请选择项目所在地', trigger: 'blur'}],
longitude: [{required: true, message: '请选择项目所在地', trigger: 'blur'}],
@ -329,7 +239,8 @@ export default {
levelList: [],
proTypeList: [],
unitList: [],
//
// unitList: [],
searchAddress: '',
marker: null,
@ -339,7 +250,8 @@ export default {
this.getList()
this.getLevelList()
this.getProTypeList()
this.getUnitList()
//
// this.getUnitList()
},
methods: {
async getLevelList() {
@ -350,21 +262,22 @@ export default {
this.levelList = res.rows
},
async getProTypeList() {
const res = await getProTypeListApi()
this.proTypeList = res.data
},
async getUnitList() {
const res = await getUnitListApi()
this.unitList = res.data
},
//
// async getUnitList() {
// const res = await getUnitListApi()
// this.unitList = res.data
// },
/** 查询岗位列表 */
getList() {
this.loading = true
listProject(this.queryParams).then((response) => {
console.log('ceshi',response)
this.proList = response.rows
this.total = response.total
this.loading = false
@ -380,7 +293,7 @@ export default {
this.form = {
proName: '', //
level: '', //
proType: '', //
proType: '', //
chargePerson: '', //
location: '', //
longitude: '', //
@ -463,7 +376,7 @@ export default {
this.form = response.data
this.open = true
this.title = '修改项目'
this.form.unit = response.data.unitId
// this.form.unit = response.data.unitId
this.form.level = response.data.proId
})
},