diff --git a/casic-metering-api/src/main/java/com/casic/missiles/controller/meter/MeterStaffController.java b/casic-metering-api/src/main/java/com/casic/missiles/controller/meter/MeterStaffController.java index f9eca51..ddf5db5 100644 --- a/casic-metering-api/src/main/java/com/casic/missiles/controller/meter/MeterStaffController.java +++ b/casic-metering-api/src/main/java/com/casic/missiles/controller/meter/MeterStaffController.java @@ -4,6 +4,7 @@ import com.baomidou.mybatisplus.extension.plugins.pagination.Page; import com.casic.missiles.core.base.controller.ExportController; import com.casic.missiles.core.page.PageFactory; +import com.casic.missiles.core.page.PageInfoBT; import com.casic.missiles.dto.IdDTO; import com.casic.missiles.dto.ReturnDTO; import com.casic.missiles.dto.ReturnUtil; @@ -47,7 +48,7 @@ @ApiOperation("计量人员列表") @PostMapping("/selectStaffList") @ResponseBody - public ReturnDTO listPage(@RequestBody MeterStaffRequest meterStaffRequest) { + public ReturnDTO> listPage(@RequestBody MeterStaffRequest meterStaffRequest) { Page page = PageFactory.defaultPage(); Page list = meterStaffService.selectStaffList(page,meterStaffRequest); return ReturnUtil.success(list); @@ -150,7 +151,7 @@ @ApiOperation("通过部门查询人员列表") @PostMapping("/selectStaffListByDept") @ResponseBody - public ReturnDTO selectStaffListByDept(@RequestBody MeterStaffRequest meterStaffRequest) { + public ReturnDTO> selectStaffListByDept(@RequestBody MeterStaffRequest meterStaffRequest) { List list = meterStaffService.selectStaffListByDept(meterStaffRequest); return ReturnUtil.success(list); } @@ -162,7 +163,7 @@ @ApiOperation("计量工作培训记录") @PostMapping("/staffCultivateLog") @ResponseBody - public ReturnDTO staffCultivateLog(@RequestBody IdDTO idDto) { + public ReturnDTO> staffCultivateLog(@RequestBody IdDTO idDto) { Page page = PageFactory.defaultPage(); return ReturnUtil.success(super.packForBT(meterStaffService.staffCultivateLog(page,idDto))); } diff --git a/casic-metering-api/src/main/java/com/casic/missiles/controller/meter/MeterStaffController.java b/casic-metering-api/src/main/java/com/casic/missiles/controller/meter/MeterStaffController.java index f9eca51..ddf5db5 100644 --- a/casic-metering-api/src/main/java/com/casic/missiles/controller/meter/MeterStaffController.java +++ b/casic-metering-api/src/main/java/com/casic/missiles/controller/meter/MeterStaffController.java @@ -4,6 +4,7 @@ import com.baomidou.mybatisplus.extension.plugins.pagination.Page; import com.casic.missiles.core.base.controller.ExportController; import com.casic.missiles.core.page.PageFactory; +import com.casic.missiles.core.page.PageInfoBT; import com.casic.missiles.dto.IdDTO; import com.casic.missiles.dto.ReturnDTO; import com.casic.missiles.dto.ReturnUtil; @@ -47,7 +48,7 @@ @ApiOperation("计量人员列表") @PostMapping("/selectStaffList") @ResponseBody - public ReturnDTO listPage(@RequestBody MeterStaffRequest meterStaffRequest) { + public ReturnDTO> listPage(@RequestBody MeterStaffRequest meterStaffRequest) { Page page = PageFactory.defaultPage(); Page list = meterStaffService.selectStaffList(page,meterStaffRequest); return ReturnUtil.success(list); @@ -150,7 +151,7 @@ @ApiOperation("通过部门查询人员列表") @PostMapping("/selectStaffListByDept") @ResponseBody - public ReturnDTO selectStaffListByDept(@RequestBody MeterStaffRequest meterStaffRequest) { + public ReturnDTO> selectStaffListByDept(@RequestBody MeterStaffRequest meterStaffRequest) { List list = meterStaffService.selectStaffListByDept(meterStaffRequest); return ReturnUtil.success(list); } @@ -162,7 +163,7 @@ @ApiOperation("计量工作培训记录") @PostMapping("/staffCultivateLog") @ResponseBody - public ReturnDTO staffCultivateLog(@RequestBody IdDTO idDto) { + public ReturnDTO> staffCultivateLog(@RequestBody IdDTO idDto) { Page page = PageFactory.defaultPage(); return ReturnUtil.success(super.packForBT(meterStaffService.staffCultivateLog(page,idDto))); } 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 d1760b6..959c152 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 @@ -7,6 +7,8 @@ import com.casic.missiles.model.equipment.EquipmentFixedAssets; import org.apache.ibatis.annotations.Param; +import java.util.List; + /** *

* Mapper 接口 @@ -22,4 +24,6 @@ Page listPage(Page page, @Param("fixedAssetRequest") FixedAssetRequest fixedAssetRequest); Page queryEquipment(Page page, @Param("request")EquipmentOrSampleDto request); + + List listPage(@Param("fixedAssetRequest")FixedAssetRequest fixedAssetRequest); } diff --git a/casic-metering-api/src/main/java/com/casic/missiles/controller/meter/MeterStaffController.java b/casic-metering-api/src/main/java/com/casic/missiles/controller/meter/MeterStaffController.java index f9eca51..ddf5db5 100644 --- a/casic-metering-api/src/main/java/com/casic/missiles/controller/meter/MeterStaffController.java +++ b/casic-metering-api/src/main/java/com/casic/missiles/controller/meter/MeterStaffController.java @@ -4,6 +4,7 @@ import com.baomidou.mybatisplus.extension.plugins.pagination.Page; import com.casic.missiles.core.base.controller.ExportController; import com.casic.missiles.core.page.PageFactory; +import com.casic.missiles.core.page.PageInfoBT; import com.casic.missiles.dto.IdDTO; import com.casic.missiles.dto.ReturnDTO; import com.casic.missiles.dto.ReturnUtil; @@ -47,7 +48,7 @@ @ApiOperation("计量人员列表") @PostMapping("/selectStaffList") @ResponseBody - public ReturnDTO listPage(@RequestBody MeterStaffRequest meterStaffRequest) { + public ReturnDTO> listPage(@RequestBody MeterStaffRequest meterStaffRequest) { Page page = PageFactory.defaultPage(); Page list = meterStaffService.selectStaffList(page,meterStaffRequest); return ReturnUtil.success(list); @@ -150,7 +151,7 @@ @ApiOperation("通过部门查询人员列表") @PostMapping("/selectStaffListByDept") @ResponseBody - public ReturnDTO selectStaffListByDept(@RequestBody MeterStaffRequest meterStaffRequest) { + public ReturnDTO> selectStaffListByDept(@RequestBody MeterStaffRequest meterStaffRequest) { List list = meterStaffService.selectStaffListByDept(meterStaffRequest); return ReturnUtil.success(list); } @@ -162,7 +163,7 @@ @ApiOperation("计量工作培训记录") @PostMapping("/staffCultivateLog") @ResponseBody - public ReturnDTO staffCultivateLog(@RequestBody IdDTO idDto) { + public ReturnDTO> staffCultivateLog(@RequestBody IdDTO idDto) { Page page = PageFactory.defaultPage(); return ReturnUtil.success(super.packForBT(meterStaffService.staffCultivateLog(page,idDto))); } 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 d1760b6..959c152 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 @@ -7,6 +7,8 @@ import com.casic.missiles.model.equipment.EquipmentFixedAssets; import org.apache.ibatis.annotations.Param; +import java.util.List; + /** *

* Mapper 接口 @@ -22,4 +24,6 @@ Page listPage(Page page, @Param("fixedAssetRequest") FixedAssetRequest fixedAssetRequest); Page queryEquipment(Page page, @Param("request")EquipmentOrSampleDto request); + + List listPage(@Param("fixedAssetRequest")FixedAssetRequest fixedAssetRequest); } diff --git a/casic-metering-dao/src/main/java/com/casic/missiles/mapper/equipment/EquipmentStandardEquipmentMapper.java b/casic-metering-dao/src/main/java/com/casic/missiles/mapper/equipment/EquipmentStandardEquipmentMapper.java index 191d11e..65f64aa 100644 --- a/casic-metering-dao/src/main/java/com/casic/missiles/mapper/equipment/EquipmentStandardEquipmentMapper.java +++ b/casic-metering-dao/src/main/java/com/casic/missiles/mapper/equipment/EquipmentStandardEquipmentMapper.java @@ -22,6 +22,8 @@ Page listPage(Page page, @Param("request") StandardEquipmentRequest request); + EquipmentStandardEquipment listPage(@Param("request") StandardEquipmentRequest request); + Page remindListPage(Page page, @Param("request") StandardEquipmentRequest request); List remindListPage(@Param("request") StandardEquipmentRequest request); diff --git a/casic-metering-api/src/main/java/com/casic/missiles/controller/meter/MeterStaffController.java b/casic-metering-api/src/main/java/com/casic/missiles/controller/meter/MeterStaffController.java index f9eca51..ddf5db5 100644 --- a/casic-metering-api/src/main/java/com/casic/missiles/controller/meter/MeterStaffController.java +++ b/casic-metering-api/src/main/java/com/casic/missiles/controller/meter/MeterStaffController.java @@ -4,6 +4,7 @@ import com.baomidou.mybatisplus.extension.plugins.pagination.Page; import com.casic.missiles.core.base.controller.ExportController; import com.casic.missiles.core.page.PageFactory; +import com.casic.missiles.core.page.PageInfoBT; import com.casic.missiles.dto.IdDTO; import com.casic.missiles.dto.ReturnDTO; import com.casic.missiles.dto.ReturnUtil; @@ -47,7 +48,7 @@ @ApiOperation("计量人员列表") @PostMapping("/selectStaffList") @ResponseBody - public ReturnDTO listPage(@RequestBody MeterStaffRequest meterStaffRequest) { + public ReturnDTO> listPage(@RequestBody MeterStaffRequest meterStaffRequest) { Page page = PageFactory.defaultPage(); Page list = meterStaffService.selectStaffList(page,meterStaffRequest); return ReturnUtil.success(list); @@ -150,7 +151,7 @@ @ApiOperation("通过部门查询人员列表") @PostMapping("/selectStaffListByDept") @ResponseBody - public ReturnDTO selectStaffListByDept(@RequestBody MeterStaffRequest meterStaffRequest) { + public ReturnDTO> selectStaffListByDept(@RequestBody MeterStaffRequest meterStaffRequest) { List list = meterStaffService.selectStaffListByDept(meterStaffRequest); return ReturnUtil.success(list); } @@ -162,7 +163,7 @@ @ApiOperation("计量工作培训记录") @PostMapping("/staffCultivateLog") @ResponseBody - public ReturnDTO staffCultivateLog(@RequestBody IdDTO idDto) { + public ReturnDTO> staffCultivateLog(@RequestBody IdDTO idDto) { Page page = PageFactory.defaultPage(); return ReturnUtil.success(super.packForBT(meterStaffService.staffCultivateLog(page,idDto))); } 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 d1760b6..959c152 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 @@ -7,6 +7,8 @@ import com.casic.missiles.model.equipment.EquipmentFixedAssets; import org.apache.ibatis.annotations.Param; +import java.util.List; + /** *

* Mapper 接口 @@ -22,4 +24,6 @@ Page listPage(Page page, @Param("fixedAssetRequest") FixedAssetRequest fixedAssetRequest); Page queryEquipment(Page page, @Param("request")EquipmentOrSampleDto request); + + List listPage(@Param("fixedAssetRequest")FixedAssetRequest fixedAssetRequest); } diff --git a/casic-metering-dao/src/main/java/com/casic/missiles/mapper/equipment/EquipmentStandardEquipmentMapper.java b/casic-metering-dao/src/main/java/com/casic/missiles/mapper/equipment/EquipmentStandardEquipmentMapper.java index 191d11e..65f64aa 100644 --- a/casic-metering-dao/src/main/java/com/casic/missiles/mapper/equipment/EquipmentStandardEquipmentMapper.java +++ b/casic-metering-dao/src/main/java/com/casic/missiles/mapper/equipment/EquipmentStandardEquipmentMapper.java @@ -22,6 +22,8 @@ Page listPage(Page page, @Param("request") StandardEquipmentRequest request); + EquipmentStandardEquipment listPage(@Param("request") StandardEquipmentRequest request); + Page remindListPage(Page page, @Param("request") StandardEquipmentRequest request); List remindListPage(@Param("request") StandardEquipmentRequest request); diff --git a/casic-metering-dao/src/main/resources/mapper/meter/MeterStaffMapper.xml b/casic-metering-dao/src/main/resources/mapper/meter/MeterStaffMapper.xml index 2684a0d..7ac5017 100644 --- a/casic-metering-dao/src/main/resources/mapper/meter/MeterStaffMapper.xml +++ b/casic-metering-dao/src/main/resources/mapper/meter/MeterStaffMapper.xml @@ -33,21 +33,30 @@ - select t2.* from (SELECT - t.id, - t.`NAME`, - t.staff_no, - t.sex, - t.education, - t.technology_job, - t.administration_job, - t.dept_id, - (select `certificate_no` from meter_certificate where staff_id = t.id ORDER BY create_time limit 1) as verifier_certificate_no, - (select `valid_date` from meter_certificate where staff_id = t.id ORDER BY create_time limit 1) as certificate_date, - t.major, - t.technology_exam + SELECT + * FROM - meter_staff t where t.is_del = 0) t2 + ( + SELECT + t.id, + t.`NAME`, + t.staff_no, + t.sex, + t.education, + t.technology_job, + t.administration_job, + t.dept_id, + ( SELECT `certificate_no` FROM meter_certificate WHERE staff_id = t.id ORDER BY create_time LIMIT 1 ) AS verifier_certificate_no, + ( SELECT `valid_date` FROM meter_certificate WHERE staff_id = t.id ORDER BY create_time LIMIT 1 ) AS certificate_date, + t.major, + t.technology_exam, + su.id AS user_id + FROM + meter_staff t + LEFT JOIN sys_user su ON t.account = su.ACCOUNT + WHERE + t.is_del = 0 + ) t2 1 = 1 @@ -65,6 +74,9 @@ and t2.verifier_certificate_no like concat('%', #{request.verifierCertificateNo}, '%') + + and t2.administration_job = #{request.administrationJob} + and t1.id in diff --git a/casic-metering-model/src/main/java/com/casic/missiles/dto/meter/MeterStaffRequest.java b/casic-metering-model/src/main/java/com/casic/missiles/dto/meter/MeterStaffRequest.java index cf1cde8..5f484e5 100644 --- a/casic-metering-model/src/main/java/com/casic/missiles/dto/meter/MeterStaffRequest.java +++ b/casic-metering-model/src/main/java/com/casic/missiles/dto/meter/MeterStaffRequest.java @@ -70,4 +70,10 @@ @ApiModelProperty(value = "导出ids", dataType = "List") private List ids; + /** + * 行政职务 + */ + @ApiModelProperty(value = "行政职务", dataType = "String") + private String administrationJob; + } diff --git a/casic-metering-api/src/main/java/com/casic/missiles/controller/meter/MeterStaffController.java b/casic-metering-api/src/main/java/com/casic/missiles/controller/meter/MeterStaffController.java index f9eca51..ddf5db5 100644 --- a/casic-metering-api/src/main/java/com/casic/missiles/controller/meter/MeterStaffController.java +++ b/casic-metering-api/src/main/java/com/casic/missiles/controller/meter/MeterStaffController.java @@ -4,6 +4,7 @@ import com.baomidou.mybatisplus.extension.plugins.pagination.Page; import com.casic.missiles.core.base.controller.ExportController; import com.casic.missiles.core.page.PageFactory; +import com.casic.missiles.core.page.PageInfoBT; import com.casic.missiles.dto.IdDTO; import com.casic.missiles.dto.ReturnDTO; import com.casic.missiles.dto.ReturnUtil; @@ -47,7 +48,7 @@ @ApiOperation("计量人员列表") @PostMapping("/selectStaffList") @ResponseBody - public ReturnDTO listPage(@RequestBody MeterStaffRequest meterStaffRequest) { + public ReturnDTO> listPage(@RequestBody MeterStaffRequest meterStaffRequest) { Page page = PageFactory.defaultPage(); Page list = meterStaffService.selectStaffList(page,meterStaffRequest); return ReturnUtil.success(list); @@ -150,7 +151,7 @@ @ApiOperation("通过部门查询人员列表") @PostMapping("/selectStaffListByDept") @ResponseBody - public ReturnDTO selectStaffListByDept(@RequestBody MeterStaffRequest meterStaffRequest) { + public ReturnDTO> selectStaffListByDept(@RequestBody MeterStaffRequest meterStaffRequest) { List list = meterStaffService.selectStaffListByDept(meterStaffRequest); return ReturnUtil.success(list); } @@ -162,7 +163,7 @@ @ApiOperation("计量工作培训记录") @PostMapping("/staffCultivateLog") @ResponseBody - public ReturnDTO staffCultivateLog(@RequestBody IdDTO idDto) { + public ReturnDTO> staffCultivateLog(@RequestBody IdDTO idDto) { Page page = PageFactory.defaultPage(); return ReturnUtil.success(super.packForBT(meterStaffService.staffCultivateLog(page,idDto))); } 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 d1760b6..959c152 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 @@ -7,6 +7,8 @@ import com.casic.missiles.model.equipment.EquipmentFixedAssets; import org.apache.ibatis.annotations.Param; +import java.util.List; + /** *

* Mapper 接口 @@ -22,4 +24,6 @@ Page listPage(Page page, @Param("fixedAssetRequest") FixedAssetRequest fixedAssetRequest); Page queryEquipment(Page page, @Param("request")EquipmentOrSampleDto request); + + List listPage(@Param("fixedAssetRequest")FixedAssetRequest fixedAssetRequest); } diff --git a/casic-metering-dao/src/main/java/com/casic/missiles/mapper/equipment/EquipmentStandardEquipmentMapper.java b/casic-metering-dao/src/main/java/com/casic/missiles/mapper/equipment/EquipmentStandardEquipmentMapper.java index 191d11e..65f64aa 100644 --- a/casic-metering-dao/src/main/java/com/casic/missiles/mapper/equipment/EquipmentStandardEquipmentMapper.java +++ b/casic-metering-dao/src/main/java/com/casic/missiles/mapper/equipment/EquipmentStandardEquipmentMapper.java @@ -22,6 +22,8 @@ Page listPage(Page page, @Param("request") StandardEquipmentRequest request); + EquipmentStandardEquipment listPage(@Param("request") StandardEquipmentRequest request); + Page remindListPage(Page page, @Param("request") StandardEquipmentRequest request); List remindListPage(@Param("request") StandardEquipmentRequest request); diff --git a/casic-metering-dao/src/main/resources/mapper/meter/MeterStaffMapper.xml b/casic-metering-dao/src/main/resources/mapper/meter/MeterStaffMapper.xml index 2684a0d..7ac5017 100644 --- a/casic-metering-dao/src/main/resources/mapper/meter/MeterStaffMapper.xml +++ b/casic-metering-dao/src/main/resources/mapper/meter/MeterStaffMapper.xml @@ -33,21 +33,30 @@ - select t2.* from (SELECT - t.id, - t.`NAME`, - t.staff_no, - t.sex, - t.education, - t.technology_job, - t.administration_job, - t.dept_id, - (select `certificate_no` from meter_certificate where staff_id = t.id ORDER BY create_time limit 1) as verifier_certificate_no, - (select `valid_date` from meter_certificate where staff_id = t.id ORDER BY create_time limit 1) as certificate_date, - t.major, - t.technology_exam + SELECT + * FROM - meter_staff t where t.is_del = 0) t2 + ( + SELECT + t.id, + t.`NAME`, + t.staff_no, + t.sex, + t.education, + t.technology_job, + t.administration_job, + t.dept_id, + ( SELECT `certificate_no` FROM meter_certificate WHERE staff_id = t.id ORDER BY create_time LIMIT 1 ) AS verifier_certificate_no, + ( SELECT `valid_date` FROM meter_certificate WHERE staff_id = t.id ORDER BY create_time LIMIT 1 ) AS certificate_date, + t.major, + t.technology_exam, + su.id AS user_id + FROM + meter_staff t + LEFT JOIN sys_user su ON t.account = su.ACCOUNT + WHERE + t.is_del = 0 + ) t2 1 = 1 @@ -65,6 +74,9 @@ and t2.verifier_certificate_no like concat('%', #{request.verifierCertificateNo}, '%') + + and t2.administration_job = #{request.administrationJob} + and t1.id in diff --git a/casic-metering-model/src/main/java/com/casic/missiles/dto/meter/MeterStaffRequest.java b/casic-metering-model/src/main/java/com/casic/missiles/dto/meter/MeterStaffRequest.java index cf1cde8..5f484e5 100644 --- a/casic-metering-model/src/main/java/com/casic/missiles/dto/meter/MeterStaffRequest.java +++ b/casic-metering-model/src/main/java/com/casic/missiles/dto/meter/MeterStaffRequest.java @@ -70,4 +70,10 @@ @ApiModelProperty(value = "导出ids", dataType = "List") private List ids; + /** + * 行政职务 + */ + @ApiModelProperty(value = "行政职务", dataType = "String") + private String administrationJob; + } diff --git a/casic-metering-model/src/main/java/com/casic/missiles/model/equipment/EquipmentStandardEquipment.java b/casic-metering-model/src/main/java/com/casic/missiles/model/equipment/EquipmentStandardEquipment.java index afb3937..ac275b4 100644 --- a/casic-metering-model/src/main/java/com/casic/missiles/model/equipment/EquipmentStandardEquipment.java +++ b/casic-metering-model/src/main/java/com/casic/missiles/model/equipment/EquipmentStandardEquipment.java @@ -370,4 +370,25 @@ @TableField(exist = false) @ApiModelProperty(value = "文件列表", dataType = "List") private List fileList; + + /** + * 关联计量人员列表 + */ + @TableField(exist = false) + @ApiModelProperty(value = "关联计量人员列表", dataType = "List") + private List userList; + + /** + * 关联配套设备列表 + */ + @TableField(exist = false) + @ApiModelProperty(value = "关联配套设备列表", dataType = "List") + private List equipmentList; + + /** + * 关联检定规程列表 + */ + @TableField(exist = false) + @ApiModelProperty(value = "关联检定规程列表", dataType = "List") + private List verifyRegulationList; } diff --git a/casic-metering-model/src/main/java/com/casic/missiles/model/meter/MeterStaff.java b/casic-metering-model/src/main/java/com/casic/missiles/model/meter/MeterStaff.java index 05ea499..710194d 100644 --- a/casic-metering-model/src/main/java/com/casic/missiles/model/meter/MeterStaff.java +++ b/casic-metering-model/src/main/java/com/casic/missiles/model/meter/MeterStaff.java @@ -138,6 +138,10 @@ @ApiModelProperty(value = "更新时间", dataType = "String") private String updateTime; + @ApiModelProperty(value = "用户id", dataType = "List") + @TableField(exist = false) + private String userId; + @ApiModelProperty(value = "证书列表", dataType = "List") @TableField(exist = false) private List certificateList; diff --git a/casic-metering-api/src/main/java/com/casic/missiles/controller/meter/MeterStaffController.java b/casic-metering-api/src/main/java/com/casic/missiles/controller/meter/MeterStaffController.java index f9eca51..ddf5db5 100644 --- a/casic-metering-api/src/main/java/com/casic/missiles/controller/meter/MeterStaffController.java +++ b/casic-metering-api/src/main/java/com/casic/missiles/controller/meter/MeterStaffController.java @@ -4,6 +4,7 @@ import com.baomidou.mybatisplus.extension.plugins.pagination.Page; import com.casic.missiles.core.base.controller.ExportController; import com.casic.missiles.core.page.PageFactory; +import com.casic.missiles.core.page.PageInfoBT; import com.casic.missiles.dto.IdDTO; import com.casic.missiles.dto.ReturnDTO; import com.casic.missiles.dto.ReturnUtil; @@ -47,7 +48,7 @@ @ApiOperation("计量人员列表") @PostMapping("/selectStaffList") @ResponseBody - public ReturnDTO listPage(@RequestBody MeterStaffRequest meterStaffRequest) { + public ReturnDTO> listPage(@RequestBody MeterStaffRequest meterStaffRequest) { Page page = PageFactory.defaultPage(); Page list = meterStaffService.selectStaffList(page,meterStaffRequest); return ReturnUtil.success(list); @@ -150,7 +151,7 @@ @ApiOperation("通过部门查询人员列表") @PostMapping("/selectStaffListByDept") @ResponseBody - public ReturnDTO selectStaffListByDept(@RequestBody MeterStaffRequest meterStaffRequest) { + public ReturnDTO> selectStaffListByDept(@RequestBody MeterStaffRequest meterStaffRequest) { List list = meterStaffService.selectStaffListByDept(meterStaffRequest); return ReturnUtil.success(list); } @@ -162,7 +163,7 @@ @ApiOperation("计量工作培训记录") @PostMapping("/staffCultivateLog") @ResponseBody - public ReturnDTO staffCultivateLog(@RequestBody IdDTO idDto) { + public ReturnDTO> staffCultivateLog(@RequestBody IdDTO idDto) { Page page = PageFactory.defaultPage(); return ReturnUtil.success(super.packForBT(meterStaffService.staffCultivateLog(page,idDto))); } 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 d1760b6..959c152 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 @@ -7,6 +7,8 @@ import com.casic.missiles.model.equipment.EquipmentFixedAssets; import org.apache.ibatis.annotations.Param; +import java.util.List; + /** *

* Mapper 接口 @@ -22,4 +24,6 @@ Page listPage(Page page, @Param("fixedAssetRequest") FixedAssetRequest fixedAssetRequest); Page queryEquipment(Page page, @Param("request")EquipmentOrSampleDto request); + + List listPage(@Param("fixedAssetRequest")FixedAssetRequest fixedAssetRequest); } diff --git a/casic-metering-dao/src/main/java/com/casic/missiles/mapper/equipment/EquipmentStandardEquipmentMapper.java b/casic-metering-dao/src/main/java/com/casic/missiles/mapper/equipment/EquipmentStandardEquipmentMapper.java index 191d11e..65f64aa 100644 --- a/casic-metering-dao/src/main/java/com/casic/missiles/mapper/equipment/EquipmentStandardEquipmentMapper.java +++ b/casic-metering-dao/src/main/java/com/casic/missiles/mapper/equipment/EquipmentStandardEquipmentMapper.java @@ -22,6 +22,8 @@ Page listPage(Page page, @Param("request") StandardEquipmentRequest request); + EquipmentStandardEquipment listPage(@Param("request") StandardEquipmentRequest request); + Page remindListPage(Page page, @Param("request") StandardEquipmentRequest request); List remindListPage(@Param("request") StandardEquipmentRequest request); diff --git a/casic-metering-dao/src/main/resources/mapper/meter/MeterStaffMapper.xml b/casic-metering-dao/src/main/resources/mapper/meter/MeterStaffMapper.xml index 2684a0d..7ac5017 100644 --- a/casic-metering-dao/src/main/resources/mapper/meter/MeterStaffMapper.xml +++ b/casic-metering-dao/src/main/resources/mapper/meter/MeterStaffMapper.xml @@ -33,21 +33,30 @@ - select t2.* from (SELECT - t.id, - t.`NAME`, - t.staff_no, - t.sex, - t.education, - t.technology_job, - t.administration_job, - t.dept_id, - (select `certificate_no` from meter_certificate where staff_id = t.id ORDER BY create_time limit 1) as verifier_certificate_no, - (select `valid_date` from meter_certificate where staff_id = t.id ORDER BY create_time limit 1) as certificate_date, - t.major, - t.technology_exam + SELECT + * FROM - meter_staff t where t.is_del = 0) t2 + ( + SELECT + t.id, + t.`NAME`, + t.staff_no, + t.sex, + t.education, + t.technology_job, + t.administration_job, + t.dept_id, + ( SELECT `certificate_no` FROM meter_certificate WHERE staff_id = t.id ORDER BY create_time LIMIT 1 ) AS verifier_certificate_no, + ( SELECT `valid_date` FROM meter_certificate WHERE staff_id = t.id ORDER BY create_time LIMIT 1 ) AS certificate_date, + t.major, + t.technology_exam, + su.id AS user_id + FROM + meter_staff t + LEFT JOIN sys_user su ON t.account = su.ACCOUNT + WHERE + t.is_del = 0 + ) t2 1 = 1 @@ -65,6 +74,9 @@ and t2.verifier_certificate_no like concat('%', #{request.verifierCertificateNo}, '%') + + and t2.administration_job = #{request.administrationJob} + and t1.id in diff --git a/casic-metering-model/src/main/java/com/casic/missiles/dto/meter/MeterStaffRequest.java b/casic-metering-model/src/main/java/com/casic/missiles/dto/meter/MeterStaffRequest.java index cf1cde8..5f484e5 100644 --- a/casic-metering-model/src/main/java/com/casic/missiles/dto/meter/MeterStaffRequest.java +++ b/casic-metering-model/src/main/java/com/casic/missiles/dto/meter/MeterStaffRequest.java @@ -70,4 +70,10 @@ @ApiModelProperty(value = "导出ids", dataType = "List") private List ids; + /** + * 行政职务 + */ + @ApiModelProperty(value = "行政职务", dataType = "String") + private String administrationJob; + } diff --git a/casic-metering-model/src/main/java/com/casic/missiles/model/equipment/EquipmentStandardEquipment.java b/casic-metering-model/src/main/java/com/casic/missiles/model/equipment/EquipmentStandardEquipment.java index afb3937..ac275b4 100644 --- a/casic-metering-model/src/main/java/com/casic/missiles/model/equipment/EquipmentStandardEquipment.java +++ b/casic-metering-model/src/main/java/com/casic/missiles/model/equipment/EquipmentStandardEquipment.java @@ -370,4 +370,25 @@ @TableField(exist = false) @ApiModelProperty(value = "文件列表", dataType = "List") private List fileList; + + /** + * 关联计量人员列表 + */ + @TableField(exist = false) + @ApiModelProperty(value = "关联计量人员列表", dataType = "List") + private List userList; + + /** + * 关联配套设备列表 + */ + @TableField(exist = false) + @ApiModelProperty(value = "关联配套设备列表", dataType = "List") + private List equipmentList; + + /** + * 关联检定规程列表 + */ + @TableField(exist = false) + @ApiModelProperty(value = "关联检定规程列表", dataType = "List") + private List verifyRegulationList; } diff --git a/casic-metering-model/src/main/java/com/casic/missiles/model/meter/MeterStaff.java b/casic-metering-model/src/main/java/com/casic/missiles/model/meter/MeterStaff.java index 05ea499..710194d 100644 --- a/casic-metering-model/src/main/java/com/casic/missiles/model/meter/MeterStaff.java +++ b/casic-metering-model/src/main/java/com/casic/missiles/model/meter/MeterStaff.java @@ -138,6 +138,10 @@ @ApiModelProperty(value = "更新时间", dataType = "String") private String updateTime; + @ApiModelProperty(value = "用户id", dataType = "List") + @TableField(exist = false) + private String userId; + @ApiModelProperty(value = "证书列表", dataType = "List") @TableField(exist = false) private List certificateList; diff --git a/casic-metering-service/src/main/java/com/casic/missiles/service/Impl/equipment/EquipmentStandardEquipmentServiceImpl.java b/casic-metering-service/src/main/java/com/casic/missiles/service/Impl/equipment/EquipmentStandardEquipmentServiceImpl.java index afa6905..e174535 100644 --- a/casic-metering-service/src/main/java/com/casic/missiles/service/Impl/equipment/EquipmentStandardEquipmentServiceImpl.java +++ b/casic-metering-service/src/main/java/com/casic/missiles/service/Impl/equipment/EquipmentStandardEquipmentServiceImpl.java @@ -9,21 +9,21 @@ import com.casic.missiles.dto.ReturnDTO; import com.casic.missiles.dto.ReturnUtil; import com.casic.missiles.dto.equipment.StandardEquipmentRequest; +import com.casic.missiles.enums.BusinessExceptionEnum; import com.casic.missiles.enums.ExportEnum; import com.casic.missiles.enums.PrefixCodeEnum; -import com.casic.missiles.mapper.equipment.EquipmentStandardEquipmentFileMapper; -import com.casic.missiles.mapper.equipment.EquipmentStandardEquipmentMapper; -import com.casic.missiles.model.equipment.EquipmentStandardEquipment; -import com.casic.missiles.model.equipment.EquipmentStandardEquipmentFile; +import com.casic.missiles.exception.BusinessException; +import com.casic.missiles.mapper.equipment.*; +import com.casic.missiles.model.equipment.*; import com.casic.missiles.model.page.PageQuery; -import com.casic.missiles.service.equipment.IEquipmentStandardEquipmentFileService; -import com.casic.missiles.service.equipment.IEquipmentStandardEquipmentService; +import com.casic.missiles.service.equipment.*; import com.casic.missiles.utils.DictCodeUtils; import com.casic.missiles.utils.NumberGeneratorUtil; import org.jetbrains.annotations.NotNull; import org.springframework.beans.factory.annotation.Autowired; import org.springframework.beans.factory.annotation.Value; import org.springframework.stereotype.Service; +import org.springframework.transaction.annotation.Transactional; import org.springframework.util.CollectionUtils; import javax.annotation.Resource; @@ -58,6 +58,24 @@ @Resource private IBaseExportService iBaseExportService; + @Resource + private EquipmentStandardEquipmentUserMapper equipmentUserMapper; + + @Resource + private EquipmentStandardSupportMapper supportMapper; + + @Resource + private EquipmentStandardVerifyRegulationMapper verifyRegulationMapper; + + @Resource + private IEquipmentStandardEquipmentUserService equipmentUserService; + + @Resource + private IEquipmentStandardSupportEquipmentService supportEquipmentService; + + @Resource + private IEquipmentStandardVerifyRegulationService verifyRegulationService; + @Value("${casic.meter.standardEquipment.delayDay:30}") private Integer delayDay; @@ -71,14 +89,17 @@ } @Override + @Transactional public ReturnDTO add(EquipmentStandardEquipment meterStandardEquipment) { //生成资产编号 Long maxNo = meterStandardEquipmentMapper.selectMaxNo(); String standard_no = NumberGeneratorUtil.getContactNo(PrefixCodeEnum.STANDARD_EQUIPMENT, maxNo); meterStandardEquipment.setStandardNo(standard_no); - meterStandardEquipmentMapper.insert(meterStandardEquipment); - // 插入文件列表 - return ReturnUtil.success(meterStandardEquipment.getId()); + if(meterStandardEquipmentMapper.insert(meterStandardEquipment)>0){ + batchSaveAssociatedTable(meterStandardEquipment); + return ReturnUtil.success(meterStandardEquipment.getId()); + } + throw new BusinessException(BusinessExceptionEnum.HANDLE_FAILED); } @Override @@ -87,17 +108,19 @@ if (deleteFlag > 0) { return ReturnUtil.success(); } - return ReturnUtil.failed("删除失败"); + throw new BusinessException(BusinessExceptionEnum.HANDLE_FAILED); } @Override public ReturnDTO update(EquipmentStandardEquipment meterStandardEquipment) { + // 修改标准装置基本信息 int updateFlag = meterStandardEquipmentMapper.updateById(meterStandardEquipment); - // 文件 if (updateFlag > 0) { + // 修改关联子表信息 + batchSaveAssociatedTable(meterStandardEquipment); return ReturnUtil.success(); } - return ReturnUtil.failed("更新失败"); + throw new BusinessException(BusinessExceptionEnum.HANDLE_FAILED); } /** @@ -139,23 +162,21 @@ @Override public EquipmentStandardEquipment getById(Long id) throws Exception { - PageQuery pageQuery = new PageQuery(); - pageQuery.setPageNo(0); - pageQuery.setPageSize(1); - Page page = PageFactory.createPage(pageQuery); StandardEquipmentRequest request = new StandardEquipmentRequest(); request.setId(id); - Page resultPage = meterStandardEquipmentMapper.listPage(page, request); - EquipmentStandardEquipment meterStandardEquipment = null; - if(!CollectionUtils.isEmpty(resultPage.getRecords())) { - meterStandardEquipment = resultPage.getRecords().get(0); - DictCodeUtils.convertDictCodeToName(meterStandardEquipment); - QueryWrapper wrapper = new QueryWrapper<>(); - wrapper.eq("standard_id", id); - // 获取文件 - meterStandardEquipment.setFileList(meterStandardEquipmentFileMapper.selectList(wrapper)); - } - return meterStandardEquipment; + EquipmentStandardEquipment standardEquipment = meterStandardEquipmentMapper.listPage(request); + DictCodeUtils.convertDictCodeToName(standardEquipment); + QueryWrapper wrapper = new QueryWrapper<>(); + wrapper.eq("standard_id", id); + // 获取关联的文件表 + standardEquipment.setFileList(meterStandardEquipmentFileMapper.selectList(wrapper)); + // 获取关联的计量人员 + standardEquipment.setUserList(equipmentUserService.list(id)); + // 获取关联的设备表 + standardEquipment.setEquipmentList(supportEquipmentService.list(id)); + // 获取关联的检定规程表 + standardEquipment.setVerifyRegulationList(verifyRegulationService.list(id)); + return standardEquipment; } @@ -163,16 +184,55 @@ * * @param meterStandardEquipment */ - public void batchSaveFile(EquipmentStandardEquipment meterStandardEquipment) { + public void batchSaveAssociatedTable(EquipmentStandardEquipment meterStandardEquipment) { + Long equipmentId = meterStandardEquipment.getId(); if (!CollectionUtils.isEmpty(meterStandardEquipment.getFileList())) { // 删除老的文件,更新新的文件 QueryWrapper wrapper = new QueryWrapper<>(); - wrapper.eq("standard_id", meterStandardEquipment.getId()); + wrapper.eq("standard_id", equipmentId); meterStandardEquipmentFileMapper.delete(wrapper); - meterStandardEquipment.getFileList().stream().forEach(item -> { - item.setStandardId(meterStandardEquipment.getId()); - }); - meterStandardEquipmentFileService.saveBatch(meterStandardEquipment.getFileList()); + for (EquipmentStandardEquipmentFile file : meterStandardEquipment.getFileList()) { + file.setStandardId(equipmentId); + } + if(!meterStandardEquipmentFileService.saveBatch(meterStandardEquipment.getFileList())){ + throw new BusinessException(BusinessExceptionEnum.HANDLE_FAILED); + } + } + if (!CollectionUtils.isEmpty(meterStandardEquipment.getUserList())) { + // 删除之前关联的人员,新增最终的人员列表 + QueryWrapper wrapper = new QueryWrapper<>(); + wrapper.eq("standard_equipment_id", equipmentId); + equipmentUserMapper.delete(wrapper); + for (EquipmentStandardEquipmentUser user : meterStandardEquipment.getUserList()) { + user.setStandardEquipmentId(equipmentId); + } + if(!equipmentUserService.saveBatch(meterStandardEquipment.getUserList())){ + throw new BusinessException(BusinessExceptionEnum.HANDLE_FAILED); + } + } + if (!CollectionUtils.isEmpty(meterStandardEquipment.getEquipmentList())) { + // 删除之前关联的设备,新增最终的设备列表 + QueryWrapper wrapper = new QueryWrapper<>(); + wrapper.eq("standard_equipment_id", equipmentId); + supportMapper.delete(wrapper); + for (EquipmentStandardSupportEquipment equipment : meterStandardEquipment.getEquipmentList()) { + equipment.setStandardEquipmentId(equipmentId); + } + if(!supportEquipmentService.saveBatch(meterStandardEquipment.getEquipmentList())){ + throw new BusinessException(BusinessExceptionEnum.HANDLE_FAILED); + } + } + if (!CollectionUtils.isEmpty(meterStandardEquipment.getVerifyRegulationList())) { + // 删除之前关联的检定规程,新增最终检定规程列表 + QueryWrapper wrapper = new QueryWrapper<>(); + wrapper.eq("standard_equipment_id", equipmentId); + verifyRegulationMapper.delete(wrapper); + for (EquipmentStandardVerifyRegulation verifyRegulation : meterStandardEquipment.getVerifyRegulationList()) { + verifyRegulation.setStandardEquipmentId(equipmentId); + } + if(!verifyRegulationService.saveBatch(meterStandardEquipment.getVerifyRegulationList())){ + throw new BusinessException(BusinessExceptionEnum.HANDLE_FAILED); + } } } diff --git a/casic-metering-service/src/main/java/com/casic/missiles/service/Impl/equipment/EquipmentStandardEquipmentUserServiceImpl.java b/casic-metering-service/src/main/java/com/casic/missiles/service/Impl/equipment/EquipmentStandardEquipmentUserServiceImpl.java index 43ed6a7..aa109b3 100644 --- a/casic-metering-service/src/main/java/com/casic/missiles/service/Impl/equipment/EquipmentStandardEquipmentUserServiceImpl.java +++ b/casic-metering-service/src/main/java/com/casic/missiles/service/Impl/equipment/EquipmentStandardEquipmentUserServiceImpl.java @@ -15,6 +15,7 @@ import com.casic.missiles.model.equipment.EquipmentStandardEquipmentUser; import com.casic.missiles.service.equipment.IEquipmentStandardEquipmentService; import com.casic.missiles.service.equipment.IEquipmentStandardEquipmentUserService; +import org.apache.commons.lang3.StringUtils; import org.springframework.beans.BeanUtils; import org.springframework.beans.factory.annotation.Autowired; import org.springframework.stereotype.Service; @@ -22,6 +23,7 @@ import java.util.ArrayList; import java.util.List; +import java.util.stream.Collectors; /** *

@@ -48,14 +50,20 @@ // 获取列表 QueryWrapper wrapper = new QueryWrapper(); wrapper.eq("standard_equipment_id", request.getId()); - Page meterStandardEquipmentUserPage = meterStandardEquipmentUserMapper.selectPage(page, wrapper); - if (!CollectionUtils.isEmpty(meterStandardEquipmentUserPage.getRecords())) { - for (EquipmentStandardEquipmentUser record : meterStandardEquipmentUserPage.getRecords()) { + Page equipmentUserPage = meterStandardEquipmentUserMapper.selectPage(page, wrapper); + if (!CollectionUtils.isEmpty(equipmentUserPage.getRecords())) { + for (EquipmentStandardEquipmentUser record : equipmentUserPage.getRecords()) { MeterStaff meterStaff = meterStaffMapper.selectStaffInfo(record.getUserId().toString()); - BeanUtils.copyProperties(meterStaff, record); + if(null != meterStaff){ + meterStaff.setId(record.getId()); + BeanUtils.copyProperties(meterStaff, record); + } } + // 将已经不存在的计量人员排除 + equipmentUserPage.setRecords(equipmentUserPage.getRecords().stream().filter(item -> StringUtils.isNotEmpty(item.getStaffNo())).collect(Collectors.toList())); + equipmentUserPage.setTotal(equipmentUserPage.getRecords().size()); } - return meterStandardEquipmentUserPage; + return equipmentUserPage; } @Override @@ -86,8 +94,21 @@ } @Override - public List list(IdDTO request) throws Exception { - return null; + public List list(Long id) throws Exception { + // 获取列表 + QueryWrapper wrapper = new QueryWrapper(); + wrapper.eq("standard_equipment_id", id); + List equipmentUserList = meterStandardEquipmentUserMapper.selectList(wrapper); + if (!CollectionUtils.isEmpty(equipmentUserList)) { + for (EquipmentStandardEquipmentUser record : equipmentUserList) { + MeterStaff meterStaff = meterStaffMapper.selectStaffInfo(record.getUserId().toString()); + if(null != meterStaff){ + meterStaff.setId(record.getId()); + BeanUtils.copyProperties(meterStaff, record); + } + } + } + return equipmentUserList.stream().filter(item -> StringUtils.isNotEmpty(item.getStaffNo())).collect(Collectors.toList()); } @Override diff --git a/casic-metering-api/src/main/java/com/casic/missiles/controller/meter/MeterStaffController.java b/casic-metering-api/src/main/java/com/casic/missiles/controller/meter/MeterStaffController.java index f9eca51..ddf5db5 100644 --- a/casic-metering-api/src/main/java/com/casic/missiles/controller/meter/MeterStaffController.java +++ b/casic-metering-api/src/main/java/com/casic/missiles/controller/meter/MeterStaffController.java @@ -4,6 +4,7 @@ import com.baomidou.mybatisplus.extension.plugins.pagination.Page; import com.casic.missiles.core.base.controller.ExportController; import com.casic.missiles.core.page.PageFactory; +import com.casic.missiles.core.page.PageInfoBT; import com.casic.missiles.dto.IdDTO; import com.casic.missiles.dto.ReturnDTO; import com.casic.missiles.dto.ReturnUtil; @@ -47,7 +48,7 @@ @ApiOperation("计量人员列表") @PostMapping("/selectStaffList") @ResponseBody - public ReturnDTO listPage(@RequestBody MeterStaffRequest meterStaffRequest) { + public ReturnDTO> listPage(@RequestBody MeterStaffRequest meterStaffRequest) { Page page = PageFactory.defaultPage(); Page list = meterStaffService.selectStaffList(page,meterStaffRequest); return ReturnUtil.success(list); @@ -150,7 +151,7 @@ @ApiOperation("通过部门查询人员列表") @PostMapping("/selectStaffListByDept") @ResponseBody - public ReturnDTO selectStaffListByDept(@RequestBody MeterStaffRequest meterStaffRequest) { + public ReturnDTO> selectStaffListByDept(@RequestBody MeterStaffRequest meterStaffRequest) { List list = meterStaffService.selectStaffListByDept(meterStaffRequest); return ReturnUtil.success(list); } @@ -162,7 +163,7 @@ @ApiOperation("计量工作培训记录") @PostMapping("/staffCultivateLog") @ResponseBody - public ReturnDTO staffCultivateLog(@RequestBody IdDTO idDto) { + public ReturnDTO> staffCultivateLog(@RequestBody IdDTO idDto) { Page page = PageFactory.defaultPage(); return ReturnUtil.success(super.packForBT(meterStaffService.staffCultivateLog(page,idDto))); } 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 d1760b6..959c152 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 @@ -7,6 +7,8 @@ import com.casic.missiles.model.equipment.EquipmentFixedAssets; import org.apache.ibatis.annotations.Param; +import java.util.List; + /** *

* Mapper 接口 @@ -22,4 +24,6 @@ Page listPage(Page page, @Param("fixedAssetRequest") FixedAssetRequest fixedAssetRequest); Page queryEquipment(Page page, @Param("request")EquipmentOrSampleDto request); + + List listPage(@Param("fixedAssetRequest")FixedAssetRequest fixedAssetRequest); } diff --git a/casic-metering-dao/src/main/java/com/casic/missiles/mapper/equipment/EquipmentStandardEquipmentMapper.java b/casic-metering-dao/src/main/java/com/casic/missiles/mapper/equipment/EquipmentStandardEquipmentMapper.java index 191d11e..65f64aa 100644 --- a/casic-metering-dao/src/main/java/com/casic/missiles/mapper/equipment/EquipmentStandardEquipmentMapper.java +++ b/casic-metering-dao/src/main/java/com/casic/missiles/mapper/equipment/EquipmentStandardEquipmentMapper.java @@ -22,6 +22,8 @@ Page listPage(Page page, @Param("request") StandardEquipmentRequest request); + EquipmentStandardEquipment listPage(@Param("request") StandardEquipmentRequest request); + Page remindListPage(Page page, @Param("request") StandardEquipmentRequest request); List remindListPage(@Param("request") StandardEquipmentRequest request); diff --git a/casic-metering-dao/src/main/resources/mapper/meter/MeterStaffMapper.xml b/casic-metering-dao/src/main/resources/mapper/meter/MeterStaffMapper.xml index 2684a0d..7ac5017 100644 --- a/casic-metering-dao/src/main/resources/mapper/meter/MeterStaffMapper.xml +++ b/casic-metering-dao/src/main/resources/mapper/meter/MeterStaffMapper.xml @@ -33,21 +33,30 @@ - select t2.* from (SELECT - t.id, - t.`NAME`, - t.staff_no, - t.sex, - t.education, - t.technology_job, - t.administration_job, - t.dept_id, - (select `certificate_no` from meter_certificate where staff_id = t.id ORDER BY create_time limit 1) as verifier_certificate_no, - (select `valid_date` from meter_certificate where staff_id = t.id ORDER BY create_time limit 1) as certificate_date, - t.major, - t.technology_exam + SELECT + * FROM - meter_staff t where t.is_del = 0) t2 + ( + SELECT + t.id, + t.`NAME`, + t.staff_no, + t.sex, + t.education, + t.technology_job, + t.administration_job, + t.dept_id, + ( SELECT `certificate_no` FROM meter_certificate WHERE staff_id = t.id ORDER BY create_time LIMIT 1 ) AS verifier_certificate_no, + ( SELECT `valid_date` FROM meter_certificate WHERE staff_id = t.id ORDER BY create_time LIMIT 1 ) AS certificate_date, + t.major, + t.technology_exam, + su.id AS user_id + FROM + meter_staff t + LEFT JOIN sys_user su ON t.account = su.ACCOUNT + WHERE + t.is_del = 0 + ) t2 1 = 1 @@ -65,6 +74,9 @@ and t2.verifier_certificate_no like concat('%', #{request.verifierCertificateNo}, '%') + + and t2.administration_job = #{request.administrationJob} + and t1.id in diff --git a/casic-metering-model/src/main/java/com/casic/missiles/dto/meter/MeterStaffRequest.java b/casic-metering-model/src/main/java/com/casic/missiles/dto/meter/MeterStaffRequest.java index cf1cde8..5f484e5 100644 --- a/casic-metering-model/src/main/java/com/casic/missiles/dto/meter/MeterStaffRequest.java +++ b/casic-metering-model/src/main/java/com/casic/missiles/dto/meter/MeterStaffRequest.java @@ -70,4 +70,10 @@ @ApiModelProperty(value = "导出ids", dataType = "List") private List ids; + /** + * 行政职务 + */ + @ApiModelProperty(value = "行政职务", dataType = "String") + private String administrationJob; + } diff --git a/casic-metering-model/src/main/java/com/casic/missiles/model/equipment/EquipmentStandardEquipment.java b/casic-metering-model/src/main/java/com/casic/missiles/model/equipment/EquipmentStandardEquipment.java index afb3937..ac275b4 100644 --- a/casic-metering-model/src/main/java/com/casic/missiles/model/equipment/EquipmentStandardEquipment.java +++ b/casic-metering-model/src/main/java/com/casic/missiles/model/equipment/EquipmentStandardEquipment.java @@ -370,4 +370,25 @@ @TableField(exist = false) @ApiModelProperty(value = "文件列表", dataType = "List") private List fileList; + + /** + * 关联计量人员列表 + */ + @TableField(exist = false) + @ApiModelProperty(value = "关联计量人员列表", dataType = "List") + private List userList; + + /** + * 关联配套设备列表 + */ + @TableField(exist = false) + @ApiModelProperty(value = "关联配套设备列表", dataType = "List") + private List equipmentList; + + /** + * 关联检定规程列表 + */ + @TableField(exist = false) + @ApiModelProperty(value = "关联检定规程列表", dataType = "List") + private List verifyRegulationList; } diff --git a/casic-metering-model/src/main/java/com/casic/missiles/model/meter/MeterStaff.java b/casic-metering-model/src/main/java/com/casic/missiles/model/meter/MeterStaff.java index 05ea499..710194d 100644 --- a/casic-metering-model/src/main/java/com/casic/missiles/model/meter/MeterStaff.java +++ b/casic-metering-model/src/main/java/com/casic/missiles/model/meter/MeterStaff.java @@ -138,6 +138,10 @@ @ApiModelProperty(value = "更新时间", dataType = "String") private String updateTime; + @ApiModelProperty(value = "用户id", dataType = "List") + @TableField(exist = false) + private String userId; + @ApiModelProperty(value = "证书列表", dataType = "List") @TableField(exist = false) private List certificateList; diff --git a/casic-metering-service/src/main/java/com/casic/missiles/service/Impl/equipment/EquipmentStandardEquipmentServiceImpl.java b/casic-metering-service/src/main/java/com/casic/missiles/service/Impl/equipment/EquipmentStandardEquipmentServiceImpl.java index afa6905..e174535 100644 --- a/casic-metering-service/src/main/java/com/casic/missiles/service/Impl/equipment/EquipmentStandardEquipmentServiceImpl.java +++ b/casic-metering-service/src/main/java/com/casic/missiles/service/Impl/equipment/EquipmentStandardEquipmentServiceImpl.java @@ -9,21 +9,21 @@ import com.casic.missiles.dto.ReturnDTO; import com.casic.missiles.dto.ReturnUtil; import com.casic.missiles.dto.equipment.StandardEquipmentRequest; +import com.casic.missiles.enums.BusinessExceptionEnum; import com.casic.missiles.enums.ExportEnum; import com.casic.missiles.enums.PrefixCodeEnum; -import com.casic.missiles.mapper.equipment.EquipmentStandardEquipmentFileMapper; -import com.casic.missiles.mapper.equipment.EquipmentStandardEquipmentMapper; -import com.casic.missiles.model.equipment.EquipmentStandardEquipment; -import com.casic.missiles.model.equipment.EquipmentStandardEquipmentFile; +import com.casic.missiles.exception.BusinessException; +import com.casic.missiles.mapper.equipment.*; +import com.casic.missiles.model.equipment.*; import com.casic.missiles.model.page.PageQuery; -import com.casic.missiles.service.equipment.IEquipmentStandardEquipmentFileService; -import com.casic.missiles.service.equipment.IEquipmentStandardEquipmentService; +import com.casic.missiles.service.equipment.*; import com.casic.missiles.utils.DictCodeUtils; import com.casic.missiles.utils.NumberGeneratorUtil; import org.jetbrains.annotations.NotNull; import org.springframework.beans.factory.annotation.Autowired; import org.springframework.beans.factory.annotation.Value; import org.springframework.stereotype.Service; +import org.springframework.transaction.annotation.Transactional; import org.springframework.util.CollectionUtils; import javax.annotation.Resource; @@ -58,6 +58,24 @@ @Resource private IBaseExportService iBaseExportService; + @Resource + private EquipmentStandardEquipmentUserMapper equipmentUserMapper; + + @Resource + private EquipmentStandardSupportMapper supportMapper; + + @Resource + private EquipmentStandardVerifyRegulationMapper verifyRegulationMapper; + + @Resource + private IEquipmentStandardEquipmentUserService equipmentUserService; + + @Resource + private IEquipmentStandardSupportEquipmentService supportEquipmentService; + + @Resource + private IEquipmentStandardVerifyRegulationService verifyRegulationService; + @Value("${casic.meter.standardEquipment.delayDay:30}") private Integer delayDay; @@ -71,14 +89,17 @@ } @Override + @Transactional public ReturnDTO add(EquipmentStandardEquipment meterStandardEquipment) { //生成资产编号 Long maxNo = meterStandardEquipmentMapper.selectMaxNo(); String standard_no = NumberGeneratorUtil.getContactNo(PrefixCodeEnum.STANDARD_EQUIPMENT, maxNo); meterStandardEquipment.setStandardNo(standard_no); - meterStandardEquipmentMapper.insert(meterStandardEquipment); - // 插入文件列表 - return ReturnUtil.success(meterStandardEquipment.getId()); + if(meterStandardEquipmentMapper.insert(meterStandardEquipment)>0){ + batchSaveAssociatedTable(meterStandardEquipment); + return ReturnUtil.success(meterStandardEquipment.getId()); + } + throw new BusinessException(BusinessExceptionEnum.HANDLE_FAILED); } @Override @@ -87,17 +108,19 @@ if (deleteFlag > 0) { return ReturnUtil.success(); } - return ReturnUtil.failed("删除失败"); + throw new BusinessException(BusinessExceptionEnum.HANDLE_FAILED); } @Override public ReturnDTO update(EquipmentStandardEquipment meterStandardEquipment) { + // 修改标准装置基本信息 int updateFlag = meterStandardEquipmentMapper.updateById(meterStandardEquipment); - // 文件 if (updateFlag > 0) { + // 修改关联子表信息 + batchSaveAssociatedTable(meterStandardEquipment); return ReturnUtil.success(); } - return ReturnUtil.failed("更新失败"); + throw new BusinessException(BusinessExceptionEnum.HANDLE_FAILED); } /** @@ -139,23 +162,21 @@ @Override public EquipmentStandardEquipment getById(Long id) throws Exception { - PageQuery pageQuery = new PageQuery(); - pageQuery.setPageNo(0); - pageQuery.setPageSize(1); - Page page = PageFactory.createPage(pageQuery); StandardEquipmentRequest request = new StandardEquipmentRequest(); request.setId(id); - Page resultPage = meterStandardEquipmentMapper.listPage(page, request); - EquipmentStandardEquipment meterStandardEquipment = null; - if(!CollectionUtils.isEmpty(resultPage.getRecords())) { - meterStandardEquipment = resultPage.getRecords().get(0); - DictCodeUtils.convertDictCodeToName(meterStandardEquipment); - QueryWrapper wrapper = new QueryWrapper<>(); - wrapper.eq("standard_id", id); - // 获取文件 - meterStandardEquipment.setFileList(meterStandardEquipmentFileMapper.selectList(wrapper)); - } - return meterStandardEquipment; + EquipmentStandardEquipment standardEquipment = meterStandardEquipmentMapper.listPage(request); + DictCodeUtils.convertDictCodeToName(standardEquipment); + QueryWrapper wrapper = new QueryWrapper<>(); + wrapper.eq("standard_id", id); + // 获取关联的文件表 + standardEquipment.setFileList(meterStandardEquipmentFileMapper.selectList(wrapper)); + // 获取关联的计量人员 + standardEquipment.setUserList(equipmentUserService.list(id)); + // 获取关联的设备表 + standardEquipment.setEquipmentList(supportEquipmentService.list(id)); + // 获取关联的检定规程表 + standardEquipment.setVerifyRegulationList(verifyRegulationService.list(id)); + return standardEquipment; } @@ -163,16 +184,55 @@ * * @param meterStandardEquipment */ - public void batchSaveFile(EquipmentStandardEquipment meterStandardEquipment) { + public void batchSaveAssociatedTable(EquipmentStandardEquipment meterStandardEquipment) { + Long equipmentId = meterStandardEquipment.getId(); if (!CollectionUtils.isEmpty(meterStandardEquipment.getFileList())) { // 删除老的文件,更新新的文件 QueryWrapper wrapper = new QueryWrapper<>(); - wrapper.eq("standard_id", meterStandardEquipment.getId()); + wrapper.eq("standard_id", equipmentId); meterStandardEquipmentFileMapper.delete(wrapper); - meterStandardEquipment.getFileList().stream().forEach(item -> { - item.setStandardId(meterStandardEquipment.getId()); - }); - meterStandardEquipmentFileService.saveBatch(meterStandardEquipment.getFileList()); + for (EquipmentStandardEquipmentFile file : meterStandardEquipment.getFileList()) { + file.setStandardId(equipmentId); + } + if(!meterStandardEquipmentFileService.saveBatch(meterStandardEquipment.getFileList())){ + throw new BusinessException(BusinessExceptionEnum.HANDLE_FAILED); + } + } + if (!CollectionUtils.isEmpty(meterStandardEquipment.getUserList())) { + // 删除之前关联的人员,新增最终的人员列表 + QueryWrapper wrapper = new QueryWrapper<>(); + wrapper.eq("standard_equipment_id", equipmentId); + equipmentUserMapper.delete(wrapper); + for (EquipmentStandardEquipmentUser user : meterStandardEquipment.getUserList()) { + user.setStandardEquipmentId(equipmentId); + } + if(!equipmentUserService.saveBatch(meterStandardEquipment.getUserList())){ + throw new BusinessException(BusinessExceptionEnum.HANDLE_FAILED); + } + } + if (!CollectionUtils.isEmpty(meterStandardEquipment.getEquipmentList())) { + // 删除之前关联的设备,新增最终的设备列表 + QueryWrapper wrapper = new QueryWrapper<>(); + wrapper.eq("standard_equipment_id", equipmentId); + supportMapper.delete(wrapper); + for (EquipmentStandardSupportEquipment equipment : meterStandardEquipment.getEquipmentList()) { + equipment.setStandardEquipmentId(equipmentId); + } + if(!supportEquipmentService.saveBatch(meterStandardEquipment.getEquipmentList())){ + throw new BusinessException(BusinessExceptionEnum.HANDLE_FAILED); + } + } + if (!CollectionUtils.isEmpty(meterStandardEquipment.getVerifyRegulationList())) { + // 删除之前关联的检定规程,新增最终检定规程列表 + QueryWrapper wrapper = new QueryWrapper<>(); + wrapper.eq("standard_equipment_id", equipmentId); + verifyRegulationMapper.delete(wrapper); + for (EquipmentStandardVerifyRegulation verifyRegulation : meterStandardEquipment.getVerifyRegulationList()) { + verifyRegulation.setStandardEquipmentId(equipmentId); + } + if(!verifyRegulationService.saveBatch(meterStandardEquipment.getVerifyRegulationList())){ + throw new BusinessException(BusinessExceptionEnum.HANDLE_FAILED); + } } } diff --git a/casic-metering-service/src/main/java/com/casic/missiles/service/Impl/equipment/EquipmentStandardEquipmentUserServiceImpl.java b/casic-metering-service/src/main/java/com/casic/missiles/service/Impl/equipment/EquipmentStandardEquipmentUserServiceImpl.java index 43ed6a7..aa109b3 100644 --- a/casic-metering-service/src/main/java/com/casic/missiles/service/Impl/equipment/EquipmentStandardEquipmentUserServiceImpl.java +++ b/casic-metering-service/src/main/java/com/casic/missiles/service/Impl/equipment/EquipmentStandardEquipmentUserServiceImpl.java @@ -15,6 +15,7 @@ import com.casic.missiles.model.equipment.EquipmentStandardEquipmentUser; import com.casic.missiles.service.equipment.IEquipmentStandardEquipmentService; import com.casic.missiles.service.equipment.IEquipmentStandardEquipmentUserService; +import org.apache.commons.lang3.StringUtils; import org.springframework.beans.BeanUtils; import org.springframework.beans.factory.annotation.Autowired; import org.springframework.stereotype.Service; @@ -22,6 +23,7 @@ import java.util.ArrayList; import java.util.List; +import java.util.stream.Collectors; /** *

@@ -48,14 +50,20 @@ // 获取列表 QueryWrapper wrapper = new QueryWrapper(); wrapper.eq("standard_equipment_id", request.getId()); - Page meterStandardEquipmentUserPage = meterStandardEquipmentUserMapper.selectPage(page, wrapper); - if (!CollectionUtils.isEmpty(meterStandardEquipmentUserPage.getRecords())) { - for (EquipmentStandardEquipmentUser record : meterStandardEquipmentUserPage.getRecords()) { + Page equipmentUserPage = meterStandardEquipmentUserMapper.selectPage(page, wrapper); + if (!CollectionUtils.isEmpty(equipmentUserPage.getRecords())) { + for (EquipmentStandardEquipmentUser record : equipmentUserPage.getRecords()) { MeterStaff meterStaff = meterStaffMapper.selectStaffInfo(record.getUserId().toString()); - BeanUtils.copyProperties(meterStaff, record); + if(null != meterStaff){ + meterStaff.setId(record.getId()); + BeanUtils.copyProperties(meterStaff, record); + } } + // 将已经不存在的计量人员排除 + equipmentUserPage.setRecords(equipmentUserPage.getRecords().stream().filter(item -> StringUtils.isNotEmpty(item.getStaffNo())).collect(Collectors.toList())); + equipmentUserPage.setTotal(equipmentUserPage.getRecords().size()); } - return meterStandardEquipmentUserPage; + return equipmentUserPage; } @Override @@ -86,8 +94,21 @@ } @Override - public List list(IdDTO request) throws Exception { - return null; + public List list(Long id) throws Exception { + // 获取列表 + QueryWrapper wrapper = new QueryWrapper(); + wrapper.eq("standard_equipment_id", id); + List equipmentUserList = meterStandardEquipmentUserMapper.selectList(wrapper); + if (!CollectionUtils.isEmpty(equipmentUserList)) { + for (EquipmentStandardEquipmentUser record : equipmentUserList) { + MeterStaff meterStaff = meterStaffMapper.selectStaffInfo(record.getUserId().toString()); + if(null != meterStaff){ + meterStaff.setId(record.getId()); + BeanUtils.copyProperties(meterStaff, record); + } + } + } + return equipmentUserList.stream().filter(item -> StringUtils.isNotEmpty(item.getStaffNo())).collect(Collectors.toList()); } @Override diff --git a/casic-metering-service/src/main/java/com/casic/missiles/service/Impl/equipment/EquipmentStandardSupportEquipmentServiceImpl.java b/casic-metering-service/src/main/java/com/casic/missiles/service/Impl/equipment/EquipmentStandardSupportEquipmentServiceImpl.java index d034d87..11b9650 100644 --- a/casic-metering-service/src/main/java/com/casic/missiles/service/Impl/equipment/EquipmentStandardSupportEquipmentServiceImpl.java +++ b/casic-metering-service/src/main/java/com/casic/missiles/service/Impl/equipment/EquipmentStandardSupportEquipmentServiceImpl.java @@ -20,6 +20,7 @@ import com.casic.missiles.service.equipment.IEquipmentStandardEquipmentService; import com.casic.missiles.service.equipment.IEquipmentStandardSupportEquipmentService; import com.casic.missiles.utils.DictCodeUtils; +import org.apache.commons.lang3.StringUtils; import org.springframework.beans.BeanUtils; import org.springframework.beans.factory.annotation.Autowired; import org.springframework.stereotype.Service; @@ -54,9 +55,11 @@ // 获取列表 QueryWrapper wrapper = new QueryWrapper(); wrapper.eq("standard_equipment_id", request.getId()); - Page meterStandardSupportEquipmentPage = meterStandardSupportEquipmentMapper.selectPage(page, wrapper); - if (!CollectionUtils.isEmpty(meterStandardSupportEquipmentPage.getRecords())) { - List ids = meterStandardSupportEquipmentPage.getRecords().stream() + // 通过标准装置id查询出关联的设备id + Page supportEquipmentPage = meterStandardSupportEquipmentMapper.selectPage(page, wrapper); + if (!CollectionUtils.isEmpty(supportEquipmentPage.getRecords())) { + // 配套设备的ids + List ids = supportEquipmentPage.getRecords().stream() .map(EquipmentStandardSupportEquipment::getEquipmentId).collect(Collectors.toList()); FixedAssetRequest fixedAssetRequest = new FixedAssetRequest(); fixedAssetRequest.setIds(ids); @@ -64,19 +67,26 @@ pageQuery.setPageNo(0); pageQuery.setPageSize(ids.size()); Page page1 = PageFactory.createPage(pageQuery); + // 通过ids查询出对应的测量设备详细信息 Page meterFixedAssetsPage = meterFixedAssetsMapper.listPage(page1, fixedAssetRequest); Map existMap = CollectionUtils.newHashMap(ids.size()); if (!CollectionUtils.isEmpty(meterFixedAssetsPage.getRecords())){ existMap = meterFixedAssetsPage.getRecords().stream().collect(Collectors.toMap(EquipmentFixedAssets::getId, item -> item)); } - for (EquipmentStandardSupportEquipment record : meterStandardSupportEquipmentPage.getRecords()) { + // 将对应的设备信息补充到返回参数中 + for (EquipmentStandardSupportEquipment record : supportEquipmentPage.getRecords()) { EquipmentFixedAssets meterFixedAssets = existMap.get(record.getEquipmentId()); - meterFixedAssets.setId(record.getId()); - BeanUtils.copyProperties(meterFixedAssets, record); - DictCodeUtils.convertDictCodeToName(record); + if(null != meterFixedAssets){ + meterFixedAssets.setId(record.getId()); + BeanUtils.copyProperties(meterFixedAssets, record); + DictCodeUtils.convertDictCodeToName(record); + } } + // 将已经不存在的测量设备排除 + supportEquipmentPage.setRecords(supportEquipmentPage.getRecords().stream().filter(item -> StringUtils.isNotEmpty(item.getEquipmentNo())).collect(Collectors.toList())); + supportEquipmentPage.setTotal(supportEquipmentPage.getRecords().size()); } - return meterStandardSupportEquipmentPage; + return supportEquipmentPage; } @Override @@ -96,6 +106,38 @@ } @Override + public List list(Long id) throws Exception { + // 获取列表 + QueryWrapper wrapper = new QueryWrapper<>(); + wrapper.eq("standard_equipment_id", id); + // 通过标准装置id查询出关联的设备id + List supportEquipmentList = meterStandardSupportEquipmentMapper.selectList(wrapper); + if (!CollectionUtils.isEmpty(supportEquipmentList)) { + // 配套设备的ids + List ids = supportEquipmentList.stream() + .map(EquipmentStandardSupportEquipment::getEquipmentId).collect(Collectors.toList()); + FixedAssetRequest fixedAssetRequest = new FixedAssetRequest(); + fixedAssetRequest.setIds(ids); + // 通过ids查询出对应的测量设备详细信息 + List equipmentFixedAssetsList = meterFixedAssetsMapper.listPage(fixedAssetRequest); + Map existMap = CollectionUtils.newHashMap(ids.size()); + if (!CollectionUtils.isEmpty(equipmentFixedAssetsList)){ + existMap = equipmentFixedAssetsList.stream().collect(Collectors.toMap(EquipmentFixedAssets::getId, item -> item)); + } + // 将对应的设备信息补充到返回参数中 + for (EquipmentStandardSupportEquipment record : supportEquipmentList) { + EquipmentFixedAssets meterFixedAssets = existMap.get(record.getEquipmentId()); + if(null != meterFixedAssets){ + meterFixedAssets.setId(record.getId()); + BeanUtils.copyProperties(meterFixedAssets, record); + DictCodeUtils.convertDictCodeToName(record); + } + } + } + return supportEquipmentList.stream().filter(item -> StringUtils.isNotEmpty(item.getEquipmentNo())).collect(Collectors.toList()); + } + + @Override public ReturnDTO batchDelete(List ids) { this.removeBatchByIds(ids); return ReturnUtil.success(); diff --git a/casic-metering-service/src/main/java/com/casic/missiles/service/Impl/equipment/EquipmentStandardVerifyRegulationServiceImpl.java b/casic-metering-service/src/main/java/com/casic/missiles/service/Impl/equipment/EquipmentStandardVerifyRegulationServiceImpl.java index 230a973..9fd70a1 100644 --- a/casic-metering-service/src/main/java/com/casic/missiles/service/Impl/equipment/EquipmentStandardVerifyRegulationServiceImpl.java +++ b/casic-metering-service/src/main/java/com/casic/missiles/service/Impl/equipment/EquipmentStandardVerifyRegulationServiceImpl.java @@ -15,12 +15,14 @@ import com.casic.missiles.model.equipment.EquipmentStandardVerifyRegulation; import com.casic.missiles.service.equipment.IEquipmentStandardEquipmentService; import com.casic.missiles.service.equipment.IEquipmentStandardVerifyRegulationService; +import org.apache.commons.lang3.StringUtils; import org.springframework.beans.BeanUtils; import org.springframework.beans.factory.annotation.Autowired; import org.springframework.stereotype.Service; import org.springframework.util.CollectionUtils; import java.util.List; +import java.util.stream.Collectors; /** *

@@ -47,14 +49,20 @@ // 获取列表 QueryWrapper wrapper = new QueryWrapper(); wrapper.eq("standard_equipment_id", request.getId()); - Page meterStandardVerifyRegulationPage = meterStandardVerifyRegulationMapper.selectPage(page, wrapper); - if (!CollectionUtils.isEmpty(meterStandardVerifyRegulationPage.getRecords())) { - for (EquipmentStandardVerifyRegulation record : meterStandardVerifyRegulationPage.getRecords()) { + Page verifyRegulationPage = meterStandardVerifyRegulationMapper.selectPage(page, wrapper); + if (!CollectionUtils.isEmpty(verifyRegulationPage.getRecords())) { + for (EquipmentStandardVerifyRegulation record : verifyRegulationPage.getRecords()) { MeterFile meterFile = meterFileMapper.selectById(record.getVerifyRegulationId().toString()); - BeanUtils.copyProperties(meterFile, record); + if(null != meterFile){ + meterFile.setId(record.getId()); + BeanUtils.copyProperties(meterFile, record); + } } + // 将已经不存在的文件排除 + verifyRegulationPage.setRecords(verifyRegulationPage.getRecords().stream().filter(item -> StringUtils.isNotEmpty(item.getFileNo())).collect(Collectors.toList())); + verifyRegulationPage.setTotal(verifyRegulationPage.getRecords().size()); } - return meterStandardVerifyRegulationPage; + return verifyRegulationPage; } @Override @@ -73,6 +81,24 @@ } @Override + public List list(Long id) throws Exception { + // 获取列表 + QueryWrapper wrapper = new QueryWrapper<>(); + wrapper.eq("standard_equipment_id", id); + List verifyRegulationList = meterStandardVerifyRegulationMapper.selectList(wrapper); + if (!CollectionUtils.isEmpty(verifyRegulationList)) { + for (EquipmentStandardVerifyRegulation record : verifyRegulationList) { + MeterFile meterFile = meterFileMapper.selectById(record.getVerifyRegulationId().toString()); + if(null != meterFile){ + meterFile.setId(record.getId()); + BeanUtils.copyProperties(meterFile, record); + } + } + } + return verifyRegulationList.stream().filter(item -> StringUtils.isNotEmpty(item.getFileNo())).collect(Collectors.toList()); + } + + @Override public ReturnDTO batchDelete(List ids) { super.removeBatchByIds(ids); return ReturnUtil.success(); diff --git a/casic-metering-api/src/main/java/com/casic/missiles/controller/meter/MeterStaffController.java b/casic-metering-api/src/main/java/com/casic/missiles/controller/meter/MeterStaffController.java index f9eca51..ddf5db5 100644 --- a/casic-metering-api/src/main/java/com/casic/missiles/controller/meter/MeterStaffController.java +++ b/casic-metering-api/src/main/java/com/casic/missiles/controller/meter/MeterStaffController.java @@ -4,6 +4,7 @@ import com.baomidou.mybatisplus.extension.plugins.pagination.Page; import com.casic.missiles.core.base.controller.ExportController; import com.casic.missiles.core.page.PageFactory; +import com.casic.missiles.core.page.PageInfoBT; import com.casic.missiles.dto.IdDTO; import com.casic.missiles.dto.ReturnDTO; import com.casic.missiles.dto.ReturnUtil; @@ -47,7 +48,7 @@ @ApiOperation("计量人员列表") @PostMapping("/selectStaffList") @ResponseBody - public ReturnDTO listPage(@RequestBody MeterStaffRequest meterStaffRequest) { + public ReturnDTO> listPage(@RequestBody MeterStaffRequest meterStaffRequest) { Page page = PageFactory.defaultPage(); Page list = meterStaffService.selectStaffList(page,meterStaffRequest); return ReturnUtil.success(list); @@ -150,7 +151,7 @@ @ApiOperation("通过部门查询人员列表") @PostMapping("/selectStaffListByDept") @ResponseBody - public ReturnDTO selectStaffListByDept(@RequestBody MeterStaffRequest meterStaffRequest) { + public ReturnDTO> selectStaffListByDept(@RequestBody MeterStaffRequest meterStaffRequest) { List list = meterStaffService.selectStaffListByDept(meterStaffRequest); return ReturnUtil.success(list); } @@ -162,7 +163,7 @@ @ApiOperation("计量工作培训记录") @PostMapping("/staffCultivateLog") @ResponseBody - public ReturnDTO staffCultivateLog(@RequestBody IdDTO idDto) { + public ReturnDTO> staffCultivateLog(@RequestBody IdDTO idDto) { Page page = PageFactory.defaultPage(); return ReturnUtil.success(super.packForBT(meterStaffService.staffCultivateLog(page,idDto))); } 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 d1760b6..959c152 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 @@ -7,6 +7,8 @@ import com.casic.missiles.model.equipment.EquipmentFixedAssets; import org.apache.ibatis.annotations.Param; +import java.util.List; + /** *

* Mapper 接口 @@ -22,4 +24,6 @@ Page listPage(Page page, @Param("fixedAssetRequest") FixedAssetRequest fixedAssetRequest); Page queryEquipment(Page page, @Param("request")EquipmentOrSampleDto request); + + List listPage(@Param("fixedAssetRequest")FixedAssetRequest fixedAssetRequest); } diff --git a/casic-metering-dao/src/main/java/com/casic/missiles/mapper/equipment/EquipmentStandardEquipmentMapper.java b/casic-metering-dao/src/main/java/com/casic/missiles/mapper/equipment/EquipmentStandardEquipmentMapper.java index 191d11e..65f64aa 100644 --- a/casic-metering-dao/src/main/java/com/casic/missiles/mapper/equipment/EquipmentStandardEquipmentMapper.java +++ b/casic-metering-dao/src/main/java/com/casic/missiles/mapper/equipment/EquipmentStandardEquipmentMapper.java @@ -22,6 +22,8 @@ Page listPage(Page page, @Param("request") StandardEquipmentRequest request); + EquipmentStandardEquipment listPage(@Param("request") StandardEquipmentRequest request); + Page remindListPage(Page page, @Param("request") StandardEquipmentRequest request); List remindListPage(@Param("request") StandardEquipmentRequest request); diff --git a/casic-metering-dao/src/main/resources/mapper/meter/MeterStaffMapper.xml b/casic-metering-dao/src/main/resources/mapper/meter/MeterStaffMapper.xml index 2684a0d..7ac5017 100644 --- a/casic-metering-dao/src/main/resources/mapper/meter/MeterStaffMapper.xml +++ b/casic-metering-dao/src/main/resources/mapper/meter/MeterStaffMapper.xml @@ -33,21 +33,30 @@ - select t2.* from (SELECT - t.id, - t.`NAME`, - t.staff_no, - t.sex, - t.education, - t.technology_job, - t.administration_job, - t.dept_id, - (select `certificate_no` from meter_certificate where staff_id = t.id ORDER BY create_time limit 1) as verifier_certificate_no, - (select `valid_date` from meter_certificate where staff_id = t.id ORDER BY create_time limit 1) as certificate_date, - t.major, - t.technology_exam + SELECT + * FROM - meter_staff t where t.is_del = 0) t2 + ( + SELECT + t.id, + t.`NAME`, + t.staff_no, + t.sex, + t.education, + t.technology_job, + t.administration_job, + t.dept_id, + ( SELECT `certificate_no` FROM meter_certificate WHERE staff_id = t.id ORDER BY create_time LIMIT 1 ) AS verifier_certificate_no, + ( SELECT `valid_date` FROM meter_certificate WHERE staff_id = t.id ORDER BY create_time LIMIT 1 ) AS certificate_date, + t.major, + t.technology_exam, + su.id AS user_id + FROM + meter_staff t + LEFT JOIN sys_user su ON t.account = su.ACCOUNT + WHERE + t.is_del = 0 + ) t2 1 = 1 @@ -65,6 +74,9 @@ and t2.verifier_certificate_no like concat('%', #{request.verifierCertificateNo}, '%') + + and t2.administration_job = #{request.administrationJob} + and t1.id in diff --git a/casic-metering-model/src/main/java/com/casic/missiles/dto/meter/MeterStaffRequest.java b/casic-metering-model/src/main/java/com/casic/missiles/dto/meter/MeterStaffRequest.java index cf1cde8..5f484e5 100644 --- a/casic-metering-model/src/main/java/com/casic/missiles/dto/meter/MeterStaffRequest.java +++ b/casic-metering-model/src/main/java/com/casic/missiles/dto/meter/MeterStaffRequest.java @@ -70,4 +70,10 @@ @ApiModelProperty(value = "导出ids", dataType = "List") private List ids; + /** + * 行政职务 + */ + @ApiModelProperty(value = "行政职务", dataType = "String") + private String administrationJob; + } diff --git a/casic-metering-model/src/main/java/com/casic/missiles/model/equipment/EquipmentStandardEquipment.java b/casic-metering-model/src/main/java/com/casic/missiles/model/equipment/EquipmentStandardEquipment.java index afb3937..ac275b4 100644 --- a/casic-metering-model/src/main/java/com/casic/missiles/model/equipment/EquipmentStandardEquipment.java +++ b/casic-metering-model/src/main/java/com/casic/missiles/model/equipment/EquipmentStandardEquipment.java @@ -370,4 +370,25 @@ @TableField(exist = false) @ApiModelProperty(value = "文件列表", dataType = "List") private List fileList; + + /** + * 关联计量人员列表 + */ + @TableField(exist = false) + @ApiModelProperty(value = "关联计量人员列表", dataType = "List") + private List userList; + + /** + * 关联配套设备列表 + */ + @TableField(exist = false) + @ApiModelProperty(value = "关联配套设备列表", dataType = "List") + private List equipmentList; + + /** + * 关联检定规程列表 + */ + @TableField(exist = false) + @ApiModelProperty(value = "关联检定规程列表", dataType = "List") + private List verifyRegulationList; } diff --git a/casic-metering-model/src/main/java/com/casic/missiles/model/meter/MeterStaff.java b/casic-metering-model/src/main/java/com/casic/missiles/model/meter/MeterStaff.java index 05ea499..710194d 100644 --- a/casic-metering-model/src/main/java/com/casic/missiles/model/meter/MeterStaff.java +++ b/casic-metering-model/src/main/java/com/casic/missiles/model/meter/MeterStaff.java @@ -138,6 +138,10 @@ @ApiModelProperty(value = "更新时间", dataType = "String") private String updateTime; + @ApiModelProperty(value = "用户id", dataType = "List") + @TableField(exist = false) + private String userId; + @ApiModelProperty(value = "证书列表", dataType = "List") @TableField(exist = false) private List certificateList; diff --git a/casic-metering-service/src/main/java/com/casic/missiles/service/Impl/equipment/EquipmentStandardEquipmentServiceImpl.java b/casic-metering-service/src/main/java/com/casic/missiles/service/Impl/equipment/EquipmentStandardEquipmentServiceImpl.java index afa6905..e174535 100644 --- a/casic-metering-service/src/main/java/com/casic/missiles/service/Impl/equipment/EquipmentStandardEquipmentServiceImpl.java +++ b/casic-metering-service/src/main/java/com/casic/missiles/service/Impl/equipment/EquipmentStandardEquipmentServiceImpl.java @@ -9,21 +9,21 @@ import com.casic.missiles.dto.ReturnDTO; import com.casic.missiles.dto.ReturnUtil; import com.casic.missiles.dto.equipment.StandardEquipmentRequest; +import com.casic.missiles.enums.BusinessExceptionEnum; import com.casic.missiles.enums.ExportEnum; import com.casic.missiles.enums.PrefixCodeEnum; -import com.casic.missiles.mapper.equipment.EquipmentStandardEquipmentFileMapper; -import com.casic.missiles.mapper.equipment.EquipmentStandardEquipmentMapper; -import com.casic.missiles.model.equipment.EquipmentStandardEquipment; -import com.casic.missiles.model.equipment.EquipmentStandardEquipmentFile; +import com.casic.missiles.exception.BusinessException; +import com.casic.missiles.mapper.equipment.*; +import com.casic.missiles.model.equipment.*; import com.casic.missiles.model.page.PageQuery; -import com.casic.missiles.service.equipment.IEquipmentStandardEquipmentFileService; -import com.casic.missiles.service.equipment.IEquipmentStandardEquipmentService; +import com.casic.missiles.service.equipment.*; import com.casic.missiles.utils.DictCodeUtils; import com.casic.missiles.utils.NumberGeneratorUtil; import org.jetbrains.annotations.NotNull; import org.springframework.beans.factory.annotation.Autowired; import org.springframework.beans.factory.annotation.Value; import org.springframework.stereotype.Service; +import org.springframework.transaction.annotation.Transactional; import org.springframework.util.CollectionUtils; import javax.annotation.Resource; @@ -58,6 +58,24 @@ @Resource private IBaseExportService iBaseExportService; + @Resource + private EquipmentStandardEquipmentUserMapper equipmentUserMapper; + + @Resource + private EquipmentStandardSupportMapper supportMapper; + + @Resource + private EquipmentStandardVerifyRegulationMapper verifyRegulationMapper; + + @Resource + private IEquipmentStandardEquipmentUserService equipmentUserService; + + @Resource + private IEquipmentStandardSupportEquipmentService supportEquipmentService; + + @Resource + private IEquipmentStandardVerifyRegulationService verifyRegulationService; + @Value("${casic.meter.standardEquipment.delayDay:30}") private Integer delayDay; @@ -71,14 +89,17 @@ } @Override + @Transactional public ReturnDTO add(EquipmentStandardEquipment meterStandardEquipment) { //生成资产编号 Long maxNo = meterStandardEquipmentMapper.selectMaxNo(); String standard_no = NumberGeneratorUtil.getContactNo(PrefixCodeEnum.STANDARD_EQUIPMENT, maxNo); meterStandardEquipment.setStandardNo(standard_no); - meterStandardEquipmentMapper.insert(meterStandardEquipment); - // 插入文件列表 - return ReturnUtil.success(meterStandardEquipment.getId()); + if(meterStandardEquipmentMapper.insert(meterStandardEquipment)>0){ + batchSaveAssociatedTable(meterStandardEquipment); + return ReturnUtil.success(meterStandardEquipment.getId()); + } + throw new BusinessException(BusinessExceptionEnum.HANDLE_FAILED); } @Override @@ -87,17 +108,19 @@ if (deleteFlag > 0) { return ReturnUtil.success(); } - return ReturnUtil.failed("删除失败"); + throw new BusinessException(BusinessExceptionEnum.HANDLE_FAILED); } @Override public ReturnDTO update(EquipmentStandardEquipment meterStandardEquipment) { + // 修改标准装置基本信息 int updateFlag = meterStandardEquipmentMapper.updateById(meterStandardEquipment); - // 文件 if (updateFlag > 0) { + // 修改关联子表信息 + batchSaveAssociatedTable(meterStandardEquipment); return ReturnUtil.success(); } - return ReturnUtil.failed("更新失败"); + throw new BusinessException(BusinessExceptionEnum.HANDLE_FAILED); } /** @@ -139,23 +162,21 @@ @Override public EquipmentStandardEquipment getById(Long id) throws Exception { - PageQuery pageQuery = new PageQuery(); - pageQuery.setPageNo(0); - pageQuery.setPageSize(1); - Page page = PageFactory.createPage(pageQuery); StandardEquipmentRequest request = new StandardEquipmentRequest(); request.setId(id); - Page resultPage = meterStandardEquipmentMapper.listPage(page, request); - EquipmentStandardEquipment meterStandardEquipment = null; - if(!CollectionUtils.isEmpty(resultPage.getRecords())) { - meterStandardEquipment = resultPage.getRecords().get(0); - DictCodeUtils.convertDictCodeToName(meterStandardEquipment); - QueryWrapper wrapper = new QueryWrapper<>(); - wrapper.eq("standard_id", id); - // 获取文件 - meterStandardEquipment.setFileList(meterStandardEquipmentFileMapper.selectList(wrapper)); - } - return meterStandardEquipment; + EquipmentStandardEquipment standardEquipment = meterStandardEquipmentMapper.listPage(request); + DictCodeUtils.convertDictCodeToName(standardEquipment); + QueryWrapper wrapper = new QueryWrapper<>(); + wrapper.eq("standard_id", id); + // 获取关联的文件表 + standardEquipment.setFileList(meterStandardEquipmentFileMapper.selectList(wrapper)); + // 获取关联的计量人员 + standardEquipment.setUserList(equipmentUserService.list(id)); + // 获取关联的设备表 + standardEquipment.setEquipmentList(supportEquipmentService.list(id)); + // 获取关联的检定规程表 + standardEquipment.setVerifyRegulationList(verifyRegulationService.list(id)); + return standardEquipment; } @@ -163,16 +184,55 @@ * * @param meterStandardEquipment */ - public void batchSaveFile(EquipmentStandardEquipment meterStandardEquipment) { + public void batchSaveAssociatedTable(EquipmentStandardEquipment meterStandardEquipment) { + Long equipmentId = meterStandardEquipment.getId(); if (!CollectionUtils.isEmpty(meterStandardEquipment.getFileList())) { // 删除老的文件,更新新的文件 QueryWrapper wrapper = new QueryWrapper<>(); - wrapper.eq("standard_id", meterStandardEquipment.getId()); + wrapper.eq("standard_id", equipmentId); meterStandardEquipmentFileMapper.delete(wrapper); - meterStandardEquipment.getFileList().stream().forEach(item -> { - item.setStandardId(meterStandardEquipment.getId()); - }); - meterStandardEquipmentFileService.saveBatch(meterStandardEquipment.getFileList()); + for (EquipmentStandardEquipmentFile file : meterStandardEquipment.getFileList()) { + file.setStandardId(equipmentId); + } + if(!meterStandardEquipmentFileService.saveBatch(meterStandardEquipment.getFileList())){ + throw new BusinessException(BusinessExceptionEnum.HANDLE_FAILED); + } + } + if (!CollectionUtils.isEmpty(meterStandardEquipment.getUserList())) { + // 删除之前关联的人员,新增最终的人员列表 + QueryWrapper wrapper = new QueryWrapper<>(); + wrapper.eq("standard_equipment_id", equipmentId); + equipmentUserMapper.delete(wrapper); + for (EquipmentStandardEquipmentUser user : meterStandardEquipment.getUserList()) { + user.setStandardEquipmentId(equipmentId); + } + if(!equipmentUserService.saveBatch(meterStandardEquipment.getUserList())){ + throw new BusinessException(BusinessExceptionEnum.HANDLE_FAILED); + } + } + if (!CollectionUtils.isEmpty(meterStandardEquipment.getEquipmentList())) { + // 删除之前关联的设备,新增最终的设备列表 + QueryWrapper wrapper = new QueryWrapper<>(); + wrapper.eq("standard_equipment_id", equipmentId); + supportMapper.delete(wrapper); + for (EquipmentStandardSupportEquipment equipment : meterStandardEquipment.getEquipmentList()) { + equipment.setStandardEquipmentId(equipmentId); + } + if(!supportEquipmentService.saveBatch(meterStandardEquipment.getEquipmentList())){ + throw new BusinessException(BusinessExceptionEnum.HANDLE_FAILED); + } + } + if (!CollectionUtils.isEmpty(meterStandardEquipment.getVerifyRegulationList())) { + // 删除之前关联的检定规程,新增最终检定规程列表 + QueryWrapper wrapper = new QueryWrapper<>(); + wrapper.eq("standard_equipment_id", equipmentId); + verifyRegulationMapper.delete(wrapper); + for (EquipmentStandardVerifyRegulation verifyRegulation : meterStandardEquipment.getVerifyRegulationList()) { + verifyRegulation.setStandardEquipmentId(equipmentId); + } + if(!verifyRegulationService.saveBatch(meterStandardEquipment.getVerifyRegulationList())){ + throw new BusinessException(BusinessExceptionEnum.HANDLE_FAILED); + } } } diff --git a/casic-metering-service/src/main/java/com/casic/missiles/service/Impl/equipment/EquipmentStandardEquipmentUserServiceImpl.java b/casic-metering-service/src/main/java/com/casic/missiles/service/Impl/equipment/EquipmentStandardEquipmentUserServiceImpl.java index 43ed6a7..aa109b3 100644 --- a/casic-metering-service/src/main/java/com/casic/missiles/service/Impl/equipment/EquipmentStandardEquipmentUserServiceImpl.java +++ b/casic-metering-service/src/main/java/com/casic/missiles/service/Impl/equipment/EquipmentStandardEquipmentUserServiceImpl.java @@ -15,6 +15,7 @@ import com.casic.missiles.model.equipment.EquipmentStandardEquipmentUser; import com.casic.missiles.service.equipment.IEquipmentStandardEquipmentService; import com.casic.missiles.service.equipment.IEquipmentStandardEquipmentUserService; +import org.apache.commons.lang3.StringUtils; import org.springframework.beans.BeanUtils; import org.springframework.beans.factory.annotation.Autowired; import org.springframework.stereotype.Service; @@ -22,6 +23,7 @@ import java.util.ArrayList; import java.util.List; +import java.util.stream.Collectors; /** *

@@ -48,14 +50,20 @@ // 获取列表 QueryWrapper wrapper = new QueryWrapper(); wrapper.eq("standard_equipment_id", request.getId()); - Page meterStandardEquipmentUserPage = meterStandardEquipmentUserMapper.selectPage(page, wrapper); - if (!CollectionUtils.isEmpty(meterStandardEquipmentUserPage.getRecords())) { - for (EquipmentStandardEquipmentUser record : meterStandardEquipmentUserPage.getRecords()) { + Page equipmentUserPage = meterStandardEquipmentUserMapper.selectPage(page, wrapper); + if (!CollectionUtils.isEmpty(equipmentUserPage.getRecords())) { + for (EquipmentStandardEquipmentUser record : equipmentUserPage.getRecords()) { MeterStaff meterStaff = meterStaffMapper.selectStaffInfo(record.getUserId().toString()); - BeanUtils.copyProperties(meterStaff, record); + if(null != meterStaff){ + meterStaff.setId(record.getId()); + BeanUtils.copyProperties(meterStaff, record); + } } + // 将已经不存在的计量人员排除 + equipmentUserPage.setRecords(equipmentUserPage.getRecords().stream().filter(item -> StringUtils.isNotEmpty(item.getStaffNo())).collect(Collectors.toList())); + equipmentUserPage.setTotal(equipmentUserPage.getRecords().size()); } - return meterStandardEquipmentUserPage; + return equipmentUserPage; } @Override @@ -86,8 +94,21 @@ } @Override - public List list(IdDTO request) throws Exception { - return null; + public List list(Long id) throws Exception { + // 获取列表 + QueryWrapper wrapper = new QueryWrapper(); + wrapper.eq("standard_equipment_id", id); + List equipmentUserList = meterStandardEquipmentUserMapper.selectList(wrapper); + if (!CollectionUtils.isEmpty(equipmentUserList)) { + for (EquipmentStandardEquipmentUser record : equipmentUserList) { + MeterStaff meterStaff = meterStaffMapper.selectStaffInfo(record.getUserId().toString()); + if(null != meterStaff){ + meterStaff.setId(record.getId()); + BeanUtils.copyProperties(meterStaff, record); + } + } + } + return equipmentUserList.stream().filter(item -> StringUtils.isNotEmpty(item.getStaffNo())).collect(Collectors.toList()); } @Override diff --git a/casic-metering-service/src/main/java/com/casic/missiles/service/Impl/equipment/EquipmentStandardSupportEquipmentServiceImpl.java b/casic-metering-service/src/main/java/com/casic/missiles/service/Impl/equipment/EquipmentStandardSupportEquipmentServiceImpl.java index d034d87..11b9650 100644 --- a/casic-metering-service/src/main/java/com/casic/missiles/service/Impl/equipment/EquipmentStandardSupportEquipmentServiceImpl.java +++ b/casic-metering-service/src/main/java/com/casic/missiles/service/Impl/equipment/EquipmentStandardSupportEquipmentServiceImpl.java @@ -20,6 +20,7 @@ import com.casic.missiles.service.equipment.IEquipmentStandardEquipmentService; import com.casic.missiles.service.equipment.IEquipmentStandardSupportEquipmentService; import com.casic.missiles.utils.DictCodeUtils; +import org.apache.commons.lang3.StringUtils; import org.springframework.beans.BeanUtils; import org.springframework.beans.factory.annotation.Autowired; import org.springframework.stereotype.Service; @@ -54,9 +55,11 @@ // 获取列表 QueryWrapper wrapper = new QueryWrapper(); wrapper.eq("standard_equipment_id", request.getId()); - Page meterStandardSupportEquipmentPage = meterStandardSupportEquipmentMapper.selectPage(page, wrapper); - if (!CollectionUtils.isEmpty(meterStandardSupportEquipmentPage.getRecords())) { - List ids = meterStandardSupportEquipmentPage.getRecords().stream() + // 通过标准装置id查询出关联的设备id + Page supportEquipmentPage = meterStandardSupportEquipmentMapper.selectPage(page, wrapper); + if (!CollectionUtils.isEmpty(supportEquipmentPage.getRecords())) { + // 配套设备的ids + List ids = supportEquipmentPage.getRecords().stream() .map(EquipmentStandardSupportEquipment::getEquipmentId).collect(Collectors.toList()); FixedAssetRequest fixedAssetRequest = new FixedAssetRequest(); fixedAssetRequest.setIds(ids); @@ -64,19 +67,26 @@ pageQuery.setPageNo(0); pageQuery.setPageSize(ids.size()); Page page1 = PageFactory.createPage(pageQuery); + // 通过ids查询出对应的测量设备详细信息 Page meterFixedAssetsPage = meterFixedAssetsMapper.listPage(page1, fixedAssetRequest); Map existMap = CollectionUtils.newHashMap(ids.size()); if (!CollectionUtils.isEmpty(meterFixedAssetsPage.getRecords())){ existMap = meterFixedAssetsPage.getRecords().stream().collect(Collectors.toMap(EquipmentFixedAssets::getId, item -> item)); } - for (EquipmentStandardSupportEquipment record : meterStandardSupportEquipmentPage.getRecords()) { + // 将对应的设备信息补充到返回参数中 + for (EquipmentStandardSupportEquipment record : supportEquipmentPage.getRecords()) { EquipmentFixedAssets meterFixedAssets = existMap.get(record.getEquipmentId()); - meterFixedAssets.setId(record.getId()); - BeanUtils.copyProperties(meterFixedAssets, record); - DictCodeUtils.convertDictCodeToName(record); + if(null != meterFixedAssets){ + meterFixedAssets.setId(record.getId()); + BeanUtils.copyProperties(meterFixedAssets, record); + DictCodeUtils.convertDictCodeToName(record); + } } + // 将已经不存在的测量设备排除 + supportEquipmentPage.setRecords(supportEquipmentPage.getRecords().stream().filter(item -> StringUtils.isNotEmpty(item.getEquipmentNo())).collect(Collectors.toList())); + supportEquipmentPage.setTotal(supportEquipmentPage.getRecords().size()); } - return meterStandardSupportEquipmentPage; + return supportEquipmentPage; } @Override @@ -96,6 +106,38 @@ } @Override + public List list(Long id) throws Exception { + // 获取列表 + QueryWrapper wrapper = new QueryWrapper<>(); + wrapper.eq("standard_equipment_id", id); + // 通过标准装置id查询出关联的设备id + List supportEquipmentList = meterStandardSupportEquipmentMapper.selectList(wrapper); + if (!CollectionUtils.isEmpty(supportEquipmentList)) { + // 配套设备的ids + List ids = supportEquipmentList.stream() + .map(EquipmentStandardSupportEquipment::getEquipmentId).collect(Collectors.toList()); + FixedAssetRequest fixedAssetRequest = new FixedAssetRequest(); + fixedAssetRequest.setIds(ids); + // 通过ids查询出对应的测量设备详细信息 + List equipmentFixedAssetsList = meterFixedAssetsMapper.listPage(fixedAssetRequest); + Map existMap = CollectionUtils.newHashMap(ids.size()); + if (!CollectionUtils.isEmpty(equipmentFixedAssetsList)){ + existMap = equipmentFixedAssetsList.stream().collect(Collectors.toMap(EquipmentFixedAssets::getId, item -> item)); + } + // 将对应的设备信息补充到返回参数中 + for (EquipmentStandardSupportEquipment record : supportEquipmentList) { + EquipmentFixedAssets meterFixedAssets = existMap.get(record.getEquipmentId()); + if(null != meterFixedAssets){ + meterFixedAssets.setId(record.getId()); + BeanUtils.copyProperties(meterFixedAssets, record); + DictCodeUtils.convertDictCodeToName(record); + } + } + } + return supportEquipmentList.stream().filter(item -> StringUtils.isNotEmpty(item.getEquipmentNo())).collect(Collectors.toList()); + } + + @Override public ReturnDTO batchDelete(List ids) { this.removeBatchByIds(ids); return ReturnUtil.success(); diff --git a/casic-metering-service/src/main/java/com/casic/missiles/service/Impl/equipment/EquipmentStandardVerifyRegulationServiceImpl.java b/casic-metering-service/src/main/java/com/casic/missiles/service/Impl/equipment/EquipmentStandardVerifyRegulationServiceImpl.java index 230a973..9fd70a1 100644 --- a/casic-metering-service/src/main/java/com/casic/missiles/service/Impl/equipment/EquipmentStandardVerifyRegulationServiceImpl.java +++ b/casic-metering-service/src/main/java/com/casic/missiles/service/Impl/equipment/EquipmentStandardVerifyRegulationServiceImpl.java @@ -15,12 +15,14 @@ import com.casic.missiles.model.equipment.EquipmentStandardVerifyRegulation; import com.casic.missiles.service.equipment.IEquipmentStandardEquipmentService; import com.casic.missiles.service.equipment.IEquipmentStandardVerifyRegulationService; +import org.apache.commons.lang3.StringUtils; import org.springframework.beans.BeanUtils; import org.springframework.beans.factory.annotation.Autowired; import org.springframework.stereotype.Service; import org.springframework.util.CollectionUtils; import java.util.List; +import java.util.stream.Collectors; /** *

@@ -47,14 +49,20 @@ // 获取列表 QueryWrapper wrapper = new QueryWrapper(); wrapper.eq("standard_equipment_id", request.getId()); - Page meterStandardVerifyRegulationPage = meterStandardVerifyRegulationMapper.selectPage(page, wrapper); - if (!CollectionUtils.isEmpty(meterStandardVerifyRegulationPage.getRecords())) { - for (EquipmentStandardVerifyRegulation record : meterStandardVerifyRegulationPage.getRecords()) { + Page verifyRegulationPage = meterStandardVerifyRegulationMapper.selectPage(page, wrapper); + if (!CollectionUtils.isEmpty(verifyRegulationPage.getRecords())) { + for (EquipmentStandardVerifyRegulation record : verifyRegulationPage.getRecords()) { MeterFile meterFile = meterFileMapper.selectById(record.getVerifyRegulationId().toString()); - BeanUtils.copyProperties(meterFile, record); + if(null != meterFile){ + meterFile.setId(record.getId()); + BeanUtils.copyProperties(meterFile, record); + } } + // 将已经不存在的文件排除 + verifyRegulationPage.setRecords(verifyRegulationPage.getRecords().stream().filter(item -> StringUtils.isNotEmpty(item.getFileNo())).collect(Collectors.toList())); + verifyRegulationPage.setTotal(verifyRegulationPage.getRecords().size()); } - return meterStandardVerifyRegulationPage; + return verifyRegulationPage; } @Override @@ -73,6 +81,24 @@ } @Override + public List list(Long id) throws Exception { + // 获取列表 + QueryWrapper wrapper = new QueryWrapper<>(); + wrapper.eq("standard_equipment_id", id); + List verifyRegulationList = meterStandardVerifyRegulationMapper.selectList(wrapper); + if (!CollectionUtils.isEmpty(verifyRegulationList)) { + for (EquipmentStandardVerifyRegulation record : verifyRegulationList) { + MeterFile meterFile = meterFileMapper.selectById(record.getVerifyRegulationId().toString()); + if(null != meterFile){ + meterFile.setId(record.getId()); + BeanUtils.copyProperties(meterFile, record); + } + } + } + return verifyRegulationList.stream().filter(item -> StringUtils.isNotEmpty(item.getFileNo())).collect(Collectors.toList()); + } + + @Override public ReturnDTO batchDelete(List ids) { super.removeBatchByIds(ids); return ReturnUtil.success(); diff --git a/casic-metering-service/src/main/java/com/casic/missiles/service/equipment/IEquipmentStandardEquipmentUserService.java b/casic-metering-service/src/main/java/com/casic/missiles/service/equipment/IEquipmentStandardEquipmentUserService.java index 1a0dc0e..601acc9 100644 --- a/casic-metering-service/src/main/java/com/casic/missiles/service/equipment/IEquipmentStandardEquipmentUserService.java +++ b/casic-metering-service/src/main/java/com/casic/missiles/service/equipment/IEquipmentStandardEquipmentUserService.java @@ -24,7 +24,7 @@ ReturnDTO deleteById(Long id); - List list(IdDTO request) throws Exception; + List list(Long id) throws Exception; ReturnDTO addList(List meterStandardEquipmentUserList) throws Exception; diff --git a/casic-metering-service/src/main/java/com/casic/missiles/service/equipment/IEquipmentStandardSupportEquipmentService.java b/casic-metering-service/src/main/java/com/casic/missiles/service/equipment/IEquipmentStandardSupportEquipmentService.java index 47bb0ac..a7a04b3 100644 --- a/casic-metering-service/src/main/java/com/casic/missiles/service/equipment/IEquipmentStandardSupportEquipmentService.java +++ b/casic-metering-service/src/main/java/com/casic/missiles/service/equipment/IEquipmentStandardSupportEquipmentService.java @@ -4,6 +4,7 @@ import com.baomidou.mybatisplus.extension.service.IService; import com.casic.missiles.dto.IdDTO; import com.casic.missiles.dto.ReturnDTO; +import com.casic.missiles.model.equipment.EquipmentStandardEquipmentUser; import com.casic.missiles.model.equipment.EquipmentStandardSupportEquipment; import java.util.List; @@ -22,6 +23,8 @@ ReturnDTO add(EquipmentStandardSupportEquipment meterStandardSupportEquipment) throws Exception; + List list(Long id) throws Exception; + ReturnDTO batchDelete(List ids); } diff --git a/casic-metering-api/src/main/java/com/casic/missiles/controller/meter/MeterStaffController.java b/casic-metering-api/src/main/java/com/casic/missiles/controller/meter/MeterStaffController.java index f9eca51..ddf5db5 100644 --- a/casic-metering-api/src/main/java/com/casic/missiles/controller/meter/MeterStaffController.java +++ b/casic-metering-api/src/main/java/com/casic/missiles/controller/meter/MeterStaffController.java @@ -4,6 +4,7 @@ import com.baomidou.mybatisplus.extension.plugins.pagination.Page; import com.casic.missiles.core.base.controller.ExportController; import com.casic.missiles.core.page.PageFactory; +import com.casic.missiles.core.page.PageInfoBT; import com.casic.missiles.dto.IdDTO; import com.casic.missiles.dto.ReturnDTO; import com.casic.missiles.dto.ReturnUtil; @@ -47,7 +48,7 @@ @ApiOperation("计量人员列表") @PostMapping("/selectStaffList") @ResponseBody - public ReturnDTO listPage(@RequestBody MeterStaffRequest meterStaffRequest) { + public ReturnDTO> listPage(@RequestBody MeterStaffRequest meterStaffRequest) { Page page = PageFactory.defaultPage(); Page list = meterStaffService.selectStaffList(page,meterStaffRequest); return ReturnUtil.success(list); @@ -150,7 +151,7 @@ @ApiOperation("通过部门查询人员列表") @PostMapping("/selectStaffListByDept") @ResponseBody - public ReturnDTO selectStaffListByDept(@RequestBody MeterStaffRequest meterStaffRequest) { + public ReturnDTO> selectStaffListByDept(@RequestBody MeterStaffRequest meterStaffRequest) { List list = meterStaffService.selectStaffListByDept(meterStaffRequest); return ReturnUtil.success(list); } @@ -162,7 +163,7 @@ @ApiOperation("计量工作培训记录") @PostMapping("/staffCultivateLog") @ResponseBody - public ReturnDTO staffCultivateLog(@RequestBody IdDTO idDto) { + public ReturnDTO> staffCultivateLog(@RequestBody IdDTO idDto) { Page page = PageFactory.defaultPage(); return ReturnUtil.success(super.packForBT(meterStaffService.staffCultivateLog(page,idDto))); } 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 d1760b6..959c152 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 @@ -7,6 +7,8 @@ import com.casic.missiles.model.equipment.EquipmentFixedAssets; import org.apache.ibatis.annotations.Param; +import java.util.List; + /** *

* Mapper 接口 @@ -22,4 +24,6 @@ Page listPage(Page page, @Param("fixedAssetRequest") FixedAssetRequest fixedAssetRequest); Page queryEquipment(Page page, @Param("request")EquipmentOrSampleDto request); + + List listPage(@Param("fixedAssetRequest")FixedAssetRequest fixedAssetRequest); } diff --git a/casic-metering-dao/src/main/java/com/casic/missiles/mapper/equipment/EquipmentStandardEquipmentMapper.java b/casic-metering-dao/src/main/java/com/casic/missiles/mapper/equipment/EquipmentStandardEquipmentMapper.java index 191d11e..65f64aa 100644 --- a/casic-metering-dao/src/main/java/com/casic/missiles/mapper/equipment/EquipmentStandardEquipmentMapper.java +++ b/casic-metering-dao/src/main/java/com/casic/missiles/mapper/equipment/EquipmentStandardEquipmentMapper.java @@ -22,6 +22,8 @@ Page listPage(Page page, @Param("request") StandardEquipmentRequest request); + EquipmentStandardEquipment listPage(@Param("request") StandardEquipmentRequest request); + Page remindListPage(Page page, @Param("request") StandardEquipmentRequest request); List remindListPage(@Param("request") StandardEquipmentRequest request); diff --git a/casic-metering-dao/src/main/resources/mapper/meter/MeterStaffMapper.xml b/casic-metering-dao/src/main/resources/mapper/meter/MeterStaffMapper.xml index 2684a0d..7ac5017 100644 --- a/casic-metering-dao/src/main/resources/mapper/meter/MeterStaffMapper.xml +++ b/casic-metering-dao/src/main/resources/mapper/meter/MeterStaffMapper.xml @@ -33,21 +33,30 @@