diff --git a/casic-metering-api/src/main/java/com/casic/missiles/controller/equipment/EquipmentFixedAssetsController.java b/casic-metering-api/src/main/java/com/casic/missiles/controller/equipment/EquipmentFixedAssetsController.java index 1684d0f..c89f9e2 100644 --- a/casic-metering-api/src/main/java/com/casic/missiles/controller/equipment/EquipmentFixedAssetsController.java +++ b/casic-metering-api/src/main/java/com/casic/missiles/controller/equipment/EquipmentFixedAssetsController.java @@ -1,5 +1,6 @@ package com.casic.missiles.controller.equipment; +import cn.hutool.core.lang.Assert; import com.baomidou.mybatisplus.extension.plugins.pagination.Page; import com.casic.missiles.core.base.controller.ExportController; import com.casic.missiles.core.page.PageFactory; @@ -7,10 +8,13 @@ import com.casic.missiles.dto.IdDTO; import com.casic.missiles.dto.ReturnDTO; import com.casic.missiles.dto.ReturnUtil; +import com.casic.missiles.dto.business.dispatch.DeviceScanVO; +import com.casic.missiles.dto.business.dispatch.LabelBindDTO; import com.casic.missiles.dto.equipment.EquipmentOrSampleDto; import com.casic.missiles.dto.equipment.FixedAssetRequest; import com.casic.missiles.dto.equipment.RemindQuantityDTO; import com.casic.missiles.dto.equipment.StandardSupportEquipmentExcelData; +import com.casic.missiles.enums.BusinessExceptionEnum; import com.casic.missiles.enums.ExportEnum; import com.casic.missiles.exception.BusinessException; import com.casic.missiles.model.equipment.*; @@ -23,6 +27,7 @@ import org.springframework.beans.BeanUtils; import org.springframework.beans.factory.annotation.Autowired; import org.springframework.util.CollectionUtils; +import org.springframework.util.ObjectUtils; import org.springframework.validation.BindingResult; import org.springframework.web.bind.annotation.*; import org.springframework.web.multipart.MultipartFile; @@ -71,6 +76,16 @@ DictCodeUtils.validDictCode(equipmentFixedAssets); return iEquipmentFixedAssetsService.addFixedAsset(equipmentFixedAssets); } + + @ApiOperation("标签绑定") + @PostMapping("/label/bind") + public ReturnDTO> bindLabel(@RequestBody @Valid LabelBindDTO labelBindDTO) throws Exception { + Assert.isFalse(ObjectUtils.isEmpty(labelBindDTO.getLabel()), () -> { + throw new BusinessException(BusinessExceptionEnum.LABEL_IS_EMPTY); + }); + return iEquipmentFixedAssetsService.bindLabel(labelBindDTO); + } + /** * 固定资产更新 */ diff --git a/casic-metering-api/src/main/java/com/casic/missiles/controller/equipment/EquipmentFixedAssetsController.java b/casic-metering-api/src/main/java/com/casic/missiles/controller/equipment/EquipmentFixedAssetsController.java index 1684d0f..c89f9e2 100644 --- a/casic-metering-api/src/main/java/com/casic/missiles/controller/equipment/EquipmentFixedAssetsController.java +++ b/casic-metering-api/src/main/java/com/casic/missiles/controller/equipment/EquipmentFixedAssetsController.java @@ -1,5 +1,6 @@ package com.casic.missiles.controller.equipment; +import cn.hutool.core.lang.Assert; import com.baomidou.mybatisplus.extension.plugins.pagination.Page; import com.casic.missiles.core.base.controller.ExportController; import com.casic.missiles.core.page.PageFactory; @@ -7,10 +8,13 @@ import com.casic.missiles.dto.IdDTO; import com.casic.missiles.dto.ReturnDTO; import com.casic.missiles.dto.ReturnUtil; +import com.casic.missiles.dto.business.dispatch.DeviceScanVO; +import com.casic.missiles.dto.business.dispatch.LabelBindDTO; import com.casic.missiles.dto.equipment.EquipmentOrSampleDto; import com.casic.missiles.dto.equipment.FixedAssetRequest; import com.casic.missiles.dto.equipment.RemindQuantityDTO; import com.casic.missiles.dto.equipment.StandardSupportEquipmentExcelData; +import com.casic.missiles.enums.BusinessExceptionEnum; import com.casic.missiles.enums.ExportEnum; import com.casic.missiles.exception.BusinessException; import com.casic.missiles.model.equipment.*; @@ -23,6 +27,7 @@ import org.springframework.beans.BeanUtils; import org.springframework.beans.factory.annotation.Autowired; import org.springframework.util.CollectionUtils; +import org.springframework.util.ObjectUtils; import org.springframework.validation.BindingResult; import org.springframework.web.bind.annotation.*; import org.springframework.web.multipart.MultipartFile; @@ -71,6 +76,16 @@ DictCodeUtils.validDictCode(equipmentFixedAssets); return iEquipmentFixedAssetsService.addFixedAsset(equipmentFixedAssets); } + + @ApiOperation("标签绑定") + @PostMapping("/label/bind") + public ReturnDTO> bindLabel(@RequestBody @Valid LabelBindDTO labelBindDTO) throws Exception { + Assert.isFalse(ObjectUtils.isEmpty(labelBindDTO.getLabel()), () -> { + throw new BusinessException(BusinessExceptionEnum.LABEL_IS_EMPTY); + }); + return iEquipmentFixedAssetsService.bindLabel(labelBindDTO); + } + /** * 固定资产更新 */ diff --git a/casic-metering-dao/src/main/java/com/casic/missiles/mapper/MeterFixedAssetsMapper.java b/casic-metering-dao/src/main/java/com/casic/missiles/mapper/MeterFixedAssetsMapper.java index 866f420..9266168 100644 --- a/casic-metering-dao/src/main/java/com/casic/missiles/mapper/MeterFixedAssetsMapper.java +++ b/casic-metering-dao/src/main/java/com/casic/missiles/mapper/MeterFixedAssetsMapper.java @@ -2,6 +2,7 @@ import com.baomidou.mybatisplus.core.mapper.BaseMapper; import com.baomidou.mybatisplus.extension.plugins.pagination.Page; +import com.casic.missiles.dto.business.dispatch.LabelBindDTO; import com.casic.missiles.dto.cockpit.ExpireDeviceStatisticsResponse; import com.casic.missiles.dto.equipment.EquipmentOrSampleDto; import com.casic.missiles.dto.equipment.FixedAssetRequest; @@ -39,4 +40,8 @@ Integer selectRemindQuantity(); List selectExpireDeviceStatistics(); + + Long isBindLabel(@Param("label") String label); + + Integer bindLabel(@Param("request") LabelBindDTO request); } diff --git a/casic-metering-api/src/main/java/com/casic/missiles/controller/equipment/EquipmentFixedAssetsController.java b/casic-metering-api/src/main/java/com/casic/missiles/controller/equipment/EquipmentFixedAssetsController.java index 1684d0f..c89f9e2 100644 --- a/casic-metering-api/src/main/java/com/casic/missiles/controller/equipment/EquipmentFixedAssetsController.java +++ b/casic-metering-api/src/main/java/com/casic/missiles/controller/equipment/EquipmentFixedAssetsController.java @@ -1,5 +1,6 @@ package com.casic.missiles.controller.equipment; +import cn.hutool.core.lang.Assert; import com.baomidou.mybatisplus.extension.plugins.pagination.Page; import com.casic.missiles.core.base.controller.ExportController; import com.casic.missiles.core.page.PageFactory; @@ -7,10 +8,13 @@ import com.casic.missiles.dto.IdDTO; import com.casic.missiles.dto.ReturnDTO; import com.casic.missiles.dto.ReturnUtil; +import com.casic.missiles.dto.business.dispatch.DeviceScanVO; +import com.casic.missiles.dto.business.dispatch.LabelBindDTO; import com.casic.missiles.dto.equipment.EquipmentOrSampleDto; import com.casic.missiles.dto.equipment.FixedAssetRequest; import com.casic.missiles.dto.equipment.RemindQuantityDTO; import com.casic.missiles.dto.equipment.StandardSupportEquipmentExcelData; +import com.casic.missiles.enums.BusinessExceptionEnum; import com.casic.missiles.enums.ExportEnum; import com.casic.missiles.exception.BusinessException; import com.casic.missiles.model.equipment.*; @@ -23,6 +27,7 @@ import org.springframework.beans.BeanUtils; import org.springframework.beans.factory.annotation.Autowired; import org.springframework.util.CollectionUtils; +import org.springframework.util.ObjectUtils; import org.springframework.validation.BindingResult; import org.springframework.web.bind.annotation.*; import org.springframework.web.multipart.MultipartFile; @@ -71,6 +76,16 @@ DictCodeUtils.validDictCode(equipmentFixedAssets); return iEquipmentFixedAssetsService.addFixedAsset(equipmentFixedAssets); } + + @ApiOperation("标签绑定") + @PostMapping("/label/bind") + public ReturnDTO> bindLabel(@RequestBody @Valid LabelBindDTO labelBindDTO) throws Exception { + Assert.isFalse(ObjectUtils.isEmpty(labelBindDTO.getLabel()), () -> { + throw new BusinessException(BusinessExceptionEnum.LABEL_IS_EMPTY); + }); + return iEquipmentFixedAssetsService.bindLabel(labelBindDTO); + } + /** * 固定资产更新 */ diff --git a/casic-metering-dao/src/main/java/com/casic/missiles/mapper/MeterFixedAssetsMapper.java b/casic-metering-dao/src/main/java/com/casic/missiles/mapper/MeterFixedAssetsMapper.java index 866f420..9266168 100644 --- a/casic-metering-dao/src/main/java/com/casic/missiles/mapper/MeterFixedAssetsMapper.java +++ b/casic-metering-dao/src/main/java/com/casic/missiles/mapper/MeterFixedAssetsMapper.java @@ -2,6 +2,7 @@ import com.baomidou.mybatisplus.core.mapper.BaseMapper; import com.baomidou.mybatisplus.extension.plugins.pagination.Page; +import com.casic.missiles.dto.business.dispatch.LabelBindDTO; import com.casic.missiles.dto.cockpit.ExpireDeviceStatisticsResponse; import com.casic.missiles.dto.equipment.EquipmentOrSampleDto; import com.casic.missiles.dto.equipment.FixedAssetRequest; @@ -39,4 +40,8 @@ Integer selectRemindQuantity(); List selectExpireDeviceStatistics(); + + Long isBindLabel(@Param("label") String label); + + Integer bindLabel(@Param("request") LabelBindDTO request); } diff --git a/casic-metering-dao/src/main/java/com/casic/missiles/mapper/business/BusinessOrderSampleRelationMapper.java b/casic-metering-dao/src/main/java/com/casic/missiles/mapper/business/BusinessOrderSampleRelationMapper.java index 02f2358..f90f608 100644 --- a/casic-metering-dao/src/main/java/com/casic/missiles/mapper/business/BusinessOrderSampleRelationMapper.java +++ b/casic-metering-dao/src/main/java/com/casic/missiles/mapper/business/BusinessOrderSampleRelationMapper.java @@ -35,7 +35,7 @@ Page getSampleListByStatus(@Param("page") Page page, @Param("request") DeviceDispatchDTO request); - Long isBindLabel(@Param("label") String label); + Long isBindLabel(@Param("label") String label); Integer bindLabel(@Param("request") LabelBindDTO labelBindDTO); diff --git a/casic-metering-api/src/main/java/com/casic/missiles/controller/equipment/EquipmentFixedAssetsController.java b/casic-metering-api/src/main/java/com/casic/missiles/controller/equipment/EquipmentFixedAssetsController.java index 1684d0f..c89f9e2 100644 --- a/casic-metering-api/src/main/java/com/casic/missiles/controller/equipment/EquipmentFixedAssetsController.java +++ b/casic-metering-api/src/main/java/com/casic/missiles/controller/equipment/EquipmentFixedAssetsController.java @@ -1,5 +1,6 @@ package com.casic.missiles.controller.equipment; +import cn.hutool.core.lang.Assert; import com.baomidou.mybatisplus.extension.plugins.pagination.Page; import com.casic.missiles.core.base.controller.ExportController; import com.casic.missiles.core.page.PageFactory; @@ -7,10 +8,13 @@ import com.casic.missiles.dto.IdDTO; import com.casic.missiles.dto.ReturnDTO; import com.casic.missiles.dto.ReturnUtil; +import com.casic.missiles.dto.business.dispatch.DeviceScanVO; +import com.casic.missiles.dto.business.dispatch.LabelBindDTO; import com.casic.missiles.dto.equipment.EquipmentOrSampleDto; import com.casic.missiles.dto.equipment.FixedAssetRequest; import com.casic.missiles.dto.equipment.RemindQuantityDTO; import com.casic.missiles.dto.equipment.StandardSupportEquipmentExcelData; +import com.casic.missiles.enums.BusinessExceptionEnum; import com.casic.missiles.enums.ExportEnum; import com.casic.missiles.exception.BusinessException; import com.casic.missiles.model.equipment.*; @@ -23,6 +27,7 @@ import org.springframework.beans.BeanUtils; import org.springframework.beans.factory.annotation.Autowired; import org.springframework.util.CollectionUtils; +import org.springframework.util.ObjectUtils; import org.springframework.validation.BindingResult; import org.springframework.web.bind.annotation.*; import org.springframework.web.multipart.MultipartFile; @@ -71,6 +76,16 @@ DictCodeUtils.validDictCode(equipmentFixedAssets); return iEquipmentFixedAssetsService.addFixedAsset(equipmentFixedAssets); } + + @ApiOperation("标签绑定") + @PostMapping("/label/bind") + public ReturnDTO> bindLabel(@RequestBody @Valid LabelBindDTO labelBindDTO) throws Exception { + Assert.isFalse(ObjectUtils.isEmpty(labelBindDTO.getLabel()), () -> { + throw new BusinessException(BusinessExceptionEnum.LABEL_IS_EMPTY); + }); + return iEquipmentFixedAssetsService.bindLabel(labelBindDTO); + } + /** * 固定资产更新 */ diff --git a/casic-metering-dao/src/main/java/com/casic/missiles/mapper/MeterFixedAssetsMapper.java b/casic-metering-dao/src/main/java/com/casic/missiles/mapper/MeterFixedAssetsMapper.java index 866f420..9266168 100644 --- a/casic-metering-dao/src/main/java/com/casic/missiles/mapper/MeterFixedAssetsMapper.java +++ b/casic-metering-dao/src/main/java/com/casic/missiles/mapper/MeterFixedAssetsMapper.java @@ -2,6 +2,7 @@ import com.baomidou.mybatisplus.core.mapper.BaseMapper; import com.baomidou.mybatisplus.extension.plugins.pagination.Page; +import com.casic.missiles.dto.business.dispatch.LabelBindDTO; import com.casic.missiles.dto.cockpit.ExpireDeviceStatisticsResponse; import com.casic.missiles.dto.equipment.EquipmentOrSampleDto; import com.casic.missiles.dto.equipment.FixedAssetRequest; @@ -39,4 +40,8 @@ Integer selectRemindQuantity(); List selectExpireDeviceStatistics(); + + Long isBindLabel(@Param("label") String label); + + Integer bindLabel(@Param("request") LabelBindDTO request); } diff --git a/casic-metering-dao/src/main/java/com/casic/missiles/mapper/business/BusinessOrderSampleRelationMapper.java b/casic-metering-dao/src/main/java/com/casic/missiles/mapper/business/BusinessOrderSampleRelationMapper.java index 02f2358..f90f608 100644 --- a/casic-metering-dao/src/main/java/com/casic/missiles/mapper/business/BusinessOrderSampleRelationMapper.java +++ b/casic-metering-dao/src/main/java/com/casic/missiles/mapper/business/BusinessOrderSampleRelationMapper.java @@ -35,7 +35,7 @@ Page getSampleListByStatus(@Param("page") Page page, @Param("request") DeviceDispatchDTO request); - Long isBindLabel(@Param("label") String label); + Long isBindLabel(@Param("label") String label); Integer bindLabel(@Param("request") LabelBindDTO labelBindDTO); diff --git a/casic-metering-dao/src/main/resources/mapper/customer/CustomerSampleMapper.xml b/casic-metering-dao/src/main/resources/mapper/customer/CustomerSampleMapper.xml index 623f193..fbcdf85 100644 --- a/casic-metering-dao/src/main/resources/mapper/customer/CustomerSampleMapper.xml +++ b/casic-metering-dao/src/main/resources/mapper/customer/CustomerSampleMapper.xml @@ -250,6 +250,17 @@ #{id} + AND csi.id NOT IN + ( + SELECT sample_id + FROM business_order_sample_relation bosrr + JOIN ( + SELECT id + FROM business_order + WHERE is_del = 0 + AND (status ='2' OR status ='1' OR status ='' ) + )boo ON boo.id = bosrr.order_id + ) ORDER BY csi.create_time DESC diff --git a/casic-metering-api/src/main/java/com/casic/missiles/controller/equipment/EquipmentFixedAssetsController.java b/casic-metering-api/src/main/java/com/casic/missiles/controller/equipment/EquipmentFixedAssetsController.java index 1684d0f..c89f9e2 100644 --- a/casic-metering-api/src/main/java/com/casic/missiles/controller/equipment/EquipmentFixedAssetsController.java +++ b/casic-metering-api/src/main/java/com/casic/missiles/controller/equipment/EquipmentFixedAssetsController.java @@ -1,5 +1,6 @@ package com.casic.missiles.controller.equipment; +import cn.hutool.core.lang.Assert; import com.baomidou.mybatisplus.extension.plugins.pagination.Page; import com.casic.missiles.core.base.controller.ExportController; import com.casic.missiles.core.page.PageFactory; @@ -7,10 +8,13 @@ import com.casic.missiles.dto.IdDTO; import com.casic.missiles.dto.ReturnDTO; import com.casic.missiles.dto.ReturnUtil; +import com.casic.missiles.dto.business.dispatch.DeviceScanVO; +import com.casic.missiles.dto.business.dispatch.LabelBindDTO; import com.casic.missiles.dto.equipment.EquipmentOrSampleDto; import com.casic.missiles.dto.equipment.FixedAssetRequest; import com.casic.missiles.dto.equipment.RemindQuantityDTO; import com.casic.missiles.dto.equipment.StandardSupportEquipmentExcelData; +import com.casic.missiles.enums.BusinessExceptionEnum; import com.casic.missiles.enums.ExportEnum; import com.casic.missiles.exception.BusinessException; import com.casic.missiles.model.equipment.*; @@ -23,6 +27,7 @@ import org.springframework.beans.BeanUtils; import org.springframework.beans.factory.annotation.Autowired; import org.springframework.util.CollectionUtils; +import org.springframework.util.ObjectUtils; import org.springframework.validation.BindingResult; import org.springframework.web.bind.annotation.*; import org.springframework.web.multipart.MultipartFile; @@ -71,6 +76,16 @@ DictCodeUtils.validDictCode(equipmentFixedAssets); return iEquipmentFixedAssetsService.addFixedAsset(equipmentFixedAssets); } + + @ApiOperation("标签绑定") + @PostMapping("/label/bind") + public ReturnDTO> bindLabel(@RequestBody @Valid LabelBindDTO labelBindDTO) throws Exception { + Assert.isFalse(ObjectUtils.isEmpty(labelBindDTO.getLabel()), () -> { + throw new BusinessException(BusinessExceptionEnum.LABEL_IS_EMPTY); + }); + return iEquipmentFixedAssetsService.bindLabel(labelBindDTO); + } + /** * 固定资产更新 */ diff --git a/casic-metering-dao/src/main/java/com/casic/missiles/mapper/MeterFixedAssetsMapper.java b/casic-metering-dao/src/main/java/com/casic/missiles/mapper/MeterFixedAssetsMapper.java index 866f420..9266168 100644 --- a/casic-metering-dao/src/main/java/com/casic/missiles/mapper/MeterFixedAssetsMapper.java +++ b/casic-metering-dao/src/main/java/com/casic/missiles/mapper/MeterFixedAssetsMapper.java @@ -2,6 +2,7 @@ import com.baomidou.mybatisplus.core.mapper.BaseMapper; import com.baomidou.mybatisplus.extension.plugins.pagination.Page; +import com.casic.missiles.dto.business.dispatch.LabelBindDTO; import com.casic.missiles.dto.cockpit.ExpireDeviceStatisticsResponse; import com.casic.missiles.dto.equipment.EquipmentOrSampleDto; import com.casic.missiles.dto.equipment.FixedAssetRequest; @@ -39,4 +40,8 @@ Integer selectRemindQuantity(); List selectExpireDeviceStatistics(); + + Long isBindLabel(@Param("label") String label); + + Integer bindLabel(@Param("request") LabelBindDTO request); } diff --git a/casic-metering-dao/src/main/java/com/casic/missiles/mapper/business/BusinessOrderSampleRelationMapper.java b/casic-metering-dao/src/main/java/com/casic/missiles/mapper/business/BusinessOrderSampleRelationMapper.java index 02f2358..f90f608 100644 --- a/casic-metering-dao/src/main/java/com/casic/missiles/mapper/business/BusinessOrderSampleRelationMapper.java +++ b/casic-metering-dao/src/main/java/com/casic/missiles/mapper/business/BusinessOrderSampleRelationMapper.java @@ -35,7 +35,7 @@ Page getSampleListByStatus(@Param("page") Page page, @Param("request") DeviceDispatchDTO request); - Long isBindLabel(@Param("label") String label); + Long isBindLabel(@Param("label") String label); Integer bindLabel(@Param("request") LabelBindDTO labelBindDTO); diff --git a/casic-metering-dao/src/main/resources/mapper/customer/CustomerSampleMapper.xml b/casic-metering-dao/src/main/resources/mapper/customer/CustomerSampleMapper.xml index 623f193..fbcdf85 100644 --- a/casic-metering-dao/src/main/resources/mapper/customer/CustomerSampleMapper.xml +++ b/casic-metering-dao/src/main/resources/mapper/customer/CustomerSampleMapper.xml @@ -250,6 +250,17 @@ #{id} + AND csi.id NOT IN + ( + SELECT sample_id + FROM business_order_sample_relation bosrr + JOIN ( + SELECT id + FROM business_order + WHERE is_del = 0 + AND (status ='2' OR status ='1' OR status ='' ) + )boo ON boo.id = bosrr.order_id + ) ORDER BY csi.create_time DESC diff --git a/casic-metering-dao/src/main/resources/mapper/equipment/EquipmentFixedAssetsMapper.xml b/casic-metering-dao/src/main/resources/mapper/equipment/EquipmentFixedAssetsMapper.xml index 6721a66..715f37b 100644 --- a/casic-metering-dao/src/main/resources/mapper/equipment/EquipmentFixedAssetsMapper.xml +++ b/casic-metering-dao/src/main/resources/mapper/equipment/EquipmentFixedAssetsMapper.xml @@ -225,4 +225,19 @@ AND DATE_FORMAT(valid_date,'%Y') = DATE_FORMAT(CURDATE(),'%Y') GROUP BY DATE_FORMAT(valid_date,'%Y-%m') + + + + diff --git a/casic-metering-api/src/main/java/com/casic/missiles/controller/equipment/EquipmentFixedAssetsController.java b/casic-metering-api/src/main/java/com/casic/missiles/controller/equipment/EquipmentFixedAssetsController.java index 1684d0f..c89f9e2 100644 --- a/casic-metering-api/src/main/java/com/casic/missiles/controller/equipment/EquipmentFixedAssetsController.java +++ b/casic-metering-api/src/main/java/com/casic/missiles/controller/equipment/EquipmentFixedAssetsController.java @@ -1,5 +1,6 @@ package com.casic.missiles.controller.equipment; +import cn.hutool.core.lang.Assert; import com.baomidou.mybatisplus.extension.plugins.pagination.Page; import com.casic.missiles.core.base.controller.ExportController; import com.casic.missiles.core.page.PageFactory; @@ -7,10 +8,13 @@ import com.casic.missiles.dto.IdDTO; import com.casic.missiles.dto.ReturnDTO; import com.casic.missiles.dto.ReturnUtil; +import com.casic.missiles.dto.business.dispatch.DeviceScanVO; +import com.casic.missiles.dto.business.dispatch.LabelBindDTO; import com.casic.missiles.dto.equipment.EquipmentOrSampleDto; import com.casic.missiles.dto.equipment.FixedAssetRequest; import com.casic.missiles.dto.equipment.RemindQuantityDTO; import com.casic.missiles.dto.equipment.StandardSupportEquipmentExcelData; +import com.casic.missiles.enums.BusinessExceptionEnum; import com.casic.missiles.enums.ExportEnum; import com.casic.missiles.exception.BusinessException; import com.casic.missiles.model.equipment.*; @@ -23,6 +27,7 @@ import org.springframework.beans.BeanUtils; import org.springframework.beans.factory.annotation.Autowired; import org.springframework.util.CollectionUtils; +import org.springframework.util.ObjectUtils; import org.springframework.validation.BindingResult; import org.springframework.web.bind.annotation.*; import org.springframework.web.multipart.MultipartFile; @@ -71,6 +76,16 @@ DictCodeUtils.validDictCode(equipmentFixedAssets); return iEquipmentFixedAssetsService.addFixedAsset(equipmentFixedAssets); } + + @ApiOperation("标签绑定") + @PostMapping("/label/bind") + public ReturnDTO> bindLabel(@RequestBody @Valid LabelBindDTO labelBindDTO) throws Exception { + Assert.isFalse(ObjectUtils.isEmpty(labelBindDTO.getLabel()), () -> { + throw new BusinessException(BusinessExceptionEnum.LABEL_IS_EMPTY); + }); + return iEquipmentFixedAssetsService.bindLabel(labelBindDTO); + } + /** * 固定资产更新 */ diff --git a/casic-metering-dao/src/main/java/com/casic/missiles/mapper/MeterFixedAssetsMapper.java b/casic-metering-dao/src/main/java/com/casic/missiles/mapper/MeterFixedAssetsMapper.java index 866f420..9266168 100644 --- a/casic-metering-dao/src/main/java/com/casic/missiles/mapper/MeterFixedAssetsMapper.java +++ b/casic-metering-dao/src/main/java/com/casic/missiles/mapper/MeterFixedAssetsMapper.java @@ -2,6 +2,7 @@ import com.baomidou.mybatisplus.core.mapper.BaseMapper; import com.baomidou.mybatisplus.extension.plugins.pagination.Page; +import com.casic.missiles.dto.business.dispatch.LabelBindDTO; import com.casic.missiles.dto.cockpit.ExpireDeviceStatisticsResponse; import com.casic.missiles.dto.equipment.EquipmentOrSampleDto; import com.casic.missiles.dto.equipment.FixedAssetRequest; @@ -39,4 +40,8 @@ Integer selectRemindQuantity(); List selectExpireDeviceStatistics(); + + Long isBindLabel(@Param("label") String label); + + Integer bindLabel(@Param("request") LabelBindDTO request); } diff --git a/casic-metering-dao/src/main/java/com/casic/missiles/mapper/business/BusinessOrderSampleRelationMapper.java b/casic-metering-dao/src/main/java/com/casic/missiles/mapper/business/BusinessOrderSampleRelationMapper.java index 02f2358..f90f608 100644 --- a/casic-metering-dao/src/main/java/com/casic/missiles/mapper/business/BusinessOrderSampleRelationMapper.java +++ b/casic-metering-dao/src/main/java/com/casic/missiles/mapper/business/BusinessOrderSampleRelationMapper.java @@ -35,7 +35,7 @@ Page getSampleListByStatus(@Param("page") Page page, @Param("request") DeviceDispatchDTO request); - Long isBindLabel(@Param("label") String label); + Long isBindLabel(@Param("label") String label); Integer bindLabel(@Param("request") LabelBindDTO labelBindDTO); diff --git a/casic-metering-dao/src/main/resources/mapper/customer/CustomerSampleMapper.xml b/casic-metering-dao/src/main/resources/mapper/customer/CustomerSampleMapper.xml index 623f193..fbcdf85 100644 --- a/casic-metering-dao/src/main/resources/mapper/customer/CustomerSampleMapper.xml +++ b/casic-metering-dao/src/main/resources/mapper/customer/CustomerSampleMapper.xml @@ -250,6 +250,17 @@ #{id} + AND csi.id NOT IN + ( + SELECT sample_id + FROM business_order_sample_relation bosrr + JOIN ( + SELECT id + FROM business_order + WHERE is_del = 0 + AND (status ='2' OR status ='1' OR status ='' ) + )boo ON boo.id = bosrr.order_id + ) ORDER BY csi.create_time DESC diff --git a/casic-metering-dao/src/main/resources/mapper/equipment/EquipmentFixedAssetsMapper.xml b/casic-metering-dao/src/main/resources/mapper/equipment/EquipmentFixedAssetsMapper.xml index 6721a66..715f37b 100644 --- a/casic-metering-dao/src/main/resources/mapper/equipment/EquipmentFixedAssetsMapper.xml +++ b/casic-metering-dao/src/main/resources/mapper/equipment/EquipmentFixedAssetsMapper.xml @@ -225,4 +225,19 @@ AND DATE_FORMAT(valid_date,'%Y') = DATE_FORMAT(CURDATE(),'%Y') GROUP BY DATE_FORMAT(valid_date,'%Y-%m') + + + + diff --git a/casic-metering-model/src/main/java/com/casic/missiles/dto/business/dispatch/LabelBindDTO.java b/casic-metering-model/src/main/java/com/casic/missiles/dto/business/dispatch/LabelBindDTO.java index 4e5dc47..a501946 100644 --- a/casic-metering-model/src/main/java/com/casic/missiles/dto/business/dispatch/LabelBindDTO.java +++ b/casic-metering-model/src/main/java/com/casic/missiles/dto/business/dispatch/LabelBindDTO.java @@ -18,6 +18,6 @@ private String label; @NotNull - @ApiModelProperty("样品id") + @ApiModelProperty("样品id(测量设备中未设备主键id)") private String sampleId; } diff --git a/casic-metering-api/src/main/java/com/casic/missiles/controller/equipment/EquipmentFixedAssetsController.java b/casic-metering-api/src/main/java/com/casic/missiles/controller/equipment/EquipmentFixedAssetsController.java index 1684d0f..c89f9e2 100644 --- a/casic-metering-api/src/main/java/com/casic/missiles/controller/equipment/EquipmentFixedAssetsController.java +++ b/casic-metering-api/src/main/java/com/casic/missiles/controller/equipment/EquipmentFixedAssetsController.java @@ -1,5 +1,6 @@ package com.casic.missiles.controller.equipment; +import cn.hutool.core.lang.Assert; import com.baomidou.mybatisplus.extension.plugins.pagination.Page; import com.casic.missiles.core.base.controller.ExportController; import com.casic.missiles.core.page.PageFactory; @@ -7,10 +8,13 @@ import com.casic.missiles.dto.IdDTO; import com.casic.missiles.dto.ReturnDTO; import com.casic.missiles.dto.ReturnUtil; +import com.casic.missiles.dto.business.dispatch.DeviceScanVO; +import com.casic.missiles.dto.business.dispatch.LabelBindDTO; import com.casic.missiles.dto.equipment.EquipmentOrSampleDto; import com.casic.missiles.dto.equipment.FixedAssetRequest; import com.casic.missiles.dto.equipment.RemindQuantityDTO; import com.casic.missiles.dto.equipment.StandardSupportEquipmentExcelData; +import com.casic.missiles.enums.BusinessExceptionEnum; import com.casic.missiles.enums.ExportEnum; import com.casic.missiles.exception.BusinessException; import com.casic.missiles.model.equipment.*; @@ -23,6 +27,7 @@ import org.springframework.beans.BeanUtils; import org.springframework.beans.factory.annotation.Autowired; import org.springframework.util.CollectionUtils; +import org.springframework.util.ObjectUtils; import org.springframework.validation.BindingResult; import org.springframework.web.bind.annotation.*; import org.springframework.web.multipart.MultipartFile; @@ -71,6 +76,16 @@ DictCodeUtils.validDictCode(equipmentFixedAssets); return iEquipmentFixedAssetsService.addFixedAsset(equipmentFixedAssets); } + + @ApiOperation("标签绑定") + @PostMapping("/label/bind") + public ReturnDTO> bindLabel(@RequestBody @Valid LabelBindDTO labelBindDTO) throws Exception { + Assert.isFalse(ObjectUtils.isEmpty(labelBindDTO.getLabel()), () -> { + throw new BusinessException(BusinessExceptionEnum.LABEL_IS_EMPTY); + }); + return iEquipmentFixedAssetsService.bindLabel(labelBindDTO); + } + /** * 固定资产更新 */ diff --git a/casic-metering-dao/src/main/java/com/casic/missiles/mapper/MeterFixedAssetsMapper.java b/casic-metering-dao/src/main/java/com/casic/missiles/mapper/MeterFixedAssetsMapper.java index 866f420..9266168 100644 --- a/casic-metering-dao/src/main/java/com/casic/missiles/mapper/MeterFixedAssetsMapper.java +++ b/casic-metering-dao/src/main/java/com/casic/missiles/mapper/MeterFixedAssetsMapper.java @@ -2,6 +2,7 @@ import com.baomidou.mybatisplus.core.mapper.BaseMapper; import com.baomidou.mybatisplus.extension.plugins.pagination.Page; +import com.casic.missiles.dto.business.dispatch.LabelBindDTO; import com.casic.missiles.dto.cockpit.ExpireDeviceStatisticsResponse; import com.casic.missiles.dto.equipment.EquipmentOrSampleDto; import com.casic.missiles.dto.equipment.FixedAssetRequest; @@ -39,4 +40,8 @@ Integer selectRemindQuantity(); List selectExpireDeviceStatistics(); + + Long isBindLabel(@Param("label") String label); + + Integer bindLabel(@Param("request") LabelBindDTO request); } diff --git a/casic-metering-dao/src/main/java/com/casic/missiles/mapper/business/BusinessOrderSampleRelationMapper.java b/casic-metering-dao/src/main/java/com/casic/missiles/mapper/business/BusinessOrderSampleRelationMapper.java index 02f2358..f90f608 100644 --- a/casic-metering-dao/src/main/java/com/casic/missiles/mapper/business/BusinessOrderSampleRelationMapper.java +++ b/casic-metering-dao/src/main/java/com/casic/missiles/mapper/business/BusinessOrderSampleRelationMapper.java @@ -35,7 +35,7 @@ Page getSampleListByStatus(@Param("page") Page page, @Param("request") DeviceDispatchDTO request); - Long isBindLabel(@Param("label") String label); + Long isBindLabel(@Param("label") String label); Integer bindLabel(@Param("request") LabelBindDTO labelBindDTO); diff --git a/casic-metering-dao/src/main/resources/mapper/customer/CustomerSampleMapper.xml b/casic-metering-dao/src/main/resources/mapper/customer/CustomerSampleMapper.xml index 623f193..fbcdf85 100644 --- a/casic-metering-dao/src/main/resources/mapper/customer/CustomerSampleMapper.xml +++ b/casic-metering-dao/src/main/resources/mapper/customer/CustomerSampleMapper.xml @@ -250,6 +250,17 @@ #{id} + AND csi.id NOT IN + ( + SELECT sample_id + FROM business_order_sample_relation bosrr + JOIN ( + SELECT id + FROM business_order + WHERE is_del = 0 + AND (status ='2' OR status ='1' OR status ='' ) + )boo ON boo.id = bosrr.order_id + ) ORDER BY csi.create_time DESC diff --git a/casic-metering-dao/src/main/resources/mapper/equipment/EquipmentFixedAssetsMapper.xml b/casic-metering-dao/src/main/resources/mapper/equipment/EquipmentFixedAssetsMapper.xml index 6721a66..715f37b 100644 --- a/casic-metering-dao/src/main/resources/mapper/equipment/EquipmentFixedAssetsMapper.xml +++ b/casic-metering-dao/src/main/resources/mapper/equipment/EquipmentFixedAssetsMapper.xml @@ -225,4 +225,19 @@ AND DATE_FORMAT(valid_date,'%Y') = DATE_FORMAT(CURDATE(),'%Y') GROUP BY DATE_FORMAT(valid_date,'%Y-%m') + + + + diff --git a/casic-metering-model/src/main/java/com/casic/missiles/dto/business/dispatch/LabelBindDTO.java b/casic-metering-model/src/main/java/com/casic/missiles/dto/business/dispatch/LabelBindDTO.java index 4e5dc47..a501946 100644 --- a/casic-metering-model/src/main/java/com/casic/missiles/dto/business/dispatch/LabelBindDTO.java +++ b/casic-metering-model/src/main/java/com/casic/missiles/dto/business/dispatch/LabelBindDTO.java @@ -18,6 +18,6 @@ private String label; @NotNull - @ApiModelProperty("样品id") + @ApiModelProperty("样品id(测量设备中未设备主键id)") private String sampleId; } diff --git a/casic-metering-service/src/main/java/com/casic/missiles/service/Impl/equipment/EquipmentFixedAssetsServiceImpl.java b/casic-metering-service/src/main/java/com/casic/missiles/service/Impl/equipment/EquipmentFixedAssetsServiceImpl.java index 397fd62..375c550 100644 --- a/casic-metering-service/src/main/java/com/casic/missiles/service/Impl/equipment/EquipmentFixedAssetsServiceImpl.java +++ b/casic-metering-service/src/main/java/com/casic/missiles/service/Impl/equipment/EquipmentFixedAssetsServiceImpl.java @@ -14,6 +14,8 @@ import com.casic.missiles.dto.IdDTO; import com.casic.missiles.dto.ReturnDTO; import com.casic.missiles.dto.ReturnUtil; +import com.casic.missiles.dto.business.dispatch.DeviceScanVO; +import com.casic.missiles.dto.business.dispatch.LabelBindDTO; import com.casic.missiles.dto.equipment.EquipmentOrSampleDto; import com.casic.missiles.dto.equipment.FixedAssetRequest; import com.casic.missiles.dto.equipment.RemindQuantityDTO; @@ -39,8 +41,6 @@ import com.casic.missiles.service.system.IMessagePushService; import com.casic.missiles.utils.DictCodeUtils; import com.casic.missiles.utils.NumberGeneratorUtil; -import lombok.AllArgsConstructor; -import lombok.RequiredArgsConstructor; import lombok.extern.slf4j.Slf4j; import org.apache.commons.lang3.StringUtils; import org.jetbrains.annotations.NotNull; @@ -461,6 +461,19 @@ throw new BusinessException(BusinessExceptionEnum.HANDLE_FAILED); } + @Override + public ReturnDTO> bindLabel(LabelBindDTO labelBindDTO) { + Long id = meterFixedAssetsMapper.isBindLabel(labelBindDTO.getLabel()); + if (Objects.isNull(id)) { + Integer updateFlag = meterFixedAssetsMapper.bindLabel(labelBindDTO); + if (updateFlag > 0) { + return ReturnUtil.success(); + } + throw new BusinessException(BusinessExceptionEnum.HANDLE_FAILED); + } + throw new BusinessException(BusinessExceptionEnum.LABEL_ALREADY_BIND); + } + /** * 转换字典code * diff --git a/casic-metering-api/src/main/java/com/casic/missiles/controller/equipment/EquipmentFixedAssetsController.java b/casic-metering-api/src/main/java/com/casic/missiles/controller/equipment/EquipmentFixedAssetsController.java index 1684d0f..c89f9e2 100644 --- a/casic-metering-api/src/main/java/com/casic/missiles/controller/equipment/EquipmentFixedAssetsController.java +++ b/casic-metering-api/src/main/java/com/casic/missiles/controller/equipment/EquipmentFixedAssetsController.java @@ -1,5 +1,6 @@ package com.casic.missiles.controller.equipment; +import cn.hutool.core.lang.Assert; import com.baomidou.mybatisplus.extension.plugins.pagination.Page; import com.casic.missiles.core.base.controller.ExportController; import com.casic.missiles.core.page.PageFactory; @@ -7,10 +8,13 @@ import com.casic.missiles.dto.IdDTO; import com.casic.missiles.dto.ReturnDTO; import com.casic.missiles.dto.ReturnUtil; +import com.casic.missiles.dto.business.dispatch.DeviceScanVO; +import com.casic.missiles.dto.business.dispatch.LabelBindDTO; import com.casic.missiles.dto.equipment.EquipmentOrSampleDto; import com.casic.missiles.dto.equipment.FixedAssetRequest; import com.casic.missiles.dto.equipment.RemindQuantityDTO; import com.casic.missiles.dto.equipment.StandardSupportEquipmentExcelData; +import com.casic.missiles.enums.BusinessExceptionEnum; import com.casic.missiles.enums.ExportEnum; import com.casic.missiles.exception.BusinessException; import com.casic.missiles.model.equipment.*; @@ -23,6 +27,7 @@ import org.springframework.beans.BeanUtils; import org.springframework.beans.factory.annotation.Autowired; import org.springframework.util.CollectionUtils; +import org.springframework.util.ObjectUtils; import org.springframework.validation.BindingResult; import org.springframework.web.bind.annotation.*; import org.springframework.web.multipart.MultipartFile; @@ -71,6 +76,16 @@ DictCodeUtils.validDictCode(equipmentFixedAssets); return iEquipmentFixedAssetsService.addFixedAsset(equipmentFixedAssets); } + + @ApiOperation("标签绑定") + @PostMapping("/label/bind") + public ReturnDTO> bindLabel(@RequestBody @Valid LabelBindDTO labelBindDTO) throws Exception { + Assert.isFalse(ObjectUtils.isEmpty(labelBindDTO.getLabel()), () -> { + throw new BusinessException(BusinessExceptionEnum.LABEL_IS_EMPTY); + }); + return iEquipmentFixedAssetsService.bindLabel(labelBindDTO); + } + /** * 固定资产更新 */ diff --git a/casic-metering-dao/src/main/java/com/casic/missiles/mapper/MeterFixedAssetsMapper.java b/casic-metering-dao/src/main/java/com/casic/missiles/mapper/MeterFixedAssetsMapper.java index 866f420..9266168 100644 --- a/casic-metering-dao/src/main/java/com/casic/missiles/mapper/MeterFixedAssetsMapper.java +++ b/casic-metering-dao/src/main/java/com/casic/missiles/mapper/MeterFixedAssetsMapper.java @@ -2,6 +2,7 @@ import com.baomidou.mybatisplus.core.mapper.BaseMapper; import com.baomidou.mybatisplus.extension.plugins.pagination.Page; +import com.casic.missiles.dto.business.dispatch.LabelBindDTO; import com.casic.missiles.dto.cockpit.ExpireDeviceStatisticsResponse; import com.casic.missiles.dto.equipment.EquipmentOrSampleDto; import com.casic.missiles.dto.equipment.FixedAssetRequest; @@ -39,4 +40,8 @@ Integer selectRemindQuantity(); List selectExpireDeviceStatistics(); + + Long isBindLabel(@Param("label") String label); + + Integer bindLabel(@Param("request") LabelBindDTO request); } diff --git a/casic-metering-dao/src/main/java/com/casic/missiles/mapper/business/BusinessOrderSampleRelationMapper.java b/casic-metering-dao/src/main/java/com/casic/missiles/mapper/business/BusinessOrderSampleRelationMapper.java index 02f2358..f90f608 100644 --- a/casic-metering-dao/src/main/java/com/casic/missiles/mapper/business/BusinessOrderSampleRelationMapper.java +++ b/casic-metering-dao/src/main/java/com/casic/missiles/mapper/business/BusinessOrderSampleRelationMapper.java @@ -35,7 +35,7 @@ Page getSampleListByStatus(@Param("page") Page page, @Param("request") DeviceDispatchDTO request); - Long isBindLabel(@Param("label") String label); + Long isBindLabel(@Param("label") String label); Integer bindLabel(@Param("request") LabelBindDTO labelBindDTO); diff --git a/casic-metering-dao/src/main/resources/mapper/customer/CustomerSampleMapper.xml b/casic-metering-dao/src/main/resources/mapper/customer/CustomerSampleMapper.xml index 623f193..fbcdf85 100644 --- a/casic-metering-dao/src/main/resources/mapper/customer/CustomerSampleMapper.xml +++ b/casic-metering-dao/src/main/resources/mapper/customer/CustomerSampleMapper.xml @@ -250,6 +250,17 @@ #{id} + AND csi.id NOT IN + ( + SELECT sample_id + FROM business_order_sample_relation bosrr + JOIN ( + SELECT id + FROM business_order + WHERE is_del = 0 + AND (status ='2' OR status ='1' OR status ='' ) + )boo ON boo.id = bosrr.order_id + ) ORDER BY csi.create_time DESC diff --git a/casic-metering-dao/src/main/resources/mapper/equipment/EquipmentFixedAssetsMapper.xml b/casic-metering-dao/src/main/resources/mapper/equipment/EquipmentFixedAssetsMapper.xml index 6721a66..715f37b 100644 --- a/casic-metering-dao/src/main/resources/mapper/equipment/EquipmentFixedAssetsMapper.xml +++ b/casic-metering-dao/src/main/resources/mapper/equipment/EquipmentFixedAssetsMapper.xml @@ -225,4 +225,19 @@ AND DATE_FORMAT(valid_date,'%Y') = DATE_FORMAT(CURDATE(),'%Y') GROUP BY DATE_FORMAT(valid_date,'%Y-%m') + + + + diff --git a/casic-metering-model/src/main/java/com/casic/missiles/dto/business/dispatch/LabelBindDTO.java b/casic-metering-model/src/main/java/com/casic/missiles/dto/business/dispatch/LabelBindDTO.java index 4e5dc47..a501946 100644 --- a/casic-metering-model/src/main/java/com/casic/missiles/dto/business/dispatch/LabelBindDTO.java +++ b/casic-metering-model/src/main/java/com/casic/missiles/dto/business/dispatch/LabelBindDTO.java @@ -18,6 +18,6 @@ private String label; @NotNull - @ApiModelProperty("样品id") + @ApiModelProperty("样品id(测量设备中未设备主键id)") private String sampleId; } diff --git a/casic-metering-service/src/main/java/com/casic/missiles/service/Impl/equipment/EquipmentFixedAssetsServiceImpl.java b/casic-metering-service/src/main/java/com/casic/missiles/service/Impl/equipment/EquipmentFixedAssetsServiceImpl.java index 397fd62..375c550 100644 --- a/casic-metering-service/src/main/java/com/casic/missiles/service/Impl/equipment/EquipmentFixedAssetsServiceImpl.java +++ b/casic-metering-service/src/main/java/com/casic/missiles/service/Impl/equipment/EquipmentFixedAssetsServiceImpl.java @@ -14,6 +14,8 @@ import com.casic.missiles.dto.IdDTO; import com.casic.missiles.dto.ReturnDTO; import com.casic.missiles.dto.ReturnUtil; +import com.casic.missiles.dto.business.dispatch.DeviceScanVO; +import com.casic.missiles.dto.business.dispatch.LabelBindDTO; import com.casic.missiles.dto.equipment.EquipmentOrSampleDto; import com.casic.missiles.dto.equipment.FixedAssetRequest; import com.casic.missiles.dto.equipment.RemindQuantityDTO; @@ -39,8 +41,6 @@ import com.casic.missiles.service.system.IMessagePushService; import com.casic.missiles.utils.DictCodeUtils; import com.casic.missiles.utils.NumberGeneratorUtil; -import lombok.AllArgsConstructor; -import lombok.RequiredArgsConstructor; import lombok.extern.slf4j.Slf4j; import org.apache.commons.lang3.StringUtils; import org.jetbrains.annotations.NotNull; @@ -461,6 +461,19 @@ throw new BusinessException(BusinessExceptionEnum.HANDLE_FAILED); } + @Override + public ReturnDTO> bindLabel(LabelBindDTO labelBindDTO) { + Long id = meterFixedAssetsMapper.isBindLabel(labelBindDTO.getLabel()); + if (Objects.isNull(id)) { + Integer updateFlag = meterFixedAssetsMapper.bindLabel(labelBindDTO); + if (updateFlag > 0) { + return ReturnUtil.success(); + } + throw new BusinessException(BusinessExceptionEnum.HANDLE_FAILED); + } + throw new BusinessException(BusinessExceptionEnum.LABEL_ALREADY_BIND); + } + /** * 转换字典code * diff --git a/casic-metering-service/src/main/java/com/casic/missiles/service/equipment/IEquipmentFixedAssetsService.java b/casic-metering-service/src/main/java/com/casic/missiles/service/equipment/IEquipmentFixedAssetsService.java index a55f8c4..7991ec5 100644 --- a/casic-metering-service/src/main/java/com/casic/missiles/service/equipment/IEquipmentFixedAssetsService.java +++ b/casic-metering-service/src/main/java/com/casic/missiles/service/equipment/IEquipmentFixedAssetsService.java @@ -4,6 +4,8 @@ import com.baomidou.mybatisplus.extension.service.IService; import com.casic.missiles.dto.IdDTO; import com.casic.missiles.dto.ReturnDTO; +import com.casic.missiles.dto.business.dispatch.DeviceScanVO; +import com.casic.missiles.dto.business.dispatch.LabelBindDTO; import com.casic.missiles.dto.equipment.EquipmentOrSampleDto; import com.casic.missiles.dto.equipment.FixedAssetRequest; import com.casic.missiles.dto.equipment.RemindQuantityDTO; @@ -62,4 +64,6 @@ void exportList(FixedAssetRequest request, HttpServletResponse response) throws Exception; ReturnDTO remindWorker(IdDTO idDTO); + + ReturnDTO> bindLabel(LabelBindDTO labelBindDTO); }