Commit 55b10c5e authored by zhangjianqian's avatar zhangjianqian

Merge remote-tracking branch 'origin/master'

parents f9d08cac 859bfd69
...@@ -84,7 +84,7 @@ public class TWorkOrderController extends BaseController ...@@ -84,7 +84,7 @@ public class TWorkOrderController extends BaseController
List<Integer> postIds = iSysPostService.selectPostListByUserId(user.getUserId()); List<Integer> postIds = iSysPostService.selectPostListByUserId(user.getUserId());
for(Integer postId : postIds){ for(Integer postId : postIds){
SysPost postInfo = iSysPostService.selectPostById(postId.longValue()); SysPost postInfo = iSysPostService.selectPostById(postId.longValue());
if("se".equals(postInfo.getPostCode())){ if("se".equals(postInfo.getPostCode()) && postIds.size()==1){
tWorkOrder.setWorkAssignManId(user.getUserId()); tWorkOrder.setWorkAssignManId(user.getUserId());
} }
} }
......
...@@ -43,6 +43,7 @@ PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" ...@@ -43,6 +43,7 @@ PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN"
<if test="licenseValidityTime != null and licenseValidityTime != ''"> and license_validity_time = #{licenseValidityTime}</if> <if test="licenseValidityTime != null and licenseValidityTime != ''"> and license_validity_time = #{licenseValidityTime}</if>
<if test="annualSupervisionInspection != null and annualSupervisionInspection != ''"> and annual_supervision_inspection = #{annualSupervisionInspection}</if> <if test="annualSupervisionInspection != null and annualSupervisionInspection != ''"> and annual_supervision_inspection = #{annualSupervisionInspection}</if>
<if test="remarks != null and remarks != ''"> and remarks = #{remarks}</if> <if test="remarks != null and remarks != ''"> and remarks = #{remarks}</if>
<if test="enterpriseId != null and enterpriseId != ''"> and enterprise_id = #{enterpriseId}</if>
</where> </where>
group by enterprise_id desc group by enterprise_id desc
</select> </select>
......
<svg width="18" height="25" viewBox="0 0 22 32" fill="none" xmlns="http://www.w3.org/2000/svg">
<path d="M16.7 31.3658H5.30019C4.62592 31.3658 4.09277 30.817 4.09277 30.1584V28.559C4.09277 27.8847 4.6416 27.3516 5.30019 27.3516H16.7157C17.39 27.3516 17.9231 27.9004 17.9231 28.559V30.1584C17.9231 30.817 17.3743 31.3658 16.7 31.3658V31.3658Z" fill="#006AA6"/>
<path d="M5.66113 28.9141H16.3397V29.7765H5.66113V28.9141Z" fill="white"/>
<path fill-rule="evenodd" clip-rule="evenodd" d="M15.2417 1.59943H6.74272V4.84533H15.2417V1.59943ZM4.62583 1.56807H17.3742C17.8133 1.56807 18.1583 1.22309 18.1583 0.784034C18.1583 0.344975 17.8133 0 17.3742 0H4.62583C4.18677 0 3.8418 0.344975 3.8418 0.784034C3.8418 1.22309 4.18677 1.56807 4.62583 1.56807ZM9.34556 3.93749H12.6699C13.0932 3.93749 13.4382 3.59251 13.4382 3.15345C13.4382 2.71439 13.0932 2.36942 12.6542 2.36942H9.34556C8.9065 2.36942 8.56152 2.71439 8.56152 3.15345C8.56152 3.59251 8.9065 3.93749 9.34556 3.93749Z" fill="#006AA6"/>
<path fill-rule="evenodd" clip-rule="evenodd" d="M15.6181 0.03125H6.38222C5.5825 0.03125 5.1748 0.438948 5.1748 1.23866V5.22156C5.1748 6.02127 5.5825 6.42897 6.38222 6.42897H15.6181C16.4179 6.42897 16.8256 6.02127 16.8256 5.22156V1.23866C16.8256 0.438948 16.4179 0.03125 15.6181 0.03125ZM9.3457 3.93498H12.67C13.0934 3.93498 13.4384 3.59 13.4384 3.15094C13.4384 2.71188 13.0934 2.36691 12.6543 2.36691H9.3457C8.90664 2.36691 8.56166 2.71188 8.56166 3.15094C8.56166 3.59 8.90664 3.93498 9.3457 3.93498Z" fill="#006AA6"/>
<path d="M19.3189 7.60552C18.6133 6.89989 17.6567 6.49219 16.6532 6.49219H5.3474C4.34384 6.49219 3.38732 6.8842 2.68169 7.60552C1.97606 8.31115 1.56836 9.26767 1.56836 10.2712V23.5685C1.56836 24.572 1.96038 25.5285 2.68169 26.2342C3.38732 26.9398 4.34384 27.3475 5.3474 27.3475H16.6532C17.6567 27.3475 18.6133 26.9555 19.3189 26.2342C20.0245 25.5285 20.4322 24.572 20.4322 23.5685V10.2712C20.4322 9.26767 20.0245 8.31115 19.3189 7.60552ZM16.1671 19.4915C16.1044 20.6518 15.5869 21.7495 14.7401 22.5335C13.6111 23.443 12.1999 23.8977 10.7572 23.8037H10.7259C9.78504 23.8193 8.8442 23.5998 8.01312 23.1608C7.26045 22.7531 6.63322 22.1729 6.19416 21.4516C4.97107 19.2092 4.93971 16.4965 6.10008 14.2228C6.25688 13.8935 6.63322 13.7053 6.99388 13.7837C7.35453 13.8621 7.6211 14.1757 7.60542 14.5521C7.60542 15.2263 7.90336 15.8692 8.4365 16.3083C8.54626 15.6183 8.75011 14.9441 9.04805 14.3012C9.76936 12.7331 10.8356 11.3689 12.1685 10.3026C12.4351 10.0987 12.7957 10.0674 13.078 10.2399C13.3602 10.4124 13.5014 10.7417 13.4386 11.0709C13.078 12.3881 13.0937 13.768 13.4857 15.0695C13.7679 15.4302 14.0815 15.7595 14.4422 16.0417C15.6026 16.7944 16.2768 18.1116 16.1671 19.4915Z" fill="#006AA6"/>
<path d="M16.6529 4.92578H5.34711C2.39914 4.92578 0 7.32493 0 10.2729V23.5701C0 26.5181 2.39914 28.9172 5.34711 28.9172H16.6529C19.6009 28.9172 22 26.5181 22 23.5701V10.2729C22 7.32493 19.6165 4.92578 16.6529 4.92578ZM16.1668 19.4931C16.1041 20.6535 15.5866 21.7512 14.7398 22.5352C13.6108 23.4447 12.1996 23.8994 10.7569 23.8053H10.7256C9.78475 23.821 8.84391 23.6015 8.01283 23.1624C7.26016 22.7547 6.63293 22.1745 6.19387 21.4532C4.97078 19.2109 4.93941 16.4981 6.09979 14.2244C6.25659 13.8951 6.63293 13.707 6.99359 13.7854C7.35424 13.8638 7.62081 14.1774 7.60513 14.5537C7.60513 15.228 7.90306 15.8709 8.43621 16.31C8.54597 15.62 8.74982 14.9457 9.04776 14.3028C9.76907 12.7348 10.8354 11.3705 12.1682 10.3043C12.4348 10.1004 12.7954 10.069 13.0777 10.2415C13.3599 10.414 13.5011 10.7433 13.4383 11.0726C13.0777 12.3898 13.0934 13.7697 13.4854 15.0712C13.7676 15.4318 14.0813 15.7611 14.4419 16.0434C15.6023 16.7961 16.2766 18.1132 16.1668 19.4931Z" fill="#006AA6"/>
</svg>
<!-- <!--
* @Author: your name * @Author: your name
* @Date: 2022-01-26 20:07:52 * @Date: 2022-01-26 20:07:52
* @LastEditTime: 2022-03-16 17:32:38 * @LastEditTime: 2022-03-23 15:19:40
* @LastEditors: Please set LastEditors * @LastEditors: Please set LastEditors
* @Description: 打开koroFileHeader查看配置 进行设置: https://github.com/OBKoro1/koro1FileHeader/wiki/%E9%85%8D%E7%BD%AE * @Description: 打开koroFileHeader查看配置 进行设置: https://github.com/OBKoro1/koro1FileHeader/wiki/%E9%85%8D%E7%BD%AE
...@@ -86,7 +86,7 @@ ...@@ -86,7 +86,7 @@
style="width: 100px; height: 100px" style="width: 100px; height: 100px"
:src="deviceData.pictureAddress" :src="deviceData.pictureAddress"
:preview-src-list="[deviceData.pictureAddress ]" :preview-src-list="[deviceData.pictureAddress ]"
z-index=99999 :z-index="999999"
> >
</el-image> </el-image>
<div class="imgtext" v-else>暂无图片</div> <div class="imgtext" v-else>暂无图片</div>
......
<!-- <!--
* @Author: your name * @Author: your name
* @Date: 2022-01-26 20:07:52 * @Date: 2022-01-26 20:07:52
* @LastEditTime: 2022-03-16 17:29:11 * @LastEditTime: 2022-03-23 15:23:34
* @LastEditors: Please set LastEditors * @LastEditors: Please set LastEditors
* @Description: 打开koroFileHeader查看配置 进行设置: https://github.com/OBKoro1/koro1FileHeader/wiki/%E9%85%8D%E7%BD%AE * @Description: 打开koroFileHeader查看配置 进行设置: https://github.com/OBKoro1/koro1FileHeader/wiki/%E9%85%8D%E7%BD%AE
...@@ -56,7 +56,7 @@ ...@@ -56,7 +56,7 @@
style="width: 100px; height: 100px" style="width: 100px; height: 100px"
:src="deviceData.iconUrl" :src="deviceData.iconUrl"
:preview-src-list="[deviceData.iconUrl ]" :preview-src-list="[deviceData.iconUrl ]"
z-index=99999 :z-index="999999"
> >
</el-image> </el-image>
<div class="imgtext" v-else>暂无图片</div> <div class="imgtext" v-else>暂无图片</div>
......
...@@ -49,87 +49,42 @@ ...@@ -49,87 +49,42 @@
</div> </div>
</div> </div>
<div class="" style="padding: 0px 10px"> <div class="" style="padding: 0px 10px">
<div <div class="yujingleft yujing">
class="yujingleft yujing" <div class="yujingtop">
style="width: 33%; height: 90px; float: left"
>
<div
class="yujingtop"
style="
width: 70px;
height: 90px;
float: left;
margin-top: 15px;
text-align: right;
"
>
<img <img
src="@/assets/mapinages/group786.png" src="@/assets/mapinages/group786.png"
alt="" alt=""
style="width: 50px; height: 50px" style="width: 50px; height: 50px"
/> />
</div> </div>
<div <div class="yujingbottom">
class="yujingbottom" <div>设备预警</div>
style="float: left; color: #cddbe4; margin-left: 10px"
>
<p>设备预警</p>
<span>2</span> <span>2</span>
</div> </div>
</div> </div>
<div <div class="yujingcenter yujing" >
class="yujingcenter yujing" <div class="yujingtop" >
style="width: 33%; height: 90px; float: left"
>
<div
class="yujingtop"
style="
width: 70px;
height: 90px;
float: left;
margin-top: 15px;
text-align: right;
"
>
<img <img
src="@/assets/mapinages/group787.png" src="@/assets/mapinages/group787.png"
alt="" alt=""
style="width: 50px; height: 50px" style="width: 50px; height: 50px"
/> />
</div> </div>
<div <div class="yujingbottom">
class="yujingbottom" <div>事件情况</div>
style="float: left; color: #cddbe4; margin-left: 10px"
>
<p>事件情况</p>
<span>2</span> <span>2</span>
</div> </div>
</div> </div>
<div <div class="yujingright yujing" >
class="yujingright yujing" <div class="yujingtop">
style="width: 33%; height: 90px; float: left"
>
<div
class="yujingtop"
style="
width: 70px;
height: 90px;
float: left;
margin-top: 15px;
text-align: right;
"
>
<img <img
src="@/assets/mapinages/group788.png" src="@/assets/mapinages/group788.png"
alt="" alt=""
style="width: 50px; height: 50px" style="width: 50px; height: 50px"
/> />
</div> </div>
<div <div class="yujingbottom">
class="yujingbottom" <div>隐患数量</div>
style="float: left; color: #cddbe4; margin-left: 10px"
>
<p>隐患数量</p>
<span>2</span> <span>2</span>
</div> </div>
</div> </div>
...@@ -1020,4 +975,33 @@ export default { ...@@ -1020,4 +975,33 @@ export default {
width: 440px; width: 440px;
margin-left: 20px; margin-left: 20px;
} }
.yj{
padding: 0px 10px;
}
.yujing{
width: 33%;
height: 90px;
float: left;
}
.yujingtop{
width: 70px;
height: 90px;
float: left;
margin-top: 15px;
text-align: right;
}
.yujingbottom{
float: left;
color: #cddbe4;
margin-left: 10px;
line-height: 35px;
padding: 10px 0 0 0;
}
.yujingbottom span{
font-family: 'arialbd';
font-size: 25px;
background-image:-webkit-linear-gradient(bottom,#f0c41b,#e4dbb7);
-webkit-background-clip:text;
-webkit-text-fill-color:transparent;
}
</style> </style>
...@@ -10,7 +10,8 @@ const user = { ...@@ -10,7 +10,8 @@ const user = {
permissions: [], permissions: [],
systemSetting:{}, systemSetting:{},
posts: [], posts: [],
enterpriseId: '' enterpriseId: '',
userId: ''
}, },
mutations: { mutations: {
...@@ -37,6 +38,9 @@ const user = { ...@@ -37,6 +38,9 @@ const user = {
}, },
SET_ENTERPRISEID: (state,enterpriseId) =>{ SET_ENTERPRISEID: (state,enterpriseId) =>{
state.enterpriseId = enterpriseId state.enterpriseId = enterpriseId
},
SET_USERID:(state,userId) =>{
state.userId = userId
} }
}, },
...@@ -76,7 +80,7 @@ const user = { ...@@ -76,7 +80,7 @@ const user = {
commit('SET_SYSTEMSETTING', res.systemSetting) commit('SET_SYSTEMSETTING', res.systemSetting)
commit('SET_POSTS',res.posts) commit('SET_POSTS',res.posts)
commit('SET_ENTERPRISEID',user.deptId) commit('SET_ENTERPRISEID',user.deptId)
commit('SET_USERID',user.userId);
// 大屏公司获取 // 大屏公司获取
// 第一个参数是其他模块的 actions 路径, // 第一个参数是其他模块的 actions 路径,
// 第二个是传给 actions 的数据, 如果不需要传数据, 也必须预留, // 第二个是传给 actions 的数据, 如果不需要传数据, 也必须预留,
......
/* /*
* @Author: your name * @Author: your name
* @Date: 2022-01-26 10:47:44 * @Date: 2022-01-26 10:47:44
* @LastEditTime: 2022-03-21 17:11:56 * @LastEditTime: 2022-03-23 15:26:48
* @LastEditors: Please set LastEditors * @LastEditors: Please set LastEditors
* @Description: 打开koroFileHeader查看配置 进行设置: https://github.com/OBKoro1/koro1FileHeader/wiki/%E9%85%8D%E7%BD%AE * @Description: 打开koroFileHeader查看配置 进行设置: https://github.com/OBKoro1/koro1FileHeader/wiki/%E9%85%8D%E7%BD%AE
* @FilePath: /test/hello-world/src/utils/config.js * @FilePath: /test/hello-world/src/utils/config.js
...@@ -24,6 +24,7 @@ export const pipePressure = { ...@@ -24,6 +24,7 @@ export const pipePressure = {
export const alarmtime = 10000; export const alarmtime = 10000;
export const svgUrl = { export const svgUrl = {
// bigwindow页面的设备
2: require("@/assets/image/tiaoyaxiang1.svg"), 2: require("@/assets/image/tiaoyaxiang1.svg"),
3: require("@/assets/image/famen1.svg"), 3: require("@/assets/image/famen1.svg"),
4: require("@/assets/image/changzhan1.svg"), 4: require("@/assets/image/changzhan1.svg"),
...@@ -31,16 +32,22 @@ export const svgUrl = { ...@@ -31,16 +32,22 @@ export const svgUrl = {
6: require("@/assets/image/user1.svg"), 6: require("@/assets/image/user1.svg"),
7: require("@/assets/image/zrxk.svg"), 7: require("@/assets/image/zrxk.svg"),
8: require("@/assets/image/zcrq.svg"), 8: require("@/assets/image/zcrq.svg"),
// 运行监测-车辆信息 operationMonitor/gassVehicle
// 小汽车
9: require("@/assets/image/car.png"), 9: require("@/assets/image/car.png"),
//小汽车的路径标点图标 //小汽车的路径标点图标
14: require("@/assets/mapImages/carTarget.svg"), 14: require("@/assets/mapImages/carTarget.svg"),
//应急设备,
//应急设备,应急处置 emergency/emergency
10: require("@/assets/image/yj-jydw.png"), 10: require("@/assets/image/yj-jydw.png"),
11: require("@/assets/image/yj-wz.png"), 11: require("@/assets/image/yj-wz.png"),
12: require("@/assets/image/yj-cl.png"), 12: require("@/assets/image/yj-cl.png"),
13: require("@/assets/image/yj-yy.png"), 13: require("@/assets/image/yj-yy.png"),
15: require("@/assets/image/yj-xf.png"), 15: require("@/assets/image/yj-xf.png"),
16: require("@/assets/image/yj-xj.png"), 16: require("@/assets/image/yj-xj.png"),
//煤气罐罐 运行监测 气瓶回溯
17: require("@/assets/mapinages/meiqiguan.svg"),
}; };
export const svgAlarm = { export const svgAlarm = {
2: require("@/assets/mapImages/tyxAlarm.svg"), 2: require("@/assets/mapImages/tyxAlarm.svg"),
......
...@@ -41,6 +41,7 @@ ...@@ -41,6 +41,7 @@
size="mini" size="mini"
@click="handleAdd" @click="handleAdd"
v-hasPermi="['system:order:add']" v-hasPermi="['system:order:add']"
v-if="roleType != 'inpector'"
>新增</el-button> >新增</el-button>
</el-col> </el-col>
<el-col :span="1.5"> <el-col :span="1.5">
...@@ -52,6 +53,7 @@ ...@@ -52,6 +53,7 @@
:loading="exportLoading" :loading="exportLoading"
@click="handleExport" @click="handleExport"
v-hasPermi="['system:order:export']" v-hasPermi="['system:order:export']"
v-if="roleType != 'inpector'"
>导出</el-button> >导出</el-button>
</el-col> </el-col>
<right-toolbar :showSearch.sync="showSearch" @queryTable="getList"></right-toolbar> <right-toolbar :showSearch.sync="showSearch" @queryTable="getList"></right-toolbar>
...@@ -100,7 +102,7 @@ ...@@ -100,7 +102,7 @@
<el-table-column label="责任人员" align="center" prop="responsiblePerson" /> <el-table-column label="责任人员" align="center" prop="responsiblePerson" />
<el-table-column label="截止日期" align="center" prop="expiryDate" width="180"> <el-table-column label="截止日期" align="center" prop="expiryDate" width="180">
<template slot-scope="scope"> <template slot-scope="scope">
<span>{{ parseTime(scope.row.expiryDate, '{y}-{m}-{d}') }}</span> <span>{{ parseTime(scope.row.expiryDate, '{y}-{m}-{d} {h}:{i}:{s}') }}</span>
</template> </template>
</el-table-column> </el-table-column>
<el-table-column label="操作" align="center" class-name="small-padding fixed-width" min-width="150%"> <el-table-column label="操作" align="center" class-name="small-padding fixed-width" min-width="150%">
...@@ -113,7 +115,7 @@ ...@@ -113,7 +115,7 @@
v-hasPermi="['system:order:edit']" v-hasPermi="['system:order:edit']"
key="detail" key="detail"
>详情</el-button> >详情</el-button>
<el-button v-if="scope.row.workStatus == '0' || scope.row.workStatus == '1'" key="edit" <el-button v-if="('zhengfu'== roleType || (('enterprise'== roleType || 'doubleRole' == roleType) && scope.row.workCreateEnterpriseId == $store.state.user.enterpriseId))&& scope.row.workStatus == '0'" key="edit"
size="mini" size="mini"
type="text" type="text"
icon="el-icon-edit" icon="el-icon-edit"
...@@ -126,9 +128,10 @@ ...@@ -126,9 +128,10 @@
icon="el-icon-delete" icon="el-icon-delete"
@click="handleDelete(scope.row)" @click="handleDelete(scope.row)"
v-hasPermi="['system:order:remove']" v-hasPermi="['system:order:remove']"
v-if="('zhengfu'== roleType || (('enterprise'== roleType || 'doubleRole' == roleType) && scope.row.workCreateEnterpriseId == $store.state.user.enterpriseId))&& scope.row.workStatus == '0'"
key="detele" key="detele"
>删除</el-button> >删除</el-button>
<el-button v-if=" (('enterprise'== roleType && (scope.row.workAssignManId == '' || scope.row.workAssignManId == null)) || ('zhengfu'== roleType && (scope.row.workAssignEnterproseId == '' || scope.row.workAssignEnterproseId == null))) && scope.row.workStatus == '0'" <el-button v-if="'inpector'!= roleType && (scope.row.workAssignManId == '' || scope.row.workAssignManId == null) && scope.row.workStatus == '0'"
size="mini" size="mini"
type="text" type="text"
icon="el-icon-edit" icon="el-icon-edit"
...@@ -136,7 +139,7 @@ ...@@ -136,7 +139,7 @@
v-hasPermi="['system:order:edit']" v-hasPermi="['system:order:edit']"
key="work" key="work"
>任务下发</el-button> >任务下发</el-button>
<el-button v-if=" 'inpector'== roleType && scope.row.workStatus == '0'" <el-button v-if=" ('inpector'== roleType || 'doubleRole' == roleType) && (scope.row.workAssignManId == $store.state.user.userId) && scope.row.workStatus == '0'"
size="mini" size="mini"
type="text" type="text"
icon="el-icon-edit" icon="el-icon-edit"
...@@ -199,9 +202,9 @@ ...@@ -199,9 +202,9 @@
</el-form-item> </el-form-item>
<el-row> <el-row>
<el-col :span="12"> <el-col :span="12">
<el-form-item label="指派单位" prop="workAssignEnterproseName"> <el-form-item label="指派单位" prop="workAssignEnterproseId">
<!--<el-input v-model="form.workAssignEnterproseName" placeholder="请输入指派单位名称" />--> <!--<el-input v-model="form.workAssignEnterproseName" placeholder="请输入指派单位名称" />-->
<el-select v-model="form.workAssignEnterproseId" placeholder="请选择指派单位名称" style="width: 350px" @change="selectworkAssignEnterprose($event)" :disabled="isDetail"> <el-select v-model="form.workAssignEnterproseId" placeholder="请选择指派单位名称" style="width: 350px" @change="selectworkAssignEnterprose($event)" :disabled="isDetail || isEnterproser">
<el-option <el-option
v-for="item in enterprises" v-for="item in enterprises"
:key="item.enterpriseId" :key="item.enterpriseId"
...@@ -317,9 +320,9 @@ ...@@ -317,9 +320,9 @@
<el-row> <el-row>
<el-col :span="12"> <el-col :span="12">
<el-form-item label="指派单位" prop="workAssignEnterproseName"> <el-form-item label="指派单位" prop="workAssignEnterproseId">
<!--<el-input v-model="form.workAssignEnterproseName" placeholder="请输入指派单位名称" />--> <!--<el-input v-model="form.workAssignEnterproseName" placeholder="请输入指派单位名称" />-->
<el-select v-model="workForm.workAssignEnterproseId" placeholder="请选择指派单位名称" style="width: 350px" @change="selectworkAssignEnterprose($event)"> <el-select v-model="workForm.workAssignEnterproseId" placeholder="请选择指派单位名称" style="width: 350px" @change="selectworkAssignEnterprose($event)" :disabled="isEnterproser">
<el-option <el-option
v-for="item in enterprises" v-for="item in enterprises"
:key="item.enterpriseId" :key="item.enterpriseId"
...@@ -442,6 +445,8 @@ export default { ...@@ -442,6 +445,8 @@ export default {
fileList: [], fileList: [],
//详情 //详情
isDetail: false, isDetail: false,
//是否为企业用户
isEnterproser: false,
// 查询参数 // 查询参数
queryParams: { queryParams: {
pageNum: 1, pageNum: 1,
...@@ -481,7 +486,7 @@ export default { ...@@ -481,7 +486,7 @@ export default {
workContent: [ workContent: [
{ required: true, message: "任务内容", trigger: "blur" } { required: true, message: "任务内容", trigger: "blur" }
], ],
workAssignEnterproseName: [ workAssignEnterproseId: [
{ required: true, message: "指派单位", trigger: "blur" } { required: true, message: "指派单位", trigger: "blur" }
], ],
expiryDate: [ expiryDate: [
...@@ -490,7 +495,7 @@ export default { ...@@ -490,7 +495,7 @@ export default {
}, },
//任务下发表单校验 //任务下发表单校验
workRules: { workRules: {
workAssignEnterproseName: [ workAssignEnterproseId: [
{ required: true, message: "指派单位", trigger: "blur" } { required: true, message: "指派单位", trigger: "blur" }
], ],
workAssignMan: [ workAssignMan: [
...@@ -523,8 +528,10 @@ export default { ...@@ -523,8 +528,10 @@ export default {
let enterpriseId = this.$store.state.user.enterpriseId; let enterpriseId = this.$store.state.user.enterpriseId;
let post = this.$store.state.user.posts.find(item => item.postCode === "se"); let post = this.$store.state.user.posts.find(item => item.postCode === "se");
if(-2 != enterpriseId){ if(-2 != enterpriseId){
if(post){ if(post && this.$store.state.user.posts.length <=1){
this.roleType = "inpector"; this.roleType = "inpector";
}else if(post && this.$store.state.user.posts.length >1){
this.roleType = "doubleRole";
}else{ }else{
this.roleType = "enterprise"; this.roleType = "enterprise";
} }
...@@ -685,10 +692,26 @@ export default { ...@@ -685,10 +692,26 @@ export default {
}, },
//指派单位 //指派单位
getEnterpriseLists(){ getEnterpriseLists(){
enterpriseLists().then(response => { const param = {};
this.judgeOperateType(param);
enterpriseLists(param).then(response => {
this.enterprises = response.rows; this.enterprises = response.rows;
}); });
}, },
//根据用户角色和操作类型设置指派人是否可选
judgeOperateType(param){
if(this.roleType != "zhengfu"){
param.enterpriseId = this.$store.state.user.enterpriseId;
if(this.title == "添加巡检巡查任务"){
this.form.workAssignEnterproseId = this.$store.state.user.enterpriseId;
this.isEnterproser = true;
}
if(this.title == "任务下发"){
this.isEnterproser = true;
}
this.getInspectionUserList(this.$store.state.user.enterpriseId);
}
},
//获取巡检员 //获取巡检员
getInspectionUserList(enterpriseId){ getInspectionUserList(enterpriseId){
getInspectionUsers(enterpriseId,"se").then(response =>{ getInspectionUsers(enterpriseId,"se").then(response =>{
......
<template>
<div class="display">
<div class="leftbar">
<div class="leftnum">
<img src="../../../../assets/mapinages/Group1120.png" alt="" style="width: 80px;">
<span style="margin-left: 20px;margin-right: 20px;">充装数量分析</span>
<img src="../../../../assets/mapinages/Group1121.png" alt="" style="width: 80px;">
</div>
<div id="echartsone" style="width:100%;height:300px;"></div>
</div>
<div class="centerbar">
<div class="leftnum">
<img src="../../../../assets/mapinages/Group1120.png" alt="" style="width: 80px;">
<span style="margin-left: 20px;margin-right: 20px;">预警分析</span>
<img src="../../../../assets/mapinages/Group1121.png" alt="" style="width: 80px;">
</div>
<div id="echartstwo" style="width:100%;height:300px;"></div>
</div>
<div class="rightbar">
<div class="leftnum">
<img src="../../../../assets/mapinages/Group1120.png" alt="" style="width: 80px;">
<span style="margin-left: 20px;margin-right: 20px;">瓶装燃气用户汇总分析</span>
<img src="../../../../assets/mapinages/Group1121.png" alt="" style="width: 80px;">
</div>
<div id="echartsthree" style="width:100%;height:300px;"></div>
</div>
</div>
</template>
<script>
import * as echarts from 'echarts';
export default {
name:"",
data () {
return {
}
},
mounted () {
this.drawLine()
},
methods: {
drawLine() {
// 基于准备好的dom,初始化echarts实例
let myChart1 = this.$echarts.init(document.getElementById("echartsone"));
let myChart2 = this.$echarts.init(document.getElementById("echartstwo"));
let myChart3 = this.$echarts.init(document.getElementById("echartsthree"));
// 绘制图表
myChart1.setOption({
color: ['#4CC4E0'],
grid: {
left: '0',
right: '0',
bottom: '1%',
containLabel: true
},
tooltip: {},
xAxis: {
type: 'category',
data: ['平山', '东回舍', '温塘', '南甸', '古月', '西柏坡', '小觉','下口','两河乡'],
axisLine: {
lineStyle: {
type: 'solid' ,
color: '#99E2FF' , //左边线的颜色
width: '2' //坐标线的宽度
}
},
axisLabel: {
interval: 0,
textStyle: {
color: '#000' , //坐标值得具体的颜色
}
}
},
yAxis: {
type: 'value'
},
series: [
{
data: [1200, 2000, 1500, 800, 700, 1100, 4300,1234,3456],
type: 'bar',
barWidth : 7,
}
]
});
myChart2.setOption({
color: ['#4CC4E0','#EEC25B','#8E83DE'],
grid: {
left: '0',
right: '0',
bottom: '1%',
containLabel: true
},
legend: {
orient:"horizontal",
icon: "circle",
x:'center',
y:' center',
width:'300',
padding:[25, 30,0, 0],
itemWidth:10,
textStyle:{
color:'#000',
},
},
tooltip: {},
dataset: {
source: [
['product', '入户安检', '超重', '超量'],
['平山', 143.3, 185.8, 93.7],
['东回舍', 83.1, 173.4, 55.1],
['温塘', 86.4, 65.2, 82.5],
['南甸', 43.3, 85.8, 393.7],
['古月', 183.1, 273.4, 55.1],
['西柏坡', 186.4, 265.2, 82.5],
['小觉', 43.3, 185.8, 493.7],
['下口', 483.1, 273.4, 55.1],
['两河乡', 286.4, 265.2, 382.5],
['孟家庄', 272.4, 453.9, 139.1]
]
},
xAxis: {
type: 'category',
axisLine: {
lineStyle: {
type: 'solid' ,
color: '#99E2FF' , //左边线的颜色
width: '2' //坐标线的宽度
}
},
axisLabel: {
textStyle: {
color: '#000' , //坐标值得具体的颜色
}
}
},
yAxis: {},
series: [{ type: 'bar',barWidth : 7, }, { type: 'bar',barWidth : 7, }, { type: 'bar',barWidth : 7, }]
});
myChart3.setOption({
color: ['#4CC4E0'],
grid: {
left: '0',
right: '0',
bottom: '1%',
containLabel: true
},
tooltip: {},
xAxis: {
type: 'category',
axisLabel:{
interval: 0,
textStyle: {
color: '#000' , //坐标值得具体的颜色
}
} ,
data: ['平山', '东回舍', '温塘', '南甸', '古月', '西柏坡', '小觉','下口','两河乡'],
axisLine: {
lineStyle: {
type: 'solid' ,
color: '#99E2FF' , //左边线的颜色
width: '2' //坐标线的宽度
}
},
},
yAxis: {
type: 'value',
},
series: [
{
data: [1240, 2040, 1540, 3380, 4370, 1140, 2130,1234,3456],
type: 'bar',
barWidth : 7,
}
]
});
}
}
}
</script>
<style scoped>
.display{
display: flex;
}
.leftbar{
width: 27.5%;
height: 340px;
/* float: left; */
}
.centerbar{
width: 45%;
height: 340px;
/* float: left; */
margin-left: 40px;
}
.rightbar{
width: 27.5%;
height: 340px;
/* float: left; */
margin-left: 40px;
}
.leftnum{
width: 100%;
height: 40px;
text-align: center;
line-height: 70px;
}
</style>
\ No newline at end of file
<template>
<div style="padding: 40px 40px 20px 40px;">
<div class="bottletop">
<div class="bottletopleft">
<div class="bottop">
<div class="botbanner">
<div style="margin-left: 20px;position: absolute;">气瓶统计</div>
<img src="../../../assets/mapinages/Group1129.png" alt="" style="width: 100%;height: 100%;position: absolute;top: 0;left: 0;">
</div>
<div class="botnumber">
<div class="botimage">
<img src="../../../assets/mapinages/Group1130.png" alt="" style="width: 100px;height: 100px;margin-top: 30px;">
<div class="ima">
<div style="color: #4CC4E0;font-weight: bolder;">358275</div><span style="color: #fff;">总计</span>
</div>
</div>
<div class="botnum">
<div class="numdiv">
<p style="color: #4CC4E0;">本月新增</p>
<span style="color: #EEC25B;font-size: 30px;">683</span><span style="color: #4CC4E0;"></span>
</div>
<div class="numdiv">
<p style="color: #4CC4E0;">本年新增</p>
<span style="color: #EEC25B;font-size: 30px;">683</span><span style="color: #4CC4E0;"></span>
</div>
</div>
</div>
</div>
<div class="bottop">
<div class="botbanner">
<div style="margin-left: 20px;position: absolute;">气瓶配送统计</div>
<img src="../../../assets/mapinages/Group1129.png" alt="" style="width: 100%;height: 100%;position: absolute;top: 0;left: 0;">
</div>
<div class="botnumber">
<div class="botimage">
<img src="../../../assets/mapinages/Group1130.png" alt="" style="width: 100px;height: 100px;margin-top: 30px;">
<div class="ima">
<div style="color: #4CC4E0;font-weight: bolder;">35358275</div><span style="color: #fff;">总计</span>
</div>
</div>
<div class="botnum">
<div class="numdiv">
<p style="color: #4CC4E0;">本月新增</p>
<span style="color: #EEC25B;font-size: 30px;">6833</span><span style="color: #4CC4E0;"></span>
</div>
<div class="numdiv">
<p style="color: #4CC4E0;">本年新增</p>
<span style="color: #EEC25B;font-size: 30px;">623483</span><span style="color: #4CC4E0;"></span>
</div>
</div>
</div>
</div>
</div>
<div class="bottletopcenter">
<div id="map"></div>
</div>
<div class="bottletopright">
<div class="bottop">
<div class="botbanner">
<div style="margin-left: 20px;position: absolute;">气瓶充装统计</div>
<img src="../../../assets/mapinages/Group1129.png" alt="" style="width: 100%;height: 100%;position: absolute;top: 0;left: 0;">
</div>
<div class="botnumber">
<div class="botimage">
<img src="../../../assets/mapinages/Group1130.png" alt="" style="width: 100px;height: 100px;margin-top: 30px;">
<div class="ima">
<div style="color: #4CC4E0;font-weight: bolder;">358275</div><span style="color: #fff;">总计</span>
</div>
</div>
<div class="botnum">
<div class="numdiv">
<p style="color: #4CC4E0;">本月新增</p>
<span style="color: #EEC25B;font-size: 30px;">6843</span><span style="color: #4CC4E0;"></span>
</div>
<div class="numdiv">
<p style="color: #4CC4E0;">本年新增</p>
<span style="color: #EEC25B;font-size: 30px;">6483</span><span style="color: #4CC4E0;"></span>
</div>
</div>
</div>
</div>
<div class="bottop">
<div class="botbanner">
<div style="margin-left: 20px;position: absolute;">瓶装燃气用户分析</div>
<img src="../../../assets/mapinages/Group1129.png" alt="" style="width: 100%;height: 100%;position: absolute;top: 0;left: 0;">
</div>
<div class="botnumber">
<div id="myChartpieone" :style="{width: '100%', height: '100%'}"></div>
</div>
</div>
</div>
</div>
<div class="bottlebottom">
<operationNum></operationNum>
</div>
</div>
</template>
<script>
import * as echarts from 'echarts';
import operationNum from "./components/operationNum";
import { EditorMap } from "@/utils/mapClass/map";
import { mapGetters } from "vuex";
import Null from "@/components/bigWindow/Null.vue";
// import { EditorMap } from "@/utils/mapClass/getPath.js";
export default {
components: {
operationNum,
},
data() {
return {
//地图
// map: null,
arr:[
{longitude:114.186007 , latitude:38.260288 , iconType:17},
{longitude:114.185143, latitude:38.260178, iconType:17},
{longitude:114.186345 , latitude:38.261046 , iconType:17},
{longitude:114.187007 , latitude:38.262288 , iconType:17},
{longitude:114.186143, latitude:38.265178, iconType:17},
{longitude:114.187345 , latitude:38.267046 , iconType:17},
{longitude:114.188007 , latitude:38.268288 , iconType:17},
{longitude:114.189143, latitude:38.263178, iconType:17},
{longitude:114.189345 , latitude:38.269046 , iconType:17},
]
}
},
computed: {
...mapGetters([ "systemSetting"])
},
mounted () {
this.drawLine();
const path = eval(this.systemSetting.map_center);
this.map = new EditorMap(
"map",
{
center: path,
zoom: 14.5,
},
this
);
this.addDevice();
},
methods: {
addDevice(data, component) {
for(let i =0;i<this.arr.length;i++){
this.map.addDevice(this.arr[i], Null);
}
},
drawLine() {
// 基于准备好的dom,初始化echarts实例
let myChart1 = this.$echarts.init(document.getElementById("myChartpieone"));
// 绘制图表
myChart1.setOption({
grid: {
bottom: "7%",
containLabel: true,
},
legend: {
orient:"horizontal",
icon: "circle",
x:'right',
y:' center',
width:'300',
padding:[25, 30,0, 0],
itemWidth:10,
textStyle:{
color:'#000',
},
},
tooltip: {
trigger: 'item',
},
series: [
{
name: '任务概况',
type: 'pie',
radius: ['50%', '70%'],
center: ['50%','60%'],
data: [
{
value: 40,
name: '居民',
itemStyle: { color: '#4CC4E0' }
},
{
value: 59,
name: '非居民' ,
itemStyle: { color: '#EEC25B' }
},
],
labelLine:{
length:20,
length2:20,
},
label:{
color:'#fff',
fontSize: 14,
// formatter:"{b}\n\n",
// padding:[0,-55],
normal: {
show: true,
position: 'outer',
// formatter: '{d}%, {c} \n\n',
//模板变量有 {a}, {b},{c},{d},{e},分别表示系列名,数据名,数据值等。
formatter: "{a_set|{b}}{b_set|{d}%}",
// formatter: "{a_set|{b}}\n{c_set|{d}%}\n{b|}\n\n",
borderWidth: 10,
borderRadius: 4,
rich: {
a_set: {
color: "auto",
// lineHeight: 20,
align: "left",
// padding: [55, -40, -15, -40],
},
b_set:{
color: "auto",
},
}
}
},
emphasis: {
itemStyle: {
shadowBlur: 10,
shadowOffsetX: 0,
shadowColor: 'rgba(0, 0, 0, 0.5)'
}
}
}
]
});
}
}
};
</script>
<style lang="scss" scoped>
.bottletop{
width: 100%;
height: 450px;
display: flex;
}
.bottletopleft{
width: 27.5%;
height: 100%;
}
.bottop{
width: 100%;
height: 50%;
}
.botbanner{
width: 100%;
height: 30px;
position: relative;
font-weight: bolder;
}
.botnumber{
width: 100%;
height: 100%;
}
.botimage{
float: left;
width: 100px;
height: 200px;
position: relative;
margin-left: 20px;
}
.ima{
width: 100%;
position: absolute;
text-align: center;
top: 0;
margin-top: 60px;
}
.botnum{
float: left;
width: 65%;
height: 200px;
padding: 30px 0 25px 0;
}
.numdiv{
width: 50%;
text-align: center;
float: left;
}
.bottletopcenter{
width: 45%;
height: 100%;
/* float: left; */
margin-left: 40px;
}
#map{
width: 100%;
height: 100%;
}
.bottletopright{
width: 27.5%;
height: 100%;
/* float: left; */
margin-left: 40px;
}
.bottlebottom{
width: 100%;
height: 340px;
margin-top: 30px;
}
</style>
\ No newline at end of file
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