From 4fedbed9949c6160dcfa216d6660bd3c625f7bce Mon Sep 17 00:00:00 2001 From: liding <756868258@qq.com> Date: 星期三, 25 六月 2025 11:49:55 +0800 Subject: [PATCH] 优化 --- main-business/src/main/java/com/ruoyi/business/controller/SalesRecordController.java | 4 main-business/src/main/java/com/ruoyi/business/entity/SalesRecord.java | 5 - main-business/src/main/java/com/ruoyi/business/service/impl/PendingInventoryServiceImpl.java | 32 +++++++ main-business/src/main/java/com/ruoyi/business/service/impl/ArchiveServiceImpl.java | 1 main-business/src/main/java/com/ruoyi/business/dto/SalesRecordDto.java | 2 main-business/src/main/java/com/ruoyi/business/service/impl/InspectionTaskServiceImpl.java | 1 main-business/src/main/java/com/ruoyi/business/service/impl/ProductionMasterServiceImpl.java | 1 main-business/src/main/java/com/ruoyi/business/service/impl/OfficialInventoryServiceImpl.java | 28 +++++++ main-business/src/main/java/com/ruoyi/business/service/impl/SalesRecordServiceImpl.java | 65 +++++++++++++++- /dev/null | 32 -------- main-business/src/main/java/com/ruoyi/business/dto/OfficialInventoryDto.java | 5 + main-business/src/main/java/com/ruoyi/business/dto/PendingInventoryDto.java | 5 + main-business/src/main/java/com/ruoyi/business/service/SalesRecordService.java | 4 main-business/src/main/java/com/ruoyi/business/vo/OfficialInventoryVo.java | 1 main-business/src/main/resources/db/migration/postgresql/V20250611160300__create_table_sales_record.sql | 2 15 files changed, 137 insertions(+), 51 deletions(-) diff --git a/main-business/src/main/java/com/ruoyi/business/controller/FileController.java b/main-business/src/main/java/com/ruoyi/business/controller/FileController.java deleted file mode 100644 index 1282a8c..0000000 --- a/main-business/src/main/java/com/ruoyi/business/controller/FileController.java +++ /dev/null @@ -1,21 +0,0 @@ -package com.ruoyi.business.controller; - -import org.springframework.web.bind.annotation.RequestMapping; -import lombok.AllArgsConstructor; - import org.springframework.web.bind.annotation.RestController; - -/** -* <p> - * 涓婁紶鏂囦欢鐨勫熀鏈俊鎭� 鍓嶇鎺у埗鍣� - * </p> -* -* @author ruoyi -* @since 2025-06-10 -*/ - -@RestController -@AllArgsConstructor -@RequestMapping("/business/file") - public class FileController { - - } diff --git a/main-business/src/main/java/com/ruoyi/business/controller/SalesRecordController.java b/main-business/src/main/java/com/ruoyi/business/controller/SalesRecordController.java index 753ee0e..75f43aa 100644 --- a/main-business/src/main/java/com/ruoyi/business/controller/SalesRecordController.java +++ b/main-business/src/main/java/com/ruoyi/business/controller/SalesRecordController.java @@ -29,8 +29,8 @@ * 閿�鍞褰曡〃鏌ヨ */ @GetMapping("/list") - public R<IPage<SalesRecord>> list(Page page, SalesRecordDto salesRecordDto) { - IPage<SalesRecord> list = salesRecordService.selectSalesRecordList(page,salesRecordDto); + public R<IPage<SalesRecordDto>> list(Page<SalesRecord> page, SalesRecordDto salesRecordDto) { + IPage<SalesRecordDto> list = salesRecordService.selectSalesRecordList(page,salesRecordDto); return R.ok(list); } diff --git a/main-business/src/main/java/com/ruoyi/business/dto/OfficialInventoryDto.java b/main-business/src/main/java/com/ruoyi/business/dto/OfficialInventoryDto.java index 066257f..f21ce91 100644 --- a/main-business/src/main/java/com/ruoyi/business/dto/OfficialInventoryDto.java +++ b/main-business/src/main/java/com/ruoyi/business/dto/OfficialInventoryDto.java @@ -13,4 +13,9 @@ private List<Long> ids; + /** + * 鐓ょ + */ + private String coal; + } diff --git a/main-business/src/main/java/com/ruoyi/business/dto/PendingInventoryDto.java b/main-business/src/main/java/com/ruoyi/business/dto/PendingInventoryDto.java index e26af63..663d58c 100644 --- a/main-business/src/main/java/com/ruoyi/business/dto/PendingInventoryDto.java +++ b/main-business/src/main/java/com/ruoyi/business/dto/PendingInventoryDto.java @@ -38,4 +38,9 @@ * 瀛楁鍚� */ private Integer type; + + /** + * 鐓ょ + */ + private String coal; } diff --git a/main-business/src/main/java/com/ruoyi/business/dto/SalesRecordDto.java b/main-business/src/main/java/com/ruoyi/business/dto/SalesRecordDto.java index c32a713..32560a2 100644 --- a/main-business/src/main/java/com/ruoyi/business/dto/SalesRecordDto.java +++ b/main-business/src/main/java/com/ruoyi/business/dto/SalesRecordDto.java @@ -5,4 +5,6 @@ @Data public class SalesRecordDto extends SalesRecord { + + private String coal; } diff --git a/main-business/src/main/java/com/ruoyi/business/entity/File.java b/main-business/src/main/java/com/ruoyi/business/entity/File.java deleted file mode 100644 index 6b64336..0000000 --- a/main-business/src/main/java/com/ruoyi/business/entity/File.java +++ /dev/null @@ -1,59 +0,0 @@ -package com.ruoyi.business.entity; - -import com.baomidou.mybatisplus.annotation.*; -import lombok.Data; -import com.ruoyi.common.core.domain.MyBaseEntity; - -/** - * 涓婁紶鏂囦欢鐨勫熀鏈俊鎭� 瀹炰綋绫� - * - * @author ruoyi - * @date 2025-06-10 - */ -@Data -@TableName("file") -public class File extends MyBaseEntity { - - private static final long serialVersionUID = 1L; - - /** - * 涓婚敭ID - */ - @TableId(value = "id", type = IdType.AUTO) - private Long id; - /** - * 鍏宠仈鐨勬。妗圛D锛屽閿紩鐢� archive.id - */ - @TableField(value = "archive_id") - private Long archiveId; - /** - * 鍘熷鏂囦欢鍚嶏紙鐢ㄦ埛涓婁紶鏃剁殑鍚嶇О锛� - */ - @TableField(value = "original_name") - private String originalName; - /** - * 棰勮鍦板潃 - */ - @TableField(value = "preview_url") - private String previewUrl; - /** - * 绯荤粺瀛樺偍鐨勫敮涓�鏂囦欢鍚� - */ - @TableField(value = "file_name") - private String fileName; - /** - * 鏂囦欢鍦ㄦ湇鍔″櫒涓婄殑瀛樺偍璺緞鎴栬闂甎RL - */ - @TableField(value = "file_path") - private String filePath; - /** - * 鏂囦欢MIME绫诲瀷锛屼緥濡� image/png銆乤pplication/pdf - */ - @TableField(value = "file_type") - private String fileType; - /** - * 鏂囦欢澶у皬锛屽崟浣嶄负瀛楄妭 - */ - @TableField(value = "file_size") - private String fileSize; -} \ No newline at end of file diff --git a/main-business/src/main/java/com/ruoyi/business/entity/SalesRecord.java b/main-business/src/main/java/com/ruoyi/business/entity/SalesRecord.java index 703bd29..33620d6 100644 --- a/main-business/src/main/java/com/ruoyi/business/entity/SalesRecord.java +++ b/main-business/src/main/java/com/ruoyi/business/entity/SalesRecord.java @@ -48,11 +48,6 @@ @TableField(value = "coal_id") private Long coalId; /** - * 鐓ょ - */ - @TableField(value = "coal") - private String coal; - /** * 鍗曚环锛堝惈绋庯級 */ @TableField(value = "price_including_tax") diff --git a/main-business/src/main/java/com/ruoyi/business/mapper/FileMapper.java b/main-business/src/main/java/com/ruoyi/business/mapper/FileMapper.java deleted file mode 100644 index 268c7d7..0000000 --- a/main-business/src/main/java/com/ruoyi/business/mapper/FileMapper.java +++ /dev/null @@ -1,18 +0,0 @@ -package com.ruoyi.business.mapper; - -import com.baomidou.mybatisplus.core.mapper.BaseMapper; -import com.ruoyi.business.entity.File; -import org.apache.ibatis.annotations.Mapper; - -/** - * <p> - * 涓婁紶鏂囦欢鐨勫熀鏈俊鎭� Mapper 鎺ュ彛 - * </p> - * - * @author ruoyi - * @since 2025-06-10 - */ -@Mapper -public interface FileMapper extends BaseMapper<File> { - -} diff --git a/main-business/src/main/java/com/ruoyi/business/service/FileService.java b/main-business/src/main/java/com/ruoyi/business/service/FileService.java deleted file mode 100644 index 87a300f..0000000 --- a/main-business/src/main/java/com/ruoyi/business/service/FileService.java +++ /dev/null @@ -1,16 +0,0 @@ -package com.ruoyi.business.service; - -import com.ruoyi.business.entity.File; -import com.baomidou.mybatisplus.extension.service.IService; - -/** - * <p> - * 涓婁紶鏂囦欢鐨勫熀鏈俊鎭� 鏈嶅姟绫� - * </p> - * - * @author ruoyi - * @since 2025-06-10 - */ -public interface FileService extends IService<File> { - -} diff --git a/main-business/src/main/java/com/ruoyi/business/service/SalesRecordService.java b/main-business/src/main/java/com/ruoyi/business/service/SalesRecordService.java index 8440766..7786086 100644 --- a/main-business/src/main/java/com/ruoyi/business/service/SalesRecordService.java +++ b/main-business/src/main/java/com/ruoyi/business/service/SalesRecordService.java @@ -2,9 +2,9 @@ import com.baomidou.mybatisplus.core.metadata.IPage; import com.baomidou.mybatisplus.extension.plugins.pagination.Page; +import com.baomidou.mybatisplus.extension.service.IService; import com.ruoyi.business.dto.SalesRecordDto; import com.ruoyi.business.entity.SalesRecord; -import com.baomidou.mybatisplus.extension.service.IService; /** * <p> @@ -16,7 +16,7 @@ */ public interface SalesRecordService extends IService<SalesRecord> { - IPage<SalesRecord> selectSalesRecordList(Page page, SalesRecordDto salesRecordDto); + IPage<SalesRecordDto> selectSalesRecordList(Page<SalesRecord> page, SalesRecordDto salesRecordDto); int addOrEditSalesRecord(SalesRecordDto salesRecordDto); diff --git a/main-business/src/main/java/com/ruoyi/business/service/impl/ArchiveServiceImpl.java b/main-business/src/main/java/com/ruoyi/business/service/impl/ArchiveServiceImpl.java index d0638f9..9075267 100644 --- a/main-business/src/main/java/com/ruoyi/business/service/impl/ArchiveServiceImpl.java +++ b/main-business/src/main/java/com/ruoyi/business/service/impl/ArchiveServiceImpl.java @@ -137,6 +137,7 @@ // 7. 鏋勫缓杩斿洖鍒嗛〉瀵硅薄 IPage<ArchiveDto> resultPage = new Page<>(); + BeanUtils.copyProperties(archivePage, resultPage); resultPage.setRecords(dtoList); return resultPage; } diff --git a/main-business/src/main/java/com/ruoyi/business/service/impl/FileServiceImpl.java b/main-business/src/main/java/com/ruoyi/business/service/impl/FileServiceImpl.java deleted file mode 100644 index 8508288..0000000 --- a/main-business/src/main/java/com/ruoyi/business/service/impl/FileServiceImpl.java +++ /dev/null @@ -1,22 +0,0 @@ -package com.ruoyi.business.service.impl; - -import com.ruoyi.business.entity.File; -import com.ruoyi.business.mapper.FileMapper; -import com.ruoyi.business.service.FileService; -import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl; -import org.springframework.stereotype.Service; -import lombok.RequiredArgsConstructor; - -/** - * <p> - * 涓婁紶鏂囦欢鐨勫熀鏈俊鎭� 鏈嶅姟瀹炵幇绫� - * </p> - * - * @author ruoyi - * @since 2025-06-10 - */ -@Service -@RequiredArgsConstructor -public class FileServiceImpl extends ServiceImpl<FileMapper, File> implements FileService { - -} diff --git a/main-business/src/main/java/com/ruoyi/business/service/impl/InspectionTaskServiceImpl.java b/main-business/src/main/java/com/ruoyi/business/service/impl/InspectionTaskServiceImpl.java index 72f00bf..414e3f7 100644 --- a/main-business/src/main/java/com/ruoyi/business/service/impl/InspectionTaskServiceImpl.java +++ b/main-business/src/main/java/com/ruoyi/business/service/impl/InspectionTaskServiceImpl.java @@ -120,6 +120,7 @@ // 7. 鏋勫缓杩斿洖鍒嗛〉瀵硅薄 IPage<InspectionTaskDto> resultPage = new Page<>(); + BeanUtils.copyProperties(entityPage, resultPage); resultPage.setRecords(dtoList); return resultPage; } diff --git a/main-business/src/main/java/com/ruoyi/business/service/impl/OfficialInventoryServiceImpl.java b/main-business/src/main/java/com/ruoyi/business/service/impl/OfficialInventoryServiceImpl.java index ba427bd..6e1f4d6 100644 --- a/main-business/src/main/java/com/ruoyi/business/service/impl/OfficialInventoryServiceImpl.java +++ b/main-business/src/main/java/com/ruoyi/business/service/impl/OfficialInventoryServiceImpl.java @@ -7,8 +7,10 @@ import com.baomidou.mybatisplus.extension.plugins.pagination.Page; import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl; import com.ruoyi.basic.entity.CoalField; +import com.ruoyi.basic.entity.CoalInfo; import com.ruoyi.basic.entity.CoalValue; import com.ruoyi.basic.mapper.CoalFieldMapper; +import com.ruoyi.basic.mapper.CoalInfoMapper; import com.ruoyi.basic.mapper.CoalValueMapper; import com.ruoyi.business.dto.OfficialInventoryDto; import com.ruoyi.business.entity.OfficialInventory; @@ -23,6 +25,7 @@ import org.springframework.transaction.annotation.Transactional; import java.util.*; +import java.util.function.Function; import java.util.stream.Collectors; /** @@ -42,6 +45,8 @@ private final CoalValueMapper coalValueMapper; private final CoalFieldMapper coalFieldMapper; + + private final CoalInfoMapper coalInfoMapper; @Override @@ -63,6 +68,21 @@ .map(CoalField::getFields) .distinct() .collect(Collectors.toList()); + + //鏌ヨ鐓ょids + List<Long> coalIds = entityPage.getRecords().stream() + .map(OfficialInventory::getCoalId) + .distinct() + .collect(Collectors.toList()); + + // 鎵归噺鏌ヨCoalInfo + Map<Long, CoalInfo> coalInfoMap; + if (!coalIds.isEmpty()) { + List<CoalInfo> coalInfos = coalInfoMapper.selectList(new LambdaQueryWrapper<CoalInfo>().in(CoalInfo::getId, coalIds)); + coalInfoMap = coalInfos.stream().collect(Collectors.toMap(CoalInfo::getId, Function.identity())); + } else { + coalInfoMap = new HashMap<>(); + } // 閬嶅巻姣忔潯璁板綍锛岃繘琛岃浆鎹㈠苟濉厖 fields for (OfficialInventory entity : entityPage.getRecords()) { @@ -97,6 +117,12 @@ fields.add(fieldMap); } + // 璁剧疆Coal淇℃伅 + CoalInfo coalInfo = coalInfoMap.get(entity.getCoalId()); + if (coalInfo != null) { + dto.setCoal(coalInfo.getCoal()); + } + // 璁剧疆鍒� DTO 涓� dto.setFields(fields); dtoList.add(dto); @@ -120,6 +146,8 @@ .map(OI -> { OfficialInventoryVo vo = new OfficialInventoryVo(); BeanUtils.copyProperties(OI, vo); + CoalInfo coalInfo = coalInfoMapper.selectById(OI.getCoalId()); + vo.setCoal(coalInfo.getCoal()); return vo; }) .collect(Collectors.toList()); diff --git a/main-business/src/main/java/com/ruoyi/business/service/impl/PendingInventoryServiceImpl.java b/main-business/src/main/java/com/ruoyi/business/service/impl/PendingInventoryServiceImpl.java index af85197..a38e13b 100644 --- a/main-business/src/main/java/com/ruoyi/business/service/impl/PendingInventoryServiceImpl.java +++ b/main-business/src/main/java/com/ruoyi/business/service/impl/PendingInventoryServiceImpl.java @@ -7,8 +7,10 @@ import com.baomidou.mybatisplus.extension.plugins.pagination.Page; import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl; import com.ruoyi.basic.entity.CoalField; +import com.ruoyi.basic.entity.CoalInfo; import com.ruoyi.basic.entity.CoalValue; import com.ruoyi.basic.mapper.CoalFieldMapper; +import com.ruoyi.basic.mapper.CoalInfoMapper; import com.ruoyi.basic.mapper.CoalValueMapper; import com.ruoyi.business.dto.PendingInventoryDto; import com.ruoyi.business.entity.OfficialInventory; @@ -26,6 +28,7 @@ import java.math.BigDecimal; import java.util.*; +import java.util.function.Function; import java.util.stream.Collectors; /** @@ -47,6 +50,8 @@ private final CoalValueMapper coalValueMapper; private final CoalFieldMapper coalFieldMapper; + + private final CoalInfoMapper coalInfoMapper; private final InputInventoryRecordService inputInventoryRecordService; @@ -71,20 +76,43 @@ .map(PendingInventory::getId) .collect(Collectors.toList()); - // 5. 鎵归噺鏌ヨ鍏宠仈鐨勬寮忓簱瀛樹俊鎭� + // 5. 鎵归噺鏌ヨ鍏宠仈鐨勭叅鐐俊鎭拰姝e紡搴撳瓨淇℃伅 + List<Long> coalIds = pendingInventoryPage.getRecords().stream() + .map(PendingInventory::getCoalId) + .distinct() + .collect(Collectors.toList()); + + // 鎵归噺鏌ヨCoalInfo + Map<Long, CoalInfo> coalInfoMap; + if (!coalIds.isEmpty()) { + List<CoalInfo> coalInfos = coalInfoMapper.selectList(new LambdaQueryWrapper<CoalInfo>().in(CoalInfo::getId, coalIds)); + coalInfoMap = coalInfos.stream().collect(Collectors.toMap(CoalInfo::getId, Function.identity())); + } else { + coalInfoMap = new HashMap<>(); + } + + // 鎵归噺鏌ヨ姝e紡搴撳瓨淇℃伅 Map<Long, Long> pendingToOfficialMap = getOfficialInventoryMap(pendingIds); - // 6. 浣跨敤MyBatis-Plus鐨刢onvert鏂规硶杞崲DTO + // 6. 杞崲DTO骞惰缃浉鍏冲瓧娈� return pendingInventoryPage.convert(record -> { PendingInventoryDto dto = new PendingInventoryDto(); BeanUtils.copyProperties(record, dto); + // 璁剧疆Coal淇℃伅 + CoalInfo coalInfo = coalInfoMap.get(record.getCoalId()); + if (coalInfo != null) { + dto.setCoal(coalInfo.getCoal()); + } + // 浠庨鍔犺浇鐨凪ap涓幏鍙杘fficialId dto.setOfficialId(pendingToOfficialMap.getOrDefault(record.getId(), null)); + return dto; }); } + // 鎵归噺鑾峰彇寰呭鐞嗗簱瀛樹笌姝e紡搴撳瓨鐨勬槧灏勫叧绯� private Map<Long, Long> getOfficialInventoryMap(List<Long> pendingIds) { if (CollectionUtils.isEmpty(pendingIds)) { diff --git a/main-business/src/main/java/com/ruoyi/business/service/impl/ProductionMasterServiceImpl.java b/main-business/src/main/java/com/ruoyi/business/service/impl/ProductionMasterServiceImpl.java index a10f889..bb958f0 100644 --- a/main-business/src/main/java/com/ruoyi/business/service/impl/ProductionMasterServiceImpl.java +++ b/main-business/src/main/java/com/ruoyi/business/service/impl/ProductionMasterServiceImpl.java @@ -77,7 +77,6 @@ IPage<ProductionMasterDto> dtoPage = new Page<>(); BeanUtils.copyProperties(entityPage, dtoPage, "records"); dtoPage.setRecords(dtoList); - return dtoPage; } diff --git a/main-business/src/main/java/com/ruoyi/business/service/impl/SalesRecordServiceImpl.java b/main-business/src/main/java/com/ruoyi/business/service/impl/SalesRecordServiceImpl.java index 8d2899c..46d6e5b 100644 --- a/main-business/src/main/java/com/ruoyi/business/service/impl/SalesRecordServiceImpl.java +++ b/main-business/src/main/java/com/ruoyi/business/service/impl/SalesRecordServiceImpl.java @@ -5,7 +5,9 @@ import com.baomidou.mybatisplus.core.metadata.IPage; import com.baomidou.mybatisplus.extension.plugins.pagination.Page; import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl; +import com.ruoyi.basic.entity.CoalInfo; import com.ruoyi.basic.entity.Customer; +import com.ruoyi.basic.mapper.CoalInfoMapper; import com.ruoyi.basic.mapper.CustomerMapper; import com.ruoyi.business.dto.SalesRecordDto; import com.ruoyi.business.entity.OfficialInventory; @@ -22,6 +24,11 @@ import org.springframework.transaction.annotation.Transactional; import java.time.LocalDate; +import java.util.HashMap; +import java.util.List; +import java.util.Map; +import java.util.function.Function; +import java.util.stream.Collectors; /** * <p> @@ -43,12 +50,60 @@ private final OfficialInventoryMapper officialInventoryMapper; + private final CoalInfoMapper coalInfoMapper; + @Override - public IPage<SalesRecord> selectSalesRecordList(Page page, SalesRecordDto salesRecordDto) { + public IPage<SalesRecordDto> selectSalesRecordList(Page<SalesRecord> page, SalesRecordDto salesRecordDto) { + // 1. 鍒涘缓鏌ヨ鏉′欢锛屾寜鍒涘缓鏃堕棿鍊掑簭鎺掑簭 LambdaQueryWrapper<SalesRecord> queryWrapper = new LambdaQueryWrapper<>(); queryWrapper.orderByDesc(SalesRecord::getCreateTime); - return salesRecordMapper.selectPage(page, queryWrapper); + + // 2. 鑾峰彇鍒嗛〉鐨勯攢鍞褰� + IPage<SalesRecord> salesRecordPage = salesRecordMapper.selectPage(page, queryWrapper); + + // 3. 鎵归噺鏌ヨ鎵�鏈塁oalInfo + List<Long> coalIds = salesRecordPage.getRecords().stream() + .map(SalesRecord::getCoalId) // 鑾峰彇鎵�鏈塖alesRecord鐨刢oalId + .collect(Collectors.toList()); + Map<Long, CoalInfo> coalInfoMap; + + // 濡傛灉鏈夌叅鐐璉D锛屾墽琛屾壒閲忔煡璇� + if (!coalIds.isEmpty()) { + // 浣跨敤selectList杩涜鎵归噺鏌ヨ + LambdaQueryWrapper<CoalInfo> coalInfoQueryWrapper = new LambdaQueryWrapper<>(); + coalInfoQueryWrapper.in(CoalInfo::getId, coalIds); + List<CoalInfo> coalInfos = coalInfoMapper.selectList(coalInfoQueryWrapper); + + // 灏嗘煡璇㈢粨鏋滄斁鍏ap涓紝鐓ょ偔ID涓洪敭锛孋oalInfo涓哄�� + coalInfoMap = coalInfos.stream() + .collect(Collectors.toMap(CoalInfo::getId, Function.identity())); + } else { + coalInfoMap = new HashMap<>(); + } + + // 4. 鍒涘缓杩斿洖缁撴灉椤碉紝浣跨敤BeanUtils杩涜灞炴�у鍒� + Page<SalesRecordDto> resultPage = new Page<>(); + BeanUtils.copyProperties(salesRecordPage, resultPage); // 澶嶅埗鍒嗛〉淇℃伅 + + // 5. 杞崲SalesRecord涓篠alesRecordDto锛屽苟璁剧疆姣忔潯閿�鍞褰曠殑鐓ょ偔淇℃伅 + List<SalesRecordDto> dtoList = salesRecordPage.getRecords().stream().map(salesRecord -> { + SalesRecordDto dto = new SalesRecordDto(); + BeanUtils.copyProperties(salesRecord, dto); // 灏哠alesRecord鐨勫睘鎬у鍒跺埌SalesRecordDto涓� + + // 璁剧疆Coal淇℃伅 + CoalInfo coalInfo = coalInfoMap.get(salesRecord.getCoalId()); + if (coalInfo != null) { + dto.setCoal(coalInfo.getCoal()); + } + + return dto; + }).collect(Collectors.toList()); + + resultPage.setRecords(dtoList); // 璁剧疆杞崲鍚庣殑DTO鍒楄〃 + + return resultPage; } + @Override @Transactional(rollbackFor = Exception.class) @@ -61,7 +116,7 @@ if (officialInventory == null) { throw new BaseException("姝e紡搴撶叅绉嶄俊鎭笉瀛樺湪"); } - if (salesRecordDto.getSaleQuantity().compareTo(officialInventory.getInventoryQuantity()) > 0){ + if (salesRecordDto.getSaleQuantity().compareTo(officialInventory.getInventoryQuantity()) > 0) { throw new BaseException("閿�鍞暟閲忎笉鑳藉ぇ浜庡簱瀛樻暟閲�"); } officialInventory.setInventoryQuantity(officialInventory.getInventoryQuantity().subtract(salesRecordDto.getSaleQuantity())); @@ -69,7 +124,7 @@ officialInventoryMapper.updateById(officialInventory); // 鏋勫缓閿�鍞褰曞疄浣� - SalesRecord salesRecord = buildSalesRecord(salesRecordDto,officialInventory.getCoalId()); + SalesRecord salesRecord = buildSalesRecord(salesRecordDto, officialInventory.getCoalId()); // 澶勭悊鏂板/鏇存柊閫昏緫 if (salesRecordDto.getId() == null) { @@ -94,7 +149,7 @@ } } - private SalesRecord buildSalesRecord(SalesRecordDto dto,Long coalId) { + private SalesRecord buildSalesRecord(SalesRecordDto dto, Long coalId) { SalesRecord record = new SalesRecord(); BeanUtils.copyProperties(dto, record); diff --git a/main-business/src/main/java/com/ruoyi/business/vo/OfficialInventoryVo.java b/main-business/src/main/java/com/ruoyi/business/vo/OfficialInventoryVo.java index 67526a4..1784d18 100644 --- a/main-business/src/main/java/com/ruoyi/business/vo/OfficialInventoryVo.java +++ b/main-business/src/main/java/com/ruoyi/business/vo/OfficialInventoryVo.java @@ -8,6 +8,7 @@ public class OfficialInventoryVo { private Long id; // 涓婚敭ID + private Long coalId; // 鐓ょid private String coal; // 鐓ょ private String unit; // 鍗曚綅 private BigDecimal inventoryQuantity; // 搴撳瓨鏁伴噺 diff --git a/main-business/src/main/resources/db/migration/postgresql/V20250610161314__create_table_file.sql b/main-business/src/main/resources/db/migration/postgresql/V20250610161314__create_table_file.sql deleted file mode 100644 index 4611ab6..0000000 --- a/main-business/src/main/resources/db/migration/postgresql/V20250610161314__create_table_file.sql +++ /dev/null @@ -1,37 +0,0 @@ --- 鍒涘缓鏂囦欢琛� -CREATE TABLE file -( - id BIGSERIAL PRIMARY KEY, -- 涓婚敭ID锛岃嚜鍔ㄩ�掑 - - archive_id BIGINT, -- 鍏宠仈妗f琛� archive.id锛堝彲閫夛級 - original_name VARCHAR(255) NOT NULL, -- 鍘熷鏂囦欢鍚嶏紙鐢ㄦ埛涓婁紶鏃剁殑鍚嶇О锛� - preview_url TEXT, -- 棰勮鍦板潃 - file_name VARCHAR(255) NOT NULL, -- 瀛樺偍绯荤粺涓殑鍞竴鏂囦欢鍚嶏紙濡� uuid.png锛� - file_path TEXT NOT NULL, -- 鏂囦欢瀛樺偍璺緞鎴朥RL - file_type VARCHAR(50), -- 鏂囦欢绫诲瀷锛堝锛歩mage/png, application/pdf锛� - file_size VARCHAR(50), -- 鏂囦欢澶у皬锛堝崟浣嶏細瀛楄妭锛� - - create_time TIMESTAMP WITHOUT TIME ZONE, -- 涓婁紶鏃堕棿锛岄粯璁ゅ綋鍓嶆椂闂� - update_time TIMESTAMP WITHOUT TIME ZONE, -- 鏈�鍚庢洿鏂版椂闂达紝榛樿褰撳墠鏃堕棿 - create_by VARCHAR(255), -- 涓婁紶浜虹敤鎴峰悕 - update_by VARCHAR(255), -- 鏈�鍚庝慨鏀逛汉鐢ㄦ埛鍚� - deleted INT NOT NULL DEFAULT 0 -- 杞垹闄ゆ爣蹇楋細0=鏈垹闄わ紝1=宸插垹闄� -); - --- 琛ㄦ敞閲� -COMMENT ON TABLE file IS '涓婁紶鏂囦欢鐨勫熀鏈俊鎭�'; - --- 瀛楁娉ㄩ噴 -COMMENT ON COLUMN file.id IS '涓婚敭ID'; -COMMENT ON COLUMN file.archive_id IS '鍏宠仈鐨勬。妗圛D锛屽閿紩鐢� archive.id'; -COMMENT ON COLUMN file.original_name IS '鍘熷鏂囦欢鍚嶏紙鐢ㄦ埛涓婁紶鏃剁殑鍚嶇О锛�'; -COMMENT ON COLUMN file.preview_url IS '棰勮鍦板潃'; -COMMENT ON COLUMN file.file_name IS '绯荤粺瀛樺偍鐨勫敮涓�鏂囦欢鍚�'; -COMMENT ON COLUMN file.file_path IS '鏂囦欢鍦ㄦ湇鍔″櫒涓婄殑瀛樺偍璺緞鎴栬闂甎RL'; -COMMENT ON COLUMN file.file_type IS '鏂囦欢MIME绫诲瀷锛屼緥濡� image/png銆乤pplication/pdf'; -COMMENT ON COLUMN file.file_size IS '鏂囦欢澶у皬锛屽崟浣嶄负瀛楄妭'; -COMMENT ON COLUMN file.create_time IS '鏂囦欢涓婁紶鏃堕棿'; -COMMENT ON COLUMN file.update_time IS '鏂囦欢鏈�鍚庢洿鏂版椂闂�'; -COMMENT ON COLUMN file.create_by IS '涓婁紶璇ユ枃浠剁殑鐢ㄦ埛'; -COMMENT ON COLUMN file.update_by IS '鏈�鍚庝慨鏀硅鏂囦欢鐨勭敤鎴�'; -COMMENT ON COLUMN file.deleted IS '杞垹闄ゆ爣蹇楋紝0=鏈垹闄わ紝1=宸插垹闄�'; \ No newline at end of file diff --git a/main-business/src/main/resources/db/migration/postgresql/V20250611160300__create_table_sales_record.sql b/main-business/src/main/resources/db/migration/postgresql/V20250611160300__create_table_sales_record.sql index 082816e..4f0fe0e 100644 --- a/main-business/src/main/resources/db/migration/postgresql/V20250611160300__create_table_sales_record.sql +++ b/main-business/src/main/resources/db/migration/postgresql/V20250611160300__create_table_sales_record.sql @@ -6,7 +6,6 @@ customer_id BIGINT, -- 瀹㈡埛id customer VARCHAR(255) NOT NULL, -- 瀹㈡埛 coal_id VARCHAR(255) NOT NULL, -- 鐓ょ id - coal VARCHAR(255) NOT NULL, -- 鐓ょ price_including_tax DECIMAL(10, 2) NOT NULL, -- 鍗曚环锛堝惈绋庯級 inventory_quantity DECIMAL(10, 0) NOT NULL, -- 搴撳瓨鏁伴噺 unit VARCHAR(100) NOT NULL, -- 鍗曚綅 @@ -37,7 +36,6 @@ COMMENT ON COLUMN sales_record.sale_date IS '閿�鍞棩鏈�'; COMMENT ON COLUMN sales_record.customer IS '瀹㈡埛'; COMMENT ON COLUMN sales_record.customer_id IS '瀹㈡埛id'; -COMMENT ON COLUMN sales_record.coal IS '鐓ょ'; COMMENT ON COLUMN sales_record.coal_id IS '鐓ょid'; COMMENT ON COLUMN sales_record.unit IS '鍗曚綅'; COMMENT ON COLUMN sales_record.price_including_tax IS '鍗曚环锛堝惈绋庯級'; diff --git a/main-business/src/main/resources/mapper/FileMapper.xml b/main-business/src/main/resources/mapper/FileMapper.xml deleted file mode 100644 index f6cc606..0000000 --- a/main-business/src/main/resources/mapper/FileMapper.xml +++ /dev/null @@ -1,32 +0,0 @@ -<?xml version="1.0" encoding="UTF-8"?> -<!DOCTYPE mapper PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" "http://mybatis.org/dtd/mybatis-3-mapper.dtd"> -<mapper namespace="com.ruoyi.business.mapper.FileMapper"> - - <!-- 閫氱敤鏌ヨ鏄犲皠缁撴灉 --> - <resultMap id="BaseResultMap" type="com.ruoyi.business.entity.File"> - <id column="id" property="id" /> - <result column="create_time" property="createTime" /> - <result column="update_time" property="updateTime" /> - <result column="create_by" property="createBy" /> - <result column="update_by" property="updateBy" /> - <result column="deleted" property="deleted" /> - <result column="archive_id" property="archiveId" /> - <result column="original_name" property="originalName" /> - <result column="preview_url" property="previewUrl" /> - <result column="file_name" property="fileName" /> - <result column="file_path" property="filePath" /> - <result column="file_type" property="fileType" /> - <result column="file_size" property="fileSize" /> - </resultMap> - - <!-- 閫氱敤鏌ヨ缁撴灉鍒� --> - <sql id="Base_Column_List"> - create_time, - update_time, - create_by, - update_by, - deleted, - id, archive_id, original_name, preview_url, file_name, file_path, file_type, file_size - </sql> - -</mapper> \ No newline at end of file -- Gitblit v1.9.3