Commit 2da377ae by 徐高华

群查询

parent 8f93bd66
...@@ -36,7 +36,7 @@ public interface GroupChatPlanOwnerLogMapper { ...@@ -36,7 +36,7 @@ public interface GroupChatPlanOwnerLogMapper {
public List<GroupChatPlanOwnerLogDTO> listPage(GroupChatPlanSearchQDTO qdto); public List<GroupChatPlanOwnerLogDTO> listPage(GroupChatPlanSearchQDTO qdto);
public List<Long> listForTimer(); public List<Long> listForTimer(@Param("planId") Long planId);
public List<ChatOwnerTotalDTO> listOwnerLogPageForWxaTotal(GroupChatPlanSearchQDTO qdto); public List<ChatOwnerTotalDTO> listOwnerLogPageForWxaTotal(GroupChatPlanSearchQDTO qdto);
......
...@@ -26,7 +26,7 @@ public interface GroupChatPlanOwnerLogService { ...@@ -26,7 +26,7 @@ public interface GroupChatPlanOwnerLogService {
public Page<GroupChatPlanOwnerLogDTO> listPage(Long planId, GroupChatPlanSearchQDTO qdto, public Page<GroupChatPlanOwnerLogDTO> listPage(Long planId, GroupChatPlanSearchQDTO qdto,
BasePageInfo basePageInfo); BasePageInfo basePageInfo);
List<Long> listForTimer(); List<Long> listForTimer(Long planId);
public Page<ChatOwnerTotalDTO> listOwnerLogPageForWxaTotal(GroupChatPlanSearchQDTO qdto, BasePageInfo basePageInfo); public Page<ChatOwnerTotalDTO> listOwnerLogPageForWxaTotal(GroupChatPlanSearchQDTO qdto, BasePageInfo basePageInfo);
......
...@@ -158,8 +158,8 @@ public class GroupChatPlanOwnerLogServiceImpl implements GroupChatPlanOwnerLogSe ...@@ -158,8 +158,8 @@ public class GroupChatPlanOwnerLogServiceImpl implements GroupChatPlanOwnerLogSe
} }
@Override @Override
public List<Long> listForTimer() { public List<Long> listForTimer(Long planId) {
List<Long> list = this.groupChatPlanOwnerLogMapper.listForTimer(); List<Long> list = this.groupChatPlanOwnerLogMapper.listForTimer(planId);
return list; return list;
} }
......
...@@ -92,17 +92,27 @@ public class GroupChatPlanServiceImpl implements GroupChatPlanService { ...@@ -92,17 +92,27 @@ public class GroupChatPlanServiceImpl implements GroupChatPlanService {
private PendingTaskService pendingTaskService; private PendingTaskService pendingTaskService;
private static GicMQClient mqClient = GICMQClientUtil.getClientInstance(); private static GicMQClient mqClient = GICMQClientUtil.getClientInstance();
// 发送队列
private void sendMQ(Long id) { private void putMQForSend(Long id) {
try { try {
mqClient.sendCommonMessage("haobanCommonRouter", id + "", mqClient.sendCommonMessage("haobanCommonRouter", id + "",
"com.gic.haoban.manage.api.service.HaobanCommonMQApiService", "commonHandler"); "com.gic.haoban.manage.api.service.chat.GroupChatPlanApiService", "doPlanTimer");
} catch (Exception e) { } catch (Exception e) {
logger.error("发送MQ异常"); logger.error("发送MQ异常");
e.printStackTrace(); e.printStackTrace();
} }
} }
// 统计队列
private void putMQForData(Long id) {
try {
mqClient.sendCommonMessage("haobanCommonRouter", id + "",
"com.gic.haoban.manage.api.service.chat.GroupChatPlanApiService", "doPlanSendInfoTimer");
} catch (Exception e) {
logger.error("发送MQ异常");
e.printStackTrace();
}
}
@Override @Override
public void save(GroupChatPlanDTO dto) { public void save(GroupChatPlanDTO dto) {
Long planId = dto.getPlanId(); Long planId = dto.getPlanId();
...@@ -139,7 +149,7 @@ public class GroupChatPlanServiceImpl implements GroupChatPlanService { ...@@ -139,7 +149,7 @@ public class GroupChatPlanServiceImpl implements GroupChatPlanService {
} }
// 立即发送 // 立即发送
if (entity.getSendType() == 1) { if (entity.getSendType() == 1) {
this.sendMQ(entity.getPlanId()); this.putMQForSend(entity.getPlanId());
} else { } else {
this.addOrDelTimer(entity.getPlanId(), entity.getSendTime(), 1); this.addOrDelTimer(entity.getPlanId(), entity.getSendTime(), 1);
} }
...@@ -224,7 +234,8 @@ public class GroupChatPlanServiceImpl implements GroupChatPlanService { ...@@ -224,7 +234,8 @@ public class GroupChatPlanServiceImpl implements GroupChatPlanService {
@Override @Override
public void doPlanSendInfoTimer(String params) { public void doPlanSendInfoTimer(String params) {
List<Long> idList = this.groupChatPlanOwnerLogService.listForTimer(); Long planId = Long.parseLong(params) ;
List<Long> idList = this.groupChatPlanOwnerLogService.listForTimer(planId);
logger.info("定时处理群发结果,条数={}", idList.size()); logger.info("定时处理群发结果,条数={}", idList.size());
for (Long ownerLogId : idList) { for (Long ownerLogId : idList) {
try { try {
...@@ -299,6 +310,7 @@ public class GroupChatPlanServiceImpl implements GroupChatPlanService { ...@@ -299,6 +310,7 @@ public class GroupChatPlanServiceImpl implements GroupChatPlanService {
@Override @Override
public void stop(String clerkId, String clerkName, Long planId) { public void stop(String clerkId, String clerkName, Long planId) {
this.groupChatPlanMapper.stopById(planId, clerkId, clerkName); this.groupChatPlanMapper.stopById(planId, clerkId, clerkName);
logger.info("触发统计");
} }
@Override @Override
......
...@@ -143,6 +143,7 @@ ...@@ -143,6 +143,7 @@
<select id="listForTimer" resultType="long"> <select id="listForTimer" resultType="long">
SELECT a.owner_log_id FROM tab_haoban_group_chat_plan_owner_log a left join tab_haoban_group_chat_plan b on a.plan_id = b.plan_id SELECT a.owner_log_id FROM tab_haoban_group_chat_plan_owner_log a left join tab_haoban_group_chat_plan b on a.plan_id = b.plan_id
WHERE b.end_time >= DATE_ADD(NOW(),INTERVAL -12 hour) and a.done_flag = 0 and a.delete_flag = 0 and b.delete_flag = 0 WHERE b.end_time >= DATE_ADD(NOW(),INTERVAL -12 hour) and a.done_flag = 0 and a.delete_flag = 0 and b.delete_flag = 0
and a.plan_id = #{planId}
</select> </select>
<select id="listPage" parameterType="com.gic.haoban.manage.api.dto.qdto.chat.GroupChatPlanSearchQDTO" resultType="com.gic.haoban.manage.api.dto.chat.GroupChatPlanOwnerLogDTO"> <select id="listPage" parameterType="com.gic.haoban.manage.api.dto.qdto.chat.GroupChatPlanSearchQDTO" resultType="com.gic.haoban.manage.api.dto.chat.GroupChatPlanOwnerLogDTO">
......
...@@ -61,7 +61,7 @@ public class GroupChatPlanController { ...@@ -61,7 +61,7 @@ public class GroupChatPlanController {
if (StringUtils.isNotBlank(dto.getStaffIdList())) { if (StringUtils.isNotBlank(dto.getStaffIdList())) {
return RestResponse.failure("9999", "请选择群主"); return RestResponse.failure("9999", "请选择群主");
} }
logger.info("新增参数={}",JSON.toJSONString(dto)); logger.info("新增参数={}", JSON.toJSONString(dto));
WebLoginDTO loginUser = AuthWebRequestUtil.getLoginUser(); WebLoginDTO loginUser = AuthWebRequestUtil.getLoginUser();
dto.setCreatorId(loginUser.getClerkId()); dto.setCreatorId(loginUser.getClerkId());
dto.setCreatorName(loginUser.getClerkName()); dto.setCreatorName(loginUser.getClerkName());
...@@ -83,9 +83,28 @@ public class GroupChatPlanController { ...@@ -83,9 +83,28 @@ public class GroupChatPlanController {
return RestResponse.successResult(); return RestResponse.successResult();
} }
/**
*
* @Title: stop
* @Description: 终止
* @author xugh
* @param planId
* @return
* @throws
*/
@RequestMapping("stop")
public RestResponse<Object> stop(Long planId) {
if (null == planId) {
return RestResponse.failure("9999", "计划ID空");
}
WebLoginDTO loginUser = AuthWebRequestUtil.getLoginUser();
this.groupChatPlanApiService.stop(loginUser.getClerkId(), loginUser.getClerkName(), planId);
return RestResponse.successResult();
}
@RequestMapping("update") @RequestMapping("update")
public RestResponse<Object> update(@RequestBody GroupChatPlanDTO dto) { public RestResponse<Object> update(@RequestBody GroupChatPlanDTO dto) {
logger.info("更新参数={}",JSON.toJSONString(dto)); logger.info("更新参数={}", JSON.toJSONString(dto));
ServiceResponse<GroupChatPlanDTO> resp = this.groupChatPlanApiService.detail(dto.getPlanId()); ServiceResponse<GroupChatPlanDTO> resp = this.groupChatPlanApiService.detail(dto.getPlanId());
GroupChatPlanDTO plan = resp.getResult(); GroupChatPlanDTO plan = resp.getResult();
if (null == plan) { if (null == plan) {
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment