src/main/java/com/ruoyi/approve/service/impl/ApproveNodeServiceImpl.java
@@ -23,7 +23,14 @@ import com.ruoyi.project.system.service.ISysNoticeService; import com.ruoyi.purchase.mapper.PurchaseLedgerMapper; import com.ruoyi.purchase.pojo.PurchaseLedger; import com.ruoyi.purchase.service.impl.PurchaseLedgerServiceImpl; import com.ruoyi.quality.mapper.QualityInspectMapper; import com.ruoyi.quality.mapper.QualityInspectParamMapper; import com.ruoyi.quality.mapper.QualityTestStandardMapper; import com.ruoyi.quality.mapper.QualityTestStandardParamMapper; import com.ruoyi.quality.pojo.QualityInspect; import com.ruoyi.quality.pojo.QualityInspectParam; import com.ruoyi.quality.pojo.QualityTestStandard; import com.ruoyi.quality.pojo.QualityTestStandardParam; import com.ruoyi.sales.mapper.CommonFileMapper; import com.ruoyi.sales.mapper.SalesLedgerProductMapper; import com.ruoyi.sales.mapper.SalesQuotationMapper; @@ -61,7 +68,10 @@ private final CommonFileServiceImpl commonFileService; private final StockUtils stockUtils; private final SalesLedgerProductMapper salesLedgerProductMapper; private final PurchaseLedgerServiceImpl purchaseLedgerServiceImpl; private final QualityInspectMapper qualityInspectMapper; private final QualityTestStandardMapper qualityTestStandardMapper; private final QualityTestStandardParamMapper qualityTestStandardParamMapper; private final QualityInspectParamMapper qualityInspectParamMapper; public ApproveProcess getApproveById(String id) { @@ -182,7 +192,7 @@ for (SalesLedgerProduct salesLedgerProduct : salesLedgerProducts) { // 质检 if (salesLedgerProduct.getIsChecked()) { purchaseLedgerServiceImpl.addQualityInspect(purchaseLedger, salesLedgerProduct); addQualityInspect(purchaseLedger, salesLedgerProduct); } else { //直接入库 stockUtils.addStock(salesLedgerProduct.getProductModelId(), salesLedgerProduct.getQuantity(), StockInQualifiedRecordTypeEnum.PURCHASE_STOCK_IN.getCode(), purchaseLedger.getId()); @@ -310,4 +320,32 @@ return null; } private void addQualityInspect(PurchaseLedger purchaseLedger, SalesLedgerProduct saleProduct) { QualityInspect qualityInspect = new QualityInspect(); qualityInspect.setInspectType(0); qualityInspect.setSupplier(purchaseLedger.getSupplierName()); qualityInspect.setPurchaseLedgerId(purchaseLedger.getId()); qualityInspect.setProductId(saleProduct.getProductId()); qualityInspect.setProductName(saleProduct.getProductCategory()); qualityInspect.setModel(saleProduct.getSpecificationModel()); qualityInspect.setProductModelId(saleProduct.getProductModelId()); qualityInspect.setUnit(saleProduct.getUnit()); qualityInspect.setQuantity(saleProduct.getQuantity()); qualityInspectMapper.insert(qualityInspect); List<QualityTestStandard> qualityTestStandard = qualityTestStandardMapper.getQualityTestStandardByProductId(saleProduct.getProductId(), 0,null); if (qualityTestStandard.size()>0){ qualityInspect.setTestStandardId(qualityTestStandard.get(0).getId()); qualityInspectMapper.updateById(qualityInspect); qualityTestStandardParamMapper.selectList(Wrappers.<QualityTestStandardParam>lambdaQuery() .eq(QualityTestStandardParam::getTestStandardId,qualityTestStandard.get(0).getId())) .forEach(qualityTestStandardParam -> { QualityInspectParam param = new QualityInspectParam(); com.ruoyi.common.utils.bean.BeanUtils.copyProperties(qualityTestStandardParam, param); param.setId(null); param.setInspectId(qualityInspect.getId()); qualityInspectParamMapper.insert(param); }); } } } src/main/java/com/ruoyi/basic/service/impl/CustomerFollowUpFileServiceImpl.java
@@ -2,15 +2,14 @@ import cn.hutool.core.collection.CollUtil; import cn.hutool.core.util.StrUtil; import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper; import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl; import com.google.common.collect.Lists; import com.ruoyi.basic.mapper.CustomerFollowUpFileMapper; import com.ruoyi.basic.pojo.CustomerFollowUpFile; import com.ruoyi.basic.service.CustomerFollowUpFileService; import com.ruoyi.basic.service.CustomerFollowUpService; import com.ruoyi.common.vo.SimpleFileVo; import lombok.RequiredArgsConstructor; import org.springframework.context.annotation.Lazy; import org.springframework.stereotype.Service; import java.util.*; @@ -31,9 +30,7 @@ @RequiredArgsConstructor public class CustomerFollowUpFileServiceImpl extends ServiceImpl<CustomerFollowUpFileMapper, CustomerFollowUpFile> implements CustomerFollowUpFileService { @Lazy private final CustomerFollowUpService customerFollowUpService; private final CustomerFollowUpFileMapper customerFollowUpFileMapper; @Override public <T> void fillAttachment(List<T> list, Function<T, String> getAttachmentIds, BiConsumer<T, List<SimpleFileVo>> setAttachmentList) { @@ -50,7 +47,7 @@ List<CustomerFollowUpFile> followUpFilesByIds = new ArrayList<>(); Lists.partition(Lists.newArrayList(ids), 999).forEach(it -> { followUpFilesByIds.addAll( customerFollowUpService.getFollowUpFilesByIds(it) getFollowUpFilesByIds(it) ); }); if (CollUtil.isEmpty(followUpFilesByIds)) { @@ -72,4 +69,15 @@ } }); } private List<CustomerFollowUpFile> getFollowUpFilesByIds(Collection<Long> fileIds) { if (fileIds == null || fileIds.isEmpty()) { return new ArrayList<>(0); } LambdaQueryWrapper<CustomerFollowUpFile> queryWrapper = new LambdaQueryWrapper<>(); queryWrapper.in(CustomerFollowUpFile::getId, fileIds) .select(CustomerFollowUpFile::getId, CustomerFollowUpFile::getFileUrl, CustomerFollowUpFile::getFileName); return customerFollowUpFileMapper.selectList(queryWrapper); } } src/main/java/com/ruoyi/basic/service/impl/CustomerPrivateServiceImpl.java
@@ -49,7 +49,6 @@ private final SalesLedgerMapper salesLedgerMapper; private final CustomerPrivateMapper customerPrivateMapper; private final CustomerPrivateService customerPrivateService; @Override @@ -89,7 +88,7 @@ @Override public R importData(MultipartFile file) { try { List<CustomerPrivate> existingList = customerPrivateService.list(); List<CustomerPrivate> existingList = customerPrivateMapper.selectList(null); java.util.Set<String> existingCustomerNames = existingList.stream() .map(CustomerPrivate::getCustomerName) .collect(Collectors.toSet()); src/main/java/com/ruoyi/basic/service/impl/ReturnVisitReminderService.java
@@ -1,7 +1,7 @@ package com.ruoyi.basic.service.impl; import com.ruoyi.basic.mapper.CustomerReturnVisitMapper; import com.ruoyi.basic.pojo.CustomerReturnVisit; import com.ruoyi.basic.service.CustomerReturnVisitService; import com.ruoyi.framework.redis.RedisCache; import lombok.RequiredArgsConstructor; import lombok.extern.slf4j.Slf4j; @@ -27,11 +27,11 @@ private final RedisCache redisCache; private final CustomerReturnVisitService customerReturnVisitService; private final CustomerReturnVisitMapper customerReturnVisitMapper; @SuppressWarnings("unchecked") public void scheduleReminder(Long returnVisitId) { CustomerReturnVisit returnVisit = customerReturnVisitService.getById(returnVisitId); CustomerReturnVisit returnVisit = customerReturnVisitMapper.selectById(returnVisitId); if (returnVisit == null || returnVisit.getIsEnabled() == 0) { return; } src/main/java/com/ruoyi/project/common/CaptchaController.java
@@ -10,7 +10,7 @@ import com.ruoyi.project.system.service.ISysConfigService; import jakarta.annotation.Resource; import jakarta.servlet.http.HttpServletResponse; import lombok.AllArgsConstructor; import lombok.RequiredArgsConstructor; import org.springframework.beans.factory.annotation.Value; import org.springframework.util.FastByteArrayOutputStream; import org.springframework.web.bind.annotation.GetMapping; @@ -27,7 +27,7 @@ * @author ruoyi */ @RestController @AllArgsConstructor @RequiredArgsConstructor public class CaptchaController { @Resource(name = "captchaProducer") @@ -36,13 +36,13 @@ @Resource(name = "captchaProducerMath") private Producer captchaProducerMath; private RedisCache redisCache; private final RedisCache redisCache; // 验证码类型 @Value("${ruoyi.captchaType}") private String captchaType; private ISysConfigService configService; private final ISysConfigService configService; /** * 生成验证码 src/main/java/com/ruoyi/projectManagement/service/impl/PlanServiceImpl.java
@@ -16,6 +16,7 @@ import com.ruoyi.projectManagement.vo.*; import lombok.RequiredArgsConstructor; import org.jetbrains.annotations.Nullable; import org.springframework.beans.factory.annotation.Autowired; import org.springframework.context.annotation.Lazy; import org.springframework.stereotype.Service; import org.springframework.transaction.annotation.Transactional; @@ -41,7 +42,8 @@ private final PlanNodeMapper planNodeMapper; @Lazy private final PlanService planService; @Autowired private PlanService planService; @Override @Transactional(rollbackFor = Exception.class) src/main/java/com/ruoyi/projectManagement/service/impl/handle/InfoStageHandleService.java
@@ -17,6 +17,7 @@ import com.ruoyi.projectManagement.vo.SaveInfoStageVo; import jakarta.validation.constraints.NotNull; import lombok.RequiredArgsConstructor; import org.springframework.beans.factory.annotation.Autowired; import org.springframework.context.annotation.Lazy; import org.springframework.stereotype.Component; import org.springframework.transaction.annotation.Transactional; @@ -37,7 +38,8 @@ private final InfoHandleService infoHandleService; private final CustomerFollowUpFileService customerFollowUpFileService; @Lazy private final InfoStageHandleService infoStageHandleService; @Autowired private InfoStageHandleService infoStageHandleService; @Transactional public void save(@NotNull SaveInfoStageVo saveInfoStageVo) { src/main/java/com/ruoyi/purchase/service/IPurchaseLedgerService.java
@@ -7,9 +7,9 @@ import com.ruoyi.purchase.dto.PurchaseLedgerDto; import com.ruoyi.purchase.pojo.PurchaseLedger; import com.ruoyi.sales.pojo.InvoiceRegistrationProduct; import com.ruoyi.sales.pojo.SalesLedgerProduct; import org.springframework.web.multipart.MultipartFile; import java.io.IOException; import java.util.List; /** @@ -24,6 +24,8 @@ int addOrEditPurchase(PurchaseLedgerDto purchaseLedgerDto) throws Exception; void addQualityInspect(PurchaseLedger purchaseLedger, SalesLedgerProduct saleProduct); int deletePurchaseLedgerByIds(Long[] ids); PurchaseLedgerDto getPurchaseById(PurchaseLedgerDto purchaseLedgerDto);