From 5322edbcc5529864aaea26d78289df7a8a36fb77 Mon Sep 17 00:00:00 2001 From: 李林 <z1292839451@163.com> Date: 星期四, 20 七月 2023 11:25:18 +0800 Subject: [PATCH] Merge remote-tracking branch 'origin/master' --- sys/src/test/java/com/yuanchu/limslaboratory/SysApplicationTests.java | 11 - standard-server/src/main/java/com/yuanchu/limslaboratory/service/StandardsService.java | 16 ++ standard-server/src/main/java/com/yuanchu/limslaboratory/controller/SerialNumberController.java | 23 +++ standard-server/src/main/java/com/yuanchu/limslaboratory/controller/ProductController.java | 22 +- standard-server/src/main/java/com/yuanchu/limslaboratory/service/impl/StandardsServiceImpl.java | 42 +++++ standard-server/src/main/java/com/yuanchu/limslaboratory/service/impl/ProductServiceImpl.java | 30 ++- standard-server/src/main/java/com/yuanchu/limslaboratory/service/impl/SpecificationsServiceImpl.java | 46 ++++- standard-server/src/main/java/com/yuanchu/limslaboratory/service/SerialNumberService.java | 25 +++ standard-server/src/main/java/com/yuanchu/limslaboratory/service/SpecificationsService.java | 5 standard-server/src/main/java/com/yuanchu/limslaboratory/service/impl/SerialNumberServiceImpl.java | 58 +++++++ standard-server/src/main/java/com/yuanchu/limslaboratory/controller/StandardsController.java | 26 +++ standard-server/src/main/java/com/yuanchu/limslaboratory/pojo/SerialNumber.java | 1 standard-server/src/main/java/com/yuanchu/limslaboratory/service/MaterialService.java | 8 standard-server/src/main/java/com/yuanchu/limslaboratory/service/impl/MaterialServiceImpl.java | 50 ++++-- standard-server/src/main/java/com/yuanchu/limslaboratory/controller/MaterialController.java | 2 standard-server/src/main/java/com/yuanchu/limslaboratory/service/ProductService.java | 6 standard-server/src/main/java/com/yuanchu/limslaboratory/controller/SpecificationsController.java | 4 17 files changed, 291 insertions(+), 84 deletions(-) diff --git a/standard-server/src/main/java/com/yuanchu/limslaboratory/controller/MaterialController.java b/standard-server/src/main/java/com/yuanchu/limslaboratory/controller/MaterialController.java index 4eb8a23..7ce1a8b 100644 --- a/standard-server/src/main/java/com/yuanchu/limslaboratory/controller/MaterialController.java +++ b/standard-server/src/main/java/com/yuanchu/limslaboratory/controller/MaterialController.java @@ -57,7 +57,7 @@ @ApiImplicitParams(value = { @ApiImplicitParam(value = "鐗╂枡ID", name = "materialId", dataTypeClass = String.class) }) - public Result<?> deleteMaterialInformation(Integer materialId) { + public Result<?> deleteMaterialInformation(String materialId) { Integer isDeleteMaterialSuccess = materialService.deleteMaterialInformation(materialId); if (isDeleteMaterialSuccess == 1) { return Result.success("鍒犻櫎鎴愬姛锛�"); diff --git a/standard-server/src/main/java/com/yuanchu/limslaboratory/controller/ProductController.java b/standard-server/src/main/java/com/yuanchu/limslaboratory/controller/ProductController.java index 62c8682..ae95e8a 100644 --- a/standard-server/src/main/java/com/yuanchu/limslaboratory/controller/ProductController.java +++ b/standard-server/src/main/java/com/yuanchu/limslaboratory/controller/ProductController.java @@ -51,13 +51,13 @@ @ApiImplicitParams(value = { @ApiImplicitParam(value = "鐗╂枡ID", name = "materialId", dataTypeClass = String.class) }) - public Result<?> getListProductInformation(Integer materialId) { + public Result<?> getListProductInformation(String materialId) { List<Map<String, Object>> listMaterialInformation = productService.getListProductInformation(materialId); return Result.success(listMaterialInformation); } @ApiOperation("鐗╂枡搴�-->鏍规嵁娴嬭瘯鏍囧噯ID鏌ヨ鍩烘湰淇℃伅") - @GetMapping("/delete") + @GetMapping("/productId") @ApiImplicitParams(value = { @ApiImplicitParam(value = "娴嬭瘯鏍囧噯ID", name = "productId", dataTypeClass = String.class) }) @@ -79,13 +79,13 @@ return Result.fail("鍒犻櫎澶辫触锛�"); } -// @ApiOperation("鐗╂枡搴�-->淇敼鐗╂枡") -// @PutMapping("/update") -// public Result<?> updateMaterialInformation(@RequestBody Material material) { -// Integer isUpdateMaterialSuccess = materialService.updateMaterialInformation(material); -// if (isUpdateMaterialSuccess == 1) { -// return Result.success("淇敼鐗╂枡銆�"+ material.getName() +"銆戞垚鍔燂紒"); -// } -// return Result.fail("淇敼鐗╂枡銆�"+ material.getName() +"銆戝け璐ワ紒"); -// } + @ApiOperation("鐗╂枡搴�-->鏍规嵁娴嬭瘯鏍囧噯Id淇敼鏁版嵁") + @PutMapping("/update") + public Result<?> updateMaterialInformation(@RequestBody Product product) { + Integer isUpdateMaterialSuccess = productService.updateMaterialInformation(product); + if (isUpdateMaterialSuccess == 1) { + return Result.success("淇敼銆�"+ product.getName() +"銆戞垚鍔燂紒"); + } + return Result.fail("淇敼銆�"+ product.getName() +"銆戝け璐ワ紒"); + } } diff --git a/standard-server/src/main/java/com/yuanchu/limslaboratory/controller/SerialNumberController.java b/standard-server/src/main/java/com/yuanchu/limslaboratory/controller/SerialNumberController.java index 96d1770..6fd9faa 100644 --- a/standard-server/src/main/java/com/yuanchu/limslaboratory/controller/SerialNumberController.java +++ b/standard-server/src/main/java/com/yuanchu/limslaboratory/controller/SerialNumberController.java @@ -64,4 +64,27 @@ map.put("total", selectStandards.getTotal()); return Result.success(map); } + + @ApiOperation("鏍囧噯搴�-->鏍规嵁Id淇敼鍨嬪彿鍙傛暟") + @PutMapping("/update") + public Result<?> updateSerialNumberInformation(@RequestHeader("X-Token") String token, @RequestBody SerialNumber serialNumber) throws Exception { + Object object = RedisUtil.get(token); + Map<String, Object> unmarshal = JackSonUtil.unmarshal(JackSonUtil.marshal(object), Map.class); + serialNumber.setUserId((Integer) unmarshal.get("id")); + Integer isUpdateSerialNumberSuccess = serialNumberService.updateSerialNumberInformation(serialNumber); + if (isUpdateSerialNumberSuccess == 1){ + return Result.success("鏇存柊鎴愬姛锛�"); + } + return Result.fail("鏇存柊澶辫触锛�"); + } + + @ApiOperation("鏍囧噯搴�-->鏍规嵁Id鍒犻櫎鍨嬪彿") + @DeleteMapping("/delete") + public Result<?> deleteSerialNumberInformation(String serialNumberId) { + Integer isDeleteSerialNumberSuccess = serialNumberService.deleteSerialNumberInformation(serialNumberId); + if (isDeleteSerialNumberSuccess == 1){ + return Result.success("鍒犻櫎鎴愬姛锛�"); + } + return Result.fail("鍒犻櫎澶辫触锛�"); + } } diff --git a/standard-server/src/main/java/com/yuanchu/limslaboratory/controller/SpecificationsController.java b/standard-server/src/main/java/com/yuanchu/limslaboratory/controller/SpecificationsController.java index db9cd47..0edbaab 100644 --- a/standard-server/src/main/java/com/yuanchu/limslaboratory/controller/SpecificationsController.java +++ b/standard-server/src/main/java/com/yuanchu/limslaboratory/controller/SpecificationsController.java @@ -88,10 +88,10 @@ @ApiOperation("鏍囧噯搴�-->浜у搧瑙勬牸-->鍒犻櫎") @ApiImplicitParams(value = { - @ApiImplicitParam(name = "specificationsId", value = "瑙勬牸Id", dataTypeClass = String.class, required = true) + @ApiImplicitParam(name = "specificationsId", value = "瑙勬牸Id", dataTypeClass = Integer.class, required = true) }) @DeleteMapping("/delete") - public Result<?> deleteSpecificationsInformation(String specificationsId) { + public Result<?> deleteSpecificationsInformation(Integer specificationsId) { Integer isStandardsSuccess = specificationsService.deleteSpecifications(specificationsId); if (isStandardsSuccess == 1) { return Result.success("鍒犻櫎鎴愬姛锛�"); diff --git a/standard-server/src/main/java/com/yuanchu/limslaboratory/controller/StandardsController.java b/standard-server/src/main/java/com/yuanchu/limslaboratory/controller/StandardsController.java index efc64de..e101634 100644 --- a/standard-server/src/main/java/com/yuanchu/limslaboratory/controller/StandardsController.java +++ b/standard-server/src/main/java/com/yuanchu/limslaboratory/controller/StandardsController.java @@ -43,9 +43,6 @@ @PostMapping("/add") public Result<?> addStandardsInformation(@RequestHeader("X-Token") String token, @RequestBody Standards standards) throws Exception { Object object = RedisUtil.get(token); - if (ObjectUtils.isEmpty(object)){ - return Result.fail("瀵逛笉璧锋坊鍔犲け璐ワ紝璇锋坊鍔燭oken锛�"); - } Map<String, Object> unmarshal = JackSonUtil.unmarshal(JackSonUtil.marshal(object), Map.class); standards.setUserId((Integer) unmarshal.get("id")); Integer isStandardsSuccess = standardsService.addStandardsInformation(standards); @@ -76,4 +73,27 @@ map.put("total", listPage.getTotal()); return Result.success(map); } + + @ApiOperation("鏍囧噯搴�-->鏍规嵁Id淇敼鍙傛暟") + @PutMapping("/update") + public Result<?> updateStandardsInformation(@RequestHeader("X-Token") String token, @RequestBody Standards standards) throws Exception { + Object object = RedisUtil.get(token); + Map<String, Object> unmarshal = JackSonUtil.unmarshal(JackSonUtil.marshal(object), Map.class); + standards.setUserId((Integer) unmarshal.get("id")); + Integer isUpdateSuccess = standardsService.updateStandardsInformation(standards); + if (isUpdateSuccess == 1){ + return Result.success("鏇存柊鎴愬姛锛�"); + } + return Result.fail("鏇存柊澶辫触锛�"); + } + + @ApiOperation("鏍囧噯搴�-->鏍规嵁ID鍒犻櫎鏁版嵁") + @DeleteMapping("/delete") + public Result<?> deleteStandardsInformation(String standardsId) { + Integer isDeleteSuccess = standardsService.deleteStandardsInformation(standardsId); + if (isDeleteSuccess == 1){ + return Result.success("鍒犻櫎鎴愬姛锛�"); + } + return Result.fail("鍒犻櫎澶辫触锛�"); + } } diff --git a/standard-server/src/main/java/com/yuanchu/limslaboratory/pojo/SerialNumber.java b/standard-server/src/main/java/com/yuanchu/limslaboratory/pojo/SerialNumber.java index d650d56..464092d 100644 --- a/standard-server/src/main/java/com/yuanchu/limslaboratory/pojo/SerialNumber.java +++ b/standard-server/src/main/java/com/yuanchu/limslaboratory/pojo/SerialNumber.java @@ -1,6 +1,5 @@ package com.yuanchu.limslaboratory.pojo; -import java.time.LocalDateTime; import java.io.Serializable; import java.util.Date; diff --git a/standard-server/src/main/java/com/yuanchu/limslaboratory/service/MaterialService.java b/standard-server/src/main/java/com/yuanchu/limslaboratory/service/MaterialService.java index b355c3c..034b5e3 100644 --- a/standard-server/src/main/java/com/yuanchu/limslaboratory/service/MaterialService.java +++ b/standard-server/src/main/java/com/yuanchu/limslaboratory/service/MaterialService.java @@ -31,7 +31,7 @@ * @param materialId * @return */ - Integer deleteMaterialInformation(Integer materialId); + Integer deleteMaterialInformation(String materialId); /** * 鏇存柊Material鐨勬暟鎹� @@ -41,11 +41,11 @@ Integer updateMaterialInformation(Material material); /** - * 鍒犻櫎绛変簬SpecificationId鐨勬暟鎹� - * @param specificationsId + * 鍒犻櫎绛変簬SpecificationsId鐨勭墿鏂欐暟鎹� + * @param deleteSpecificationsId * @return */ - List<String> deleteMaterialEqSpecification(String specificationsId); + List<String> specificationsIdDeleteMaterial(List<Integer> deleteSpecificationsId); Map selectMaterialById(String materialId); } diff --git a/standard-server/src/main/java/com/yuanchu/limslaboratory/service/ProductService.java b/standard-server/src/main/java/com/yuanchu/limslaboratory/service/ProductService.java index 7733f7f..66bb330 100644 --- a/standard-server/src/main/java/com/yuanchu/limslaboratory/service/ProductService.java +++ b/standard-server/src/main/java/com/yuanchu/limslaboratory/service/ProductService.java @@ -22,11 +22,13 @@ Integer addProductInformation(Product product); - List<Map<String, Object>> getListProductInformation(Integer materialId); + List<Map<String, Object>> getListProductInformation(String materialId); Map<String, Object> getProductInformation(Integer productId); Integer deleteProductInformation(Integer productId); - void deleteProductEqMaterialId(List<String> materialListId); + void MaterialIdDeleteProduct(List<String> deleteMaterialId); + + Integer updateMaterialInformation(Product product); } diff --git a/standard-server/src/main/java/com/yuanchu/limslaboratory/service/SerialNumberService.java b/standard-server/src/main/java/com/yuanchu/limslaboratory/service/SerialNumberService.java index 8b34b30..ed9ffe5 100644 --- a/standard-server/src/main/java/com/yuanchu/limslaboratory/service/SerialNumberService.java +++ b/standard-server/src/main/java/com/yuanchu/limslaboratory/service/SerialNumberService.java @@ -4,6 +4,7 @@ import com.baomidou.mybatisplus.extension.plugins.pagination.Page; import com.yuanchu.limslaboratory.pojo.SerialNumber; import com.baomidou.mybatisplus.extension.service.IService; +import org.springframework.transaction.annotation.Transactional; import java.util.List; import java.util.Map; @@ -25,6 +26,13 @@ */ Integer addSerialNumberInformation(SerialNumber serialNumber); + /** + * 鍒嗛〉鏌ヨ + * @param idOrNameOfSerialNumber + * @param standardsId + * @param page + * @return + */ IPage<Map<String, Object>> listSerialNumberInformation(String idOrNameOfSerialNumber, String standardsId, Page<Object> page); /** @@ -33,4 +41,21 @@ * @return */ List<Map<String, Object>> selectIdSerialNumberInformation(String id); + + /** + * 鏍规嵁Id淇敼鍚嶇О + * @param serialNumber + * @return + */ + Integer updateSerialNumberInformation(SerialNumber serialNumber); + + List<String> StandardsIdDeleteSerialNumber(String standardsId); + + /** + * 鏍规嵁鍨嬪彿Id鍒犻櫎鏁版嵁 + * @param serialNumberId + * @return + */ + @Transactional(rollbackFor = Exception.class) + Integer deleteSerialNumberInformation(String serialNumberId); } diff --git a/standard-server/src/main/java/com/yuanchu/limslaboratory/service/SpecificationsService.java b/standard-server/src/main/java/com/yuanchu/limslaboratory/service/SpecificationsService.java index 1a67143..9f85e64 100644 --- a/standard-server/src/main/java/com/yuanchu/limslaboratory/service/SpecificationsService.java +++ b/standard-server/src/main/java/com/yuanchu/limslaboratory/service/SpecificationsService.java @@ -8,6 +8,7 @@ import org.springframework.transaction.annotation.Transactional; import javax.annotation.Resource; +import java.util.List; import java.util.Map; import java.util.Objects; @@ -35,5 +36,7 @@ * @return */ @Transactional(rollbackFor = Exception.class) - Integer deleteSpecifications(String specificationsId); + Integer deleteSpecifications(Integer specificationsId); + + List<Integer> SerialNumberIdDeleteSpecifications(List<String> deleteSerialNumberId); } diff --git a/standard-server/src/main/java/com/yuanchu/limslaboratory/service/StandardsService.java b/standard-server/src/main/java/com/yuanchu/limslaboratory/service/StandardsService.java index d22fcda..ee3b5ef 100644 --- a/standard-server/src/main/java/com/yuanchu/limslaboratory/service/StandardsService.java +++ b/standard-server/src/main/java/com/yuanchu/limslaboratory/service/StandardsService.java @@ -4,6 +4,7 @@ import com.baomidou.mybatisplus.extension.plugins.pagination.Page; import com.yuanchu.limslaboratory.pojo.Standards; import com.baomidou.mybatisplus.extension.service.IService; +import org.springframework.transaction.annotation.Transactional; import java.util.List; import java.util.Map; @@ -28,4 +29,19 @@ Boolean standardsIsNull(String Id); IPage<Map<String, Object>> listPageStandardsInformation(Page<Object> page, String idOrNameOfStandards); + + /** + * 鏍规嵁Id淇敼瀛楁 + * @param standards + * @return + */ + Integer updateStandardsInformation(Standards standards); + + /** + * 鏍规嵁鏍囧噯Id鍒犻櫎鏁版嵁 + * @param standardsId + * @return + */ + @Transactional(rollbackFor = Exception.class) + Integer deleteStandardsInformation(String standardsId); } diff --git a/standard-server/src/main/java/com/yuanchu/limslaboratory/service/impl/MaterialServiceImpl.java b/standard-server/src/main/java/com/yuanchu/limslaboratory/service/impl/MaterialServiceImpl.java index 56a9a88..98c4cc0 100644 --- a/standard-server/src/main/java/com/yuanchu/limslaboratory/service/impl/MaterialServiceImpl.java +++ b/standard-server/src/main/java/com/yuanchu/limslaboratory/service/impl/MaterialServiceImpl.java @@ -4,8 +4,13 @@ import com.baomidou.mybatisplus.core.conditions.update.LambdaUpdateWrapper; import com.yuanchu.limslaboratory.pojo.Material; import com.yuanchu.limslaboratory.mapper.MaterialMapper; +import com.yuanchu.limslaboratory.pojo.Specifications; import com.yuanchu.limslaboratory.service.MaterialService; import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl; +import com.yuanchu.limslaboratory.service.ProductService; +import com.yuanchu.limslaboratory.utils.MyUtil; +import org.springframework.beans.factory.annotation.Autowired; +import org.springframework.beans.factory.annotation.Autowired; import org.springframework.stereotype.Service; import org.springframework.util.ObjectUtils; @@ -38,6 +43,9 @@ return materialMapper.selectMaterialById(materialId); } + @Autowired + private ProductService productService; + @Override public Integer addMaterialInformation(Material material) { return materialMapper.insert(material); @@ -52,10 +60,18 @@ } @Override - public Integer deleteMaterialInformation(Integer materialId) { - LambdaQueryWrapper<Material> wrapper = new LambdaQueryWrapper<>(); - wrapper.eq(Material::getId, materialId); - return materialMapper.delete(wrapper); + public Integer deleteMaterialInformation(String materialId) { + LambdaUpdateWrapper<Material> updateWrapper = new LambdaUpdateWrapper<>(); + updateWrapper.eq(Material::getId, materialId); + updateWrapper.set(Material::getState, 0); + List<String> list = new ArrayList<>(); + list.add(materialId); + int isDeleteSuccess = materialMapper.update(new Material(), updateWrapper); + if (isDeleteSuccess == 1){ + productService.MaterialIdDeleteProduct(list); + return 1; + } + return 0; } @Override @@ -67,21 +83,21 @@ } @Override - public List<String> deleteMaterialEqSpecification(String specificationsId) { - LambdaQueryWrapper<Material> wrapper = new LambdaQueryWrapper<>(); - wrapper.eq(Material::getSpecificationsId, specificationsId); - wrapper.select(Material::getId); - List<Material> materials = materialMapper.selectList(wrapper); - if (!ObjectUtils.isEmpty(materials)){ - List<String> list = new ArrayList<>(); - for (Material material:materials){ + public List<String> specificationsIdDeleteMaterial(List<Integer> deleteSpecificationsId) { + List<String> list = new ArrayList<>(); + for (Integer serialNumberId:deleteSpecificationsId){ + LambdaQueryWrapper<Material> wrapper = new LambdaQueryWrapper<>(); + wrapper.eq(Material::getSpecificationsId, serialNumberId); + wrapper.select(Material::getId); + List<Material> maps1 = materialMapper.selectList(wrapper); + for (Material material:maps1){ + LambdaUpdateWrapper<Material> updateWrapper = new LambdaUpdateWrapper<>(); + updateWrapper.eq(Material::getId, material.getId()); + updateWrapper.set(Material::getState, 0); + materialMapper.update(new Material(), updateWrapper); list.add(material.getId()); } - int isDeleteList = materialMapper.deleteBatchIds(list); - if (isDeleteList != 0) { - return list; - } } - return null; + return list; } } diff --git a/standard-server/src/main/java/com/yuanchu/limslaboratory/service/impl/ProductServiceImpl.java b/standard-server/src/main/java/com/yuanchu/limslaboratory/service/impl/ProductServiceImpl.java index 3d20a4c..11ff370 100644 --- a/standard-server/src/main/java/com/yuanchu/limslaboratory/service/impl/ProductServiceImpl.java +++ b/standard-server/src/main/java/com/yuanchu/limslaboratory/service/impl/ProductServiceImpl.java @@ -1,6 +1,7 @@ package com.yuanchu.limslaboratory.service.impl; import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper; +import com.baomidou.mybatisplus.core.conditions.update.LambdaUpdateWrapper; import com.yuanchu.limslaboratory.pojo.Product; import com.yuanchu.limslaboratory.mapper.ProductMapper; import com.yuanchu.limslaboratory.service.ProductService; @@ -43,7 +44,7 @@ } @Override - public List<Map<String, Object>> getListProductInformation(Integer materialId) { + public List<Map<String, Object>> getListProductInformation(String materialId) { LambdaQueryWrapper<Product> wrapper = new LambdaQueryWrapper<>(); wrapper.eq(Product::getMaterialId, materialId); wrapper.select(Product::getId, Product::getName, Product::getFather); @@ -77,23 +78,26 @@ @Override public Integer deleteProductInformation(Integer productId) { - LambdaQueryWrapper<Product> wrapper = new LambdaQueryWrapper<>(); + LambdaUpdateWrapper<Product> wrapper = new LambdaUpdateWrapper<>(); wrapper.eq(Product::getId, productId); - return productMapper.delete(wrapper); + wrapper.set(Product::getState, 0); + return productMapper.update(new Product(), wrapper); } @Override - public void deleteProductEqMaterialId(List<String> materialListId) { - for (String materialId : materialListId){ - LambdaQueryWrapper<Product> wrapper = new LambdaQueryWrapper<>(); + public void MaterialIdDeleteProduct(List<String> deleteMaterialId) { + for (String materialId : deleteMaterialId){ + LambdaUpdateWrapper<Product> wrapper = new LambdaUpdateWrapper<>(); wrapper.eq(Product::getMaterialId, materialId); - wrapper.select(Product::getId); - List<Product> products = productMapper.selectList(wrapper); - List<Integer> productDeleteId = new ArrayList<>(); - for (Product product : products){ - productDeleteId.add(product.getId()); - } - productMapper.deleteBatchIds(productDeleteId); + wrapper.set(Product::getState, 0); + productMapper.update(new Product(), wrapper); } } + + @Override + public Integer updateMaterialInformation(Product product) { + LambdaUpdateWrapper<Product> updateWrapper = new LambdaUpdateWrapper<>(); + updateWrapper.eq(Product::getId, product.getId()); + return productMapper.update(product, updateWrapper); + } } diff --git a/standard-server/src/main/java/com/yuanchu/limslaboratory/service/impl/SerialNumberServiceImpl.java b/standard-server/src/main/java/com/yuanchu/limslaboratory/service/impl/SerialNumberServiceImpl.java index d52c1b7..9448406 100644 --- a/standard-server/src/main/java/com/yuanchu/limslaboratory/service/impl/SerialNumberServiceImpl.java +++ b/standard-server/src/main/java/com/yuanchu/limslaboratory/service/impl/SerialNumberServiceImpl.java @@ -1,14 +1,14 @@ package com.yuanchu.limslaboratory.service.impl; import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper; +import com.baomidou.mybatisplus.core.conditions.update.LambdaUpdateWrapper; import com.baomidou.mybatisplus.core.metadata.IPage; import com.baomidou.mybatisplus.extension.plugins.pagination.Page; import com.yuanchu.limslaboratory.pojo.SerialNumber; import com.yuanchu.limslaboratory.mapper.SerialNumberMapper; -import com.yuanchu.limslaboratory.service.SerialNumberService; +import com.yuanchu.limslaboratory.pojo.Standards; +import com.yuanchu.limslaboratory.service.*; import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl; -import com.yuanchu.limslaboratory.service.StandardsService; -import com.yuanchu.limslaboratory.service.UserService; import com.yuanchu.limslaboratory.utils.MyUtil; import org.springframework.beans.factory.annotation.Autowired; import org.springframework.stereotype.Service; @@ -39,6 +39,15 @@ @Autowired private StandardsService standardsService; + @Autowired + private SpecificationsService specificationsService; + + @Autowired + private MaterialService materialService; + + @Autowired + private ProductService productService; + @Override public Integer addSerialNumberInformation(SerialNumber serialNumber) { Boolean userIsNull = userService.userIsNull(serialNumber.getUserId()); @@ -64,4 +73,47 @@ wrapper.select(SerialNumber::getId,SerialNumber::getName); return serialNumberMapper.selectMaps(wrapper); } + + @Override + public Integer updateSerialNumberInformation(SerialNumber serialNumber) { + return serialNumberMapper.updateById(serialNumber); + } + + @Override + public List<String> StandardsIdDeleteSerialNumber(String standardsId) { + LambdaQueryWrapper<SerialNumber> wrapper = new LambdaQueryWrapper<>(); + wrapper.eq(SerialNumber::getStandardsId, standardsId); + wrapper.select(SerialNumber::getId); + List<String> serialNumberId = new ArrayList<>(); + List<SerialNumber> maps = serialNumberMapper.selectList(wrapper); + for (SerialNumber map:maps){ + LambdaUpdateWrapper<SerialNumber> updateWrapper = new LambdaUpdateWrapper<>(); + updateWrapper.eq(SerialNumber::getStandardsId, standardsId); + updateWrapper.set(SerialNumber::getState, 0); + serialNumberMapper.update(new SerialNumber(), updateWrapper); + serialNumberId.add(map.getId()); + } + return serialNumberId; + } + + @Override + public Integer deleteSerialNumberInformation(String serialNumberId) { + LambdaUpdateWrapper<SerialNumber> updateWrapper = new LambdaUpdateWrapper<>(); + updateWrapper.eq(SerialNumber::getId, serialNumberId); + updateWrapper.set(SerialNumber::getState, 0); + List<String> list = new ArrayList<>(); + list.add(serialNumberId); + int isDeleteSuccess = serialNumberMapper.update(new SerialNumber(), updateWrapper); + if (isDeleteSuccess == 1){ + List<Integer> deleteSpecificationsId = specificationsService.SerialNumberIdDeleteSpecifications(list); + if (!ObjectUtils.isEmpty(deleteSpecificationsId)){ + List<String> deleteMaterialId = materialService.specificationsIdDeleteMaterial(deleteSpecificationsId); + if (!ObjectUtils.isEmpty(deleteMaterialId)){ + productService.MaterialIdDeleteProduct(deleteMaterialId); + } + } + return 1; + } + return 0; + } } diff --git a/standard-server/src/main/java/com/yuanchu/limslaboratory/service/impl/SpecificationsServiceImpl.java b/standard-server/src/main/java/com/yuanchu/limslaboratory/service/impl/SpecificationsServiceImpl.java index f8e4807..ac60c11 100644 --- a/standard-server/src/main/java/com/yuanchu/limslaboratory/service/impl/SpecificationsServiceImpl.java +++ b/standard-server/src/main/java/com/yuanchu/limslaboratory/service/impl/SpecificationsServiceImpl.java @@ -1,18 +1,21 @@ package com.yuanchu.limslaboratory.service.impl; import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper; +import com.baomidou.mybatisplus.core.conditions.update.LambdaUpdateWrapper; import com.baomidou.mybatisplus.core.metadata.IPage; import com.baomidou.mybatisplus.extension.plugins.pagination.Page; +import com.yuanchu.limslaboratory.pojo.SerialNumber; import com.yuanchu.limslaboratory.pojo.Specifications; import com.yuanchu.limslaboratory.mapper.SpecificationsMapper; import com.yuanchu.limslaboratory.service.*; import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl; -import com.yuanchu.limslaboratory.utils.MyUtil; +import io.swagger.models.auth.In; import org.springframework.beans.factory.annotation.Autowired; import org.springframework.stereotype.Service; import org.springframework.util.ObjectUtils; import javax.annotation.Resource; +import java.util.ArrayList; import java.util.List; import java.util.Map; import java.util.Objects; @@ -78,20 +81,39 @@ } @Override - public Integer deleteSpecifications(String specificationsId) { - LambdaQueryWrapper<Specifications> wrapper = new LambdaQueryWrapper<>(); - wrapper.eq(Specifications::getId, specificationsId); - // 鍒犻櫎Specifications涓殑鏁版嵁 - int delete = specificationsMapper.delete(wrapper); - if (delete == 1){ - // 鍒犻櫎绛変簬SpecificationsId鐨凪aterial琛ㄦ牸涓殑鏁版嵁锛屽苟涓旇幏鍙栬鏁版嵁鐨処d锛岀敤浜庡垹闄roduct琛ㄦ牸涓殑鏁版嵁 - List<String> materialListId = materialService.deleteMaterialEqSpecification(specificationsId); - if (!ObjectUtils.isEmpty(materialListId)){ - // 鏍规嵁Material琛ㄨ繑鍥炵殑鍒楄〃Id锛屽垹闄roduct琛ㄤ腑鎵�鏈塎aterialId绛変簬璇ュ垪琛ㄤ腑鐨勬墍鏈夋暟鎹紝鏃犺繑鍥炲�� - productService.deleteProductEqMaterialId(materialListId); + public Integer deleteSpecifications(Integer specificationsId) { + LambdaUpdateWrapper<Specifications> updateWrapper = new LambdaUpdateWrapper<>(); + updateWrapper.eq(Specifications::getId, specificationsId); + updateWrapper.set(Specifications::getState, 0); + List<Integer> list = new ArrayList<>(); + list.add(specificationsId); + int isDeleteSuccess = specificationsMapper.update(new Specifications(), updateWrapper); + if (isDeleteSuccess == 1){ + List<String> deleteMaterialId = materialService.specificationsIdDeleteMaterial(list); + if (!ObjectUtils.isEmpty(deleteMaterialId)){ + productService.MaterialIdDeleteProduct(deleteMaterialId); } return 1; } return 0; } + + @Override + public List<Integer> SerialNumberIdDeleteSpecifications(List<String> deleteSerialNumberId) { + List<Integer> list = new ArrayList<>(); + for (String serialNumberId:deleteSerialNumberId){ + LambdaQueryWrapper<Specifications> wrapper = new LambdaQueryWrapper<>(); + wrapper.eq(Specifications::getSerialId, serialNumberId); + wrapper.select(Specifications::getId); + List<Specifications> maps1 = specificationsMapper.selectList(wrapper); + for (Specifications specifications:maps1){ + LambdaUpdateWrapper<Specifications> updateWrapper = new LambdaUpdateWrapper<>(); + updateWrapper.eq(Specifications::getId, specifications.getId()); + updateWrapper.set(Specifications::getState, 0); + specificationsMapper.update(new Specifications(), updateWrapper); + list.add(specifications.getId()); + } + } + return list; + } } diff --git a/standard-server/src/main/java/com/yuanchu/limslaboratory/service/impl/StandardsServiceImpl.java b/standard-server/src/main/java/com/yuanchu/limslaboratory/service/impl/StandardsServiceImpl.java index 13cf3f8..7eb47b0 100644 --- a/standard-server/src/main/java/com/yuanchu/limslaboratory/service/impl/StandardsServiceImpl.java +++ b/standard-server/src/main/java/com/yuanchu/limslaboratory/service/impl/StandardsServiceImpl.java @@ -1,15 +1,14 @@ package com.yuanchu.limslaboratory.service.impl; import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper; +import com.baomidou.mybatisplus.core.conditions.update.LambdaUpdateWrapper; import com.baomidou.mybatisplus.core.metadata.IPage; import com.baomidou.mybatisplus.extension.plugins.pagination.Page; import com.yuanchu.limslaboratory.pojo.Standards; import com.yuanchu.limslaboratory.mapper.StandardsMapper; import com.yuanchu.limslaboratory.pojo.User; -import com.yuanchu.limslaboratory.service.SerialNumberService; -import com.yuanchu.limslaboratory.service.StandardsService; +import com.yuanchu.limslaboratory.service.*; import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl; -import com.yuanchu.limslaboratory.service.UserService; import com.yuanchu.limslaboratory.utils.MyUtil; import org.springframework.beans.factory.annotation.Autowired; import org.springframework.context.annotation.Lazy; @@ -40,6 +39,16 @@ @Lazy @Autowired private SerialNumberService serialNumberService; + + @Lazy + @Autowired + private SpecificationsService specificationsService; + + @Autowired + private MaterialService materialService; + + @Autowired + private ProductService productService; @Override public Integer addStandardsInformation(Standards standards) { @@ -79,4 +88,31 @@ public IPage<Map<String, Object>> listPageStandardsInformation(Page<Object> page, String idOrNameOfStandards) { return standardsMapper.listPageStandardsInformation(page, idOrNameOfStandards); } + + @Override + public Integer updateStandardsInformation(Standards standards) { + return standardsMapper.updateById(standards); + } + + @Override + public Integer deleteStandardsInformation(String standardsId) { + LambdaUpdateWrapper<Standards> updateWrapper = new LambdaUpdateWrapper<>(); + updateWrapper.eq(Standards::getId, standardsId); + updateWrapper.set(Standards::getState, 0); + int isDeleteSuccess = standardsMapper.update(new Standards(), updateWrapper); + if (isDeleteSuccess == 1){ + List<String> deleteSerialNumberId = serialNumberService.StandardsIdDeleteSerialNumber(standardsId); + if (!ObjectUtils.isEmpty(deleteSerialNumberId)){ + List<Integer> deleteSpecificationsId = specificationsService.SerialNumberIdDeleteSpecifications(deleteSerialNumberId); + if (!ObjectUtils.isEmpty(deleteSpecificationsId)){ + List<String> deleteMaterialId = materialService.specificationsIdDeleteMaterial(deleteSpecificationsId); + if (!ObjectUtils.isEmpty(deleteMaterialId)){ + productService.MaterialIdDeleteProduct(deleteMaterialId); + } + } + } + return 1; + } + return 0; + } } diff --git a/sys/src/test/java/com/yuanchu/limslaboratory/SysApplicationTests.java b/sys/src/test/java/com/yuanchu/limslaboratory/SysApplicationTests.java index 3d48687..7efe309 100644 --- a/sys/src/test/java/com/yuanchu/limslaboratory/SysApplicationTests.java +++ b/sys/src/test/java/com/yuanchu/limslaboratory/SysApplicationTests.java @@ -1,21 +1,10 @@ package com.yuanchu.limslaboratory; -import com.yuanchu.limslaboratory.service.SerialNumberService; -import com.yuanchu.limslaboratory.utils.MyUtil; -import com.yuanchu.limslaboratory.utils.RedisUtil; import org.junit.jupiter.api.Test; -import org.springframework.beans.factory.annotation.Autowired; import org.springframework.boot.test.context.SpringBootTest; - -import java.text.NumberFormat; -import java.util.List; -import java.util.Map; @SpringBootTest class SysApplicationTests { - - @Autowired - private SerialNumberService serialNumberService; @Test void contextLoads() { -- Gitblit v1.9.3