basic-server/src/main/java/com/ruoyi/basic/controller/CapacityScopeController.java
@@ -390,4 +390,10 @@ } return Result.success(); } @ApiOperation(value = "æ´æ°è½¦é´") @PostMapping("/updateWorkShop") public Result updateWorkShop(Integer productId,Integer workShopId,String name) { return Result.success(productService.updateWorkShop(productId,workShopId,name)); } } basic-server/src/main/java/com/ruoyi/basic/pojo/Product.java
@@ -54,4 +54,16 @@ * å¤é®ï¼structure_test_object表id */ private Integer objectId; /** * å¤é®ï¼work_shop表id */ @ApiModelProperty(value = "车é´id") private Integer workShopId; /** * 车é´å */ @ApiModelProperty(value = "车é´åç§°") private String workShopName; } basic-server/src/main/java/com/ruoyi/basic/service/ProductService.java
@@ -25,4 +25,6 @@ int delProduct(Integer id); void importPartExcel(List<StructureTestObjectData> list); int updateWorkShop(Integer productId, Integer workShopId, String name); } basic-server/src/main/java/com/ruoyi/basic/service/impl/ProductServiceImpl.java
@@ -185,4 +185,12 @@ } }); } @Override public int updateWorkShop(Integer productId, Integer workShopId,String name) { return productMapper.update(null, Wrappers.<Product>lambdaUpdate() .set(Product::getWorkShopId, workShopId) .set(Product::getWorkShopName, name) .eq(Product::getId, productId)); } } inspect-server/src/main/java/com/ruoyi/inspect/controller/WorkShopController.java
¶Ô±ÈÐÂÎļþ @@ -0,0 +1,60 @@ package com.ruoyi.inspect.controller; import com.baomidou.mybatisplus.extension.plugins.pagination.Page; import com.ruoyi.common.core.domain.Result; import com.ruoyi.inspect.dto.WorkShopDto; import com.ruoyi.inspect.service.WorkShopFileService; import com.ruoyi.inspect.service.WorkShopService; import io.swagger.annotations.Api; import io.swagger.annotations.ApiOperation; import lombok.AllArgsConstructor; import org.springframework.web.bind.annotation.*; import org.springframework.web.multipart.MultipartFile; @RestController @AllArgsConstructor @RequestMapping("/workShop") @Api(tags = "车é´") public class WorkShopController { private WorkShopService workShopService; private WorkShopFileService workShopFileService; @ApiOperation(value = "æ¥è¯¢è½¦é´åç§°") @GetMapping("/selectWorkShop") public Result selectInsOrderParameter(Page page, WorkShopDto workShopDto) { return Result.success(workShopService.selectWorkShop(page, workShopDto)); } @ApiOperation(value = "æ·»å 车é´åç§°æ°æ®") @PostMapping("/addOrUpdateWorkShop") public Result<?> addWorkShop(@RequestBody WorkShopDto workShopDto) { return Result.success(workShopService.addWorkShop(workShopDto)); } @ApiOperation(value = "å 餿£éªå模æ¿") @DeleteMapping("/delWorkShop") public Result<?> delWorkShop(Integer id) { return Result.success(workShopService.delWorkShop(id)); } @ApiOperation(value = "è½¦é´æä»¶ä¸ä¼ ") @PostMapping("/uploadFile") public Result uploadFile(Integer id, MultipartFile file) { return Result.success(workShopService.uploadFile(id,file)); } @ApiOperation(value = "æ¥è¯¢è½¦é´æä»¶") @GetMapping("/fileList") public Result fileList() { return Result.success(workShopFileService.list()); } @ApiOperation(value = "å é¤éä»¶") @DeleteMapping("/delFile") public Result<?> delFile(Integer id) { return Result.success(workShopFileService.removeById(id)); } } inspect-server/src/main/java/com/ruoyi/inspect/dto/WorkShopDto.java
¶Ô±ÈÐÂÎļþ @@ -0,0 +1,6 @@ package com.ruoyi.inspect.dto; import com.ruoyi.inspect.pojo.WorkShop; public class WorkShopDto extends WorkShop { } inspect-server/src/main/java/com/ruoyi/inspect/mapper/WorkShopFileMapper.java
¶Ô±ÈÐÂÎļþ @@ -0,0 +1,12 @@ package com.ruoyi.inspect.mapper; import com.baomidou.mybatisplus.core.mapper.BaseMapper; import com.ruoyi.inspect.pojo.WorkShopFile; /** * æ£éªåä¸çéä»¶å表 Mapper æ¥å£ * @since 2025-03-17 */ public interface WorkShopFileMapper extends BaseMapper<WorkShopFile> { } inspect-server/src/main/java/com/ruoyi/inspect/mapper/WorkShopMapper.java
¶Ô±ÈÐÂÎļþ @@ -0,0 +1,12 @@ package com.ruoyi.inspect.mapper; import com.baomidou.mybatisplus.core.mapper.BaseMapper; import com.ruoyi.inspect.pojo.WorkShop; /** * @description é对表ãwork_shop(车é´åç§°)ãçæ°æ®åºæä½Mapper * @createDate 2024-03-12 16:17:55 * @Entity com.yuanchu.mom.pojo.InsOrder */ public interface WorkShopMapper extends BaseMapper<WorkShop> { } inspect-server/src/main/java/com/ruoyi/inspect/pojo/WorkShop.java
¶Ô±ÈÐÂÎļþ @@ -0,0 +1,32 @@ package com.ruoyi.inspect.pojo; import com.baomidou.mybatisplus.annotation.IdType; import com.baomidou.mybatisplus.annotation.TableId; import com.baomidou.mybatisplus.annotation.TableName; import io.swagger.annotations.ApiModelProperty; import lombok.Data; import java.io.Serializable; /** * 车é´åç§° * @TableName work_shop */ @Data @TableName("work_shop") public class WorkShop implements Serializable { /** * 主é®id */ @ApiModelProperty(value = "主é®id") @TableId(type = IdType.AUTO) private Long id; /** * ç¼å· */ @ApiModelProperty(value = "车é´åç§°") private String name; } inspect-server/src/main/java/com/ruoyi/inspect/pojo/WorkShopFile.java
¶Ô±ÈÐÂÎļþ @@ -0,0 +1,47 @@ package com.ruoyi.inspect.pojo; import com.baomidou.mybatisplus.annotation.*; import io.swagger.annotations.ApiModel; import io.swagger.annotations.ApiModelProperty; import lombok.Getter; import lombok.Setter; import java.time.LocalDateTime; @Getter @Setter @TableName("work_shop_file") @ApiModel(value = "WorkShopFile对象", description = "车é´åç§°çéä»¶å表") public class WorkShopFile { @TableId(value = "id", type = IdType.AUTO) private Integer id; @ApiModelProperty("å ³è æ£éªåå¤é®id") private Integer workShopId; @ApiModelProperty("ç±»å") private Integer type; @ApiModelProperty("éä»¶è·¯å¾") private String fileUrl; @ApiModelProperty("éä»¶åç§°") private String fileName; @TableField(fill = FieldFill.INSERT) private Integer createUser; @ApiModelProperty("ä¸ä¼ 人") @TableField(exist = false, select = false) private String name; @TableField(fill = FieldFill.INSERT) @ApiModelProperty("ä¸ä¼ æ¶é´") private LocalDateTime createTime; @TableField(fill = FieldFill.INSERT_UPDATE) private Integer updateUser; @TableField(fill = FieldFill.INSERT_UPDATE) private LocalDateTime updateTime; } inspect-server/src/main/java/com/ruoyi/inspect/service/WorkShopFileService.java
¶Ô±ÈÐÂÎļþ @@ -0,0 +1,12 @@ package com.ruoyi.inspect.service; import com.baomidou.mybatisplus.extension.service.IService; import com.ruoyi.inspect.pojo.WorkShop; /** * @description é对表ãwork_shop(车é´åç§°)ãçæ°æ®åºæä½Service * @createDate 2024-03-17 */ public interface WorkShopFileService extends IService<WorkShop> { } inspect-server/src/main/java/com/ruoyi/inspect/service/WorkShopService.java
¶Ô±ÈÐÂÎļþ @@ -0,0 +1,23 @@ package com.ruoyi.inspect.service; 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.inspect.dto.WorkShopDto; import com.ruoyi.inspect.pojo.WorkShop; import org.springframework.web.multipart.MultipartFile; /** * @description é对表ãwork_shop(车é´åç§°)ãçæ°æ®åºæä½Service * @createDate 2024-03-17 */ public interface WorkShopService extends IService<WorkShop> { IPage<WorkShopDto> selectWorkShop(Page page, WorkShopDto workShopDto); int addWorkShop(WorkShopDto workShopDto); int delWorkShop(Integer id); int uploadFile(Integer id, MultipartFile file); } inspect-server/src/main/java/com/ruoyi/inspect/service/impl/WorkShopServiceImpl.java
¶Ô±ÈÐÂÎļþ @@ -0,0 +1,115 @@ package com.ruoyi.inspect.service.impl; import cn.hutool.core.lang.UUID; 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.common.utils.QueryWrappers; import com.ruoyi.common.utils.SecurityUtils; import com.ruoyi.inspect.dto.WorkShopDto; import com.ruoyi.inspect.mapper.*; import com.ruoyi.inspect.pojo.*; import com.ruoyi.inspect.service.*; import org.springframework.beans.factory.annotation.Value; import org.springframework.stereotype.Service; import org.springframework.web.multipart.MultipartFile; import javax.annotation.Resource; import java.io.File; import java.time.LocalDateTime; import java.time.format.DateTimeFormatter; /** * @description é对表ãwork_shop(车é´åç§°)ãçæ°æ®åºæä½Serviceå®ç° * @createDate 2024-03-12 16:17:55 */ @Service public class WorkShopServiceImpl extends ServiceImpl<WorkShopMapper, WorkShop> implements WorkShopService { @Resource private WorkShopMapper workShopMapper; @Resource private WorkShopFileMapper workShopFileMapper; @Value("${wordUrl}") private String wordUrl; @Value("${file.path}") private String imgUrl; @Override public IPage<WorkShopDto> selectWorkShop(Page page, WorkShopDto workShopDto) { return workShopMapper.selectPage(page, QueryWrappers.queryWrappers(workShopDto)); } @Override public int addWorkShop(WorkShopDto workShopDto) { if (workShopDto.getId() == null) { return workShopMapper.insert(workShopDto); } else { return workShopMapper.updateById(workShopDto); } } @Override public int delWorkShop(Integer id) { return workShopMapper.deleteById(id); } @Override public int uploadFile(Integer id, MultipartFile file) { String username = SecurityUtils.getUsername(); String urlString; String pathName; String path; String filename = file.getOriginalFilename(); String contentType = file.getContentType(); WorkShopFile workShopFile = new WorkShopFile(); workShopFile.setWorkShopId(id); workShopFile.setFileName(filename); if (contentType != null && contentType.startsWith("image/")) { // æ¯å¾ç path = imgUrl; workShopFile.setType(1); } else { // æ¯æä»¶ path = wordUrl; workShopFile.setType(2); } try { // 1. è§£æç»å¯¹è·¯å¾ï¼ä¼å 使ç¨é ç½®çç»å¯¹è·¯å¾ï¼å¦ååºäºé¡¹ç®æ ¹ç®å½ï¼ String basePath = imgUrl.startsWith(File.separator) ? imgUrl : System.getProperty("user.dir") + File.separator + imgUrl; File realpath = new File(basePath); // 2. å建ç®å½ï¼è®°å½æ¥å¿ï¼æ£æ¥æ¯å¦æåï¼ if (!realpath.exists()) { if (!realpath.mkdirs()) { System.err.println("ç®å½å建失败ï¼{}"); return 0; } } // 3. çæå¯ä¸æä»¶å String uuid = UUID.randomUUID().toString().replace("-", ""); String suffix = filename.substring(filename.lastIndexOf(".")); pathName = LocalDateTime.now().format(DateTimeFormatter.ofPattern("yyyyMMddHHmmss")) + "_" + uuid + suffix; File targetFile = new File(realpath, pathName); // 4. ä¿åæä»¶ file.transferTo(targetFile); workShopFile.setFileUrl(pathName); workShopFile.setName(username); return workShopFileMapper.insert(workShopFile); } catch (Exception e) { e.printStackTrace(); System.err.println("éä»¶ä¸ä¼ é误"); return 0; } } }