|
@@ -1,16 +1,17 @@
|
|
|
package com.xjrsoft.module.textbook.service.impl;
|
|
|
|
|
|
+import cn.hutool.core.util.ObjectUtil;
|
|
|
+import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper;
|
|
|
import com.baomidou.mybatisplus.core.toolkit.Wrappers;
|
|
|
import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
|
|
|
import com.github.yulichang.base.MPJBaseServiceImpl;
|
|
|
import com.xjrsoft.module.textbook.dto.TextbookPageDto;
|
|
|
-import com.xjrsoft.module.textbook.entity.Textbook;
|
|
|
-import com.xjrsoft.module.textbook.entity.TextbookClassRelation;
|
|
|
-import com.xjrsoft.module.textbook.entity.TextbookSubscriptionRecord;
|
|
|
+import com.xjrsoft.module.textbook.entity.*;
|
|
|
import com.xjrsoft.module.textbook.mapper.TextbookClassRelationMapper;
|
|
|
import com.xjrsoft.module.textbook.mapper.TextbookMapper;
|
|
|
import com.xjrsoft.module.textbook.mapper.TextbookSubscriptionRecordMapper;
|
|
|
import com.xjrsoft.module.textbook.service.ITextbookService;
|
|
|
+import com.xjrsoft.module.textbook.service.IWfTextbookSubscriptionService;
|
|
|
import com.xjrsoft.module.textbook.vo.TextbookPageVo;
|
|
|
import lombok.AllArgsConstructor;
|
|
|
import org.springframework.stereotype.Service;
|
|
@@ -34,6 +35,8 @@ public class TextbookServiceImpl extends MPJBaseServiceImpl<TextbookMapper, Text
|
|
|
private final TextbookClassRelationMapper textbookTextbookClassRelationMapper;
|
|
|
private final TextbookSubscriptionRecordMapper textbookTextbookSubscriptionRecordMapper;
|
|
|
|
|
|
+ private final IWfTextbookSubscriptionService iWfTextbookSubscriptionService;
|
|
|
+
|
|
|
|
|
|
@Override
|
|
|
@Transactional(rollbackFor = Exception.class)
|
|
@@ -130,4 +133,55 @@ public class TextbookServiceImpl extends MPJBaseServiceImpl<TextbookMapper, Text
|
|
|
public Page<TextbookPageVo> getPage(Page<TextbookPageDto> page, TextbookPageDto dto) {
|
|
|
return textbookTextbookMapper.getPage(page, dto);
|
|
|
}
|
|
|
+
|
|
|
+ @Override
|
|
|
+ public Boolean dataHandle(Long dataId) {
|
|
|
+ WfTextbookSubscription wfTextbookSubscription = iWfTextbookSubscriptionService.selectById(dataId);
|
|
|
+ if(ObjectUtil.isNotNull(wfTextbookSubscription) && ObjectUtil.isNotNull(wfTextbookSubscription.getWfTextbookSubscriptionItemList()) && wfTextbookSubscription.getWfTextbookSubscriptionItemList().size() > 0){
|
|
|
+ for (WfTextbookSubscriptionItem wfTextbookSubscriptionItem : wfTextbookSubscription.getWfTextbookSubscriptionItemList()) {
|
|
|
+ String issn = wfTextbookSubscriptionItem.getIssn();
|
|
|
+ Long semesterId = wfTextbookSubscription.getBaseSemesterId();
|
|
|
+ Long subjectGroupId = wfTextbookSubscription.getSubjectGroupId();
|
|
|
+ LambdaQueryWrapper<Textbook> queryWrapper = new LambdaQueryWrapper<>();
|
|
|
+ queryWrapper
|
|
|
+ .eq(Textbook::getIssn,issn)
|
|
|
+ .eq(Textbook::getBaseSemesterId,semesterId)
|
|
|
+ .eq(Textbook::getSubjectGroupId,subjectGroupId);
|
|
|
+ Long count = this.count(queryWrapper);
|
|
|
+ if(count <= 0){//该书不存在教材管理
|
|
|
+ Textbook textbook = new Textbook();
|
|
|
+ textbook.setIssn(wfTextbookSubscriptionItem.getIssn());
|
|
|
+ textbook.setIsbn(wfTextbookSubscriptionItem.getIsbn());
|
|
|
+ textbook.setBookName(wfTextbookSubscriptionItem.getBookName());
|
|
|
+ textbook.setPublishingHouse(wfTextbookSubscriptionItem.getPublishingHouse());
|
|
|
+ textbook.setEditorInChief(wfTextbookSubscriptionItem.getEditorInChief());
|
|
|
+ textbook.setSubjectGroupId(wfTextbookSubscription.getSubjectGroupId());
|
|
|
+ textbook.setBaseSemesterId(wfTextbookSubscription.getBaseSemesterId());
|
|
|
+ textbook.setCourseSubjectId(wfTextbookSubscriptionItem.getCourseSubjectId());
|
|
|
+ textbook.setVersion(wfTextbookSubscriptionItem.getVersion());
|
|
|
+ textbook.setIsTextbookPlan(wfTextbookSubscriptionItem.getIsTextbookPlan());
|
|
|
+ textbook.setTextbookType(wfTextbookSubscriptionItem.getSubscriptionType());
|
|
|
+ textbook.setAppraisalPrice(wfTextbookSubscriptionItem.getAppraisalPrice());
|
|
|
+ textbook.setGradeId(345678345679L);// TODO 这个字段的意思
|
|
|
+ textbookTextbookMapper.insert(textbook);
|
|
|
+ if(ObjectUtil.isNotNull(wfTextbookSubscriptionItem.getClassIds()) && !wfTextbookSubscriptionItem.getClassIds().equals("")){
|
|
|
+ String classIds = wfTextbookSubscriptionItem.getClassIds();
|
|
|
+ String[] classIdStrs = classIds.split(",");
|
|
|
+ for (String classIdStr : classIdStrs) {
|
|
|
+ Long classId = Long.parseLong(classIdStr);
|
|
|
+ TextbookClassRelation textbookClassRelation = new TextbookClassRelation();
|
|
|
+ textbookClassRelation.setTextbookId(textbook.getId());
|
|
|
+ textbookClassRelation.setClassId(classId);
|
|
|
+ textbookTextbookClassRelationMapper.insert(textbookClassRelation);
|
|
|
+ }
|
|
|
+ }
|
|
|
+ TextbookSubscriptionRecord textbookSubscriptionRecord = new TextbookSubscriptionRecord();
|
|
|
+ textbookSubscriptionRecord.setWfTextbookSubscriptionId(textbook.getId());
|
|
|
+ textbookSubscriptionRecord.setWfTextbookSubscriptionId(wfTextbookSubscription.getId());
|
|
|
+ textbookTextbookSubscriptionRecordMapper.insert(textbookSubscriptionRecord);
|
|
|
+ }
|
|
|
+ }
|
|
|
+ }
|
|
|
+ return true;
|
|
|
+ }
|
|
|
}
|