提交 1e9f98c3 作者: han

短信发送

上级 67a04039
流水线 #7739 已通过 于阶段
in 3 分 0 秒
...@@ -386,8 +386,10 @@ public class RequirementsController extends BaseController { ...@@ -386,8 +386,10 @@ public class RequirementsController extends BaseController {
@ApiOperation(value = "团队派单") @ApiOperation(value = "团队派单")
@ApiResponses({@ApiResponse(code = 200, message = "OK", response = ResultBody.class)}) @ApiResponses({@ApiResponse(code = 200, message = "OK", response = ResultBody.class)})
@PostMapping("/teamSendOrder") @PostMapping("/teamSendOrder")
public ResultBody teamSendOrder(@ApiParam(value = "父订单id")@RequestParam Integer fatherRequireId,@ApiParam(value = "团队管理员的id")@RequestParam Integer messageId) { public ResultBody teamSendOrder(HttpServletRequest request,
return requirementsService.teamSendOrder(fatherRequireId,messageId); @ApiParam(value = "父订单id")@RequestParam Integer fatherRequireId,
@ApiParam(value = "团队管理员的id")@RequestParam Integer messageId) {
return requirementsService.teamSendOrder(fatherRequireId,messageId,this.getUserLoginInfoFromRedis(request).getToken());
} }
@ApiOperation(value = "我的派单列表——待确认") @ApiOperation(value = "我的派单列表——待确认")
...@@ -401,14 +403,18 @@ public class RequirementsController extends BaseController { ...@@ -401,14 +403,18 @@ public class RequirementsController extends BaseController {
@ApiOperation(value = "我的派单——去确认") @ApiOperation(value = "我的派单——去确认")
@ApiResponses({@ApiResponse(code = 200, message = "OK", response = ResultBody.class)}) @ApiResponses({@ApiResponse(code = 200, message = "OK", response = ResultBody.class)})
@PostMapping("orderConfirmationByPilot") @PostMapping("orderConfirmationByPilot")
public ResultBody orderConfirmationByPilot(@ApiParam(value = "派单id") @RequestParam Integer id,@ApiParam(value = "确认状态:1同意,2不同意") @RequestParam Integer status) { public ResultBody orderConfirmationByPilot(HttpServletRequest request,
return requirementsService.orderConfirmationByPilot(id,status); @ApiParam(value = "派单id") @RequestParam Integer id,
@ApiParam(value = "确认状态:1同意,2不同意") @RequestParam Integer status) {
return requirementsService.orderConfirmationByPilot(id,status,this.getUserLoginInfoFromRedis(request).getToken());
} }
@ApiOperation(value = "管理员确实(拒绝)派单") @ApiOperation(value = "管理员确实(拒绝)派单")
@ApiResponses({@ApiResponse(code = 200, message = "OK", response = ResultBody.class)}) @ApiResponses({@ApiResponse(code = 200, message = "OK", response = ResultBody.class)})
@GetMapping("adminAgreeOrder") @GetMapping("adminAgreeOrder")
public ResultBody adminAgreeOrder(@ApiParam(value = "派单id") @RequestParam Integer id,@ApiParam(value = "确认状态:1同意,2不同意") @RequestParam Integer status) { public ResultBody adminAgreeOrder(HttpServletRequest request,
return requirementsService.orderConfirmationByTeam(id,status); @ApiParam(value = "派单id") @RequestParam Integer id,
@ApiParam(value = "确认状态:1同意,2不同意") @RequestParam Integer status) {
return requirementsService.orderConfirmationByTeam(id,status,this.getUserLoginInfoFromRedis(request).getToken());
} }
} }
\ No newline at end of file
...@@ -472,5 +472,9 @@ public interface RequirementsDao { ...@@ -472,5 +472,9 @@ public interface RequirementsDao {
*/ */
List<RequirementsInfoDO> mySendOderList(MyPreemptQO param); List<RequirementsInfoDO> mySendOderList(MyPreemptQO param);
/**
* 根据订单id查询发单用户的id
*/
Integer selectSenderId(Integer id);
} }
...@@ -99,5 +99,5 @@ public interface UserAppApi { ...@@ -99,5 +99,5 @@ public interface UserAppApi {
Integer selectPilotTeamManagerId(@RequestHeader("token") String token,@RequestParam Integer pilotUserId); Integer selectPilotTeamManagerId(@RequestHeader("token") String token,@RequestParam Integer pilotUserId);
@GetMapping("/userapp/pilot/getPilotApplyPhone") @GetMapping("/userapp/pilot/getPilotApplyPhone")
String getPilotApplyPhone(@RequestHeader("token") String token,@RequestParam Integer pilotId); String getPilotApplyPhone(@RequestHeader("token") String token,@RequestParam Integer userAccountId);
} }
...@@ -96,7 +96,7 @@ public class UserAppApiHystrix implements UserAppApi { ...@@ -96,7 +96,7 @@ public class UserAppApiHystrix implements UserAppApi {
} }
@Override @Override
public String getPilotApplyPhone(String token, Integer pilotId) { public String getPilotApplyPhone(String token, Integer userAccountId) {
return null; return null;
} }
......
...@@ -158,17 +158,17 @@ public interface RequirementsService { ...@@ -158,17 +158,17 @@ public interface RequirementsService {
/** /**
* 根据团队进行派单操作 * 根据团队进行派单操作
*/ */
ResultBody teamSendOrder(Integer fatherRequireId,Integer messageId); ResultBody teamSendOrder(Integer fatherRequireId,Integer messageId,String token);
/** /**
* 飞手确认接单 * 飞手确认接单
*/ */
ResultBody orderConfirmationByPilot(Integer id,Integer status); ResultBody orderConfirmationByPilot(Integer id,Integer status,String token);
/** /**
* 管理员确认接单 * 管理员确认接单
*/ */
ResultBody orderConfirmationByTeam(Integer id,Integer status); ResultBody orderConfirmationByTeam(Integer id,Integer status,String token);
/** /**
* 个人飞手派单的订单列表 * 个人飞手派单的订单列表
......
...@@ -3316,12 +3316,13 @@ public class RequirementsServiceImpl implements RequirementsService { ...@@ -3316,12 +3316,13 @@ public class RequirementsServiceImpl implements RequirementsService {
return ResultBody.error("飞手拒绝过该订单或者已经派单,不能重复派单"); return ResultBody.error("飞手拒绝过该订单或者已经派单,不能重复派单");
} }
PersonSendOrderDO personSendOrderDO = null; PersonSendOrderDO personSendOrderDO = null;
String pilotPhone = userAppApi.getPilotApplyPhone(token, personSendOrderDO.getPilotCertificationUserId());
// 1、是否是团队派单 // 1、是否是团队派单
if(requirementsDao.isTeamSendOrder(personSendOrderVO.getRequirementsInfoId()) != 0){ if(requirementsDao.isTeamSendOrder(personSendOrderVO.getRequirementsInfoId()) != 0){
personSendOrderDO = new PersonSendOrderDO(personSendOrderVO); personSendOrderDO = new PersonSendOrderDO(personSendOrderVO);
Integer id = requirementsDao.personSendOrder(personSendOrderDO); requirementsDao.personSendOrder(personSendOrderDO);
String phone = userAppApi.getPilotApplyPhone(token, personSendOrderDO.getPilotCertificationId()); SmsUtil.sendPilotOrder(pilotPhone);
SmsUtil.sendPilotOrder(phone); return ResultBody.success("派单成功,等待飞手确认");
} }
// 2、直接给飞手派单 // 2、直接给飞手派单
...@@ -3332,37 +3333,40 @@ public class RequirementsServiceImpl implements RequirementsService { ...@@ -3332,37 +3333,40 @@ public class RequirementsServiceImpl implements RequirementsService {
personSendOrderDO = new PersonSendOrderDO(); personSendOrderDO = new PersonSendOrderDO();
personSendOrderDO.setRequirementsInfoId(personSendOrderVO.getRequirementsInfoId()); personSendOrderDO.setRequirementsInfoId(personSendOrderVO.getRequirementsInfoId());
personSendOrderDO.setTeamUserId(managerId); personSendOrderDO.setTeamUserId(managerId);
Integer id = requirementsDao.personSendOrder(personSendOrderDO); requirementsDao.personSendOrder(personSendOrderDO);
// TODO 定时器、发送短信、公众号通知 // TODO 定时器、发送短信、公众号通知
String managerPhone = userAppApi.getPilotApplyPhone(token, managerId);
SmsUtil.sendPilotOrder(managerPhone);
return ResultBody.success("派单飞手拥有团队,等待团队管理员确认后重新给您分配飞手"); return ResultBody.success("派单飞手拥有团队,等待团队管理员确认后重新给您分配飞手");
}else{ }else{
personSendOrderDO = new PersonSendOrderDO(personSendOrderVO); personSendOrderDO = new PersonSendOrderDO(personSendOrderVO);
Integer id = requirementsDao.personSendOrder(personSendOrderDO); requirementsDao.personSendOrder(personSendOrderDO);
// TODO 定时器 发送短信、公众号通知 // TODO 定时器 发送短信、公众号通知
String phone = userAppApi.getPilotApplyPhone(token, personSendOrderDO.getPilotCertificationId()); SmsUtil.sendPilotOrder(pilotPhone);
SmsUtil.sendPilotOrder(phone);
return ResultBody.success("派单成功,等待飞手确认"); return ResultBody.success("派单成功,等待飞手确认");
} }
} }
@Override @Override
public ResultBody teamSendOrder(Integer fatherRequireId, Integer messageId) { public ResultBody teamSendOrder(Integer fatherRequireId, Integer managerId,String token) {
// 查询所有的子订单id // 查询所有的子订单id
List<Integer> ids = requirementsDao.selectAllSuborder(fatherRequireId); List<Integer> ids = requirementsDao.selectAllSuborder(fatherRequireId);
PersonSendOrderDO personSendOrderDO = null; PersonSendOrderDO personSendOrderDO = null;
for (Integer id : ids) { for (Integer id : ids) {
personSendOrderDO = new PersonSendOrderDO(); personSendOrderDO = new PersonSendOrderDO();
personSendOrderDO.setRequirementsInfoId(id); personSendOrderDO.setRequirementsInfoId(id);
personSendOrderDO.setTeamUserId(messageId); personSendOrderDO.setTeamUserId(managerId);
requirementsDao.personSendOrder(personSendOrderDO); requirementsDao.personSendOrder(personSendOrderDO);
// 修改info表中的状态为13派单中 // 修改info表中的状态为13派单中
requirementsDao.updateInfoStatus(id,13); requirementsDao.updateInfoStatus(id,13);
} }
String managerPhone = userAppApi.getPilotApplyPhone(token, managerId);
SmsUtil.sendPilotOrder(managerPhone);
return ResultBody.success("等待团队管理员确认"); return ResultBody.success("等待团队管理员确认");
} }
@Override @Override
public ResultBody orderConfirmationByPilot(Integer id,Integer status) { public ResultBody orderConfirmationByPilot(Integer id,Integer status,String token) {
if(requirementsDao.isReConfirm(id) != 0){ if(requirementsDao.isReConfirm(id) != 0){
return ResultBody.error("重复确认"); return ResultBody.error("重复确认");
} }
...@@ -3377,6 +3381,9 @@ public class RequirementsServiceImpl implements RequirementsService { ...@@ -3377,6 +3381,9 @@ public class RequirementsServiceImpl implements RequirementsService {
// TODO 发送短信、公众号通知 // TODO 发送短信、公众号通知
// 修改info表中的状态为2等待抵达任务地点 // 修改info表中的状态为2等待抵达任务地点
requirementsDao.updateInfoStatus(personSendOrderDO.getRequirementsInfoId(),2); requirementsDao.updateInfoStatus(personSendOrderDO.getRequirementsInfoId(),2);
Integer userId = requirementsDao.selectSenderId(personSendOrderDO.getRequirementsInfoId());
String userPhone = userAppApi.getPilotApplyPhone(token, userId);
SmsUtil.sendGetOrder(userPhone);
return ResultBody.success("飞手已接单"); return ResultBody.success("飞手已接单");
} }
if(personSendOrderDO.getTeamUserId() != null){ if(personSendOrderDO.getTeamUserId() != null){
...@@ -3385,6 +3392,8 @@ public class RequirementsServiceImpl implements RequirementsService { ...@@ -3385,6 +3392,8 @@ public class RequirementsServiceImpl implements RequirementsService {
orderDO.setTeamUserId(personSendOrderDO.getTeamUserId()); orderDO.setTeamUserId(personSendOrderDO.getTeamUserId());
requirementsDao.personSendOrder(orderDO); requirementsDao.personSendOrder(orderDO);
// TODO 发送短信、公众号通知 // TODO 发送短信、公众号通知
String managerPhone = userAppApi.getPilotApplyPhone(token, personSendOrderDO.getTeamUserId());
SmsUtil.sendRefuseManager(managerPhone);
return ResultBody.success("飞手拒绝派单,需要管理员继续派单"); return ResultBody.success("飞手拒绝派单,需要管理员继续派单");
} }
// 订单发往抢单大厅 // 订单发往抢单大厅
...@@ -3392,11 +3401,14 @@ public class RequirementsServiceImpl implements RequirementsService { ...@@ -3392,11 +3401,14 @@ public class RequirementsServiceImpl implements RequirementsService {
// TODO 发送短信、公众号通知 // TODO 发送短信、公众号通知
// 修改info表中的状态为1等待抢单 // 修改info表中的状态为1等待抢单
requirementsDao.updateInfoStatus(personSendOrderDO.getRequirementsInfoId(),1); requirementsDao.updateInfoStatus(personSendOrderDO.getRequirementsInfoId(),1);
Integer userId = requirementsDao.selectSenderId(personSendOrderDO.getRequirementsInfoId());
String userPhone = userAppApi.getPilotApplyPhone(token, userId);
SmsUtil.sendRefuseUser(userPhone);
return ResultBody.success("飞手已拒绝接单,订单发往抢单大厅"); return ResultBody.success("飞手已拒绝接单,订单发往抢单大厅");
} }
@Override @Override
public ResultBody orderConfirmationByTeam(Integer id,Integer status) { public ResultBody orderConfirmationByTeam(Integer id,Integer status,String token) {
//查询订单所需总人数 大于1说明是一个多人订单 //查询订单所需总人数 大于1说明是一个多人订单
int requirementsNum = requirementsDao.selectRequirementsNum(id); int requirementsNum = requirementsDao.selectRequirementsNum(id);
if(requirementsNum == 1){ if(requirementsNum == 1){
...@@ -3418,6 +3430,9 @@ public class RequirementsServiceImpl implements RequirementsService { ...@@ -3418,6 +3430,9 @@ public class RequirementsServiceImpl implements RequirementsService {
// TODO 发送短信、公众号通知 // TODO 发送短信、公众号通知
return ResultBody.success("团队管理员已接单,正在为您分配飞手"); return ResultBody.success("团队管理员已接单,正在为您分配飞手");
} }
Integer userId = requirementsDao.selectSenderId(id);
String userPhone = userAppApi.getPilotApplyPhone(token, userId);
SmsUtil.sendManagerRefuseOrder(userPhone);
// TODO 发送短信、公众号通知 // TODO 发送短信、公众号通知
return ResultBody.success("团队管理员已拒绝接单,订单发往抢单大厅"); return ResultBody.success("团队管理员已拒绝接单,订单发往抢单大厅");
} }
......
...@@ -30,7 +30,11 @@ public class SmsUtil { ...@@ -30,7 +30,11 @@ public class SmsUtil {
private static String COOPERATION_TEMPLATE_PASS_CODE_7 = "SMS_464335035"; private static String COOPERATION_TEMPLATE_PASS_CODE_7 = "SMS_464335035";
private static String COOPERATION_TEMPLATE_PASS_CODE_8="SMS_464396097"; 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 VERIFYCODE="SMS_211825548";
...@@ -61,6 +65,22 @@ public class SmsUtil { ...@@ -61,6 +65,22 @@ public class SmsUtil {
public static String sendPilotOrder(String phone) { public static String sendPilotOrder(String phone) {
return send(CLOUD_JOIN_WEBSITE, COOPERATION_TEMPLATE_PASS_CODE_8, null, 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) { public static String send(String TemplateCode, String param, String phone) {
return send(CLOUD_JOIN_WEBSITE, TemplateCode, param, phone); return send(CLOUD_JOIN_WEBSITE, TemplateCode, param, phone);
......
...@@ -1962,12 +1962,12 @@ ...@@ -1962,12 +1962,12 @@
limit #{pageNo}, #{pageSize} limit #{pageNo}, #{pageSize}
</select> </select>
<select id="reSendOrder" resultType="java.lang.Integer"> <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 count(*) from requirements_service_temp where requirements_info_id = #{requireId} and pilot_certification_user_id = #{userAccountId}
</select> </select>
<select id="isTeamSendOrder" resultType="java.lang.Integer"> <select id="isTeamSendOrder" resultType="java.lang.Integer">
select count(*) select count(*)
from requirements_service_temp from requirements_service_temp
where require_info_id = #{requireId} and team_user_id is not null; where requirements_info_id = #{requireId} and team_user_id is not null;
</select> </select>
<select id="mySendPublish" resultType="com.mmc.csf.release.entity.requirements.RequirementsInfoDO"> <select id="mySendPublish" resultType="com.mmc.csf.release.entity.requirements.RequirementsInfoDO">
SELECT SELECT
...@@ -2046,6 +2046,11 @@ ...@@ -2046,6 +2046,11 @@
from requirements_info from requirements_info
where father_require_id = #{fatherRequireId} and is_deleted = 0 where father_require_id = #{fatherRequireId} and is_deleted = 0
</select> </select>
<select id="selectSenderId" resultType="java.lang.Integer">
select user_account_id
from requirements_info
where id = #{id}
</select>
<delete id="deleteRequirementsServiceInfo"> <delete id="deleteRequirementsServiceInfo">
delete from requirements_service where requirements_info_id = #{requireId} and pilot_certification_user_id = #{userAccountId} delete from requirements_service where requirements_info_id = #{requireId} and pilot_certification_user_id = #{userAccountId}
</delete> </delete>
......
Markdown 格式
0%
您添加了 0 到此讨论。请谨慎行事。
请先完成此评论的编辑!
注册 或者 后发表评论