重点工程管理,安全环保检查管理,隐患管理,处罚管理。按照分公司创建的重点工程再包一层

pull/2/head
dearlin 2023-11-10 16:07:21 +08:00
parent 4d2865a5ed
commit ab35406727
9 changed files with 212 additions and 25 deletions

View File

@ -0,0 +1,135 @@
<template>
<div class="app-container">
<el-form label-width="100px">
<el-row>
<el-col :span="5">
<el-form-item label="企业名字">
<el-input v-model="CORP_NAME" placeholder="搜索企业名字" />
</el-form-item>
</el-col>
<el-col :span="5">
<el-form-item label="重点工程名称">
<el-input v-model="OUTSOURCED_NAME" placeholder="搜索重点工程名称" />
</el-form-item>
</el-col>
<el-col :span="6">
<el-form-item label-width="10px">
<el-button v-waves class="filter-item" type="primary" icon="el-icon-search" @click="getQuery">
搜索
</el-button>
<el-button v-waves class="filter-item" type="success" icon="el-icon-refresh" @click="goKeyReset">
重置
</el-button>
</el-form-item>
</el-col>
</el-row>
</el-form>
<el-table
v-loading="listLoading"
ref="multipleTable"
:data="varList"
:row-key="getRowKey"
:header-cell-style="{
'font-weight': 'bold',
'color': '#000'
}"
tooltip-effect="dark"
border
fit
highlight-current-row
>
<el-table-column type="index" label="序号" width="50" align="center" />
<el-table-column prop="CORP_NAME" label="公司名称" show-overflow-tooltip />
<el-table-column prop="STARTTIME" label="属地" show-overflow-tooltip>
<template slot-scope="{row}">
{{ row.prvinceName }} -- {{ row.cityName }} -- {{ row.countryName }}
</template>
</el-table-column>
<el-table-column prop="INDUSTRY_NAME" label="所属行业" show-overflow-tooltip />
<el-table-column prop="OUTSOURCED_COUNT" label="包含重点工程数" />
<el-table-column label="操作" align="center" width="100">
<template slot-scope="{row}">
<el-button type="success" icon="el-icon-view" size="mini" @click="goDetail(row.CORPINFO_ID)"></el-button>
</template>
</el-table-column>
</el-table>
<div class="page-btn-group">
<div/>
<pagination :total="total" :page.sync="listQuery.page" :limit.sync="listQuery.limit" @pagination="getList" />
</div>
</div>
</template>
<script>
import Pagination from '@/components/Pagination' // el-pagination
import { requestFN } from '@/utils/request'
import waves from '@/directive/waves' // waves directive
export default {
name: 'IndexVue',
components: { Pagination },
directives: { waves },
props: {
activeName: {
type: String,
default: ''
}
},
data() {
return {
listLoading: true,
listQuery: {
page: 1,
limit: 20
},
total: 0,
OUTSOURCED_NAME: '',
CORP_NAME: '',
varList: []
}
},
created() {
this.getList()
},
methods: {
getRowKey(row) {
return row.CORPINFO_ID
},
//
getQuery() {
this.getList()
},
goKeyReset() {
this.CORP_NAME = ''
this.OUTSOURCED_NAME = ''
this.getQuery()
},
//
getList() {
this.listLoading = true
requestFN(
'api/outsourced/listByCorp?showCount=' + this.listQuery.limit + '&currentPage=' + this.listQuery.page,
{
CORP_NAME: this.CORP_NAME,
OUTSOURCED_NAME: this.OUTSOURCED_NAME
}
).then((data) => {
this.listLoading = false
this.varList = data.varList
this.total = data.page.totalResult
}).catch((e) => {
this.listLoading = false
})
},
//
goDetail(ID) {
this.$parent.CORPINFO_ID = ID
this.$parent.activeName = this.activeName
}
}
}
</script>
<style scoped>
</style>

View File

@ -1,44 +1,48 @@
<template> <template>
<div class="app-container"> <div class="app-container">
<el-page-header content="隐患管理" @back="back"/>
<div class="level-title mt-20"/>
<el-form label-width="100px"> <el-form label-width="100px">
<el-row> <el-row>
<el-col :span="4"> <el-col :span="6">
<el-form-item label="重点工程名称"> <el-form-item label="重点工程名称">
<el-input v-model="OUTSOURCED_NAME" placeholder="搜索重点工程名称" /> <el-input v-model="OUTSOURCED_NAME" placeholder="搜索重点工程名称" />
</el-form-item> </el-form-item>
</el-col> </el-col>
<el-col :span="4"> <el-col :span="6">
<el-form-item label="隐患来源"> <el-form-item label="隐患来源">
<el-select ref="SOURCE" v-model="SOURCE" style="width: 100%;"> <el-select ref="SOURCE" v-model="SOURCE" style="width: 100%;">
<el-option v-for="item in SOURCEList" :key="item.ID" :label="item.NAME" :value="item.ID" /> <el-option v-for="item in SOURCEList" :key="item.ID" :label="item.NAME" :value="item.ID" />
</el-select> </el-select>
</el-form-item> </el-form-item>
</el-col> </el-col>
<el-col :span="4"> <el-col :span="6">
<el-form-item label="隐患发现人"> <el-form-item label="隐患发现人">
<el-input v-model="CREATOR_NAME" placeholder="搜索隐患发现人" /> <el-input v-model="CREATOR_NAME" placeholder="搜索隐患发现人" />
</el-form-item> </el-form-item>
</el-col> </el-col>
<el-col :span="4"> <el-col :span="6">
<el-form-item label="隐患整改人"> <el-form-item label="隐患整改人">
<el-input v-model="RECTIFICATIONOR_NAME" placeholder="搜索隐患整改人" /> <el-input v-model="RECTIFICATIONOR_NAME" placeholder="搜索隐患整改人" />
</el-form-item> </el-form-item>
</el-col> </el-col>
<el-col :span="4"> </el-row>
<el-row>
<el-col :span="6">
<el-form-item label="隐患状态"> <el-form-item label="隐患状态">
<el-select ref="STATE" v-model="STATE" style="width: 100%;"> <el-select ref="STATE" v-model="STATE" style="width: 100%;">
<el-option v-for="item in zList" :key="item.ID" :label="item.NAME" :value="item.ID" /> <el-option v-for="item in zList" :key="item.ID" :label="item.NAME" :value="item.ID" />
</el-select> </el-select>
</el-form-item> </el-form-item>
</el-col> </el-col>
<el-col :span="4"> <el-col :span="6">
<el-form-item label="是否处罚"> <el-form-item label="是否处罚">
<el-select ref="ISPUNISH" v-model="ISPUNISH" style="width: 100%;"> <el-select ref="ISPUNISH" v-model="ISPUNISH" style="width: 100%;">
<el-option v-for="item in stateList" :key="item.ID" :label="item.NAME" :value="item.ID" /> <el-option v-for="item in stateList" :key="item.ID" :label="item.NAME" :value="item.ID" />
</el-select> </el-select>
</el-form-item> </el-form-item>
</el-col> </el-col>
<el-col :span="4"> <el-col :span="6">
<el-form-item label-width="10px"> <el-form-item label-width="10px">
<el-button v-waves class="filter-item" type="primary" icon="el-icon-search" @click="getQuery"> <el-button v-waves class="filter-item" type="primary" icon="el-icon-search" @click="getQuery">
搜索 搜索
@ -47,7 +51,8 @@
重置 重置
</el-button> </el-button>
</el-form-item> </el-form-item>
</el-col></el-row> </el-col>
</el-row>
</el-form> </el-form>
<el-table <el-table
v-loading="listLoading" v-loading="listLoading"
@ -174,6 +179,10 @@ export default {
getRowKey(row) { getRowKey(row) {
return row.OUTSOURCED_ID return row.OUTSOURCED_ID
}, },
back() {
this.$parent.CORPINFO_ID = ''
this.$parent.activeName = 'OutSourced'
},
// //
getQuery() { getQuery() {
this.$refs.multipleTable.clearSelection() this.$refs.multipleTable.clearSelection()
@ -200,6 +209,7 @@ export default {
OUTSOURCED_NAME: this.OUTSOURCED_NAME, OUTSOURCED_NAME: this.OUTSOURCED_NAME,
ISCHECK: this.ISCHECK, ISCHECK: this.ISCHECK,
ISPUNISH: this.ISPUNISH, ISPUNISH: this.ISPUNISH,
CORPINFO_ID: this.$parent.CORPINFO_ID,
RECTIFICATIONOR_NAME: this.RECTIFICATIONOR_NAME, RECTIFICATIONOR_NAME: this.RECTIFICATIONOR_NAME,
CREATOR_NAME: this.CREATOR_NAME, CREATOR_NAME: this.CREATOR_NAME,
STATE: this.STATE, STATE: this.STATE,

View File

@ -1,5 +1,6 @@
<template> <template>
<div> <div>
<OutSourced v-show="activeName=='OutSourced'" ref="outSourced" active-name="List"/>
<component :is="activeName"/> <component :is="activeName"/>
</div> </div>
</template> </template>
@ -7,15 +8,17 @@
<script> <script>
import List from './components/list' import List from './components/list'
import Info from './components/info' import Info from './components/info'
import OutSourced from '@/components/OutSourced/index'
export default { export default {
components: { components: {
List: List, List: List,
OutSourced: OutSourced,
Info: Info Info: Info
}, },
data() { data() {
return { return {
activeName: 'List', activeName: 'OutSourced',
HIDDEN_ID: '' HIDDEN_ID: ''
} }
} }

View File

@ -1,5 +1,7 @@
<template> <template>
<div class="app-container"> <div class="app-container">
<el-page-header content="安全环保检查" @back="back"/>
<div class="level-title mt-20"/>
<el-form label-width="100px"> <el-form label-width="100px">
<el-row> <el-row>
<!-- <el-col :span="5">--> <!-- <el-col :span="5">-->
@ -73,7 +75,8 @@
<div/> <div/>
<pagination :total="total" :page.sync="listQuery.page" :limit.sync="listQuery.limit" @pagination="getList" /> <pagination :total="total" :page.sync="listQuery.page" :limit.sync="listQuery.limit" @pagination="getList" />
</div> </div>
</div></template> </div>
</template>
<script> <script>
import Pagination from '@/components/Pagination' // el-pagination import Pagination from '@/components/Pagination' // el-pagination
import { requestFN } from '@/utils/request' import { requestFN } from '@/utils/request'
@ -106,6 +109,10 @@ export default {
this.getList() this.getList()
}, },
methods: { methods: {
back() {
this.$parent.CORPINFO_ID = ''
this.$parent.activeName = 'OutSourced'
},
getRowKey(row) { getRowKey(row) {
return row.OUTSOURCED_ID return row.OUTSOURCED_ID
}, },
@ -128,6 +135,7 @@ export default {
{ {
KEYWORDS: this.KEYWORDS, KEYWORDS: this.KEYWORDS,
OUTSOURCED_NAME: this.OUTSOURCED_NAME, OUTSOURCED_NAME: this.OUTSOURCED_NAME,
CORPINFO_ID: this.$parent.CORPINFO_ID,
STATE: this.STATE STATE: this.STATE
} }
).then((data) => { ).then((data) => {

View File

@ -1,6 +1,9 @@
<template> <template>
<div> <div>
<component :is="activeName"/> <OutSourced v-show="activeName=='OutSourced'" ref="outSourced" active-name="List"/>
<List v-if="activeName=='List'" ref="list" />
<Info v-if="activeName=='Info'" />
<recordList v-if="activeName=='recordList'" />
</div> </div>
</template> </template>
@ -8,19 +11,28 @@
import List from './components/list' import List from './components/list'
import Info from './components/info' import Info from './components/info'
import recordList from './components/record-list' import recordList from './components/record-list'
import OutSourced from '@/components/OutSourced/index'
export default { export default {
components: { components: {
List: List, List: List,
OutSourced: OutSourced,
Info: Info, Info: Info,
recordList: recordList recordList: recordList
}, },
data() { data() {
return { return {
activeName: 'List', activeName: 'OutSourced',
OUTSOURCED_ID: '', OUTSOURCED_ID: '',
KEYPROJECTCHECK_ID: '' KEYPROJECTCHECK_ID: ''
} }
},
watch: {
activeName(val) {
if (val == 'OutSourced') {
this.$refs.outSourced.getQuery()
}
}
} }
} }
</script> </script>

View File

@ -1,5 +1,7 @@
<template> <template>
<div class="app-container"> <div class="app-container">
<el-page-header content="重点工程" @back="back"/>
<div class="level-title mt-20"/>
<el-form label-width="100px"> <el-form label-width="100px">
<el-row> <el-row>
<el-col :span="8"> <el-col :span="8">
@ -8,8 +10,10 @@
</el-form-item> </el-form-item>
</el-col> </el-col>
<el-col :span="8"> <el-col :span="8">
<el-form-item label="创建单位"> <el-form-item label="集团单位">
<el-input v-model="CORP_NAME" placeholder="创建单位" style="width: 100%;" /> <el-select v-model="GROUP_UNIT" placeholder="请选择集团单位" style="width: 100%;">
<el-option v-for="item in groupCorpList" :key="item.CORPINFO_ID" :label="item.CORP_NAME" :value="item.CORPINFO_ID" />
</el-select>
</el-form-item> </el-form-item>
</el-col> </el-col>
<el-col :span="8"> <el-col :span="8">
@ -66,13 +70,7 @@
</el-col> </el-col>
</el-row> </el-row>
<el-row> <el-row>
<el-col :span="8">
<el-form-item label="集团单位">
<el-select v-model="GROUP_UNIT" placeholder="请选择集团单位" style="width: 100%;">
<el-option v-for="item in groupCorpList" :key="item.CORPINFO_ID" :label="item.CORP_NAME" :value="item.CORPINFO_ID" />
</el-select>
</el-form-item>
</el-col>
<el-col :span="8"> <el-col :span="8">
<el-form-item label="状态"> <el-form-item label="状态">
<el-select ref="SELECT_STATE" v-model="STATE" style="width: 100%;"> <el-select ref="SELECT_STATE" v-model="STATE" style="width: 100%;">
@ -112,7 +110,6 @@
width="55" width="55"
align="center"/> align="center"/>
<el-table-column type="index" label="序号" width="50" align="center" /> <el-table-column type="index" label="序号" width="50" align="center" />
<el-table-column prop="CORP_NAME" label="创建单位" show-overflow-tooltip />
<el-table-column prop="OUTSOURCED_NAME" label="重点工程名称" show-overflow-tooltip /> <el-table-column prop="OUTSOURCED_NAME" label="重点工程名称" show-overflow-tooltip />
<el-table-column prop="UNITS_NAME" label="施工相关方" width="250" show-overflow-tooltip /> <el-table-column prop="UNITS_NAME" label="施工相关方" width="250" show-overflow-tooltip />
<el-table-column label="辖区单位" show-overflow-tooltip > <el-table-column label="辖区单位" show-overflow-tooltip >
@ -298,6 +295,7 @@ export default {
CONTRACT_STIME: this.CONTRACTTIME[0], CONTRACT_STIME: this.CONTRACTTIME[0],
CONTRACT_ETIME: this.CONTRACTTIME[1], CONTRACT_ETIME: this.CONTRACTTIME[1],
STATE: this.STATE, STATE: this.STATE,
CORPINFO_ID: this.$parent.CORPINFO_ID,
INVOLVING_CORP: this.INVOLVING_CORP, INVOLVING_CORP: this.INVOLVING_CORP,
DEPARTMENT_ID: this.DEPARTMENT_ID, DEPARTMENT_ID: this.DEPARTMENT_ID,
COMPETENT_DEPT_ID: this.COMPETENT_DEPT_ID, COMPETENT_DEPT_ID: this.COMPETENT_DEPT_ID,
@ -509,6 +507,10 @@ export default {
this.listLoading = false this.listLoading = false
}) })
}, },
back() {
this.$parent.CORPINFO_ID = ''
this.$parent.activeName = 'OutSourced'
},
// //
getDict: function() { getDict: function() {
}, },

View File

@ -1,5 +1,6 @@
<template> <template>
<div> <div>
<OutSourced v-show="activeName=='OutSourced'" ref="outSourced" active-name="List"/>
<List v-show="activeName=='List'" ref="list" /> <List v-show="activeName=='List'" ref="list" />
<Edit v-if="activeName=='Edit'" /> <Edit v-if="activeName=='Edit'" />
<Info v-if="activeName=='Info'" /> <Info v-if="activeName=='Info'" />
@ -10,16 +11,18 @@
import List from './components/list' import List from './components/list'
import Edit from './components/edit' import Edit from './components/edit'
import Info from './components/info' import Info from './components/info'
import OutSourced from '@/components/OutSourced/index'
export default { export default {
components: { components: {
List: List, List: List,
Edit: Edit, Edit: Edit,
OutSourced: OutSourced,
Info: Info Info: Info
}, },
data() { data() {
return { return {
activeName: 'List' activeName: 'OutSourced'
} }
}, },
watch: { watch: {
@ -27,6 +30,9 @@ export default {
if (val == 'List') { if (val == 'List') {
this.$refs.list.getQuery() this.$refs.list.getQuery()
} }
if (val == 'OutSourced') {
this.$refs.outSourced.getQuery()
}
} }
} }
} }

View File

@ -1,5 +1,7 @@
<template> <template>
<div class="app-container"> <div class="app-container">
<el-page-header content="处罚管理" @back="back"/>
<div class="level-title mt-20"/>
<el-form label-width="100px"> <el-form label-width="100px">
<el-row> <el-row>
<el-col :span="4"> <el-col :span="4">
@ -110,6 +112,10 @@ export default {
getRowKey(row) { getRowKey(row) {
return row.OUTSOURCED_ID return row.OUTSOURCED_ID
}, },
back() {
this.$parent.CORPINFO_ID = ''
this.$parent.activeName = 'OutSourced'
},
// //
getQuery() { getQuery() {
this.$refs.multipleTable.clearSelection() this.$refs.multipleTable.clearSelection()
@ -143,7 +149,9 @@ export default {
requestFN( requestFN(
'/outsourced/list?showCount=' + this.listQuery.limit + '&currentPage=' + this.listQuery.page, '/outsourced/list?showCount=' + this.listQuery.limit + '&currentPage=' + this.listQuery.page,
{ {
KEYWORDS: this.KEYWORDS KEYWORDS: this.KEYWORDS,
CORPINFO_ID: this.$parent.CORPINFO_ID
} }
).then((data) => { ).then((data) => {
this.listLoading = false this.listLoading = false

View File

@ -1,5 +1,6 @@
<template> <template>
<div> <div>
<OutSourced v-show="activeName=='OutSourced'" ref="outSourced" active-name="List"/>
<List v-show="activeName=='List'" ref="list" /> <List v-show="activeName=='List'" ref="list" />
<List2 v-if="activeName=='List2'" /> <List2 v-if="activeName=='List2'" />
<Info v-if="activeName=='Info'" /> <Info v-if="activeName=='Info'" />
@ -12,17 +13,19 @@ import List from './components/list'
import Info from './components/info' import Info from './components/info'
import List2 from './components/list2' import List2 from './components/list2'
import HiddenInfo from './components/hiddenInfo.vue' import HiddenInfo from './components/hiddenInfo.vue'
import OutSourced from '@/components/OutSourced/index'
export default { export default {
components: { components: {
HiddenInfo: HiddenInfo, HiddenInfo: HiddenInfo,
OutSourced: OutSourced,
List: List, List: List,
Info: Info, Info: Info,
List2: List2 List2: List2
}, },
data() { data() {
return { return {
activeName: 'List', activeName: 'OutSourced',
KEYPROJECTPUNISH_ID: '', KEYPROJECTPUNISH_ID: '',
HIDDEN_ID: '' HIDDEN_ID: ''
} }