|
|
@@ -838,6 +838,7 @@ public class TextbookStudentClaimServiceImpl extends MPJBaseServiceImpl<Textbook
|
|
|
wfTextbookClaimLambdaQueryWrapper
|
|
|
.selectAs(WfTextbookClaimItem::getTextbookId, ClassClaimTextbookIssuePrice::getTextbookId)
|
|
|
.selectAs(TextbookWarehouseRecord::getSubtotal, ClassClaimTextbookIssuePrice::getPrice)
|
|
|
+ .selectAs(TextbookIssueRecord::getTextbookWarehouseRecordId, ClassClaimTextbookIssuePrice::getTextbookWarehouseRecordId)
|
|
|
.innerJoin(WfTextbookClaimItem.class, WfTextbookClaimItem::getWfTextbookClaimId, WfTextbookClaim::getId)
|
|
|
.innerJoin(TextbookIssueRecord.class,
|
|
|
wrapper -> wrapper
|
|
|
@@ -847,12 +848,13 @@ public class TextbookStudentClaimServiceImpl extends MPJBaseServiceImpl<Textbook
|
|
|
.innerJoin(TextbookWarehouseRecord.class, TextbookWarehouseRecord::getId, TextbookIssueRecord::getTextbookWarehouseRecordId)
|
|
|
.eq(WfTextbookClaim::getBaseSemesterId, dto.getBaseSemesterId())
|
|
|
.eq(WfTextbookClaim::getClassId, dto.getClassId())
|
|
|
+ .eq(WfTextbookClaim::getClaimType, ClaimTypeEnum.ClaimClass.getCode())
|
|
|
.eq(WfTextbookClaim::getWorkflowStatus, 1)
|
|
|
;
|
|
|
List<ClassClaimTextbookIssuePrice> classClaimTextbookIssuePrices = wfTextbookClaimMapper.selectJoinList(ClassClaimTextbookIssuePrice.class, wfTextbookClaimLambdaQueryWrapper);
|
|
|
|
|
|
- Map<Long, BigDecimal> textBookPriceMap = classClaimTextbookIssuePrices.stream()
|
|
|
- .collect(Collectors.toMap(ClassClaimTextbookIssuePrice::getTextbookId, ClassClaimTextbookIssuePrice::getPrice, (p1, p2) -> p2));
|
|
|
+ Map<Long, ClassClaimTextbookIssuePrice> textBookPriceMap = classClaimTextbookIssuePrices.stream()
|
|
|
+ .collect(Collectors.toMap(ClassClaimTextbookIssuePrice::getTextbookId, c -> c, (p1, p2) -> p2));
|
|
|
|
|
|
List<TextbookStudentClaim> insertList = new ArrayList<>();
|
|
|
List<TextbookStudentClaim> updateList = new ArrayList<>();
|
|
|
@@ -861,12 +863,16 @@ public class TextbookStudentClaimServiceImpl extends MPJBaseServiceImpl<Textbook
|
|
|
TextbookStudentClaim updateTextbookStudentClaim;
|
|
|
Date nowDate = new Date();
|
|
|
Long loginUserId = StpUtil.getLoginIdAsLong();
|
|
|
+ ClassClaimTextbookIssuePrice classClaimTextbookIssuePrice = null;
|
|
|
for (Long textbookId : dto.getTextbookIds()) {
|
|
|
for (Long userId : dto.getUserIds()) {
|
|
|
- BigDecimal price = BigDecimal.ZERO;
|
|
|
if (MapUtils.isNotEmpty(textBookPriceMap) && ObjectUtils.isNotEmpty(textBookPriceMap.get(textbookId))) {
|
|
|
- price = textBookPriceMap.get(textbookId);
|
|
|
+ classClaimTextbookIssuePrice = textBookPriceMap.get(textbookId);
|
|
|
+ }
|
|
|
+ if(ObjectUtils.isEmpty(classClaimTextbookIssuePrice)){
|
|
|
+ throw new MyException("有一本教材并没有发放,无法确认领取。");
|
|
|
}
|
|
|
+ BigDecimal price = classClaimTextbookIssuePrice.getPrice();
|
|
|
oldTextbookStudentClaim = byUserIdAndTextbookId.get("" + userId + textbookId);
|
|
|
if (ObjectUtils.isNotEmpty(oldTextbookStudentClaim)
|
|
|
&& (ObjectUtils.isEmpty(oldTextbookStudentClaim.getClaimSource()) || oldTextbookStudentClaim.getClaimSource() != 1)
|
|
|
@@ -877,9 +883,11 @@ public class TextbookStudentClaimServiceImpl extends MPJBaseServiceImpl<Textbook
|
|
|
updateTextbookStudentClaim.setModifyDate(nowDate);
|
|
|
updateTextbookStudentClaim.setModifyUserId(loginUserId);
|
|
|
if (dto.getIsClaim() == 0) {
|
|
|
+ updateTextbookStudentClaim.setTextbookWarehouseRecordId(0L);
|
|
|
updateTextbookStudentClaim.setPrice(BigDecimal.ZERO);
|
|
|
}
|
|
|
if (dto.getIsClaim() == 1) {
|
|
|
+ updateTextbookStudentClaim.setTextbookWarehouseRecordId(classClaimTextbookIssuePrice.getTextbookWarehouseRecordId());
|
|
|
updateTextbookStudentClaim.setPrice(price);
|
|
|
}
|
|
|
updateTextbookStudentClaim.setClaimSource(2);
|
|
|
@@ -894,9 +902,11 @@ public class TextbookStudentClaimServiceImpl extends MPJBaseServiceImpl<Textbook
|
|
|
insertTextbookStudentClaim.setCreateDate(nowDate);
|
|
|
insertTextbookStudentClaim.setCreateUserId(loginUserId);
|
|
|
if (dto.getIsClaim() == 0) {
|
|
|
+ insertTextbookStudentClaim.setTextbookWarehouseRecordId(0L);
|
|
|
insertTextbookStudentClaim.setPrice(BigDecimal.ZERO);
|
|
|
}
|
|
|
if (dto.getIsClaim() == 1) {
|
|
|
+ insertTextbookStudentClaim.setTextbookWarehouseRecordId(classClaimTextbookIssuePrice.getTextbookWarehouseRecordId());
|
|
|
insertTextbookStudentClaim.setPrice(price);
|
|
|
}
|
|
|
insertTextbookStudentClaim.setClaimSource(2);
|
|
|
@@ -964,6 +974,7 @@ public class TextbookStudentClaimServiceImpl extends MPJBaseServiceImpl<Textbook
|
|
|
wfTextbookClaimLambdaQueryWrapper
|
|
|
.selectAs(WfTextbookClaimItem::getTextbookId, ClassClaimTextbookIssuePrice::getTextbookId)
|
|
|
.selectAs(TextbookWarehouseRecord::getSubtotal, ClassClaimTextbookIssuePrice::getPrice)
|
|
|
+ .selectAs(TextbookIssueRecord::getTextbookWarehouseRecordId, ClassClaimTextbookIssuePrice::getTextbookWarehouseRecordId)
|
|
|
.innerJoin(WfTextbookClaimItem.class, WfTextbookClaimItem::getWfTextbookClaimId, WfTextbookClaim::getId)
|
|
|
.innerJoin(TextbookIssueRecord.class,
|
|
|
wrapper -> wrapper
|
|
|
@@ -973,40 +984,49 @@ public class TextbookStudentClaimServiceImpl extends MPJBaseServiceImpl<Textbook
|
|
|
.innerJoin(TextbookWarehouseRecord.class, TextbookWarehouseRecord::getId, TextbookIssueRecord::getTextbookWarehouseRecordId)
|
|
|
.in(WfTextbookClaim::getBaseSemesterId, baseSemesterIds)
|
|
|
.in(WfTextbookClaim::getClassId, classIds)
|
|
|
+ .eq(WfTextbookClaim::getClaimType, ClaimTypeEnum.ClaimClass.getCode())
|
|
|
.eq(WfTextbookClaim::getWorkflowStatus, 1)
|
|
|
;
|
|
|
|
|
|
List<ClassClaimTextbookIssuePrice> classClaimTextbookIssuePrices = wfTextbookClaimMapper.selectJoinList(ClassClaimTextbookIssuePrice.class, wfTextbookClaimLambdaQueryWrapper);
|
|
|
|
|
|
- Map<Long, BigDecimal> textBookPriceMap = classClaimTextbookIssuePrices.stream()
|
|
|
- .collect(Collectors.toMap(ClassClaimTextbookIssuePrice::getTextbookId, ClassClaimTextbookIssuePrice::getPrice, (p1, p2) -> p2));
|
|
|
+ Map<Long, ClassClaimTextbookIssuePrice> textBookPriceMap = classClaimTextbookIssuePrices.stream()
|
|
|
+ .collect(Collectors.toMap(ClassClaimTextbookIssuePrice::getTextbookId, c -> c, (c1, c2) -> c2));
|
|
|
|
|
|
List<TextbookStudentClaim> insertList = new ArrayList<>();
|
|
|
List<TextbookStudentClaim> updateList = new ArrayList<>();
|
|
|
TextbookStudentClaim oldTextbookStudentClaim;
|
|
|
TextbookStudentClaim insertTextbookStudentClaim;
|
|
|
TextbookStudentClaim updateTextbookStudentClaim;
|
|
|
+ ClassClaimTextbookIssuePrice classClaimTextbookIssuePrice = null;
|
|
|
Date nowDate = new Date();
|
|
|
Long loginUserId = StpUtil.getLoginIdAsLong();
|
|
|
for (TeacherConfirmDto dto : dtos) {
|
|
|
- BigDecimal price = BigDecimal.ZERO;
|
|
|
if (MapUtils.isNotEmpty(textBookPriceMap) && ObjectUtils.isNotEmpty(textBookPriceMap.get(dto.getTextbookId()))) {
|
|
|
- price = textBookPriceMap.get(dto.getTextbookId());
|
|
|
+ classClaimTextbookIssuePrice = textBookPriceMap.get(dto.getTextbookId());
|
|
|
+ }
|
|
|
+ if(ObjectUtils.isEmpty(classClaimTextbookIssuePrice)){
|
|
|
+ throw new MyException("有一本教材并没有发放,无法确认领取。");
|
|
|
}
|
|
|
+ BigDecimal price = classClaimTextbookIssuePrice.getPrice();
|
|
|
if (ObjectUtils.isNotEmpty(dto.getTextbookStudentClaimId())
|
|
|
&& dto.getTextbookStudentClaimId() != 0) {
|
|
|
oldTextbookStudentClaim = byClaimSource.get(dto.getTextbookStudentClaimId());
|
|
|
if (ObjectUtils.isNotEmpty(oldTextbookStudentClaim)
|
|
|
- && (ObjectUtils.isEmpty(oldTextbookStudentClaim.getClaimSource()) || oldTextbookStudentClaim.getClaimSource() != 1)) {
|
|
|
+ && (ObjectUtils.isEmpty(oldTextbookStudentClaim.getClaimSource())
|
|
|
+ || oldTextbookStudentClaim.getClaimSource() != 1)
|
|
|
+ ) {
|
|
|
updateTextbookStudentClaim = new TextbookStudentClaim();
|
|
|
updateTextbookStudentClaim.setId(dto.getTextbookStudentClaimId());
|
|
|
updateTextbookStudentClaim.setIsClaim(dto.getIsClaim());
|
|
|
updateTextbookStudentClaim.setModifyUserId(loginUserId);
|
|
|
updateTextbookStudentClaim.setModifyDate(nowDate);
|
|
|
if (dto.getIsClaim() == 0) {
|
|
|
+ updateTextbookStudentClaim.setTextbookWarehouseRecordId(0L);
|
|
|
updateTextbookStudentClaim.setPrice(BigDecimal.ZERO);
|
|
|
}
|
|
|
if (dto.getIsClaim() == 1) {
|
|
|
+ updateTextbookStudentClaim.setTextbookWarehouseRecordId(classClaimTextbookIssuePrice.getTextbookWarehouseRecordId());
|
|
|
updateTextbookStudentClaim.setPrice(price);
|
|
|
}
|
|
|
updateTextbookStudentClaim.setClaimSource(2);
|
|
|
@@ -1023,9 +1043,11 @@ public class TextbookStudentClaimServiceImpl extends MPJBaseServiceImpl<Textbook
|
|
|
updateTextbookStudentClaim.setModifyDate(nowDate);
|
|
|
updateTextbookStudentClaim.setModifyUserId(loginUserId);
|
|
|
if (dto.getIsClaim() == 0) {
|
|
|
+ updateTextbookStudentClaim.setTextbookWarehouseRecordId(0L);
|
|
|
updateTextbookStudentClaim.setPrice(BigDecimal.ZERO);
|
|
|
}
|
|
|
if (dto.getIsClaim() == 1) {
|
|
|
+ updateTextbookStudentClaim.setTextbookWarehouseRecordId(classClaimTextbookIssuePrice.getTextbookWarehouseRecordId());
|
|
|
updateTextbookStudentClaim.setPrice(price);
|
|
|
}
|
|
|
updateTextbookStudentClaim.setClaimSource(2);
|
|
|
@@ -1040,9 +1062,11 @@ public class TextbookStudentClaimServiceImpl extends MPJBaseServiceImpl<Textbook
|
|
|
insertTextbookStudentClaim.setCreateDate(nowDate);
|
|
|
insertTextbookStudentClaim.setCreateUserId(loginUserId);
|
|
|
if (dto.getIsClaim() == 0) {
|
|
|
+ insertTextbookStudentClaim.setTextbookWarehouseRecordId(0L);
|
|
|
insertTextbookStudentClaim.setPrice(BigDecimal.ZERO);
|
|
|
}
|
|
|
if (dto.getIsClaim() == 1) {
|
|
|
+ insertTextbookStudentClaim.setTextbookWarehouseRecordId(classClaimTextbookIssuePrice.getTextbookWarehouseRecordId());
|
|
|
insertTextbookStudentClaim.setPrice(price);
|
|
|
}
|
|
|
insertTextbookStudentClaim.setClaimSource(2);
|
|
|
@@ -1110,6 +1134,7 @@ public class TextbookStudentClaimServiceImpl extends MPJBaseServiceImpl<Textbook
|
|
|
MPJLambdaWrapper<WfTextbookClaim> wfTextbookClaimLambdaQueryWrapper = new MPJLambdaWrapper<>();
|
|
|
wfTextbookClaimLambdaQueryWrapper
|
|
|
.selectAs(WfTextbookClaimItem::getTextbookId, ClassClaimTextbookIssuePrice::getTextbookId)
|
|
|
+ .selectAs(TextbookIssueRecord::getTextbookWarehouseRecordId, ClassClaimTextbookIssuePrice::getTextbookWarehouseRecordId)
|
|
|
.selectAs(TextbookWarehouseRecord::getSubtotal, ClassClaimTextbookIssuePrice::getPrice)
|
|
|
.innerJoin(WfTextbookClaimItem.class, WfTextbookClaimItem::getWfTextbookClaimId, WfTextbookClaim::getId)
|
|
|
.innerJoin(TextbookIssueRecord.class,
|
|
|
@@ -1120,25 +1145,30 @@ public class TextbookStudentClaimServiceImpl extends MPJBaseServiceImpl<Textbook
|
|
|
.innerJoin(TextbookWarehouseRecord.class, TextbookWarehouseRecord::getId, TextbookIssueRecord::getTextbookWarehouseRecordId)
|
|
|
.eq(WfTextbookClaim::getBaseSemesterId, dto.getBaseSemesterId())
|
|
|
.eq(WfTextbookClaim::getClassId, baseStudentSchoolRoll.getClassId())
|
|
|
+ .eq(WfTextbookClaim::getClaimType, ClaimTypeEnum.ClaimClass.getCode())
|
|
|
.eq(WfTextbookClaim::getWorkflowStatus, 1)
|
|
|
;
|
|
|
List<ClassClaimTextbookIssuePrice> classClaimTextbookIssuePrices = wfTextbookClaimMapper.selectJoinList(ClassClaimTextbookIssuePrice.class, wfTextbookClaimLambdaQueryWrapper);
|
|
|
|
|
|
- Map<Long, BigDecimal> textBookPriceMap = classClaimTextbookIssuePrices.stream()
|
|
|
- .collect(Collectors.toMap(ClassClaimTextbookIssuePrice::getTextbookId, ClassClaimTextbookIssuePrice::getPrice, (p1, p2) -> p2));
|
|
|
+ Map<Long, ClassClaimTextbookIssuePrice> textBookPriceMap = classClaimTextbookIssuePrices.stream()
|
|
|
+ .collect(Collectors.toMap(ClassClaimTextbookIssuePrice::getTextbookId, c -> c, (c1, c2) -> c2));
|
|
|
|
|
|
List<TextbookStudentClaim> insertList = new ArrayList<>();
|
|
|
List<TextbookStudentClaim> updateList = new ArrayList<>();
|
|
|
TextbookStudentClaim oldTextbookStudentClaim;
|
|
|
TextbookStudentClaim insertTextbookStudentClaim;
|
|
|
TextbookStudentClaim updateTextbookStudentClaim;
|
|
|
+ ClassClaimTextbookIssuePrice classClaimTextbookIssuePrice = null;
|
|
|
Date nowDate = new Date();
|
|
|
Long loginUserId = StpUtil.getLoginIdAsLong();
|
|
|
for (StudentConfirmDetailDto studentConfirmDetailDto : dto.getStudentConfirmDetail()) {
|
|
|
- BigDecimal price = BigDecimal.ZERO;
|
|
|
if (MapUtils.isNotEmpty(textBookPriceMap) && ObjectUtils.isNotEmpty(textBookPriceMap.get(studentConfirmDetailDto.getTextbookId()))) {
|
|
|
- price = textBookPriceMap.get(studentConfirmDetailDto.getTextbookId());
|
|
|
+ classClaimTextbookIssuePrice = textBookPriceMap.get(studentConfirmDetailDto.getTextbookId());
|
|
|
+ }
|
|
|
+ if(ObjectUtils.isEmpty(classClaimTextbookIssuePrice)){
|
|
|
+ throw new MyException("有一本教材并没有发放,无法确认领取。");
|
|
|
}
|
|
|
+ BigDecimal price = classClaimTextbookIssuePrice.getPrice();
|
|
|
if (ObjectUtils.isNotEmpty(studentConfirmDetailDto.getTextbookStudentClaimId())
|
|
|
&& studentConfirmDetailDto.getTextbookStudentClaimId() != 0
|
|
|
) {
|
|
|
@@ -1151,9 +1181,11 @@ public class TextbookStudentClaimServiceImpl extends MPJBaseServiceImpl<Textbook
|
|
|
updateTextbookStudentClaim.setModifyUserId(loginUserId);
|
|
|
updateTextbookStudentClaim.setModifyDate(nowDate);
|
|
|
if (dto.getIsClaim() == 0) {
|
|
|
+ updateTextbookStudentClaim.setTextbookWarehouseRecordId(0L);
|
|
|
updateTextbookStudentClaim.setPrice(BigDecimal.ZERO);
|
|
|
}
|
|
|
if (dto.getIsClaim() == 1) {
|
|
|
+ updateTextbookStudentClaim.setTextbookWarehouseRecordId(classClaimTextbookIssuePrice.getTextbookWarehouseRecordId());
|
|
|
updateTextbookStudentClaim.setPrice(price);
|
|
|
}
|
|
|
updateTextbookStudentClaim.setClaimSource(2);
|
|
|
@@ -1168,9 +1200,11 @@ public class TextbookStudentClaimServiceImpl extends MPJBaseServiceImpl<Textbook
|
|
|
updateTextbookStudentClaim.setModifyDate(nowDate);
|
|
|
updateTextbookStudentClaim.setModifyUserId(loginUserId);
|
|
|
if (dto.getIsClaim() == 0) {
|
|
|
+ updateTextbookStudentClaim.setTextbookWarehouseRecordId(0L);
|
|
|
updateTextbookStudentClaim.setPrice(BigDecimal.ZERO);
|
|
|
}
|
|
|
if (dto.getIsClaim() == 1) {
|
|
|
+ updateTextbookStudentClaim.setTextbookWarehouseRecordId(classClaimTextbookIssuePrice.getTextbookWarehouseRecordId());
|
|
|
updateTextbookStudentClaim.setPrice(price);
|
|
|
}
|
|
|
updateTextbookStudentClaim.setClaimSource(2);
|
|
|
@@ -1185,9 +1219,11 @@ public class TextbookStudentClaimServiceImpl extends MPJBaseServiceImpl<Textbook
|
|
|
insertTextbookStudentClaim.setCreateDate(nowDate);
|
|
|
insertTextbookStudentClaim.setCreateUserId(loginUserId);
|
|
|
if (dto.getIsClaim() == 0) {
|
|
|
+ insertTextbookStudentClaim.setTextbookWarehouseRecordId(0L);
|
|
|
insertTextbookStudentClaim.setPrice(BigDecimal.ZERO);
|
|
|
}
|
|
|
if (dto.getIsClaim() == 1) {
|
|
|
+ insertTextbookStudentClaim.setTextbookWarehouseRecordId(classClaimTextbookIssuePrice.getTextbookWarehouseRecordId());
|
|
|
insertTextbookStudentClaim.setPrice(price);
|
|
|
}
|
|
|
insertTextbookStudentClaim.setClaimSource(2);
|