Commit ce9619ac by 徐高华

社群群发

parent e1fec666
package com.gic.haoban.manage.api.qdto;
import java.io.Serializable;
import java.util.Date;
public class StaffSendResultQDTO implements Serializable {
private String wxEnterpriseId ;
private String staffId ;
private Long planId ;
/**
* 发送失败原因,为空是成功
*/
private String failRemark ;
/**
* 发送时间
*/
private Date sendTime ;
public String getWxEnterpriseId() {
return wxEnterpriseId;
}
public void setWxEnterpriseId(String wxEnterpriseId) {
this.wxEnterpriseId = wxEnterpriseId;
}
public String getStaffId() {
return staffId;
}
public void setStaffId(String staffId) {
this.staffId = staffId;
}
public Long getPlanId() {
return planId;
}
public void setPlanId(Long planId) {
this.planId = planId;
}
public String getFailRemark() {
return failRemark;
}
public void setFailRemark(String failRemark) {
this.failRemark = failRemark;
}
public Date getSendTime() {
return sendTime;
}
public void setSendTime(Date sendTime) {
this.sendTime = sendTime;
}
}
...@@ -8,6 +8,7 @@ import com.gic.haoban.manage.api.dto.chat.GroupChatPlanDTO; ...@@ -8,6 +8,7 @@ import com.gic.haoban.manage.api.dto.chat.GroupChatPlanDTO;
import com.gic.haoban.manage.api.dto.chat.GroupChatPlanLogDTO; import com.gic.haoban.manage.api.dto.chat.GroupChatPlanLogDTO;
import com.gic.haoban.manage.api.dto.chat.GroupChatPlanOwnerLogDTO; import com.gic.haoban.manage.api.dto.chat.GroupChatPlanOwnerLogDTO;
import com.gic.haoban.manage.api.dto.qdto.chat.GroupChatPlanSearchQDTO; import com.gic.haoban.manage.api.dto.qdto.chat.GroupChatPlanSearchQDTO;
import com.gic.haoban.manage.api.qdto.StaffSendResultQDTO;
import java.util.Date; import java.util.Date;
...@@ -77,5 +78,5 @@ public interface GroupChatPlanApiService { ...@@ -77,5 +78,5 @@ public interface GroupChatPlanApiService {
*/ */
public ServiceResponse<Integer> getTotalCount(String enterpriseId,String clerkId,String storeId); public ServiceResponse<Integer> getTotalCount(String enterpriseId,String clerkId,String storeId);
void staffSendResult(String wxEnterpriseId, String staffId, Long planId, String failRemark, Date sendTime); void staffSendResult(StaffSendResultQDTO qdto);
} }
...@@ -5,6 +5,7 @@ import com.gic.api.base.commons.Page; ...@@ -5,6 +5,7 @@ import com.gic.api.base.commons.Page;
import com.gic.haoban.manage.api.dto.chat.GroupChatPlanDTO; import com.gic.haoban.manage.api.dto.chat.GroupChatPlanDTO;
import com.gic.haoban.manage.api.dto.chat.GroupChatPlanLogDTO; import com.gic.haoban.manage.api.dto.chat.GroupChatPlanLogDTO;
import com.gic.haoban.manage.api.dto.qdto.chat.GroupChatPlanSearchQDTO; import com.gic.haoban.manage.api.dto.qdto.chat.GroupChatPlanSearchQDTO;
import com.gic.haoban.manage.api.qdto.StaffSendResultQDTO;
import com.gic.haoban.manage.service.pojo.bo.chat.GroupChatPlanBO; import com.gic.haoban.manage.service.pojo.bo.chat.GroupChatPlanBO;
import java.util.Date; import java.util.Date;
...@@ -35,5 +36,5 @@ public interface GroupChatPlanService { ...@@ -35,5 +36,5 @@ public interface GroupChatPlanService {
void cancelSendTimer(String params); void cancelSendTimer(String params);
void staffSendResult(String wxEnterpriseId, String staffId, Long planId, String failRemark, Date sendTime); void staffSendResult(StaffSendResultQDTO qdto);
} }
\ No newline at end of file
...@@ -13,6 +13,7 @@ import com.gic.haoban.manage.api.dto.ContentMaterialDTO; ...@@ -13,6 +13,7 @@ import com.gic.haoban.manage.api.dto.ContentMaterialDTO;
import com.gic.haoban.manage.api.dto.StaffClerkRelationDTO; import com.gic.haoban.manage.api.dto.StaffClerkRelationDTO;
import com.gic.haoban.manage.api.dto.chat.*; import com.gic.haoban.manage.api.dto.chat.*;
import com.gic.haoban.manage.api.dto.qdto.chat.OwnerSearchQDTO; import com.gic.haoban.manage.api.dto.qdto.chat.OwnerSearchQDTO;
import com.gic.haoban.manage.api.qdto.StaffSendResultQDTO;
import com.gic.haoban.manage.service.dao.mapper.TabHaobanStaffClerkRelationMapper; import com.gic.haoban.manage.service.dao.mapper.TabHaobanStaffClerkRelationMapper;
import com.gic.haoban.manage.service.dao.mapper.chat.GroupChatOwnerMapper; import com.gic.haoban.manage.service.dao.mapper.chat.GroupChatOwnerMapper;
import com.gic.haoban.manage.service.service.content.impl.GroupMessageServiceImpl; import com.gic.haoban.manage.service.service.content.impl.GroupMessageServiceImpl;
...@@ -658,7 +659,12 @@ public class GroupChatPlanServiceImpl implements GroupChatPlanService { ...@@ -658,7 +659,12 @@ public class GroupChatPlanServiceImpl implements GroupChatPlanService {
} }
@Override @Override
public void staffSendResult(String wxEnterpriseId, String staffId, Long planId, String failRemark, Date sendTime) { public void staffSendResult(StaffSendResultQDTO qdto ) {
String wxEnterpriseId = qdto.getWxEnterpriseId() ;
String staffId = qdto.getStaffId() ;
Long planId = qdto.getPlanId() ;
String failRemark = qdto.getFailRemark() ;
Date sendTime = qdto.getSendTime() ;
this.groupChatPlanOwnerLogMapper.staffSendResult(staffId,planId,sendTime,failRemark) ; this.groupChatPlanOwnerLogMapper.staffSendResult(staffId,planId,sendTime,failRemark) ;
} }
......
package com.gic.haoban.manage.service.service.out.impl.chat; package com.gic.haoban.manage.service.service.out.impl.chat;
import com.gic.haoban.manage.api.qdto.StaffSendResultQDTO;
import org.apache.commons.lang3.StringUtils; import org.apache.commons.lang3.StringUtils;
import org.springframework.beans.factory.annotation.Autowired; import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Service; import org.springframework.stereotype.Service;
...@@ -171,7 +172,7 @@ public class GroupChatPlanApiServiceImpl implements GroupChatPlanApiService { ...@@ -171,7 +172,7 @@ public class GroupChatPlanApiServiceImpl implements GroupChatPlanApiService {
} }
@Override @Override
public void staffSendResult(String wxEnterpriseId, String staffId, Long planId, String failRemark, Date sendTime) { public void staffSendResult(StaffSendResultQDTO qdto) {
this.groupChatPlanService.staffSendResult(wxEnterpriseId,staffId,planId,failRemark,sendTime); this.groupChatPlanService.staffSendResult(qdto);
} }
} }
...@@ -9,10 +9,13 @@ import java.util.stream.Collectors; ...@@ -9,10 +9,13 @@ import java.util.stream.Collectors;
import com.gic.haoban.manage.api.dto.chat.*; import com.gic.haoban.manage.api.dto.chat.*;
import com.gic.haoban.manage.api.dto.qdto.chat.GroupChatSearchQDTO; import com.gic.haoban.manage.api.dto.qdto.chat.GroupChatSearchQDTO;
import com.gic.haoban.manage.api.qdto.StaffSendResultQDTO;
import com.gic.haoban.manage.api.service.chat.GroupChatApiService; import com.gic.haoban.manage.api.service.chat.GroupChatApiService;
import com.gic.haoban.manage.web.qo.GroupChatQO;
import org.apache.commons.lang3.StringUtils; import org.apache.commons.lang3.StringUtils;
import org.apache.logging.log4j.LogManager; import org.apache.logging.log4j.LogManager;
import org.springframework.beans.factory.annotation.Autowired; import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.web.bind.annotation.RequestBody;
import org.springframework.web.bind.annotation.RequestMapping; import org.springframework.web.bind.annotation.RequestMapping;
import org.springframework.web.bind.annotation.RequestParam; import org.springframework.web.bind.annotation.RequestParam;
import org.springframework.web.bind.annotation.RestController; import org.springframework.web.bind.annotation.RestController;
...@@ -29,12 +32,7 @@ import com.gic.haoban.manage.api.service.MaterialApiService; ...@@ -29,12 +32,7 @@ import com.gic.haoban.manage.api.service.MaterialApiService;
import com.gic.haoban.manage.api.service.chat.GroupChatPlanApiService; import com.gic.haoban.manage.api.service.chat.GroupChatPlanApiService;
/** /**
* * 群群发计划
* @ClassName: GroupChatPlanController
* @Description: 群群发计划
* @author xugh
* @date 2022年11月26日 上午9:32:56
*
*/ */
@RestController @RestController
@RequestMapping("/chat/plan") @RequestMapping("/chat/plan")
...@@ -49,9 +47,18 @@ public class GroupChatPlanController { ...@@ -49,9 +47,18 @@ public class GroupChatPlanController {
@Autowired @Autowired
private MaterialApiService materialApiService; private MaterialApiService materialApiService;
// clerkTaskStatus 1待处理 2已处理/已失效 /**
* 群计划列表 - 分页
* @param clerkId
* @param wxEnterpriseId
* @param enterpriseId
* @param searchParams
* @param basePageInfo
* @param clerkTaskStatus 1待处理 2已处理/已失效
* @return
*/
@RequestMapping("total-list") @RequestMapping("total-list")
public RestResponse<Object> totalList(String clerkId, String wxEnterpriseId, String enterpriseId, public RestResponse<Page<ChatOwnerTotalDTO>> totalList(String clerkId, String wxEnterpriseId, String enterpriseId,
String searchParams, BasePageInfo basePageInfo , @RequestParam(defaultValue = "1") int clerkTaskStatus) { String searchParams, BasePageInfo basePageInfo , @RequestParam(defaultValue = "1") int clerkTaskStatus) {
if (StringUtils.isEmpty(clerkId)) { if (StringUtils.isEmpty(clerkId)) {
return RestResponse.failure("1", "clerkId为空"); return RestResponse.failure("1", "clerkId为空");
...@@ -80,37 +87,40 @@ public class GroupChatPlanController { ...@@ -80,37 +87,40 @@ public class GroupChatPlanController {
} }
/** /**
* 成员群列表 * 好办小程序发送-群列表
* @param basePageInfo
* @return * @return
*/ */
@RequestMapping("staff-group-list") @RequestMapping("staff-group-list")
public RestResponse<Object> staffGrupList(String chatName , String enterpriseId , String wxEnterpriseId , String staffId , BasePageInfo basePageInfo) { public RestResponse<Page<GroupChatDTO>> staffGroupList(@RequestBody GroupChatQO qo) {
GroupChatSearchQDTO qdto = new GroupChatSearchQDTO() ; GroupChatSearchQDTO qdto = new GroupChatSearchQDTO() ;
qdto.setWxEnterpriseId(wxEnterpriseId); qdto.setWxEnterpriseId(qo.getWxEnterpriseId());
qdto.setStaffId(staffId); qdto.setStaffId(qo.getStaffId());
qdto.setEnterpriseId(enterpriseId); qdto.setEnterpriseId(qo.getEnterpriseId());
qdto.setSearchParams(chatName); qdto.setSearchParams(qo.getChatName());
ServiceResponse<Page<GroupChatDTO>> page = this.groupChatApiService.listPage(qdto, basePageInfo); qdto.setStatus(0);
ServiceResponse<Page<GroupChatDTO>> page = this.groupChatApiService.listPage(qdto, qo);
return RestResponse.successResult(page.getResult()); return RestResponse.successResult(page.getResult());
} }
/** /**
* 成员发送结果 * 好办小程序发送-成员发送结果
* @return * @return
*/ */
@RequestMapping("staff-send-result") @RequestMapping("staff-send-result")
public RestResponse<Void> staffSendResult(String wxEnterpriseId , String staffId , Long planId , Date sendTime ,String failRemark) { public RestResponse<Void> staffSendResult(@RequestBody StaffSendResultQDTO qdto) {
GroupChatSearchQDTO qdto = new GroupChatSearchQDTO() ; this.groupChatPlanApiService.staffSendResult(qdto) ;
qdto.setWxEnterpriseId(wxEnterpriseId);
qdto.setStaffId(staffId);
this.groupChatPlanApiService.staffSendResult(wxEnterpriseId , staffId , planId , failRemark , sendTime) ;
return RestResponse.successResult(); return RestResponse.successResult();
} }
/**
* 群计划下-群主列表-分页
* @param qdto
* @param basePageInfo
* @return
*/
@RequestMapping("owner-list") @RequestMapping("owner-list")
public RestResponse<Object> ownerList(GroupChatPlanSearchQDTO qdto, BasePageInfo basePageInfo) { public RestResponse<Page<GroupChatPlanOwnerLogDTO>> ownerList(GroupChatPlanSearchQDTO qdto, BasePageInfo basePageInfo) {
if (null == qdto.getPlanId()) { if (null == qdto.getPlanId()) {
return RestResponse.failure("1", "planid为空"); return RestResponse.failure("1", "planid为空");
} }
...@@ -119,15 +129,29 @@ public class GroupChatPlanController { ...@@ -119,15 +129,29 @@ public class GroupChatPlanController {
return RestResponse.successResult(page.getResult()); return RestResponse.successResult(page.getResult());
} }
/**
* 刷新群发结果
* @param wxEnterpriseId
* @param enterpriseId
* @param ownerLogId
* @return
*/
@RequestMapping("reflush-send-msg") @RequestMapping("reflush-send-msg")
public RestResponse<Object> reflush(String wxEnterpriseId, String enterpriseId, Long ownerLogId) { public RestResponse<GroupChatPlanOwnerLogDTO> reflush(String wxEnterpriseId, String enterpriseId, Long ownerLogId) {
this.groupChatPlanApiService.reflushSendInfo(ownerLogId); this.groupChatPlanApiService.reflushSendInfo(ownerLogId);
ServiceResponse<GroupChatPlanOwnerLogDTO> resp = this.groupChatPlanApiService.getOwnerSendInfo(ownerLogId); ServiceResponse<GroupChatPlanOwnerLogDTO> resp = this.groupChatPlanApiService.getOwnerSendInfo(ownerLogId);
return RestResponse.successResult(resp.getResult()); return RestResponse.successResult(resp.getResult());
} }
/**
* 详情
* @param planId
* @param wxEnterpriseId
* @param ownerLogId
* @return
*/
@RequestMapping("detail") @RequestMapping("detail")
public RestResponse<Object> detail(Long planId, String wxEnterpriseId, Long ownerLogId) { public RestResponse<Map<String, Object>> detail(Long planId, String wxEnterpriseId, Long ownerLogId) {
if (null == planId) { if (null == planId) {
return RestResponse.failure("1", "planid为空"); return RestResponse.failure("1", "planid为空");
} }
...@@ -176,8 +200,17 @@ public class GroupChatPlanController { ...@@ -176,8 +200,17 @@ public class GroupChatPlanController {
return RestResponse.successResult(retMap); return RestResponse.successResult(retMap);
} }
/**
* 群主-执行的群列表-分页
* @param planId
* @param wxEnterpriseId
* @param enterpriseId
* @param ownLogId
* @param basePageInfo
* @return
*/
@RequestMapping("owner-do-list") @RequestMapping("owner-do-list")
public RestResponse<Object> ownerDoList(Long planId, String wxEnterpriseId, String enterpriseId, Long ownLogId, public RestResponse<Page<GroupChatPlanLogDTO>> ownerDoList(Long planId, String wxEnterpriseId, String enterpriseId, Long ownLogId,
BasePageInfo basePageInfo) { BasePageInfo basePageInfo) {
if (null == planId || null == ownLogId) { if (null == planId || null == ownLogId) {
return RestResponse.failure("1", "参数未传"); return RestResponse.failure("1", "参数未传");
......
package com.gic.haoban.manage.web.qo;
import com.gic.api.base.commons.BasePageInfo;
import java.io.Serializable;
public class GroupChatQO extends BasePageInfo implements Serializable {
/**
* 群名
*/
private String chatName ;
private String enterpriseId ;
private String wxEnterpriseId ;
private String staffId ;
public String getChatName() {
return chatName;
}
public void setChatName(String chatName) {
this.chatName = chatName;
}
public String getEnterpriseId() {
return enterpriseId;
}
public void setEnterpriseId(String enterpriseId) {
this.enterpriseId = enterpriseId;
}
public String getWxEnterpriseId() {
return wxEnterpriseId;
}
public void setWxEnterpriseId(String wxEnterpriseId) {
this.wxEnterpriseId = wxEnterpriseId;
}
public String getStaffId() {
return staffId;
}
public void setStaffId(String staffId) {
this.staffId = staffId;
}
}
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