Commit 0aadd8de by zhuyajie

衔接语数量

parent e9899208
......@@ -12,14 +12,7 @@ import com.pcloud.book.personalstage.biz.PersonalStageBiz;
import com.pcloud.book.personalstage.biz.PersonalStageJumpBiz;
import com.pcloud.book.personalstage.check.PersonalStageCheck;
import com.pcloud.book.personalstage.constant.PersonalStageConstant;
import com.pcloud.book.personalstage.dao.PersonalStageDao;
import com.pcloud.book.personalstage.dao.PersonalStageJumpDao;
import com.pcloud.book.personalstage.dao.PersonalStageJumpKeywordDao;
import com.pcloud.book.personalstage.dao.PersonalStageProgressMessageDao;
import com.pcloud.book.personalstage.dao.PersonalStageReplyDao;
import com.pcloud.book.personalstage.dao.PersonalStageReplyItemDao;
import com.pcloud.book.personalstage.dao.PersonalStageUserDao;
import com.pcloud.book.personalstage.dao.PersonalStageWakeupDao;
import com.pcloud.book.personalstage.dao.*;
import com.pcloud.book.personalstage.dto.FusingFinishDelayDTO;
import com.pcloud.book.personalstage.dto.PersonalStageDTO;
import com.pcloud.book.personalstage.dto.PersonalStageJumpKeywordDto;
......@@ -47,6 +40,8 @@ import com.sdk.wxgroup.SendMessageTypeEnum;
import com.sdk.wxgroup.SendPicMessageVO;
import com.sdk.wxgroup.SendTextMessageVO;
import com.sdk.wxgroup.WxGroupSDK;
import org.apache.commons.collections.MapUtils;
import org.elasticsearch.index.mapper.MapperUtils;
import org.slf4j.Logger;
import org.slf4j.LoggerFactory;
import org.springframework.beans.factory.annotation.Autowired;
......@@ -100,6 +95,8 @@ public class PersonalStageBizImpl implements PersonalStageBiz {
private WechatGroupConsr wechatGroupConsr;
@Autowired
private PersonalStageProgressMessageDao personalStageProgressMessageDao;
@Autowired
private PersonalStageJumpLinkupDao personalStageJumpLinkupDao;
@Value("${wechat.group.link.prefix}")
private String wechatLinkPrefix;
......@@ -255,7 +252,20 @@ public class PersonalStageBizImpl implements PersonalStageBiz {
public PageBean getPersonalStageList(Long robotClassifyId, PageParam pageParam) throws BizException {
Map<String, Object> paramMap = new HashMap<>();
paramMap.put("robotClassifyId", robotClassifyId);
return personalStageDao.listPage(pageParam, paramMap, "getPersonalStageList");
PageBean pageBean = personalStageDao.listPage(pageParam, paramMap, "getPersonalStageList");
if (null == pageBean || ListUtils.isEmpty(pageBean.getRecordList())){
return new PageBean();
}
//衔接语数量
Map<Long, PersonalStageDTO> linkupCountMap = personalStageJumpLinkupDao.mapStageJumpLinkupCountByRobotClassify(robotClassifyId);
for (Object object : pageBean.getRecordList()){
PersonalStageDTO stageDTO = (PersonalStageDTO) object;
if (!MapUtils.isEmpty(linkupCountMap) && linkupCountMap.containsKey(stageDTO.getId())){
PersonalStageDTO linkup = linkupCountMap.get(stageDTO.getId());
stageDTO.setJumpLinkupCount(linkup.getJumpLinkupCount());
}
}
return pageBean;
}
/**
......
package com.pcloud.book.personalstage.dao;
import com.pcloud.book.personalstage.dto.PersonalStageDTO;
import com.pcloud.book.personalstage.entity.PersonalStageJumpLinkup;
import com.pcloud.common.core.dao.BaseDao;
import java.util.List;
import java.util.Map;
public interface PersonalStageJumpLinkupDao extends BaseDao<PersonalStageJumpLinkup> {
/**
......@@ -24,4 +26,11 @@ public interface PersonalStageJumpLinkupDao extends BaseDao<PersonalStageJumpLin
* @return
*/
List<PersonalStageJumpLinkup> getByJumpId(Long jumpId);
/**
* 阶段衔接语条数
* @param robotClassifyId
* @return
*/
Map<Long, PersonalStageDTO> mapStageJumpLinkupCountByRobotClassify(Long robotClassifyId);
}
\ No newline at end of file
package com.pcloud.book.personalstage.dao.impl;
import com.pcloud.book.personalstage.dao.PersonalStageJumpLinkupDao;
import com.pcloud.book.personalstage.dto.PersonalStageDTO;
import com.pcloud.book.personalstage.entity.PersonalStageJumpLinkup;
import com.pcloud.common.core.dao.BaseDaoImpl;
import org.springframework.stereotype.Component;
import java.util.List;
import java.util.Map;
@Component("personalStageJumpLinkup")
public class PersonalStageJumpLinkupDaoImpl extends BaseDaoImpl<PersonalStageJumpLinkup> implements PersonalStageJumpLinkupDao {
......@@ -23,4 +25,9 @@ public class PersonalStageJumpLinkupDaoImpl extends BaseDaoImpl<PersonalStageJum
public List<PersonalStageJumpLinkup> getByJumpId(Long jumpId) {
return super.sqlSessionTemplate.selectList(getStatement("getByJumpId"), jumpId);
}
@Override
public Map<Long, PersonalStageDTO> mapStageJumpLinkupCountByRobotClassify(Long robotClassifyId) {
return getSessionTemplate().selectMap(getStatement("mapStageJumpLinkupCountByRobotClassify"), robotClassifyId, "id");
}
}
......@@ -50,4 +50,6 @@ public class PersonalStageDTO extends BaseDto {
@JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss", timezone = "GMT+8")
private Date createTime;
@ApiModelProperty("衔接语条数")
private Integer jumpLinkupCount;
}
\ No newline at end of file
......@@ -87,4 +87,16 @@
</trim>
</foreach>
</insert>
<select id="mapStageJumpLinkupCountByRobotClassify" parameterType="long" resultType="com.pcloud.book.personalstage.dto.PersonalStageDTO">
SELECT
s.id id,
COUNT(l.id) jumpLinkupCount
FROM
personal_stage_jump_linkup l LEFT JOIN personal_stage_jump j ON l.personal_stage_jump_id=j.id
LEFT JOIN personal_stage s ON s.id=j.personal_stage_id
WHERE s.robot_classify_id = #{robotClassifyId}
GROUP BY s.id
</select>
</mapper>
\ No newline at end of file
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