项目管理页面优化

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,7 +44,7 @@
</el-button </el-button
> >
</el-col> </el-col>
<!-- <el-col :span="1.5"> <!-- <el-col :span="1.5">
<el-button <el-button
type="warning" type="warning"
plain plain
@ -64,7 +64,6 @@
<el-table-column label="项目名称" align="center" prop="proName"/> <el-table-column label="项目名称" align="center" prop="proName"/>
<el-table-column label="层级配置" align="center" prop="level"/> <el-table-column label="层级配置" align="center" prop="level"/>
<el-table-column label="项目类型" align="center" prop="proType"/> <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="chargePerson"/>
<el-table-column label="备注" align="center" prop="remark" width="180"/> <el-table-column label="备注" align="center" prop="remark" width="180"/>
<el-table-column label="操作" align="center" class-name="small-padding fixed-width"> <el-table-column label="操作" align="center" class-name="small-padding fixed-width">
@ -116,27 +115,8 @@
</el-select> </el-select>
</el-form-item> </el-form-item>
<el-form-item label="项目类型" prop="proType"> <el-form-item label="项目类型" prop="proType">
<el-select v-model="form.proType" placeholder="请选择项目类型" style="width: 100%"> <el-input maxlength="26" 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-form-item> </el-form-item>
<el-form-item label="负责人" prop="chargePerson"> <el-form-item label="负责人" prop="chargePerson">
@ -150,11 +130,6 @@
</div> </div>
</el-form-item> </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-row :gutter="10">
<el-col :span="12"> <el-col :span="12">
<el-form-item label="经度" prop="longitude"> <el-form-item label="经度" prop="longitude">
@ -162,7 +137,7 @@
</el-form-item> </el-form-item>
</el-col> </el-col>
<el-col :span="12"> <el-col :span="12">
<el-form-item prop="longitude" label="纬度"> <el-form-item prop="latitude" label="纬度">
<el-input disabled v-model="form.latitude"/> <el-input disabled v-model="form.latitude"/>
</el-form-item> </el-form-item>
</el-col> </el-col>
@ -196,73 +171,12 @@
<div style="text-align: right; margin-top: 10px"> <div style="text-align: right; margin-top: 10px">
<el-button type="primary" size="small" @click="findLocation">确定</el-button> <el-button type="primary" size="small" @click="findLocation">确定</el-button>
</div> </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> </el-dialog>
</div> </div>
</template> </template>
<script> <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' import {getLevelListApi} from '@/api/basic/level-manage.js'
export default { export default {
@ -299,28 +213,24 @@ export default {
pageNum: 1, pageNum: 1,
pageSize: 10, pageSize: 10,
proName: undefined, proName: undefined,
unit: undefined,
chargePerson: undefined, chargePerson: undefined,
}, },
// //
form: { form: {
proName: '', // proName: '', //
level: '', // level: '', //
proType:'', // proType: '', //
unit:'', // id
chargePerson: '', // chargePerson: '', //
location: '', // location: '', //
longitude: '', // longitude: '', //
latitude: '', // latitude: '', //
remark: '', // remark: '', //
}, },
// //
addOrEditRules: { addOrEditRules: {
proName: [{required: true, message: '项目名称不能为空', trigger: 'blur'}], proName: [{required: true, message: '项目名称不能为空', trigger: 'blur'}],
level: [{required: true, message: '请选择层级配置', trigger: 'change'}], level: [{required: true, message: '请选择层级配置', trigger: 'change'}],
proType: [{required: true, message: '请选择项目类型', trigger: 'change'}], proType: [],
unit: [{required: true, message: '请选择业主单位', trigger: 'change'}],
chargePerson: [{required: true, message: '请输入负责人', trigger: 'blur'}], chargePerson: [{required: true, message: '请输入负责人', trigger: 'blur'}],
location: [{required: true, message: '请选择项目所在地', trigger: 'blur'}], location: [{required: true, message: '请选择项目所在地', trigger: 'blur'}],
longitude: [{required: true, message: '请选择项目所在地', trigger: 'blur'}], longitude: [{required: true, message: '请选择项目所在地', trigger: 'blur'}],
@ -329,7 +239,8 @@ export default {
levelList: [], levelList: [],
proTypeList: [], proTypeList: [],
unitList: [], //
// unitList: [],
searchAddress: '', searchAddress: '',
marker: null, marker: null,
@ -339,7 +250,8 @@ export default {
this.getList() this.getList()
this.getLevelList() this.getLevelList()
this.getProTypeList() this.getProTypeList()
this.getUnitList() //
// this.getUnitList()
}, },
methods: { methods: {
async getLevelList() { async getLevelList() {
@ -350,21 +262,22 @@ export default {
this.levelList = res.rows this.levelList = res.rows
}, },
async getProTypeList() { async getProTypeList() {
const res = await getProTypeListApi() const res = await getProTypeListApi()
this.proTypeList = res.data this.proTypeList = res.data
}, },
async getUnitList() { //
const res = await getUnitListApi() // async getUnitList() {
this.unitList = res.data // const res = await getUnitListApi()
}, // this.unitList = res.data
// },
/** 查询岗位列表 */ /** 查询岗位列表 */
getList() { getList() {
this.loading = true this.loading = true
listProject(this.queryParams).then((response) => { listProject(this.queryParams).then((response) => {
console.log('ceshi',response)
this.proList = response.rows this.proList = response.rows
this.total = response.total this.total = response.total
this.loading = false this.loading = false
@ -380,7 +293,7 @@ export default {
this.form = { this.form = {
proName: '', // proName: '', //
level: '', // level: '', //
proType: '', // proType: '', //
chargePerson: '', // chargePerson: '', //
location: '', // location: '', //
longitude: '', // longitude: '', //
@ -463,7 +376,7 @@ export default {
this.form = response.data this.form = response.data
this.open = true this.open = true
this.title = '修改项目' this.title = '修改项目'
this.form.unit = response.data.unitId // this.form.unit = response.data.unitId
this.form.level = response.data.proId this.form.level = response.data.proId
}) })
}, },