| | |
| | | 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(); |
| | | } |
| | | |
| | | } |
¶Ô±ÈÐÂÎļþ |
| | |
| | | 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; |
| | | } |
| | |
| | | */ |
| | | 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); |
| | | } |
| | | |
| | | |
| | |
| | | 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; |
| | | |
| | |
| | | * @param ew |
| | | * @return |
| | | */ |
| | | IPage<StandardProductListUpdateRecord> standardProductListRecordPage(Page page, @Param("ew") QueryWrapper<StandardProductListUpdateRecord> ew); |
| | | IPage<StandardProductListUpdateRecordDto> standardProductListRecordPage(Page page, @Param("ew") QueryWrapper<StandardProductListUpdateRecord> ew); |
| | | } |
| | | |
| | | |
| | |
| | | |
| | | @ApiModelProperty("夿³¨") |
| | | private String remark; |
| | | |
| | | @ApiModelProperty("æä»¶è·¯å¾") |
| | | private String filePath; |
| | | |
| | | @ApiModelProperty("æä»¶åç§°") |
| | | private String fileName; |
| | | |
| | | @ApiModelProperty("æä»¶é¢è§å°å") |
| | | private String filePreviewPath; |
| | | } |
| | |
| | | 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; |
| | |
| | | * @param record |
| | | * @return |
| | | */ |
| | | IPage<StandardProductListUpdateRecord> standardProductListRecordPage(Page page, StandardProductListUpdateRecord record); |
| | | IPage<StandardProductListUpdateRecordDto> standardProductListRecordPage(Page page, StandardProductListUpdateRecord record); |
| | | |
| | | /** |
| | | * æ åæ ä¸æ£éªé¡¹ä¿®æ¹è®°å½å页æ¥è¯¢ |
| | |
| | | * @return |
| | | */ |
| | | IPage<StandardProductListUpdateRecordRel> standardProductListRecordRelPage(Page page, StandardProductListUpdateRecordRel standardProductListUpdateRecordRel); |
| | | |
| | | /** |
| | | * æ åæ ä¸ä¿®æ¹è®°å½æä»¶ä¸ä¼ |
| | | * |
| | | * @param file |
| | | * @param recordId |
| | | */ |
| | | void uploadRecordFile(MultipartFile file,Long recordId); |
| | | } |
| | |
| | | */ |
| | | @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; |
| | | } |
| | |
| | | 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; |
| | |
| | | * @createDate 2024-03-05 10:33:29 |
| | | */ |
| | | @Service |
| | | @AllArgsConstructor |
| | | public class StandardProductListUpdateRecordServiceImpl extends ServiceImpl<StandardProductListUpdateRecordMapper, StandardProductListUpdateRecord> |
| | | implements StandardProductListUpdateRecordService { |
| | | |
| | |
| | | @Autowired |
| | | private StandardProductListUpdateRecordRelMapper standardProductListUpdateRecordRelMapper; |
| | | |
| | | @Resource |
| | | private MinioUtils minioUtils; |
| | | |
| | | @Value("${minio.bucketName}") |
| | | private String bucketName; |
| | | |
| | | /** |
| | | * æ åæ ä¸æ£éªé¡¹ä¿®æ¹è®°å½å页æ¥è¯¢ |
| | | * @param page |
| | |
| | | * @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)); |
| | | } |
| | | |
| | |
| | | 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("æä»¶ä¸ä¼ 失败"); |
| | | } |
| | | } |
| | | } |
| | | |
| | | |
| | |
| | | |
| | | <!-- æ¹éæ·»å æ£æµæ å --> |
| | | <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> |
| | |
| | | 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"> |
| | |
| | | <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> |
| | |
| | | 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> |