|
|
|
@ -103,9 +103,9 @@ public class TReceiveGoodsMainServiceImpl extends ServiceImpl<TReceiveGoodsMainM |
|
|
|
if (null == param.getId()) { |
|
|
|
if (null == param.getId()) { |
|
|
|
String idPrefix = "SH" + LocalDateTimeUtil.format(LocalDateTime.now(), "yyyyMMdd"); |
|
|
|
String idPrefix = "SH" + LocalDateTimeUtil.format(LocalDateTime.now(), "yyyyMMdd"); |
|
|
|
receiveGoodsMain.setId(SnowFlake.nextId() + ""); |
|
|
|
receiveGoodsMain.setId(SnowFlake.nextId() + ""); |
|
|
|
String receiptNumber=param.getReceiptNumber(); |
|
|
|
String receiptNumber = param.getReceiptNumber(); |
|
|
|
if (StrUtil.isBlank(receiptNumber)){ |
|
|
|
if (StrUtil.isBlank(receiptNumber)) { |
|
|
|
receiptNumber=String.format("%s%03d", idPrefix, redisSerialNumberUtils.generateSerialNumber(idPrefix)); |
|
|
|
receiptNumber = String.format("%s%03d", idPrefix, redisSerialNumberUtils.generateSerialNumber(idPrefix)); |
|
|
|
} |
|
|
|
} |
|
|
|
receiveGoodsMain.setReceiptNumber(receiptNumber); |
|
|
|
receiveGoodsMain.setReceiptNumber(receiptNumber); |
|
|
|
receiveGoodsMain.setCreateId(user.getUserId()); |
|
|
|
receiveGoodsMain.setCreateId(user.getUserId()); |
|
|
|
@ -123,6 +123,7 @@ public class TReceiveGoodsMainServiceImpl extends ServiceImpl<TReceiveGoodsMainM |
|
|
|
receiveGoodsMain.setPackageQuantity(param.getPackageQuantity()); |
|
|
|
receiveGoodsMain.setPackageQuantity(param.getPackageQuantity()); |
|
|
|
receiveGoodsMain.setDeliveryParty(param.getDeliveryParty()); |
|
|
|
receiveGoodsMain.setDeliveryParty(param.getDeliveryParty()); |
|
|
|
receiveGoodsMain.setReceiveTime(param.getReceiveTime()); |
|
|
|
receiveGoodsMain.setReceiveTime(param.getReceiveTime()); |
|
|
|
|
|
|
|
receiveGoodsMain.setSignPersonTime(LocalDateTime.now()); |
|
|
|
receiveGoodsMain.setUpdateId(user.getUserId()); |
|
|
|
receiveGoodsMain.setUpdateId(user.getUserId()); |
|
|
|
receiveGoodsMain.setUpdateTime(LocalDateTime.now()); |
|
|
|
receiveGoodsMain.setUpdateTime(LocalDateTime.now()); |
|
|
|
receiveGoodsMain.setUpdateName(user.getUserName()); |
|
|
|
receiveGoodsMain.setUpdateName(user.getUserName()); |
|
|
|
@ -142,27 +143,27 @@ public class TReceiveGoodsMainServiceImpl extends ServiceImpl<TReceiveGoodsMainM |
|
|
|
} |
|
|
|
} |
|
|
|
this.saveOrUpdate(receiveGoodsMain); |
|
|
|
this.saveOrUpdate(receiveGoodsMain); |
|
|
|
//版本馆直接生成二维码
|
|
|
|
//版本馆直接生成二维码
|
|
|
|
if (mainStatusEnum== ReceiveGoodsMainEnum.MainStatusEnum.LISTING){ |
|
|
|
if (mainStatusEnum == ReceiveGoodsMainEnum.MainStatusEnum.LISTING) { |
|
|
|
//生成二维码
|
|
|
|
//生成二维码
|
|
|
|
ByteArrayOutputStream byteArrayOutputStream = new ByteArrayOutputStream(); |
|
|
|
ByteArrayOutputStream byteArrayOutputStream = new ByteArrayOutputStream(); |
|
|
|
DictionaryDataEntity data = dictionaryDataApi.getByTypeDataCode("SampleLibrary", "xtaddr").getData(); |
|
|
|
DictionaryDataEntity data = dictionaryDataApi.getByTypeDataCode("SampleLibrary", "xtaddr").getData(); |
|
|
|
String systemUrl="http://61.169.37.106:9172/api/file/Image/preview/"; |
|
|
|
String systemUrl = "http://61.169.37.106:9172/api/file/Image/preview/"; |
|
|
|
if (null!=data){ |
|
|
|
if (null != data) { |
|
|
|
systemUrl=data.getDescription(); |
|
|
|
systemUrl = data.getDescription(); |
|
|
|
} |
|
|
|
} |
|
|
|
QrCodeUtil.generate(systemUrl, 1000, 1000,"", byteArrayOutputStream); |
|
|
|
QrCodeUtil.generate(systemUrl, 1000, 1000, "", byteArrayOutputStream); |
|
|
|
MockMultipartFile mockMultipartFile = new MockMultipartFile("上架.png", "上架.png", "text/plain", byteArrayOutputStream.toByteArray()); |
|
|
|
MockMultipartFile mockMultipartFile = new MockMultipartFile("上架.png", "上架.png", "text/plain", byteArrayOutputStream.toByteArray()); |
|
|
|
|
|
|
|
|
|
|
|
FileInfo preview = fileUploadApi.uploadFile(mockMultipartFile, fileApi.getPath(FileTypeConstant.BIVISUALPATH), "preview", "上架.png"); |
|
|
|
FileInfo preview = fileUploadApi.uploadFile(mockMultipartFile, fileApi.getPath(FileTypeConstant.BIVISUALPATH), "preview", "上架.png"); |
|
|
|
this.lambdaUpdate() |
|
|
|
this.lambdaUpdate() |
|
|
|
.set(TReceiveGoodsMain::getListingQrCode, preview.getFilename()) |
|
|
|
.set(TReceiveGoodsMain::getListingQrCode, preview.getFilename()) |
|
|
|
.set(TReceiveGoodsMain::getMainStatus, mainStatusEnum.getCode()) |
|
|
|
.set(TReceiveGoodsMain::getMainStatus, mainStatusEnum.getCode()) |
|
|
|
.set(TReceiveGoodsMain::getMainStatusName, mainStatusEnum.getDescribe()) |
|
|
|
.set(TReceiveGoodsMain::getMainStatusName, mainStatusEnum.getDescribe()) |
|
|
|
.set(TReceiveGoodsMain::getUpdateId, UserProvider.getLoginUserId()) |
|
|
|
.set(TReceiveGoodsMain::getUpdateId, UserProvider.getLoginUserId()) |
|
|
|
.set(TReceiveGoodsMain::getUpdateTime, LocalDateTime.now()) |
|
|
|
.set(TReceiveGoodsMain::getUpdateTime, LocalDateTime.now()) |
|
|
|
.set(TReceiveGoodsMain::getUpdateName, UserProvider.getUser().getUserName()) |
|
|
|
.set(TReceiveGoodsMain::getUpdateName, UserProvider.getUser().getUserName()) |
|
|
|
.eq(TReceiveGoodsMain::getId, param.getId()) |
|
|
|
.eq(TReceiveGoodsMain::getId, param.getId()) |
|
|
|
.update(); |
|
|
|
.update(); |
|
|
|
} |
|
|
|
} |
|
|
|
//todo 保存收货书籍信息
|
|
|
|
//todo 保存收货书籍信息
|
|
|
|
saveReceivingBookInformation(receiveGoodsMain, param); |
|
|
|
saveReceivingBookInformation(receiveGoodsMain, param); |
|
|
|
@ -179,6 +180,9 @@ public class TReceiveGoodsMainServiceImpl extends ServiceImpl<TReceiveGoodsMainM |
|
|
|
} |
|
|
|
} |
|
|
|
List<ReceiveGoodsMainDto.BunchingInfo> bunchingInfoList = param.getBunchingInfoList(); |
|
|
|
List<ReceiveGoodsMainDto.BunchingInfo> bunchingInfoList = param.getBunchingInfoList(); |
|
|
|
Integer quantityReceived = receiveGoodsMain.getQuantityReceived(); |
|
|
|
Integer quantityReceived = receiveGoodsMain.getQuantityReceived(); |
|
|
|
|
|
|
|
if (null == quantityReceived) { |
|
|
|
|
|
|
|
quantityReceived = 0; |
|
|
|
|
|
|
|
} |
|
|
|
final UserInfo user = UserProvider.getUser(); |
|
|
|
final UserInfo user = UserProvider.getUser(); |
|
|
|
//计算签收数量
|
|
|
|
//计算签收数量
|
|
|
|
for (ReceiveGoodsMainDto.BunchingInfo bunchingInfo : bunchingInfoList) { |
|
|
|
for (ReceiveGoodsMainDto.BunchingInfo bunchingInfo : bunchingInfoList) { |
|
|
|
@ -196,9 +200,9 @@ public class TReceiveGoodsMainServiceImpl extends ServiceImpl<TReceiveGoodsMainM |
|
|
|
.eq(TBookGoWhere::getCreateCorpId, receiveGoodsMain.getCreateCorpId()) |
|
|
|
.eq(TBookGoWhere::getCreateCorpId, receiveGoodsMain.getCreateCorpId()) |
|
|
|
//todo 非样书室时根据所属类型及部门id去查询应送数量
|
|
|
|
//todo 非样书室时根据所属类型及部门id去查询应送数量
|
|
|
|
//版本馆根据类型匹配
|
|
|
|
//版本馆根据类型匹配
|
|
|
|
.eq(StrUtil.equals(param.getOrderType(), "2"), TBookGoWhere::getOrderType, param.getOrderType()) |
|
|
|
.eq(!StrUtil.equals(param.getOrderType(), "3"), TBookGoWhere::getOrderType, param.getOrderType()) |
|
|
|
//业务部根据部门id匹配
|
|
|
|
//业务部根据部门id匹配
|
|
|
|
.eq(StrUtil.equals(param.getOrderType(), "1"), TBookGoWhere::getCreateDeptId, receiveGoodsMain.getCreateDeptId()) |
|
|
|
// .eq(StrUtil.equals(param.getOrderType(), "1"), TBookGoWhere::getCreateDeptId, receiveGoodsMain.getCreateDeptId())
|
|
|
|
.eq(TBookGoWhere::getWarehouseEntryFlag, "0") |
|
|
|
.eq(TBookGoWhere::getWarehouseEntryFlag, "0") |
|
|
|
.eq(TBookGoWhere::getType, "0") |
|
|
|
.eq(TBookGoWhere::getType, "0") |
|
|
|
.eq(TBookGoWhere::getDelFlag, "0") |
|
|
|
.eq(TBookGoWhere::getDelFlag, "0") |
|
|
|
@ -239,22 +243,9 @@ public class TReceiveGoodsMainServiceImpl extends ServiceImpl<TReceiveGoodsMainM |
|
|
|
if (StrUtil.isBlank(bookNumber)) { |
|
|
|
if (StrUtil.isBlank(bookNumber)) { |
|
|
|
throw new DataException("请输入图书编号"); |
|
|
|
throw new DataException("请输入图书编号"); |
|
|
|
} |
|
|
|
} |
|
|
|
//查询图书信息
|
|
|
|
|
|
|
|
Optional<TLibrary> bookInfo = libraryService.lambdaQuery() |
|
|
|
|
|
|
|
.eq(TLibrary::getBookNumber, bookNumber) |
|
|
|
|
|
|
|
.list().stream().findFirst(); |
|
|
|
|
|
|
|
if (!bookInfo.isPresent()) { |
|
|
|
|
|
|
|
throw new DataException("未查询到图书信息"); |
|
|
|
|
|
|
|
} |
|
|
|
|
|
|
|
TLibrary library = bookInfo.get(); |
|
|
|
|
|
|
|
ReceiveGoodsMainDto.BunchingInfo bunchingInfo = new ReceiveGoodsMainDto.BunchingInfo(); |
|
|
|
|
|
|
|
bunchingInfo.setBookNumber(bookNumber); |
|
|
|
|
|
|
|
bunchingInfo.setBookName(library.getBookName()); |
|
|
|
|
|
|
|
bunchingInfo.setCoverImage(library.getCoverImage()); |
|
|
|
|
|
|
|
bunchingInfo.setPress(library.getPress()); |
|
|
|
|
|
|
|
bunchingInfo.setPrice(library.getPrice()); |
|
|
|
|
|
|
|
//todo 新增下印册书
|
|
|
|
//todo 新增下印册书
|
|
|
|
return bunchingInfo; |
|
|
|
//查询图书信息
|
|
|
|
|
|
|
|
return libraryService.getBunchingInfoByBookNumber(bookNumber); |
|
|
|
} |
|
|
|
} |
|
|
|
|
|
|
|
|
|
|
|
@Override |
|
|
|
@Override |
|
|
|
@ -298,7 +289,16 @@ public class TReceiveGoodsMainServiceImpl extends ServiceImpl<TReceiveGoodsMainM |
|
|
|
if (orderTypeEnum == ReceiveGoodsMainEnum.OrderTypeEnum.SAMPLE_BOOKSTORE) { |
|
|
|
if (orderTypeEnum == ReceiveGoodsMainEnum.OrderTypeEnum.SAMPLE_BOOKSTORE) { |
|
|
|
param.setUserId(UserProvider.getUser().getUserId()); |
|
|
|
param.setUserId(UserProvider.getUser().getUserId()); |
|
|
|
} else { |
|
|
|
} else { |
|
|
|
param.setCorpId(UserProvider.getUser().getOrganizeId()); |
|
|
|
if (StrUtil.isNotBlank(UserProvider.getUser().getOrganizeId())) { |
|
|
|
|
|
|
|
Optional<OrganizeEntity> deptOptional = organizeService.lambdaQuery() |
|
|
|
|
|
|
|
.eq(OrganizeEntity::getId, UserProvider.getUser().getOrganizeId()) |
|
|
|
|
|
|
|
.eq(OrganizeEntity::getEnabledMark, "1").list().stream().findFirst(); |
|
|
|
|
|
|
|
if (deptOptional.isPresent()) { |
|
|
|
|
|
|
|
OrganizeEntity dept = deptOptional.get(); |
|
|
|
|
|
|
|
OrganizeEntity corp = getCorp(dept); |
|
|
|
|
|
|
|
param.setCorpId(corp.getId()); |
|
|
|
|
|
|
|
} |
|
|
|
|
|
|
|
} |
|
|
|
} |
|
|
|
} |
|
|
|
try { |
|
|
|
try { |
|
|
|
LocalDateTimeUtil.parse(param.getStartTime(), "yyyy-MM-dd HH:mm:ss"); |
|
|
|
LocalDateTimeUtil.parse(param.getStartTime(), "yyyy-MM-dd HH:mm:ss"); |
|
|
|
@ -324,14 +324,26 @@ public class TReceiveGoodsMainServiceImpl extends ServiceImpl<TReceiveGoodsMainM |
|
|
|
boolean exists = bookGoWhereService.lambdaQuery() |
|
|
|
boolean exists = bookGoWhereService.lambdaQuery() |
|
|
|
.eq(TBookGoWhere::getDelFlag, "0") |
|
|
|
.eq(TBookGoWhere::getDelFlag, "0") |
|
|
|
.eq(TBookGoWhere::getType, "1") |
|
|
|
.eq(TBookGoWhere::getType, "1") |
|
|
|
|
|
|
|
.eq(TBookGoWhere::getBookNumber, receiveGoodsBooks.getBookNumber()) |
|
|
|
.eq(TBookGoWhere::getRelationId, receiveGoodsBooks.getId()) |
|
|
|
.eq(TBookGoWhere::getRelationId, receiveGoodsBooks.getId()) |
|
|
|
.exists(); |
|
|
|
.exists(); |
|
|
|
if (exists) { |
|
|
|
if (exists) { |
|
|
|
//查询已有数据
|
|
|
|
//查询已有数据
|
|
|
|
return bookGoWhereService.getStackingInformationByRelationId(receiveGoodsBooks.getId()); |
|
|
|
return bookGoWhereService.getStackingInformationByRelationId(receiveGoodsBooks.getBookNumber(), receiveGoodsBooks.getId()); |
|
|
|
} else { |
|
|
|
} else { |
|
|
|
//查询初始化去向数据
|
|
|
|
if (StrUtil.isNotBlank(UserProvider.getUser().getOrganizeId())) { |
|
|
|
return bookGoWhereService.getStackingInformation(receiveGoodsBooks.getBookNumber(), UserProvider.getUser().getOrganizeId()); |
|
|
|
Optional<OrganizeEntity> deptOptional = organizeService.lambdaQuery() |
|
|
|
|
|
|
|
.eq(OrganizeEntity::getId, UserProvider.getUser().getOrganizeId()) |
|
|
|
|
|
|
|
.eq(OrganizeEntity::getEnabledMark, "1").list().stream().findFirst(); |
|
|
|
|
|
|
|
if (deptOptional.isPresent()) { |
|
|
|
|
|
|
|
OrganizeEntity dept = deptOptional.get(); |
|
|
|
|
|
|
|
OrganizeEntity corp = getCorp(dept); |
|
|
|
|
|
|
|
//查询初始化去向数据
|
|
|
|
|
|
|
|
return bookGoWhereService.getStackingInformation(receiveGoodsBooks.getBookNumber(), corp.getId()); |
|
|
|
|
|
|
|
} |
|
|
|
|
|
|
|
} |
|
|
|
|
|
|
|
return null; |
|
|
|
|
|
|
|
|
|
|
|
} |
|
|
|
} |
|
|
|
//todo 添加已发数
|
|
|
|
//todo 添加已发数
|
|
|
|
} |
|
|
|
} |
|
|
|
@ -355,9 +367,17 @@ public class TReceiveGoodsMainServiceImpl extends ServiceImpl<TReceiveGoodsMainM |
|
|
|
if (null == receiveGoodsBooks) { |
|
|
|
if (null == receiveGoodsBooks) { |
|
|
|
throw new DataException("该图书信息不存在"); |
|
|
|
throw new DataException("该图书信息不存在"); |
|
|
|
} |
|
|
|
} |
|
|
|
|
|
|
|
//校验分堆设置是否已存在,已存在的话直接删除,防止多次提交
|
|
|
|
|
|
|
|
bookGoWhereService.lambdaUpdate() |
|
|
|
|
|
|
|
.eq(TBookGoWhere::getDelFlag, "0") |
|
|
|
|
|
|
|
.eq(TBookGoWhere::getType, "1") |
|
|
|
|
|
|
|
.eq(TBookGoWhere::getBookNumber, receiveGoodsBooks.getBookNumber()) |
|
|
|
|
|
|
|
.eq(TBookGoWhere::getRelationId, receiveGoodsBooks.getId()) |
|
|
|
|
|
|
|
.remove(); |
|
|
|
for (TBookGoWhere bookGoWhere : param.getBookGoWhereList()) { |
|
|
|
for (TBookGoWhere bookGoWhere : param.getBookGoWhereList()) { |
|
|
|
bookGoWhere.setId(SnowFlake.nextId()); |
|
|
|
bookGoWhere.setId(SnowFlake.nextId()); |
|
|
|
bookGoWhere.setCreateTime(LocalDateTime.now()); |
|
|
|
bookGoWhere.setCreateTime(LocalDateTime.now()); |
|
|
|
|
|
|
|
bookGoWhere.setBookNumber(receiveGoodsBooks.getBookNumber()); |
|
|
|
bookGoWhere.setCreateBy(UserProvider.getUser().getUserId()); |
|
|
|
bookGoWhere.setCreateBy(UserProvider.getUser().getUserId()); |
|
|
|
bookGoWhere.setCreateName(UserProvider.getUser().getUserName()); |
|
|
|
bookGoWhere.setCreateName(UserProvider.getUser().getUserName()); |
|
|
|
bookGoWhere.setUpdateTime(LocalDateTime.now()); |
|
|
|
bookGoWhere.setUpdateTime(LocalDateTime.now()); |
|
|
|
@ -384,7 +404,7 @@ public class TReceiveGoodsMainServiceImpl extends ServiceImpl<TReceiveGoodsMainM |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
@Override |
|
|
|
@Override |
|
|
|
@Transactional |
|
|
|
@Transactional(rollbackFor = Exception.class) |
|
|
|
public void saveStackingInformationByReceiveId(ReceiveGoodsMainDto.SaveStackingInformationByReceiveIdParam param) { |
|
|
|
public void saveStackingInformationByReceiveId(ReceiveGoodsMainDto.SaveStackingInformationByReceiveIdParam param) { |
|
|
|
if (StrUtil.isBlank(param.getSaveType())) { |
|
|
|
if (StrUtil.isBlank(param.getSaveType())) { |
|
|
|
throw new DataException("请选择保存类型"); |
|
|
|
throw new DataException("请选择保存类型"); |
|
|
|
@ -410,6 +430,50 @@ public class TReceiveGoodsMainServiceImpl extends ServiceImpl<TReceiveGoodsMainM |
|
|
|
.update(); |
|
|
|
.update(); |
|
|
|
return; |
|
|
|
return; |
|
|
|
} |
|
|
|
} |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
String corpId = ""; |
|
|
|
|
|
|
|
if (StrUtil.isNotBlank(UserProvider.getUser().getOrganizeId())) { |
|
|
|
|
|
|
|
Optional<OrganizeEntity> deptOptional = organizeService.lambdaQuery() |
|
|
|
|
|
|
|
.eq(OrganizeEntity::getId, UserProvider.getUser().getOrganizeId()) |
|
|
|
|
|
|
|
.eq(OrganizeEntity::getEnabledMark, "1").list().stream().findFirst(); |
|
|
|
|
|
|
|
if (deptOptional.isPresent()) { |
|
|
|
|
|
|
|
OrganizeEntity dept = deptOptional.get(); |
|
|
|
|
|
|
|
OrganizeEntity corp = getCorp(dept); |
|
|
|
|
|
|
|
//查询初始化去向数据
|
|
|
|
|
|
|
|
corpId = corp.getId(); |
|
|
|
|
|
|
|
} |
|
|
|
|
|
|
|
} |
|
|
|
|
|
|
|
//确定时对所有未保存的分堆信息进行保存(即无需分堆的图书)
|
|
|
|
|
|
|
|
//校验该选书是否进行过保存分堆信息
|
|
|
|
|
|
|
|
final String organizeId = corpId; |
|
|
|
|
|
|
|
//先查询已保存的图书列表
|
|
|
|
|
|
|
|
// CompletableFuture.runAsync(() -> {
|
|
|
|
|
|
|
|
for (TReceiveGoodsBooks tReceiveGoodsBooks : receiveGoodsBooksService.lambdaQuery() |
|
|
|
|
|
|
|
.eq(TReceiveGoodsBooks::getRelationId, tReceiveGoodsMain.getId()) |
|
|
|
|
|
|
|
.eq(TReceiveGoodsBooks::getDelFlag, "0") |
|
|
|
|
|
|
|
.list()) { |
|
|
|
|
|
|
|
boolean exists = bookGoWhereService.lambdaQuery() |
|
|
|
|
|
|
|
.eq(TBookGoWhere::getDelFlag, "0") |
|
|
|
|
|
|
|
.eq(TBookGoWhere::getType, "1") |
|
|
|
|
|
|
|
.eq(TBookGoWhere::getBookNumber, tReceiveGoodsBooks.getBookNumber()) |
|
|
|
|
|
|
|
.eq(TBookGoWhere::getRelationId, tReceiveGoodsBooks.getId()) |
|
|
|
|
|
|
|
.exists(); |
|
|
|
|
|
|
|
if (exists) { |
|
|
|
|
|
|
|
continue; |
|
|
|
|
|
|
|
} |
|
|
|
|
|
|
|
List<ReceiveGoodsMainDto.TBookGoWhereEntity> stackingInformation = bookGoWhereService.getStackingInformation(tReceiveGoodsBooks.getBookNumber(), organizeId); |
|
|
|
|
|
|
|
ReceiveGoodsMainDto.SaveStackingInformationParam saveParam = new ReceiveGoodsMainDto.SaveStackingInformationParam(); |
|
|
|
|
|
|
|
saveParam.setOrderType(param.getOrderType()); |
|
|
|
|
|
|
|
saveParam.setId(tReceiveGoodsBooks.getId().toString()); |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
List<TBookGoWhere> stackingList = new ArrayList<>(); |
|
|
|
|
|
|
|
for (ReceiveGoodsMainDto.TBookGoWhereEntity tBookGoWhereEntity : stackingInformation) { |
|
|
|
|
|
|
|
stackingList.add(BeanUtil.copyProperties(tBookGoWhereEntity, TBookGoWhere.class)); |
|
|
|
|
|
|
|
} |
|
|
|
|
|
|
|
saveParam.setBookGoWhereList(stackingList); |
|
|
|
|
|
|
|
this.saveStackingInformation(saveParam); |
|
|
|
|
|
|
|
} |
|
|
|
|
|
|
|
// });
|
|
|
|
//以下逻辑全是确定
|
|
|
|
//以下逻辑全是确定
|
|
|
|
ReceiveGoodsMainEnum.MainStatusEnum mainStatusEnum = ReceiveGoodsMainEnum.MainStatusEnum.LISTING; |
|
|
|
ReceiveGoodsMainEnum.MainStatusEnum mainStatusEnum = ReceiveGoodsMainEnum.MainStatusEnum.LISTING; |
|
|
|
//查询图书编号列表
|
|
|
|
//查询图书编号列表
|
|
|
|
@ -418,35 +482,6 @@ public class TReceiveGoodsMainServiceImpl extends ServiceImpl<TReceiveGoodsMainM |
|
|
|
.eq(TReceiveGoodsBooks::getDelFlag, "0") |
|
|
|
.eq(TReceiveGoodsBooks::getDelFlag, "0") |
|
|
|
.list() |
|
|
|
.list() |
|
|
|
.stream().map(TReceiveGoodsBooks::getBookNumber).collect(Collectors.toSet()); |
|
|
|
.stream().map(TReceiveGoodsBooks::getBookNumber).collect(Collectors.toSet()); |
|
|
|
//生成版本馆/业务部收货单
|
|
|
|
|
|
|
|
ReceiveGoodsMainDto.NewReceiptParam newReceiptParam=new ReceiveGoodsMainDto.NewReceiptParam(); |
|
|
|
|
|
|
|
newReceiptParam.setReceiptNumber(tReceiveGoodsMain.getReceiptNumber()); |
|
|
|
|
|
|
|
newReceiptParam.setOrderType(param.getOrderType()); |
|
|
|
|
|
|
|
newReceiptParam.setPackageQuantity(tReceiveGoodsMain.getPackageQuantity()); |
|
|
|
|
|
|
|
newReceiptParam.setDeliveryParty(tReceiveGoodsMain.getDeliveryParty()); |
|
|
|
|
|
|
|
newReceiptParam.setReceiveTime(tReceiveGoodsMain.getReceiveTime()); |
|
|
|
|
|
|
|
List<ReceiveGoodsMainDto.BunchingInfo> bunchingInfoList=new ArrayList<>(); |
|
|
|
|
|
|
|
//查询图书编号
|
|
|
|
|
|
|
|
Set<String> queryBookInfoNumberList = bookGoWhereService.lambdaQuery() |
|
|
|
|
|
|
|
.eq(TBookGoWhere::getType, "0") |
|
|
|
|
|
|
|
.eq(TBookGoWhere::getDelFlag, "0") |
|
|
|
|
|
|
|
.eq(TBookGoWhere::getWarehouseEntryFlag, "0") |
|
|
|
|
|
|
|
.in(TBookGoWhere::getBookNumber, bookNumberList) |
|
|
|
|
|
|
|
.eq(TBookGoWhere::getCreateCorpId, UserProvider.getUser().getOrganizeId()) |
|
|
|
|
|
|
|
.eq(TBookGoWhere::getOrderType, orderTypeEnum.getCode()) |
|
|
|
|
|
|
|
.list().stream().map(TBookGoWhere::getBookNumber).collect(Collectors.toSet()); |
|
|
|
|
|
|
|
List<TLibrary> libraryList = libraryService.lambdaQuery() |
|
|
|
|
|
|
|
.in(TLibrary::getBookNumber, queryBookInfoNumberList) |
|
|
|
|
|
|
|
.list(); |
|
|
|
|
|
|
|
//创建收货单
|
|
|
|
|
|
|
|
if (CollUtil.isNotEmpty(libraryList)){ |
|
|
|
|
|
|
|
for (TLibrary tLibrary : libraryList) { |
|
|
|
|
|
|
|
bunchingInfoList.add(BeanUtil.copyProperties(tLibrary,ReceiveGoodsMainDto.BunchingInfo.class)); |
|
|
|
|
|
|
|
} |
|
|
|
|
|
|
|
newReceiptParam.setBunchingInfoList(bunchingInfoList); |
|
|
|
|
|
|
|
this.newReceipt(newReceiptParam); |
|
|
|
|
|
|
|
} |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
if (CollUtil.isNotEmpty(bookNumberList)) { |
|
|
|
if (CollUtil.isNotEmpty(bookNumberList)) { |
|
|
|
//修改图书去向 即之后样书室新建后进行分堆不会再查到老数据
|
|
|
|
//修改图书去向 即之后样书室新建后进行分堆不会再查到老数据
|
|
|
|
bookGoWhereService.lambdaUpdate() |
|
|
|
bookGoWhereService.lambdaUpdate() |
|
|
|
@ -454,20 +489,74 @@ public class TReceiveGoodsMainServiceImpl extends ServiceImpl<TReceiveGoodsMainM |
|
|
|
.set(TBookGoWhere::getWarehouseEntryFlag, "1") |
|
|
|
.set(TBookGoWhere::getWarehouseEntryFlag, "1") |
|
|
|
.eq(TBookGoWhere::getType, "0") |
|
|
|
.eq(TBookGoWhere::getType, "0") |
|
|
|
.eq(TBookGoWhere::getDelFlag, "0") |
|
|
|
.eq(TBookGoWhere::getDelFlag, "0") |
|
|
|
.eq(TBookGoWhere::getWarehouseEntryFlag,"0") |
|
|
|
.eq(TBookGoWhere::getWarehouseEntryFlag, "0") |
|
|
|
.eq(TBookGoWhere::getCreateCorpId, UserProvider.getUser().getOrganizeId()) |
|
|
|
.eq(TBookGoWhere::getCreateCorpId, corpId) |
|
|
|
.in(TBookGoWhere::getBookNumber, bookNumberList) |
|
|
|
.in(TBookGoWhere::getBookNumber, bookNumberList) |
|
|
|
.eq(TBookGoWhere::getOrderType,orderTypeEnum.getCode()) |
|
|
|
.eq(TBookGoWhere::getOrderType, orderTypeEnum.getCode()) |
|
|
|
.update(); |
|
|
|
.update(); |
|
|
|
} |
|
|
|
} |
|
|
|
|
|
|
|
//查询是否具有送往版本馆及业务部的数据,有的话就创建收货单
|
|
|
|
|
|
|
|
Set<String> otherSH = bookGoWhereService.lambdaQuery() |
|
|
|
|
|
|
|
.eq(TBookGoWhere::getType, "0") |
|
|
|
|
|
|
|
.eq(TBookGoWhere::getDelFlag, "0") |
|
|
|
|
|
|
|
.eq(TBookGoWhere::getWarehouseEntryFlag, "0") |
|
|
|
|
|
|
|
.in(TBookGoWhere::getTargetName, Arrays.asList(ReceiveGoodsMainEnum.OrderTypeEnum.BUSINESS_DEPARTMENT.getDescribe(), ReceiveGoodsMainEnum.OrderTypeEnum.VERSION_LIBRARY.getDescribe())) |
|
|
|
|
|
|
|
.in(TBookGoWhere::getBookNumber, bookNumberList) |
|
|
|
|
|
|
|
.eq(TBookGoWhere::getCreateCorpId, corpId) |
|
|
|
|
|
|
|
.list().stream().map(TBookGoWhere::getTargetName).collect(Collectors.toSet()); |
|
|
|
|
|
|
|
if (CollUtil.isNotEmpty(otherSH)) { |
|
|
|
|
|
|
|
for (String sh : otherSH) { |
|
|
|
|
|
|
|
String orderType =""; |
|
|
|
|
|
|
|
if (StrUtil.equals(ReceiveGoodsMainEnum.OrderTypeEnum.BUSINESS_DEPARTMENT.getDescribe(),sh)){ |
|
|
|
|
|
|
|
orderType=ReceiveGoodsMainEnum.OrderTypeEnum.BUSINESS_DEPARTMENT.getCode(); |
|
|
|
|
|
|
|
} |
|
|
|
|
|
|
|
if (StrUtil.equals(ReceiveGoodsMainEnum.OrderTypeEnum.VERSION_LIBRARY.getDescribe(),sh)){ |
|
|
|
|
|
|
|
orderType=ReceiveGoodsMainEnum.OrderTypeEnum.VERSION_LIBRARY.getCode(); |
|
|
|
|
|
|
|
} |
|
|
|
|
|
|
|
if (StrUtil.isBlank(orderType)){ |
|
|
|
|
|
|
|
continue; |
|
|
|
|
|
|
|
} |
|
|
|
|
|
|
|
//生成版本馆/业务部收货单
|
|
|
|
|
|
|
|
ReceiveGoodsMainDto.NewReceiptParam newReceiptParam = new ReceiveGoodsMainDto.NewReceiptParam(); |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
newReceiptParam.setOrderType(orderType); |
|
|
|
|
|
|
|
newReceiptParam.setReceiptNumber(tReceiveGoodsMain.getReceiptNumber()); |
|
|
|
|
|
|
|
newReceiptParam.setPackageQuantity(tReceiveGoodsMain.getPackageQuantity()); |
|
|
|
|
|
|
|
newReceiptParam.setDeliveryParty(tReceiveGoodsMain.getDeliveryParty()); |
|
|
|
|
|
|
|
newReceiptParam.setReceiveTime(tReceiveGoodsMain.getReceiveTime()); |
|
|
|
|
|
|
|
newReceiptParam.setSaveType("1"); |
|
|
|
|
|
|
|
newReceiptParam.setPackageSituation(tReceiveGoodsMain.getPackageSituation()); |
|
|
|
|
|
|
|
List<ReceiveGoodsMainDto.BunchingInfo> bunchingInfoList = new ArrayList<>(); |
|
|
|
|
|
|
|
//查询图书编号
|
|
|
|
|
|
|
|
Set<String> queryBookInfoNumberList = bookGoWhereService.lambdaQuery() |
|
|
|
|
|
|
|
.eq(TBookGoWhere::getType, "0") |
|
|
|
|
|
|
|
.eq(TBookGoWhere::getDelFlag, "0") |
|
|
|
|
|
|
|
.eq(TBookGoWhere::getWarehouseEntryFlag, "0") |
|
|
|
|
|
|
|
// .in(TBookGoWhere::getTargetName, Arrays.asList(ReceiveGoodsMainEnum.OrderTypeEnum.BUSINESS_DEPARTMENT.getDescribe(), ReceiveGoodsMainEnum.OrderTypeEnum.VERSION_LIBRARY.getDescribe()))
|
|
|
|
|
|
|
|
.in(TBookGoWhere::getBookNumber, bookNumberList) |
|
|
|
|
|
|
|
.eq(TBookGoWhere::getCreateCorpId, corpId) |
|
|
|
|
|
|
|
.eq(TBookGoWhere::getOrderType, orderType) |
|
|
|
|
|
|
|
.list().stream().map(TBookGoWhere::getBookNumber).collect(Collectors.toSet()); |
|
|
|
|
|
|
|
List<TLibrary> libraryList = libraryService.getListByBookNumberList(queryBookInfoNumberList); |
|
|
|
|
|
|
|
//创建收货单
|
|
|
|
|
|
|
|
if (CollUtil.isNotEmpty(libraryList)) { |
|
|
|
|
|
|
|
for (TLibrary tLibrary : libraryList) { |
|
|
|
|
|
|
|
bunchingInfoList.add(BeanUtil.copyProperties(tLibrary, ReceiveGoodsMainDto.BunchingInfo.class)); |
|
|
|
|
|
|
|
} |
|
|
|
|
|
|
|
newReceiptParam.setBunchingInfoList(bunchingInfoList); |
|
|
|
|
|
|
|
this.newReceipt(newReceiptParam); |
|
|
|
|
|
|
|
} |
|
|
|
|
|
|
|
} |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
} |
|
|
|
//生成二维码
|
|
|
|
//生成二维码
|
|
|
|
ByteArrayOutputStream byteArrayOutputStream = new ByteArrayOutputStream(); |
|
|
|
ByteArrayOutputStream byteArrayOutputStream = new ByteArrayOutputStream(); |
|
|
|
DictionaryDataEntity data = dictionaryDataApi.getByTypeDataCode("SampleLibrary", "xtaddr").getData(); |
|
|
|
DictionaryDataEntity data = dictionaryDataApi.getByTypeDataCode("SampleLibrary", "xtaddr").getData(); |
|
|
|
String systemUrl="http://61.169.37.106:9172/api/file/Image/preview/"; |
|
|
|
String systemUrl = "http://61.169.37.106:9172/api/file/Image/preview/"; |
|
|
|
if (null!=data){ |
|
|
|
if (null != data) { |
|
|
|
systemUrl=data.getDescription(); |
|
|
|
systemUrl = data.getDescription(); |
|
|
|
} |
|
|
|
} |
|
|
|
QrCodeUtil.generate(systemUrl, 1000, 1000,"", byteArrayOutputStream); |
|
|
|
QrCodeUtil.generate(systemUrl, 1000, 1000, "", byteArrayOutputStream); |
|
|
|
MockMultipartFile mockMultipartFile = new MockMultipartFile("上架.png", "上架.png", "text/plain", byteArrayOutputStream.toByteArray()); |
|
|
|
MockMultipartFile mockMultipartFile = new MockMultipartFile("上架.png", "上架.png", "text/plain", byteArrayOutputStream.toByteArray()); |
|
|
|
|
|
|
|
|
|
|
|
FileInfo preview = fileUploadApi.uploadFile(mockMultipartFile, fileApi.getPath(FileTypeConstant.BIVISUALPATH), "preview", "上架.png"); |
|
|
|
FileInfo preview = fileUploadApi.uploadFile(mockMultipartFile, fileApi.getPath(FileTypeConstant.BIVISUALPATH), "preview", "上架.png"); |
|
|
|
|