Skip to content
Projects
Groups
Snippets
Help
Loading...
Help
Contribute to GitLab
Sign in / Register
Toggle navigation
Z
zh-baseversion-project
Project
Project
Details
Activity
Cycle Analytics
Repository
Repository
Files
Commits
Branches
Tags
Contributors
Graph
Compare
Charts
Issues
0
Issues
0
List
Board
Labels
Milestones
Merge Requests
0
Merge Requests
0
CI / CD
CI / CD
Pipelines
Jobs
Schedules
Charts
Wiki
Wiki
Snippets
Snippets
Members
Members
Collapse sidebar
Close sidebar
Activity
Graph
Charts
Create a new issue
Jobs
Commits
Issue Boards
Open sidebar
王浩
zh-baseversion-project
Commits
855b365b
Commit
855b365b
authored
Sep 04, 2024
by
wanghao
Browse files
Options
Browse Files
Download
Email Patches
Plain Diff
1 基础信息维护-用户管理-燃气用户 大屏展示数据结构 接口封装。测试通过,待跟大屏联调。
2 基础信息维护-用户管理 和 居住区(村、庄) 界面优化,及 标注经纬度是 有时地图不展示问题修复。
parent
e8dad920
Expand all
Show whitespace changes
Inline
Side-by-side
Showing
10 changed files
with
447 additions
and
35 deletions
+447
-35
TDetectorUserController.java
...ong/web/controller/supervise/TDetectorUserController.java
+8
-7
TDetectorUserVillageSafetyDeviceInfoVo.java
...tem/domain/vo/TDetectorUserVillageSafetyDeviceInfoVo.java
+84
-0
TDetectorUserMapper.java
...in/java/com/zehong/system/mapper/TDetectorUserMapper.java
+8
-0
ITDetectorUserService.java
...java/com/zehong/system/service/ITDetectorUserService.java
+10
-2
TDetectorUserServiceImpl.java
.../zehong/system/service/impl/TDetectorUserServiceImpl.java
+254
-1
TDetectorUserMapper.xml
.../src/main/resources/mapper/system/TDetectorUserMapper.xml
+27
-2
detectorUser.js
zh-baseversion-web/src/api/detector/detectorUser.js
+12
-0
index.vue
zh-baseversion-web/src/views/bigWindow/index.vue
+3
-0
index.vue
...eb/src/views/regulation/userManagement/gasUsers/index.vue
+20
-9
index.vue
...web/src/views/regulation/userManagement/village/index.vue
+21
-14
No files found.
zh-baseversion-admin/src/main/java/com/zehong/web/controller/supervise/TDetectorUserController.java
View file @
855b365b
...
...
@@ -6,14 +6,7 @@ import java.text.SimpleDateFormat;
import
java.util.*
;
import
cn.afterturn.easypoi.excel.ExcelExportUtil
;
import
cn.afterturn.easypoi.excel.ExcelXorHtmlUtil
;
import
cn.afterturn.easypoi.excel.entity.ExcelToHtmlParams
;
import
cn.afterturn.easypoi.excel.entity.ExportParams
;
import
cn.afterturn.easypoi.excel.entity.TemplateExportParams
;
import
cn.afterturn.easypoi.excel.export.ExcelExportService
;
import
com.alibaba.excel.EasyExcel
;
import
com.alibaba.excel.ExcelWriter
;
import
com.alibaba.excel.write.metadata.WriteSheet
;
import
com.zehong.common.core.domain.entity.SysUser
;
import
com.zehong.common.core.domain.model.LoginUser
;
import
com.zehong.common.utils.SecurityUtils
;
...
...
@@ -144,6 +137,14 @@ public class TDetectorUserController extends BaseController
}
/**
* 获取探测器用户列表 大屏地图 labelsLayer 标注的方式
* @return ajaxResult
*/
@GetMapping
(
"/labelsLayerMarksDUserVillageSafDevInfoMap"
)
public
AjaxResult
labelsLayerMarksDUserVillageSafDevInfoMap
(
TDetectorUser
tDetectorUser
){
return
AjaxResult
.
success
(
tDetectorUserService
.
labelsLayerMarksDUserVillageSafDevInfoMap
(
tDetectorUser
));
}
/**
* 获取探测器用户列表
...
...
zh-baseversion-system/src/main/java/com/zehong/system/domain/vo/TDetectorUserVillageSafetyDeviceInfoVo.java
0 → 100644
View file @
855b365b
package
com
.
zehong
.
system
.
domain
.
vo
;
import
com.fasterxml.jackson.annotation.JsonFormat
;
import
lombok.Data
;
import
java.util.Date
;
/**
* 带有村 和 安全装置的 燃气用户 VO
*/
@Data
public
class
TDetectorUserVillageSafetyDeviceInfoVo
{
/**
* 燃气用户ID
*/
private
Long
userId
;
/**
* 用户类型 1=居民用户,2=工商业用户,4=餐饮用户
*/
private
String
userType
;
/**
* 燃气用户名称
*/
private
String
nickName
;
/**
* 燃气用户电话
*/
private
String
phone
;
/**
* 燃气用户地址
*/
private
String
address
;
/**
* 村庄id
*/
private
Long
villageId
;
/**
* 村庄名称
*/
private
String
villageName
;
/**
* 村庄地址
*/
private
String
regionName
;
/**
* 安全装置 id
*/
private
Long
gasUserSafetyDeviceId
;
/**
* 编号
*/
private
String
iotNo
;
/**
* 设备名称
*/
private
String
deviceName
;
/**
* 设备介质
*/
private
String
detctionMedium
;
/**
* 设备安装时间
*/
@JsonFormat
(
pattern
=
"yyyy-MM-dd"
)
private
Date
deviceInstallTime
;
/**
* 图标类型默认 61
*/
private
String
iconType
;
}
zh-baseversion-system/src/main/java/com/zehong/system/mapper/TDetectorUserMapper.java
View file @
855b365b
...
...
@@ -7,6 +7,7 @@ import com.zehong.system.domain.TDetectorUser;
import
com.zehong.system.domain.TDetectorUserCount
;
import
com.zehong.system.domain.vo.TDetectorUserInspectVo
;
import
com.zehong.system.domain.vo.TDetectorUserVO
;
import
com.zehong.system.domain.vo.TDetectorUserVillageSafetyDeviceInfoVo
;
import
org.apache.ibatis.annotations.Param
;
/**
...
...
@@ -32,6 +33,13 @@ public interface TDetectorUserMapper
*/
public
List
<
TDetectorUserVO
>
countTDetectorUser
(
TDetectorUser
tDetectorUser
);
/**
* 查询 带有 设备 村庄的 燃气用户数据
* @param tDetectorUser t
* @return l
*/
List
<
TDetectorUserVillageSafetyDeviceInfoVo
>
queryDuserVilSafDevInfo
(
TDetectorUser
tDetectorUser
);
/**
* 查询燃气用户统计信息大屏界面 使用massMarks标注的方式
* @param tDetectorUser
...
...
zh-baseversion-system/src/main/java/com/zehong/system/service/ITDetectorUserService.java
View file @
855b365b
...
...
@@ -33,12 +33,20 @@ public interface ITDetectorUserService
*/
// public Map<String, List<TMassMarksDetectorUserVO>> massMarksDetectorUserList(TDetectorUser tDetectorUser);
/**
* 查询探测器用户列表 地图使用 labelsLayerMarks 标注的方式
* @param tDetectorUser tDetectorUser
* @return r
*/
Map
<
String
,
List
<
TDetectorUserVO
>>
labelsLayerMarksDetectorUserList
(
TDetectorUser
tDetectorUser
);
/**
* 查询探测器用户列表 地图使用 labelsLayer 标注的方式
* 查询探测器用户列表 地图使用 labelsLayer 标注的方式
带有村 和 安全装置数据
* @param tDetectorUser tDetectorUser
* @return r
*/
public
Map
<
String
,
List
<
TDetectorUserVO
>>
labelsLayerMarksDetectorUserList
(
TDetectorUser
tDetectorUser
);
Map
<
Object
,
List
<
Map
<
String
,
Object
>>>
labelsLayerMarksDUserVillageSafDevInfoMap
(
TDetectorUser
tDetectorUser
);
/**
* 查询探测器用户列表
...
...
zh-baseversion-system/src/main/java/com/zehong/system/service/impl/TDetectorUserServiceImpl.java
View file @
855b365b
This diff is collapsed.
Click to expand it.
zh-baseversion-system/src/main/resources/mapper/system/TDetectorUserMapper.xml
View file @
855b365b
...
...
@@ -277,7 +277,7 @@ PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN"
a2.detector_type,
a2.detector_status FROM t_detector_user a1
LEFT JOIN t_detector_info a2 ON a1.user_id = a2.user_id AND a2.is_del = '0'
<where>
a1.is_del = '0' and a1.error_msg is null
<where>
a1.is_del = '0' and a1.error_msg is null
and a1.user_type != '2'
<if
test=
"userId != null and userId != ''"
>
and a1.user_id = #{userId}
</if>
</where>
) a
group by a.user_id,a.detector_type
...
...
@@ -292,7 +292,7 @@ PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN"
from t_detector_report_data b1
left join t_detector_info b2 on b1.detector_code = b2.detector_code
right join t_detector_user b3 on b2.user_id = b3.user_id
<where>
b2.is_del = '0' and b3.is_del = '0' and b3.error_msg is null
<where>
b2.is_del = '0' and b3.is_del = '0' and b3.error_msg is null
and b3.user_type != '2'
<if
test=
"userId != null and userId != ''"
>
and b3.user_id = #{userId}
</if>
</where>
) b
group by b.user_id,b.detector_type
...
...
@@ -300,6 +300,31 @@ PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN"
) t2 on t2.userId = t1.userId
</select>
<select
id=
"queryDuserVilSafDevInfo"
resultType=
"TDetectorUserVillageSafetyDeviceInfoVo"
parameterType=
"TDetectorUser"
>
SELECT
dUser.user_id as userId,
dUser.nick_name as nickName,
dUser.phone,
dUser.address,
dUser.user_type as userType,
userVillage.f_village_id as villageId,
userVillage.f_village_name as villageName,
region.f_name AS regionName ,
safetyDeviceInfo.f_gasUser_safety_device_id as gasUserSafetyDeviceId,
safetyDeviceInfo.f_iot_no as iotNo,
safetyDeviceInfo.f_device_name as deviceName,
safetyDeviceInfo.f_detection_medium as detctionMedium,
safetyDeviceInfo.f_device_install_time as deviceInstallTime,
'61' as iconType
FROM
t_detector_user dUser
LEFT JOIN t_user_manage_village userVillage ON dUser.f_village_id = userVillage.f_village_id
LEFT JOIN t_gasuser_safety_device_info safetyDeviceInfo on safetyDeviceInfo.f_relation_gasUser_id = dUser.user_id
LEFT JOIN t_county_level_region region ON region.f_id = userVillage.f_region
WHERE
(safetyDeviceInfo.is_del = '0' or safetyDeviceInfo.is_del is null)
</select>
<select
id=
"getDetectorUserAlarmList"
resultType=
"Map"
>
select a2.user_id as userId
from t_detector_info a1
...
...
zh-baseversion-web/src/api/detector/detectorUser.js
View file @
855b365b
...
...
@@ -26,6 +26,18 @@ export function labelsLayerMarksDetectorUserList(query) {
params
:
query
})
}
// 探测器用户列表 大屏端 labelsLayerMarks 标注方式 居民用户 特殊处理 带有 村 和 安全装置了。。。
export
function
labelsLayerMarksDUserVillageSafDevInfoMap
(
query
)
{
return
request
({
url
:
'/supervise/user/labelsLayerMarksDUserVillageSafDevInfoMap'
,
method
:
'get'
,
params
:
query
})
}
// 探测器用户列表
export
function
detectorUserList
(
query
)
{
return
request
({
...
...
zh-baseversion-web/src/views/bigWindow/index.vue
View file @
855b365b
...
...
@@ -131,6 +131,7 @@ import {
detectorUserList
,
massMarksDetectorUserList
,
labelsLayerMarksDetectorUserList
,
labelsLayerMarksDUserVillageSafDevInfoMap
,
}
from
"@/api/detector/detectorUser"
;
import
{
pipeData
,
...
...
@@ -308,6 +309,8 @@ export default {
},
async
mounted
()
{
labelsLayerMarksDUserVillageSafDevInfoMap
();
// console.log(99999999999999)
// getPipe().then(res=>{
// console.log("成功成功成功成功成功成功成功成功成功成功成功成功成功成功成功成功成功成功成功成功",res)
...
...
zh-baseversion-web/src/views/regulation/userManagement/gasUsers/index.vue
View file @
855b365b
...
...
@@ -186,7 +186,7 @@
</el-form-item>
</el-col>
<el-col
:span=
"11"
>
<el-col
:span=
"11"
v-if=
"form.userType === '1'"
>
<el-form-item
label=
"居住区(村、庄)"
prop=
"villageId"
>
<el-select
v-model=
"form.villageId"
placeholder=
"请在下拉框中选择名称"
maxlength=
"255"
:disabled=
"false"
clearable
style=
"width: 100%;"
>
<el-option
v-for=
"item in villageList"
:key=
"item.fVillageId"
:label=
"item.fVillageName"
:value=
"item.fVillageId"
>
...
...
@@ -518,7 +518,7 @@ export default {
// 遮罩层
loading
:
true
,
//下级数据的遮罩层
loadings
:
tru
e
,
loadings
:
fals
e
,
//下级数据的遮罩层
safetyDeviceManageLoadings
:
true
,
// 导出遮罩层
...
...
@@ -589,10 +589,6 @@ export default {
{
required
:
true
,
message
:
"请输入地址"
,
trigger
:
"blur"
},
// { min: 0, max: 30, message: "长度30位", trigger: "blur" },
],
villageId
:
[
{
required
:
true
,
message
:
"请选择居住区(村、庄)"
,
trigger
:
"blur"
},
// { min: 0, max: 30, message: "长度30位", trigger: "blur" },
],
},
//关联设备下级数据 表单校验
...
...
@@ -1004,13 +1000,16 @@ export default {
this
.
test
=
response
.
data
;
});
this
.
reset
();
this
.
devicePos
=
[];
//清空关联设备数据
this
.
DetailInfoList
=
''
this
.
DetailInfoList
=
[]
this
.
open
=
true
;
this
.
title
=
"添加燃气用户"
;
},
/** 修改按钮操作 */
handleUpdate
(
row
)
{
this
.
loadings
=
true
;
//查询企业名称下拉框数据
selectTEnterprise
().
then
(
response
=>
{
this
.
test
=
response
.
data
;
...
...
@@ -1021,7 +1020,11 @@ export default {
this
.
form
=
response
.
data
;
this
.
open
=
true
;
this
.
title
=
"修改燃气用户"
;
if
(
response
.
data
.
longitude
==
null
||
response
.
data
.
latitude
==
null
)
{
this
.
devicePos
=
[];
}
else
{
this
.
devicePos
=
[
response
.
data
.
longitude
,
response
.
data
.
latitude
];
}
});
//查询关联设备信息数据
...
...
@@ -1032,6 +1035,14 @@ export default {
},
/** 提交按钮 */
submitForm
()
{
if
(
this
.
form
.
userType
===
'1'
&&
this
.
form
.
villageId
==
null
)
{
alert
(
"当用户类型是 ‘居民用户’ 时,居住区(村、庄) 必选"
);
return
}
this
.
$refs
[
"form"
].
validate
(
valid
=>
{
if
(
valid
)
{
if
(
this
.
form
.
userId
!=
null
)
{
...
...
zh-baseversion-web/src/views/regulation/userManagement/village/index.vue
View file @
855b365b
...
...
@@ -61,10 +61,10 @@
<el-table
v-loading=
"loading"
:data=
"villageList"
@
selection-change=
"handleSelectionChange"
>
<el-table-column
type=
"selection"
width=
"55"
align=
"center"
/>
<el-table-column
label=
"所属企业"
align=
"center"
prop=
"beyondEnterpriseName"
>
<
!--
<
el-table-column
label=
"所属企业"
align=
"center"
prop=
"beyondEnterpriseName"
>
<span
slot-scope=
"scope"
v-if=
"scope.row.beyondEnterpriseName"
>
{{
scope
.
row
.
beyondEnterpriseName
}}
</span>
<span
v-else
>
-
</span>
</el-table-column>
</el-table-column>
-->
<el-table-column
label=
"居住区(村庄)名称"
align=
"center"
prop=
"fVillageName"
>
<span
slot-scope=
"scope"
v-if=
"scope.row.fVillageName"
>
{{
scope
.
row
.
fVillageName
}}
</span>
...
...
@@ -122,23 +122,21 @@
<el-form
ref=
"form"
:model=
"form"
:rules=
"rules"
label-width=
"130px"
>
<el-row>
<el-col
:span=
"11"
>
<
!-- <
el-col :span="11">
<el-form-item label="所属企业" prop="beyondEnterpriseId">
<el-select v-model="form.beyondEnterpriseId" placeholder="请在下拉框中选择名称" maxlength="255" :disabled="false" clearable style="width: 100%;">
<el-option v-for="item in enterpriseList" :key="item.enterpriseId" :label="item.enterpriseName" :value="item.enterpriseId">
</el-option>
</el-select>
</el-form-item>
</el-col>
</el-col>
-->
<el-col
:span=
"11"
>
<el-form-item
label=
"居住区(村庄)名称"
prop=
"fVillageName"
>
<el-input
v-model=
"form.fVillageName"
placeholder=
"请输入居住区(村庄)名称"
/>
</el-form-item>
</el-col>
</el-row>
<el-row>
<el-col
:span=
"11"
>
<el-form-item
label=
"县级行政区"
prop=
"fRegion"
>
<el-select
...
...
@@ -153,15 +151,24 @@
:value=
"county.fId"
/>
</el-select>
<!--<el-input v-model="form.fRegion" placeholder="请输入项目所在县级行政区ID" />-->
</el-form-item>
</el-col>
</el-row>
<el-row>
<el-col
:span=
"11"
>
<el-form-item
label=
"居民总户数"
prop=
"fTotalNumHouse"
>
<el-input
@
input=
"fTotalNumHousefilterInput"
v-model=
"form.fTotalNumHouse"
placeholder=
"请输入居民总户数"
/>
</el-form-item>
</el-col>
<el-col
:span=
"11"
>
<el-form-item
label=
"瓶装燃气用户数"
prop=
"fBottledGasUsers"
>
<el-input
@
input=
"fBottledGasUsersfilterInput"
v-model=
"form.fBottledGasUsers"
placeholder=
"请输入瓶装燃气用户数"
/>
</el-form-item>
</el-col>
</el-row>
<el-row>
...
...
@@ -170,11 +177,6 @@
<el-input
@
input=
"fPipeGasUsersfilterInput"
v-model=
"form.fPipeGasUsers"
placeholder=
"请输入管道燃气用户数"
/>
</el-form-item>
</el-col>
<el-col
:span=
"11"
>
<el-form-item
label=
"瓶装燃气用户数"
prop=
"fBottledGasUsers"
>
<el-input
@
input=
"fBottledGasUsersfilterInput"
v-model=
"form.fBottledGasUsers"
placeholder=
"请输入瓶装燃气用户数"
/>
</el-form-item>
</el-col>
</el-row>
<el-row>
...
...
@@ -374,6 +376,7 @@ export default {
this
.
enterpriseList
=
response
.
data
;
});
this
.
devicePos
=
[];
this
.
reset
();
this
.
open
=
true
;
this
.
title
=
"添加居住区(村庄)"
;
...
...
@@ -390,7 +393,11 @@ export default {
this
.
form
=
response
.
data
;
this
.
open
=
true
;
this
.
title
=
"修改居住区(村庄)"
;
if
(
response
.
data
.
longitude
==
null
||
response
.
data
.
latitude
==
null
)
{
this
.
devicePos
=
[];
}
else
{
this
.
devicePos
=
[
response
.
data
.
longitude
,
response
.
data
.
latitude
];
}
});
},
/** 提交按钮 */
...
...
Write
Preview
Markdown
is supported
0%
Try again
or
attach a new file
Attach a file
Cancel
You are about to add
0
people
to the discussion. Proceed with caution.
Finish editing this message first!
Cancel
Please
register
or
sign in
to comment