diff --git a/casic-metering-api/src/main/java/com/casic/missiles/controller/meter/MeterStateManageController.java b/casic-metering-api/src/main/java/com/casic/missiles/controller/meter/MeterStateManageController.java new file mode 100644 index 0000000..a276ff5 --- /dev/null +++ b/casic-metering-api/src/main/java/com/casic/missiles/controller/meter/MeterStateManageController.java @@ -0,0 +1,85 @@ +package com.casic.missiles.controller.meter; + +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; +import com.casic.missiles.dto.meter.MeterStateManageRequest; +import com.casic.missiles.dto.meter.MeterStateManageResponse; +import com.casic.missiles.model.MeterCheckInfo; +import com.casic.missiles.model.MeterEquipmentApply; +import com.casic.missiles.service.meter.IMeterStateManageService; +import com.casic.missiles.service.meter.MeterEquipmentApplyService; +import io.swagger.annotations.Api; +import io.swagger.annotations.ApiOperation; +import lombok.extern.slf4j.Slf4j; +import org.springframework.web.bind.annotation.*; + +import javax.annotation.Resource; +import javax.validation.Valid; + +/** + **

+ * * 状态管理列表 + * *

+ * + * @author xiezhuangz + * @version 1.0 + * @date 2022/12/27 + */ +@Api(tags = "状态管理相关接口") +@Slf4j +@RestController +@RequestMapping("meter/stateManage") +public class MeterStateManageController extends ExportController { + + @Resource + private IMeterStateManageService stateManageService; + + @Resource + private MeterEquipmentApplyService meterEquipmentApplyService; + + /** + * 状态管理申请列表 + */ + @ApiOperation("状态管理申请列表") + @PostMapping("/stateManageList") + @ResponseBody + public ReturnDTO> applyList(@RequestBody MeterStateManageRequest request) throws Exception{ + Page page = PageFactory.defaultPage(); + return ReturnUtil.success(super.packForBT(stateManageService.stateManageList(page, request))); + } + + /** + * 状态管理申请列表删除 + */ + @ApiOperation("状态管理申请列表删除") + @PostMapping("/deleteStateManageList") + @ResponseBody + public ReturnDTO deleteStateManageList(@RequestBody IdDTO idDto) { + return meterEquipmentApplyService.deleteEquipmentApply(idDto); + } + + /** + * 状态管理申请详细信息 + */ + @ApiOperation("状态管理申请详细信息") + @PostMapping("/selectStateManageInfo") + @ResponseBody + public ReturnDTO selectStateManageInfo(@RequestBody IdDTO idDto) throws Exception{ + return ReturnUtil.success(stateManageService.selectStateManageInfo(idDto)); + } + + /** + * 设状态管理申请新建 + */ + @ApiOperation("设状态管理申请新建") + @PostMapping("/addStateManageInfo") + @ResponseBody + public ReturnDTO addStateManageInfo(@RequestBody @Valid MeterEquipmentApply meterEquipmentApply) throws Exception{ + return meterEquipmentApplyService.addEquipmentApply(meterEquipmentApply); + } +} diff --git a/casic-metering-api/src/main/java/com/casic/missiles/controller/meter/MeterStateManageController.java b/casic-metering-api/src/main/java/com/casic/missiles/controller/meter/MeterStateManageController.java new file mode 100644 index 0000000..a276ff5 --- /dev/null +++ b/casic-metering-api/src/main/java/com/casic/missiles/controller/meter/MeterStateManageController.java @@ -0,0 +1,85 @@ +package com.casic.missiles.controller.meter; + +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; +import com.casic.missiles.dto.meter.MeterStateManageRequest; +import com.casic.missiles.dto.meter.MeterStateManageResponse; +import com.casic.missiles.model.MeterCheckInfo; +import com.casic.missiles.model.MeterEquipmentApply; +import com.casic.missiles.service.meter.IMeterStateManageService; +import com.casic.missiles.service.meter.MeterEquipmentApplyService; +import io.swagger.annotations.Api; +import io.swagger.annotations.ApiOperation; +import lombok.extern.slf4j.Slf4j; +import org.springframework.web.bind.annotation.*; + +import javax.annotation.Resource; +import javax.validation.Valid; + +/** + **

+ * * 状态管理列表 + * *

+ * + * @author xiezhuangz + * @version 1.0 + * @date 2022/12/27 + */ +@Api(tags = "状态管理相关接口") +@Slf4j +@RestController +@RequestMapping("meter/stateManage") +public class MeterStateManageController extends ExportController { + + @Resource + private IMeterStateManageService stateManageService; + + @Resource + private MeterEquipmentApplyService meterEquipmentApplyService; + + /** + * 状态管理申请列表 + */ + @ApiOperation("状态管理申请列表") + @PostMapping("/stateManageList") + @ResponseBody + public ReturnDTO> applyList(@RequestBody MeterStateManageRequest request) throws Exception{ + Page page = PageFactory.defaultPage(); + return ReturnUtil.success(super.packForBT(stateManageService.stateManageList(page, request))); + } + + /** + * 状态管理申请列表删除 + */ + @ApiOperation("状态管理申请列表删除") + @PostMapping("/deleteStateManageList") + @ResponseBody + public ReturnDTO deleteStateManageList(@RequestBody IdDTO idDto) { + return meterEquipmentApplyService.deleteEquipmentApply(idDto); + } + + /** + * 状态管理申请详细信息 + */ + @ApiOperation("状态管理申请详细信息") + @PostMapping("/selectStateManageInfo") + @ResponseBody + public ReturnDTO selectStateManageInfo(@RequestBody IdDTO idDto) throws Exception{ + return ReturnUtil.success(stateManageService.selectStateManageInfo(idDto)); + } + + /** + * 设状态管理申请新建 + */ + @ApiOperation("设状态管理申请新建") + @PostMapping("/addStateManageInfo") + @ResponseBody + public ReturnDTO addStateManageInfo(@RequestBody @Valid MeterEquipmentApply meterEquipmentApply) throws Exception{ + return meterEquipmentApplyService.addEquipmentApply(meterEquipmentApply); + } +} diff --git a/casic-metering-dao/src/main/java/com/casic/missiles/mapper/meter/MeterEquipmentApplyFileMapper.java b/casic-metering-dao/src/main/java/com/casic/missiles/mapper/meter/MeterEquipmentApplyFileMapper.java new file mode 100644 index 0000000..69c6356 --- /dev/null +++ b/casic-metering-dao/src/main/java/com/casic/missiles/mapper/meter/MeterEquipmentApplyFileMapper.java @@ -0,0 +1,7 @@ +package com.casic.missiles.mapper.meter; + +import com.baomidou.mybatisplus.core.mapper.BaseMapper; +import com.casic.missiles.model.MeterEquipmentApplyFile; + +public interface MeterEquipmentApplyFileMapper extends BaseMapper { +} diff --git a/casic-metering-api/src/main/java/com/casic/missiles/controller/meter/MeterStateManageController.java b/casic-metering-api/src/main/java/com/casic/missiles/controller/meter/MeterStateManageController.java new file mode 100644 index 0000000..a276ff5 --- /dev/null +++ b/casic-metering-api/src/main/java/com/casic/missiles/controller/meter/MeterStateManageController.java @@ -0,0 +1,85 @@ +package com.casic.missiles.controller.meter; + +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; +import com.casic.missiles.dto.meter.MeterStateManageRequest; +import com.casic.missiles.dto.meter.MeterStateManageResponse; +import com.casic.missiles.model.MeterCheckInfo; +import com.casic.missiles.model.MeterEquipmentApply; +import com.casic.missiles.service.meter.IMeterStateManageService; +import com.casic.missiles.service.meter.MeterEquipmentApplyService; +import io.swagger.annotations.Api; +import io.swagger.annotations.ApiOperation; +import lombok.extern.slf4j.Slf4j; +import org.springframework.web.bind.annotation.*; + +import javax.annotation.Resource; +import javax.validation.Valid; + +/** + **

+ * * 状态管理列表 + * *

+ * + * @author xiezhuangz + * @version 1.0 + * @date 2022/12/27 + */ +@Api(tags = "状态管理相关接口") +@Slf4j +@RestController +@RequestMapping("meter/stateManage") +public class MeterStateManageController extends ExportController { + + @Resource + private IMeterStateManageService stateManageService; + + @Resource + private MeterEquipmentApplyService meterEquipmentApplyService; + + /** + * 状态管理申请列表 + */ + @ApiOperation("状态管理申请列表") + @PostMapping("/stateManageList") + @ResponseBody + public ReturnDTO> applyList(@RequestBody MeterStateManageRequest request) throws Exception{ + Page page = PageFactory.defaultPage(); + return ReturnUtil.success(super.packForBT(stateManageService.stateManageList(page, request))); + } + + /** + * 状态管理申请列表删除 + */ + @ApiOperation("状态管理申请列表删除") + @PostMapping("/deleteStateManageList") + @ResponseBody + public ReturnDTO deleteStateManageList(@RequestBody IdDTO idDto) { + return meterEquipmentApplyService.deleteEquipmentApply(idDto); + } + + /** + * 状态管理申请详细信息 + */ + @ApiOperation("状态管理申请详细信息") + @PostMapping("/selectStateManageInfo") + @ResponseBody + public ReturnDTO selectStateManageInfo(@RequestBody IdDTO idDto) throws Exception{ + return ReturnUtil.success(stateManageService.selectStateManageInfo(idDto)); + } + + /** + * 设状态管理申请新建 + */ + @ApiOperation("设状态管理申请新建") + @PostMapping("/addStateManageInfo") + @ResponseBody + public ReturnDTO addStateManageInfo(@RequestBody @Valid MeterEquipmentApply meterEquipmentApply) throws Exception{ + return meterEquipmentApplyService.addEquipmentApply(meterEquipmentApply); + } +} diff --git a/casic-metering-dao/src/main/java/com/casic/missiles/mapper/meter/MeterEquipmentApplyFileMapper.java b/casic-metering-dao/src/main/java/com/casic/missiles/mapper/meter/MeterEquipmentApplyFileMapper.java new file mode 100644 index 0000000..69c6356 --- /dev/null +++ b/casic-metering-dao/src/main/java/com/casic/missiles/mapper/meter/MeterEquipmentApplyFileMapper.java @@ -0,0 +1,7 @@ +package com.casic.missiles.mapper.meter; + +import com.baomidou.mybatisplus.core.mapper.BaseMapper; +import com.casic.missiles.model.MeterEquipmentApplyFile; + +public interface MeterEquipmentApplyFileMapper extends BaseMapper { +} diff --git a/casic-metering-dao/src/main/java/com/casic/missiles/mapper/meter/MeterStateManageMapper.java b/casic-metering-dao/src/main/java/com/casic/missiles/mapper/meter/MeterStateManageMapper.java new file mode 100644 index 0000000..ad60153 --- /dev/null +++ b/casic-metering-dao/src/main/java/com/casic/missiles/mapper/meter/MeterStateManageMapper.java @@ -0,0 +1,14 @@ +package com.casic.missiles.mapper.meter; + +import com.baomidou.mybatisplus.extension.plugins.pagination.Page; +import com.casic.missiles.dto.meter.MeterStateManageRequest; +import com.casic.missiles.dto.meter.MeterStateManageResponse; +import com.casic.missiles.model.MeterCheckInfo; +import org.apache.ibatis.annotations.Param; + +public interface MeterStateManageMapper { + + Page stateManageList(Page page, @Param("request") MeterStateManageRequest request); + + MeterStateManageResponse selectById(@Param("id") Long id); +} diff --git a/casic-metering-api/src/main/java/com/casic/missiles/controller/meter/MeterStateManageController.java b/casic-metering-api/src/main/java/com/casic/missiles/controller/meter/MeterStateManageController.java new file mode 100644 index 0000000..a276ff5 --- /dev/null +++ b/casic-metering-api/src/main/java/com/casic/missiles/controller/meter/MeterStateManageController.java @@ -0,0 +1,85 @@ +package com.casic.missiles.controller.meter; + +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; +import com.casic.missiles.dto.meter.MeterStateManageRequest; +import com.casic.missiles.dto.meter.MeterStateManageResponse; +import com.casic.missiles.model.MeterCheckInfo; +import com.casic.missiles.model.MeterEquipmentApply; +import com.casic.missiles.service.meter.IMeterStateManageService; +import com.casic.missiles.service.meter.MeterEquipmentApplyService; +import io.swagger.annotations.Api; +import io.swagger.annotations.ApiOperation; +import lombok.extern.slf4j.Slf4j; +import org.springframework.web.bind.annotation.*; + +import javax.annotation.Resource; +import javax.validation.Valid; + +/** + **

+ * * 状态管理列表 + * *

+ * + * @author xiezhuangz + * @version 1.0 + * @date 2022/12/27 + */ +@Api(tags = "状态管理相关接口") +@Slf4j +@RestController +@RequestMapping("meter/stateManage") +public class MeterStateManageController extends ExportController { + + @Resource + private IMeterStateManageService stateManageService; + + @Resource + private MeterEquipmentApplyService meterEquipmentApplyService; + + /** + * 状态管理申请列表 + */ + @ApiOperation("状态管理申请列表") + @PostMapping("/stateManageList") + @ResponseBody + public ReturnDTO> applyList(@RequestBody MeterStateManageRequest request) throws Exception{ + Page page = PageFactory.defaultPage(); + return ReturnUtil.success(super.packForBT(stateManageService.stateManageList(page, request))); + } + + /** + * 状态管理申请列表删除 + */ + @ApiOperation("状态管理申请列表删除") + @PostMapping("/deleteStateManageList") + @ResponseBody + public ReturnDTO deleteStateManageList(@RequestBody IdDTO idDto) { + return meterEquipmentApplyService.deleteEquipmentApply(idDto); + } + + /** + * 状态管理申请详细信息 + */ + @ApiOperation("状态管理申请详细信息") + @PostMapping("/selectStateManageInfo") + @ResponseBody + public ReturnDTO selectStateManageInfo(@RequestBody IdDTO idDto) throws Exception{ + return ReturnUtil.success(stateManageService.selectStateManageInfo(idDto)); + } + + /** + * 设状态管理申请新建 + */ + @ApiOperation("设状态管理申请新建") + @PostMapping("/addStateManageInfo") + @ResponseBody + public ReturnDTO addStateManageInfo(@RequestBody @Valid MeterEquipmentApply meterEquipmentApply) throws Exception{ + return meterEquipmentApplyService.addEquipmentApply(meterEquipmentApply); + } +} diff --git a/casic-metering-dao/src/main/java/com/casic/missiles/mapper/meter/MeterEquipmentApplyFileMapper.java b/casic-metering-dao/src/main/java/com/casic/missiles/mapper/meter/MeterEquipmentApplyFileMapper.java new file mode 100644 index 0000000..69c6356 --- /dev/null +++ b/casic-metering-dao/src/main/java/com/casic/missiles/mapper/meter/MeterEquipmentApplyFileMapper.java @@ -0,0 +1,7 @@ +package com.casic.missiles.mapper.meter; + +import com.baomidou.mybatisplus.core.mapper.BaseMapper; +import com.casic.missiles.model.MeterEquipmentApplyFile; + +public interface MeterEquipmentApplyFileMapper extends BaseMapper { +} diff --git a/casic-metering-dao/src/main/java/com/casic/missiles/mapper/meter/MeterStateManageMapper.java b/casic-metering-dao/src/main/java/com/casic/missiles/mapper/meter/MeterStateManageMapper.java new file mode 100644 index 0000000..ad60153 --- /dev/null +++ b/casic-metering-dao/src/main/java/com/casic/missiles/mapper/meter/MeterStateManageMapper.java @@ -0,0 +1,14 @@ +package com.casic.missiles.mapper.meter; + +import com.baomidou.mybatisplus.extension.plugins.pagination.Page; +import com.casic.missiles.dto.meter.MeterStateManageRequest; +import com.casic.missiles.dto.meter.MeterStateManageResponse; +import com.casic.missiles.model.MeterCheckInfo; +import org.apache.ibatis.annotations.Param; + +public interface MeterStateManageMapper { + + Page stateManageList(Page page, @Param("request") MeterStateManageRequest request); + + MeterStateManageResponse selectById(@Param("id") Long id); +} diff --git a/casic-metering-dao/src/main/resources/mapper/meter/MeterCertificateMapper.xml b/casic-metering-dao/src/main/resources/mapper/meter/MeterCertificateMapper.xml index 7f4ff3e..6eb532b 100644 --- a/casic-metering-dao/src/main/resources/mapper/meter/MeterCertificateMapper.xml +++ b/casic-metering-dao/src/main/resources/mapper/meter/MeterCertificateMapper.xml @@ -32,7 +32,7 @@ t1.certificate_name, t1.certificate_date, t1.certificate_company, - t1.valid_date, + DATE_FORMAT(t1.valid_date,'%Y-%m-%d') as valid_date, t1.certificate_status, t1.remark, t2.NAME, @@ -41,10 +41,11 @@ t2.education, t2.technology_job, t2.administration_job, - t2.dept_id + t3.FULL_NAME as dept_id FROM meter_certificate AS t1 LEFT JOIN meter_staff t2 ON t1.staff_id = t2.id + LEFT JOIN sys_dept t3 on t2.dept_id = t3.id and t1.is_del = 0 @@ -62,6 +63,9 @@ and t1.certificate_status = #{request.certificateStatus} + + and DATE_FORMAT(t1.valid_date,'%Y-%m-%d') <= DATE_SUB(curdate(),INTERVAL -30 day) + diff --git a/casic-metering-api/src/main/java/com/casic/missiles/controller/meter/MeterStateManageController.java b/casic-metering-api/src/main/java/com/casic/missiles/controller/meter/MeterStateManageController.java new file mode 100644 index 0000000..a276ff5 --- /dev/null +++ b/casic-metering-api/src/main/java/com/casic/missiles/controller/meter/MeterStateManageController.java @@ -0,0 +1,85 @@ +package com.casic.missiles.controller.meter; + +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; +import com.casic.missiles.dto.meter.MeterStateManageRequest; +import com.casic.missiles.dto.meter.MeterStateManageResponse; +import com.casic.missiles.model.MeterCheckInfo; +import com.casic.missiles.model.MeterEquipmentApply; +import com.casic.missiles.service.meter.IMeterStateManageService; +import com.casic.missiles.service.meter.MeterEquipmentApplyService; +import io.swagger.annotations.Api; +import io.swagger.annotations.ApiOperation; +import lombok.extern.slf4j.Slf4j; +import org.springframework.web.bind.annotation.*; + +import javax.annotation.Resource; +import javax.validation.Valid; + +/** + **

+ * * 状态管理列表 + * *

+ * + * @author xiezhuangz + * @version 1.0 + * @date 2022/12/27 + */ +@Api(tags = "状态管理相关接口") +@Slf4j +@RestController +@RequestMapping("meter/stateManage") +public class MeterStateManageController extends ExportController { + + @Resource + private IMeterStateManageService stateManageService; + + @Resource + private MeterEquipmentApplyService meterEquipmentApplyService; + + /** + * 状态管理申请列表 + */ + @ApiOperation("状态管理申请列表") + @PostMapping("/stateManageList") + @ResponseBody + public ReturnDTO> applyList(@RequestBody MeterStateManageRequest request) throws Exception{ + Page page = PageFactory.defaultPage(); + return ReturnUtil.success(super.packForBT(stateManageService.stateManageList(page, request))); + } + + /** + * 状态管理申请列表删除 + */ + @ApiOperation("状态管理申请列表删除") + @PostMapping("/deleteStateManageList") + @ResponseBody + public ReturnDTO deleteStateManageList(@RequestBody IdDTO idDto) { + return meterEquipmentApplyService.deleteEquipmentApply(idDto); + } + + /** + * 状态管理申请详细信息 + */ + @ApiOperation("状态管理申请详细信息") + @PostMapping("/selectStateManageInfo") + @ResponseBody + public ReturnDTO selectStateManageInfo(@RequestBody IdDTO idDto) throws Exception{ + return ReturnUtil.success(stateManageService.selectStateManageInfo(idDto)); + } + + /** + * 设状态管理申请新建 + */ + @ApiOperation("设状态管理申请新建") + @PostMapping("/addStateManageInfo") + @ResponseBody + public ReturnDTO addStateManageInfo(@RequestBody @Valid MeterEquipmentApply meterEquipmentApply) throws Exception{ + return meterEquipmentApplyService.addEquipmentApply(meterEquipmentApply); + } +} diff --git a/casic-metering-dao/src/main/java/com/casic/missiles/mapper/meter/MeterEquipmentApplyFileMapper.java b/casic-metering-dao/src/main/java/com/casic/missiles/mapper/meter/MeterEquipmentApplyFileMapper.java new file mode 100644 index 0000000..69c6356 --- /dev/null +++ b/casic-metering-dao/src/main/java/com/casic/missiles/mapper/meter/MeterEquipmentApplyFileMapper.java @@ -0,0 +1,7 @@ +package com.casic.missiles.mapper.meter; + +import com.baomidou.mybatisplus.core.mapper.BaseMapper; +import com.casic.missiles.model.MeterEquipmentApplyFile; + +public interface MeterEquipmentApplyFileMapper extends BaseMapper { +} diff --git a/casic-metering-dao/src/main/java/com/casic/missiles/mapper/meter/MeterStateManageMapper.java b/casic-metering-dao/src/main/java/com/casic/missiles/mapper/meter/MeterStateManageMapper.java new file mode 100644 index 0000000..ad60153 --- /dev/null +++ b/casic-metering-dao/src/main/java/com/casic/missiles/mapper/meter/MeterStateManageMapper.java @@ -0,0 +1,14 @@ +package com.casic.missiles.mapper.meter; + +import com.baomidou.mybatisplus.extension.plugins.pagination.Page; +import com.casic.missiles.dto.meter.MeterStateManageRequest; +import com.casic.missiles.dto.meter.MeterStateManageResponse; +import com.casic.missiles.model.MeterCheckInfo; +import org.apache.ibatis.annotations.Param; + +public interface MeterStateManageMapper { + + Page stateManageList(Page page, @Param("request") MeterStateManageRequest request); + + MeterStateManageResponse selectById(@Param("id") Long id); +} diff --git a/casic-metering-dao/src/main/resources/mapper/meter/MeterCertificateMapper.xml b/casic-metering-dao/src/main/resources/mapper/meter/MeterCertificateMapper.xml index 7f4ff3e..6eb532b 100644 --- a/casic-metering-dao/src/main/resources/mapper/meter/MeterCertificateMapper.xml +++ b/casic-metering-dao/src/main/resources/mapper/meter/MeterCertificateMapper.xml @@ -32,7 +32,7 @@ t1.certificate_name, t1.certificate_date, t1.certificate_company, - t1.valid_date, + DATE_FORMAT(t1.valid_date,'%Y-%m-%d') as valid_date, t1.certificate_status, t1.remark, t2.NAME, @@ -41,10 +41,11 @@ t2.education, t2.technology_job, t2.administration_job, - t2.dept_id + t3.FULL_NAME as dept_id FROM meter_certificate AS t1 LEFT JOIN meter_staff t2 ON t1.staff_id = t2.id + LEFT JOIN sys_dept t3 on t2.dept_id = t3.id and t1.is_del = 0 @@ -62,6 +63,9 @@ and t1.certificate_status = #{request.certificateStatus} + + and DATE_FORMAT(t1.valid_date,'%Y-%m-%d') <= DATE_SUB(curdate(),INTERVAL -30 day) + diff --git a/casic-metering-dao/src/main/resources/mapper/meter/MeterStateManageMapper.xml b/casic-metering-dao/src/main/resources/mapper/meter/MeterStateManageMapper.xml new file mode 100644 index 0000000..4f3e5f1 --- /dev/null +++ b/casic-metering-dao/src/main/resources/mapper/meter/MeterStateManageMapper.xml @@ -0,0 +1,66 @@ + + + + + + + + SELECT + msa.id, + msa.apply_no, + msa.apply_type, + mfa.equipment_no, + mfa.equipment_name, + mfa.model_no, + mfa.manager_state, + msa.approval_status, + sd.SIMPLE_NAME as apply_unit, + su.`NAME` as apply_person, + DATE_FORMAT( msa.time, '%Y-%m-%d %H:%i' ) as time, + msa.process_id, + msa.process_result, + msa.remark + FROM + meter_equipment_apply msa + LEFT JOIN sys_user su ON su.id = msa.apply_person + LEFT JOIN sys_dept sd ON sd.id = msa.apply_unit + LEFT JOIN meter_equipment_apply_equipment meae on msa.id = meae.apply_id + LEFT JOIN meter_fixed_assets mfa on meae.equipment_id = mfa.id + where 1=1 and msa.is_del = 0 + + + + + diff --git a/casic-metering-api/src/main/java/com/casic/missiles/controller/meter/MeterStateManageController.java b/casic-metering-api/src/main/java/com/casic/missiles/controller/meter/MeterStateManageController.java new file mode 100644 index 0000000..a276ff5 --- /dev/null +++ b/casic-metering-api/src/main/java/com/casic/missiles/controller/meter/MeterStateManageController.java @@ -0,0 +1,85 @@ +package com.casic.missiles.controller.meter; + +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; +import com.casic.missiles.dto.meter.MeterStateManageRequest; +import com.casic.missiles.dto.meter.MeterStateManageResponse; +import com.casic.missiles.model.MeterCheckInfo; +import com.casic.missiles.model.MeterEquipmentApply; +import com.casic.missiles.service.meter.IMeterStateManageService; +import com.casic.missiles.service.meter.MeterEquipmentApplyService; +import io.swagger.annotations.Api; +import io.swagger.annotations.ApiOperation; +import lombok.extern.slf4j.Slf4j; +import org.springframework.web.bind.annotation.*; + +import javax.annotation.Resource; +import javax.validation.Valid; + +/** + **

+ * * 状态管理列表 + * *

+ * + * @author xiezhuangz + * @version 1.0 + * @date 2022/12/27 + */ +@Api(tags = "状态管理相关接口") +@Slf4j +@RestController +@RequestMapping("meter/stateManage") +public class MeterStateManageController extends ExportController { + + @Resource + private IMeterStateManageService stateManageService; + + @Resource + private MeterEquipmentApplyService meterEquipmentApplyService; + + /** + * 状态管理申请列表 + */ + @ApiOperation("状态管理申请列表") + @PostMapping("/stateManageList") + @ResponseBody + public ReturnDTO> applyList(@RequestBody MeterStateManageRequest request) throws Exception{ + Page page = PageFactory.defaultPage(); + return ReturnUtil.success(super.packForBT(stateManageService.stateManageList(page, request))); + } + + /** + * 状态管理申请列表删除 + */ + @ApiOperation("状态管理申请列表删除") + @PostMapping("/deleteStateManageList") + @ResponseBody + public ReturnDTO deleteStateManageList(@RequestBody IdDTO idDto) { + return meterEquipmentApplyService.deleteEquipmentApply(idDto); + } + + /** + * 状态管理申请详细信息 + */ + @ApiOperation("状态管理申请详细信息") + @PostMapping("/selectStateManageInfo") + @ResponseBody + public ReturnDTO selectStateManageInfo(@RequestBody IdDTO idDto) throws Exception{ + return ReturnUtil.success(stateManageService.selectStateManageInfo(idDto)); + } + + /** + * 设状态管理申请新建 + */ + @ApiOperation("设状态管理申请新建") + @PostMapping("/addStateManageInfo") + @ResponseBody + public ReturnDTO addStateManageInfo(@RequestBody @Valid MeterEquipmentApply meterEquipmentApply) throws Exception{ + return meterEquipmentApplyService.addEquipmentApply(meterEquipmentApply); + } +} diff --git a/casic-metering-dao/src/main/java/com/casic/missiles/mapper/meter/MeterEquipmentApplyFileMapper.java b/casic-metering-dao/src/main/java/com/casic/missiles/mapper/meter/MeterEquipmentApplyFileMapper.java new file mode 100644 index 0000000..69c6356 --- /dev/null +++ b/casic-metering-dao/src/main/java/com/casic/missiles/mapper/meter/MeterEquipmentApplyFileMapper.java @@ -0,0 +1,7 @@ +package com.casic.missiles.mapper.meter; + +import com.baomidou.mybatisplus.core.mapper.BaseMapper; +import com.casic.missiles.model.MeterEquipmentApplyFile; + +public interface MeterEquipmentApplyFileMapper extends BaseMapper { +} diff --git a/casic-metering-dao/src/main/java/com/casic/missiles/mapper/meter/MeterStateManageMapper.java b/casic-metering-dao/src/main/java/com/casic/missiles/mapper/meter/MeterStateManageMapper.java new file mode 100644 index 0000000..ad60153 --- /dev/null +++ b/casic-metering-dao/src/main/java/com/casic/missiles/mapper/meter/MeterStateManageMapper.java @@ -0,0 +1,14 @@ +package com.casic.missiles.mapper.meter; + +import com.baomidou.mybatisplus.extension.plugins.pagination.Page; +import com.casic.missiles.dto.meter.MeterStateManageRequest; +import com.casic.missiles.dto.meter.MeterStateManageResponse; +import com.casic.missiles.model.MeterCheckInfo; +import org.apache.ibatis.annotations.Param; + +public interface MeterStateManageMapper { + + Page stateManageList(Page page, @Param("request") MeterStateManageRequest request); + + MeterStateManageResponse selectById(@Param("id") Long id); +} diff --git a/casic-metering-dao/src/main/resources/mapper/meter/MeterCertificateMapper.xml b/casic-metering-dao/src/main/resources/mapper/meter/MeterCertificateMapper.xml index 7f4ff3e..6eb532b 100644 --- a/casic-metering-dao/src/main/resources/mapper/meter/MeterCertificateMapper.xml +++ b/casic-metering-dao/src/main/resources/mapper/meter/MeterCertificateMapper.xml @@ -32,7 +32,7 @@ t1.certificate_name, t1.certificate_date, t1.certificate_company, - t1.valid_date, + DATE_FORMAT(t1.valid_date,'%Y-%m-%d') as valid_date, t1.certificate_status, t1.remark, t2.NAME, @@ -41,10 +41,11 @@ t2.education, t2.technology_job, t2.administration_job, - t2.dept_id + t3.FULL_NAME as dept_id FROM meter_certificate AS t1 LEFT JOIN meter_staff t2 ON t1.staff_id = t2.id + LEFT JOIN sys_dept t3 on t2.dept_id = t3.id and t1.is_del = 0 @@ -62,6 +63,9 @@ and t1.certificate_status = #{request.certificateStatus} + + and DATE_FORMAT(t1.valid_date,'%Y-%m-%d') <= DATE_SUB(curdate(),INTERVAL -30 day) + diff --git a/casic-metering-dao/src/main/resources/mapper/meter/MeterStateManageMapper.xml b/casic-metering-dao/src/main/resources/mapper/meter/MeterStateManageMapper.xml new file mode 100644 index 0000000..4f3e5f1 --- /dev/null +++ b/casic-metering-dao/src/main/resources/mapper/meter/MeterStateManageMapper.xml @@ -0,0 +1,66 @@ + + + + + + + + SELECT + msa.id, + msa.apply_no, + msa.apply_type, + mfa.equipment_no, + mfa.equipment_name, + mfa.model_no, + mfa.manager_state, + msa.approval_status, + sd.SIMPLE_NAME as apply_unit, + su.`NAME` as apply_person, + DATE_FORMAT( msa.time, '%Y-%m-%d %H:%i' ) as time, + msa.process_id, + msa.process_result, + msa.remark + FROM + meter_equipment_apply msa + LEFT JOIN sys_user su ON su.id = msa.apply_person + LEFT JOIN sys_dept sd ON sd.id = msa.apply_unit + LEFT JOIN meter_equipment_apply_equipment meae on msa.id = meae.apply_id + LEFT JOIN meter_fixed_assets mfa on meae.equipment_id = mfa.id + where 1=1 and msa.is_del = 0 + + + + + diff --git a/casic-metering-model/src/main/java/com/casic/missiles/dto/meter/MeterEquipmentApplyRequest.java b/casic-metering-model/src/main/java/com/casic/missiles/dto/meter/MeterEquipmentApplyRequest.java index 0f5db75..2154032 100644 --- a/casic-metering-model/src/main/java/com/casic/missiles/dto/meter/MeterEquipmentApplyRequest.java +++ b/casic-metering-model/src/main/java/com/casic/missiles/dto/meter/MeterEquipmentApplyRequest.java @@ -1,7 +1,6 @@ package com.casic.missiles.dto.meter; -import com.baomidou.mybatisplus.annotation.TableField; import io.swagger.annotations.ApiModel; import io.swagger.annotations.ApiModelProperty; import lombok.Data; @@ -49,20 +48,20 @@ /** * 审批状态 */ - @ApiModelProperty(value = "审批状态", dataType = "String") + @ApiModelProperty(value = "审批状态", dataType = "String", required = true) private String approvalStatus; /** * 处置结果 */ - @ApiModelProperty(value = "处置结果", dataType = "String") + @ApiModelProperty(value = "处置结果", dataType = "String", required = true) private String processResult; /** * 创建人 */ - @ApiModelProperty(value = "创建人", dataType = "String") + @ApiModelProperty(value = "创建人", dataType = "String", required = true) private String createUser; } diff --git a/casic-metering-api/src/main/java/com/casic/missiles/controller/meter/MeterStateManageController.java b/casic-metering-api/src/main/java/com/casic/missiles/controller/meter/MeterStateManageController.java new file mode 100644 index 0000000..a276ff5 --- /dev/null +++ b/casic-metering-api/src/main/java/com/casic/missiles/controller/meter/MeterStateManageController.java @@ -0,0 +1,85 @@ +package com.casic.missiles.controller.meter; + +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; +import com.casic.missiles.dto.meter.MeterStateManageRequest; +import com.casic.missiles.dto.meter.MeterStateManageResponse; +import com.casic.missiles.model.MeterCheckInfo; +import com.casic.missiles.model.MeterEquipmentApply; +import com.casic.missiles.service.meter.IMeterStateManageService; +import com.casic.missiles.service.meter.MeterEquipmentApplyService; +import io.swagger.annotations.Api; +import io.swagger.annotations.ApiOperation; +import lombok.extern.slf4j.Slf4j; +import org.springframework.web.bind.annotation.*; + +import javax.annotation.Resource; +import javax.validation.Valid; + +/** + **

+ * * 状态管理列表 + * *

+ * + * @author xiezhuangz + * @version 1.0 + * @date 2022/12/27 + */ +@Api(tags = "状态管理相关接口") +@Slf4j +@RestController +@RequestMapping("meter/stateManage") +public class MeterStateManageController extends ExportController { + + @Resource + private IMeterStateManageService stateManageService; + + @Resource + private MeterEquipmentApplyService meterEquipmentApplyService; + + /** + * 状态管理申请列表 + */ + @ApiOperation("状态管理申请列表") + @PostMapping("/stateManageList") + @ResponseBody + public ReturnDTO> applyList(@RequestBody MeterStateManageRequest request) throws Exception{ + Page page = PageFactory.defaultPage(); + return ReturnUtil.success(super.packForBT(stateManageService.stateManageList(page, request))); + } + + /** + * 状态管理申请列表删除 + */ + @ApiOperation("状态管理申请列表删除") + @PostMapping("/deleteStateManageList") + @ResponseBody + public ReturnDTO deleteStateManageList(@RequestBody IdDTO idDto) { + return meterEquipmentApplyService.deleteEquipmentApply(idDto); + } + + /** + * 状态管理申请详细信息 + */ + @ApiOperation("状态管理申请详细信息") + @PostMapping("/selectStateManageInfo") + @ResponseBody + public ReturnDTO selectStateManageInfo(@RequestBody IdDTO idDto) throws Exception{ + return ReturnUtil.success(stateManageService.selectStateManageInfo(idDto)); + } + + /** + * 设状态管理申请新建 + */ + @ApiOperation("设状态管理申请新建") + @PostMapping("/addStateManageInfo") + @ResponseBody + public ReturnDTO addStateManageInfo(@RequestBody @Valid MeterEquipmentApply meterEquipmentApply) throws Exception{ + return meterEquipmentApplyService.addEquipmentApply(meterEquipmentApply); + } +} diff --git a/casic-metering-dao/src/main/java/com/casic/missiles/mapper/meter/MeterEquipmentApplyFileMapper.java b/casic-metering-dao/src/main/java/com/casic/missiles/mapper/meter/MeterEquipmentApplyFileMapper.java new file mode 100644 index 0000000..69c6356 --- /dev/null +++ b/casic-metering-dao/src/main/java/com/casic/missiles/mapper/meter/MeterEquipmentApplyFileMapper.java @@ -0,0 +1,7 @@ +package com.casic.missiles.mapper.meter; + +import com.baomidou.mybatisplus.core.mapper.BaseMapper; +import com.casic.missiles.model.MeterEquipmentApplyFile; + +public interface MeterEquipmentApplyFileMapper extends BaseMapper { +} diff --git a/casic-metering-dao/src/main/java/com/casic/missiles/mapper/meter/MeterStateManageMapper.java b/casic-metering-dao/src/main/java/com/casic/missiles/mapper/meter/MeterStateManageMapper.java new file mode 100644 index 0000000..ad60153 --- /dev/null +++ b/casic-metering-dao/src/main/java/com/casic/missiles/mapper/meter/MeterStateManageMapper.java @@ -0,0 +1,14 @@ +package com.casic.missiles.mapper.meter; + +import com.baomidou.mybatisplus.extension.plugins.pagination.Page; +import com.casic.missiles.dto.meter.MeterStateManageRequest; +import com.casic.missiles.dto.meter.MeterStateManageResponse; +import com.casic.missiles.model.MeterCheckInfo; +import org.apache.ibatis.annotations.Param; + +public interface MeterStateManageMapper { + + Page stateManageList(Page page, @Param("request") MeterStateManageRequest request); + + MeterStateManageResponse selectById(@Param("id") Long id); +} diff --git a/casic-metering-dao/src/main/resources/mapper/meter/MeterCertificateMapper.xml b/casic-metering-dao/src/main/resources/mapper/meter/MeterCertificateMapper.xml index 7f4ff3e..6eb532b 100644 --- a/casic-metering-dao/src/main/resources/mapper/meter/MeterCertificateMapper.xml +++ b/casic-metering-dao/src/main/resources/mapper/meter/MeterCertificateMapper.xml @@ -32,7 +32,7 @@ t1.certificate_name, t1.certificate_date, t1.certificate_company, - t1.valid_date, + DATE_FORMAT(t1.valid_date,'%Y-%m-%d') as valid_date, t1.certificate_status, t1.remark, t2.NAME, @@ -41,10 +41,11 @@ t2.education, t2.technology_job, t2.administration_job, - t2.dept_id + t3.FULL_NAME as dept_id FROM meter_certificate AS t1 LEFT JOIN meter_staff t2 ON t1.staff_id = t2.id + LEFT JOIN sys_dept t3 on t2.dept_id = t3.id and t1.is_del = 0 @@ -62,6 +63,9 @@ and t1.certificate_status = #{request.certificateStatus} + + and DATE_FORMAT(t1.valid_date,'%Y-%m-%d') <= DATE_SUB(curdate(),INTERVAL -30 day) + diff --git a/casic-metering-dao/src/main/resources/mapper/meter/MeterStateManageMapper.xml b/casic-metering-dao/src/main/resources/mapper/meter/MeterStateManageMapper.xml new file mode 100644 index 0000000..4f3e5f1 --- /dev/null +++ b/casic-metering-dao/src/main/resources/mapper/meter/MeterStateManageMapper.xml @@ -0,0 +1,66 @@ + + + + + + + + SELECT + msa.id, + msa.apply_no, + msa.apply_type, + mfa.equipment_no, + mfa.equipment_name, + mfa.model_no, + mfa.manager_state, + msa.approval_status, + sd.SIMPLE_NAME as apply_unit, + su.`NAME` as apply_person, + DATE_FORMAT( msa.time, '%Y-%m-%d %H:%i' ) as time, + msa.process_id, + msa.process_result, + msa.remark + FROM + meter_equipment_apply msa + LEFT JOIN sys_user su ON su.id = msa.apply_person + LEFT JOIN sys_dept sd ON sd.id = msa.apply_unit + LEFT JOIN meter_equipment_apply_equipment meae on msa.id = meae.apply_id + LEFT JOIN meter_fixed_assets mfa on meae.equipment_id = mfa.id + where 1=1 and msa.is_del = 0 + + + + + diff --git a/casic-metering-model/src/main/java/com/casic/missiles/dto/meter/MeterEquipmentApplyRequest.java b/casic-metering-model/src/main/java/com/casic/missiles/dto/meter/MeterEquipmentApplyRequest.java index 0f5db75..2154032 100644 --- a/casic-metering-model/src/main/java/com/casic/missiles/dto/meter/MeterEquipmentApplyRequest.java +++ b/casic-metering-model/src/main/java/com/casic/missiles/dto/meter/MeterEquipmentApplyRequest.java @@ -1,7 +1,6 @@ package com.casic.missiles.dto.meter; -import com.baomidou.mybatisplus.annotation.TableField; import io.swagger.annotations.ApiModel; import io.swagger.annotations.ApiModelProperty; import lombok.Data; @@ -49,20 +48,20 @@ /** * 审批状态 */ - @ApiModelProperty(value = "审批状态", dataType = "String") + @ApiModelProperty(value = "审批状态", dataType = "String", required = true) private String approvalStatus; /** * 处置结果 */ - @ApiModelProperty(value = "处置结果", dataType = "String") + @ApiModelProperty(value = "处置结果", dataType = "String", required = true) private String processResult; /** * 创建人 */ - @ApiModelProperty(value = "创建人", dataType = "String") + @ApiModelProperty(value = "创建人", dataType = "String", required = true) private String createUser; } 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 7e95296..3403124 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 @@ -50,5 +50,11 @@ @ApiModelProperty(value = "证书状态", dataType = "String") private String certificateStatus; + /** + * 证书提醒列表 + */ + @ApiModelProperty(value = "证书提醒列表", dataType = "String") + private String remindType; + } diff --git a/casic-metering-api/src/main/java/com/casic/missiles/controller/meter/MeterStateManageController.java b/casic-metering-api/src/main/java/com/casic/missiles/controller/meter/MeterStateManageController.java new file mode 100644 index 0000000..a276ff5 --- /dev/null +++ b/casic-metering-api/src/main/java/com/casic/missiles/controller/meter/MeterStateManageController.java @@ -0,0 +1,85 @@ +package com.casic.missiles.controller.meter; + +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; +import com.casic.missiles.dto.meter.MeterStateManageRequest; +import com.casic.missiles.dto.meter.MeterStateManageResponse; +import com.casic.missiles.model.MeterCheckInfo; +import com.casic.missiles.model.MeterEquipmentApply; +import com.casic.missiles.service.meter.IMeterStateManageService; +import com.casic.missiles.service.meter.MeterEquipmentApplyService; +import io.swagger.annotations.Api; +import io.swagger.annotations.ApiOperation; +import lombok.extern.slf4j.Slf4j; +import org.springframework.web.bind.annotation.*; + +import javax.annotation.Resource; +import javax.validation.Valid; + +/** + **

+ * * 状态管理列表 + * *

+ * + * @author xiezhuangz + * @version 1.0 + * @date 2022/12/27 + */ +@Api(tags = "状态管理相关接口") +@Slf4j +@RestController +@RequestMapping("meter/stateManage") +public class MeterStateManageController extends ExportController { + + @Resource + private IMeterStateManageService stateManageService; + + @Resource + private MeterEquipmentApplyService meterEquipmentApplyService; + + /** + * 状态管理申请列表 + */ + @ApiOperation("状态管理申请列表") + @PostMapping("/stateManageList") + @ResponseBody + public ReturnDTO> applyList(@RequestBody MeterStateManageRequest request) throws Exception{ + Page page = PageFactory.defaultPage(); + return ReturnUtil.success(super.packForBT(stateManageService.stateManageList(page, request))); + } + + /** + * 状态管理申请列表删除 + */ + @ApiOperation("状态管理申请列表删除") + @PostMapping("/deleteStateManageList") + @ResponseBody + public ReturnDTO deleteStateManageList(@RequestBody IdDTO idDto) { + return meterEquipmentApplyService.deleteEquipmentApply(idDto); + } + + /** + * 状态管理申请详细信息 + */ + @ApiOperation("状态管理申请详细信息") + @PostMapping("/selectStateManageInfo") + @ResponseBody + public ReturnDTO selectStateManageInfo(@RequestBody IdDTO idDto) throws Exception{ + return ReturnUtil.success(stateManageService.selectStateManageInfo(idDto)); + } + + /** + * 设状态管理申请新建 + */ + @ApiOperation("设状态管理申请新建") + @PostMapping("/addStateManageInfo") + @ResponseBody + public ReturnDTO addStateManageInfo(@RequestBody @Valid MeterEquipmentApply meterEquipmentApply) throws Exception{ + return meterEquipmentApplyService.addEquipmentApply(meterEquipmentApply); + } +} diff --git a/casic-metering-dao/src/main/java/com/casic/missiles/mapper/meter/MeterEquipmentApplyFileMapper.java b/casic-metering-dao/src/main/java/com/casic/missiles/mapper/meter/MeterEquipmentApplyFileMapper.java new file mode 100644 index 0000000..69c6356 --- /dev/null +++ b/casic-metering-dao/src/main/java/com/casic/missiles/mapper/meter/MeterEquipmentApplyFileMapper.java @@ -0,0 +1,7 @@ +package com.casic.missiles.mapper.meter; + +import com.baomidou.mybatisplus.core.mapper.BaseMapper; +import com.casic.missiles.model.MeterEquipmentApplyFile; + +public interface MeterEquipmentApplyFileMapper extends BaseMapper { +} diff --git a/casic-metering-dao/src/main/java/com/casic/missiles/mapper/meter/MeterStateManageMapper.java b/casic-metering-dao/src/main/java/com/casic/missiles/mapper/meter/MeterStateManageMapper.java new file mode 100644 index 0000000..ad60153 --- /dev/null +++ b/casic-metering-dao/src/main/java/com/casic/missiles/mapper/meter/MeterStateManageMapper.java @@ -0,0 +1,14 @@ +package com.casic.missiles.mapper.meter; + +import com.baomidou.mybatisplus.extension.plugins.pagination.Page; +import com.casic.missiles.dto.meter.MeterStateManageRequest; +import com.casic.missiles.dto.meter.MeterStateManageResponse; +import com.casic.missiles.model.MeterCheckInfo; +import org.apache.ibatis.annotations.Param; + +public interface MeterStateManageMapper { + + Page stateManageList(Page page, @Param("request") MeterStateManageRequest request); + + MeterStateManageResponse selectById(@Param("id") Long id); +} diff --git a/casic-metering-dao/src/main/resources/mapper/meter/MeterCertificateMapper.xml b/casic-metering-dao/src/main/resources/mapper/meter/MeterCertificateMapper.xml index 7f4ff3e..6eb532b 100644 --- a/casic-metering-dao/src/main/resources/mapper/meter/MeterCertificateMapper.xml +++ b/casic-metering-dao/src/main/resources/mapper/meter/MeterCertificateMapper.xml @@ -32,7 +32,7 @@ t1.certificate_name, t1.certificate_date, t1.certificate_company, - t1.valid_date, + DATE_FORMAT(t1.valid_date,'%Y-%m-%d') as valid_date, t1.certificate_status, t1.remark, t2.NAME, @@ -41,10 +41,11 @@ t2.education, t2.technology_job, t2.administration_job, - t2.dept_id + t3.FULL_NAME as dept_id FROM meter_certificate AS t1 LEFT JOIN meter_staff t2 ON t1.staff_id = t2.id + LEFT JOIN sys_dept t3 on t2.dept_id = t3.id and t1.is_del = 0 @@ -62,6 +63,9 @@ and t1.certificate_status = #{request.certificateStatus} + + and DATE_FORMAT(t1.valid_date,'%Y-%m-%d') <= DATE_SUB(curdate(),INTERVAL -30 day) + diff --git a/casic-metering-dao/src/main/resources/mapper/meter/MeterStateManageMapper.xml b/casic-metering-dao/src/main/resources/mapper/meter/MeterStateManageMapper.xml new file mode 100644 index 0000000..4f3e5f1 --- /dev/null +++ b/casic-metering-dao/src/main/resources/mapper/meter/MeterStateManageMapper.xml @@ -0,0 +1,66 @@ + + + + + + + + SELECT + msa.id, + msa.apply_no, + msa.apply_type, + mfa.equipment_no, + mfa.equipment_name, + mfa.model_no, + mfa.manager_state, + msa.approval_status, + sd.SIMPLE_NAME as apply_unit, + su.`NAME` as apply_person, + DATE_FORMAT( msa.time, '%Y-%m-%d %H:%i' ) as time, + msa.process_id, + msa.process_result, + msa.remark + FROM + meter_equipment_apply msa + LEFT JOIN sys_user su ON su.id = msa.apply_person + LEFT JOIN sys_dept sd ON sd.id = msa.apply_unit + LEFT JOIN meter_equipment_apply_equipment meae on msa.id = meae.apply_id + LEFT JOIN meter_fixed_assets mfa on meae.equipment_id = mfa.id + where 1=1 and msa.is_del = 0 + + + + + diff --git a/casic-metering-model/src/main/java/com/casic/missiles/dto/meter/MeterEquipmentApplyRequest.java b/casic-metering-model/src/main/java/com/casic/missiles/dto/meter/MeterEquipmentApplyRequest.java index 0f5db75..2154032 100644 --- a/casic-metering-model/src/main/java/com/casic/missiles/dto/meter/MeterEquipmentApplyRequest.java +++ b/casic-metering-model/src/main/java/com/casic/missiles/dto/meter/MeterEquipmentApplyRequest.java @@ -1,7 +1,6 @@ package com.casic.missiles.dto.meter; -import com.baomidou.mybatisplus.annotation.TableField; import io.swagger.annotations.ApiModel; import io.swagger.annotations.ApiModelProperty; import lombok.Data; @@ -49,20 +48,20 @@ /** * 审批状态 */ - @ApiModelProperty(value = "审批状态", dataType = "String") + @ApiModelProperty(value = "审批状态", dataType = "String", required = true) private String approvalStatus; /** * 处置结果 */ - @ApiModelProperty(value = "处置结果", dataType = "String") + @ApiModelProperty(value = "处置结果", dataType = "String", required = true) private String processResult; /** * 创建人 */ - @ApiModelProperty(value = "创建人", dataType = "String") + @ApiModelProperty(value = "创建人", dataType = "String", required = true) private String createUser; } 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 7e95296..3403124 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 @@ -50,5 +50,11 @@ @ApiModelProperty(value = "证书状态", dataType = "String") private String certificateStatus; + /** + * 证书提醒列表 + */ + @ApiModelProperty(value = "证书提醒列表", dataType = "String") + private String remindType; + } diff --git a/casic-metering-model/src/main/java/com/casic/missiles/dto/meter/MeterStateManageRequest.java b/casic-metering-model/src/main/java/com/casic/missiles/dto/meter/MeterStateManageRequest.java new file mode 100644 index 0000000..492c414 --- /dev/null +++ b/casic-metering-model/src/main/java/com/casic/missiles/dto/meter/MeterStateManageRequest.java @@ -0,0 +1,59 @@ +package com.casic.missiles.dto.meter; + +import io.swagger.annotations.ApiModel; +import io.swagger.annotations.ApiModelProperty; +import lombok.Data; + +/** + * 测量设备-状态管理申请请求实体 + * @author xiezhuangz + * @version 1.0 + * @date 2022/12/19 9:43 + */ + +@ApiModel +@Data +public class MeterStateManageRequest { + + /** + * 申请编号 + */ + @ApiModelProperty(value = "申请编号", dataType = "String") + private String applyNo; + + /** + * 设备编号 + */ + @ApiModelProperty(value = "(状态管理)设备编号", dataType = "String") + private String equipmentNo; + + /** + * 设备名称 + */ + @ApiModelProperty(value = "设备名称", dataType = "String") + private String equipmentName; + + /** + * 申请单位 + */ + @ApiModelProperty(value = "申请单位", dataType = "String") + private String applyUnit; + + /** + * 申请状态 + */ + @ApiModelProperty(value = "申请状态", dataType = "String") + private String applyStatus; + + /** + * 审批状态 + */ + @ApiModelProperty(value = "审批状态", dataType = "String", required = true) + private String approvalStatus; + + /** + * 创建人 + */ + @ApiModelProperty(value = "创建人", dataType = "String", required = true) + private String createUser; +} diff --git a/casic-metering-api/src/main/java/com/casic/missiles/controller/meter/MeterStateManageController.java b/casic-metering-api/src/main/java/com/casic/missiles/controller/meter/MeterStateManageController.java new file mode 100644 index 0000000..a276ff5 --- /dev/null +++ b/casic-metering-api/src/main/java/com/casic/missiles/controller/meter/MeterStateManageController.java @@ -0,0 +1,85 @@ +package com.casic.missiles.controller.meter; + +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; +import com.casic.missiles.dto.meter.MeterStateManageRequest; +import com.casic.missiles.dto.meter.MeterStateManageResponse; +import com.casic.missiles.model.MeterCheckInfo; +import com.casic.missiles.model.MeterEquipmentApply; +import com.casic.missiles.service.meter.IMeterStateManageService; +import com.casic.missiles.service.meter.MeterEquipmentApplyService; +import io.swagger.annotations.Api; +import io.swagger.annotations.ApiOperation; +import lombok.extern.slf4j.Slf4j; +import org.springframework.web.bind.annotation.*; + +import javax.annotation.Resource; +import javax.validation.Valid; + +/** + **

+ * * 状态管理列表 + * *

+ * + * @author xiezhuangz + * @version 1.0 + * @date 2022/12/27 + */ +@Api(tags = "状态管理相关接口") +@Slf4j +@RestController +@RequestMapping("meter/stateManage") +public class MeterStateManageController extends ExportController { + + @Resource + private IMeterStateManageService stateManageService; + + @Resource + private MeterEquipmentApplyService meterEquipmentApplyService; + + /** + * 状态管理申请列表 + */ + @ApiOperation("状态管理申请列表") + @PostMapping("/stateManageList") + @ResponseBody + public ReturnDTO> applyList(@RequestBody MeterStateManageRequest request) throws Exception{ + Page page = PageFactory.defaultPage(); + return ReturnUtil.success(super.packForBT(stateManageService.stateManageList(page, request))); + } + + /** + * 状态管理申请列表删除 + */ + @ApiOperation("状态管理申请列表删除") + @PostMapping("/deleteStateManageList") + @ResponseBody + public ReturnDTO deleteStateManageList(@RequestBody IdDTO idDto) { + return meterEquipmentApplyService.deleteEquipmentApply(idDto); + } + + /** + * 状态管理申请详细信息 + */ + @ApiOperation("状态管理申请详细信息") + @PostMapping("/selectStateManageInfo") + @ResponseBody + public ReturnDTO selectStateManageInfo(@RequestBody IdDTO idDto) throws Exception{ + return ReturnUtil.success(stateManageService.selectStateManageInfo(idDto)); + } + + /** + * 设状态管理申请新建 + */ + @ApiOperation("设状态管理申请新建") + @PostMapping("/addStateManageInfo") + @ResponseBody + public ReturnDTO addStateManageInfo(@RequestBody @Valid MeterEquipmentApply meterEquipmentApply) throws Exception{ + return meterEquipmentApplyService.addEquipmentApply(meterEquipmentApply); + } +} diff --git a/casic-metering-dao/src/main/java/com/casic/missiles/mapper/meter/MeterEquipmentApplyFileMapper.java b/casic-metering-dao/src/main/java/com/casic/missiles/mapper/meter/MeterEquipmentApplyFileMapper.java new file mode 100644 index 0000000..69c6356 --- /dev/null +++ b/casic-metering-dao/src/main/java/com/casic/missiles/mapper/meter/MeterEquipmentApplyFileMapper.java @@ -0,0 +1,7 @@ +package com.casic.missiles.mapper.meter; + +import com.baomidou.mybatisplus.core.mapper.BaseMapper; +import com.casic.missiles.model.MeterEquipmentApplyFile; + +public interface MeterEquipmentApplyFileMapper extends BaseMapper { +} diff --git a/casic-metering-dao/src/main/java/com/casic/missiles/mapper/meter/MeterStateManageMapper.java b/casic-metering-dao/src/main/java/com/casic/missiles/mapper/meter/MeterStateManageMapper.java new file mode 100644 index 0000000..ad60153 --- /dev/null +++ b/casic-metering-dao/src/main/java/com/casic/missiles/mapper/meter/MeterStateManageMapper.java @@ -0,0 +1,14 @@ +package com.casic.missiles.mapper.meter; + +import com.baomidou.mybatisplus.extension.plugins.pagination.Page; +import com.casic.missiles.dto.meter.MeterStateManageRequest; +import com.casic.missiles.dto.meter.MeterStateManageResponse; +import com.casic.missiles.model.MeterCheckInfo; +import org.apache.ibatis.annotations.Param; + +public interface MeterStateManageMapper { + + Page stateManageList(Page page, @Param("request") MeterStateManageRequest request); + + MeterStateManageResponse selectById(@Param("id") Long id); +} diff --git a/casic-metering-dao/src/main/resources/mapper/meter/MeterCertificateMapper.xml b/casic-metering-dao/src/main/resources/mapper/meter/MeterCertificateMapper.xml index 7f4ff3e..6eb532b 100644 --- a/casic-metering-dao/src/main/resources/mapper/meter/MeterCertificateMapper.xml +++ b/casic-metering-dao/src/main/resources/mapper/meter/MeterCertificateMapper.xml @@ -32,7 +32,7 @@ t1.certificate_name, t1.certificate_date, t1.certificate_company, - t1.valid_date, + DATE_FORMAT(t1.valid_date,'%Y-%m-%d') as valid_date, t1.certificate_status, t1.remark, t2.NAME, @@ -41,10 +41,11 @@ t2.education, t2.technology_job, t2.administration_job, - t2.dept_id + t3.FULL_NAME as dept_id FROM meter_certificate AS t1 LEFT JOIN meter_staff t2 ON t1.staff_id = t2.id + LEFT JOIN sys_dept t3 on t2.dept_id = t3.id and t1.is_del = 0 @@ -62,6 +63,9 @@ and t1.certificate_status = #{request.certificateStatus} + + and DATE_FORMAT(t1.valid_date,'%Y-%m-%d') <= DATE_SUB(curdate(),INTERVAL -30 day) + diff --git a/casic-metering-dao/src/main/resources/mapper/meter/MeterStateManageMapper.xml b/casic-metering-dao/src/main/resources/mapper/meter/MeterStateManageMapper.xml new file mode 100644 index 0000000..4f3e5f1 --- /dev/null +++ b/casic-metering-dao/src/main/resources/mapper/meter/MeterStateManageMapper.xml @@ -0,0 +1,66 @@ + + + + + + + + SELECT + msa.id, + msa.apply_no, + msa.apply_type, + mfa.equipment_no, + mfa.equipment_name, + mfa.model_no, + mfa.manager_state, + msa.approval_status, + sd.SIMPLE_NAME as apply_unit, + su.`NAME` as apply_person, + DATE_FORMAT( msa.time, '%Y-%m-%d %H:%i' ) as time, + msa.process_id, + msa.process_result, + msa.remark + FROM + meter_equipment_apply msa + LEFT JOIN sys_user su ON su.id = msa.apply_person + LEFT JOIN sys_dept sd ON sd.id = msa.apply_unit + LEFT JOIN meter_equipment_apply_equipment meae on msa.id = meae.apply_id + LEFT JOIN meter_fixed_assets mfa on meae.equipment_id = mfa.id + where 1=1 and msa.is_del = 0 + + + + + diff --git a/casic-metering-model/src/main/java/com/casic/missiles/dto/meter/MeterEquipmentApplyRequest.java b/casic-metering-model/src/main/java/com/casic/missiles/dto/meter/MeterEquipmentApplyRequest.java index 0f5db75..2154032 100644 --- a/casic-metering-model/src/main/java/com/casic/missiles/dto/meter/MeterEquipmentApplyRequest.java +++ b/casic-metering-model/src/main/java/com/casic/missiles/dto/meter/MeterEquipmentApplyRequest.java @@ -1,7 +1,6 @@ package com.casic.missiles.dto.meter; -import com.baomidou.mybatisplus.annotation.TableField; import io.swagger.annotations.ApiModel; import io.swagger.annotations.ApiModelProperty; import lombok.Data; @@ -49,20 +48,20 @@ /** * 审批状态 */ - @ApiModelProperty(value = "审批状态", dataType = "String") + @ApiModelProperty(value = "审批状态", dataType = "String", required = true) private String approvalStatus; /** * 处置结果 */ - @ApiModelProperty(value = "处置结果", dataType = "String") + @ApiModelProperty(value = "处置结果", dataType = "String", required = true) private String processResult; /** * 创建人 */ - @ApiModelProperty(value = "创建人", dataType = "String") + @ApiModelProperty(value = "创建人", dataType = "String", required = true) private String createUser; } 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 7e95296..3403124 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 @@ -50,5 +50,11 @@ @ApiModelProperty(value = "证书状态", dataType = "String") private String certificateStatus; + /** + * 证书提醒列表 + */ + @ApiModelProperty(value = "证书提醒列表", dataType = "String") + private String remindType; + } diff --git a/casic-metering-model/src/main/java/com/casic/missiles/dto/meter/MeterStateManageRequest.java b/casic-metering-model/src/main/java/com/casic/missiles/dto/meter/MeterStateManageRequest.java new file mode 100644 index 0000000..492c414 --- /dev/null +++ b/casic-metering-model/src/main/java/com/casic/missiles/dto/meter/MeterStateManageRequest.java @@ -0,0 +1,59 @@ +package com.casic.missiles.dto.meter; + +import io.swagger.annotations.ApiModel; +import io.swagger.annotations.ApiModelProperty; +import lombok.Data; + +/** + * 测量设备-状态管理申请请求实体 + * @author xiezhuangz + * @version 1.0 + * @date 2022/12/19 9:43 + */ + +@ApiModel +@Data +public class MeterStateManageRequest { + + /** + * 申请编号 + */ + @ApiModelProperty(value = "申请编号", dataType = "String") + private String applyNo; + + /** + * 设备编号 + */ + @ApiModelProperty(value = "(状态管理)设备编号", dataType = "String") + private String equipmentNo; + + /** + * 设备名称 + */ + @ApiModelProperty(value = "设备名称", dataType = "String") + private String equipmentName; + + /** + * 申请单位 + */ + @ApiModelProperty(value = "申请单位", dataType = "String") + private String applyUnit; + + /** + * 申请状态 + */ + @ApiModelProperty(value = "申请状态", dataType = "String") + private String applyStatus; + + /** + * 审批状态 + */ + @ApiModelProperty(value = "审批状态", dataType = "String", required = true) + private String approvalStatus; + + /** + * 创建人 + */ + @ApiModelProperty(value = "创建人", dataType = "String", required = true) + private String createUser; +} diff --git a/casic-metering-model/src/main/java/com/casic/missiles/dto/meter/MeterStateManageResponse.java b/casic-metering-model/src/main/java/com/casic/missiles/dto/meter/MeterStateManageResponse.java new file mode 100644 index 0000000..4d9e6e8 --- /dev/null +++ b/casic-metering-model/src/main/java/com/casic/missiles/dto/meter/MeterStateManageResponse.java @@ -0,0 +1,166 @@ +package com.casic.missiles.dto.meter; + +import com.alibaba.excel.annotation.ExcelProperty; +import com.baomidou.mybatisplus.annotation.TableField; +import com.baomidou.mybatisplus.annotation.TableId; +import com.casic.missiles.annotation.DictCodeField; +import com.casic.missiles.constants.MeterDictCode; +import com.casic.missiles.model.MeterEquipmentApplyFile; +import io.swagger.annotations.ApiModel; +import io.swagger.annotations.ApiModelProperty; +import lombok.Data; + +import javax.validation.constraints.NotBlank; +import java.io.Serializable; +import java.util.List; + +@ApiModel +@Data +public class MeterStateManageResponse implements Serializable { + + private static final long serialVersionUID = 8705579720027710541L; + /** + * 主键 + */ + @TableId("id") + @ApiModelProperty(value = "主键", dataType = "Long") + private Long id; + + /** + * 申请编号 + */ + @ExcelProperty(value = "申请编号",order = 0) + @ApiModelProperty(value = "申请编号", dataType = "String") + private String applyNo; + + /** + * 申请类型-字典code + */ + @NotBlank(message = "申请类型不能为空") + @ApiModelProperty(value = "申请类型-字典code", dataType = "String") + @DictCodeField(message = "申请类型不合法", cacheName = MeterDictCode.STANDARD_APPLY_TYPE) + private String applyType; + + /** + * 审批状态-字典code + */ + @DictCodeField(message = "审批状态不合法", cacheName = MeterDictCode.APPROVAL_STATUS) + @ApiModelProperty(value = "审批状态-字典code", dataType = "String") + private String approvalStatus; + + /** + * 审批状态名称 + */ + @ApiModelProperty(value = "审批状态名称", dataType = "String") + private String approvalStatusName; + + /** + * 申请类型名称 + */ + @ApiModelProperty(value = "申请类型名称", dataType = "String") + private String applyTypeName; + + /** + * 设备编号 + */ + @ApiModelProperty(value = "(状态管理)设备编号", dataType = "String") + private String equipmentNo; + + /** + * 设备名称 + */ + @ApiModelProperty(value = "设备名称", dataType = "String") + private String equipmentName; + + /** + * 型号 + */ + @ApiModelProperty(value = "型号", dataType = "String") + private String modelNo; + + /** + * 管理状态-字典code + */ + @ApiModelProperty(value = "管理状态", dataType = "String") + @DictCodeField(message = "管理状态不合法", cacheName = MeterDictCode.MANAGER_STATE) + private String managerState; + /** + * 管理状态名称 + */ + @ApiModelProperty(value = "管理状态名称", dataType = "String") + private String managerStateName; + + /** + * 申请单位 + */ + @ApiModelProperty(value = "申请单位", dataType = "String") + private String applyUnit; + + /** + * 申请人 + */ + @ApiModelProperty(value = "申请人", dataType = "String") + private String applyPerson; + + /** + * 申请时间 + */ + @ApiModelProperty(value = "申请时间", dataType = "String") + private String time; + + /** + * 流程实例ID + */ + @ApiModelProperty(value = "流程实例ID", dataType = "String") + private String processId; + + /** + * 处理结果(设备领用、借用处理结果) + */ + @ApiModelProperty(value = "处理结果(设备领用、借用处理结果)", dataType = "String") + private String processResult; + + /** + * 版本号 + */ + @ApiModelProperty(value = "版本号", dataType = "String") + private String version; + + /** + * 备注 + */ + @ApiModelProperty(value = "备注", dataType = "String") + private String remark; + + /** + * 删除标记 + */ + @ApiModelProperty(value = "删除标记", dataType = "Integer") + private Integer isDel; + + /** + * 创建人 + */ + @ApiModelProperty(value = "创建人", dataType = "String") + private String createUser; + + /** + * 创建时间 + */ + @ApiModelProperty(value = "创建时间", dataType = "String") + private String createTime; + + /** + * 更新时间 + */ + @ApiModelProperty(value = "更新时间", dataType = "String") + private String updateTime; + + /** + * 附件 + */ + @TableField(exist = false) + @ApiModelProperty(value = "附件列表", dataType = "List") + private List fileList; + +} diff --git a/casic-metering-api/src/main/java/com/casic/missiles/controller/meter/MeterStateManageController.java b/casic-metering-api/src/main/java/com/casic/missiles/controller/meter/MeterStateManageController.java new file mode 100644 index 0000000..a276ff5 --- /dev/null +++ b/casic-metering-api/src/main/java/com/casic/missiles/controller/meter/MeterStateManageController.java @@ -0,0 +1,85 @@ +package com.casic.missiles.controller.meter; + +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; +import com.casic.missiles.dto.meter.MeterStateManageRequest; +import com.casic.missiles.dto.meter.MeterStateManageResponse; +import com.casic.missiles.model.MeterCheckInfo; +import com.casic.missiles.model.MeterEquipmentApply; +import com.casic.missiles.service.meter.IMeterStateManageService; +import com.casic.missiles.service.meter.MeterEquipmentApplyService; +import io.swagger.annotations.Api; +import io.swagger.annotations.ApiOperation; +import lombok.extern.slf4j.Slf4j; +import org.springframework.web.bind.annotation.*; + +import javax.annotation.Resource; +import javax.validation.Valid; + +/** + **

+ * * 状态管理列表 + * *

+ * + * @author xiezhuangz + * @version 1.0 + * @date 2022/12/27 + */ +@Api(tags = "状态管理相关接口") +@Slf4j +@RestController +@RequestMapping("meter/stateManage") +public class MeterStateManageController extends ExportController { + + @Resource + private IMeterStateManageService stateManageService; + + @Resource + private MeterEquipmentApplyService meterEquipmentApplyService; + + /** + * 状态管理申请列表 + */ + @ApiOperation("状态管理申请列表") + @PostMapping("/stateManageList") + @ResponseBody + public ReturnDTO> applyList(@RequestBody MeterStateManageRequest request) throws Exception{ + Page page = PageFactory.defaultPage(); + return ReturnUtil.success(super.packForBT(stateManageService.stateManageList(page, request))); + } + + /** + * 状态管理申请列表删除 + */ + @ApiOperation("状态管理申请列表删除") + @PostMapping("/deleteStateManageList") + @ResponseBody + public ReturnDTO deleteStateManageList(@RequestBody IdDTO idDto) { + return meterEquipmentApplyService.deleteEquipmentApply(idDto); + } + + /** + * 状态管理申请详细信息 + */ + @ApiOperation("状态管理申请详细信息") + @PostMapping("/selectStateManageInfo") + @ResponseBody + public ReturnDTO selectStateManageInfo(@RequestBody IdDTO idDto) throws Exception{ + return ReturnUtil.success(stateManageService.selectStateManageInfo(idDto)); + } + + /** + * 设状态管理申请新建 + */ + @ApiOperation("设状态管理申请新建") + @PostMapping("/addStateManageInfo") + @ResponseBody + public ReturnDTO addStateManageInfo(@RequestBody @Valid MeterEquipmentApply meterEquipmentApply) throws Exception{ + return meterEquipmentApplyService.addEquipmentApply(meterEquipmentApply); + } +} diff --git a/casic-metering-dao/src/main/java/com/casic/missiles/mapper/meter/MeterEquipmentApplyFileMapper.java b/casic-metering-dao/src/main/java/com/casic/missiles/mapper/meter/MeterEquipmentApplyFileMapper.java new file mode 100644 index 0000000..69c6356 --- /dev/null +++ b/casic-metering-dao/src/main/java/com/casic/missiles/mapper/meter/MeterEquipmentApplyFileMapper.java @@ -0,0 +1,7 @@ +package com.casic.missiles.mapper.meter; + +import com.baomidou.mybatisplus.core.mapper.BaseMapper; +import com.casic.missiles.model.MeterEquipmentApplyFile; + +public interface MeterEquipmentApplyFileMapper extends BaseMapper { +} diff --git a/casic-metering-dao/src/main/java/com/casic/missiles/mapper/meter/MeterStateManageMapper.java b/casic-metering-dao/src/main/java/com/casic/missiles/mapper/meter/MeterStateManageMapper.java new file mode 100644 index 0000000..ad60153 --- /dev/null +++ b/casic-metering-dao/src/main/java/com/casic/missiles/mapper/meter/MeterStateManageMapper.java @@ -0,0 +1,14 @@ +package com.casic.missiles.mapper.meter; + +import com.baomidou.mybatisplus.extension.plugins.pagination.Page; +import com.casic.missiles.dto.meter.MeterStateManageRequest; +import com.casic.missiles.dto.meter.MeterStateManageResponse; +import com.casic.missiles.model.MeterCheckInfo; +import org.apache.ibatis.annotations.Param; + +public interface MeterStateManageMapper { + + Page stateManageList(Page page, @Param("request") MeterStateManageRequest request); + + MeterStateManageResponse selectById(@Param("id") Long id); +} diff --git a/casic-metering-dao/src/main/resources/mapper/meter/MeterCertificateMapper.xml b/casic-metering-dao/src/main/resources/mapper/meter/MeterCertificateMapper.xml index 7f4ff3e..6eb532b 100644 --- a/casic-metering-dao/src/main/resources/mapper/meter/MeterCertificateMapper.xml +++ b/casic-metering-dao/src/main/resources/mapper/meter/MeterCertificateMapper.xml @@ -32,7 +32,7 @@ t1.certificate_name, t1.certificate_date, t1.certificate_company, - t1.valid_date, + DATE_FORMAT(t1.valid_date,'%Y-%m-%d') as valid_date, t1.certificate_status, t1.remark, t2.NAME, @@ -41,10 +41,11 @@ t2.education, t2.technology_job, t2.administration_job, - t2.dept_id + t3.FULL_NAME as dept_id FROM meter_certificate AS t1 LEFT JOIN meter_staff t2 ON t1.staff_id = t2.id + LEFT JOIN sys_dept t3 on t2.dept_id = t3.id and t1.is_del = 0 @@ -62,6 +63,9 @@ and t1.certificate_status = #{request.certificateStatus} + + and DATE_FORMAT(t1.valid_date,'%Y-%m-%d') <= DATE_SUB(curdate(),INTERVAL -30 day) + diff --git a/casic-metering-dao/src/main/resources/mapper/meter/MeterStateManageMapper.xml b/casic-metering-dao/src/main/resources/mapper/meter/MeterStateManageMapper.xml new file mode 100644 index 0000000..4f3e5f1 --- /dev/null +++ b/casic-metering-dao/src/main/resources/mapper/meter/MeterStateManageMapper.xml @@ -0,0 +1,66 @@ + + + + + + + + SELECT + msa.id, + msa.apply_no, + msa.apply_type, + mfa.equipment_no, + mfa.equipment_name, + mfa.model_no, + mfa.manager_state, + msa.approval_status, + sd.SIMPLE_NAME as apply_unit, + su.`NAME` as apply_person, + DATE_FORMAT( msa.time, '%Y-%m-%d %H:%i' ) as time, + msa.process_id, + msa.process_result, + msa.remark + FROM + meter_equipment_apply msa + LEFT JOIN sys_user su ON su.id = msa.apply_person + LEFT JOIN sys_dept sd ON sd.id = msa.apply_unit + LEFT JOIN meter_equipment_apply_equipment meae on msa.id = meae.apply_id + LEFT JOIN meter_fixed_assets mfa on meae.equipment_id = mfa.id + where 1=1 and msa.is_del = 0 + + + + + diff --git a/casic-metering-model/src/main/java/com/casic/missiles/dto/meter/MeterEquipmentApplyRequest.java b/casic-metering-model/src/main/java/com/casic/missiles/dto/meter/MeterEquipmentApplyRequest.java index 0f5db75..2154032 100644 --- a/casic-metering-model/src/main/java/com/casic/missiles/dto/meter/MeterEquipmentApplyRequest.java +++ b/casic-metering-model/src/main/java/com/casic/missiles/dto/meter/MeterEquipmentApplyRequest.java @@ -1,7 +1,6 @@ package com.casic.missiles.dto.meter; -import com.baomidou.mybatisplus.annotation.TableField; import io.swagger.annotations.ApiModel; import io.swagger.annotations.ApiModelProperty; import lombok.Data; @@ -49,20 +48,20 @@ /** * 审批状态 */ - @ApiModelProperty(value = "审批状态", dataType = "String") + @ApiModelProperty(value = "审批状态", dataType = "String", required = true) private String approvalStatus; /** * 处置结果 */ - @ApiModelProperty(value = "处置结果", dataType = "String") + @ApiModelProperty(value = "处置结果", dataType = "String", required = true) private String processResult; /** * 创建人 */ - @ApiModelProperty(value = "创建人", dataType = "String") + @ApiModelProperty(value = "创建人", dataType = "String", required = true) private String createUser; } 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 7e95296..3403124 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 @@ -50,5 +50,11 @@ @ApiModelProperty(value = "证书状态", dataType = "String") private String certificateStatus; + /** + * 证书提醒列表 + */ + @ApiModelProperty(value = "证书提醒列表", dataType = "String") + private String remindType; + } diff --git a/casic-metering-model/src/main/java/com/casic/missiles/dto/meter/MeterStateManageRequest.java b/casic-metering-model/src/main/java/com/casic/missiles/dto/meter/MeterStateManageRequest.java new file mode 100644 index 0000000..492c414 --- /dev/null +++ b/casic-metering-model/src/main/java/com/casic/missiles/dto/meter/MeterStateManageRequest.java @@ -0,0 +1,59 @@ +package com.casic.missiles.dto.meter; + +import io.swagger.annotations.ApiModel; +import io.swagger.annotations.ApiModelProperty; +import lombok.Data; + +/** + * 测量设备-状态管理申请请求实体 + * @author xiezhuangz + * @version 1.0 + * @date 2022/12/19 9:43 + */ + +@ApiModel +@Data +public class MeterStateManageRequest { + + /** + * 申请编号 + */ + @ApiModelProperty(value = "申请编号", dataType = "String") + private String applyNo; + + /** + * 设备编号 + */ + @ApiModelProperty(value = "(状态管理)设备编号", dataType = "String") + private String equipmentNo; + + /** + * 设备名称 + */ + @ApiModelProperty(value = "设备名称", dataType = "String") + private String equipmentName; + + /** + * 申请单位 + */ + @ApiModelProperty(value = "申请单位", dataType = "String") + private String applyUnit; + + /** + * 申请状态 + */ + @ApiModelProperty(value = "申请状态", dataType = "String") + private String applyStatus; + + /** + * 审批状态 + */ + @ApiModelProperty(value = "审批状态", dataType = "String", required = true) + private String approvalStatus; + + /** + * 创建人 + */ + @ApiModelProperty(value = "创建人", dataType = "String", required = true) + private String createUser; +} diff --git a/casic-metering-model/src/main/java/com/casic/missiles/dto/meter/MeterStateManageResponse.java b/casic-metering-model/src/main/java/com/casic/missiles/dto/meter/MeterStateManageResponse.java new file mode 100644 index 0000000..4d9e6e8 --- /dev/null +++ b/casic-metering-model/src/main/java/com/casic/missiles/dto/meter/MeterStateManageResponse.java @@ -0,0 +1,166 @@ +package com.casic.missiles.dto.meter; + +import com.alibaba.excel.annotation.ExcelProperty; +import com.baomidou.mybatisplus.annotation.TableField; +import com.baomidou.mybatisplus.annotation.TableId; +import com.casic.missiles.annotation.DictCodeField; +import com.casic.missiles.constants.MeterDictCode; +import com.casic.missiles.model.MeterEquipmentApplyFile; +import io.swagger.annotations.ApiModel; +import io.swagger.annotations.ApiModelProperty; +import lombok.Data; + +import javax.validation.constraints.NotBlank; +import java.io.Serializable; +import java.util.List; + +@ApiModel +@Data +public class MeterStateManageResponse implements Serializable { + + private static final long serialVersionUID = 8705579720027710541L; + /** + * 主键 + */ + @TableId("id") + @ApiModelProperty(value = "主键", dataType = "Long") + private Long id; + + /** + * 申请编号 + */ + @ExcelProperty(value = "申请编号",order = 0) + @ApiModelProperty(value = "申请编号", dataType = "String") + private String applyNo; + + /** + * 申请类型-字典code + */ + @NotBlank(message = "申请类型不能为空") + @ApiModelProperty(value = "申请类型-字典code", dataType = "String") + @DictCodeField(message = "申请类型不合法", cacheName = MeterDictCode.STANDARD_APPLY_TYPE) + private String applyType; + + /** + * 审批状态-字典code + */ + @DictCodeField(message = "审批状态不合法", cacheName = MeterDictCode.APPROVAL_STATUS) + @ApiModelProperty(value = "审批状态-字典code", dataType = "String") + private String approvalStatus; + + /** + * 审批状态名称 + */ + @ApiModelProperty(value = "审批状态名称", dataType = "String") + private String approvalStatusName; + + /** + * 申请类型名称 + */ + @ApiModelProperty(value = "申请类型名称", dataType = "String") + private String applyTypeName; + + /** + * 设备编号 + */ + @ApiModelProperty(value = "(状态管理)设备编号", dataType = "String") + private String equipmentNo; + + /** + * 设备名称 + */ + @ApiModelProperty(value = "设备名称", dataType = "String") + private String equipmentName; + + /** + * 型号 + */ + @ApiModelProperty(value = "型号", dataType = "String") + private String modelNo; + + /** + * 管理状态-字典code + */ + @ApiModelProperty(value = "管理状态", dataType = "String") + @DictCodeField(message = "管理状态不合法", cacheName = MeterDictCode.MANAGER_STATE) + private String managerState; + /** + * 管理状态名称 + */ + @ApiModelProperty(value = "管理状态名称", dataType = "String") + private String managerStateName; + + /** + * 申请单位 + */ + @ApiModelProperty(value = "申请单位", dataType = "String") + private String applyUnit; + + /** + * 申请人 + */ + @ApiModelProperty(value = "申请人", dataType = "String") + private String applyPerson; + + /** + * 申请时间 + */ + @ApiModelProperty(value = "申请时间", dataType = "String") + private String time; + + /** + * 流程实例ID + */ + @ApiModelProperty(value = "流程实例ID", dataType = "String") + private String processId; + + /** + * 处理结果(设备领用、借用处理结果) + */ + @ApiModelProperty(value = "处理结果(设备领用、借用处理结果)", dataType = "String") + private String processResult; + + /** + * 版本号 + */ + @ApiModelProperty(value = "版本号", dataType = "String") + private String version; + + /** + * 备注 + */ + @ApiModelProperty(value = "备注", dataType = "String") + private String remark; + + /** + * 删除标记 + */ + @ApiModelProperty(value = "删除标记", dataType = "Integer") + private Integer isDel; + + /** + * 创建人 + */ + @ApiModelProperty(value = "创建人", dataType = "String") + private String createUser; + + /** + * 创建时间 + */ + @ApiModelProperty(value = "创建时间", dataType = "String") + private String createTime; + + /** + * 更新时间 + */ + @ApiModelProperty(value = "更新时间", dataType = "String") + private String updateTime; + + /** + * 附件 + */ + @TableField(exist = false) + @ApiModelProperty(value = "附件列表", dataType = "List") + private List fileList; + +} diff --git a/casic-metering-model/src/main/java/com/casic/missiles/dto/meter/StandardEquipmentApplyRequest.java b/casic-metering-model/src/main/java/com/casic/missiles/dto/meter/StandardEquipmentApplyRequest.java index 7325905..19fab62 100644 --- a/casic-metering-model/src/main/java/com/casic/missiles/dto/meter/StandardEquipmentApplyRequest.java +++ b/casic-metering-model/src/main/java/com/casic/missiles/dto/meter/StandardEquipmentApplyRequest.java @@ -51,6 +51,12 @@ * 申请状态 */ @ApiModelProperty(value = "申请状态", dataType = "String") + private String applyStatus; + + /** + * 审批状态 + */ + @ApiModelProperty(value = "审批状态", dataType = "String", required = true) private String approvalStatus; /** diff --git a/casic-metering-api/src/main/java/com/casic/missiles/controller/meter/MeterStateManageController.java b/casic-metering-api/src/main/java/com/casic/missiles/controller/meter/MeterStateManageController.java new file mode 100644 index 0000000..a276ff5 --- /dev/null +++ b/casic-metering-api/src/main/java/com/casic/missiles/controller/meter/MeterStateManageController.java @@ -0,0 +1,85 @@ +package com.casic.missiles.controller.meter; + +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; +import com.casic.missiles.dto.meter.MeterStateManageRequest; +import com.casic.missiles.dto.meter.MeterStateManageResponse; +import com.casic.missiles.model.MeterCheckInfo; +import com.casic.missiles.model.MeterEquipmentApply; +import com.casic.missiles.service.meter.IMeterStateManageService; +import com.casic.missiles.service.meter.MeterEquipmentApplyService; +import io.swagger.annotations.Api; +import io.swagger.annotations.ApiOperation; +import lombok.extern.slf4j.Slf4j; +import org.springframework.web.bind.annotation.*; + +import javax.annotation.Resource; +import javax.validation.Valid; + +/** + **

+ * * 状态管理列表 + * *

+ * + * @author xiezhuangz + * @version 1.0 + * @date 2022/12/27 + */ +@Api(tags = "状态管理相关接口") +@Slf4j +@RestController +@RequestMapping("meter/stateManage") +public class MeterStateManageController extends ExportController { + + @Resource + private IMeterStateManageService stateManageService; + + @Resource + private MeterEquipmentApplyService meterEquipmentApplyService; + + /** + * 状态管理申请列表 + */ + @ApiOperation("状态管理申请列表") + @PostMapping("/stateManageList") + @ResponseBody + public ReturnDTO> applyList(@RequestBody MeterStateManageRequest request) throws Exception{ + Page page = PageFactory.defaultPage(); + return ReturnUtil.success(super.packForBT(stateManageService.stateManageList(page, request))); + } + + /** + * 状态管理申请列表删除 + */ + @ApiOperation("状态管理申请列表删除") + @PostMapping("/deleteStateManageList") + @ResponseBody + public ReturnDTO deleteStateManageList(@RequestBody IdDTO idDto) { + return meterEquipmentApplyService.deleteEquipmentApply(idDto); + } + + /** + * 状态管理申请详细信息 + */ + @ApiOperation("状态管理申请详细信息") + @PostMapping("/selectStateManageInfo") + @ResponseBody + public ReturnDTO selectStateManageInfo(@RequestBody IdDTO idDto) throws Exception{ + return ReturnUtil.success(stateManageService.selectStateManageInfo(idDto)); + } + + /** + * 设状态管理申请新建 + */ + @ApiOperation("设状态管理申请新建") + @PostMapping("/addStateManageInfo") + @ResponseBody + public ReturnDTO addStateManageInfo(@RequestBody @Valid MeterEquipmentApply meterEquipmentApply) throws Exception{ + return meterEquipmentApplyService.addEquipmentApply(meterEquipmentApply); + } +} diff --git a/casic-metering-dao/src/main/java/com/casic/missiles/mapper/meter/MeterEquipmentApplyFileMapper.java b/casic-metering-dao/src/main/java/com/casic/missiles/mapper/meter/MeterEquipmentApplyFileMapper.java new file mode 100644 index 0000000..69c6356 --- /dev/null +++ b/casic-metering-dao/src/main/java/com/casic/missiles/mapper/meter/MeterEquipmentApplyFileMapper.java @@ -0,0 +1,7 @@ +package com.casic.missiles.mapper.meter; + +import com.baomidou.mybatisplus.core.mapper.BaseMapper; +import com.casic.missiles.model.MeterEquipmentApplyFile; + +public interface MeterEquipmentApplyFileMapper extends BaseMapper { +} diff --git a/casic-metering-dao/src/main/java/com/casic/missiles/mapper/meter/MeterStateManageMapper.java b/casic-metering-dao/src/main/java/com/casic/missiles/mapper/meter/MeterStateManageMapper.java new file mode 100644 index 0000000..ad60153 --- /dev/null +++ b/casic-metering-dao/src/main/java/com/casic/missiles/mapper/meter/MeterStateManageMapper.java @@ -0,0 +1,14 @@ +package com.casic.missiles.mapper.meter; + +import com.baomidou.mybatisplus.extension.plugins.pagination.Page; +import com.casic.missiles.dto.meter.MeterStateManageRequest; +import com.casic.missiles.dto.meter.MeterStateManageResponse; +import com.casic.missiles.model.MeterCheckInfo; +import org.apache.ibatis.annotations.Param; + +public interface MeterStateManageMapper { + + Page stateManageList(Page page, @Param("request") MeterStateManageRequest request); + + MeterStateManageResponse selectById(@Param("id") Long id); +} diff --git a/casic-metering-dao/src/main/resources/mapper/meter/MeterCertificateMapper.xml b/casic-metering-dao/src/main/resources/mapper/meter/MeterCertificateMapper.xml index 7f4ff3e..6eb532b 100644 --- a/casic-metering-dao/src/main/resources/mapper/meter/MeterCertificateMapper.xml +++ b/casic-metering-dao/src/main/resources/mapper/meter/MeterCertificateMapper.xml @@ -32,7 +32,7 @@ t1.certificate_name, t1.certificate_date, t1.certificate_company, - t1.valid_date, + DATE_FORMAT(t1.valid_date,'%Y-%m-%d') as valid_date, t1.certificate_status, t1.remark, t2.NAME, @@ -41,10 +41,11 @@ t2.education, t2.technology_job, t2.administration_job, - t2.dept_id + t3.FULL_NAME as dept_id FROM meter_certificate AS t1 LEFT JOIN meter_staff t2 ON t1.staff_id = t2.id + LEFT JOIN sys_dept t3 on t2.dept_id = t3.id and t1.is_del = 0 @@ -62,6 +63,9 @@ and t1.certificate_status = #{request.certificateStatus} + + and DATE_FORMAT(t1.valid_date,'%Y-%m-%d') <= DATE_SUB(curdate(),INTERVAL -30 day) + diff --git a/casic-metering-dao/src/main/resources/mapper/meter/MeterStateManageMapper.xml b/casic-metering-dao/src/main/resources/mapper/meter/MeterStateManageMapper.xml new file mode 100644 index 0000000..4f3e5f1 --- /dev/null +++ b/casic-metering-dao/src/main/resources/mapper/meter/MeterStateManageMapper.xml @@ -0,0 +1,66 @@ + + + + + + + + SELECT + msa.id, + msa.apply_no, + msa.apply_type, + mfa.equipment_no, + mfa.equipment_name, + mfa.model_no, + mfa.manager_state, + msa.approval_status, + sd.SIMPLE_NAME as apply_unit, + su.`NAME` as apply_person, + DATE_FORMAT( msa.time, '%Y-%m-%d %H:%i' ) as time, + msa.process_id, + msa.process_result, + msa.remark + FROM + meter_equipment_apply msa + LEFT JOIN sys_user su ON su.id = msa.apply_person + LEFT JOIN sys_dept sd ON sd.id = msa.apply_unit + LEFT JOIN meter_equipment_apply_equipment meae on msa.id = meae.apply_id + LEFT JOIN meter_fixed_assets mfa on meae.equipment_id = mfa.id + where 1=1 and msa.is_del = 0 + + + + + diff --git a/casic-metering-model/src/main/java/com/casic/missiles/dto/meter/MeterEquipmentApplyRequest.java b/casic-metering-model/src/main/java/com/casic/missiles/dto/meter/MeterEquipmentApplyRequest.java index 0f5db75..2154032 100644 --- a/casic-metering-model/src/main/java/com/casic/missiles/dto/meter/MeterEquipmentApplyRequest.java +++ b/casic-metering-model/src/main/java/com/casic/missiles/dto/meter/MeterEquipmentApplyRequest.java @@ -1,7 +1,6 @@ package com.casic.missiles.dto.meter; -import com.baomidou.mybatisplus.annotation.TableField; import io.swagger.annotations.ApiModel; import io.swagger.annotations.ApiModelProperty; import lombok.Data; @@ -49,20 +48,20 @@ /** * 审批状态 */ - @ApiModelProperty(value = "审批状态", dataType = "String") + @ApiModelProperty(value = "审批状态", dataType = "String", required = true) private String approvalStatus; /** * 处置结果 */ - @ApiModelProperty(value = "处置结果", dataType = "String") + @ApiModelProperty(value = "处置结果", dataType = "String", required = true) private String processResult; /** * 创建人 */ - @ApiModelProperty(value = "创建人", dataType = "String") + @ApiModelProperty(value = "创建人", dataType = "String", required = true) private String createUser; } 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 7e95296..3403124 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 @@ -50,5 +50,11 @@ @ApiModelProperty(value = "证书状态", dataType = "String") private String certificateStatus; + /** + * 证书提醒列表 + */ + @ApiModelProperty(value = "证书提醒列表", dataType = "String") + private String remindType; + } diff --git a/casic-metering-model/src/main/java/com/casic/missiles/dto/meter/MeterStateManageRequest.java b/casic-metering-model/src/main/java/com/casic/missiles/dto/meter/MeterStateManageRequest.java new file mode 100644 index 0000000..492c414 --- /dev/null +++ b/casic-metering-model/src/main/java/com/casic/missiles/dto/meter/MeterStateManageRequest.java @@ -0,0 +1,59 @@ +package com.casic.missiles.dto.meter; + +import io.swagger.annotations.ApiModel; +import io.swagger.annotations.ApiModelProperty; +import lombok.Data; + +/** + * 测量设备-状态管理申请请求实体 + * @author xiezhuangz + * @version 1.0 + * @date 2022/12/19 9:43 + */ + +@ApiModel +@Data +public class MeterStateManageRequest { + + /** + * 申请编号 + */ + @ApiModelProperty(value = "申请编号", dataType = "String") + private String applyNo; + + /** + * 设备编号 + */ + @ApiModelProperty(value = "(状态管理)设备编号", dataType = "String") + private String equipmentNo; + + /** + * 设备名称 + */ + @ApiModelProperty(value = "设备名称", dataType = "String") + private String equipmentName; + + /** + * 申请单位 + */ + @ApiModelProperty(value = "申请单位", dataType = "String") + private String applyUnit; + + /** + * 申请状态 + */ + @ApiModelProperty(value = "申请状态", dataType = "String") + private String applyStatus; + + /** + * 审批状态 + */ + @ApiModelProperty(value = "审批状态", dataType = "String", required = true) + private String approvalStatus; + + /** + * 创建人 + */ + @ApiModelProperty(value = "创建人", dataType = "String", required = true) + private String createUser; +} diff --git a/casic-metering-model/src/main/java/com/casic/missiles/dto/meter/MeterStateManageResponse.java b/casic-metering-model/src/main/java/com/casic/missiles/dto/meter/MeterStateManageResponse.java new file mode 100644 index 0000000..4d9e6e8 --- /dev/null +++ b/casic-metering-model/src/main/java/com/casic/missiles/dto/meter/MeterStateManageResponse.java @@ -0,0 +1,166 @@ +package com.casic.missiles.dto.meter; + +import com.alibaba.excel.annotation.ExcelProperty; +import com.baomidou.mybatisplus.annotation.TableField; +import com.baomidou.mybatisplus.annotation.TableId; +import com.casic.missiles.annotation.DictCodeField; +import com.casic.missiles.constants.MeterDictCode; +import com.casic.missiles.model.MeterEquipmentApplyFile; +import io.swagger.annotations.ApiModel; +import io.swagger.annotations.ApiModelProperty; +import lombok.Data; + +import javax.validation.constraints.NotBlank; +import java.io.Serializable; +import java.util.List; + +@ApiModel +@Data +public class MeterStateManageResponse implements Serializable { + + private static final long serialVersionUID = 8705579720027710541L; + /** + * 主键 + */ + @TableId("id") + @ApiModelProperty(value = "主键", dataType = "Long") + private Long id; + + /** + * 申请编号 + */ + @ExcelProperty(value = "申请编号",order = 0) + @ApiModelProperty(value = "申请编号", dataType = "String") + private String applyNo; + + /** + * 申请类型-字典code + */ + @NotBlank(message = "申请类型不能为空") + @ApiModelProperty(value = "申请类型-字典code", dataType = "String") + @DictCodeField(message = "申请类型不合法", cacheName = MeterDictCode.STANDARD_APPLY_TYPE) + private String applyType; + + /** + * 审批状态-字典code + */ + @DictCodeField(message = "审批状态不合法", cacheName = MeterDictCode.APPROVAL_STATUS) + @ApiModelProperty(value = "审批状态-字典code", dataType = "String") + private String approvalStatus; + + /** + * 审批状态名称 + */ + @ApiModelProperty(value = "审批状态名称", dataType = "String") + private String approvalStatusName; + + /** + * 申请类型名称 + */ + @ApiModelProperty(value = "申请类型名称", dataType = "String") + private String applyTypeName; + + /** + * 设备编号 + */ + @ApiModelProperty(value = "(状态管理)设备编号", dataType = "String") + private String equipmentNo; + + /** + * 设备名称 + */ + @ApiModelProperty(value = "设备名称", dataType = "String") + private String equipmentName; + + /** + * 型号 + */ + @ApiModelProperty(value = "型号", dataType = "String") + private String modelNo; + + /** + * 管理状态-字典code + */ + @ApiModelProperty(value = "管理状态", dataType = "String") + @DictCodeField(message = "管理状态不合法", cacheName = MeterDictCode.MANAGER_STATE) + private String managerState; + /** + * 管理状态名称 + */ + @ApiModelProperty(value = "管理状态名称", dataType = "String") + private String managerStateName; + + /** + * 申请单位 + */ + @ApiModelProperty(value = "申请单位", dataType = "String") + private String applyUnit; + + /** + * 申请人 + */ + @ApiModelProperty(value = "申请人", dataType = "String") + private String applyPerson; + + /** + * 申请时间 + */ + @ApiModelProperty(value = "申请时间", dataType = "String") + private String time; + + /** + * 流程实例ID + */ + @ApiModelProperty(value = "流程实例ID", dataType = "String") + private String processId; + + /** + * 处理结果(设备领用、借用处理结果) + */ + @ApiModelProperty(value = "处理结果(设备领用、借用处理结果)", dataType = "String") + private String processResult; + + /** + * 版本号 + */ + @ApiModelProperty(value = "版本号", dataType = "String") + private String version; + + /** + * 备注 + */ + @ApiModelProperty(value = "备注", dataType = "String") + private String remark; + + /** + * 删除标记 + */ + @ApiModelProperty(value = "删除标记", dataType = "Integer") + private Integer isDel; + + /** + * 创建人 + */ + @ApiModelProperty(value = "创建人", dataType = "String") + private String createUser; + + /** + * 创建时间 + */ + @ApiModelProperty(value = "创建时间", dataType = "String") + private String createTime; + + /** + * 更新时间 + */ + @ApiModelProperty(value = "更新时间", dataType = "String") + private String updateTime; + + /** + * 附件 + */ + @TableField(exist = false) + @ApiModelProperty(value = "附件列表", dataType = "List") + private List fileList; + +} diff --git a/casic-metering-model/src/main/java/com/casic/missiles/dto/meter/StandardEquipmentApplyRequest.java b/casic-metering-model/src/main/java/com/casic/missiles/dto/meter/StandardEquipmentApplyRequest.java index 7325905..19fab62 100644 --- a/casic-metering-model/src/main/java/com/casic/missiles/dto/meter/StandardEquipmentApplyRequest.java +++ b/casic-metering-model/src/main/java/com/casic/missiles/dto/meter/StandardEquipmentApplyRequest.java @@ -51,6 +51,12 @@ * 申请状态 */ @ApiModelProperty(value = "申请状态", dataType = "String") + private String applyStatus; + + /** + * 审批状态 + */ + @ApiModelProperty(value = "审批状态", dataType = "String", required = true) private String approvalStatus; /** diff --git a/casic-metering-model/src/main/java/com/casic/missiles/model/MeterCheckInfoFile.java b/casic-metering-model/src/main/java/com/casic/missiles/model/MeterCheckInfoFile.java index 3d73308..29047eb 100644 --- a/casic-metering-model/src/main/java/com/casic/missiles/model/MeterCheckInfoFile.java +++ b/casic-metering-model/src/main/java/com/casic/missiles/model/MeterCheckInfoFile.java @@ -1,7 +1,6 @@ package com.casic.missiles.model; -import com.alibaba.excel.annotation.ExcelProperty; import com.baomidou.mybatisplus.annotation.TableField; import com.baomidou.mybatisplus.annotation.TableId; import com.baomidou.mybatisplus.annotation.TableName; diff --git a/casic-metering-api/src/main/java/com/casic/missiles/controller/meter/MeterStateManageController.java b/casic-metering-api/src/main/java/com/casic/missiles/controller/meter/MeterStateManageController.java new file mode 100644 index 0000000..a276ff5 --- /dev/null +++ b/casic-metering-api/src/main/java/com/casic/missiles/controller/meter/MeterStateManageController.java @@ -0,0 +1,85 @@ +package com.casic.missiles.controller.meter; + +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; +import com.casic.missiles.dto.meter.MeterStateManageRequest; +import com.casic.missiles.dto.meter.MeterStateManageResponse; +import com.casic.missiles.model.MeterCheckInfo; +import com.casic.missiles.model.MeterEquipmentApply; +import com.casic.missiles.service.meter.IMeterStateManageService; +import com.casic.missiles.service.meter.MeterEquipmentApplyService; +import io.swagger.annotations.Api; +import io.swagger.annotations.ApiOperation; +import lombok.extern.slf4j.Slf4j; +import org.springframework.web.bind.annotation.*; + +import javax.annotation.Resource; +import javax.validation.Valid; + +/** + **

+ * * 状态管理列表 + * *

+ * + * @author xiezhuangz + * @version 1.0 + * @date 2022/12/27 + */ +@Api(tags = "状态管理相关接口") +@Slf4j +@RestController +@RequestMapping("meter/stateManage") +public class MeterStateManageController extends ExportController { + + @Resource + private IMeterStateManageService stateManageService; + + @Resource + private MeterEquipmentApplyService meterEquipmentApplyService; + + /** + * 状态管理申请列表 + */ + @ApiOperation("状态管理申请列表") + @PostMapping("/stateManageList") + @ResponseBody + public ReturnDTO> applyList(@RequestBody MeterStateManageRequest request) throws Exception{ + Page page = PageFactory.defaultPage(); + return ReturnUtil.success(super.packForBT(stateManageService.stateManageList(page, request))); + } + + /** + * 状态管理申请列表删除 + */ + @ApiOperation("状态管理申请列表删除") + @PostMapping("/deleteStateManageList") + @ResponseBody + public ReturnDTO deleteStateManageList(@RequestBody IdDTO idDto) { + return meterEquipmentApplyService.deleteEquipmentApply(idDto); + } + + /** + * 状态管理申请详细信息 + */ + @ApiOperation("状态管理申请详细信息") + @PostMapping("/selectStateManageInfo") + @ResponseBody + public ReturnDTO selectStateManageInfo(@RequestBody IdDTO idDto) throws Exception{ + return ReturnUtil.success(stateManageService.selectStateManageInfo(idDto)); + } + + /** + * 设状态管理申请新建 + */ + @ApiOperation("设状态管理申请新建") + @PostMapping("/addStateManageInfo") + @ResponseBody + public ReturnDTO addStateManageInfo(@RequestBody @Valid MeterEquipmentApply meterEquipmentApply) throws Exception{ + return meterEquipmentApplyService.addEquipmentApply(meterEquipmentApply); + } +} diff --git a/casic-metering-dao/src/main/java/com/casic/missiles/mapper/meter/MeterEquipmentApplyFileMapper.java b/casic-metering-dao/src/main/java/com/casic/missiles/mapper/meter/MeterEquipmentApplyFileMapper.java new file mode 100644 index 0000000..69c6356 --- /dev/null +++ b/casic-metering-dao/src/main/java/com/casic/missiles/mapper/meter/MeterEquipmentApplyFileMapper.java @@ -0,0 +1,7 @@ +package com.casic.missiles.mapper.meter; + +import com.baomidou.mybatisplus.core.mapper.BaseMapper; +import com.casic.missiles.model.MeterEquipmentApplyFile; + +public interface MeterEquipmentApplyFileMapper extends BaseMapper { +} diff --git a/casic-metering-dao/src/main/java/com/casic/missiles/mapper/meter/MeterStateManageMapper.java b/casic-metering-dao/src/main/java/com/casic/missiles/mapper/meter/MeterStateManageMapper.java new file mode 100644 index 0000000..ad60153 --- /dev/null +++ b/casic-metering-dao/src/main/java/com/casic/missiles/mapper/meter/MeterStateManageMapper.java @@ -0,0 +1,14 @@ +package com.casic.missiles.mapper.meter; + +import com.baomidou.mybatisplus.extension.plugins.pagination.Page; +import com.casic.missiles.dto.meter.MeterStateManageRequest; +import com.casic.missiles.dto.meter.MeterStateManageResponse; +import com.casic.missiles.model.MeterCheckInfo; +import org.apache.ibatis.annotations.Param; + +public interface MeterStateManageMapper { + + Page stateManageList(Page page, @Param("request") MeterStateManageRequest request); + + MeterStateManageResponse selectById(@Param("id") Long id); +} diff --git a/casic-metering-dao/src/main/resources/mapper/meter/MeterCertificateMapper.xml b/casic-metering-dao/src/main/resources/mapper/meter/MeterCertificateMapper.xml index 7f4ff3e..6eb532b 100644 --- a/casic-metering-dao/src/main/resources/mapper/meter/MeterCertificateMapper.xml +++ b/casic-metering-dao/src/main/resources/mapper/meter/MeterCertificateMapper.xml @@ -32,7 +32,7 @@ t1.certificate_name, t1.certificate_date, t1.certificate_company, - t1.valid_date, + DATE_FORMAT(t1.valid_date,'%Y-%m-%d') as valid_date, t1.certificate_status, t1.remark, t2.NAME, @@ -41,10 +41,11 @@ t2.education, t2.technology_job, t2.administration_job, - t2.dept_id + t3.FULL_NAME as dept_id FROM meter_certificate AS t1 LEFT JOIN meter_staff t2 ON t1.staff_id = t2.id + LEFT JOIN sys_dept t3 on t2.dept_id = t3.id and t1.is_del = 0 @@ -62,6 +63,9 @@ and t1.certificate_status = #{request.certificateStatus} + + and DATE_FORMAT(t1.valid_date,'%Y-%m-%d') <= DATE_SUB(curdate(),INTERVAL -30 day) + diff --git a/casic-metering-dao/src/main/resources/mapper/meter/MeterStateManageMapper.xml b/casic-metering-dao/src/main/resources/mapper/meter/MeterStateManageMapper.xml new file mode 100644 index 0000000..4f3e5f1 --- /dev/null +++ b/casic-metering-dao/src/main/resources/mapper/meter/MeterStateManageMapper.xml @@ -0,0 +1,66 @@ + + + + + + + + SELECT + msa.id, + msa.apply_no, + msa.apply_type, + mfa.equipment_no, + mfa.equipment_name, + mfa.model_no, + mfa.manager_state, + msa.approval_status, + sd.SIMPLE_NAME as apply_unit, + su.`NAME` as apply_person, + DATE_FORMAT( msa.time, '%Y-%m-%d %H:%i' ) as time, + msa.process_id, + msa.process_result, + msa.remark + FROM + meter_equipment_apply msa + LEFT JOIN sys_user su ON su.id = msa.apply_person + LEFT JOIN sys_dept sd ON sd.id = msa.apply_unit + LEFT JOIN meter_equipment_apply_equipment meae on msa.id = meae.apply_id + LEFT JOIN meter_fixed_assets mfa on meae.equipment_id = mfa.id + where 1=1 and msa.is_del = 0 + + + + + diff --git a/casic-metering-model/src/main/java/com/casic/missiles/dto/meter/MeterEquipmentApplyRequest.java b/casic-metering-model/src/main/java/com/casic/missiles/dto/meter/MeterEquipmentApplyRequest.java index 0f5db75..2154032 100644 --- a/casic-metering-model/src/main/java/com/casic/missiles/dto/meter/MeterEquipmentApplyRequest.java +++ b/casic-metering-model/src/main/java/com/casic/missiles/dto/meter/MeterEquipmentApplyRequest.java @@ -1,7 +1,6 @@ package com.casic.missiles.dto.meter; -import com.baomidou.mybatisplus.annotation.TableField; import io.swagger.annotations.ApiModel; import io.swagger.annotations.ApiModelProperty; import lombok.Data; @@ -49,20 +48,20 @@ /** * 审批状态 */ - @ApiModelProperty(value = "审批状态", dataType = "String") + @ApiModelProperty(value = "审批状态", dataType = "String", required = true) private String approvalStatus; /** * 处置结果 */ - @ApiModelProperty(value = "处置结果", dataType = "String") + @ApiModelProperty(value = "处置结果", dataType = "String", required = true) private String processResult; /** * 创建人 */ - @ApiModelProperty(value = "创建人", dataType = "String") + @ApiModelProperty(value = "创建人", dataType = "String", required = true) private String createUser; } 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 7e95296..3403124 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 @@ -50,5 +50,11 @@ @ApiModelProperty(value = "证书状态", dataType = "String") private String certificateStatus; + /** + * 证书提醒列表 + */ + @ApiModelProperty(value = "证书提醒列表", dataType = "String") + private String remindType; + } diff --git a/casic-metering-model/src/main/java/com/casic/missiles/dto/meter/MeterStateManageRequest.java b/casic-metering-model/src/main/java/com/casic/missiles/dto/meter/MeterStateManageRequest.java new file mode 100644 index 0000000..492c414 --- /dev/null +++ b/casic-metering-model/src/main/java/com/casic/missiles/dto/meter/MeterStateManageRequest.java @@ -0,0 +1,59 @@ +package com.casic.missiles.dto.meter; + +import io.swagger.annotations.ApiModel; +import io.swagger.annotations.ApiModelProperty; +import lombok.Data; + +/** + * 测量设备-状态管理申请请求实体 + * @author xiezhuangz + * @version 1.0 + * @date 2022/12/19 9:43 + */ + +@ApiModel +@Data +public class MeterStateManageRequest { + + /** + * 申请编号 + */ + @ApiModelProperty(value = "申请编号", dataType = "String") + private String applyNo; + + /** + * 设备编号 + */ + @ApiModelProperty(value = "(状态管理)设备编号", dataType = "String") + private String equipmentNo; + + /** + * 设备名称 + */ + @ApiModelProperty(value = "设备名称", dataType = "String") + private String equipmentName; + + /** + * 申请单位 + */ + @ApiModelProperty(value = "申请单位", dataType = "String") + private String applyUnit; + + /** + * 申请状态 + */ + @ApiModelProperty(value = "申请状态", dataType = "String") + private String applyStatus; + + /** + * 审批状态 + */ + @ApiModelProperty(value = "审批状态", dataType = "String", required = true) + private String approvalStatus; + + /** + * 创建人 + */ + @ApiModelProperty(value = "创建人", dataType = "String", required = true) + private String createUser; +} diff --git a/casic-metering-model/src/main/java/com/casic/missiles/dto/meter/MeterStateManageResponse.java b/casic-metering-model/src/main/java/com/casic/missiles/dto/meter/MeterStateManageResponse.java new file mode 100644 index 0000000..4d9e6e8 --- /dev/null +++ b/casic-metering-model/src/main/java/com/casic/missiles/dto/meter/MeterStateManageResponse.java @@ -0,0 +1,166 @@ +package com.casic.missiles.dto.meter; + +import com.alibaba.excel.annotation.ExcelProperty; +import com.baomidou.mybatisplus.annotation.TableField; +import com.baomidou.mybatisplus.annotation.TableId; +import com.casic.missiles.annotation.DictCodeField; +import com.casic.missiles.constants.MeterDictCode; +import com.casic.missiles.model.MeterEquipmentApplyFile; +import io.swagger.annotations.ApiModel; +import io.swagger.annotations.ApiModelProperty; +import lombok.Data; + +import javax.validation.constraints.NotBlank; +import java.io.Serializable; +import java.util.List; + +@ApiModel +@Data +public class MeterStateManageResponse implements Serializable { + + private static final long serialVersionUID = 8705579720027710541L; + /** + * 主键 + */ + @TableId("id") + @ApiModelProperty(value = "主键", dataType = "Long") + private Long id; + + /** + * 申请编号 + */ + @ExcelProperty(value = "申请编号",order = 0) + @ApiModelProperty(value = "申请编号", dataType = "String") + private String applyNo; + + /** + * 申请类型-字典code + */ + @NotBlank(message = "申请类型不能为空") + @ApiModelProperty(value = "申请类型-字典code", dataType = "String") + @DictCodeField(message = "申请类型不合法", cacheName = MeterDictCode.STANDARD_APPLY_TYPE) + private String applyType; + + /** + * 审批状态-字典code + */ + @DictCodeField(message = "审批状态不合法", cacheName = MeterDictCode.APPROVAL_STATUS) + @ApiModelProperty(value = "审批状态-字典code", dataType = "String") + private String approvalStatus; + + /** + * 审批状态名称 + */ + @ApiModelProperty(value = "审批状态名称", dataType = "String") + private String approvalStatusName; + + /** + * 申请类型名称 + */ + @ApiModelProperty(value = "申请类型名称", dataType = "String") + private String applyTypeName; + + /** + * 设备编号 + */ + @ApiModelProperty(value = "(状态管理)设备编号", dataType = "String") + private String equipmentNo; + + /** + * 设备名称 + */ + @ApiModelProperty(value = "设备名称", dataType = "String") + private String equipmentName; + + /** + * 型号 + */ + @ApiModelProperty(value = "型号", dataType = "String") + private String modelNo; + + /** + * 管理状态-字典code + */ + @ApiModelProperty(value = "管理状态", dataType = "String") + @DictCodeField(message = "管理状态不合法", cacheName = MeterDictCode.MANAGER_STATE) + private String managerState; + /** + * 管理状态名称 + */ + @ApiModelProperty(value = "管理状态名称", dataType = "String") + private String managerStateName; + + /** + * 申请单位 + */ + @ApiModelProperty(value = "申请单位", dataType = "String") + private String applyUnit; + + /** + * 申请人 + */ + @ApiModelProperty(value = "申请人", dataType = "String") + private String applyPerson; + + /** + * 申请时间 + */ + @ApiModelProperty(value = "申请时间", dataType = "String") + private String time; + + /** + * 流程实例ID + */ + @ApiModelProperty(value = "流程实例ID", dataType = "String") + private String processId; + + /** + * 处理结果(设备领用、借用处理结果) + */ + @ApiModelProperty(value = "处理结果(设备领用、借用处理结果)", dataType = "String") + private String processResult; + + /** + * 版本号 + */ + @ApiModelProperty(value = "版本号", dataType = "String") + private String version; + + /** + * 备注 + */ + @ApiModelProperty(value = "备注", dataType = "String") + private String remark; + + /** + * 删除标记 + */ + @ApiModelProperty(value = "删除标记", dataType = "Integer") + private Integer isDel; + + /** + * 创建人 + */ + @ApiModelProperty(value = "创建人", dataType = "String") + private String createUser; + + /** + * 创建时间 + */ + @ApiModelProperty(value = "创建时间", dataType = "String") + private String createTime; + + /** + * 更新时间 + */ + @ApiModelProperty(value = "更新时间", dataType = "String") + private String updateTime; + + /** + * 附件 + */ + @TableField(exist = false) + @ApiModelProperty(value = "附件列表", dataType = "List") + private List fileList; + +} diff --git a/casic-metering-model/src/main/java/com/casic/missiles/dto/meter/StandardEquipmentApplyRequest.java b/casic-metering-model/src/main/java/com/casic/missiles/dto/meter/StandardEquipmentApplyRequest.java index 7325905..19fab62 100644 --- a/casic-metering-model/src/main/java/com/casic/missiles/dto/meter/StandardEquipmentApplyRequest.java +++ b/casic-metering-model/src/main/java/com/casic/missiles/dto/meter/StandardEquipmentApplyRequest.java @@ -51,6 +51,12 @@ * 申请状态 */ @ApiModelProperty(value = "申请状态", dataType = "String") + private String applyStatus; + + /** + * 审批状态 + */ + @ApiModelProperty(value = "审批状态", dataType = "String", required = true) private String approvalStatus; /** diff --git a/casic-metering-model/src/main/java/com/casic/missiles/model/MeterCheckInfoFile.java b/casic-metering-model/src/main/java/com/casic/missiles/model/MeterCheckInfoFile.java index 3d73308..29047eb 100644 --- a/casic-metering-model/src/main/java/com/casic/missiles/model/MeterCheckInfoFile.java +++ b/casic-metering-model/src/main/java/com/casic/missiles/model/MeterCheckInfoFile.java @@ -1,7 +1,6 @@ package com.casic.missiles.model; -import com.alibaba.excel.annotation.ExcelProperty; import com.baomidou.mybatisplus.annotation.TableField; import com.baomidou.mybatisplus.annotation.TableId; import com.baomidou.mybatisplus.annotation.TableName; diff --git a/casic-metering-model/src/main/java/com/casic/missiles/model/MeterEquipmentApply.java b/casic-metering-model/src/main/java/com/casic/missiles/model/MeterEquipmentApply.java index 2d53b96..277cb9b 100644 --- a/casic-metering-model/src/main/java/com/casic/missiles/model/MeterEquipmentApply.java +++ b/casic-metering-model/src/main/java/com/casic/missiles/model/MeterEquipmentApply.java @@ -191,10 +191,17 @@ private String updateTime; /** - * 借用设备列表 + * 设备列表 */ @TableField(exist = false) - @ApiModelProperty(value = "借用设备列表", dataType = "List") + @ApiModelProperty(value = "设备列表", dataType = "List") private List equipmentList; + /** + * 附件列表 + */ + @TableField(exist = false) + @ApiModelProperty(value = "附件列表", dataType = "List") + private List fileList; + } diff --git a/casic-metering-api/src/main/java/com/casic/missiles/controller/meter/MeterStateManageController.java b/casic-metering-api/src/main/java/com/casic/missiles/controller/meter/MeterStateManageController.java new file mode 100644 index 0000000..a276ff5 --- /dev/null +++ b/casic-metering-api/src/main/java/com/casic/missiles/controller/meter/MeterStateManageController.java @@ -0,0 +1,85 @@ +package com.casic.missiles.controller.meter; + +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; +import com.casic.missiles.dto.meter.MeterStateManageRequest; +import com.casic.missiles.dto.meter.MeterStateManageResponse; +import com.casic.missiles.model.MeterCheckInfo; +import com.casic.missiles.model.MeterEquipmentApply; +import com.casic.missiles.service.meter.IMeterStateManageService; +import com.casic.missiles.service.meter.MeterEquipmentApplyService; +import io.swagger.annotations.Api; +import io.swagger.annotations.ApiOperation; +import lombok.extern.slf4j.Slf4j; +import org.springframework.web.bind.annotation.*; + +import javax.annotation.Resource; +import javax.validation.Valid; + +/** + **

+ * * 状态管理列表 + * *

+ * + * @author xiezhuangz + * @version 1.0 + * @date 2022/12/27 + */ +@Api(tags = "状态管理相关接口") +@Slf4j +@RestController +@RequestMapping("meter/stateManage") +public class MeterStateManageController extends ExportController { + + @Resource + private IMeterStateManageService stateManageService; + + @Resource + private MeterEquipmentApplyService meterEquipmentApplyService; + + /** + * 状态管理申请列表 + */ + @ApiOperation("状态管理申请列表") + @PostMapping("/stateManageList") + @ResponseBody + public ReturnDTO> applyList(@RequestBody MeterStateManageRequest request) throws Exception{ + Page page = PageFactory.defaultPage(); + return ReturnUtil.success(super.packForBT(stateManageService.stateManageList(page, request))); + } + + /** + * 状态管理申请列表删除 + */ + @ApiOperation("状态管理申请列表删除") + @PostMapping("/deleteStateManageList") + @ResponseBody + public ReturnDTO deleteStateManageList(@RequestBody IdDTO idDto) { + return meterEquipmentApplyService.deleteEquipmentApply(idDto); + } + + /** + * 状态管理申请详细信息 + */ + @ApiOperation("状态管理申请详细信息") + @PostMapping("/selectStateManageInfo") + @ResponseBody + public ReturnDTO selectStateManageInfo(@RequestBody IdDTO idDto) throws Exception{ + return ReturnUtil.success(stateManageService.selectStateManageInfo(idDto)); + } + + /** + * 设状态管理申请新建 + */ + @ApiOperation("设状态管理申请新建") + @PostMapping("/addStateManageInfo") + @ResponseBody + public ReturnDTO addStateManageInfo(@RequestBody @Valid MeterEquipmentApply meterEquipmentApply) throws Exception{ + return meterEquipmentApplyService.addEquipmentApply(meterEquipmentApply); + } +} diff --git a/casic-metering-dao/src/main/java/com/casic/missiles/mapper/meter/MeterEquipmentApplyFileMapper.java b/casic-metering-dao/src/main/java/com/casic/missiles/mapper/meter/MeterEquipmentApplyFileMapper.java new file mode 100644 index 0000000..69c6356 --- /dev/null +++ b/casic-metering-dao/src/main/java/com/casic/missiles/mapper/meter/MeterEquipmentApplyFileMapper.java @@ -0,0 +1,7 @@ +package com.casic.missiles.mapper.meter; + +import com.baomidou.mybatisplus.core.mapper.BaseMapper; +import com.casic.missiles.model.MeterEquipmentApplyFile; + +public interface MeterEquipmentApplyFileMapper extends BaseMapper { +} diff --git a/casic-metering-dao/src/main/java/com/casic/missiles/mapper/meter/MeterStateManageMapper.java b/casic-metering-dao/src/main/java/com/casic/missiles/mapper/meter/MeterStateManageMapper.java new file mode 100644 index 0000000..ad60153 --- /dev/null +++ b/casic-metering-dao/src/main/java/com/casic/missiles/mapper/meter/MeterStateManageMapper.java @@ -0,0 +1,14 @@ +package com.casic.missiles.mapper.meter; + +import com.baomidou.mybatisplus.extension.plugins.pagination.Page; +import com.casic.missiles.dto.meter.MeterStateManageRequest; +import com.casic.missiles.dto.meter.MeterStateManageResponse; +import com.casic.missiles.model.MeterCheckInfo; +import org.apache.ibatis.annotations.Param; + +public interface MeterStateManageMapper { + + Page stateManageList(Page page, @Param("request") MeterStateManageRequest request); + + MeterStateManageResponse selectById(@Param("id") Long id); +} diff --git a/casic-metering-dao/src/main/resources/mapper/meter/MeterCertificateMapper.xml b/casic-metering-dao/src/main/resources/mapper/meter/MeterCertificateMapper.xml index 7f4ff3e..6eb532b 100644 --- a/casic-metering-dao/src/main/resources/mapper/meter/MeterCertificateMapper.xml +++ b/casic-metering-dao/src/main/resources/mapper/meter/MeterCertificateMapper.xml @@ -32,7 +32,7 @@ t1.certificate_name, t1.certificate_date, t1.certificate_company, - t1.valid_date, + DATE_FORMAT(t1.valid_date,'%Y-%m-%d') as valid_date, t1.certificate_status, t1.remark, t2.NAME, @@ -41,10 +41,11 @@ t2.education, t2.technology_job, t2.administration_job, - t2.dept_id + t3.FULL_NAME as dept_id FROM meter_certificate AS t1 LEFT JOIN meter_staff t2 ON t1.staff_id = t2.id + LEFT JOIN sys_dept t3 on t2.dept_id = t3.id and t1.is_del = 0 @@ -62,6 +63,9 @@ and t1.certificate_status = #{request.certificateStatus} + + and DATE_FORMAT(t1.valid_date,'%Y-%m-%d') <= DATE_SUB(curdate(),INTERVAL -30 day) + diff --git a/casic-metering-dao/src/main/resources/mapper/meter/MeterStateManageMapper.xml b/casic-metering-dao/src/main/resources/mapper/meter/MeterStateManageMapper.xml new file mode 100644 index 0000000..4f3e5f1 --- /dev/null +++ b/casic-metering-dao/src/main/resources/mapper/meter/MeterStateManageMapper.xml @@ -0,0 +1,66 @@ + + + + + + + + SELECT + msa.id, + msa.apply_no, + msa.apply_type, + mfa.equipment_no, + mfa.equipment_name, + mfa.model_no, + mfa.manager_state, + msa.approval_status, + sd.SIMPLE_NAME as apply_unit, + su.`NAME` as apply_person, + DATE_FORMAT( msa.time, '%Y-%m-%d %H:%i' ) as time, + msa.process_id, + msa.process_result, + msa.remark + FROM + meter_equipment_apply msa + LEFT JOIN sys_user su ON su.id = msa.apply_person + LEFT JOIN sys_dept sd ON sd.id = msa.apply_unit + LEFT JOIN meter_equipment_apply_equipment meae on msa.id = meae.apply_id + LEFT JOIN meter_fixed_assets mfa on meae.equipment_id = mfa.id + where 1=1 and msa.is_del = 0 + + + + + diff --git a/casic-metering-model/src/main/java/com/casic/missiles/dto/meter/MeterEquipmentApplyRequest.java b/casic-metering-model/src/main/java/com/casic/missiles/dto/meter/MeterEquipmentApplyRequest.java index 0f5db75..2154032 100644 --- a/casic-metering-model/src/main/java/com/casic/missiles/dto/meter/MeterEquipmentApplyRequest.java +++ b/casic-metering-model/src/main/java/com/casic/missiles/dto/meter/MeterEquipmentApplyRequest.java @@ -1,7 +1,6 @@ package com.casic.missiles.dto.meter; -import com.baomidou.mybatisplus.annotation.TableField; import io.swagger.annotations.ApiModel; import io.swagger.annotations.ApiModelProperty; import lombok.Data; @@ -49,20 +48,20 @@ /** * 审批状态 */ - @ApiModelProperty(value = "审批状态", dataType = "String") + @ApiModelProperty(value = "审批状态", dataType = "String", required = true) private String approvalStatus; /** * 处置结果 */ - @ApiModelProperty(value = "处置结果", dataType = "String") + @ApiModelProperty(value = "处置结果", dataType = "String", required = true) private String processResult; /** * 创建人 */ - @ApiModelProperty(value = "创建人", dataType = "String") + @ApiModelProperty(value = "创建人", dataType = "String", required = true) private String createUser; } 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 7e95296..3403124 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 @@ -50,5 +50,11 @@ @ApiModelProperty(value = "证书状态", dataType = "String") private String certificateStatus; + /** + * 证书提醒列表 + */ + @ApiModelProperty(value = "证书提醒列表", dataType = "String") + private String remindType; + } diff --git a/casic-metering-model/src/main/java/com/casic/missiles/dto/meter/MeterStateManageRequest.java b/casic-metering-model/src/main/java/com/casic/missiles/dto/meter/MeterStateManageRequest.java new file mode 100644 index 0000000..492c414 --- /dev/null +++ b/casic-metering-model/src/main/java/com/casic/missiles/dto/meter/MeterStateManageRequest.java @@ -0,0 +1,59 @@ +package com.casic.missiles.dto.meter; + +import io.swagger.annotations.ApiModel; +import io.swagger.annotations.ApiModelProperty; +import lombok.Data; + +/** + * 测量设备-状态管理申请请求实体 + * @author xiezhuangz + * @version 1.0 + * @date 2022/12/19 9:43 + */ + +@ApiModel +@Data +public class MeterStateManageRequest { + + /** + * 申请编号 + */ + @ApiModelProperty(value = "申请编号", dataType = "String") + private String applyNo; + + /** + * 设备编号 + */ + @ApiModelProperty(value = "(状态管理)设备编号", dataType = "String") + private String equipmentNo; + + /** + * 设备名称 + */ + @ApiModelProperty(value = "设备名称", dataType = "String") + private String equipmentName; + + /** + * 申请单位 + */ + @ApiModelProperty(value = "申请单位", dataType = "String") + private String applyUnit; + + /** + * 申请状态 + */ + @ApiModelProperty(value = "申请状态", dataType = "String") + private String applyStatus; + + /** + * 审批状态 + */ + @ApiModelProperty(value = "审批状态", dataType = "String", required = true) + private String approvalStatus; + + /** + * 创建人 + */ + @ApiModelProperty(value = "创建人", dataType = "String", required = true) + private String createUser; +} diff --git a/casic-metering-model/src/main/java/com/casic/missiles/dto/meter/MeterStateManageResponse.java b/casic-metering-model/src/main/java/com/casic/missiles/dto/meter/MeterStateManageResponse.java new file mode 100644 index 0000000..4d9e6e8 --- /dev/null +++ b/casic-metering-model/src/main/java/com/casic/missiles/dto/meter/MeterStateManageResponse.java @@ -0,0 +1,166 @@ +package com.casic.missiles.dto.meter; + +import com.alibaba.excel.annotation.ExcelProperty; +import com.baomidou.mybatisplus.annotation.TableField; +import com.baomidou.mybatisplus.annotation.TableId; +import com.casic.missiles.annotation.DictCodeField; +import com.casic.missiles.constants.MeterDictCode; +import com.casic.missiles.model.MeterEquipmentApplyFile; +import io.swagger.annotations.ApiModel; +import io.swagger.annotations.ApiModelProperty; +import lombok.Data; + +import javax.validation.constraints.NotBlank; +import java.io.Serializable; +import java.util.List; + +@ApiModel +@Data +public class MeterStateManageResponse implements Serializable { + + private static final long serialVersionUID = 8705579720027710541L; + /** + * 主键 + */ + @TableId("id") + @ApiModelProperty(value = "主键", dataType = "Long") + private Long id; + + /** + * 申请编号 + */ + @ExcelProperty(value = "申请编号",order = 0) + @ApiModelProperty(value = "申请编号", dataType = "String") + private String applyNo; + + /** + * 申请类型-字典code + */ + @NotBlank(message = "申请类型不能为空") + @ApiModelProperty(value = "申请类型-字典code", dataType = "String") + @DictCodeField(message = "申请类型不合法", cacheName = MeterDictCode.STANDARD_APPLY_TYPE) + private String applyType; + + /** + * 审批状态-字典code + */ + @DictCodeField(message = "审批状态不合法", cacheName = MeterDictCode.APPROVAL_STATUS) + @ApiModelProperty(value = "审批状态-字典code", dataType = "String") + private String approvalStatus; + + /** + * 审批状态名称 + */ + @ApiModelProperty(value = "审批状态名称", dataType = "String") + private String approvalStatusName; + + /** + * 申请类型名称 + */ + @ApiModelProperty(value = "申请类型名称", dataType = "String") + private String applyTypeName; + + /** + * 设备编号 + */ + @ApiModelProperty(value = "(状态管理)设备编号", dataType = "String") + private String equipmentNo; + + /** + * 设备名称 + */ + @ApiModelProperty(value = "设备名称", dataType = "String") + private String equipmentName; + + /** + * 型号 + */ + @ApiModelProperty(value = "型号", dataType = "String") + private String modelNo; + + /** + * 管理状态-字典code + */ + @ApiModelProperty(value = "管理状态", dataType = "String") + @DictCodeField(message = "管理状态不合法", cacheName = MeterDictCode.MANAGER_STATE) + private String managerState; + /** + * 管理状态名称 + */ + @ApiModelProperty(value = "管理状态名称", dataType = "String") + private String managerStateName; + + /** + * 申请单位 + */ + @ApiModelProperty(value = "申请单位", dataType = "String") + private String applyUnit; + + /** + * 申请人 + */ + @ApiModelProperty(value = "申请人", dataType = "String") + private String applyPerson; + + /** + * 申请时间 + */ + @ApiModelProperty(value = "申请时间", dataType = "String") + private String time; + + /** + * 流程实例ID + */ + @ApiModelProperty(value = "流程实例ID", dataType = "String") + private String processId; + + /** + * 处理结果(设备领用、借用处理结果) + */ + @ApiModelProperty(value = "处理结果(设备领用、借用处理结果)", dataType = "String") + private String processResult; + + /** + * 版本号 + */ + @ApiModelProperty(value = "版本号", dataType = "String") + private String version; + + /** + * 备注 + */ + @ApiModelProperty(value = "备注", dataType = "String") + private String remark; + + /** + * 删除标记 + */ + @ApiModelProperty(value = "删除标记", dataType = "Integer") + private Integer isDel; + + /** + * 创建人 + */ + @ApiModelProperty(value = "创建人", dataType = "String") + private String createUser; + + /** + * 创建时间 + */ + @ApiModelProperty(value = "创建时间", dataType = "String") + private String createTime; + + /** + * 更新时间 + */ + @ApiModelProperty(value = "更新时间", dataType = "String") + private String updateTime; + + /** + * 附件 + */ + @TableField(exist = false) + @ApiModelProperty(value = "附件列表", dataType = "List") + private List fileList; + +} diff --git a/casic-metering-model/src/main/java/com/casic/missiles/dto/meter/StandardEquipmentApplyRequest.java b/casic-metering-model/src/main/java/com/casic/missiles/dto/meter/StandardEquipmentApplyRequest.java index 7325905..19fab62 100644 --- a/casic-metering-model/src/main/java/com/casic/missiles/dto/meter/StandardEquipmentApplyRequest.java +++ b/casic-metering-model/src/main/java/com/casic/missiles/dto/meter/StandardEquipmentApplyRequest.java @@ -51,6 +51,12 @@ * 申请状态 */ @ApiModelProperty(value = "申请状态", dataType = "String") + private String applyStatus; + + /** + * 审批状态 + */ + @ApiModelProperty(value = "审批状态", dataType = "String", required = true) private String approvalStatus; /** diff --git a/casic-metering-model/src/main/java/com/casic/missiles/model/MeterCheckInfoFile.java b/casic-metering-model/src/main/java/com/casic/missiles/model/MeterCheckInfoFile.java index 3d73308..29047eb 100644 --- a/casic-metering-model/src/main/java/com/casic/missiles/model/MeterCheckInfoFile.java +++ b/casic-metering-model/src/main/java/com/casic/missiles/model/MeterCheckInfoFile.java @@ -1,7 +1,6 @@ package com.casic.missiles.model; -import com.alibaba.excel.annotation.ExcelProperty; import com.baomidou.mybatisplus.annotation.TableField; import com.baomidou.mybatisplus.annotation.TableId; import com.baomidou.mybatisplus.annotation.TableName; diff --git a/casic-metering-model/src/main/java/com/casic/missiles/model/MeterEquipmentApply.java b/casic-metering-model/src/main/java/com/casic/missiles/model/MeterEquipmentApply.java index 2d53b96..277cb9b 100644 --- a/casic-metering-model/src/main/java/com/casic/missiles/model/MeterEquipmentApply.java +++ b/casic-metering-model/src/main/java/com/casic/missiles/model/MeterEquipmentApply.java @@ -191,10 +191,17 @@ private String updateTime; /** - * 借用设备列表 + * 设备列表 */ @TableField(exist = false) - @ApiModelProperty(value = "借用设备列表", dataType = "List") + @ApiModelProperty(value = "设备列表", dataType = "List") private List equipmentList; + /** + * 附件列表 + */ + @TableField(exist = false) + @ApiModelProperty(value = "附件列表", dataType = "List") + private List fileList; + } diff --git a/casic-metering-model/src/main/java/com/casic/missiles/model/MeterEquipmentApplyFile.java b/casic-metering-model/src/main/java/com/casic/missiles/model/MeterEquipmentApplyFile.java new file mode 100644 index 0000000..be8ab2c --- /dev/null +++ b/casic-metering-model/src/main/java/com/casic/missiles/model/MeterEquipmentApplyFile.java @@ -0,0 +1,77 @@ +package com.casic.missiles.model; + +import com.baomidou.mybatisplus.annotation.TableField; +import com.baomidou.mybatisplus.annotation.TableId; +import com.baomidou.mybatisplus.annotation.TableName; +import io.swagger.annotations.ApiModel; +import io.swagger.annotations.ApiModelProperty; +import lombok.Data; + +import java.io.Serializable; + +@Data +@ApiModel +@TableName("meter_equipment_apply_file") +public class MeterEquipmentApplyFile implements Serializable { + + private static final long serialVersionUID = -8926996367574659071L; + + /** + * 主键 + */ + @TableId("id") + @ApiModelProperty(value = "主键", dataType = "Long") + private Long id; + + /** + * 申请id + */ + @TableField("apply_id") + @ApiModelProperty(value = "申请id", dataType = "Long") + private Long applyId; + + /** + * 文件名 + */ + @ApiModelProperty(value = "文件名", dataType = "String", required = true) + @TableField("file_name") + private String fileName; + + /** + * minio存储文件名 + */ + @TableField("minio_file_name") + @ApiModelProperty(value = "minio存储文件名", dataType = "String", required = true) + private String minioFileName; + + /** + * 备注 + */ + @TableField("remark") + @ApiModelProperty(value = "备注", dataType = "String", required = false) + private String remark; + + /** + * 删除标记 + */ + @TableField("is_del") + private Integer isDel; + + /** + * 创建人 + */ + @TableField("create_user") + private Long createUser; + + /** + * 创建时间 + */ + @TableField("create_time") + private String createTime; + + /** + * 更新时间 + */ + @TableField("update_time") + private String updateTime; +} diff --git a/casic-metering-api/src/main/java/com/casic/missiles/controller/meter/MeterStateManageController.java b/casic-metering-api/src/main/java/com/casic/missiles/controller/meter/MeterStateManageController.java new file mode 100644 index 0000000..a276ff5 --- /dev/null +++ b/casic-metering-api/src/main/java/com/casic/missiles/controller/meter/MeterStateManageController.java @@ -0,0 +1,85 @@ +package com.casic.missiles.controller.meter; + +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; +import com.casic.missiles.dto.meter.MeterStateManageRequest; +import com.casic.missiles.dto.meter.MeterStateManageResponse; +import com.casic.missiles.model.MeterCheckInfo; +import com.casic.missiles.model.MeterEquipmentApply; +import com.casic.missiles.service.meter.IMeterStateManageService; +import com.casic.missiles.service.meter.MeterEquipmentApplyService; +import io.swagger.annotations.Api; +import io.swagger.annotations.ApiOperation; +import lombok.extern.slf4j.Slf4j; +import org.springframework.web.bind.annotation.*; + +import javax.annotation.Resource; +import javax.validation.Valid; + +/** + **

+ * * 状态管理列表 + * *

+ * + * @author xiezhuangz + * @version 1.0 + * @date 2022/12/27 + */ +@Api(tags = "状态管理相关接口") +@Slf4j +@RestController +@RequestMapping("meter/stateManage") +public class MeterStateManageController extends ExportController { + + @Resource + private IMeterStateManageService stateManageService; + + @Resource + private MeterEquipmentApplyService meterEquipmentApplyService; + + /** + * 状态管理申请列表 + */ + @ApiOperation("状态管理申请列表") + @PostMapping("/stateManageList") + @ResponseBody + public ReturnDTO> applyList(@RequestBody MeterStateManageRequest request) throws Exception{ + Page page = PageFactory.defaultPage(); + return ReturnUtil.success(super.packForBT(stateManageService.stateManageList(page, request))); + } + + /** + * 状态管理申请列表删除 + */ + @ApiOperation("状态管理申请列表删除") + @PostMapping("/deleteStateManageList") + @ResponseBody + public ReturnDTO deleteStateManageList(@RequestBody IdDTO idDto) { + return meterEquipmentApplyService.deleteEquipmentApply(idDto); + } + + /** + * 状态管理申请详细信息 + */ + @ApiOperation("状态管理申请详细信息") + @PostMapping("/selectStateManageInfo") + @ResponseBody + public ReturnDTO selectStateManageInfo(@RequestBody IdDTO idDto) throws Exception{ + return ReturnUtil.success(stateManageService.selectStateManageInfo(idDto)); + } + + /** + * 设状态管理申请新建 + */ + @ApiOperation("设状态管理申请新建") + @PostMapping("/addStateManageInfo") + @ResponseBody + public ReturnDTO addStateManageInfo(@RequestBody @Valid MeterEquipmentApply meterEquipmentApply) throws Exception{ + return meterEquipmentApplyService.addEquipmentApply(meterEquipmentApply); + } +} diff --git a/casic-metering-dao/src/main/java/com/casic/missiles/mapper/meter/MeterEquipmentApplyFileMapper.java b/casic-metering-dao/src/main/java/com/casic/missiles/mapper/meter/MeterEquipmentApplyFileMapper.java new file mode 100644 index 0000000..69c6356 --- /dev/null +++ b/casic-metering-dao/src/main/java/com/casic/missiles/mapper/meter/MeterEquipmentApplyFileMapper.java @@ -0,0 +1,7 @@ +package com.casic.missiles.mapper.meter; + +import com.baomidou.mybatisplus.core.mapper.BaseMapper; +import com.casic.missiles.model.MeterEquipmentApplyFile; + +public interface MeterEquipmentApplyFileMapper extends BaseMapper { +} diff --git a/casic-metering-dao/src/main/java/com/casic/missiles/mapper/meter/MeterStateManageMapper.java b/casic-metering-dao/src/main/java/com/casic/missiles/mapper/meter/MeterStateManageMapper.java new file mode 100644 index 0000000..ad60153 --- /dev/null +++ b/casic-metering-dao/src/main/java/com/casic/missiles/mapper/meter/MeterStateManageMapper.java @@ -0,0 +1,14 @@ +package com.casic.missiles.mapper.meter; + +import com.baomidou.mybatisplus.extension.plugins.pagination.Page; +import com.casic.missiles.dto.meter.MeterStateManageRequest; +import com.casic.missiles.dto.meter.MeterStateManageResponse; +import com.casic.missiles.model.MeterCheckInfo; +import org.apache.ibatis.annotations.Param; + +public interface MeterStateManageMapper { + + Page stateManageList(Page page, @Param("request") MeterStateManageRequest request); + + MeterStateManageResponse selectById(@Param("id") Long id); +} diff --git a/casic-metering-dao/src/main/resources/mapper/meter/MeterCertificateMapper.xml b/casic-metering-dao/src/main/resources/mapper/meter/MeterCertificateMapper.xml index 7f4ff3e..6eb532b 100644 --- a/casic-metering-dao/src/main/resources/mapper/meter/MeterCertificateMapper.xml +++ b/casic-metering-dao/src/main/resources/mapper/meter/MeterCertificateMapper.xml @@ -32,7 +32,7 @@ t1.certificate_name, t1.certificate_date, t1.certificate_company, - t1.valid_date, + DATE_FORMAT(t1.valid_date,'%Y-%m-%d') as valid_date, t1.certificate_status, t1.remark, t2.NAME, @@ -41,10 +41,11 @@ t2.education, t2.technology_job, t2.administration_job, - t2.dept_id + t3.FULL_NAME as dept_id FROM meter_certificate AS t1 LEFT JOIN meter_staff t2 ON t1.staff_id = t2.id + LEFT JOIN sys_dept t3 on t2.dept_id = t3.id and t1.is_del = 0 @@ -62,6 +63,9 @@ and t1.certificate_status = #{request.certificateStatus} + + and DATE_FORMAT(t1.valid_date,'%Y-%m-%d') <= DATE_SUB(curdate(),INTERVAL -30 day) + diff --git a/casic-metering-dao/src/main/resources/mapper/meter/MeterStateManageMapper.xml b/casic-metering-dao/src/main/resources/mapper/meter/MeterStateManageMapper.xml new file mode 100644 index 0000000..4f3e5f1 --- /dev/null +++ b/casic-metering-dao/src/main/resources/mapper/meter/MeterStateManageMapper.xml @@ -0,0 +1,66 @@ + + + + + + + + SELECT + msa.id, + msa.apply_no, + msa.apply_type, + mfa.equipment_no, + mfa.equipment_name, + mfa.model_no, + mfa.manager_state, + msa.approval_status, + sd.SIMPLE_NAME as apply_unit, + su.`NAME` as apply_person, + DATE_FORMAT( msa.time, '%Y-%m-%d %H:%i' ) as time, + msa.process_id, + msa.process_result, + msa.remark + FROM + meter_equipment_apply msa + LEFT JOIN sys_user su ON su.id = msa.apply_person + LEFT JOIN sys_dept sd ON sd.id = msa.apply_unit + LEFT JOIN meter_equipment_apply_equipment meae on msa.id = meae.apply_id + LEFT JOIN meter_fixed_assets mfa on meae.equipment_id = mfa.id + where 1=1 and msa.is_del = 0 + + + + + diff --git a/casic-metering-model/src/main/java/com/casic/missiles/dto/meter/MeterEquipmentApplyRequest.java b/casic-metering-model/src/main/java/com/casic/missiles/dto/meter/MeterEquipmentApplyRequest.java index 0f5db75..2154032 100644 --- a/casic-metering-model/src/main/java/com/casic/missiles/dto/meter/MeterEquipmentApplyRequest.java +++ b/casic-metering-model/src/main/java/com/casic/missiles/dto/meter/MeterEquipmentApplyRequest.java @@ -1,7 +1,6 @@ package com.casic.missiles.dto.meter; -import com.baomidou.mybatisplus.annotation.TableField; import io.swagger.annotations.ApiModel; import io.swagger.annotations.ApiModelProperty; import lombok.Data; @@ -49,20 +48,20 @@ /** * 审批状态 */ - @ApiModelProperty(value = "审批状态", dataType = "String") + @ApiModelProperty(value = "审批状态", dataType = "String", required = true) private String approvalStatus; /** * 处置结果 */ - @ApiModelProperty(value = "处置结果", dataType = "String") + @ApiModelProperty(value = "处置结果", dataType = "String", required = true) private String processResult; /** * 创建人 */ - @ApiModelProperty(value = "创建人", dataType = "String") + @ApiModelProperty(value = "创建人", dataType = "String", required = true) private String createUser; } 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 7e95296..3403124 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 @@ -50,5 +50,11 @@ @ApiModelProperty(value = "证书状态", dataType = "String") private String certificateStatus; + /** + * 证书提醒列表 + */ + @ApiModelProperty(value = "证书提醒列表", dataType = "String") + private String remindType; + } diff --git a/casic-metering-model/src/main/java/com/casic/missiles/dto/meter/MeterStateManageRequest.java b/casic-metering-model/src/main/java/com/casic/missiles/dto/meter/MeterStateManageRequest.java new file mode 100644 index 0000000..492c414 --- /dev/null +++ b/casic-metering-model/src/main/java/com/casic/missiles/dto/meter/MeterStateManageRequest.java @@ -0,0 +1,59 @@ +package com.casic.missiles.dto.meter; + +import io.swagger.annotations.ApiModel; +import io.swagger.annotations.ApiModelProperty; +import lombok.Data; + +/** + * 测量设备-状态管理申请请求实体 + * @author xiezhuangz + * @version 1.0 + * @date 2022/12/19 9:43 + */ + +@ApiModel +@Data +public class MeterStateManageRequest { + + /** + * 申请编号 + */ + @ApiModelProperty(value = "申请编号", dataType = "String") + private String applyNo; + + /** + * 设备编号 + */ + @ApiModelProperty(value = "(状态管理)设备编号", dataType = "String") + private String equipmentNo; + + /** + * 设备名称 + */ + @ApiModelProperty(value = "设备名称", dataType = "String") + private String equipmentName; + + /** + * 申请单位 + */ + @ApiModelProperty(value = "申请单位", dataType = "String") + private String applyUnit; + + /** + * 申请状态 + */ + @ApiModelProperty(value = "申请状态", dataType = "String") + private String applyStatus; + + /** + * 审批状态 + */ + @ApiModelProperty(value = "审批状态", dataType = "String", required = true) + private String approvalStatus; + + /** + * 创建人 + */ + @ApiModelProperty(value = "创建人", dataType = "String", required = true) + private String createUser; +} diff --git a/casic-metering-model/src/main/java/com/casic/missiles/dto/meter/MeterStateManageResponse.java b/casic-metering-model/src/main/java/com/casic/missiles/dto/meter/MeterStateManageResponse.java new file mode 100644 index 0000000..4d9e6e8 --- /dev/null +++ b/casic-metering-model/src/main/java/com/casic/missiles/dto/meter/MeterStateManageResponse.java @@ -0,0 +1,166 @@ +package com.casic.missiles.dto.meter; + +import com.alibaba.excel.annotation.ExcelProperty; +import com.baomidou.mybatisplus.annotation.TableField; +import com.baomidou.mybatisplus.annotation.TableId; +import com.casic.missiles.annotation.DictCodeField; +import com.casic.missiles.constants.MeterDictCode; +import com.casic.missiles.model.MeterEquipmentApplyFile; +import io.swagger.annotations.ApiModel; +import io.swagger.annotations.ApiModelProperty; +import lombok.Data; + +import javax.validation.constraints.NotBlank; +import java.io.Serializable; +import java.util.List; + +@ApiModel +@Data +public class MeterStateManageResponse implements Serializable { + + private static final long serialVersionUID = 8705579720027710541L; + /** + * 主键 + */ + @TableId("id") + @ApiModelProperty(value = "主键", dataType = "Long") + private Long id; + + /** + * 申请编号 + */ + @ExcelProperty(value = "申请编号",order = 0) + @ApiModelProperty(value = "申请编号", dataType = "String") + private String applyNo; + + /** + * 申请类型-字典code + */ + @NotBlank(message = "申请类型不能为空") + @ApiModelProperty(value = "申请类型-字典code", dataType = "String") + @DictCodeField(message = "申请类型不合法", cacheName = MeterDictCode.STANDARD_APPLY_TYPE) + private String applyType; + + /** + * 审批状态-字典code + */ + @DictCodeField(message = "审批状态不合法", cacheName = MeterDictCode.APPROVAL_STATUS) + @ApiModelProperty(value = "审批状态-字典code", dataType = "String") + private String approvalStatus; + + /** + * 审批状态名称 + */ + @ApiModelProperty(value = "审批状态名称", dataType = "String") + private String approvalStatusName; + + /** + * 申请类型名称 + */ + @ApiModelProperty(value = "申请类型名称", dataType = "String") + private String applyTypeName; + + /** + * 设备编号 + */ + @ApiModelProperty(value = "(状态管理)设备编号", dataType = "String") + private String equipmentNo; + + /** + * 设备名称 + */ + @ApiModelProperty(value = "设备名称", dataType = "String") + private String equipmentName; + + /** + * 型号 + */ + @ApiModelProperty(value = "型号", dataType = "String") + private String modelNo; + + /** + * 管理状态-字典code + */ + @ApiModelProperty(value = "管理状态", dataType = "String") + @DictCodeField(message = "管理状态不合法", cacheName = MeterDictCode.MANAGER_STATE) + private String managerState; + /** + * 管理状态名称 + */ + @ApiModelProperty(value = "管理状态名称", dataType = "String") + private String managerStateName; + + /** + * 申请单位 + */ + @ApiModelProperty(value = "申请单位", dataType = "String") + private String applyUnit; + + /** + * 申请人 + */ + @ApiModelProperty(value = "申请人", dataType = "String") + private String applyPerson; + + /** + * 申请时间 + */ + @ApiModelProperty(value = "申请时间", dataType = "String") + private String time; + + /** + * 流程实例ID + */ + @ApiModelProperty(value = "流程实例ID", dataType = "String") + private String processId; + + /** + * 处理结果(设备领用、借用处理结果) + */ + @ApiModelProperty(value = "处理结果(设备领用、借用处理结果)", dataType = "String") + private String processResult; + + /** + * 版本号 + */ + @ApiModelProperty(value = "版本号", dataType = "String") + private String version; + + /** + * 备注 + */ + @ApiModelProperty(value = "备注", dataType = "String") + private String remark; + + /** + * 删除标记 + */ + @ApiModelProperty(value = "删除标记", dataType = "Integer") + private Integer isDel; + + /** + * 创建人 + */ + @ApiModelProperty(value = "创建人", dataType = "String") + private String createUser; + + /** + * 创建时间 + */ + @ApiModelProperty(value = "创建时间", dataType = "String") + private String createTime; + + /** + * 更新时间 + */ + @ApiModelProperty(value = "更新时间", dataType = "String") + private String updateTime; + + /** + * 附件 + */ + @TableField(exist = false) + @ApiModelProperty(value = "附件列表", dataType = "List") + private List fileList; + +} diff --git a/casic-metering-model/src/main/java/com/casic/missiles/dto/meter/StandardEquipmentApplyRequest.java b/casic-metering-model/src/main/java/com/casic/missiles/dto/meter/StandardEquipmentApplyRequest.java index 7325905..19fab62 100644 --- a/casic-metering-model/src/main/java/com/casic/missiles/dto/meter/StandardEquipmentApplyRequest.java +++ b/casic-metering-model/src/main/java/com/casic/missiles/dto/meter/StandardEquipmentApplyRequest.java @@ -51,6 +51,12 @@ * 申请状态 */ @ApiModelProperty(value = "申请状态", dataType = "String") + private String applyStatus; + + /** + * 审批状态 + */ + @ApiModelProperty(value = "审批状态", dataType = "String", required = true) private String approvalStatus; /** diff --git a/casic-metering-model/src/main/java/com/casic/missiles/model/MeterCheckInfoFile.java b/casic-metering-model/src/main/java/com/casic/missiles/model/MeterCheckInfoFile.java index 3d73308..29047eb 100644 --- a/casic-metering-model/src/main/java/com/casic/missiles/model/MeterCheckInfoFile.java +++ b/casic-metering-model/src/main/java/com/casic/missiles/model/MeterCheckInfoFile.java @@ -1,7 +1,6 @@ package com.casic.missiles.model; -import com.alibaba.excel.annotation.ExcelProperty; import com.baomidou.mybatisplus.annotation.TableField; import com.baomidou.mybatisplus.annotation.TableId; import com.baomidou.mybatisplus.annotation.TableName; diff --git a/casic-metering-model/src/main/java/com/casic/missiles/model/MeterEquipmentApply.java b/casic-metering-model/src/main/java/com/casic/missiles/model/MeterEquipmentApply.java index 2d53b96..277cb9b 100644 --- a/casic-metering-model/src/main/java/com/casic/missiles/model/MeterEquipmentApply.java +++ b/casic-metering-model/src/main/java/com/casic/missiles/model/MeterEquipmentApply.java @@ -191,10 +191,17 @@ private String updateTime; /** - * 借用设备列表 + * 设备列表 */ @TableField(exist = false) - @ApiModelProperty(value = "借用设备列表", dataType = "List") + @ApiModelProperty(value = "设备列表", dataType = "List") private List equipmentList; + /** + * 附件列表 + */ + @TableField(exist = false) + @ApiModelProperty(value = "附件列表", dataType = "List") + private List fileList; + } diff --git a/casic-metering-model/src/main/java/com/casic/missiles/model/MeterEquipmentApplyFile.java b/casic-metering-model/src/main/java/com/casic/missiles/model/MeterEquipmentApplyFile.java new file mode 100644 index 0000000..be8ab2c --- /dev/null +++ b/casic-metering-model/src/main/java/com/casic/missiles/model/MeterEquipmentApplyFile.java @@ -0,0 +1,77 @@ +package com.casic.missiles.model; + +import com.baomidou.mybatisplus.annotation.TableField; +import com.baomidou.mybatisplus.annotation.TableId; +import com.baomidou.mybatisplus.annotation.TableName; +import io.swagger.annotations.ApiModel; +import io.swagger.annotations.ApiModelProperty; +import lombok.Data; + +import java.io.Serializable; + +@Data +@ApiModel +@TableName("meter_equipment_apply_file") +public class MeterEquipmentApplyFile implements Serializable { + + private static final long serialVersionUID = -8926996367574659071L; + + /** + * 主键 + */ + @TableId("id") + @ApiModelProperty(value = "主键", dataType = "Long") + private Long id; + + /** + * 申请id + */ + @TableField("apply_id") + @ApiModelProperty(value = "申请id", dataType = "Long") + private Long applyId; + + /** + * 文件名 + */ + @ApiModelProperty(value = "文件名", dataType = "String", required = true) + @TableField("file_name") + private String fileName; + + /** + * minio存储文件名 + */ + @TableField("minio_file_name") + @ApiModelProperty(value = "minio存储文件名", dataType = "String", required = true) + private String minioFileName; + + /** + * 备注 + */ + @TableField("remark") + @ApiModelProperty(value = "备注", dataType = "String", required = false) + private String remark; + + /** + * 删除标记 + */ + @TableField("is_del") + private Integer isDel; + + /** + * 创建人 + */ + @TableField("create_user") + private Long createUser; + + /** + * 创建时间 + */ + @TableField("create_time") + private String createTime; + + /** + * 更新时间 + */ + @TableField("update_time") + private String updateTime; +} diff --git a/casic-metering-service/src/main/java/com/casic/missiles/service/Impl/meter/MeterCertificateServiceImpl.java b/casic-metering-service/src/main/java/com/casic/missiles/service/Impl/meter/MeterCertificateServiceImpl.java index 2f4ce48..e46a7b2 100644 --- a/casic-metering-service/src/main/java/com/casic/missiles/service/Impl/meter/MeterCertificateServiceImpl.java +++ b/casic-metering-service/src/main/java/com/casic/missiles/service/Impl/meter/MeterCertificateServiceImpl.java @@ -1,6 +1,7 @@ package com.casic.missiles.service.Impl.meter; +import com.alibaba.excel.util.DateUtils; import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper; import com.baomidou.mybatisplus.core.conditions.update.UpdateWrapper; import com.baomidou.mybatisplus.core.toolkit.IdWorker; @@ -32,6 +33,7 @@ import javax.annotation.Resource; import javax.servlet.http.HttpServletResponse; import java.util.ArrayList; +import java.util.Date; import java.util.List; import java.util.Map; import java.util.concurrent.atomic.AtomicBoolean; @@ -229,18 +231,17 @@ } } private List supplementList(List meterCertificateDtoList){ + String format = DateUtils.format(new Date(),"yyyy-MM-dd"); for (MeterCertificateDto meterCertificateDto : meterCertificateDtoList) { meterCertificateDto.setTechnologyJob(dictService.getDictNameByCode(MeterDictEnum.TECHNOLOGY_JOB,meterCertificateDto.getTechnologyJob())); meterCertificateDto.setAdministrationJob(dictService.getDictNameByCode(MeterDictEnum.ADMINISTRATION_JOB,meterCertificateDto.getAdministrationJob())); meterCertificateDto.setEducation(dictService.getDictNameByCode(MeterDictEnum.EDUCATION,meterCertificateDto.getEducation())); - meterCertificateDto.setDeptId(deptMapper.selectById(meterCertificateDto.getDeptId()).getFullName()); + if(format.compareTo(meterCertificateDto.getValidDate()) > 0) { + meterCertificateDto.setCertificateStatus("1"); + }else{ + meterCertificateDto.setCertificateStatus("0"); + } } -// meterCertificateDtoList.forEach(meterCertificateDto->{ -// meterCertificateDto.setTechnologyJob(dictService.getDictNameByCode(MeterDictEnum.TECHNOLOGY_JOB,meterCertificateDto.getTechnologyJob())); -// meterCertificateDto.setAdministrationJob(dictService.getDictNameByCode(MeterDictEnum.ADMINISTRATION_JOB,meterCertificateDto.getAdministrationJob())); -// meterCertificateDto.setEducation(dictService.getDictNameByCode(MeterDictEnum.EDUCATION,meterCertificateDto.getEducation())); -// meterCertificateDto.setDeptId(deptMapper.selectById(meterCertificateDto.getDeptId()).getFullName()); -// }); return meterCertificateDtoList; } } diff --git a/casic-metering-api/src/main/java/com/casic/missiles/controller/meter/MeterStateManageController.java b/casic-metering-api/src/main/java/com/casic/missiles/controller/meter/MeterStateManageController.java new file mode 100644 index 0000000..a276ff5 --- /dev/null +++ b/casic-metering-api/src/main/java/com/casic/missiles/controller/meter/MeterStateManageController.java @@ -0,0 +1,85 @@ +package com.casic.missiles.controller.meter; + +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; +import com.casic.missiles.dto.meter.MeterStateManageRequest; +import com.casic.missiles.dto.meter.MeterStateManageResponse; +import com.casic.missiles.model.MeterCheckInfo; +import com.casic.missiles.model.MeterEquipmentApply; +import com.casic.missiles.service.meter.IMeterStateManageService; +import com.casic.missiles.service.meter.MeterEquipmentApplyService; +import io.swagger.annotations.Api; +import io.swagger.annotations.ApiOperation; +import lombok.extern.slf4j.Slf4j; +import org.springframework.web.bind.annotation.*; + +import javax.annotation.Resource; +import javax.validation.Valid; + +/** + **

+ * * 状态管理列表 + * *

+ * + * @author xiezhuangz + * @version 1.0 + * @date 2022/12/27 + */ +@Api(tags = "状态管理相关接口") +@Slf4j +@RestController +@RequestMapping("meter/stateManage") +public class MeterStateManageController extends ExportController { + + @Resource + private IMeterStateManageService stateManageService; + + @Resource + private MeterEquipmentApplyService meterEquipmentApplyService; + + /** + * 状态管理申请列表 + */ + @ApiOperation("状态管理申请列表") + @PostMapping("/stateManageList") + @ResponseBody + public ReturnDTO> applyList(@RequestBody MeterStateManageRequest request) throws Exception{ + Page page = PageFactory.defaultPage(); + return ReturnUtil.success(super.packForBT(stateManageService.stateManageList(page, request))); + } + + /** + * 状态管理申请列表删除 + */ + @ApiOperation("状态管理申请列表删除") + @PostMapping("/deleteStateManageList") + @ResponseBody + public ReturnDTO deleteStateManageList(@RequestBody IdDTO idDto) { + return meterEquipmentApplyService.deleteEquipmentApply(idDto); + } + + /** + * 状态管理申请详细信息 + */ + @ApiOperation("状态管理申请详细信息") + @PostMapping("/selectStateManageInfo") + @ResponseBody + public ReturnDTO selectStateManageInfo(@RequestBody IdDTO idDto) throws Exception{ + return ReturnUtil.success(stateManageService.selectStateManageInfo(idDto)); + } + + /** + * 设状态管理申请新建 + */ + @ApiOperation("设状态管理申请新建") + @PostMapping("/addStateManageInfo") + @ResponseBody + public ReturnDTO addStateManageInfo(@RequestBody @Valid MeterEquipmentApply meterEquipmentApply) throws Exception{ + return meterEquipmentApplyService.addEquipmentApply(meterEquipmentApply); + } +} diff --git a/casic-metering-dao/src/main/java/com/casic/missiles/mapper/meter/MeterEquipmentApplyFileMapper.java b/casic-metering-dao/src/main/java/com/casic/missiles/mapper/meter/MeterEquipmentApplyFileMapper.java new file mode 100644 index 0000000..69c6356 --- /dev/null +++ b/casic-metering-dao/src/main/java/com/casic/missiles/mapper/meter/MeterEquipmentApplyFileMapper.java @@ -0,0 +1,7 @@ +package com.casic.missiles.mapper.meter; + +import com.baomidou.mybatisplus.core.mapper.BaseMapper; +import com.casic.missiles.model.MeterEquipmentApplyFile; + +public interface MeterEquipmentApplyFileMapper extends BaseMapper { +} diff --git a/casic-metering-dao/src/main/java/com/casic/missiles/mapper/meter/MeterStateManageMapper.java b/casic-metering-dao/src/main/java/com/casic/missiles/mapper/meter/MeterStateManageMapper.java new file mode 100644 index 0000000..ad60153 --- /dev/null +++ b/casic-metering-dao/src/main/java/com/casic/missiles/mapper/meter/MeterStateManageMapper.java @@ -0,0 +1,14 @@ +package com.casic.missiles.mapper.meter; + +import com.baomidou.mybatisplus.extension.plugins.pagination.Page; +import com.casic.missiles.dto.meter.MeterStateManageRequest; +import com.casic.missiles.dto.meter.MeterStateManageResponse; +import com.casic.missiles.model.MeterCheckInfo; +import org.apache.ibatis.annotations.Param; + +public interface MeterStateManageMapper { + + Page stateManageList(Page page, @Param("request") MeterStateManageRequest request); + + MeterStateManageResponse selectById(@Param("id") Long id); +} diff --git a/casic-metering-dao/src/main/resources/mapper/meter/MeterCertificateMapper.xml b/casic-metering-dao/src/main/resources/mapper/meter/MeterCertificateMapper.xml index 7f4ff3e..6eb532b 100644 --- a/casic-metering-dao/src/main/resources/mapper/meter/MeterCertificateMapper.xml +++ b/casic-metering-dao/src/main/resources/mapper/meter/MeterCertificateMapper.xml @@ -32,7 +32,7 @@ t1.certificate_name, t1.certificate_date, t1.certificate_company, - t1.valid_date, + DATE_FORMAT(t1.valid_date,'%Y-%m-%d') as valid_date, t1.certificate_status, t1.remark, t2.NAME, @@ -41,10 +41,11 @@ t2.education, t2.technology_job, t2.administration_job, - t2.dept_id + t3.FULL_NAME as dept_id FROM meter_certificate AS t1 LEFT JOIN meter_staff t2 ON t1.staff_id = t2.id + LEFT JOIN sys_dept t3 on t2.dept_id = t3.id and t1.is_del = 0 @@ -62,6 +63,9 @@ and t1.certificate_status = #{request.certificateStatus} + + and DATE_FORMAT(t1.valid_date,'%Y-%m-%d') <= DATE_SUB(curdate(),INTERVAL -30 day) + diff --git a/casic-metering-dao/src/main/resources/mapper/meter/MeterStateManageMapper.xml b/casic-metering-dao/src/main/resources/mapper/meter/MeterStateManageMapper.xml new file mode 100644 index 0000000..4f3e5f1 --- /dev/null +++ b/casic-metering-dao/src/main/resources/mapper/meter/MeterStateManageMapper.xml @@ -0,0 +1,66 @@ + + + + + + + + SELECT + msa.id, + msa.apply_no, + msa.apply_type, + mfa.equipment_no, + mfa.equipment_name, + mfa.model_no, + mfa.manager_state, + msa.approval_status, + sd.SIMPLE_NAME as apply_unit, + su.`NAME` as apply_person, + DATE_FORMAT( msa.time, '%Y-%m-%d %H:%i' ) as time, + msa.process_id, + msa.process_result, + msa.remark + FROM + meter_equipment_apply msa + LEFT JOIN sys_user su ON su.id = msa.apply_person + LEFT JOIN sys_dept sd ON sd.id = msa.apply_unit + LEFT JOIN meter_equipment_apply_equipment meae on msa.id = meae.apply_id + LEFT JOIN meter_fixed_assets mfa on meae.equipment_id = mfa.id + where 1=1 and msa.is_del = 0 + + + + + diff --git a/casic-metering-model/src/main/java/com/casic/missiles/dto/meter/MeterEquipmentApplyRequest.java b/casic-metering-model/src/main/java/com/casic/missiles/dto/meter/MeterEquipmentApplyRequest.java index 0f5db75..2154032 100644 --- a/casic-metering-model/src/main/java/com/casic/missiles/dto/meter/MeterEquipmentApplyRequest.java +++ b/casic-metering-model/src/main/java/com/casic/missiles/dto/meter/MeterEquipmentApplyRequest.java @@ -1,7 +1,6 @@ package com.casic.missiles.dto.meter; -import com.baomidou.mybatisplus.annotation.TableField; import io.swagger.annotations.ApiModel; import io.swagger.annotations.ApiModelProperty; import lombok.Data; @@ -49,20 +48,20 @@ /** * 审批状态 */ - @ApiModelProperty(value = "审批状态", dataType = "String") + @ApiModelProperty(value = "审批状态", dataType = "String", required = true) private String approvalStatus; /** * 处置结果 */ - @ApiModelProperty(value = "处置结果", dataType = "String") + @ApiModelProperty(value = "处置结果", dataType = "String", required = true) private String processResult; /** * 创建人 */ - @ApiModelProperty(value = "创建人", dataType = "String") + @ApiModelProperty(value = "创建人", dataType = "String", required = true) private String createUser; } 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 7e95296..3403124 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 @@ -50,5 +50,11 @@ @ApiModelProperty(value = "证书状态", dataType = "String") private String certificateStatus; + /** + * 证书提醒列表 + */ + @ApiModelProperty(value = "证书提醒列表", dataType = "String") + private String remindType; + } diff --git a/casic-metering-model/src/main/java/com/casic/missiles/dto/meter/MeterStateManageRequest.java b/casic-metering-model/src/main/java/com/casic/missiles/dto/meter/MeterStateManageRequest.java new file mode 100644 index 0000000..492c414 --- /dev/null +++ b/casic-metering-model/src/main/java/com/casic/missiles/dto/meter/MeterStateManageRequest.java @@ -0,0 +1,59 @@ +package com.casic.missiles.dto.meter; + +import io.swagger.annotations.ApiModel; +import io.swagger.annotations.ApiModelProperty; +import lombok.Data; + +/** + * 测量设备-状态管理申请请求实体 + * @author xiezhuangz + * @version 1.0 + * @date 2022/12/19 9:43 + */ + +@ApiModel +@Data +public class MeterStateManageRequest { + + /** + * 申请编号 + */ + @ApiModelProperty(value = "申请编号", dataType = "String") + private String applyNo; + + /** + * 设备编号 + */ + @ApiModelProperty(value = "(状态管理)设备编号", dataType = "String") + private String equipmentNo; + + /** + * 设备名称 + */ + @ApiModelProperty(value = "设备名称", dataType = "String") + private String equipmentName; + + /** + * 申请单位 + */ + @ApiModelProperty(value = "申请单位", dataType = "String") + private String applyUnit; + + /** + * 申请状态 + */ + @ApiModelProperty(value = "申请状态", dataType = "String") + private String applyStatus; + + /** + * 审批状态 + */ + @ApiModelProperty(value = "审批状态", dataType = "String", required = true) + private String approvalStatus; + + /** + * 创建人 + */ + @ApiModelProperty(value = "创建人", dataType = "String", required = true) + private String createUser; +} diff --git a/casic-metering-model/src/main/java/com/casic/missiles/dto/meter/MeterStateManageResponse.java b/casic-metering-model/src/main/java/com/casic/missiles/dto/meter/MeterStateManageResponse.java new file mode 100644 index 0000000..4d9e6e8 --- /dev/null +++ b/casic-metering-model/src/main/java/com/casic/missiles/dto/meter/MeterStateManageResponse.java @@ -0,0 +1,166 @@ +package com.casic.missiles.dto.meter; + +import com.alibaba.excel.annotation.ExcelProperty; +import com.baomidou.mybatisplus.annotation.TableField; +import com.baomidou.mybatisplus.annotation.TableId; +import com.casic.missiles.annotation.DictCodeField; +import com.casic.missiles.constants.MeterDictCode; +import com.casic.missiles.model.MeterEquipmentApplyFile; +import io.swagger.annotations.ApiModel; +import io.swagger.annotations.ApiModelProperty; +import lombok.Data; + +import javax.validation.constraints.NotBlank; +import java.io.Serializable; +import java.util.List; + +@ApiModel +@Data +public class MeterStateManageResponse implements Serializable { + + private static final long serialVersionUID = 8705579720027710541L; + /** + * 主键 + */ + @TableId("id") + @ApiModelProperty(value = "主键", dataType = "Long") + private Long id; + + /** + * 申请编号 + */ + @ExcelProperty(value = "申请编号",order = 0) + @ApiModelProperty(value = "申请编号", dataType = "String") + private String applyNo; + + /** + * 申请类型-字典code + */ + @NotBlank(message = "申请类型不能为空") + @ApiModelProperty(value = "申请类型-字典code", dataType = "String") + @DictCodeField(message = "申请类型不合法", cacheName = MeterDictCode.STANDARD_APPLY_TYPE) + private String applyType; + + /** + * 审批状态-字典code + */ + @DictCodeField(message = "审批状态不合法", cacheName = MeterDictCode.APPROVAL_STATUS) + @ApiModelProperty(value = "审批状态-字典code", dataType = "String") + private String approvalStatus; + + /** + * 审批状态名称 + */ + @ApiModelProperty(value = "审批状态名称", dataType = "String") + private String approvalStatusName; + + /** + * 申请类型名称 + */ + @ApiModelProperty(value = "申请类型名称", dataType = "String") + private String applyTypeName; + + /** + * 设备编号 + */ + @ApiModelProperty(value = "(状态管理)设备编号", dataType = "String") + private String equipmentNo; + + /** + * 设备名称 + */ + @ApiModelProperty(value = "设备名称", dataType = "String") + private String equipmentName; + + /** + * 型号 + */ + @ApiModelProperty(value = "型号", dataType = "String") + private String modelNo; + + /** + * 管理状态-字典code + */ + @ApiModelProperty(value = "管理状态", dataType = "String") + @DictCodeField(message = "管理状态不合法", cacheName = MeterDictCode.MANAGER_STATE) + private String managerState; + /** + * 管理状态名称 + */ + @ApiModelProperty(value = "管理状态名称", dataType = "String") + private String managerStateName; + + /** + * 申请单位 + */ + @ApiModelProperty(value = "申请单位", dataType = "String") + private String applyUnit; + + /** + * 申请人 + */ + @ApiModelProperty(value = "申请人", dataType = "String") + private String applyPerson; + + /** + * 申请时间 + */ + @ApiModelProperty(value = "申请时间", dataType = "String") + private String time; + + /** + * 流程实例ID + */ + @ApiModelProperty(value = "流程实例ID", dataType = "String") + private String processId; + + /** + * 处理结果(设备领用、借用处理结果) + */ + @ApiModelProperty(value = "处理结果(设备领用、借用处理结果)", dataType = "String") + private String processResult; + + /** + * 版本号 + */ + @ApiModelProperty(value = "版本号", dataType = "String") + private String version; + + /** + * 备注 + */ + @ApiModelProperty(value = "备注", dataType = "String") + private String remark; + + /** + * 删除标记 + */ + @ApiModelProperty(value = "删除标记", dataType = "Integer") + private Integer isDel; + + /** + * 创建人 + */ + @ApiModelProperty(value = "创建人", dataType = "String") + private String createUser; + + /** + * 创建时间 + */ + @ApiModelProperty(value = "创建时间", dataType = "String") + private String createTime; + + /** + * 更新时间 + */ + @ApiModelProperty(value = "更新时间", dataType = "String") + private String updateTime; + + /** + * 附件 + */ + @TableField(exist = false) + @ApiModelProperty(value = "附件列表", dataType = "List") + private List fileList; + +} diff --git a/casic-metering-model/src/main/java/com/casic/missiles/dto/meter/StandardEquipmentApplyRequest.java b/casic-metering-model/src/main/java/com/casic/missiles/dto/meter/StandardEquipmentApplyRequest.java index 7325905..19fab62 100644 --- a/casic-metering-model/src/main/java/com/casic/missiles/dto/meter/StandardEquipmentApplyRequest.java +++ b/casic-metering-model/src/main/java/com/casic/missiles/dto/meter/StandardEquipmentApplyRequest.java @@ -51,6 +51,12 @@ * 申请状态 */ @ApiModelProperty(value = "申请状态", dataType = "String") + private String applyStatus; + + /** + * 审批状态 + */ + @ApiModelProperty(value = "审批状态", dataType = "String", required = true) private String approvalStatus; /** diff --git a/casic-metering-model/src/main/java/com/casic/missiles/model/MeterCheckInfoFile.java b/casic-metering-model/src/main/java/com/casic/missiles/model/MeterCheckInfoFile.java index 3d73308..29047eb 100644 --- a/casic-metering-model/src/main/java/com/casic/missiles/model/MeterCheckInfoFile.java +++ b/casic-metering-model/src/main/java/com/casic/missiles/model/MeterCheckInfoFile.java @@ -1,7 +1,6 @@ package com.casic.missiles.model; -import com.alibaba.excel.annotation.ExcelProperty; import com.baomidou.mybatisplus.annotation.TableField; import com.baomidou.mybatisplus.annotation.TableId; import com.baomidou.mybatisplus.annotation.TableName; diff --git a/casic-metering-model/src/main/java/com/casic/missiles/model/MeterEquipmentApply.java b/casic-metering-model/src/main/java/com/casic/missiles/model/MeterEquipmentApply.java index 2d53b96..277cb9b 100644 --- a/casic-metering-model/src/main/java/com/casic/missiles/model/MeterEquipmentApply.java +++ b/casic-metering-model/src/main/java/com/casic/missiles/model/MeterEquipmentApply.java @@ -191,10 +191,17 @@ private String updateTime; /** - * 借用设备列表 + * 设备列表 */ @TableField(exist = false) - @ApiModelProperty(value = "借用设备列表", dataType = "List") + @ApiModelProperty(value = "设备列表", dataType = "List") private List equipmentList; + /** + * 附件列表 + */ + @TableField(exist = false) + @ApiModelProperty(value = "附件列表", dataType = "List") + private List fileList; + } diff --git a/casic-metering-model/src/main/java/com/casic/missiles/model/MeterEquipmentApplyFile.java b/casic-metering-model/src/main/java/com/casic/missiles/model/MeterEquipmentApplyFile.java new file mode 100644 index 0000000..be8ab2c --- /dev/null +++ b/casic-metering-model/src/main/java/com/casic/missiles/model/MeterEquipmentApplyFile.java @@ -0,0 +1,77 @@ +package com.casic.missiles.model; + +import com.baomidou.mybatisplus.annotation.TableField; +import com.baomidou.mybatisplus.annotation.TableId; +import com.baomidou.mybatisplus.annotation.TableName; +import io.swagger.annotations.ApiModel; +import io.swagger.annotations.ApiModelProperty; +import lombok.Data; + +import java.io.Serializable; + +@Data +@ApiModel +@TableName("meter_equipment_apply_file") +public class MeterEquipmentApplyFile implements Serializable { + + private static final long serialVersionUID = -8926996367574659071L; + + /** + * 主键 + */ + @TableId("id") + @ApiModelProperty(value = "主键", dataType = "Long") + private Long id; + + /** + * 申请id + */ + @TableField("apply_id") + @ApiModelProperty(value = "申请id", dataType = "Long") + private Long applyId; + + /** + * 文件名 + */ + @ApiModelProperty(value = "文件名", dataType = "String", required = true) + @TableField("file_name") + private String fileName; + + /** + * minio存储文件名 + */ + @TableField("minio_file_name") + @ApiModelProperty(value = "minio存储文件名", dataType = "String", required = true) + private String minioFileName; + + /** + * 备注 + */ + @TableField("remark") + @ApiModelProperty(value = "备注", dataType = "String", required = false) + private String remark; + + /** + * 删除标记 + */ + @TableField("is_del") + private Integer isDel; + + /** + * 创建人 + */ + @TableField("create_user") + private Long createUser; + + /** + * 创建时间 + */ + @TableField("create_time") + private String createTime; + + /** + * 更新时间 + */ + @TableField("update_time") + private String updateTime; +} diff --git a/casic-metering-service/src/main/java/com/casic/missiles/service/Impl/meter/MeterCertificateServiceImpl.java b/casic-metering-service/src/main/java/com/casic/missiles/service/Impl/meter/MeterCertificateServiceImpl.java index 2f4ce48..e46a7b2 100644 --- a/casic-metering-service/src/main/java/com/casic/missiles/service/Impl/meter/MeterCertificateServiceImpl.java +++ b/casic-metering-service/src/main/java/com/casic/missiles/service/Impl/meter/MeterCertificateServiceImpl.java @@ -1,6 +1,7 @@ package com.casic.missiles.service.Impl.meter; +import com.alibaba.excel.util.DateUtils; import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper; import com.baomidou.mybatisplus.core.conditions.update.UpdateWrapper; import com.baomidou.mybatisplus.core.toolkit.IdWorker; @@ -32,6 +33,7 @@ import javax.annotation.Resource; import javax.servlet.http.HttpServletResponse; import java.util.ArrayList; +import java.util.Date; import java.util.List; import java.util.Map; import java.util.concurrent.atomic.AtomicBoolean; @@ -229,18 +231,17 @@ } } private List supplementList(List meterCertificateDtoList){ + String format = DateUtils.format(new Date(),"yyyy-MM-dd"); for (MeterCertificateDto meterCertificateDto : meterCertificateDtoList) { meterCertificateDto.setTechnologyJob(dictService.getDictNameByCode(MeterDictEnum.TECHNOLOGY_JOB,meterCertificateDto.getTechnologyJob())); meterCertificateDto.setAdministrationJob(dictService.getDictNameByCode(MeterDictEnum.ADMINISTRATION_JOB,meterCertificateDto.getAdministrationJob())); meterCertificateDto.setEducation(dictService.getDictNameByCode(MeterDictEnum.EDUCATION,meterCertificateDto.getEducation())); - meterCertificateDto.setDeptId(deptMapper.selectById(meterCertificateDto.getDeptId()).getFullName()); + if(format.compareTo(meterCertificateDto.getValidDate()) > 0) { + meterCertificateDto.setCertificateStatus("1"); + }else{ + meterCertificateDto.setCertificateStatus("0"); + } } -// meterCertificateDtoList.forEach(meterCertificateDto->{ -// meterCertificateDto.setTechnologyJob(dictService.getDictNameByCode(MeterDictEnum.TECHNOLOGY_JOB,meterCertificateDto.getTechnologyJob())); -// meterCertificateDto.setAdministrationJob(dictService.getDictNameByCode(MeterDictEnum.ADMINISTRATION_JOB,meterCertificateDto.getAdministrationJob())); -// meterCertificateDto.setEducation(dictService.getDictNameByCode(MeterDictEnum.EDUCATION,meterCertificateDto.getEducation())); -// meterCertificateDto.setDeptId(deptMapper.selectById(meterCertificateDto.getDeptId()).getFullName()); -// }); return meterCertificateDtoList; } } diff --git a/casic-metering-service/src/main/java/com/casic/missiles/service/Impl/meter/MeterEquipmentApplyFileServiceImpl.java b/casic-metering-service/src/main/java/com/casic/missiles/service/Impl/meter/MeterEquipmentApplyFileServiceImpl.java new file mode 100644 index 0000000..ab41002 --- /dev/null +++ b/casic-metering-service/src/main/java/com/casic/missiles/service/Impl/meter/MeterEquipmentApplyFileServiceImpl.java @@ -0,0 +1,11 @@ +package com.casic.missiles.service.Impl.meter; + +import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl; +import com.casic.missiles.mapper.meter.MeterEquipmentApplyFileMapper; +import com.casic.missiles.model.MeterEquipmentApplyFile; +import com.casic.missiles.service.meter.IMeterEquipmentApplyFileService; +import org.springframework.stereotype.Service; + +@Service("IMeterEquipmentApplyFileService") +public class MeterEquipmentApplyFileServiceImpl extends ServiceImpl implements IMeterEquipmentApplyFileService { +} diff --git a/casic-metering-api/src/main/java/com/casic/missiles/controller/meter/MeterStateManageController.java b/casic-metering-api/src/main/java/com/casic/missiles/controller/meter/MeterStateManageController.java new file mode 100644 index 0000000..a276ff5 --- /dev/null +++ b/casic-metering-api/src/main/java/com/casic/missiles/controller/meter/MeterStateManageController.java @@ -0,0 +1,85 @@ +package com.casic.missiles.controller.meter; + +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; +import com.casic.missiles.dto.meter.MeterStateManageRequest; +import com.casic.missiles.dto.meter.MeterStateManageResponse; +import com.casic.missiles.model.MeterCheckInfo; +import com.casic.missiles.model.MeterEquipmentApply; +import com.casic.missiles.service.meter.IMeterStateManageService; +import com.casic.missiles.service.meter.MeterEquipmentApplyService; +import io.swagger.annotations.Api; +import io.swagger.annotations.ApiOperation; +import lombok.extern.slf4j.Slf4j; +import org.springframework.web.bind.annotation.*; + +import javax.annotation.Resource; +import javax.validation.Valid; + +/** + **

+ * * 状态管理列表 + * *

+ * + * @author xiezhuangz + * @version 1.0 + * @date 2022/12/27 + */ +@Api(tags = "状态管理相关接口") +@Slf4j +@RestController +@RequestMapping("meter/stateManage") +public class MeterStateManageController extends ExportController { + + @Resource + private IMeterStateManageService stateManageService; + + @Resource + private MeterEquipmentApplyService meterEquipmentApplyService; + + /** + * 状态管理申请列表 + */ + @ApiOperation("状态管理申请列表") + @PostMapping("/stateManageList") + @ResponseBody + public ReturnDTO> applyList(@RequestBody MeterStateManageRequest request) throws Exception{ + Page page = PageFactory.defaultPage(); + return ReturnUtil.success(super.packForBT(stateManageService.stateManageList(page, request))); + } + + /** + * 状态管理申请列表删除 + */ + @ApiOperation("状态管理申请列表删除") + @PostMapping("/deleteStateManageList") + @ResponseBody + public ReturnDTO deleteStateManageList(@RequestBody IdDTO idDto) { + return meterEquipmentApplyService.deleteEquipmentApply(idDto); + } + + /** + * 状态管理申请详细信息 + */ + @ApiOperation("状态管理申请详细信息") + @PostMapping("/selectStateManageInfo") + @ResponseBody + public ReturnDTO selectStateManageInfo(@RequestBody IdDTO idDto) throws Exception{ + return ReturnUtil.success(stateManageService.selectStateManageInfo(idDto)); + } + + /** + * 设状态管理申请新建 + */ + @ApiOperation("设状态管理申请新建") + @PostMapping("/addStateManageInfo") + @ResponseBody + public ReturnDTO addStateManageInfo(@RequestBody @Valid MeterEquipmentApply meterEquipmentApply) throws Exception{ + return meterEquipmentApplyService.addEquipmentApply(meterEquipmentApply); + } +} diff --git a/casic-metering-dao/src/main/java/com/casic/missiles/mapper/meter/MeterEquipmentApplyFileMapper.java b/casic-metering-dao/src/main/java/com/casic/missiles/mapper/meter/MeterEquipmentApplyFileMapper.java new file mode 100644 index 0000000..69c6356 --- /dev/null +++ b/casic-metering-dao/src/main/java/com/casic/missiles/mapper/meter/MeterEquipmentApplyFileMapper.java @@ -0,0 +1,7 @@ +package com.casic.missiles.mapper.meter; + +import com.baomidou.mybatisplus.core.mapper.BaseMapper; +import com.casic.missiles.model.MeterEquipmentApplyFile; + +public interface MeterEquipmentApplyFileMapper extends BaseMapper { +} diff --git a/casic-metering-dao/src/main/java/com/casic/missiles/mapper/meter/MeterStateManageMapper.java b/casic-metering-dao/src/main/java/com/casic/missiles/mapper/meter/MeterStateManageMapper.java new file mode 100644 index 0000000..ad60153 --- /dev/null +++ b/casic-metering-dao/src/main/java/com/casic/missiles/mapper/meter/MeterStateManageMapper.java @@ -0,0 +1,14 @@ +package com.casic.missiles.mapper.meter; + +import com.baomidou.mybatisplus.extension.plugins.pagination.Page; +import com.casic.missiles.dto.meter.MeterStateManageRequest; +import com.casic.missiles.dto.meter.MeterStateManageResponse; +import com.casic.missiles.model.MeterCheckInfo; +import org.apache.ibatis.annotations.Param; + +public interface MeterStateManageMapper { + + Page stateManageList(Page page, @Param("request") MeterStateManageRequest request); + + MeterStateManageResponse selectById(@Param("id") Long id); +} diff --git a/casic-metering-dao/src/main/resources/mapper/meter/MeterCertificateMapper.xml b/casic-metering-dao/src/main/resources/mapper/meter/MeterCertificateMapper.xml index 7f4ff3e..6eb532b 100644 --- a/casic-metering-dao/src/main/resources/mapper/meter/MeterCertificateMapper.xml +++ b/casic-metering-dao/src/main/resources/mapper/meter/MeterCertificateMapper.xml @@ -32,7 +32,7 @@ t1.certificate_name, t1.certificate_date, t1.certificate_company, - t1.valid_date, + DATE_FORMAT(t1.valid_date,'%Y-%m-%d') as valid_date, t1.certificate_status, t1.remark, t2.NAME, @@ -41,10 +41,11 @@ t2.education, t2.technology_job, t2.administration_job, - t2.dept_id + t3.FULL_NAME as dept_id FROM meter_certificate AS t1 LEFT JOIN meter_staff t2 ON t1.staff_id = t2.id + LEFT JOIN sys_dept t3 on t2.dept_id = t3.id and t1.is_del = 0 @@ -62,6 +63,9 @@ and t1.certificate_status = #{request.certificateStatus} + + and DATE_FORMAT(t1.valid_date,'%Y-%m-%d') <= DATE_SUB(curdate(),INTERVAL -30 day) + diff --git a/casic-metering-dao/src/main/resources/mapper/meter/MeterStateManageMapper.xml b/casic-metering-dao/src/main/resources/mapper/meter/MeterStateManageMapper.xml new file mode 100644 index 0000000..4f3e5f1 --- /dev/null +++ b/casic-metering-dao/src/main/resources/mapper/meter/MeterStateManageMapper.xml @@ -0,0 +1,66 @@ + + + + + + + + SELECT + msa.id, + msa.apply_no, + msa.apply_type, + mfa.equipment_no, + mfa.equipment_name, + mfa.model_no, + mfa.manager_state, + msa.approval_status, + sd.SIMPLE_NAME as apply_unit, + su.`NAME` as apply_person, + DATE_FORMAT( msa.time, '%Y-%m-%d %H:%i' ) as time, + msa.process_id, + msa.process_result, + msa.remark + FROM + meter_equipment_apply msa + LEFT JOIN sys_user su ON su.id = msa.apply_person + LEFT JOIN sys_dept sd ON sd.id = msa.apply_unit + LEFT JOIN meter_equipment_apply_equipment meae on msa.id = meae.apply_id + LEFT JOIN meter_fixed_assets mfa on meae.equipment_id = mfa.id + where 1=1 and msa.is_del = 0 + + + + + diff --git a/casic-metering-model/src/main/java/com/casic/missiles/dto/meter/MeterEquipmentApplyRequest.java b/casic-metering-model/src/main/java/com/casic/missiles/dto/meter/MeterEquipmentApplyRequest.java index 0f5db75..2154032 100644 --- a/casic-metering-model/src/main/java/com/casic/missiles/dto/meter/MeterEquipmentApplyRequest.java +++ b/casic-metering-model/src/main/java/com/casic/missiles/dto/meter/MeterEquipmentApplyRequest.java @@ -1,7 +1,6 @@ package com.casic.missiles.dto.meter; -import com.baomidou.mybatisplus.annotation.TableField; import io.swagger.annotations.ApiModel; import io.swagger.annotations.ApiModelProperty; import lombok.Data; @@ -49,20 +48,20 @@ /** * 审批状态 */ - @ApiModelProperty(value = "审批状态", dataType = "String") + @ApiModelProperty(value = "审批状态", dataType = "String", required = true) private String approvalStatus; /** * 处置结果 */ - @ApiModelProperty(value = "处置结果", dataType = "String") + @ApiModelProperty(value = "处置结果", dataType = "String", required = true) private String processResult; /** * 创建人 */ - @ApiModelProperty(value = "创建人", dataType = "String") + @ApiModelProperty(value = "创建人", dataType = "String", required = true) private String createUser; } 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 7e95296..3403124 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 @@ -50,5 +50,11 @@ @ApiModelProperty(value = "证书状态", dataType = "String") private String certificateStatus; + /** + * 证书提醒列表 + */ + @ApiModelProperty(value = "证书提醒列表", dataType = "String") + private String remindType; + } diff --git a/casic-metering-model/src/main/java/com/casic/missiles/dto/meter/MeterStateManageRequest.java b/casic-metering-model/src/main/java/com/casic/missiles/dto/meter/MeterStateManageRequest.java new file mode 100644 index 0000000..492c414 --- /dev/null +++ b/casic-metering-model/src/main/java/com/casic/missiles/dto/meter/MeterStateManageRequest.java @@ -0,0 +1,59 @@ +package com.casic.missiles.dto.meter; + +import io.swagger.annotations.ApiModel; +import io.swagger.annotations.ApiModelProperty; +import lombok.Data; + +/** + * 测量设备-状态管理申请请求实体 + * @author xiezhuangz + * @version 1.0 + * @date 2022/12/19 9:43 + */ + +@ApiModel +@Data +public class MeterStateManageRequest { + + /** + * 申请编号 + */ + @ApiModelProperty(value = "申请编号", dataType = "String") + private String applyNo; + + /** + * 设备编号 + */ + @ApiModelProperty(value = "(状态管理)设备编号", dataType = "String") + private String equipmentNo; + + /** + * 设备名称 + */ + @ApiModelProperty(value = "设备名称", dataType = "String") + private String equipmentName; + + /** + * 申请单位 + */ + @ApiModelProperty(value = "申请单位", dataType = "String") + private String applyUnit; + + /** + * 申请状态 + */ + @ApiModelProperty(value = "申请状态", dataType = "String") + private String applyStatus; + + /** + * 审批状态 + */ + @ApiModelProperty(value = "审批状态", dataType = "String", required = true) + private String approvalStatus; + + /** + * 创建人 + */ + @ApiModelProperty(value = "创建人", dataType = "String", required = true) + private String createUser; +} diff --git a/casic-metering-model/src/main/java/com/casic/missiles/dto/meter/MeterStateManageResponse.java b/casic-metering-model/src/main/java/com/casic/missiles/dto/meter/MeterStateManageResponse.java new file mode 100644 index 0000000..4d9e6e8 --- /dev/null +++ b/casic-metering-model/src/main/java/com/casic/missiles/dto/meter/MeterStateManageResponse.java @@ -0,0 +1,166 @@ +package com.casic.missiles.dto.meter; + +import com.alibaba.excel.annotation.ExcelProperty; +import com.baomidou.mybatisplus.annotation.TableField; +import com.baomidou.mybatisplus.annotation.TableId; +import com.casic.missiles.annotation.DictCodeField; +import com.casic.missiles.constants.MeterDictCode; +import com.casic.missiles.model.MeterEquipmentApplyFile; +import io.swagger.annotations.ApiModel; +import io.swagger.annotations.ApiModelProperty; +import lombok.Data; + +import javax.validation.constraints.NotBlank; +import java.io.Serializable; +import java.util.List; + +@ApiModel +@Data +public class MeterStateManageResponse implements Serializable { + + private static final long serialVersionUID = 8705579720027710541L; + /** + * 主键 + */ + @TableId("id") + @ApiModelProperty(value = "主键", dataType = "Long") + private Long id; + + /** + * 申请编号 + */ + @ExcelProperty(value = "申请编号",order = 0) + @ApiModelProperty(value = "申请编号", dataType = "String") + private String applyNo; + + /** + * 申请类型-字典code + */ + @NotBlank(message = "申请类型不能为空") + @ApiModelProperty(value = "申请类型-字典code", dataType = "String") + @DictCodeField(message = "申请类型不合法", cacheName = MeterDictCode.STANDARD_APPLY_TYPE) + private String applyType; + + /** + * 审批状态-字典code + */ + @DictCodeField(message = "审批状态不合法", cacheName = MeterDictCode.APPROVAL_STATUS) + @ApiModelProperty(value = "审批状态-字典code", dataType = "String") + private String approvalStatus; + + /** + * 审批状态名称 + */ + @ApiModelProperty(value = "审批状态名称", dataType = "String") + private String approvalStatusName; + + /** + * 申请类型名称 + */ + @ApiModelProperty(value = "申请类型名称", dataType = "String") + private String applyTypeName; + + /** + * 设备编号 + */ + @ApiModelProperty(value = "(状态管理)设备编号", dataType = "String") + private String equipmentNo; + + /** + * 设备名称 + */ + @ApiModelProperty(value = "设备名称", dataType = "String") + private String equipmentName; + + /** + * 型号 + */ + @ApiModelProperty(value = "型号", dataType = "String") + private String modelNo; + + /** + * 管理状态-字典code + */ + @ApiModelProperty(value = "管理状态", dataType = "String") + @DictCodeField(message = "管理状态不合法", cacheName = MeterDictCode.MANAGER_STATE) + private String managerState; + /** + * 管理状态名称 + */ + @ApiModelProperty(value = "管理状态名称", dataType = "String") + private String managerStateName; + + /** + * 申请单位 + */ + @ApiModelProperty(value = "申请单位", dataType = "String") + private String applyUnit; + + /** + * 申请人 + */ + @ApiModelProperty(value = "申请人", dataType = "String") + private String applyPerson; + + /** + * 申请时间 + */ + @ApiModelProperty(value = "申请时间", dataType = "String") + private String time; + + /** + * 流程实例ID + */ + @ApiModelProperty(value = "流程实例ID", dataType = "String") + private String processId; + + /** + * 处理结果(设备领用、借用处理结果) + */ + @ApiModelProperty(value = "处理结果(设备领用、借用处理结果)", dataType = "String") + private String processResult; + + /** + * 版本号 + */ + @ApiModelProperty(value = "版本号", dataType = "String") + private String version; + + /** + * 备注 + */ + @ApiModelProperty(value = "备注", dataType = "String") + private String remark; + + /** + * 删除标记 + */ + @ApiModelProperty(value = "删除标记", dataType = "Integer") + private Integer isDel; + + /** + * 创建人 + */ + @ApiModelProperty(value = "创建人", dataType = "String") + private String createUser; + + /** + * 创建时间 + */ + @ApiModelProperty(value = "创建时间", dataType = "String") + private String createTime; + + /** + * 更新时间 + */ + @ApiModelProperty(value = "更新时间", dataType = "String") + private String updateTime; + + /** + * 附件 + */ + @TableField(exist = false) + @ApiModelProperty(value = "附件列表", dataType = "List") + private List fileList; + +} diff --git a/casic-metering-model/src/main/java/com/casic/missiles/dto/meter/StandardEquipmentApplyRequest.java b/casic-metering-model/src/main/java/com/casic/missiles/dto/meter/StandardEquipmentApplyRequest.java index 7325905..19fab62 100644 --- a/casic-metering-model/src/main/java/com/casic/missiles/dto/meter/StandardEquipmentApplyRequest.java +++ b/casic-metering-model/src/main/java/com/casic/missiles/dto/meter/StandardEquipmentApplyRequest.java @@ -51,6 +51,12 @@ * 申请状态 */ @ApiModelProperty(value = "申请状态", dataType = "String") + private String applyStatus; + + /** + * 审批状态 + */ + @ApiModelProperty(value = "审批状态", dataType = "String", required = true) private String approvalStatus; /** diff --git a/casic-metering-model/src/main/java/com/casic/missiles/model/MeterCheckInfoFile.java b/casic-metering-model/src/main/java/com/casic/missiles/model/MeterCheckInfoFile.java index 3d73308..29047eb 100644 --- a/casic-metering-model/src/main/java/com/casic/missiles/model/MeterCheckInfoFile.java +++ b/casic-metering-model/src/main/java/com/casic/missiles/model/MeterCheckInfoFile.java @@ -1,7 +1,6 @@ package com.casic.missiles.model; -import com.alibaba.excel.annotation.ExcelProperty; import com.baomidou.mybatisplus.annotation.TableField; import com.baomidou.mybatisplus.annotation.TableId; import com.baomidou.mybatisplus.annotation.TableName; diff --git a/casic-metering-model/src/main/java/com/casic/missiles/model/MeterEquipmentApply.java b/casic-metering-model/src/main/java/com/casic/missiles/model/MeterEquipmentApply.java index 2d53b96..277cb9b 100644 --- a/casic-metering-model/src/main/java/com/casic/missiles/model/MeterEquipmentApply.java +++ b/casic-metering-model/src/main/java/com/casic/missiles/model/MeterEquipmentApply.java @@ -191,10 +191,17 @@ private String updateTime; /** - * 借用设备列表 + * 设备列表 */ @TableField(exist = false) - @ApiModelProperty(value = "借用设备列表", dataType = "List") + @ApiModelProperty(value = "设备列表", dataType = "List") private List equipmentList; + /** + * 附件列表 + */ + @TableField(exist = false) + @ApiModelProperty(value = "附件列表", dataType = "List") + private List fileList; + } diff --git a/casic-metering-model/src/main/java/com/casic/missiles/model/MeterEquipmentApplyFile.java b/casic-metering-model/src/main/java/com/casic/missiles/model/MeterEquipmentApplyFile.java new file mode 100644 index 0000000..be8ab2c --- /dev/null +++ b/casic-metering-model/src/main/java/com/casic/missiles/model/MeterEquipmentApplyFile.java @@ -0,0 +1,77 @@ +package com.casic.missiles.model; + +import com.baomidou.mybatisplus.annotation.TableField; +import com.baomidou.mybatisplus.annotation.TableId; +import com.baomidou.mybatisplus.annotation.TableName; +import io.swagger.annotations.ApiModel; +import io.swagger.annotations.ApiModelProperty; +import lombok.Data; + +import java.io.Serializable; + +@Data +@ApiModel +@TableName("meter_equipment_apply_file") +public class MeterEquipmentApplyFile implements Serializable { + + private static final long serialVersionUID = -8926996367574659071L; + + /** + * 主键 + */ + @TableId("id") + @ApiModelProperty(value = "主键", dataType = "Long") + private Long id; + + /** + * 申请id + */ + @TableField("apply_id") + @ApiModelProperty(value = "申请id", dataType = "Long") + private Long applyId; + + /** + * 文件名 + */ + @ApiModelProperty(value = "文件名", dataType = "String", required = true) + @TableField("file_name") + private String fileName; + + /** + * minio存储文件名 + */ + @TableField("minio_file_name") + @ApiModelProperty(value = "minio存储文件名", dataType = "String", required = true) + private String minioFileName; + + /** + * 备注 + */ + @TableField("remark") + @ApiModelProperty(value = "备注", dataType = "String", required = false) + private String remark; + + /** + * 删除标记 + */ + @TableField("is_del") + private Integer isDel; + + /** + * 创建人 + */ + @TableField("create_user") + private Long createUser; + + /** + * 创建时间 + */ + @TableField("create_time") + private String createTime; + + /** + * 更新时间 + */ + @TableField("update_time") + private String updateTime; +} diff --git a/casic-metering-service/src/main/java/com/casic/missiles/service/Impl/meter/MeterCertificateServiceImpl.java b/casic-metering-service/src/main/java/com/casic/missiles/service/Impl/meter/MeterCertificateServiceImpl.java index 2f4ce48..e46a7b2 100644 --- a/casic-metering-service/src/main/java/com/casic/missiles/service/Impl/meter/MeterCertificateServiceImpl.java +++ b/casic-metering-service/src/main/java/com/casic/missiles/service/Impl/meter/MeterCertificateServiceImpl.java @@ -1,6 +1,7 @@ package com.casic.missiles.service.Impl.meter; +import com.alibaba.excel.util.DateUtils; import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper; import com.baomidou.mybatisplus.core.conditions.update.UpdateWrapper; import com.baomidou.mybatisplus.core.toolkit.IdWorker; @@ -32,6 +33,7 @@ import javax.annotation.Resource; import javax.servlet.http.HttpServletResponse; import java.util.ArrayList; +import java.util.Date; import java.util.List; import java.util.Map; import java.util.concurrent.atomic.AtomicBoolean; @@ -229,18 +231,17 @@ } } private List supplementList(List meterCertificateDtoList){ + String format = DateUtils.format(new Date(),"yyyy-MM-dd"); for (MeterCertificateDto meterCertificateDto : meterCertificateDtoList) { meterCertificateDto.setTechnologyJob(dictService.getDictNameByCode(MeterDictEnum.TECHNOLOGY_JOB,meterCertificateDto.getTechnologyJob())); meterCertificateDto.setAdministrationJob(dictService.getDictNameByCode(MeterDictEnum.ADMINISTRATION_JOB,meterCertificateDto.getAdministrationJob())); meterCertificateDto.setEducation(dictService.getDictNameByCode(MeterDictEnum.EDUCATION,meterCertificateDto.getEducation())); - meterCertificateDto.setDeptId(deptMapper.selectById(meterCertificateDto.getDeptId()).getFullName()); + if(format.compareTo(meterCertificateDto.getValidDate()) > 0) { + meterCertificateDto.setCertificateStatus("1"); + }else{ + meterCertificateDto.setCertificateStatus("0"); + } } -// meterCertificateDtoList.forEach(meterCertificateDto->{ -// meterCertificateDto.setTechnologyJob(dictService.getDictNameByCode(MeterDictEnum.TECHNOLOGY_JOB,meterCertificateDto.getTechnologyJob())); -// meterCertificateDto.setAdministrationJob(dictService.getDictNameByCode(MeterDictEnum.ADMINISTRATION_JOB,meterCertificateDto.getAdministrationJob())); -// meterCertificateDto.setEducation(dictService.getDictNameByCode(MeterDictEnum.EDUCATION,meterCertificateDto.getEducation())); -// meterCertificateDto.setDeptId(deptMapper.selectById(meterCertificateDto.getDeptId()).getFullName()); -// }); return meterCertificateDtoList; } } diff --git a/casic-metering-service/src/main/java/com/casic/missiles/service/Impl/meter/MeterEquipmentApplyFileServiceImpl.java b/casic-metering-service/src/main/java/com/casic/missiles/service/Impl/meter/MeterEquipmentApplyFileServiceImpl.java new file mode 100644 index 0000000..ab41002 --- /dev/null +++ b/casic-metering-service/src/main/java/com/casic/missiles/service/Impl/meter/MeterEquipmentApplyFileServiceImpl.java @@ -0,0 +1,11 @@ +package com.casic.missiles.service.Impl.meter; + +import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl; +import com.casic.missiles.mapper.meter.MeterEquipmentApplyFileMapper; +import com.casic.missiles.model.MeterEquipmentApplyFile; +import com.casic.missiles.service.meter.IMeterEquipmentApplyFileService; +import org.springframework.stereotype.Service; + +@Service("IMeterEquipmentApplyFileService") +public class MeterEquipmentApplyFileServiceImpl extends ServiceImpl implements IMeterEquipmentApplyFileService { +} diff --git a/casic-metering-service/src/main/java/com/casic/missiles/service/Impl/meter/MeterEquipmentApplyServiceImpl.java b/casic-metering-service/src/main/java/com/casic/missiles/service/Impl/meter/MeterEquipmentApplyServiceImpl.java index c67305a..18976c1 100644 --- a/casic-metering-service/src/main/java/com/casic/missiles/service/Impl/meter/MeterEquipmentApplyServiceImpl.java +++ b/casic-metering-service/src/main/java/com/casic/missiles/service/Impl/meter/MeterEquipmentApplyServiceImpl.java @@ -1,5 +1,6 @@ package com.casic.missiles.service.Impl.meter; +import cn.hutool.core.util.ObjectUtil; import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper; import com.baomidou.mybatisplus.core.conditions.update.UpdateWrapper; import com.baomidou.mybatisplus.extension.plugins.pagination.Page; @@ -13,10 +14,7 @@ import com.casic.missiles.enums.EquipmentApplyEnum; import com.casic.missiles.mapper.meter.MeterEquipmentApplyEquipmentMapper; import com.casic.missiles.mapper.meter.MeterEquipmentApplyMapper; -import com.casic.missiles.model.MeterEquipmentApply; -import com.casic.missiles.model.MeterEquipmentApplyEquipment; -import com.casic.missiles.model.MeterStandardApply; -import com.casic.missiles.model.MeterStandardApplyEquipment; +import com.casic.missiles.model.*; import com.casic.missiles.service.meter.IMeterEquipmentApplyEquipmentService; import com.casic.missiles.service.meter.MeterEquipmentApplyService; import com.casic.missiles.utils.DictCodeUtils; @@ -71,8 +69,14 @@ for (MeterEquipmentApplyEquipment applyEquipment : meterEquipmentApply.getEquipmentList()) { applyEquipment.setApplyId(id.toString()); } - boolean saveBatchFlg = equipmentService.saveBatch(meterEquipmentApply.getEquipmentList()); - if(saveBatchFlg){ + boolean equipmentSaveBatchFlg = equipmentService.saveBatch(meterEquipmentApply.getEquipmentList()); + boolean saveBatchFlg = true; + if(ObjectUtil.isNotEmpty(meterEquipmentApply.getFileList()) && meterEquipmentApply.getFileList().size()!=0){ + for (MeterEquipmentApplyFile file : meterEquipmentApply.getFileList()) { + file.setApplyId(id); + } + } + if(equipmentSaveBatchFlg && saveBatchFlg){ return ReturnUtil.success(); }else { return ReturnUtil.failed("新增失败"); diff --git a/casic-metering-api/src/main/java/com/casic/missiles/controller/meter/MeterStateManageController.java b/casic-metering-api/src/main/java/com/casic/missiles/controller/meter/MeterStateManageController.java new file mode 100644 index 0000000..a276ff5 --- /dev/null +++ b/casic-metering-api/src/main/java/com/casic/missiles/controller/meter/MeterStateManageController.java @@ -0,0 +1,85 @@ +package com.casic.missiles.controller.meter; + +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; +import com.casic.missiles.dto.meter.MeterStateManageRequest; +import com.casic.missiles.dto.meter.MeterStateManageResponse; +import com.casic.missiles.model.MeterCheckInfo; +import com.casic.missiles.model.MeterEquipmentApply; +import com.casic.missiles.service.meter.IMeterStateManageService; +import com.casic.missiles.service.meter.MeterEquipmentApplyService; +import io.swagger.annotations.Api; +import io.swagger.annotations.ApiOperation; +import lombok.extern.slf4j.Slf4j; +import org.springframework.web.bind.annotation.*; + +import javax.annotation.Resource; +import javax.validation.Valid; + +/** + **

+ * * 状态管理列表 + * *

+ * + * @author xiezhuangz + * @version 1.0 + * @date 2022/12/27 + */ +@Api(tags = "状态管理相关接口") +@Slf4j +@RestController +@RequestMapping("meter/stateManage") +public class MeterStateManageController extends ExportController { + + @Resource + private IMeterStateManageService stateManageService; + + @Resource + private MeterEquipmentApplyService meterEquipmentApplyService; + + /** + * 状态管理申请列表 + */ + @ApiOperation("状态管理申请列表") + @PostMapping("/stateManageList") + @ResponseBody + public ReturnDTO> applyList(@RequestBody MeterStateManageRequest request) throws Exception{ + Page page = PageFactory.defaultPage(); + return ReturnUtil.success(super.packForBT(stateManageService.stateManageList(page, request))); + } + + /** + * 状态管理申请列表删除 + */ + @ApiOperation("状态管理申请列表删除") + @PostMapping("/deleteStateManageList") + @ResponseBody + public ReturnDTO deleteStateManageList(@RequestBody IdDTO idDto) { + return meterEquipmentApplyService.deleteEquipmentApply(idDto); + } + + /** + * 状态管理申请详细信息 + */ + @ApiOperation("状态管理申请详细信息") + @PostMapping("/selectStateManageInfo") + @ResponseBody + public ReturnDTO selectStateManageInfo(@RequestBody IdDTO idDto) throws Exception{ + return ReturnUtil.success(stateManageService.selectStateManageInfo(idDto)); + } + + /** + * 设状态管理申请新建 + */ + @ApiOperation("设状态管理申请新建") + @PostMapping("/addStateManageInfo") + @ResponseBody + public ReturnDTO addStateManageInfo(@RequestBody @Valid MeterEquipmentApply meterEquipmentApply) throws Exception{ + return meterEquipmentApplyService.addEquipmentApply(meterEquipmentApply); + } +} diff --git a/casic-metering-dao/src/main/java/com/casic/missiles/mapper/meter/MeterEquipmentApplyFileMapper.java b/casic-metering-dao/src/main/java/com/casic/missiles/mapper/meter/MeterEquipmentApplyFileMapper.java new file mode 100644 index 0000000..69c6356 --- /dev/null +++ b/casic-metering-dao/src/main/java/com/casic/missiles/mapper/meter/MeterEquipmentApplyFileMapper.java @@ -0,0 +1,7 @@ +package com.casic.missiles.mapper.meter; + +import com.baomidou.mybatisplus.core.mapper.BaseMapper; +import com.casic.missiles.model.MeterEquipmentApplyFile; + +public interface MeterEquipmentApplyFileMapper extends BaseMapper { +} diff --git a/casic-metering-dao/src/main/java/com/casic/missiles/mapper/meter/MeterStateManageMapper.java b/casic-metering-dao/src/main/java/com/casic/missiles/mapper/meter/MeterStateManageMapper.java new file mode 100644 index 0000000..ad60153 --- /dev/null +++ b/casic-metering-dao/src/main/java/com/casic/missiles/mapper/meter/MeterStateManageMapper.java @@ -0,0 +1,14 @@ +package com.casic.missiles.mapper.meter; + +import com.baomidou.mybatisplus.extension.plugins.pagination.Page; +import com.casic.missiles.dto.meter.MeterStateManageRequest; +import com.casic.missiles.dto.meter.MeterStateManageResponse; +import com.casic.missiles.model.MeterCheckInfo; +import org.apache.ibatis.annotations.Param; + +public interface MeterStateManageMapper { + + Page stateManageList(Page page, @Param("request") MeterStateManageRequest request); + + MeterStateManageResponse selectById(@Param("id") Long id); +} diff --git a/casic-metering-dao/src/main/resources/mapper/meter/MeterCertificateMapper.xml b/casic-metering-dao/src/main/resources/mapper/meter/MeterCertificateMapper.xml index 7f4ff3e..6eb532b 100644 --- a/casic-metering-dao/src/main/resources/mapper/meter/MeterCertificateMapper.xml +++ b/casic-metering-dao/src/main/resources/mapper/meter/MeterCertificateMapper.xml @@ -32,7 +32,7 @@ t1.certificate_name, t1.certificate_date, t1.certificate_company, - t1.valid_date, + DATE_FORMAT(t1.valid_date,'%Y-%m-%d') as valid_date, t1.certificate_status, t1.remark, t2.NAME, @@ -41,10 +41,11 @@ t2.education, t2.technology_job, t2.administration_job, - t2.dept_id + t3.FULL_NAME as dept_id FROM meter_certificate AS t1 LEFT JOIN meter_staff t2 ON t1.staff_id = t2.id + LEFT JOIN sys_dept t3 on t2.dept_id = t3.id and t1.is_del = 0 @@ -62,6 +63,9 @@ and t1.certificate_status = #{request.certificateStatus} + + and DATE_FORMAT(t1.valid_date,'%Y-%m-%d') <= DATE_SUB(curdate(),INTERVAL -30 day) + diff --git a/casic-metering-dao/src/main/resources/mapper/meter/MeterStateManageMapper.xml b/casic-metering-dao/src/main/resources/mapper/meter/MeterStateManageMapper.xml new file mode 100644 index 0000000..4f3e5f1 --- /dev/null +++ b/casic-metering-dao/src/main/resources/mapper/meter/MeterStateManageMapper.xml @@ -0,0 +1,66 @@ + + + + + + + + SELECT + msa.id, + msa.apply_no, + msa.apply_type, + mfa.equipment_no, + mfa.equipment_name, + mfa.model_no, + mfa.manager_state, + msa.approval_status, + sd.SIMPLE_NAME as apply_unit, + su.`NAME` as apply_person, + DATE_FORMAT( msa.time, '%Y-%m-%d %H:%i' ) as time, + msa.process_id, + msa.process_result, + msa.remark + FROM + meter_equipment_apply msa + LEFT JOIN sys_user su ON su.id = msa.apply_person + LEFT JOIN sys_dept sd ON sd.id = msa.apply_unit + LEFT JOIN meter_equipment_apply_equipment meae on msa.id = meae.apply_id + LEFT JOIN meter_fixed_assets mfa on meae.equipment_id = mfa.id + where 1=1 and msa.is_del = 0 + + + + + diff --git a/casic-metering-model/src/main/java/com/casic/missiles/dto/meter/MeterEquipmentApplyRequest.java b/casic-metering-model/src/main/java/com/casic/missiles/dto/meter/MeterEquipmentApplyRequest.java index 0f5db75..2154032 100644 --- a/casic-metering-model/src/main/java/com/casic/missiles/dto/meter/MeterEquipmentApplyRequest.java +++ b/casic-metering-model/src/main/java/com/casic/missiles/dto/meter/MeterEquipmentApplyRequest.java @@ -1,7 +1,6 @@ package com.casic.missiles.dto.meter; -import com.baomidou.mybatisplus.annotation.TableField; import io.swagger.annotations.ApiModel; import io.swagger.annotations.ApiModelProperty; import lombok.Data; @@ -49,20 +48,20 @@ /** * 审批状态 */ - @ApiModelProperty(value = "审批状态", dataType = "String") + @ApiModelProperty(value = "审批状态", dataType = "String", required = true) private String approvalStatus; /** * 处置结果 */ - @ApiModelProperty(value = "处置结果", dataType = "String") + @ApiModelProperty(value = "处置结果", dataType = "String", required = true) private String processResult; /** * 创建人 */ - @ApiModelProperty(value = "创建人", dataType = "String") + @ApiModelProperty(value = "创建人", dataType = "String", required = true) private String createUser; } 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 7e95296..3403124 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 @@ -50,5 +50,11 @@ @ApiModelProperty(value = "证书状态", dataType = "String") private String certificateStatus; + /** + * 证书提醒列表 + */ + @ApiModelProperty(value = "证书提醒列表", dataType = "String") + private String remindType; + } diff --git a/casic-metering-model/src/main/java/com/casic/missiles/dto/meter/MeterStateManageRequest.java b/casic-metering-model/src/main/java/com/casic/missiles/dto/meter/MeterStateManageRequest.java new file mode 100644 index 0000000..492c414 --- /dev/null +++ b/casic-metering-model/src/main/java/com/casic/missiles/dto/meter/MeterStateManageRequest.java @@ -0,0 +1,59 @@ +package com.casic.missiles.dto.meter; + +import io.swagger.annotations.ApiModel; +import io.swagger.annotations.ApiModelProperty; +import lombok.Data; + +/** + * 测量设备-状态管理申请请求实体 + * @author xiezhuangz + * @version 1.0 + * @date 2022/12/19 9:43 + */ + +@ApiModel +@Data +public class MeterStateManageRequest { + + /** + * 申请编号 + */ + @ApiModelProperty(value = "申请编号", dataType = "String") + private String applyNo; + + /** + * 设备编号 + */ + @ApiModelProperty(value = "(状态管理)设备编号", dataType = "String") + private String equipmentNo; + + /** + * 设备名称 + */ + @ApiModelProperty(value = "设备名称", dataType = "String") + private String equipmentName; + + /** + * 申请单位 + */ + @ApiModelProperty(value = "申请单位", dataType = "String") + private String applyUnit; + + /** + * 申请状态 + */ + @ApiModelProperty(value = "申请状态", dataType = "String") + private String applyStatus; + + /** + * 审批状态 + */ + @ApiModelProperty(value = "审批状态", dataType = "String", required = true) + private String approvalStatus; + + /** + * 创建人 + */ + @ApiModelProperty(value = "创建人", dataType = "String", required = true) + private String createUser; +} diff --git a/casic-metering-model/src/main/java/com/casic/missiles/dto/meter/MeterStateManageResponse.java b/casic-metering-model/src/main/java/com/casic/missiles/dto/meter/MeterStateManageResponse.java new file mode 100644 index 0000000..4d9e6e8 --- /dev/null +++ b/casic-metering-model/src/main/java/com/casic/missiles/dto/meter/MeterStateManageResponse.java @@ -0,0 +1,166 @@ +package com.casic.missiles.dto.meter; + +import com.alibaba.excel.annotation.ExcelProperty; +import com.baomidou.mybatisplus.annotation.TableField; +import com.baomidou.mybatisplus.annotation.TableId; +import com.casic.missiles.annotation.DictCodeField; +import com.casic.missiles.constants.MeterDictCode; +import com.casic.missiles.model.MeterEquipmentApplyFile; +import io.swagger.annotations.ApiModel; +import io.swagger.annotations.ApiModelProperty; +import lombok.Data; + +import javax.validation.constraints.NotBlank; +import java.io.Serializable; +import java.util.List; + +@ApiModel +@Data +public class MeterStateManageResponse implements Serializable { + + private static final long serialVersionUID = 8705579720027710541L; + /** + * 主键 + */ + @TableId("id") + @ApiModelProperty(value = "主键", dataType = "Long") + private Long id; + + /** + * 申请编号 + */ + @ExcelProperty(value = "申请编号",order = 0) + @ApiModelProperty(value = "申请编号", dataType = "String") + private String applyNo; + + /** + * 申请类型-字典code + */ + @NotBlank(message = "申请类型不能为空") + @ApiModelProperty(value = "申请类型-字典code", dataType = "String") + @DictCodeField(message = "申请类型不合法", cacheName = MeterDictCode.STANDARD_APPLY_TYPE) + private String applyType; + + /** + * 审批状态-字典code + */ + @DictCodeField(message = "审批状态不合法", cacheName = MeterDictCode.APPROVAL_STATUS) + @ApiModelProperty(value = "审批状态-字典code", dataType = "String") + private String approvalStatus; + + /** + * 审批状态名称 + */ + @ApiModelProperty(value = "审批状态名称", dataType = "String") + private String approvalStatusName; + + /** + * 申请类型名称 + */ + @ApiModelProperty(value = "申请类型名称", dataType = "String") + private String applyTypeName; + + /** + * 设备编号 + */ + @ApiModelProperty(value = "(状态管理)设备编号", dataType = "String") + private String equipmentNo; + + /** + * 设备名称 + */ + @ApiModelProperty(value = "设备名称", dataType = "String") + private String equipmentName; + + /** + * 型号 + */ + @ApiModelProperty(value = "型号", dataType = "String") + private String modelNo; + + /** + * 管理状态-字典code + */ + @ApiModelProperty(value = "管理状态", dataType = "String") + @DictCodeField(message = "管理状态不合法", cacheName = MeterDictCode.MANAGER_STATE) + private String managerState; + /** + * 管理状态名称 + */ + @ApiModelProperty(value = "管理状态名称", dataType = "String") + private String managerStateName; + + /** + * 申请单位 + */ + @ApiModelProperty(value = "申请单位", dataType = "String") + private String applyUnit; + + /** + * 申请人 + */ + @ApiModelProperty(value = "申请人", dataType = "String") + private String applyPerson; + + /** + * 申请时间 + */ + @ApiModelProperty(value = "申请时间", dataType = "String") + private String time; + + /** + * 流程实例ID + */ + @ApiModelProperty(value = "流程实例ID", dataType = "String") + private String processId; + + /** + * 处理结果(设备领用、借用处理结果) + */ + @ApiModelProperty(value = "处理结果(设备领用、借用处理结果)", dataType = "String") + private String processResult; + + /** + * 版本号 + */ + @ApiModelProperty(value = "版本号", dataType = "String") + private String version; + + /** + * 备注 + */ + @ApiModelProperty(value = "备注", dataType = "String") + private String remark; + + /** + * 删除标记 + */ + @ApiModelProperty(value = "删除标记", dataType = "Integer") + private Integer isDel; + + /** + * 创建人 + */ + @ApiModelProperty(value = "创建人", dataType = "String") + private String createUser; + + /** + * 创建时间 + */ + @ApiModelProperty(value = "创建时间", dataType = "String") + private String createTime; + + /** + * 更新时间 + */ + @ApiModelProperty(value = "更新时间", dataType = "String") + private String updateTime; + + /** + * 附件 + */ + @TableField(exist = false) + @ApiModelProperty(value = "附件列表", dataType = "List") + private List fileList; + +} diff --git a/casic-metering-model/src/main/java/com/casic/missiles/dto/meter/StandardEquipmentApplyRequest.java b/casic-metering-model/src/main/java/com/casic/missiles/dto/meter/StandardEquipmentApplyRequest.java index 7325905..19fab62 100644 --- a/casic-metering-model/src/main/java/com/casic/missiles/dto/meter/StandardEquipmentApplyRequest.java +++ b/casic-metering-model/src/main/java/com/casic/missiles/dto/meter/StandardEquipmentApplyRequest.java @@ -51,6 +51,12 @@ * 申请状态 */ @ApiModelProperty(value = "申请状态", dataType = "String") + private String applyStatus; + + /** + * 审批状态 + */ + @ApiModelProperty(value = "审批状态", dataType = "String", required = true) private String approvalStatus; /** diff --git a/casic-metering-model/src/main/java/com/casic/missiles/model/MeterCheckInfoFile.java b/casic-metering-model/src/main/java/com/casic/missiles/model/MeterCheckInfoFile.java index 3d73308..29047eb 100644 --- a/casic-metering-model/src/main/java/com/casic/missiles/model/MeterCheckInfoFile.java +++ b/casic-metering-model/src/main/java/com/casic/missiles/model/MeterCheckInfoFile.java @@ -1,7 +1,6 @@ package com.casic.missiles.model; -import com.alibaba.excel.annotation.ExcelProperty; import com.baomidou.mybatisplus.annotation.TableField; import com.baomidou.mybatisplus.annotation.TableId; import com.baomidou.mybatisplus.annotation.TableName; diff --git a/casic-metering-model/src/main/java/com/casic/missiles/model/MeterEquipmentApply.java b/casic-metering-model/src/main/java/com/casic/missiles/model/MeterEquipmentApply.java index 2d53b96..277cb9b 100644 --- a/casic-metering-model/src/main/java/com/casic/missiles/model/MeterEquipmentApply.java +++ b/casic-metering-model/src/main/java/com/casic/missiles/model/MeterEquipmentApply.java @@ -191,10 +191,17 @@ private String updateTime; /** - * 借用设备列表 + * 设备列表 */ @TableField(exist = false) - @ApiModelProperty(value = "借用设备列表", dataType = "List") + @ApiModelProperty(value = "设备列表", dataType = "List") private List equipmentList; + /** + * 附件列表 + */ + @TableField(exist = false) + @ApiModelProperty(value = "附件列表", dataType = "List") + private List fileList; + } diff --git a/casic-metering-model/src/main/java/com/casic/missiles/model/MeterEquipmentApplyFile.java b/casic-metering-model/src/main/java/com/casic/missiles/model/MeterEquipmentApplyFile.java new file mode 100644 index 0000000..be8ab2c --- /dev/null +++ b/casic-metering-model/src/main/java/com/casic/missiles/model/MeterEquipmentApplyFile.java @@ -0,0 +1,77 @@ +package com.casic.missiles.model; + +import com.baomidou.mybatisplus.annotation.TableField; +import com.baomidou.mybatisplus.annotation.TableId; +import com.baomidou.mybatisplus.annotation.TableName; +import io.swagger.annotations.ApiModel; +import io.swagger.annotations.ApiModelProperty; +import lombok.Data; + +import java.io.Serializable; + +@Data +@ApiModel +@TableName("meter_equipment_apply_file") +public class MeterEquipmentApplyFile implements Serializable { + + private static final long serialVersionUID = -8926996367574659071L; + + /** + * 主键 + */ + @TableId("id") + @ApiModelProperty(value = "主键", dataType = "Long") + private Long id; + + /** + * 申请id + */ + @TableField("apply_id") + @ApiModelProperty(value = "申请id", dataType = "Long") + private Long applyId; + + /** + * 文件名 + */ + @ApiModelProperty(value = "文件名", dataType = "String", required = true) + @TableField("file_name") + private String fileName; + + /** + * minio存储文件名 + */ + @TableField("minio_file_name") + @ApiModelProperty(value = "minio存储文件名", dataType = "String", required = true) + private String minioFileName; + + /** + * 备注 + */ + @TableField("remark") + @ApiModelProperty(value = "备注", dataType = "String", required = false) + private String remark; + + /** + * 删除标记 + */ + @TableField("is_del") + private Integer isDel; + + /** + * 创建人 + */ + @TableField("create_user") + private Long createUser; + + /** + * 创建时间 + */ + @TableField("create_time") + private String createTime; + + /** + * 更新时间 + */ + @TableField("update_time") + private String updateTime; +} diff --git a/casic-metering-service/src/main/java/com/casic/missiles/service/Impl/meter/MeterCertificateServiceImpl.java b/casic-metering-service/src/main/java/com/casic/missiles/service/Impl/meter/MeterCertificateServiceImpl.java index 2f4ce48..e46a7b2 100644 --- a/casic-metering-service/src/main/java/com/casic/missiles/service/Impl/meter/MeterCertificateServiceImpl.java +++ b/casic-metering-service/src/main/java/com/casic/missiles/service/Impl/meter/MeterCertificateServiceImpl.java @@ -1,6 +1,7 @@ package com.casic.missiles.service.Impl.meter; +import com.alibaba.excel.util.DateUtils; import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper; import com.baomidou.mybatisplus.core.conditions.update.UpdateWrapper; import com.baomidou.mybatisplus.core.toolkit.IdWorker; @@ -32,6 +33,7 @@ import javax.annotation.Resource; import javax.servlet.http.HttpServletResponse; import java.util.ArrayList; +import java.util.Date; import java.util.List; import java.util.Map; import java.util.concurrent.atomic.AtomicBoolean; @@ -229,18 +231,17 @@ } } private List supplementList(List meterCertificateDtoList){ + String format = DateUtils.format(new Date(),"yyyy-MM-dd"); for (MeterCertificateDto meterCertificateDto : meterCertificateDtoList) { meterCertificateDto.setTechnologyJob(dictService.getDictNameByCode(MeterDictEnum.TECHNOLOGY_JOB,meterCertificateDto.getTechnologyJob())); meterCertificateDto.setAdministrationJob(dictService.getDictNameByCode(MeterDictEnum.ADMINISTRATION_JOB,meterCertificateDto.getAdministrationJob())); meterCertificateDto.setEducation(dictService.getDictNameByCode(MeterDictEnum.EDUCATION,meterCertificateDto.getEducation())); - meterCertificateDto.setDeptId(deptMapper.selectById(meterCertificateDto.getDeptId()).getFullName()); + if(format.compareTo(meterCertificateDto.getValidDate()) > 0) { + meterCertificateDto.setCertificateStatus("1"); + }else{ + meterCertificateDto.setCertificateStatus("0"); + } } -// meterCertificateDtoList.forEach(meterCertificateDto->{ -// meterCertificateDto.setTechnologyJob(dictService.getDictNameByCode(MeterDictEnum.TECHNOLOGY_JOB,meterCertificateDto.getTechnologyJob())); -// meterCertificateDto.setAdministrationJob(dictService.getDictNameByCode(MeterDictEnum.ADMINISTRATION_JOB,meterCertificateDto.getAdministrationJob())); -// meterCertificateDto.setEducation(dictService.getDictNameByCode(MeterDictEnum.EDUCATION,meterCertificateDto.getEducation())); -// meterCertificateDto.setDeptId(deptMapper.selectById(meterCertificateDto.getDeptId()).getFullName()); -// }); return meterCertificateDtoList; } } diff --git a/casic-metering-service/src/main/java/com/casic/missiles/service/Impl/meter/MeterEquipmentApplyFileServiceImpl.java b/casic-metering-service/src/main/java/com/casic/missiles/service/Impl/meter/MeterEquipmentApplyFileServiceImpl.java new file mode 100644 index 0000000..ab41002 --- /dev/null +++ b/casic-metering-service/src/main/java/com/casic/missiles/service/Impl/meter/MeterEquipmentApplyFileServiceImpl.java @@ -0,0 +1,11 @@ +package com.casic.missiles.service.Impl.meter; + +import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl; +import com.casic.missiles.mapper.meter.MeterEquipmentApplyFileMapper; +import com.casic.missiles.model.MeterEquipmentApplyFile; +import com.casic.missiles.service.meter.IMeterEquipmentApplyFileService; +import org.springframework.stereotype.Service; + +@Service("IMeterEquipmentApplyFileService") +public class MeterEquipmentApplyFileServiceImpl extends ServiceImpl implements IMeterEquipmentApplyFileService { +} diff --git a/casic-metering-service/src/main/java/com/casic/missiles/service/Impl/meter/MeterEquipmentApplyServiceImpl.java b/casic-metering-service/src/main/java/com/casic/missiles/service/Impl/meter/MeterEquipmentApplyServiceImpl.java index c67305a..18976c1 100644 --- a/casic-metering-service/src/main/java/com/casic/missiles/service/Impl/meter/MeterEquipmentApplyServiceImpl.java +++ b/casic-metering-service/src/main/java/com/casic/missiles/service/Impl/meter/MeterEquipmentApplyServiceImpl.java @@ -1,5 +1,6 @@ package com.casic.missiles.service.Impl.meter; +import cn.hutool.core.util.ObjectUtil; import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper; import com.baomidou.mybatisplus.core.conditions.update.UpdateWrapper; import com.baomidou.mybatisplus.extension.plugins.pagination.Page; @@ -13,10 +14,7 @@ import com.casic.missiles.enums.EquipmentApplyEnum; import com.casic.missiles.mapper.meter.MeterEquipmentApplyEquipmentMapper; import com.casic.missiles.mapper.meter.MeterEquipmentApplyMapper; -import com.casic.missiles.model.MeterEquipmentApply; -import com.casic.missiles.model.MeterEquipmentApplyEquipment; -import com.casic.missiles.model.MeterStandardApply; -import com.casic.missiles.model.MeterStandardApplyEquipment; +import com.casic.missiles.model.*; import com.casic.missiles.service.meter.IMeterEquipmentApplyEquipmentService; import com.casic.missiles.service.meter.MeterEquipmentApplyService; import com.casic.missiles.utils.DictCodeUtils; @@ -71,8 +69,14 @@ for (MeterEquipmentApplyEquipment applyEquipment : meterEquipmentApply.getEquipmentList()) { applyEquipment.setApplyId(id.toString()); } - boolean saveBatchFlg = equipmentService.saveBatch(meterEquipmentApply.getEquipmentList()); - if(saveBatchFlg){ + boolean equipmentSaveBatchFlg = equipmentService.saveBatch(meterEquipmentApply.getEquipmentList()); + boolean saveBatchFlg = true; + if(ObjectUtil.isNotEmpty(meterEquipmentApply.getFileList()) && meterEquipmentApply.getFileList().size()!=0){ + for (MeterEquipmentApplyFile file : meterEquipmentApply.getFileList()) { + file.setApplyId(id); + } + } + if(equipmentSaveBatchFlg && saveBatchFlg){ return ReturnUtil.success(); }else { return ReturnUtil.failed("新增失败"); diff --git a/casic-metering-service/src/main/java/com/casic/missiles/service/Impl/meter/MeterStateManageServiceImpl.java b/casic-metering-service/src/main/java/com/casic/missiles/service/Impl/meter/MeterStateManageServiceImpl.java new file mode 100644 index 0000000..9798601 --- /dev/null +++ b/casic-metering-service/src/main/java/com/casic/missiles/service/Impl/meter/MeterStateManageServiceImpl.java @@ -0,0 +1,47 @@ +package com.casic.missiles.service.Impl.meter; + +import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper; +import com.baomidou.mybatisplus.extension.plugins.pagination.Page; +import com.casic.missiles.dto.IdDTO; +import com.casic.missiles.dto.meter.MeterStateManageRequest; +import com.casic.missiles.dto.meter.MeterStateManageResponse; +import com.casic.missiles.mapper.meter.MeterEquipmentApplyFileMapper; +import com.casic.missiles.mapper.meter.MeterStateManageMapper; +import com.casic.missiles.model.MeterCheckInfoFile; +import com.casic.missiles.model.MeterEquipmentApplyFile; +import com.casic.missiles.service.meter.IMeterStateManageService; +import com.casic.missiles.utils.DictCodeUtils; +import org.springframework.stereotype.Service; + +import javax.annotation.Resource; +import java.util.List; + +@Service("IMeterStateManageService") +public class MeterStateManageServiceImpl implements IMeterStateManageService { + + @Resource + private MeterStateManageMapper stateManageMapper; + + @Resource + private MeterEquipmentApplyFileMapper equipmentApplyFileMapper; + + @Override + public Page stateManageList(Page page, MeterStateManageRequest request) throws Exception { + Page resultPage = stateManageMapper.stateManageList(page,request); + for (MeterStateManageResponse stateManageResponse : resultPage.getRecords()) { + DictCodeUtils.convertDictCodeToName(stateManageResponse); + } + return resultPage; + } + + @Override + public MeterStateManageResponse selectStateManageInfo(IdDTO idDto) throws Exception { + MeterStateManageResponse stateManageResponse = stateManageMapper.selectById(idDto.getId()); + DictCodeUtils.convertDictCodeToName(stateManageResponse); + QueryWrapper wrapper = new QueryWrapper<>(); + wrapper.eq("apply_id",idDto.getId()); + List equipmentApplyFiles = equipmentApplyFileMapper.selectList(wrapper); + stateManageResponse.setFileList(equipmentApplyFiles); + return stateManageResponse; + } +} diff --git a/casic-metering-api/src/main/java/com/casic/missiles/controller/meter/MeterStateManageController.java b/casic-metering-api/src/main/java/com/casic/missiles/controller/meter/MeterStateManageController.java new file mode 100644 index 0000000..a276ff5 --- /dev/null +++ b/casic-metering-api/src/main/java/com/casic/missiles/controller/meter/MeterStateManageController.java @@ -0,0 +1,85 @@ +package com.casic.missiles.controller.meter; + +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; +import com.casic.missiles.dto.meter.MeterStateManageRequest; +import com.casic.missiles.dto.meter.MeterStateManageResponse; +import com.casic.missiles.model.MeterCheckInfo; +import com.casic.missiles.model.MeterEquipmentApply; +import com.casic.missiles.service.meter.IMeterStateManageService; +import com.casic.missiles.service.meter.MeterEquipmentApplyService; +import io.swagger.annotations.Api; +import io.swagger.annotations.ApiOperation; +import lombok.extern.slf4j.Slf4j; +import org.springframework.web.bind.annotation.*; + +import javax.annotation.Resource; +import javax.validation.Valid; + +/** + **

+ * * 状态管理列表 + * *

+ * + * @author xiezhuangz + * @version 1.0 + * @date 2022/12/27 + */ +@Api(tags = "状态管理相关接口") +@Slf4j +@RestController +@RequestMapping("meter/stateManage") +public class MeterStateManageController extends ExportController { + + @Resource + private IMeterStateManageService stateManageService; + + @Resource + private MeterEquipmentApplyService meterEquipmentApplyService; + + /** + * 状态管理申请列表 + */ + @ApiOperation("状态管理申请列表") + @PostMapping("/stateManageList") + @ResponseBody + public ReturnDTO> applyList(@RequestBody MeterStateManageRequest request) throws Exception{ + Page page = PageFactory.defaultPage(); + return ReturnUtil.success(super.packForBT(stateManageService.stateManageList(page, request))); + } + + /** + * 状态管理申请列表删除 + */ + @ApiOperation("状态管理申请列表删除") + @PostMapping("/deleteStateManageList") + @ResponseBody + public ReturnDTO deleteStateManageList(@RequestBody IdDTO idDto) { + return meterEquipmentApplyService.deleteEquipmentApply(idDto); + } + + /** + * 状态管理申请详细信息 + */ + @ApiOperation("状态管理申请详细信息") + @PostMapping("/selectStateManageInfo") + @ResponseBody + public ReturnDTO selectStateManageInfo(@RequestBody IdDTO idDto) throws Exception{ + return ReturnUtil.success(stateManageService.selectStateManageInfo(idDto)); + } + + /** + * 设状态管理申请新建 + */ + @ApiOperation("设状态管理申请新建") + @PostMapping("/addStateManageInfo") + @ResponseBody + public ReturnDTO addStateManageInfo(@RequestBody @Valid MeterEquipmentApply meterEquipmentApply) throws Exception{ + return meterEquipmentApplyService.addEquipmentApply(meterEquipmentApply); + } +} diff --git a/casic-metering-dao/src/main/java/com/casic/missiles/mapper/meter/MeterEquipmentApplyFileMapper.java b/casic-metering-dao/src/main/java/com/casic/missiles/mapper/meter/MeterEquipmentApplyFileMapper.java new file mode 100644 index 0000000..69c6356 --- /dev/null +++ b/casic-metering-dao/src/main/java/com/casic/missiles/mapper/meter/MeterEquipmentApplyFileMapper.java @@ -0,0 +1,7 @@ +package com.casic.missiles.mapper.meter; + +import com.baomidou.mybatisplus.core.mapper.BaseMapper; +import com.casic.missiles.model.MeterEquipmentApplyFile; + +public interface MeterEquipmentApplyFileMapper extends BaseMapper { +} diff --git a/casic-metering-dao/src/main/java/com/casic/missiles/mapper/meter/MeterStateManageMapper.java b/casic-metering-dao/src/main/java/com/casic/missiles/mapper/meter/MeterStateManageMapper.java new file mode 100644 index 0000000..ad60153 --- /dev/null +++ b/casic-metering-dao/src/main/java/com/casic/missiles/mapper/meter/MeterStateManageMapper.java @@ -0,0 +1,14 @@ +package com.casic.missiles.mapper.meter; + +import com.baomidou.mybatisplus.extension.plugins.pagination.Page; +import com.casic.missiles.dto.meter.MeterStateManageRequest; +import com.casic.missiles.dto.meter.MeterStateManageResponse; +import com.casic.missiles.model.MeterCheckInfo; +import org.apache.ibatis.annotations.Param; + +public interface MeterStateManageMapper { + + Page stateManageList(Page page, @Param("request") MeterStateManageRequest request); + + MeterStateManageResponse selectById(@Param("id") Long id); +} diff --git a/casic-metering-dao/src/main/resources/mapper/meter/MeterCertificateMapper.xml b/casic-metering-dao/src/main/resources/mapper/meter/MeterCertificateMapper.xml index 7f4ff3e..6eb532b 100644 --- a/casic-metering-dao/src/main/resources/mapper/meter/MeterCertificateMapper.xml +++ b/casic-metering-dao/src/main/resources/mapper/meter/MeterCertificateMapper.xml @@ -32,7 +32,7 @@ t1.certificate_name, t1.certificate_date, t1.certificate_company, - t1.valid_date, + DATE_FORMAT(t1.valid_date,'%Y-%m-%d') as valid_date, t1.certificate_status, t1.remark, t2.NAME, @@ -41,10 +41,11 @@ t2.education, t2.technology_job, t2.administration_job, - t2.dept_id + t3.FULL_NAME as dept_id FROM meter_certificate AS t1 LEFT JOIN meter_staff t2 ON t1.staff_id = t2.id + LEFT JOIN sys_dept t3 on t2.dept_id = t3.id and t1.is_del = 0 @@ -62,6 +63,9 @@ and t1.certificate_status = #{request.certificateStatus} + + and DATE_FORMAT(t1.valid_date,'%Y-%m-%d') <= DATE_SUB(curdate(),INTERVAL -30 day) + diff --git a/casic-metering-dao/src/main/resources/mapper/meter/MeterStateManageMapper.xml b/casic-metering-dao/src/main/resources/mapper/meter/MeterStateManageMapper.xml new file mode 100644 index 0000000..4f3e5f1 --- /dev/null +++ b/casic-metering-dao/src/main/resources/mapper/meter/MeterStateManageMapper.xml @@ -0,0 +1,66 @@ + + + + + + + + SELECT + msa.id, + msa.apply_no, + msa.apply_type, + mfa.equipment_no, + mfa.equipment_name, + mfa.model_no, + mfa.manager_state, + msa.approval_status, + sd.SIMPLE_NAME as apply_unit, + su.`NAME` as apply_person, + DATE_FORMAT( msa.time, '%Y-%m-%d %H:%i' ) as time, + msa.process_id, + msa.process_result, + msa.remark + FROM + meter_equipment_apply msa + LEFT JOIN sys_user su ON su.id = msa.apply_person + LEFT JOIN sys_dept sd ON sd.id = msa.apply_unit + LEFT JOIN meter_equipment_apply_equipment meae on msa.id = meae.apply_id + LEFT JOIN meter_fixed_assets mfa on meae.equipment_id = mfa.id + where 1=1 and msa.is_del = 0 + + + + + diff --git a/casic-metering-model/src/main/java/com/casic/missiles/dto/meter/MeterEquipmentApplyRequest.java b/casic-metering-model/src/main/java/com/casic/missiles/dto/meter/MeterEquipmentApplyRequest.java index 0f5db75..2154032 100644 --- a/casic-metering-model/src/main/java/com/casic/missiles/dto/meter/MeterEquipmentApplyRequest.java +++ b/casic-metering-model/src/main/java/com/casic/missiles/dto/meter/MeterEquipmentApplyRequest.java @@ -1,7 +1,6 @@ package com.casic.missiles.dto.meter; -import com.baomidou.mybatisplus.annotation.TableField; import io.swagger.annotations.ApiModel; import io.swagger.annotations.ApiModelProperty; import lombok.Data; @@ -49,20 +48,20 @@ /** * 审批状态 */ - @ApiModelProperty(value = "审批状态", dataType = "String") + @ApiModelProperty(value = "审批状态", dataType = "String", required = true) private String approvalStatus; /** * 处置结果 */ - @ApiModelProperty(value = "处置结果", dataType = "String") + @ApiModelProperty(value = "处置结果", dataType = "String", required = true) private String processResult; /** * 创建人 */ - @ApiModelProperty(value = "创建人", dataType = "String") + @ApiModelProperty(value = "创建人", dataType = "String", required = true) private String createUser; } 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 7e95296..3403124 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 @@ -50,5 +50,11 @@ @ApiModelProperty(value = "证书状态", dataType = "String") private String certificateStatus; + /** + * 证书提醒列表 + */ + @ApiModelProperty(value = "证书提醒列表", dataType = "String") + private String remindType; + } diff --git a/casic-metering-model/src/main/java/com/casic/missiles/dto/meter/MeterStateManageRequest.java b/casic-metering-model/src/main/java/com/casic/missiles/dto/meter/MeterStateManageRequest.java new file mode 100644 index 0000000..492c414 --- /dev/null +++ b/casic-metering-model/src/main/java/com/casic/missiles/dto/meter/MeterStateManageRequest.java @@ -0,0 +1,59 @@ +package com.casic.missiles.dto.meter; + +import io.swagger.annotations.ApiModel; +import io.swagger.annotations.ApiModelProperty; +import lombok.Data; + +/** + * 测量设备-状态管理申请请求实体 + * @author xiezhuangz + * @version 1.0 + * @date 2022/12/19 9:43 + */ + +@ApiModel +@Data +public class MeterStateManageRequest { + + /** + * 申请编号 + */ + @ApiModelProperty(value = "申请编号", dataType = "String") + private String applyNo; + + /** + * 设备编号 + */ + @ApiModelProperty(value = "(状态管理)设备编号", dataType = "String") + private String equipmentNo; + + /** + * 设备名称 + */ + @ApiModelProperty(value = "设备名称", dataType = "String") + private String equipmentName; + + /** + * 申请单位 + */ + @ApiModelProperty(value = "申请单位", dataType = "String") + private String applyUnit; + + /** + * 申请状态 + */ + @ApiModelProperty(value = "申请状态", dataType = "String") + private String applyStatus; + + /** + * 审批状态 + */ + @ApiModelProperty(value = "审批状态", dataType = "String", required = true) + private String approvalStatus; + + /** + * 创建人 + */ + @ApiModelProperty(value = "创建人", dataType = "String", required = true) + private String createUser; +} diff --git a/casic-metering-model/src/main/java/com/casic/missiles/dto/meter/MeterStateManageResponse.java b/casic-metering-model/src/main/java/com/casic/missiles/dto/meter/MeterStateManageResponse.java new file mode 100644 index 0000000..4d9e6e8 --- /dev/null +++ b/casic-metering-model/src/main/java/com/casic/missiles/dto/meter/MeterStateManageResponse.java @@ -0,0 +1,166 @@ +package com.casic.missiles.dto.meter; + +import com.alibaba.excel.annotation.ExcelProperty; +import com.baomidou.mybatisplus.annotation.TableField; +import com.baomidou.mybatisplus.annotation.TableId; +import com.casic.missiles.annotation.DictCodeField; +import com.casic.missiles.constants.MeterDictCode; +import com.casic.missiles.model.MeterEquipmentApplyFile; +import io.swagger.annotations.ApiModel; +import io.swagger.annotations.ApiModelProperty; +import lombok.Data; + +import javax.validation.constraints.NotBlank; +import java.io.Serializable; +import java.util.List; + +@ApiModel +@Data +public class MeterStateManageResponse implements Serializable { + + private static final long serialVersionUID = 8705579720027710541L; + /** + * 主键 + */ + @TableId("id") + @ApiModelProperty(value = "主键", dataType = "Long") + private Long id; + + /** + * 申请编号 + */ + @ExcelProperty(value = "申请编号",order = 0) + @ApiModelProperty(value = "申请编号", dataType = "String") + private String applyNo; + + /** + * 申请类型-字典code + */ + @NotBlank(message = "申请类型不能为空") + @ApiModelProperty(value = "申请类型-字典code", dataType = "String") + @DictCodeField(message = "申请类型不合法", cacheName = MeterDictCode.STANDARD_APPLY_TYPE) + private String applyType; + + /** + * 审批状态-字典code + */ + @DictCodeField(message = "审批状态不合法", cacheName = MeterDictCode.APPROVAL_STATUS) + @ApiModelProperty(value = "审批状态-字典code", dataType = "String") + private String approvalStatus; + + /** + * 审批状态名称 + */ + @ApiModelProperty(value = "审批状态名称", dataType = "String") + private String approvalStatusName; + + /** + * 申请类型名称 + */ + @ApiModelProperty(value = "申请类型名称", dataType = "String") + private String applyTypeName; + + /** + * 设备编号 + */ + @ApiModelProperty(value = "(状态管理)设备编号", dataType = "String") + private String equipmentNo; + + /** + * 设备名称 + */ + @ApiModelProperty(value = "设备名称", dataType = "String") + private String equipmentName; + + /** + * 型号 + */ + @ApiModelProperty(value = "型号", dataType = "String") + private String modelNo; + + /** + * 管理状态-字典code + */ + @ApiModelProperty(value = "管理状态", dataType = "String") + @DictCodeField(message = "管理状态不合法", cacheName = MeterDictCode.MANAGER_STATE) + private String managerState; + /** + * 管理状态名称 + */ + @ApiModelProperty(value = "管理状态名称", dataType = "String") + private String managerStateName; + + /** + * 申请单位 + */ + @ApiModelProperty(value = "申请单位", dataType = "String") + private String applyUnit; + + /** + * 申请人 + */ + @ApiModelProperty(value = "申请人", dataType = "String") + private String applyPerson; + + /** + * 申请时间 + */ + @ApiModelProperty(value = "申请时间", dataType = "String") + private String time; + + /** + * 流程实例ID + */ + @ApiModelProperty(value = "流程实例ID", dataType = "String") + private String processId; + + /** + * 处理结果(设备领用、借用处理结果) + */ + @ApiModelProperty(value = "处理结果(设备领用、借用处理结果)", dataType = "String") + private String processResult; + + /** + * 版本号 + */ + @ApiModelProperty(value = "版本号", dataType = "String") + private String version; + + /** + * 备注 + */ + @ApiModelProperty(value = "备注", dataType = "String") + private String remark; + + /** + * 删除标记 + */ + @ApiModelProperty(value = "删除标记", dataType = "Integer") + private Integer isDel; + + /** + * 创建人 + */ + @ApiModelProperty(value = "创建人", dataType = "String") + private String createUser; + + /** + * 创建时间 + */ + @ApiModelProperty(value = "创建时间", dataType = "String") + private String createTime; + + /** + * 更新时间 + */ + @ApiModelProperty(value = "更新时间", dataType = "String") + private String updateTime; + + /** + * 附件 + */ + @TableField(exist = false) + @ApiModelProperty(value = "附件列表", dataType = "List") + private List fileList; + +} diff --git a/casic-metering-model/src/main/java/com/casic/missiles/dto/meter/StandardEquipmentApplyRequest.java b/casic-metering-model/src/main/java/com/casic/missiles/dto/meter/StandardEquipmentApplyRequest.java index 7325905..19fab62 100644 --- a/casic-metering-model/src/main/java/com/casic/missiles/dto/meter/StandardEquipmentApplyRequest.java +++ b/casic-metering-model/src/main/java/com/casic/missiles/dto/meter/StandardEquipmentApplyRequest.java @@ -51,6 +51,12 @@ * 申请状态 */ @ApiModelProperty(value = "申请状态", dataType = "String") + private String applyStatus; + + /** + * 审批状态 + */ + @ApiModelProperty(value = "审批状态", dataType = "String", required = true) private String approvalStatus; /** diff --git a/casic-metering-model/src/main/java/com/casic/missiles/model/MeterCheckInfoFile.java b/casic-metering-model/src/main/java/com/casic/missiles/model/MeterCheckInfoFile.java index 3d73308..29047eb 100644 --- a/casic-metering-model/src/main/java/com/casic/missiles/model/MeterCheckInfoFile.java +++ b/casic-metering-model/src/main/java/com/casic/missiles/model/MeterCheckInfoFile.java @@ -1,7 +1,6 @@ package com.casic.missiles.model; -import com.alibaba.excel.annotation.ExcelProperty; import com.baomidou.mybatisplus.annotation.TableField; import com.baomidou.mybatisplus.annotation.TableId; import com.baomidou.mybatisplus.annotation.TableName; diff --git a/casic-metering-model/src/main/java/com/casic/missiles/model/MeterEquipmentApply.java b/casic-metering-model/src/main/java/com/casic/missiles/model/MeterEquipmentApply.java index 2d53b96..277cb9b 100644 --- a/casic-metering-model/src/main/java/com/casic/missiles/model/MeterEquipmentApply.java +++ b/casic-metering-model/src/main/java/com/casic/missiles/model/MeterEquipmentApply.java @@ -191,10 +191,17 @@ private String updateTime; /** - * 借用设备列表 + * 设备列表 */ @TableField(exist = false) - @ApiModelProperty(value = "借用设备列表", dataType = "List") + @ApiModelProperty(value = "设备列表", dataType = "List") private List equipmentList; + /** + * 附件列表 + */ + @TableField(exist = false) + @ApiModelProperty(value = "附件列表", dataType = "List") + private List fileList; + } diff --git a/casic-metering-model/src/main/java/com/casic/missiles/model/MeterEquipmentApplyFile.java b/casic-metering-model/src/main/java/com/casic/missiles/model/MeterEquipmentApplyFile.java new file mode 100644 index 0000000..be8ab2c --- /dev/null +++ b/casic-metering-model/src/main/java/com/casic/missiles/model/MeterEquipmentApplyFile.java @@ -0,0 +1,77 @@ +package com.casic.missiles.model; + +import com.baomidou.mybatisplus.annotation.TableField; +import com.baomidou.mybatisplus.annotation.TableId; +import com.baomidou.mybatisplus.annotation.TableName; +import io.swagger.annotations.ApiModel; +import io.swagger.annotations.ApiModelProperty; +import lombok.Data; + +import java.io.Serializable; + +@Data +@ApiModel +@TableName("meter_equipment_apply_file") +public class MeterEquipmentApplyFile implements Serializable { + + private static final long serialVersionUID = -8926996367574659071L; + + /** + * 主键 + */ + @TableId("id") + @ApiModelProperty(value = "主键", dataType = "Long") + private Long id; + + /** + * 申请id + */ + @TableField("apply_id") + @ApiModelProperty(value = "申请id", dataType = "Long") + private Long applyId; + + /** + * 文件名 + */ + @ApiModelProperty(value = "文件名", dataType = "String", required = true) + @TableField("file_name") + private String fileName; + + /** + * minio存储文件名 + */ + @TableField("minio_file_name") + @ApiModelProperty(value = "minio存储文件名", dataType = "String", required = true) + private String minioFileName; + + /** + * 备注 + */ + @TableField("remark") + @ApiModelProperty(value = "备注", dataType = "String", required = false) + private String remark; + + /** + * 删除标记 + */ + @TableField("is_del") + private Integer isDel; + + /** + * 创建人 + */ + @TableField("create_user") + private Long createUser; + + /** + * 创建时间 + */ + @TableField("create_time") + private String createTime; + + /** + * 更新时间 + */ + @TableField("update_time") + private String updateTime; +} diff --git a/casic-metering-service/src/main/java/com/casic/missiles/service/Impl/meter/MeterCertificateServiceImpl.java b/casic-metering-service/src/main/java/com/casic/missiles/service/Impl/meter/MeterCertificateServiceImpl.java index 2f4ce48..e46a7b2 100644 --- a/casic-metering-service/src/main/java/com/casic/missiles/service/Impl/meter/MeterCertificateServiceImpl.java +++ b/casic-metering-service/src/main/java/com/casic/missiles/service/Impl/meter/MeterCertificateServiceImpl.java @@ -1,6 +1,7 @@ package com.casic.missiles.service.Impl.meter; +import com.alibaba.excel.util.DateUtils; import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper; import com.baomidou.mybatisplus.core.conditions.update.UpdateWrapper; import com.baomidou.mybatisplus.core.toolkit.IdWorker; @@ -32,6 +33,7 @@ import javax.annotation.Resource; import javax.servlet.http.HttpServletResponse; import java.util.ArrayList; +import java.util.Date; import java.util.List; import java.util.Map; import java.util.concurrent.atomic.AtomicBoolean; @@ -229,18 +231,17 @@ } } private List supplementList(List meterCertificateDtoList){ + String format = DateUtils.format(new Date(),"yyyy-MM-dd"); for (MeterCertificateDto meterCertificateDto : meterCertificateDtoList) { meterCertificateDto.setTechnologyJob(dictService.getDictNameByCode(MeterDictEnum.TECHNOLOGY_JOB,meterCertificateDto.getTechnologyJob())); meterCertificateDto.setAdministrationJob(dictService.getDictNameByCode(MeterDictEnum.ADMINISTRATION_JOB,meterCertificateDto.getAdministrationJob())); meterCertificateDto.setEducation(dictService.getDictNameByCode(MeterDictEnum.EDUCATION,meterCertificateDto.getEducation())); - meterCertificateDto.setDeptId(deptMapper.selectById(meterCertificateDto.getDeptId()).getFullName()); + if(format.compareTo(meterCertificateDto.getValidDate()) > 0) { + meterCertificateDto.setCertificateStatus("1"); + }else{ + meterCertificateDto.setCertificateStatus("0"); + } } -// meterCertificateDtoList.forEach(meterCertificateDto->{ -// meterCertificateDto.setTechnologyJob(dictService.getDictNameByCode(MeterDictEnum.TECHNOLOGY_JOB,meterCertificateDto.getTechnologyJob())); -// meterCertificateDto.setAdministrationJob(dictService.getDictNameByCode(MeterDictEnum.ADMINISTRATION_JOB,meterCertificateDto.getAdministrationJob())); -// meterCertificateDto.setEducation(dictService.getDictNameByCode(MeterDictEnum.EDUCATION,meterCertificateDto.getEducation())); -// meterCertificateDto.setDeptId(deptMapper.selectById(meterCertificateDto.getDeptId()).getFullName()); -// }); return meterCertificateDtoList; } } diff --git a/casic-metering-service/src/main/java/com/casic/missiles/service/Impl/meter/MeterEquipmentApplyFileServiceImpl.java b/casic-metering-service/src/main/java/com/casic/missiles/service/Impl/meter/MeterEquipmentApplyFileServiceImpl.java new file mode 100644 index 0000000..ab41002 --- /dev/null +++ b/casic-metering-service/src/main/java/com/casic/missiles/service/Impl/meter/MeterEquipmentApplyFileServiceImpl.java @@ -0,0 +1,11 @@ +package com.casic.missiles.service.Impl.meter; + +import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl; +import com.casic.missiles.mapper.meter.MeterEquipmentApplyFileMapper; +import com.casic.missiles.model.MeterEquipmentApplyFile; +import com.casic.missiles.service.meter.IMeterEquipmentApplyFileService; +import org.springframework.stereotype.Service; + +@Service("IMeterEquipmentApplyFileService") +public class MeterEquipmentApplyFileServiceImpl extends ServiceImpl implements IMeterEquipmentApplyFileService { +} diff --git a/casic-metering-service/src/main/java/com/casic/missiles/service/Impl/meter/MeterEquipmentApplyServiceImpl.java b/casic-metering-service/src/main/java/com/casic/missiles/service/Impl/meter/MeterEquipmentApplyServiceImpl.java index c67305a..18976c1 100644 --- a/casic-metering-service/src/main/java/com/casic/missiles/service/Impl/meter/MeterEquipmentApplyServiceImpl.java +++ b/casic-metering-service/src/main/java/com/casic/missiles/service/Impl/meter/MeterEquipmentApplyServiceImpl.java @@ -1,5 +1,6 @@ package com.casic.missiles.service.Impl.meter; +import cn.hutool.core.util.ObjectUtil; import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper; import com.baomidou.mybatisplus.core.conditions.update.UpdateWrapper; import com.baomidou.mybatisplus.extension.plugins.pagination.Page; @@ -13,10 +14,7 @@ import com.casic.missiles.enums.EquipmentApplyEnum; import com.casic.missiles.mapper.meter.MeterEquipmentApplyEquipmentMapper; import com.casic.missiles.mapper.meter.MeterEquipmentApplyMapper; -import com.casic.missiles.model.MeterEquipmentApply; -import com.casic.missiles.model.MeterEquipmentApplyEquipment; -import com.casic.missiles.model.MeterStandardApply; -import com.casic.missiles.model.MeterStandardApplyEquipment; +import com.casic.missiles.model.*; import com.casic.missiles.service.meter.IMeterEquipmentApplyEquipmentService; import com.casic.missiles.service.meter.MeterEquipmentApplyService; import com.casic.missiles.utils.DictCodeUtils; @@ -71,8 +69,14 @@ for (MeterEquipmentApplyEquipment applyEquipment : meterEquipmentApply.getEquipmentList()) { applyEquipment.setApplyId(id.toString()); } - boolean saveBatchFlg = equipmentService.saveBatch(meterEquipmentApply.getEquipmentList()); - if(saveBatchFlg){ + boolean equipmentSaveBatchFlg = equipmentService.saveBatch(meterEquipmentApply.getEquipmentList()); + boolean saveBatchFlg = true; + if(ObjectUtil.isNotEmpty(meterEquipmentApply.getFileList()) && meterEquipmentApply.getFileList().size()!=0){ + for (MeterEquipmentApplyFile file : meterEquipmentApply.getFileList()) { + file.setApplyId(id); + } + } + if(equipmentSaveBatchFlg && saveBatchFlg){ return ReturnUtil.success(); }else { return ReturnUtil.failed("新增失败"); diff --git a/casic-metering-service/src/main/java/com/casic/missiles/service/Impl/meter/MeterStateManageServiceImpl.java b/casic-metering-service/src/main/java/com/casic/missiles/service/Impl/meter/MeterStateManageServiceImpl.java new file mode 100644 index 0000000..9798601 --- /dev/null +++ b/casic-metering-service/src/main/java/com/casic/missiles/service/Impl/meter/MeterStateManageServiceImpl.java @@ -0,0 +1,47 @@ +package com.casic.missiles.service.Impl.meter; + +import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper; +import com.baomidou.mybatisplus.extension.plugins.pagination.Page; +import com.casic.missiles.dto.IdDTO; +import com.casic.missiles.dto.meter.MeterStateManageRequest; +import com.casic.missiles.dto.meter.MeterStateManageResponse; +import com.casic.missiles.mapper.meter.MeterEquipmentApplyFileMapper; +import com.casic.missiles.mapper.meter.MeterStateManageMapper; +import com.casic.missiles.model.MeterCheckInfoFile; +import com.casic.missiles.model.MeterEquipmentApplyFile; +import com.casic.missiles.service.meter.IMeterStateManageService; +import com.casic.missiles.utils.DictCodeUtils; +import org.springframework.stereotype.Service; + +import javax.annotation.Resource; +import java.util.List; + +@Service("IMeterStateManageService") +public class MeterStateManageServiceImpl implements IMeterStateManageService { + + @Resource + private MeterStateManageMapper stateManageMapper; + + @Resource + private MeterEquipmentApplyFileMapper equipmentApplyFileMapper; + + @Override + public Page stateManageList(Page page, MeterStateManageRequest request) throws Exception { + Page resultPage = stateManageMapper.stateManageList(page,request); + for (MeterStateManageResponse stateManageResponse : resultPage.getRecords()) { + DictCodeUtils.convertDictCodeToName(stateManageResponse); + } + return resultPage; + } + + @Override + public MeterStateManageResponse selectStateManageInfo(IdDTO idDto) throws Exception { + MeterStateManageResponse stateManageResponse = stateManageMapper.selectById(idDto.getId()); + DictCodeUtils.convertDictCodeToName(stateManageResponse); + QueryWrapper wrapper = new QueryWrapper<>(); + wrapper.eq("apply_id",idDto.getId()); + List equipmentApplyFiles = equipmentApplyFileMapper.selectList(wrapper); + stateManageResponse.setFileList(equipmentApplyFiles); + return stateManageResponse; + } +} diff --git a/casic-metering-service/src/main/java/com/casic/missiles/service/meter/IMeterEquipmentApplyFileService.java b/casic-metering-service/src/main/java/com/casic/missiles/service/meter/IMeterEquipmentApplyFileService.java new file mode 100644 index 0000000..1a4ec95 --- /dev/null +++ b/casic-metering-service/src/main/java/com/casic/missiles/service/meter/IMeterEquipmentApplyFileService.java @@ -0,0 +1,7 @@ +package com.casic.missiles.service.meter; + +import com.baomidou.mybatisplus.extension.service.IService; +import com.casic.missiles.model.MeterEquipmentApplyFile; + +public interface IMeterEquipmentApplyFileService extends IService { +} diff --git a/casic-metering-api/src/main/java/com/casic/missiles/controller/meter/MeterStateManageController.java b/casic-metering-api/src/main/java/com/casic/missiles/controller/meter/MeterStateManageController.java new file mode 100644 index 0000000..a276ff5 --- /dev/null +++ b/casic-metering-api/src/main/java/com/casic/missiles/controller/meter/MeterStateManageController.java @@ -0,0 +1,85 @@ +package com.casic.missiles.controller.meter; + +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; +import com.casic.missiles.dto.meter.MeterStateManageRequest; +import com.casic.missiles.dto.meter.MeterStateManageResponse; +import com.casic.missiles.model.MeterCheckInfo; +import com.casic.missiles.model.MeterEquipmentApply; +import com.casic.missiles.service.meter.IMeterStateManageService; +import com.casic.missiles.service.meter.MeterEquipmentApplyService; +import io.swagger.annotations.Api; +import io.swagger.annotations.ApiOperation; +import lombok.extern.slf4j.Slf4j; +import org.springframework.web.bind.annotation.*; + +import javax.annotation.Resource; +import javax.validation.Valid; + +/** + **

+ * * 状态管理列表 + * *

+ * + * @author xiezhuangz + * @version 1.0 + * @date 2022/12/27 + */ +@Api(tags = "状态管理相关接口") +@Slf4j +@RestController +@RequestMapping("meter/stateManage") +public class MeterStateManageController extends ExportController { + + @Resource + private IMeterStateManageService stateManageService; + + @Resource + private MeterEquipmentApplyService meterEquipmentApplyService; + + /** + * 状态管理申请列表 + */ + @ApiOperation("状态管理申请列表") + @PostMapping("/stateManageList") + @ResponseBody + public ReturnDTO> applyList(@RequestBody MeterStateManageRequest request) throws Exception{ + Page page = PageFactory.defaultPage(); + return ReturnUtil.success(super.packForBT(stateManageService.stateManageList(page, request))); + } + + /** + * 状态管理申请列表删除 + */ + @ApiOperation("状态管理申请列表删除") + @PostMapping("/deleteStateManageList") + @ResponseBody + public ReturnDTO deleteStateManageList(@RequestBody IdDTO idDto) { + return meterEquipmentApplyService.deleteEquipmentApply(idDto); + } + + /** + * 状态管理申请详细信息 + */ + @ApiOperation("状态管理申请详细信息") + @PostMapping("/selectStateManageInfo") + @ResponseBody + public ReturnDTO selectStateManageInfo(@RequestBody IdDTO idDto) throws Exception{ + return ReturnUtil.success(stateManageService.selectStateManageInfo(idDto)); + } + + /** + * 设状态管理申请新建 + */ + @ApiOperation("设状态管理申请新建") + @PostMapping("/addStateManageInfo") + @ResponseBody + public ReturnDTO addStateManageInfo(@RequestBody @Valid MeterEquipmentApply meterEquipmentApply) throws Exception{ + return meterEquipmentApplyService.addEquipmentApply(meterEquipmentApply); + } +} diff --git a/casic-metering-dao/src/main/java/com/casic/missiles/mapper/meter/MeterEquipmentApplyFileMapper.java b/casic-metering-dao/src/main/java/com/casic/missiles/mapper/meter/MeterEquipmentApplyFileMapper.java new file mode 100644 index 0000000..69c6356 --- /dev/null +++ b/casic-metering-dao/src/main/java/com/casic/missiles/mapper/meter/MeterEquipmentApplyFileMapper.java @@ -0,0 +1,7 @@ +package com.casic.missiles.mapper.meter; + +import com.baomidou.mybatisplus.core.mapper.BaseMapper; +import com.casic.missiles.model.MeterEquipmentApplyFile; + +public interface MeterEquipmentApplyFileMapper extends BaseMapper { +} diff --git a/casic-metering-dao/src/main/java/com/casic/missiles/mapper/meter/MeterStateManageMapper.java b/casic-metering-dao/src/main/java/com/casic/missiles/mapper/meter/MeterStateManageMapper.java new file mode 100644 index 0000000..ad60153 --- /dev/null +++ b/casic-metering-dao/src/main/java/com/casic/missiles/mapper/meter/MeterStateManageMapper.java @@ -0,0 +1,14 @@ +package com.casic.missiles.mapper.meter; + +import com.baomidou.mybatisplus.extension.plugins.pagination.Page; +import com.casic.missiles.dto.meter.MeterStateManageRequest; +import com.casic.missiles.dto.meter.MeterStateManageResponse; +import com.casic.missiles.model.MeterCheckInfo; +import org.apache.ibatis.annotations.Param; + +public interface MeterStateManageMapper { + + Page stateManageList(Page page, @Param("request") MeterStateManageRequest request); + + MeterStateManageResponse selectById(@Param("id") Long id); +} diff --git a/casic-metering-dao/src/main/resources/mapper/meter/MeterCertificateMapper.xml b/casic-metering-dao/src/main/resources/mapper/meter/MeterCertificateMapper.xml index 7f4ff3e..6eb532b 100644 --- a/casic-metering-dao/src/main/resources/mapper/meter/MeterCertificateMapper.xml +++ b/casic-metering-dao/src/main/resources/mapper/meter/MeterCertificateMapper.xml @@ -32,7 +32,7 @@ t1.certificate_name, t1.certificate_date, t1.certificate_company, - t1.valid_date, + DATE_FORMAT(t1.valid_date,'%Y-%m-%d') as valid_date, t1.certificate_status, t1.remark, t2.NAME, @@ -41,10 +41,11 @@ t2.education, t2.technology_job, t2.administration_job, - t2.dept_id + t3.FULL_NAME as dept_id FROM meter_certificate AS t1 LEFT JOIN meter_staff t2 ON t1.staff_id = t2.id + LEFT JOIN sys_dept t3 on t2.dept_id = t3.id and t1.is_del = 0 @@ -62,6 +63,9 @@ and t1.certificate_status = #{request.certificateStatus} + + and DATE_FORMAT(t1.valid_date,'%Y-%m-%d') <= DATE_SUB(curdate(),INTERVAL -30 day) + diff --git a/casic-metering-dao/src/main/resources/mapper/meter/MeterStateManageMapper.xml b/casic-metering-dao/src/main/resources/mapper/meter/MeterStateManageMapper.xml new file mode 100644 index 0000000..4f3e5f1 --- /dev/null +++ b/casic-metering-dao/src/main/resources/mapper/meter/MeterStateManageMapper.xml @@ -0,0 +1,66 @@ + + + + + + + + SELECT + msa.id, + msa.apply_no, + msa.apply_type, + mfa.equipment_no, + mfa.equipment_name, + mfa.model_no, + mfa.manager_state, + msa.approval_status, + sd.SIMPLE_NAME as apply_unit, + su.`NAME` as apply_person, + DATE_FORMAT( msa.time, '%Y-%m-%d %H:%i' ) as time, + msa.process_id, + msa.process_result, + msa.remark + FROM + meter_equipment_apply msa + LEFT JOIN sys_user su ON su.id = msa.apply_person + LEFT JOIN sys_dept sd ON sd.id = msa.apply_unit + LEFT JOIN meter_equipment_apply_equipment meae on msa.id = meae.apply_id + LEFT JOIN meter_fixed_assets mfa on meae.equipment_id = mfa.id + where 1=1 and msa.is_del = 0 + + + + + diff --git a/casic-metering-model/src/main/java/com/casic/missiles/dto/meter/MeterEquipmentApplyRequest.java b/casic-metering-model/src/main/java/com/casic/missiles/dto/meter/MeterEquipmentApplyRequest.java index 0f5db75..2154032 100644 --- a/casic-metering-model/src/main/java/com/casic/missiles/dto/meter/MeterEquipmentApplyRequest.java +++ b/casic-metering-model/src/main/java/com/casic/missiles/dto/meter/MeterEquipmentApplyRequest.java @@ -1,7 +1,6 @@ package com.casic.missiles.dto.meter; -import com.baomidou.mybatisplus.annotation.TableField; import io.swagger.annotations.ApiModel; import io.swagger.annotations.ApiModelProperty; import lombok.Data; @@ -49,20 +48,20 @@ /** * 审批状态 */ - @ApiModelProperty(value = "审批状态", dataType = "String") + @ApiModelProperty(value = "审批状态", dataType = "String", required = true) private String approvalStatus; /** * 处置结果 */ - @ApiModelProperty(value = "处置结果", dataType = "String") + @ApiModelProperty(value = "处置结果", dataType = "String", required = true) private String processResult; /** * 创建人 */ - @ApiModelProperty(value = "创建人", dataType = "String") + @ApiModelProperty(value = "创建人", dataType = "String", required = true) private String createUser; } 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 7e95296..3403124 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 @@ -50,5 +50,11 @@ @ApiModelProperty(value = "证书状态", dataType = "String") private String certificateStatus; + /** + * 证书提醒列表 + */ + @ApiModelProperty(value = "证书提醒列表", dataType = "String") + private String remindType; + } diff --git a/casic-metering-model/src/main/java/com/casic/missiles/dto/meter/MeterStateManageRequest.java b/casic-metering-model/src/main/java/com/casic/missiles/dto/meter/MeterStateManageRequest.java new file mode 100644 index 0000000..492c414 --- /dev/null +++ b/casic-metering-model/src/main/java/com/casic/missiles/dto/meter/MeterStateManageRequest.java @@ -0,0 +1,59 @@ +package com.casic.missiles.dto.meter; + +import io.swagger.annotations.ApiModel; +import io.swagger.annotations.ApiModelProperty; +import lombok.Data; + +/** + * 测量设备-状态管理申请请求实体 + * @author xiezhuangz + * @version 1.0 + * @date 2022/12/19 9:43 + */ + +@ApiModel +@Data +public class MeterStateManageRequest { + + /** + * 申请编号 + */ + @ApiModelProperty(value = "申请编号", dataType = "String") + private String applyNo; + + /** + * 设备编号 + */ + @ApiModelProperty(value = "(状态管理)设备编号", dataType = "String") + private String equipmentNo; + + /** + * 设备名称 + */ + @ApiModelProperty(value = "设备名称", dataType = "String") + private String equipmentName; + + /** + * 申请单位 + */ + @ApiModelProperty(value = "申请单位", dataType = "String") + private String applyUnit; + + /** + * 申请状态 + */ + @ApiModelProperty(value = "申请状态", dataType = "String") + private String applyStatus; + + /** + * 审批状态 + */ + @ApiModelProperty(value = "审批状态", dataType = "String", required = true) + private String approvalStatus; + + /** + * 创建人 + */ + @ApiModelProperty(value = "创建人", dataType = "String", required = true) + private String createUser; +} diff --git a/casic-metering-model/src/main/java/com/casic/missiles/dto/meter/MeterStateManageResponse.java b/casic-metering-model/src/main/java/com/casic/missiles/dto/meter/MeterStateManageResponse.java new file mode 100644 index 0000000..4d9e6e8 --- /dev/null +++ b/casic-metering-model/src/main/java/com/casic/missiles/dto/meter/MeterStateManageResponse.java @@ -0,0 +1,166 @@ +package com.casic.missiles.dto.meter; + +import com.alibaba.excel.annotation.ExcelProperty; +import com.baomidou.mybatisplus.annotation.TableField; +import com.baomidou.mybatisplus.annotation.TableId; +import com.casic.missiles.annotation.DictCodeField; +import com.casic.missiles.constants.MeterDictCode; +import com.casic.missiles.model.MeterEquipmentApplyFile; +import io.swagger.annotations.ApiModel; +import io.swagger.annotations.ApiModelProperty; +import lombok.Data; + +import javax.validation.constraints.NotBlank; +import java.io.Serializable; +import java.util.List; + +@ApiModel +@Data +public class MeterStateManageResponse implements Serializable { + + private static final long serialVersionUID = 8705579720027710541L; + /** + * 主键 + */ + @TableId("id") + @ApiModelProperty(value = "主键", dataType = "Long") + private Long id; + + /** + * 申请编号 + */ + @ExcelProperty(value = "申请编号",order = 0) + @ApiModelProperty(value = "申请编号", dataType = "String") + private String applyNo; + + /** + * 申请类型-字典code + */ + @NotBlank(message = "申请类型不能为空") + @ApiModelProperty(value = "申请类型-字典code", dataType = "String") + @DictCodeField(message = "申请类型不合法", cacheName = MeterDictCode.STANDARD_APPLY_TYPE) + private String applyType; + + /** + * 审批状态-字典code + */ + @DictCodeField(message = "审批状态不合法", cacheName = MeterDictCode.APPROVAL_STATUS) + @ApiModelProperty(value = "审批状态-字典code", dataType = "String") + private String approvalStatus; + + /** + * 审批状态名称 + */ + @ApiModelProperty(value = "审批状态名称", dataType = "String") + private String approvalStatusName; + + /** + * 申请类型名称 + */ + @ApiModelProperty(value = "申请类型名称", dataType = "String") + private String applyTypeName; + + /** + * 设备编号 + */ + @ApiModelProperty(value = "(状态管理)设备编号", dataType = "String") + private String equipmentNo; + + /** + * 设备名称 + */ + @ApiModelProperty(value = "设备名称", dataType = "String") + private String equipmentName; + + /** + * 型号 + */ + @ApiModelProperty(value = "型号", dataType = "String") + private String modelNo; + + /** + * 管理状态-字典code + */ + @ApiModelProperty(value = "管理状态", dataType = "String") + @DictCodeField(message = "管理状态不合法", cacheName = MeterDictCode.MANAGER_STATE) + private String managerState; + /** + * 管理状态名称 + */ + @ApiModelProperty(value = "管理状态名称", dataType = "String") + private String managerStateName; + + /** + * 申请单位 + */ + @ApiModelProperty(value = "申请单位", dataType = "String") + private String applyUnit; + + /** + * 申请人 + */ + @ApiModelProperty(value = "申请人", dataType = "String") + private String applyPerson; + + /** + * 申请时间 + */ + @ApiModelProperty(value = "申请时间", dataType = "String") + private String time; + + /** + * 流程实例ID + */ + @ApiModelProperty(value = "流程实例ID", dataType = "String") + private String processId; + + /** + * 处理结果(设备领用、借用处理结果) + */ + @ApiModelProperty(value = "处理结果(设备领用、借用处理结果)", dataType = "String") + private String processResult; + + /** + * 版本号 + */ + @ApiModelProperty(value = "版本号", dataType = "String") + private String version; + + /** + * 备注 + */ + @ApiModelProperty(value = "备注", dataType = "String") + private String remark; + + /** + * 删除标记 + */ + @ApiModelProperty(value = "删除标记", dataType = "Integer") + private Integer isDel; + + /** + * 创建人 + */ + @ApiModelProperty(value = "创建人", dataType = "String") + private String createUser; + + /** + * 创建时间 + */ + @ApiModelProperty(value = "创建时间", dataType = "String") + private String createTime; + + /** + * 更新时间 + */ + @ApiModelProperty(value = "更新时间", dataType = "String") + private String updateTime; + + /** + * 附件 + */ + @TableField(exist = false) + @ApiModelProperty(value = "附件列表", dataType = "List") + private List fileList; + +} diff --git a/casic-metering-model/src/main/java/com/casic/missiles/dto/meter/StandardEquipmentApplyRequest.java b/casic-metering-model/src/main/java/com/casic/missiles/dto/meter/StandardEquipmentApplyRequest.java index 7325905..19fab62 100644 --- a/casic-metering-model/src/main/java/com/casic/missiles/dto/meter/StandardEquipmentApplyRequest.java +++ b/casic-metering-model/src/main/java/com/casic/missiles/dto/meter/StandardEquipmentApplyRequest.java @@ -51,6 +51,12 @@ * 申请状态 */ @ApiModelProperty(value = "申请状态", dataType = "String") + private String applyStatus; + + /** + * 审批状态 + */ + @ApiModelProperty(value = "审批状态", dataType = "String", required = true) private String approvalStatus; /** diff --git a/casic-metering-model/src/main/java/com/casic/missiles/model/MeterCheckInfoFile.java b/casic-metering-model/src/main/java/com/casic/missiles/model/MeterCheckInfoFile.java index 3d73308..29047eb 100644 --- a/casic-metering-model/src/main/java/com/casic/missiles/model/MeterCheckInfoFile.java +++ b/casic-metering-model/src/main/java/com/casic/missiles/model/MeterCheckInfoFile.java @@ -1,7 +1,6 @@ package com.casic.missiles.model; -import com.alibaba.excel.annotation.ExcelProperty; import com.baomidou.mybatisplus.annotation.TableField; import com.baomidou.mybatisplus.annotation.TableId; import com.baomidou.mybatisplus.annotation.TableName; diff --git a/casic-metering-model/src/main/java/com/casic/missiles/model/MeterEquipmentApply.java b/casic-metering-model/src/main/java/com/casic/missiles/model/MeterEquipmentApply.java index 2d53b96..277cb9b 100644 --- a/casic-metering-model/src/main/java/com/casic/missiles/model/MeterEquipmentApply.java +++ b/casic-metering-model/src/main/java/com/casic/missiles/model/MeterEquipmentApply.java @@ -191,10 +191,17 @@ private String updateTime; /** - * 借用设备列表 + * 设备列表 */ @TableField(exist = false) - @ApiModelProperty(value = "借用设备列表", dataType = "List") + @ApiModelProperty(value = "设备列表", dataType = "List") private List equipmentList; + /** + * 附件列表 + */ + @TableField(exist = false) + @ApiModelProperty(value = "附件列表", dataType = "List") + private List fileList; + } diff --git a/casic-metering-model/src/main/java/com/casic/missiles/model/MeterEquipmentApplyFile.java b/casic-metering-model/src/main/java/com/casic/missiles/model/MeterEquipmentApplyFile.java new file mode 100644 index 0000000..be8ab2c --- /dev/null +++ b/casic-metering-model/src/main/java/com/casic/missiles/model/MeterEquipmentApplyFile.java @@ -0,0 +1,77 @@ +package com.casic.missiles.model; + +import com.baomidou.mybatisplus.annotation.TableField; +import com.baomidou.mybatisplus.annotation.TableId; +import com.baomidou.mybatisplus.annotation.TableName; +import io.swagger.annotations.ApiModel; +import io.swagger.annotations.ApiModelProperty; +import lombok.Data; + +import java.io.Serializable; + +@Data +@ApiModel +@TableName("meter_equipment_apply_file") +public class MeterEquipmentApplyFile implements Serializable { + + private static final long serialVersionUID = -8926996367574659071L; + + /** + * 主键 + */ + @TableId("id") + @ApiModelProperty(value = "主键", dataType = "Long") + private Long id; + + /** + * 申请id + */ + @TableField("apply_id") + @ApiModelProperty(value = "申请id", dataType = "Long") + private Long applyId; + + /** + * 文件名 + */ + @ApiModelProperty(value = "文件名", dataType = "String", required = true) + @TableField("file_name") + private String fileName; + + /** + * minio存储文件名 + */ + @TableField("minio_file_name") + @ApiModelProperty(value = "minio存储文件名", dataType = "String", required = true) + private String minioFileName; + + /** + * 备注 + */ + @TableField("remark") + @ApiModelProperty(value = "备注", dataType = "String", required = false) + private String remark; + + /** + * 删除标记 + */ + @TableField("is_del") + private Integer isDel; + + /** + * 创建人 + */ + @TableField("create_user") + private Long createUser; + + /** + * 创建时间 + */ + @TableField("create_time") + private String createTime; + + /** + * 更新时间 + */ + @TableField("update_time") + private String updateTime; +} diff --git a/casic-metering-service/src/main/java/com/casic/missiles/service/Impl/meter/MeterCertificateServiceImpl.java b/casic-metering-service/src/main/java/com/casic/missiles/service/Impl/meter/MeterCertificateServiceImpl.java index 2f4ce48..e46a7b2 100644 --- a/casic-metering-service/src/main/java/com/casic/missiles/service/Impl/meter/MeterCertificateServiceImpl.java +++ b/casic-metering-service/src/main/java/com/casic/missiles/service/Impl/meter/MeterCertificateServiceImpl.java @@ -1,6 +1,7 @@ package com.casic.missiles.service.Impl.meter; +import com.alibaba.excel.util.DateUtils; import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper; import com.baomidou.mybatisplus.core.conditions.update.UpdateWrapper; import com.baomidou.mybatisplus.core.toolkit.IdWorker; @@ -32,6 +33,7 @@ import javax.annotation.Resource; import javax.servlet.http.HttpServletResponse; import java.util.ArrayList; +import java.util.Date; import java.util.List; import java.util.Map; import java.util.concurrent.atomic.AtomicBoolean; @@ -229,18 +231,17 @@ } } private List supplementList(List meterCertificateDtoList){ + String format = DateUtils.format(new Date(),"yyyy-MM-dd"); for (MeterCertificateDto meterCertificateDto : meterCertificateDtoList) { meterCertificateDto.setTechnologyJob(dictService.getDictNameByCode(MeterDictEnum.TECHNOLOGY_JOB,meterCertificateDto.getTechnologyJob())); meterCertificateDto.setAdministrationJob(dictService.getDictNameByCode(MeterDictEnum.ADMINISTRATION_JOB,meterCertificateDto.getAdministrationJob())); meterCertificateDto.setEducation(dictService.getDictNameByCode(MeterDictEnum.EDUCATION,meterCertificateDto.getEducation())); - meterCertificateDto.setDeptId(deptMapper.selectById(meterCertificateDto.getDeptId()).getFullName()); + if(format.compareTo(meterCertificateDto.getValidDate()) > 0) { + meterCertificateDto.setCertificateStatus("1"); + }else{ + meterCertificateDto.setCertificateStatus("0"); + } } -// meterCertificateDtoList.forEach(meterCertificateDto->{ -// meterCertificateDto.setTechnologyJob(dictService.getDictNameByCode(MeterDictEnum.TECHNOLOGY_JOB,meterCertificateDto.getTechnologyJob())); -// meterCertificateDto.setAdministrationJob(dictService.getDictNameByCode(MeterDictEnum.ADMINISTRATION_JOB,meterCertificateDto.getAdministrationJob())); -// meterCertificateDto.setEducation(dictService.getDictNameByCode(MeterDictEnum.EDUCATION,meterCertificateDto.getEducation())); -// meterCertificateDto.setDeptId(deptMapper.selectById(meterCertificateDto.getDeptId()).getFullName()); -// }); return meterCertificateDtoList; } } diff --git a/casic-metering-service/src/main/java/com/casic/missiles/service/Impl/meter/MeterEquipmentApplyFileServiceImpl.java b/casic-metering-service/src/main/java/com/casic/missiles/service/Impl/meter/MeterEquipmentApplyFileServiceImpl.java new file mode 100644 index 0000000..ab41002 --- /dev/null +++ b/casic-metering-service/src/main/java/com/casic/missiles/service/Impl/meter/MeterEquipmentApplyFileServiceImpl.java @@ -0,0 +1,11 @@ +package com.casic.missiles.service.Impl.meter; + +import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl; +import com.casic.missiles.mapper.meter.MeterEquipmentApplyFileMapper; +import com.casic.missiles.model.MeterEquipmentApplyFile; +import com.casic.missiles.service.meter.IMeterEquipmentApplyFileService; +import org.springframework.stereotype.Service; + +@Service("IMeterEquipmentApplyFileService") +public class MeterEquipmentApplyFileServiceImpl extends ServiceImpl implements IMeterEquipmentApplyFileService { +} diff --git a/casic-metering-service/src/main/java/com/casic/missiles/service/Impl/meter/MeterEquipmentApplyServiceImpl.java b/casic-metering-service/src/main/java/com/casic/missiles/service/Impl/meter/MeterEquipmentApplyServiceImpl.java index c67305a..18976c1 100644 --- a/casic-metering-service/src/main/java/com/casic/missiles/service/Impl/meter/MeterEquipmentApplyServiceImpl.java +++ b/casic-metering-service/src/main/java/com/casic/missiles/service/Impl/meter/MeterEquipmentApplyServiceImpl.java @@ -1,5 +1,6 @@ package com.casic.missiles.service.Impl.meter; +import cn.hutool.core.util.ObjectUtil; import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper; import com.baomidou.mybatisplus.core.conditions.update.UpdateWrapper; import com.baomidou.mybatisplus.extension.plugins.pagination.Page; @@ -13,10 +14,7 @@ import com.casic.missiles.enums.EquipmentApplyEnum; import com.casic.missiles.mapper.meter.MeterEquipmentApplyEquipmentMapper; import com.casic.missiles.mapper.meter.MeterEquipmentApplyMapper; -import com.casic.missiles.model.MeterEquipmentApply; -import com.casic.missiles.model.MeterEquipmentApplyEquipment; -import com.casic.missiles.model.MeterStandardApply; -import com.casic.missiles.model.MeterStandardApplyEquipment; +import com.casic.missiles.model.*; import com.casic.missiles.service.meter.IMeterEquipmentApplyEquipmentService; import com.casic.missiles.service.meter.MeterEquipmentApplyService; import com.casic.missiles.utils.DictCodeUtils; @@ -71,8 +69,14 @@ for (MeterEquipmentApplyEquipment applyEquipment : meterEquipmentApply.getEquipmentList()) { applyEquipment.setApplyId(id.toString()); } - boolean saveBatchFlg = equipmentService.saveBatch(meterEquipmentApply.getEquipmentList()); - if(saveBatchFlg){ + boolean equipmentSaveBatchFlg = equipmentService.saveBatch(meterEquipmentApply.getEquipmentList()); + boolean saveBatchFlg = true; + if(ObjectUtil.isNotEmpty(meterEquipmentApply.getFileList()) && meterEquipmentApply.getFileList().size()!=0){ + for (MeterEquipmentApplyFile file : meterEquipmentApply.getFileList()) { + file.setApplyId(id); + } + } + if(equipmentSaveBatchFlg && saveBatchFlg){ return ReturnUtil.success(); }else { return ReturnUtil.failed("新增失败"); diff --git a/casic-metering-service/src/main/java/com/casic/missiles/service/Impl/meter/MeterStateManageServiceImpl.java b/casic-metering-service/src/main/java/com/casic/missiles/service/Impl/meter/MeterStateManageServiceImpl.java new file mode 100644 index 0000000..9798601 --- /dev/null +++ b/casic-metering-service/src/main/java/com/casic/missiles/service/Impl/meter/MeterStateManageServiceImpl.java @@ -0,0 +1,47 @@ +package com.casic.missiles.service.Impl.meter; + +import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper; +import com.baomidou.mybatisplus.extension.plugins.pagination.Page; +import com.casic.missiles.dto.IdDTO; +import com.casic.missiles.dto.meter.MeterStateManageRequest; +import com.casic.missiles.dto.meter.MeterStateManageResponse; +import com.casic.missiles.mapper.meter.MeterEquipmentApplyFileMapper; +import com.casic.missiles.mapper.meter.MeterStateManageMapper; +import com.casic.missiles.model.MeterCheckInfoFile; +import com.casic.missiles.model.MeterEquipmentApplyFile; +import com.casic.missiles.service.meter.IMeterStateManageService; +import com.casic.missiles.utils.DictCodeUtils; +import org.springframework.stereotype.Service; + +import javax.annotation.Resource; +import java.util.List; + +@Service("IMeterStateManageService") +public class MeterStateManageServiceImpl implements IMeterStateManageService { + + @Resource + private MeterStateManageMapper stateManageMapper; + + @Resource + private MeterEquipmentApplyFileMapper equipmentApplyFileMapper; + + @Override + public Page stateManageList(Page page, MeterStateManageRequest request) throws Exception { + Page resultPage = stateManageMapper.stateManageList(page,request); + for (MeterStateManageResponse stateManageResponse : resultPage.getRecords()) { + DictCodeUtils.convertDictCodeToName(stateManageResponse); + } + return resultPage; + } + + @Override + public MeterStateManageResponse selectStateManageInfo(IdDTO idDto) throws Exception { + MeterStateManageResponse stateManageResponse = stateManageMapper.selectById(idDto.getId()); + DictCodeUtils.convertDictCodeToName(stateManageResponse); + QueryWrapper wrapper = new QueryWrapper<>(); + wrapper.eq("apply_id",idDto.getId()); + List equipmentApplyFiles = equipmentApplyFileMapper.selectList(wrapper); + stateManageResponse.setFileList(equipmentApplyFiles); + return stateManageResponse; + } +} diff --git a/casic-metering-service/src/main/java/com/casic/missiles/service/meter/IMeterEquipmentApplyFileService.java b/casic-metering-service/src/main/java/com/casic/missiles/service/meter/IMeterEquipmentApplyFileService.java new file mode 100644 index 0000000..1a4ec95 --- /dev/null +++ b/casic-metering-service/src/main/java/com/casic/missiles/service/meter/IMeterEquipmentApplyFileService.java @@ -0,0 +1,7 @@ +package com.casic.missiles.service.meter; + +import com.baomidou.mybatisplus.extension.service.IService; +import com.casic.missiles.model.MeterEquipmentApplyFile; + +public interface IMeterEquipmentApplyFileService extends IService { +} diff --git a/casic-metering-service/src/main/java/com/casic/missiles/service/meter/IMeterStateManageService.java b/casic-metering-service/src/main/java/com/casic/missiles/service/meter/IMeterStateManageService.java new file mode 100644 index 0000000..11e1d38 --- /dev/null +++ b/casic-metering-service/src/main/java/com/casic/missiles/service/meter/IMeterStateManageService.java @@ -0,0 +1,14 @@ +package com.casic.missiles.service.meter; + +import com.baomidou.mybatisplus.extension.plugins.pagination.Page; +import com.casic.missiles.dto.IdDTO; +import com.casic.missiles.dto.ReturnDTO; +import com.casic.missiles.dto.meter.MeterStateManageRequest; +import com.casic.missiles.dto.meter.MeterStateManageResponse; + +public interface IMeterStateManageService { + + Page stateManageList(Page page, MeterStateManageRequest request) throws Exception; + + MeterStateManageResponse selectStateManageInfo(IdDTO idDto) throws Exception; +}