Skip to content
Projects
Groups
Snippets
Help
This project
Loading...
Sign in / Register
Toggle navigation
A
amos-boot-biz
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
项目统一框架
amos-boot-biz
Commits
5ff596b7
Commit
5ff596b7
authored
Aug 06, 2021
by
kongfm
Browse files
Options
Browse Files
Download
Email Patches
Plain Diff
困人救援/ 故障维修/ 投诉建议 反馈信息查询以及添加修改 接口
parent
537f89d5
Hide whitespace changes
Inline
Side-by-side
Showing
8 changed files
with
1014 additions
and
87 deletions
+1014
-87
DispatchConsultFeedbackDto.java
...s/boot/module/tzs/api/dto/DispatchConsultFeedbackDto.java
+84
-0
DispatchPaperUpdateDto.java
.../amos/boot/module/tzs/api/dto/DispatchPaperUpdateDto.java
+0
-41
DispatchRepairFeedbackDto.java
...os/boot/module/tzs/api/dto/DispatchRepairFeedbackDto.java
+85
-0
DispatchSaveFeedbackDto.java
...amos/boot/module/tzs/api/dto/DispatchSaveFeedbackDto.java
+79
-0
IDispatchPaperService.java
...os/boot/module/tzs/api/service/IDispatchPaperService.java
+52
-2
DispatchPaperController.java
...ot/module/tzs/biz/controller/DispatchPaperController.java
+90
-18
DispatchPaperServiceImpl.java
...module/tzs/biz/service/impl/DispatchPaperServiceImpl.java
+567
-9
DispatchTaskServiceImpl.java
.../module/tzs/biz/service/impl/DispatchTaskServiceImpl.java
+57
-17
No files found.
amos-boot-module/amos-boot-module-api/amos-boot-module-tzs-api/src/main/java/com/yeejoin/amos/boot/module/tzs/api/dto/DispatchConsultFeedbackDto.java
0 → 100644
View file @
5ff596b7
package
com
.
yeejoin
.
amos
.
boot
.
module
.
tzs
.
api
.
dto
;
import
com.yeejoin.amos.boot.biz.common.dto.BaseDto
;
import
io.swagger.annotations.ApiModel
;
import
io.swagger.annotations.ApiModelProperty
;
import
lombok.Data
;
import
lombok.EqualsAndHashCode
;
import
java.util.Date
;
/**
* 投诉回访DTO
*/
@Data
@EqualsAndHashCode
(
callSuper
=
true
)
@ApiModel
(
value
=
"DispatchConsultFeedbackDto"
,
description
=
"投诉回访DTO"
)
public
class
DispatchConsultFeedbackDto
extends
BaseDto
{
private
static
final
long
serialVersionUID
=
1L
;
@ApiModelProperty
(
value
=
"警情id"
)
private
Long
alertId
;
@ApiModelProperty
(
value
=
"投诉人"
)
private
String
emergency
;
@ApiModelProperty
(
value
=
"投诉人电话"
)
private
String
emergencyCall
;
@ApiModelProperty
(
value
=
"投诉反馈方式"
)
private
String
consultFeedbackType
;
@ApiModelProperty
(
value
=
"投诉反馈结果"
)
private
String
feedbackResult
;
@ApiModelProperty
(
value
=
"投诉回访时间"
)
private
Date
consultFeedbackTime
;
@ApiModelProperty
(
value
=
"投诉回访人"
)
private
String
consultFeedbackUname
;
@ApiModelProperty
(
value
=
"投诉回访人Id"
)
private
String
consultFeedbackUid
;
@ApiModelProperty
(
value
=
"响应人"
)
private
String
responseUserName
;
@ApiModelProperty
(
value
=
"响应人电话"
)
private
String
responseUserTel
;
@ApiModelProperty
(
value
=
"维修反馈方式Code"
)
private
String
feedbackCode
;
@ApiModelProperty
(
value
=
"维修反馈方式"
)
private
String
feedbackType
;
@ApiModelProperty
(
value
=
"处置结果"
)
private
String
actionResult
;
@ApiModelProperty
(
value
=
"回访时间"
)
private
Date
feedbackTime
;
@ApiModelProperty
(
value
=
"维保反馈人id"
)
private
String
feedbackUid
;
@ApiModelProperty
(
value
=
"维保反馈人"
)
private
String
feedbackUname
;
@ApiModelProperty
(
value
=
"电梯故障原因分类"
)
private
String
errorResult
;
@ApiModelProperty
(
value
=
"备注"
)
private
String
Remark
;
@ApiModelProperty
(
value
=
"维保反馈结果"
)
private
String
mainFeedbackResult
;
@ApiModelProperty
(
value
=
"维保完成时间"
)
private
Date
feedbackFinishTime
;
public
DispatchConsultFeedbackDto
()
{
}
}
amos-boot-module/amos-boot-module-api/amos-boot-module-tzs-api/src/main/java/com/yeejoin/amos/boot/module/tzs/api/dto/DispatchPaperUpdateDto.java
deleted
100644 → 0
View file @
537f89d5
package
com
.
yeejoin
.
amos
.
boot
.
module
.
tzs
.
api
.
dto
;
import
com.yeejoin.amos.boot.biz.common.dto.BaseDto
;
import
io.swagger.annotations.ApiModel
;
import
io.swagger.annotations.ApiModelProperty
;
import
lombok.Data
;
import
lombok.EqualsAndHashCode
;
import
java.util.Date
;
/**
* 派遣单更新DTO
*/
@Data
@EqualsAndHashCode
(
callSuper
=
true
)
@ApiModel
(
value
=
"DispatchPaperUpdateDto"
,
description
=
"派遣单更新DTO"
)
public
class
DispatchPaperUpdateDto
extends
BaseDto
{
private
static
final
long
serialVersionUID
=
1L
;
@ApiModelProperty
(
value
=
"派遣单Id"
)
private
Long
pageId
;
@ApiModelProperty
(
value
=
"派遣任务单Id"
)
private
Long
taskId
;
@ApiModelProperty
(
value
=
"派遣单位Id"
)
private
Long
orgId
;
@ApiModelProperty
(
value
=
"派遣单位类型code"
)
private
String
orgTypeCode
;
@ApiModelProperty
(
value
=
"派遣单位社会信用代码"
)
private
String
orgCreditCode
;
@ApiModelProperty
(
value
=
"派遣时间"
)
private
Date
dispatchTime
;
public
DispatchPaperUpdateDto
()
{
}
}
amos-boot-module/amos-boot-module-api/amos-boot-module-tzs-api/src/main/java/com/yeejoin/amos/boot/module/tzs/api/dto/DispatchRepairFeedbackDto.java
0 → 100644
View file @
5ff596b7
package
com
.
yeejoin
.
amos
.
boot
.
module
.
tzs
.
api
.
dto
;
import
com.yeejoin.amos.boot.biz.common.dto.BaseDto
;
import
io.swagger.annotations.ApiModel
;
import
io.swagger.annotations.ApiModelProperty
;
import
lombok.Data
;
import
lombok.EqualsAndHashCode
;
import
java.util.Date
;
/**
* 维修回访DTO
*/
@Data
@EqualsAndHashCode
(
callSuper
=
true
)
@ApiModel
(
value
=
"DispatchRepairFeedbackDto"
,
description
=
"维修回访DTO"
)
public
class
DispatchRepairFeedbackDto
extends
BaseDto
{
private
static
final
long
serialVersionUID
=
1L
;
@ApiModelProperty
(
value
=
"警情id"
)
private
Long
alertId
;
@ApiModelProperty
(
value
=
"报修人"
)
private
String
emergency
;
@ApiModelProperty
(
value
=
"报修人电话"
)
private
String
emergencyCall
;
@ApiModelProperty
(
value
=
"报修反馈方式"
)
private
String
fixFeedbackType
;
@ApiModelProperty
(
value
=
"报修反馈结果"
)
private
String
feedbackResult
;
@ApiModelProperty
(
value
=
"报修回访时间"
)
private
Date
fixFeedbackTime
;
@ApiModelProperty
(
value
=
"报修回访人"
)
private
String
fixFeedbackUname
;
@ApiModelProperty
(
value
=
"报修回访人Id"
)
private
String
fixFeedbackUid
;
@ApiModelProperty
(
value
=
"报修备注"
)
private
String
fixRemark
;
@ApiModelProperty
(
value
=
"响应人"
)
private
String
responseUserName
;
@ApiModelProperty
(
value
=
"响应人电话"
)
private
String
responseUserTel
;
@ApiModelProperty
(
value
=
"维修反馈方式Code"
)
private
String
feedbackCode
;
@ApiModelProperty
(
value
=
"维修反馈方式"
)
private
String
feedbackType
;
@ApiModelProperty
(
value
=
"维修结果"
)
private
String
fixResult
;
@ApiModelProperty
(
value
=
"维修完成时间"
)
private
Date
feedbackFinishTime
;
@ApiModelProperty
(
value
=
"维修反馈人id"
)
private
String
feedbackUid
;
@ApiModelProperty
(
value
=
"维修反馈人"
)
private
String
feedbackUname
;
@ApiModelProperty
(
value
=
"电梯故障原因分类"
)
private
String
errorResult
;
@ApiModelProperty
(
value
=
"备注"
)
private
String
Remark
;
@ApiModelProperty
(
value
=
"回访时间"
)
private
Date
feedbackTime
;
public
DispatchRepairFeedbackDto
()
{
}
}
amos-boot-module/amos-boot-module-api/amos-boot-module-tzs-api/src/main/java/com/yeejoin/amos/boot/module/tzs/api/dto/DispatchSaveFeedbackDto.java
0 → 100644
View file @
5ff596b7
package
com
.
yeejoin
.
amos
.
boot
.
module
.
tzs
.
api
.
dto
;
import
com.yeejoin.amos.boot.biz.common.dto.BaseDto
;
import
io.swagger.annotations.ApiModel
;
import
io.swagger.annotations.ApiModelProperty
;
import
lombok.Data
;
import
lombok.EqualsAndHashCode
;
import
java.util.Date
;
/**
* 救援回访DTO
*/
@Data
@EqualsAndHashCode
(
callSuper
=
true
)
@ApiModel
(
value
=
"DispatchSaveFeedbackDto"
,
description
=
"救援回访DTO"
)
public
class
DispatchSaveFeedbackDto
extends
BaseDto
{
private
static
final
long
serialVersionUID
=
1L
;
@ApiModelProperty
(
value
=
"警情id"
)
private
Long
alertId
;
@ApiModelProperty
(
value
=
"求援人"
)
private
String
emergency
;
@ApiModelProperty
(
value
=
"求援电话"
)
private
String
emergencyCall
;
@ApiModelProperty
(
value
=
"救援回访时间"
)
private
Date
saveFeedbackTime
;
@ApiModelProperty
(
value
=
"救援回访人"
)
private
String
saveFeedbackUser
;
@ApiModelProperty
(
value
=
"救援回访人Id"
)
private
String
saveFeedbackUid
;
@ApiModelProperty
(
value
=
"救援回访结果"
)
private
String
saveFeedbackResult
;
@ApiModelProperty
(
value
=
"响应人"
)
private
String
responseUserName
;
@ApiModelProperty
(
value
=
"响应人电话"
)
private
String
responseUserTel
;
@ApiModelProperty
(
value
=
"维修反馈方式Code"
)
private
String
feedbackCode
;
@ApiModelProperty
(
value
=
"维修反馈方式"
)
private
String
feedbackType
;
@ApiModelProperty
(
value
=
"维修结果"
)
private
String
fixResult
;
@ApiModelProperty
(
value
=
"维修完成时间"
)
private
Date
feedbackFinishTime
;
@ApiModelProperty
(
value
=
"维修反馈人id"
)
private
String
feedbackUid
;
@ApiModelProperty
(
value
=
"维修反馈人"
)
private
String
feedbackUname
;
@ApiModelProperty
(
value
=
"电梯故障原因分类"
)
private
String
errorResult
;
@ApiModelProperty
(
value
=
"备注"
)
private
String
Remark
;
@ApiModelProperty
(
value
=
"回访时间"
)
private
Date
feedbackTime
;
public
DispatchSaveFeedbackDto
()
{
}
}
amos-boot-module/amos-boot-module-api/amos-boot-module-tzs-api/src/main/java/com/yeejoin/amos/boot/module/tzs/api/service/IDispatchPaperService.java
View file @
5ff596b7
package
com
.
yeejoin
.
amos
.
boot
.
module
.
tzs
.
api
.
service
;
package
com
.
yeejoin
.
amos
.
boot
.
module
.
tzs
.
api
.
service
;
import
com.yeejoin.amos.boot.module.tzs.api.dto.DispatchConsultFeedbackDto
;
import
com.yeejoin.amos.boot.module.tzs.api.dto.DispatchPaperFormDto
;
import
com.yeejoin.amos.boot.module.tzs.api.dto.DispatchRepairFeedbackDto
;
import
com.yeejoin.amos.boot.module.tzs.api.dto.DispatchSaveFeedbackDto
;
import
com.yeejoin.amos.boot.module.tzs.api.entity.DispatchPaper
;
import
com.yeejoin.amos.boot.module.tzs.api.entity.DispatchPaper
;
import
com.yeejoin.amos.feign.privilege.model.AgencyUserModel
;
import
com.yeejoin.amos.feign.privilege.model.AgencyUserModel
;
...
@@ -14,7 +18,7 @@ public interface IDispatchPaperService {
...
@@ -14,7 +18,7 @@ public interface IDispatchPaperService {
DispatchPaper
selectDispatchPaperByAlertId
(
Long
alertId
);
DispatchPaper
selectDispatchPaperByAlertId
(
Long
alertId
);
Object
selectDispatchPaperDtoByAlertId
(
Long
alertId
);
DispatchPaperFormDto
selectDispatchPaperDtoByAlertId
(
Long
alertId
);
/**
/**
* 根据警情id 及 警情类别 派遣人 创建 派遣单
* 根据警情id 及 警情类别 派遣人 创建 派遣单
...
@@ -23,5 +27,51 @@ public interface IDispatchPaperService {
...
@@ -23,5 +27,51 @@ public interface IDispatchPaperService {
* @param sendUser
* @param sendUser
* @return
* @return
*/
*/
DispatchPaper
createDispatchPaper
(
Long
alertId
,
String
alertCode
,
AgencyUserModel
sendUser
);
DispatchPaperFormDto
createDispatchPaper
(
Long
alertId
,
String
alertCode
,
AgencyUserModel
sendUser
);
/**
* 根据警情id 返回 救援回访相关信息
* @param alertId
* @return
*/
DispatchSaveFeedbackDto
getDispatchSaveFeedbackDtoByAlertId
(
Long
alertId
,
AgencyUserModel
feedbackUser
);
/**
* 坐席填写救援回访相关信息
* @param dispatchSaveFeedbackDto
* @return
*/
Boolean
saveDispatchSaveFeedback
(
DispatchSaveFeedbackDto
dispatchSaveFeedbackDto
);
/**
* 根据警情id 返回 维修回访相关信息
* @param alertId
* @return
*/
DispatchRepairFeedbackDto
getDispatchRepairFeedbackDtoByAlertId
(
Long
alertId
,
AgencyUserModel
feedbackUser
);
/**
* 坐席填写维修回访相关信息
* @param dispatchRepairFeedbackDto
* @return
*/
Boolean
saveDispatchRepairFeedback
(
DispatchRepairFeedbackDto
dispatchRepairFeedbackDto
);
/**
* 根据警情id 返回 投诉回访相关信息
* @param alertId
* @return
*/
DispatchConsultFeedbackDto
getDispatchConsultFeedbackDtoByAlertId
(
Long
alertId
,
AgencyUserModel
feedbackUser
);
/**
* 坐席填写投诉回访相关信息
* @param dispatchConsultFeedbackDto
* @return
*/
Boolean
saveDispatchConsultFeedback
(
DispatchConsultFeedbackDto
dispatchConsultFeedbackDto
);
}
}
amos-boot-module/amos-boot-module-biz/amos-boot-module-tzs-biz/src/main/java/com/yeejoin/amos/boot/module/tzs/biz/controller/DispatchPaperController.java
View file @
5ff596b7
...
@@ -4,8 +4,11 @@ import com.alibaba.fastjson.JSONObject;
...
@@ -4,8 +4,11 @@ import com.alibaba.fastjson.JSONObject;
import
com.yeejoin.amos.boot.biz.common.bo.ReginParams
;
import
com.yeejoin.amos.boot.biz.common.bo.ReginParams
;
import
com.yeejoin.amos.boot.biz.common.controller.BaseController
;
import
com.yeejoin.amos.boot.biz.common.controller.BaseController
;
import
com.yeejoin.amos.boot.biz.common.utils.RedisUtils
;
import
com.yeejoin.amos.boot.biz.common.utils.RedisUtils
;
import
com.yeejoin.amos.boot.module.tzs.api.dto.DispatchConsultFeedbackDto
;
import
com.yeejoin.amos.boot.module.tzs.api.dto.DispatchPaperDto
;
import
com.yeejoin.amos.boot.module.tzs.api.dto.DispatchPaperDto
;
import
com.yeejoin.amos.boot.module.tzs.api.dto.DispatchPaperFormDto
;
import
com.yeejoin.amos.boot.module.tzs.api.dto.DispatchPaperFormDto
;
import
com.yeejoin.amos.boot.module.tzs.api.dto.DispatchRepairFeedbackDto
;
import
com.yeejoin.amos.boot.module.tzs.api.dto.DispatchSaveFeedbackDto
;
import
com.yeejoin.amos.boot.module.tzs.api.entity.DispatchPaper
;
import
com.yeejoin.amos.boot.module.tzs.api.entity.DispatchPaper
;
import
com.yeejoin.amos.boot.module.tzs.biz.service.impl.DispatchPaperServiceImpl
;
import
com.yeejoin.amos.boot.module.tzs.biz.service.impl.DispatchPaperServiceImpl
;
import
io.swagger.annotations.Api
;
import
io.swagger.annotations.Api
;
...
@@ -42,28 +45,97 @@ public class DispatchPaperController extends BaseController {
...
@@ -42,28 +45,97 @@ public class DispatchPaperController extends BaseController {
@Autowired
@Autowired
RedisUtils
redisUtils
;
RedisUtils
redisUtils
;
/**
/**
* 新增派遣单
* 通过警情id 获取 救援回访相关信息
*
* @param alertId
* @return
* @return
*/
*/
@TycloudOperation
(
ApiLevel
=
UserType
.
AGENCY
)
@TycloudOperation
(
ApiLevel
=
UserType
.
AGENCY
)
@PostMapping
(
value
=
"/save"
)
@GetMapping
(
value
=
"/feedback/save/{alertId}"
)
@ApiOperation
(
httpMethod
=
"POST"
,
value
=
"新增派遣单"
,
notes
=
"新增派遣单"
)
@ApiOperation
(
httpMethod
=
"GET"
,
value
=
"通过警情id 获取 救援回访相关信息"
,
notes
=
"通过警情id 获取 救援回访相关信息"
)
public
ResponseModel
<
DispatchPaperFormDto
>
save
(
@RequestBody
DispatchPaperFormDto
dispatchPaperFormDto
)
{
public
ResponseModel
<
DispatchSaveFeedbackDto
>
getSaveFeedback
(
@PathVariable
Long
alertId
)
{
if
(
ValidationUtil
.
isEmpty
(
dispatchPaperFormDto
)
ReginParams
reginParams
=
||
ValidationUtil
.
isEmpty
(
dispatchPaperFormDto
.
getDispatchPaper
()))
JSONObject
.
parseObject
(
null
!=
redisUtils
.
get
(
buildKey
(
getToken
()))
?
redisUtils
.
get
(
buildKey
(
getToken
())).
toString
()
:
null
,
ReginParams
.
class
);
DispatchSaveFeedbackDto
dispatchSaveFeedbackDto
=
dispatchPaperServiceImpl
.
getDispatchSaveFeedbackDtoByAlertId
(
alertId
,
reginParams
.
getUserModel
());
return
ResponseHelper
.
buildResponse
(
dispatchSaveFeedbackDto
);
}
/**
* 保存救援回访信息
* @param dispatchSaveFeedbackDto
* @return
*/
@TycloudOperation
(
ApiLevel
=
UserType
.
AGENCY
)
@PostMapping
(
value
=
"/feedback/save"
)
@ApiOperation
(
httpMethod
=
"POST"
,
value
=
"保存救援回访信息"
,
notes
=
"保存救援回访信息"
)
public
ResponseModel
<
Boolean
>
saveSaveFeedBack
(
@RequestBody
DispatchSaveFeedbackDto
dispatchSaveFeedbackDto
)
{
if
(
ValidationUtil
.
isEmpty
(
dispatchSaveFeedbackDto
)
||
ValidationUtil
.
isEmpty
(
dispatchSaveFeedbackDto
.
getAlertId
()))
throw
new
BadRequest
(
"参数校验失败."
);
throw
new
BadRequest
(
"参数校验失败."
);
return
ResponseHelper
.
buildResponse
(
dispatchPaperServiceImpl
.
saveDispatchSaveFeedback
(
dispatchSaveFeedbackDto
));
}
/**
* 通过警情id 获取 维修回访相关信息
* @param alertId
* @return
*/
@TycloudOperation
(
ApiLevel
=
UserType
.
AGENCY
)
@GetMapping
(
value
=
"/feedback/repair/{alertId}"
)
@ApiOperation
(
httpMethod
=
"GET"
,
value
=
"通过警情id 获取 维修回访相关信息"
,
notes
=
"通过警情id 获取 维修回访相关信息"
)
public
ResponseModel
<
DispatchRepairFeedbackDto
>
getRepairFeedBack
(
@PathVariable
Long
alertId
)
{
ReginParams
reginParams
=
ReginParams
reginParams
=
JSONObject
.
parseObject
(
null
!=
redisUtils
.
get
(
buildKey
(
getToken
()))
?
JSONObject
.
parseObject
(
null
!=
redisUtils
.
get
(
buildKey
(
getToken
()))
?
redisUtils
.
get
(
buildKey
(
getToken
())).
toString
()
:
null
,
ReginParams
.
class
);
redisUtils
.
get
(
buildKey
(
getToken
())).
toString
()
:
null
,
ReginParams
.
class
);
//获取当前登录人公司
DispatchRepairFeedbackDto
dispatchRepairFeedbackDto
=
dispatchPaperServiceImpl
.
getDispatchRepairFeedbackDtoByAlertId
(
alertId
,
reginParams
.
getUserModel
());
String
orgCode
=
reginParams
.
getCompany
().
getOrgCode
();
return
ResponseHelper
.
buildResponse
(
dispatchRepairFeedbackDto
);
DispatchPaper
dispatchPaper
=
dispatchPaperFormDto
.
getDispatchPaper
();
}
dispatchPaper
.
setOrgCode
(
orgCode
);
dispatchPaperFormDto
.
setDispatchPaper
(
dispatchPaper
);
/**
dispatchPaperFormDto
=
dispatchPaperServiceImpl
.
createDispatchPaper
(
dispatchPaperFormDto
);
* 保存维修回访信息
return
ResponseHelper
.
buildResponse
(
dispatchPaperFormDto
);
* @param dispatchRepairFeedbackDto
* @return
*/
@TycloudOperation
(
ApiLevel
=
UserType
.
AGENCY
)
@PostMapping
(
value
=
"/feedback/repair"
)
@ApiOperation
(
httpMethod
=
"POST"
,
value
=
"保存维修回访信息"
,
notes
=
"保存维修回访信息"
)
public
ResponseModel
<
Boolean
>
saveRepairFeedBack
(
@RequestBody
DispatchRepairFeedbackDto
dispatchRepairFeedbackDto
)
{
if
(
ValidationUtil
.
isEmpty
(
dispatchRepairFeedbackDto
)
||
ValidationUtil
.
isEmpty
(
dispatchRepairFeedbackDto
.
getAlertId
()))
throw
new
BadRequest
(
"参数校验失败."
);
return
ResponseHelper
.
buildResponse
(
dispatchPaperServiceImpl
.
saveDispatchRepairFeedback
(
dispatchRepairFeedbackDto
));
}
/**
* 通过警情id 获取 投诉回访相关信息
* @param alertId
* @return
*/
@TycloudOperation
(
ApiLevel
=
UserType
.
AGENCY
)
@GetMapping
(
value
=
"/feedback/consult/{alertId}"
)
@ApiOperation
(
httpMethod
=
"GET"
,
value
=
"通过警情id 获取 投诉回访相关信息"
,
notes
=
"通过警情id 获取 投诉回访相关信息"
)
public
ResponseModel
<
DispatchConsultFeedbackDto
>
getConsultFeedBack
(
@PathVariable
Long
alertId
)
{
ReginParams
reginParams
=
JSONObject
.
parseObject
(
null
!=
redisUtils
.
get
(
buildKey
(
getToken
()))
?
redisUtils
.
get
(
buildKey
(
getToken
())).
toString
()
:
null
,
ReginParams
.
class
);
DispatchConsultFeedbackDto
dispatchConsultFeedbackDto
=
dispatchPaperServiceImpl
.
getDispatchConsultFeedbackDtoByAlertId
(
alertId
,
reginParams
.
getUserModel
());
return
ResponseHelper
.
buildResponse
(
dispatchConsultFeedbackDto
);
}
/**
* 保存投诉回访信息
* @param dispatchConsultFeedbackDto
* @return
*/
@TycloudOperation
(
ApiLevel
=
UserType
.
AGENCY
)
@PostMapping
(
value
=
"/feedback/consult"
)
@ApiOperation
(
httpMethod
=
"POST"
,
value
=
"保存投诉回访信息"
,
notes
=
"保存投诉回访信息"
)
public
ResponseModel
<
Boolean
>
saveConsultFeedBack
(
@RequestBody
DispatchConsultFeedbackDto
dispatchConsultFeedbackDto
)
{
if
(
ValidationUtil
.
isEmpty
(
dispatchConsultFeedbackDto
)
||
ValidationUtil
.
isEmpty
(
dispatchConsultFeedbackDto
.
getAlertId
()))
throw
new
BadRequest
(
"参数校验失败."
);
return
ResponseHelper
.
buildResponse
(
dispatchPaperServiceImpl
.
saveDispatchConsultFeedback
(
dispatchConsultFeedbackDto
));
}
}
/**
/**
...
...
amos-boot-module/amos-boot-module-biz/amos-boot-module-tzs-biz/src/main/java/com/yeejoin/amos/boot/module/tzs/biz/service/impl/DispatchPaperServiceImpl.java
View file @
5ff596b7
package
com
.
yeejoin
.
amos
.
boot
.
module
.
tzs
.
biz
.
service
.
impl
;
package
com
.
yeejoin
.
amos
.
boot
.
module
.
tzs
.
biz
.
service
.
impl
;
import
com.alibaba.fastjson.JSONObject
;
import
com.baomidou.mybatisplus.core.conditions.query.QueryWrapper
;
import
com.baomidou.mybatisplus.core.conditions.query.QueryWrapper
;
import
com.baomidou.mybatisplus.extension.plugins.pagination.Page
;
import
com.baomidou.mybatisplus.extension.plugins.pagination.Page
;
import
com.yeejoin.amos.boot.biz.common.bo.ReginParams
;
import
com.yeejoin.amos.boot.biz.common.entity.DataDictionary
;
import
com.yeejoin.amos.boot.biz.common.utils.RedisUtils
;
import
com.yeejoin.amos.boot.biz.common.service.impl.DataDictionaryServiceImpl
;
import
com.yeejoin.amos.boot.module.tzs.api.dto.AlertCalledFormDto
;
import
com.yeejoin.amos.boot.module.tzs.api.dto.AlertFormInitDto
;
import
com.yeejoin.amos.boot.module.tzs.api.dto.AlertFormInitDto
;
import
com.yeejoin.amos.boot.module.tzs.api.dto.DispatchConsultFeedbackDto
;
import
com.yeejoin.amos.boot.module.tzs.api.dto.DispatchPaperDto
;
import
com.yeejoin.amos.boot.module.tzs.api.dto.DispatchPaperDto
;
import
com.yeejoin.amos.boot.module.tzs.api.dto.DispatchPaperFormDto
;
import
com.yeejoin.amos.boot.module.tzs.api.dto.DispatchPaperFormDto
;
import
com.yeejoin.amos.boot.module.tzs.api.dto.DispatchRepairFeedbackDto
;
import
com.yeejoin.amos.boot.module.tzs.api.dto.DispatchSaveFeedbackDto
;
import
com.yeejoin.amos.boot.module.tzs.api.entity.AlertFormValue
;
import
com.yeejoin.amos.boot.module.tzs.api.entity.AlertFormValue
;
import
com.yeejoin.amos.boot.module.tzs.api.entity.DispatchPaper
;
import
com.yeejoin.amos.boot.module.tzs.api.entity.DispatchPaper
;
import
com.yeejoin.amos.boot.module.tzs.api.entity.DispatchTask
;
import
com.yeejoin.amos.boot.module.tzs.api.entity.Elevator
;
import
com.yeejoin.amos.boot.module.tzs.api.entity.MaintenanceUnit
;
import
com.yeejoin.amos.boot.module.tzs.api.enums.DispatchPaperEnums
;
import
com.yeejoin.amos.boot.module.tzs.api.enums.DispatchPaperEnums
;
import
com.yeejoin.amos.boot.module.tzs.api.mapper.DispatchPaperMapper
;
import
com.yeejoin.amos.boot.module.tzs.api.mapper.DispatchPaperMapper
;
import
com.yeejoin.amos.boot.module.tzs.api.service.IDispatchPaperService
;
import
com.yeejoin.amos.boot.module.tzs.api.service.IDispatchPaperService
;
import
com.yeejoin.amos.boot.module.tzs.api.service.IMaintenanceUnitService
;
import
com.yeejoin.amos.boot.module.tzs.api.vo.AlertCalledVo
;
import
com.yeejoin.amos.feign.privilege.model.AgencyUserModel
;
import
com.yeejoin.amos.feign.privilege.model.AgencyUserModel
;
import
org.apache.commons.lang3.StringUtils
;
import
org.springframework.beans.factory.annotation.Autowired
;
import
org.springframework.beans.factory.annotation.Autowired
;
import
org.springframework.stereotype.Service
;
import
org.springframework.stereotype.Service
;
import
org.springframework.transaction.annotation.Transactional
;
import
org.springframework.transaction.annotation.Transactional
;
import
org.typroject.tyboot.core.rdbms.service.BaseService
;
import
org.typroject.tyboot.core.rdbms.service.BaseService
;
import
org.typroject.tyboot.core.restful.exception.instance.BadRequest
;
import
java.text.ParseException
;
import
java.text.SimpleDateFormat
;
import
java.util.ArrayList
;
import
java.util.ArrayList
;
import
java.util.Date
;
import
java.util.Date
;
import
java.util.List
;
import
java.util.List
;
import
static
org
.
typroject
.
tyboot
.
core
.
foundation
.
context
.
RequestContext
.
getToken
;
/**
/**
* 派遣单服务实现类
* 派遣单服务实现类
*
*
...
@@ -40,6 +50,21 @@ public class DispatchPaperServiceImpl extends BaseService<DispatchPaperDto,Dispa
...
@@ -40,6 +50,21 @@ public class DispatchPaperServiceImpl extends BaseService<DispatchPaperDto,Dispa
@Autowired
@Autowired
private
AlertFormServiceImpl
alertFormServiceImpl
;
private
AlertFormServiceImpl
alertFormServiceImpl
;
@Autowired
private
ElevatorServiceImpl
elevatorServiceImpl
;
@Autowired
private
IMaintenanceUnitService
iMaintenanceUnitService
;
@Autowired
private
AlertCalledServiceImpl
alertCalledServiceImpl
;
@Autowired
private
DispatchTaskServiceImpl
dispatchTaskServiceImpl
;
@Autowired
private
DataDictionaryServiceImpl
iDataDictionaryService
;
/**
/**
* 分页查询
* 分页查询
*/
*/
...
@@ -93,7 +118,7 @@ public class DispatchPaperServiceImpl extends BaseService<DispatchPaperDto,Dispa
...
@@ -93,7 +118,7 @@ public class DispatchPaperServiceImpl extends BaseService<DispatchPaperDto,Dispa
}
}
@Override
@Override
public
Object
selectDispatchPaperDtoByAlertId
(
Long
alertId
)
{
public
DispatchPaperFormDto
selectDispatchPaperDtoByAlertId
(
Long
alertId
)
{
// 根据警情id 获取 派遣单信息
// 根据警情id 获取 派遣单信息
DispatchPaper
dispatchPaper
=
selectDispatchPaperByAlertId
(
alertId
);
DispatchPaper
dispatchPaper
=
selectDispatchPaperByAlertId
(
alertId
);
// 封装dto
// 封装dto
...
@@ -110,8 +135,8 @@ public class DispatchPaperServiceImpl extends BaseService<DispatchPaperDto,Dispa
...
@@ -110,8 +135,8 @@ public class DispatchPaperServiceImpl extends BaseService<DispatchPaperDto,Dispa
}
}
@Override
@Override
public
DispatchPaper
createDispatchPaper
(
Long
alertId
,
String
alertCode
,
AgencyUserModel
sendUser
)
{
public
DispatchPaper
FormDto
createDispatchPaper
(
Long
alertId
,
String
alertCode
,
AgencyUserModel
sendUser
)
{
DispatchPaperFormDto
dispatchPaperFormDto
=
new
DispatchPaperFormDto
();
// 创建基本信息
// 创建基本信息
DispatchPaper
dispatchPaper
=
new
DispatchPaper
();
DispatchPaper
dispatchPaper
=
new
DispatchPaper
();
dispatchPaper
.
setAlertCode
(
alertCode
);
dispatchPaper
.
setAlertCode
(
alertCode
);
...
@@ -131,6 +156,11 @@ public class DispatchPaperServiceImpl extends BaseService<DispatchPaperDto,Dispa
...
@@ -131,6 +156,11 @@ public class DispatchPaperServiceImpl extends BaseService<DispatchPaperDto,Dispa
dispatchPaper
.
setSendUserId
(
sendUser
.
getUserId
());
dispatchPaper
.
setSendUserId
(
sendUser
.
getUserId
());
dispatchPaper
.
setSendUserName
(
sendUser
.
getUserName
());
dispatchPaper
.
setSendUserName
(
sendUser
.
getUserName
());
// 电梯维保单位统一信用代码
Elevator
elevator
=
elevatorServiceImpl
.
selectByAlertId
(
alertId
);
MaintenanceUnit
maintenanceUnit
=
iMaintenanceUnitService
.
getById
(
elevator
.
getMaintainUnitId
());
dispatchPaper
.
setRepairOrgCreditCode
(
maintenanceUnit
.
getSocialCreditCode
());
this
.
save
(
dispatchPaper
);
this
.
save
(
dispatchPaper
);
// 根据类型创建动态表单信息
// 根据类型创建动态表单信息
...
@@ -145,7 +175,535 @@ public class DispatchPaperServiceImpl extends BaseService<DispatchPaperDto,Dispa
...
@@ -145,7 +175,535 @@ public class DispatchPaperServiceImpl extends BaseService<DispatchPaperDto,Dispa
});
});
// 保存动态表单数据
// 保存动态表单数据
iAlertFormValueService
.
saveBatch
(
paperFormValuelist
);
iAlertFormValueService
.
saveBatch
(
paperFormValuelist
);
return
dispatchPaper
;
dispatchPaperFormDto
.
setDispatchPaper
(
dispatchPaper
);
dispatchPaperFormDto
.
setDynamicFormAlert
(
paperFormValuelist
);
return
dispatchPaperFormDto
;
}
@Override
public
DispatchSaveFeedbackDto
getDispatchSaveFeedbackDtoByAlertId
(
Long
alertId
,
AgencyUserModel
feedbackUser
)
{
DispatchSaveFeedbackDto
dispatchSaveFeedbackDto
=
new
DispatchSaveFeedbackDto
();
dispatchSaveFeedbackDto
.
setAlertId
(
alertId
);
AlertCalledFormDto
alertCalledFormVo
=
(
AlertCalledFormDto
)
alertCalledServiceImpl
.
selectAlertCalledById
(
alertId
);
// 警情信息
AlertCalledVo
alertCalledVo
=
alertCalledFormVo
.
getAlertCalledVo
();
dispatchSaveFeedbackDto
.
setEmergency
(
alertCalledVo
.
getEmergencyPerson
());
dispatchSaveFeedbackDto
.
setEmergencyCall
(
alertCalledVo
.
getEmergencyCall
());
// 派遣单信息
DispatchPaperFormDto
dispatchPaperFormDto
=
this
.
selectDispatchPaperDtoByAlertId
(
alertId
);
if
(
dispatchPaperFormDto
==
null
||
dispatchPaperFormDto
.
getDispatchPaper
()
==
null
)
{
return
new
DispatchSaveFeedbackDto
();
// 如果没有派遣就没有派遣反馈信息
}
DispatchPaper
dispatchPaper
=
dispatchPaperFormDto
.
getDispatchPaper
();
dispatchSaveFeedbackDto
.
setFeedbackCode
(
dispatchPaper
.
getFeedbackCode
());
dispatchSaveFeedbackDto
.
setFeedbackType
(
dispatchPaper
.
getFeedbackType
());
dispatchSaveFeedbackDto
.
setFeedbackFinishTime
(
dispatchPaper
.
getFeedbackFinishTime
());
dispatchSaveFeedbackDto
.
setRemark
(
dispatchPaper
.
getRemark
());
if
(
StringUtils
.
isBlank
(
dispatchPaper
.
getFeedbackUid
()))
{
dispatchSaveFeedbackDto
.
setFeedbackUid
(
feedbackUser
.
getUserId
());
}
else
{
dispatchSaveFeedbackDto
.
setFeedbackUid
(
dispatchPaper
.
getFeedbackUid
());
}
if
(
StringUtils
.
isBlank
(
dispatchPaper
.
getFeedbackUname
()))
{
dispatchSaveFeedbackDto
.
setFeedbackUname
(
feedbackUser
.
getUserName
());
}
else
{
dispatchSaveFeedbackDto
.
setFeedbackUname
(
dispatchPaper
.
getFeedbackUname
());
}
//救援响应人和维保响应人
Long
useOrgTaskId
=
dispatchPaper
.
getUseOrgTaskId
();
Long
repairOrgTaskId
=
dispatchPaper
.
getRepairOrgTaskId
();
// 如果维保单位和使用单位都下单了 默认显示维保单位
DispatchTask
dispatchTask
=
null
;
if
(
repairOrgTaskId
!=
null
)
{
dispatchTask
=
dispatchTaskServiceImpl
.
getById
(
repairOrgTaskId
);
dispatchSaveFeedbackDto
.
setResponseUserName
(
dispatchTask
.
getResponseUserName
());
dispatchSaveFeedbackDto
.
setResponseUserTel
(
dispatchTask
.
getResponseUserTel
());
}
else
if
(
useOrgTaskId
!=
null
)
{
dispatchTask
=
dispatchTaskServiceImpl
.
getById
(
useOrgTaskId
);
dispatchSaveFeedbackDto
.
setResponseUserName
(
dispatchTask
.
getResponseUserName
());
dispatchSaveFeedbackDto
.
setResponseUserTel
(
dispatchTask
.
getResponseUserTel
());
}
// 动态字段
List
<
AlertFormValue
>
dynamicFormAlert
=
dispatchPaperFormDto
.
getDynamicFormAlert
();
SimpleDateFormat
sdf
=
new
SimpleDateFormat
(
"yyyy-MM-dd HH:mm:ss"
);
dynamicFormAlert
.
stream
().
forEach
(
alertFormValue
->
{
String
value
=
null
;
switch
(
alertFormValue
.
getFieldCode
())
{
case
"save_feedback_time"
:
value
=
alertFormValue
.
getFieldValue
();
if
(
StringUtils
.
isBlank
(
value
))
{
dispatchSaveFeedbackDto
.
setSaveFeedbackTime
(
null
);
}
else
{
try
{
dispatchSaveFeedbackDto
.
setSaveFeedbackTime
(
sdf
.
parse
(
value
));
}
catch
(
ParseException
e
)
{
throw
new
BadRequest
(
"救援时间格式错误"
);
}
}
break
;
case
"save_feedback_user"
:
value
=
alertFormValue
.
getFieldValue
();
if
(
StringUtils
.
isBlank
(
value
))
{
dispatchSaveFeedbackDto
.
setSaveFeedbackUser
(
feedbackUser
.
getUserName
());
}
else
{
dispatchSaveFeedbackDto
.
setSaveFeedbackUser
(
value
);
}
break
;
case
"save_feedback_uid"
:
value
=
alertFormValue
.
getFieldValue
();
if
(
StringUtils
.
isBlank
(
value
))
{
dispatchSaveFeedbackDto
.
setSaveFeedbackUid
(
feedbackUser
.
getUserId
());
}
else
{
dispatchSaveFeedbackDto
.
setSaveFeedbackUid
(
value
);
}
break
;
case
"save_feedback_result"
:
value
=
alertFormValue
.
getFieldValue
();
dispatchSaveFeedbackDto
.
setSaveFeedbackResult
(
value
);
break
;
case
"fix_result"
:
value
=
alertFormValue
.
getFieldValue
();
dispatchSaveFeedbackDto
.
setFixResult
(
value
);
break
;
case
"error_result"
:
value
=
alertFormValue
.
getFieldValue
();
dispatchSaveFeedbackDto
.
setErrorResult
(
value
);
break
;
}
});
return
dispatchSaveFeedbackDto
;
}
@Override
public
Boolean
saveDispatchSaveFeedback
(
DispatchSaveFeedbackDto
dispatchSaveFeedbackDto
)
{
Boolean
flag
=
false
;
// 保存救援回访信息
DispatchPaperFormDto
dispatchPaperFormDto
=
this
.
selectDispatchPaperDtoByAlertId
(
dispatchSaveFeedbackDto
.
getAlertId
());
DispatchPaper
dispatchPaper
=
dispatchPaperFormDto
.
getDispatchPaper
();
// 动态字段
List
<
AlertFormValue
>
dynamicFormAlert
=
dispatchPaperFormDto
.
getDynamicFormAlert
();
SimpleDateFormat
sdf
=
new
SimpleDateFormat
(
"yyyy-MM-dd HH:mm:ss"
);
dynamicFormAlert
.
stream
().
forEach
(
alertFormValue
->
{
switch
(
alertFormValue
.
getFieldCode
())
{
case
"save_feedback_time"
:
if
(
dispatchSaveFeedbackDto
.
getSaveFeedbackTime
()
!=
null
)
alertFormValue
.
setFieldValue
(
sdf
.
format
(
dispatchSaveFeedbackDto
.
getSaveFeedbackTime
()));
break
;
case
"save_feedback_user"
:
if
(
StringUtils
.
isNotBlank
(
dispatchSaveFeedbackDto
.
getSaveFeedbackUser
()))
alertFormValue
.
setFieldValue
(
dispatchSaveFeedbackDto
.
getSaveFeedbackUser
());
break
;
case
"save_feedback_uid"
:
if
(
StringUtils
.
isNotBlank
(
dispatchSaveFeedbackDto
.
getSaveFeedbackUid
()))
alertFormValue
.
setFieldValue
(
dispatchSaveFeedbackDto
.
getSaveFeedbackUid
());
break
;
case
"save_feedback_result"
:
if
(
StringUtils
.
isNotBlank
(
dispatchSaveFeedbackDto
.
getSaveFeedbackResult
()))
alertFormValue
.
setFieldValue
(
dispatchSaveFeedbackDto
.
getSaveFeedbackResult
());
break
;
case
"fix_result"
:
if
(
StringUtils
.
isNotBlank
(
dispatchSaveFeedbackDto
.
getFixResult
()))
{
alertFormValue
.
setFieldValue
(
dispatchSaveFeedbackDto
.
getFixResult
());
QueryWrapper
<
DataDictionary
>
queryWrapper
=
new
QueryWrapper
<>();
queryWrapper
.
eq
(
"type"
,
"WXJG"
).
eq
(
"name"
,
dispatchSaveFeedbackDto
.
getFixResult
());
DataDictionary
fixResult
=
iDataDictionaryService
.
getOne
(
queryWrapper
);
alertFormValue
.
setFieldValueCode
(
fixResult
.
getCode
());
}
break
;
case
"error_result"
:
if
(
StringUtils
.
isNotBlank
(
dispatchSaveFeedbackDto
.
getErrorResult
()))
{
alertFormValue
.
setFieldValue
(
dispatchSaveFeedbackDto
.
getErrorResult
());
QueryWrapper
<
DataDictionary
>
queryWrapper
=
new
QueryWrapper
<>();
queryWrapper
.
eq
(
"type"
,
"GZYY"
).
eq
(
"name"
,
dispatchSaveFeedbackDto
.
getErrorResult
());
DataDictionary
errorResult
=
iDataDictionaryService
.
getOne
(
queryWrapper
);
alertFormValue
.
setFieldValueCode
(
errorResult
.
getCode
());
}
break
;
}
});
dispatchPaper
.
setFeedbackCode
(
dispatchSaveFeedbackDto
.
getFeedbackCode
());
dispatchPaper
.
setFeedbackType
(
dispatchSaveFeedbackDto
.
getFeedbackType
());
dispatchPaper
.
setFeedbackFinishTime
(
dispatchSaveFeedbackDto
.
getFeedbackFinishTime
());
dispatchPaper
.
setFeedbackUid
(
dispatchSaveFeedbackDto
.
getFeedbackUid
());
dispatchPaper
.
setFeedbackUname
(
dispatchSaveFeedbackDto
.
getFeedbackUname
());
dispatchPaper
.
setRemark
(
dispatchSaveFeedbackDto
.
getRemark
());
dispatchPaper
.
setFeedbackTime
(
dispatchSaveFeedbackDto
.
getFeedbackTime
());
// 保存动态表单数据
iAlertFormValueService
.
saveBatch
(
dynamicFormAlert
);
// 保存派遣表
flag
=
this
.
save
(
dispatchPaper
);
return
flag
;
}
@Override
public
DispatchRepairFeedbackDto
getDispatchRepairFeedbackDtoByAlertId
(
Long
alertId
,
AgencyUserModel
feedbackUser
)
{
DispatchRepairFeedbackDto
dispatchRepairFeedbackDto
=
new
DispatchRepairFeedbackDto
();
dispatchRepairFeedbackDto
.
setAlertId
(
alertId
);
AlertCalledFormDto
alertCalledFormVo
=
(
AlertCalledFormDto
)
alertCalledServiceImpl
.
selectAlertCalledById
(
alertId
);
// 警情信息
AlertCalledVo
alertCalledVo
=
alertCalledFormVo
.
getAlertCalledVo
();
dispatchRepairFeedbackDto
.
setEmergency
(
alertCalledVo
.
getEmergencyPerson
());
dispatchRepairFeedbackDto
.
setEmergencyCall
(
alertCalledVo
.
getEmergencyCall
());
// 派遣单信息
DispatchPaperFormDto
dispatchPaperFormDto
=
this
.
selectDispatchPaperDtoByAlertId
(
alertId
);
if
(
dispatchPaperFormDto
==
null
||
dispatchPaperFormDto
.
getDispatchPaper
()
==
null
)
{
return
new
DispatchRepairFeedbackDto
();
// 如果没有派遣就没有派遣反馈信息
}
DispatchPaper
dispatchPaper
=
dispatchPaperFormDto
.
getDispatchPaper
();
dispatchRepairFeedbackDto
.
setFeedbackCode
(
dispatchPaper
.
getFeedbackCode
());
// 维修反馈code
dispatchRepairFeedbackDto
.
setFeedbackType
(
dispatchPaper
.
getFeedbackType
());
// 维修反馈类型
dispatchRepairFeedbackDto
.
setFeedbackFinishTime
(
dispatchPaper
.
getFeedbackFinishTime
());
//维修完成时间
dispatchRepairFeedbackDto
.
setRemark
(
dispatchPaper
.
getRemark
());
// 维修反馈备注
if
(
StringUtils
.
isBlank
(
dispatchPaper
.
getFeedbackUid
()))
{
//维修反馈人
dispatchRepairFeedbackDto
.
setFeedbackUid
(
feedbackUser
.
getUserId
());
}
else
{
dispatchRepairFeedbackDto
.
setFeedbackUid
(
dispatchPaper
.
getFeedbackUid
());
}
if
(
StringUtils
.
isBlank
(
dispatchPaper
.
getFeedbackUname
()))
{
//维修反馈人
dispatchRepairFeedbackDto
.
setFeedbackUname
(
feedbackUser
.
getUserName
());
}
else
{
dispatchRepairFeedbackDto
.
setFeedbackUname
(
dispatchPaper
.
getFeedbackUname
());
}
//维保响应人
Long
useOrgTaskId
=
dispatchPaper
.
getUseOrgTaskId
();
Long
repairOrgTaskId
=
dispatchPaper
.
getRepairOrgTaskId
();
// 如果维保单位和使用单位都下单了 默认显示维保单位
DispatchTask
dispatchTask
=
null
;
if
(
repairOrgTaskId
!=
null
)
{
dispatchTask
=
dispatchTaskServiceImpl
.
getById
(
repairOrgTaskId
);
dispatchRepairFeedbackDto
.
setResponseUserName
(
dispatchTask
.
getResponseUserName
());
dispatchRepairFeedbackDto
.
setResponseUserTel
(
dispatchTask
.
getResponseUserTel
());
}
else
if
(
useOrgTaskId
!=
null
)
{
dispatchTask
=
dispatchTaskServiceImpl
.
getById
(
useOrgTaskId
);
dispatchRepairFeedbackDto
.
setResponseUserName
(
dispatchTask
.
getResponseUserName
());
dispatchRepairFeedbackDto
.
setResponseUserTel
(
dispatchTask
.
getResponseUserTel
());
}
// 动态字段
List
<
AlertFormValue
>
dynamicFormAlert
=
dispatchPaperFormDto
.
getDynamicFormAlert
();
SimpleDateFormat
sdf
=
new
SimpleDateFormat
(
"yyyy-MM-dd HH:mm:ss"
);
dynamicFormAlert
.
stream
().
forEach
(
alertFormValue
->
{
String
value
=
null
;
switch
(
alertFormValue
.
getFieldCode
())
{
case
"fix_feedback_time"
:
//报修反馈时间
value
=
alertFormValue
.
getFieldValue
();
if
(
StringUtils
.
isBlank
(
value
))
{
dispatchRepairFeedbackDto
.
setFixFeedbackTime
(
null
);
}
else
{
try
{
dispatchRepairFeedbackDto
.
setFixFeedbackTime
(
sdf
.
parse
(
value
));
}
catch
(
ParseException
e
)
{
throw
new
BadRequest
(
"维修反馈时间格式错误"
);
}
}
break
;
case
"feedback_result"
:
//报修结果
value
=
alertFormValue
.
getFieldValue
();
dispatchRepairFeedbackDto
.
setFeedbackResult
(
value
);
break
;
case
"fix_feedback_type"
:
// 保修反馈方式
value
=
alertFormValue
.
getFieldValue
();
dispatchRepairFeedbackDto
.
setFixFeedbackType
(
value
);
break
;
case
"fix_feedback_uname"
:
value
=
alertFormValue
.
getFieldValue
();
if
(
StringUtils
.
isBlank
(
value
))
{
dispatchRepairFeedbackDto
.
setFixFeedbackUname
(
feedbackUser
.
getUserName
());
}
else
{
dispatchRepairFeedbackDto
.
setFixFeedbackUname
(
value
);
}
break
;
case
"fix_feedback_uid"
:
value
=
alertFormValue
.
getFieldValue
();
if
(
StringUtils
.
isBlank
(
value
))
{
dispatchRepairFeedbackDto
.
setFixFeedbackUid
(
feedbackUser
.
getUserId
());
}
else
{
dispatchRepairFeedbackDto
.
setFixFeedbackUid
(
value
);
}
break
;
case
"fix_result"
:
value
=
alertFormValue
.
getFieldValue
();
dispatchRepairFeedbackDto
.
setFixResult
(
value
);
break
;
case
"error_result"
:
value
=
alertFormValue
.
getFieldValue
();
dispatchRepairFeedbackDto
.
setErrorResult
(
value
);
break
;
case
"fix_remark"
:
value
=
alertFormValue
.
getFieldValue
();
dispatchRepairFeedbackDto
.
setFixRemark
(
value
);
break
;
}
});
return
dispatchRepairFeedbackDto
;
}
@Override
public
Boolean
saveDispatchRepairFeedback
(
DispatchRepairFeedbackDto
dispatchRepairFeedbackDto
)
{
Boolean
flag
=
false
;
// 保存救援回访信息
DispatchPaperFormDto
dispatchPaperFormDto
=
this
.
selectDispatchPaperDtoByAlertId
(
dispatchRepairFeedbackDto
.
getAlertId
());
DispatchPaper
dispatchPaper
=
dispatchPaperFormDto
.
getDispatchPaper
();
// 动态字段
List
<
AlertFormValue
>
dynamicFormAlert
=
dispatchPaperFormDto
.
getDynamicFormAlert
();
SimpleDateFormat
sdf
=
new
SimpleDateFormat
(
"yyyy-MM-dd HH:mm:ss"
);
dynamicFormAlert
.
stream
().
forEach
(
alertFormValue
->
{
switch
(
alertFormValue
.
getFieldCode
())
{
case
"fix_feedback_time"
:
if
(
dispatchRepairFeedbackDto
.
getFixFeedbackTime
()
!=
null
)
alertFormValue
.
setFieldValue
(
sdf
.
format
(
dispatchRepairFeedbackDto
.
getFixFeedbackTime
()));
break
;
case
"feedback_result"
:
if
(
StringUtils
.
isNotBlank
(
dispatchRepairFeedbackDto
.
getFeedbackResult
()))
{
alertFormValue
.
setFieldValue
(
dispatchRepairFeedbackDto
.
getFeedbackResult
());
QueryWrapper
<
DataDictionary
>
queryWrapper
=
new
QueryWrapper
<>();
queryWrapper
.
eq
(
"type"
,
"FKJG"
).
eq
(
"name"
,
dispatchRepairFeedbackDto
.
getFeedbackResult
());
DataDictionary
feedbackType
=
iDataDictionaryService
.
getOne
(
queryWrapper
);
alertFormValue
.
setFieldValueCode
(
feedbackType
.
getCode
());
}
break
;
case
"fix_feedback_type"
:
if
(
StringUtils
.
isNotBlank
(
dispatchRepairFeedbackDto
.
getFixFeedbackType
()))
{
alertFormValue
.
setFieldValue
(
dispatchRepairFeedbackDto
.
getFixFeedbackType
());
QueryWrapper
<
DataDictionary
>
queryWrapper
=
new
QueryWrapper
<>();
queryWrapper
.
eq
(
"type"
,
"FKFS"
).
eq
(
"name"
,
dispatchRepairFeedbackDto
.
getFixFeedbackType
());
DataDictionary
feedbackType
=
iDataDictionaryService
.
getOne
(
queryWrapper
);
alertFormValue
.
setFieldValueCode
(
feedbackType
.
getCode
());
}
break
;
case
"fix_feedback_uname"
:
if
(
StringUtils
.
isNotBlank
(
dispatchRepairFeedbackDto
.
getFixFeedbackUname
()))
alertFormValue
.
setFieldValue
(
dispatchRepairFeedbackDto
.
getFixFeedbackUname
());
break
;
case
"fix_feedback_uid"
:
if
(
StringUtils
.
isNotBlank
(
dispatchRepairFeedbackDto
.
getFixFeedbackUid
()))
alertFormValue
.
setFieldValue
(
dispatchRepairFeedbackDto
.
getFixFeedbackUid
());
break
;
case
"fix_result"
:
if
(
StringUtils
.
isNotBlank
(
dispatchRepairFeedbackDto
.
getFixResult
()))
{
alertFormValue
.
setFieldValue
(
dispatchRepairFeedbackDto
.
getFixResult
());
QueryWrapper
<
DataDictionary
>
queryWrapper
=
new
QueryWrapper
<>();
queryWrapper
.
eq
(
"type"
,
"WXJG"
).
eq
(
"name"
,
dispatchRepairFeedbackDto
.
getFixResult
());
DataDictionary
fixResult
=
iDataDictionaryService
.
getOne
(
queryWrapper
);
alertFormValue
.
setFieldValueCode
(
fixResult
.
getCode
());
}
break
;
case
"error_result"
:
if
(
StringUtils
.
isNotBlank
(
dispatchRepairFeedbackDto
.
getErrorResult
()))
{
alertFormValue
.
setFieldValue
(
dispatchRepairFeedbackDto
.
getErrorResult
());
QueryWrapper
<
DataDictionary
>
queryWrapper
=
new
QueryWrapper
<>();
queryWrapper
.
eq
(
"type"
,
"GZYY"
).
eq
(
"name"
,
dispatchRepairFeedbackDto
.
getErrorResult
());
DataDictionary
errorResult
=
iDataDictionaryService
.
getOne
(
queryWrapper
);
alertFormValue
.
setFieldValueCode
(
errorResult
.
getCode
());
}
break
;
case
"fix_remark"
:
if
(
StringUtils
.
isNotBlank
(
dispatchRepairFeedbackDto
.
getFixRemark
()))
alertFormValue
.
setFieldValue
(
dispatchRepairFeedbackDto
.
getFixRemark
());
break
;
}
});
dispatchPaper
.
setFeedbackCode
(
dispatchRepairFeedbackDto
.
getFeedbackCode
());
dispatchPaper
.
setFeedbackType
(
dispatchRepairFeedbackDto
.
getFeedbackType
());
dispatchPaper
.
setFeedbackFinishTime
(
dispatchRepairFeedbackDto
.
getFeedbackFinishTime
());
dispatchPaper
.
setFeedbackUid
(
dispatchRepairFeedbackDto
.
getFeedbackUid
());
dispatchPaper
.
setFeedbackUname
(
dispatchRepairFeedbackDto
.
getFeedbackUname
());
dispatchPaper
.
setRemark
(
dispatchRepairFeedbackDto
.
getRemark
());
dispatchPaper
.
setFeedbackTime
(
dispatchRepairFeedbackDto
.
getFeedbackTime
());
// 保存动态表单数据
iAlertFormValueService
.
saveBatch
(
dynamicFormAlert
);
// 保存派遣表
flag
=
this
.
save
(
dispatchPaper
);
return
flag
;
}
@Override
public
DispatchConsultFeedbackDto
getDispatchConsultFeedbackDtoByAlertId
(
Long
alertId
,
AgencyUserModel
feedbackUser
)
{
DispatchConsultFeedbackDto
dispatchConsultFeedbackDto
=
new
DispatchConsultFeedbackDto
();
dispatchConsultFeedbackDto
.
setAlertId
(
alertId
);
AlertCalledFormDto
alertCalledFormVo
=
(
AlertCalledFormDto
)
alertCalledServiceImpl
.
selectAlertCalledById
(
alertId
);
// 警情信息
AlertCalledVo
alertCalledVo
=
alertCalledFormVo
.
getAlertCalledVo
();
dispatchConsultFeedbackDto
.
setEmergency
(
alertCalledVo
.
getEmergencyPerson
());
dispatchConsultFeedbackDto
.
setEmergencyCall
(
alertCalledVo
.
getEmergencyCall
());
// 派遣单信息
DispatchPaperFormDto
dispatchPaperFormDto
=
this
.
selectDispatchPaperDtoByAlertId
(
alertId
);
if
(
dispatchPaperFormDto
==
null
||
dispatchPaperFormDto
.
getDispatchPaper
()
==
null
)
{
return
new
DispatchConsultFeedbackDto
();
// 如果没有派遣就没有派遣反馈信息
}
DispatchPaper
dispatchPaper
=
dispatchPaperFormDto
.
getDispatchPaper
();
dispatchConsultFeedbackDto
.
setFeedbackCode
(
dispatchPaper
.
getFeedbackCode
());
// 维修反馈code
dispatchConsultFeedbackDto
.
setFeedbackType
(
dispatchPaper
.
getFeedbackType
());
// 维修反馈类型
dispatchConsultFeedbackDto
.
setFeedbackTime
(
dispatchPaper
.
getFeedbackTime
());
//回访时间
dispatchConsultFeedbackDto
.
setRemark
(
dispatchPaper
.
getRemark
());
// 维修反馈备注
dispatchConsultFeedbackDto
.
setFeedbackFinishTime
(
dispatchPaper
.
getFeedbackFinishTime
());
//维保完成时间
if
(
StringUtils
.
isBlank
(
dispatchPaper
.
getFeedbackUid
()))
{
//维修反馈人
dispatchConsultFeedbackDto
.
setFeedbackUid
(
feedbackUser
.
getUserId
());
}
else
{
dispatchConsultFeedbackDto
.
setFeedbackUid
(
dispatchPaper
.
getFeedbackUid
());
}
if
(
StringUtils
.
isBlank
(
dispatchPaper
.
getFeedbackUname
()))
{
//维修反馈人
dispatchConsultFeedbackDto
.
setFeedbackUname
(
feedbackUser
.
getUserName
());
}
else
{
dispatchConsultFeedbackDto
.
setFeedbackUname
(
dispatchPaper
.
getFeedbackUname
());
}
//维保响应人
Long
useOrgTaskId
=
dispatchPaper
.
getUseOrgTaskId
();
Long
repairOrgTaskId
=
dispatchPaper
.
getRepairOrgTaskId
();
// 如果维保单位和使用单位都下单了 默认显示维保单位
DispatchTask
dispatchTask
=
null
;
if
(
repairOrgTaskId
!=
null
)
{
dispatchTask
=
dispatchTaskServiceImpl
.
getById
(
repairOrgTaskId
);
dispatchConsultFeedbackDto
.
setResponseUserName
(
dispatchTask
.
getResponseUserName
());
dispatchConsultFeedbackDto
.
setResponseUserTel
(
dispatchTask
.
getResponseUserTel
());
}
else
if
(
useOrgTaskId
!=
null
)
{
dispatchTask
=
dispatchTaskServiceImpl
.
getById
(
useOrgTaskId
);
dispatchConsultFeedbackDto
.
setResponseUserName
(
dispatchTask
.
getResponseUserName
());
dispatchConsultFeedbackDto
.
setResponseUserTel
(
dispatchTask
.
getResponseUserTel
());
}
// 动态字段
List
<
AlertFormValue
>
dynamicFormAlert
=
dispatchPaperFormDto
.
getDynamicFormAlert
();
SimpleDateFormat
sdf
=
new
SimpleDateFormat
(
"yyyy-MM-dd HH:mm:ss"
);
dynamicFormAlert
.
stream
().
forEach
(
alertFormValue
->
{
String
value
=
null
;
switch
(
alertFormValue
.
getFieldCode
())
{
case
"consult_feedback_time"
:
//咨询反馈时间
value
=
alertFormValue
.
getFieldValue
();
if
(
StringUtils
.
isBlank
(
value
))
{
dispatchConsultFeedbackDto
.
setConsultFeedbackTime
(
null
);
}
else
{
try
{
dispatchConsultFeedbackDto
.
setConsultFeedbackTime
(
sdf
.
parse
(
value
));
}
catch
(
ParseException
e
)
{
throw
new
BadRequest
(
"咨询反馈时间格式错误"
);
}
}
break
;
case
"action_result"
:
//处置结果
value
=
alertFormValue
.
getFieldValue
();
dispatchConsultFeedbackDto
.
setActionResult
(
value
);
break
;
case
"feedback_result"
:
//咨询反馈结果
value
=
alertFormValue
.
getFieldValue
();
dispatchConsultFeedbackDto
.
setFeedbackResult
(
value
);
break
;
case
"consult_feedback_type"
:
// 咨询反馈方式
value
=
alertFormValue
.
getFieldValue
();
dispatchConsultFeedbackDto
.
setConsultFeedbackType
(
value
);
break
;
case
"consult_feedback_uname"
:
value
=
alertFormValue
.
getFieldValue
();
if
(
StringUtils
.
isBlank
(
value
))
{
dispatchConsultFeedbackDto
.
setConsultFeedbackUname
(
feedbackUser
.
getUserName
());
}
else
{
dispatchConsultFeedbackDto
.
setConsultFeedbackUname
(
value
);
}
break
;
case
"consult_feedback_uid"
:
value
=
alertFormValue
.
getFieldValue
();
if
(
StringUtils
.
isBlank
(
value
))
{
dispatchConsultFeedbackDto
.
setConsultFeedbackUid
(
feedbackUser
.
getUserId
());
}
else
{
dispatchConsultFeedbackDto
.
setConsultFeedbackUid
(
value
);
}
break
;
case
"main_feedback_result"
:
value
=
alertFormValue
.
getFieldValue
();
dispatchConsultFeedbackDto
.
setMainFeedbackResult
(
value
);
break
;
}
});
return
dispatchConsultFeedbackDto
;
}
@Override
public
Boolean
saveDispatchConsultFeedback
(
DispatchConsultFeedbackDto
dispatchConsultFeedbackDto
)
{
Boolean
flag
=
false
;
// 保存救援回访信息
DispatchPaperFormDto
dispatchPaperFormDto
=
this
.
selectDispatchPaperDtoByAlertId
(
dispatchConsultFeedbackDto
.
getAlertId
());
DispatchPaper
dispatchPaper
=
dispatchPaperFormDto
.
getDispatchPaper
();
// 动态字段
List
<
AlertFormValue
>
dynamicFormAlert
=
dispatchPaperFormDto
.
getDynamicFormAlert
();
SimpleDateFormat
sdf
=
new
SimpleDateFormat
(
"yyyy-MM-dd HH:mm:ss"
);
dynamicFormAlert
.
stream
().
forEach
(
alertFormValue
->
{
switch
(
alertFormValue
.
getFieldCode
())
{
case
"consult_feedback_time"
:
if
(
dispatchConsultFeedbackDto
.
getConsultFeedbackTime
()
!=
null
)
alertFormValue
.
setFieldValue
(
sdf
.
format
(
dispatchConsultFeedbackDto
.
getConsultFeedbackTime
()));
break
;
case
"action_result"
:
if
(
StringUtils
.
isNotBlank
(
dispatchConsultFeedbackDto
.
getActionResult
()))
{
alertFormValue
.
setFieldValue
(
dispatchConsultFeedbackDto
.
getActionResult
());
QueryWrapper
<
DataDictionary
>
queryWrapper
=
new
QueryWrapper
<>();
queryWrapper
.
eq
(
"type"
,
"CZJG"
).
eq
(
"name"
,
dispatchConsultFeedbackDto
.
getActionResult
());
DataDictionary
feedbackType
=
iDataDictionaryService
.
getOne
(
queryWrapper
);
alertFormValue
.
setFieldValueCode
(
feedbackType
.
getCode
());
}
break
;
case
"consult_feedback_type"
:
if
(
StringUtils
.
isNotBlank
(
dispatchConsultFeedbackDto
.
getConsultFeedbackType
()))
{
alertFormValue
.
setFieldValue
(
dispatchConsultFeedbackDto
.
getConsultFeedbackType
());
QueryWrapper
<
DataDictionary
>
queryWrapper
=
new
QueryWrapper
<>();
queryWrapper
.
eq
(
"type"
,
"FKFS"
).
eq
(
"name"
,
dispatchConsultFeedbackDto
.
getConsultFeedbackType
());
DataDictionary
feedbackType
=
iDataDictionaryService
.
getOne
(
queryWrapper
);
alertFormValue
.
setFieldValueCode
(
feedbackType
.
getCode
());
}
break
;
case
"consult_feedback_uname"
:
if
(
StringUtils
.
isNotBlank
(
dispatchConsultFeedbackDto
.
getConsultFeedbackUname
()))
alertFormValue
.
setFieldValue
(
dispatchConsultFeedbackDto
.
getConsultFeedbackUname
());
break
;
case
"consult_feedback_uid"
:
if
(
StringUtils
.
isNotBlank
(
dispatchConsultFeedbackDto
.
getConsultFeedbackUid
()))
alertFormValue
.
setFieldValue
(
dispatchConsultFeedbackDto
.
getConsultFeedbackUid
());
break
;
case
"main_feedback_result"
:
if
(
StringUtils
.
isNotBlank
(
dispatchConsultFeedbackDto
.
getMainFeedbackResult
()))
alertFormValue
.
setFieldValue
(
dispatchConsultFeedbackDto
.
getMainFeedbackResult
());
break
;
case
"feedback_result"
:
if
(
StringUtils
.
isNotBlank
(
dispatchConsultFeedbackDto
.
getFeedbackResult
()))
{
alertFormValue
.
setFieldValue
(
dispatchConsultFeedbackDto
.
getFeedbackResult
());
QueryWrapper
<
DataDictionary
>
queryWrapper
=
new
QueryWrapper
<>();
queryWrapper
.
eq
(
"type"
,
"FKJG"
).
eq
(
"name"
,
dispatchConsultFeedbackDto
.
getFeedbackResult
());
DataDictionary
feedbackType
=
iDataDictionaryService
.
getOne
(
queryWrapper
);
alertFormValue
.
setFieldValueCode
(
feedbackType
.
getCode
());
}
break
;
}
});
dispatchPaper
.
setFeedbackCode
(
dispatchConsultFeedbackDto
.
getFeedbackCode
());
dispatchPaper
.
setFeedbackType
(
dispatchConsultFeedbackDto
.
getFeedbackType
());
dispatchPaper
.
setFeedbackTime
(
dispatchConsultFeedbackDto
.
getFeedbackTime
());
dispatchPaper
.
setFeedbackFinishTime
(
dispatchConsultFeedbackDto
.
getFeedbackFinishTime
());
dispatchPaper
.
setFeedbackUid
(
dispatchConsultFeedbackDto
.
getFeedbackUid
());
dispatchPaper
.
setFeedbackUname
(
dispatchConsultFeedbackDto
.
getFeedbackUname
());
dispatchPaper
.
setRemark
(
dispatchConsultFeedbackDto
.
getRemark
());
// 保存动态表单数据
iAlertFormValueService
.
saveBatch
(
dynamicFormAlert
);
// 保存派遣表
flag
=
this
.
save
(
dispatchPaper
);
return
flag
;
}
}
@Override
@Override
...
...
amos-boot-module/amos-boot-module-biz/amos-boot-module-tzs-biz/src/main/java/com/yeejoin/amos/boot/module/tzs/biz/service/impl/DispatchTaskServiceImpl.java
View file @
5ff596b7
...
@@ -3,7 +3,7 @@ package com.yeejoin.amos.boot.module.tzs.biz.service.impl;
...
@@ -3,7 +3,7 @@ package com.yeejoin.amos.boot.module.tzs.biz.service.impl;
import
com.baomidou.mybatisplus.core.conditions.query.QueryWrapper
;
import
com.baomidou.mybatisplus.core.conditions.query.QueryWrapper
;
import
com.baomidou.mybatisplus.extension.plugins.pagination.Page
;
import
com.baomidou.mybatisplus.extension.plugins.pagination.Page
;
import
com.yeejoin.amos.boot.module.tzs.api.dto.AlertCalledDto
;
import
com.yeejoin.amos.boot.module.tzs.api.dto.AlertCalledDto
;
import
com.yeejoin.amos.boot.module.tzs.api.dto.DispatchPaper
Update
Dto
;
import
com.yeejoin.amos.boot.module.tzs.api.dto.DispatchPaper
Form
Dto
;
import
com.yeejoin.amos.boot.module.tzs.api.dto.DispatchTaskDto
;
import
com.yeejoin.amos.boot.module.tzs.api.dto.DispatchTaskDto
;
import
com.yeejoin.amos.boot.module.tzs.api.entity.AlertFormValue
;
import
com.yeejoin.amos.boot.module.tzs.api.entity.AlertFormValue
;
import
com.yeejoin.amos.boot.module.tzs.api.entity.DispatchPaper
;
import
com.yeejoin.amos.boot.module.tzs.api.entity.DispatchPaper
;
...
@@ -13,7 +13,6 @@ import com.yeejoin.amos.boot.module.tzs.api.entity.MaintenanceUnit;
...
@@ -13,7 +13,6 @@ import com.yeejoin.amos.boot.module.tzs.api.entity.MaintenanceUnit;
import
com.yeejoin.amos.boot.module.tzs.api.entity.RescueStation
;
import
com.yeejoin.amos.boot.module.tzs.api.entity.RescueStation
;
import
com.yeejoin.amos.boot.module.tzs.api.entity.Template
;
import
com.yeejoin.amos.boot.module.tzs.api.entity.Template
;
import
com.yeejoin.amos.boot.module.tzs.api.entity.UseUnit
;
import
com.yeejoin.amos.boot.module.tzs.api.entity.UseUnit
;
import
com.yeejoin.amos.boot.module.tzs.api.enums.DispatchPaperEnums
;
import
com.yeejoin.amos.boot.module.tzs.api.mapper.DispatchTaskMapper
;
import
com.yeejoin.amos.boot.module.tzs.api.mapper.DispatchTaskMapper
;
import
com.yeejoin.amos.boot.module.tzs.api.service.IDispatchTaskService
;
import
com.yeejoin.amos.boot.module.tzs.api.service.IDispatchTaskService
;
import
com.yeejoin.amos.boot.module.tzs.api.service.IMaintenanceUnitService
;
import
com.yeejoin.amos.boot.module.tzs.api.service.IMaintenanceUnitService
;
...
@@ -24,6 +23,7 @@ import com.yeejoin.amos.feign.privilege.model.AgencyUserModel;
...
@@ -24,6 +23,7 @@ import com.yeejoin.amos.feign.privilege.model.AgencyUserModel;
import
org.springframework.beans.factory.annotation.Autowired
;
import
org.springframework.beans.factory.annotation.Autowired
;
import
org.springframework.stereotype.Service
;
import
org.springframework.stereotype.Service
;
import
org.typroject.tyboot.core.rdbms.service.BaseService
;
import
org.typroject.tyboot.core.rdbms.service.BaseService
;
import
org.typroject.tyboot.core.restful.exception.instance.BadRequest
;
import
java.text.SimpleDateFormat
;
import
java.text.SimpleDateFormat
;
import
java.util.Date
;
import
java.util.Date
;
...
@@ -83,38 +83,78 @@ public class DispatchTaskServiceImpl extends BaseService<DispatchTaskDto,Dispatc
...
@@ -83,38 +83,78 @@ public class DispatchTaskServiceImpl extends BaseService<DispatchTaskDto,Dispatc
public
Boolean
createDispatchTask
(
DispatchTaskDto
dispatchTaskDto
,
AgencyUserModel
sendUser
)
{
public
Boolean
createDispatchTask
(
DispatchTaskDto
dispatchTaskDto
,
AgencyUserModel
sendUser
)
{
boolean
flag
=
false
;
boolean
flag
=
false
;
// 判断派遣单是否存在 如果不存在先创建派遣单
// 判断派遣单是否存在 如果不存在先创建派遣单
DispatchPaper
dispatchPaper
=
dispatchPaperServiceImpl
.
selectDispatchPaper
ByAlertId
(
dispatchTaskDto
.
getAlertId
());
DispatchPaper
FormDto
dispatchPaperDto
=
dispatchPaperServiceImpl
.
selectDispatchPaperDto
ByAlertId
(
dispatchTaskDto
.
getAlertId
());
if
(
dispatchPaper
==
null
)
{
if
(
dispatchPaper
Dto
==
null
||
dispatchPaperDto
.
getDispatchPaper
()
==
null
)
{
dispatchPaper
=
dispatchPaperServiceImpl
.
createDispatchPaper
(
dispatchTaskDto
.
getAlertId
(),
dispatchTaskDto
.
getAlertCode
(),
sendUser
);
dispatchPaper
Dto
=
dispatchPaperServiceImpl
.
createDispatchPaper
(
dispatchTaskDto
.
getAlertId
(),
dispatchTaskDto
.
getAlertCode
(),
sendUser
);
}
}
DispatchPaper
dispatchPaper
=
dispatchPaperDto
.
getDispatchPaper
();
List
<
AlertFormValue
>
dynamicFormAlert
=
dispatchPaperDto
.
getDynamicFormAlert
();
// 创建派遣单
// 创建派遣单
dispatchTaskDto
.
setDispatchTime
(
new
Date
());
dispatchTaskDto
.
setDispatchTime
(
new
Date
());
DispatchTask
dispatchTask
=
BeanDtoVoUtils
.
convert
(
dispatchTaskDto
,
DispatchTask
.
class
);
DispatchTask
dispatchTask
=
BeanDtoVoUtils
.
convert
(
dispatchTaskDto
,
DispatchTask
.
class
);
dispatchTask
.
setPaperId
(
dispatchPaper
.
getSequenceNbr
());
dispatchTask
.
setPaperId
(
dispatchPaper
Dto
.
getSequenceNbr
());
flag
=
this
.
save
(
dispatchTask
);
flag
=
this
.
save
(
dispatchTask
);
if
(
flag
)
{
// 创建好派遣任务单以后根据任务单类型修改派遣单信息
if
(
flag
)
{
// 创建好派遣任务单以后根据任务单类型修改派遣单信息
DispatchPaperUpdateDto
paperUpdateDto
=
new
DispatchPaperUpdateDto
();
paperUpdateDto
.
setPageId
(
dispatchPaper
.
getSequenceNbr
());
paperUpdateDto
.
setTaskId
(
dispatchTask
.
getSequenceNbr
());
paperUpdateDto
.
setOrgTypeCode
(
dispatchTask
.
getOrgTypeCode
());
paperUpdateDto
.
setDispatchTime
(
dispatchTask
.
getDispatchTime
());
paperUpdateDto
.
setOrgId
(
dispatchTask
.
getResponseOrgId
());
// 社会信用代码 根据类型查找放入
// 社会信用代码 根据类型查找放入
MaintenanceUnit
maintenanceUnit
=
null
;
switch
(
dispatchTask
.
getOrgTypeCode
())
{
switch
(
dispatchTask
.
getOrgTypeCode
())
{
case
"useUnit"
:
// 使用单位
case
"useUnit"
:
// 使用单位
UseUnit
useUnit
=
iUseUnitService
.
getById
(
dispatchTask
.
getResponseOrgId
());
UseUnit
useUnit
=
iUseUnitService
.
getById
(
dispatchTask
.
getResponseOrgId
());
paperUpdateDto
.
setOrgCreditCode
(
useUnit
.
getSocialCreditCode
());
dispatchPaper
.
setUseOrgId
(
useUnit
.
getSequenceNbr
());
dispatchPaper
.
setUseOrgTaskId
(
dispatchTask
.
getSequenceNbr
());
break
;
break
;
case
"repairUnit"
:
case
"repairUnit"
:
maintenanceUnit
=
iMaintenanceUnitService
.
getById
(
dispatchTask
.
getResponseOrgId
());
dispatchPaper
.
setRepairOrgId
(
maintenanceUnit
.
getSequenceNbr
());
dispatchPaper
.
setRepairOrgTaskId
(
dispatchTask
.
getSequenceNbr
());
break
;
case
"levelOneUnit"
:
case
"levelOneUnit"
:
MaintenanceUnit
maintenanceUnit
=
iMaintenanceUnitService
.
getById
(
dispatchTask
.
getResponseOrgId
());
if
(
dispatchPaper
.
getRepairOrgId
()
!=
null
)
{
// 已经派遣过调派
paperUpdateDto
.
setOrgCreditCode
(
maintenanceUnit
.
getSocialCreditCode
());
throw
new
BadRequest
(
"已经派遣过其他力量调派"
);
}
else
{
maintenanceUnit
=
iMaintenanceUnitService
.
getById
(
dispatchTask
.
getResponseOrgId
());
String
socialCreditCode
=
maintenanceUnit
.
getSocialCreditCode
();
dispatchPaper
.
setRepairOrgId
(
maintenanceUnit
.
getSequenceNbr
());
dispatchPaper
.
setRepairOrgTaskId
(
dispatchTask
.
getSequenceNbr
());
// 修改动态字段
dynamicFormAlert
.
stream
().
forEach
(
alertFormValue
->
{
if
(
alertFormValue
.
getFieldCode
().
equals
(
"dispatch_status"
))
{
alertFormValue
.
setFieldValue
(
"已派遣"
);
alertFormValue
.
setFieldValueCode
(
"hasDispatched"
);
}
else
if
(
alertFormValue
.
getFieldCode
().
equals
(
"response_level"
))
{
alertFormValue
.
setFieldValue
(
"一级响应"
);
alertFormValue
.
setFieldValueCode
(
"levelOneUnit"
);
}
else
if
(
alertFormValue
.
getFieldCode
().
equals
(
"save_credit_code"
))
{
alertFormValue
.
setFieldValue
(
socialCreditCode
);
}
});
}
break
;
break
;
case
"levelTwoUnit"
:
case
"levelTwoUnit"
:
RescueStation
rescueStation
=
iRescueStationService
.
getById
(
dispatchTask
.
getResponseOrgId
());
if
(
dispatchPaper
.
getRepairOrgId
()
!=
null
)
{
// 已经派遣过调派
throw
new
BadRequest
(
"已经派遣过其他力量调派"
);
}
else
{
RescueStation
rescueStation
=
iRescueStationService
.
getById
(
dispatchTask
.
getResponseOrgId
());
dispatchPaper
.
setRepairOrgId
(
rescueStation
.
getSequenceNbr
());
dispatchPaper
.
setRepairOrgTaskId
(
dispatchTask
.
getSequenceNbr
());
// 修改动态字段
dynamicFormAlert
.
stream
().
forEach
(
alertFormValue
->
{
if
(
alertFormValue
.
getFieldCode
().
equals
(
"dispatch_status"
))
{
alertFormValue
.
setFieldValue
(
"已派遣"
);
alertFormValue
.
setFieldValueCode
(
"hasDispatched"
);
}
else
if
(
alertFormValue
.
getFieldCode
().
equals
(
"response_level"
))
{
alertFormValue
.
setFieldValue
(
"二级响应"
);
alertFormValue
.
setFieldValueCode
(
"levelTwoUnit"
);
}
});
}
break
;
break
;
}
}
// 保存派遣单
dispatchPaperServiceImpl
.
save
(
dispatchPaper
);
// 保存动态表单数据
iAlertFormValueService
.
saveBatch
(
dynamicFormAlert
);
}
}
return
flag
;
return
flag
;
}
}
...
...
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