Commit 30b9ec3a by 郑勇

feat-1002592 qq个人号配置列表

parent f8d93dc0
...@@ -53,4 +53,7 @@ public class PcloudRobotDTO extends BaseEntity { ...@@ -53,4 +53,7 @@ public class PcloudRobotDTO extends BaseEntity {
@ApiModelProperty("真实状态:1 在线 0 离线") @ApiModelProperty("真实状态:1 在线 0 离线")
private Integer realStatus; private Integer realStatus;
@ApiModelProperty("机器人类型-1:微信机器人 2:qq机器人")
private Integer groupRobotType;
} }
...@@ -29,6 +29,10 @@ public interface PcloudRobotService { ...@@ -29,6 +29,10 @@ public interface PcloudRobotService {
@GetMapping("getAllPcloudRobot") @GetMapping("getAllPcloudRobot")
ResponseEntity<ResponseDto<List<RobotClassifyDTO>>> getAllPcloudRobot(); ResponseEntity<ResponseDto<List<RobotClassifyDTO>>> getAllPcloudRobot();
@ApiOperation(value = "获取微信或qq所有个人号分类信息", httpMethod = "GET")
@GetMapping("getAllPcloudRobotByType")
ResponseEntity<ResponseDto<List<RobotClassifyDTO>>> getAllPcloudRobotByType(@RequestParam(value = "groupRobotType",required = false) Integer groupRobotType);
@ApiOperation(value = "新增个人号信息", httpMethod = "POST") @ApiOperation(value = "新增个人号信息", httpMethod = "POST")
@PostMapping("addPcloudRobot") @PostMapping("addPcloudRobot")
void addPcloudRobot(@RequestBody PcloudRobotDTO pcloudRobotDTO); void addPcloudRobot(@RequestBody PcloudRobotDTO pcloudRobotDTO);
...@@ -41,6 +45,11 @@ public interface PcloudRobotService { ...@@ -41,6 +45,11 @@ public interface PcloudRobotService {
@GetMapping("getPcloudRobotByType") @GetMapping("getPcloudRobotByType")
public ResponseEntity<ResponseDto<List<String>>> getPcloudRobotByType(@RequestParam("robotType") @ApiParam("小号分类") Long robotType); public ResponseEntity<ResponseDto<List<String>>> getPcloudRobotByType(@RequestParam("robotType") @ApiParam("小号分类") Long robotType);
@ApiOperation("根据小号类别和机器人类别获取小号")
@GetMapping("getPcloudRobotByRobotType")
public ResponseEntity<ResponseDto<List<String>>> getPcloudRobotByRobotType(@RequestParam("robotType") @ApiParam("小号分类") Long robotType,
@RequestParam("groupRobotType") @ApiParam("小号机器人分类") Integer groupRobotType);
@ApiOperation("根据小号id列表获取小号信息") @ApiOperation("根据小号id列表获取小号信息")
@PostMapping("getPcloudRobotByRobotIds") @PostMapping("getPcloudRobotByRobotIds")
public ResponseEntity<ResponseDto<Map<String,PcloudRobotDTO>>> getPcloudRobotByRobotIds(@RequestBody List<String> robotIds); public ResponseEntity<ResponseDto<Map<String,PcloudRobotDTO>>> getPcloudRobotByRobotIds(@RequestBody List<String> robotIds);
......
...@@ -27,7 +27,7 @@ public interface PcloudRobotBiz { ...@@ -27,7 +27,7 @@ public interface PcloudRobotBiz {
void updateRobotState(Long id, Integer state); void updateRobotState(Long id, Integer state);
PageBeanNew<PcloudRobot> getPcloudRobotList(Integer classifyId, String nickName, Integer currentPage, Integer numPerPage); PageBeanNew<PcloudRobot> getPcloudRobotList(Integer classifyId, String nickName, Integer currentPage, Integer numPerPage,Integer groupRobotType);
void batchUpdatePcloudRobotWelcome(List<PcloudRobotWelcome> robotWelcomeList); void batchUpdatePcloudRobotWelcome(List<PcloudRobotWelcome> robotWelcomeList);
...@@ -37,7 +37,7 @@ public interface PcloudRobotBiz { ...@@ -37,7 +37,7 @@ public interface PcloudRobotBiz {
void relateKeywordClassify(Long pcloudRobotId, Long keywordClassifyId); void relateKeywordClassify(Long pcloudRobotId, Long keywordClassifyId);
PcloudRobot getPcloudRobotByType(Integer robotType); PcloudRobot getPcloudRobotByType(Integer robotType,Integer groupRobotType);
PageBeanNew<PcloudClassifyTemplate> listClassifyTemplate(Integer classifyId, Integer currentPage, Integer numPerPage); PageBeanNew<PcloudClassifyTemplate> listClassifyTemplate(Integer classifyId, Integer currentPage, Integer numPerPage);
...@@ -51,6 +51,8 @@ public interface PcloudRobotBiz { ...@@ -51,6 +51,8 @@ public interface PcloudRobotBiz {
List<RobotClassifyDTO> getAllPcloudRobot(); List<RobotClassifyDTO> getAllPcloudRobot();
List<RobotClassifyDTO> getAllPcloudRobotByType(Integer groupRobotType);
PcloudRobot getPcloudRobotByWxId(String robotId); PcloudRobot getPcloudRobotByWxId(String robotId);
void editPcloudTd(PcloudTdDTO pcloudTdDTO); void editPcloudTd(PcloudTdDTO pcloudTdDTO);
...@@ -75,7 +77,7 @@ public interface PcloudRobotBiz { ...@@ -75,7 +77,7 @@ public interface PcloudRobotBiz {
*/ */
PageBeanNew<PcloudRobotResponseVO> listSelfRobotByClassify(Integer largeTemplet, Long classifyId, String keyword, Integer currentPage, Integer numPerPage); PageBeanNew<PcloudRobotResponseVO> listSelfRobotByClassify(Integer largeTemplet, Long classifyId, String keyword, Integer currentPage, Integer numPerPage);
PageBeanNew<PcloudRobot> listNoClassifyRobot(Integer currentPage, Integer numPerPage); PageBeanNew<PcloudRobot> listNoClassifyRobot(Integer currentPage, Integer numPerPage,Integer groupRobotType);
void setClassifyRobot(String wxId, Integer classifyId); void setClassifyRobot(String wxId, Integer classifyId);
...@@ -104,5 +106,7 @@ public interface PcloudRobotBiz { ...@@ -104,5 +106,7 @@ public interface PcloudRobotBiz {
List<String> getPcloudRobotByClassify(Integer classifyId); List<String> getPcloudRobotByClassify(Integer classifyId);
List<String> getPcloudRobotByRobotType(Integer classifyId,Integer groupRobotType);
void handleMiniAppQr(); void handleMiniAppQr();
} }
...@@ -231,13 +231,17 @@ public class PcloudRobotBizImpl implements PcloudRobotBiz { ...@@ -231,13 +231,17 @@ public class PcloudRobotBizImpl implements PcloudRobotBiz {
@Override @Override
@ParamLog @ParamLog
public PageBeanNew<PcloudRobot> getPcloudRobotList(Integer classifyId, String nickName, Integer currentPage, Integer numPerPage) { public PageBeanNew<PcloudRobot> getPcloudRobotList(Integer classifyId, String nickName, Integer currentPage, Integer numPerPage,Integer groupRobotType) {
if (currentPage == null || currentPage < 0 || numPerPage == null || numPerPage <= 0) { if (currentPage == null || currentPage < 0 || numPerPage == null || numPerPage <= 0) {
throw new BookBizException(BookBizException.PARAM_IS_NULL, "分页参数错误"); throw new BookBizException(BookBizException.PARAM_IS_NULL, "分页参数错误");
} }
if(null==groupRobotType){
groupRobotType=1;
}
Map<String, Object> map = new HashMap<>(); Map<String, Object> map = new HashMap<>();
map.put("classifyId", classifyId); map.put("classifyId", classifyId);
map.put("nickName", nickName); map.put("nickName", nickName);
map.put("groupRobotType", groupRobotType);
PageBeanNew<PcloudRobot> pageBeanNew = pcloudRobotDao.listPageNew(new PageParam(currentPage, numPerPage), map, "getPcloudRobotList"); PageBeanNew<PcloudRobot> pageBeanNew = pcloudRobotDao.listPageNew(new PageParam(currentPage, numPerPage), map, "getPcloudRobotList");
/* /*
for (PcloudRobot pcloudRobot : pageBeanNew.getRecordList()) { for (PcloudRobot pcloudRobot : pageBeanNew.getRecordList()) {
...@@ -402,8 +406,8 @@ public class PcloudRobotBizImpl implements PcloudRobotBiz { ...@@ -402,8 +406,8 @@ public class PcloudRobotBizImpl implements PcloudRobotBiz {
} }
@Override @Override
public PcloudRobot getPcloudRobotByType(Integer robotType) { public PcloudRobot getPcloudRobotByType(Integer robotType,Integer groupRobotType) {
PcloudRobot pcloudRobotByType = pcloudRobotDao.getPcloudRobotByType(robotType); PcloudRobot pcloudRobotByType = pcloudRobotDao.getPcloudRobotByType(robotType,groupRobotType);
if (null == pcloudRobotByType) { if (null == pcloudRobotByType) {
pcloudRobotByType = new PcloudRobot(); pcloudRobotByType = new PcloudRobot();
PcloudRobotClassify pcloudRobotClassify = pcloudRobotClassifyDao.getById(robotType); PcloudRobotClassify pcloudRobotClassify = pcloudRobotClassifyDao.getById(robotType);
...@@ -460,6 +464,11 @@ public class PcloudRobotBizImpl implements PcloudRobotBiz { ...@@ -460,6 +464,11 @@ public class PcloudRobotBizImpl implements PcloudRobotBiz {
} }
@Override @Override
public List<RobotClassifyDTO> getAllPcloudRobotByType(Integer groupRobotType) {
return pcloudRobotDao.getAllPcloudRobotByType(groupRobotType);
}
@Override
public PcloudRobot getPcloudRobotByWxId(String robotId) { public PcloudRobot getPcloudRobotByWxId(String robotId) {
return pcloudRobotDao.getByWxId(robotId); return pcloudRobotDao.getByWxId(robotId);
} }
...@@ -669,8 +678,10 @@ public class PcloudRobotBizImpl implements PcloudRobotBiz { ...@@ -669,8 +678,10 @@ public class PcloudRobotBizImpl implements PcloudRobotBiz {
} }
@Override @Override
public PageBeanNew<PcloudRobot> listNoClassifyRobot(Integer currentPage, Integer numPerPage) { public PageBeanNew<PcloudRobot> listNoClassifyRobot(Integer currentPage, Integer numPerPage,Integer groupRobotType) {
return pcloudRobotDao.listPageNew(new PageParam(currentPage, numPerPage), new HashMap<>(), "listNoClassifyRobot"); Map<String, Object> paramMap = new HashMap<>();
paramMap.put("groupRobotType", groupRobotType);
return pcloudRobotDao.listPageNew(new PageParam(currentPage, numPerPage),paramMap, "listNoClassifyRobot");
} }
@Override @Override
...@@ -853,6 +864,11 @@ wechatGroupConsr.sendMessage(JSON.toJSONString(sendFileVO)); ...@@ -853,6 +864,11 @@ wechatGroupConsr.sendMessage(JSON.toJSONString(sendFileVO));
} }
@Override @Override
public List<String> getPcloudRobotByRobotType(Integer classifyId, Integer groupRobotType) {
return pcloudRobotDao.getPcloudRobotByRobotType(classifyId,groupRobotType);
}
@Override
public void handleMiniAppQr() { public void handleMiniAppQr() {
List<PcloudRobotClassifyResponseVO> pcloudRobotClassifyResponseVOS = pcloudRobotClassifyDao.listAllRobotClassify(); List<PcloudRobotClassifyResponseVO> pcloudRobotClassifyResponseVOS = pcloudRobotClassifyDao.listAllRobotClassify();
if (!ListUtils.isEmpty(pcloudRobotClassifyResponseVOS)) { if (!ListUtils.isEmpty(pcloudRobotClassifyResponseVOS)) {
......
...@@ -4,11 +4,14 @@ import com.pcloud.book.base.exception.BookBizException; ...@@ -4,11 +4,14 @@ import com.pcloud.book.base.exception.BookBizException;
import com.pcloud.book.pcloudkeyword.biz.PcloudRobotClassifyBiz; import com.pcloud.book.pcloudkeyword.biz.PcloudRobotClassifyBiz;
import com.pcloud.book.pcloudkeyword.dao.PcloudClassifyTemplateDao; import com.pcloud.book.pcloudkeyword.dao.PcloudClassifyTemplateDao;
import com.pcloud.book.pcloudkeyword.dao.PcloudRobotClassifyDao; import com.pcloud.book.pcloudkeyword.dao.PcloudRobotClassifyDao;
import com.pcloud.book.pcloudkeyword.dao.PcloudRobotDao;
import com.pcloud.book.pcloudkeyword.dao.PcloudRobotWelcomeDao; import com.pcloud.book.pcloudkeyword.dao.PcloudRobotWelcomeDao;
import com.pcloud.book.pcloudkeyword.dto.ClassifyWelcomeDTO; import com.pcloud.book.pcloudkeyword.dto.ClassifyWelcomeDTO;
import com.pcloud.book.pcloudkeyword.dto.PcloudRobotCountDTO;
import com.pcloud.book.pcloudkeyword.entity.PcloudClassifyTemplate; import com.pcloud.book.pcloudkeyword.entity.PcloudClassifyTemplate;
import com.pcloud.book.pcloudkeyword.entity.PcloudRobotClassify; import com.pcloud.book.pcloudkeyword.entity.PcloudRobotClassify;
import com.pcloud.book.pcloudkeyword.entity.PcloudRobotWelcome; import com.pcloud.book.pcloudkeyword.entity.PcloudRobotWelcome;
import com.pcloud.book.pcloudkeyword.enums.PcloudGroupRobotTypeEnum;
import com.pcloud.book.pcloudkeyword.facade.response.PcloudRobotClassifyResponseVO; import com.pcloud.book.pcloudkeyword.facade.response.PcloudRobotClassifyResponseVO;
import com.pcloud.book.pcloudkeyword.set.PcloudRobotSet; import com.pcloud.book.pcloudkeyword.set.PcloudRobotSet;
import com.pcloud.book.pcloudkeyword.vo.ClassifySeqNumUpdateVO; import com.pcloud.book.pcloudkeyword.vo.ClassifySeqNumUpdateVO;
...@@ -19,14 +22,18 @@ import com.pcloud.common.utils.QrcodeUtils; ...@@ -19,14 +22,18 @@ import com.pcloud.common.utils.QrcodeUtils;
import com.pcloud.common.utils.ResponseHandleUtil; import com.pcloud.common.utils.ResponseHandleUtil;
import com.pcloud.common.utils.httpclient.UrlUtils; import com.pcloud.common.utils.httpclient.UrlUtils;
import com.pcloud.facade.wechat.service.QrcodeService; import com.pcloud.facade.wechat.service.QrcodeService;
import org.apache.commons.collections.MapUtils;
import org.springframework.beans.factory.annotation.Autowired; import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.beans.factory.annotation.Value; import org.springframework.beans.factory.annotation.Value;
import org.springframework.stereotype.Service; import org.springframework.stereotype.Service;
import org.springframework.transaction.annotation.Transactional; import org.springframework.transaction.annotation.Transactional;
import javax.annotation.Resource; import javax.annotation.Resource;
import java.util.ArrayList;
import java.util.HashMap; import java.util.HashMap;
import java.util.List; import java.util.List;
import java.util.Map;
import java.util.stream.Collectors;
@Service @Service
public class PcloudRobotClassifyBizImpl implements PcloudRobotClassifyBiz { public class PcloudRobotClassifyBizImpl implements PcloudRobotClassifyBiz {
...@@ -43,6 +50,8 @@ public class PcloudRobotClassifyBizImpl implements PcloudRobotClassifyBiz { ...@@ -43,6 +50,8 @@ public class PcloudRobotClassifyBizImpl implements PcloudRobotClassifyBiz {
private PcloudClassifyTemplateDao pcloudClassifyTemplateDao; private PcloudClassifyTemplateDao pcloudClassifyTemplateDao;
@Autowired @Autowired
private QrcodeService qrcodeService; private QrcodeService qrcodeService;
@Autowired
private PcloudRobotDao pcloudRobotDao;
@Override @Override
public List<PcloudRobotClassifyResponseVO> listAllRobotClassify() { public List<PcloudRobotClassifyResponseVO> listAllRobotClassify() {
...@@ -86,7 +95,29 @@ public class PcloudRobotClassifyBizImpl implements PcloudRobotClassifyBiz { ...@@ -86,7 +95,29 @@ public class PcloudRobotClassifyBizImpl implements PcloudRobotClassifyBiz {
@Override @Override
public PageBeanNew<PcloudRobotClassifyResponseVO> listClassifyByPage(Integer currentPage, Integer numPerPage) { public PageBeanNew<PcloudRobotClassifyResponseVO> listClassifyByPage(Integer currentPage, Integer numPerPage) {
return pcloudRobotClassifyDao.listPageNew(new PageParam(currentPage, numPerPage), new HashMap<>(),"listClassifyByPage"); PageBeanNew<PcloudRobotClassifyResponseVO> listClassifyByPage = pcloudRobotClassifyDao.listPageNew(new PageParam(currentPage, numPerPage), new HashMap<>(), "listClassifyByPage");
if(ListUtils.isEmpty(listClassifyByPage.getRecordList())){
return new PageBeanNew<>(currentPage, numPerPage, 0, new ArrayList<>());
}
List<Long> classifyIds = listClassifyByPage.getRecordList().stream().map(a -> a.getId()).distinct().collect(Collectors.toList());
List<PcloudRobotCountDTO> pcloudRobotCount = pcloudRobotDao.getPcloudRobotCount(classifyIds);
Map<String, Integer> robotCountMap = new HashMap<>();
if(!ListUtils.isEmpty(pcloudRobotCount)){
robotCountMap =pcloudRobotCount.stream().collect(Collectors.toMap(a -> a.getClassifyAndRobotType(), a -> a.getCount(), (k1, k2) -> k2));
}
for (PcloudRobotClassifyResponseVO pcloudRobotClassifyResponseVO : listClassifyByPage.getRecordList()) {
String wxCountkey=pcloudRobotClassifyResponseVO.getId()+"-"+ PcloudGroupRobotTypeEnum.WXROBOT.value;
String qqCountkey=pcloudRobotClassifyResponseVO.getId()+"-"+ PcloudGroupRobotTypeEnum.QQROBOT.value;
pcloudRobotClassifyResponseVO.setRobotCount(0);
pcloudRobotClassifyResponseVO.setQqRobotCount(0);
if(MapUtils.isNotEmpty(robotCountMap) && robotCountMap.containsKey(wxCountkey)){
pcloudRobotClassifyResponseVO.setRobotCount(null==robotCountMap.get(wxCountkey)?0:robotCountMap.get(wxCountkey));
}
if(MapUtils.isNotEmpty(robotCountMap) && robotCountMap.containsKey(qqCountkey)){
pcloudRobotClassifyResponseVO.setQqRobotCount(null==robotCountMap.get(qqCountkey)?0:robotCountMap.get(qqCountkey));
}
}
return listClassifyByPage;
} }
@Override @Override
......
package com.pcloud.book.pcloudkeyword.dao; package com.pcloud.book.pcloudkeyword.dao;
import com.pcloud.book.pcloudKeyword.dto.RobotClassifyDTO; import com.pcloud.book.pcloudKeyword.dto.RobotClassifyDTO;
import com.pcloud.book.pcloudkeyword.dto.PcloudRobotCountDTO;
import com.pcloud.book.pcloudkeyword.entity.PcloudRobot; import com.pcloud.book.pcloudkeyword.entity.PcloudRobot;
import com.pcloud.common.core.dao.BaseDao; import com.pcloud.common.core.dao.BaseDao;
...@@ -16,7 +17,7 @@ public interface PcloudRobotDao extends BaseDao<PcloudRobot> { ...@@ -16,7 +17,7 @@ public interface PcloudRobotDao extends BaseDao<PcloudRobot> {
PcloudRobot getByWxId(String wxId); PcloudRobot getByWxId(String wxId);
PcloudRobot getPcloudRobotByType(Integer robotType); PcloudRobot getPcloudRobotByType(Integer robotType,Integer groupRobotType);
void updateWakeUpByClassifyIds(List<Integer> classifyList); void updateWakeUpByClassifyIds(List<Integer> classifyList);
...@@ -26,6 +27,8 @@ public interface PcloudRobotDao extends BaseDao<PcloudRobot> { ...@@ -26,6 +27,8 @@ public interface PcloudRobotDao extends BaseDao<PcloudRobot> {
List<RobotClassifyDTO> getAllPcloudRobot(); List<RobotClassifyDTO> getAllPcloudRobot();
List<RobotClassifyDTO> getAllPcloudRobotByType(Integer groupRobotType);
/** /**
* 根据编号获取小号 * 根据编号获取小号
* @param uniqueNumber * @param uniqueNumber
...@@ -44,4 +47,9 @@ public interface PcloudRobotDao extends BaseDao<PcloudRobot> { ...@@ -44,4 +47,9 @@ public interface PcloudRobotDao extends BaseDao<PcloudRobot> {
void updateRobotType(Map<String, Object> paramMap); void updateRobotType(Map<String, Object> paramMap);
List<String> getPcloudRobotByClassify(Integer classifyId); List<String> getPcloudRobotByClassify(Integer classifyId);
List<String> getPcloudRobotByRobotType(Integer classifyId,Integer groupRobotType);
List<PcloudRobotCountDTO> getPcloudRobotCount(List<Long> classifyIds);
} }
package com.pcloud.book.pcloudkeyword.dao.impl; package com.pcloud.book.pcloudkeyword.dao.impl;
import com.google.common.collect.Maps; import com.google.common.collect.Maps;
import com.pcloud.book.pcloudKeyword.dto.RobotClassifyDTO; import com.pcloud.book.pcloudKeyword.dto.RobotClassifyDTO;
import com.pcloud.book.pcloudkeyword.dao.PcloudRobotDao; import com.pcloud.book.pcloudkeyword.dao.PcloudRobotDao;
import com.pcloud.book.pcloudkeyword.dto.PcloudRobotCountDTO;
import com.pcloud.book.pcloudkeyword.entity.PcloudRobot; import com.pcloud.book.pcloudkeyword.entity.PcloudRobot;
import com.pcloud.common.core.dao.BaseDaoImpl; import com.pcloud.common.core.dao.BaseDaoImpl;
import org.springframework.stereotype.Component; import org.springframework.stereotype.Component;
import java.util.HashMap;
import java.util.List; import java.util.List;
import java.util.Map; import java.util.Map;
...@@ -29,8 +28,11 @@ public class PcloudRobotDaoImpl extends BaseDaoImpl<PcloudRobot> implements Pclo ...@@ -29,8 +28,11 @@ public class PcloudRobotDaoImpl extends BaseDaoImpl<PcloudRobot> implements Pclo
} }
@Override @Override
public PcloudRobot getPcloudRobotByType(Integer robotType) { public PcloudRobot getPcloudRobotByType(Integer robotType,Integer groupRobotType) {
return super.getSqlSession().selectOne(getStatement("getPcloudRobotByType"), robotType); Map<String, Object> map = Maps.newHashMap();
map.put("robotType", robotType);
map.put("groupRobotType", groupRobotType);
return super.getSqlSession().selectOne(getStatement("getPcloudRobotByType"), map);
} }
@Override @Override
...@@ -54,6 +56,13 @@ public class PcloudRobotDaoImpl extends BaseDaoImpl<PcloudRobot> implements Pclo ...@@ -54,6 +56,13 @@ public class PcloudRobotDaoImpl extends BaseDaoImpl<PcloudRobot> implements Pclo
} }
@Override @Override
public List<RobotClassifyDTO> getAllPcloudRobotByType(Integer groupRobotType) {
Map<String, Object> map = Maps.newHashMap();
map.put("groupRobotType", groupRobotType);
return this.getSessionTemplate().selectList(this.getStatement("getAllPcloudRobotByType"),map);
}
@Override
public PcloudRobot getByUniqueNumber(String uniqueNumber) { public PcloudRobot getByUniqueNumber(String uniqueNumber) {
return this.getSessionTemplate().selectOne(this.getStatement("getByUniqueNumber"), uniqueNumber); return this.getSessionTemplate().selectOne(this.getStatement("getByUniqueNumber"), uniqueNumber);
} }
...@@ -88,4 +97,19 @@ public class PcloudRobotDaoImpl extends BaseDaoImpl<PcloudRobot> implements Pclo ...@@ -88,4 +97,19 @@ public class PcloudRobotDaoImpl extends BaseDaoImpl<PcloudRobot> implements Pclo
public List<String> getPcloudRobotByClassify(Integer classifyId){ public List<String> getPcloudRobotByClassify(Integer classifyId){
return getSessionTemplate().selectList(getStatement("getPcloudRobotByClassify"), classifyId); return getSessionTemplate().selectList(getStatement("getPcloudRobotByClassify"), classifyId);
} }
@Override
public List<String> getPcloudRobotByRobotType(Integer classifyId, Integer groupRobotType) {
Map<String, Object> map = Maps.newHashMap();
map.put("classifyId", classifyId);
map.put("groupRobotType", groupRobotType);
return getSessionTemplate().selectList(getStatement("getPcloudRobotByRobotType"), map);
}
@Override
public List<PcloudRobotCountDTO> getPcloudRobotCount(List<Long> classifyIds) {
Map<String, Object> map = Maps.newHashMap();
map.put("classifyIds", classifyIds);
return getSessionTemplate().selectList(getStatement("getPcloudRobotCount"), map);
}
} }
package com.pcloud.book.pcloudkeyword.dto;
import com.pcloud.wechatgroup.base.dto.BaseDTO;
import io.swagger.annotations.ApiModel;
import lombok.Data;
@Data
@ApiModel("分类下机器人个数")
public class PcloudRobotCountDTO extends BaseDTO {
/**
* 机器人类型 1-微信机器人 2-qq机器人
*/
private Integer groupRobotType;
private Integer count;
/**
* classifyId-robotType
*/
private String classifyAndRobotType;
}
...@@ -64,4 +64,7 @@ public class PcloudRobot extends BaseEntity { ...@@ -64,4 +64,7 @@ public class PcloudRobot extends BaseEntity {
@ApiModelProperty("接收消息数量") @ApiModelProperty("接收消息数量")
private Integer receiveMsgCount; private Integer receiveMsgCount;
@ApiModelProperty("机器人类型-1:微信机器人 2:qq机器人")
private Integer groupRobotType;
} }
package com.pcloud.book.pcloudkeyword.enums;
public enum PcloudGroupRobotTypeEnum {
/**
* 微信机器人
*/
WXROBOT(1),
/**
* qq机器人
*/
QQROBOT(2);
/**
* 值
*/
public final Integer value;
PcloudGroupRobotTypeEnum(Integer value) {
this.value = value;
}
}
...@@ -66,11 +66,12 @@ public class PcloudRobotFacade { ...@@ -66,11 +66,12 @@ public class PcloudRobotFacade {
@RequestHeader("token") @ApiParam("token信息") String token, @RequestHeader("token") @ApiParam("token信息") String token,
@RequestParam(value = "classifyId", required = false) @ApiParam("分类") Integer classifyId, @RequestParam(value = "classifyId", required = false) @ApiParam("分类") Integer classifyId,
@RequestParam(value = "nickName", required = false) @ApiParam("昵称") String nickName, @RequestParam(value = "nickName", required = false) @ApiParam("昵称") String nickName,
@RequestParam(value = "groupRobotType", required = false) @ApiParam("机器人类型,微信还是qq") Integer groupRobotType,
@RequestParam("currentPage") Integer currentPage, @RequestParam("currentPage") Integer currentPage,
@RequestParam("numPerPage") Integer numPerPage @RequestParam("numPerPage") Integer numPerPage
) throws BizException, PermissionException{ ) throws BizException, PermissionException{
SessionUtil.getVlaue(token, SessionUtil.PARTY_ID); SessionUtil.getVlaue(token, SessionUtil.PARTY_ID);
return new ResponseDto<>(pcloudRobotBiz.getPcloudRobotList(classifyId, nickName,currentPage,numPerPage)); return new ResponseDto<>(pcloudRobotBiz.getPcloudRobotList(classifyId, nickName,currentPage,numPerPage,groupRobotType));
} }
...@@ -110,9 +111,10 @@ public class PcloudRobotFacade { ...@@ -110,9 +111,10 @@ public class PcloudRobotFacade {
@ApiOperation("根据类型获取全平台个人号信息") @ApiOperation("根据类型获取全平台个人号信息")
@GetMapping("/getPcloudRobotByType") @GetMapping("/getPcloudRobotByType")
ResponseDto<?> getPcloudRobotByType( ResponseDto<?> getPcloudRobotByType(
@RequestParam("robotType") Integer robotType @RequestParam("robotType") Integer robotType,
@RequestParam(required = false,value = "groupRobotType") Integer groupRobotType
) throws BizException, PermissionException{ ) throws BizException, PermissionException{
return new ResponseDto<>(pcloudRobotBiz.getPcloudRobotByType(robotType)); return new ResponseDto<>(pcloudRobotBiz.getPcloudRobotByType(robotType,groupRobotType));
} }
@ApiOperation("获取全平台分类模板列表") @ApiOperation("获取全平台分类模板列表")
...@@ -211,10 +213,11 @@ public class PcloudRobotFacade { ...@@ -211,10 +213,11 @@ public class PcloudRobotFacade {
@GetMapping("/listNoClassifyRobot") @GetMapping("/listNoClassifyRobot")
ResponseDto<?> listNoClassifyRobot( ResponseDto<?> listNoClassifyRobot(
@RequestHeader("token") @ApiParam("token信息") String token, @RequestHeader("token") @ApiParam("token信息") String token,
@RequestParam(value = "groupRobotType",required = false) @ApiParam("机器人类型,微信还是qq") Integer groupRobotType,
@RequestParam(value = "currentPage") Integer currentPage, @RequestParam(value = "currentPage") Integer currentPage,
@RequestParam(value = "numPerPage") Integer numPerPage) throws BizException, PermissionException{ @RequestParam(value = "numPerPage") Integer numPerPage) throws BizException, PermissionException{
SessionUtil.getVlaue(token, SessionUtil.PARTY_ID); SessionUtil.getVlaue(token, SessionUtil.PARTY_ID);
return new ResponseDto<>(pcloudRobotBiz.listNoClassifyRobot(currentPage, numPerPage)); return new ResponseDto<>(pcloudRobotBiz.listNoClassifyRobot(currentPage, numPerPage,groupRobotType));
} }
@ApiOperation("设置分类小号") @ApiOperation("设置分类小号")
......
...@@ -26,4 +26,6 @@ public class PcloudRobotClassifyResponseVO { ...@@ -26,4 +26,6 @@ public class PcloudRobotClassifyResponseVO {
private String planTopPic; private String planTopPic;
private String planBottomPic; private String planBottomPic;
private Integer qqRobotCount;
} }
...@@ -45,6 +45,12 @@ public class PcloudRobotServiceImpl implements PcloudRobotService { ...@@ -45,6 +45,12 @@ public class PcloudRobotServiceImpl implements PcloudRobotService {
} }
@Override @Override
@GetMapping("getAllPcloudRobotByType")
public ResponseEntity<ResponseDto<List<RobotClassifyDTO>>> getAllPcloudRobotByType(@RequestParam(value = "groupRobotType",required = false) Integer groupRobotType) {
return ResponseHandleUtil.toResponse(pcloudRobotBiz.getAllPcloudRobotByType(groupRobotType));
}
@Override
@PostMapping("addPcloudRobot") @PostMapping("addPcloudRobot")
public void addPcloudRobot(@RequestBody PcloudRobotDTO pcloudRobotDTO) { public void addPcloudRobot(@RequestBody PcloudRobotDTO pcloudRobotDTO) {
PcloudRobot pcloudRobot = new PcloudRobot(); PcloudRobot pcloudRobot = new PcloudRobot();
...@@ -68,6 +74,14 @@ public class PcloudRobotServiceImpl implements PcloudRobotService { ...@@ -68,6 +74,14 @@ public class PcloudRobotServiceImpl implements PcloudRobotService {
} }
@Override @Override
@GetMapping("getPcloudRobotByRobotType")
public ResponseEntity<ResponseDto<List<String>>> getPcloudRobotByRobotType(@RequestParam("robotType")Long robotType,@RequestParam("groupRobotType") Integer groupRobotType) {
Integer type = robotType.intValue();
List<String> allRobot = pcloudRobotBiz.getPcloudRobotByRobotType(type,groupRobotType);
return ResponseHandleUtil.toResponse(allRobot);
}
@Override
@PostMapping("getPcloudRobotByRobotIds") @PostMapping("getPcloudRobotByRobotIds")
public ResponseEntity<ResponseDto<Map<String, PcloudRobotDTO>>> getPcloudRobotByRobotIds(@RequestBody List<String> robotIds) { public ResponseEntity<ResponseDto<Map<String, PcloudRobotDTO>>> getPcloudRobotByRobotIds(@RequestBody List<String> robotIds) {
Map<String,PcloudRobotDTO> map=new HashMap<>(); Map<String,PcloudRobotDTO> map=new HashMap<>();
......
...@@ -14,9 +14,10 @@ ...@@ -14,9 +14,10 @@
<result column="wake_up" property="wakeUp" jdbcType="INTEGER" /> <result column="wake_up" property="wakeUp" jdbcType="INTEGER" />
<result column="unique_number" property="uniqueNumber" jdbcType="VARCHAR"/> <result column="unique_number" property="uniqueNumber" jdbcType="VARCHAR"/>
<result column="welcome_duration" property="welcomeDuration" jdbcType="INTEGER" /> <result column="welcome_duration" property="welcomeDuration" jdbcType="INTEGER" />
<result column="group_robot_type" property="groupRobotType" jdbcType="INTEGER" />
</resultMap> </resultMap>
<sql id="Base_Column_List" > <sql id="Base_Column_List" >
id, wx_id, nick_name, head, qrcode_url, robot_type, keyword_classify_id, state, real_status, wake_up, unique_number,welcome_duration id, wx_id, nick_name, head, qrcode_url, robot_type, keyword_classify_id, state, real_status, wake_up, unique_number,welcome_duration,group_robot_type
</sql> </sql>
<insert id="insert" parameterType="PcloudRobot" useGeneratedKeys="true" keyProperty="id"> <insert id="insert" parameterType="PcloudRobot" useGeneratedKeys="true" keyProperty="id">
...@@ -31,7 +32,8 @@ ...@@ -31,7 +32,8 @@
real_status, real_status,
wake_up, wake_up,
unique_number, unique_number,
welcome_duration welcome_duration,
group_robot_type
) )
values ( values (
#{wxId,jdbcType=VARCHAR}, #{wxId,jdbcType=VARCHAR},
...@@ -44,7 +46,8 @@ ...@@ -44,7 +46,8 @@
#{realStatus,jdbcType=INTEGER}, #{realStatus,jdbcType=INTEGER},
#{wakeUp,jdbcType=INTEGER}, #{wakeUp,jdbcType=INTEGER},
#{uniqueNumber, jdbcType=VARCHAR}, #{uniqueNumber, jdbcType=VARCHAR},
#{welcomeDuration, jdbcType=INTEGER} #{welcomeDuration, jdbcType=INTEGER},
#{groupRobotType, jdbcType=INTEGER}
) )
</insert> </insert>
...@@ -84,6 +87,9 @@ ...@@ -84,6 +87,9 @@
<if test="welcomeDuration != null"> <if test="welcomeDuration != null">
welcome_duration = #{welcomeDuration,jdbcType=INTEGER}, welcome_duration = #{welcomeDuration,jdbcType=INTEGER},
</if> </if>
<if test="groupRobotType != null">
group_robot_type = #{groupRobotType,jdbcType=INTEGER},
</if>
</set> </set>
where id = #{id,jdbcType=INTEGER} where id = #{id,jdbcType=INTEGER}
</update> </update>
...@@ -121,6 +127,9 @@ ...@@ -121,6 +127,9 @@
<if test="welcomeDuration != null"> <if test="welcomeDuration != null">
welcome_duration = #{welcomeDuration,jdbcType=INTEGER}, welcome_duration = #{welcomeDuration,jdbcType=INTEGER},
</if> </if>
<if test="groupRobotType != null">
group_robot_type = #{groupRobotType,jdbcType=INTEGER},
</if>
</set> </set>
where wx_id = #{wxId,jdbcType=VARCHAR} where wx_id = #{wxId,jdbcType=VARCHAR}
</update> </update>
...@@ -152,7 +161,8 @@ ...@@ -152,7 +161,8 @@
r.robot_type robotType, r.robot_type robotType,
r.state state, r.state state,
r.real_status realStatus, r.real_status realStatus,
r.unique_number uniqueNumber r.unique_number uniqueNumber,
r.group_robot_type groupRobotType
FROM FROM
pcloud_robot r pcloud_robot r
WHERE WHERE
...@@ -163,6 +173,9 @@ ...@@ -163,6 +173,9 @@
<if test="classifyId!=null"> <if test="classifyId!=null">
and r.robot_type = #{classifyId} and r.robot_type = #{classifyId}
</if> </if>
<if test="groupRobotType!=null">
and r.group_robot_type = #{groupRobotType}
</if>
</select> </select>
<select id="getPcloudKeywordRobotCount" parameterType="map" resultType="integer"> <select id="getPcloudKeywordRobotCount" parameterType="map" resultType="integer">
...@@ -193,12 +206,13 @@ ...@@ -193,12 +206,13 @@
limit 1 limit 1
</select> </select>
<select id="getPcloudRobotByType" parameterType="Integer" resultMap="BaseResultMap"> <select id="getPcloudRobotByType" parameterType="map" resultMap="BaseResultMap">
select <include refid="Base_Column_List"/> select <include refid="Base_Column_List"/>
from pcloud_robot from pcloud_robot
where robot_type = #{robotType} where robot_type = #{robotType}
and state = 1 and state = 1
and real_status = 1 and real_status = 1
and group_robot_type=#{groupRobotType}
limit 1 limit 1
</select> </select>
...@@ -250,6 +264,27 @@ ...@@ -250,6 +264,27 @@
pr.is_delete = 0 pr.is_delete = 0
</select> </select>
<select id="getAllPcloudRobotByType" resultType="com.pcloud.book.pcloudKeyword.dto.RobotClassifyDTO">
select
p.wx_id wxId,
p.nick_name nickName,
p.robot_type classifyId,
p.unique_number uniqueNumber,
p.state state,
p.real_status realStatus,
pr.classify_name classifyName
from
pcloud_robot p
left join pcloud_robot_classify pr
on p.robot_type = pr.id
where
pr.is_delete = 0
<if test="groupRobotType!=null">
and p.group_robot_type=#{groupRobotType}
</if>
</select>
<select id="getByUniqueNumber" parameterType="string" resultMap="BaseResultMap"> <select id="getByUniqueNumber" parameterType="string" resultMap="BaseResultMap">
select <include refid="Base_Column_List"/> select <include refid="Base_Column_List"/>
from pcloud_robot where unique_number = #{uniqueNumber} from pcloud_robot where unique_number = #{uniqueNumber}
...@@ -312,6 +347,9 @@ ...@@ -312,6 +347,9 @@
<select id="listNoClassifyRobot" resultMap="BaseResultMap"> <select id="listNoClassifyRobot" resultMap="BaseResultMap">
select id, wx_id, unique_number, real_status select id, wx_id, unique_number, real_status
from pcloud_robot where robot_type is null and real_status = 1 from pcloud_robot where robot_type is null and real_status = 1
<if test="groupRobotType !=null">
and group_robot_type=#{groupRobotType}
</if>
</select> </select>
<update id="updateRobotType" parameterType="map"> <update id="updateRobotType" parameterType="map">
...@@ -326,4 +364,24 @@ ...@@ -326,4 +364,24 @@
where robot_type = #{classifyId} where robot_type = #{classifyId}
</select> </select>
<select id="getPcloudRobotByRobotType" resultType="map" parameterType="integer">
select DISTINCT wx_id
from pcloud_robot
where robot_type = #{classifyId}
<if test="groupRobotType!=null">
and group_robot_type=#{groupRobotType}
</if>
</select>
<select id="getPcloudRobotCount" parameterType="map" resultType="com.pcloud.book.pcloudkeyword.dto.PcloudRobotCountDTO">
select CONCAT_WS("-",robot_type,group_robot_type) classifyAndRobotType,ifnull(COUNT(DISTINCT wx_id),0) count
from pcloud_robot
where robot_type IN
<foreach collection="classifyIds" index="index" item="item" open="(" close=")" separator=",">
#{item}
</foreach>
and group_robot_type>0
GROUP BY CONCAT_WS("-",robot_type,group_robot_type)
</select>
</mapper> </mapper>
\ No newline at end of file
...@@ -19,8 +19,8 @@ ...@@ -19,8 +19,8 @@
<result column="classify_name" property="classifyName" jdbcType="VARCHAR" /> <result column="classify_name" property="classifyName" jdbcType="VARCHAR" />
<result column="qrcode_url" property="qrcodeUrl" jdbcType="VARCHAR" /> <result column="qrcode_url" property="qrcodeUrl" jdbcType="VARCHAR" />
<result column="seq_num" property="seqNum" jdbcType="INTEGER"/> <result column="seq_num" property="seqNum" jdbcType="INTEGER"/>
<association property="robotCount" column="id" fetchType="eager" <!-- <association property="robotCount" column="id" fetchType="eager"
select="com.pcloud.book.pcloudkeyword.dao.impl.PcloudRobotDaoImpl.getRobotCountByClassifyId" /> select="com.pcloud.book.pcloudkeyword.dao.impl.PcloudRobotDaoImpl.getRobotCountByClassifyId" />-->
</resultMap> </resultMap>
<sql id="Base_Column_List" > <sql id="Base_Column_List" >
id, classify_name, link_url, qrcode_url,keyword_classify_id, is_delete, welcome_duration,is_open_push_h5url, seq_num, mimi_app_qr id, classify_name, link_url, qrcode_url,keyword_classify_id, is_delete, welcome_duration,is_open_push_h5url, seq_num, mimi_app_qr
......
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