Skip to content
Projects
Groups
Snippets
Help
Loading...
Help
Contribute to GitLab
Sign in / Register
Toggle navigation
G
gassafety
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
耿迪迪
gassafety
Commits
e2ccb136
Commit
e2ccb136
authored
Jul 28, 2021
by
王晓倩
Browse files
Options
Browse Files
Download
Email Patches
Plain Diff
工单详细信息显示设备列表树,工单接收、反馈
parent
b85e12cc
Expand all
Show whitespace changes
Inline
Side-by-side
Showing
24 changed files
with
1030 additions
and
965 deletions
+1030
-965
TDeviceInfoController.java
...m/zehong/web/controller/device/TDeviceInfoController.java
+10
-0
SysUserController.java
...a/com/zehong/web/controller/system/SysUserController.java
+13
-0
TWorkOrderController.java
...zehong/web/controller/workOrder/TWorkOrderController.java
+16
-7
TWorkOrderForm.java
...in/java/com/zehong/system/domain/form/TWorkOrderForm.java
+144
-0
WorkOrderVo.java
...rc/main/java/com/zehong/system/domain/vo/WorkOrderVo.java
+11
-0
SysUserMapper.java
...src/main/java/com/zehong/system/mapper/SysUserMapper.java
+8
-0
TWorkOrderMapper.java
.../main/java/com/zehong/system/mapper/TWorkOrderMapper.java
+2
-1
ISysUserService.java
.../main/java/com/zehong/system/service/ISysUserService.java
+8
-0
ITDeviceInfoService.java
...n/java/com/zehong/system/service/ITDeviceInfoService.java
+10
-0
ITWorkOrderService.java
...in/java/com/zehong/system/service/ITWorkOrderService.java
+3
-2
SysUserServiceImpl.java
...va/com/zehong/system/service/impl/SysUserServiceImpl.java
+12
-0
TDeviceInfoServiceImpl.java
...om/zehong/system/service/impl/TDeviceInfoServiceImpl.java
+27
-2
TOrderFeedbackServiceImpl.java
...zehong/system/service/impl/TOrderFeedbackServiceImpl.java
+6
-5
TWorkOrderServiceImpl.java
...com/zehong/system/service/impl/TWorkOrderServiceImpl.java
+14
-10
SysUserMapper.xml
...system/src/main/resources/mapper/system/SysUserMapper.xml
+6
-1
TOrderFeedbackMapper.xml
...src/main/resources/mapper/system/TOrderFeedbackMapper.xml
+0
-2
TWorkOrderMapper.xml
...tem/src/main/resources/mapper/system/TWorkOrderMapper.xml
+14
-12
deviceInfo.js
gassafety-web/src/api/device/deviceInfo.js
+11
-1
user.js
gassafety-web/src/api/system/user.js
+9
-0
index.vue
gassafety-web/src/components/FileUpload/index.vue
+177
-148
index.vue
gassafety-web/src/views/dataMonitoring/deviceAlarm/index.vue
+78
-219
detail.vue
gassafety-web/src/views/workOrder/basicsInfo/detail.vue
+62
-62
index.vue
gassafety-web/src/views/workOrder/basicsInfo/index.vue
+93
-193
index.vue
gassafety-web/src/views/workOrder/feedback/index.vue
+296
-300
No files found.
gassafety-admin/src/main/java/com/zehong/web/controller/device/TDeviceInfoController.java
View file @
e2ccb136
...
...
@@ -3,6 +3,7 @@ package com.zehong.web.controller.device;
import
com.zehong.common.annotation.Log
;
import
com.zehong.common.core.controller.BaseController
;
import
com.zehong.common.core.domain.AjaxResult
;
import
com.zehong.common.core.domain.entity.SysDept
;
import
com.zehong.common.core.page.TableDataInfo
;
import
com.zehong.common.enums.BusinessType
;
import
com.zehong.common.utils.poi.ExcelUtil
;
...
...
@@ -50,6 +51,15 @@ public class TDeviceInfoController extends BaseController
return
AjaxResult
.
success
(
tDeviceInfoService
.
selectTDeviceInfoList
(
tDeviceInfo
));
}
/**
* 获取设备下拉树列表
*/
@PutMapping
(
"/deviceTree"
)
public
AjaxResult
deviceTree
(
@RequestBody
List
<
TDeviceInfo
>
deviceInfoList
)
{
return
AjaxResult
.
success
(
tDeviceInfoService
.
buildDeviceTreeSelect
(
deviceInfoList
));
}
/**
* 导出设备信息列表
*/
...
...
gassafety-admin/src/main/java/com/zehong/web/controller/system/SysUserController.java
View file @
e2ccb136
package
com
.
zehong
.
web
.
controller
.
system
;
import
java.util.HashMap
;
import
java.util.List
;
import
java.util.Map
;
import
java.util.stream.Collectors
;
import
org.springframework.beans.factory.annotation.Autowired
;
import
org.springframework.security.access.prepost.PreAuthorize
;
...
...
@@ -65,6 +67,17 @@ public class SysUserController extends BaseController
return
getDataTable
(
list
);
}
/**
* 获取巡检员列表
*/
@PreAuthorize
(
"@ss.hasPermi('system:user:inspectorList')"
)
@GetMapping
(
"/inspectorList"
)
public
AjaxResult
inspectorList
()
{
List
<
SysUser
>
list
=
userService
.
selectInspectorList
();
return
AjaxResult
.
success
(
list
);
}
@Log
(
title
=
"用户管理"
,
businessType
=
BusinessType
.
EXPORT
)
@PreAuthorize
(
"@ss.hasPermi('system:user:export')"
)
@GetMapping
(
"/export"
)
...
...
gassafety-admin/src/main/java/com/zehong/web/controller/workOrder/TWorkOrderController.java
View file @
e2ccb136
...
...
@@ -2,7 +2,9 @@ package com.zehong.web.controller.workOrder;
import
java.util.List
;
import
com.zehong.common.utils.DateUtils
;
import
com.zehong.common.utils.StringUtils
;
import
com.zehong.system.domain.form.TWorkOrderForm
;
import
com.zehong.system.domain.vo.WorkOrderVo
;
import
org.springframework.security.access.prepost.PreAuthorize
;
import
org.springframework.beans.factory.annotation.Autowired
;
...
...
@@ -41,12 +43,12 @@ public class TWorkOrderController extends BaseController
*/
@PreAuthorize
(
"@ss.hasPermi('workOrder:basicsInfo:list')"
)
@GetMapping
(
"/list"
)
public
TableDataInfo
list
(
TWorkOrder
tWorkOrder
)
throws
Exception
public
TableDataInfo
list
(
TWorkOrder
Form
tWorkOrderForm
)
throws
Exception
{
startPage
();
List
<
WorkOrderVo
>
list
=
null
;
try
{
list
=
tWorkOrderService
.
selectTWorkOrderList
(
tWorkOrder
);
list
=
tWorkOrderService
.
selectTWorkOrderList
(
tWorkOrder
Form
);
}
catch
(
Exception
e
)
{
e
.
printStackTrace
();
throw
new
Exception
(
StringUtils
.
format
(
"查询工单基础信息列表失败"
));
...
...
@@ -60,11 +62,11 @@ public class TWorkOrderController extends BaseController
@PreAuthorize
(
"@ss.hasPermi('workOrder:basicsInfo:export')"
)
@Log
(
title
=
"工单基础信息"
,
businessType
=
BusinessType
.
EXPORT
)
@GetMapping
(
"/export"
)
public
AjaxResult
export
(
TWorkOrder
tWorkOrder
)
throws
Exception
public
AjaxResult
export
(
TWorkOrder
Form
tWorkOrderForm
)
throws
Exception
{
List
<
WorkOrderVo
>
list
=
null
;
try
{
list
=
tWorkOrderService
.
selectTWorkOrderList
(
tWorkOrder
);
list
=
tWorkOrderService
.
selectTWorkOrderList
(
tWorkOrder
Form
);
}
catch
(
Exception
e
)
{
e
.
printStackTrace
();
throw
new
Exception
(
StringUtils
.
format
(
"导出工单基础信息列表失败"
));
...
...
@@ -116,8 +118,8 @@ public class TWorkOrderController extends BaseController
public
AjaxResult
edit
(
@RequestBody
TWorkOrder
tWorkOrder
)
throws
Exception
{
String
orderStatus
=
tWorkOrder
.
getOrderStatus
();
// 工单状态只有是0未
下发或1已下发,
才允许修改
if
(!
"0"
.
equals
(
orderStatus
)
&&
!
"1"
.
equals
(
orderStatus
)
){
// 工单状态只有是0未
接收
才允许修改
if
(!
"0"
.
equals
(
orderStatus
)){
throw
new
Exception
(
StringUtils
.
format
(
"工单({})当前状态不允许修改"
,
tWorkOrder
.
getOrderId
()));
}
...
...
@@ -139,7 +141,14 @@ public class TWorkOrderController extends BaseController
public
AjaxResult
editStatus
(
@RequestBody
TWorkOrder
tWorkOrder
)
throws
Exception
{
String
orderStatus
=
tWorkOrder
.
getOrderStatus
();
if
(
"5"
.
equals
(
orderStatus
))
{
if
(
"0"
.
equals
(
orderStatus
)){
tWorkOrder
.
setOrderStatus
(
"1"
);
tWorkOrder
.
setActualTime
(
DateUtils
.
getNowDate
());
}
else
if
(
"1"
.
equals
(
orderStatus
))
{
tWorkOrder
.
setOrderStatus
(
"2"
);
}
else
if
(
"2"
.
equals
(
orderStatus
))
{
tWorkOrder
.
setOrderStatus
(
"3"
);
}
else
if
(
"3"
.
equals
(
orderStatus
))
{
throw
new
Exception
(
StringUtils
.
format
(
"工单({})已归档,不允许更改状态"
,
tWorkOrder
.
getOrderId
()));
}
...
...
gassafety-system/src/main/java/com/zehong/system/domain/form/TWorkOrderForm.java
0 → 100644
View file @
e2ccb136
package
com
.
zehong
.
system
.
domain
.
form
;
import
com.fasterxml.jackson.annotation.JsonFormat
;
import
com.zehong.common.annotation.Excel
;
import
com.zehong.common.core.domain.BaseEntity
;
import
org.apache.commons.lang3.builder.ToStringBuilder
;
import
org.apache.commons.lang3.builder.ToStringStyle
;
import
java.util.Date
;
/**
* 工单基础信息对象 t_work_order
*
* @author zehong
* @date 2021-07-19
*/
public
class
TWorkOrderForm
extends
BaseEntity
{
/** 工单id */
private
String
orderId
;
/** 工单类型(1巡检信息,2隐患信息,3报警信息) */
private
String
orderType
;
/** 工单名称 */
private
String
orderName
;
/** 工单状态(0未接收,1已接收,2进行中,3已反馈,4已归档) */
private
String
orderStatus
;
/** 指定执行人员(巡检员id) */
private
Long
appointInspector
;
/** 开始下发时间 */
@JsonFormat
(
pattern
=
"yyyy-MM-dd HH:mm:ss"
)
private
Date
startAllotTime
;
/** 结束下发时间 */
@JsonFormat
(
pattern
=
"yyyy-MM-dd HH:mm:ss"
)
private
Date
endAllotTime
;
/** 实际接收人员(巡检员id) */
@Excel
(
name
=
"实际接收人员"
,
readConverterExp
=
"巡检员id"
)
private
Long
actualInspector
;
/** 实际接收时间 */
@JsonFormat
(
pattern
=
"yyyy-MM-dd HH:mm:ss"
)
@Excel
(
name
=
"实际接收时间"
,
width
=
30
,
dateFormat
=
"yyyy-MM-dd HH:mm:ss"
)
private
Date
actualTime
;
/** 用户名 */
private
String
userName
;
public
void
setOrderId
(
String
orderId
)
{
this
.
orderId
=
orderId
;
}
public
String
getOrderId
()
{
return
orderId
;
}
public
void
setOrderType
(
String
orderType
)
{
this
.
orderType
=
orderType
;
}
public
String
getOrderType
()
{
return
orderType
;
}
public
void
setOrderName
(
String
orderName
)
{
this
.
orderName
=
orderName
;
}
public
String
getOrderName
()
{
return
orderName
;
}
public
void
setOrderStatus
(
String
orderStatus
)
{
this
.
orderStatus
=
orderStatus
;
}
public
String
getOrderStatus
()
{
return
orderStatus
;
}
public
void
setAppointInspector
(
Long
appointInspector
)
{
this
.
appointInspector
=
appointInspector
;
}
public
Long
getAppointInspector
()
{
return
appointInspector
;
}
public
Date
getStartAllotTime
()
{
return
startAllotTime
;
}
public
void
setStartAllotTime
(
Date
startAllotTime
)
{
this
.
startAllotTime
=
startAllotTime
;
}
public
Date
getEndAllotTime
()
{
return
endAllotTime
;
}
public
void
setEndAllotTime
(
Date
endAllotTime
)
{
this
.
endAllotTime
=
endAllotTime
;
}
public
String
getUserName
()
{
return
userName
;
}
public
void
setUserName
(
String
userName
)
{
this
.
userName
=
userName
;
}
public
Long
getActualInspector
()
{
return
actualInspector
;
}
public
void
setActualInspector
(
Long
actualInspector
)
{
this
.
actualInspector
=
actualInspector
;
}
public
Date
getActualTime
()
{
return
actualTime
;
}
public
void
setActualTime
(
Date
actualTime
)
{
this
.
actualTime
=
actualTime
;
}
}
gassafety-system/src/main/java/com/zehong/system/domain/vo/WorkOrderVo.java
View file @
e2ccb136
...
...
@@ -36,6 +36,9 @@ public class WorkOrderVo extends BaseEntity
/** 设备编号 */
private
String
deviceCodes
;
/** 设备名称 */
private
String
deviceName
;
/** 设备列表 */
private
List
<
TDeviceInfo
>
deviceInfoList
;
...
...
@@ -150,6 +153,14 @@ public class WorkOrderVo extends BaseEntity
this
.
deviceCodes
=
deviceCodes
;
}
public
String
getDeviceName
()
{
return
deviceName
;
}
public
void
setDeviceName
(
String
deviceName
)
{
this
.
deviceName
=
deviceName
;
}
public
List
<
TDeviceInfo
>
getDeviceInfoList
()
{
return
deviceInfoList
;
}
...
...
gassafety-system/src/main/java/com/zehong/system/mapper/SysUserMapper.java
View file @
e2ccb136
...
...
@@ -19,6 +19,14 @@ public interface SysUserMapper
*/
public
List
<
SysUser
>
selectUserList
(
SysUser
sysUser
);
/**
* 查询巡检员列表
*
* @param
* @return 用户信息集合信息
*/
public
List
<
SysUser
>
selectInspectorList
();
/**
* 通过用户名查询用户
*
...
...
gassafety-system/src/main/java/com/zehong/system/mapper/TWorkOrderMapper.java
View file @
e2ccb136
...
...
@@ -2,6 +2,7 @@ package com.zehong.system.mapper;
import
java.util.List
;
import
com.zehong.system.domain.TWorkOrder
;
import
com.zehong.system.domain.form.TWorkOrderForm
;
/**
* 工单基础信息Mapper接口
...
...
@@ -32,7 +33,7 @@ public interface TWorkOrderMapper
* @param tWorkOrder 工单基础信息
* @return 工单基础信息集合
*/
public
List
<
TWorkOrder
>
selectTWorkOrderList
(
TWorkOrder
tWorkOrder
);
public
List
<
TWorkOrder
>
selectTWorkOrderList
(
TWorkOrder
Form
tWorkOrderForm
);
/**
* 新增工单基础信息
...
...
gassafety-system/src/main/java/com/zehong/system/service/ISysUserService.java
View file @
e2ccb136
...
...
@@ -18,6 +18,14 @@ public interface ISysUserService
*/
public
List
<
SysUser
>
selectUserList
(
SysUser
user
);
/**
* 查询巡检员列表
*
* @param
* @return 用户信息集合信息
*/
public
List
<
SysUser
>
selectInspectorList
();
/**
* 通过用户名查询用户
*
...
...
gassafety-system/src/main/java/com/zehong/system/service/ITDeviceInfoService.java
View file @
e2ccb136
...
...
@@ -3,6 +3,8 @@ package com.zehong.system.service;
import
java.util.List
;
import
java.util.Map
;
import
com.zehong.common.core.domain.TreeSelect
;
import
com.zehong.common.core.domain.entity.SysDept
;
import
com.zehong.system.domain.TDeviceInfo
;
/**
...
...
@@ -29,6 +31,14 @@ public interface ITDeviceInfoService
*/
public
List
<
TDeviceInfo
>
selectTDeviceInfoList
(
TDeviceInfo
tDeviceInfo
);
/**
* 构建前端所需要下拉树结构
*
* @param deviceInfoList 设备列表
* @return 下拉树结构列表
*/
public
List
<
Map
<
Object
,
Object
>>
buildDeviceTreeSelect
(
List
<
TDeviceInfo
>
deviceInfoList
);
/**
* 统计各设备类型的设备总数
* @return
...
...
gassafety-system/src/main/java/com/zehong/system/service/ITWorkOrderService.java
View file @
e2ccb136
...
...
@@ -2,6 +2,7 @@ package com.zehong.system.service;
import
java.util.List
;
import
com.zehong.system.domain.TWorkOrder
;
import
com.zehong.system.domain.form.TWorkOrderForm
;
import
com.zehong.system.domain.vo.WorkOrderVo
;
/**
...
...
@@ -24,10 +25,10 @@ public interface ITWorkOrderService
/**
* 查询工单基础信息列表
*
* @param tWorkOrder
工单基础信息
* @param tWorkOrder
Form 工单基础信息表单
* @return 工单基础信息集合
*/
public
List
<
WorkOrderVo
>
selectTWorkOrderList
(
TWorkOrder
tWorkOrder
)
throws
Exception
;
public
List
<
WorkOrderVo
>
selectTWorkOrderList
(
TWorkOrder
Form
tWorkOrderForm
)
throws
Exception
;
/**
* 新增工单基础信息
...
...
gassafety-system/src/main/java/com/zehong/system/service/impl/SysUserServiceImpl.java
View file @
e2ccb136
...
...
@@ -66,6 +66,18 @@ public class SysUserServiceImpl implements ISysUserService
return
userMapper
.
selectUserList
(
user
);
}
/**
* 查询巡检员列表
*
* @param
* @return 用户信息集合信息
*/
@Override
public
List
<
SysUser
>
selectInspectorList
()
{
return
userMapper
.
selectInspectorList
();
}
/**
* 通过用户名查询用户
*
...
...
gassafety-system/src/main/java/com/zehong/system/service/impl/TDeviceInfoServiceImpl.java
View file @
e2ccb136
package
com
.
zehong
.
system
.
service
.
impl
;
import
java.util.
List
;
import
java.util.
Map
;
import
java.util.
*
;
import
java.util.
stream.Collectors
;
import
com.zehong.common.core.domain.TreeSelect
;
import
com.zehong.common.core.domain.entity.SysDept
;
import
org.springframework.beans.factory.annotation.Autowired
;
import
org.springframework.stereotype.Service
;
import
com.zehong.system.mapper.TDeviceInfoMapper
;
import
com.zehong.system.domain.TDeviceInfo
;
import
com.zehong.system.service.ITDeviceInfoService
;
import
org.springframework.web.bind.annotation.RequestParam
;
/**
* 设备信息Service业务层处理
...
...
@@ -45,6 +48,28 @@ public class TDeviceInfoServiceImpl implements ITDeviceInfoService
return
tDeviceInfoMapper
.
selectTDeviceInfoList
(
tDeviceInfo
);
}
/**
* 构建前端所需要下拉树结构
*
* @param deviceInfoList 部门列表
* @return 下拉树结构列表
*/
@Override
public
List
<
Map
<
Object
,
Object
>>
buildDeviceTreeSelect
(
List
<
TDeviceInfo
>
deviceInfoList
)
{
List
<
Map
<
Object
,
Object
>>
list
=
new
ArrayList
<>();
for
(
TDeviceInfo
deviceInfo
:
deviceInfoList
)
{
Map
<
Object
,
Object
>
map
=
new
HashMap
<>();
map
.
put
(
"id"
,
deviceInfo
.
getDeviceId
());
map
.
put
(
"label"
,
deviceInfo
.
getDeviceName
());
list
.
add
(
map
);
}
return
list
;
}
/**
* 统计各设备类型的设备总数
* @return
...
...
gassafety-system/src/main/java/com/zehong/system/service/impl/TOrderFeedbackServiceImpl.java
View file @
e2ccb136
...
...
@@ -2,6 +2,7 @@ package com.zehong.system.service.impl;
import
java.util.List
;
import
com.zehong.common.utils.DateUtils
;
import
com.zehong.system.domain.*
;
import
com.zehong.system.mapper.*
;
import
org.springframework.beans.factory.annotation.Autowired
;
...
...
@@ -78,18 +79,18 @@ public class TOrderFeedbackServiceImpl implements ITOrderFeedbackService
trouble
.
setDealStatus
(
dealStatus
);
tHiddenTroubleMapper
.
updateTHiddenTrouble
(
trouble
);
}
else
{
}
else
if
(
"3"
.
equals
(
orderType
))
{
TDeviceAlarm
alarm
=
tDeviceAlarmMapper
.
selectTDeviceAlarmById
(
order
.
getResourceId
());
alarm
.
setDealStatus
(
dealStatus
);
tDeviceAlarmMapper
.
updateTDeviceAlarm
(
alarm
);
}
// 如果工单状态是
进行中
,修改状态为已反馈
if
(
"
2
"
.
equals
(
order
.
getOrderStatus
())){
order
.
setOrderStatus
(
"
3
"
);
// 如果工单状态是
已接收
,修改状态为已反馈
if
(
"
1
"
.
equals
(
order
.
getOrderStatus
())){
order
.
setOrderStatus
(
"
2
"
);
tWorkOrderMapper
.
updateTWorkOrder
(
order
);
}
tOrderFeedback
.
setFeedbackTime
(
DateUtils
.
getNowDate
());
return
tOrderFeedbackMapper
.
insertTOrderFeedback
(
tOrderFeedback
);
}
...
...
gassafety-system/src/main/java/com/zehong/system/service/impl/TWorkOrderServiceImpl.java
View file @
e2ccb136
...
...
@@ -6,6 +6,7 @@ import java.util.List;
import
com.zehong.common.core.domain.entity.SysUser
;
import
com.zehong.common.utils.DateUtils
;
import
com.zehong.system.domain.*
;
import
com.zehong.system.domain.form.TWorkOrderForm
;
import
com.zehong.system.domain.vo.WorkOrderVo
;
import
com.zehong.system.mapper.*
;
import
org.springframework.beans.BeanUtils
;
...
...
@@ -107,6 +108,7 @@ public class TWorkOrderServiceImpl implements ITWorkOrderService
String
deviceCode
=
trouble
.
getDeviceCode
();
TDeviceInfo
device
=
tDeviceInfoMapper
.
selectTDeviceInfoByCode
(
deviceCode
);
if
(
device
!=
null
){
workOrderVo
.
setDeviceName
(
device
.
getDeviceName
());
deviceInfoList
.
add
(
device
);
}
...
...
@@ -128,6 +130,7 @@ public class TWorkOrderServiceImpl implements ITWorkOrderService
workOrderVo
.
setLongitude
(
device
.
getLongitude
());
workOrderVo
.
setLatitude
(
device
.
getLatitude
());
workOrderVo
.
setDeviceType
(
device
.
getDeviceType
());
workOrderVo
.
setDeviceName
(
device
.
getDeviceName
());
workOrderVo
.
setAddress
(
device
.
getDeviceAddr
());
deviceInfoList
.
add
(
device
);
}
...
...
@@ -152,14 +155,14 @@ public class TWorkOrderServiceImpl implements ITWorkOrderService
/**
* 查询工单基础信息列表
*
* @param tWorkOrder 工单基础信息
* @param tWorkOrder
Form
工单基础信息
* @return 工单基础信息
*/
@Override
public
List
<
WorkOrderVo
>
selectTWorkOrderList
(
TWorkOrder
tWorkOrder
)
throws
Exception
public
List
<
WorkOrderVo
>
selectTWorkOrderList
(
TWorkOrder
Form
tWorkOrderForm
)
throws
Exception
{
List
<
WorkOrderVo
>
workOrderVoList
=
new
ArrayList
<
WorkOrderVo
>();
List
<
TWorkOrder
>
workOrderList
=
tWorkOrderMapper
.
selectTWorkOrderList
(
tWorkOrder
);
List
<
TWorkOrder
>
workOrderList
=
tWorkOrderMapper
.
selectTWorkOrderList
(
tWorkOrder
Form
);
if
(
workOrderList
.
size
()
!=
0
){
...
...
@@ -172,7 +175,7 @@ public class TWorkOrderServiceImpl implements ITWorkOrderService
workOrderVo
.
setAppointInspectorName
(
appointInspector
.
getNickName
());
if
(
workOrder
.
getActualInspector
()
!=
workOrder
.
getAppointInspector
()
&&
workOrder
.
getActualInspector
()
!=
null
){
SysUser
actualInspector
=
sysUserMapper
.
selectUserById
(
tW
orkOrder
.
getActualInspector
());
SysUser
actualInspector
=
sysUserMapper
.
selectUserById
(
w
orkOrder
.
getActualInspector
());
workOrderVo
.
setActualInspectorName
(
actualInspector
.
getNickName
());
}
else
{
workOrderVo
.
setActualInspectorName
(
appointInspector
.
getNickName
());
...
...
@@ -237,8 +240,7 @@ public class TWorkOrderServiceImpl implements ITWorkOrderService
{
if
(
"1"
.
equals
(
tWorkOrder
.
getOrderStatus
())){
TWorkOrder
order
=
tWorkOrderMapper
.
selectTWorkOrderById
(
tWorkOrder
.
getOrderId
());
int
planId
=
order
.
getResourceId
();
int
planId
=
tWorkOrder
.
getResourceId
();
// 修改巡检计划状态为进行中
TInspectionPlan
plan
=
new
TInspectionPlan
();
plan
.
setPlanId
(
planId
);
...
...
@@ -246,10 +248,11 @@ public class TWorkOrderServiceImpl implements ITWorkOrderService
plan
.
setUpdateTime
(
DateUtils
.
getNowDate
());
tInspectionPlanMapper
.
updateTInspectionPlan
(
plan
);
}
else
if
(
"4"
.
equals
(
tWorkOrder
.
getOrderStatus
())){
tWorkOrder
.
setActualTime
(
DateUtils
.
getNowDate
());
}
else
if
(
"3"
.
equals
(
tWorkOrder
.
getOrderStatus
())){
TWorkOrder
order
=
tWorkOrderMapper
.
selectTWorkOrderById
(
tWorkOrder
.
getOrderId
());
int
planId
=
order
.
getResourceId
();
int
planId
=
tWorkOrder
.
getResourceId
();
// 修改巡检计划状态为已完成
TInspectionPlan
plan
=
new
TInspectionPlan
();
plan
.
setPlanId
(
planId
);
...
...
@@ -257,8 +260,9 @@ public class TWorkOrderServiceImpl implements ITWorkOrderService
plan
.
setUpdateTime
(
DateUtils
.
getNowDate
());
tInspectionPlanMapper
.
updateTInspectionPlan
(
plan
);
}
}
else
if
(
"0"
.
equals
(
tWorkOrder
.
getOrderStatus
())){
tWorkOrder
.
setUpdateTime
(
DateUtils
.
getNowDate
());
}
return
tWorkOrderMapper
.
updateTWorkOrder
(
tWorkOrder
);
}
...
...
gassafety-system/src/main/resources/mapper/system/SysUserMapper.xml
View file @
e2ccb136
...
...
@@ -91,6 +91,11 @@ PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN"
where u.user_id = #{userId}
</select>
<select
id=
"selectInspectorList"
resultMap=
"SysUserResult"
>
<include
refid=
"selectUserVo"
/>
where u.del_flag = '0' and r.role_id = 102
</select>
<select
id=
"checkUserNameUnique"
parameterType=
"String"
resultType=
"int"
>
select count(1) from sys_user where user_name = #{userName} limit 1
</select>
...
...
gassafety-system/src/main/resources/mapper/system/TOrderFeedbackMapper.xml
View file @
e2ccb136
...
...
@@ -52,7 +52,6 @@ PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN"
<insert
id=
"insertTOrderFeedback"
parameterType=
"TOrderFeedback"
>
insert into t_order_feedback
<trim
prefix=
"("
suffix=
")"
suffixOverrides=
","
>
<if
test=
"feedbackId != null"
>
feedback_id,
</if>
<if
test=
"orderId != null"
>
order_id,
</if>
<if
test=
"deviceCode != null"
>
device_code,
</if>
<if
test=
"contents != null"
>
contents,
</if>
...
...
@@ -65,7 +64,6 @@ PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN"
<if
test=
"remarks != null"
>
remarks,
</if>
</trim>
<trim
prefix=
"values ("
suffix=
")"
suffixOverrides=
","
>
<if
test=
"feedbackId != null"
>
#{feedbackId},
</if>
<if
test=
"orderId != null"
>
#{orderId},
</if>
<if
test=
"deviceCode != null"
>
#{deviceCode},
</if>
<if
test=
"contents != null"
>
#{contents},
</if>
...
...
gassafety-system/src/main/resources/mapper/system/TWorkOrderMapper.xml
View file @
e2ccb136
...
...
@@ -23,26 +23,28 @@ PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN"
</select>
<sql
id=
"selectTWorkOrderVo"
>
select order_id, order_type, resource_id, order_name, order_status, update_time, appoint_inspector, allot_time, actual_inspector, actual_time, remarks from t_work_order
select t.order_id, t.order_type, t.resource_id, t.order_name, t.order_status, t.update_time, t.appoint_inspector, t.allot_time, t.actual_inspector, t.actual_time, t.remarks
from t_work_order t
left join sys_user s on t.appoint_inspector = s.user_id
</sql>
<select
id=
"selectTWorkOrderList"
parameterType=
"TWorkOrder"
resultMap=
"TWorkOrderResult"
>
<select
id=
"selectTWorkOrderList"
parameterType=
"TWorkOrder
Form
"
resultMap=
"TWorkOrderResult"
>
<include
refid=
"selectTWorkOrderVo"
/>
<where>
<if
test=
"order
Type != null and orderType != ''"
>
and order_type = #{orderType}
</if>
<if
test=
"order
Name != null and orderName != ''"
>
and order_name like concat('%', #{orderName}, '%')
</if>
<if
test=
"order
Status != null and orderStatus != ''"
>
and order_status = #{orderStatus}
</if>
<if
test=
"
appointInspector != null "
>
and appoint_inspector = #{appointInspector
}
</if>
<if
test=
"a
llotTime != null "
>
and allot_time = #{allotTime
}
</if>
<if
test=
"
actualInspector != null "
>
and actual_inspector = #{actualInspector
}
</if>
<if
test=
"
actualTime != null "
>
and actual_time = #{actual
Time}
</if>
<if
test=
"
remarks != null and remarks != ''"
>
and remarks = #{remarks
}
</if>
<if
test=
"order
Id != null and orderId != ''"
>
and t.order_id like concat('%',#{orderId},'%')
</if>
<if
test=
"order
Type != null and orderType != ''"
>
and t.order_type = #{orderType}
</if>
<if
test=
"order
Name != null and orderName != ''"
>
and t.order_name like concat('%', #{orderName}, '%')
</if>
<if
test=
"
orderStatus != null and orderStatus != ''"
>
and t.order_status = #{orderStatus
}
</if>
<if
test=
"a
ppointInspector != null "
>
and t.appoint_inspector = #{appointInspector
}
</if>
<if
test=
"
startAllotTime != null "
>
and t.allot_time
>
= #{startAllotTime
}
</if>
<if
test=
"
endAllotTime != null "
>
and t.allot_time
<
= #{endAllot
Time}
</if>
<if
test=
"
userName != null and userName != ''"
>
and s.user_name = #{userName
}
</if>
</where>
</select>
<select
id=
"selectTWorkOrderById"
parameterType=
"String"
resultMap=
"TWorkOrderResult"
>
<include
refid=
"selectTWorkOrderVo"
/>
where order_id = #{orderId}
where
t.
order_id = #{orderId}
</select>
<insert
id=
"insertTWorkOrder"
parameterType=
"TWorkOrder"
>
...
...
gassafety-web/src/api/device/deviceInfo.js
View file @
e2ccb136
...
...
@@ -62,9 +62,19 @@ export function exportDeviceInfo(query) {
}
// 统计各设备类型的设备总数
export
function
countDeviceByType
(){
export
function
countDeviceByType
()
{
return
request
({
url
:
'/device/deviceInfo/countDeviceByType'
,
method
:
'get'
})
}
// 查询设备下拉树结构
export
function
deviceTree
(
data
)
{
return
request
({
url
:
'/device/deviceInfo/deviceTree'
,
method
:
'put'
,
data
:
data
})
}
gassafety-web/src/api/system/user.js
View file @
e2ccb136
...
...
@@ -10,6 +10,15 @@ export function listUser(query) {
})
}
// 查询巡检员列表
export
function
inspectorList
(
query
)
{
return
request
({
url
:
'/system/user/inspectorList'
,
method
:
'get'
,
params
:
query
})
}
// 查询用户详细
export
function
getUser
(
userId
)
{
return
request
({
...
...
gassafety-web/src/components/FileUpload/index.vue
View file @
e2ccb136
...
...
@@ -4,28 +4,38 @@
:action=
"uploadFileUrl"
:before-upload=
"handleBeforeUpload"
:file-list=
"fileArr"
:limit=
"1"
:limit=
"3"
:list-type=
"listType"
:on-error=
"handleUploadError"
:on-exceed=
"handleExceed"
:on-success=
"handleUploadSuccess"
:on-remove=
"handleRemove"
:on-preview=
"handleFileClick"
:show-file-list=
"true"
:headers=
"headers"
class=
"upload-file-uploader"
ref=
"upload"
>
<!-- 上传按钮 -->
<el-button
size=
"mini"
type=
"primary"
>
选取文件
</el-button>
<!--
<el-button
size=
"mini"
icon=
""
type=
"primary"
></el-button>
-->
<i
class=
"el-icon-plus"
></i>
<!-- 上传提示 -->
<div
class=
"el-upload__tip"
slot=
"tip"
v-if=
"showTip"
>
请上传
<template
v-if=
"fileSize"
>
大小不超过
<b
style=
"color: #f56c6c"
>
{{
fileSize
}}
MB
</b>
</
template
>
<
template
v-if=
"fileType"
>
格式为
<b
style=
"color: #f56c6c"
>
{{
fileType
.
join
(
"/"
)
}}
</b>
</
template
>
<template
v-if=
"fileSize"
>
大小不超过
<b
style=
"color: #f56c6c"
>
{{
fileSize
}}
MB
</b>
</
template
>
<
template
v-if=
"fileType"
>
格式为
<b
style=
"color: #f56c6c"
>
{{
fileType
.
join
(
"/"
)
}}
</b>
</
template
>
的文件
</div>
</el-upload>
<el-dialog
:modal=
"modal"
:visible
.
sync=
"dialogVisible"
>
<img
width=
"100%"
:src=
"dialogImageUrl"
alt=
""
/>
</el-dialog>
<!-- 文件列表 -->
<transition-group
class=
"upload-file-list el-upload-list el-upload-list--text"
name=
"el-fade-in-linear"
tag=
"ul"
>
<
!-- <
transition-group class="upload-file-list el-upload-list el-upload-list--text" name="el-fade-in-linear" tag="ul">
<li :key="file.uid" class="el-upload-list__item ele-upload-list__item-content" v-for="(file, index) in list">
<el-link :href="file.url" :underline="false" target="_blank">
<span class="el-icon-document"> {{ getFileName(file.name) }} </span>
...
...
@@ -34,17 +44,21 @@
<el-link :underline="false" @click="handleDelete(index)" type="danger">删除</el-link>
</div>
</li>
</transition-group>
</transition-group>
-->
</div>
</template>
<
script
>
import
{
getToken
}
from
"@/utils/auth"
;
import
{
getToken
}
from
"@/utils/auth"
;
export
default
{
export
default
{
props
:
{
// 值
value
:
[
String
,
Object
,
Array
],
listType
:
{
type
:
String
,
defaule
:
"text"
,
},
// 大小限制(MB)
fileSize
:
{
type
:
Number
,
...
...
@@ -57,13 +71,13 @@ export default {
// 文件类型, 例如['png', 'jpg', 'jpeg']
fileType
:
{
type
:
Array
,
default
:
()
=>
[
"doc"
,
"xls"
,
"ppt"
,
"txt"
,
"pdf"
,
'png'
,
'jpg'
,
'jpeg'
],
default
:
()
=>
[
"doc"
,
"xls"
,
"ppt"
,
"txt"
,
"pdf"
,
"png"
,
"jpg"
,
"jpeg"
],
},
// 是否显示提示
isShowTip
:
{
type
:
Boolean
,
default
:
false
}
default
:
false
,
},
},
data
()
{
return
{
...
...
@@ -72,6 +86,9 @@ export default {
Authorization
:
"Bearer "
+
getToken
(),
},
fileList
:
[],
modal
:
false
,
dialogVisible
:
false
,
dialogImageUrl
:
""
,
};
},
computed
:
{
...
...
@@ -114,7 +131,9 @@ export default {
return
false
;
});
if
(
!
isTypeOk
)
{
this
.
$message
.
error
(
`文件格式不正确, 请上传
${
this
.
fileType
.
join
(
"/"
)}
格式文件!`
);
this
.
$message
.
error
(
`文件格式不正确, 请上传
${
this
.
fileType
.
join
(
"/"
)}
格式文件!`
);
return
false
;
}
}
...
...
@@ -130,7 +149,7 @@ export default {
},
// 文件个数超出
handleExceed
()
{
this
.
$message
.
error
(
`只允许上传单个文件
`
);
this
.
$message
.
error
(
`只允许上传三张照片
`
);
},
// 上传失败
handleUploadError
(
err
)
{
...
...
@@ -141,10 +160,15 @@ export default {
this
.
$message
.
success
(
"上传成功"
);
this
.
$emit
(
"resFun"
,
res
);
},
// 文件列表移除文件
handleRemove
(
file
,
fileList
)
{
console
.
log
(
"列表移除"
,
file
,
fileList
);
this
.
$emit
(
"remove"
,
file
);
},
// 删除文件
handleDelete
(
index
)
{
this
.
fileList
.
splice
(
index
,
1
);
this
.
$emit
(
"input"
,
''
);
this
.
$emit
(
"input"
,
""
);
// let that = this,
// param;
// param = file.response ? file.response.fileName.replace(/\\/g, "%")
...
...
@@ -160,6 +184,11 @@ export default {
// }
// });
},
handleFileClick
(
file
)
{
this
.
dialogImageUrl
=
file
.
response
.
url
;
this
.
dialogVisible
=
true
;
console
.
log
(
file
);
},
// 获取文件名称
getFileName
(
name
)
{
if
(
name
.
lastIndexOf
(
"/"
)
>
-
1
)
{
...
...
@@ -167,31 +196,31 @@ export default {
}
else
{
return
""
;
}
}
},
},
created
()
{
// this.fileList = this.list;
},
};
};
</
script
>
<
style
scoped
lang=
"scss"
>
.upload-file-uploader
{
.upload-file-uploader
{
margin-bottom
:
5px
;
}
.upload-file-list
.el-upload-list__item
{
}
.upload-file-list
.el-upload-list__item
{
border
:
1px
solid
#e4e7ed
;
line-height
:
2
;
margin-bottom
:
10px
;
position
:
relative
;
}
.upload-file-list
.ele-upload-list__item-content
{
}
.upload-file-list
.ele-upload-list__item-content
{
display
:
flex
;
justify-content
:
space-between
;
align-items
:
center
;
color
:
inherit
;
}
.ele-upload-list__item-content-action
.el-link
{
}
.ele-upload-list__item-content-action
.el-link
{
margin-right
:
10px
;
}
}
</
style
>
gassafety-web/src/views/dataMonitoring/deviceAlarm/index.vue
View file @
e2ccb136
This diff is collapsed.
Click to expand it.
gassafety-web/src/views/workOrder/basicsInfo/detail.vue
View file @
e2ccb136
...
...
@@ -7,7 +7,7 @@
<el-steps
:active=
"active"
finish-status=
"success"
simple
prop=
"orderStatus"
style=
"margin-top: 20px"
>
<el-step
title=
"未接收"
></el-step>
<el-step
title=
"已接收"
></el-step>
<el-step
title=
"进行中"
></el-step
>
<!--
<el-step
title=
"进行中"
></el-step>
--
>
<el-step
title=
"已反馈"
></el-step>
<el-step
title=
"已归档"
></el-step>
</el-steps>
...
...
@@ -33,9 +33,8 @@
<el-form-item
label=
"工单状态:"
prop=
"orderStatus"
>
<font
v-if=
"form.orderStatus == 0"
>
未接收
</font>
<font
v-if=
"form.orderStatus == 1"
>
已接收
</font>
<font
v-if=
"form.orderStatus == 2"
>
进行中
</font>
<font
v-if=
"form.orderStatus == 3"
>
已反馈
</font>
<font
v-if=
"form.orderStatus == 4"
>
已归档
</font>
<font
v-if=
"form.orderStatus == 2"
>
已反馈
</font>
<font
v-if=
"form.orderStatus == 3"
>
已归档
</font>
</el-form-item>
<el-form-item
label=
"指定执行人员:"
prop=
"appointInspectorName"
>
<font>
{{
form
.
appointInspectorName
}}
</font>
...
...
@@ -52,8 +51,16 @@
<font
v-if=
"form.deviceType == 3"
>
流量计
</font>
<font
v-if=
"form.deviceType == 4"
>
压力表
</font>
</el-form-item>
<el-form-item
label=
"设备编号:"
prop=
"deviceCodes"
>
<font>
{{
form
.
deviceCodes
}}
</font>
<el-form-item
label=
"设备名称:"
prop=
"deviceName"
>
<font
v-if=
"form.orderType != 1"
>
{{
form
.
deviceName
}}
</font>
<el-tree
:data=
"deviceOptions"
:props=
"defaultProps"
:expand-on-click-node=
"false"
ref=
"tree"
@
node-click=
"handleNodeClick"
v-if=
"form.orderType == 1"
/>
</el-form-item>
<el-form-item
label=
"设备位置:"
v-if=
"form.orderType != 1"
>
<font>
{{
form
.
address
}}
</font>
...
...
@@ -95,46 +102,12 @@
<ul><li>
反馈信息
</li></ul>
</div>
<div
style=
"width: 95%;float: left;"
>
<!--
<el-upload
style=
"float: left;"
action=
"#"
list-type=
"picture-card"
:auto-upload=
"false"
>
<i
slot=
"default"
class=
"el-icon-plus"
></i>
<div
slot=
"file"
slot-scope=
"
{file}">
<img
class=
"el-upload-list__item-thumbnail"
:src=
"file.url"
alt=
""
>
<span
class=
"el-upload-list__item-actions"
>
<span
class=
"el-upload-list__item-preview"
@
click=
"handlePictureCardPreview(file)"
>
<i
class=
"el-icon-zoom-in"
></i>
</span>
<span
v-if=
"!disabled"
class=
"el-upload-list__item-delete"
@
click=
"handleDownload(file)"
>
<i
class=
"el-icon-download"
></i>
</span>
<span
v-if=
"!disabled"
class=
"el-upload-list__item-delete"
@
click=
"handleRemove(file)"
>
<i
class=
"el-icon-delete"
></i>
</span>
</span>
</div>
</el-upload>
-->
<div
style=
"float: left;margin-left: 50px;"
>
<el-image
:src=
"form.pictureUrl1"
fit=
"cover"
v-if=
"form.pictureUrl1 != null
"
style=
"width: 100px;height: 100px;"
>
<el-image
:src=
"form.pictureUrl1"
fit=
"cover"
v-if=
"form.pictureUrl1 != null && form.pictureUrl1 != ''
"
style=
"width: 100px;height: 100px;"
>
</el-image>
<el-image
:src=
"form.pictureUrl2"
fit=
"cover"
v-if=
"form.pictureUrl2 != null
"
style=
"width: 100px;height: 100px;"
>
<el-image
:src=
"form.pictureUrl2"
fit=
"cover"
v-if=
"form.pictureUrl2 != null && form.pictureUrl2 != ''
"
style=
"width: 100px;height: 100px;"
>
</el-image>
<el-image
:src=
"form.pictureUrl3"
fit=
"cover"
v-if=
"form.pictureUrl3 != null
"
style=
"width: 100px;height: 100px;"
>
<el-image
:src=
"form.pictureUrl3"
fit=
"cover"
v-if=
"form.pictureUrl3 != null && form.pictureUrl3 != ''
"
style=
"width: 100px;height: 100px;"
>
</el-image>
</div>
<el-form
ref=
"form"
v-model=
"form"
:rules=
"rules"
label-width=
"100px"
style=
"float: left;margin-left: 50px;"
>
...
...
@@ -169,8 +142,10 @@
<
script
>
import
{
listBasicsInfo
,
getBasicsInfo
,
delBasicsInfo
,
addBasicsInfo
,
updateBasicsInfo
,
exportBasicsInfo
}
from
"@/api/workOrder/basicsInfo"
;
import
gaodeMap
from
"utils/gaodeMap.js"
import
{
map
,
DEVICE_TYPE
}
from
"utils/gaodeMap.js"
import
{
deviceTree
}
from
"@/api/device/deviceInfo"
;
import
gaodeMap
from
"utils/gaodeMap.js"
;
import
{
map
,
DEVICE_TYPE
}
from
"utils/gaodeMap.js"
;
export
default
{
name
:
"BasicsInfo"
,
components
:
{
...
...
@@ -206,6 +181,17 @@ export default {
pickerOptions
:[],
// 工单类型字典
ordertypeOptions
:
[],
// 设备树选项
deviceOptions
:
[
{
label
:
"设备列表"
,
childList
:
[]
}
],
defaultProps
:
{
children
:
"childList"
,
label
:
"label"
},
// 查询参数
queryParams
:
{
pageNum
:
1
,
...
...
@@ -232,7 +218,6 @@ export default {
// 如果是跳转来的,则接受初始化参数
// this.user_id = this.$route.query.id; //详细信息页接收参数
this
.
orderId
=
this
.
$route
.
query
.
orderId
;
this
.
getList
();
this
.
getDicts
(
"t_order_status"
).
then
(
response
=>
{
this
.
typeOptions
=
response
.
data
;
...
...
@@ -270,7 +255,6 @@ export default {
getBasicsInfo
(){
getBasicsInfo
(
this
.
orderId
).
then
(
response
=>
{
this
.
form
=
response
.
data
;
console
.
log
(
response
.
data
,
"fdsfdsa======"
)
this
.
active
=
parseInt
(
response
.
data
.
orderStatus
)
+
1
;
if
(
this
.
form
.
deviceInfoList
.
length
>
0
){
this
.
gaoMap
.
resetMapCenter
([
this
.
form
.
deviceInfoList
[
0
].
longitude
,
this
.
form
.
deviceInfoList
[
0
].
latitude
]);
...
...
@@ -278,9 +262,25 @@ export default {
for
(
var
i
=
0
;
i
<
this
.
form
.
deviceInfoList
.
length
;
i
++
){
let
obj
=
this
.
form
.
deviceInfoList
[
i
];
this
.
gaoMap
.
addMarker
(
DEVICE_TYPE
.
WORKORDER
,
obj
)
}
if
(
this
.
form
.
orderType
==
'1'
)
{
// 获取设备列表树
let
data
=
this
.
form
.
deviceInfoList
;
console
.
log
(
data
,
"===="
);
deviceTree
(
data
).
then
(
response
=>
{
this
.
deviceOptions
[
0
].
childList
=
response
.
data
;
});
}
});
},
// 筛选节点
// filterNode(value, data) {
// if (!value) return true;
// return data.label.indexOf(value) !== -1;
// },
// 节点单击事件
handleNodeClick
(
data
)
{
},
// 取消按钮
...
...
gassafety-web/src/views/workOrder/basicsInfo/index.vue
View file @
e2ccb136
This diff is collapsed.
Click to expand it.
gassafety-web/src/views/workOrder/feedback/index.vue
View file @
e2ccb136
This diff is collapsed.
Click to expand it.
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