Skip to content
项目
群组
代码片段
帮助
当前项目
正在载入...
登录 / 注册
切换导航面板
I
ims
概览
概览
详情
活动
周期分析
版本库
仓库
文件
提交
分支
标签
贡献者
分支图
比较
统计图
问题
0
议题
0
列表
看板
标记
里程碑
合并请求
0
合并请求
0
CI / CD
CI / CD
流水线
作业
日程表
图表
维基
Wiki
代码片段
代码片段
成员
成员
折叠边栏
关闭边栏
活动
图像
聊天
创建新问题
作业
提交
问题看板
Open sidebar
iuav
ims
Commits
2600132a
提交
2600132a
authored
12月 29, 2023
作者:
刘明祎-运维用途
浏览文件
操作
浏览文件
下载
差异文件
Merge branch 'develop'
上级
f28e9d11
73814cc7
流水线
#7795
已通过 于阶段
in 2 分 41 秒
变更
19
流水线
1
全部展开
隐藏空白字符变更
内嵌
并排
正在显示
19 个修改的文件
包含
583 行增加
和
7 行删除
+583
-7
TeamMessageDO.java
...c/main/java/com/mmc/csf/infomation/dto/TeamMessageDO.java
+29
-0
MyPublishQO.java
.../src/main/java/com/mmc/csf/infomation/qo/MyPublishQO.java
+3
-0
PersonSendOrderVO.java
...ain/java/com/mmc/csf/infomation/vo/PersonSendOrderVO.java
+33
-0
RequirementsInfoVO.java
...in/java/com/mmc/csf/infomation/vo/RequirementsInfoVO.java
+5
-1
kustomization.yaml
kustomization/overlays/dev/kustomization.yaml
+1
-1
RequirementsController.java
...om/mmc/csf/release/controller/RequirementsController.java
+67
-1
RequirementsDao.java
...rc/main/java/com/mmc/csf/release/dao/RequirementsDao.java
+105
-1
PersonSendOrderDO.java
...mmc/csf/release/entity/information/PersonSendOrderDO.java
+57
-0
RequirementsInfoDO.java
...c/csf/release/entity/requirements/RequirementsInfoDO.java
+9
-0
RequirementsServiceDO.java
...sf/release/entity/requirements/RequirementsServiceDO.java
+12
-1
ServiceIdEnum.java
...rc/main/java/com/mmc/csf/release/enums/ServiceIdEnum.java
+2
-2
UserAppApi.java
...e/src/main/java/com/mmc/csf/release/feign/UserAppApi.java
+7
-0
UserAppApiHystrix.java
.../com/mmc/csf/release/feign/hystrix/UserAppApiHystrix.java
+11
-0
RequirementsService.java
...java/com/mmc/csf/release/service/RequirementsService.java
+36
-0
RequirementsServiceImpl.java
...mmc/csf/release/service/impl/RequirementsServiceImpl.java
+0
-0
MyTask.java
...ervice/src/main/java/com/mmc/csf/release/util/MyTask.java
+33
-0
ScheduledTaskUtil.java
...main/java/com/mmc/csf/release/util/ScheduledTaskUtil.java
+54
-0
SmsUtil.java
...rvice/src/main/java/com/mmc/csf/release/util/SmsUtil.java
+119
-0
RequirementsDao.xml
...rc/main/resources/mapper/requirements/RequirementsDao.xml
+0
-0
没有找到文件。
csf-common/csf-common-model/src/main/java/com/mmc/csf/infomation/dto/TeamMessageDO.java
0 → 100644
浏览文件 @
2600132a
package
com
.
mmc
.
csf
.
infomation
.
dto
;
import
lombok.AllArgsConstructor
;
import
lombok.Builder
;
import
lombok.Data
;
import
lombok.NoArgsConstructor
;
import
java.io.Serializable
;
/**
* @author han
*/
@Data
@AllArgsConstructor
@NoArgsConstructor
public
class
TeamMessageDO
{
/**
* 飞手ID
*/
private
Integer
pilotId
;
/**
* 飞手的用户ID
*/
private
Integer
pilotUserId
;
/**
* 飞手的团队管理员ID
*/
private
Integer
pilotMessageId
;
}
csf-common/csf-common-model/src/main/java/com/mmc/csf/infomation/qo/MyPublishQO.java
浏览文件 @
2600132a
package
com
.
mmc
.
csf
.
infomation
.
qo
;
import
com.fasterxml.jackson.annotation.JsonIgnore
;
import
com.mmc.csf.release.model.group.Freeze
;
import
com.mmc.csf.release.model.group.Page
;
import
io.swagger.annotations.ApiModelProperty
;
...
...
@@ -40,6 +41,8 @@ public class MyPublishQO {
@ApiModelProperty
(
value
=
"描述"
,
example
=
"hh"
)
private
String
requireDescription
;
@JsonIgnore
private
int
type
;
public
void
buildCurrentPage
()
{
this
.
pageNo
=
(
pageNo
-
1
)
*
pageSize
;
}
...
...
csf-common/csf-common-model/src/main/java/com/mmc/csf/infomation/vo/PersonSendOrderVO.java
0 → 100644
浏览文件 @
2600132a
package
com
.
mmc
.
csf
.
infomation
.
vo
;
import
io.swagger.annotations.ApiModelProperty
;
import
lombok.AllArgsConstructor
;
import
lombok.Builder
;
import
lombok.Data
;
import
lombok.NoArgsConstructor
;
import
javax.validation.constraints.NotNull
;
import
java.io.Serializable
;
/**
* @author han
*/
@Data
@AllArgsConstructor
@NoArgsConstructor
@Builder
public
class
PersonSendOrderVO
implements
Serializable
{
private
static
final
long
serialVersionUID
=
1L
;
@ApiModelProperty
(
value
=
"服务需求订单id"
)
@NotNull
(
message
=
"id不能为空"
)
private
Integer
requirementsInfoId
;
@ApiModelProperty
(
value
=
"派单飞手id"
)
private
Integer
pilotCertificationId
;
@ApiModelProperty
(
value
=
"派单飞手用户id"
)
private
Integer
pilotCertificationUserId
;
@ApiModelProperty
(
value
=
"是否是管理员派单"
)
private
int
isAdminSend
;
}
csf-common/csf-common-model/src/main/java/com/mmc/csf/infomation/vo/RequirementsInfoVO.java
浏览文件 @
2600132a
...
...
@@ -31,6 +31,8 @@ public class RequirementsInfoVO implements Serializable {
@NotNull
(
message
=
"id不能为空"
,
groups
=
{
Update
.
class
})
private
Integer
id
;
private
Integer
tempId
;
@ApiModelProperty
(
value
=
"需求发布id"
,
hidden
=
true
)
private
Integer
requirementsInfoId
;
...
...
@@ -79,7 +81,6 @@ public class RequirementsInfoVO implements Serializable {
@ApiModelProperty
(
value
=
"描述图片"
,
example
=
"http://,http://"
,
required
=
false
)
private
String
requireUrl
;
@ApiModelProperty
(
value
=
"发布者姓名"
,
example
=
"张三"
)
// @NotNull(message = "发布者姓名不能为空", groups = {Insert.class})
private
String
publishName
;
...
...
@@ -197,4 +198,7 @@ public class RequirementsInfoVO implements Serializable {
@ApiModelProperty
(
value
=
"后台修改后的金额"
)
private
BigDecimal
changedOrderAmount
;
@ApiModelProperty
(
value
=
"管理员操作"
)
private
int
teamStatus
;
}
kustomization/overlays/dev/kustomization.yaml
浏览文件 @
2600132a
...
...
@@ -18,4 +18,4 @@ patches:
images
:
-
name
:
REGISTRY/NAMESPACE/IMAGE:TAG
newName
:
mmc-registry.cn-shenzhen.cr.aliyuncs.com/sharefly-dev/ims
newTag
:
da7a362b93628d503ae6873ee076f5687a6b5044
newTag
:
6f3ad603703d1d0435d83e3e6bf472d8e0467c50
release-service/src/main/java/com/mmc/csf/release/controller/RequirementsController.java
浏览文件 @
2600132a
...
...
@@ -177,6 +177,13 @@ public class RequirementsController extends BaseController {
return
ResultBody
.
success
(
requirementsService
.
myPublish
(
this
.
getUserLoginInfoFromRedis
(
request
).
getUserAccountId
(),
param
));
}
@ApiOperation
(
value
=
"小程序——我的发布(需要派单列表)"
)
@ApiResponses
({
@ApiResponse
(
code
=
200
,
message
=
"OK"
,
response
=
ResultBody
.
class
)})
@PostMapping
(
"mySendPublish"
)
public
ResultBody
<
RequirementsInfoVO
>
mySendPublish
(
HttpServletRequest
request
,
@Validated
(
value
=
{
Page
.
class
})
@ApiParam
(
value
=
"我的发单"
,
required
=
true
)
@RequestBody
MyPublishQO
param
)
{
return
ResultBody
.
success
(
requirementsService
.
mySendPublish
(
this
.
getUserLoginInfoFromRedis
(
request
).
getUserAccountId
(),
param
));
}
@ApiOperation
(
value
=
"new——小程序-—服务订单--我的抢单"
)
@ApiResponses
({
@ApiResponse
(
code
=
200
,
message
=
"OK"
,
response
=
ResultBody
.
class
)})
...
...
@@ -356,17 +363,75 @@ public class RequirementsController extends BaseController {
return
requirementsService
.
deleteRequire
(
requirementsInfoId
,
this
.
getUserLoginInfoFromRedis
(
request
).
getUserAccountId
());
}
@ApiOperation
(
value
=
"小程序—获取子订单详细信息"
)
@ApiOperation
(
value
=
"小程序—
抢单——
获取子订单详细信息"
)
@ApiResponses
({
@ApiResponse
(
code
=
200
,
message
=
"OK"
,
response
=
ResultBody
.
class
)})
@PostMapping
(
"selectRequireSonInfo"
)
public
ResultBody
<
RequirementsInfoVO
>
selectRequireSonInfo
(
HttpServletRequest
request
,
@Validated
(
value
=
{
Page
.
class
})
@ApiParam
(
value
=
"查询所有子订单信息"
,
required
=
true
)
@RequestBody
MyPublishQO
param
)
{
param
.
setType
(
0
);
return
ResultBody
.
success
(
requirementsService
.
selectRequireSonInfo
(
this
.
getUserLoginInfoFromRedis
(
request
).
getUserAccountId
(),
param
));
}
@ApiOperation
(
value
=
"小程序——派单——获取子订单信息"
)
@ApiResponses
({
@ApiResponse
(
code
=
200
,
message
=
"OK"
,
response
=
ResultBody
.
class
)})
@PostMapping
(
"selectRequireInfo"
)
public
ResultBody
<
RequirementsInfoVO
>
selectRequireInfo
(
HttpServletRequest
request
,
@Validated
(
value
=
{
Page
.
class
})
@ApiParam
(
value
=
"查询所有子订单信息"
,
required
=
true
)
@RequestBody
MyPublishQO
param
)
{
param
.
setType
(
1
);
return
ResultBody
.
success
(
requirementsService
.
selectRequireSonInfo
(
this
.
getUserLoginInfoFromRedis
(
request
).
getUserAccountId
(),
param
));
}
@ApiOperation
(
value
=
"小程序—发单方(同意/拒绝)该飞手"
)
@ApiResponses
({
@ApiResponse
(
code
=
200
,
message
=
"OK"
,
response
=
ResultBody
.
class
)})
@PostMapping
(
"agreeOrRefusePilot"
)
public
ResultBody
agreeOrRefusePilot
(
@Validated
@RequestBody
AgreeOrRefusePilotQO
param
)
{
return
requirementsService
.
agreeOrRefusePilot
(
param
);
}
@ApiOperation
(
value
=
"飞手派单"
)
@ApiResponses
({
@ApiResponse
(
code
=
200
,
message
=
"OK"
,
response
=
ResultBody
.
class
)})
@PostMapping
(
"/personSendOrder"
)
public
ResultBody
personSendOrder
(
HttpServletRequest
request
,
@RequestBody
PersonSendOrderVO
personSendOrderVO
)
{
return
requirementsService
.
personSendOrder
(
personSendOrderVO
,
this
.
getUserLoginInfoFromRedis
(
request
).
getToken
());
}
@ApiOperation
(
value
=
"管理员派单派单"
)
@ApiResponses
({
@ApiResponse
(
code
=
200
,
message
=
"OK"
,
response
=
ResultBody
.
class
)})
@PostMapping
(
"/adminSendOrder"
)
public
ResultBody
adminSendOrder
(
HttpServletRequest
request
,
@RequestBody
PersonSendOrderVO
personSendOrderVO
)
{
personSendOrderVO
.
setIsAdminSend
(
1
);
return
requirementsService
.
personSendOrder
(
personSendOrderVO
,
this
.
getUserLoginInfoFromRedis
(
request
).
getToken
());
}
@ApiOperation
(
value
=
"团队派单"
)
@ApiResponses
({
@ApiResponse
(
code
=
200
,
message
=
"OK"
,
response
=
ResultBody
.
class
)})
@GetMapping
(
"/teamSendOrder"
)
public
ResultBody
teamSendOrder
(
HttpServletRequest
request
,
@ApiParam
(
value
=
"父订单id"
)
@RequestParam
Integer
fatherRequireId
,
@ApiParam
(
value
=
"团队管理员的id"
)
@RequestParam
Integer
messageId
)
{
return
requirementsService
.
teamSendOrder
(
fatherRequireId
,
messageId
,
this
.
getUserLoginInfoFromRedis
(
request
).
getToken
());
}
@ApiOperation
(
value
=
"我的派单列表——待确认"
)
@ApiResponses
({
@ApiResponse
(
code
=
200
,
message
=
"OK"
,
response
=
ResultBody
.
class
)})
@PostMapping
(
"mySendOderList"
)
public
ResultBody
<
RequirementsInfoVO
>
mySendOderList
(
HttpServletRequest
request
,
@Validated
(
value
=
{
Page
.
class
})
@ApiParam
(
value
=
"我的抢单"
,
required
=
true
)
@RequestBody
MyPreemptQO
param
)
{
return
ResultBody
.
success
(
requirementsService
.
mySendOderList
(
this
.
getUserLoginInfoFromRedis
(
request
).
getUserAccountId
(),
param
));
// return ResultBody.success(requirementsService.mySendOderList(337, param));
}
@ApiOperation
(
value
=
"我的派单——去确认"
)
@ApiResponses
({
@ApiResponse
(
code
=
200
,
message
=
"OK"
,
response
=
ResultBody
.
class
)})
@GetMapping
(
"orderConfirmationByPilot"
)
public
ResultBody
orderConfirmationByPilot
(
HttpServletRequest
request
,
@ApiParam
(
value
=
"派单id"
)
@RequestParam
Integer
tempId
,
@ApiParam
(
value
=
"确认状态:1同意,2不同意"
)
@RequestParam
Integer
status
)
{
return
requirementsService
.
orderConfirmationByPilot
(
tempId
,
status
,
this
.
getUserLoginInfoFromRedis
(
request
).
getToken
());
}
@ApiOperation
(
value
=
"管理员确认(拒绝)派单"
)
@ApiResponses
({
@ApiResponse
(
code
=
200
,
message
=
"OK"
,
response
=
ResultBody
.
class
)})
@GetMapping
(
"adminAgreeOrder"
)
public
ResultBody
adminAgreeOrder
(
HttpServletRequest
request
,
@ApiParam
(
value
=
"派单id"
)
@RequestParam
Integer
requireId
,
@ApiParam
(
value
=
"确认状态:1同意,2不同意"
)
@RequestParam
Integer
status
)
{
return
requirementsService
.
orderConfirmationByTeam
(
requireId
,
status
,
this
.
getUserLoginInfoFromRedis
(
request
).
getToken
());
}
}
\ No newline at end of file
release-service/src/main/java/com/mmc/csf/release/dao/RequirementsDao.java
浏览文件 @
2600132a
...
...
@@ -4,8 +4,11 @@ import com.mmc.csf.infomation.dto.*;
import
com.mmc.csf.infomation.qo.*
;
import
com.mmc.csf.infomation.vo.LiabilityProblemVO
;
import
com.mmc.csf.infomation.vo.ServiceSettleAccountsVO
;
import
com.mmc.csf.release.entity.information.PersonSendOrderDO
;
import
com.mmc.csf.release.entity.requirements.*
;
import
io.swagger.models.auth.In
;
import
org.apache.ibatis.annotations.Mapper
;
import
org.apache.ibatis.annotations.Param
;
import
java.math.BigDecimal
;
import
java.util.List
;
...
...
@@ -95,6 +98,7 @@ public interface RequirementsDao {
RequirementsInfoDO
detailPublish
(
Integer
id
);
RequirementsInfoDO
detailSendPublish
(
Integer
id
);
/**
* 获取被拒绝飞手具体订单信息
* @param id 订单id
...
...
@@ -136,6 +140,15 @@ public interface RequirementsDao {
List
<
RequirementsInfoDO
>
myPublish
(
MyPublishQO
param
);
int
mySendPublishCount
(
MyPublishQO
param
);
/**
* 获取需要管理员(飞手团队后台账号对应的小程序用户id) 同意或者指派的订单
* @param param 条件
* @return {@link List}<{@link RequirementsInfoDO}>
*/
List
<
RequirementsInfoDO
>
mySendPublish
(
MyPublishQO
param
);
List
<
RequirementsInfoDO
>
myPreempt
(
MyPreemptQO
param
);
RequirementsServiceDO
droneFlyerCancel
(
Integer
requirementsInfoId
,
Integer
userAccountId
);
...
...
@@ -319,7 +332,7 @@ public interface RequirementsDao {
* @param requirementsId 订单id
* @return {@link Integer}
*/
Integer
selectRequirementsNum
(
Integer
requirementsId
);
int
selectRequirementsNum
(
Integer
requirementsId
);
/**
* 根据父订单id查询不满足状态条件的子订单数量
...
...
@@ -354,6 +367,14 @@ public interface RequirementsDao {
RequirementsServicePilotInfoDO
selectPilotInfoByRequireId
(
Integer
requireId
);
/**
* 获取临时表对应的订单信息
* @param requireId
* @return {@link RequirementsServicePilotInfoDO}
*/
RequirementsServicePilotInfoDO
selectTempPilotInfoByRequireId
(
Integer
requireId
);
/**
* 根据流程id查询订单所处状态
* @param serviceFlowId
...
...
@@ -401,4 +422,87 @@ public interface RequirementsDao {
* @return {@link Integer}
*/
Integer
getPilotUserIdByRequireId
(
Integer
requireId
);
/**
* 根据飞手进行派单操作
*/
Integer
personSendOrder
(
PersonSendOrderDO
personSendOrderDO
);
/**
* 查询父订单下面的所有子订单id
*/
List
<
Integer
>
selectAllSuborder
(
Integer
fatherRequireId
);
/**
* 修改info表中的状态
*/
Integer
updateInfoStatus
(
@Param
(
"id"
)
Integer
requireId
,
@Param
(
"status"
)
Integer
status
);
/**
* 查询飞手是否重复派单
*/
Integer
isReSendOrder
(
Integer
requireId
);
Integer
reSendOrder
(
@Param
(
"requireId"
)
Integer
requireId
,
@Param
(
"userAccountId"
)
Integer
userAccountId
);
/**
* 查询飞手订单是否被抢
*/
Integer
isLootedByPilot
(
Integer
requireId
);
/**
* 查询团队订单是否被抢
*/
Integer
isLootedByTeam
(
Integer
requireId
);
/**
* 查询是否是团队派单
*/
Integer
isTeamSendOrder
(
@Param
(
"requireId"
)
Integer
requireId
);
/**
* 查询派单信息
*/
PersonSendOrderDO
selectSendOrderById
(
Integer
id
);
/**
* 飞手是否确认接单
*/
Integer
orderConfirmationByPilot
(
@Param
(
"id"
)
Integer
id
,
@Param
(
"status"
)
Integer
status
);
/**
* 查询飞手是否重复确认
*/
Integer
isReConfirm
(
Integer
id
);
void
updateSendOrder
(
PersonSendOrderDO
personSendOrderDO
);
void
deleteSendOrder
(
Integer
requirementsInfoId
);
/**
* 管理员确认接单
*/
Integer
orderConfirmationByTeam
(
@Param
(
"id"
)
Integer
id
,
@Param
(
"status"
)
Integer
status
);
/**
* 飞手拒绝后订单发往抢单大厅
*/
Integer
updateCount
(
Integer
id
);
/**
* 根据飞手ID查询派单的列表数量
*/
Integer
mySendOderListCount
(
MyPreemptQO
param
);
/**
* 根据飞手ID查询派单的列表
*/
List
<
RequirementsInfoDO
>
mySendOderList
(
MyPreemptQO
param
);
/**
* 根据订单id查询发单用户的id
*/
Integer
selectSenderId
(
Integer
id
);
/**
* 修改
* @param requireId
* @param num
*/
void
updateOrderRequireNum
(
Integer
requireId
,
int
num
);
}
release-service/src/main/java/com/mmc/csf/release/entity/information/PersonSendOrderDO.java
0 → 100644
浏览文件 @
2600132a
package
com
.
mmc
.
csf
.
release
.
entity
.
information
;
import
com.mmc.csf.infomation.vo.IndustryCaseVO
;
import
com.mmc.csf.infomation.vo.PersonSendOrderVO
;
import
io.swagger.annotations.ApiModelProperty
;
import
lombok.AllArgsConstructor
;
import
lombok.Builder
;
import
lombok.Data
;
import
lombok.NoArgsConstructor
;
import
javax.validation.constraints.NotNull
;
import
java.io.Serializable
;
import
java.util.Date
;
/**
* @author han
*/
@Data
@AllArgsConstructor
@NoArgsConstructor
@Builder
public
class
PersonSendOrderDO
implements
Serializable
{
private
static
final
long
serialVersionUID
=
1L
;
private
Integer
id
;
/**
* 服务需求订单id
*/
private
Integer
requirementsInfoId
;
/**
* 派单飞手id
*/
private
Integer
pilotCertificationId
;
/**
* 派单飞手用户id
*/
private
Integer
pilotCertificationUserId
;
/**
* 派单飞手用户id
*/
private
Integer
teamId
;
/**
* 派单飞手用户id
*/
private
Integer
teamUserId
;
/**
* 创建时间
*/
private
Date
createTime
;
public
PersonSendOrderDO
(
PersonSendOrderVO
personSendOrderVO
){
this
.
requirementsInfoId
=
personSendOrderVO
.
getRequirementsInfoId
();
this
.
pilotCertificationId
=
personSendOrderVO
.
getPilotCertificationId
();
this
.
pilotCertificationUserId
=
personSendOrderVO
.
getPilotCertificationUserId
();
}
}
release-service/src/main/java/com/mmc/csf/release/entity/requirements/RequirementsInfoDO.java
浏览文件 @
2600132a
...
...
@@ -28,6 +28,9 @@ import java.util.Date;
public
class
RequirementsInfoDO
implements
Serializable
{
private
static
final
long
serialVersionUID
=
-
1811974173256250060L
;
private
Integer
id
;
private
Integer
tempId
;
private
Integer
requirementTypeId
;
private
Integer
userAccountId
;
private
Integer
provinceCode
;
...
...
@@ -183,6 +186,8 @@ public class RequirementsInfoDO implements Serializable {
@ApiModelProperty
(
value
=
"订单的父订单id"
)
private
Integer
fatherRequireId
;
@ApiModelProperty
(
value
=
"管理员操作"
)
private
int
teamStatus
;
public
RequirementsInfoVO
buildRequirementsInfoVO
()
{
return
RequirementsInfoVO
.
builder
().
id
(
this
.
id
).
requirementTypeId
(
this
.
requirementTypeId
).
userAccountId
(
this
.
userAccountId
).
publishName
(
this
.
publishName
)
...
...
@@ -221,6 +226,10 @@ public class RequirementsInfoDO implements Serializable {
.
repertory
(
this
.
repertory
)
.
requireNum
(
this
.
requireNum
)
.
serviceFlowId
(
this
.
serviceFlowId
)
.
teamStatus
(
this
.
teamStatus
)
.
tempId
(
this
.
tempId
)
.
pilotCertificationId
(
this
.
pilotCertificationId
)
.
pilotCertificationUserId
(
this
.
pilotCertificationUserId
)
.
build
();
}
...
...
release-service/src/main/java/com/mmc/csf/release/entity/requirements/RequirementsServiceDO.java
浏览文件 @
2600132a
...
...
@@ -3,6 +3,7 @@ package com.mmc.csf.release.entity.requirements;
import
com.alibaba.fastjson.annotation.JSONField
;
import
com.mmc.csf.config.IsNullConvertZero
;
import
com.mmc.csf.infomation.dto.PilotCertificationInteriorDTO
;
import
com.mmc.csf.release.entity.information.PersonSendOrderDO
;
import
io.swagger.annotations.ApiModelProperty
;
import
lombok.AllArgsConstructor
;
import
lombok.Data
;
...
...
@@ -89,5 +90,15 @@ public class RequirementsServiceDO implements Serializable {
this
.
requirementsInfoId
=
requirementsInfoDO
.
getId
();
}
/**
* 派单信息同步
*/
public
RequirementsServiceDO
(
PersonSendOrderDO
personSendOrderDO
){
this
.
requirementsInfoId
=
personSendOrderDO
.
getRequirementsInfoId
();
this
.
pilotCertificationId
=
personSendOrderDO
.
getPilotCertificationId
();
this
.
pilotCertificationUserId
=
personSendOrderDO
.
getPilotCertificationUserId
();
this
.
teamUserId
=
personSendOrderDO
.
getTeamUserId
();
this
.
teamId
=
personSendOrderDO
.
getTeamId
();
this
.
serviceFlowId
=
2
;
}
}
release-service/src/main/java/com/mmc/csf/release/enums/ServiceIdEnum.java
浏览文件 @
2600132a
...
...
@@ -7,8 +7,8 @@ package com.mmc.csf.release.enums;
*/
public
enum
ServiceIdEnum
{
WAIT_CHANGE_AMOUNT
(
12
,
"等待修改金额"
),
DETAIL_COMPLETE
(
4
,
"任务已完成"
)
;
DETAIL_COMPLETE
(
4
,
"任务已完成"
)
,
SENDING_OUT_ORDERS
(
13
,
"派单中"
);
private
Integer
code
;
private
String
name
;
...
...
release-service/src/main/java/com/mmc/csf/release/feign/UserAppApi.java
浏览文件 @
2600132a
...
...
@@ -3,6 +3,7 @@ package com.mmc.csf.release.feign;
import
com.mmc.csf.common.util.web.ResultBody
;
import
com.mmc.csf.infomation.dto.PilotCertificationInteriorDTO
;
import
com.mmc.csf.infomation.dto.TeamMessageDO
;
import
com.mmc.csf.infomation.dto.UserAccountSimpleDTO
;
import
com.mmc.csf.infomation.dto.UserBaseInfoDTO
;
import
com.mmc.csf.release.auth.qo.BUserAccountQO
;
...
...
@@ -93,4 +94,10 @@ public interface UserAppApi {
@PostMapping
(
"/userapp/wx/send"
)
ResultBody
feignSendWxMsg
(
@RequestHeader
(
"token"
)
String
token
,
@RequestBody
WxMsgVO
ws
);
@GetMapping
(
"/userapp/pilot/selectPilotTeamManagerId"
)
Integer
selectPilotTeamManagerId
(
@RequestHeader
(
"token"
)
String
token
,
@RequestParam
Integer
pilotUserId
);
@GetMapping
(
"/userapp/pilot/getPilotApplyPhone"
)
String
getPilotApplyPhone
(
@RequestHeader
(
"token"
)
String
token
,
@RequestParam
Integer
userAccountId
);
}
release-service/src/main/java/com/mmc/csf/release/feign/hystrix/UserAppApiHystrix.java
浏览文件 @
2600132a
...
...
@@ -4,6 +4,7 @@ import com.alibaba.fastjson.JSONObject;
import
com.mmc.csf.common.util.web.ResultBody
;
import
com.mmc.csf.common.util.web.ResultEnum
;
import
com.mmc.csf.infomation.dto.PilotCertificationInteriorDTO
;
import
com.mmc.csf.infomation.dto.TeamMessageDO
;
import
com.mmc.csf.infomation.dto.UserAccountSimpleDTO
;
import
com.mmc.csf.infomation.dto.UserBaseInfoDTO
;
import
com.mmc.csf.release.auth.qo.BUserAccountQO
;
...
...
@@ -89,5 +90,15 @@ public class UserAppApiHystrix implements UserAppApi {
return
null
;
}
@Override
public
Integer
selectPilotTeamManagerId
(
String
token
,
Integer
pilotUserId
)
{
return
null
;
}
@Override
public
String
getPilotApplyPhone
(
String
token
,
Integer
userAccountId
)
{
return
null
;
}
}
release-service/src/main/java/com/mmc/csf/release/service/RequirementsService.java
浏览文件 @
2600132a
...
...
@@ -5,6 +5,7 @@ import com.mmc.csf.common.util.web.ResultBody;
import
com.mmc.csf.infomation.dto.*
;
import
com.mmc.csf.infomation.qo.*
;
import
com.mmc.csf.infomation.vo.*
;
import
com.mmc.csf.release.entity.information.PersonSendOrderDO
;
import
com.mmc.csf.release.entity.requirements.ServiceRequirementsDO
;
import
javax.servlet.http.HttpServletRequest
;
...
...
@@ -71,6 +72,14 @@ public interface RequirementsService {
PageResult
myPublish
(
Integer
userAccountId
,
MyPublishQO
param
);
/**
* 需要指派或者需要同意派单的列表
* @param adminUserId 用户的id
* @param param 查询的条件
* @return {@link PageResult}
*/
PageResult
mySendPublish
(
Integer
adminUserId
,
MyPublishQO
param
);
ResultBody
<
RequirementsInfoVO
>
grabTheOrder
(
GrabTheOrderVO
grabTheOrderVO
,
HttpServletRequest
request
);
ResultBody
arriveAtTheScene
(
ServiceArriveSceneVO
serviceArriveSceneVO
);
...
...
@@ -134,10 +143,37 @@ public interface RequirementsService {
*/
PageResult
selectRequireSonInfo
(
Integer
userAccountId
,
MyPublishQO
param
);
/**
* 同意或者拒绝飞手接单
* @param param 参数
* @return {@link ResultBody}
*/
ResultBody
agreeOrRefusePilot
(
AgreeOrRefusePilotQO
param
);
/**
* 根据飞手进行派单操作
*/
ResultBody
personSendOrder
(
PersonSendOrderVO
personSendOrderVO
,
String
token
);
/**
* 根据团队进行派单操作
*/
ResultBody
teamSendOrder
(
Integer
fatherRequireId
,
Integer
messageId
,
String
token
);
/**
* 飞手确认接单
*/
ResultBody
orderConfirmationByPilot
(
Integer
id
,
Integer
status
,
String
token
);
/**
* 管理员确认接单
*/
ResultBody
orderConfirmationByTeam
(
Integer
id
,
Integer
status
,
String
token
);
/**
* 个人飞手派单的订单列表
*/
PageResult
mySendOderList
(
Integer
userAccountId
,
MyPreemptQO
param
);
}
release-service/src/main/java/com/mmc/csf/release/service/impl/RequirementsServiceImpl.java
浏览文件 @
2600132a
差异被折叠。
点击展开。
release-service/src/main/java/com/mmc/csf/release/util/MyTask.java
0 → 100644
浏览文件 @
2600132a
package
com
.
mmc
.
csf
.
release
.
util
;
import
com.mmc.csf.infomation.vo.PersonSendOrderVO
;
import
com.mmc.csf.release.dao.RequirementsDao
;
import
org.springframework.beans.factory.annotation.Autowired
;
import
org.springframework.data.redis.core.RedisTemplate
;
import
org.springframework.stereotype.Component
;
import
java.io.Serializable
;
import
java.util.TimerTask
;
@Component
public
class
MyTask
extends
TimerTask
implements
Serializable
{
private
final
RequirementsDao
requirementsDao
;
private
PersonSendOrderVO
personSendOrderVO
;
public
MyTask
(
RequirementsDao
requirementsDao
)
{
this
.
requirementsDao
=
requirementsDao
;
}
public
void
setPersonSendOrderVO
(
PersonSendOrderVO
personSendOrderVO
)
{
this
.
personSendOrderVO
=
personSendOrderVO
;
}
private
static
final
long
serialVersionUID
=
1L
;
@Override
public
void
run
()
{
requirementsDao
.
deleteSendOrder
(
personSendOrderVO
.
getRequirementsInfoId
());
System
.
out
.
println
(
"定时任务执行完毕!"
);
}
}
release-service/src/main/java/com/mmc/csf/release/util/ScheduledTaskUtil.java
0 → 100644
浏览文件 @
2600132a
package
com
.
mmc
.
csf
.
release
.
util
;
import
com.mmc.csf.infomation.vo.PersonSendOrderVO
;
import
com.mmc.csf.release.dao.RequirementsDao
;
import
org.springframework.beans.factory.annotation.Autowired
;
import
org.springframework.data.redis.core.RedisTemplate
;
import
org.springframework.data.redis.serializer.GenericJackson2JsonRedisSerializer
;
import
org.springframework.scheduling.TaskScheduler
;
import
org.springframework.scheduling.support.CronTrigger
;
import
org.springframework.stereotype.Component
;
import
java.time.Instant
;
import
java.util.Map
;
import
java.util.concurrent.ConcurrentHashMap
;
import
java.util.concurrent.ScheduledFuture
;
import
java.util.concurrent.TimeUnit
;
@Component
public
class
ScheduledTaskUtil
{
@Autowired
private
RedisTemplate
<
String
,
Object
>
redisTemplate
;
@Autowired
private
TaskScheduler
taskScheduler
;
@Autowired
private
RequirementsDao
requirementsDao
;
private
final
Map
<
Integer
,
ScheduledFuture
<?>>
scheduledTasks
=
new
ConcurrentHashMap
<>();
public
void
create
(
PersonSendOrderVO
personSendOrderVO
){
long
delay
=
10000
;
// 延迟5s开始执行
MyTask
task
=
new
MyTask
(
requirementsDao
);
task
.
setPersonSendOrderVO
(
personSendOrderVO
);
redisTemplate
.
setValueSerializer
(
new
GenericJackson2JsonRedisSerializer
());
redisTemplate
.
opsForValue
().
set
(
"task"
+
personSendOrderVO
.
getRequirementsInfoId
(),
task
,
delay
,
TimeUnit
.
MILLISECONDS
);
// 使用TaskScheduler执行定时任务
System
.
out
.
println
(
"定时任务已开启"
);
ScheduledFuture
<?>
scheduledFuture
=
taskScheduler
.
schedule
(
task
,
Instant
.
now
().
plusMillis
(
delay
));
scheduledTasks
.
put
(
personSendOrderVO
.
getRequirementsInfoId
(),
scheduledFuture
);
}
public
void
destroy
(
Integer
requireId
){
redisTemplate
.
setValueSerializer
(
new
GenericJackson2JsonRedisSerializer
());
MyTask
task
=
(
MyTask
)
redisTemplate
.
opsForValue
().
get
(
"task"
+
requireId
);
ScheduledFuture
<?>
scheduledFuture
=
scheduledTasks
.
get
(
requireId
);
if
(
task
!=
null
&&
scheduledFuture
!=
null
)
{
scheduledFuture
.
cancel
(
false
);
redisTemplate
.
delete
(
"task"
+
requireId
);
scheduledTasks
.
remove
(
requireId
);
System
.
out
.
println
(
"定时任务已取消"
);
}
}
}
release-service/src/main/java/com/mmc/csf/release/util/SmsUtil.java
0 → 100644
浏览文件 @
2600132a
package
com
.
mmc
.
csf
.
release
.
util
;
import
com.aliyun.dysmsapi20170525.models.SendSmsRequest
;
import
com.aliyun.dysmsapi20170525.models.SendSmsResponse
;
import
com.aliyun.teaopenapi.models.Config
;
import
com.google.gson.Gson
;
/**
* @author: zj
* @Date: 2023/7/25 17:00
*/
public
class
SmsUtil
{
public
static
String
ALIYUN_OSS_ACCESS_KEY_ID
=
"LTAI5tS3GNPRZAkG9LCQBZmc"
;
public
static
String
ALIYUN_OSS_ACCESS_KEY_SECRET
=
"ZkPrv1u2mN2DmOIc7GfPKRuy4Risqe"
;
public
static
String
CLOUD_JOIN_WEBSITE
=
"云享飞"
;
private
static
String
ENDPOINT
=
"dysmsapi.aliyuncs.com"
;
/**
*
* 加盟审核通过
*/
private
static
String
COOPERATION_TEMPLATE_PASS_CODE_0
=
"SMS_461986130"
;
private
static
String
COOPERATION_TEMPLATE_PASS_CODE_2
=
"SMS_462240459"
;
private
static
String
COOPERATION_TEMPLATE_PASS_CODE_3
=
"SMS_462620535"
;
private
static
String
COOPERATION_TEMPLATE_PASS_CODE_4
=
"SMS_462605558"
;
private
static
String
COOPERATION_TEMPLATE_PASS_CODE_5
=
"SMS_464125992"
;
private
static
String
COOPERATION_TEMPLATE_PASS_CODE_6
=
"SMS_464380042"
;
private
static
String
COOPERATION_TEMPLATE_PASS_CODE_7
=
"SMS_464335035"
;
private
static
String
COOPERATION_TEMPLATE_PASS_CODE_8
=
"SMS_464386188"
;
private
static
String
COOPERATION_TEMPLATE_PASS_CODE_9
=
"SMS_464401213"
;
private
static
String
COOPERATION_TEMPLATE_PASS_CODE_10
=
"SMS_464371178"
;
private
static
String
COOPERATION_TEMPLATE_PASS_CODE_11
=
"SMS_464371179"
;
private
static
String
COOPERATION_TEMPLATE_PASS_CODE_12
=
"SMS_464321248"
;
//短信验证码模板
private
static
String
VERIFYCODE
=
"SMS_211825548"
;
/**
* 加盟审核未通过
*/
private
static
String
COOPERATION_TEMPLATE_CODE_1
=
"SMS_462095054"
;
public
static
String
sendPassCooperationApply
(
String
phone
)
{
return
send
(
CLOUD_JOIN_WEBSITE
,
COOPERATION_TEMPLATE_PASS_CODE_5
,
null
,
phone
);
}
public
static
String
sendNotPassCooperationApply
(
String
phone
)
{
return
send
(
CLOUD_JOIN_WEBSITE
,
COOPERATION_TEMPLATE_CODE_1
,
null
,
phone
);
}
// 飞手审核通过通知
public
static
String
sendPassPilotApply
(
String
phone
)
{
return
send
(
CLOUD_JOIN_WEBSITE
,
COOPERATION_TEMPLATE_PASS_CODE_6
,
null
,
phone
);
}
//飞手提现通知
public
static
String
sendPassWithdrawalApply
(
String
phone
)
{
return
send
(
CLOUD_JOIN_WEBSITE
,
COOPERATION_TEMPLATE_PASS_CODE_7
,
null
,
phone
);
}
//飞手订单派送
public
static
String
sendPilotOrder
(
String
phone
)
{
return
send
(
CLOUD_JOIN_WEBSITE
,
COOPERATION_TEMPLATE_PASS_CODE_8
,
null
,
phone
);
}
//管理员拒绝接单
public
static
String
sendManagerRefuseOrder
(
String
phone
)
{
return
send
(
CLOUD_JOIN_WEBSITE
,
COOPERATION_TEMPLATE_PASS_CODE_9
,
null
,
phone
);
}
//飞手拒绝接用户的订单
public
static
String
sendRefuseUser
(
String
phone
)
{
return
send
(
CLOUD_JOIN_WEBSITE
,
COOPERATION_TEMPLATE_PASS_CODE_10
,
null
,
phone
);
}
//飞手拒绝管理员派单
public
static
String
sendRefuseManager
(
String
phone
)
{
return
send
(
CLOUD_JOIN_WEBSITE
,
COOPERATION_TEMPLATE_PASS_CODE_11
,
null
,
phone
);
}
//飞手接单
public
static
String
sendGetOrder
(
String
phone
)
{
return
send
(
CLOUD_JOIN_WEBSITE
,
COOPERATION_TEMPLATE_PASS_CODE_12
,
null
,
phone
);
}
public
static
String
send
(
String
TemplateCode
,
String
param
,
String
phone
)
{
return
send
(
CLOUD_JOIN_WEBSITE
,
TemplateCode
,
param
,
phone
);
}
public
static
String
send
(
String
signName
,
String
TemplateCode
,
String
param
,
String
phone
)
{
Config
config
=
new
Config
().
setAccessKeyId
(
ALIYUN_OSS_ACCESS_KEY_ID
).
setAccessKeySecret
(
ALIYUN_OSS_ACCESS_KEY_SECRET
);
config
.
endpoint
=
ENDPOINT
;
com
.
aliyun
.
dysmsapi20170525
.
Client
client
=
null
;
SendSmsRequest
request
=
new
SendSmsRequest
();
request
.
setPhoneNumbers
(
phone
);
request
.
setSignName
(
signName
);
request
.
setTemplateCode
(
TemplateCode
);
if
(
param
!=
null
)
{
request
.
setTemplateParam
(
param
);
}
SendSmsResponse
response
=
null
;
try
{
client
=
new
com
.
aliyun
.
dysmsapi20170525
.
Client
(
config
);
response
=
client
.
sendSms
(
request
);
}
catch
(
Exception
e
)
{
return
e
.
getMessage
();
}
return
new
Gson
().
toJson
(
response
.
body
);
}
/**
* 短信验证码
* @param verifyCode
* @param phone
* @return
*/
public
static
String
verifyCode
(
String
verifyCode
,
String
phone
){
return
send
(
VERIFYCODE
,
"{\"code\":\""
+
verifyCode
+
"\"}"
,
phone
);
}
}
release-service/src/main/resources/mapper/requirements/RequirementsDao.xml
浏览文件 @
2600132a
差异被折叠。
点击展开。
编写
预览
Markdown
格式
0%
重试
或
添加新文件
添加附件
取消
您添加了
0
人
到此讨论。请谨慎行事。
请先完成此评论的编辑!
取消
请
注册
或者
登录
后发表评论