| | |
| | | package com.whyc.controller; |
| | | |
| | | import com.whyc.dto.Response; |
| | | import com.whyc.pojo.ProductHistory; |
| | | import com.whyc.service.MaterialService; |
| | | import com.whyc.service.ProductBomService; |
| | | import com.whyc.service.ProductHistoryService; |
| | | import com.whyc.service.ProductService; |
| | | import com.whyc.pojo.Product; |
| | | import com.whyc.service.*; |
| | | import com.whyc.util.ActionUtil; |
| | | import io.swagger.annotations.Api; |
| | | import io.swagger.annotations.ApiOperation; |
| | | import org.apache.poi.openxml4j.exceptions.InvalidFormatException; |
| | | import org.springframework.beans.factory.annotation.Autowired; |
| | | import org.springframework.web.bind.annotation.GetMapping; |
| | | import org.springframework.web.bind.annotation.RequestMapping; |
| | | import org.springframework.web.bind.annotation.RequestParam; |
| | | import org.springframework.web.bind.annotation.RestController; |
| | | import org.springframework.web.bind.annotation.*; |
| | | import org.springframework.web.multipart.MultipartFile; |
| | | |
| | | import javax.servlet.http.HttpServletRequest; |
| | | import javax.servlet.http.HttpServletResponse; |
| | | import java.io.IOException; |
| | | |
| | | @Api(tags = "产品管理") |
| | | @RestController |
| | |
| | | private ProductBomService bomService; |
| | | |
| | | @Autowired |
| | | private ProductBomHistoryService bomHistoryService; |
| | | |
| | | @Autowired |
| | | private MaterialService meterService; |
| | | |
| | | @ApiOperation(value = "建立关联时查询所有的物料(不分页)",notes = "8.17修改后使用") |
| | |
| | | |
| | | @ApiOperation(value = "查询出所有的产品信息(分页加模糊查询<产品的编码,型号,名字,定制表编号>)",notes = "8.17修改后使用") |
| | | @GetMapping("getAllProduct") |
| | | public Response getAllProduct(@RequestParam(required = false) String parentCode,@RequestParam(required = false) String parentName, @RequestParam(required = false) String parentModel |
| | | , @RequestParam(required = false) String customCode, @RequestParam int pageCurr, @RequestParam int pageSize){ |
| | | return service.getAllProduct(parentCode,parentName,parentModel,customCode,pageCurr,pageSize); |
| | | public Response getAllProduct(@RequestParam(required = false) String subCode, |
| | | @RequestParam(required = false) String parentCode, |
| | | @RequestParam(required = false) String parentName, |
| | | @RequestParam(required = false) String parentModel, |
| | | @RequestParam(required = false) String customCode, |
| | | @RequestParam(required = false) Integer enabled, |
| | | @RequestParam int pageCurr, |
| | | @RequestParam int pageSize){ |
| | | return service.getAllProduct(subCode,parentCode,parentName,parentModel,customCode,enabled,pageCurr,pageSize); |
| | | } |
| | | |
| | | @ApiOperation(value = "查询出所有的产品无参不分页(产品上传的是用)",notes = "9.2修改后使用") |
| | | @GetMapping("getUpBomUseProduct") |
| | | public Response getUpBomUseProduct(){ |
| | | return service.getUpBomUseProduct(); |
| | | } |
| | | |
| | | @ApiOperation(value = "产品详情查看版本信息",notes = "8.17修改后使用") |
| | | @GetMapping("getProductVersion") |
| | | public Response getProductVersion( @RequestParam String parentModel, String customCode){ |
| | | return historyService.getProductVersion(parentModel,customCode); |
| | | public Response getProductVersion( @RequestParam String parentCode, String customCode){ |
| | | return historyService.getProductVersion(parentCode,customCode); |
| | | } |
| | | @ApiOperation(value = "根据产品id和版本查询子件及其关联的物料信息",notes = "8.17修改后使用") |
| | | @GetMapping("getBomAndMaterial") |
| | | public Response getBomAndMaterial( @RequestParam int productId, @RequestParam int version){ |
| | | return bomService.getBomAndMaterial(productId,version); |
| | | } |
| | | @ApiOperation(value = "产品下载(产品id和版本<历史版本待定>)",notes = "8.17修改后使用") |
| | | @ApiOperation(value = "产品下载(产品id和版本<当前最新版本>)",notes = "8.17修改后使用") |
| | | @GetMapping("downloadProduct") |
| | | public void downloadProduct(HttpServletRequest req, HttpServletResponse resp, @RequestParam int productId, @RequestParam int version){ |
| | | bomService.downloadProduct(req,resp,productId,version); |
| | | public void downloadProduct(HttpServletRequest req, HttpServletResponse resp, @RequestParam int productId, @RequestParam int version |
| | | , @RequestParam String oprateReason, @RequestParam String oprateInfo){ |
| | | bomService.downloadProduct(req,resp,productId,version,oprateReason,oprateInfo); |
| | | } |
| | | |
| | | @ApiOperation(value = "历史产品信息查看(根据历史产品产品id和版本查询子件及其关联的物料信息)",notes = "8.17修改后使用") |
| | | @GetMapping("getBomHistoryAndMaterial") |
| | | public Response getBomHistoryAndMaterial( @RequestParam int productId, @RequestParam int version){ |
| | | return bomHistoryService.getBomHistoryAndMaterial(productId,version); |
| | | } |
| | | |
| | | @ApiOperation(value = "历史产品信息查看(产品中有0120开头的物料其实是产品,查看产品信息)",notes = "2.8修改后使用!!!暂时无用!!!!") |
| | | @GetMapping("getBomHistoryAndMaterial_0120") |
| | | public Response getBomHistoryAndMaterial_0120( @RequestParam String parentCode, @RequestParam String parentName, @RequestParam String parentModel){ |
| | | return bomHistoryService.getBomHistoryAndMaterial_0120(parentCode,parentName,parentModel); |
| | | } |
| | | |
| | | @ApiOperation(value = "根据产品母料型号,定制单号,版本下载原始压缩包文件",notes = "11.17修改后使用") |
| | | @GetMapping("getOriginalZip") |
| | | public Response getOriginalZip(@RequestParam String parentCode, @RequestParam String parentModel,@RequestParam(required = false) String customCode,@RequestParam int version){ |
| | | return bomHistoryService.getOriginalZip(parentCode,parentModel,customCode,version); |
| | | } |
| | | |
| | | |
| | | @ApiOperation(value = "历史产品下载(产品id和版本<下载的版本>)",notes = "8.17修改后使用") |
| | | @GetMapping("downloadProductHistory") |
| | | public void downloadProductHistory(HttpServletRequest req, HttpServletResponse resp, @RequestParam int productId, @RequestParam int version |
| | | , @RequestParam String oprateReason, @RequestParam String oprateInfo){ |
| | | bomHistoryService.downloadProductHistory(req,resp,productId,version,oprateReason,oprateInfo); |
| | | } |
| | | |
| | | @ApiOperation(value = "历史版本可用性设定",notes = "8.31修改后使用") |
| | | @GetMapping("setpHistoryEnable") |
| | | public Response setpHistoryEnable( @RequestParam String parentCode, @RequestParam String customCode, @RequestParam int version,@RequestParam int enabled,@RequestParam(required = false) String reason,@RequestParam String versionTime) { |
| | | return historyService.setpHistoryEnable(parentCode, customCode, version, enabled,reason,versionTime); |
| | | } |
| | | @PostMapping("zipParse") |
| | | @ApiOperation(value = "zip解析",notes = "返回结果中,追加data3为对比结果,为key-value集合,key为diffList,addList,deleteList,diffDwgList") |
| | | public Response zipParse(@RequestParam("file") MultipartFile file,@RequestParam(required = false) String baseStr) throws IOException, InvalidFormatException { |
| | | //要做对比的产品,传入了物料(parent_code)和定制表单号(custom_code) |
| | | Product baseProduct = (baseStr==null?null:ActionUtil.getGson().fromJson(baseStr, Product.class)); |
| | | return service.zipParse(file,baseProduct); |
| | | } |
| | | |
| | | /** |
| | | * 这个接口是进行产品新增,产品bom新增的接口. |
| | | * 新增方式有很多,有直接从zip解析新增产品,也可以基于原有产品复制进行定制等.需要注意兼容! |
| | | * @param product 产品新增,bom新增,产品版本更新 |
| | | * @return |
| | | * @throws IOException |
| | | */ |
| | | @PostMapping |
| | | @ApiOperation(value = "新增",notes = "解析时返回的绝对路径,需要回传到字段fileUrl") |
| | | public Response add(@RequestBody Product product) throws IOException { |
| | | return service.add(product); |
| | | } |
| | | |
| | | @ApiOperation(value = "根据产品id查询被锁定的物料dwg和产品丝印",notes = "8.17修改后使用") |
| | | @GetMapping("getLockedByProductId") |
| | | public Response getLockedByProductId( @RequestParam int productId){ |
| | | return service.getLockedByProductId(productId); |
| | | } |
| | | |
| | | /*@GetMapping("manualUpdate") |
| | | @Transactional |
| | | public void manualUpdate(){ |
| | | //material属性转移到bom和bomHistory |
| | | bomHistoryService.updateMaterialField2BomHistory(); |
| | | bomService.updateMaterialField2Bom(); |
| | | }*/ |
| | | |
| | | @ApiOperation(tags = "反馈管理",value = "查询当前使用的所有的产品") |
| | | @GetMapping("getFkProduct") |
| | | public Response getFkProduct(){ |
| | | return service.getFkProduct(); |
| | | } |
| | | |
| | | @ApiOperation(value = "产品对比下拉选中") |
| | | @GetMapping("getCompareProduct") |
| | | public Response getCompareProduct(){ |
| | | return service.getCompareProduct(); |
| | | } |
| | | |
| | | @ApiOperation(value = "验证母料编码是否存在产品中") |
| | | @GetMapping("judgeParentCode") |
| | | public Response judgeParentCode(@RequestParam String parentCode,@RequestParam(required = false) String customCode){ |
| | | return service.judgeParentCode(parentCode,customCode); |
| | | } |
| | | } |