Skip to content
项目
群组
代码片段
帮助
当前项目
正在载入...
登录 / 注册
切换导航面板
I
ims
概览
概览
详情
活动
周期分析
版本库
仓库
文件
提交
分支
标签
贡献者
分支图
比较
统计图
问题
0
议题
0
列表
看板
标记
里程碑
合并请求
0
合并请求
0
CI / CD
CI / CD
流水线
作业
日程表
图表
维基
Wiki
代码片段
代码片段
成员
成员
折叠边栏
关闭边栏
活动
图像
聊天
创建新问题
作业
提交
问题看板
Open sidebar
iuav
ims
Commits
fc218fbf
提交
fc218fbf
authored
12月 26, 2023
作者:
han
浏览文件
操作
浏览文件
下载
电子邮件补丁
差异文件
飞手派单相关接口修改
上级
4b4c7c81
隐藏空白字符变更
内嵌
并排
正在显示
8 个修改的文件
包含
202 行增加
和
23 行删除
+202
-23
RequirementsDao.java
...rc/main/java/com/mmc/csf/release/dao/RequirementsDao.java
+9
-7
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
+5
-2
UserAppApiHystrix.java
.../com/mmc/csf/release/feign/hystrix/UserAppApiHystrix.java
+6
-1
RequirementsService.java
...java/com/mmc/csf/release/service/RequirementsService.java
+5
-0
RequirementsServiceImpl.java
...mmc/csf/release/service/impl/RequirementsServiceImpl.java
+63
-8
SmsUtil.java
...rvice/src/main/java/com/mmc/csf/release/util/SmsUtil.java
+99
-0
RequirementsDao.xml
...rc/main/resources/mapper/requirements/RequirementsDao.xml
+13
-3
没有找到文件。
release-service/src/main/java/com/mmc/csf/release/dao/RequirementsDao.java
浏览文件 @
fc218fbf
...
...
@@ -411,11 +411,20 @@ public interface RequirementsDao {
Integer
personSendOrder
(
PersonSendOrderDO
personSendOrderDO
);
/**
* 修改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
isTeamSendOrder
(
@Param
(
"requireId"
)
Integer
requireId
);
/**
* 查询派单信息
*/
PersonSendOrderDO
selectSendOrderById
(
Integer
id
);
...
...
@@ -429,13 +438,6 @@ public interface RequirementsDao {
*/
Integer
isReConfirm
(
Integer
id
);
/**
* 根据订单id和用户id查找这个订单是不是被拒绝过
* @param requireId 订单id
* @param userAccountId 接单飞手id
* @return {@link Integer}
*/
Integer
selectRejectedByPilot
(
Integer
requireId
,
Integer
userAccountId
);
/**
* 管理员确认接单
...
...
release-service/src/main/java/com/mmc/csf/release/enums/ServiceIdEnum.java
浏览文件 @
fc218fbf
...
...
@@ -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
浏览文件 @
fc218fbf
...
...
@@ -95,6 +95,9 @@ public interface UserAppApi {
@PostMapping
(
"/userapp/wx/send"
)
ResultBody
feignSendWxMsg
(
@RequestHeader
(
"token"
)
String
token
,
@RequestBody
WxMsgVO
ws
);
@GetMapping
(
"/userapp/pilot/selectPilotTeam"
)
TeamMessageDO
selectPilotTeam
(
@RequestHeader
(
"token"
)
String
token
,
@RequestParam
Integer
pilotId
);
@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
pilotId
);
}
release-service/src/main/java/com/mmc/csf/release/feign/hystrix/UserAppApiHystrix.java
浏览文件 @
fc218fbf
...
...
@@ -91,7 +91,12 @@ public class UserAppApiHystrix implements UserAppApi {
}
@Override
public
TeamMessageDO
selectPilotTeam
(
String
token
,
Integer
pilotId
)
{
public
Integer
selectPilotTeamManagerId
(
String
token
,
Integer
pilotUserId
)
{
return
null
;
}
@Override
public
String
getPilotApplyPhone
(
String
token
,
Integer
pilotId
)
{
return
null
;
}
...
...
release-service/src/main/java/com/mmc/csf/release/service/RequirementsService.java
浏览文件 @
fc218fbf
...
...
@@ -153,6 +153,11 @@ public interface RequirementsService {
ResultBody
orderConfirmationByPilot
(
Integer
id
,
Integer
status
);
/**
* 管理员确认接单
*/
ResultBody
orderConfirmationByTeam
(
Integer
id
,
Integer
status
);
/**
* 个人飞手派单的订单列表
*/
PageResult
mySendOderList
(
Integer
userAccountId
,
MyPreemptQO
param
);
...
...
release-service/src/main/java/com/mmc/csf/release/service/impl/RequirementsServiceImpl.java
浏览文件 @
fc218fbf
...
...
@@ -23,6 +23,7 @@ import com.mmc.csf.release.industry.IndustryTypeDTO;
import
com.mmc.csf.release.industry.UserPayInfoVO
;
import
com.mmc.csf.release.service.RequirementsService
;
import
com.mmc.csf.release.util.RestTemplateUtil
;
import
com.mmc.csf.release.util.SmsUtil
;
import
lombok.extern.slf4j.Slf4j
;
import
org.apache.commons.lang.StringUtils
;
import
org.gavaghan.geodesy.Ellipsoid
;
...
...
@@ -3290,23 +3291,36 @@ public class RequirementsServiceImpl implements RequirementsService {
if
(
requirementsDao
.
isReSendOrder
(
personSendOrderVO
.
getRequirementsInfoId
()
)!=
0
){
return
ResultBody
.
error
(
"重复派单"
);
}
// if(requirementsDao.selectRejectedByPilot(personSendOrderVO.getRequirementsInfoId(),personSendOrderVO.getPilotCertificationUserId()) == 1){
// return ResultBody.error("飞手拒绝过该订单,不能派单");
// }
TeamMessageDO
teamMessageDTO
=
userAppApi
.
selectPilotTeam
(
token
,
personSendOrderVO
.
getPilotCertificationId
());
if
(
requirementsDao
.
reSendOrder
(
personSendOrderVO
.
getRequirementsInfoId
(),
personSendOrderVO
.
getPilotCertificationUserId
())
==
1
){
return
ResultBody
.
error
(
"飞手拒绝过该订单或者已经派单,不能重复派单"
);
}
PersonSendOrderDO
personSendOrderDO
=
null
;
if
(
teamMessageDTO
.
getPilotMessageId
()
!=
null
){
// 1、是否是团队派单
if
(
requirementsDao
.
isTeamSendOrder
(
personSendOrderVO
.
getRequirementsInfoId
())
!=
0
){
personSendOrderDO
=
new
PersonSendOrderDO
(
personSendOrderVO
);
Integer
id
=
requirementsDao
.
personSendOrder
(
personSendOrderDO
);
String
phone
=
userAppApi
.
getPilotApplyPhone
(
token
,
personSendOrderDO
.
getPilotCertificationId
());
SmsUtil
.
sendPilotOrder
(
phone
);
}
// 2、直接给飞手派单
Integer
managerId
=
userAppApi
.
selectPilotTeamManagerId
(
token
,
personSendOrderVO
.
getPilotCertificationUserId
());
// 修改info表中的状态为13派单中
requirementsDao
.
updateInfoStatus
(
personSendOrderVO
.
getRequirementsInfoId
(),
13
);
if
(
managerId
!=
null
){
personSendOrderDO
=
new
PersonSendOrderDO
();
personSendOrderDO
.
setRequirementsInfoId
(
personSendOrderVO
.
getRequirementsInfoId
());
personSendOrderDO
.
setTeamUserId
(
teamMessageDTO
.
getPilotMessageId
()
);
personSendOrderDO
.
setTeamUserId
(
managerId
);
Integer
id
=
requirementsDao
.
personSendOrder
(
personSendOrderDO
);
// TODO 定时器、发送短信、公众号通知
return
ResultBody
.
success
(
"派单
成功,等待飞手确认
"
);
return
ResultBody
.
success
(
"派单
飞手拥有团队,等待团队管理员确认后重新给您分配飞手
"
);
}
else
{
personSendOrderDO
=
new
PersonSendOrderDO
(
personSendOrderVO
);
Integer
id
=
requirementsDao
.
personSendOrder
(
personSendOrderDO
);
// TODO 定时器 发送短信、公众号通知
return
ResultBody
.
success
(
"派单飞手拥有团队,等待团队管理员确认后重新给您分配飞手"
);
String
phone
=
userAppApi
.
getPilotApplyPhone
(
token
,
personSendOrderDO
.
getPilotCertificationId
());
SmsUtil
.
sendPilotOrder
(
phone
);
return
ResultBody
.
success
(
"派单成功,等待飞手确认"
);
}
}
...
...
@@ -3322,7 +3336,10 @@ public class RequirementsServiceImpl implements RequirementsService {
RequirementsServiceDO
requirementsServiceDO
=
new
RequirementsServiceDO
(
personSendOrderDO
);
// 同步派单信息到抢单表中
requirementsDao
.
insertService
(
requirementsServiceDO
);
// SmsUtil.sendPassPilotApply(phone);
// TODO 发送短信、公众号通知
// 修改info表中的状态为2等待抵达任务地点
requirementsDao
.
updateInfoStatus
(
personSendOrderDO
.
getRequirementsInfoId
(),
2
);
return
ResultBody
.
success
(
"飞手已接单"
);
}
if
(
personSendOrderDO
.
getTeamUserId
()
!=
null
){
...
...
@@ -3336,10 +3353,28 @@ public class RequirementsServiceImpl implements RequirementsService {
// 订单发往抢单大厅
requirementsDao
.
updateCount
(
personSendOrderDO
.
getRequirementsInfoId
());
// TODO 发送短信、公众号通知
// 修改info表中的状态为1等待抢单
requirementsDao
.
updateInfoStatus
(
personSendOrderDO
.
getRequirementsInfoId
(),
1
);
return
ResultBody
.
success
(
"飞手已拒绝接单,订单发往抢单大厅"
);
}
@Override
public
ResultBody
orderConfirmationByTeam
(
Integer
id
,
Integer
status
)
{
if
(
requirementsDao
.
isReConfirm
(
id
)
!=
0
){
return
ResultBody
.
error
(
"重复确认"
);
}
requirementsDao
.
orderConfirmationByTeam
(
id
,
status
);
PersonSendOrderDO
personSendOrderDO
=
requirementsDao
.
selectSendOrderById
(
id
);
// 管理员同意接单
if
(
status
==
1
){
// TODO 发送短信、公众号通知
return
ResultBody
.
success
(
"团队管理员已接单,正在为您分配飞手"
);
}
// TODO 发送短信、公众号通知
return
ResultBody
.
success
(
"团队管理员已拒绝接单,订单发往抢单大厅"
);
}
@Override
public
PageResult
mySendOderList
(
Integer
userAccountId
,
MyPreemptQO
param
)
{
Integer
pageNo
=
param
.
getPageNo
();
param
.
buildCurrentPage
();
...
...
@@ -3354,6 +3389,7 @@ public class RequirementsServiceImpl implements RequirementsService {
requirementsInfoVO
.
setServiceName
(
industryTypeDTO
.
getTypeName
());
}
}
}
return
PageResult
.
buildPage
(
pageNo
,
param
.
getPageSize
(),
count
,
collect
);
}
...
...
@@ -3614,6 +3650,25 @@ public class RequirementsServiceImpl implements RequirementsService {
}
return
rs
.
toString
();
}
public
JSONObject
spellMsg
(
String
name
,
String
result
){
JSONObject
data
=
new
JSONObject
();
//订单编号{{thing3.DATA}}
JSONObject
thing3
=
new
JSONObject
();
thing3
.
put
(
"value"
,
name
);
data
.
put
(
"thing3"
,
thing3
);
//审核时间{{time6.DATA}}
JSONObject
time6
=
new
JSONObject
();
time6
.
put
(
"value"
,
new
SimpleDateFormat
(
"yyyy-MM-dd HH:mm:ss"
).
format
(
new
Date
()));
data
.
put
(
"time6"
,
time6
);
//审核结果{{thing5.DATA}}
JSONObject
thing5
=
new
JSONObject
();
thing5
.
put
(
"value"
,
result
);
data
.
put
(
"thing5"
,
thing5
);
return
data
;
}
}
release-service/src/main/java/com/mmc/csf/release/util/SmsUtil.java
0 → 100644
浏览文件 @
fc218fbf
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
=
"云享飞Pro"
;
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_464396097"
;
//短信验证码模板
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
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
浏览文件 @
fc218fbf
...
...
@@ -1668,7 +1668,12 @@
<update
id=
"updateCount"
>
update requirements_info
set repertory = 1
set repertory = #{status}
where id = #{id}
</update>
<update
id=
"updateInfoStatus"
>
update requirements_info
set service_flow_id = #{status}
where id = #{id}
</update>
...
...
@@ -1956,8 +1961,13 @@
ORDER BY ri.id desc
limit #{pageNo}, #{pageSize}
</select>
<select
id=
"selectRejectedByPilot"
resultType=
"java.lang.Integer"
>
select count(*) from requirements_service_temp where require_info_id = #{requireId} and pilot_certification_user_id = #{userAccountId} and pilot_status = 2
<select
id=
"reSendOrder"
resultType=
"java.lang.Integer"
>
select count(*) from requirements_service_temp where require_info_id = #{requireId} and pilot_certification_user_id = #{userAccountId}
</select>
<select
id=
"isTeamSendOrder"
resultType=
"java.lang.Integer"
>
select count(*)
from requirements_service_temp
where require_info_id = #{requireId} and team_user_id is not null;
</select>
<delete
id=
"deleteRequirementsServiceInfo"
>
delete from requirements_service where requirements_info_id = #{requireId} and pilot_certification_user_id = #{userAccountId}
...
...
编写
预览
Markdown
格式
0%
重试
或
添加新文件
添加附件
取消
您添加了
0
人
到此讨论。请谨慎行事。
请先完成此评论的编辑!
取消
请
注册
或者
登录
后发表评论