Commit cdd9ec0b authored by Kimber's avatar Kimber

Merge branch 'rev2'

parents 2bf9672c 1313bb76
......@@ -96,9 +96,9 @@ export default {
},
// 修改
set: (iotNormalMachine) => {
iotNormalMachine.enterpriseId = null
iotNormalMachine.mineType = null
iotNormalMachine.mineId = null
// iotNormalMachine.enterpriseId = null
// iotNormalMachine.mineType = null
// iotNormalMachine.mineId = null
iotNormalMachine.createDatetime = null
iotNormalMachine.createBy = null
iotNormalMachine.updateDatetime = null
......
......@@ -50,7 +50,7 @@ export default {
// 修改地下矿山
setUnderground: (mine) => {
mine.hasEnable = null
mine.enterpriseId = null
// mine.enterpriseId = null
mine.createDatetime = null
mine.createBy = null
mine.updateDatetime = null
......@@ -183,5 +183,14 @@ export default {
method: 'get',
params: mineSearchParam
})
},
// 根据企业查询所属矿山(含停产)enterpriseId
getAllMineByEnterpriseId: (mineSearchParam) => {
return request({
url: 'api/mine/underground/list',
method: 'get',
params: mineSearchParam
})
}
}
<template>
<div class="app-amap-search-point">
<el-autocomplete v-show="isSearch" v-model="mapInput" style="width: 100%;" :fetch-suggestions="querySearch" placeholder="请输入地址搜素" prefix-icon="el-icon-search" @select="handleSelect">
<template slot-scope="{ item }">
<div style="text-overflow: ellipsis; overflow: hidden;">{{ item.name }}</div>
<span style="font-size: 12px; color: #b4b4b4;">{{ item.district }}</span>
</template>
</el-autocomplete>
<div id="amap_search_point_container_add" :style="{padding: 0,margin: 0,width: '100%',height: mapHeight}" />
</div>
</template>
<script>
import AMapLoader from '@amap/amap-jsapi-loader'
export default {
name: 'AMapSearchPoint',
props: {
mapHeight: {
type: String,
default: () => { return '400px' }
},
isSearch: {
type: Boolean,
default: () => { return true }
},
point: {
type: Array,
default: () => { return null }
}
},
data() {
return {
mapInput: '',
lnglat: null,
mapMarker: null
}
},
computed: {},
watch: {
mapMarker(newValue, oldValue) {
if (oldValue) {
this.map.remove(oldValue)
}
if (newValue) {
this.map.add(newValue)
}
},
point() {
if (this.map) {
this.markPoint(this.point)
this.point && this.map.panTo(this.point)
}
}
},
created() {
this.initMap()
},
methods: {
// 输入选择
querySearch(queryString, callback) {
this.autoComplete.search(queryString, (status, result) => {
// result.tips[0].{name,district,location{lng,lat}}
if (result && result.tips) {
callback(result.tips.filter(tip => tip.location))
} else {
callback(null)
}
})
},
// 点选搜索结果
handleSelect(amapTip) {
if (amapTip.location.lng && amapTip.location.lat) {
this.$emit('choosePoint', [amapTip.location.lng, amapTip.location.lat])
} else {
this.$message({
message: '您所选的地点无法精确定位',
type: 'warning'
})
}
},
// 选中点
markPoint(lnglatArray) {
if (lnglatArray && lnglatArray.length === 2) {
this.mapMarker = new this.AMap.Marker({
position: new this.AMap.LngLat(lnglatArray[0], lnglatArray[1])
})
this.lnglat = lnglatArray
} else {
this.mapMarker = null
}
},
initMap() {
AMapLoader.load({
key: 'a0efee399e638b35211705625d786e83',
version: '2.0',
plugins: []
}).then((AMap) => {
this.AMap = AMap
// 加载地图
let center = [119.969873, 36.753901] // 平度市
if (this.defaultPoint && this.defaultPoint.length === 2) {
center = this.defaultPoint
}
this.map = new this.AMap.Map('amap_search_point_container_add', {
resizeEnable: true,
center: center,
zoom: 12
})
if (this.defaultPoint && this.defaultPoint.length === 2) {
this.markPoint(center)
}
// 点击选取
this.map.on('click', res => {
if (this.isSearch) {
if (res && res.lnglat && res.lnglat.lng && res.lnglat.lat) {
this.$emit('choosePoint', [res.lnglat.lng, res.lnglat.lat])
}
}
})
// 输入框选择位置
this.AMap.plugin(['AMap.AutoComplete'], () => {
this.autoComplete = new this.AMap.AutoComplete({
city: '全国'
})
})
// 初始化位置
if (this.point) {
this.markPoint(this.point)
this.point && this.map.panTo(this.point)
}
}).catch(e => {
console.error(e)
})
}
}
}
</script>
<style rel="stylesheet/scss" lang="scss" scoped>
</style>
......@@ -198,12 +198,14 @@ export default {
id: value
}
}).then((res)=>{
Message({
this.$message({
message: '操作成功,正在重新加载页面',
type: 'success',
duration: 3000 // 消息显示的时间,单位为 ms
});
// window.location.reload()
setTimeout(() => {
window.location.reload()
}, 500);
})
},
// 跳转到大屏
......
<template>
<div class="login" :style="'background-image:url(' + Background + ');'">
<div class="topTitle" >
<div class="floating-text">
中和地信有限公司欢迎您!
</div>
</div>
<div class="bottomTitle">@中和地信有限公司</div>
<div class="wrapper">
<div class="header">
<h2 @click="navTo('admin')"><i class="el-icon-setting"></i>管理后台</h2>
</div>
<div class="title">
<h1>中和地信应急平台</h1>
</div>
<div class="content">
<ul>
<li v-for="(item, index) in dataList" :key="index" @click="navTo(item.label)">
{{ item.label }}
</li>
</ul>
</div>
</div>
</div>
</template>
<script>
import qs from "qs";
import Background from "@/assets/images/background.webp";
import { mapGetters } from "vuex";
import menuApi from '@/api/system/menu.js'
export default {
name: "Login",
data() {
return {
show: false,
userStyle: null,
Background: Background,
codeUrl: "",
cookiePass: "",
loading: false,
redirect: undefined,
dataList: []
};
},
computed: {
...mapGetters(["user"]),
},
watch: {
$route: {
handler: function (route) {
const data = route.query;
if (data && data.redirect) {
this.redirect = data.redirect;
delete data.redirect;
if (JSON.stringify(data) !== "{}") {
this.redirect =
this.redirect + "&" + qs.stringify(data, { indices: false });
}
}
},
immediate: true,
},
},
created() {
// // 按照不同域名加载不同页面样式(企业、应急局),加载完毕后再显示页面
// const host = window.location.host;
// if (host === "yingji.longxijiancai.com") {
// this.userStyle = "应急局";
// }
// if (host === "qiye.longxijiancai.com") {
// this.userStyle = "企业";
// }
menuApi.getMenusHome().then((res)=>{
this.dataList = res.body
})
},
methods: {
navTo(type) {
var host = location.protocol + '//' + window.location.host;
if (type === "admin") {
// this.$router.push({ path: "home4Center" });
this.$router.push({ path: "/user/center" });
}else if(type === "应急管理"){
// this.$router.push({ path: "home4Center" });
// this.$router.push({ path: "/user/center" });
// location.href = 'http://192.168.3.226:8057/datav/index.html'
location.href = host + '/datav/index.html'
}else if(type === "自然资源"){
// location.href = process.env.NODE_ENV + ''
// location.href = 'http://192.168.3.226:8057/datav/natural.html'
location.href = host + '/datav/natural.html'
}else if(type === "水利系统"){
// location.href = 'http://192.168.3.226:8057/datav/watersource.html'
location.href = host + '/datav/watersource.html'
}else if(type === "电子档案馆"){
// this.$router.push({ path: "home4Center" });
this.$router.push({ path: "/user/center" });
}
},
},
};
</script>
<style rel="stylesheet/scss" lang="scss">
@keyframes floatShadow {
0% {
transform:translateX(1300px);
display:block;
}
100% {
transform:translateX(-1300px);
display:none;
}
}
.floating-text {
font-size:18px;line-height:1;
color: #FDD756;text-shadow: 0 0 5px #fff;
animation: floatShadow;
animation-name:floatShadow;
animation-duration: 20s;
animation-iteration-count: infinite;
animation-timing-function:linear;
position:absolute;top:8px;
}
.topTitle {
position: absolute;
top: 0;
background: #15181a73;
height: 32px;
width: 100%;
line-height: 32px;
color: #fff;
text-align: center;
}
.bottomTitle {
position: absolute;
bottom: 0;
background: #021d39;
height: 32px;
width: 100%;
line-height: 32px;
color: #fff;
text-align: center;
}
.wrapper {
.header {
h2 {
color: #00346b;
text-align: right;
position: absolute;
top: 20px;
right: 20px;
cursor: pointer;
}
}
h1 {
text-align: center;
color: #00346b;
}
ul {
list-style: none;
width: 900px;
overflow: hidden;
}
li {
float: left;
width: 400px;
background: #173e67;
height: 170px;
line-height: 170px;
text-align: center;
color: #fff;
font-size: 28px;
font-weight: bold;
margin: 10px;
cursor: pointer;
&:nth-child(1) {
background: #135965;
}
&:nth-child(4) {
background: #135965;
}
}
}
.login {
position: relative;
display: flex;
justify-content: center;
align-items: center;
height: 100%;
background-size: cover;
}
</style>
<template>
<div class="login" :style="'background-image:url(' + Background + ');'">
<div class="topTitle" >
<div class="floating-text">
中和地信有限公司欢迎您!
<div class="topTitle" :style="'background-image:url(' + Title + ');'">
中和地信应急平台
</div>
<div class="subTopTitle">
<h2 :style="'background-image:url(' + Welcome + ');'">
<img src="@/assets/home4Index/icon5.png" />中和地信有限公司欢迎您!
</h2>
<h2 @click="navTo('admin')" style="cursor: pointer;">
<img src="@/assets/home4Index/icon6.png" />管理后台
</h2>
</div>
<div class="bottomTitle">@中和地信有限公司</div>
<div class="wrapper">
<div class="header">
<h2 @click="navTo('admin')"><i class="el-icon-setting"></i>管理后台</h2>
</div>
<div class="title">
<h1>中和地信应急平台</h1>
</div>
<div class="content">
<ul>
<li v-for="(item, index) in dataList" :key="index" @click="navTo(item.label)">
{{ item.label }}
<li
v-for="(item, index) in dataList"
:key="index"
@click="navTo(item.label)"
>
<div class="itemDiv">
<img
:src="require(`@/assets/home4Index/icon${index + 1}.png`)"
alt=""
/>
<p>
<span>{{ item.label }}</span>
<img src="@/assets/home4Index/underline2.png" />
</p>
</div>
</li>
</ul>
</div>
</div>
<div class="bottomTitle">@中和地信有限公司</div>
</div>
</template>
<script>
import qs from "qs";
import Background from "@/assets/images/background.webp";
import Background from "@/assets/home4Index/bg.png";
import Title from "@/assets/home4Index/title.png";
import Welcome from "@/assets/home4Index/underline.png";
import { mapGetters } from "vuex";
import menuApi from '@/api/system/menu.js'
import menuApi from "@/api/system/menu.js";
export default {
name: "Login",
data() {
......@@ -36,11 +52,13 @@ export default {
show: false,
userStyle: null,
Background: Background,
Welcome,
Title,
codeUrl: "",
cookiePass: "",
loading: false,
redirect: undefined,
dataList: []
dataList: [],
};
},
computed: {
......@@ -63,8 +81,6 @@ export default {
},
},
created() {
// // 按照不同域名加载不同页面样式(企业、应急局),加载完毕后再显示页面
// const host = window.location.host;
// if (host === "yingji.longxijiancai.com") {
......@@ -73,30 +89,32 @@ export default {
// if (host === "qiye.longxijiancai.com") {
// this.userStyle = "企业";
// }
menuApi.getMenusHome().then((res)=>{
this.dataList = res.body
})
menuApi.getMenusHome().then((res) => {
this.dataList = res.body;
});
},
methods: {
navTo(type) {
var host = location.protocol + "//" + window.location.host;
if (type === "admin") {
// this.$router.push({ path: "home4Center" });
this.$router.push({ path: "/user/center" });
}else if(type === "应急管理"){
} else if (type === "应急管理") {
// this.$router.push({ path: "home4Center" });
// this.$router.push({ path: "/user/center" });
location.href = 'http://192.168.3.226:8057/datav/index.html'
}else if(type === "自然资源"){
// location.href = 'http://192.168.3.226:8057/datav/index.html'
location.href = host + "/datav/index.html";
} else if (type === "自然资源") {
// location.href = process.env.NODE_ENV + ''
location.href = 'http://192.168.3.226:8057/datav/natural.html'
}else if(type === "水利系统"){
location.href = 'http://192.168.3.226:8057/datav/watersource.html'
}else if(type === "电子档案馆"){
// location.href = 'http://192.168.3.226:8057/datav/natural.html'
location.href = host + "/datav/natural.html";
} else if (type === "水利系统") {
// location.href = 'http://192.168.3.226:8057/datav/watersource.html'
location.href = host + "/datav/watersource.html";
} else if (type === "电子档案馆") {
// this.$router.push({ path: "home4Center" });
this.$router.push({ path: "/user/center" });
}
},
},
......@@ -104,40 +122,75 @@ export default {
</script>
<style rel="stylesheet/scss" lang="scss">
@keyframes floatShadow {
0% {
transform:translateX(1300px);
display:block;
transform: translateX(1300px);
display: block;
}
100% {
transform:translateX(-1300px);
display:none;
transform: translateX(-1300px);
display: none;
}
}
.floating-text {
font-size:18px;line-height:1;
color: #FDD756;text-shadow: 0 0 5px #fff;
font-size: 18px;
line-height: 1;
color: #fdd756;
text-shadow: 0 0 5px #fff;
animation: floatShadow;
animation-name:floatShadow;
animation-name: floatShadow;
animation-duration: 20s;
animation-iteration-count: infinite;
animation-timing-function:linear;
position:absolute;top:8px;
animation-timing-function: linear;
position: absolute;
top: 8px;
}
.subTopTitle {
display: -webkit-box;
display: -ms-flexbox;
display: flex;
-ms-flex-pack: distribute;
justify-content: space-between;
position: absolute;
top: 10px;
width: 100%;
/* z-index: 99999; */
height: 110px;
color: #fff;
font-size: 12px;
padding: 10px 43px;
align-items: center;
h2 {
display: inline-block;
vertical-align: middle;
letter-spacing: 2px;
font-weight: 600;
color: #fdfdfd;
&:first-child {
height: 50px;
background-repeat: no-repeat;
background-position-y: 30px;
}
}
img {
vertical-align: middle;
margin-right: 10px;
}
}
.topTitle {
position: absolute;
top: 0;
background: #15181a73;
height: 32px;
width: 100%;
line-height: 32px;
color: #fff;
text-align: center;
background-size: cover;
height: 100px;
font-size: 38px;
line-height: 100px;
font-weight: bold;
letter-spacing: 5px;
}
.bottomTitle {
position: absolute;
......@@ -166,14 +219,16 @@ export default {
}
ul {
list-style: none;
width: 900px;
// width: 1200px;
overflow: hidden;
}
li {
display: flex;
justify-content: center;
float: left;
width: 400px;
background: #173e67;
height: 170px;
width: 304px;
// background: #173e67;
height: 620px;
line-height: 170px;
text-align: center;
color: #fff;
......@@ -182,13 +237,44 @@ export default {
margin: 10px;
cursor: pointer;
&:nth-child(1) {
background: #135965;
// background: #135965;
}
&:nth-child(4) {
background: #135965;
// background: #135965;
}
&:hover {
background-image: url("../assets/home4Index/bg2.png");
}
background-image: url("../assets/home4Index/bg1.png");
background-repeat: no-repeat;
background-size: cover;
}
}
.itemDiv {
display: flex;
flex-direction: column;
justify-content: center;
align-items: center;
& > img {
width: 120px;
margin-left: 30px;
}
p {
width: 180px;
margin-top: -10px;
position: relative;
span {
font-weight: 500;
letter-spacing: 3px;
}
img {
position: absolute;
bottom: 45px;
right: 15px;
}
}
}
.login {
position: relative;
display: flex;
......
......@@ -4,16 +4,296 @@
<div class="head-container">
<div>
<el-input v-model="searchParam.nameLike" clearable size="small" placeholder="企业名称" style="width: 200px;" class="filter-item" />
<el-select v-model="searchParam.auditState" placeholder="审核状态" clearable size="small" class="filter-item">
<el-cascader
v-model="searchParam.deptId"
:options="administrativeAreaList"
:props="{ checkStrictly: true, value: 'id' }"
:show-all-levels="false"
placeholder="所属区域"
></el-cascader>
<!-- <el-select v-model="searchParam.auditState" placeholder="审核状态" clearable size="small" class="filter-item">
<el-option v-for="e in enterpriseApi.auditStates()" :key="e.key" :label="e.value" :value="e.key" />
</el-select>
</el-select> -->
<el-button class="filter-item" size="mini" type="success" icon="el-icon-search" @click="searchSubmit">搜索</el-button>
<el-button class="filter-item" size="mini" type="warning" icon="el-icon-refresh-left" @click="searchParamReset">重置</el-button>
<el-button class="filter-item" size="mini" type="warning" icon="el-icon-refresh-left" @click="add">新增</el-button>
<el-tooltip class="item" effect="dark" content="按当前查询条件导出" placement="top">
<el-button :loading="exporting" class="filter-item" size="mini" type="info" plain icon="el-icon-download" @click="exportSubmit">导出</el-button>
</el-tooltip>
</div>
</div>
<el-dialog append-to-body :close-on-click-modal="true" :visible.sync="addCompanyShow" :title="'企业信息'" width="1160px">
<el-form ref="addCompanyForm" :model="mainDataEditing" :rules="mainFormRules" size="mini" label-width="170px" style="margin-right: 100px;">
<el-row :gutter="10">
<el-divider content-position="center">基础信息</el-divider>
<el-col :span="12">
<el-form-item label="企业名称:" prop="name">
<el-input v-model="mainDataEditing.name"/>
</el-form-item>
</el-col>
<el-col :span="12">
<el-form-item label="公司地址:" prop="address">
<el-input v-model="mainDataEditing.address" maxlength="500" show-word-limit />
</el-form-item>
</el-col>
</el-row>
<el-row :gutter="100">
<el-col :span="12">
<el-form-item label="所属区域:" prop="_administrativeAreaCascade">
<!-- <el-cascader v-model="mainDataEditing._administrativeAreaCascade" style="width: 100%;" :options="administrativeAreaList" clearable /> -->
<el-cascader
v-model="mainDataEditing._administrativeAreaCascade"
:options="administrativeAreaList"
:props="{ checkStrictly: true, value: 'id' }"
:show-all-levels="false"
></el-cascader>
</el-form-item>
</el-col>
<el-col :span="12">
<el-form-item label="所属集团:" prop="">
<!-- <el-select v-model="mainDataEditing.dict41" placeholder="请选择" style="width: 100%;">
<el-option v-for="item in dict41List" :key="item.id" :label="item.value" :value="item.id" />
</el-select> -->
<el-select
v-model="mainDataEditing.pid"
placeholder="请输入企业"
clearable
>
<el-option
v-for="item in options4enterpriseIdList"
:key="item.id"
:label="item.name"
:value="item.id"
></el-option>
</el-select>
</el-form-item>
</el-col>
</el-row>
<el-row :gutter="100">
<el-col :span="12">
<el-form-item label="单位性质:" prop="dict1">
<el-select v-model="mainDataEditing.dict1" placeholder="请选择" style="width: 100%;">
<el-option v-for="item in dict1List" :key="item.id" :label="item.value" :value="item.id" />
</el-select>
</el-form-item>
</el-col>
<el-col :span="12">
<el-form-item label="经济类型:" prop="dict2">
<el-select v-model="mainDataEditing.dict2" placeholder="请选择" style="width: 100%;">
<el-option v-for="item in dict2List" :key="item.id" :label="item.value" :value="item.id" />
</el-select>
</el-form-item>
</el-col>
</el-row>
<el-row :gutter="100">
<el-col :span="12">
<el-form-item label="行业类别:" prop="dict3">
<el-select v-model="mainDataEditing.dict3" placeholder="请选择" style="width: 100%;">
<el-option v-for="item in dict3List" :key="item.id" :label="item.value" :value="item.id" />
</el-select>
</el-form-item>
</el-col>
<el-col :span="12">
<el-form-item label="统一社会信用代码:" prop="idCode">
<el-input v-model="mainDataEditing.idCode" maxlength="100" show-word-limit />
</el-form-item>
</el-col>
</el-row>
<el-row :gutter="100">
<el-col :span="12">
<el-form-item label="是否有注册资本:" prop="hasRegisteredCapital">
<el-radio-group v-model="mainDataEditing.hasRegisteredCapital" size="mini">
<el-radio-button :label="true"></el-radio-button>
<el-radio-button :label="false"></el-radio-button>
</el-radio-group>
</el-form-item>
</el-col>
<el-col :span="12">
<el-form-item v-if="mainDataEditing.hasRegisteredCapital" label="注册资本(万元):" prop="registeredCapital">
<el-input-number v-model="mainDataEditing.registeredCapital" :precision="2" :controls="false" style="width: 100%;" :min="0" :max="999999" />
</el-form-item>
</el-col>
</el-row>
<el-row :gutter="100">
<el-col :span="18">
<el-form-item label="经营范围:" prop="businessScope">
<el-input v-model="mainDataEditing.businessScope" type="textarea" :rows="3" maxlength="1000" show-word-limit />
</el-form-item>
</el-col>
</el-row>
<el-divider content-position="center">企业资质</el-divider>
<el-row :gutter="100">
<el-col :span="12">
<el-form-item label="成立日期:" prop="setupDate">
<el-date-picker v-model="mainDataEditing.setupDate" value-format="yyyy-MM-dd" type="date" placeholder="选择日期" style="width: 100%;" />
</el-form-item>
</el-col>
</el-row>
<el-row :gutter="100">
<el-col :span="12">
<el-form-item label="经营期限(起):" prop="beginLimitDate">
<el-date-picker v-model="mainDataEditing.beginLimitDate" value-format="yyyy-MM-dd" type="date" placeholder="选择日期" style="width: 100%;" />
</el-form-item>
</el-col>
<el-col :span="12">
<el-form-item label="经营期限(止):" prop="endLimitDate">
<el-date-picker v-model="mainDataEditing.endLimitDate" value-format="yyyy-MM-dd" type="date" placeholder="选择日期" style="width: 100%;" />
</el-form-item>
</el-col>
</el-row>
<el-row :gutter="100">
<el-col :span="12">
<el-form-item label="生产经营方式:" prop="dict4">
<el-select v-model="mainDataEditing.dict4" placeholder="请选择" style="width: 100%;">
<el-option v-for="item in dict4List" :key="item.id" :label="item.value" :value="item.id" />
</el-select>
</el-form-item>
</el-col>
</el-row>
<el-row :gutter="100">
<el-col :span="12">
<el-form-item label="企业规模:" prop="dict5">
<el-select v-model="mainDataEditing.dict5" placeholder="请选择" style="width: 100%;">
<el-option v-for="item in dict5List" :key="item.id" :label="item.value" :value="item.id" />
</el-select>
</el-form-item>
</el-col>
<el-col :span="12">
<el-form-item label="是否规模以上企业:" prop="dict6">
<el-select v-model="mainDataEditing.dict6" placeholder="请选择" style="width: 100%;">
<el-option v-for="item in dict6List" :key="item.id" :label="item.value" :value="item.id" />
</el-select>
</el-form-item>
</el-col>
</el-row>
<el-row :gutter="100">
<el-col :span="12">
<el-form-item label="隶属层级:" prop="dict7">
<el-select v-model="mainDataEditing.dict7" placeholder="请选择" style="width: 100%;">
<el-option v-for="item in dict7List" :key="item.id" :label="item.value" :value="item.id" />
</el-select>
</el-form-item>
</el-col>
</el-row>
<el-row :gutter="100">
<el-col :span="12">
<el-form-item label="责任人:" prop="liablePerson">
<el-input v-model="mainDataEditing.liablePerson" maxlength="30" show-word-limit />
</el-form-item>
</el-col>
<el-col :span="12">
<el-form-item label="责任人电话:" prop="liablePersonPhone">
<el-input v-model="mainDataEditing.liablePersonPhone" />
</el-form-item>
</el-col>
</el-row>
<el-row :gutter="100">
<el-col :span="12">
<el-form-item label="生产经营地址:" prop="businessAddress">
<el-input v-model="mainDataEditing.businessAddress" maxlength="500" show-word-limit />
</el-form-item>
</el-col>
</el-row>
<el-divider content-position="center">证书</el-divider>
<el-row :gutter="100">
<el-col :span="12">
<el-form-item label="采矿许可证:" prop="_workLicenseFileList">
<el-upload
class="upload-demo"
:action="`${baseApi}/api/file/upload`"
multiple
:headers="httpHeaders"
:limit="1"
:on-success="upFileSuccessWork"
:on-remove="upFileRemoveWork"
:on-error="upFileError"
:on-exceed="upFileExceed"
:before-upload="upFileBefore"
:on-preview="openFile"
:file-list="mainDataEditing._workLicenseFileListShow"
>
<el-button size="small" type="primary">点击上传</el-button>
<div slot="tip" class="el-upload__tip">图片不要超过20M,仅支持jpeg、png格式</div>
</el-upload>
</el-form-item>
</el-col>
<el-col :span="12">
<div>
<el-form-item label="采矿许可有效期:" prop="workLicenseBeginDate">
<el-date-picker v-model="mainDataEditing.workLicenseBeginDate" value-format="yyyy-MM-dd" type="date" placeholder="选择日期" style="width: 100%;" />
</el-form-item>
</div>
<div>
<el-form-item label="至:" prop="workLicenseEndDate">
<el-date-picker v-model="mainDataEditing.workLicenseEndDate" value-format="yyyy-MM-dd" type="date" placeholder="选择日期" style="width: 100%;" />
</el-form-item>
</div>
</el-col>
</el-row>
<el-row :gutter="100">
<el-col :span="12">
<el-form-item label="安全生产许可证:" prop="_safetyLicenseFileList">
<el-upload
class="upload-demo"
:action="`${baseApi}/api/file/upload`"
multiple
:headers="httpHeaders"
:limit="1"
:on-success="upFileSuccessSafety"
:on-remove="upFileRemoveSafety"
:on-error="upFileError"
:on-exceed="upFileExceed"
:before-upload="upFileBefore"
:on-preview="openFile"
:file-list="mainDataEditing._safetyLicenseFileListShow"
>
<el-button size="small" type="primary">点击上传</el-button>
<div slot="tip" class="el-upload__tip">图片不要超过20M,仅支持jpeg、png格式</div>
</el-upload>
</el-form-item>
</el-col>
<el-col :span="12">
<div>
<el-form-item label="安全许可有效期:" prop="safetyLicenseBeginDate">
<el-date-picker v-model="mainDataEditing.safetyLicenseBeginDate" value-format="yyyy-MM-dd" type="date" placeholder="选择日期" style="width: 100%;" />
</el-form-item>
</div>
<div>
<el-form-item label="至:" prop="safetyLicenseEndDate">
<el-date-picker v-model="mainDataEditing.safetyLicenseEndDate" value-format="yyyy-MM-dd" type="date" placeholder="选择日期" style="width: 100%;" />
</el-form-item>
</div>
</el-col>
</el-row>
<el-divider content-position="center">位置</el-divider>
<el-row :gutter="100">
<el-col :span="12">
<el-form-item label="经度:" prop="longitude">
<el-input-number v-model="mainDataEditing.longitude" :precision="6" :controls="false" style="width: 100%;" />
</el-form-item>
</el-col>
<el-col :span="12">
<el-form-item label="纬度:" prop="latitude">
<el-input-number v-model="mainDataEditing.latitude" :precision="6" :controls="false" style="width: 100%;" />
</el-form-item>
</el-col>
</el-row>
<el-row :gutter="100">
<el-col :span="18">
<el-form-item label="位置地图:">
<AMapSearchPointAdd :is-search="true" :point="mapPoint4add" @choosePoint="choosePoint" />
</el-form-item>
</el-col>
</el-row>
</el-form>
<div slot="footer" class="dialog-footer">
<el-button type="text" @click="addCompanyShow=false">取消</el-button>
<el-button type="primary" @click="confirmAdd">确认</el-button>
</div>
</el-dialog>
<!--企业信息窗-->
<el-dialog append-to-body :close-on-click-modal="true" :visible.sync="dialog1Show" :title="'企业信息'" width="1160px">
<el-form ref="mainForm" :model="dialog1Data" size="mini" label-width="170px">
......@@ -25,20 +305,20 @@
</el-form-item>
</el-col>
<el-col :span="12">
<el-form-item label="统一社会信用代码:" prop="idCode">
<span>{{ dialog1Data.idCode }}</span>
<el-form-item label="公司地址:" prop="address">
<span>{{ dialog1Data.address }}</span>
</el-form-item>
</el-col>
</el-row>
<el-row :gutter="20">
<el-col :span="12">
<el-form-item label="行政区域:" prop="administrativeAreaCode">
<span>{{ dialog1Data.administrativeAreaName }}</span>
<el-form-item label="所属区域:">
<span>{{ dialog1Data.deptName }}</span>
</el-form-item>
</el-col>
<el-col :span="12">
<el-form-item label="公司地址:" prop="address">
<span>{{ dialog1Data.address }}</span>
<el-form-item label="所属集团:">
<span>{{ dialog1Data.pName }}</span>
</el-form-item>
</el-col>
</el-row>
......@@ -147,6 +427,11 @@
<span>{{ dialog1Data.businessAddress }}</span>
</el-form-item>
</el-col>
<el-col :span="12">
<el-form-item label="统一社会信用代码:" prop="idCode">
<span>{{ dialog1Data.idCode }}</span>
</el-form-item>
</el-col>
</el-row>
<el-divider content-position="left">证书</el-divider>
<el-row :gutter="20">
......@@ -230,6 +515,8 @@
<!-- <el-table-column type="selection" width="55" /> -->
<el-table-column :show-overflow-tooltip="true" label="编号" prop="id" width="100px" align="center" />
<el-table-column :show-overflow-tooltip="true" label="企业名称" prop="name" align="center" />
<el-table-column :show-overflow-tooltip="true" label="所属区域" prop="deptName" align="center" />
<!-- <el-table-column :show-overflow-tooltip="true" label="审核状态" prop="auditState" align="center">
<template slot-scope="scope">
<span v-for="e in enterpriseApi.auditStates()" :key="e.key">
......@@ -258,7 +545,9 @@
</el-table-column>
<el-table-column label="操作" width="200px" align="center" fixed="right">
<template slot-scope="scope">
<el-button v-show="scope.row.auditState!=1" size="mini" round @click="showEnterpriseInfo(scope.row.id)">查看详情</el-button>
<el-button size="mini" round @click="showEnterpriseInfo(scope.row.id)">查看详情</el-button>
<el-button size="mini" round @click="editEnterpriseInfo(scope.row)">修改</el-button>
<!-- <el-button v-show="scope.row.auditState==1" size="mini" round @click="auditBtn(scope.row, 2)">通过</el-button>
<el-button v-show="scope.row.auditState==1" size="mini" round @click="auditBtn(scope.row, 3)">不通过</el-button> -->
</template>
......@@ -279,24 +568,98 @@
<script>
import enterpriseApi from '@/api/kd/enterprise'
import dictionaryApi from '@/api/kd/dictionary'
import AMapSearchPoint from '@/components/AMap/AMapSearchPoint'
import AMapSearchPointAdd from '@/components/AMap/AMapSearchPointAdd'
import { getDeptList } from '@/api/system/dept'
import {getCompanyList} from '@/api/system/user'
import request from '@/utils/request'
import administrativeAreaApi from '@/api/kd/administrativeArea'
import { mapGetters } from 'vuex'
import { downloadFile } from '@/utils'
import { getToken } from '@/utils/auth'
import { validatePhone } from '@/utils/validate'
const searchParam = {// 默认搜索条件
page: 1,
count: 10,
searchCount: true
searchCount: true,
nameLike: '',
auditState: '',
deptId: ''
}
export default {
name: 'CEnterprise', // 本页面名
components: { AMapSearchPoint },
components: { AMapSearchPoint, AMapSearchPointAdd },
data() {
return {
/**
* 新增字段
*/
httpHeaders: {
'Authorization': getToken()
},
addCompanyShow: false,
mainDataEditing: {},
dict1List: [],
dict2List: [],
dict3List: [],
dict4List: [],
dict5List: [],
dict6List: [],
dict7List: [],
dict41List: [], // 企业类型
administrativeAreaList: [],
options4enterpriseIdList: [],
dialog1FormRules: {
code: [{ required: true, message: '请输入' }]
},
mainFormRules: {
name: [{ required: true, message: '请输入' }],
idCode: [{ required: true, message: '请输入' }],
_administrativeAreaCascade: [{ required: true, message: '请选择' }],
address: [{ required: true, message: '请输入' }],
dict1: [{ required: true, message: '请选择' }],
dict2: [{ required: true, message: '请选择' }],
dict3: [{ required: true, message: '请选择' }],
hasRegisteredCapital: [{ required: true, message: '请选择' }],
registeredCapital: [{ required: true, message: '请输入' }],
businessScope: [{ required: true, message: '请输入' }],
setupDate: [{ required: true, message: '请选择' }],
beginLimitDate: [{ required: true, message: '请选择' }],
endLimitDate: [{ required: true, message: '请选择' }],
dict4: [{ required: true, message: '请选择' }],
dict5: [{ required: true, message: '请选择' }],
dict6: [{ required: true, message: '请选择' }],
dict7: [{ required: true, message: '请选择' }],
dict41: [{ required: true, message: '请选择' }],
liablePerson: [{ required: true, message: '请输入' }],
liablePersonPhone: [{ required: true, trigger: 'blur', validator: validatePhone }],
businessAddress: [{ required: true, message: '请输入' }],
longitude: [{ required: true, message: '请选择位置' }],
latitude: [{ required: true, message: '请选择位置' }],
_workLicenseFileList: [{ required: true, message: '请选择' }],
workLicenseBeginDate: [{ required: true, message: '请选择' }],
workLicenseEndDate: [{ required: true, message: '请选择' }],
_safetyLicenseFileList: [{ required: true, message: '请选择' }],
safetyLicenseBeginDate: [{ required: true, message: '请选择' }],
safetyLicenseEndDate: [{ required: true, message: '请选择' }]
},
searching: false,
exporting: false,
enterpriseApi: enterpriseApi,
searchParam: {},
searchParam: {
nameLike: '',
auditState: '',
deptId: ''
},
searchResult: {
total: 0,
results: [] // 搜索结果
......@@ -321,19 +684,215 @@ export default {
return [this.dialog1Data.longitude * 1, this.dialog1Data.latitude * 1]
}
return null
},
mapPoint4add() {
if (this.mainDataEditing.longitude && this.mainDataEditing.latitude) {
return [this.mainDataEditing.longitude * 1, this.mainDataEditing.latitude * 1]
}
return null
}
},
mounted() {
// administrativeAreaApi.cascadeElementUI().then(response => {
// this.administrativeAreaList = response.results
// })
getDeptList({
}).then((res) => {
this.administrativeAreaList = res.body.content;
});
getCompanyList({
// deptId
})
.then((res) => {
this.options4enterpriseIdList = res.body;
});
const dictGroups = [1, 2, 3, 4, 5, 6, 7]
dictGroups.forEach(i => {
dictionaryApi.getList({ 'groupCode': i }).then(response => {
this['dict' + i + 'List'] = response.results
})
})
this.searchParamReset()
this.searchSubmit()
},
methods: {
/**
* 企业新增
*/
confirmAdd(){
this.$refs.addCompanyForm.validate((valid) => {
if (valid) {
if (this.mainDataEditing.beginLimitDate >= this.mainDataEditing.endLimitDate) {
this.$message.error('经营期限(起)应小于经营期限(止)')
} else if (this.mainDataEditing.workLicenseBeginDate >= this.mainDataEditing.workLicenseEndDate) {
this.$message.error('采矿许可有效期(起)应小于采矿许可有效期(止)')
} else if (this.mainDataEditing.safetyLicenseBeginDate >= this.mainDataEditing.safetyLicenseEndDate) {
this.$message.error('安全许可有效期(起)应小于安全许可有效期(止)')
}else{
this.addCompanyLoading = true
this.mainDataEditing.deptId = this.mainDataEditing._administrativeAreaCascade[this.mainDataEditing._administrativeAreaCascade.length - 1]
delete this.mainDataEditing._administrativeAreaCascade
if (this.mainDataEditing._workLicenseFileList) {
this.mainDataEditing.workLicenseFilePath = JSON.stringify(this.mainDataEditing._workLicenseFileList)
}
if (this.mainDataEditing._safetyLicenseFileList) {
this.mainDataEditing.safetyLicenseFilePath = JSON.stringify(this.mainDataEditing._safetyLicenseFileList)
}
if(this.mainDataEditing.id){
let enterprise = JSON.parse(JSON.stringify(this.mainDataEditing))
enterprise.name = null
enterprise.createDatetime = null
enterprise.createBy = null
enterprise.updateDatetime = null
enterprise.updateBy = null
enterprise.hasEnable = null
enterprise.applyDatetime = null
enterprise.auditState = null
enterprise.auditDatetime = null
enterprise.auditBy = null
request({
url: 'api/enterprise/set-my',
method: 'post',
data: enterprise
}).then(() => {
this.addCompanyLoading = false
this.addCompanyShow = false
this.$message({
message: '操作完成',
type: 'success'
})
this.searchSubmit()
}).catch(() => {
this.addCompanyLoading = false
this.addCompanyShow = false
})
}else{
request({
url: 'api/enterprise/add/enterpriseList',
method: 'post',
data: this.mainDataEditing
}).then(() => {
this.addCompanyLoading = false
this.addCompanyShow = false
this.$message({
message: '操作完成',
type: 'success'
})
this.searchSubmit()
}).catch(() => {
this.addCompanyLoading = false
this.addCompanyShow = false
})
}
}
}else{
this.$message({
message: '填写不满足要求,请检查',
type: 'error'
})
}
});
},
add(){
this.mainDataEditing = {}
// this.mainDataEditing.id = null
this.addCompanyShow = true
},
elementuiUpListFormat(fileList) {
const filePathArray = []
fileList.forEach(f => {
if (f.response && f.response.result) {
filePathArray.push({
name: f.name,
url: f.response.result
})
} else if (f.name && f.url) {
filePathArray.push({
name: f.name,
url: f.url
})
}
})
return filePathArray
},
upFileSuccessWork(response, file, fileList) {
if (!this.mainDataEditing._workLicenseFileList) {
this.mainDataEditing._workLicenseFileList = []
}
this.mainDataEditing._workLicenseFileList.push({
name: file.name,
url: response.result
})
this.$set(this.mainDataEditing, '_workLicenseFileList', this.mainDataEditing._workLicenseFileList)
},
upFileRemoveWork(file, fileList) {
this.mainDataEditing._workLicenseFileList = this.elementuiUpListFormat(fileList)
},
upFileSuccessSafety(response, file, fileList) {
if (!this.mainDataEditing._safetyLicenseFileList) {
this.mainDataEditing._safetyLicenseFileList = []
}
this.mainDataEditing._safetyLicenseFileList.push({
name: file.name,
url: response.result
})
this.$set(this.mainDataEditing, '_safetyLicenseFileList', this.mainDataEditing._safetyLicenseFileList)
},
upFileRemoveSafety(file, fileList) {
this.mainDataEditing._safetyLicenseFileList = this.elementuiUpListFormat(fileList)
},
upFileError() {
this.$message.error('上传失败,请稍后再试')
},
upFileExceed() {
this.$message.error('只可以上传一张照片')
},
upFileBefore(file) {
const isIMG = file.type === 'image/jpeg' || file.type === 'image/png'
const isLtSize = file.size / 1024 / 1024 < 20
if (!isIMG) {
this.$message.error('上传图片只能是 JPG/JPEG/PNG 格式')
return false
}
if (!isLtSize) {
this.$message.error('上传图片大小不能超过 20MB')
return false
}
return true
},
openFile(file) {
if (file.url) {
window.open(this.baseApi + '/file' + file.url)
} else if (file.response && file.response.result) {
window.open(this.baseApi + '/file' + file.response.result)
}
},
choosePoint(lnglat) {
console.log(lnglat)
if (lnglat) {
this.$set(this.mainDataEditing, 'longitude', lnglat[0])
this.$set(this.mainDataEditing, 'latitude', lnglat[1])
} else {
this.$set(this.mainDataEditing, 'longitude', null)
this.$set(this.mainDataEditing, 'latitude', null)
}
},
searchParamReset() {
this.searchParam = JSON.parse(JSON.stringify(searchParam))
},
searchSubmit() {
this.searching = true
enterpriseApi.getPage(this.searchParam).then(response => {
let deptId = this.searchParam.deptId[this.searchParam.deptId.length -1 ]
enterpriseApi.getPage({
...this.searchParam,
deptId
}).then(response => {
this.searchResult = response
this.searching = false
}).catch(() => {
......@@ -357,6 +916,19 @@ export default {
dialog2Submit() {
this.doAudit(this.dialog2Data)
},
editEnterpriseInfo(row){
this.addCompanyShow = true
this.mainDataEditing = row
if (this.mainDataEditing.workLicenseFilePath) {
this.mainDataEditing._workLicenseFileList = JSON.parse(this.mainDataEditing.workLicenseFilePath)
this.mainDataEditing._workLicenseFileListShow = JSON.parse(this.mainDataEditing.workLicenseFilePath) // 数据存放与原始绑定分开,可以防止中途赋值产生的闪烁问题
}
if (this.mainDataEditing.safetyLicenseFilePath) {
this.mainDataEditing._safetyLicenseFileList = JSON.parse(this.mainDataEditing.safetyLicenseFilePath)
this.mainDataEditing._safetyLicenseFileListShow = JSON.parse(this.mainDataEditing.safetyLicenseFilePath) // 数据存放与原始绑定分开,可以防止中途赋值产生的闪烁问题
}
this.mainDataEditing._administrativeAreaCascade = [row.deptId]
},
showEnterpriseInfo(enterpriseId) {
enterpriseApi.getById(enterpriseId).then(response => {
this.dialog1Data = response
......
......@@ -206,7 +206,7 @@
<el-upload
v-show="editing"
class="upload-demo"
action="/api/file/upload"
:action="`${baseApi}/api/file/upload`"
multiple
:headers="httpHeaders"
:limit="1"
......@@ -247,7 +247,7 @@
<el-upload
v-show="editing"
class="upload-demo"
action="/api/file/upload"
:action="`${baseApi}/api/file/upload`"
multiple
:headers="httpHeaders"
:limit="1"
......
......@@ -4,6 +4,8 @@
<div class="head-container">
<div>
<el-input v-model="searchParam.nameLike" clearable size="small" placeholder="测点名称" style="width: 200px;" class="filter-item" />
<el-input v-model="searchParam.enterpriseName" clearable size="small" placeholder="所属企业" style="width: 200px;" class="filter-item" />
<el-input v-model="searchParam.mineName" clearable size="small" placeholder="所属矿山" style="width: 200px;" class="filter-item" />
<el-button class="filter-item" size="mini" type="success" icon="el-icon-search" @click="searchSubmit">搜索</el-button>
<el-button class="filter-item" size="mini" type="warning" icon="el-icon-refresh-left" @click="searchParamReset">重置</el-button>
<el-tooltip class="item" effect="dark" content="按当前查询条件导出" placement="top">
......@@ -28,6 +30,34 @@
<!--弹出框1-->
<el-dialog append-to-body :close-on-click-modal="true" :visible.sync="dialog1Show" :title="editState==1?'新增':editState==2?'修改':'查看'" width="960px">
<el-form ref="dialog1Form" :hide-required-asterisk="!dialog1Editing" :model="dialog1Data" :rules="dialog1Rules" size="mini" label-width="180px" style="margin-right: 80px;">
<el-row :gutter="20">
<el-col :span="12">
<el-form-item label="所属企业:" prop="enterpriseId">
<span v-show="!dialog1Editing">{{ dialog1Data.enterpriseName }}</span>
<el-select
v-model="dialog1Data.enterpriseId"
placeholder="请选择"
@change="enterpriseChange"
>
<el-option
v-for="item in options4enterpriseIdList"
:key="item.id"
:label="item.name"
:value="item.id"
></el-option>
</el-select>
</el-form-item>
</el-col>
<el-col :span="12">
<el-form-item label="所属矿山" prop="mineId">
<span v-show="!dialog1Editing">{{ dialog1Data.mineName }}</span>
<el-select v-model="dialog1Data.mineId" placeholder="请选择" clearable size="small" class="filter-item" style="width: 200px;">
<el-option v-for="mine in mineList" :key="mine.index" :label="mine.name" :value="mine.index" />
</el-select>
</el-form-item>
</el-col>
</el-row>
<el-row :gutter="20">
<el-col :span="12">
<el-form-item label="测点编号:" prop="code">
......@@ -227,6 +257,9 @@
<el-table ref="table" v-loading="searching" :data="tableData" row-key="id">
<el-table-column :show-overflow-tooltip="true" prop="id" label="编号" width="100px" align="center" />
<el-table-column :show-overflow-tooltip="true" prop="code" label="测点编号" align="center" />
<el-table-column :show-overflow-tooltip="true" prop="enterpriseName" label="所属企业" align="center" />
<el-table-column :show-overflow-tooltip="true" prop="mineName" label="所属矿山" align="center" />
<el-table-column :show-overflow-tooltip="true" prop="name" label="测点名称" align="center" />
<el-table-column :show-overflow-tooltip="true" prop="monitoringType" label="测点类型" align="center">
<template slot-scope="scope">
......@@ -265,6 +298,9 @@
<script>
import iotEnvironmentMachineApi from '@/api/kd/iotEnvironmentMachine'
import AMapSearchPoint from '@/components/AMap/AMapSearchPoint'
import mineApi from '@/api/kd/mine'
import {getCompanyList} from '@/api/system/user'
import { getToken } from '@/utils/auth'
import { mapGetters } from 'vuex'
import { downloadFile } from '@/utils'
......@@ -272,13 +308,18 @@ import { downloadFile } from '@/utils'
const searchParam = {// 默认搜索条件
page: 1,
count: 10,
searchCount: true
searchCount: true,
mineName: '',
enterpriseName: ''
}
export default {
name: 'EIotEnvironmentMachine', // 本页面名
components: { AMapSearchPoint },
data() {
return {
options4enterpriseIdList: [],
mineList: [],
selectedMine: {},
httpHeaders: {
'Authorization': getToken()
......@@ -296,6 +337,8 @@ export default {
dialog1Saving: false,
dialog1Data: {},
dialog1Rules: {
enterpriseId: [{ required: true, message: '请选择' }],
mineId: [{ required: true, message: '请选择' }],
code: [{ required: true, message: '请填写' }],
name: [{ required: true, message: '请填写' }],
monitoringPointDataType: [{ required: true, message: '请选择' }]
......@@ -326,26 +369,45 @@ export default {
}
},
mounted() {
const selectedMineJson = window.localStorage.getItem('kd.selected.mine')
let noMine = false
if (!selectedMineJson) {
noMine = true
} else {
const selectedMine = JSON.parse(selectedMineJson)
if (!selectedMine || selectedMine.enterpriseId !== this.user.enterpriseId) {
noMine = true
} else {
this.selectedMine = selectedMine
}
}
// const selectedMineJson = window.localStorage.getItem('kd.selected.mine')
// let noMine = false
// if (!selectedMineJson) {
// noMine = true
// } else {
// const selectedMine = JSON.parse(selectedMineJson)
// if (!selectedMine || selectedMine.enterpriseId !== this.user.enterpriseId) {
// noMine = true
// } else {
// this.selectedMine = selectedMine
// }
// }
// if (noMine) {
// this.$message.error('当前未选择矿山')
// this.$router.replace('/dashboard')
// }
this.searchParamReset()
this.searchSubmit()
// 获取企业公司
getCompanyList({})
.then((res) => {
this.options4enterpriseIdList = res.body;
});
},
methods: {
enterpriseChange(value){
// 矿山选项卡
this.getAllMineByEnterpriseId(value)
},
getAllMineByEnterpriseId(enterpriseId){
mineApi.getAllMineByEnterpriseId({
enterpriseId
}).then(response => {
let i = 1
response.body.forEach(x => { x.index = i++ })
this.mineList = response.body
})
},
searchParamReset() {
this.searchParam = JSON.parse(JSON.stringify(searchParam))
},
......@@ -383,9 +445,10 @@ export default {
} else {
this.dialog1Saving = true
this.removeOtherMonitoringPoint(this.dialog1Data)
this.dialog1Data.mineType = '1' // 地下矿山
if (this.editState === 1) { // 新增
this.dialog1Data.mineType = this.selectedMine.mineType
this.dialog1Data.mineId = this.selectedMine.id
// this.dialog1Data.mineType = this.selectedMine.mineType
// this.dialog1Data.mineId = this.selectedMine.id
iotEnvironmentMachineApi.add(this.dialog1Data).then(() => {
this.dialog1Show = false
this.$message.success('保存成功')
......@@ -440,6 +503,7 @@ export default {
this.dialog1Show = true
this.$nextTick(() => {
this.$refs['dialog1Form'].clearValidate()
this.getAllMineByEnterpriseId(this.dialog1Data.enterpriseId)
})
}).catch(() => {
this.searchSubmit()
......@@ -447,6 +511,7 @@ export default {
},
dialog2Submit() {
this.dialog2Saving = true
iotEnvironmentMachineApi.del(this.dialog2Data).then(() => {
this.dialog2Show = false
this.$message.success('删除成功')
......
......@@ -5,6 +5,7 @@
<div>
<el-input v-model="searchParam.code" clearable size="small" placeholder="矿山编号" style="width: 200px;" class="filter-item" />
<el-input v-model="searchParam.nameLike" clearable size="small" placeholder="矿山名称" style="width: 200px;" class="filter-item" />
<el-input v-model="searchParam.enterpriseName" clearable size="small" placeholder="所属企业" style="width: 200px;" class="filter-item" />
<el-button class="filter-item" size="mini" type="success" icon="el-icon-search" @click="searchSubmit">搜索</el-button>
<el-button class="filter-item" size="mini" type="warning" icon="el-icon-refresh-left" @click="searchParamReset">重置</el-button>
</div>
......@@ -30,9 +31,20 @@
</el-row>
<el-row :gutter="20">
<el-col :span="12">
<el-form-item label="所属行政区划:" prop="_administrativeAreaCascade">
<!-- <el-form-item label="所属行政区划:" prop="_administrativeAreaCascade">
<span v-show="!editing">{{ dialog1Data.administrativeAreaName }}</span>
<el-cascader v-show="editing" v-model="dialog1Data._administrativeAreaCascade" style="width: 100%;" :options="administrativeAreaList" clearable />
</el-form-item> -->
<el-form-item label="所属企业:" prop="enterpriseId">
<span v-show="!editing">{{ dialog1Data.enterpriseName }}</span>
<el-select v-show="editing" size="mini" v-model="dialog1Data.enterpriseId" placeholder="" @change="handleChange">
<el-option
v-for="item in companyList"
:key="item.id"
:label="item.name"
:value="item.id"
></el-option>
</el-select>
</el-form-item>
</el-col>
<el-col :span="12">
......@@ -386,7 +398,10 @@
<el-table ref="table" v-loading="searching" :data="tableData" row-key="id">
<!-- <el-table-column type="selection" width="55" /> -->
<el-table-column :show-overflow-tooltip="true" label="编号" prop="id" width="100px" align="center" />
<el-table-column :show-overflow-tooltip="true" label="矿山名称" prop="name" align="center" />
<el-table-column :show-overflow-tooltip="true" label="所属企业" prop="enterpriseName" align="center" />
<el-table-column :show-overflow-tooltip="true" label="矿山编号" prop="code" align="center" />
<el-table-column :show-overflow-tooltip="true" label="矿山地址" prop="address" align="center" />
<el-table-column :show-overflow-tooltip="true" label="建矿时间" prop="buildDate" align="center" />
......@@ -429,16 +444,19 @@ import AMapSearchPoint from '@/components/AMap/AMapSearchPoint'
import { getToken } from '@/utils/auth'
import { mapGetters } from 'vuex'
import { validatePhone } from '@/utils/validate'
import {getCompanyList} from '@/api/system/user'
const searchParam = {// 默认搜索条件
page: 1,
count: 10,
searchCount: true
searchCount: true,
enterpriseName:''
}
export default {
name: 'EUnderground', // 本页面名
components: { AMapSearchPoint },
data() {
return {
companyList: [],
httpHeaders: {
'Authorization': getToken()
},
......@@ -502,8 +520,16 @@ export default {
})
this.searchParamReset()
this.searchSubmit()
this.getCompanyList()
},
methods: {
getCompanyList(){
getCompanyList({})
.then((res) => {
this.companyList = res.body;
});
},
searchParamReset() {
this.searchParam = JSON.parse(JSON.stringify(searchParam))
},
......
......@@ -146,7 +146,7 @@ export default {
mixins: [presenter(), header(), form(defaultForm), crud()],
data() {
return {
dateScopes: ["本级", "全部"],
dateScopes: ["全部", "本级及以下", "自定义",],
defaultProps: { children: 'children', label: 'label', isLeaf: 'leaf' },
level: 3,
currentId: 0, currentName: '', menuLoading: false, showButton: false,
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment