diff --git a/src/main/java/com/spring/modules/sampleManagement/controller/TechnicalSpecificationController.java b/src/main/java/com/spring/modules/sampleManagement/controller/TechnicalSpecificationController.java index fc2bc4fe..00f83dfa 100644 --- a/src/main/java/com/spring/modules/sampleManagement/controller/TechnicalSpecificationController.java +++ b/src/main/java/com/spring/modules/sampleManagement/controller/TechnicalSpecificationController.java @@ -1508,4 +1508,41 @@ public class TechnicalSpecificationController { technicalSpecificationService.updateBMInkMixingColorBatch(data); return R.ok(); } + + + @PostMapping(value="/searchBMSilkScreenColor") + @ResponseBody + public R searchBMSilkScreenColor(@RequestBody SearchBMData data){ + List rows= technicalSpecificationService.searchBMSilkScreenColor(data); + return R.ok().put("rows", rows); + } + + @PostMapping(value="/saveBMSilkScreenColor") + @ResponseBody + public R saveBMSilkScreenColor(@RequestBody PlmBmSilkScreenColorData data){ + technicalSpecificationService.saveBMSilkScreenColor(data); + return R.ok(); + } + + @PostMapping(value="/deleteBMSilkScreenColor") + @ResponseBody + public R deleteBMSilkScreenColor(@RequestBody PlmBmSilkScreenColorData data){ + technicalSpecificationService.deleteBMSilkScreenColor(data); + return R.ok(); + } + + @PostMapping(value="/saveBMSilkScreenColorBatch") + @ResponseBody + public R saveBMSilkScreenColorBatch(@RequestBody PlmBmSilkScreenColorData data){ + technicalSpecificationService.saveBMSilkScreenColorBatch(data); + return R.ok(); + } + + @PostMapping(value="/updateBMSilkScreenColorBatch") + @ResponseBody + public R updateBMSilkScreenColorBatch(@RequestBody List data){ + technicalSpecificationService.updateBMSilkScreenColorBatch(data); + return R.ok(); + } + } diff --git a/src/main/java/com/spring/modules/sampleManagement/dao/TechnicalSpecificationMapper.java b/src/main/java/com/spring/modules/sampleManagement/dao/TechnicalSpecificationMapper.java index 3b9a31fe..c3e0be9f 100644 --- a/src/main/java/com/spring/modules/sampleManagement/dao/TechnicalSpecificationMapper.java +++ b/src/main/java/com/spring/modules/sampleManagement/dao/TechnicalSpecificationMapper.java @@ -1253,4 +1253,16 @@ public interface TechnicalSpecificationMapper { List selectBmRouting(@Param("site") String site, @Param("codeNo") String codeNo); void updateBMBasicInfoEntry(PlmTechnicalSpecificationSheetData inData); + + List searchBMSilkScreenColor(SearchBMData data); + + void saveBMSilkScreenColor(PlmBmSilkScreenColorData data); + + void updateBMSilkScreenColor(PlmBmSilkScreenColorData data); + + void deleteBMSilkScreenColor(PlmBmSilkScreenColorData data); + + void deleteBMSilkScreenColorByCodeNo(PlmBmSilkScreenColorData data); + + void saveBMSilkScreenColors(List colorList); } diff --git a/src/main/java/com/spring/modules/sampleManagement/data/PlmBmSilkScreenColorData.java b/src/main/java/com/spring/modules/sampleManagement/data/PlmBmSilkScreenColorData.java new file mode 100644 index 00000000..a852b9a4 --- /dev/null +++ b/src/main/java/com/spring/modules/sampleManagement/data/PlmBmSilkScreenColorData.java @@ -0,0 +1,12 @@ +package com.spring.modules.sampleManagement.data; + +import com.spring.modules.sampleManagement.entity.PlmBmPrintFlexoColor; +import com.spring.modules.sampleManagement.entity.PlmBmSilkScreenColor; +import lombok.Data; +import org.apache.ibatis.type.Alias; + +@Data +public class PlmBmSilkScreenColorData extends PlmBmSilkScreenColor { + private String inkDesc; +} + diff --git a/src/main/java/com/spring/modules/sampleManagement/entity/PlmBmSilkScreenColor.java b/src/main/java/com/spring/modules/sampleManagement/entity/PlmBmSilkScreenColor.java new file mode 100644 index 00000000..affe89e8 --- /dev/null +++ b/src/main/java/com/spring/modules/sampleManagement/entity/PlmBmSilkScreenColor.java @@ -0,0 +1,106 @@ +package com.spring.modules.sampleManagement.entity; + +import lombok.Data; + +import java.math.BigDecimal; +import java.util.Date; + +@Data +public class PlmBmSilkScreenColor { + /** + * + */ + private Integer id; + + /** + * + */ + private String site; + + /** + * + */ + private String codeNo; + + private BigDecimal showOrder; + + /** + * Print Side 正反面 + */ + private String printSide; + + /** + * 色序 + */ + private Integer order; + + /** + * 颜色参考 + */ + private String colorReference; + + /** + * 油墨代号/颜色IFS No + */ + private String inkCode; + + /** + * 颜色匹配 + */ + private String colorMatch; + + /** + * 线数(LPI) + */ + private String lpi; + + /** + * 容积(BCM) + */ + private String bcm; + + /** + * (ON /OFF) + */ + private String openFlag; + + /** + * Gallus(level%) + */ + private String gallus; + + /** + * MarkAndy(level%) + */ + private String markAndy; + + /** + * Hexiang(L/H) + */ + private String hexiang; + + /** + * temperature + */ + private String temperature; + + /** + * pressure + */ + private String pressure; + private String remark; + /** + * + */ + private Date updateDate; + + /** + * + */ + private String updateBy; + + private String resourceNo; + + private String speed; +} + diff --git a/src/main/java/com/spring/modules/sampleManagement/service/Impl/TechnicalSpecificationServiceImpl.java b/src/main/java/com/spring/modules/sampleManagement/service/Impl/TechnicalSpecificationServiceImpl.java index a8571a57..2f18fd2d 100644 --- a/src/main/java/com/spring/modules/sampleManagement/service/Impl/TechnicalSpecificationServiceImpl.java +++ b/src/main/java/com/spring/modules/sampleManagement/service/Impl/TechnicalSpecificationServiceImpl.java @@ -1397,8 +1397,6 @@ public class TechnicalSpecificationServiceImpl implements TechnicalSpecification return data; } - - @Override public List searchBMprintFlexoColor(SearchBMData data){ return technicalSpecificationMapper.searchBMprintFlexoColor(data); @@ -2442,6 +2440,80 @@ public class TechnicalSpecificationServiceImpl implements TechnicalSpecification } } + @Override + public List searchBMSilkScreenColor(SearchBMData data){ + return technicalSpecificationMapper.searchBMSilkScreenColor(data); + } + + @Override + public void saveBMSilkScreenColor(PlmBmSilkScreenColorData data) { + SysUserEntity sysUserEntity = (SysUserEntity) SecurityUtils.getSubject().getPrincipal(); + data.setUpdateBy(sysUserEntity.getUsername()); + if (data.getId() == 0) { + technicalSpecificationMapper.saveBMSilkScreenColor(data); + } else { + technicalSpecificationMapper.updateBMSilkScreenColor(data); + } + } + + @Override + public void deleteBMSilkScreenColor(PlmBmSilkScreenColorData data){ + technicalSpecificationMapper.deleteBMSilkScreenColor(data); + } + + @Override + @Transactional + public void saveBMSilkScreenColorBatch(PlmBmSilkScreenColorData data) { + // 获取人员 + SysUserEntity sysUserEntity = (SysUserEntity) SecurityUtils.getSubject().getPrincipal(); + data.setUpdateBy(sysUserEntity.getUsername()); + // 查询对象 + PlmBmBomData inData = new PlmBmBomData(); + inData.setSite(data.getSite()); + inData.setCodeNo(data.getCodeNo()); + // 数据集 + List colorList = new ArrayList<>(); + + // 删除原数据 + technicalSpecificationMapper.deleteBMSilkScreenColorByCodeNo(data); + List bomDetailEntity = technicalSpecificationMapper.getBMBomDetail(inData); + if (bomDetailEntity.size() > 1) { + throw new RuntimeException("物料编码在物料视图view_Project_final_Part中有重复!请联系管理员"); + } + if (bomDetailEntity.isEmpty()) { + throw new RuntimeException("物料BOM状态不为Buildable!请联系管理员"); + } + // 查出单位是kg的物料 + List list = bomManagementMapper.queryBomComponentByKg(bomDetailEntity.get(0)); + BigDecimal showOrder = BigDecimal.ONE; + for (BomComponentVo component : list) { + PlmBmSilkScreenColorData colorData = new PlmBmSilkScreenColorData(); + colorData.setSite(data.getSite()); + colorData.setCodeNo(data.getCodeNo()); + colorData.setOrder(component.getLineSequence()); + colorData.setShowOrder(showOrder); + colorData.setPrintSide(data.getPrintSide().substring(0, 1).toUpperCase() + data.getPrintSide().substring(1)); + colorData.setInkCode(component.getComponentPart()); + colorData.setUpdateBy(data.getUpdateBy()); + colorList.add(colorData); + showOrder = showOrder.add(BigDecimal.ONE); + } + // 批量新增 + if (!colorList.isEmpty()) { + technicalSpecificationMapper.saveBMSilkScreenColors(colorList); + } + } + + @Override + @Transactional + public void updateBMSilkScreenColorBatch(List data) { + String username = ((SysUserEntity) SecurityUtils.getSubject().getPrincipal()).getUsername(); + for (PlmBmSilkScreenColorData color : data) { + color.setUpdateBy(username); + technicalSpecificationMapper.updateBMSilkScreenColor(color); + } + } + private String symbolTrans(String symbol){ symbol = symbol == null ? "" : symbol.trim(); switch(symbol) { diff --git a/src/main/java/com/spring/modules/sampleManagement/service/TechnicalSpecificationService.java b/src/main/java/com/spring/modules/sampleManagement/service/TechnicalSpecificationService.java index 000f2d52..ee7b1953 100644 --- a/src/main/java/com/spring/modules/sampleManagement/service/TechnicalSpecificationService.java +++ b/src/main/java/com/spring/modules/sampleManagement/service/TechnicalSpecificationService.java @@ -1039,4 +1039,14 @@ public interface TechnicalSpecificationService { void updateBMInkMixingColorBatch(List data); void updateBMBasicInfoEntry(PlmTechnicalSpecificationSheetData data); + + List searchBMSilkScreenColor(SearchBMData data); + + void saveBMSilkScreenColor(PlmBmSilkScreenColorData data); + + void deleteBMSilkScreenColor(PlmBmSilkScreenColorData data); + + void saveBMSilkScreenColorBatch(PlmBmSilkScreenColorData data); + + void updateBMSilkScreenColorBatch(List data); } diff --git a/src/main/resources/mapper/sampleManagement/TechnicalSpecificationMapper.xml b/src/main/resources/mapper/sampleManagement/TechnicalSpecificationMapper.xml index b18e456d..a7d131a4 100644 --- a/src/main/resources/mapper/sampleManagement/TechnicalSpecificationMapper.xml +++ b/src/main/resources/mapper/sampleManagement/TechnicalSpecificationMapper.xml @@ -3170,4 +3170,90 @@ update_by = #{updateBy} where site = #{site} and code_no = #{codeNo} + + + + + insert into plm_bm_silkScreenColor + (site, codeNo, printSide, [order], colorReference, inkCode, colorMatch, lpi, + bcm, openFlag, gallus, markAndy, hexiang, temperature, pressure, updateDate, updateBy, remark, resource_no, speed, show_order) + values + (#{site}, #{codeNo}, #{printSide}, #{order}, #{colorReference}, #{inkCode}, #{colorMatch}, #{lpi}, + #{bcm}, #{openFlag}, #{gallus}, #{markAndy}, #{hexiang}, #{temperature}, #{pressure}, GetDate(), #{updateBy}, #{remark}, #{resourceNo}, #{speed}, #{showOrder}) + + + + update plm_bm_silkScreenColor + set printSide = #{printSide}, + [order] = #{order,jdbcType=INTEGER}, + show_order = #{showOrder}, + colorReference = #{colorReference}, + inkCode = #{inkCode}, + colorMatch = #{colorMatch}, + lpi = #{lpi}, + bcm = #{bcm}, + openFlag = #{openFlag}, + gallus = #{gallus}, + markAndy = #{markAndy}, + hexiang = #{hexiang}, + temperature = #{temperature}, + pressure = #{pressure}, + updateDate = GetDate(), + updateBy = #{updateBy}, + remark = #{remark}, + resource_no = #{resourceNo}, + speed = #{speed} + where id = #{id} + + + + delete from plm_bm_silkScreenColor + where id = #{id} + + + + delete from plm_bm_silkScreenColor + where site = #{site} and codeNo = #{codeNo} + + + + insert into plm_bm_silkScreenColor + (site, codeNo, printSide, [order], colorReference, inkCode, colorMatch, lpi, + bcm, openFlag, gallus, markAndy, hexiang, temperature, pressure, updateDate, + updateBy, remark, resource_no, speed, show_order) + values + + (#{item.site}, #{item.codeNo}, #{item.printSide}, #{item.order}, #{item.colorReference}, #{item.inkCode}, #{item.colorMatch}, #{item.lpi}, + #{item.bcm}, #{item.openFlag}, #{item.gallus}, #{item.markAndy}, #{item.hexiang}, #{item.temperature}, #{item.pressure}, GetDate(), + #{item.updateBy}, #{item.remark}, #{item.resourceNo}, #{item.speed}, #{item.showOrder}) + + \ No newline at end of file