src/main/java/com/whyc/controller/SoftwareController.java | ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史 | |
src/main/java/com/whyc/mapper/SoftwareMapper.java | ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史 | |
src/main/java/com/whyc/pojo/Software.java | ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史 | |
src/main/java/com/whyc/service/SoftwareService.java | ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史 | |
src/main/java/com/whyc/util/CommonUtil.java | ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史 |
src/main/java/com/whyc/controller/SoftwareController.java
New file @@ -0,0 +1,55 @@ package com.whyc.controller; import com.google.gson.reflect.TypeToken; import com.whyc.dto.Response; import com.whyc.pojo.Software; import com.whyc.service.SoftwareService; import com.whyc.util.ActionUtil; import io.swagger.annotations.Api; import io.swagger.annotations.ApiOperation; import org.springframework.beans.factory.annotation.Autowired; import org.springframework.web.bind.annotation.*; import org.springframework.web.multipart.MultipartFile; import java.io.IOException; import java.util.List; @RestController @RequestMapping("software") @Api(tags = "软件包") public class SoftwareController { @Autowired private SoftwareService service; @ApiOperation("上传") @PostMapping("upload") public Response upload(@RequestParam MultipartFile file,@RequestParam String softwareStr) throws IOException { Software software = ActionUtil.getGson().fromJson(softwareStr,Software.class); return service.upload(file,software); } @GetMapping("getPage") public Response getPage(@RequestParam int pageNum,@RequestParam int pageSize, @RequestParam(required = false) String snCode, @RequestParam(required = false) String serialNumber, @RequestParam(required = false) String materialCode){ return service.getPage(pageNum,pageSize,snCode,serialNumber,materialCode); } @GetMapping("getSnCodeList") public Response getSnCodeList(){ return service.getSnCodeList(); } @GetMapping("getSerialNumberList") public Response getSerialNumberList(){ return service.getSerialNumberList(); } @GetMapping("getMaterialCodeList") public Response getMaterialCodeList(){ return service.getMaterialCodeList(); } } src/main/java/com/whyc/mapper/SoftwareMapper.java
New file @@ -0,0 +1,6 @@ package com.whyc.mapper; import com.whyc.pojo.Software; public interface SoftwareMapper extends CustomMapper<Software>{ } src/main/java/com/whyc/pojo/Software.java
New file @@ -0,0 +1,37 @@ package com.whyc.pojo; import com.baomidou.mybatisplus.annotation.IdType; import com.baomidou.mybatisplus.annotation.TableId; import com.baomidou.mybatisplus.annotation.TableName; import lombok.Data; import lombok.ToString; import org.apache.ibatis.type.Alias; import java.util.Date; @Data @ToString @Alias("Software") @TableName(schema = "db_battery_gwm",value = "tb_software") public class Software { @TableId(value = "id", type = IdType.AUTO) private Integer id; private String snCode; private String serialNumber; private String materialCode; private String fileName; private String fileUrl; private Integer uploadUserId; private String uploadUserName; private Date createTime; } src/main/java/com/whyc/service/SoftwareService.java
New file @@ -0,0 +1,94 @@ package com.whyc.service; import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper; import com.baomidou.mybatisplus.core.toolkit.Wrappers; import com.github.pagehelper.PageHelper; import com.github.pagehelper.PageInfo; import com.whyc.dto.Response; import com.whyc.mapper.SoftwareMapper; import com.whyc.pojo.Software; import com.whyc.pojo.User; import com.whyc.util.CommonUtil; import com.whyc.util.UserUtil; import org.springframework.stereotype.Service; import org.springframework.web.multipart.MultipartFile; import javax.annotation.Resource; import java.io.File; import java.io.IOException; import java.util.Date; import java.util.List; import java.util.stream.Collectors; @Service public class SoftwareService { @Resource private SoftwareMapper mapper; public Response upload(MultipartFile file, Software software) throws IOException { User user = UserUtil.getUser(); String fileName = file.getOriginalFilename(); //上传路径定义和http路径定义 String rootFile = CommonUtil.getRootFile(); String softwareDir = rootFile + "software"; String softwareHttpUrl = softwareDir.substring(softwareDir.lastIndexOf("battery_gwm_file"+ File.separator + "software")); File softwareDirFile = new File(softwareDir); if(!softwareDirFile.exists()){ softwareDirFile.mkdirs(); } //上传 file.transferTo(new File(softwareDir+File.separator+fileName)); //保存 Date now = new Date(); software.setCreateTime(now); software.setUploadUserId(user.getId()); software.setUploadUserName(user.getName()); software.setFileUrl(softwareHttpUrl+File.separator+fileName); software.setFileName(fileName); mapper.insert(software); return new Response().setII(1,"上传完成"); } public Response getPage(int pageNum, int pageSize, String snCode, String serialNumber, String materialCode) { PageHelper.startPage(pageNum, pageSize); QueryWrapper<Software> query = Wrappers.query(); if (snCode != null && !snCode.equals("")) { query.eq("sn_code", snCode); } if (serialNumber != null && !serialNumber.equals("")) { query.eq("serial_number", serialNumber); } if (materialCode != null && !materialCode.equals("")) { query.eq("material_code", materialCode); } List<Software> list = mapper.selectList(query); PageInfo<Software> pageInfo = new PageInfo<>(list); return new Response().set(1, pageInfo); } public Response getSnCodeList() { QueryWrapper<Software> query = Wrappers.query(); query.select("sn_code"); List<String> snCodeList = mapper.selectList(query).stream().map(Software::getSnCode).collect(Collectors.toList()); return new Response().set(1, snCodeList); } public Response getSerialNumberList() { QueryWrapper<Software> query = Wrappers.query(); query.select("serial_number"); List<String> serialNumberList = mapper.selectList(query).stream().map(Software::getSerialNumber).collect(Collectors.toList()); return new Response().set(1, serialNumberList); } public Response getMaterialCodeList() { QueryWrapper<Software> query = Wrappers.query(); query.select("material_code"); List<String> materialCodeList = mapper.selectList(query).stream().map(Software::getMaterialCode).collect(Collectors.toList()); return new Response().set(1, materialCodeList); } } src/main/java/com/whyc/util/CommonUtil.java
New file @@ -0,0 +1,81 @@ package com.whyc.util; import com.whyc.constant.YamlProperties; import org.springframework.boot.system.ApplicationHome; import org.springframework.stereotype.Component; import java.io.File; /** * 通用工具列 */ @Component public class CommonUtil { public static String classesPath(){ ApplicationHome applicationHome = new ApplicationHome(CommonUtil.class); File jarFile = applicationHome.getDir(); return jarFile.toString(); } /** * 获取存放文件的根路径 * @return 返回存放文件的根路径 */ public static String getRootFile(){ ApplicationHome applicationHome = new ApplicationHome(CommonUtil.class); File jarFile = applicationHome.getDir(); String baseDirPath; if(YamlProperties.runModel == 1) { //开发路径 baseDirPath = jarFile.getParentFile().toString()+File.separator+"battery_gwm_file"+File.separator; }else { //打包路径 baseDirPath = jarFile.toString()+File.separator+"battery_gwm_file"+File.separator; } return baseDirPath; } /** * 获取项目所在文件夹路径 * @return 获取项目所在文件夹路径 */ public static String getProjectDir(){ ApplicationHome applicationHome = new ApplicationHome(CommonUtil.class); File jarFile = applicationHome.getDir(); String baseDirPath; if(YamlProperties.runModel == 1) { //开发路径 baseDirPath = jarFile.getParentFile().toString(); }else { //打包路径 baseDirPath = jarFile.toString(); } return baseDirPath; } /** * 物料编码自动填充补齐 * @param code * @return */ public static String codeAutoFill(String code){ int length = code.length(); if (length == 9) { code = "0" + code; } else if (length < 9) { int centerZeroNum = 10 - length - 1; StringBuilder centerZeroStr = new StringBuilder(); for (int j = 0; j < centerZeroNum; j++) { centerZeroStr.append("0"); } String strFront = code.substring(0, 3); String strBehind = code.substring(3); code = "0" + strFront + centerZeroStr + strBehind; } return code; } }