Commit 3c761dc4 by 朱亚洁

feat:[1004555]新手编辑流程优化

parent f2fd04f7
......@@ -205,4 +205,8 @@ public interface BookAdviserService {
@PostMapping("getBookMapByAdviserBookIds")
ResponseEntity<ResponseDto<Map<Long, BookDto>>> getBookMapByAdviserBookIds(@RequestBody List<Long> adviserBookIds);
@ApiOperation("编辑是否有立项书")
@GetMapping("hasApprovalBook4Adviser")
ResponseEntity<ResponseDto<Boolean>> hasApprovalBook4Adviser(@RequestParam("adviserId") Long adviserId);
}
......@@ -423,4 +423,12 @@ public interface BookAdviserBiz {
Map<Long, BookDto> getBookMapByAdviserBookIds(List<Long> adviserBookIds);
void updateRaysField4Erp(List<RelateRaysBookApprovalVO> relateRaysBookList);
/**
* 编辑是否有立项书
* @author:zhuyajie
* @date:2021/4/25 16:27
* * @param null
*/
Boolean hasApprovalBook4Adviser(Long adviserId);
}
......@@ -3133,4 +3133,10 @@ public class BookAdviserBizImpl implements BookAdviserBiz {
bookAdviserDao.updateRaysField4Erp(nonApprovalList, YesOrNoNumEnum.NO.getValue());
}
}
@Override
public Boolean hasApprovalBook4Adviser(Long adviserId) {
Integer count = bookAdviserDao.hasApprovalBook4Adviser(adviserId);
return count > 0 ? true : false;
}
}
......@@ -50,6 +50,7 @@ import com.pcloud.book.consumer.erp.ErpConsr;
import com.pcloud.book.consumer.isbn.IsbnConsr;
import com.pcloud.book.consumer.label.LabelConsr;
import com.pcloud.book.consumer.message.MessageConsr;
import com.pcloud.book.consumer.raystask.AdviserTaskConsr;
import com.pcloud.book.consumer.raystask.MainLineConsr;
import com.pcloud.book.consumer.resource.ProductConsr;
import com.pcloud.book.consumer.trade.TradeConsr;
......@@ -90,6 +91,7 @@ import com.pcloud.channelcenter.wechat.dto.MessageDto;
import com.pcloud.channelcenter.wechat.vo.BookServeVO;
import com.pcloud.common.constant.CacheConstant;
import com.pcloud.common.core.aspect.ParamLog;
import com.pcloud.common.core.constant.AdviserTaskConstants;
import com.pcloud.common.core.constant.AgentTypeEnum;
import com.pcloud.common.core.constant.SystemCode;
import com.pcloud.common.enums.AppTypeEnum;
......@@ -275,6 +277,8 @@ public class BookBizImpl implements BookBiz {
private UpdateSuperSearchProducer searchProducer;
@Autowired
private ResourcePageItemDao resourcePageItemDao;
@Autowired
private AdviserTaskConsr adviserTaskConsr;
/**
* 创建书籍,同时建立与编辑的推广关系
*/
......@@ -1653,6 +1657,9 @@ public class BookBizImpl implements BookBiz {
bookDto.setIsDelete(null == dtoByBookId ? 1 : dtoByBookId.getIsDelete() ? 1 : 0);
//更新超级搜索es
searchProducer.createBook(book.getBookAdviserId());
//发送编辑任务queue
adviserTaskConsr.sendAdviserTaskQueue(book.getCreatedUser(), AdviserTaskConstants.TargetTypeEnum.BOOK.getValue(),
bookDto.getBookId(), AdviserTaskConstants.OperateTypeEnum.CREATE_BOOK.getValue());
return bookDto;
}
......
......@@ -329,4 +329,6 @@ public interface BookAdviserDao extends BaseDao<BookAdviser> {
Map<Long, BookDto> getBookMapByAdviserBookIds(List<Long> adviserBookIds);
int updateRaysField4Erp(List<RelateRaysBookApprovalVO> approvalList, Integer isApproval);
Integer hasApprovalBook4Adviser(Long adviserId);
}
......@@ -443,4 +443,9 @@ public class BookAdviserDaoImpl extends BaseDaoImpl<BookAdviser> implements Book
paramMap.put("approvalList", approvalList);
return getSessionTemplate().update(getStatement("updateRaysField4Erp"), paramMap);
}
@Override
public Integer hasApprovalBook4Adviser(Long adviserId) {
return getSessionTemplate().selectOne(getStatement("hasApprovalBook4Adviser"), adviserId);
}
}
......@@ -242,4 +242,10 @@ public class BookAdviserServiceImpl implements BookAdviserService {
public ResponseEntity<ResponseDto<Map<Long, BookDto>>> getBookMapByAdviserBookIds(@RequestBody List<Long> adviserBookIds) {
return ResponseHandleUtil.toResponse(bookAdviserBiz.getBookMapByAdviserBookIds(adviserBookIds));
}
@Override
@GetMapping("hasApprovalBook4Adviser")
public ResponseEntity<ResponseDto<Boolean>> hasApprovalBook4Adviser(@RequestParam("adviserId") Long adviserId) {
return ResponseHandleUtil.toResponse(bookAdviserBiz.hasApprovalBook4Adviser(adviserId));
}
}
package com.pcloud.book.consumer.raystask;
import com.pcloud.common.core.aspect.ParamLog;
import com.pcloud.common.core.biz.AdviserTaskQueueBiz;
import com.pcloud.common.core.dto.AdviserTaskDTO;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Component;
import lombok.extern.slf4j.Slf4j;
/**
* @ClassName com.pcloud.book.consumer.raystask.AdviserTaskConsr
* @Author zhuyajie
* @Description 编辑任务
* @Date 2021/4/25 10:09
* @Version 1.0
**/
@Slf4j
@Component
public class AdviserTaskConsr {
@Autowired
private AdviserTaskQueueBiz adviserTaskQueueBiz;
/**
* 发送编辑任务queue
*/
public void sendAdviserTaskQueue(Long adviserId, String targetType, Long targentId, String operateType) {
log.info("发送编辑任务queue,adviserId={},targetType={},targentId={},operateType={}",adviserId,targetType,targentId,operateType);
AdviserTaskDTO adviserTaskDTO = new AdviserTaskDTO();
adviserTaskDTO.setAdviserId(adviserId);
adviserTaskDTO.setTargetType(targetType);
adviserTaskDTO.setTargetId(targentId);
adviserTaskDTO.setTaskOperateType(operateType);
adviserTaskQueueBiz.sendAdviserTaskQueue(adviserTaskDTO);
}
}
......@@ -43,6 +43,7 @@ import com.pcloud.book.consumer.common.ExportConsr;
import com.pcloud.book.consumer.content.ResourceConsr;
import com.pcloud.book.consumer.exercisebook.ExerciseBookConsr;
import com.pcloud.book.consumer.message.MessageConsr;
import com.pcloud.book.consumer.raystask.AdviserTaskConsr;
import com.pcloud.book.consumer.raystask.MainLineConsr;
import com.pcloud.book.consumer.resource.ProductConsr;
import com.pcloud.book.consumer.settlement.BookConsr;
......@@ -224,6 +225,7 @@ import com.pcloud.channelcenter.wechat.vo.BookServeVO;
import com.pcloud.common.constant.CacheConstant;
import com.pcloud.common.constant.QrcodeStyleConstant;
import com.pcloud.common.core.aspect.ParamLog;
import com.pcloud.common.core.constant.AdviserTaskConstants;
import com.pcloud.common.core.constant.ProductTypeConstant;
import com.pcloud.common.core.constant.SystemCode;
import com.pcloud.common.core.enums.NotifyOriginTypeEnum;
......@@ -510,6 +512,8 @@ public class BookGroupBizImpl implements BookGroupBiz {
private ResourcePageBiz resourcePageBiz;
@Autowired
private UpdateSuperSearchProducer searchProducer;
@Autowired
private AdviserTaskConsr adviserTaskConsr;
private static final ThreadPoolExecutor PLATFORM_STATISTICS_EXPORT_THREAD = new ThreadPoolExecutor(2, 2,
0, TimeUnit.SECONDS, new LinkedBlockingQueue<>(),
......@@ -1839,6 +1843,7 @@ public class BookGroupBizImpl implements BookGroupBiz {
String fileName = "社群码导出_" + DateUtils.getShortDateStr();
Boolean isSuccess = true;
String zipUrl = "";
Long oneBookGroupId= null;
try {
Map<String, List<String[]>> zipFileMap = new HashMap<>();
List<String[]> qrcodePicUrls = new ArrayList<String[]>();
......@@ -1847,6 +1852,7 @@ public class BookGroupBizImpl implements BookGroupBiz {
if (ListUtils.isEmpty(bookDtos)) {
return;
}
oneBookGroupId = bookDtos.get(0).getBookGroupId();
Integer noName = 0;
for (BookDto bookDto : bookDtos) {
String bookName = null != bookDto.getBookName() ? StringUtil.addBracket(bookDto.getBookName()) : null;
......@@ -1890,6 +1896,9 @@ public class BookGroupBizImpl implements BookGroupBiz {
content.put("commitTime", DateUtils.formatDate(new Date()));
content.put("type", "社群码导出");
messageConsr.sendLetter(adviserId, adviserId, content.toJSONString(), SystemCode.adviser.code, "qrcode_download", zipUrl, fileName, NotifyOriginTypeEnum.BOOK_GROUP.value, null);
//编辑任务queue
adviserTaskConsr.sendAdviserTaskQueue(adviserId, AdviserTaskConstants.TargetTypeEnum.QRCODE.getValue(),
oneBookGroupId, AdviserTaskConstants.OperateTypeEnum.DOWNLOAD_QRCODE.getValue());
}
});
}
......
......@@ -13,6 +13,7 @@ import com.pcloud.book.book.dto.BookDto;
import com.pcloud.book.book.vo.BookLinkVO;
import com.pcloud.book.consumer.app.AppConsr;
import com.pcloud.book.consumer.channel.QrcodeSceneConsr;
import com.pcloud.book.consumer.raystask.AdviserTaskConsr;
import com.pcloud.book.consumer.resource.ProductConsr;
import com.pcloud.book.consumer.user.AdviserConsr;
import com.pcloud.book.consumer.user.AgentConsr;
......@@ -61,6 +62,7 @@ import com.pcloud.channelcenter.qrcode.dto.QrcodeSceneDto;
import com.pcloud.channelcenter.wechat.dto.AccountSettingDto;
import com.pcloud.channelcenter.wechat.dto.MessageDto;
import com.pcloud.common.core.aspect.ParamLog;
import com.pcloud.common.core.constant.AdviserTaskConstants;
import com.pcloud.common.core.constant.ProductTypeConstant;
import com.pcloud.common.exceptions.BizException;
import com.pcloud.common.page.PageBeanNew;
......@@ -142,6 +144,8 @@ public class ResourcePageBizImpl implements ResourcePageBiz {
private BookGroupServeDao bookGroupServeDao;
@Autowired
private ResourcePageCollectDao resourcePageCollectDao;
@Autowired
private AdviserTaskConsr adviserTaskConsr;
@Override
public Long updateResourcePage(UpdateResourcePageVO updateResourcePageVO) {
......@@ -460,9 +464,9 @@ public class ResourcePageBizImpl implements ResourcePageBiz {
resourcePageVO.setBookId(dto.getBookId());
resourcePageVO.setAdviserId(dto.getCreateUser());
resourcePageVO.setChannelId(dto.getChannelId());
}
//预览取原有二维码
//预览码放原有的二维码
resourcePageVO.setQrcodeUrl(dto.getGroupQrcodeUrl());
}
} else {
ResourcePage resourcePage = resourcePageDao.getBySceneId(sceneId);
if (null == resourcePage) {
......@@ -1146,6 +1150,11 @@ public class ResourcePageBizImpl implements ResourcePageBiz {
this.updateResourceColumn(columnVO);
}
}
ResourcePage page = resourcePageDao.getById(resourcePageId);
//发送编辑任务queue
adviserTaskConsr.sendAdviserTaskQueue(updateResourcePageVO.getCreateUser(), AdviserTaskConstants.TargetTypeEnum.QRCODE.getValue(),
page.getBookGroupId() == null ? page.getSceneId() : page.getBookGroupId(),
AdviserTaskConstants.OperateTypeEnum.CONFIGURE_RESOURCE.getValue());
return resourcePageId;
}
......
......@@ -1229,4 +1229,16 @@
book_id = #{item.bookId} AND adviser_id = #{item.adviserId} AND channel_id = #{item.channelId}
</foreach>
</update>
<select id="hasApprovalBook4Adviser" parameterType="long" resultType="integer">
SELECT
COUNT(1)
FROM
book_adviser
WHERE
IS_DELETE = 0
AND is_approval = 1
AND CREATED_USER = #{adviserId}
</select>
</mapper>
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