提交 2600132a 作者: 刘明祎-运维用途

Merge branch 'develop'

流水线 #7795 已通过 于阶段
in 2 分 41 秒
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;
}
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;
}
......
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;
}
......@@ -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;
}
......@@ -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
......@@ -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
......@@ -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);
}
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();
}
}
......@@ -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();
}
......
......@@ -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;
}
}
......@@ -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;
......
......@@ -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);
}
......@@ -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;
}
}
......@@ -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);
}
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("定时任务执行完毕!");
}
}
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("定时任务已取消");
}
}
}
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);
}
}
Markdown 格式
0%
您添加了 0 到此讨论。请谨慎行事。
请先完成此评论的编辑!
注册 或者 后发表评论