From 9f6292334cf2634772b8ef147255f8d207fde15f Mon Sep 17 00:00:00 2001 From: chenrui <1187576398@qq.com> Date: 星期三, 02 四月 2025 14:30:30 +0800 Subject: [PATCH] 标准库功能修改备份开发 --- basic-server/src/main/java/com/ruoyi/basic/dto/StandardProductListUpdateRecordDto.java | 31 ++++++++++ basic-server/src/main/resources/mapper/StandardProductListMapper.xml | 9 +- basic-server/src/main/java/com/ruoyi/basic/pojo/StandardProductListUpdateRecord.java | 9 +++ basic-server/src/main/java/com/ruoyi/basic/service/impl/StandardProductListUpdateRecordServiceImpl.java | 36 +++++++++++ basic-server/src/main/resources/mapper/StandardProductListUpdateRecordMapper.xml | 8 ++ basic-server/src/main/java/com/ruoyi/basic/controller/StandardProductListUpdateRecordController.java | 7 ++ basic-server/src/main/java/com/ruoyi/basic/service/StandardProductListUpdateRecordService.java | 12 +++ basic-server/src/main/java/com/ruoyi/basic/mapper/StandardProductListMapper.java | 2 basic-server/src/main/java/com/ruoyi/basic/mapper/StandardProductListUpdateRecordMapper.java | 3 basic-server/src/main/java/com/ruoyi/basic/service/impl/StandardProductListServiceImpl.java | 18 ++++++ 10 files changed, 124 insertions(+), 11 deletions(-) diff --git a/basic-server/src/main/java/com/ruoyi/basic/controller/StandardProductListUpdateRecordController.java b/basic-server/src/main/java/com/ruoyi/basic/controller/StandardProductListUpdateRecordController.java index ae1963e..b41b70b 100644 --- a/basic-server/src/main/java/com/ruoyi/basic/controller/StandardProductListUpdateRecordController.java +++ b/basic-server/src/main/java/com/ruoyi/basic/controller/StandardProductListUpdateRecordController.java @@ -42,4 +42,11 @@ return Result.success(standardProductListUpdateRecordService.standardProductListRecordRelPage(page,standardProductListUpdateRecordRel)); } + @ApiOperation(value = "鏍囧噯鏍戜笅淇敼璁板綍鏂囦欢涓婁紶") + @PostMapping("/uploadRecordFile") + public Result uploadRecordFile(@RequestParam("file") MultipartFile file,Long recordId) { + standardProductListUpdateRecordService.uploadRecordFile(file,recordId); + return Result.success(); + } + } diff --git a/basic-server/src/main/java/com/ruoyi/basic/dto/StandardProductListUpdateRecordDto.java b/basic-server/src/main/java/com/ruoyi/basic/dto/StandardProductListUpdateRecordDto.java new file mode 100644 index 0000000..5a0d1c0 --- /dev/null +++ b/basic-server/src/main/java/com/ruoyi/basic/dto/StandardProductListUpdateRecordDto.java @@ -0,0 +1,31 @@ +package com.ruoyi.basic.dto; + +import com.baomidou.mybatisplus.annotation.*; +import com.fasterxml.jackson.annotation.JsonFormat; +import com.fasterxml.jackson.databind.annotation.JsonSerialize; +import com.fasterxml.jackson.databind.ser.std.ToStringSerializer; +import com.ruoyi.basic.pojo.StandardProductListUpdateRecord; +import io.swagger.annotations.ApiModelProperty; +import lombok.Data; + +import java.io.Serializable; +import java.time.LocalDateTime; + +/** + * 鏍囧噯鏍戜笅鐨勬楠岄」鐩慨鏀硅褰� + * + */ +@TableName(value ="standard_product_list_update_record") +@Data +public class StandardProductListUpdateRecordDto extends StandardProductListUpdateRecord { + + /** + * 鍒涘缓鐢ㄦ埛鍚嶇О + */ + private String createUserName; + + /** + * 淇敼鐢ㄦ埛鍚嶇О + */ + private String updateUserName; +} diff --git a/basic-server/src/main/java/com/ruoyi/basic/mapper/StandardProductListMapper.java b/basic-server/src/main/java/com/ruoyi/basic/mapper/StandardProductListMapper.java index 9023104..19eeb28 100644 --- a/basic-server/src/main/java/com/ruoyi/basic/mapper/StandardProductListMapper.java +++ b/basic-server/src/main/java/com/ruoyi/basic/mapper/StandardProductListMapper.java @@ -71,7 +71,7 @@ */ void saveBatchProductLists(@Param("productLists") List<StandardProductList> productLists); - void updateProductListCheckStatus(@Param("ids") List<Long> ids,String checkStatus); + void updateProductListCheckStatus(@Param("ids") List<Long> ids,@Param("checkStatus") String checkStatus); } diff --git a/basic-server/src/main/java/com/ruoyi/basic/mapper/StandardProductListUpdateRecordMapper.java b/basic-server/src/main/java/com/ruoyi/basic/mapper/StandardProductListUpdateRecordMapper.java index d51d5f1..3a2d00a 100644 --- a/basic-server/src/main/java/com/ruoyi/basic/mapper/StandardProductListUpdateRecordMapper.java +++ b/basic-server/src/main/java/com/ruoyi/basic/mapper/StandardProductListUpdateRecordMapper.java @@ -4,6 +4,7 @@ import com.baomidou.mybatisplus.core.mapper.BaseMapper; import com.baomidou.mybatisplus.core.metadata.IPage; import com.baomidou.mybatisplus.extension.plugins.pagination.Page; +import com.ruoyi.basic.dto.StandardProductListUpdateRecordDto; import com.ruoyi.basic.pojo.StandardProductListUpdateRecord; import org.apache.ibatis.annotations.Param; @@ -22,7 +23,7 @@ * @param ew * @return */ - IPage<StandardProductListUpdateRecord> standardProductListRecordPage(Page page, @Param("ew") QueryWrapper<StandardProductListUpdateRecord> ew); + IPage<StandardProductListUpdateRecordDto> standardProductListRecordPage(Page page, @Param("ew") QueryWrapper<StandardProductListUpdateRecord> ew); } diff --git a/basic-server/src/main/java/com/ruoyi/basic/pojo/StandardProductListUpdateRecord.java b/basic-server/src/main/java/com/ruoyi/basic/pojo/StandardProductListUpdateRecord.java index c9e228d..5d0e284 100644 --- a/basic-server/src/main/java/com/ruoyi/basic/pojo/StandardProductListUpdateRecord.java +++ b/basic-server/src/main/java/com/ruoyi/basic/pojo/StandardProductListUpdateRecord.java @@ -57,4 +57,13 @@ @ApiModelProperty("澶囨敞") private String remark; + + @ApiModelProperty("鏂囦欢璺緞") + private String filePath; + + @ApiModelProperty("鏂囦欢鍚嶇О") + private String fileName; + + @ApiModelProperty("鏂囦欢棰勮鍦板潃") + private String filePreviewPath; } diff --git a/basic-server/src/main/java/com/ruoyi/basic/service/StandardProductListUpdateRecordService.java b/basic-server/src/main/java/com/ruoyi/basic/service/StandardProductListUpdateRecordService.java index c2ad6b3..3a549c0 100644 --- a/basic-server/src/main/java/com/ruoyi/basic/service/StandardProductListUpdateRecordService.java +++ b/basic-server/src/main/java/com/ruoyi/basic/service/StandardProductListUpdateRecordService.java @@ -6,9 +6,11 @@ import com.ruoyi.basic.dto.CopyStandardProductListDto; import com.ruoyi.basic.dto.InsSampleReceiveDto; import com.ruoyi.basic.dto.ResetTreeDragDTO; +import com.ruoyi.basic.dto.StandardProductListUpdateRecordDto; import com.ruoyi.basic.pojo.StandardProductList; import com.ruoyi.basic.pojo.StandardProductListUpdateRecord; import com.ruoyi.basic.pojo.StandardProductListUpdateRecordRel; +import org.springframework.web.multipart.MultipartFile; import java.util.List; import java.util.Map; @@ -26,7 +28,7 @@ * @param record * @return */ - IPage<StandardProductListUpdateRecord> standardProductListRecordPage(Page page, StandardProductListUpdateRecord record); + IPage<StandardProductListUpdateRecordDto> standardProductListRecordPage(Page page, StandardProductListUpdateRecord record); /** * 鏍囧噯鏍戜笅妫�楠岄」淇敼璁板綍鍒嗛〉鏌ヨ @@ -35,4 +37,12 @@ * @return */ IPage<StandardProductListUpdateRecordRel> standardProductListRecordRelPage(Page page, StandardProductListUpdateRecordRel standardProductListUpdateRecordRel); + + /** + * 鏍囧噯鏍戜笅淇敼璁板綍鏂囦欢涓婁紶 + * + * @param file + * @param recordId + */ + void uploadRecordFile(MultipartFile file,Long recordId); } diff --git a/basic-server/src/main/java/com/ruoyi/basic/service/impl/StandardProductListServiceImpl.java b/basic-server/src/main/java/com/ruoyi/basic/service/impl/StandardProductListServiceImpl.java index 5a53933..4ec53ee 100644 --- a/basic-server/src/main/java/com/ruoyi/basic/service/impl/StandardProductListServiceImpl.java +++ b/basic-server/src/main/java/com/ruoyi/basic/service/impl/StandardProductListServiceImpl.java @@ -489,6 +489,24 @@ */ @Override public boolean updateSection(StandardProductList list) { + // 鏍规嵁id 鏌ヨ鍒板師濮嬪�� + StandardProductList standardProductList = standardProductListMapper.selectById(list.getId()); + if(ObjectUtils.isEmpty(standardProductList)){ + throw new RuntimeException("鏇存柊澶辫触,鏈煡鎵惧埌妫�鏌ラ」"); + } + // 鍒ゆ柇褰撳墠鐘舵�� 濡傛灉鏄鏍镐腑 + if(StandardProductListChcekTypeEnums.CHECK_ING.getCode().equals(list.getCheckStatus())){ + throw new RuntimeException("瀹℃牳涓笉鏀寔淇敼"); + } + // 鏌ヨ鏈�鏂扮殑涓�娆″叧鑱斿浠� 濡傛灉瀛樺湪璇存槑鏈鏍稿畬缁х画淇敼浜嗐�備笉鍋氭暟鎹鐞嗐�� + StandardProductListBackupRel standardProductListBackupRel = standardProductListBackupRelMapper.selectById(list.getId()); + if(ObjectUtils.isEmpty(standardProductListBackupRel)){ + StandardProductListBackupRel productListBackupRel = new StandardProductListBackupRel(); + BeanUtils.copyProperties(standardProductList, productListBackupRel); + standardProductListBackupRelMapper.insert(productListBackupRel); + } + // 淇敼鐘舵�� + list.setCheckStatus(StandardProductListChcekTypeEnums.WAIT_CHECK.getCode()); standardProductListMapper.updateSection(list); return true; } diff --git a/basic-server/src/main/java/com/ruoyi/basic/service/impl/StandardProductListUpdateRecordServiceImpl.java b/basic-server/src/main/java/com/ruoyi/basic/service/impl/StandardProductListUpdateRecordServiceImpl.java index 3c70fa6..030fd98 100644 --- a/basic-server/src/main/java/com/ruoyi/basic/service/impl/StandardProductListUpdateRecordServiceImpl.java +++ b/basic-server/src/main/java/com/ruoyi/basic/service/impl/StandardProductListUpdateRecordServiceImpl.java @@ -10,21 +10,27 @@ import com.ruoyi.basic.dto.CopyStandardProductListDto; import com.ruoyi.basic.dto.InsSampleReceiveDto; import com.ruoyi.basic.dto.ResetTreeDragDTO; +import com.ruoyi.basic.dto.StandardProductListUpdateRecordDto; import com.ruoyi.basic.enums.StandardProductListChcekTypeEnums; import com.ruoyi.basic.mapper.*; import com.ruoyi.basic.pojo.*; import com.ruoyi.basic.service.StandardMethodListService; import com.ruoyi.basic.service.StandardProductListService; import com.ruoyi.basic.service.StandardProductListUpdateRecordService; +import com.ruoyi.common.core.domain.MinioResult; import com.ruoyi.common.exception.base.BaseException; import com.ruoyi.common.utils.QueryWrappers; import com.ruoyi.common.utils.SecurityUtils; +import com.ruoyi.common.utils.file.MinioUtils; import lombok.AllArgsConstructor; import org.springframework.beans.BeanUtils; import org.springframework.beans.factory.annotation.Autowired; +import org.springframework.beans.factory.annotation.Value; import org.springframework.stereotype.Service; import org.springframework.transaction.annotation.Transactional; +import org.springframework.web.multipart.MultipartFile; +import javax.annotation.Resource; import java.math.BigDecimal; import java.util.*; import java.util.regex.Matcher; @@ -37,7 +43,6 @@ * @createDate 2024-03-05 10:33:29 */ @Service -@AllArgsConstructor public class StandardProductListUpdateRecordServiceImpl extends ServiceImpl<StandardProductListUpdateRecordMapper, StandardProductListUpdateRecord> implements StandardProductListUpdateRecordService { @@ -47,6 +52,12 @@ @Autowired private StandardProductListUpdateRecordRelMapper standardProductListUpdateRecordRelMapper; + @Resource + private MinioUtils minioUtils; + + @Value("${minio.bucketName}") + private String bucketName; + /** * 鏍囧噯鏍戜笅妫�楠岄」淇敼璁板綍鍒嗛〉鏌ヨ * @param page @@ -54,7 +65,7 @@ * @return */ @Override - public IPage<StandardProductListUpdateRecord> standardProductListRecordPage(Page page, StandardProductListUpdateRecord record) { + public IPage<StandardProductListUpdateRecordDto> standardProductListRecordPage(Page page, StandardProductListUpdateRecord record) { return standardProductListUpdateRecordMapper.standardProductListRecordPage(page,QueryWrappers.queryWrappers(record)); } @@ -69,6 +80,27 @@ return standardProductListUpdateRecordRelMapper.standardProductListRecordRelPage(page,QueryWrappers.queryWrappers(standardProductListUpdateRecordRel)); } + /** + * 鏍囧噯鏍戜笅淇敼璁板綍鏂囦欢涓婁紶 + * + * @param file + * @param recordId + */ + @Override + public void uploadRecordFile(MultipartFile file, Long recordId) { + try { + MinioResult result = minioUtils.upload(bucketName, file, true); + // 淇濆瓨璺緞 + StandardProductListUpdateRecord standardProductListUpdateRecord = new StandardProductListUpdateRecord(); + standardProductListUpdateRecord.setId(recordId); + standardProductListUpdateRecord.setFileName(result.getOriginalName()); + standardProductListUpdateRecord.setFilePath(result.getBucketFileName()); + standardProductListUpdateRecord.setFilePreviewPath(result.getPreviewExpiry()); + standardProductListUpdateRecordMapper.updateById(standardProductListUpdateRecord); + }catch (Exception e){ + throw new RuntimeException("鏂囦欢涓婁紶澶辫触"); + } + } } diff --git a/basic-server/src/main/resources/mapper/StandardProductListMapper.xml b/basic-server/src/main/resources/mapper/StandardProductListMapper.xml index 6584dfb..351fb73 100644 --- a/basic-server/src/main/resources/mapper/StandardProductListMapper.xml +++ b/basic-server/src/main/resources/mapper/StandardProductListMapper.xml @@ -30,11 +30,11 @@ <!-- 鎵归噺娣诲姞妫�娴嬫爣鍑� --> <insert id="saveBatchProductLists"> - INSERT INTO standard_product_list (id, inspection_item, inspection_item_en, inspection_item_subclass, inspection_item_subclass_en, factory, laboratory, sample_type, sample, model, son_laboratory, unit, price, man_hour, man_hour_group, inspection_item_type, inspection_value_type, checkout_number, section, cores, method, method_s, man_day, bsm, ask, tell, standard_method_list_id, template_id, state, dic, tree, structure_item_parameter_id, inspection_item_class, inspection_item_class_en, radius, radius_list, rates, sort, conductor_material, conductor_type) + INSERT INTO standard_product_list (id, inspection_item, inspection_item_en, inspection_item_subclass, inspection_item_subclass_en, factory, laboratory, sample_type, sample, model, son_laboratory, unit, price, man_hour, man_hour_group, inspection_item_type, inspection_value_type, checkout_number, section, cores, method, method_s, man_day, bsm, ask, tell, standard_method_list_id, template_id, state, dic, tree, structure_item_parameter_id, inspection_item_class, inspection_item_class_en, radius, radius_list, rates, sort, conductor_material, conductor_type, check_status) VALUES <foreach item="item" collection="productLists" open="(" separator="),(" close=")"> #{item.id}, #{item.inspectionItem}, #{item.inspectionItemEn}, #{item.inspectionItemSubclass}, #{item.inspectionItemSubclassEn}, #{item.factory}, #{item.sonLaboratory}, #{item.sampleType}, #{item.sample}, #{item.model}, #{item.sonLaboratory}, #{item.unit}, #{item.price}, #{item.manHour}, #{item.manHourGroup}, #{item.inspectionItemType}, #{item.inspectionValueType}, #{item.checkoutNumber}, #{item.section}, #{item.cores}, #{item.method}, #{item.methodS}, #{item.manDay}, #{item.bsm}, #{item.ask}, #{item.tell}, #{item.standardMethodListId}, #{item.templateId}, #{item.state}, #{item.dic}, #{item.tree}, #{item.structureItemParameterId}, - #{item.inspectionItemClass}, #{item.inspectionItemClassEn}, #{item.radius}, #{item.radiusList}, #{item.rates}, #{item.sort}, #{item.conductorMaterial}, #{item.conductorType} + #{item.inspectionItemClass}, #{item.inspectionItemClassEn}, #{item.radius}, #{item.radiusList}, #{item.rates}, #{item.sort}, #{item.conductorMaterial}, #{item.conductorType}, #{item.checkStatus} </foreach> </insert> @@ -51,7 +51,8 @@ ask=#{productList.ask}, tell=#{productList.tell}, update_user=#{productList.updateUser}, - update_time=#{productList.updateTime} + update_time=#{productList.updateTime}, + check_status=#{checkStatus} WHERE id = #{productList.id} </update> <update id="updateSortUp"> @@ -158,7 +159,7 @@ <update id="updateProductListCheckStatus"> UPDATE standard_product_list SET check_status = #{checkStatus} WHERE ID IN - <foreach collection="ids" open="(" close=")" item="item"> + <foreach collection="ids" open="(" close=")" item="item" separator=","> #{item} </foreach> </update> diff --git a/basic-server/src/main/resources/mapper/StandardProductListUpdateRecordMapper.xml b/basic-server/src/main/resources/mapper/StandardProductListUpdateRecordMapper.xml index c6f7d17..e9388ef 100644 --- a/basic-server/src/main/resources/mapper/StandardProductListUpdateRecordMapper.xml +++ b/basic-server/src/main/resources/mapper/StandardProductListUpdateRecordMapper.xml @@ -3,8 +3,12 @@ PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" "http://mybatis.org/dtd/mybatis-3-mapper.dtd"> <mapper namespace="com.ruoyi.basic.mapper.StandardProductListUpdateRecordMapper"> - <select id="standardProductListRecordPage" resultType="com.ruoyi.basic.pojo.StandardProductListUpdateRecord"> - select * from standard_product_list_update_record + <select id="standardProductListRecordPage" resultType="com.ruoyi.basic.dto.StandardProductListUpdateRecordDto"> + SELECT *, + ( SELECT NAME FROM `user` WHERE id = create_user ) AS createUserName, + ( SELECT NAME FROM `user` WHERE id = update_user ) AS updateUserName + FROM + standard_product_list_update_record <if test="ew.customSqlSegment != null and ew.customSqlSegment != ''"> ${ew.customSqlSegment} </if> -- Gitblit v1.9.3